@rhinestone/shared-configs 1.10.1 → 1.11.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.
Files changed (67) hide show
  1. package/dist/configs/chains.json +82 -0
  2. package/dist/configs/mainnets.json +6 -0
  3. package/dist/scripts/__tests__/impact-analysis.test.d.ts +0 -1
  4. package/dist/scripts/__tests__/validation.test.d.ts +0 -1
  5. package/dist/scripts/__tests__/validation.test.js +5 -2
  6. package/dist/scripts/generate-abis.d.ts +0 -1
  7. package/dist/scripts/generate.d.ts +0 -1
  8. package/dist/scripts/generate.js +9 -0
  9. package/dist/scripts/impact-analysis.d.ts +0 -1
  10. package/dist/scripts/sync-abis.d.ts +0 -1
  11. package/dist/scripts/validation.d.ts +0 -1
  12. package/dist/src/__tests__/chainFactsClient.test.d.ts +0 -1
  13. package/dist/src/__tests__/chainHasUnpricedTokens.test.d.ts +0 -1
  14. package/dist/src/__tests__/chainVirtualization.test.d.ts +0 -1
  15. package/dist/src/__tests__/chainVirtualization.test.js +71 -18
  16. package/dist/src/abis/index.d.ts +0 -1
  17. package/dist/src/abis/optimized.d.ts +0 -1
  18. package/dist/src/abis/orchestrator.d.ts +0 -1
  19. package/dist/src/abis/relayer.d.ts +0 -1
  20. package/dist/src/chainFactsClient.d.ts +0 -1
  21. package/dist/src/chainVirtualization.d.ts +18 -1
  22. package/dist/src/chainVirtualization.js +24 -0
  23. package/dist/src/chains.d.ts +6 -1
  24. package/dist/src/chains.js +84 -0
  25. package/dist/src/generated/abis.d.ts +0 -1
  26. package/dist/src/generated/chainFactsKey.d.ts +0 -1
  27. package/dist/src/generated/contracts.d.ts +0 -1
  28. package/dist/src/generated/contracts.dev.d.ts +0 -1
  29. package/dist/src/generated/contracts.dev.js +44 -22
  30. package/dist/src/generated/networks.d.ts +2 -1
  31. package/dist/src/generated/networks.js +2 -0
  32. package/dist/src/generated/packageVersion.d.ts +1 -2
  33. package/dist/src/generated/packageVersion.js +1 -1
  34. package/dist/src/hypercore.d.ts +51 -16
  35. package/dist/src/hypercore.js +61 -18
  36. package/dist/src/index.d.ts +5 -6
  37. package/dist/src/index.js +7 -2
  38. package/dist/src/oft.d.ts +0 -1
  39. package/dist/src/types.d.ts +26 -2
  40. package/package.json +7 -2
  41. package/dist/scripts/__tests__/impact-analysis.test.d.ts.map +0 -1
  42. package/dist/scripts/__tests__/validation.test.d.ts.map +0 -1
  43. package/dist/scripts/generate-abis.d.ts.map +0 -1
  44. package/dist/scripts/generate.d.ts.map +0 -1
  45. package/dist/scripts/impact-analysis.d.ts.map +0 -1
  46. package/dist/scripts/sync-abis.d.ts.map +0 -1
  47. package/dist/scripts/validation.d.ts.map +0 -1
  48. package/dist/src/__tests__/chainFactsClient.test.d.ts.map +0 -1
  49. package/dist/src/__tests__/chainHasUnpricedTokens.test.d.ts.map +0 -1
  50. package/dist/src/__tests__/chainVirtualization.test.d.ts.map +0 -1
  51. package/dist/src/abis/index.d.ts.map +0 -1
  52. package/dist/src/abis/optimized.d.ts.map +0 -1
  53. package/dist/src/abis/orchestrator.d.ts.map +0 -1
  54. package/dist/src/abis/relayer.d.ts.map +0 -1
  55. package/dist/src/chainFactsClient.d.ts.map +0 -1
  56. package/dist/src/chainVirtualization.d.ts.map +0 -1
  57. package/dist/src/chains.d.ts.map +0 -1
  58. package/dist/src/generated/abis.d.ts.map +0 -1
  59. package/dist/src/generated/chainFactsKey.d.ts.map +0 -1
  60. package/dist/src/generated/contracts.d.ts.map +0 -1
  61. package/dist/src/generated/contracts.dev.d.ts.map +0 -1
  62. package/dist/src/generated/networks.d.ts.map +0 -1
  63. package/dist/src/generated/packageVersion.d.ts.map +0 -1
  64. package/dist/src/hypercore.d.ts.map +0 -1
  65. package/dist/src/index.d.ts.map +0 -1
  66. package/dist/src/oft.d.ts.map +0 -1
  67. package/dist/src/types.d.ts.map +0 -1
@@ -20,7 +20,8 @@ const contractAddresses = {
20
20
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
21
21
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
22
22
  "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
23
- "oftProxy": "0xd6ac32d80975195aF535faE83c67EA1d36486321"
23
+ "oftProxy": "0xd6ac32d80975195aF535faE83c67EA1d36486321",
24
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
24
25
  },
