diff options
author | Sebastian <sebasjm@gmail.com> | 2021-11-24 09:52:58 -0300 |
---|---|---|
committer | Sebastian <sebasjm@gmail.com> | 2021-11-24 09:53:05 -0300 |
commit | 668c0430c204c1233fc266b723ed1be308d5f3f1 (patch) | |
tree | dbed1b91eebfc2ca6761f94d2d52be97067dce45 /packages/taler-wallet-webextension/src/cta | |
parent | 0bfd4523b3408d9c841a1f25fd9ec86e81d6dd8f (diff) | |
download | wallet-core-668c0430c204c1233fc266b723ed1be308d5f3f1.tar.xz |
fix exchange selection
Diffstat (limited to 'packages/taler-wallet-webextension/src/cta')
-rw-r--r-- | packages/taler-wallet-webextension/src/cta/Withdraw.tsx | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/packages/taler-wallet-webextension/src/cta/Withdraw.tsx b/packages/taler-wallet-webextension/src/cta/Withdraw.tsx index eead51690..4703492cf 100644 --- a/packages/taler-wallet-webextension/src/cta/Withdraw.tsx +++ b/packages/taler-wallet-webextension/src/cta/Withdraw.tsx @@ -79,9 +79,11 @@ export function View({ }: ViewProps): VNode { const needsReview = terms.status === "changed" || terms.status === "new"; - const [switchingExchange, setSwitchingExchange] = useState< - string | undefined - >(undefined); + const [switchingExchange, setSwitchingExchange] = useState(false); + const [nextExchange, setNextExchange] = useState<string | undefined>( + undefined, + ); + const exchanges = knownExchanges.reduce( (prev, ex) => ({ ...prev, [ex.exchangeBaseUrl]: ex.exchangeBaseUrl }), {}, @@ -117,25 +119,33 @@ export function View({ </section> {!reviewing && ( <section> - {switchingExchange !== undefined ? ( + {switchingExchange ? ( <Fragment> <div> <SelectList label="Known exchanges" list={exchanges} - name="" - onChange={onSwitchExchange} + value={nextExchange} + name="switchingExchange" + onChange={setNextExchange} /> </div> <LinkSuccess upperCased - onClick={() => onSwitchExchange(switchingExchange)} + onClick={() => { + if (nextExchange !== undefined) { + onSwitchExchange(nextExchange); + } + setSwitchingExchange(false); + }} > - {i18n.str`Confirm exchange selection`} + {nextExchange === undefined + ? i18n.str`Cancel exchange selection` + : i18n.str`Confirm exchange selection`} </LinkSuccess> </Fragment> ) : ( - <LinkSuccess upperCased onClick={() => setSwitchingExchange("")}> + <LinkSuccess upperCased onClick={() => setSwitchingExchange(true)}> {i18n.str`Switch exchange`} </LinkSuccess> )} |