@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.
Files changed (293) hide show
  1. package/package.json +42 -15
  2. package/src/index.d.ts +130 -19
  3. package/src/index.js +130 -17
  4. package/src/lib/adapter/adapters/adapter-bitcoin/bitcoin-adapter.d.ts +40 -0
  5. package/src/lib/adapter/adapters/adapter-bitcoin/bitcoin-adapter.js +177 -0
  6. package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-send-tx-params.d.ts +5 -0
  7. package/src/lib/adapter/adapters/adapter-bitcoin/models/btc-send-tx-params.js +2 -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/adapter-evm/evm-adapter.js +498 -0
  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 +263 -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/adapter-solana/services/solana-tokens-service.d.ts +22 -0
  29. package/src/lib/adapter/adapters/adapter-solana/services/solana-tokens-service.js +138 -0
  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/adapter-solana/solana-adapter.d.ts +49 -0
  33. package/src/lib/adapter/adapters/adapter-solana/solana-adapter.js +231 -0
  34. package/src/lib/adapter/adapters/adapter-stellar/constants/fake-stellar-wallet.d.ts +1 -0
  35. package/src/lib/adapter/adapters/adapter-stellar/constants/fake-stellar-wallet.js +4 -0
  36. package/src/lib/adapter/adapters/adapter-stellar/models/stellar-client.d.ts +2 -0
  37. package/src/lib/adapter/adapters/adapter-stellar/models/stellar-client.js +2 -0
  38. package/src/lib/adapter/adapters/adapter-stellar/models/stellar-rpc-provider.d.ts +6 -0
  39. package/src/lib/adapter/adapters/adapter-stellar/models/stellar-rpc-provider.js +2 -0
  40. package/src/lib/adapter/adapters/adapter-stellar/models/stellar-send-tx-params.d.ts +8 -0
  41. package/src/lib/adapter/adapters/adapter-stellar/models/stellar-send-tx-params.js +2 -0
  42. package/src/lib/adapter/adapters/adapter-stellar/models/stellar-wallet.d.ts +87 -0
  43. package/src/lib/adapter/adapters/adapter-stellar/models/stellar-wallet.js +2 -0
  44. package/src/lib/adapter/adapters/adapter-stellar/signer/stellar-adapter-signer.d.ts +18 -0
  45. package/src/lib/adapter/adapters/adapter-stellar/signer/stellar-adapter-signer.js +75 -0
  46. package/src/lib/adapter/adapters/adapter-stellar/stellar-adapter.d.ts +54 -0
  47. package/src/lib/adapter/adapters/adapter-stellar/stellar-adapter.js +253 -0
  48. package/src/lib/adapter/adapters/adapter-sui/models/sui-send-tx-params.d.ts +8 -0
  49. package/src/lib/adapter/adapters/adapter-sui/models/sui-send-tx-params.js +2 -0
  50. package/src/lib/adapter/adapters/adapter-sui/signer/sui-adapter-signer.d.ts +17 -0
  51. package/src/lib/adapter/adapters/adapter-sui/signer/sui-adapter-signer.js +55 -0
  52. package/src/lib/adapter/adapters/adapter-sui/sui-adapter.d.ts +32 -0
  53. package/src/lib/adapter/adapters/adapter-sui/sui-adapter.js +111 -0
  54. package/src/lib/adapter/adapters/adapter-ton/models/ton-send-tx-params.d.ts +26 -0
  55. package/src/lib/adapter/adapters/adapter-ton/models/ton-send-tx-params.js +2 -0
  56. package/src/lib/adapter/adapters/{utils → adapter-ton/services}/ton-api.service.d.ts +8 -7
  57. package/src/lib/adapter/adapters/{utils → adapter-ton/services}/ton-api.service.js +39 -56
  58. package/src/lib/adapter/adapters/adapter-ton/signer/ton-adapter-signer.d.ts +43 -0
  59. package/src/lib/adapter/adapters/adapter-ton/signer/ton-adapter-signer.js +166 -0
  60. package/src/lib/adapter/adapters/adapter-ton/ton-adapter.d.ts +32 -0
  61. package/src/lib/adapter/adapters/adapter-ton/ton-adapter.js +104 -0
  62. package/src/lib/adapter/adapters/adapter-tron/models/tron-send-tx-params.d.ts +13 -0
  63. package/src/lib/adapter/adapters/adapter-tron/models/tron-send-tx-params.js +2 -0
  64. package/src/lib/adapter/adapters/adapter-tron/models/tron-transfer-tx-params.d.ts +7 -0
  65. package/src/lib/adapter/adapters/adapter-tron/models/tron-transfer-tx-params.js +2 -0
  66. package/src/lib/adapter/adapters/adapter-tron/models/tron-web-provider.d.ts +4 -0
  67. package/src/lib/adapter/adapters/adapter-tron/models/tron-web-provider.js +2 -0
  68. package/src/lib/adapter/adapters/adapter-tron/signer/tron-adapter-signer.d.ts +19 -0
  69. package/src/lib/adapter/adapters/adapter-tron/signer/tron-adapter-signer.js +81 -0
  70. package/src/lib/adapter/adapters/adapter-tron/tron-adapter.d.ts +57 -0
  71. package/src/lib/adapter/adapters/{tron-adapter.js → adapter-tron/tron-adapter.js} +145 -70
  72. package/src/lib/adapter/adapters/adapter-tron/utils/parse-tron-error.d.ts +2 -0
  73. package/src/lib/adapter/adapters/adapter-tron/utils/parse-tron-error.js +20 -0
  74. package/src/lib/adapter/adapters/common/abstract-adapter.d.ts +84 -0
  75. package/src/lib/adapter/adapters/common/abstract-adapter.js +82 -0
  76. package/src/lib/adapter/adapters/common/signer/abstract-adapter-signer.d.ts +22 -0
  77. package/src/lib/adapter/adapters/common/signer/abstract-adapter-signer.js +42 -0
  78. package/src/lib/adapter/adapters/constants/possible-errors.d.ts +1 -0
  79. package/src/lib/adapter/adapters/constants/possible-errors.js +14 -0
  80. package/src/lib/adapter/adapters/constants/tron-multicall-abi.d.ts +1 -1
  81. package/src/lib/adapter/adapters/constants/uni-v3-permit-abi.d.ts +2 -0
  82. package/src/lib/adapter/adapters/constants/uni-v3-permit-abi.js +72 -0
  83. package/src/lib/adapter/adapters/models/approve-adapter.d.ts +20 -6
  84. package/src/lib/adapter/adapters/models/approve-adapter.js +4 -0
  85. package/src/lib/adapter/adapters/models/basic-transaction-options.d.ts +7 -0
  86. package/src/lib/adapter/adapters/models/basic-transaction-options.js +2 -0
  87. package/src/lib/adapter/adapters/models/bitcoin-user-address-info.d.ts +53 -0
  88. package/src/lib/adapter/adapters/models/bitcoin-user-address-info.js +2 -0
  89. package/src/lib/adapter/adapters/models/btc-wallet-provider.d.ts +10 -0
  90. package/src/lib/adapter/adapters/models/btc-wallet-provider.js +2 -0
  91. package/src/lib/adapter/adapters/models/evm-adapter-options.d.ts +1 -1
  92. package/src/lib/adapter/adapters/models/evm-web3-public-models/batch-call.d.ts +5 -0
  93. package/src/lib/adapter/adapters/models/evm-web3-public-models/batch-call.js +2 -0
  94. package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-call.d.ts +4 -0
  95. package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-call.js +2 -0
  96. package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-multicall-response.d.ts +4 -0
  97. package/src/lib/adapter/adapters/models/evm-web3-public-models/evm-multicall-response.js +2 -0
  98. package/src/lib/adapter/adapters/models/evm-web3-public-models/gas-price-viem.d.ts +18 -0
  99. package/src/lib/adapter/adapters/models/evm-web3-public-models/gas-price-viem.js +2 -0
  100. package/src/lib/adapter/adapters/models/evm-web3-public-models/gas-price.d.ts +22 -0
  101. package/src/lib/adapter/adapters/models/evm-web3-public-models/gas-price.js +2 -0
  102. package/src/lib/adapter/adapters/models/evm-web3-public-models/permit2-contract-types.d.ts +10 -0
  103. package/src/lib/adapter/adapters/models/evm-web3-public-models/permit2-contract-types.js +2 -0
  104. package/src/lib/adapter/adapters/models/evm-web3-public-models/rpc-response.d.ts +5 -0
  105. package/src/lib/adapter/adapters/models/evm-web3-public-models/rpc-response.js +2 -0
  106. package/src/lib/adapter/adapters/models/old-features-models/contract-params.d.ts +23 -0
  107. package/src/lib/adapter/adapters/models/old-features-models/contract-params.js +2 -0
  108. package/src/lib/adapter/adapters/models/old-features-models/encode-transaction-options.d.ts +32 -0
  109. package/src/lib/adapter/adapters/models/old-features-models/encode-transaction-options.js +2 -0
  110. package/src/lib/adapter/adapters/models/old-features-models/is-deflation-token.d.ts +6 -0
  111. package/src/lib/adapter/adapters/models/old-features-models/is-deflation-token.js +2 -0
  112. package/src/lib/adapter/adapters/models/old-features-models/non-evm-chain-address-correct-response.d.ts +5 -0
  113. package/src/lib/adapter/adapters/models/old-features-models/non-evm-chain-address-correct-response.js +2 -0
  114. package/src/lib/adapter/adapters/models/old-features-models/swap-transaction-options.d.ts +65 -0
  115. package/src/lib/adapter/adapters/models/old-features-models/swap-transaction-options.js +2 -0
  116. package/src/lib/adapter/adapters/models/permit2-contract-types.d.ts +1 -0
  117. package/src/lib/adapter/adapters/models/permit2-contract-types.js +2 -0
  118. package/src/lib/adapter/adapters/models/solana-web3-types.d.ts +60 -0
  119. package/src/lib/adapter/adapters/models/solana-web3-types.js +2 -0
  120. package/src/lib/adapter/adapters/models/status-manager-models/tx-status-data.d.ts +8 -0
  121. package/src/lib/adapter/adapters/models/status-manager-models/tx-status-data.js +2 -0
  122. package/src/lib/adapter/adapters/models/token-models.d.ts +1 -0
  123. package/src/lib/adapter/adapters/models/token-models.js +2 -0
  124. package/src/lib/adapter/adapters/models/ton-adapter-config.d.ts +2 -2
  125. package/src/lib/adapter/adapters/models/ton-api-config.d.ts +1 -1
  126. package/src/lib/adapter/adapters/models/tonapi-models.d.ts +2 -2
  127. package/src/lib/adapter/adapters/models/web3-public-models/contract-multicall-response.d.ts +5 -0
  128. package/src/lib/adapter/adapters/models/web3-public-models/contract-multicall-response.js +2 -0
  129. package/src/lib/adapter/adapters/models/web3-public-models/method-data.d.ts +4 -0
  130. package/src/lib/adapter/adapters/models/web3-public-models/method-data.js +2 -0
  131. package/src/lib/adapter/adapters/models/web3-public-models/supported-token-field.d.ts +1 -0
  132. package/src/lib/adapter/adapters/models/web3-public-models/supported-token-field.js +2 -0
  133. package/src/lib/adapter/adapters/models/web3-public-models/tx-status.d.ts +13 -0
  134. package/src/lib/adapter/adapters/models/web3-public-models/tx-status.js +15 -0
  135. package/src/lib/adapter/adapters/utils/errors.d.ts +2 -0
  136. package/src/lib/adapter/adapters/utils/errors.js +10 -0
  137. package/src/lib/adapter/adapters/utils/options.d.ts +10 -0
  138. package/src/lib/adapter/adapters/utils/options.js +59 -0
  139. package/src/lib/adapter/adapters/utils/timeout.d.ts +1 -0
  140. package/src/lib/adapter/adapters/utils/timeout.js +15 -0
  141. package/src/lib/adapter/adapters/utils/waitFor.d.ts +1 -0
  142. package/src/lib/adapter/adapters/utils/waitFor.js +6 -0
  143. package/src/lib/adapter/blockchain-adapter-factory.service.d.ts +20 -10
  144. package/src/lib/adapter/blockchain-adapter-factory.service.js +58 -53
  145. package/src/lib/adapter/constants/chain-configs/chain-configs.d.ts +1 -1
  146. package/src/lib/adapter/constants/chain-configs/chain-configs.js +603 -138
  147. package/src/lib/adapter/constants/models/env-type.d.ts +1 -0
  148. package/src/lib/adapter/constants/models/env-type.js +2 -0
  149. package/src/lib/adapter/constants/models/solana-web3.d.ts +1 -1
  150. package/src/lib/adapter/constants/models/wallet-provider.d.ts +9 -3
  151. package/src/lib/adapter/constants/rubic-api-link-mapping.d.ts +2 -0
  152. package/src/lib/adapter/constants/rubic-api-link-mapping.js +16 -0
  153. package/src/lib/adapter/constants/viem-blockchain-mapping.d.ts +1 -1
  154. package/src/lib/adapter/constants/viem-blockchain-mapping.js +16 -7
  155. package/src/lib/adapter/models/create-factory-params.d.ts +24 -0
  156. package/src/lib/adapter/models/create-factory-params.js +2 -0
  157. package/src/lib/errors/blockchain/deflation-token.error.d.ts +11 -0
  158. package/src/lib/errors/blockchain/deflation-token.error.js +16 -0
  159. package/src/lib/errors/blockchain/healthcheck.error.d.ts +8 -0
  160. package/src/lib/errors/blockchain/healthcheck.error.js +15 -0
  161. package/src/lib/errors/blockchain/inactive-account.error.d.ts +4 -0
  162. package/src/lib/errors/blockchain/inactive-account.error.js +11 -0
  163. package/src/lib/errors/blockchain/invalid-address.error.d.ts +8 -0
  164. package/src/lib/errors/blockchain/invalid-address.error.js +15 -0
  165. package/src/lib/errors/blockchain/low-gas.error.d.ts +7 -0
  166. package/src/lib/errors/blockchain/low-gas.error.js +14 -0
  167. package/src/lib/errors/blockchain/transaction-reverted.error.d.ts +7 -0
  168. package/src/lib/errors/blockchain/transaction-reverted.error.js +14 -0
  169. package/src/lib/errors/blockchain/tron-insufficient-native-balance.d.ts +7 -0
  170. package/src/lib/errors/blockchain/tron-insufficient-native-balance.js +14 -0
  171. package/src/lib/errors/blockchain/tron-transaction-expired.d.ts +7 -0
  172. package/src/lib/errors/blockchain/tron-transaction-expired.js +14 -0
  173. package/src/lib/errors/blockchain/user-reject.error.d.ts +7 -0
  174. package/src/lib/errors/blockchain/user-reject.error.js +14 -0
  175. package/src/lib/errors/blockchain/wrong-from-address.error.d.ts +7 -0
  176. package/src/lib/errors/blockchain/wrong-from-address.error.js +14 -0
  177. package/src/lib/errors/blockchain/wrong-receiver-address.error.d.ts +7 -0
  178. package/src/lib/errors/blockchain/wrong-receiver-address.error.js +14 -0
  179. package/src/lib/errors/common/timeout.error.d.ts +4 -0
  180. package/src/lib/errors/common/timeout.error.js +12 -0
  181. package/src/lib/errors/common/tx-reverted-in-chain.error.d.ts +4 -0
  182. package/src/lib/errors/common/tx-reverted-in-chain.error.js +11 -0
  183. package/src/lib/errors/cross-chain/cross-chain-is-unavailable.error.d.ts +7 -0
  184. package/src/lib/errors/cross-chain/cross-chain-is-unavailable.error.js +14 -0
  185. package/src/lib/errors/cross-chain/insufficient-funds-gas-price-value.error.d.ts +7 -0
  186. package/src/lib/errors/cross-chain/insufficient-funds-gas-price-value.error.js +14 -0
  187. package/src/lib/errors/cross-chain/low-to-slippage.error.d.ts +6 -0
  188. package/src/lib/errors/cross-chain/low-to-slippage.error.js +10 -0
  189. package/src/lib/errors/cross-chain/max-gas-price-overflow.error.d.ts +8 -0
  190. package/src/lib/errors/cross-chain/max-gas-price-overflow.error.js +15 -0
  191. package/src/lib/errors/cross-chain/too-low-amount.error.d.ts +7 -0
  192. package/src/lib/errors/cross-chain/too-low-amount.error.js +14 -0
  193. package/src/lib/errors/cross-chain/unsupported-receiver-address.error.d.ts +4 -0
  194. package/src/lib/errors/cross-chain/unsupported-receiver-address.error.js +11 -0
  195. package/src/lib/errors/cross-chain/updated-rates-error.d.ts +10 -0
  196. package/src/lib/errors/cross-chain/updated-rates-error.js +17 -0
  197. package/src/lib/errors/models/rubic-api-error.d.ts +21 -0
  198. package/src/lib/errors/models/rubic-api-error.js +2 -0
  199. package/src/lib/errors/on-chain/on-chain-is-unavailable.error.d.ts +7 -0
  200. package/src/lib/errors/on-chain/on-chain-is-unavailable.error.js +14 -0
  201. package/src/lib/errors/proxy/unapproved-contract-error.d.ts +8 -0
  202. package/src/lib/errors/proxy/unapproved-contract-error.js +15 -0
  203. package/src/lib/errors/proxy/unapproved-method-error.d.ts +8 -0
  204. package/src/lib/errors/proxy/unapproved-method-error.js +15 -0
  205. package/src/lib/errors/proxy/unlisted-error.d.ts +9 -0
  206. package/src/lib/errors/proxy/unlisted-error.js +16 -0
  207. package/src/lib/errors/rubic-sdk.error.d.ts +6 -0
  208. package/src/lib/errors/rubic-sdk.error.js +13 -0
  209. package/src/lib/errors/swap/bridgers-pair-is-unavailable.error.d.ts +7 -0
  210. package/src/lib/errors/swap/bridgers-pair-is-unavailable.error.js +14 -0
  211. package/src/lib/errors/swap/failed-to-check-for-transaction-receipt.error.d.ts +8 -0
  212. package/src/lib/errors/swap/failed-to-check-for-transaction-receipt.error.js +15 -0
  213. package/src/lib/errors/swap/insufficient-funds-oneinch.error.d.ts +9 -0
  214. package/src/lib/errors/swap/insufficient-funds-oneinch.error.js +15 -0
  215. package/src/lib/errors/swap/insufficient-funds.error.d.ts +11 -0
  216. package/src/lib/errors/swap/insufficient-funds.error.js +18 -0
  217. package/src/lib/errors/swap/insufficient-liquidity.error.d.ts +7 -0
  218. package/src/lib/errors/swap/insufficient-liquidity.error.js +14 -0
  219. package/src/lib/errors/swap/lifi-pair-is-unavailable.error.d.ts +7 -0
  220. package/src/lib/errors/swap/lifi-pair-is-unavailable.error.js +14 -0
  221. package/src/lib/errors/swap/low-slippage-deflationary-token.error.d.ts +7 -0
  222. package/src/lib/errors/swap/low-slippage-deflationary-token.error.js +14 -0
  223. package/src/lib/errors/swap/low-slippage.error.d.ts +8 -0
  224. package/src/lib/errors/swap/low-slippage.error.js +15 -0
  225. package/src/lib/errors/swap/max-amount.error.d.ts +7 -0
  226. package/src/lib/errors/swap/max-amount.error.js +14 -0
  227. package/src/lib/errors/swap/max-decimals.error.d.ts +5 -0
  228. package/src/lib/errors/swap/max-decimals.error.js +12 -0
  229. package/src/lib/errors/swap/min-amount.error.d.ts +7 -0
  230. package/src/lib/errors/swap/min-amount.error.js +14 -0
  231. package/src/lib/errors/swap/no-linked-account-erros.d.ts +4 -0
  232. package/src/lib/errors/swap/no-linked-account-erros.js +11 -0
  233. package/src/lib/errors/swap/not-supported-blockchain.d.ts +8 -0
  234. package/src/lib/errors/swap/not-supported-blockchain.js +15 -0
  235. package/src/lib/errors/swap/not-supported-region.d.ts +7 -0
  236. package/src/lib/errors/swap/not-supported-region.js +14 -0
  237. package/src/lib/errors/swap/not-supported-tokens.error.d.ts +7 -0
  238. package/src/lib/errors/swap/not-supported-tokens.error.js +14 -0
  239. package/src/lib/errors/swap/not-whitelisted-provider.error.d.ts +10 -0
  240. package/src/lib/errors/swap/not-whitelisted-provider.error.js +17 -0
  241. package/src/lib/errors/swap/simulation-failed.error.d.ts +6 -0
  242. package/src/lib/errors/swap/simulation-failed.error.js +12 -0
  243. package/src/lib/errors/swap/swap-error-on-provider-side.d.ts +7 -0
  244. package/src/lib/errors/swap/swap-error-on-provider-side.js +14 -0
  245. package/src/lib/errors/swap/swap-request.error.d.ts +7 -0
  246. package/src/lib/errors/swap/swap-request.error.js +14 -0
  247. package/src/lib/errors/swap/trade-expired.error.d.ts +4 -0
  248. package/src/lib/errors/swap/trade-expired.error.js +11 -0
  249. package/src/lib/errors/swap/unnecessary-approve.error.d.ts +7 -0
  250. package/src/lib/errors/swap/unnecessary-approve.error.js +14 -0
  251. package/src/lib/errors/swap/wallet-not-connected.error.d.ts +8 -0
  252. package/src/lib/errors/swap/wallet-not-connected.error.js +15 -0
  253. package/src/lib/errors/swap/wrong-network.error.d.ts +10 -0
  254. package/src/lib/errors/swap/wrong-network.error.js +16 -0
  255. package/src/lib/utils/constants/changenow-api-blockchain.d.ts +1 -2
  256. package/src/lib/utils/constants/changenow-api-blockchain.js +1 -1
  257. package/src/lib/utils/constants/web3-pure-store.d.ts +2 -2
  258. package/src/lib/utils/constants/web3-pure-store.js +20 -18
  259. package/src/lib/utils/models/contract-multicall-response.d.ts +1 -1
  260. package/src/lib/utils/models/evm-transaction-config.d.ts +2 -0
  261. package/src/lib/utils/models/primitive-types.d.ts +1 -1
  262. package/src/lib/utils/models/stellar-transaction-config.d.ts +3 -0
  263. package/src/lib/utils/models/stellar-transaction-config.js +2 -0
  264. package/src/lib/utils/models/tron-transaction-config.d.ts +1 -1
  265. package/src/lib/utils/web3-pure.d.ts +2 -2
  266. package/src/lib/utils/web3-pure.js +6 -7
  267. package/src/lib/utils/web3-types/bitcoin-web3-pure.d.ts +1 -1
  268. package/src/lib/utils/web3-types/common-web3-pure.js +0 -2
  269. package/src/lib/utils/web3-types/evm-web3-pure.d.ts +1 -1
  270. package/src/lib/utils/web3-types/icp-web3-pure.d.ts +1 -1
  271. package/src/lib/utils/web3-types/near-web3-pure.d.ts +6 -0
  272. package/src/lib/utils/web3-types/near-web3-pure.js +24 -0
  273. package/src/lib/utils/web3-types/solana-web3-pure.d.ts +2 -1
  274. package/src/lib/utils/web3-types/solana-web3-pure.js +11 -1
  275. package/src/lib/utils/web3-types/stellar-web3-pure.d.ts +5 -0
  276. package/src/lib/utils/web3-types/stellar-web3-pure.js +30 -0
  277. package/src/lib/utils/web3-types/sui-web3-pure.d.ts +8 -0
  278. package/src/lib/utils/web3-types/sui-web3-pure.js +27 -0
  279. package/src/lib/utils/web3-types/ton-web3-pure.d.ts +2 -1
  280. package/src/lib/utils/web3-types/ton-web3-pure.js +6 -0
  281. package/src/lib/utils/web3-types/tron-web3-pure.d.ts +8 -6
  282. package/src/lib/utils/web3-types/tron-web3-pure.js +18 -4
  283. package/src/lib/utils/web3-types/zcash-web3-pure.d.ts +5 -0
  284. package/src/lib/utils/web3-types/zcash-web3-pure.js +17 -0
  285. package/src/lib/adapter/adapters/abstract-adapter.d.ts +0 -19
  286. package/src/lib/adapter/adapters/abstract-adapter.js +0 -49
  287. package/src/lib/adapter/adapters/evm-adapter.d.ts +0 -34
  288. package/src/lib/adapter/adapters/evm-adapter.js +0 -247
  289. package/src/lib/adapter/adapters/solana-adapter.d.ts +0 -15
  290. package/src/lib/adapter/adapters/solana-adapter.js +0 -59
  291. package/src/lib/adapter/adapters/ton-adapter.d.ts +0 -22
  292. package/src/lib/adapter/adapters/ton-adapter.js +0 -100
  293. 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,4 @@
