taler-typescript-core

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

commit 6b5d18311d6be35d442201aecb0f44d5dab484ba
parent ca5689fd517f12e37bcd5af6a2e749be91f20cf0
Author: Sebastian <sebasjm@taler-systems.com>
Date:   Mon, 20 Jul 2026 19:09:11 -0300

weird fetch on render loop, needs testing and for testing we need to change how providers works

Diffstat:
Mpackages/anastasis-webui/build.mjs | 1+
Mpackages/anastasis-webui/dev.mjs | 1+
Mpackages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.tsx | 15+++++++++------
3 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/packages/anastasis-webui/build.mjs b/packages/anastasis-webui/build.mjs @@ -18,6 +18,7 @@ import { build } from "@gnu-taler/web-util/build"; await build({ type: "production", + importMeta: import.meta, source: { js: ["src/index.ts"], assets: [{base:"src",files:["src/index.html"]}], diff --git a/packages/anastasis-webui/dev.mjs b/packages/anastasis-webui/dev.mjs @@ -22,6 +22,7 @@ const devEntryPoints = ["src/stories.tsx", "src/index.ts"]; const build = initializeDev({ type: "development", + importMeta: import.meta, source: { js: devEntryPoints, assets: [{base:"src",files:["src/index.html"]}], diff --git a/packages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.tsx b/packages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.tsx @@ -60,12 +60,15 @@ export function RecoveryFinishedScreen(): VNode { encodedSecret.value.length < 1000 && encodedSecret.mime === "text/plain"; let [uri, setUri] = useState(`data:${encodedSecret.mime},${secret}`); - fetch(`data:${encodedSecret.mime},${secret}`) // TODO: look into using new Blob - .then((v) => v.blob()) - .then((blob) => URL.createObjectURL(blob)) - .then((newUri) => { - setUri(newUri); - }); + useEffect(() => { + // FIXME: why fetch? Change THIS! + fetch(`data:${encodedSecret.mime},${secret}`) // TODO: look into using new Blob + .then((v) => v.blob()) + .then((blob) => URL.createObjectURL(blob)) + .then((newUri) => { + setUri(newUri); + }); + }, [secret, encodedSecret.mime]); return ( <AnastasisClientFrame title="Recovery Success" hideNav> <h2 class="subtitle">Your secret was recovered</h2>