@daimo/pay 1.19.10 → 2.0.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/README.md +5 -70
- package/index.js +1 -0
- package/package.json +5 -94
- package/LICENSE +0 -26
- package/build/index.d.ts +0 -619
- package/build/package.json.js +0 -118
- package/build/package.json.js.map +0 -1
- package/build/src/assets/MobileWithLogos.js +0 -329
- package/build/src/assets/MobileWithLogos.js.map +0 -1
- package/build/src/assets/ScanIconWithLogos.js +0 -243
- package/build/src/assets/ScanIconWithLogos.js.map +0 -1
- package/build/src/assets/browsers.js +0 -969
- package/build/src/assets/browsers.js.map +0 -1
- package/build/src/assets/chains.js +0 -683
- package/build/src/assets/chains.js.map +0 -1
- package/build/src/assets/icons.js +0 -273
- package/build/src/assets/icons.js.map +0 -1
- package/build/src/assets/logos.js +0 -1694
- package/build/src/assets/logos.js.map +0 -1
- package/build/src/assets/wave.js +0 -46
- package/build/src/assets/wave.js.map +0 -1
- package/build/src/components/Common/Alert/index.js +0 -13
- package/build/src/components/Common/Alert/index.js.map +0 -1
- package/build/src/components/Common/Alert/styles.js +0 -55
- package/build/src/components/Common/Alert/styles.js.map +0 -1
- package/build/src/components/Common/AmountInput/AmountInputField.js +0 -62
- package/build/src/components/Common/AmountInput/AmountInputField.js.map +0 -1
- package/build/src/components/Common/AmountInput/index.js +0 -166
- package/build/src/components/Common/AmountInput/index.js.map +0 -1
- package/build/src/components/Common/Avatar/index.js +0 -78
- package/build/src/components/Common/Avatar/index.js.map +0 -1
- package/build/src/components/Common/Avatar/styles.js +0 -54
- package/build/src/components/Common/Avatar/styles.js.map +0 -1
- package/build/src/components/Common/BrowserIcon/index.js +0 -29
- package/build/src/components/Common/BrowserIcon/index.js.map +0 -1
- package/build/src/components/Common/BrowserIcon/styles.js +0 -20
- package/build/src/components/Common/BrowserIcon/styles.js.map +0 -1
- package/build/src/components/Common/Button/index.js +0 -144
- package/build/src/components/Common/Button/index.js.map +0 -1
- package/build/src/components/Common/Button/styles.js +0 -287
- package/build/src/components/Common/Button/styles.js.map +0 -1
- package/build/src/components/Common/Chain/index.js +0 -141
- package/build/src/components/Common/Chain/index.js.map +0 -1
- package/build/src/components/Common/Chain/styles.js +0 -90
- package/build/src/components/Common/Chain/styles.js.map +0 -1
- package/build/src/components/Common/ChainSelectList/index.js +0 -250
- package/build/src/components/Common/ChainSelectList/index.js.map +0 -1
- package/build/src/components/Common/ChainSelectList/styles.js +0 -226
- package/build/src/components/Common/ChainSelectList/styles.js.map +0 -1
- package/build/src/components/Common/CircleTimer.js +0 -92
- package/build/src/components/Common/CircleTimer.js.map +0 -1
- package/build/src/components/Common/ConnectorList/index.js +0 -121
- package/build/src/components/Common/ConnectorList/index.js.map +0 -1
- package/build/src/components/Common/ConnectorList/styles.js +0 -344
- package/build/src/components/Common/ConnectorList/styles.js.map +0 -1
- package/build/src/components/Common/CopyToClipboard/CopyToClipboardIcon.js +0 -78
- package/build/src/components/Common/CopyToClipboard/CopyToClipboardIcon.js.map +0 -1
- package/build/src/components/Common/CustomQRCode/QRCode.js +0 -132
- package/build/src/components/Common/CustomQRCode/QRCode.js.map +0 -1
- package/build/src/components/Common/CustomQRCode/index.js +0 -89
- package/build/src/components/Common/CustomQRCode/index.js.map +0 -1
- package/build/src/components/Common/CustomQRCode/styles.js +0 -142
- package/build/src/components/Common/CustomQRCode/styles.js.map +0 -1
- package/build/src/components/Common/FitText/index.js +0 -34
- package/build/src/components/Common/FitText/index.js.map +0 -1
- package/build/src/components/Common/Modal/index.js +0 -558
- package/build/src/components/Common/Modal/index.js.map +0 -1
- package/build/src/components/Common/Modal/styles.js +0 -665
- package/build/src/components/Common/Modal/styles.js.map +0 -1
- package/build/src/components/Common/OptionsList/index.js +0 -145
- package/build/src/components/Common/OptionsList/index.js.map +0 -1
- package/build/src/components/Common/OptionsList/styles.js +0 -138
- package/build/src/components/Common/OptionsList/styles.js.map +0 -1
- package/build/src/components/Common/OrderHeader/index.js +0 -148
- package/build/src/components/Common/OrderHeader/index.js.map +0 -1
- package/build/src/components/Common/PaymentBreakdown/index.js +0 -70
- package/build/src/components/Common/PaymentBreakdown/index.js.map +0 -1
- package/build/src/components/Common/Portal/index.js +0 -30
- package/build/src/components/Common/Portal/index.js.map +0 -1
- package/build/src/components/Common/PoweredByFooter/index.js +0 -39
- package/build/src/components/Common/PoweredByFooter/index.js.map +0 -1
- package/build/src/components/Common/ScrollArea/index.js +0 -120
- package/build/src/components/Common/ScrollArea/index.js.map +0 -1
- package/build/src/components/Common/ScrollArea/styles.js +0 -169
- package/build/src/components/Common/ScrollArea/styles.js.map +0 -1
- package/build/src/components/Common/SelectAnotherMethodButton/index.js +0 -96
- package/build/src/components/Common/SelectAnotherMethodButton/index.js.map +0 -1
- package/build/src/components/Common/Spinner/index.js +0 -64
- package/build/src/components/Common/Spinner/index.js.map +0 -1
- package/build/src/components/Common/Spinner/styles.js +0 -22
- package/build/src/components/Common/Spinner/styles.js.map +0 -1
- package/build/src/components/Common/SwitchButton/index.js +0 -43
- package/build/src/components/Common/SwitchButton/index.js.map +0 -1
- package/build/src/components/Common/ThemedButton/index.js +0 -46
- package/build/src/components/Common/ThemedButton/index.js.map +0 -1
- package/build/src/components/Common/ThemedButton/styles.js +0 -152
- package/build/src/components/Common/ThemedButton/styles.js.map +0 -1
- package/build/src/components/Common/TokenChainLogo/index.js +0 -62
- package/build/src/components/Common/TokenChainLogo/index.js.map +0 -1
- package/build/src/components/Common/Tooltip/index.js +0 -129
- package/build/src/components/Common/Tooltip/index.js.map +0 -1
- package/build/src/components/Common/Tooltip/styles.js +0 -81
- package/build/src/components/Common/Tooltip/styles.js.map +0 -1
- package/build/src/components/Common/WalletChainLogo/index.js +0 -31
- package/build/src/components/Common/WalletChainLogo/index.js.map +0 -1
- package/build/src/components/DaimoPayButton/index.js +0 -196
- package/build/src/components/DaimoPayButton/index.js.map +0 -1
- package/build/src/components/DaimoPayButton/styles.js +0 -50
- package/build/src/components/DaimoPayButton/styles.js.map +0 -1
- package/build/src/components/DaimoPayModal/ConnectUsing.js +0 -70
- package/build/src/components/DaimoPayModal/ConnectUsing.js.map +0 -1
- package/build/src/components/DaimoPayModal/ConnectWithInjector/index.js +0 -339
- package/build/src/components/DaimoPayModal/ConnectWithInjector/index.js.map +0 -1
- package/build/src/components/DaimoPayModal/ConnectWithInjector/styles.js +0 -131
- package/build/src/components/DaimoPayModal/ConnectWithInjector/styles.js.map +0 -1
- package/build/src/components/DaimoPayModal/ConnectWithQRCode.js +0 -89
- package/build/src/components/DaimoPayModal/ConnectWithQRCode.js.map +0 -1
- package/build/src/components/DaimoPayModal/index.js +0 -605
- package/build/src/components/DaimoPayModal/index.js.map +0 -1
- package/build/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.js +0 -25
- package/build/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.js.map +0 -1
- package/build/src/components/Pages/About/graphics.js +0 -853
- package/build/src/components/Pages/About/graphics.js.map +0 -1
- package/build/src/components/Pages/About/index.js +0 -222
- package/build/src/components/Pages/About/index.js.map +0 -1
- package/build/src/components/Pages/About/styles.js +0 -140
- package/build/src/components/Pages/About/styles.js.map +0 -1
- package/build/src/components/Pages/Confirmation/index.js +0 -126
- package/build/src/components/Pages/Confirmation/index.js.map +0 -1
- package/build/src/components/Pages/Connectors/index.js +0 -26
- package/build/src/components/Pages/Connectors/index.js.map +0 -1
- package/build/src/components/Pages/Error/index.js +0 -57
- package/build/src/components/Pages/Error/index.js.map +0 -1
- package/build/src/components/Pages/MobileConnectors/index.js +0 -108
- package/build/src/components/Pages/MobileConnectors/index.js.map +0 -1
- package/build/src/components/Pages/MobileConnectors/styles.js +0 -64
- package/build/src/components/Pages/MobileConnectors/styles.js.map +0 -1
- package/build/src/components/Pages/Onboarding/index.js +0 -34
- package/build/src/components/Pages/Onboarding/index.js.map +0 -1
- package/build/src/components/Pages/Onboarding/styles.js +0 -229
- package/build/src/components/Pages/Onboarding/styles.js.map +0 -1
- package/build/src/components/Pages/PayWithToken/index.js +0 -157
- package/build/src/components/Pages/PayWithToken/index.js.map +0 -1
- package/build/src/components/Pages/SelectAmount/index.js +0 -24
- package/build/src/components/Pages/SelectAmount/index.js.map +0 -1
- package/build/src/components/Pages/SelectDepositAddressAmount/index.js +0 -79
- package/build/src/components/Pages/SelectDepositAddressAmount/index.js.map +0 -1
- package/build/src/components/Pages/SelectDepositAddressChain/index.js +0 -80
- package/build/src/components/Pages/SelectDepositAddressChain/index.js.map +0 -1
- package/build/src/components/Pages/SelectExchange/index.js +0 -62
- package/build/src/components/Pages/SelectExchange/index.js.map +0 -1
- package/build/src/components/Pages/SelectExternalAmount/index.js +0 -80
- package/build/src/components/Pages/SelectExternalAmount/index.js.map +0 -1
- package/build/src/components/Pages/SelectMethod/index.js +0 -315
- package/build/src/components/Pages/SelectMethod/index.js.map +0 -1
- package/build/src/components/Pages/SelectToken/index.js +0 -99
- package/build/src/components/Pages/SelectToken/index.js.map +0 -1
- package/build/src/components/Pages/SelectWalletAmount/index.js +0 -71
- package/build/src/components/Pages/SelectWalletAmount/index.js.map +0 -1
- package/build/src/components/Pages/SelectWalletChain/index.js +0 -55
- package/build/src/components/Pages/SelectWalletChain/index.js.map +0 -1
- package/build/src/components/Pages/SelectZKP/index.js +0 -41
- package/build/src/components/Pages/SelectZKP/index.js.map +0 -1
- package/build/src/components/Pages/Solana/ConnectorSolana/index.js +0 -94
- package/build/src/components/Pages/Solana/ConnectorSolana/index.js.map +0 -1
- package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js +0 -92
- package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js.map +0 -1
- package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js +0 -24
- package/build/src/components/Pages/Solana/SelectSolanaAmount/index.js.map +0 -1
- package/build/src/components/Pages/SwitchNetworks/index.js +0 -45
- package/build/src/components/Pages/SwitchNetworks/index.js.map +0 -1
- package/build/src/components/Pages/WaitingDepositAddress/index.js +0 -586
- package/build/src/components/Pages/WaitingDepositAddress/index.js.map +0 -1
- package/build/src/components/Pages/WaitingExternal/index.js +0 -174
- package/build/src/components/Pages/WaitingExternal/index.js.map +0 -1
- package/build/src/components/Pages/WaitingWallet/index.js +0 -49
- package/build/src/components/Pages/WaitingWallet/index.js.map +0 -1
- package/build/src/components/Pages/Warning/index.js +0 -56
- package/build/src/components/Pages/Warning/index.js.map +0 -1
- package/build/src/components/Spinners/CircleSpinner/index.js +0 -104
- package/build/src/components/Spinners/CircleSpinner/index.js.map +0 -1
- package/build/src/components/Spinners/CircleSpinner/styles.js +0 -117
- package/build/src/components/Spinners/CircleSpinner/styles.js.map +0 -1
- package/build/src/components/Spinners/ExternalPaymentSpinner/index.js +0 -29
- package/build/src/components/Spinners/ExternalPaymentSpinner/index.js.map +0 -1
- package/build/src/components/Spinners/SquircleSpinner/index.js +0 -68
- package/build/src/components/Spinners/SquircleSpinner/index.js.map +0 -1
- package/build/src/components/Spinners/SquircleSpinner/styles.js +0 -66
- package/build/src/components/Spinners/SquircleSpinner/styles.js.map +0 -1
- package/build/src/components/Spinners/TokenLogoSpinner/index.js +0 -24
- package/build/src/components/Spinners/TokenLogoSpinner/index.js.map +0 -1
- package/build/src/components/Spinners/TokenLogoSpinner/styles.js +0 -40
- package/build/src/components/Spinners/TokenLogoSpinner/styles.js.map +0 -1
- package/build/src/components/Spinners/WalletPaymentSpinner/index.js +0 -37
- package/build/src/components/Spinners/WalletPaymentSpinner/index.js.map +0 -1
- package/build/src/components/Spinners/styles.js +0 -32
- package/build/src/components/Spinners/styles.js.map +0 -1
- package/build/src/constants/defaultTheme.js +0 -6
- package/build/src/constants/defaultTheme.js.map +0 -1
- package/build/src/constants/limits.js +0 -4
- package/build/src/constants/limits.js.map +0 -1
- package/build/src/constants/paymentOptions.js +0 -61
- package/build/src/constants/paymentOptions.js.map +0 -1
- package/build/src/constants/routes.js +0 -31
- package/build/src/constants/routes.js.map +0 -1
- package/build/src/constants/wallets.js +0 -7
- package/build/src/constants/wallets.js.map +0 -1
- package/build/src/defaultConfig.js +0 -66
- package/build/src/defaultConfig.js.map +0 -1
- package/build/src/defaultConnectors.js +0 -37
- package/build/src/defaultConnectors.js.map +0 -1
- package/build/src/hooks/useChainIsSupported.js +0 -10
- package/build/src/hooks/useChainIsSupported.js.map +0 -1
- package/build/src/hooks/useChains.js +0 -10
- package/build/src/hooks/useChains.js.map +0 -1
- package/build/src/hooks/useConnect.js +0 -61
- package/build/src/hooks/useConnect.js.map +0 -1
- package/build/src/hooks/useConnectCallback.js +0 -21
- package/build/src/hooks/useConnectCallback.js.map +0 -1
- package/build/src/hooks/useConnectors.js +0 -20
- package/build/src/hooks/useConnectors.js.map +0 -1
- package/build/src/hooks/useDaimoPay.js +0 -131
- package/build/src/hooks/useDaimoPay.js.map +0 -1
- package/build/src/hooks/useDaimoPayStatus.js +0 -12
- package/build/src/hooks/useDaimoPayStatus.js.map +0 -1
- package/build/src/hooks/useDaimoPayUI.js +0 -15
- package/build/src/hooks/useDaimoPayUI.js.map +0 -1
- package/build/src/hooks/useEnsFallbackConfig.js +0 -16
- package/build/src/hooks/useEnsFallbackConfig.js.map +0 -1
- package/build/src/hooks/useFitText.js +0 -133
- package/build/src/hooks/useFitText.js.map +0 -1
- package/build/src/hooks/useFocusTrap.js +0 -53
- package/build/src/hooks/useFocusTrap.js.map +0 -1
- package/build/src/hooks/useIsMobile.js +0 -11
- package/build/src/hooks/useIsMobile.js.map +0 -1
- package/build/src/hooks/useIsMounted.js +0 -10
- package/build/src/hooks/useIsMounted.js.map +0 -1
- package/build/src/hooks/useLastConnector.js +0 -24
- package/build/src/hooks/useLastConnector.js.map +0 -1
- package/build/src/hooks/useLocales.js +0 -60
- package/build/src/hooks/useLocales.js.map +0 -1
- package/build/src/hooks/useLockBodyScroll.js +0 -47
- package/build/src/hooks/useLockBodyScroll.js.map +0 -1
- package/build/src/hooks/useOrderUsdLimits.js +0 -24
- package/build/src/hooks/useOrderUsdLimits.js.map +0 -1
- package/build/src/hooks/usePayContext.js +0 -11
- package/build/src/hooks/usePayContext.js.map +0 -1
- package/build/src/hooks/usePaymentOptions.js +0 -185
- package/build/src/hooks/usePaymentOptions.js.map +0 -1
- package/build/src/hooks/usePaymentState.js +0 -399
- package/build/src/hooks/usePaymentState.js.map +0 -1
- package/build/src/hooks/usePrevious.js +0 -13
- package/build/src/hooks/usePrevious.js.map +0 -1
- package/build/src/hooks/useTokenOptions.js +0 -156
- package/build/src/hooks/useTokenOptions.js.map +0 -1
- package/build/src/hooks/useUntronAvailability.js +0 -32
- package/build/src/hooks/useUntronAvailability.js.map +0 -1
- package/build/src/hooks/useWindowSize.js +0 -23
- package/build/src/hooks/useWindowSize.js.map +0 -1
- package/build/src/index.js +0 -14
- package/build/src/index.js.map +0 -1
- package/build/src/localizations/index.js +0 -48
- package/build/src/localizations/index.js.map +0 -1
- package/build/src/localizations/locales/ar-AE.js +0 -95
- package/build/src/localizations/locales/ar-AE.js.map +0 -1
- package/build/src/localizations/locales/ca-AD.js +0 -93
- package/build/src/localizations/locales/ca-AD.js.map +0 -1
- package/build/src/localizations/locales/ee-EE.js +0 -101
- package/build/src/localizations/locales/ee-EE.js.map +0 -1
- package/build/src/localizations/locales/en-US.js +0 -145
- package/build/src/localizations/locales/en-US.js.map +0 -1
- package/build/src/localizations/locales/es-ES.js +0 -138
- package/build/src/localizations/locales/es-ES.js.map +0 -1
- package/build/src/localizations/locales/fa-IR.js +0 -93
- package/build/src/localizations/locales/fa-IR.js.map +0 -1
- package/build/src/localizations/locales/fr-FR.js +0 -93
- package/build/src/localizations/locales/fr-FR.js.map +0 -1
- package/build/src/localizations/locales/ja-JP.js +0 -93
- package/build/src/localizations/locales/ja-JP.js.map +0 -1
- package/build/src/localizations/locales/pt-BR.js +0 -145
- package/build/src/localizations/locales/pt-BR.js.map +0 -1
- package/build/src/localizations/locales/ru-RU.js +0 -97
- package/build/src/localizations/locales/ru-RU.js.map +0 -1
- package/build/src/localizations/locales/tr-TR.js +0 -101
- package/build/src/localizations/locales/tr-TR.js.map +0 -1
- package/build/src/localizations/locales/vi-VN.js +0 -101
- package/build/src/localizations/locales/vi-VN.js.map +0 -1
- package/build/src/localizations/locales/zh-CN.js +0 -93
- package/build/src/localizations/locales/zh-CN.js.map +0 -1
- package/build/src/payment/paymentEffects.js +0 -270
- package/build/src/payment/paymentEffects.js.map +0 -1
- package/build/src/payment/paymentFsm.js +0 -234
- package/build/src/payment/paymentFsm.js.map +0 -1
- package/build/src/payment/paymentStore.js +0 -18
- package/build/src/payment/paymentStore.js.map +0 -1
- package/build/src/payment/paymentUtils.js +0 -10
- package/build/src/payment/paymentUtils.js.map +0 -1
- package/build/src/provider/DaimoPayProvider.js +0 -300
- package/build/src/provider/DaimoPayProvider.js.map +0 -1
- package/build/src/provider/PayContext.js +0 -6
- package/build/src/provider/PayContext.js.map +0 -1
- package/build/src/provider/PaymentProvider.js +0 -35
- package/build/src/provider/PaymentProvider.js.map +0 -1
- package/build/src/provider/SolanaContextProvider.js +0 -14
- package/build/src/provider/SolanaContextProvider.js.map +0 -1
- package/build/src/provider/Web3ContextProvider.js +0 -36
- package/build/src/provider/Web3ContextProvider.js.map +0 -1
- package/build/src/stateStore.js +0 -36
- package/build/src/stateStore.js.map +0 -1
- package/build/src/styles/defaultTheme.js +0 -80
- package/build/src/styles/defaultTheme.js.map +0 -1
- package/build/src/styles/index.js +0 -313
- package/build/src/styles/index.js.map +0 -1
- package/build/src/styles/styled/index.js +0 -6
- package/build/src/styles/styled/index.js.map +0 -1
- package/build/src/styles/themes/base.js +0 -141
- package/build/src/styles/themes/base.js.map +0 -1
- package/build/src/styles/themes/index.js +0 -13
- package/build/src/styles/themes/index.js.map +0 -1
- package/build/src/styles/themes/midnight.js +0 -76
- package/build/src/styles/themes/midnight.js.map +0 -1
- package/build/src/styles/themes/minimal.js +0 -96
- package/build/src/styles/themes/minimal.js.map +0 -1
- package/build/src/styles/themes/nouns.js +0 -81
- package/build/src/styles/themes/nouns.js.map +0 -1
- package/build/src/styles/themes/retro.js +0 -106
- package/build/src/styles/themes/retro.js.map +0 -1
- package/build/src/styles/themes/rounded.js +0 -106
- package/build/src/styles/themes/rounded.js.map +0 -1
- package/build/src/styles/themes/soft.js +0 -71
- package/build/src/styles/themes/soft.js.map +0 -1
- package/build/src/styles/themes/web95.js +0 -132
- package/build/src/styles/themes/web95.js.map +0 -1
- package/build/src/utils/exports.js +0 -6
- package/build/src/utils/exports.js.map +0 -1
- package/build/src/utils/format.js +0 -48
- package/build/src/utils/format.js.map +0 -1
- package/build/src/utils/index.js +0 -42
- package/build/src/utils/index.js.map +0 -1
- package/build/src/utils/p3.js +0 -15
- package/build/src/utils/p3.js.map +0 -1
- package/build/src/utils/platform.js +0 -11
- package/build/src/utils/platform.js.map +0 -1
- package/build/src/utils/polling.js +0 -44
- package/build/src/utils/polling.js.map +0 -1
- package/build/src/utils/supportUrl.js +0 -16
- package/build/src/utils/supportUrl.js.map +0 -1
- package/build/src/utils/trpc.js +0 -19
- package/build/src/utils/trpc.js.map +0 -1
- package/build/src/utils/validateInput.js +0 -16
- package/build/src/utils/validateInput.js.map +0 -1
- package/build/src/wallets/index.js +0 -21
- package/build/src/wallets/index.js.map +0 -1
- package/build/src/wallets/useWallets.js +0 -278
- package/build/src/wallets/useWallets.js.map +0 -1
- package/build/src/wallets/walletConfigs.js +0 -190
- package/build/src/wallets/walletConfigs.js.map +0 -1
- package/build/src/world-mini-app/WorldPayButton.js +0 -165
- package/build/src/world-mini-app/WorldPayButton.js.map +0 -1
- package/build/src/world-mini-app/promptWorldPayment.js +0 -59
- package/build/src/world-mini-app/promptWorldPayment.js.map +0 -1
- package/build/src/world-mini-app/useWithdrawToWorld.js +0 -76
- package/build/src/world-mini-app/useWithdrawToWorld.js.map +0 -1
- package/build/src/world-mini-app/useWorldSignIn.js +0 -74
- package/build/src/world-mini-app/useWorldSignIn.js.map +0 -1
- package/build/src/world.js +0 -4
- package/build/src/world.js.map +0 -1
- package/build/types-26343050.d.ts +0 -65
- package/build/world.d.ts +0 -108
|
@@ -1 +0,0 @@
|
|
|
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 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 const { paymentState } = usePayContext();\n const { tokenMode } = paymentState;\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 {tokenMode !== \"all\" && <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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"}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
-
import { useState } from 'react';
|
|
3
|
-
import { ROUTES } from '../../../constants/routes.js';
|
|
4
|
-
import { usePayContext } from '../../../hooks/usePayContext.js';
|
|
5
|
-
import { PageContent, ModalContent } from '../../Common/Modal/styles.js';
|
|
6
|
-
import { useDaimoPay } from '../../../hooks/useDaimoPay.js';
|
|
7
|
-
import useIsMobile from '../../../hooks/useIsMobile.js';
|
|
8
|
-
import styled from '../../../styles/styled/index.js';
|
|
9
|
-
import { USD_DECIMALS } from '../../../utils/format.js';
|
|
10
|
-
import { isValidNumber, sanitizeNumber } from '../../../utils/validateInput.js';
|
|
11
|
-
import { isExternalWallet } from '../../../wallets/useWallets.js';
|
|
12
|
-
import AmountInputField from '../../Common/AmountInput/AmountInputField.js';
|
|
13
|
-
import Button from '../../Common/Button/index.js';
|
|
14
|
-
import WalletPaymentSpinner from '../../Spinners/WalletPaymentSpinner/index.js';
|
|
15
|
-
|
|
16
|
-
const SelectWalletAmount = () => {
|
|
17
|
-
const { paymentState, setPendingConnectorId, setRoute } = usePayContext();
|
|
18
|
-
const { selectedWallet, openInWalletBrowser } = paymentState;
|
|
19
|
-
const {
|
|
20
|
-
setChosenUsd,
|
|
21
|
-
hydrateOrder,
|
|
22
|
-
paymentState: payFsmState
|
|
23
|
-
} = useDaimoPay();
|
|
24
|
-
const { isMobile } = useIsMobile();
|
|
25
|
-
const maxUsdLimit = paymentState.getOrderUsdLimit();
|
|
26
|
-
const [usdInput, setUsdInput] = useState("");
|
|
27
|
-
const [continueDisabled, setContinueDisabled] = useState(true);
|
|
28
|
-
if (selectedWallet == null) {
|
|
29
|
-
return /* @__PURE__ */ jsx(PageContent, {});
|
|
30
|
-
}
|
|
31
|
-
const walletId = selectedWallet?.id;
|
|
32
|
-
const handleAmountChange = (e) => {
|
|
33
|
-
const value = e.target.value;
|
|
34
|
-
if (value !== "" && !isValidNumber(value, USD_DECIMALS)) return;
|
|
35
|
-
setUsdInput(value);
|
|
36
|
-
const usd = Number(sanitizeNumber(value));
|
|
37
|
-
setContinueDisabled(usd <= 0 || usd > maxUsdLimit);
|
|
38
|
-
};
|
|
39
|
-
const handleContinue = async () => {
|
|
40
|
-
const amountUsd = Number(sanitizeNumber(usdInput));
|
|
41
|
-
setChosenUsd(amountUsd);
|
|
42
|
-
if (isExternalWallet(selectedWallet) && !isMobile) {
|
|
43
|
-
await hydrateOrder();
|
|
44
|
-
setPendingConnectorId(walletId);
|
|
45
|
-
setRoute(ROUTES.CONNECT);
|
|
46
|
-
} else {
|
|
47
|
-
await openInWalletBrowser(selectedWallet, amountUsd);
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
return /* @__PURE__ */ jsxs(PageContent, { children: [
|
|
51
|
-
/* @__PURE__ */ jsx(
|
|
52
|
-
WalletPaymentSpinner,
|
|
53
|
-
{
|
|
54
|
-
logo: selectedWallet.icon,
|
|
55
|
-
logoShape: selectedWallet.iconShape === "square" ? "squircle" : selectedWallet.iconShape || "squircle"
|
|
56
|
-
}
|
|
57
|
-
),
|
|
58
|
-
/* @__PURE__ */ jsxs(ModalContent, { $preserveDisplay: true, children: [
|
|
59
|
-
/* @__PURE__ */ jsx(AmountInputContainer, { children: /* @__PURE__ */ jsx(AmountInputField, { value: usdInput, onChange: handleAmountChange }) }),
|
|
60
|
-
/* @__PURE__ */ jsx(Button, { onClick: handleContinue, disabled: continueDisabled, children: "Continue" })
|
|
61
|
-
] })
|
|
62
|
-
] });
|
|
63
|
-
};
|
|
64
|
-
const AmountInputContainer = styled.div`
|
|
65
|
-
display: flex;
|
|
66
|
-
align-items: center;
|
|
67
|
-
justify-content: center;
|
|
68
|
-
`;
|
|
69
|
-
|
|
70
|
-
export { SelectWalletAmount as default };
|
|
71
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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 useIsMobile from \"../../../hooks/useIsMobile\";\nimport styled from \"../../../styles/styled\";\nimport { USD_DECIMALS } from \"../../../utils/format\";\nimport { isValidNumber, sanitizeNumber } from \"../../../utils/validateInput\";\nimport { isExternalWallet } 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 {\n setChosenUsd,\n hydrateOrder,\n paymentState: payFsmState,\n } = useDaimoPay();\n const { isMobile } = useIsMobile();\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 walletId = selectedWallet?.id;\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\n // External wallets (World, MiniPay, etc.) on desktop show QR code\n if (isExternalWallet(selectedWallet) && !isMobile) {\n await hydrateOrder();\n setPendingConnectorId(walletId!);\n setRoute(ROUTES.CONNECT);\n } else {\n // Regular wallets or mobile: open in wallet browser\n await 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":";;;;;;;;;;;;;;;AAgBA,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,EAAM,MAAA;AAAA,IACJ,YAAA;AAAA,IACA,YAAA;AAAA,IACA,YAAc,EAAA,WAAA;AAAA,MACZ,WAAY,EAAA,CAAA;AAChB,EAAM,MAAA,EAAE,QAAS,EAAA,GAAI,WAAY,EAAA,CAAA;AACjC,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,EAAA,MAAM,WAAW,cAAgB,EAAA,EAAA,CAAA;AAEjC,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;AAGtB,IAAA,IAAI,gBAAiB,CAAA,cAAc,CAAK,IAAA,CAAC,QAAU,EAAA;AACjD,MAAA,MAAM,YAAa,EAAA,CAAA;AACnB,MAAA,qBAAA,CAAsB,QAAS,CAAA,CAAA;AAC/B,MAAA,QAAA,CAAS,OAAO,OAAO,CAAA,CAAA;AAAA,KAClB,MAAA;AAEL,MAAM,MAAA,mBAAA,CAAoB,gBAAgB,SAAS,CAAA,CAAA;AAAA,KACrD;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;;;;"}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
-
import { usePayContext } from '../../../hooks/usePayContext.js';
|
|
3
|
-
import { PageContent, ModalContent } from '../../Common/Modal/styles.js';
|
|
4
|
-
import WalletPaymentSpinner from '../../Spinners/WalletPaymentSpinner/index.js';
|
|
5
|
-
import { Ethereum, Solana } from '../../../assets/chains.js';
|
|
6
|
-
import { ROUTES } from '../../../constants/routes.js';
|
|
7
|
-
import { OptionsList } from '../../Common/OptionsList/index.js';
|
|
8
|
-
|
|
9
|
-
const SelectWalletChain = () => {
|
|
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);
|
|
26
|
-
}
|
|
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")
|
|
40
|
-
}
|
|
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
|
-
] });
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
export { SelectWalletChain as default };
|
|
55
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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;;;;"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { PageContent, ModalH1 } from '../../Common/Modal/styles.js';
|
|
3
|
-
import { ROUTES } from '../../../constants/routes.js';
|
|
4
|
-
import { usePayContext } from '../../../hooks/usePayContext.js';
|
|
5
|
-
import { OptionsList } from '../../Common/OptionsList/index.js';
|
|
6
|
-
import { OrderHeader } from '../../Common/OrderHeader/index.js';
|
|
7
|
-
|
|
8
|
-
const SelectZKP = () => {
|
|
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
|
-
] });
|
|
38
|
-
};
|
|
39
|
-
|
|
40
|
-
export { SelectZKP as default };
|
|
41
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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;;;;"}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
-
import { useEffect } from 'react';
|
|
3
|
-
import { PageContent, ModalContent, ModalH1, ModalBody } from '../../../Common/Modal/styles.js';
|
|
4
|
-
import { useWallet } from '@solana/wallet-adapter-react';
|
|
5
|
-
import { motion, AnimatePresence } from 'framer-motion';
|
|
6
|
-
import { ROUTES } from '../../../../constants/routes.js';
|
|
7
|
-
import { usePayContext } from '../../../../hooks/usePayContext.js';
|
|
8
|
-
import styled from '../../../../styles/styled/index.js';
|
|
9
|
-
import { walletConfigs } from '../../../../wallets/walletConfigs.js';
|
|
10
|
-
import SquircleSpinner from '../../../Spinners/SquircleSpinner/index.js';
|
|
11
|
-
|
|
12
|
-
const ConnectSolana = () => {
|
|
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
|
|
48
|
-
};
|
|
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
|
-
] });
|
|
72
|
-
};
|
|
73
|
-
const LoadingContainer = styled(motion.div)`
|
|
74
|
-
display: flex;
|
|
75
|
-
align-items: center;
|
|
76
|
-
justify-content: center;
|
|
77
|
-
margin: 10px auto 16px;
|
|
78
|
-
height: 120px;
|
|
79
|
-
`;
|
|
80
|
-
const AnimationContainer = styled(motion.div)`
|
|
81
|
-
user-select: none;
|
|
82
|
-
position: relative;
|
|
83
|
-
--spinner-error-opacity: 0;
|
|
84
|
-
&:before {
|
|
85
|
-
content: "";
|
|
86
|
-
position: absolute;
|
|
87
|
-
inset: 1px;
|
|
88
|
-
opacity: 0;
|
|
89
|
-
background: var(--ck-body-color-danger);
|
|
90
|
-
}
|
|
91
|
-
`;
|
|
92
|
-
|
|
93
|
-
export { LoadingContainer, ConnectSolana as default };
|
|
94
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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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"}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
-
import { useState, useEffect } from 'react';
|
|
3
|
-
import { ROUTES } from '../../../../constants/routes.js';
|
|
4
|
-
import { usePayContext } from '../../../../hooks/usePayContext.js';
|
|
5
|
-
import { WalletSignTransactionError, WalletSendTransactionError } from '@solana/wallet-adapter-base';
|
|
6
|
-
import { PageContent, ModalContent, ModalH1, Link } from '../../../Common/Modal/styles.js';
|
|
7
|
-
import { getChainExplorerTxUrl, solana } from '@daimo/pay-common';
|
|
8
|
-
import { useDaimoPay } from '../../../../hooks/useDaimoPay.js';
|
|
9
|
-
import { getSupportUrl } from '../../../../utils/supportUrl.js';
|
|
10
|
-
import Button from '../../../Common/Button/index.js';
|
|
11
|
-
import PaymentBreakdown from '../../../Common/PaymentBreakdown/index.js';
|
|
12
|
-
import TokenLogoSpinner from '../../../Spinners/TokenLogoSpinner/index.js';
|
|
13
|
-
|
|
14
|
-
const PayWithSolanaToken = () => {
|
|
15
|
-
const { triggerResize, paymentState, setRoute, log, trpc } = usePayContext();
|
|
16
|
-
const { selectedSolanaTokenOption, payWithSolanaToken } = paymentState;
|
|
17
|
-
const { order } = useDaimoPay();
|
|
18
|
-
const [payState, setPayStateInner] = useState(
|
|
19
|
-
"Waiting For Payment" /* RequestingPayment */
|
|
20
|
-
);
|
|
21
|
-
const setPayState = (state) => {
|
|
22
|
-
setPayStateInner(state);
|
|
23
|
-
log(`[PAY SOLANA TOKEN] payState: ${state}`);
|
|
24
|
-
trpc.nav.mutate({
|
|
25
|
-
action: "pay-with-solana-token-state",
|
|
26
|
-
data: { state }
|
|
27
|
-
});
|
|
28
|
-
};
|
|
29
|
-
const [txURL, setTxURL] = useState();
|
|
30
|
-
const handleTransfer = async (option) => {
|
|
31
|
-
setPayState("Waiting For Payment" /* RequestingPayment */);
|
|
32
|
-
try {
|
|
33
|
-
const result = await payWithSolanaToken(option.required.token.token);
|
|
34
|
-
setTxURL(getChainExplorerTxUrl(solana.chainId, result.txHash));
|
|
35
|
-
if (result.success) {
|
|
36
|
-
setPayState("Payment Successful" /* RequestSuccessful */);
|
|
37
|
-
setTimeout(() => {
|
|
38
|
-
setRoute(ROUTES.CONFIRMATION, { event: "wait-pay-with-solana" });
|
|
39
|
-
}, 200);
|
|
40
|
-
} else {
|
|
41
|
-
setPayState("Payment Failed" /* RequestFailed */);
|
|
42
|
-
}
|
|
43
|
-
} catch (error) {
|
|
44
|
-
console.error(error);
|
|
45
|
-
if (error instanceof WalletSignTransactionError || error instanceof WalletSendTransactionError) {
|
|
46
|
-
setPayState("Payment Cancelled" /* RequestCancelled */);
|
|
47
|
-
} else {
|
|
48
|
-
setPayState("Payment Failed" /* RequestFailed */);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
};
|
|
52
|
-
useEffect(() => {
|
|
53
|
-
if (!selectedSolanaTokenOption) return;
|
|
54
|
-
const transferTimeout = setTimeout(
|
|
55
|
-
() => handleTransfer(selectedSolanaTokenOption),
|
|
56
|
-
100
|
|
57
|
-
);
|
|
58
|
-
return () => clearTimeout(transferTimeout);
|
|
59
|
-
}, [selectedSolanaTokenOption]);
|
|
60
|
-
useEffect(() => {
|
|
61
|
-
triggerResize();
|
|
62
|
-
}, [payState]);
|
|
63
|
-
if (selectedSolanaTokenOption == null) {
|
|
64
|
-
return /* @__PURE__ */ jsx(PageContent, {});
|
|
65
|
-
}
|
|
66
|
-
return /* @__PURE__ */ jsxs(PageContent, { children: [
|
|
67
|
-
selectedSolanaTokenOption && /* @__PURE__ */ jsx(TokenLogoSpinner, { token: selectedSolanaTokenOption.required.token }),
|
|
68
|
-
/* @__PURE__ */ jsxs(ModalContent, { style: { paddingBottom: 0 }, children: [
|
|
69
|
-
txURL ? /* @__PURE__ */ jsx(ModalH1, { children: /* @__PURE__ */ jsx(Link, { href: txURL, target: "_blank", rel: "noopener noreferrer", children: payState }) }) : /* @__PURE__ */ jsx(ModalH1, { children: payState }),
|
|
70
|
-
/* @__PURE__ */ jsx(PaymentBreakdown, { paymentOption: selectedSolanaTokenOption }),
|
|
71
|
-
payState === "Payment Cancelled" /* RequestCancelled */ && /* @__PURE__ */ jsx(Button, { onClick: () => handleTransfer(selectedSolanaTokenOption), children: "Retry Payment" }),
|
|
72
|
-
payState === "Payment Failed" /* RequestFailed */ && /* @__PURE__ */ jsx(
|
|
73
|
-
Button,
|
|
74
|
-
{
|
|
75
|
-
onClick: () => {
|
|
76
|
-
window.open(
|
|
77
|
-
getSupportUrl(
|
|
78
|
-
order?.id?.toString() ?? "",
|
|
79
|
-
`Pay with Solana token${txURL ? ` ${txURL}` : ""}`
|
|
80
|
-
),
|
|
81
|
-
"_blank"
|
|
82
|
-
);
|
|
83
|
-
},
|
|
84
|
-
children: "Contact Support"
|
|
85
|
-
}
|
|
86
|
-
)
|
|
87
|
-
] })
|
|
88
|
-
] });
|
|
89
|
-
};
|
|
90
|
-
|
|
91
|
-
export { PayWithSolanaToken as default };
|
|
92
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/components/Pages/Solana/PayWithSolanaToken/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from \"react\";\nimport { ROUTES } from \"../../../../constants/routes\";\nimport { usePayContext } from \"../../../../hooks/usePayContext\";\n\nimport {\n WalletSendTransactionError,\n WalletSignTransactionError,\n} from \"@solana/wallet-adapter-base\";\nimport {\n Link,\n ModalContent,\n ModalH1,\n PageContent,\n} from \"../../../Common/Modal/styles\";\n\nimport {\n getChainExplorerTxUrl,\n solana,\n WalletPaymentOption,\n} from \"@daimo/pay-common\";\nimport { useDaimoPay } from \"../../../../hooks/useDaimoPay\";\nimport { getSupportUrl } from \"../../../../utils/supportUrl\";\nimport { TrpcClient } from \"../../../../utils/trpc\";\nimport Button from \"../../../Common/Button\";\nimport PaymentBreakdown from \"../../../Common/PaymentBreakdown\";\nimport TokenLogoSpinner from \"../../../Spinners/TokenLogoSpinner\";\nenum PayState {\n RequestingPayment = \"Waiting For Payment\",\n RequestCancelled = \"Payment Cancelled\",\n RequestFailed = \"Payment Failed\",\n RequestSuccessful = \"Payment Successful\",\n}\n\nconst PayWithSolanaToken: React.FC = () => {\n const { triggerResize, paymentState, setRoute, log, trpc } = usePayContext();\n const { selectedSolanaTokenOption, payWithSolanaToken } = paymentState;\n const { order } = useDaimoPay();\n const [payState, setPayStateInner] = useState<PayState>(\n PayState.RequestingPayment,\n );\n const setPayState = (state: PayState) => {\n setPayStateInner(state);\n log(`[PAY SOLANA TOKEN] payState: ${state}`);\n (trpc as TrpcClient).nav.mutate({\n action: \"pay-with-solana-token-state\",\n data: { state },\n });\n };\n const [txURL, setTxURL] = useState<string | undefined>();\n\n const handleTransfer = async (option: WalletPaymentOption) => {\n setPayState(PayState.RequestingPayment);\n try {\n const result = await payWithSolanaToken(option.required.token.token);\n setTxURL(getChainExplorerTxUrl(solana.chainId, result.txHash));\n if (result.success) {\n setPayState(PayState.RequestSuccessful);\n setTimeout(() => {\n setRoute(ROUTES.CONFIRMATION, { event: \"wait-pay-with-solana\" });\n }, 200);\n } else {\n setPayState(PayState.RequestFailed);\n }\n } catch (error) {\n console.error(error);\n if (\n error instanceof WalletSignTransactionError ||\n error instanceof WalletSendTransactionError\n ) {\n setPayState(PayState.RequestCancelled);\n } else {\n setPayState(PayState.RequestFailed);\n }\n }\n };\n\n useEffect(() => {\n if (!selectedSolanaTokenOption) return;\n\n // Give user time to see the UI before opening\n const transferTimeout = setTimeout(\n () => handleTransfer(selectedSolanaTokenOption),\n 100,\n );\n return () => clearTimeout(transferTimeout);\n }, [selectedSolanaTokenOption]); // eslint-disable-line react-hooks/exhaustive-deps\n\n useEffect(() => {\n triggerResize();\n }, [payState]); // eslint-disable-line react-hooks/exhaustive-deps\n\n if (selectedSolanaTokenOption == null) {\n return <PageContent></PageContent>;\n }\n\n return (\n <PageContent>\n {selectedSolanaTokenOption && (\n <TokenLogoSpinner token={selectedSolanaTokenOption.required.token} />\n )}\n <ModalContent style={{ paddingBottom: 0 }}>\n {txURL ? (\n <ModalH1>\n <Link href={txURL} target=\"_blank\" rel=\"noopener noreferrer\">\n {payState}\n </Link>\n </ModalH1>\n ) : (\n <ModalH1>{payState}</ModalH1>\n )}\n <PaymentBreakdown paymentOption={selectedSolanaTokenOption} />\n {payState === PayState.RequestCancelled && (\n <Button onClick={() => handleTransfer(selectedSolanaTokenOption)}>\n Retry Payment\n </Button>\n )}\n {payState === PayState.RequestFailed && (\n <Button\n onClick={() => {\n window.open(\n getSupportUrl(\n order?.id?.toString() ?? \"\",\n `Pay with Solana token${txURL ? ` ${txURL}` : \"\"}`,\n ),\n \"_blank\",\n );\n }}\n >\n Contact Support\n </Button>\n )}\n </ModalContent>\n </PageContent>\n );\n};\n\nexport default PayWithSolanaToken;\n"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { jsx } from 'react/jsx-runtime';
|
|
2
|
-
import { ROUTES } from '../../../../constants/routes.js';
|
|
3
|
-
import { usePayContext } from '../../../../hooks/usePayContext.js';
|
|
4
|
-
import MultiCurrencySelectAmount from '../../../Common/AmountInput/index.js';
|
|
5
|
-
import { PageContent } from '../../../Common/Modal/styles.js';
|
|
6
|
-
|
|
7
|
-
const SelectSolanaAmount = () => {
|
|
8
|
-
const { paymentState } = usePayContext();
|
|
9
|
-
const { selectedSolanaTokenOption, setSelectedSolanaTokenOption } = paymentState;
|
|
10
|
-
if (selectedSolanaTokenOption == null) {
|
|
11
|
-
return /* @__PURE__ */ jsx(PageContent, {});
|
|
12
|
-
}
|
|
13
|
-
return /* @__PURE__ */ jsx(
|
|
14
|
-
MultiCurrencySelectAmount,
|
|
15
|
-
{
|
|
16
|
-
selectedTokenOption: selectedSolanaTokenOption,
|
|
17
|
-
setSelectedTokenOption: setSelectedSolanaTokenOption,
|
|
18
|
-
nextPage: ROUTES.SOLANA_PAY_WITH_TOKEN
|
|
19
|
-
}
|
|
20
|
-
);
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
export { SelectSolanaAmount as default };
|
|
24
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/components/Pages/Solana/SelectSolanaAmount/index.tsx"],"sourcesContent":["import React from \"react\";\nimport { ROUTES } from \"../../../../constants/routes\";\nimport { usePayContext } from \"../../../../hooks/usePayContext\";\n\nimport MultiCurrencySelectAmount from \"../../../Common/AmountInput\";\nimport { PageContent } from \"../../../Common/Modal/styles\";\n\nconst SelectSolanaAmount: React.FC = () => {\n const { paymentState } = usePayContext();\n const { selectedSolanaTokenOption, setSelectedSolanaTokenOption } =\n paymentState;\n\n if (selectedSolanaTokenOption == null) {\n return <PageContent></PageContent>;\n }\n\n return (\n <MultiCurrencySelectAmount\n selectedTokenOption={selectedSolanaTokenOption}\n setSelectedTokenOption={setSelectedSolanaTokenOption}\n nextPage={ROUTES.SOLANA_PAY_WITH_TOKEN}\n />\n );\n};\n\nexport default SelectSolanaAmount;\n"],"names":[],"mappings":";;;;;;AAOA,MAAM,qBAA+B,MAAM;AACzC,EAAM,MAAA,EAAE,YAAa,EAAA,GAAI,aAAc,EAAA,CAAA;AACvC,EAAM,MAAA,EAAE,yBAA2B,EAAA,4BAAA,EACjC,GAAA,YAAA,CAAA;AAEF,EAAA,IAAI,6BAA6B,IAAM,EAAA;AACrC,IAAA,2BAAQ,WAAY,EAAA,EAAA,CAAA,CAAA;AAAA,GACtB;AAEA,EACE,uBAAA,GAAA;AAAA,IAAC,yBAAA;AAAA,IAAA;AAAA,MACC,mBAAqB,EAAA,yBAAA;AAAA,MACrB,sBAAwB,EAAA,4BAAA;AAAA,MACxB,UAAU,MAAO,CAAA,qBAAA;AAAA,KAAA;AAAA,GACnB,CAAA;AAEJ;;;;"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
-
import { useConnect, useDisconnect, useAccount } from 'wagmi';
|
|
3
|
-
import ChainSelectList from '../../Common/ChainSelectList/index.js';
|
|
4
|
-
import { PageContent, ModalContent, ModalBody } from '../../Common/Modal/styles.js';
|
|
5
|
-
import useLocales from '../../../hooks/useLocales.js';
|
|
6
|
-
import { DisconnectIcon } from '../../../assets/icons.js';
|
|
7
|
-
import { useChainIsSupported } from '../../../hooks/useChainIsSupported.js';
|
|
8
|
-
import { isSafeConnector } from '../../../utils/index.js';
|
|
9
|
-
import Button from '../../Common/Button/index.js';
|
|
10
|
-
import { OrDivider } from '../../Common/Modal/index.js';
|
|
11
|
-
|
|
12
|
-
const SwitchNetworks = () => {
|
|
13
|
-
const { reset } = useConnect();
|
|
14
|
-
const { disconnect } = useDisconnect();
|
|
15
|
-
const { connector, chain } = useAccount();
|
|
16
|
-
const isChainSupported = useChainIsSupported(chain?.id);
|
|
17
|
-
const locales = useLocales({});
|
|
18
|
-
const onDisconnect = () => {
|
|
19
|
-
disconnect();
|
|
20
|
-
reset();
|
|
21
|
-
};
|
|
22
|
-
return /* @__PURE__ */ jsx(PageContent, { style: { width: 278 }, children: /* @__PURE__ */ jsxs(ModalContent, { style: { padding: 0, marginTop: -10 }, children: [
|
|
23
|
-
!isChainSupported && /* @__PURE__ */ jsxs(ModalBody, { children: [
|
|
24
|
-
locales.warnings_chainUnsupported,
|
|
25
|
-
" ",
|
|
26
|
-
locales.warnings_chainUnsupportedResolve
|
|
27
|
-
] }),
|
|
28
|
-
/* @__PURE__ */ jsx("div", { style: { padding: "6px 8px" }, children: /* @__PURE__ */ jsx(ChainSelectList, { variant: "secondary" }) }),
|
|
29
|
-
!isChainSupported && !isSafeConnector(connector?.id) && /* @__PURE__ */ jsxs("div", { style: { paddingTop: 12 }, children: [
|
|
30
|
-
/* @__PURE__ */ jsx(OrDivider, {}),
|
|
31
|
-
/* @__PURE__ */ jsx(
|
|
32
|
-
Button,
|
|
33
|
-
{
|
|
34
|
-
icon: /* @__PURE__ */ jsx(DisconnectIcon, {}),
|
|
35
|
-
variant: "secondary",
|
|
36
|
-
onClick: onDisconnect,
|
|
37
|
-
children: locales.disconnect
|
|
38
|
-
}
|
|
39
|
-
)
|
|
40
|
-
] })
|
|
41
|
-
] }) });
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
export { SwitchNetworks as default };
|
|
45
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/components/Pages/SwitchNetworks/index.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { useAccount, useConnect, useDisconnect } from \"wagmi\";\nimport ChainSelectList from \"../../Common/ChainSelectList\";\nimport {\n ModalBody,\n ModalContent,\n PageContent,\n} from \"../../Common/Modal/styles\";\n\nimport useLocales from \"../../../hooks/useLocales\";\n\nimport { DisconnectIcon } from \"../../../assets/icons\";\nimport { useChainIsSupported } from \"../../../hooks/useChainIsSupported\";\nimport { isSafeConnector } from \"../../../utils\";\nimport Button from \"../../Common/Button\";\nimport { OrDivider } from \"../../Common/Modal\";\n\nconst SwitchNetworks: React.FC = () => {\n const { reset } = useConnect();\n const { disconnect } = useDisconnect();\n const { connector, chain } = useAccount();\n const isChainSupported = useChainIsSupported(chain?.id);\n\n const locales = useLocales({});\n\n const onDisconnect = () => {\n disconnect();\n reset();\n };\n\n return (\n <PageContent style={{ width: 278 }}>\n <ModalContent style={{ padding: 0, marginTop: -10 }}>\n {!isChainSupported && (\n <ModalBody>\n {locales.warnings_chainUnsupported}{\" \"}\n {locales.warnings_chainUnsupportedResolve}\n </ModalBody>\n )}\n\n <div style={{ padding: \"6px 8px\" }}>\n <ChainSelectList variant=\"secondary\" />\n </div>\n\n {!isChainSupported && !isSafeConnector(connector?.id) && (\n <div style={{ paddingTop: 12 }}>\n <OrDivider />\n <Button\n icon={<DisconnectIcon />}\n variant=\"secondary\"\n onClick={onDisconnect}\n >\n {locales.disconnect}\n </Button>\n </div>\n )}\n </ModalContent>\n </PageContent>\n );\n};\n\nexport default SwitchNetworks;\n"],"names":[],"mappings":";;;;;;;;;;;AAkBA,MAAM,iBAA2B,MAAM;AACrC,EAAM,MAAA,EAAE,KAAM,EAAA,GAAI,UAAW,EAAA,CAAA;AAC7B,EAAM,MAAA,EAAE,UAAW,EAAA,GAAI,aAAc,EAAA,CAAA;AACrC,EAAA,MAAM,EAAE,SAAA,EAAW,KAAM,EAAA,GAAI,UAAW,EAAA,CAAA;AACxC,EAAM,MAAA,gBAAA,GAAmB,mBAAoB,CAAA,KAAA,EAAO,EAAE,CAAA,CAAA;AAEtD,EAAM,MAAA,OAAA,GAAU,UAAW,CAAA,EAAE,CAAA,CAAA;AAE7B,EAAA,MAAM,eAAe,MAAM;AACzB,IAAW,UAAA,EAAA,CAAA;AACX,IAAM,KAAA,EAAA,CAAA;AAAA,GACR,CAAA;AAEA,EAAA,uBACG,GAAA,CAAA,WAAA,EAAA,EAAY,KAAO,EAAA,EAAE,OAAO,GAAI,EAAA,EAC/B,QAAC,kBAAA,IAAA,CAAA,YAAA,EAAA,EAAa,OAAO,EAAE,OAAA,EAAS,CAAG,EAAA,SAAA,EAAW,KAC3C,EAAA,QAAA,EAAA;AAAA,IAAC,CAAA,gBAAA,yBACC,SACE,EAAA,EAAA,QAAA,EAAA;AAAA,MAAQ,OAAA,CAAA,yBAAA;AAAA,MAA2B,GAAA;AAAA,MACnC,OAAQ,CAAA,gCAAA;AAAA,KACX,EAAA,CAAA;AAAA,oBAGF,GAAA,CAAC,KAAI,EAAA,EAAA,KAAA,EAAO,EAAE,OAAA,EAAS,SAAU,EAAA,EAC/B,QAAC,kBAAA,GAAA,CAAA,eAAA,EAAA,EAAgB,OAAQ,EAAA,WAAA,EAAY,CACvC,EAAA,CAAA;AAAA,IAEC,CAAC,gBAAA,IAAoB,CAAC,eAAA,CAAgB,SAAW,EAAA,EAAE,CAClD,oBAAA,IAAA,CAAC,KAAI,EAAA,EAAA,KAAA,EAAO,EAAE,UAAA,EAAY,IACxB,EAAA,QAAA,EAAA;AAAA,sBAAA,GAAA,CAAC,SAAU,EAAA,EAAA,CAAA;AAAA,sBACX,GAAA;AAAA,QAAC,MAAA;AAAA,QAAA;AAAA,UACC,IAAA,sBAAO,cAAe,EAAA,EAAA,CAAA;AAAA,UACtB,OAAQ,EAAA,WAAA;AAAA,UACR,OAAS,EAAA,YAAA;AAAA,UAER,QAAQ,EAAA,OAAA,CAAA,UAAA;AAAA,SAAA;AAAA,OACX;AAAA,KACF,EAAA,CAAA;AAAA,GAAA,EAEJ,CACF,EAAA,CAAA,CAAA;AAEJ;;;;"}
|