diff options
Diffstat (limited to 'packages/demobank-ui/src/hooks/bank-state.ts')
-rw-r--r-- | packages/demobank-ui/src/hooks/bank-state.ts | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/packages/demobank-ui/src/hooks/bank-state.ts b/packages/demobank-ui/src/hooks/bank-state.ts index 87f7a49f0..15daf9180 100644 --- a/packages/demobank-ui/src/hooks/bank-state.ts +++ b/packages/demobank-ui/src/hooks/bank-state.ts @@ -28,6 +28,7 @@ import { codecOptional, } from "@gnu-taler/taler-util"; import { buildStorageKey, useLocalStorage } from "@gnu-taler/web-util/browser"; +import { AppLocation } from "../route.js"; export type ChallengeInProgess = | DeleteAccountChallenge @@ -41,6 +42,7 @@ type BaseChallenge<OpType extends string, ReqType> = { id: string; operation: OpType; sent: AbsoluteTime; + location: AppLocation; info?: TalerCorebankApi.TanTransmission; request: ReqType; }; @@ -68,6 +70,7 @@ const codecForChallengeUpdatePassword = (): Codec<UpdatePasswordChallenge> => buildCodecForObject<UpdatePasswordChallenge>() .property("operation", codecForConstString("update-password")) .property("id", codecForString()) + .property("location", codecForAppLocation()) .property("sent", codecForAbsoluteTime) .property("info", codecOptional(codecForTanTransmission())) .property("request", codecForAny()) @@ -77,6 +80,7 @@ const codecForChallengeDeleteAccount = (): Codec<DeleteAccountChallenge> => buildCodecForObject<DeleteAccountChallenge>() .property("operation", codecForConstString("delete-account")) .property("id", codecForString()) + .property("location", codecForAppLocation()) .property("sent", codecForAbsoluteTime) .property("request", codecForString()) .property("info", codecOptional(codecForTanTransmission())) @@ -86,6 +90,7 @@ const codecForChallengeUpdateAccount = (): Codec<UpdateAccountChallenge> => buildCodecForObject<UpdateAccountChallenge>() .property("operation", codecForConstString("update-account")) .property("id", codecForString()) + .property("location", codecForAppLocation()) .property("sent", codecForAbsoluteTime) .property("info", codecOptional(codecForTanTransmission())) .property("request", codecForAny()) @@ -96,6 +101,7 @@ const codecForChallengeCreateTransaction = buildCodecForObject<CreateTransactionChallenge>() .property("operation", codecForConstString("create-transaction")) .property("id", codecForString()) + .property("location", codecForAppLocation()) .property("sent", codecForAbsoluteTime) .property("info", codecOptional(codecForTanTransmission())) .property("request", codecForAny()) @@ -106,15 +112,19 @@ const codecForChallengeConfirmWithdrawal = buildCodecForObject<ConfirmWithdrawalChallenge>() .property("operation", codecForConstString("confirm-withdrawal")) .property("id", codecForString()) + .property("location", codecForAppLocation()) .property("sent", codecForAbsoluteTime) .property("info", codecOptional(codecForTanTransmission())) .property("request", codecForString()) .build("ConfirmWithdrawalChallenge"); +const codecForAppLocation = codecForString as () => Codec<AppLocation> + const codecForChallengeCashout = (): Codec<CashoutChallenge> => buildCodecForObject<CashoutChallenge>() .property("operation", codecForConstString("create-cashout")) .property("id", codecForString()) + .property("location", codecForAppLocation()) .property("sent", codecForAbsoluteTime) .property("info", codecOptional(codecForTanTransmission())) .property("request", codecForAny()) |