@velora-dex/widget 0.3.11-dev.1 → 0.3.11-dev.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.d.ts.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js +72 -41
- package/dist/components/web3/ConnectExternalProvider/AutoconnectExternal.js.map +1 -1
- package/dist/components/web3/ConnectExternalProvider/constants.d.ts +2 -0
- package/dist/components/web3/ConnectExternalProvider/constants.d.ts.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/constants.js +4 -0
- package/dist/components/web3/ConnectExternalProvider/constants.js.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/utils.d.ts +8 -0
- package/dist/components/web3/ConnectExternalProvider/utils.d.ts.map +1 -0
- package/dist/components/web3/ConnectExternalProvider/utils.js +9 -0
- package/dist/components/web3/ConnectExternalProvider/utils.js.map +1 -0
- package/dist/components/web3/ConnectWallets/walletIcons.d.ts +4 -1
- package/dist/components/web3/ConnectWallets/walletIcons.d.ts.map +1 -1
- package/dist/components/web3/ConnectWallets/walletIcons.js +18 -7
- package/dist/components/web3/ConnectWallets/walletIcons.js.map +1 -1
- package/dist/components/widget/AppHeader/Activities/hooks.d.ts +2 -2
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts +4 -7
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js +136 -361
- package/dist/components/widget/Dialog/SelectTokenDialog/SelectTokenDialog.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/index.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js +1 -2
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenCloud/tokens.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenListBody/TokenListRow.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.d.ts.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js +36 -48
- package/dist/components/widget/Dialog/SelectTokenDialog/TokenSearch.js.map +1 -1
- package/dist/components/widget/Dialog/SelectTokenDialog/types.d.ts +2 -3
- package/dist/components/widget/Dialog/SelectTokenDialog/types.d.ts.map +1 -1
- package/dist/components/widget/NetworkIcon/NetworkIconSquare.js +1 -2
- package/dist/components/widget/NetworkIcon/NetworkIconSquare.js.map +1 -1
- package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.d.ts.map +1 -1
- package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js +108 -57
- package/dist/components/widget/NetworkSwitcher/NetworkSwitcherDropdown.js.map +1 -1
- package/dist/components/widget/NetworkSwitcher/types.d.ts +2 -12
- package/dist/components/widget/NetworkSwitcher/types.d.ts.map +1 -1
- package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js +1 -2
- package/dist/components/widget/NetworkWithIcon/NetworkWithIcon.js.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.d.ts.map +1 -1
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js +11 -5
- package/dist/components/widget/ReceiverAddress/state/subscriptions.js.map +1 -1
- package/dist/components/widget/Screen/GenericScreen.d.ts +2 -6
- package/dist/components/widget/Screen/GenericScreen.d.ts.map +1 -1
- package/dist/components/widget/Screen/GenericScreen.js +33 -112
- package/dist/components/widget/Screen/GenericScreen.js.map +1 -1
- package/dist/components/widget/SelectToken/SelectTokenButton.d.ts +1 -1
- package/dist/components/widget/SelectToken/SelectTokenButton.d.ts.map +1 -1
- package/dist/components/widget/SelectToken/SelectTokenButton.js +73 -100
- package/dist/components/widget/SelectToken/SelectTokenButton.js.map +1 -1
- package/dist/components/widget/SelectToken/types.d.ts +0 -3
- package/dist/components/widget/SelectToken/types.d.ts.map +1 -1
- package/dist/components/widget/TokenInput/index.d.ts.map +1 -1
- package/dist/components/widget/TokenInput/index.js +147 -125
- package/dist/components/widget/TokenInput/index.js.map +1 -1
- package/dist/components/widget/TokenInput/types.d.ts +1 -6
- package/dist/components/widget/TokenInput/types.d.ts.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts +2 -2
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.d.ts.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js +22 -23
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/Controls.js.map +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js +1 -1
- package/dist/components/widget/TransactionDetails/LimitOrderDetails/TransactionDetails.js.map +1 -1
- package/dist/core/constants.d.ts +1 -4
- package/dist/core/constants.d.ts.map +1 -1
- package/dist/core/constants.js +1 -4
- package/dist/core/constants.js.map +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +0 -2
- package/dist/core/index.js.map +1 -1
- package/dist/core/inputs/hooks/useMaxButtonProps.d.ts +7 -2
- package/dist/core/inputs/hooks/useMaxButtonProps.d.ts.map +1 -1
- package/dist/core/inputs/hooks/useMaxButtonProps.js +6 -17
- package/dist/core/inputs/hooks/useMaxButtonProps.js.map +1 -1
- package/dist/core/state/chainToAtom.d.ts +4 -4
- package/dist/core/state/configAtom.d.ts +2 -2
- package/dist/core/state/configAtom.d.ts.map +1 -1
- package/dist/core/state/configAtom.js +6 -4
- package/dist/core/state/configAtom.js.map +1 -1
- package/dist/core/state/containerAtom.d.ts +0 -3
- package/dist/core/state/containerAtom.d.ts.map +1 -1
- package/dist/core/state/containerAtom.js +1 -2
- package/dist/core/state/containerAtom.js.map +1 -1
- package/dist/core/state/enabledChainsAtom.d.ts +9 -9
- package/dist/core/state/externalProviderAtom.d.ts +9 -0
- package/dist/core/state/externalProviderAtom.d.ts.map +1 -1
- package/dist/core/state/externalProviderAtom.js +28 -1
- package/dist/core/state/externalProviderAtom.js.map +1 -1
- package/dist/events/getters/swap.d.ts.map +1 -1
- package/dist/events/getters/swap.js +2 -1
- package/dist/events/getters/swap.js.map +1 -1
- package/dist/events/hooks/useOnWalletConnect.d.ts.map +1 -1
- package/dist/events/hooks/useOnWalletConnect.js +6 -1
- package/dist/events/hooks/useOnWalletConnect.js.map +1 -1
- package/dist/events/types/connectWallet.d.ts +3 -3
- package/dist/events/types/connectWallet.d.ts.map +1 -1
- package/dist/hooks/batch/useAwaitCalls.d.ts.map +1 -1
- package/dist/hooks/batch/useAwaitCalls.js.map +1 -1
- package/dist/hooks/connectors/useIsConnectedSafe.d.ts.map +1 -1
- package/dist/hooks/connectors/useIsConnectedSafe.js +3 -1
- package/dist/hooks/connectors/useIsConnectedSafe.js.map +1 -1
- package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts +4 -1
- package/dist/hooks/connectors/useIsGnosisSafeConnector.d.ts.map +1 -1
- package/dist/hooks/connectors/useIsGnosisSafeConnector.js +3 -4
- package/dist/hooks/connectors/useIsGnosisSafeConnector.js.map +1 -1
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts +1 -1
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.d.ts.map +1 -1
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js +16 -2
- package/dist/hooks/connectors/useIsSafeThroughWalletConnect.js.map +1 -1
- package/dist/hooks/gas/config.js +1 -2
- package/dist/hooks/gas/config.js.map +1 -1
- package/dist/hooks/otc/mutations/useFillOrder.js +5 -4
- package/dist/hooks/otc/mutations/useFillOrder.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js +3 -2
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderFlow.js.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.d.ts.map +1 -1
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js +7 -4
- package/dist/hooks/otc/tradeFlow/useFillOtcOrderStep.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js +2 -1
- package/dist/hooks/swap/tradeFlow/common/usePreSignAndSubmitDeltaOrder.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useDeltaFlow.js.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.d.ts.map +1 -1
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js +7 -4
- package/dist/hooks/swap/tradeFlow/useMarketSwapStep.js.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTx.d.ts.map +1 -1
- package/dist/hooks/txs/queries/useAwaitTx.js +71 -19
- package/dist/hooks/txs/queries/useAwaitTx.js.map +1 -1
- package/dist/hooks/useSelectableDestChains.d.ts +1 -1
- package/dist/lib/constants/delta.d.ts +1 -1
- package/dist/lib/constants/delta.js +1 -2
- package/dist/lib/constants/delta.js.map +1 -1
- package/dist/lib/constants/otc.js +1 -2
- package/dist/lib/constants/otc.js.map +1 -1
- package/dist/lib/constants/weth.js +1 -2
- package/dist/lib/constants/weth.js.map +1 -1
- package/dist/lib/utils/index.d.ts +1 -0
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js +6 -1
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/toasts.d.ts +1 -1
- package/dist/lib/utils/toasts.d.ts.map +1 -1
- package/dist/lib/utils/toasts.js +5 -1
- package/dist/lib/utils/toasts.js.map +1 -1
- package/dist/lib/web3/privy/config.js +1 -1
- package/dist/lib/web3/wagmi/config.d.ts +46 -46
- package/dist/lib/web3/wagmi/config.js +1 -1
- package/dist/lib/web3/wagmi/constants.d.ts +45 -45
- package/dist/lib/web3/wagmi/constants.js +1 -2
- package/dist/lib/web3/wagmi/constants.js.map +1 -1
- package/dist/lib/web3/wagmi/external.d.ts +10 -3
- package/dist/lib/web3/wagmi/external.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/external.js +17 -2
- package/dist/lib/web3/wagmi/external.js.map +1 -1
- package/dist/lib/web3/wagmi/supportedChains.d.ts +1 -379
- package/dist/lib/web3/wagmi/supportedChains.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/switchChain.d.ts +177 -177
- package/dist/lib/web3/wagmi/switchChain.d.ts.map +1 -1
- package/dist/lib/web3/wagmi/switchChain.js +5 -1
- package/dist/lib/web3/wagmi/switchChain.js.map +1 -1
- package/dist/lib/web3/wagmi/transports.js +1 -2
- package/dist/lib/web3/wagmi/transports.js.map +1 -1
- package/dist/styles.css +15 -46
- package/dist/tokens/constants.js +1 -2
- package/dist/tokens/constants.js.map +1 -1
- package/dist/tokens/defaultTokens.js +1 -2
- package/dist/tokens/defaultTokens.js.map +1 -1
- package/dist/tokens/lists/state/tokenListsStateAtom.d.ts +4 -4
- package/dist/transactions/hash.d.ts +7 -0
- package/dist/transactions/hash.d.ts.map +1 -0
- package/dist/transactions/hash.js +35 -0
- package/dist/transactions/hash.js.map +1 -0
- package/dist/transactions/queries/ensureCallsStatus.d.ts.map +1 -1
- package/dist/transactions/queries/ensureCallsStatus.js +11 -3
- package/dist/transactions/queries/ensureCallsStatus.js.map +1 -1
- package/dist/transactions/queries/ensureTxReceipt.d.ts.map +1 -1
- package/dist/transactions/queries/ensureTxReceipt.js +7 -4
- package/dist/transactions/queries/ensureTxReceipt.js.map +1 -1
- package/dist/transactions/state/effects/finalize.d.ts +7 -1
- package/dist/transactions/state/effects/finalize.d.ts.map +1 -1
- package/dist/transactions/state/effects/finalize.js +41 -7
- package/dist/transactions/state/effects/finalize.js.map +1 -1
- package/dist/transactions/state/hooks/useActivateEffects.d.ts.map +1 -1
- package/dist/transactions/state/hooks/useActivateEffects.js +4 -2
- package/dist/transactions/state/hooks/useActivateEffects.js.map +1 -1
- package/dist/transactions/state/transactionsActionAtom.d.ts.map +1 -1
- package/dist/transactions/state/transactionsActionAtom.js +55 -15
- package/dist/transactions/state/transactionsActionAtom.js.map +1 -1
- package/dist/transactions/state/transactionsAtom.js +2 -2
- package/dist/transactions/state/transactionsAtom.js.map +1 -1
- package/dist/transactions/types.d.ts +11 -1
- package/dist/transactions/types.d.ts.map +1 -1
- package/dist/transactions/utils.d.ts +2 -1
- package/dist/transactions/utils.d.ts.map +1 -1
- package/dist/transactions/utils.js +6 -1
- package/dist/transactions/utils.js.map +1 -1
- package/package.json +1 -2
- package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.d.ts +0 -3
- package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.d.ts.map +0 -1
- package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.js +0 -71
- package/dist/components/widget/NetworkSwitcher/NetworkSwitcherList.js.map +0 -1
- package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.d.ts +0 -5
- package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.d.ts.map +0 -1
- package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.js +0 -48
- package/dist/components/widget/NetworkSwitcher/common/AllNetworksItem.js.map +0 -1
- package/dist/components/widget/NetworkSwitcher/common/NetworkItem.d.ts +0 -7
- package/dist/components/widget/NetworkSwitcher/common/NetworkItem.d.ts.map +0 -1
- package/dist/components/widget/NetworkSwitcher/common/NetworkItem.js +0 -46
- package/dist/components/widget/NetworkSwitcher/common/NetworkItem.js.map +0 -1
- package/dist/components/widget/NetworkSwitcher/utils/items.d.ts +0 -3
- package/dist/components/widget/NetworkSwitcher/utils/items.d.ts.map +0 -1
- package/dist/components/widget/NetworkSwitcher/utils/items.js +0 -63
- package/dist/components/widget/NetworkSwitcher/utils/items.js.map +0 -1
- package/dist/components/widget/TokenInput/InputContainer.d.ts +0 -3
- package/dist/components/widget/TokenInput/InputContainer.d.ts.map +0 -1
- package/dist/components/widget/TokenInput/InputContainer.js +0 -54
- package/dist/components/widget/TokenInput/InputContainer.js.map +0 -1
- package/dist/components/widget/TokenInput/InputField.d.ts +0 -6
- package/dist/components/widget/TokenInput/InputField.d.ts.map +0 -1
- package/dist/components/widget/TokenInput/InputField.js +0 -84
- package/dist/components/widget/TokenInput/InputField.js.map +0 -1
- package/dist/components/widget/TokenInput/InputFooter.d.ts +0 -5
- package/dist/components/widget/TokenInput/InputFooter.d.ts.map +0 -1
- package/dist/components/widget/TokenInput/InputFooter.js +0 -206
- package/dist/components/widget/TokenInput/InputFooter.js.map +0 -1
- package/dist/components/widget/TokenInput/InputHeader.d.ts +0 -5
- package/dist/components/widget/TokenInput/InputHeader.d.ts.map +0 -1
- package/dist/components/widget/TokenInput/InputHeader.js +0 -58
- package/dist/components/widget/TokenInput/InputHeader.js.map +0 -1
- package/dist/components/widget/TokenInput/common/Balance.d.ts +0 -3
- package/dist/components/widget/TokenInput/common/Balance.d.ts.map +0 -1
- package/dist/components/widget/TokenInput/common/Balance.js +0 -23
- package/dist/components/widget/TokenInput/common/Balance.js.map +0 -1
- package/dist/components/widget/TokenInput/common/MaxButtons.d.ts +0 -3
- package/dist/components/widget/TokenInput/common/MaxButtons.d.ts.map +0 -1
- package/dist/components/widget/TokenInput/common/MaxButtons.js +0 -37
- package/dist/components/widget/TokenInput/common/MaxButtons.js.map +0 -1
- package/dist/core/screen/hooks/useResizeObserver.d.ts +0 -2
- package/dist/core/screen/hooks/useResizeObserver.d.ts.map +0 -1
- package/dist/core/screen/hooks/useResizeObserver.js +0 -36
- package/dist/core/screen/hooks/useResizeObserver.js.map +0 -1
- package/dist/hooks/useBreakpoints.d.ts +0 -4
- package/dist/hooks/useBreakpoints.d.ts.map +0 -1
- package/dist/hooks/useBreakpoints.js +0 -24
- package/dist/hooks/useBreakpoints.js.map +0 -1
- package/dist/lib/constants/mobile.d.ts +0 -2
- package/dist/lib/constants/mobile.d.ts.map +0 -1
- package/dist/lib/constants/mobile.js +0 -6
- package/dist/lib/constants/mobile.js.map +0 -1
- package/dist/lib/utils/mobile.d.ts +0 -6
- package/dist/lib/utils/mobile.d.ts.map +0 -1
- package/dist/lib/utils/mobile.js +0 -10
- package/dist/lib/utils/mobile.js.map +0 -1
- package/dist/lib/web3/wagmi/supportedChains.js +0 -18
- package/dist/lib/web3/wagmi/supportedChains.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sources":["../../src/tokens/constants.ts"],"sourcesContent":["import {\n mainnet,\n bsc,\n optimism,\n avalanche,\n arbitrum,\n polygon,\n base,\n gnosis,\n sonic,\n unichain,\n} from \"@/lib/web3/wagmi/supportedChains\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { Address } from \"viem\";\n\nexport const QUERY_KEY_FETCH_TOKEN_LISTS = \"fetch-token-lists\";\n\nexport const ETH_ADDRESS = \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\";\n\nexport const ETH_ADDRESS_LOWERCASE = ETH_ADDRESS.toLowerCase() as Lowercase<\n typeof ETH_ADDRESS\n>;\n\nexport const NATIVE_CURRENCY_ICON: Record<SupportedChainId, string> = {\n [mainnet.id]: \"https://cdn.paraswap.io/token/ETH.svg\",\n [bsc.id]: \"https://cdn.paraswap.io/token/BNB.svg\",\n [optimism.id]: \"https://cdn.paraswap.io/token/ETH.svg\",\n [avalanche.id]: \"https://cdn.paraswap.io/token/AVAX.svg\",\n [arbitrum.id]: \"https://cdn.paraswap.io/token/ETH.svg\",\n [polygon.id]: \"https://cdn.paraswap.io/token/MATIC.svg\",\n [base.id]: \"https://cdn.paraswap.io/token/ETH.svg\",\n [gnosis.id]:\n \"https://assets.coingecko.com/coins/images/11062/thumb/Identity-Primary-DarkBG.png?1696511004\",\n [sonic.id]: \"https://cdn.paraswap.io/token/S.svg\",\n [unichain.id]: \"https://cdn.paraswap.io/token/ETH.svg\",\n};\n\nexport const VLR_ADDRESS_BY_NETWORK: Partial<\n Record<SupportedChainId, Address>\n> = {\n [mainnet.id]: \"0x4e107a0000DB66f0E9Fd2039288Bf811dD1f9c74\",\n [optimism.id]: \"0x4e107a0000DB66f0E9Fd2039288Bf811dD1f9c74\",\n [bsc.id]: \"0x4e107a0000DB66f0E9Fd2039288Bf811dD1f9c74\",\n [base.id]: \"0x4e107a0000DB66f0E9Fd2039288Bf811dD1f9c74\",\n};\n"],"names":["QUERY_KEY_FETCH_TOKEN_LISTS","ETH_ADDRESS","ETH_ADDRESS_LOWERCASE","toLowerCase","NATIVE_CURRENCY_ICON","mainnet","id","bsc","optimism","avalanche","arbitrum","polygon","base","gnosis","sonic","unichain","VLR_ADDRESS_BY_NETWORK"],"mappings":"
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../src/tokens/constants.ts"],"sourcesContent":["import {\n mainnet,\n bsc,\n optimism,\n avalanche,\n arbitrum,\n polygon,\n base,\n gnosis,\n sonic,\n unichain,\n} from \"@/lib/web3/wagmi/supportedChains\";\nimport type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { Address } from \"viem\";\n\nexport const QUERY_KEY_FETCH_TOKEN_LISTS = \"fetch-token-lists\";\n\nexport const ETH_ADDRESS = \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\";\n\nexport const ETH_ADDRESS_LOWERCASE = ETH_ADDRESS.toLowerCase() as Lowercase<\n typeof ETH_ADDRESS\n>;\n\nexport const NATIVE_CURRENCY_ICON: Record<SupportedChainId, string> = {\n [mainnet.id]: \"https://cdn.paraswap.io/token/ETH.svg\",\n [bsc.id]: \"https://cdn.paraswap.io/token/BNB.svg\",\n [optimism.id]: \"https://cdn.paraswap.io/token/ETH.svg\",\n [avalanche.id]: \"https://cdn.paraswap.io/token/AVAX.svg\",\n [arbitrum.id]: \"https://cdn.paraswap.io/token/ETH.svg\",\n [polygon.id]: \"https://cdn.paraswap.io/token/MATIC.svg\",\n [base.id]: \"https://cdn.paraswap.io/token/ETH.svg\",\n [gnosis.id]:\n \"https://assets.coingecko.com/coins/images/11062/thumb/Identity-Primary-DarkBG.png?1696511004\",\n [sonic.id]: \"https://cdn.paraswap.io/token/S.svg\",\n [unichain.id]: \"https://cdn.paraswap.io/token/ETH.svg\",\n};\n\nexport const VLR_ADDRESS_BY_NETWORK: Partial<\n Record<SupportedChainId, Address>\n> = {\n [mainnet.id]: \"0x4e107a0000DB66f0E9Fd2039288Bf811dD1f9c74\",\n [optimism.id]: \"0x4e107a0000DB66f0E9Fd2039288Bf811dD1f9c74\",\n [bsc.id]: \"0x4e107a0000DB66f0E9Fd2039288Bf811dD1f9c74\",\n [base.id]: \"0x4e107a0000DB66f0E9Fd2039288Bf811dD1f9c74\",\n};\n"],"names":["QUERY_KEY_FETCH_TOKEN_LISTS","ETH_ADDRESS","ETH_ADDRESS_LOWERCASE","toLowerCase","NATIVE_CURRENCY_ICON","mainnet","id","bsc","optimism","avalanche","arbitrum","polygon","base","gnosis","sonic","unichain","VLR_ADDRESS_BY_NETWORK"],"mappings":";;AAeO,MAAMA,2BAAAA,GAA8B;AAEpC,MAAMC,WAAAA,GAAc;AAEpB,MAAMC,qBAAAA,GAAwBD,YAAYE,WAAAA;AAI1C,MAAMC,oBAAAA,GAAyD;AAAA,EACpE,CAACC,OAAAA,CAAQC,EAAE,GAAG,uCAAA;AAAA,EACd,CAACC,GAAAA,CAAID,EAAE,GAAG,uCAAA;AAAA,EACV,CAACE,QAAAA,CAASF,EAAE,GAAG,uCAAA;AAAA,EACf,CAACG,SAAAA,CAAUH,EAAE,GAAG,wCAAA;AAAA,EAChB,CAACI,QAAAA,CAASJ,EAAE,GAAG,uCAAA;AAAA,EACf,CAACK,OAAAA,CAAQL,EAAE,GAAG,yCAAA;AAAA,EACd,CAACM,IAAAA,CAAKN,EAAE,GAAG,uCAAA;AAAA,EACX,CAACO,MAAAA,CAAOP,EAAE,GACR,8FAAA;AAAA,EACF,CAACQ,KAAAA,CAAMR,EAAE,GAAG,qCAAA;AAAA,EACZ,CAACS,QAAAA,CAAST,EAAE,GAAG;AACjB;AAEO,MAAMU,sBAAAA,GAET;AAAA,EACF,CAACX,OAAAA,CAAQC,EAAE,GAAG,4CAAA;AAAA,EACd,CAACE,QAAAA,CAASF,EAAE,GAAG,4CAAA;AAAA,EACf,CAACC,GAAAA,CAAID,EAAE,GAAG,4CAAA;AAAA,EACV,CAACM,IAAAA,CAAKN,EAAE,GAAG;AACb;;;;"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { optimism, arbitrum, bsc } from '../lib/web3/wagmi/supportedChains.js';
|
|
2
1
|
import { wrappedNativeTokensByChainId } from './constructor.js';
|
|
3
2
|
import { isETH } from './utils/eth.js';
|
|
4
|
-
import { unichain, sonic, gnosis, base, avalanche, polygon, mainnet } from 'wagmi/chains';
|
|
3
|
+
import { unichain, sonic, gnosis, base, optimism, arbitrum, avalanche, bsc, polygon, mainnet } from 'wagmi/chains';
|
|
5
4
|
|
|
6
5
|
const tokenFrom = {
|
|
7
6
|
[mainnet.id]: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultTokens.js","sources":["../../src/tokens/defaultTokens.ts"],"sourcesContent":["import type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { Token } from \"@/tokens/state/types\";\n\nimport {\n arbitrum,\n avalanche,\n base,\n bsc,\n gnosis,\n mainnet,\n optimism,\n polygon,\n sonic,\n unichain,\n} from \"@/lib/web3/wagmi/supportedChains\";\nimport { wrappedNativeTokensByChainId } from \"./constructor\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport { isETH } from \"./utils/eth\";\n\nconst tokenFrom: Record<SupportedChainId, Token> = {\n [mainnet.id]: {\n symbol: \"USDC\",\n address: \"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\",\n decimals: 6,\n network: mainnet.id,\n tokenType: \"ERC20\",\n mainConnector: \"ETH\",\n connectors: [\"ETH\"],\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USD Coin\",\n },\n [polygon.id]: {\n address: \"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: polygon.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n [bsc.id]: {\n address: \"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d\",\n decimals: 18,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: bsc.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"Binance Pegged USD Coin\",\n },\n [avalanche.id]: {\n address: \"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: avalanche.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USD Coin\",\n },\n [arbitrum.id]: {\n address: \"0xaf88d065e77c8cc2239327c5edb3a432268e5831\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: arbitrum.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n [optimism.id]: {\n address: \"0x0b2c639c533813f4aa9d7837caf62653d097ff85\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: optimism.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USD Coin\",\n },\n [base.id]: {\n address: \"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: base.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n [gnosis.id]: {\n address: \"0xddafbb505ad214d7b80b1f830fccc89b60fb7a83\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"XDAI\", \"USDT\"],\n network: gnosis.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n [sonic.id]: {\n address: \"0x29219dd400f2Bf60E5a23d13Be72B486D4038894\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: sonic.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n [unichain.id]: {\n address: \"0x078D782b760474a361dDA0AF3839290b0EF57AD6\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: unichain.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n};\n\nconst tokenTo: Record<SupportedChainId, Token> = {\n [mainnet.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"ETH\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"DAI\", \"USDC\"],\n network: mainnet.id,\n img: \"https://cdn.paraswap.io/token/ETH.svg\",\n },\n [polygon.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"POL\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: polygon.id,\n img: \"https://cdn.paraswap.io/token/MATIC.svg\",\n },\n [bsc.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"BNB\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: bsc.id,\n img: \"https://cdn.paraswap.io/token/BNB.svg\",\n },\n [avalanche.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"AVAX\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: avalanche.id,\n img: \"https://cdn.paraswap.io/token/AVAX.svg\",\n },\n [arbitrum.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"ETH\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"DAI\", \"USDC\"],\n network: arbitrum.id,\n img: \"https://cdn.paraswap.io/token/ETH.svg\",\n },\n [optimism.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"ETH\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"DAI\", \"USDC\"],\n network: optimism.id,\n img: \"https://cdn.paraswap.io/token/ETH.svg\",\n },\n [base.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"ETH\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"DAI\", \"USDC\"],\n network: base.id,\n img: \"https://cdn.paraswap.io/token/ETH.svg\",\n },\n [gnosis.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"XDAI\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"USDC\"],\n network: gnosis.id,\n img: \"https://assets.coingecko.com/coins/images/11062/thumb/Identity-Primary-DarkBG.png\",\n name: \"XDAI\",\n },\n [sonic.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"S\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: sonic.id,\n img: \"https://cdn.paraswap.io/token/S.png\",\n },\n [unichain.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"ETH\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: unichain.id,\n img: \"https://cdn.paraswap.io/token/ETH.png\",\n name: \"Unichain ETH\",\n },\n};\n\nexport function pickDefaultTokenPair(\n chainId: SupportedChainId,\n tradeMode: TradeMode\n): [Token, Token] {\n const from = tokenFrom[chainId];\n let to = tokenTo[chainId];\n\n // otc don't support destToken=ETH\n if (tradeMode === \"otc\" && isETH(to)) {\n to = wrappedNativeTokensByChainId[chainId];\n }\n\n return [from, to];\n}\n"],"names":["tokenFrom","mainnet","id","symbol","address","decimals","network","tokenType","mainConnector","connectors","img","name","polygon","bsc","avalanche","arbitrum","optimism","base","gnosis","sonic","unichain","tokenTo","pickDefaultTokenPair","chainId","tradeMode","from","to","isETH","wrappedNativeTokensByChainId"],"mappings":";;;;;AAmBA,MAAMA,SAAAA,GAA6C;AAAA,EACjD,CAACC,OAAAA,CAAQC,EAAE,GAAG;AAAA,IACZC,MAAAA,EAAQ,MAAA;AAAA,IACRC,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVC,SAASL,OAAAA,CAAQC,EAAAA;AAAAA,IACjBK,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,KAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBC,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACC,OAAAA,CAAQV,EAAE,GAAG;AAAA,IACZE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASM,OAAAA,CAAQV,EAAAA;AAAAA,IACjBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACE,GAAAA,CAAIX,EAAE,GAAG;AAAA,IACRE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASO,GAAAA,CAAIX,EAAAA;AAAAA,IACbQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACG,SAAAA,CAAUZ,EAAE,GAAG;AAAA,IACdE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASQ,SAAAA,CAAUZ,EAAAA;AAAAA,IACnBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACI,QAAAA,CAASb,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASS,QAAAA,CAASb,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACK,QAAAA,CAASd,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASU,QAAAA,CAASd,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACM,IAAAA,CAAKf,EAAE,GAAG;AAAA,IACTE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASW,IAAAA,CAAKf,EAAAA;AAAAA,IACdQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACO,MAAAA,CAAOhB,EAAE,GAAG;AAAA,IACXE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA,IAC3BH,SAASY,MAAAA,CAAOhB,EAAAA;AAAAA,IAChBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACQ,KAAAA,CAAMjB,EAAE,GAAG;AAAA,IACVE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASa,KAAAA,CAAMjB,EAAAA;AAAAA,IACfQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACS,QAAAA,CAASlB,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASc,QAAAA,CAASlB,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA;AAEV,CAAA;AAEA,MAAMU,OAAAA,GAA2C;AAAA,EAC/C,CAACpB,OAAAA,CAAQC,EAAE,GAAG;AAAA,IACZE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAA,EAAO,MAAM,CAAA;AAAA,IAC1BH,SAASL,OAAAA,CAAQC,EAAAA;AAAAA,IACjBQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACE,OAAAA,CAAQV,EAAE,GAAG;AAAA,IACZE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASM,OAAAA,CAAQV,EAAAA;AAAAA,IACjBQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACG,GAAAA,CAAIX,EAAE,GAAG;AAAA,IACRE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASO,GAAAA,CAAIX,EAAAA;AAAAA,IACbQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACI,SAAAA,CAAUZ,EAAE,GAAG;AAAA,IACdE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASQ,SAAAA,CAAUZ,EAAAA;AAAAA,IACnBQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACK,QAAAA,CAASb,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAA,EAAO,MAAM,CAAA;AAAA,IAC1BH,SAASS,QAAAA,CAASb,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACM,QAAAA,CAASd,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAA,EAAO,MAAM,CAAA;AAAA,IAC1BH,SAASU,QAAAA,CAASd,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACO,IAAAA,CAAKf,EAAE,GAAG;AAAA,IACTE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAA,EAAO,MAAM,CAAA;AAAA,IAC1BH,SAASW,IAAAA,CAAKf,EAAAA;AAAAA,IACdQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACQ,MAAAA,CAAOhB,EAAE,GAAG;AAAA,IACXE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,MAAM,CAAA;AAAA,IACnBH,SAASY,MAAAA,CAAOhB,EAAAA;AAAAA,IAChBQ,GAAAA,EAAK,mFAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACQ,KAAAA,CAAMjB,EAAE,GAAG;AAAA,IACVE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,GAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASa,KAAAA,CAAMjB,EAAAA;AAAAA,IACfQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACU,QAAAA,CAASlB,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASc,QAAAA,CAASlB,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK,uCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA;AAEV,CAAA;AAEO,SAASW,oBAAAA,CACdC,SACAC,SAAAA,EACgB;AAChB,EAAA,MAAMC,IAAAA,GAAOzB,UAAUuB,OAAO,CAAA;AAC9B,EAAA,IAAIG,EAAAA,GAAKL,QAAQE,OAAO,CAAA;AAGxB,EAAA,IAAIC,SAAAA,KAAc,KAAA,IAASG,KAAAA,CAAMD,EAAE,CAAA,EAAG;AACpCA,IAAAA,EAAAA,GAAKE,6BAA6BL,OAAO,CAAA;AAAA,EAC3C;AAEA,EAAA,OAAO,CAACE,MAAMC,EAAE,CAAA;AAClB;;;;"}
|
|
1
|
+
{"version":3,"file":"defaultTokens.js","sources":["../../src/tokens/defaultTokens.ts"],"sourcesContent":["import type { SupportedChainId } from \"@/lib/web3/wagmi/types\";\nimport type { Token } from \"@/tokens/state/types\";\n\nimport {\n arbitrum,\n avalanche,\n base,\n bsc,\n gnosis,\n mainnet,\n optimism,\n polygon,\n sonic,\n unichain,\n} from \"@/lib/web3/wagmi/supportedChains\";\nimport { wrappedNativeTokensByChainId } from \"./constructor\";\nimport type { TradeMode } from \"@/core/state/tradeModeAtom\";\nimport { isETH } from \"./utils/eth\";\n\nconst tokenFrom: Record<SupportedChainId, Token> = {\n [mainnet.id]: {\n symbol: \"USDC\",\n address: \"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\",\n decimals: 6,\n network: mainnet.id,\n tokenType: \"ERC20\",\n mainConnector: \"ETH\",\n connectors: [\"ETH\"],\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USD Coin\",\n },\n [polygon.id]: {\n address: \"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: polygon.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n [bsc.id]: {\n address: \"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d\",\n decimals: 18,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: bsc.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"Binance Pegged USD Coin\",\n },\n [avalanche.id]: {\n address: \"0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: avalanche.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USD Coin\",\n },\n [arbitrum.id]: {\n address: \"0xaf88d065e77c8cc2239327c5edb3a432268e5831\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: arbitrum.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n [optimism.id]: {\n address: \"0x0b2c639c533813f4aa9d7837caf62653d097ff85\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: optimism.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USD Coin\",\n },\n [base.id]: {\n address: \"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: base.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n [gnosis.id]: {\n address: \"0xddafbb505ad214d7b80b1f830fccc89b60fb7a83\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"XDAI\", \"USDT\"],\n network: gnosis.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n [sonic.id]: {\n address: \"0x29219dd400f2Bf60E5a23d13Be72B486D4038894\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: sonic.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n [unichain.id]: {\n address: \"0x078D782b760474a361dDA0AF3839290b0EF57AD6\",\n decimals: 6,\n symbol: \"USDC\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: unichain.id,\n img: \"https://cdn.paraswap.io/token/USDC.png\",\n name: \"USDC\",\n },\n};\n\nconst tokenTo: Record<SupportedChainId, Token> = {\n [mainnet.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"ETH\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"DAI\", \"USDC\"],\n network: mainnet.id,\n img: \"https://cdn.paraswap.io/token/ETH.svg\",\n },\n [polygon.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"POL\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: polygon.id,\n img: \"https://cdn.paraswap.io/token/MATIC.svg\",\n },\n [bsc.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"BNB\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: bsc.id,\n img: \"https://cdn.paraswap.io/token/BNB.svg\",\n },\n [avalanche.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"AVAX\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: avalanche.id,\n img: \"https://cdn.paraswap.io/token/AVAX.svg\",\n },\n [arbitrum.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"ETH\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"DAI\", \"USDC\"],\n network: arbitrum.id,\n img: \"https://cdn.paraswap.io/token/ETH.svg\",\n },\n [optimism.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"ETH\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"DAI\", \"USDC\"],\n network: optimism.id,\n img: \"https://cdn.paraswap.io/token/ETH.svg\",\n },\n [base.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"ETH\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"DAI\", \"USDC\"],\n network: base.id,\n img: \"https://cdn.paraswap.io/token/ETH.svg\",\n },\n [gnosis.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"XDAI\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"USDC\"],\n network: gnosis.id,\n img: \"https://assets.coingecko.com/coins/images/11062/thumb/Identity-Primary-DarkBG.png\",\n name: \"XDAI\",\n },\n [sonic.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"S\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: sonic.id,\n img: \"https://cdn.paraswap.io/token/S.png\",\n },\n [unichain.id]: {\n address: \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\",\n decimals: 18,\n symbol: \"ETH\",\n tokenType: \"ERC20\",\n mainConnector: \"\",\n connectors: [\"ETH\"],\n network: unichain.id,\n img: \"https://cdn.paraswap.io/token/ETH.png\",\n name: \"Unichain ETH\",\n },\n};\n\nexport function pickDefaultTokenPair(\n chainId: SupportedChainId,\n tradeMode: TradeMode\n): [Token, Token] {\n const from = tokenFrom[chainId];\n let to = tokenTo[chainId];\n\n // otc don't support destToken=ETH\n if (tradeMode === \"otc\" && isETH(to)) {\n to = wrappedNativeTokensByChainId[chainId];\n }\n\n return [from, to];\n}\n"],"names":["tokenFrom","mainnet","id","symbol","address","decimals","network","tokenType","mainConnector","connectors","img","name","polygon","bsc","avalanche","arbitrum","optimism","base","gnosis","sonic","unichain","tokenTo","pickDefaultTokenPair","chainId","tradeMode","from","to","isETH","wrappedNativeTokensByChainId"],"mappings":";;;;AAmBA,MAAMA,SAAAA,GAA6C;AAAA,EACjD,CAACC,OAAAA,CAAQC,EAAE,GAAG;AAAA,IACZC,MAAAA,EAAQ,MAAA;AAAA,IACRC,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVC,SAASL,OAAAA,CAAQC,EAAAA;AAAAA,IACjBK,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,KAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBC,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACC,OAAAA,CAAQV,EAAE,GAAG;AAAA,IACZE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASM,OAAAA,CAAQV,EAAAA;AAAAA,IACjBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACE,GAAAA,CAAIX,EAAE,GAAG;AAAA,IACRE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASO,GAAAA,CAAIX,EAAAA;AAAAA,IACbQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACG,SAAAA,CAAUZ,EAAE,GAAG;AAAA,IACdE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASQ,SAAAA,CAAUZ,EAAAA;AAAAA,IACnBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACI,QAAAA,CAASb,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASS,QAAAA,CAASb,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACK,QAAAA,CAASd,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASU,QAAAA,CAASd,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACM,IAAAA,CAAKf,EAAE,GAAG;AAAA,IACTE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASW,IAAAA,CAAKf,EAAAA;AAAAA,IACdQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACO,MAAAA,CAAOhB,EAAE,GAAG;AAAA,IACXE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,MAAA,EAAQ,MAAM,CAAA;AAAA,IAC3BH,SAASY,MAAAA,CAAOhB,EAAAA;AAAAA,IAChBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACQ,KAAAA,CAAMjB,EAAE,GAAG;AAAA,IACVE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASa,KAAAA,CAAMjB,EAAAA;AAAAA,IACfQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACS,QAAAA,CAASlB,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,CAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASc,QAAAA,CAASlB,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK,wCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA;AAEV,CAAA;AAEA,MAAMU,OAAAA,GAA2C;AAAA,EAC/C,CAACpB,OAAAA,CAAQC,EAAE,GAAG;AAAA,IACZE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAA,EAAO,MAAM,CAAA;AAAA,IAC1BH,SAASL,OAAAA,CAAQC,EAAAA;AAAAA,IACjBQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACE,OAAAA,CAAQV,EAAE,GAAG;AAAA,IACZE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASM,OAAAA,CAAQV,EAAAA;AAAAA,IACjBQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACG,GAAAA,CAAIX,EAAE,GAAG;AAAA,IACRE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASO,GAAAA,CAAIX,EAAAA;AAAAA,IACbQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACI,SAAAA,CAAUZ,EAAE,GAAG;AAAA,IACdE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASQ,SAAAA,CAAUZ,EAAAA;AAAAA,IACnBQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACK,QAAAA,CAASb,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAA,EAAO,MAAM,CAAA;AAAA,IAC1BH,SAASS,QAAAA,CAASb,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACM,QAAAA,CAASd,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAA,EAAO,MAAM,CAAA;AAAA,IAC1BH,SAASU,QAAAA,CAASd,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACO,IAAAA,CAAKf,EAAE,GAAG;AAAA,IACTE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAA,EAAO,MAAM,CAAA;AAAA,IAC1BH,SAASW,IAAAA,CAAKf,EAAAA;AAAAA,IACdQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACQ,MAAAA,CAAOhB,EAAE,GAAG;AAAA,IACXE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,MAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,MAAM,CAAA;AAAA,IACnBH,SAASY,MAAAA,CAAOhB,EAAAA;AAAAA,IAChBQ,GAAAA,EAAK,mFAAA;AAAA,IACLC,IAAAA,EAAM;AAAA,GACR;AAAA,EACA,CAACQ,KAAAA,CAAMjB,EAAE,GAAG;AAAA,IACVE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,GAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASa,KAAAA,CAAMjB,EAAAA;AAAAA,IACfQ,GAAAA,EAAK;AAAA,GACP;AAAA,EACA,CAACU,QAAAA,CAASlB,EAAE,GAAG;AAAA,IACbE,OAAAA,EAAS,4CAAA;AAAA,IACTC,QAAAA,EAAU,EAAA;AAAA,IACVF,MAAAA,EAAQ,KAAA;AAAA,IACRI,SAAAA,EAAW,OAAA;AAAA,IACXC,aAAAA,EAAe,EAAA;AAAA,IACfC,UAAAA,EAAY,CAAC,KAAK,CAAA;AAAA,IAClBH,SAASc,QAAAA,CAASlB,EAAAA;AAAAA,IAClBQ,GAAAA,EAAK,uCAAA;AAAA,IACLC,IAAAA,EAAM;AAAA;AAEV,CAAA;AAEO,SAASW,oBAAAA,CACdC,SACAC,SAAAA,EACgB;AAChB,EAAA,MAAMC,IAAAA,GAAOzB,UAAUuB,OAAO,CAAA;AAC9B,EAAA,IAAIG,EAAAA,GAAKL,QAAQE,OAAO,CAAA;AAGxB,EAAA,IAAIC,SAAAA,KAAc,KAAA,IAASG,KAAAA,CAAMD,EAAE,CAAA,EAAG;AACpCA,IAAAA,EAAAA,GAAKE,6BAA6BL,OAAO,CAAA;AAAA,EAC3C;AAEA,EAAA,OAAO,CAACE,MAAMC,EAAE,CAAA;AAClB;;;;"}
|
|
@@ -13,19 +13,19 @@ export declare const enabledAndDefaultTokenURLSAtom: import('jotai').Atom<{
|
|
|
13
13
|
all: string[];
|
|
14
14
|
enabled: string[];
|
|
15
15
|
};
|
|
16
|
-
|
|
16
|
+
137: {
|
|
17
17
|
all: string[];
|
|
18
18
|
enabled: string[];
|
|
19
19
|
};
|
|
20
|
-
|
|
20
|
+
56: {
|
|
21
21
|
all: string[];
|
|
22
22
|
enabled: string[];
|
|
23
23
|
};
|
|
24
|
-
|
|
24
|
+
43114: {
|
|
25
25
|
all: string[];
|
|
26
26
|
enabled: string[];
|
|
27
27
|
};
|
|
28
|
-
|
|
28
|
+
42161: {
|
|
29
29
|
all: string[];
|
|
30
30
|
enabled: string[];
|
|
31
31
|
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Hash } from 'viem';
|
|
2
|
+
import { TransactionItem } from './types';
|
|
3
|
+
export declare function getStandaloneTxHash({ transactionHash, }: {
|
|
4
|
+
transactionHash?: Hash;
|
|
5
|
+
}): Hash | null;
|
|
6
|
+
export declare function getTxHash(tx: TransactionItem): Hash | null;
|
|
7
|
+
//# sourceMappingURL=hash.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/transactions/hash.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,KAAK,EAA6B,eAAe,EAAE,MAAM,SAAS,CAAC;AAa1E,wBAAgB,mBAAmB,CAAC,EAClC,eAAe,GAChB,EAAE;IACD,eAAe,CAAC,EAAE,IAAI,CAAC;CACxB,GAAG,IAAI,GAAG,IAAI,CAKd;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI,CAgB1D"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jotaiStore } from '../core/store.js';
|
|
2
|
+
import { isBatchTransactionItem } from './utils.js';
|
|
3
|
+
import { allStandaloneTransactionItemsAtom } from './state/transactionsAtom.js';
|
|
4
|
+
import { isSafeConnector } from '../hooks/connectors/useIsGnosisSafeConnector.js';
|
|
5
|
+
|
|
6
|
+
function findStandaloneTx({
|
|
7
|
+
transactionHash
|
|
8
|
+
}) {
|
|
9
|
+
return jotaiStore.get(allStandaloneTransactionItemsAtom).find((tx) => tx.transactionHash === transactionHash);
|
|
10
|
+
}
|
|
11
|
+
function getStandaloneTxHash({
|
|
12
|
+
transactionHash
|
|
13
|
+
}) {
|
|
14
|
+
if (!transactionHash) return null;
|
|
15
|
+
const tx = findStandaloneTx({
|
|
16
|
+
transactionHash
|
|
17
|
+
});
|
|
18
|
+
if (!tx) return null;
|
|
19
|
+
return getTxHash(tx);
|
|
20
|
+
}
|
|
21
|
+
function getTxHash(tx) {
|
|
22
|
+
if (tx.receipt?.transactionHash) {
|
|
23
|
+
return tx.receipt.transactionHash;
|
|
24
|
+
}
|
|
25
|
+
if (isBatchTransactionItem(tx)) {
|
|
26
|
+
return tx.receipt?.transactionHash || null;
|
|
27
|
+
}
|
|
28
|
+
if (tx.connectorData && isSafeConnector(tx.connectorData)) {
|
|
29
|
+
return tx.receipt?.transactionHash || null;
|
|
30
|
+
}
|
|
31
|
+
return tx.transactionHash;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export { getStandaloneTxHash, getTxHash };
|
|
35
|
+
//# sourceMappingURL=hash.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hash.js","sources":["../../src/transactions/hash.ts"],"sourcesContent":["import { jotaiStore } from \"@/core/store\";\nimport type { Hash } from \"viem\";\nimport type { StandaloneTransactionItem, TransactionItem } from \"./types\";\nimport { isBatchTransactionItem } from \"./utils\";\nimport { allStandaloneTransactionItemsAtom } from \"./state/transactionsAtom\";\nimport { isSafeConnector } from \"@/hooks/connectors/useIsGnosisSafeConnector\";\n\nfunction findStandaloneTx({\n transactionHash,\n}: Pick<StandaloneTransactionItem, \"transactionHash\">) {\n return jotaiStore\n .get(allStandaloneTransactionItemsAtom)\n .find((tx) => tx.transactionHash === transactionHash);\n}\n\nexport function getStandaloneTxHash({\n transactionHash,\n}: {\n transactionHash?: Hash;\n}): Hash | null {\n if (!transactionHash) return null;\n const tx = findStandaloneTx({ transactionHash });\n if (!tx) return null;\n return getTxHash(tx);\n}\n\nexport function getTxHash(tx: TransactionItem): Hash | null {\n if (tx.receipt?.transactionHash) {\n // if tx is mined, receipt is always the source of truth for the transaction hash\n return tx.receipt.transactionHash;\n }\n if (isBatchTransactionItem(tx)) {\n // for batch transactions, we have the real transaction hash in the receipt when the batch is mined\n return tx.receipt?.transactionHash || null;\n }\n if (tx.connectorData && isSafeConnector(tx.connectorData)) {\n // for Safe transactions sent through Safe iframe provider,\n // we don't have the real transaction hash until the transaction is mined\n return tx.receipt?.transactionHash || null;\n }\n\n return tx.transactionHash;\n}\n"],"names":["findStandaloneTx","transactionHash","jotaiStore","get","allStandaloneTransactionItemsAtom","find","tx","getStandaloneTxHash","getTxHash","receipt","isBatchTransactionItem","connectorData","isSafeConnector"],"mappings":";;;;;AAOA,SAASA,gBAAAA,CAAiB;AAAA,EACxBC;AACkD,CAAA,EAAG;AACrD,EAAA,OAAOC,UAAAA,CACJC,IAAIC,iCAAiC,CAAA,CACrCC,KAAMC,CAAAA,EAAAA,KAAOA,EAAAA,CAAGL,oBAAoBA,eAAe,CAAA;AACxD;AAEO,SAASM,mBAAAA,CAAoB;AAAA,EAClCN;AAGF,CAAA,EAAgB;AACd,EAAA,IAAI,CAACA,iBAAiB,OAAO,IAAA;AAC7B,EAAA,MAAMK,KAAKN,gBAAAA,CAAiB;AAAA,IAAEC;AAAAA,GAAiB,CAAA;AAC/C,EAAA,IAAI,CAACK,IAAI,OAAO,IAAA;AAChB,EAAA,OAAOE,UAAUF,EAAE,CAAA;AACrB;AAEO,SAASE,UAAUF,EAAAA,EAAkC;AAC1D,EAAA,IAAIA,EAAAA,CAAGG,SAASR,eAAAA,EAAiB;AAE/B,IAAA,OAAOK,GAAGG,OAAAA,CAAQR,eAAAA;AAAAA,EACpB;AACA,EAAA,IAAIS,sBAAAA,CAAuBJ,EAAE,CAAA,EAAG;AAE9B,IAAA,OAAOA,EAAAA,CAAGG,SAASR,eAAAA,IAAmB,IAAA;AAAA,EACxC;AACA,EAAA,IAAIK,EAAAA,CAAGK,aAAAA,IAAiBC,eAAAA,CAAgBN,EAAAA,CAAGK,aAAa,CAAA,EAAG;AAGzD,IAAA,OAAOL,EAAAA,CAAGG,SAASR,eAAAA,IAAmB,IAAA;AAAA,EACxC;AAEA,EAAA,OAAOK,EAAAA,CAAGL,eAAAA;AACZ;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensureCallsStatus.d.ts","sourceRoot":"","sources":["../../../src/transactions/queries/ensureCallsStatus.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ensureCallsStatus.d.ts","sourceRoot":"","sources":["../../../src/transactions/queries/ensureCallsStatus.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAkC,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1E,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE;IAC1C,EAAE,EAAE,MAAM,CAAC;CACZ,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;AAEtC,KAAK,wBAAwB,GAAG,CAAC,MAAM,CAAC,EAAE;IACxC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,KAAK,mBAAmB,CAAC;AAE1B,eAAO,MAAM,wBAAwB,EAAE,wBAkCpC,CAAC"}
|
|
@@ -1,21 +1,29 @@
|
|
|
1
|
+
import { isExternalConnectorWithSafeIframe } from '../../core/state/externalProviderAtom.js';
|
|
2
|
+
import { isSafeConnector } from '../../hooks/connectors/useIsGnosisSafeConnector.js';
|
|
1
3
|
import { SAFE_CALLS_WAIT_TIMEOUT } from '../../lib/constants/index.js';
|
|
2
4
|
import { queryClient } from '../../lib/queryClient.js';
|
|
3
5
|
import { wagmiConfig } from '../../lib/web3/wagmi/config.js';
|
|
4
|
-
import { waitForCallsStatus } from '@wagmi/core';
|
|
6
|
+
import { getAccount, waitForCallsStatus } from '@wagmi/core';
|
|
5
7
|
import { waitForCallsStatusQueryKey } from 'wagmi/query';
|
|
6
8
|
|
|
7
9
|
const ensureCallsStatusFactory = ({
|
|
8
10
|
queryClient: queryClient$1 = queryClient,
|
|
9
11
|
wagmiConfig: wagmiConfig$1 = wagmiConfig,
|
|
10
|
-
isSafe
|
|
12
|
+
isSafe: _isSafe
|
|
11
13
|
} = {}) => async ({
|
|
12
14
|
id
|
|
13
15
|
}) => {
|
|
16
|
+
const {
|
|
17
|
+
connector
|
|
18
|
+
} = getAccount(wagmiConfig$1);
|
|
19
|
+
const isConnectorSafe = !!connector && isSafeConnector(connector);
|
|
20
|
+
const isSafe = _isSafe || isConnectorSafe || !!connector && await isExternalConnectorWithSafeIframe(connector);
|
|
14
21
|
const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : void 0;
|
|
15
22
|
const queryKey = waitForCallsStatusQueryKey({
|
|
16
23
|
id,
|
|
17
|
-
timeout
|
|
24
|
+
timeout,
|
|
18
25
|
// important to include timeout into queryKey to match useAwaitCalls queryKey
|
|
26
|
+
throwOnFailure: true
|
|
19
27
|
});
|
|
20
28
|
const status = await queryClient$1.ensureQueryData({
|
|
21
29
|
queryKey,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensureCallsStatus.js","sources":["../../../src/transactions/queries/ensureCallsStatus.ts"],"sourcesContent":["import { SAFE_CALLS_WAIT_TIMEOUT } from \"@/lib/constants\";\nimport { queryClient as _queryClient } from \"@/lib/queryClient\";\nimport { wagmiConfig as _wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { QueryClient } from \"@tanstack/react-query\";\nimport { waitForCallsStatus, type Config } from \"@wagmi/core\";\n\nimport {\n waitForCallsStatusQueryKey,\n type WaitForCallsStatusData,\n} from \"wagmi/query\";\n\nexport type EnsureCallsStatusFn = (options: {\n id: string;\n}) => Promise<WaitForCallsStatusData>;\n\ntype EnsureCallsStatusFactory = (params?: {\n queryClient?: QueryClient;\n wagmiConfig?: Config;\n isSafe?: boolean;\n}) => EnsureCallsStatusFn;\n\nexport const ensureCallsStatusFactory: EnsureCallsStatusFactory =\n ({\n queryClient = _queryClient,\n wagmiConfig = _wagmiConfig,\n isSafe
|
|
1
|
+
{"version":3,"file":"ensureCallsStatus.js","sources":["../../../src/transactions/queries/ensureCallsStatus.ts"],"sourcesContent":["import { isExternalConnectorWithSafeIframe } from \"@/core/state/externalProviderAtom\";\nimport { isSafeConnector } from \"@/hooks/connectors/useIsGnosisSafeConnector\";\nimport { SAFE_CALLS_WAIT_TIMEOUT } from \"@/lib/constants\";\nimport { queryClient as _queryClient } from \"@/lib/queryClient\";\nimport { wagmiConfig as _wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { QueryClient } from \"@tanstack/react-query\";\nimport { getAccount, waitForCallsStatus, type Config } from \"@wagmi/core\";\n\nimport {\n waitForCallsStatusQueryKey,\n type WaitForCallsStatusData,\n} from \"wagmi/query\";\n\nexport type EnsureCallsStatusFn = (options: {\n id: string;\n}) => Promise<WaitForCallsStatusData>;\n\ntype EnsureCallsStatusFactory = (params?: {\n queryClient?: QueryClient;\n wagmiConfig?: Config;\n isSafe?: boolean;\n}) => EnsureCallsStatusFn;\n\nexport const ensureCallsStatusFactory: EnsureCallsStatusFactory =\n ({\n queryClient = _queryClient,\n wagmiConfig = _wagmiConfig,\n isSafe: _isSafe,\n } = {}) =>\n async ({ id }) => {\n const { connector } = getAccount(wagmiConfig);\n const isConnectorSafe = !!connector && isSafeConnector(connector);\n\n const isSafe =\n _isSafe ||\n isConnectorSafe ||\n (!!connector && (await isExternalConnectorWithSafeIframe(connector)));\n\n const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : undefined;\n\n const queryKey = waitForCallsStatusQueryKey({\n id,\n timeout, // important to include timeout into queryKey to match useAwaitCalls queryKey\n throwOnFailure: true,\n });\n const status = await queryClient.ensureQueryData({\n queryKey,\n queryFn: async () => {\n return waitForCallsStatus(wagmiConfig, {\n id,\n throwOnFailure: true,\n timeout,\n });\n },\n });\n\n return status;\n };\n"],"names":["ensureCallsStatusFactory","queryClient","_queryClient","wagmiConfig","_wagmiConfig","isSafe","_isSafe","id","connector","getAccount","isConnectorSafe","isSafeConnector","isExternalConnectorWithSafeIframe","timeout","SAFE_CALLS_WAIT_TIMEOUT","undefined","queryKey","waitForCallsStatusQueryKey","throwOnFailure","status","ensureQueryData","queryFn","waitForCallsStatus"],"mappings":";;;;;;;;AAuBO,MAAMA,2BACXA,CAAC;AAAA,eACCC,aAAAA,GAAcC,WAAAA;AAAAA,eACdC,aAAAA,GAAcC,WAAAA;AAAAA,EACdC,MAAAA,EAAQC;AACV,CAAA,GAAI,OACJ,OAAO;AAAA,EAAEC;AAAG,CAAA,KAAM;AAChB,EAAA,MAAM;AAAA,IAAEC;AAAAA,GAAU,GAAIC,WAAWN,aAAW,CAAA;AAC5C,EAAA,MAAMO,eAAAA,GAAkB,CAAC,CAACF,SAAAA,IAAaG,gBAAgBH,SAAS,CAAA;AAEhE,EAAA,MAAMH,MAAAA,GACJC,WACAI,eAAAA,IACC,CAAC,CAACF,SAAAA,IAAc,MAAMI,kCAAkCJ,SAAS,CAAA;AAEpE,EAAA,MAAMK,OAAAA,GAAUR,SAASS,uBAAAA,GAA0BC,MAAAA;AAEnD,EAAA,MAAMC,WAAWC,0BAAAA,CAA2B;AAAA,IAC1CV,EAAAA;AAAAA,IACAM,OAAAA;AAAAA;AAAAA,IACAK,cAAAA,EAAgB;AAAA,GACjB,CAAA;AACD,EAAA,MAAMC,MAAAA,GAAS,MAAMlB,aAAAA,CAAYmB,eAAAA,CAAgB;AAAA,IAC/CJ,QAAAA;AAAAA,IACAK,SAAS,YAAY;AACnB,MAAA,OAAOC,mBAAmBnB,aAAAA,EAAa;AAAA,QACrCI,EAAAA;AAAAA,QACAW,cAAAA,EAAgB,IAAA;AAAA,QAChBL;AAAAA,OACD,CAAA;AAAA,IACH;AAAA,GACD,CAAA;AAED,EAAA,OAAOM,MAAAA;AACT;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensureTxReceipt.d.ts","sourceRoot":"","sources":["../../../src/transactions/queries/ensureTxReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAU,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAI3E,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"ensureTxReceipt.d.ts","sourceRoot":"","sources":["../../../src/transactions/queries/ensureTxReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAU,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,kBAAkB,EAAE,MAAM,MAAM,CAAC;AAI3E,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,cAAc,CAAC;AAK1C,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,qBAAqB,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;AAEjE,MAAM,MAAM,iBAAiB,GAAG,CAC9B,OAAO,EAAE,YAAY,CACnB,IAAI,CAAC,oBAAoB,EAAE,MAAM,GAAG,SAAS,GAAG,eAAe,CAAC,EAChE,MAAM,GAAG,SAAS,CACnB,GAAG;IACF,UAAU,CAAC,EAAE,YAAY,CAAC;CAC3B,KACE,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAEjC,KAAK,sBAAsB,GAAG,CAAC,MAAM,CAAC,EAAE;IACtC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,YAAY,CAAC;IAClC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,KAAK,iBAAiB,CAAC;AAExB,eAAO,MAAM,sBAAsB,EAAE,sBAgDlC,CAAC"}
|
|
@@ -7,23 +7,26 @@ import { SAFE_CALLS_WAIT_TIMEOUT } from '../../lib/constants/index.js';
|
|
|
7
7
|
import 'wagmi/chains';
|
|
8
8
|
import { getAccount, getConnectorClient } from '@wagmi/core';
|
|
9
9
|
import { isSafeConnector } from '../../hooks/connectors/useIsGnosisSafeConnector.js';
|
|
10
|
+
import { isExternalConnectorWithSafeIframe } from '../../core/state/externalProviderAtom.js';
|
|
10
11
|
|
|
11
12
|
const ensureTxReceiptFactory = ({
|
|
12
13
|
queryClient: queryClient$1 = queryClient,
|
|
13
14
|
wagmiConfig: wagmiConfig$1 = wagmiConfig,
|
|
14
|
-
isSafe
|
|
15
|
+
isSafe: _isSafe
|
|
15
16
|
} = {}) => async ({
|
|
16
17
|
hash,
|
|
17
18
|
chainId,
|
|
18
19
|
confirmations,
|
|
19
20
|
onReplaced
|
|
20
21
|
}) => {
|
|
21
|
-
const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : void 0;
|
|
22
|
-
let config = wagmiConfig$1;
|
|
23
22
|
const {
|
|
24
23
|
connector
|
|
25
24
|
} = getAccount(wagmiConfig$1);
|
|
26
|
-
|
|
25
|
+
const isConnectorSafe = !!connector && isSafeConnector(connector);
|
|
26
|
+
const isSafe = _isSafe || isConnectorSafe || !!connector && await isExternalConnectorWithSafeIframe(connector);
|
|
27
|
+
const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : void 0;
|
|
28
|
+
let config = wagmiConfig$1;
|
|
29
|
+
if (isConnectorSafe) {
|
|
27
30
|
const safeClient = await getConnectorClient(wagmiConfig$1, {
|
|
28
31
|
chainId,
|
|
29
32
|
connector
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensureTxReceipt.js","sources":["../../../src/transactions/queries/ensureTxReceipt.ts"],"sourcesContent":["import type { UseAwaitTxParameters } from \"@/hooks/txs/queries/useAwaitTx\";\nimport { queryClient as _queryClient } from \"@/lib/queryClient\";\nimport { wagmiConfig as _wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { QueryClient } from \"@tanstack/react-query\";\n\nimport { assert, type MarkRequired } from \"ts-essentials\";\nimport { type ReplacementReturnType, type TransactionReceipt } from \"viem\";\n\nimport { waitForTransactionReceiptQueryOptions } from \"wagmi/query\";\nimport { SAFE_CALLS_WAIT_TIMEOUT } from \"@/lib/constants\";\nimport { type Chain } from \"wagmi/chains\";\nimport { getAccount, getConnectorClient } from \"@wagmi/core\";\nimport { isSafeConnector } from \"@/hooks/connectors/useIsGnosisSafeConnector\";\n\ntype OnReplacedCb = (data: ReplacementReturnType<Chain>) => void;\n\nexport type EnsureTxReceiptFn = (\n options: MarkRequired<\n Pick<UseAwaitTxParameters, \"hash\" | \"chainId\" | \"confirmations\">,\n \"hash\" | \"chainId\"\n > & {\n onReplaced?: OnReplacedCb;\n }\n) => Promise<TransactionReceipt>;\n\ntype EnsureTxReceiptFactory = (params?: {\n queryClient?: QueryClient;\n wagmiConfig?: typeof _wagmiConfig;\n isSafe?: boolean;\n}) => EnsureTxReceiptFn;\n\nexport const ensureTxReceiptFactory: EnsureTxReceiptFactory =\n ({
|
|
1
|
+
{"version":3,"file":"ensureTxReceipt.js","sources":["../../../src/transactions/queries/ensureTxReceipt.ts"],"sourcesContent":["import type { UseAwaitTxParameters } from \"@/hooks/txs/queries/useAwaitTx\";\nimport { queryClient as _queryClient } from \"@/lib/queryClient\";\nimport { wagmiConfig as _wagmiConfig } from \"@/lib/web3/wagmi/config\";\nimport type { QueryClient } from \"@tanstack/react-query\";\n\nimport { assert, type MarkRequired } from \"ts-essentials\";\nimport { type ReplacementReturnType, type TransactionReceipt } from \"viem\";\n\nimport { waitForTransactionReceiptQueryOptions } from \"wagmi/query\";\nimport { SAFE_CALLS_WAIT_TIMEOUT } from \"@/lib/constants\";\nimport { type Chain } from \"wagmi/chains\";\nimport { getAccount, getConnectorClient } from \"@wagmi/core\";\nimport { isSafeConnector } from \"@/hooks/connectors/useIsGnosisSafeConnector\";\nimport { isExternalConnectorWithSafeIframe } from \"@/core/state/externalProviderAtom\";\n\ntype OnReplacedCb = (data: ReplacementReturnType<Chain>) => void;\n\nexport type EnsureTxReceiptFn = (\n options: MarkRequired<\n Pick<UseAwaitTxParameters, \"hash\" | \"chainId\" | \"confirmations\">,\n \"hash\" | \"chainId\"\n > & {\n onReplaced?: OnReplacedCb;\n }\n) => Promise<TransactionReceipt>;\n\ntype EnsureTxReceiptFactory = (params?: {\n queryClient?: QueryClient;\n wagmiConfig?: typeof _wagmiConfig;\n isSafe?: boolean;\n}) => EnsureTxReceiptFn;\n\nexport const ensureTxReceiptFactory: EnsureTxReceiptFactory =\n ({\n queryClient = _queryClient,\n wagmiConfig = _wagmiConfig,\n isSafe: _isSafe,\n } = {}) =>\n async ({ hash, chainId, confirmations, onReplaced }) => {\n const { connector } = getAccount(wagmiConfig);\n const isConnectorSafe = !!connector && isSafeConnector(connector);\n const isSafe =\n _isSafe ||\n isConnectorSafe ||\n (!!connector && (await isExternalConnectorWithSafeIframe(connector)));\n\n const timeout = isSafe ? SAFE_CALLS_WAIT_TIMEOUT : undefined;\n\n let config = wagmiConfig;\n // always use connector client if connected through native safe connector.\n // safe provider returns a safeTxHash that is different from a real tx hash.\n // if connected to safe through WalletConnect - publicClient returns a real tx hash.\n if (isConnectorSafe) {\n const safeClient = await getConnectorClient(wagmiConfig, {\n chainId,\n connector,\n });\n // force waitForTransactionReceiptQueryOptions to use SafeClient internally\n config = {\n ...wagmiConfig,\n getClient: (options) => {\n assert(!options || options.chainId === chainId, \"chainId mismatch\");\n return safeClient;\n },\n } as typeof wagmiConfig;\n }\n\n // wagmi/core waitForTransactionReceipt throws on receipt.status==\"reverted\",\n // unlike viem waitForTransactionReceipt which returns the receipt as is\n const queryOptions = waitForTransactionReceiptQueryOptions(config, {\n hash,\n chainId,\n confirmations,\n timeout,\n onReplaced,\n });\n\n const receipt = await queryClient.ensureQueryData(queryOptions);\n\n return receipt;\n };\n"],"names":["ensureTxReceiptFactory","queryClient","_queryClient","wagmiConfig","_wagmiConfig","isSafe","_isSafe","hash","chainId","confirmations","onReplaced","connector","getAccount","isConnectorSafe","isSafeConnector","isExternalConnectorWithSafeIframe","timeout","SAFE_CALLS_WAIT_TIMEOUT","undefined","config","safeClient","getConnectorClient","getClient","options","assert","queryOptions","waitForTransactionReceiptQueryOptions","receipt","ensureQueryData"],"mappings":";;;;;;;;;;;AAgCO,MAAMA,yBACXA,CAAC;AAAA,eACCC,aAAAA,GAAcC,WAAAA;AAAAA,eACdC,aAAAA,GAAcC,WAAAA;AAAAA,EACdC,MAAAA,EAAQC;AACV,CAAA,GAAI,OACJ,OAAO;AAAA,EAAEC,IAAAA;AAAAA,EAAMC,OAAAA;AAAAA,EAASC,aAAAA;AAAAA,EAAeC;AAAW,CAAA,KAAM;AACtD,EAAA,MAAM;AAAA,IAAEC;AAAAA,GAAU,GAAIC,WAAWT,aAAW,CAAA;AAC5C,EAAA,MAAMU,eAAAA,GAAkB,CAAC,CAACF,SAAAA,IAAaG,gBAAgBH,SAAS,CAAA;AAChE,EAAA,MAAMN,MAAAA,GACJC,WACAO,eAAAA,IACC,CAAC,CAACF,SAAAA,IAAc,MAAMI,kCAAkCJ,SAAS,CAAA;AAEpE,EAAA,MAAMK,OAAAA,GAAUX,SAASY,uBAAAA,GAA0BC,MAAAA;AAEnD,EAAA,IAAIC,MAAAA,GAAShB,aAAAA;AAIb,EAAA,IAAIU,eAAAA,EAAiB;AACnB,IAAA,MAAMO,UAAAA,GAAa,MAAMC,kBAAAA,CAAmBlB,aAAAA,EAAa;AAAA,MACvDK,OAAAA;AAAAA,MACAG;AAAAA,KACD,CAAA;AAEDQ,IAAAA,MAAAA,GAAS;AAAA,MACP,GAAGhB,aAAAA;AAAAA,MACHmB,WAAYC,CAAAA,OAAAA,KAAY;AACtBC,QAAAA,MAAAA,CAAO,CAACD,OAAAA,IAAWA,OAAAA,CAAQf,OAAAA,KAAYA,SAAS,kBAAkB,CAAA;AAClE,QAAA,OAAOY,UAAAA;AAAAA,MACT;AAAA,KACF;AAAA,EACF;AAIA,EAAA,MAAMK,YAAAA,GAAeC,sCAAsCP,MAAAA,EAAQ;AAAA,IACjEZ,IAAAA;AAAAA,IACAC,OAAAA;AAAAA,IACAC,aAAAA;AAAAA,IACAO,OAAAA;AAAAA,IACAN;AAAAA,GACD,CAAA;AAED,EAAA,MAAMiB,OAAAA,GAAU,MAAM1B,aAAAA,CAAY2B,eAAAA,CAAgBH,YAAY,CAAA;AAE9D,EAAA,OAAOE,OAAAA;AACT;;;;"}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
|
-
export declare const
|
|
1
|
+
export declare const finalizeStandaloneTxsEffect: import('jotai').Atom<void> & {
|
|
2
|
+
effect: import('jotai-effect').Effect;
|
|
3
|
+
};
|
|
4
|
+
export declare const finalizeStandaloneSafeTxsEffect: import('jotai').Atom<void> & {
|
|
2
5
|
effect: import('jotai-effect').Effect;
|
|
3
6
|
};
|
|
4
7
|
export declare const finalizeBatchTxsEffect: import('jotai').Atom<void> & {
|
|
5
8
|
effect: import('jotai-effect').Effect;
|
|
6
9
|
};
|
|
10
|
+
export declare const finalizeBatchSafeTxsEffect: import('jotai').Atom<void> & {
|
|
11
|
+
effect: import('jotai-effect').Effect;
|
|
12
|
+
};
|
|
7
13
|
//# sourceMappingURL=finalize.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finalize.d.ts","sourceRoot":"","sources":["../../../../src/transactions/state/effects/finalize.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"finalize.d.ts","sourceRoot":"","sources":["../../../../src/transactions/state/effects/finalize.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,2BAA2B;;CAStC,CAAC;AAIH,eAAO,MAAM,+BAA+B;;CA0B1C,CAAC;AAKH,eAAO,MAAM,sBAAsB;;CAajC,CAAC;AAGH,eAAO,MAAM,0BAA0B;;CA0BrC,CAAC"}
|
|
@@ -2,27 +2,61 @@ import { atomEffect } from 'jotai-effect';
|
|
|
2
2
|
import { allPendingStandaloneTransactionItemsAtom, allPendingBatchTransactionItemsAtom } from '../transactionsAtom.js';
|
|
3
3
|
import { finalizeStandaloneTxAtom, finalizeBatchTxAtom } from '../transactionsActionAtom.js';
|
|
4
4
|
import { transactionLogger } from '../../logger.js';
|
|
5
|
-
import { accountAtom } from '../../../lib/web3/wagmi/external.js';
|
|
5
|
+
import { accountAtom, addressAtom } from '../../../lib/web3/wagmi/external.js';
|
|
6
|
+
import { isSafeConnector } from '../../../hooks/connectors/useIsGnosisSafeConnector.js';
|
|
7
|
+
import { isGnosisSafeTx } from '../../utils.js';
|
|
6
8
|
|
|
7
9
|
let hasRunStandaloneEffect = false;
|
|
8
|
-
const
|
|
10
|
+
const finalizeStandaloneTxsEffect = atomEffect((get, set) => {
|
|
9
11
|
if (hasRunStandaloneEffect) return;
|
|
10
12
|
hasRunStandaloneEffect = true;
|
|
11
|
-
const pendingStandaloneTxs = get(allPendingStandaloneTransactionItemsAtom);
|
|
13
|
+
const pendingStandaloneTxs = get(allPendingStandaloneTransactionItemsAtom).filter((tx) => !isGnosisSafeTx(tx));
|
|
12
14
|
transactionLogger.log("Effect::pendingStandaloneTxs", pendingStandaloneTxs);
|
|
13
15
|
pendingStandaloneTxs.forEach((tx) => set(finalizeStandaloneTxAtom, tx));
|
|
14
16
|
});
|
|
17
|
+
let hasRunStandaloneSafeEffect = false;
|
|
18
|
+
const finalizeStandaloneSafeTxsEffect = atomEffect((get, set) => {
|
|
19
|
+
if (hasRunStandaloneSafeEffect) return;
|
|
20
|
+
const {
|
|
21
|
+
connector,
|
|
22
|
+
address
|
|
23
|
+
} = get(accountAtom);
|
|
24
|
+
const connectedSafe = connector && isSafeConnector(connector);
|
|
25
|
+
if (connectedSafe && !!connector.getAccounts && !!connector.getChainId && address) {
|
|
26
|
+
hasRunStandaloneSafeEffect = true;
|
|
27
|
+
const addressLower = address.toLowerCase();
|
|
28
|
+
const pendingSafeTxs = get(allPendingStandaloneTransactionItemsAtom).filter(isGnosisSafeTx).filter((tx) => tx.account.toLowerCase() === addressLower);
|
|
29
|
+
transactionLogger.log("Effect::pendingSafeTxs", pendingSafeTxs);
|
|
30
|
+
pendingSafeTxs.forEach((tx) => set(finalizeStandaloneTxAtom, tx));
|
|
31
|
+
}
|
|
32
|
+
});
|
|
15
33
|
let hasRunBatchEffect = false;
|
|
16
34
|
const finalizeBatchTxsEffect = atomEffect((get, set) => {
|
|
17
35
|
if (hasRunBatchEffect) return;
|
|
18
|
-
const
|
|
19
|
-
if (
|
|
36
|
+
const address = get(addressAtom);
|
|
37
|
+
if (address) {
|
|
20
38
|
hasRunBatchEffect = true;
|
|
21
|
-
const pendingBatchTxs = get(allPendingBatchTransactionItemsAtom);
|
|
39
|
+
const pendingBatchTxs = get(allPendingBatchTransactionItemsAtom).filter((tx) => !isGnosisSafeTx(tx));
|
|
22
40
|
transactionLogger.log("Effect::pendingBatchTxs", pendingBatchTxs);
|
|
23
41
|
pendingBatchTxs.forEach((tx) => set(finalizeBatchTxAtom, tx));
|
|
24
42
|
}
|
|
25
43
|
});
|
|
44
|
+
let hasRunBatchSafeEffect = false;
|
|
45
|
+
const finalizeBatchSafeTxsEffect = atomEffect((get, set) => {
|
|
46
|
+
if (hasRunBatchSafeEffect) return;
|
|
47
|
+
const {
|
|
48
|
+
connector,
|
|
49
|
+
address
|
|
50
|
+
} = get(accountAtom);
|
|
51
|
+
const connectedSafe = connector && isSafeConnector(connector);
|
|
52
|
+
if (connectedSafe && !!connector.getAccounts && !!connector.getChainId && address) {
|
|
53
|
+
hasRunBatchSafeEffect = true;
|
|
54
|
+
const addressLower = address.toLowerCase();
|
|
55
|
+
const pendingSafeBatchTxs = get(allPendingBatchTransactionItemsAtom).filter(isGnosisSafeTx).filter((tx) => tx.account.toLowerCase() === addressLower);
|
|
56
|
+
transactionLogger.log("Effect::pendingSafeBatchTxs", pendingSafeBatchTxs);
|
|
57
|
+
pendingSafeBatchTxs.forEach((tx) => set(finalizeBatchTxAtom, tx));
|
|
58
|
+
}
|
|
59
|
+
});
|
|
26
60
|
|
|
27
|
-
export { finalizeBatchTxsEffect,
|
|
61
|
+
export { finalizeBatchSafeTxsEffect, finalizeBatchTxsEffect, finalizeStandaloneSafeTxsEffect, finalizeStandaloneTxsEffect };
|
|
28
62
|
//# sourceMappingURL=finalize.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finalize.js","sources":["../../../../src/transactions/state/effects/finalize.ts"],"sourcesContent":["import { atomEffect } from \"jotai-effect\";\nimport {\n allPendingBatchTransactionItemsAtom,\n allPendingStandaloneTransactionItemsAtom,\n} from \"../transactionsAtom\";\nimport {\n finalizeBatchTxAtom,\n finalizeStandaloneTxAtom,\n} from \"../transactionsActionAtom\";\n\nimport { transactionLogger } from \"../../logger\";\nimport { accountAtom } from \"@/lib/web3/wagmi/external\";\n\n// run only once on app load\nlet hasRunStandaloneEffect = false;\nexport const
|
|
1
|
+
{"version":3,"file":"finalize.js","sources":["../../../../src/transactions/state/effects/finalize.ts"],"sourcesContent":["import { atomEffect } from \"jotai-effect\";\nimport {\n allPendingBatchTransactionItemsAtom,\n allPendingStandaloneTransactionItemsAtom,\n} from \"../transactionsAtom\";\nimport {\n finalizeBatchTxAtom,\n finalizeStandaloneTxAtom,\n} from \"../transactionsActionAtom\";\n\nimport { transactionLogger } from \"../../logger\";\nimport { accountAtom, addressAtom } from \"@/lib/web3/wagmi/external\";\nimport { isSafeConnector } from \"@/hooks/connectors/useIsGnosisSafeConnector\";\nimport { isGnosisSafeTx } from \"@/transactions/utils\";\n\n// run only once on app load\nlet hasRunStandaloneEffect = false;\nexport const finalizeStandaloneTxsEffect = atomEffect((get, set) => {\n if (hasRunStandaloneEffect) return;\n hasRunStandaloneEffect = true;\n\n const pendingStandaloneTxs = get(allPendingStandaloneTransactionItemsAtom)\n // txs through safe are handled in another effect\n .filter((tx) => !isGnosisSafeTx(tx));\n transactionLogger.log(\"Effect::pendingStandaloneTxs\", pendingStandaloneTxs);\n pendingStandaloneTxs.forEach((tx) => set(finalizeStandaloneTxAtom, tx));\n});\n\n// waitForTransactionReceipt(connectorClient,{safeTxHash}) requires wallet to be connected through safe connector\nlet hasRunStandaloneSafeEffect = false;\nexport const finalizeStandaloneSafeTxsEffect = atomEffect((get, set) => {\n if (hasRunStandaloneSafeEffect) return;\n const { connector, address } = get(accountAtom);\n const connectedSafe = connector && isSafeConnector(connector);\n\n // try finalize when:\n // - connected through safe connector\n // - all required methods are available for ensureTxReceipt(){getConnectorClient()}\n // otherwise it will throw ConnectorUnavailableReconnectingError\n if (\n connectedSafe &&\n !!connector.getAccounts &&\n !!connector.getChainId &&\n address\n ) {\n hasRunStandaloneSafeEffect = true;\n\n const addressLower = address.toLowerCase();\n\n const pendingSafeTxs = get(allPendingStandaloneTransactionItemsAtom)\n .filter(isGnosisSafeTx)\n // only trigger Safe tx finalization if the same Safe that made the tx is connected\n .filter((tx) => tx.account.toLowerCase() === addressLower);\n transactionLogger.log(\"Effect::pendingSafeTxs\", pendingSafeTxs);\n pendingSafeTxs.forEach((tx) => set(finalizeStandaloneTxAtom, tx));\n }\n});\n\n// run only once after account is connected and available in atom\n// because waitForCallsStatus requires wallet to be connected\nlet hasRunBatchEffect = false;\nexport const finalizeBatchTxsEffect = atomEffect((get, set) => {\n if (hasRunBatchEffect) return;\n\n const address = get(addressAtom);\n if (address) {\n hasRunBatchEffect = true;\n\n const pendingBatchTxs = get(allPendingBatchTransactionItemsAtom)\n // batch txs through safe are handled in another effect\n .filter((tx) => !isGnosisSafeTx(tx));\n transactionLogger.log(\"Effect::pendingBatchTxs\", pendingBatchTxs);\n pendingBatchTxs.forEach((tx) => set(finalizeBatchTxAtom, tx));\n }\n});\n\nlet hasRunBatchSafeEffect = false;\nexport const finalizeBatchSafeTxsEffect = atomEffect((get, set) => {\n if (hasRunBatchSafeEffect) return;\n const { connector, address } = get(accountAtom);\n const connectedSafe = connector && isSafeConnector(connector);\n\n // try finalize when:\n // - connected through safe connector\n // - all required methods are available for ensureCallsStatus(){getConnectorClient()}\n // otherwise it will throw ConnectorUnavailableReconnectingError\n if (\n connectedSafe &&\n !!connector.getAccounts &&\n !!connector.getChainId &&\n address\n ) {\n hasRunBatchSafeEffect = true;\n\n const addressLower = address.toLowerCase();\n\n const pendingSafeBatchTxs = get(allPendingBatchTransactionItemsAtom)\n .filter(isGnosisSafeTx)\n // only trigger Safe tx finalization if the same Safe that made the tx is connected\n .filter((tx) => tx.account.toLowerCase() === addressLower);\n transactionLogger.log(\"Effect::pendingSafeBatchTxs\", pendingSafeBatchTxs);\n pendingSafeBatchTxs.forEach((tx) => set(finalizeBatchTxAtom, tx));\n }\n});\n"],"names":["hasRunStandaloneEffect","finalizeStandaloneTxsEffect","atomEffect","get","set","pendingStandaloneTxs","allPendingStandaloneTransactionItemsAtom","filter","tx","isGnosisSafeTx","transactionLogger","log","forEach","finalizeStandaloneTxAtom","hasRunStandaloneSafeEffect","finalizeStandaloneSafeTxsEffect","connector","address","accountAtom","connectedSafe","isSafeConnector","getAccounts","getChainId","addressLower","toLowerCase","pendingSafeTxs","account","hasRunBatchEffect","finalizeBatchTxsEffect","addressAtom","pendingBatchTxs","allPendingBatchTransactionItemsAtom","finalizeBatchTxAtom","hasRunBatchSafeEffect","finalizeBatchSafeTxsEffect","pendingSafeBatchTxs"],"mappings":";;;;;;;;AAgBA,IAAIA,sBAAAA,GAAyB,KAAA;AACtB,MAAMC,2BAAAA,GAA8BC,UAAAA,CAAW,CAACC,GAAAA,EAAKC,GAAAA,KAAQ;AAClE,EAAA,IAAIJ,sBAAAA,EAAwB;AAC5BA,EAAAA,sBAAAA,GAAyB,IAAA;AAEzB,EAAA,MAAMK,oBAAAA,GAAuBF,IAAIG,wCAAwC,CAAA,CAEtEC,OAAQC,CAAAA,EAAAA,KAAO,CAACC,cAAAA,CAAeD,EAAE,CAAC,CAAA;AACrCE,EAAAA,iBAAAA,CAAkBC,GAAAA,CAAI,gCAAgCN,oBAAoB,CAAA;AAC1EA,EAAAA,oBAAAA,CAAqBO,OAAAA,CAASJ,CAAAA,EAAAA,KAAOJ,GAAAA,CAAIS,wBAAAA,EAA0BL,EAAE,CAAC,CAAA;AACxE,CAAC;AAGD,IAAIM,0BAAAA,GAA6B,KAAA;AAC1B,MAAMC,+BAAAA,GAAkCb,UAAAA,CAAW,CAACC,GAAAA,EAAKC,GAAAA,KAAQ;AACtE,EAAA,IAAIU,0BAAAA,EAA4B;AAChC,EAAA,MAAM;AAAA,IAAEE,SAAAA;AAAAA,IAAWC;AAAAA,GAAQ,GAAId,IAAIe,WAAW,CAAA;AAC9C,EAAA,MAAMC,aAAAA,GAAgBH,SAAAA,IAAaI,eAAAA,CAAgBJ,SAAS,CAAA;AAM5D,EAAA,IACEG,aAAAA,IACA,CAAC,CAACH,SAAAA,CAAUK,eACZ,CAAC,CAACL,SAAAA,CAAUM,UAAAA,IACZL,OAAAA,EACA;AACAH,IAAAA,0BAAAA,GAA6B,IAAA;AAE7B,IAAA,MAAMS,YAAAA,GAAeN,QAAQO,WAAAA,EAAY;AAEzC,IAAA,MAAMC,cAAAA,GAAiBtB,GAAAA,CAAIG,wCAAwC,CAAA,CAChEC,MAAAA,CAAOE,cAAc,CAAA,CAErBF,MAAAA,CAAQC,CAAAA,EAAAA,KAAOA,EAAAA,CAAGkB,OAAAA,CAAQF,WAAAA,OAAkBD,YAAY,CAAA;AAC3Db,IAAAA,iBAAAA,CAAkBC,GAAAA,CAAI,0BAA0Bc,cAAc,CAAA;AAC9DA,IAAAA,cAAAA,CAAeb,OAAAA,CAASJ,CAAAA,EAAAA,KAAOJ,GAAAA,CAAIS,wBAAAA,EAA0BL,EAAE,CAAC,CAAA;AAAA,EAClE;AACF,CAAC;AAID,IAAImB,iBAAAA,GAAoB,KAAA;AACjB,MAAMC,sBAAAA,GAAyB1B,UAAAA,CAAW,CAACC,GAAAA,EAAKC,GAAAA,KAAQ;AAC7D,EAAA,IAAIuB,iBAAAA,EAAmB;AAEvB,EAAA,MAAMV,OAAAA,GAAUd,IAAI0B,WAAW,CAAA;AAC/B,EAAA,IAAIZ,OAAAA,EAAS;AACXU,IAAAA,iBAAAA,GAAoB,IAAA;AAEpB,IAAA,MAAMG,eAAAA,GAAkB3B,IAAI4B,mCAAmC,CAAA,CAE5DxB,OAAQC,CAAAA,EAAAA,KAAO,CAACC,cAAAA,CAAeD,EAAE,CAAC,CAAA;AACrCE,IAAAA,iBAAAA,CAAkBC,GAAAA,CAAI,2BAA2BmB,eAAe,CAAA;AAChEA,IAAAA,eAAAA,CAAgBlB,OAAAA,CAASJ,CAAAA,EAAAA,KAAOJ,GAAAA,CAAI4B,mBAAAA,EAAqBxB,EAAE,CAAC,CAAA;AAAA,EAC9D;AACF,CAAC;AAED,IAAIyB,qBAAAA,GAAwB,KAAA;AACrB,MAAMC,0BAAAA,GAA6BhC,UAAAA,CAAW,CAACC,GAAAA,EAAKC,GAAAA,KAAQ;AACjE,EAAA,IAAI6B,qBAAAA,EAAuB;AAC3B,EAAA,MAAM;AAAA,IAAEjB,SAAAA;AAAAA,IAAWC;AAAAA,GAAQ,GAAId,IAAIe,WAAW,CAAA;AAC9C,EAAA,MAAMC,aAAAA,GAAgBH,SAAAA,IAAaI,eAAAA,CAAgBJ,SAAS,CAAA;AAM5D,EAAA,IACEG,aAAAA,IACA,CAAC,CAACH,SAAAA,CAAUK,eACZ,CAAC,CAACL,SAAAA,CAAUM,UAAAA,IACZL,OAAAA,EACA;AACAgB,IAAAA,qBAAAA,GAAwB,IAAA;AAExB,IAAA,MAAMV,YAAAA,GAAeN,QAAQO,WAAAA,EAAY;AAEzC,IAAA,MAAMW,mBAAAA,GAAsBhC,GAAAA,CAAI4B,mCAAmC,CAAA,CAChExB,MAAAA,CAAOE,cAAc,CAAA,CAErBF,MAAAA,CAAQC,CAAAA,EAAAA,KAAOA,EAAAA,CAAGkB,OAAAA,CAAQF,WAAAA,OAAkBD,YAAY,CAAA;AAC3Db,IAAAA,iBAAAA,CAAkBC,GAAAA,CAAI,+BAA+BwB,mBAAmB,CAAA;AACxEA,IAAAA,mBAAAA,CAAoBvB,OAAAA,CAASJ,CAAAA,EAAAA,KAAOJ,GAAAA,CAAI4B,mBAAAA,EAAqBxB,EAAE,CAAC,CAAA;AAAA,EAClE;AACF,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useActivateEffects.d.ts","sourceRoot":"","sources":["../../../../src/transactions/state/hooks/useActivateEffects.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useActivateEffects.d.ts","sourceRoot":"","sources":["../../../../src/transactions/state/hooks/useActivateEffects.ts"],"names":[],"mappings":"AAQA,wBAAgB,kBAAkB,SAMjC"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { useAtom } from '../../../core/store.js';
|
|
2
|
-
import {
|
|
2
|
+
import { finalizeStandaloneTxsEffect, finalizeStandaloneSafeTxsEffect, finalizeBatchTxsEffect, finalizeBatchSafeTxsEffect } from '../effects/finalize.js';
|
|
3
3
|
|
|
4
4
|
function useActivateEffects() {
|
|
5
|
-
useAtom(
|
|
5
|
+
useAtom(finalizeStandaloneTxsEffect);
|
|
6
|
+
useAtom(finalizeStandaloneSafeTxsEffect);
|
|
6
7
|
useAtom(finalizeBatchTxsEffect);
|
|
8
|
+
useAtom(finalizeBatchSafeTxsEffect);
|
|
7
9
|
}
|
|
8
10
|
|
|
9
11
|
export { useActivateEffects };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useActivateEffects.js","sources":["../../../../src/transactions/state/hooks/useActivateEffects.ts"],"sourcesContent":["import { useAtom } from \"@/core/store\";\nimport {\n finalizeBatchTxsEffect,\n
|
|
1
|
+
{"version":3,"file":"useActivateEffects.js","sources":["../../../../src/transactions/state/hooks/useActivateEffects.ts"],"sourcesContent":["import { useAtom } from \"@/core/store\";\nimport {\n finalizeBatchTxsEffect,\n finalizeStandaloneTxsEffect,\n finalizeStandaloneSafeTxsEffect,\n finalizeBatchSafeTxsEffect,\n} from \"@/transactions/state/effects/finalize\";\n\nexport function useActivateEffects() {\n // atomEffects must be rendered for subscriptions to activate\n useAtom(finalizeStandaloneTxsEffect);\n useAtom(finalizeStandaloneSafeTxsEffect);\n useAtom(finalizeBatchTxsEffect);\n useAtom(finalizeBatchSafeTxsEffect);\n}\n"],"names":["useActivateEffects","useAtom","finalizeStandaloneTxsEffect","finalizeStandaloneSafeTxsEffect","finalizeBatchTxsEffect","finalizeBatchSafeTxsEffect"],"mappings":";;;AAQO,SAAAA,kBAAAA,GAAA;AAELC,EAAAA,OAAAA,CAAQC,2BAA2B,CAAA;AACnCD,EAAAA,OAAAA,CAAQE,+BAA+B,CAAA;AACvCF,EAAAA,OAAAA,CAAQG,sBAAsB,CAAA;AAC9BH,EAAAA,OAAAA,CAAQI,0BAA0B,CAAA;AAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionsActionAtom.d.ts","sourceRoot":"","sources":["../../../src/transactions/state/transactionsActionAtom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,yBAAyB,EACzB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"transactionsActionAtom.d.ts","sourceRoot":"","sources":["../../../src/transactions/state/transactionsActionAtom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,yBAAyB,EACzB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,UAAU,CAAC;AA0BlB,eAAO,MAAM,SAAS;;CAuBrB,CAAC;AAEF,eAAO,MAAM,wBAAwB;;CAkCnC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;CA8B9B,CAAC;AAEH,eAAO,MAAM,KAAK,GAAU,aAAa,kBAAkB,kBAE1D,CAAC"}
|
|
@@ -5,18 +5,24 @@ import { ensureTxReceiptFactory } from '../queries/ensureTxReceipt.js';
|
|
|
5
5
|
import { WaitForTransactionReceiptTimeoutError, TransactionReceiptNotFoundError, WaitForCallsStatusTimeoutError, MethodNotSupportedRpcError } from 'viem';
|
|
6
6
|
import { transactionLogger } from '../logger.js';
|
|
7
7
|
import { transactionsAtom } from './transactionsAtom.js';
|
|
8
|
-
import { isStandaloneTransactionItem, isBatchTransactionItem } from '../utils.js';
|
|
9
|
-
import { accountAtom } from '../../lib/web3/wagmi/external.js';
|
|
8
|
+
import { isGnosisSafeTx, isStandaloneTransactionItem, isBatchTransactionItem } from '../utils.js';
|
|
10
9
|
import { assert } from 'ts-essentials';
|
|
10
|
+
import { accountAtom } from '../../lib/web3/wagmi/external.js';
|
|
11
11
|
|
|
12
12
|
const addTxAtom = atom(null, async (get, set, transaction) => {
|
|
13
|
-
const
|
|
14
|
-
|
|
13
|
+
const {
|
|
14
|
+
connector,
|
|
15
|
+
address
|
|
16
|
+
} = get(accountAtom);
|
|
17
|
+
assert(connector && address, "connector and address are required");
|
|
15
18
|
const txWithMeta = {
|
|
16
19
|
...transaction,
|
|
17
|
-
account,
|
|
20
|
+
account: address,
|
|
18
21
|
timestamp: Date.now(),
|
|
19
|
-
dropped: false
|
|
22
|
+
dropped: false,
|
|
23
|
+
connectorData: {
|
|
24
|
+
type: connector.type
|
|
25
|
+
}
|
|
20
26
|
};
|
|
21
27
|
set(transactionsAtom, (current) => assignTx(current, txWithMeta));
|
|
22
28
|
if (isStandaloneTransactionItem(txWithMeta)) {
|
|
@@ -30,18 +36,30 @@ const finalizeStandaloneTxAtom = atom(null, async (_, set, transaction) => {
|
|
|
30
36
|
...transaction
|
|
31
37
|
};
|
|
32
38
|
const ensureTxReceipt = ensureTxReceiptFactory();
|
|
39
|
+
const isTxThroughSafe = isGnosisSafeTx(finalizedTx);
|
|
33
40
|
try {
|
|
34
|
-
|
|
35
|
-
hash:
|
|
36
|
-
chainId:
|
|
41
|
+
const txReceipt = await ensureTxReceipt({
|
|
42
|
+
hash: finalizedTx.transactionHash,
|
|
43
|
+
chainId: finalizedTx.chainId
|
|
37
44
|
});
|
|
45
|
+
finalizedTx.receipt = txReceipt;
|
|
38
46
|
} catch (error) {
|
|
39
47
|
if (error instanceof WaitForTransactionReceiptTimeoutError || error instanceof TransactionReceiptNotFoundError) {
|
|
40
48
|
finalizedTx.dropped = true;
|
|
41
|
-
transactionLogger.error(
|
|
49
|
+
transactionLogger.error("tx dropped", {
|
|
50
|
+
error,
|
|
51
|
+
finalizedTx,
|
|
52
|
+
isTxThroughSafe
|
|
53
|
+
});
|
|
42
54
|
} else throw error;
|
|
43
55
|
} finally {
|
|
44
|
-
|
|
56
|
+
if (finalizedTx.receipt || finalizedTx.dropped) {
|
|
57
|
+
set(transactionsAtom, (current) => assignTx(current, finalizedTx));
|
|
58
|
+
transactionLogger.log("tx finalized", {
|
|
59
|
+
finalizedTx,
|
|
60
|
+
isTxThroughSafe
|
|
61
|
+
});
|
|
62
|
+
}
|
|
45
63
|
}
|
|
46
64
|
});
|
|
47
65
|
const finalizeBatchTxAtom = atom(null, async (_, set, transaction) => {
|
|
@@ -54,20 +72,30 @@ const finalizeBatchTxAtom = atom(null, async (_, set, transaction) => {
|
|
|
54
72
|
receipts,
|
|
55
73
|
status
|
|
56
74
|
} = await ensureCallsStatus({
|
|
57
|
-
id:
|
|
75
|
+
id: finalizedTx.callsId
|
|
58
76
|
});
|
|
59
77
|
finalizedTx.callsStatus = status;
|
|
60
78
|
finalizedTx.receipt = receipts?.[receipts.length - 1];
|
|
61
79
|
} catch (error) {
|
|
62
80
|
if (error instanceof WaitForCallsStatusTimeoutError || error instanceof MethodNotSupportedRpcError) {
|
|
63
81
|
finalizedTx.dropped = true;
|
|
64
|
-
transactionLogger.error(
|
|
82
|
+
transactionLogger.error("batch tx dropped", {
|
|
83
|
+
error,
|
|
84
|
+
finalizedTx
|
|
85
|
+
});
|
|
65
86
|
} else {
|
|
66
87
|
finalizedTx.callsStatus = "failure";
|
|
88
|
+
transactionLogger.error("batch tx failed", {
|
|
89
|
+
error,
|
|
90
|
+
finalizedTx
|
|
91
|
+
});
|
|
67
92
|
throw error;
|
|
68
93
|
}
|
|
69
94
|
} finally {
|
|
70
95
|
set(transactionsAtom, (current) => assignTx(current, finalizedTx));
|
|
96
|
+
transactionLogger.log("batch tx finalized", {
|
|
97
|
+
finalizedTx
|
|
98
|
+
});
|
|
71
99
|
}
|
|
72
100
|
});
|
|
73
101
|
const addTx = async (transaction) => {
|
|
@@ -75,7 +103,7 @@ const addTx = async (transaction) => {
|
|
|
75
103
|
};
|
|
76
104
|
function sanitizeTx(tx) {
|
|
77
105
|
if (isBatchTransactionItem(tx)) {
|
|
78
|
-
|
|
106
|
+
const txItem2 = {
|
|
79
107
|
action: tx.action,
|
|
80
108
|
account: tx.account,
|
|
81
109
|
chainId: tx.chainId,
|
|
@@ -86,8 +114,14 @@ function sanitizeTx(tx) {
|
|
|
86
114
|
receipt: tx.receipt,
|
|
87
115
|
transactionSpecificData: tx.transactionSpecificData
|
|
88
116
|
};
|
|
117
|
+
if (tx.connectorData) {
|
|
118
|
+
txItem2.connectorData = {
|
|
119
|
+
type: tx.connectorData.type
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
return txItem2;
|
|
89
123
|
}
|
|
90
|
-
|
|
124
|
+
const txItem = {
|
|
91
125
|
action: tx.action,
|
|
92
126
|
chainId: tx.chainId,
|
|
93
127
|
account: tx.account,
|
|
@@ -97,6 +131,12 @@ function sanitizeTx(tx) {
|
|
|
97
131
|
receipt: tx.receipt,
|
|
98
132
|
transactionSpecificData: tx.transactionSpecificData
|
|
99
133
|
};
|
|
134
|
+
if (tx.connectorData) {
|
|
135
|
+
txItem.connectorData = {
|
|
136
|
+
type: tx.connectorData.type
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
return txItem;
|
|
100
140
|
}
|
|
101
141
|
function assignTx(currentTransactions, transaction) {
|
|
102
142
|
transactionLogger.log("assignTx", {
|