gnunet-svn
[Top][All Lists]
Advanced

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

[taler-wallet-core] 04/04: fixing txId reference based on nominal type


From: gnunet
Subject: [taler-wallet-core] 04/04: fixing txId reference based on nominal type
Date: Mon, 22 May 2023 18:15:05 +0200

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

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

commit 9181c1e81b32950142943d7e47163c4cd0c260c8
Author: Sebastian <sebasjm@gmail.com>
AuthorDate: Mon May 22 13:14:51 2023 -0300

    fixing txId reference based on nominal type
---
 .../src/handlers/useField.ts                       | 25 ----------------------
 .../src/cta/Payment/stories.tsx                    | 23 ++++++++++----------
 .../src/wallet/DeveloperPage.stories.tsx           |  5 +++--
 .../src/wallet/Notifications/stories.tsx           | 10 ++++++---
 .../src/wallet/Transaction.stories.tsx             |  3 ++-
 .../src/wallet/Transaction.tsx                     | 11 +++++-----
 6 files changed, 29 insertions(+), 48 deletions(-)

diff --git a/packages/exchange-backoffice-ui/src/handlers/useField.ts 
b/packages/exchange-backoffice-ui/src/handlers/useField.ts
index 94635646f..60e65f435 100644
--- a/packages/exchange-backoffice-ui/src/handlers/useField.ts
+++ b/packages/exchange-backoffice-ui/src/handlers/useField.ts
@@ -80,28 +80,3 @@ function setValueDeeper(object: any, names: string[], value: 
any): any {
   }
   return { ...object, [head]: setValueDeeper(object[head] ?? {}, rest, value) 
};
 }
-
-type TTT<T extends object, K extends keyof T, R> = K extends keyof T
-  ? R extends T[K]
-    ? number
-    : never
-  : never;
-
-function impl<T extends object, K extends keyof T, R extends T[K]>(
-  obj: T,
-  name: K,
-): T[K] {
-  return obj[name];
-}
-
-interface Pepe {
-  name: string;
-  when: Date;
-  size: number;
-}
-const p: Pepe = {
-  name: "n",
-  when: new Date(),
-  size: 1,
-};
-const a = impl(p, "size");
diff --git a/packages/taler-wallet-webextension/src/cta/Payment/stories.tsx 
b/packages/taler-wallet-webextension/src/cta/Payment/stories.tsx
index 98d0c5f64..6572d1fd3 100644
--- a/packages/taler-wallet-webextension/src/cta/Payment/stories.tsx
+++ b/packages/taler-wallet-webextension/src/cta/Payment/stories.tsx
@@ -23,6 +23,7 @@ import {
   Amounts,
   MerchantContractTerms as ContractTerms,
   PreparePayResultType,
+  TransactionIdStr,
 } from "@gnu-taler/taler-util";
 import * as tests from "@gnu-taler/web-util/testing";
 import beer from "../../../static-dev/beer.png";
