@circle-fin/usdckit 0.16.0 → 0.17.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -8
- package/dist/cjs/actions/index.d.ts +8 -12
- package/dist/cjs/actions/index.d.ts.map +1 -1
- package/dist/cjs/actions/index.js +4 -12
- package/dist/cjs/actions/index.js.map +1 -1
- package/dist/cjs/actions/parseUnitsAsToken.d.ts +1 -1
- package/dist/cjs/actions/parseUnitsAsToken.d.ts.map +1 -1
- package/dist/cjs/actions/parseUnitsAsToken.js.map +1 -1
- package/dist/cjs/actions/transfer.d.ts +18 -4
- package/dist/cjs/actions/transfer.d.ts.map +1 -1
- package/dist/cjs/actions/transfer.js +94 -44
- package/dist/cjs/actions/transfer.js.map +1 -1
- package/dist/cjs/actions/transfer.test.js +50 -2
- package/dist/cjs/actions/transfer.test.js.map +1 -1
- package/dist/cjs/chains/ARB.d.ts +1 -0
- package/dist/cjs/chains/ARB.d.ts.map +1 -1
- package/dist/cjs/chains/ARB.js +1 -0
- package/dist/cjs/chains/ARB.js.map +1 -1
- package/dist/cjs/chains/ARB_SEPOLIA.d.ts +1 -0
- package/dist/cjs/chains/ARB_SEPOLIA.d.ts.map +1 -1
- package/dist/cjs/chains/ARB_SEPOLIA.js +1 -0
- package/dist/cjs/chains/ARB_SEPOLIA.js.map +1 -1
- package/dist/cjs/chains/AVAX.d.ts +1 -0
- package/dist/cjs/chains/AVAX.d.ts.map +1 -1
- package/dist/cjs/chains/AVAX.js +1 -0
- package/dist/cjs/chains/AVAX.js.map +1 -1
- package/dist/cjs/chains/AVAX_FUJI.d.ts +1 -0
- package/dist/cjs/chains/AVAX_FUJI.d.ts.map +1 -1
- package/dist/cjs/chains/AVAX_FUJI.js +1 -0
- package/dist/cjs/chains/AVAX_FUJI.js.map +1 -1
- package/dist/cjs/chains/BASE.d.ts +1 -0
- package/dist/cjs/chains/BASE.d.ts.map +1 -1
- package/dist/cjs/chains/BASE.js +1 -0
- package/dist/cjs/chains/BASE.js.map +1 -1
- package/dist/cjs/chains/BASE_SEPOLIA.d.ts +1 -0
- package/dist/cjs/chains/BASE_SEPOLIA.d.ts.map +1 -1
- package/dist/cjs/chains/BASE_SEPOLIA.js +1 -0
- package/dist/cjs/chains/BASE_SEPOLIA.js.map +1 -1
- package/dist/cjs/chains/ETH.d.ts +1 -0
- package/dist/cjs/chains/ETH.d.ts.map +1 -1
- package/dist/cjs/chains/ETH.js +1 -0
- package/dist/cjs/chains/ETH.js.map +1 -1
- package/dist/cjs/chains/ETH_SEPOLIA.d.ts +1 -0
- package/dist/cjs/chains/ETH_SEPOLIA.d.ts.map +1 -1
- package/dist/cjs/chains/ETH_SEPOLIA.js +1 -0
- package/dist/cjs/chains/ETH_SEPOLIA.js.map +1 -1
- package/dist/cjs/chains/MATIC.d.ts +1 -0
- package/dist/cjs/chains/MATIC.d.ts.map +1 -1
- package/dist/cjs/chains/MATIC.js +1 -0
- package/dist/cjs/chains/MATIC.js.map +1 -1
- package/dist/cjs/chains/MATIC_AMOY.d.ts +1 -0
- package/dist/cjs/chains/MATIC_AMOY.d.ts.map +1 -1
- package/dist/cjs/chains/MATIC_AMOY.js +1 -0
- package/dist/cjs/chains/MATIC_AMOY.js.map +1 -1
- package/dist/cjs/chains/NEAR.d.ts +1 -0
- package/dist/cjs/chains/NEAR.d.ts.map +1 -1
- package/dist/cjs/chains/NEAR.js +1 -0
- package/dist/cjs/chains/NEAR.js.map +1 -1
- package/dist/cjs/chains/NEAR_TESTNET.d.ts +1 -0
- package/dist/cjs/chains/NEAR_TESTNET.d.ts.map +1 -1
- package/dist/cjs/chains/NEAR_TESTNET.js +1 -0
- package/dist/cjs/chains/NEAR_TESTNET.js.map +1 -1
- package/dist/cjs/chains/OP.d.ts +1 -0
- package/dist/cjs/chains/OP.d.ts.map +1 -1
- package/dist/cjs/chains/OP.js +1 -0
- package/dist/cjs/chains/OP.js.map +1 -1
- package/dist/cjs/chains/OP_SEPOLIA.d.ts +1 -0
- package/dist/cjs/chains/OP_SEPOLIA.d.ts.map +1 -1
- package/dist/cjs/chains/OP_SEPOLIA.js +1 -0
- package/dist/cjs/chains/OP_SEPOLIA.js.map +1 -1
- package/dist/cjs/chains/UNI.d.ts +1 -0
- package/dist/cjs/chains/UNI.d.ts.map +1 -1
- package/dist/cjs/chains/UNI.js +1 -0
- package/dist/cjs/chains/UNI.js.map +1 -1
- package/dist/cjs/chains/UNI_SEPOLIA.d.ts +1 -0
- package/dist/cjs/chains/UNI_SEPOLIA.d.ts.map +1 -1
- package/dist/cjs/chains/UNI_SEPOLIA.js +1 -0
- package/dist/cjs/chains/UNI_SEPOLIA.js.map +1 -1
- package/dist/cjs/extractChain.d.ts +17 -1
- package/dist/cjs/extractChain.d.ts.map +1 -1
- package/dist/cjs/extractChain.js +4 -1
- package/dist/cjs/extractChain.js.map +1 -1
- package/dist/cjs/metadata.js +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/approve.d.ts +26 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/approve.d.ts.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/approve.js +61 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/approve.js.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/approve.test.d.ts +2 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/approve.test.d.ts.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/approve.test.js +255 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/approve.test.js.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/depositForBurn.d.ts +28 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/depositForBurn.d.ts.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/depositForBurn.js +61 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/depositForBurn.js.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/depositForBurn.test.d.ts +2 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/depositForBurn.test.d.ts.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/depositForBurn.test.js +294 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/depositForBurn.test.js.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/index.d.ts +18 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/index.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/index.js +18 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/index.js.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/index.test.js +8 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/index.test.js.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/receiveMessage.d.ts +24 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/receiveMessage.d.ts.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/receiveMessage.js +55 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/receiveMessage.js.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/receiveMessage.test.d.ts +2 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/receiveMessage.test.d.ts.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/receiveMessage.test.js +251 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/receiveMessage.test.js.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.d.ts +43 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.d.ts.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.js +103 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.js.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.test.d.ts +2 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.test.d.ts.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.test.js +141 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.test.js.map +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.js +3 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.js.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.test.js +7 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.test.js.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/ARB.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/ARB.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/ARB_SEPOLIA.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/ARB_SEPOLIA.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/AVAX.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/AVAX.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/AVAX_FUJI.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/AVAX_FUJI.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/BASE.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/BASE.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/BASE_SEPOLIA.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/BASE_SEPOLIA.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/ETH.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/ETH.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/ETH_SEPOLIA.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/ETH_SEPOLIA.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/MATIC.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/MATIC.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/MATIC_AMOY.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/MATIC_AMOY.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/OP.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/OP.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/OP_SEPOLIA.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/OP_SEPOLIA.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/UNI.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/UNI.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/UNI_SEPOLIA.d.ts +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/chains/UNI_SEPOLIA.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/extractChain.d.ts +15 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/extractChain.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/extractChain.js +4 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/extractChain.js.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/index.d.ts +15 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/index.d.ts.map +1 -1
- package/dist/cjs/providers/cross-chain-transfer-protocol/index.js +1 -0
- package/dist/cjs/providers/cross-chain-transfer-protocol/index.js.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/createAccount.d.ts +7 -0
- package/dist/cjs/providers/developer-controlled-wallets/actions/createAccount.d.ts.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/createAccount.js +12 -2
- package/dist/cjs/providers/developer-controlled-wallets/actions/createAccount.js.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/createAccount.test.js +6 -0
- package/dist/cjs/providers/developer-controlled-wallets/actions/createAccount.test.js.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/getAccounts.d.ts.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/getAccounts.js +3 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/getAccounts.js.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/getAccounts.test.js +6 -0
- package/dist/cjs/providers/developer-controlled-wallets/actions/getAccounts.test.js.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/getTokenBalances.d.ts.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/getTokenBalances.js +5 -3
- package/dist/cjs/providers/developer-controlled-wallets/actions/getTokenBalances.js.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/getTokenBalances.test.js +8 -0
- package/dist/cjs/providers/developer-controlled-wallets/actions/getTokenBalances.test.js.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/index.d.ts +18 -0
- package/dist/cjs/providers/developer-controlled-wallets/actions/index.d.ts.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/actions/index.js +18 -0
- package/dist/cjs/providers/developer-controlled-wallets/actions/index.js.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/extractChain.d.ts +1272 -1
- package/dist/cjs/providers/developer-controlled-wallets/extractChain.d.ts.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/extractChain.js +4 -1
- package/dist/cjs/providers/developer-controlled-wallets/extractChain.js.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/index.d.ts +1413 -142
- package/dist/cjs/providers/developer-controlled-wallets/index.d.ts.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/index.js +4 -0
- package/dist/cjs/providers/developer-controlled-wallets/index.js.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/provider.js +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/provider.js.map +1 -1
- package/dist/cjs/providers/developer-controlled-wallets/provider.test.js +3 -3
- package/dist/cjs/providers/developer-controlled-wallets/provider.test.js.map +1 -1
- package/dist/cjs/providers/faucet/actions/drip.d.ts.map +1 -1
- package/dist/cjs/providers/faucet/actions/drip.js +3 -1
- package/dist/cjs/providers/faucet/actions/drip.js.map +1 -1
- package/dist/cjs/providers/faucet/actions/drip.test.js +7 -0
- package/dist/cjs/providers/faucet/actions/drip.test.js.map +1 -1
- package/dist/cjs/providers/faucet/actions/index.d.ts +2 -0
- package/dist/cjs/providers/faucet/actions/index.d.ts.map +1 -1
- package/dist/cjs/providers/faucet/actions/index.js +2 -0
- package/dist/cjs/providers/faucet/actions/index.js.map +1 -1
- package/dist/cjs/providers/faucet/extractChain.d.ts +637 -1
- package/dist/cjs/providers/faucet/extractChain.d.ts.map +1 -1
- package/dist/cjs/providers/faucet/extractChain.js +4 -1
- package/dist/cjs/providers/faucet/extractChain.js.map +1 -1
- package/dist/cjs/providers/faucet/index.d.ts +692 -56
- package/dist/cjs/providers/faucet/index.d.ts.map +1 -1
- package/dist/cjs/providers/faucet/index.js +9 -1
- package/dist/cjs/providers/faucet/index.js.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/actions/getContractAbi.d.ts.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/actions/getContractAbi.js +5 -2
- package/dist/cjs/providers/smart-contract-platform/actions/getContractAbi.js.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/actions/getContractAbi.test.js +7 -0
- package/dist/cjs/providers/smart-contract-platform/actions/getContractAbi.test.js.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/actions/index.d.ts +6 -0
- package/dist/cjs/providers/smart-contract-platform/actions/index.d.ts.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/actions/index.js +6 -0
- package/dist/cjs/providers/smart-contract-platform/actions/index.js.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/actions/writeContract.d.ts.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/actions/writeContract.js +3 -1
- package/dist/cjs/providers/smart-contract-platform/actions/writeContract.js.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/actions/writeContract.test.js +11 -0
- package/dist/cjs/providers/smart-contract-platform/actions/writeContract.test.js.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/extractChain.d.ts +1268 -1
- package/dist/cjs/providers/smart-contract-platform/extractChain.d.ts.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/extractChain.js +4 -1
- package/dist/cjs/providers/smart-contract-platform/extractChain.js.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/index.d.ts +1267 -0
- package/dist/cjs/providers/smart-contract-platform/index.d.ts.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/index.js +12 -1
- package/dist/cjs/providers/smart-contract-platform/index.js.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/provider.js +1 -1
- package/dist/cjs/providers/smart-contract-platform/provider.js.map +1 -1
- package/dist/cjs/providers/smart-contract-platform/provider.test.js +3 -3
- package/dist/cjs/providers/smart-contract-platform/provider.test.js.map +1 -1
- package/dist/cjs/utils/parseAccount.d.ts +2 -2
- package/dist/cjs/utils/parseAccount.d.ts.map +1 -1
- package/dist/cjs/utils/parseAccount.js +0 -6
- package/dist/cjs/utils/parseAccount.js.map +1 -1
- package/dist/cjs/utils/parseAccount.test.js +5 -7
- package/dist/cjs/utils/parseAccount.test.js.map +1 -1
- package/dist/cjs/utils/parseAddress.d.ts +2 -1
- package/dist/cjs/utils/parseAddress.d.ts.map +1 -1
- package/dist/cjs/utils/parseAddress.js.map +1 -1
- package/dist/esm/actions/index.d.ts +8 -12
- package/dist/esm/actions/index.d.ts.map +1 -1
- package/dist/esm/actions/index.js +4 -12
- package/dist/esm/actions/index.js.map +1 -1
- package/dist/esm/actions/parseUnitsAsToken.d.ts +1 -1
- package/dist/esm/actions/parseUnitsAsToken.d.ts.map +1 -1
- package/dist/esm/actions/parseUnitsAsToken.js.map +1 -1
- package/dist/esm/actions/transfer.d.ts +18 -4
- package/dist/esm/actions/transfer.d.ts.map +1 -1
- package/dist/esm/actions/transfer.js +94 -44
- package/dist/esm/actions/transfer.js.map +1 -1
- package/dist/esm/actions/transfer.test.js +51 -3
- package/dist/esm/actions/transfer.test.js.map +1 -1
- package/dist/esm/chains/ARB.d.ts +1 -0
- package/dist/esm/chains/ARB.d.ts.map +1 -1
- package/dist/esm/chains/ARB.js +1 -0
- package/dist/esm/chains/ARB.js.map +1 -1
- package/dist/esm/chains/ARB_SEPOLIA.d.ts +1 -0
- package/dist/esm/chains/ARB_SEPOLIA.d.ts.map +1 -1
- package/dist/esm/chains/ARB_SEPOLIA.js +1 -0
- package/dist/esm/chains/ARB_SEPOLIA.js.map +1 -1
- package/dist/esm/chains/AVAX.d.ts +1 -0
- package/dist/esm/chains/AVAX.d.ts.map +1 -1
- package/dist/esm/chains/AVAX.js +1 -0
- package/dist/esm/chains/AVAX.js.map +1 -1
- package/dist/esm/chains/AVAX_FUJI.d.ts +1 -0
- package/dist/esm/chains/AVAX_FUJI.d.ts.map +1 -1
- package/dist/esm/chains/AVAX_FUJI.js +1 -0
- package/dist/esm/chains/AVAX_FUJI.js.map +1 -1
- package/dist/esm/chains/BASE.d.ts +1 -0
- package/dist/esm/chains/BASE.d.ts.map +1 -1
- package/dist/esm/chains/BASE.js +1 -0
- package/dist/esm/chains/BASE.js.map +1 -1
- package/dist/esm/chains/BASE_SEPOLIA.d.ts +1 -0
- package/dist/esm/chains/BASE_SEPOLIA.d.ts.map +1 -1
- package/dist/esm/chains/BASE_SEPOLIA.js +1 -0
- package/dist/esm/chains/BASE_SEPOLIA.js.map +1 -1
- package/dist/esm/chains/ETH.d.ts +1 -0
- package/dist/esm/chains/ETH.d.ts.map +1 -1
- package/dist/esm/chains/ETH.js +1 -0
- package/dist/esm/chains/ETH.js.map +1 -1
- package/dist/esm/chains/ETH_SEPOLIA.d.ts +1 -0
- package/dist/esm/chains/ETH_SEPOLIA.d.ts.map +1 -1
- package/dist/esm/chains/ETH_SEPOLIA.js +1 -0
- package/dist/esm/chains/ETH_SEPOLIA.js.map +1 -1
- package/dist/esm/chains/MATIC.d.ts +1 -0
- package/dist/esm/chains/MATIC.d.ts.map +1 -1
- package/dist/esm/chains/MATIC.js +1 -0
- package/dist/esm/chains/MATIC.js.map +1 -1
- package/dist/esm/chains/MATIC_AMOY.d.ts +1 -0
- package/dist/esm/chains/MATIC_AMOY.d.ts.map +1 -1
- package/dist/esm/chains/MATIC_AMOY.js +1 -0
- package/dist/esm/chains/MATIC_AMOY.js.map +1 -1
- package/dist/esm/chains/NEAR.d.ts +1 -0
- package/dist/esm/chains/NEAR.d.ts.map +1 -1
- package/dist/esm/chains/NEAR.js +1 -0
- package/dist/esm/chains/NEAR.js.map +1 -1
- package/dist/esm/chains/NEAR_TESTNET.d.ts +1 -0
- package/dist/esm/chains/NEAR_TESTNET.d.ts.map +1 -1
- package/dist/esm/chains/NEAR_TESTNET.js +1 -0
- package/dist/esm/chains/NEAR_TESTNET.js.map +1 -1
- package/dist/esm/chains/OP.d.ts +1 -0
- package/dist/esm/chains/OP.d.ts.map +1 -1
- package/dist/esm/chains/OP.js +1 -0
- package/dist/esm/chains/OP.js.map +1 -1
- package/dist/esm/chains/OP_SEPOLIA.d.ts +1 -0
- package/dist/esm/chains/OP_SEPOLIA.d.ts.map +1 -1
- package/dist/esm/chains/OP_SEPOLIA.js +1 -0
- package/dist/esm/chains/OP_SEPOLIA.js.map +1 -1
- package/dist/esm/chains/UNI.d.ts +1 -0
- package/dist/esm/chains/UNI.d.ts.map +1 -1
- package/dist/esm/chains/UNI.js +1 -0
- package/dist/esm/chains/UNI.js.map +1 -1
- package/dist/esm/chains/UNI_SEPOLIA.d.ts +1 -0
- package/dist/esm/chains/UNI_SEPOLIA.d.ts.map +1 -1
- package/dist/esm/chains/UNI_SEPOLIA.js +1 -0
- package/dist/esm/chains/UNI_SEPOLIA.js.map +1 -1
- package/dist/esm/extractChain.d.ts +17 -1
- package/dist/esm/extractChain.d.ts.map +1 -1
- package/dist/esm/extractChain.js +4 -1
- package/dist/esm/extractChain.js.map +1 -1
- package/dist/esm/metadata.js +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/approve.d.ts +26 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/approve.d.ts.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/approve.js +58 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/approve.js.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/approve.test.d.ts +2 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/approve.test.d.ts.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/approve.test.js +253 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/approve.test.js.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/depositForBurn.d.ts +28 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/depositForBurn.d.ts.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/depositForBurn.js +58 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/depositForBurn.js.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/depositForBurn.test.d.ts +2 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/depositForBurn.test.d.ts.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/depositForBurn.test.js +292 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/depositForBurn.test.js.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/index.d.ts +18 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/index.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/index.js +18 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/index.js.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/index.test.js +8 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/index.test.js.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/receiveMessage.d.ts +24 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/receiveMessage.d.ts.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/receiveMessage.js +52 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/receiveMessage.js.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/receiveMessage.test.d.ts +2 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/receiveMessage.test.d.ts.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/receiveMessage.test.js +249 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/receiveMessage.test.js.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.d.ts +43 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.d.ts.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.js +100 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.js.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.test.d.ts +2 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.test.d.ts.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.test.js +139 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/transferViaCCTP.test.js.map +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.js +3 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.js.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.test.js +7 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/actions/waitForAttestationMessage.test.js.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/ARB.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/ARB.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/ARB_SEPOLIA.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/ARB_SEPOLIA.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/AVAX.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/AVAX.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/AVAX_FUJI.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/AVAX_FUJI.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/BASE.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/BASE.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/BASE_SEPOLIA.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/BASE_SEPOLIA.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/ETH.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/ETH.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/ETH_SEPOLIA.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/ETH_SEPOLIA.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/MATIC.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/MATIC.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/MATIC_AMOY.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/MATIC_AMOY.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/OP.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/OP.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/OP_SEPOLIA.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/OP_SEPOLIA.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/UNI.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/UNI.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/UNI_SEPOLIA.d.ts +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/chains/UNI_SEPOLIA.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/extractChain.d.ts +15 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/extractChain.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/extractChain.js +4 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/extractChain.js.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/index.d.ts +15 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/index.d.ts.map +1 -1
- package/dist/esm/providers/cross-chain-transfer-protocol/index.js +1 -0
- package/dist/esm/providers/cross-chain-transfer-protocol/index.js.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/createAccount.d.ts +7 -0
- package/dist/esm/providers/developer-controlled-wallets/actions/createAccount.d.ts.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/createAccount.js +12 -2
- package/dist/esm/providers/developer-controlled-wallets/actions/createAccount.js.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/createAccount.test.js +7 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/createAccount.test.js.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/getAccounts.d.ts.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/getAccounts.js +3 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/getAccounts.js.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/getAccounts.test.js +7 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/getAccounts.test.js.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/getTokenBalances.d.ts.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/getTokenBalances.js +5 -3
- package/dist/esm/providers/developer-controlled-wallets/actions/getTokenBalances.js.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/getTokenBalances.test.js +9 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/getTokenBalances.test.js.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/index.d.ts +18 -0
- package/dist/esm/providers/developer-controlled-wallets/actions/index.d.ts.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/actions/index.js +18 -0
- package/dist/esm/providers/developer-controlled-wallets/actions/index.js.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/extractChain.d.ts +1272 -1
- package/dist/esm/providers/developer-controlled-wallets/extractChain.d.ts.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/extractChain.js +4 -1
- package/dist/esm/providers/developer-controlled-wallets/extractChain.js.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/index.d.ts +1413 -142
- package/dist/esm/providers/developer-controlled-wallets/index.d.ts.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/index.js +5 -1
- package/dist/esm/providers/developer-controlled-wallets/index.js.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/provider.js +1 -1
- package/dist/esm/providers/developer-controlled-wallets/provider.js.map +1 -1
- package/dist/esm/providers/developer-controlled-wallets/provider.test.js +3 -3
- package/dist/esm/providers/developer-controlled-wallets/provider.test.js.map +1 -1
- package/dist/esm/providers/faucet/actions/drip.d.ts.map +1 -1
- package/dist/esm/providers/faucet/actions/drip.js +3 -1
- package/dist/esm/providers/faucet/actions/drip.js.map +1 -1
- package/dist/esm/providers/faucet/actions/drip.test.js +8 -1
- package/dist/esm/providers/faucet/actions/drip.test.js.map +1 -1
- package/dist/esm/providers/faucet/actions/index.d.ts +2 -0
- package/dist/esm/providers/faucet/actions/index.d.ts.map +1 -1
- package/dist/esm/providers/faucet/actions/index.js +2 -0
- package/dist/esm/providers/faucet/actions/index.js.map +1 -1
- package/dist/esm/providers/faucet/extractChain.d.ts +637 -1
- package/dist/esm/providers/faucet/extractChain.d.ts.map +1 -1
- package/dist/esm/providers/faucet/extractChain.js +4 -1
- package/dist/esm/providers/faucet/extractChain.js.map +1 -1
- package/dist/esm/providers/faucet/index.d.ts +692 -56
- package/dist/esm/providers/faucet/index.d.ts.map +1 -1
- package/dist/esm/providers/faucet/index.js +10 -2
- package/dist/esm/providers/faucet/index.js.map +1 -1
- package/dist/esm/providers/smart-contract-platform/actions/getContractAbi.d.ts.map +1 -1
- package/dist/esm/providers/smart-contract-platform/actions/getContractAbi.js +5 -2
- package/dist/esm/providers/smart-contract-platform/actions/getContractAbi.js.map +1 -1
- package/dist/esm/providers/smart-contract-platform/actions/getContractAbi.test.js +8 -1
- package/dist/esm/providers/smart-contract-platform/actions/getContractAbi.test.js.map +1 -1
- package/dist/esm/providers/smart-contract-platform/actions/index.d.ts +6 -0
- package/dist/esm/providers/smart-contract-platform/actions/index.d.ts.map +1 -1
- package/dist/esm/providers/smart-contract-platform/actions/index.js +6 -0
- package/dist/esm/providers/smart-contract-platform/actions/index.js.map +1 -1
- package/dist/esm/providers/smart-contract-platform/actions/writeContract.d.ts.map +1 -1
- package/dist/esm/providers/smart-contract-platform/actions/writeContract.js +3 -1
- package/dist/esm/providers/smart-contract-platform/actions/writeContract.js.map +1 -1
- package/dist/esm/providers/smart-contract-platform/actions/writeContract.test.js +12 -1
- package/dist/esm/providers/smart-contract-platform/actions/writeContract.test.js.map +1 -1
- package/dist/esm/providers/smart-contract-platform/extractChain.d.ts +1268 -1
- package/dist/esm/providers/smart-contract-platform/extractChain.d.ts.map +1 -1
- package/dist/esm/providers/smart-contract-platform/extractChain.js +4 -1
- package/dist/esm/providers/smart-contract-platform/extractChain.js.map +1 -1
- package/dist/esm/providers/smart-contract-platform/index.d.ts +1267 -0
- package/dist/esm/providers/smart-contract-platform/index.d.ts.map +1 -1
- package/dist/esm/providers/smart-contract-platform/index.js +13 -2
- package/dist/esm/providers/smart-contract-platform/index.js.map +1 -1
- package/dist/esm/providers/smart-contract-platform/provider.js +1 -1
- package/dist/esm/providers/smart-contract-platform/provider.js.map +1 -1
- package/dist/esm/providers/smart-contract-platform/provider.test.js +3 -3
- package/dist/esm/providers/smart-contract-platform/provider.test.js.map +1 -1
- package/dist/esm/utils/parseAccount.d.ts +2 -2
- package/dist/esm/utils/parseAccount.d.ts.map +1 -1
- package/dist/esm/utils/parseAccount.js +0 -6
- package/dist/esm/utils/parseAccount.js.map +1 -1
- package/dist/esm/utils/parseAccount.test.js +5 -7
- package/dist/esm/utils/parseAccount.test.js.map +1 -1
- package/dist/esm/utils/parseAddress.d.ts +2 -1
- package/dist/esm/utils/parseAddress.d.ts.map +1 -1
- package/dist/esm/utils/parseAddress.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -20,7 +20,8 @@ This guide will help you get started quickly and efficiently, whether you're bui
|
|
|
20
20
|
USDCKit supports the following features:
|
|
21
21
|
* Wallet management: Create and manage wallets across multiple chains.
|
|
22
22
|
* Balance querying and filtering: Query wallet balances and filter wallets by balance threshold.
|
|
23
|
-
* Fund transfer: Transfer funds between wallets.
|
|
23
|
+
* Fund transfer: Transfer funds between wallets on the same chain.
|
|
24
|
+
* Cross-chain transfer: Transfer funds between wallets on different chains.
|
|
24
25
|
* Fund sweeping: Automate fund aggregation and optimize gas efficiency.
|
|
25
26
|
|
|
26
27
|
## Quickstart Steps
|
|
@@ -55,7 +56,7 @@ const client = createCircleClient({
|
|
|
55
56
|
## Usage
|
|
56
57
|
|
|
57
58
|
### Create Account
|
|
58
|
-
To create a new account, use the
|
|
59
|
+
To create a new account, use the [createAccount](./functions/providers_developer-controlled-wallets.createAccount.html) method. This will generate a new account that you can use for various operations such as transferring tokens and retrieving balances.
|
|
59
60
|
|
|
60
61
|
```typescript
|
|
61
62
|
// Creates an account on the default chain ETH_SEPOLIA
|
|
@@ -63,7 +64,7 @@ const account = await client.createAccount()
|
|
|
63
64
|
```
|
|
64
65
|
|
|
65
66
|
### Query for accounts
|
|
66
|
-
To query for existing accounts, use the getAccounts method. This will return the account details associated with the provided account query.
|
|
67
|
+
To query for existing accounts, use the [getAccounts](./functions/providers_developer-controlled-wallets.getAccounts.html) method. This will return the account details associated with the provided account query.
|
|
67
68
|
|
|
68
69
|
```typescript
|
|
69
70
|
// Query by Address
|
|
@@ -77,7 +78,7 @@ const account = await client.getAccounts({ amountGte: 1000 })
|
|
|
77
78
|
```
|
|
78
79
|
|
|
79
80
|
### Fund Account with Testnet Tokens
|
|
80
|
-
To fund an account with testnet tokens, you can use the
|
|
81
|
+
To fund an account with testnet tokens, you can use the [drip](./functions/providers_faucet.drip.html) method. This method provides native tokens, USDC, and EURC for testing purposes.
|
|
81
82
|
|
|
82
83
|
```typescript
|
|
83
84
|
// Receive native tokens, USDC, and EURC
|
|
@@ -91,7 +92,7 @@ await client.drip({ account, token: client.chain.contracts.USDC })
|
|
|
91
92
|
```
|
|
92
93
|
|
|
93
94
|
### Transfer tokens
|
|
94
|
-
The
|
|
95
|
+
The [transfer](./functions/actions.transfer.html) method allows the transferring of native or ERC-20 tokens between accounts. Multiple source accounts can be transferred with a single call. Fees can be controllable using the `fees` parameter. Below are examples of how to use the `transfer()` method for each type of token.
|
|
95
96
|
|
|
96
97
|
```typescript
|
|
97
98
|
// Create Transfer - Native Tokens
|
|
@@ -108,6 +109,14 @@ const transaction_usdc = await client.transfer({
|
|
|
108
109
|
token: client.chain.contracts.USDC,
|
|
109
110
|
amount: '0.01',
|
|
110
111
|
})
|
|
112
|
+
|
|
113
|
+
// Create Transfer - Cross chain USDC
|
|
114
|
+
const transaction_usdc = await client.transfer({
|
|
115
|
+
from: accountOnETH_SEPOLIA,
|
|
116
|
+
to: accountOnMATIC_AMOY,
|
|
117
|
+
token: ETH_SEPOLIA.contracts.USDC,
|
|
118
|
+
amount: '0.01',
|
|
119
|
+
})
|
|
111
120
|
```
|
|
112
121
|
|
|
113
122
|
#### Batch Transfers
|
|
@@ -124,7 +133,7 @@ const transaction_batch = await client.transfer({
|
|
|
124
133
|
```
|
|
125
134
|
|
|
126
135
|
#### Drain specified tokens from account
|
|
127
|
-
|
|
136
|
+
[drainFrom](./functions/actions.drainFrom.html) function transfers all specified tokens from one account to another. In this example, it transfers all USDC tokens from `account_1` to `account_2`.
|
|
128
137
|
|
|
129
138
|
```typescript
|
|
130
139
|
const transaction_drain = await client.drainFrom({
|
|
@@ -135,7 +144,7 @@ const transaction_drain = await client.drainFrom({
|
|
|
135
144
|
```
|
|
136
145
|
|
|
137
146
|
### Get Account Balance
|
|
138
|
-
|
|
147
|
+
Use [getTokenBalances](./functions/providers_developer-controlled-wallets.getTokenBalances.html) to retrieve the token balances for a specified account.
|
|
139
148
|
|
|
140
149
|
```typescript
|
|
141
150
|
const balance = await client.getTokenBalances({ account: account_2 })
|
|
@@ -146,7 +155,6 @@ For more details on how to run an end-to-end USDC Acquiring Flow to support your
|
|
|
146
155
|
|
|
147
156
|
## Future Plans
|
|
148
157
|
The current private release marks the first version of USDCKit, and we recognize that additional tools are needed to create a smooth USDC payment experience. As such, we are actively working on several modules and would greatly appreciate your feedback. Our roadmap includes, but is not limited to, the following:
|
|
149
|
-
- Cross-Chain Send of USDC
|
|
150
158
|
- Swap of USDC
|
|
151
159
|
- Mass Payout of USDC
|
|
152
160
|
- Gas Efficiency Enhancement
|
|
@@ -13,9 +13,13 @@ export * from './drainFrom.js';
|
|
|
13
13
|
export * from './generateTransferLink.js';
|
|
14
14
|
export * from './parseUnitsAsToken.js';
|
|
15
15
|
export type Actions<transport extends Transport = Transport, chain extends Chain | undefined = Chain | undefined, account extends Account | undefined = Account | undefined> = {
|
|
16
|
+
/** See {@link transfer} action */
|
|
16
17
|
transfer: (params: Parameters<typeof transfer>[1]) => ReturnType<typeof transfer>;
|
|
18
|
+
/** See {@link drainFrom} action */
|
|
17
19
|
drainFrom: (params: Parameters<typeof drainFrom>[1]) => ReturnType<typeof drainFrom>;
|
|
20
|
+
/** See {@link generateTransferLink} action */
|
|
18
21
|
generateTransferLink: (params: Parameters<typeof generateTransferLink>[1]) => ReturnType<typeof generateTransferLink>;
|
|
22
|
+
/** See {@link parseUnitsAsToken} action */
|
|
19
23
|
parseUnitsAsToken: (params: Parameters<typeof parseUnitsAsToken>[1]) => ReturnType<typeof parseUnitsAsToken>;
|
|
20
24
|
};
|
|
21
25
|
/**
|
|
@@ -25,21 +29,13 @@ export type Actions<transport extends Transport = Transport, chain extends Chain
|
|
|
25
29
|
* @returns An object containing the bound action functions.
|
|
26
30
|
*/
|
|
27
31
|
export declare function actions(client: Client): {
|
|
28
|
-
/**
|
|
29
|
-
* Drains all tokens of a specified type from given accounts.
|
|
30
|
-
*
|
|
31
|
-
* @param params - Parameters for the drain operation.
|
|
32
|
-
* @returns An array of transfer results.
|
|
33
|
-
*/
|
|
32
|
+
/** See {@link drainFrom} action */
|
|
34
33
|
drainFrom: (params: DrainFromParams) => Promise<import("./transfer.js").TransferReturnType>;
|
|
35
|
-
/**
|
|
36
|
-
* Transfers tokens or native currency from one account to another.
|
|
37
|
-
*
|
|
38
|
-
* @param params - The transfer parameters.
|
|
39
|
-
* @returns An array of transfer return types containing transaction hashes.
|
|
40
|
-
*/
|
|
34
|
+
/** See {@link transfer} action */
|
|
41
35
|
transfer: (params: TransferParams) => Promise<import("./transfer.js").TransferReturnType>;
|
|
36
|
+
/** See {@link generateTransferLink} action */
|
|
42
37
|
generateTransferLink: (params: GenerateTransferLinkParams) => Promise<string>;
|
|
38
|
+
/** See {@link parseUnitsAsToken} action */
|
|
43
39
|
parseUnitsAsToken: (params: ParseUnitsAsTokenParams) => Promise<bigint>;
|
|
44
40
|
};
|
|
45
41
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/actions/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAsB,MAAM,aAAa,CAAA;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAA;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAEpD,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AAGtC,MAAM,MAAM,OAAO,CAEjB,SAAS,SAAS,SAAS,GAAG,SAAS,EAEvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAEnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,IACvD;IACF,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAA;IACjF,SAAS,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,OAAO,SAAS,CAAC,CAAA;IACpF,oBAAoB,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;IACrH,iBAAiB,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAA;CAC7G,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM;IAElC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/actions/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAA;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,KAAK,EAAE,OAAO,EAAsB,MAAM,aAAa,CAAA;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAA;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,MAAM,CAAA;AAEpD,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AAGtC,MAAM,MAAM,OAAO,CAEjB,SAAS,SAAS,SAAS,GAAG,SAAS,EAEvC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAEnD,OAAO,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,IACvD;IACF,kCAAkC;IAClC,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAA;IACjF,mCAAmC;IACnC,SAAS,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,OAAO,SAAS,CAAC,CAAA;IACpF,8CAA8C;IAC9C,oBAAoB,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;IACrH,2CAA2C;IAC3C,iBAAiB,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAA;CAC7G,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM;IAElC,mCAAmC;wBACf,eAAe;IACnC,kCAAkC;uBACf,cAAc;IACjC,8CAA8C;mCACf,0BAA0B;IAEzD,2CAA2C;gCACf,uBAAuB;EAEtD"}
|
|
@@ -41,21 +41,13 @@ __exportStar(require("./parseUnitsAsToken.js"), exports);
|
|
|
41
41
|
*/
|
|
42
42
|
function actions(client) {
|
|
43
43
|
return {
|
|
44
|
-
/**
|
|
45
|
-
* Drains all tokens of a specified type from given accounts.
|
|
46
|
-
*
|
|
47
|
-
* @param params - Parameters for the drain operation.
|
|
48
|
-
* @returns An array of transfer results.
|
|
49
|
-
*/
|
|
44
|
+
/** See {@link drainFrom} action */
|
|
50
45
|
drainFrom: (params) => (0, drainFrom_js_1.drainFrom)(client, params),
|
|
51
|
-
/**
|
|
52
|
-
* Transfers tokens or native currency from one account to another.
|
|
53
|
-
*
|
|
54
|
-
* @param params - The transfer parameters.
|
|
55
|
-
* @returns An array of transfer return types containing transaction hashes.
|
|
56
|
-
*/
|
|
46
|
+
/** See {@link transfer} action */
|
|
57
47
|
transfer: (params) => (0, transfer_js_1.transfer)(client, params),
|
|
48
|
+
/** See {@link generateTransferLink} action */
|
|
58
49
|
generateTransferLink: (params) => (0, generateTransferLink_js_1.generateTransferLink)(client, params),
|
|
50
|
+
/** See {@link parseUnitsAsToken} action */
|
|
59
51
|
parseUnitsAsToken: (params) => (0, parseUnitsAsToken_js_1.parseUnitsAsToken)(client, params),
|
|
60
52
|
};
|
|
61
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/actions/index.ts"],"names":[],"mappings":";AAAA,kDAAkD;AAClD,uBAAuB;AACvB,EAAE;AACF,2CAA2C;AAC3C,EAAE;AACF,4EAA4E;AAC5E,kDAAkD;AAClD,8EAA8E;AAC9E,yEAAyE;AACzE,mFAAmF;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/actions/index.ts"],"names":[],"mappings":";AAAA,kDAAkD;AAClD,uBAAuB;AACvB,EAAE;AACF,2CAA2C;AAC3C,EAAE;AACF,4EAA4E;AAC5E,kDAAkD;AAClD,8EAA8E;AAC9E,yEAAyE;AACzE,mFAAmF;;;;;;;;;;;;;;;;AA4CnF,0BAYC;AAtDD,iDAA0C;AAC1C,uEAAgE;AAChE,iEAA0D;AAC1D,+CAAwC;AASxC,gDAA6B;AAC7B,iDAA8B;AAC9B,4DAAyC;AACzC,yDAAsC;AAqBtC;;;;;GAKG;AACH,SAAgB,OAAO,CAAC,MAAc;IACpC,OAAO;QACL,mCAAmC;QACnC,SAAS,EAAE,CAAC,MAAuB,EAAE,EAAE,CAAC,IAAA,wBAAS,EAAC,MAA4B,EAAE,MAAM,CAAC;QACvF,kCAAkC;QAClC,QAAQ,EAAE,CAAC,MAAsB,EAAE,EAAE,CAAC,IAAA,sBAAQ,EAAC,MAA4B,EAAE,MAAM,CAAC;QACpF,8CAA8C;QAC9C,oBAAoB,EAAE,CAAC,MAAkC,EAAE,EAAE,CAC3D,IAAA,8CAAoB,EAAC,MAA4B,EAAE,MAAM,CAAC;QAC5D,2CAA2C;QAC3C,iBAAiB,EAAE,CAAC,MAA+B,EAAE,EAAE,CAAC,IAAA,wCAAiB,EAAC,MAA4B,EAAE,MAAM,CAAC;KAChH,CAAA;AACH,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type Chain, type ChainContract } from 'viem';
|
|
2
1
|
import type { Address, NativeUnits, BaseUnits, ExtendedViemClient } from '../types.js';
|
|
2
|
+
import type { Chain, ChainContract } from 'viem';
|
|
3
3
|
export type ParseUnitsAsTokenParams = {
|
|
4
4
|
/** The amount to transfer. */
|
|
5
5
|
value: NativeUnits | BaseUnits;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseUnitsAsToken.d.ts","sourceRoot":"","sources":["../../../src/actions/parseUnitsAsToken.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parseUnitsAsToken.d.ts","sourceRoot":"","sources":["../../../src/actions/parseUnitsAsToken.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACtF,OAAO,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,MAAM,CAAA;AAEhD,MAAM,MAAM,uBAAuB,GAAG;IACpC,8BAA8B;IAC9B,KAAK,EAAE,WAAW,GAAG,SAAS,CAAA;IAC9B,oCAAoC;IACpC,KAAK,CAAC,EAAE,OAAO,GAAG,aAAa,GAAG,IAAI,CAAA;IACtC,0EAA0E;IAC1E,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,SAAS,CAAC,CA+BpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseUnitsAsToken.js","sourceRoot":"","sources":["../../../src/actions/parseUnitsAsToken.ts"],"names":[],"mappings":";AAAA,kDAAkD;AAClD,uBAAuB;AACvB,EAAE;AACF,2CAA2C;AAC3C,EAAE;AACF,4EAA4E;AAC5E,kDAAkD;AAClD,8EAA8E;AAC9E,yEAAyE;AACzE,mFAAmF;;
|
|
1
|
+
{"version":3,"file":"parseUnitsAsToken.js","sourceRoot":"","sources":["../../../src/actions/parseUnitsAsToken.ts"],"names":[],"mappings":";AAAA,kDAAkD;AAClD,uBAAuB;AACvB,EAAE;AACF,2CAA2C;AAC3C,EAAE;AACF,4EAA4E;AAC5E,kDAAkD;AAClD,8EAA8E;AAC9E,yEAAyE;AACzE,mFAAmF;;AA+CnF,8CAkCC;AA/ED,+BAAkD;AAClD,sCAAsC;AAEtC,gGAAyG;AACzG,wFAAiF;AACjF,8DAAuD;AACvD,0DAAmD;AAcnD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACI,KAAK,UAAU,iBAAiB,CACrC,MAA0B,EAC1B,MAA+B;IAE/B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,MAAM,CAAA;IAC7D,MAAM,KAAK,GAAG,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,IAAA,8BAAY,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAE1D,eAAe;IACf,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAE3C,wBAAwB;IACxB,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,IAAA,0BAAU,EAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAA;IAE1E,IAAI,aAAa,GAA8B,SAAS,CAAA;IAExD,IAAI,CAAC;QACH,gCAAgC;QAChC,aAAa,GAAG,IAAA,wDAAyB,EAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IACjE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,CAAC,KAAK,YAAY,kCAA2B,CAAC;YAAE,MAAM,KAAK,CAAA;IAClE,CAAC;IAED,wDAAwD;IACxD,sEAAsE;IACtE,MAAM,UAAU,GAAG,aAAa,EAAE,IAAI,EAAE,QAAsC,CAAA;IAC9E,IAAI,OAAO,UAAU,KAAK,UAAU;QAAE,OAAO,IAAA,0BAAU,EAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAA;IAE5E,mCAAmC;IACnC,MAAM,WAAW,GAAG,IAAA,iBAAS,EAAC,MAAM,EAAE,4BAAY,EAAE,aAAa,CAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,CAAA;IAEvD,wDAAwD;IACxD,yGAAyG;IACzG,OAAO,IAAA,0BAAU,EAAC,KAAK,EAAE,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAW,CAAC,CAAA;AACtE,CAAC"}
|
|
@@ -58,7 +58,7 @@ export type EstimateFeesPerGasParams = {
|
|
|
58
58
|
* @param level - The fee level
|
|
59
59
|
* @returns A function that estimates the fees for a transfer request.
|
|
60
60
|
*/
|
|
61
|
-
export declare function FEE_LEVEL(level: 'LOW' | 'MEDIUM' | 'HIGH'): ({ client, request: { from, to, token, amount, chain }, }: EstimateFeesPerGasParams) => Promise<Merge<FeeValuesEIP1559, {
|
|
61
|
+
export declare function FEE_LEVEL(level: 'LOW' | 'MEDIUM' | 'HIGH'): ({ client, request: { from, to, token, amount, chain: _chain }, }: EstimateFeesPerGasParams) => Promise<Merge<FeeValuesEIP1559, {
|
|
62
62
|
gas: BaseUnits;
|
|
63
63
|
}>>;
|
|
64
64
|
/**
|
|
@@ -84,21 +84,21 @@ export declare function FEE_LEVEL_WITH_PREPARE({ account, level, confirmations,
|
|
|
84
84
|
* Pre-configured fee level estimation function.
|
|
85
85
|
* Uses the `LOW` fee level settings for transfer fee estimation.
|
|
86
86
|
*/
|
|
87
|
-
export declare const LOW: ({ client, request: { from, to, token, amount, chain }, }: EstimateFeesPerGasParams) => Promise<Merge<FeeValuesEIP1559, {
|
|
87
|
+
export declare const LOW: ({ client, request: { from, to, token, amount, chain: _chain }, }: EstimateFeesPerGasParams) => Promise<Merge<FeeValuesEIP1559, {
|
|
88
88
|
gas: BaseUnits;
|
|
89
89
|
}>>;
|
|
90
90
|
/**
|
|
91
91
|
* Pre-configured fee level estimation function.
|
|
92
92
|
* Uses the `MEDIUM` fee level settings for transfer fee estimation.
|
|
93
93
|
*/
|
|
94
|
-
export declare const MEDIUM: ({ client, request: { from, to, token, amount, chain }, }: EstimateFeesPerGasParams) => Promise<Merge<FeeValuesEIP1559, {
|
|
94
|
+
export declare const MEDIUM: ({ client, request: { from, to, token, amount, chain: _chain }, }: EstimateFeesPerGasParams) => Promise<Merge<FeeValuesEIP1559, {
|
|
95
95
|
gas: BaseUnits;
|
|
96
96
|
}>>;
|
|
97
97
|
/**
|
|
98
98
|
* Pre-configured fee level estimation function.
|
|
99
99
|
* Uses the `HIGH` fee level settings for transfer fee estimation.
|
|
100
100
|
*/
|
|
101
|
-
export declare const HIGH: ({ client, request: { from, to, token, amount, chain }, }: EstimateFeesPerGasParams) => Promise<Merge<FeeValuesEIP1559, {
|
|
101
|
+
export declare const HIGH: ({ client, request: { from, to, token, amount, chain: _chain }, }: EstimateFeesPerGasParams) => Promise<Merge<FeeValuesEIP1559, {
|
|
102
102
|
gas: BaseUnits;
|
|
103
103
|
}>>;
|
|
104
104
|
/**
|
|
@@ -150,6 +150,20 @@ export declare const HIGH: ({ client, request: { from, to, token, amount, chain
|
|
|
150
150
|
* fees: FEE_LEVEL('LOW'),
|
|
151
151
|
* })
|
|
152
152
|
* ```
|
|
153
|
+
*
|
|
154
|
+
* @example
|
|
155
|
+
* Transfer USDC cross-chain using CCTP
|
|
156
|
+
* ```typescript
|
|
157
|
+
* const [ account_1 ] = await client.getAccounts({ address: '0x123', chain: ETH_SEPOLIA })
|
|
158
|
+
* const [ account_2 ] = await client.getAccounts({ address: '0x321', chain: MATIC_AMOY })
|
|
159
|
+
*
|
|
160
|
+
* await client.transfer({
|
|
161
|
+
* from: account_1,
|
|
162
|
+
* to: account_2,
|
|
163
|
+
* amount: '20',
|
|
164
|
+
* token: ETH_SEPOLIA.contracts.USDC,
|
|
165
|
+
* })
|
|
166
|
+
* ```
|
|
153
167
|
*/
|
|
154
168
|
export declare function transfer(client: ExtendedViemClient, params: TransferParams & ControlFlowOptions): Promise<TransferReturnType>;
|
|
155
169
|
//# sourceMappingURL=transfer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../../../src/actions/transfer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../../../src/actions/transfer.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,8 @@ exports.transfer = transfer;
|
|
|
17
17
|
const viem_1 = require("viem");
|
|
18
18
|
const actions_1 = require("viem/actions");
|
|
19
19
|
const utils_1 = require("viem/utils");
|
|
20
|
+
const UnsupportedChainError_js_1 = require("../errors/UnsupportedChainError.js");
|
|
21
|
+
const transferViaCCTP_js_1 = require("../providers/cross-chain-transfer-protocol/actions/transferViaCCTP.js");
|
|
20
22
|
const createTransaction_js_1 = require("../providers/developer-controlled-wallets/actions/createTransaction.js");
|
|
21
23
|
const estimateTransferFee_js_1 = require("../providers/developer-controlled-wallets/actions/estimateTransferFee.js");
|
|
22
24
|
const getTokenBalances_js_1 = require("../providers/developer-controlled-wallets/actions/getTokenBalances.js");
|
|
@@ -27,6 +29,7 @@ const formatUnits_js_1 = require("../utils/formatUnits.js");
|
|
|
27
29
|
const parseAccount_js_1 = require("../utils/parseAccount.js");
|
|
28
30
|
const parseAddress_js_1 = require("../utils/parseAddress.js");
|
|
29
31
|
const parseUnits_js_1 = require("../utils/parseUnits.js");
|
|
32
|
+
const raise_js_1 = require("../utils/raise.js");
|
|
30
33
|
const wrapAsync_js_1 = require("../utils/wrapAsync.js");
|
|
31
34
|
/**
|
|
32
35
|
* Estimates the fee levels for a transfer.
|
|
@@ -34,7 +37,8 @@ const wrapAsync_js_1 = require("../utils/wrapAsync.js");
|
|
|
34
37
|
* @returns A function that estimates the fees for a transfer request.
|
|
35
38
|
*/
|
|
36
39
|
function FEE_LEVEL(level) {
|
|
37
|
-
return async ({ client, request: { from, to, token, amount, chain }, }) => {
|
|
40
|
+
return async ({ client, request: { from, to, token, amount, chain: _chain }, }) => {
|
|
41
|
+
const chain = (0, extractChain_js_1.extractChain)(_chain) ?? (0, raise_js_1.raise)(new UnsupportedChainError_js_1.UnsupportedChainError());
|
|
38
42
|
const estimateTransferFee = (0, utils_1.getAction)(client, estimateTransferFee_js_1.estimateTransferFee, 'estimateTransferFee');
|
|
39
43
|
// @ts-expect-error: Ignore ts(2331) for `read` property
|
|
40
44
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
|
|
@@ -42,7 +46,7 @@ function FEE_LEVEL(level) {
|
|
|
42
46
|
const estimate = (await estimateTransferFee({
|
|
43
47
|
sourceAddress: from.address,
|
|
44
48
|
destinationAddress: to.address,
|
|
45
|
-
blockchain:
|
|
49
|
+
blockchain: chain.blockchainId,
|
|
46
50
|
tokenAddress: token?.address,
|
|
47
51
|
amounts: [(0, formatUnits_js_1.formatUnits)(amount, decimals)],
|
|
48
52
|
}));
|
|
@@ -113,6 +117,28 @@ const ESTIMATE_GAS = async ({ client, request }) => {
|
|
|
113
117
|
const { gas } = await (0, exports.HIGH)({ client, request });
|
|
114
118
|
return gas;
|
|
115
119
|
};
|
|
120
|
+
async function transferOne(client, { from, to, amount, gas, fees, token, chain: _chain, signal, }) {
|
|
121
|
+
const createTransaction = (0, utils_1.getAction)(client, createTransaction_js_1.createTransaction, 'createTransaction');
|
|
122
|
+
const waitForTransactionHash = (0, utils_1.getAction)(client, waitForTransactionHash_js_1.waitForTransactionHash, 'waitForTransactionHash');
|
|
123
|
+
const chain = (0, extractChain_js_1.extractChain)(_chain) ?? (0, raise_js_1.raise)(new UnsupportedChainError_js_1.UnsupportedChainError());
|
|
124
|
+
const { id } = (await createTransaction({
|
|
125
|
+
sourceAddress: from.address,
|
|
126
|
+
destinationAddress: to.address,
|
|
127
|
+
blockchain: chain.blockchainId,
|
|
128
|
+
tokenAddress: token?.address,
|
|
129
|
+
amounts: [amount],
|
|
130
|
+
fee: {
|
|
131
|
+
type: 'absolute',
|
|
132
|
+
config: {
|
|
133
|
+
gasLimit: (0, formatUnits_js_1.formatUnits)(gas),
|
|
134
|
+
maxFee: (0, viem_1.formatGwei)(fees.maxFeePerGas),
|
|
135
|
+
priorityFee: (0, viem_1.formatGwei)(fees.maxPriorityFeePerGas),
|
|
136
|
+
},
|
|
137
|
+
},
|
|
138
|
+
}));
|
|
139
|
+
const { txHash } = (await waitForTransactionHash({ id, signal }));
|
|
140
|
+
return { hash: txHash };
|
|
141
|
+
}
|
|
116
142
|
/**
|
|
117
143
|
* Transfers tokens or native currency from one account to another.
|
|
118
144
|
* @param client - The client instance.
|
|
@@ -162,62 +188,86 @@ const ESTIMATE_GAS = async ({ client, request }) => {
|
|
|
162
188
|
* fees: FEE_LEVEL('LOW'),
|
|
163
189
|
* })
|
|
164
190
|
* ```
|
|
191
|
+
*
|
|
192
|
+
* @example
|
|
193
|
+
* Transfer USDC cross-chain using CCTP
|
|
194
|
+
* ```typescript
|
|
195
|
+
* const [ account_1 ] = await client.getAccounts({ address: '0x123', chain: ETH_SEPOLIA })
|
|
196
|
+
* const [ account_2 ] = await client.getAccounts({ address: '0x321', chain: MATIC_AMOY })
|
|
197
|
+
*
|
|
198
|
+
* await client.transfer({
|
|
199
|
+
* from: account_1,
|
|
200
|
+
* to: account_2,
|
|
201
|
+
* amount: '20',
|
|
202
|
+
* token: ETH_SEPOLIA.contracts.USDC,
|
|
203
|
+
* })
|
|
204
|
+
* ```
|
|
165
205
|
*/
|
|
166
206
|
async function transfer(client, params) {
|
|
167
|
-
const { chain = client.chain, from = client.account, to } = params;
|
|
168
|
-
const { amount, gas: _gas, fees
|
|
169
|
-
const
|
|
170
|
-
const gas = _gas !== undefined ? (0, parseUnits_js_1.parseUnits)(_gas, chain.nativeCurrency.decimals) : undefined;
|
|
207
|
+
const { chain: _chain = client.chain, from = client.account, to } = params;
|
|
208
|
+
const { amount, gas: _gas, fees } = params;
|
|
209
|
+
const _fees = fees ?? exports.HIGH;
|
|
171
210
|
const getContract = (0, utils_1.getAction)(client, getContract_js_1.getContract, 'getContract');
|
|
172
|
-
const
|
|
173
|
-
const waitForTransactionHash = (0, utils_1.getAction)(client, waitForTransactionHash_js_1.waitForTransactionHash, 'waitForTransactionHash');
|
|
174
|
-
const blockchain = (0, extractChain_js_1.extractChain)(chain).blockchainId;
|
|
211
|
+
const transferViaCCTP = (0, utils_1.getAction)(client, transferViaCCTP_js_1.transferViaCCTP, 'transferViaCCTP');
|
|
175
212
|
const toAccount = (0, parseAccount_js_1.parseAccount)(to);
|
|
213
|
+
const toChain = (0, extractChain_js_1.extractChain)(toAccount.chain ?? _chain);
|
|
176
214
|
const fromAccounts = (Array.isArray(from) ? from : [from]).map((fromAccount) => (0, parseAccount_js_1.parseAccount)(fromAccount));
|
|
177
|
-
const
|
|
215
|
+
const fromChains = fromAccounts.map((fromAccount) => (0, extractChain_js_1.extractChain)(fromAccount.chain ?? _chain));
|
|
216
|
+
const fromChain = fromChains.at(0) ?? (0, raise_js_1.raise)(new UnsupportedChainError_js_1.UnsupportedChainError());
|
|
217
|
+
// Ensure accounts in `from` is on the same chain
|
|
218
|
+
if (new Set(fromChains).size > 1) {
|
|
219
|
+
throw new UnsupportedChainError_js_1.UnsupportedChainError('Multiple chains detected in `from` accounts');
|
|
220
|
+
}
|
|
221
|
+
const gas = _gas !== undefined ? (0, parseUnits_js_1.parseUnits)(_gas, fromChain.nativeCurrency.decimals) : undefined;
|
|
222
|
+
const token = params.token != null ? (0, parseAddress_js_1.parseAddress)(params.token) : undefined;
|
|
178
223
|
let tokenContract;
|
|
179
|
-
let tokenCurrencyDecimals =
|
|
224
|
+
let tokenCurrencyDecimals = fromChain.nativeCurrency.decimals;
|
|
180
225
|
if (token != null) {
|
|
181
|
-
tokenContract =
|
|
226
|
+
tokenContract = await getContract({
|
|
227
|
+
address: token.address,
|
|
228
|
+
chain: fromChain,
|
|
229
|
+
});
|
|
182
230
|
// @ts-expect-error: Ignore ts(2331) for `read` property
|
|
183
231
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access
|
|
184
232
|
tokenCurrencyDecimals = (await tokenContract.read.decimals());
|
|
185
233
|
}
|
|
186
|
-
|
|
187
|
-
const
|
|
234
|
+
return await Promise.all(fromAccounts.map(async (fromAccount) => {
|
|
235
|
+
const amountFn = typeof amount !== 'function' ? (0, wrapAsync_js_1.wrapAsync)(amount) : amount;
|
|
236
|
+
const _amount = (0, parseUnits_js_1.parseUnits)(await amountFn(fromAccount), tokenCurrencyDecimals);
|
|
237
|
+
// Use cross-chain-transfer-protocol
|
|
238
|
+
if (fromChain !== toChain && token != null) {
|
|
239
|
+
if (!(gas == null && fees == null)) {
|
|
240
|
+
throw new Error('Specifying gas fees is unsupported for cross-chain transfer');
|
|
241
|
+
}
|
|
242
|
+
const txHash = await transferViaCCTP({
|
|
243
|
+
from: fromAccount,
|
|
244
|
+
to: toAccount,
|
|
245
|
+
amount: _amount,
|
|
246
|
+
token,
|
|
247
|
+
});
|
|
248
|
+
return { hash: txHash };
|
|
249
|
+
}
|
|
188
250
|
const request = {
|
|
189
|
-
from,
|
|
190
|
-
to,
|
|
251
|
+
from: fromAccount,
|
|
252
|
+
to: toAccount,
|
|
191
253
|
token: tokenContract,
|
|
192
|
-
amount,
|
|
193
|
-
chain,
|
|
254
|
+
amount: _amount,
|
|
255
|
+
chain: fromChain,
|
|
194
256
|
};
|
|
195
|
-
const
|
|
257
|
+
const gasFn = gas !== undefined ? (0, wrapAsync_js_1.wrapAsync)(gas) : ESTIMATE_GAS;
|
|
258
|
+
const _gas = await gasFn({ client, request });
|
|
259
|
+
const feesFn = typeof _fees !== 'function' ? (0, wrapAsync_js_1.wrapAsync)(_fees) : _fees;
|
|
196
260
|
const { maxFeePerGas, maxPriorityFeePerGas } = await feesFn({ client, request });
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
priorityFee: (0, viem_1.formatGwei)(maxPriorityFeePerGas),
|
|
209
|
-
},
|
|
210
|
-
},
|
|
211
|
-
}));
|
|
212
|
-
const { txHash } = (await waitForTransactionHash({ id, signal: params?.signal }));
|
|
213
|
-
return { hash: txHash };
|
|
214
|
-
}
|
|
215
|
-
return await Promise.all(fromAccounts.map((fromAccount) => transferOne({
|
|
216
|
-
from: fromAccount,
|
|
217
|
-
to: toAccount,
|
|
218
|
-
amountFn: typeof amount !== 'function' ? (0, wrapAsync_js_1.wrapAsync)(amount) : amount,
|
|
219
|
-
gasFn: gas !== undefined ? (0, wrapAsync_js_1.wrapAsync)(gas) : ESTIMATE_GAS,
|
|
220
|
-
feesFn: typeof _fees !== 'function' ? (0, wrapAsync_js_1.wrapAsync)(_fees) : _fees,
|
|
221
|
-
})));
|
|
261
|
+
return transferOne(client, {
|
|
262
|
+
from: fromAccount,
|
|
263
|
+
to: toAccount,
|
|
264
|
+
amount: (0, formatUnits_js_1.formatUnits)(_amount, tokenCurrencyDecimals),
|
|
265
|
+
token: tokenContract,
|
|
266
|
+
gas: _gas,
|
|
267
|
+
fees: { maxFeePerGas, maxPriorityFeePerGas },
|
|
268
|
+
chain: fromChain,
|
|
269
|
+
signal: params.signal,
|
|
270
|
+
});
|
|
271
|
+
}));
|
|
222
272
|
}
|
|
223
273
|
//# sourceMappingURL=transfer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../../src/actions/transfer.ts"],"names":[],"mappings":";AAAA,kDAAkD;AAClD,uBAAuB;AACvB,EAAE;AACF,2CAA2C;AAC3C,EAAE;AACF,4EAA4E;AAC5E,kDAAkD;AAClD,8EAA8E;AAC9E,yEAAyE;AACzE,mFAAmF;;;
|
|
1
|
+
{"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../../src/actions/transfer.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
const vitest_1 = require("vitest");
|
|
14
14
|
const index_js_1 = require("../chains/index.js");
|
|
15
|
+
const UnsupportedChainError_js_1 = require("../errors/UnsupportedChainError.js");
|
|
15
16
|
const transfer_js_1 = require("./transfer.js");
|
|
16
17
|
(0, vitest_1.describe)('transfer()', () => {
|
|
17
18
|
(0, vitest_1.afterEach)(() => {
|
|
@@ -49,6 +50,7 @@ const transfer_js_1 = require("./transfer.js");
|
|
|
49
50
|
waitForTransactionReceipt: vitest_1.vi.fn(() => { }),
|
|
50
51
|
getTokenBalances: vitest_1.vi.fn(() => []),
|
|
51
52
|
transfer: vitest_1.vi.fn(() => [{ hash: 'tx-hash' }]),
|
|
53
|
+
transferViaCCTP: vitest_1.vi.fn(),
|
|
52
54
|
};
|
|
53
55
|
(0, vitest_1.it)('should transfer native tokens', async () => {
|
|
54
56
|
const params = {
|
|
@@ -253,7 +255,10 @@ const transfer_js_1 = require("./transfer.js");
|
|
|
253
255
|
const expectedResult = [{ hash: 'tx-hash' }];
|
|
254
256
|
const { from, to } = params;
|
|
255
257
|
const result = await (0, transfer_js_1.transfer)(client, params);
|
|
256
|
-
(0, vitest_1.expect)(client.getContract).toHaveBeenCalledWith({
|
|
258
|
+
(0, vitest_1.expect)(client.getContract).toHaveBeenCalledWith({
|
|
259
|
+
address: params.token.address,
|
|
260
|
+
chain: client.chain,
|
|
261
|
+
});
|
|
257
262
|
(0, vitest_1.expect)(client.estimateTransferFee).toHaveBeenCalledWith({
|
|
258
263
|
sourceAddress: from.address,
|
|
259
264
|
destinationAddress: to.address,
|
|
@@ -281,7 +286,10 @@ const transfer_js_1 = require("./transfer.js");
|
|
|
281
286
|
const expectedResult = [{ hash: 'tx-hash' }];
|
|
282
287
|
const { from, to } = params;
|
|
283
288
|
const result = await (0, transfer_js_1.transfer)(client, params);
|
|
284
|
-
(0, vitest_1.expect)(client.getContract).toHaveBeenCalledWith({
|
|
289
|
+
(0, vitest_1.expect)(client.getContract).toHaveBeenCalledWith({
|
|
290
|
+
address: params.token,
|
|
291
|
+
chain: client.chain,
|
|
292
|
+
});
|
|
285
293
|
(0, vitest_1.expect)(client.estimateTransferFee).toHaveBeenCalledWith({
|
|
286
294
|
sourceAddress: from.address,
|
|
287
295
|
destinationAddress: to.address,
|
|
@@ -442,5 +450,45 @@ const transfer_js_1 = require("./transfer.js");
|
|
|
442
450
|
});
|
|
443
451
|
(0, vitest_1.expect)(client.transfer).not.toHaveBeenCalled();
|
|
444
452
|
});
|
|
453
|
+
(0, vitest_1.it)('should throw UnsupportedChainError for unsupported chain', async () => {
|
|
454
|
+
const chain = { id: -1 };
|
|
455
|
+
await (0, vitest_1.expect)((0, transfer_js_1.transfer)(client, {
|
|
456
|
+
from: { address: '0x123' },
|
|
457
|
+
to: { address: '0x321' },
|
|
458
|
+
amount: 1000000n,
|
|
459
|
+
gas: 111n,
|
|
460
|
+
chain,
|
|
461
|
+
})).rejects.toThrow(UnsupportedChainError_js_1.UnsupportedChainError);
|
|
462
|
+
const params = {
|
|
463
|
+
client,
|
|
464
|
+
request: {
|
|
465
|
+
from: { address: '0x123' },
|
|
466
|
+
to: { address: '0x321' },
|
|
467
|
+
amount: 1n,
|
|
468
|
+
chain,
|
|
469
|
+
},
|
|
470
|
+
};
|
|
471
|
+
await (0, vitest_1.expect)((0, transfer_js_1.HIGH)(params)).rejects.toThrow(UnsupportedChainError_js_1.UnsupportedChainError);
|
|
472
|
+
await (0, vitest_1.expect)((0, transfer_js_1.MEDIUM)(params)).rejects.toThrow(UnsupportedChainError_js_1.UnsupportedChainError);
|
|
473
|
+
await (0, vitest_1.expect)((0, transfer_js_1.LOW)(params)).rejects.toThrow(UnsupportedChainError_js_1.UnsupportedChainError);
|
|
474
|
+
});
|
|
475
|
+
(0, vitest_1.it)('should transfer using transferViaCCTP', async () => {
|
|
476
|
+
const params = {
|
|
477
|
+
from: { address: '0x123', chain: index_js_1.MATIC_AMOY },
|
|
478
|
+
to: { address: '0x321', chain: index_js_1.ETH_SEPOLIA },
|
|
479
|
+
amount: '1',
|
|
480
|
+
token: index_js_1.MATIC_AMOY.contracts.USDC.address,
|
|
481
|
+
};
|
|
482
|
+
const expectedResult = [{ hash: 'tx-hash' }];
|
|
483
|
+
client.transferViaCCTP.mockResolvedValue('tx-hash');
|
|
484
|
+
const result = await (0, transfer_js_1.transfer)(client, params);
|
|
485
|
+
(0, vitest_1.expect)(client.transferViaCCTP).toHaveBeenCalledWith({
|
|
486
|
+
from: params.from,
|
|
487
|
+
to: params.to,
|
|
488
|
+
amount: 1000000n,
|
|
489
|
+
token: { address: index_js_1.MATIC_AMOY.contracts.USDC.address },
|
|
490
|
+
});
|
|
491
|
+
(0, vitest_1.expect)(result).toEqual(expectedResult);
|
|
492
|
+
});
|
|
445
493
|
});
|
|
446
494
|
//# sourceMappingURL=transfer.test.js.map
|