@piprail/sdk 2.15.0 → 2.15.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.
@@ -12,7 +12,7 @@ var _chunkCQREG5LEcjs = require('./chunk-CQREG5LE.cjs');
12
12
 
13
13
 
14
14
 
15
- var _chunk3FR22M3Ocjs = require('./chunk-3FR22M3O.cjs');
15
+ var _chunkQONQSZHJcjs = require('./chunk-QONQSZHJ.cjs');
16
16
 
17
17
  // src/drivers/stellar/index.ts
18
18
  var _stellarsdk = require('@stellar/stellar-sdk');
@@ -98,30 +98,30 @@ function mapSubmitError(err) {
98
98
  const seen = codes.join(", ");
99
99
  const has = (re) => codes.some((c) => re.test(c));
100
100
  if (has(/op_no_destination/i)) {
101
- return new (0, _chunk3FR22M3Ocjs.RecipientNotReadyError)(
101
+ return new (0, _chunkQONQSZHJcjs.RecipientNotReadyError)(
102
102
  `Stellar destination account doesn't exist yet \u2014 create it with \u22651 XLM (the base reserve) before it can receive. (Stellar: ${seen})`,
103
103
  { cause: err }
104
104
  );
105
105
  }
106
106
  if (has(/op_(no_trust|line_full|not_authorized)/i) && !has(/src_no_trust/i)) {
107
- return new (0, _chunk3FR22M3Ocjs.RecipientNotReadyError)(
107
+ return new (0, _chunkQONQSZHJcjs.RecipientNotReadyError)(
108
108
  `Stellar destination can't hold this asset \u2014 it needs a trustline for it (and to be authorized) before it can receive. (Stellar: ${seen})`,
109
109
  { cause: err }
110
110
  );
111
111
  }
112
112
  if (has(/underfunded|insufficient|low_reserve|src_no_trust/i)) {
113
- return new (0, _chunk3FR22M3Ocjs.InsufficientFundsError)(
113
+ return new (0, _chunkQONQSZHJcjs.InsufficientFundsError)(
114
114
  `Stellar payment failed: the sender can't cover it \u2014 balance, base reserve, or no trustline to send this asset. (Stellar: ${seen})`,
115
115
  { cause: err }
116
116
  );
117
117
  }
118
118
  if (isAccountNotFound(err)) {
119
- return new (0, _chunk3FR22M3Ocjs.InsufficientFundsError)(
119
+ return new (0, _chunkQONQSZHJcjs.InsufficientFundsError)(
120
120
  "Stellar source account not found on-chain \u2014 fund the sender (\u2265 base reserve) before it can pay.",
121
121
  { cause: err }
122
122
  );
123
123
  }
124
- return _nullishCoalesce(_chunk3FR22M3Ocjs.toInsufficientFundsError.call(void 0, err), () => ( err));
124
+ return _nullishCoalesce(_chunkQONQSZHJcjs.toInsufficientFundsError.call(void 0, err), () => ( err));
125
125
  }
126
126
  function isAccountNotFound(err) {
127
127
  const e = err;
@@ -218,7 +218,7 @@ function assetMatches(p, want) {
218
218
  }
219
219
  function parseAmount(amount, decimals) {
220
220
  try {
221
- return _chunk3FR22M3Ocjs.parseUnits.call(void 0, amount, decimals);
221
+ return _chunkQONQSZHJcjs.parseUnits.call(void 0, amount, decimals);
222
222
  } catch (e4) {
223
223
  return 0n;
224
224
  }
@@ -242,13 +242,13 @@ function rpcFailed(nonce) {
242
242
 
243
243
  function assertStellarWallet(wallet, network) {
244
244
  if (typeof wallet !== "object" || wallet === null) {
245
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
245
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
246
246
  `chain ${network} is Stellar; wallet must be { key } (S\u2026 seed) or { keypair }.`
247
247
  );
248
248
  }
249
- _chunk3FR22M3Ocjs.assertNoLegacyWalletKey.call(void 0, wallet, "Stellar");
249
+ _chunkQONQSZHJcjs.assertNoLegacyWalletKey.call(void 0, wallet, "Stellar");
250
250
  if (!("key" in wallet) && !("keypair" in wallet)) {
251
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
251
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
252
252
  `chain ${network} is Stellar; wallet must be { key } (S\u2026 seed) or { keypair }.`
253
253
  );
254
254
  }
@@ -258,11 +258,11 @@ function resolveStellarWallet(config) {
258
258
  if (config.keypair) return config.keypair;
259
259
  if (config.key) {
260
260
  if (!_stellarsdk.StrKey.isValidEd25519SecretSeed(config.key)) {
261
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)("Stellar wallet { key } is not a valid S\u2026 secret seed.");
261
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)("Stellar wallet { key } is not a valid S\u2026 secret seed.");
262
262
  }
263
263
  return _stellarsdk.Keypair.fromSecret(config.key);
264
264
  }
265
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)("Stellar wallet needs { key } (S\u2026 seed) or { keypair }.");
265
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)("Stellar wallet needs { key } (S\u2026 seed) or { keypair }.");
266
266
  }
267
267
 
268
268
  // src/drivers/stellar/index.ts
@@ -317,7 +317,7 @@ function makeStellarNetwork(preset, rpcUrl) {
317
317
  const info = preset.tokens[token.toUpperCase()];
318
318
  if (!info) {
319
319
  const known = Object.keys(preset.tokens).join(", ") || "(none built in)";
320
- throw new (0, _chunk3FR22M3Ocjs.UnknownTokenError)(
320
+ throw new (0, _chunkQONQSZHJcjs.UnknownTokenError)(
321
321
  `token "${token}" isn't built in for Stellar (known: ${known}). Pass { issuer, code, decimals } for a custom asset, or use 'native'.`
322
322
  );
323
323
  }
@@ -327,10 +327,10 @@ function makeStellarNetwork(preset, rpcUrl) {
327
327
  symbol: info.symbol
328
328
  };
329
329
  }
330
- _chunk3FR22M3Ocjs.rejectForeignToken.call(void 0, token, "stellar", network);
330
+ _chunkQONQSZHJcjs.rejectForeignToken.call(void 0, token, "stellar", network);
331
331
  const t = token;
332
332
  if (!t.issuer || !t.code || typeof t.decimals !== "number") {
333
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
333
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
334
334
  `chain ${network} is Stellar; a custom token must be { issuer, code, decimals }.`
335
335
  );
336
336
  }
@@ -351,12 +351,12 @@ function makeStellarNetwork(preset, rpcUrl) {
351
351
  },
352
352
  assertValidPayTo(payTo) {
353
353
  if (payTo.startsWith("0x")) {
354
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
354
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
355
355
  `chain ${network} is Stellar, but payTo "${payTo}" looks like an EVM address.`
356
356
  );
357
357
  }
358
358
  if (!_stellarsdk.StrKey.isValidEd25519PublicKey(payTo)) {
359
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
359
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
360
360
  `chain ${network} is Stellar, but payTo "${payTo}" is not a valid Stellar account (G\u2026).`
361
361
  );
362
362
  }
@@ -377,10 +377,10 @@ function makeStellarNetwork(preset, rpcUrl) {
377
377
  await _chunkCQREG5LEcjs.delay.call(void 0, 1500);
378
378
  }
379
379
  }
