aboutsummaryrefslogtreecommitdiff
path: root/extension/background/wallet.ts
diff options
context:
space:
mode:
Diffstat (limited to 'extension/background/wallet.ts')
-rw-r--r--extension/background/wallet.ts19
1 files changed, 12 insertions, 7 deletions
diff --git a/extension/background/wallet.ts b/extension/background/wallet.ts
index 751087c7c..7f7994ab6 100644
--- a/extension/background/wallet.ts
+++ b/extension/background/wallet.ts
@@ -118,8 +118,11 @@ function copy(o) {
}
-function rankDenom(o1: Amount, o2: Amount) {
- return (-1) * o1.cmp(o2);
+function rankDenom(denom1: any, denom2: any) {
+ // Slow ... we should find a better way than to convert it evert time.
+ let v1 = new Amount(denom1.value);
+ let v2 = new Amount(denom2.value);
+ return (-1) * v1.cmp(v2);
}
@@ -141,6 +144,7 @@ function withdraw(denom, reserve, mint) {
// Signature
let withdrawRequest = new WithdrawRequestPS();
withdrawRequest.set("reserve_pub", reservePub);
+ // ...
var sig = eddsaSign(withdrawRequest.toPurpose(), reservePriv);
}
@@ -155,13 +159,14 @@ function depleteReserve(db, reserve, mint) {
for (let i = 0; i < 1000; i++) {
let found = false;
for (let d of denoms) {
- let cost = new Amount();
- cost.add(new Amount(d.value));
+ let cost = new Amount(d.value);
cost.add(new Amount(d.fee_withdraw));
if (remaining.cmp(cost) < 0) {
continue;
}
found = true;
+ console.log("Subbing " + JSON.stringify(remaining.toJson()));
+ console.log("With " + JSON.stringify(cost.toJson()));
remaining.sub(cost);
withdraw(d, reserve, mint);
}
@@ -173,14 +178,14 @@ function depleteReserve(db, reserve, mint) {
}
-function updateReserve(db, reservePub, mint) {
+function updateReserve(db, reservePub: EddsaPublicKey, mint) {
let reserve;
return new Promise((resolve, reject) => {
let tx = db.transaction(['reserves']);
- tx.objectStore('reserves').get(reservePub).onsuccess = (e) => {
+ tx.objectStore('reserves').get(reservePub.stringEncode()).onsuccess = (e) => {
let reserve = e.target.result;
let reqUrl = URI("reserve/status").absoluteTo(mint.baseUrl);
- reqUrl.query({'reserve_pub': reservePub});
+ reqUrl.query({'reserve_pub': reservePub.stringEncode()});
let myRequest = new XMLHttpRequest();
console.log("making request to " + reqUrl.href());
myRequest.open('get', reqUrl.href());