@cryptorubic/web3 0.0.34 → 0.0.37-alpha-1212.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/package.json +42 -15
- package/src/index.d.ts +130 -19
- package/src/index.js +130 -17
- package/src/lib/adapter/adapters/adapter-bitcoin/bitcoin-adapter.d.ts +40 -0
- package/src/lib/adapter/adapters/adapter-bitcoin/bitcoin-adapter.js +177 -0
- package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-send-tx-params.d.ts +5 -0
- package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-send-tx-params.js +2 -0
- package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-psbt-encoded-config.d.ts +5 -0
- package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-psbt-encoded-config.js +2 -0
- package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-trade-types.d.ts +7 -0
- package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-trade-types.js +2 -0
- package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-transfer-encoded-config.d.ts +6 -0
- package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-transfer-encoded-config.js +2 -0
- package/src/lib/adapter/adapters/adapter-bitcoin/signer/bitcoin-adapter-signer.d.ts +17 -0
- package/src/lib/adapter/adapters/adapter-bitcoin/signer/bitcoin-adapter-signer.js +131 -0
- package/src/lib/adapter/adapters/adapter-evm/constants/proxy-hash-errors.d.ts +4 -0
- package/src/lib/adapter/adapters/adapter-evm/constants/proxy-hash-errors.js +705 -0
- package/src/lib/adapter/adapters/adapter-evm/evm-adapter.d.ts +120 -0
- package/src/lib/adapter/adapters/adapter-evm/evm-adapter.js +498 -0
- package/src/lib/adapter/adapters/adapter-evm/models/evm-send-tx-params.d.ts +38 -0
- package/src/lib/adapter/adapters/adapter-evm/models/evm-send-tx-params.js +2 -0
- package/src/lib/adapter/adapters/adapter-evm/signer/evm-adapter-signer.d.ts +53 -0
- package/src/lib/adapter/adapters/adapter-evm/signer/evm-adapter-signer.js +263 -0
- package/src/lib/adapter/adapters/adapter-evm/utils/parse-evm-error.d.ts +12 -0
- package/src/lib/adapter/adapters/adapter-evm/utils/parse-evm-error.js +70 -0
- package/src/lib/adapter/adapters/adapter-solana/models/solana-send-tx-params.d.ts +16 -0
- package/src/lib/adapter/adapters/adapter-solana/models/solana-send-tx-params.js +2 -0
- package/src/lib/adapter/adapters/adapter-solana/services/solana-tokens-service.d.ts +22 -0
- package/src/lib/adapter/adapters/adapter-solana/services/solana-tokens-service.js +138 -0
- package/src/lib/adapter/adapters/adapter-solana/signer/solana-adapter-signer.d.ts +17 -0
- package/src/lib/adapter/adapters/adapter-solana/signer/solana-adapter-signer.js +87 -0
- package/src/lib/adapter/adapters/adapter-solana/solana-adapter.d.ts +49 -0
- package/src/lib/adapter/adapters/adapter-solana/solana-adapter.js +231 -0
- package/src/lib/adapter/adapters/adapter-stellar/constants/fake-stellar-wallet.d.ts +1 -0
- package/src/lib/adapter/adapters/adapter-stellar/constants/fake-stellar-wallet.js +4 -0
- package/src/lib/adapter/adapters/adapter-stellar/models/stellar-client.d.ts +2 -0
- package/src/lib/adapter/adapters/adapter-stellar/models/stellar-client.js +2 -0
- package/src/lib/adapter/adapters/adapter-stellar/models/stellar-rpc-provider.d.ts +6 -0
- package/src/lib/adapter/adapters/adapter-stellar/models/stellar-rpc-provider.js +2 -0
- package/src/lib/adapter/adapters/adapter-stellar/models/stellar-send-tx-params.d.ts +8 -0
- package/src/lib/adapter/adapters/adapter-stellar/models/stellar-send-tx-params.js +2 -0
- package/src/lib/adapter/adapters/adapter-stellar/models/stellar-wallet.d.ts +87 -0
- package/src/lib/adapter/adapters/adapter-stellar/models/stellar-wallet.js +2 -0
- package/src/lib/adapter/adapters/adapter-stellar/signer/stellar-adapter-signer.d.ts +18 -0
- package/src/lib/adapter/adapters/adapter-stellar/signer/stellar-adapter-signer.js +75 -0
- package/src/lib/adapter/adapters/adapter-stellar/stellar-adapter.d.ts +54 -0
- package/src/lib/adapter/adapters/adapter-stellar/stellar-adapter.js +253 -0
- package/src/lib/adapter/adapters/adapter-sui/models/sui-send-tx-params.d.ts +8 -0
- package/src/lib/adapter/adapters/adapter-sui/models/sui-send-tx-params.js +2 -0
- package/src/lib/adapter/adapters/adapter-sui/signer/sui-adapter-signer.d.ts +17 -0
- package/src/lib/adapter/adapters/adapter-sui/signer/sui-adapter-signer.js +55 -0
- package/src/lib/adapter/adapters/adapter-sui/sui-adapter.d.ts +32 -0
- package/src/lib/adapter/adapters/adapter-sui/sui-adapter.js +111 -0
- package/src/lib/adapter/adapters/adapter-ton/models/ton-send-tx-params.d.ts +26 -0
- package/src/lib/adapter/adapters/adapter-ton/models/ton-send-tx-params.js +2 -0
- package/src/lib/adapter/adapters/{utils → adapter-ton/services}/ton-api.service.d.ts +8 -7
- package/src/lib/adapter/adapters/{utils → adapter-ton/services}/ton-api.service.js +39 -56
- package/src/lib/adapter/adapters/adapter-ton/signer/ton-adapter-signer.d.ts +43 -0
- package/src/lib/adapter/adapters/adapter-ton/signer/ton-adapter-signer.js +166 -0
- package/src/lib/adapter/adapters/adapter-ton/ton-adapter.d.ts +32 -0
- package/src/lib/adapter/adapters/adapter-ton/ton-adapter.js +104 -0
- package/src/lib/adapter/adapters/adapter-tron/models/tron-send-tx-params.d.ts +13 -0
- package/src/lib/adapter/adapters/adapter-tron/models/tron-send-tx-params.js +2 -0
- package/src/lib/adapter/adapters/adapter-tron/models/tron-transfer-tx-params.d.ts +7 -0
- package/src/lib/adapter/adapters/adapter-tron/models/tron-transfer-tx-params.js +2 -0
- package/src/lib/adapter/adapters/adapter-tron/models/tron-web-provider.d.ts +4 -0
- package/src/lib/adapter/adapters/adapter-tron/models/tron-web-provider.js +2 -0
- package/src/lib/adapter/adapters/adapter-tron/signer/tron-adapter-signer.d.ts +19 -0
- package/src/lib/adapter/adapters/adapter-tron/signer/tron-adapter-signer.js +81 -0
- package/src/lib/adapter/adapters/adapter-tron/tron-adapter.d.ts +57 -0
- package/src/lib/adapter/adapters/{tron-adapter.js → adapter-tron/tron-adapter.js} +145 -70
- package/src/lib/adapter/adapters/adapter-tron/utils/parse-tron-error.d.ts +2 -0
- package/src/lib/adapter/adapters/adapter-tron/utils/parse-tron-error.js +20 -0
- package/src/lib/adapter/adapters/common/abstract-adapter.d.ts +84 -0
- package/src/lib/adapter/adapters/common/abstract-adapter.js +82 -0
- package/src/lib/adapter/adapters/common/signer/abstract-adapter-signer.d.ts +22 -0
- package/src/lib/adapter/adapters/common/signer/abstract-adapter-signer.js +42 -0
- package/src/lib/adapter/adapters/constants/possible-errors.d.ts +1 -0
- package/src/lib/adapter/adapters/constants/possible-errors.js +14 -0
- package/src/lib/adapter/adapters/constants/tron-multicall-abi.d.ts +1 -1
- package/src/lib/adapter/adapters/constants/uni-v3-permit-abi.d.ts +2 -0
- package/src/lib/adapter/adapters/constants/uni-v3-permit-abi.js +72 -0
- package/src/lib/adapter/adapters/models/approve-adapter.d.ts +20 -6
- package/src/lib/adapter/adapters/models/approve-adapter.js +4 -0
- package/src/lib/adapter/adapters/models/basic-transaction-options.d.ts +7 -0
- package/src/lib/adapter/adapters/models/basic-transaction-options.js +2 -0
- package/src/lib/adapter/adapters/models/bitcoin-user-address-info.d.ts +53 -0
- package/src/lib/adapter/adapters/models/bitcoin-user-address-info.js +2 -0
- package/src/lib/adapter/adapters/models/btc-wallet-provider.d.ts +10 -0
- package/src/lib/adapter/adapters/models/btc-wallet-provider.js +2 -0
- package/src/lib/adapter/adapters/models/evm-adapter-options.d.ts +1 -1
- package/src/lib/adapter/adapters/models/evm-web3-public-models/batch-call.d.ts +5 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/batch-call.js +2 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-call.d.ts +4 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-call.js +2 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-multicall-response.d.ts +4 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-multicall-response.js +2 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/gas-price-viem.d.ts +18 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/gas-price-viem.js +2 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/gas-price.d.ts +22 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/gas-price.js +2 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/permit2-contract-types.d.ts +10 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/permit2-contract-types.js +2 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/rpc-response.d.ts +5 -0
- package/src/lib/adapter/adapters/models/evm-web3-public-models/rpc-response.js +2 -0
- package/src/lib/adapter/adapters/models/old-features-models/contract-params.d.ts +23 -0
- package/src/lib/adapter/adapters/models/old-features-models/contract-params.js +2 -0
- package/src/lib/adapter/adapters/models/old-features-models/encode-transaction-options.d.ts +32 -0
- package/src/lib/adapter/adapters/models/old-features-models/encode-transaction-options.js +2 -0
- package/src/lib/adapter/adapters/models/old-features-models/is-deflation-token.d.ts +6 -0
- package/src/lib/adapter/adapters/models/old-features-models/is-deflation-token.js +2 -0
- package/src/lib/adapter/adapters/models/old-features-models/non-evm-chain-address-correct-response.d.ts +5 -0
- package/src/lib/adapter/adapters/models/old-features-models/non-evm-chain-address-correct-response.js +2 -0
- package/src/lib/adapter/adapters/models/old-features-models/swap-transaction-options.d.ts +65 -0
- package/src/lib/adapter/adapters/models/old-features-models/swap-transaction-options.js +2 -0
- package/src/lib/adapter/adapters/models/permit2-contract-types.d.ts +1 -0
- package/src/lib/adapter/adapters/models/permit2-contract-types.js +2 -0
- package/src/lib/adapter/adapters/models/solana-web3-types.d.ts +60 -0
- package/src/lib/adapter/adapters/models/solana-web3-types.js +2 -0
- package/src/lib/adapter/adapters/models/status-manager-models/tx-status-data.d.ts +8 -0
- package/src/lib/adapter/adapters/models/status-manager-models/tx-status-data.js +2 -0
- package/src/lib/adapter/adapters/models/token-models.d.ts +1 -0
- package/src/lib/adapter/adapters/models/token-models.js +2 -0
- package/src/lib/adapter/adapters/models/ton-adapter-config.d.ts +2 -2
- package/src/lib/adapter/adapters/models/ton-api-config.d.ts +1 -1
- package/src/lib/adapter/adapters/models/tonapi-models.d.ts +2 -2
- package/src/lib/adapter/adapters/models/web3-public-models/contract-multicall-response.d.ts +5 -0
- package/src/lib/adapter/adapters/models/web3-public-models/contract-multicall-response.js +2 -0
- package/src/lib/adapter/adapters/models/web3-public-models/method-data.d.ts +4 -0
- package/src/lib/adapter/adapters/models/web3-public-models/method-data.js +2 -0
- package/src/lib/adapter/adapters/models/web3-public-models/supported-token-field.d.ts +1 -0
- package/src/lib/adapter/adapters/models/web3-public-models/supported-token-field.js +2 -0
- package/src/lib/adapter/adapters/models/web3-public-models/tx-status.d.ts +13 -0
- package/src/lib/adapter/adapters/models/web3-public-models/tx-status.js +15 -0
- package/src/lib/adapter/adapters/utils/errors.d.ts +2 -0
- package/src/lib/adapter/adapters/utils/errors.js +10 -0
- package/src/lib/adapter/adapters/utils/options.d.ts +10 -0
- package/src/lib/adapter/adapters/utils/options.js +59 -0
- package/src/lib/adapter/adapters/utils/timeout.d.ts +1 -0
- package/src/lib/adapter/adapters/utils/timeout.js +15 -0
- package/src/lib/adapter/adapters/utils/waitFor.d.ts +1 -0
- package/src/lib/adapter/adapters/utils/waitFor.js +6 -0
- package/src/lib/adapter/blockchain-adapter-factory.service.d.ts +20 -10
- package/src/lib/adapter/blockchain-adapter-factory.service.js +58 -53
- package/src/lib/adapter/constants/chain-configs/chain-configs.d.ts +1 -1
- package/src/lib/adapter/constants/chain-configs/chain-configs.js +603 -138
- package/src/lib/adapter/constants/models/env-type.d.ts +1 -0
- package/src/lib/adapter/constants/models/env-type.js +2 -0
- package/src/lib/adapter/constants/models/solana-web3.d.ts +1 -1
- package/src/lib/adapter/constants/models/wallet-provider.d.ts +9 -3
- package/src/lib/adapter/constants/rubic-api-link-mapping.d.ts +2 -0
- package/src/lib/adapter/constants/rubic-api-link-mapping.js +16 -0
- package/src/lib/adapter/constants/viem-blockchain-mapping.d.ts +1 -1
- package/src/lib/adapter/constants/viem-blockchain-mapping.js +16 -7
- package/src/lib/adapter/models/create-factory-params.d.ts +24 -0
- package/src/lib/adapter/models/create-factory-params.js +2 -0
- package/src/lib/errors/blockchain/deflation-token.error.d.ts +11 -0
- package/src/lib/errors/blockchain/deflation-token.error.js +16 -0
- package/src/lib/errors/blockchain/healthcheck.error.d.ts +8 -0
- package/src/lib/errors/blockchain/healthcheck.error.js +15 -0
- package/src/lib/errors/blockchain/inactive-account.error.d.ts +4 -0
- package/src/lib/errors/blockchain/inactive-account.error.js +11 -0
- package/src/lib/errors/blockchain/invalid-address.error.d.ts +8 -0
- package/src/lib/errors/blockchain/invalid-address.error.js +15 -0
- package/src/lib/errors/blockchain/low-gas.error.d.ts +7 -0
- package/src/lib/errors/blockchain/low-gas.error.js +14 -0
- package/src/lib/errors/blockchain/transaction-reverted.error.d.ts +7 -0
- package/src/lib/errors/blockchain/transaction-reverted.error.js +14 -0
- package/src/lib/errors/blockchain/tron-insufficient-native-balance.d.ts +7 -0
- package/src/lib/errors/blockchain/tron-insufficient-native-balance.js +14 -0
- package/src/lib/errors/blockchain/tron-transaction-expired.d.ts +7 -0
- package/src/lib/errors/blockchain/tron-transaction-expired.js +14 -0
- package/src/lib/errors/blockchain/user-reject.error.d.ts +7 -0
- package/src/lib/errors/blockchain/user-reject.error.js +14 -0
- package/src/lib/errors/blockchain/wrong-from-address.error.d.ts +7 -0
- package/src/lib/errors/blockchain/wrong-from-address.error.js +14 -0
- package/src/lib/errors/blockchain/wrong-receiver-address.error.d.ts +7 -0
- package/src/lib/errors/blockchain/wrong-receiver-address.error.js +14 -0
- package/src/lib/errors/common/timeout.error.d.ts +4 -0
- package/src/lib/errors/common/timeout.error.js +12 -0
- package/src/lib/errors/common/tx-reverted-in-chain.error.d.ts +4 -0
- package/src/lib/errors/common/tx-reverted-in-chain.error.js +11 -0
- package/src/lib/errors/cross-chain/cross-chain-is-unavailable.error.d.ts +7 -0
- package/src/lib/errors/cross-chain/cross-chain-is-unavailable.error.js +14 -0
- package/src/lib/errors/cross-chain/insufficient-funds-gas-price-value.error.d.ts +7 -0
- package/src/lib/errors/cross-chain/insufficient-funds-gas-price-value.error.js +14 -0
- package/src/lib/errors/cross-chain/low-to-slippage.error.d.ts +6 -0
- package/src/lib/errors/cross-chain/low-to-slippage.error.js +10 -0
- package/src/lib/errors/cross-chain/max-gas-price-overflow.error.d.ts +8 -0
- package/src/lib/errors/cross-chain/max-gas-price-overflow.error.js +15 -0
- package/src/lib/errors/cross-chain/too-low-amount.error.d.ts +7 -0
- package/src/lib/errors/cross-chain/too-low-amount.error.js +14 -0
- package/src/lib/errors/cross-chain/unsupported-receiver-address.error.d.ts +4 -0
- package/src/lib/errors/cross-chain/unsupported-receiver-address.error.js +11 -0
- package/src/lib/errors/cross-chain/updated-rates-error.d.ts +10 -0
- package/src/lib/errors/cross-chain/updated-rates-error.js +17 -0
- package/src/lib/errors/models/rubic-api-error.d.ts +21 -0
- package/src/lib/errors/models/rubic-api-error.js +2 -0
- package/src/lib/errors/on-chain/on-chain-is-unavailable.error.d.ts +7 -0
- package/src/lib/errors/on-chain/on-chain-is-unavailable.error.js +14 -0
- package/src/lib/errors/proxy/unapproved-contract-error.d.ts +8 -0
- package/src/lib/errors/proxy/unapproved-contract-error.js +15 -0
- package/src/lib/errors/proxy/unapproved-method-error.d.ts +8 -0
- package/src/lib/errors/proxy/unapproved-method-error.js +15 -0
- package/src/lib/errors/proxy/unlisted-error.d.ts +9 -0
- package/src/lib/errors/proxy/unlisted-error.js +16 -0
- package/src/lib/errors/rubic-sdk.error.d.ts +6 -0
- package/src/lib/errors/rubic-sdk.error.js +13 -0
- package/src/lib/errors/swap/bridgers-pair-is-unavailable.error.d.ts +7 -0
- package/src/lib/errors/swap/bridgers-pair-is-unavailable.error.js +14 -0
- package/src/lib/errors/swap/failed-to-check-for-transaction-receipt.error.d.ts +8 -0
- package/src/lib/errors/swap/failed-to-check-for-transaction-receipt.error.js +15 -0
- package/src/lib/errors/swap/insufficient-funds-oneinch.error.d.ts +9 -0
- package/src/lib/errors/swap/insufficient-funds-oneinch.error.js +15 -0
- package/src/lib/errors/swap/insufficient-funds.error.d.ts +11 -0
- package/src/lib/errors/swap/insufficient-funds.error.js +18 -0
- package/src/lib/errors/swap/insufficient-liquidity.error.d.ts +7 -0
- package/src/lib/errors/swap/insufficient-liquidity.error.js +14 -0
- package/src/lib/errors/swap/lifi-pair-is-unavailable.error.d.ts +7 -0
- package/src/lib/errors/swap/lifi-pair-is-unavailable.error.js +14 -0
- package/src/lib/errors/swap/low-slippage-deflationary-token.error.d.ts +7 -0
- package/src/lib/errors/swap/low-slippage-deflationary-token.error.js +14 -0
- package/src/lib/errors/swap/low-slippage.error.d.ts +8 -0
- package/src/lib/errors/swap/low-slippage.error.js +15 -0
- package/src/lib/errors/swap/max-amount.error.d.ts +7 -0
- package/src/lib/errors/swap/max-amount.error.js +14 -0
- package/src/lib/errors/swap/max-decimals.error.d.ts +5 -0
- package/src/lib/errors/swap/max-decimals.error.js +12 -0
- package/src/lib/errors/swap/min-amount.error.d.ts +7 -0
- package/src/lib/errors/swap/min-amount.error.js +14 -0
- package/src/lib/errors/swap/no-linked-account-erros.d.ts +4 -0
- package/src/lib/errors/swap/no-linked-account-erros.js +11 -0
- package/src/lib/errors/swap/not-supported-blockchain.d.ts +8 -0
- package/src/lib/errors/swap/not-supported-blockchain.js +15 -0
- package/src/lib/errors/swap/not-supported-region.d.ts +7 -0
- package/src/lib/errors/swap/not-supported-region.js +14 -0
- package/src/lib/errors/swap/not-supported-tokens.error.d.ts +7 -0
- package/src/lib/errors/swap/not-supported-tokens.error.js +14 -0
- package/src/lib/errors/swap/not-whitelisted-provider.error.d.ts +10 -0
- package/src/lib/errors/swap/not-whitelisted-provider.error.js +17 -0
- package/src/lib/errors/swap/simulation-failed.error.d.ts +6 -0
- package/src/lib/errors/swap/simulation-failed.error.js +12 -0
- package/src/lib/errors/swap/swap-error-on-provider-side.d.ts +7 -0
- package/src/lib/errors/swap/swap-error-on-provider-side.js +14 -0
- package/src/lib/errors/swap/swap-request.error.d.ts +7 -0
- package/src/lib/errors/swap/swap-request.error.js +14 -0
- package/src/lib/errors/swap/trade-expired.error.d.ts +4 -0
- package/src/lib/errors/swap/trade-expired.error.js +11 -0
- package/src/lib/errors/swap/unnecessary-approve.error.d.ts +7 -0
- package/src/lib/errors/swap/unnecessary-approve.error.js +14 -0
- package/src/lib/errors/swap/wallet-not-connected.error.d.ts +8 -0
- package/src/lib/errors/swap/wallet-not-connected.error.js +15 -0
- package/src/lib/errors/swap/wrong-network.error.d.ts +10 -0
- package/src/lib/errors/swap/wrong-network.error.js +16 -0
- package/src/lib/utils/constants/changenow-api-blockchain.d.ts +1 -2
- package/src/lib/utils/constants/changenow-api-blockchain.js +1 -1
- package/src/lib/utils/constants/web3-pure-store.d.ts +2 -2
- package/src/lib/utils/constants/web3-pure-store.js +20 -18
- package/src/lib/utils/models/contract-multicall-response.d.ts +1 -1
- package/src/lib/utils/models/evm-transaction-config.d.ts +2 -0
- package/src/lib/utils/models/primitive-types.d.ts +1 -1
- package/src/lib/utils/models/stellar-transaction-config.d.ts +3 -0
- package/src/lib/utils/models/stellar-transaction-config.js +2 -0
- package/src/lib/utils/models/tron-transaction-config.d.ts +1 -1
- package/src/lib/utils/web3-pure.d.ts +2 -2
- package/src/lib/utils/web3-pure.js +6 -7
- package/src/lib/utils/web3-types/bitcoin-web3-pure.d.ts +1 -1
- package/src/lib/utils/web3-types/common-web3-pure.js +0 -2
- package/src/lib/utils/web3-types/evm-web3-pure.d.ts +1 -1
- package/src/lib/utils/web3-types/icp-web3-pure.d.ts +1 -1
- package/src/lib/utils/web3-types/near-web3-pure.d.ts +6 -0
- package/src/lib/utils/web3-types/near-web3-pure.js +24 -0
- package/src/lib/utils/web3-types/solana-web3-pure.d.ts +2 -1
- package/src/lib/utils/web3-types/solana-web3-pure.js +11 -1
- package/src/lib/utils/web3-types/stellar-web3-pure.d.ts +5 -0
- package/src/lib/utils/web3-types/stellar-web3-pure.js +30 -0
- package/src/lib/utils/web3-types/sui-web3-pure.d.ts +8 -0
- package/src/lib/utils/web3-types/sui-web3-pure.js +27 -0
- package/src/lib/utils/web3-types/ton-web3-pure.d.ts +2 -1
- package/src/lib/utils/web3-types/ton-web3-pure.js +6 -0
- package/src/lib/utils/web3-types/tron-web3-pure.d.ts +8 -6
- package/src/lib/utils/web3-types/tron-web3-pure.js +18 -4
- package/src/lib/utils/web3-types/zcash-web3-pure.d.ts +5 -0
- package/src/lib/utils/web3-types/zcash-web3-pure.js +17 -0
- package/src/lib/adapter/adapters/abstract-adapter.d.ts +0 -19
- package/src/lib/adapter/adapters/abstract-adapter.js +0 -49
- package/src/lib/adapter/adapters/evm-adapter.d.ts +0 -34
- package/src/lib/adapter/adapters/evm-adapter.js +0 -247
- package/src/lib/adapter/adapters/solana-adapter.d.ts +0 -15
- package/src/lib/adapter/adapters/solana-adapter.js +0 -59
- package/src/lib/adapter/adapters/ton-adapter.d.ts +0 -22
- package/src/lib/adapter/adapters/ton-adapter.js +0 -100
- package/src/lib/adapter/adapters/tron-adapter.d.ts +0 -36
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SwapRequestError = void 0;
|
|
4
|
+
const rubic_sdk_error_1 = require("../rubic-sdk.error");
|
|
5
|
+
/**
|
|
6
|
+
* Thrown, when `swap` request to API is failed.
|
|
7
|
+
*/
|
|
8
|
+
class SwapRequestError extends rubic_sdk_error_1.RubicSdkError {
|
|
9
|
+
constructor() {
|
|
10
|
+
super("Unfortunately, the provider couldn't generate the transaction. Please try again later.");
|
|
11
|
+
Object.setPrototypeOf(this, SwapRequestError.prototype);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.SwapRequestError = SwapRequestError;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TradeExpiredError = void 0;
|
|
4
|
+
const rubic_sdk_error_1 = require("../rubic-sdk.error");
|
|
5
|
+
class TradeExpiredError extends rubic_sdk_error_1.RubicSdkError {
|
|
6
|
+
constructor() {
|
|
7
|
+
super();
|
|
8
|
+
Object.setPrototypeOf(this, TradeExpiredError.prototype);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.TradeExpiredError = TradeExpiredError;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UnnecessaryApproveError = void 0;
|
|
4
|
+
const rubic_sdk_error_1 = require("../rubic-sdk.error");
|
|
5
|
+
/**
|
|
6
|
+
* Thrown, when approve method is called, but there is enough allowance.
|
|
7
|
+
*/
|
|
8
|
+
class UnnecessaryApproveError extends rubic_sdk_error_1.RubicSdkError {
|
|
9
|
+
constructor() {
|
|
10
|
+
super();
|
|
11
|
+
Object.setPrototypeOf(this, UnnecessaryApproveError.prototype);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.UnnecessaryApproveError = UnnecessaryApproveError;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WalletNotConnectedError = void 0;
|
|
4
|
+
const rubic_sdk_error_1 = require("../rubic-sdk.error");
|
|
5
|
+
/**
|
|
6
|
+
* Thrown, when method, which requires connected wallet, is called without
|
|
7
|
+
* wallet being connected.
|
|
8
|
+
*/
|
|
9
|
+
class WalletNotConnectedError extends rubic_sdk_error_1.RubicSdkError {
|
|
10
|
+
constructor() {
|
|
11
|
+
super();
|
|
12
|
+
Object.setPrototypeOf(this, WalletNotConnectedError.prototype);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.WalletNotConnectedError = WalletNotConnectedError;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { BlockchainName } from '@cryptorubic/core';
|
|
2
|
+
import { RubicSdkError } from '../rubic-sdk.error';
|
|
3
|
+
/**
|
|
4
|
+
* Thrown during swap, if user's selected network does not match source blockchain
|
|
5
|
+
* in swap parameters.
|
|
6
|
+
*/
|
|
7
|
+
export declare class WrongNetworkError extends RubicSdkError {
|
|
8
|
+
readonly requiredBlockchain: BlockchainName;
|
|
9
|
+
constructor(requiredBlockchain: BlockchainName);
|
|
10
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WrongNetworkError = void 0;
|
|
4
|
+
const rubic_sdk_error_1 = require("../rubic-sdk.error");
|
|
5
|
+
/**
|
|
6
|
+
* Thrown during swap, if user's selected network does not match source blockchain
|
|
7
|
+
* in swap parameters.
|
|
8
|
+
*/
|
|
9
|
+
class WrongNetworkError extends rubic_sdk_error_1.RubicSdkError {
|
|
10
|
+
constructor(requiredBlockchain) {
|
|
11
|
+
super();
|
|
12
|
+
this.requiredBlockchain = requiredBlockchain;
|
|
13
|
+
Object.setPrototypeOf(this, WrongNetworkError.prototype);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.WrongNetworkError = WrongNetworkError;
|
|
@@ -7,7 +7,6 @@ export declare const changeNowEvmSupportedBlockchain: {
|
|
|
7
7
|
AVALANCHE: string;
|
|
8
8
|
CELO: string;
|
|
9
9
|
ETHEREUM_CLASSIC: string;
|
|
10
|
-
ETHW: string;
|
|
11
10
|
FANTOM: string;
|
|
12
11
|
IOTEX: string;
|
|
13
12
|
KLAYTN: string;
|
|
@@ -23,6 +22,7 @@ export declare const changeNowEvmSupportedBlockchain: {
|
|
|
23
22
|
export type ChangenowEvmCrossChainSupportedBlockchain = keyof typeof changeNowEvmSupportedBlockchain;
|
|
24
23
|
export declare const changenowApiBlockchain: {
|
|
25
24
|
THETA: string;
|
|
25
|
+
SUI: string;
|
|
26
26
|
FLARE: string;
|
|
27
27
|
FILECOIN: string;
|
|
28
28
|
EOS: string;
|
|
@@ -107,7 +107,6 @@ export declare const changenowApiBlockchain: {
|
|
|
107
107
|
AVALANCHE: string;
|
|
108
108
|
CELO: string;
|
|
109
109
|
ETHEREUM_CLASSIC: string;
|
|
110
|
-
ETHW: string;
|
|
111
110
|
FANTOM: string;
|
|
112
111
|
IOTEX: string;
|
|
113
112
|
KLAYTN: string;
|
|
@@ -11,7 +11,6 @@ exports.changeNowEvmSupportedBlockchain = {
|
|
|
11
11
|
[core_1.BLOCKCHAIN_NAME.AVALANCHE]: 'avaxc',
|
|
12
12
|
[core_1.BLOCKCHAIN_NAME.CELO]: 'celo',
|
|
13
13
|
[core_1.BLOCKCHAIN_NAME.ETHEREUM_CLASSIC]: 'etc',
|
|
14
|
-
[core_1.BLOCKCHAIN_NAME.ETHEREUM_POW]: 'ethw',
|
|
15
14
|
[core_1.BLOCKCHAIN_NAME.FANTOM]: 'ftm',
|
|
16
15
|
[core_1.BLOCKCHAIN_NAME.IOTEX]: 'iotx',
|
|
17
16
|
[core_1.BLOCKCHAIN_NAME.KLAYTN]: 'klay',
|
|
@@ -29,6 +28,7 @@ exports.changenowApiBlockchain = {
|
|
|
29
28
|
...exports.changeNowEvmSupportedBlockchain,
|
|
30
29
|
// Non evm
|
|
31
30
|
[core_1.BLOCKCHAIN_NAME.THETA]: 'theta',
|
|
31
|
+
[core_1.BLOCKCHAIN_NAME.SUI]: 'sui',
|
|
32
32
|
[core_1.BLOCKCHAIN_NAME.FLARE]: 'flr',
|
|
33
33
|
[core_1.BLOCKCHAIN_NAME.FILECOIN]: 'fil',
|
|
34
34
|
[core_1.BLOCKCHAIN_NAME.EOS]: 'eos',
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { ChainType } from
|
|
2
|
-
import { CommonWeb3Pure } from
|
|
1
|
+
import { ChainType } from '@cryptorubic/core';
|
|
2
|
+
import { CommonWeb3Pure } from '../web3-types/common-web3-pure';
|
|
3
3
|
export declare const web3PureStore: Record<ChainType, CommonWeb3Pure>;
|
|
@@ -2,16 +2,21 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.web3PureStore = void 0;
|
|
4
4
|
const core_1 = require("@cryptorubic/core");
|
|
5
|
-
const evm_web3_pure_1 = require("../web3-types/evm-web3-pure");
|
|
6
|
-
const tron_web3_pure_1 = require("../web3-types/tron-web3-pure");
|
|
7
5
|
const bitcoin_web3_pure_1 = require("../web3-types/bitcoin-web3-pure");
|
|
8
|
-
const
|
|
6
|
+
const common_web3_pure_1 = require("../web3-types/common-web3-pure");
|
|
7
|
+
const evm_web3_pure_1 = require("../web3-types/evm-web3-pure");
|
|
9
8
|
const icp_web3_pure_1 = require("../web3-types/icp-web3-pure");
|
|
9
|
+
const near_web3_pure_1 = require("../web3-types/near-web3-pure");
|
|
10
10
|
const solana_web3_pure_1 = require("../web3-types/solana-web3-pure");
|
|
11
|
-
const
|
|
11
|
+
const sui_web3_pure_1 = require("../web3-types/sui-web3-pure");
|
|
12
12
|
const ton_web3_pure_1 = require("../web3-types/ton-web3-pure");
|
|
13
|
+
const tron_web3_pure_1 = require("../web3-types/tron-web3-pure");
|
|
14
|
+
const changenow_api_blockchain_1 = require("./changenow-api-blockchain");
|
|
15
|
+
const zcash_web3_pure_1 = require("../web3-types/zcash-web3-pure");
|
|
16
|
+
const stellar_web3_pure_1 = require("../web3-types/stellar-web3-pure");
|
|
13
17
|
exports.web3PureStore = {
|
|
14
18
|
[core_1.CHAIN_TYPE.EVM]: new evm_web3_pure_1.EvmWeb3Pure(),
|
|
19
|
+
[core_1.CHAIN_TYPE.SUI]: new sui_web3_pure_1.SuiWeb3Pure(),
|
|
15
20
|
[core_1.CHAIN_TYPE.TRON]: new tron_web3_pure_1.TronWeb3Pure(),
|
|
16
21
|
[core_1.CHAIN_TYPE.BITCOIN]: new bitcoin_web3_pure_1.BitcoinWeb3Pure(),
|
|
17
22
|
[core_1.CHAIN_TYPE.ICP]: new icp_web3_pure_1.IcpWeb3Pure(),
|
|
@@ -19,13 +24,18 @@ exports.web3PureStore = {
|
|
|
19
24
|
[core_1.CHAIN_TYPE.BITCOIN_DIAMOND]: new bitcoin_web3_pure_1.BitcoinWeb3Pure(),
|
|
20
25
|
[core_1.CHAIN_TYPE.BITCOIN_GOLD]: new bitcoin_web3_pure_1.BitcoinWeb3Pure(),
|
|
21
26
|
[core_1.CHAIN_TYPE.BSV]: new bitcoin_web3_pure_1.BitcoinWeb3Pure(),
|
|
27
|
+
[core_1.CHAIN_TYPE.NEAR]: new near_web3_pure_1.NearWeb3Pure(),
|
|
28
|
+
[core_1.CHAIN_TYPE.ZCASH]: new zcash_web3_pure_1.ZcashWeb3Pure(),
|
|
29
|
+
[core_1.CHAIN_TYPE.STELLAR]: new stellar_web3_pure_1.StellarWeb3Pure(),
|
|
22
30
|
// Common Web3
|
|
23
31
|
[core_1.CHAIN_TYPE.RIPPLE]: new common_web3_pure_1.CommonWeb3Pure({
|
|
24
32
|
cnApiKey: changenow_api_blockchain_1.changenowApiBlockchain.RIPPLE,
|
|
25
33
|
regex: /^r[1-9A-HJ-NP-Za-km-z]{25,34}$/
|
|
26
34
|
}),
|
|
27
35
|
[core_1.CHAIN_TYPE.CARDANO]: new common_web3_pure_1.CommonWeb3Pure({
|
|
28
|
-
|
|
36
|
+
/*
|
|
37
|
+
* cnApi returns invalid info
|
|
38
|
+
*/
|
|
29
39
|
regex: /^([1-9A-HJ-NP-Za-km-z]{59,104})|([0-9A-Za-z]{58,104})$/
|
|
30
40
|
}),
|
|
31
41
|
[core_1.CHAIN_TYPE.DOGECOIN]: new common_web3_pure_1.CommonWeb3Pure({
|
|
@@ -44,10 +54,6 @@ exports.web3PureStore = {
|
|
|
44
54
|
cnApiKey: changenow_api_blockchain_1.changenowApiBlockchain.MONERO,
|
|
45
55
|
regex: /^[48][a-zA-Z|\d]{94}([a-zA-Z|\d]{11})?$/
|
|
46
56
|
}),
|
|
47
|
-
[core_1.CHAIN_TYPE.NEAR]: new common_web3_pure_1.CommonWeb3Pure({
|
|
48
|
-
cnApiKey: changenow_api_blockchain_1.changenowApiBlockchain.NEAR,
|
|
49
|
-
regex: /(^[a-z0-9_-]{2,64}\.near$)|(^[0-9a-f]{64}$)/
|
|
50
|
-
}),
|
|
51
57
|
[core_1.CHAIN_TYPE.ALGORAND]: new common_web3_pure_1.CommonWeb3Pure({
|
|
52
58
|
cnApiKey: changenow_api_blockchain_1.changenowApiBlockchain.ALGORAND,
|
|
53
59
|
regex: /^[A-Z0-9]{58}/
|
|
@@ -129,10 +135,6 @@ exports.web3PureStore = {
|
|
|
129
135
|
cnApiKey: changenow_api_blockchain_1.changenowApiBlockchain.WAX,
|
|
130
136
|
regex: /^[a-z1-5.]{1,12}$/
|
|
131
137
|
}),
|
|
132
|
-
[core_1.CHAIN_TYPE.STELLAR]: new common_web3_pure_1.CommonWeb3Pure({
|
|
133
|
-
cnApiKey: changenow_api_blockchain_1.changenowApiBlockchain.STEEM,
|
|
134
|
-
regex: /^G[A-D]{1}[A-Z2-7]{54}$/
|
|
135
|
-
}),
|
|
136
138
|
[core_1.CHAIN_TYPE.XDC]: new common_web3_pure_1.CommonWeb3Pure({
|
|
137
139
|
cnApiKey: changenow_api_blockchain_1.changenowApiBlockchain.XDC,
|
|
138
140
|
regex: /^xdc[a-fA-F\d]{40}$/
|
|
@@ -214,6 +216,11 @@ exports.web3PureStore = {
|
|
|
214
216
|
// cnApiKey: changenowApiBlockchain.RIPPLE,
|
|
215
217
|
// regex: ?
|
|
216
218
|
}),
|
|
219
|
+
[core_1.CHAIN_TYPE.STARKNET]: new common_web3_pure_1.CommonWeb3Pure({
|
|
220
|
+
// @TODO
|
|
221
|
+
// cnApiKey: changenowApiBlockchain.RIPPLE,
|
|
222
|
+
// regex: ?
|
|
223
|
+
}),
|
|
217
224
|
[core_1.CHAIN_TYPE.IOST]: new common_web3_pure_1.CommonWeb3Pure({
|
|
218
225
|
// @TODO
|
|
219
226
|
// cnApiKey: changenowApiBlockchain.RIPPLE,
|
|
@@ -319,11 +326,6 @@ exports.web3PureStore = {
|
|
|
319
326
|
// cnApiKey: changenowApiBlockchain.RIPPLE,
|
|
320
327
|
// regex: ?
|
|
321
328
|
}),
|
|
322
|
-
[core_1.CHAIN_TYPE.ZCASH]: new common_web3_pure_1.CommonWeb3Pure({
|
|
323
|
-
// @TODO
|
|
324
|
-
// cnApiKey: changenowApiBlockchain.RIPPLE,
|
|
325
|
-
// regex: ?
|
|
326
|
-
}),
|
|
327
329
|
[core_1.CHAIN_TYPE.HORIZEN]: new common_web3_pure_1.CommonWeb3Pure({
|
|
328
330
|
// @TODO
|
|
329
331
|
// cnApiKey: changenowApiBlockchain.RIPPLE,
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ErrorInterface } from '@cryptorubic/core';
|
|
1
2
|
export interface EvmTransactionConfig {
|
|
2
3
|
to: string;
|
|
3
4
|
data: string;
|
|
@@ -6,4 +7,5 @@ export interface EvmTransactionConfig {
|
|
|
6
7
|
gasPrice?: string;
|
|
7
8
|
maxFeePerGas?: string;
|
|
8
9
|
maxPriorityFeePerGas?: string;
|
|
10
|
+
warnings?: ErrorInterface[];
|
|
9
11
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { BlockchainName, ChainType } from
|
|
2
|
-
import { CommonWeb3Pure } from
|
|
1
|
+
import { BlockchainName, ChainType } from '@cryptorubic/core';
|
|
2
|
+
import { CommonWeb3Pure } from './web3-types/common-web3-pure';
|
|
3
3
|
export declare class Web3Pure {
|
|
4
4
|
static getInstance(blockchainName: BlockchainName): CommonWeb3Pure;
|
|
5
5
|
static getInstance(chainType: ChainType): CommonWeb3Pure;
|
|
@@ -5,38 +5,37 @@ const core_1 = require("@cryptorubic/core");
|
|
|
5
5
|
const web3_pure_store_1 = require("./constants/web3-pure-store");
|
|
6
6
|
class Web3Pure {
|
|
7
7
|
static getInstance(chainTypeOrChain) {
|
|
8
|
-
const chainType = Object.values(core_1.CHAIN_TYPE).some(el => el === chainTypeOrChain)
|
|
8
|
+
const chainType = Object.values(core_1.CHAIN_TYPE).some((el) => el === chainTypeOrChain)
|
|
9
9
|
? chainTypeOrChain
|
|
10
10
|
: core_1.BlockchainsInfo.getChainType(chainTypeOrChain);
|
|
11
11
|
return web3_pure_store_1.web3PureStore[chainType];
|
|
12
12
|
}
|
|
13
13
|
static isNativeAddress(chainTypeOrChain, address) {
|
|
14
|
-
const chainType = Object.values(core_1.CHAIN_TYPE).some(el => el === chainTypeOrChain)
|
|
14
|
+
const chainType = Object.values(core_1.CHAIN_TYPE).some((el) => el === chainTypeOrChain)
|
|
15
15
|
? chainTypeOrChain
|
|
16
16
|
: core_1.BlockchainsInfo.getChainType(chainTypeOrChain);
|
|
17
17
|
return web3_pure_store_1.web3PureStore[chainType].isNativeAddress(address);
|
|
18
18
|
}
|
|
19
19
|
static isEmptyAddress(chainTypeOrChain, address) {
|
|
20
|
-
const chainType = Object.values(core_1.CHAIN_TYPE).some(el => el === chainTypeOrChain)
|
|
20
|
+
const chainType = Object.values(core_1.CHAIN_TYPE).some((el) => el === chainTypeOrChain)
|
|
21
21
|
? chainTypeOrChain
|
|
22
22
|
: core_1.BlockchainsInfo.getChainType(chainTypeOrChain);
|
|
23
23
|
return web3_pure_store_1.web3PureStore[chainType].isEmptyAddress(address);
|
|
24
24
|
}
|
|
25
25
|
static async isAddressCorrect(chainTypeOrChain, address) {
|
|
26
|
-
const chainType = Object.values(core_1.CHAIN_TYPE).some(el => el === chainTypeOrChain)
|
|
26
|
+
const chainType = Object.values(core_1.CHAIN_TYPE).some((el) => el === chainTypeOrChain)
|
|
27
27
|
? chainTypeOrChain
|
|
28
28
|
: core_1.BlockchainsInfo.getChainType(chainTypeOrChain);
|
|
29
29
|
return web3_pure_store_1.web3PureStore[chainType].isAddressCorrect(address);
|
|
30
30
|
}
|
|
31
|
-
;
|
|
32
31
|
static getNativeTokenAddress(chainTypeOrChain) {
|
|
33
|
-
const chainType = Object.values(core_1.CHAIN_TYPE).some(el => el === chainTypeOrChain)
|
|
32
|
+
const chainType = Object.values(core_1.CHAIN_TYPE).some((el) => el === chainTypeOrChain)
|
|
34
33
|
? chainTypeOrChain
|
|
35
34
|
: core_1.BlockchainsInfo.getChainType(chainTypeOrChain);
|
|
36
35
|
return web3_pure_store_1.web3PureStore[chainType].nativeTokenAddress;
|
|
37
36
|
}
|
|
38
37
|
static getEmptyTokenAddress(chainTypeOrChain) {
|
|
39
|
-
const chainType = Object.values(core_1.CHAIN_TYPE).some(el => el === chainTypeOrChain)
|
|
38
|
+
const chainType = Object.values(core_1.CHAIN_TYPE).some((el) => el === chainTypeOrChain)
|
|
40
39
|
? chainTypeOrChain
|
|
41
40
|
: core_1.BlockchainsInfo.getChainType(chainTypeOrChain);
|
|
42
41
|
return web3_pure_store_1.web3PureStore[chainType].emptyAddress;
|
|
@@ -30,7 +30,6 @@ class CommonWeb3Pure {
|
|
|
30
30
|
}
|
|
31
31
|
throw new Error(`Validation function is not implemented for ${this.constructor.name}`);
|
|
32
32
|
}
|
|
33
|
-
;
|
|
34
33
|
async checkCnValidity(address, chain, regEx) {
|
|
35
34
|
try {
|
|
36
35
|
const url = `https://api.changenow.io/v2/validate/address?currency=${chain}&address=${address}`;
|
|
@@ -41,6 +40,5 @@ class CommonWeb3Pure {
|
|
|
41
40
|
return regEx.test(address);
|
|
42
41
|
}
|
|
43
42
|
}
|
|
44
|
-
;
|
|
45
43
|
}
|
|
46
44
|
exports.CommonWeb3Pure = CommonWeb3Pure;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NearWeb3Pure = void 0;
|
|
4
|
+
const changenow_api_blockchain_1 = require("../constants/changenow-api-blockchain");
|
|
5
|
+
const common_web3_pure_1 = require("./common-web3-pure");
|
|
6
|
+
class NearWeb3Pure extends common_web3_pure_1.CommonWeb3Pure {
|
|
7
|
+
constructor() {
|
|
8
|
+
super({
|
|
9
|
+
cnApiKey: changenow_api_blockchain_1.changenowApiBlockchain.NEAR,
|
|
10
|
+
regex: /(^(?=.{2,64}$)([a-z0-9][a-z0-9\-_]*(?<![-_])\.)*[a-z0-9][a-z0-9\-_]*(?<![-_])(\.near)$)|(^[0-9a-f]{64}$)/
|
|
11
|
+
});
|
|
12
|
+
this.nativeTokenAddress = 'near';
|
|
13
|
+
}
|
|
14
|
+
async isAddressCorrect(address) {
|
|
15
|
+
if (this.isNativeAddress(address)) {
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
if (this.regEx) {
|
|
19
|
+
return this.regEx.test(address);
|
|
20
|
+
}
|
|
21
|
+
throw new Error(`Validation function is not implemented for ${this.constructor.name}`);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.NearWeb3Pure = NearWeb3Pure;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { CommonWeb3Pure } from
|
|
1
|
+
import { CommonWeb3Pure } from './common-web3-pure';
|
|
2
2
|
export declare class SolanaWeb3Pure extends CommonWeb3Pure {
|
|
3
3
|
readonly nativeTokenAddress = "So11111111111111111111111111111111111111111";
|
|
4
4
|
constructor();
|
|
5
|
+
isAddressCorrect(address: string): Promise<boolean>;
|
|
5
6
|
}
|
|
@@ -3,13 +3,23 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SolanaWeb3Pure = void 0;
|
|
4
4
|
const changenow_api_blockchain_1 = require("../constants/changenow-api-blockchain");
|
|
5
5
|
const common_web3_pure_1 = require("./common-web3-pure");
|
|
6
|
+
const core_1 = require("@cryptorubic/core");
|
|
6
7
|
class SolanaWeb3Pure extends common_web3_pure_1.CommonWeb3Pure {
|
|
7
8
|
constructor() {
|
|
8
9
|
super({
|
|
9
10
|
cnApiKey: changenow_api_blockchain_1.changenowApiBlockchain.SOLANA,
|
|
10
|
-
regex: /^[1-9A-HJ-NP-Za-km-z]{32,44}$/
|
|
11
|
+
regex: /^(?!.*([1-9A-HJ-NP-Za-km-z])\1{31,43}$)[1-9A-HJ-NP-Za-km-z]{32,44}$/
|
|
11
12
|
});
|
|
12
13
|
this.nativeTokenAddress = 'So11111111111111111111111111111111111111111';
|
|
13
14
|
}
|
|
15
|
+
async isAddressCorrect(address) {
|
|
16
|
+
if ((0, core_1.compareAddresses)(address, this.nativeTokenAddress)) {
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
if (this.regEx) {
|
|
20
|
+
return this.regEx.test(address);
|
|
21
|
+
}
|
|
22
|
+
throw new Error(`Validation function is not implemented for ${this.constructor.name}`);
|
|
23
|
+
}
|
|
14
24
|
}
|
|
15
25
|
exports.SolanaWeb3Pure = SolanaWeb3Pure;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StellarWeb3Pure = void 0;
|
|
4
|
+
const stellar_sdk_1 = require("@stellar/stellar-sdk");
|
|
5
|
+
const changenow_api_blockchain_1 = require("../constants/changenow-api-blockchain");
|
|
6
|
+
const common_web3_pure_1 = require("./common-web3-pure");
|
|
7
|
+
class StellarWeb3Pure extends common_web3_pure_1.CommonWeb3Pure {
|
|
8
|
+
constructor() {
|
|
9
|
+
super({
|
|
10
|
+
cnApiKey: changenow_api_blockchain_1.changenowApiBlockchain.STELLAR,
|
|
11
|
+
regex: /^G[A-Z2-7]{55}$/
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
async isAddressCorrect(address) {
|
|
15
|
+
try {
|
|
16
|
+
if (address.includes('-')) {
|
|
17
|
+
const [code, issuer] = address.split('-');
|
|
18
|
+
if (!code || !issuer)
|
|
19
|
+
return false;
|
|
20
|
+
new stellar_sdk_1.Asset(code, issuer);
|
|
21
|
+
return true;
|
|
22
|
+
}
|
|
23
|
+
return this.regEx.test(address);
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.StellarWeb3Pure = StellarWeb3Pure;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { CommonWeb3Pure } from './common-web3-pure';
|
|
2
|
+
export declare class SuiWeb3Pure extends CommonWeb3Pure {
|
|
3
|
+
readonly nativeTokenAddress = "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI";
|
|
4
|
+
readonly emptyAddress = "0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI";
|
|
5
|
+
static compareAddress(addressA: string, addressB: string): boolean;
|
|
6
|
+
isAddressCorrect(address: string): Promise<boolean>;
|
|
7
|
+
constructor();
|
|
8
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SuiWeb3Pure = void 0;
|
|
4
|
+
const common_web3_pure_1 = require("./common-web3-pure");
|
|
5
|
+
const core_1 = require("@cryptorubic/core");
|
|
6
|
+
const bignumber_js_1 = require("bignumber.js");
|
|
7
|
+
class SuiWeb3Pure extends common_web3_pure_1.CommonWeb3Pure {
|
|
8
|
+
static compareAddress(addressA, addressB) {
|
|
9
|
+
const pureAddressA = addressA.split(':')[0];
|
|
10
|
+
const pureAddressB = addressB.split(':')[0];
|
|
11
|
+
return (0, core_1.compareAddresses)(new bignumber_js_1.default(pureAddressA).toFixed(), new bignumber_js_1.default(pureAddressB).toFixed());
|
|
12
|
+
}
|
|
13
|
+
async isAddressCorrect(address) {
|
|
14
|
+
if (this.regEx) {
|
|
15
|
+
return this.regEx.test(address);
|
|
16
|
+
}
|
|
17
|
+
throw new Error(`Validation function is not implemented for ${this.constructor.name}`);
|
|
18
|
+
}
|
|
19
|
+
constructor() {
|
|
20
|
+
super({
|
|
21
|
+
regex: /(^0[xX][a-fA-F0-9]{0,64}::[a-zA-Z0-9_]*::[A-Z0-9_]*$)|(^0[xX][a-fA-F0-9]{64}$)/
|
|
22
|
+
});
|
|
23
|
+
this.nativeTokenAddress = '0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI';
|
|
24
|
+
this.emptyAddress = '0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI';
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.SuiWeb3Pure = SuiWeb3Pure;
|
|
@@ -8,5 +8,11 @@ class TonWeb3Pure extends common_web3_pure_1.CommonWeb3Pure {
|
|
|
8
8
|
regex: /^(EQ|UQ)[0-9a-zA-Z-_!]{46}$/
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
|
+
async isAddressCorrect(address) {
|
|
12
|
+
if (this.regEx) {
|
|
13
|
+
return this.regEx.test(address);
|
|
14
|
+
}
|
|
15
|
+
throw new Error(`Validation function is not implemented for ${this.constructor.name}`);
|
|
16
|
+
}
|
|
11
17
|
}
|
|
12
18
|
exports.TonWeb3Pure = TonWeb3Pure;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { CommonWeb3Pure } from
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { CommonWeb3Pure } from './common-web3-pure';
|
|
2
|
+
import { TronTransactionConfig } from '../models/tron-transaction-config';
|
|
3
|
+
import { TronParameters } from '../models/tron-parameters';
|
|
4
|
+
import { TronWeb3PrimitiveType, Web3PrimitiveType } from '../models/primitive-types';
|
|
5
|
+
import { AbiItem } from '../models/abi-types';
|
|
5
6
|
export declare class TronWeb3Pure extends CommonWeb3Pure {
|
|
6
7
|
constructor();
|
|
7
8
|
isAddressCorrect(address: string): Promise<boolean>;
|
|
@@ -14,7 +15,7 @@ export declare class TronWeb3Pure extends CommonWeb3Pure {
|
|
|
14
15
|
* @param methodArguments Parameters to encode.
|
|
15
16
|
* @returns An ABI encoded function call. Means function signature + parameters.
|
|
16
17
|
*/
|
|
17
|
-
static encodeFunctionCall(contractAbi:
|
|
18
|
+
static encodeFunctionCall(contractAbi: any[], methodName: string, methodArguments: unknown[]): string;
|
|
18
19
|
static encodeMethodSignature(methodSignature: string, parameters: TronParameters): string;
|
|
19
20
|
/**
|
|
20
21
|
* Decodes method result using its JSON interface object and given parameters.
|
|
@@ -22,9 +23,10 @@ export declare class TronWeb3Pure extends CommonWeb3Pure {
|
|
|
22
23
|
* @param response Bytes code returned after method call.
|
|
23
24
|
* @returns Parsed method output.
|
|
24
25
|
*/
|
|
25
|
-
static decodeMethodOutput(outputAbi:
|
|
26
|
+
static decodeMethodOutput(outputAbi: any[], response: string): Web3PrimitiveType;
|
|
26
27
|
private static flattenTypesToString;
|
|
27
28
|
private static flattenTypesToArray;
|
|
28
29
|
private static flattenParameters;
|
|
29
30
|
static flattenParameterToPrimitive(parameter: TronWeb3PrimitiveType): Web3PrimitiveType;
|
|
31
|
+
static encodeMethodCall(contractAddress: string, contractAbi: AbiItem[], methodName: string, methodArguments: TronParameters, callValue?: string, feeLimit?: number): TronTransactionConfig;
|
|
30
32
|
}
|