@skip-go/client 1.3.6 → 1.4.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 (118) hide show
  1. package/dist/cjs/api/getAssets.cjs +4 -4
  2. package/dist/cjs/api/getAssetsBetweenChains.cjs +3 -3
  3. package/dist/cjs/api/getBridges.cjs +3 -3
  4. package/dist/cjs/api/getChains.cjs +3 -3
  5. package/dist/cjs/api/getVenues.cjs +3 -3
  6. package/dist/cjs/api/postAssetsFromSource.cjs +4 -4
  7. package/dist/cjs/api/postBalances.cjs +3 -3
  8. package/dist/cjs/api/postIbcOriginAssets.cjs +3 -3
  9. package/dist/cjs/api/postMessages.cjs +3 -3
  10. package/dist/cjs/api/postMessagesDirect.cjs +3 -3
  11. package/dist/cjs/api/postRecommendAssets.cjs +3 -3
  12. package/dist/cjs/api/postRoute.cjs +3 -3
  13. package/dist/cjs/api/postSubmitTransaction.cjs +3 -3
  14. package/dist/cjs/api/postTrackTransaction.cjs +3 -3
  15. package/dist/cjs/api/postTransactionStatus.cjs +3 -3
  16. package/dist/cjs/chunk-3M7YYWGL.cjs +295 -0
  17. package/dist/cjs/{chunk-IE22IVFA.cjs → chunk-46VB6RQK.cjs} +8 -8
  18. package/dist/cjs/{chunk-MW3TE7DC.cjs → chunk-5AYPH3ZR.cjs} +2 -2
  19. package/dist/cjs/{chunk-2CCLIBCC.cjs → chunk-5HDKZVOL.cjs} +2 -2
  20. package/dist/cjs/{chunk-3FYU3BJ7.cjs → chunk-6LA66667.cjs} +126 -16
  21. package/dist/cjs/chunk-7MC3BVQN.cjs +370 -0
  22. package/dist/cjs/{chunk-YYBGBKRE.cjs → chunk-A26H4FVN.cjs} +4 -4
  23. package/dist/cjs/{chunk-P7CDAHIX.cjs → chunk-AXYRULAI.cjs} +2 -2
  24. package/dist/cjs/{chunk-WMXUOVHN.cjs → chunk-DWOE6N5S.cjs} +248 -532
  25. package/dist/cjs/{chunk-7I2KQNIU.cjs → chunk-EJMC4JXF.cjs} +2 -2
  26. package/dist/cjs/{chunk-HKQ5VION.cjs → chunk-ERGJBZUC.cjs} +5 -1
  27. package/dist/cjs/{chunk-J5RC6ZU5.cjs → chunk-FNB244QI.cjs} +6 -6
  28. package/dist/cjs/{chunk-2EKCOIWV.cjs → chunk-IDEJORRT.cjs} +155 -154
  29. package/dist/cjs/{chunk-DBDB2XWX.cjs → chunk-JBKNEFXB.cjs} +3 -3
  30. package/dist/cjs/{chunk-N3LR7KTI.cjs → chunk-KM2D7PJL.cjs} +33 -57
  31. package/dist/cjs/{chunk-XGBCEYWI.cjs → chunk-LHY62HPI.cjs} +2 -2
  32. package/dist/cjs/{chunk-EXK2GDR5.cjs → chunk-LUVMRHAJ.cjs} +2 -2
  33. package/dist/cjs/{chunk-QSISUSYP.cjs → chunk-N4UW74AG.cjs} +4 -4
  34. package/dist/cjs/{chunk-FY56EEFB.cjs → chunk-OZUCMWNE.cjs} +2 -2
  35. package/dist/cjs/{chunk-JTB3SPCH.cjs → chunk-Q43XCBMX.cjs} +6 -6
  36. package/dist/cjs/{chunk-2VQ2TNFM.cjs → chunk-QPM7H2YL.cjs} +2 -2
  37. package/dist/cjs/{chunk-FO25SR66.cjs → chunk-RCGCQD6T.cjs} +6 -6
  38. package/dist/cjs/chunk-VIG2BHYJ.cjs +185 -0
  39. package/dist/cjs/{chunk-DCFIIF7G.cjs → chunk-X5AJHZ2J.cjs} +2 -2
  40. package/dist/cjs/{chunk-SZ64FWGB.cjs → chunk-ZAATXQBG.cjs} +2 -2
  41. package/dist/cjs/{chunk-MCZ3F457.cjs → chunk-ZBPDDVQ2.cjs} +2 -2
  42. package/dist/cjs/{chunk-VGS46RWR.cjs → chunk-ZKBSNSHQ.cjs} +188 -209
  43. package/dist/cjs/index.cjs +57 -51
  44. package/dist/cjs/public-functions/executeRoute.cjs +16 -15
  45. package/dist/cjs/public-functions/getCosmosGasAmountForMessage.cjs +5 -4
  46. package/dist/cjs/public-functions/getFeeInfoForChain.cjs +5 -5
  47. package/dist/cjs/public-functions/getRecommendedGasPrice.cjs +6 -6
  48. package/dist/cjs/public-functions/getSigningStargateClient.cjs +6 -5
  49. package/dist/cjs/public-functions/setApiOptions.cjs +3 -3
  50. package/dist/cjs/public-functions/setClientOptions.cjs +6 -5
  51. package/dist/cjs/public-functions/subscribeToRouteStatus.cjs +26 -0
  52. package/dist/cjs/public-functions/validateCosmosGasBalance.cjs +9 -8
  53. package/dist/cjs/public-functions/waitForTransaction.cjs +5 -5
  54. package/dist/esm/api/getAssets.js +2 -2
  55. package/dist/esm/api/getAssetsBetweenChains.js +2 -2
  56. package/dist/esm/api/getBridges.js +2 -2
  57. package/dist/esm/api/getChains.js +2 -2
  58. package/dist/esm/api/getVenues.js +2 -2
  59. package/dist/esm/api/postAssetsFromSource.js +3 -3
  60. package/dist/esm/api/postBalances.js +2 -2
  61. package/dist/esm/api/postIbcOriginAssets.js +2 -2
  62. package/dist/esm/api/postMessages.js +2 -2
  63. package/dist/esm/api/postMessagesDirect.js +2 -2
  64. package/dist/esm/api/postRecommendAssets.js +2 -2
  65. package/dist/esm/api/postRoute.js +2 -2
  66. package/dist/esm/api/postSubmitTransaction.js +2 -2
  67. package/dist/esm/api/postTrackTransaction.d.ts +2 -1
  68. package/dist/esm/api/postTrackTransaction.js +2 -2
  69. package/dist/esm/api/postTransactionStatus.d.ts +1 -1
  70. package/dist/esm/api/postTransactionStatus.js +2 -2
  71. package/dist/esm/callbacks-B3kjKg0v.d.ts +175 -0
  72. package/dist/esm/chunk-3J6O2PVK.js +180 -0
  73. package/dist/esm/{chunk-SJP6W2SK.js → chunk-3XOGEVJL.js} +1 -1
  74. package/dist/esm/{chunk-ZL6XF5A3.js → chunk-4RLJWCQR.js} +2 -2
  75. package/dist/esm/{chunk-JSY7M43P.js → chunk-52PEBJRQ.js} +1 -1
  76. package/dist/esm/{chunk-7ITTEUMR.js → chunk-7X4ERB3R.js} +1 -1
  77. package/dist/esm/{chunk-LZI7A4JI.js → chunk-A6KSECAH.js} +5 -1
  78. package/dist/esm/{chunk-7LSTJXAF.js → chunk-AND7HVIU.js} +1 -1
  79. package/dist/esm/{chunk-MXCJ2M3K.js → chunk-APRMN34M.js} +1 -1
  80. package/dist/esm/{chunk-6ZLEWCU2.js → chunk-BAJFQZDT.js} +146 -167
  81. package/dist/esm/{chunk-5KIWNRW4.js → chunk-CIAOTO3M.js} +1 -1
  82. package/dist/esm/{chunk-JYUNVL4F.js → chunk-FH2YHZVV.js} +1 -1
  83. package/dist/esm/{chunk-ADUNNC4O.js → chunk-GHNH5QC3.js} +3 -3
  84. package/dist/esm/{chunk-OHV2LZEG.js → chunk-JQ4F4WBG.js} +1 -1
  85. package/dist/esm/{chunk-TV2XPAIF.js → chunk-KNXMSLOB.js} +3 -26
  86. package/dist/esm/{chunk-YLVFZDR5.js → chunk-KYDY7QRT.js} +109 -3
  87. package/dist/esm/{chunk-IWXRHEX4.js → chunk-LHNGF5J2.js} +2 -2
  88. package/dist/esm/{chunk-JIADJKRD.js → chunk-OTS5KO43.js} +1 -1
  89. package/dist/esm/{chunk-CU6W3622.js → chunk-QIS6ILPS.js} +3 -3
  90. package/dist/esm/chunk-QO2CYYF5.js +278 -0
  91. package/dist/esm/{chunk-OL7CWCPB.js → chunk-REWUSU53.js} +4 -3
  92. package/dist/esm/chunk-RQ7DXNSS.js +365 -0
  93. package/dist/esm/{chunk-XXTECZG3.js → chunk-S4RO2LHD.js} +1 -1
  94. package/dist/esm/{chunk-7YN3UVVF.js → chunk-UI3SIFZN.js} +1 -1
  95. package/dist/esm/{chunk-TD63P2AG.js → chunk-UIDIKXMB.js} +65 -340
  96. package/dist/esm/{chunk-HT6O3BQ7.js → chunk-Y2YCODZK.js} +1 -1
  97. package/dist/esm/{chunk-IPHFFTGO.js → chunk-ZI3SYUQH.js} +1 -1
  98. package/dist/esm/{chunk-2L7PKZDY.js → chunk-ZOUYAZU6.js} +1 -1
  99. package/dist/esm/index.d.ts +2 -3
  100. package/dist/esm/index.js +27 -25
  101. package/dist/esm/public-functions/executeRoute.d.ts +7 -76
  102. package/dist/esm/public-functions/executeRoute.js +15 -14
  103. package/dist/esm/public-functions/getCosmosGasAmountForMessage.js +3 -2
  104. package/dist/esm/public-functions/getFeeInfoForChain.js +4 -4
  105. package/dist/esm/public-functions/getRecommendedGasPrice.js +5 -5
  106. package/dist/esm/public-functions/getSigningStargateClient.js +5 -4
  107. package/dist/esm/public-functions/setApiOptions.js +2 -2
  108. package/dist/esm/public-functions/setClientOptions.js +5 -4
  109. package/dist/esm/public-functions/subscribeToRouteStatus.d.ts +12 -0
  110. package/dist/esm/public-functions/subscribeToRouteStatus.js +5 -0
  111. package/dist/esm/public-functions/validateCosmosGasBalance.d.ts +3 -2
  112. package/dist/esm/public-functions/validateCosmosGasBalance.js +8 -7
  113. package/dist/esm/public-functions/waitForTransaction.d.ts +5 -1
  114. package/dist/esm/public-functions/waitForTransaction.js +4 -4
  115. package/package.json +3 -3
  116. package/dist/cjs/chunk-MN763TPC.cjs +0 -187
  117. package/dist/esm/callbacks-CuL50GnB.d.ts +0 -38
  118. package/dist/esm/chunk-VBWLUZXT.js +0 -182
