@daimo/pay 0.3.17 → 0.3.19
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 +1 -1
- package/build/index.d.ts +419 -0
- package/build/index.es.js +159 -117
- package/build/index.es.js.map +1 -1
- package/package.json +6 -5
- package/build/packages/paykit/packages/connectkit/src/assets/ScanIconWithLogos.d.ts +0 -5
- package/build/packages/paykit/packages/connectkit/src/assets/browsers.d.ts +0 -10
- package/build/packages/paykit/packages/connectkit/src/assets/chains.d.ts +0 -79
- package/build/packages/paykit/packages/connectkit/src/assets/coins.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/assets/crepe.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/assets/icons.d.ts +0 -33
- package/build/packages/paykit/packages/connectkit/src/assets/logos.d.ts +0 -182
- package/build/packages/paykit/packages/connectkit/src/assets/wallet.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/assets/wave.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/components/Common/Alert/index.d.ts +0 -6
- package/build/packages/paykit/packages/connectkit/src/components/Common/Alert/styles.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/components/Common/Alert/types.d.ts +0 -5
- package/build/packages/paykit/packages/connectkit/src/components/Common/Avatar/index.d.ts +0 -16
- package/build/packages/paykit/packages/connectkit/src/components/Common/Avatar/styles.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/components/Common/BrowserIcon/index.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/components/Common/BrowserIcon/styles.d.ts +0 -1
- package/build/packages/paykit/packages/connectkit/src/components/Common/BrowserIcon/types.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Common/Button/index.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/components/Common/Button/styles.d.ts +0 -10
- package/build/packages/paykit/packages/connectkit/src/components/Common/Button/types.d.ts +0 -15
- package/build/packages/paykit/packages/connectkit/src/components/Common/Chain/index.d.ts +0 -8
- package/build/packages/paykit/packages/connectkit/src/components/Common/Chain/styles.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/components/Common/ChainSelect/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Common/ChainSelectDropdown/index.d.ts +0 -9
- package/build/packages/paykit/packages/connectkit/src/components/Common/ChainSelectDropdown/styles.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/components/Common/ChainSelectList/index.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/components/Common/ChainSelectList/styles.d.ts +0 -9
- package/build/packages/paykit/packages/connectkit/src/components/Common/ConnectorList/index.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/components/Common/ConnectorList/styles.d.ts +0 -5
- package/build/packages/paykit/packages/connectkit/src/components/Common/CopyToClipboard/CopyToClipboardIcon.d.ts +0 -6
- package/build/packages/paykit/packages/connectkit/src/components/Common/CopyToClipboard/index.d.ts +0 -7
- package/build/packages/paykit/packages/connectkit/src/components/Common/CustomQRCode/QRCode.d.ts +0 -12
- package/build/packages/paykit/packages/connectkit/src/components/Common/CustomQRCode/index.d.ts +0 -6
- package/build/packages/paykit/packages/connectkit/src/components/Common/CustomQRCode/styles.d.ts +0 -6
- package/build/packages/paykit/packages/connectkit/src/components/Common/CustomQRCode/types.d.ts +0 -8
- package/build/packages/paykit/packages/connectkit/src/components/Common/DynamicContainer/index.d.ts +0 -7
- package/build/packages/paykit/packages/connectkit/src/components/Common/FitText/index.d.ts +0 -8
- package/build/packages/paykit/packages/connectkit/src/components/Common/LazyImage/index.d.ts +0 -8
- package/build/packages/paykit/packages/connectkit/src/components/Common/Logo/index.d.ts +0 -8
- package/build/packages/paykit/packages/connectkit/src/components/Common/Logo/styles.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Common/Modal/index.d.ts +0 -25
- package/build/packages/paykit/packages/connectkit/src/components/Common/Modal/styles.d.ts +0 -24
- package/build/packages/paykit/packages/connectkit/src/components/Common/OptionsList/index.d.ts +0 -13
- package/build/packages/paykit/packages/connectkit/src/components/Common/OptionsList/styles.d.ts +0 -6
- package/build/packages/paykit/packages/connectkit/src/components/Common/OrderHeader/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Common/Portal/index.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/components/Common/PoweredByFooter/index.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/components/Common/ScrollArea/index.d.ts +0 -7
- package/build/packages/paykit/packages/connectkit/src/components/Common/ScrollArea/styles.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Common/Spinner/index.d.ts +0 -1
- package/build/packages/paykit/packages/connectkit/src/components/Common/Spinner/styles.d.ts +0 -1
- package/build/packages/paykit/packages/connectkit/src/components/Common/ThemedButton/index.d.ts +0 -15
- package/build/packages/paykit/packages/connectkit/src/components/Common/ThemedButton/styles.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/components/Common/Tooltip/index.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/components/Common/Tooltip/styles.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Common/Tooltip/types.d.ts +0 -9
- package/build/packages/paykit/packages/connectkit/src/components/DaimoPay.d.ts +0 -77
- package/build/packages/paykit/packages/connectkit/src/components/DaimoPayButton/index.d.ts +0 -44
- package/build/packages/paykit/packages/connectkit/src/components/DaimoPayButton/styles.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/components/DaimoPayModal/ConnectUsing.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/components/DaimoPayModal/ConnectWithInjector/index.d.ts +0 -15
- package/build/packages/paykit/packages/connectkit/src/components/DaimoPayModal/ConnectWithInjector/styles.d.ts +0 -6
- package/build/packages/paykit/packages/connectkit/src/components/DaimoPayModal/ConnectWithQRCode.d.ts +0 -5
- package/build/packages/paykit/packages/connectkit/src/components/DaimoPayModal/index.d.ts +0 -7
- package/build/packages/paykit/packages/connectkit/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.d.ts +0 -16
- package/build/packages/paykit/packages/connectkit/src/components/NetworkButton/index.d.ts +0 -8
- package/build/packages/paykit/packages/connectkit/src/components/Pages/About/graphics.d.ts +0 -11
- package/build/packages/paykit/packages/connectkit/src/components/Pages/About/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/About/styles.d.ts +0 -8
- package/build/packages/paykit/packages/connectkit/src/components/Pages/Confirmation/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/Connectors/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/Connectors/styles.d.ts +0 -9
- package/build/packages/paykit/packages/connectkit/src/components/Pages/DownloadApp/index.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/components/Pages/MobileConnectors/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/MobileConnectors/styles.d.ts +0 -5
- package/build/packages/paykit/packages/connectkit/src/components/Pages/Onboarding/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/Onboarding/styles.d.ts +0 -9
- package/build/packages/paykit/packages/connectkit/src/components/Pages/PayWithToken/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/SelectDepositAddressChain/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/SelectMethod/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/SelectMethod/styles.d.ts +0 -9
- package/build/packages/paykit/packages/connectkit/src/components/Pages/SelectToken/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/Solana/ConnectSolana/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/Solana/ConnectorSolana/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/Solana/PayWithSolanaToken/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/Solana/SelectSolanaToken/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/SwitchNetworks/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/WaitingDepositAddress/index.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/components/Pages/WaitingOther/index.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/components/Spinners/CircleSpinner/index.d.ts +0 -9
- package/build/packages/paykit/packages/connectkit/src/components/Spinners/CircleSpinner/styles.d.ts +0 -5
- package/build/packages/paykit/packages/connectkit/src/components/Spinners/SquircleSpinner/index.d.ts +0 -5
- package/build/packages/paykit/packages/connectkit/src/components/Spinners/SquircleSpinner/styles.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/components/contexts/solana/index.d.ts +0 -6
- package/build/packages/paykit/packages/connectkit/src/components/contexts/web3/index.d.ts +0 -25
- package/build/packages/paykit/packages/connectkit/src/constants/chainConfigs.d.ts +0 -18
- package/build/packages/paykit/packages/connectkit/src/constants/defaultTheme.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/defaultConfig.d.ts +0 -19
- package/build/packages/paykit/packages/connectkit/src/defaultConnectors.d.ts +0 -14
- package/build/packages/paykit/packages/connectkit/src/defaultTransports.d.ts +0 -15
- package/build/packages/paykit/packages/connectkit/src/hooks/connectors/useCoinbaseWalletUri.d.ts +0 -0
- package/build/packages/paykit/packages/connectkit/src/hooks/connectors/useWalletConnectUri.d.ts +0 -7
- package/build/packages/paykit/packages/connectkit/src/hooks/useChainIsSupported.d.ts +0 -1
- package/build/packages/paykit/packages/connectkit/src/hooks/useChains.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/hooks/useConnect.d.ts +0 -119
- package/build/packages/paykit/packages/connectkit/src/hooks/useConnectCallback.d.ts +0 -8
- package/build/packages/paykit/packages/connectkit/src/hooks/useConnectors.d.ts +0 -7
- package/build/packages/paykit/packages/connectkit/src/hooks/useDaimoPayStatus.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/hooks/useDepositAddressOptions.d.ts +0 -7
- package/build/packages/paykit/packages/connectkit/src/hooks/useEnsFallbackConfig.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/hooks/useExternalPaymentOptions.d.ts +0 -9
- package/build/packages/paykit/packages/connectkit/src/hooks/useFitText.d.ts +0 -14
- package/build/packages/paykit/packages/connectkit/src/hooks/useFocusTrap.d.ts +0 -1
- package/build/packages/paykit/packages/connectkit/src/hooks/useGoogleFont.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/hooks/useIsMobile.d.ts +0 -1
- package/build/packages/paykit/packages/connectkit/src/hooks/useIsMounted.d.ts +0 -1
- package/build/packages/paykit/packages/connectkit/src/hooks/useLastConnector.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/hooks/useLocalStorage.d.ts +0 -7
- package/build/packages/paykit/packages/connectkit/src/hooks/useLocales.d.ts +0 -1
- package/build/packages/paykit/packages/connectkit/src/hooks/useLockBodyScroll.d.ts +0 -1
- package/build/packages/paykit/packages/connectkit/src/hooks/useModal.d.ts +0 -10
- package/build/packages/paykit/packages/connectkit/src/hooks/usePayWithSolanaToken.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/hooks/usePaymentInfo.d.ts +0 -46
- package/build/packages/paykit/packages/connectkit/src/hooks/usePrevious.d.ts +0 -1
- package/build/packages/paykit/packages/connectkit/src/hooks/useSolanaPaymentOptions.d.ts +0 -9
- package/build/packages/paykit/packages/connectkit/src/hooks/useWalletConnectModal.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/hooks/useWalletPaymentOptions.d.ts +0 -11
- package/build/packages/paykit/packages/connectkit/src/hooks/useWindowSize.d.ts +0 -4
- package/build/packages/paykit/packages/connectkit/src/index.d.ts +0 -12
- package/build/packages/paykit/packages/connectkit/src/localizations/index.d.ts +0 -93
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/ar-AE.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/ca-AD.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/ee-EE.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/en-US.d.ts +0 -93
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/es-ES.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/fa-IR.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/fr-FR.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/index.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/ja-JP.d.ts +0 -93
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/pt-BR.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/ru-RU.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/tr-TR.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/vi-VN.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/localizations/locales/zh-CN.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/styles/defaultTheme.d.ts +0 -3
- package/build/packages/paykit/packages/connectkit/src/styles/index.d.ts +0 -1
- package/build/packages/paykit/packages/connectkit/src/styles/styled/index.d.ts +0 -12
- package/build/packages/paykit/packages/connectkit/src/styles/themes/base.d.ts +0 -129
- package/build/packages/paykit/packages/connectkit/src/styles/themes/index.d.ts +0 -673
- package/build/packages/paykit/packages/connectkit/src/styles/themes/midnight.d.ts +0 -74
- package/build/packages/paykit/packages/connectkit/src/styles/themes/minimal.d.ts +0 -94
- package/build/packages/paykit/packages/connectkit/src/styles/themes/nouns.d.ts +0 -79
- package/build/packages/paykit/packages/connectkit/src/styles/themes/retro.d.ts +0 -89
- package/build/packages/paykit/packages/connectkit/src/styles/themes/rounded.d.ts +0 -86
- package/build/packages/paykit/packages/connectkit/src/styles/themes/soft.d.ts +0 -69
- package/build/packages/paykit/packages/connectkit/src/styles/themes/web95.d.ts +0 -91
- package/build/packages/paykit/packages/connectkit/src/styles/types.d.ts +0 -80
- package/build/packages/paykit/packages/connectkit/src/types.d.ts +0 -44
- package/build/packages/paykit/packages/connectkit/src/utils/index.d.ts +0 -17
- package/build/packages/paykit/packages/connectkit/src/utils/localstorage.d.ts +0 -9
- package/build/packages/paykit/packages/connectkit/src/utils/p3.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/utils/platform.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/utils/trpc.d.ts +0 -2
- package/build/packages/paykit/packages/connectkit/src/utils/wallets.d.ts +0 -24
- package/build/packages/paykit/packages/connectkit/src/wallets/index.d.ts +0 -7
- package/build/packages/paykit/packages/connectkit/src/wallets/useWallets.d.ts +0 -9
- package/build/packages/paykit/packages/connectkit/src/wallets/walletConfigs.d.ts +0 -30
package/build/index.es.js
CHANGED
|
@@ -10,8 +10,8 @@ import styled$1, { css, keyframes, ThemeProvider } from 'styled-components';
|
|
|
10
10
|
import { ethereum, erc20Abi, getChainName, arbitrum as arbitrum$1, base as base$2, optimism as optimism$1, polygon as polygon$1, ethereumSepolia, baseSepolia as baseSepolia$1, linea as linea$1, bsc as bsc$1, getChainExplorerTxUrl } from '@daimo/contract';
|
|
11
11
|
import { hexToBytes, zeroAddress, getAddress, parseUnits } from 'viem';
|
|
12
12
|
import { useConnection, useWallet as useWallet$1, ConnectionProvider, WalletProvider } from '@solana/wallet-adapter-react';
|
|
13
|
-
import { createTRPCClient, httpBatchLink } from '@trpc/client';
|
|
14
13
|
import { VersionedTransaction } from '@solana/web3.js';
|
|
14
|
+
import { createTRPCClient, httpBatchLink } from '@trpc/client';
|
|
15
15
|
import { motion, AnimatePresence, MotionConfig } from 'framer-motion';
|
|
16
16
|
import { createPortal } from 'react-dom';
|
|
17
17
|
import { useTransition } from 'react-transition-state';
|
|
@@ -75,6 +75,7 @@ const REQUIRED_CHAINS = [
|
|
|
75
75
|
sepolia,
|
|
76
76
|
baseSepolia,
|
|
77
77
|
];
|
|
78
|
+
/** A utility for use with wagmi's createConfig(). */
|
|
78
79
|
const defaultConfig = ({ appName = "Daimo Pay", appIcon, appDescription, appUrl, walletConnectProjectId, coinbaseWalletPreference, chains = REQUIRED_CHAINS, client, ...props }) => {
|
|
79
80
|
globalAppName = appName;
|
|
80
81
|
const paddedChains = [...chains];
|
|
@@ -654,6 +655,7 @@ const walletConfigs = {
|
|
|
654
655
|
},
|
|
655
656
|
};
|
|
656
657
|
|
|
658
|
+
// export type WalletIds = Extract<keyof typeof walletConfigs, string>;
|
|
657
659
|
const wallets = Object.keys(walletConfigs).reduce((acc, key) => {
|
|
658
660
|
const config = walletConfigs[key];
|
|
659
661
|
if (!config?.getWalletConnectDeeplink)
|
|
@@ -767,6 +769,7 @@ const defaultTheme$1 = {
|
|
|
767
769
|
},
|
|
768
770
|
};
|
|
769
771
|
|
|
772
|
+
/** Determines whether the current wagmi configuration supports a given chain. */
|
|
770
773
|
function useChainIsSupported(chainId) {
|
|
771
774
|
const { chains } = useConfig();
|
|
772
775
|
if (!chainId)
|
|
@@ -774,6 +777,7 @@ function useChainIsSupported(chainId) {
|
|
|
774
777
|
return chains.some((x) => x.id === chainId);
|
|
775
778
|
}
|
|
776
779
|
|
|
780
|
+
/** Returns currently configured wagmi chains. */
|
|
777
781
|
function useChains() {
|
|
778
782
|
const wagmi = useConfig();
|
|
779
783
|
const chains = wagmi?.chains ?? [];
|
|
@@ -813,9 +817,12 @@ function useGoogleFont(font) {
|
|
|
813
817
|
document.head.appendChild(gstatic);
|
|
814
818
|
document.head.appendChild(link);
|
|
815
819
|
return () => {
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
820
|
+
try {
|
|
821
|
+
document.head.removeChild(googleapis);
|
|
822
|
+
document.head.removeChild(gstatic);
|
|
823
|
+
document.head.removeChild(link);
|
|
824
|
+
}
|
|
825
|
+
catch { }
|
|
819
826
|
};
|
|
820
827
|
}, [font]);
|
|
821
828
|
}
|
|
@@ -843,18 +850,7 @@ function detectPlatform(ua) {
|
|
|
843
850
|
return "other";
|
|
844
851
|
}
|
|
845
852
|
|
|
846
|
-
|
|
847
|
-
// TODO: env var in build
|
|
848
|
-
const apiUrl = "https://pay-api.daimo.xyz";
|
|
849
|
-
const trpc = createTRPCClient({
|
|
850
|
-
links: [
|
|
851
|
-
httpBatchLink({
|
|
852
|
-
url: apiUrl,
|
|
853
|
-
}),
|
|
854
|
-
],
|
|
855
|
-
});
|
|
856
|
-
|
|
857
|
-
function useDepositAddressOptions({ usdRequired, }) {
|
|
853
|
+
function useDepositAddressOptions({ trpc, usdRequired, }) {
|
|
858
854
|
const [options, setOptions] = useState([]);
|
|
859
855
|
const [loading, setLoading] = useState(false);
|
|
860
856
|
useEffect(() => {
|
|
@@ -884,7 +880,7 @@ const DEFAULT_EXTERNAL_PAYMENT_OPTIONS = [
|
|
|
884
880
|
ExternalPaymentOptions.Daimo,
|
|
885
881
|
ExternalPaymentOptions.RampNetwork,
|
|
886
882
|
];
|
|
887
|
-
function useExternalPaymentOptions({ filterIds, usdRequired, platform, }) {
|
|
883
|
+
function useExternalPaymentOptions({ trpc, filterIds, usdRequired, platform, }) {
|
|
888
884
|
const [options, setOptions] = useState([]);
|
|
889
885
|
const [loading, setLoading] = useState(false);
|
|
890
886
|
useEffect(() => {
|
|
@@ -919,7 +915,7 @@ function useExternalPaymentOptions({ filterIds, usdRequired, platform, }) {
|
|
|
919
915
|
};
|
|
920
916
|
}
|
|
921
917
|
|
|
922
|
-
function usePayWithSolanaToken(orderId, setDaimoPayOrder, chosenFinalTokenAmount, platform) {
|
|
918
|
+
function usePayWithSolanaToken({ trpc, orderId, setDaimoPayOrder, chosenFinalTokenAmount, platform, }) {
|
|
923
919
|
const { connection } = useConnection();
|
|
924
920
|
const wallet = useWallet$1();
|
|
925
921
|
const payWithSolanaToken = async (inputToken) => {
|
|
@@ -962,7 +958,7 @@ function usePayWithSolanaToken(orderId, setDaimoPayOrder, chosenFinalTokenAmount
|
|
|
962
958
|
return { payWithSolanaToken };
|
|
963
959
|
}
|
|
964
960
|
|
|
965
|
-
function useSolanaPaymentOptions({ address, usdRequired, }) {
|
|
961
|
+
function useSolanaPaymentOptions({ trpc, address, usdRequired, }) {
|
|
966
962
|
const [options, setOptions] = useState(null);
|
|
967
963
|
const [isLoading, setIsLoading] = useState(false);
|
|
968
964
|
useEffect(() => {
|
|
@@ -995,7 +991,7 @@ function useSolanaPaymentOptions({ address, usdRequired, }) {
|
|
|
995
991
|
};
|
|
996
992
|
}
|
|
997
993
|
|
|
998
|
-
function useWalletPaymentOptions({ address, usdRequired, destChainId, }) {
|
|
994
|
+
function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, }) {
|
|
999
995
|
const [options, setOptions] = useState(null);
|
|
1000
996
|
const [isLoading, setIsLoading] = useState(false);
|
|
1001
997
|
useEffect(() => {
|
|
@@ -1029,7 +1025,7 @@ function useWalletPaymentOptions({ address, usdRequired, destChainId, }) {
|
|
|
1029
1025
|
};
|
|
1030
1026
|
}
|
|
1031
1027
|
|
|
1032
|
-
function usePaymentInfo({ daimoPayOrder, setDaimoPayOrder, setOpen, log, }) {
|
|
1028
|
+
function usePaymentInfo({ trpc, daimoPayOrder, setDaimoPayOrder, setOpen, log, }) {
|
|
1033
1029
|
// Browser state.
|
|
1034
1030
|
const [platform, setPlatform] = useState();
|
|
1035
1031
|
useEffect(() => {
|
|
@@ -1052,23 +1048,33 @@ function usePaymentInfo({ daimoPayOrder, setDaimoPayOrder, setOpen, log, }) {
|
|
|
1052
1048
|
const [modalOptions, setModalOptions] = useState({});
|
|
1053
1049
|
// UI state. Selection for external payment (Binance, etc) vs wallet payment.
|
|
1054
1050
|
const externalPaymentOptions = useExternalPaymentOptions({
|
|
1051
|
+
trpc,
|
|
1055
1052
|
filterIds: daimoPayOrder?.metadata.payer?.paymentOptions,
|
|
1056
1053
|
usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd,
|
|
1057
1054
|
platform,
|
|
1058
1055
|
});
|
|
1059
1056
|
const walletPaymentOptions = useWalletPaymentOptions({
|
|
1057
|
+
trpc,
|
|
1060
1058
|
address: senderAddr,
|
|
1061
1059
|
usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd,
|
|
1062
1060
|
destChainId: daimoPayOrder?.destFinalCallTokenAmount.token.chainId,
|
|
1063
1061
|
});
|
|
1064
1062
|
const solanaPaymentOptions = useSolanaPaymentOptions({
|
|
1063
|
+
trpc,
|
|
1065
1064
|
address: solanaPubKey,
|
|
1066
1065
|
usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd,
|
|
1067
1066
|
});
|
|
1068
1067
|
const depositAddressOptions = useDepositAddressOptions({
|
|
1068
|
+
trpc,
|
|
1069
1069
|
usdRequired: daimoPayOrder?.destFinalCallTokenAmount.usd ?? 0,
|
|
1070
1070
|
});
|
|
1071
|
-
const { payWithSolanaToken } = usePayWithSolanaToken(
|
|
1071
|
+
const { payWithSolanaToken } = usePayWithSolanaToken({
|
|
1072
|
+
trpc,
|
|
1073
|
+
orderId: daimoPayOrder?.id ?? undefined,
|
|
1074
|
+
setDaimoPayOrder,
|
|
1075
|
+
chosenFinalTokenAmount: daimoPayOrder?.destFinalCallTokenAmount.amount ?? undefined,
|
|
1076
|
+
platform,
|
|
1077
|
+
});
|
|
1072
1078
|
const [selectedExternalOption, setSelectedExternalOption] = useState();
|
|
1073
1079
|
const [selectedTokenOption, setSelectedTokenOption] = useState();
|
|
1074
1080
|
const [selectedSolanaTokenOption, setSelectedSolanaTokenOption] = useState();
|
|
@@ -1222,6 +1228,16 @@ function usePaymentInfo({ daimoPayOrder, setDaimoPayOrder, setOpen, log, }) {
|
|
|
1222
1228
|
};
|
|
1223
1229
|
}
|
|
1224
1230
|
|
|
1231
|
+
function createTrpcClient(apiUrl) {
|
|
1232
|
+
return createTRPCClient({
|
|
1233
|
+
links: [
|
|
1234
|
+
httpBatchLink({
|
|
1235
|
+
url: apiUrl,
|
|
1236
|
+
}),
|
|
1237
|
+
],
|
|
1238
|
+
});
|
|
1239
|
+
}
|
|
1240
|
+
|
|
1225
1241
|
const hexToP3 = (hex) => {
|
|
1226
1242
|
const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
|
|
1227
1243
|
if (result == null)
|
|
@@ -2363,7 +2379,7 @@ const ResetContainer = styled(motion.div) `
|
|
|
2363
2379
|
`;
|
|
2364
2380
|
|
|
2365
2381
|
var name = "@daimo/pay";
|
|
2366
|
-
var version = "0.3.
|
|
2382
|
+
var version = "0.3.19";
|
|
2367
2383
|
var author = "Daimo";
|
|
2368
2384
|
var homepage = "https://pay.daimo.com";
|
|
2369
2385
|
var license = "BSD-2-Clause license";
|
|
@@ -2372,9 +2388,9 @@ var main = "./src/index.ts";
|
|
|
2372
2388
|
var type = "module";
|
|
2373
2389
|
var exports = {
|
|
2374
2390
|
"import": "./build/index.es.js",
|
|
2375
|
-
types: "./build/
|
|
2391
|
+
types: "./build/index.d.ts"
|
|
2376
2392
|
};
|
|
2377
|
-
var types = "./build/
|
|
2393
|
+
var types = "./build/index.d.ts";
|
|
2378
2394
|
var engines = {
|
|
2379
2395
|
node: ">=12.4"
|
|
2380
2396
|
};
|
|
@@ -2385,7 +2401,7 @@ var files = [
|
|
|
2385
2401
|
var scripts = {
|
|
2386
2402
|
start: "rollup --config rollup.config.dev.js -w",
|
|
2387
2403
|
dev: "rollup --config rollup.config.dev.js -w",
|
|
2388
|
-
build: "rollup --config rollup.config.prod.js",
|
|
2404
|
+
build: "rollup --config rollup.config.prod.js && rm -rf build/packages",
|
|
2389
2405
|
lint: "eslint --max-warnings=0"
|
|
2390
2406
|
};
|
|
2391
2407
|
var keywords = [
|
|
@@ -2435,7 +2451,8 @@ var devDependencies = {
|
|
|
2435
2451
|
"@types/react": "^18.2.47",
|
|
2436
2452
|
"@types/react-dom": "^18.2.18",
|
|
2437
2453
|
"@types/styled-components": "^5.1.25",
|
|
2438
|
-
rollup: "^
|
|
2454
|
+
rollup: "^3.29.5",
|
|
2455
|
+
"rollup-plugin-dts": "^6.1.1",
|
|
2439
2456
|
"rollup-plugin-peer-deps-external": "^2.2.4",
|
|
2440
2457
|
"rollup-plugin-typescript2": "^0.34.0",
|
|
2441
2458
|
"rollup-plugin-visualizer": "^5.5.4",
|
|
@@ -3147,7 +3164,7 @@ styled(motion.div) `
|
|
|
3147
3164
|
const useIsomorphicLayoutEffect = typeof window !== "undefined" ? useLayoutEffect : useEffect;
|
|
3148
3165
|
function useLockBodyScroll(initialLocked) {
|
|
3149
3166
|
const [locked, setLocked] = useState(initialLocked);
|
|
3150
|
-
const context =
|
|
3167
|
+
const context = usePayContext();
|
|
3151
3168
|
useIsomorphicLayoutEffect(() => {
|
|
3152
3169
|
if (!locked)
|
|
3153
3170
|
return;
|
|
@@ -4524,7 +4541,7 @@ export const keys = {
|
|
|
4524
4541
|
*/
|
|
4525
4542
|
|
|
4526
4543
|
function useLocales(replacements) {
|
|
4527
|
-
const context =
|
|
4544
|
+
const context = usePayContext();
|
|
4528
4545
|
const language = context.options?.language ?? "en-US";
|
|
4529
4546
|
const translations = useMemo(() => {
|
|
4530
4547
|
return getLocale(language);
|
|
@@ -4626,7 +4643,7 @@ const useWallet = (id) => {
|
|
|
4626
4643
|
};
|
|
4627
4644
|
const useWallets = () => {
|
|
4628
4645
|
const connectors = useConnectors();
|
|
4629
|
-
const context =
|
|
4646
|
+
const context = usePayContext();
|
|
4630
4647
|
const wallets = connectors.map((connector) => {
|
|
4631
4648
|
// use overrides
|
|
4632
4649
|
const walletId = Object.keys(walletConfigs).find(
|
|
@@ -4908,7 +4925,7 @@ const contentVariants$2 = {
|
|
|
4908
4925
|
},
|
|
4909
4926
|
};
|
|
4910
4927
|
const Modal = ({ open, pages, pageId, positionInside, inline, demo, onClose, onBack, onInfo, }) => {
|
|
4911
|
-
const context =
|
|
4928
|
+
const context = usePayContext();
|
|
4912
4929
|
const themeContext = useThemeContext();
|
|
4913
4930
|
const mobile = isMobile();
|
|
4914
4931
|
const { daimoPayOrder, selectedExternalOption, selectedTokenOption, selectedSolanaTokenOption, selectedDepositAddressOption, } = context.paymentInfo;
|
|
@@ -5826,7 +5843,7 @@ const About = () => {
|
|
|
5826
5843
|
const locales = useLocales({
|
|
5827
5844
|
//CONNECTORNAME: connector.name,
|
|
5828
5845
|
});
|
|
5829
|
-
const context =
|
|
5846
|
+
const context = usePayContext();
|
|
5830
5847
|
const ctaUrl = context.options?.ethereumOnboardingUrl ?? locales.aboutScreen_ctaUrl;
|
|
5831
5848
|
const [ready, setReady] = useState(true);
|
|
5832
5849
|
const [slider, setSlider] = useState(0);
|
|
@@ -6528,7 +6545,7 @@ const ConnectorsContainer = styled.div `
|
|
|
6528
6545
|
* additional functionality.
|
|
6529
6546
|
*/
|
|
6530
6547
|
function useConnect({ ...props } = {}) {
|
|
6531
|
-
const context =
|
|
6548
|
+
const context = usePayContext();
|
|
6532
6549
|
const { connect, connectAsync, connectors, ...rest } = useConnect$1({
|
|
6533
6550
|
...props,
|
|
6534
6551
|
mutation: {
|
|
@@ -6566,7 +6583,7 @@ function useConnect({ ...props } = {}) {
|
|
|
6566
6583
|
function useWalletConnectUri({ enabled } = {
|
|
6567
6584
|
enabled: true,
|
|
6568
6585
|
}) {
|
|
6569
|
-
const { log } =
|
|
6586
|
+
const { log } = usePayContext();
|
|
6570
6587
|
const [uri, setUri] = useState(undefined);
|
|
6571
6588
|
const connector = useWalletConnectConnector();
|
|
6572
6589
|
const { isConnected } = useAccount();
|
|
@@ -6850,7 +6867,7 @@ const ScrollAreaContainer = styled.div `
|
|
|
6850
6867
|
|
|
6851
6868
|
const ArrowDown = () => (jsx("svg", { width: "11", height: "12", viewBox: "0 0 11 12", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: jsx("path", { d: "M5.49438 1L5.49438 11M5.49438 11L9.5 7M5.49438 11L1.5 7", stroke: "currentColor", strokeWidth: "1.75", strokeLinecap: "round", strokeLinejoin: "round" }) }));
|
|
6852
6869
|
const ScrollArea = ({ children, height, backgroundColor, mobileDirection, }) => {
|
|
6853
|
-
const { log } =
|
|
6870
|
+
const { log } = usePayContext();
|
|
6854
6871
|
const ref = useRef(null);
|
|
6855
6872
|
const moreRef = useRef(null);
|
|
6856
6873
|
const isMobile = useIsMobile();
|
|
@@ -6975,7 +6992,7 @@ const useLastConnector = () => {
|
|
|
6975
6992
|
};
|
|
6976
6993
|
|
|
6977
6994
|
const ConnectorList = () => {
|
|
6978
|
-
const context =
|
|
6995
|
+
const context = usePayContext();
|
|
6979
6996
|
const isMobile = useIsMobile();
|
|
6980
6997
|
const wallets = useWallets();
|
|
6981
6998
|
const { lastConnectorId } = useLastConnector();
|
|
@@ -6993,7 +7010,7 @@ const ConnectorItem = ({ wallet, isRecent, }) => {
|
|
|
6993
7010
|
const { connect: { getUri }, } = useWeb3();
|
|
6994
7011
|
const uri = getUri();
|
|
6995
7012
|
const isMobile = useIsMobile();
|
|
6996
|
-
const context =
|
|
7013
|
+
const context = usePayContext();
|
|
6997
7014
|
const { connect } = useConnect();
|
|
6998
7015
|
/*
|
|
6999
7016
|
const [ready, setReady] = useState(false);
|
|
@@ -7227,7 +7244,7 @@ const Underline = styled(motion.div) `
|
|
|
7227
7244
|
background-color: var(--ck-body-color-muted);
|
|
7228
7245
|
`;
|
|
7229
7246
|
const OrderHeader = ({ minified = false }) => {
|
|
7230
|
-
const { paymentInfo } =
|
|
7247
|
+
const { paymentInfo } = usePayContext();
|
|
7231
7248
|
const amount = paymentInfo.daimoPayOrder?.destFinalCallTokenAmount.usd.toFixed(2);
|
|
7232
7249
|
const isEditable = paymentInfo.daimoPayOrder?.mode === DaimoPayOrderMode.CHOOSE_AMOUNT;
|
|
7233
7250
|
const [editableAmount, setEditableAmount] = useState(amount ?? "");
|
|
@@ -7381,7 +7398,7 @@ const Logos = styled(motion.div) `
|
|
|
7381
7398
|
`;
|
|
7382
7399
|
|
|
7383
7400
|
const Wallets = () => {
|
|
7384
|
-
const context =
|
|
7401
|
+
const context = usePayContext();
|
|
7385
7402
|
const locales = useLocales({});
|
|
7386
7403
|
const isMobile = useIsMobile();
|
|
7387
7404
|
return (jsxs(PageContent, { children: [jsx(OrderHeader, { minified: true }), jsx(ConnectorList, {}), isMobile ? (jsx(Fragment, { children: jsxs(InfoBox, { children: [jsxs(ModalContent, { style: { padding: 0, textAlign: "left" }, children: [jsx(ModalH1, { "$small": true, children: locales.connectorsScreen_h1 }), jsx(ModalBody, { children: locales.connectorsScreen_p })] }), jsxs(InfoBoxButtons, { children: [!context.options?.hideQuestionMarkCTA && (jsx(Button, { variant: "tertiary", onClick: () => context.setRoute(ROUTES.ABOUT), children: locales.learnMore })), !context.options?.hideNoWalletCTA && (jsx(Button, { variant: "tertiary", onClick: () => context.setRoute(ROUTES.ONBOARDING), children: locales.getWallet }))] })] }) })) : (jsx(Fragment, { children: !context.options?.hideNoWalletCTA && (jsx(LearnMoreContainer, { children: jsxs(LearnMoreButton, { onClick: () => context.setRoute(ROUTES.ONBOARDING), children: [jsx(WalletIcon$1, {}), " ", locales.connectorsScreen_newcomer] }) })) })), context.options?.disclaimer && (jsx(Disclaimer, { style: { visibility: "hidden", pointerEvents: "none" }, children: jsx("div", { children: context.options?.disclaimer }) }))] }));
|
|
@@ -7613,7 +7630,7 @@ const TooltipTail = styled(motion.div) `
|
|
|
7613
7630
|
`;
|
|
7614
7631
|
|
|
7615
7632
|
const Tooltip = ({ children, message, open, xOffset = 0, yOffset = 0, delay, }) => {
|
|
7616
|
-
const context =
|
|
7633
|
+
const context = usePayContext();
|
|
7617
7634
|
const themeContext = useThemeContext();
|
|
7618
7635
|
if (context.options?.hideTooltips)
|
|
7619
7636
|
return jsx(Fragment, { children: children });
|
|
@@ -7793,7 +7810,7 @@ function CustomQRCode({ value, image, imageBackground, imagePosition = "center",
|
|
|
7793
7810
|
CustomQRCode.displayName = "CustomQRCode";
|
|
7794
7811
|
|
|
7795
7812
|
const DownloadApp = () => {
|
|
7796
|
-
const context =
|
|
7813
|
+
const context = usePayContext();
|
|
7797
7814
|
const wallet = useWallet(context.connector.id);
|
|
7798
7815
|
const locales = useLocales({
|
|
7799
7816
|
CONNECTORNAME: wallet?.name,
|
|
@@ -7874,7 +7891,7 @@ const WalletList = styled.div `
|
|
|
7874
7891
|
const Container$4 = styled.div ``;
|
|
7875
7892
|
|
|
7876
7893
|
function useWalletConnectModal() {
|
|
7877
|
-
const { log } =
|
|
7894
|
+
const { log } = usePayContext();
|
|
7878
7895
|
const { connectAsync, connectors } = useConnect();
|
|
7879
7896
|
const [isOpen, setIsOpen] = useState(false);
|
|
7880
7897
|
return {
|
|
@@ -7885,31 +7902,33 @@ function useWalletConnectModal() {
|
|
|
7885
7902
|
w3mcss.innerHTML = `w3m-modal, wcm-modal{ --wcm-z-index: 2147483647; --w3m-z-index:2147483647; }`;
|
|
7886
7903
|
document.head.appendChild(w3mcss);
|
|
7887
7904
|
const clientConnector = connectors.find((c) => isWalletConnectConnector(c.id));
|
|
7888
|
-
if (clientConnector) {
|
|
7905
|
+
if (clientConnector == null) {
|
|
7906
|
+
log("No WalletConnect connector available");
|
|
7907
|
+
return;
|
|
7908
|
+
}
|
|
7909
|
+
try {
|
|
7910
|
+
const provider = await clientConnector.getProvider();
|
|
7911
|
+
const projectId = provider.rpc.projectId;
|
|
7912
|
+
const connector = walletConnect$1({
|
|
7913
|
+
projectId,
|
|
7914
|
+
showQrModal: true,
|
|
7915
|
+
});
|
|
7916
|
+
setIsOpen(true);
|
|
7889
7917
|
try {
|
|
7890
|
-
|
|
7891
|
-
const projectId = provider.rpc.projectId;
|
|
7892
|
-
const connector = walletConnect$1({
|
|
7893
|
-
projectId,
|
|
7894
|
-
showQrModal: true,
|
|
7895
|
-
});
|
|
7896
|
-
setIsOpen(true);
|
|
7897
|
-
try {
|
|
7898
|
-
await connectAsync({ connector: connector });
|
|
7899
|
-
}
|
|
7900
|
-
catch (err) {
|
|
7901
|
-
log("WalletConnect", err);
|
|
7902
|
-
}
|
|
7903
|
-
setIsOpen(false);
|
|
7904
|
-
// remove modal styling
|
|
7905
|
-
document.head.removeChild(w3mcss);
|
|
7918
|
+
await connectAsync({ connector: connector });
|
|
7906
7919
|
}
|
|
7907
7920
|
catch (err) {
|
|
7908
|
-
log("
|
|
7921
|
+
log("WalletConnect", err);
|
|
7922
|
+
}
|
|
7923
|
+
setIsOpen(false);
|
|
7924
|
+
// remove modal styling
|
|
7925
|
+
try {
|
|
7926
|
+
document.head.removeChild(w3mcss);
|
|
7909
7927
|
}
|
|
7928
|
+
catch { }
|
|
7910
7929
|
}
|
|
7911
|
-
|
|
7912
|
-
log("
|
|
7930
|
+
catch (err) {
|
|
7931
|
+
log("Could not get WalletConnect provider", err);
|
|
7913
7932
|
}
|
|
7914
7933
|
},
|
|
7915
7934
|
};
|
|
@@ -8022,7 +8041,7 @@ const CopyToClipboard = ({ string, children, variant }) => {
|
|
|
8022
8041
|
|
|
8023
8042
|
const MoreIcon = (jsx("svg", { width: "60", height: "60", viewBox: "0 0 60 60", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: jsx("path", { d: "M30 42V19M19 30.5H42", stroke: "var(--ck-body-color-muted)", strokeWidth: "3", strokeLinecap: "round" }) }));
|
|
8024
8043
|
const MobileConnectors = () => {
|
|
8025
|
-
const context =
|
|
8044
|
+
const context = usePayContext();
|
|
8026
8045
|
const locales = useLocales();
|
|
8027
8046
|
const { connect: { getUri }, } = useWeb3();
|
|
8028
8047
|
const wcUri = getUri();
|
|
@@ -8303,7 +8322,7 @@ const Logo$2 = styled(motion.div) `
|
|
|
8303
8322
|
var wave = (jsxs("svg", { "aria-hidden": "true", width: "298", height: "188", viewBox: "0 0 298 188", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [jsx("path", { d: "M1 55.2757L21.6438 46.0285C55.5896 30.8228 94.4104 30.8228 128.356 46.0286L169.644 64.5229C203.59 79.7287 242.41 79.7286 276.356 64.5229L297 55.2757M1 44.2118L21.6438 34.9646C55.5896 19.7589 94.4104 19.7589 128.356 34.9646L169.644 53.459C203.59 68.6647 242.41 68.6647 276.356 53.459L297 44.2118M1 33.1477L21.6438 23.9005C55.5896 8.69479 94.4104 8.69479 128.356 23.9005L169.644 42.3949C203.59 57.6006 242.41 57.6006 276.356 42.3949L297 33.1477M1 22.1477L21.6438 12.9005C55.5896 -2.30521 94.4104 -2.30521 128.356 12.9005L169.644 31.3949C203.59 46.6006 242.41 46.6006 276.356 31.3949L297 22.1477M1 66.3398L21.6438 57.0926C55.5896 41.8869 94.4104 41.8869 128.356 57.0926L169.644 75.587C203.59 90.7927 242.41 90.7927 276.356 75.587L297 66.3398M1 77.404L21.6438 68.1568C55.5896 52.9511 94.4104 52.9511 128.356 68.1569L169.644 86.6512C203.59 101.857 242.41 101.857 276.356 86.6512L297 77.404M1 88.4681L21.6438 79.2209C55.5896 64.0152 94.4104 64.0152 128.356 79.2209L169.644 97.7153C203.59 112.921 242.41 112.921 276.356 97.7153L297 88.4681M1 121.66L21.6438 112.413C55.5896 97.2075 94.4104 97.2075 128.356 112.413L169.644 130.908C203.59 146.113 242.41 146.113 276.356 130.908L297 121.66M1 110.596L21.6438 101.349C55.5896 86.1433 94.4104 86.1433 128.356 101.349L169.644 119.843C203.59 135.049 242.41 135.049 276.356 119.843L297 110.596M1 99.5321L21.6438 90.2849C55.5896 75.0792 94.4104 75.0792 128.356 90.2849L169.644 108.779C203.59 123.985 242.41 123.985 276.356 108.779L297 99.5321M1 132.724L21.6438 123.477C55.5896 108.271 94.4104 108.271 128.356 123.477L169.644 141.971C203.59 157.177 242.41 157.177 276.356 141.971L297 132.724M1 143.788L21.6438 134.541C55.5896 119.336 94.4104 119.336 128.356 134.541L169.644 153.036C203.59 168.241 242.41 168.241 276.356 153.036L297 143.788M1 154.853L21.6438 145.605C55.5896 130.4 94.4104 130.4 128.356 145.605L169.644 164.1C203.59 179.305 242.41 179.305 276.356 164.1L297 154.853M1 165.853L21.6438 156.605C55.5896 141.4 94.4104 141.4 128.356 156.605L169.644 175.1C203.59 190.305 242.41 190.305 276.356 175.1L297 165.853", stroke: "url(#paint0_linear_1094_2077)", strokeOpacity: "0.9", strokeLinecap: "round", strokeLinejoin: "round" }), jsx("defs", { children: jsxs("linearGradient", { id: "paint0_linear_1094_2077", x1: "1", y1: "112.587", x2: "297.034", y2: "79.6111", gradientUnits: "userSpaceOnUse", children: [jsx("stop", { stopColor: "var(--ck-graphic-wave-stop-01)" }), jsx("stop", { stopColor: "var(--ck-graphic-wave-stop-02)", offset: "0.239583" }), jsx("stop", { stopColor: "var(--ck-graphic-wave-stop-03)", offset: "0.515625" }), jsx("stop", { stopColor: "var(--ck-graphic-wave-stop-04)", offset: "0.739583" }), jsx("stop", { stopColor: "var(--ck-graphic-wave-stop-05)", offset: "1" })] }) })] }));
|
|
8304
8323
|
|
|
8305
8324
|
const Introduction = () => {
|
|
8306
|
-
const context =
|
|
8325
|
+
const context = usePayContext();
|
|
8307
8326
|
const locales = useLocales({});
|
|
8308
8327
|
const ctaUrl = context.options?.walletOnboardingUrl ?? locales.onboardingScreen_ctaUrl;
|
|
8309
8328
|
return (jsxs(PageContent, { children: [jsxs(Graphic, { children: [jsxs(LogoGroup, { children: [jsx(Logo$2, { children: jsx(LogoPosition, { children: jsx(LogoInner, { children: jsx(FloatWrapper, { children: jsx(RotateWrapper, { children: jsx(LogoGraphic, { children: jsx(Logos$1.Coinbase, { background: true }) }) }) }) }) }) }), jsx(Logo$2, { children: jsx(LogoPosition, { children: jsx(LogoInner, { children: jsx(FloatWrapper, { children: jsx(RotateWrapper, { children: jsx(LogoGraphic, { children: jsx(Logos$1.MetaMask, { background: true }) }) }) }) }) }) }), jsx(Logo$2, { children: jsx(LogoPosition, { children: jsx(LogoInner, { children: jsx(FloatWrapper, { children: jsx(RotateWrapper, { children: jsx(LogoGraphic, { children: jsx(Logos$1.Trust, {}) }) }) }) }) }) }), jsx(Logo$2, { children: jsx(LogoPosition, { children: jsx(LogoInner, { children: jsx(FloatWrapper, { children: jsx(RotateWrapper, { children: jsx(LogoGraphic, { children: jsx(Logos$1.Argent, {}) }) }) }) }) }) }), jsx(Logo$2, { children: jsx(LogoPosition, { children: jsx(LogoInner, { children: jsx(FloatWrapper, { children: jsx(RotateWrapper, { children: jsx(LogoGraphic, { children: jsx(Logos$1.ImToken, {}) }) }) }) }) }) })] }), jsx(GraphicBackground, { children: wave })] }), jsxs(ModalContent, { style: { paddingBottom: 18 }, children: [jsx(ModalH1, { "$small": true, children: locales.onboardingScreen_h1 }), jsx(ModalBody, { children: locales.onboardingScreen_p })] }), jsx(Button, { href: ctaUrl, arrow: true, children: locales.onboardingScreen_ctaText })] }));
|
|
@@ -8846,7 +8865,7 @@ const ChainSelectList = ({ variant, }) => {
|
|
|
8846
8865
|
switchChain({ chainId });
|
|
8847
8866
|
}
|
|
8848
8867
|
};
|
|
8849
|
-
const { triggerResize } =
|
|
8868
|
+
const { triggerResize } = usePayContext();
|
|
8850
8869
|
return (jsxs(SwitchNetworksContainer, { style: { marginBottom: switchChain !== undefined ? -8 : 0 }, children: [jsx(ChainButtonContainer, { children: jsx(ChainButtons, { children: chains.map((x) => {
|
|
8851
8870
|
const c = chainConfigs.find((ch) => ch.id === x.id);
|
|
8852
8871
|
const ch = { ...c, ...x };
|
|
@@ -9385,7 +9404,7 @@ const ConnectWithInjector = ({ switchConnectMethod, forceState }) => {
|
|
|
9385
9404
|
},
|
|
9386
9405
|
},
|
|
9387
9406
|
});
|
|
9388
|
-
const { triggerResize, connector: c } =
|
|
9407
|
+
const { triggerResize, connector: c } = usePayContext();
|
|
9389
9408
|
const id = c.id;
|
|
9390
9409
|
const wallet = useWallet(id);
|
|
9391
9410
|
const walletInfo = {
|
|
@@ -9508,7 +9527,7 @@ const ScanIconWithLogos = ({ logo }) => {
|
|
|
9508
9527
|
};
|
|
9509
9528
|
|
|
9510
9529
|
const ConnectWithQRCode = ({ switchConnectMethod }) => {
|
|
9511
|
-
const context =
|
|
9530
|
+
const context = usePayContext();
|
|
9512
9531
|
const id = context.connector.id;
|
|
9513
9532
|
const wallet = useWallet(context.connector.id);
|
|
9514
9533
|
const { open: openW3M, isOpen: isOpenW3M } = useWalletConnectModal();
|
|
@@ -9570,7 +9589,7 @@ const states = {
|
|
|
9570
9589
|
INJECTOR: "injector",
|
|
9571
9590
|
};
|
|
9572
9591
|
const ConnectUsing = () => {
|
|
9573
|
-
const context =
|
|
9592
|
+
const context = usePayContext();
|
|
9574
9593
|
const wallet = useWallet(context.connector.id);
|
|
9575
9594
|
// If cannot be scanned, display injector flow, which if extension is not installed will show CTA to install it
|
|
9576
9595
|
const isQrCode = !wallet?.isInstalled && wallet?.getWalletConnectDeeplink;
|
|
@@ -9640,7 +9659,7 @@ const TextButton = styled(motion.button) `
|
|
|
9640
9659
|
`;
|
|
9641
9660
|
|
|
9642
9661
|
const Confirmation = () => {
|
|
9643
|
-
const { paymentInfo } =
|
|
9662
|
+
const { paymentInfo } = usePayContext();
|
|
9644
9663
|
const { daimoPayOrder } = paymentInfo;
|
|
9645
9664
|
const { done, txURL } = (() => {
|
|
9646
9665
|
if (daimoPayOrder && daimoPayOrder.mode === DaimoPayOrderMode.HYDRATED) {
|
|
@@ -9740,7 +9759,7 @@ var PayState$1;
|
|
|
9740
9759
|
PayState["RequestSuccessful"] = "Payment Successful";
|
|
9741
9760
|
})(PayState$1 || (PayState$1 = {}));
|
|
9742
9761
|
const PayWithToken = () => {
|
|
9743
|
-
const { triggerResize, paymentInfo, setRoute, log } =
|
|
9762
|
+
const { triggerResize, paymentInfo, setRoute, log } = usePayContext();
|
|
9744
9763
|
const { selectedTokenOption, payWithToken } = paymentInfo;
|
|
9745
9764
|
const [payState, setPayState] = useState(PayState$1.RequestingPayment);
|
|
9746
9765
|
const walletChainId = useChainId();
|
|
@@ -10041,7 +10060,7 @@ const OptionsContainer = styled.div `
|
|
|
10041
10060
|
`;
|
|
10042
10061
|
|
|
10043
10062
|
const OptionsList = ({ options, isLoading, requiredSkeletons, }) => {
|
|
10044
|
-
const { triggerResize, log } =
|
|
10063
|
+
const { triggerResize, log } = usePayContext();
|
|
10045
10064
|
const optionsLength = options.length;
|
|
10046
10065
|
useEffect(() => {
|
|
10047
10066
|
log(`[OPTIONS RESIZE]: ${optionsLength}, triggering resize`);
|
|
@@ -10136,7 +10155,7 @@ const IconStackItem = styled(motion.div) `
|
|
|
10136
10155
|
`;
|
|
10137
10156
|
|
|
10138
10157
|
const SelectDepositAddressChain = () => {
|
|
10139
|
-
const { setRoute, paymentInfo } =
|
|
10158
|
+
const { setRoute, paymentInfo } = usePayContext();
|
|
10140
10159
|
const { setSelectedDepositAddressOption, depositAddressOptions } = paymentInfo;
|
|
10141
10160
|
return (jsxs(PageContent, { children: [jsx(OrderHeader, { minified: true }), !depositAddressOptions.loading &&
|
|
10142
10161
|
depositAddressOptions.options?.length === 0 && (jsxs(ModalContent, { style: {
|
|
@@ -10179,7 +10198,7 @@ function getBestUnconnectedWalletIcons(connector) {
|
|
|
10179
10198
|
}
|
|
10180
10199
|
function getSolanaOption() {
|
|
10181
10200
|
const { wallets } = useWallet$1();
|
|
10182
|
-
const { setRoute } =
|
|
10201
|
+
const { setRoute } = usePayContext();
|
|
10183
10202
|
if (wallets.length === 0)
|
|
10184
10203
|
return null;
|
|
10185
10204
|
return {
|
|
@@ -10192,7 +10211,7 @@ function getSolanaOption() {
|
|
|
10192
10211
|
};
|
|
10193
10212
|
}
|
|
10194
10213
|
function getDepositAddressOption(depositAddressOptions) {
|
|
10195
|
-
const { setRoute } =
|
|
10214
|
+
const { setRoute } = usePayContext();
|
|
10196
10215
|
console.log(`[SELECT_METHOD] depositAddressOptions: ${JSON.stringify(depositAddressOptions)}`);
|
|
10197
10216
|
if (!depositAddressOptions.loading &&
|
|
10198
10217
|
depositAddressOptions.options.length === 0)
|
|
@@ -10211,7 +10230,7 @@ const SelectMethod = () => {
|
|
|
10211
10230
|
const isMobile = useIsMobile();
|
|
10212
10231
|
const { address, isConnected, connector } = useAccount();
|
|
10213
10232
|
const { disconnectAsync } = useDisconnect();
|
|
10214
|
-
const { setRoute, paymentInfo, log } =
|
|
10233
|
+
const { setRoute, paymentInfo, log } = usePayContext();
|
|
10215
10234
|
const { setSelectedExternalOption, externalPaymentOptions, depositAddressOptions, senderEnsName, } = paymentInfo;
|
|
10216
10235
|
const displayName = senderEnsName ?? (address ? getAddressContraction(address) : "wallet");
|
|
10217
10236
|
const connectedWalletOption = isConnected
|
|
@@ -10276,7 +10295,7 @@ const ChainContainer$1 = styled(motion.div) `
|
|
|
10276
10295
|
right: 0px;
|
|
10277
10296
|
`;
|
|
10278
10297
|
const SelectToken = () => {
|
|
10279
|
-
const { setRoute, paymentInfo } =
|
|
10298
|
+
const { setRoute, paymentInfo } = usePayContext();
|
|
10280
10299
|
const { setSelectedTokenOption, walletPaymentOptions } = paymentInfo;
|
|
10281
10300
|
return (jsxs(PageContent, { children: [jsx(OrderHeader, { minified: true }), !walletPaymentOptions.isLoading &&
|
|
10282
10301
|
walletPaymentOptions.options?.length === 0 && (jsxs(ModalContent, { style: {
|
|
@@ -10305,7 +10324,9 @@ const SelectToken = () => {
|
|
|
10305
10324
|
};
|
|
10306
10325
|
|
|
10307
10326
|
const WaitingOther = () => {
|
|
10308
|
-
const
|
|
10327
|
+
const context = usePayContext();
|
|
10328
|
+
const { triggerResize, paymentInfo, setRoute } = context;
|
|
10329
|
+
const trpc = context.trpc;
|
|
10309
10330
|
const { selectedExternalOption, payWithExternal, paymentWaitingMessage, daimoPayOrder, } = paymentInfo;
|
|
10310
10331
|
const [externalURL, setExternalURL] = useState(null);
|
|
10311
10332
|
useEffect(() => {
|
|
@@ -10382,7 +10403,7 @@ const AnimationContainer$2 = styled(motion.div) `
|
|
|
10382
10403
|
const ConnectSolana$1 = () => {
|
|
10383
10404
|
const solanaWallets = useWallet$1();
|
|
10384
10405
|
const isConnected = solanaWallets.connected;
|
|
10385
|
-
const { solanaConnector, setRoute } =
|
|
10406
|
+
const { solanaConnector, setRoute } = usePayContext();
|
|
10386
10407
|
const selectedWallet = solanaWallets.wallets.find((wallet) => wallet.adapter.name === solanaConnector);
|
|
10387
10408
|
useEffect(() => {
|
|
10388
10409
|
if (!solanaConnector)
|
|
@@ -10413,7 +10434,7 @@ const AnimationContainer$1 = styled(motion.div) `
|
|
|
10413
10434
|
`;
|
|
10414
10435
|
|
|
10415
10436
|
const ConnectSolana = () => {
|
|
10416
|
-
const { setSolanaConnector, setRoute } =
|
|
10437
|
+
const { setSolanaConnector, setRoute } = usePayContext();
|
|
10417
10438
|
const solanaWallets = useWallet$1();
|
|
10418
10439
|
const options = solanaWallets.wallets.map((wallet) => ({
|
|
10419
10440
|
id: wallet.adapter.name,
|
|
@@ -10447,7 +10468,7 @@ var PayState;
|
|
|
10447
10468
|
PayState["RequestSuccessful"] = "Payment Successful";
|
|
10448
10469
|
})(PayState || (PayState = {}));
|
|
10449
10470
|
const PayWithSolanaToken = () => {
|
|
10450
|
-
const { triggerResize, paymentInfo, setRoute } =
|
|
10471
|
+
const { triggerResize, paymentInfo, setRoute } = usePayContext();
|
|
10451
10472
|
const { selectedSolanaTokenOption, payWithSolanaToken } = paymentInfo;
|
|
10452
10473
|
const [payState, setPayState] = useState(PayState.RequestingPayment);
|
|
10453
10474
|
const handleTransfer = async () => {
|
|
@@ -10511,7 +10532,7 @@ const AnimationContainer = styled(motion.div) `
|
|
|
10511
10532
|
`;
|
|
10512
10533
|
|
|
10513
10534
|
const SelectSolanaToken = () => {
|
|
10514
|
-
const { paymentInfo, setRoute } =
|
|
10535
|
+
const { paymentInfo, setRoute } = usePayContext();
|
|
10515
10536
|
const { solanaPaymentOptions, setSelectedSolanaTokenOption } = paymentInfo;
|
|
10516
10537
|
return (jsxs(PageContent, { children: [jsx(OrderHeader, { minified: true }), !solanaPaymentOptions.isLoading &&
|
|
10517
10538
|
solanaPaymentOptions.options?.length === 0 && (jsxs(ModalContent, { style: {
|
|
@@ -10539,7 +10560,9 @@ const SelectSolanaToken = () => {
|
|
|
10539
10560
|
};
|
|
10540
10561
|
|
|
10541
10562
|
const WaitingDepositAddress = () => {
|
|
10542
|
-
const
|
|
10563
|
+
const context = usePayContext();
|
|
10564
|
+
const { triggerResize, paymentInfo, setRoute } = context;
|
|
10565
|
+
const trpc = context.trpc;
|
|
10543
10566
|
const { daimoPayOrder, payWithDepositAddress, selectedDepositAddressOption } = paymentInfo;
|
|
10544
10567
|
useEffect(() => {
|
|
10545
10568
|
const checkForSourcePayment = async () => {
|
|
@@ -10576,7 +10599,7 @@ const WaitingDepositAddress = () => {
|
|
|
10576
10599
|
|
|
10577
10600
|
const customThemeDefault = {};
|
|
10578
10601
|
const DaimoPayModal = ({ mode = "auto", theme = "auto", customTheme = customThemeDefault, lang = "en-US", }) => {
|
|
10579
|
-
const context =
|
|
10602
|
+
const context = usePayContext();
|
|
10580
10603
|
const { setSelectedExternalOption, setSelectedTokenOption, setSelectedDepositAddressOption, setSelectedSolanaTokenOption, } = context.paymentInfo;
|
|
10581
10604
|
const { isConnected, chain } = useAccount();
|
|
10582
10605
|
const chainIsSupported = useChainIsSupported(chain?.id);
|
|
@@ -10675,7 +10698,10 @@ const DaimoPayModal = ({ mode = "auto", theme = "auto", customTheme = customThem
|
|
|
10675
10698
|
document.head.prepend(icon);
|
|
10676
10699
|
}*/
|
|
10677
10700
|
return () => {
|
|
10678
|
-
|
|
10701
|
+
try {
|
|
10702
|
+
document.head.removeChild(title);
|
|
10703
|
+
}
|
|
10704
|
+
catch { }
|
|
10679
10705
|
//if (appIcon) document.head.removeChild(icon);
|
|
10680
10706
|
};
|
|
10681
10707
|
}, [context.open]);
|
|
@@ -10709,8 +10735,9 @@ var ROUTES;
|
|
|
10709
10735
|
ROUTES["DOWNLOAD"] = "download";
|
|
10710
10736
|
ROUTES["SWITCHNETWORKS"] = "switchNetworks";
|
|
10711
10737
|
})(ROUTES || (ROUTES = {}));
|
|
10738
|
+
/** Meant for internal use. This will be non-exported in a future SDK version. */
|
|
10712
10739
|
const Context = createContext(null);
|
|
10713
|
-
const DaimoPayProviderWithoutSolana = ({ children, theme = "auto", mode = "auto", customTheme, options, onConnect, onDisconnect, debugMode = false, }) => {
|
|
10740
|
+
const DaimoPayProviderWithoutSolana = ({ children, theme = "auto", mode = "auto", customTheme, options, onConnect, onDisconnect, debugMode = false, payApiUrl = "https://pay-api.daimo.xyz", }) => {
|
|
10714
10741
|
// DaimoPayProvider must be within a WagmiProvider
|
|
10715
10742
|
if (!React.useContext(WagmiContext)) {
|
|
10716
10743
|
throw Error("DaimoPayProvider must be within a WagmiProvider");
|
|
@@ -10794,12 +10821,15 @@ const DaimoPayProviderWithoutSolana = ({ children, theme = "auto", mode = "auto"
|
|
|
10794
10821
|
}
|
|
10795
10822
|
}, [isConnected, isChainSupported, chain, route, open]);
|
|
10796
10823
|
const log = debugMode ? console.log : () => { };
|
|
10824
|
+
// Connect to the Daimo Pay TRPC API
|
|
10825
|
+
const trpc = useMemo(() => createTrpcClient(payApiUrl), [payApiUrl]);
|
|
10797
10826
|
// PaymentInfo is a second, inner context object containing a DaimoPayOrder
|
|
10798
10827
|
// plus all associated status and callbacks. In order for useContext() and
|
|
10799
10828
|
// downstream hooks like useDaimoPayStatus() to work correctly, we must set
|
|
10800
10829
|
// set refresh context when payment status changes; done via setDaimoPayOrder.
|
|
10801
10830
|
const [daimoPayOrder, setDaimoPayOrder] = useState();
|
|
10802
10831
|
const paymentInfo = usePaymentInfo({
|
|
10832
|
+
trpc,
|
|
10803
10833
|
daimoPayOrder,
|
|
10804
10834
|
setDaimoPayOrder,
|
|
10805
10835
|
setOpen,
|
|
@@ -10877,19 +10907,26 @@ const DaimoPayProviderWithoutSolana = ({ children, theme = "auto", mode = "auto"
|
|
|
10877
10907
|
// Below: Daimo Pay context
|
|
10878
10908
|
loadAndShowPayment,
|
|
10879
10909
|
paymentInfo,
|
|
10910
|
+
trpc,
|
|
10880
10911
|
};
|
|
10881
10912
|
return createElement(Context.Provider, { value }, jsx(Web3ContextProvider, { enabled: open, children: jsxs(ThemeProvider, { theme: defaultTheme$1, children: [children, jsx(DaimoPayModal, { lang: ckLang, theme: ckTheme, mode: mode, customTheme: ckCustomTheme })] }) }));
|
|
10882
10913
|
};
|
|
10914
|
+
/** Provides context for DaimoPayButton and hooks. Place in app root, layout, or
|
|
10915
|
+
* similar.
|
|
10916
|
+
*/
|
|
10883
10917
|
const DaimoPayProvider = (props) => {
|
|
10884
10918
|
return (jsx(SolanaContextProvider, { solanaRpcUrl: props.solanaRpcUrl, children: jsx(DaimoPayProviderWithoutSolana, { ...props }) }));
|
|
10885
10919
|
};
|
|
10886
|
-
|
|
10920
|
+
/** Meant for internal use. This will be non-exported in a future SDK version. */
|
|
10921
|
+
const usePayContext = () => {
|
|
10887
10922
|
const context = React.useContext(Context);
|
|
10888
10923
|
if (!context)
|
|
10889
10924
|
throw Error("DaimoPay Hook must be inside a Provider.");
|
|
10890
10925
|
return context;
|
|
10891
10926
|
};
|
|
10892
10927
|
|
|
10928
|
+
/** Utility. Returns false on first render, true after.
|
|
10929
|
+
* Useful for apps with SSR, for example. */
|
|
10893
10930
|
function useIsMounted() {
|
|
10894
10931
|
const [mounted, setMounted] = useState(false);
|
|
10895
10932
|
useEffect(() => setMounted(true), []);
|
|
@@ -11132,9 +11169,10 @@ const contentVariants = {
|
|
|
11132
11169
|
},
|
|
11133
11170
|
},
|
|
11134
11171
|
};
|
|
11172
|
+
/** Like DaimoPayButton, but with custom styling. */
|
|
11135
11173
|
const DaimoPayButtonRenderer = ({ payId, closeOnSuccess, children, }) => {
|
|
11136
11174
|
const isMounted = useIsMounted();
|
|
11137
|
-
const context =
|
|
11175
|
+
const context = usePayContext();
|
|
11138
11176
|
const { address, chain } = useAccount();
|
|
11139
11177
|
const isChainSupported = useChainIsSupported(chain?.id);
|
|
11140
11178
|
const { data: ensName } = useEnsName({
|
|
@@ -11168,15 +11206,18 @@ const DaimoPayButtonRenderer = ({ payId, closeOnSuccess, children, }) => {
|
|
|
11168
11206
|
};
|
|
11169
11207
|
DaimoPayButtonRenderer.displayName = "DaimoPayButton.Custom";
|
|
11170
11208
|
function DaimoPayButtonInner() {
|
|
11171
|
-
const { paymentInfo } =
|
|
11209
|
+
const { paymentInfo } = usePayContext();
|
|
11172
11210
|
const label = paymentInfo?.daimoPayOrder?.metadata?.intent ?? "Pay";
|
|
11173
11211
|
return (jsx(AnimatePresence, { initial: false, children: jsx(TextContainer, { initial: "initial", animate: "animate", exit: "exit", variants: contentVariants, style: {
|
|
11174
11212
|
height: 40,
|
|
11175
11213
|
}, children: label }, "connectWalletText") }));
|
|
11176
11214
|
}
|
|
11215
|
+
/** A button that shows the Daimo Pay checkout. Replaces the traditional
|
|
11216
|
+
* Connect Wallet » approve » execute sequence with a single action.
|
|
11217
|
+
*/
|
|
11177
11218
|
function DaimoPayButton({ payId, theme, mode, customTheme, closeOnSuccess, onClick, }) {
|
|
11178
11219
|
const isMounted = useIsMounted();
|
|
11179
|
-
const context =
|
|
11220
|
+
const context = usePayContext();
|
|
11180
11221
|
// Pre-load payment info in background.
|
|
11181
11222
|
const { setPayId } = context.paymentInfo;
|
|
11182
11223
|
useEffect(() => {
|
|
@@ -11198,7 +11239,7 @@ function DaimoPayButton({ payId, theme, mode, customTheme, closeOnSuccess, onCli
|
|
|
11198
11239
|
DaimoPayButton.Custom = DaimoPayButtonRenderer;
|
|
11199
11240
|
|
|
11200
11241
|
const useModal = ({ onConnect, onDisconnect } = {}) => {
|
|
11201
|
-
const context =
|
|
11242
|
+
const context = usePayContext();
|
|
11202
11243
|
useConnectCallback({
|
|
11203
11244
|
onConnect,
|
|
11204
11245
|
onDisconnect,
|
|
@@ -11295,7 +11336,7 @@ function useEnsFallbackConfig() {
|
|
|
11295
11336
|
|
|
11296
11337
|
const Avatar = ({ address, name, size = 96, radius = 96 }) => {
|
|
11297
11338
|
const isMounted = useIsMounted();
|
|
11298
|
-
const context =
|
|
11339
|
+
const context = usePayContext();
|
|
11299
11340
|
const imageRef = useRef(null);
|
|
11300
11341
|
const [loaded, setLoaded] = useState(true);
|
|
11301
11342
|
const ensFallbackConfig = useEnsFallbackConfig();
|
|
@@ -11448,36 +11489,37 @@ const Chain = ({ id, unsupported: controlledUnsupported, radius = "50%", size =
|
|
|
11448
11489
|
return (jsx(ChainContainer, { size: size, radius: radius, children: jsxs(AnimatePresence, { initial: false, children: [unsupported && (jsx(Unsupported, { initial: { opacity: 0 }, animate: { opacity: 1 }, exit: { opacity: 0 }, children: jsxs("svg", { width: "13", height: "12", viewBox: "0 0 13 12", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [jsx("path", { d: "M2.61317 11.2501H9.46246C10.6009 11.2501 11.3256 10.3506 11.3256 9.3549C11.3256 9.05145 11.255 8.73244 11.0881 8.43303L7.65903 2.14708C7.659 2.14702 7.65897 2.14696 7.65893 2.1469C7.65889 2.14682 7.65884 2.14673 7.65879 2.14664C7.31045 1.50746 6.6741 1.17871 6.04 1.17871C5.41478 1.17871 4.763 1.50043 4.41518 2.14968L0.993416 8.43476C0.828865 8.72426 0.75 9.04297 0.75 9.3549C0.75 10.3506 1.47471 11.2501 2.61317 11.2501Z", fill: "currentColor", stroke: "var(--ck-body-background, #fff)", strokeWidth: "1.5" }), jsx("path", { d: "M6.03258 7.43916C5.77502 7.43916 5.63096 7.29153 5.62223 7.02311L5.55675 4.96973C5.54802 4.69684 5.74446 4.5 6.02821 4.5C6.3076 4.5 6.51277 4.70131 6.50404 4.9742L6.43856 7.01864C6.42546 7.29153 6.2814 7.43916 6.03258 7.43916ZM6.03258 9.11676C5.7401 9.11676 5.5 8.9065 5.5 8.60677C5.5 8.30704 5.7401 8.09678 6.03258 8.09678C6.32506 8.09678 6.56515 8.30256 6.56515 8.60677C6.56515 8.91097 6.32069 9.11676 6.03258 9.11676Z", fill: "white" })] }) })), id ? (jsx(LogoContainer, { initial: { opacity: 0 }, animate: { opacity: 1 }, exit: { opacity: 0 }, transition: { duration: 0.3 }, children: chain?.logo ?? jsx(Chains.UnknownChain, {}) }, `${chain?.id}-${chain?.name}-${id}`)) : (jsx(LoadingContainer, { initial: { opacity: 0 }, animate: { opacity: 1 }, exit: { opacity: 0 }, transition: { duration: 0.3 }, children: Spinner }, "loading"))] }) }));
|
|
11449
11490
|
};
|
|
11450
11491
|
|
|
11492
|
+
/** Returns the current payment, or undefined if there is none.
|
|
11493
|
+
*
|
|
11494
|
+
* Status values:
|
|
11495
|
+
* - `payment_pending` - the user has not paid yet
|
|
11496
|
+
* - `payment_started` - the user has paid & payment is in progress. This status
|
|
11497
|
+
* typically lasts a few seconds.
|
|
11498
|
+
* - `payment_completed` - the final call or transfer succeeded
|
|
11499
|
+
* - `payment_bounced` - the final call or transfer reverted. Funds were sent
|
|
11500
|
+
* to the payment's configured refund address on the destination chain.
|
|
11501
|
+
*/
|
|
11451
11502
|
function useDaimoPayStatus() {
|
|
11452
|
-
const { paymentInfo } =
|
|
11453
|
-
|
|
11454
|
-
|
|
11455
|
-
|
|
11456
|
-
|
|
11457
|
-
|
|
11458
|
-
if (order.
|
|
11459
|
-
if (order.intentStatus
|
|
11460
|
-
return {
|
|
11461
|
-
status: order.intentStatus === DaimoPayIntentStatus.SUCCESSFUL
|
|
11462
|
-
? "payment_completed"
|
|
11463
|
-
: "payment_bounced",
|
|
11464
|
-
paymentId,
|
|
11465
|
-
};
|
|
11503
|
+
const { paymentInfo } = usePayContext();
|
|
11504
|
+
if (!paymentInfo || !paymentInfo.daimoPayOrder)
|
|
11505
|
+
return undefined;
|
|
11506
|
+
const order = paymentInfo.daimoPayOrder;
|
|
11507
|
+
const paymentId = writeDaimoPayOrderID(order.id);
|
|
11508
|
+
if (order.mode === DaimoPayOrderMode.HYDRATED) {
|
|
11509
|
+
if (order.intentStatus !== DaimoPayIntentStatus.PENDING) {
|
|
11510
|
+
if (order.intentStatus === DaimoPayIntentStatus.SUCCESSFUL) {
|
|
11511
|
+
return { paymentId, status: "payment_completed" };
|
|
11466
11512
|
}
|
|
11467
|
-
else
|
|
11468
|
-
return {
|
|
11469
|
-
status: "payment_started",
|
|
11470
|
-
paymentId,
|
|
11471
|
-
};
|
|
11513
|
+
else {
|
|
11514
|
+
return { paymentId, status: "payment_bounced" };
|
|
11472
11515
|
}
|
|
11473
11516
|
}
|
|
11474
|
-
|
|
11475
|
-
status: "
|
|
11476
|
-
|
|
11477
|
-
|
|
11478
|
-
}
|
|
11479
|
-
return status;
|
|
11517
|
+
else if (order.sourceStatus !== DaimoPayOrderStatusSource.WAITING_PAYMENT) {
|
|
11518
|
+
return { paymentId, status: "payment_started" };
|
|
11519
|
+
}
|
|
11520
|
+
}
|
|
11521
|
+
return { paymentId, status: "payment_pending" };
|
|
11480
11522
|
}
|
|
11481
11523
|
|
|
11482
|
-
export { Avatar, Chain as ChainIcon, Context, DaimoPayButton, DaimoPayProvider, types$1 as Types, defaultConfig as getDefaultConfig, useChainIsSupported, useChains, useDaimoPayStatus, useIsMounted, useModal, wallets };
|
|
11524
|
+
export { Avatar, Chain as ChainIcon, Context, DaimoPayButton, DaimoPayProvider, types$1 as Types, defaultConfig as getDefaultConfig, useChainIsSupported, useChains, useDaimoPayStatus, useIsMounted, useModal, usePayContext, wallets };
|
|
11483
11525
|
//# sourceMappingURL=index.es.js.map
|