@hypermid/sdk 1.2.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/README.md +71 -0
- package/dist/chain-registry.d.ts +104 -0
- package/dist/chain-registry.d.ts.map +1 -0
- package/dist/chain-registry.js +507 -0
- package/dist/chain-registry.js.map +1 -0
- package/dist/chains.d.ts +85 -0
- package/dist/chains.d.ts.map +1 -0
- package/dist/chains.js +97 -0
- package/dist/chains.js.map +1 -0
- package/dist/client.d.ts +257 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +477 -0
- package/dist/client.js.map +1 -0
- package/dist/errors.d.ts +37 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +56 -0
- package/dist/errors.js.map +1 -0
- package/dist/execution.d.ts +193 -0
- package/dist/execution.d.ts.map +1 -0
- package/dist/execution.js +348 -0
- package/dist/execution.js.map +1 -0
- package/dist/helpers.d.ts +71 -0
- package/dist/helpers.d.ts.map +1 -0
- package/dist/helpers.js +97 -0
- package/dist/helpers.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +487 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/webhook-verify.d.ts +40 -0
- package/dist/webhook-verify.d.ts.map +1 -0
- package/dist/webhook-verify.js +76 -0
- package/dist/webhook-verify.js.map +1 -0
- package/package.json +45 -0
|
@@ -0,0 +1,507 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unified Hypermid Chain Registry
|
|
3
|
+
*
|
|
4
|
+
* Single source of truth for all chain definitions across the Hypermid platform.
|
|
5
|
+
* Maps Hypermid chain slugs to internal numeric IDs, LiFi chain IDs, and
|
|
6
|
+
* Near Intents blockchain strings.
|
|
7
|
+
*
|
|
8
|
+
* Design:
|
|
9
|
+
* - EVM chains keep their standard numeric chain IDs (1, 42161, 8453...)
|
|
10
|
+
* - Non-EVM chains use human-readable string slugs ("solana", "bitcoin", "near")
|
|
11
|
+
* - Both formats are always accepted via resolveChain()
|
|
12
|
+
* - Protocol routing (LiFi vs Near Intents) is handled internally
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* import { resolveChain, ChainSlug } from "@hypermid/sdk";
|
|
17
|
+
*
|
|
18
|
+
* // Resolve by slug or numeric ID — both work
|
|
19
|
+
* const eth = resolveChain("ethereum"); // { slug: "ethereum", numericId: 1, ... }
|
|
20
|
+
* const arb = resolveChain(42161); // { slug: "arbitrum", numericId: 42161, ... }
|
|
21
|
+
* const sol = resolveChain("solana"); // { slug: "solana", numericId: 1151111081099710, ... }
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
// ─── Constants ─────────────────────────────────────────────────────────────
|
|
25
|
+
const NI_BASE = 900_000_000;
|
|
26
|
+
const EVM_PLACEHOLDER = "0x0000000000000000000000000000000000000001";
|
|
27
|
+
// ─── Chain Registry ────────────────────────────────────────────────────────
|
|
28
|
+
export const CHAIN_REGISTRY = [
|
|
29
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
30
|
+
// EVM Chains (standard chain IDs, supported by LiFi + some by Near Intents)
|
|
31
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
32
|
+
{
|
|
33
|
+
slug: "ethereum", numericId: 1, name: "Ethereum", type: "evm",
|
|
34
|
+
providers: ["lifi", "near-intents"], lifiChainId: 1, niBlockchain: "eth",
|
|
35
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
36
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
slug: "optimism", numericId: 10, name: "Optimism", type: "evm",
|
|
40
|
+
providers: ["lifi", "near-intents"], lifiChainId: 10, niBlockchain: "op",
|
|
41
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
42
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
slug: "flare", numericId: 14, name: "Flare", type: "evm",
|
|
46
|
+
providers: ["lifi"], lifiChainId: 14,
|
|
47
|
+
depositMode: "wallet", nativeToken: { symbol: "FLR", name: "Flare", decimals: 18 },
|
|
48
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
slug: "cronos", numericId: 25, name: "Cronos", type: "evm",
|
|
52
|
+
providers: ["lifi"], lifiChainId: 25,
|
|
53
|
+
depositMode: "wallet", nativeToken: { symbol: "CRO", name: "Cronos", decimals: 18 },
|
|
54
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
slug: "rootstock", numericId: 30, name: "Rootstock", type: "evm",
|
|
58
|
+
providers: ["lifi"], lifiChainId: 30,
|
|
59
|
+
depositMode: "wallet", nativeToken: { symbol: "RBTC", name: "RSK BTC", decimals: 18 },
|
|
60
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
slug: "telos", numericId: 40, name: "Telos", type: "evm",
|
|
64
|
+
providers: ["lifi"], lifiChainId: 40,
|
|
65
|
+
depositMode: "wallet", nativeToken: { symbol: "TLOS", name: "Telos", decimals: 18 },
|
|
66
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
slug: "bsc", numericId: 56, name: "BNB Chain", type: "evm",
|
|
70
|
+
providers: ["lifi", "near-intents"], lifiChainId: 56, niBlockchain: "bsc",
|
|
71
|
+
depositMode: "wallet", nativeToken: { symbol: "BNB", name: "BNB", decimals: 18 },
|
|
72
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
slug: "gnosis", numericId: 100, name: "Gnosis", type: "evm",
|
|
76
|
+
providers: ["lifi", "near-intents"], lifiChainId: 100, niBlockchain: "gnosis",
|
|
77
|
+
depositMode: "wallet", nativeToken: { symbol: "xDAI", name: "xDAI", decimals: 18 },
|
|
78
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
slug: "unichain", numericId: 130, name: "Unichain", type: "evm",
|
|
82
|
+
providers: ["lifi"], lifiChainId: 130,
|
|
83
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
84
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
slug: "polygon", numericId: 137, name: "Polygon", type: "evm",
|
|
88
|
+
providers: ["lifi", "near-intents"], lifiChainId: 137, niBlockchain: "pol",
|
|
89
|
+
depositMode: "wallet", nativeToken: { symbol: "POL", name: "POL", decimals: 18 },
|
|
90
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
slug: "sonic", numericId: 146, name: "Sonic", type: "evm",
|
|
94
|
+
providers: ["lifi"], lifiChainId: 146,
|
|
95
|
+
depositMode: "wallet", nativeToken: { symbol: "S", name: "Sonic", decimals: 18 },
|
|
96
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
slug: "x-layer", numericId: 196, name: "X Layer", type: "evm",
|
|
100
|
+
providers: ["lifi", "near-intents"], lifiChainId: 196, niBlockchain: "xlayer",
|
|
101
|
+
depositMode: "wallet", nativeToken: { symbol: "OKB", name: "OKB", decimals: 18 },
|
|
102
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
slug: "opbnb", numericId: 204, name: "opBNB", type: "evm",
|
|
106
|
+
providers: ["lifi"], lifiChainId: 204,
|
|
107
|
+
depositMode: "wallet", nativeToken: { symbol: "BNB", name: "BNB", decimals: 18 },
|
|
108
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
slug: "fraxtal", numericId: 252, name: "Fraxtal", type: "evm",
|
|
112
|
+
providers: ["lifi"], lifiChainId: 252,
|
|
113
|
+
depositMode: "wallet", nativeToken: { symbol: "frxETH", name: "Frax Ether", decimals: 18 },
|
|
114
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
slug: "boba", numericId: 288, name: "Boba", type: "evm",
|
|
118
|
+
providers: ["lifi"], lifiChainId: 288,
|
|
119
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
120
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
slug: "zksync", numericId: 324, name: "zkSync Era", type: "evm",
|
|
124
|
+
providers: ["lifi"], lifiChainId: 324,
|
|
125
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
126
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
slug: "world-chain", numericId: 480, name: "World Chain", type: "evm",
|
|
130
|
+
providers: ["lifi"], lifiChainId: 480,
|
|
131
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
132
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
slug: "flow", numericId: 747, name: "Flow", type: "evm",
|
|
136
|
+
providers: ["lifi"], lifiChainId: 747,
|
|
137
|
+
depositMode: "wallet", nativeToken: { symbol: "FLOW", name: "Flow", decimals: 18 },
|
|
138
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
slug: "hyperevm", numericId: 999, name: "HyperEVM", type: "evm",
|
|
142
|
+
providers: ["lifi"], lifiChainId: 999,
|
|
143
|
+
depositMode: "wallet", nativeToken: { symbol: "HYPE", name: "HYPE", decimals: 18 },
|
|
144
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
slug: "plasma", numericId: 1012, name: "Plasma", type: "evm",
|
|
148
|
+
providers: ["near-intents"], niBlockchain: "plasma",
|
|
149
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
150
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
slug: "metis", numericId: 1088, name: "Metis", type: "evm",
|
|
154
|
+
providers: ["lifi"], lifiChainId: 1088,
|
|
155
|
+
depositMode: "wallet", nativeToken: { symbol: "METIS", name: "Metis", decimals: 18 },
|
|
156
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
slug: "lisk", numericId: 1135, name: "Lisk", type: "evm",
|
|
160
|
+
providers: ["lifi"], lifiChainId: 1135,
|
|
161
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
162
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
slug: "moonbeam", numericId: 1284, name: "Moonbeam", type: "evm",
|
|
166
|
+
providers: ["lifi"], lifiChainId: 1284,
|
|
167
|
+
depositMode: "wallet", nativeToken: { symbol: "GLMR", name: "Glimmer", decimals: 18 },
|
|
168
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
slug: "sei", numericId: 1329, name: "Sei", type: "evm",
|
|
172
|
+
providers: ["lifi"], lifiChainId: 1329,
|
|
173
|
+
depositMode: "wallet", nativeToken: { symbol: "SEI", name: "Sei", decimals: 18 },
|
|
174
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
slug: "gravity", numericId: 1625, name: "Gravity", type: "evm",
|
|
178
|
+
providers: ["lifi"], lifiChainId: 1625,
|
|
179
|
+
depositMode: "wallet", nativeToken: { symbol: "G", name: "Gravity", decimals: 18 },
|
|
180
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
slug: "soneium", numericId: 1868, name: "Soneium", type: "evm",
|
|
184
|
+
providers: ["lifi"], lifiChainId: 1868,
|
|
185
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
186
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
slug: "ronin", numericId: 2020, name: "Ronin", type: "evm",
|
|
190
|
+
providers: ["lifi"], lifiChainId: 2020,
|
|
191
|
+
depositMode: "wallet", nativeToken: { symbol: "RON", name: "Ronin", decimals: 18 },
|
|
192
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
slug: "abstract", numericId: 2741, name: "Abstract", type: "evm",
|
|
196
|
+
providers: ["lifi"], lifiChainId: 2741,
|
|
197
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
198
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
slug: "mantle", numericId: 5000, name: "Mantle", type: "evm",
|
|
202
|
+
providers: ["lifi"], lifiChainId: 5000,
|
|
203
|
+
depositMode: "wallet", nativeToken: { symbol: "MNT", name: "Mantle", decimals: 18 },
|
|
204
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
slug: "base", numericId: 8453, name: "Base", type: "evm",
|
|
208
|
+
providers: ["lifi", "near-intents"], lifiChainId: 8453, niBlockchain: "base",
|
|
209
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
210
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
slug: "monad", numericId: 10143, name: "Monad", type: "evm",
|
|
214
|
+
providers: ["near-intents"], niBlockchain: "monad",
|
|
215
|
+
depositMode: "wallet", nativeToken: { symbol: "MON", name: "Monad", decimals: 18 },
|
|
216
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
slug: "immutable", numericId: 13371, name: "Immutable zkEVM", type: "evm",
|
|
220
|
+
providers: ["lifi"], lifiChainId: 13371,
|
|
221
|
+
depositMode: "wallet", nativeToken: { symbol: "IMX", name: "IMX", decimals: 18 },
|
|
222
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
slug: "apechain", numericId: 33139, name: "Apechain", type: "evm",
|
|
226
|
+
providers: ["lifi"], lifiChainId: 33139,
|
|
227
|
+
depositMode: "wallet", nativeToken: { symbol: "APE", name: "APE", decimals: 18 },
|
|
228
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
slug: "mode", numericId: 34443, name: "Mode", type: "evm",
|
|
232
|
+
providers: ["lifi"], lifiChainId: 34443,
|
|
233
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
234
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
slug: "arbitrum", numericId: 42161, name: "Arbitrum", type: "evm",
|
|
238
|
+
providers: ["lifi", "near-intents"], lifiChainId: 42161, niBlockchain: "arb",
|
|
239
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
240
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
slug: "celo", numericId: 42220, name: "Celo", type: "evm",
|
|
244
|
+
providers: ["lifi"], lifiChainId: 42220,
|
|
245
|
+
depositMode: "wallet", nativeToken: { symbol: "CELO", name: "CELO", decimals: 18 },
|
|
246
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
slug: "avalanche", numericId: 43114, name: "Avalanche", type: "evm",
|
|
250
|
+
providers: ["lifi", "near-intents"], lifiChainId: 43114, niBlockchain: "avax",
|
|
251
|
+
depositMode: "wallet", nativeToken: { symbol: "AVAX", name: "Avalanche", decimals: 18 },
|
|
252
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
slug: "ink", numericId: 57073, name: "Ink", type: "evm",
|
|
256
|
+
providers: ["lifi"], lifiChainId: 57073,
|
|
257
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
258
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
slug: "linea", numericId: 59144, name: "Linea", type: "evm",
|
|
262
|
+
providers: ["lifi"], lifiChainId: 59144,
|
|
263
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
264
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
265
|
+
},
|
|
266
|
+
{
|
|
267
|
+
slug: "bob", numericId: 60808, name: "BOB", type: "evm",
|
|
268
|
+
providers: ["lifi"], lifiChainId: 60808,
|
|
269
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
270
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
271
|
+
},
|
|
272
|
+
{
|
|
273
|
+
slug: "berachain", numericId: 80094, name: "Berachain", type: "evm",
|
|
274
|
+
providers: ["lifi", "near-intents"], lifiChainId: 80094, niBlockchain: "bera",
|
|
275
|
+
depositMode: "wallet", nativeToken: { symbol: "BERA", name: "Bera", decimals: 18 },
|
|
276
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
slug: "blast", numericId: 81457, name: "Blast", type: "evm",
|
|
280
|
+
providers: ["lifi"], lifiChainId: 81457,
|
|
281
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
282
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
slug: "taiko", numericId: 167000, name: "Taiko", type: "evm",
|
|
286
|
+
providers: ["lifi"], lifiChainId: 167000,
|
|
287
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
288
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
slug: "scroll", numericId: 534352, name: "Scroll", type: "evm",
|
|
292
|
+
providers: ["lifi", "near-intents"], lifiChainId: 534352, niBlockchain: "scroll",
|
|
293
|
+
depositMode: "wallet", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
294
|
+
dryQuotePlaceholder: EVM_PLACEHOLDER,
|
|
295
|
+
},
|
|
296
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
297
|
+
// Non-EVM Chains (shared between LiFi and Near Intents)
|
|
298
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
299
|
+
{
|
|
300
|
+
slug: "solana", numericId: 1151111081099710, name: "Solana", type: "svm",
|
|
301
|
+
providers: ["lifi", "near-intents"], lifiChainId: 1151111081099710, niBlockchain: "sol",
|
|
302
|
+
depositMode: "wallet", nativeToken: { symbol: "SOL", name: "Solana", decimals: 9 },
|
|
303
|
+
dryQuotePlaceholder: "11111111111111111111111111111111",
|
|
304
|
+
},
|
|
305
|
+
{
|
|
306
|
+
slug: "bitcoin", numericId: 20000000000001, name: "Bitcoin", type: "utxo",
|
|
307
|
+
providers: ["lifi", "near-intents"], lifiChainId: 20000000000001, niBlockchain: "btc",
|
|
308
|
+
depositMode: "wallet", nativeToken: { symbol: "BTC", name: "Bitcoin", decimals: 8 },
|
|
309
|
+
dryQuotePlaceholder: "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
|
|
310
|
+
},
|
|
311
|
+
{
|
|
312
|
+
slug: "sui", numericId: 9270000000000000, name: "Sui", type: "mvm",
|
|
313
|
+
providers: ["lifi", "near-intents"], lifiChainId: 9270000000000000, niBlockchain: "sui",
|
|
314
|
+
depositMode: "wallet", nativeToken: { symbol: "SUI", name: "Sui", decimals: 9 },
|
|
315
|
+
dryQuotePlaceholder: "0x0000000000000000000000000000000000000000000000000000000000000002",
|
|
316
|
+
},
|
|
317
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
318
|
+
// Near Intents-only Chains (900_000_XXX range)
|
|
319
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
320
|
+
{
|
|
321
|
+
slug: "near", numericId: NI_BASE + 1, name: "NEAR", type: "near",
|
|
322
|
+
providers: ["near-intents"], niBlockchain: "near",
|
|
323
|
+
depositMode: "manual", nativeToken: { symbol: "NEAR", name: "NEAR", decimals: 24 },
|
|
324
|
+
dryQuotePlaceholder: "dontuse.near",
|
|
325
|
+
},
|
|
326
|
+
{
|
|
327
|
+
slug: "ton", numericId: NI_BASE + 2, name: "TON", type: "ton",
|
|
328
|
+
providers: ["near-intents"], niBlockchain: "ton",
|
|
329
|
+
depositMode: "wallet", nativeToken: { symbol: "TON", name: "Toncoin", decimals: 9 },
|
|
330
|
+
dryQuotePlaceholder: "EQAblnTrpCt2FnOwlwGORzJJJbWAniJa4OPyf8XMtm16HxaR",
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
slug: "tron", numericId: NI_BASE + 3, name: "Tron", type: "tvm",
|
|
334
|
+
providers: ["near-intents"], niBlockchain: "tron",
|
|
335
|
+
depositMode: "wallet", nativeToken: { symbol: "TRX", name: "TRON", decimals: 6 },
|
|
336
|
+
dryQuotePlaceholder: "T9yD14Nj9j7xAB4dbGeiX9h8unkKHxuWwb",
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
slug: "xrp", numericId: NI_BASE + 4, name: "XRP Ledger", type: "xrp",
|
|
340
|
+
providers: ["near-intents"], niBlockchain: "xrp",
|
|
341
|
+
depositMode: "manual", nativeToken: { symbol: "XRP", name: "XRP", decimals: 6 },
|
|
342
|
+
dryQuotePlaceholder: "rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh",
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
slug: "doge", numericId: NI_BASE + 5, name: "Dogecoin", type: "utxo",
|
|
346
|
+
providers: ["near-intents"], niBlockchain: "doge",
|
|
347
|
+
depositMode: "manual", nativeToken: { symbol: "DOGE", name: "Dogecoin", decimals: 8 },
|
|
348
|
+
dryQuotePlaceholder: "DRapidDiBYggT1zdrELnVhNDqyAHn89cRi",
|
|
349
|
+
},
|
|
350
|
+
{
|
|
351
|
+
slug: "litecoin", numericId: NI_BASE + 6, name: "Litecoin", type: "utxo",
|
|
352
|
+
providers: ["near-intents"], niBlockchain: "ltc",
|
|
353
|
+
depositMode: "manual", nativeToken: { symbol: "LTC", name: "Litecoin", decimals: 8 },
|
|
354
|
+
dryQuotePlaceholder: "LhyLNfBkoKshT7R8Pce6vkB9T2cP2o84hx",
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
slug: "bitcoin-cash", numericId: NI_BASE + 7, name: "Bitcoin Cash", type: "utxo",
|
|
358
|
+
providers: ["near-intents"], niBlockchain: "bch",
|
|
359
|
+
depositMode: "manual", nativeToken: { symbol: "BCH", name: "Bitcoin Cash", decimals: 8 },
|
|
360
|
+
dryQuotePlaceholder: "bitcoincash:qp3wjpa3tjlj042z2wv7hahsldgwhwy0rq9sywjpyy",
|
|
361
|
+
},
|
|
362
|
+
{
|
|
363
|
+
slug: "stellar", numericId: NI_BASE + 8, name: "Stellar", type: "stellar",
|
|
364
|
+
providers: ["near-intents"], niBlockchain: "stellar",
|
|
365
|
+
depositMode: "manual", nativeToken: { symbol: "XLM", name: "Stellar Lumen", decimals: 7 },
|
|
366
|
+
dryQuotePlaceholder: "GAAZI4TCR3TY5OJHCTJC2A4QSY6CJWJH5IAJTGKIN2ER7LBNVKOCCWN7",
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
slug: "cardano", numericId: NI_BASE + 9, name: "Cardano", type: "cardano",
|
|
370
|
+
providers: ["near-intents"], niBlockchain: "cardano",
|
|
371
|
+
depositMode: "manual", nativeToken: { symbol: "ADA", name: "Cardano", decimals: 6 },
|
|
372
|
+
dryQuotePlaceholder: "addr1vy5zuhh9685fup86syuzmu3e6eengzv8t46mfqxg086cvqqrukl6w",
|
|
373
|
+
},
|
|
374
|
+
{
|
|
375
|
+
slug: "aptos", numericId: NI_BASE + 10, name: "Aptos", type: "aptos",
|
|
376
|
+
providers: ["near-intents"], niBlockchain: "aptos",
|
|
377
|
+
depositMode: "manual", nativeToken: { symbol: "APT", name: "Aptos", decimals: 8 },
|
|
378
|
+
dryQuotePlaceholder: "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
slug: "starknet", numericId: NI_BASE + 11, name: "StarkNet", type: "starknet",
|
|
382
|
+
providers: ["near-intents"], niBlockchain: "starknet",
|
|
383
|
+
depositMode: "manual", nativeToken: { symbol: "ETH", name: "Ether", decimals: 18 },
|
|
384
|
+
dryQuotePlaceholder: "0x0000000000000000000000000000000000000000000000000000000000000001",
|
|
385
|
+
},
|
|
386
|
+
{
|
|
387
|
+
slug: "dash", numericId: NI_BASE + 12, name: "Dash", type: "utxo",
|
|
388
|
+
providers: ["near-intents"], niBlockchain: "dash",
|
|
389
|
+
depositMode: "manual", nativeToken: { symbol: "DASH", name: "Dash", decimals: 8 },
|
|
390
|
+
dryQuotePlaceholder: "XqL1DXzfqWcMKbhswTBYFGKtdfYJC2JWnj",
|
|
391
|
+
},
|
|
392
|
+
{
|
|
393
|
+
slug: "zcash", numericId: NI_BASE + 13, name: "Zcash", type: "utxo",
|
|
394
|
+
providers: ["near-intents"], niBlockchain: "zec",
|
|
395
|
+
depositMode: "manual", nativeToken: { symbol: "ZEC", name: "Zcash", decimals: 8 },
|
|
396
|
+
dryQuotePlaceholder: "t1Rv4exT7bqhZqi2j7xz8bUHDMxwosrjADU",
|
|
397
|
+
},
|
|
398
|
+
{
|
|
399
|
+
slug: "aleo", numericId: NI_BASE + 14, name: "Aleo", type: "aleo",
|
|
400
|
+
providers: ["near-intents"], niBlockchain: "aleo",
|
|
401
|
+
depositMode: "manual", nativeToken: { symbol: "ALEO", name: "Aleo", decimals: 6 },
|
|
402
|
+
dryQuotePlaceholder: "aleo1qnr4dkkvkgfqph0vzc3y6z2eu975wnpz2925ntjccd5cfqxtyu8sta57j8",
|
|
403
|
+
},
|
|
404
|
+
{
|
|
405
|
+
slug: "adi", numericId: NI_BASE + 15, name: "ADI", type: "other",
|
|
406
|
+
providers: ["near-intents"], niBlockchain: "adi",
|
|
407
|
+
depositMode: "manual", nativeToken: { symbol: "ADI", name: "ADI", decimals: 18 },
|
|
408
|
+
},
|
|
409
|
+
];
|
|
410
|
+
// ─── Lookup Maps (built once, O(1) access) ─────────────────────────────────
|
|
411
|
+
const bySlug = new Map();
|
|
412
|
+
const byNumericId = new Map();
|
|
413
|
+
const byNiBlockchain = new Map();
|
|
414
|
+
for (const entry of CHAIN_REGISTRY) {
|
|
415
|
+
bySlug.set(entry.slug, entry);
|
|
416
|
+
byNumericId.set(entry.numericId, entry);
|
|
417
|
+
if (entry.niBlockchain) {
|
|
418
|
+
byNiBlockchain.set(entry.niBlockchain, entry);
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
// ─── Public API ────────────────────────────────────────────────────────────
|
|
422
|
+
/**
|
|
423
|
+
* Resolve a chain by slug (string) or numeric ID (number).
|
|
424
|
+
* Returns the ChainEntry or null if not found.
|
|
425
|
+
*
|
|
426
|
+
* @example
|
|
427
|
+
* resolveChain("ethereum") → { slug: "ethereum", numericId: 1, ... }
|
|
428
|
+
* resolveChain(42161) → { slug: "arbitrum", numericId: 42161, ... }
|
|
429
|
+
* resolveChain("solana") → { slug: "solana", numericId: 1151111081099710, ... }
|
|
430
|
+
* resolveChain(1151111081099710) → { slug: "solana", numericId: 1151111081099710, ... }
|
|
431
|
+
*/
|
|
432
|
+
export function resolveChain(input) {
|
|
433
|
+
if (typeof input === "number") {
|
|
434
|
+
return byNumericId.get(input) ?? null;
|
|
435
|
+
}
|
|
436
|
+
// Try slug first
|
|
437
|
+
const slugMatch = bySlug.get(input.toLowerCase());
|
|
438
|
+
if (slugMatch)
|
|
439
|
+
return slugMatch;
|
|
440
|
+
// Try as numeric string
|
|
441
|
+
const num = Number(input);
|
|
442
|
+
if (!isNaN(num) && Number.isFinite(num)) {
|
|
443
|
+
return byNumericId.get(num) ?? null;
|
|
444
|
+
}
|
|
445
|
+
// Try as NI blockchain string (e.g., "eth", "arb", "sol")
|
|
446
|
+
return byNiBlockchain.get(input.toLowerCase()) ?? null;
|
|
447
|
+
}
|
|
448
|
+
/**
|
|
449
|
+
* Convert any chain identifier to the LiFi chain ID.
|
|
450
|
+
* Returns undefined if LiFi doesn't support this chain.
|
|
451
|
+
*/
|
|
452
|
+
export function toLifiChainId(input) {
|
|
453
|
+
return resolveChain(input)?.lifiChainId;
|
|
454
|
+
}
|
|
455
|
+
/**
|
|
456
|
+
* Convert any chain identifier to the Near Intents blockchain string.
|
|
457
|
+
* Returns undefined if Near Intents doesn't support this chain.
|
|
458
|
+
*/
|
|
459
|
+
export function toNIBlockchain(input) {
|
|
460
|
+
return resolveChain(input)?.niBlockchain;
|
|
461
|
+
}
|
|
462
|
+
/**
|
|
463
|
+
* Convert any chain identifier to the internal numeric ID.
|
|
464
|
+
* This is the canonical numeric ID used internally.
|
|
465
|
+
*/
|
|
466
|
+
export function toNumericId(input) {
|
|
467
|
+
return resolveChain(input)?.numericId;
|
|
468
|
+
}
|
|
469
|
+
/**
|
|
470
|
+
* Check if a chain ID belongs to a Near Intents-only chain (900_000_XXX range).
|
|
471
|
+
*/
|
|
472
|
+
export function isNIOnlyChain(input) {
|
|
473
|
+
const entry = resolveChain(input);
|
|
474
|
+
if (!entry)
|
|
475
|
+
return false;
|
|
476
|
+
return entry.providers.length === 1 && entry.providers[0] === "near-intents";
|
|
477
|
+
}
|
|
478
|
+
/**
|
|
479
|
+
* Check if a chain supports wallet-connected deposit mode.
|
|
480
|
+
*/
|
|
481
|
+
export function supportsWalletDeposit(input) {
|
|
482
|
+
const entry = resolveChain(input);
|
|
483
|
+
return entry?.depositMode === "wallet";
|
|
484
|
+
}
|
|
485
|
+
/**
|
|
486
|
+
* Get the dry quote placeholder address for a chain.
|
|
487
|
+
*/
|
|
488
|
+
export function getDryQuotePlaceholder(input) {
|
|
489
|
+
return resolveChain(input)?.dryQuotePlaceholder;
|
|
490
|
+
}
|
|
491
|
+
/**
|
|
492
|
+
* Get all registered chains.
|
|
493
|
+
*/
|
|
494
|
+
export function getAllChains() {
|
|
495
|
+
return [...CHAIN_REGISTRY];
|
|
496
|
+
}
|
|
497
|
+
/**
|
|
498
|
+
* Get chains filtered by provider.
|
|
499
|
+
*/
|
|
500
|
+
export function getChainsByProvider(provider) {
|
|
501
|
+
return CHAIN_REGISTRY.filter((c) => c.providers.includes(provider));
|
|
502
|
+
}
|
|
503
|
+
/**
|
|
504
|
+
* The Near Intents chain ID base constant (900_000_000).
|
|
505
|
+
*/
|
|
506
|
+
export const NI_CHAIN_BASE = NI_BASE;
|
|
507
|
+
//# sourceMappingURL=chain-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chain-registry.js","sourceRoot":"","sources":["../src/chain-registry.ts"],"names":[],"mappings":"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"}
|
package/dist/chains.d.ts
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chain ID constants for all supported chains.
|
|
3
|
+
*
|
|
4
|
+
* EVM chains use their standard numeric chain IDs.
|
|
5
|
+
* Non-EVM chains can be referenced by slug string (preferred) or numeric ID.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* import { ChainId, ChainSlug } from "@hypermid/sdk";
|
|
10
|
+
*
|
|
11
|
+
* // Numeric IDs (backwards compatible)
|
|
12
|
+
* const quote = await hm.getQuote({
|
|
13
|
+
* fromChain: ChainId.ETHEREUM, // 1
|
|
14
|
+
* toChain: ChainId.ARBITRUM, // 42161
|
|
15
|
+
* ...
|
|
16
|
+
* });
|
|
17
|
+
*
|
|
18
|
+
* // String slugs (recommended for non-EVM)
|
|
19
|
+
* const quote2 = await hm.getQuote({
|
|
20
|
+
* fromChain: ChainSlug.SOLANA, // "solana"
|
|
21
|
+
* toChain: ChainSlug.BITCOIN, // "bitcoin"
|
|
22
|
+
* ...
|
|
23
|
+
* });
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare const ChainId: {
|
|
27
|
+
readonly ETHEREUM: 1;
|
|
28
|
+
readonly OPTIMISM: 10;
|
|
29
|
+
readonly BSC: 56;
|
|
30
|
+
readonly GNOSIS: 100;
|
|
31
|
+
readonly POLYGON: 137;
|
|
32
|
+
readonly X_LAYER: 196;
|
|
33
|
+
readonly ARBITRUM: 42161;
|
|
34
|
+
readonly AVALANCHE: 43114;
|
|
35
|
+
readonly BASE: 8453;
|
|
36
|
+
readonly PLASMA: 1012;
|
|
37
|
+
readonly BERACHAIN: 80094;
|
|
38
|
+
readonly MONAD: 10143;
|
|
39
|
+
readonly SOLANA: 1151111081099710;
|
|
40
|
+
readonly BITCOIN: 20000000000001;
|
|
41
|
+
readonly SUI: 9270000000000000;
|
|
42
|
+
readonly NEAR: number;
|
|
43
|
+
readonly TON: number;
|
|
44
|
+
readonly TRON: number;
|
|
45
|
+
readonly XRP: number;
|
|
46
|
+
readonly DOGECOIN: number;
|
|
47
|
+
readonly LITECOIN: number;
|
|
48
|
+
readonly BITCOIN_CASH: number;
|
|
49
|
+
readonly STELLAR: number;
|
|
50
|
+
readonly CARDANO: number;
|
|
51
|
+
readonly APTOS: number;
|
|
52
|
+
readonly STARKNET: number;
|
|
53
|
+
readonly DASH: number;
|
|
54
|
+
readonly ZCASH: number;
|
|
55
|
+
readonly ALEO: number;
|
|
56
|
+
readonly ADI: number;
|
|
57
|
+
};
|
|
58
|
+
export type ChainIdValue = (typeof ChainId)[keyof typeof ChainId];
|
|
59
|
+
/**
|
|
60
|
+
* Human-readable chain slug constants (recommended for non-EVM chains).
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```ts
|
|
64
|
+
* import { ChainSlug } from "@hypermid/sdk";
|
|
65
|
+
* const quote = await hm.getQuote({
|
|
66
|
+
* fromChain: ChainSlug.SOLANA, // "solana"
|
|
67
|
+
* toChain: ChainSlug.NEAR, // "near"
|
|
68
|
+
* ...
|
|
69
|
+
* });
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
export declare const ChainSlug: {
|
|
73
|
+
[K: string]: string;
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* Check if a chain ID belongs to a Near Intents-only chain.
|
|
77
|
+
* Accepts slug strings or numeric IDs.
|
|
78
|
+
*/
|
|
79
|
+
export declare function isNearIntentsChain(chainId: string | number): boolean;
|
|
80
|
+
/**
|
|
81
|
+
* Check if a chain supports wallet-connected deposit mode.
|
|
82
|
+
* Accepts slug strings or numeric IDs.
|
|
83
|
+
*/
|
|
84
|
+
export declare function supportsWalletDeposit(chainId: string | number): boolean;
|
|
85
|
+
//# sourceMappingURL=chains.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chains.d.ts","sourceRoot":"","sources":["../src/chains.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAaH,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCV,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,OAAO,OAAO,CAAC,CAAC;AAElE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,SAAS,EAEjB;IAAE,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAE7B;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAMpE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAGvE"}
|