380
- throw new (0, _chunk3FR22M3Ocjs.ConfirmationTimeoutError)(`Stellar tx ${ref} not visible on Horizon in time.`);
380
+ throw new (0, _chunkQONQSZHJcjs.ConfirmationTimeoutError)(`Stellar tx ${ref} not visible on Horizon in time.`);
381
381
  },
382
382
  async estimateCost() {
383
- return _chunk3FR22M3Ocjs.nativeCost.call(void 0, {
383
+ return _chunkQONQSZHJcjs.nativeCost.call(void 0, {
384
384
  symbol: XLM_SYMBOL,
385
385
  decimals: STELLAR_DECIMALS,
386
386
  fee: 100n,
@@ -404,7 +404,7 @@ function makeStellarNetwork(preset, rpcUrl) {
404
404
  }
405
405
  const toBase = (s) => {
406
406
  try {
407
- return s != null ? _chunk3FR22M3Ocjs.parseUnits.call(void 0, s, STELLAR_DECIMALS) : 0n;
407
+ return s != null ? _chunkQONQSZHJcjs.parseUnits.call(void 0, s, STELLAR_DECIMALS) : 0n;
408
408
  } catch (e7) {
409
409
  return 0n;
410
410
  }
@@ -12,7 +12,7 @@ import {
12
12
  parseUnits,
13
13
  rejectForeignToken,
14
14
  toInsufficientFundsError
15
- } from "./chunk-3ZWM3DKM.js";
15
+ } from "./chunk-QU25LSVS.js";
16
16
 
17
17
  // src/drivers/stellar/index.ts
18
18
  import { Horizon, StrKey as StrKey2 } from "@stellar/stellar-sdk";
@@ -7,7 +7,7 @@ import {
7
7
  nativeCost,
8
8
  rejectForeignToken,
9
9
  toInsufficientFundsError
10
- } from "./chunk-3ZWM3DKM.js";
10
+ } from "./chunk-QU25LSVS.js";
11
11
 
12
12
  // src/drivers/sui/index.ts
13
13
  import { SuiJsonRpcClient } from "@mysten/sui/jsonRpc";
@@ -19,7 +19,11 @@ var SUI_SYMBOL = "SUI";
19
19
  var SUI_NATIVE_COINTYPE = "0x2::sui::SUI";
20
20
  var SUI_MAINNET = {
21
21
  caip2: "sui:mainnet",
22
- defaultRpc: "https://fullnode.mainnet.sui.io:443",
22
+ // Third-party JSON-RPC (the official fullnode no longer serves it — see SuiPreset.defaultRpc).
23
+ // publicnode verified 2026-08-28 for suix_getBalance / suix_getCoinMetadata /
24
+ // suix_getOwnedObjects / sui_getTransactionBlock. Alternates that also passed, if this one
25
+ // degrades: https://rpc-mainnet.suiscan.xyz · https://mainnet.suiet.app
26
+ defaultRpc: "https://sui-rpc.publicnode.com",
23
27
  tokens: {
24
28
  // Circle USDC — coin type + 6 decimals verified live on mainnet
25
29
  // (suix_getCoinMetadata) before shipping. No native USDT on Sui.
@@ -7,7 +7,7 @@
7
7
 
8
8
 
9
9
 
10
- var _chunk3FR22M3Ocjs = require('./chunk-3FR22M3O.cjs');
10
+ var _chunkQONQSZHJcjs = require('./chunk-QONQSZHJ.cjs');
11
11
 
12
12
  // src/drivers/sui/index.ts
13
13
  var _jsonRpc = require('@mysten/sui/jsonRpc');
@@ -19,7 +19,11 @@ var SUI_SYMBOL = "SUI";
19
19
  var SUI_NATIVE_COINTYPE = "0x2::sui::SUI";
20
20
  var SUI_MAINNET = {
21
21
  caip2: "sui:mainnet",
22
- defaultRpc: "https://fullnode.mainnet.sui.io:443",
22
+ // Third-party JSON-RPC (the official fullnode no longer serves it — see SuiPreset.defaultRpc).
23
+ // publicnode verified 2026-08-28 for suix_getBalance / suix_getCoinMetadata /
24
+ // suix_getOwnedObjects / sui_getTransactionBlock. Alternates that also passed, if this one
25
+ // degrades: https://rpc-mainnet.suiscan.xyz · https://mainnet.suiet.app
26
+ defaultRpc: "https://sui-rpc.publicnode.com",
23
27
  tokens: {
24
28
  // Circle USDC — coin type + 6 decimals verified live on mainnet
25
29
  // (suix_getCoinMetadata) before shipping. No native USDT on Sui.
@@ -57,7 +61,7 @@ async function paySui(params) {
57
61
  cursor = page.hasNextPage ? page.nextCursor : null;
58
62
  } while (gathered < amount && cursor);
59
63
  if (!ids.length) {
60
- throw new (0, _chunk3FR22M3Ocjs.InsufficientFundsError)(
64
+ throw new (0, _chunkQONQSZHJcjs.InsufficientFundsError)(
61
65
  `Sui wallet holds no ${accept.asset} coin objects to pay from.`
62
66
  );
63
67
  }
@@ -75,14 +79,14 @@ async function paySui(params) {
75
79
  });
76
80
  return res.digest;
77
81
  } catch (err) {
78
- if (err instanceof _chunk3FR22M3Ocjs.InsufficientFundsError) throw err;
82
+ if (err instanceof _chunkQONQSZHJcjs.InsufficientFundsError) throw err;
79
83
  if (isSuiAffordability(err)) {
80
- throw new (0, _chunk3FR22M3Ocjs.InsufficientFundsError)(
84
+ throw new (0, _chunkQONQSZHJcjs.InsufficientFundsError)(
81
85
  err instanceof Error ? err.message : "Insufficient SUI/coin balance for the payment.",
82
86
  { cause: err }
83
87
  );
84
88
  }
85
- throw _nullishCoalesce(_chunk3FR22M3Ocjs.toInsufficientFundsError.call(void 0, err), () => ( err));
89
+ throw _nullishCoalesce(_chunkQONQSZHJcjs.toInsufficientFundsError.call(void 0, err), () => ( err));
86
90
  }
87
91
  }
88
92
  function isSuiAffordability(err) {
@@ -170,13 +174,13 @@ function normalizeSuiAddress(value) {
170
174
  var _ed25519 = require('@mysten/sui/keypairs/ed25519');
171
175
  function assertSuiWallet(wallet, network) {
172
176
  if (typeof wallet !== "object" || wallet === null) {
173
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
177
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
174
178
  `chain ${network} is Sui; wallet must be { key } (suiprivkey1\u2026 ) or { keypair }.`
175
179
  );
176
180
  }
177
- _chunk3FR22M3Ocjs.assertNoLegacyWalletKey.call(void 0, wallet, "Sui");
181
+ _chunkQONQSZHJcjs.assertNoLegacyWalletKey.call(void 0, wallet, "Sui");
178
182
  if (!("key" in wallet) && !("keypair" in wallet)) {
179
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
183
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
180
184
  `chain ${network} is Sui; wallet must be { key } (suiprivkey1\u2026) or { keypair }.`
181
185
  );
182
186
  }
@@ -188,13 +192,13 @@ function resolveSuiKeypair(config) {
188
192
  try {
189
193
  return _ed25519.Ed25519Keypair.fromSecretKey(config.key);
190
194
  } catch (cause) {
191
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
195
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
192
196
  "Sui wallet { key } is not a valid suiprivkey1\u2026 secret (or 32-byte key).",
193
197
  { cause }
194
198
  );
195
199
  }
196
200
  }
197
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)("Sui wallet needs { key } (suiprivkey1\u2026) or { keypair }.");
201
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)("Sui wallet needs { key } (suiprivkey1\u2026) or { keypair }.");
198
202
  }
199
203
 
200
204
  // src/drivers/sui/index.ts
@@ -246,16 +250,16 @@ function makeSuiNetwork(preset, rpcUrl) {
246
250
  const info = preset.tokens[token.toUpperCase()];
247
251
  if (!info) {
248
252
  const known = Object.keys(preset.tokens).join(", ") || "(none built in)";
249
- throw new (0, _chunk3FR22M3Ocjs.UnknownTokenError)(
253
+ throw new (0, _chunkQONQSZHJcjs.UnknownTokenError)(
250
254
  `token "${token}" isn't built in for Sui (known: ${known}). Note: no native USDT on Sui. Pass { coinType, decimals } for a custom coin, or use 'native'.`
251
255
  );
252
256
  }
253
257
  return { asset: info.coinType, decimals: info.decimals, symbol: info.symbol };
254
258
  }
255
- _chunk3FR22M3Ocjs.rejectForeignToken.call(void 0, token, "sui", network);
259
+ _chunkQONQSZHJcjs.rejectForeignToken.call(void 0, token, "sui", network);
256
260
  const t = token;
257
261
  if (!t.coinType || typeof t.decimals !== "number") {
258
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
262
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
259
263
  `chain ${network} is Sui; a custom token must be { coinType, decimals }.`
260
264
  );
261
265
  }
@@ -274,7 +278,7 @@ function makeSuiNetwork(preset, rpcUrl) {
274
278
  },
275
279
  assertValidPayTo(payTo) {
276
280
  if (!_utils.isValidSuiAddress.call(void 0, payTo)) {
277
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
281
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
278
282
  `chain ${network} is Sui, but payTo "${payTo}" is not a valid Sui address (0x + 32 bytes).`
279
283
  );
280
284
  }
@@ -291,11 +295,11 @@ function makeSuiNetwork(preset, rpcUrl) {
291
295
  const tx = await client.waitForTransaction({ digest: ref, options: { showEffects: true } });
292
296
  return { height: String(_nullishCoalesce(tx.checkpoint, () => ( "0"))) };
293
297
  } catch (err) {
294
- throw new (0, _chunk3FR22M3Ocjs.ConfirmationTimeoutError)(`Sui tx ${ref} did not finalize in time.`, { cause: err });
298
+ throw new (0, _chunkQONQSZHJcjs.ConfirmationTimeoutError)(`Sui tx ${ref} did not finalize in time.`, { cause: err });
295
299
  }
296
300
  },
297
301
  async estimateCost() {
298
- return _chunk3FR22M3Ocjs.nativeCost.call(void 0, {
302
+ return _chunkQONQSZHJcjs.nativeCost.call(void 0, {
299
303
  symbol: SUI_SYMBOL,
300
304
  decimals: SUI_DECIMALS,
301
305
  fee: 3000000n,
@@ -9,7 +9,7 @@ var _chunkCQREG5LEcjs = require('./chunk-CQREG5LE.cjs');
9
9
 
10
10
 
11
11
 
12
- var _chunk3FR22M3Ocjs = require('./chunk-3FR22M3O.cjs');
12
+ var _chunkQONQSZHJcjs = require('./chunk-QONQSZHJ.cjs');
13
13
 
14
14
  // src/drivers/ton/index.ts
15
15
  var _core = require('@ton/core');
@@ -76,7 +76,7 @@ async function waitForSeqno(opened, from, { tries = 30, intervalMs = 2e3 } = {})
76
76
  }
77
77
  if (current > from) return;
78
78
  }
79
- throw new (0, _chunk3FR22M3Ocjs.ConfirmationTimeoutError)(
79
+ throw new (0, _chunkQONQSZHJcjs.ConfirmationTimeoutError)(
80
80
  `TON wallet seqno did not advance past ${from} \u2014 the payment may not have been accepted.`
81
81
  );
82
82
  }
@@ -207,13 +207,13 @@ var _crypto = require('@ton/crypto');
207
207
 
208
208
  function assertTonWallet(wallet, network) {
209
209
  if (typeof wallet !== "object" || wallet === null) {
210
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
210
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
211
211
  `chain ${network} is TON; wallet must be { key } (24-word mnemonic) or { keyPair }.`
212
212
  );
213
213
  }
214
- _chunk3FR22M3Ocjs.assertNoLegacyWalletKey.call(void 0, wallet, "TON");
214
+ _chunkQONQSZHJcjs.assertNoLegacyWalletKey.call(void 0, wallet, "TON");
215
215
  if (!("key" in wallet) && !("keyPair" in wallet)) {
216
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
216
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
217
217
  `chain ${network} is TON; wallet must be { key } (24-word mnemonic) or { keyPair }.`
218
218
  );
219
219
  }
@@ -224,13 +224,13 @@ async function resolveTonWallet(config) {
224
224
  let keyPair;
225
225
  if (config.key) {
226
226
  if (typeof config.key !== "string" && !Array.isArray(config.key)) {
227
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
227
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
228
228
  "chain is TON; the wallet { key } must be a 24-word mnemonic (a string or string[])."
229
229
  );
230
230
  }
231
231
  const words = Array.isArray(config.key) ? config.key : config.key.trim().split(/\s+/);
232
232
  if (!await _crypto.mnemonicValidate.call(void 0, words)) {
233
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
233
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
234
234
  "chain is TON; the wallet { key } is not a valid TON mnemonic (expected 24 words from the TON/BIP-39 wordlist)."
235
235
  );
236
236
  }
@@ -238,7 +238,7 @@ async function resolveTonWallet(config) {
238
238
  } else if (config.keyPair) {
239
239
  keyPair = config.keyPair;
240
240
  } else {
241
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)("TON wallet needs { key } (24-word mnemonic) or { keyPair }.");
241
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)("TON wallet needs { key } (24-word mnemonic) or { keyPair }.");
242
242
  }
243
243
  const contract = version === "v5r1" ? _ton.WalletContractV5R1.create({ workchain: 0, publicKey: keyPair.publicKey }) : _ton.WalletContractV4.create({ workchain: 0, publicKey: keyPair.publicKey });
244
244
  return { keyPair, contract };
@@ -287,15 +287,15 @@ function makeTonNetwork(preset, rpcUrl) {
287
287
  const info = preset.tokens[token.toUpperCase()];
288
288
  if (!info) {
289
289
  const known = Object.keys(preset.tokens).join(", ") || "(none built in)";
290
- throw new (0, _chunk3FR22M3Ocjs.UnknownTokenError)(
290
+ throw new (0, _chunkQONQSZHJcjs.UnknownTokenError)(
291
291
  `token "${token}" isn't built in for TON (known: ${known}). Note: native USDC doesn't exist on TON. Pass { master, decimals } for a custom jetton, or use 'native'.`
292
292
  );
293
293
  }
294
294
  return { asset: info.master, decimals: info.decimals, symbol: info.symbol };
295
295
  }
296
- _chunk3FR22M3Ocjs.rejectForeignToken.call(void 0, token, "ton", network);
296
+ _chunkQONQSZHJcjs.rejectForeignToken.call(void 0, token, "ton", network);
297
297
  if (!("master" in token)) {
298
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
298
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
299
299
  `chain ${network} is TON; a custom token must be { master, decimals }.`
300
300
  );
301
301
  }
@@ -314,14 +314,14 @@ function makeTonNetwork(preset, rpcUrl) {
314
314
  },
315
315
  assertValidPayTo(payTo) {
316
316
  if (payTo.startsWith("0x")) {
317
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
317
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
318
318
  `chain ${network} is TON, but payTo "${payTo}" looks like an EVM address.`
319
319
  );
320
320
  }
321
321
  try {
322
322
  _core.Address.parse(payTo);
323
323
  } catch (e6) {
324
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
324
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
325
325
  `chain ${network} is TON, but payTo "${payTo}" is not a valid TON address.`
326
326
  );
327
327
  }
@@ -337,7 +337,7 @@ function makeTonNetwork(preset, rpcUrl) {
337
337
  const watch = await watchAccountFor(accept);
338
338
  return encodeRef(watch, accept.extra.nonce);
339
339
  } catch (err) {
340
- throw _nullishCoalesce(_chunk3FR22M3Ocjs.toInsufficientFundsError.call(void 0, err), () => ( err));
340
+ throw _nullishCoalesce(_chunkQONQSZHJcjs.toInsufficientFundsError.call(void 0, err), () => ( err));
341
341
  }
342
342
  },
343
343
  async confirm(ref) {
@@ -356,12 +356,12 @@ function makeTonNetwork(preset, rpcUrl) {
356
356
  if (inc && inc.comment === nonce) return { height: tx.lt.toString() };
357
357
  }
358
358
  }
359
- throw new (0, _chunk3FR22M3Ocjs.ConfirmationTimeoutError)(`TON payment for nonce ${nonce} did not settle in time.`);
359
+ throw new (0, _chunkQONQSZHJcjs.ConfirmationTimeoutError)(`TON payment for nonce ${nonce} did not settle in time.`);
360
360
  },
