rubic-sdk 4.45.3 → 4.46.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/rubic-sdk.min.js +1388 -9
- package/dist/rubic-sdk.min.js.map +1 -1
- package/lib/common/tokens/token.js +1 -1
- package/lib/common/tokens/token.js.map +1 -1
- package/lib/core/blockchain/models/blockchain-name.d.ts +2 -0
- package/lib/core/blockchain/models/blockchain-name.js +1 -0
- package/lib/core/blockchain/models/blockchain-name.js.map +1 -1
- package/lib/core/blockchain/models/chain-type.d.ts +1 -1
- package/lib/core/blockchain/models/chain-type.js +1 -1
- package/lib/core/blockchain/models/chain-type.js.map +1 -1
- package/lib/core/blockchain/web3-private-service/models/web-private-supported-blockchain.d.ts +1 -1
- package/lib/core/blockchain/web3-public-service/models/web3-public-storage.d.ts +1 -1
- package/lib/features/common/providers/rango/constants/rango-api-common.d.ts +2 -0
- package/lib/features/common/providers/rango/constants/rango-api-common.js +6 -0
- package/lib/features/common/providers/rango/constants/rango-api-common.js.map +1 -0
- package/lib/features/common/providers/rango/constants/rango-contract-address.d.ts +3 -0
- package/lib/features/common/providers/rango/constants/rango-contract-address.js +73 -0
- package/lib/features/common/providers/rango/constants/rango-contract-address.js.map +1 -0
- package/lib/features/common/providers/rango/models/rango-api-best-route-types.d.ts +54 -0
- package/lib/features/common/providers/rango/models/rango-api-best-route-types.js +3 -0
- package/lib/features/common/providers/rango/models/rango-api-best-route-types.js.map +1 -0
- package/lib/features/common/providers/rango/models/rango-api-blockchain-names.d.ts +3 -0
- package/lib/features/common/providers/rango/models/rango-api-blockchain-names.js +20 -0
- package/lib/features/common/providers/rango/models/rango-api-blockchain-names.js.map +1 -0
- package/lib/features/common/providers/rango/models/rango-api-common-types.d.ts +26 -0
- package/lib/features/common/providers/rango/models/rango-api-common-types.js +10 -0
- package/lib/features/common/providers/rango/models/rango-api-common-types.js.map +1 -0
- package/lib/features/common/providers/rango/models/rango-api-status-types.d.ts +38 -0
- package/lib/features/common/providers/rango/models/rango-api-status-types.js +9 -0
- package/lib/features/common/providers/rango/models/rango-api-status-types.js.map +1 -0
- package/lib/features/common/providers/rango/models/rango-api-swap-types.d.ts +56 -0
- package/lib/features/common/providers/rango/models/rango-api-swap-types.js +3 -0
- package/lib/features/common/providers/rango/models/rango-api-swap-types.js.map +1 -0
- package/lib/features/common/providers/rango/models/rango-api-symbol-names.d.ts +3 -0
- package/lib/features/common/providers/rango/models/rango-api-symbol-names.js +20 -0
- package/lib/features/common/providers/rango/models/rango-api-symbol-names.js.map +1 -0
- package/lib/features/common/providers/rango/models/rango-api-trade-types.d.ts +125 -0
- package/lib/features/common/providers/rango/models/rango-api-trade-types.js +69 -0
- package/lib/features/common/providers/rango/models/rango-api-trade-types.js.map +1 -0
- package/lib/features/common/providers/rango/models/rango-parser-types.d.ts +37 -0
- package/lib/features/common/providers/rango/models/rango-parser-types.js +3 -0
- package/lib/features/common/providers/rango/models/rango-parser-types.js.map +1 -0
- package/lib/features/common/providers/rango/models/rango-supported-blockchains.d.ts +2 -0
- package/lib/features/common/providers/rango/models/rango-supported-blockchains.js +20 -0
- package/lib/features/common/providers/rango/models/rango-supported-blockchains.js.map +1 -0
- package/lib/features/common/providers/rango/services/rango-parser.d.ts +13 -0
- package/lib/features/common/providers/rango/services/rango-parser.js +56 -0
- package/lib/features/common/providers/rango/services/rango-parser.js.map +1 -0
- package/lib/features/common/providers/rango/utils/rango-utils.d.ts +18 -0
- package/lib/features/common/providers/rango/utils/rango-utils.js +63 -0
- package/lib/features/common/providers/rango/utils/rango-utils.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/constants/cross-chain-providers.d.ts +2 -1
- package/lib/features/cross-chain/calculation-manager/constants/cross-chain-providers.js +3 -1
- package/lib/features/cross-chain/calculation-manager/constants/cross-chain-providers.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/models/cross-chain-options.d.ts +5 -0
- package/lib/features/cross-chain/calculation-manager/models/cross-chain-trade-type.d.ts +1 -0
- package/lib/features/cross-chain/calculation-manager/models/cross-chain-trade-type.js +2 -1
- package/lib/features/cross-chain/calculation-manager/models/cross-chain-trade-type.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/changenow-provider/changenow-cross-chain-trade.d.ts +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/common/cross-chain-trade.d.ts +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/common/cross-chain-trade.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/common/emv-cross-chain-trade/evm-cross-chain-trade.d.ts +4 -0
- package/lib/features/cross-chain/calculation-manager/providers/common/emv-cross-chain-trade/evm-cross-chain-trade.js +4 -0
- package/lib/features/cross-chain/calculation-manager/providers/common/emv-cross-chain-trade/evm-cross-chain-trade.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/common/models/bridge-type.d.ts +8 -2
- package/lib/features/cross-chain/calculation-manager/providers/common/models/default-bridge-type.d.ts +7 -1
- package/lib/features/cross-chain/calculation-manager/providers/common/models/default-bridge-type.js +6 -1
- package/lib/features/cross-chain/calculation-manager/providers/common/models/default-bridge-type.js.map +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/common/models/rubicStep.d.ts +2 -2
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-api-types.d.ts +8 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-api-types.js +3 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-api-types.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-parser-types.d.ts +32 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-parser-types.js +3 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-parser-types.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-provider.d.ts +21 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-provider.js +111 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-provider.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-trade.d.ts +48 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-trade.js +210 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-trade.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service.d.ts +12 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service.js +36 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-params-parser.d.ts +4 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-params-parser.js +37 -0
- package/lib/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-params-parser.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-provider.js +1 -1
- package/lib/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-provider.js.map +1 -1
- package/lib/features/cross-chain/status-manager/cross-chain-status-manager.d.ts +1 -0
- package/lib/features/cross-chain/status-manager/cross-chain-status-manager.js +25 -1
- package/lib/features/cross-chain/status-manager/cross-chain-status-manager.js.map +1 -1
- package/lib/features/on-chain/calculation-manager/on-chain-manager.d.ts +3 -0
- package/lib/features/on-chain/calculation-manager/on-chain-manager.js +34 -2
- package/lib/features/on-chain/calculation-manager/on-chain-manager.js.map +1 -1
- package/lib/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.d.ts +14 -0
- package/lib/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.js +14 -0
- package/lib/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.js.map +1 -1
- package/lib/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-disabled-providers.d.ts +2 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-disabled-providers.js +19 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-disabled-providers.js.map +1 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-trade-types.d.ts +5 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-trade-types.js +3 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-trade-types.js.map +1 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/rango-on-chain-provider.d.ts +17 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/rango-on-chain-provider.js +105 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/rango-on-chain-provider.js.map +1 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/rango-on-chain-trade.d.ts +22 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/rango-on-chain-trade.js +114 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/rango-on-chain-trade.js.map +1 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/services/rango-on-chain-api-service.d.ts +12 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/services/rango-on-chain-api-service.js +36 -0
- package/lib/features/on-chain/calculation-manager/providers/rango/services/rango-on-chain-api-service.js.map +1 -0
- package/lib/index.d.ts +24 -0
- package/lib/index.js +24 -0
- package/lib/index.js.map +1 -1
- package/package.json +1 -2
package/dist/rubic-sdk.min.js
CHANGED
|
@@ -171458,7 +171458,7 @@ class Token {
|
|
|
171458
171458
|
get isNative() {
|
|
171459
171459
|
const chainType = blockchains_info_1.BlockchainsInfo.getChainType(this.blockchain);
|
|
171460
171460
|
if (chainType && web3_pure_1.Web3Pure[chainType].isNativeAddress(this.address)) {
|
|
171461
|
-
return web3_pure_1.Web3Pure[
|
|
171461
|
+
return web3_pure_1.Web3Pure[chainType].isNativeAddress(this.address);
|
|
171462
171462
|
}
|
|
171463
171463
|
return this.address === web3_pure_1.Web3Pure[chainType].nativeTokenAddress;
|
|
171464
171464
|
}
|
|
@@ -172190,6 +172190,7 @@ exports.EVM_BLOCKCHAIN_NAME = {
|
|
|
172190
172190
|
DFK: 'DEFIKINGDOMS',
|
|
172191
172191
|
KLAYTN: 'KLAYTN',
|
|
172192
172192
|
VELAS: 'VELAS',
|
|
172193
|
+
STARKNET: 'STARKNET',
|
|
172193
172194
|
SYSCOIN: 'SYSCOIN',
|
|
172194
172195
|
ETHEREUM_CLASSIC: 'ETHEREUM_CLASSIC',
|
|
172195
172196
|
FLARE: 'FLARE',
|
|
@@ -172350,9 +172351,9 @@ exports.CHAIN_TYPE = {
|
|
|
172350
172351
|
RAVENCOIN: 'RAVENCOIN',
|
|
172351
172352
|
SIA: 'SIA',
|
|
172352
172353
|
SECRET: 'SECRET',
|
|
172354
|
+
STACKS: 'STACKS',
|
|
172353
172355
|
STEEM: 'STEEM',
|
|
172354
172356
|
STRATIS: 'STRATIS',
|
|
172355
|
-
STACKS: 'STACKS',
|
|
172356
172357
|
SOLAR: 'SOLAR',
|
|
172357
172358
|
TON: 'TON',
|
|
172358
172359
|
VE_CHAIN: 'VE_CHAIN',
|
|
@@ -178085,6 +178086,491 @@ function getLifiConfig() {
|
|
|
178085
178086
|
exports.getLifiConfig = getLifiConfig;
|
|
178086
178087
|
|
|
178087
178088
|
|
|
178089
|
+
/***/ }),
|
|
178090
|
+
|
|
178091
|
+
/***/ "./src/features/common/providers/rango/constants/rango-api-common.ts":
|
|
178092
|
+
/*!***************************************************************************!*\
|
|
178093
|
+
!*** ./src/features/common/providers/rango/constants/rango-api-common.ts ***!
|
|
178094
|
+
\***************************************************************************/
|
|
178095
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
178096
|
+
|
|
178097
|
+
"use strict";
|
|
178098
|
+
|
|
178099
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178100
|
+
exports.RANGO_API_ENDPOINT = exports.RANGO_API_KEY = void 0;
|
|
178101
|
+
exports.RANGO_API_KEY = 'a24ca428-a18e-4e84-b57f-edb3e2a5bf13';
|
|
178102
|
+
exports.RANGO_API_ENDPOINT = 'https://api.rango.exchange/basic';
|
|
178103
|
+
|
|
178104
|
+
|
|
178105
|
+
/***/ }),
|
|
178106
|
+
|
|
178107
|
+
/***/ "./src/features/common/providers/rango/constants/rango-contract-address.ts":
|
|
178108
|
+
/*!*********************************************************************************!*\
|
|
178109
|
+
!*** ./src/features/common/providers/rango/constants/rango-contract-address.ts ***!
|
|
178110
|
+
\*********************************************************************************/
|
|
178111
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
178112
|
+
|
|
178113
|
+
"use strict";
|
|
178114
|
+
|
|
178115
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178116
|
+
exports.RangoContractAddresses = void 0;
|
|
178117
|
+
const blockchain_name_1 = __webpack_require__(/*! ../../../../../core/blockchain/models/blockchain-name */ "./src/core/blockchain/models/blockchain-name.ts");
|
|
178118
|
+
const rubic_proxy_contract_address_1 = __webpack_require__(/*! ../../../../cross-chain/calculation-manager/providers/common/constants/rubic-proxy-contract-address */ "./src/features/cross-chain/calculation-manager/providers/common/constants/rubic-proxy-contract-address.ts");
|
|
178119
|
+
exports.RangoContractAddresses = {
|
|
178120
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM]: {
|
|
178121
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178122
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178123
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178124
|
+
},
|
|
178125
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.POLYGON]: {
|
|
178126
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178127
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178128
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178129
|
+
},
|
|
178130
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.OPTIMISM]: {
|
|
178131
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178132
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178133
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178134
|
+
},
|
|
178135
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.ARBITRUM]: {
|
|
178136
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178137
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178138
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178139
|
+
},
|
|
178140
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.AVALANCHE]: {
|
|
178141
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178142
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178143
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178144
|
+
},
|
|
178145
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.BINANCE_SMART_CHAIN]: {
|
|
178146
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178147
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178148
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178149
|
+
},
|
|
178150
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.CRONOS]: {
|
|
178151
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178152
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178153
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178154
|
+
},
|
|
178155
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.POLYGON_ZKEVM]: {
|
|
178156
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178157
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178158
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178159
|
+
},
|
|
178160
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.AURORA]: {
|
|
178161
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178162
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178163
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178164
|
+
},
|
|
178165
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.LINEA]: {
|
|
178166
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178167
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178168
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178169
|
+
},
|
|
178170
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.METIS]: {
|
|
178171
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178172
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178173
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178174
|
+
},
|
|
178175
|
+
// [BLOCKCHAIN_NAME.ZK_SYNC]: {
|
|
178176
|
+
// providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178177
|
+
// providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178178
|
+
// rubicRouter: rubicProxyContractAddress[BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178179
|
+
// },
|
|
178180
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.BASE]: {
|
|
178181
|
+
providerGateway: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178182
|
+
providerRouter: '0x69460570c93f9DE5E2edbC3052bf10125f0Ca22d',
|
|
178183
|
+
rubicRouter: rubic_proxy_contract_address_1.rubicProxyContractAddress[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM].router
|
|
178184
|
+
}
|
|
178185
|
+
};
|
|
178186
|
+
|
|
178187
|
+
|
|
178188
|
+
/***/ }),
|
|
178189
|
+
|
|
178190
|
+
/***/ "./src/features/common/providers/rango/models/rango-api-best-route-types.ts":
|
|
178191
|
+
/*!**********************************************************************************!*\
|
|
178192
|
+
!*** ./src/features/common/providers/rango/models/rango-api-best-route-types.ts ***!
|
|
178193
|
+
\**********************************************************************************/
|
|
178194
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
178195
|
+
|
|
178196
|
+
"use strict";
|
|
178197
|
+
|
|
178198
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178199
|
+
|
|
178200
|
+
|
|
178201
|
+
/***/ }),
|
|
178202
|
+
|
|
178203
|
+
/***/ "./src/features/common/providers/rango/models/rango-api-blockchain-names.ts":
|
|
178204
|
+
/*!**********************************************************************************!*\
|
|
178205
|
+
!*** ./src/features/common/providers/rango/models/rango-api-blockchain-names.ts ***!
|
|
178206
|
+
\**********************************************************************************/
|
|
178207
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
178208
|
+
|
|
178209
|
+
"use strict";
|
|
178210
|
+
|
|
178211
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178212
|
+
exports.rangoApiBlockchainNames = void 0;
|
|
178213
|
+
const blockchain_name_1 = __webpack_require__(/*! ../../../../../core/blockchain/models/blockchain-name */ "./src/core/blockchain/models/blockchain-name.ts");
|
|
178214
|
+
exports.rangoApiBlockchainNames = {
|
|
178215
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM]: 'ETH',
|
|
178216
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.POLYGON]: 'POLYGON',
|
|
178217
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.OPTIMISM]: 'OPTIMISM',
|
|
178218
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.ARBITRUM]: 'ARBITRUM',
|
|
178219
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.AVALANCHE]: 'AVAX_CCHAIN',
|
|
178220
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.BINANCE_SMART_CHAIN]: 'BSC',
|
|
178221
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.CRONOS]: 'CRONOS',
|
|
178222
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.POLYGON_ZKEVM]: 'POLYGONZK',
|
|
178223
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.AURORA]: 'AURORA',
|
|
178224
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.BASE]: 'BASE',
|
|
178225
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.METIS]: 'METIS',
|
|
178226
|
+
// [BLOCKCHAIN_NAME.ZK_SYNC]: 'ZKSYNC',
|
|
178227
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.LINEA]: 'LINEA'
|
|
178228
|
+
};
|
|
178229
|
+
|
|
178230
|
+
|
|
178231
|
+
/***/ }),
|
|
178232
|
+
|
|
178233
|
+
/***/ "./src/features/common/providers/rango/models/rango-api-common-types.ts":
|
|
178234
|
+
/*!******************************************************************************!*\
|
|
178235
|
+
!*** ./src/features/common/providers/rango/models/rango-api-common-types.ts ***!
|
|
178236
|
+
\******************************************************************************/
|
|
178237
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
178238
|
+
|
|
178239
|
+
"use strict";
|
|
178240
|
+
|
|
178241
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178242
|
+
exports.RangoRoutingResult = void 0;
|
|
178243
|
+
exports.RangoRoutingResult = {
|
|
178244
|
+
OK: 'OK',
|
|
178245
|
+
HIGH_IMPACT: 'HIGH_IMPACT',
|
|
178246
|
+
NO_ROUTE: 'NO_ROUTE',
|
|
178247
|
+
INPUT_LIMIT_ISSUE: 'INPUT_LIMIT_ISSUE'
|
|
178248
|
+
};
|
|
178249
|
+
|
|
178250
|
+
|
|
178251
|
+
/***/ }),
|
|
178252
|
+
|
|
178253
|
+
/***/ "./src/features/common/providers/rango/models/rango-api-status-types.ts":
|
|
178254
|
+
/*!******************************************************************************!*\
|
|
178255
|
+
!*** ./src/features/common/providers/rango/models/rango-api-status-types.ts ***!
|
|
178256
|
+
\******************************************************************************/
|
|
178257
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
178258
|
+
|
|
178259
|
+
"use strict";
|
|
178260
|
+
|
|
178261
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178262
|
+
exports.RANGO_SWAP_STATUS = void 0;
|
|
178263
|
+
exports.RANGO_SWAP_STATUS = {
|
|
178264
|
+
SUCCESS: 'success',
|
|
178265
|
+
FAILED: 'failed',
|
|
178266
|
+
RUNNING: 'running'
|
|
178267
|
+
};
|
|
178268
|
+
|
|
178269
|
+
|
|
178270
|
+
/***/ }),
|
|
178271
|
+
|
|
178272
|
+
/***/ "./src/features/common/providers/rango/models/rango-api-swap-types.ts":
|
|
178273
|
+
/*!****************************************************************************!*\
|
|
178274
|
+
!*** ./src/features/common/providers/rango/models/rango-api-swap-types.ts ***!
|
|
178275
|
+
\****************************************************************************/
|
|
178276
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
178277
|
+
|
|
178278
|
+
"use strict";
|
|
178279
|
+
|
|
178280
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178281
|
+
|
|
178282
|
+
|
|
178283
|
+
/***/ }),
|
|
178284
|
+
|
|
178285
|
+
/***/ "./src/features/common/providers/rango/models/rango-api-symbol-names.ts":
|
|
178286
|
+
/*!******************************************************************************!*\
|
|
178287
|
+
!*** ./src/features/common/providers/rango/models/rango-api-symbol-names.ts ***!
|
|
178288
|
+
\******************************************************************************/
|
|
178289
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
178290
|
+
|
|
178291
|
+
"use strict";
|
|
178292
|
+
|
|
178293
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178294
|
+
exports.rangoApiSymbols = void 0;
|
|
178295
|
+
const blockchain_name_1 = __webpack_require__(/*! ../../../../../core/blockchain/models/blockchain-name */ "./src/core/blockchain/models/blockchain-name.ts");
|
|
178296
|
+
exports.rangoApiSymbols = {
|
|
178297
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM]: 'ETH',
|
|
178298
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.POLYGON]: 'MATIC',
|
|
178299
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.OPTIMISM]: 'ETH',
|
|
178300
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.ARBITRUM]: 'ETH',
|
|
178301
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.AVALANCHE]: 'AVAX',
|
|
178302
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.BINANCE_SMART_CHAIN]: 'BNB',
|
|
178303
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.CRONOS]: 'CRO',
|
|
178304
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.POLYGON_ZKEVM]: 'ETH',
|
|
178305
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.AURORA]: 'ETH',
|
|
178306
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.BASE]: 'ETH',
|
|
178307
|
+
// [BLOCKCHAIN_NAME.ZK_SYNC]: 'ETH',
|
|
178308
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.LINEA]: 'ETH',
|
|
178309
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.METIS]: 'METIS'
|
|
178310
|
+
};
|
|
178311
|
+
|
|
178312
|
+
|
|
178313
|
+
/***/ }),
|
|
178314
|
+
|
|
178315
|
+
/***/ "./src/features/common/providers/rango/models/rango-api-trade-types.ts":
|
|
178316
|
+
/*!*****************************************************************************!*\
|
|
178317
|
+
!*** ./src/features/common/providers/rango/models/rango-api-trade-types.ts ***!
|
|
178318
|
+
\*****************************************************************************/
|
|
178319
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
178320
|
+
|
|
178321
|
+
"use strict";
|
|
178322
|
+
|
|
178323
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178324
|
+
exports.rangoTradeTypes = exports.rangoCrossChainTradeTypes = exports.rangoOnChainTradeTypes = void 0;
|
|
178325
|
+
const bridge_type_1 = __webpack_require__(/*! ../../../../cross-chain/calculation-manager/providers/common/models/bridge-type */ "./src/features/cross-chain/calculation-manager/providers/common/models/bridge-type.ts");
|
|
178326
|
+
const on_chain_trade_type_1 = __webpack_require__(/*! ../../../../on-chain/calculation-manager/providers/common/models/on-chain-trade-type */ "./src/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.ts");
|
|
178327
|
+
exports.rangoOnChainTradeTypes = {
|
|
178328
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE['10K_SWAP']]: '10KSwap',
|
|
178329
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.PANGOLIN]: 'Pangolin Swap',
|
|
178330
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SUSHI_SWAP]: 'Sushi Swap',
|
|
178331
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OSMOSIS_SWAP]: 'Osmosis',
|
|
178332
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.UNISWAP_V2]: 'UniSwapV2',
|
|
178333
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.VVS_FINANCE]: 'VVS Finance',
|
|
178334
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.MM_FINANCE]: 'MM Finance',
|
|
178335
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.CRONA_SWAP]: 'Crona Swap',
|
|
178336
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OOLONG_SWAP]: 'Oolong Swap',
|
|
178337
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.TRISOLARIS]: 'Trisolaris Swap',
|
|
178338
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.MOJITO_SWAP]: 'Mojito Swap',
|
|
178339
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.NET_SWAP]: 'Netswap',
|
|
178340
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.VOLTAGE_SWAP]: 'Voltage Swap',
|
|
178341
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.PANCAKE_SWAP]: 'PancakeV2',
|
|
178342
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.PANCAKE_SWAP_V3]: 'PancakeV3',
|
|
178343
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.UNI_SWAP_V3]: 'UniSwapV3',
|
|
178344
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.KYBER_SWAP]: 'KyberSwapV3',
|
|
178345
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.JUPITER]: 'Jupiter',
|
|
178346
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OPEN_OCEAN]: 'Open Ocean',
|
|
178347
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.CURVE]: 'CurveFi',
|
|
178348
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.QUICK_SWAP]: 'Quick Swap',
|
|
178349
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.XY_DEX]: 'XY Finance',
|
|
178350
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SOLAR_BEAM]: 'Solarbeam',
|
|
178351
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.AURORA_SWAP]: 'Aurora Swap',
|
|
178352
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.STELLA_SWAP]: 'Stella Swap',
|
|
178353
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.ONE_INCH]: '1Inch',
|
|
178354
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.BEAM_SWAP]: 'Beam Swap',
|
|
178355
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.PARA_SWAP]: 'ParaSwap',
|
|
178356
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SYNAPSE]: 'Synapse Swapper',
|
|
178357
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.FINKUJIRA]: 'Fin Kujira',
|
|
178358
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SOLANA]: 'Solana Wrapper',
|
|
178359
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.AVNU]: 'Avnu',
|
|
178360
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.ECHO_DEX]: 'EchoDEX',
|
|
178361
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SPACEFI_SWAP]: 'SpaceFi',
|
|
178362
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.WYND]: 'Wynd Dex',
|
|
178363
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SUN_SWAP]: 'Sun Swap',
|
|
178364
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.MDEX]: 'MDex',
|
|
178365
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OKC_SWAP]: 'Okc Swap',
|
|
178366
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.CHERRY_SWAP]: 'Cherry Swap'
|
|
178367
|
+
};
|
|
178368
|
+
exports.rangoCrossChainTradeTypes = {
|
|
178369
|
+
[bridge_type_1.BRIDGE_TYPE.ACROSS]: 'Across',
|
|
178370
|
+
[bridge_type_1.BRIDGE_TYPE.VOYAGER]: 'Voyager',
|
|
178371
|
+
[bridge_type_1.BRIDGE_TYPE.CBRIDGE]: 'CBridge',
|
|
178372
|
+
[bridge_type_1.BRIDGE_TYPE.RAINBOW]: 'Rainbow Bridge',
|
|
178373
|
+
[bridge_type_1.BRIDGE_TYPE.SYNAPSE]: 'Synapse Bridge',
|
|
178374
|
+
[bridge_type_1.BRIDGE_TYPE.OPTIMISM_GATEWAY]: 'Optimism Bridge',
|
|
178375
|
+
[bridge_type_1.BRIDGE_TYPE.ORBITER_BRIDGE]: 'Orbiter',
|
|
178376
|
+
[bridge_type_1.BRIDGE_TYPE.MAYA_PROTOCOL]: 'Maya Protocol',
|
|
178377
|
+
[bridge_type_1.BRIDGE_TYPE.XY]: 'XY Finance',
|
|
178378
|
+
[bridge_type_1.BRIDGE_TYPE.THORCHAIN]: 'ThorChain',
|
|
178379
|
+
[bridge_type_1.BRIDGE_TYPE.ARBITRUM_BRIDGE]: 'Arbitrum Bridge',
|
|
178380
|
+
[bridge_type_1.BRIDGE_TYPE.ALLBRIDGE]: 'AllBridge',
|
|
178381
|
+
[bridge_type_1.BRIDGE_TYPE.HYPHEN]: 'Hyphen',
|
|
178382
|
+
[bridge_type_1.BRIDGE_TYPE.CIRCLE_CELER_BRIDGE]: 'Circle',
|
|
178383
|
+
[bridge_type_1.BRIDGE_TYPE.IBC]: 'IBC',
|
|
178384
|
+
[bridge_type_1.BRIDGE_TYPE.STARGATE]: 'Stargate',
|
|
178385
|
+
[bridge_type_1.BRIDGE_TYPE.SATELLITE]: 'Satellite',
|
|
178386
|
+
[bridge_type_1.BRIDGE_TYPE.SYMBIOSIS]: 'Symbiosis',
|
|
178387
|
+
[bridge_type_1.BRIDGE_TYPE.OSMOSIS_BRIDGE]: 'Osmosis'
|
|
178388
|
+
};
|
|
178389
|
+
exports.rangoTradeTypes = { ...exports.rangoOnChainTradeTypes, ...exports.rangoCrossChainTradeTypes };
|
|
178390
|
+
|
|
178391
|
+
|
|
178392
|
+
/***/ }),
|
|
178393
|
+
|
|
178394
|
+
/***/ "./src/features/common/providers/rango/models/rango-parser-types.ts":
|
|
178395
|
+
/*!**************************************************************************!*\
|
|
178396
|
+
!*** ./src/features/common/providers/rango/models/rango-parser-types.ts ***!
|
|
178397
|
+
\**************************************************************************/
|
|
178398
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
178399
|
+
|
|
178400
|
+
"use strict";
|
|
178401
|
+
|
|
178402
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178403
|
+
|
|
178404
|
+
|
|
178405
|
+
/***/ }),
|
|
178406
|
+
|
|
178407
|
+
/***/ "./src/features/common/providers/rango/models/rango-supported-blockchains.ts":
|
|
178408
|
+
/*!***********************************************************************************!*\
|
|
178409
|
+
!*** ./src/features/common/providers/rango/models/rango-supported-blockchains.ts ***!
|
|
178410
|
+
\***********************************************************************************/
|
|
178411
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
178412
|
+
|
|
178413
|
+
"use strict";
|
|
178414
|
+
|
|
178415
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178416
|
+
exports.rangoSupportedBlockchains = void 0;
|
|
178417
|
+
const blockchain_name_1 = __webpack_require__(/*! ../../../../../core/blockchain/models/blockchain-name */ "./src/core/blockchain/models/blockchain-name.ts");
|
|
178418
|
+
exports.rangoSupportedBlockchains = [
|
|
178419
|
+
blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM,
|
|
178420
|
+
blockchain_name_1.BLOCKCHAIN_NAME.POLYGON,
|
|
178421
|
+
blockchain_name_1.BLOCKCHAIN_NAME.OPTIMISM,
|
|
178422
|
+
blockchain_name_1.BLOCKCHAIN_NAME.ARBITRUM,
|
|
178423
|
+
blockchain_name_1.BLOCKCHAIN_NAME.AVALANCHE,
|
|
178424
|
+
blockchain_name_1.BLOCKCHAIN_NAME.BINANCE_SMART_CHAIN,
|
|
178425
|
+
blockchain_name_1.BLOCKCHAIN_NAME.CRONOS,
|
|
178426
|
+
blockchain_name_1.BLOCKCHAIN_NAME.POLYGON_ZKEVM,
|
|
178427
|
+
blockchain_name_1.BLOCKCHAIN_NAME.AURORA,
|
|
178428
|
+
blockchain_name_1.BLOCKCHAIN_NAME.METIS,
|
|
178429
|
+
// BLOCKCHAIN_NAME.ZK_SYNC,
|
|
178430
|
+
blockchain_name_1.BLOCKCHAIN_NAME.BASE,
|
|
178431
|
+
blockchain_name_1.BLOCKCHAIN_NAME.LINEA
|
|
178432
|
+
];
|
|
178433
|
+
|
|
178434
|
+
|
|
178435
|
+
/***/ }),
|
|
178436
|
+
|
|
178437
|
+
/***/ "./src/features/common/providers/rango/services/rango-parser.ts":
|
|
178438
|
+
/*!**********************************************************************!*\
|
|
178439
|
+
!*** ./src/features/common/providers/rango/services/rango-parser.ts ***!
|
|
178440
|
+
\**********************************************************************/
|
|
178441
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
178442
|
+
|
|
178443
|
+
"use strict";
|
|
178444
|
+
|
|
178445
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178446
|
+
exports.RangoCommonParser = void 0;
|
|
178447
|
+
const web3_pure_1 = __webpack_require__(/*! ../../../../../core/blockchain/web3-pure/web3-pure */ "./src/core/blockchain/web3-pure/web3-pure.ts");
|
|
178448
|
+
const injector_1 = __webpack_require__(/*! ../../../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
178449
|
+
const rango_api_common_1 = __webpack_require__(/*! ../constants/rango-api-common */ "./src/features/common/providers/rango/constants/rango-api-common.ts");
|
|
178450
|
+
const rango_utils_1 = __webpack_require__(/*! ../utils/rango-utils */ "./src/features/common/providers/rango/utils/rango-utils.ts");
|
|
178451
|
+
class RangoCommonParser {
|
|
178452
|
+
/**
|
|
178453
|
+
* @description Transform parameters to required view for rango-api
|
|
178454
|
+
*/
|
|
178455
|
+
static async getBestRouteQueryParams(from, toToken, options) {
|
|
178456
|
+
const fromParam = await rango_utils_1.RangoUtils.getFromToQueryParam(from);
|
|
178457
|
+
const toParam = await rango_utils_1.RangoUtils.getFromToQueryParam(toToken);
|
|
178458
|
+
const amountParam = web3_pure_1.Web3Pure.toWei(from.tokenAmount, from.decimals);
|
|
178459
|
+
const apiKey = rango_api_common_1.RANGO_API_KEY;
|
|
178460
|
+
const swapperGroups = options.swapperGroups?.map(swapper => rango_utils_1.RangoUtils.getTradeTypeForRango(swapper));
|
|
178461
|
+
return {
|
|
178462
|
+
apiKey,
|
|
178463
|
+
from: fromParam,
|
|
178464
|
+
to: toParam,
|
|
178465
|
+
amount: amountParam,
|
|
178466
|
+
...(options.slippageTolerance && { slippage: options.slippageTolerance * 100 }),
|
|
178467
|
+
...(swapperGroups?.length && { swapperGroups }),
|
|
178468
|
+
swappersGroupsExclude: options?.swappersGroupsExclude ?? true
|
|
178469
|
+
};
|
|
178470
|
+
}
|
|
178471
|
+
static async getSwapQueryParams(fromToken, toToken, options) {
|
|
178472
|
+
const amount = web3_pure_1.Web3Pure.toWei(fromToken.tokenAmount, fromToken.decimals);
|
|
178473
|
+
const from = await rango_utils_1.RangoUtils.getFromToQueryParam(fromToken);
|
|
178474
|
+
const to = await rango_utils_1.RangoUtils.getFromToQueryParam(toToken);
|
|
178475
|
+
const walletAddress = injector_1.Injector.web3PrivateService.getWeb3PrivateByBlockchain(fromToken.blockchain).address;
|
|
178476
|
+
const fromAddress = options.fromAddress || walletAddress;
|
|
178477
|
+
const toAddress = options.receiverAddress || walletAddress;
|
|
178478
|
+
const slippage = options.slippageTolerance * 100;
|
|
178479
|
+
const apiKey = rango_api_common_1.RANGO_API_KEY;
|
|
178480
|
+
const swapperGroups = options.swapperGroups?.map(swapper => rango_utils_1.RangoUtils.getTradeTypeForRango(swapper));
|
|
178481
|
+
return {
|
|
178482
|
+
apiKey,
|
|
178483
|
+
amount,
|
|
178484
|
+
from,
|
|
178485
|
+
to,
|
|
178486
|
+
fromAddress,
|
|
178487
|
+
slippage,
|
|
178488
|
+
toAddress,
|
|
178489
|
+
...(swapperGroups?.length && { swapperGroups }),
|
|
178490
|
+
swappersGroupsExclude: options?.swappersGroupsExclude ?? true
|
|
178491
|
+
};
|
|
178492
|
+
}
|
|
178493
|
+
static getTxStatusQueryParams(srcTxHash, requestId) {
|
|
178494
|
+
const apiKey = rango_api_common_1.RANGO_API_KEY;
|
|
178495
|
+
return { apiKey, requestId, txId: srcTxHash };
|
|
178496
|
+
}
|
|
178497
|
+
}
|
|
178498
|
+
exports.RangoCommonParser = RangoCommonParser;
|
|
178499
|
+
|
|
178500
|
+
|
|
178501
|
+
/***/ }),
|
|
178502
|
+
|
|
178503
|
+
/***/ "./src/features/common/providers/rango/utils/rango-utils.ts":
|
|
178504
|
+
/*!******************************************************************!*\
|
|
178505
|
+
!*** ./src/features/common/providers/rango/utils/rango-utils.ts ***!
|
|
178506
|
+
\******************************************************************/
|
|
178507
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
178508
|
+
|
|
178509
|
+
"use strict";
|
|
178510
|
+
|
|
178511
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
178512
|
+
exports.RangoUtils = void 0;
|
|
178513
|
+
const tokens_1 = __webpack_require__(/*! ../../../../../common/tokens */ "./src/common/tokens/index.ts");
|
|
178514
|
+
const blockchain_name_1 = __webpack_require__(/*! ../../../../../core/blockchain/models/blockchain-name */ "./src/core/blockchain/models/blockchain-name.ts");
|
|
178515
|
+
const tx_status_1 = __webpack_require__(/*! ../../../../../core/blockchain/web3-public-service/web3-public/models/tx-status */ "./src/core/blockchain/web3-public-service/web3-public/models/tx-status.ts");
|
|
178516
|
+
const cross_chain_trade_type_1 = __webpack_require__(/*! ../../../../cross-chain/calculation-manager/models/cross-chain-trade-type */ "./src/features/cross-chain/calculation-manager/models/cross-chain-trade-type.ts");
|
|
178517
|
+
const rango_api_blockchain_names_1 = __webpack_require__(/*! ../models/rango-api-blockchain-names */ "./src/features/common/providers/rango/models/rango-api-blockchain-names.ts");
|
|
178518
|
+
const rango_api_status_types_1 = __webpack_require__(/*! ../models/rango-api-status-types */ "./src/features/common/providers/rango/models/rango-api-status-types.ts");
|
|
178519
|
+
const rango_api_symbol_names_1 = __webpack_require__(/*! ../models/rango-api-symbol-names */ "./src/features/common/providers/rango/models/rango-api-symbol-names.ts");
|
|
178520
|
+
const rango_api_trade_types_1 = __webpack_require__(/*! ../models/rango-api-trade-types */ "./src/features/common/providers/rango/models/rango-api-trade-types.ts");
|
|
178521
|
+
class RangoUtils {
|
|
178522
|
+
/**
|
|
178523
|
+
* @returns Query-param string in format `chainName.symbol--address`, chainName's compatible with rango-api
|
|
178524
|
+
*/
|
|
178525
|
+
static async getFromToQueryParam(token) {
|
|
178526
|
+
const rangoBlockchainName = rango_api_blockchain_names_1.rangoApiBlockchainNames[token.blockchain];
|
|
178527
|
+
const symbol = token.isNative
|
|
178528
|
+
? rango_api_symbol_names_1.rangoApiSymbols[token.blockchain]
|
|
178529
|
+
: (await tokens_1.Token.createToken({ address: token.address, blockchain: token.blockchain }))
|
|
178530
|
+
.symbol;
|
|
178531
|
+
if (token.isNative && token.blockchain === blockchain_name_1.BLOCKCHAIN_NAME.METIS) {
|
|
178532
|
+
return `${rangoBlockchainName}.${symbol}--0xdeaddeaddeaddeaddeaddeaddeaddeaddead0000`;
|
|
178533
|
+
}
|
|
178534
|
+
const param = token.isNative
|
|
178535
|
+
? `${rangoBlockchainName}.${symbol}`
|
|
178536
|
+
: `${rangoBlockchainName}.${symbol}--${token.address}`;
|
|
178537
|
+
return param;
|
|
178538
|
+
}
|
|
178539
|
+
static convertStatusForRubic(rangoStatus) {
|
|
178540
|
+
if (rangoStatus === rango_api_status_types_1.RANGO_SWAP_STATUS.SUCCESS) {
|
|
178541
|
+
return tx_status_1.TX_STATUS.SUCCESS;
|
|
178542
|
+
}
|
|
178543
|
+
if (rangoStatus === rango_api_status_types_1.RANGO_SWAP_STATUS.RUNNING) {
|
|
178544
|
+
return tx_status_1.TX_STATUS.PENDING;
|
|
178545
|
+
}
|
|
178546
|
+
return tx_status_1.TX_STATUS.FAIL;
|
|
178547
|
+
}
|
|
178548
|
+
static getRubicBlockchainByRangoBlockchain(rangoBlockchainName) {
|
|
178549
|
+
const blockchainName = Object.entries(rango_api_blockchain_names_1.rangoApiBlockchainNames).find(([_, value]) => value === rangoBlockchainName)[0];
|
|
178550
|
+
return blockchainName;
|
|
178551
|
+
}
|
|
178552
|
+
static getTradeTypeForRubic(swapType, rangoTradeType) {
|
|
178553
|
+
if (swapType === 'cross-chain') {
|
|
178554
|
+
const found = Object.entries(rango_api_trade_types_1.rangoCrossChainTradeTypes).find(([_, value]) => value === rangoTradeType);
|
|
178555
|
+
if (found) {
|
|
178556
|
+
return found[0];
|
|
178557
|
+
}
|
|
178558
|
+
}
|
|
178559
|
+
if (swapType === 'on-chain') {
|
|
178560
|
+
const found = Object.entries(rango_api_trade_types_1.rangoOnChainTradeTypes).find(([_, value]) => value === rangoTradeType);
|
|
178561
|
+
if (found) {
|
|
178562
|
+
return found[0];
|
|
178563
|
+
}
|
|
178564
|
+
}
|
|
178565
|
+
return cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.RANGO;
|
|
178566
|
+
}
|
|
178567
|
+
static getTradeTypeForRango(rubicTradeType) {
|
|
178568
|
+
return rango_api_trade_types_1.rangoTradeTypes[rubicTradeType];
|
|
178569
|
+
}
|
|
178570
|
+
}
|
|
178571
|
+
exports.RangoUtils = RangoUtils;
|
|
178572
|
+
|
|
178573
|
+
|
|
178088
178574
|
/***/ }),
|
|
178089
178575
|
|
|
178090
178576
|
/***/ "./src/features/common/providers/xy/constants/xy-api-params.ts":
|
|
@@ -178559,6 +179045,7 @@ const lifi_cross_chain_provider_1 = __webpack_require__(/*! ../providers/lifi-pr
|
|
|
178559
179045
|
const squidrouter_cross_chain_provider_1 = __webpack_require__(/*! ../providers/squidrouter-provider/squidrouter-cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/squidrouter-provider/squidrouter-cross-chain-provider.ts");
|
|
178560
179046
|
const symbiosis_cross_chain_provider_1 = __webpack_require__(/*! ../providers/symbiosis-provider/symbiosis-cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/symbiosis-provider/symbiosis-cross-chain-provider.ts");
|
|
178561
179047
|
const xy_cross_chain_provider_1 = __webpack_require__(/*! ../providers/xy-provider/xy-cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/xy-provider/xy-cross-chain-provider.ts");
|
|
179048
|
+
const rango_cross_chain_provider_1 = __webpack_require__(/*! ../providers/rango-provider/rango-cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-provider.ts");
|
|
178562
179049
|
const stargate_cross_chain_provider_1 = __webpack_require__(/*! ../providers/stargate-provider/stargate-cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/stargate-provider/stargate-cross-chain-provider.ts");
|
|
178563
179050
|
const taiko_bridge_provider_1 = __webpack_require__(/*! ../providers/taiko-bridge/taiko-bridge-provider */ "./src/features/cross-chain/calculation-manager/providers/taiko-bridge/taiko-bridge-provider.ts");
|
|
178564
179051
|
const proxyProviders = [
|
|
@@ -178567,7 +179054,8 @@ const proxyProviders = [
|
|
|
178567
179054
|
xy_cross_chain_provider_1.XyCrossChainProvider,
|
|
178568
179055
|
cbridge_cross_chain_provider_1.CbridgeCrossChainProvider,
|
|
178569
179056
|
lifi_cross_chain_provider_1.LifiCrossChainProvider,
|
|
178570
|
-
squidrouter_cross_chain_provider_1.SquidrouterCrossChainProvider
|
|
179057
|
+
squidrouter_cross_chain_provider_1.SquidrouterCrossChainProvider,
|
|
179058
|
+
rango_cross_chain_provider_1.RangoCrossChainProvider
|
|
178571
179059
|
];
|
|
178572
179060
|
const nonProxyProviders = [
|
|
178573
179061
|
debridge_cross_chain_provider_1.DebridgeCrossChainProvider,
|
|
@@ -178918,7 +179406,8 @@ exports.CROSS_CHAIN_TRADE_TYPE = {
|
|
|
178918
179406
|
ARBITRUM: 'arbitrum',
|
|
178919
179407
|
SQUIDROUTER: 'squidrouter',
|
|
178920
179408
|
SCROLL_BRIDGE: 'scroll_bridge',
|
|
178921
|
-
TAIKO_BRIDGE: 'taiko_bridge'
|
|
179409
|
+
TAIKO_BRIDGE: 'taiko_bridge',
|
|
179410
|
+
RANGO: 'rango'
|
|
178922
179411
|
};
|
|
178923
179412
|
|
|
178924
179413
|
|
|
@@ -183979,6 +184468,10 @@ class EvmCrossChainTrade extends cross_chain_trade_1.CrossChainTrade {
|
|
|
183979
184468
|
};
|
|
183980
184469
|
await this.approve(approveOptions, false);
|
|
183981
184470
|
}
|
|
184471
|
+
/**
|
|
184472
|
+
*
|
|
184473
|
+
* @returns txHash(srcTxHash) | never
|
|
184474
|
+
*/
|
|
183982
184475
|
async swap(options = {}) {
|
|
183983
184476
|
if (!this.isProxyTrade) {
|
|
183984
184477
|
return this.swapDirect(options);
|
|
@@ -184134,18 +184627,23 @@ exports.DEFAULT_BRIDGE_TYPE = {
|
|
|
184134
184627
|
CELERIM: 'celerim',
|
|
184135
184628
|
HOP: 'hop',
|
|
184136
184629
|
HYPHEN: 'hyphen',
|
|
184137
|
-
|
|
184630
|
+
IBC: 'ibc',
|
|
184138
184631
|
MAKERS_WORMHOLE: 'maker',
|
|
184632
|
+
MAYA_PROTOCOL: 'mayaprotocol',
|
|
184139
184633
|
MULTICHAIN: 'multichain',
|
|
184634
|
+
OPEN_OCEAN: 'openocean',
|
|
184140
184635
|
OPTIMISM_GATEWAY: 'optimism',
|
|
184636
|
+
ORBITER_BRIDGE: 'orbiter',
|
|
184141
184637
|
OSMOSIS_BRIDGE: 'osmosis',
|
|
184142
184638
|
POLYGON: 'polygon',
|
|
184639
|
+
RAINBOW: 'rainbow',
|
|
184143
184640
|
REFUEL: 'refuel',
|
|
184144
184641
|
SATELLITE: 'satellite',
|
|
184145
184642
|
STARGATE: 'stargate',
|
|
184146
184643
|
SYMBIOSIS: 'symbiosis',
|
|
184147
184644
|
SYNAPSE: 'synapse',
|
|
184148
184645
|
THORCHAIN: 'thorchain',
|
|
184646
|
+
VOYAGER: 'voyager',
|
|
184149
184647
|
WORMHOLE: 'wormhole',
|
|
184150
184648
|
YPOOL: 'ypool'
|
|
184151
184649
|
};
|
|
@@ -186103,6 +186601,466 @@ exports.UNIQ_LIFI_BRIDGE_TYPES = {
|
|
|
186103
186601
|
};
|
|
186104
186602
|
|
|
186105
186603
|
|
|
186604
|
+
/***/ }),
|
|
186605
|
+
|
|
186606
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-api-types.ts":
|
|
186607
|
+
/*!********************************************************************************************************************!*\
|
|
186608
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-api-types.ts ***!
|
|
186609
|
+
\********************************************************************************************************************/
|
|
186610
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
186611
|
+
|
|
186612
|
+
"use strict";
|
|
186613
|
+
|
|
186614
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
186615
|
+
|
|
186616
|
+
|
|
186617
|
+
/***/ }),
|
|
186618
|
+
|
|
186619
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-parser-types.ts":
|
|
186620
|
+
/*!***********************************************************************************************************************!*\
|
|
186621
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-parser-types.ts ***!
|
|
186622
|
+
\***********************************************************************************************************************/
|
|
186623
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
186624
|
+
|
|
186625
|
+
"use strict";
|
|
186626
|
+
|
|
186627
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
186628
|
+
|
|
186629
|
+
|
|
186630
|
+
/***/ }),
|
|
186631
|
+
|
|
186632
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-provider.ts":
|
|
186633
|
+
/*!*************************************************************************************************************!*\
|
|
186634
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-provider.ts ***!
|
|
186635
|
+
\*************************************************************************************************************/
|
|
186636
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
186637
|
+
|
|
186638
|
+
"use strict";
|
|
186639
|
+
|
|
186640
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
186641
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
186642
|
+
};
|
|
186643
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
186644
|
+
exports.RangoCrossChainProvider = void 0;
|
|
186645
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
186646
|
+
const errors_1 = __webpack_require__(/*! ../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
186647
|
+
const tokens_1 = __webpack_require__(/*! ../../../../../common/tokens */ "./src/common/tokens/index.ts");
|
|
186648
|
+
const web3_pure_1 = __webpack_require__(/*! ../../../../../core/blockchain/web3-pure/web3-pure */ "./src/core/blockchain/web3-pure/web3-pure.ts");
|
|
186649
|
+
const rango_api_common_1 = __webpack_require__(/*! ../../../../common/providers/rango/constants/rango-api-common */ "./src/features/common/providers/rango/constants/rango-api-common.ts");
|
|
186650
|
+
const rango_supported_blockchains_1 = __webpack_require__(/*! ../../../../common/providers/rango/models/rango-supported-blockchains */ "./src/features/common/providers/rango/models/rango-supported-blockchains.ts");
|
|
186651
|
+
const rango_parser_1 = __webpack_require__(/*! ../../../../common/providers/rango/services/rango-parser */ "./src/features/common/providers/rango/services/rango-parser.ts");
|
|
186652
|
+
const rango_utils_1 = __webpack_require__(/*! ../../../../common/providers/rango/utils/rango-utils */ "./src/features/common/providers/rango/utils/rango-utils.ts");
|
|
186653
|
+
const get_from_without_fee_1 = __webpack_require__(/*! ../../../../common/utils/get-from-without-fee */ "./src/features/common/utils/get-from-without-fee.ts");
|
|
186654
|
+
const cross_chain_trade_type_1 = __webpack_require__(/*! ../../models/cross-chain-trade-type */ "./src/features/cross-chain/calculation-manager/models/cross-chain-trade-type.ts");
|
|
186655
|
+
const cross_chain_provider_1 = __webpack_require__(/*! ../common/cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/common/cross-chain-provider.ts");
|
|
186656
|
+
const proxy_cross_chain_evm_trade_1 = __webpack_require__(/*! ../common/proxy-cross-chain-evm-facade/proxy-cross-chain-evm-trade */ "./src/features/cross-chain/calculation-manager/providers/common/proxy-cross-chain-evm-facade/proxy-cross-chain-evm-trade.ts");
|
|
186657
|
+
const rango_cross_chain_trade_1 = __webpack_require__(/*! ./rango-cross-chain-trade */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-trade.ts");
|
|
186658
|
+
const rango_cross_chain_api_service_1 = __webpack_require__(/*! ./services/rango-cross-chain-api-service */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service.ts");
|
|
186659
|
+
const rango_cross_chain_params_parser_1 = __webpack_require__(/*! ./services/rango-cross-chain-params-parser */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-params-parser.ts");
|
|
186660
|
+
class RangoCrossChainProvider extends cross_chain_provider_1.CrossChainProvider {
|
|
186661
|
+
constructor() {
|
|
186662
|
+
super(...arguments);
|
|
186663
|
+
this.type = cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.RANGO;
|
|
186664
|
+
this.rangoSupportedBlockchains = rango_supported_blockchains_1.rangoSupportedBlockchains;
|
|
186665
|
+
}
|
|
186666
|
+
isSupportedBlockchain(blockchain) {
|
|
186667
|
+
return this.rangoSupportedBlockchains.some(supportedBlockchain => supportedBlockchain === blockchain);
|
|
186668
|
+
}
|
|
186669
|
+
async calculate(from, toToken, options) {
|
|
186670
|
+
const fromBlockchain = from.blockchain;
|
|
186671
|
+
const toBlockchain = toToken.blockchain;
|
|
186672
|
+
const useProxy = options?.useProxy?.[this.type] ?? true;
|
|
186673
|
+
if (!this.areSupportedBlockchains(fromBlockchain, toBlockchain)) {
|
|
186674
|
+
return {
|
|
186675
|
+
error: new errors_1.NotSupportedBlockchain(),
|
|
186676
|
+
trade: null,
|
|
186677
|
+
tradeType: this.type
|
|
186678
|
+
};
|
|
186679
|
+
}
|
|
186680
|
+
try {
|
|
186681
|
+
const feeInfo = await this.getFeeInfo(fromBlockchain, options.providerAddress, from, useProxy);
|
|
186682
|
+
const fromWithoutFee = (0, get_from_without_fee_1.getFromWithoutFee)(from, feeInfo.rubicProxy?.platformFee?.percent);
|
|
186683
|
+
const bestRouteParams = await rango_parser_1.RangoCommonParser.getBestRouteQueryParams(fromWithoutFee, toToken, { ...options, swapperGroups: options.rangoDisabledProviders });
|
|
186684
|
+
const { route } = await rango_cross_chain_api_service_1.RangoCrossChainApiService.getBestRoute(bestRouteParams);
|
|
186685
|
+
const { outputAmountMin, outputAmount, path } = route;
|
|
186686
|
+
const toTokenAmountMin = web3_pure_1.Web3Pure.fromWei(outputAmountMin, toToken.decimals);
|
|
186687
|
+
const to = new tokens_1.PriceTokenAmount({
|
|
186688
|
+
...toToken.asStruct,
|
|
186689
|
+
tokenAmount: web3_pure_1.Web3Pure.fromWei(outputAmount, toToken.decimals)
|
|
186690
|
+
});
|
|
186691
|
+
const routePath = await this.getRoutePath(from, to, path);
|
|
186692
|
+
const swapQueryParams = await rango_parser_1.RangoCommonParser.getSwapQueryParams(fromWithoutFee, toToken, { ...options, swapperGroups: options.rangoDisabledProviders });
|
|
186693
|
+
const tradeParams = await rango_cross_chain_params_parser_1.RangoCrossChainParser.getTradeConstructorParams({
|
|
186694
|
+
fromToken: from,
|
|
186695
|
+
toToken: to,
|
|
186696
|
+
options,
|
|
186697
|
+
routePath,
|
|
186698
|
+
feeInfo,
|
|
186699
|
+
toTokenAmountMin,
|
|
186700
|
+
swapQueryParams
|
|
186701
|
+
});
|
|
186702
|
+
const trade = new rango_cross_chain_trade_1.RangoCrossChainTrade(tradeParams);
|
|
186703
|
+
const tradeType = this.type;
|
|
186704
|
+
return { trade, tradeType };
|
|
186705
|
+
}
|
|
186706
|
+
catch (err) {
|
|
186707
|
+
const rubicSdkError = cross_chain_provider_1.CrossChainProvider.parseError(err);
|
|
186708
|
+
return {
|
|
186709
|
+
trade: null,
|
|
186710
|
+
error: rubicSdkError,
|
|
186711
|
+
tradeType: this.type
|
|
186712
|
+
};
|
|
186713
|
+
}
|
|
186714
|
+
}
|
|
186715
|
+
async getRoutePath(fromToken, toToken, path) {
|
|
186716
|
+
if (!path) {
|
|
186717
|
+
return [{ type: 'cross-chain', provider: this.type, path: [fromToken, toToken] }];
|
|
186718
|
+
}
|
|
186719
|
+
return Promise.all(path.map(path => this.getStep(path)));
|
|
186720
|
+
}
|
|
186721
|
+
async getStep(rangoPath) {
|
|
186722
|
+
const type = rangoPath.swapperType === 'DEX' ? 'on-chain' : 'cross-chain';
|
|
186723
|
+
const provider = rango_utils_1.RangoUtils.getTradeTypeForRubic(type, rangoPath.swapper.swapperGroup);
|
|
186724
|
+
const fromBlockchain = rango_utils_1.RangoUtils.getRubicBlockchainByRangoBlockchain(rangoPath.from.blockchain);
|
|
186725
|
+
const toBlockchain = rango_utils_1.RangoUtils.getRubicBlockchainByRangoBlockchain(rangoPath.to.blockchain);
|
|
186726
|
+
const fromTokenAmount = await tokens_1.TokenAmount.createToken({
|
|
186727
|
+
address: rangoPath.from.address || tokens_1.nativeTokensList[fromBlockchain].address,
|
|
186728
|
+
blockchain: fromBlockchain,
|
|
186729
|
+
weiAmount: new bignumber_js_1.default(rangoPath.inputAmount)
|
|
186730
|
+
});
|
|
186731
|
+
const toTokenAmount = await tokens_1.TokenAmount.createToken({
|
|
186732
|
+
address: rangoPath.to.address || tokens_1.nativeTokensList[toBlockchain].address,
|
|
186733
|
+
blockchain: toBlockchain,
|
|
186734
|
+
weiAmount: new bignumber_js_1.default(rangoPath.expectedOutput)
|
|
186735
|
+
});
|
|
186736
|
+
return {
|
|
186737
|
+
provider: provider,
|
|
186738
|
+
type: type,
|
|
186739
|
+
path: [fromTokenAmount, toTokenAmount]
|
|
186740
|
+
};
|
|
186741
|
+
}
|
|
186742
|
+
async getFeeInfo(fromBlockchain, providerAddress, percentFeeToken, useProxy) {
|
|
186743
|
+
return proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getFeeInfo(fromBlockchain, providerAddress, percentFeeToken, useProxy);
|
|
186744
|
+
}
|
|
186745
|
+
}
|
|
186746
|
+
exports.RangoCrossChainProvider = RangoCrossChainProvider;
|
|
186747
|
+
RangoCrossChainProvider.apiKey = rango_api_common_1.RANGO_API_KEY;
|
|
186748
|
+
RangoCrossChainProvider.apiEndpoint = rango_api_common_1.RANGO_API_ENDPOINT;
|
|
186749
|
+
|
|
186750
|
+
|
|
186751
|
+
/***/ }),
|
|
186752
|
+
|
|
186753
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-trade.ts":
|
|
186754
|
+
/*!**********************************************************************************************************!*\
|
|
186755
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-trade.ts ***!
|
|
186756
|
+
\**********************************************************************************************************/
|
|
186757
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
186758
|
+
|
|
186759
|
+
"use strict";
|
|
186760
|
+
|
|
186761
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
186762
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
186763
|
+
};
|
|
186764
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
186765
|
+
exports.RangoCrossChainTrade = void 0;
|
|
186766
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
186767
|
+
const errors_1 = __webpack_require__(/*! ../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
186768
|
+
const blockchains_info_1 = __webpack_require__(/*! ../../../../../core/blockchain/utils/blockchains-info/blockchains-info */ "./src/core/blockchain/utils/blockchains-info/blockchains-info.ts");
|
|
186769
|
+
const evm_web3_pure_1 = __webpack_require__(/*! ../../../../../core/blockchain/web3-pure/typed-web3-pure/evm-web3-pure/evm-web3-pure */ "./src/core/blockchain/web3-pure/typed-web3-pure/evm-web3-pure/evm-web3-pure.ts");
|
|
186770
|
+
const web3_pure_1 = __webpack_require__(/*! ../../../../../core/blockchain/web3-pure/web3-pure */ "./src/core/blockchain/web3-pure/web3-pure.ts");
|
|
186771
|
+
const injector_1 = __webpack_require__(/*! ../../../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
186772
|
+
const rango_contract_address_1 = __webpack_require__(/*! ../../../../common/providers/rango/constants/rango-contract-address */ "./src/features/common/providers/rango/constants/rango-contract-address.ts");
|
|
186773
|
+
const cross_chain_trade_type_1 = __webpack_require__(/*! ../../models/cross-chain-trade-type */ "./src/features/cross-chain/calculation-manager/models/cross-chain-trade-type.ts");
|
|
186774
|
+
const convert_gas_price_1 = __webpack_require__(/*! ../../utils/convert-gas-price */ "./src/features/cross-chain/calculation-manager/utils/convert-gas-price.ts");
|
|
186775
|
+
const rubic_proxy_contract_address_1 = __webpack_require__(/*! ../common/constants/rubic-proxy-contract-address */ "./src/features/cross-chain/calculation-manager/providers/common/constants/rubic-proxy-contract-address.ts");
|
|
186776
|
+
const evm_common_cross_chain_abi_1 = __webpack_require__(/*! ../common/emv-cross-chain-trade/constants/evm-common-cross-chain-abi */ "./src/features/cross-chain/calculation-manager/providers/common/emv-cross-chain-trade/constants/evm-common-cross-chain-abi.ts");
|
|
186777
|
+
const gateway_rubic_cross_chain_abi_1 = __webpack_require__(/*! ../common/emv-cross-chain-trade/constants/gateway-rubic-cross-chain-abi */ "./src/features/cross-chain/calculation-manager/providers/common/emv-cross-chain-trade/constants/gateway-rubic-cross-chain-abi.ts");
|
|
186778
|
+
const evm_cross_chain_trade_1 = __webpack_require__(/*! ../common/emv-cross-chain-trade/evm-cross-chain-trade */ "./src/features/cross-chain/calculation-manager/providers/common/emv-cross-chain-trade/evm-cross-chain-trade.ts");
|
|
186779
|
+
const bridge_type_1 = __webpack_require__(/*! ../common/models/bridge-type */ "./src/features/cross-chain/calculation-manager/providers/common/models/bridge-type.ts");
|
|
186780
|
+
const proxy_cross_chain_evm_trade_1 = __webpack_require__(/*! ../common/proxy-cross-chain-evm-facade/proxy-cross-chain-evm-trade */ "./src/features/cross-chain/calculation-manager/providers/common/proxy-cross-chain-evm-facade/proxy-cross-chain-evm-trade.ts");
|
|
186781
|
+
const rango_cross_chain_api_service_1 = __webpack_require__(/*! ./services/rango-cross-chain-api-service */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service.ts");
|
|
186782
|
+
class RangoCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
186783
|
+
/** @internal */
|
|
186784
|
+
static async getGasData({ fromToken, toToken, feeInfo, routePath, swapQueryParams }) {
|
|
186785
|
+
const fromBlockchain = fromToken.blockchain;
|
|
186786
|
+
const walletAddress = swapQueryParams.fromAddress;
|
|
186787
|
+
if (!walletAddress) {
|
|
186788
|
+
return null;
|
|
186789
|
+
}
|
|
186790
|
+
try {
|
|
186791
|
+
let gasLimit;
|
|
186792
|
+
let gasDetails;
|
|
186793
|
+
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(fromBlockchain);
|
|
186794
|
+
const tradeParams = {
|
|
186795
|
+
crossChainTrade: {
|
|
186796
|
+
from: fromToken,
|
|
186797
|
+
to: toToken,
|
|
186798
|
+
toTokenAmountMin: new bignumber_js_1.default(0),
|
|
186799
|
+
feeInfo,
|
|
186800
|
+
gasData: null,
|
|
186801
|
+
priceImpact: fromToken.calculatePriceImpactPercent(toToken) || 0,
|
|
186802
|
+
slippage: swapQueryParams.slippage,
|
|
186803
|
+
swapQueryParams
|
|
186804
|
+
},
|
|
186805
|
+
routePath,
|
|
186806
|
+
providerAddress: swapQueryParams.toAddress
|
|
186807
|
+
};
|
|
186808
|
+
if (feeInfo.rubicProxy?.fixedFee?.amount.gt(0)) {
|
|
186809
|
+
const { contractAddress, contractAbi, methodName, methodArguments, value } = await new RangoCrossChainTrade(tradeParams).getContractParams({
|
|
186810
|
+
receiverAddress: swapQueryParams.toAddress
|
|
186811
|
+
}, true);
|
|
186812
|
+
const [proxyGasLimit, proxyGasDetails] = await Promise.all([
|
|
186813
|
+
web3Public.getEstimatedGas(contractAbi, contractAddress, methodName, methodArguments, walletAddress, value),
|
|
186814
|
+
(0, convert_gas_price_1.convertGasDataToBN)(await injector_1.Injector.gasPriceApi.getGasPrice(fromBlockchain))
|
|
186815
|
+
]);
|
|
186816
|
+
gasLimit = proxyGasLimit;
|
|
186817
|
+
gasDetails = proxyGasDetails;
|
|
186818
|
+
}
|
|
186819
|
+
else {
|
|
186820
|
+
const { data, value, to } = await new RangoCrossChainTrade(tradeParams).getTransactionRequest(undefined, true);
|
|
186821
|
+
const defaultGasLimit = await web3Public.getEstimatedGasByData(walletAddress, to, {
|
|
186822
|
+
data,
|
|
186823
|
+
value
|
|
186824
|
+
});
|
|
186825
|
+
const defaultGasDetails = (0, convert_gas_price_1.convertGasDataToBN)(await injector_1.Injector.gasPriceApi.getGasPrice(fromBlockchain));
|
|
186826
|
+
gasLimit = defaultGasLimit;
|
|
186827
|
+
gasDetails = defaultGasDetails;
|
|
186828
|
+
}
|
|
186829
|
+
if (!gasLimit?.isFinite()) {
|
|
186830
|
+
return null;
|
|
186831
|
+
}
|
|
186832
|
+
const increasedGasLimit = web3_pure_1.Web3Pure.calculateGasMargin(gasLimit, 1.2);
|
|
186833
|
+
return {
|
|
186834
|
+
gasLimit: increasedGasLimit,
|
|
186835
|
+
...gasDetails
|
|
186836
|
+
};
|
|
186837
|
+
}
|
|
186838
|
+
catch (err) {
|
|
186839
|
+
return null;
|
|
186840
|
+
}
|
|
186841
|
+
}
|
|
186842
|
+
get fromBlockchain() {
|
|
186843
|
+
return this.from.blockchain;
|
|
186844
|
+
}
|
|
186845
|
+
get fromContractAddress() {
|
|
186846
|
+
return this.isProxyTrade
|
|
186847
|
+
? rubic_proxy_contract_address_1.rubicProxyContractAddress[this.fromBlockchain].gateway
|
|
186848
|
+
: rango_contract_address_1.RangoContractAddresses[this.fromBlockchain].providerGateway;
|
|
186849
|
+
}
|
|
186850
|
+
get methodName() {
|
|
186851
|
+
return 'startBridgeTokensViaGenericCrossChain';
|
|
186852
|
+
}
|
|
186853
|
+
constructor(params) {
|
|
186854
|
+
super(params.providerAddress, params.routePath);
|
|
186855
|
+
/**ABSTRACT PROPS */
|
|
186856
|
+
this.type = cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.RANGO;
|
|
186857
|
+
this.isAggregator = true;
|
|
186858
|
+
this.onChainSubtype = { from: undefined, to: undefined };
|
|
186859
|
+
this.bridgeType = bridge_type_1.BRIDGE_TYPE.RANGO;
|
|
186860
|
+
this.to = params.crossChainTrade.to;
|
|
186861
|
+
this.from = params.crossChainTrade.from;
|
|
186862
|
+
this.toTokenAmountMin = params.crossChainTrade.toTokenAmountMin;
|
|
186863
|
+
this.feeInfo = params.crossChainTrade.feeInfo;
|
|
186864
|
+
this.gasData = params.crossChainTrade.gasData;
|
|
186865
|
+
this.priceImpact = params.crossChainTrade.priceImpact;
|
|
186866
|
+
this.slippage = params.crossChainTrade.slippage;
|
|
186867
|
+
this.swapQueryParams = params.crossChainTrade.swapQueryParams;
|
|
186868
|
+
}
|
|
186869
|
+
async getContractParams(options, skipAmountChangeCheck = false) {
|
|
186870
|
+
const receiverAddress = options?.receiverAddress || this.walletAddress;
|
|
186871
|
+
const { data, value: providerValue, to: providerRouter } = await this.getTransactionRequest(options.directTransaction, skipAmountChangeCheck);
|
|
186872
|
+
const bridgeData = proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getBridgeData(options, {
|
|
186873
|
+
walletAddress: receiverAddress,
|
|
186874
|
+
fromTokenAmount: this.from,
|
|
186875
|
+
toTokenAmount: this.to,
|
|
186876
|
+
srcChainTrade: null,
|
|
186877
|
+
providerAddress: this.providerAddress,
|
|
186878
|
+
type: `native:${this.type}`,
|
|
186879
|
+
fromAddress: this.walletAddress
|
|
186880
|
+
});
|
|
186881
|
+
const extraNativeFee = this.from.isNative
|
|
186882
|
+
? new bignumber_js_1.default(providerValue).minus(this.from.stringWeiAmount).toFixed()
|
|
186883
|
+
: new bignumber_js_1.default(providerValue).toFixed();
|
|
186884
|
+
const providerData = await proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getGenericProviderData(providerRouter, data, this.from.blockchain, providerRouter, extraNativeFee);
|
|
186885
|
+
const methodArguments = [bridgeData, providerData];
|
|
186886
|
+
const value = this.getSwapValue(providerValue);
|
|
186887
|
+
const transactionConfiguration = evm_web3_pure_1.EvmWeb3Pure.encodeMethodCall(rubic_proxy_contract_address_1.rubicProxyContractAddress[this.from.blockchain].router, evm_common_cross_chain_abi_1.evmCommonCrossChainAbi, this.methodName, methodArguments, value);
|
|
186888
|
+
const sendingToken = this.from.isNative ? [] : [this.from.address];
|
|
186889
|
+
const sendingAmount = this.from.isNative ? [] : [this.from.stringWeiAmount];
|
|
186890
|
+
return {
|
|
186891
|
+
contractAddress: rubic_proxy_contract_address_1.rubicProxyContractAddress[this.from.blockchain].gateway,
|
|
186892
|
+
contractAbi: gateway_rubic_cross_chain_abi_1.gatewayRubicCrossChainAbi,
|
|
186893
|
+
methodName: 'startViaRubic',
|
|
186894
|
+
methodArguments: [sendingToken, sendingAmount, transactionConfiguration.data],
|
|
186895
|
+
value
|
|
186896
|
+
};
|
|
186897
|
+
}
|
|
186898
|
+
async swapDirect(options = {}) {
|
|
186899
|
+
if (!blockchains_info_1.BlockchainsInfo.isEvmBlockchainName(this.from.blockchain)) {
|
|
186900
|
+
throw new errors_1.RubicSdkError("For non-evm chains use 'getChangenowPostTrade' method");
|
|
186901
|
+
}
|
|
186902
|
+
await this.checkTradeErrors();
|
|
186903
|
+
await this.checkAllowanceAndApprove(options);
|
|
186904
|
+
const { onConfirm, gasLimit, gasPrice, gasPriceOptions } = options;
|
|
186905
|
+
let transactionHash;
|
|
186906
|
+
const onTransactionHash = (hash) => {
|
|
186907
|
+
if (onConfirm) {
|
|
186908
|
+
onConfirm(hash);
|
|
186909
|
+
}
|
|
186910
|
+
transactionHash = hash;
|
|
186911
|
+
};
|
|
186912
|
+
// eslint-disable-next-line no-useless-catch
|
|
186913
|
+
try {
|
|
186914
|
+
const { data, value, to } = await this.getTransactionRequest(options.directTransaction);
|
|
186915
|
+
await this.web3Private.trySendTransaction(to, {
|
|
186916
|
+
data,
|
|
186917
|
+
value,
|
|
186918
|
+
onTransactionHash,
|
|
186919
|
+
gas: gasLimit,
|
|
186920
|
+
gasPrice,
|
|
186921
|
+
gasPriceOptions
|
|
186922
|
+
});
|
|
186923
|
+
return transactionHash;
|
|
186924
|
+
}
|
|
186925
|
+
catch (err) {
|
|
186926
|
+
throw err;
|
|
186927
|
+
}
|
|
186928
|
+
}
|
|
186929
|
+
async getTransactionRequest(transactionConfig, skipAmountChangeCheck = false) {
|
|
186930
|
+
if (transactionConfig) {
|
|
186931
|
+
return {
|
|
186932
|
+
data: transactionConfig.data,
|
|
186933
|
+
to: transactionConfig.to,
|
|
186934
|
+
value: transactionConfig.value
|
|
186935
|
+
};
|
|
186936
|
+
}
|
|
186937
|
+
const { route, tx, error, requestId } = await rango_cross_chain_api_service_1.RangoCrossChainApiService.getSwapTransaction(this.swapQueryParams);
|
|
186938
|
+
this.rangoRequestId = requestId;
|
|
186939
|
+
if (!route || !tx) {
|
|
186940
|
+
throw new errors_1.RubicSdkError('Invalid data after sending swap request. Error text:' + error);
|
|
186941
|
+
}
|
|
186942
|
+
const config = {
|
|
186943
|
+
data: tx.txData,
|
|
186944
|
+
value: tx.value || '0',
|
|
186945
|
+
to: tx.txTo
|
|
186946
|
+
};
|
|
186947
|
+
if (!skipAmountChangeCheck) {
|
|
186948
|
+
evm_cross_chain_trade_1.EvmCrossChainTrade.checkAmountChange(config, route.outputAmount, this.to.stringWeiAmount);
|
|
186949
|
+
}
|
|
186950
|
+
return config;
|
|
186951
|
+
}
|
|
186952
|
+
getTradeInfo() {
|
|
186953
|
+
return {
|
|
186954
|
+
estimatedGas: this.estimatedGas,
|
|
186955
|
+
feeInfo: this.feeInfo,
|
|
186956
|
+
priceImpact: this.priceImpact || null,
|
|
186957
|
+
slippage: this.slippage * 100,
|
|
186958
|
+
routePath: this.routePath
|
|
186959
|
+
};
|
|
186960
|
+
}
|
|
186961
|
+
/**
|
|
186962
|
+
* @deprecated
|
|
186963
|
+
*/
|
|
186964
|
+
getTradeAmountRatio(fromUsd) {
|
|
186965
|
+
return fromUsd;
|
|
186966
|
+
}
|
|
186967
|
+
}
|
|
186968
|
+
exports.RangoCrossChainTrade = RangoCrossChainTrade;
|
|
186969
|
+
|
|
186970
|
+
|
|
186971
|
+
/***/ }),
|
|
186972
|
+
|
|
186973
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service.ts":
|
|
186974
|
+
/*!*************************************************************************************************************************!*\
|
|
186975
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service.ts ***!
|
|
186976
|
+
\*************************************************************************************************************************/
|
|
186977
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
186978
|
+
|
|
186979
|
+
"use strict";
|
|
186980
|
+
|
|
186981
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
186982
|
+
exports.RangoCrossChainApiService = void 0;
|
|
186983
|
+
const errors_1 = __webpack_require__(/*! ../../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
186984
|
+
const injector_1 = __webpack_require__(/*! ../../../../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
186985
|
+
const rango_api_common_1 = __webpack_require__(/*! ../../../../../common/providers/rango/constants/rango-api-common */ "./src/features/common/providers/rango/constants/rango-api-common.ts");
|
|
186986
|
+
class RangoCrossChainApiService {
|
|
186987
|
+
static async getBestRoute(params) {
|
|
186988
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/quote`, {
|
|
186989
|
+
params: params
|
|
186990
|
+
});
|
|
186991
|
+
if (!res.route || res.error) {
|
|
186992
|
+
throw new errors_1.RubicSdkError(res.error ?? 'No available routes in rango.');
|
|
186993
|
+
}
|
|
186994
|
+
return res;
|
|
186995
|
+
}
|
|
186996
|
+
static async getSwapTransaction(params) {
|
|
186997
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/swap`, { params: params });
|
|
186998
|
+
if (!res.route || res.error) {
|
|
186999
|
+
throw new errors_1.RubicSdkError(res.error ?? 'No available routes in rango.');
|
|
187000
|
+
}
|
|
187001
|
+
return res;
|
|
187002
|
+
}
|
|
187003
|
+
/**
|
|
187004
|
+
* @description Get transaction status data
|
|
187005
|
+
*/
|
|
187006
|
+
static async getTxStatus(params) {
|
|
187007
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/status`, { params: params });
|
|
187008
|
+
if (res.error || !res.bridgeData || !res.status) {
|
|
187009
|
+
throw new errors_1.RubicSdkError("Can't get status, res has error or null data in getTxStatus method");
|
|
187010
|
+
}
|
|
187011
|
+
return res;
|
|
187012
|
+
}
|
|
187013
|
+
}
|
|
187014
|
+
exports.RangoCrossChainApiService = RangoCrossChainApiService;
|
|
187015
|
+
|
|
187016
|
+
|
|
187017
|
+
/***/ }),
|
|
187018
|
+
|
|
187019
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-params-parser.ts":
|
|
187020
|
+
/*!***************************************************************************************************************************!*\
|
|
187021
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-params-parser.ts ***!
|
|
187022
|
+
\***************************************************************************************************************************/
|
|
187023
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
187024
|
+
|
|
187025
|
+
"use strict";
|
|
187026
|
+
|
|
187027
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
187028
|
+
exports.RangoCrossChainParser = void 0;
|
|
187029
|
+
const rango_cross_chain_trade_1 = __webpack_require__(/*! ../rango-cross-chain-trade */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-trade.ts");
|
|
187030
|
+
class RangoCrossChainParser {
|
|
187031
|
+
static async getTradeConstructorParams({ feeInfo, fromToken, options, routePath, swapQueryParams, toToken, toTokenAmountMin }) {
|
|
187032
|
+
const gasData = options.gasCalculation === 'enabled'
|
|
187033
|
+
? await rango_cross_chain_trade_1.RangoCrossChainTrade.getGasData({
|
|
187034
|
+
fromToken,
|
|
187035
|
+
toToken,
|
|
187036
|
+
swapQueryParams,
|
|
187037
|
+
feeInfo,
|
|
187038
|
+
routePath
|
|
187039
|
+
})
|
|
187040
|
+
: null;
|
|
187041
|
+
const priceImpact = fromToken.calculatePriceImpactPercent(toToken);
|
|
187042
|
+
const slippage = options.slippageTolerance;
|
|
187043
|
+
const crossChainTrade = {
|
|
187044
|
+
from: fromToken,
|
|
187045
|
+
to: toToken,
|
|
187046
|
+
gasData,
|
|
187047
|
+
toTokenAmountMin,
|
|
187048
|
+
priceImpact,
|
|
187049
|
+
slippage,
|
|
187050
|
+
feeInfo,
|
|
187051
|
+
swapQueryParams
|
|
187052
|
+
};
|
|
187053
|
+
const providerAddress = options.providerAddress;
|
|
187054
|
+
return {
|
|
187055
|
+
crossChainTrade,
|
|
187056
|
+
providerAddress,
|
|
187057
|
+
routePath
|
|
187058
|
+
};
|
|
187059
|
+
}
|
|
187060
|
+
}
|
|
187061
|
+
exports.RangoCrossChainParser = RangoCrossChainParser;
|
|
187062
|
+
|
|
187063
|
+
|
|
186106
187064
|
/***/ }),
|
|
186107
187065
|
|
|
186108
187066
|
/***/ "./src/features/cross-chain/calculation-manager/providers/scroll-bridge/constants/l1-erc20-scroll-gateway-abi.ts":
|
|
@@ -188966,7 +189924,7 @@ class SymbiosisCrossChainProvider extends cross_chain_provider_1.CrossChainProvi
|
|
|
188966
189924
|
const { tokenAmountOut, inTradeType, outTradeType, tx, approveTo, route } = await injector_1.Injector.httpClient.post(`${symbiosis_cross_chain_trade_1.SymbiosisCrossChainTrade.symbiosisApi}/swapping/exact_in?partnerId=rubic`, swapParams);
|
|
188967
189925
|
const to = new tokens_1.PriceTokenAmount({
|
|
188968
189926
|
...toToken.asStruct,
|
|
188969
|
-
tokenAmount:
|
|
189927
|
+
tokenAmount: web3_pure_1.Web3Pure.fromWei(tokenAmountOut.amount, tokenAmountOut.decimals)
|
|
188970
189928
|
});
|
|
188971
189929
|
const gasData = options.gasCalculation === 'enabled'
|
|
188972
189930
|
? await symbiosis_cross_chain_trade_1.SymbiosisCrossChainTrade.getGasData(from, to, swapParams, feeInfo, approveTo, options.providerAddress, options.receiverAddress)
|
|
@@ -190678,6 +191636,8 @@ const blockchain_id_1 = __webpack_require__(/*! ../../../core/blockchain/utils/b
|
|
|
190678
191636
|
const tx_status_1 = __webpack_require__(/*! ../../../core/blockchain/web3-public-service/web3-public/models/tx-status */ "./src/core/blockchain/web3-public-service/web3-public/models/tx-status.ts");
|
|
190679
191637
|
const injector_1 = __webpack_require__(/*! ../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
190680
191638
|
const changenow_api_key_1 = __webpack_require__(/*! ../../common/providers/changenow/constants/changenow-api-key */ "./src/features/common/providers/changenow/constants/changenow-api-key.ts");
|
|
191639
|
+
const rango_api_status_types_1 = __webpack_require__(/*! ../../common/providers/rango/models/rango-api-status-types */ "./src/features/common/providers/rango/models/rango-api-status-types.ts");
|
|
191640
|
+
const rango_parser_1 = __webpack_require__(/*! ../../common/providers/rango/services/rango-parser */ "./src/features/common/providers/rango/services/rango-parser.ts");
|
|
190681
191641
|
const xy_api_params_1 = __webpack_require__(/*! ../../common/providers/xy/constants/xy-api-params */ "./src/features/common/providers/xy/constants/xy-api-params.ts");
|
|
190682
191642
|
const get_bridgers_trade_status_1 = __webpack_require__(/*! ../../common/status-manager/utils/get-bridgers-trade-status */ "./src/features/common/status-manager/utils/get-bridgers-trade-status.ts");
|
|
190683
191643
|
const get_src_tx_status_1 = __webpack_require__(/*! ../../common/status-manager/utils/get-src-tx-status */ "./src/features/common/status-manager/utils/get-src-tx-status.ts");
|
|
@@ -190693,6 +191653,7 @@ const multichain_status_mapping_1 = __webpack_require__(/*! ./constants/multicha
|
|
|
190693
191653
|
const changenow_api_response_1 = __webpack_require__(/*! ./models/changenow-api-response */ "./src/features/cross-chain/status-manager/models/changenow-api-response.ts");
|
|
190694
191654
|
const squidrouter_transfer_status_enum_1 = __webpack_require__(/*! ./models/squidrouter-transfer-status.enum */ "./src/features/cross-chain/status-manager/models/squidrouter-transfer-status.enum.ts");
|
|
190695
191655
|
const statuses_api_1 = __webpack_require__(/*! ./models/statuses-api */ "./src/features/cross-chain/status-manager/models/statuses-api.ts");
|
|
191656
|
+
const rango_cross_chain_api_service_1 = __webpack_require__(/*! ../calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service.ts");
|
|
190696
191657
|
const taiko_api_response_1 = __webpack_require__(/*! ./models/taiko-api-response */ "./src/features/cross-chain/status-manager/models/taiko-api-response.ts");
|
|
190697
191658
|
/**
|
|
190698
191659
|
* Contains methods for getting cross-chain trade statuses.
|
|
@@ -190713,7 +191674,8 @@ class CrossChainStatusManager {
|
|
|
190713
191674
|
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.ARBITRUM]: this.getArbitrumBridgeDstSwapStatus,
|
|
190714
191675
|
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.SQUIDROUTER]: this.getSquidrouterDstSwapStatus,
|
|
190715
191676
|
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.SCROLL_BRIDGE]: this.getScrollBridgeDstSwapStatus,
|
|
190716
|
-
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.TAIKO_BRIDGE]: this.getTaikoBridgeDstSwapStatus
|
|
191677
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.TAIKO_BRIDGE]: this.getTaikoBridgeDstSwapStatus,
|
|
191678
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.RANGO]: this.getRangoDstSwapStatus
|
|
190717
191679
|
};
|
|
190718
191680
|
}
|
|
190719
191681
|
/**
|
|
@@ -191174,6 +192136,26 @@ class CrossChainStatusManager {
|
|
|
191174
192136
|
}
|
|
191175
192137
|
return { status: tx_status_1.TX_STATUS.PENDING, hash: null };
|
|
191176
192138
|
}
|
|
192139
|
+
async getRangoDstSwapStatus(data) {
|
|
192140
|
+
if (!data.rangoRequestId) {
|
|
192141
|
+
throw new errors_1.RubicSdkError('Must provide rangoRequestId');
|
|
192142
|
+
}
|
|
192143
|
+
const { srcTxHash, rangoRequestId } = data;
|
|
192144
|
+
const params = rango_parser_1.RangoCommonParser.getTxStatusQueryParams(srcTxHash, rangoRequestId);
|
|
192145
|
+
const { bridgeData, status: txStatus } = await rango_cross_chain_api_service_1.RangoCrossChainApiService.getTxStatus(params);
|
|
192146
|
+
let status;
|
|
192147
|
+
if (txStatus === rango_api_status_types_1.RANGO_SWAP_STATUS.SUCCESS) {
|
|
192148
|
+
status = tx_status_1.TX_STATUS.SUCCESS;
|
|
192149
|
+
}
|
|
192150
|
+
else if (txStatus === rango_api_status_types_1.RANGO_SWAP_STATUS.RUNNING) {
|
|
192151
|
+
status = tx_status_1.TX_STATUS.PENDING;
|
|
192152
|
+
}
|
|
192153
|
+
else {
|
|
192154
|
+
status = tx_status_1.TX_STATUS.FAIL;
|
|
192155
|
+
}
|
|
192156
|
+
const hash = bridgeData.destTxHash;
|
|
192157
|
+
return { hash, status };
|
|
192158
|
+
}
|
|
191177
192159
|
}
|
|
191178
192160
|
exports.CrossChainStatusManager = CrossChainStatusManager;
|
|
191179
192161
|
|
|
@@ -192859,6 +193841,7 @@ const on_chain_proxy_service_1 = __webpack_require__(/*! ./providers/common/on-c
|
|
|
192859
193841
|
const on_chain_trade_1 = __webpack_require__(/*! ./providers/common/on-chain-trade/on-chain-trade */ "./src/features/on-chain/calculation-manager/providers/common/on-chain-trade/on-chain-trade.ts");
|
|
192860
193842
|
const lifi_provider_1 = __webpack_require__(/*! ./providers/lifi/lifi-provider */ "./src/features/on-chain/calculation-manager/providers/lifi/lifi-provider.ts");
|
|
192861
193843
|
const open_ocean_provider_1 = __webpack_require__(/*! ./providers/open-ocean/open-ocean-provider */ "./src/features/on-chain/calculation-manager/providers/open-ocean/open-ocean-provider.ts");
|
|
193844
|
+
const rango_on_chain_provider_1 = __webpack_require__(/*! ./providers/rango/rango-on-chain-provider */ "./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-provider.ts");
|
|
192862
193845
|
/**
|
|
192863
193846
|
* Contains methods to calculate on-chain trades.
|
|
192864
193847
|
*/
|
|
@@ -192871,6 +193854,7 @@ class OnChainManager {
|
|
|
192871
193854
|
this.tradeProviders = typed_trade_providers_1.typedTradeProviders;
|
|
192872
193855
|
this.lifiProvider = new lifi_provider_1.LifiProvider();
|
|
192873
193856
|
this.openOceanProvider = new open_ocean_provider_1.OpenOceanProvider();
|
|
193857
|
+
this.rangoProvider = new rango_on_chain_provider_1.RangoOnChainProvider();
|
|
192874
193858
|
this.deflationTokenManager = new deflation_token_manager_1.DeflationTokenManager();
|
|
192875
193859
|
}
|
|
192876
193860
|
calculateTradeReactively(fromToken, fromAmount, toToken, options) {
|
|
@@ -192892,8 +193876,18 @@ class OnChainManager {
|
|
|
192892
193876
|
.includes(on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OPEN_OCEAN)
|
|
192893
193877
|
? []
|
|
192894
193878
|
: [this.getOpenOceanCalculationPromise(from, to, fullOptions)];
|
|
192895
|
-
const
|
|
192896
|
-
|
|
193879
|
+
const rangoTrades = fullOptions.disabledProviders
|
|
193880
|
+
.map(provider => provider.toUpperCase())
|
|
193881
|
+
.includes(on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO)
|
|
193882
|
+
? []
|
|
193883
|
+
: [this.getRangoCalculationPromise(from, to, fullOptions)];
|
|
193884
|
+
const totalTrades = [
|
|
193885
|
+
...nativeProviders,
|
|
193886
|
+
...lifiTrades,
|
|
193887
|
+
...openOceanTrades,
|
|
193888
|
+
...rangoTrades
|
|
193889
|
+
].length;
|
|
193890
|
+
return (0, rxjs_1.merge)(...nativeProviders.map(([_, provider]) => (0, innerFrom_1.fromPromise)(this.getProviderCalculationPromise(provider, from, to, fullOptions))), ...lifiTrades, ...openOceanTrades, ...rangoTrades).pipe((0, rxjs_1.map)((wrappedTrade, index) => ({
|
|
192897
193891
|
total: totalTrades,
|
|
192898
193892
|
calculated: index + 1,
|
|
192899
193893
|
wrappedTrade: wrappedTrade || null
|
|
@@ -193111,6 +194105,26 @@ class OnChainManager {
|
|
|
193111
194105
|
};
|
|
193112
194106
|
}
|
|
193113
194107
|
}
|
|
194108
|
+
async getRangoCalculationPromise(from, to, options) {
|
|
194109
|
+
try {
|
|
194110
|
+
const wrappedTrade = await (0, p_timeout_1.default)(this.rangoProvider.calculate(from, to, options), options.timeout);
|
|
194111
|
+
if ('error' in wrappedTrade) {
|
|
194112
|
+
throw wrappedTrade.error;
|
|
194113
|
+
}
|
|
194114
|
+
if (!wrappedTrade) {
|
|
194115
|
+
return null;
|
|
194116
|
+
}
|
|
194117
|
+
return { trade: wrappedTrade, tradeType: on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO };
|
|
194118
|
+
}
|
|
194119
|
+
catch (err) {
|
|
194120
|
+
console.debug(`[RUBIC_SDK] Trade calculation error occurred for ${on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO} trade provider.`, err);
|
|
194121
|
+
return {
|
|
194122
|
+
trade: null,
|
|
194123
|
+
tradeType: on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO,
|
|
194124
|
+
error: cross_chain_provider_1.CrossChainProvider.parseError(err)
|
|
194125
|
+
};
|
|
194126
|
+
}
|
|
194127
|
+
}
|
|
193114
194128
|
getWrappedWrapTrade(fromToken, toToken, fullOptions) {
|
|
193115
194129
|
const wrappedTrade = {
|
|
193116
194130
|
error: undefined,
|
|
@@ -193263,6 +194277,7 @@ exports.ON_CHAIN_TRADE_TYPE = void 0;
|
|
|
193263
194277
|
* List of on-chain trade types.
|
|
193264
194278
|
*/
|
|
193265
194279
|
exports.ON_CHAIN_TRADE_TYPE = {
|
|
194280
|
+
'10K_SWAP': '10K_SWAP',
|
|
193266
194281
|
AERODROME: 'AERODROME',
|
|
193267
194282
|
ACRYPTOS: 'ACRYPTOS',
|
|
193268
194283
|
ALDRIN_EXCHANGE: 'ALDRIN_EXCHANGE',
|
|
@@ -193273,12 +194288,14 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193273
194288
|
ARTH_SWAP: 'ARTH_SWAP',
|
|
193274
194289
|
ASTRO_SWAP: 'ASTRO_SWAP',
|
|
193275
194290
|
AURORA_SWAP: 'AURORA_SWAP',
|
|
194291
|
+
AVNU: 'AVNU',
|
|
193276
194292
|
BABY_SWAP: 'BABY_SWAP',
|
|
193277
194293
|
BALANCER: 'BALANCER',
|
|
193278
194294
|
BASE_SWAP: 'BASE_SWAP',
|
|
193279
194295
|
BEAM_SWAP: 'BEAM_SWAP',
|
|
193280
194296
|
BI_SWAP: 'BI_SWAP',
|
|
193281
194297
|
BRIDGERS: 'BRIDGERS',
|
|
194298
|
+
CHERRY_SWAP: 'CHERRY_SWAP',
|
|
193282
194299
|
CLAIM_SWAP: 'CLAIM_SWAP',
|
|
193283
194300
|
CREMA_FINANCE: 'CREMA_FINANCE',
|
|
193284
194301
|
CRO_SWAP: 'CRO_SWAP',
|
|
@@ -193292,7 +194309,9 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193292
194309
|
DFYN: 'DFYN',
|
|
193293
194310
|
DODO: 'DODO',
|
|
193294
194311
|
DYSTOPIA: 'DYSTOPIA',
|
|
194312
|
+
ECHO_DEX: 'ECHO_DEX',
|
|
193295
194313
|
ELK: 'ELK',
|
|
194314
|
+
FINKUJIRA: 'FINKUJIRA',
|
|
193296
194315
|
FUSIONX: 'FUSIONX',
|
|
193297
194316
|
HONEY_SWAP: 'HONEY_SWAP',
|
|
193298
194317
|
HORIZONDEX: 'HORIZONDEX',
|
|
@@ -193311,6 +194330,7 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193311
194330
|
MOJITO_SWAP: 'MOJITO_SWAP',
|
|
193312
194331
|
MUTE_SWAP: 'MUTE_SWAP',
|
|
193313
194332
|
NET_SWAP: 'NET_SWAP',
|
|
194333
|
+
OKC_SWAP: 'OKC_SWAP',
|
|
193314
194334
|
ONE_INCH: 'ONE_INCH',
|
|
193315
194335
|
ONE_MOON: 'ONE_MOON',
|
|
193316
194336
|
ONE_SOL: 'ONE_SOL',
|
|
@@ -193320,7 +194340,9 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193320
194340
|
ORCA_SWAP: 'ORCA_SWAP',
|
|
193321
194341
|
OSMOSIS_SWAP: 'OSMOSIS_SWAP',
|
|
193322
194342
|
PANCAKE_SWAP: 'PANCAKE_SWAP',
|
|
194343
|
+
PANCAKE_SWAP_V3: 'PANCAKE_SWAP_V3',
|
|
193323
194344
|
PANGOLIN: 'PANGOLIN',
|
|
194345
|
+
PARA_SWAP: 'PARA_SWAP',
|
|
193324
194346
|
PEGASYS: 'PEGASYS',
|
|
193325
194347
|
PHOTON_SWAP: 'PHOTON_SWAP',
|
|
193326
194348
|
POLYDEX: 'POLYDEX',
|
|
@@ -193328,6 +194350,7 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193328
194350
|
QUICK_SWAP_V3: 'QUICK_SWAP_V3',
|
|
193329
194351
|
PULSEX_V1: 'PULSEX_V1',
|
|
193330
194352
|
PULSEX_V2: 'PULSEX_V2',
|
|
194353
|
+
RANGO: 'RANGO',
|
|
193331
194354
|
RAYDIUM: 'RAYDIUM',
|
|
193332
194355
|
REF_FINANCE: 'REF_FINANCE',
|
|
193333
194356
|
REN_BTC: 'REN_BTC',
|
|
@@ -193336,14 +194359,18 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193336
194359
|
SERUM: 'SERUM',
|
|
193337
194360
|
SHIBA_SWAP: 'SHIBA_SWAP',
|
|
193338
194361
|
SMOOTHY: 'SMOOTHY',
|
|
194362
|
+
SOLANA: 'SOLANA',
|
|
193339
194363
|
SOLAR_BEAM: 'SOLAR_BEAM',
|
|
194364
|
+
SPACEFI_SWAP: 'SPACEFI_SWAP',
|
|
193340
194365
|
SPIRIT_SWAP: 'SPIRIT_SWAP',
|
|
193341
194366
|
SPL_TOKEN_SWAP: 'SPL_TOKEN_SWAP',
|
|
193342
194367
|
SPOOKY_SWAP: 'SPOOKY_SWAP',
|
|
193343
194368
|
SOUL_SWAP: 'SOUL_SWAP',
|
|
193344
194369
|
STELLA_SWAP: 'STELLA_SWAP',
|
|
194370
|
+
SUN_SWAP: 'SUN_SWAP',
|
|
193345
194371
|
SURFDEX: 'SURFDEX',
|
|
193346
194372
|
SUSHI_SWAP: 'SUSHI_SWAP',
|
|
194373
|
+
SYNAPSE: 'SYNAPSE',
|
|
193347
194374
|
SYNC_SWAP: 'SYNC_SWAP',
|
|
193348
194375
|
SYMBIOSIS_SWAP: 'SYMBIOSIS_SWAP',
|
|
193349
194376
|
TRADER: 'TRADER',
|
|
@@ -193362,6 +194389,7 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193362
194389
|
WAULT_SWAP: 'WAULT_SWAP',
|
|
193363
194390
|
WOO_FI: 'WOO_FI',
|
|
193364
194391
|
WRAPPED: 'WRAPPED',
|
|
194392
|
+
WYND: 'WYND',
|
|
193365
194393
|
YUZU_SWAP: 'YUZU_SWAP',
|
|
193366
194394
|
XY_DEX: 'XY_DEX',
|
|
193367
194395
|
ZAPPY: 'ZAPPY',
|
|
@@ -214082,6 +215110,333 @@ exports.OpenOceanTrade = OpenOceanTrade;
|
|
|
214082
215110
|
OpenOceanTrade.nativeAddress = '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE';
|
|
214083
215111
|
|
|
214084
215112
|
|
|
215113
|
+
/***/ }),
|
|
215114
|
+
|
|
215115
|
+
/***/ "./src/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-disabled-providers.ts":
|
|
215116
|
+
/*!***************************************************************************************************************!*\
|
|
215117
|
+
!*** ./src/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-disabled-providers.ts ***!
|
|
215118
|
+
\***************************************************************************************************************/
|
|
215119
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
215120
|
+
|
|
215121
|
+
"use strict";
|
|
215122
|
+
|
|
215123
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
215124
|
+
exports.rangoOnChainDisabledProviders = void 0;
|
|
215125
|
+
const on_chain_trade_type_1 = __webpack_require__(/*! ../../common/models/on-chain-trade-type */ "./src/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.ts");
|
|
215126
|
+
exports.rangoOnChainDisabledProviders = [
|
|
215127
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OSMOSIS_SWAP,
|
|
215128
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OOLONG_SWAP,
|
|
215129
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE['10K_SWAP'],
|
|
215130
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.FINKUJIRA,
|
|
215131
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SOLANA,
|
|
215132
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.JUPITER,
|
|
215133
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SOLAR_BEAM,
|
|
215134
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.WYND,
|
|
215135
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SUN_SWAP,
|
|
215136
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.MDEX,
|
|
215137
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.BEAM_SWAP,
|
|
215138
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OKC_SWAP
|
|
215139
|
+
];
|
|
215140
|
+
|
|
215141
|
+
|
|
215142
|
+
/***/ }),
|
|
215143
|
+
|
|
215144
|
+
/***/ "./src/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-trade-types.ts":
|
|
215145
|
+
/*!********************************************************************************************************!*\
|
|
215146
|
+
!*** ./src/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-trade-types.ts ***!
|
|
215147
|
+
\********************************************************************************************************/
|
|
215148
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
215149
|
+
|
|
215150
|
+
"use strict";
|
|
215151
|
+
|
|
215152
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
215153
|
+
|
|
215154
|
+
|
|
215155
|
+
/***/ }),
|
|
215156
|
+
|
|
215157
|
+
/***/ "./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-provider.ts":
|
|
215158
|
+
/*!**********************************************************************************************!*\
|
|
215159
|
+
!*** ./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-provider.ts ***!
|
|
215160
|
+
\**********************************************************************************************/
|
|
215161
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
215162
|
+
|
|
215163
|
+
"use strict";
|
|
215164
|
+
|
|
215165
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
215166
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
215167
|
+
};
|
|
215168
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
215169
|
+
exports.RangoOnChainProvider = void 0;
|
|
215170
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
215171
|
+
const errors_1 = __webpack_require__(/*! ../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
215172
|
+
const tokens_1 = __webpack_require__(/*! ../../../../../common/tokens */ "./src/common/tokens/index.ts");
|
|
215173
|
+
const rango_supported_blockchains_1 = __webpack_require__(/*! ../../../../common/providers/rango/models/rango-supported-blockchains */ "./src/features/common/providers/rango/models/rango-supported-blockchains.ts");
|
|
215174
|
+
const rango_parser_1 = __webpack_require__(/*! ../../../../common/providers/rango/services/rango-parser */ "./src/features/common/providers/rango/services/rango-parser.ts");
|
|
215175
|
+
const get_from_without_fee_1 = __webpack_require__(/*! ../../../../common/utils/get-from-without-fee */ "./src/features/common/utils/get-from-without-fee.ts");
|
|
215176
|
+
const on_chain_trade_type_1 = __webpack_require__(/*! ../common/models/on-chain-trade-type */ "./src/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.ts");
|
|
215177
|
+
const on_chain_proxy_service_1 = __webpack_require__(/*! ../common/on-chain-proxy-service/on-chain-proxy-service */ "./src/features/on-chain/calculation-manager/providers/common/on-chain-proxy-service/on-chain-proxy-service.ts");
|
|
215178
|
+
const get_gas_fee_info_1 = __webpack_require__(/*! ../common/utils/get-gas-fee-info */ "./src/features/on-chain/calculation-manager/providers/common/utils/get-gas-fee-info.ts");
|
|
215179
|
+
const get_gas_price_info_1 = __webpack_require__(/*! ../common/utils/get-gas-price-info */ "./src/features/on-chain/calculation-manager/providers/common/utils/get-gas-price-info.ts");
|
|
215180
|
+
const rango_on_chain_disabled_providers_1 = __webpack_require__(/*! ./models/rango-on-chain-disabled-providers */ "./src/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-disabled-providers.ts");
|
|
215181
|
+
const rango_on_chain_trade_1 = __webpack_require__(/*! ./rango-on-chain-trade */ "./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-trade.ts");
|
|
215182
|
+
const rango_on_chain_api_service_1 = __webpack_require__(/*! ./services/rango-on-chain-api-service */ "./src/features/on-chain/calculation-manager/providers/rango/services/rango-on-chain-api-service.ts");
|
|
215183
|
+
class RangoOnChainProvider {
|
|
215184
|
+
constructor() {
|
|
215185
|
+
this.onChainProxyService = new on_chain_proxy_service_1.OnChainProxyService();
|
|
215186
|
+
}
|
|
215187
|
+
isSupportedBlockchain(blockchainName) {
|
|
215188
|
+
return rango_supported_blockchains_1.rangoSupportedBlockchains.some(chain => chain === blockchainName);
|
|
215189
|
+
}
|
|
215190
|
+
async calculate(from, toToken, options) {
|
|
215191
|
+
if (!this.isSupportedBlockchain(from.blockchain)) {
|
|
215192
|
+
throw new errors_1.RubicSdkError(`Rango doesn't support ${from.blockchain} chain!`);
|
|
215193
|
+
}
|
|
215194
|
+
try {
|
|
215195
|
+
const { fromWithoutFee, proxyFeeInfo } = await this.handleProxyContract(from, options);
|
|
215196
|
+
const path = this.getRoutePath(from, toToken);
|
|
215197
|
+
const swapParams = await rango_parser_1.RangoCommonParser.getSwapQueryParams(fromWithoutFee, toToken, {
|
|
215198
|
+
...options,
|
|
215199
|
+
swapperGroups: rango_on_chain_disabled_providers_1.rangoOnChainDisabledProviders
|
|
215200
|
+
});
|
|
215201
|
+
const { route, tx } = await rango_on_chain_api_service_1.RangoOnChainApiService.getSwapTransaction(swapParams);
|
|
215202
|
+
const { outputAmountMin, outputAmount } = route;
|
|
215203
|
+
const { approveTo: providerGateway } = tx;
|
|
215204
|
+
const to = new tokens_1.PriceTokenAmount({
|
|
215205
|
+
...toToken.asStruct,
|
|
215206
|
+
weiAmount: new bignumber_js_1.default(outputAmount)
|
|
215207
|
+
});
|
|
215208
|
+
const toTokenWeiAmountMin = new bignumber_js_1.default(outputAmountMin);
|
|
215209
|
+
const tradeStruct = {
|
|
215210
|
+
from,
|
|
215211
|
+
to,
|
|
215212
|
+
fromWithoutFee,
|
|
215213
|
+
proxyFeeInfo,
|
|
215214
|
+
toTokenWeiAmountMin,
|
|
215215
|
+
gasFeeInfo: {
|
|
215216
|
+
gasLimit: undefined
|
|
215217
|
+
},
|
|
215218
|
+
slippageTolerance: options.slippageTolerance,
|
|
215219
|
+
useProxy: options.useProxy,
|
|
215220
|
+
withDeflation: options.withDeflation,
|
|
215221
|
+
path
|
|
215222
|
+
};
|
|
215223
|
+
const gasFeeInfo = options.gasCalculation === 'calculate'
|
|
215224
|
+
? await this.getGasFeeInfo(tradeStruct, providerGateway)
|
|
215225
|
+
: null;
|
|
215226
|
+
return new rango_on_chain_trade_1.RangoOnChainTrade({
|
|
215227
|
+
...tradeStruct,
|
|
215228
|
+
gasFeeInfo
|
|
215229
|
+
}, options.providerAddress, providerGateway);
|
|
215230
|
+
}
|
|
215231
|
+
catch (err) {
|
|
215232
|
+
return {
|
|
215233
|
+
type: on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO,
|
|
215234
|
+
error: err
|
|
215235
|
+
};
|
|
215236
|
+
}
|
|
215237
|
+
}
|
|
215238
|
+
async handleProxyContract(from, fullOptions) {
|
|
215239
|
+
let fromWithoutFee;
|
|
215240
|
+
let proxyFeeInfo;
|
|
215241
|
+
if (fullOptions.useProxy) {
|
|
215242
|
+
proxyFeeInfo = await this.onChainProxyService.getFeeInfo(from, fullOptions.providerAddress);
|
|
215243
|
+
fromWithoutFee = (0, get_from_without_fee_1.getFromWithoutFee)(from, proxyFeeInfo.platformFee.percent);
|
|
215244
|
+
}
|
|
215245
|
+
else {
|
|
215246
|
+
fromWithoutFee = from;
|
|
215247
|
+
}
|
|
215248
|
+
return {
|
|
215249
|
+
fromWithoutFee,
|
|
215250
|
+
proxyFeeInfo
|
|
215251
|
+
};
|
|
215252
|
+
}
|
|
215253
|
+
async getGasFeeInfo(tradeStruct, providerGateway) {
|
|
215254
|
+
try {
|
|
215255
|
+
const gasPriceInfo = await (0, get_gas_price_info_1.getGasPriceInfo)(tradeStruct.from.blockchain);
|
|
215256
|
+
const gasLimit = await rango_on_chain_trade_1.RangoOnChainTrade.getGasLimit(tradeStruct, providerGateway);
|
|
215257
|
+
return (0, get_gas_fee_info_1.getGasFeeInfo)(gasLimit, gasPriceInfo);
|
|
215258
|
+
}
|
|
215259
|
+
catch {
|
|
215260
|
+
return null;
|
|
215261
|
+
}
|
|
215262
|
+
}
|
|
215263
|
+
getRoutePath(from, to) {
|
|
215264
|
+
return [from, to];
|
|
215265
|
+
}
|
|
215266
|
+
}
|
|
215267
|
+
exports.RangoOnChainProvider = RangoOnChainProvider;
|
|
215268
|
+
|
|
215269
|
+
|
|
215270
|
+
/***/ }),
|
|
215271
|
+
|
|
215272
|
+
/***/ "./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-trade.ts":
|
|
215273
|
+
/*!*******************************************************************************************!*\
|
|
215274
|
+
!*** ./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-trade.ts ***!
|
|
215275
|
+
\*******************************************************************************************/
|
|
215276
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
215277
|
+
|
|
215278
|
+
"use strict";
|
|
215279
|
+
|
|
215280
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
215281
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
215282
|
+
};
|
|
215283
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
215284
|
+
exports.RangoOnChainTrade = void 0;
|
|
215285
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
215286
|
+
const errors_1 = __webpack_require__(/*! ../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
215287
|
+
const tokens_1 = __webpack_require__(/*! ../../../../../common/tokens */ "./src/common/tokens/index.ts");
|
|
215288
|
+
const errors_2 = __webpack_require__(/*! ../../../../../common/utils/errors */ "./src/common/utils/errors.ts");
|
|
215289
|
+
const evm_web3_pure_1 = __webpack_require__(/*! ../../../../../core/blockchain/web3-pure/typed-web3-pure/evm-web3-pure/evm-web3-pure */ "./src/core/blockchain/web3-pure/typed-web3-pure/evm-web3-pure/evm-web3-pure.ts");
|
|
215290
|
+
const injector_1 = __webpack_require__(/*! ../../../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
215291
|
+
const rango_parser_1 = __webpack_require__(/*! ../../../../common/providers/rango/services/rango-parser */ "./src/features/common/providers/rango/services/rango-parser.ts");
|
|
215292
|
+
const rubic_proxy_contract_address_1 = __webpack_require__(/*! ../../../../cross-chain/calculation-manager/providers/common/constants/rubic-proxy-contract-address */ "./src/features/cross-chain/calculation-manager/providers/common/constants/rubic-proxy-contract-address.ts");
|
|
215293
|
+
const on_chain_trade_type_1 = __webpack_require__(/*! ../common/models/on-chain-trade-type */ "./src/features/on-chain/calculation-manager/providers/common/models/on-chain-trade-type.ts");
|
|
215294
|
+
const evm_on_chain_trade_1 = __webpack_require__(/*! ../common/on-chain-trade/evm-on-chain-trade/evm-on-chain-trade */ "./src/features/on-chain/calculation-manager/providers/common/on-chain-trade/evm-on-chain-trade/evm-on-chain-trade.ts");
|
|
215295
|
+
const rango_on_chain_api_service_1 = __webpack_require__(/*! ./services/rango-on-chain-api-service */ "./src/features/on-chain/calculation-manager/providers/rango/services/rango-on-chain-api-service.ts");
|
|
215296
|
+
class RangoOnChainTrade extends evm_on_chain_trade_1.EvmOnChainTrade {
|
|
215297
|
+
/* @internal */
|
|
215298
|
+
static async getGasLimit(tradeStruct, providerGateway) {
|
|
215299
|
+
const fromBlockchain = tradeStruct.from.blockchain;
|
|
215300
|
+
const walletAddress = injector_1.Injector.web3PrivateService.getWeb3PrivateByBlockchain(fromBlockchain).address;
|
|
215301
|
+
if (!walletAddress) {
|
|
215302
|
+
return null;
|
|
215303
|
+
}
|
|
215304
|
+
const rangoTrade = new RangoOnChainTrade(tradeStruct, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, providerGateway);
|
|
215305
|
+
try {
|
|
215306
|
+
const transactionConfig = await rangoTrade.encode({ fromAddress: walletAddress });
|
|
215307
|
+
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(fromBlockchain);
|
|
215308
|
+
const gasLimit = (await web3Public.batchEstimatedGas(walletAddress, [transactionConfig]))[0];
|
|
215309
|
+
if (gasLimit?.isFinite()) {
|
|
215310
|
+
return gasLimit;
|
|
215311
|
+
}
|
|
215312
|
+
}
|
|
215313
|
+
catch { }
|
|
215314
|
+
try {
|
|
215315
|
+
const transactionData = await rangoTrade.getTransactionData();
|
|
215316
|
+
if (transactionData.gas) {
|
|
215317
|
+
return new bignumber_js_1.default(transactionData.gas);
|
|
215318
|
+
}
|
|
215319
|
+
}
|
|
215320
|
+
catch { }
|
|
215321
|
+
return null;
|
|
215322
|
+
}
|
|
215323
|
+
get toTokenAmountMin() {
|
|
215324
|
+
return this._toTokenAmountMin;
|
|
215325
|
+
}
|
|
215326
|
+
get spenderAddress() {
|
|
215327
|
+
return this.useProxy
|
|
215328
|
+
? rubic_proxy_contract_address_1.rubicProxyContractAddress[this.from.blockchain].gateway
|
|
215329
|
+
: this.providerGateway;
|
|
215330
|
+
}
|
|
215331
|
+
get dexContractAddress() {
|
|
215332
|
+
throw new errors_1.RubicSdkError('Dex address is unknown before swap is started');
|
|
215333
|
+
}
|
|
215334
|
+
constructor(tradeStruct, providerAddress, providerGateway) {
|
|
215335
|
+
super(tradeStruct, providerAddress);
|
|
215336
|
+
this.type = on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO;
|
|
215337
|
+
this._toTokenAmountMin = new tokens_1.PriceTokenAmount({
|
|
215338
|
+
...this.to.asStruct,
|
|
215339
|
+
weiAmount: tradeStruct.toTokenWeiAmountMin
|
|
215340
|
+
});
|
|
215341
|
+
this.providerGateway = providerGateway;
|
|
215342
|
+
}
|
|
215343
|
+
async encodeDirect(options) {
|
|
215344
|
+
await this.checkFromAddress(options.fromAddress, true);
|
|
215345
|
+
await this.checkReceiverAddress(options.receiverAddress);
|
|
215346
|
+
try {
|
|
215347
|
+
const transactionData = await this.getTransactionData(this.walletAddress, options.receiverAddress);
|
|
215348
|
+
const { gas, gasPrice } = this.getGasParams(options, {
|
|
215349
|
+
gasLimit: transactionData.gas,
|
|
215350
|
+
gasPrice: transactionData.gasPrice
|
|
215351
|
+
});
|
|
215352
|
+
return {
|
|
215353
|
+
to: transactionData.to,
|
|
215354
|
+
data: transactionData.data,
|
|
215355
|
+
value: this.fromWithoutFee.isNative ? this.fromWithoutFee.stringWeiAmount : '0',
|
|
215356
|
+
gas,
|
|
215357
|
+
gasPrice
|
|
215358
|
+
};
|
|
215359
|
+
}
|
|
215360
|
+
catch (err) {
|
|
215361
|
+
if ([400, 500, 503].includes(err.code)) {
|
|
215362
|
+
throw new errors_1.SwapRequestError();
|
|
215363
|
+
}
|
|
215364
|
+
if (this.isDeflationError()) {
|
|
215365
|
+
throw new errors_1.LowSlippageDeflationaryTokenError();
|
|
215366
|
+
}
|
|
215367
|
+
throw (0, errors_2.parseError)(err);
|
|
215368
|
+
}
|
|
215369
|
+
}
|
|
215370
|
+
async getTransactionData(fromAddress, receiverAddress) {
|
|
215371
|
+
const params = await rango_parser_1.RangoCommonParser.getSwapQueryParams(this.from, this.to, {
|
|
215372
|
+
slippageTolerance: this.slippageTolerance,
|
|
215373
|
+
fromAddress: fromAddress || this.walletAddress,
|
|
215374
|
+
receiverAddress: receiverAddress || fromAddress || this.walletAddress
|
|
215375
|
+
});
|
|
215376
|
+
const { tx } = await rango_on_chain_api_service_1.RangoOnChainApiService.getSwapTransaction(params);
|
|
215377
|
+
if (!tx) {
|
|
215378
|
+
throw new errors_1.RubicSdkError(`Transaction status is undefined!`);
|
|
215379
|
+
}
|
|
215380
|
+
const gasLimit = tx.gasLimit && parseInt(tx.gasLimit, 16).toString();
|
|
215381
|
+
const gasPrice = tx.gasPrice && parseInt(tx.gasPrice, 16).toString();
|
|
215382
|
+
return {
|
|
215383
|
+
data: tx.txData,
|
|
215384
|
+
to: tx.txTo,
|
|
215385
|
+
value: tx.value,
|
|
215386
|
+
gas: gasLimit,
|
|
215387
|
+
gasPrice: gasPrice
|
|
215388
|
+
};
|
|
215389
|
+
}
|
|
215390
|
+
}
|
|
215391
|
+
exports.RangoOnChainTrade = RangoOnChainTrade;
|
|
215392
|
+
|
|
215393
|
+
|
|
215394
|
+
/***/ }),
|
|
215395
|
+
|
|
215396
|
+
/***/ "./src/features/on-chain/calculation-manager/providers/rango/services/rango-on-chain-api-service.ts":
|
|
215397
|
+
/*!**********************************************************************************************************!*\
|
|
215398
|
+
!*** ./src/features/on-chain/calculation-manager/providers/rango/services/rango-on-chain-api-service.ts ***!
|
|
215399
|
+
\**********************************************************************************************************/
|
|
215400
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
215401
|
+
|
|
215402
|
+
"use strict";
|
|
215403
|
+
|
|
215404
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
215405
|
+
exports.RangoOnChainApiService = void 0;
|
|
215406
|
+
const errors_1 = __webpack_require__(/*! ../../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
215407
|
+
const injector_1 = __webpack_require__(/*! ../../../../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
215408
|
+
const rango_api_common_1 = __webpack_require__(/*! ../../../../../common/providers/rango/constants/rango-api-common */ "./src/features/common/providers/rango/constants/rango-api-common.ts");
|
|
215409
|
+
class RangoOnChainApiService {
|
|
215410
|
+
static async getBestRoute(params) {
|
|
215411
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/quote`, {
|
|
215412
|
+
params: params
|
|
215413
|
+
});
|
|
215414
|
+
if (!res.route || res.error) {
|
|
215415
|
+
throw new errors_1.RubicSdkError(res.error ?? 'No available routes in rango.');
|
|
215416
|
+
}
|
|
215417
|
+
return res;
|
|
215418
|
+
}
|
|
215419
|
+
static async getSwapTransaction(params) {
|
|
215420
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/swap`, { params: params });
|
|
215421
|
+
if (!res.route || res.error) {
|
|
215422
|
+
throw new errors_1.RubicSdkError(res.error ?? 'No available routes in rango.');
|
|
215423
|
+
}
|
|
215424
|
+
return res;
|
|
215425
|
+
}
|
|
215426
|
+
/**
|
|
215427
|
+
* @description Get transaction status data
|
|
215428
|
+
*/
|
|
215429
|
+
static async getTxStatus(params) {
|
|
215430
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/status`, { params: params });
|
|
215431
|
+
if (res.error || !res.bridgeData || !res.status) {
|
|
215432
|
+
throw new errors_1.RubicSdkError("Can't get status, res has error or null data in getTxStatus method");
|
|
215433
|
+
}
|
|
215434
|
+
return res;
|
|
215435
|
+
}
|
|
215436
|
+
}
|
|
215437
|
+
exports.RangoOnChainApiService = RangoOnChainApiService;
|
|
215438
|
+
|
|
215439
|
+
|
|
214085
215440
|
/***/ }),
|
|
214086
215441
|
|
|
214087
215442
|
/***/ "./src/features/on-chain/calculation-manager/utils/type-guards.ts":
|
|
@@ -214347,6 +215702,19 @@ __exportStar(__webpack_require__(/*! ./features/common/providers/bridgers/models
|
|
|
214347
215702
|
__exportStar(__webpack_require__(/*! ./features/common/providers/bridgers/models/bridgers-update-data-and-status-api */ "./src/features/common/providers/bridgers/models/bridgers-update-data-and-status-api.ts"), exports);
|
|
214348
215703
|
__exportStar(__webpack_require__(/*! ./features/common/providers/changenow/constants/changenow-api-key */ "./src/features/common/providers/changenow/constants/changenow-api-key.ts"), exports);
|
|
214349
215704
|
__exportStar(__webpack_require__(/*! ./features/common/providers/lifi/constants/lifi-config */ "./src/features/common/providers/lifi/constants/lifi-config.ts"), exports);
|
|
215705
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/constants/rango-api-common */ "./src/features/common/providers/rango/constants/rango-api-common.ts"), exports);
|
|
215706
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/constants/rango-contract-address */ "./src/features/common/providers/rango/constants/rango-contract-address.ts"), exports);
|
|
215707
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-best-route-types */ "./src/features/common/providers/rango/models/rango-api-best-route-types.ts"), exports);
|
|
215708
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-blockchain-names */ "./src/features/common/providers/rango/models/rango-api-blockchain-names.ts"), exports);
|
|
215709
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-common-types */ "./src/features/common/providers/rango/models/rango-api-common-types.ts"), exports);
|
|
215710
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-status-types */ "./src/features/common/providers/rango/models/rango-api-status-types.ts"), exports);
|
|
215711
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-swap-types */ "./src/features/common/providers/rango/models/rango-api-swap-types.ts"), exports);
|
|
215712
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-symbol-names */ "./src/features/common/providers/rango/models/rango-api-symbol-names.ts"), exports);
|
|
215713
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-trade-types */ "./src/features/common/providers/rango/models/rango-api-trade-types.ts"), exports);
|
|
215714
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-parser-types */ "./src/features/common/providers/rango/models/rango-parser-types.ts"), exports);
|
|
215715
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-supported-blockchains */ "./src/features/common/providers/rango/models/rango-supported-blockchains.ts"), exports);
|
|
215716
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/services/rango-parser */ "./src/features/common/providers/rango/services/rango-parser.ts"), exports);
|
|
215717
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/utils/rango-utils */ "./src/features/common/providers/rango/utils/rango-utils.ts"), exports);
|
|
214350
215718
|
__exportStar(__webpack_require__(/*! ./features/common/providers/xy/constants/xy-api-params */ "./src/features/common/providers/xy/constants/xy-api-params.ts"), exports);
|
|
214351
215719
|
__exportStar(__webpack_require__(/*! ./features/common/providers/xy/constants/xy-error-code */ "./src/features/common/providers/xy/constants/xy-error-code.ts"), exports);
|
|
214352
215720
|
__exportStar(__webpack_require__(/*! ./features/common/providers/xy/models/xy-build-tx-request */ "./src/features/common/providers/xy/models/xy-build-tx-request.ts"), exports);
|
|
@@ -214455,6 +215823,12 @@ __exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/
|
|
|
214455
215823
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/lifi-provider/models/lifi-swap-status */ "./src/features/cross-chain/calculation-manager/providers/lifi-provider/models/lifi-swap-status.ts"), exports);
|
|
214456
215824
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/lifi-provider/models/lifi-transaction-request */ "./src/features/cross-chain/calculation-manager/providers/lifi-provider/models/lifi-transaction-request.ts"), exports);
|
|
214457
215825
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/lifi-provider/models/uniq-lifi-bridge-types */ "./src/features/cross-chain/calculation-manager/providers/lifi-provider/models/uniq-lifi-bridge-types.ts"), exports);
|
|
215826
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-api-types */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-api-types.ts"), exports);
|
|
215827
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-parser-types */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-parser-types.ts"), exports);
|
|
215828
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-provider.ts"), exports);
|
|
215829
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-trade */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-trade.ts"), exports);
|
|
215830
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service.ts"), exports);
|
|
215831
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-params-parser */ "./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-params-parser.ts"), exports);
|
|
214458
215832
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/scroll-bridge/constants/l1-erc20-scroll-gateway-abi */ "./src/features/cross-chain/calculation-manager/providers/scroll-bridge/constants/l1-erc20-scroll-gateway-abi.ts"), exports);
|
|
214459
215833
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/scroll-bridge/constants/l2-erc20-scroll-gateway-abi */ "./src/features/cross-chain/calculation-manager/providers/scroll-bridge/constants/l2-erc20-scroll-gateway-abi.ts"), exports);
|
|
214460
215834
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/scroll-bridge/constants/scroll-bridge-contract-address */ "./src/features/cross-chain/calculation-manager/providers/scroll-bridge/constants/scroll-bridge-contract-address.ts"), exports);
|
|
@@ -215045,6 +216419,11 @@ __exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/pro
|
|
|
215045
216419
|
__exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/providers/open-ocean/models/open-ocean-trade-struct */ "./src/features/on-chain/calculation-manager/providers/open-ocean/models/open-ocean-trade-struct.ts"), exports);
|
|
215046
216420
|
__exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/providers/open-ocean/open-ocean-provider */ "./src/features/on-chain/calculation-manager/providers/open-ocean/open-ocean-provider.ts"), exports);
|
|
215047
216421
|
__exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/providers/open-ocean/open-ocean-trade */ "./src/features/on-chain/calculation-manager/providers/open-ocean/open-ocean-trade.ts"), exports);
|
|
216422
|
+
__exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-disabled-providers */ "./src/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-disabled-providers.ts"), exports);
|
|
216423
|
+
__exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-trade-types */ "./src/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-trade-types.ts"), exports);
|
|
216424
|
+
__exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/providers/rango/rango-on-chain-provider */ "./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-provider.ts"), exports);
|
|
216425
|
+
__exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/providers/rango/rango-on-chain-trade */ "./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-trade.ts"), exports);
|
|
216426
|
+
__exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/providers/rango/services/rango-on-chain-api-service */ "./src/features/on-chain/calculation-manager/providers/rango/services/rango-on-chain-api-service.ts"), exports);
|
|
215048
216427
|
__exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/utils/type-guards */ "./src/features/on-chain/calculation-manager/utils/type-guards.ts"), exports);
|
|
215049
216428
|
__exportStar(__webpack_require__(/*! ./features/on-chain/status-manager/on-chain-status-manager */ "./src/features/on-chain/status-manager/on-chain-status-manager.ts"), exports);
|
|
215050
216429
|
|