diff options
Diffstat (limited to 'packages/merchant-backoffice-ui/src/paths/instance/accounts/create')
-rw-r--r-- | packages/merchant-backoffice-ui/src/paths/instance/accounts/create/CreatePage.tsx | 22 | ||||
-rw-r--r-- | packages/merchant-backoffice-ui/src/paths/instance/accounts/create/index.tsx | 6 |
2 files changed, 20 insertions, 8 deletions
diff --git a/packages/merchant-backoffice-ui/src/paths/instance/accounts/create/CreatePage.tsx b/packages/merchant-backoffice-ui/src/paths/instance/accounts/create/CreatePage.tsx index 6e4786a47..8539e6783 100644 --- a/packages/merchant-backoffice-ui/src/paths/instance/accounts/create/CreatePage.tsx +++ b/packages/merchant-backoffice-ui/src/paths/instance/accounts/create/CreatePage.tsx @@ -36,7 +36,7 @@ import { undefinedIfEmpty } from "../../../../utils/table.js"; type Entity = MerchantBackend.BankAccounts.AccountAddDetails & { repeatPassword: string }; interface Props { - onCreate: (d: Entity) => Promise<void>; + onCreate: (d: MerchantBackend.BankAccounts.AccountAddDetails) => Promise<void>; onBack?: () => void; } @@ -44,7 +44,7 @@ const accountAuthType = ["none", "basic"]; function isValidURL(s: string): boolean { try { - const u = new URL(s) + const u = new URL("/", s) return true; } catch (e) { return false; @@ -88,8 +88,22 @@ export function CreatePage({ onCreate, onBack }: Props): VNode { const submitForm = () => { if (hasErrors) return Promise.reject(); - delete state.repeatPassword - return onCreate(state as any); + const credit_facade_url = !state.credit_facade_url ? undefined : new URL("/", state.credit_facade_url).href + const credit_facade_credentials: MerchantBackend.BankAccounts.FacadeCredentials | undefined = + credit_facade_url == undefined ? undefined : + state.credit_facade_credentials?.type === "basic" ? { + type: "basic", + password: state.credit_facade_credentials.password, + username: state.credit_facade_credentials.username, + } : { + type: "none" + } + + return onCreate({ + payto_uri: state.payto_uri!, + credit_facade_credentials, + credit_facade_url, + }); }; return ( diff --git a/packages/merchant-backoffice-ui/src/paths/instance/accounts/create/index.tsx b/packages/merchant-backoffice-ui/src/paths/instance/accounts/create/index.tsx index 7d33d25ce..b458efe31 100644 --- a/packages/merchant-backoffice-ui/src/paths/instance/accounts/create/index.tsx +++ b/packages/merchant-backoffice-ui/src/paths/instance/accounts/create/index.tsx @@ -24,11 +24,9 @@ import { Fragment, h, VNode } from "preact"; import { useState } from "preact/hooks"; import { NotificationCard } from "../../../../components/menu/index.js"; import { MerchantBackend } from "../../../../declaration.js"; -import { useWebhookAPI } from "../../../../hooks/webhooks.js"; +import { useBankAccountAPI } from "../../../../hooks/bank.js"; import { Notification } from "../../../../utils/types.js"; import { CreatePage } from "./CreatePage.js"; -import { useOtpDeviceAPI } from "../../../../hooks/otp.js"; -import { useBankAccountAPI } from "../../../../hooks/bank.js"; export type Entity = MerchantBackend.BankAccounts.AccountAddDetails; interface Props { @@ -53,7 +51,7 @@ export default function CreateValidator({ onConfirm, onBack }: Props): VNode { }) .catch((error) => { setNotif({ - message: i18n.str`could not create device`, + message: i18n.str`could not create account`, type: "ERROR", description: error.message, }); |