gnunet-svn
[Top][All Lists]
Advanced

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

[taler-wallet-core] branch master updated (9a464cf0c -> 7d863ed40)


From: gnunet
Subject: [taler-wallet-core] branch master updated (9a464cf0c -> 7d863ed40)
Date: Sun, 10 Mar 2024 20:55:54 +0100

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

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

    from 9a464cf0c Translated using Weblate (German)
     new 5a193a057 some red start missing
     new 3f4a49b92 balance
     new 7d863ed40 demobank -> demo

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 bootstrap                                          |  2 +-
 .../bank-ui/src/pages/PaytoWireTransferForm.tsx    | 35 +++++++++++++---
 packages/bank-ui/src/pages/WireTransfer.tsx        |  9 ++++-
 .../src/pages/account/UpdateAccountPassword.tsx    |  3 ++
 packages/bank-ui/src/pages/admin/AccountList.tsx   | 47 ++++++++++------------
 5 files changed, 63 insertions(+), 33 deletions(-)

diff --git a/bootstrap b/bootstrap
index 217bba297..7e5140ee7 100755
--- a/bootstrap
+++ b/bootstrap
@@ -28,7 +28,7 @@ our_configure=build-system/taler-build-scripts/configure
 copy_configure "$our_configure" ./configure
 copy_configure "$our_configure" ./packages/taler-wallet-cli/configure
 copy_configure "$our_configure" ./packages/anastasis-cli/configure
-copy_configure "$our_configure" ./packages/demobank-ui/configure
+copy_configure "$our_configure" ./packages/bank-ui/configure
 copy_configure "$our_configure" ./packages/taler-harness/configure
 copy_configure "$our_configure" ./packages/taler-util/configure
 copy_configure "$our_configure" ./packages/merchant-backoffice-ui/configure
