@pioneer-platform/thorchain-client 0.8.0 → 0.8.2
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/CHANGELOG.md +12 -0
- package/lib/index.d.ts +3 -1
- package/lib/index.js +72 -10
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @pioneer-platform/thorchain-client
|
|
2
2
|
|
|
3
|
+
## 0.8.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- fix: add static file serving for /coins/ directory
|
|
8
|
+
|
|
9
|
+
## 0.8.1
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- fix: add static file serving for /coins/ directory
|
|
14
|
+
|
|
3
15
|
## 0.8.0
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
package/lib/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
declare const TAG = " |
|
|
1
|
+
declare const TAG = " | thorchain | ";
|
|
2
2
|
declare const BaseDecimal: Record<string, number>;
|
|
3
3
|
declare const uuid: any;
|
|
4
4
|
declare const log: any;
|
|
@@ -6,6 +6,8 @@ declare let caipToNetworkId: any, shortListSymbolToCaip: any, ChainToNetworkId:
|
|
|
6
6
|
declare const createMemo: any, parseMemo: any;
|
|
7
7
|
declare let networkSupport: any[];
|
|
8
8
|
declare function nodeRequest(path: string): Promise<any>;
|
|
9
|
+
declare const caipToThorchainName: Record<string, string>;
|
|
9
10
|
declare let assets: string[];
|
|
11
|
+
declare function caipToAssetName(caip: string): string | null;
|
|
10
12
|
declare function getPools(): Promise<any>;
|
|
11
13
|
declare const get_quote: (quote: any) => Promise<any>;
|
package/lib/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/*
|
|
3
|
-
|
|
3
|
+
Thorchain Swap Integration
|
|
4
4
|
- Highlander
|
|
5
5
|
*/
|
|
6
6
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
@@ -39,7 +39,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
39
39
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
40
40
|
}
|
|
41
41
|
};
|
|
42
|
-
var TAG = " |
|
|
42
|
+
var TAG = " | thorchain | ";
|
|
43
43
|
// Replace BaseDecimal import with local definition
|
|
44
44
|
// Define BaseDecimal as a simple record of string chains to number values
|
|
45
45
|
var BaseDecimal = {
|
|
@@ -48,7 +48,11 @@ var BaseDecimal = {
|
|
|
48
48
|
"DOGE": 8,
|
|
49
49
|
"BCH": 8,
|
|
50
50
|
"LTC": 8,
|
|
51
|
-
"THOR": 8
|
|
51
|
+
"THOR": 8,
|
|
52
|
+
"GAIA": 6,
|
|
53
|
+
"AVAX": 18,
|
|
54
|
+
"BASE": 18,
|
|
55
|
+
"BSC": 18,
|
|
52
56
|
};
|
|
53
57
|
var uuid = require('uuidv4').uuid;
|
|
54
58
|
var log = require('@pioneer-platform/loggerdog')();
|
|
@@ -61,6 +65,10 @@ var networkSupport = [
|
|
|
61
65
|
ChainToNetworkId["BCH"],
|
|
62
66
|
ChainToNetworkId["LTC"],
|
|
63
67
|
ChainToNetworkId["THOR"],
|
|
68
|
+
ChainToNetworkId["GAIA"],
|
|
69
|
+
ChainToNetworkId["AVAX"],
|
|
70
|
+
ChainToNetworkId["BASE"],
|
|
71
|
+
ChainToNetworkId["BSC"],
|
|
64
72
|
];
|
|
65
73
|
// Function to make a request to the node
|
|
66
74
|
function nodeRequest(path) {
|
|
@@ -89,13 +97,66 @@ function nodeRequest(path) {
|
|
|
89
97
|
});
|
|
90
98
|
});
|
|
91
99
|
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
'
|
|
96
|
-
'
|
|
97
|
-
'bip122:000000000000000000651ef99cb9fcbe/slip44:145'
|
|
98
|
-
|
|
100
|
+
// CAIP to Thorchain name mapping - SINGLE SOURCE OF TRUTH
|
|
101
|
+
var caipToThorchainName = {
|
|
102
|
+
// Native Layer 1 Assets
|
|
103
|
+
'bip122:000000000019d6689c085ae165831e93/slip44:0': 'BTC.BTC',
|
|
104
|
+
'eip155:1/slip44:60': 'ETH.ETH',
|
|
105
|
+
'bip122:000000000000000000651ef99cb9fcbe/slip44:145': 'BCH.BCH',
|
|
106
|
+
'bip122:12a765e31ffd4059bada1e25190f6e98/slip44:2': 'LTC.LTC',
|
|
107
|
+
'bip122:00000000001a91e3dace36e2be3bf030/slip44:3': 'DOGE.DOGE',
|
|
108
|
+
'cosmos:thorchain-mainnet-v1/slip44:931': 'THOR.RUNE',
|
|
109
|
+
'cosmos:cosmoshub-4/slip44:118': 'GAIA.ATOM',
|
|
110
|
+
'eip155:43114/slip44:60': 'AVAX.AVAX',
|
|
111
|
+
'eip155:8453/slip44:60': 'BASE.ETH',
|
|
112
|
+
'eip155:56/slip44:60': 'BSC.BNB',
|
|
113
|
+
// Ethereum ERC20 Tokens
|
|
114
|
+
'eip155:1/erc20:0x7fc66500c84a76ad7e9c93437bfc5ac33e2ddae9': 'ETH.AAVE-0X7FC66500C84A76AD7E9C93437BFC5AC33E2DDAE9',
|
|
115
|
+
'eip155:1/erc20:0x6b175474e89094c44da98b954eedeac495271d0f': 'ETH.DAI-0X6B175474E89094C44DA98B954EEDEAC495271D0F',
|
|
116
|
+
'eip155:1/erc20:0x1494ca1f11d487c2bbe4543e90080aeba4ba3c2b': 'ETH.DPI-0X1494CA1F11D487C2BBE4543E90080AEBA4BA3C2B',
|
|
117
|
+
'eip155:1/erc20:0xc770eefad204b5180df6a14ee197d99d808ee52d': 'ETH.FOX-0XC770EEFAD204B5180DF6A14EE197D99D808EE52D',
|
|
118
|
+
'eip155:1/erc20:0x056fd409e1d7a124bd7017459dfea2f387b6d5cd': 'ETH.GUSD-0X056FD409E1D7A124BD7017459DFEA2F387B6D5CD',
|
|
119
|
+
'eip155:1/erc20:0x514910771af9ca656af840dff83e8264ecf986ca': 'ETH.LINK-0X514910771AF9CA656AF840DFF83E8264ECF986CA',
|
|
120
|
+
'eip155:1/erc20:0x5f98805a4e8be255a32880fdec7f6728c6568ba0': 'ETH.LUSD-0X5F98805A4E8BE255A32880FDEC7F6728C6568BA0',
|
|
121
|
+
'eip155:1/erc20:0x5eaa69b29f99c84fe5de8200340b4e9b4ab38eac': 'ETH.RAZE-0X5EAA69B29F99C84FE5DE8200340B4E9B4AB38EAC',
|
|
122
|
+
'eip155:1/erc20:0xc011a73ee8576fb46f5e1c5751ca3b9fe0af2a6f': 'ETH.SNX-0XC011A73EE8576FB46F5E1C5751CA3B9FE0AF2A6F',
|
|
123
|
+
'eip155:1/erc20:0xa5f2211b9b8170f694421f2046281775e8468044': 'ETH.THOR-0XA5F2211B9B8170F694421F2046281775E8468044',
|
|
124
|
+
'eip155:1/erc20:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48': 'ETH.USDC-0XA0B86991C6218B36C1D19D4A2E9EB0CE3606EB48',
|
|
125
|
+
'eip155:1/erc20:0x8e870d67f660d95d5be530380d0ec0bd388289e1': 'ETH.USDP-0X8E870D67F660D95D5BE530380D0EC0BD388289E1',
|
|
126
|
+
'eip155:1/erc20:0xdac17f958d2ee523a2206206994597c13d831ec7': 'ETH.USDT-0XDAC17F958D2EE523A2206206994597C13D831EC7',
|
|
127
|
+
'eip155:1/erc20:0x815c23eca83261b6ec689b60cc4a58b54bc24d8d': 'ETH.VTHOR-0X815C23ECA83261B6EC689B60CC4A58B54BC24D8D',
|
|
128
|
+
'eip155:1/erc20:0x2260fac5e5542a773aa44fbcfedf7c193bc2c599': 'ETH.WBTC-0X2260FAC5E5542A773AA44FBCFEDF7C193BC2C599',
|
|
129
|
+
'eip155:1/erc20:0x72b886d09c117654ab7da13a14d603001de0b777': 'ETH.XDEFI-0X72B886D09C117654AB7DA13A14D603001DE0B777',
|
|
130
|
+
'eip155:1/erc20:0x69fa0fee221ad11012bab0fdb45d444d3d2ce71c': 'ETH.XRUNE-0X69FA0FEE221AD11012BAB0FDB45D444D3D2CE71C',
|
|
131
|
+
'eip155:1/erc20:0x0bc529c00c6401aef6d220be8c6ea1667f6ad93e': 'ETH.YFI-0X0BC529C00C6401AEF6D220BE8C6EA1667F6AD93E',
|
|
132
|
+
// Avalanche Tokens
|
|
133
|
+
'eip155:43114/erc20:0xfe6b19286885a4f7f55adad09c3cd1f906d2478f': 'AVAX.SOL-0XFE6B19286885A4F7F55ADAD09C3CD1F906D2478F',
|
|
134
|
+
'eip155:43114/erc20:0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e': 'AVAX.USDC-0XB97EF9EF8734C71904D8002F8B6BC66DD9C48A6E',
|
|
135
|
+
'eip155:43114/erc20:0x9702230a8ea53601f5cd2dc00fdbc13d4df4a8c7': 'AVAX.USDT-0X9702230A8EA53601F5CD2DC00FDBC13D4DF4A8C7',
|
|
136
|
+
// BASE Tokens
|
|
137
|
+
'eip155:8453/erc20:0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf': 'BASE.CBBTC-0XCBB7C0000AB88B473B1F5AFD9EF808440EED33BF',
|
|
138
|
+
'eip155:8453/erc20:0x833589fcd6edb6e08f4c7c32d4f71b54bda02913': 'BASE.USDC-0X833589FCD6EDB6E08F4C7C32D4F71B54BDA02913',
|
|
139
|
+
'eip155:8453/erc20:0xacfe6019ed1a7dc6f7b508c02d1b04ec88cc21bf': 'BASE.VVV-0XACFE6019ED1A7DC6F7B508C02D1B04EC88CC21BF',
|
|
140
|
+
// BSC Tokens
|
|
141
|
+
'eip155:56/erc20:0x7130d2a12b9bcbfae4f2634d864a1ee1ce3ead9c': 'BSC.BTCB-0X7130D2A12B9BCBFAE4F2634D864A1EE1CE3EAD9C',
|
|
142
|
+
'eip155:56/erc20:0xe9e7cea3dedca5984780bafc599bd69add087d56': 'BSC.BUSD-0XE9E7CEA3DEDCA5984780BAFC599BD69ADD087D56',
|
|
143
|
+
'eip155:56/erc20:0x2170ed0880ac9a755fd29b2688956bd959f933f8': 'BSC.ETH-0X2170ED0880AC9A755FD29B2688956BD959F933F8',
|
|
144
|
+
'eip155:56/erc20:0x4b0f1812e5df2a09796481ff14017e6005508003': 'BSC.TWT-0X4B0F1812E5DF2A09796481FF14017E6005508003',
|
|
145
|
+
'eip155:56/erc20:0x8ac76a51cc950d9822d68b83fe1ad97b32cd580d': 'BSC.USDC-0X8AC76A51CC950D9822D68B83FE1AD97B32CD580D',
|
|
146
|
+
'eip155:56/erc20:0x55d398326f99059ff775485246999027b3197955': 'BSC.USDT-0X55D398326F99059FF775485246999027B3197955',
|
|
147
|
+
};
|
|
148
|
+
// Comprehensive list of all Thorchain-supported assets (derived from mapping keys)
|
|
149
|
+
var assets = Object.keys(caipToThorchainName);
|
|
150
|
+
// Convert CAIP identifier to Thorchain asset name
|
|
151
|
+
function caipToAssetName(caip) {
|
|
152
|
+
var tag = TAG + " | caipToAssetName | ";
|
|
153
|
+
var thorchainName = caipToThorchainName[caip];
|
|
154
|
+
if (!thorchainName) {
|
|
155
|
+
log.error(tag, "No Thorchain name found for CAIP: ".concat(caip));
|
|
156
|
+
return null;
|
|
157
|
+
}
|
|
158
|
+
return thorchainName;
|
|
159
|
+
}
|
|
99
160
|
module.exports = {
|
|
100
161
|
init: function (settings) {
|
|
101
162
|
return true;
|
|
@@ -106,6 +167,7 @@ module.exports = {
|
|
|
106
167
|
assetSupport: function () {
|
|
107
168
|
return assets;
|
|
108
169
|
},
|
|
170
|
+
caipToAssetName: caipToAssetName,
|
|
109
171
|
getQuote: function (quote) {
|
|
110
172
|
return __awaiter(this, void 0, void 0, function () {
|
|
111
173
|
return __generator(this, function (_a) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pioneer-platform/thorchain-client",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.2",
|
|
4
4
|
"main": "./lib/index.js",
|
|
5
5
|
"types": "./lib/index.d.ts",
|
|
6
6
|
"dependencies": {
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"@pioneer-platform/pioneer-caip": "^9.10.0",
|
|
9
9
|
"@pioneer-platform/pioneer-coins": "^9.11.0",
|
|
10
10
|
"axios": "^1.6.0",
|
|
11
|
-
"dotenv": "^
|
|
11
|
+
"dotenv": "^17.2.3",
|
|
12
12
|
"rango-sdk": "^0.1.45",
|
|
13
13
|
"uuidv4": "^6.2.13"
|
|
14
14
|
},
|