rubic-sdk 6.0.0-alpha.ton.4 → 6.0.0-alpha.ton.41

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 (131) hide show
  1. package/LICENSE +674 -674
  2. package/README.md +361 -361
  3. package/dist/rubic-sdk.min.js +6 -0
  4. package/lib/core/blockchain/services/ton/tonapi-service.d.ts +3 -2
  5. package/lib/core/blockchain/services/ton/tonapi-service.js +13 -10
  6. package/lib/core/blockchain/services/ton/tonapi-service.js.map +1 -1
  7. package/lib/core/blockchain/utils/blockchains-info/blockchains-info.d.ts +2 -1
  8. package/lib/core/blockchain/utils/blockchains-info/blockchains-info.js +3 -0
  9. package/lib/core/blockchain/utils/blockchains-info/blockchains-info.js.map +1 -1
  10. package/lib/core/blockchain/web3-private-service/web3-private/ton-web3-private/ton-web3-private.js +8 -9
  11. package/lib/core/blockchain/web3-private-service/web3-private/ton-web3-private/ton-web3-private.js.map +1 -1
  12. package/lib/core/blockchain/web3-public-service/web3-public/ton-web3-public/ton-web3-public.d.ts +4 -1
  13. package/lib/core/blockchain/web3-public-service/web3-public/ton-web3-public/ton-web3-public.js +34 -15
  14. package/lib/core/blockchain/web3-public-service/web3-public/ton-web3-public/ton-web3-public.js.map +1 -1
  15. package/lib/core/blockchain/web3-pure/typed-web3-pure/ton-web3-pure/ton-web3-pure.d.ts +11 -0
  16. package/lib/core/blockchain/web3-pure/typed-web3-pure/ton-web3-pure/ton-web3-pure.js +31 -3
  17. package/lib/core/blockchain/web3-pure/typed-web3-pure/ton-web3-pure/ton-web3-pure.js.map +1 -1
  18. package/lib/features/common/providers/rango/models/rango-api-trade-types.d.ts +2 -2
  19. package/lib/features/common/providers/symbiosis/services/symbiosis-api-service.js +5 -6
  20. package/lib/features/common/providers/symbiosis/services/symbiosis-api-service.js.map +1 -1
  21. package/lib/features/cross-chain/calculation-manager/constants/cross-chain-providers.d.ts +1 -2
  22. package/lib/features/cross-chain/calculation-manager/constants/cross-chain-providers.js +3 -3
  23. package/lib/features/cross-chain/calculation-manager/constants/cross-chain-providers.js.map +1 -1
  24. package/lib/features/cross-chain/calculation-manager/providers/changenow-provider/changenow-cross-chain-trade.d.ts +1 -1
  25. package/lib/features/cross-chain/calculation-manager/providers/changenow-provider/changenow-cross-chain-trade.js +13 -4
  26. package/lib/features/cross-chain/calculation-manager/providers/changenow-provider/changenow-cross-chain-trade.js.map +1 -1
  27. package/lib/features/cross-chain/calculation-manager/providers/eddy-bridge/utils/get-eddy-bridge-dst-status.js +2 -2
  28. package/lib/features/cross-chain/calculation-manager/providers/orbiter-bridge/models/orbiter-api-status-types.d.ts +7 -0
  29. package/lib/features/cross-chain/calculation-manager/providers/orbiter-bridge/orbiter-bridge-provider.js +6 -2
  30. package/lib/features/cross-chain/calculation-manager/providers/orbiter-bridge/orbiter-bridge-provider.js.map +1 -1
  31. package/lib/features/cross-chain/calculation-manager/providers/orbiter-bridge/services/orbiter-api-service.d.ts +4 -3
  32. package/lib/features/cross-chain/calculation-manager/providers/orbiter-bridge/services/orbiter-api-service.js +14 -4
  33. package/lib/features/cross-chain/calculation-manager/providers/orbiter-bridge/services/orbiter-api-service.js.map +1 -1
  34. package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/models/symbiosis-cross-chain-supported-blockchains.d.ts +1 -1
  35. package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/models/symbiosis-cross-chain-supported-blockchains.js +1 -0
  36. package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/models/symbiosis-cross-chain-supported-blockchains.js.map +1 -1
  37. package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/{symbiosis-cross-chain-trade.d.ts → symbiosis-ccr-evm-trade.d.ts} +1 -1
  38. package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/{symbiosis-cross-chain-trade.js → symbiosis-ccr-evm-trade.js} +11 -8
  39. package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-ccr-evm-trade.js.map +1 -0
  40. package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-provider.d.ts +3 -2
  41. package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-provider.js +37 -50
  42. package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-provider.js.map +1 -1
  43. package/lib/features/on-chain/calculation-manager/models/on-chain-manager-aggregators-types.d.ts +4 -4
  44. package/lib/features/on-chain/calculation-manager/models/on-chain-manager-aggregators-types.js +6 -4
  45. package/lib/features/on-chain/calculation-manager/models/on-chain-manager-aggregators-types.js.map +1 -1
  46. package/lib/features/on-chain/calculation-manager/on-chain-manager.js +23 -14
  47. package/lib/features/on-chain/calculation-manager/on-chain-manager.js.map +1 -1
  48. package/lib/features/on-chain/calculation-manager/providers/aggregators/1inch/one-inch-trade.d.ts +2 -2
  49. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/native-router-abstract/native-router-abstract-trade.d.ts +2 -2
  50. package/lib/features/on-chain/calculation-manager/providers/aggregators/{tonkeeper → common/tonkeeper}/models/tonkeeper-api-types.d.ts +5 -4
  51. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/models/tonkeeper-api-types.js.map +1 -0
  52. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/models/tonkeeper-trade-struct.d.ts +15 -0
  53. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/models/tonkeeper-trade-struct.js.map +1 -0
  54. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/services/tonkeeper-api-service.d.ts +9 -0
  55. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/services/tonkeeper-api-service.js +46 -0
  56. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/services/tonkeeper-api-service.js.map +1 -0
  57. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/tonkeeper-on-chain-provider.d.ts +16 -0
  58. package/lib/features/on-chain/calculation-manager/providers/aggregators/{tonkeeper → common/tonkeeper}/tonkeeper-on-chain-provider.js +29 -19
  59. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/tonkeeper-on-chain-provider.js.map +1 -0
  60. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/tonkeeper-on-chain-trade.d.ts +16 -0
  61. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/tonkeeper-on-chain-trade.js +46 -0
  62. package/lib/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/tonkeeper-on-chain-trade.js.map +1 -0
  63. package/lib/features/on-chain/calculation-manager/providers/aggregators/dedust/dedust-on-chain-provider.d.ts +6 -0
  64. package/lib/features/on-chain/calculation-manager/providers/aggregators/dedust/dedust-on-chain-provider.js +14 -0
  65. package/lib/features/on-chain/calculation-manager/providers/aggregators/dedust/dedust-on-chain-provider.js.map +1 -0
  66. package/lib/features/on-chain/calculation-manager/providers/aggregators/dln/chains/dln-evm-on-chain-trade.d.ts +2 -2
  67. package/lib/features/on-chain/calculation-manager/providers/aggregators/dln/chains/dln-solana-on-chain-trade.d.ts +2 -2
  68. package/lib/features/on-chain/calculation-manager/providers/aggregators/lifi/lifi-trade.d.ts +2 -2
  69. package/lib/features/on-chain/calculation-manager/providers/aggregators/odos/odos-on-chain-trade.d.ts +2 -2
  70. package/lib/features/on-chain/calculation-manager/providers/aggregators/okuswap/okuswap-on-chain-trade.d.ts +2 -2
  71. package/lib/features/on-chain/calculation-manager/providers/aggregators/open-ocean/open-ocean-trade.d.ts +2 -2
  72. package/lib/features/on-chain/calculation-manager/providers/aggregators/piteas/piteas-trade.d.ts +2 -2
  73. package/lib/features/on-chain/calculation-manager/providers/aggregators/rango/rango-on-chain-provider.js +4 -2
  74. package/lib/features/on-chain/calculation-manager/providers/aggregators/rango/rango-on-chain-provider.js.map +1 -1
  75. package/lib/features/on-chain/calculation-manager/providers/aggregators/rango/rango-on-chain-trade.d.ts +2 -2
  76. package/lib/features/on-chain/calculation-manager/providers/aggregators/rango/rango-on-chain-trade.js +1 -1
  77. package/lib/features/on-chain/calculation-manager/providers/aggregators/rango/rango-on-chain-trade.js.map +1 -1
  78. package/lib/features/on-chain/calculation-manager/providers/aggregators/rango/services/rango-on-chain-api-service.d.ts +1 -1
  79. package/lib/features/on-chain/calculation-manager/providers/aggregators/rango/services/rango-on-chain-api-service.js +2 -2
  80. package/lib/features/on-chain/calculation-manager/providers/aggregators/rango/services/rango-on-chain-api-service.js.map +1 -1
  81. package/lib/features/on-chain/calculation-manager/providers/aggregators/stonfi/stonfi-on-chain-provider.d.ts +6 -0
  82. package/lib/features/on-chain/calculation-manager/providers/aggregators/stonfi/stonfi-on-chain-provider.js +14 -0
  83. package/lib/features/on-chain/calculation-manager/providers/aggregators/stonfi/stonfi-on-chain-provider.js.map +1 -0
  84. package/lib/features/on-chain/calculation-manager/providers/aggregators/symbiosis/symbiosis-on-chain-trade.d.ts +2 -2
  85. package/lib/features/on-chain/calculation-manager/providers/aggregators/xy-dex/xy-dex-trade.d.ts +2 -2
  86. package/lib/features/on-chain/calculation-manager/providers/aggregators/zrx/zrx-trade.d.ts +2 -2
  87. package/lib/features/on-chain/calculation-manager/providers/common/evm-wrap-trade/evm-wrap-trade.d.ts +2 -2
  88. package/lib/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.d.ts +2 -1
  89. package/lib/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.js +2 -1
  90. package/lib/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.js.map +1 -1
  91. package/lib/features/on-chain/calculation-manager/providers/common/on-chain-aggregator/aggregator-solana-on-chain-trade-abstract.d.ts +2 -2
  92. package/lib/features/on-chain/calculation-manager/providers/common/on-chain-aggregator/models/aggregator-on-chain-types.d.ts +1 -1
  93. package/lib/features/on-chain/calculation-manager/providers/common/on-chain-trade/evm-on-chain-trade/evm-on-chain-trade.d.ts +2 -2
  94. package/lib/features/on-chain/calculation-manager/providers/common/on-chain-trade/on-chain-trade.js +1 -1
  95. package/lib/features/on-chain/calculation-manager/providers/common/on-chain-trade/on-chain-trade.js.map +1 -1
  96. package/lib/features/on-chain/calculation-manager/providers/common/on-chain-trade/ton-on-chain-trade/models/ton-on-chian-trade-types.d.ts +9 -0
  97. package/lib/features/on-chain/calculation-manager/providers/common/on-chain-trade/ton-on-chain-trade/models/ton-on-chian-trade-types.js +3 -0
  98. package/lib/features/on-chain/calculation-manager/providers/common/on-chain-trade/ton-on-chain-trade/models/ton-on-chian-trade-types.js.map +1 -0
  99. package/lib/features/on-chain/calculation-manager/providers/common/on-chain-trade/ton-on-chain-trade/ton-on-chain-trade.d.ts +6 -2
  100. package/lib/features/on-chain/calculation-manager/providers/common/on-chain-trade/ton-on-chain-trade/ton-on-chain-trade.js +11 -0
  101. package/lib/features/on-chain/calculation-manager/providers/common/on-chain-trade/ton-on-chain-trade/ton-on-chain-trade.js.map +1 -1
  102. package/lib/features/on-chain/calculation-manager/providers/dexes/common/curve-provider/curve-abstract-trade.d.ts +2 -2
  103. package/lib/features/on-chain/calculation-manager/providers/dexes/common/izumi-abstract/izumi-trade.d.ts +2 -2
  104. package/lib/features/on-chain/calculation-manager/providers/dexes/common/pancake-router/pancake-router-trade.d.ts +2 -2
  105. package/lib/features/on-chain/calculation-manager/providers/dexes/common/sync-swap-abstract/sync-swap-abstract-trade.d.ts +2 -2
  106. package/lib/features/on-chain/calculation-manager/providers/dexes/common/uniswap-v2-abstract/uniswap-v2-abstract-trade.d.ts +2 -2
  107. package/lib/features/on-chain/calculation-manager/providers/dexes/common/uniswap-v3-algebra-abstract/uniswap-v3-algebra-abstract-trade.d.ts +2 -2
  108. package/lib/features/on-chain/calculation-manager/providers/dexes/common/vooi-abstract/vooi-abstract-trade.d.ts +2 -2
  109. package/lib/features/on-chain/calculation-manager/providers/dexes/mode/eddy-finance-mode/eddy-finance-mode-trade.d.ts +2 -2
  110. package/lib/features/on-chain/calculation-manager/providers/dexes/zetachain/eddy-finance/eddy-finance-trade.d.ts +2 -2
  111. package/lib/index.d.ts +9 -7
  112. package/lib/index.js +9 -7
  113. package/lib/index.js.map +1 -1
  114. package/package.json +158 -158
  115. package/lib/core/blockchain/services/ton/ton-utils.d.ts +0 -13
  116. package/lib/core/blockchain/services/ton/ton-utils.js +0 -36
  117. package/lib/core/blockchain/services/ton/ton-utils.js.map +0 -1
  118. package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-trade.js.map +0 -1
  119. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonkeeper/models/tonkeeper-api-types.js.map +0 -1
  120. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonkeeper/models/tonkeeper-trade-struct.d.ts +0 -6
  121. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonkeeper/models/tonkeeper-trade-struct.js.map +0 -1
  122. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonkeeper/services/tonkeeper-api-service.d.ts +0 -10
  123. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonkeeper/services/tonkeeper-api-service.js +0 -56
  124. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonkeeper/services/tonkeeper-api-service.js.map +0 -1
  125. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonkeeper/tonkeeper-on-chain-provider.d.ts +0 -14
  126. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonkeeper/tonkeeper-on-chain-provider.js.map +0 -1
  127. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonkeeper/tonkeeper-on-chain-trade.d.ts +0 -10
  128. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonkeeper/tonkeeper-on-chain-trade.js +0 -23
  129. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonkeeper/tonkeeper-on-chain-trade.js.map +0 -1
  130. /package/lib/features/on-chain/calculation-manager/providers/aggregators/{tonkeeper → common/tonkeeper}/models/tonkeeper-api-types.js +0 -0
  131. /package/lib/features/on-chain/calculation-manager/providers/aggregators/{tonkeeper → common/tonkeeper}/models/tonkeeper-trade-struct.js +0 -0