1
+ import { RubicSdkError } from '../rubic-sdk.error';
2
+ export declare class TradeExpiredError extends RubicSdkError {
3
+ constructor();
4
+ }
@@ -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,7 @@
1
+ import { RubicSdkError } from '../rubic-sdk.error';
2
+ /**
3
+ * Thrown, when approve method is called, but there is enough allowance.
4
+ */
5
+ export declare class UnnecessaryApproveError extends RubicSdkError {
6
+ constructor();
7
+ }
@@ -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,8 @@
1
+ import { RubicSdkError } from '../rubic-sdk.error';
2
+ /**
3
+ * Thrown, when method, which requires connected wallet, is called without
4
+ * wallet being connected.
5
+ */
6
+ export declare class WalletNotConnectedError extends RubicSdkError {
7
+ constructor();
8
+ }
@@ -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 "@cryptorubic/core";
2
- import { CommonWeb3Pure } from "../web3-types/common-web3-pure";
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 changenow_api_blockchain_1 = require("./changenow-api-blockchain");
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 common_web3_pure_1 = require("../web3-types/common-web3-pure");
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
- cnApiKey: changenow_api_blockchain_1.changenowApiBlockchain.CARDANO,
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,4 +1,4 @@
1
- import { Web3PrimitiveType } from "./primitive-types";
1
+ import { Web3PrimitiveType } from './primitive-types';
2
2
  export interface ContractMulticallResponse<Output extends Web3PrimitiveType> {
3
3
  success: boolean;
4
4
  output: Output | null;
@@ -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,4 +1,4 @@
1
- import { BigNumber } from "@ethersproject/bignumber";
1
+ import { BigNumber } from '@ethersproject/bignumber';
2
2
  export type Web3PrimitiveType = number | string | boolean | Web3PrimitiveType[] | {
3
3
  [key: string]: Web3PrimitiveType;
4
4
  };
@@ -0,0 +1,3 @@
1
+ export interface StellarTransactionConfig {
2
+ transaction: string;
3
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,4 +1,4 @@
1
- import { TronParameters } from "./tron-parameters";
1
+ import { TronParameters } from './tron-parameters';
2
2
  export interface TronTransactionConfig {
3
3
  signature: string;
4
4
  arguments: TronParameters;
@@ -1,5 +1,5 @@
1
- import { BlockchainName, ChainType } from "@cryptorubic/core";
2
- import { CommonWeb3Pure } from "./web3-types/common-web3-pure";
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;
@@ -1,4 +1,4 @@
1
- import { CommonWeb3Pure } from "./common-web3-pure";
1
+ import { CommonWeb3Pure } from './common-web3-pure';
2
2
  export declare class BitcoinWeb3Pure extends CommonWeb3Pure {
3
3
  constructor();
4
4
  isAddressCorrect(address: string): Promise<boolean>;
@@ -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;
@@ -1,4 +1,4 @@
1
- import { CommonWeb3Pure } from "./common-web3-pure";
1
+ import { CommonWeb3Pure } from './common-web3-pure';
2
2
  export declare class EvmWeb3Pure extends CommonWeb3Pure {
3
3
  constructor();
4
4
  isAddressCorrect(address: string): Promise<boolean>;
@@ -1,4 +1,4 @@
1
- import { CommonWeb3Pure } from "./common-web3-pure";
1
+ import { CommonWeb3Pure } from './common-web3-pure';
2
2
  export declare class IcpWeb3Pure extends CommonWeb3Pure {
3
3
  constructor();
4
4
  isAddressCorrect(address: string): Promise<boolean>;
@@ -0,0 +1,6 @@
1
+ import { CommonWeb3Pure } from './common-web3-pure';
2
+ export declare class NearWeb3Pure extends CommonWeb3Pure {
3
+ readonly nativeTokenAddress = "near";
4
+ constructor();
5
+ isAddressCorrect(address: string): Promise<boolean>;
6
+ }
@@ -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 "./common-web3-pure";
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,5 @@
1
+ import { CommonWeb3Pure } from './common-web3-pure';
2
+ export declare class StellarWeb3Pure extends CommonWeb3Pure {
3
+ constructor();
4
+ isAddressCorrect(address: string): Promise<boolean>;
5
+ }
@@ -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;
@@ -1,4 +1,5 @@
1
- import { CommonWeb3Pure } from "./common-web3-pure";
1
+ import { CommonWeb3Pure } from './common-web3-pure';
2
2
  export declare class TonWeb3Pure extends CommonWeb3Pure {
3
3
  constructor();
4
+ isAddressCorrect(address: string): Promise<boolean>;
4
5
  }
@@ -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 "./common-web3-pure";
2
- import { TronParameters } from "../models/tron-parameters";
3
- import { TronWeb3PrimitiveType, Web3PrimitiveType } from "../models/primitive-types";
4
- import { FunctionFragment } from "tronweb/src/types/ABI";
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: FunctionFragment[], methodName: string, methodArguments: unknown[]): string;
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: FunctionFragment[], response: string): Web3PrimitiveType;
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
  }