@cryptorubic/core 0.15.0-alpha-stellar.0 → 0.16.3-alpha-2695.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/package.json +1 -1
- package/src/lib/blockchains/backend-labels.d.ts +2 -1
- package/src/lib/blockchains/backend-labels.js +3 -2
- package/src/lib/blockchains/blockchain-id.js +2 -1
- package/src/lib/blockchains/blockchain-name.d.ts +7 -4
- package/src/lib/blockchains/blockchain-name.js +5 -4
- package/src/lib/blockchains/chain-type-storage.js +1 -0
- package/src/lib/blockchains/chain-type.d.ts +1 -0
- package/src/lib/blockchains/chain-type.js +2 -1
- package/src/lib/blockchains/wrapped-addresses.js +2 -1
- package/src/lib/models/api/quote-request.interface.d.ts +5 -0
- package/src/lib/providers/backend-onchain-providers.d.ts +117 -103
- package/src/lib/providers/backend-onchain-providers.js +9 -1
- package/src/lib/providers/cross-chain-trade-type.d.ts +8 -0
- package/src/lib/providers/cross-chain-trade-type.js +9 -1
- package/src/lib/providers/from-backend-cross-chain-providers.js +9 -1
- package/src/lib/providers/on-chain-trade-type.d.ts +9 -1
- package/src/lib/providers/on-chain-trade-type.js +10 -2
- package/src/lib/providers/to-backend-cross-chain-providers.d.ts +8 -0
- package/src/lib/providers/to-backend-cross-chain-providers.js +9 -1
- package/src/lib/tokens/constants/native-token-list.js +15 -8
- package/src/lib/tokens/constants/wrapped-native-tokens.js +14 -7
- package/src/lib/tokens/price-token-amount.d.ts +1 -0
- package/src/lib/tokens/price-token-amount.js +3 -0
- package/src/lib/tokens/price-token.d.ts +15 -0
- package/src/lib/tokens/price-token.js +22 -0
- package/src/lib/tokens/token-amount.d.ts +1 -0
- package/src/lib/tokens/token-amount.js +3 -0
- package/src/lib/tokens/token.d.ts +1 -0
- package/src/lib/tokens/token.js +5 -0
|
@@ -58,6 +58,8 @@ exports.TO_BACKEND_ON_CHAIN_PROVIDERS = {
|
|
|
58
58
|
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.WYND]: 'unknown',
|
|
59
59
|
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.ZIP_SWAP]: 'unknown',
|
|
60
60
|
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.ROUTER_SWAP]: 'unknown',
|
|
61
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.AQUARIUS]: 'unknown',
|
|
62
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.SOROSWAP]: 'unknown',
|
|
61
63
|
// Rubic integrated dexes
|
|
62
64
|
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.ALGEBRA]: 'algebra',
|
|
63
65
|
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.APE_SWAP]: 'apeswap',
|
|
@@ -160,7 +162,13 @@ exports.TO_BACKEND_ON_CHAIN_PROVIDERS = {
|
|
|
160
162
|
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.ORCA_SWAP]: 'orca',
|
|
161
163
|
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.OCTO_SWAP]: 'octo_swap',
|
|
162
164
|
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.AETHON_SWAP]: 'aethon_swap',
|
|
163
|
-
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.ATLANTIS]: 'atlantis'
|
|
165
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.ATLANTIS]: 'atlantis',
|
|
166
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.CLOBER]: 'clober',
|
|
167
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.HYPERCAT]: 'hypercat',
|
|
168
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.RUBIC_STELLAR_API]: 'rubic_stellar_api',
|
|
169
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.WARPX_V2]: 'warpx_v2',
|
|
170
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.WARPX_V3]: 'warpx_v3',
|
|
171
|
+
[on_chain_trade_type_1.ON_CHAIN_TRADE_TYPE.CLEARSWAP]: 'clearswap'
|
|
164
172
|
};
|
|
165
173
|
exports.FROM_BACKEND_ON_CHAIN_PROVIDERS = {
|
|
166
174
|
...Object.entries(exports.TO_BACKEND_ON_CHAIN_PROVIDERS).reduce((acc, [clientName, backendName]) => ({
|
|
@@ -34,5 +34,13 @@ export declare const CROSS_CHAIN_TRADE_TYPE: {
|
|
|
34
34
|
readonly WORMHOLE: "wormhole";
|
|
35
35
|
readonly EXOLIX: "exolix";
|
|
36
36
|
readonly NEAR_INTENTS: "near_intents";
|
|
37
|
+
readonly USDT_ZERO_BRIDGE: "usdt_zero_bridge";
|
|
38
|
+
readonly HOUDINI: "houdini";
|
|
39
|
+
readonly QUICKEX: "quickex";
|
|
40
|
+
readonly RUBIC_STELLAR_API: "rubic_stellar_api";
|
|
41
|
+
readonly PACT_SWAP: "pact_swap";
|
|
42
|
+
readonly STEALTHEX: "stealthex";
|
|
43
|
+
readonly MAYAN: "mayan";
|
|
44
|
+
readonly CHANGE_HERO: "change_hero";
|
|
37
45
|
};
|
|
38
46
|
export type CrossChainTradeType = (typeof CROSS_CHAIN_TRADE_TYPE)[keyof typeof CROSS_CHAIN_TRADE_TYPE];
|
|
@@ -36,5 +36,13 @@ exports.CROSS_CHAIN_TRADE_TYPE = {
|
|
|
36
36
|
XFLOWS: 'xflows',
|
|
37
37
|
WORMHOLE: 'wormhole',
|
|
38
38
|
EXOLIX: 'exolix',
|
|
39
|
-
NEAR_INTENTS: 'near_intents'
|
|
39
|
+
NEAR_INTENTS: 'near_intents',
|
|
40
|
+
USDT_ZERO_BRIDGE: 'usdt_zero_bridge',
|
|
41
|
+
HOUDINI: 'houdini',
|
|
42
|
+
QUICKEX: 'quickex',
|
|
43
|
+
RUBIC_STELLAR_API: 'rubic_stellar_api',
|
|
44
|
+
PACT_SWAP: 'pact_swap',
|
|
45
|
+
STEALTHEX: 'stealthex',
|
|
46
|
+
MAYAN: 'mayan',
|
|
47
|
+
CHANGE_HERO: 'change_hero'
|
|
40
48
|
};
|
|
@@ -37,5 +37,13 @@ exports.FROM_BACKEND_CROSS_CHAIN_PROVIDERS = {
|
|
|
37
37
|
orbiter_bridge_v2: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.ORBITER_BRIDGE_V2,
|
|
38
38
|
wormhole_mayan: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.WORMHOLE,
|
|
39
39
|
exolix: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.EXOLIX,
|
|
40
|
-
near_intents: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.NEAR_INTENTS
|
|
40
|
+
near_intents: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.NEAR_INTENTS,
|
|
41
|
+
usdt_zero_bridge: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.USDT_ZERO_BRIDGE,
|
|
42
|
+
houdini: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.HOUDINI,
|
|
43
|
+
quickex: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.QUICKEX,
|
|
44
|
+
rubic_stellar_api: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.RUBIC_STELLAR_API,
|
|
45
|
+
pact_swap: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.PACT_SWAP,
|
|
46
|
+
stealthex: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.STEALTHEX,
|
|
47
|
+
mayan: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.MAYAN,
|
|
48
|
+
change_hero: cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.CHANGE_HERO
|
|
41
49
|
};
|
|
@@ -14,6 +14,7 @@ export declare const ON_CHAIN_TRADE_TYPE: {
|
|
|
14
14
|
readonly AVNU: "AVNU";
|
|
15
15
|
readonly AETHON_SWAP: "AETHON_SWAP";
|
|
16
16
|
readonly ATLANTIS: "ATLANTIS";
|
|
17
|
+
readonly AQUARIUS: "AQUARIUS";
|
|
17
18
|
readonly BABY_SWAP: "BABY_SWAP";
|
|
18
19
|
readonly BALANCER: "BALANCER";
|
|
19
20
|
readonly BASE_SWAP: "BASE_SWAP";
|
|
@@ -26,6 +27,7 @@ export declare const ON_CHAIN_TRADE_TYPE: {
|
|
|
26
27
|
readonly CETUS: "CETUS";
|
|
27
28
|
readonly CHERRY_SWAP: "CHERRY_SWAP";
|
|
28
29
|
readonly CLAIM_SWAP: "CLAIM_SWAP";
|
|
30
|
+
readonly CLEARSWAP: "CLEARSWAP";
|
|
29
31
|
readonly COFFEE_SWAP: "COFFEE_SWAP";
|
|
30
32
|
readonly CREMA_FINANCE: "CREMA_FINANCE";
|
|
31
33
|
readonly CRO_SWAP: "CRO_SWAP";
|
|
@@ -34,6 +36,7 @@ export declare const ON_CHAIN_TRADE_TYPE: {
|
|
|
34
36
|
readonly CROW_FI: "CROW_FI";
|
|
35
37
|
readonly CRO_DEX: "CRO_DEX";
|
|
36
38
|
readonly CURVE: "CURVE";
|
|
39
|
+
readonly CLOBER: "CLOBER";
|
|
37
40
|
readonly DEDUST: "DEDUST";
|
|
38
41
|
readonly DEFI_PLAZA: "DEFI_PLAZA";
|
|
39
42
|
readonly DEFI_SWAP: "DEFI_SWAP";
|
|
@@ -106,6 +109,7 @@ export declare const ON_CHAIN_TRADE_TYPE: {
|
|
|
106
109
|
readonly REF_FINANCE: "REF_FINANCE";
|
|
107
110
|
readonly REN_BTC: "REN_BTC";
|
|
108
111
|
readonly ROUTER_SWAP: "ROUTER_SWAP";
|
|
112
|
+
readonly RUBIC_STELLAR_API: "RUBIC_STELLAR_API";
|
|
109
113
|
readonly SABER_STABLE_SWAP: "SABER_STABLE_SWAP";
|
|
110
114
|
readonly SAROS_SWAP: "SAROS_SWAP";
|
|
111
115
|
readonly SERUM: "SERUM";
|
|
@@ -130,6 +134,7 @@ export declare const ON_CHAIN_TRADE_TYPE: {
|
|
|
130
134
|
readonly SPARK_DEX_V3: "SPARK_DEX_V3";
|
|
131
135
|
readonly SQUIDROUTER: "SQUIDROUTER";
|
|
132
136
|
readonly SYMBIOSIS_SWAP: "SYMBIOSIS_SWAP";
|
|
137
|
+
readonly SOROSWAP: "SOROSWAP";
|
|
133
138
|
readonly TONCO_DEX: "TONCO_DEX";
|
|
134
139
|
readonly TRADER: "TRADER";
|
|
135
140
|
readonly TRISOLARIS: "TRISOLARIS";
|
|
@@ -149,12 +154,15 @@ export declare const ON_CHAIN_TRADE_TYPE: {
|
|
|
149
154
|
readonly WOO_FI: "WOO_FI";
|
|
150
155
|
readonly WRAPPED: "WRAPPED";
|
|
151
156
|
readonly WYND: "WYND";
|
|
152
|
-
readonly
|
|
157
|
+
readonly WARPX_V2: "WARPX_V2";
|
|
158
|
+
readonly WARPX_V3: "WARPX_V3";
|
|
153
159
|
readonly XY_DEX: "XY_DEX";
|
|
160
|
+
readonly YUZU_SWAP: "YUZU_SWAP";
|
|
154
161
|
readonly ZAPPY: "ZAPPY";
|
|
155
162
|
readonly ZIP_SWAP: "ZIP_SWAP";
|
|
156
163
|
readonly ZRX: "ZRX";
|
|
157
164
|
readonly ZETA_SWAP: "ZETA_SWAP";
|
|
165
|
+
readonly HYPERCAT: "HYPERCAT";
|
|
158
166
|
};
|
|
159
167
|
/**
|
|
160
168
|
* On-chain trade type.
|
|
@@ -17,6 +17,7 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
17
17
|
AVNU: 'AVNU',
|
|
18
18
|
AETHON_SWAP: 'AETHON_SWAP',
|
|
19
19
|
ATLANTIS: 'ATLANTIS',
|
|
20
|
+
AQUARIUS: 'AQUARIUS',
|
|
20
21
|
BABY_SWAP: 'BABY_SWAP',
|
|
21
22
|
BALANCER: 'BALANCER',
|
|
22
23
|
BASE_SWAP: 'BASE_SWAP',
|
|
@@ -29,6 +30,7 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
29
30
|
CETUS: 'CETUS',
|
|
30
31
|
CHERRY_SWAP: 'CHERRY_SWAP',
|
|
31
32
|
CLAIM_SWAP: 'CLAIM_SWAP',
|
|
33
|
+
CLEARSWAP: 'CLEARSWAP',
|
|
32
34
|
COFFEE_SWAP: 'COFFEE_SWAP',
|
|
33
35
|
CREMA_FINANCE: 'CREMA_FINANCE',
|
|
34
36
|
CRO_SWAP: 'CRO_SWAP',
|
|
@@ -37,6 +39,7 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
37
39
|
CROW_FI: 'CROW_FI',
|
|
38
40
|
CRO_DEX: 'CRO_DEX',
|
|
39
41
|
CURVE: 'CURVE',
|
|
42
|
+
CLOBER: 'CLOBER',
|
|
40
43
|
DEDUST: 'DEDUST',
|
|
41
44
|
DEFI_PLAZA: 'DEFI_PLAZA',
|
|
42
45
|
DEFI_SWAP: 'DEFI_SWAP',
|
|
@@ -109,6 +112,7 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
109
112
|
REF_FINANCE: 'REF_FINANCE',
|
|
110
113
|
REN_BTC: 'REN_BTC',
|
|
111
114
|
ROUTER_SWAP: 'ROUTER_SWAP',
|
|
115
|
+
RUBIC_STELLAR_API: 'RUBIC_STELLAR_API',
|
|
112
116
|
SABER_STABLE_SWAP: 'SABER_STABLE_SWAP',
|
|
113
117
|
SAROS_SWAP: 'SAROS_SWAP',
|
|
114
118
|
SERUM: 'SERUM',
|
|
@@ -133,6 +137,7 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
133
137
|
SPARK_DEX_V3: 'SPARK_DEX_V3',
|
|
134
138
|
SQUIDROUTER: 'SQUIDROUTER',
|
|
135
139
|
SYMBIOSIS_SWAP: 'SYMBIOSIS_SWAP', // Fake to show swap via unknown symbiosis dex
|
|
140
|
+
SOROSWAP: 'SOROSWAP',
|
|
136
141
|
TONCO_DEX: 'TONCO_DEX',
|
|
137
142
|
TRADER: 'TRADER',
|
|
138
143
|
TRISOLARIS: 'TRISOLARIS',
|
|
@@ -152,10 +157,13 @@ exports.ON_CHAIN_TRADE_TYPE = {
|
|
|
152
157
|
WOO_FI: 'WOO_FI',
|
|
153
158
|
WRAPPED: 'WRAPPED',
|
|
154
159
|
WYND: 'WYND',
|
|
155
|
-
|
|
160
|
+
WARPX_V2: 'WARPX_V2',
|
|
161
|
+
WARPX_V3: 'WARPX_V3',
|
|
156
162
|
XY_DEX: 'XY_DEX',
|
|
163
|
+
YUZU_SWAP: 'YUZU_SWAP',
|
|
157
164
|
ZAPPY: 'ZAPPY',
|
|
158
165
|
ZIP_SWAP: 'ZIP_SWAP',
|
|
159
166
|
ZRX: 'ZRX',
|
|
160
|
-
ZETA_SWAP: 'ZETA_SWAP'
|
|
167
|
+
ZETA_SWAP: 'ZETA_SWAP',
|
|
168
|
+
HYPERCAT: 'HYPERCAT'
|
|
161
169
|
};
|
|
@@ -35,6 +35,14 @@ declare const toProviders: {
|
|
|
35
35
|
readonly wormhole: "wormhole_mayan";
|
|
36
36
|
readonly exolix: "exolix";
|
|
37
37
|
readonly near_intents: "near_intents";
|
|
38
|
+
readonly usdt_zero_bridge: "usdt_zero_bridge";
|
|
39
|
+
readonly houdini: "houdini";
|
|
40
|
+
readonly quickex: "quickex";
|
|
41
|
+
readonly rubic_stellar_api: "rubic_stellar_api";
|
|
42
|
+
readonly pact_swap: "pact_swap";
|
|
43
|
+
readonly stealthex: "stealthex";
|
|
44
|
+
readonly mayan: "mayan";
|
|
45
|
+
readonly change_hero: "change_hero";
|
|
38
46
|
};
|
|
39
47
|
export declare const TO_BACKEND_CROSS_CHAIN_PROVIDERS: Record<CrossChainTradeType, string>;
|
|
40
48
|
export type ToBackendCrossChainProviders = (typeof toProviders)[keyof typeof toProviders];
|
|
@@ -37,7 +37,15 @@ const toProviders = {
|
|
|
37
37
|
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.ORBITER_BRIDGE_V2]: 'orbiter_bridge_v2',
|
|
38
38
|
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.WORMHOLE]: 'wormhole_mayan',
|
|
39
39
|
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.EXOLIX]: 'exolix',
|
|
40
|
-
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.NEAR_INTENTS]: 'near_intents'
|
|
40
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.NEAR_INTENTS]: 'near_intents',
|
|
41
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.USDT_ZERO_BRIDGE]: 'usdt_zero_bridge',
|
|
42
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.HOUDINI]: 'houdini',
|
|
43
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.QUICKEX]: 'quickex',
|
|
44
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.RUBIC_STELLAR_API]: 'rubic_stellar_api',
|
|
45
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.PACT_SWAP]: 'pact_swap',
|
|
46
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.STEALTHEX]: 'stealthex',
|
|
47
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.MAYAN]: 'mayan',
|
|
48
|
+
[cross_chain_trade_type_1.CROSS_CHAIN_TRADE_TYPE.CHANGE_HERO]: 'change_hero'
|
|
41
49
|
};
|
|
42
50
|
exports.TO_BACKEND_CROSS_CHAIN_PROVIDERS = {
|
|
43
51
|
...toProviders
|
|
@@ -552,7 +552,7 @@ exports.nativeTokensList = {
|
|
|
552
552
|
address: '0x0000000000000000000000000000000000000000',
|
|
553
553
|
name: 'Cardano',
|
|
554
554
|
symbol: 'ADA',
|
|
555
|
-
decimals:
|
|
555
|
+
decimals: 6
|
|
556
556
|
}),
|
|
557
557
|
[blockchain_name_1.BLOCKCHAIN_NAME.APTOS]: new token_1.Token({
|
|
558
558
|
blockchain: blockchain_name_1.BLOCKCHAIN_NAME.APTOS,
|
|
@@ -743,13 +743,6 @@ exports.nativeTokensList = {
|
|
|
743
743
|
symbol: 'ETH',
|
|
744
744
|
decimals: 18
|
|
745
745
|
}),
|
|
746
|
-
[blockchain_name_1.BLOCKCHAIN_NAME.WANCHAIN]: new token_1.Token({
|
|
747
|
-
blockchain: blockchain_name_1.BLOCKCHAIN_NAME.WANCHAIN,
|
|
748
|
-
address: '0x0000000000000000000000000000000000000000',
|
|
749
|
-
name: 'Wancoin',
|
|
750
|
-
symbol: 'WAN',
|
|
751
|
-
decimals: 18
|
|
752
|
-
}),
|
|
753
746
|
[blockchain_name_1.BLOCKCHAIN_NAME.UNICHAIN]: new token_1.Token({
|
|
754
747
|
blockchain: blockchain_name_1.BLOCKCHAIN_NAME.UNICHAIN,
|
|
755
748
|
address: '0x0000000000000000000000000000000000000000',
|
|
@@ -791,5 +784,19 @@ exports.nativeTokensList = {
|
|
|
791
784
|
name: 'Zcash',
|
|
792
785
|
symbol: 'ZEC',
|
|
793
786
|
decimals: 8
|
|
787
|
+
}),
|
|
788
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.HYPER_EVM]: new token_1.Token({
|
|
789
|
+
blockchain: blockchain_name_1.BLOCKCHAIN_NAME.HYPER_EVM,
|
|
790
|
+
address: '0x0000000000000000000000000000000000000000',
|
|
791
|
+
name: 'Hyperliquid',
|
|
792
|
+
symbol: 'HYPE',
|
|
793
|
+
decimals: 18
|
|
794
|
+
}),
|
|
795
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.MEGAETH]: new token_1.Token({
|
|
796
|
+
blockchain: blockchain_name_1.BLOCKCHAIN_NAME.MEGAETH,
|
|
797
|
+
address: '0x0000000000000000000000000000000000000000',
|
|
798
|
+
name: 'Ethereum',
|
|
799
|
+
symbol: 'ETH',
|
|
800
|
+
decimals: 18
|
|
794
801
|
})
|
|
795
802
|
};
|
|
@@ -494,13 +494,6 @@ exports.wrappedNativeTokensList = {
|
|
|
494
494
|
symbol: 'WETH',
|
|
495
495
|
decimals: 18
|
|
496
496
|
}),
|
|
497
|
-
[blockchain_name_1.BLOCKCHAIN_NAME.WANCHAIN]: new token_1.Token({
|
|
498
|
-
blockchain: blockchain_name_1.BLOCKCHAIN_NAME.WANCHAIN,
|
|
499
|
-
address: '0xdabD997aE5E4799BE47d6E69D9431615CBa28f48',
|
|
500
|
-
name: 'Wrapped Wancoin',
|
|
501
|
-
symbol: 'WWAN',
|
|
502
|
-
decimals: 18
|
|
503
|
-
}),
|
|
504
497
|
[blockchain_name_1.BLOCKCHAIN_NAME.UNICHAIN]: new token_1.Token({
|
|
505
498
|
blockchain: blockchain_name_1.BLOCKCHAIN_NAME.UNICHAIN,
|
|
506
499
|
address: '0x4200000000000000000000000000000000000006',
|
|
@@ -535,5 +528,19 @@ exports.wrappedNativeTokensList = {
|
|
|
535
528
|
name: 'Wrapped Monad',
|
|
536
529
|
symbol: 'WMON',
|
|
537
530
|
decimals: 18
|
|
531
|
+
}),
|
|
532
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.HYPER_EVM]: new token_1.Token({
|
|
533
|
+
blockchain: blockchain_name_1.BLOCKCHAIN_NAME.HYPER_EVM,
|
|
534
|
+
address: '0x5555555555555555555555555555555555555555',
|
|
535
|
+
name: 'Wrapped HYPE',
|
|
536
|
+
symbol: 'WHYPE',
|
|
537
|
+
decimals: 18
|
|
538
|
+
}),
|
|
539
|
+
[blockchain_name_1.BLOCKCHAIN_NAME.MEGAETH]: new token_1.Token({
|
|
540
|
+
blockchain: blockchain_name_1.BLOCKCHAIN_NAME.MEGAETH,
|
|
541
|
+
address: '0x4200000000000000000000000000000000000006',
|
|
542
|
+
name: 'Wrapped Ether',
|
|
543
|
+
symbol: 'WETH',
|
|
544
|
+
decimals: 18
|
|
538
545
|
})
|
|
539
546
|
};
|
|
@@ -16,4 +16,5 @@ export declare class PriceTokenAmount<Blockchain extends BlockchainName = Blockc
|
|
|
16
16
|
private getWeiAmount;
|
|
17
17
|
get asStructWithAmount(): TokenAmountStruct<Blockchain>;
|
|
18
18
|
calculatePriceImpactPercent(toToken: PriceTokenAmount): number | null;
|
|
19
|
+
clone(tokenStruct?: Partial<PriceTokenAmountStruct>): PriceTokenAmount;
|
|
19
20
|
}
|
|
@@ -8,4 +8,19 @@ export declare class PriceToken<Blockchain extends BlockchainName = BlockchainNa
|
|
|
8
8
|
set price(price: BigNumber);
|
|
9
9
|
get asStructWithPrice(): PriceTokenStruct<Blockchain>;
|
|
10
10
|
constructor(tokenStruct: PriceTokenStruct<Blockchain>);
|
|
11
|
+
clone(tokenStruct?: Partial<PriceTokenStruct>): PriceToken;
|
|
12
|
+
/**
|
|
13
|
+
* Fetches current token price and saves it into token.
|
|
14
|
+
* @param coingeckoApi {path to type @type rubic-app/src/app/core/services/sdk/sdk-legacy/coingecko/coingecko.service.ts}
|
|
15
|
+
* coingeckoApi should implement
|
|
16
|
+
* @interface {
|
|
17
|
+
* getTokenPrice({address: string; blockchain: BlockchainName}): Promise<BigNumber>
|
|
18
|
+
* }
|
|
19
|
+
* returns BigNumber usd price of token in human-readable format ex. 1.09
|
|
20
|
+
*/
|
|
21
|
+
getAndUpdateTokenPrice(coingeckoApi: any): Promise<BigNumber>;
|
|
22
|
+
/**
|
|
23
|
+
* @param coingeckoApi {path to type @type rubic-app/src/app/core/services/sdk/sdk-legacy/coingecko/coingecko.service.ts}
|
|
24
|
+
*/
|
|
25
|
+
private updateTokenPrice;
|
|
11
26
|
}
|
|
@@ -23,5 +23,27 @@ class PriceToken extends token_1.Token {
|
|
|
23
23
|
super(tokenStruct);
|
|
24
24
|
this._price = tokenStruct.price;
|
|
25
25
|
}
|
|
26
|
+
clone(tokenStruct) {
|
|
27
|
+
return new PriceToken({ ...this, ...tokenStruct });
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Fetches current token price and saves it into token.
|
|
31
|
+
* @param coingeckoApi {path to type @type rubic-app/src/app/core/services/sdk/sdk-legacy/coingecko/coingecko.service.ts}
|
|
32
|
+
* coingeckoApi should implement
|
|
33
|
+
* @interface {
|
|
34
|
+
* getTokenPrice({address: string; blockchain: BlockchainName}): Promise<BigNumber>
|
|
35
|
+
* }
|
|
36
|
+
* returns BigNumber usd price of token in human-readable format ex. 1.09
|
|
37
|
+
*/
|
|
38
|
+
async getAndUpdateTokenPrice(coingeckoApi) {
|
|
39
|
+
await this.updateTokenPrice(coingeckoApi);
|
|
40
|
+
return this.price;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* @param coingeckoApi {path to type @type rubic-app/src/app/core/services/sdk/sdk-legacy/coingecko/coingecko.service.ts}
|
|
44
|
+
*/
|
|
45
|
+
async updateTokenPrice(coingeckoApi) {
|
|
46
|
+
this._price = await coingeckoApi.getTokenPrice({ ...this }).catch(() => this._price);
|
|
47
|
+
}
|
|
26
48
|
}
|
|
27
49
|
exports.PriceToken = PriceToken;
|
|
@@ -13,4 +13,5 @@ export declare class TokenAmount<T extends BlockchainName = BlockchainName> exte
|
|
|
13
13
|
weiAmountPlusSlippage(slippage: number): BigNumber;
|
|
14
14
|
private getWeiAmount;
|
|
15
15
|
get asStructWithAmount(): TokenAmountStruct<BlockchainName>;
|
|
16
|
+
clone(tokenStruct?: Partial<TokenAmountStruct>): TokenAmount;
|
|
16
17
|
}
|
|
@@ -20,6 +20,7 @@ export declare class Token<Blockchain extends BlockchainName = BlockchainName> {
|
|
|
20
20
|
constructor(tokenStruct: TokenStruct<Blockchain>);
|
|
21
21
|
isEqualTo(token: TokenBaseStruct): boolean;
|
|
22
22
|
isEqualToTokens(tokens: TokenBaseStruct[]): boolean;
|
|
23
|
+
clone(tokenStruct?: Partial<TokenStruct>): Token;
|
|
23
24
|
static toWei(amount: BigNumber | string | number, decimals?: number, roundingMode?: BigNumber.RoundingMode): string;
|
|
24
25
|
/**
|
|
25
26
|
* Converts amount from Wei to Ether units.
|
package/src/lib/tokens/token.js
CHANGED
|
@@ -16,6 +16,8 @@ class Token {
|
|
|
16
16
|
return this.address.toLowerCase() === 'near';
|
|
17
17
|
if (this.blockchain === blockchain_name_1.BLOCKCHAIN_NAME.SOLANA)
|
|
18
18
|
return this.address.toLowerCase() === 'so11111111111111111111111111111111111111111';
|
|
19
|
+
if (this.blockchain === blockchain_name_1.BLOCKCHAIN_NAME.SUI)
|
|
20
|
+
return this.address.toLowerCase() === '0x0000000000000000000000000000000000000000000000000000000000000002::sui::sui';
|
|
19
21
|
return this.address.toLowerCase() === '0x0000000000000000000000000000000000000000';
|
|
20
22
|
}
|
|
21
23
|
get isWrapped() {
|
|
@@ -47,6 +49,9 @@ class Token {
|
|
|
47
49
|
isEqualToTokens(tokens) {
|
|
48
50
|
return tokens.some((token) => this.isEqualTo(token));
|
|
49
51
|
}
|
|
52
|
+
clone(tokenStruct) {
|
|
53
|
+
return new Token({ ...this, ...tokenStruct });
|
|
54
|
+
}
|
|
50
55
|
static toWei(amount, decimals = 18, roundingMode) {
|
|
51
56
|
return new bignumber_js_1.default(amount || 0).times(new bignumber_js_1.default(10).pow(decimals)).toFixed(0, roundingMode);
|
|
52
57
|
}
|