From 0cb006816e1877294f9f65e7bdc926985bc0b998 Mon Sep 17 00:00:00 2001 From: callebtc <93376500+callebtc@users.noreply.github.com> Date: Tue, 4 Apr 2023 23:18:29 +0200 Subject: [PATCH] add wallet page --- .../app/src/Pages/settings/wallet/Cashu.tsx | 68 +++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 packages/app/src/Pages/settings/wallet/Cashu.tsx diff --git a/packages/app/src/Pages/settings/wallet/Cashu.tsx b/packages/app/src/Pages/settings/wallet/Cashu.tsx new file mode 100644 index 00000000..ddcb6607 --- /dev/null +++ b/packages/app/src/Pages/settings/wallet/Cashu.tsx @@ -0,0 +1,68 @@ +import { useState } from "react"; +import { FormattedMessage, useIntl } from "react-intl"; +import { v4 as uuid } from "uuid"; + +import AsyncButton from "Element/AsyncButton"; +import { unwrap } from "Util"; +import { CashuWallet } from "Wallet/Cashu"; +import { WalletConfig, WalletKind, Wallets } from "Wallet"; +import { useNavigate } from "react-router-dom"; + +const ConnectCashu = () => { + const navigate = useNavigate(); + const { formatMessage } = useIntl(); + const [config, setConfig] = useState(); + const [error, setError] = useState(); + + async function tryConnect(config: string) { + try { + // const connection = new CashuWallet(config); + // await connection.login(); + // const info = await connection.getInfo(); + // const newWallet = { + // id: uuid(), + // kind: WalletKind.LNDHub, + // active: true, + // info, + // data: config, + // } as WalletConfig; + // Wallets.add(newWallet); + // navigate("/wallet"); + } catch (e) { + if (e instanceof Error) { + setError((e as Error).message); + } else { + setError( + formatMessage({ + defaultMessage: "Unknown error", + }) + ); + } + } + } + + return ( + <> +

+ +

+
+
+ setConfig(e.target.value)} + /> +
+ tryConnect(unwrap(config))} disabled={!config}> + + +
+ {error && {error}} + + ); +}; + +export default ConnectCashu;