361
361
  async estimateCost(accept) {
362
362
  const fee = accept.asset === "native" ? 10000000n : 50000000n;
363
363
  const detail = accept.asset === "native" ? `~0.01 ${TON_NATIVE_SYMBOL} network fee` : `~0.05 ${TON_NATIVE_SYMBOL} attached for the jetton transfer (leftover refunded)`;
364
- return _chunk3FR22M3Ocjs.nativeCost.call(void 0, { symbol: TON_NATIVE_SYMBOL, decimals: TON_DECIMALS, fee, basis: "heuristic", detail });
364
+ return _chunkQONQSZHJcjs.nativeCost.call(void 0, { symbol: TON_NATIVE_SYMBOL, decimals: TON_DECIMALS, fee, basis: "heuristic", detail });
365
365
  },
366
366
  async balanceOf(wallet, asset) {
367
367
  let owner;
@@ -9,7 +9,7 @@ import {
9
9
  nativeCost,
10
10
  rejectForeignToken,
11
11
  toInsufficientFundsError
12
- } from "./chunk-3ZWM3DKM.js";
12
+ } from "./chunk-QU25LSVS.js";
13
13
 
14
14
  // src/drivers/ton/index.ts
15
15
  import { Address as Address2 } from "@ton/core";
@@ -10,7 +10,7 @@ import {
10
10
  nativeCost,
11
11
  rejectForeignToken,
12
12
  toInsufficientFundsError
13
- } from "./chunk-3ZWM3DKM.js";
13
+ } from "./chunk-QU25LSVS.js";
14
14
 
