thirdweb 5.99.3 → 5.100.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/bridge/Buy.js +17 -13
- package/dist/cjs/bridge/Buy.js.map +1 -1
- package/dist/cjs/bridge/Chains.js +2 -2
- package/dist/cjs/bridge/Chains.js.map +1 -1
- package/dist/cjs/bridge/Onramp.js +152 -0
- package/dist/cjs/bridge/Onramp.js.map +1 -0
- package/dist/cjs/bridge/OnrampStatus.js +78 -0
- package/dist/cjs/bridge/OnrampStatus.js.map +1 -0
- package/dist/cjs/bridge/Routes.js +2 -2
- package/dist/cjs/bridge/Routes.js.map +1 -1
- package/dist/cjs/bridge/Sell.js +18 -14
- package/dist/cjs/bridge/Sell.js.map +1 -1
- package/dist/cjs/bridge/Status.js +15 -2
- package/dist/cjs/bridge/Status.js.map +1 -1
- package/dist/cjs/bridge/Transfer.js +229 -0
- package/dist/cjs/bridge/Transfer.js.map +1 -0
- package/dist/cjs/bridge/index.js +3 -1
- package/dist/cjs/bridge/index.js.map +1 -1
- package/dist/cjs/bridge/types/BridgeAction.js +3 -0
- package/dist/cjs/bridge/types/BridgeAction.js.map +1 -0
- package/dist/cjs/bridge/types/Token.js +3 -0
- package/dist/cjs/bridge/types/Token.js.map +1 -0
- package/dist/cjs/extensions/ens/resolve-l2-name.js +0 -2
- package/dist/cjs/extensions/ens/resolve-l2-name.js.map +1 -1
- package/dist/cjs/pay/buyWithCrypto/getQuote.js +159 -53
- package/dist/cjs/pay/buyWithCrypto/getQuote.js.map +1 -1
- package/dist/cjs/pay/buyWithCrypto/getStatus.js +160 -14
- package/dist/cjs/pay/buyWithCrypto/getStatus.js.map +1 -1
- package/dist/cjs/pay/buyWithCrypto/getTransfer.js +95 -37
- package/dist/cjs/pay/buyWithCrypto/getTransfer.js.map +1 -1
- package/dist/cjs/pay/buyWithFiat/getQuote.js +129 -33
- package/dist/cjs/pay/buyWithFiat/getQuote.js.map +1 -1
- package/dist/cjs/pay/buyWithFiat/getStatus.js +71 -20
- package/dist/cjs/pay/buyWithFiat/getStatus.js.map +1 -1
- package/dist/cjs/pay/utils/commonTypes.js +1 -1
- package/dist/cjs/pay/utils/commonTypes.js.map +1 -1
- package/dist/cjs/pay/utils/definitions.js +1 -43
- package/dist/cjs/pay/utils/definitions.js.map +1 -1
- package/dist/cjs/react/core/hooks/pay/useBuyWithFiatStatus.js +1 -3
- package/dist/cjs/react/core/hooks/pay/useBuyWithFiatStatus.js.map +1 -1
- package/dist/cjs/react/core/hooks/transaction/useSendTransaction.js +44 -38
- package/dist/cjs/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/cjs/react/core/utils/wallet.js +15 -0
- package/dist/cjs/react/core/utils/wallet.js.map +1 -1
- package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js +1 -1
- package/dist/cjs/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/TransactionsScreen.js +1 -23
- package/dist/cjs/react/web/ui/ConnectWallet/TransactionsScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/locale/en.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/locale/en.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.js +0 -177
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.js +2 -10
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useBuyTxStates.js +5 -8
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/main/useBuyTxStates.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/SwapDetailsScreen.js +0 -15
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/SwapDetailsScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/statusMeta.js +0 -60
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/statusMeta.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js +3 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/fetchBalancesForWallet.js +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/fetchBalancesForWallet.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/pendingSwapTx.js +4 -4
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/pendingSwapTx.js.map +1 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js +83 -34
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js.map +1 -1
- package/dist/cjs/react/web/ui/TransactionButton/DepositScreen.js +133 -0
- package/dist/cjs/react/web/ui/TransactionButton/DepositScreen.js.map +1 -0
- package/dist/cjs/react/web/ui/TransactionButton/ExecutingScreen.js +4 -3
- package/dist/cjs/react/web/ui/TransactionButton/ExecutingScreen.js.map +1 -1
- package/dist/cjs/react/web/ui/TransactionButton/TransactionModal.js +9 -1
- package/dist/cjs/react/web/ui/TransactionButton/TransactionModal.js.map +1 -1
- package/dist/cjs/utils/any-evm/zksync/constants.js +1 -0
- package/dist/cjs/utils/any-evm/zksync/constants.js.map +1 -1
- package/dist/cjs/utils/domains.js +3 -0
- package/dist/cjs/utils/domains.js.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/esm/bridge/Buy.js +17 -13
- package/dist/esm/bridge/Buy.js.map +1 -1
- package/dist/esm/bridge/Chains.js +2 -2
- package/dist/esm/bridge/Chains.js.map +1 -1
- package/dist/esm/bridge/Onramp.js +147 -0
- package/dist/esm/bridge/Onramp.js.map +1 -0
- package/dist/esm/bridge/OnrampStatus.js +75 -0
- package/dist/esm/bridge/OnrampStatus.js.map +1 -0
- package/dist/esm/bridge/Routes.js +2 -2
- package/dist/esm/bridge/Routes.js.map +1 -1
- package/dist/esm/bridge/Sell.js +18 -14
- package/dist/esm/bridge/Sell.js.map +1 -1
- package/dist/esm/bridge/Status.js +15 -2
- package/dist/esm/bridge/Status.js.map +1 -1
- package/dist/esm/bridge/Transfer.js +226 -0
- package/dist/esm/bridge/Transfer.js.map +1 -0
- package/dist/esm/bridge/index.js +2 -0
- package/dist/esm/bridge/index.js.map +1 -1
- package/dist/esm/bridge/types/BridgeAction.js +2 -0
- package/dist/esm/bridge/types/BridgeAction.js.map +1 -0
- package/dist/esm/bridge/types/Token.js +2 -0
- package/dist/esm/bridge/types/Token.js.map +1 -0
- package/dist/esm/extensions/ens/resolve-l2-name.js +0 -2
- package/dist/esm/extensions/ens/resolve-l2-name.js.map +1 -1
- package/dist/esm/pay/buyWithCrypto/getQuote.js +159 -53
- package/dist/esm/pay/buyWithCrypto/getQuote.js.map +1 -1
- package/dist/esm/pay/buyWithCrypto/getStatus.js +160 -14
- package/dist/esm/pay/buyWithCrypto/getStatus.js.map +1 -1
- package/dist/esm/pay/buyWithCrypto/getTransfer.js +95 -37
- package/dist/esm/pay/buyWithCrypto/getTransfer.js.map +1 -1
- package/dist/esm/pay/buyWithFiat/getQuote.js +129 -33
- package/dist/esm/pay/buyWithFiat/getQuote.js.map +1 -1
- package/dist/esm/pay/buyWithFiat/getStatus.js +71 -20
- package/dist/esm/pay/buyWithFiat/getStatus.js.map +1 -1
- package/dist/esm/pay/utils/commonTypes.js +1 -1
- package/dist/esm/pay/utils/commonTypes.js.map +1 -1
- package/dist/esm/pay/utils/definitions.js +0 -35
- package/dist/esm/pay/utils/definitions.js.map +1 -1
- package/dist/esm/react/core/hooks/pay/useBuyWithFiatStatus.js +1 -3
- package/dist/esm/react/core/hooks/pay/useBuyWithFiatStatus.js.map +1 -1
- package/dist/esm/react/core/hooks/transaction/useSendTransaction.js +44 -38
- package/dist/esm/react/core/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/esm/react/core/utils/wallet.js +15 -0
- package/dist/esm/react/core/utils/wallet.js.map +1 -1
- package/dist/esm/react/web/hooks/transaction/useSendTransaction.js +1 -1
- package/dist/esm/react/web/hooks/transaction/useSendTransaction.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/TransactionsScreen.js +1 -23
- package/dist/esm/react/web/ui/ConnectWallet/TransactionsScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/locale/en.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/locale/en.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.js +4 -180
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.js +2 -10
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useBuyTxStates.js +5 -8
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/main/useBuyTxStates.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/SwapDetailsScreen.js +2 -16
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/SwapDetailsScreen.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/statusMeta.js +0 -59
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/statusMeta.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js +3 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/fetchBalancesForWallet.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/fetchBalancesForWallet.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/pendingSwapTx.js +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/pendingSwapTx.js.map +1 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js +84 -34
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.js.map +1 -1
- package/dist/esm/react/web/ui/TransactionButton/DepositScreen.js +130 -0
- package/dist/esm/react/web/ui/TransactionButton/DepositScreen.js.map +1 -0
- package/dist/esm/react/web/ui/TransactionButton/ExecutingScreen.js +4 -3
- package/dist/esm/react/web/ui/TransactionButton/ExecutingScreen.js.map +1 -1
- package/dist/esm/react/web/ui/TransactionButton/TransactionModal.js +9 -1
- package/dist/esm/react/web/ui/TransactionButton/TransactionModal.js.map +1 -1
- package/dist/esm/utils/any-evm/zksync/constants.js +1 -0
- package/dist/esm/utils/any-evm/zksync/constants.js.map +1 -1
- package/dist/esm/utils/domains.js +3 -0
- package/dist/esm/utils/domains.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/types/bridge/Buy.d.ts +11 -9
- package/dist/types/bridge/Buy.d.ts.map +1 -1
- package/dist/types/bridge/Onramp.d.ts +123 -0
- package/dist/types/bridge/Onramp.d.ts.map +1 -0
- package/dist/types/bridge/OnrampStatus.d.ts +108 -0
- package/dist/types/bridge/OnrampStatus.d.ts.map +1 -0
- package/dist/types/bridge/Sell.d.ts +13 -11
- package/dist/types/bridge/Sell.d.ts.map +1 -1
- package/dist/types/bridge/Status.d.ts.map +1 -1
- package/dist/types/bridge/Transfer.d.ts +199 -0
- package/dist/types/bridge/Transfer.d.ts.map +1 -0
- package/dist/types/bridge/index.d.ts +7 -3
- package/dist/types/bridge/index.d.ts.map +1 -1
- package/dist/types/bridge/types/BridgeAction.d.ts +2 -0
- package/dist/types/bridge/types/BridgeAction.d.ts.map +1 -0
- package/dist/types/bridge/types/Quote.d.ts +3 -65
- package/dist/types/bridge/types/Quote.d.ts.map +1 -1
- package/dist/types/bridge/types/Route.d.ts +38 -17
- package/dist/types/bridge/types/Route.d.ts.map +1 -1
- package/dist/types/bridge/types/Status.d.ts +15 -0
- package/dist/types/bridge/types/Status.d.ts.map +1 -1
- package/dist/types/bridge/types/Token.d.ts +11 -0
- package/dist/types/bridge/types/Token.d.ts.map +1 -0
- package/dist/types/extensions/ens/resolve-l2-name.d.ts.map +1 -1
- package/dist/types/pay/buyWithCrypto/commonTypes.d.ts +0 -9
- package/dist/types/pay/buyWithCrypto/commonTypes.d.ts.map +1 -1
- package/dist/types/pay/buyWithCrypto/getQuote.d.ts.map +1 -1
- package/dist/types/pay/buyWithCrypto/getStatus.d.ts +1 -1
- package/dist/types/pay/buyWithCrypto/getStatus.d.ts.map +1 -1
- package/dist/types/pay/buyWithCrypto/getTransfer.d.ts.map +1 -1
- package/dist/types/pay/buyWithFiat/getQuote.d.ts.map +1 -1
- package/dist/types/pay/buyWithFiat/getStatus.d.ts +1 -12
- package/dist/types/pay/buyWithFiat/getStatus.d.ts.map +1 -1
- package/dist/types/pay/utils/commonTypes.d.ts +1 -1
- package/dist/types/pay/utils/commonTypes.d.ts.map +1 -1
- package/dist/types/pay/utils/definitions.d.ts +0 -35
- package/dist/types/pay/utils/definitions.d.ts.map +1 -1
- package/dist/types/react/core/hooks/pay/useBuyWithFiatStatus.d.ts.map +1 -1
- package/dist/types/react/core/hooks/transaction/useSendTransaction.d.ts +1 -0
- package/dist/types/react/core/hooks/transaction/useSendTransaction.d.ts.map +1 -1
- package/dist/types/react/core/utils/wallet.d.ts.map +1 -1
- package/dist/types/react/web/hooks/transaction/useSendTransaction.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/TransactionsScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.d.ts +1 -30
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts +2 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/types.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useBuyTxStates.d.ts +2 -0
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/main/useBuyTxStates.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/SwapDetailsScreen.d.ts +0 -5
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/SwapDetailsScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/statusMeta.d.ts +1 -3
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/statusMeta.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/pendingSwapTx.d.ts +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/pendingSwapTx.d.ts.map +1 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.d.ts +8 -4
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.d.ts.map +1 -1
- package/dist/types/react/web/ui/TransactionButton/DepositScreen.d.ts +15 -0
- package/dist/types/react/web/ui/TransactionButton/DepositScreen.d.ts.map +1 -0
- package/dist/types/react/web/ui/TransactionButton/ExecutingScreen.d.ts.map +1 -1
- package/dist/types/react/web/ui/TransactionButton/TransactionModal.d.ts +1 -0
- package/dist/types/react/web/ui/TransactionButton/TransactionModal.d.ts.map +1 -1
- package/dist/types/utils/any-evm/zksync/constants.d.ts.map +1 -1
- package/dist/types/utils/domains.d.ts +6 -0
- package/dist/types/utils/domains.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/package.json +15 -15
- package/src/bridge/Buy.ts +19 -13
- package/src/bridge/Chains.ts +2 -2
- package/src/bridge/Onramp.test.ts +118 -0
- package/src/bridge/Onramp.ts +244 -0
- package/src/bridge/OnrampStatus.ts +133 -0
- package/src/bridge/Routes.ts +2 -2
- package/src/bridge/Sell.ts +20 -14
- package/src/bridge/Status.ts +15 -2
- package/src/bridge/Transfer.test.ts +76 -0
- package/src/bridge/Transfer.ts +270 -0
- package/src/bridge/index.ts +12 -3
- package/src/bridge/types/BridgeAction.ts +1 -0
- package/src/bridge/types/Quote.ts +3 -65
- package/src/bridge/types/Route.ts +42 -17
- package/src/bridge/types/Status.ts +15 -1
- package/src/bridge/types/Token.ts +11 -0
- package/src/extensions/ens/resolve-l2-name.ts +0 -2
- package/src/pay/buyWithCrypto/commonTypes.ts +0 -10
- package/src/pay/buyWithCrypto/getQuote.ts +210 -100
- package/src/pay/buyWithCrypto/getStatus.ts +213 -20
- package/src/pay/buyWithCrypto/getTransfer.ts +129 -61
- package/src/pay/buyWithFiat/getQuote.ts +184 -33
- package/src/pay/buyWithFiat/getStatus.ts +101 -42
- package/src/pay/convert/cryptoToFiat.test.ts +7 -5
- package/src/pay/convert/fiatToCrypto.test.ts +6 -4
- package/src/pay/utils/commonTypes.ts +1 -1
- package/src/pay/utils/definitions.ts +0 -48
- package/src/react/core/hooks/pay/useBuyWithFiatStatus.ts +0 -2
- package/src/react/core/hooks/transaction/useSendTransaction.ts +53 -52
- package/src/react/core/utils/wallet.ts +15 -0
- package/src/react/web/hooks/transaction/useSendTransaction.tsx +1 -0
- package/src/react/web/ui/ConnectWallet/TransactionsScreen.tsx +5 -64
- package/src/react/web/ui/ConnectWallet/locale/en.ts +1 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/BuyScreen.tsx +3 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatSteps.tsx +3 -510
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/OnRampScreen.tsx +2 -12
- package/src/react/web/ui/ConnectWallet/screens/Buy/main/types.ts +2 -0
- package/src/react/web/ui/ConnectWallet/screens/Buy/main/useBuyTxStates.ts +19 -20
- package/src/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/SwapDetailsScreen.tsx +1 -37
- package/src/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/statusMeta.test.ts +1 -95
- package/src/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/statusMeta.ts +0 -69
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/WalletRow.tsx +3 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/fetchBalancesForWallet.tsx +1 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/pendingSwapTx.ts +1 -3
- package/src/react/web/ui/ConnectWallet/screens/Buy/swap/useSwapSupportedChains.ts +118 -63
- package/src/react/web/ui/TransactionButton/DepositScreen.tsx +295 -0
- package/src/react/web/ui/TransactionButton/ExecutingScreen.tsx +4 -5
- package/src/react/web/ui/TransactionButton/TransactionModal.tsx +20 -1
- package/src/utils/any-evm/zksync/constants.ts +1 -0
- package/src/utils/domain.test.ts +1 -0
- package/src/utils/domains.ts +8 -0
- package/src/version.ts +1 -1
- package/dist/cjs/bridge/constants.js +0 -5
- package/dist/cjs/bridge/constants.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js +0 -37
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js +0 -86
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js +0 -25
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistory.js +0 -54
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistory.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistoryButton.js +0 -52
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistoryButton.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/FiatDetailsScreen.js +0 -81
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/FiatDetailsScreen.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/TxDetailsScreen.js +0 -17
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/TxDetailsScreen.js.map +0 -1
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/useBuyTransactionsToShow.js +0 -138
- package/dist/cjs/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/useBuyTransactionsToShow.js.map +0 -1
- package/dist/esm/bridge/constants.js +0 -2
- package/dist/esm/bridge/constants.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js +0 -34
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js +0 -83
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js +0 -22
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistory.js +0 -51
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistory.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistoryButton.js +0 -48
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistoryButton.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/FiatDetailsScreen.js +0 -78
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/FiatDetailsScreen.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/TxDetailsScreen.js +0 -14
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/TxDetailsScreen.js.map +0 -1
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/useBuyTransactionsToShow.js +0 -135
- package/dist/esm/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/useBuyTransactionsToShow.js.map +0 -1
- package/dist/types/bridge/constants.d.ts +0 -2
- package/dist/types/bridge/constants.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.d.ts +0 -26
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.d.ts +0 -16
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.d.ts +0 -23
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistory.d.ts +0 -10
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistory.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistoryButton.d.ts +0 -9
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistoryButton.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/FiatDetailsScreen.d.ts +0 -14
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/FiatDetailsScreen.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/TxDetailsScreen.d.ts +0 -14
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/TxDetailsScreen.d.ts.map +0 -1
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/useBuyTransactionsToShow.d.ts +0 -21
- package/dist/types/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/useBuyTransactionsToShow.d.ts.map +0 -1
- package/src/bridge/constants.ts +0 -1
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/FiatTxDetailsTable.tsx +0 -142
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwap.tsx +0 -170
- package/src/react/web/ui/ConnectWallet/screens/Buy/fiat/PostOnRampSwapFlow.tsx +0 -63
- package/src/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistory.tsx +0 -163
- package/src/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/BuyTxHistoryButton.tsx +0 -127
- package/src/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/FiatDetailsScreen.tsx +0 -138
- package/src/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/TxDetailsScreen.tsx +0 -45
- package/src/react/web/ui/ConnectWallet/screens/Buy/pay-transactions/useBuyTransactionsToShow.ts +0 -191
|
@@ -4,6 +4,7 @@ exports.twProxyBytecode = exports.twProxyAbi = exports.singletonFactoryBytecode
|
|
|
4
4
|
exports.ZKSYNC_SINGLETON_FACTORY = "0xa51baf6a9c0ef5Db8C1898d5aDD92Bf3227d6088";
|
|
5
5
|
exports.CONTRACT_DEPLOYER_ADDRESS = "0x0000000000000000000000000000000000008006";
|
|
6
6
|
exports.KNOWN_CODES_STORAGE = "0x0000000000000000000000000000000000008004";
|
|
7
|
+
// biome-ignore lint/nursery/noProcessEnv: Used for testing
|
|
7
8
|
exports.PUBLISHED_PRIVATE_KEY = process.env.ZKSYNC_PUBLISHED_PRIVATE_KEY;
|
|
8
9
|
exports.singletonFactoryAbi = [
|
|
9
10
|
"function deploy(bytes32,bytes32,bytes) external payable",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/utils/any-evm/zksync/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,wBAAwB,GACnC,4CAAqD,CAAC;AAC3C,QAAA,yBAAyB,GACpC,4CAAqD,CAAC;AAC3C,QAAA,mBAAmB,GAAG,4CAA4C,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/utils/any-evm/zksync/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,wBAAwB,GACnC,4CAAqD,CAAC;AAC3C,QAAA,yBAAyB,GACpC,4CAAqD,CAAC;AAC3C,QAAA,mBAAmB,GAAG,4CAA4C,CAAC;AAChF,2DAA2D;AAC9C,QAAA,qBAAqB,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC;AAEjE,QAAA,mBAAmB,GAAG;IACjC,yDAAyD;CACjD,CAAC;AAEE,QAAA,wBAAwB,GACnC,o0LAA60L,CAAC;AAEn0L,QAAA,UAAU,GAAG;IACxB;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,OAAO;gBACrB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,OAAO;aACd;SACF;QACD,eAAe,EAAE,SAAS;QAC1B,IAAI,EAAE,aAAa;KACpB;IACD;QACE,eAAe,EAAE,SAAS;QAC1B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,eAAe,EAAE,SAAS;QAC1B,IAAI,EAAE,SAAS;KAChB;CACO,CAAC;AAEE,QAAA,eAAe,GAC1B,osSAA6sS,CAAC"}
|
|
@@ -10,6 +10,7 @@ const DEFAULT_BUNDLER_URL = "bundler.thirdweb.com";
|
|
|
10
10
|
const DEFAULT_ANALYTICS_URL = "c.thirdweb.com";
|
|
11
11
|
const DEFAULT_INSIGHT_URL = "insight.thirdweb.com";
|
|
12
12
|
const DEFAULT_ENGINE_CLOUD_URL = "engine.thirdweb.com";
|
|
13
|
+
const DEFAULT_BRIDGE_URL = "bridge.thirdweb.com";
|
|
13
14
|
let domains = {
|
|
14
15
|
rpc: exports.DEFAULT_RPC_URL,
|
|
15
16
|
inAppWallet: DEFAULT_IN_APP_WALLET_URL,
|
|
@@ -20,6 +21,7 @@ let domains = {
|
|
|
20
21
|
analytics: DEFAULT_ANALYTICS_URL,
|
|
21
22
|
insight: DEFAULT_INSIGHT_URL,
|
|
22
23
|
engineCloud: DEFAULT_ENGINE_CLOUD_URL,
|
|
24
|
+
bridge: DEFAULT_BRIDGE_URL,
|
|
23
25
|
};
|
|
24
26
|
const setThirdwebDomains = (DomainOverrides) => {
|
|
25
27
|
domains = {
|
|
@@ -32,6 +34,7 @@ const setThirdwebDomains = (DomainOverrides) => {
|
|
|
32
34
|
analytics: DomainOverrides.analytics ?? DEFAULT_ANALYTICS_URL,
|
|
33
35
|
insight: DomainOverrides.insight ?? DEFAULT_INSIGHT_URL,
|
|
34
36
|
engineCloud: DomainOverrides.engineCloud ?? DEFAULT_ENGINE_CLOUD_URL,
|
|
37
|
+
bridge: DomainOverrides.bridge ?? DEFAULT_BRIDGE_URL,
|
|
35
38
|
};
|
|
36
39
|
};
|
|
37
40
|
exports.setThirdwebDomains = setThirdwebDomains;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domains.js","sourceRoot":"","sources":["../../../src/utils/domains.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"domains.js","sourceRoot":"","sources":["../../../src/utils/domains.ts"],"names":[],"mappings":";;;AAqDa,QAAA,eAAe,GAAG,kBAAkB,CAAC;AAClD,MAAM,kBAAkB,GAAG,qBAAqB,CAAC;AACjD,MAAM,yBAAyB,GAAG,8BAA8B,CAAC;AACjE,MAAM,eAAe,GAAG,kBAAkB,CAAC;AAC3C,MAAM,mBAAmB,GAAG,sBAAsB,CAAC;AACnD,MAAM,mBAAmB,GAAG,sBAAsB,CAAC;AACnD,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AAC/C,MAAM,mBAAmB,GAAG,sBAAsB,CAAC;AACnD,MAAM,wBAAwB,GAAG,qBAAqB,CAAC;AACvD,MAAM,kBAAkB,GAAG,qBAAqB,CAAC;AAEjD,IAAI,OAAO,GAA+C;IACxD,GAAG,EAAE,uBAAe;IACpB,WAAW,EAAE,yBAAyB;IACtC,MAAM,EAAE,kBAAkB;IAC1B,GAAG,EAAE,eAAe;IACpB,OAAO,EAAE,mBAAmB;IAC5B,OAAO,EAAE,mBAAmB;IAC5B,SAAS,EAAE,qBAAqB;IAChC,OAAO,EAAE,mBAAmB;IAC5B,WAAW,EAAE,wBAAwB;IACrC,MAAM,EAAE,kBAAkB;CAC3B,CAAC;AAEK,MAAM,kBAAkB,GAAG,CAAC,eAAgC,EAAE,EAAE;IACrE,OAAO,GAAG;QACR,GAAG,EAAE,eAAe,CAAC,GAAG,IAAI,uBAAe;QAC3C,WAAW,EAAE,eAAe,CAAC,WAAW,IAAI,yBAAyB;QACrE,MAAM,EAAE,eAAe,CAAC,MAAM,IAAI,kBAAkB;QACpD,GAAG,EAAE,eAAe,CAAC,GAAG,IAAI,eAAe;QAC3C,OAAO,EAAE,eAAe,CAAC,OAAO,IAAI,mBAAmB;QACvD,OAAO,EAAE,eAAe,CAAC,OAAO,IAAI,mBAAmB;QACvD,SAAS,EAAE,eAAe,CAAC,SAAS,IAAI,qBAAqB;QAC7D,OAAO,EAAE,eAAe,CAAC,OAAO,IAAI,mBAAmB;QACvD,WAAW,EAAE,eAAe,CAAC,WAAW,IAAI,wBAAwB;QACpE,MAAM,EAAE,eAAe,CAAC,MAAM,IAAI,kBAAkB;KACrD,CAAC;AACJ,CAAC,CAAC;AAbW,QAAA,kBAAkB,sBAa7B;AAEF;;GAEG;AACI,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAFW,QAAA,kBAAkB,sBAE7B;AAEF;;GAEG;AACI,MAAM,kBAAkB,GAAG,CAAC,OAA8B,EAAE,EAAE;IACnE,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,IAAI,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACnC,OAAO,UAAU,MAAM,EAAE,CAAC;IAC5B,CAAC;IACD,OAAO,WAAW,MAAM,EAAE,CAAC;AAC7B,CAAC,CAAC;AANW,QAAA,kBAAkB,sBAM7B;AAEF,IAAI,UAAU,GAAkB,IAAI,CAAC;AAE9B,MAAM,aAAa,GAAG,CAAC,GAAkB,EAAE,EAAE;IAClD,UAAU,GAAG,GAAG,CAAC;AACnB,CAAC,CAAC;AAFW,QAAA,aAAa,iBAExB;AAEK,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAFW,QAAA,aAAa,iBAExB"}
|
package/dist/cjs/version.js
CHANGED
package/dist/cjs/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,OAAO,GAAG,SAAS,CAAC"}
|
package/dist/esm/bridge/Buy.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineChain } from "../chains/utils.js";
|
|
2
|
+
import { getThirdwebBaseUrl } from "../utils/domains.js";
|
|
2
3
|
import { getClientFetch } from "../utils/fetch.js";
|
|
3
4
|
import { stringify } from "../utils/json.js";
|
|
4
|
-
import { UNIVERSAL_BRIDGE_URL } from "./constants.js";
|
|
5
5
|
/**
|
|
6
6
|
* Retrieves a Universal Bridge quote for the provided buy intent. The quote will specify the necessary `originAmount` to receive the desired `destinationAmount`, which is specified with the `buyAmountWei` option.
|
|
7
7
|
*
|
|
@@ -100,12 +100,13 @@ export async function quote(options) {
|
|
|
100
100
|
const { originChainId, originTokenAddress, destinationChainId, destinationTokenAddress, client, maxSteps, } = options;
|
|
101
101
|
const amount = "buyAmountWei" in options ? options.buyAmountWei : options.amount;
|
|
102
102
|
const clientFetch = getClientFetch(client);
|
|
103
|
-
const url = new URL(`${
|
|
103
|
+
const url = new URL(`${getThirdwebBaseUrl("bridge")}/v1/buy/quote`);
|
|
104
104
|
url.searchParams.set("originChainId", originChainId.toString());
|
|
105
105
|
url.searchParams.set("originTokenAddress", originTokenAddress);
|
|
106
106
|
url.searchParams.set("destinationChainId", destinationChainId.toString());
|
|
107
107
|
url.searchParams.set("destinationTokenAddress", destinationTokenAddress);
|
|
108
108
|
url.searchParams.set("buyAmountWei", amount.toString());
|
|
109
|
+
url.searchParams.set("amount", amount.toString());
|
|
109
110
|
if (maxSteps) {
|
|
110
111
|
url.searchParams.set("maxSteps", maxSteps.toString());
|
|
111
112
|
}
|
|
@@ -152,7 +153,7 @@ export async function quote(options) {
|
|
|
152
153
|
* This will return a quote that might look like:
|
|
153
154
|
* ```typescript
|
|
154
155
|
* {
|
|
155
|
-
* originAmount:
|
|
156
|
+
* originAmount: 2000030000n,
|
|
156
157
|
* destinationAmount: 1000000000000000000n,
|
|
157
158
|
* blockNumber: 22026509n,
|
|
158
159
|
* timestamp: 1741730936680,
|
|
@@ -161,11 +162,11 @@ export async function quote(options) {
|
|
|
161
162
|
* {
|
|
162
163
|
* originToken: {
|
|
163
164
|
* chainId: 1,
|
|
164
|
-
* address: "
|
|
165
|
-
* symbol: "
|
|
166
|
-
* name: "
|
|
167
|
-
* decimals:
|
|
168
|
-
* priceUsd:
|
|
165
|
+
* address: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
|
166
|
+
* symbol: "USDC",
|
|
167
|
+
* name: "USDC",
|
|
168
|
+
* decimals: 6,
|
|
169
|
+
* priceUsd: 1,
|
|
169
170
|
* iconUri: "https://..."
|
|
170
171
|
* },
|
|
171
172
|
* destinationToken: {
|
|
@@ -177,7 +178,7 @@ export async function quote(options) {
|
|
|
177
178
|
* priceUsd: 2000,
|
|
178
179
|
* iconUri: "https://..."
|
|
179
180
|
* },
|
|
180
|
-
* originAmount:
|
|
181
|
+
* originAmount: 2000030000n,
|
|
181
182
|
* destinationAmount: 1000000000000000000n,
|
|
182
183
|
* estimatedExecutionTimeMs: 1000
|
|
183
184
|
* transactions: [
|
|
@@ -203,7 +204,7 @@ export async function quote(options) {
|
|
|
203
204
|
* expiration: 1741730936680,
|
|
204
205
|
* intent: {
|
|
205
206
|
* originChainId: 1,
|
|
206
|
-
* originTokenAddress: "
|
|
207
|
+
* originTokenAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
|
207
208
|
* destinationChainId: 10,
|
|
208
209
|
* destinationTokenAddress: "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
|
|
209
210
|
* amount: 1000000000000000000n
|
|
@@ -212,7 +213,7 @@ export async function quote(options) {
|
|
|
212
213
|
* ```
|
|
213
214
|
*
|
|
214
215
|
* ## Sending the transactions
|
|
215
|
-
* The `transactions` array is a series of
|
|
216
|
+
* The `transactions` array is a series of transactions ready to be executed (with `sendTransaction`) one after the other in order to fulfill the complete route. There are a few things to keep in mind when executing these transactions:
|
|
216
217
|
* - Approvals will have the `approval` action specified. You can perform approvals with `sendAndConfirmTransaction`, then proceed to the next transaction.
|
|
217
218
|
* - All transactions are assumed to be executed by the `sender` address, regardless of which chain they are on. The final transaction will use the `receiver` as the recipient address.
|
|
218
219
|
* - If an `expiration` timestamp is provided, all transactions must be executed before that time to guarantee successful execution at the specified price.
|
|
@@ -273,14 +274,15 @@ export async function quote(options) {
|
|
|
273
274
|
export async function prepare(options) {
|
|
274
275
|
const { originChainId, originTokenAddress, destinationChainId, destinationTokenAddress, sender, receiver, client, amount, purchaseData, maxSteps, } = options;
|
|
275
276
|
const clientFetch = getClientFetch(client);
|
|
276
|
-
const url = new URL(`${
|
|
277
|
+
const url = new URL(`${getThirdwebBaseUrl("bridge")}/v1/buy/prepare`);
|
|
277
278
|
const response = await clientFetch(url.toString(), {
|
|
278
279
|
method: "POST",
|
|
279
280
|
headers: {
|
|
280
281
|
"Content-Type": "application/json",
|
|
281
282
|
},
|
|
282
283
|
body: stringify({
|
|
283
|
-
buyAmountWei: amount.toString(),
|
|
284
|
+
buyAmountWei: amount.toString(), // legacy
|
|
285
|
+
amount: amount.toString(),
|
|
284
286
|
originChainId: originChainId.toString(),
|
|
285
287
|
originTokenAddress,
|
|
286
288
|
destinationChainId: destinationChainId.toString(),
|
|
@@ -317,6 +319,8 @@ export async function prepare(options) {
|
|
|
317
319
|
destinationChainId,
|
|
318
320
|
destinationTokenAddress,
|
|
319
321
|
amount,
|
|
322
|
+
sender,
|
|
323
|
+
receiver,
|
|
320
324
|
},
|
|
321
325
|
};
|
|
322
326
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Buy.js","sourceRoot":"","sources":["../../../src/bridge/Buy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Buy.js","sourceRoot":"","sources":["../../../src/bridge/Buy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { getThirdwebBaseUrl } from "../utils/domains.js";
|
|
1
2
|
import { getClientFetch } from "../utils/fetch.js";
|
|
2
|
-
import { UNIVERSAL_BRIDGE_URL } from "./constants.js";
|
|
3
3
|
/**
|
|
4
4
|
* Retrieves supported Universal Bridge chains.
|
|
5
5
|
*
|
|
@@ -50,7 +50,7 @@ import { UNIVERSAL_BRIDGE_URL } from "./constants.js";
|
|
|
50
50
|
export async function chains(options) {
|
|
51
51
|
const { client } = options;
|
|
52
52
|
const clientFetch = getClientFetch(client);
|
|
53
|
-
const url = new URL(`${
|
|
53
|
+
const url = new URL(`${getThirdwebBaseUrl("bridge")}/v1/chains`);
|
|
54
54
|
const response = await clientFetch(url.toString());
|
|
55
55
|
if (!response.ok) {
|
|
56
56
|
const errorJson = await response.json();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chains.js","sourceRoot":"","sources":["../../../src/bridge/Chains.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Chains.js","sourceRoot":"","sources":["../../../src/bridge/Chains.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAuB;IAClD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAE3B,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,kBAAkB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,CAAC,IAAI,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAsB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC1D,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { getThirdwebBaseUrl } from "../utils/domains.js";
|
|
2
|
+
import { getClientFetch } from "../utils/fetch.js";
|
|
3
|
+
import { stringify } from "../utils/json.js";
|
|
4
|
+
// export status within the Onramp module
|
|
5
|
+
export { status } from "./OnrampStatus.js";
|
|
6
|
+
/**
|
|
7
|
+
* Prepares an onramp transaction, returning a link from the specified provider to onramp to the specified token.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* import { Bridge } from "thirdweb";
|
|
12
|
+
* import { ethereum } from "thirdweb/chains";
|
|
13
|
+
* import { NATIVE_TOKEN_ADDRESS, toWei } from "thirdweb/utils";
|
|
14
|
+
*
|
|
15
|
+
* const preparedOnramp = await Bridge.Onramp.prepare({
|
|
16
|
+
* client: thirdwebClient,
|
|
17
|
+
* onramp: "stripe",
|
|
18
|
+
* chainId: ethereum.id,
|
|
19
|
+
* tokenAddress: NATIVE_TOKEN_ADDRESS,
|
|
20
|
+
* receiver: "0x...", // receiver's address
|
|
21
|
+
* amount: toWei("10"), // 10 of the destination token
|
|
22
|
+
* // Optional params:
|
|
23
|
+
* // sender: "0x...", // sender's address
|
|
24
|
+
* // onrampTokenAddress: NATIVE_TOKEN_ADDRESS, // token to initially onramp to
|
|
25
|
+
* // onrampChainId: 1, // chain to initially onramp to
|
|
26
|
+
* // currency: "USD",
|
|
27
|
+
* // maxSteps: 2,
|
|
28
|
+
* // purchaseData: { customId: "123" }
|
|
29
|
+
* });
|
|
30
|
+
*
|
|
31
|
+
* console.log(preparedOnramp.link); // URL to redirect the user to
|
|
32
|
+
* console.log(preparedOnramp.currencyAmount); // Amount in fiat the user will pay
|
|
33
|
+
* ```
|
|
34
|
+
*
|
|
35
|
+
* This function returns a quote that might look like:
|
|
36
|
+
* ```typescript
|
|
37
|
+
* {
|
|
38
|
+
* id: "123e4567-e89b-12d3-a456-426614174000",
|
|
39
|
+
* link: "https://onramp.example.com/session?id=...",
|
|
40
|
+
* currency: "USD",
|
|
41
|
+
* currencyAmount: 10.52,
|
|
42
|
+
* destinationAmount: 10000000000000000000n, // 10 ETH if decimals 18
|
|
43
|
+
* timestamp: 1689812800,
|
|
44
|
+
* expiration: 1689842800,
|
|
45
|
+
* steps: [
|
|
46
|
+
* // ... further steps if any post-onramp swaps are needed
|
|
47
|
+
* ],
|
|
48
|
+
* intent: {
|
|
49
|
+
* onramp: "stripe",
|
|
50
|
+
* chainId: 1,
|
|
51
|
+
* tokenAddress: "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
|
|
52
|
+
* receiver: "0x...",
|
|
53
|
+
* amount: "10000000000000000000"
|
|
54
|
+
* }
|
|
55
|
+
* }
|
|
56
|
+
* ```
|
|
57
|
+
*
|
|
58
|
+
* @param options - The options for preparing the onramp.
|
|
59
|
+
* @param options.client - Your thirdweb client.
|
|
60
|
+
* @param options.onramp - The onramp provider to use (e.g., "stripe", "coinbase", "transak").
|
|
61
|
+
* @param options.chainId - The destination chain ID.
|
|
62
|
+
* @param options.tokenAddress - The destination token address.
|
|
63
|
+
* @param options.receiver - The address that will receive the output token.
|
|
64
|
+
* @param [options.amount] - The desired token amount in wei.
|
|
65
|
+
* @param [options.purchaseData] - Arbitrary purchase data.
|
|
66
|
+
* @param [options.sender] - An optional address to associate as the onramp sender.
|
|
67
|
+
* @param [options.onrampTokenAddress] - The token to initially onramp to if the destination token is not supported by the provider.
|
|
68
|
+
* @param [options.onrampChainId] - The chain ID to initially onramp to if the destination chain is not supported.
|
|
69
|
+
* @param [options.currency] - The currency for the onramp (e.g., "USD", "GBP"). Defaults to user's preferred or "USD".
|
|
70
|
+
* @param [options.maxSteps] - Maximum number of post-onramp steps.
|
|
71
|
+
* @param [options.excludeChainIds] - Chain IDs to exclude from the route (string or array of strings).
|
|
72
|
+
*
|
|
73
|
+
* @returns A promise that resolves to the prepared onramp details, including the link and quote.
|
|
74
|
+
* @throws Will throw an error if there is an issue preparing the onramp.
|
|
75
|
+
* @bridge Onramp
|
|
76
|
+
* @beta
|
|
77
|
+
*/
|
|
78
|
+
export async function prepare(options) {
|
|
79
|
+
const { client, onramp, chainId, tokenAddress, receiver, amount, purchaseData, sender, onrampTokenAddress, onrampChainId, currency, maxSteps, excludeChainIds, } = options;
|
|
80
|
+
const clientFetch = getClientFetch(client);
|
|
81
|
+
const url = `${getThirdwebBaseUrl("bridge")}/v1/onramp/prepare`;
|
|
82
|
+
const apiRequestBody = {
|
|
83
|
+
onramp,
|
|
84
|
+
chainId: Number(chainId),
|
|
85
|
+
tokenAddress,
|
|
86
|
+
receiver,
|
|
87
|
+
};
|
|
88
|
+
if (amount !== undefined) {
|
|
89
|
+
apiRequestBody.amount = amount.toString();
|
|
90
|
+
}
|
|
91
|
+
if (purchaseData !== undefined) {
|
|
92
|
+
apiRequestBody.purchaseData = purchaseData;
|
|
93
|
+
}
|
|
94
|
+
if (sender !== undefined) {
|
|
95
|
+
apiRequestBody.sender = sender;
|
|
96
|
+
}
|
|
97
|
+
if (onrampTokenAddress !== undefined) {
|
|
98
|
+
apiRequestBody.onrampTokenAddress = onrampTokenAddress;
|
|
99
|
+
}
|
|
100
|
+
if (onrampChainId !== undefined) {
|
|
101
|
+
apiRequestBody.onrampChainId = Number(onrampChainId);
|
|
102
|
+
}
|
|
103
|
+
if (currency !== undefined) {
|
|
104
|
+
apiRequestBody.currency = currency;
|
|
105
|
+
}
|
|
106
|
+
if (maxSteps !== undefined) {
|
|
107
|
+
apiRequestBody.maxSteps = maxSteps;
|
|
108
|
+
}
|
|
109
|
+
if (excludeChainIds !== undefined) {
|
|
110
|
+
apiRequestBody.excludeChainIds = Array.isArray(excludeChainIds)
|
|
111
|
+
? excludeChainIds.join(",")
|
|
112
|
+
: excludeChainIds;
|
|
113
|
+
}
|
|
114
|
+
const response = await clientFetch(url, {
|
|
115
|
+
method: "POST",
|
|
116
|
+
headers: {
|
|
117
|
+
"Content-Type": "application/json",
|
|
118
|
+
},
|
|
119
|
+
body: stringify(apiRequestBody),
|
|
120
|
+
});
|
|
121
|
+
if (!response.ok) {
|
|
122
|
+
const errorJson = await response.json();
|
|
123
|
+
throw new Error(`${errorJson.code || response.status} | ${errorJson.message || response.statusText} - ${errorJson.correlationId || "N/A"}`);
|
|
124
|
+
}
|
|
125
|
+
const { data } = await response.json();
|
|
126
|
+
// Transform amounts from string to bigint where appropriate
|
|
127
|
+
const transformedSteps = data.steps.map((step) => ({
|
|
128
|
+
...step,
|
|
129
|
+
originAmount: BigInt(step.originAmount),
|
|
130
|
+
destinationAmount: BigInt(step.destinationAmount),
|
|
131
|
+
transactions: step.transactions.map((tx) => ({
|
|
132
|
+
...tx,
|
|
133
|
+
value: tx.value ? BigInt(tx.value) : undefined,
|
|
134
|
+
})),
|
|
135
|
+
}));
|
|
136
|
+
const intentFromResponse = {
|
|
137
|
+
...data.intent,
|
|
138
|
+
amount: data.intent.amount ? data.intent.amount : undefined,
|
|
139
|
+
};
|
|
140
|
+
return {
|
|
141
|
+
...data,
|
|
142
|
+
destinationAmount: BigInt(data.destinationAmount),
|
|
143
|
+
steps: transformedSteps,
|
|
144
|
+
intent: intentFromResponse,
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=Onramp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Onramp.js","sourceRoot":"","sources":["../../../src/bridge/Onramp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { getThirdwebBaseUrl } from "../utils/domains.js";
|
|
2
|
+
import { getClientFetch } from "../utils/fetch.js";
|
|
3
|
+
/**
|
|
4
|
+
* Retrieves the status of an Onramp session created via {@link Bridge.Onramp.prepare}. The
|
|
5
|
+
* status will include any on-chain transactions that have occurred as a result of the onramp
|
|
6
|
+
* as well as any arbitrary `purchaseData` that was supplied when the onramp was
|
|
7
|
+
* prepared.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* import { Bridge } from "thirdweb";
|
|
12
|
+
*
|
|
13
|
+
* const onrampStatus = await Bridge.Onramp.status({
|
|
14
|
+
* id: "022218cc-96af-4291-b90c-dadcb47571ec",
|
|
15
|
+
* client: thirdwebClient,
|
|
16
|
+
* });
|
|
17
|
+
*
|
|
18
|
+
* // Possible results:
|
|
19
|
+
* // {
|
|
20
|
+
* // status: "CREATED",
|
|
21
|
+
* // transactions: [],
|
|
22
|
+
* // purchaseData: {
|
|
23
|
+
* // orderId: "abc-123",
|
|
24
|
+
* // },
|
|
25
|
+
* // }
|
|
26
|
+
* //
|
|
27
|
+
* // or
|
|
28
|
+
* // {
|
|
29
|
+
* // status: "PENDING",
|
|
30
|
+
* // transactions: [],
|
|
31
|
+
* // purchaseData: {
|
|
32
|
+
* // orderId: "abc-123",
|
|
33
|
+
* // },
|
|
34
|
+
* // }
|
|
35
|
+
* //
|
|
36
|
+
* // or
|
|
37
|
+
* // {
|
|
38
|
+
* // status: "COMPLETED",
|
|
39
|
+
* // transactions: [
|
|
40
|
+
* // {
|
|
41
|
+
* // chainId: 1,
|
|
42
|
+
* // transactionHash:
|
|
43
|
+
* // "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef",
|
|
44
|
+
* // },
|
|
45
|
+
* // ],
|
|
46
|
+
* // purchaseData: {
|
|
47
|
+
* // orderId: "abc-123",
|
|
48
|
+
* // },
|
|
49
|
+
* // }
|
|
50
|
+
* ```
|
|
51
|
+
*
|
|
52
|
+
* @param options - The options for fetching the onramp status.
|
|
53
|
+
* @param options.id - The UUID returned from {@link Bridge.Onramp.prepare}.
|
|
54
|
+
* @param options.client - Your thirdweb client instance.
|
|
55
|
+
*
|
|
56
|
+
* @returns A promise that resolves to the status of the onramp session.
|
|
57
|
+
*
|
|
58
|
+
* @throws Will throw an error if there is an issue fetching the status.
|
|
59
|
+
* @bridge Onramp
|
|
60
|
+
* @beta
|
|
61
|
+
*/
|
|
62
|
+
export async function status(options) {
|
|
63
|
+
const { id, client } = options;
|
|
64
|
+
const clientFetch = getClientFetch(client);
|
|
65
|
+
const url = new URL(`${getThirdwebBaseUrl("bridge")}/v1/onramp/status`);
|
|
66
|
+
url.searchParams.set("id", id);
|
|
67
|
+
const response = await clientFetch(url.toString());
|
|
68
|
+
if (!response.ok) {
|
|
69
|
+
const errorJson = await response.json();
|
|
70
|
+
throw new Error(`${errorJson.code || response.status} | ${errorJson.message || response.statusText} - ${errorJson.correlationId || "N/A"}`);
|
|
71
|
+
}
|
|
72
|
+
const { data } = await response.json();
|
|
73
|
+
return data;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=OnrampStatus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnrampStatus.js","sourceRoot":"","sources":["../../../src/bridge/OnrampStatus.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAuB;IAClD,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAE/B,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,kBAAkB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACxE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAE/B,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CACb,GAAG,SAAS,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,MAAM,SAAS,CAAC,OAAO,IAAI,QAAQ,CAAC,UAAU,MAAM,SAAS,CAAC,aAAa,IAAI,KAAK,EAAE,CAC3H,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAA4B,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAChE,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { getThirdwebBaseUrl } from "../utils/domains.js";
|
|
1
2
|
import { getClientFetch } from "../utils/fetch.js";
|
|
2
|
-
import { UNIVERSAL_BRIDGE_URL } from "./constants.js";
|
|
3
3
|
/**
|
|
4
4
|
* Retrieves supported Universal Bridge routes based on the provided filters.
|
|
5
5
|
*
|
|
@@ -118,7 +118,7 @@ import { UNIVERSAL_BRIDGE_URL } from "./constants.js";
|
|
|
118
118
|
export async function routes(options) {
|
|
119
119
|
const { client, originChainId, originTokenAddress, destinationChainId, destinationTokenAddress, maxSteps, sortBy, limit, offset, } = options;
|
|
120
120
|
const clientFetch = getClientFetch(client);
|
|
121
|
-
const url = new URL(`${
|
|
121
|
+
const url = new URL(`${getThirdwebBaseUrl("bridge")}/v1/routes`);
|
|
122
122
|
if (originChainId) {
|
|
123
123
|
url.searchParams.set("originChainId", originChainId.toString());
|
|
124
124
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Routes.js","sourceRoot":"","sources":["../../../src/bridge/Routes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Routes.js","sourceRoot":"","sources":["../../../src/bridge/Routes.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkHG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAuB;IAClD,MAAM,EACJ,MAAM,EACN,aAAa,EACb,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,QAAQ,EACR,MAAM,EACN,KAAK,EACL,MAAM,GACP,GAAG,OAAO,CAAC;IAEZ,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,kBAAkB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACjE,IAAI,aAAa,EAAE,CAAC;QAClB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,eAAe,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,kBAAkB,EAAE,CAAC;QACvB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,kBAAkB,EAAE,CAAC;QACvB,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,uBAAuB,EAAE,CAAC;QAC5B,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,yBAAyB,EAAE,uBAAuB,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,QAAQ,EAAE,CAAC;QACb,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,KAAK,EAAE,CAAC;QACV,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,MAAM,EAAE,CAAC;QACX,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,MAAM,EAAE,CAAC;QACX,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,CAAC,IAAI,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAsB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC1D,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/esm/bridge/Sell.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineChain } from "../chains/utils.js";
|
|
2
|
+
import { getThirdwebBaseUrl } from "../utils/domains.js";
|
|
2
3
|
import { getClientFetch } from "../utils/fetch.js";
|
|
3
4
|
import { stringify } from "../utils/json.js";
|
|
4
|
-
import { UNIVERSAL_BRIDGE_URL } from "./constants.js";
|
|
5
5
|
/**
|
|
6
6
|
* Retrieves a Universal Bridge quote for the provided sell intent. The quote will specify the expected `destinationAmount` that will be received in exchange for the specified `originAmount`, which is specified with the `sellAmountWei` option.
|
|
7
7
|
*
|
|
@@ -99,12 +99,13 @@ import { UNIVERSAL_BRIDGE_URL } from "./constants.js";
|
|
|
99
99
|
export async function quote(options) {
|
|
100
100
|
const { originChainId, originTokenAddress, destinationChainId, destinationTokenAddress, amount, client, maxSteps, } = options;
|
|
101
101
|
const clientFetch = getClientFetch(client);
|
|
102
|
-
const url = new URL(`${
|
|
102
|
+
const url = new URL(`${getThirdwebBaseUrl("bridge")}/v1/sell/quote`);
|
|
103
103
|
url.searchParams.set("originChainId", originChainId.toString());
|
|
104
104
|
url.searchParams.set("originTokenAddress", originTokenAddress);
|
|
105
105
|
url.searchParams.set("destinationChainId", destinationChainId.toString());
|
|
106
106
|
url.searchParams.set("destinationTokenAddress", destinationTokenAddress);
|
|
107
107
|
url.searchParams.set("sellAmountWei", amount.toString());
|
|
108
|
+
url.searchParams.set("amount", amount.toString());
|
|
108
109
|
if (typeof maxSteps !== "undefined") {
|
|
109
110
|
url.searchParams.set("maxSteps", maxSteps.toString());
|
|
110
111
|
}
|
|
@@ -150,7 +151,7 @@ export async function quote(options) {
|
|
|
150
151
|
* This will return a quote that might look like:
|
|
151
152
|
* ```typescript
|
|
152
153
|
* {
|
|
153
|
-
* originAmount:
|
|
154
|
+
* originAmount: 2000000000n,
|
|
154
155
|
* destinationAmount: 9980000000000000000n,
|
|
155
156
|
* blockNumber: 22026509n,
|
|
156
157
|
* timestamp: 1741730936680,
|
|
@@ -159,11 +160,11 @@ export async function quote(options) {
|
|
|
159
160
|
* {
|
|
160
161
|
* originToken: {
|
|
161
162
|
* chainId: 1,
|
|
162
|
-
* address: "
|
|
163
|
-
* symbol: "
|
|
164
|
-
* name: "
|
|
165
|
-
* decimals:
|
|
166
|
-
* priceUsd:
|
|
163
|
+
* address: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
|
164
|
+
* symbol: "USDC",
|
|
165
|
+
* name: "USDC",
|
|
166
|
+
* decimals: 6,
|
|
167
|
+
* priceUsd: 1,
|
|
167
168
|
* iconUri: "https://..."
|
|
168
169
|
* },
|
|
169
170
|
* destinationToken: {
|
|
@@ -175,7 +176,7 @@ export async function quote(options) {
|
|
|
175
176
|
* priceUsd: 2000,
|
|
176
177
|
* iconUri: "https://..."
|
|
177
178
|
* },
|
|
178
|
-
* originAmount:
|
|
179
|
+
* originAmount: 2000000000n,
|
|
179
180
|
* destinationAmount: 9980000000000000000n,
|
|
180
181
|
* estimatedExecutionTimeMs: 1000
|
|
181
182
|
* }
|
|
@@ -201,16 +202,16 @@ export async function quote(options) {
|
|
|
201
202
|
* expiration: 1741730936680,
|
|
202
203
|
* intent: {
|
|
203
204
|
* originChainId: 1,
|
|
204
|
-
* originTokenAddress:
|
|
205
|
+
* originTokenAddress: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
|
205
206
|
* destinationChainId: 10,
|
|
206
|
-
* destinationTokenAddress:
|
|
207
|
-
* amount:
|
|
207
|
+
* destinationTokenAddress: "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",
|
|
208
|
+
* amount: 2000000000n
|
|
208
209
|
* }
|
|
209
210
|
* }
|
|
210
211
|
* ```
|
|
211
212
|
*
|
|
212
213
|
* ## Sending the transactions
|
|
213
|
-
* The `transactions` array is a series of
|
|
214
|
+
* The `transactions` array is a series of transactions ready to be executed (with `sendTransaction`) must be executed one after the other in order to fulfill the complete route. There are a few things to keep in mind when executing these transactions:
|
|
214
215
|
* - Approvals will have the `approval` action specified. You can perform approvals with `sendAndConfirmTransaction`, then proceed to the next transaction.
|
|
215
216
|
* - All transactions are assumed to be executed by the `sender` address, regardless of which chain they are on. The final transaction will use the `receiver` as the recipient address.
|
|
216
217
|
* - If an `expiration` timestamp is provided, all transactions must be executed before that time to guarantee successful execution at the specified price.
|
|
@@ -271,7 +272,7 @@ export async function quote(options) {
|
|
|
271
272
|
export async function prepare(options) {
|
|
272
273
|
const { originChainId, originTokenAddress, destinationChainId, destinationTokenAddress, amount, sender, receiver, client, purchaseData, maxSteps, } = options;
|
|
273
274
|
const clientFetch = getClientFetch(client);
|
|
274
|
-
const url = new URL(`${
|
|
275
|
+
const url = new URL(`${getThirdwebBaseUrl("bridge")}/v1/sell/prepare`);
|
|
275
276
|
const response = await clientFetch(url.toString(), {
|
|
276
277
|
method: "POST",
|
|
277
278
|
headers: {
|
|
@@ -279,6 +280,7 @@ export async function prepare(options) {
|
|
|
279
280
|
},
|
|
280
281
|
body: stringify({
|
|
281
282
|
sellAmountWei: amount.toString(),
|
|
283
|
+
amount: amount.toString(),
|
|
282
284
|
originChainId: originChainId.toString(),
|
|
283
285
|
originTokenAddress,
|
|
284
286
|
destinationChainId: destinationChainId.toString(),
|
|
@@ -316,6 +318,8 @@ export async function prepare(options) {
|
|
|
316
318
|
destinationChainId,
|
|
317
319
|
destinationTokenAddress,
|
|
318
320
|
amount,
|
|
321
|
+
sender,
|
|
322
|
+
receiver,
|
|
319
323
|
purchaseData,
|
|
320
324
|
},
|
|
321
325
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sell.js","sourceRoot":"","sources":["../../../src/bridge/Sell.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Sell.js","sourceRoot":"","sources":["../../../src/bridge/Sell.ts"],"names":[],"mappings":"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"}
|