gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-wallet-core] branch master updated: fix exchange selection


From: gnunet
Subject: [taler-wallet-core] branch master updated: fix exchange selection
Date: Wed, 24 Nov 2021 13:53:15 +0100

This is an automated email from the git hooks/post-receive script.

sebasjm pushed a commit to branch master
in repository wallet-core.

The following commit(s) were added to refs/heads/master by this push:
     new 668c0430 fix exchange selection
668c0430 is described below

commit 668c0430c204c1233fc266b723ed1be308d5f3f1
Author: Sebastian <sebasjm@gmail.com>
AuthorDate: Wed Nov 24 09:52:58 2021 -0300

    fix exchange selection
---
 .../src/components/SelectList.tsx                  | 20 +++++++++-------
 .../taler-wallet-webextension/src/cta/Withdraw.tsx | 28 +++++++++++++++-------
 2 files changed, 30 insertions(+), 18 deletions(-)

diff --git a/packages/taler-wallet-webextension/src/components/SelectList.tsx 
b/packages/taler-wallet-webextension/src/components/SelectList.tsx
index 78dd2feb..5bb06f9a 100644
--- a/packages/taler-wallet-webextension/src/components/SelectList.tsx
+++ b/packages/taler-wallet-webextension/src/components/SelectList.tsx
@@ -36,6 +36,7 @@ export function SelectList({
   onChange,
   label,
   description,
+  canBeNull,
 }: Props): VNode {
   return (
     <Fragment>
@@ -49,20 +50,21 @@ export function SelectList({
       <NiceSelect>
         <select
           name={name}
+          value={value}
           onChange={(e) => {
-            console.log(e.currentTarget.value, value);
             onChange(e.currentTarget.value);
           }}
         >
-          {value !== undefined ? (
-            <option selected>{list[value]}</option>
-          ) : (
-            <option selected disabled>
-              Select one option
-            </option>
-          )}
+          {value === undefined ||
+            (canBeNull && (
+              <option selected disabled>
+                Select one option
+              </option>
+              // ) : (
+              //   <option selected>{list[value]}</option>
+            ))}
           {Object.keys(list)
-            .filter((l) => l !== value)
+            // .filter((l) => l !== value)
             .map((key) => (
               <option value={key} key={key}>
                 {list[key]}
diff --git a/packages/taler-wallet-webextension/src/cta/Withdraw.tsx 
b/packages/taler-wallet-webextension/src/cta/Withdraw.tsx
index eead5169..4703492c 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>
           )}

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]