rubic-sdk 5.45.0-alpha.tonco.10 → 5.45.0-alpha.tonco.12

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 (121) hide show
  1. package/lib/common/tokens/constants/wrapped-addresses.js +1 -0
  2. package/lib/common/tokens/constants/wrapped-addresses.js.map +1 -1
  3. package/lib/core/blockchain/web3-public-service/web3-public/constants/multicall-addresses.js +2 -1
  4. package/lib/core/blockchain/web3-public-service/web3-public/constants/multicall-addresses.js.map +1 -1
  5. package/lib/features/common/constants/proxy-supported-blockchain.d.ts +1 -1
  6. package/lib/features/common/constants/proxy-supported-blockchain.js +2 -1
  7. package/lib/features/common/constants/proxy-supported-blockchain.js.map +1 -1
  8. package/lib/features/common/providers/rango/models/rango-api-trade-types.d.ts +2 -2
  9. package/lib/features/cross-chain/calculation-manager/providers/changenow-provider/changenow-cross-chain-trade.d.ts +1 -1
  10. package/lib/features/cross-chain/calculation-manager/providers/common/constants/rubic-proxy-contract-address.js +2 -1
  11. package/lib/features/cross-chain/calculation-manager/providers/common/constants/rubic-proxy-contract-address.js.map +1 -1
  12. package/lib/features/cross-chain/calculation-manager/providers/retro-bridge/chains/retro-bridge-evm-trade.js +1 -1
  13. package/lib/features/cross-chain/calculation-manager/providers/retro-bridge/chains/retro-bridge-evm-trade.js.map +1 -1
  14. package/lib/features/cross-chain/calculation-manager/providers/router-provider/router-cross-chain-trade.js +1 -1
  15. package/lib/features/cross-chain/calculation-manager/providers/router-provider/router-cross-chain-trade.js.map +1 -1
  16. package/lib/features/cross-chain/calculation-manager/providers/stargate-v2-provider/stargate-v2-cross-chain-trade.js +1 -1
  17. package/lib/features/cross-chain/calculation-manager/providers/stargate-v2-provider/stargate-v2-cross-chain-trade.js.map +1 -1
  18. package/lib/features/deflation-token-manager/deflation-token-manager.js +7 -0
  19. package/lib/features/deflation-token-manager/deflation-token-manager.js.map +1 -1
  20. package/lib/features/deflation-token-manager/models/custom-deflation-token-list.d.ts +2 -0
  21. package/lib/features/deflation-token-manager/models/custom-deflation-token-list.js +8 -0
  22. package/lib/features/deflation-token-manager/models/custom-deflation-token-list.js.map +1 -0
  23. package/lib/features/deflation-token-manager/models/deflation-manager-supported-blockchain.d.ts +1 -1
  24. package/lib/features/deflation-token-manager/models/deflation-manager-supported-blockchain.js +2 -1
  25. package/lib/features/deflation-token-manager/models/deflation-manager-supported-blockchain.js.map +1 -1
  26. package/lib/features/on-chain/calculation-manager/constants/trade-providers/uniswap-v2-trade-providers.d.ts +4 -1
  27. package/lib/features/on-chain/calculation-manager/constants/trade-providers/uniswap-v2-trade-providers.js +8 -1
  28. package/lib/features/on-chain/calculation-manager/constants/trade-providers/uniswap-v2-trade-providers.js.map +1 -1
  29. package/lib/features/on-chain/calculation-manager/constants/trade-providers/uniswap-v3-trade-providers.d.ts +3 -1
  30. package/lib/features/on-chain/calculation-manager/constants/trade-providers/uniswap-v3-trade-providers.js +5 -1
  31. package/lib/features/on-chain/calculation-manager/constants/trade-providers/uniswap-v3-trade-providers.js.map +1 -1
  32. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonco/services/tonco-sdk-facade.js +2 -2
  33. package/lib/features/on-chain/calculation-manager/providers/aggregators/tonco/services/tonco-sdk-facade.js.map +1 -1
  34. package/lib/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.d.ts +5 -0
  35. package/lib/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.js +5 -0
  36. package/lib/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.js.map +1 -1
  37. package/lib/features/on-chain/calculation-manager/providers/dexes/common/uniswap-v3-abstract/utils/quoter-controller/spark-dex-v3-quoter-controller.d.ts +39 -0
  38. package/lib/features/on-chain/calculation-manager/providers/dexes/common/uniswap-v3-abstract/utils/quoter-controller/spark-dex-v3-quoter-controller.js +79 -0
  39. package/lib/features/on-chain/calculation-manager/providers/dexes/common/uniswap-v3-abstract/utils/quoter-controller/spark-dex-v3-quoter-controller.js.map +1 -0
  40. package/lib/features/on-chain/calculation-manager/providers/dexes/common/uniswap-v3-algebra-abstract/models/unwrapWethMethodName.d.ts +1 -1
  41. package/lib/features/on-chain/calculation-manager/providers/dexes/common/uniswap-v3-algebra-abstract/uniswap-v3-algebra-abstract-provider.d.ts +2 -1
  42. package/lib/features/on-chain/calculation-manager/providers/dexes/common/uniswap-v3-algebra-abstract/uniswap-v3-algebra-abstract-provider.js.map +1 -1
  43. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-flare-abi.d.ts +2 -0
  44. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-flare-abi.js +317 -0
  45. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-flare-abi.js.map +1 -0
  46. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-flare-provider.d.ts +7 -0
  47. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-flare-provider.js +17 -0
  48. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-flare-provider.js.map +1 -0
  49. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-flare-trade.d.ts +13 -0
  50. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-flare-trade.js +72 -0
  51. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-flare-trade.js.map +1 -0
  52. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-methods.d.ts +6 -0
  53. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-methods.js +27 -0
  54. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/blaze-swap-methods.js.map +1 -0
  55. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/constants.d.ts +2 -0
  56. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/constants.js +7 -0
  57. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/blaze-swap-flare/constants.js.map +1 -0
  58. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/default-constants.d.ts +2 -0
  59. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/default-constants.js +21 -0
  60. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/default-constants.js.map +1 -0
  61. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/constants.d.ts +2 -0
  62. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/constants.js +7 -0
  63. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/constants.js.map +1 -0
  64. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-flare-abi.d.ts +2 -0
  65. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-flare-abi.js +308 -0
  66. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-flare-abi.js.map +1 -0
  67. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-flare-provider.d.ts +7 -0
  68. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-flare-provider.js +17 -0
  69. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-flare-provider.js.map +1 -0
  70. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-flare-trade.d.ts +13 -0
  71. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-flare-trade.js +72 -0
  72. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-flare-trade.js.map +1 -0
  73. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-swap-methods.d.ts +6 -0
  74. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-swap-methods.js +27 -0
  75. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v2-flare/enosys-swap-methods.js.map +1 -0
  76. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/constants/enosys-v3-flare-quoter-data.d.ts +3 -0
  77. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/constants/enosys-v3-flare-quoter-data.js +120 -0
  78. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/constants/enosys-v3-flare-quoter-data.js.map +1 -0
  79. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/constants/enosys-v3-flare-router-configuration.d.ts +8 -0
  80. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/constants/enosys-v3-flare-router-configuration.js +140 -0
  81. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/constants/enosys-v3-flare-router-configuration.js.map +1 -0
  82. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/constants/enosys-v3-flare-swap-router-data.d.ts +3 -0
  83. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/constants/enosys-v3-flare-swap-router-data.js +162 -0
  84. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/constants/enosys-v3-flare-swap-router-data.js.map +1 -0
  85. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/enosys-v3-flare-provider.d.ts +18 -0
  86. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/enosys-v3-flare-provider.js +62 -0
  87. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/enosys-v3-flare-provider.js.map +1 -0
  88. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/enosys-v3-flare-trade.d.ts +9 -0
  89. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/enosys-v3-flare-trade.js +19 -0
  90. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/enosys-v3-flare-trade.js.map +1 -0
  91. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/uniswap-v3-flare-configuration.d.ts +2 -0
  92. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/uniswap-v3-flare-configuration.js +10 -0
  93. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/uniswap-v3-flare-configuration.js.map +1 -0
  94. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/constants.d.ts +2 -0
  95. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/constants.js +7 -0
  96. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/constants.js.map +1 -0
  97. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/spark-dex-flare-provider.d.ts +7 -0
  98. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/spark-dex-flare-provider.js +17 -0
  99. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/spark-dex-flare-provider.js.map +1 -0
  100. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/spark-dex-flare-trade.d.ts +6 -0
  101. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/spark-dex-flare-trade.js +17 -0
  102. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/spark-dex-flare-trade.js.map +1 -0
  103. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/spark-dex-v3-flare-contract-abi.d.ts +3 -0
  104. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/spark-dex-v3-flare-contract-abi.js +154 -0
  105. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/spark-dex-v3-flare-contract-abi.js.map +1 -0
  106. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/spark-dex-v3-flare-quoter-data.d.ts +3 -0
  107. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/spark-dex-v3-flare-quoter-data.js +120 -0
  108. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/spark-dex-v3-flare-quoter-data.js.map +1 -0
  109. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/uniswap-v3-spark-dex-flare-router-config.d.ts +8 -0
  110. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/uniswap-v3-spark-dex-flare-router-config.js +95 -0
  111. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/uniswap-v3-spark-dex-flare-router-config.js.map +1 -0
  112. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/spark-dex-v3-flare-provider.d.ts +18 -0
  113. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/spark-dex-v3-flare-provider.js +62 -0
  114. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/spark-dex-v3-flare-provider.js.map +1 -0
  115. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/spark-dex-v3-flare-trade.d.ts +7 -0
  116. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/spark-dex-v3-flare-trade.js +18 -0
  117. package/lib/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/spark-dex-v3-flare-trade.js.map +1 -0
  118. package/lib/index.d.ts +27 -0
  119. package/lib/index.js +27 -0
  120. package/lib/index.js.map +1 -1
  121. package/package.json +2 -2
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UNI_SWAP_V3_FLARE_PROVIDER_CONFIGURATION = void 0;
4
+ const wrapped_addresses_1 = require("../../../../../../../../common/tokens/constants/wrapped-addresses");
5
+ const blockchain_name_1 = require("../../../../../../../../core/blockchain/models/blockchain-name");
6
+ exports.UNI_SWAP_V3_FLARE_PROVIDER_CONFIGURATION = {
7
+ maxTransitTokens: 1,
8
+ wethAddress: wrapped_addresses_1.wrappedAddress[blockchain_name_1.BLOCKCHAIN_NAME.FLARE]
9
+ };
10
+ //# sourceMappingURL=uniswap-v3-flare-configuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uniswap-v3-flare-configuration.js","sourceRoot":"","sources":["../../../../../../../../../src/features/on-chain/calculation-manager/providers/dexes/flare/enosys-flare/enosys-v3-flare/uniswap-v3-flare-configuration.ts"],"names":[],"mappings":";;;AAAA,qFAA+E;AAC/E,gFAA6E;AAIhE,QAAA,wCAAwC,GAA0C;IAC3F,gBAAgB,EAAE,CAAC;IACnB,WAAW,EAAE,kCAAc,CAAC,iCAAe,CAAC,KAAK,CAAE;CACtD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const SPARK_DEX_FLARE_CONTRACT_ADDRESS = "0x4a1E5A90e9943467FAd1acea1E7F0e5e88472a1e";
2
+ export declare const SPARK_DEX_FLARE_PROVIDER_CONFIGURATION: import("../../../common/uniswap-v2-abstract/models/uniswap-v2-provider-configuration").UniswapV2ProviderConfiguration;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SPARK_DEX_FLARE_PROVIDER_CONFIGURATION = exports.SPARK_DEX_FLARE_CONTRACT_ADDRESS = void 0;
4
+ const default_constants_1 = require("../../default-constants");
5
+ exports.SPARK_DEX_FLARE_CONTRACT_ADDRESS = '0x4a1E5A90e9943467FAd1acea1E7F0e5e88472a1e';
6
+ exports.SPARK_DEX_FLARE_PROVIDER_CONFIGURATION = default_constants_1.defaultFlareProviderConfiguration;
7
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../../../../../src/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/constants.ts"],"names":[],"mappings":";;;AAAA,+DAA4E;AAE/D,QAAA,gCAAgC,GAAG,4CAA4C,CAAC;AAEhF,QAAA,sCAAsC,GAAG,qDAAiC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { UniswapV2AbstractProvider } from '../../../common/uniswap-v2-abstract/uniswap-v2-abstract-provider';
2
+ import { SparkDexFlareTrade } from './spark-dex-flare-trade';
3
+ export declare class SparkDexFlareProvider extends UniswapV2AbstractProvider<SparkDexFlareTrade> {
4
+ readonly blockchain: "FLARE";
5
+ readonly UniswapV2TradeClass: typeof SparkDexFlareTrade;
6
+ readonly providerSettings: import("../../../common/uniswap-v2-abstract/models/uniswap-v2-provider-configuration").UniswapV2ProviderConfiguration;
7
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SparkDexFlareProvider = void 0;
4
+ const blockchain_name_1 = require("../../../../../../../../core/blockchain/models/blockchain-name");
5
+ const uniswap_v2_abstract_provider_1 = require("../../../common/uniswap-v2-abstract/uniswap-v2-abstract-provider");
6
+ const constants_1 = require("./constants");
7
+ const spark_dex_flare_trade_1 = require("./spark-dex-flare-trade");
8
+ class SparkDexFlareProvider extends uniswap_v2_abstract_provider_1.UniswapV2AbstractProvider {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.blockchain = blockchain_name_1.BLOCKCHAIN_NAME.FLARE;
12
+ this.UniswapV2TradeClass = spark_dex_flare_trade_1.SparkDexFlareTrade;
13
+ this.providerSettings = constants_1.SPARK_DEX_FLARE_PROVIDER_CONFIGURATION;
14
+ }
15
+ }
16
+ exports.SparkDexFlareProvider = SparkDexFlareProvider;
17
+ //# sourceMappingURL=spark-dex-flare-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spark-dex-flare-provider.js","sourceRoot":"","sources":["../../../../../../../../../src/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/spark-dex-flare-provider.ts"],"names":[],"mappings":";;;AAAA,gFAA6E;AAE7E,mHAA6G;AAC7G,2CAAqE;AACrE,mEAA6D;AAE7D,MAAa,qBAAsB,SAAQ,wDAA6C;IAAxF;;QACoB,eAAU,GAAG,iCAAe,CAAC,KAAK,CAAC;QAEnC,wBAAmB,GAAG,0CAAkB,CAAC;QAEzC,qBAAgB,GAAG,kDAAsC,CAAC;IAC9E,CAAC;CAAA;AAND,sDAMC"}
@@ -0,0 +1,6 @@
1
+ import { OnChainTradeType } from '../../../../common/models/on-chain-trade-type';
2
+ import { UniswapV2AbstractTrade } from '../../../common/uniswap-v2-abstract/uniswap-v2-abstract-trade';
3
+ export declare class SparkDexFlareTrade extends UniswapV2AbstractTrade {
4
+ static get type(): OnChainTradeType;
5
+ readonly dexContractAddress = "0x4a1E5A90e9943467FAd1acea1E7F0e5e88472a1e";
6
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SparkDexFlareTrade = void 0;
4
+ const on_chain_trade_type_1 = require("../../../../common/models/on-chain-trade-type");
5
+ const uniswap_v2_abstract_trade_1 = require("../../../common/uniswap-v2-abstract/uniswap-v2-abstract-trade");
6
+ const constants_1 = require("./constants");
7
+ class SparkDexFlareTrade extends uniswap_v2_abstract_trade_1.UniswapV2AbstractTrade {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.dexContractAddress = constants_1.SPARK_DEX_FLARE_CONTRACT_ADDRESS;
11
+ }
12
+ static get type() {
13
+ return on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SPARK_DEX;
14
+ }
15
+ }
16
+ exports.SparkDexFlareTrade = SparkDexFlareTrade;
17
+ //# sourceMappingURL=spark-dex-flare-trade.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spark-dex-flare-trade.js","sourceRoot":"","sources":["../../../../../../../../../src/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v2-flare/spark-dex-flare-trade.ts"],"names":[],"mappings":";;;AAAA,uFAGuD;AACvD,6GAAuG;AACvG,2CAA+D;AAE/D,MAAa,kBAAmB,SAAQ,kDAAsB;IAA9D;;QAKoB,uBAAkB,GAAG,4CAAgC,CAAC;IAC1E,CAAC;IALU,MAAM,KAAK,IAAI;QAClB,OAAO,yCAAmB,CAAC,SAAS,CAAC;IACzC,CAAC;CAGJ;AAND,gDAMC"}
@@ -0,0 +1,3 @@
1
+ import { AbiItem } from 'web3-utils';
2
+ export declare const SPARK_DEX_V3_FLARE_SWAP_ROUTER_CONTRACT = "0xCb70f9bA912a99849d19FC24Ccb7925ED307b877";
3
+ export declare const SPARK_DEX_V3_FLARE_SWAP_ROUTER_ABI: AbiItem[];
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SPARK_DEX_V3_FLARE_SWAP_ROUTER_ABI = exports.SPARK_DEX_V3_FLARE_SWAP_ROUTER_CONTRACT = void 0;
4
+ exports.SPARK_DEX_V3_FLARE_SWAP_ROUTER_CONTRACT = '0xCb70f9bA912a99849d19FC24Ccb7925ED307b877';
5
+ exports.SPARK_DEX_V3_FLARE_SWAP_ROUTER_ABI = [
6
+ {
7
+ inputs: [
8
+ { internalType: 'address', name: '_factory', type: 'address' },
9
+ { internalType: 'address', name: '_WETH9', type: 'address' }
10
+ ],
11
+ stateMutability: 'nonpayable',
12
+ type: 'constructor'
13
+ },
14
+ {
15
+ inputs: [],
16
+ name: 'WETH9',
17
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
18
+ stateMutability: 'view',
19
+ type: 'function'
20
+ },
21
+ {
22
+ inputs: [
23
+ {
24
+ components: [
25
+ { internalType: 'bytes', name: 'path', type: 'bytes' },
26
+ { internalType: 'address', name: 'recipient', type: 'address' },
27
+ { internalType: 'uint256', name: 'deadline', type: 'uint256' },
28
+ { internalType: 'uint256', name: 'amountIn', type: 'uint256' },
29
+ { internalType: 'uint256', name: 'amountOutMinimum', type: 'uint256' }
30
+ ],
31
+ internalType: 'struct ISwapRouter.ExactInputParams',
32
+ name: 'params',
33
+ type: 'tuple'
34
+ }
35
+ ],
36
+ name: 'exactInput',
37
+ outputs: [{ internalType: 'uint256', name: 'amountOut', type: 'uint256' }],
38
+ stateMutability: 'payable',
39
+ type: 'function'
40
+ },
41
+ {
42
+ inputs: [
43
+ {
44
+ components: [
45
+ { internalType: 'address', name: 'tokenIn', type: 'address' },
46
+ { internalType: 'address', name: 'tokenOut', type: 'address' },
47
+ { internalType: 'uint24', name: 'fee', type: 'uint24' },
48
+ { internalType: 'address', name: 'recipient', type: 'address' },
49
+ { internalType: 'uint256', name: 'deadline', type: 'uint256' },
50
+ { internalType: 'uint256', name: 'amountIn', type: 'uint256' },
51
+ { internalType: 'uint256', name: 'amountOutMinimum', type: 'uint256' },
52
+ { internalType: 'uint160', name: 'sqrtPriceLimitX96', type: 'uint160' }
53
+ ],
54
+ internalType: 'struct ISwapRouter.ExactInputSingleParams',
55
+ name: 'params',
56
+ type: 'tuple'
57
+ }
58
+ ],
59
+ name: 'exactInputSingle',
60
+ outputs: [{ internalType: 'uint256', name: 'amountOut', type: 'uint256' }],
61
+ stateMutability: 'payable',
62
+ type: 'function'
63
+ },
64
+ {
65
+ inputs: [
66
+ {
67
+ components: [
68
+ { internalType: 'bytes', name: 'path', type: 'bytes' },
69
+ { internalType: 'address', name: 'recipient', type: 'address' },
70
+ { internalType: 'uint256', name: 'deadline', type: 'uint256' },
71
+ { internalType: 'uint256', name: 'amountOut', type: 'uint256' },
72
+ { internalType: 'uint256', name: 'amountInMaximum', type: 'uint256' }
73
+ ],
74
+ internalType: 'struct ISwapRouter.ExactOutputParams',
75
+ name: 'params',
76
+ type: 'tuple'
77
+ }
78
+ ],
79
+ name: 'exactOutput',
80
+ outputs: [{ internalType: 'uint256', name: 'amountIn', type: 'uint256' }],
81
+ stateMutability: 'payable',
82
+ type: 'function'
83
+ },
84
+ {
85
+ inputs: [
86
+ {
87
+ components: [
88
+ { internalType: 'address', name: 'tokenIn', type: 'address' },
89
+ { internalType: 'address', name: 'tokenOut', type: 'address' },
90
+ { internalType: 'uint24', name: 'fee', type: 'uint24' },
91
+ { internalType: 'address', name: 'recipient', type: 'address' },
92
+ { internalType: 'uint256', name: 'deadline', type: 'uint256' },
93
+ { internalType: 'uint256', name: 'amountOut', type: 'uint256' },
94
+ { internalType: 'uint256', name: 'amountInMaximum', type: 'uint256' },
95
+ { internalType: 'uint160', name: 'sqrtPriceLimitX96', type: 'uint160' }
96
+ ],
97
+ internalType: 'struct ISwapRouter.ExactOutputSingleParams',
98
+ name: 'params',
99
+ type: 'tuple'
100
+ }
101
+ ],
102
+ name: 'exactOutputSingle',
103
+ outputs: [{ internalType: 'uint256', name: 'amountIn', type: 'uint256' }],
104
+ stateMutability: 'payable',
105
+ type: 'function'
106
+ },
107
+ {
108
+ inputs: [],
109
+ name: 'factory',
110
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
111
+ stateMutability: 'view',
112
+ type: 'function'
113
+ },
114
+ {
115
+ inputs: [{ internalType: 'bytes[]', name: 'data', type: 'bytes[]' }],
116
+ name: 'multicall',
117
+ outputs: [{ internalType: 'bytes[]', name: 'results', type: 'bytes[]' }],
118
+ stateMutability: 'payable',
119
+ type: 'function'
120
+ },
121
+ {
122
+ inputs: [],
123
+ name: 'refundETH',
124
+ outputs: [],
125
+ stateMutability: 'payable',
126
+ type: 'function'
127
+ },
128
+ {
129
+ inputs: [
130
+ { internalType: 'address', name: 'token', type: 'address' },
131
+ { internalType: 'uint256', name: 'amountMinimum', type: 'uint256' },
132
+ { internalType: 'address', name: 'recipient', type: 'address' }
133
+ ],
134
+ name: 'sweepToken',
135
+ outputs: [],
136
+ stateMutability: 'payable',
137
+ type: 'function'
138
+ },
139
+ {
140
+ inputs: [
141
+ { internalType: 'uint256', name: 'amountMinimum', type: 'uint256' },
142
+ { internalType: 'address', name: 'recipient', type: 'address' }
143
+ ],
144
+ name: 'unwrapWETH9',
145
+ outputs: [],
146
+ stateMutability: 'payable',
147
+ type: 'function'
148
+ },
149
+ {
150
+ stateMutability: 'payable',
151
+ type: 'receive'
152
+ }
153
+ ];
154
+ //# sourceMappingURL=spark-dex-v3-flare-contract-abi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spark-dex-v3-flare-contract-abi.js","sourceRoot":"","sources":["../../../../../../../../../../src/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/spark-dex-v3-flare-contract-abi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { AbiItem } from 'web3-utils';
2
+ export declare const SPARK_DEX_V3_FLARE_QUOTER_CONTRACT_ADDRESS = "0x2DcABbB3a5Fe9DBb1F43edf48449aA7254Ef3a80";
3
+ export declare const SPARK_DEX_V3_FLARE_QUOTER_CONTRACT_ABI: AbiItem[];
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SPARK_DEX_V3_FLARE_QUOTER_CONTRACT_ABI = exports.SPARK_DEX_V3_FLARE_QUOTER_CONTRACT_ADDRESS = void 0;
4
+ exports.SPARK_DEX_V3_FLARE_QUOTER_CONTRACT_ADDRESS = '0x2DcABbB3a5Fe9DBb1F43edf48449aA7254Ef3a80';
5
+ exports.SPARK_DEX_V3_FLARE_QUOTER_CONTRACT_ABI = [
6
+ {
7
+ inputs: [
8
+ { internalType: 'address', name: '_factory', type: 'address' },
9
+ { internalType: 'address', name: '_WETH9', type: 'address' }
10
+ ],
11
+ stateMutability: 'nonpayable',
12
+ type: 'constructor'
13
+ },
14
+ {
15
+ inputs: [],
16
+ name: 'WETH9',
17
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
18
+ stateMutability: 'view',
19
+ type: 'function'
20
+ },
21
+ {
22
+ inputs: [],
23
+ name: 'factory',
24
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
25
+ stateMutability: 'view',
26
+ type: 'function'
27
+ },
28
+ {
29
+ inputs: [
30
+ { internalType: 'bytes', name: 'path', type: 'bytes' },
31
+ { internalType: 'uint256', name: 'amountIn', type: 'uint256' }
32
+ ],
33
+ name: 'quoteExactInput',
34
+ outputs: [
35
+ { internalType: 'uint256', name: 'amountOut', type: 'uint256' },
36
+ { internalType: 'uint160[]', name: 'sqrtPriceX96AfterList', type: 'uint160[]' },
37
+ { internalType: 'uint32[]', name: 'initializedTicksCrossedList', type: 'uint32[]' },
38
+ { internalType: 'uint256', name: 'gasEstimate', type: 'uint256' }
39
+ ],
40
+ stateMutability: 'nonpayable',
41
+ type: 'function'
42
+ },
43
+ {
44
+ inputs: [
45
+ {
46
+ components: [
47
+ { internalType: 'address', name: 'tokenIn', type: 'address' },
48
+ { internalType: 'address', name: 'tokenOut', type: 'address' },
49
+ { internalType: 'uint256', name: 'amountIn', type: 'uint256' },
50
+ { internalType: 'uint24', name: 'fee', type: 'uint24' },
51
+ { internalType: 'uint160', name: 'sqrtPriceLimitX96', type: 'uint160' }
52
+ ],
53
+ internalType: 'tuple',
54
+ name: 'params',
55
+ type: 'tuple'
56
+ }
57
+ ],
58
+ name: 'quoteExactInputSingle',
59
+ outputs: [
60
+ { internalType: 'uint256', name: 'amountOut', type: 'uint256' },
61
+ { internalType: 'uint160', name: 'sqrtPriceX96After', type: 'uint160' },
62
+ { internalType: 'uint32', name: 'initializedTicksCrossed', type: 'uint32' },
63
+ { internalType: 'uint256', name: 'gasEstimate', type: 'uint256' }
64
+ ],
65
+ stateMutability: 'nonpayable',
66
+ type: 'function'
67
+ },
68
+ {
69
+ inputs: [
70
+ { internalType: 'bytes', name: 'path', type: 'bytes' },
71
+ { internalType: 'uint256', name: 'amountOut', type: 'uint256' }
72
+ ],
73
+ name: 'quoteExactOutput',
74
+ outputs: [
75
+ { internalType: 'uint256', name: 'amountIn', type: 'uint256' },
76
+ { internalType: 'uint160[]', name: 'sqrtPriceX96AfterList', type: 'uint160[]' },
77
+ { internalType: 'uint32[]', name: 'initializedTicksCrossedList', type: 'uint32[]' },
78
+ { internalType: 'uint256', name: 'gasEstimate', type: 'uint256' }
79
+ ],
80
+ stateMutability: 'nonpayable',
81
+ type: 'function'
82
+ },
83
+ {
84
+ inputs: [
85
+ {
86
+ components: [
87
+ { internalType: 'address', name: 'tokenIn', type: 'address' },
88
+ { internalType: 'address', name: 'tokenOut', type: 'address' },
89
+ { internalType: 'uint256', name: 'amount', type: 'uint256' },
90
+ { internalType: 'uint24', name: 'fee', type: 'uint24' },
91
+ { internalType: 'uint160', name: 'sqrtPriceLimitX96', type: 'uint160' }
92
+ ],
93
+ internalType: 'tuple',
94
+ name: 'params',
95
+ type: 'tuple'
96
+ }
97
+ ],
98
+ name: 'quoteExactOutputSingle',
99
+ outputs: [
100
+ { internalType: 'uint256', name: 'amountIn', type: 'uint256' },
101
+ { internalType: 'uint160', name: 'sqrtPriceX96After', type: 'uint160' },
102
+ { internalType: 'uint32', name: 'initializedTicksCrossed', type: 'uint32' },
103
+ { internalType: 'uint256', name: 'gasEstimate', type: 'uint256' }
104
+ ],
105
+ stateMutability: 'nonpayable',
106
+ type: 'function'
107
+ },
108
+ {
109
+ inputs: [
110
+ { internalType: 'int256', name: 'amount0Delta', type: 'int256' },
111
+ { internalType: 'int256', name: 'amount1Delta', type: 'int256' },
112
+ { internalType: 'bytes', name: 'path', type: 'bytes' }
113
+ ],
114
+ name: 'uniswapV3SwapCallback',
115
+ outputs: [],
116
+ stateMutability: 'view',
117
+ type: 'function'
118
+ }
119
+ ];
120
+ //# sourceMappingURL=spark-dex-v3-flare-quoter-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spark-dex-v3-flare-quoter-data.js","sourceRoot":"","sources":["../../../../../../../../../../src/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/spark-dex-v3-flare-quoter-data.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { UniswapV3RouterConfiguration } from '../../../../common/uniswap-v3-abstract/models/uniswap-v3-router-configuration';
2
+ /**
3
+ * Most popular tokens in uni v3 to use in a route.
4
+ */
5
+ declare const tokensSymbols: readonly ["USDC.e", "WFLR", "sFLR", "WETH", "USDT", "flrETH", "JOULE", "cUSDX"];
6
+ type TokenSymbol = (typeof tokensSymbols)[number];
7
+ export declare const UNI_SWAP_V3_SPARK_DEX_FLARE_ROUTER_CONFIGURATION: UniswapV3RouterConfiguration<TokenSymbol>;
8
+ export {};
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UNI_SWAP_V3_SPARK_DEX_FLARE_ROUTER_CONFIGURATION = void 0;
4
+ const wrapped_native_tokens_1 = require("../../../../../../../../../common/tokens/constants/wrapped-native-tokens");
5
+ const blockchain_name_1 = require("../../../../../../../../../core/blockchain/models/blockchain-name");
6
+ /**
7
+ * Most popular tokens in uni v3 to use in a route.
8
+ */
9
+ const tokensSymbols = [
10
+ 'USDC.e',
11
+ 'WFLR',
12
+ 'sFLR',
13
+ 'WETH',
14
+ 'USDT',
15
+ 'flrETH',
16
+ 'JOULE',
17
+ 'cUSDX'
18
+ ];
19
+ const routerTokens = {
20
+ WFLR: wrapped_native_tokens_1.wrappedNativeTokensList[blockchain_name_1.BLOCKCHAIN_NAME.FLARE].address,
21
+ WETH: '0x1502fa4be69d526124d453619276faccab275d3d',
22
+ sFLR: '0x12e605bc104e93b45e1ad99f9e555f659051c2bb',
23
+ USDT: '0x0b38e83b86d491735feaa0a791f65c2b99535396',
24
+ 'USDC.e': '0xfbda5f676cb37624f28265a144a48b0d6e87d3b6',
25
+ flrETH: '0x26a1fab310bd080542dc864647d05985360b16a5',
26
+ JOULE: '0xe6505f92583103af7ed9974dec451a7af4e3a3be',
27
+ cUSDX: '0xfe2907dfa8db6e320cdbf45f0aa888f6135ec4f8'
28
+ };
29
+ const routerLiquidityPools = [
30
+ {
31
+ poolAddress: '0xc9baba3f36ccaa54675deecc327ec7eaa48cb97d',
32
+ tokenSymbolA: 'sFLR',
33
+ tokenSymbolB: 'WFLR',
34
+ fee: 100
35
+ },
36
+ {
37
+ poolAddress: '0x07154de9814383e75dd7dd2a2e25b072d4b27116',
38
+ tokenSymbolA: 'USDT',
39
+ tokenSymbolB: 'USDC.e',
40
+ fee: 100
41
+ },
42
+ {
43
+ poolAddress: '0xa8697b82a5e9f108296c6299859e82472340aea7',
44
+ tokenSymbolA: 'WETH',
45
+ tokenSymbolB: 'flrETH',
46
+ fee: 500
47
+ },
48
+ {
49
+ poolAddress: '0x9a3215f8b0d128816f75175c9fd74e7ebbd987da',
50
+ tokenSymbolA: 'sFLR',
51
+ tokenSymbolB: 'WFLR',
52
+ fee: 500
53
+ },
54
+ {
55
+ poolAddress: '0xe6505f92583103af7ed9974dec451a7af4e3a3be',
56
+ tokenSymbolA: 'sFLR',
57
+ tokenSymbolB: 'JOULE',
58
+ fee: 3000
59
+ },
60
+ {
61
+ poolAddress: '0x3Bc1eCbcd645e525508c570A0fF04480a5614a86',
62
+ tokenSymbolA: 'WFLR',
63
+ tokenSymbolB: 'USDC.e',
64
+ fee: 500
65
+ },
66
+ {
67
+ poolAddress: '0x8CD69c359806af83120bc4b4e77663f1E31553e7',
68
+ tokenSymbolA: 'WETH',
69
+ tokenSymbolB: 'USDC.e',
70
+ fee: 500
71
+ },
72
+ {
73
+ poolAddress: '0x0d807ad839d4e5bff3378f15da795d9135e8ce30',
74
+ tokenSymbolA: 'WFLR',
75
+ tokenSymbolB: 'USDC.e',
76
+ fee: 100
77
+ },
78
+ {
79
+ poolAddress: '0x4a78c16660c97a041a1b2b860cce717a23a319e2',
80
+ tokenSymbolA: 'WFLR',
81
+ tokenSymbolB: 'WETH',
82
+ fee: 3000
83
+ },
84
+ {
85
+ poolAddress: '0x53676e77e352dc28eb86a3ccbc19a3ed7b63e304',
86
+ tokenSymbolA: 'USDC.e',
87
+ tokenSymbolB: 'cUSDX',
88
+ fee: 100
89
+ }
90
+ ];
91
+ exports.UNI_SWAP_V3_SPARK_DEX_FLARE_ROUTER_CONFIGURATION = {
92
+ tokens: routerTokens,
93
+ liquidityPools: routerLiquidityPools
94
+ };
95
+ //# sourceMappingURL=uniswap-v3-spark-dex-flare-router-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uniswap-v3-spark-dex-flare-router-config.js","sourceRoot":"","sources":["../../../../../../../../../../src/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/constants/uniswap-v3-spark-dex-flare-router-config.ts"],"names":[],"mappings":";;;AAAA,6FAA4F;AAC5F,gFAA6E;AAO7E;;GAEG;AACH,MAAM,aAAa,GAAG;IAClB,QAAQ;IACR,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,QAAQ;IACR,OAAO;IACP,OAAO;CACD,CAAC;AAIX,MAAM,YAAY,GAAgC;IAC9C,IAAI,EAAE,+CAAuB,CAAC,iCAAe,CAAC,KAAK,CAAE,CAAC,OAAO;IAC7D,IAAI,EAAE,4CAA4C;IAClD,IAAI,EAAE,4CAA4C;IAClD,IAAI,EAAE,4CAA4C;IAClD,QAAQ,EAAE,4CAA4C;IACtD,MAAM,EAAE,4CAA4C;IACpD,KAAK,EAAE,4CAA4C;IACnD,KAAK,EAAE,4CAA4C;CACtD,CAAC;AAEF,MAAM,oBAAoB,GAAgD;IACtE;QACI,WAAW,EAAE,4CAA4C;QACzD,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,MAAM;QACpB,GAAG,EAAE,GAAG;KACX;IACD;QACI,WAAW,EAAE,4CAA4C;QACzD,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,QAAQ;QACtB,GAAG,EAAE,GAAG;KACX;IACD;QACI,WAAW,EAAE,4CAA4C;QACzD,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,QAAQ;QACtB,GAAG,EAAE,GAAG;KACX;IACD;QACI,WAAW,EAAE,4CAA4C;QACzD,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,MAAM;QACpB,GAAG,EAAE,GAAG;KACX;IACD;QACI,WAAW,EAAE,4CAA4C;QACzD,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,OAAO;QACrB,GAAG,EAAE,IAAI;KACZ;IACD;QACI,WAAW,EAAE,4CAA4C;QACzD,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,QAAQ;QACtB,GAAG,EAAE,GAAG;KACX;IACD;QACI,WAAW,EAAE,4CAA4C;QACzD,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,QAAQ;QACtB,GAAG,EAAE,GAAG;KACX;IACD;QACI,WAAW,EAAE,4CAA4C;QACzD,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,QAAQ;QACtB,GAAG,EAAE,GAAG;KACX;IACD;QACI,WAAW,EAAE,4CAA4C;QACzD,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,MAAM;QACpB,GAAG,EAAE,IAAI;KACZ;IACD;QACI,WAAW,EAAE,4CAA4C;QACzD,YAAY,EAAE,QAAQ;QACtB,YAAY,EAAE,OAAO;QACrB,GAAG,EAAE,GAAG;KACX;CACJ,CAAC;AAEW,QAAA,gDAAgD,GACzD;IACI,MAAM,EAAE,YAAY;IACpB,cAAc,EAAE,oBAAoB;CACvC,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { OnChainTradeType } from '../../../../common/models/on-chain-trade-type';
2
+ import { UniswapV3Route } from '../../../common/uniswap-v3-abstract/models/uniswap-v3-route';
3
+ import { SparkDexV3QuoterController } from '../../../common/uniswap-v3-abstract/utils/quoter-controller/spark-dex-v3-quoter-controller';
4
+ import { UniswapV3AlgebraTradeStructOmitPath } from '../../../common/uniswap-v3-algebra-abstract/models/uniswap-v3-algebra-trade-struct';
5
+ import { UniswapV3AlgebraAbstractProvider } from '../../../common/uniswap-v3-algebra-abstract/uniswap-v3-algebra-abstract-provider';
6
+ import { SparkDexV3FlareTrade } from './spark-dex-v3-flare-trade';
7
+ export declare class SparkDexV3FlareProvider extends UniswapV3AlgebraAbstractProvider<SparkDexV3FlareTrade> {
8
+ get type(): OnChainTradeType;
9
+ protected contractAddress: string;
10
+ protected contractAbi: import("web3-utils").AbiItem[];
11
+ readonly blockchain: "FLARE";
12
+ protected readonly OnChainTradeClass: typeof SparkDexV3FlareTrade;
13
+ protected readonly providerConfiguration: import("../../../common/uniswap-v3-algebra-abstract/models/uniswap-v3-algebra-provider-configuration").UniswapV3AlgebraProviderConfiguration;
14
+ protected readonly routerConfiguration: import("../../../common/uniswap-v3-abstract/models/uniswap-v3-router-configuration").UniswapV3RouterConfiguration<"USDT" | "WETH" | "WFLR" | "sFLR" | "USDC.e" | "flrETH" | "JOULE" | "cUSDX">;
15
+ protected readonly quoterController: SparkDexV3QuoterController;
16
+ protected createTradeInstance(tradeStruct: UniswapV3AlgebraTradeStructOmitPath, route: UniswapV3Route, providerAddress: string): SparkDexV3FlareTrade;
17
+ private extractPath;
18
+ }
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SparkDexV3FlareProvider = void 0;
4
+ const errors_1 = require("../../../../../../../../common/errors");
5
+ const blockchain_1 = require("../../../../../../../../common/utils/blockchain");
6
+ const blockchain_name_1 = require("../../../../../../../../core/blockchain/models/blockchain-name");
7
+ const evm_web3_pure_1 = require("../../../../../../../../core/blockchain/web3-pure/typed-web3-pure/evm-web3-pure/evm-web3-pure");
8
+ const token_native_address_proxy_1 = require("../../../../../../../common/utils/token-native-address-proxy");
9
+ const on_chain_trade_type_1 = require("../../../../common/models/on-chain-trade-type");
10
+ const spark_dex_v3_quoter_controller_1 = require("../../../common/uniswap-v3-abstract/utils/quoter-controller/spark-dex-v3-quoter-controller");
11
+ const uniswap_v3_algebra_abstract_provider_1 = require("../../../common/uniswap-v3-algebra-abstract/uniswap-v3-algebra-abstract-provider");
12
+ const uniswap_v3_flare_configuration_1 = require("../../enosys-flare/enosys-v3-flare/uniswap-v3-flare-configuration");
13
+ const spark_dex_v3_flare_contract_abi_1 = require("./constants/spark-dex-v3-flare-contract-abi");
14
+ const spark_dex_v3_flare_quoter_data_1 = require("./constants/spark-dex-v3-flare-quoter-data");
15
+ const uniswap_v3_spark_dex_flare_router_config_1 = require("./constants/uniswap-v3-spark-dex-flare-router-config");
16
+ const spark_dex_v3_flare_trade_1 = require("./spark-dex-v3-flare-trade");
17
+ class SparkDexV3FlareProvider extends uniswap_v3_algebra_abstract_provider_1.UniswapV3AlgebraAbstractProvider {
18
+ constructor() {
19
+ super(...arguments);
20
+ this.contractAddress = spark_dex_v3_flare_contract_abi_1.SPARK_DEX_V3_FLARE_SWAP_ROUTER_CONTRACT;
21
+ this.contractAbi = spark_dex_v3_flare_contract_abi_1.SPARK_DEX_V3_FLARE_SWAP_ROUTER_ABI;
22
+ this.blockchain = blockchain_name_1.BLOCKCHAIN_NAME.FLARE;
23
+ this.OnChainTradeClass = spark_dex_v3_flare_trade_1.SparkDexV3FlareTrade;
24
+ this.providerConfiguration = uniswap_v3_flare_configuration_1.UNI_SWAP_V3_FLARE_PROVIDER_CONFIGURATION;
25
+ this.routerConfiguration = uniswap_v3_spark_dex_flare_router_config_1.UNI_SWAP_V3_SPARK_DEX_FLARE_ROUTER_CONFIGURATION;
26
+ this.quoterController = new spark_dex_v3_quoter_controller_1.SparkDexV3QuoterController(this.blockchain, this.routerConfiguration, spark_dex_v3_flare_quoter_data_1.SPARK_DEX_V3_FLARE_QUOTER_CONTRACT_ADDRESS, spark_dex_v3_flare_quoter_data_1.SPARK_DEX_V3_FLARE_QUOTER_CONTRACT_ABI, '0xb3fB4f96175f6f9D716c17744e5A6d4BA9da8176');
27
+ }
28
+ get type() {
29
+ return on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SPARK_DEX_V3;
30
+ }
31
+ createTradeInstance(tradeStruct, route, providerAddress) {
32
+ const path = this.extractPath(route);
33
+ return new this.OnChainTradeClass({
34
+ ...tradeStruct,
35
+ path,
36
+ route
37
+ }, providerAddress);
38
+ }
39
+ extractPath(route) {
40
+ const initialPool = route.poolsPath[0];
41
+ if (!initialPool) {
42
+ throw new errors_1.RubicSdkError('Initial pool has to be defined');
43
+ }
44
+ const path = [
45
+ (0, blockchain_1.compareAddresses)(initialPool.token0.address, route.initialTokenAddress)
46
+ ? initialPool.token0
47
+ : initialPool.token1
48
+ ];
49
+ const lastToken = path[path.length - 1];
50
+ if (!lastToken) {
51
+ throw new errors_1.RubicSdkError('Last token has to be defined');
52
+ }
53
+ route.poolsPath.forEach(pool => {
54
+ path.push(!(0, blockchain_1.compareAddresses)(pool.token0.address, lastToken.address)
55
+ ? pool.token0
56
+ : pool.token1);
57
+ });
58
+ return (0, token_native_address_proxy_1.createTokenNativeAddressProxyInPathStartAndEnd)(path, evm_web3_pure_1.EvmWeb3Pure.nativeTokenAddress);
59
+ }
60
+ }
61
+ exports.SparkDexV3FlareProvider = SparkDexV3FlareProvider;
62
+ //# sourceMappingURL=spark-dex-v3-flare-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spark-dex-v3-flare-provider.js","sourceRoot":"","sources":["../../../../../../../../../src/features/on-chain/calculation-manager/providers/dexes/flare/spark-dex-flare/spark-dex-v3-flare/spark-dex-v3-flare-provider.ts"],"names":[],"mappings":";;;AAAA,8CAAkD;AAElD,4DAA+D;AAC/D,gFAA6E;AAC7E,6GAAwG;AACxG,qGAAsH;AAEtH,uFAGuD;AAEvD,+IAAwI;AAExI,2IAAoI;AACpI,sHAA6H;AAC7H,iGAGqD;AACrD,+FAGoD;AACpD,mHAAwH;AACxH,yEAAkE;AAElE,MAAa,uBAAwB,SAAQ,uEAAsD;IAAnG;;QAKc,oBAAe,GAAG,yEAAuC,CAAC;QAE1D,gBAAW,GAAG,oEAAkC,CAAC;QAE3C,eAAU,GAAG,iCAAe,CAAC,KAAK,CAAC;QAEhC,sBAAiB,GAAG,+CAAoB,CAAC;QAEzC,0BAAqB,GAAG,yEAAwC,CAAC;QAEjE,wBAAmB,GAAG,2FAAgD,CAAC;QAEvE,qBAAgB,GAAG,IAAI,2DAA0B,CAChE,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,mBAAmB,EACxB,2EAA0C,EAC1C,uEAAsC,EACtC,4CAA4C,CAC/C,CAAC;IA4CN,CAAC;IAlEG,IAAW,IAAI;QACX,OAAO,yCAAmB,CAAC,YAAY,CAAC;IAC5C,CAAC;IAsBS,mBAAmB,CACzB,WAAgD,EAChD,KAAqB,EACrB,eAAuB;QAEvB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACrC,OAAO,IAAI,IAAI,CAAC,iBAAiB,CAC7B;YACI,GAAG,WAAW;YACd,IAAI;YACJ,KAAK;SACR,EACD,eAAe,CAClB,CAAC;IACN,CAAC;IAEO,WAAW,CAAC,KAAqB;QACrC,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,MAAM,IAAI,sBAAa,CAAC,gCAAgC,CAAC,CAAC;QAC9D,CAAC;QACD,MAAM,IAAI,GAAY;YAClB,IAAA,6BAAgB,EAAC,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,mBAAmB,CAAC;gBACnE,CAAC,CAAC,WAAW,CAAC,MAAM;gBACpB,CAAC,CAAC,WAAW,CAAC,MAAM;SAC3B,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACxC,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,MAAM,IAAI,sBAAa,CAAC,8BAA8B,CAAC,CAAC;QAC5D,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC3B,IAAI,CAAC,IAAI,CACL,CAAC,IAAA,6BAAgB,EAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC;gBACrD,CAAC,CAAC,IAAI,CAAC,MAAM;gBACb,CAAC,CAAC,IAAI,CAAC,MAAM,CACpB,CAAC;QACN,CAAC,CAAC,CAAC;QAEH,OAAO,IAAA,2EAA8C,EAAC,IAAI,EAAE,2BAAW,CAAC,kBAAkB,CAAC,CAAC;IAChG,CAAC;CACJ;AAnED,0DAmEC"}
@@ -0,0 +1,7 @@
1
+ import { OnChainTradeType } from '../../../../common/models/on-chain-trade-type';
2
+ import { UniswapV3AbstractTrade } from '../../../common/uniswap-v3-abstract/uniswap-v3-abstract-trade';
3
+ export declare class SparkDexV3FlareTrade extends UniswapV3AbstractTrade {
4
+ get type(): OnChainTradeType;
5
+ readonly dexContractAddress = "0xCb70f9bA912a99849d19FC24Ccb7925ED307b877";
6
+ protected readonly contractAbi: import("web3-utils").AbiItem[];
7
+ }