aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-webextension/src/wallet
diff options
context:
space:
mode:
authorSebastian <sebasjm@gmail.com>2024-02-29 01:24:49 -0300
committerSebastian <sebasjm@gmail.com>2024-02-29 01:24:49 -0300
commit46898aef5f6e238dbfe1b54cf1cf99a276b7d114 (patch)
tree22a482a5ba4f6cf7981d460d38d7987cbb39d3e2 /packages/taler-wallet-webextension/src/wallet
parent74b9ee559fc57f48a591140eb342cc8e2bbd3dd3 (diff)
downloadwallet-core-46898aef5f6e238dbfe1b54cf1cf99a276b7d114.tar.xz
wip wallet activity
Diffstat (limited to 'packages/taler-wallet-webextension/src/wallet')
-rw-r--r--packages/taler-wallet-webextension/src/wallet/Application.tsx5
-rw-r--r--packages/taler-wallet-webextension/src/wallet/DeveloperPage.tsx48
2 files changed, 15 insertions, 38 deletions
diff --git a/packages/taler-wallet-webextension/src/wallet/Application.tsx b/packages/taler-wallet-webextension/src/wallet/Application.tsx
index 4fafc73ad..62a519f06 100644
--- a/packages/taler-wallet-webextension/src/wallet/Application.tsx
+++ b/packages/taler-wallet-webextension/src/wallet/Application.tsx
@@ -82,6 +82,7 @@ import { SettingsPage } from "./Settings.js";
import { TransactionPage } from "./Transaction.js";
import { WelcomePage } from "./Welcome.js";
import { WalletActivity } from "../components/WalletActivity.js";
+import { EnabledBySettings } from "../components/EnabledBySettings.js";
export function Application(): VNode {
const { i18n } = useTranslationContext();
@@ -511,6 +512,9 @@ export function Application(): VNode {
component={() => <Redirect to={Pages.balanceHistory({})} />}
/>
</Router>
+ <EnabledBySettings name="showWalletActivity">
+ <WalletActivity />
+ </EnabledBySettings>
</IoCProviderForRuntime>
</TranslationProvider>
);
@@ -610,7 +614,6 @@ function WalletTemplate({
{children}
</AlertProvider>
</WalletBox>
- <WalletActivity />
</Fragment>
);
}
diff --git a/packages/taler-wallet-webextension/src/wallet/DeveloperPage.tsx b/packages/taler-wallet-webextension/src/wallet/DeveloperPage.tsx
index adb114862..cdd3994d7 100644
--- a/packages/taler-wallet-webextension/src/wallet/DeveloperPage.tsx
+++ b/packages/taler-wallet-webextension/src/wallet/DeveloperPage.tsx
@@ -46,6 +46,7 @@ import { Paper } from "../mui/Paper.js";
import { TextField } from "../mui/TextField.js";
import { Pages } from "../NavigationBar.js";
import { CoinInfo } from "@gnu-taler/taler-wallet-core/dbless";
+import { ActiveTasksTable } from "../components/WalletActivity.js";
type CoinsInfo = CoinDumpJson["coins"];
type CalculatedCoinfInfo = {
@@ -95,27 +96,23 @@ export function DeveloperPage({ }: Props): VNode {
const [settings, updateSettings] = useSettings();
const { safely } = useAlertContext();
- // const hook = useAsyncAsHook(() =>
- // api.wallet.call(WalletApiOperation.ListExchanges, {}),
- // );
const listenAllEvents = Array.from<NotificationType>({ length: 1 });
+ listenAllEvents.includes = () => true
const hook = useAsyncAsHook(async () => {
const list = await api.wallet.call(WalletApiOperation.ListExchanges, {});
const version = await api.wallet.call(WalletApiOperation.GetVersion, {});
- const tasks = await api.wallet.call(
- WalletApiOperation.GetActiveTasks,
- {},
- );
const coins = await api.wallet.call(WalletApiOperation.DumpCoins, {});
- return { exchanges: list.exchanges, version, coins, tasks:tasks.tasks };
+ return { exchanges: list.exchanges, version, coins };
});
const exchangeList = hook && !hook.hasError ? hook.response.exchanges : [];
const coins = hook && !hook.hasError ? hook.response.coins.coins : [];
- const tasks = hook && !hook.hasError ? hook.response.tasks : [];
useEffect(() => {
- return api.listener.onUpdateNotification(listenAllEvents, hook?.retry);
+ return api.listener.onUpdateNotification(listenAllEvents, (ev) => {
+ console.log("event", ev)
+ return hook?.retry()
+ });
});
const currencies: { [ex: string]: string } = {};
@@ -145,7 +142,6 @@ export function DeveloperPage({ }: Props): VNode {
);
const [tagName, setTagName] = useState("");
- const [exchangeURL, setExchangeURL] = useState("");
const [logLevel, setLogLevel] = useState("info");
return (
<div>
@@ -322,7 +318,7 @@ export function DeveloperPage({ }: Props): VNode {
return (
<tr key={idx}>
<td>
- <a href={!uri? undefined: Pages.defaultCta({ uri })}>
+ <a href={!uri ? undefined : Pages.defaultCta({ uri })}>
{e.scopeInfo ? `${e.scopeInfo.currency} (${e.scopeInfo.type === ScopeType.Global ? "global" : "regional"})` : e.currency}
</a>
</td>
@@ -545,31 +541,9 @@ export function DeveloperPage({ }: Props): VNode {
);
})}
<br />
- {tasks && tasks.length > 0 && (
- <Fragment>
- <p>
- <i18n.Translate>Pending operations</i18n.Translate>
- </p>
- <dl>
- {tasks.map((o) => {
- return (
- <NotifyUpdateFadeOut key={hashObjectId(o)}>
- <dt>
- {o.id}{" "}
- <Time
- timestamp={o.nextTry}
- format="yy/MM/dd HH:mm:ss"
- />
- </dt>
- <dd>
- <pre>{JSON.stringify(o, undefined, 2)}</pre>
- </dd>
- </NotifyUpdateFadeOut>
- );
- })}
- </dl>
- </Fragment>
- )}
+ <NotifyUpdateFadeOut>
+ <ActiveTasksTable />
+ </NotifyUpdateFadeOut>
</div>
);
}