@cryptorubic/web3 0.15.0-alpha-stellar.0 → 1.0.0-alpha-rub-1103.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 +3 -1
- package/src/index.d.ts +130 -22
- package/src/index.js +130 -20
- package/src/lib/adapter/adapters/adapter-bitcoin/bitcoin-adapter.d.ts +38 -0
- package/src/lib/adapter/adapters/{bitcoin-adapter.js → adapter-bitcoin/bitcoin-adapter.js} +35 -13
- 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-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/{evm-adapter.js → adapter-evm/evm-adapter.js} +215 -87
- 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 +268 -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/{utils → adapter-solana/services}/solana-tokens-service.d.ts +1 -1
- package/src/lib/adapter/adapters/{utils → adapter-solana/services}/solana-tokens-service.js +2 -2
- 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/{solana-adapter.d.ts → adapter-solana/solana-adapter.d.ts} +25 -15
- package/src/lib/adapter/adapters/{solana-adapter.js → adapter-solana/solana-adapter.js} +60 -38
- 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/{sui-adapter.js → adapter-sui/sui-adapter.js} +45 -9
- 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 +4 -4
- 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-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 +17 -0
- package/src/lib/adapter/adapters/adapter-tron/signer/tron-adapter-signer.js +57 -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} +131 -66
- 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/models/approve-adapter.d.ts +12 -8
- package/src/lib/adapter/adapters/models/approve-adapter.js +1 -1
- package/src/lib/adapter/adapters/models/basic-transaction-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.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/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/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 +10 -0
- package/src/lib/adapter/adapters/models/web3-public-models/tx-status.js +12 -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/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 +15 -13
- package/src/lib/adapter/blockchain-adapter-factory.service.js +44 -61
- package/src/lib/adapter/constants/chain-configs/chain-configs.js +38 -56
- 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/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.js +0 -1
- package/src/lib/adapter/models/create-factory-params.d.ts +23 -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/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/web3-pure-store.js +10 -5
- package/src/lib/utils/models/evm-transaction-config.d.ts +2 -0
- 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 -23
- package/src/lib/adapter/adapters/abstract-adapter.js +0 -59
- package/src/lib/adapter/adapters/bitcoin-adapter.d.ts +0 -18
- package/src/lib/adapter/adapters/evm-adapter.d.ts +0 -59
- package/src/lib/adapter/adapters/sui-adapter.d.ts +0 -17
- 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 -37
- /package/src/lib/adapter/adapters/{models/gas-price.js → adapter-bitcoin/models/btc-send-tx-params.js} +0 -0
- /package/src/lib/adapter/adapters/{utils → adapter-ton/services}/ton-api.service.js +0 -0
- /package/src/lib/adapter/adapters/models/{gas-price.d.ts → evm-web3-public-models/gas-price.d.ts} +0 -0
|
@@ -1,22 +1,24 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
1
|
+
import { AbstractAdapter } from './adapters/common/abstract-adapter';
|
|
2
|
+
import { WalletProviderCore } from './constants/models/wallet-provider';
|
|
3
|
+
import { BlockchainName, EvmBlockchainName, SolanaBlockchainName, TronBlockchainName, ICustomLogger, TonBlockchainName, BitcoinBlockchainName, SuiBlockchainName } from '@cryptorubic/core';
|
|
4
|
+
import { TonAdapter } from './adapters/adapter-ton/ton-adapter';
|
|
5
|
+
import { EvmAdapter } from './adapters/adapter-evm/evm-adapter';
|
|
6
|
+
import { BitcoinAdapter } from './adapters/adapter-bitcoin/bitcoin-adapter';
|
|
7
|
+
import { SolanaAdapter } from './adapters/adapter-solana/solana-adapter';
|
|
8
|
+
import { TronAdapter } from './adapters/adapter-tron/tron-adapter';
|
|
9
|
+
import { SuiAdapter } from './adapters/adapter-sui/sui-adapter';
|
|
10
|
+
import { AdapterFactoryParams } from './models/create-factory-params';
|
|
11
11
|
export declare class BlockchainAdapterFactoryService {
|
|
12
12
|
private readonly rpcList;
|
|
13
|
+
private readonly httpClient;
|
|
13
14
|
private readonly createLogger?;
|
|
14
|
-
private readonly httpClient?;
|
|
15
15
|
private readonly tonParams?;
|
|
16
|
+
private readonly clientParams?;
|
|
16
17
|
readonly adapterStore: Partial<Record<BlockchainName, AbstractAdapter<unknown, unknown, BlockchainName>>>;
|
|
17
18
|
protected readonly logger?: ICustomLogger;
|
|
18
19
|
private constructor();
|
|
19
|
-
|
|
20
|
+
hasAdapterFor(blockchain: BlockchainName): boolean;
|
|
21
|
+
static createFactory(params: AdapterFactoryParams): Promise<BlockchainAdapterFactoryService>;
|
|
20
22
|
getAdapter(blockchain: SolanaBlockchainName): SolanaAdapter;
|
|
21
23
|
getAdapter(blockchain: EvmBlockchainName): EvmAdapter;
|
|
22
24
|
getAdapter(blockchain: TronBlockchainName): TronAdapter;
|
|
@@ -25,5 +27,5 @@ export declare class BlockchainAdapterFactoryService {
|
|
|
25
27
|
getAdapter(blockchain: SuiBlockchainName): SuiAdapter;
|
|
26
28
|
private createStorage;
|
|
27
29
|
private createAdapter;
|
|
28
|
-
connectWallet(
|
|
30
|
+
connectWallet(blockchain: BlockchainName, wallet: WalletProviderCore): void;
|
|
29
31
|
}
|
|
@@ -2,31 +2,35 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BlockchainAdapterFactoryService = void 0;
|
|
4
4
|
const viem_blockchain_mapping_1 = require("./constants/viem-blockchain-mapping");
|
|
5
|
-
const solana_adapter_1 = require("./adapters/solana-adapter");
|
|
6
|
-
const tron_adapter_1 = require("./adapters/tron-adapter");
|
|
7
|
-
const viem_1 = require("viem");
|
|
8
5
|
const core_1 = require("@cryptorubic/core");
|
|
9
|
-
const ton_adapter_1 = require("./adapters/ton-adapter");
|
|
10
|
-
const evm_adapter_1 = require("./adapters/evm-adapter");
|
|
11
|
-
const bitcoin_adapter_1 = require("./adapters/bitcoin-adapter");
|
|
12
|
-
const
|
|
6
|
+
const ton_adapter_1 = require("./adapters/adapter-ton/ton-adapter");
|
|
7
|
+
const evm_adapter_1 = require("./adapters/adapter-evm/evm-adapter");
|
|
8
|
+
const bitcoin_adapter_1 = require("./adapters/adapter-bitcoin/bitcoin-adapter");
|
|
9
|
+
const solana_adapter_1 = require("./adapters/adapter-solana/solana-adapter");
|
|
10
|
+
const tron_adapter_1 = require("./adapters/adapter-tron/tron-adapter");
|
|
11
|
+
const sui_adapter_1 = require("./adapters/adapter-sui/sui-adapter");
|
|
13
12
|
class BlockchainAdapterFactoryService {
|
|
14
|
-
constructor(rpcList, createLogger,
|
|
13
|
+
constructor(rpcList, httpClient, createLogger, tonParams, clientParams) {
|
|
15
14
|
this.rpcList = rpcList;
|
|
16
|
-
this.createLogger = createLogger;
|
|
17
15
|
this.httpClient = httpClient;
|
|
16
|
+
this.createLogger = createLogger;
|
|
18
17
|
this.tonParams = tonParams;
|
|
18
|
+
this.clientParams = clientParams;
|
|
19
19
|
this.adapterStore = {};
|
|
20
20
|
this.adapterStore = this.createStorage();
|
|
21
21
|
if (this.createLogger) {
|
|
22
22
|
this.logger = this.createLogger('BlockchainAdapterFactory');
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
|
|
25
|
+
hasAdapterFor(blockchain) {
|
|
26
|
+
const adapter = this.adapterStore?.[blockchain];
|
|
27
|
+
return !!adapter;
|
|
28
|
+
}
|
|
29
|
+
static async createFactory(params) {
|
|
26
30
|
// @TODO Add default logger
|
|
27
|
-
const loggerFn = createLogger || undefined;
|
|
28
|
-
const resolvedHttpClient = httpClient ?? (await Promise.resolve().then(() => require('axios')));
|
|
29
|
-
return new this(rpcList, createLogger,
|
|
31
|
+
const loggerFn = params.createLogger || undefined;
|
|
32
|
+
const resolvedHttpClient = params.httpClient ?? (await Promise.resolve().then(() => require('axios')));
|
|
33
|
+
return new this(params.rpcList, resolvedHttpClient, params.createLogger, params.tonParams, params.clientParams);
|
|
30
34
|
}
|
|
31
35
|
getAdapter(blockchain) {
|
|
32
36
|
const adapter = this.adapterStore?.[blockchain];
|
|
@@ -41,9 +45,6 @@ class BlockchainAdapterFactoryService {
|
|
|
41
45
|
const adapter = this.createAdapter(blockchain, rpcs || []);
|
|
42
46
|
return [blockchain, adapter || null];
|
|
43
47
|
});
|
|
44
|
-
const tonAdapter = this.createAdapter(core_1.BLOCKCHAIN_NAME.TON, []);
|
|
45
|
-
const btcAdapter = this.createAdapter(core_1.BLOCKCHAIN_NAME.BITCOIN, []);
|
|
46
|
-
adapters.push(tonAdapter ? [core_1.BLOCKCHAIN_NAME.TON, tonAdapter] : [core_1.BLOCKCHAIN_NAME.TON, null]);
|
|
47
48
|
const activeAdapters = adapters.filter(([blockchain, adapter]) => {
|
|
48
49
|
const adapterExists = Boolean(adapter);
|
|
49
50
|
const message = adapterExists
|
|
@@ -54,74 +55,56 @@ class BlockchainAdapterFactoryService {
|
|
|
54
55
|
});
|
|
55
56
|
const store = Object.fromEntries(activeAdapters);
|
|
56
57
|
this.logger?.customLog('Adapters store created');
|
|
58
|
+
if (!this.clientParams?.lazyLoadWeb3) {
|
|
59
|
+
Object.values(store).forEach((adapter) => adapter.initWeb3Client());
|
|
60
|
+
}
|
|
57
61
|
return store;
|
|
58
62
|
}
|
|
59
63
|
createAdapter(blockchain, rpcs) {
|
|
60
|
-
if (rpcs.length > 0
|
|
64
|
+
if (rpcs.length > 0) {
|
|
61
65
|
const blockchainType = core_1.BlockchainsInfo.getChainType(blockchain);
|
|
62
66
|
if (blockchainType === core_1.CHAIN_TYPE.EVM) {
|
|
63
67
|
if (viem_blockchain_mapping_1.viemBlockchainMapping?.[blockchain]) {
|
|
64
|
-
return new evm_adapter_1.EvmAdapter({
|
|
68
|
+
return new evm_adapter_1.EvmAdapter(this.httpClient, {
|
|
65
69
|
blockchain: blockchain,
|
|
66
70
|
rpcList: rpcs
|
|
67
|
-
}, this.createLogger?.(`EVM_ADAPTER_${blockchain}`));
|
|
71
|
+
}, this.createLogger?.(`EVM_ADAPTER_${blockchain}`), this.clientParams);
|
|
68
72
|
}
|
|
69
73
|
}
|
|
70
74
|
if (blockchainType === core_1.CHAIN_TYPE.TRON) {
|
|
71
|
-
return new tron_adapter_1.TronAdapter(rpcs, this.createLogger?.(`TRON_ADAPTER`));
|
|
75
|
+
return new tron_adapter_1.TronAdapter(rpcs, this.httpClient, this.createLogger?.(`TRON_ADAPTER`), this.clientParams);
|
|
72
76
|
}
|
|
73
77
|
if (blockchainType === core_1.CHAIN_TYPE.SUI) {
|
|
74
|
-
return new sui_adapter_1.SuiAdapter(rpcs, this.createLogger?.(`SUI_ADAPTER`));
|
|
78
|
+
return new sui_adapter_1.SuiAdapter(rpcs, this.httpClient, this.createLogger?.(`SUI_ADAPTER`), this.clientParams);
|
|
75
79
|
}
|
|
76
80
|
if (blockchainType === core_1.CHAIN_TYPE.SOLANA) {
|
|
77
|
-
return new solana_adapter_1.SolanaAdapter(rpcs, this.httpClient, this.createLogger?.(`SOLANA_ADAPTER`));
|
|
81
|
+
return new solana_adapter_1.SolanaAdapter(rpcs, this.httpClient, this.createLogger?.(`SOLANA_ADAPTER`), this.clientParams);
|
|
78
82
|
}
|
|
79
83
|
}
|
|
80
84
|
if (blockchain === core_1.BLOCKCHAIN_NAME.TON && this.tonParams?.tonApiConfig && this.tonParams?.tonClientConfig) {
|
|
81
|
-
return new ton_adapter_1.TonAdapter(this.httpClient, this.tonParams, this.createLogger?.(`TON_ADAPTER`));
|
|
85
|
+
return new ton_adapter_1.TonAdapter(this.httpClient, this.tonParams, this.createLogger?.(`TON_ADAPTER`), this.clientParams);
|
|
82
86
|
}
|
|
83
87
|
if (blockchain === core_1.BLOCKCHAIN_NAME.BITCOIN && this.httpClient) {
|
|
84
|
-
return new bitcoin_adapter_1.BitcoinAdapter(this.httpClient, this.createLogger?.(`BTC_ADAPTER`));
|
|
88
|
+
return new bitcoin_adapter_1.BitcoinAdapter(this.httpClient, this.createLogger?.(`BTC_ADAPTER`), this.clientParams);
|
|
85
89
|
}
|
|
86
90
|
return null;
|
|
87
91
|
}
|
|
88
|
-
connectWallet(
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
}
|
|
105
|
-
if (walletProvider?.[core_1.CHAIN_TYPE.TRON]?.core && this.adapterStore?.[core_1.BLOCKCHAIN_NAME.TRON]) {
|
|
106
|
-
const store = this.adapterStore[core_1.BLOCKCHAIN_NAME.TRON];
|
|
107
|
-
store.wallet = walletProvider[core_1.CHAIN_TYPE.TRON].core;
|
|
108
|
-
store.walletAddress = walletProvider[core_1.CHAIN_TYPE.TRON].address;
|
|
109
|
-
}
|
|
110
|
-
if (walletProvider?.[core_1.CHAIN_TYPE.SUI]?.core && this.adapterStore?.[core_1.BLOCKCHAIN_NAME.SUI]) {
|
|
111
|
-
const store = this.adapterStore[core_1.BLOCKCHAIN_NAME.SUI];
|
|
112
|
-
store.wallet = walletProvider[core_1.CHAIN_TYPE.SUI].core;
|
|
113
|
-
store.walletAddress = walletProvider[core_1.CHAIN_TYPE.SUI].address;
|
|
114
|
-
}
|
|
115
|
-
if (walletProvider?.[core_1.CHAIN_TYPE.TON]?.core && this.adapterStore?.[core_1.BLOCKCHAIN_NAME.TON]) {
|
|
116
|
-
const store = this.adapterStore[core_1.BLOCKCHAIN_NAME.TON];
|
|
117
|
-
store.wallet = walletProvider[core_1.CHAIN_TYPE.TON].core;
|
|
118
|
-
store.walletAddress = walletProvider[core_1.CHAIN_TYPE.TON].address;
|
|
119
|
-
}
|
|
120
|
-
if (walletProvider?.[core_1.CHAIN_TYPE.BITCOIN]?.core && this.adapterStore?.[core_1.BLOCKCHAIN_NAME.BITCOIN]) {
|
|
121
|
-
const store = this.adapterStore[core_1.BLOCKCHAIN_NAME.BITCOIN];
|
|
122
|
-
store.wallet = walletProvider[core_1.CHAIN_TYPE.BITCOIN].core;
|
|
123
|
-
store.walletAddress = walletProvider[core_1.CHAIN_TYPE.BITCOIN].address;
|
|
124
|
-
}
|
|
92
|
+
connectWallet(blockchain, wallet) {
|
|
93
|
+
/**
|
|
94
|
+
* evm chains has many EvmAdapter instances
|
|
95
|
+
* if you change network before swap - you need to be sure that
|
|
96
|
+
* EvmAdapter.signer.wallet and EvmAdapter.signer.wallet already set
|
|
97
|
+
*/
|
|
98
|
+
const chainTypeAdapters = Object.values(this.adapterStore).filter((adapter) => core_1.BlockchainsInfo.getChainType(adapter.blockchain) === core_1.BlockchainsInfo.getChainType(blockchain));
|
|
99
|
+
chainTypeAdapters.forEach((adapter) => {
|
|
100
|
+
adapter.signer.setWalletAddress(wallet.address);
|
|
101
|
+
adapter.signer.setWallet(wallet.core);
|
|
102
|
+
if (!adapter.connected) {
|
|
103
|
+
adapter.initWeb3Client();
|
|
104
|
+
const msg = `Web3 client for ${adapter.constructor.name} initialized successfully.`;
|
|
105
|
+
this.logger ? this.logger?.customLog(msg, adapter) : console.debug(msg, adapter);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
125
108
|
}
|
|
126
109
|
}
|
|
127
110
|
exports.BlockchainAdapterFactoryService = BlockchainAdapterFactoryService;
|
|
@@ -22,7 +22,7 @@ exports.viemConfig = {
|
|
|
22
22
|
testnet: true,
|
|
23
23
|
contracts: {
|
|
24
24
|
multicall3: {
|
|
25
|
-
address: '
|
|
25
|
+
address: '0x49a390a3dFd2d01389f799965F3af5961f87d228'
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
}),
|
|
@@ -41,7 +41,7 @@ exports.viemConfig = {
|
|
|
41
41
|
testnet: false,
|
|
42
42
|
contracts: {
|
|
43
43
|
multicall3: {
|
|
44
|
-
address: '
|
|
44
|
+
address: '0xdDCbf776dF3dE60163066A5ddDF2277cB445E0F3'
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
}),
|
|
@@ -117,7 +117,7 @@ exports.viemConfig = {
|
|
|
117
117
|
testnet: false,
|
|
118
118
|
contracts: {
|
|
119
119
|
multicall3: {
|
|
120
|
-
address: '
|
|
120
|
+
address: '0x15dc8b5ed578AA7a019dd0139B330cfD625cA795'
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
123
|
}),
|
|
@@ -136,7 +136,7 @@ exports.viemConfig = {
|
|
|
136
136
|
testnet: false,
|
|
137
137
|
contracts: {
|
|
138
138
|
multicall3: {
|
|
139
|
-
address: '
|
|
139
|
+
address: '0xe0e3887b158F7F9c80c835a61ED809389BC08d1b'
|
|
140
140
|
}
|
|
141
141
|
}
|
|
142
142
|
}),
|
|
@@ -155,7 +155,7 @@ exports.viemConfig = {
|
|
|
155
155
|
testnet: false,
|
|
156
156
|
contracts: {
|
|
157
157
|
multicall3: {
|
|
158
|
-
address: '
|
|
158
|
+
address: '0x5ba1e12693dc8f9c48aad8770482f4739beed696'
|
|
159
159
|
}
|
|
160
160
|
}
|
|
161
161
|
}),
|
|
@@ -174,7 +174,7 @@ exports.viemConfig = {
|
|
|
174
174
|
testnet: false,
|
|
175
175
|
contracts: {
|
|
176
176
|
multicall3: {
|
|
177
|
-
address: '
|
|
177
|
+
address: '0x22D4cF72C45F8198CfbF4B568dBdB5A85e8DC0B5'
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
180
|
}),
|
|
@@ -193,7 +193,7 @@ exports.viemConfig = {
|
|
|
193
193
|
testnet: false,
|
|
194
194
|
contracts: {
|
|
195
195
|
multicall3: {
|
|
196
|
-
address: '
|
|
196
|
+
address: '0x80C7DD17B01855a6D2347444a0FCC36136a314de'
|
|
197
197
|
}
|
|
198
198
|
}
|
|
199
199
|
}),
|
|
@@ -233,7 +233,7 @@ exports.viemConfig = {
|
|
|
233
233
|
testnet: true,
|
|
234
234
|
contracts: {
|
|
235
235
|
multicall3: {
|
|
236
|
-
address: '
|
|
236
|
+
address: '0x5ba1e12693dc8f9c48aad8770482f4739beed696'
|
|
237
237
|
}
|
|
238
238
|
}
|
|
239
239
|
}),
|
|
@@ -252,7 +252,7 @@ exports.viemConfig = {
|
|
|
252
252
|
testnet: false,
|
|
253
253
|
contracts: {
|
|
254
254
|
multicall3: {
|
|
255
|
-
address: '
|
|
255
|
+
address: '0x5e954f5972EC6BFc7dECd75779F10d848230345F'
|
|
256
256
|
}
|
|
257
257
|
}
|
|
258
258
|
}),
|
|
@@ -292,7 +292,7 @@ exports.viemConfig = {
|
|
|
292
292
|
testnet: false,
|
|
293
293
|
contracts: {
|
|
294
294
|
multicall3: {
|
|
295
|
-
address: '
|
|
295
|
+
address: '0x67dA5f2FfaDDfF067AB9d5F025F8810634d84287'
|
|
296
296
|
}
|
|
297
297
|
}
|
|
298
298
|
}),
|
|
@@ -311,7 +311,7 @@ exports.viemConfig = {
|
|
|
311
311
|
testnet: false,
|
|
312
312
|
contracts: {
|
|
313
313
|
multicall3: {
|
|
314
|
-
address: '
|
|
314
|
+
address: '0xdDCbf776dF3dE60163066A5ddDF2277cB445E0F3'
|
|
315
315
|
}
|
|
316
316
|
}
|
|
317
317
|
}),
|
|
@@ -330,7 +330,7 @@ exports.viemConfig = {
|
|
|
330
330
|
testnet: false,
|
|
331
331
|
contracts: {
|
|
332
332
|
multicall3: {
|
|
333
|
-
address: '
|
|
333
|
+
address: '0x0769fd68dFb93167989C6f7254cd0D766Fb2841F'
|
|
334
334
|
}
|
|
335
335
|
}
|
|
336
336
|
}),
|
|
@@ -368,7 +368,7 @@ exports.viemConfig = {
|
|
|
368
368
|
testnet: false,
|
|
369
369
|
contracts: {
|
|
370
370
|
multicall3: {
|
|
371
|
-
address: '
|
|
371
|
+
address: '0x9aac9048fC8139667D6a2597B902865bfdc225d3'
|
|
372
372
|
}
|
|
373
373
|
}
|
|
374
374
|
}),
|
|
@@ -389,7 +389,7 @@ exports.viemConfig = {
|
|
|
389
389
|
testnet: true,
|
|
390
390
|
contracts: {
|
|
391
391
|
multicall3: {
|
|
392
|
-
address: '
|
|
392
|
+
address: '0x805488daa81c1b9e7c5ce3f1dcea28f21448ec6a'
|
|
393
393
|
}
|
|
394
394
|
}
|
|
395
395
|
}),
|
|
@@ -408,7 +408,7 @@ exports.viemConfig = {
|
|
|
408
408
|
testnet: false,
|
|
409
409
|
contracts: {
|
|
410
410
|
multicall3: {
|
|
411
|
-
address: '
|
|
411
|
+
address: '0x96a5Eac3fa7BB87c61881Dc093884C06719Bcd1E'
|
|
412
412
|
}
|
|
413
413
|
}
|
|
414
414
|
}),
|
|
@@ -467,7 +467,7 @@ exports.viemConfig = {
|
|
|
467
467
|
testnet: false,
|
|
468
468
|
contracts: {
|
|
469
469
|
multicall3: {
|
|
470
|
-
address: '
|
|
470
|
+
address: '0x6BB10762aE02d0544a0E948B62EaeBD991100622'
|
|
471
471
|
}
|
|
472
472
|
}
|
|
473
473
|
}),
|
|
@@ -486,7 +486,7 @@ exports.viemConfig = {
|
|
|
486
486
|
testnet: false,
|
|
487
487
|
contracts: {
|
|
488
488
|
multicall3: {
|
|
489
|
-
address: '
|
|
489
|
+
address: '0x176730799C812d70C6608F51aEa6C7e5cdA7eA50'
|
|
490
490
|
}
|
|
491
491
|
}
|
|
492
492
|
}),
|
|
@@ -562,7 +562,7 @@ exports.viemConfig = {
|
|
|
562
562
|
testnet: false,
|
|
563
563
|
contracts: {
|
|
564
564
|
multicall3: {
|
|
565
|
-
address: '
|
|
565
|
+
address: '0x270f2F35bED92B7A59eA5F08F6B3fd34c8D9D9b5'
|
|
566
566
|
}
|
|
567
567
|
}
|
|
568
568
|
}),
|
|
@@ -585,7 +585,7 @@ exports.viemConfig = {
|
|
|
585
585
|
testnet: false,
|
|
586
586
|
contracts: {
|
|
587
587
|
multicall3: {
|
|
588
|
-
address: '
|
|
588
|
+
address: '0x5b24224dC16508DAD755756639E420817DD4c99E'
|
|
589
589
|
}
|
|
590
590
|
}
|
|
591
591
|
}),
|
|
@@ -625,7 +625,7 @@ exports.viemConfig = {
|
|
|
625
625
|
testnet: false,
|
|
626
626
|
contracts: {
|
|
627
627
|
multicall3: {
|
|
628
|
-
address: '
|
|
628
|
+
address: '0xeAa6877139d436Dc6d1f75F3aF15B74662617B2C'
|
|
629
629
|
}
|
|
630
630
|
}
|
|
631
631
|
}),
|
|
@@ -664,7 +664,7 @@ exports.viemConfig = {
|
|
|
664
664
|
testnet: false,
|
|
665
665
|
contracts: {
|
|
666
666
|
multicall3: {
|
|
667
|
-
address: '
|
|
667
|
+
address: '0x53dC7535028e2fcaCa0d847AD108b9240C0801b1'
|
|
668
668
|
}
|
|
669
669
|
}
|
|
670
670
|
}),
|
|
@@ -702,7 +702,7 @@ exports.viemConfig = {
|
|
|
702
702
|
testnet: false,
|
|
703
703
|
contracts: {
|
|
704
704
|
multicall3: {
|
|
705
|
-
address: '
|
|
705
|
+
address: '0xF4d73326C13a4Fc5FD7A064217e12780e9Bd62c3'
|
|
706
706
|
}
|
|
707
707
|
}
|
|
708
708
|
}),
|
|
@@ -740,7 +740,7 @@ exports.viemConfig = {
|
|
|
740
740
|
testnet: false,
|
|
741
741
|
contracts: {
|
|
742
742
|
multicall3: {
|
|
743
|
-
address: '
|
|
743
|
+
address: '0x45be772faE4a9F31401dfF4738E5DC7DD439aC0b'
|
|
744
744
|
}
|
|
745
745
|
}
|
|
746
746
|
}),
|
|
@@ -759,7 +759,7 @@ exports.viemConfig = {
|
|
|
759
759
|
testnet: false,
|
|
760
760
|
contracts: {
|
|
761
761
|
multicall3: {
|
|
762
|
-
address: '
|
|
762
|
+
address: '0x6477204E12A7236b9619385ea453F370aD897bb2'
|
|
763
763
|
}
|
|
764
764
|
}
|
|
765
765
|
}),
|
|
@@ -778,7 +778,7 @@ exports.viemConfig = {
|
|
|
778
778
|
testnet: false,
|
|
779
779
|
contracts: {
|
|
780
780
|
multicall3: {
|
|
781
|
-
address: '
|
|
781
|
+
address: '0xd11dfc2ab34abd3e1abfba80b99aefbd6255c4b8'
|
|
782
782
|
}
|
|
783
783
|
}
|
|
784
784
|
}),
|
|
@@ -835,7 +835,7 @@ exports.viemConfig = {
|
|
|
835
835
|
testnet: false,
|
|
836
836
|
contracts: {
|
|
837
837
|
multicall3: {
|
|
838
|
-
address: '
|
|
838
|
+
address: '0xf43727c9BEb4C0aA3fEE1281A902e518f8586E54'
|
|
839
839
|
}
|
|
840
840
|
}
|
|
841
841
|
}),
|
|
@@ -873,7 +873,7 @@ exports.viemConfig = {
|
|
|
873
873
|
testnet: false,
|
|
874
874
|
contracts: {
|
|
875
875
|
multicall3: {
|
|
876
|
-
address: '
|
|
876
|
+
address: '0xc39aBB6c4451089dE48Cffb013c39d3110530e5C'
|
|
877
877
|
}
|
|
878
878
|
}
|
|
879
879
|
}),
|
|
@@ -892,7 +892,7 @@ exports.viemConfig = {
|
|
|
892
892
|
testnet: false,
|
|
893
893
|
contracts: {
|
|
894
894
|
multicall3: {
|
|
895
|
-
address: '
|
|
895
|
+
address: '0xDA294FDE76F7369ed93D7C7A3FD2d5277C2003B5'
|
|
896
896
|
}
|
|
897
897
|
}
|
|
898
898
|
}),
|
|
@@ -930,7 +930,7 @@ exports.viemConfig = {
|
|
|
930
930
|
testnet: false,
|
|
931
931
|
contracts: {
|
|
932
932
|
multicall3: {
|
|
933
|
-
address: '
|
|
933
|
+
address: '0x0c50a45401fA051F5F38e98d0E323f08eFa3bb0b'
|
|
934
934
|
}
|
|
935
935
|
}
|
|
936
936
|
}),
|
|
@@ -949,7 +949,7 @@ exports.viemConfig = {
|
|
|
949
949
|
testnet: false,
|
|
950
950
|
contracts: {
|
|
951
951
|
multicall3: {
|
|
952
|
-
address: '
|
|
952
|
+
address: '0x45CFd6FB7999328F189aaD2739Fba4Be6C45E5bf'
|
|
953
953
|
}
|
|
954
954
|
}
|
|
955
955
|
}),
|
|
@@ -968,7 +968,7 @@ exports.viemConfig = {
|
|
|
968
968
|
testnet: false,
|
|
969
969
|
contracts: {
|
|
970
970
|
multicall3: {
|
|
971
|
-
address: '
|
|
971
|
+
address: '0x0747CFe82D3Bee998f634569FE2B0005dF9d8EDE'
|
|
972
972
|
}
|
|
973
973
|
}
|
|
974
974
|
}),
|
|
@@ -1006,7 +1006,7 @@ exports.viemConfig = {
|
|
|
1006
1006
|
testnet: false,
|
|
1007
1007
|
contracts: {
|
|
1008
1008
|
multicall3: {
|
|
1009
|
-
address: '
|
|
1009
|
+
address: '0xa385B1436fD2A6a1c6865E22c522A1aA40CaDCC6'
|
|
1010
1010
|
}
|
|
1011
1011
|
}
|
|
1012
1012
|
}),
|
|
@@ -1025,7 +1025,7 @@ exports.viemConfig = {
|
|
|
1025
1025
|
testnet: false,
|
|
1026
1026
|
contracts: {
|
|
1027
1027
|
multicall3: {
|
|
1028
|
-
address: '
|
|
1028
|
+
address: '0x5ba1e12693dc8f9c48aad8770482f4739beed696'
|
|
1029
1029
|
}
|
|
1030
1030
|
}
|
|
1031
1031
|
}),
|
|
@@ -1082,7 +1082,7 @@ exports.viemConfig = {
|
|
|
1082
1082
|
testnet: false,
|
|
1083
1083
|
contracts: {
|
|
1084
1084
|
multicall3: {
|
|
1085
|
-
address: '
|
|
1085
|
+
address: '0xDBA7ab3Ed22044417380E9358aAabCF85683f3c8'
|
|
1086
1086
|
}
|
|
1087
1087
|
}
|
|
1088
1088
|
}),
|
|
@@ -1139,7 +1139,7 @@ exports.viemConfig = {
|
|
|
1139
1139
|
testnet: false,
|
|
1140
1140
|
contracts: {
|
|
1141
1141
|
multicall3: {
|
|
1142
|
-
address: '
|
|
1142
|
+
address: '0x74F689bb9f86BD24d370BE2a2B9C74446ce08843'
|
|
1143
1143
|
}
|
|
1144
1144
|
}
|
|
1145
1145
|
}),
|
|
@@ -1219,7 +1219,7 @@ exports.viemConfig = {
|
|
|
1219
1219
|
testnet: false,
|
|
1220
1220
|
contracts: {
|
|
1221
1221
|
multicall3: {
|
|
1222
|
-
address: '
|
|
1222
|
+
address: '0x7E06D0CD8D3fDDBB875345dF389d986f810A49F6'
|
|
1223
1223
|
}
|
|
1224
1224
|
}
|
|
1225
1225
|
}),
|
|
@@ -1237,24 +1237,6 @@ exports.viemConfig = {
|
|
|
1237
1237
|
rpcUrls: { default: { http: ['https://eth-rpc-api.thetatoken.org/rpc'] } },
|
|
1238
1238
|
testnet: false
|
|
1239
1239
|
}),
|
|
1240
|
-
STARKNET: (0, viem_1.defineChain)({
|
|
1241
|
-
blockExplorers: {
|
|
1242
|
-
default: {
|
|
1243
|
-
apiUrl: 'https://starkscan.co/',
|
|
1244
|
-
name: 'STARKNET Explorer',
|
|
1245
|
-
url: 'https://starkscan.co/'
|
|
1246
|
-
}
|
|
1247
|
-
},
|
|
1248
|
-
id: NaN,
|
|
1249
|
-
name: 'starknet',
|
|
1250
|
-
nativeCurrency: { decimals: 18, name: 'STRK', symbol: 'STRK' },
|
|
1251
|
-
rpcUrls: {
|
|
1252
|
-
default: {
|
|
1253
|
-
http: ['https://rpc.starknet.lava.build', 'https://starknet-mainnet.public.blastapi.io', 'https://data.voyager.online/']
|
|
1254
|
-
}
|
|
1255
|
-
},
|
|
1256
|
-
testnet: false
|
|
1257
|
-
}),
|
|
1258
1240
|
BITLAYER: (0, viem_1.defineChain)({
|
|
1259
1241
|
blockExplorers: {
|
|
1260
1242
|
default: {
|
|
@@ -1279,7 +1261,7 @@ exports.viemConfig = {
|
|
|
1279
1261
|
testnet: false,
|
|
1280
1262
|
contracts: {
|
|
1281
1263
|
multicall3: {
|
|
1282
|
-
address: '
|
|
1264
|
+
address: '0x5B256fE9e993902eCe49D138a5b1162cBb529474'
|
|
1283
1265
|
}
|
|
1284
1266
|
}
|
|
1285
1267
|
}),
|
|
@@ -1398,7 +1380,7 @@ exports.viemConfig = {
|
|
|
1398
1380
|
testnet: false,
|
|
1399
1381
|
contracts: {
|
|
1400
1382
|
multicall3: {
|
|
1401
|
-
address: '
|
|
1383
|
+
address: '0x74F689bb9f86BD24d370BE2a2B9C74446ce08843'
|
|
1402
1384
|
}
|
|
1403
1385
|
}
|
|
1404
1386
|
}),
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type EnvType = 'local' | 'dev' | 'dev2' | 'dev3' | 'dev4' | 'dev5' | 'dev6' | 'prod' | 'rubic' | 'stage' | 'prod-api';
|
|
@@ -4,7 +4,7 @@ export interface SolanaWeb3 {
|
|
|
4
4
|
toBytes(): Uint8Array;
|
|
5
5
|
};
|
|
6
6
|
isConnected: boolean;
|
|
7
|
-
signTransaction(transaction: Transaction): Promise<Transaction | VersionedTransaction>;
|
|
7
|
+
signTransaction(transaction: Transaction | VersionedTransaction): Promise<Transaction | VersionedTransaction>;
|
|
8
8
|
signAllTransactions(transactions: Transaction[]): Promise<Transaction[]>;
|
|
9
9
|
signMessage(message: Uint8Array, encoding: string): Promise<{
|
|
10
10
|
signature: Uint8Array;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rubicApiLinkMapping = void 0;
|
|
4
|
+
exports.rubicApiLinkMapping = {
|
|
5
|
+
local: 'http://localhost:3000',
|
|
6
|
+
dev: 'https://dev1-api-v2.rubic.exchange',
|
|
7
|
+
dev2: 'https://dev2-api-v2.rubic.exchange',
|
|
8
|
+
dev3: 'https://dev3-api-v2.rubic.exchange',
|
|
9
|
+
dev4: 'https://dev1-api-v2.rubic.exchange',
|
|
10
|
+
dev5: 'https://dev1-api-v2.rubic.exchange',
|
|
11
|
+
dev6: 'https://dev1-api-v2.rubic.exchange',
|
|
12
|
+
rubic: 'https://rubic-api-v2.rubic.exchange',
|
|
13
|
+
prod: 'https://rubic-api-v2.rubic.exchange',
|
|
14
|
+
stage: 'https://rubic-api-v2.rubic.exchange',
|
|
15
|
+
'prod-api': 'https://rubic-api-v2.rubic.exchange'
|
|
16
|
+
};
|
|
@@ -73,7 +73,6 @@ exports.viemBlockchainMapping = {
|
|
|
73
73
|
[core_1.BLOCKCHAIN_NAME.CORE]: chain_configs_1.viemConfig[core_1.BLOCKCHAIN_NAME.CORE],
|
|
74
74
|
[core_1.BLOCKCHAIN_NAME.BERACHAIN]: chain_configs_1.viemConfig[core_1.BLOCKCHAIN_NAME.BERACHAIN],
|
|
75
75
|
[core_1.BLOCKCHAIN_NAME.SONEIUM]: chain_configs_1.viemConfig[core_1.BLOCKCHAIN_NAME.SONEIUM],
|
|
76
|
-
[core_1.BLOCKCHAIN_NAME.WANCHAIN]: chains_1.wanchain,
|
|
77
76
|
[core_1.BLOCKCHAIN_NAME.UNICHAIN]: chain_configs_1.viemConfig[core_1.BLOCKCHAIN_NAME.UNICHAIN],
|
|
78
77
|
[core_1.BLOCKCHAIN_NAME.MORPH]: chain_configs_1.viemConfig[core_1.BLOCKCHAIN_NAME.MORPH], // viem Morph config without multicall address
|
|
79
78
|
[core_1.BLOCKCHAIN_NAME.HEMI]: chain_configs_1.viemConfig[core_1.BLOCKCHAIN_NAME.HEMI],
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { EvmBlockchainName, HttpClient, ICustomLogger, SolanaBlockchainName, SuiBlockchainName, TronBlockchainName } from '@cryptorubic/core';
|
|
2
|
+
import { EnvType } from '../constants/models/env-type';
|
|
3
|
+
import { TronWebProvider } from '../adapters/adapter-tron/models/tron-web-provider';
|
|
4
|
+
import { TonAdapterConfig } from '../adapters/models/ton-adapter-config';
|
|
5
|
+
import { FallbackTransportConfig, HttpTransportConfig } from 'viem';
|
|
6
|
+
export type RpcListType = Record<EvmBlockchainName, string[]> & Record<TronBlockchainName, TronWebProvider[]> & Record<SolanaBlockchainName, string[]> & Record<SuiBlockchainName, string[]>;
|
|
7
|
+
export interface AdapterFactoryParams {
|
|
8
|
+
rpcList: RpcListType;
|
|
9
|
+
httpClient?: HttpClient;
|
|
10
|
+
tonParams?: TonAdapterConfig;
|
|
11
|
+
createLogger?: (label: string) => ICustomLogger;
|
|
12
|
+
clientParams?: ClientAdaptersFactoryParams;
|
|
13
|
+
}
|
|
14
|
+
export interface ClientAdaptersFactoryParams {
|
|
15
|
+
envType: EnvType;
|
|
16
|
+
viemConfig?: ViemChainConfig;
|
|
17
|
+
lazyLoadWeb3?: boolean;
|
|
18
|
+
}
|
|
19
|
+
export type ViemChainConfig = Partial<Record<EvmBlockchainName, ViemConfig>>;
|
|
20
|
+
export interface ViemConfig {
|
|
21
|
+
transportConfig?: HttpTransportConfig;
|
|
22
|
+
fallbackConfig?: FallbackTransportConfig;
|
|
23
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import BigNumber from 'bignumber.js';
|
|
2
|
+
import { RubicSdkError } from '../rubic-sdk.error';
|
|
3
|
+
import { Token } from '@cryptorubic/core';
|
|
4
|
+
/**
|
|
5
|
+
* Thrown, if token has deflation.
|
|
6
|
+
*/
|
|
7
|
+
export declare class DeflationTokenError extends RubicSdkError {
|
|
8
|
+
readonly token: Token;
|
|
9
|
+
readonly deflationPercent: BigNumber;
|
|
10
|
+
constructor(token: Token, deflationPercent: BigNumber);
|
|
11
|
+
}
|