15
15
  // src/drivers/tron/index.ts
16
16
  import { TronWeb } from "tronweb";
@@ -10,7 +10,7 @@ var _chunkCQREG5LEcjs = require('./chunk-CQREG5LE.cjs');
10
10
 
11
11
 
12
12
 
13
- var _chunk3FR22M3Ocjs = require('./chunk-3FR22M3O.cjs');
13
+ var _chunkQONQSZHJcjs = require('./chunk-QONQSZHJ.cjs');
14
14
 
15
15
  // src/drivers/tron/index.ts
16
16
  var _tronweb = require('tronweb');
@@ -62,7 +62,7 @@ async function payTron(params) {
62
62
  return _nullishCoalesce(_nullishCoalesce(broadcast.txid, () => ( _optionalChain([broadcast, 'access', _7 => _7.transaction, 'optionalAccess', _8 => _8.txID]))), () => ( signed.txID));
63
63
  }
64
64
  if (isTronAffordability(broadcast.code, broadcast.message)) {
65
- throw new (0, _chunk3FR22M3Ocjs.InsufficientFundsError)(
65
+ throw new (0, _chunkQONQSZHJcjs.InsufficientFundsError)(
66
66
  `Tron payment rejected (${_nullishCoalesce(broadcast.code, () => ( "broadcast"))}): not enough TRX for energy/bandwidth, or insufficient token balance.`
67
67
  );
68
68
  }
@@ -70,15 +70,15 @@ async function payTron(params) {
70
70
  `Tron broadcast failed: ${_nullishCoalesce(broadcast.code, () => ( ""))} ${decodeMaybeHex(broadcast.message)}`.trim()
71
71
  );
72
72
  } catch (err) {
73
- if (err instanceof _chunk3FR22M3Ocjs.InsufficientFundsError) throw err;
74
- throw _nullishCoalesce(_chunk3FR22M3Ocjs.toInsufficientFundsError.call(void 0, err), () => ( err));
73
+ if (err instanceof _chunkQONQSZHJcjs.InsufficientFundsError) throw err;
74
+ throw _nullishCoalesce(_chunkQONQSZHJcjs.toInsufficientFundsError.call(void 0, err), () => ( err));
75
75
  }
