rubic-sdk 4.45.3 → 4.47.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 +3816 -17
- 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 +3 -1
- package/lib/features/cross-chain/calculation-manager/constants/cross-chain-providers.js +5 -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 +2 -0
- package/lib/features/cross-chain/calculation-manager/models/cross-chain-trade-type.js +3 -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/constants/evm-common-cross-chain-abi.js +26 -8
- package/lib/features/cross-chain/calculation-manager/providers/common/emv-cross-chain-trade/constants/evm-common-cross-chain-abi.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 +9 -2
- package/lib/features/cross-chain/calculation-manager/providers/common/models/default-bridge-type.d.ts +8 -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/pulse-chain-bridge/constants/erc-677-abi.d.ts +2 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/erc-677-abi.js +17 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/erc-677-abi.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/fee-manager-abi.d.ts +2 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/fee-manager-abi.js +61 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/fee-manager-abi.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/foreign-bridge-abi.d.ts +2 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/foreign-bridge-abi.js +72 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/foreign-bridge-abi.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/home-bridge-abi.d.ts +2 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/home-bridge-abi.js +1390 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/home-bridge-abi.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/native-bridge-abi.d.ts +2 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/native-bridge-abi.js +14 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/native-bridge-abi.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-contract-address.d.ts +6 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-contract-address.js +16 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-contract-address.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-supported-blockchains.d.ts +2 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-supported-blockchains.js +9 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-supported-blockchains.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/bridge-manager.d.ts +7 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/bridge-manager.js +15 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/bridge-manager.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/foreign-bridge.d.ts +14 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/foreign-bridge.js +54 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/foreign-bridge.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/home-bridge.d.ts +14 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/home-bridge.js +54 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/home-bridge.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/omni-bridge.d.ts +108 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/omni-bridge.js +112 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/omni-bridge.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-provider.d.ts +19 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-provider.js +182 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-provider.js.map +1 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-trade.d.ts +55 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-trade.js +232 -0
- package/lib/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-trade.js.map +1 -0
- 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/stargate-provider/stargate-cross-chain-trade.d.ts +1 -2
- package/lib/features/cross-chain/calculation-manager/providers/stargate-provider/stargate-cross-chain-trade.js.map +1 -1
- 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 +2 -0
- package/lib/features/cross-chain/status-manager/cross-chain-status-manager.js +39 -1
- package/lib/features/cross-chain/status-manager/cross-chain-status-manager.js.map +1 -1
- package/lib/features/cross-chain/status-manager/models/rubic-backend-ps-status.d.ts +6 -0
- package/lib/features/cross-chain/status-manager/models/rubic-backend-ps-status.js +3 -0
- package/lib/features/cross-chain/status-manager/models/rubic-backend-ps-status.js.map +1 -0
- 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 +38 -0
- package/lib/index.js +38 -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":
|
|
@@ -178555,10 +179041,12 @@ const cbridge_cross_chain_provider_1 = __webpack_require__(/*! ../providers/cbri
|
|
|
178555
179041
|
const changenow_cross_chain_provider_1 = __webpack_require__(/*! ../providers/changenow-provider/changenow-cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/changenow-provider/changenow-cross-chain-provider.ts");
|
|
178556
179042
|
const debridge_cross_chain_provider_1 = __webpack_require__(/*! ../providers/debridge-provider/debridge-cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/debridge-provider/debridge-cross-chain-provider.ts");
|
|
178557
179043
|
const lifi_cross_chain_provider_1 = __webpack_require__(/*! ../providers/lifi-provider/lifi-cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/lifi-provider/lifi-cross-chain-provider.ts");
|
|
179044
|
+
const pulse_chain_cross_chain_provider_1 = __webpack_require__(/*! ../providers/pulse-chain-bridge/pulse-chain-cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-provider.ts");
|
|
178558
179045
|
// import { ScrollBridgeProvider } from 'src/features/cross-chain/calculation-manager/providers/scroll-bridge/scroll-bridge-provider';
|
|
178559
179046
|
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
179047
|
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
179048
|
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");
|
|
179049
|
+
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
179050
|
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
179051
|
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
179052
|
const proxyProviders = [
|
|
@@ -178567,7 +179055,9 @@ const proxyProviders = [
|
|
|
178567
179055
|
xy_cross_chain_provider_1.XyCrossChainProvider,
|
|
178568
179056
|
cbridge_cross_chain_provider_1.CbridgeCrossChainProvider,
|
|
178569
179057
|
lifi_cross_chain_provider_1.LifiCrossChainProvider,
|
|
178570
|
-
squidrouter_cross_chain_provider_1.SquidrouterCrossChainProvider
|
|
179058
|
+
squidrouter_cross_chain_provider_1.SquidrouterCrossChainProvider,
|
|
179059
|
+
rango_cross_chain_provider_1.RangoCrossChainProvider,
|
|
179060
|
+
pulse_chain_cross_chain_provider_1.PulseChainCrossChainProvider
|
|
178571
179061
|
];
|
|
178572
179062
|
const nonProxyProviders = [
|
|
178573
179063
|
debridge_cross_chain_provider_1.DebridgeCrossChainProvider,
|
|
@@ -178918,7 +179408,9 @@ exports.CROSS_CHAIN_TRADE_TYPE = {
|
|
|
178918
179408
|
ARBITRUM: 'arbitrum',
|
|
178919
179409
|
SQUIDROUTER: 'squidrouter',
|
|
178920
179410
|
SCROLL_BRIDGE: 'scroll_bridge',
|
|
178921
|
-
TAIKO_BRIDGE: 'taiko_bridge'
|
|
179411
|
+
TAIKO_BRIDGE: 'taiko_bridge',
|
|
179412
|
+
RANGO: 'rango',
|
|
179413
|
+
PULSE_CHAIN_BRIDGE: 'pulse_chain_bridge'
|
|
178922
179414
|
};
|
|
178923
179415
|
|
|
178924
179416
|
|
|
@@ -183810,14 +184302,23 @@ exports.evmCommonCrossChainAbi = [
|
|
|
183810
184302
|
},
|
|
183811
184303
|
{
|
|
183812
184304
|
components: [
|
|
183813
|
-
{
|
|
184305
|
+
{
|
|
184306
|
+
internalType: 'address',
|
|
184307
|
+
name: 'receiver',
|
|
184308
|
+
type: 'address'
|
|
184309
|
+
},
|
|
184310
|
+
{
|
|
184311
|
+
internalType: 'bytes',
|
|
184312
|
+
name: 'data',
|
|
184313
|
+
type: 'bytes'
|
|
184314
|
+
}
|
|
183814
184315
|
],
|
|
183815
|
-
internalType: 'struct
|
|
183816
|
-
name: '
|
|
184316
|
+
internalType: 'struct TransferAndCallData',
|
|
184317
|
+
name: '_transferAndCallData',
|
|
183817
184318
|
type: 'tuple'
|
|
183818
184319
|
}
|
|
183819
184320
|
],
|
|
183820
|
-
name: '
|
|
184321
|
+
name: 'startBridgeTokensViaTransferAndCall',
|
|
183821
184322
|
outputs: [],
|
|
183822
184323
|
stateMutability: 'payable',
|
|
183823
184324
|
type: 'function'
|
|
@@ -183859,14 +184360,23 @@ exports.evmCommonCrossChainAbi = [
|
|
|
183859
184360
|
},
|
|
183860
184361
|
{
|
|
183861
184362
|
components: [
|
|
183862
|
-
{
|
|
184363
|
+
{
|
|
184364
|
+
internalType: 'address',
|
|
184365
|
+
name: 'receiver',
|
|
184366
|
+
type: 'address'
|
|
184367
|
+
},
|
|
184368
|
+
{
|
|
184369
|
+
internalType: 'bytes',
|
|
184370
|
+
name: 'data',
|
|
184371
|
+
type: 'bytes'
|
|
184372
|
+
}
|
|
183863
184373
|
],
|
|
183864
|
-
internalType: 'struct
|
|
183865
|
-
name: '
|
|
184374
|
+
internalType: 'struct TransferAndCallData',
|
|
184375
|
+
name: '_transferAndCallData',
|
|
183866
184376
|
type: 'tuple'
|
|
183867
184377
|
}
|
|
183868
184378
|
],
|
|
183869
|
-
name: '
|
|
184379
|
+
name: 'swapAndStartBridgeTokensViaTransferAndCall',
|
|
183870
184380
|
outputs: [],
|
|
183871
184381
|
stateMutability: 'payable',
|
|
183872
184382
|
type: 'function'
|
|
@@ -183979,6 +184489,10 @@ class EvmCrossChainTrade extends cross_chain_trade_1.CrossChainTrade {
|
|
|
183979
184489
|
};
|
|
183980
184490
|
await this.approve(approveOptions, false);
|
|
183981
184491
|
}
|
|
184492
|
+
/**
|
|
184493
|
+
*
|
|
184494
|
+
* @returns txHash(srcTxHash) | never
|
|
184495
|
+
*/
|
|
183982
184496
|
async swap(options = {}) {
|
|
183983
184497
|
if (!this.isProxyTrade) {
|
|
183984
184498
|
return this.swapDirect(options);
|
|
@@ -184134,18 +184648,23 @@ exports.DEFAULT_BRIDGE_TYPE = {
|
|
|
184134
184648
|
CELERIM: 'celerim',
|
|
184135
184649
|
HOP: 'hop',
|
|
184136
184650
|
HYPHEN: 'hyphen',
|
|
184137
|
-
|
|
184651
|
+
IBC: 'ibc',
|
|
184138
184652
|
MAKERS_WORMHOLE: 'maker',
|
|
184653
|
+
MAYA_PROTOCOL: 'mayaprotocol',
|
|
184139
184654
|
MULTICHAIN: 'multichain',
|
|
184655
|
+
OPEN_OCEAN: 'openocean',
|
|
184140
184656
|
OPTIMISM_GATEWAY: 'optimism',
|
|
184657
|
+
ORBITER_BRIDGE: 'orbiter',
|
|
184141
184658
|
OSMOSIS_BRIDGE: 'osmosis',
|
|
184142
184659
|
POLYGON: 'polygon',
|
|
184660
|
+
RAINBOW: 'rainbow',
|
|
184143
184661
|
REFUEL: 'refuel',
|
|
184144
184662
|
SATELLITE: 'satellite',
|
|
184145
184663
|
STARGATE: 'stargate',
|
|
184146
184664
|
SYMBIOSIS: 'symbiosis',
|
|
184147
184665
|
SYNAPSE: 'synapse',
|
|
184148
184666
|
THORCHAIN: 'thorchain',
|
|
184667
|
+
VOYAGER: 'voyager',
|
|
184149
184668
|
WORMHOLE: 'wormhole',
|
|
184150
184669
|
YPOOL: 'ypool'
|
|
184151
184670
|
};
|
|
@@ -186103,6 +186622,2824 @@ exports.UNIQ_LIFI_BRIDGE_TYPES = {
|
|
|
186103
186622
|
};
|
|
186104
186623
|
|
|
186105
186624
|
|
|
186625
|
+
/***/ }),
|
|
186626
|
+
|
|
186627
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/erc-677-abi.ts":
|
|
186628
|
+
/*!************************************************************************************************************!*\
|
|
186629
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/erc-677-abi.ts ***!
|
|
186630
|
+
\************************************************************************************************************/
|
|
186631
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
186632
|
+
|
|
186633
|
+
"use strict";
|
|
186634
|
+
|
|
186635
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
186636
|
+
exports.erc677Abi = void 0;
|
|
186637
|
+
exports.erc677Abi = [
|
|
186638
|
+
{
|
|
186639
|
+
inputs: [
|
|
186640
|
+
{ internalType: 'address', name: 'to', type: 'address' },
|
|
186641
|
+
{ internalType: 'uint256', name: 'amount', type: 'uint256' },
|
|
186642
|
+
{ internalType: 'bytes', name: '', type: 'bytes' }
|
|
186643
|
+
],
|
|
186644
|
+
name: 'transferAndCall',
|
|
186645
|
+
outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
|
|
186646
|
+
stateMutability: 'nonpayable',
|
|
186647
|
+
type: 'function'
|
|
186648
|
+
}
|
|
186649
|
+
];
|
|
186650
|
+
|
|
186651
|
+
|
|
186652
|
+
/***/ }),
|
|
186653
|
+
|
|
186654
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/fee-manager-abi.ts":
|
|
186655
|
+
/*!****************************************************************************************************************!*\
|
|
186656
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/fee-manager-abi.ts ***!
|
|
186657
|
+
\****************************************************************************************************************/
|
|
186658
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
186659
|
+
|
|
186660
|
+
"use strict";
|
|
186661
|
+
|
|
186662
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
186663
|
+
exports.feeManagerAbi = void 0;
|
|
186664
|
+
exports.feeManagerAbi = [
|
|
186665
|
+
{
|
|
186666
|
+
inputs: [],
|
|
186667
|
+
name: 'FOREIGN_TO_HOME_FEE',
|
|
186668
|
+
outputs: [
|
|
186669
|
+
{
|
|
186670
|
+
internalType: 'bytes32',
|
|
186671
|
+
name: '',
|
|
186672
|
+
type: 'bytes32'
|
|
186673
|
+
}
|
|
186674
|
+
],
|
|
186675
|
+
stateMutability: 'view',
|
|
186676
|
+
type: 'function'
|
|
186677
|
+
},
|
|
186678
|
+
{
|
|
186679
|
+
inputs: [],
|
|
186680
|
+
name: 'HOME_TO_FOREIGN_FEE',
|
|
186681
|
+
outputs: [
|
|
186682
|
+
{
|
|
186683
|
+
internalType: 'bytes32',
|
|
186684
|
+
name: '',
|
|
186685
|
+
type: 'bytes32'
|
|
186686
|
+
}
|
|
186687
|
+
],
|
|
186688
|
+
stateMutability: 'view',
|
|
186689
|
+
type: 'function'
|
|
186690
|
+
},
|
|
186691
|
+
{
|
|
186692
|
+
inputs: [
|
|
186693
|
+
{
|
|
186694
|
+
internalType: 'bytes32',
|
|
186695
|
+
name: '_feeType',
|
|
186696
|
+
type: 'bytes32'
|
|
186697
|
+
},
|
|
186698
|
+
{
|
|
186699
|
+
internalType: 'address',
|
|
186700
|
+
name: '_token',
|
|
186701
|
+
type: 'address'
|
|
186702
|
+
},
|
|
186703
|
+
{
|
|
186704
|
+
internalType: 'uint256',
|
|
186705
|
+
name: '_value',
|
|
186706
|
+
type: 'uint256'
|
|
186707
|
+
}
|
|
186708
|
+
],
|
|
186709
|
+
name: 'calculateFee',
|
|
186710
|
+
outputs: [
|
|
186711
|
+
{
|
|
186712
|
+
internalType: 'uint256',
|
|
186713
|
+
name: '',
|
|
186714
|
+
type: 'uint256'
|
|
186715
|
+
}
|
|
186716
|
+
],
|
|
186717
|
+
stateMutability: 'view',
|
|
186718
|
+
type: 'function'
|
|
186719
|
+
}
|
|
186720
|
+
];
|
|
186721
|
+
|
|
186722
|
+
|
|
186723
|
+
/***/ }),
|
|
186724
|
+
|
|
186725
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/foreign-bridge-abi.ts":
|
|
186726
|
+
/*!*******************************************************************************************************************!*\
|
|
186727
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/foreign-bridge-abi.ts ***!
|
|
186728
|
+
\*******************************************************************************************************************/
|
|
186729
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
186730
|
+
|
|
186731
|
+
"use strict";
|
|
186732
|
+
|
|
186733
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
186734
|
+
exports.foreignBridgeAbi = void 0;
|
|
186735
|
+
exports.foreignBridgeAbi = [
|
|
186736
|
+
{
|
|
186737
|
+
inputs: [{ internalType: 'address', name: '_nativeToken', type: 'address' }],
|
|
186738
|
+
name: 'bridgedTokenAddress',
|
|
186739
|
+
outputs: [{ internalType: 'address', name: '', type: 'address' }],
|
|
186740
|
+
stateMutability: 'view',
|
|
186741
|
+
type: 'function'
|
|
186742
|
+
},
|
|
186743
|
+
{
|
|
186744
|
+
inputs: [{ internalType: 'address', name: '_token', type: 'address' }],
|
|
186745
|
+
name: 'isRegisteredAsNativeToken',
|
|
186746
|
+
outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
|
|
186747
|
+
stateMutability: 'view',
|
|
186748
|
+
type: 'function'
|
|
186749
|
+
},
|
|
186750
|
+
{
|
|
186751
|
+
inputs: [{ internalType: 'address', name: '_token', type: 'address' }],
|
|
186752
|
+
name: 'isTokenRegistered',
|
|
186753
|
+
outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
|
|
186754
|
+
stateMutability: 'view',
|
|
186755
|
+
type: 'function'
|
|
186756
|
+
},
|
|
186757
|
+
{
|
|
186758
|
+
inputs: [{ internalType: 'address', name: '_token', type: 'address' }],
|
|
186759
|
+
name: 'minPerTx',
|
|
186760
|
+
outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
|
|
186761
|
+
stateMutability: 'view',
|
|
186762
|
+
type: 'function'
|
|
186763
|
+
},
|
|
186764
|
+
{
|
|
186765
|
+
inputs: [{ internalType: 'address', name: '_bridgedToken', type: 'address' }],
|
|
186766
|
+
name: 'nativeTokenAddress',
|
|
186767
|
+
outputs: [{ internalType: 'address', name: '', type: 'address' }],
|
|
186768
|
+
stateMutability: 'view',
|
|
186769
|
+
type: 'function'
|
|
186770
|
+
},
|
|
186771
|
+
{
|
|
186772
|
+
inputs: [
|
|
186773
|
+
{ internalType: 'contract IERC677', name: 'token', type: 'address' },
|
|
186774
|
+
{ internalType: 'address', name: '_receiver', type: 'address' },
|
|
186775
|
+
{ internalType: 'uint256', name: '_value', type: 'uint256' }
|
|
186776
|
+
],
|
|
186777
|
+
name: 'relayTokens',
|
|
186778
|
+
outputs: [],
|
|
186779
|
+
stateMutability: 'nonpayable',
|
|
186780
|
+
type: 'function'
|
|
186781
|
+
},
|
|
186782
|
+
{
|
|
186783
|
+
inputs: [
|
|
186784
|
+
{ internalType: 'address', name: '_token', type: 'address' },
|
|
186785
|
+
{ internalType: 'uint256', name: '_amount', type: 'uint256' }
|
|
186786
|
+
],
|
|
186787
|
+
name: 'withinExecutionLimit',
|
|
186788
|
+
outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
|
|
186789
|
+
stateMutability: 'view',
|
|
186790
|
+
type: 'function'
|
|
186791
|
+
},
|
|
186792
|
+
{
|
|
186793
|
+
inputs: [
|
|
186794
|
+
{ internalType: 'address', name: '_token', type: 'address' },
|
|
186795
|
+
{ internalType: 'uint256', name: '_amount', type: 'uint256' }
|
|
186796
|
+
],
|
|
186797
|
+
name: 'withinLimit',
|
|
186798
|
+
outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
|
|
186799
|
+
stateMutability: 'view',
|
|
186800
|
+
type: 'function'
|
|
186801
|
+
}
|
|
186802
|
+
];
|
|
186803
|
+
|
|
186804
|
+
|
|
186805
|
+
/***/ }),
|
|
186806
|
+
|
|
186807
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/home-bridge-abi.ts":
|
|
186808
|
+
/*!****************************************************************************************************************!*\
|
|
186809
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/home-bridge-abi.ts ***!
|
|
186810
|
+
\****************************************************************************************************************/
|
|
186811
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
186812
|
+
|
|
186813
|
+
"use strict";
|
|
186814
|
+
|
|
186815
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
186816
|
+
exports.homeBridgeAbi = void 0;
|
|
186817
|
+
exports.homeBridgeAbi = [
|
|
186818
|
+
{
|
|
186819
|
+
inputs: [
|
|
186820
|
+
{
|
|
186821
|
+
internalType: 'string',
|
|
186822
|
+
name: '_suffix',
|
|
186823
|
+
type: 'string'
|
|
186824
|
+
}
|
|
186825
|
+
],
|
|
186826
|
+
type: 'constructor'
|
|
186827
|
+
},
|
|
186828
|
+
{
|
|
186829
|
+
inputs: [],
|
|
186830
|
+
name: 'bridgeContract',
|
|
186831
|
+
outputs: [
|
|
186832
|
+
{
|
|
186833
|
+
internalType: 'contract IAMB',
|
|
186834
|
+
name: '',
|
|
186835
|
+
type: 'address'
|
|
186836
|
+
}
|
|
186837
|
+
],
|
|
186838
|
+
stateMutability: 'view',
|
|
186839
|
+
type: 'function'
|
|
186840
|
+
},
|
|
186841
|
+
{
|
|
186842
|
+
inputs: [
|
|
186843
|
+
{
|
|
186844
|
+
internalType: 'address',
|
|
186845
|
+
name: '_nativeToken',
|
|
186846
|
+
type: 'address'
|
|
186847
|
+
}
|
|
186848
|
+
],
|
|
186849
|
+
name: 'bridgedTokenAddress',
|
|
186850
|
+
outputs: [
|
|
186851
|
+
{
|
|
186852
|
+
internalType: 'address',
|
|
186853
|
+
name: '',
|
|
186854
|
+
type: 'address'
|
|
186855
|
+
}
|
|
186856
|
+
],
|
|
186857
|
+
stateMutability: 'view',
|
|
186858
|
+
type: 'function'
|
|
186859
|
+
},
|
|
186860
|
+
{
|
|
186861
|
+
inputs: [
|
|
186862
|
+
{
|
|
186863
|
+
internalType: 'address',
|
|
186864
|
+
name: '_token',
|
|
186865
|
+
type: 'address'
|
|
186866
|
+
},
|
|
186867
|
+
{
|
|
186868
|
+
internalType: 'address',
|
|
186869
|
+
name: '_to',
|
|
186870
|
+
type: 'address'
|
|
186871
|
+
}
|
|
186872
|
+
],
|
|
186873
|
+
name: 'claimTokens',
|
|
186874
|
+
outputs: [],
|
|
186875
|
+
stateMutability: 'nonpayable',
|
|
186876
|
+
type: 'function'
|
|
186877
|
+
},
|
|
186878
|
+
{
|
|
186879
|
+
inputs: [
|
|
186880
|
+
{
|
|
186881
|
+
internalType: 'address',
|
|
186882
|
+
name: '_bridgedToken',
|
|
186883
|
+
type: 'address'
|
|
186884
|
+
},
|
|
186885
|
+
{
|
|
186886
|
+
internalType: 'address',
|
|
186887
|
+
name: '_token',
|
|
186888
|
+
type: 'address'
|
|
186889
|
+
},
|
|
186890
|
+
{
|
|
186891
|
+
internalType: 'address',
|
|
186892
|
+
name: '_to',
|
|
186893
|
+
type: 'address'
|
|
186894
|
+
}
|
|
186895
|
+
],
|
|
186896
|
+
name: 'claimTokensFromTokenContract',
|
|
186897
|
+
outputs: [],
|
|
186898
|
+
stateMutability: 'nonpayable',
|
|
186899
|
+
type: 'function'
|
|
186900
|
+
},
|
|
186901
|
+
{
|
|
186902
|
+
inputs: [
|
|
186903
|
+
{
|
|
186904
|
+
internalType: 'address',
|
|
186905
|
+
name: '_token',
|
|
186906
|
+
type: 'address'
|
|
186907
|
+
}
|
|
186908
|
+
],
|
|
186909
|
+
name: 'dailyLimit',
|
|
186910
|
+
outputs: [
|
|
186911
|
+
{
|
|
186912
|
+
internalType: 'uint256',
|
|
186913
|
+
name: '',
|
|
186914
|
+
type: 'uint256'
|
|
186915
|
+
}
|
|
186916
|
+
],
|
|
186917
|
+
stateMutability: 'view',
|
|
186918
|
+
type: 'function'
|
|
186919
|
+
},
|
|
186920
|
+
{
|
|
186921
|
+
inputs: [
|
|
186922
|
+
{
|
|
186923
|
+
internalType: 'address',
|
|
186924
|
+
name: '_token',
|
|
186925
|
+
type: 'address'
|
|
186926
|
+
},
|
|
186927
|
+
{
|
|
186928
|
+
internalType: 'string',
|
|
186929
|
+
name: '_name',
|
|
186930
|
+
type: 'string'
|
|
186931
|
+
},
|
|
186932
|
+
{
|
|
186933
|
+
internalType: 'string',
|
|
186934
|
+
name: '_symbol',
|
|
186935
|
+
type: 'string'
|
|
186936
|
+
},
|
|
186937
|
+
{
|
|
186938
|
+
internalType: 'uint8',
|
|
186939
|
+
name: '_decimals',
|
|
186940
|
+
type: 'uint8'
|
|
186941
|
+
},
|
|
186942
|
+
{
|
|
186943
|
+
internalType: 'address',
|
|
186944
|
+
name: '_recipient',
|
|
186945
|
+
type: 'address'
|
|
186946
|
+
},
|
|
186947
|
+
{
|
|
186948
|
+
internalType: 'uint256',
|
|
186949
|
+
name: '_value',
|
|
186950
|
+
type: 'uint256'
|
|
186951
|
+
}
|
|
186952
|
+
],
|
|
186953
|
+
name: 'deployAndHandleBridgedTokens',
|
|
186954
|
+
outputs: [],
|
|
186955
|
+
stateMutability: 'nonpayable',
|
|
186956
|
+
type: 'function'
|
|
186957
|
+
},
|
|
186958
|
+
{
|
|
186959
|
+
inputs: [
|
|
186960
|
+
{
|
|
186961
|
+
internalType: 'address',
|
|
186962
|
+
name: '_token',
|
|
186963
|
+
type: 'address'
|
|
186964
|
+
},
|
|
186965
|
+
{
|
|
186966
|
+
internalType: 'string',
|
|
186967
|
+
name: '_name',
|
|
186968
|
+
type: 'string'
|
|
186969
|
+
},
|
|
186970
|
+
{
|
|
186971
|
+
internalType: 'string',
|
|
186972
|
+
name: '_symbol',
|
|
186973
|
+
type: 'string'
|
|
186974
|
+
},
|
|
186975
|
+
{
|
|
186976
|
+
internalType: 'uint8',
|
|
186977
|
+
name: '_decimals',
|
|
186978
|
+
type: 'uint8'
|
|
186979
|
+
},
|
|
186980
|
+
{
|
|
186981
|
+
internalType: 'address',
|
|
186982
|
+
name: '_recipient',
|
|
186983
|
+
type: 'address'
|
|
186984
|
+
},
|
|
186985
|
+
{
|
|
186986
|
+
internalType: 'uint256',
|
|
186987
|
+
name: '_value',
|
|
186988
|
+
type: 'uint256'
|
|
186989
|
+
},
|
|
186990
|
+
{
|
|
186991
|
+
internalType: 'bytes',
|
|
186992
|
+
name: '_data',
|
|
186993
|
+
type: 'bytes'
|
|
186994
|
+
}
|
|
186995
|
+
],
|
|
186996
|
+
name: 'deployAndHandleBridgedTokensAndCall',
|
|
186997
|
+
outputs: [],
|
|
186998
|
+
stateMutability: 'nonpayable',
|
|
186999
|
+
type: 'function'
|
|
187000
|
+
},
|
|
187001
|
+
{
|
|
187002
|
+
inputs: [
|
|
187003
|
+
{
|
|
187004
|
+
internalType: 'address',
|
|
187005
|
+
name: '_token',
|
|
187006
|
+
type: 'address'
|
|
187007
|
+
}
|
|
187008
|
+
],
|
|
187009
|
+
name: 'executionDailyLimit',
|
|
187010
|
+
outputs: [
|
|
187011
|
+
{
|
|
187012
|
+
internalType: 'uint256',
|
|
187013
|
+
name: '',
|
|
187014
|
+
type: 'uint256'
|
|
187015
|
+
}
|
|
187016
|
+
],
|
|
187017
|
+
stateMutability: 'view',
|
|
187018
|
+
type: 'function'
|
|
187019
|
+
},
|
|
187020
|
+
{
|
|
187021
|
+
inputs: [
|
|
187022
|
+
{
|
|
187023
|
+
internalType: 'address',
|
|
187024
|
+
name: '_token',
|
|
187025
|
+
type: 'address'
|
|
187026
|
+
}
|
|
187027
|
+
],
|
|
187028
|
+
name: 'executionMaxPerTx',
|
|
187029
|
+
outputs: [
|
|
187030
|
+
{
|
|
187031
|
+
internalType: 'uint256',
|
|
187032
|
+
name: '',
|
|
187033
|
+
type: 'uint256'
|
|
187034
|
+
}
|
|
187035
|
+
],
|
|
187036
|
+
stateMutability: 'view',
|
|
187037
|
+
type: 'function'
|
|
187038
|
+
},
|
|
187039
|
+
{
|
|
187040
|
+
inputs: [],
|
|
187041
|
+
name: 'feeManager',
|
|
187042
|
+
outputs: [
|
|
187043
|
+
{
|
|
187044
|
+
internalType: 'contract OmnibridgeFeeManager',
|
|
187045
|
+
name: '',
|
|
187046
|
+
type: 'address'
|
|
187047
|
+
}
|
|
187048
|
+
],
|
|
187049
|
+
stateMutability: 'view',
|
|
187050
|
+
type: 'function'
|
|
187051
|
+
},
|
|
187052
|
+
{
|
|
187053
|
+
inputs: [
|
|
187054
|
+
{
|
|
187055
|
+
internalType: 'bytes32',
|
|
187056
|
+
name: '_messageId',
|
|
187057
|
+
type: 'bytes32'
|
|
187058
|
+
}
|
|
187059
|
+
],
|
|
187060
|
+
name: 'fixFailedMessage',
|
|
187061
|
+
outputs: [],
|
|
187062
|
+
stateMutability: 'nonpayable',
|
|
187063
|
+
type: 'function'
|
|
187064
|
+
},
|
|
187065
|
+
{
|
|
187066
|
+
inputs: [
|
|
187067
|
+
{
|
|
187068
|
+
internalType: 'address',
|
|
187069
|
+
name: '_token',
|
|
187070
|
+
type: 'address'
|
|
187071
|
+
},
|
|
187072
|
+
{
|
|
187073
|
+
internalType: 'address',
|
|
187074
|
+
name: '_receiver',
|
|
187075
|
+
type: 'address'
|
|
187076
|
+
}
|
|
187077
|
+
],
|
|
187078
|
+
name: 'fixMediatorBalance',
|
|
187079
|
+
outputs: [],
|
|
187080
|
+
stateMutability: 'nonpayable',
|
|
187081
|
+
type: 'function'
|
|
187082
|
+
},
|
|
187083
|
+
{
|
|
187084
|
+
inputs: [
|
|
187085
|
+
{
|
|
187086
|
+
internalType: 'address',
|
|
187087
|
+
name: '_homeToken',
|
|
187088
|
+
type: 'address'
|
|
187089
|
+
}
|
|
187090
|
+
],
|
|
187091
|
+
name: 'foreignTokenAddress',
|
|
187092
|
+
outputs: [
|
|
187093
|
+
{
|
|
187094
|
+
internalType: 'address',
|
|
187095
|
+
name: '',
|
|
187096
|
+
type: 'address'
|
|
187097
|
+
}
|
|
187098
|
+
],
|
|
187099
|
+
stateMutability: 'view',
|
|
187100
|
+
type: 'function'
|
|
187101
|
+
},
|
|
187102
|
+
{
|
|
187103
|
+
inputs: [],
|
|
187104
|
+
name: 'forwardingRulesManager',
|
|
187105
|
+
outputs: [
|
|
187106
|
+
{
|
|
187107
|
+
internalType: 'contract MultiTokenForwardingRulesManager',
|
|
187108
|
+
name: '',
|
|
187109
|
+
type: 'address'
|
|
187110
|
+
}
|
|
187111
|
+
],
|
|
187112
|
+
stateMutability: 'view',
|
|
187113
|
+
type: 'function'
|
|
187114
|
+
},
|
|
187115
|
+
{
|
|
187116
|
+
inputs: [],
|
|
187117
|
+
name: 'gasLimitManager',
|
|
187118
|
+
outputs: [
|
|
187119
|
+
{
|
|
187120
|
+
internalType: 'contract SelectorTokenGasLimitManager',
|
|
187121
|
+
name: '',
|
|
187122
|
+
type: 'address'
|
|
187123
|
+
}
|
|
187124
|
+
],
|
|
187125
|
+
stateMutability: 'view',
|
|
187126
|
+
type: 'function'
|
|
187127
|
+
},
|
|
187128
|
+
{
|
|
187129
|
+
inputs: [],
|
|
187130
|
+
name: 'getBridgeInterfacesVersion',
|
|
187131
|
+
outputs: [
|
|
187132
|
+
{
|
|
187133
|
+
internalType: 'uint64',
|
|
187134
|
+
name: 'major',
|
|
187135
|
+
type: 'uint64'
|
|
187136
|
+
},
|
|
187137
|
+
{
|
|
187138
|
+
internalType: 'uint64',
|
|
187139
|
+
name: 'minor',
|
|
187140
|
+
type: 'uint64'
|
|
187141
|
+
},
|
|
187142
|
+
{
|
|
187143
|
+
internalType: 'uint64',
|
|
187144
|
+
name: 'patch',
|
|
187145
|
+
type: 'uint64'
|
|
187146
|
+
}
|
|
187147
|
+
],
|
|
187148
|
+
stateMutability: 'pure',
|
|
187149
|
+
type: 'function'
|
|
187150
|
+
},
|
|
187151
|
+
{
|
|
187152
|
+
inputs: [],
|
|
187153
|
+
name: 'getBridgeMode',
|
|
187154
|
+
outputs: [
|
|
187155
|
+
{
|
|
187156
|
+
internalType: 'bytes4',
|
|
187157
|
+
name: '_data',
|
|
187158
|
+
type: 'bytes4'
|
|
187159
|
+
}
|
|
187160
|
+
],
|
|
187161
|
+
stateMutability: 'pure',
|
|
187162
|
+
type: 'function'
|
|
187163
|
+
},
|
|
187164
|
+
{
|
|
187165
|
+
inputs: [],
|
|
187166
|
+
name: 'getCurrentDay',
|
|
187167
|
+
outputs: [
|
|
187168
|
+
{
|
|
187169
|
+
internalType: 'uint256',
|
|
187170
|
+
name: '',
|
|
187171
|
+
type: 'uint256'
|
|
187172
|
+
}
|
|
187173
|
+
],
|
|
187174
|
+
stateMutability: 'view',
|
|
187175
|
+
type: 'function'
|
|
187176
|
+
},
|
|
187177
|
+
{
|
|
187178
|
+
inputs: [
|
|
187179
|
+
{
|
|
187180
|
+
internalType: 'address',
|
|
187181
|
+
name: '_token',
|
|
187182
|
+
type: 'address'
|
|
187183
|
+
},
|
|
187184
|
+
{
|
|
187185
|
+
internalType: 'address',
|
|
187186
|
+
name: '_recipient',
|
|
187187
|
+
type: 'address'
|
|
187188
|
+
},
|
|
187189
|
+
{
|
|
187190
|
+
internalType: 'uint256',
|
|
187191
|
+
name: '_value',
|
|
187192
|
+
type: 'uint256'
|
|
187193
|
+
}
|
|
187194
|
+
],
|
|
187195
|
+
name: 'handleBridgedTokens',
|
|
187196
|
+
outputs: [],
|
|
187197
|
+
stateMutability: 'nonpayable',
|
|
187198
|
+
type: 'function'
|
|
187199
|
+
},
|
|
187200
|
+
{
|
|
187201
|
+
inputs: [
|
|
187202
|
+
{
|
|
187203
|
+
internalType: 'address',
|
|
187204
|
+
name: '_token',
|
|
187205
|
+
type: 'address'
|
|
187206
|
+
},
|
|
187207
|
+
{
|
|
187208
|
+
internalType: 'address',
|
|
187209
|
+
name: '_recipient',
|
|
187210
|
+
type: 'address'
|
|
187211
|
+
},
|
|
187212
|
+
{
|
|
187213
|
+
internalType: 'uint256',
|
|
187214
|
+
name: '_value',
|
|
187215
|
+
type: 'uint256'
|
|
187216
|
+
},
|
|
187217
|
+
{
|
|
187218
|
+
internalType: 'bytes',
|
|
187219
|
+
name: '_data',
|
|
187220
|
+
type: 'bytes'
|
|
187221
|
+
}
|
|
187222
|
+
],
|
|
187223
|
+
name: 'handleBridgedTokensAndCall',
|
|
187224
|
+
outputs: [],
|
|
187225
|
+
stateMutability: 'nonpayable',
|
|
187226
|
+
type: 'function'
|
|
187227
|
+
},
|
|
187228
|
+
{
|
|
187229
|
+
inputs: [
|
|
187230
|
+
{
|
|
187231
|
+
internalType: 'address',
|
|
187232
|
+
name: '_token',
|
|
187233
|
+
type: 'address'
|
|
187234
|
+
},
|
|
187235
|
+
{
|
|
187236
|
+
internalType: 'address',
|
|
187237
|
+
name: '_recipient',
|
|
187238
|
+
type: 'address'
|
|
187239
|
+
},
|
|
187240
|
+
{
|
|
187241
|
+
internalType: 'uint256',
|
|
187242
|
+
name: '_value',
|
|
187243
|
+
type: 'uint256'
|
|
187244
|
+
}
|
|
187245
|
+
],
|
|
187246
|
+
name: 'handleNativeTokens',
|
|
187247
|
+
outputs: [],
|
|
187248
|
+
stateMutability: 'nonpayable',
|
|
187249
|
+
type: 'function'
|
|
187250
|
+
},
|
|
187251
|
+
{
|
|
187252
|
+
inputs: [
|
|
187253
|
+
{
|
|
187254
|
+
internalType: 'address',
|
|
187255
|
+
name: '_token',
|
|
187256
|
+
type: 'address'
|
|
187257
|
+
},
|
|
187258
|
+
{
|
|
187259
|
+
internalType: 'address',
|
|
187260
|
+
name: '_recipient',
|
|
187261
|
+
type: 'address'
|
|
187262
|
+
},
|
|
187263
|
+
{
|
|
187264
|
+
internalType: 'uint256',
|
|
187265
|
+
name: '_value',
|
|
187266
|
+
type: 'uint256'
|
|
187267
|
+
},
|
|
187268
|
+
{
|
|
187269
|
+
internalType: 'bytes',
|
|
187270
|
+
name: '_data',
|
|
187271
|
+
type: 'bytes'
|
|
187272
|
+
}
|
|
187273
|
+
],
|
|
187274
|
+
name: 'handleNativeTokensAndCall',
|
|
187275
|
+
outputs: [],
|
|
187276
|
+
stateMutability: 'nonpayable',
|
|
187277
|
+
type: 'function'
|
|
187278
|
+
},
|
|
187279
|
+
{
|
|
187280
|
+
inputs: [
|
|
187281
|
+
{
|
|
187282
|
+
internalType: 'address',
|
|
187283
|
+
name: '_foreignToken',
|
|
187284
|
+
type: 'address'
|
|
187285
|
+
}
|
|
187286
|
+
],
|
|
187287
|
+
name: 'homeTokenAddress',
|
|
187288
|
+
outputs: [
|
|
187289
|
+
{
|
|
187290
|
+
internalType: 'address',
|
|
187291
|
+
name: '',
|
|
187292
|
+
type: 'address'
|
|
187293
|
+
}
|
|
187294
|
+
],
|
|
187295
|
+
stateMutability: 'view',
|
|
187296
|
+
type: 'function'
|
|
187297
|
+
},
|
|
187298
|
+
{
|
|
187299
|
+
inputs: [
|
|
187300
|
+
{
|
|
187301
|
+
internalType: 'address',
|
|
187302
|
+
name: '_bridgeContract',
|
|
187303
|
+
type: 'address'
|
|
187304
|
+
},
|
|
187305
|
+
{
|
|
187306
|
+
internalType: 'address',
|
|
187307
|
+
name: '_mediatorContract',
|
|
187308
|
+
type: 'address'
|
|
187309
|
+
},
|
|
187310
|
+
{
|
|
187311
|
+
internalType: 'uint256[3]',
|
|
187312
|
+
name: '_dailyLimitMaxPerTxMinPerTxArray',
|
|
187313
|
+
type: 'uint256[3]'
|
|
187314
|
+
},
|
|
187315
|
+
{
|
|
187316
|
+
internalType: 'uint256[2]',
|
|
187317
|
+
name: '_executionDailyLimitExecutionMaxPerTxArray',
|
|
187318
|
+
type: 'uint256[2]'
|
|
187319
|
+
},
|
|
187320
|
+
{
|
|
187321
|
+
internalType: 'address',
|
|
187322
|
+
name: '_gasLimitManager',
|
|
187323
|
+
type: 'address'
|
|
187324
|
+
},
|
|
187325
|
+
{
|
|
187326
|
+
internalType: 'address',
|
|
187327
|
+
name: '_owner',
|
|
187328
|
+
type: 'address'
|
|
187329
|
+
},
|
|
187330
|
+
{
|
|
187331
|
+
internalType: 'address',
|
|
187332
|
+
name: '_tokenFactory',
|
|
187333
|
+
type: 'address'
|
|
187334
|
+
},
|
|
187335
|
+
{
|
|
187336
|
+
internalType: 'address',
|
|
187337
|
+
name: '_feeManager',
|
|
187338
|
+
type: 'address'
|
|
187339
|
+
},
|
|
187340
|
+
{
|
|
187341
|
+
internalType: 'address',
|
|
187342
|
+
name: '_forwardingRulesManager',
|
|
187343
|
+
type: 'address'
|
|
187344
|
+
}
|
|
187345
|
+
],
|
|
187346
|
+
name: 'initialize',
|
|
187347
|
+
outputs: [
|
|
187348
|
+
{
|
|
187349
|
+
internalType: 'bool',
|
|
187350
|
+
name: '',
|
|
187351
|
+
type: 'bool'
|
|
187352
|
+
}
|
|
187353
|
+
],
|
|
187354
|
+
stateMutability: 'nonpayable',
|
|
187355
|
+
type: 'function'
|
|
187356
|
+
},
|
|
187357
|
+
{
|
|
187358
|
+
inputs: [
|
|
187359
|
+
{
|
|
187360
|
+
internalType: 'address',
|
|
187361
|
+
name: '_token',
|
|
187362
|
+
type: 'address'
|
|
187363
|
+
}
|
|
187364
|
+
],
|
|
187365
|
+
name: 'isBridgedTokenDeployAcknowledged',
|
|
187366
|
+
outputs: [
|
|
187367
|
+
{
|
|
187368
|
+
internalType: 'bool',
|
|
187369
|
+
name: '',
|
|
187370
|
+
type: 'bool'
|
|
187371
|
+
}
|
|
187372
|
+
],
|
|
187373
|
+
stateMutability: 'view',
|
|
187374
|
+
type: 'function'
|
|
187375
|
+
},
|
|
187376
|
+
{
|
|
187377
|
+
inputs: [],
|
|
187378
|
+
name: 'isInitialized',
|
|
187379
|
+
outputs: [
|
|
187380
|
+
{
|
|
187381
|
+
internalType: 'bool',
|
|
187382
|
+
name: '',
|
|
187383
|
+
type: 'bool'
|
|
187384
|
+
}
|
|
187385
|
+
],
|
|
187386
|
+
stateMutability: 'view',
|
|
187387
|
+
type: 'function'
|
|
187388
|
+
},
|
|
187389
|
+
{
|
|
187390
|
+
inputs: [
|
|
187391
|
+
{
|
|
187392
|
+
internalType: 'address',
|
|
187393
|
+
name: '_token',
|
|
187394
|
+
type: 'address'
|
|
187395
|
+
}
|
|
187396
|
+
],
|
|
187397
|
+
name: 'isRegisteredAsNativeToken',
|
|
187398
|
+
outputs: [
|
|
187399
|
+
{
|
|
187400
|
+
internalType: 'bool',
|
|
187401
|
+
name: '',
|
|
187402
|
+
type: 'bool'
|
|
187403
|
+
}
|
|
187404
|
+
],
|
|
187405
|
+
stateMutability: 'view',
|
|
187406
|
+
type: 'function'
|
|
187407
|
+
},
|
|
187408
|
+
{
|
|
187409
|
+
inputs: [
|
|
187410
|
+
{
|
|
187411
|
+
internalType: 'address',
|
|
187412
|
+
name: '_token',
|
|
187413
|
+
type: 'address'
|
|
187414
|
+
}
|
|
187415
|
+
],
|
|
187416
|
+
name: 'isTokenRegistered',
|
|
187417
|
+
outputs: [
|
|
187418
|
+
{
|
|
187419
|
+
internalType: 'bool',
|
|
187420
|
+
name: '',
|
|
187421
|
+
type: 'bool'
|
|
187422
|
+
}
|
|
187423
|
+
],
|
|
187424
|
+
stateMutability: 'view',
|
|
187425
|
+
type: 'function'
|
|
187426
|
+
},
|
|
187427
|
+
{
|
|
187428
|
+
inputs: [
|
|
187429
|
+
{
|
|
187430
|
+
internalType: 'address',
|
|
187431
|
+
name: '_token',
|
|
187432
|
+
type: 'address'
|
|
187433
|
+
}
|
|
187434
|
+
],
|
|
187435
|
+
name: 'maxAvailablePerTx',
|
|
187436
|
+
outputs: [
|
|
187437
|
+
{
|
|
187438
|
+
internalType: 'uint256',
|
|
187439
|
+
name: '',
|
|
187440
|
+
type: 'uint256'
|
|
187441
|
+
}
|
|
187442
|
+
],
|
|
187443
|
+
stateMutability: 'view',
|
|
187444
|
+
type: 'function'
|
|
187445
|
+
},
|
|
187446
|
+
{
|
|
187447
|
+
inputs: [
|
|
187448
|
+
{
|
|
187449
|
+
internalType: 'address',
|
|
187450
|
+
name: '_token',
|
|
187451
|
+
type: 'address'
|
|
187452
|
+
}
|
|
187453
|
+
],
|
|
187454
|
+
name: 'maxPerTx',
|
|
187455
|
+
outputs: [
|
|
187456
|
+
{
|
|
187457
|
+
internalType: 'uint256',
|
|
187458
|
+
name: '',
|
|
187459
|
+
type: 'uint256'
|
|
187460
|
+
}
|
|
187461
|
+
],
|
|
187462
|
+
stateMutability: 'view',
|
|
187463
|
+
type: 'function'
|
|
187464
|
+
},
|
|
187465
|
+
{
|
|
187466
|
+
inputs: [
|
|
187467
|
+
{
|
|
187468
|
+
internalType: 'address',
|
|
187469
|
+
name: '_token',
|
|
187470
|
+
type: 'address'
|
|
187471
|
+
}
|
|
187472
|
+
],
|
|
187473
|
+
name: 'mediatorBalance',
|
|
187474
|
+
outputs: [
|
|
187475
|
+
{
|
|
187476
|
+
internalType: 'uint256',
|
|
187477
|
+
name: '',
|
|
187478
|
+
type: 'uint256'
|
|
187479
|
+
}
|
|
187480
|
+
],
|
|
187481
|
+
stateMutability: 'view',
|
|
187482
|
+
type: 'function'
|
|
187483
|
+
},
|
|
187484
|
+
{
|
|
187485
|
+
inputs: [],
|
|
187486
|
+
name: 'mediatorContractOnOtherSide',
|
|
187487
|
+
outputs: [
|
|
187488
|
+
{
|
|
187489
|
+
internalType: 'address',
|
|
187490
|
+
name: '',
|
|
187491
|
+
type: 'address'
|
|
187492
|
+
}
|
|
187493
|
+
],
|
|
187494
|
+
stateMutability: 'view',
|
|
187495
|
+
type: 'function'
|
|
187496
|
+
},
|
|
187497
|
+
{
|
|
187498
|
+
inputs: [
|
|
187499
|
+
{
|
|
187500
|
+
internalType: 'bytes32',
|
|
187501
|
+
name: '_messageId',
|
|
187502
|
+
type: 'bytes32'
|
|
187503
|
+
}
|
|
187504
|
+
],
|
|
187505
|
+
name: 'messageFixed',
|
|
187506
|
+
outputs: [
|
|
187507
|
+
{
|
|
187508
|
+
internalType: 'bool',
|
|
187509
|
+
name: '',
|
|
187510
|
+
type: 'bool'
|
|
187511
|
+
}
|
|
187512
|
+
],
|
|
187513
|
+
stateMutability: 'view',
|
|
187514
|
+
type: 'function'
|
|
187515
|
+
},
|
|
187516
|
+
{
|
|
187517
|
+
inputs: [
|
|
187518
|
+
{
|
|
187519
|
+
internalType: 'address',
|
|
187520
|
+
name: '_token',
|
|
187521
|
+
type: 'address'
|
|
187522
|
+
}
|
|
187523
|
+
],
|
|
187524
|
+
name: 'minPerTx',
|
|
187525
|
+
outputs: [
|
|
187526
|
+
{
|
|
187527
|
+
internalType: 'uint256',
|
|
187528
|
+
name: '',
|
|
187529
|
+
type: 'uint256'
|
|
187530
|
+
}
|
|
187531
|
+
],
|
|
187532
|
+
stateMutability: 'view',
|
|
187533
|
+
type: 'function'
|
|
187534
|
+
},
|
|
187535
|
+
{
|
|
187536
|
+
inputs: [
|
|
187537
|
+
{
|
|
187538
|
+
internalType: 'address',
|
|
187539
|
+
name: '_bridgedToken',
|
|
187540
|
+
type: 'address'
|
|
187541
|
+
}
|
|
187542
|
+
],
|
|
187543
|
+
name: 'nativeTokenAddress',
|
|
187544
|
+
outputs: [
|
|
187545
|
+
{
|
|
187546
|
+
internalType: 'address',
|
|
187547
|
+
name: '',
|
|
187548
|
+
type: 'address'
|
|
187549
|
+
}
|
|
187550
|
+
],
|
|
187551
|
+
stateMutability: 'view',
|
|
187552
|
+
type: 'function'
|
|
187553
|
+
},
|
|
187554
|
+
{
|
|
187555
|
+
inputs: [
|
|
187556
|
+
{
|
|
187557
|
+
internalType: 'address',
|
|
187558
|
+
name: '_from',
|
|
187559
|
+
type: 'address'
|
|
187560
|
+
},
|
|
187561
|
+
{
|
|
187562
|
+
internalType: 'uint256',
|
|
187563
|
+
name: '_value',
|
|
187564
|
+
type: 'uint256'
|
|
187565
|
+
},
|
|
187566
|
+
{
|
|
187567
|
+
internalType: 'bytes',
|
|
187568
|
+
name: '_data',
|
|
187569
|
+
type: 'bytes'
|
|
187570
|
+
}
|
|
187571
|
+
],
|
|
187572
|
+
name: 'onTokenTransfer',
|
|
187573
|
+
outputs: [
|
|
187574
|
+
{
|
|
187575
|
+
internalType: 'bool',
|
|
187576
|
+
name: '',
|
|
187577
|
+
type: 'bool'
|
|
187578
|
+
}
|
|
187579
|
+
],
|
|
187580
|
+
stateMutability: 'nonpayable',
|
|
187581
|
+
type: 'function'
|
|
187582
|
+
},
|
|
187583
|
+
{
|
|
187584
|
+
inputs: [],
|
|
187585
|
+
name: 'owner',
|
|
187586
|
+
outputs: [
|
|
187587
|
+
{
|
|
187588
|
+
internalType: 'address',
|
|
187589
|
+
name: '',
|
|
187590
|
+
type: 'address'
|
|
187591
|
+
}
|
|
187592
|
+
],
|
|
187593
|
+
stateMutability: 'view',
|
|
187594
|
+
type: 'function'
|
|
187595
|
+
},
|
|
187596
|
+
{
|
|
187597
|
+
inputs: [
|
|
187598
|
+
{
|
|
187599
|
+
internalType: 'contract IERC677',
|
|
187600
|
+
name: 'token',
|
|
187601
|
+
type: 'address'
|
|
187602
|
+
},
|
|
187603
|
+
{
|
|
187604
|
+
internalType: 'uint256',
|
|
187605
|
+
name: '_value',
|
|
187606
|
+
type: 'uint256'
|
|
187607
|
+
}
|
|
187608
|
+
],
|
|
187609
|
+
name: 'relayTokens',
|
|
187610
|
+
outputs: [],
|
|
187611
|
+
stateMutability: 'nonpayable',
|
|
187612
|
+
type: 'function'
|
|
187613
|
+
},
|
|
187614
|
+
{
|
|
187615
|
+
inputs: [
|
|
187616
|
+
{
|
|
187617
|
+
internalType: 'contract IERC677',
|
|
187618
|
+
name: 'token',
|
|
187619
|
+
type: 'address'
|
|
187620
|
+
},
|
|
187621
|
+
{
|
|
187622
|
+
internalType: 'address',
|
|
187623
|
+
name: '_receiver',
|
|
187624
|
+
type: 'address'
|
|
187625
|
+
},
|
|
187626
|
+
{
|
|
187627
|
+
internalType: 'uint256',
|
|
187628
|
+
name: '_value',
|
|
187629
|
+
type: 'uint256'
|
|
187630
|
+
}
|
|
187631
|
+
],
|
|
187632
|
+
name: 'relayTokens',
|
|
187633
|
+
outputs: [],
|
|
187634
|
+
stateMutability: 'nonpayable',
|
|
187635
|
+
type: 'function'
|
|
187636
|
+
},
|
|
187637
|
+
{
|
|
187638
|
+
inputs: [
|
|
187639
|
+
{
|
|
187640
|
+
internalType: 'contract IERC677',
|
|
187641
|
+
name: 'token',
|
|
187642
|
+
type: 'address'
|
|
187643
|
+
},
|
|
187644
|
+
{
|
|
187645
|
+
internalType: 'address',
|
|
187646
|
+
name: '_receiver',
|
|
187647
|
+
type: 'address'
|
|
187648
|
+
},
|
|
187649
|
+
{
|
|
187650
|
+
internalType: 'uint256',
|
|
187651
|
+
name: '_value',
|
|
187652
|
+
type: 'uint256'
|
|
187653
|
+
},
|
|
187654
|
+
{
|
|
187655
|
+
internalType: 'bytes',
|
|
187656
|
+
name: '_data',
|
|
187657
|
+
type: 'bytes'
|
|
187658
|
+
}
|
|
187659
|
+
],
|
|
187660
|
+
name: 'relayTokensAndCall',
|
|
187661
|
+
outputs: [],
|
|
187662
|
+
stateMutability: 'nonpayable',
|
|
187663
|
+
type: 'function'
|
|
187664
|
+
},
|
|
187665
|
+
{
|
|
187666
|
+
inputs: [
|
|
187667
|
+
{
|
|
187668
|
+
internalType: 'bytes32',
|
|
187669
|
+
name: '_messageId',
|
|
187670
|
+
type: 'bytes32'
|
|
187671
|
+
}
|
|
187672
|
+
],
|
|
187673
|
+
name: 'requestFailedMessageFix',
|
|
187674
|
+
outputs: [],
|
|
187675
|
+
stateMutability: 'nonpayable',
|
|
187676
|
+
type: 'function'
|
|
187677
|
+
},
|
|
187678
|
+
{
|
|
187679
|
+
inputs: [
|
|
187680
|
+
{
|
|
187681
|
+
internalType: 'address',
|
|
187682
|
+
name: '_bridgeContract',
|
|
187683
|
+
type: 'address'
|
|
187684
|
+
}
|
|
187685
|
+
],
|
|
187686
|
+
name: 'setBridgeContract',
|
|
187687
|
+
outputs: [],
|
|
187688
|
+
stateMutability: 'nonpayable',
|
|
187689
|
+
type: 'function'
|
|
187690
|
+
},
|
|
187691
|
+
{
|
|
187692
|
+
inputs: [
|
|
187693
|
+
{
|
|
187694
|
+
internalType: 'address',
|
|
187695
|
+
name: '_nativeToken',
|
|
187696
|
+
type: 'address'
|
|
187697
|
+
},
|
|
187698
|
+
{
|
|
187699
|
+
internalType: 'address',
|
|
187700
|
+
name: '_bridgedToken',
|
|
187701
|
+
type: 'address'
|
|
187702
|
+
}
|
|
187703
|
+
],
|
|
187704
|
+
name: 'setCustomTokenAddressPair',
|
|
187705
|
+
outputs: [],
|
|
187706
|
+
stateMutability: 'nonpayable',
|
|
187707
|
+
type: 'function'
|
|
187708
|
+
},
|
|
187709
|
+
{
|
|
187710
|
+
inputs: [
|
|
187711
|
+
{
|
|
187712
|
+
internalType: 'address',
|
|
187713
|
+
name: '_token',
|
|
187714
|
+
type: 'address'
|
|
187715
|
+
},
|
|
187716
|
+
{
|
|
187717
|
+
internalType: 'uint256',
|
|
187718
|
+
name: '_dailyLimit',
|
|
187719
|
+
type: 'uint256'
|
|
187720
|
+
}
|
|
187721
|
+
],
|
|
187722
|
+
name: 'setDailyLimit',
|
|
187723
|
+
outputs: [],
|
|
187724
|
+
stateMutability: 'nonpayable',
|
|
187725
|
+
type: 'function'
|
|
187726
|
+
},
|
|
187727
|
+
{
|
|
187728
|
+
inputs: [
|
|
187729
|
+
{
|
|
187730
|
+
internalType: 'address',
|
|
187731
|
+
name: '_token',
|
|
187732
|
+
type: 'address'
|
|
187733
|
+
},
|
|
187734
|
+
{
|
|
187735
|
+
internalType: 'uint256',
|
|
187736
|
+
name: '_dailyLimit',
|
|
187737
|
+
type: 'uint256'
|
|
187738
|
+
}
|
|
187739
|
+
],
|
|
187740
|
+
name: 'setExecutionDailyLimit',
|
|
187741
|
+
outputs: [],
|
|
187742
|
+
stateMutability: 'nonpayable',
|
|
187743
|
+
type: 'function'
|
|
187744
|
+
},
|
|
187745
|
+
{
|
|
187746
|
+
inputs: [
|
|
187747
|
+
{
|
|
187748
|
+
internalType: 'address',
|
|
187749
|
+
name: '_token',
|
|
187750
|
+
type: 'address'
|
|
187751
|
+
},
|
|
187752
|
+
{
|
|
187753
|
+
internalType: 'uint256',
|
|
187754
|
+
name: '_maxPerTx',
|
|
187755
|
+
type: 'uint256'
|
|
187756
|
+
}
|
|
187757
|
+
],
|
|
187758
|
+
name: 'setExecutionMaxPerTx',
|
|
187759
|
+
outputs: [],
|
|
187760
|
+
stateMutability: 'nonpayable',
|
|
187761
|
+
type: 'function'
|
|
187762
|
+
},
|
|
187763
|
+
{
|
|
187764
|
+
inputs: [
|
|
187765
|
+
{
|
|
187766
|
+
internalType: 'address',
|
|
187767
|
+
name: '_feeManager',
|
|
187768
|
+
type: 'address'
|
|
187769
|
+
}
|
|
187770
|
+
],
|
|
187771
|
+
name: 'setFeeManager',
|
|
187772
|
+
outputs: [],
|
|
187773
|
+
stateMutability: 'nonpayable',
|
|
187774
|
+
type: 'function'
|
|
187775
|
+
},
|
|
187776
|
+
{
|
|
187777
|
+
inputs: [
|
|
187778
|
+
{
|
|
187779
|
+
internalType: 'address',
|
|
187780
|
+
name: '_manager',
|
|
187781
|
+
type: 'address'
|
|
187782
|
+
}
|
|
187783
|
+
],
|
|
187784
|
+
name: 'setForwardingRulesManager',
|
|
187785
|
+
outputs: [],
|
|
187786
|
+
stateMutability: 'nonpayable',
|
|
187787
|
+
type: 'function'
|
|
187788
|
+
},
|
|
187789
|
+
{
|
|
187790
|
+
inputs: [
|
|
187791
|
+
{
|
|
187792
|
+
internalType: 'address',
|
|
187793
|
+
name: '_manager',
|
|
187794
|
+
type: 'address'
|
|
187795
|
+
}
|
|
187796
|
+
],
|
|
187797
|
+
name: 'setGasLimitManager',
|
|
187798
|
+
outputs: [],
|
|
187799
|
+
stateMutability: 'nonpayable',
|
|
187800
|
+
type: 'function'
|
|
187801
|
+
},
|
|
187802
|
+
{
|
|
187803
|
+
inputs: [
|
|
187804
|
+
{
|
|
187805
|
+
internalType: 'address',
|
|
187806
|
+
name: '_token',
|
|
187807
|
+
type: 'address'
|
|
187808
|
+
},
|
|
187809
|
+
{
|
|
187810
|
+
internalType: 'uint256',
|
|
187811
|
+
name: '_maxPerTx',
|
|
187812
|
+
type: 'uint256'
|
|
187813
|
+
}
|
|
187814
|
+
],
|
|
187815
|
+
name: 'setMaxPerTx',
|
|
187816
|
+
outputs: [],
|
|
187817
|
+
stateMutability: 'nonpayable',
|
|
187818
|
+
type: 'function'
|
|
187819
|
+
},
|
|
187820
|
+
{
|
|
187821
|
+
inputs: [
|
|
187822
|
+
{
|
|
187823
|
+
internalType: 'address',
|
|
187824
|
+
name: '_mediatorContract',
|
|
187825
|
+
type: 'address'
|
|
187826
|
+
}
|
|
187827
|
+
],
|
|
187828
|
+
name: 'setMediatorContractOnOtherSide',
|
|
187829
|
+
outputs: [],
|
|
187830
|
+
stateMutability: 'nonpayable',
|
|
187831
|
+
type: 'function'
|
|
187832
|
+
},
|
|
187833
|
+
{
|
|
187834
|
+
inputs: [
|
|
187835
|
+
{
|
|
187836
|
+
internalType: 'address',
|
|
187837
|
+
name: '_token',
|
|
187838
|
+
type: 'address'
|
|
187839
|
+
},
|
|
187840
|
+
{
|
|
187841
|
+
internalType: 'uint256',
|
|
187842
|
+
name: '_minPerTx',
|
|
187843
|
+
type: 'uint256'
|
|
187844
|
+
}
|
|
187845
|
+
],
|
|
187846
|
+
name: 'setMinPerTx',
|
|
187847
|
+
outputs: [],
|
|
187848
|
+
stateMutability: 'nonpayable',
|
|
187849
|
+
type: 'function'
|
|
187850
|
+
},
|
|
187851
|
+
{
|
|
187852
|
+
inputs: [
|
|
187853
|
+
{
|
|
187854
|
+
internalType: 'address',
|
|
187855
|
+
name: '_tokenFactory',
|
|
187856
|
+
type: 'address'
|
|
187857
|
+
}
|
|
187858
|
+
],
|
|
187859
|
+
name: 'setTokenFactory',
|
|
187860
|
+
outputs: [],
|
|
187861
|
+
stateMutability: 'nonpayable',
|
|
187862
|
+
type: 'function'
|
|
187863
|
+
},
|
|
187864
|
+
{
|
|
187865
|
+
inputs: [],
|
|
187866
|
+
name: 'tokenFactory',
|
|
187867
|
+
outputs: [
|
|
187868
|
+
{
|
|
187869
|
+
internalType: 'contract TokenFactory',
|
|
187870
|
+
name: '',
|
|
187871
|
+
type: 'address'
|
|
187872
|
+
}
|
|
187873
|
+
],
|
|
187874
|
+
stateMutability: 'view',
|
|
187875
|
+
type: 'function'
|
|
187876
|
+
},
|
|
187877
|
+
{
|
|
187878
|
+
inputs: [
|
|
187879
|
+
{
|
|
187880
|
+
internalType: 'address',
|
|
187881
|
+
name: '_token',
|
|
187882
|
+
type: 'address'
|
|
187883
|
+
},
|
|
187884
|
+
{
|
|
187885
|
+
internalType: 'uint256',
|
|
187886
|
+
name: '_day',
|
|
187887
|
+
type: 'uint256'
|
|
187888
|
+
}
|
|
187889
|
+
],
|
|
187890
|
+
name: 'totalExecutedPerDay',
|
|
187891
|
+
outputs: [
|
|
187892
|
+
{
|
|
187893
|
+
internalType: 'uint256',
|
|
187894
|
+
name: '',
|
|
187895
|
+
type: 'uint256'
|
|
187896
|
+
}
|
|
187897
|
+
],
|
|
187898
|
+
stateMutability: 'view',
|
|
187899
|
+
type: 'function'
|
|
187900
|
+
},
|
|
187901
|
+
{
|
|
187902
|
+
inputs: [
|
|
187903
|
+
{
|
|
187904
|
+
internalType: 'address',
|
|
187905
|
+
name: '_token',
|
|
187906
|
+
type: 'address'
|
|
187907
|
+
},
|
|
187908
|
+
{
|
|
187909
|
+
internalType: 'uint256',
|
|
187910
|
+
name: '_day',
|
|
187911
|
+
type: 'uint256'
|
|
187912
|
+
}
|
|
187913
|
+
],
|
|
187914
|
+
name: 'totalSpentPerDay',
|
|
187915
|
+
outputs: [
|
|
187916
|
+
{
|
|
187917
|
+
internalType: 'uint256',
|
|
187918
|
+
name: '',
|
|
187919
|
+
type: 'uint256'
|
|
187920
|
+
}
|
|
187921
|
+
],
|
|
187922
|
+
stateMutability: 'view',
|
|
187923
|
+
type: 'function'
|
|
187924
|
+
},
|
|
187925
|
+
{
|
|
187926
|
+
inputs: [
|
|
187927
|
+
{
|
|
187928
|
+
internalType: 'address',
|
|
187929
|
+
name: 'newOwner',
|
|
187930
|
+
type: 'address'
|
|
187931
|
+
}
|
|
187932
|
+
],
|
|
187933
|
+
name: 'transferOwnership',
|
|
187934
|
+
outputs: [],
|
|
187935
|
+
stateMutability: 'nonpayable',
|
|
187936
|
+
type: 'function'
|
|
187937
|
+
},
|
|
187938
|
+
{
|
|
187939
|
+
inputs: [
|
|
187940
|
+
{
|
|
187941
|
+
internalType: 'address',
|
|
187942
|
+
name: '_tokenFactory',
|
|
187943
|
+
type: 'address'
|
|
187944
|
+
},
|
|
187945
|
+
{
|
|
187946
|
+
internalType: 'address',
|
|
187947
|
+
name: '_forwardingRulesManager',
|
|
187948
|
+
type: 'address'
|
|
187949
|
+
},
|
|
187950
|
+
{
|
|
187951
|
+
internalType: 'address',
|
|
187952
|
+
name: '_gasLimitManager',
|
|
187953
|
+
type: 'address'
|
|
187954
|
+
},
|
|
187955
|
+
{
|
|
187956
|
+
internalType: 'uint256',
|
|
187957
|
+
name: '_dailyLimit',
|
|
187958
|
+
type: 'uint256'
|
|
187959
|
+
}
|
|
187960
|
+
],
|
|
187961
|
+
name: 'upgradeToReverseMode',
|
|
187962
|
+
outputs: [],
|
|
187963
|
+
stateMutability: 'nonpayable',
|
|
187964
|
+
type: 'function'
|
|
187965
|
+
},
|
|
187966
|
+
{
|
|
187967
|
+
inputs: [
|
|
187968
|
+
{
|
|
187969
|
+
internalType: 'address',
|
|
187970
|
+
name: '_token',
|
|
187971
|
+
type: 'address'
|
|
187972
|
+
},
|
|
187973
|
+
{
|
|
187974
|
+
internalType: 'uint256',
|
|
187975
|
+
name: '_amount',
|
|
187976
|
+
type: 'uint256'
|
|
187977
|
+
}
|
|
187978
|
+
],
|
|
187979
|
+
name: 'withinExecutionLimit',
|
|
187980
|
+
outputs: [
|
|
187981
|
+
{
|
|
187982
|
+
internalType: 'bool',
|
|
187983
|
+
name: '',
|
|
187984
|
+
type: 'bool'
|
|
187985
|
+
}
|
|
187986
|
+
],
|
|
187987
|
+
stateMutability: 'view',
|
|
187988
|
+
type: 'function'
|
|
187989
|
+
},
|
|
187990
|
+
{
|
|
187991
|
+
inputs: [
|
|
187992
|
+
{
|
|
187993
|
+
internalType: 'address',
|
|
187994
|
+
name: '_token',
|
|
187995
|
+
type: 'address'
|
|
187996
|
+
},
|
|
187997
|
+
{
|
|
187998
|
+
internalType: 'uint256',
|
|
187999
|
+
name: '_amount',
|
|
188000
|
+
type: 'uint256'
|
|
188001
|
+
}
|
|
188002
|
+
],
|
|
188003
|
+
name: 'withinLimit',
|
|
188004
|
+
outputs: [
|
|
188005
|
+
{
|
|
188006
|
+
internalType: 'bool',
|
|
188007
|
+
name: '',
|
|
188008
|
+
type: 'bool'
|
|
188009
|
+
}
|
|
188010
|
+
],
|
|
188011
|
+
stateMutability: 'view',
|
|
188012
|
+
type: 'function'
|
|
188013
|
+
},
|
|
188014
|
+
{
|
|
188015
|
+
anonymous: false,
|
|
188016
|
+
inputs: [
|
|
188017
|
+
{
|
|
188018
|
+
indexed: true,
|
|
188019
|
+
name: 'token',
|
|
188020
|
+
type: 'address'
|
|
188021
|
+
},
|
|
188022
|
+
{
|
|
188023
|
+
indexed: false,
|
|
188024
|
+
name: 'newLimit',
|
|
188025
|
+
type: 'uint256'
|
|
188026
|
+
}
|
|
188027
|
+
],
|
|
188028
|
+
name: 'DailyLimitChanged',
|
|
188029
|
+
type: 'event'
|
|
188030
|
+
},
|
|
188031
|
+
{
|
|
188032
|
+
anonymous: false,
|
|
188033
|
+
inputs: [
|
|
188034
|
+
{
|
|
188035
|
+
indexed: true,
|
|
188036
|
+
name: 'token',
|
|
188037
|
+
type: 'address'
|
|
188038
|
+
},
|
|
188039
|
+
{
|
|
188040
|
+
indexed: false,
|
|
188041
|
+
name: 'newLimit',
|
|
188042
|
+
type: 'uint256'
|
|
188043
|
+
}
|
|
188044
|
+
],
|
|
188045
|
+
name: 'ExecutionDailyLimitChanged',
|
|
188046
|
+
type: 'event'
|
|
188047
|
+
},
|
|
188048
|
+
{
|
|
188049
|
+
anonymous: false,
|
|
188050
|
+
inputs: [
|
|
188051
|
+
{
|
|
188052
|
+
indexed: true,
|
|
188053
|
+
name: 'messageId',
|
|
188054
|
+
type: 'bytes32'
|
|
188055
|
+
},
|
|
188056
|
+
{
|
|
188057
|
+
indexed: false,
|
|
188058
|
+
name: 'token',
|
|
188059
|
+
type: 'address'
|
|
188060
|
+
},
|
|
188061
|
+
{
|
|
188062
|
+
indexed: false,
|
|
188063
|
+
name: 'recipient',
|
|
188064
|
+
type: 'address'
|
|
188065
|
+
},
|
|
188066
|
+
{
|
|
188067
|
+
indexed: false,
|
|
188068
|
+
name: 'value',
|
|
188069
|
+
type: 'uint256'
|
|
188070
|
+
}
|
|
188071
|
+
],
|
|
188072
|
+
name: 'FailedMessageFixed',
|
|
188073
|
+
type: 'event'
|
|
188074
|
+
},
|
|
188075
|
+
{
|
|
188076
|
+
anonymous: false,
|
|
188077
|
+
inputs: [
|
|
188078
|
+
{
|
|
188079
|
+
indexed: false,
|
|
188080
|
+
name: 'fee',
|
|
188081
|
+
type: 'uint256'
|
|
188082
|
+
},
|
|
188083
|
+
{
|
|
188084
|
+
indexed: true,
|
|
188085
|
+
name: 'token',
|
|
188086
|
+
type: 'address'
|
|
188087
|
+
},
|
|
188088
|
+
{
|
|
188089
|
+
indexed: true,
|
|
188090
|
+
name: 'messageId',
|
|
188091
|
+
type: 'bytes32'
|
|
188092
|
+
}
|
|
188093
|
+
],
|
|
188094
|
+
name: 'FeeDistributed',
|
|
188095
|
+
type: 'event'
|
|
188096
|
+
},
|
|
188097
|
+
{
|
|
188098
|
+
anonymous: false,
|
|
188099
|
+
inputs: [
|
|
188100
|
+
{
|
|
188101
|
+
indexed: true,
|
|
188102
|
+
name: 'token',
|
|
188103
|
+
type: 'address'
|
|
188104
|
+
},
|
|
188105
|
+
{
|
|
188106
|
+
indexed: false,
|
|
188107
|
+
name: 'fee',
|
|
188108
|
+
type: 'uint256'
|
|
188109
|
+
}
|
|
188110
|
+
],
|
|
188111
|
+
name: 'FeeDistributionFailed',
|
|
188112
|
+
type: 'event'
|
|
188113
|
+
},
|
|
188114
|
+
{
|
|
188115
|
+
anonymous: false,
|
|
188116
|
+
inputs: [
|
|
188117
|
+
{
|
|
188118
|
+
indexed: true,
|
|
188119
|
+
name: 'nativeToken',
|
|
188120
|
+
type: 'address'
|
|
188121
|
+
},
|
|
188122
|
+
{
|
|
188123
|
+
indexed: true,
|
|
188124
|
+
name: 'bridgedToken',
|
|
188125
|
+
type: 'address'
|
|
188126
|
+
}
|
|
188127
|
+
],
|
|
188128
|
+
name: 'NewTokenRegistered',
|
|
188129
|
+
type: 'event'
|
|
188130
|
+
},
|
|
188131
|
+
{
|
|
188132
|
+
anonymous: false,
|
|
188133
|
+
inputs: [
|
|
188134
|
+
{
|
|
188135
|
+
indexed: false,
|
|
188136
|
+
name: 'previousOwner',
|
|
188137
|
+
type: 'address'
|
|
188138
|
+
},
|
|
188139
|
+
{
|
|
188140
|
+
indexed: false,
|
|
188141
|
+
name: 'newOwner',
|
|
188142
|
+
type: 'address'
|
|
188143
|
+
}
|
|
188144
|
+
],
|
|
188145
|
+
name: 'OwnershipTransferred',
|
|
188146
|
+
type: 'event'
|
|
188147
|
+
},
|
|
188148
|
+
{
|
|
188149
|
+
anonymous: false,
|
|
188150
|
+
inputs: [
|
|
188151
|
+
{
|
|
188152
|
+
indexed: true,
|
|
188153
|
+
name: 'token',
|
|
188154
|
+
type: 'address'
|
|
188155
|
+
},
|
|
188156
|
+
{
|
|
188157
|
+
indexed: true,
|
|
188158
|
+
name: 'recipient',
|
|
188159
|
+
type: 'address'
|
|
188160
|
+
},
|
|
188161
|
+
{
|
|
188162
|
+
indexed: false,
|
|
188163
|
+
name: 'value',
|
|
188164
|
+
type: 'uint256'
|
|
188165
|
+
},
|
|
188166
|
+
{
|
|
188167
|
+
indexed: true,
|
|
188168
|
+
name: 'messageId',
|
|
188169
|
+
type: 'bytes32'
|
|
188170
|
+
}
|
|
188171
|
+
],
|
|
188172
|
+
name: 'TokensBridged',
|
|
188173
|
+
type: 'event'
|
|
188174
|
+
},
|
|
188175
|
+
{
|
|
188176
|
+
anonymous: false,
|
|
188177
|
+
inputs: [
|
|
188178
|
+
{
|
|
188179
|
+
indexed: true,
|
|
188180
|
+
name: 'token',
|
|
188181
|
+
type: 'address'
|
|
188182
|
+
},
|
|
188183
|
+
{
|
|
188184
|
+
indexed: true,
|
|
188185
|
+
name: 'sender',
|
|
188186
|
+
type: 'address'
|
|
188187
|
+
},
|
|
188188
|
+
{
|
|
188189
|
+
indexed: false,
|
|
188190
|
+
name: 'value',
|
|
188191
|
+
type: 'uint256'
|
|
188192
|
+
},
|
|
188193
|
+
{
|
|
188194
|
+
indexed: true,
|
|
188195
|
+
name: 'messageId',
|
|
188196
|
+
type: 'bytes32'
|
|
188197
|
+
}
|
|
188198
|
+
],
|
|
188199
|
+
name: 'TokensBridgingInitiated',
|
|
188200
|
+
type: 'event'
|
|
188201
|
+
}
|
|
188202
|
+
];
|
|
188203
|
+
|
|
188204
|
+
|
|
188205
|
+
/***/ }),
|
|
188206
|
+
|
|
188207
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/native-bridge-abi.ts":
|
|
188208
|
+
/*!******************************************************************************************************************!*\
|
|
188209
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/native-bridge-abi.ts ***!
|
|
188210
|
+
\******************************************************************************************************************/
|
|
188211
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
188212
|
+
|
|
188213
|
+
"use strict";
|
|
188214
|
+
|
|
188215
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
188216
|
+
exports.nativeBridgeAbi = void 0;
|
|
188217
|
+
exports.nativeBridgeAbi = [
|
|
188218
|
+
{
|
|
188219
|
+
inputs: [{ internalType: 'address', name: '_receiver', type: 'address' }],
|
|
188220
|
+
name: 'wrapAndRelayTokens',
|
|
188221
|
+
outputs: [],
|
|
188222
|
+
stateMutability: 'payable',
|
|
188223
|
+
type: 'function'
|
|
188224
|
+
},
|
|
188225
|
+
{ stateMutability: 'payable', type: 'receive' }
|
|
188226
|
+
];
|
|
188227
|
+
|
|
188228
|
+
|
|
188229
|
+
/***/ }),
|
|
188230
|
+
|
|
188231
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-contract-address.ts":
|
|
188232
|
+
/*!*****************************************************************************************************************************!*\
|
|
188233
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-contract-address.ts ***!
|
|
188234
|
+
\*****************************************************************************************************************************/
|
|
188235
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
188236
|
+
|
|
188237
|
+
"use strict";
|
|
188238
|
+
|
|
188239
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
188240
|
+
exports.omniBridgeNativeRouter = exports.pulseChainContractAddress = void 0;
|
|
188241
|
+
const blockchain_name_1 = __webpack_require__(/*! ../../../../../../core/blockchain/models/blockchain-name */ "./src/core/blockchain/models/blockchain-name.ts");
|
|
188242
|
+
exports.pulseChainContractAddress = {
|
|
188243
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM]: {
|
|
188244
|
+
omniBridge: '0x1715a3E4A142d8b698131108995174F37aEBA10D',
|
|
188245
|
+
omniBridgeWrapped: '0xe20E337DB2a00b1C37139c873B92a0AAd3F468bF'
|
|
188246
|
+
},
|
|
188247
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.PULSECHAIN]: {
|
|
188248
|
+
omniBridge: '0x4fD0aaa7506f3d9cB8274bdB946Ec42A1b8751Ef',
|
|
188249
|
+
omniBridgeWrapped: '0x0e18d0d556b652794EF12Bf68B2dC857EF5f3996'
|
|
188250
|
+
}
|
|
188251
|
+
};
|
|
188252
|
+
exports.omniBridgeNativeRouter = '0x8AC4ae65b3656e26dC4e0e69108B392283350f55';
|
|
188253
|
+
|
|
188254
|
+
|
|
188255
|
+
/***/ }),
|
|
188256
|
+
|
|
188257
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-supported-blockchains.ts":
|
|
188258
|
+
/*!**********************************************************************************************************************************!*\
|
|
188259
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-supported-blockchains.ts ***!
|
|
188260
|
+
\**********************************************************************************************************************************/
|
|
188261
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
188262
|
+
|
|
188263
|
+
"use strict";
|
|
188264
|
+
|
|
188265
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
188266
|
+
exports.pulseChainSupportedBlockchains = void 0;
|
|
188267
|
+
const blockchain_name_1 = __webpack_require__(/*! ../../../../../../core/blockchain/models/blockchain-name */ "./src/core/blockchain/models/blockchain-name.ts");
|
|
188268
|
+
exports.pulseChainSupportedBlockchains = [
|
|
188269
|
+
blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM,
|
|
188270
|
+
blockchain_name_1.BLOCKCHAIN_NAME.PULSECHAIN
|
|
188271
|
+
];
|
|
188272
|
+
|
|
188273
|
+
|
|
188274
|
+
/***/ }),
|
|
188275
|
+
|
|
188276
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/bridge-manager.ts":
|
|
188277
|
+
/*!**************************************************************************************************************************!*\
|
|
188278
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/bridge-manager.ts ***!
|
|
188279
|
+
\**************************************************************************************************************************/
|
|
188280
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
188281
|
+
|
|
188282
|
+
"use strict";
|
|
188283
|
+
|
|
188284
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
188285
|
+
exports.BridgeManager = void 0;
|
|
188286
|
+
const blockchain_name_1 = __webpack_require__(/*! ../../../../../../core/blockchain/models/blockchain-name */ "./src/core/blockchain/models/blockchain-name.ts");
|
|
188287
|
+
const foreign_bridge_1 = __webpack_require__(/*! ./foreign-bridge */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/foreign-bridge.ts");
|
|
188288
|
+
const home_bridge_1 = __webpack_require__(/*! ./home-bridge */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/home-bridge.ts");
|
|
188289
|
+
class BridgeManager {
|
|
188290
|
+
static createBridge(fromToken, toToken) {
|
|
188291
|
+
return fromToken.blockchain === blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM
|
|
188292
|
+
? new foreign_bridge_1.ForeignBridge(fromToken, toToken)
|
|
188293
|
+
: new home_bridge_1.HomeBridge(fromToken, toToken);
|
|
188294
|
+
}
|
|
188295
|
+
}
|
|
188296
|
+
exports.BridgeManager = BridgeManager;
|
|
188297
|
+
|
|
188298
|
+
|
|
188299
|
+
/***/ }),
|
|
188300
|
+
|
|
188301
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/foreign-bridge.ts":
|
|
188302
|
+
/*!**************************************************************************************************************************!*\
|
|
188303
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/foreign-bridge.ts ***!
|
|
188304
|
+
\**************************************************************************************************************************/
|
|
188305
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
188306
|
+
|
|
188307
|
+
"use strict";
|
|
188308
|
+
|
|
188309
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
188310
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
188311
|
+
};
|
|
188312
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
188313
|
+
exports.ForeignBridge = void 0;
|
|
188314
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
188315
|
+
const errors_1 = __webpack_require__(/*! ../../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
188316
|
+
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");
|
|
188317
|
+
const erc_677_abi_1 = __webpack_require__(/*! ../constants/erc-677-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/erc-677-abi.ts");
|
|
188318
|
+
const native_bridge_abi_1 = __webpack_require__(/*! ../constants/native-bridge-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/native-bridge-abi.ts");
|
|
188319
|
+
const pulse_chain_contract_address_1 = __webpack_require__(/*! ../constants/pulse-chain-contract-address */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-contract-address.ts");
|
|
188320
|
+
const omni_bridge_1 = __webpack_require__(/*! ./omni-bridge */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/omni-bridge.ts");
|
|
188321
|
+
class ForeignBridge extends omni_bridge_1.OmniBridge {
|
|
188322
|
+
isTokenRegistered(address) {
|
|
188323
|
+
return this.sourceWeb3Public.callContractMethod(this.sourceBridgeAddress, this.sourceBridgeAbi, 'isTokenRegistered', [address]);
|
|
188324
|
+
}
|
|
188325
|
+
isRegisteredAsNative(address) {
|
|
188326
|
+
return this.sourceWeb3Public.callContractMethod(this.sourceBridgeAddress, this.sourceBridgeAbi, 'isRegisteredAsNativeToken', [address]);
|
|
188327
|
+
}
|
|
188328
|
+
getNonNativeToken(address) {
|
|
188329
|
+
return this.sourceWeb3Public.callContractMethod(this.sourceBridgeAddress, this.sourceBridgeAbi, 'nativeTokenAddress', [address]);
|
|
188330
|
+
}
|
|
188331
|
+
getNativeToken(address) {
|
|
188332
|
+
return this.targetWeb3Public.callContractMethod(this.targetBridgeAddress, this.targetBridgeAbi, 'bridgedTokenAddress', [address]);
|
|
188333
|
+
}
|
|
188334
|
+
async getMinAmountToken(address) {
|
|
188335
|
+
const amount = await this.sourceWeb3Public.callContractMethod(this.sourceBridgeAddress, this.sourceBridgeAbi, 'minPerTx', [address]);
|
|
188336
|
+
return new bignumber_js_1.default(amount);
|
|
188337
|
+
}
|
|
188338
|
+
async checkSourceLimits(address, amount) {
|
|
188339
|
+
const allowSend = await this.sourceWeb3Public.callContractMethod(this.sourceBridgeAddress, this.sourceBridgeAbi, 'withinLimit', [address, amount]);
|
|
188340
|
+
if (!allowSend) {
|
|
188341
|
+
throw new errors_1.RubicSdkError('Swap is not allowed due to contract limitations');
|
|
188342
|
+
}
|
|
188343
|
+
}
|
|
188344
|
+
async checkTargetLimits(address, amount) {
|
|
188345
|
+
const allowSend = await this.targetWeb3Public.callContractMethod(this.targetBridgeAddress, this.targetBridgeAbi, 'withinExecutionLimit', [address, amount]);
|
|
188346
|
+
if (!allowSend) {
|
|
188347
|
+
throw new errors_1.RubicSdkError('Swap is not allowed due to contract limitations');
|
|
188348
|
+
}
|
|
188349
|
+
}
|
|
188350
|
+
getDataForNativeSwap(receiverAddress, value) {
|
|
188351
|
+
return evm_web3_pure_1.EvmWeb3Pure.encodeMethodCall(pulse_chain_contract_address_1.omniBridgeNativeRouter, native_bridge_abi_1.nativeBridgeAbi, 'wrapAndRelayTokens', [receiverAddress], value);
|
|
188352
|
+
}
|
|
188353
|
+
getDataForTokenSwap(receiverAddress, amount, isERC677, tokenAddress) {
|
|
188354
|
+
if (isERC677) {
|
|
188355
|
+
return evm_web3_pure_1.EvmWeb3Pure.encodeMethodCall(tokenAddress, erc_677_abi_1.erc677Abi, 'transferAndCall', [this.sourceBridgeAddress, amount, receiverAddress], '0');
|
|
188356
|
+
}
|
|
188357
|
+
return evm_web3_pure_1.EvmWeb3Pure.encodeMethodCall(this.sourceBridgeAddress, this.sourceBridgeAbi, 'relayTokens', [tokenAddress, receiverAddress, amount], '0');
|
|
188358
|
+
}
|
|
188359
|
+
}
|
|
188360
|
+
exports.ForeignBridge = ForeignBridge;
|
|
188361
|
+
|
|
188362
|
+
|
|
188363
|
+
/***/ }),
|
|
188364
|
+
|
|
188365
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/home-bridge.ts":
|
|
188366
|
+
/*!***********************************************************************************************************************!*\
|
|
188367
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/home-bridge.ts ***!
|
|
188368
|
+
\***********************************************************************************************************************/
|
|
188369
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
188370
|
+
|
|
188371
|
+
"use strict";
|
|
188372
|
+
|
|
188373
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
188374
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
188375
|
+
};
|
|
188376
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
188377
|
+
exports.HomeBridge = void 0;
|
|
188378
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
188379
|
+
const errors_1 = __webpack_require__(/*! ../../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
188380
|
+
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");
|
|
188381
|
+
const erc_677_abi_1 = __webpack_require__(/*! ../constants/erc-677-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/erc-677-abi.ts");
|
|
188382
|
+
const native_bridge_abi_1 = __webpack_require__(/*! ../constants/native-bridge-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/native-bridge-abi.ts");
|
|
188383
|
+
const pulse_chain_contract_address_1 = __webpack_require__(/*! ../constants/pulse-chain-contract-address */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-contract-address.ts");
|
|
188384
|
+
const omni_bridge_1 = __webpack_require__(/*! ./omni-bridge */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/omni-bridge.ts");
|
|
188385
|
+
class HomeBridge extends omni_bridge_1.OmniBridge {
|
|
188386
|
+
isTokenRegistered(address) {
|
|
188387
|
+
return this.sourceWeb3Public.callContractMethod(this.sourceBridgeAddress, this.sourceBridgeAbi, 'isTokenRegistered', [address]);
|
|
188388
|
+
}
|
|
188389
|
+
isRegisteredAsNative(address) {
|
|
188390
|
+
return this.sourceWeb3Public.callContractMethod(this.sourceBridgeAddress, this.sourceBridgeAbi, 'isRegisteredAsNativeToken', [address]);
|
|
188391
|
+
}
|
|
188392
|
+
getNonNativeToken(address) {
|
|
188393
|
+
return this.sourceWeb3Public.callContractMethod(this.sourceBridgeAddress, this.sourceBridgeAbi, 'nativeTokenAddress', [address]);
|
|
188394
|
+
}
|
|
188395
|
+
getNativeToken(address) {
|
|
188396
|
+
return this.targetWeb3Public.callContractMethod(this.targetBridgeAddress, this.targetBridgeAbi, 'bridgedTokenAddress', [address]);
|
|
188397
|
+
}
|
|
188398
|
+
async getMinAmountToken(address) {
|
|
188399
|
+
const amount = await this.sourceWeb3Public.callContractMethod(this.sourceBridgeAddress, this.sourceBridgeAbi, 'minPerTx', [address]);
|
|
188400
|
+
return new bignumber_js_1.default(amount);
|
|
188401
|
+
}
|
|
188402
|
+
async checkSourceLimits(address, amount) {
|
|
188403
|
+
const allowSend = await this.sourceWeb3Public.callContractMethod(this.sourceBridgeAddress, this.sourceBridgeAbi, 'withinLimit', [address, amount]);
|
|
188404
|
+
if (!allowSend) {
|
|
188405
|
+
throw new errors_1.RubicSdkError('Swap is not allowed due to contract limitations');
|
|
188406
|
+
}
|
|
188407
|
+
}
|
|
188408
|
+
async checkTargetLimits(address, amount) {
|
|
188409
|
+
const allowSend = await this.targetWeb3Public.callContractMethod(this.targetBridgeAddress, this.targetBridgeAbi, 'withinExecutionLimit', [address, amount]);
|
|
188410
|
+
if (!allowSend) {
|
|
188411
|
+
throw new errors_1.RubicSdkError('Swap is not allowed due to contract limitations');
|
|
188412
|
+
}
|
|
188413
|
+
}
|
|
188414
|
+
getDataForNativeSwap(receiverAddress, value) {
|
|
188415
|
+
return evm_web3_pure_1.EvmWeb3Pure.encodeMethodCall(pulse_chain_contract_address_1.omniBridgeNativeRouter, native_bridge_abi_1.nativeBridgeAbi, 'wrapAndRelayTokens', [receiverAddress], value);
|
|
188416
|
+
}
|
|
188417
|
+
getDataForTokenSwap(receiverAddress, amount, isERC677, tokenAddress) {
|
|
188418
|
+
if (isERC677) {
|
|
188419
|
+
return evm_web3_pure_1.EvmWeb3Pure.encodeMethodCall(tokenAddress, erc_677_abi_1.erc677Abi, 'transferAndCall', [this.sourceBridgeAddress, amount, receiverAddress], '0');
|
|
188420
|
+
}
|
|
188421
|
+
return evm_web3_pure_1.EvmWeb3Pure.encodeMethodCall(this.sourceBridgeAddress, this.sourceBridgeAbi, 'relayTokens', [tokenAddress, receiverAddress, amount], '0');
|
|
188422
|
+
}
|
|
188423
|
+
}
|
|
188424
|
+
exports.HomeBridge = HomeBridge;
|
|
188425
|
+
|
|
188426
|
+
|
|
188427
|
+
/***/ }),
|
|
188428
|
+
|
|
188429
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/omni-bridge.ts":
|
|
188430
|
+
/*!***********************************************************************************************************************!*\
|
|
188431
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/omni-bridge.ts ***!
|
|
188432
|
+
\***********************************************************************************************************************/
|
|
188433
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
188434
|
+
|
|
188435
|
+
"use strict";
|
|
188436
|
+
|
|
188437
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
188438
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
188439
|
+
};
|
|
188440
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
188441
|
+
exports.OmniBridge = void 0;
|
|
188442
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
188443
|
+
const blockchain_1 = __webpack_require__(/*! ../../../../../../common/utils/blockchain */ "./src/common/utils/blockchain.ts");
|
|
188444
|
+
const blockchain_name_1 = __webpack_require__(/*! ../../../../../../core/blockchain/models/blockchain-name */ "./src/core/blockchain/models/blockchain-name.ts");
|
|
188445
|
+
const injector_1 = __webpack_require__(/*! ../../../../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
188446
|
+
const fee_manager_abi_1 = __webpack_require__(/*! ../constants/fee-manager-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/fee-manager-abi.ts");
|
|
188447
|
+
const foreign_bridge_abi_1 = __webpack_require__(/*! ../constants/foreign-bridge-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/foreign-bridge-abi.ts");
|
|
188448
|
+
const home_bridge_abi_1 = __webpack_require__(/*! ../constants/home-bridge-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/home-bridge-abi.ts");
|
|
188449
|
+
const pulse_chain_contract_address_1 = __webpack_require__(/*! ../constants/pulse-chain-contract-address */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-contract-address.ts");
|
|
188450
|
+
class OmniBridge {
|
|
188451
|
+
get web3Private() {
|
|
188452
|
+
return injector_1.Injector.web3PrivateService.getWeb3PrivateByBlockchain(this.sourceBlockchain);
|
|
188453
|
+
}
|
|
188454
|
+
get sourceWeb3Public() {
|
|
188455
|
+
return injector_1.Injector.web3PublicService.getWeb3Public(this.sourceBlockchain);
|
|
188456
|
+
}
|
|
188457
|
+
get targetWeb3Public() {
|
|
188458
|
+
return injector_1.Injector.web3PublicService.getWeb3Public(this.targetBlockchain);
|
|
188459
|
+
}
|
|
188460
|
+
constructor(fromToken, toToken) {
|
|
188461
|
+
this.fromToken = fromToken;
|
|
188462
|
+
this.toToken = toToken;
|
|
188463
|
+
this.sourceBlockchain = fromToken.blockchain;
|
|
188464
|
+
this.targetBlockchain = toToken.blockchain;
|
|
188465
|
+
this.sourceBridgeAddress = OmniBridge.isCustomWrap(fromToken)
|
|
188466
|
+
? pulse_chain_contract_address_1.pulseChainContractAddress[this.sourceBlockchain].omniBridgeWrapped
|
|
188467
|
+
: pulse_chain_contract_address_1.pulseChainContractAddress[this.sourceBlockchain].omniBridge;
|
|
188468
|
+
this.targetBridgeAddress = OmniBridge.isCustomWrap(toToken)
|
|
188469
|
+
? pulse_chain_contract_address_1.pulseChainContractAddress[this.targetBlockchain].omniBridgeWrapped
|
|
188470
|
+
: pulse_chain_contract_address_1.pulseChainContractAddress[this.targetBlockchain].omniBridge;
|
|
188471
|
+
if (this.sourceBlockchain === blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM) {
|
|
188472
|
+
this.sourceBridgeAbi = foreign_bridge_abi_1.foreignBridgeAbi;
|
|
188473
|
+
this.targetBridgeAbi = home_bridge_abi_1.homeBridgeAbi;
|
|
188474
|
+
}
|
|
188475
|
+
else {
|
|
188476
|
+
this.sourceBridgeAbi = foreign_bridge_abi_1.foreignBridgeAbi;
|
|
188477
|
+
this.targetBridgeAbi = home_bridge_abi_1.homeBridgeAbi;
|
|
188478
|
+
}
|
|
188479
|
+
}
|
|
188480
|
+
/**
|
|
188481
|
+
* Get bridge token address in target network.
|
|
188482
|
+
* @param fromAddress Token address in source network.
|
|
188483
|
+
*/
|
|
188484
|
+
async getBridgeToken(fromAddress) {
|
|
188485
|
+
const isRegisteredAsNative = await this.isRegisteredAsNative(fromAddress);
|
|
188486
|
+
return isRegisteredAsNative
|
|
188487
|
+
? this.getNativeToken(fromAddress)
|
|
188488
|
+
: this.getNonNativeToken(fromAddress);
|
|
188489
|
+
}
|
|
188490
|
+
/**
|
|
188491
|
+
* Check if allowed to swap.
|
|
188492
|
+
* @param fromAddress Token address in source network.
|
|
188493
|
+
* @param toAddress Token address in target network.
|
|
188494
|
+
* @param amount Swap amount.
|
|
188495
|
+
*/
|
|
188496
|
+
async checkLimits(fromAddress, toAddress, amount) {
|
|
188497
|
+
await this.checkSourceLimits(fromAddress, amount);
|
|
188498
|
+
await this.checkTargetLimits(toAddress, amount);
|
|
188499
|
+
}
|
|
188500
|
+
/**
|
|
188501
|
+
* Get fee manager address.
|
|
188502
|
+
*/
|
|
188503
|
+
getFeeManager() {
|
|
188504
|
+
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(blockchain_name_1.BLOCKCHAIN_NAME.PULSECHAIN);
|
|
188505
|
+
return web3Public.callContractMethod(this.sourceBlockchain === blockchain_name_1.BLOCKCHAIN_NAME.PULSECHAIN
|
|
188506
|
+
? this.sourceBridgeAddress
|
|
188507
|
+
: this.targetBridgeAddress, home_bridge_abi_1.homeBridgeAbi, 'feeManager', []);
|
|
188508
|
+
}
|
|
188509
|
+
/**
|
|
188510
|
+
*
|
|
188511
|
+
* Get fee type for trade.
|
|
188512
|
+
*/
|
|
188513
|
+
getFeeType(feeManagerAddress) {
|
|
188514
|
+
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(blockchain_name_1.BLOCKCHAIN_NAME.PULSECHAIN);
|
|
188515
|
+
return web3Public.callContractMethod(feeManagerAddress, fee_manager_abi_1.feeManagerAbi, this.sourceBlockchain === blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM
|
|
188516
|
+
? 'FOREIGN_TO_HOME_FEE'
|
|
188517
|
+
: 'HOME_TO_FOREIGN_FEE', []);
|
|
188518
|
+
}
|
|
188519
|
+
/**
|
|
188520
|
+
* Calculate output amount for trade.
|
|
188521
|
+
* @param toAddress Token address in target network.
|
|
188522
|
+
* @param feeManagerAddress Fee manager contract address.
|
|
188523
|
+
* @param feeType Type of fee.
|
|
188524
|
+
* @param fromAmount Amount of tokens to send.
|
|
188525
|
+
*/
|
|
188526
|
+
async getOutputAmount(toAddress, feeManagerAddress, feeType, fromAmount) {
|
|
188527
|
+
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(blockchain_name_1.BLOCKCHAIN_NAME.PULSECHAIN);
|
|
188528
|
+
const feeAmount = await web3Public.callContractMethod(feeManagerAddress, fee_manager_abi_1.feeManagerAbi, 'calculateFee', [feeType, toAddress, fromAmount]);
|
|
188529
|
+
return new bignumber_js_1.default(fromAmount).minus(feeAmount);
|
|
188530
|
+
}
|
|
188531
|
+
/**
|
|
188532
|
+
* Calculate output amount for trade.
|
|
188533
|
+
* @param toAddress Token address in target network.
|
|
188534
|
+
* @param fromAmount Amount of tokens to send.
|
|
188535
|
+
*/
|
|
188536
|
+
async calculateAmount(toAddress, fromAmount) {
|
|
188537
|
+
const feeManagerAddress = await this.getFeeManager();
|
|
188538
|
+
const feeType = await this.getFeeType(feeManagerAddress);
|
|
188539
|
+
return this.getOutputAmount(toAddress, feeManagerAddress, feeType, fromAmount);
|
|
188540
|
+
}
|
|
188541
|
+
static isCustomWrap(token) {
|
|
188542
|
+
return (token.blockchain === blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM &&
|
|
188543
|
+
(0, blockchain_1.compareAddresses)(token.address, '0xA882606494D86804B5514E07e6Bd2D6a6eE6d68A'));
|
|
188544
|
+
}
|
|
188545
|
+
}
|
|
188546
|
+
exports.OmniBridge = OmniBridge;
|
|
188547
|
+
|
|
188548
|
+
|
|
188549
|
+
/***/ }),
|
|
188550
|
+
|
|
188551
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-provider.ts":
|
|
188552
|
+
/*!***********************************************************************************************************************!*\
|
|
188553
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-provider.ts ***!
|
|
188554
|
+
\***********************************************************************************************************************/
|
|
188555
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
188556
|
+
|
|
188557
|
+
"use strict";
|
|
188558
|
+
|
|
188559
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
188560
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
188561
|
+
};
|
|
188562
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
188563
|
+
exports.PulseChainCrossChainProvider = void 0;
|
|
188564
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
188565
|
+
const errors_1 = __webpack_require__(/*! ../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
188566
|
+
const tokens_1 = __webpack_require__(/*! ../../../../../common/tokens */ "./src/common/tokens/index.ts");
|
|
188567
|
+
const blockchain_1 = __webpack_require__(/*! ../../../../../common/utils/blockchain */ "./src/common/utils/blockchain.ts");
|
|
188568
|
+
const blockchain_name_1 = __webpack_require__(/*! ../../../../../core/blockchain/models/blockchain-name */ "./src/core/blockchain/models/blockchain-name.ts");
|
|
188569
|
+
const web3_pure_1 = __webpack_require__(/*! ../../../../../core/blockchain/web3-pure/web3-pure */ "./src/core/blockchain/web3-pure/web3-pure.ts");
|
|
188570
|
+
const get_from_without_fee_1 = __webpack_require__(/*! ../../../../common/utils/get-from-without-fee */ "./src/features/common/utils/get-from-without-fee.ts");
|
|
188571
|
+
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");
|
|
188572
|
+
const cross_chain_provider_1 = __webpack_require__(/*! ../common/cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/common/cross-chain-provider.ts");
|
|
188573
|
+
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");
|
|
188574
|
+
const pulse_chain_supported_blockchains_1 = __webpack_require__(/*! ./constants/pulse-chain-supported-blockchains */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-supported-blockchains.ts");
|
|
188575
|
+
const bridge_manager_1 = __webpack_require__(/*! ./omni-bridge-entities/bridge-manager */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/bridge-manager.ts");
|
|
188576
|
+
const pulse_chain_cross_chain_trade_1 = __webpack_require__(/*! ./pulse-chain-cross-chain-trade */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-trade.ts");
|
|
188577
|
+
const typed_trade_providers_1 = __webpack_require__(/*! ../../../../on-chain/calculation-manager/constants/trade-providers/typed-trade-providers */ "./src/features/on-chain/calculation-manager/constants/trade-providers/typed-trade-providers.ts");
|
|
188578
|
+
class PulseChainCrossChainProvider extends cross_chain_provider_1.CrossChainProvider {
|
|
188579
|
+
constructor() {
|
|
188580
|
+
super(...arguments);
|
|
188581
|
+
this.type = cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.PULSE_CHAIN_BRIDGE;
|
|
188582
|
+
}
|
|
188583
|
+
isSupportedBlockchain(blockchain) {
|
|
188584
|
+
return pulse_chain_supported_blockchains_1.pulseChainSupportedBlockchains.some(chain => chain === blockchain);
|
|
188585
|
+
}
|
|
188586
|
+
async calculate(fromToken, toToken, options) {
|
|
188587
|
+
const fromBlockchain = fromToken.blockchain;
|
|
188588
|
+
const toBlockchain = toToken.blockchain;
|
|
188589
|
+
const useProxy = options?.useProxy?.[this.type] ?? true;
|
|
188590
|
+
if (!this.areSupportedBlockchains(fromBlockchain, toBlockchain) ||
|
|
188591
|
+
// @TODO Remove after home bridge development
|
|
188592
|
+
fromToken.blockchain === blockchain_name_1.BLOCKCHAIN_NAME.PULSECHAIN) {
|
|
188593
|
+
return {
|
|
188594
|
+
trade: null,
|
|
188595
|
+
error: new errors_1.NotSupportedTokensError(),
|
|
188596
|
+
tradeType: this.type
|
|
188597
|
+
};
|
|
188598
|
+
}
|
|
188599
|
+
const feeInfo = await this.getFeeInfo(fromBlockchain, options.providerAddress, fromToken, useProxy);
|
|
188600
|
+
try {
|
|
188601
|
+
const sourceBridgeManager = bridge_manager_1.BridgeManager.createBridge(fromToken, toToken);
|
|
188602
|
+
const targetBridgeManager = bridge_manager_1.BridgeManager.createBridge(fromToken, toToken);
|
|
188603
|
+
const fromTokenAddress = this.getTokenAddress(fromToken);
|
|
188604
|
+
const toTokenAddress = this.getTokenAddress(toToken);
|
|
188605
|
+
const tokenRegistered = await sourceBridgeManager.isTokenRegistered(fromTokenAddress);
|
|
188606
|
+
const targetTokenAddress = await sourceBridgeManager.getBridgeToken(fromTokenAddress);
|
|
188607
|
+
if (!(0, blockchain_1.compareAddresses)(toTokenAddress, targetTokenAddress)) {
|
|
188608
|
+
return {
|
|
188609
|
+
trade: null,
|
|
188610
|
+
error: new errors_1.NotSupportedTokensError(),
|
|
188611
|
+
tradeType: this.type
|
|
188612
|
+
};
|
|
188613
|
+
}
|
|
188614
|
+
const fromWithoutFee = (0, get_from_without_fee_1.getFromWithoutFee)(fromToken, feeInfo.rubicProxy?.platformFee?.percent);
|
|
188615
|
+
let onChainTrade = null;
|
|
188616
|
+
let transitTokenAmount = fromWithoutFee.tokenAmount;
|
|
188617
|
+
let transitMinAmount = transitTokenAmount;
|
|
188618
|
+
let transitToken = fromWithoutFee;
|
|
188619
|
+
if (!tokenRegistered) {
|
|
188620
|
+
if (!useProxy) {
|
|
188621
|
+
return {
|
|
188622
|
+
trade: null,
|
|
188623
|
+
error: new errors_1.NotSupportedTokensError(),
|
|
188624
|
+
tradeType: this.type
|
|
188625
|
+
};
|
|
188626
|
+
}
|
|
188627
|
+
const transitTokenAddress = await targetBridgeManager.getBridgeToken(toToken.address);
|
|
188628
|
+
onChainTrade = await this.getOnChainTrade(fromWithoutFee, [], options.slippageTolerance, transitTokenAddress);
|
|
188629
|
+
if (!onChainTrade) {
|
|
188630
|
+
return {
|
|
188631
|
+
trade: null,
|
|
188632
|
+
error: new errors_1.NotSupportedTokensError(),
|
|
188633
|
+
tradeType: this.type
|
|
188634
|
+
};
|
|
188635
|
+
}
|
|
188636
|
+
transitTokenAmount = onChainTrade.to.tokenAmount;
|
|
188637
|
+
transitMinAmount = onChainTrade.toTokenAmountMin.tokenAmount;
|
|
188638
|
+
transitToken = onChainTrade.to;
|
|
188639
|
+
}
|
|
188640
|
+
const targetAmount = await sourceBridgeManager.calculateAmount(toToken.address, web3_pure_1.Web3Pure.toWei(transitTokenAmount, transitToken.decimals));
|
|
188641
|
+
const targetAmountMin = await sourceBridgeManager.calculateAmount(toToken.address, web3_pure_1.Web3Pure.toWei(transitMinAmount, transitToken.decimals));
|
|
188642
|
+
const amountsErrors = await this.getMinMaxAmountsErrors(fromTokenAddress, sourceBridgeManager, transitToken);
|
|
188643
|
+
if (!targetAmount) {
|
|
188644
|
+
throw new errors_1.RubicSdkError('Can not estimate trade');
|
|
188645
|
+
}
|
|
188646
|
+
const to = new tokens_1.PriceTokenAmount({
|
|
188647
|
+
...toToken.asStruct,
|
|
188648
|
+
tokenAmount: web3_pure_1.Web3Pure.fromWei(targetAmount, toToken.decimals)
|
|
188649
|
+
});
|
|
188650
|
+
const gasData = options.gasCalculation === 'enabled'
|
|
188651
|
+
? await pulse_chain_cross_chain_trade_1.PulseChainCrossChainTrade.getGasData(fromToken, to, onChainTrade, feeInfo, targetAmountMin, options.providerAddress, options.receiverAddress || this.getWalletAddress(fromToken.blockchain), sourceBridgeManager.sourceBridgeAddress, tokenRegistered)
|
|
188652
|
+
: null;
|
|
188653
|
+
return {
|
|
188654
|
+
trade: new pulse_chain_cross_chain_trade_1.PulseChainCrossChainTrade({
|
|
188655
|
+
from: fromToken,
|
|
188656
|
+
to,
|
|
188657
|
+
gasData,
|
|
188658
|
+
slippage: options.slippageTolerance,
|
|
188659
|
+
feeInfo: feeInfo,
|
|
188660
|
+
toTokenAmountMin: targetAmountMin,
|
|
188661
|
+
onChainTrade,
|
|
188662
|
+
priceImpact: fromToken.calculatePriceImpactPercent(to),
|
|
188663
|
+
routerAddress: sourceBridgeManager.sourceBridgeAddress,
|
|
188664
|
+
tokenRegistered
|
|
188665
|
+
}, options.providerAddress, await this.getRoutePath(fromToken, transitToken, to, onChainTrade)),
|
|
188666
|
+
error: amountsErrors,
|
|
188667
|
+
tradeType: this.type
|
|
188668
|
+
};
|
|
188669
|
+
}
|
|
188670
|
+
catch (err) {
|
|
188671
|
+
const rubicSdkError = cross_chain_provider_1.CrossChainProvider.parseError(err);
|
|
188672
|
+
return {
|
|
188673
|
+
trade: null,
|
|
188674
|
+
error: rubicSdkError,
|
|
188675
|
+
tradeType: this.type
|
|
188676
|
+
};
|
|
188677
|
+
}
|
|
188678
|
+
}
|
|
188679
|
+
async getOnChainTrade(from, _availableDexes, slippageTolerance, transitTokenAddress) {
|
|
188680
|
+
const fromBlockchain = from.blockchain;
|
|
188681
|
+
const dexes = Object.values(typed_trade_providers_1.typedTradeProviders[fromBlockchain]).filter(dex => dex.supportReceiverAddress);
|
|
188682
|
+
const to = await tokens_1.PriceToken.createToken({
|
|
188683
|
+
address: transitTokenAddress,
|
|
188684
|
+
blockchain: fromBlockchain
|
|
188685
|
+
});
|
|
188686
|
+
const onChainTrades = (await Promise.allSettled(dexes.map(dex => dex.calculate(from, to, {
|
|
188687
|
+
slippageTolerance,
|
|
188688
|
+
gasCalculation: 'disabled',
|
|
188689
|
+
useProxy: false
|
|
188690
|
+
}))))
|
|
188691
|
+
.filter(value => value.status === 'fulfilled')
|
|
188692
|
+
.map(value => value.value)
|
|
188693
|
+
.sort((a, b) => b.to.tokenAmount.comparedTo(a.to.tokenAmount));
|
|
188694
|
+
if (!onChainTrades.length) {
|
|
188695
|
+
return null;
|
|
188696
|
+
}
|
|
188697
|
+
return onChainTrades[0];
|
|
188698
|
+
}
|
|
188699
|
+
async getMinMaxAmountsErrors(fromTokenAddress, fromBridgeManager, fromToken) {
|
|
188700
|
+
try {
|
|
188701
|
+
const minAmountWei = await fromBridgeManager.getMinAmountToken(fromTokenAddress);
|
|
188702
|
+
const minAmount = new bignumber_js_1.default(minAmountWei);
|
|
188703
|
+
if (minAmount.gte(fromToken.stringWeiAmount)) {
|
|
188704
|
+
return new errors_1.MinAmountError(web3_pure_1.Web3Pure.fromWei(minAmount, fromToken.decimals), fromToken.symbol);
|
|
188705
|
+
}
|
|
188706
|
+
}
|
|
188707
|
+
catch {
|
|
188708
|
+
return undefined;
|
|
188709
|
+
}
|
|
188710
|
+
return undefined;
|
|
188711
|
+
}
|
|
188712
|
+
async getFeeInfo(fromBlockchain, providerAddress, percentFeeToken, useProxy) {
|
|
188713
|
+
return proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getFeeInfo(fromBlockchain, providerAddress, percentFeeToken, useProxy);
|
|
188714
|
+
}
|
|
188715
|
+
async getRoutePath(from, transit, to, onChainTrade) {
|
|
188716
|
+
const routePath = [];
|
|
188717
|
+
if (onChainTrade) {
|
|
188718
|
+
routePath.push({
|
|
188719
|
+
type: 'on-chain',
|
|
188720
|
+
path: [from, transit],
|
|
188721
|
+
provider: onChainTrade.type
|
|
188722
|
+
});
|
|
188723
|
+
}
|
|
188724
|
+
routePath.push({
|
|
188725
|
+
type: 'cross-chain',
|
|
188726
|
+
path: [transit, to],
|
|
188727
|
+
provider: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.PULSE_CHAIN_BRIDGE
|
|
188728
|
+
});
|
|
188729
|
+
return routePath;
|
|
188730
|
+
}
|
|
188731
|
+
getTokenAddress(token) {
|
|
188732
|
+
if (token.blockchain === blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM) {
|
|
188733
|
+
return token.isNative ? '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2' : token.address;
|
|
188734
|
+
}
|
|
188735
|
+
return token.isNative ? '0xA1077a294dDE1B09bB078844df40758a5D0f9a27' : token.address;
|
|
188736
|
+
}
|
|
188737
|
+
}
|
|
188738
|
+
exports.PulseChainCrossChainProvider = PulseChainCrossChainProvider;
|
|
188739
|
+
|
|
188740
|
+
|
|
188741
|
+
/***/ }),
|
|
188742
|
+
|
|
188743
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-trade.ts":
|
|
188744
|
+
/*!********************************************************************************************************************!*\
|
|
188745
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-trade.ts ***!
|
|
188746
|
+
\********************************************************************************************************************/
|
|
188747
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
188748
|
+
|
|
188749
|
+
"use strict";
|
|
188750
|
+
|
|
188751
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
188752
|
+
exports.PulseChainCrossChainTrade = void 0;
|
|
188753
|
+
const blockchain_name_1 = __webpack_require__(/*! ../../../../../core/blockchain/models/blockchain-name */ "./src/core/blockchain/models/blockchain-name.ts");
|
|
188754
|
+
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");
|
|
188755
|
+
const web3_pure_1 = __webpack_require__(/*! ../../../../../core/blockchain/web3-pure/web3-pure */ "./src/core/blockchain/web3-pure/web3-pure.ts");
|
|
188756
|
+
const injector_1 = __webpack_require__(/*! ../../../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
188757
|
+
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");
|
|
188758
|
+
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");
|
|
188759
|
+
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");
|
|
188760
|
+
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");
|
|
188761
|
+
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");
|
|
188762
|
+
const bridge_type_1 = __webpack_require__(/*! ../common/models/bridge-type */ "./src/features/cross-chain/calculation-manager/providers/common/models/bridge-type.ts");
|
|
188763
|
+
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");
|
|
188764
|
+
const bridge_manager_1 = __webpack_require__(/*! ./omni-bridge-entities/bridge-manager */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/bridge-manager.ts");
|
|
188765
|
+
const omni_bridge_1 = __webpack_require__(/*! ./omni-bridge-entities/omni-bridge */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/omni-bridge.ts");
|
|
188766
|
+
const convert_gas_price_1 = __webpack_require__(/*! ../../utils/convert-gas-price */ "./src/features/cross-chain/calculation-manager/utils/convert-gas-price.ts");
|
|
188767
|
+
class PulseChainCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
188768
|
+
/** @internal */
|
|
188769
|
+
static async getGasData(from, toToken, onChainTrade, feeInfo, toTokenAmountMin, providerAddress, receiverAddress, routerAddress, tokenRegistered) {
|
|
188770
|
+
const fromBlockchain = from.blockchain;
|
|
188771
|
+
const walletAddress = injector_1.Injector.web3PrivateService.getWeb3PrivateByBlockchain(fromBlockchain).address;
|
|
188772
|
+
if (!walletAddress) {
|
|
188773
|
+
return null;
|
|
188774
|
+
}
|
|
188775
|
+
try {
|
|
188776
|
+
let gasLimit;
|
|
188777
|
+
let gasDetails;
|
|
188778
|
+
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(fromBlockchain);
|
|
188779
|
+
if (feeInfo.rubicProxy?.fixedFee?.amount.gt(0)) {
|
|
188780
|
+
const { contractAddress, contractAbi, methodName, methodArguments, value } = await new PulseChainCrossChainTrade({
|
|
188781
|
+
from,
|
|
188782
|
+
to: toToken,
|
|
188783
|
+
gasData: null,
|
|
188784
|
+
priceImpact: 0,
|
|
188785
|
+
slippage: 0,
|
|
188786
|
+
feeInfo: feeInfo,
|
|
188787
|
+
toTokenAmountMin,
|
|
188788
|
+
onChainTrade: onChainTrade,
|
|
188789
|
+
routerAddress,
|
|
188790
|
+
tokenRegistered
|
|
188791
|
+
}, providerAddress || evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getContractParams({});
|
|
188792
|
+
const [proxyGasLimit, proxyGasDetails] = await Promise.all([
|
|
188793
|
+
web3Public.getEstimatedGas(contractAbi, contractAddress, methodName, methodArguments, walletAddress, value),
|
|
188794
|
+
(0, convert_gas_price_1.convertGasDataToBN)(await injector_1.Injector.gasPriceApi.getGasPrice(from.blockchain))
|
|
188795
|
+
]);
|
|
188796
|
+
gasLimit = proxyGasLimit;
|
|
188797
|
+
gasDetails = proxyGasDetails;
|
|
188798
|
+
}
|
|
188799
|
+
else {
|
|
188800
|
+
const { data, to, value } = new PulseChainCrossChainTrade({
|
|
188801
|
+
from,
|
|
188802
|
+
to: toToken,
|
|
188803
|
+
gasData: null,
|
|
188804
|
+
priceImpact: 0,
|
|
188805
|
+
slippage: 0,
|
|
188806
|
+
feeInfo: feeInfo,
|
|
188807
|
+
toTokenAmountMin,
|
|
188808
|
+
onChainTrade: onChainTrade,
|
|
188809
|
+
routerAddress,
|
|
188810
|
+
tokenRegistered
|
|
188811
|
+
}, providerAddress || evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, []).getTransactionRequest(receiverAddress, onChainTrade ? onChainTrade.to : from, toToken);
|
|
188812
|
+
const defaultGasLimit = await web3Public.getEstimatedGasByData(walletAddress, to, {
|
|
188813
|
+
data,
|
|
188814
|
+
value
|
|
188815
|
+
});
|
|
188816
|
+
const defaultGasDetails = (0, convert_gas_price_1.convertGasDataToBN)(await injector_1.Injector.gasPriceApi.getGasPrice(from.blockchain));
|
|
188817
|
+
gasLimit = defaultGasLimit;
|
|
188818
|
+
gasDetails = defaultGasDetails;
|
|
188819
|
+
}
|
|
188820
|
+
if (!gasLimit?.isFinite()) {
|
|
188821
|
+
return null;
|
|
188822
|
+
}
|
|
188823
|
+
const increasedGasLimit = web3_pure_1.Web3Pure.calculateGasMargin(gasLimit, 1.2);
|
|
188824
|
+
return {
|
|
188825
|
+
gasLimit: increasedGasLimit,
|
|
188826
|
+
...gasDetails
|
|
188827
|
+
};
|
|
188828
|
+
}
|
|
188829
|
+
catch (_err) {
|
|
188830
|
+
return null;
|
|
188831
|
+
}
|
|
188832
|
+
}
|
|
188833
|
+
get fromBlockchain() {
|
|
188834
|
+
return this.from.blockchain;
|
|
188835
|
+
}
|
|
188836
|
+
get fromContractAddress() {
|
|
188837
|
+
return this.isProxyTrade
|
|
188838
|
+
? rubic_proxy_contract_address_1.rubicProxyContractAddress[this.fromBlockchain].gateway
|
|
188839
|
+
: this.routerAddress;
|
|
188840
|
+
}
|
|
188841
|
+
get methodName() {
|
|
188842
|
+
if (this.isErc677 && this.from.blockchain === blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM) {
|
|
188843
|
+
return this.onChainTrade
|
|
188844
|
+
? 'swapAndStartBridgeTokensViaTransferAndCall'
|
|
188845
|
+
: 'startBridgeTokensViaTransferAndCall';
|
|
188846
|
+
}
|
|
188847
|
+
return this.onChainTrade
|
|
188848
|
+
? 'swapAndStartBridgeTokensViaGenericCrossChain'
|
|
188849
|
+
: 'startBridgeTokensViaGenericCrossChain';
|
|
188850
|
+
}
|
|
188851
|
+
get isErc677() {
|
|
188852
|
+
return !this.isTokenRegistered || omni_bridge_1.OmniBridge.isCustomWrap(this.from);
|
|
188853
|
+
}
|
|
188854
|
+
constructor(crossChainTrade, providerAddress, routePath) {
|
|
188855
|
+
super(providerAddress, routePath);
|
|
188856
|
+
this.type = cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.PULSE_CHAIN_BRIDGE;
|
|
188857
|
+
this.isAggregator = false;
|
|
188858
|
+
this.bridgeType = bridge_type_1.BRIDGE_TYPE.PULSE_CHAIN_BRIDGE;
|
|
188859
|
+
this.from = crossChainTrade.from;
|
|
188860
|
+
this.to = crossChainTrade.to;
|
|
188861
|
+
this.gasData = crossChainTrade.gasData;
|
|
188862
|
+
this.slippage = crossChainTrade.slippage;
|
|
188863
|
+
this.toTokenAmountMin = web3_pure_1.Web3Pure.fromWei(crossChainTrade.toTokenAmountMin, crossChainTrade.to.decimals);
|
|
188864
|
+
this.feeInfo = crossChainTrade.feeInfo;
|
|
188865
|
+
this.priceImpact = crossChainTrade.priceImpact;
|
|
188866
|
+
this.routerAddress = crossChainTrade.routerAddress;
|
|
188867
|
+
this.onChainSubtype = crossChainTrade.onChainTrade
|
|
188868
|
+
? { from: crossChainTrade.onChainTrade.type, to: undefined }
|
|
188869
|
+
: { from: undefined, to: undefined };
|
|
188870
|
+
this.onChainTrade = crossChainTrade.onChainTrade;
|
|
188871
|
+
this.isTokenRegistered = crossChainTrade.tokenRegistered;
|
|
188872
|
+
}
|
|
188873
|
+
async needApprove() {
|
|
188874
|
+
this.checkWalletConnected();
|
|
188875
|
+
if (this.from.isNative || (this.isErc677 && !this.isProxyTrade)) {
|
|
188876
|
+
return false;
|
|
188877
|
+
}
|
|
188878
|
+
const allowance = await this.fromWeb3Public.getAllowance(this.from.address, this.walletAddress, this.fromContractAddress);
|
|
188879
|
+
return this.from.weiAmount.gt(allowance);
|
|
188880
|
+
}
|
|
188881
|
+
async swapDirect(options = {}) {
|
|
188882
|
+
await this.checkTradeErrors();
|
|
188883
|
+
if (!this.isProxyTrade || this.isTokenRegistered) {
|
|
188884
|
+
await this.checkAllowanceAndApprove(options);
|
|
188885
|
+
}
|
|
188886
|
+
const { onConfirm, gasLimit, gasPrice, gasPriceOptions } = options;
|
|
188887
|
+
let transactionHash;
|
|
188888
|
+
const onTransactionHash = (hash) => {
|
|
188889
|
+
if (onConfirm) {
|
|
188890
|
+
onConfirm(hash);
|
|
188891
|
+
}
|
|
188892
|
+
transactionHash = hash;
|
|
188893
|
+
};
|
|
188894
|
+
// eslint-disable-next-line no-useless-catch
|
|
188895
|
+
try {
|
|
188896
|
+
const { data, to, value } = this.getTransactionRequest(options.receiverAddress || this.walletAddress, this.from, this.to);
|
|
188897
|
+
await this.web3Private.trySendTransaction(to, {
|
|
188898
|
+
data,
|
|
188899
|
+
value,
|
|
188900
|
+
onTransactionHash,
|
|
188901
|
+
gas: gasLimit,
|
|
188902
|
+
gasPrice,
|
|
188903
|
+
gasPriceOptions
|
|
188904
|
+
});
|
|
188905
|
+
return transactionHash;
|
|
188906
|
+
}
|
|
188907
|
+
catch (err) {
|
|
188908
|
+
throw err;
|
|
188909
|
+
}
|
|
188910
|
+
}
|
|
188911
|
+
async getContractParams(options) {
|
|
188912
|
+
const receiverAddress = options?.receiverAddress || this.walletAddress;
|
|
188913
|
+
const { data, to, value: providerValue } = this.getTransactionRequest(receiverAddress, this.onChainTrade ? this.onChainTrade.to : this.from, this.to);
|
|
188914
|
+
const bridgeData = proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getBridgeData(options, {
|
|
188915
|
+
walletAddress: this.walletAddress,
|
|
188916
|
+
fromTokenAmount: this.from,
|
|
188917
|
+
toTokenAmount: this.to,
|
|
188918
|
+
srcChainTrade: this.onChainTrade,
|
|
188919
|
+
providerAddress: this.providerAddress,
|
|
188920
|
+
type: `native:${this.type}`,
|
|
188921
|
+
fromAddress: this.walletAddress
|
|
188922
|
+
});
|
|
188923
|
+
const swapData = this.onChainTrade &&
|
|
188924
|
+
(await proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getSwapData(options, {
|
|
188925
|
+
walletAddress: this.walletAddress,
|
|
188926
|
+
contractAddress: rubic_proxy_contract_address_1.rubicProxyContractAddress[this.from.blockchain].router,
|
|
188927
|
+
fromTokenAmount: this.from,
|
|
188928
|
+
toTokenAmount: this.onChainTrade.to,
|
|
188929
|
+
onChainEncodeFn: this.onChainTrade.encode.bind(this.onChainTrade)
|
|
188930
|
+
}));
|
|
188931
|
+
const providerData = this.isErc677
|
|
188932
|
+
? this.getProviderDataForErc677(this.from, this.to, receiverAddress)
|
|
188933
|
+
: await proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getGenericProviderData(to, data, this.fromBlockchain, to, '0');
|
|
188934
|
+
const methodArguments = swapData
|
|
188935
|
+
? [bridgeData, swapData, providerData]
|
|
188936
|
+
: [bridgeData, providerData];
|
|
188937
|
+
const value = this.getSwapValue(providerValue);
|
|
188938
|
+
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);
|
|
188939
|
+
const sendingToken = this.from.isNative ? [] : [this.from.address];
|
|
188940
|
+
const sendingAmount = this.from.isNative ? [] : [this.from.stringWeiAmount];
|
|
188941
|
+
return {
|
|
188942
|
+
contractAddress: rubic_proxy_contract_address_1.rubicProxyContractAddress[this.from.blockchain].gateway,
|
|
188943
|
+
contractAbi: gateway_rubic_cross_chain_abi_1.gatewayRubicCrossChainAbi,
|
|
188944
|
+
methodName: 'startViaRubic',
|
|
188945
|
+
methodArguments: [sendingToken, sendingAmount, transactionConfiguration.data],
|
|
188946
|
+
value
|
|
188947
|
+
};
|
|
188948
|
+
}
|
|
188949
|
+
getTradeAmountRatio(fromUsd) {
|
|
188950
|
+
return fromUsd.dividedBy(this.to.tokenAmount);
|
|
188951
|
+
}
|
|
188952
|
+
getTradeInfo() {
|
|
188953
|
+
return {
|
|
188954
|
+
estimatedGas: this.estimatedGas,
|
|
188955
|
+
feeInfo: this.feeInfo,
|
|
188956
|
+
priceImpact: this.priceImpact ?? null,
|
|
188957
|
+
slippage: this.slippage * 100,
|
|
188958
|
+
routePath: this.routePath
|
|
188959
|
+
};
|
|
188960
|
+
}
|
|
188961
|
+
getTransactionRequest(receiverAddress, fromToken, toToken) {
|
|
188962
|
+
const sourceBridgeManager = bridge_manager_1.BridgeManager.createBridge(fromToken, toToken);
|
|
188963
|
+
const tokenAddress = this.getTokenAddress(fromToken);
|
|
188964
|
+
if (fromToken.isNative) {
|
|
188965
|
+
return sourceBridgeManager.getDataForNativeSwap(receiverAddress, fromToken.stringWeiAmount);
|
|
188966
|
+
}
|
|
188967
|
+
return sourceBridgeManager.getDataForTokenSwap(receiverAddress, fromToken.stringWeiAmount, this.isErc677, tokenAddress);
|
|
188968
|
+
}
|
|
188969
|
+
getTokenAddress(token) {
|
|
188970
|
+
if (token.blockchain === blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM) {
|
|
188971
|
+
return token.isNative ? '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2' : token.address;
|
|
188972
|
+
}
|
|
188973
|
+
return token.isNative ? '0xA1077a294dDE1B09bB078844df40758a5D0f9a27' : token.address;
|
|
188974
|
+
}
|
|
188975
|
+
getProviderDataForErc677(fromToken, toToken, receiverAddress) {
|
|
188976
|
+
const sourceBridgeManager = bridge_manager_1.BridgeManager.createBridge(fromToken, toToken);
|
|
188977
|
+
return [sourceBridgeManager.sourceBridgeAddress, receiverAddress];
|
|
188978
|
+
}
|
|
188979
|
+
}
|
|
188980
|
+
exports.PulseChainCrossChainTrade = PulseChainCrossChainTrade;
|
|
188981
|
+
|
|
188982
|
+
|
|
188983
|
+
/***/ }),
|
|
188984
|
+
|
|
188985
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-api-types.ts":
|
|
188986
|
+
/*!********************************************************************************************************************!*\
|
|
188987
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-api-types.ts ***!
|
|
188988
|
+
\********************************************************************************************************************/
|
|
188989
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
188990
|
+
|
|
188991
|
+
"use strict";
|
|
188992
|
+
|
|
188993
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
188994
|
+
|
|
188995
|
+
|
|
188996
|
+
/***/ }),
|
|
188997
|
+
|
|
188998
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-parser-types.ts":
|
|
188999
|
+
/*!***********************************************************************************************************************!*\
|
|
189000
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/model/rango-cross-chain-parser-types.ts ***!
|
|
189001
|
+
\***********************************************************************************************************************/
|
|
189002
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
189003
|
+
|
|
189004
|
+
"use strict";
|
|
189005
|
+
|
|
189006
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
189007
|
+
|
|
189008
|
+
|
|
189009
|
+
/***/ }),
|
|
189010
|
+
|
|
189011
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-provider.ts":
|
|
189012
|
+
/*!*************************************************************************************************************!*\
|
|
189013
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-provider.ts ***!
|
|
189014
|
+
\*************************************************************************************************************/
|
|
189015
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
189016
|
+
|
|
189017
|
+
"use strict";
|
|
189018
|
+
|
|
189019
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
189020
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
189021
|
+
};
|
|
189022
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
189023
|
+
exports.RangoCrossChainProvider = void 0;
|
|
189024
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
189025
|
+
const errors_1 = __webpack_require__(/*! ../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
189026
|
+
const tokens_1 = __webpack_require__(/*! ../../../../../common/tokens */ "./src/common/tokens/index.ts");
|
|
189027
|
+
const web3_pure_1 = __webpack_require__(/*! ../../../../../core/blockchain/web3-pure/web3-pure */ "./src/core/blockchain/web3-pure/web3-pure.ts");
|
|
189028
|
+
const rango_api_common_1 = __webpack_require__(/*! ../../../../common/providers/rango/constants/rango-api-common */ "./src/features/common/providers/rango/constants/rango-api-common.ts");
|
|
189029
|
+
const rango_supported_blockchains_1 = __webpack_require__(/*! ../../../../common/providers/rango/models/rango-supported-blockchains */ "./src/features/common/providers/rango/models/rango-supported-blockchains.ts");
|
|
189030
|
+
const rango_parser_1 = __webpack_require__(/*! ../../../../common/providers/rango/services/rango-parser */ "./src/features/common/providers/rango/services/rango-parser.ts");
|
|
189031
|
+
const rango_utils_1 = __webpack_require__(/*! ../../../../common/providers/rango/utils/rango-utils */ "./src/features/common/providers/rango/utils/rango-utils.ts");
|
|
189032
|
+
const get_from_without_fee_1 = __webpack_require__(/*! ../../../../common/utils/get-from-without-fee */ "./src/features/common/utils/get-from-without-fee.ts");
|
|
189033
|
+
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");
|
|
189034
|
+
const cross_chain_provider_1 = __webpack_require__(/*! ../common/cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/common/cross-chain-provider.ts");
|
|
189035
|
+
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");
|
|
189036
|
+
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");
|
|
189037
|
+
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");
|
|
189038
|
+
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");
|
|
189039
|
+
class RangoCrossChainProvider extends cross_chain_provider_1.CrossChainProvider {
|
|
189040
|
+
constructor() {
|
|
189041
|
+
super(...arguments);
|
|
189042
|
+
this.type = cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.RANGO;
|
|
189043
|
+
this.rangoSupportedBlockchains = rango_supported_blockchains_1.rangoSupportedBlockchains;
|
|
189044
|
+
}
|
|
189045
|
+
isSupportedBlockchain(blockchain) {
|
|
189046
|
+
return this.rangoSupportedBlockchains.some(supportedBlockchain => supportedBlockchain === blockchain);
|
|
189047
|
+
}
|
|
189048
|
+
async calculate(from, toToken, options) {
|
|
189049
|
+
const fromBlockchain = from.blockchain;
|
|
189050
|
+
const toBlockchain = toToken.blockchain;
|
|
189051
|
+
const useProxy = options?.useProxy?.[this.type] ?? true;
|
|
189052
|
+
if (!this.areSupportedBlockchains(fromBlockchain, toBlockchain)) {
|
|
189053
|
+
return {
|
|
189054
|
+
error: new errors_1.NotSupportedBlockchain(),
|
|
189055
|
+
trade: null,
|
|
189056
|
+
tradeType: this.type
|
|
189057
|
+
};
|
|
189058
|
+
}
|
|
189059
|
+
try {
|
|
189060
|
+
const feeInfo = await this.getFeeInfo(fromBlockchain, options.providerAddress, from, useProxy);
|
|
189061
|
+
const fromWithoutFee = (0, get_from_without_fee_1.getFromWithoutFee)(from, feeInfo.rubicProxy?.platformFee?.percent);
|
|
189062
|
+
const bestRouteParams = await rango_parser_1.RangoCommonParser.getBestRouteQueryParams(fromWithoutFee, toToken, { ...options, swapperGroups: options.rangoDisabledProviders });
|
|
189063
|
+
const { route } = await rango_cross_chain_api_service_1.RangoCrossChainApiService.getBestRoute(bestRouteParams);
|
|
189064
|
+
const { outputAmountMin, outputAmount, path } = route;
|
|
189065
|
+
const toTokenAmountMin = web3_pure_1.Web3Pure.fromWei(outputAmountMin, toToken.decimals);
|
|
189066
|
+
const to = new tokens_1.PriceTokenAmount({
|
|
189067
|
+
...toToken.asStruct,
|
|
189068
|
+
tokenAmount: web3_pure_1.Web3Pure.fromWei(outputAmount, toToken.decimals)
|
|
189069
|
+
});
|
|
189070
|
+
const routePath = await this.getRoutePath(from, to, path);
|
|
189071
|
+
const swapQueryParams = await rango_parser_1.RangoCommonParser.getSwapQueryParams(fromWithoutFee, toToken, { ...options, swapperGroups: options.rangoDisabledProviders });
|
|
189072
|
+
const tradeParams = await rango_cross_chain_params_parser_1.RangoCrossChainParser.getTradeConstructorParams({
|
|
189073
|
+
fromToken: from,
|
|
189074
|
+
toToken: to,
|
|
189075
|
+
options,
|
|
189076
|
+
routePath,
|
|
189077
|
+
feeInfo,
|
|
189078
|
+
toTokenAmountMin,
|
|
189079
|
+
swapQueryParams
|
|
189080
|
+
});
|
|
189081
|
+
const trade = new rango_cross_chain_trade_1.RangoCrossChainTrade(tradeParams);
|
|
189082
|
+
const tradeType = this.type;
|
|
189083
|
+
return { trade, tradeType };
|
|
189084
|
+
}
|
|
189085
|
+
catch (err) {
|
|
189086
|
+
const rubicSdkError = cross_chain_provider_1.CrossChainProvider.parseError(err);
|
|
189087
|
+
return {
|
|
189088
|
+
trade: null,
|
|
189089
|
+
error: rubicSdkError,
|
|
189090
|
+
tradeType: this.type
|
|
189091
|
+
};
|
|
189092
|
+
}
|
|
189093
|
+
}
|
|
189094
|
+
async getRoutePath(fromToken, toToken, path) {
|
|
189095
|
+
if (!path) {
|
|
189096
|
+
return [{ type: 'cross-chain', provider: this.type, path: [fromToken, toToken] }];
|
|
189097
|
+
}
|
|
189098
|
+
return Promise.all(path.map(path => this.getStep(path)));
|
|
189099
|
+
}
|
|
189100
|
+
async getStep(rangoPath) {
|
|
189101
|
+
const type = rangoPath.swapperType === 'DEX' ? 'on-chain' : 'cross-chain';
|
|
189102
|
+
const provider = rango_utils_1.RangoUtils.getTradeTypeForRubic(type, rangoPath.swapper.swapperGroup);
|
|
189103
|
+
const fromBlockchain = rango_utils_1.RangoUtils.getRubicBlockchainByRangoBlockchain(rangoPath.from.blockchain);
|
|
189104
|
+
const toBlockchain = rango_utils_1.RangoUtils.getRubicBlockchainByRangoBlockchain(rangoPath.to.blockchain);
|
|
189105
|
+
const fromTokenAmount = await tokens_1.TokenAmount.createToken({
|
|
189106
|
+
address: rangoPath.from.address || tokens_1.nativeTokensList[fromBlockchain].address,
|
|
189107
|
+
blockchain: fromBlockchain,
|
|
189108
|
+
weiAmount: new bignumber_js_1.default(rangoPath.inputAmount)
|
|
189109
|
+
});
|
|
189110
|
+
const toTokenAmount = await tokens_1.TokenAmount.createToken({
|
|
189111
|
+
address: rangoPath.to.address || tokens_1.nativeTokensList[toBlockchain].address,
|
|
189112
|
+
blockchain: toBlockchain,
|
|
189113
|
+
weiAmount: new bignumber_js_1.default(rangoPath.expectedOutput)
|
|
189114
|
+
});
|
|
189115
|
+
return {
|
|
189116
|
+
provider: provider,
|
|
189117
|
+
type: type,
|
|
189118
|
+
path: [fromTokenAmount, toTokenAmount]
|
|
189119
|
+
};
|
|
189120
|
+
}
|
|
189121
|
+
async getFeeInfo(fromBlockchain, providerAddress, percentFeeToken, useProxy) {
|
|
189122
|
+
return proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getFeeInfo(fromBlockchain, providerAddress, percentFeeToken, useProxy);
|
|
189123
|
+
}
|
|
189124
|
+
}
|
|
189125
|
+
exports.RangoCrossChainProvider = RangoCrossChainProvider;
|
|
189126
|
+
RangoCrossChainProvider.apiKey = rango_api_common_1.RANGO_API_KEY;
|
|
189127
|
+
RangoCrossChainProvider.apiEndpoint = rango_api_common_1.RANGO_API_ENDPOINT;
|
|
189128
|
+
|
|
189129
|
+
|
|
189130
|
+
/***/ }),
|
|
189131
|
+
|
|
189132
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-trade.ts":
|
|
189133
|
+
/*!**********************************************************************************************************!*\
|
|
189134
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/rango-cross-chain-trade.ts ***!
|
|
189135
|
+
\**********************************************************************************************************/
|
|
189136
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
189137
|
+
|
|
189138
|
+
"use strict";
|
|
189139
|
+
|
|
189140
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
189141
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
189142
|
+
};
|
|
189143
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
189144
|
+
exports.RangoCrossChainTrade = void 0;
|
|
189145
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
189146
|
+
const errors_1 = __webpack_require__(/*! ../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
189147
|
+
const blockchains_info_1 = __webpack_require__(/*! ../../../../../core/blockchain/utils/blockchains-info/blockchains-info */ "./src/core/blockchain/utils/blockchains-info/blockchains-info.ts");
|
|
189148
|
+
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");
|
|
189149
|
+
const web3_pure_1 = __webpack_require__(/*! ../../../../../core/blockchain/web3-pure/web3-pure */ "./src/core/blockchain/web3-pure/web3-pure.ts");
|
|
189150
|
+
const injector_1 = __webpack_require__(/*! ../../../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
189151
|
+
const rango_contract_address_1 = __webpack_require__(/*! ../../../../common/providers/rango/constants/rango-contract-address */ "./src/features/common/providers/rango/constants/rango-contract-address.ts");
|
|
189152
|
+
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");
|
|
189153
|
+
const convert_gas_price_1 = __webpack_require__(/*! ../../utils/convert-gas-price */ "./src/features/cross-chain/calculation-manager/utils/convert-gas-price.ts");
|
|
189154
|
+
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");
|
|
189155
|
+
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");
|
|
189156
|
+
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");
|
|
189157
|
+
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");
|
|
189158
|
+
const bridge_type_1 = __webpack_require__(/*! ../common/models/bridge-type */ "./src/features/cross-chain/calculation-manager/providers/common/models/bridge-type.ts");
|
|
189159
|
+
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");
|
|
189160
|
+
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");
|
|
189161
|
+
class RangoCrossChainTrade extends evm_cross_chain_trade_1.EvmCrossChainTrade {
|
|
189162
|
+
/** @internal */
|
|
189163
|
+
static async getGasData({ fromToken, toToken, feeInfo, routePath, swapQueryParams }) {
|
|
189164
|
+
const fromBlockchain = fromToken.blockchain;
|
|
189165
|
+
const walletAddress = swapQueryParams.fromAddress;
|
|
189166
|
+
if (!walletAddress) {
|
|
189167
|
+
return null;
|
|
189168
|
+
}
|
|
189169
|
+
try {
|
|
189170
|
+
let gasLimit;
|
|
189171
|
+
let gasDetails;
|
|
189172
|
+
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(fromBlockchain);
|
|
189173
|
+
const tradeParams = {
|
|
189174
|
+
crossChainTrade: {
|
|
189175
|
+
from: fromToken,
|
|
189176
|
+
to: toToken,
|
|
189177
|
+
toTokenAmountMin: new bignumber_js_1.default(0),
|
|
189178
|
+
feeInfo,
|
|
189179
|
+
gasData: null,
|
|
189180
|
+
priceImpact: fromToken.calculatePriceImpactPercent(toToken) || 0,
|
|
189181
|
+
slippage: swapQueryParams.slippage,
|
|
189182
|
+
swapQueryParams
|
|
189183
|
+
},
|
|
189184
|
+
routePath,
|
|
189185
|
+
providerAddress: swapQueryParams.toAddress
|
|
189186
|
+
};
|
|
189187
|
+
if (feeInfo.rubicProxy?.fixedFee?.amount.gt(0)) {
|
|
189188
|
+
const { contractAddress, contractAbi, methodName, methodArguments, value } = await new RangoCrossChainTrade(tradeParams).getContractParams({
|
|
189189
|
+
receiverAddress: swapQueryParams.toAddress
|
|
189190
|
+
}, true);
|
|
189191
|
+
const [proxyGasLimit, proxyGasDetails] = await Promise.all([
|
|
189192
|
+
web3Public.getEstimatedGas(contractAbi, contractAddress, methodName, methodArguments, walletAddress, value),
|
|
189193
|
+
(0, convert_gas_price_1.convertGasDataToBN)(await injector_1.Injector.gasPriceApi.getGasPrice(fromBlockchain))
|
|
189194
|
+
]);
|
|
189195
|
+
gasLimit = proxyGasLimit;
|
|
189196
|
+
gasDetails = proxyGasDetails;
|
|
189197
|
+
}
|
|
189198
|
+
else {
|
|
189199
|
+
const { data, value, to } = await new RangoCrossChainTrade(tradeParams).getTransactionRequest(undefined, true);
|
|
189200
|
+
const defaultGasLimit = await web3Public.getEstimatedGasByData(walletAddress, to, {
|
|
189201
|
+
data,
|
|
189202
|
+
value
|
|
189203
|
+
});
|
|
189204
|
+
const defaultGasDetails = (0, convert_gas_price_1.convertGasDataToBN)(await injector_1.Injector.gasPriceApi.getGasPrice(fromBlockchain));
|
|
189205
|
+
gasLimit = defaultGasLimit;
|
|
189206
|
+
gasDetails = defaultGasDetails;
|
|
189207
|
+
}
|
|
189208
|
+
if (!gasLimit?.isFinite()) {
|
|
189209
|
+
return null;
|
|
189210
|
+
}
|
|
189211
|
+
const increasedGasLimit = web3_pure_1.Web3Pure.calculateGasMargin(gasLimit, 1.2);
|
|
189212
|
+
return {
|
|
189213
|
+
gasLimit: increasedGasLimit,
|
|
189214
|
+
...gasDetails
|
|
189215
|
+
};
|
|
189216
|
+
}
|
|
189217
|
+
catch (err) {
|
|
189218
|
+
return null;
|
|
189219
|
+
}
|
|
189220
|
+
}
|
|
189221
|
+
get fromBlockchain() {
|
|
189222
|
+
return this.from.blockchain;
|
|
189223
|
+
}
|
|
189224
|
+
get fromContractAddress() {
|
|
189225
|
+
return this.isProxyTrade
|
|
189226
|
+
? rubic_proxy_contract_address_1.rubicProxyContractAddress[this.fromBlockchain].gateway
|
|
189227
|
+
: rango_contract_address_1.RangoContractAddresses[this.fromBlockchain].providerGateway;
|
|
189228
|
+
}
|
|
189229
|
+
get methodName() {
|
|
189230
|
+
return 'startBridgeTokensViaGenericCrossChain';
|
|
189231
|
+
}
|
|
189232
|
+
constructor(params) {
|
|
189233
|
+
super(params.providerAddress, params.routePath);
|
|
189234
|
+
/**ABSTRACT PROPS */
|
|
189235
|
+
this.type = cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.RANGO;
|
|
189236
|
+
this.isAggregator = true;
|
|
189237
|
+
this.onChainSubtype = { from: undefined, to: undefined };
|
|
189238
|
+
this.bridgeType = bridge_type_1.BRIDGE_TYPE.RANGO;
|
|
189239
|
+
this.to = params.crossChainTrade.to;
|
|
189240
|
+
this.from = params.crossChainTrade.from;
|
|
189241
|
+
this.toTokenAmountMin = params.crossChainTrade.toTokenAmountMin;
|
|
189242
|
+
this.feeInfo = params.crossChainTrade.feeInfo;
|
|
189243
|
+
this.gasData = params.crossChainTrade.gasData;
|
|
189244
|
+
this.priceImpact = params.crossChainTrade.priceImpact;
|
|
189245
|
+
this.slippage = params.crossChainTrade.slippage;
|
|
189246
|
+
this.swapQueryParams = params.crossChainTrade.swapQueryParams;
|
|
189247
|
+
}
|
|
189248
|
+
async getContractParams(options, skipAmountChangeCheck = false) {
|
|
189249
|
+
const receiverAddress = options?.receiverAddress || this.walletAddress;
|
|
189250
|
+
const { data, value: providerValue, to: providerRouter } = await this.getTransactionRequest(options.directTransaction, skipAmountChangeCheck);
|
|
189251
|
+
const bridgeData = proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getBridgeData(options, {
|
|
189252
|
+
walletAddress: receiverAddress,
|
|
189253
|
+
fromTokenAmount: this.from,
|
|
189254
|
+
toTokenAmount: this.to,
|
|
189255
|
+
srcChainTrade: null,
|
|
189256
|
+
providerAddress: this.providerAddress,
|
|
189257
|
+
type: `native:${this.type}`,
|
|
189258
|
+
fromAddress: this.walletAddress
|
|
189259
|
+
});
|
|
189260
|
+
const extraNativeFee = this.from.isNative
|
|
189261
|
+
? new bignumber_js_1.default(providerValue).minus(this.from.stringWeiAmount).toFixed()
|
|
189262
|
+
: new bignumber_js_1.default(providerValue).toFixed();
|
|
189263
|
+
const providerData = await proxy_cross_chain_evm_trade_1.ProxyCrossChainEvmTrade.getGenericProviderData(providerRouter, data, this.from.blockchain, providerRouter, extraNativeFee);
|
|
189264
|
+
const methodArguments = [bridgeData, providerData];
|
|
189265
|
+
const value = this.getSwapValue(providerValue);
|
|
189266
|
+
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);
|
|
189267
|
+
const sendingToken = this.from.isNative ? [] : [this.from.address];
|
|
189268
|
+
const sendingAmount = this.from.isNative ? [] : [this.from.stringWeiAmount];
|
|
189269
|
+
return {
|
|
189270
|
+
contractAddress: rubic_proxy_contract_address_1.rubicProxyContractAddress[this.from.blockchain].gateway,
|
|
189271
|
+
contractAbi: gateway_rubic_cross_chain_abi_1.gatewayRubicCrossChainAbi,
|
|
189272
|
+
methodName: 'startViaRubic',
|
|
189273
|
+
methodArguments: [sendingToken, sendingAmount, transactionConfiguration.data],
|
|
189274
|
+
value
|
|
189275
|
+
};
|
|
189276
|
+
}
|
|
189277
|
+
async swapDirect(options = {}) {
|
|
189278
|
+
if (!blockchains_info_1.BlockchainsInfo.isEvmBlockchainName(this.from.blockchain)) {
|
|
189279
|
+
throw new errors_1.RubicSdkError("For non-evm chains use 'getChangenowPostTrade' method");
|
|
189280
|
+
}
|
|
189281
|
+
await this.checkTradeErrors();
|
|
189282
|
+
await this.checkAllowanceAndApprove(options);
|
|
189283
|
+
const { onConfirm, gasLimit, gasPrice, gasPriceOptions } = options;
|
|
189284
|
+
let transactionHash;
|
|
189285
|
+
const onTransactionHash = (hash) => {
|
|
189286
|
+
if (onConfirm) {
|
|
189287
|
+
onConfirm(hash);
|
|
189288
|
+
}
|
|
189289
|
+
transactionHash = hash;
|
|
189290
|
+
};
|
|
189291
|
+
// eslint-disable-next-line no-useless-catch
|
|
189292
|
+
try {
|
|
189293
|
+
const { data, value, to } = await this.getTransactionRequest(options.directTransaction);
|
|
189294
|
+
await this.web3Private.trySendTransaction(to, {
|
|
189295
|
+
data,
|
|
189296
|
+
value,
|
|
189297
|
+
onTransactionHash,
|
|
189298
|
+
gas: gasLimit,
|
|
189299
|
+
gasPrice,
|
|
189300
|
+
gasPriceOptions
|
|
189301
|
+
});
|
|
189302
|
+
return transactionHash;
|
|
189303
|
+
}
|
|
189304
|
+
catch (err) {
|
|
189305
|
+
throw err;
|
|
189306
|
+
}
|
|
189307
|
+
}
|
|
189308
|
+
async getTransactionRequest(transactionConfig, skipAmountChangeCheck = false) {
|
|
189309
|
+
if (transactionConfig) {
|
|
189310
|
+
return {
|
|
189311
|
+
data: transactionConfig.data,
|
|
189312
|
+
to: transactionConfig.to,
|
|
189313
|
+
value: transactionConfig.value
|
|
189314
|
+
};
|
|
189315
|
+
}
|
|
189316
|
+
const { route, tx, error, requestId } = await rango_cross_chain_api_service_1.RangoCrossChainApiService.getSwapTransaction(this.swapQueryParams);
|
|
189317
|
+
this.rangoRequestId = requestId;
|
|
189318
|
+
if (!route || !tx) {
|
|
189319
|
+
throw new errors_1.RubicSdkError('Invalid data after sending swap request. Error text:' + error);
|
|
189320
|
+
}
|
|
189321
|
+
const config = {
|
|
189322
|
+
data: tx.txData,
|
|
189323
|
+
value: tx.value || '0',
|
|
189324
|
+
to: tx.txTo
|
|
189325
|
+
};
|
|
189326
|
+
if (!skipAmountChangeCheck) {
|
|
189327
|
+
evm_cross_chain_trade_1.EvmCrossChainTrade.checkAmountChange(config, route.outputAmount, this.to.stringWeiAmount);
|
|
189328
|
+
}
|
|
189329
|
+
return config;
|
|
189330
|
+
}
|
|
189331
|
+
getTradeInfo() {
|
|
189332
|
+
return {
|
|
189333
|
+
estimatedGas: this.estimatedGas,
|
|
189334
|
+
feeInfo: this.feeInfo,
|
|
189335
|
+
priceImpact: this.priceImpact || null,
|
|
189336
|
+
slippage: this.slippage * 100,
|
|
189337
|
+
routePath: this.routePath
|
|
189338
|
+
};
|
|
189339
|
+
}
|
|
189340
|
+
/**
|
|
189341
|
+
* @deprecated
|
|
189342
|
+
*/
|
|
189343
|
+
getTradeAmountRatio(fromUsd) {
|
|
189344
|
+
return fromUsd;
|
|
189345
|
+
}
|
|
189346
|
+
}
|
|
189347
|
+
exports.RangoCrossChainTrade = RangoCrossChainTrade;
|
|
189348
|
+
|
|
189349
|
+
|
|
189350
|
+
/***/ }),
|
|
189351
|
+
|
|
189352
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service.ts":
|
|
189353
|
+
/*!*************************************************************************************************************************!*\
|
|
189354
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-api-service.ts ***!
|
|
189355
|
+
\*************************************************************************************************************************/
|
|
189356
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
189357
|
+
|
|
189358
|
+
"use strict";
|
|
189359
|
+
|
|
189360
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
189361
|
+
exports.RangoCrossChainApiService = void 0;
|
|
189362
|
+
const errors_1 = __webpack_require__(/*! ../../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
189363
|
+
const injector_1 = __webpack_require__(/*! ../../../../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
189364
|
+
const rango_api_common_1 = __webpack_require__(/*! ../../../../../common/providers/rango/constants/rango-api-common */ "./src/features/common/providers/rango/constants/rango-api-common.ts");
|
|
189365
|
+
class RangoCrossChainApiService {
|
|
189366
|
+
static async getBestRoute(params) {
|
|
189367
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/quote`, {
|
|
189368
|
+
params: params
|
|
189369
|
+
});
|
|
189370
|
+
if (!res.route || res.error) {
|
|
189371
|
+
throw new errors_1.RubicSdkError(res.error ?? 'No available routes in rango.');
|
|
189372
|
+
}
|
|
189373
|
+
return res;
|
|
189374
|
+
}
|
|
189375
|
+
static async getSwapTransaction(params) {
|
|
189376
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/swap`, { params: params });
|
|
189377
|
+
if (!res.route || res.error) {
|
|
189378
|
+
throw new errors_1.RubicSdkError(res.error ?? 'No available routes in rango.');
|
|
189379
|
+
}
|
|
189380
|
+
return res;
|
|
189381
|
+
}
|
|
189382
|
+
/**
|
|
189383
|
+
* @description Get transaction status data
|
|
189384
|
+
*/
|
|
189385
|
+
static async getTxStatus(params) {
|
|
189386
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/status`, { params: params });
|
|
189387
|
+
if (res.error || !res.bridgeData || !res.status) {
|
|
189388
|
+
throw new errors_1.RubicSdkError("Can't get status, res has error or null data in getTxStatus method");
|
|
189389
|
+
}
|
|
189390
|
+
return res;
|
|
189391
|
+
}
|
|
189392
|
+
}
|
|
189393
|
+
exports.RangoCrossChainApiService = RangoCrossChainApiService;
|
|
189394
|
+
|
|
189395
|
+
|
|
189396
|
+
/***/ }),
|
|
189397
|
+
|
|
189398
|
+
/***/ "./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-params-parser.ts":
|
|
189399
|
+
/*!***************************************************************************************************************************!*\
|
|
189400
|
+
!*** ./src/features/cross-chain/calculation-manager/providers/rango-provider/services/rango-cross-chain-params-parser.ts ***!
|
|
189401
|
+
\***************************************************************************************************************************/
|
|
189402
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
189403
|
+
|
|
189404
|
+
"use strict";
|
|
189405
|
+
|
|
189406
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
189407
|
+
exports.RangoCrossChainParser = void 0;
|
|
189408
|
+
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");
|
|
189409
|
+
class RangoCrossChainParser {
|
|
189410
|
+
static async getTradeConstructorParams({ feeInfo, fromToken, options, routePath, swapQueryParams, toToken, toTokenAmountMin }) {
|
|
189411
|
+
const gasData = options.gasCalculation === 'enabled'
|
|
189412
|
+
? await rango_cross_chain_trade_1.RangoCrossChainTrade.getGasData({
|
|
189413
|
+
fromToken,
|
|
189414
|
+
toToken,
|
|
189415
|
+
swapQueryParams,
|
|
189416
|
+
feeInfo,
|
|
189417
|
+
routePath
|
|
189418
|
+
})
|
|
189419
|
+
: null;
|
|
189420
|
+
const priceImpact = fromToken.calculatePriceImpactPercent(toToken);
|
|
189421
|
+
const slippage = options.slippageTolerance;
|
|
189422
|
+
const crossChainTrade = {
|
|
189423
|
+
from: fromToken,
|
|
189424
|
+
to: toToken,
|
|
189425
|
+
gasData,
|
|
189426
|
+
toTokenAmountMin,
|
|
189427
|
+
priceImpact,
|
|
189428
|
+
slippage,
|
|
189429
|
+
feeInfo,
|
|
189430
|
+
swapQueryParams
|
|
189431
|
+
};
|
|
189432
|
+
const providerAddress = options.providerAddress;
|
|
189433
|
+
return {
|
|
189434
|
+
crossChainTrade,
|
|
189435
|
+
providerAddress,
|
|
189436
|
+
routePath
|
|
189437
|
+
};
|
|
189438
|
+
}
|
|
189439
|
+
}
|
|
189440
|
+
exports.RangoCrossChainParser = RangoCrossChainParser;
|
|
189441
|
+
|
|
189442
|
+
|
|
186106
189443
|
/***/ }),
|
|
186107
189444
|
|
|
186108
189445
|
/***/ "./src/features/cross-chain/calculation-manager/providers/scroll-bridge/constants/l1-erc20-scroll-gateway-abi.ts":
|
|
@@ -188966,7 +192303,7 @@ class SymbiosisCrossChainProvider extends cross_chain_provider_1.CrossChainProvi
|
|
|
188966
192303
|
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
192304
|
const to = new tokens_1.PriceTokenAmount({
|
|
188968
192305
|
...toToken.asStruct,
|
|
188969
|
-
tokenAmount:
|
|
192306
|
+
tokenAmount: web3_pure_1.Web3Pure.fromWei(tokenAmountOut.amount, tokenAmountOut.decimals)
|
|
188970
192307
|
});
|
|
188971
192308
|
const gasData = options.gasCalculation === 'enabled'
|
|
188972
192309
|
? await symbiosis_cross_chain_trade_1.SymbiosisCrossChainTrade.getGasData(from, to, swapParams, feeInfo, approveTo, options.providerAddress, options.receiverAddress)
|
|
@@ -190678,6 +194015,8 @@ const blockchain_id_1 = __webpack_require__(/*! ../../../core/blockchain/utils/b
|
|
|
190678
194015
|
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
194016
|
const injector_1 = __webpack_require__(/*! ../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
190680
194017
|
const changenow_api_key_1 = __webpack_require__(/*! ../../common/providers/changenow/constants/changenow-api-key */ "./src/features/common/providers/changenow/constants/changenow-api-key.ts");
|
|
194018
|
+
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");
|
|
194019
|
+
const rango_parser_1 = __webpack_require__(/*! ../../common/providers/rango/services/rango-parser */ "./src/features/common/providers/rango/services/rango-parser.ts");
|
|
190681
194020
|
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
194021
|
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
194022
|
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 +194032,7 @@ const multichain_status_mapping_1 = __webpack_require__(/*! ./constants/multicha
|
|
|
190693
194032
|
const changenow_api_response_1 = __webpack_require__(/*! ./models/changenow-api-response */ "./src/features/cross-chain/status-manager/models/changenow-api-response.ts");
|
|
190694
194033
|
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
194034
|
const statuses_api_1 = __webpack_require__(/*! ./models/statuses-api */ "./src/features/cross-chain/status-manager/models/statuses-api.ts");
|
|
194035
|
+
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
194036
|
const taiko_api_response_1 = __webpack_require__(/*! ./models/taiko-api-response */ "./src/features/cross-chain/status-manager/models/taiko-api-response.ts");
|
|
190697
194037
|
/**
|
|
190698
194038
|
* Contains methods for getting cross-chain trade statuses.
|
|
@@ -190713,7 +194053,9 @@ class CrossChainStatusManager {
|
|
|
190713
194053
|
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.ARBITRUM]: this.getArbitrumBridgeDstSwapStatus,
|
|
190714
194054
|
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.SQUIDROUTER]: this.getSquidrouterDstSwapStatus,
|
|
190715
194055
|
[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
|
|
194056
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.TAIKO_BRIDGE]: this.getTaikoBridgeDstSwapStatus,
|
|
194057
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.RANGO]: this.getRangoDstSwapStatus,
|
|
194058
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.PULSE_CHAIN_BRIDGE]: this.getPulseChainDstSwapStatus
|
|
190717
194059
|
};
|
|
190718
194060
|
}
|
|
190719
194061
|
/**
|
|
@@ -191174,6 +194516,39 @@ class CrossChainStatusManager {
|
|
|
191174
194516
|
}
|
|
191175
194517
|
return { status: tx_status_1.TX_STATUS.PENDING, hash: null };
|
|
191176
194518
|
}
|
|
194519
|
+
async getPulseChainDstSwapStatus(data) {
|
|
194520
|
+
try {
|
|
194521
|
+
const network = data.fromBlockchain === blockchain_name_1.BLOCKCHAIN_NAME.ETHEREUM ? 'ethereum' : 'ethereum';
|
|
194522
|
+
const result = await injector_1.Injector.httpClient.get(`https://dev-api.rubic.exchange/api/v2/trades/crosschain/pulsechain_bridge_status?tx_hash=${data.srcTxHash}&network=${network}`);
|
|
194523
|
+
if (result.status === 'SUCCESS') {
|
|
194524
|
+
return { status: tx_status_1.TX_STATUS.SUCCESS, hash: result.dest_transaction };
|
|
194525
|
+
}
|
|
194526
|
+
return { status: tx_status_1.TX_STATUS.PENDING, hash: null };
|
|
194527
|
+
}
|
|
194528
|
+
catch {
|
|
194529
|
+
return { status: tx_status_1.TX_STATUS.PENDING, hash: null };
|
|
194530
|
+
}
|
|
194531
|
+
}
|
|
194532
|
+
async getRangoDstSwapStatus(data) {
|
|
194533
|
+
if (!data.rangoRequestId) {
|
|
194534
|
+
throw new errors_1.RubicSdkError('Must provide rangoRequestId');
|
|
194535
|
+
}
|
|
194536
|
+
const { srcTxHash, rangoRequestId } = data;
|
|
194537
|
+
const params = rango_parser_1.RangoCommonParser.getTxStatusQueryParams(srcTxHash, rangoRequestId);
|
|
194538
|
+
const { bridgeData, status: txStatus } = await rango_cross_chain_api_service_1.RangoCrossChainApiService.getTxStatus(params);
|
|
194539
|
+
let status;
|
|
194540
|
+
if (txStatus === rango_api_status_types_1.RANGO_SWAP_STATUS.SUCCESS) {
|
|
194541
|
+
status = tx_status_1.TX_STATUS.SUCCESS;
|
|
194542
|
+
}
|
|
194543
|
+
else if (txStatus === rango_api_status_types_1.RANGO_SWAP_STATUS.RUNNING) {
|
|
194544
|
+
status = tx_status_1.TX_STATUS.PENDING;
|
|
194545
|
+
}
|
|
194546
|
+
else {
|
|
194547
|
+
status = tx_status_1.TX_STATUS.FAIL;
|
|
194548
|
+
}
|
|
194549
|
+
const hash = bridgeData.destTxHash;
|
|
194550
|
+
return { hash, status };
|
|
194551
|
+
}
|
|
191177
194552
|
}
|
|
191178
194553
|
exports.CrossChainStatusManager = CrossChainStatusManager;
|
|
191179
194554
|
|
|
@@ -191265,6 +194640,19 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
191265
194640
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
191266
194641
|
|
|
191267
194642
|
|
|
194643
|
+
/***/ }),
|
|
194644
|
+
|
|
194645
|
+
/***/ "./src/features/cross-chain/status-manager/models/rubic-backend-ps-status.ts":
|
|
194646
|
+
/*!***********************************************************************************!*\
|
|
194647
|
+
!*** ./src/features/cross-chain/status-manager/models/rubic-backend-ps-status.ts ***!
|
|
194648
|
+
\***********************************************************************************/
|
|
194649
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
194650
|
+
|
|
194651
|
+
"use strict";
|
|
194652
|
+
|
|
194653
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
194654
|
+
|
|
194655
|
+
|
|
191268
194656
|
/***/ }),
|
|
191269
194657
|
|
|
191270
194658
|
/***/ "./src/features/cross-chain/status-manager/models/scroll-api-response.ts":
|
|
@@ -192859,6 +196247,7 @@ const on_chain_proxy_service_1 = __webpack_require__(/*! ./providers/common/on-c
|
|
|
192859
196247
|
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
196248
|
const lifi_provider_1 = __webpack_require__(/*! ./providers/lifi/lifi-provider */ "./src/features/on-chain/calculation-manager/providers/lifi/lifi-provider.ts");
|
|
192861
196249
|
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");
|
|
196250
|
+
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
196251
|
/**
|
|
192863
196252
|
* Contains methods to calculate on-chain trades.
|
|
192864
196253
|
*/
|
|
@@ -192871,6 +196260,7 @@ class OnChainManager {
|
|
|
192871
196260
|
this.tradeProviders = typed_trade_providers_1.typedTradeProviders;
|
|
192872
196261
|
this.lifiProvider = new lifi_provider_1.LifiProvider();
|
|
192873
196262
|
this.openOceanProvider = new open_ocean_provider_1.OpenOceanProvider();
|
|
196263
|
+
this.rangoProvider = new rango_on_chain_provider_1.RangoOnChainProvider();
|
|
192874
196264
|
this.deflationTokenManager = new deflation_token_manager_1.DeflationTokenManager();
|
|
192875
196265
|
}
|
|
192876
196266
|
calculateTradeReactively(fromToken, fromAmount, toToken, options) {
|
|
@@ -192892,8 +196282,18 @@ class OnChainManager {
|
|
|
192892
196282
|
.includes(on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OPEN_OCEAN)
|
|
192893
196283
|
? []
|
|
192894
196284
|
: [this.getOpenOceanCalculationPromise(from, to, fullOptions)];
|
|
192895
|
-
const
|
|
192896
|
-
|
|
196285
|
+
const rangoTrades = fullOptions.disabledProviders
|
|
196286
|
+
.map(provider => provider.toUpperCase())
|
|
196287
|
+
.includes(on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO)
|
|
196288
|
+
? []
|
|
196289
|
+
: [this.getRangoCalculationPromise(from, to, fullOptions)];
|
|
196290
|
+
const totalTrades = [
|
|
196291
|
+
...nativeProviders,
|
|
196292
|
+
...lifiTrades,
|
|
196293
|
+
...openOceanTrades,
|
|
196294
|
+
...rangoTrades
|
|
196295
|
+
].length;
|
|
196296
|
+
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
196297
|
total: totalTrades,
|
|
192898
196298
|
calculated: index + 1,
|
|
192899
196299
|
wrappedTrade: wrappedTrade || null
|
|
@@ -193111,6 +196511,26 @@ class OnChainManager {
|
|
|
193111
196511
|
};
|
|
193112
196512
|
}
|
|
193113
196513
|
}
|
|
196514
|
+
async getRangoCalculationPromise(from, to, options) {
|
|
196515
|
+
try {
|
|
196516
|
+
const wrappedTrade = await (0, p_timeout_1.default)(this.rangoProvider.calculate(from, to, options), options.timeout);
|
|
196517
|
+
if ('error' in wrappedTrade) {
|
|
196518
|
+
throw wrappedTrade.error;
|
|
196519
|
+
}
|
|
196520
|
+
if (!wrappedTrade) {
|
|
196521
|
+
return null;
|
|
196522
|
+
}
|
|
196523
|
+
return { trade: wrappedTrade, tradeType: on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO };
|
|
196524
|
+
}
|
|
196525
|
+
catch (err) {
|
|
196526
|
+
console.debug(`[RUBIC_SDK] Trade calculation error occurred for ${on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO} trade provider.`, err);
|
|
196527
|
+
return {
|
|
196528
|
+
trade: null,
|
|
196529
|
+
tradeType: on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO,
|
|
196530
|
+
error: cross_chain_provider_1.CrossChainProvider.parseError(err)
|
|
196531
|
+
};
|
|
196532
|
+
}
|
|
196533
|
+
}
|
|
193114
196534
|
getWrappedWrapTrade(fromToken, toToken, fullOptions) {
|
|
193115
196535
|
const wrappedTrade = {
|
|
193116
196536
|
error: undefined,
|
|
@@ -193263,6 +196683,7 @@ exports.ON_CHAIN_TRADE_TYPE = void 0;
|
|
|
193263
196683
|
* List of on-chain trade types.
|
|
193264
196684
|
*/
|
|
193265
196685
|
exports.ON_CHAIN_TRADE_TYPE = {
|
|
196686
|
+
'10K_SWAP': '10K_SWAP',
|
|
193266
196687
|
AERODROME: 'AERODROME',
|
|
193267
196688
|
ACRYPTOS: 'ACRYPTOS',
|
|
193268
196689
|
ALDRIN_EXCHANGE: 'ALDRIN_EXCHANGE',
|
|
@@ -193273,12 +196694,14 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193273
196694
|
ARTH_SWAP: 'ARTH_SWAP',
|
|
193274
196695
|
ASTRO_SWAP: 'ASTRO_SWAP',
|
|
193275
196696
|
AURORA_SWAP: 'AURORA_SWAP',
|
|
196697
|
+
AVNU: 'AVNU',
|
|
193276
196698
|
BABY_SWAP: 'BABY_SWAP',
|
|
193277
196699
|
BALANCER: 'BALANCER',
|
|
193278
196700
|
BASE_SWAP: 'BASE_SWAP',
|
|
193279
196701
|
BEAM_SWAP: 'BEAM_SWAP',
|
|
193280
196702
|
BI_SWAP: 'BI_SWAP',
|
|
193281
196703
|
BRIDGERS: 'BRIDGERS',
|
|
196704
|
+
CHERRY_SWAP: 'CHERRY_SWAP',
|
|
193282
196705
|
CLAIM_SWAP: 'CLAIM_SWAP',
|
|
193283
196706
|
CREMA_FINANCE: 'CREMA_FINANCE',
|
|
193284
196707
|
CRO_SWAP: 'CRO_SWAP',
|
|
@@ -193292,7 +196715,9 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193292
196715
|
DFYN: 'DFYN',
|
|
193293
196716
|
DODO: 'DODO',
|
|
193294
196717
|
DYSTOPIA: 'DYSTOPIA',
|
|
196718
|
+
ECHO_DEX: 'ECHO_DEX',
|
|
193295
196719
|
ELK: 'ELK',
|
|
196720
|
+
FINKUJIRA: 'FINKUJIRA',
|
|
193296
196721
|
FUSIONX: 'FUSIONX',
|
|
193297
196722
|
HONEY_SWAP: 'HONEY_SWAP',
|
|
193298
196723
|
HORIZONDEX: 'HORIZONDEX',
|
|
@@ -193311,6 +196736,7 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193311
196736
|
MOJITO_SWAP: 'MOJITO_SWAP',
|
|
193312
196737
|
MUTE_SWAP: 'MUTE_SWAP',
|
|
193313
196738
|
NET_SWAP: 'NET_SWAP',
|
|
196739
|
+
OKC_SWAP: 'OKC_SWAP',
|
|
193314
196740
|
ONE_INCH: 'ONE_INCH',
|
|
193315
196741
|
ONE_MOON: 'ONE_MOON',
|
|
193316
196742
|
ONE_SOL: 'ONE_SOL',
|
|
@@ -193320,7 +196746,9 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193320
196746
|
ORCA_SWAP: 'ORCA_SWAP',
|
|
193321
196747
|
OSMOSIS_SWAP: 'OSMOSIS_SWAP',
|
|
193322
196748
|
PANCAKE_SWAP: 'PANCAKE_SWAP',
|
|
196749
|
+
PANCAKE_SWAP_V3: 'PANCAKE_SWAP_V3',
|
|
193323
196750
|
PANGOLIN: 'PANGOLIN',
|
|
196751
|
+
PARA_SWAP: 'PARA_SWAP',
|
|
193324
196752
|
PEGASYS: 'PEGASYS',
|
|
193325
196753
|
PHOTON_SWAP: 'PHOTON_SWAP',
|
|
193326
196754
|
POLYDEX: 'POLYDEX',
|
|
@@ -193328,6 +196756,7 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193328
196756
|
QUICK_SWAP_V3: 'QUICK_SWAP_V3',
|
|
193329
196757
|
PULSEX_V1: 'PULSEX_V1',
|
|
193330
196758
|
PULSEX_V2: 'PULSEX_V2',
|
|
196759
|
+
RANGO: 'RANGO',
|
|
193331
196760
|
RAYDIUM: 'RAYDIUM',
|
|
193332
196761
|
REF_FINANCE: 'REF_FINANCE',
|
|
193333
196762
|
REN_BTC: 'REN_BTC',
|
|
@@ -193336,14 +196765,18 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193336
196765
|
SERUM: 'SERUM',
|
|
193337
196766
|
SHIBA_SWAP: 'SHIBA_SWAP',
|
|
193338
196767
|
SMOOTHY: 'SMOOTHY',
|
|
196768
|
+
SOLANA: 'SOLANA',
|
|
193339
196769
|
SOLAR_BEAM: 'SOLAR_BEAM',
|
|
196770
|
+
SPACEFI_SWAP: 'SPACEFI_SWAP',
|
|
193340
196771
|
SPIRIT_SWAP: 'SPIRIT_SWAP',
|
|
193341
196772
|
SPL_TOKEN_SWAP: 'SPL_TOKEN_SWAP',
|
|
193342
196773
|
SPOOKY_SWAP: 'SPOOKY_SWAP',
|
|
193343
196774
|
SOUL_SWAP: 'SOUL_SWAP',
|
|
193344
196775
|
STELLA_SWAP: 'STELLA_SWAP',
|
|
196776
|
+
SUN_SWAP: 'SUN_SWAP',
|
|
193345
196777
|
SURFDEX: 'SURFDEX',
|
|
193346
196778
|
SUSHI_SWAP: 'SUSHI_SWAP',
|
|
196779
|
+
SYNAPSE: 'SYNAPSE',
|
|
193347
196780
|
SYNC_SWAP: 'SYNC_SWAP',
|
|
193348
196781
|
SYMBIOSIS_SWAP: 'SYMBIOSIS_SWAP',
|
|
193349
196782
|
TRADER: 'TRADER',
|
|
@@ -193362,6 +196795,7 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
193362
196795
|
WAULT_SWAP: 'WAULT_SWAP',
|
|
193363
196796
|
WOO_FI: 'WOO_FI',
|
|
193364
196797
|
WRAPPED: 'WRAPPED',
|
|
196798
|
+
WYND: 'WYND',
|
|
193365
196799
|
YUZU_SWAP: 'YUZU_SWAP',
|
|
193366
196800
|
XY_DEX: 'XY_DEX',
|
|
193367
196801
|
ZAPPY: 'ZAPPY',
|
|
@@ -214082,6 +217516,333 @@ exports.OpenOceanTrade = OpenOceanTrade;
|
|
|
214082
217516
|
OpenOceanTrade.nativeAddress = '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE';
|
|
214083
217517
|
|
|
214084
217518
|
|
|
217519
|
+
/***/ }),
|
|
217520
|
+
|
|
217521
|
+
/***/ "./src/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-disabled-providers.ts":
|
|
217522
|
+
/*!***************************************************************************************************************!*\
|
|
217523
|
+
!*** ./src/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-disabled-providers.ts ***!
|
|
217524
|
+
\***************************************************************************************************************/
|
|
217525
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
217526
|
+
|
|
217527
|
+
"use strict";
|
|
217528
|
+
|
|
217529
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
217530
|
+
exports.rangoOnChainDisabledProviders = void 0;
|
|
217531
|
+
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");
|
|
217532
|
+
exports.rangoOnChainDisabledProviders = [
|
|
217533
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OSMOSIS_SWAP,
|
|
217534
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OOLONG_SWAP,
|
|
217535
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE['10K_SWAP'],
|
|
217536
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.FINKUJIRA,
|
|
217537
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SOLANA,
|
|
217538
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.JUPITER,
|
|
217539
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SOLAR_BEAM,
|
|
217540
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.WYND,
|
|
217541
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SUN_SWAP,
|
|
217542
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.MDEX,
|
|
217543
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.BEAM_SWAP,
|
|
217544
|
+
on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OKC_SWAP
|
|
217545
|
+
];
|
|
217546
|
+
|
|
217547
|
+
|
|
217548
|
+
/***/ }),
|
|
217549
|
+
|
|
217550
|
+
/***/ "./src/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-trade-types.ts":
|
|
217551
|
+
/*!********************************************************************************************************!*\
|
|
217552
|
+
!*** ./src/features/on-chain/calculation-manager/providers/rango/models/rango-on-chain-trade-types.ts ***!
|
|
217553
|
+
\********************************************************************************************************/
|
|
217554
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
217555
|
+
|
|
217556
|
+
"use strict";
|
|
217557
|
+
|
|
217558
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
217559
|
+
|
|
217560
|
+
|
|
217561
|
+
/***/ }),
|
|
217562
|
+
|
|
217563
|
+
/***/ "./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-provider.ts":
|
|
217564
|
+
/*!**********************************************************************************************!*\
|
|
217565
|
+
!*** ./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-provider.ts ***!
|
|
217566
|
+
\**********************************************************************************************/
|
|
217567
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
217568
|
+
|
|
217569
|
+
"use strict";
|
|
217570
|
+
|
|
217571
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
217572
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
217573
|
+
};
|
|
217574
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
217575
|
+
exports.RangoOnChainProvider = void 0;
|
|
217576
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
217577
|
+
const errors_1 = __webpack_require__(/*! ../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
217578
|
+
const tokens_1 = __webpack_require__(/*! ../../../../../common/tokens */ "./src/common/tokens/index.ts");
|
|
217579
|
+
const rango_supported_blockchains_1 = __webpack_require__(/*! ../../../../common/providers/rango/models/rango-supported-blockchains */ "./src/features/common/providers/rango/models/rango-supported-blockchains.ts");
|
|
217580
|
+
const rango_parser_1 = __webpack_require__(/*! ../../../../common/providers/rango/services/rango-parser */ "./src/features/common/providers/rango/services/rango-parser.ts");
|
|
217581
|
+
const get_from_without_fee_1 = __webpack_require__(/*! ../../../../common/utils/get-from-without-fee */ "./src/features/common/utils/get-from-without-fee.ts");
|
|
217582
|
+
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");
|
|
217583
|
+
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");
|
|
217584
|
+
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");
|
|
217585
|
+
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");
|
|
217586
|
+
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");
|
|
217587
|
+
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");
|
|
217588
|
+
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");
|
|
217589
|
+
class RangoOnChainProvider {
|
|
217590
|
+
constructor() {
|
|
217591
|
+
this.onChainProxyService = new on_chain_proxy_service_1.OnChainProxyService();
|
|
217592
|
+
}
|
|
217593
|
+
isSupportedBlockchain(blockchainName) {
|
|
217594
|
+
return rango_supported_blockchains_1.rangoSupportedBlockchains.some(chain => chain === blockchainName);
|
|
217595
|
+
}
|
|
217596
|
+
async calculate(from, toToken, options) {
|
|
217597
|
+
if (!this.isSupportedBlockchain(from.blockchain)) {
|
|
217598
|
+
throw new errors_1.RubicSdkError(`Rango doesn't support ${from.blockchain} chain!`);
|
|
217599
|
+
}
|
|
217600
|
+
try {
|
|
217601
|
+
const { fromWithoutFee, proxyFeeInfo } = await this.handleProxyContract(from, options);
|
|
217602
|
+
const path = this.getRoutePath(from, toToken);
|
|
217603
|
+
const swapParams = await rango_parser_1.RangoCommonParser.getSwapQueryParams(fromWithoutFee, toToken, {
|
|
217604
|
+
...options,
|
|
217605
|
+
swapperGroups: rango_on_chain_disabled_providers_1.rangoOnChainDisabledProviders
|
|
217606
|
+
});
|
|
217607
|
+
const { route, tx } = await rango_on_chain_api_service_1.RangoOnChainApiService.getSwapTransaction(swapParams);
|
|
217608
|
+
const { outputAmountMin, outputAmount } = route;
|
|
217609
|
+
const { approveTo: providerGateway } = tx;
|
|
217610
|
+
const to = new tokens_1.PriceTokenAmount({
|
|
217611
|
+
...toToken.asStruct,
|
|
217612
|
+
weiAmount: new bignumber_js_1.default(outputAmount)
|
|
217613
|
+
});
|
|
217614
|
+
const toTokenWeiAmountMin = new bignumber_js_1.default(outputAmountMin);
|
|
217615
|
+
const tradeStruct = {
|
|
217616
|
+
from,
|
|
217617
|
+
to,
|
|
217618
|
+
fromWithoutFee,
|
|
217619
|
+
proxyFeeInfo,
|
|
217620
|
+
toTokenWeiAmountMin,
|
|
217621
|
+
gasFeeInfo: {
|
|
217622
|
+
gasLimit: undefined
|
|
217623
|
+
},
|
|
217624
|
+
slippageTolerance: options.slippageTolerance,
|
|
217625
|
+
useProxy: options.useProxy,
|
|
217626
|
+
withDeflation: options.withDeflation,
|
|
217627
|
+
path
|
|
217628
|
+
};
|
|
217629
|
+
const gasFeeInfo = options.gasCalculation === 'calculate'
|
|
217630
|
+
? await this.getGasFeeInfo(tradeStruct, providerGateway)
|
|
217631
|
+
: null;
|
|
217632
|
+
return new rango_on_chain_trade_1.RangoOnChainTrade({
|
|
217633
|
+
...tradeStruct,
|
|
217634
|
+
gasFeeInfo
|
|
217635
|
+
}, options.providerAddress, providerGateway);
|
|
217636
|
+
}
|
|
217637
|
+
catch (err) {
|
|
217638
|
+
return {
|
|
217639
|
+
type: on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO,
|
|
217640
|
+
error: err
|
|
217641
|
+
};
|
|
217642
|
+
}
|
|
217643
|
+
}
|
|
217644
|
+
async handleProxyContract(from, fullOptions) {
|
|
217645
|
+
let fromWithoutFee;
|
|
217646
|
+
let proxyFeeInfo;
|
|
217647
|
+
if (fullOptions.useProxy) {
|
|
217648
|
+
proxyFeeInfo = await this.onChainProxyService.getFeeInfo(from, fullOptions.providerAddress);
|
|
217649
|
+
fromWithoutFee = (0, get_from_without_fee_1.getFromWithoutFee)(from, proxyFeeInfo.platformFee.percent);
|
|
217650
|
+
}
|
|
217651
|
+
else {
|
|
217652
|
+
fromWithoutFee = from;
|
|
217653
|
+
}
|
|
217654
|
+
return {
|
|
217655
|
+
fromWithoutFee,
|
|
217656
|
+
proxyFeeInfo
|
|
217657
|
+
};
|
|
217658
|
+
}
|
|
217659
|
+
async getGasFeeInfo(tradeStruct, providerGateway) {
|
|
217660
|
+
try {
|
|
217661
|
+
const gasPriceInfo = await (0, get_gas_price_info_1.getGasPriceInfo)(tradeStruct.from.blockchain);
|
|
217662
|
+
const gasLimit = await rango_on_chain_trade_1.RangoOnChainTrade.getGasLimit(tradeStruct, providerGateway);
|
|
217663
|
+
return (0, get_gas_fee_info_1.getGasFeeInfo)(gasLimit, gasPriceInfo);
|
|
217664
|
+
}
|
|
217665
|
+
catch {
|
|
217666
|
+
return null;
|
|
217667
|
+
}
|
|
217668
|
+
}
|
|
217669
|
+
getRoutePath(from, to) {
|
|
217670
|
+
return [from, to];
|
|
217671
|
+
}
|
|
217672
|
+
}
|
|
217673
|
+
exports.RangoOnChainProvider = RangoOnChainProvider;
|
|
217674
|
+
|
|
217675
|
+
|
|
217676
|
+
/***/ }),
|
|
217677
|
+
|
|
217678
|
+
/***/ "./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-trade.ts":
|
|
217679
|
+
/*!*******************************************************************************************!*\
|
|
217680
|
+
!*** ./src/features/on-chain/calculation-manager/providers/rango/rango-on-chain-trade.ts ***!
|
|
217681
|
+
\*******************************************************************************************/
|
|
217682
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
217683
|
+
|
|
217684
|
+
"use strict";
|
|
217685
|
+
|
|
217686
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
217687
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
217688
|
+
};
|
|
217689
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
217690
|
+
exports.RangoOnChainTrade = void 0;
|
|
217691
|
+
const bignumber_js_1 = __importDefault(__webpack_require__(/*! bignumber.js */ "./node_modules/bignumber.js/bignumber.js"));
|
|
217692
|
+
const errors_1 = __webpack_require__(/*! ../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
217693
|
+
const tokens_1 = __webpack_require__(/*! ../../../../../common/tokens */ "./src/common/tokens/index.ts");
|
|
217694
|
+
const errors_2 = __webpack_require__(/*! ../../../../../common/utils/errors */ "./src/common/utils/errors.ts");
|
|
217695
|
+
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");
|
|
217696
|
+
const injector_1 = __webpack_require__(/*! ../../../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
217697
|
+
const rango_parser_1 = __webpack_require__(/*! ../../../../common/providers/rango/services/rango-parser */ "./src/features/common/providers/rango/services/rango-parser.ts");
|
|
217698
|
+
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");
|
|
217699
|
+
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");
|
|
217700
|
+
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");
|
|
217701
|
+
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");
|
|
217702
|
+
class RangoOnChainTrade extends evm_on_chain_trade_1.EvmOnChainTrade {
|
|
217703
|
+
/* @internal */
|
|
217704
|
+
static async getGasLimit(tradeStruct, providerGateway) {
|
|
217705
|
+
const fromBlockchain = tradeStruct.from.blockchain;
|
|
217706
|
+
const walletAddress = injector_1.Injector.web3PrivateService.getWeb3PrivateByBlockchain(fromBlockchain).address;
|
|
217707
|
+
if (!walletAddress) {
|
|
217708
|
+
return null;
|
|
217709
|
+
}
|
|
217710
|
+
const rangoTrade = new RangoOnChainTrade(tradeStruct, evm_web3_pure_1.EvmWeb3Pure.EMPTY_ADDRESS, providerGateway);
|
|
217711
|
+
try {
|
|
217712
|
+
const transactionConfig = await rangoTrade.encode({ fromAddress: walletAddress });
|
|
217713
|
+
const web3Public = injector_1.Injector.web3PublicService.getWeb3Public(fromBlockchain);
|
|
217714
|
+
const gasLimit = (await web3Public.batchEstimatedGas(walletAddress, [transactionConfig]))[0];
|
|
217715
|
+
if (gasLimit?.isFinite()) {
|
|
217716
|
+
return gasLimit;
|
|
217717
|
+
}
|
|
217718
|
+
}
|
|
217719
|
+
catch { }
|
|
217720
|
+
try {
|
|
217721
|
+
const transactionData = await rangoTrade.getTransactionData();
|
|
217722
|
+
if (transactionData.gas) {
|
|
217723
|
+
return new bignumber_js_1.default(transactionData.gas);
|
|
217724
|
+
}
|
|
217725
|
+
}
|
|
217726
|
+
catch { }
|
|
217727
|
+
return null;
|
|
217728
|
+
}
|
|
217729
|
+
get toTokenAmountMin() {
|
|
217730
|
+
return this._toTokenAmountMin;
|
|
217731
|
+
}
|
|
217732
|
+
get spenderAddress() {
|
|
217733
|
+
return this.useProxy
|
|
217734
|
+
? rubic_proxy_contract_address_1.rubicProxyContractAddress[this.from.blockchain].gateway
|
|
217735
|
+
: this.providerGateway;
|
|
217736
|
+
}
|
|
217737
|
+
get dexContractAddress() {
|
|
217738
|
+
throw new errors_1.RubicSdkError('Dex address is unknown before swap is started');
|
|
217739
|
+
}
|
|
217740
|
+
constructor(tradeStruct, providerAddress, providerGateway) {
|
|
217741
|
+
super(tradeStruct, providerAddress);
|
|
217742
|
+
this.type = on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RANGO;
|
|
217743
|
+
this._toTokenAmountMin = new tokens_1.PriceTokenAmount({
|
|
217744
|
+
...this.to.asStruct,
|
|
217745
|
+
weiAmount: tradeStruct.toTokenWeiAmountMin
|
|
217746
|
+
});
|
|
217747
|
+
this.providerGateway = providerGateway;
|
|
217748
|
+
}
|
|
217749
|
+
async encodeDirect(options) {
|
|
217750
|
+
await this.checkFromAddress(options.fromAddress, true);
|
|
217751
|
+
await this.checkReceiverAddress(options.receiverAddress);
|
|
217752
|
+
try {
|
|
217753
|
+
const transactionData = await this.getTransactionData(this.walletAddress, options.receiverAddress);
|
|
217754
|
+
const { gas, gasPrice } = this.getGasParams(options, {
|
|
217755
|
+
gasLimit: transactionData.gas,
|
|
217756
|
+
gasPrice: transactionData.gasPrice
|
|
217757
|
+
});
|
|
217758
|
+
return {
|
|
217759
|
+
to: transactionData.to,
|
|
217760
|
+
data: transactionData.data,
|
|
217761
|
+
value: this.fromWithoutFee.isNative ? this.fromWithoutFee.stringWeiAmount : '0',
|
|
217762
|
+
gas,
|
|
217763
|
+
gasPrice
|
|
217764
|
+
};
|
|
217765
|
+
}
|
|
217766
|
+
catch (err) {
|
|
217767
|
+
if ([400, 500, 503].includes(err.code)) {
|
|
217768
|
+
throw new errors_1.SwapRequestError();
|
|
217769
|
+
}
|
|
217770
|
+
if (this.isDeflationError()) {
|
|
217771
|
+
throw new errors_1.LowSlippageDeflationaryTokenError();
|
|
217772
|
+
}
|
|
217773
|
+
throw (0, errors_2.parseError)(err);
|
|
217774
|
+
}
|
|
217775
|
+
}
|
|
217776
|
+
async getTransactionData(fromAddress, receiverAddress) {
|
|
217777
|
+
const params = await rango_parser_1.RangoCommonParser.getSwapQueryParams(this.from, this.to, {
|
|
217778
|
+
slippageTolerance: this.slippageTolerance,
|
|
217779
|
+
fromAddress: fromAddress || this.walletAddress,
|
|
217780
|
+
receiverAddress: receiverAddress || fromAddress || this.walletAddress
|
|
217781
|
+
});
|
|
217782
|
+
const { tx } = await rango_on_chain_api_service_1.RangoOnChainApiService.getSwapTransaction(params);
|
|
217783
|
+
if (!tx) {
|
|
217784
|
+
throw new errors_1.RubicSdkError(`Transaction status is undefined!`);
|
|
217785
|
+
}
|
|
217786
|
+
const gasLimit = tx.gasLimit && parseInt(tx.gasLimit, 16).toString();
|
|
217787
|
+
const gasPrice = tx.gasPrice && parseInt(tx.gasPrice, 16).toString();
|
|
217788
|
+
return {
|
|
217789
|
+
data: tx.txData,
|
|
217790
|
+
to: tx.txTo,
|
|
217791
|
+
value: tx.value,
|
|
217792
|
+
gas: gasLimit,
|
|
217793
|
+
gasPrice: gasPrice
|
|
217794
|
+
};
|
|
217795
|
+
}
|
|
217796
|
+
}
|
|
217797
|
+
exports.RangoOnChainTrade = RangoOnChainTrade;
|
|
217798
|
+
|
|
217799
|
+
|
|
217800
|
+
/***/ }),
|
|
217801
|
+
|
|
217802
|
+
/***/ "./src/features/on-chain/calculation-manager/providers/rango/services/rango-on-chain-api-service.ts":
|
|
217803
|
+
/*!**********************************************************************************************************!*\
|
|
217804
|
+
!*** ./src/features/on-chain/calculation-manager/providers/rango/services/rango-on-chain-api-service.ts ***!
|
|
217805
|
+
\**********************************************************************************************************/
|
|
217806
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
217807
|
+
|
|
217808
|
+
"use strict";
|
|
217809
|
+
|
|
217810
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
217811
|
+
exports.RangoOnChainApiService = void 0;
|
|
217812
|
+
const errors_1 = __webpack_require__(/*! ../../../../../../common/errors */ "./src/common/errors/index.ts");
|
|
217813
|
+
const injector_1 = __webpack_require__(/*! ../../../../../../core/injector/injector */ "./src/core/injector/injector.ts");
|
|
217814
|
+
const rango_api_common_1 = __webpack_require__(/*! ../../../../../common/providers/rango/constants/rango-api-common */ "./src/features/common/providers/rango/constants/rango-api-common.ts");
|
|
217815
|
+
class RangoOnChainApiService {
|
|
217816
|
+
static async getBestRoute(params) {
|
|
217817
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/quote`, {
|
|
217818
|
+
params: params
|
|
217819
|
+
});
|
|
217820
|
+
if (!res.route || res.error) {
|
|
217821
|
+
throw new errors_1.RubicSdkError(res.error ?? 'No available routes in rango.');
|
|
217822
|
+
}
|
|
217823
|
+
return res;
|
|
217824
|
+
}
|
|
217825
|
+
static async getSwapTransaction(params) {
|
|
217826
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/swap`, { params: params });
|
|
217827
|
+
if (!res.route || res.error) {
|
|
217828
|
+
throw new errors_1.RubicSdkError(res.error ?? 'No available routes in rango.');
|
|
217829
|
+
}
|
|
217830
|
+
return res;
|
|
217831
|
+
}
|
|
217832
|
+
/**
|
|
217833
|
+
* @description Get transaction status data
|
|
217834
|
+
*/
|
|
217835
|
+
static async getTxStatus(params) {
|
|
217836
|
+
const res = await injector_1.Injector.httpClient.get(`${rango_api_common_1.RANGO_API_ENDPOINT}/status`, { params: params });
|
|
217837
|
+
if (res.error || !res.bridgeData || !res.status) {
|
|
217838
|
+
throw new errors_1.RubicSdkError("Can't get status, res has error or null data in getTxStatus method");
|
|
217839
|
+
}
|
|
217840
|
+
return res;
|
|
217841
|
+
}
|
|
217842
|
+
}
|
|
217843
|
+
exports.RangoOnChainApiService = RangoOnChainApiService;
|
|
217844
|
+
|
|
217845
|
+
|
|
214085
217846
|
/***/ }),
|
|
214086
217847
|
|
|
214087
217848
|
/***/ "./src/features/on-chain/calculation-manager/utils/type-guards.ts":
|
|
@@ -214347,6 +218108,19 @@ __exportStar(__webpack_require__(/*! ./features/common/providers/bridgers/models
|
|
|
214347
218108
|
__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
218109
|
__exportStar(__webpack_require__(/*! ./features/common/providers/changenow/constants/changenow-api-key */ "./src/features/common/providers/changenow/constants/changenow-api-key.ts"), exports);
|
|
214349
218110
|
__exportStar(__webpack_require__(/*! ./features/common/providers/lifi/constants/lifi-config */ "./src/features/common/providers/lifi/constants/lifi-config.ts"), exports);
|
|
218111
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/constants/rango-api-common */ "./src/features/common/providers/rango/constants/rango-api-common.ts"), exports);
|
|
218112
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/constants/rango-contract-address */ "./src/features/common/providers/rango/constants/rango-contract-address.ts"), exports);
|
|
218113
|
+
__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);
|
|
218114
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-blockchain-names */ "./src/features/common/providers/rango/models/rango-api-blockchain-names.ts"), exports);
|
|
218115
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-common-types */ "./src/features/common/providers/rango/models/rango-api-common-types.ts"), exports);
|
|
218116
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-status-types */ "./src/features/common/providers/rango/models/rango-api-status-types.ts"), exports);
|
|
218117
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-swap-types */ "./src/features/common/providers/rango/models/rango-api-swap-types.ts"), exports);
|
|
218118
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-symbol-names */ "./src/features/common/providers/rango/models/rango-api-symbol-names.ts"), exports);
|
|
218119
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-api-trade-types */ "./src/features/common/providers/rango/models/rango-api-trade-types.ts"), exports);
|
|
218120
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-parser-types */ "./src/features/common/providers/rango/models/rango-parser-types.ts"), exports);
|
|
218121
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/models/rango-supported-blockchains */ "./src/features/common/providers/rango/models/rango-supported-blockchains.ts"), exports);
|
|
218122
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/services/rango-parser */ "./src/features/common/providers/rango/services/rango-parser.ts"), exports);
|
|
218123
|
+
__exportStar(__webpack_require__(/*! ./features/common/providers/rango/utils/rango-utils */ "./src/features/common/providers/rango/utils/rango-utils.ts"), exports);
|
|
214350
218124
|
__exportStar(__webpack_require__(/*! ./features/common/providers/xy/constants/xy-api-params */ "./src/features/common/providers/xy/constants/xy-api-params.ts"), exports);
|
|
214351
218125
|
__exportStar(__webpack_require__(/*! ./features/common/providers/xy/constants/xy-error-code */ "./src/features/common/providers/xy/constants/xy-error-code.ts"), exports);
|
|
214352
218126
|
__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 +218229,25 @@ __exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/
|
|
|
214455
218229
|
__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
218230
|
__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
218231
|
__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);
|
|
218232
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/erc-677-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/erc-677-abi.ts"), exports);
|
|
218233
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/fee-manager-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/fee-manager-abi.ts"), exports);
|
|
218234
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/foreign-bridge-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/foreign-bridge-abi.ts"), exports);
|
|
218235
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/home-bridge-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/home-bridge-abi.ts"), exports);
|
|
218236
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/native-bridge-abi */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/native-bridge-abi.ts"), exports);
|
|
218237
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-contract-address */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-contract-address.ts"), exports);
|
|
218238
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-supported-blockchains */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/constants/pulse-chain-supported-blockchains.ts"), exports);
|
|
218239
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/bridge-manager */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/bridge-manager.ts"), exports);
|
|
218240
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/foreign-bridge */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/foreign-bridge.ts"), exports);
|
|
218241
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/home-bridge */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/home-bridge.ts"), exports);
|
|
218242
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/omni-bridge */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/omni-bridge-entities/omni-bridge.ts"), exports);
|
|
218243
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-provider */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-provider.ts"), exports);
|
|
218244
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-trade */ "./src/features/cross-chain/calculation-manager/providers/pulse-chain-bridge/pulse-chain-cross-chain-trade.ts"), exports);
|
|
218245
|
+
__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);
|
|
218246
|
+
__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);
|
|
218247
|
+
__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);
|
|
218248
|
+
__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);
|
|
218249
|
+
__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);
|
|
218250
|
+
__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
218251
|
__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
218252
|
__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
218253
|
__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);
|
|
@@ -214517,6 +218310,7 @@ __exportStar(__webpack_require__(/*! ./features/cross-chain/status-manager/model
|
|
|
214517
218310
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/status-manager/models/cross-chain-status */ "./src/features/cross-chain/status-manager/models/cross-chain-status.ts"), exports);
|
|
214518
218311
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/status-manager/models/cross-chain-trade-data */ "./src/features/cross-chain/status-manager/models/cross-chain-trade-data.ts"), exports);
|
|
214519
218312
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/status-manager/models/multichain-status-api-response */ "./src/features/cross-chain/status-manager/models/multichain-status-api-response.ts"), exports);
|
|
218313
|
+
__exportStar(__webpack_require__(/*! ./features/cross-chain/status-manager/models/rubic-backend-ps-status */ "./src/features/cross-chain/status-manager/models/rubic-backend-ps-status.ts"), exports);
|
|
214520
218314
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/status-manager/models/scroll-api-response */ "./src/features/cross-chain/status-manager/models/scroll-api-response.ts"), exports);
|
|
214521
218315
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/status-manager/models/squidrouter-api-response */ "./src/features/cross-chain/status-manager/models/squidrouter-api-response.ts"), exports);
|
|
214522
218316
|
__exportStar(__webpack_require__(/*! ./features/cross-chain/status-manager/models/squidrouter-transfer-status.enum */ "./src/features/cross-chain/status-manager/models/squidrouter-transfer-status.enum.ts"), exports);
|
|
@@ -215045,6 +218839,11 @@ __exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/pro
|
|
|
215045
218839
|
__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
218840
|
__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
218841
|
__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);
|
|
218842
|
+
__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);
|
|
218843
|
+
__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);
|
|
218844
|
+
__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);
|
|
218845
|
+
__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);
|
|
218846
|
+
__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
218847
|
__exportStar(__webpack_require__(/*! ./features/on-chain/calculation-manager/utils/type-guards */ "./src/features/on-chain/calculation-manager/utils/type-guards.ts"), exports);
|
|
215049
218848
|
__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
218849
|
|