@@ -1,16 +1,21 @@
1
1
  'use strict';
2
2
 
3
- var chunkMN763TPC_cjs = require('./chunk-MN763TPC.cjs');
4
- var chunkQSISUSYP_cjs = require('./chunk-QSISUSYP.cjs');
3
+ var chunkVIG2BHYJ_cjs = require('./chunk-VIG2BHYJ.cjs');
4
+ var chunk3M7YYWGL_cjs = require('./chunk-3M7YYWGL.cjs');
5
+ var chunkN4UW74AG_cjs = require('./chunk-N4UW74AG.cjs');
5
6
  var stargate = require('@cosmjs/stargate');
6
7
  var utils = require('@cosmjs/utils');
7
8
  var binary_js = require('cosmjs-types/binary.js');
8
9
  var auth_js = require('cosmjs-types/cosmos/auth/v1beta1/auth.js');
9
10
  var coin_js = require('cosmjs-types/cosmos/base/v1beta1/coin.js');
10
11
  var protoSigning = require('@cosmjs/proto-signing');
11
- var sdkTs = require('@injectivelabs/sdk-ts');
12
12
  var keys_js = require('cosmjs-types/cosmos/crypto/secp256k1/keys.js');
13
13
  var amino = require('@cosmjs/amino');
14
+ var _m0 = require('protobufjs/minimal.js');
15
+
16
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
17
+
18
+ var _m0__default = /*#__PURE__*/_interopDefault(_m0);
14
19
 