76
76
  }
77
77
  async function payTronNative(params) {
78
78
  const { client, from, privateKey, accept } = params;
79
79
  const sun = BigInt(accept.amount);
80
80
  if (sun > BigInt(Number.MAX_SAFE_INTEGER)) {
81
- throw new (0, _chunk3FR22M3Ocjs.InsufficientFundsError)(
81
+ throw new (0, _chunkQONQSZHJcjs.InsufficientFundsError)(
82
82
  `Tron native amount ${accept.amount} sun exceeds the safe-integer range tronweb.sendTrx accepts \u2014 price this resource in a smaller native amount or a TRC-20 token.`
83
83
  );
84
84
  }
@@ -90,7 +90,7 @@ async function payTronNative(params) {
90
90
  return _nullishCoalesce(_nullishCoalesce(broadcast.txid, () => ( _optionalChain([broadcast, 'access', _11 => _11.transaction, 'optionalAccess', _12 => _12.txID]))), () => ( signed.txID));
91
91
  }
92
92
  if (isTronAffordability(broadcast.code, broadcast.message)) {
93
- throw new (0, _chunk3FR22M3Ocjs.InsufficientFundsError)(
93
+ throw new (0, _chunkQONQSZHJcjs.InsufficientFundsError)(
94
94
  `Tron TRX payment rejected (${_nullishCoalesce(broadcast.code, () => ( "broadcast"))}): not enough TRX for the amount plus bandwidth (and the ~1 TRX account-creation fee if the recipient is new).`
95
95
  );
96
96
  }
@@ -98,8 +98,8 @@ async function payTronNative(params) {
98
98
  `Tron TRX broadcast failed: ${_nullishCoalesce(broadcast.code, () => ( ""))} ${decodeMaybeHex(broadcast.message)}`.trim()
99
99
  );
100
100
  } catch (err) {
101
- if (err instanceof _chunk3FR22M3Ocjs.InsufficientFundsError) throw err;
102
- throw _nullishCoalesce(_chunk3FR22M3Ocjs.toInsufficientFundsError.call(void 0, err), () => ( err));
101
+ if (err instanceof _chunkQONQSZHJcjs.InsufficientFundsError) throw err;
102
+ throw _nullishCoalesce(_chunkQONQSZHJcjs.toInsufficientFundsError.call(void 0, err), () => ( err));
103
103
  }
104
104
  }
105
105
  function decodeMaybeHex(message) {
@@ -273,13 +273,13 @@ function txNotFound(txid) {
273
273
  // src/drivers/tron/wallet.ts
274
274
  function assertTronWallet(wallet, network) {
275
275
  if (typeof wallet !== "object" || wallet === null) {
276
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
276
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
277
277
  `chain ${network} is Tron; wallet must be { key } (32-byte hex).`
278
278
  );
279
279
  }
280
- _chunk3FR22M3Ocjs.assertNoLegacyWalletKey.call(void 0, wallet, "Tron");
280
+ _chunkQONQSZHJcjs.assertNoLegacyWalletKey.call(void 0, wallet, "Tron");
281
281
  if (!("key" in wallet)) {
282
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
282
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
283
283
  `chain ${network} is Tron; wallet must be { key } (32-byte hex).`
284
284
  );
285
285
  }
@@ -287,14 +287,14 @@ function assertTronWallet(wallet, network) {
287
287
  }
288
288
  function resolveTronPrivateKey(config) {
289
289
  if (!config.key) {
290
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)("Tron wallet needs { key } (32-byte hex).");
290
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)("Tron wallet needs { key } (32-byte hex).");
291
291
  }
292
292
  if (typeof config.key !== "string") {
293
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)("Tron wallet { key } must be a 32-byte hex string.");
293
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)("Tron wallet { key } must be a 32-byte hex string.");
294
294
  }