@@ -48,7 +49,7 @@ export const NoEnoughBalanceAvailable = 
tests.createExample(BaseView, {
 
   uri: "",
   payStatus: {
-    transactionId: " ",
+    transactionId: " " as TransactionIdStr,
     status: PreparePayResultType.InsufficientBalance,
     balanceDetails: {
       amountRequested: "USD:10",
@@ -88,7 +89,7 @@ export const NoEnoughBalanceMaterial = 
tests.createExample(BaseView, {
 
   uri: "",
   payStatus: {
-    transactionId: " ",
+    transactionId: " " as TransactionIdStr,
     status: PreparePayResultType.InsufficientBalance,
     balanceDetails: {
       amountRequested: "USD:10",
@@ -128,7 +129,7 @@ export const NoEnoughBalanceAgeAcceptable = 
tests.createExample(BaseView, {
 
   uri: "",
   payStatus: {
-    transactionId: " ",
+    transactionId: " " as TransactionIdStr,
     status: PreparePayResultType.InsufficientBalance,
     balanceDetails: {
       amountRequested: "USD:10",
@@ -169,7 +170,7 @@ export const NoEnoughBalanceMerchantAcceptable = 
tests.createExample(BaseView, {
 
   uri: "",
   payStatus: {
-    transactionId: " ",
+    transactionId: " " as TransactionIdStr,
     status: PreparePayResultType.InsufficientBalance,
     balanceDetails: {
       amountRequested: "USD:10",
@@ -211,7 +212,7 @@ export const NoEnoughBalanceMerchantDepositable = 
tests.createExample(
 
     uri: "",
     payStatus: {
-      transactionId: " ",
+      transactionId: " " as TransactionIdStr,
       status: PreparePayResultType.InsufficientBalance,
       balanceDetails: {
         amountRequested: "USD:10",
@@ -252,7 +253,7 @@ export const NoEnoughBalanceFeeGap = 
tests.createExample(BaseView, {
 
   uri: "",
   payStatus: {
-    transactionId: " ",
+    transactionId: " " as TransactionIdStr,
     status: PreparePayResultType.InsufficientBalance,
     balanceDetails: {
       amountRequested: "USD:10",
@@ -296,7 +297,7 @@ export const PaymentPossible = 
tests.createExample(BaseView, {
 
   uri: 
"taler://pay/merchant-backend.taler/2021.242-01G2X4275RBWG/?c=66BE594PDZR24744J6EQK52XM0",
   payStatus: {
-    transactionId: " ",
+    transactionId: " " as TransactionIdStr,
     status: PreparePayResultType.PaymentPossible,
     talerUri: "taler://pay/..",
     amountEffective: "USD:10",
@@ -336,7 +337,7 @@ export const PaymentPossibleWithFee = 
tests.createExample(BaseView, {
 
   uri: 
"taler://pay/merchant-backend.taler/2021.242-01G2X4275RBWG/?c=66BE594PDZR24744J6EQK52XM0",
   payStatus: {
-    transactionId: " ",
+    transactionId: " " as TransactionIdStr,
     status: PreparePayResultType.PaymentPossible,
     talerUri: "taler://pay/..",
     amountEffective: "USD:10.20",
@@ -373,7 +374,7 @@ export const TicketWithAProductList = 
tests.createExample(BaseView, {
 
   uri: 
"taler://pay/merchant-backend.taler/2021.242-01G2X4275RBWG/?c=66BE594PDZR24744J6EQK52XM0",
   payStatus: {
-    transactionId: " ",
+    transactionId: " " as TransactionIdStr,
     status: PreparePayResultType.PaymentPossible,
     talerUri: "taler://pay/..",
     amountEffective: "USD:10.20",
@@ -429,7 +430,7 @@ export const TicketWithShipping = 
tests.createExample(BaseView, {
 
   uri: 
"taler://pay/merchant-backend.taler/2021.242-01G2X4275RBWG/?c=66BE594PDZR24744J6EQK52XM0",
   payStatus: {
-    transactionId: " ",
+    transactionId: " " as TransactionIdStr,
     status: PreparePayResultType.PaymentPossible,
     talerUri: "taler://pay/..",
     amountEffective: "USD:10.20",
@@ -477,7 +478,7 @@ export const AlreadyConfirmedByOther = 
tests.createExample(BaseView, {
 
   uri: 
"taler://pay/merchant-backend.taler/2021.242-01G2X4275RBWG/?c=66BE594PDZR24744J6EQK52XM0",
   payStatus: {
-    transactionId: " ",
+    transactionId: " " as TransactionIdStr,
     status: PreparePayResultType.AlreadyConfirmed,
     talerUri: "taler://pay/..",
     amountEffective: "USD:10",
diff --git 
a/packages/taler-wallet-webextension/src/wallet/DeveloperPage.stories.tsx 
b/packages/taler-wallet-webextension/src/wallet/DeveloperPage.stories.tsx
index 0bf271c5a..28caf9c22 100644
--- a/packages/taler-wallet-webextension/src/wallet/DeveloperPage.stories.tsx
+++ b/packages/taler-wallet-webextension/src/wallet/DeveloperPage.stories.tsx
@@ -19,9 +19,10 @@
  * @author Sebastian Javier Marchano (sebasjm)
  */
 
-import { PendingTaskType } from "@gnu-taler/taler-wallet-core";
+import { PendingTaskType, TaskId } from "@gnu-taler/taler-wallet-core";
 import * as tests from "@gnu-taler/web-util/testing";
 import { View as TestedComponent } from "./DeveloperPage.js";
+import { PendingIdStr } from "@gnu-taler/taler-util";
 
 export default {
   title: "developer",
@@ -35,7 +36,7 @@ export const AllOff = tests.createExample(TestedComponent, {
   onDownloadDatabase: async () => "this is the content of the database",
   operations: [
     {
-      id: "",
+      id: " " as TaskId,
       type: PendingTaskType.ExchangeUpdate,
       exchangeBaseUrl: "http://exchange.url.";,
       givesLifeness: false,
diff --git 
a/packages/taler-wallet-webextension/src/wallet/Notifications/stories.tsx 
b/packages/taler-wallet-webextension/src/wallet/Notifications/stories.tsx
index 49ee21268..54f601c42 100644
--- a/packages/taler-wallet-webextension/src/wallet/Notifications/stories.tsx
+++ b/packages/taler-wallet-webextension/src/wallet/Notifications/stories.tsx
@@ -19,7 +19,11 @@
  * @author Sebastian Javier Marchano (sebasjm)
  */
 
-import { AbsoluteTime, AttentionType } from "@gnu-taler/taler-util";
+import {
+  AbsoluteTime,
+  AttentionType,
+  TransactionIdStr,
+} from "@gnu-taler/taler-util";
 import * as tests from "@gnu-taler/web-util/testing";
 import { ReadyView } from "./views.js";
 
@@ -34,7 +38,7 @@ export const Ready = tests.createExample(ReadyView, {
       read: false,
       info: {
         type: AttentionType.KycWithdrawal,
-        transactionId: "123",
+        transactionId: "123" as TransactionIdStr,
       },
     },
     {
@@ -42,7 +46,7 @@ export const Ready = tests.createExample(ReadyView, {
       read: false,
       info: {
         type: AttentionType.MerchantRefund,
-        transactionId: "123",
+        transactionId: "123" as TransactionIdStr,
       },
     },
     {
diff --git 
a/packages/taler-wallet-webextension/src/wallet/Transaction.stories.tsx 
b/packages/taler-wallet-webextension/src/wallet/Transaction.stories.tsx
index 7f2069fc9..b2a8de014 100644
--- a/packages/taler-wallet-webextension/src/wallet/Transaction.stories.tsx
+++ b/packages/taler-wallet-webextension/src/wallet/Transaction.stories.tsx
@@ -26,6 +26,7 @@ import {
   TalerProtocolTimestamp,
   TransactionCommon,
   TransactionDeposit,
+  TransactionIdStr,
   TransactionMajorState,
   TransactionPayment,
   TransactionPeerPullCredit,
@@ -63,7 +64,7 @@ const commonTransaction: TransactionCommon = {
     major: TransactionMajorState.Done,
   },
   timestamp: TalerProtocolTimestamp.now(),
-  transactionId: "txn:deposit:12",
+  transactionId: "txn:deposit:12" as TransactionIdStr,
   type: TransactionType.Deposit,
 } as Omit<
   Omit<Omit<TransactionCommon, "extendedStatus">, "frozen">,
diff --git a/packages/taler-wallet-webextension/src/wallet/Transaction.tsx 
b/packages/taler-wallet-webextension/src/wallet/Transaction.tsx
index 938d62490..39b070e46 100644
--- a/packages/taler-wallet-webextension/src/wallet/Transaction.tsx
+++ b/packages/taler-wallet-webextension/src/wallet/Transaction.tsx
@@ -28,6 +28,7 @@ import {
   TalerProtocolTimestamp,
   Transaction,
   TransactionDeposit,
+  TransactionIdStr,
   TransactionMajorState,
   TransactionType,
   TranslatedString,
@@ -74,10 +75,8 @@ interface Props {
   goToWalletHistory: (currency?: string) => Promise<void>;
 }
 
-export function TransactionPage({
-  tid: transactionId,
-  goToWalletHistory,
-}: Props): VNode {
+export function TransactionPage({ tid, goToWalletHistory }: Props): VNode {
+  const transactionId = tid as TransactionIdStr; //FIXME: validate
   const { i18n } = useTranslationContext();
   const api = useBackendContext();
   const state = useAsyncAsHook(
@@ -152,7 +151,7 @@ export interface WalletTransactionProps {
   onCancel: () => Promise<void>;
   onDelete: () => Promise<void>;
   onRetry: () => Promise<void>;
-  onRefund: (id: string) => Promise<void>;
+  onRefund: (id: TransactionIdStr) => Promise<void>;
   onBack: () => Promise<void>;
 }
 
@@ -621,7 +620,7 @@ export function TransactionView({
                   <Button
                     variant="contained"
                     onClick={safely("refund transaction", () =>
-                      onRefund(transaction.proposalId),
+                      onRefund(transaction.transactionId),
                     )}
                   >
                     <i18n.Translate>Accept</i18n.Translate>

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