diff options
author | Sebastian <sebasjm@gmail.com> | 2022-09-16 14:29:35 -0300 |
---|---|---|
committer | Sebastian <sebasjm@gmail.com> | 2022-09-16 14:29:35 -0300 |
commit | 6ddb2de84245ae3914c92b2b2eb7399e7f04500e (patch) | |
tree | 425cc377daf053e5283bee6986f6f437f25d7584 /packages/taler-wallet-webextension/src/cta/Deposit | |
parent | 860f10e6f004668d3109b5a1d96ddb2b26ddc2f5 (diff) | |
download | wallet-core-6ddb2de84245ae3914c92b2b2eb7399e7f04500e.tar.xz |
pretty
Diffstat (limited to 'packages/taler-wallet-webextension/src/cta/Deposit')
3 files changed, 42 insertions, 26 deletions
diff --git a/packages/taler-wallet-webextension/src/cta/Deposit/index.ts b/packages/taler-wallet-webextension/src/cta/Deposit/index.ts index 796fad97c..0f6c4743e 100644 --- a/packages/taler-wallet-webextension/src/cta/Deposit/index.ts +++ b/packages/taler-wallet-webextension/src/cta/Deposit/index.ts @@ -23,11 +23,9 @@ import * as wxApi from "../../wxApi.js"; import { useComponentState } from "./state.js"; import { CompletedView, LoadingUriView, ReadyView } from "./views.js"; - - export interface Props { - talerDepositUri: string | undefined, - amountStr: AmountString | undefined, + talerDepositUri: string | undefined; + amountStr: AmountString | undefined; cancel: () => Promise<void>; } @@ -38,7 +36,6 @@ export type State = | State.Completed; export namespace State { - export interface Loading { status: "loading"; error: undefined; @@ -63,10 +60,14 @@ export namespace State { } const viewMapping: StateViewMap<State> = { - "loading": Loading, + loading: Loading, "loading-uri": LoadingUriView, completed: CompletedView, ready: ReadyView, }; -export const DepositPage = compose("Deposit", (p: Props) => useComponentState(p, wxApi), viewMapping) +export const DepositPage = compose( + "Deposit", + (p: Props) => useComponentState(p, wxApi), + viewMapping, +); diff --git a/packages/taler-wallet-webextension/src/cta/Deposit/state.ts b/packages/taler-wallet-webextension/src/cta/Deposit/state.ts index 3939c7ba2..0ae8bff18 100644 --- a/packages/taler-wallet-webextension/src/cta/Deposit/state.ts +++ b/packages/taler-wallet-webextension/src/cta/Deposit/state.ts @@ -14,7 +14,6 @@ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/> */ - import { Amounts, CreateDepositGroupResponse } from "@gnu-taler/taler-util"; import { useState } from "preact/hooks"; import { useAsyncAsHook } from "../../hooks/useAsyncAsHook.js"; @@ -41,7 +40,7 @@ export function useComponentState( return { deposit, uri: talerDepositUri, amount }; }); - if (!info) return { status: "loading", error: undefined } + if (!info) return { status: "loading", error: undefined }; if (info.hasError) { return { status: "loading-uri", @@ -74,4 +73,4 @@ export function useComponentState( effective: deposit.effectiveDepositAmount, cancel, }; -}
\ No newline at end of file +} diff --git a/packages/taler-wallet-webextension/src/cta/Deposit/test.ts b/packages/taler-wallet-webextension/src/cta/Deposit/test.ts index 4e7f5cfb4..67f9ca8bd 100644 --- a/packages/taler-wallet-webextension/src/cta/Deposit/test.ts +++ b/packages/taler-wallet-webextension/src/cta/Deposit/test.ts @@ -19,9 +19,7 @@ * @author Sebastian Javier Marchano (sebasjm) */ -import { - Amounts, PrepareDepositResponse -} from "@gnu-taler/taler-util"; +import { Amounts, PrepareDepositResponse } from "@gnu-taler/taler-util"; import { expect } from "chai"; import { mountHook } from "../../test-utils.js"; import { useComponentState } from "./state.js"; @@ -30,11 +28,20 @@ describe("Deposit CTA states", () => { it("should tell the user that the URI is missing", async () => { const { getLastResultOrThrow, waitNextUpdate, assertNoPendingUpdate } = mountHook(() => - useComponentState({ talerDepositUri: undefined, amountStr: undefined, cancel: async () => { null } }, { - prepareRefund: async () => ({}), - applyRefund: async () => ({}), - onUpdateNotification: async () => ({}), - } as any), + useComponentState( + { + talerDepositUri: undefined, + amountStr: undefined, + cancel: async () => { + null; + }, + }, + { + prepareRefund: async () => ({}), + applyRefund: async () => ({}), + onUpdateNotification: async () => ({}), + } as any, + ), ); { @@ -61,14 +68,23 @@ describe("Deposit CTA states", () => { it("should be ready after loading", async () => { const { getLastResultOrThrow, waitNextUpdate, assertNoPendingUpdate } = mountHook(() => - useComponentState({ talerDepositUri: "payto://refund/asdasdas", amountStr: "EUR:1", cancel: async () => { null } }, { - prepareDeposit: async () => - ({ - effectiveDepositAmount: Amounts.parseOrThrow("EUR:1"), - totalDepositCost: Amounts.parseOrThrow("EUR:1.2"), - } as PrepareDepositResponse as any), - createDepositGroup: async () => ({}), - } as any), + useComponentState( + { + talerDepositUri: "payto://refund/asdasdas", + amountStr: "EUR:1", + cancel: async () => { + null; + }, + }, + { + prepareDeposit: async () => + ({ + effectiveDepositAmount: Amounts.parseOrThrow("EUR:1"), + totalDepositCost: Amounts.parseOrThrow("EUR:1.2"), + } as PrepareDepositResponse as any), + createDepositGroup: async () => ({}), + } as any, + ), ); { |