295
295
  const hex = config.key.replace(/^0x/i, "").toLowerCase();
296
296
  if (!/^[0-9a-f]{64}$/.test(hex)) {
297
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
297
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
298
298
  "Tron wallet { key } must be a 32-byte hex string (64 hex chars)."
299
299
  );
300
300
  }
@@ -344,21 +344,21 @@ function makeTronNetwork(preset, rpcUrl) {
344
344
  const info = preset.tokens[token.toUpperCase()];
345
345
  if (!info) {
346
346
  const known = Object.keys(preset.tokens).join(", ") || "(none built in)";
347
- throw new (0, _chunk3FR22M3Ocjs.UnknownTokenError)(
347
+ throw new (0, _chunkQONQSZHJcjs.UnknownTokenError)(
348
348
  `token "${token}" isn't built in for Tron (known: ${known}). Note: native USDC doesn't exist on Tron. Pass { address, decimals } for a custom TRC-20.`
349
349
  );
350
350
  }
351
351
  return { asset: info.address, decimals: info.decimals, symbol: info.symbol };
352
352
  }
353
- _chunk3FR22M3Ocjs.rejectForeignToken.call(void 0, token, "tron", network);
353
+ _chunkQONQSZHJcjs.rejectForeignToken.call(void 0, token, "tron", network);
354
354
  if (!("address" in token)) {
355
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
355
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
356
356
  `chain ${network} is Tron; a custom token must be { address, decimals } (Base58 T\u2026 contract).`
357
357
  );
358
358
  }
