@skip-go/client 1.4.0 → 1.5.1
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/dist/cjs/{chunk-IDEJORRT.cjs → chunk-23YF4LFI.cjs} +30 -0
- package/dist/cjs/{chunk-Q43XCBMX.cjs → chunk-5CB6SPCX.cjs} +4 -4
- package/dist/cjs/{chunk-ZKBSNSHQ.cjs → chunk-EZGHN6ZL.cjs} +120 -116
- package/dist/cjs/{chunk-7MC3BVQN.cjs → chunk-KHJQE3DI.cjs} +133 -35
- package/dist/cjs/chunk-KSJ5QYMR.cjs +185 -0
- package/dist/cjs/chunk-N5V3YW5K.cjs +55 -0
- package/dist/cjs/chunk-NDSHB4I6.cjs +214 -0
- package/dist/cjs/{chunk-ZAATXQBG.cjs → chunk-QZ2BGX6O.cjs} +2 -2
- package/dist/cjs/{chunk-6LA66667.cjs → chunk-RVXCF6AL.cjs} +3 -3
- package/dist/cjs/{chunk-46VB6RQK.cjs → chunk-V3FWWJG2.cjs} +10 -3
- package/dist/cjs/index.cjs +26 -20
- package/dist/cjs/public-functions/executeMultipleRoutes.cjs +29 -0
- package/dist/cjs/public-functions/executeRoute.cjs +8 -7
- package/dist/cjs/public-functions/getFeeInfoForChain.cjs +3 -3
- package/dist/cjs/public-functions/getRecommendedGasPrice.cjs +4 -4
- package/dist/cjs/public-functions/getSigningStargateClient.cjs +3 -3
- package/dist/cjs/public-functions/setClientOptions.cjs +2 -2
- package/dist/cjs/public-functions/subscribeToRouteStatus.cjs +5 -5
- package/dist/cjs/public-functions/validateCosmosGasBalance.cjs +5 -5
- package/dist/esm/api/getAssets.d.ts +1 -1
- package/dist/esm/api/getAssetsBetweenChains.d.ts +1 -1
- package/dist/esm/api/getBridges.d.ts +3 -3
- package/dist/esm/api/getChains.d.ts +1 -1
- package/dist/esm/api/postAssetsFromSource.d.ts +10 -1
- package/dist/esm/api/postBalances.d.ts +2 -2
- package/dist/esm/api/postMessages.d.ts +2 -2
- package/dist/esm/api/postMessagesDirect.d.ts +3 -1
- package/dist/esm/api/postRecommendAssets.d.ts +1 -1
- package/dist/esm/api/postRoute.d.ts +4 -2
- package/dist/esm/api/postSubmitTransaction.d.ts +2 -2
- package/dist/esm/api/postTrackTransaction.d.ts +2 -2
- package/dist/esm/api/postTransactionStatus.d.ts +2 -2
- package/dist/esm/{callbacks-B3kjKg0v.d.ts → callbacks-DCqqd0D9.d.ts} +22 -69
- package/dist/esm/{chunk-CIAOTO3M.js → chunk-2DD5F6PK.js} +1 -1
- package/dist/esm/{chunk-4RLJWCQR.js → chunk-3J5IMMMB.js} +1 -1
- package/dist/esm/chunk-562J5DCB.js +53 -0
- package/dist/esm/{chunk-KYDY7QRT.js → chunk-BZDVQMHK.js} +1 -1
- package/dist/esm/chunk-FVQFGEL2.js +212 -0
- package/dist/esm/chunk-RHGDUD76.js +180 -0
- package/dist/esm/{chunk-GHNH5QC3.js → chunk-VZGOU6MB.js} +9 -2
- package/dist/esm/{chunk-BAJFQZDT.js → chunk-W5EGS2G4.js} +99 -96
- package/dist/esm/{chunk-REWUSU53.js → chunk-WBZVMPPV.js} +30 -0
- package/dist/esm/{chunk-RQ7DXNSS.js → chunk-XYYXRVFN.js} +133 -35
- package/dist/esm/client-types-BSZasIDd.d.ts +114 -0
- package/dist/esm/{generateApi-C_xgtxrO.d.ts → generateApi-CwM4Ca30.d.ts} +1 -1
- package/dist/esm/index.d.ts +216 -6
- package/dist/esm/index.js +12 -10
- package/dist/esm/public-functions/executeMultipleRoutes.d.ts +60 -0
- package/dist/esm/public-functions/executeMultipleRoutes.js +20 -0
- package/dist/esm/public-functions/executeRoute.d.ts +5 -5
- package/dist/esm/public-functions/executeRoute.js +7 -6
- package/dist/esm/public-functions/getCosmosGasAmountForMessage.d.ts +1 -1
- package/dist/esm/public-functions/getEvmGasAmountForMessage.d.ts +5 -2
- package/dist/esm/public-functions/getFeeInfoForChain.d.ts +1 -1
- package/dist/esm/public-functions/getFeeInfoForChain.js +2 -2
- package/dist/esm/public-functions/getRecommendedGasPrice.js +3 -3
- package/dist/esm/public-functions/getSigningStargateClient.js +2 -2
- package/dist/esm/public-functions/setApiOptions.d.ts +1 -1
- package/dist/esm/public-functions/setClientOptions.d.ts +5 -3
- package/dist/esm/public-functions/setClientOptions.js +1 -1
- package/dist/esm/public-functions/subscribeToRouteStatus.d.ts +5 -5
- package/dist/esm/public-functions/subscribeToRouteStatus.js +1 -1
- package/dist/esm/public-functions/validateCosmosGasBalance.d.ts +7 -6
- package/dist/esm/public-functions/validateCosmosGasBalance.js +4 -4
- package/dist/esm/public-functions/waitForTransaction.d.ts +5 -5
- package/dist/esm/{setClientOptions-BTRwCbmt.d.ts → setClientOptions-0DYCj_A5.d.ts} +1 -1
- package/dist/esm/{swaggerTypes-DDwqIjap.d.ts → swaggerTypes-Bh6hu5Q-.d.ts} +220 -196
- package/package.json +1 -1
- package/dist/cjs/chunk-VIG2BHYJ.cjs +0 -185
- package/dist/esm/chunk-3J6O2PVK.js +0 -180
- package/dist/esm/client-types-B7Fin0mq.d.ts +0 -61
|
@@ -142,12 +142,12 @@ var isFinalRouteStatus = (routeDetails) => {
|
|
|
142
142
|
return false;
|
|
143
143
|
};
|
|
144
144
|
var isFinalState = (transaction) => {
|
|
145
|
-
const transactionState = transaction?.statusResponse?.state;
|
|
145
|
+
const transactionState = transaction?.statusResponse?.transfers?.[0]?.state;
|
|
146
146
|
const transactionStatus2 = transaction?.status;
|
|
147
147
|
return transactionState === "STATE_COMPLETED_SUCCESS" || transactionState === "STATE_COMPLETED_ERROR" || transactionState === "STATE_ABANDONED" || transactionStatus2 === "failed" || transactionStatus2 === "success";
|
|
148
148
|
};
|
|
149
149
|
var isSuccessState = (transaction) => {
|
|
150
|
-
const transactionState = transaction?.statusResponse?.state;
|
|
150
|
+
const transactionState = transaction?.statusResponse?.transfers?.[0]?.state;
|
|
151
151
|
const transactionStatus2 = transaction?.status;
|
|
152
152
|
return transactionState === "STATE_COMPLETED_SUCCESS" || transactionStatus2 === "success";
|
|
153
153
|
};
|
|
@@ -163,29 +163,41 @@ var initializeNewRouteDetails = (options) => {
|
|
|
163
163
|
txsSigned: 0,
|
|
164
164
|
transactionDetails: [],
|
|
165
165
|
transferEvents: [],
|
|
166
|
-
|
|
167
|
-
|
|
166
|
+
relatedRoutes: [],
|
|
167
|
+
userAddresses: options?.userAddresses ?? []
|
|
168
168
|
};
|
|
169
169
|
routeDetailsMap.set(newRouteId, newRouteDetails);
|
|
170
170
|
return newRouteDetails;
|
|
171
171
|
};
|
|
172
172
|
var subscribeToRouteStatus = (props) => {
|
|
173
|
-
|
|
174
|
-
const
|
|
175
|
-
|
|
173
|
+
const { routeDetails, onRouteStatusUpdated } = props;
|
|
174
|
+
const routeList = Array.isArray(routeDetails) ? routeDetails : [routeDetails];
|
|
175
|
+
const cancelFlags = /* @__PURE__ */ new Map();
|
|
176
|
+
const unsubscribers = [];
|
|
177
|
+
for (const route of routeList) {
|
|
178
|
+
const cancelFlag = { cancelled: false };
|
|
179
|
+
cancelFlags.set(route?.id ?? uuid.v4(), cancelFlag);
|
|
180
|
+
const unsubscribe = () => {
|
|
181
|
+
cancelFlag.cancelled = true;
|
|
182
|
+
};
|
|
183
|
+
unsubscribers.push(unsubscribe);
|
|
184
|
+
void executeAndSubscribeToRouteStatus({
|
|
185
|
+
routeDetails: route,
|
|
186
|
+
onRouteStatusUpdated,
|
|
187
|
+
isCancelled: () => cancelFlag.cancelled
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
const unsubscribeAll = () => {
|
|
191
|
+
for (const unsubscribe of unsubscribers) {
|
|
192
|
+
unsubscribe();
|
|
193
|
+
}
|
|
176
194
|
};
|
|
177
|
-
|
|
178
|
-
...props,
|
|
179
|
-
isCancelled: () => cancelled
|
|
180
|
-
});
|
|
181
|
-
return unsubscribe;
|
|
195
|
+
return unsubscribeAll;
|
|
182
196
|
};
|
|
183
197
|
var executeAndSubscribeToRouteStatus = async ({
|
|
184
198
|
transactionDetails,
|
|
185
199
|
executeTransaction,
|
|
186
200
|
trackTxPollingOptions,
|
|
187
|
-
onTransactionTracked,
|
|
188
|
-
onTransactionCompleted,
|
|
189
201
|
routeDetails,
|
|
190
202
|
onRouteStatusUpdated,
|
|
191
203
|
options,
|
|
@@ -196,7 +208,9 @@ var executeAndSubscribeToRouteStatus = async ({
|
|
|
196
208
|
routeId ??= routeDetails?.id;
|
|
197
209
|
const currentRouteDetails = routeDetailsMap.get(routeId ?? "");
|
|
198
210
|
transactionDetails ??= routeDetails?.transactionDetails ?? currentRouteDetails?.transactionDetails ?? [];
|
|
199
|
-
if (routeDetails && isFinalRouteStatus(routeDetails)
|
|
211
|
+
if (routeDetails && isFinalRouteStatus(routeDetails) && routeDetails?.relatedRoutes?.every(
|
|
212
|
+
(relatedRoute) => isFinalRouteStatus(relatedRoute)
|
|
213
|
+
)) {
|
|
200
214
|
return;
|
|
201
215
|
}
|
|
202
216
|
for (const [transactionIndex, transaction] of transactionDetails.entries()) {
|
|
@@ -212,7 +226,11 @@ var executeAndSubscribeToRouteStatus = async ({
|
|
|
212
226
|
explorerLink = trackResponse.explorerLink;
|
|
213
227
|
}
|
|
214
228
|
transaction.explorerLink = explorerLink;
|
|
215
|
-
await onTransactionTracked?.({
|
|
229
|
+
await options?.onTransactionTracked?.({
|
|
230
|
+
txHash: transaction.txHash,
|
|
231
|
+
chainId: transaction.chainId,
|
|
232
|
+
explorerLink
|
|
233
|
+
});
|
|
216
234
|
}
|
|
217
235
|
if (transaction.txHash === void 0) {
|
|
218
236
|
updateRouteDetails({
|
|
@@ -226,10 +244,22 @@ var executeAndSubscribeToRouteStatus = async ({
|
|
|
226
244
|
});
|
|
227
245
|
return;
|
|
228
246
|
}
|
|
229
|
-
while (
|
|
247
|
+
while (true) {
|
|
248
|
+
const updatedRouteDetails = routeDetailsMap.get(routeId ?? "");
|
|
249
|
+
const allRelatedRoutesFinal = updatedRouteDetails?.relatedRoutes?.every(
|
|
250
|
+
(relatedRoute) => relatedRoute && isFinalRouteStatus(relatedRoute)
|
|
251
|
+
);
|
|
252
|
+
if (isFinalState(transaction) && allRelatedRoutesFinal) {
|
|
253
|
+
options?.onTransactionCompleted?.({
|
|
254
|
+
chainId: transaction.chainId,
|
|
255
|
+
txHash: transaction.txHash,
|
|
256
|
+
status: transaction.statusResponse
|
|
257
|
+
});
|
|
258
|
+
break;
|
|
259
|
+
}
|
|
230
260
|
if (isCancelled?.()) {
|
|
231
261
|
console.info(`Polling cancelled for route ${routeId}`);
|
|
232
|
-
|
|
262
|
+
break;
|
|
233
263
|
}
|
|
234
264
|
try {
|
|
235
265
|
const statusResponse = await chunkQPM7H2YL_cjs.transactionStatus({
|
|
@@ -244,15 +274,30 @@ var executeAndSubscribeToRouteStatus = async ({
|
|
|
244
274
|
options: {
|
|
245
275
|
onRouteStatusUpdated,
|
|
246
276
|
...options
|
|
247
|
-
}
|
|
277
|
+
},
|
|
278
|
+
relatedRoutes: routeDetails?.relatedRoutes
|
|
248
279
|
});
|
|
249
280
|
if (isFinalState(transaction)) {
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
281
|
+
const relatedRoutes = updatedRouteDetails?.relatedRoutes && updatedRouteDetails?.relatedRoutes.length > 0 ? updatedRouteDetails.relatedRoutes : routeDetails?.relatedRoutes;
|
|
282
|
+
if (relatedRoutes && relatedRoutes.length > 0) {
|
|
283
|
+
if (relatedRoutes.every(
|
|
284
|
+
(relatedRoute) => isFinalRouteStatus(relatedRoute)
|
|
285
|
+
)) {
|
|
286
|
+
options?.onTransactionCompleted?.({
|
|
287
|
+
chainId: transaction.chainId,
|
|
288
|
+
txHash: transaction.txHash,
|
|
289
|
+
status: statusResponse
|
|
290
|
+
});
|
|
291
|
+
break;
|
|
292
|
+
}
|
|
293
|
+
} else {
|
|
294
|
+
options?.onTransactionCompleted?.({
|
|
295
|
+
chainId: transaction.chainId,
|
|
296
|
+
txHash: transaction.txHash,
|
|
297
|
+
status: statusResponse
|
|
298
|
+
});
|
|
299
|
+
break;
|
|
300
|
+
}
|
|
256
301
|
}
|
|
257
302
|
} catch (error) {
|
|
258
303
|
console.error(error);
|
|
@@ -267,7 +312,10 @@ var updateRouteDetails = ({
|
|
|
267
312
|
routeDetails,
|
|
268
313
|
options,
|
|
269
314
|
status,
|
|
270
|
-
routeId
|
|
315
|
+
routeId,
|
|
316
|
+
mainRouteId,
|
|
317
|
+
transferIndexToRouteKey,
|
|
318
|
+
relatedRoutes
|
|
271
319
|
}) => {
|
|
272
320
|
routeId ??= routeDetails?.id ?? "";
|
|
273
321
|
let currentRouteDetails = routeDetails ?? routeDetailsMap.get(routeId);
|
|
@@ -275,6 +323,7 @@ var updateRouteDetails = ({
|
|
|
275
323
|
currentRouteDetails = initializeNewRouteDetails(options);
|
|
276
324
|
routeId = currentRouteDetails?.id;
|
|
277
325
|
}
|
|
326
|
+
transferIndexToRouteKey ??= currentRouteDetails?.transferIndexToRouteKey;
|
|
278
327
|
if (currentRouteDetails === void 0) {
|
|
279
328
|
throw new Error("No route details found");
|
|
280
329
|
}
|
|
@@ -283,7 +332,9 @@ var updateRouteDetails = ({
|
|
|
283
332
|
if (currentRouteDetails?.status === "signing" && status === "pending") {
|
|
284
333
|
currentRouteDetails.txsSigned += 1;
|
|
285
334
|
}
|
|
286
|
-
const transferEvents = routeDetails?.transferEvents ?? getTransferEventsFromTxStatusResponse(
|
|
335
|
+
const transferEvents = routeDetails?.transferEvents ?? getTransferEventsFromTxStatusResponse(
|
|
336
|
+
transactionDetails.map((tx) => tx.statusResponse).filter((status2) => status2 !== void 0)
|
|
337
|
+
);
|
|
287
338
|
const allExpectedTxsStarted = transactionDetails.every(
|
|
288
339
|
(tx) => tx.txHash || tx.status === void 0
|
|
289
340
|
);
|
|
@@ -307,9 +358,14 @@ var updateRouteDetails = ({
|
|
|
307
358
|
}
|
|
308
359
|
return currentRouteDetails?.status;
|
|
309
360
|
};
|
|
310
|
-
const transferAssetRelease = transactionDetails?.findLast(
|
|
311
|
-
|
|
312
|
-
|
|
361
|
+
const transferAssetRelease = transactionDetails?.findLast(
|
|
362
|
+
(i) => i.statusResponse?.transferAssetRelease
|
|
363
|
+
)?.statusResponse?.transferAssetRelease;
|
|
364
|
+
const updatedRelatedRoutes = updateRelatedRoutes({
|
|
365
|
+
relatedRoutes: relatedRoutes ?? currentRouteDetails?.relatedRoutes ?? [],
|
|
366
|
+
transferIndexToRouteKey,
|
|
367
|
+
transactionDetails
|
|
368
|
+
});
|
|
313
369
|
const newRouteDetails = {
|
|
314
370
|
id: routeId,
|
|
315
371
|
timestamp: currentRouteDetails.timestamp,
|
|
@@ -319,9 +375,11 @@ var updateRouteDetails = ({
|
|
|
319
375
|
transactionDetails,
|
|
320
376
|
transferEvents,
|
|
321
377
|
transferAssetRelease,
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
378
|
+
userAddresses: (currentRouteDetails?.userAddresses.length > 0 ? currentRouteDetails?.userAddresses : options?.userAddresses) ?? [],
|
|
379
|
+
txsSigned: currentRouteDetails?.txsSigned,
|
|
380
|
+
transferIndexToRouteKey,
|
|
381
|
+
mainRouteId: mainRouteId ?? currentRouteDetails?.mainRouteId,
|
|
382
|
+
relatedRoutes: updatedRelatedRoutes
|
|
325
383
|
};
|
|
326
384
|
const newRouteStatus = getRouteDetailsWithSimpleTransactionDetailsStatus(newRouteDetails);
|
|
327
385
|
const previousRouteStatus = getRouteDetailsWithSimpleTransactionDetailsStatus(currentRouteDetails);
|
|
@@ -335,6 +393,8 @@ var updateRouteDetails = ({
|
|
|
335
393
|
};
|
|
336
394
|
var getSimpleRoute = (route) => {
|
|
337
395
|
return {
|
|
396
|
+
usdAmountOut: route?.usdAmountOut,
|
|
397
|
+
usdAmountIn: route?.usdAmountIn,
|
|
338
398
|
amountIn: route?.amountIn,
|
|
339
399
|
amountOut: route?.amountOut,
|
|
340
400
|
sourceAssetDenom: route?.sourceAssetDenom,
|
|
@@ -349,10 +409,11 @@ var getRouteDetailsWithSimpleTransactionDetailsStatus = (routeDetails) => {
|
|
|
349
409
|
...routeDetails,
|
|
350
410
|
transactionDetails: routeDetails.transactionDetails.map((txDetails) => {
|
|
351
411
|
const { statusResponse, ...rest } = txDetails;
|
|
352
|
-
|
|
412
|
+
const newTxDetails = {
|
|
353
413
|
...rest,
|
|
354
|
-
status: txDetails?.status ?? getTransactionStatus(
|
|
414
|
+
status: txDetails?.status ?? getTransactionStatus(statusResponse?.transfers?.[0]?.state)
|
|
355
415
|
};
|
|
416
|
+
return newTxDetails;
|
|
356
417
|
})
|
|
357
418
|
};
|
|
358
419
|
};
|
|
@@ -363,6 +424,43 @@ var removeRoutesWithFinalStatus = () => {
|
|
|
363
424
|
}
|
|
364
425
|
});
|
|
365
426
|
};
|
|
427
|
+
var convertTransactionStatusToRouteStatus = (transactionStatus2) => {
|
|
428
|
+
if (!transactionStatus2) return;
|
|
429
|
+
if (transactionStatus2 === "success") {
|
|
430
|
+
return "completed";
|
|
431
|
+
}
|
|
432
|
+
return transactionStatus2;
|
|
433
|
+
};
|
|
434
|
+
var updateRelatedRoutes = ({
|
|
435
|
+
relatedRoutes,
|
|
436
|
+
transferIndexToRouteKey,
|
|
437
|
+
transactionDetails
|
|
438
|
+
}) => {
|
|
439
|
+
let updatedRelatedRoutes = [
|
|
440
|
+
...relatedRoutes.map((relatedRoute) => ({ ...relatedRoute }))
|
|
441
|
+
];
|
|
442
|
+
if (!transferIndexToRouteKey) return updatedRelatedRoutes;
|
|
443
|
+
transactionDetails?.forEach((transaction) => {
|
|
444
|
+
Object.entries(transferIndexToRouteKey).forEach(([indexStr, routeKey]) => {
|
|
445
|
+
const index = Number(indexStr);
|
|
446
|
+
const state = transaction?.statusResponse?.transfers?.[index]?.state;
|
|
447
|
+
const status = convertTransactionStatusToRouteStatus(
|
|
448
|
+
getTransactionStatus(state)
|
|
449
|
+
);
|
|
450
|
+
const transferAssetRelease = transaction?.statusResponse?.transfers?.[index]?.transferAssetRelease;
|
|
451
|
+
const targetRoute = updatedRelatedRoutes.find(
|
|
452
|
+
(r) => r.routeKey === routeKey
|
|
453
|
+
);
|
|
454
|
+
if (targetRoute && state) {
|
|
455
|
+
targetRoute.status = status ?? "failed";
|
|
456
|
+
}
|
|
457
|
+
if (targetRoute && transferAssetRelease) {
|
|
458
|
+
targetRoute.transferAssetRelease = transferAssetRelease;
|
|
459
|
+
}
|
|
460
|
+
});
|
|
461
|
+
});
|
|
462
|
+
return updatedRelatedRoutes;
|
|
463
|
+
};
|
|
366
464
|
|
|
367
465
|
exports.executeAndSubscribeToRouteStatus = executeAndSubscribeToRouteStatus;
|
|
368
466
|
exports.getTransactionStatus = getTransactionStatus;
|