@cryptorubic/web3 0.15.0-alpha-stellar.0 → 1.0.0-alpha-rub-1044.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.
Files changed (224) hide show
  1. package/README.md +1 -1
  2. package/package.json +3 -1
  3. package/src/index.d.ts +130 -22
  4. package/src/index.js +130 -20
  5. package/src/lib/adapter/adapters/adapter-bitcoin/bitcoin-adapter.d.ts +38 -0
  6. package/src/lib/adapter/adapters/{bitcoin-adapter.js → adapter-bitcoin/bitcoin-adapter.js} +35 -13
  7. package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-send-tx-params.d.ts +5 -0
  8. package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-psbt-encoded-config.d.ts +5 -0
  9. package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-psbt-encoded-config.js +2 -0
  10. package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-trade-types.d.ts +7 -0
  11. package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-trade-types.js +2 -0
  12. package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-transfer-encoded-config.d.ts +6 -0
  13. package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-web3-private-models/bitcoin-transfer-encoded-config.js +2 -0
  14. package/src/lib/adapter/adapters/adapter-bitcoin/signer/bitcoin-adapter-signer.d.ts +17 -0
  15. package/src/lib/adapter/adapters/adapter-bitcoin/signer/bitcoin-adapter-signer.js +131 -0
  16. package/src/lib/adapter/adapters/adapter-evm/constants/proxy-hash-errors.d.ts +4 -0
  17. package/src/lib/adapter/adapters/adapter-evm/constants/proxy-hash-errors.js +705 -0
  18. package/src/lib/adapter/adapters/adapter-evm/evm-adapter.d.ts +120 -0
  19. package/src/lib/adapter/adapters/{evm-adapter.js → adapter-evm/evm-adapter.js} +215 -87
  20. package/src/lib/adapter/adapters/adapter-evm/models/evm-send-tx-params.d.ts +38 -0
  21. package/src/lib/adapter/adapters/adapter-evm/models/evm-send-tx-params.js +2 -0
  22. package/src/lib/adapter/adapters/adapter-evm/signer/evm-adapter-signer.d.ts +53 -0
  23. package/src/lib/adapter/adapters/adapter-evm/signer/evm-adapter-signer.js +268 -0
  24. package/src/lib/adapter/adapters/adapter-evm/utils/parse-evm-error.d.ts +12 -0
  25. package/src/lib/adapter/adapters/adapter-evm/utils/parse-evm-error.js +70 -0
  26. package/src/lib/adapter/adapters/adapter-solana/models/solana-send-tx-params.d.ts +16 -0
  27. package/src/lib/adapter/adapters/adapter-solana/models/solana-send-tx-params.js +2 -0
  28. package/src/lib/adapter/adapters/{utils → adapter-solana/services}/solana-tokens-service.d.ts +1 -1
  29. package/src/lib/adapter/adapters/{utils → adapter-solana/services}/solana-tokens-service.js +2 -2
  30. package/src/lib/adapter/adapters/adapter-solana/signer/solana-adapter-signer.d.ts +17 -0
  31. package/src/lib/adapter/adapters/adapter-solana/signer/solana-adapter-signer.js +87 -0
  32. package/src/lib/adapter/adapters/{solana-adapter.d.ts → adapter-solana/solana-adapter.d.ts} +25 -15
  33. package/src/lib/adapter/adapters/{solana-adapter.js → adapter-solana/solana-adapter.js} +60 -38
  34. package/src/lib/adapter/adapters/adapter-sui/models/sui-send-tx-params.d.ts +8 -0
  35. package/src/lib/adapter/adapters/adapter-sui/models/sui-send-tx-params.js +2 -0
  36. package/src/lib/adapter/adapters/adapter-sui/signer/sui-adapter-signer.d.ts +17 -0
  37. package/src/lib/adapter/adapters/adapter-sui/signer/sui-adapter-signer.js +55 -0
  38. package/src/lib/adapter/adapters/adapter-sui/sui-adapter.d.ts +32 -0
  39. package/src/lib/adapter/adapters/{sui-adapter.js → adapter-sui/sui-adapter.js} +45 -9
  40. package/src/lib/adapter/adapters/adapter-ton/models/ton-send-tx-params.d.ts +26 -0
  41. package/src/lib/adapter/adapters/adapter-ton/models/ton-send-tx-params.js +2 -0
  42. package/src/lib/adapter/adapters/{utils → adapter-ton/services}/ton-api.service.d.ts +4 -4
  43. package/src/lib/adapter/adapters/adapter-ton/signer/ton-adapter-signer.d.ts +43 -0
  44. package/src/lib/adapter/adapters/adapter-ton/signer/ton-adapter-signer.js +166 -0
  45. package/src/lib/adapter/adapters/adapter-ton/ton-adapter.d.ts +32 -0
  46. package/src/lib/adapter/adapters/adapter-ton/ton-adapter.js +104 -0
  47. package/src/lib/adapter/adapters/adapter-tron/models/tron-send-tx-params.d.ts +13 -0
  48. package/src/lib/adapter/adapters/adapter-tron/models/tron-send-tx-params.js +2 -0
  49. package/src/lib/adapter/adapters/adapter-tron/models/tron-web-provider.d.ts +4 -0
  50. package/src/lib/adapter/adapters/adapter-tron/models/tron-web-provider.js +2 -0
  51. package/src/lib/adapter/adapters/adapter-tron/signer/tron-adapter-signer.d.ts +17 -0
  52. package/src/lib/adapter/adapters/adapter-tron/signer/tron-adapter-signer.js +57 -0
  53. package/src/lib/adapter/adapters/adapter-tron/tron-adapter.d.ts +57 -0
  54. package/src/lib/adapter/adapters/{tron-adapter.js → adapter-tron/tron-adapter.js} +131 -66
  55. package/src/lib/adapter/adapters/adapter-tron/utils/parse-tron-error.d.ts +2 -0
  56. package/src/lib/adapter/adapters/adapter-tron/utils/parse-tron-error.js +20 -0
  57. package/src/lib/adapter/adapters/common/abstract-adapter.d.ts +84 -0
  58. package/src/lib/adapter/adapters/common/abstract-adapter.js +82 -0
  59. package/src/lib/adapter/adapters/common/signer/abstract-adapter-signer.d.ts +22 -0
  60. package/src/lib/adapter/adapters/common/signer/abstract-adapter-signer.js +42 -0
  61. package/src/lib/adapter/adapters/models/approve-adapter.d.ts +12 -8
  62. package/src/lib/adapter/adapters/models/approve-adapter.js +1 -1
  63. package/src/lib/adapter/adapters/models/basic-transaction-options.d.ts +1 -1
  64. package/src/lib/adapter/adapters/models/evm-web3-public-models/batch-call.d.ts +5 -0
  65. package/src/lib/adapter/adapters/models/evm-web3-public-models/batch-call.js +2 -0
  66. package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-call.d.ts +4 -0
  67. package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-call.js +2 -0
  68. package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-multicall-response.d.ts +4 -0
  69. package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-multicall-response.js +2 -0
  70. package/src/lib/adapter/adapters/models/evm-web3-public-models/gas-price-viem.d.ts +18 -0
  71. package/src/lib/adapter/adapters/models/evm-web3-public-models/gas-price-viem.js +2 -0
  72. package/src/lib/adapter/adapters/models/evm-web3-public-models/gas-price.js +2 -0
  73. package/src/lib/adapter/adapters/models/evm-web3-public-models/permit2-contract-types.d.ts +10 -0
  74. package/src/lib/adapter/adapters/models/evm-web3-public-models/permit2-contract-types.js +2 -0
  75. package/src/lib/adapter/adapters/models/evm-web3-public-models/rpc-response.d.ts +5 -0
  76. package/src/lib/adapter/adapters/models/evm-web3-public-models/rpc-response.js +2 -0
  77. package/src/lib/adapter/adapters/models/old-features-models/contract-params.d.ts +23 -0
  78. package/src/lib/adapter/adapters/models/old-features-models/contract-params.js +2 -0
  79. package/src/lib/adapter/adapters/models/old-features-models/encode-transaction-options.d.ts +32 -0
  80. package/src/lib/adapter/adapters/models/old-features-models/encode-transaction-options.js +2 -0
  81. package/src/lib/adapter/adapters/models/old-features-models/is-deflation-token.d.ts +6 -0
  82. package/src/lib/adapter/adapters/models/old-features-models/is-deflation-token.js +2 -0
  83. package/src/lib/adapter/adapters/models/old-features-models/non-evm-chain-address-correct-response.d.ts +5 -0
  84. package/src/lib/adapter/adapters/models/old-features-models/non-evm-chain-address-correct-response.js +2 -0
  85. package/src/lib/adapter/adapters/models/old-features-models/swap-transaction-options.d.ts +65 -0
  86. package/src/lib/adapter/adapters/models/old-features-models/swap-transaction-options.js +2 -0
  87. package/src/lib/adapter/adapters/models/status-manager-models/tx-status-data.d.ts +8 -0
  88. package/src/lib/adapter/adapters/models/status-manager-models/tx-status-data.js +2 -0
  89. package/src/lib/adapter/adapters/models/web3-public-models/contract-multicall-response.d.ts +5 -0
  90. package/src/lib/adapter/adapters/models/web3-public-models/contract-multicall-response.js +2 -0
  91. package/src/lib/adapter/adapters/models/web3-public-models/method-data.d.ts +4 -0
  92. package/src/lib/adapter/adapters/models/web3-public-models/method-data.js +2 -0
  93. package/src/lib/adapter/adapters/models/web3-public-models/supported-token-field.d.ts +1 -0
  94. package/src/lib/adapter/adapters/models/web3-public-models/supported-token-field.js +2 -0
  95. package/src/lib/adapter/adapters/models/web3-public-models/tx-status.d.ts +10 -0
  96. package/src/lib/adapter/adapters/models/web3-public-models/tx-status.js +12 -0
  97. package/src/lib/adapter/adapters/utils/errors.d.ts +2 -0
  98. package/src/lib/adapter/adapters/utils/errors.js +10 -0
  99. package/src/lib/adapter/adapters/utils/options.d.ts +10 -0
  100. package/src/lib/adapter/adapters/utils/options.js +59 -0
  101. package/src/lib/adapter/adapters/utils/waitFor.d.ts +1 -0
  102. package/src/lib/adapter/adapters/utils/waitFor.js +6 -0
  103. package/src/lib/adapter/blockchain-adapter-factory.service.d.ts +15 -13
  104. package/src/lib/adapter/blockchain-adapter-factory.service.js +44 -61
  105. package/src/lib/adapter/constants/chain-configs/chain-configs.js +38 -56
  106. package/src/lib/adapter/constants/models/env-type.d.ts +1 -0
  107. package/src/lib/adapter/constants/models/env-type.js +2 -0
  108. package/src/lib/adapter/constants/models/solana-web3.d.ts +1 -1
  109. package/src/lib/adapter/constants/rubic-api-link-mapping.d.ts +2 -0
  110. package/src/lib/adapter/constants/rubic-api-link-mapping.js +16 -0
  111. package/src/lib/adapter/constants/viem-blockchain-mapping.js +0 -1
  112. package/src/lib/adapter/models/create-factory-params.d.ts +23 -0
  113. package/src/lib/adapter/models/create-factory-params.js +2 -0
  114. package/src/lib/errors/blockchain/deflation-token.error.d.ts +11 -0
  115. package/src/lib/errors/blockchain/deflation-token.error.js +16 -0
  116. package/src/lib/errors/blockchain/healthcheck.error.d.ts +8 -0
  117. package/src/lib/errors/blockchain/healthcheck.error.js +15 -0
  118. package/src/lib/errors/blockchain/invalid-address.error.d.ts +8 -0
  119. package/src/lib/errors/blockchain/invalid-address.error.js +15 -0
  120. package/src/lib/errors/blockchain/low-gas.error.d.ts +7 -0
  121. package/src/lib/errors/blockchain/low-gas.error.js +14 -0
  122. package/src/lib/errors/blockchain/transaction-reverted.error.d.ts +7 -0
  123. package/src/lib/errors/blockchain/transaction-reverted.error.js +14 -0
  124. package/src/lib/errors/blockchain/tron-insufficient-native-balance.d.ts +7 -0
  125. package/src/lib/errors/blockchain/tron-insufficient-native-balance.js +14 -0
  126. package/src/lib/errors/blockchain/tron-transaction-expired.d.ts +7 -0
  127. package/src/lib/errors/blockchain/tron-transaction-expired.js +14 -0
  128. package/src/lib/errors/blockchain/user-reject.error.d.ts +7 -0
  129. package/src/lib/errors/blockchain/user-reject.error.js +14 -0
  130. package/src/lib/errors/blockchain/wrong-from-address.error.d.ts +7 -0
  131. package/src/lib/errors/blockchain/wrong-from-address.error.js +14 -0
  132. package/src/lib/errors/blockchain/wrong-receiver-address.error.d.ts +7 -0
  133. package/src/lib/errors/blockchain/wrong-receiver-address.error.js +14 -0
  134. package/src/lib/errors/common/timeout.error.d.ts +4 -0
  135. package/src/lib/errors/common/timeout.error.js +12 -0
  136. package/src/lib/errors/common/tx-reverted-in-chain.error.d.ts +4 -0
  137. package/src/lib/errors/common/tx-reverted-in-chain.error.js +11 -0
  138. package/src/lib/errors/cross-chain/cross-chain-is-unavailable.error.d.ts +7 -0
  139. package/src/lib/errors/cross-chain/cross-chain-is-unavailable.error.js +14 -0
  140. package/src/lib/errors/cross-chain/insufficient-funds-gas-price-value.error.d.ts +7 -0
  141. package/src/lib/errors/cross-chain/insufficient-funds-gas-price-value.error.js +14 -0
  142. package/src/lib/errors/cross-chain/low-to-slippage.error.d.ts +6 -0
  143. package/src/lib/errors/cross-chain/low-to-slippage.error.js +10 -0
  144. package/src/lib/errors/cross-chain/max-gas-price-overflow.error.d.ts +8 -0
  145. package/src/lib/errors/cross-chain/max-gas-price-overflow.error.js +15 -0
  146. package/src/lib/errors/cross-chain/too-low-amount.error.d.ts +7 -0
  147. package/src/lib/errors/cross-chain/too-low-amount.error.js +14 -0
  148. package/src/lib/errors/cross-chain/unsupported-receiver-address.error.d.ts +4 -0
  149. package/src/lib/errors/cross-chain/unsupported-receiver-address.error.js +11 -0
  150. package/src/lib/errors/cross-chain/updated-rates-error.d.ts +10 -0
  151. package/src/lib/errors/cross-chain/updated-rates-error.js +17 -0
  152. package/src/lib/errors/models/rubic-api-error.d.ts +21 -0
  153. package/src/lib/errors/models/rubic-api-error.js +2 -0
  154. package/src/lib/errors/on-chain/on-chain-is-unavailable.error.d.ts +7 -0
  155. package/src/lib/errors/on-chain/on-chain-is-unavailable.error.js +14 -0
  156. package/src/lib/errors/proxy/unapproved-contract-error.d.ts +8 -0
  157. package/src/lib/errors/proxy/unapproved-contract-error.js +15 -0
  158. package/src/lib/errors/proxy/unapproved-method-error.d.ts +8 -0
  159. package/src/lib/errors/proxy/unapproved-method-error.js +15 -0
  160. package/src/lib/errors/proxy/unlisted-error.d.ts +9 -0
  161. package/src/lib/errors/proxy/unlisted-error.js +16 -0
  162. package/src/lib/errors/rubic-sdk.error.d.ts +6 -0
  163. package/src/lib/errors/rubic-sdk.error.js +13 -0
  164. package/src/lib/errors/swap/bridgers-pair-is-unavailable.error.d.ts +7 -0
  165. package/src/lib/errors/swap/bridgers-pair-is-unavailable.error.js +14 -0
  166. package/src/lib/errors/swap/failed-to-check-for-transaction-receipt.error.d.ts +8 -0
  167. package/src/lib/errors/swap/failed-to-check-for-transaction-receipt.error.js +15 -0
  168. package/src/lib/errors/swap/insufficient-funds-oneinch.error.d.ts +9 -0
  169. package/src/lib/errors/swap/insufficient-funds-oneinch.error.js +15 -0
  170. package/src/lib/errors/swap/insufficient-funds.error.d.ts +11 -0
  171. package/src/lib/errors/swap/insufficient-funds.error.js +18 -0
  172. package/src/lib/errors/swap/insufficient-liquidity.error.d.ts +7 -0
  173. package/src/lib/errors/swap/insufficient-liquidity.error.js +14 -0
  174. package/src/lib/errors/swap/lifi-pair-is-unavailable.error.d.ts +7 -0
  175. package/src/lib/errors/swap/lifi-pair-is-unavailable.error.js +14 -0
  176. package/src/lib/errors/swap/low-slippage-deflationary-token.error.d.ts +7 -0
  177. package/src/lib/errors/swap/low-slippage-deflationary-token.error.js +14 -0
  178. package/src/lib/errors/swap/low-slippage.error.d.ts +8 -0
  179. package/src/lib/errors/swap/low-slippage.error.js +15 -0
  180. package/src/lib/errors/swap/max-amount.error.d.ts +7 -0
  181. package/src/lib/errors/swap/max-amount.error.js +14 -0
  182. package/src/lib/errors/swap/max-decimals.error.d.ts +5 -0
  183. package/src/lib/errors/swap/max-decimals.error.js +12 -0
  184. package/src/lib/errors/swap/min-amount.error.d.ts +7 -0
  185. package/src/lib/errors/swap/min-amount.error.js +14 -0
  186. package/src/lib/errors/swap/no-linked-account-erros.d.ts +4 -0
  187. package/src/lib/errors/swap/no-linked-account-erros.js +11 -0
  188. package/src/lib/errors/swap/not-supported-blockchain.d.ts +8 -0
  189. package/src/lib/errors/swap/not-supported-blockchain.js +15 -0
  190. package/src/lib/errors/swap/not-supported-region.d.ts +7 -0
  191. package/src/lib/errors/swap/not-supported-region.js +14 -0
  192. package/src/lib/errors/swap/not-supported-tokens.error.d.ts +7 -0
  193. package/src/lib/errors/swap/not-supported-tokens.error.js +14 -0
  194. package/src/lib/errors/swap/not-whitelisted-provider.error.d.ts +10 -0
  195. package/src/lib/errors/swap/not-whitelisted-provider.error.js +17 -0
  196. package/src/lib/errors/swap/simulation-failed.error.d.ts +6 -0
  197. package/src/lib/errors/swap/simulation-failed.error.js +12 -0
  198. package/src/lib/errors/swap/swap-error-on-provider-side.d.ts +7 -0
  199. package/src/lib/errors/swap/swap-error-on-provider-side.js +14 -0
  200. package/src/lib/errors/swap/swap-request.error.d.ts +7 -0
  201. package/src/lib/errors/swap/swap-request.error.js +14 -0
  202. package/src/lib/errors/swap/trade-expired.error.d.ts +4 -0
  203. package/src/lib/errors/swap/trade-expired.error.js +11 -0
  204. package/src/lib/errors/swap/unnecessary-approve.error.d.ts +7 -0
  205. package/src/lib/errors/swap/unnecessary-approve.error.js +14 -0
  206. package/src/lib/errors/swap/wallet-not-connected.error.d.ts +8 -0
  207. package/src/lib/errors/swap/wallet-not-connected.error.js +15 -0
  208. package/src/lib/errors/swap/wrong-network.error.d.ts +10 -0
  209. package/src/lib/errors/swap/wrong-network.error.js +16 -0
  210. package/src/lib/utils/constants/web3-pure-store.js +10 -5
  211. package/src/lib/utils/models/evm-transaction-config.d.ts +2 -0
  212. package/src/lib/utils/web3-types/zcash-web3-pure.d.ts +5 -0
  213. package/src/lib/utils/web3-types/zcash-web3-pure.js +17 -0
  214. package/src/lib/adapter/adapters/abstract-adapter.d.ts +0 -23
  215. package/src/lib/adapter/adapters/abstract-adapter.js +0 -59
  216. package/src/lib/adapter/adapters/bitcoin-adapter.d.ts +0 -18
  217. package/src/lib/adapter/adapters/evm-adapter.d.ts +0 -59
  218. package/src/lib/adapter/adapters/sui-adapter.d.ts +0 -17
  219. package/src/lib/adapter/adapters/ton-adapter.d.ts +0 -22
  220. package/src/lib/adapter/adapters/ton-adapter.js +0 -100
  221. package/src/lib/adapter/adapters/tron-adapter.d.ts +0 -37
  222. /package/src/lib/adapter/adapters/{models/gas-price.js → adapter-bitcoin/models/btc-send-tx-params.js} +0 -0
  223. /package/src/lib/adapter/adapters/{utils → adapter-ton/services}/ton-api.service.js +0 -0
  224. /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 { SolanaAdapter } from './adapters/solana-adapter';