359
359
  const t = token;
360
360
  if (t.address.startsWith("0x") || !tronWeb.isAddress(t.address)) {
361
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
361
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
362
362
  `chain ${network} is Tron, but token address "${t.address}" is not a valid Tron contract (T\u2026).`
363
363
  );
364
364
  }
@@ -377,12 +377,12 @@ function makeTronNetwork(preset, rpcUrl) {
377
377
  },
378
378
  assertValidPayTo(payTo) {
379
379
  if (payTo.startsWith("0x")) {
380
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
380
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
381
381
  `chain ${network} is Tron, but payTo "${payTo}" looks like an EVM address.`
382
382
  );
383
383
  }
384
384
  if (!tronWeb.isAddress(payTo)) {
385
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)(
385
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)(
386
386
  `chain ${network} is Tron, but payTo "${payTo}" is not a valid Tron address (T\u2026).`
387
387
  );
388
388
  }
@@ -394,7 +394,7 @@ function makeTronNetwork(preset, rpcUrl) {
394
394
  const privateKey = resolveTronPrivateKey(wallet._native);
395
395
  const from = tronWeb.address.fromPrivateKey(privateKey);
396
396
  if (!from) {
397
- throw new (0, _chunk3FR22M3Ocjs.WrongFamilyError)("Tron wallet { key } could not derive an address.");
397
+ throw new (0, _chunkQONQSZHJcjs.WrongFamilyError)("Tron wallet { key } could not derive an address.");
398
398
  }
399
399
  if (accept.asset === "native") {
400
400
  return payTronNative({ client: tronWeb, from, privateKey, accept });
@@ -417,11 +417,11 @@ function makeTronNetwork(preset, rpcUrl) {
417
417
  }
418
418
  await _chunkCQREG5LEcjs.delay.call(void 0, 2500);
419
419
  }
420
- throw new (0, _chunk3FR22M3Ocjs.ConfirmationTimeoutError)(`Tron tx ${txid} did not solidify in time.`);
420
+ throw new (0, _chunkQONQSZHJcjs.ConfirmationTimeoutError)(`Tron tx ${txid} did not solidify in time.`);
421
421
  },
