@cryptorubic/web3 1.0.0-alpha.no-sdk.8 → 1.0.0-alpha.no-sdk.9

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 (36) hide show
  1. package/package.json +1 -1
  2. package/src/index.d.ts +1 -1
  3. package/src/index.js +1 -1
  4. package/src/lib/adapter/adapters/adapter-bitcoin/bitcoin-adapter.d.ts +2 -2
  5. package/src/lib/adapter/adapters/adapter-bitcoin/bitcoin-adapter.js +2 -2
  6. package/src/lib/adapter/adapters/adapter-bitcoin/client/bitcoin-adapter-client.d.ts +2 -2
  7. package/src/lib/adapter/adapters/adapter-bitcoin/client/bitcoin-adapter-client.js +2 -2
  8. package/src/lib/adapter/adapters/adapter-evm/client/evm-adapter-client.d.ts +3 -3
  9. package/src/lib/adapter/adapters/adapter-evm/client/evm-adapter-client.js +3 -3
  10. package/src/lib/adapter/adapters/adapter-evm/evm-adapter.d.ts +2 -2
  11. package/src/lib/adapter/adapters/adapter-evm/evm-adapter.js +2 -2
  12. package/src/lib/adapter/adapters/adapter-solana/client/solana-adapter-client.d.ts +2 -2
  13. package/src/lib/adapter/adapters/adapter-solana/client/solana-adapter-client.js +2 -2
  14. package/src/lib/adapter/adapters/adapter-solana/solana-adapter.d.ts +2 -2
  15. package/src/lib/adapter/adapters/adapter-solana/solana-adapter.js +2 -2
  16. package/src/lib/adapter/adapters/adapter-sui/client/sui-adapter-client.d.ts +2 -2
  17. package/src/lib/adapter/adapters/adapter-sui/client/sui-adapter-client.js +2 -2
  18. package/src/lib/adapter/adapters/adapter-sui/sui-adapter.d.ts +2 -2
  19. package/src/lib/adapter/adapters/adapter-sui/sui-adapter.js +2 -2
  20. package/src/lib/adapter/adapters/adapter-ton/client/ton-adapter-client.d.ts +2 -2
  21. package/src/lib/adapter/adapters/adapter-ton/client/ton-adapter-client.js +2 -2
  22. package/src/lib/adapter/adapters/adapter-ton/ton-adapter.d.ts +2 -2
  23. package/src/lib/adapter/adapters/adapter-ton/ton-adapter.js +2 -2
  24. package/src/lib/adapter/adapters/adapter-tron/client/tron-adapter-client.d.ts +2 -2
  25. package/src/lib/adapter/adapters/adapter-tron/client/tron-adapter-client.js +2 -2
  26. package/src/lib/adapter/adapters/adapter-tron/models/tron-web-provider.d.ts +4 -0
  27. package/src/lib/adapter/adapters/adapter-tron/tron-adapter.d.ts +2 -2
  28. package/src/lib/adapter/adapters/adapter-tron/tron-adapter.js +2 -2
  29. package/src/lib/adapter/adapters/common/client/abstract-adapter-client.d.ts +3 -3
  30. package/src/lib/adapter/adapters/common/client/abstract-adapter-client.js +6 -6
  31. package/src/lib/adapter/blockchain-adapter-factory.service.d.ts +4 -5
  32. package/src/lib/adapter/blockchain-adapter-factory.service.js +12 -12
  33. package/src/lib/adapter/models/create-factory-params.d.ts +15 -0
  34. package/src/lib/adapter/models/create-factory-params.js +2 -0
  35. package/src/lib/adapter/constants/models/create-factory-params.d.ts +0 -8
  36. /package/src/lib/adapter/{constants/models/create-factory-params.js → adapters/adapter-tron/models/tron-web-provider.js} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cryptorubic/web3",