diff --git a/packages/bank-ui/src/pages/PaytoWireTransferForm.tsx 
b/packages/bank-ui/src/pages/PaytoWireTransferForm.tsx
index a522102a7..8d9df1151 100644
--- a/packages/bank-ui/src/pages/PaytoWireTransferForm.tsx
+++ b/packages/bank-ui/src/pages/PaytoWireTransferForm.tsx
@@ -132,6 +132,7 @@ export function PaytoWireTransferForm({
     let sendingAmount: AmountString | undefined;
 
     if (credentials.status !== "loggedIn") return;
+    let acName: string | undefined;
     if (isRawPayto) {
       const p = parsePaytoUri(rawPaytoInput!);
       if (!p) return;
@@ -139,12 +140,19 @@ export function PaytoWireTransferForm({
       delete p.params.amount;
       // if this payto is valid then it already have message
       payto_uri = stringifyPaytoUri(p);
+      acName = !p.isKnown ? undefined :
+        p.targetType === "iban" ? p.iban :
+          p.targetType === "bitcoin" ? p.targetPath :
+            p.targetType === "x-taler-bank" ? p.account :
+              assertUnreachable(p);
     } else {
       if (!account || !subject) return;
       let payto;
+      acName = account;
       switch (paytoType) {
         case "x-taler-bank": {
           payto = buildPayto("x-taler-bank", url.host, account);
+
           break;
         }
         case "iban": {
@@ -187,7 +195,7 @@ export function PaytoWireTransferForm({
           case TalerErrorCode.BANK_UNKNOWN_CREDITOR:
             return notify({
               type: "error",
-              title: i18n.str`The destination account "${puri}" was not 
found.`,
+              title: i18n.str`The destination account "${acName ?? puri}" was 
not found.`,
               description: resp.detail.hint as TranslatedString,
               debug: resp.detail,
             });
@@ -388,6 +396,7 @@ export function PaytoWireTransferForm({
                   case "x-taler-bank": {
                     return <TextField
                       id="x-taler-bank"
+                      required
                       label={i18n.str`Recipient`}
                       help={i18n.str`Id of the recipient's account`}
                       error={errorsWire?.account}
@@ -401,6 +410,7 @@ export function PaytoWireTransferForm({
                   case "iban": {
                     return <TextField
                       id="iban"
+                      required
                       label={i18n.str`Recipient`}
                       help={i18n.str`IBAN of the recipient's account`}
                       placeholder={"CC0123456789" as TranslatedString}
@@ -419,7 +429,10 @@ export function PaytoWireTransferForm({
                 <label
                   for="subject"
                   class="block text-sm font-medium leading-6 text-gray-900"
-                >{i18n.str`Transfer subject`}</label>
+                >
+                  {i18n.str`Transfer subject`}
+                  <b style={{ color: "red" }}> *</b>
+                </label>
                 <div class="mt-2">
                   <input
                     type="text"
@@ -450,7 +463,10 @@ export function PaytoWireTransferForm({
                 <label
                   for="amount"
                   class="block text-sm font-medium leading-6 text-gray-900"
-                >{i18n.str`Amount`}</label>
+                >
+                  {i18n.str`Amount`}
+                  <b style={{ color: "red" }}> *</b>
+                </label>
                 <InputAmount
                   name="amount"
                   left
@@ -475,7 +491,10 @@ export function PaytoWireTransferForm({
                 <label
                   for="address"
                   class="block text-sm font-medium leading-6 text-gray-900"
-                >{i18n.str`Payto URI:`}</label>
+                >
+                  {i18n.str`Payto URI:`}
+                  <b style={{ color: "red" }}> *</b>
+                </label>
                 <div class="mt-2">
                   <textarea
                     ref={focus ? doAutoFocus : undefined}
@@ -725,6 +744,7 @@ function validateSubject(text: string, i18n: 
InternationalizationAPI): Translate
 interface PaytoFieldProps {
   id: string,
   label: TranslatedString;
+  required?: boolean;
   help?: TranslatedString;
   placeholder?: TranslatedString;
   error: string | undefined;
@@ -753,6 +773,7 @@ export function TextField({
   onChange,
   placeholder,
   rightIcons,
+  required,
   value,
   error,
 }: PaytoFieldProps): VNode {
@@ -760,7 +781,11 @@ export function TextField({
     <label
       for={id}
       class="block text-sm font-medium leading-6 text-gray-900"
-    >{label}</label>
+    >{label}
+      {required &&
+        <b style={{ color: "red" }}> *</b>
+      }
+    </label>
     <div class="mt-2">
       <Wrapper withIcon={rightIcons !== undefined}>
         <input
diff --git a/packages/bank-ui/src/pages/WireTransfer.tsx 
b/packages/bank-ui/src/pages/WireTransfer.tsx
index 33f067e63..a3f7d6bc0 100644
--- a/packages/bank-ui/src/pages/WireTransfer.tsx
+++ b/packages/bank-ui/src/pages/WireTransfer.tsx
@@ -80,15 +80,22 @@ export function WireTransfer({
   const balanceIsDebit = data.balance.credit_debit_indicator == "debit";
 
   const debitThreshold = Amounts.parseOrThrow(data.debit_threshold);
+
+  if (!balance) return <Fragment />;
+
   const limit = balanceIsDebit
     ? Amounts.sub(debitThreshold, balance).amount
     : Amounts.add(balance, debitThreshold).amount;
-  if (!balance) return <Fragment />;
+
+  const positiveBalance = balanceIsDebit
+    ? Amounts.zeroOfAmount(balance)
+    : balance;
   return (
     <PaytoWireTransferForm
       title={i18n.str`Make a wire transfer`}
       withAccount={toAccount}
       withAmount={withAmount}
+      balance={positiveBalance}
       withSubject={withSubject}
       routeHere={routeHere}
       limit={limit}
diff --git a/packages/bank-ui/src/pages/account/UpdateAccountPassword.tsx 
b/packages/bank-ui/src/pages/account/UpdateAccountPassword.tsx
index e21ac2464..c33aeb09e 100644
--- a/packages/bank-ui/src/pages/account/UpdateAccountPassword.tsx
+++ b/packages/bank-ui/src/pages/account/UpdateAccountPassword.tsx
@@ -185,6 +185,7 @@ export function UpdateAccountPassword({
                     for="password"
                   >
                     {i18n.str`Current password`}
+                    <b style={{ color: "red" }}> *</b>
                   </label>
                   <div class="mt-2">
                     <input
@@ -218,6 +219,7 @@ export function UpdateAccountPassword({
                   for="password"
                 >
                   {i18n.str`New password`}
+                  <b style={{ color: "red" }}> *</b>
                 </label>
                 <div class="mt-2">
                   <input
@@ -246,6 +248,7 @@ export function UpdateAccountPassword({
                   for="repeat"
                 >
                   {i18n.str`Type it again`}
+                  <b style={{ color: "red" }}> *</b>
                 </label>
                 <div class="mt-2">
                   <input
diff --git a/packages/bank-ui/src/pages/admin/AccountList.tsx 
b/packages/bank-ui/src/pages/admin/AccountList.tsx
index 4e465d4b5..8a692aaed 100644
--- a/packages/bank-ui/src/pages/admin/AccountList.tsx
+++ b/packages/bank-ui/src/pages/admin/AccountList.tsx
@@ -74,11 +74,6 @@ export function AccountList({
             <h1 class="text-base font-semibold leading-6 text-gray-900">
               <i18n.Translate>Accounts</i18n.Translate>
             </h1>
-            <p class="mt-2 text-sm text-gray-700">
-              <i18n.Translate>
-                A list of all bank accounts.
-              </i18n.Translate>
-            </p>
           </div>
           <div class="mt-4 sm:ml-16 sm:mt-0 sm:flex-none">
             <a
@@ -213,28 +208,28 @@ export function AccountList({
               )}
             </div>
             <nav
-          class="flex items-center justify-between border-t border-gray-200 
bg-white px-4 py-3 sm:px-6 rounded-lg"
-          aria-label="Pagination"
-        >
-          <div class="flex flex-1 justify-between sm:justify-end">
-            <button
-              name="first page"
-              class="relative disabled:bg-gray-100 disabled:text-gray-500 
inline-flex items-center rounded-md bg-white px-3 py-2 text-sm font-semibold 
text-gray-900 ring-1 ring-inset ring-gray-300 hover:bg-gray-50 
focus-visible:outline-offset-0"
-              disabled={!onGoStart}
-              onClick={onGoStart}
+              class="flex items-center justify-between border-t 
border-gray-200 bg-white px-4 py-3 sm:px-6 rounded-lg"
+              aria-label="Pagination"
             >
-              <i18n.Translate>First page</i18n.Translate>
-            </button>
-            <button
-              name="next page"
-              class="relative disabled:bg-gray-100 disabled:text-gray-500 ml-3 
inline-flex items-center rounded-md bg-white px-3 py-2 text-sm font-semibold 
text-gray-900 ring-1 ring-inset ring-gray-300 hover:bg-gray-50 
focus-visible:outline-offset-0"
-              disabled={!onGoNext}
-              onClick={onGoNext}
-            >
-              <i18n.Translate>Next</i18n.Translate>
-            </button>
-          </div>
-        </nav>
+              <div class="flex flex-1 justify-between sm:justify-end">
+                <button
+                  name="first page"
+                  class="relative disabled:bg-gray-100 disabled:text-gray-500 
inline-flex items-center rounded-md bg-white px-3 py-2 text-sm font-semibold 
text-gray-900 ring-1 ring-inset ring-gray-300 hover:bg-gray-50 
focus-visible:outline-offset-0"
+                  disabled={!onGoStart}
+                  onClick={onGoStart}
+                >
+                  <i18n.Translate>First page</i18n.Translate>
+                </button>
+                <button
+                  name="next page"
+                  class="relative disabled:bg-gray-100 disabled:text-gray-500 
ml-3 inline-flex items-center rounded-md bg-white px-3 py-2 text-sm 
font-semibold text-gray-900 ring-1 ring-inset ring-gray-300 hover:bg-gray-50 
focus-visible:outline-offset-0"
+                  disabled={!onGoNext}
+                  onClick={onGoNext}
+                >
+                  <i18n.Translate>Next</i18n.Translate>
+                </button>
+              </div>
+            </nav>
 
           </div>
         </div>

-- 
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]