15
20
  var createBaseVestingAccount = () => {
16
21
  return {
@@ -170,6 +175,95 @@ var StridePeriodicVestingAccount = {
170
175
  return message;
171
176
  }
172
177
  };
178
+ function createBaseEthAccount() {
179
+ return {
180
+ baseAccount: void 0,
181
+ codeHash: new Uint8Array()
182
+ };
183
+ }
184
+ var EthAccount = {
185
+ typeUrl: "/injective.types.v1beta1.EthAccount",
186
+ encode(message, writer = _m0__default.default.Writer.create()) {
187
+ if (message.baseAccount !== void 0) {
188
+ chunk3M7YYWGL_cjs.BaseAccount.encode(message.baseAccount, writer.uint32(10).fork()).ldelim();
189
+ }
190
+ if (message.codeHash.length !== 0) {
191
+ writer.uint32(18).bytes(message.codeHash);
192
+ }
193
+ return writer;
194
+ },
195
+ decode(input, length) {
196
+ const reader = input instanceof _m0__default.default.Reader ? input : new _m0__default.default.Reader(input);
197
+ let end = length === void 0 ? reader.len : reader.pos + length;
198
+ const message = createBaseEthAccount();
199
+ while (reader.pos < end) {
200
+ const tag = reader.uint32();
201
+ switch (tag >>> 3) {
202
+ case 1:
203
+ message.baseAccount = chunk3M7YYWGL_cjs.BaseAccount.decode(reader, reader.uint32());
204
+ break;
205
+ case 2:
206
+ message.codeHash = reader.bytes();
207
+ break;
208
+ default:
209
+ reader.skipType(tag & 7);
210
+ break;
211
+ }
212
+ }
213
+ return message;
214
+ },
215
+ fromJSON(object) {
216
+ return {
217
+ baseAccount: chunk3M7YYWGL_cjs.isSet(object.baseAccount) ? chunk3M7YYWGL_cjs.BaseAccount.fromJSON(object.baseAccount) : void 0,
218
+ codeHash: chunk3M7YYWGL_cjs.isSet(object.codeHash) ? chunk3M7YYWGL_cjs.bytesFromBase64(object.codeHash) : new Uint8Array()
219
+ };
220
+ },
221
+ toJSON(message) {
222
+ const obj = {};
223
+ message.baseAccount !== void 0 && (obj.baseAccount = message.baseAccount ? chunk3M7YYWGL_cjs.BaseAccount.toJSON(message.baseAccount) : void 0);
224
+ message.codeHash !== void 0 && (obj.codeHash = chunk3M7YYWGL_cjs.base64FromBytes(message.codeHash !== void 0 ? message.codeHash : new Uint8Array()));
225
+ return obj;
226
+ },
227
+ fromPartial(object) {
228
+ const message = createBaseEthAccount();
229
+ message.baseAccount = object.baseAccount !== void 0 && object.baseAccount !== null ? chunk3M7YYWGL_cjs.BaseAccount.fromPartial(object.baseAccount) : void 0;
230
+ message.codeHash = object.codeHash ?? new Uint8Array();
231
+ return message;
232
+ },
233
+ fromAmino(object) {
234
+ const message = createBaseEthAccount();
235
+ if (object.base_account !== void 0 && object.base_account !== null) {
236
+ message.baseAccount = chunk3M7YYWGL_cjs.BaseAccount.fromAmino(object.base_account);
237
+ }
238
+ if (object.code_hash !== void 0 && object.code_hash !== null) {
239
+ message.codeHash = chunk3M7YYWGL_cjs.bytesFromBase64(object.code_hash);
240
+ }
241
+ return message;
242
+ },
243
+ toAmino(message) {
244
+ const obj = {};
245
+ obj.base_account = message.baseAccount ? chunk3M7YYWGL_cjs.BaseAccount.toAmino(message.baseAccount) : void 0;
246
+ obj.code_hash = message.codeHash ? chunk3M7YYWGL_cjs.base64FromBytes(message.codeHash) : void 0;
247
+ return obj;
248
+ },
249
+ fromAminoMsg(object) {
250
+ return EthAccount.fromAmino(object.value);
251
+ },
252
+ fromProtoMsg(message) {
253
+ return EthAccount.decode(message.value);
254
+ },
255
+ toProto(message) {
256
+ return EthAccount.encode(message).finish();
257
+ },
258
+ toProtoMsg(message) {
259
+ return {
260
+ typeUrl: "/injective.types.v1beta1.EthAccount",
261
+ value: EthAccount.encode(message).finish()
262
+ };
263
+ }
264
+ };
265
+
266
+ // src/registry.ts
173
267
  var accountParser = (acc) => {
174
268
  switch (acc.typeUrl) {
175
269
  case "/stride.vesting.StridePeriodicVestingAccount": {
@@ -183,12 +277,12 @@ var accountParser = (acc) => {
183
277
  };
184
278
  }
185
279
  case "/injective.types.v1beta1.EthAccount":
186
- return sdkTs.accountEthParser(
280
+ return accountEthParser(
187
281
  acc,
188
282
  "/injective.crypto.v1beta1.ethsecp256k1.PubKey"
189
283
  );
190
284
  case "/ethermint.types.v1.EthAccount":
191
- return sdkTs.accountEthParser(acc, "/ethermint.crypto.v1.ethsecp256k1.PubKey");
285
+ return accountEthParser(acc, "/ethermint.crypto.v1.ethsecp256k1.PubKey");
192
286
  default: {
193
287
  if (acc.typeUrl === "/cosmos.auth.v1beta1.BaseAccount") {
194
288
  const { address, pubKey, accountNumber, sequence } = auth_js.BaseAccount.decode(
@@ -209,14 +303,30 @@ var accountParser = (acc) => {
209
303
  }
210
304
  }
211
305
  };
306
+ var accountEthParser = (ethAccount, pubKeyTypeUrl = "/injective.crypto.v1beta1.ethsecp256k1.PubKey") => {
307
+ const account = EthAccount.decode(
308
+ ethAccount.value
309
+ );
310
+ const baseAccount = account.baseAccount;
311
+ const pubKey = baseAccount.pubKey;
312
+ return {
313
+ address: baseAccount.address,
314
+ pubkey: pubKey ? {
315
+ type: pubKeyTypeUrl,
316
+ value: Buffer.from(pubKey.value).toString("base64")
317
+ } : null,
318
+ accountNumber: parseInt(baseAccount.accountNumber.toString(), 10),
319
+ sequence: parseInt(baseAccount.sequence.toString(), 10)
320
+ };
321
+ };
212
322
 
213
323
  // src/private-functions/getRpcEndpointForChain.ts
214
324
  var getRpcEndpointForChain = async (chainId) => {
215
- if (chunkQSISUSYP_cjs.ClientState.endpointOptions.getRpcEndpointForChain) {
216
- return chunkQSISUSYP_cjs.ClientState.endpointOptions.getRpcEndpointForChain(chainId);
325
+ if (chunkN4UW74AG_cjs.ClientState.endpointOptions.getRpcEndpointForChain) {
326
+ return chunkN4UW74AG_cjs.ClientState.endpointOptions.getRpcEndpointForChain(chainId);
217
327
  }
218
- if (chunkQSISUSYP_cjs.ClientState.endpointOptions.endpoints && chunkQSISUSYP_cjs.ClientState.endpointOptions.endpoints[chainId]) {
219
- const endpointOptions = chunkQSISUSYP_cjs.ClientState.endpointOptions.endpoints[chainId];
328
+ if (chunkN4UW74AG_cjs.ClientState.endpointOptions.endpoints && chunkN4UW74AG_cjs.ClientState.endpointOptions.endpoints[chainId]) {
329
+ const endpointOptions = chunkN4UW74AG_cjs.ClientState.endpointOptions.endpoints[chainId];
220
330
  if (endpointOptions?.rpc) {
221
331
  return endpointOptions.rpc;
222
332
  }
@@ -224,7 +334,7 @@ var getRpcEndpointForChain = async (chainId) => {
224
334
  console.warn(
225
335
  "Warning: You are using unreliable public endpoints. We strongly recommend overriding them via endpointOptions for use beyond development settings."
226
336
  );
227
- const chain = chunkMN763TPC_cjs.chains().find((chain2) => chain2.chainId === chainId);
337
+ const chain = chunkVIG2BHYJ_cjs.chains().find((chain2) => chain2.chainId === chainId);
228
338
  if (!chain) {
229
339
  throw new Error(`getRpcEndpointForChain: failed to find chain id '${chainId}' in registry`);
230
340
  }
@@ -234,7 +344,7 @@ var getRpcEndpointForChain = async (chainId) => {
234
344
  );
235
345
  }
236
346
  const endpoints = chain.apis?.rpc?.map((api) => api.address);
237
- const endpoint = await chunkMN763TPC_cjs.findFirstWorkingEndpoint(endpoints, "rpc");
347
+ const endpoint = await chunkVIG2BHYJ_cjs.findFirstWorkingEndpoint(endpoints, "rpc");
238
348
  if (!endpoint) {
239
349
  throw new Error(
240
350
  `getRpcEndpointForChain error: failed to find RPC endpoint for chain id '${chainId}'`
@@ -251,19 +361,19 @@ var getSigningStargateClient = async ({
251
361
  if (!getOfflineSigner) {
252
362
  throw new Error("'getCosmosSigner' is not provided or configured in skip router");
253
363
  }
254
- if (!chunkQSISUSYP_cjs.ClientState.signingStargateClientByChainId?.[chainId]) {
364
+ if (!chunkN4UW74AG_cjs.ClientState.signingStargateClientByChainId?.[chainId]) {
255
365
  const [signer, endpoint] = await Promise.all([
256
366
  getOfflineSigner(chainId),
257
367
  getRpcEndpointForChain(chainId)
258
368
  ]);
259
- chunkQSISUSYP_cjs.ClientState.signingStargateClientByChainId[chainId] = await stargate.SigningStargateClient.connectWithSigner(endpoint, signer, {
260
- aminoTypes: chunkQSISUSYP_cjs.ClientState.aminoTypes,
261
- registry: chunkQSISUSYP_cjs.ClientState.registry,
369
+ chunkN4UW74AG_cjs.ClientState.signingStargateClientByChainId[chainId] = await stargate.SigningStargateClient.connectWithSigner(endpoint, signer, {
370
+ aminoTypes: chunkN4UW74AG_cjs.ClientState.aminoTypes,
371
+ registry: chunkN4UW74AG_cjs.ClientState.registry,
262
372
  accountParser
263
373
  });
264
374
  }
265
375
  return {
266
- stargateClient: chunkQSISUSYP_cjs.ClientState.signingStargateClientByChainId[chainId],
376
+ stargateClient: chunkN4UW74AG_cjs.ClientState.signingStargateClientByChainId[chainId],
267
377
  signer: await getOfflineSigner(chainId)
268
378
  };
269
379
  };
@@ -0,0 +1,370 @@
1
+ 'use strict';
2
+
3
+ var chunkLUVMRHAJ_cjs = require('./chunk-LUVMRHAJ.cjs');
4
+ var chunkQPM7H2YL_cjs = require('./chunk-QPM7H2YL.cjs');
5
+ var chunkERGJBZUC_cjs = require('./chunk-ERGJBZUC.cjs');
6
+ var uuid = require('uuid');
7
+
8
+ // src/utils/clientType.ts
9
+ function getClientTransferEvent(transferEvent) {
10
+ const combinedTransferEvent = transferEvent;
11
+ const axelarTransfer = combinedTransferEvent?.axelarTransfer;
12
+ const ibcTransfer = combinedTransferEvent?.ibcTransfer;
13
+ const cctpTransfer = combinedTransferEvent?.cctpTransfer;
14
+ const hyperlaneTransfer = combinedTransferEvent?.hyperlaneTransfer;
15
+ const opInitTransfer = combinedTransferEvent?.opInitTransfer;
16
+ const goFastTransfer = combinedTransferEvent?.goFastTransfer;
17
+ const stargateTransfer = combinedTransferEvent?.stargateTransfer;
18
+ const eurekaTransfer = combinedTransferEvent?.eurekaTransfer;
19
+ const layerZeroTransfer = combinedTransferEvent?.layerZeroTransfer;
20
+ let transferType = "";
21
+ if (axelarTransfer) {
22
+ transferType = "axelarTransfer" /* axelarTransfer */;
23
+ } else if (ibcTransfer) {
24
+ transferType = "ibcTransfer" /* ibcTransfer */;
25
+ } else if (cctpTransfer) {
26
+ transferType = "cctpTransfer" /* cctpTransfer */;
27
+ } else if (hyperlaneTransfer) {
28
+ transferType = "hyperlaneTransfer" /* hyperlaneTransfer */;
29
+ } else if (opInitTransfer) {
30
+ transferType = "opInitTransfer" /* opInitTransfer */;
31
+ } else if (goFastTransfer) {
32
+ transferType = "goFastTransfer" /* goFastTransfer */;
33
+ } else if (stargateTransfer) {
34
+ transferType = "stargateTransfer" /* stargateTransfer */;
35
+ } else if (eurekaTransfer) {
36
+ transferType = "eurekaTransfer" /* eurekaTransfer */;
37
+ } else if (layerZeroTransfer) {
38
+ transferType = "layerZeroTransfer" /* layerZeroTransfer */;
39
+ }
40
+ const getExplorerLink = (type) => {
41
+ switch (transferType) {
42
+ case "ibcTransfer" /* ibcTransfer */:
43
+ if (type === "send") {
44
+ return ibcTransfer.packetTxs.sendTx?.explorerLink;
45
+ }
46
+ return ibcTransfer.packetTxs.receiveTx?.explorerLink;
47
+ case "eurekaTransfer" /* eurekaTransfer */:
48
+ if (type === "send") {
49
+ return eurekaTransfer.packetTxs.sendTx?.explorerLink;
50
+ }
51
+ return eurekaTransfer.packetTxs.receiveTx?.explorerLink;
52
+ case "goFastTransfer" /* goFastTransfer */:
53
+ if (type === "send") {
54
+ return goFastTransfer.txs.orderSubmittedTx?.explorerLink;
55
+ }
56
+ return goFastTransfer.txs.orderFilledTx?.explorerLink;
57
+ case "axelarTransfer" /* axelarTransfer */:
58
+ return axelarTransfer?.axelarScanLink;
59
+ default:
60
+ if (type === "send") {
61
+ return combinedTransferEvent[transferType]?.txs?.sendTx?.explorerLink;
62
+ }
63
+ return combinedTransferEvent[transferType]?.txs?.receiveTx?.explorerLink;
64
+ }
65
+ };
66
+ const _result = {
67
+ ...ibcTransfer,
68
+ ...axelarTransfer,
69
+ ...cctpTransfer,
70
+ ...hyperlaneTransfer,
71
+ ...stargateTransfer,
72
+ ...hyperlaneTransfer,
73
+ ...opInitTransfer,
74
+ ...goFastTransfer,
75
+ ...stargateTransfer,
76
+ ...eurekaTransfer,
77
+ ...layerZeroTransfer,
78
+ fromExplorerLink: getExplorerLink("send"),
79
+ toExplorerLink: getExplorerLink("receive")
80
+ };
81
+ const status = getSimpleStatus(_result.state);
82
+ const result = {
83
+ ..._result,
84
+ status
85
+ };
86
+ return result;
87
+ }
88
+ function getTransferEventsFromTxStatusResponse(txStatusResponse) {
89
+ if (!txStatusResponse) return [];
90
+ return txStatusResponse?.flatMap((txStatus) => {
91
+ return (txStatus.transferSequence ?? []).map((transferEvent) => {
92
+ return getClientTransferEvent(transferEvent);
93
+ });
94
+ });
95
+ }
96
+ function getSimpleStatus(state) {
97
+ switch (state) {
98
+ case "TRANSFER_PENDING":
99
+ case "TRANSFER_RECEIVED":
100
+ case "AXELAR_TRANSFER_PENDING_CONFIRMATION":
101
+ case "AXELAR_TRANSFER_PENDING_RECEIPT":
102
+ case "CCTP_TRANSFER_SENT":
103
+ case "CCTP_TRANSFER_PENDING_CONFIRMATION":
104
+ case "CCTP_TRANSFER_CONFIRMED":
105
+ case "HYPERLANE_TRANSFER_SENT":
106
+ case "OPINIT_TRANSFER_SENT":
107
+ case "GO_FAST_TRANSFER_SENT":
108
+ case "STARGATE_TRANSFER_SENT":
109
+ case "LAYER_ZERO_TRANSFER_SENT":
110
+ return "pending";
111
+ case "TRANSFER_SUCCESS":
112
+ case "AXELAR_TRANSFER_SUCCESS":
113
+ case "CCTP_TRANSFER_RECEIVED":
114
+ case "HYPERLANE_TRANSFER_RECEIVED":
115
+ case "OPINIT_TRANSFER_RECEIVED":
116
+ case "STARGATE_TRANSFER_RECEIVED":
117
+ case "GO_FAST_TRANSFER_FILLED":
118
+ case "LAYER_ZERO_TRANSFER_RECEIVED":
119
+ return "completed";
120
+ default:
121
+ return "failed";
122
+ }
123
+ }
124
+ function getTransactionStatus(state) {
125
+ switch (state) {
126
+ case "STATE_SUBMITTED":
127
+ case "STATE_PENDING":
128
+ return "pending";
129
+ case "STATE_COMPLETED_SUCCESS":
130
+ return "success";
131
+ case "STATE_COMPLETED_ERROR":
132
+ case "STATE_PENDING_ERROR":
133
+ return "failed";
134
+ default:
135
+ return "pending";
136
+ }
137
+ }
138
+ var isFinalRouteStatus = (routeDetails) => {
139
+ if (routeDetails.status === "completed" || routeDetails.status === "failed" || routeDetails.status === "incomplete") {
140
+ return true;
141
+ }
142
+ return false;
143
+ };
144
+ var isFinalState = (transaction) => {
145
+ const transactionState = transaction?.statusResponse?.state;
146
+ const transactionStatus2 = transaction?.status;
147
+ return transactionState === "STATE_COMPLETED_SUCCESS" || transactionState === "STATE_COMPLETED_ERROR" || transactionState === "STATE_ABANDONED" || transactionStatus2 === "failed" || transactionStatus2 === "success";
148
+ };
149
+ var isSuccessState = (transaction) => {
150
+ const transactionState = transaction?.statusResponse?.state;
151
+ const transactionStatus2 = transaction?.status;
152
+ return transactionState === "STATE_COMPLETED_SUCCESS" || transactionStatus2 === "success";
153
+ };
154
+ var routeDetailsMap = /* @__PURE__ */ new Map();
155
+ var initializeNewRouteDetails = (options) => {
156
+ const newRouteId = uuid.v4();
157
+ const newRouteDetails = {
158
+ id: newRouteId,
159
+ timestamp: Date.now(),
160
+ route: getSimpleRoute(options?.route),
161
+ status: "unconfirmed",
162
+ txsRequired: options?.route?.txsRequired ?? 1,
163
+ txsSigned: 0,
164
+ transactionDetails: [],
165
+ transferEvents: [],
166
+ senderAddress: options?.userAddresses?.[0]?.address ?? "",
167
+ receiverAddress: options?.userAddresses?.at(-1)?.address ?? ""
168
+ };
169
+ routeDetailsMap.set(newRouteId, newRouteDetails);
170
+ return newRouteDetails;
171
+ };
172
+ var subscribeToRouteStatus = (props) => {
173
+ let cancelled = false;
174
+ const unsubscribe = () => {
175
+ cancelled = true;
176
+ };
177
+ executeAndSubscribeToRouteStatus({
178
+ ...props,
179
+ isCancelled: () => cancelled
180
+ });
181
+ return unsubscribe;
182
+ };
183
+ var executeAndSubscribeToRouteStatus = async ({
184
+ transactionDetails,
185
+ executeTransaction,
186
+ trackTxPollingOptions,
187
+ onTransactionTracked,
188
+ onTransactionCompleted,
189
+ routeDetails,
190
+ onRouteStatusUpdated,
191
+ options,
192
+ routeId,
193
+ isCancelled
194
+ }) => {
195
+ removeRoutesWithFinalStatus();
196
+ routeId ??= routeDetails?.id;
197
+ const currentRouteDetails = routeDetailsMap.get(routeId ?? "");
198
+ transactionDetails ??= routeDetails?.transactionDetails ?? currentRouteDetails?.transactionDetails ?? [];
199
+ if (routeDetails && isFinalRouteStatus(routeDetails)) {
200
+ return;
201
+ }
202
+ for (const [transactionIndex, transaction] of transactionDetails.entries()) {
203
+ if (executeTransaction && !transaction.txHash) {
204
+ let { txHash, explorerLink } = await executeTransaction?.(transactionIndex);
205
+ transaction.txHash = txHash;
206
+ if (!explorerLink) {
207
+ const trackResponse = await chunkLUVMRHAJ_cjs.trackTransaction({
208
+ chainId: transaction.chainId,
209
+ txHash: transaction.txHash,
210
+ ...trackTxPollingOptions
211
+ });
212
+ explorerLink = trackResponse.explorerLink;
213
+ }
214
+ transaction.explorerLink = explorerLink;
215
+ await onTransactionTracked?.({ txHash: transaction.txHash, chainId: transaction.chainId, explorerLink });
216
+ }
217
+ if (transaction.txHash === void 0) {
218
+ updateRouteDetails({
219
+ routeId,
220
+ routeDetails,
221
+ transactionDetails,
222
+ options: {
223
+ onRouteStatusUpdated,
224
+ ...options
225
+ }
226
+ });
227
+ return;
228
+ }
229
+ while (!isFinalState(transaction)) {
230
+ if (isCancelled?.()) {
231
+ console.info(`Polling cancelled for route ${routeId}`);
232
+ return;
233
+ }
234
+ try {
235
+ const statusResponse = await chunkQPM7H2YL_cjs.transactionStatus({
236
+ chainId: transaction.chainId,
237
+ txHash: transaction.txHash
238
+ });
239
+ transaction.statusResponse = statusResponse;
240
+ updateRouteDetails({
241
+ routeId,
242
+ routeDetails,
243
+ transactionDetails,
244
+ options: {
245
+ onRouteStatusUpdated,
246
+ ...options
247
+ }
248
+ });
249
+ if (isFinalState(transaction)) {
250
+ onTransactionCompleted?.({
251
+ chainId: transaction.chainId,
252
+ txHash: transaction.txHash,
253
+ status: statusResponse
254
+ });
255
+ break;
256
+ }
257
+ } catch (error) {
258
+ console.error(error);
259
+ } finally {
260
+ await chunkERGJBZUC_cjs.wait(1e3);
261
+ }
262
+ }
263
+ }
264
+ };
265
+ var updateRouteDetails = ({
266
+ transactionDetails,
267
+ routeDetails,
268
+ options,
269
+ status,
270
+ routeId
271
+ }) => {
272
+ routeId ??= routeDetails?.id ?? "";
273
+ let currentRouteDetails = routeDetails ?? routeDetailsMap.get(routeId);
274
+ if (!routeId && currentRouteDetails == void 0) {
275
+ currentRouteDetails = initializeNewRouteDetails(options);
276
+ routeId = currentRouteDetails?.id;
277
+ }
278
+ if (currentRouteDetails === void 0) {
279
+ throw new Error("No route details found");
280
+ }
281
+ transactionDetails ??= currentRouteDetails?.transactionDetails ?? [];
282
+ const txsRequired = currentRouteDetails?.txsRequired ?? options?.route?.txsRequired ?? 1;
283
+ if (currentRouteDetails?.status === "signing" && status === "pending") {
284
+ currentRouteDetails.txsSigned += 1;
285
+ }
286
+ const transferEvents = routeDetails?.transferEvents ?? getTransferEventsFromTxStatusResponse(transactionDetails.map((tx) => tx.statusResponse).filter((status2) => status2 !== void 0));
287
+ const allExpectedTxsStarted = transactionDetails.every(
288
+ (tx) => tx.txHash || tx.status === void 0
289
+ );
290
+ const allKnownDetailsHaveFinalStatus = transactionDetails.every(
291
+ (transaction) => isFinalState(transaction)
292
+ );
293
+ const isAllSettled = allExpectedTxsStarted && allKnownDetailsHaveFinalStatus;
294
+ const someTxSucceeded = transactionDetails.some((tx) => isSuccessState(tx));
295
+ const someTxFailed = transactionDetails.some((tx) => !isSuccessState(tx));
296
+ const getRouteStatus = () => {
297
+ if (status) return status;
298
+ if (someTxSucceeded && !allExpectedTxsStarted) return "incomplete";
299
+ if (isAllSettled) {
300
+ if (!someTxFailed) {
301
+ return "completed";
302
+ } else if (someTxSucceeded && someTxFailed) {
303
+ return "incomplete";
304
+ } else if (someTxFailed) {
305
+ return "failed";
306
+ }
307
+ }
308
+ return currentRouteDetails?.status;
309
+ };
310
+ const transferAssetRelease = transactionDetails?.findLast((i) => i.statusResponse?.transferAssetRelease)?.statusResponse?.transferAssetRelease;
311
+ const senderAddress = options?.userAddresses?.at(0);
312
+ const receiverAddress = options?.userAddresses?.at(-1);
313
+ const newRouteDetails = {
314
+ id: routeId,
315
+ timestamp: currentRouteDetails.timestamp,
316
+ status: getRouteStatus(),
317
+ route: getSimpleRoute(currentRouteDetails?.route ?? options?.route),
318
+ txsRequired,
319
+ transactionDetails,
320
+ transferEvents,
321
+ transferAssetRelease,
322
+ senderAddress: currentRouteDetails?.senderAddress ?? senderAddress?.address ?? "",
323
+ receiverAddress: currentRouteDetails?.receiverAddress ?? receiverAddress?.address ?? "",
324
+ txsSigned: currentRouteDetails?.txsSigned
325
+ };
326
+ const newRouteStatus = getRouteDetailsWithSimpleTransactionDetailsStatus(newRouteDetails);
327
+ const previousRouteStatus = getRouteDetailsWithSimpleTransactionDetailsStatus(currentRouteDetails);
328
+ if (options?.onRouteStatusUpdated && JSON.stringify(newRouteStatus) !== JSON.stringify(previousRouteStatus)) {
329
+ options?.onRouteStatusUpdated?.(newRouteStatus);
330
+ }
331
+ if (routeId) {
332
+ routeDetailsMap.set(routeId, newRouteDetails);
333
+ }
334
+ return newRouteDetails;
335
+ };
336
+ var getSimpleRoute = (route) => {
337
+ return {
338
+ amountIn: route?.amountIn,
339
+ amountOut: route?.amountOut,
340
+ sourceAssetDenom: route?.sourceAssetDenom,
341
+ sourceAssetChainId: route?.sourceAssetChainId,
342
+ destAssetDenom: route?.destAssetDenom,
343
+ destAssetChainId: route?.destAssetChainId,
344
+ estimatedRouteDurationSeconds: route?.estimatedRouteDurationSeconds
345
+ };
346
+ };
347
+ var getRouteDetailsWithSimpleTransactionDetailsStatus = (routeDetails) => {
348
+ return {
349
+ ...routeDetails,
350
+ transactionDetails: routeDetails.transactionDetails.map((txDetails) => {
351
+ const { statusResponse, ...rest } = txDetails;
352
+ return {
353
+ ...rest,
354
+ status: txDetails?.status ?? getTransactionStatus(txDetails.statusResponse?.state)
355
+ };
356
+ })
357
+ };
358
+ };
359
+ var removeRoutesWithFinalStatus = () => {
360
+ routeDetailsMap.forEach((routeDetails, routeId) => {
361
+ if (routeDetails.status === "completed" || routeDetails.status === "failed" || routeDetails.status === "incomplete") {
362
+ routeDetailsMap.delete(routeId);
363
+ }
364
+ });
365
+ };
366
+
367
+ exports.executeAndSubscribeToRouteStatus = executeAndSubscribeToRouteStatus;
368
+ exports.getTransactionStatus = getTransactionStatus;
369
+ exports.subscribeToRouteStatus = subscribeToRouteStatus;
370
+ exports.updateRouteDetails = updateRouteDetails;
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
 
3
- var chunkQSISUSYP_cjs = require('./chunk-QSISUSYP.cjs');
4
- var chunkHKQ5VION_cjs = require('./chunk-HKQ5VION.cjs');
3
+ var chunkN4UW74AG_cjs = require('./chunk-N4UW74AG.cjs');
4
+ var chunkERGJBZUC_cjs = require('./chunk-ERGJBZUC.cjs');
5
5
 
6
6
  // src/api/postAssetsFromSource.ts
7
- var assetsFromSource = chunkHKQ5VION_cjs.api({
7
+ var assetsFromSource = chunkERGJBZUC_cjs.api({
8
8
  methodName: "assetsFromSource",
9
9
  method: "post",
10
10
  path: "v2/fungible/assets_from_source",
11
11
  transformResponse(response) {
12
- return chunkQSISUSYP_cjs.transformAssetsMap(response.destAssets);
12
+ return chunkN4UW74AG_cjs.transformAssetsMap(response.destAssets);
13
13
  }
14
14
  });
15
15
 
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkHKQ5VION_cjs = require('./chunk-HKQ5VION.cjs');
3
+ var chunkERGJBZUC_cjs = require('./chunk-ERGJBZUC.cjs');
4
4
 
5
5
  // src/api/getBridges.ts
6
- var bridges = chunkHKQ5VION_cjs.api({
6
+ var bridges = chunkERGJBZUC_cjs.api({
7
7
  methodName: "bridges",
8
8
  path: "v2/info/bridges",
9
9
  transformResponse: (response) => response.bridges