@daimo/pay 1.15.0 → 1.16.1
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/build/components/DaimoPayButton/index.d.ts +13 -0
- package/build/hooks/useConnect.d.ts +8 -8
- package/build/hooks/useLocales.d.ts +2 -1
- package/build/hooks/useWalletPaymentOptions.d.ts +12 -1
- package/build/index.d.ts +626 -15
- package/build/localizations/locales/en-US.d.ts +2 -0
- package/build/localizations/locales/index.d.ts +1 -0
- package/build/package.json.js +6 -4
- package/build/package.json.js.map +1 -1
- package/build/payment/paymentFsm.d.ts +5 -0
- package/build/payment/paymentUtils.d.ts +6 -0
- package/build/src/assets/MobileWithLogos.js +320 -1
- package/build/src/assets/MobileWithLogos.js.map +1 -1
- package/build/src/assets/ScanIconWithLogos.js +216 -10
- package/build/src/assets/ScanIconWithLogos.js.map +1 -1
- package/build/src/assets/browsers.js +963 -7
- package/build/src/assets/browsers.js.map +1 -1
- package/build/src/assets/chains.js +633 -103
- package/build/src/assets/chains.js.map +1 -1
- package/build/src/assets/coins.js +38 -1
- package/build/src/assets/coins.js.map +1 -1
- package/build/src/assets/crepe.js +35 -1
- package/build/src/assets/crepe.js.map +1 -1
- package/build/src/assets/icons.js +258 -15
- package/build/src/assets/icons.js.map +1 -1
- package/build/src/assets/logos.js +1510 -140
- package/build/src/assets/logos.js.map +1 -1
- package/build/src/assets/wallet.js +32 -1
- package/build/src/assets/wallet.js.map +1 -1
- package/build/src/assets/wave.js +41 -1
- package/build/src/assets/wave.js.map +1 -1
- package/build/src/components/Common/Alert/index.js +4 -1
- package/build/src/components/Common/Alert/index.js.map +1 -1
- package/build/src/components/Common/Alert/styles.js +4 -4
- package/build/src/components/Common/Alert/styles.js.map +1 -1
- package/build/src/components/Common/AmountInput/AmountInputField.js +29 -18
- package/build/src/components/Common/AmountInput/AmountInputField.js.map +1 -1
- package/build/src/components/Common/AmountInput/index.js +112 -99
- package/build/src/components/Common/AmountInput/index.js.map +1 -1
- package/build/src/components/Common/Avatar/index.js +63 -51
- package/build/src/components/Common/Avatar/index.js.map +1 -1
- package/build/src/components/Common/Avatar/styles.js +9 -14
- package/build/src/components/Common/Avatar/styles.js.map +1 -1
- package/build/src/components/Common/BrowserIcon/index.js +15 -14
- package/build/src/components/Common/BrowserIcon/index.js.map +1 -1
- package/build/src/components/Common/BrowserIcon/styles.js +1 -1
- package/build/src/components/Common/BrowserIcon/styles.js.map +1 -1
- package/build/src/components/Common/Button/index.js +131 -25
- package/build/src/components/Common/Button/index.js.map +1 -1
- package/build/src/components/Common/Button/styles.js +20 -24
- package/build/src/components/Common/Button/styles.js.map +1 -1
- package/build/src/components/Common/Chain/index.js +130 -14
- package/build/src/components/Common/Chain/index.js.map +1 -1
- package/build/src/components/Common/Chain/styles.js +9 -13
- package/build/src/components/Common/Chain/styles.js.map +1 -1
- package/build/src/components/Common/ChainSelectList/index.js +232 -89
- package/build/src/components/Common/ChainSelectList/index.js.map +1 -1
- package/build/src/components/Common/ChainSelectList/styles.js +11 -13
- package/build/src/components/Common/ChainSelectList/styles.js.map +1 -1
- package/build/src/components/Common/CircleTimer.js +85 -41
- package/build/src/components/Common/CircleTimer.js.map +1 -1
- package/build/src/components/Common/ConnectorList/index.js +106 -80
- package/build/src/components/Common/ConnectorList/index.js.map +1 -1
- package/build/src/components/Common/ConnectorList/styles.js +28 -36
- package/build/src/components/Common/ConnectorList/styles.js.map +1 -1
- package/build/src/components/Common/CopyToClipboard/CopyToClipboardIcon.js +16 -9
- package/build/src/components/Common/CopyToClipboard/CopyToClipboardIcon.js.map +1 -1
- package/build/src/components/Common/CopyToClipboard/index.js +3 -5
- package/build/src/components/Common/CopyToClipboard/index.js.map +1 -1
- package/build/src/components/Common/CustomQRCode/QRCode.js +120 -57
- package/build/src/components/Common/CustomQRCode/QRCode.js.map +1 -1
- package/build/src/components/Common/CustomQRCode/index.js +60 -10
- package/build/src/components/Common/CustomQRCode/index.js.map +1 -1
- package/build/src/components/Common/CustomQRCode/styles.js +6 -6
- package/build/src/components/Common/CustomQRCode/styles.js.map +1 -1
- package/build/src/components/Common/FitText/index.js +24 -17
- package/build/src/components/Common/FitText/index.js.map +1 -1
- package/build/src/components/Common/Modal/index.js +481 -267
- package/build/src/components/Common/Modal/index.js.map +1 -1
- package/build/src/components/Common/Modal/styles.js +44 -48
- package/build/src/components/Common/Modal/styles.js.map +1 -1
- package/build/src/components/Common/OptionsList/index.js +75 -33
- package/build/src/components/Common/OptionsList/index.js.map +1 -1
- package/build/src/components/Common/OptionsList/styles.js +7 -8
- package/build/src/components/Common/OptionsList/styles.js.map +1 -1
- package/build/src/components/Common/OrderHeader/index.js +109 -65
- package/build/src/components/Common/OrderHeader/index.js.map +1 -1
- package/build/src/components/Common/PaymentBreakdown/index.js +29 -7
- package/build/src/components/Common/PaymentBreakdown/index.js.map +1 -1
- package/build/src/components/Common/Portal/index.js +21 -22
- package/build/src/components/Common/Portal/index.js.map +1 -1
- package/build/src/components/Common/PoweredByFooter/index.js +39 -21
- package/build/src/components/Common/PoweredByFooter/index.js.map +1 -1
- package/build/src/components/Common/ScrollArea/index.js +107 -52
- package/build/src/components/Common/ScrollArea/index.js.map +1 -1
- package/build/src/components/Common/ScrollArea/styles.js +7 -11
- package/build/src/components/Common/ScrollArea/styles.js.map +1 -1
- package/build/src/components/Common/SelectAnotherMethodButton/index.js +67 -55
- package/build/src/components/Common/SelectAnotherMethodButton/index.js.map +1 -1
- package/build/src/components/Common/Spinner/index.js +56 -16
- package/build/src/components/Common/Spinner/index.js.map +1 -1
- package/build/src/components/Common/Spinner/styles.js +2 -2
- package/build/src/components/Common/Spinner/styles.js.map +1 -1
- package/build/src/components/Common/SwitchButton/index.js +18 -15
- package/build/src/components/Common/SwitchButton/index.js.map +1 -1
- package/build/src/components/Common/ThemedButton/index.js +37 -16
- package/build/src/components/Common/ThemedButton/index.js.map +1 -1
- package/build/src/components/Common/ThemedButton/styles.js +2 -2
- package/build/src/components/Common/ThemedButton/styles.js.map +1 -1
- package/build/src/components/Common/TokenChainLogo/index.js +14 -8
- package/build/src/components/Common/TokenChainLogo/index.js.map +1 -1
- package/build/src/components/Common/Tooltip/index.js +115 -83
- package/build/src/components/Common/Tooltip/index.js.map +1 -1
- package/build/src/components/Common/Tooltip/styles.js +8 -8
- package/build/src/components/Common/Tooltip/styles.js.map +1 -1
- package/build/src/components/Common/WalletChainLogo/index.js +13 -6
- package/build/src/components/Common/WalletChainLogo/index.js.map +1 -1
- package/build/src/components/DaimoPayButton/index.js +170 -176
- package/build/src/components/DaimoPayButton/index.js.map +1 -1
- package/build/src/components/DaimoPayButton/styles.js +4 -4
- package/build/src/components/DaimoPayButton/styles.js.map +1 -1
- package/build/src/components/DaimoPayModal/ConnectUsing.js +50 -24
- package/build/src/components/DaimoPayModal/ConnectUsing.js.map +1 -1
- package/build/src/components/DaimoPayModal/ConnectWithInjector/index.js +303 -163
- package/build/src/components/DaimoPayModal/ConnectWithInjector/index.js.map +1 -1
- package/build/src/components/DaimoPayModal/ConnectWithInjector/styles.js +10 -12
- package/build/src/components/DaimoPayModal/ConnectWithInjector/styles.js.map +1 -1
- package/build/src/components/DaimoPayModal/ConnectWithQRCode.js +69 -39
- package/build/src/components/DaimoPayModal/ConnectWithQRCode.js.map +1 -1
- package/build/src/components/DaimoPayModal/index.js +409 -416
- package/build/src/components/DaimoPayModal/index.js.map +1 -1
- package/build/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.js +15 -11
- package/build/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.js.map +1 -1
- package/build/src/components/Pages/About/graphics.js +796 -130
- package/build/src/components/Pages/About/graphics.js.map +1 -1
- package/build/src/components/Pages/About/index.js +203 -110
- package/build/src/components/Pages/About/index.js.map +1 -1
- package/build/src/components/Pages/About/styles.js +11 -15
- package/build/src/components/Pages/About/styles.js.map +1 -1
- package/build/src/components/Pages/Confirmation/index.js +72 -41
- package/build/src/components/Pages/Confirmation/index.js.map +1 -1
- package/build/src/components/Pages/Connectors/index.js +50 -16
- package/build/src/components/Pages/Connectors/index.js.map +1 -1
- package/build/src/components/Pages/Connectors/styles.js +10 -10
- package/build/src/components/Pages/Connectors/styles.js.map +1 -1
- package/build/src/components/Pages/DownloadApp/index.js +23 -18
- package/build/src/components/Pages/DownloadApp/index.js.map +1 -1
- package/build/src/components/Pages/Error/index.js +27 -15
- package/build/src/components/Pages/Error/index.js.map +1 -1
- package/build/src/components/Pages/MobileConnectors/index.js +50 -44
- package/build/src/components/Pages/MobileConnectors/index.js.map +1 -1
- package/build/src/components/Pages/MobileConnectors/styles.js +9 -11
- package/build/src/components/Pages/MobileConnectors/styles.js.map +1 -1
- package/build/src/components/Pages/Onboarding/index.js +20 -4
- package/build/src/components/Pages/Onboarding/index.js.map +1 -1
- package/build/src/components/Pages/Onboarding/styles.js +13 -13
- package/build/src/components/Pages/Onboarding/styles.js.map +1 -1
- package/build/src/components/Pages/PayWithToken/index.js +133 -122
- package/build/src/components/Pages/PayWithToken/index.js.map +1 -1
- package/build/src/components/Pages/SelectAmount/index.js +12 -5
- package/build/src/components/Pages/SelectAmount/index.js.map +1 -1
- package/build/src/components/Pages/SelectDepositAddressAmount/index.js +56 -38
- package/build/src/components/Pages/SelectDepositAddressAmount/index.js.map +1 -1
- package/build/src/components/Pages/SelectDepositAddressChain/index.js +57 -40
- package/build/src/components/Pages/SelectDepositAddressChain/index.js.map +1 -1
- package/build/src/components/Pages/SelectExchange/index.js +29 -24
- package/build/src/components/Pages/SelectExchange/index.js.map +1 -1
- package/build/src/components/Pages/SelectExternalAmount/index.js +57 -41
- package/build/src/components/Pages/SelectExternalAmount/index.js.map +1 -1
- package/build/src/components/Pages/SelectMethod/index.js +201 -183
- package/build/src/components/Pages/SelectMethod/index.js.map +1 -1
- package/build/src/components/Pages/SelectToken/index.js +72 -46
- package/build/src/components/Pages/SelectToken/index.js.map +1 -1
- package/build/src/components/Pages/SelectWalletAmount/index.js +40 -32
- package/build/src/components/Pages/SelectWalletAmount/index.js.map +1 -1
- package/build/src/components/Pages/SelectWalletChain/index.js +40 -36
- package/build/src/components/Pages/SelectWalletChain/index.js.map +1 -1
- package/build/src/components/Pages/SelectZKP/index.js +29 -24
- package/build/src/components/Pages/SelectZKP/index.js.map +1 -1
- package/build/src/components/Pages/Solana/ConnectorSolana/index.js +60 -45
- package/build/src/components/Pages/Solana/ConnectorSolana/index.js.map +1 -1
- package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js +73 -61
- package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js.map +1 -1
- package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js +12 -5
- package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js.map +1 -1
- package/build/src/components/Pages/SwitchNetworks/index.js +29 -10
- package/build/src/components/Pages/SwitchNetworks/index.js.map +1 -1
- package/build/src/components/Pages/WaitingDepositAddress/index.js +339 -178
- package/build/src/components/Pages/WaitingDepositAddress/index.js.map +1 -1
- package/build/src/components/Pages/WaitingExternal/index.js +69 -46
- package/build/src/components/Pages/WaitingExternal/index.js.map +1 -1
- package/build/src/components/Pages/WaitingWallet/index.js +37 -16
- package/build/src/components/Pages/WaitingWallet/index.js.map +1 -1
- package/build/src/components/Spinners/CircleSpinner/index.js +96 -7
- package/build/src/components/Spinners/CircleSpinner/index.js.map +1 -1
- package/build/src/components/Spinners/CircleSpinner/styles.js +6 -7
- package/build/src/components/Spinners/CircleSpinner/styles.js.map +1 -1
- package/build/src/components/Spinners/ExternalPaymentSpinner/index.js +18 -9
- package/build/src/components/Spinners/ExternalPaymentSpinner/index.js.map +1 -1
- package/build/src/components/Spinners/SquircleSpinner/index.js +60 -7
- package/build/src/components/Spinners/SquircleSpinner/index.js.map +1 -1
- package/build/src/components/Spinners/SquircleSpinner/styles.js +4 -4
- package/build/src/components/Spinners/SquircleSpinner/styles.js.map +1 -1
- package/build/src/components/Spinners/TokenLogoSpinner/index.js +12 -1
- package/build/src/components/Spinners/TokenLogoSpinner/index.js.map +1 -1
- package/build/src/components/Spinners/TokenLogoSpinner/styles.js +1 -1
- package/build/src/components/Spinners/TokenLogoSpinner/styles.js.map +1 -1
- package/build/src/components/Spinners/WalletPaymentSpinner/index.js +27 -20
- package/build/src/components/Spinners/WalletPaymentSpinner/index.js.map +1 -1
- package/build/src/components/Spinners/styles.js +3 -4
- package/build/src/components/Spinners/styles.js.map +1 -1
- package/build/src/constants/defaultTheme.js +1 -1
- package/build/src/constants/defaultTheme.js.map +1 -1
- package/build/src/constants/routes.js +29 -30
- package/build/src/constants/routes.js.map +1 -1
- package/build/src/defaultConfig.js +49 -46
- package/build/src/defaultConfig.js.map +1 -1
- package/build/src/defaultConnectors.js +32 -19
- package/build/src/defaultConnectors.js.map +1 -1
- package/build/src/hooks/useChainIsSupported.js +3 -5
- package/build/src/hooks/useChainIsSupported.js.map +1 -1
- package/build/src/hooks/useChains.js +3 -4
- package/build/src/hooks/useChains.js.map +1 -1
- package/build/src/hooks/useConnect.js +51 -39
- package/build/src/hooks/useConnect.js.map +1 -1
- package/build/src/hooks/useConnectCallback.js +15 -12
- package/build/src/hooks/useConnectCallback.js.map +1 -1
- package/build/src/hooks/useConnectors.js +2 -2
- package/build/src/hooks/useConnectors.js.map +1 -1
- package/build/src/hooks/useDaimoPay.js +98 -82
- package/build/src/hooks/useDaimoPay.js.map +1 -1
- package/build/src/hooks/useDaimoPayStatus.js +4 -15
- package/build/src/hooks/useDaimoPayStatus.js.map +1 -1
- package/build/src/hooks/useDaimoPayUI.js +7 -7
- package/build/src/hooks/useDaimoPayUI.js.map +1 -1
- package/build/src/hooks/useDepositAddressOptions.js +29 -25
- package/build/src/hooks/useDepositAddressOptions.js.map +1 -1
- package/build/src/hooks/useEnsFallbackConfig.js +5 -5
- package/build/src/hooks/useEnsFallbackConfig.js.map +1 -1
- package/build/src/hooks/useExternalPaymentOptions.js +57 -52
- package/build/src/hooks/useExternalPaymentOptions.js.map +1 -1
- package/build/src/hooks/useFitText.js +120 -135
- package/build/src/hooks/useFitText.js.map +1 -1
- package/build/src/hooks/useFocusTrap.js +33 -37
- package/build/src/hooks/useFocusTrap.js.map +1 -1
- package/build/src/hooks/useIsMobile.js +3 -3
- package/build/src/hooks/useIsMobile.js.map +1 -1
- package/build/src/hooks/useIsMounted.js +3 -5
- package/build/src/hooks/useIsMounted.js.map +1 -1
- package/build/src/hooks/useLastConnector.js +15 -15
- package/build/src/hooks/useLastConnector.js.map +1 -1
- package/build/src/hooks/useLocales.js +44 -42
- package/build/src/hooks/useLocales.js.map +1 -1
- package/build/src/hooks/useLockBodyScroll.js +38 -44
- package/build/src/hooks/useLockBodyScroll.js.map +1 -1
- package/build/src/hooks/useOrderUsdLimits.js +17 -19
- package/build/src/hooks/useOrderUsdLimits.js.map +1 -1
- package/build/src/hooks/usePayContext.js +3 -5
- package/build/src/hooks/usePayContext.js.map +1 -1
- package/build/src/hooks/usePaymentState.js +351 -321
- package/build/src/hooks/usePaymentState.js.map +1 -1
- package/build/src/hooks/usePrevious.js +6 -7
- package/build/src/hooks/usePrevious.js.map +1 -1
- package/build/src/hooks/useSolanaPaymentOptions.js +33 -33
- package/build/src/hooks/useSolanaPaymentOptions.js.map +1 -1
- package/build/src/hooks/useTokenOptions.js +131 -95
- package/build/src/hooks/useTokenOptions.js.map +1 -1
- package/build/src/hooks/useUntronAvailability.js +26 -34
- package/build/src/hooks/useUntronAvailability.js.map +1 -1
- package/build/src/hooks/useWalletPaymentOptions.js +86 -61
- package/build/src/hooks/useWalletPaymentOptions.js.map +1 -1
- package/build/src/hooks/useWindowSize.js +16 -16
- package/build/src/hooks/useWindowSize.js.map +1 -1
- package/build/src/localizations/index.js +28 -31
- package/build/src/localizations/index.js.map +1 -1
- package/build/src/localizations/locales/ar-AE.js +88 -88
- package/build/src/localizations/locales/ar-AE.js.map +1 -1
- package/build/src/localizations/locales/ca-AD.js +88 -88
- package/build/src/localizations/locales/ca-AD.js.map +1 -1
- package/build/src/localizations/locales/ee-EE.js +96 -88
- package/build/src/localizations/locales/ee-EE.js.map +1 -1
- package/build/src/localizations/locales/en-US.js +134 -124
- package/build/src/localizations/locales/en-US.js.map +1 -1
- package/build/src/localizations/locales/es-ES.js +126 -124
- package/build/src/localizations/locales/es-ES.js.map +1 -1
- package/build/src/localizations/locales/fa-IR.js +88 -88
- package/build/src/localizations/locales/fa-IR.js.map +1 -1
- package/build/src/localizations/locales/fr-FR.js +88 -88
- package/build/src/localizations/locales/fr-FR.js.map +1 -1
- package/build/src/localizations/locales/ja-JP.js +88 -88
- package/build/src/localizations/locales/ja-JP.js.map +1 -1
- package/build/src/localizations/locales/pt-BR.js +96 -88
- package/build/src/localizations/locales/pt-BR.js.map +1 -1
- package/build/src/localizations/locales/ru-RU.js +92 -88
- package/build/src/localizations/locales/ru-RU.js.map +1 -1
- package/build/src/localizations/locales/tr-TR.js +96 -88
- package/build/src/localizations/locales/tr-TR.js.map +1 -1
- package/build/src/localizations/locales/vi-VN.js +96 -88
- package/build/src/localizations/locales/vi-VN.js.map +1 -1
- package/build/src/localizations/locales/zh-CN.js +88 -88
- package/build/src/localizations/locales/zh-CN.js.map +1 -1
- package/build/src/payment/paymentEffects.js +237 -264
- package/build/src/payment/paymentEffects.js.map +1 -1
- package/build/src/payment/paymentFsm.js +167 -187
- package/build/src/payment/paymentFsm.js.map +1 -1
- package/build/src/payment/paymentStore.js +8 -10
- package/build/src/payment/paymentStore.js.map +1 -1
- package/build/src/payment/paymentUtils.js +10 -0
- package/build/src/payment/paymentUtils.js.map +1 -0
- package/build/src/provider/DaimoPayProvider.js +258 -245
- package/build/src/provider/DaimoPayProvider.js.map +1 -1
- package/build/src/provider/PayContext.js +0 -1
- package/build/src/provider/PayContext.js.map +1 -1
- package/build/src/provider/PaymentProvider.js +18 -17
- package/build/src/provider/PaymentProvider.js.map +1 -1
- package/build/src/provider/SolanaContextProvider.js +6 -3
- package/build/src/provider/SolanaContextProvider.js.map +1 -1
- package/build/src/provider/Web3ContextProvider.js +23 -23
- package/build/src/provider/Web3ContextProvider.js.map +1 -1
- package/build/src/stateStore.js +28 -74
- package/build/src/stateStore.js.map +1 -1
- package/build/src/styles/defaultTheme.js +64 -73
- package/build/src/styles/defaultTheme.js.map +1 -1
- package/build/src/styles/index.js +202 -217
- package/build/src/styles/index.js.map +1 -1
- package/build/src/styles/styled/index.js +0 -10
- package/build/src/styles/styled/index.js.map +1 -1
- package/build/src/styles/themes/base.js +136 -136
- package/build/src/styles/themes/base.js.map +1 -1
- package/build/src/styles/themes/index.js.map +1 -1
- package/build/src/styles/themes/midnight.js +71 -71
- package/build/src/styles/themes/midnight.js.map +1 -1
- package/build/src/styles/themes/minimal.js +75 -75
- package/build/src/styles/themes/minimal.js.map +1 -1
- package/build/src/styles/themes/nouns.js +76 -76
- package/build/src/styles/themes/nouns.js.map +1 -1
- package/build/src/styles/themes/retro.js +88 -88
- package/build/src/styles/themes/retro.js.map +1 -1
- package/build/src/styles/themes/rounded.js +84 -84
- package/build/src/styles/themes/rounded.js.map +1 -1
- package/build/src/styles/themes/soft.js +66 -66
- package/build/src/styles/themes/soft.js.map +1 -1
- package/build/src/styles/themes/web95.js +95 -95
- package/build/src/styles/themes/web95.js.map +1 -1
- package/build/src/utils/exports.js +0 -1
- package/build/src/utils/exports.js.map +1 -1
- package/build/src/utils/format.js +25 -63
- package/build/src/utils/format.js.map +1 -1
- package/build/src/utils/index.js +23 -20
- package/build/src/utils/index.js.map +1 -1
- package/build/src/utils/p3.js +8 -9
- package/build/src/utils/p3.js.map +1 -1
- package/build/src/utils/platform.js +6 -8
- package/build/src/utils/platform.js.map +1 -1
- package/build/src/utils/polling.js +31 -31
- package/build/src/utils/polling.js.map +1 -1
- package/build/src/utils/supportUrl.js +9 -9
- package/build/src/utils/supportUrl.js.map +1 -1
- package/build/src/utils/trpc.js +11 -11
- package/build/src/utils/trpc.js.map +1 -1
- package/build/src/utils/validateInput.js +9 -29
- package/build/src/utils/validateInput.js.map +1 -1
- package/build/src/wallets/index.js +13 -22
- package/build/src/wallets/index.js.map +1 -1
- package/build/src/wallets/useWallets.js +183 -181
- package/build/src/wallets/useWallets.js.map +1 -1
- package/build/src/wallets/walletConfigs.js +230 -235
- package/build/src/wallets/walletConfigs.js.map +1 -1
- package/build/src/world-mini-app/WorldPayButton.js +113 -118
- package/build/src/world-mini-app/WorldPayButton.js.map +1 -1
- package/build/src/world-mini-app/promptWorldPayment.js +49 -47
- package/build/src/world-mini-app/promptWorldPayment.js.map +1 -1
- package/build/types-7ed033b6.d.ts +66 -0
- package/build/world.d.ts +89 -1
- package/package.json +6 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/components/Pages/SelectToken/index.tsx"],"sourcesContent":[null]
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/components/Pages/SelectToken/index.tsx"],"sourcesContent":["import { useWallet } from \"@solana/wallet-adapter-react\";\nimport { injected, useAccount } from \"wagmi\";\nimport { Ethereum, Solana } from \"../../../assets/chains\";\nimport defaultTheme from \"../../../constants/defaultTheme\";\nimport { useConnect } from \"../../../hooks/useConnect\";\nimport useIsMobile from \"../../../hooks/useIsMobile\";\nimport useLocales from \"../../../hooks/useLocales\";\nimport { usePayContext } from \"../../../hooks/usePayContext\";\nimport { useTokenOptions } from \"../../../hooks/useTokenOptions\";\nimport { ModalContent, ModalH1, PageContent } from \"../../Common/Modal/styles\";\nimport { OptionsList } from \"../../Common/OptionsList\";\nimport { OrderHeader } from \"../../Common/OrderHeader\";\nimport SelectAnotherMethodButton from \"../../Common/SelectAnotherMethodButton\";\n\nexport default function SelectToken() {\n const { isMobile } = useIsMobile();\n const isMobileFormat =\n isMobile || window?.innerWidth < defaultTheme.mobileWidth;\n\n const { paymentState } = usePayContext();\n const { tokenMode } = paymentState;\n const { optionsList, isLoading } = useTokenOptions(tokenMode);\n const { isConnected: isEvmConnected } = useAccount();\n\n const solanaWallets = useWallet();\n const isSolConnected = solanaWallets.connected;\n const isConnected = isEvmConnected || isSolConnected;\n\n const isAnotherMethodButtonVisible =\n optionsList.length > 0 && tokenMode !== \"all\";\n\n return (\n <PageContent>\n <OrderHeader minified show={tokenMode} />\n <OptionsList\n requiredSkeletons={4}\n isLoading={isLoading}\n options={optionsList}\n scrollHeight={\n isAnotherMethodButtonVisible && isMobileFormat ? 225 : 300\n }\n orDivider={isAnotherMethodButtonVisible}\n hideBottomLine={!isAnotherMethodButtonVisible}\n />\n {!isLoading && isConnected && optionsList.length === 0 && (\n <InsufficientBalance />\n )}\n {!isLoading && !isConnected && tokenMode === \"all\" && <ConnectButton />}\n {isAnotherMethodButtonVisible && <SelectAnotherMethodButton />}\n </PageContent>\n );\n}\n\nfunction InsufficientBalance() {\n const locales = useLocales();\n return (\n <ModalContent\n style={{\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n paddingTop: 16,\n paddingBottom: 16,\n }}\n >\n <ModalH1>{locales.insufficientBalance}</ModalH1>\n <SelectAnotherMethodButton />\n </ModalContent>\n );\n}\n\nfunction ConnectButton() {\n const locales = useLocales();\n const { connect } = useConnect();\n const solanaWallets = useWallet();\n // On Android, filter out the Android Intent deeplink fake wallet.\n const filteredWallets = solanaWallets.wallets.filter(\n (w) => w.adapter.name !== \"Mobile Wallet Adapter\",\n );\n const hasSolanaWallet = filteredWallets.length > 0;\n\n const icons = [<Ethereum key=\"ethereum\" />];\n if (hasSolanaWallet) {\n icons.push(<Solana key=\"solana\" />);\n }\n\n const onClick = () => {\n connect({\n connector: injected(),\n });\n if (hasSolanaWallet) {\n if (solanaWallets.wallet == null) {\n solanaWallets.select(solanaWallets.wallets[0].adapter.name);\n }\n solanaWallets.connect();\n }\n };\n\n const connectOption = {\n id: \"connect-wallet\",\n title: locales.connectWallet,\n icons,\n onClick,\n };\n\n return <OptionsList options={[connectOption]} />;\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -13,40 +13,48 @@ import Button from '../../Common/Button/index.js';
|
|
|
13
13
|
import WalletPaymentSpinner from '../../Spinners/WalletPaymentSpinner/index.js';
|
|
14
14
|
|
|
15
15
|
const SelectWalletAmount = () => {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
16
|
+
const { paymentState, setPendingConnectorId, setRoute } = usePayContext();
|
|
17
|
+
const { selectedWallet, openInWalletBrowser } = paymentState;
|
|
18
|
+
const { setChosenUsd, hydrateOrder } = useDaimoPay();
|
|
19
|
+
const maxUsdLimit = paymentState.getOrderUsdLimit();
|
|
20
|
+
const [usdInput, setUsdInput] = useState("");
|
|
21
|
+
const [continueDisabled, setContinueDisabled] = useState(true);
|
|
22
|
+
if (selectedWallet == null) {
|
|
23
|
+
return /* @__PURE__ */ jsx(PageContent, {});
|
|
24
|
+
}
|
|
25
|
+
const handleAmountChange = (e) => {
|
|
26
|
+
const value = e.target.value;
|
|
27
|
+
if (value !== "" && !isValidNumber(value, USD_DECIMALS)) return;
|
|
28
|
+
setUsdInput(value);
|
|
29
|
+
const usd = Number(sanitizeNumber(value));
|
|
30
|
+
setContinueDisabled(usd <= 0 || usd > maxUsdLimit);
|
|
31
|
+
};
|
|
32
|
+
const handleContinue = async () => {
|
|
33
|
+
const amountUsd = Number(sanitizeNumber(usdInput));
|
|
34
|
+
setChosenUsd(amountUsd);
|
|
35
|
+
await hydrateOrder();
|
|
36
|
+
if (selectedWallet.id === WALLET_ID_MOBILE_WALLETS) {
|
|
37
|
+
setPendingConnectorId(WALLET_ID_MOBILE_WALLETS);
|
|
38
|
+
setRoute(ROUTES.CONNECT);
|
|
39
|
+
} else {
|
|
40
|
+
openInWalletBrowser(selectedWallet, amountUsd);
|
|
24
41
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
setRoute(ROUTES.CONNECT);
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
openInWalletBrowser(selectedWallet, amountUsd);
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
return (jsxs(PageContent, { children: [jsx(WalletPaymentSpinner, { logo: selectedWallet.icon, logoShape: selectedWallet.iconShape === "square"
|
|
46
|
-
? "squircle"
|
|
47
|
-
: selectedWallet.iconShape || "squircle" }), jsxs(ModalContent, { "$preserveDisplay": true, children: [jsx(AmountInputContainer, { children: jsx(AmountInputField, { value: usdInput, onChange: handleAmountChange }) }), jsx(Button, { onClick: handleContinue, disabled: continueDisabled, children: "Continue" })] })] }));
|
|
42
|
+
};
|
|
43
|
+
return /* @__PURE__ */ jsxs(PageContent, { children: [
|
|
44
|
+
/* @__PURE__ */ jsx(
|
|
45
|
+
WalletPaymentSpinner,
|
|
46
|
+
{
|
|
47
|
+
logo: selectedWallet.icon,
|
|
48
|
+
logoShape: selectedWallet.iconShape === "square" ? "squircle" : selectedWallet.iconShape || "squircle"
|
|
49
|
+
}
|
|
50
|
+
),
|
|
51
|
+
/* @__PURE__ */ jsxs(ModalContent, { $preserveDisplay: true, children: [
|
|
52
|
+
/* @__PURE__ */ jsx(AmountInputContainer, { children: /* @__PURE__ */ jsx(AmountInputField, { value: usdInput, onChange: handleAmountChange }) }),
|
|
53
|
+
/* @__PURE__ */ jsx(Button, { onClick: handleContinue, disabled: continueDisabled, children: "Continue" })
|
|
54
|
+
] })
|
|
55
|
+
] });
|
|
48
56
|
};
|
|
49
|
-
const AmountInputContainer = styled.div
|
|
57
|
+
const AmountInputContainer = styled.div`
|
|
50
58
|
display: flex;
|
|
51
59
|
align-items: center;
|
|
52
60
|
justify-content: center;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/components/Pages/SelectWalletAmount/index.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/components/Pages/SelectWalletAmount/index.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport { ROUTES } from \"../../../constants/routes\";\nimport { usePayContext } from \"../../../hooks/usePayContext\";\n\nimport { ModalContent, PageContent } from \"../../Common/Modal/styles\";\n\nimport { useDaimoPay } from \"../../../hooks/useDaimoPay\";\nimport styled from \"../../../styles/styled\";\nimport { USD_DECIMALS } from \"../../../utils/format\";\nimport { isValidNumber, sanitizeNumber } from \"../../../utils/validateInput\";\nimport { WALLET_ID_MOBILE_WALLETS } from \"../../../wallets/useWallets\";\nimport AmountInputField from \"../../Common/AmountInput/AmountInputField\";\nimport Button from \"../../Common/Button\";\nimport WalletPaymentSpinner from \"../../Spinners/WalletPaymentSpinner\";\n\nconst SelectWalletAmount: React.FC = () => {\n const { paymentState, setPendingConnectorId, setRoute } = usePayContext();\n const { selectedWallet, openInWalletBrowser } = paymentState;\n const { setChosenUsd, hydrateOrder } = useDaimoPay();\n\n const maxUsdLimit = paymentState.getOrderUsdLimit();\n\n const [usdInput, setUsdInput] = useState<string>(\"\");\n const [continueDisabled, setContinueDisabled] = useState(true);\n\n if (selectedWallet == null) {\n return <PageContent></PageContent>;\n }\n\n const handleAmountChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const value = e.target.value;\n if (value !== \"\" && !isValidNumber(value, USD_DECIMALS)) return;\n setUsdInput(value);\n\n const usd = Number(sanitizeNumber(value));\n setContinueDisabled(usd <= 0 || usd > maxUsdLimit);\n };\n\n const handleContinue = async () => {\n const amountUsd = Number(sanitizeNumber(usdInput));\n setChosenUsd(amountUsd);\n await hydrateOrder();\n\n if (selectedWallet.id === WALLET_ID_MOBILE_WALLETS) {\n setPendingConnectorId(WALLET_ID_MOBILE_WALLETS);\n setRoute(ROUTES.CONNECT);\n } else {\n openInWalletBrowser(selectedWallet, amountUsd);\n }\n };\n\n return (\n <PageContent>\n <WalletPaymentSpinner\n logo={selectedWallet.icon}\n logoShape={\n selectedWallet.iconShape === \"square\"\n ? \"squircle\"\n : selectedWallet.iconShape || \"squircle\"\n }\n />\n <ModalContent $preserveDisplay={true}>\n <AmountInputContainer>\n <AmountInputField value={usdInput} onChange={handleAmountChange} />\n </AmountInputContainer>\n <Button onClick={handleContinue} disabled={continueDisabled}>\n Continue\n </Button>\n </ModalContent>\n </PageContent>\n );\n};\n\nconst AmountInputContainer = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nexport default SelectWalletAmount;\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAeA,MAAM,qBAA+B,MAAM;AACzC,EAAA,MAAM,EAAE,YAAA,EAAc,qBAAuB,EAAA,QAAA,KAAa,aAAc,EAAA,CAAA;AACxE,EAAM,MAAA,EAAE,cAAgB,EAAA,mBAAA,EAAwB,GAAA,YAAA,CAAA;AAChD,EAAA,MAAM,EAAE,YAAA,EAAc,YAAa,EAAA,GAAI,WAAY,EAAA,CAAA;AAEnD,EAAM,MAAA,WAAA,GAAc,aAAa,gBAAiB,EAAA,CAAA;AAElD,EAAA,MAAM,CAAC,QAAA,EAAU,WAAW,CAAA,GAAI,SAAiB,EAAE,CAAA,CAAA;AACnD,EAAA,MAAM,CAAC,gBAAA,EAAkB,mBAAmB,CAAA,GAAI,SAAS,IAAI,CAAA,CAAA;AAE7D,EAAA,IAAI,kBAAkB,IAAM,EAAA;AAC1B,IAAA,2BAAQ,WAAY,EAAA,EAAA,CAAA,CAAA;AAAA,GACtB;AAEA,EAAM,MAAA,kBAAA,GAAqB,CAAC,CAA2C,KAAA;AACrE,IAAM,MAAA,KAAA,GAAQ,EAAE,MAAO,CAAA,KAAA,CAAA;AACvB,IAAA,IAAI,UAAU,EAAM,IAAA,CAAC,aAAc,CAAA,KAAA,EAAO,YAAY,CAAG,EAAA,OAAA;AACzD,IAAA,WAAA,CAAY,KAAK,CAAA,CAAA;AAEjB,IAAA,MAAM,GAAM,GAAA,MAAA,CAAO,cAAe,CAAA,KAAK,CAAC,CAAA,CAAA;AACxC,IAAoB,mBAAA,CAAA,GAAA,IAAO,CAAK,IAAA,GAAA,GAAM,WAAW,CAAA,CAAA;AAAA,GACnD,CAAA;AAEA,EAAA,MAAM,iBAAiB,YAAY;AACjC,IAAA,MAAM,SAAY,GAAA,MAAA,CAAO,cAAe,CAAA,QAAQ,CAAC,CAAA,CAAA;AACjD,IAAA,YAAA,CAAa,SAAS,CAAA,CAAA;AACtB,IAAA,MAAM,YAAa,EAAA,CAAA;AAEnB,IAAI,IAAA,cAAA,CAAe,OAAO,wBAA0B,EAAA;AAClD,MAAA,qBAAA,CAAsB,wBAAwB,CAAA,CAAA;AAC9C,MAAA,QAAA,CAAS,OAAO,OAAO,CAAA,CAAA;AAAA,KAClB,MAAA;AACL,MAAA,mBAAA,CAAoB,gBAAgB,SAAS,CAAA,CAAA;AAAA,KAC/C;AAAA,GACF,CAAA;AAEA,EAAA,4BACG,WACC,EAAA,EAAA,QAAA,EAAA;AAAA,oBAAA,GAAA;AAAA,MAAC,oBAAA;AAAA,MAAA;AAAA,QACC,MAAM,cAAe,CAAA,IAAA;AAAA,QACrB,WACE,cAAe,CAAA,SAAA,KAAc,QACzB,GAAA,UAAA,GACA,eAAe,SAAa,IAAA,UAAA;AAAA,OAAA;AAAA,KAEpC;AAAA,oBACA,IAAA,CAAC,YAAa,EAAA,EAAA,gBAAA,EAAkB,IAC9B,EAAA,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,wBACC,QAAC,kBAAA,GAAA,CAAA,gBAAA,EAAA,EAAiB,OAAO,QAAU,EAAA,QAAA,EAAU,oBAAoB,CACnE,EAAA,CAAA;AAAA,0BACC,MAAO,EAAA,EAAA,OAAA,EAAS,cAAgB,EAAA,QAAA,EAAU,kBAAkB,QAE7D,EAAA,UAAA,EAAA,CAAA;AAAA,KACF,EAAA,CAAA;AAAA,GACF,EAAA,CAAA,CAAA;AAEJ,EAAA;AAEA,MAAM,uBAAuB,MAAO,CAAA,GAAA,CAAA;AAAA;AAAA;AAAA;AAAA,CAAA;;;;"}
|
|
@@ -7,44 +7,48 @@ import { ROUTES } from '../../../constants/routes.js';
|
|
|
7
7
|
import { OptionsList } from '../../Common/OptionsList/index.js';
|
|
8
8
|
|
|
9
9
|
const SelectWalletChain = () => {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
const { paymentState, setPendingConnectorId, setRoute, setSolanaConnector } = usePayContext();
|
|
11
|
+
const { selectedWallet } = paymentState;
|
|
12
|
+
if (selectedWallet == null) {
|
|
13
|
+
return /* @__PURE__ */ jsx(PageContent, {});
|
|
14
|
+
}
|
|
15
|
+
const wallet = selectedWallet;
|
|
16
|
+
if (!wallet.solanaConnectorName) {
|
|
17
|
+
return /* @__PURE__ */ jsx(PageContent, {});
|
|
18
|
+
}
|
|
19
|
+
function handleSelect(chain) {
|
|
20
|
+
if (chain === "evm") {
|
|
21
|
+
setPendingConnectorId(wallet.id);
|
|
22
|
+
setRoute(ROUTES.CONNECT);
|
|
23
|
+
} else {
|
|
24
|
+
setSolanaConnector(wallet.solanaConnectorName);
|
|
25
|
+
setRoute(ROUTES.SOLANA_CONNECTOR);
|
|
14
26
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
27
|
+
}
|
|
28
|
+
const options = [
|
|
29
|
+
{
|
|
30
|
+
id: "ethereum",
|
|
31
|
+
title: "Ethereum",
|
|
32
|
+
icons: [/* @__PURE__ */ jsx(Ethereum, {}, "ethereum")],
|
|
33
|
+
onClick: () => handleSelect("evm")
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
id: "solana",
|
|
37
|
+
title: "Solana",
|
|
38
|
+
icons: [/* @__PURE__ */ jsx(Solana, {}, "solana")],
|
|
39
|
+
onClick: () => handleSelect("solana")
|
|
20
40
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
{
|
|
33
|
-
id: "ethereum",
|
|
34
|
-
title: "Ethereum",
|
|
35
|
-
icons: [jsx(Ethereum, {}, "ethereum")],
|
|
36
|
-
onClick: () => handleSelect("evm"),
|
|
37
|
-
},
|
|
38
|
-
{
|
|
39
|
-
id: "solana",
|
|
40
|
-
title: "Solana",
|
|
41
|
-
icons: [jsx(Solana, {}, "solana")],
|
|
42
|
-
onClick: () => handleSelect("solana"),
|
|
43
|
-
},
|
|
44
|
-
];
|
|
45
|
-
return (jsxs(PageContent, { children: [jsx(WalletPaymentSpinner, { logo: selectedWallet.icon, logoShape: selectedWallet.iconShape === "square"
|
|
46
|
-
? "squircle"
|
|
47
|
-
: selectedWallet.iconShape || "squircle" }), jsx(ModalContent, { "$preserveDisplay": true, children: jsx(OptionsList, { options: options }) })] }));
|
|
41
|
+
];
|
|
42
|
+
return /* @__PURE__ */ jsxs(PageContent, { children: [
|
|
43
|
+
/* @__PURE__ */ jsx(
|
|
44
|
+
WalletPaymentSpinner,
|
|
45
|
+
{
|
|
46
|
+
logo: selectedWallet.icon,
|
|
47
|
+
logoShape: selectedWallet.iconShape === "square" ? "squircle" : selectedWallet.iconShape || "squircle"
|
|
48
|
+
}
|
|
49
|
+
),
|
|
50
|
+
/* @__PURE__ */ jsx(ModalContent, { $preserveDisplay: true, children: /* @__PURE__ */ jsx(OptionsList, { options }) })
|
|
51
|
+
] });
|
|
48
52
|
};
|
|
49
53
|
|
|
50
54
|
export { SelectWalletChain as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/components/Pages/SelectWalletChain/index.tsx"],"sourcesContent":[null
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/components/Pages/SelectWalletChain/index.tsx"],"sourcesContent":["import React from \"react\";\nimport { usePayContext } from \"../../../hooks/usePayContext\";\n\nimport { ModalContent, PageContent } from \"../../Common/Modal/styles\";\n\nimport WalletPaymentSpinner from \"../../Spinners/WalletPaymentSpinner\";\n\nimport { Ethereum, Solana } from \"../../../assets/chains\";\nimport { ROUTES } from \"../../../constants/routes\";\nimport { WalletProps } from \"../../../wallets/useWallets\";\nimport { OptionsList } from \"../../Common/OptionsList\";\n\nconst SelectWalletChain: React.FC = () => {\n const { paymentState, setPendingConnectorId, setRoute, setSolanaConnector } =\n usePayContext();\n const { selectedWallet } = paymentState;\n\n if (selectedWallet == null) {\n return <PageContent></PageContent>;\n }\n\n // Narrow the wallet type to include solanaConnectorName.\n const wallet = selectedWallet as WalletProps;\n\n // If wallet only supports one chain, skip this page (fallback safety)\n if (!wallet.solanaConnectorName) {\n return <PageContent></PageContent>;\n }\n\n function handleSelect(chain: \"evm\" | \"solana\") {\n if (chain === \"evm\") {\n setPendingConnectorId(wallet.id);\n setRoute(ROUTES.CONNECT);\n } else {\n setSolanaConnector(wallet.solanaConnectorName);\n setRoute(ROUTES.SOLANA_CONNECTOR);\n }\n }\n const options = [\n {\n id: \"ethereum\",\n title: \"Ethereum\",\n icons: [<Ethereum key=\"ethereum\" />],\n onClick: () => handleSelect(\"evm\"),\n },\n {\n id: \"solana\",\n title: \"Solana\",\n icons: [<Solana key=\"solana\" />],\n onClick: () => handleSelect(\"solana\"),\n },\n ];\n\n return (\n <PageContent>\n <WalletPaymentSpinner\n logo={selectedWallet.icon}\n logoShape={\n selectedWallet.iconShape === \"square\"\n ? \"squircle\"\n : selectedWallet.iconShape || \"squircle\"\n }\n />\n <ModalContent $preserveDisplay={true}>\n <OptionsList options={options} />\n </ModalContent>\n </PageContent>\n );\n};\n\nexport default SelectWalletChain;\n"],"names":[],"mappings":";;;;;;;;AAYA,MAAM,oBAA8B,MAAM;AACxC,EAAA,MAAM,EAAE,YAAc,EAAA,qBAAA,EAAuB,QAAU,EAAA,kBAAA,KACrD,aAAc,EAAA,CAAA;AAChB,EAAM,MAAA,EAAE,gBAAmB,GAAA,YAAA,CAAA;AAE3B,EAAA,IAAI,kBAAkB,IAAM,EAAA;AAC1B,IAAA,2BAAQ,WAAY,EAAA,EAAA,CAAA,CAAA;AAAA,GACtB;AAGA,EAAA,MAAM,MAAS,GAAA,cAAA,CAAA;AAGf,EAAI,IAAA,CAAC,OAAO,mBAAqB,EAAA;AAC/B,IAAA,2BAAQ,WAAY,EAAA,EAAA,CAAA,CAAA;AAAA,GACtB;AAEA,EAAA,SAAS,aAAa,KAAyB,EAAA;AAC7C,IAAA,IAAI,UAAU,KAAO,EAAA;AACnB,MAAA,qBAAA,CAAsB,OAAO,EAAE,CAAA,CAAA;AAC/B,MAAA,QAAA,CAAS,OAAO,OAAO,CAAA,CAAA;AAAA,KAClB,MAAA;AACL,MAAA,kBAAA,CAAmB,OAAO,mBAAmB,CAAA,CAAA;AAC7C,MAAA,QAAA,CAAS,OAAO,gBAAgB,CAAA,CAAA;AAAA,KAClC;AAAA,GACF;AACA,EAAA,MAAM,OAAU,GAAA;AAAA,IACd;AAAA,MACE,EAAI,EAAA,UAAA;AAAA,MACJ,KAAO,EAAA,UAAA;AAAA,MACP,KAAO,EAAA,iBAAE,GAAA,CAAA,QAAA,EAAA,EAAA,EAAa,UAAW,CAAE,CAAA;AAAA,MACnC,OAAA,EAAS,MAAM,YAAA,CAAa,KAAK,CAAA;AAAA,KACnC;AAAA,IACA;AAAA,MACE,EAAI,EAAA,QAAA;AAAA,MACJ,KAAO,EAAA,QAAA;AAAA,MACP,KAAO,EAAA,iBAAE,GAAA,CAAA,MAAA,EAAA,EAAA,EAAW,QAAS,CAAE,CAAA;AAAA,MAC/B,OAAA,EAAS,MAAM,YAAA,CAAa,QAAQ,CAAA;AAAA,KACtC;AAAA,GACF,CAAA;AAEA,EAAA,4BACG,WACC,EAAA,EAAA,QAAA,EAAA;AAAA,oBAAA,GAAA;AAAA,MAAC,oBAAA;AAAA,MAAA;AAAA,QACC,MAAM,cAAe,CAAA,IAAA;AAAA,QACrB,WACE,cAAe,CAAA,SAAA,KAAc,QACzB,GAAA,UAAA,GACA,eAAe,SAAa,IAAA,UAAA;AAAA,OAAA;AAAA,KAEpC;AAAA,wBACC,YAAa,EAAA,EAAA,gBAAA,EAAkB,MAC9B,QAAC,kBAAA,GAAA,CAAA,WAAA,EAAA,EAAY,SAAkB,CACjC,EAAA,CAAA;AAAA,GACF,EAAA,CAAA,CAAA;AAEJ;;;;"}
|
|
@@ -6,30 +6,35 @@ import { OptionsList } from '../../Common/OptionsList/index.js';
|
|
|
6
6
|
import { OrderHeader } from '../../Common/OrderHeader/index.js';
|
|
7
7
|
|
|
8
8
|
const SelectZKP = () => {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
9
|
+
const { paymentState, setRoute } = usePayContext();
|
|
10
|
+
const { externalPaymentOptions, setSelectedExternalOption } = paymentState;
|
|
11
|
+
const zkp2pOptions = externalPaymentOptions.options.get("zkp2p");
|
|
12
|
+
if (!zkp2pOptions) {
|
|
13
|
+
return /* @__PURE__ */ jsxs(PageContent, { children: [
|
|
14
|
+
/* @__PURE__ */ jsx(OrderHeader, { minified: true, show: "zkp2p" }),
|
|
15
|
+
/* @__PURE__ */ jsx(ModalH1, { children: "No ZKP2P options available" })
|
|
16
|
+
] });
|
|
17
|
+
}
|
|
18
|
+
const options = zkp2pOptions.map((option) => ({
|
|
19
|
+
id: option.id,
|
|
20
|
+
title: option.cta,
|
|
21
|
+
icons: [option.logoURI],
|
|
22
|
+
onClick: () => {
|
|
23
|
+
setSelectedExternalOption(option);
|
|
24
|
+
const meta = { event: "click-option", option: option.id };
|
|
25
|
+
if (paymentState.isDepositFlow) {
|
|
26
|
+
setRoute(ROUTES.SELECT_EXTERNAL_AMOUNT, meta);
|
|
27
|
+
} else {
|
|
28
|
+
setRoute(ROUTES.WAITING_EXTERNAL, meta);
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
disabled: option.disabled,
|
|
32
|
+
subtitle: option.message
|
|
33
|
+
}));
|
|
34
|
+
return /* @__PURE__ */ jsxs(PageContent, { children: [
|
|
35
|
+
/* @__PURE__ */ jsx(OrderHeader, { minified: true, show: "zkp2p" }),
|
|
36
|
+
/* @__PURE__ */ jsx(OptionsList, { options })
|
|
37
|
+
] });
|
|
33
38
|
};
|
|
34
39
|
|
|
35
40
|
export { SelectZKP as default };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/components/Pages/SelectZKP/index.tsx"],"sourcesContent":[
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../src/components/Pages/SelectZKP/index.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { ModalH1, PageContent } from \"../../Common/Modal/styles\";\n\nimport { ROUTES } from \"../../../constants/routes\";\nimport { usePayContext } from \"../../../hooks/usePayContext\";\nimport { OptionsList } from \"../../Common/OptionsList\";\nimport { OrderHeader } from \"../../Common/OrderHeader\";\n\nconst SelectZKP: React.FC = () => {\n const { paymentState, setRoute } = usePayContext();\n const { externalPaymentOptions, setSelectedExternalOption } = paymentState;\n const zkp2pOptions = externalPaymentOptions.options.get(\"zkp2p\");\n\n if (!zkp2pOptions) {\n return (\n <PageContent>\n <OrderHeader minified show=\"zkp2p\" />\n <ModalH1>No ZKP2P options available</ModalH1>\n </PageContent>\n );\n }\n\n const options = zkp2pOptions.map((option) => ({\n id: option.id,\n title: option.cta,\n icons: [option.logoURI],\n onClick: () => {\n setSelectedExternalOption(option);\n const meta = { event: \"click-option\", option: option.id };\n if (paymentState.isDepositFlow) {\n setRoute(ROUTES.SELECT_EXTERNAL_AMOUNT, meta);\n } else {\n setRoute(ROUTES.WAITING_EXTERNAL, meta);\n }\n },\n disabled: option.disabled,\n subtitle: option.message,\n }));\n\n return (\n <PageContent>\n <OrderHeader minified show=\"zkp2p\" />\n <OptionsList options={options} />\n </PageContent>\n );\n};\n\nexport default SelectZKP;\n"],"names":[],"mappings":";;;;;;;AASA,MAAM,YAAsB,MAAM;AAChC,EAAA,MAAM,EAAE,YAAA,EAAc,QAAS,EAAA,GAAI,aAAc,EAAA,CAAA;AACjD,EAAM,MAAA,EAAE,sBAAwB,EAAA,yBAAA,EAA8B,GAAA,YAAA,CAAA;AAC9D,EAAA,MAAM,YAAe,GAAA,sBAAA,CAAuB,OAAQ,CAAA,GAAA,CAAI,OAAO,CAAA,CAAA;AAE/D,EAAA,IAAI,CAAC,YAAc,EAAA;AACjB,IAAA,4BACG,WACC,EAAA,EAAA,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,WAAY,EAAA,EAAA,QAAA,EAAQ,IAAC,EAAA,IAAA,EAAK,OAAQ,EAAA,CAAA;AAAA,sBACnC,GAAA,CAAC,WAAQ,QAA0B,EAAA,4BAAA,EAAA,CAAA;AAAA,KACrC,EAAA,CAAA,CAAA;AAAA,GAEJ;AAEA,EAAA,MAAM,OAAU,GAAA,YAAA,CAAa,GAAI,CAAA,CAAC,MAAY,MAAA;AAAA,IAC5C,IAAI,MAAO,CAAA,EAAA;AAAA,IACX,OAAO,MAAO,CAAA,GAAA;AAAA,IACd,KAAA,EAAO,CAAC,MAAA,CAAO,OAAO,CAAA;AAAA,IACtB,SAAS,MAAM;AACb,MAAA,yBAAA,CAA0B,MAAM,CAAA,CAAA;AAChC,MAAA,MAAM,OAAO,EAAE,KAAA,EAAO,cAAgB,EAAA,MAAA,EAAQ,OAAO,EAAG,EAAA,CAAA;AACxD,MAAA,IAAI,aAAa,aAAe,EAAA;AAC9B,QAAS,QAAA,CAAA,MAAA,CAAO,wBAAwB,IAAI,CAAA,CAAA;AAAA,OACvC,MAAA;AACL,QAAS,QAAA,CAAA,MAAA,CAAO,kBAAkB,IAAI,CAAA,CAAA;AAAA,OACxC;AAAA,KACF;AAAA,IACA,UAAU,MAAO,CAAA,QAAA;AAAA,IACjB,UAAU,MAAO,CAAA,OAAA;AAAA,GACjB,CAAA,CAAA,CAAA;AAEF,EAAA,4BACG,WACC,EAAA,EAAA,QAAA,EAAA;AAAA,oBAAA,GAAA,CAAC,WAAY,EAAA,EAAA,QAAA,EAAQ,IAAC,EAAA,IAAA,EAAK,OAAQ,EAAA,CAAA;AAAA,oBACnC,GAAA,CAAC,eAAY,OAAkB,EAAA,CAAA;AAAA,GACjC,EAAA,CAAA,CAAA;AAEJ;;;;"}
|
|
@@ -10,59 +10,74 @@ import { walletConfigs } from '../../../../wallets/walletConfigs.js';
|
|
|
10
10
|
import SquircleSpinner from '../../../Spinners/SquircleSpinner/index.js';
|
|
11
11
|
|
|
12
12
|
const ConnectSolana = () => {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
13
|
+
const solanaWallets = useWallet();
|
|
14
|
+
const isConnected = solanaWallets.connected;
|
|
15
|
+
const { solanaConnector, setRoute, paymentState } = usePayContext();
|
|
16
|
+
const { setTokenMode } = paymentState;
|
|
17
|
+
const selectedWallet = solanaWallets.wallets.find(
|
|
18
|
+
(wallet) => wallet.adapter.name === solanaConnector
|
|
19
|
+
);
|
|
20
|
+
const getWalletIcon = () => {
|
|
21
|
+
if (!selectedWallet) return null;
|
|
22
|
+
const matchedConfig = Object.values(walletConfigs).find((cfg) => {
|
|
23
|
+
if (!cfg.name) return false;
|
|
24
|
+
const cfgName = cfg.name.toLowerCase();
|
|
25
|
+
const walletName = selectedWallet.adapter.name.toLowerCase();
|
|
26
|
+
return cfgName.includes(walletName) || walletName.includes(cfgName);
|
|
27
|
+
});
|
|
28
|
+
if (matchedConfig?.icon) {
|
|
29
|
+
return typeof matchedConfig.icon === "string" ? /* @__PURE__ */ jsx("img", { src: matchedConfig.icon, alt: matchedConfig.name }) : matchedConfig.icon;
|
|
30
|
+
}
|
|
31
|
+
return /* @__PURE__ */ jsx(
|
|
32
|
+
"img",
|
|
33
|
+
{
|
|
34
|
+
src: selectedWallet.adapter.icon,
|
|
35
|
+
alt: selectedWallet.adapter.name
|
|
36
|
+
}
|
|
37
|
+
);
|
|
38
|
+
};
|
|
39
|
+
useEffect(() => {
|
|
40
|
+
if (!solanaConnector) return;
|
|
41
|
+
solanaWallets.select(solanaConnector);
|
|
42
|
+
}, [solanaConnector]);
|
|
43
|
+
useEffect(() => {
|
|
44
|
+
if (!isConnected) return;
|
|
45
|
+
const meta = {
|
|
46
|
+
event: "wait-solana-connected",
|
|
47
|
+
walletName: solanaWallets.wallet?.adapter.name
|
|
33
48
|
};
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
49
|
+
setTimeout(() => {
|
|
50
|
+
setTokenMode("solana");
|
|
51
|
+
setRoute(ROUTES.SELECT_TOKEN, meta);
|
|
52
|
+
}, 500);
|
|
53
|
+
}, [isConnected]);
|
|
54
|
+
if (!solanaConnector) return null;
|
|
55
|
+
return /* @__PURE__ */ jsxs(PageContent, { children: [
|
|
56
|
+
/* @__PURE__ */ jsx(LoadingContainer, { children: /* @__PURE__ */ jsx(AnimationContainer, { children: /* @__PURE__ */ jsx(AnimatePresence, { children: /* @__PURE__ */ jsx(
|
|
57
|
+
SquircleSpinner,
|
|
58
|
+
{
|
|
59
|
+
logo: /* @__PURE__ */ jsx("div", { style: { borderRadius: "22.5%", overflow: "hidden" }, children: getWalletIcon() }),
|
|
60
|
+
loading: true
|
|
61
|
+
}
|
|
62
|
+
) }) }) }),
|
|
63
|
+
/* @__PURE__ */ jsx(ModalContent, { style: { paddingBottom: 0 }, children: isConnected ? /* @__PURE__ */ jsx(ModalH1, { children: "Connected" }) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
64
|
+
/* @__PURE__ */ jsx(ModalH1, { children: "Requesting Connection" }),
|
|
65
|
+
/* @__PURE__ */ jsxs(ModalBody, { children: [
|
|
66
|
+
"Open ",
|
|
67
|
+
selectedWallet?.adapter.name,
|
|
68
|
+
" to continue."
|
|
69
|
+
] })
|
|
70
|
+
] }) })
|
|
71
|
+
] });
|
|
57
72
|
};
|
|
58
|
-
const LoadingContainer = styled(motion.div)
|
|
73
|
+
const LoadingContainer = styled(motion.div)`
|
|
59
74
|
display: flex;
|
|
60
75
|
align-items: center;
|
|
61
76
|
justify-content: center;
|
|
62
77
|
margin: 10px auto 16px;
|
|
63
78
|
height: 120px;
|
|
64
79
|
`;
|
|
65
|
-
const AnimationContainer = styled(motion.div)
|
|
80
|
+
const AnimationContainer = styled(motion.div)`
|
|
66
81
|
user-select: none;
|
|
67
82
|
position: relative;
|
|
68
83
|
--spinner-error-opacity: 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/components/Pages/Solana/ConnectorSolana/index.tsx"],"sourcesContent":[null]
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/components/Pages/Solana/ConnectorSolana/index.tsx"],"sourcesContent":["import React, { useEffect } from \"react\";\n\nimport {\n ModalBody,\n ModalContent,\n ModalH1,\n PageContent,\n} from \"../../../Common/Modal/styles\";\n\nimport { useWallet } from \"@solana/wallet-adapter-react\";\nimport { AnimatePresence, motion } from \"framer-motion\";\nimport { ROUTES } from \"../../../../constants/routes\";\nimport { usePayContext } from \"../../../../hooks/usePayContext\";\nimport styled from \"../../../../styles/styled\";\nimport { walletConfigs } from \"../../../../wallets/walletConfigs\";\nimport SquircleSpinner from \"../../../Spinners/SquircleSpinner\";\n\nconst ConnectSolana: React.FC = () => {\n const solanaWallets = useWallet();\n const isConnected = solanaWallets.connected;\n\n const { solanaConnector, setRoute, paymentState } = usePayContext();\n const { setTokenMode } = paymentState;\n\n const selectedWallet = solanaWallets.wallets.find(\n (wallet) => wallet.adapter.name === solanaConnector,\n );\n\n // Prefer icon from walletConfigs if available\n const getWalletIcon = () => {\n if (!selectedWallet) return null;\n\n const matchedConfig = Object.values(walletConfigs).find((cfg) => {\n if (!cfg.name) return false;\n const cfgName = cfg.name.toLowerCase();\n const walletName = selectedWallet.adapter.name.toLowerCase();\n return cfgName.includes(walletName) || walletName.includes(cfgName);\n });\n\n if (matchedConfig?.icon) {\n return typeof matchedConfig.icon === \"string\" ? (\n <img src={matchedConfig.icon} alt={matchedConfig.name} />\n ) : (\n (matchedConfig.icon as JSX.Element)\n );\n }\n\n return (\n <img\n src={selectedWallet.adapter.icon}\n alt={selectedWallet.adapter.name}\n />\n );\n };\n\n useEffect(() => {\n if (!solanaConnector) return;\n solanaWallets.select(solanaConnector);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [solanaConnector]);\n\n useEffect(() => {\n if (!isConnected) return;\n // Wait so user can see it's connected\n const meta = {\n event: \"wait-solana-connected\",\n walletName: solanaWallets.wallet?.adapter.name,\n };\n setTimeout(() => {\n setTokenMode(\"solana\");\n setRoute(ROUTES.SELECT_TOKEN, meta);\n }, 500);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isConnected]);\n\n if (!solanaConnector) return null;\n\n return (\n <PageContent>\n <LoadingContainer>\n <AnimationContainer>\n <AnimatePresence>\n <SquircleSpinner\n logo={\n <div style={{ borderRadius: \"22.5%\", overflow: \"hidden\" }}>\n {getWalletIcon()}\n </div>\n }\n loading={true}\n />\n </AnimatePresence>\n </AnimationContainer>\n </LoadingContainer>\n <ModalContent style={{ paddingBottom: 0 }}>\n {isConnected ? (\n <ModalH1>Connected</ModalH1>\n ) : (\n <>\n <ModalH1>Requesting Connection</ModalH1>\n <ModalBody>\n Open {selectedWallet?.adapter.name} to continue.\n </ModalBody>\n </>\n )}\n </ModalContent>\n </PageContent>\n );\n};\n\nexport const LoadingContainer = styled(motion.div)`\n display: flex;\n align-items: center;\n justify-content: center;\n margin: 10px auto 16px;\n height: 120px;\n`;\nconst AnimationContainer = styled(motion.div)`\n user-select: none;\n position: relative;\n --spinner-error-opacity: 0;\n &:before {\n content: \"\";\n position: absolute;\n inset: 1px;\n opacity: 0;\n background: var(--ck-body-color-danger);\n }\n`;\n\nexport default ConnectSolana;\n"],"names":[],"mappings":"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"}
|