422
422
  async estimateCost(accept, opts) {
423
423
  if (accept.asset === "native") {
424
- return _chunk3FR22M3Ocjs.nativeCost.call(void 0, {
424
+ return _chunkQONQSZHJcjs.nativeCost.call(void 0, {
425
425
  symbol: "TRX",
426
426
  decimals: TRX_DECIMALS,
427
427
  fee: 1300000n,
@@ -445,7 +445,7 @@ function makeTronNetwork(preset, rpcUrl) {
445
445
  );
446
446
  const energy = BigInt(_nullishCoalesce(r.energy_used, () => ( 0)));
447
447
  if (energy > 0n) {
448
- return _chunk3FR22M3Ocjs.nativeCost.call(void 0, {
448
+ return _chunkQONQSZHJcjs.nativeCost.call(void 0, {
449
449
  symbol: "TRX",
450
450
  decimals: TRX_DECIMALS,
451
451
  fee: energy * ENERGY_PRICE + BANDWIDTH_SUN,
@@ -456,7 +456,7 @@ function makeTronNetwork(preset, rpcUrl) {
456
456
  } catch (e8) {
457
457
  }
458
458
  }
459
- return _chunk3FR22M3Ocjs.nativeCost.call(void 0, {
459
+ return _chunkQONQSZHJcjs.nativeCost.call(void 0, {
460
460
  symbol: "TRX",
461
461
  decimals: TRX_DECIMALS,
462
462
  fee: 30000n * ENERGY_PRICE + BANDWIDTH_SUN,
@@ -12,7 +12,7 @@ import {
12
12
  nativeCost,
13
13
  rejectForeignToken,
14
14
  toInsufficientFundsError
15
- } from "./chunk-3ZWM3DKM.js";
15
+ } from "./chunk-QU25LSVS.js";
16
16
 
17
17
  // src/drivers/xrpl/index.ts
18
18
  import { isValidClassicAddress } from "xrpl";