2
- import { TronAdapter } from './adapters/tron-adapter';
3
- import { AbstractAdapter } from './adapters/abstract-adapter';
4
- import { WalletProvider } from './constants/models/wallet-provider';
5
- import { BlockchainName, EvmBlockchainName, SolanaBlockchainName, TronBlockchainName, ICustomLogger, HttpClient, TonBlockchainName, BitcoinBlockchainName, SuiBlockchainName } from '@cryptorubic/core';
6
- import { TonAdapter } from './adapters/ton-adapter';
7
- import { TonAdapterConfig } from './adapters/models/ton-adapter-config';
8
- import { EvmAdapter } from './adapters/evm-adapter';
9
- import { BitcoinAdapter } from './adapters/bitcoin-adapter';
10
- import { SuiAdapter } from './adapters/sui-adapter';
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
- static createFactory(rpcList: Partial<Record<EvmBlockchainName, string[]>>, httpClient?: HttpClient, tonParams?: TonAdapterConfig, createLogger?: (label: string) => ICustomLogger): Promise<BlockchainAdapterFactoryService>;
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(walletProvider: WalletProvider): void;
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 sui_adapter_1 = require("./adapters/sui-adapter");
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, httpClient, tonParams) {
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
- static async createFactory(rpcList, httpClient, tonParams, createLogger) {
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, resolvedHttpClient, tonParams);
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 && typeof rpcs[0] === 'string') {
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(walletProvider) {
89
- if (walletProvider?.[core_1.CHAIN_TYPE.EVM]?.core) {
90
- Object.entries(this.adapterStore).forEach(([blockchain, adapter]) => {
91
- const provider = walletProvider[core_1.CHAIN_TYPE.EVM].core;
92
- const chain = viem_blockchain_mapping_1.viemBlockchainMapping[blockchain];
93
- adapter.wallet = (0, viem_1.createWalletClient)({
94
- chain: chain,
95
- transport: (0, viem_1.custom)(provider)
96
- });
97
- adapter.walletAddress = walletProvider[core_1.CHAIN_TYPE.EVM].address;
98
- });
99
- }
100
- if (walletProvider?.[core_1.CHAIN_TYPE.SOLANA]?.core && this.adapterStore?.[core_1.BLOCKCHAIN_NAME.SOLANA]) {
101
- const store = this.adapterStore[core_1.BLOCKCHAIN_NAME.SOLANA];
102
- store.wallet = walletProvider[core_1.CHAIN_TYPE.SOLANA].core;
103
- store.walletAddress = walletProvider[core_1.CHAIN_TYPE.SOLANA].address;
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xeF65be81CF435238E742487De1fc27f1940D8B26'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0x1AA0663FBA06B1D5482E7CaA675aa12fB04F4D0f'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xF9cda624FBC7e059355ce98a31693d299FACd963'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0x825267E0fA5CAe92F98540828a54198dcB3Eaeb5'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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: '0xcA11bde05977b3631167028862bE2a173976CA11'
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';
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -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,2 @@
1
+ import { EnvType } from './models/env-type';
2
+ export declare const rubicApiLinkMapping: Record<EnvType, string>;
@@ -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,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -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
+ }