@@ -165,21 +165,30 @@ class OnChainManager {
165
165
  return { tradeType: type, trade: null, error };
166
166
  })));
167
167
  }
168
- async calculateLifiTrade(from, to, options) {
168
+ async calculateLifiTrade(_from, _to, _options) {
169
169
  try {
170
- const disabledProviders = [
171
- ...this.LIFI_DISABLED_PROVIDERS,
172
- ...options.disabledProviders
173
- ];
174
- const calculationOptions = {
175
- ...options,
176
- slippageTolerance: options?.slippageTolerance,
177
- gasCalculation: options.gasCalculation === 'disabled' ? 'disabled' : 'calculate',
178
- disabledProviders
179
- };
180
- const lifiAggregator = new this.AGGREGATORS.LIFI();
181
- const lifiCalculationCall = lifiAggregator.calculate(from, to, calculationOptions);
182
- return (0, p_timeout_1.default)(lifiCalculationCall, options.timeout);
170
+ throw Error('Lifi has been compromised');
171
+ // const disabledProviders = [
172
+ // ...this.LIFI_DISABLED_PROVIDERS,
173
+ // ...options.disabledProviders
174
+ // ];
175
+ //
176
+ // const calculationOptions: LifiCalculationOptions = {
177
+ // ...options,
178
+ // slippageTolerance: options?.slippageTolerance!,
179
+ // gasCalculation: options.gasCalculation === 'disabled' ? 'disabled' : 'calculate',
180
+ // disabledProviders
181
+ // };
182
+ //
183
+ // const lifiAggregator = new this.AGGREGATORS.LIFI();
184
+ //
185
+ // const lifiCalculationCall = lifiAggregator.calculate(
186
+ // from as PriceTokenAmount<EvmBlockchainName>,
187
+ // to as PriceTokenAmount<EvmBlockchainName>,
188
+ // calculationOptions
189
+ // );
190
+ //
191
+ // return pTimeout(lifiCalculationCall, options.timeout);
183
192
  }
184
193
  catch (err) {
185
194
  console.debug('[RUBIC_SDK] Trade calculation error occurred for lifi.', err);
@@ -1 +1 @@
1
- {"version":3,"file":"on-chain-manager.js","sourceRoot":"","sources":["../../../../src/features/on-chain/calculation-manager/on-chain-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"on-chain-manager.js","sourceRoot":"","sources":["../../../../src/features/on-chain/calculation-manager/on-chain-manager.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { EncodeTransactionOptions } from '../../../../../common/models/encode-tr
4
4
  import { OneinchTradeStruct } from './models/oneinch-trade-struct';
5
5
  import { OnChainTradeType } from '../../common/models/on-chain-trade-type';
6
6
  import { AggregatorEvmOnChainTrade } from '../../common/on-chain-aggregator/aggregator-evm-on-chain-trade-abstract';
7
- import { GetToAmountAndTxDataResponse } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
7
+ import { EvmEncodedConfigAndToAmount } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
8
8
  export declare class OneInchTrade extends AggregatorEvmOnChainTrade {
9
9
  /** @internal */
10
10
  static getGasLimit(tradeStruct: OneinchTradeStruct): Promise<BigNumber | null>;
@@ -24,7 +24,7 @@ export declare class OneInchTrade extends AggregatorEvmOnChainTrade {
24
24
  readonly transactionData: string | null;
25
25
  get type(): OnChainTradeType;
26
26
  constructor(tradeStruct: OneinchTradeStruct, providerAddress: string);
27
- protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<GetToAmountAndTxDataResponse>;
27
+ protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<EvmEncodedConfigAndToAmount>;
28
28
  private getResponseFromApiToTransactionRequest;
29
29
  private specifyError;
30
30
  }
@@ -2,7 +2,7 @@ import BigNumber from 'bignumber.js';
2
2
  import { EvmEncodeConfig } from '../../../../../../../core/blockchain/web3-pure/typed-web3-pure/evm-web3-pure/models/evm-encode-config';
3
3
  import { EncodeTransactionOptions } from '../../../../../../common/models/encode-transaction-options';
4
4
  import { AggregatorEvmOnChainTrade } from '../../../common/on-chain-aggregator/aggregator-evm-on-chain-trade-abstract';
5
- import { GetToAmountAndTxDataResponse } from '../../../common/on-chain-aggregator/models/aggregator-on-chain-types';
5
+ import { EvmEncodedConfigAndToAmount } from '../../../common/on-chain-aggregator/models/aggregator-on-chain-types';
6
6
  import { NativeRouterTradeInstance, NativeRouterTradeStruct } from './models/native-router-trade-struct';
7
7
  export declare abstract class NativeRouterAbstractTrade extends AggregatorEvmOnChainTrade {
8
8
  static getGasLimit(tradeStruct: NativeRouterTradeStruct, providerGateway: string): Promise<BigNumber | null>;
@@ -12,5 +12,5 @@ export declare abstract class NativeRouterAbstractTrade extends AggregatorEvmOnC
12
12
  get dexContractAddress(): string;
13
13
  constructor(tradeInstance: NativeRouterTradeInstance);
14
14
  encode(options: EncodeTransactionOptions): Promise<EvmEncodeConfig>;
15
- protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<GetToAmountAndTxDataResponse>;
15
+ protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<EvmEncodedConfigAndToAmount>;
16
16
  }
@@ -1,7 +1,7 @@
1
1
  export type TonkeeperResp<T> = T | string;
2
- export interface TonkeeperQuoteResp {
2
+ export interface TonkeeperQuoteResp<T extends TonkeeperCommonQuoteInfo> {
3
3
  provider: TonkeeperDexType;
4
- trades: [TonkeeperDedustQuoteInfo | TonkeeperStonfiQuoteInfo];
4
+ trades: [T];
5
5
  }
6
6
  export type TonkeeperDexType = 'stonfi' | 'dedust';
7
7
  export interface TonkeeperDedustQuoteInfo extends TonkeeperCommonQuoteInfo {
@@ -10,10 +10,12 @@ export interface TonkeeperDedustQuoteInfo extends TonkeeperCommonQuoteInfo {
10
10
  export interface TonkeeperStonfiQuoteInfo extends TonkeeperCommonQuoteInfo {
11
11
  stonfiRawTrade: TonkeeperRawTradeStep | TonkeeperRawTradeStep[];
12
12
  }
13
- interface TonkeeperCommonQuoteInfo {
13
+ export interface TonkeeperCommonQuoteInfo {
14
14
  fromAsset: string;
15
15
  toAsset: string;
16
+ /** wei amount */
16
17
  fromAmount: string;
18
+ /** wei amount */
17
19
  toAmount: string;
18
20
  blockchainFee: string;
19
21
  path: string[];
@@ -32,4 +34,3 @@ export interface TonkeeperEncodeSwapParamsResp {
32
34
  to: string;
33
35
  body: string;
34
36
  }
35
- export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tonkeeper-api-types.js","sourceRoot":"","sources":["../../../../../../../../../src/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/models/tonkeeper-api-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import { OnChainTradeType } from '../../../../common/models/on-chain-trade-type';
2
+ import { TonOnChainTradeStruct } from '../../../../common/on-chain-trade/ton-on-chain-trade/models/ton-on-chian-trade-types';
3
+ import { TonkeeperCommonQuoteInfo, TonkeeperDedustQuoteInfo, TonkeeperDexType, TonkeeperQuoteResp, TonkeeperStonfiQuoteInfo } from './tonkeeper-api-types';
4
+ export type DedustOnChainTradeStruct = TonkeeperOnChainTradeStruct<TonkeeperDedustQuoteInfo>;
5
+ export type StonfiOnChainTradeStruct = TonkeeperOnChainTradeStruct<TonkeeperStonfiQuoteInfo>;
6
+ export interface TonkeeperOnChainTradeStruct<T extends TonkeeperCommonQuoteInfo> extends TonOnChainTradeStruct {
7
+ bestRoute: TonkeeperQuoteResp<T>;
8
+ rawAddresses: TxTokensRawAddresses;
9
+ tradeType: Extract<OnChainTradeType, 'DEDUST' | 'STONFI'>;
10
+ tonkeeperDexType: TonkeeperDexType;
11
+ }
12
+ export interface TxTokensRawAddresses {
13
+ fromRawAddress: string;
14
+ toRawAddress: string;
15
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tonkeeper-trade-struct.js","sourceRoot":"","sources":["../../../../../../../../../src/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/models/tonkeeper-trade-struct.ts"],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { TonkeeperCommonQuoteInfo, TonkeeperDexType, TonkeeperEncodeSwapParamsResp, TonkeeperQuoteResp } from '../models/tonkeeper-api-types';
2
+ export declare class TonkeeperApiService {
3
+ private static apiUrl;
4
+ static makeQuoteReq<T extends TonkeeperCommonQuoteInfo>(fromRawAddress: string, toRawAddress: string, fromAmount: string, dexType: TonkeeperDexType): Promise<TonkeeperQuoteResp<T>>;
5
+ /**
6
+ * @param slippage number from 0 to 1
7
+ */
8
+ static encodeParamsForSwap<T extends TonkeeperCommonQuoteInfo>(bestRoute: TonkeeperQuoteResp<T>, walletAddress: string, slippage: number): Promise<TonkeeperEncodeSwapParamsResp>;
9
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TonkeeperApiService = void 0;
4
+ const errors_1 = require("../../../../../../../../common/errors");
5
+ const injector_1 = require("../../../../../../../../core/injector/injector");
6
+ class TonkeeperApiService {
7
+ static async makeQuoteReq(fromRawAddress, toRawAddress, fromAmount, dexType) {
8
+ const res = await injector_1.Injector.httpClient.get(`${this.apiUrl}/swap/calculate`, {
9
+ params: {
10
+ fromAsset: fromRawAddress,
11
+ toAsset: toRawAddress,
12
+ provider: dexType,
13
+ fromAmount
14
+ }
15
+ });
16
+ if (typeof res === 'string' || !res.trades.length) {
17
+ throw new errors_1.NotSupportedTokensError();
18
+ }
19
+ return res;
20
+ }
21
+ /**
22
+ * @param slippage number from 0 to 1
23
+ */
24
+ static async encodeParamsForSwap(bestRoute, walletAddress, slippage) {
25
+ const key = `${bestRoute.provider}Trade`;
26
+ // @ts-ignore dedustRawTrade or stonfiRawTrade
27
+ const tradeBody = bestRoute.trades[0][`${bestRoute.provider}RawTrade`];
28
+ const res = await injector_1.Injector.httpClient.post(`${this.apiUrl}/swap/encode`, {
29
+ swap: {
30
+ provider: bestRoute.provider,
31
+ [key]: tradeBody
32
+ },
33
+ options: {
34
+ senderAddress: walletAddress,
35
+ slippage: slippage.toString()
36
+ }
37
+ });
38
+ if (typeof res === 'string') {
39
+ throw new errors_1.NotSupportedTokensError();
40
+ }
41
+ return res;
42
+ }
43
+ }
44
+ exports.TonkeeperApiService = TonkeeperApiService;
45
+ TonkeeperApiService.apiUrl = 'https://rubic-swap.tonkeeper.com/v2';
46
+ //# sourceMappingURL=tonkeeper-api-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tonkeeper-api-service.js","sourceRoot":"","sources":["../../../../../../../../../src/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/services/tonkeeper-api-service.ts"],"names":[],"mappings":";;;AAAA,8CAA4D;AAC5D,yDAAsD;AAUtD,MAAa,mBAAmB;IAGrB,MAAM,CAAC,KAAK,CAAC,YAAY,CAC5B,cAAsB,EACtB,YAAoB,EACpB,UAAkB,EAClB,OAAyB;QAEzB,MAAM,GAAG,GAAG,MAAM,mBAAQ,CAAC,UAAU,CAAC,GAAG,CACrC,GAAG,IAAI,CAAC,MAAM,iBAAiB,EAC/B;YACI,MAAM,EAAE;gBACJ,SAAS,EAAE,cAAc;gBACzB,OAAO,EAAE,YAAY;gBACrB,QAAQ,EAAE,OAAO;gBACjB,UAAU;aACb;SACJ,CACJ,CAAC;QAEF,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE;YAC/C,MAAM,IAAI,gCAAuB,EAAE,CAAC;SACvC;QAED,OAAO,GAAG,CAAC;IACf,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,mBAAmB,CACnC,SAAgC,EAChC,aAAqB,EACrB,QAAgB;QAEhB,MAAM,GAAG,GAAG,GAAG,SAAS,CAAC,QAAQ,OAAO,CAAC;QACzC,8CAA8C;QAC9C,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,QAAQ,UAAU,CAAC,CAAC;QACvE,MAAM,GAAG,GAAG,MAAM,mBAAQ,CAAC,UAAU,CAAC,IAAI,CACtC,GAAG,IAAI,CAAC,MAAM,cAAc,EAC5B;YACI,IAAI,EAAE;gBACF,QAAQ,EAAE,SAAS,CAAC,QAAQ;gBAC5B,CAAC,GAAG,CAAC,EAAE,SAAS;aACnB;YACD,OAAO,EAAE;gBACL,aAAa,EAAE,aAAa;gBAC5B,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE;aAChC;SACJ,CACJ,CAAC;QAEF,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YACzB,MAAM,IAAI,gCAAuB,EAAE,CAAC;SACvC;QAED,OAAO,GAAG,CAAC;IACf,CAAC;;AA1DL,kDA2DC;AA1DkB,0BAAM,GAAW,qCAAqC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { PriceToken, PriceTokenAmount } from '../../../../../../../common/tokens';
2
+ import { BlockchainName, TonBlockchainName } from '../../../../../../../core/blockchain/models/blockchain-name';
3
+ import { OnChainTradeError } from '../../../../models/on-chain-trade-error';
4
+ import { RequiredOnChainCalculationOptions } from '../../../common/models/on-chain-calculation-options';
5
+ import { AggregatorOnChainProvider } from '../../../common/on-chain-aggregator/aggregator-on-chain-provider-abstract';
6
+ import { GasFeeInfo } from '../../../common/on-chain-trade/evm-on-chain-trade/models/gas-fee-info';
7
+ import { OnChainTrade } from '../../../common/on-chain-trade/on-chain-trade';
8
+ import { TonkeeperCommonQuoteInfo, TonkeeperDexType } from './models/tonkeeper-api-types';
9
+ import { TonkeeperOnChainTradeStruct } from './models/tonkeeper-trade-struct';
10
+ export declare abstract class TonkeeperOnChainProvider<T extends TonkeeperCommonQuoteInfo> extends AggregatorOnChainProvider {
11
+ protected abstract tonkeeperDexType: TonkeeperDexType;
12
+ isSupportedBlockchain(blockchain: BlockchainName): blockchain is TonBlockchainName;
13
+ calculate(from: PriceTokenAmount, toToken: PriceToken, options: RequiredOnChainCalculationOptions): Promise<OnChainTrade | OnChainTradeError>;
14
+ private getRawAddresses;
15
+ protected getGasFeeInfo(tradeStruct: TonkeeperOnChainTradeStruct<T>): Promise<GasFeeInfo | null>;
16
+ }
@@ -4,32 +4,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.TonkeeperOnChainProvider = void 0;
7
+ const core_1 = require("@ton/core");
7
8
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
- const tokens_1 = require("../../../../../../common/tokens");
9
- const native_tokens_1 = require("../../../../../../common/tokens/constants/native-tokens");
10
- const blockchain_name_1 = require("../../../../../../core/blockchain/models/blockchain-name");
11
- const ton_utils_1 = require("../../../../../../core/blockchain/services/ton/ton-utils");
12
- const web3_pure_1 = require("../../../../../../core/blockchain/web3-pure/web3-pure");
13
- const on_chain_trade_type_1 = require("../../common/models/on-chain-trade-type");
14
- const aggregator_on_chain_provider_abstract_1 = require("../../common/on-chain-aggregator/aggregator-on-chain-provider-abstract");
9
+ const tokens_1 = require("../../../../../../../common/tokens");
10
+ const native_tokens_1 = require("../../../../../../../common/tokens/constants/native-tokens");
11
+ const blockchain_name_1 = require("../../../../../../../core/blockchain/models/blockchain-name");
12
+ const web3_pure_1 = require("../../../../../../../core/blockchain/web3-pure/web3-pure");
13
+ const aggregator_on_chain_provider_abstract_1 = require("../../../common/on-chain-aggregator/aggregator-on-chain-provider-abstract");
15
14
  const tonkeeper_api_service_1 = require("./services/tonkeeper-api-service");
16
15
  const tonkeeper_on_chain_trade_1 = require("./tonkeeper-on-chain-trade");
17
16
  class TonkeeperOnChainProvider extends aggregator_on_chain_provider_abstract_1.AggregatorOnChainProvider {
18
- constructor() {
19
- super(...arguments);
20
- this.tradeType = on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.TONKEEPER;
21
- }
22
17
  isSupportedBlockchain(blockchain) {
23
18
  return blockchain === blockchain_name_1.BLOCKCHAIN_NAME.TON;
24
19
  }
25
20
  async calculate(from, toToken, options) {
26
21
  try {
27
- const [fromRawAddress, toRawAddress, { fromWithoutFee, proxyFeeInfo }] = await Promise.all([
28
- (await ton_utils_1.TonUtils.getAllFormatsOfAddress(from.address)).raw_form,
29
- (await ton_utils_1.TonUtils.getAllFormatsOfAddress(toToken.address)).raw_form,
30
- this.handleProxyContract(from, options)
31
- ]);
32
- const bestRoute = await tonkeeper_api_service_1.TonkeeperApiService.makeQuoteReq(fromRawAddress, toRawAddress, fromWithoutFee.stringWeiAmount);
22
+ const [fromRawAddress, toRawAddress] = this.getRawAddresses(from, toToken);
23
+ const { fromWithoutFee, proxyFeeInfo } = await this.handleProxyContract(from, options);
24
+ const bestRoute = await tonkeeper_api_service_1.TonkeeperApiService.makeQuoteReq(fromRawAddress, toRawAddress, fromWithoutFee.stringWeiAmount, this.tonkeeperDexType);
33
25
  const to = new tokens_1.PriceTokenAmount({
34
26
  ...toToken.asStruct,
35
27
  weiAmount: new bignumber_js_1.default(bestRoute.trades[0].toAmount)
@@ -44,18 +36,36 @@ class TonkeeperOnChainProvider extends aggregator_on_chain_provider_abstract_1.A
44
36
  path: this.getRoutePath(from, toToken),
45
37
  proxyFeeInfo,
46
38
  fromWithoutFee,
47
- bestRoute
39
+ tradeType: this.tradeType,
40
+ tonkeeperDexType: this.tonkeeperDexType,
41
+ bestRoute,
42
+ rawAddresses: {
43
+ fromRawAddress,
44
+ toRawAddress
45
+ }
48
46
  };
49
47
  tradeStruct.gasFeeInfo = await this.getGasFeeInfo(tradeStruct);
50
48
  return new tonkeeper_on_chain_trade_1.TonkeeperOnChainTrade(tradeStruct, options.providerAddress);
51
49
  }
52
50
  catch (err) {
53
51
  return {
54
- type: on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.TONKEEPER,
52
+ type: this.tradeType,
55
53
  error: err
56
54
  };
57
55
  }
58
56
  }
57
+ getRawAddresses(from, toToken) {
58
+ const rawAddresses = [from, toToken].map(token => {
59
+ if (token.address.startsWith('0:') || token.address.startsWith('-1:')) {
60
+ return token.address;
61
+ }
62
+ if (token.isNative) {
63
+ return 'ton';
64
+ }
65
+ return core_1.Address.parse(token.address).toRawString();
66
+ });
67
+ return rawAddresses;
68
+ }
59
69
  async getGasFeeInfo(tradeStruct) {
60
70
  const nativeTonCoin = native_tokens_1.nativeTokensList[blockchain_name_1.BLOCKCHAIN_NAME.TON];
61
71
  const gasLimitWei = tradeStruct.bestRoute.trades[0].blockchainFee;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tonkeeper-on-chain-provider.js","sourceRoot":"","sources":["../../../../../../../../src/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/tonkeeper-on-chain-provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { TonEncodedConfig } from '../../../../../../../core/blockchain/web3-private-service/web3-private/ton-web3-private/models/ton-types';
2
+ import { EncodeTransactionOptions } from '../../../../../../common/models/encode-transaction-options';
3
+ import { OnChainTradeType } from '../../../common/models/on-chain-trade-type';
4
+ import { TonEncodedConfigAndToAmount } from '../../../common/on-chain-trade/ton-on-chain-trade/models/ton-on-chian-trade-types';
5
+ import { TonOnChainTrade } from '../../../common/on-chain-trade/ton-on-chain-trade/ton-on-chain-trade';
6
+ import { TonkeeperCommonQuoteInfo } from './models/tonkeeper-api-types';
7
+ import { TonkeeperOnChainTradeStruct } from './models/tonkeeper-trade-struct';
8
+ export declare class TonkeeperOnChainTrade<T extends TonkeeperCommonQuoteInfo> extends TonOnChainTrade {
9
+ type: OnChainTradeType;
10
+ private readonly bestRoute;
11
+ private readonly rawAddresses;
12
+ private readonly tonkeeperDexType;
13
+ constructor(tradeStruct: TonkeeperOnChainTradeStruct<T>, providerAddress: string);
14
+ encodeDirect(options: EncodeTransactionOptions): Promise<TonEncodedConfig>;
15
+ protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<TonEncodedConfigAndToAmount>;
16
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.TonkeeperOnChainTrade = void 0;
10
+ const decorators_1 = require("../../../../../../../common/utils/decorators");
11
+ const check_unsupported_receiver_address_1 = require("../../../../../../common/utils/check-unsupported-receiver-address");
12
+ const ton_on_chain_trade_1 = require("../../../common/on-chain-trade/ton-on-chain-trade/ton-on-chain-trade");
13
+ const tonkeeper_api_service_1 = require("./services/tonkeeper-api-service");
14
+ class TonkeeperOnChainTrade extends ton_on_chain_trade_1.TonOnChainTrade {
15
+ constructor(tradeStruct, providerAddress) {
16
+ super(tradeStruct, providerAddress);
17
+ this.bestRoute = tradeStruct.bestRoute;
18
+ this.rawAddresses = tradeStruct.rawAddresses;
19
+ this.type = tradeStruct.tradeType;
20
+ this.tonkeeperDexType = tradeStruct.tonkeeperDexType;
21
+ }
22
+ async encodeDirect(options) {
23
+ (0, check_unsupported_receiver_address_1.checkUnsupportedReceiverAddress)(options.receiverAddress, this.walletAddress);
24
+ const { tx } = await this.getTransactionConfigAndAmount(options);
25
+ return tx;
26
+ }
27
+ async getTransactionConfigAndAmount(options) {
28
+ const [newBestRoute, { body, to, value }] = await Promise.all([
29
+ tonkeeper_api_service_1.TonkeeperApiService.makeQuoteReq(this.rawAddresses.fromRawAddress, this.rawAddresses.toRawAddress, this.fromWithoutFee.stringWeiAmount, this.tonkeeperDexType),
30
+ tonkeeper_api_service_1.TonkeeperApiService.encodeParamsForSwap(this.bestRoute, options.receiverAddress || this.walletAddress, this.slippageTolerance)
31
+ ]);
32
+ return {
33
+ tx: {
34
+ address: to,
35
+ amount: value,
36
+ payload: body
37
+ },
38
+ toAmount: newBestRoute.trades[0].toAmount
39
+ };
40
+ }
41
+ }
42
+ exports.TonkeeperOnChainTrade = TonkeeperOnChainTrade;
43
+ __decorate([
44
+ (0, decorators_1.Cache)({ maxAge: 15000 })
45
+ ], TonkeeperOnChainTrade.prototype, "getTransactionConfigAndAmount", null);
46
+ //# sourceMappingURL=tonkeeper-on-chain-trade.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tonkeeper-on-chain-trade.js","sourceRoot":"","sources":["../../../../../../../../src/features/on-chain/calculation-manager/providers/aggregators/common/tonkeeper/tonkeeper-on-chain-trade.ts"],"names":[],"mappings":";;;;;;;;;AAAA,4DAAoD;AAGpD,qHAA+G;AAI/G,6GAAuG;AAOvG,4EAAuE;AAEvE,MAAa,qBAA0D,SAAQ,oCAAe;IAS1F,YAAY,WAA2C,EAAE,eAAuB;QAC5E,KAAK,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAEpC,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,SAAS,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,gBAAgB,GAAG,WAAW,CAAC,gBAAgB,CAAC;IACzD,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,OAAiC;QACvD,IAAA,oEAA+B,EAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC7E,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC;QACjE,OAAO,EAAE,CAAC;IACd,CAAC;IAGe,AAAN,KAAK,CAAC,6BAA6B,CACzC,OAAiC;QAEjC,MAAM,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC1D,2CAAmB,CAAC,YAAY,CAC5B,IAAI,CAAC,YAAY,CAAC,cAAc,EAChC,IAAI,CAAC,YAAY,CAAC,YAAY,EAC9B,IAAI,CAAC,cAAc,CAAC,eAAe,EACnC,IAAI,CAAC,gBAAgB,CACxB;YACD,2CAAmB,CAAC,mBAAmB,CACnC,IAAI,CAAC,SAAS,EACd,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC,aAAa,EAC7C,IAAI,CAAC,iBAAiB,CACzB;SACJ,CAAC,CAAC;QAEH,OAAO;YACH,EAAE,EAAE;gBACA,OAAO,EAAE,EAAE;gBACX,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE,IAAI;aAChB;YACD,QAAQ,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ;SAC5C,CAAC;IACN,CAAC;CACJ;AAnDD,sDAmDC;AA1BmB;IADf,IAAA,kBAAK,EAAC,EAAE,MAAM,EAAE,KAAM,EAAE,CAAC;0EA0BzB"}
@@ -0,0 +1,6 @@
1
+ import { TonkeeperDedustQuoteInfo, TonkeeperDexType } from '../common/tonkeeper/models/tonkeeper-api-types';
2
+ import { TonkeeperOnChainProvider } from '../common/tonkeeper/tonkeeper-on-chain-provider';
3
+ export declare class DedustOnChainProvider extends TonkeeperOnChainProvider<TonkeeperDedustQuoteInfo> {
4
+ protected tonkeeperDexType: TonkeeperDexType;
5
+ tradeType: "DEDUST";
6
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DedustOnChainProvider = void 0;
4
+ const on_chain_trade_type_1 = require("../../common/models/on-chain-trade-type");
5
+ const tonkeeper_on_chain_provider_1 = require("../common/tonkeeper/tonkeeper-on-chain-provider");
6
+ class DedustOnChainProvider extends tonkeeper_on_chain_provider_1.TonkeeperOnChainProvider {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.tonkeeperDexType = 'dedust';
10
+ this.tradeType = on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.DEDUST;
11
+ }
12
+ }
13
+ exports.DedustOnChainProvider = DedustOnChainProvider;
14
+ //# sourceMappingURL=dedust-on-chain-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dedust-on-chain-provider.js","sourceRoot":"","sources":["../../../../../../../src/features/on-chain/calculation-manager/providers/aggregators/dedust/dedust-on-chain-provider.ts"],"names":[],"mappings":";;;AAAA,iFAA8E;AAK9E,iGAA2F;AAE3F,MAAa,qBAAsB,SAAQ,sDAAkD;IAA7F;;QACc,qBAAgB,GAAqB,QAAQ,CAAC;QAEjD,cAAS,GAAG,yCAAmB,CAAC,MAAM,CAAC;IAClD,CAAC;CAAA;AAJD,sDAIC"}
@@ -7,7 +7,7 @@ import { DlnEvmOnChainSupportedBlockchain, DlnOnChainSupportedBlockchain } from
7
7
  import { DlnTradeStruct } from '../models/dln-trade-struct';
8
8
  import { OnChainTradeType } from '../../../common/models/on-chain-trade-type';
9
9
  import { AggregatorEvmOnChainTrade } from '../../../common/on-chain-aggregator/aggregator-evm-on-chain-trade-abstract';
10
- import { GetToAmountAndTxDataResponse } from '../../../common/on-chain-aggregator/models/aggregator-on-chain-types';
10
+ import { EvmEncodedConfigAndToAmount } from '../../../common/on-chain-aggregator/models/aggregator-on-chain-types';
11
11
  export declare class DlnEvmOnChainTrade extends AggregatorEvmOnChainTrade {
12
12
  private readonly transactionRequest;
13
13
  static getGasLimit(tradeStruct: DlnTradeStruct<DlnEvmOnChainSupportedBlockchain>): Promise<BigNumber | null>;
@@ -18,6 +18,6 @@ export declare class DlnEvmOnChainTrade extends AggregatorEvmOnChainTrade {
18
18
  get dexContractAddress(): string;
19
19
  get toTokenAmountMin(): PriceTokenAmount;
20
20
  constructor(tradeStruct: DlnTradeStruct<DlnOnChainSupportedBlockchain & EvmBlockchainName>, providerAddress: string);
21
- protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<GetToAmountAndTxDataResponse>;
21
+ protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<EvmEncodedConfigAndToAmount>;
22
22
  encode(options: EncodeTransactionOptions): Promise<EvmEncodeConfig>;
23
23
  }
@@ -7,7 +7,7 @@ import { DlnEvmOnChainSupportedBlockchain, DlnOnChainSupportedBlockchain } from
7
7
  import { DlnTradeStruct } from '../models/dln-trade-struct';
8
8
  import { OnChainTradeType } from '../../../common/models/on-chain-trade-type';
9
9
  import { AggregatorSolanaOnChainTrade } from '../../../common/on-chain-aggregator/aggregator-solana-on-chain-trade-abstract';
10
- import { GetToAmountAndTxDataResponse } from '../../../common/on-chain-aggregator/models/aggregator-on-chain-types';
10
+ import { EvmEncodedConfigAndToAmount } from '../../../common/on-chain-aggregator/models/aggregator-on-chain-types';
11
11
  export declare class DlnSolanaOnChainTrade extends AggregatorSolanaOnChainTrade {
12
12
  private readonly transactionRequest;
13
13
  static getGasLimit(_tradeStruct: DlnTradeStruct<DlnEvmOnChainSupportedBlockchain>): Promise<BigNumber | null>;
@@ -18,5 +18,5 @@ export declare class DlnSolanaOnChainTrade extends AggregatorSolanaOnChainTrade
18
18
  get toTokenAmountMin(): PriceTokenAmount;
19
19
  constructor(tradeStruct: DlnTradeStruct<DlnOnChainSupportedBlockchain & SolanaBlockchainName>, providerAddress: string);
20
20
  encodeDirect(options: EncodeTransactionOptions): Promise<EvmEncodeConfig>;
21
- protected getToAmountAndTxData(receiverAddress?: string, _fromAddress?: string): Promise<GetToAmountAndTxDataResponse>;
21
+ protected getToAmountAndTxData(receiverAddress?: string, _fromAddress?: string): Promise<EvmEncodedConfigAndToAmount>;
22
22
  }
@@ -4,7 +4,7 @@ import { EncodeTransactionOptions } from '../../../../../common/models/encode-tr
4
4
  import { LifiTradeStruct } from './models/lifi-trade-struct';
5
5
  import { OnChainTradeType } from '../../common/models/on-chain-trade-type';
6
6
  import { AggregatorEvmOnChainTrade } from '../../common/on-chain-aggregator/aggregator-evm-on-chain-trade-abstract';
7
- import { GetToAmountAndTxDataResponse } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
7
+ import { EvmEncodedConfigAndToAmount } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
8
8
  export declare class LifiTrade extends AggregatorEvmOnChainTrade {
9
9
  /** @internal */
10
10
  static getGasLimit(lifiTradeStruct: LifiTradeStruct): Promise<BigNumber | null>;
@@ -19,5 +19,5 @@ export declare class LifiTrade extends AggregatorEvmOnChainTrade {
19
19
  protected getSwapError(err: unknown & {
20
20
  code: number;
21
21
  }): Error;
22
- protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<GetToAmountAndTxDataResponse>;
22
+ protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<EvmEncodedConfigAndToAmount>;
23
23
  }
@@ -1,7 +1,7 @@
1
1
  import BigNumber from 'bignumber.js';
2
2
  import { EncodeTransactionOptions } from '../../../../../common/models/encode-transaction-options';
3
3
  import { AggregatorEvmOnChainTrade } from '../../common/on-chain-aggregator/aggregator-evm-on-chain-trade-abstract';
4
- import { GetToAmountAndTxDataResponse } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
4
+ import { EvmEncodedConfigAndToAmount } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
5
5
  import { OdosOnChainTradeStruct } from './models/odos-on-chain-trade-types';
6
6
  export declare class OdosOnChainTrade extends AggregatorEvmOnChainTrade {
7
7
  static getGasLimit(tradeStruct: OdosOnChainTradeStruct, providerGateway: string): Promise<BigNumber | null>;
@@ -11,5 +11,5 @@ export declare class OdosOnChainTrade extends AggregatorEvmOnChainTrade {
11
11
  get dexContractAddress(): string;
12
12
  protected get spenderAddress(): string;
13
13
  constructor(tradeStruct: OdosOnChainTradeStruct, providerAddress: string, providerGateway: string);
14
- protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<GetToAmountAndTxDataResponse>;
14
+ protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<EvmEncodedConfigAndToAmount>;
15
15
  }
@@ -5,7 +5,7 @@ import { EncodeTransactionOptions } from '../../../../../common/models/encode-tr
5
5
  import { TransactionReceipt } from 'web3-eth';
6
6
  import { OnChainTradeType } from '../../common/models/on-chain-trade-type';
7
7
  import { AggregatorEvmOnChainTrade } from '../../common/on-chain-aggregator/aggregator-evm-on-chain-trade-abstract';
8
- import { GetToAmountAndTxDataResponse } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
8
+ import { EvmEncodedConfigAndToAmount } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
9
9
  import { OkuSwapSupportedBlockchain } from './models/okuswap-on-chain-supported-chains';
10
10
  import { OkuSwapOnChainTradeStruct } from './models/okuswap-trade-types';
11
11
  export declare class OkuSwapOnChainTrade extends AggregatorEvmOnChainTrade {
@@ -26,5 +26,5 @@ export declare class OkuSwapOnChainTrade extends AggregatorEvmOnChainTrade {
26
26
  needApprove(fromAddress?: string): Promise<boolean>;
27
27
  private needPermit2Approve;
28
28
  encode(options: EncodeTransactionOptions): Promise<EvmEncodeConfig>;
29
- protected getTransactionConfigAndAmount(_options: EncodeTransactionOptions): Promise<GetToAmountAndTxDataResponse>;
29
+ protected getTransactionConfigAndAmount(_options: EncodeTransactionOptions): Promise<EvmEncodedConfigAndToAmount>;
30
30
  }
@@ -4,7 +4,7 @@ import { EncodeTransactionOptions } from '../../../../../common/models/encode-tr
4
4
  import { GetContractParamsOptions } from '../../../../../cross-chain/calculation-manager/providers/common/models/get-contract-params-options';
5
5
  import { OpenOceanTradeStruct } from './models/open-ocean-trade-struct';
6
6
  import { AggregatorEvmOnChainTrade } from '../../common/on-chain-aggregator/aggregator-evm-on-chain-trade-abstract';
7
- import { GetToAmountAndTxDataResponse } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
7
+ import { EvmEncodedConfigAndToAmount } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
8
8
  export declare class OpenOceanTrade extends AggregatorEvmOnChainTrade {
9
9
  /** @internal */
10
10
  static getGasLimit(openOceanTradeStruct: OpenOceanTradeStruct): Promise<BigNumber | null>;
@@ -15,7 +15,7 @@ export declare class OpenOceanTrade extends AggregatorEvmOnChainTrade {
15
15
  get dexContractAddress(): string;
16
16
  get toTokenAmountMin(): PriceTokenAmount;
17
17
  constructor(tradeStruct: OpenOceanTradeStruct, providerAddress: string);
18
- protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<GetToAmountAndTxDataResponse>;
18
+ protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<EvmEncodedConfigAndToAmount>;
19
19
  private getTokenAddress;
20
20
  protected getSwapData(options: GetContractParamsOptions): Promise<unknown[]>;
21
21
  }
@@ -4,7 +4,7 @@ import { PiteasMethodParameters, PiteasQuoteRequestParams } from './models/pitea
4
4
  import { PiteasTradeStruct } from './models/piteas-trade-struct';
5
5
  import { OnChainTradeType } from '../../common/models/on-chain-trade-type';
6
6
  import { AggregatorEvmOnChainTrade } from '../../common/on-chain-aggregator/aggregator-evm-on-chain-trade-abstract';
7
- import { GetToAmountAndTxDataResponse } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
7
+ import { EvmEncodedConfigAndToAmount } from '../../common/on-chain-aggregator/models/aggregator-on-chain-types';
8
8
  import { EvmOnChainTradeStruct } from '../../common/on-chain-trade/evm-on-chain-trade/models/evm-on-chain-trade-struct';
9
9
  export declare class PiteasTrade extends AggregatorEvmOnChainTrade {
10
10
  static getGasLimit(tradeStruct: EvmOnChainTradeStruct, providerGateway: string, methodParameters: PiteasMethodParameters): Promise<BigNumber | null>;
@@ -14,5 +14,5 @@ export declare class PiteasTrade extends AggregatorEvmOnChainTrade {
14
14
  protected get spenderAddress(): string;
15
15
  get dexContractAddress(): string;
16
16
  constructor(tradeStruct: PiteasTradeStruct, providerAddress: string, quoteRequestParams: PiteasQuoteRequestParams);
17
- protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<GetToAmountAndTxDataResponse>;
17
+ protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<EvmEncodedConfigAndToAmount>;
18
18
  }
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.RangoOnChainProvider = void 0;
7
7
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
8
  const tokens_1 = require("../../../../../../common/tokens");
9
+ const rango_contract_address_1 = require("../../../../../common/providers/rango/constants/rango-contract-address");
9
10
  const rango_supported_blockchains_1 = require("../../../../../common/providers/rango/models/rango-supported-blockchains");
10
11
  const rango_parser_1 = require("../../../../../common/providers/rango/services/rango-parser");
11
12
  const on_chain_trade_type_1 = require("../../common/models/on-chain-trade-type");
@@ -31,9 +32,10 @@ class RangoOnChainProvider extends aggregator_on_chain_provider_abstract_1.Aggre
31
32
  ...options,
32
33
  swapperGroups: rango_on_chain_disabled_providers_1.RANGO_ON_CHAIN_DISABLED_PROVIDERS
33
34
  });
34
- const { route, tx } = await rango_on_chain_api_service_1.RangoOnChainApiService.getSwapTransaction(swapParams);
35
+ const { route, tx } = await rango_on_chain_api_service_1.RangoOnChainApiService.getSwapTransaction(swapParams, false);
35
36
  const { outputAmountMin, outputAmount } = route;
36
- const providerGateway = tx.txTo;
37
+ const providerGateway = tx?.txTo ||
38
+ rango_contract_address_1.rangoContractAddresses[from.blockchain].providerGateway;
37
39
  const to = new tokens_1.PriceTokenAmount({
38
40
  ...toToken.asStruct,
39
41
  weiAmount: new bignumber_js_1.default(outputAmount)