@0xsequence/hooks 5.2.1 → 5.2.3
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 +0 -15
- package/dist/cjs/constants.d.ts +1 -1
- package/dist/cjs/constants.js +2 -2
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/hooks/Combination/useGetSwapQuote.d.ts +32 -22
- package/dist/cjs/hooks/Combination/useGetSwapQuote.d.ts.map +1 -1
- package/dist/cjs/hooks/Combination/useGetSwapQuote.js +46 -38
- package/dist/cjs/hooks/Combination/useGetSwapQuote.js.map +1 -1
- package/dist/cjs/hooks/Combination/useGetSwapRoutes.d.ts +61 -0
- package/dist/cjs/hooks/Combination/useGetSwapRoutes.d.ts.map +1 -0
- package/dist/cjs/hooks/Combination/useGetSwapRoutes.js +79 -0
- package/dist/cjs/hooks/Combination/useGetSwapRoutes.js.map +1 -0
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +3 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/tests/Combination/useGetSwapQuote.test.js +32 -13
- package/dist/cjs/tests/Combination/useGetSwapQuote.test.js.map +1 -1
- package/dist/cjs/tests/handlers.d.ts.map +1 -1
- package/dist/cjs/tests/handlers.js +9 -45
- package/dist/cjs/tests/handlers.js.map +1 -1
- package/dist/esm/constants.d.ts +1 -1
- package/dist/esm/constants.js +2 -2
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/hooks/Combination/useGetSwapQuote.d.ts +32 -22
- package/dist/esm/hooks/Combination/useGetSwapQuote.d.ts.map +1 -1
- package/dist/esm/hooks/Combination/useGetSwapQuote.js +46 -38
- package/dist/esm/hooks/Combination/useGetSwapQuote.js.map +1 -1
- package/dist/esm/hooks/Combination/useGetSwapRoutes.d.ts +61 -0
- package/dist/esm/hooks/Combination/useGetSwapRoutes.d.ts.map +1 -0
- package/dist/esm/hooks/Combination/useGetSwapRoutes.js +75 -0
- package/dist/esm/hooks/Combination/useGetSwapRoutes.js.map +1 -0
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/tests/Combination/useGetSwapQuote.test.js +32 -13
- package/dist/esm/tests/Combination/useGetSwapQuote.test.js.map +1 -1
- package/dist/esm/tests/handlers.d.ts.map +1 -1
- package/dist/esm/tests/handlers.js +9 -45
- package/dist/esm/tests/handlers.js.map +1 -1
- package/package.json +17 -17
- package/dist/cjs/hooks/Combination/useGetSwapPrices.d.ts +0 -92
- package/dist/cjs/hooks/Combination/useGetSwapPrices.d.ts.map +0 -1
- package/dist/cjs/hooks/Combination/useGetSwapPrices.js +0 -177
- package/dist/cjs/hooks/Combination/useGetSwapPrices.js.map +0 -1
- package/dist/cjs/tests/Combination/useGetSwapPrices.test.d.ts +0 -2
- package/dist/cjs/tests/Combination/useGetSwapPrices.test.d.ts.map +0 -1
- package/dist/cjs/tests/Combination/useGetSwapPrices.test.js +0 -37
- package/dist/cjs/tests/Combination/useGetSwapPrices.test.js.map +0 -1
- package/dist/esm/hooks/Combination/useGetSwapPrices.d.ts +0 -92
- package/dist/esm/hooks/Combination/useGetSwapPrices.d.ts.map +0 -1
- package/dist/esm/hooks/Combination/useGetSwapPrices.js +0 -173
- package/dist/esm/hooks/Combination/useGetSwapPrices.js.map +0 -1
- package/dist/esm/tests/Combination/useGetSwapPrices.test.d.ts +0 -2
- package/dist/esm/tests/Combination/useGetSwapPrices.test.d.ts.map +0 -1
- package/dist/esm/tests/Combination/useGetSwapPrices.test.js +0 -35
- package/dist/esm/tests/Combination/useGetSwapPrices.test.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGetSwapQuote.test.js","sourceRoot":"","sources":["../../../../src/tests/Combination/useGetSwapQuote.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAA;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,MAAM,
|
|
1
|
+
{"version":3,"file":"useGetSwapQuote.test.js","sourceRoot":"","sources":["../../../../src/tests/Combination/useGetSwapQuote.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/tests/handlers.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/tests/handlers.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,6BA2TpB,CAAA"}
|
|
@@ -235,47 +235,7 @@ export const handlers = [
|
|
|
235
235
|
]
|
|
236
236
|
});
|
|
237
237
|
}),
|
|
238
|
-
http.post('*/
|
|
239
|
-
return HttpResponse.json({
|
|
240
|
-
swapPrices: [
|
|
241
|
-
{
|
|
242
|
-
currencyAddress: '0x7ceb23fd6bc0add59e62ac25578270cff1b9f619',
|
|
243
|
-
currencyBalance: '180000000000000',
|
|
244
|
-
price: '7351402238115',
|
|
245
|
-
maxPrice: '7718972350021',
|
|
246
|
-
transactionValue: '0'
|
|
247
|
-
},
|
|
248
|
-
{
|
|
249
|
-
currencyAddress: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
|
|
250
|
-
currencyBalance: '1478702455538610019',
|
|
251
|
-
price: '64490918485610659',
|
|
252
|
-
maxPrice: '67715464409891192',
|
|
253
|
-
transactionValue: '67715464409891192'
|
|
254
|
-
}
|
|
255
|
-
]
|
|
256
|
-
}, { status: 200 });
|
|
257
|
-
}),
|
|
258
|
-
http.post('*/GetSwapPermit2Prices', async () => {
|
|
259
|
-
return HttpResponse.json({
|
|
260
|
-
swapPermit2Prices: [
|
|
261
|
-
{
|
|
262
|
-
currencyAddress: '0x7ceb23fd6bc0add59e62ac25578270cff1b9f619',
|
|
263
|
-
currencyBalance: '180000000000000',
|
|
264
|
-
price: '7351402238115',
|
|
265
|
-
maxPrice: '7718972350021',
|
|
266
|
-
transactionValue: '0'
|
|
267
|
-
},
|
|
268
|
-
{
|
|
269
|
-
currencyAddress: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
|
|
270
|
-
currencyBalance: '1478702455538610019',
|
|
271
|
-
price: '64490918485610659',
|
|
272
|
-
maxPrice: '67715464409891192',
|
|
273
|
-
transactionValue: '67715464409891192'
|
|
274
|
-
}
|
|
275
|
-
]
|
|
276
|
-
}, { status: 200 });
|
|
277
|
-
}),
|
|
278
|
-
http.post('*/GetSwapQuote', async () => {
|
|
238
|
+
http.post('*/GetLifiSwapQuote', async () => {
|
|
279
239
|
return HttpResponse.json({
|
|
280
240
|
swapQuote: {
|
|
281
241
|
currencyAddress: '0x7ceb23fd6bc0add59e62ac25578270cff1b9f619',
|
|
@@ -285,13 +245,15 @@ export const handlers = [
|
|
|
285
245
|
to: '0x0000000000000000000000000000000000000000',
|
|
286
246
|
transactionData: '0x0000000000000000000000000000000000000000000000000000000000000000',
|
|
287
247
|
transactionValue: '0',
|
|
288
|
-
approveData: '0x0000000000000000000000000000000000000000000000000000000000000000'
|
|
248
|
+
approveData: '0x0000000000000000000000000000000000000000000000000000000000000000',
|
|
249
|
+
amount: '10000000000000000',
|
|
250
|
+
amountMin: '9500000000000000'
|
|
289
251
|
}
|
|
290
252
|
}, { status: 200 });
|
|
291
253
|
}),
|
|
292
|
-
http.post('*/
|
|
254
|
+
http.post('*/getLifiSwapQuote', async () => {
|
|
293
255
|
return HttpResponse.json({
|
|
294
|
-
|
|
256
|
+
quote: {
|
|
295
257
|
currencyAddress: '0x7ceb23fd6bc0add59e62ac25578270cff1b9f619',
|
|
296
258
|
currencyBalance: '180000000000000',
|
|
297
259
|
price: '7351402238115',
|
|
@@ -299,7 +261,9 @@ export const handlers = [
|
|
|
299
261
|
to: '0x0000000000000000000000000000000000000000',
|
|
300
262
|
transactionData: '0x0000000000000000000000000000000000000000000000000000000000000000',
|
|
301
263
|
transactionValue: '0',
|
|
302
|
-
approveData: '0x0000000000000000000000000000000000000000000000000000000000000000'
|
|
264
|
+
approveData: '0x0000000000000000000000000000000000000000000000000000000000000000',
|
|
265
|
+
amount: '10000000000000000',
|
|
266
|
+
amountMin: '9500000000000000'
|
|
303
267
|
}
|
|
304
268
|
}, { status: 200 });
|
|
305
269
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../src/tests/handlers.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../../src/tests/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAExC,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE;QACtB,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;IACjD,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACzD,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAQ,CAAA;QAE1C,OAAO,YAAY,CAAC,IAAI,CACtB;YACE,QAAQ,EAAE;gBACR;oBACE,MAAM,EAAE;wBACN,cAAc,EAAE,IAAI,CAAC,cAAc;wBACnC,OAAO,EAAE,oBAAoB;qBAC9B;iBACF;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAQ,CAAA;QAE1C,OAAO,YAAY,CAAC,IAAI,CACtB;YACE,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC;aACR;YACD,QAAQ,EAAE;gBACR;oBACE,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE;wBACP;4BACE,YAAY,EAAE,QAAQ;4BACtB,eAAe,EAAE,4CAA4C;4BAC7D,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,GAAG;4BACZ,OAAO,EAAE,GAAG;4BACZ,SAAS,EAAE,oEAAoE;4BAC/E,WAAW,EAAE,CAAC;4BACd,OAAO,EAAE,CAAC;4BACV,kBAAkB,EAAE,GAAG;4BACvB,SAAS,EAAE,IAAI;yBAChB;wBACD;4BACE,YAAY,EAAE,QAAQ;4BACtB,eAAe,EAAE,4CAA4C;4BAC7D,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,GAAG;4BACZ,OAAO,EAAE,GAAG;4BACZ,SAAS,EAAE,oEAAoE;4BAC/E,WAAW,EAAE,CAAC;4BACd,OAAO,EAAE,CAAC;4BACV,kBAAkB,EAAE,GAAG;4BACvB,SAAS,EAAE,IAAI;yBAChB;qBACF;iBACF;aACF;YACD,cAAc,EAAE;gBACd;oBACE,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE;wBACP;4BACE,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,oBAAoB;4BAC7B,KAAK,EAAE,MAAM;yBACd;qBACF;iBACF;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,2BAA2B,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC3D,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAQ,CAAA;QAE1C,OAAO,YAAY,CAAC,IAAI,CACtB;YACE,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC;aACR;YACD,QAAQ,EAAE;gBACR;oBACE,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE;wBACP;4BACE,YAAY,EAAE,QAAQ;4BACtB,eAAe,EAAE,4CAA4C;4BAC7D,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,GAAG;4BACZ,OAAO,EAAE,GAAG;4BACZ,SAAS,EAAE,oEAAoE;4BAC/E,WAAW,EAAE,CAAC;4BACd,OAAO,EAAE,CAAC;4BACV,kBAAkB,EAAE,GAAG;4BACvB,SAAS,EAAE,IAAI;yBAChB;qBACF;iBACF;aACF;YACD,cAAc,EAAE;gBACd;oBACE,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE;wBACP;4BACE,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,oBAAoB;4BAC7B,KAAK,EAAE,MAAM;yBACd;qBACF;iBACF;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,8BAA8B,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC9D,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAQ,CAAA;QAE1C,OAAO,YAAY,CAAC,IAAI,CACtB;YACE,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC;aACR;YACD,QAAQ,EAAE;gBACR;oBACE,OAAO,EAAE,CAAC;oBACV,KAAK,EAAE,MAAM;oBACb,OAAO,EAAE;wBACP;4BACE,YAAY,EAAE,QAAQ;4BACtB,eAAe,EAAE,4CAA4C;4BAC7D,cAAc,EAAE,IAAI,CAAC,cAAc;4BACnC,OAAO,EAAE,GAAG;4BACZ,OAAO,EAAE,GAAG;4BACZ,SAAS,EAAE,oEAAoE;4BAC/E,WAAW,EAAE,CAAC;4BACd,OAAO,EAAE,CAAC;4BACV,kBAAkB,EAAE,GAAG;4BACvB,SAAS,EAAE,IAAI;yBAChB;qBACF;iBACF;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACpD,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAQ,CAAA;QAE1C,OAAO,YAAY,CAAC,IAAI,CACtB;YACE,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC;aACR;YACD,aAAa,EAAE;gBACb;oBACE,YAAY,EAAE,QAAQ;oBACtB,eAAe,EAAE,4CAA4C;oBAC7D,cAAc,EAAE,IAAI,CAAC,cAAc;oBACnC,OAAO,EAAE,GAAG;oBACZ,IAAI,EAAE,MAAM;oBACZ,MAAM,EAAE,MAAM;oBACd,KAAK,EAAE,+BAA+B;oBACtC,WAAW,EAAE,kBAAkB;oBAC/B,OAAO,EAAE,CAAC;oBACV,kBAAkB,EAAE,GAAG;oBACvB,SAAS,EAAE,IAAI;iBAChB;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACxC,OAAO,YAAY,CAAC,IAAI,CACtB;YACE,YAAY,EAAE;gBACZ,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,4CAA4C;gBACrD,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,MAAM;gBACd,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,4DAA4D;gBACrE,QAAQ,EAAE,IAAI;gBACd,YAAY,EAAE,UAAU;gBACxB,UAAU,EAAE;oBACV,IAAI,EAAE,0BAA0B;oBAChC,WAAW,EAAE,kBAAkB;oBAC/B,OAAO,EAAE,6BAA6B;oBACtC,MAAM,EAAE,MAAM;oBACd,aAAa,EAAE,CAAC;oBAChB,aAAa,EAAE,EAAE;oBACjB,SAAS,EAAE,KAAK;oBAChB,QAAQ,EAAE,IAAI;oBACd,UAAU,EAAE,MAAM;oBAClB,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,KAAK;iBACf;gBACD,SAAS,EAAE,YAAY;aACxB;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QAC9C,OAAO,YAAY,CAAC,IAAI,CACtB;YACE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;YACjB,YAAY,EAAE;gBACZ;oBACE,OAAO,EAAE,oEAAoE;oBAC7E,WAAW,EAAE,CAAC;oBACd,SAAS,EAAE,oEAAoE;oBAC/E,OAAO,EAAE,CAAC;oBACV,SAAS,EAAE,YAAY;iBACxB;aACF;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACxC,OAAO,YAAY,CAAC,IAAI,CACtB;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE,GAAG;aACX;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,IAAI,EAAE;QACtC,OAAO,YAAY,CAAC,IAAI,CAAC;YACvB,WAAW,EAAE;gBACX;oBACE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,eAAe,EAAE,4CAA4C,EAAE;oBACpF,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;oBAC1C,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;oBACxC,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;iBAC1C;aACF;SACF,CAAC,CAAA;IACJ,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;QAC7C,OAAO,YAAY,CAAC,IAAI,CAAC;YACvB,WAAW,EAAE;gBACX;oBACE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,eAAe,EAAE,4CAA4C,EAAE;oBACpF,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;oBAC1C,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;oBACxC,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;iBAC1C;aACF;SACF,CAAC,CAAA;IACJ,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,KAAK,IAAI,EAAE;QACzC,OAAO,YAAY,CAAC,IAAI,CACtB;YACE,SAAS,EAAE;gBACT,eAAe,EAAE,4CAA4C;gBAC7D,eAAe,EAAE,iBAAiB;gBAClC,KAAK,EAAE,eAAe;gBACtB,QAAQ,EAAE,eAAe;gBACzB,EAAE,EAAE,4CAA4C;gBAChD,eAAe,EAAE,oEAAoE;gBACrF,gBAAgB,EAAE,GAAG;gBACrB,WAAW,EAAE,oEAAoE;gBACjF,MAAM,EAAE,mBAAmB;gBAC3B,SAAS,EAAE,kBAAkB;aAC9B;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;IAEF,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,KAAK,IAAI,EAAE;QACzC,OAAO,YAAY,CAAC,IAAI,CACtB;YACE,KAAK,EAAE;gBACL,eAAe,EAAE,4CAA4C;gBAC7D,eAAe,EAAE,iBAAiB;gBAClC,KAAK,EAAE,eAAe;gBACtB,QAAQ,EAAE,eAAe;gBACzB,EAAE,EAAE,4CAA4C;gBAChD,eAAe,EAAE,oEAAoE;gBACrF,gBAAgB,EAAE,GAAG;gBACrB,WAAW,EAAE,oEAAoE;gBACjF,MAAM,EAAE,mBAAmB;gBAC3B,SAAS,EAAE,kBAAkB;aAC9B;SACF,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,CAChB,CAAA;IACH,CAAC,CAAC;CACH,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@0xsequence/hooks",
|
|
3
|
-
"version": "5.2.
|
|
3
|
+
"version": "5.2.3",
|
|
4
4
|
"description": "React hooks for Sequence Web SDK",
|
|
5
5
|
"repository": "https://github.com/0xsequence/web-sdk/tree/master/packages/hooks",
|
|
6
6
|
"author": "Horizon Blockchain Games",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"dist"
|
|
21
21
|
],
|
|
22
22
|
"peerDependencies": {
|
|
23
|
-
"@0xsequence/api": "
|
|
23
|
+
"@0xsequence/api": "2.3.11",
|
|
24
24
|
"@0xsequence/indexer": ">=2.3.7",
|
|
25
25
|
"@0xsequence/metadata": ">=2.3.7",
|
|
26
26
|
"@0xsequence/network": ">=2.3.7",
|
|
@@ -30,23 +30,23 @@
|
|
|
30
30
|
"viem": ">= 2.28.0"
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
|
-
"@0xsequence/api": "
|
|
34
|
-
"@0xsequence/indexer": "
|
|
35
|
-
"@0xsequence/metadata": "
|
|
36
|
-
"@0xsequence/network": "
|
|
37
|
-
"@tanstack/react-query": "^5.
|
|
33
|
+
"@0xsequence/api": "2.3.11",
|
|
34
|
+
"@0xsequence/indexer": "^2.3.10",
|
|
35
|
+
"@0xsequence/metadata": "^2.3.10",
|
|
36
|
+
"@0xsequence/network": "^2.3.10",
|
|
37
|
+
"@tanstack/react-query": "^5.74.11",
|
|
38
38
|
"@testing-library/jest-dom": "^6.6.3",
|
|
39
|
-
"@testing-library/react": "^16.0
|
|
40
|
-
"@testing-library/user-event": "^14.
|
|
41
|
-
"@vitejs/plugin-react": "^4.
|
|
39
|
+
"@testing-library/react": "^16.3.0",
|
|
40
|
+
"@testing-library/user-event": "^14.6.1",
|
|
41
|
+
"@vitejs/plugin-react": "^4.4.1",
|
|
42
42
|
"jsdom": "^25.0.1",
|
|
43
|
-
"msw": "^2.
|
|
44
|
-
"react": "^19.
|
|
45
|
-
"react-dom": "^19.
|
|
46
|
-
"typescript": "^5.8.
|
|
47
|
-
"
|
|
48
|
-
"
|
|
49
|
-
"
|
|
43
|
+
"msw": "^2.7.5",
|
|
44
|
+
"react": "^19.1.0",
|
|
45
|
+
"react-dom": "^19.1.0",
|
|
46
|
+
"typescript": "^5.8.3",
|
|
47
|
+
"viem": "^2.28.1",
|
|
48
|
+
"vite": "^6.3.4",
|
|
49
|
+
"vitest": "^2.1.9"
|
|
50
50
|
},
|
|
51
51
|
"scripts": {
|
|
52
52
|
"build": "pnpm build:clean && pnpm build:esm && pnpm build:cjs",
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { SwapPrice } from '@0xsequence/api';
|
|
2
|
-
import { ContractInfo } from '@0xsequence/metadata';
|
|
3
|
-
import { HooksOptions } from '../../types';
|
|
4
|
-
interface Balance {
|
|
5
|
-
balance: string;
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* Type representing a swap price with additional currency information
|
|
9
|
-
*
|
|
10
|
-
* @property price - The swap price information from the API
|
|
11
|
-
* @property info - Contract information for the currency, including name, symbol, decimals, etc.
|
|
12
|
-
* @property balance - The user's balance of this currency
|
|
13
|
-
*/
|
|
14
|
-
export type SwapPricesWithCurrencyInfo = {
|
|
15
|
-
price: SwapPrice;
|
|
16
|
-
info: ContractInfo | undefined;
|
|
17
|
-
balance: Balance;
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* Arguments for the useGetSwapPrices hook
|
|
21
|
-
*
|
|
22
|
-
* @property userAddress - The address of the user's wallet
|
|
23
|
-
* @property buyCurrencyAddress - The address of the currency to buy
|
|
24
|
-
* @property buyAmount - The amount of currency to buy (in base units)
|
|
25
|
-
* @property chainId - The chain ID where the swap will occur
|
|
26
|
-
* @property withContractInfo - Whether to fetch additional contract info for each currency
|
|
27
|
-
*/
|
|
28
|
-
export interface UseGetSwapPricesArgs {
|
|
29
|
-
userAddress: string;
|
|
30
|
-
buyCurrencyAddress: string;
|
|
31
|
-
buyAmount: string;
|
|
32
|
-
chainId: number;
|
|
33
|
-
withContractInfo?: boolean;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Hook to fetch available swap prices for a given currency pair.
|
|
37
|
-
*
|
|
38
|
-
* This hook provides functionality to:
|
|
39
|
-
* - Get swap prices for a specified currency and amount
|
|
40
|
-
* - Fetch token information and balances for available swap options
|
|
41
|
-
* - Support both native tokens and ERC20 tokens
|
|
42
|
-
* - Handle currency conversions and price formatting
|
|
43
|
-
*
|
|
44
|
-
* The hook automatically handles:
|
|
45
|
-
* - Native token address normalization (between 0x0 and 0xEEE...)
|
|
46
|
-
* - Contract information fetching (name, symbol, decimals, etc.)
|
|
47
|
-
* - Error handling for failed API calls or balance fetches
|
|
48
|
-
*
|
|
49
|
-
* @see {@link https://docs.sequence.xyz/sdk/web/hooks/useGetSwapPrices} for more detailed documentation.
|
|
50
|
-
*
|
|
51
|
-
* @param args - Configuration object for the swap prices query {@link UseGetSwapPricesArgs}
|
|
52
|
-
* @param options - Optional configuration for the hook behavior {@link HooksOptions}
|
|
53
|
-
*
|
|
54
|
-
* @returns A React Query result object containing:
|
|
55
|
-
* - data: Array of {@link SwapPricesWithCurrencyInfo} objects
|
|
56
|
-
* - isLoading: Whether the query is in progress
|
|
57
|
-
* - isError: Whether an error occurred
|
|
58
|
-
* - error: Any error that occurred
|
|
59
|
-
* - Other standard React Query properties
|
|
60
|
-
*
|
|
61
|
-
* @example
|
|
62
|
-
* ```tsx
|
|
63
|
-
* import { useGetSwapPrices } from '@0xsequence/hooks'
|
|
64
|
-
*
|
|
65
|
-
* function SwapComponent() {
|
|
66
|
-
* const { data: swapPrices, isLoading } = useGetSwapPrices({
|
|
67
|
-
* userAddress: '0x123...',
|
|
68
|
-
* buyCurrencyAddress: '0x456...',
|
|
69
|
-
* buyAmount: '1000000000000000000', // 1 token in base units
|
|
70
|
-
* chainId: 1,
|
|
71
|
-
* withContractInfo: true
|
|
72
|
-
* })
|
|
73
|
-
*
|
|
74
|
-
* if (isLoading) return <div>Loading...</div>
|
|
75
|
-
*
|
|
76
|
-
* return (
|
|
77
|
-
* <div>
|
|
78
|
-
* {swapPrices?.map(swap => (
|
|
79
|
-
* <div key={swap.info?.address}>
|
|
80
|
-
* Token: {swap.info?.symbol}
|
|
81
|
-
* Price: {swap.price.price}
|
|
82
|
-
* Balance: {swap.balance.balance}
|
|
83
|
-
* </div>
|
|
84
|
-
* ))}
|
|
85
|
-
* </div>
|
|
86
|
-
* )
|
|
87
|
-
* }
|
|
88
|
-
* ```
|
|
89
|
-
*/
|
|
90
|
-
export declare const useGetSwapPrices: (args: UseGetSwapPricesArgs, options?: HooksOptions) => import("@tanstack/react-query").UseQueryResult<SwapPricesWithCurrencyInfo[], Error>;
|
|
91
|
-
export {};
|
|
92
|
-
//# sourceMappingURL=useGetSwapPrices.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useGetSwapPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/Combination/useGetSwapPrices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE9D,OAAO,EAAE,YAAY,EAAoB,MAAM,sBAAsB,CAAA;AAKrE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAM1C,UAAU,OAAO;IACf,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,EAAE,SAAS,CAAA;IAChB,IAAI,EAAE,YAAY,GAAG,SAAS,CAAA;IAC9B,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAA;IACnB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;AAmHD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,oBAAoB,EAAE,UAAU,YAAY,wFAsBlF,CAAA"}
|
|
@@ -1,177 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useGetSwapPrices = void 0;
|
|
4
|
-
const network_1 = require("@0xsequence/network");
|
|
5
|
-
const react_query_1 = require("@tanstack/react-query");
|
|
6
|
-
const constants_1 = require("../../constants");
|
|
7
|
-
const helpers_1 = require("../../utils/helpers");
|
|
8
|
-
const useAPIClient_1 = require("../API/useAPIClient");
|
|
9
|
-
const useIndexerGatewayClient_1 = require("../IndexerGateway/useIndexerGatewayClient");
|
|
10
|
-
const useMetadataClient_1 = require("../Metadata/useMetadataClient");
|
|
11
|
-
const getSwapPrices = async (apiClient, metadataClient, indexerGatewayClient, args) => {
|
|
12
|
-
if (!args.chainId || !args.userAddress || !args.buyCurrencyAddress || !args.buyAmount || args.buyAmount === '0') {
|
|
13
|
-
return [];
|
|
14
|
-
}
|
|
15
|
-
const network = (0, network_1.findSupportedNetwork)(args.chainId);
|
|
16
|
-
const { withContractInfo, ...swapPricesArgs } = args;
|
|
17
|
-
const isNativeTokenInArgs = (0, helpers_1.compareAddress)(args.buyCurrencyAddress, constants_1.NATIVE_TOKEN_ADDRESS_0X_SWAP) || (0, helpers_1.compareAddress)(args.buyCurrencyAddress, constants_1.ZERO_ADDRESS);
|
|
18
|
-
const res = await apiClient.getSwapPermit2Prices({
|
|
19
|
-
...swapPricesArgs,
|
|
20
|
-
buyCurrencyAddress: isNativeTokenInArgs ? constants_1.NATIVE_TOKEN_ADDRESS_0X_SWAP : args.buyCurrencyAddress
|
|
21
|
-
});
|
|
22
|
-
if (res.swapPermit2Prices === null) {
|
|
23
|
-
return [];
|
|
24
|
-
}
|
|
25
|
-
const currencyInfoMap = new Map();
|
|
26
|
-
if (withContractInfo) {
|
|
27
|
-
res?.swapPermit2Prices.forEach(price => {
|
|
28
|
-
const { currencyAddress } = price;
|
|
29
|
-
const isNativeToken = (0, helpers_1.compareAddress)(currencyAddress, constants_1.NATIVE_TOKEN_ADDRESS_0X_SWAP || constants_1.ZERO_ADDRESS);
|
|
30
|
-
if (currencyAddress && !currencyInfoMap.has(currencyAddress)) {
|
|
31
|
-
const getNativeTokenInfo = () => new Promise(resolve => {
|
|
32
|
-
resolve({
|
|
33
|
-
...network?.nativeToken,
|
|
34
|
-
logoURI: network?.logoURI || '',
|
|
35
|
-
address: constants_1.NATIVE_TOKEN_ADDRESS_0X_SWAP
|
|
36
|
-
});
|
|
37
|
-
});
|
|
38
|
-
currencyInfoMap.set(currencyAddress, isNativeToken
|
|
39
|
-
? getNativeTokenInfo()
|
|
40
|
-
: metadataClient
|
|
41
|
-
.getContractInfo({
|
|
42
|
-
chainID: String(args.chainId),
|
|
43
|
-
contractAddress: currencyAddress
|
|
44
|
-
})
|
|
45
|
-
.then(data => ({ ...data.contractInfo }))
|
|
46
|
-
.catch(error => {
|
|
47
|
-
console.error(`Failed to fetch contract info for ${currencyAddress}:`, error);
|
|
48
|
-
return undefined;
|
|
49
|
-
}));
|
|
50
|
-
}
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
const currencyBalanceInfoMap = new Map();
|
|
54
|
-
res?.swapPermit2Prices.forEach(price => {
|
|
55
|
-
const { currencyAddress } = price;
|
|
56
|
-
const isNativeToken = (0, helpers_1.compareAddress)(currencyAddress, constants_1.NATIVE_TOKEN_ADDRESS_0X_SWAP || constants_1.ZERO_ADDRESS);
|
|
57
|
-
if (currencyAddress && !currencyBalanceInfoMap.has(currencyAddress)) {
|
|
58
|
-
const tokenBalance = indexerGatewayClient
|
|
59
|
-
.getTokenBalancesSummary({
|
|
60
|
-
chainIds: [args.chainId],
|
|
61
|
-
filter: {
|
|
62
|
-
accountAddresses: [args.userAddress],
|
|
63
|
-
contractWhitelist: [currencyAddress],
|
|
64
|
-
omitNativeBalances: false
|
|
65
|
-
}
|
|
66
|
-
})
|
|
67
|
-
.then(res => {
|
|
68
|
-
if (isNativeToken) {
|
|
69
|
-
return {
|
|
70
|
-
balance: res.nativeBalances[0].results[0].balance
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
return {
|
|
75
|
-
balance: res.balances[0].results[0].balance
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
})
|
|
79
|
-
.catch(error => {
|
|
80
|
-
console.error(`Failed to fetch balance for ${currencyAddress}:`, error);
|
|
81
|
-
return { balance: '0' };
|
|
82
|
-
});
|
|
83
|
-
currencyBalanceInfoMap.set(currencyAddress, tokenBalance);
|
|
84
|
-
}
|
|
85
|
-
});
|
|
86
|
-
return Promise.all(res?.swapPermit2Prices.map(async (price) => {
|
|
87
|
-
const { currencyAddress: rawCurrencyAddress } = price;
|
|
88
|
-
const currencyAddress = (0, helpers_1.compareAddress)(rawCurrencyAddress, constants_1.NATIVE_TOKEN_ADDRESS_0X_SWAP)
|
|
89
|
-
? constants_1.NATIVE_TOKEN_ADDRESS_0X_SWAP
|
|
90
|
-
: rawCurrencyAddress;
|
|
91
|
-
return {
|
|
92
|
-
price: {
|
|
93
|
-
...price,
|
|
94
|
-
currencyAddress
|
|
95
|
-
},
|
|
96
|
-
info: await currencyInfoMap.get(currencyAddress),
|
|
97
|
-
balance: (await currencyBalanceInfoMap.get(currencyAddress)) || { balance: '0' }
|
|
98
|
-
};
|
|
99
|
-
}) || []);
|
|
100
|
-
};
|
|
101
|
-
/**
|
|
102
|
-
* Hook to fetch available swap prices for a given currency pair.
|
|
103
|
-
*
|
|
104
|
-
* This hook provides functionality to:
|
|
105
|
-
* - Get swap prices for a specified currency and amount
|
|
106
|
-
* - Fetch token information and balances for available swap options
|
|
107
|
-
* - Support both native tokens and ERC20 tokens
|
|
108
|
-
* - Handle currency conversions and price formatting
|
|
109
|
-
*
|
|
110
|
-
* The hook automatically handles:
|
|
111
|
-
* - Native token address normalization (between 0x0 and 0xEEE...)
|
|
112
|
-
* - Contract information fetching (name, symbol, decimals, etc.)
|
|
113
|
-
* - Error handling for failed API calls or balance fetches
|
|
114
|
-
*
|
|
115
|
-
* @see {@link https://docs.sequence.xyz/sdk/web/hooks/useGetSwapPrices} for more detailed documentation.
|
|
116
|
-
*
|
|
117
|
-
* @param args - Configuration object for the swap prices query {@link UseGetSwapPricesArgs}
|
|
118
|
-
* @param options - Optional configuration for the hook behavior {@link HooksOptions}
|
|
119
|
-
*
|
|
120
|
-
* @returns A React Query result object containing:
|
|
121
|
-
* - data: Array of {@link SwapPricesWithCurrencyInfo} objects
|
|
122
|
-
* - isLoading: Whether the query is in progress
|
|
123
|
-
* - isError: Whether an error occurred
|
|
124
|
-
* - error: Any error that occurred
|
|
125
|
-
* - Other standard React Query properties
|
|
126
|
-
*
|
|
127
|
-
* @example
|
|
128
|
-
* ```tsx
|
|
129
|
-
* import { useGetSwapPrices } from '@0xsequence/hooks'
|
|
130
|
-
*
|
|
131
|
-
* function SwapComponent() {
|
|
132
|
-
* const { data: swapPrices, isLoading } = useGetSwapPrices({
|
|
133
|
-
* userAddress: '0x123...',
|
|
134
|
-
* buyCurrencyAddress: '0x456...',
|
|
135
|
-
* buyAmount: '1000000000000000000', // 1 token in base units
|
|
136
|
-
* chainId: 1,
|
|
137
|
-
* withContractInfo: true
|
|
138
|
-
* })
|
|
139
|
-
*
|
|
140
|
-
* if (isLoading) return <div>Loading...</div>
|
|
141
|
-
*
|
|
142
|
-
* return (
|
|
143
|
-
* <div>
|
|
144
|
-
* {swapPrices?.map(swap => (
|
|
145
|
-
* <div key={swap.info?.address}>
|
|
146
|
-
* Token: {swap.info?.symbol}
|
|
147
|
-
* Price: {swap.price.price}
|
|
148
|
-
* Balance: {swap.balance.balance}
|
|
149
|
-
* </div>
|
|
150
|
-
* ))}
|
|
151
|
-
* </div>
|
|
152
|
-
* )
|
|
153
|
-
* }
|
|
154
|
-
* ```
|
|
155
|
-
*/
|
|
156
|
-
const useGetSwapPrices = (args, options) => {
|
|
157
|
-
const apiClient = (0, useAPIClient_1.useAPIClient)();
|
|
158
|
-
const metadataClient = (0, useMetadataClient_1.useMetadataClient)();
|
|
159
|
-
const indexerGatewayClient = (0, useIndexerGatewayClient_1.useIndexerGatewayClient)();
|
|
160
|
-
const enabled = !!args.chainId &&
|
|
161
|
-
!!args.userAddress &&
|
|
162
|
-
!!args.buyCurrencyAddress &&
|
|
163
|
-
!!args.buyAmount &&
|
|
164
|
-
args.buyAmount !== '0' &&
|
|
165
|
-
!options?.disabled;
|
|
166
|
-
return (0, react_query_1.useQuery)({
|
|
167
|
-
queryKey: [constants_1.QUERY_KEYS.useGetSwapPrices, args, options],
|
|
168
|
-
queryFn: () => getSwapPrices(apiClient, metadataClient, indexerGatewayClient, args),
|
|
169
|
-
retry: options?.retry ?? true,
|
|
170
|
-
// We must keep a long staletime to avoid the list of quotes being refreshed while the user is doing the transactions
|
|
171
|
-
// Instead, we will invalidate the query manually
|
|
172
|
-
staleTime: constants_1.time.oneHour,
|
|
173
|
-
enabled
|
|
174
|
-
});
|
|
175
|
-
};
|
|
176
|
-
exports.useGetSwapPrices = useGetSwapPrices;
|
|
177
|
-
//# sourceMappingURL=useGetSwapPrices.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useGetSwapPrices.js","sourceRoot":"","sources":["../../../../src/hooks/Combination/useGetSwapPrices.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useGetSwapPrices.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/Combination/useGetSwapPrices.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const react_1 = require("@testing-library/react");
|
|
4
|
-
const msw_1 = require("msw");
|
|
5
|
-
const vitest_1 = require("vitest");
|
|
6
|
-
const constants_1 = require("../../constants");
|
|
7
|
-
const useGetSwapPrices_1 = require("../../hooks/Combination/useGetSwapPrices");
|
|
8
|
-
const createWrapper_1 = require("../createWrapper");
|
|
9
|
-
const setup_1 = require("../setup");
|
|
10
|
-
const getSwapPricesArgs = {
|
|
11
|
-
userAddress: constants_1.ACCOUNT_ADDRESS,
|
|
12
|
-
buyCurrencyAddress: constants_1.NATIVE_TOKEN_ADDRESS_0X_SWAP,
|
|
13
|
-
chainId: 1,
|
|
14
|
-
buyAmount: '20000',
|
|
15
|
-
withContractInfo: true
|
|
16
|
-
};
|
|
17
|
-
(0, vitest_1.describe)('useGetSwapPrices', () => {
|
|
18
|
-
(0, vitest_1.it)('should return data with a balance', async () => {
|
|
19
|
-
const { result } = (0, react_1.renderHook)(() => (0, useGetSwapPrices_1.useGetSwapPrices)(getSwapPricesArgs), {
|
|
20
|
-
wrapper: (0, createWrapper_1.createWrapper)()
|
|
21
|
-
});
|
|
22
|
-
await (0, react_1.waitFor)(() => (0, vitest_1.expect)(result.current.isSuccess).toBe(true));
|
|
23
|
-
(0, vitest_1.expect)(result.current.data).toBeDefined();
|
|
24
|
-
const value = BigInt(result.current.data[0].balance.balance || 0);
|
|
25
|
-
(0, vitest_1.expect)(value).toBeGreaterThan(0);
|
|
26
|
-
});
|
|
27
|
-
(0, vitest_1.it)('should return error when fetching data fails', async () => {
|
|
28
|
-
setup_1.server.use(msw_1.http.post('*', () => {
|
|
29
|
-
return msw_1.HttpResponse.error();
|
|
30
|
-
}));
|
|
31
|
-
const { result } = (0, react_1.renderHook)(() => (0, useGetSwapPrices_1.useGetSwapPrices)(getSwapPricesArgs, { retry: false }), {
|
|
32
|
-
wrapper: (0, createWrapper_1.createWrapper)()
|
|
33
|
-
});
|
|
34
|
-
await (0, react_1.waitFor)(() => (0, vitest_1.expect)(result.current.isError).toBe(true));
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
//# sourceMappingURL=useGetSwapPrices.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useGetSwapPrices.test.js","sourceRoot":"","sources":["../../../../src/tests/Combination/useGetSwapPrices.test.ts"],"names":[],"mappings":";;AAAA,kDAA4D;AAC5D,6BAAwC;AACxC,mCAA6C;AAE7C,+CAA+E;AAC/E,+EAA2E;AAC3E,oDAAgD;AAChD,oCAAiC;AAEjC,MAAM,iBAAiB,GAAG;IACxB,WAAW,EAAE,2BAAe;IAC5B,kBAAkB,EAAE,wCAA4B;IAChD,OAAO,EAAE,CAAC;IACV,SAAS,EAAE,OAAO;IAClB,gBAAgB,EAAE,IAAI;CACvB,CAAA;AAED,IAAA,iBAAQ,EAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,IAAA,WAAE,EAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,mCAAgB,EAAC,iBAAiB,CAAC,EAAE;YACvE,OAAO,EAAE,IAAA,6BAAa,GAAE;SACzB,CAAC,CAAA;QAEF,MAAM,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAA,eAAM,EAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAEhE,IAAA,eAAM,EAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAA;QAEzC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,CAAA;QAElE,IAAA,eAAM,EAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;IAEF,IAAA,WAAE,EAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,cAAM,CAAC,GAAG,CACR,UAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE;YAClB,OAAO,kBAAY,CAAC,KAAK,EAAE,CAAA;QAC7B,CAAC,CAAC,CACH,CAAA;QAED,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,kBAAU,EAAC,GAAG,EAAE,CAAC,IAAA,mCAAgB,EAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;YACzF,OAAO,EAAE,IAAA,6BAAa,GAAE;SACzB,CAAC,CAAA;QAEF,MAAM,IAAA,eAAO,EAAC,GAAG,EAAE,CAAC,IAAA,eAAM,EAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAChE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { SwapPrice } from '@0xsequence/api';
|
|
2
|
-
import { ContractInfo } from '@0xsequence/metadata';
|
|
3
|
-
import { HooksOptions } from '../../types';
|
|
4
|
-
interface Balance {
|
|
5
|
-
balance: string;
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* Type representing a swap price with additional currency information
|
|
9
|
-
*
|
|
10
|
-
* @property price - The swap price information from the API
|
|
11
|
-
* @property info - Contract information for the currency, including name, symbol, decimals, etc.
|
|
12
|
-
* @property balance - The user's balance of this currency
|
|
13
|
-
*/
|
|
14
|
-
export type SwapPricesWithCurrencyInfo = {
|
|
15
|
-
price: SwapPrice;
|
|
16
|
-
info: ContractInfo | undefined;
|
|
17
|
-
balance: Balance;
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* Arguments for the useGetSwapPrices hook
|
|
21
|
-
*
|
|
22
|
-
* @property userAddress - The address of the user's wallet
|
|
23
|
-
* @property buyCurrencyAddress - The address of the currency to buy
|
|
24
|
-
* @property buyAmount - The amount of currency to buy (in base units)
|
|
25
|
-
* @property chainId - The chain ID where the swap will occur
|
|
26
|
-
* @property withContractInfo - Whether to fetch additional contract info for each currency
|
|
27
|
-
*/
|
|
28
|
-
export interface UseGetSwapPricesArgs {
|
|
29
|
-
userAddress: string;
|
|
30
|
-
buyCurrencyAddress: string;
|
|
31
|
-
buyAmount: string;
|
|
32
|
-
chainId: number;
|
|
33
|
-
withContractInfo?: boolean;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Hook to fetch available swap prices for a given currency pair.
|
|
37
|
-
*
|
|
38
|
-
* This hook provides functionality to:
|
|
39
|
-
* - Get swap prices for a specified currency and amount
|
|
40
|
-
* - Fetch token information and balances for available swap options
|
|
41
|
-
* - Support both native tokens and ERC20 tokens
|
|
42
|
-
* - Handle currency conversions and price formatting
|
|
43
|
-
*
|
|
44
|
-
* The hook automatically handles:
|
|
45
|
-
* - Native token address normalization (between 0x0 and 0xEEE...)
|
|
46
|
-
* - Contract information fetching (name, symbol, decimals, etc.)
|
|
47
|
-
* - Error handling for failed API calls or balance fetches
|
|
48
|
-
*
|
|
49
|
-
* @see {@link https://docs.sequence.xyz/sdk/web/hooks/useGetSwapPrices} for more detailed documentation.
|
|
50
|
-
*
|
|
51
|
-
* @param args - Configuration object for the swap prices query {@link UseGetSwapPricesArgs}
|
|
52
|
-
* @param options - Optional configuration for the hook behavior {@link HooksOptions}
|
|
53
|
-
*
|
|
54
|
-
* @returns A React Query result object containing:
|
|
55
|
-
* - data: Array of {@link SwapPricesWithCurrencyInfo} objects
|
|
56
|
-
* - isLoading: Whether the query is in progress
|
|
57
|
-
* - isError: Whether an error occurred
|
|
58
|
-
* - error: Any error that occurred
|
|
59
|
-
* - Other standard React Query properties
|
|
60
|
-
*
|
|
61
|
-
* @example
|
|
62
|
-
* ```tsx
|
|
63
|
-
* import { useGetSwapPrices } from '@0xsequence/hooks'
|
|
64
|
-
*
|
|
65
|
-
* function SwapComponent() {
|
|
66
|
-
* const { data: swapPrices, isLoading } = useGetSwapPrices({
|
|
67
|
-
* userAddress: '0x123...',
|
|
68
|
-
* buyCurrencyAddress: '0x456...',
|
|
69
|
-
* buyAmount: '1000000000000000000', // 1 token in base units
|
|
70
|
-
* chainId: 1,
|
|
71
|
-
* withContractInfo: true
|
|
72
|
-
* })
|
|
73
|
-
*
|
|
74
|
-
* if (isLoading) return <div>Loading...</div>
|
|
75
|
-
*
|
|
76
|
-
* return (
|
|
77
|
-
* <div>
|
|
78
|
-
* {swapPrices?.map(swap => (
|
|
79
|
-
* <div key={swap.info?.address}>
|
|
80
|
-
* Token: {swap.info?.symbol}
|
|
81
|
-
* Price: {swap.price.price}
|
|
82
|
-
* Balance: {swap.balance.balance}
|
|
83
|
-
* </div>
|
|
84
|
-
* ))}
|
|
85
|
-
* </div>
|
|
86
|
-
* )
|
|
87
|
-
* }
|
|
88
|
-
* ```
|
|
89
|
-
*/
|
|
90
|
-
export declare const useGetSwapPrices: (args: UseGetSwapPricesArgs, options?: HooksOptions) => import("@tanstack/react-query").UseQueryResult<SwapPricesWithCurrencyInfo[], Error>;
|
|
91
|
-
export {};
|
|
92
|
-
//# sourceMappingURL=useGetSwapPrices.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useGetSwapPrices.d.ts","sourceRoot":"","sources":["../../../../src/hooks/Combination/useGetSwapPrices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE9D,OAAO,EAAE,YAAY,EAAoB,MAAM,sBAAsB,CAAA;AAKrE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAM1C,UAAU,OAAO;IACf,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACvC,KAAK,EAAE,SAAS,CAAA;IAChB,IAAI,EAAE,YAAY,GAAG,SAAS,CAAA;IAC9B,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAA;IACnB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;AAmHD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,oBAAoB,EAAE,UAAU,YAAY,wFAsBlF,CAAA"}
|