3
- "version": "1.0.0-alpha.no-sdk.8",
3
+ "version": "1.0.0-alpha.no-sdk.9",
4
4
  "dependencies": {
5
5
  "@ethersproject/bignumber": "^5.8.0",
6
6
  "@mysten/sui": "^1.24.0",
package/src/index.d.ts CHANGED
@@ -66,7 +66,7 @@ export * from './lib/adapter/adapters/utils/timeout';
66
66
  export * from './lib/adapter/adapters/utils/waitFor';
67
67
  export * from './lib/adapter/blockchain-adapter-factory.service';
68
68
  export * from './lib/adapter/constants/chain-configs/chain-configs';
69
- export * from './lib/adapter/constants/models/create-factory-params';
69
+ export * from './lib/adapter/models/create-factory-params';
70
70
  export * from './lib/adapter/constants/models/env-type';
71
71
  export * from './lib/adapter/constants/models/solana-web3';
72
72
  export * from './lib/adapter/constants/models/viem-chain-type';
package/src/index.js CHANGED
@@ -69,7 +69,7 @@ tslib_1.__exportStar(require("./lib/adapter/adapters/utils/timeout"), exports);
69
69
  tslib_1.__exportStar(require("./lib/adapter/adapters/utils/waitFor"), exports);
70
70
  tslib_1.__exportStar(require("./lib/adapter/blockchain-adapter-factory.service"), exports);
71
71
  tslib_1.__exportStar(require("./lib/adapter/constants/chain-configs/chain-configs"), exports);
72
- tslib_1.__exportStar(require("./lib/adapter/constants/models/create-factory-params"), exports);
72
+ tslib_1.__exportStar(require("./lib/adapter/models/create-factory-params"), exports);
73
73
  tslib_1.__exportStar(require("./lib/adapter/constants/models/env-type"), exports);
74
74
  tslib_1.__exportStar(require("./lib/adapter/constants/models/solana-web3"), exports);
75
75
  tslib_1.__exportStar(require("./lib/adapter/constants/models/viem-chain-type"), exports);
@@ -3,7 +3,7 @@ import BigNumber from 'bignumber.js';
3
3
  import { AbstractAdapter } from '../common/abstract-adapter';
4
4
  import { BtcWallet } from '../models/btc-wallet-provider';
5
5
  import { BasicSendTransactionOptions } from '../models/basic-transaction-options';
6
- import { RubicAppAdaptersFactoryParams } from '../../constants/models/create-factory-params';
6
+ import { ClientAdaptersFactoryParams } from '../../models/create-factory-params';
7
7
  import { BitcoinAdapterClient } from './client/bitcoin-adapter-client';
8
8
  import { Abi } from 'viem';
9
9
  import { Web3PrimitiveType } from '../../../utils/models/primitive-types';
@@ -12,7 +12,7 @@ import { MethodData } from '../models/web3-public-models/method-data';
12
12
  export declare class BitcoinAdapter extends AbstractAdapter<BtcWallet, BtcWallet, BitcoinBlockchainName> {
13
13
  private readonly httpClient;
14
14
  readonly client: BitcoinAdapterClient;
15
- constructor(httpClient: HttpClient, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
15
+ constructor(httpClient: HttpClient, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
16
16
  callContractMethod<T extends Web3PrimitiveType = string>(): Promise<T>;
17
17
  getBalance(userAddress: string): Promise<BigNumber>;
18
18
  getTokensBalances(userAddress: string, tokensAddresses: string[]): Promise<BigNumber[]>;
@@ -6,10 +6,10 @@ const bignumber_js_1 = require("bignumber.js");
6
6
  const abstract_adapter_1 = require("../common/abstract-adapter");
7
7
  const bitcoin_adapter_client_1 = require("./client/bitcoin-adapter-client");
8
8
  class BitcoinAdapter extends abstract_adapter_1.AbstractAdapter {
9
- constructor(httpClient, logger, rubicAppParams) {
9
+ constructor(httpClient, logger, clientParams) {
10
10
  super(core_1.BLOCKCHAIN_NAME.BITCOIN, logger);
11
11
  this.httpClient = httpClient;
12
- this.client = new bitcoin_adapter_client_1.BitcoinAdapterClient(httpClient, logger, rubicAppParams);
12
+ this.client = new bitcoin_adapter_client_1.BitcoinAdapterClient(httpClient, logger, clientParams);
13
13
  }
14
14
  callContractMethod() {
15
15
  throw new Error('Method not implemented.');
@@ -1,11 +1,11 @@
1
1
  import { BlockchainName, HttpClient, ICustomLogger } from '@cryptorubic/core';
2
- import { RubicAppAdaptersFactoryParams } from '../../../constants/models/create-factory-params';
2
+ import { ClientAdaptersFactoryParams } from '../../../models/create-factory-params';
3
3
  import { BitconSendTxParams } from '../models/btc-send-tx-params';
4
4
  import { AbstractAdapterClient } from '../../common/client/abstract-adapter-client';
5
5
  import { BtcWallet } from '../../models/btc-wallet-provider';
6
6
  import { TxStatus } from '../../models/web3-public-models/tx-status';
7
7
  export declare class BitcoinAdapterClient extends AbstractAdapterClient<BtcWallet, BitconSendTxParams, string> {
8
- constructor(httpClient: HttpClient, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
8
+ constructor(httpClient: HttpClient, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
9
9
  read<T>(args: unknown): Promise<T>;
10
10
  write(args: unknown): Promise<string>;
11
11
  getBlockchainName(): Promise<BlockchainName>;
@@ -6,8 +6,8 @@ const abstract_adapter_client_1 = require("../../common/client/abstract-adapter-
6
6
  const tx_status_1 = require("../../models/web3-public-models/tx-status");
7
7
  const waitFor_1 = require("../../utils/waitFor");
8
8
  class BitcoinAdapterClient extends abstract_adapter_client_1.AbstractAdapterClient {
9
- constructor(httpClient, logger, rubicAppParams) {
10
- super(httpClient, logger, rubicAppParams);
9
+ constructor(httpClient, logger, clientParams) {
10
+ super(httpClient, logger, clientParams);
11
11
  }
12
12
  read(args) {
13
13
  throw new Error('Not implemented');
@@ -1,5 +1,5 @@
1
1
  import { BlockchainName, HttpClient, ICustomLogger, TokenAmount } from '@cryptorubic/core';
2
- import { RubicAppAdaptersFactoryParams } from '../../../constants/models/create-factory-params';
2
+ import { ClientAdaptersFactoryParams } from '../../../models/create-factory-params';
3
3
  import { AbstractAdapterClient } from '../../common/client/abstract-adapter-client';
4
4
  import { Abi, PublicActions, PublicClient, TransactionReceipt, WalletActions, WalletClient } from 'viem';
5
5
  import { EvmSendTxParams, EvmTransactionOptions } from '../models/evm-send-tx-params';
@@ -11,7 +11,7 @@ import { ApproveAdapterClient } from '../../models/approve-adapter';
11
11
  import { AllowanceInfo } from '../../models/common-types';
12
12
  export declare class EvmAdapterClient extends AbstractAdapterClient<WalletClient & WalletActions, EvmSendTxParams, TransactionReceipt> implements ApproveAdapterClient<EvmTransactionConfig> {
13
13
  private readonly evmPublic;
14
- constructor(evmPublic: PublicActions & PublicClient, httpClient: HttpClient, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
14
+ constructor(evmPublic: PublicActions & PublicClient, httpClient: HttpClient, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
15
15
  getBlockchainName(): Promise<BlockchainName | undefined>;
16
16
  getAllowance(fromTokenAddress: string, walletAddress: string, spenderAddress: string): Promise<AllowanceInfo>;
17
17
  needApprove(token: TokenAmount, contractAddress: string, walletAddress: string, amount: string): Promise<boolean>;
@@ -20,7 +20,7 @@ export declare class EvmAdapterClient extends AbstractAdapterClient<WalletClient
20
20
  * Build encoded approve transaction config.
21
21
  * @param tokenAddress Address of the smart-contract corresponding to the token.
22
22
  * @param spenderAddress Wallet or contract address to approve.
23
- * @param amount Amount of tokens in approval window in spending cap field
23
+ * @param amount wei amount of tokens in approval window in spending cap field
24
24
  * @returns Encoded approve transaction config.
25
25
  */
26
26
  encodeApprove(tokenAddress: string, spenderAddress: string, amount?: string): EvmTransactionConfig;
@@ -15,8 +15,8 @@ const rubic_sdk_error_1 = require("packages/web3/src/lib/errors/rubic-sdk.error"
15
15
  const evm_adapter_1 = require("../evm-adapter");
16
16
  const tx_status_1 = require("../../models/web3-public-models/tx-status");
17
17
  class EvmAdapterClient extends abstract_adapter_client_1.AbstractAdapterClient {
18
- constructor(evmPublic, httpClient, logger, rubicAppParams) {
19
- super(httpClient, logger, rubicAppParams);
18
+ constructor(evmPublic, httpClient, logger, clientParams) {
19
+ super(httpClient, logger, clientParams);
20
20
  this.evmPublic = evmPublic;
21
21
  }
22
22
  async getBlockchainName() {
@@ -50,7 +50,7 @@ class EvmAdapterClient extends abstract_adapter_client_1.AbstractAdapterClient {
50
50
  * Build encoded approve transaction config.
51
51
  * @param tokenAddress Address of the smart-contract corresponding to the token.
52
52
  * @param spenderAddress Wallet or contract address to approve.
53
- * @param amount Amount of tokens in approval window in spending cap field
53
+ * @param amount wei amount of tokens in approval window in spending cap field
54
54
  * @returns Encoded approve transaction config.
55
55
  */
56
56
  encodeApprove(tokenAddress, spenderAddress, amount) {
@@ -5,7 +5,7 @@ import BigNumber from 'bignumber.js';
5
5
  import { EvmAdapterOptions } from '../models/evm-adapter-options';
6
6
  import { EvmTransactionConfig } from '../../../utils/models/evm-transaction-config';
7
7
  import { EvmAdapterClient } from './client/evm-adapter-client';
8
- import { RubicAppAdaptersFactoryParams } from '../../constants/models/create-factory-params';
8
+ import { ClientAdaptersFactoryParams } from '../../models/create-factory-params';
9
9
  import { Web3PrimitiveType } from '../../../utils/models/primitive-types';
10
10
  import { ContractMulticallResponse } from '../models/web3-public-models/contract-multicall-response';
11
11
  import { MethodData } from '../models/web3-public-models/method-data';
@@ -14,7 +14,7 @@ export declare class EvmAdapter extends AbstractAdapter<PublicActions & PublicCl
14
14
  readonly client: EvmAdapterClient;
15
15
  needPreswapAction(token: TokenAmount, contractAddress: string, walletAddress: string, amount: string): Promise<boolean>;
16
16
  handlePreswap(contractAddress: string, walletAddress: string, tokenAmount: TokenAmount): Promise<void>;
17
- constructor(httpClient: HttpClient, adapterOptions: EvmAdapterOptions, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
17
+ constructor(httpClient: HttpClient, adapterOptions: EvmAdapterOptions, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
18
18
  callContractMethod<T extends Web3PrimitiveType = string>(contractAddress: string, contractAbi: Abi, methodName: string, methodArguments?: unknown[], options?: {
19
19
  from?: string;
20
20
  value?: string;
@@ -25,10 +25,10 @@ class EvmAdapter extends abstract_adapter_1.AbstractAdapter {
25
25
  : tokenAmount.blockchain;
26
26
  await this.client.writeContract(fromTokenAddress, erc20_token_abi_1.erc20TokenAbi, 'approve', '0', [approveAmount]);
27
27
  }
28
- constructor(httpClient, adapterOptions, logger, rubicAppParams) {
28
+ constructor(httpClient, adapterOptions, logger, clientParams) {
29
29
  super(adapterOptions.blockchain, logger);
30
30
  this.public = this.createPublicClient(adapterOptions.rpcList);
31
- this.client = new evm_adapter_client_1.EvmAdapterClient(this.public, httpClient, logger, rubicAppParams);
31
+ this.client = new evm_adapter_client_1.EvmAdapterClient(this.public, httpClient, logger, clientParams);
32
32
  }
33
33
  async callContractMethod(contractAddress, contractAbi, methodName, methodArguments = [], options = {}) {
34
34
  return this.public.readContract({
@@ -1,13 +1,13 @@
1
1
  import { BlockchainName, HttpClient, ICustomLogger } from '@cryptorubic/core';
2
2
  import { SolanaWeb3 } from '../../../constants/models/solana-web3';
3
- import { RubicAppAdaptersFactoryParams } from '../../../constants/models/create-factory-params';
3
+ import { ClientAdaptersFactoryParams } from '../../../models/create-factory-params';
4
4
  import { SolanaSendTxParams } from '../models/solana-send-tx-params';
5
5
  import { Connection } from '@solana/web3.js';
6
6
  import { AbstractAdapterClient } from '../../common/client/abstract-adapter-client';
7
7
  import { TxStatus } from '../../models/web3-public-models/tx-status';
8
8
  export declare class SolanaAdapterClient extends AbstractAdapterClient<SolanaWeb3, SolanaSendTxParams, string> {
9
9
  private readonly connection;
10
- constructor(connection: Connection, httpClient: HttpClient, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
10
+ constructor(connection: Connection, httpClient: HttpClient, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
11
11
  read<T>(): Promise<T>;
12
12
  write<T>(): Promise<T>;
13
13
  getBlockchainName(): Promise<BlockchainName>;
@@ -11,8 +11,8 @@ const errors_1 = require("../../utils/errors");
11
11
  const abstract_adapter_client_1 = require("../../common/client/abstract-adapter-client");
12
12
  const tx_status_1 = require("../../models/web3-public-models/tx-status");
13
13
  class SolanaAdapterClient extends abstract_adapter_client_1.AbstractAdapterClient {
14
- constructor(connection, httpClient, logger, rubicAppParams) {
15
- super(httpClient, logger, rubicAppParams);
14
+ constructor(connection, httpClient, logger, clientParams) {
15
+ super(httpClient, logger, clientParams);
16
16
  this.connection = connection;
17
17
  }
18
18
  async read() {
@@ -3,7 +3,7 @@ import { HttpClient, ICustomLogger, PriceTokenAmount, SolanaBlockchainName, Toke
3
3
  import BigNumber from 'bignumber.js';
4
4
  import { AbstractAdapter } from '../common/abstract-adapter';
5
5
  import { SolanaRawInstruction } from '../models/solana-web3-types';
6
- import { RubicAppAdaptersFactoryParams } from '../../constants/models/create-factory-params';
6
+ import { ClientAdaptersFactoryParams } from '../../models/create-factory-params';
7
7
  import { SolanaWeb3 } from '../../constants/models/solana-web3';
8
8
  import { SolanaAdapterClient } from './client/solana-adapter-client';
9
9
  import { Web3PrimitiveType } from '../../../utils/models/primitive-types';
@@ -12,7 +12,7 @@ export declare const NATIVE_SOLANA_MINT_ADDRESS = "So111111111111111111111111111
12
12
  export declare class SolanaAdapter extends AbstractAdapter<Connection, SolanaWeb3, SolanaBlockchainName> {
13
13
  private readonly httpClient;
14
14
  readonly client: SolanaAdapterClient;
15
- constructor(rpcList: string[], httpClient: HttpClient, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
15
+ constructor(rpcList: string[], httpClient: HttpClient, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
16
16
  callContractMethod<T extends Web3PrimitiveType = string>(): Promise<T>;
17
17
  /**
18
18
  * Gets balance of multiple tokens.
@@ -13,11 +13,11 @@ const solana_tokens_service_1 = require("./services/solana-tokens-service");
13
13
  const solana_adapter_client_1 = require("./client/solana-adapter-client");
14
14
  exports.NATIVE_SOLANA_MINT_ADDRESS = 'So11111111111111111111111111111111111111111';
15
15
  class SolanaAdapter extends abstract_adapter_1.AbstractAdapter {
16
- constructor(rpcList, httpClient, logger, rubicAppParams) {
16
+ constructor(rpcList, httpClient, logger, clientParams) {
17
17
  super(core_1.BLOCKCHAIN_NAME.SOLANA, logger);
18
18
  this.httpClient = httpClient;
19
19
  this.public = this.createConection(rpcList);
20
- this.client = new solana_adapter_client_1.SolanaAdapterClient(this.public, httpClient, logger, rubicAppParams);
20
+ this.client = new solana_adapter_client_1.SolanaAdapterClient(this.public, httpClient, logger, clientParams);
21
21
  }
22
22
  async callContractMethod() {
23
23
  throw new Error('Method call is not supported');
@@ -1,13 +1,13 @@
1
1
  import { BlockchainName, HttpClient, ICustomLogger } from '@cryptorubic/core';
2
2
  import { AbstractAdapterClient } from '../../common/client/abstract-adapter-client';
3
- import { RubicAppAdaptersFactoryParams } from '../../../constants/models/create-factory-params';
3
+ import { ClientAdaptersFactoryParams } from '../../../models/create-factory-params';
4
4
  import { SuiSendTxParams } from '../models/sui-send-tx-params';
5
5
  import { WalletAdapter } from '@suiet/wallet-sdk';
6
6
  import { TxStatus } from '../../models/web3-public-models/tx-status';
7
7
  import { ExecuteTransactionBlockParams, SuiClient, SuiTransactionBlockResponse } from '@mysten/sui/dist/cjs/client';
8
8
  export declare class SuiAdapterClient extends AbstractAdapterClient<WalletAdapter, SuiSendTxParams, string> {
9
9
  private readonly suiClient;
10
- constructor(suiClient: SuiClient, httpClient: HttpClient, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
10
+ constructor(suiClient: SuiClient, httpClient: HttpClient, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
11
11
  read<T>(): Promise<T>;
12
12
  write<T>(): Promise<T>;
13
13
  getBlockchainName(): Promise<BlockchainName>;
@@ -7,8 +7,8 @@ const user_reject_error_1 = require("packages/web3/src/lib/errors/blockchain/use
7
7
  const parse_evm_error_1 = require("../../adapter-evm/utils/parse-evm-error");
8
8
  const tx_status_1 = require("../../models/web3-public-models/tx-status");
9
9
  class SuiAdapterClient extends abstract_adapter_client_1.AbstractAdapterClient {
10
- constructor(suiClient, httpClient, logger, rubicAppParams) {
11
- super(httpClient, logger, rubicAppParams);
10
+ constructor(suiClient, httpClient, logger, clientParams) {
11
+ super(httpClient, logger, clientParams);
12
12
  this.suiClient = suiClient;
13
13
  }
14
14
  async read() {
@@ -5,12 +5,12 @@ import BigNumber from 'bignumber.js';
5
5
  import { AbstractAdapter } from '../common/abstract-adapter';
6
6
  import { WalletAdapter } from '@suiet/wallet-sdk';
7
7
  import { SuiAdapterClient } from './client/sui-adapter-client';
8
- import { RubicAppAdaptersFactoryParams } from '../../constants/models/create-factory-params';
8
+ import { ClientAdaptersFactoryParams } from '../../models/create-factory-params';
9
9
  import { Web3PrimitiveType } from '../../../utils/models/primitive-types';
10
10
  import { ContractMulticallResponse } from '../models/web3-public-models/contract-multicall-response';
11
11
  export declare class SuiAdapter extends AbstractAdapter<SuiClient, WalletAdapter, SuiBlockchainName> {
12
12
  readonly client: SuiAdapterClient;
13
- constructor(rpcList: string[], httpClient: HttpClient, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
13
+ constructor(rpcList: string[], httpClient: HttpClient, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
14
14
  callContractMethod<T extends Web3PrimitiveType = string>(): Promise<T>;
15
15
  getTokensBalances(userAddress: string, tokensAddresses: string[]): Promise<BigNumber[]>;
16
16
  multicallContractsMethods<Output extends Web3PrimitiveType>(): Promise<ContractMulticallResponse<Output>[][]>;
@@ -8,10 +8,10 @@ const abstract_adapter_1 = require("../common/abstract-adapter");
8
8
  const web3_pure_1 = require("../../../utils/web3-pure");
9
9
  const sui_adapter_client_1 = require("./client/sui-adapter-client");
10
10
  class SuiAdapter extends abstract_adapter_1.AbstractAdapter {
11
- constructor(rpcList, httpClient, logger, rubicAppParams) {
11
+ constructor(rpcList, httpClient, logger, clientParams) {
12
12
  super(core_1.BLOCKCHAIN_NAME.SUI, logger);
13
13
  this.public = new client_1.SuiClient({ url: rpcList[0] });
14
- this.client = new sui_adapter_client_1.SuiAdapterClient(this.public, httpClient, logger, rubicAppParams);
14
+ this.client = new sui_adapter_client_1.SuiAdapterClient(this.public, httpClient, logger, clientParams);
15
15
  }
16
16
  async callContractMethod() {
17
17
  throw new Error('Method call is not supported');
@@ -1,6 +1,6 @@
1
1
  import { BlockchainName, HttpClient, ICustomLogger } from '@cryptorubic/core';
2
2
  import { AbstractAdapterClient } from '../../common/client/abstract-adapter-client';
3
- import { RubicAppAdaptersFactoryParams } from '../../../constants/models/create-factory-params';
3
+ import { ClientAdaptersFactoryParams } from '../../../models/create-factory-params';
4
4
  import { TxStatus } from '../../models/web3-public-models/tx-status';
5
5
  import { TonSendTxParams } from '../models/ton-send-tx-params';
6
6
  import { TonConnectUI } from '@tonconnect/ui';
@@ -12,7 +12,7 @@ import { TonTransactionConfig } from 'packages/web3/src/lib/utils/models/ton-tra
12
12
  export declare class TonAdapterClient extends AbstractAdapterClient<TonConnectUI, TonSendTxParams, string> {
13
13
  private readonly tonApi;
14
14
  private readonly tonClient;
15
- constructor(tonApi: TonApiService, config: TonAdapterConfig, httpClient: HttpClient, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
15
+ constructor(tonApi: TonApiService, config: TonAdapterConfig, httpClient: HttpClient, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
16
16
  read<T>(): Promise<T>;
17
17
  write<T>(): Promise<T>;
18
18
  getBlockchainName(): Promise<BlockchainName>;
@@ -11,8 +11,8 @@ const core_2 = require("@ton/core");
11
11
  const waitFor_1 = require("../../utils/waitFor");
12
12
  const ton_1 = require("@ton/ton");
13
13
  class TonAdapterClient extends abstract_adapter_client_1.AbstractAdapterClient {
14
- constructor(tonApi, config, httpClient, logger, rubicAppParams) {
15
- super(httpClient, logger, rubicAppParams);
14
+ constructor(tonApi, config, httpClient, logger, clientParams) {
15
+ super(httpClient, logger, clientParams);
16
16
  this.tonApi = tonApi;
17
17
  this.tonClient = new ton_1.TonClient(config.tonClientConfig);
18
18
  }
@@ -6,13 +6,13 @@ import BigNumber from 'bignumber.js';
6
6
  import { AbstractAdapter } from '../common/abstract-adapter';
7
7
  import { TonConnectUI } from '@tonconnect/ui';
8
8
  import { TonAdapterClient } from './client/ton-adapter-client';
9
- import { RubicAppAdaptersFactoryParams } from '../../constants/models/create-factory-params';
9
+ import { ClientAdaptersFactoryParams } from '../../models/create-factory-params';
10
10
  import { Web3PrimitiveType } from '../../../utils/models/primitive-types';
11
11
  import { ContractMulticallResponse } from '../models/web3-public-models/contract-multicall-response';
12
12
  export declare class TonAdapter extends AbstractAdapter<TonClient, TonConnectUI, TonBlockchainName> {
13
13
  readonly client: TonAdapterClient;
14
14
  private readonly tonApi;
15
- constructor(httpClient: HttpClient, config: TonAdapterConfig, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
15
+ constructor(httpClient: HttpClient, config: TonAdapterConfig, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
16
16
  callContractMethod<T extends Web3PrimitiveType = string>(): Promise<T>;
17
17
  getTokensBalances(userAddress: string, tokensAddresses: string[]): Promise<BigNumber[]>;
18
18
  multicallContractsMethods<Output extends Web3PrimitiveType>(): Promise<ContractMulticallResponse<Output>[][]>;
@@ -9,10 +9,10 @@ const abstract_adapter_1 = require("../common/abstract-adapter");
9
9
  const web3_pure_1 = require("../../../utils/web3-pure");
10
10
  const ton_adapter_client_1 = require("./client/ton-adapter-client");
11
11
  class TonAdapter extends abstract_adapter_1.AbstractAdapter {
12
- constructor(httpClient, config, logger, rubicAppParams) {
12
+ constructor(httpClient, config, logger, clientParams) {
13
13
  super(core_1.BLOCKCHAIN_NAME.TON, logger);
14
14
  this.tonApi = new ton_api_service_1.TonApiService(httpClient, config.tonApiConfig, logger);
15
- this.client = new ton_adapter_client_1.TonAdapterClient(this.tonApi, config, httpClient, logger, rubicAppParams);
15
+ this.client = new ton_adapter_client_1.TonAdapterClient(this.tonApi, config, httpClient, logger, clientParams);
16
16
  }
17
17
  async callContractMethod() {
18
18
  throw new Error('Method call is not supported');
@@ -1,7 +1,7 @@
1
1
  import { TronWeb } from 'tronweb';
2
2
  import { AbstractAdapterClient } from '../../common/client/abstract-adapter-client';
3
3
  import { BlockchainName, HttpClient, ICustomLogger, TokenAmount } from '@cryptorubic/core';
4
- import { RubicAppAdaptersFactoryParams } from '../../../constants/models/create-factory-params';
4
+ import { ClientAdaptersFactoryParams } from '../../../models/create-factory-params';
5
5
  import { TronSendTxParams } from '../models/tron-send-tx-params';
6
6
  import { TxStatus } from '../../models/web3-public-models/tx-status';
7
7
  import { TronTransactionConfig } from 'packages/web3/src/lib/utils/models/tron-transaction-config';
@@ -10,7 +10,7 @@ import { AllowanceInfo } from '../../models/common-types';
10
10
  import { TronParameters } from 'packages/web3/src/lib/utils/models/tron-parameters';
11
11
  export declare class TronAdapterClient extends AbstractAdapterClient<TronWeb, TronSendTxParams, string> implements ApproveAdapterClient<TronTransactionConfig> {
12
12
  private readonly tronWeb;
13
- constructor(tronWeb: TronWeb, httpClient: HttpClient, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
13
+ constructor(tronWeb: TronWeb, httpClient: HttpClient, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
14
14
  read<T>(contractAddress: string, contractAbi: any, methodName: string, methodArguments?: unknown[]): Promise<T>;
15
15
  write(contractAddress: string, methodSignature: string, parameters: TronParameters): Promise<string>;
16
16
  getBlockchainName(): Promise<BlockchainName>;
@@ -10,8 +10,8 @@ const parse_tron_error_1 = require("../utils/parse-tron-error");
10
10
  const tron_adapter_1 = require("../tron-adapter");
11
11
  const tron_web3_pure_1 = require("packages/web3/src/lib/utils/web3-types/tron-web3-pure");
12
12
  class TronAdapterClient extends abstract_adapter_client_1.AbstractAdapterClient {
13
- constructor(tronWeb, httpClient, logger, rubicAppParams) {
14
- super(httpClient, logger, rubicAppParams);
13
+ constructor(tronWeb, httpClient, logger, clientParams) {
14
+ super(httpClient, logger, clientParams);
15
15
  this.tronWeb = tronWeb;
16
16
  }
17
17
  async read(contractAddress, contractAbi, methodName, methodArguments = []) {
@@ -0,0 +1,4 @@
1
+ export interface TronWebProvider {
2
+ fullHost: string;
3
+ headers?: Record<string, string>;
4
+ }
@@ -8,13 +8,13 @@ import { Abi } from 'viem';
8
8
  import { ContractMulticallResponse } from '../../../utils/models/contract-multicall-response';
9
9
  import { TronWeb3PrimitiveType, Web3PrimitiveType } from '../../../utils/models/primitive-types';
10
10
  import { MethodData } from '../../../utils/models/method-data';
11
- import { RubicAppAdaptersFactoryParams } from '../../constants/models/create-factory-params';
11
+ import { ClientAdaptersFactoryParams } from '../../models/create-factory-params';
12
12
  import { TronAdapterClient } from './client/tron-adapter-client';
13
13
  export declare class TronAdapter extends AbstractAdapter<TronWeb, TronWeb, TronBlockchainName> {
14
14
  readonly client: TronAdapterClient;
15
15
  private readonly multicallAddress;
16
16
  needPreswapAction(): Promise<boolean>;
17
- constructor(rpcList: string[], httpClient: HttpClient, logger?: ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams);
17
+ constructor(rpcList: string[], httpClient: HttpClient, logger?: ICustomLogger, clientParams?: ClientAdaptersFactoryParams);
18
18
  callContractMethod<T extends Web3PrimitiveType = string>(contractAddress: string, contractAbi: Abi, methodName: string, methodArguments?: unknown[]): Promise<T>;
19
19
  getTokensBalances(userAddress: string, tokensAddresses: string[]): Promise<BigNumber[]>;
20
20
  multicallContractsMethods<Output extends TronWeb3PrimitiveType>(contractAbi: any, contractsData: {
@@ -14,11 +14,11 @@ class TronAdapter extends abstract_adapter_1.AbstractAdapter {
14
14
  async needPreswapAction() {
15
15
  return false;
16
16
  }
17
- constructor(rpcList, httpClient, logger, rubicAppParams) {
17
+ constructor(rpcList, httpClient, logger, clientParams) {
18
18
  super(core_1.BLOCKCHAIN_NAME.TRON, logger);
19
19
  this.multicallAddress = 'T9ziQU4EBteJzjzMzhHELdhgWFqwzS5Vki';
20
20
  this.public = new tronweb_1.TronWeb({ fullHost: rpcList[0] });
21
- this.client = new tron_adapter_client_1.TronAdapterClient(this.public, httpClient, logger, rubicAppParams);
21
+ this.client = new tron_adapter_client_1.TronAdapterClient(this.public, httpClient, logger, clientParams);
22
22
  }
23
23
  async callContractMethod(contractAddress, contractAbi, methodName, methodArguments = []) {
24
24
  this.public.setAddress(contractAddress);
@@ -1,16 +1,16 @@
1
1
  import { BlockchainName, HttpClient, ICustomLogger } from '@cryptorubic/core';
2
- import { RubicAppAdaptersFactoryParams } from '../../../constants/models/create-factory-params';
2
+ import { ClientAdaptersFactoryParams } from '../../../models/create-factory-params';
3
3
  import { TxStatus } from '../../models/web3-public-models/tx-status';
4
4
  export declare abstract class AbstractAdapterClient<ClientWallet, SendTxParams, SendTxResponse> {
5
5
  protected readonly httpClient: HttpClient;
6
6
  protected readonly logger?: ICustomLogger | undefined;
7
- protected readonly rubicAppParams?: RubicAppAdaptersFactoryParams | undefined;
7
+ protected readonly clientParams?: ClientAdaptersFactoryParams | undefined;
8
8
  protected get apiUrl(): string;
9
9
  private _walletAddress;
10
10
  get walletAddress(): string;
11
11
  private _clientWallet;
12
12
  get clientWallet(): ClientWallet;
13
- constructor(httpClient: HttpClient, logger?: ICustomLogger | undefined, rubicAppParams?: RubicAppAdaptersFactoryParams | undefined);
13
+ constructor(httpClient: HttpClient, logger?: ICustomLogger | undefined, clientParams?: ClientAdaptersFactoryParams | undefined);
14
14
  abstract getBlockchainName(): Promise<BlockchainName | undefined>;
15
15
  abstract sendTransaction(params: SendTxParams): Promise<SendTxResponse>;
16
16
  abstract getTransactionStatus(srcTxHash: string): Promise<TxStatus>;
@@ -8,11 +8,11 @@ const waitFor_1 = require("../../utils/waitFor");
8
8
  const wrong_network_error_1 = require("../../../../errors/swap/wrong-network.error");
9
9
  class AbstractAdapterClient {
10
10
  get apiUrl() {
11
- if (!this.rubicAppParams) {
12
- this.logger?.customError('rubicAppParams is not set for apiUrl call.');
13
- throw new Error('rubicAppParams is not set for apiUrl call.');
11
+ if (!this.clientParams) {
12
+ this.logger?.customError('clientParams is not set for apiUrl call.');
13
+ throw new Error('clientParams is not set for apiUrl call.');
14
14
  }
15
- const rubicApiLink = rubic_api_link_mapping_1.rubicApiLinkMapping[this.rubicAppParams.envType];
15
+ const rubicApiLink = rubic_api_link_mapping_1.rubicApiLinkMapping[this.clientParams.envType];
16
16
  return rubicApiLink ? rubicApiLink : 'https://dev1-api-v2.rubic.exchange';
17
17
  }
18
18
  get walletAddress() {
@@ -21,10 +21,10 @@ class AbstractAdapterClient {
21
21
  get clientWallet() {
22
22
  return this._clientWallet;
23
23
  }
24
- constructor(httpClient, logger, rubicAppParams) {
24
+ constructor(httpClient, logger, clientParams) {
25
25
  this.httpClient = httpClient;
26
26
  this.logger = logger;
27
- this.rubicAppParams = rubicAppParams;
27
+ this.clientParams = clientParams;
28
28
  }
29
29
  /**
30
30
  * Checks, that selected blockchain in wallet is equal to passed blockchain.
@@ -1,25 +1,24 @@
1
1
  import { AbstractAdapter } from './adapters/common/abstract-adapter';
2
2
  import { WalletProviderCore } from './constants/models/wallet-provider';
3
- import { BlockchainName, EvmBlockchainName, SolanaBlockchainName, TronBlockchainName, ICustomLogger, HttpClient, TonBlockchainName, BitcoinBlockchainName, SuiBlockchainName } from '@cryptorubic/core';
3
+ import { BlockchainName, EvmBlockchainName, SolanaBlockchainName, TronBlockchainName, ICustomLogger, TonBlockchainName, BitcoinBlockchainName, SuiBlockchainName } from '@cryptorubic/core';
4
4
  import { TonAdapter } from './adapters/adapter-ton/ton-adapter';
5
- import { TonAdapterConfig } from './adapters/models/ton-adapter-config';
6
5
  import { EvmAdapter } from './adapters/adapter-evm/evm-adapter';
7
6
  import { BitcoinAdapter } from './adapters/adapter-bitcoin/bitcoin-adapter';
8
7
  import { SolanaAdapter } from './adapters/adapter-solana/solana-adapter';
9
8
  import { TronAdapter } from './adapters/adapter-tron/tron-adapter';
10
9
  import { SuiAdapter } from './adapters/adapter-sui/sui-adapter';
11
- import { RubicAppAdaptersFactoryParams } from './constants/models/create-factory-params';
10
+ import { AdapterFactoryParams } from './models/create-factory-params';
12
11
  export declare class BlockchainAdapterFactoryService {
13
12
  private readonly rpcList;
14
13
  private readonly httpClient;
15
14
  private readonly createLogger?;
16
15
  private readonly tonParams?;
17
- private readonly rubicAppParams?;
16
+ private readonly clientParams?;
18
17
  readonly adapterStore: Partial<Record<BlockchainName, AbstractAdapter<unknown, unknown, BlockchainName>>>;
19
18
  protected readonly logger?: ICustomLogger;
20
19
  private constructor();
21
20
  hasAdapterFor(blockchain: BlockchainName): boolean;
22
- static createFactory(rpcList: Partial<Record<EvmBlockchainName, string[]>>, httpClient?: HttpClient, tonParams?: TonAdapterConfig, createLogger?: (label: string) => ICustomLogger, rubicAppParams?: RubicAppAdaptersFactoryParams): Promise<BlockchainAdapterFactoryService>;
21
+ static createFactory(params: AdapterFactoryParams): Promise<BlockchainAdapterFactoryService>;
23
22
  getAdapter(blockchain: SolanaBlockchainName): SolanaAdapter;
24
23
  getAdapter(blockchain: EvmBlockchainName): EvmAdapter;
25
24
  getAdapter(blockchain: TronBlockchainName): TronAdapter;
@@ -10,12 +10,12 @@ const solana_adapter_1 = require("./adapters/adapter-solana/solana-adapter");
10
10
  const tron_adapter_1 = require("./adapters/adapter-tron/tron-adapter");
11
11
  const sui_adapter_1 = require("./adapters/adapter-sui/sui-adapter");
12
12
  class BlockchainAdapterFactoryService {
13
- constructor(rpcList, httpClient, createLogger, tonParams, rubicAppParams) {
13
+ constructor(rpcList, httpClient, createLogger, tonParams, clientParams) {
14
14
  this.rpcList = rpcList;
15
15
  this.httpClient = httpClient;
16
16
  this.createLogger = createLogger;
17
17
  this.tonParams = tonParams;
18
- this.rubicAppParams = rubicAppParams;
18
+ this.clientParams = clientParams;
19
19
  this.adapterStore = {};
20
20
  this.adapterStore = this.createStorage();
21
21
  if (this.createLogger) {
@@ -26,11 +26,11 @@ class BlockchainAdapterFactoryService {
26
26
  const adapter = this.adapterStore?.[blockchain];
27
27
  return !!adapter;
28
28
  }
29
- static async createFactory(rpcList, httpClient, tonParams, createLogger, rubicAppParams) {
29
+ static async createFactory(params) {
30
30
  // @TODO Add default logger
31
- const loggerFn = createLogger || undefined;
32
- const resolvedHttpClient = httpClient ?? (await Promise.resolve().then(() => require('axios')));
33
- return new this(rpcList, resolvedHttpClient, createLogger, tonParams, rubicAppParams);
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);
34
34
  }
35
35
  getAdapter(blockchain) {
36
36
  const adapter = this.adapterStore?.[blockchain];
@@ -68,24 +68,24 @@ class BlockchainAdapterFactoryService {
68
68
  return new evm_adapter_1.EvmAdapter(this.httpClient, {
69
69
  blockchain: blockchain,
70
70
  rpcList: rpcs
71
- }, this.createLogger?.(`EVM_ADAPTER_${blockchain}`), this.rubicAppParams);
71
+ }, this.createLogger?.(`EVM_ADAPTER_${blockchain}`), this.clientParams);
72
72
  }
73
73
  }
74
74
  if (blockchainType === core_1.CHAIN_TYPE.TRON) {
75
- return new tron_adapter_1.TronAdapter(rpcs, this.httpClient, this.createLogger?.(`TRON_ADAPTER`), this.rubicAppParams);
75
+ return new tron_adapter_1.TronAdapter(rpcs, this.httpClient, this.createLogger?.(`TRON_ADAPTER`), this.clientParams);
76
76
  }
77
77
  if (blockchainType === core_1.CHAIN_TYPE.SUI) {
78
- return new sui_adapter_1.SuiAdapter(rpcs, this.httpClient, this.createLogger?.(`SUI_ADAPTER`), this.rubicAppParams);
78
+ return new sui_adapter_1.SuiAdapter(rpcs, this.httpClient, this.createLogger?.(`SUI_ADAPTER`), this.clientParams);
79
79
  }
80
80
  if (blockchainType === core_1.CHAIN_TYPE.SOLANA) {
81
- return new solana_adapter_1.SolanaAdapter(rpcs, this.httpClient, this.createLogger?.(`SOLANA_ADAPTER`), this.rubicAppParams);
81
+ return new solana_adapter_1.SolanaAdapter(rpcs, this.httpClient, this.createLogger?.(`SOLANA_ADAPTER`), this.clientParams);
82
82
  }
83
83
  }
84
84
  if (blockchain === core_1.BLOCKCHAIN_NAME.TON && this.tonParams?.tonApiConfig && this.tonParams?.tonClientConfig) {
85
- return new ton_adapter_1.TonAdapter(this.httpClient, this.tonParams, this.createLogger?.(`TON_ADAPTER`), this.rubicAppParams);
85
+ return new ton_adapter_1.TonAdapter(this.httpClient, this.tonParams, this.createLogger?.(`TON_ADAPTER`), this.clientParams);
86
86
  }
87
87
  if (blockchain === core_1.BLOCKCHAIN_NAME.BITCOIN && this.httpClient) {
88
- return new bitcoin_adapter_1.BitcoinAdapter(this.httpClient, this.createLogger?.(`BTC_ADAPTER`), this.rubicAppParams);
88
+ return new bitcoin_adapter_1.BitcoinAdapter(this.httpClient, this.createLogger?.(`BTC_ADAPTER`), this.clientParams);
89
89
  }
90
90
  return null;
91
91
  }
@@ -0,0 +1,15 @@
1
+ import { BitcoinBlockchainName, EvmBlockchainName, HttpClient, ICustomLogger, SolanaBlockchainName, SuiBlockchainName, TonBlockchainName, 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
+ export type RpcSupportedBlockhainName = Record<EvmBlockchainName, string[]> & Record<TronBlockchainName, TronWebProvider[]> & Record<SolanaBlockchainName, string[]> & Record<TonBlockchainName, string[]> & Record<BitcoinBlockchainName, string[]> & Record<SuiBlockchainName, string[]>;
6
+ export interface AdapterFactoryParams {
7
+ rpcList: RpcSupportedBlockhainName;
8
+ httpClient?: HttpClient;
9
+ tonParams?: TonAdapterConfig;
10
+ createLogger?: (label: string) => ICustomLogger;
11
+ clientParams?: ClientAdaptersFactoryParams;
12
+ }
13
+ export interface ClientAdaptersFactoryParams {
14
+ envType: EnvType;
15
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,8 +0,0 @@
1
- import { EnvType } from './env-type';
2
- export interface RubicAppAdaptersFactoryParams {
3
- envType: EnvType;
4
- /**
5
- * solanaWeb3, tronWeb, tonConnectUI, web3 etc...
6
- */
7
- clientWallet: any;
8
- }