/*
This file is part of GNU Taler
(C) 2022 Taler Systems S.A.
GNU Taler is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation; either version 3, or (at your option) any later version.
GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
GNU Taler; see the file COPYING. If not, see
*/
import { Fragment, h, VNode } from "preact";
import { PageStateType, usePageContext } from "../../context/pageState.js";
import { useTranslationContext } from "../../context/translation.js";
import { bankUiSettings } from "../../settings.js";
import { LangSelectorLikePy as LangSelector } from "../../components/menu/LangSelector.js";
import { StateUpdater } from "preact/hooks";
import talerLogo from "../../assets/logo-white.svg";
export function BankFrame(Props: any): VNode {
const { i18n } = useTranslationContext();
const { pageState, pageStateSetter } = usePageContext();
console.log("BankFrame state", pageState);
const logOut = (
This part of the demo shows how a bank that supports Taler
directly would work. In addition to using your own bank account,
you can also see the transaction history of some{" "}
Public Accounts
.
,
)}
{pageState.isLoggedIn ? logOut : null}
{Props.children}
);
}
function maybeDemoContent(content: VNode): VNode {
if (bankUiSettings.showDemoNav) {
return content;
}
return ;
}
/**
* Bring the state to show the public accounts page.
*/
function goPublicAccounts(pageStateSetter: StateUpdater) {
return () =>
pageStateSetter((prevState) => ({
...prevState,
showPublicHistories: true,
}));
}
function ErrorBanner(Props: any): VNode | null {
const [pageState, pageStateSetter] = Props.pageState;
// const { i18n } = useTranslationContext();
if (!pageState.error) return null;
const rval = (