25
26
  "10": {
26
27
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -40,7 +41,8 @@ const contractAddresses = {
40
41
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
41
42
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
42
43
  "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
43
- "oftProxy": "0x5B64E414f4dEA97062D6B552852FFbAcaf6d462b"
44
+ "oftProxy": "0x5B64E414f4dEA97062D6B552852FFbAcaf6d462b",
45
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
44
46
  },
45
47
  "56": {
46
48
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -59,7 +61,8 @@ const contractAddresses = {
59
61
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
60
62
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
61
63
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
62
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
64
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
65
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
63
66
  },
64
67
  "100": {
65
68
  "relayArbiter": "0xf50962E8f230D83c67002597992ce0f9EBDD49c0",
@@ -69,7 +72,8 @@ const contractAddresses = {
69
72
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
70
73
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
71
74
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
72
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
75
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
76
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
73
77
  },
74
78
  "130": {
75
79
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -89,7 +93,8 @@ const contractAddresses = {
89
93
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
90
94
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
91
95
  "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
92
- "oftProxy": "0x0c9365ACEB4788F2f2D21823fbd0ff44542c6B54"
96
+ "oftProxy": "0x0c9365ACEB4788F2f2D21823fbd0ff44542c6B54",
97
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
93
98
  },
94
99
  "137": {
95
100
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -109,7 +114,8 @@ const contractAddresses = {
109
114
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
110
115
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
111
116
  "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
112
- "oftProxy": "0x81E23Ed7B30780dd7DFc1F1641D255906280934a"
117
+ "oftProxy": "0x81E23Ed7B30780dd7DFc1F1641D255906280934a",
118
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
113
119
  },
114
120
  "143": {
115
121
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -124,7 +130,8 @@ const contractAddresses = {
124
130
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
125
131
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
126
132
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
127
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
133
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
134
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
128
135
  },
129
136
  "146": {
130
137
  "ecoArbiter": "0x1BeBAfb3D05d84A5Bfd94800c88d1342f755d8AB",
@@ -138,7 +145,8 @@ const contractAddresses = {
138
145
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
139
146
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
140
147
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
141
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
148
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
149
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
142
150
  },
143
151
  "999": {
144
152
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -157,7 +165,8 @@ const contractAddresses = {
157
165
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
158
166
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
159
167
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
160
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
168
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
169
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
161
170
  },
162
171
  "1868": {
163
172
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -172,7 +181,8 @@ const contractAddresses = {
172
181
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
173
182
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
174
183
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
175
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
184
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
185
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
176
186
  },
177
187
  "4663": {
178
188
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -187,7 +197,8 @@ const contractAddresses = {
187
197
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
188
198
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
189
199
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
190
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
200
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
201
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
191
202
  },
192
203
  "8453": {
193
204
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -206,7 +217,8 @@ const contractAddresses = {
206
217
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
207
218
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
208
219
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
209
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
220
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
221
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
210
222
  },
211
223
  "9745": {
212
224
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -226,7 +238,8 @@ const contractAddresses = {
226
238
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
227
239
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
228
240
  "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
229
- "oftProxy": "0xB01c27A13Ac8044ACB2315C3c9b877bc8C83ce27"
241
+ "oftProxy": "0xB01c27A13Ac8044ACB2315C3c9b877bc8C83ce27",
242
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
230
243
  },
231
244
  "9746": {
232
245
  "ecoArbiter": "0x8A061029AE4c5Cf69b5368119B3b0C80B31F55fE",
@@ -237,7 +250,8 @@ const contractAddresses = {
237
250
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
238
251
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
239
252
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
240
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
253
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
254
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
241
255
  },
242
256
  "42161": {
243
257
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -257,7 +271,8 @@ const contractAddresses = {
257
271
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
258
272
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
259
273
  "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
260
- "oftProxy": "0x8886505Fc68b53B0D5156DbB68CFAdA878c89f89"
274
+ "oftProxy": "0x8886505Fc68b53B0D5156DbB68CFAdA878c89f89",
275
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
261
276
  },
262
277
  "43114": {
263
278
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -272,7 +287,8 @@ const contractAddresses = {
272
287
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
273
288
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
274
289
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
275
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
290
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
291
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
276
292
  },
277
293
  "84532": {
278
294
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -288,7 +304,8 @@ const contractAddresses = {
288
304
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
289
305
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
290
306
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
291
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
307
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
308
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
292
309
  },
293
310
  "421614": {
294
311
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -304,7 +321,8 @@ const contractAddresses = {
304
321
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
305
322
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
306
323
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
307
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
324
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
325
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
308
326
  },
309
327
  "747474": {
310
328
  "relayArbiter": "0xf50962E8f230D83c67002597992ce0f9EBDD49c0",
@@ -314,7 +332,8 @@ const contractAddresses = {
314
332
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
315
333
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
316
334
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
317
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
335
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
336
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
318
337
  },
319
338
  "11155111": {
320
339
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -330,7 +349,8 @@ const contractAddresses = {
330
349
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
331
350
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
332
351
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
333
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
352
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
353
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
334
354
  },
335
355
  "11155420": {
336
356
  "acrossHandler": "0xF6fC9aa0DA8621f5596024f34E277032E5A80AE8",
@@ -346,7 +366,8 @@ const contractAddresses = {
346
366
  "permit2": "0x000000000022D473030F116dDEE9F6B43aC78BA3",
347
367
  "feeCollector": "0xfeebabe17996b3346cf80f04a1f072102a90cf09",
348
368
  "appFeeCollector": "0xc9dc20145135368d5184dB9Ee6598c885a7f03e1",
349
- "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc"
369
+ "appFeePot": "0xb83E1d9C267e1f99529f8cE4CE20899f1FCAdBCc",
370
+ "tokenTransferProxy": "0x21416a06e81fe115a5c8bf554b2b01383bd9b9f3"
350
371
  },
351
372
  "*": {
352
373
  "addressBook": "0xb7Eed4f2c3c3EE7349f80414ffb04dA6c247924E",
@@ -372,7 +393,8 @@ const contractAddresses = {
372
393
  "samechainArbiter": "0x8fA7720Eee299223f25De8DC03C68A28541dCD10",
373
394
  "samechainAdapter": "0xca9f2c72e9DDa98a5286607f8693744396851C34",
374
395
  "smartSessionEmissary": "0x60731dE80D78548875f8A67C4FeC2a8660194e0c",
375
- "smartSessionLens": "0xE1B629162B08b8Baefa2B30Ee34D6cAB63580320"
396
+ "smartSessionLens": "0xE1B629162B08b8Baefa2B30Ee34D6cAB63580320",
397
+ "swapper": "0x8206052a213AA7cafB18ec7898e8D1D421C02100"
376
398
  }
377
399
  };
378
400
  exports.contractAddresses = contractAddresses;
@@ -5316,6 +5316,8 @@ declare enum MainnetNetwork {
5316
5316
  BSC,
5317
5317
  HYPEREVM,
5318
5318
  HYPERCORE = 1337,
5319
+ HYPERCORE_SPOT = 1337001,
5320
+ HYPERCORE_PERP = 1337002,
5319
5321
  MONAD,
5320
5322
  UNICHAIN,
5321
5323
  SOLANA = 792703809,
@@ -5340,4 +5342,3 @@ declare enum OPStackChains {
5340
5342
  TESTNET_BASE
5341
5343
  }
5342
5344
  export { mainnetChains, testnetChains, chains, MainnetNetwork, TestnetNetwork, OPStackChains, };
5343
- //# sourceMappingURL=networks.d.ts.map
@@ -23,6 +23,8 @@ var MainnetNetwork;
23
23
  MainnetNetwork[MainnetNetwork["BSC"] = chains_1.bsc.id] = "BSC";
24
24
  MainnetNetwork[MainnetNetwork["HYPEREVM"] = chains_1.hyperEvm.id] = "HYPEREVM";
25
25
  MainnetNetwork[MainnetNetwork["HYPERCORE"] = 1337] = "HYPERCORE";
26
+ MainnetNetwork[MainnetNetwork["HYPERCORE_SPOT"] = 1337001] = "HYPERCORE_SPOT";
27
+ MainnetNetwork[MainnetNetwork["HYPERCORE_PERP"] = 1337002] = "HYPERCORE_PERP";
26
28
  MainnetNetwork[MainnetNetwork["MONAD"] = chains_1.monad.id] = "MONAD";
27
29
  MainnetNetwork[MainnetNetwork["UNICHAIN"] = chains_1.unichain.id] = "UNICHAIN";
28
30
  MainnetNetwork[MainnetNetwork["SOLANA"] = 792703809] = "SOLANA";
@@ -1,3 +1,2 @@
1
- declare const PACKAGE_VERSION = "1.10.1";
1
+ declare const PACKAGE_VERSION = "1.11.0";
2
2
  export { PACKAGE_VERSION };
3
- //# sourceMappingURL=packageVersion.d.ts.map
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PACKAGE_VERSION = void 0;
4
4
  // Auto-generated by scripts/generate.ts. Do not edit manually.
5
- const PACKAGE_VERSION = "1.10.1";
5
+ const PACKAGE_VERSION = "1.11.0";
6
6
  exports.PACKAGE_VERSION = PACKAGE_VERSION;
@@ -1,19 +1,37 @@
1
1
  import { type Address, type Hex } from "viem";
2
2
  import { MainnetNetwork } from "./generated/networks";
3
3
  /**
4
- * Virtual chain id orchestrators use to address HyperCore as a destination.
5
- * Resolved to HyperEVM (999) at the MetaIntent boundary; the signed EIP-712
6
- * payload binds to 999, not 1337.
4
+ * Virtual chain ids orchestrators use to address HyperCore as a destination
5
+ * one per DELIVERY VENUE. Both resolve to HyperEVM (999) at the MetaIntent
6
+ * boundary; the signed EIP-712 payload binds to 999, never to these.
7
7
  *
8
- * Backed by the `virtual` registry entry (`MainnetNetwork.HYPERCORE`), whose
9
- * canonical CAIP-2 is `hypercore:mainnet` read it via
10
- * `getCaip2(HYPERCORE_CHAIN_ID)` (`eip155:1337` would be wrong: 1337 is the
11
- * Hardhat/Ganache local chain id).
8
+ * The venue is part of the destination because the two credit different
9
+ * accounts and the wrong one is invisible: the intent completes, the fill
10
+ * succeeds, and only the recipient's Core state shows where the funds went
11
+ * (RHI-5510). Encoding it in the chain id makes it unforgettable and
12
+ * undroppable — unlike the optional `tokenRequests[].balance` flag it replaces,
13
+ * which four separate field-by-field rebuilds each silently discarded.
14
+ *
15
+ * Read the canonical CAIP-2 via `getCaip2(...)` — `eip155:*` would be wrong for
16
+ * either.
17
+ */
18
+ export declare const HYPERCORE_SPOT_CHAIN_ID = MainnetNetwork.HYPERCORE_SPOT;
19
+ export declare const HYPERCORE_PERP_CHAIN_ID = MainnetNetwork.HYPERCORE_PERP;
20
+ /**
21
+ * The Core L1 itself (`hypercore:mainnet`) — HyperCore as a deposit SOURCE.
22
+ *
23
+ * Deposits arrive here with no venue in them, which is what `deposits.chain` and
24
+ * the QuickNode webhook already mean, so this stays a live registry entry with
25
+ * `roles: { origin: true, destination: false }`.
26
+ *
27
+ * It is deliberately NOT aliased to either venue for delivery: it defaulted to
28
+ * perp, so pointing it at spot would silently move funds and pointing it at perp
29
+ * would silently keep the bug. `canBeDestination` is what refuses it.
12
30
  */
13
- export declare const HYPERCORE_CHAIN_ID = MainnetNetwork.HYPERCORE;
31
+ export declare const HYPERCORE_ORIGIN_CHAIN_ID = 1337;
14
32
  /**
15
33
  * Real EVM settlement chain for HyperCore destinations. HyperCore is a virtual
16
- * chain id (1337) with no RPC of its own; funds land on HyperEVM (999), where
34
+ * chain id with no RPC of its own; funds land on HyperEVM (999), where
17
35
  * `depositFor` runs. Consumers that need the settlement chain (RPC, EIP-712
18
36
  * domain `chainId`, contract dispatch) translate at their boundary via
19
37
  * `resolveSettlementChainId`.
@@ -22,12 +40,27 @@ export declare const HYPERCORE_SETTLEMENT_CHAIN_ID: number;
22
40
  /**
23
41
  * Resolves a (possibly virtual) chain id to the real settlement chain where
24
42
  * orchestrator EVM operations execute. Identity for first-party EVM chains
25
- * and non-EVM chains (bridge-terminated); maps `HYPERCORE_CHAIN_ID`
26
- * `HYPERCORE_SETTLEMENT_CHAIN_ID` for HyperCore destinations.
43
+ * and non-EVM chains (bridge-terminated); maps either HyperCore venue id
44
+ * `HYPERCORE_SETTLEMENT_CHAIN_ID`.
27
45
  */
28
46
  export declare function resolveSettlementChainId(chainId: number): number;
29
- /** True when the chain id is a HyperCore virtual destination. */
47
+ /**
48
+ * True for either HyperCore DELIVERY VENUE. Deliberately false for
49
+ * `HYPERCORE_ORIGIN_CHAIN_ID`, which names the Core L1 without naming an account
50
+ * — a caller that passes it fails the destination check loudly instead of
51
+ * routing to a guessed venue.
52
+ */
30
53
  export declare function isHyperCoreChainId(chainId: number): boolean;
54
+ /**
55
+ * The `uint32 destinationDex` for `CoreDepositWallet.depositFor` — the single
56
+ * value that decides which HyperCore account is credited. Derived from the
57
+ * destination chain id, so it cannot disagree with what the caller addressed.
58
+ *
59
+ * Throws rather than defaulting: every historical incarnation of a default here
60
+ * (the `?? 'perp'` at the MetaIntent boundary, and `getDepositForCall`'s old
61
+ * optional parameter) produced silently misrouted funds.
62
+ */
63
+ export declare function getHyperCoreDestinationDex(chainId: number): number;
31
64
  /**
32
65
  * Hyperliquid CoreWriter precompile on HyperEVM. Not used for USDC delivery
33
66
  * — kept as a documented constant for future actions (spot send, vault
@@ -100,8 +133,10 @@ export declare function getApproveCoreDepositWalletCall(usdcAddress: Address, am
100
133
  * `recipient`'s HyperCore account with `amount` USDC (in HyperEVM 6-decimal
101
134
  * units; Hyperliquid handles the wei-precision conversion internally).
102
135
  *
103
- * `destinationDex`: `HYPERCORE_SPOT_DEX` (default) or
104
- * `HYPERCORE_DEFAULT_PERP_DEX`.
136
+ * `destinationDex` is REQUIRED — derive it from the destination chain id with
137
+ * `getHyperCoreDestinationDex`. It used to default to `HYPERCORE_SPOT_DEX`
138
+ * here while the orchestrator's caller defaulted to the perp dex, so the two
139
+ * sides documented opposite behaviour for the same omission; that disagreement
140
+ * is the shape of the RHI-5510 bug and a default is what allows it.
105
141
  */
106
- export declare function getDepositForCall(recipient: Address, amount: bigint, destinationDex?: number): HyperCoreExecution;
107
- //# sourceMappingURL=hypercore.d.ts.map
142
+ export declare function getDepositForCall(recipient: Address, amount: bigint, destinationDex: number): HyperCoreExecution;
@@ -1,8 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.coreDepositWalletAbi = exports.HYPERCORE_USDC_ACTIVATION_FEE = exports.HYPERCORE_DEFAULT_PERP_DEX = exports.HYPERCORE_SPOT_DEX = exports.CORE_DEPOSIT_WALLET = exports.CORE_WRITER_PRECOMPILE = exports.HYPERCORE_SETTLEMENT_CHAIN_ID = exports.HYPERCORE_CHAIN_ID = void 0;
3
+ exports.coreDepositWalletAbi = exports.HYPERCORE_USDC_ACTIVATION_FEE = exports.HYPERCORE_DEFAULT_PERP_DEX = exports.HYPERCORE_SPOT_DEX = exports.CORE_DEPOSIT_WALLET = exports.CORE_WRITER_PRECOMPILE = exports.HYPERCORE_SETTLEMENT_CHAIN_ID = exports.HYPERCORE_ORIGIN_CHAIN_ID = exports.HYPERCORE_PERP_CHAIN_ID = exports.HYPERCORE_SPOT_CHAIN_ID = void 0;
4
4
  exports.resolveSettlementChainId = resolveSettlementChainId;
5
5
  exports.isHyperCoreChainId = isHyperCoreChainId;
6
+ exports.getHyperCoreDestinationDex = getHyperCoreDestinationDex;
6
7
  exports.getApproveCoreDepositWalletCall = getApproveCoreDepositWalletCall;
7
8
  exports.getDepositForCall = getDepositForCall;
8
9
  const viem_1 = require("viem");
@@ -30,19 +31,37 @@ const networks_1 = require("./generated/networks");
30
31
  // bridging behavior below stays here rather than in the generated registry.
31
32
  // ---------------------------------------------------------------------------
32
33
  /**
33
- * Virtual chain id orchestrators use to address HyperCore as a destination.
34
- * Resolved to HyperEVM (999) at the MetaIntent boundary; the signed EIP-712
35
- * payload binds to 999, not 1337.
34
+ * Virtual chain ids orchestrators use to address HyperCore as a destination
35
+ * one per DELIVERY VENUE. Both resolve to HyperEVM (999) at the MetaIntent
36
+ * boundary; the signed EIP-712 payload binds to 999, never to these.
36
37
  *
37
- * Backed by the `virtual` registry entry (`MainnetNetwork.HYPERCORE`), whose
38
- * canonical CAIP-2 is `hypercore:mainnet` read it via
39
- * `getCaip2(HYPERCORE_CHAIN_ID)` (`eip155:1337` would be wrong: 1337 is the
40
- * Hardhat/Ganache local chain id).
38
+ * The venue is part of the destination because the two credit different
39
+ * accounts and the wrong one is invisible: the intent completes, the fill
40
+ * succeeds, and only the recipient's Core state shows where the funds went
41
+ * (RHI-5510). Encoding it in the chain id makes it unforgettable and
42
+ * undroppable — unlike the optional `tokenRequests[].balance` flag it replaces,
43
+ * which four separate field-by-field rebuilds each silently discarded.
44
+ *
45
+ * Read the canonical CAIP-2 via `getCaip2(...)` — `eip155:*` would be wrong for
46
+ * either.
47
+ */
48
+ exports.HYPERCORE_SPOT_CHAIN_ID = networks_1.MainnetNetwork.HYPERCORE_SPOT;
49
+ exports.HYPERCORE_PERP_CHAIN_ID = networks_1.MainnetNetwork.HYPERCORE_PERP;
50
+ /**
51
+ * The Core L1 itself (`hypercore:mainnet`) — HyperCore as a deposit SOURCE.
52
+ *
53
+ * Deposits arrive here with no venue in them, which is what `deposits.chain` and
54
+ * the QuickNode webhook already mean, so this stays a live registry entry with
55
+ * `roles: { origin: true, destination: false }`.
56
+ *
57
+ * It is deliberately NOT aliased to either venue for delivery: it defaulted to
58
+ * perp, so pointing it at spot would silently move funds and pointing it at perp
59
+ * would silently keep the bug. `canBeDestination` is what refuses it.
41
60
  */
42
- exports.HYPERCORE_CHAIN_ID = networks_1.MainnetNetwork.HYPERCORE;
61
+ exports.HYPERCORE_ORIGIN_CHAIN_ID = 1337;
43
62
  /**
44
63
  * Real EVM settlement chain for HyperCore destinations. HyperCore is a virtual
45
- * chain id (1337) with no RPC of its own; funds land on HyperEVM (999), where
64
+ * chain id with no RPC of its own; funds land on HyperEVM (999), where
46
65
  * `depositFor` runs. Consumers that need the settlement chain (RPC, EIP-712
47
66
  * domain `chainId`, contract dispatch) translate at their boundary via
48
67
  * `resolveSettlementChainId`.
@@ -51,15 +70,36 @@ exports.HYPERCORE_SETTLEMENT_CHAIN_ID = networks_1.MainnetNetwork.HYPEREVM;
51
70
  /**
52
71
  * Resolves a (possibly virtual) chain id to the real settlement chain where
53
72
  * orchestrator EVM operations execute. Identity for first-party EVM chains
54
- * and non-EVM chains (bridge-terminated); maps `HYPERCORE_CHAIN_ID`
55
- * `HYPERCORE_SETTLEMENT_CHAIN_ID` for HyperCore destinations.
73
+ * and non-EVM chains (bridge-terminated); maps either HyperCore venue id
74
+ * `HYPERCORE_SETTLEMENT_CHAIN_ID`.
56
75
  */
57
76
  function resolveSettlementChainId(chainId) {
58
- return chainId === exports.HYPERCORE_CHAIN_ID ? exports.HYPERCORE_SETTLEMENT_CHAIN_ID : chainId;
77
+ return isHyperCoreChainId(chainId) ? exports.HYPERCORE_SETTLEMENT_CHAIN_ID : chainId;
59
78
  }
60
- /** True when the chain id is a HyperCore virtual destination. */
79
+ /**
80
+ * True for either HyperCore DELIVERY VENUE. Deliberately false for
81
+ * `HYPERCORE_ORIGIN_CHAIN_ID`, which names the Core L1 without naming an account
82
+ * — a caller that passes it fails the destination check loudly instead of
83
+ * routing to a guessed venue.
84
+ */
61
85
  function isHyperCoreChainId(chainId) {
62
- return chainId === exports.HYPERCORE_CHAIN_ID;
86
+ return (chainId === exports.HYPERCORE_SPOT_CHAIN_ID || chainId === exports.HYPERCORE_PERP_CHAIN_ID);
87
+ }
88
+ /**
89
+ * The `uint32 destinationDex` for `CoreDepositWallet.depositFor` — the single
90
+ * value that decides which HyperCore account is credited. Derived from the
91
+ * destination chain id, so it cannot disagree with what the caller addressed.
92
+ *
93
+ * Throws rather than defaulting: every historical incarnation of a default here
94
+ * (the `?? 'perp'` at the MetaIntent boundary, and `getDepositForCall`'s old
95
+ * optional parameter) produced silently misrouted funds.
96
+ */
97
+ function getHyperCoreDestinationDex(chainId) {
98
+ if (chainId === exports.HYPERCORE_SPOT_CHAIN_ID)
99
+ return exports.HYPERCORE_SPOT_DEX;
100
+ if (chainId === exports.HYPERCORE_PERP_CHAIN_ID)
101
+ return exports.HYPERCORE_DEFAULT_PERP_DEX;
102
+ throw new Error(`getHyperCoreDestinationDex: ${chainId} is not a HyperCore venue (expected ${exports.HYPERCORE_SPOT_CHAIN_ID} spot or ${exports.HYPERCORE_PERP_CHAIN_ID} perp)`);
63
103
  }
64
104
  /**
65
105
  * Hyperliquid CoreWriter precompile on HyperEVM. Not used for USDC delivery
@@ -127,10 +167,13 @@ function getApproveCoreDepositWalletCall(usdcAddress, amount) {
127
167
  * `recipient`'s HyperCore account with `amount` USDC (in HyperEVM 6-decimal
128
168
  * units; Hyperliquid handles the wei-precision conversion internally).
129
169
  *
130
- * `destinationDex`: `HYPERCORE_SPOT_DEX` (default) or
131
- * `HYPERCORE_DEFAULT_PERP_DEX`.
170
+ * `destinationDex` is REQUIRED — derive it from the destination chain id with
171
+ * `getHyperCoreDestinationDex`. It used to default to `HYPERCORE_SPOT_DEX`
172
+ * here while the orchestrator's caller defaulted to the perp dex, so the two
173
+ * sides documented opposite behaviour for the same omission; that disagreement
174
+ * is the shape of the RHI-5510 bug and a default is what allows it.
132
175
  */
133
- function getDepositForCall(recipient, amount, destinationDex = exports.HYPERCORE_SPOT_DEX) {
176
+ function getDepositForCall(recipient, amount, destinationDex) {
134
177
  return {
135
178
  to: exports.CORE_DEPOSIT_WALLET,
136
179
  value: 0n,
@@ -1,12 +1,12 @@
1
1
  import { contractAddresses } from "./generated/contracts";
2
2
  import { contractAddresses as contractAddressesDev } from "./generated/contracts.dev";
3
- import type { ChainEntry, ChainExplorer, ChainItem, ChainList, ChainNetwork, ChainStack, ChainRegistry, ProviderName, ProviderRegistry, SettlementLayer, SupportedChain, SupportedMainnet, SupportedOPStackMainnet, SupportedOPStackTestnet, SupportedTestnet, SwapQuoter } from "./types";
3
+ import type { ChainEntry, ChainExplorer, ChainItem, ChainList, ChainNetwork, ChainStack, ChainRegistry, ChainRoles, ProviderName, ProviderRegistry, SettlementLayer, SupportedChain, SupportedMainnet, SupportedOPStackMainnet, SupportedOPStackTestnet, SupportedTestnet, SwapQuoter } from "./types";
4
4
  import { chains, MainnetNetwork, mainnetChains, OPStackChains, TestnetNetwork, testnetChains } from "./types";
5
5
  import type { PegGroup } from "./types";
6
6
  import { getOftConfig, getSupportedOftTokens, hasOftSupport, OFT_REGISTRY } from "./oft";
7
7
  import type { OftConfig } from "./oft";
8
- import { CORE_DEPOSIT_WALLET, CORE_WRITER_PRECOMPILE, getApproveCoreDepositWalletCall, getDepositForCall, HYPERCORE_CHAIN_ID, HYPERCORE_DEFAULT_PERP_DEX, HYPERCORE_SETTLEMENT_CHAIN_ID, HYPERCORE_SPOT_DEX, HYPERCORE_USDC_ACTIVATION_FEE, isHyperCoreChainId, resolveSettlementChainId } from "./hypercore";
9
- import { chainIdFromCaip2, getCaip2, getNonEvmChainIds, isNonEvmChainId } from "./chainVirtualization";
8
+ import { CORE_DEPOSIT_WALLET, CORE_WRITER_PRECOMPILE, getApproveCoreDepositWalletCall, getDepositForCall, getHyperCoreDestinationDex, HYPERCORE_DEFAULT_PERP_DEX, HYPERCORE_ORIGIN_CHAIN_ID, HYPERCORE_PERP_CHAIN_ID, HYPERCORE_SETTLEMENT_CHAIN_ID, HYPERCORE_SPOT_CHAIN_ID, HYPERCORE_SPOT_DEX, HYPERCORE_USDC_ACTIVATION_FEE, isHyperCoreChainId, resolveSettlementChainId } from "./hypercore";
9
+ import { chainIdFromCaip2, getCaip2, getNonEvmChainIds, canBeDestination, canBeOrigin, isNonEvmChainId } from "./chainVirtualization";
10
10
  import { createChainFactsClient } from "./chainFactsClient";
11
11
  import { CHAIN_FACTS_LATEST_URL, CHAIN_FACTS_PUBLIC_KEY } from "./generated/chainFactsKey";
12
12
  import type { ChainFactsClient, ChainFactsClientOptions, ChainFactsErrorPhase, ChainFactsPayload, ChainFactsSnapshot, ChainFactsSource } from "./chainFactsClient";
@@ -15,7 +15,6 @@ declare const providerRegistry: ProviderRegistry;
15
15
  declare const mainnetChainList: ChainList;
16
16
  declare const testnetChainList: ChainList;
17
17
  declare function chainHasUnpricedTokens(chainId: number): boolean;
18
- export { chainRegistry, providerRegistry, mainnetChainList, testnetChainList, contractAddresses, contractAddressesDev, chains, mainnetChains, testnetChains, MainnetNetwork, OPStackChains, TestnetNetwork, OFT_REGISTRY, getOftConfig, hasOftSupport, getSupportedOftTokens, chainHasUnpricedTokens, HYPERCORE_CHAIN_ID, HYPERCORE_SETTLEMENT_CHAIN_ID, CORE_WRITER_PRECOMPILE, CORE_DEPOSIT_WALLET, HYPERCORE_SPOT_DEX, HYPERCORE_DEFAULT_PERP_DEX, HYPERCORE_USDC_ACTIVATION_FEE, getApproveCoreDepositWalletCall, getDepositForCall, isHyperCoreChainId, resolveSettlementChainId, isNonEvmChainId, getNonEvmChainIds, getCaip2, chainIdFromCaip2, createChainFactsClient, CHAIN_FACTS_LATEST_URL, CHAIN_FACTS_PUBLIC_KEY, };
19
- export type { ChainEntry, ChainExplorer, ChainItem, ChainList, ChainNetwork, ChainStack, ChainRegistry, ProviderRegistry, ProviderName, SwapQuoter, SupportedMainnet, SupportedTestnet, SupportedChain, SupportedOPStackMainnet, SupportedOPStackTestnet, SettlementLayer, OftConfig, PegGroup, ChainFactsClient, ChainFactsClientOptions, ChainFactsErrorPhase, ChainFactsPayload, ChainFactsSnapshot, ChainFactsSource, };
18
+ export { chainRegistry, providerRegistry, mainnetChainList, testnetChainList, contractAddresses, contractAddressesDev, chains, mainnetChains, testnetChains, MainnetNetwork, OPStackChains, TestnetNetwork, OFT_REGISTRY, getOftConfig, hasOftSupport, getSupportedOftTokens, chainHasUnpricedTokens, HYPERCORE_SPOT_CHAIN_ID, HYPERCORE_PERP_CHAIN_ID, HYPERCORE_ORIGIN_CHAIN_ID, getHyperCoreDestinationDex, HYPERCORE_SETTLEMENT_CHAIN_ID, CORE_WRITER_PRECOMPILE, CORE_DEPOSIT_WALLET, HYPERCORE_SPOT_DEX, HYPERCORE_DEFAULT_PERP_DEX, HYPERCORE_USDC_ACTIVATION_FEE, getApproveCoreDepositWalletCall, getDepositForCall, isHyperCoreChainId, resolveSettlementChainId, canBeOrigin, canBeDestination, isNonEvmChainId, getNonEvmChainIds, getCaip2, chainIdFromCaip2, createChainFactsClient, CHAIN_FACTS_LATEST_URL, CHAIN_FACTS_PUBLIC_KEY, };
19
+ export type { ChainEntry, ChainExplorer, ChainItem, ChainList, ChainNetwork, ChainStack, ChainRegistry, ChainRoles, ProviderRegistry, ProviderName, SwapQuoter, SupportedMainnet, SupportedTestnet, SupportedChain, SupportedOPStackMainnet, SupportedOPStackTestnet, SettlementLayer, OftConfig, PegGroup, ChainFactsClient, ChainFactsClientOptions, ChainFactsErrorPhase, ChainFactsPayload, ChainFactsSnapshot, ChainFactsSource, };
20
20
  export * from "./abis";
21
- //# sourceMappingURL=index.d.ts.map
package/dist/src/index.js CHANGED
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
17
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.CHAIN_FACTS_PUBLIC_KEY = exports.CHAIN_FACTS_LATEST_URL = exports.createChainFactsClient = exports.chainIdFromCaip2 = exports.getCaip2 = exports.getNonEvmChainIds = exports.isNonEvmChainId = exports.resolveSettlementChainId = exports.isHyperCoreChainId = exports.getDepositForCall = exports.getApproveCoreDepositWalletCall = exports.HYPERCORE_USDC_ACTIVATION_FEE = exports.HYPERCORE_DEFAULT_PERP_DEX = exports.HYPERCORE_SPOT_DEX = exports.CORE_DEPOSIT_WALLET = exports.CORE_WRITER_PRECOMPILE = exports.HYPERCORE_SETTLEMENT_CHAIN_ID = exports.HYPERCORE_CHAIN_ID = exports.getSupportedOftTokens = exports.hasOftSupport = exports.getOftConfig = exports.OFT_REGISTRY = exports.TestnetNetwork = exports.OPStackChains = exports.MainnetNetwork = exports.testnetChains = exports.mainnetChains = exports.chains = exports.contractAddressesDev = exports.contractAddresses = exports.testnetChainList = exports.mainnetChainList = exports.providerRegistry = exports.chainRegistry = void 0;
20
+ exports.CHAIN_FACTS_PUBLIC_KEY = exports.CHAIN_FACTS_LATEST_URL = exports.createChainFactsClient = exports.chainIdFromCaip2 = exports.getCaip2 = exports.getNonEvmChainIds = exports.isNonEvmChainId = exports.canBeDestination = exports.canBeOrigin = exports.resolveSettlementChainId = exports.isHyperCoreChainId = exports.getDepositForCall = exports.getApproveCoreDepositWalletCall = exports.HYPERCORE_USDC_ACTIVATION_FEE = exports.HYPERCORE_DEFAULT_PERP_DEX = exports.HYPERCORE_SPOT_DEX = exports.CORE_DEPOSIT_WALLET = exports.CORE_WRITER_PRECOMPILE = exports.HYPERCORE_SETTLEMENT_CHAIN_ID = exports.getHyperCoreDestinationDex = exports.HYPERCORE_ORIGIN_CHAIN_ID = exports.HYPERCORE_PERP_CHAIN_ID = exports.HYPERCORE_SPOT_CHAIN_ID = exports.getSupportedOftTokens = exports.hasOftSupport = exports.getOftConfig = exports.OFT_REGISTRY = exports.TestnetNetwork = exports.OPStackChains = exports.MainnetNetwork = exports.testnetChains = exports.mainnetChains = exports.chains = exports.contractAddressesDev = exports.contractAddresses = exports.testnetChainList = exports.mainnetChainList = exports.providerRegistry = exports.chainRegistry = void 0;
21
21
  exports.chainHasUnpricedTokens = chainHasUnpricedTokens;
22
22
  const chains_json_1 = __importDefault(require("../configs/chains.json"));
23
23
  const mainnets_json_1 = __importDefault(require("../configs/mainnets.json"));
@@ -44,9 +44,12 @@ Object.defineProperty(exports, "CORE_DEPOSIT_WALLET", { enumerable: true, get: f
44
44
  Object.defineProperty(exports, "CORE_WRITER_PRECOMPILE", { enumerable: true, get: function () { return hypercore_1.CORE_WRITER_PRECOMPILE; } });
45
45
  Object.defineProperty(exports, "getApproveCoreDepositWalletCall", { enumerable: true, get: function () { return hypercore_1.getApproveCoreDepositWalletCall; } });
46
46
  Object.defineProperty(exports, "getDepositForCall", { enumerable: true, get: function () { return hypercore_1.getDepositForCall; } });
47
- Object.defineProperty(exports, "HYPERCORE_CHAIN_ID", { enumerable: true, get: function () { return hypercore_1.HYPERCORE_CHAIN_ID; } });
47
+ Object.defineProperty(exports, "getHyperCoreDestinationDex", { enumerable: true, get: function () { return hypercore_1.getHyperCoreDestinationDex; } });
48
48
  Object.defineProperty(exports, "HYPERCORE_DEFAULT_PERP_DEX", { enumerable: true, get: function () { return hypercore_1.HYPERCORE_DEFAULT_PERP_DEX; } });
49
+ Object.defineProperty(exports, "HYPERCORE_ORIGIN_CHAIN_ID", { enumerable: true, get: function () { return hypercore_1.HYPERCORE_ORIGIN_CHAIN_ID; } });
50
+ Object.defineProperty(exports, "HYPERCORE_PERP_CHAIN_ID", { enumerable: true, get: function () { return hypercore_1.HYPERCORE_PERP_CHAIN_ID; } });
49
51
  Object.defineProperty(exports, "HYPERCORE_SETTLEMENT_CHAIN_ID", { enumerable: true, get: function () { return hypercore_1.HYPERCORE_SETTLEMENT_CHAIN_ID; } });
52
+ Object.defineProperty(exports, "HYPERCORE_SPOT_CHAIN_ID", { enumerable: true, get: function () { return hypercore_1.HYPERCORE_SPOT_CHAIN_ID; } });
50
53
  Object.defineProperty(exports, "HYPERCORE_SPOT_DEX", { enumerable: true, get: function () { return hypercore_1.HYPERCORE_SPOT_DEX; } });
51
54
  Object.defineProperty(exports, "HYPERCORE_USDC_ACTIVATION_FEE", { enumerable: true, get: function () { return hypercore_1.HYPERCORE_USDC_ACTIVATION_FEE; } });
52
55
  Object.defineProperty(exports, "isHyperCoreChainId", { enumerable: true, get: function () { return hypercore_1.isHyperCoreChainId; } });
@@ -55,6 +58,8 @@ const chainVirtualization_1 = require("./chainVirtualization");
55
58
  Object.defineProperty(exports, "chainIdFromCaip2", { enumerable: true, get: function () { return chainVirtualization_1.chainIdFromCaip2; } });
56
59
  Object.defineProperty(exports, "getCaip2", { enumerable: true, get: function () { return chainVirtualization_1.getCaip2; } });
57
60
  Object.defineProperty(exports, "getNonEvmChainIds", { enumerable: true, get: function () { return chainVirtualization_1.getNonEvmChainIds; } });
61
+ Object.defineProperty(exports, "canBeDestination", { enumerable: true, get: function () { return chainVirtualization_1.canBeDestination; } });
62
+ Object.defineProperty(exports, "canBeOrigin", { enumerable: true, get: function () { return chainVirtualization_1.canBeOrigin; } });
58
63
  Object.defineProperty(exports, "isNonEvmChainId", { enumerable: true, get: function () { return chainVirtualization_1.isNonEvmChainId; } });
59
64
  const chainFactsClient_1 = require("./chainFactsClient");
60
65
  Object.defineProperty(exports, "createChainFactsClient", { enumerable: true, get: function () { return chainFactsClient_1.createChainFactsClient; } });
package/dist/src/oft.d.ts CHANGED
@@ -23,4 +23,3 @@ export declare function getLayerZeroEid(tokenSymbol: string, chainId: number): n
23
23
  export declare function getOftAdapter(tokenSymbol: string, chainId: number): string | undefined;
24
24
  export declare function getOftProgramId(chainId: number): string | undefined;
25
25
  export declare function getOftSupportedChains(tokenSymbol: string): number[];
26
- //# sourceMappingURL=oft.d.ts.map
@@ -73,6 +73,10 @@ interface NativeTokenEntry {
73
73
  interface SwapQuoterConfig {
74
74
  slug?: string;
75
75
  }
76
+ interface ChainRoles {
77
+ origin: boolean;
78
+ destination: boolean;
79
+ }
76
80
  interface ChainEntry {
77
81
  name: string;
78
82
  vmType: VmType;
@@ -133,6 +137,27 @@ interface ChainEntry {
133
137
  * real chains.
134
138
  */
135
139
  virtual?: boolean;
140
+ /**
141
+ * Which directions of value transfer this chain supports.
142
+ *
143
+ * `origin` — funds can ARRIVE from here (a deposit source).
144
+ * `destination` — funds can be DELIVERED here (an intent destination).
145
+ *
146
+ * Omitted means both, so every ordinary chain is unaffected.
147
+ *
148
+ * Declared rather than inferred because the answer varies WITHIN a CAIP-2
149
+ * namespace, which is how consumers currently decide it. The three HyperCore
150
+ * entries are all `hypercore:` and disagree: the Core L1 is a source only, the
151
+ * two venues are destinations only. A `switch (namespace)` cannot express that
152
+ * at all — not awkwardly, but not at all — so without this the split needs a
153
+ * chain-id special case in every consumer that publishes or validates a
154
+ * direction.
155
+ *
156
+ * A consumer may still be MORE restrictive than the registry (a service that
157
+ * can see a chain's deposits but chooses not to advertise them stays free to
158
+ * say so). This is the outer bound: what the chain itself permits.
159
+ */
160
+ roles?: ChainRoles;
136
161
  nativeToken: NativeTokenEntry;
137
162
  wrappedNativeToken: NativeTokenEntry;
138
163
  tokens: TokenEntry[];
@@ -184,5 +209,4 @@ interface ErpcConfig {
184
209
  providerIdPrefix: Record<string, string>;
185
210
  }
186
211
  export { OPStackChains, MainnetNetwork, TestnetNetwork, mainnetChains, testnetChains, chains, PEG_GROUPS };
187
- export type { ChainItem, ChainEntry, ChainExplorer, ChainNetwork, ChainRegistry, ChainStack, ChainList, ContractAddresses, ProviderRegistry, ProviderName, SettlementLayer, SupportedTestnet, SupportedMainnet, SupportedOPStackMainnet, SupportedOPStackTestnet, SupportedChain, SwapQuoter, SwapQuoterConfig, PegGroup, VmType, ErpcFailsafe, ErpcChainOverride, ErpcConfig, };
188
- //# sourceMappingURL=types.d.ts.map
212
+ export type { ChainItem, ChainEntry, ChainExplorer, ChainNetwork, ChainRegistry, ChainRoles, ChainStack, ChainList, ContractAddresses, ProviderRegistry, ProviderName, SettlementLayer, SupportedTestnet, SupportedMainnet, SupportedOPStackMainnet, SupportedOPStackTestnet, SupportedChain, SwapQuoter, SwapQuoterConfig, PegGroup, VmType, ErpcFailsafe, ErpcChainOverride, ErpcConfig, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rhinestone/shared-configs",
3
- "version": "1.10.1",
3
+ "version": "1.11.0",
4
4
  "description": "Reusable configuration files for Rhinestone services",
5
5
  "author": {
6
6
  "name": "Rhinestone",
@@ -41,7 +41,12 @@
41
41
  "viem": "^2.55.0"
42
42
  },
43
43
  "peerDependencies": {
44
- "typescript": "^5",
44
+ "typescript": ">=5",
45
45
  "viem": "^2.55.0"
46
+ },
47
+ "peerDependenciesMeta": {
48
+ "typescript": {
49
+ "optional": true
50
+ }
46
51
  }
47
52
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"impact-analysis.test.d.ts","sourceRoot":"","sources":["../../../scripts/__tests__/impact-analysis.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation.test.d.ts","sourceRoot":"","sources":["../../../scripts/__tests__/validation.test.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-abis.d.ts","sourceRoot":"","sources":["../../scripts/generate-abis.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../scripts/generate.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"impact-analysis.d.ts","sourceRoot":"","sources":["../../scripts/impact-analysis.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,UAAU,CAAC;IACvC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,cAAc,EAAE,YAAY,EAAE,CAAC;IAC/B,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,GAAG,cAAc,CAiHpF;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,CAyF/D"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"sync-abis.d.ts","sourceRoot":"","sources":["../../scripts/sync-abis.ts"],"names":[],"mappings":""}