taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

commit fb93de6a0e2abd02381914256773f57e9851193b
parent f88050a49ded386ae92147643977efb5592d5cc8
Author: Florian Dold <florian@dold.me>
Date:   Wed,  4 Mar 2026 11:33:34 +0100

wallet-core: fake shortcut amounts in dev experiment

Diffstat:
Mpackages/taler-wallet-core/src/dev-experiments.ts | 5++++-
Mpackages/taler-wallet-core/src/wallet.ts | 10+++++++++-
2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/packages/taler-wallet-core/src/dev-experiments.ts b/packages/taler-wallet-core/src/dev-experiments.ts @@ -27,6 +27,7 @@ import { AbsoluteTime, + AmountString, Amounts, ContractTermsUtil, DenomLossEventType, @@ -396,7 +397,9 @@ export async function applyDevExperiment( if (!v || v === "off") { wex.ws.devExperimentState.fakeDemoShortcuts = undefined; } else { - wex.ws.devExperimentState.fakeDemoShortcuts = v.split(","); + wex.ws.devExperimentState.fakeDemoShortcuts = v.split( + ",", + ) as AmountString[]; } wex.ws.devExperimentState.fakeChfBban = getValFlag(parsedUri); return; diff --git a/packages/taler-wallet-core/src/wallet.ts b/packages/taler-wallet-core/src/wallet.ts @@ -1880,6 +1880,14 @@ async function handleGetCurrencySpecification( }, ); if (spec) { + if ( + wex.ws.devExperimentState.fakeDemoShortcuts != null && + req.scope.type === ScopeType.Exchange && + req.scope.url === "https://exchange.demo.taler.net" + ) { + spec.currencySpec.common_amounts = + wex.ws.devExperimentState.fakeDemoShortcuts; + } return { currencySpecification: spec.currencySpec, }; @@ -3129,7 +3137,7 @@ export interface DevExperimentState { fakeChfBban?: boolean; - fakeDemoShortcuts?: string[]; + fakeDemoShortcuts?: AmountString[]; fakeDefaultExchangeDemo?: boolean;