@daimo/sdk 1.4.2 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/createDaimoClient.d.ts +24 -6
- package/dist/client/createDaimoClient.d.ts.map +1 -1
- package/dist/client/createDaimoClient.js +47 -0
- package/dist/client/createDaimoClient.js.map +1 -1
- package/dist/common/account.d.ts +160 -21
- package/dist/common/account.d.ts.map +1 -1
- package/dist/common/account.js +12 -1
- package/dist/common/account.js.map +1 -1
- package/dist/common/api.d.ts +25 -12
- package/dist/common/api.d.ts.map +1 -1
- package/dist/common/api.js +11 -1
- package/dist/common/api.js.map +1 -1
- package/dist/common/index.d.ts +1 -0
- package/dist/common/index.d.ts.map +1 -1
- package/dist/common/index.js +1 -0
- package/dist/common/index.js.map +1 -1
- package/dist/common/session.d.ts +27 -3
- package/dist/common/session.d.ts.map +1 -1
- package/dist/common/session.js.map +1 -1
- package/dist/common/theme.d.ts +47 -0
- package/dist/common/theme.d.ts.map +1 -0
- package/dist/common/theme.js +230 -0
- package/dist/common/theme.js.map +1 -0
- package/dist/common/token.d.ts +6 -0
- package/dist/common/token.d.ts.map +1 -1
- package/dist/common/token.js +47 -1
- package/dist/common/token.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/web/accountWallet.d.ts +15 -0
- package/dist/web/accountWallet.d.ts.map +1 -0
- package/dist/web/accountWallet.js +44 -0
- package/dist/web/accountWallet.js.map +1 -0
- package/dist/web/api/index.d.ts +17 -11
- package/dist/web/api/index.d.ts.map +1 -1
- package/dist/web/api/navTree.d.ts +27 -5
- package/dist/web/api/navTree.d.ts.map +1 -1
- package/dist/web/components/ApplePayLogo.d.ts +9 -0
- package/dist/web/components/ApplePayLogo.d.ts.map +1 -0
- package/dist/web/components/ApplePayLogo.js +15 -0
- package/dist/web/components/ApplePayLogo.js.map +1 -0
- package/dist/web/components/ChooseChainPage.d.ts.map +1 -1
- package/dist/web/components/ChooseChainPage.js +3 -3
- package/dist/web/components/ChooseChainPage.js.map +1 -1
- package/dist/web/components/ChooseOptionPage.d.ts.map +1 -1
- package/dist/web/components/ChooseOptionPage.js +20 -7
- package/dist/web/components/ChooseOptionPage.js.map +1 -1
- package/dist/web/components/ChooseWalletPage.js +12 -3
- package/dist/web/components/ChooseWalletPage.js.map +1 -1
- package/dist/web/components/ConfirmationPage.d.ts.map +1 -1
- package/dist/web/components/ConfirmationPage.js +2 -1
- package/dist/web/components/ConfirmationPage.js.map +1 -1
- package/dist/web/components/ConfirmationSpinner.d.ts +3 -1
- package/dist/web/components/ConfirmationSpinner.d.ts.map +1 -1
- package/dist/web/components/ConfirmationSpinner.js +7 -2
- package/dist/web/components/ConfirmationSpinner.js.map +1 -1
- package/dist/web/components/DaimoFrame.d.ts +51 -0
- package/dist/web/components/DaimoFrame.d.ts.map +1 -0
- package/dist/web/components/DaimoFrame.js +173 -0
- package/dist/web/components/DaimoFrame.js.map +1 -0
- package/dist/web/components/DaimoModal.d.ts.map +1 -1
- package/dist/web/components/DaimoModal.js +127 -52
- package/dist/web/components/DaimoModal.js.map +1 -1
- package/dist/web/components/DaimoModalPreview.d.ts +11 -0
- package/dist/web/components/DaimoModalPreview.d.ts.map +1 -0
- package/dist/web/components/DaimoModalPreview.js +98 -0
- package/dist/web/components/DaimoModalPreview.js.map +1 -0
- package/dist/web/components/DeeplinkPage.d.ts.map +1 -1
- package/dist/web/components/DeeplinkPage.js +4 -3
- package/dist/web/components/DeeplinkPage.js.map +1 -1
- package/dist/web/components/ErrorPage.d.ts.map +1 -1
- package/dist/web/components/ErrorPage.js +4 -1
- package/dist/web/components/ErrorPage.js.map +1 -1
- package/dist/web/components/ExchangePage.d.ts.map +1 -1
- package/dist/web/components/ExchangePage.js +8 -23
- package/dist/web/components/ExchangePage.js.map +1 -1
- package/dist/web/components/ExternalPaymentPage.d.ts +22 -0
- package/dist/web/components/ExternalPaymentPage.d.ts.map +1 -0
- package/dist/web/components/ExternalPaymentPage.js +24 -0
- package/dist/web/components/ExternalPaymentPage.js.map +1 -0
- package/dist/web/components/ModalChrome.d.ts +28 -0
- package/dist/web/components/ModalChrome.d.ts.map +1 -0
- package/dist/web/components/ModalChrome.js +64 -0
- package/dist/web/components/ModalChrome.js.map +1 -0
- package/dist/web/components/ModalSkeleton.d.ts.map +1 -1
- package/dist/web/components/ModalSkeleton.js +2 -4
- package/dist/web/components/ModalSkeleton.js.map +1 -1
- package/dist/web/components/SelectAmountPage.d.ts.map +1 -1
- package/dist/web/components/SelectAmountPage.js +2 -2
- package/dist/web/components/SelectAmountPage.js.map +1 -1
- package/dist/web/components/SelectTokenPage.d.ts.map +1 -1
- package/dist/web/components/SelectTokenPage.js +8 -7
- package/dist/web/components/SelectTokenPage.js.map +1 -1
- package/dist/web/components/Skeleton.d.ts +19 -0
- package/dist/web/components/Skeleton.d.ts.map +1 -0
- package/dist/web/components/Skeleton.js +21 -0
- package/dist/web/components/Skeleton.js.map +1 -0
- package/dist/web/components/StripeOnrampPage.d.ts +3 -27
- package/dist/web/components/StripeOnrampPage.d.ts.map +1 -1
- package/dist/web/components/StripeOnrampPage.js +7 -116
- package/dist/web/components/StripeOnrampPage.js.map +1 -1
- package/dist/web/components/TokenAmountEntry.d.ts +9 -3
- package/dist/web/components/TokenAmountEntry.d.ts.map +1 -1
- package/dist/web/components/TokenAmountEntry.js +49 -27
- package/dist/web/components/TokenAmountEntry.js.map +1 -1
- package/dist/web/components/WaitingDepositAddressPage.d.ts +39 -0
- package/dist/web/components/WaitingDepositAddressPage.d.ts.map +1 -1
- package/dist/web/components/WaitingDepositAddressPage.js +61 -32
- package/dist/web/components/WaitingDepositAddressPage.js.map +1 -1
- package/dist/web/components/WalletAmountPage.d.ts.map +1 -1
- package/dist/web/components/WalletAmountPage.js +7 -4
- package/dist/web/components/WalletAmountPage.js.map +1 -1
- package/dist/web/components/account/AccountApplePayPage.d.ts +1 -1
- package/dist/web/components/account/AccountApplePayPage.d.ts.map +1 -1
- package/dist/web/components/account/AccountApplePayPage.js +26 -14
- package/dist/web/components/account/AccountApplePayPage.js.map +1 -1
- package/dist/web/components/account/AccountBankDetailsPage.d.ts +2 -1
- package/dist/web/components/account/AccountBankDetailsPage.d.ts.map +1 -1
- package/dist/web/components/account/AccountBankDetailsPage.js +166 -54
- package/dist/web/components/account/AccountBankDetailsPage.js.map +1 -1
- package/dist/web/components/account/AccountBankPickerPage.d.ts.map +1 -1
- package/dist/web/components/account/AccountBankPickerPage.js +15 -13
- package/dist/web/components/account/AccountBankPickerPage.js.map +1 -1
- package/dist/web/components/account/AccountBankTransferSubmittedPage.d.ts +3 -1
- package/dist/web/components/account/AccountBankTransferSubmittedPage.d.ts.map +1 -1
- package/dist/web/components/account/AccountBankTransferSubmittedPage.js +9 -3
- package/dist/web/components/account/AccountBankTransferSubmittedPage.js.map +1 -1
- package/dist/web/components/account/AccountCreatingWalletPage.d.ts.map +1 -1
- package/dist/web/components/account/AccountCreatingWalletPage.js +6 -4
- package/dist/web/components/account/AccountCreatingWalletPage.js.map +1 -1
- package/dist/web/components/account/AccountEmailPage.d.ts.map +1 -1
- package/dist/web/components/account/AccountEmailPage.js +20 -14
- package/dist/web/components/account/AccountEmailPage.js.map +1 -1
- package/dist/web/components/account/AccountEnrollmentPage.d.ts +7 -3
- package/dist/web/components/account/AccountEnrollmentPage.d.ts.map +1 -1
- package/dist/web/components/account/AccountEnrollmentPage.js +142 -107
- package/dist/web/components/account/AccountEnrollmentPage.js.map +1 -1
- package/dist/web/components/account/AccountEnrollmentUpdatePage.d.ts +10 -0
- package/dist/web/components/account/AccountEnrollmentUpdatePage.d.ts.map +1 -0
- package/dist/web/components/account/AccountEnrollmentUpdatePage.js +214 -0
- package/dist/web/components/account/AccountEnrollmentUpdatePage.js.map +1 -0
- package/dist/web/components/account/AccountFlowProvider.d.ts +1 -1
- package/dist/web/components/account/AccountFlowProvider.d.ts.map +1 -1
- package/dist/web/components/account/AccountFlowProvider.js +26 -20
- package/dist/web/components/account/AccountFlowProvider.js.map +1 -1
- package/dist/web/components/account/AccountKycInfoPage.d.ts +13 -0
- package/dist/web/components/account/AccountKycInfoPage.d.ts.map +1 -0
- package/dist/web/components/account/AccountKycInfoPage.js +37 -0
- package/dist/web/components/account/AccountKycInfoPage.js.map +1 -0
- package/dist/web/components/account/AccountOtpCodeEntry.d.ts +4 -1
- package/dist/web/components/account/AccountOtpCodeEntry.d.ts.map +1 -1
- package/dist/web/components/account/AccountOtpCodeEntry.js +46 -43
- package/dist/web/components/account/AccountOtpCodeEntry.js.map +1 -1
- package/dist/web/components/account/AccountPaymentPage.d.ts +3 -2
- package/dist/web/components/account/AccountPaymentPage.d.ts.map +1 -1
- package/dist/web/components/account/AccountPaymentPage.js +30 -18
- package/dist/web/components/account/AccountPaymentPage.js.map +1 -1
- package/dist/web/components/account/AccountPhoneOtpPage.d.ts.map +1 -1
- package/dist/web/components/account/AccountPhoneOtpPage.js +22 -9
- package/dist/web/components/account/AccountPhoneOtpPage.js.map +1 -1
- package/dist/web/components/account/AccountPhonePage.d.ts.map +1 -1
- package/dist/web/components/account/AccountPhonePage.js +30 -12
- package/dist/web/components/account/AccountPhonePage.js.map +1 -1
- package/dist/web/components/account/AccountRipioOtpPage.d.ts +7 -0
- package/dist/web/components/account/AccountRipioOtpPage.d.ts.map +1 -0
- package/dist/web/components/account/AccountRipioOtpPage.js +53 -0
- package/dist/web/components/account/AccountRipioOtpPage.js.map +1 -0
- package/dist/web/components/account/AccountStatusPage.d.ts +1 -3
- package/dist/web/components/account/AccountStatusPage.d.ts.map +1 -1
- package/dist/web/components/account/AccountStatusPage.js +29 -39
- package/dist/web/components/account/AccountStatusPage.js.map +1 -1
- package/dist/web/components/account/accountNav.d.ts +1 -1
- package/dist/web/components/account/accountNav.d.ts.map +1 -1
- package/dist/web/components/account/accountNav.js +5 -1
- package/dist/web/components/account/accountNav.js.map +1 -1
- package/dist/web/components/account/formSchemas.d.ts +81 -0
- package/dist/web/components/account/formSchemas.d.ts.map +1 -0
- package/dist/web/components/account/formSchemas.js +80 -0
- package/dist/web/components/account/formSchemas.js.map +1 -0
- package/dist/web/components/account/formSchemas.test.d.ts +2 -0
- package/dist/web/components/account/formSchemas.test.d.ts.map +1 -0
- package/dist/web/components/account/formSchemas.test.js +57 -0
- package/dist/web/components/account/formSchemas.test.js.map +1 -0
- package/dist/web/components/account/kycRequirement.d.ts +14 -0
- package/dist/web/components/account/kycRequirement.d.ts.map +1 -0
- package/dist/web/components/account/kycRequirement.js +48 -0
- package/dist/web/components/account/kycRequirement.js.map +1 -0
- package/dist/web/components/account/phone.d.ts +2 -1
- package/dist/web/components/account/phone.d.ts.map +1 -1
- package/dist/web/components/account/phone.js +11 -2
- package/dist/web/components/account/phone.js.map +1 -1
- package/dist/web/components/buttons.d.ts +3 -2
- package/dist/web/components/buttons.d.ts.map +1 -1
- package/dist/web/components/buttons.js +4 -4
- package/dist/web/components/buttons.js.map +1 -1
- package/dist/web/components/containers.d.ts +7 -2
- package/dist/web/components/containers.d.ts.map +1 -1
- package/dist/web/components/containers.js +73 -30
- package/dist/web/components/containers.js.map +1 -1
- package/dist/web/components/formFields.d.ts +39 -0
- package/dist/web/components/formFields.d.ts.map +1 -0
- package/dist/web/components/formFields.js +70 -0
- package/dist/web/components/formFields.js.map +1 -0
- package/dist/web/components/icons.d.ts +17 -1
- package/dist/web/components/icons.d.ts.map +1 -1
- package/dist/web/components/icons.js +30 -2
- package/dist/web/components/icons.js.map +1 -1
- package/dist/web/components/shared.d.ts +1 -1
- package/dist/web/components/shared.d.ts.map +1 -1
- package/dist/web/components/shared.js +22 -22
- package/dist/web/components/shared.js.map +1 -1
- package/dist/web/formatAmount.d.ts +5 -0
- package/dist/web/formatAmount.d.ts.map +1 -0
- package/dist/web/formatAmount.js +53 -0
- package/dist/web/formatAmount.js.map +1 -0
- package/dist/web/formatAmount.test.d.ts +2 -0
- package/dist/web/formatAmount.test.d.ts.map +1 -0
- package/dist/web/formatAmount.test.js +43 -0
- package/dist/web/formatAmount.test.js.map +1 -0
- package/dist/web/hooks/accountAuthNav.d.ts +3 -0
- package/dist/web/hooks/accountAuthNav.d.ts.map +1 -0
- package/dist/web/hooks/accountAuthNav.js +24 -0
- package/dist/web/hooks/accountAuthNav.js.map +1 -0
- package/dist/web/hooks/accountAuthNav.test.d.ts +2 -0
- package/dist/web/hooks/accountAuthNav.test.d.ts.map +1 -0
- package/dist/web/hooks/accountAuthNav.test.js +32 -0
- package/dist/web/hooks/accountAuthNav.test.js.map +1 -0
- package/dist/web/hooks/formatUserError.d.ts.map +1 -1
- package/dist/web/hooks/formatUserError.js +13 -2
- package/dist/web/hooks/formatUserError.js.map +1 -1
- package/dist/web/hooks/locale.d.ts +2 -0
- package/dist/web/hooks/locale.d.ts.map +1 -1
- package/dist/web/hooks/locale.js +41 -4
- package/dist/web/hooks/locale.js.map +1 -1
- package/dist/web/hooks/locale.test.d.ts +2 -0
- package/dist/web/hooks/locale.test.d.ts.map +1 -0
- package/dist/web/hooks/locale.test.js +41 -0
- package/dist/web/hooks/locale.test.js.map +1 -0
- package/dist/web/hooks/locales/en.d.ts +26 -2
- package/dist/web/hooks/locales/en.d.ts.map +1 -1
- package/dist/web/hooks/locales/en.js +36 -12
- package/dist/web/hooks/locales/en.js.map +1 -1
- package/dist/web/hooks/locales/es.d.ts.map +1 -1
- package/dist/web/hooks/locales/es.js +35 -11
- package/dist/web/hooks/locales/es.js.map +1 -1
- package/dist/web/hooks/locales/ja.d.ts.map +1 -1
- package/dist/web/hooks/locales/ja.js +36 -12
- package/dist/web/hooks/locales/ja.js.map +1 -1
- package/dist/web/hooks/locales/ko.d.ts.map +1 -1
- package/dist/web/hooks/locales/ko.js +36 -12
- package/dist/web/hooks/locales/ko.js.map +1 -1
- package/dist/web/hooks/locales/pt.d.ts +4 -0
- package/dist/web/hooks/locales/pt.d.ts.map +1 -0
- package/dist/web/hooks/locales/pt.js +164 -0
- package/dist/web/hooks/locales/pt.js.map +1 -0
- package/dist/web/hooks/locales/zh.d.ts.map +1 -1
- package/dist/web/hooks/locales/zh.js +36 -12
- package/dist/web/hooks/locales/zh.js.map +1 -1
- package/dist/web/hooks/navEvent.js +2 -2
- package/dist/web/hooks/navEvent.js.map +1 -1
- package/dist/web/hooks/types.d.ts +15 -3
- package/dist/web/hooks/types.d.ts.map +1 -1
- package/dist/web/hooks/types.js.map +1 -1
- package/dist/web/hooks/useAccountFlow.d.ts +17 -11
- package/dist/web/hooks/useAccountFlow.d.ts.map +1 -1
- package/dist/web/hooks/useAccountFlow.js +71 -28
- package/dist/web/hooks/useAccountFlow.js.map +1 -1
- package/dist/web/hooks/useCreateDeposit.d.ts +1 -1
- package/dist/web/hooks/useCreateDeposit.d.ts.map +1 -1
- package/dist/web/hooks/useCreateDeposit.js +15 -103
- package/dist/web/hooks/useCreateDeposit.js.map +1 -1
- package/dist/web/hooks/useDraftDeposit.d.ts +2 -1
- package/dist/web/hooks/useDraftDeposit.d.ts.map +1 -1
- package/dist/web/hooks/useDraftDeposit.js +18 -1
- package/dist/web/hooks/useDraftDeposit.js.map +1 -1
- package/dist/web/hooks/useSessionNav.d.ts +6 -3
- package/dist/web/hooks/useSessionNav.d.ts.map +1 -1
- package/dist/web/hooks/useSessionNav.js +131 -39
- package/dist/web/hooks/useSessionNav.js.map +1 -1
- package/dist/web/hooks/useWalletFlow.d.ts.map +1 -1
- package/dist/web/hooks/useWalletFlow.js +74 -26
- package/dist/web/hooks/useWalletFlow.js.map +1 -1
- package/dist/web/hooks/walletError.d.ts +9 -0
- package/dist/web/hooks/walletError.d.ts.map +1 -0
- package/dist/web/hooks/walletError.js +16 -0
- package/dist/web/hooks/walletError.js.map +1 -0
- package/dist/web/index.d.ts +7 -1
- package/dist/web/index.d.ts.map +1 -1
- package/dist/web/index.js +3 -0
- package/dist/web/index.js.map +1 -1
- package/dist/web/styles.css +1 -1
- package/dist/web/theme.css +1 -1
- package/dist/web/theme.d.ts +7 -0
- package/dist/web/theme.d.ts.map +1 -0
- package/dist/web/theme.js +23 -0
- package/dist/web/theme.js.map +1 -0
- package/package.json +7 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountOtpCodeEntry.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountOtpCodeEntry.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,EAAE,CAAC,EAAE,MAAM,uBAAuB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,
|
|
1
|
+
{"version":3,"file":"AccountOtpCodeEntry.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountOtpCodeEntry.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,12 +3,13 @@ import type { DaimoPlatform } from "../../platform.js";
|
|
|
3
3
|
type AccountPaymentPageProps = {
|
|
4
4
|
rail: AccountRail;
|
|
5
5
|
sessionId: string;
|
|
6
|
+
initialAmount?: string;
|
|
6
7
|
platform: DaimoPlatform;
|
|
7
8
|
baseUrl: string;
|
|
8
|
-
onBack
|
|
9
|
+
onBack?: (() => void) | null;
|
|
9
10
|
onAdvance: () => void;
|
|
10
11
|
};
|
|
11
12
|
/** Amount entry for bank-transfer rails. Stores depositAmount and advances. */
|
|
12
|
-
export declare function AccountPaymentPage({ rail, sessionId, platform, baseUrl, onBack, onAdvance, }: AccountPaymentPageProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export declare function AccountPaymentPage({ rail, sessionId, initialAmount, platform, baseUrl, onBack, onAdvance, }: AccountPaymentPageProps): import("react/jsx-runtime").JSX.Element;
|
|
13
14
|
export {};
|
|
14
15
|
//# sourceMappingURL=AccountPaymentPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountPaymentPage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPaymentPage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EAEZ,MAAM,4BAA4B,CAAC;AAOpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"AccountPaymentPage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPaymentPage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EAEZ,MAAM,4BAA4B,CAAC;AAOpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AASvD,KAAK,uBAAuB,GAAG;IAC7B,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,aAAa,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EACJ,SAAS,EACT,aAAa,EACb,QAAQ,EACR,OAAO,EACP,MAAM,EACN,SAAS,GACV,EAAE,uBAAuB,2CA+GzB"}
|
|
@@ -4,10 +4,11 @@ import { useDaimoClient } from "../../hooks/DaimoClientContext.js";
|
|
|
4
4
|
import { useAccountFlow, useSessionDepositState, } from "../../hooks/useAccountFlow.js";
|
|
5
5
|
import { t } from "../../hooks/locale.js";
|
|
6
6
|
import { PrimaryButton } from "../buttons.js";
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
7
|
+
import { Skeleton } from "../Skeleton.js";
|
|
8
|
+
import { PageHeader } from "../shared.js";
|
|
9
|
+
import { TokenAmountEntry, } from "../TokenAmountEntry.js";
|
|
9
10
|
/** Amount entry for bank-transfer rails. Stores depositAmount and advances. */
|
|
10
|
-
export function AccountPaymentPage({ rail, sessionId, platform, baseUrl, onBack, onAdvance, }) {
|
|
11
|
+
export function AccountPaymentPage({ rail, sessionId, initialAmount, platform, baseUrl, onBack, onAdvance, }) {
|
|
11
12
|
const client = useDaimoClient();
|
|
12
13
|
const accountFlow = useAccountFlow();
|
|
13
14
|
const { depositState, setDepositState } = useSessionDepositState(sessionId);
|
|
@@ -34,26 +35,37 @@ export function AccountPaymentPage({ rail, sessionId, platform, baseUrl, onBack,
|
|
|
34
35
|
})();
|
|
35
36
|
}, [accountFlow, client, rail, sessionId]);
|
|
36
37
|
const [amountUsd, setAmountUsd] = useState(0);
|
|
38
|
+
const [amountNative, setAmountNative] = useState(0);
|
|
37
39
|
const [isValid, setIsValid] = useState(false);
|
|
38
|
-
const handleChange = useCallback((
|
|
39
|
-
setAmountUsd(
|
|
40
|
-
|
|
40
|
+
const handleChange = useCallback((value) => {
|
|
41
|
+
setAmountUsd(value.amountUsd);
|
|
42
|
+
setAmountNative(value.nativeAmount);
|
|
43
|
+
setIsValid(value.isValid);
|
|
41
44
|
}, []);
|
|
42
|
-
const handleSubmit = useCallback((
|
|
45
|
+
const handleSubmit = useCallback(({ nativeAmount }) => {
|
|
43
46
|
if (!accountFlow || !constraints)
|
|
44
47
|
return;
|
|
45
|
-
|
|
46
|
-
|
|
48
|
+
setDepositState({
|
|
49
|
+
depositAmount: nativeAmount.toFixed(2),
|
|
50
|
+
kind: "idle",
|
|
51
|
+
});
|
|
47
52
|
onAdvance();
|
|
48
53
|
}, [accountFlow, constraints, onAdvance, setDepositState]);
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
54
|
+
const initialAmountUsd = depositState?.depositAmount != null
|
|
55
|
+
? parseFloat(depositState.depositAmount) * (constraints?.destinationToken.usd ?? 1)
|
|
56
|
+
: initialAmount != null
|
|
57
|
+
? parseFloat(initialAmount)
|
|
58
|
+
: undefined;
|
|
59
|
+
return (_jsxs("div", { className: "daimo-flex daimo-flex-col daimo-flex-1 daimo-min-h-0", children: [_jsx(PageHeader, { title: t.accountPayment, onBack: onBack }), _jsxs("div", { className: "daimo-flex-1 daimo-flex daimo-flex-col daimo-items-center daimo-p-6", children: [constraints ? (_jsx(TokenAmountEntry, { token: constraints.destinationToken, minimumUsd: parseFloat(constraints.minAmount) *
|
|
60
|
+
constraints.destinationToken.usd, maximumUsd: parseFloat(constraints.maxAmount) *
|
|
61
|
+
constraints.destinationToken.usd, nativeDisplay: {
|
|
62
|
+
kind: "prefix",
|
|
63
|
+
symbol: constraints.currency.symbol,
|
|
64
|
+
}, initialMode: "native", initialAmountUsd: initialAmountUsd, onContinue: handleSubmit, onChange: handleChange, iconLogoURI: constraints.icon.logoURI, iconAlt: constraints.icon.alt, badgeLogoURI: constraints.badge.logoURI === constraints.icon.logoURI
|
|
65
|
+
? null
|
|
66
|
+
: constraints.badge.logoURI, badgeAlt: constraints.badge.alt, platform: platform, baseUrl: baseUrl })) : (_jsx(AmountEntrySkeleton, {})), _jsx(PrimaryButton, { onClick: () => isValid && handleSubmit({ amountUsd, nativeAmount: amountNative }), disabled: !isValid || !constraints, children: t.continue })] })] }));
|
|
67
|
+
}
|
|
68
|
+
function AmountEntrySkeleton() {
|
|
69
|
+
return (_jsxs("div", { className: "daimo-flex daimo-flex-col daimo-items-center", children: [_jsx("div", { className: "daimo-mb-3", children: _jsx(Skeleton, { className: "daimo-h-20 daimo-w-20", rounded: "full" }) }), _jsx("div", { className: "daimo-flex daimo-h-10 daimo-items-center daimo-justify-center", children: _jsx(Skeleton, { className: "daimo-h-10 daimo-w-40", rounded: "lg" }) }), _jsx("div", { className: "daimo-flex daimo-items-center daimo-justify-center daimo-py-3 daimo-px-4", children: _jsx(Skeleton, { className: "daimo-h-[21px] daimo-w-20", rounded: "sm", delayMs: 100 }) }), _jsx("div", { className: "daimo-min-h-[21px] daimo-mb-6" })] }));
|
|
58
70
|
}
|
|
59
71
|
//# sourceMappingURL=AccountPaymentPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountPaymentPage.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPaymentPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAMjE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EACL,cAAc,EACd,sBAAsB,GACvB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,CAAC,EAAE,MAAM,uBAAuB,CAAC;AAE1C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"AccountPaymentPage.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPaymentPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountPhoneOtpPage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPhoneOtpPage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"AccountPhoneOtpPage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPhoneOtpPage.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAU9D,KAAK,wBAAwB,GAAG;IAC9B,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,IAAI,EACJ,MAAM,EACN,UAAU,GACX,EAAE,wBAAwB,2CAgE1B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { useCallback } from "react";
|
|
3
3
|
import { useDaimoClient } from "../../hooks/DaimoClientContext.js";
|
|
4
|
+
import { formatUserError } from "../../hooks/formatUserError.js";
|
|
4
5
|
import { useAccountFlow } from "../../hooks/useAccountFlow.js";
|
|
5
6
|
import { AccountOtpCodeEntry, } from "./AccountOtpCodeEntry.js";
|
|
6
7
|
import { formatUsPhoneDisplay } from "./phone.js";
|
|
@@ -15,11 +16,11 @@ export function AccountPhoneOtpPage({ rail, onBack, onVerified, }) {
|
|
|
15
16
|
const handleVerify = useCallback(async (code) => {
|
|
16
17
|
if (!account)
|
|
17
18
|
return { ok: false };
|
|
18
|
-
const verified = await account.verifyPhoneOtp(code);
|
|
19
|
+
const verified = await account.verifyPhoneOtp(code, client);
|
|
19
20
|
if (!verified)
|
|
20
21
|
return { ok: false };
|
|
21
|
-
// startEnrollment
|
|
22
|
-
//
|
|
22
|
+
// startEnrollment advances the provider state machine after the Daimo
|
|
23
|
+
// phone verification endpoint stores the Coinbase checkpoint.
|
|
23
24
|
const result = await account.startEnrollment(client, { rail });
|
|
24
25
|
if (!result) {
|
|
25
26
|
return { ok: false, msg: "failed to submit phone verification" };
|
|
@@ -30,27 +31,39 @@ export function AccountPhoneOtpPage({ rail, onBack, onVerified, }) {
|
|
|
30
31
|
case "phone_required":
|
|
31
32
|
return {
|
|
32
33
|
ok: false,
|
|
33
|
-
msg: result.reason
|
|
34
|
+
msg: result.reason
|
|
35
|
+
? formatUserError(result.reason)
|
|
36
|
+
: "phone verification not recognized",
|
|
34
37
|
};
|
|
35
38
|
case "error":
|
|
36
39
|
return { ok: false, msg: result.message };
|
|
37
40
|
case "suspended":
|
|
38
41
|
case "not_eligible":
|
|
39
42
|
return { ok: false, msg: result.reason };
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
+
case "kyc_required":
|
|
44
|
+
case "kyc_retry":
|
|
45
|
+
case "kyc_pending_review":
|
|
46
|
+
case "kyc_rejected_final":
|
|
47
|
+
case "hosted_agreement_required":
|
|
48
|
+
case "hosted_kyc_required":
|
|
49
|
+
case "provider_otp_required":
|
|
50
|
+
case "provider_pending":
|
|
43
51
|
return { ok: true };
|
|
52
|
+
default:
|
|
53
|
+
return assertUnreachable(result);
|
|
44
54
|
}
|
|
45
55
|
}, [account, client, rail]);
|
|
46
56
|
const handleResend = useCallback(async () => {
|
|
47
57
|
if (!account)
|
|
48
58
|
return;
|
|
49
|
-
await account.sendPhoneOtp();
|
|
50
|
-
}, [account]);
|
|
59
|
+
await account.sendPhoneOtp(undefined, client);
|
|
60
|
+
}, [account, client]);
|
|
51
61
|
const destination = account?.phoneNumber
|
|
52
62
|
? formatUsPhoneDisplay(account.phoneNumber)
|
|
53
63
|
: "";
|
|
54
64
|
return (_jsx(AccountOtpCodeEntry, { destination: destination, onBack: onBack, onVerified: onVerified, onVerify: handleVerify, onResend: handleResend }));
|
|
55
65
|
}
|
|
66
|
+
function assertUnreachable(value) {
|
|
67
|
+
throw new Error(`unhandled enrollment response: ${JSON.stringify(value)}`);
|
|
68
|
+
}
|
|
56
69
|
//# sourceMappingURL=AccountPhoneOtpPage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountPhoneOtpPage.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPhoneOtpPage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAGpC,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EACL,mBAAmB,GAEpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAQlD;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,IAAI,EACJ,MAAM,EACN,UAAU,GACe;IACzB,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;IAEhC,MAAM,YAAY,GAAG,WAAW,CAC9B,KAAK,EAAE,IAAY,EAA6B,EAAE;QAChD,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"AccountPhoneOtpPage.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPhoneOtpPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountPhonePage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPhonePage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AccountPhonePage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPhonePage.tsx"],"names":[],"mappings":"AAmBA,KAAK,qBAAqB,GAAG;IAC3B,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,qBAAqB,2CAqJ5E"}
|
|
@@ -1,20 +1,28 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useCallback, useMemo, useRef, useState } from "react";
|
|
3
|
+
import { useDaimoClient } from "../../hooks/DaimoClientContext.js";
|
|
3
4
|
import { t } from "../../hooks/locale.js";
|
|
4
5
|
import { useAccountFlow } from "../../hooks/useAccountFlow.js";
|
|
5
6
|
import { PrimaryButton } from "../buttons.js";
|
|
6
|
-
import { CenteredContent, ErrorMessage, PageHeader
|
|
7
|
-
import { formatUsPhoneLocal, normalizeUsPhoneDigits,
|
|
7
|
+
import { CenteredContent, ErrorMessage, PageHeader } from "../shared.js";
|
|
8
|
+
import { formatUsPhoneLocal, normalizeUsPhoneDigits, normalizeUsPhoneLocalDigits, parseUsPhoneNumber, } from "./phone.js";
|
|
8
9
|
/**
|
|
9
10
|
* Phone entry step for Coinbase Headless enrollment. Keeps the field to a
|
|
10
11
|
* single line like email entry, but formats the US number as the user types.
|
|
11
12
|
*/
|
|
12
13
|
export function AccountPhonePage({ onBack, onOtpSent }) {
|
|
13
14
|
const account = useAccountFlow();
|
|
15
|
+
const client = useDaimoClient();
|
|
14
16
|
const [phoneDigits, setPhoneDigits] = useState(() => normalizeUsPhoneDigits(account?.phoneNumber ?? ""));
|
|
15
17
|
const inputRef = useRef(null);
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
+
const phone = useMemo(() => {
|
|
19
|
+
if (phoneDigits.length < 10)
|
|
20
|
+
return { kind: "incomplete" };
|
|
21
|
+
const e164 = parseUsPhoneNumber(phoneDigits);
|
|
22
|
+
return e164 ? { kind: "valid", e164 } : { kind: "invalid" };
|
|
23
|
+
}, [phoneDigits]);
|
|
24
|
+
const errorMessage = account?.authError ??
|
|
25
|
+
(phone.kind === "invalid" ? t.applePayUsPhoneRequired : null);
|
|
18
26
|
const formattedPhone = useMemo(() => formatUsPhoneLocal(phoneDigits), [phoneDigits]);
|
|
19
27
|
const restoreCaret = useCallback((digitIndex, nextDigits) => {
|
|
20
28
|
requestAnimationFrame(() => {
|
|
@@ -27,25 +35,25 @@ export function AccountPhonePage({ onBack, onOtpSent }) {
|
|
|
27
35
|
});
|
|
28
36
|
}, []);
|
|
29
37
|
const handleSubmit = useCallback(async () => {
|
|
30
|
-
if (!account ||
|
|
38
|
+
if (!account || phone.kind !== "valid")
|
|
31
39
|
return;
|
|
32
|
-
account.setPhoneNumber(e164);
|
|
33
|
-
const sent = await account.sendPhoneOtp(e164);
|
|
40
|
+
account.setPhoneNumber(phone.e164);
|
|
41
|
+
const sent = await account.sendPhoneOtp(phone.e164, client);
|
|
34
42
|
if (sent)
|
|
35
43
|
onOtpSent();
|
|
36
|
-
}, [account,
|
|
44
|
+
}, [account, client, phone, onOtpSent]);
|
|
37
45
|
const handleChange = useCallback((e) => {
|
|
38
46
|
if (account?.authError)
|
|
39
47
|
account.setAuthError(null);
|
|
40
48
|
const rawValue = e.target.value;
|
|
41
|
-
const nextDigits =
|
|
49
|
+
const nextDigits = normalizeUsPhoneLocalDigits(rawValue);
|
|
42
50
|
const selectionStart = e.target.selectionStart ?? rawValue.length;
|
|
43
51
|
const digitIndex = Math.min(countDigits(rawValue.slice(0, selectionStart)), nextDigits.length);
|
|
44
52
|
setPhoneDigits(nextDigits);
|
|
45
53
|
restoreCaret(digitIndex, nextDigits);
|
|
46
54
|
}, [account, restoreCaret]);
|
|
47
55
|
const handleKeyDown = useCallback((e) => {
|
|
48
|
-
if (e.key === "Enter" &&
|
|
56
|
+
if (e.key === "Enter" && phone.kind === "valid") {
|
|
49
57
|
e.preventDefault();
|
|
50
58
|
handleSubmit();
|
|
51
59
|
return;
|
|
@@ -67,7 +75,14 @@ export function AccountPhonePage({ onBack, onOtpSent }) {
|
|
|
67
75
|
const nextDigits = phoneDigits.slice(0, removeIndex) + phoneDigits.slice(removeIndex + 1);
|
|
68
76
|
setPhoneDigits(nextDigits);
|
|
69
77
|
restoreCaret(removeIndex, nextDigits);
|
|
70
|
-
}, [
|
|
78
|
+
}, [
|
|
79
|
+
account,
|
|
80
|
+
formattedPhone,
|
|
81
|
+
handleSubmit,
|
|
82
|
+
phone.kind,
|
|
83
|
+
phoneDigits,
|
|
84
|
+
restoreCaret,
|
|
85
|
+
]);
|
|
71
86
|
const handlePaste = useCallback((e) => {
|
|
72
87
|
e.preventDefault();
|
|
73
88
|
if (account?.authError)
|
|
@@ -79,7 +94,10 @@ export function AccountPhonePage({ onBack, onOtpSent }) {
|
|
|
79
94
|
const handleFocus = useCallback(() => {
|
|
80
95
|
restoreCaret(phoneDigits.length, phoneDigits);
|
|
81
96
|
}, [phoneDigits, restoreCaret]);
|
|
82
|
-
return (_jsxs("div", { className: "daimo-flex daimo-flex-col daimo-flex-1 daimo-min-h-0", children: [_jsx(PageHeader, { title: t.accountPhone, onBack: onBack }), _jsxs(CenteredContent, { children: [_jsx("p", { className: "daimo-text-sm daimo-text-[var(--daimo-text-secondary)] daimo-text-center", children: t.accountPhoneDesc }), _jsxs("div", { className: "daimo-w-full daimo-max-w-xs daimo-flex daimo-items-center daimo-gap-3 daimo-px-4 daimo-py-3 daimo-bg-[var(--daimo-surface-secondary)] daimo-rounded-[var(--daimo-radius-md)] focus-within:daimo-ring-2 focus-within:daimo-ring-[var(--daimo-accent)] daimo-transition-shadow", children: [_jsx("span", { className: "daimo-text-base daimo-font-medium daimo-text-[var(--daimo-text-secondary)] daimo-select-none", children: "+1" }), _jsx("input", { ref: inputRef, type: "tel", inputMode: "tel", autoComplete: "tel-national", value: formattedPhone, onChange: handleChange, onKeyDown: handleKeyDown, onPaste: handlePaste, onFocus: handleFocus, placeholder: "555
|
|
97
|
+
return (_jsxs("div", { className: "daimo-flex daimo-flex-col daimo-flex-1 daimo-min-h-0", children: [_jsx(PageHeader, { title: t.accountPhone, onBack: onBack }), _jsxs(CenteredContent, { children: [_jsx("p", { className: "daimo-text-sm daimo-text-[var(--daimo-text-secondary)] daimo-text-center", children: t.accountPhoneDesc }), _jsxs("div", { className: "daimo-w-full daimo-max-w-xs daimo-flex daimo-items-center daimo-gap-3 daimo-px-4 daimo-py-3 daimo-bg-[var(--daimo-surface-secondary)] daimo-rounded-[var(--daimo-radius-md)] focus-within:daimo-ring-2 focus-within:daimo-ring-[var(--daimo-accent)] daimo-transition-shadow", children: [_jsx(UsFlagIcon, {}), _jsx("span", { className: "daimo-text-base daimo-font-medium daimo-text-[var(--daimo-text-secondary)] daimo-select-none", children: "+1" }), _jsx("input", { ref: inputRef, type: "tel", inputMode: "tel", autoComplete: "tel-national", value: formattedPhone, onChange: handleChange, onKeyDown: handleKeyDown, onPaste: handlePaste, onFocus: handleFocus, placeholder: "650 555 1234", "aria-label": t.accountPhone, autoFocus: true, className: "daimo-flex-1 daimo-min-w-0 daimo-bg-transparent daimo-border-none daimo-outline-none daimo-shadow-none daimo-ring-0 daimo-text-base daimo-text-[var(--daimo-text)] daimo-placeholder-[var(--daimo-placeholder)] daimo-caret-[var(--daimo-accent)] focus:daimo-outline-none focus:daimo-ring-0 focus:daimo-border-none focus:daimo-shadow-none" })] }), errorMessage && _jsx(ErrorMessage, { message: errorMessage })] }), _jsx("div", { className: "daimo-px-6 daimo-pb-6 daimo-flex daimo-flex-col daimo-items-center", children: _jsx(PrimaryButton, { onClick: handleSubmit, disabled: phone.kind !== "valid" || account?.isLoggingIn, children: account?.isLoggingIn ? t.loading : t.continue }) })] }));
|
|
98
|
+
}
|
|
99
|
+
function UsFlagIcon() {
|
|
100
|
+
return (_jsxs("svg", { "aria-hidden": "true", viewBox: "0 0 512 512", className: "daimo-h-5 daimo-w-5 daimo-shrink-0 daimo-overflow-hidden daimo-rounded-full", children: [_jsx("path", { fill: "#eee", d: "M256 0h256v64l-32 32 32 32v64l-32 32 32 32v64l-32 32 32 32v64l-256 32L0 448v-64l32-32-32-32v-64z" }), _jsx("path", { fill: "#d80027", d: "M224 64h288v64H224Zm0 128h288v64H256ZM0 320h512v64H0Zm0 128h512v64H0Z" }), _jsx("path", { fill: "#0052b4", d: "M0 0h256v256H0Z" }), _jsx("path", { fill: "#eee", d: "m187 243 57-41h-70l57 41-22-67zm-81 0 57-41H93l57 41-22-67zm-81 0 57-41H12l57 41-22-67zm162-81 57-41h-70l57 41-22-67zm-81 0 57-41H93l57 41-22-67zm-81 0 57-41H12l57 41-22-67Zm162-82 57-41h-70l57 41-22-67Zm-81 0 57-41H93l57 41-22-67zm-81 0 57-41H12l57 41-22-67Z" })] }));
|
|
83
101
|
}
|
|
84
102
|
function countDigits(value) {
|
|
85
103
|
return value.replace(/\D/g, "").length;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountPhonePage.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPhonePage.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE/D,OAAO,EAAE,CAAC,EAAE,MAAM,uBAAuB,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,
|
|
1
|
+
{"version":3,"file":"AccountPhonePage.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountPhonePage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
type AccountRipioOtpPageProps = {
|
|
2
|
+
onBack: () => void;
|
|
3
|
+
onVerified: () => void;
|
|
4
|
+
};
|
|
5
|
+
export declare function AccountRipioOtpPage({ onBack, onVerified, }: AccountRipioOtpPageProps): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=AccountRipioOtpPage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AccountRipioOtpPage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountRipioOtpPage.tsx"],"names":[],"mappings":"AASA,KAAK,wBAAwB,GAAG;IAC9B,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC;AAKF,wBAAgB,mBAAmB,CAAC,EAClC,MAAM,EACN,UAAU,GACX,EAAE,wBAAwB,2CA6D1B"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from "react";
|
|
3
|
+
import { useDaimoClient } from "../../hooks/DaimoClientContext.js";
|
|
4
|
+
import { useAccountFlow } from "../../hooks/useAccountFlow.js";
|
|
5
|
+
import { AccountOtpCodeEntry, } from "./AccountOtpCodeEntry.js";
|
|
6
|
+
const RIPIO_INVALID_CODE = "El código de Ripio no es válido. Revisalo e intentalo de nuevo.";
|
|
7
|
+
export function AccountRipioOtpPage({ onBack, onVerified, }) {
|
|
8
|
+
const account = useAccountFlow();
|
|
9
|
+
const client = useDaimoClient();
|
|
10
|
+
const handleVerify = useCallback(async (code) => {
|
|
11
|
+
if (!account)
|
|
12
|
+
return { ok: false, msg: RIPIO_INVALID_CODE };
|
|
13
|
+
const token = await account.getAccessToken();
|
|
14
|
+
if (!token)
|
|
15
|
+
return { ok: false, msg: "No pudimos verificar tu sesión." };
|
|
16
|
+
const result = await client.account.submitEnrollmentOtp({ rail: "ars", code }, { bearerToken: token });
|
|
17
|
+
switch (result.action) {
|
|
18
|
+
case "active":
|
|
19
|
+
case "provider_pending":
|
|
20
|
+
return { ok: true };
|
|
21
|
+
case "provider_otp_required":
|
|
22
|
+
return { ok: false, msg: RIPIO_INVALID_CODE };
|
|
23
|
+
case "error":
|
|
24
|
+
return { ok: false, msg: result.message };
|
|
25
|
+
case "suspended":
|
|
26
|
+
case "not_eligible":
|
|
27
|
+
case "kyc_rejected_final":
|
|
28
|
+
return { ok: false, msg: result.reason };
|
|
29
|
+
case "kyc_required":
|
|
30
|
+
case "kyc_retry":
|
|
31
|
+
case "kyc_pending_review":
|
|
32
|
+
case "hosted_agreement_required":
|
|
33
|
+
case "hosted_kyc_required":
|
|
34
|
+
case "phone_required":
|
|
35
|
+
return { ok: true };
|
|
36
|
+
default:
|
|
37
|
+
return assertUnreachable(result);
|
|
38
|
+
}
|
|
39
|
+
}, [account, client]);
|
|
40
|
+
const handleResend = useCallback(async () => {
|
|
41
|
+
if (!account)
|
|
42
|
+
return;
|
|
43
|
+
const token = await account.getAccessToken();
|
|
44
|
+
if (!token)
|
|
45
|
+
return;
|
|
46
|
+
await client.account.resendEnrollmentOtp({ rail: "ars" }, { bearerToken: token });
|
|
47
|
+
}, [account, client]);
|
|
48
|
+
return (_jsx(AccountOtpCodeEntry, { destination: "email", title: "Ya ten\u00E9s una cuenta de Ripio", message: "Vamos a conectar tu cuenta de Ripio para terminar el flujo. Ingres\u00E1 el c\u00F3digo que Ripio envi\u00F3 a tu email.", invalidMessage: RIPIO_INVALID_CODE, onBack: onBack, onVerified: onVerified, onVerify: handleVerify, onResend: handleResend }));
|
|
49
|
+
}
|
|
50
|
+
function assertUnreachable(value) {
|
|
51
|
+
throw new Error(`unhandled enrollment response: ${JSON.stringify(value)}`);
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=AccountRipioOtpPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AccountRipioOtpPage.js","sourceRoot":"","sources":["../../../../src/web/components/account/AccountRipioOtpPage.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,9 +3,7 @@ type AccountStatusPageProps = {
|
|
|
3
3
|
clientSecret: string;
|
|
4
4
|
baseUrl: string;
|
|
5
5
|
};
|
|
6
|
-
/**
|
|
7
|
-
* Async deposit status — ConfirmationSpinner + progress steps + action rows.
|
|
8
|
-
*/
|
|
6
|
+
/** Account deposit confirmation with spinner-led progress and account actions. */
|
|
9
7
|
export declare function AccountStatusPage({ sessionId, clientSecret, baseUrl, }: AccountStatusPageProps): import("react/jsx-runtime").JSX.Element;
|
|
10
8
|
export {};
|
|
11
9
|
//# sourceMappingURL=AccountStatusPage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AccountStatusPage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountStatusPage.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AccountStatusPage.d.ts","sourceRoot":"","sources":["../../../../src/web/components/account/AccountStatusPage.tsx"],"names":[],"mappings":"AAaA,KAAK,sBAAsB,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAqBF,kFAAkF;AAClF,wBAAgB,iBAAiB,CAAC,EAChC,SAAS,EACT,YAAY,EACZ,OAAO,GACR,EAAE,sBAAsB,2CAmDxB"}
|
|
@@ -1,28 +1,29 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { useState } from "react";
|
|
3
3
|
import { useDaimoClient } from "../../hooks/DaimoClientContext.js";
|
|
4
4
|
import { t } from "../../hooks/locale.js";
|
|
5
5
|
import { useDepositPoller } from "../../hooks/useDepositPoller.js";
|
|
6
|
+
import { ConfirmationSpinner } from "../ConfirmationSpinner.js";
|
|
6
7
|
import { ErrorPage } from "../ErrorPage.js";
|
|
7
|
-
import { CenteredContent, PageHeader } from "../shared.js";
|
|
8
|
+
import { CenteredContent, PageHeader, ShowReceiptButton } from "../shared.js";
|
|
8
9
|
const TERMINAL_STATUSES = [
|
|
9
10
|
"completed",
|
|
10
11
|
"failed",
|
|
11
12
|
"expired",
|
|
12
13
|
];
|
|
13
|
-
|
|
14
|
-
function getStep(status) {
|
|
14
|
+
function getStatusLabel(status) {
|
|
15
15
|
switch (status) {
|
|
16
|
-
case "payment_received":
|
|
17
|
-
|
|
18
|
-
case "
|
|
19
|
-
|
|
16
|
+
case "payment_received":
|
|
17
|
+
return t.depositDetected;
|
|
18
|
+
case "token_delivered":
|
|
19
|
+
return t.depositFinalizing;
|
|
20
|
+
case "completed":
|
|
21
|
+
return t.depositFinalizing;
|
|
22
|
+
default:
|
|
23
|
+
return t.depositDetected;
|
|
20
24
|
}
|
|
21
25
|
}
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* Async deposit status — ConfirmationSpinner + progress steps + action rows.
|
|
25
|
-
*/
|
|
26
|
+
/** Account deposit confirmation with spinner-led progress and account actions. */
|
|
26
27
|
export function AccountStatusPage({ sessionId, clientSecret, baseUrl, }) {
|
|
27
28
|
const client = useDaimoClient();
|
|
28
29
|
const [status, setStatus] = useState("payment_received");
|
|
@@ -39,35 +40,24 @@ export function AccountStatusPage({ sessionId, clientSecret, baseUrl, }) {
|
|
|
39
40
|
});
|
|
40
41
|
const isComplete = status === "completed";
|
|
41
42
|
if (status === "failed" || status === "expired") {
|
|
42
|
-
return _jsx(ErrorPage, { message: t.errorDepositFailed, sessionId: sessionId, hideRetry: true });
|
|
43
|
+
return (_jsx(ErrorPage, { message: t.errorDepositFailed, sessionId: sessionId, hideRetry: true }));
|
|
43
44
|
}
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
color: "var(--daimo-text-muted)",
|
|
51
|
-
fontVariantNumeric: "tabular-nums",
|
|
52
|
-
}, children: ["ETA ", eta] }))] }) }), _jsxs("div", { className: "daimo-px-8 daimo-pb-4 daimo-flex daimo-flex-col daimo-gap-1", children: [_jsx(LinkPill, { href: accountUrl, icon: "user", label: t.accountViewAccount }), _jsx(LinkPill, { href: receiptUrl, icon: "receipt", label: t.showReceipt })] })] }));
|
|
45
|
+
const title = isComplete
|
|
46
|
+
? t.accountDepositComplete
|
|
47
|
+
: t.accountDepositReceived;
|
|
48
|
+
const statusLabel = getStatusLabel(status);
|
|
49
|
+
const displayEta = eta ? getStatusEta(status, eta) : null;
|
|
50
|
+
return (_jsxs("div", { className: "daimo-flex daimo-flex-col daimo-flex-1 daimo-min-h-0", children: [_jsx(PageHeader, { title: title }), _jsx(CenteredContent, { children: _jsxs("div", { className: "daimo-flex daimo-flex-col daimo-items-center daimo-gap-5", children: [_jsx(ConfirmationSpinner, { done: isComplete }), !isComplete && _jsx(StatusLine, { label: statusLabel, eta: displayEta })] }) }), _jsx("div", { className: "daimo-flex daimo-flex-col daimo-items-center daimo-gap-2 daimo-px-6 daimo-pb-6", children: _jsx(ShowReceiptButton, { sessionId: sessionId, baseUrl: baseUrl }) })] }));
|
|
53
51
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
? "var(--daimo-success)"
|
|
59
|
-
: "var(--daimo-surface-secondary)",
|
|
60
|
-
transition: "background-color 300ms ease-out",
|
|
61
|
-
} })), _jsx("div", { className: "daimo-w-2 daimo-h-2 daimo-rounded-full daimo-shrink-0", style: {
|
|
62
|
-
backgroundColor: i <= step
|
|
63
|
-
? "var(--daimo-success)"
|
|
64
|
-
: "var(--daimo-surface-secondary)",
|
|
65
|
-
transition: "background-color 300ms ease-out",
|
|
66
|
-
boxShadow: i === step ? "0 0 0 3px var(--daimo-success-light)" : "none",
|
|
67
|
-
} })] }, i))) }), _jsx("span", { className: "daimo-text-[10px]", style: { color: "var(--daimo-text-muted)", transition: "color 200ms ease-out" }, children: STEP_LABELS[step] })] }));
|
|
52
|
+
function getStatusEta(status, eta) {
|
|
53
|
+
if (status === "token_delivered")
|
|
54
|
+
return eta.finalizing;
|
|
55
|
+
return eta.payment;
|
|
68
56
|
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
57
|
+
function StatusLine({ label, eta }) {
|
|
58
|
+
return (_jsxs("div", { className: "daimo-flex daimo-min-h-[36px] daimo-w-full daimo-max-w-xs daimo-items-center daimo-justify-center daimo-gap-2 daimo-rounded-full daimo-px-4 daimo-py-2 daimo-text-sm daimo-font-medium", style: {
|
|
59
|
+
backgroundColor: "var(--daimo-surface-secondary)",
|
|
60
|
+
color: "var(--daimo-text-secondary)",
|
|
61
|
+
}, children: [_jsx("span", { children: label }), eta && (_jsxs(_Fragment, { children: [_jsx("span", { className: "daimo-h-1 daimo-w-1 daimo-rounded-full", style: { backgroundColor: "var(--daimo-text-muted)" } }), _jsxs("span", { style: { fontVariantNumeric: "tabular-nums" }, children: ["ETA ", eta] })] }))] }));
|
|
72
62
|
}
|
|
73
63
|
//# sourceMappingURL=AccountStatusPage.js.map
|