aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-webextension/src/wallet
diff options
context:
space:
mode:
authorSebastian <sebasjm@gmail.com>2022-05-04 16:25:53 -0300
committerSebastian <sebasjm@gmail.com>2022-05-04 16:26:53 -0300
commit7a2fe8018faa4666ff681072682f16f8fb1bfc13 (patch)
treed82afd97a4748f64a794475db60df58b1baec776 /packages/taler-wallet-webextension/src/wallet
parent4491118494c332c9ce0a0c4533804744d63701f2 (diff)
downloadwallet-core-7a2fe8018faa4666ff681072682f16f8fb1bfc13.tar.gz
wallet-core-7a2fe8018faa4666ff681072682f16f8fb1bfc13.tar.bz2
wallet-core-7a2fe8018faa4666ff681072682f16f8fb1bfc13.zip
add age restriction option to withdraw cta
Diffstat (limited to 'packages/taler-wallet-webextension/src/wallet')
-rw-r--r--packages/taler-wallet-webextension/src/wallet/CreateManualWithdraw.test.ts4
-rw-r--r--packages/taler-wallet-webextension/src/wallet/DepositPage.test.ts2
-rw-r--r--packages/taler-wallet-webextension/src/wallet/DeveloperPage.tsx15
3 files changed, 16 insertions, 5 deletions
diff --git a/packages/taler-wallet-webextension/src/wallet/CreateManualWithdraw.test.ts b/packages/taler-wallet-webextension/src/wallet/CreateManualWithdraw.test.ts
index a4b333f02..7a9a5314b 100644
--- a/packages/taler-wallet-webextension/src/wallet/CreateManualWithdraw.test.ts
+++ b/packages/taler-wallet-webextension/src/wallet/CreateManualWithdraw.test.ts
@@ -87,7 +87,7 @@ describe("CreateManualWithdraw states", () => {
const { exchange, currency } = getLastResultOrThrow()
expect(exchange.value).equal("url2")
-
+ if (currency.onChange === undefined) expect.fail();
currency.onChange("USD")
}
@@ -111,6 +111,7 @@ describe("CreateManualWithdraw states", () => {
expect(exchange.value).equal("url2")
expect(currency.value).equal("ARS")
+ if (exchange.onChange === undefined) expect.fail();
exchange.onChange("url1")
}
@@ -205,6 +206,7 @@ async function defaultTestForInputSelect(awaiter: () => Promise<void>, getField:
throw new Error('no enough values')
}
nextValue = keys[nextIdx]
+ if (field.onChange === undefined) expect.fail();
field.onChange(nextValue)
}
diff --git a/packages/taler-wallet-webextension/src/wallet/DepositPage.test.ts b/packages/taler-wallet-webextension/src/wallet/DepositPage.test.ts
index c863b27d5..5fc55934d 100644
--- a/packages/taler-wallet-webextension/src/wallet/DepositPage.test.ts
+++ b/packages/taler-wallet-webextension/src/wallet/DepositPage.test.ts
@@ -258,6 +258,7 @@ describe("DepositPage states", () => {
expect(r.depositHandler.onClick).undefined;
expect(r.totalFee).deep.eq(Amounts.parseOrThrow(`${currency}:0`))
+ if (r.account.onChange === undefined) expect.fail();
r.account.onChange("1")
}
@@ -290,6 +291,7 @@ describe("DepositPage states", () => {
expect(r.totalToDeposit).deep.eq(Amounts.parseOrThrow(`${currency}:7`))
expect(r.depositHandler.onClick).undefined;
+ if (r.account.onChange === undefined) expect.fail();
r.account.onChange("0")
}
diff --git a/packages/taler-wallet-webextension/src/wallet/DeveloperPage.tsx b/packages/taler-wallet-webextension/src/wallet/DeveloperPage.tsx
index 829e60b44..c4725a8d7 100644
--- a/packages/taler-wallet-webextension/src/wallet/DeveloperPage.tsx
+++ b/packages/taler-wallet-webextension/src/wallet/DeveloperPage.tsx
@@ -81,6 +81,7 @@ export function DeveloperPage(): VNode {
type CoinsInfo = CoinDumpJson["coins"];
type CalculatedCoinfInfo = {
+ ageKeysCount: number | undefined;
denom_value: number;
remain_value: number;
status: string;
@@ -132,11 +133,13 @@ export function View({
const money_by_exchange = coins.reduce(
(prev, cur) => {
const denom = Amounts.parseOrThrow(cur.denom_value);
+ console.log(cur);
if (!prev[cur.exchange_base_url]) {
prev[cur.exchange_base_url] = [];
currencies[cur.exchange_base_url] = denom.currency;
}
prev[cur.exchange_base_url].push({
+ ageKeysCount: cur.ageCommitmentProof?.proof.privateKeys.length,
denom_value: parseFloat(Amounts.stringifyValue(denom)),
remain_value: parseFloat(
Amounts.stringifyValue(Amounts.parseOrThrow(cur.remaining_value)),
@@ -305,7 +308,7 @@ function ShowAllCoins({
<p>
<b>{ex}</b>: {total} {currencies[ex]}
</p>
- <p>
+ <p onClick={() => setCollapsedUnspent(true)}>
<b>
<i18n.Translate>usable coins</i18n.Translate>
</b>
@@ -313,7 +316,7 @@ function ShowAllCoins({
{collapsedUnspent ? (
<div onClick={() => setCollapsedUnspent(false)}>click to show</div>
) : (
- <table onClick={() => setCollapsedUnspent(true)}>
+ <table>
<tr>
<td>
<i18n.Translate>id</i18n.Translate>
@@ -330,6 +333,9 @@ function ShowAllCoins({
<td>
<i18n.Translate>from refresh?</i18n.Translate>
</td>
+ <td>
+ <i18n.Translate>age key count</i18n.Translate>
+ </td>
</tr>
{coins.usable.map((c, idx) => {
return (
@@ -339,12 +345,13 @@ function ShowAllCoins({
<td>{c.remain_value}</td>
<td>{c.status}</td>
<td>{c.from_refresh ? "true" : "false"}</td>
+ <td>{String(c.ageKeysCount)}</td>
</tr>
);
})}
</table>
)}
- <p>
+ <p onClick={() => setCollapsedSpent(true)}>
<i18n.Translate>spent coins</i18n.Translate>
</p>
{collapsedSpent ? (
@@ -352,7 +359,7 @@ function ShowAllCoins({
<i18n.Translate>click to show</i18n.Translate>
</div>
) : (
- <table onClick={() => setCollapsedSpent(true)}>
+ <table>
<tr>
<td>
<i18n.Translate>id</i18n.Translate>