@arkade-os/sdk 0.5.0-rc.30 → 0.5.0-rc.32

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 (72) hide show
  1. package/README.md +2 -2
  2. package/dist/adapters/expo.cjs +5 -5
  3. package/dist/adapters/expo.d.cts +2 -2
  4. package/dist/adapters/expo.d.ts +2 -2
  5. package/dist/adapters/expo.js +3 -3
  6. package/dist/{asyncStorageTaskQueue-fkkUPrhz.d.cts → asyncStorageTaskQueue-Dh9He96-.d.cts} +1 -1
  7. package/dist/{asyncStorageTaskQueue-DAVf4Fyy.d.ts → asyncStorageTaskQueue-DreNZKuC.d.ts} +1 -1
  8. package/dist/{chunk-PY3YQNHP.js → chunk-5RW2ADEN.js} +3 -3
  9. package/dist/{chunk-PY3YQNHP.js.map → chunk-5RW2ADEN.js.map} +1 -1
  10. package/dist/{chunk-3SM7BMIE.cjs → chunk-H7DN4AJC.cjs} +505 -504
  11. package/dist/chunk-H7DN4AJC.cjs.map +1 -0
  12. package/dist/{chunk-4MCQZYH6.cjs → chunk-M4DM3N6F.cjs} +48 -48
  13. package/dist/{chunk-4MCQZYH6.cjs.map → chunk-M4DM3N6F.cjs.map} +1 -1
  14. package/dist/{chunk-ASKOHVGX.cjs → chunk-NMDISCGW.cjs} +3 -3
  15. package/dist/{chunk-ASKOHVGX.cjs.map → chunk-NMDISCGW.cjs.map} +1 -1
  16. package/dist/{chunk-XW72DWYO.js → chunk-NNIJTYK3.js} +11 -10
  17. package/dist/chunk-NNIJTYK3.js.map +1 -0
  18. package/dist/{chunk-6BTZ6KFI.cjs → chunk-S7PDYPH6.cjs} +10 -10
  19. package/dist/{chunk-6BTZ6KFI.cjs.map → chunk-S7PDYPH6.cjs.map} +1 -1
  20. package/dist/{chunk-ESEHYZAY.js → chunk-SRIRT5K3.js} +3 -3
  21. package/dist/{chunk-ESEHYZAY.js.map → chunk-SRIRT5K3.js.map} +1 -1
  22. package/dist/{chunk-DLHE4RCH.cjs → chunk-TO63QDQA.cjs} +16 -16
  23. package/dist/{chunk-DLHE4RCH.cjs.map → chunk-TO63QDQA.cjs.map} +1 -1
  24. package/dist/{chunk-G6ZPX2GL.js → chunk-UAIQ2ORI.js} +3 -3
  25. package/dist/{chunk-G6ZPX2GL.js.map → chunk-UAIQ2ORI.js.map} +1 -1
  26. package/dist/{chunk-AICUNREA.cjs → chunk-X2BWPGCY.cjs} +18 -18
  27. package/dist/{chunk-AICUNREA.cjs.map → chunk-X2BWPGCY.cjs.map} +1 -1
  28. package/dist/{chunk-YML2N4SC.js → chunk-YO3QE7ZX.js} +4 -4
  29. package/dist/{chunk-YML2N4SC.js.map → chunk-YO3QE7ZX.js.map} +1 -1
  30. package/dist/{chunk-KK6GXY4L.js → chunk-ZN23HI7N.js} +4 -4
  31. package/dist/{chunk-KK6GXY4L.js.map → chunk-ZN23HI7N.js.map} +1 -1
  32. package/dist/contracts/handlers/index.cjs +9 -9
  33. package/dist/contracts/handlers/index.d.cts +3 -3
  34. package/dist/contracts/handlers/index.d.ts +3 -3
  35. package/dist/contracts/handlers/index.js +2 -2
  36. package/dist/{delegate-BYoNu3lf.d.cts → delegate-Bhip6Td7.d.cts} +1 -1
  37. package/dist/{delegate-DsqzUVId.d.ts → delegate-C2aNsS7T.d.ts} +1 -1
  38. package/dist/{index-DhP68WBD.d.cts → index-CKuHj3vn.d.cts} +3 -3
  39. package/dist/{index-DhP68WBD.d.ts → index-CKuHj3vn.d.ts} +3 -3
  40. package/dist/{index-CXNTURO_.d.cts → index-CSHjrzb7.d.cts} +2 -2
  41. package/dist/{index-pQr5y77P.d.ts → index-DHjrQRnG.d.ts} +2 -2
  42. package/dist/index.cjs +313 -313
  43. package/dist/index.d.cts +8 -8
  44. package/dist/index.d.ts +8 -8
  45. package/dist/index.js +4 -4
  46. package/dist/repositories/realm/index.cjs +35 -35
  47. package/dist/repositories/realm/index.d.cts +2 -2
  48. package/dist/repositories/realm/index.d.ts +2 -2
  49. package/dist/repositories/realm/index.js +5 -5
  50. package/dist/repositories/sqlite/index.cjs +33 -33
  51. package/dist/repositories/sqlite/index.d.cts +2 -2
  52. package/dist/repositories/sqlite/index.d.ts +2 -2
  53. package/dist/repositories/sqlite/index.js +5 -5
  54. package/dist/{taskRunner-DKtBy8Yo.d.ts → taskRunner-Co6W72XB.d.ts} +1 -1
  55. package/dist/{taskRunner-C8H3bSsk.d.cts → taskRunner-DZG6vkws.d.cts} +1 -1
  56. package/dist/wallet/expo/background.cjs +14 -14
  57. package/dist/wallet/expo/background.d.cts +3 -3
  58. package/dist/wallet/expo/background.d.ts +3 -3
  59. package/dist/wallet/expo/background.js +6 -6
  60. package/dist/wallet/expo/index.cjs +15 -15
  61. package/dist/wallet/expo/index.d.cts +4 -4
  62. package/dist/wallet/expo/index.d.ts +4 -4
  63. package/dist/wallet/expo/index.js +5 -5
  64. package/dist/{wallet-C0W8EOnA.d.ts → wallet-BiPYZ3X5.d.ts} +2 -2
  65. package/dist/{wallet-BmAHDzK3.d.cts → wallet-DBt_J26X.d.cts} +2 -2
  66. package/dist/worker/expo/index.cjs +9 -9
  67. package/dist/worker/expo/index.d.cts +4 -4
  68. package/dist/worker/expo/index.d.ts +4 -4
  69. package/dist/worker/expo/index.js +5 -5
  70. package/package.json +1 -1
  71. package/dist/chunk-3SM7BMIE.cjs.map +0 -1
  72. package/dist/chunk-XW72DWYO.js.map +0 -1
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var chunkAICUNREA_cjs = require('./chunk-AICUNREA.cjs');
4
- var chunk4MCQZYH6_cjs = require('./chunk-4MCQZYH6.cjs');
5
- var chunkASKOHVGX_cjs = require('./chunk-ASKOHVGX.cjs');
3
+ var chunkX2BWPGCY_cjs = require('./chunk-X2BWPGCY.cjs');
4
+ var chunkM4DM3N6F_cjs = require('./chunk-M4DM3N6F.cjs');
5
+ var chunkNMDISCGW_cjs = require('./chunk-NMDISCGW.cjs');
6
6
  var utils_js = require('@scure/btc-signer/utils.js');
7
7
  var btcSigner = require('@scure/btc-signer');
8
8
  var base = require('@scure/base');
@@ -187,7 +187,7 @@ var TreeSignerSession = class _TreeSignerSession {
187
187
  noncesByPubkey.set(base.hex.encode(myPublicKey.subarray(1)), myNonce);
188
188
  const tx = this.graph.find(txid);
189
189
  if (!tx) throw new Error(`missing tx for txid ${txid}`);
190
- const cosigners = chunkASKOHVGX_cjs.getArkPsbtFields(tx.root, 0, chunkASKOHVGX_cjs.CosignerPublicKey).map(
190
+ const cosigners = chunkNMDISCGW_cjs.getArkPsbtFields(tx.root, 0, chunkNMDISCGW_cjs.CosignerPublicKey).map(
191
191
  (c) => base.hex.encode(c.key.subarray(1))
192
192
  // xonly pubkey
193
193
  );
@@ -239,7 +239,7 @@ var TreeSignerSession = class _TreeSignerSession {
239
239
  if (!aggNonce) throw new Error("missing aggregate nonce");
240
240
  const prevoutAmounts = [];
241
241
  const prevoutScripts = [];
242
- const cosigners = chunkASKOHVGX_cjs.getArkPsbtFields(g.root, 0, chunkASKOHVGX_cjs.CosignerPublicKey).map((c) => c.key);
242
+ const cosigners = chunkNMDISCGW_cjs.getArkPsbtFields(g.root, 0, chunkNMDISCGW_cjs.CosignerPublicKey).map((c) => c.key);
243
243
  const { finalKey } = aggregateKeys(cosigners, true, {
244
244
  taprootTweak: this.scriptRoot
245
245
  });
@@ -322,7 +322,7 @@ var SingleKey = class _SingleKey {
322
322
  async sign(tx, inputIndexes) {
323
323
  const txCpy = tx.clone();
324
324
  if (!inputIndexes) {
325
- chunkASKOHVGX_cjs.assertAllowedSighashTypes(txCpy, ALLOWED_SIGHASH);
325
+ chunkNMDISCGW_cjs.assertAllowedSighashTypes(txCpy, ALLOWED_SIGHASH);
326
326
  try {
327
327
  if (!txCpy.sign(this.key, ALLOWED_SIGHASH)) {
328
328
  throw new Error("Failed to sign transaction");
@@ -422,7 +422,7 @@ var SeedIdentity = class _SeedIdentity {
422
422
  let network;
423
423
  if ("descriptor" in opts && typeof opts.descriptor === "string") {
424
424
  descriptor = opts.descriptor;
425
- network = chunk4MCQZYH6_cjs.isMainnetDescriptor(descriptor) ? descriptorsScure.networks.bitcoin : descriptorsScure.networks.testnet;
425
+ network = chunkM4DM3N6F_cjs.isMainnetDescriptor(descriptor) ? descriptorsScure.networks.bitcoin : descriptorsScure.networks.testnet;
426
426
  } else {
427
427
  network = opts.isMainnet ?? true ? descriptorsScure.networks.bitcoin : descriptorsScure.networks.testnet;
428
428
  descriptor = descriptorsScure.scriptExpressions.trBIP32({
@@ -499,7 +499,7 @@ var SeedIdentity = class _SeedIdentity {
499
499
  }
500
500
  /** Returns true when `descriptor` is derived from this identity's seed. */
501
501
  ownsDescriptor(descriptor) {
502
- return chunk4MCQZYH6_cjs.descriptorIsOurs(descriptor, this.descriptor, utils_js.pubSchnorr(this.derivedKey));
502
+ return chunkM4DM3N6F_cjs.descriptorIsOurs(descriptor, this.descriptor, utils_js.pubSchnorr(this.derivedKey));
503
503
  }
504
504
  /**
505
505
  * Signs each request with the key derived from its descriptor.
@@ -538,7 +538,7 @@ var SeedIdentity = class _SeedIdentity {
538
538
  }
539
539
  // ── internal helpers ─────────────────────────────────────────────
540
540
  derivePrivateKeyForDescriptor(descriptor) {
541
- const network = chunk4MCQZYH6_cjs.isMainnetDescriptor(descriptor) ? descriptorsScure.networks.bitcoin : descriptorsScure.networks.testnet;
541
+ const network = chunkM4DM3N6F_cjs.isMainnetDescriptor(descriptor) ? descriptorsScure.networks.bitcoin : descriptorsScure.networks.testnet;
542
542
  const expansion = descriptorsScure.expand({ descriptor, network });
543
543
  if (expansion.isRanged) {
544
544
  throw new Error(
@@ -563,7 +563,7 @@ var SeedIdentity = class _SeedIdentity {
563
563
  signTxWithKey(tx, key, inputIndexes) {
564
564
  const txCpy = tx.clone();
565
565
  if (!inputIndexes) {
566
- chunkASKOHVGX_cjs.assertAllowedSighashTypes(txCpy, ALLOWED_SIGHASH2);
566
+ chunkNMDISCGW_cjs.assertAllowedSighashTypes(txCpy, ALLOWED_SIGHASH2);
567
567
  try {
568
568
  if (!txCpy.sign(key, ALLOWED_SIGHASH2)) {
569
569
  throw new Error("Failed to sign transaction");
@@ -615,7 +615,7 @@ var ReadonlyDescriptorIdentity = class _ReadonlyDescriptorIdentity {
615
615
  /** Wildcard account-descriptor template (e.g. `tr([fp/86'/0'/0']xpub/0/*)`). */
616
616
  descriptor;
617
617
  constructor(descriptor) {
618
- const network = chunk4MCQZYH6_cjs.isMainnetDescriptor(descriptor) ? descriptorsScure.networks.bitcoin : descriptorsScure.networks.testnet;
618
+ const network = chunkM4DM3N6F_cjs.isMainnetDescriptor(descriptor) ? descriptorsScure.networks.bitcoin : descriptorsScure.networks.testnet;
619
619
  let expansion;
620
620
  try {
621
621
  expansion = descriptorsScure.expand({ descriptor, network, index: 0 });
@@ -650,7 +650,7 @@ var ReadonlyDescriptorIdentity = class _ReadonlyDescriptorIdentity {
650
650
  }
651
651
  /** Returns true when `descriptor` derives from this identity's xpub. */
652
652
  ownsDescriptor(descriptor) {
653
- return chunk4MCQZYH6_cjs.descriptorIsOurs(descriptor, this.descriptor, this.indexZero.pubkey);
653
+ return chunkM4DM3N6F_cjs.descriptorIsOurs(descriptor, this.descriptor, this.indexZero.pubkey);
654
654
  }
655
655
  };
656
656
  function serializeSeedOwnedSigningIdentity(identity) {
@@ -793,10 +793,10 @@ var DescriptorIdentity = class {
793
793
  this.base = base;
794
794
  }
795
795
  async xOnlyPublicKey() {
796
- return chunk4MCQZYH6_cjs.deriveDescriptorLeafPubKey(this.descriptor);
796
+ return chunkM4DM3N6F_cjs.deriveDescriptorLeafPubKey(this.descriptor);
797
797
  }
798
798
  async compressedPublicKey() {
799
- return chunk4MCQZYH6_cjs.deriveDescriptorLeafCompressedPubKey(this.descriptor);
799
+ return chunkM4DM3N6F_cjs.deriveDescriptorLeafCompressedPubKey(this.descriptor);
800
800
  }
801
801
  async sign(tx, inputIndexes) {
802
802
  const [signed] = await this.signer.signWithDescriptor([
@@ -856,8 +856,8 @@ var StaticDescriptorProvider = class _StaticDescriptorProvider {
856
856
  }
857
857
  isOurs(descriptor) {
858
858
  try {
859
- const normalized = chunk4MCQZYH6_cjs.normalizeToDescriptor(descriptor);
860
- const pubKey = chunk4MCQZYH6_cjs.extractPubKey(normalized);
859
+ const normalized = chunkM4DM3N6F_cjs.normalizeToDescriptor(descriptor);
860
+ const pubKey = chunkM4DM3N6F_cjs.extractPubKey(normalized);
861
861
  return pubKey.toLowerCase() === this.pubKeyHex.toLowerCase();
862
862
  } catch {
863
863
  return false;
@@ -1194,7 +1194,7 @@ function unwrapKeyring(provider) {
1194
1194
  }
1195
1195
  function keyOf(descriptor) {
1196
1196
  try {
1197
- return chunk4MCQZYH6_cjs.extractPubKey(chunk4MCQZYH6_cjs.normalizeToDescriptor(descriptor)).toLowerCase();
1197
+ return chunkM4DM3N6F_cjs.extractPubKey(chunkM4DM3N6F_cjs.normalizeToDescriptor(descriptor)).toLowerCase();
1198
1198
  } catch {
1199
1199
  return void 0;
1200
1200
  }
@@ -1285,12 +1285,12 @@ async function resolveDescriptorSigner(descriptor, identity, provider) {
1285
1285
  signMessageWithDescriptor: (ownedDescriptor, message, signatureType) => identity.signDescriptorMessage(ownedDescriptor, message, signatureType)
1286
1286
  } : void 0;
1287
1287
  const owner = providerOwner ?? identityOwner;
1288
- if (owner && chunk4MCQZYH6_cjs.parseHDDescriptor(descriptor)) {
1288
+ if (owner && chunkM4DM3N6F_cjs.parseHDDescriptor(descriptor)) {
1289
1289
  return new DescriptorIdentity({ descriptor, signer: owner, base: identity });
1290
1290
  }
1291
1291
  let key;
1292
1292
  try {
1293
- key = chunk4MCQZYH6_cjs.deriveDescriptorLeafPubKey(descriptor);
1293
+ key = chunkM4DM3N6F_cjs.deriveDescriptorLeafPubKey(descriptor);
1294
1294
  } catch {
1295
1295
  throw new ForeignDescriptorError(descriptor);
1296
1296
  }
@@ -1343,14 +1343,14 @@ function buildSaltedPreimageMessage(xonly, salt) {
1343
1343
  }
1344
1344
  var PREIMAGE_INDEX = 0;
1345
1345
  function isPerArtifactDescriptor(descriptor) {
1346
- return chunk4MCQZYH6_cjs.parseHDDescriptor(descriptor) !== null;
1346
+ return chunkM4DM3N6F_cjs.parseHDDescriptor(descriptor) !== null;
1347
1347
  }
1348
1348
  async function provisionDescriptor(wallet) {
1349
1349
  const allocated = isHDAllocationCapable(wallet) ? await wallet.getNextSigningDescriptor() : void 0;
1350
- return allocated ?? await chunk4MCQZYH6_cjs.identityDescriptor(wallet.identity);
1350
+ return allocated ?? await chunkM4DM3N6F_cjs.identityDescriptor(wallet.identity);
1351
1351
  }
1352
1352
  async function provisionRefundKey(wallet) {
1353
- const descriptor = await chunk4MCQZYH6_cjs.identityDescriptor(wallet.identity);
1353
+ const descriptor = await chunkM4DM3N6F_cjs.identityDescriptor(wallet.identity);
1354
1354
  const signer = await contractSigner(wallet, descriptor);
1355
1355
  const pubkey = await signer.xOnlyPublicKey();
1356
1356
  const identityPubkey = await wallet.identity.xOnlyPublicKey();
@@ -1360,7 +1360,7 @@ async function provisionRefundKey(wallet) {
1360
1360
  );
1361
1361
  }
1362
1362
  const address = await wallet.getAddress();
1363
- const { pkScript } = chunkASKOHVGX_cjs.ArkAddress.decode(address);
1363
+ const { pkScript } = chunkNMDISCGW_cjs.ArkAddress.decode(address);
1364
1364
  return { descriptor, pubkey, pkScript, address };
1365
1365
  }
1366
1366
  async function provisionClaimSecret(wallet, opts = {}) {
@@ -1406,7 +1406,7 @@ async function contractSigner(wallet, descriptor) {
1406
1406
  const signer = isHDWalletCapable(wallet) ? await wallet.signerForDescriptor(descriptor) : wallet.identity;
1407
1407
  let expected;
1408
1408
  try {
1409
- expected = chunk4MCQZYH6_cjs.deriveDescriptorLeafPubKey(descriptor);
1409
+ expected = chunkM4DM3N6F_cjs.deriveDescriptorLeafPubKey(descriptor);
1410
1410
  } catch (cause) {
1411
1411
  throw new ForeignDescriptorError(descriptor, { cause });
1412
1412
  }
@@ -1488,7 +1488,7 @@ function debugLog(debug, ...args) {
1488
1488
  }
1489
1489
  function normalizeOptions(pathOrOptions) {
1490
1490
  const o = typeof pathOrOptions === "string" ? { path: pathOrOptions } : pathOrOptions;
1491
- chunkASKOHVGX_cjs.assertTimerMs("activationTimeoutMs", o.activationTimeoutMs);
1491
+ chunkNMDISCGW_cjs.assertTimerMs("activationTimeoutMs", o.activationTimeoutMs);
1492
1492
  return {
1493
1493
  path: o.path,
1494
1494
  updateViaCache: o.updateViaCache ?? "none",
@@ -1611,14 +1611,14 @@ var RestDelegateProvider = class {
1611
1611
  */
1612
1612
  async delegate(intent, forfeitTxs, options) {
1613
1613
  const url = `${this.url}/v1/delegate`;
1614
- const response = await chunkASKOHVGX_cjs.baseFetch(url, {
1614
+ const response = await chunkNMDISCGW_cjs.baseFetch(url, {
1615
1615
  method: "POST",
1616
1616
  headers: {
1617
1617
  "Content-Type": "application/json"
1618
1618
  },
1619
1619
  body: JSON.stringify({
1620
1620
  intent: {
1621
- message: chunkASKOHVGX_cjs.Intent.encodeMessage(intent.message),
1621
+ message: chunkNMDISCGW_cjs.Intent.encodeMessage(intent.message),
1622
1622
  proof: intent.proof
1623
1623
  },
1624
1624
  forfeit_txs: forfeitTxs,
@@ -1637,7 +1637,7 @@ var RestDelegateProvider = class {
1637
1637
  */
1638
1638
  async getDelegateInfo() {
1639
1639
  const url = `${this.url}/v1/delegator/info`;
1640
- const response = await chunkASKOHVGX_cjs.rateGate.runHttp(url, () => chunkASKOHVGX_cjs.baseFetch(url));
1640
+ const response = await chunkNMDISCGW_cjs.rateGate.runHttp(url, () => chunkNMDISCGW_cjs.baseFetch(url));
1641
1641
  if (!response.ok) {
1642
1642
  const errorText2 = await response.text();
1643
1643
  throw new Error(`Failed to get delegate info: ${errorText2}`);
@@ -1693,7 +1693,7 @@ async function collectPages(read) {
1693
1693
  return items;
1694
1694
  }
1695
1695
  function scriptFromArkAddress(address) {
1696
- return base.hex.encode(chunkASKOHVGX_cjs.ArkAddress.decode(address).pkScript);
1696
+ return base.hex.encode(chunkNMDISCGW_cjs.ArkAddress.decode(address).pkScript);
1697
1697
  }
1698
1698
 
1699
1699
  // src/repositories/walletRepository.ts
@@ -1755,9 +1755,9 @@ async function collectScriptVtxos(repository, script, options) {
1755
1755
  return [...byOutpoint.values()].map((row) => row.vtxo);
1756
1756
  }
1757
1757
  function unspentScriptVtxos(rows, copies) {
1758
- const spent = copies.filter((copy) => chunkASKOHVGX_cjs.isVtxoSpent(copy.vtxo));
1758
+ const spent = copies.filter((copy) => chunkNMDISCGW_cjs.isVtxoSpent(copy.vtxo));
1759
1759
  return rows.filter(
1760
- (row) => !chunkASKOHVGX_cjs.isVtxoSpent(row.vtxo) && !spent.some(
1760
+ (row) => !chunkNMDISCGW_cjs.isVtxoSpent(row.vtxo) && !spent.some(
1761
1761
  (copy) => copy.address !== row.address && copy.vtxo.txid === row.vtxo.txid && copy.vtxo.vout === row.vtxo.vout && shouldReplaceScriptVtxo(row, copy)
1762
1762
  )
1763
1763
  );
@@ -1840,7 +1840,7 @@ var ESPLORA_URL = {
1840
1840
  regtest: "http://localhost:3000/api"
1841
1841
  };
1842
1842
  var EsploraProvider = class {
1843
- constructor(baseUrl = ESPLORA_URL[chunkASKOHVGX_cjs.DEFAULT_NETWORK_NAME], opts) {
1843
+ constructor(baseUrl = ESPLORA_URL[chunkNMDISCGW_cjs.DEFAULT_NETWORK_NAME], opts) {
1844
1844
  this.baseUrl = baseUrl;
1845
1845
  this.pollingInterval = opts?.pollingInterval ?? 15e3;
1846
1846
  this.forcePolling = opts?.forcePolling ?? false;
@@ -1855,7 +1855,7 @@ var EsploraProvider = class {
1855
1855
  */
1856
1856
  addressWatches = /* @__PURE__ */ new Map();
1857
1857
  async getCoins(address) {
1858
- const response = await chunkASKOHVGX_cjs.baseFetch(`${this.baseUrl}/address/${address}/utxo`);
1858
+ const response = await chunkNMDISCGW_cjs.baseFetch(`${this.baseUrl}/address/${address}/utxo`);
1859
1859
  if (!response.ok) {
1860
1860
  throw new Error(`Failed to fetch UTXOs: ${response.statusText}`);
1861
1861
  }
@@ -1864,12 +1864,12 @@ var EsploraProvider = class {
1864
1864
  async getFeeRate() {
1865
1865
  let url = `${this.baseUrl}/fee-estimates`;
1866
1866
  let key = "1";
1867
- let response = await chunkASKOHVGX_cjs.baseFetch(url);
1867
+ let response = await chunkNMDISCGW_cjs.baseFetch(url);
1868
1868
  if (response.status === 404) {
1869
1869
  await response.body?.cancel();
1870
1870
  url = `${this.baseUrl}/v1/fees/recommended`;
1871
1871
  key = "fastestFee";
1872
- response = await chunkASKOHVGX_cjs.baseFetch(url);
1872
+ response = await chunkNMDISCGW_cjs.baseFetch(url);
1873
1873
  }
1874
1874
  if (response.status === 404) {
1875
1875
  await response.body?.cancel();
@@ -1906,7 +1906,7 @@ var EsploraProvider = class {
1906
1906
  }
1907
1907
  }
1908
1908
  async getTxOutspends(txid) {
1909
- const response = await chunkASKOHVGX_cjs.baseFetch(`${this.baseUrl}/tx/${txid}/outspends`);
1909
+ const response = await chunkNMDISCGW_cjs.baseFetch(`${this.baseUrl}/tx/${txid}/outspends`);
1910
1910
  if (!response.ok) {
1911
1911
  const error = await response.text();
1912
1912
  throw new Error(`Failed to get transaction outspends: ${error}`);
@@ -1914,7 +1914,7 @@ var EsploraProvider = class {
1914
1914
  return response.json();
1915
1915
  }
1916
1916
  async getTransactions(address) {
1917
- const response = await chunkASKOHVGX_cjs.baseFetch(`${this.baseUrl}/address/${address}/txs`);
1917
+ const response = await chunkNMDISCGW_cjs.baseFetch(`${this.baseUrl}/address/${address}/txs`);
1918
1918
  if (!response.ok) {
1919
1919
  const error = await response.text();
1920
1920
  throw new Error(`Failed to get transactions: ${error}`);
@@ -1923,14 +1923,14 @@ var EsploraProvider = class {
1923
1923
  }
1924
1924
  /** Orders of magnitude smaller than `/address/{addr}/txs`: the polling fallback's probe. */
1925
1925
  async getAddressStats(address) {
1926
- const response = await chunkASKOHVGX_cjs.baseFetch(`${this.baseUrl}/address/${address}`);
1926
+ const response = await chunkNMDISCGW_cjs.baseFetch(`${this.baseUrl}/address/${address}`);
1927
1927
  if (!response.ok) {
1928
1928
  throw new Error(`Failed to get address stats: ${response.statusText}`);
1929
1929
  }
1930
1930
  return response.json();
1931
1931
  }
1932
1932
  async getRawTransaction(txid) {
1933
- const response = await chunkASKOHVGX_cjs.baseFetch(`${this.baseUrl}/tx/${txid}/hex`);
1933
+ const response = await chunkNMDISCGW_cjs.baseFetch(`${this.baseUrl}/tx/${txid}/hex`);
1934
1934
  if (!response.ok) {
1935
1935
  const error = await response.text();
1936
1936
  throw new Error(`Failed to get raw transaction ${txid}: ${error}`);
@@ -1938,7 +1938,7 @@ var EsploraProvider = class {
1938
1938
  return base.hex.decode((await response.text()).trim());
1939
1939
  }
1940
1940
  async getTxStatus(txid) {
1941
- const txresponse = await chunkASKOHVGX_cjs.baseFetch(`${this.baseUrl}/tx/${txid}`);
1941
+ const txresponse = await chunkNMDISCGW_cjs.baseFetch(`${this.baseUrl}/tx/${txid}`);
1942
1942
  if (!txresponse.ok) {
1943
1943
  throw new Error(txresponse.statusText);
1944
1944
  }
@@ -1946,7 +1946,7 @@ var EsploraProvider = class {
1946
1946
  if (!tx.status.confirmed) {
1947
1947
  return { confirmed: false };
1948
1948
  }
1949
- const response = await chunkASKOHVGX_cjs.baseFetch(`${this.baseUrl}/tx/${txid}/status`);
1949
+ const response = await chunkNMDISCGW_cjs.baseFetch(`${this.baseUrl}/tx/${txid}/status`);
1950
1950
  if (!response.ok) {
1951
1951
  throw new Error(`Failed to get transaction status: ${response.statusText}`);
1952
1952
  }
@@ -2220,9 +2220,9 @@ var EsploraProvider = class {
2220
2220
  return { subscribers, teardown, started };
2221
2221
  }
2222
2222
  async getChainTip() {
2223
- let tipBlocks = await chunkASKOHVGX_cjs.baseFetch(`${this.baseUrl}/blocks`);
2223
+ let tipBlocks = await chunkNMDISCGW_cjs.baseFetch(`${this.baseUrl}/blocks`);
2224
2224
  if (tipBlocks.status === 404) {
2225
- tipBlocks = await chunkASKOHVGX_cjs.baseFetch(`${this.baseUrl}/v1/blocks`);
2225
+ tipBlocks = await chunkNMDISCGW_cjs.baseFetch(`${this.baseUrl}/v1/blocks`);
2226
2226
  }
2227
2227
  if (!tipBlocks.ok) {
2228
2228
  throw new Error(`Failed to get chain tip: ${tipBlocks.statusText}`);
@@ -2243,7 +2243,7 @@ var EsploraProvider = class {
2243
2243
  };
2244
2244
  }
2245
2245
  async broadcastPackage(parent, child) {
2246
- const response = await chunkASKOHVGX_cjs.baseFetch(`${this.baseUrl}/txs/package`, {
2246
+ const response = await chunkNMDISCGW_cjs.baseFetch(`${this.baseUrl}/txs/package`, {
2247
2247
  method: "POST",
2248
2248
  headers: {
2249
2249
  "Content-Type": "application/json"
@@ -2259,7 +2259,7 @@ var EsploraProvider = class {
2259
2259
  return result;
2260
2260
  }
2261
2261
  async broadcastTx(tx) {
2262
- const response = await chunkASKOHVGX_cjs.baseFetch(`${this.baseUrl}/tx`, {
2262
+ const response = await chunkNMDISCGW_cjs.baseFetch(`${this.baseUrl}/tx`, {
2263
2263
  method: "POST",
2264
2264
  headers: {
2265
2265
  "Content-Type": "text/plain"
@@ -2431,7 +2431,7 @@ function findP2AOutput(tx) {
2431
2431
  var CHILD_DUST_AMOUNT = 546;
2432
2432
  function buildAnchorChild(params) {
2433
2433
  const { parent, feeRate, fundingCoins, changeAddress, tapInternalKey, network } = params;
2434
- const child = new chunkASKOHVGX_cjs.Transaction({ version: 3, allowLegacyWitnessUtxo: true });
2434
+ const child = new chunkNMDISCGW_cjs.Transaction({ version: 3, allowLegacyWitnessUtxo: true });
2435
2435
  const anchor = findP2AOutput(parent);
2436
2436
  child.addInput(anchor);
2437
2437
  const estimator = TxWeightEstimator.create().addP2AInput();
@@ -2480,7 +2480,7 @@ function buildForfeitTx(inputs, forfeitPkScript, txLocktime) {
2480
2480
  );
2481
2481
  }
2482
2482
  function buildForfeitTxWithOutput(inputs, output, txLocktime) {
2483
- const tx = new chunkASKOHVGX_cjs.Transaction({
2483
+ const tx = new chunkNMDISCGW_cjs.Transaction({
2484
2484
  version: 3,
2485
2485
  lockTime: txLocktime
2486
2486
  });
@@ -2507,7 +2507,7 @@ function validateConnectorsTxGraph(settlementTxB64, connectorsGraph) {
2507
2507
  connectorsGraph.validate();
2508
2508
  if (connectorsGraph.root.inputsLength !== 1) throw ErrNumberOfInputs;
2509
2509
  const rootInput = connectorsGraph.root.getInput(0);
2510
- const settlementTx = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(settlementTxB64));
2510
+ const settlementTx = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(settlementTxB64));
2511
2511
  if (settlementTx.outputsLength <= BATCH_OUTPUT_CONNECTORS_INDEX)
2512
2512
  throw ErrInvalidSettlementTxOutputs;
2513
2513
  const expectedRootTxid = settlementTx.id;
@@ -2556,7 +2556,7 @@ function validateVtxoTxGraph(graph, roundTransaction, sweepTapTreeRoot) {
2556
2556
  if (previousScriptKey.length !== 32) {
2557
2557
  throw new Error(`parent output ${childIndex} has invalid script`);
2558
2558
  }
2559
- const cosigners = chunkASKOHVGX_cjs.getArkPsbtFields(child.root, 0, chunkASKOHVGX_cjs.CosignerPublicKey);
2559
+ const cosigners = chunkNMDISCGW_cjs.getArkPsbtFields(child.root, 0, chunkNMDISCGW_cjs.CosignerPublicKey);
2560
2560
  if (cosigners.length === 0) {
2561
2561
  throw ErrMissingCosignersPublicKeys;
2562
2562
  }
@@ -2614,7 +2614,7 @@ var EmulatorPacket = class _EmulatorPacket {
2614
2614
  return new _EmulatorPacket(entries);
2615
2615
  }
2616
2616
  static fromBytes(data) {
2617
- const reader = new chunkAICUNREA_cjs.BufferReader(data);
2617
+ const reader = new chunkX2BWPGCY_cjs.BufferReader(data);
2618
2618
  const entryCount = reader.readCompactSize();
2619
2619
  const entries = [];
2620
2620
  for (let i = 0; i < entryCount; i++) {
@@ -2632,7 +2632,7 @@ var EmulatorPacket = class _EmulatorPacket {
2632
2632
  return _EmulatorPacket.PACKET_TYPE;
2633
2633
  }
2634
2634
  serialize() {
2635
- const writer = new chunkAICUNREA_cjs.BufferWriter();
2635
+ const writer = new chunkX2BWPGCY_cjs.BufferWriter();
2636
2636
  writer.writeCompactSize(this.entries.length);
2637
2637
  for (const entry of this.entries) {
2638
2638
  writer.writeUint16LE(entry.vin);
@@ -2719,7 +2719,7 @@ var Extension = class _Extension {
2719
2719
  `expected magic prefix ${base.hex.encode(ARKADE_MAGIC)}, got ${base.hex.encode(payload.slice(0, Math.min(payload.length, ARKADE_MAGIC.length)))}`
2720
2720
  );
2721
2721
  }
2722
- const reader = new chunkAICUNREA_cjs.BufferReader(payload.slice(ARKADE_MAGIC.length));
2722
+ const reader = new chunkX2BWPGCY_cjs.BufferReader(payload.slice(ARKADE_MAGIC.length));
2723
2723
  const packets = [];
2724
2724
  while (reader.remaining() > 0) {
2725
2725
  const packetType = reader.readByte();
@@ -2792,7 +2792,7 @@ var Extension = class _Extension {
2792
2792
  * getAssetPacket returns the embedded Packet, or null if not present.
2793
2793
  */
2794
2794
  getAssetPacket() {
2795
- return this.packets.find((p) => p instanceof chunkAICUNREA_cjs.Packet) ?? null;
2795
+ return this.packets.find((p) => p instanceof chunkX2BWPGCY_cjs.Packet) ?? null;
2796
2796
  }
2797
2797
  /**
2798
2798
  * getEmulatorPacket returns the embedded EmulatorPacket, or null if not present.
@@ -2816,8 +2816,8 @@ var Extension = class _Extension {
2816
2816
  };
2817
2817
  function parsePacket(packetType, data) {
2818
2818
  switch (packetType) {
2819
- case chunkAICUNREA_cjs.Packet.PACKET_TYPE:
2820
- return chunkAICUNREA_cjs.Packet.fromBytes(data);
2819
+ case chunkX2BWPGCY_cjs.Packet.PACKET_TYPE:
2820
+ return chunkX2BWPGCY_cjs.Packet.fromBytes(data);
2821
2821
  case EmulatorPacket.PACKET_TYPE:
2822
2822
  return EmulatorPacket.fromBytes(data);
2823
2823
  default:
@@ -2864,22 +2864,22 @@ function buildOpReturnScript(data) {
2864
2864
  }
2865
2865
  return script;
2866
2866
  }
2867
- var ErrOffchainOutputNotFound = (address) => new chunkASKOHVGX_cjs.ServerResponseMismatchError(`offchain send output not found: ${address}`);
2868
- var ErrInvalidAssetOutputAmount = (got, want, assetId) => new chunkASKOHVGX_cjs.ServerResponseMismatchError(
2867
+ var ErrOffchainOutputNotFound = (address) => new chunkNMDISCGW_cjs.ServerResponseMismatchError(`offchain send output not found: ${address}`);
2868
+ var ErrInvalidAssetOutputAmount = (got, want, assetId) => new chunkNMDISCGW_cjs.ServerResponseMismatchError(
2869
2869
  `invalid asset output amount for ${assetId}: got ${got}, want ${want}`
2870
2870
  );
2871
- var ErrAssetGroupNotFound = (assetId) => new chunkASKOHVGX_cjs.ServerResponseMismatchError(`asset group not found in batch leaf: ${assetId}`);
2872
- var ErrAssetOutputNotFound = (assetId, outputIndex) => new chunkASKOHVGX_cjs.ServerResponseMismatchError(
2871
+ var ErrAssetGroupNotFound = (assetId) => new chunkNMDISCGW_cjs.ServerResponseMismatchError(`asset group not found in batch leaf: ${assetId}`);
2872
+ var ErrAssetOutputNotFound = (assetId, outputIndex) => new chunkNMDISCGW_cjs.ServerResponseMismatchError(
2873
2873
  `asset output not found in asset group ${assetId} at index ${outputIndex}`
2874
2874
  );
2875
- var ErrOnchainOutputNotFound = (address) => new chunkASKOHVGX_cjs.ServerResponseMismatchError(`onchain output not found: ${address}`);
2876
- var ErrUnvalidatedOffchainOutput = (address) => new chunkASKOHVGX_cjs.ServerResponseMismatchError(
2875
+ var ErrOnchainOutputNotFound = (address) => new chunkNMDISCGW_cjs.ServerResponseMismatchError(`onchain output not found: ${address}`);
2876
+ var ErrUnvalidatedOffchainOutput = (address) => new chunkNMDISCGW_cjs.ServerResponseMismatchError(
2877
2877
  `offchain output ${address} cannot be validated: virtual output tree signing did not run`
2878
2878
  );
2879
- var ErrIntentOutputNotFound = (index, kind) => new chunkASKOHVGX_cjs.ServerResponseMismatchError(
2879
+ var ErrIntentOutputNotFound = (index, kind) => new chunkNMDISCGW_cjs.ServerResponseMismatchError(
2880
2880
  `${kind} output ${index} of the intent proof is not present in what the server built`
2881
2881
  );
2882
- var ErrUnvalidatedIntentOutput = (index) => new chunkASKOHVGX_cjs.ServerResponseMismatchError(
2882
+ var ErrUnvalidatedIntentOutput = (index) => new chunkNMDISCGW_cjs.ServerResponseMismatchError(
2883
2883
  `offchain output ${index} of the intent proof cannot be validated: virtual output tree signing did not run`
2884
2884
  );
2885
2885
  var ErrInvalidOnchainOutputAmount = (address) => new Error(`invalid onchain output amount: ${address}`);
@@ -2888,7 +2888,7 @@ var ErrInvalidOffchainOutputAmount = (address) => new Error(`invalid offchain ou
2888
2888
  function assertFinalCommitmentMatchesValidated(finalCommitmentTx, validatedCommitmentTxid, context) {
2889
2889
  if (!validatedCommitmentTxid) return;
2890
2890
  if (finalCommitmentTx.id === validatedCommitmentTxid) return;
2891
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
2891
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
2892
2892
  `${context}: finalization commitment tx ${finalCommitmentTx.id} differs from the validated commitment tx ${validatedCommitmentTxid}`
2893
2893
  );
2894
2894
  }
@@ -2898,7 +2898,7 @@ function validateBatchRecipients(commitmentTx, vtxoTreeLeaves, recipients, netwo
2898
2898
  for (const recipient of recipients) {
2899
2899
  let arkAddress;
2900
2900
  try {
2901
- arkAddress = chunkASKOHVGX_cjs.ArkAddress.decode(recipient.address);
2901
+ arkAddress = chunkNMDISCGW_cjs.ArkAddress.decode(recipient.address);
2902
2902
  } catch {
2903
2903
  validateOnchainRecipient(commitmentTx, recipient, network, usedOnchainOutputs);
2904
2904
  continue;
@@ -2910,7 +2910,7 @@ function validateBatchRecipientsWithoutTree(commitmentTx, recipients, network) {
2910
2910
  const usedOnchainOutputs = /* @__PURE__ */ new Set();
2911
2911
  for (const recipient of recipients) {
2912
2912
  try {
2913
- chunkASKOHVGX_cjs.ArkAddress.decode(recipient.address);
2913
+ chunkNMDISCGW_cjs.ArkAddress.decode(recipient.address);
2914
2914
  } catch {
2915
2915
  validateOnchainRecipient(commitmentTx, recipient, network, usedOnchainOutputs);
2916
2916
  continue;
@@ -2919,7 +2919,7 @@ function validateBatchRecipientsWithoutTree(commitmentTx, recipients, network) {
2919
2919
  }
2920
2920
  }
2921
2921
  function declaredIntentOutputs(signedProof, onchainOutputIndexes) {
2922
- const proof = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(signedProof));
2922
+ const proof = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(signedProof));
2923
2923
  const onchain = new Set(onchainOutputIndexes);
2924
2924
  const declared = [];
2925
2925
  for (let i = 0; i < proof.outputsLength; i++) {
@@ -3211,7 +3211,7 @@ function assetMintResolver() {
3211
3211
  if (!tx.assets?.length || !tx.key.arkTxid) return void 0;
3212
3212
  const minted = tx.assets.filter((a) => {
3213
3213
  try {
3214
- return base.hex.encode(chunkAICUNREA_cjs.AssetId.fromString(a.assetId).txid) === tx.key.arkTxid;
3214
+ return base.hex.encode(chunkX2BWPGCY_cjs.AssetId.fromString(a.assetId).txid) === tx.key.arkTxid;
3215
3215
  } catch {
3216
3216
  return false;
3217
3217
  }
@@ -3288,7 +3288,7 @@ function createAssetPacket(assetInputs, receivers, changeReceiver) {
3288
3288
  const existing = inputsByAssetId.get(asset.assetId);
3289
3289
  inputsByAssetId.set(asset.assetId, [
3290
3290
  ...existing ?? [],
3291
- chunkAICUNREA_cjs.AssetInput.create(inputIndex, asset.amount)
3291
+ chunkX2BWPGCY_cjs.AssetInput.create(inputIndex, asset.amount)
3292
3292
  ]);
3293
3293
  }
3294
3294
  }
@@ -3300,7 +3300,7 @@ function createAssetPacket(assetInputs, receivers, changeReceiver) {
3300
3300
  const existing = outputsByAssetId.get(asset.assetId);
3301
3301
  outputsByAssetId.set(asset.assetId, [
3302
3302
  ...existing ?? [],
3303
- chunkAICUNREA_cjs.AssetOutput.create(outputIndex, asset.amount)
3303
+ chunkX2BWPGCY_cjs.AssetOutput.create(outputIndex, asset.amount)
3304
3304
  ]);
3305
3305
  }
3306
3306
  }
@@ -3311,7 +3311,7 @@ function createAssetPacket(assetInputs, receivers, changeReceiver) {
3311
3311
  const existing = outputsByAssetId.get(asset.assetId);
3312
3312
  outputsByAssetId.set(asset.assetId, [
3313
3313
  ...existing ?? [],
3314
- chunkAICUNREA_cjs.AssetOutput.create(outputIndex, asset.amount)
3314
+ chunkX2BWPGCY_cjs.AssetOutput.create(outputIndex, asset.amount)
3315
3315
  ]);
3316
3316
  }
3317
3317
  }
@@ -3320,11 +3320,11 @@ function createAssetPacket(assetInputs, receivers, changeReceiver) {
3320
3320
  for (const assetIdStr of allAssetIds) {
3321
3321
  const inputs = inputsByAssetId.get(assetIdStr);
3322
3322
  const outputs = outputsByAssetId.get(assetIdStr);
3323
- const assetId = chunkAICUNREA_cjs.AssetId.fromString(assetIdStr);
3324
- const group = chunkAICUNREA_cjs.AssetGroup.create(assetId, null, inputs ?? [], outputs ?? [], []);
3323
+ const assetId = chunkX2BWPGCY_cjs.AssetId.fromString(assetIdStr);
3324
+ const group = chunkX2BWPGCY_cjs.AssetGroup.create(assetId, null, inputs ?? [], outputs ?? [], []);
3325
3325
  groups.push(group);
3326
3326
  }
3327
- return chunkAICUNREA_cjs.Packet.create(groups);
3327
+ return chunkX2BWPGCY_cjs.Packet.create(groups);
3328
3328
  }
3329
3329
  function selectCoinsWithAsset(coins, assetId, requiredAmount) {
3330
3330
  const coinsWithAsset = coins.filter((coin) => coin.assets?.some((a) => a.assetId === assetId));
@@ -3408,7 +3408,7 @@ function meetsInputExpiryFloor(coin, floor) {
3408
3408
  }
3409
3409
  function toXOnlySignerHex(pubkeyHex) {
3410
3410
  const bytes = base.hex.decode(pubkeyHex);
3411
- if (bytes.length === 32 || bytes.length === 33) return base.hex.encode(chunk4MCQZYH6_cjs.toXOnly(bytes, "signer key"));
3411
+ if (bytes.length === 32 || bytes.length === 33) return base.hex.encode(chunkM4DM3N6F_cjs.toXOnly(bytes, "signer key"));
3412
3412
  throw new Error(`invalid signer pubkey length: expected 32 or 33 bytes, got ${bytes.length}`);
3413
3413
  }
3414
3414
  function signerSetFromInfo(info) {
@@ -3455,14 +3455,14 @@ var toTimelock = (value) => ({
3455
3455
  var toSeconds = (t) => t.type === "seconds" ? t.value : t.value * NOMINAL_BLOCK_SECONDS;
3456
3456
  function assertTimelockInPolicy(timelock, policy, label, overrideOption) {
3457
3457
  if (policy.requireSeconds && timelock.type === "blocks") {
3458
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3458
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3459
3459
  `${label} rejected: block-typed timelocks are not accepted (got ${timelock.value})`
3460
3460
  );
3461
3461
  }
3462
3462
  const seconds = toSeconds(timelock);
3463
3463
  if (seconds < policy.minSeconds) {
3464
3464
  const remedy = overrideOption ? `; pass ${overrideOption}: ${seconds}n to Wallet.create to lower it` : "";
3465
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3465
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3466
3466
  `${label} rejected: ${timelock.value} ${timelock.type} is below the ${policy.minSeconds}s floor${remedy}`
3467
3467
  );
3468
3468
  }
@@ -3483,7 +3483,7 @@ function resolveBatchExpiryPolicy(network, overrides) {
3483
3483
  }
3484
3484
  function assertValidBatchExpiry(batchExpiry, policy) {
3485
3485
  if (policy.advertisedVtxoTreeExpiry !== void 0 && batchExpiry !== policy.advertisedVtxoTreeExpiry) {
3486
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3486
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3487
3487
  `batch expiry rejected: ${batchExpiry} does not match the advertised vtxoTreeExpiry ${policy.advertisedVtxoTreeExpiry}`
3488
3488
  );
3489
3489
  }
@@ -3492,21 +3492,21 @@ function assertValidBatchExpiry(batchExpiry, policy) {
3492
3492
  function assertValidServerUnrollScript(checkpointTapscript, network, advertisedForfeitPubkey) {
3493
3493
  let script;
3494
3494
  try {
3495
- script = chunkASKOHVGX_cjs.CSVMultisigTapscript.decode(base.hex.decode(checkpointTapscript));
3495
+ script = chunkNMDISCGW_cjs.CSVMultisigTapscript.decode(base.hex.decode(checkpointTapscript));
3496
3496
  } catch (e) {
3497
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3497
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3498
3498
  `checkpoint exit delay rejected: invalid checkpointTapscript from server (${e instanceof Error ? e.message : String(e)})`
3499
3499
  );
3500
3500
  }
3501
3501
  if (advertisedForfeitPubkey !== void 0) {
3502
3502
  const { pubkeys } = script.params;
3503
3503
  if (pubkeys.length !== 1) {
3504
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3504
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3505
3505
  `checkpoint exit delay rejected: checkpointTapscript must commit to exactly one pubkey, got ${pubkeys.length} [${pubkeys.map(base.hex.encode).join(", ")}]`
3506
3506
  );
3507
3507
  }
3508
3508
  if (!utils_js.equalBytes(pubkeys[0], advertisedForfeitPubkey)) {
3509
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3509
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3510
3510
  `checkpoint exit delay rejected: checkpointTapscript pubkey ${base.hex.encode(pubkeys[0])} does not match the advertised forfeitPubkey ${base.hex.encode(advertisedForfeitPubkey)}`
3511
3511
  );
3512
3512
  }
@@ -3549,8 +3549,8 @@ function buildOffchainTx(inputs, outputs, serverUnrollScript) {
3549
3549
  function buildVirtualTx(inputs, outputs) {
3550
3550
  let lockTime = 0n;
3551
3551
  for (const input of inputs) {
3552
- const tapscript = chunkASKOHVGX_cjs.decodeTapscript(chunkASKOHVGX_cjs.scriptFromTapLeafScript(input.tapLeafScript));
3553
- if (chunkASKOHVGX_cjs.CLTVMultisigTapscript.is(tapscript)) {
3552
+ const tapscript = chunkNMDISCGW_cjs.decodeTapscript(chunkNMDISCGW_cjs.scriptFromTapLeafScript(input.tapLeafScript));
3553
+ if (chunkNMDISCGW_cjs.CLTVMultisigTapscript.is(tapscript)) {
3554
3554
  if (lockTime !== 0n) {
3555
3555
  if (isSeconds(lockTime) !== isSeconds(tapscript.params.absoluteTimelock)) {
3556
3556
  throw new Error("cannot mix seconds and blocks locktime");
@@ -3561,7 +3561,7 @@ function buildVirtualTx(inputs, outputs) {
3561
3561
  }
3562
3562
  }
3563
3563
  }
3564
- const tx = new chunkASKOHVGX_cjs.Transaction({
3564
+ const tx = new chunkNMDISCGW_cjs.Transaction({
3565
3565
  version: 3,
3566
3566
  lockTime: Number(lockTime)
3567
3567
  });
@@ -3571,12 +3571,12 @@ function buildVirtualTx(inputs, outputs) {
3571
3571
  index: input.vout,
3572
3572
  sequence: lockTime ? btcSigner.DEFAULT_SEQUENCE - 1 : void 0,
3573
3573
  witnessUtxo: {
3574
- script: chunkASKOHVGX_cjs.VtxoScript.decode(input.tapTree).pkScript,
3574
+ script: chunkNMDISCGW_cjs.VtxoScript.decode(input.tapTree).pkScript,
3575
3575
  amount: BigInt(input.value)
3576
3576
  },
3577
3577
  tapLeafScript: [input.tapLeafScript]
3578
3578
  });
3579
- chunkASKOHVGX_cjs.setArkPsbtField(tx, i, chunkASKOHVGX_cjs.VtxoTaprootTree, input.tapTree);
3579
+ chunkNMDISCGW_cjs.setArkPsbtField(tx, i, chunkNMDISCGW_cjs.VtxoTaprootTree, input.tapTree);
3580
3580
  }
3581
3581
  for (const output of outputs) {
3582
3582
  tx.addOutput(output);
@@ -3587,8 +3587,8 @@ function buildVirtualTx(inputs, outputs) {
3587
3587
  return tx;
3588
3588
  }
3589
3589
  function buildCheckpointTx(vtxo, serverUnrollScript) {
3590
- const collaborativeClosure = chunkASKOHVGX_cjs.decodeTapscript(chunkASKOHVGX_cjs.scriptFromTapLeafScript(vtxo.tapLeafScript));
3591
- const checkpointVtxoScript = new chunkASKOHVGX_cjs.VtxoScript([
3590
+ const collaborativeClosure = chunkNMDISCGW_cjs.decodeTapscript(chunkNMDISCGW_cjs.scriptFromTapLeafScript(vtxo.tapLeafScript));
3591
+ const checkpointVtxoScript = new chunkNMDISCGW_cjs.VtxoScript([
3592
3592
  serverUnrollScript.script,
3593
3593
  collaborativeClosure.script
3594
3594
  ]);
@@ -3664,7 +3664,7 @@ function verifyTapscriptSignatures(tx, inputIndex, requiredSigners, excludePubke
3664
3664
  const sighashType = signature.length === 65 ? signature[64] : btcSigner.SigHash.DEFAULT;
3665
3665
  const sig = signature.subarray(0, 64);
3666
3666
  if (!allowedSighashTypes.includes(sighashType)) {
3667
- const sighashName = chunkASKOHVGX_cjs.formatSighash(sighashType);
3667
+ const sighashName = chunkNMDISCGW_cjs.formatSighash(sighashType);
3668
3668
  throw new Error(
3669
3669
  `Unallowed sighash type ${sighashName} for input ${inputIndex}, pubkey ${pubKeyHex}.`
3670
3670
  );
@@ -3738,7 +3738,7 @@ function combineTapscriptSigs(signedTx, originalTx) {
3738
3738
  }
3739
3739
  function isValidArkAddress(address) {
3740
3740
  try {
3741
- chunkASKOHVGX_cjs.ArkAddress.decode(address);
3741
+ chunkNMDISCGW_cjs.ArkAddress.decode(address);
3742
3742
  return true;
3743
3743
  } catch (e) {
3744
3744
  return false;
@@ -3746,16 +3746,16 @@ function isValidArkAddress(address) {
3746
3746
  }
3747
3747
  function matchServerCheckpoints(serverCheckpointTxs, expectedCheckpoints, context) {
3748
3748
  if (serverCheckpointTxs.length !== expectedCheckpoints.length) {
3749
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3749
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3750
3750
  `${context} returned ${serverCheckpointTxs.length} checkpoints, expected ${expectedCheckpoints.length}`
3751
3751
  );
3752
3752
  }
3753
3753
  const byTxid = new Map(expectedCheckpoints.map((c) => [c.id, c]));
3754
3754
  return serverCheckpointTxs.map((encoded, index) => {
3755
- const server = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(encoded));
3755
+ const server = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(encoded));
3756
3756
  const local = byTxid.get(server.id);
3757
3757
  if (!local) {
3758
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3758
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3759
3759
  `${context} checkpoint ${index} txid ${server.id} does not match any submitted checkpoint`
3760
3760
  );
3761
3761
  }
@@ -3765,14 +3765,14 @@ function matchServerCheckpoints(serverCheckpointTxs, expectedCheckpoints, contex
3765
3765
  }
3766
3766
  function assertSubmittedArkTxid(response, signedArkTx, context) {
3767
3767
  if (response.arkTxid !== signedArkTx.id) {
3768
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3768
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3769
3769
  `${context} returned ark txid ${response.arkTxid}, expected ${signedArkTx.id}`
3770
3770
  );
3771
3771
  }
3772
3772
  if (response.finalArkTx === void 0) return;
3773
- const finalTxid = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(response.finalArkTx)).id;
3773
+ const finalTxid = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(response.finalArkTx)).id;
3774
3774
  if (finalTxid !== signedArkTx.id) {
3775
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3775
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3776
3776
  `${context} returned final ark tx ${finalTxid}, expected ${signedArkTx.id}`
3777
3777
  );
3778
3778
  }
@@ -3784,20 +3784,20 @@ function assertServerSignedLeaf(serverTx, localTx, inputIndex, serverPubkeys, co
3784
3784
  `${context}: input ${inputIndex} carries no spend leaf to verify the server signature against`
3785
3785
  );
3786
3786
  }
3787
- const script = chunkASKOHVGX_cjs.scriptFromTapLeafScript(leaf);
3787
+ const script = chunkNMDISCGW_cjs.scriptFromTapLeafScript(leaf);
3788
3788
  let leafPubkeys;
3789
3789
  try {
3790
- leafPubkeys = chunkASKOHVGX_cjs.decodeTapscript(script).params.pubkeys.map(
3791
- (key) => base.hex.encode(chunk4MCQZYH6_cjs.toXOnly(key, "leaf key"))
3790
+ leafPubkeys = chunkNMDISCGW_cjs.decodeTapscript(script).params.pubkeys.map(
3791
+ (key) => base.hex.encode(chunkM4DM3N6F_cjs.toXOnly(key, "leaf key"))
3792
3792
  );
3793
3793
  } catch (error) {
3794
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3794
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3795
3795
  `${context}: input ${inputIndex} spend leaf cannot be decoded (${error instanceof Error ? error.message : String(error)})`
3796
3796
  );
3797
3797
  }
3798
3798
  const signer = leafPubkeys.find((key) => serverPubkeys.has(key));
3799
3799
  if (!signer) {
3800
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3800
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3801
3801
  `${context}: input ${inputIndex} spend leaf names no signer key the server advertises`
3802
3802
  );
3803
3803
  }
@@ -3811,7 +3811,7 @@ function assertServerSignedLeaf(serverTx, localTx, inputIndex, serverPubkeys, co
3811
3811
  payment_js.tapLeafHash(script)
3812
3812
  );
3813
3813
  } catch (error) {
3814
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3814
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3815
3815
  `${context}: input ${inputIndex} is not signed by the server on the leaf being spent (${error instanceof Error ? error.message : String(error)})`
3816
3816
  );
3817
3817
  }
@@ -3820,20 +3820,20 @@ function assertCheckpointsMatchInputs(checkpoints, inputs, unrollCandidates, con
3820
3820
  const byOutpoint = new Map(inputs.map((input) => [`${input.txid}:${input.vout}`, input]));
3821
3821
  for (const [index, checkpoint] of checkpoints.entries()) {
3822
3822
  if (checkpoint.inputsLength !== 1) {
3823
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3823
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3824
3824
  `${context}: checkpoint ${index} spends ${checkpoint.inputsLength} inputs, expected 1`
3825
3825
  );
3826
3826
  }
3827
3827
  const spent = checkpoint.getInput(0);
3828
3828
  if (!spent.txid || spent.index === void 0) {
3829
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3829
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3830
3830
  `${context}: checkpoint ${index} has no input outpoint`
3831
3831
  );
3832
3832
  }
3833
3833
  const outpoint = `${base.hex.encode(spent.txid)}:${spent.index}`;
3834
3834
  const input = byOutpoint.get(outpoint);
3835
3835
  if (!input) {
3836
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3836
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3837
3837
  `${context}: checkpoint ${index} spends ${outpoint}, which is not one of the requested virtual outputs`
3838
3838
  );
3839
3839
  }
@@ -3841,7 +3841,7 @@ function assertCheckpointsMatchInputs(checkpoints, inputs, unrollCandidates, con
3841
3841
  (unroll) => buildCheckpointTx(input, unroll).tx.id === checkpoint.id
3842
3842
  );
3843
3843
  if (!rebuilt) {
3844
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3844
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3845
3845
  `${context}: checkpoint ${index} txid ${checkpoint.id} differs from the checkpoint built locally for ${outpoint}`
3846
3846
  );
3847
3847
  }
@@ -3867,9 +3867,9 @@ async function submitOffchainTx(provider, offchainTx, signer, hooks, options) {
3867
3867
  const matched = matchServerCheckpoints(signedCheckpointTxs, offchainTx.checkpoints, "submitTx");
3868
3868
  matched.forEach(({ server }, index) => {
3869
3869
  try {
3870
- chunkASKOHVGX_cjs.assertAllowedSighashTypes(server);
3870
+ chunkNMDISCGW_cjs.assertAllowedSighashTypes(server);
3871
3871
  } catch (error) {
3872
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3872
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3873
3873
  `submitTx checkpoint ${index}: ${error instanceof Error ? error.message : String(error)}`
3874
3874
  );
3875
3875
  }
@@ -3877,14 +3877,14 @@ async function submitOffchainTx(provider, offchainTx, signer, hooks, options) {
3877
3877
  const verify = options?.verifyServerSignatures;
3878
3878
  if (verify) {
3879
3879
  if (response.finalArkTx === void 0) {
3880
- throw new chunkASKOHVGX_cjs.ServerResponseMismatchError(
3880
+ throw new chunkNMDISCGW_cjs.ServerResponseMismatchError(
3881
3881
  "submitTx: server returned no final ark tx to verify its signatures against"
3882
3882
  );
3883
3883
  }
3884
- const finalArkTx = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(response.finalArkTx));
3884
+ const finalArkTx = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(response.finalArkTx));
3885
3885
  const serverPubkeys = new Set(
3886
3886
  [verify.serverPubkey, ...verify.deprecatedServerPubkeys ?? []].map(
3887
- (key) => base.hex.encode(chunk4MCQZYH6_cjs.toXOnly(key, "server key"))
3887
+ (key) => base.hex.encode(chunkM4DM3N6F_cjs.toXOnly(key, "server key"))
3888
3888
  )
3889
3889
  );
3890
3890
  for (let i = 0; i < offchainTx.arkTx.inputsLength; i++) {
@@ -3948,7 +3948,7 @@ async function submitViaEmulator(emulator, offchainTx, signer, opts) {
3948
3948
  base.base64.encode(arkTx.toPSBT()),
3949
3949
  checkpoints.map((c) => base.base64.encode(c.toPSBT()))
3950
3950
  );
3951
- const txid = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(res.signedArkTx)).id;
3951
+ const txid = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(res.signedArkTx)).id;
3952
3952
  assertSubmittedArkTxid({ arkTxid: txid }, arkTx, "emulator submitTx");
3953
3953
  return { txid, signedArkTx: res.signedArkTx, signedCheckpointTxs: res.signedCheckpointTxs };
3954
3954
  }
@@ -3956,12 +3956,12 @@ function claimWithPreimageIdentity(identity, preimage) {
3956
3956
  return {
3957
3957
  ...identity,
3958
3958
  sign: async (tx, inputIndexes) => {
3959
- const signed = chunkASKOHVGX_cjs.Transaction.fromPSBT(
3959
+ const signed = chunkNMDISCGW_cjs.Transaction.fromPSBT(
3960
3960
  (await identity.sign(tx.clone(), inputIndexes)).toPSBT()
3961
3961
  );
3962
3962
  const indexes = inputIndexes ?? Array.from({ length: signed.inputsLength }, (_, i) => i);
3963
3963
  for (const index of indexes) {
3964
- chunkASKOHVGX_cjs.setArkPsbtField(signed, index, chunkASKOHVGX_cjs.ConditionWitness, [preimage]);
3964
+ chunkNMDISCGW_cjs.setArkPsbtField(signed, index, chunkNMDISCGW_cjs.ConditionWitness, [preimage]);
3965
3965
  }
3966
3966
  return signed;
3967
3967
  }
@@ -4144,7 +4144,7 @@ function extendCoinWithTapscript(boardingTapscript, utxo) {
4144
4144
  };
4145
4145
  }
4146
4146
  function deriveContractTapscripts(contract) {
4147
- const handler = chunk4MCQZYH6_cjs.contractHandlers.get(contract.type);
4147
+ const handler = chunkM4DM3N6F_cjs.contractHandlers.get(contract.type);
4148
4148
  if (!handler) {
4149
4149
  throw new Error(`No handler for contract type '${contract.type}'`);
4150
4150
  }
@@ -4247,7 +4247,7 @@ function assertRecipientArkadeAddress(encoded, address, context) {
4247
4247
  function assertTapTreeDerivesAddress(encoded, tapTree, address) {
4248
4248
  let derived;
4249
4249
  try {
4250
- derived = chunkASKOHVGX_cjs.VtxoScript.decode(tapTree).pkScript;
4250
+ derived = chunkNMDISCGW_cjs.VtxoScript.decode(tapTree).pkScript;
4251
4251
  } catch (e) {
4252
4252
  throw new Error(
4253
4253
  `Invalid tapTree for ${encoded}: ${e instanceof Error ? e.message : String(e)}`
@@ -4264,7 +4264,7 @@ function validateRecipients(recipients, dustAmount, context) {
4264
4264
  for (const recipient of recipients) {
4265
4265
  let address;
4266
4266
  try {
4267
- address = chunkASKOHVGX_cjs.ArkAddress.decode(recipient.address);
4267
+ address = chunkNMDISCGW_cjs.ArkAddress.decode(recipient.address);
4268
4268
  } catch (e) {
4269
4269
  throw new Error(`Invalid Arkade address: ${recipient.address}`);
4270
4270
  }
@@ -4289,7 +4289,7 @@ function validateRecipients(recipients, dustAmount, context) {
4289
4289
 
4290
4290
  // src/contracts/spendability.ts
4291
4291
  function isContractGenericallySpendable(contract) {
4292
- return chunk4MCQZYH6_cjs.contractHandlers.get(contract.type)?.isGenericallySpendable?.(contract) === true;
4292
+ return chunkM4DM3N6F_cjs.contractHandlers.get(contract.type)?.isGenericallySpendable?.(contract) === true;
4293
4293
  }
4294
4294
  function gatedContracts(contracts) {
4295
4295
  const gated = /* @__PURE__ */ new Map();
@@ -4311,7 +4311,7 @@ function gateExclusion(gated) {
4311
4311
  return (vtxo) => {
4312
4312
  const type = gatedTypeOf(vtxo, gated);
4313
4313
  if (type === void 0) return void 0;
4314
- if (!chunk4MCQZYH6_cjs.contractHandlers.has(type)) {
4314
+ if (!chunkM4DM3N6F_cjs.contractHandlers.has(type)) {
4315
4315
  return `at ${vtxo.script} (contract type '${type}') has no handler registered in this build`;
4316
4316
  }
4317
4317
  return `at ${vtxo.script} (contract type '${type}') is not generically spendable`;
@@ -4347,7 +4347,7 @@ function selectPendingRecoveryOutpoints(contractsWithVtxos, signerSet, nowSecond
4347
4347
  continue;
4348
4348
  }
4349
4349
  for (const v of vtxos) {
4350
- if (!chunkASKOHVGX_cjs.isVtxoSpent(v) && !v.isSwept && !v.isUnrolled) {
4350
+ if (!chunkNMDISCGW_cjs.isVtxoSpent(v) && !v.isSwept && !v.isUnrolled) {
4351
4351
  out.add(`${v.txid}:${v.vout}`);
4352
4352
  }
4353
4353
  }
@@ -4383,14 +4383,14 @@ function byValueDescending(vtxos) {
4383
4383
  return [...vtxos].sort((a, b) => b.value - a.value);
4384
4384
  }
4385
4385
  async function fetchTimeHeight(wallet) {
4386
- return chunkASKOHVGX_cjs.resolveTimeHeight(wallet.onchainProvider);
4386
+ return chunkNMDISCGW_cjs.resolveTimeHeight(wallet.onchainProvider);
4387
4387
  }
4388
4388
  function heldVtxosOf(wallet) {
4389
4389
  const held = wallet.getHeldVtxos;
4390
4390
  return typeof held === "function" ? held.call(wallet) : Promise.resolve([]);
4391
4391
  }
4392
4392
  function canMigrateBySend(vtxo, now) {
4393
- if (!chunkASKOHVGX_cjs.canSpendOffchain(vtxo, now)) return false;
4393
+ if (!chunkNMDISCGW_cjs.canSpendOffchain(vtxo, now)) return false;
4394
4394
  return vtxo.expiresAt !== void 0 || vtxo.expiresAtHeight !== void 0;
4395
4395
  }
4396
4396
  function byExpiryAscending(vtxos, now) {
@@ -4398,7 +4398,7 @@ function byExpiryAscending(vtxos, now) {
4398
4398
  if (vtxo.isSwept) return -Infinity;
4399
4399
  if (vtxo.expiresAt !== void 0) return vtxo.expiresAt.getTime();
4400
4400
  if (vtxo.expiresAtHeight !== void 0) {
4401
- return chunkASKOHVGX_cjs.isPastExpiry(vtxo, now) ? -Infinity : Infinity;
4401
+ return chunkNMDISCGW_cjs.isPastExpiry(vtxo, now) ? -Infinity : Infinity;
4402
4402
  }
4403
4403
  return Infinity;
4404
4404
  };
@@ -4425,7 +4425,7 @@ function priceSettlementInputs(vtxos, estimator) {
4425
4425
  const payable = [];
4426
4426
  const net = /* @__PURE__ */ new Map();
4427
4427
  for (const vtxo of vtxos) {
4428
- const inputFee = estimator.evalOffchainInput(chunkASKOHVGX_cjs.toOffchainInputFeeParams(vtxo));
4428
+ const inputFee = estimator.evalOffchainInput(chunkNMDISCGW_cjs.toOffchainInputFeeParams(vtxo));
4429
4429
  if (inputFee.satoshis >= vtxo.value) {
4430
4430
  continue;
4431
4431
  }
@@ -4454,7 +4454,7 @@ function offchainOutputFee(amount, estimator, arkAddress) {
4454
4454
  }
4455
4455
  const outputFee = estimator.evalOffchainOutput({
4456
4456
  amount,
4457
- script: base.hex.encode(chunkASKOHVGX_cjs.ArkAddress.decode(arkAddress).pkScript)
4457
+ script: base.hex.encode(chunkNMDISCGW_cjs.ArkAddress.decode(arkAddress).pkScript)
4458
4458
  });
4459
4459
  return BigInt(outputFee.satoshis);
4460
4460
  }
@@ -4505,10 +4505,10 @@ var DEFAULT_SETTLEMENT_CONFIG = {
4505
4505
  };
4506
4506
  function getRecoverableVtxos(vtxos, dustAmount, now) {
4507
4507
  return vtxos.filter((vtxo) => {
4508
- if (chunkASKOHVGX_cjs.canRecoverOnchain(vtxo, now)) {
4508
+ if (chunkNMDISCGW_cjs.canRecoverOnchain(vtxo, now)) {
4509
4509
  return true;
4510
4510
  }
4511
- if (chunkASKOHVGX_cjs.canSpendOffchain(vtxo, now) && vtxo.isPreconfirmed && isSubdust(vtxo, dustAmount)) {
4511
+ if (chunkNMDISCGW_cjs.canSpendOffchain(vtxo, now) && vtxo.isPreconfirmed && isSubdust(vtxo, dustAmount)) {
4512
4512
  return true;
4513
4513
  }
4514
4514
  return false;
@@ -4540,7 +4540,7 @@ function getRecoverableWithSubdust(vtxos, dustAmount, now) {
4540
4540
  function isVtxoExpiringSoon(vtxo, thresholdMs) {
4541
4541
  if (vtxo.isUnrolled) return false;
4542
4542
  const realThresholdMs = thresholdMs <= 100 ? DEFAULT_THRESHOLD_MS : thresholdMs;
4543
- const expiresAt = chunkASKOHVGX_cjs.normalizeVtxo(vtxo).expiresAt;
4543
+ const expiresAt = chunkNMDISCGW_cjs.normalizeVtxo(vtxo).expiresAt;
4544
4544
  if (expiresAt === void 0) return false;
4545
4545
  const now = Date.now();
4546
4546
  const batchExpiry = expiresAt.getTime();
@@ -4551,7 +4551,7 @@ function getExpiringAndRecoverableVtxos(vtxos, thresholdMs, dustAmount, now) {
4551
4551
  return vtxos.filter(
4552
4552
  // The leading exclusion covers the `isSubdust` arm too, which is a value
4553
4553
  // property and would otherwise re-admit an exited coin on its own.
4554
- (vtxo) => !vtxo.isUnrolled && (isVtxoExpiringSoon(vtxo, thresholdMs) || chunkASKOHVGX_cjs.canRecoverOnchain(vtxo, now) || isSubdust(vtxo, dustAmount))
4554
+ (vtxo) => !vtxo.isUnrolled && (isVtxoExpiringSoon(vtxo, thresholdMs) || chunkNMDISCGW_cjs.canRecoverOnchain(vtxo, now) || isSubdust(vtxo, dustAmount))
4555
4555
  );
4556
4556
  }
4557
4557
  function isMigrationCapable(wallet) {
@@ -4611,7 +4611,7 @@ var VtxoManager = class _VtxoManager {
4611
4611
  constructor(wallet, settlementConfig) {
4612
4612
  this.wallet = wallet;
4613
4613
  if (settlementConfig !== false) {
4614
- chunkASKOHVGX_cjs.assertTimerMs("pollIntervalMs", settlementConfig?.pollIntervalMs);
4614
+ chunkNMDISCGW_cjs.assertTimerMs("pollIntervalMs", settlementConfig?.pollIntervalMs);
4615
4615
  }
4616
4616
  this.settlementConfig = settlementConfig !== void 0 ? settlementConfig : { ...DEFAULT_SETTLEMENT_CONFIG };
4617
4617
  this.contractEventsSubscriptionReady = this.initializeSubscription();
@@ -4918,7 +4918,7 @@ var VtxoManager = class _VtxoManager {
4918
4918
  * {@link recoverImportedContracts}).
4919
4919
  */
4920
4920
  async recoverOneImportedContract(wallet, contract, vtxos, info, dustAmount) {
4921
- const recoverable = vtxos.filter((vtxo) => vtxo.isSwept && !chunkASKOHVGX_cjs.isVtxoSpent(vtxo));
4921
+ const recoverable = vtxos.filter((vtxo) => vtxo.isSwept && !chunkNMDISCGW_cjs.isVtxoSpent(vtxo));
4922
4922
  const estimator = new Estimator(info?.fees.intentFee ?? {});
4923
4923
  const { payable, net } = priceSettlementInputs(recoverable, estimator);
4924
4924
  const vtxoMaxAmount = info?.vtxoMaxAmount ?? -1n;
@@ -4940,7 +4940,7 @@ var VtxoManager = class _VtxoManager {
4940
4940
  if (vtxos.length === 0) return;
4941
4941
  const spent = new Set(batch.map((vtxo) => `${vtxo.txid}:${vtxo.vout}`));
4942
4942
  const stillSpendable = vtxos.some(
4943
- (vtxo) => !chunkASKOHVGX_cjs.isVtxoSpent(vtxo) && !spent.has(`${vtxo.txid}:${vtxo.vout}`)
4943
+ (vtxo) => !chunkNMDISCGW_cjs.isVtxoSpent(vtxo) && !spent.has(`${vtxo.txid}:${vtxo.vout}`)
4944
4944
  );
4945
4945
  if (!stillSpendable) {
4946
4946
  await wallet.removeRecoveryContract(contract.script);
@@ -5232,11 +5232,11 @@ var VtxoManager = class _VtxoManager {
5232
5232
  `Sweep not economical: output ${outputAmount} sats after ${fee} sats fee is below dust (${dustAmount} sats)`
5233
5233
  );
5234
5234
  }
5235
- const tx = new chunkASKOHVGX_cjs.Transaction();
5235
+ const tx = new chunkNMDISCGW_cjs.Transaction();
5236
5236
  for (const utxo of expiredUtxos) {
5237
- const utxoScript = chunkASKOHVGX_cjs.VtxoScript.decode(utxo.tapTree);
5237
+ const utxoScript = chunkNMDISCGW_cjs.VtxoScript.decode(utxo.tapTree);
5238
5238
  const utxoExitLeaf = utxoScript.leaves.find(
5239
- (leaf) => chunkASKOHVGX_cjs.CSVMultisigTapscript.isScriptValid(chunkASKOHVGX_cjs.scriptFromTapLeafScript(leaf)) === true
5239
+ (leaf) => chunkNMDISCGW_cjs.CSVMultisigTapscript.isScriptValid(chunkNMDISCGW_cjs.scriptFromTapLeafScript(leaf)) === true
5240
5240
  );
5241
5241
  if (!utxoExitLeaf) {
5242
5242
  throw new Error(
@@ -5251,7 +5251,7 @@ var VtxoManager = class _VtxoManager {
5251
5251
  amount: BigInt(utxo.value)
5252
5252
  },
5253
5253
  tapLeafScript: [utxoExitLeaf],
5254
- sequence: chunkASKOHVGX_cjs.getSequence(utxoExitLeaf)
5254
+ sequence: chunkNMDISCGW_cjs.getSequence(utxoExitLeaf)
5255
5255
  });
5256
5256
  }
5257
5257
  tx.addOutputAddress(boardingAddress, outputAmount, this.getNetwork());
@@ -5477,8 +5477,8 @@ var VtxoManager = class _VtxoManager {
5477
5477
  const cls = classifyAgainstSignerSet(serverPubKey, signerSet, nowSeconds);
5478
5478
  if (cls.status === "CURRENT") continue;
5479
5479
  const live = vtxos.filter((v) => !v.isUnrolled);
5480
- const recoverable = live.filter((v) => v.isSwept && !chunkASKOHVGX_cjs.isVtxoSpent(v));
5481
- const spendable = live.filter((v) => !chunkASKOHVGX_cjs.isVtxoSpent(v) && !v.isSwept);
5480
+ const recoverable = live.filter((v) => v.isSwept && !chunkNMDISCGW_cjs.isVtxoSpent(v));
5481
+ const spendable = live.filter((v) => !chunkNMDISCGW_cjs.isVtxoSpent(v) && !v.isSwept);
5482
5482
  const value = spendable.reduce((sum, v) => sum + v.value, 0);
5483
5483
  let recoverableCount = 0;
5484
5484
  let recoverableValue = 0;
@@ -5718,7 +5718,7 @@ var VtxoManager = class _VtxoManager {
5718
5718
  }
5719
5719
  getBoardingTimelock() {
5720
5720
  const wallet = this.getSweepWallet();
5721
- const exitScript = chunkASKOHVGX_cjs.CSVMultisigTapscript.decode(
5721
+ const exitScript = chunkNMDISCGW_cjs.CSVMultisigTapscript.decode(
5722
5722
  base.hex.decode(wallet.boardingTapscript.exitScript)
5723
5723
  );
5724
5724
  return exitScript.params.timelock;
@@ -5826,8 +5826,8 @@ var VtxoManager = class _VtxoManager {
5826
5826
  }
5827
5827
  /** The outpoint a `VTXO_ALREADY_SPENT` error carries in `metadata.vtxo_outpoint`, if any. */
5828
5828
  extractSpentOutpoint(error) {
5829
- const ark = chunkASKOHVGX_cjs.maybeArkError(error);
5830
- if (!chunkASKOHVGX_cjs.isArkError(ark, chunkASKOHVGX_cjs.ArkErrorName.VTXO_ALREADY_SPENT)) return void 0;
5829
+ const ark = chunkNMDISCGW_cjs.maybeArkError(error);
5830
+ if (!chunkNMDISCGW_cjs.isArkError(ark, chunkNMDISCGW_cjs.ArkErrorName.VTXO_ALREADY_SPENT)) return void 0;
5831
5831
  const raw = ark.metadata?.vtxo_outpoint;
5832
5832
  if (typeof raw !== "string") return void 0;
5833
5833
  const [txid, voutStr] = raw.split(":");
@@ -6001,7 +6001,7 @@ var VtxoManager = class _VtxoManager {
6001
6001
  if (filteredVtxos.length >= MAX_VTXOS_PER_SETTLEMENT) {
6002
6002
  break;
6003
6003
  }
6004
- const inputFee = estimator.evalOffchainInput(chunkASKOHVGX_cjs.toOffchainInputFeeParams(v));
6004
+ const inputFee = estimator.evalOffchainInput(chunkNMDISCGW_cjs.toOffchainInputFeeParams(v));
6005
6005
  if (inputFee.satoshis >= v.value) {
6006
6006
  continue;
6007
6007
  }
@@ -6021,7 +6021,7 @@ var VtxoManager = class _VtxoManager {
6021
6021
  const arkAddress = await this.wallet.getAddress();
6022
6022
  const outputFee = estimator.evalOffchainOutput({
6023
6023
  amount: totalAmount,
6024
- script: base.hex.encode(chunkASKOHVGX_cjs.ArkAddress.decode(arkAddress).pkScript)
6024
+ script: base.hex.encode(chunkNMDISCGW_cjs.ArkAddress.decode(arkAddress).pkScript)
6025
6025
  });
6026
6026
  totalAmount -= BigInt(outputFee.satoshis);
6027
6027
  if (totalAmount < dustAmount) return;
@@ -6105,7 +6105,7 @@ var ArkNote = class _ArkNote {
6105
6105
  this.value = value;
6106
6106
  this.HRP = HRP;
6107
6107
  const preimageHash = utils_js.sha256(this.preimage);
6108
- this.vtxoScript = new chunkASKOHVGX_cjs.VtxoScript([noteTapscript(preimageHash)]);
6108
+ this.vtxoScript = new chunkNMDISCGW_cjs.VtxoScript([noteTapscript(preimageHash)]);
6109
6109
  const leaf = this.vtxoScript.leaves[0];
6110
6110
  this.txid = base.hex.encode(new Uint8Array(preimageHash).reverse());
6111
6111
  this.tapTree = this.vtxoScript.encode();
@@ -6278,7 +6278,7 @@ var ArkadeCash = class _ArkadeCash {
6278
6278
  const privateKey = data.slice(1, 33);
6279
6279
  const serverPubKey = data.slice(33, 65);
6280
6280
  const sequence = new DataView(data.buffer, data.byteOffset + 65, 4).getUint32(0, false);
6281
- const csvTimelock2 = chunkASKOHVGX_cjs.sequenceToTimelock(sequence);
6281
+ const csvTimelock2 = chunkNMDISCGW_cjs.sequenceToTimelock(sequence);
6282
6282
  return new _ArkadeCash(privateKey, serverPubKey, csvTimelock2, decoded.prefix);
6283
6283
  }
6284
6284
  toString() {
@@ -6286,7 +6286,7 @@ var ArkadeCash = class _ArkadeCash {
6286
6286
  data[0] = _ArkadeCash.Version;
6287
6287
  data.set(this._privateKey, 1);
6288
6288
  data.set(this._serverPubKey, 33);
6289
- const sequence = chunkASKOHVGX_cjs.timelockToSequence(this.csvTimelock);
6289
+ const sequence = chunkNMDISCGW_cjs.timelockToSequence(this.csvTimelock);
6290
6290
  new DataView(data.buffer, data.byteOffset + 65, 4).setUint32(0, sequence, false);
6291
6291
  const words = base.bech32m.toWords(data);
6292
6292
  return base.bech32m.encode(this.hrp, words, 1023);
@@ -6295,7 +6295,7 @@ var ArkadeCash = class _ArkadeCash {
6295
6295
  return SingleKey.fromPrivateKey(this._privateKey);
6296
6296
  }
6297
6297
  get vtxoScript() {
6298
- return new chunk4MCQZYH6_cjs.DefaultVtxo.Script({
6298
+ return new chunkM4DM3N6F_cjs.DefaultVtxo.Script({
6299
6299
  pubKey: this._publicKey,
6300
6300
  serverPubKey: this._serverPubKey,
6301
6301
  csvTimelock: this.csvTimelock
@@ -6311,7 +6311,7 @@ var NON_TERMINAL_INTENT_STATES = ALL_INTENT_STATES.filter(
6311
6311
  (s) => !isTerminalIntentState(s)
6312
6312
  );
6313
6313
  function isConsumed(vtxo) {
6314
- return vtxo !== void 0 && chunkASKOHVGX_cjs.isVtxoSpent(vtxo);
6314
+ return vtxo !== void 0 && chunkNMDISCGW_cjs.isVtxoSpent(vtxo);
6315
6315
  }
6316
6316
  async function classifyIntent(intent, vtxosByOutpoint, now) {
6317
6317
  if (isTerminalIntentState(intent.state)) return void 0;
@@ -6354,7 +6354,7 @@ async function reconcileIntents(deps) {
6354
6354
  let vtxosByOutpoint = /* @__PURE__ */ new Map();
6355
6355
  if (outpoints.length > 0) {
6356
6356
  try {
6357
- const { vtxos } = await chunkASKOHVGX_cjs.getNormalizedVtxos(deps.indexerProvider, { outpoints });
6357
+ const { vtxos } = await chunkNMDISCGW_cjs.getNormalizedVtxos(deps.indexerProvider, { outpoints });
6358
6358
  vtxosByOutpoint = new Map(vtxos.map((v) => [outpointKey(v), v]));
6359
6359
  } catch (e) {
6360
6360
  console.error("reconcileIntents: failed to fetch input VTXO state", e);
@@ -6414,7 +6414,7 @@ async function releaseFromServer(intent, deps, now) {
6414
6414
  });
6415
6415
  }
6416
6416
  function isNoMatchingIntentsError(e) {
6417
- return chunkASKOHVGX_cjs.isArkError(e, chunkASKOHVGX_cjs.ArkErrorName.INVALID_INTENT_PROOF) && e.message.includes("no matching intents found");
6417
+ return chunkNMDISCGW_cjs.isArkError(e, chunkNMDISCGW_cjs.ArkErrorName.INVALID_INTENT_PROOF) && e.message.includes("no matching intents found");
6418
6418
  }
6419
6419
  function terminal(intent, state, now, patch) {
6420
6420
  return { ...intent, ...patch, state, updatedAt: now };
@@ -6633,7 +6633,7 @@ async function captureExitBranch(params) {
6633
6633
  const nonCommitment = ordered.filter((c) => chainTxTypeToChainedExit(c.type) !== 1 /* Commitment */).map((c) => c.txid);
6634
6634
  if (nonCommitment.length > 0) {
6635
6635
  for (const psbt of await resolver.getVirtualTxs(nonCommitment)) {
6636
- psbtByTxid.set(chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(psbt)).id, psbt);
6636
+ psbtByTxid.set(chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(psbt)).id, psbt);
6637
6637
  }
6638
6638
  }
6639
6639
  }
@@ -6676,10 +6676,10 @@ var IndexerExitDataSource = class {
6676
6676
  while (hasMore) {
6677
6677
  const { chain: page, page: meta } = await this.indexer.getVtxoChain(
6678
6678
  { txid: vtxo.txid, vout: vtxo.vout },
6679
- { pageIndex, pageSize: chunkASKOHVGX_cjs.DEFAULT_PAGE_SIZE }
6679
+ { pageIndex, pageSize: chunkNMDISCGW_cjs.DEFAULT_PAGE_SIZE }
6680
6680
  );
6681
6681
  chain.push(...page);
6682
- hasMore = meta ? page.length === chunkASKOHVGX_cjs.DEFAULT_PAGE_SIZE : false;
6682
+ hasMore = meta ? page.length === chunkNMDISCGW_cjs.DEFAULT_PAGE_SIZE : false;
6683
6683
  pageIndex++;
6684
6684
  }
6685
6685
  return chain;
@@ -6691,12 +6691,12 @@ var IndexerExitDataSource = class {
6691
6691
  while (hasMore) {
6692
6692
  const { txs, page } = await this.indexer.getVirtualTxs(txids, {
6693
6693
  pageIndex,
6694
- pageSize: chunkASKOHVGX_cjs.DEFAULT_PAGE_SIZE
6694
+ pageSize: chunkNMDISCGW_cjs.DEFAULT_PAGE_SIZE
6695
6695
  });
6696
6696
  for (const psbt of txs) {
6697
- out.set(chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(psbt)).id, psbt);
6697
+ out.set(chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(psbt)).id, psbt);
6698
6698
  }
6699
- hasMore = page ? txs.length === chunkASKOHVGX_cjs.DEFAULT_PAGE_SIZE : false;
6699
+ hasMore = page ? txs.length === chunkNMDISCGW_cjs.DEFAULT_PAGE_SIZE : false;
6700
6700
  pageIndex++;
6701
6701
  }
6702
6702
  return out;
@@ -6717,7 +6717,7 @@ function chainedTxTypeToChainTxType(t) {
6717
6717
  }
6718
6718
  }
6719
6719
  function psbtInputTxids(psbtBase64) {
6720
- return txInputTxids(chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(psbtBase64)));
6720
+ return txInputTxids(chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(psbtBase64)));
6721
6721
  }
6722
6722
  function txInputTxids(tx) {
6723
6723
  const ids = [];
@@ -7021,10 +7021,10 @@ async function resolveArkInfo(arkProvider, walletRepository, opts) {
7021
7021
  try {
7022
7022
  info = await arkProvider.getInfo();
7023
7023
  } catch (err) {
7024
- if (opts?.requireLive || !chunkASKOHVGX_cjs.isRetryableProviderError(err)) throw err;
7024
+ if (opts?.requireLive || !chunkNMDISCGW_cjs.isRetryableProviderError(err)) throw err;
7025
7025
  const snapshot = await loadArkInfoSnapshot(walletRepository);
7026
7026
  if (!snapshot) {
7027
- throw new chunkASKOHVGX_cjs.ProviderUnavailableError(
7027
+ throw new chunkNMDISCGW_cjs.ProviderUnavailableError(
7028
7028
  "Arkade server info is unavailable and no cached snapshot exists",
7029
7029
  { cause: err }
7030
7030
  );
@@ -7216,7 +7216,7 @@ function buildGraph(rootTxid, chunksByTxid) {
7216
7216
  return new TxTree(rootTx, children);
7217
7217
  }
7218
7218
  function decodeNode(chunk) {
7219
- const tx = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(chunk.tx));
7219
+ const tx = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(chunk.tx));
7220
7220
  return { tx, children: chunk.children };
7221
7221
  }
7222
7222
  exports.Batch = void 0;
@@ -7419,7 +7419,7 @@ function collectArkTxidsNeedingCreatedAt(vtxos, localCreatedAt) {
7419
7419
  return [...txids];
7420
7420
  }
7421
7421
  async function buildTransactionHistory(vtxos, allBoardingTxs, commitmentsToIgnore, resolveTxCreatedAt, gatedScripts = /* @__PURE__ */ new Map()) {
7422
- const normalized = vtxos.map(chunkASKOHVGX_cjs.normalizeVtxo).sort((a, b) => a.createdAt.getTime() - b.createdAt.getTime());
7422
+ const normalized = vtxos.map(chunkNMDISCGW_cjs.normalizeVtxo).sort((a, b) => a.createdAt.getTime() - b.createdAt.getTime());
7423
7423
  const localCreatedAt = localCreatedAtByTxid(normalized);
7424
7424
  const gatedVtxos = normalized.filter((vtxo) => isGatedVtxo(vtxo, gatedScripts));
7425
7425
  const ownVtxos = normalized.filter((vtxo) => !isGatedVtxo(vtxo, gatedScripts));
@@ -7597,7 +7597,7 @@ var AssetManager = class extends ReadonlyAssetManager {
7597
7597
  withRecoverable: false,
7598
7598
  genericallySpendableOnly: true
7599
7599
  });
7600
- const controlAssetRef = params.controlAssetId ? chunkAICUNREA_cjs.AssetRef.fromId(chunkAICUNREA_cjs.AssetId.fromString(params.controlAssetId)) : null;
7600
+ const controlAssetRef = params.controlAssetId ? chunkX2BWPGCY_cjs.AssetRef.fromId(chunkX2BWPGCY_cjs.AssetId.fromString(params.controlAssetId)) : null;
7601
7601
  const coinSelection = selectVirtualCoins(virtualCoins, Number(this.wallet.dustAmount));
7602
7602
  let totalBtcSelected = 0n;
7603
7603
  const assetChanges = /* @__PURE__ */ new Map();
@@ -7610,8 +7610,8 @@ var AssetManager = class extends ReadonlyAssetManager {
7610
7610
  }
7611
7611
  }
7612
7612
  const groups = [];
7613
- const issuedAssetOutput = chunkAICUNREA_cjs.AssetOutput.create(0, params.amount);
7614
- const issuedAssetGroup = chunkAICUNREA_cjs.AssetGroup.create(
7613
+ const issuedAssetOutput = chunkX2BWPGCY_cjs.AssetOutput.create(0, params.amount);
7614
+ const issuedAssetGroup = chunkX2BWPGCY_cjs.AssetGroup.create(
7615
7615
  null,
7616
7616
  controlAssetRef,
7617
7617
  [],
@@ -7624,11 +7624,11 @@ var AssetManager = class extends ReadonlyAssetManager {
7624
7624
  for (const [assetId, amount] of assetChanges) {
7625
7625
  const changeInputs = inputsForAsset(assetInputs, assetId);
7626
7626
  groups.push(
7627
- chunkAICUNREA_cjs.AssetGroup.create(
7628
- chunkAICUNREA_cjs.AssetId.fromString(assetId),
7627
+ chunkX2BWPGCY_cjs.AssetGroup.create(
7628
+ chunkX2BWPGCY_cjs.AssetId.fromString(assetId),
7629
7629
  null,
7630
7630
  changeInputs,
7631
- [chunkAICUNREA_cjs.AssetOutput.create(0, amount)],
7631
+ [chunkX2BWPGCY_cjs.AssetOutput.create(0, amount)],
7632
7632
  []
7633
7633
  )
7634
7634
  );
@@ -7643,7 +7643,7 @@ var AssetManager = class extends ReadonlyAssetManager {
7643
7643
  );
7644
7644
  return {
7645
7645
  arkTxId: arkTxid,
7646
- assetId: chunkAICUNREA_cjs.AssetId.create(arkTxid, 0).toString()
7646
+ assetId: chunkX2BWPGCY_cjs.AssetId.create(arkTxid, 0).toString()
7647
7647
  };
7648
7648
  }
7649
7649
  /**
@@ -7717,23 +7717,23 @@ var AssetManager = class extends ReadonlyAssetManager {
7717
7717
  const assetInputs = selectedCoinsToAssetInputs(selectedCoins);
7718
7718
  const reissueInputs = inputsForAsset(assetInputs, params.assetId);
7719
7719
  const totalAssetAmount = assetToReissueAmount + params.amount;
7720
- const reissueAssetIdObj = chunkAICUNREA_cjs.AssetId.fromString(params.assetId);
7721
- const reissueAssetGroup = chunkAICUNREA_cjs.AssetGroup.create(
7720
+ const reissueAssetIdObj = chunkX2BWPGCY_cjs.AssetId.fromString(params.assetId);
7721
+ const reissueAssetGroup = chunkX2BWPGCY_cjs.AssetGroup.create(
7722
7722
  reissueAssetIdObj,
7723
7723
  null,
7724
7724
  reissueInputs,
7725
- [chunkAICUNREA_cjs.AssetOutput.create(0, totalAssetAmount)],
7725
+ [chunkX2BWPGCY_cjs.AssetOutput.create(0, totalAssetAmount)],
7726
7726
  []
7727
7727
  );
7728
7728
  const groups = [reissueAssetGroup];
7729
7729
  for (const [assetId, amount] of assetChanges) {
7730
7730
  const changeInputs = inputsForAsset(assetInputs, assetId);
7731
7731
  groups.push(
7732
- chunkAICUNREA_cjs.AssetGroup.create(
7733
- chunkAICUNREA_cjs.AssetId.fromString(assetId),
7732
+ chunkX2BWPGCY_cjs.AssetGroup.create(
7733
+ chunkX2BWPGCY_cjs.AssetId.fromString(assetId),
7734
7734
  null,
7735
7735
  changeInputs,
7736
- [chunkAICUNREA_cjs.AssetOutput.create(0, amount)],
7736
+ [chunkX2BWPGCY_cjs.AssetOutput.create(0, amount)],
7737
7737
  []
7738
7738
  )
7739
7739
  );
@@ -7804,11 +7804,11 @@ var AssetManager = class extends ReadonlyAssetManager {
7804
7804
  for (const [assetId, amount] of assetChanges) {
7805
7805
  const changeInputs = inputsForAsset(assetInputs, assetId);
7806
7806
  groups.push(
7807
- chunkAICUNREA_cjs.AssetGroup.create(
7808
- chunkAICUNREA_cjs.AssetId.fromString(assetId),
7807
+ chunkX2BWPGCY_cjs.AssetGroup.create(
7808
+ chunkX2BWPGCY_cjs.AssetId.fromString(assetId),
7809
7809
  null,
7810
7810
  changeInputs,
7811
- amount > 0n ? [chunkAICUNREA_cjs.AssetOutput.create(0, amount)] : [],
7811
+ amount > 0n ? [chunkX2BWPGCY_cjs.AssetOutput.create(0, amount)] : [],
7812
7812
  []
7813
7813
  )
7814
7814
  );
@@ -7821,16 +7821,16 @@ function inputsForAsset(assetInputs, assetId) {
7821
7821
  for (const [inputIndex, assets] of assetInputs) {
7822
7822
  for (const asset of assets) {
7823
7823
  if (asset.assetId !== assetId) continue;
7824
- inputs.push(chunkAICUNREA_cjs.AssetInput.create(inputIndex, asset.amount));
7824
+ inputs.push(chunkX2BWPGCY_cjs.AssetInput.create(inputIndex, asset.amount));
7825
7825
  }
7826
7826
  }
7827
7827
  return inputs;
7828
7828
  }
7829
7829
  async function submitToSelf(submit, wallet, inputs, amount, groups) {
7830
- const outputAddress = chunkASKOHVGX_cjs.ArkAddress.decode(await wallet.getAddress());
7830
+ const outputAddress = chunkNMDISCGW_cjs.ArkAddress.decode(await wallet.getAddress());
7831
7831
  const outputs = [
7832
7832
  { script: outputAddress.pkScript, amount: BigInt(amount) },
7833
- Extension.create([chunkAICUNREA_cjs.Packet.create(groups)]).txOut()
7833
+ Extension.create([chunkX2BWPGCY_cjs.Packet.create(groups)]).txOut()
7834
7834
  ];
7835
7835
  const { arkTxid } = await submit(inputs, outputs);
7836
7836
  return arkTxid;
@@ -7854,7 +7854,7 @@ function castMetadata(metadata) {
7854
7854
  } else {
7855
7855
  throw new Error("Invalid metadata value type");
7856
7856
  }
7857
- md.push(chunkAICUNREA_cjs.Metadata.create(textEncoder.encode(key), valueBytes));
7857
+ md.push(chunkX2BWPGCY_cjs.Metadata.create(textEncoder.encode(key), valueBytes));
7858
7858
  }
7859
7859
  return md;
7860
7860
  }
@@ -7875,10 +7875,10 @@ var DelegateManagerImpl = class {
7875
7875
  if (vtxos.length === 0) {
7876
7876
  return { delegated: [], failed: [] };
7877
7877
  }
7878
- const destinationScript = chunkASKOHVGX_cjs.ArkAddress.decode(destination).pkScript;
7878
+ const destinationScript = chunkNMDISCGW_cjs.ArkAddress.decode(destination).pkScript;
7879
7879
  const arkInfo = await this.arkInfoProvider.getInfo();
7880
7880
  const delegateInfo = await this.delegateProvider.getDelegateInfo();
7881
- const eligible = vtxos.map(chunkASKOHVGX_cjs.normalizeVtxo).filter(
7881
+ const eligible = vtxos.map(chunkNMDISCGW_cjs.normalizeVtxo).filter(
7882
7882
  (v) => isAnnotated(v) && findDelegateTapLeaf(v, delegateInfo.pubkey) !== void 0
7883
7883
  );
7884
7884
  if (eligible.length === 0) {
@@ -7910,7 +7910,7 @@ var DelegateManagerImpl = class {
7910
7910
  const groupByExpiry = /* @__PURE__ */ new Map();
7911
7911
  let recoverableVtxos = [];
7912
7912
  for (const vtxo of eligible) {
7913
- if (chunkASKOHVGX_cjs.canRecoverOnchain(vtxo, now)) {
7913
+ if (chunkNMDISCGW_cjs.canRecoverOnchain(vtxo, now)) {
7914
7914
  recoverableVtxos.push(vtxo);
7915
7915
  continue;
7916
7916
  }
@@ -7962,7 +7962,7 @@ async function delegate(identity, delegateProvider, arkInfo, delegateInfo, vtxos
7962
7962
  }
7963
7963
  if (!delegateAt) {
7964
7964
  const now = { timestamp: /* @__PURE__ */ new Date() };
7965
- const expiryTimestamp = vtxos.filter((coin) => !chunkASKOHVGX_cjs.canRecoverOnchain(coin, now) && coin.expiresAt).reduce(
7965
+ const expiryTimestamp = vtxos.filter((coin) => !chunkNMDISCGW_cjs.canRecoverOnchain(coin, now) && coin.expiresAt).reduce(
7966
7966
  (min, coin) => Math.min(min, coin.expiresAt.getTime()),
7967
7967
  Number.MAX_SAFE_INTEGER
7968
7968
  );
@@ -7989,7 +7989,7 @@ async function delegate(identity, delegateProvider, arkInfo, delegateInfo, vtxos
7989
7989
  let amount = 0n;
7990
7990
  for (const coin of vtxos) {
7991
7991
  const inputFee = estimator.evalOffchainInput({
7992
- ...chunkASKOHVGX_cjs.toOffchainInputFeeParams(coin),
7992
+ ...chunkNMDISCGW_cjs.toOffchainInputFeeParams(coin),
7993
7993
  type: "vtxo"
7994
7994
  });
7995
7995
  if (inputFee.satoshis >= coin.value) {
@@ -8003,7 +8003,7 @@ async function delegate(identity, delegateProvider, arkInfo, delegateInfo, vtxos
8003
8003
  const delegateFee = BigInt(Number(fee));
8004
8004
  if (delegateFee > 0n) {
8005
8005
  outputs.push({
8006
- script: chunkASKOHVGX_cjs.ArkAddress.decode(delegateAddress).pkScript,
8006
+ script: chunkNMDISCGW_cjs.ArkAddress.decode(delegateAddress).pkScript,
8007
8007
  amount: delegateFee
8008
8008
  });
8009
8009
  }
@@ -8036,10 +8036,10 @@ async function delegate(identity, delegateProvider, arkInfo, delegateInfo, vtxos
8036
8036
  destinationScript
8037
8037
  );
8038
8038
  const forfeitOutputScript = btcSigner.OutScript.encode(
8039
- btcSigner.Address(chunkASKOHVGX_cjs.getNetwork(network)).decode(forfeitAddress)
8039
+ btcSigner.Address(chunkNMDISCGW_cjs.getNetwork(network)).decode(forfeitAddress)
8040
8040
  );
8041
8041
  const forfeits = await Promise.all(
8042
- vtxos.filter((v) => chunkASKOHVGX_cjs.requiresForfeit(v)).map(async (coin) => {
8042
+ vtxos.filter((v) => chunkNMDISCGW_cjs.requiresForfeit(v)).map(async (coin) => {
8043
8043
  const forfeit = await makeDelegateForfeitTx(
8044
8044
  coin,
8045
8045
  dust,
@@ -8064,7 +8064,7 @@ async function makeDelegateForfeitTx(input, connectorAmount, delegatePubkey, for
8064
8064
  index: input.vout,
8065
8065
  witnessUtxo: {
8066
8066
  amount: BigInt(input.value),
8067
- script: chunkASKOHVGX_cjs.VtxoScript.decode(input.tapTree).pkScript
8067
+ script: chunkNMDISCGW_cjs.VtxoScript.decode(input.tapTree).pkScript
8068
8068
  },
8069
8069
  sighashType: btcSigner.SigHash.ALL_ANYONECANPAY,
8070
8070
  tapLeafScript: [delegateTapLeaf]
@@ -8122,7 +8122,7 @@ async function makeSignedDelegateIntent(identity, coins, outputs, onchainOutputs
8122
8122
  expire_at: 0,
8123
8123
  cosigners_public_keys: cosignerPubKeys
8124
8124
  };
8125
- const proof = chunkASKOHVGX_cjs.Intent.create(message, coins, outputs);
8125
+ const proof = chunkNMDISCGW_cjs.Intent.create(message, coins, outputs);
8126
8126
  const signedProof = await identity.sign(proof);
8127
8127
  return {
8128
8128
  proof: base.base64.encode(signedProof.toPSBT()),
@@ -8148,10 +8148,10 @@ function getDayTimestamp(timestamp) {
8148
8148
  function findDelegateTapLeaf(vtxo, delegatePubkey) {
8149
8149
  if (!vtxo.tapTree) return void 0;
8150
8150
  const pk = delegatePubkey.length === 66 ? delegatePubkey.slice(2) : delegatePubkey;
8151
- const vtxoScript = chunkASKOHVGX_cjs.VtxoScript.decode(vtxo.tapTree);
8151
+ const vtxoScript = chunkNMDISCGW_cjs.VtxoScript.decode(vtxo.tapTree);
8152
8152
  return vtxoScript.leaves.find((tapLeaf) => {
8153
- const arkTapscript = chunkASKOHVGX_cjs.decodeTapscript(chunkASKOHVGX_cjs.scriptFromTapLeafScript(tapLeaf));
8154
- if (!chunkASKOHVGX_cjs.MultisigTapscript.is(arkTapscript)) return false;
8153
+ const arkTapscript = chunkNMDISCGW_cjs.decodeTapscript(chunkNMDISCGW_cjs.scriptFromTapLeafScript(tapLeaf));
8154
+ if (!chunkNMDISCGW_cjs.MultisigTapscript.is(arkTapscript)) return false;
8155
8155
  return arkTapscript.params.pubkeys.map(base.hex.encode).includes(pk);
8156
8156
  });
8157
8157
  }
@@ -8707,8 +8707,8 @@ function checkSaveVtxosForScript(backend, key, vtxos) {
8707
8707
  }
8708
8708
  async function getVtxosForContract(repo, contract, options) {
8709
8709
  const vtxos = repo.getVtxosForScriptPage ? await collectScriptVtxos(repo, contract.script, options) : filterVtxosForScript(await collectVtxos(repo, contract.address), contract.script);
8710
- const normalized = vtxos.map(chunkASKOHVGX_cjs.normalizeVtxo);
8711
- return options?.unspentOnly ? normalized.filter((vtxo) => !chunkASKOHVGX_cjs.isVtxoSpent(vtxo)) : normalized;
8710
+ const normalized = vtxos.map(chunkNMDISCGW_cjs.normalizeVtxo);
8711
+ return options?.unspentOnly ? normalized.filter((vtxo) => !chunkNMDISCGW_cjs.isVtxoSpent(vtxo)) : normalized;
8712
8712
  }
8713
8713
  async function hasVtxosForContract(repo, contract) {
8714
8714
  if (repo.getVtxosForScriptPage) {
@@ -8939,7 +8939,7 @@ function decodeArkContract(encoded) {
8939
8939
  }
8940
8940
  function contractFromArkContract(encoded, options = {}) {
8941
8941
  const parsed = decodeArkContract(encoded);
8942
- const handler = chunk4MCQZYH6_cjs.contractHandlers.get(parsed.type);
8942
+ const handler = chunkM4DM3N6F_cjs.contractHandlers.get(parsed.type);
8943
8943
  if (!handler) {
8944
8944
  throw new Error(`No handler registered for contract type '${parsed.type}'`);
8945
8945
  }
@@ -8953,9 +8953,9 @@ function contractFromArkContract(encoded, options = {}) {
8953
8953
  metadata: options.metadata
8954
8954
  };
8955
8955
  }
8956
- function contractFromArkContractWithAddress(encoded, serverPubKey, addressPrefix = chunkASKOHVGX_cjs.DEFAULT_NETWORK.hrp, options = {}) {
8956
+ function contractFromArkContractWithAddress(encoded, serverPubKey, addressPrefix = chunkNMDISCGW_cjs.DEFAULT_NETWORK.hrp, options = {}) {
8957
8957
  const parsed = decodeArkContract(encoded);
8958
- const handler = chunk4MCQZYH6_cjs.contractHandlers.getOrThrow(parsed.type);
8958
+ const handler = chunkM4DM3N6F_cjs.contractHandlers.getOrThrow(parsed.type);
8959
8959
  const params = parsed.data;
8960
8960
  const vtxoScript = handler.createScript(params);
8961
8961
  return {
@@ -9012,10 +9012,10 @@ var ContractWatcher = class {
9012
9012
  eventSourceReported = false;
9013
9013
  /** @see ContractWatcherConfig */
9014
9014
  constructor(config) {
9015
- chunkASKOHVGX_cjs.assertTimerMs("failsafePollIntervalMs", config.failsafePollIntervalMs);
9016
- chunkASKOHVGX_cjs.assertTimerMs("reconnectDelayMs", config.reconnectDelayMs);
9017
- chunkASKOHVGX_cjs.assertTimerMs("maxReconnectDelayMs", config.maxReconnectDelayMs);
9018
- chunkASKOHVGX_cjs.assertTimerMs("subscriptionRequestTimeoutMs", config.subscriptionRequestTimeoutMs);
9015
+ chunkNMDISCGW_cjs.assertTimerMs("failsafePollIntervalMs", config.failsafePollIntervalMs);
9016
+ chunkNMDISCGW_cjs.assertTimerMs("reconnectDelayMs", config.reconnectDelayMs);
9017
+ chunkNMDISCGW_cjs.assertTimerMs("maxReconnectDelayMs", config.maxReconnectDelayMs);
9018
+ chunkNMDISCGW_cjs.assertTimerMs("subscriptionRequestTimeoutMs", config.subscriptionRequestTimeoutMs);
9019
9019
  if (config.subscriptionRequestTimeoutMs === 0) {
9020
9020
  throw new Error("subscriptionRequestTimeoutMs must be greater than 0");
9021
9021
  }
@@ -9238,9 +9238,9 @@ var ContractWatcher = class {
9238
9238
  this.reconnectAttempts = 0;
9239
9239
  this.listenLoop().catch((e) => {
9240
9240
  if (!this.isWatching || signal?.aborted) return;
9241
- if (chunkASKOHVGX_cjs.isEventSourceError(e)) {
9241
+ if (chunkNMDISCGW_cjs.isEventSourceError(e)) {
9242
9242
  console.debug("ContractWatcher subscription disconnected; reconnecting");
9243
- } else if (!chunkASKOHVGX_cjs.isEventSourceUnavailableError(e)) {
9243
+ } else if (!chunkNMDISCGW_cjs.isEventSourceUnavailableError(e)) {
9244
9244
  console.error(e);
9245
9245
  }
9246
9246
  this.connectionState = "disconnected";
@@ -9250,7 +9250,7 @@ var ContractWatcher = class {
9250
9250
  });
9251
9251
  } catch (error) {
9252
9252
  if (!this.isWatching || signal?.aborted) return;
9253
- if (!chunkASKOHVGX_cjs.isEventSourceUnavailableError(error)) {
9253
+ if (!chunkNMDISCGW_cjs.isEventSourceUnavailableError(error)) {
9254
9254
  console.error("ContractWatcher connection failed:", error);
9255
9255
  }
9256
9256
  this.connectionState = "disconnected";
@@ -9266,7 +9266,7 @@ var ContractWatcher = class {
9266
9266
  * few seconds.
9267
9267
  */
9268
9268
  reportEventSourceUnavailable(error) {
9269
- if (!chunkASKOHVGX_cjs.isEventSourceUnavailableError(error)) return false;
9269
+ if (!chunkNMDISCGW_cjs.isEventSourceUnavailableError(error)) return false;
9270
9270
  if (!this.eventSourceReported) {
9271
9271
  this.eventSourceReported = true;
9272
9272
  console.warn(
@@ -9331,7 +9331,7 @@ var ContractWatcher = class {
9331
9331
  const now = Date.now();
9332
9332
  let current;
9333
9333
  try {
9334
- current = await chunkASKOHVGX_cjs.getAllNormalizedVtxos(this.config.indexerProvider, scripts, {
9334
+ current = await chunkNMDISCGW_cjs.getAllNormalizedVtxos(this.config.indexerProvider, scripts, {
9335
9335
  spendableOnly: true
9336
9336
  });
9337
9337
  } catch (error) {
@@ -9613,14 +9613,14 @@ var ContractWatcher = class {
9613
9613
  const timestamp = Date.now();
9614
9614
  if (update.newVtxos?.length) {
9615
9615
  this.processSubscriptionVtxos(
9616
- update.newVtxos.map(chunkASKOHVGX_cjs.normalizeVtxo),
9616
+ update.newVtxos.map(chunkNMDISCGW_cjs.normalizeVtxo),
9617
9617
  "vtxo_received",
9618
9618
  timestamp
9619
9619
  );
9620
9620
  }
9621
9621
  if (update.spentVtxos?.length) {
9622
9622
  this.processSubscriptionVtxos(
9623
- update.spentVtxos.map(chunkASKOHVGX_cjs.normalizeVtxo),
9623
+ update.spentVtxos.map(chunkNMDISCGW_cjs.normalizeVtxo),
9624
9624
  "vtxo_spent",
9625
9625
  timestamp
9626
9626
  );
@@ -9645,8 +9645,8 @@ var ContractWatcher = class {
9645
9645
  continue;
9646
9646
  }
9647
9647
  if (target === byWatchedScript && eventType === "vtxo_received") {
9648
- const n = chunkASKOHVGX_cjs.normalizeVtxo(vtxo);
9649
- if (chunkASKOHVGX_cjs.isVtxoSpent(n) || n.isSwept || chunkASKOHVGX_cjs.isPastExpiry(n, now)) continue;
9648
+ const n = chunkNMDISCGW_cjs.normalizeVtxo(vtxo);
9649
+ if (chunkNMDISCGW_cjs.isVtxoSpent(n) || n.isSwept || chunkNMDISCGW_cjs.isPastExpiry(n, now)) continue;
9650
9650
  }
9651
9651
  let bucket = target.get(vtxo.script);
9652
9652
  if (!bucket) {
@@ -9787,7 +9787,7 @@ function annotatableIn(scriptToContract, vtxos, memo) {
9787
9787
  if (!contract) continue;
9788
9788
  try {
9789
9789
  const key = contractKey(contract);
9790
- const handler = chunk4MCQZYH6_cjs.contractHandlers.get(contract.type);
9790
+ const handler = chunkM4DM3N6F_cjs.contractHandlers.get(contract.type);
9791
9791
  const hit = memo?.get(script);
9792
9792
  let tapscripts;
9793
9793
  if (hit && hit.key === key && hit.handler === handler) {
@@ -9808,7 +9808,7 @@ function annotatableIn(scriptToContract, vtxos, memo) {
9808
9808
  scripts.add(script);
9809
9809
  } catch (err) {
9810
9810
  const reason = `'${contract.type}' at ${script}: ${err instanceof Error ? err.message : String(err)}`;
9811
- if (err instanceof chunk4MCQZYH6_cjs.UnsupportedProgramVersionError) {
9811
+ if (err instanceof chunkM4DM3N6F_cjs.UnsupportedProgramVersionError) {
9812
9812
  unsupported.set(script, { key: contractKey(contract), reason });
9813
9813
  } else {
9814
9814
  failures.set(script, reason);
@@ -9819,7 +9819,7 @@ function annotatableIn(scriptToContract, vtxos, memo) {
9819
9819
  }
9820
9820
  function annotateAgainst(vtxos, byScript, tapscripts = /* @__PURE__ */ new Map()) {
9821
9821
  return vtxos.map(
9822
- (vtxo) => extendVirtualCoinForContract(chunkASKOHVGX_cjs.normalizeVtxo(vtxo), byScript, tapscripts)
9822
+ (vtxo) => extendVirtualCoinForContract(chunkNMDISCGW_cjs.normalizeVtxo(vtxo), byScript, tapscripts)
9823
9823
  );
9824
9824
  }
9825
9825
  var SCAN_MAX_INDEX = 1e4;
@@ -9863,8 +9863,8 @@ var ContractManager = class _ContractManager {
9863
9863
  * `dispose()`, so it re-checks this at every await rather than run on a torn-down watcher. */
9864
9864
  disposed = false;
9865
9865
  constructor(config) {
9866
- chunkASKOHVGX_cjs.assertNonNegativeMs("vtxoSyncMaxAgeMs", config.vtxoSyncMaxAgeMs);
9867
- chunkASKOHVGX_cjs.assertNonNegativeMs("vtxoSyncOverlapMs", config.vtxoSyncOverlapMs);
9866
+ chunkNMDISCGW_cjs.assertNonNegativeMs("vtxoSyncMaxAgeMs", config.vtxoSyncMaxAgeMs);
9867
+ chunkNMDISCGW_cjs.assertNonNegativeMs("vtxoSyncOverlapMs", config.vtxoSyncOverlapMs);
9868
9868
  this.config = { ...config };
9869
9869
  this.watcher = new ContractWatcher({
9870
9870
  indexerProvider: config.indexerProvider,
@@ -9900,12 +9900,12 @@ var ContractManager = class _ContractManager {
9900
9900
  }
9901
9901
  /** @see ContractManagerConfig.vtxoSyncMaxAgeMs — for factory-built managers. */
9902
9902
  setVtxoSyncMaxAge(maxAgeMs) {
9903
- chunkASKOHVGX_cjs.assertNonNegativeMs("vtxoSyncMaxAgeMs", maxAgeMs);
9903
+ chunkNMDISCGW_cjs.assertNonNegativeMs("vtxoSyncMaxAgeMs", maxAgeMs);
9904
9904
  this.config.vtxoSyncMaxAgeMs = maxAgeMs;
9905
9905
  }
9906
9906
  /** @see ContractManagerConfig.vtxoSyncOverlapMs — for factory-built managers. */
9907
9907
  setVtxoSyncOverlap(overlapMs) {
9908
- chunkASKOHVGX_cjs.assertNonNegativeMs("vtxoSyncOverlapMs", overlapMs);
9908
+ chunkNMDISCGW_cjs.assertNonNegativeMs("vtxoSyncOverlapMs", overlapMs);
9909
9909
  this.config.vtxoSyncOverlapMs = overlapMs;
9910
9910
  }
9911
9911
  markSyncOnline() {
@@ -9969,10 +9969,10 @@ var ContractManager = class _ContractManager {
9969
9969
  if (this.unsupportedContracts.get(contract.script) === key) return true;
9970
9970
  if (this.tapscriptMemo.get(contract.script)?.key === key) return false;
9971
9971
  try {
9972
- chunk4MCQZYH6_cjs.contractHandlers.get(contract.type)?.createScript(contract.params);
9972
+ chunkM4DM3N6F_cjs.contractHandlers.get(contract.type)?.createScript(contract.params);
9973
9973
  return false;
9974
9974
  } catch (err) {
9975
- if (!(err instanceof chunk4MCQZYH6_cjs.UnsupportedProgramVersionError)) return false;
9975
+ if (!(err instanceof chunkM4DM3N6F_cjs.UnsupportedProgramVersionError)) return false;
9976
9976
  this.unsupportedContracts.set(contract.script, key);
9977
9977
  return true;
9978
9978
  }
@@ -9985,7 +9985,7 @@ var ContractManager = class _ContractManager {
9985
9985
  this.markSyncOnline();
9986
9986
  return void 0;
9987
9987
  } catch (err) {
9988
- if (!chunkASKOHVGX_cjs.isRetryableProviderError(err)) throw err;
9988
+ if (!chunkNMDISCGW_cjs.isRetryableProviderError(err)) throw err;
9989
9989
  this.markSyncDegraded(err);
9990
9990
  return err;
9991
9991
  }
@@ -10008,7 +10008,7 @@ var ContractManager = class _ContractManager {
10008
10008
  try {
10009
10009
  await this.scheduleLookAheadDrain();
10010
10010
  } catch (err) {
10011
- if (!chunkASKOHVGX_cjs.isRetryableProviderError(err)) throw err;
10011
+ if (!chunkNMDISCGW_cjs.isRetryableProviderError(err)) throw err;
10012
10012
  this.lookAheadRefillOwed = true;
10013
10013
  this.markSyncDegraded(err);
10014
10014
  }
@@ -10071,7 +10071,7 @@ var ContractManager = class _ContractManager {
10071
10071
  /** No throw: construction returned long ago, so the state is the channel. */
10072
10072
  reportBackgroundFailure(stage, err) {
10073
10073
  this.markSyncDegraded(err);
10074
- if (!chunkASKOHVGX_cjs.isRetryableProviderError(err)) {
10074
+ if (!chunkNMDISCGW_cjs.isRetryableProviderError(err)) {
10075
10075
  console.error(`[contracts] background ${stage} failed`, err);
10076
10076
  }
10077
10077
  }
@@ -10173,7 +10173,7 @@ var ContractManager = class _ContractManager {
10173
10173
  const from = Math.max(0, watermark - lookAhead.size);
10174
10174
  const to = watermark + lookAhead.size;
10175
10175
  const deps = lookAhead.candidateDeps();
10176
- const handlers = chunk4MCQZYH6_cjs.contractHandlers.getRegisteredTypes().map((t) => chunk4MCQZYH6_cjs.contractHandlers.get(t)).filter(hasCandidates);
10176
+ const handlers = chunkM4DM3N6F_cjs.contractHandlers.getRegisteredTypes().map((t) => chunkM4DM3N6F_cjs.contractHandlers.get(t)).filter(hasCandidates);
10177
10177
  const band = /* @__PURE__ */ new Map();
10178
10178
  for (let index = from; index <= to; index++) {
10179
10179
  const descriptor = lookAhead.materialize(index);
@@ -10184,7 +10184,7 @@ var ContractManager = class _ContractManager {
10184
10184
  index,
10185
10185
  params: {
10186
10186
  ...candidate,
10187
- ...chunk4MCQZYH6_cjs.speculativeReceiveMetadata(descriptor)
10187
+ ...chunkM4DM3N6F_cjs.speculativeReceiveMetadata(descriptor)
10188
10188
  }
10189
10189
  });
10190
10190
  }
@@ -10243,7 +10243,7 @@ var ContractManager = class _ContractManager {
10243
10243
  });
10244
10244
  for (const entry of pending) entry.catchUpPending = false;
10245
10245
  } catch (err) {
10246
- if (!chunkASKOHVGX_cjs.isRetryableProviderError(err)) throw err;
10246
+ if (!chunkNMDISCGW_cjs.isRetryableProviderError(err)) throw err;
10247
10247
  this.markSyncDegraded(err);
10248
10248
  }
10249
10249
  }
@@ -10334,7 +10334,7 @@ var ContractManager = class _ContractManager {
10334
10334
  return result;
10335
10335
  }
10336
10336
  async upsertContractRow(params) {
10337
- const handler = chunk4MCQZYH6_cjs.contractHandlers.get(params.type);
10337
+ const handler = chunkM4DM3N6F_cjs.contractHandlers.get(params.type);
10338
10338
  if (!handler) {
10339
10339
  throw new Error(`No handler registered for contract type '${params.type}'`);
10340
10340
  }
@@ -10433,7 +10433,7 @@ var ContractManager = class _ContractManager {
10433
10433
  `scanContracts: batchSize must be a positive integer (got ${String(opts.batchSize)})`
10434
10434
  );
10435
10435
  }
10436
- const registered = chunk4MCQZYH6_cjs.contractHandlers.getRegisteredTypes().map((t) => chunk4MCQZYH6_cjs.contractHandlers.get(t)).filter(isDiscoverable);
10436
+ const registered = chunkM4DM3N6F_cjs.contractHandlers.getRegisteredTypes().map((t) => chunkM4DM3N6F_cjs.contractHandlers.get(t)).filter(isDiscoverable);
10437
10437
  const discoverables = [
10438
10438
  ...registered.filter((h) => h.type === "boarding"),
10439
10439
  ...registered.filter((h) => h.type !== "boarding")
@@ -10564,7 +10564,7 @@ var ContractManager = class _ContractManager {
10564
10564
  return contracts.filter((contract) => this.isUnsupported(contract));
10565
10565
  }
10566
10566
  async getContractsWithVtxos(filter, pageSize, options) {
10567
- chunkASKOHVGX_cjs.assertNonNegativeMs("maxSyncAgeMs", options?.maxSyncAgeMs);
10567
+ chunkNMDISCGW_cjs.assertNonNegativeMs("maxSyncAgeMs", options?.maxSyncAgeMs);
10568
10568
  const contracts = await this.getContracts(filter);
10569
10569
  if (this.syncedWithin(
10570
10570
  contracts,
@@ -10672,14 +10672,14 @@ var ContractManager = class _ContractManager {
10672
10672
  const byScript = new Map(contracts.map((contract) => [contract.script, contract]));
10673
10673
  const asking = vtxos.filter((vtxo) => {
10674
10674
  const contract = byScript.get(vtxo.script);
10675
- return contract !== void 0 && chunk4MCQZYH6_cjs.contractHandlers.get(contract.type)?.assertSpendableNow !== void 0;
10675
+ return contract !== void 0 && chunkM4DM3N6F_cjs.contractHandlers.get(contract.type)?.assertSpendableNow !== void 0;
10676
10676
  });
10677
10677
  if (asking.length === 0) return refused;
10678
10678
  const tip = await this.currentChainTip();
10679
10679
  const walletDescriptorValue = await walletDescriptor?.();
10680
10680
  for (const vtxo of asking) {
10681
10681
  const contract = byScript.get(vtxo.script);
10682
- const handler = chunk4MCQZYH6_cjs.contractHandlers.get(contract.type);
10682
+ const handler = chunkM4DM3N6F_cjs.contractHandlers.get(contract.type);
10683
10683
  if (!handler?.assertSpendableNow) continue;
10684
10684
  const context = {
10685
10685
  collaborative: true,
@@ -10689,7 +10689,7 @@ var ContractManager = class _ContractManager {
10689
10689
  walletDescriptor: walletDescriptorValue,
10690
10690
  // `isVirtualCoin` only checks `script`, which every input has; `isCsvSpendable`
10691
10691
  // reads `vtxo.status.block_time` unguarded, so require `status` too.
10692
- vtxo: chunkASKOHVGX_cjs.isVirtualCoin(vtxo) && "status" in vtxo ? vtxo : void 0
10692
+ vtxo: chunkNMDISCGW_cjs.isVirtualCoin(vtxo) && "status" in vtxo ? vtxo : void 0
10693
10693
  };
10694
10694
  try {
10695
10695
  await handler.assertSpendableNow(
@@ -10802,7 +10802,7 @@ var ContractManager = class _ContractManager {
10802
10802
  const { contractScript, collaborative = true, walletDescriptor, vtxo } = options;
10803
10803
  const [contract] = await this.getContracts({ script: contractScript });
10804
10804
  if (!contract) return [];
10805
- const handler = chunk4MCQZYH6_cjs.contractHandlers.get(contract.type);
10805
+ const handler = chunkM4DM3N6F_cjs.contractHandlers.get(contract.type);
10806
10806
  if (!handler) return [];
10807
10807
  const script = handler.createScript(contract.params);
10808
10808
  const tip = await this.currentChainTip();
@@ -10824,7 +10824,7 @@ var ContractManager = class _ContractManager {
10824
10824
  const { contractScript, collaborative = true, walletDescriptor } = options;
10825
10825
  const [contract] = await this.getContracts({ script: contractScript });
10826
10826
  if (!contract) return [];
10827
- const handler = chunk4MCQZYH6_cjs.contractHandlers.get(contract.type);
10827
+ const handler = chunkM4DM3N6F_cjs.contractHandlers.get(contract.type);
10828
10828
  if (!handler) return [];
10829
10829
  const script = handler.createScript(contract.params);
10830
10830
  const context = {
@@ -10870,7 +10870,7 @@ var ContractManager = class _ContractManager {
10870
10870
  }
10871
10871
  async refreshOutpoints(outpoints) {
10872
10872
  if (outpoints.length === 0) return;
10873
- const { vtxos } = await chunkASKOHVGX_cjs.getNormalizedVtxos(this.config.indexerProvider, {
10873
+ const { vtxos } = await chunkNMDISCGW_cjs.getNormalizedVtxos(this.config.indexerProvider, {
10874
10874
  outpoints
10875
10875
  });
10876
10876
  if (vtxos.length === 0) return;
@@ -10972,7 +10972,7 @@ var ContractManager = class _ContractManager {
10972
10972
  break;
10973
10973
  }
10974
10974
  } catch (err) {
10975
- if (!chunkASKOHVGX_cjs.isRetryableProviderError(err)) throw err;
10975
+ if (!chunkNMDISCGW_cjs.isRetryableProviderError(err)) throw err;
10976
10976
  this.markSyncDegraded(err);
10977
10977
  synced = false;
10978
10978
  }
@@ -11060,7 +11060,7 @@ var ContractManager = class _ContractManager {
11060
11060
  */
11061
11061
  async reconcilePendingFrontier(contracts) {
11062
11062
  const scriptToContract = new Map(contracts.map((c) => [c.script, c]));
11063
- const vtxos = await chunkASKOHVGX_cjs.getAllNormalizedVtxos(
11063
+ const vtxos = await chunkNMDISCGW_cjs.getAllNormalizedVtxos(
11064
11064
  this.config.indexerProvider,
11065
11065
  contracts.map((c) => c.script),
11066
11066
  { pendingOnly: true }
@@ -11135,7 +11135,7 @@ var ContractManager = class _ContractManager {
11135
11135
  }
11136
11136
  return result;
11137
11137
  }
11138
- async fetchContractVtxosBulk(contracts, pageSize = chunkASKOHVGX_cjs.DEFAULT_PAGE_SIZE, syncWindow) {
11138
+ async fetchContractVtxosBulk(contracts, pageSize = chunkNMDISCGW_cjs.DEFAULT_PAGE_SIZE, syncWindow) {
11139
11139
  if (contracts.length === 0) {
11140
11140
  return { vtxosByScript: /* @__PURE__ */ new Map(), promoted: /* @__PURE__ */ new Map() };
11141
11141
  }
@@ -11151,7 +11151,7 @@ var ContractManager = class _ContractManager {
11151
11151
  before: syncWindow.before
11152
11152
  }
11153
11153
  } : {};
11154
- const vtxos = await chunkASKOHVGX_cjs.getAllNormalizedVtxos(
11154
+ const vtxos = await chunkNMDISCGW_cjs.getAllNormalizedVtxos(
11155
11155
  this.config.indexerProvider,
11156
11156
  contracts.map((c) => c.script),
11157
11157
  { ...windowOpts, pageSize }
@@ -11254,7 +11254,7 @@ function parseLegacyExpiry(batchExpiry) {
11254
11254
  if (typeof batchExpiry !== "number" || !Number.isFinite(batchExpiry) || batchExpiry <= 0) {
11255
11255
  return {};
11256
11256
  }
11257
- if (batchExpiry >= chunkASKOHVGX_cjs.EXPIRY_MIN_PLAUSIBLE_MS) return { expiresAt: new Date(batchExpiry) };
11257
+ if (batchExpiry >= chunkNMDISCGW_cjs.EXPIRY_MIN_PLAUSIBLE_MS) return { expiresAt: new Date(batchExpiry) };
11258
11258
  return { expiresAtHeight: batchExpiry / 1e3 };
11259
11259
  }
11260
11260
  function legacyVtxoFacts(status) {
@@ -11492,7 +11492,7 @@ function backfillContractWatchState(store) {
11492
11492
  };
11493
11493
  readPage();
11494
11494
  }
11495
- var unspentFlag = (vtxo) => chunkASKOHVGX_cjs.isVtxoSpent(vtxo) ? {} : { unspent: 1 };
11495
+ var unspentFlag = (vtxo) => chunkNMDISCGW_cjs.isVtxoSpent(vtxo) ? {} : { unspent: 1 };
11496
11496
  function backfillVtxoIndexFields(transaction) {
11497
11497
  const store = transaction.objectStore(STORE_VTXOS);
11498
11498
  const pageSize = 1e3;
@@ -11523,7 +11523,7 @@ var DEFAULT_DB_NAME = "arkade-service-worker";
11523
11523
  var DEFAULT_SERVICE_WORKER_ACTIVATION_TIMEOUT_MS = 1e4;
11524
11524
  function normalizeOptions2(pathOrOptions) {
11525
11525
  const o = typeof pathOrOptions === "string" ? { path: pathOrOptions } : pathOrOptions;
11526
- chunkASKOHVGX_cjs.assertTimerMs("activationTimeoutMs", o.activationTimeoutMs);
11526
+ chunkNMDISCGW_cjs.assertTimerMs("activationTimeoutMs", o.activationTimeoutMs);
11527
11527
  return {
11528
11528
  path: o.path,
11529
11529
  activationTimeoutMs: o.activationTimeoutMs ?? DEFAULT_SERVICE_WORKER_ACTIVATION_TIMEOUT_MS
@@ -11742,7 +11742,7 @@ var deserializeTapLeaf = (t) => {
11742
11742
  const s = base.hex.decode(t.s);
11743
11743
  return [cb, s];
11744
11744
  };
11745
- var deserializeVtxo = (o) => chunkASKOHVGX_cjs.normalizeVtxo({
11745
+ var deserializeVtxo = (o) => chunkNMDISCGW_cjs.normalizeVtxo({
11746
11746
  ...o,
11747
11747
  createdAt: new Date(o.createdAt),
11748
11748
  tapTree: base.hex.decode(o.tapTree),
@@ -12097,7 +12097,7 @@ var RestEmulatorProvider = class {
12097
12097
  serverUrl;
12098
12098
  async getInfo() {
12099
12099
  const url = `${this.serverUrl}/v1/info`;
12100
- const response = await chunkASKOHVGX_cjs.baseFetch(url);
12100
+ const response = await chunkNMDISCGW_cjs.baseFetch(url);
12101
12101
  if (!response.ok) {
12102
12102
  const errorText2 = await response.text();
12103
12103
  throw new Error(`Failed to get emulator info: ${errorText2}`);
@@ -12217,11 +12217,11 @@ var RestEmulatorProvider = class {
12217
12217
 
12218
12218
  // src/arkade/service.ts
12219
12219
  function arkadeServiceUrl(service) {
12220
- return "operatorUrl" in service ? service.operatorUrl : chunkASKOHVGX_cjs.DEFAULT_ARKADE_SERVER_URL;
12220
+ return "operatorUrl" in service ? service.operatorUrl : chunkNMDISCGW_cjs.DEFAULT_ARKADE_SERVER_URL;
12221
12221
  }
12222
12222
  async function resolveArkadeService(service, opts = {}) {
12223
12223
  const operatorUrl = arkadeServiceUrl(service);
12224
- const arkProvider = opts.arkProvider ?? new chunkASKOHVGX_cjs.RestArkProvider(operatorUrl);
12224
+ const arkProvider = opts.arkProvider ?? new chunkNMDISCGW_cjs.RestArkProvider(operatorUrl);
12225
12225
  const info = opts.info ?? await arkProvider.getInfo();
12226
12226
  if ("network" in service && service.network !== info.network) {
12227
12227
  throw new Error(
@@ -12234,13 +12234,13 @@ async function resolveArkadeService(service, opts = {}) {
12234
12234
  }
12235
12235
  let emulator;
12236
12236
  if ("network" in service) {
12237
- emulator = new RestEmulatorProvider(chunkASKOHVGX_cjs.DEFAULT_ARKADE_EMULATOR_URL);
12237
+ emulator = new RestEmulatorProvider(chunkNMDISCGW_cjs.DEFAULT_ARKADE_EMULATOR_URL);
12238
12238
  } else if (service.emulatorUrl) {
12239
12239
  emulator = new RestEmulatorProvider(service.emulatorUrl);
12240
12240
  }
12241
12241
  return {
12242
12242
  arkProvider,
12243
- indexerProvider: new chunkAICUNREA_cjs.RestIndexerProvider(operatorUrl),
12243
+ indexerProvider: new chunkX2BWPGCY_cjs.RestIndexerProvider(operatorUrl),
12244
12244
  onchainProvider: new EsploraProvider(esploraUrl),
12245
12245
  emulator,
12246
12246
  info
@@ -12324,7 +12324,7 @@ var HDDescriptorProvider = class _HDDescriptorProvider {
12324
12324
  */
12325
12325
  materializeDescriptorAt(index) {
12326
12326
  const descriptor = this.identity.descriptor;
12327
- const network = chunk4MCQZYH6_cjs.isMainnetDescriptor(descriptor) ? descriptorsScure.networks.bitcoin : descriptorsScure.networks.testnet;
12327
+ const network = chunkM4DM3N6F_cjs.isMainnetDescriptor(descriptor) ? descriptorsScure.networks.bitcoin : descriptorsScure.networks.testnet;
12328
12328
  const expansion = descriptorsScure.expand({ descriptor, network, index });
12329
12329
  const keyInfo = expansion.expansionMap?.["@0"];
12330
12330
  if (!keyInfo?.keyExpression) {
@@ -12392,7 +12392,7 @@ function signingDescriptorIndex(descriptor) {
12392
12392
  }
12393
12393
  function newestWalletReceiveContract(contracts, serverPubKeyHex) {
12394
12394
  return contracts.filter(
12395
- (c) => c.params.serverPubKey === serverPubKeyHex && c.metadata?.source === chunk4MCQZYH6_cjs.WALLET_RECEIVE_SOURCE
12395
+ (c) => c.params.serverPubKey === serverPubKeyHex && c.metadata?.source === chunkM4DM3N6F_cjs.WALLET_RECEIVE_SOURCE
12396
12396
  ).sort((a, b) => {
12397
12397
  if (b.createdAt !== a.createdAt) return b.createdAt - a.createdAt;
12398
12398
  return signingDescriptorIndex(b.metadata?.signingDescriptor) - signingDescriptorIndex(a.metadata?.signingDescriptor);
@@ -12443,7 +12443,7 @@ var WalletReceiveRotator = class _WalletReceiveRotator {
12443
12443
  const provider = await resolveDescriptorProvider(config, setup.walletRepository);
12444
12444
  if (!provider) return void 0;
12445
12445
  const allowSilentFallback = (config.walletMode ?? "auto") === "auto";
12446
- const expectedContractType = setup.offchainTapscript instanceof chunk4MCQZYH6_cjs.DelegateVtxo.Script ? "delegate" : "default";
12446
+ const expectedContractType = setup.offchainTapscript instanceof chunkM4DM3N6F_cjs.DelegateVtxo.Script ? "delegate" : "default";
12447
12447
  const factoryOpts = {
12448
12448
  walletRepository: setup.walletRepository,
12449
12449
  contractRepository: setup.contractRepository,
@@ -12600,7 +12600,7 @@ var WalletReceiveRotator = class _WalletReceiveRotator {
12600
12600
  };
12601
12601
  function deriveLeafPubkey(descriptor) {
12602
12602
  try {
12603
- return chunk4MCQZYH6_cjs.deriveDescriptorLeafPubKey(descriptor);
12603
+ return chunkM4DM3N6F_cjs.deriveDescriptorLeafPubKey(descriptor);
12604
12604
  } catch (e) {
12605
12605
  throw new NonRangeableDescriptorError(
12606
12606
  "Cannot derive leaf pubkey: descriptor is not a materialized, parsable tr(...) shape.",
@@ -12612,7 +12612,7 @@ function buildReceiveContract(current, descriptor, hrp, tagSource) {
12612
12612
  const pubKey = deriveLeafPubkey(descriptor);
12613
12613
  const tapscript = rebuildTapscript(current, pubKey);
12614
12614
  const serverPubKey = tapscript.options.serverPubKey;
12615
- const csvTimelock2 = chunkASKOHVGX_cjs.timelockToSequence(tapscript.options.csvTimelock).toString();
12615
+ const csvTimelock2 = chunkNMDISCGW_cjs.timelockToSequence(tapscript.options.csvTimelock).toString();
12616
12616
  const base$1 = {
12617
12617
  script: base.hex.encode(tapscript.pkScript),
12618
12618
  address: tapscript.address(hrp, serverPubKey).encode(),
@@ -12620,11 +12620,11 @@ function buildReceiveContract(current, descriptor, hrp, tagSource) {
12620
12620
  // Read at sign time to route rotated-pubkey inputs through `signWithDescriptor`; without
12621
12621
  // it spends are rejected with `INVALID_PSBT_INPUT (5): missing tapscript spend sig`.
12622
12622
  metadata: {
12623
- ...tagSource && { source: chunk4MCQZYH6_cjs.WALLET_RECEIVE_SOURCE },
12623
+ ...tagSource && { source: chunkM4DM3N6F_cjs.WALLET_RECEIVE_SOURCE },
12624
12624
  signingDescriptor: descriptor
12625
12625
  }
12626
12626
  };
12627
- const params = tapscript instanceof chunk4MCQZYH6_cjs.DelegateVtxo.Script ? {
12627
+ const params = tapscript instanceof chunkM4DM3N6F_cjs.DelegateVtxo.Script ? {
12628
12628
  ...base$1,
12629
12629
  type: "delegate",
12630
12630
  params: {
@@ -12645,10 +12645,10 @@ function buildReceiveContract(current, descriptor, hrp, tagSource) {
12645
12645
  return { tapscript, params };
12646
12646
  }
12647
12647
  function rebuildTapscript(current, pubKey) {
12648
- if (current instanceof chunk4MCQZYH6_cjs.DelegateVtxo.Script) {
12649
- return new chunk4MCQZYH6_cjs.DelegateVtxo.Script({ ...current.options, pubKey });
12648
+ if (current instanceof chunkM4DM3N6F_cjs.DelegateVtxo.Script) {
12649
+ return new chunkM4DM3N6F_cjs.DelegateVtxo.Script({ ...current.options, pubKey });
12650
12650
  }
12651
- return new chunk4MCQZYH6_cjs.DefaultVtxo.Script({ ...current.options, pubKey });
12651
+ return new chunkM4DM3N6F_cjs.DefaultVtxo.Script({ ...current.options, pubKey });
12652
12652
  }
12653
12653
  async function pickActiveReceive(contractRepository, serverPubKey, expectedType) {
12654
12654
  const candidates = await collectContracts(contractRepository, {
@@ -12694,7 +12694,7 @@ function computeOffchainBalance(vtxos, caps) {
12694
12694
  let preconfirmed = 0;
12695
12695
  let available = 0;
12696
12696
  let gated = 0;
12697
- let intentLocked = 0;
12697
+ let pendingSettlement = 0;
12698
12698
  let reserved = 0;
12699
12699
  let recoverable = 0;
12700
12700
  let pendingRecovery = 0;
@@ -12707,7 +12707,7 @@ function computeOffchainBalance(vtxos, caps) {
12707
12707
  }
12708
12708
  };
12709
12709
  for (const vtxo of vtxos) {
12710
- if (chunkASKOHVGX_cjs.isVtxoSpent(vtxo)) continue;
12710
+ if (chunkNMDISCGW_cjs.isVtxoSpent(vtxo)) continue;
12711
12711
  addAssets(owned, vtxo);
12712
12712
  if (vtxo.isUnrolled) {
12713
12713
  unrolled += vtxo.value;
@@ -12717,11 +12717,11 @@ function computeOffchainBalance(vtxos, caps) {
12717
12717
  pendingRecovery += vtxo.value;
12718
12718
  continue;
12719
12719
  }
12720
- if (chunkASKOHVGX_cjs.canRecoverOnchain(vtxo, now)) {
12720
+ if (chunkNMDISCGW_cjs.canRecoverOnchain(vtxo, now)) {
12721
12721
  recoverable += vtxo.value;
12722
12722
  continue;
12723
12723
  }
12724
- if (!chunkASKOHVGX_cjs.canSpendOffchain(vtxo, now)) continue;
12724
+ if (!chunkNMDISCGW_cjs.canSpendOffchain(vtxo, now)) continue;
12725
12725
  if (vtxo.isPreconfirmed) {
12726
12726
  preconfirmed += vtxo.value;
12727
12727
  } else {
@@ -12730,7 +12730,7 @@ function computeOffchainBalance(vtxos, caps) {
12730
12730
  if (!isGenericallySpendable(vtxo)) {
12731
12731
  gated += vtxo.value;
12732
12732
  } else if (!isUnlocked(vtxo)) {
12733
- intentLocked += vtxo.value;
12733
+ pendingSettlement += vtxo.value;
12734
12734
  } else if (isReserved?.(vtxo)) {
12735
12735
  reserved += vtxo.value;
12736
12736
  } else {
@@ -12747,7 +12747,7 @@ function computeOffchainBalance(vtxos, caps) {
12747
12747
  preconfirmed,
12748
12748
  available,
12749
12749
  gated,
12750
- intentLocked,
12750
+ pendingSettlement,
12751
12751
  reserved,
12752
12752
  recoverable,
12753
12753
  pendingRecovery,
@@ -12778,7 +12778,7 @@ function toWalletBalance(boardingUtxos, offchain) {
12778
12778
  preconfirmed: offchain.preconfirmed,
12779
12779
  available: offchain.available,
12780
12780
  gated: offchain.gated,
12781
- intentLocked: offchain.intentLocked,
12781
+ pendingSettlement: offchain.pendingSettlement,
12782
12782
  reserved: offchain.reserved,
12783
12783
  recoverable: offchain.recoverable,
12784
12784
  pendingRecovery: offchain.pendingRecovery,
@@ -12936,7 +12936,7 @@ function intentProofJobs(coins) {
12936
12936
  if (coins.length === 0) return [];
12937
12937
  const coinJobs = coins.map((coin, i) => ({
12938
12938
  index: i + 1,
12939
- lookupScript: chunkASKOHVGX_cjs.VtxoScript.decode(coin.tapTree).pkScript
12939
+ lookupScript: chunkNMDISCGW_cjs.VtxoScript.decode(coin.tapTree).pkScript
12940
12940
  }));
12941
12941
  return [{ index: 0, lookupScript: coinJobs[0].lookupScript }, ...coinJobs];
12942
12942
  }
@@ -12976,7 +12976,7 @@ function dedupeTimelocks(timelocks) {
12976
12976
  const seen = /* @__PURE__ */ new Set();
12977
12977
  const deduped = [];
12978
12978
  for (const timelock of timelocks) {
12979
- const sequence = chunkASKOHVGX_cjs.timelockToSequence(timelock).toString();
12979
+ const sequence = chunkNMDISCGW_cjs.timelockToSequence(timelock).toString();
12980
12980
  if (seen.has(sequence)) continue;
12981
12981
  seen.add(sequence);
12982
12982
  deduped.push(timelock);
@@ -12992,7 +12992,7 @@ async function resolveBoardingBootTapscript(contractRepository, serverPubKey, ba
12992
12992
  if (!newest?.params.pubKey) return baseline;
12993
12993
  try {
12994
12994
  const pubKey = base.hex.decode(newest.params.pubKey);
12995
- return new chunk4MCQZYH6_cjs.DefaultVtxo.Script({ ...baseline.options, pubKey });
12995
+ return new chunkM4DM3N6F_cjs.DefaultVtxo.Script({ ...baseline.options, pubKey });
12996
12996
  } catch (e) {
12997
12997
  console.warn("Skipping malformed boarding contract at boot", newest.script, e);
12998
12998
  return baseline;
@@ -13024,21 +13024,21 @@ function filterFlatVtxos(vtxos, filter, pendingSpendOutpoints) {
13024
13024
  if (vtxo.isUnrolled) {
13025
13025
  return !!f.withUnrolled;
13026
13026
  }
13027
- if (chunkASKOHVGX_cjs.isVtxoSpent(vtxo)) {
13027
+ if (chunkNMDISCGW_cjs.isVtxoSpent(vtxo)) {
13028
13028
  return false;
13029
13029
  }
13030
- if (!f.withRecoverable && chunkASKOHVGX_cjs.canRecoverOnchain(vtxo, now)) {
13030
+ if (!f.withRecoverable && chunkNMDISCGW_cjs.canRecoverOnchain(vtxo, now)) {
13031
13031
  return false;
13032
13032
  }
13033
13033
  return true;
13034
13034
  });
13035
13035
  }
13036
13036
  async function refreshSweptStateOfExpiredInputs(wallet, inputs) {
13037
- const candidates = inputs.filter(chunkASKOHVGX_cjs.isVirtualCoin).map(chunkASKOHVGX_cjs.normalizeVtxo).filter((v) => !v.isSwept);
13037
+ const candidates = inputs.filter(chunkNMDISCGW_cjs.isVirtualCoin).map(chunkNMDISCGW_cjs.normalizeVtxo).filter((v) => !v.isSwept);
13038
13038
  if (candidates.length === 0) return inputs;
13039
- const now = candidates.some((v) => v.expiresAtHeight !== void 0) ? await chunkASKOHVGX_cjs.resolveTimeHeight(wallet.onchainProvider) : { timestamp: /* @__PURE__ */ new Date() };
13039
+ const now = candidates.some((v) => v.expiresAtHeight !== void 0) ? await chunkNMDISCGW_cjs.resolveTimeHeight(wallet.onchainProvider) : { timestamp: /* @__PURE__ */ new Date() };
13040
13040
  const suspects = candidates.filter(
13041
- (v) => chunkASKOHVGX_cjs.isPastExpiry(v, now) || v.expiresAtHeight !== void 0 && now.height === void 0
13041
+ (v) => chunkNMDISCGW_cjs.isPastExpiry(v, now) || v.expiresAtHeight !== void 0 && now.height === void 0
13042
13042
  );
13043
13043
  if (suspects.length === 0) return inputs;
13044
13044
  let sweptNow;
@@ -13052,12 +13052,12 @@ async function refreshSweptStateOfExpiredInputs(wallet, inputs) {
13052
13052
  );
13053
13053
  } catch (e) {
13054
13054
  const message = "could not confirm the swept state of expired settlement inputs; retry the settlement";
13055
- throw chunkASKOHVGX_cjs.isRetryableProviderError(e) ? new chunkASKOHVGX_cjs.ProviderUnavailableError(message, { cause: e }) : new Error(message, { cause: e });
13055
+ throw chunkNMDISCGW_cjs.isRetryableProviderError(e) ? new chunkNMDISCGW_cjs.ProviderUnavailableError(message, { cause: e }) : new Error(message, { cause: e });
13056
13056
  }
13057
13057
  if (sweptNow.size === 0) return inputs;
13058
13058
  return inputs.map((input) => {
13059
- if (!chunkASKOHVGX_cjs.isVirtualCoin(input) || !sweptNow.has(`${input.txid}:${input.vout}`)) return input;
13060
- return { ...chunkASKOHVGX_cjs.normalizeVtxo(input), isSwept: true };
13059
+ if (!chunkNMDISCGW_cjs.isVirtualCoin(input) || !sweptNow.has(`${input.txid}:${input.vout}`)) return input;
13060
+ return { ...chunkNMDISCGW_cjs.normalizeVtxo(input), isSwept: true };
13061
13061
  });
13062
13062
  }
13063
13063
  var PENDING_RECOVERY_REASON = "is past its operator signer's rotation cutoff \u2014 the operator will not co-sign it until it recovers";
@@ -13346,7 +13346,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
13346
13346
  async getArkadeReader() {
13347
13347
  const indexer = this.indexerProvider;
13348
13348
  return {
13349
- getVtxos: (opts) => chunkASKOHVGX_cjs.getNormalizedVtxos(indexer, opts),
13349
+ getVtxos: (opts) => chunkNMDISCGW_cjs.getNormalizedVtxos(indexer, opts),
13350
13350
  getVirtualTxs: (txids, opts) => indexer.getVirtualTxs(txids, opts)
13351
13351
  };
13352
13352
  }
@@ -13386,7 +13386,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
13386
13386
  "Pass either `service` or `arkProvider`/`indexerProvider`/`onchainProvider`, not both"
13387
13387
  );
13388
13388
  }
13389
- const arkProvider = config.arkProvider || new chunkASKOHVGX_cjs.RestArkProvider(config.service ? arkadeServiceUrl(config.service) : void 0);
13389
+ const arkProvider = config.arkProvider || new chunkNMDISCGW_cjs.RestArkProvider(config.service ? arkadeServiceUrl(config.service) : void 0);
13390
13390
  let indexerProvider = config.indexerProvider;
13391
13391
  if (!indexerProvider && !config.service) {
13392
13392
  const derived = extractArkProviderUrl(arkProvider);
@@ -13395,10 +13395,11 @@ var ReadonlyWallet = class _ReadonlyWallet {
13395
13395
  "indexerProvider is required when arkProvider is provided without a discoverable serverUrl"
13396
13396
  );
13397
13397
  }
13398
- indexerProvider = new chunkAICUNREA_cjs.RestIndexerProvider(derived ?? chunkASKOHVGX_cjs.DEFAULT_ARKADE_SERVER_URL);
13398
+ indexerProvider = new chunkX2BWPGCY_cjs.RestIndexerProvider(derived ?? chunkNMDISCGW_cjs.DEFAULT_ARKADE_SERVER_URL);
13399
13399
  }
13400
13400
  const walletRepository = config.storage?.walletRepository ?? new IndexedDBWalletRepository();
13401
13401
  const contractRepository = config.storage?.contractRepository ?? new IndexedDBContractRepository();
13402
+ const delegatePubKeyPromise = config.delegateProvider?.getDelegateInfo().then((info2) => chunkM4DM3N6F_cjs.toXOnly(base.hex.decode(info2.pubkey), "delegate key")).catch(() => void 0);
13402
13403
  const {
13403
13404
  info,
13404
13405
  source: serverInfoSource,
@@ -13409,7 +13410,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
13409
13410
  if (!resolvedService) throw new Error("indexerProvider is unresolved");
13410
13411
  indexerProvider = resolvedService.indexerProvider;
13411
13412
  }
13412
- const network = chunkASKOHVGX_cjs.networkFromArkadeInfo(info);
13413
+ const network = chunkNMDISCGW_cjs.networkFromArkadeInfo(info);
13413
13414
  if ("descriptor" in config.identity) {
13414
13415
  const descriptor = config.identity.descriptor;
13415
13416
  const identityIsMainnet = !descriptor.includes("tpub");
@@ -13445,18 +13446,18 @@ var ReadonlyWallet = class _ReadonlyWallet {
13445
13446
  }
13446
13447
  }
13447
13448
  const boardingTimelock = config.boardingTimelock ?? toTimelock(info.boardingExitDelay);
13448
- const serverPubKey = chunk4MCQZYH6_cjs.toXOnly(base.hex.decode(info.signerPubkey), "ark signer key");
13449
- const delegatePubKey = config.delegateProvider ? await config.delegateProvider.getDelegateInfo().then((info2) => chunk4MCQZYH6_cjs.toXOnly(base.hex.decode(info2.pubkey), "delegate key")).catch(() => void 0) : void 0;
13449
+ const serverPubKey = chunkM4DM3N6F_cjs.toXOnly(base.hex.decode(info.signerPubkey), "ark signer key");
13450
+ const delegatePubKey = await delegatePubKeyPromise;
13450
13451
  const offchainOptions = {
13451
13452
  pubKey,
13452
13453
  serverPubKey,
13453
13454
  csvTimelock: exitTimelock
13454
13455
  };
13455
- const offchainTapscript = !delegatePubKey ? new chunk4MCQZYH6_cjs.DefaultVtxo.Script(offchainOptions) : new chunk4MCQZYH6_cjs.DelegateVtxo.Script({ ...offchainOptions, delegatePubKey });
13456
- const boardingTapscript = chunk4MCQZYH6_cjs.BoardingContractHandler.createScript({
13456
+ const offchainTapscript = !delegatePubKey ? new chunkM4DM3N6F_cjs.DefaultVtxo.Script(offchainOptions) : new chunkM4DM3N6F_cjs.DelegateVtxo.Script({ ...offchainOptions, delegatePubKey });
13457
+ const boardingTapscript = chunkM4DM3N6F_cjs.BoardingContractHandler.createScript({
13457
13458
  pubKey: base.hex.encode(pubKey),
13458
13459
  serverPubKey: base.hex.encode(serverPubKey),
13459
- csvTimelock: chunkASKOHVGX_cjs.timelockToSequence(boardingTimelock).toString()
13460
+ csvTimelock: chunkNMDISCGW_cjs.timelockToSequence(boardingTimelock).toString()
13460
13461
  });
13461
13462
  return {
13462
13463
  arkProvider,
@@ -13622,7 +13623,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
13622
13623
  if (!filter?.withUnrolled) {
13623
13624
  logExcludedVtxos(
13624
13625
  "getSpendableVtxos",
13625
- snapshot.flatMap((contract) => contract.vtxos).filter((vtxo) => vtxo.isUnrolled && !chunkASKOHVGX_cjs.isVtxoSpent(vtxo)),
13626
+ snapshot.flatMap((contract) => contract.vtxos).filter((vtxo) => vtxo.isUnrolled && !chunkNMDISCGW_cjs.isVtxoSpent(vtxo)),
13626
13627
  [() => UNROLLED_REASON]
13627
13628
  );
13628
13629
  }
@@ -13765,7 +13766,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
13765
13766
  this.getBoardingTxs()
13766
13767
  ]);
13767
13768
  const allVtxos = snapshot.flatMap((_) => _.vtxos);
13768
- const resolveTxCreatedAt = (txids) => chunkASKOHVGX_cjs.fetchVtxoCreatedAtByTxid(this.indexerProvider, txids);
13769
+ const resolveTxCreatedAt = (txids) => chunkNMDISCGW_cjs.fetchVtxoCreatedAtByTxid(this.indexerProvider, txids);
13769
13770
  return buildTransactionHistory(
13770
13771
  allVtxos,
13771
13772
  boardingTxs,
@@ -13919,9 +13920,9 @@ var ReadonlyWallet = class _ReadonlyWallet {
13919
13920
  async getBoardingTapscripts(allowedSigners) {
13920
13921
  const byScript = /* @__PURE__ */ new Map();
13921
13922
  const add = (s) => byScript.set(base.hex.encode(s.pkScript), s);
13922
- const boardingCsv = this.boardingTapscript.options.csvTimelock ?? chunk4MCQZYH6_cjs.DefaultVtxo.Script.DEFAULT_TIMELOCK;
13923
+ const boardingCsv = this.boardingTapscript.options.csvTimelock ?? chunkM4DM3N6F_cjs.DefaultVtxo.Script.DEFAULT_TIMELOCK;
13923
13924
  add(
13924
- new chunk4MCQZYH6_cjs.DefaultVtxo.Script({
13925
+ new chunkM4DM3N6F_cjs.DefaultVtxo.Script({
13925
13926
  pubKey: await this.identity.xOnlyPublicKey(),
13926
13927
  serverPubKey: this.boardingTapscript.options.serverPubKey,
13927
13928
  csvTimelock: boardingCsv
@@ -13936,7 +13937,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
13936
13937
  for (const c of boardingContracts) {
13937
13938
  if (!allowed.has(toXOnlySignerHex(c.params.serverPubKey))) continue;
13938
13939
  try {
13939
- add(chunk4MCQZYH6_cjs.BoardingContractHandler.createScript(c.params));
13940
+ add(chunkM4DM3N6F_cjs.BoardingContractHandler.createScript(c.params));
13940
13941
  } catch (e) {
13941
13942
  console.warn("Skipping malformed boarding contract", c.script, e);
13942
13943
  }
@@ -13965,7 +13966,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
13965
13966
  // Per-row CSV delay decoded from THIS tapscript's exit leaf —
13966
13967
  // not the wallet's current boarding timelock, which a signer
13967
13968
  // rotation may have changed.
13968
- csvTimelock: chunkASKOHVGX_cjs.CSVMultisigTapscript.decode(base.hex.decode(tapscript.exitScript)).params.timelock,
13969
+ csvTimelock: chunkNMDISCGW_cjs.CSVMultisigTapscript.decode(base.hex.decode(tapscript.exitScript)).params.timelock,
13969
13970
  coins: utxos
13970
13971
  };
13971
13972
  })
@@ -14121,7 +14122,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
14121
14122
  /** Fetch Arkade transaction ids that are still pending final settlement. */
14122
14123
  async fetchPendingTxs() {
14123
14124
  const scripts = await this.getWalletScripts();
14124
- const vtxos = await chunkASKOHVGX_cjs.getAllNormalizedVtxos(this.indexerProvider, scripts);
14125
+ const vtxos = await chunkNMDISCGW_cjs.getAllNormalizedVtxos(this.indexerProvider, scripts);
14125
14126
  return vtxos.filter(
14126
14127
  (vtxo) => (vtxo.isSpent || vtxo.isPreconfirmed && !vtxo.isSwept) && vtxo.arkTxId !== void 0
14127
14128
  ).map((_) => _.arkTxId);
@@ -14152,7 +14153,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
14152
14153
  });
14153
14154
  for (const contract of contracts) {
14154
14155
  if (map.has(contract.script)) continue;
14155
- const handler = chunk4MCQZYH6_cjs.contractHandlers.get(contract.type);
14156
+ const handler = chunkM4DM3N6F_cjs.contractHandlers.get(contract.type);
14156
14157
  if (handler) {
14157
14158
  const script = handler.createScript(contract.params);
14158
14159
  map.set(contract.script, script);
@@ -14264,7 +14265,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
14264
14265
  }
14265
14266
  });
14266
14267
  const baselinePubkey = await this.identity.xOnlyPublicKey();
14267
- const delegatePubKey = this.offchainTapscript instanceof chunk4MCQZYH6_cjs.DelegateVtxo.Script ? this.offchainTapscript.options.delegatePubKey : void 0;
14268
+ const delegatePubKey = this.offchainTapscript instanceof chunkM4DM3N6F_cjs.DelegateVtxo.Script ? this.offchainTapscript.options.delegatePubKey : void 0;
14268
14269
  const baselineSigners = [
14269
14270
  this.offchainTapscript.options.serverPubKey,
14270
14271
  ...[...this._deprecatedSigners.keys()].map((h) => base.hex.decode(h))
@@ -14272,8 +14273,8 @@ var ReadonlyWallet = class _ReadonlyWallet {
14272
14273
  const seenBaselineScripts = /* @__PURE__ */ new Set();
14273
14274
  for (const serverPubKey of baselineSigners) {
14274
14275
  for (const csvTimelock2 of this.walletContractTimelocks) {
14275
- const csvTimelockStr = chunkASKOHVGX_cjs.timelockToSequence(csvTimelock2).toString();
14276
- const defaultScript = new chunk4MCQZYH6_cjs.DefaultVtxo.Script({
14276
+ const csvTimelockStr = chunkNMDISCGW_cjs.timelockToSequence(csvTimelock2).toString();
14277
+ const defaultScript = new chunkM4DM3N6F_cjs.DefaultVtxo.Script({
14277
14278
  pubKey: baselinePubkey,
14278
14279
  serverPubKey,
14279
14280
  csvTimelock: csvTimelock2
@@ -14294,7 +14295,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
14294
14295
  });
14295
14296
  }
14296
14297
  if (delegatePubKey) {
14297
- const delegateScript = new chunk4MCQZYH6_cjs.DelegateVtxo.Script({
14298
+ const delegateScript = new chunkM4DM3N6F_cjs.DelegateVtxo.Script({
14298
14299
  pubKey: baselinePubkey,
14299
14300
  serverPubKey,
14300
14301
  delegatePubKey,
@@ -14318,9 +14319,9 @@ var ReadonlyWallet = class _ReadonlyWallet {
14318
14319
  }
14319
14320
  }
14320
14321
  }
14321
- const boardingCsvTimelock = this.boardingTapscript.options.csvTimelock ?? chunk4MCQZYH6_cjs.DefaultVtxo.Script.DEFAULT_TIMELOCK;
14322
+ const boardingCsvTimelock = this.boardingTapscript.options.csvTimelock ?? chunkM4DM3N6F_cjs.DefaultVtxo.Script.DEFAULT_TIMELOCK;
14322
14323
  for (const serverPubKey of baselineSigners) {
14323
- const baselineBoarding = new chunk4MCQZYH6_cjs.DefaultVtxo.Script({
14324
+ const baselineBoarding = new chunkM4DM3N6F_cjs.DefaultVtxo.Script({
14324
14325
  pubKey: baselinePubkey,
14325
14326
  serverPubKey,
14326
14327
  csvTimelock: boardingCsvTimelock
@@ -14333,7 +14334,7 @@ var ReadonlyWallet = class _ReadonlyWallet {
14333
14334
  params: {
14334
14335
  pubKey: base.hex.encode(baselineBoarding.options.pubKey),
14335
14336
  serverPubKey: base.hex.encode(serverPubKey),
14336
- csvTimelock: chunkASKOHVGX_cjs.timelockToSequence(boardingCsvTimelock).toString()
14337
+ csvTimelock: chunkNMDISCGW_cjs.timelockToSequence(boardingCsvTimelock).toString()
14337
14338
  },
14338
14339
  script: boardingScriptHex,
14339
14340
  address: baselineBoarding.address(this.network.hrp, serverPubKey).encode(),
@@ -14518,7 +14519,7 @@ var Wallet2 = class extends ReadonlyWallet {
14518
14519
  serverPubKey: this.offchainTapscript.options.serverPubKey,
14519
14520
  deprecatedSignerPubKeys: [...this._deprecatedSigners.keys()].map((h) => base.hex.decode(h)),
14520
14521
  csvTimelocks: this.walletContractTimelocks,
14521
- delegatePubKey: this.offchainTapscript instanceof chunk4MCQZYH6_cjs.DelegateVtxo.Script ? this.offchainTapscript.options.delegatePubKey : void 0
14522
+ delegatePubKey: this.offchainTapscript instanceof chunkM4DM3N6F_cjs.DelegateVtxo.Script ? this.offchainTapscript.options.delegatePubKey : void 0
14522
14523
  };
14523
14524
  }
14524
14525
  _signerRouter;
@@ -14678,7 +14679,7 @@ var Wallet2 = class extends ReadonlyWallet {
14678
14679
  const [row] = await manager.getContracts({ script: base.hex.encode(display.pkScript) });
14679
14680
  const persisted = row?.metadata?.signingDescriptor;
14680
14681
  if (typeof persisted === "string") return persisted;
14681
- return chunk4MCQZYH6_cjs.identityDescriptor(this.identity);
14682
+ return chunkM4DM3N6F_cjs.identityDescriptor(this.identity);
14682
14683
  }
14683
14684
  /**
14684
14685
  * Build, persist and shape one address of `type` owned by `descriptor`. The descriptor is the
@@ -14688,7 +14689,7 @@ var Wallet2 = class extends ReadonlyWallet {
14688
14689
  async mintAddress(manager, type, descriptor, tagSource, allocated) {
14689
14690
  if (type === "boarding") {
14690
14691
  const built2 = this.buildBoardingContract(
14691
- chunk4MCQZYH6_cjs.deriveDescriptorLeafPubKey(descriptor),
14692
+ chunkM4DM3N6F_cjs.deriveDescriptorLeafPubKey(descriptor),
14692
14693
  descriptor,
14693
14694
  tagSource
14694
14695
  );
@@ -14725,11 +14726,11 @@ var Wallet2 = class extends ReadonlyWallet {
14725
14726
  * (offchain analogue: {@link buildReceiveContract}).
14726
14727
  */
14727
14728
  buildBoardingContract(pubKey, descriptor, tagSource) {
14728
- const tapscript = new chunk4MCQZYH6_cjs.DefaultVtxo.Script({
14729
+ const tapscript = new chunkM4DM3N6F_cjs.DefaultVtxo.Script({
14729
14730
  ...this._boardingTapscript.options,
14730
14731
  pubKey
14731
14732
  });
14732
- const csvTimelock2 = tapscript.options.csvTimelock ?? chunk4MCQZYH6_cjs.DefaultVtxo.Script.DEFAULT_TIMELOCK;
14733
+ const csvTimelock2 = tapscript.options.csvTimelock ?? chunkM4DM3N6F_cjs.DefaultVtxo.Script.DEFAULT_TIMELOCK;
14733
14734
  return {
14734
14735
  tapscript,
14735
14736
  params: {
@@ -14737,13 +14738,13 @@ var Wallet2 = class extends ReadonlyWallet {
14737
14738
  params: {
14738
14739
  pubKey: base.hex.encode(pubKey),
14739
14740
  serverPubKey: base.hex.encode(tapscript.options.serverPubKey),
14740
- csvTimelock: chunkASKOHVGX_cjs.timelockToSequence(csvTimelock2).toString()
14741
+ csvTimelock: chunkNMDISCGW_cjs.timelockToSequence(csvTimelock2).toString()
14741
14742
  },
14742
14743
  script: base.hex.encode(tapscript.pkScript),
14743
14744
  address: tapscript.address(this.network.hrp, this.arkServerPublicKey).encode(),
14744
14745
  state: "active",
14745
14746
  metadata: {
14746
- ...tagSource && { source: chunk4MCQZYH6_cjs.WALLET_RECEIVE_SOURCE },
14747
+ ...tagSource && { source: chunkM4DM3N6F_cjs.WALLET_RECEIVE_SOURCE },
14747
14748
  signingDescriptor: descriptor
14748
14749
  }
14749
14750
  }
@@ -14765,7 +14766,7 @@ var Wallet2 = class extends ReadonlyWallet {
14765
14766
  if (this._hdProvider) {
14766
14767
  return (await this.getContractManager()).getNextSigningDescriptor();
14767
14768
  }
14768
- return chunk4MCQZYH6_cjs.identityDescriptor(this.identity);
14769
+ return chunkM4DM3N6F_cjs.identityDescriptor(this.identity);
14769
14770
  }
14770
14771
  /**
14771
14772
  * @see HDAllocationCapable.advanceSigningDescriptorWatermark
@@ -14841,7 +14842,7 @@ var Wallet2 = class extends ReadonlyWallet {
14841
14842
  * the stable public API.
14842
14843
  */
14843
14844
  async rotateServerSigner(newServerPubKey, checkpointTapscript) {
14844
- const xonly = chunk4MCQZYH6_cjs.toXOnly(newServerPubKey, "ark signer key");
14845
+ const xonly = chunkM4DM3N6F_cjs.toXOnly(newServerPubKey, "ark signer key");
14845
14846
  const newServerUnrollScript = assertValidServerUnrollScript(
14846
14847
  checkpointTapscript,
14847
14848
  this.network,
@@ -14871,21 +14872,21 @@ var Wallet2 = class extends ReadonlyWallet {
14871
14872
  const [currentBoardingRow] = await manager.getContracts({
14872
14873
  script: currentBoardingScript
14873
14874
  });
14874
- const newOffchain = this.offchainTapscript instanceof chunk4MCQZYH6_cjs.DelegateVtxo.Script ? new chunk4MCQZYH6_cjs.DelegateVtxo.Script({
14875
+ const newOffchain = this.offchainTapscript instanceof chunkM4DM3N6F_cjs.DelegateVtxo.Script ? new chunkM4DM3N6F_cjs.DelegateVtxo.Script({
14875
14876
  ...this.offchainTapscript.options,
14876
14877
  serverPubKey: xonly
14877
- }) : new chunk4MCQZYH6_cjs.DefaultVtxo.Script({
14878
+ }) : new chunkM4DM3N6F_cjs.DefaultVtxo.Script({
14878
14879
  ...this.offchainTapscript.options,
14879
14880
  serverPubKey: xonly
14880
14881
  });
14881
- const newBoarding = new chunk4MCQZYH6_cjs.DefaultVtxo.Script({
14882
+ const newBoarding = new chunkM4DM3N6F_cjs.DefaultVtxo.Script({
14882
14883
  ...this._boardingTapscript.options,
14883
14884
  serverPubKey: xonly
14884
14885
  });
14885
- const offchainCsv = chunkASKOHVGX_cjs.timelockToSequence(newOffchain.options.csvTimelock).toString();
14886
+ const offchainCsv = chunkNMDISCGW_cjs.timelockToSequence(newOffchain.options.csvTimelock).toString();
14886
14887
  const newOffchainScript = base.hex.encode(newOffchain.pkScript);
14887
14888
  const newOffchainAddress = newOffchain.address(this.network.hrp, xonly).encode();
14888
- if (newOffchain instanceof chunk4MCQZYH6_cjs.DelegateVtxo.Script) {
14889
+ if (newOffchain instanceof chunkM4DM3N6F_cjs.DelegateVtxo.Script) {
14889
14890
  await manager.createContract({
14890
14891
  type: "delegate",
14891
14892
  params: {
@@ -14913,13 +14914,13 @@ var Wallet2 = class extends ReadonlyWallet {
14913
14914
  metadata: currentOffchainRow?.metadata
14914
14915
  });
14915
14916
  }
14916
- const boardingCsv = newBoarding.options.csvTimelock ?? chunk4MCQZYH6_cjs.DefaultVtxo.Script.DEFAULT_TIMELOCK;
14917
+ const boardingCsv = newBoarding.options.csvTimelock ?? chunkM4DM3N6F_cjs.DefaultVtxo.Script.DEFAULT_TIMELOCK;
14917
14918
  await manager.createContract({
14918
14919
  type: "boarding",
14919
14920
  params: {
14920
14921
  pubKey: base.hex.encode(newBoarding.options.pubKey),
14921
14922
  serverPubKey: base.hex.encode(xonly),
14922
- csvTimelock: chunkASKOHVGX_cjs.timelockToSequence(boardingCsv).toString()
14923
+ csvTimelock: chunkNMDISCGW_cjs.timelockToSequence(boardingCsv).toString()
14923
14924
  },
14924
14925
  script: base.hex.encode(newBoarding.pkScript),
14925
14926
  address: newBoarding.address(this.network.hrp, xonly).encode(),
@@ -14947,14 +14948,14 @@ var Wallet2 = class extends ReadonlyWallet {
14947
14948
  _restoreInFlight;
14948
14949
  _addPendingSpends(inputs) {
14949
14950
  for (const input of inputs) {
14950
- if (chunkASKOHVGX_cjs.isVirtualCoin(input)) {
14951
+ if (chunkNMDISCGW_cjs.isVirtualCoin(input)) {
14951
14952
  this._pendingSpendOutpoints.add(`${input.txid}:${input.vout}`);
14952
14953
  }
14953
14954
  }
14954
14955
  }
14955
14956
  _removePendingSpends(inputs) {
14956
14957
  for (const input of inputs) {
14957
- if (chunkASKOHVGX_cjs.isVirtualCoin(input)) {
14958
+ if (chunkNMDISCGW_cjs.isVirtualCoin(input)) {
14958
14959
  this._pendingSpendOutpoints.delete(`${input.txid}:${input.vout}`);
14959
14960
  }
14960
14961
  }
@@ -15018,7 +15019,7 @@ var Wallet2 = class extends ReadonlyWallet {
15018
15019
  if (clashing.length > 0) throw new VtxoReservedError(clashing, "in-flight");
15019
15020
  }
15020
15021
  _assertNotHeld(inputs) {
15021
- const held = coinKeys(inputs.filter(chunkASKOHVGX_cjs.isVirtualCoin)).filter(
15022
+ const held = coinKeys(inputs.filter(chunkNMDISCGW_cjs.isVirtualCoin)).filter(
15022
15023
  (key) => this._heldOutpoints.has(key)
15023
15024
  );
15024
15025
  if (held.length > 0) throw new VtxoReservedError(held, "held");
@@ -15056,13 +15057,13 @@ var Wallet2 = class extends ReadonlyWallet {
15056
15057
  const manager = await this.getContractManager();
15057
15058
  const provider = this._hdProvider;
15058
15059
  const hd = provider !== void 0;
15059
- const staticDescriptor = hd ? void 0 : await chunk4MCQZYH6_cjs.identityDescriptor(this.identity);
15060
+ const staticDescriptor = hd ? void 0 : await chunkM4DM3N6F_cjs.identityDescriptor(this.identity);
15060
15061
  const materialize = (index) => hd ? provider.materializeDescriptorAt(index) : staticDescriptor;
15061
- const delegatePubKey = this.offchainTapscript instanceof chunk4MCQZYH6_cjs.DelegateVtxo.Script ? this.offchainTapscript.options.delegatePubKey : void 0;
15062
+ const delegatePubKey = this.offchainTapscript instanceof chunkM4DM3N6F_cjs.DelegateVtxo.Script ? this.offchainTapscript.options.delegatePubKey : void 0;
15062
15063
  const arkInfo = await this.arkProvider.getInfo();
15063
- const currentSignerPubKey = chunk4MCQZYH6_cjs.toXOnly(base.hex.decode(arkInfo.signerPubkey), "ark signer key");
15064
+ const currentSignerPubKey = chunkM4DM3N6F_cjs.toXOnly(base.hex.decode(arkInfo.signerPubkey), "ark signer key");
15064
15065
  const deprecatedSignerPubKeys = arkInfo.deprecatedSigners.map(
15065
- (s) => chunk4MCQZYH6_cjs.toXOnly(base.hex.decode(s.pubkey), "deprecated signer key")
15066
+ (s) => chunkM4DM3N6F_cjs.toXOnly(base.hex.decode(s.pubkey), "deprecated signer key")
15066
15067
  );
15067
15068
  const deps = {
15068
15069
  indexerProvider: this.indexerProvider,
@@ -15074,7 +15075,7 @@ var Wallet2 = class extends ReadonlyWallet {
15074
15075
  deprecatedSignerPubKeys,
15075
15076
  csvTimelocks: this.walletContractTimelocks,
15076
15077
  // Boarding-exit CSV, distinct from the unilateral-exit matrix.
15077
- boardingTimelock: this.boardingTapscript.options.csvTimelock ?? chunk4MCQZYH6_cjs.DefaultVtxo.Script.DEFAULT_TIMELOCK,
15078
+ boardingTimelock: this.boardingTapscript.options.csvTimelock ?? chunkM4DM3N6F_cjs.DefaultVtxo.Script.DEFAULT_TIMELOCK,
15078
15079
  delegatePubKey
15079
15080
  };
15080
15081
  const result = await manager.scanContracts({
@@ -15191,7 +15192,7 @@ var Wallet2 = class extends ReadonlyWallet {
15191
15192
  throw new Error("Invalid configured public key");
15192
15193
  }
15193
15194
  const setup = await ReadonlyWallet.setupWalletConfig(config, pubkey);
15194
- const forfeitPubkey = chunk4MCQZYH6_cjs.toXOnly(base.hex.decode(setup.info.forfeitPubkey), "forfeit key");
15195
+ const forfeitPubkey = chunkM4DM3N6F_cjs.toXOnly(base.hex.decode(setup.info.forfeitPubkey), "forfeit key");
15195
15196
  const forfeitAddress = btcSigner.Address(setup.network).decode(setup.info.forfeitAddress);
15196
15197
  const forfeitOutputScript = btcSigner.OutScript.encode(forfeitAddress);
15197
15198
  const serverUnrollScript = assertValidServerUnrollScript(
@@ -15359,13 +15360,13 @@ var Wallet2 = class extends ReadonlyWallet {
15359
15360
  void this.logUngatedInputs("settle({ inputs })", params.inputs);
15360
15361
  }
15361
15362
  const offchainAddress = await this.getAddress();
15362
- const offchainPkScript = chunkASKOHVGX_cjs.ArkAddress.decode(offchainAddress).pkScript;
15363
+ const offchainPkScript = chunkNMDISCGW_cjs.ArkAddress.decode(offchainAddress).pkScript;
15363
15364
  const offchainOutputScript = base.hex.encode(offchainPkScript);
15364
15365
  if (!params) {
15365
15366
  const { fees, vtxoMaxAmount } = await this.arkProvider.getInfo();
15366
15367
  const estimator = new Estimator(fees.intentFee);
15367
15368
  let amount = 0;
15368
- const exitScript = chunkASKOHVGX_cjs.CSVMultisigTapscript.decode(
15369
+ const exitScript = chunkNMDISCGW_cjs.CSVMultisigTapscript.decode(
15369
15370
  base.hex.decode(this.boardingTapscript.exitScript)
15370
15371
  );
15371
15372
  const boardingTimelock = exitScript.params.timelock;
@@ -15397,7 +15398,7 @@ var Wallet2 = class extends ReadonlyWallet {
15397
15398
  if (filteredVtxos.length >= MAX_VTXOS_PER_SETTLEMENT) {
15398
15399
  break;
15399
15400
  }
15400
- const inputFee = estimator.evalOffchainInput(chunkASKOHVGX_cjs.toOffchainInputFeeParams(vtxo));
15401
+ const inputFee = estimator.evalOffchainInput(chunkNMDISCGW_cjs.toOffchainInputFeeParams(vtxo));
15401
15402
  if (inputFee.satoshis >= vtxo.value) {
15402
15403
  continue;
15403
15404
  }
@@ -15449,7 +15450,7 @@ var Wallet2 = class extends ReadonlyWallet {
15449
15450
  let script;
15450
15451
  let arkAddress;
15451
15452
  try {
15452
- arkAddress = chunkASKOHVGX_cjs.ArkAddress.decode(output.address);
15453
+ arkAddress = chunkNMDISCGW_cjs.ArkAddress.decode(output.address);
15453
15454
  } catch {
15454
15455
  arkAddress = void 0;
15455
15456
  }
@@ -15521,11 +15522,11 @@ var Wallet2 = class extends ReadonlyWallet {
15521
15522
  ]);
15522
15523
  let intentTxId;
15523
15524
  try {
15524
- intentTxId = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(intent.proof)).id;
15525
+ intentTxId = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(intent.proof)).id;
15525
15526
  } catch {
15526
15527
  intentTxId = params.inputs.map((i) => `${i.txid}:${i.vout}`).sort().join("|");
15527
15528
  }
15528
- const settleInputVtxos = params.inputs.filter(chunkASKOHVGX_cjs.isVirtualCoin);
15529
+ const settleInputVtxos = params.inputs.filter(chunkNMDISCGW_cjs.isVirtualCoin);
15529
15530
  const contractManager = await this.getContractManager();
15530
15531
  await contractManager.assertAnnotatable(settleInputVtxos);
15531
15532
  await contractManager.assertSpendableNow?.(
@@ -15534,7 +15535,7 @@ var Wallet2 = class extends ReadonlyWallet {
15534
15535
  );
15535
15536
  if (picked) this._assertNotHeld(params.inputs);
15536
15537
  this._addPendingSpends(params.inputs);
15537
- const boardingKeys = onReserved ? coinKeys(params.inputs.filter((i) => !chunkASKOHVGX_cjs.isVirtualCoin(i))) : [];
15538
+ const boardingKeys = onReserved ? coinKeys(params.inputs.filter((i) => !chunkNMDISCGW_cjs.isVirtualCoin(i))) : [];
15538
15539
  for (const key of boardingKeys) this._pendingSpendOutpoints.add(key);
15539
15540
  const settlingKeys = params.inputs.map((i) => `${i.txid}:${i.vout}`);
15540
15541
  for (const key of settlingKeys) this._settlingOutpoints.add(key);
@@ -15645,7 +15646,7 @@ var Wallet2 = class extends ReadonlyWallet {
15645
15646
  async maybeRotateBoardingAfterBoard(inputs) {
15646
15647
  if (!this._descriptorProvider) return;
15647
15648
  const consumedBoarding = inputs.some(
15648
- (input) => typeof input !== "string" && !chunkASKOHVGX_cjs.isVirtualCoin(input)
15649
+ (input) => typeof input !== "string" && !chunkNMDISCGW_cjs.isVirtualCoin(input)
15649
15650
  );
15650
15651
  if (!consumedBoarding) return;
15651
15652
  try {
@@ -15656,7 +15657,7 @@ var Wallet2 = class extends ReadonlyWallet {
15656
15657
  }
15657
15658
  async handleSettlementFinalizationEvent(event, inputs, forfeitOutputScript, expectedRecipients, connectorsGraph, validatedCommitmentTxid) {
15658
15659
  const signedForfeits = [];
15659
- let settlementPsbt = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(event.commitmentTx));
15660
+ let settlementPsbt = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(event.commitmentTx));
15660
15661
  assertFinalCommitmentMatchesValidated(
15661
15662
  settlementPsbt,
15662
15663
  validatedCommitmentTxid,
@@ -15669,7 +15670,7 @@ var Wallet2 = class extends ReadonlyWallet {
15669
15670
  let connectorIndex = 0;
15670
15671
  const connectorsLeaves = connectorsGraph?.leaves() || [];
15671
15672
  for (const input of inputs) {
15672
- if (!chunkASKOHVGX_cjs.isVirtualCoin(input)) {
15673
+ if (!chunkNMDISCGW_cjs.isVirtualCoin(input)) {
15673
15674
  let matched = false;
15674
15675
  for (let i = 0; i < settlementPsbt.inputsLength; i++) {
15675
15676
  const settlementInput = settlementPsbt.getInput(i);
@@ -15707,7 +15708,7 @@ var Wallet2 = class extends ReadonlyWallet {
15707
15708
  }
15708
15709
  continue;
15709
15710
  }
15710
- if (!chunkASKOHVGX_cjs.requiresForfeit(input) || isSubdust({ value: input.value }, this.dustAmount)) {
15711
+ if (!chunkNMDISCGW_cjs.requiresForfeit(input) || isSubdust({ value: input.value }, this.dustAmount)) {
15711
15712
  continue;
15712
15713
  }
15713
15714
  if (connectorsLeaves.length === 0) {
@@ -15735,7 +15736,7 @@ var Wallet2 = class extends ReadonlyWallet {
15735
15736
  index: input.vout,
15736
15737
  witnessUtxo: {
15737
15738
  amount: BigInt(input.value),
15738
- script: chunkASKOHVGX_cjs.VtxoScript.decode(input.tapTree).pkScript
15739
+ script: chunkNMDISCGW_cjs.VtxoScript.decode(input.tapTree).pkScript
15739
15740
  },
15740
15741
  sighashType: btcSigner.SigHash.DEFAULT,
15741
15742
  tapLeafScript: [input.forfeitTapLeafScript]
@@ -15754,7 +15755,7 @@ var Wallet2 = class extends ReadonlyWallet {
15754
15755
  forfeitTx = await this._signerRouter.sign(forfeitTx, [
15755
15756
  {
15756
15757
  index: 0,
15757
- lookupScript: chunkASKOHVGX_cjs.VtxoScript.decode(input.tapTree).pkScript
15758
+ lookupScript: chunkNMDISCGW_cjs.VtxoScript.decode(input.tapTree).pkScript
15758
15759
  }
15759
15760
  ]);
15760
15761
  signedForfeits.push(base.base64.encode(forfeitTx.toPSBT()));
@@ -15812,7 +15813,7 @@ var Wallet2 = class extends ReadonlyWallet {
15812
15813
  resolveBatchExpiryPolicy(this.network, this.batchExpiryPolicy)
15813
15814
  );
15814
15815
  await this.arkProvider.confirmRegistration(intentId);
15815
- const sweepTapscript = chunkASKOHVGX_cjs.CSVMultisigTapscript.encode({
15816
+ const sweepTapscript = chunkNMDISCGW_cjs.CSVMultisigTapscript.encode({
15816
15817
  timelock,
15817
15818
  pubkeys: [this.forfeitPubkey]
15818
15819
  }).script;
@@ -15827,14 +15828,14 @@ var Wallet2 = class extends ReadonlyWallet {
15827
15828
  throw new Error("Sweep tap tree root not set");
15828
15829
  }
15829
15830
  const xOnlyPublicKeys = event.cosignersPublicKeys.map(
15830
- (k) => base.hex.encode(chunk4MCQZYH6_cjs.toXOnly(base.hex.decode(k), "cosigner key"))
15831
+ (k) => base.hex.encode(chunkM4DM3N6F_cjs.toXOnly(base.hex.decode(k), "cosigner key"))
15831
15832
  );
15832
15833
  const signerPublicKey = await session.getPublicKey();
15833
- const xonlySignerPublicKey = chunk4MCQZYH6_cjs.toXOnly(signerPublicKey, "signer key");
15834
+ const xonlySignerPublicKey = chunkM4DM3N6F_cjs.toXOnly(signerPublicKey, "signer key");
15834
15835
  if (!xOnlyPublicKeys.includes(base.hex.encode(xonlySignerPublicKey))) {
15835
15836
  return { skip: true };
15836
15837
  }
15837
- const commitmentTx = chunkASKOHVGX_cjs.Transaction.fromPSBT(
15838
+ const commitmentTx = chunkNMDISCGW_cjs.Transaction.fromPSBT(
15838
15839
  base.base64.decode(event.unsignedCommitmentTx)
15839
15840
  );
15840
15841
  validateVtxoTxGraph(vtxoTree, commitmentTx, sweepTapTreeRoot);
@@ -15916,9 +15917,9 @@ var Wallet2 = class extends ReadonlyWallet {
15916
15917
  ...existing ?? {},
15917
15918
  intentTxId,
15918
15919
  registerProof: intent.proof,
15919
- registerProofMessage: chunkASKOHVGX_cjs.Intent.encodeMessage(intent.message),
15920
+ registerProofMessage: chunkNMDISCGW_cjs.Intent.encodeMessage(intent.message),
15920
15921
  deleteProof: deleteIntent.proof,
15921
- deleteProofMessage: chunkASKOHVGX_cjs.Intent.encodeMessage(deleteIntent.message),
15922
+ deleteProofMessage: chunkNMDISCGW_cjs.Intent.encodeMessage(deleteIntent.message),
15922
15923
  intentVtxos: inputs.map((i) => ({
15923
15924
  txid: i.txid,
15924
15925
  vout: i.vout
@@ -15951,7 +15952,7 @@ var Wallet2 = class extends ReadonlyWallet {
15951
15952
  try {
15952
15953
  return await this.arkProvider.registerIntent(intent);
15953
15954
  } catch (error) {
15954
- if (error instanceof chunkASKOHVGX_cjs.ArkError && error.code === 0 && error.message.includes("duplicated input")) {
15955
+ if (error instanceof chunkNMDISCGW_cjs.ArkError && error.code === 0 && error.message.includes("duplicated input")) {
15955
15956
  const deleteIntent = await this.makeDeleteIntentSignature(inputs);
15956
15957
  await this.arkProvider.deleteIntent(deleteIntent);
15957
15958
  return this.arkProvider.registerIntent(intent);
@@ -15967,7 +15968,7 @@ var Wallet2 = class extends ReadonlyWallet {
15967
15968
  expire_at: 0,
15968
15969
  cosigners_public_keys: cosignerPubKeys
15969
15970
  };
15970
- const proof = chunkASKOHVGX_cjs.Intent.create(message, coins, outputs);
15971
+ const proof = chunkNMDISCGW_cjs.Intent.create(message, coins, outputs);
15971
15972
  const signedProof = await this._signerRouter.sign(proof, intentProofJobs(coins));
15972
15973
  return {
15973
15974
  proof: base.base64.encode(signedProof.toPSBT()),
@@ -15979,7 +15980,7 @@ var Wallet2 = class extends ReadonlyWallet {
15979
15980
  type: "delete",
15980
15981
  expire_at: 0
15981
15982
  };
15982
- const proof = chunkASKOHVGX_cjs.Intent.create(message, coins, []);
15983
+ const proof = chunkNMDISCGW_cjs.Intent.create(message, coins, []);
15983
15984
  const signedProof = await this._signerRouter.sign(proof, intentProofJobs(coins));
15984
15985
  return {
15985
15986
  proof: base.base64.encode(signedProof.toPSBT()),
@@ -15991,7 +15992,7 @@ var Wallet2 = class extends ReadonlyWallet {
15991
15992
  type: "get-pending-tx",
15992
15993
  expire_at: 0
15993
15994
  };
15994
- const proof = chunkASKOHVGX_cjs.Intent.create(message, coins, []);
15995
+ const proof = chunkNMDISCGW_cjs.Intent.create(message, coins, []);
15995
15996
  const signedProof = await this._signerRouter.sign(proof, intentProofJobs(coins));
15996
15997
  return {
15997
15998
  proof: base.base64.encode(signedProof.toPSBT()),
@@ -16012,7 +16013,7 @@ var Wallet2 = class extends ReadonlyWallet {
16012
16013
  if (!vtxos || vtxos.length === 0) {
16013
16014
  const scriptMap = await this.getScriptMap();
16014
16015
  const allExtended = [];
16015
- const fetchedVtxos = await chunkASKOHVGX_cjs.getAllNormalizedVtxos(this.indexerProvider, [
16016
+ const fetchedVtxos = await chunkNMDISCGW_cjs.getAllNormalizedVtxos(this.indexerProvider, [
16016
16017
  ...scriptMap.keys()
16017
16018
  ]);
16018
16019
  for (const vtxo of fetchedVtxos) {
@@ -16055,8 +16056,8 @@ var Wallet2 = class extends ReadonlyWallet {
16055
16056
  batchPending.push(pendingTx.arkTxid);
16056
16057
  try {
16057
16058
  const checkpointTxs = pendingTx.signedCheckpointTxs.map((c) => {
16058
- const tx = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(c));
16059
- chunkASKOHVGX_cjs.assertAllowedSighashTypes(tx);
16059
+ const tx = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(c));
16060
+ chunkNMDISCGW_cjs.assertAllowedSighashTypes(tx);
16060
16061
  return tx;
16061
16062
  });
16062
16063
  assertCheckpointsMatchInputs(
@@ -16125,11 +16126,11 @@ var Wallet2 = class extends ReadonlyWallet {
16125
16126
  * and one per deprecated signer — else a pre-rotation tx would stay pending forever.
16126
16127
  */
16127
16128
  checkpointUnrollCandidates(info) {
16128
- const current = chunkASKOHVGX_cjs.CSVMultisigTapscript.decode(base.hex.decode(info.checkpointTapscript));
16129
+ const current = chunkNMDISCGW_cjs.CSVMultisigTapscript.decode(base.hex.decode(info.checkpointTapscript));
16129
16130
  const candidates = [this._serverUnrollScript, current];
16130
16131
  for (const deprecated of signerSetFromInfo(info).deprecated.keys()) {
16131
16132
  candidates.push(
16132
- chunkASKOHVGX_cjs.CSVMultisigTapscript.encode({
16133
+ chunkNMDISCGW_cjs.CSVMultisigTapscript.encode({
16133
16134
  ...current.params,
16134
16135
  pubkeys: [base.hex.decode(deprecated)]
16135
16136
  })
@@ -16224,7 +16225,7 @@ var Wallet2 = class extends ReadonlyWallet {
16224
16225
  if (vtxos.length === 0) {
16225
16226
  throw new Error("No VTXOs found for this arkadeCash");
16226
16227
  }
16227
- const myPkScript = chunkASKOHVGX_cjs.ArkAddress.decode(await this.getAddress()).pkScript;
16228
+ const myPkScript = chunkNMDISCGW_cjs.ArkAddress.decode(await this.getAddress()).pkScript;
16228
16229
  let { spendable, recoverable, unclaimed } = this.classifyCashVtxos(vtxos);
16229
16230
  let swept = 0;
16230
16231
  const drainable = vtxos.filter(
@@ -16351,7 +16352,7 @@ var Wallet2 = class extends ReadonlyWallet {
16351
16352
  params: {
16352
16353
  pubKey: base.hex.encode(cash.publicKey),
16353
16354
  serverPubKey: base.hex.encode(cash.serverPubKey),
16354
- csvTimelock: chunkASKOHVGX_cjs.timelockToSequence(cash.csvTimelock).toString()
16355
+ csvTimelock: chunkNMDISCGW_cjs.timelockToSequence(cash.csvTimelock).toString()
16355
16356
  },
16356
16357
  script: base.hex.encode(cashScript.pkScript),
16357
16358
  address: cashAddress.encode(),
@@ -16432,7 +16433,7 @@ var Wallet2 = class extends ReadonlyWallet {
16432
16433
  const recoverable = [];
16433
16434
  const unclaimed = [];
16434
16435
  for (const vtxo of vtxos) {
16435
- if (chunkASKOHVGX_cjs.isVtxoSpent(vtxo)) {
16436
+ if (chunkNMDISCGW_cjs.isVtxoSpent(vtxo)) {
16436
16437
  unclaimed.push(cashReport(vtxo, "already-spent"));
16437
16438
  } else if (vtxo.isUnrolled) {
16438
16439
  unclaimed.push(cashReport(vtxo, "exited"));
@@ -16454,7 +16455,7 @@ var Wallet2 = class extends ReadonlyWallet {
16454
16455
  const all = [];
16455
16456
  const seen = /* @__PURE__ */ new Set();
16456
16457
  for (let pageIndex = 0; ; pageIndex++) {
16457
- const { vtxos, page } = await chunkASKOHVGX_cjs.getNormalizedVtxos(this.indexerProvider, {
16458
+ const { vtxos, page } = await chunkNMDISCGW_cjs.getNormalizedVtxos(this.indexerProvider, {
16458
16459
  scripts,
16459
16460
  pageIndex,
16460
16461
  pageSize
@@ -16492,7 +16493,7 @@ var Wallet2 = class extends ReadonlyWallet {
16492
16493
  for (let i = 0; i < inputs.length; i += MAX_INPUTS_PER_INTENT) {
16493
16494
  const batch = inputs.slice(i, i + MAX_INPUTS_PER_INTENT);
16494
16495
  const message = { type: "get-pending-tx", expire_at: 0 };
16495
- const proof = chunkASKOHVGX_cjs.Intent.create(message, batch, []);
16496
+ const proof = chunkNMDISCGW_cjs.Intent.create(message, batch, []);
16496
16497
  const signedProof = await identity.sign(
16497
16498
  proof,
16498
16499
  Array.from({ length: batch.length + 1 }, (_, j) => j)
@@ -16513,8 +16514,8 @@ var Wallet2 = class extends ReadonlyWallet {
16513
16514
  for (const pendingTx of pendingTxs) {
16514
16515
  try {
16515
16516
  const checkpointTxs = pendingTx.signedCheckpointTxs.map((checkpoint) => {
16516
- const tx = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(checkpoint));
16517
- chunkASKOHVGX_cjs.assertAllowedSighashTypes(tx);
16517
+ const tx = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(checkpoint));
16518
+ chunkNMDISCGW_cjs.assertAllowedSighashTypes(tx);
16518
16519
  return tx;
16519
16520
  });
16520
16521
  assertCheckpointsMatchInputs(
@@ -16554,7 +16555,7 @@ var Wallet2 = class extends ReadonlyWallet {
16554
16555
  }
16555
16556
  /** Sum the outputs of an ark tx PSBT that pay the given scriptPubKey. */
16556
16557
  arkTxAmountPaidTo(arkTxPsbt, pkScriptHex) {
16557
- const arkTx = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(arkTxPsbt));
16558
+ const arkTx = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(arkTxPsbt));
16558
16559
  let total = 0;
16559
16560
  for (let i = 0; i < arkTx.outputsLength; i++) {
16560
16561
  const output = arkTx.getOutput(i);
@@ -16613,7 +16614,7 @@ var Wallet2 = class extends ReadonlyWallet {
16613
16614
  throw new Error("send({ maxChangeFee }): expected a non-negative safe integer");
16614
16615
  }
16615
16616
  if (selectedVtxos) {
16616
- if (inputExpiryFloor) selectedVtxos = selectedVtxos.map(chunkASKOHVGX_cjs.normalizeVtxo);
16617
+ if (inputExpiryFloor) selectedVtxos = selectedVtxos.map(chunkNMDISCGW_cjs.normalizeVtxo);
16617
16618
  if (inputExpiryFloor && selectedVtxos.some((coin) => !meetsInputExpiryFloor(coin, inputExpiryFloor))) {
16618
16619
  throw new Error("send({ selectedVtxos }): input expiry floor not met");
16619
16620
  }
@@ -16748,7 +16749,7 @@ var Wallet2 = class extends ReadonlyWallet {
16748
16749
  script: recipient.script,
16749
16750
  amount: BigInt(recipient.amount),
16750
16751
  // Already checked against the recipient address in `validateRecipients`.
16751
- ...recipient.tapTree ? { tapTree: chunkASKOHVGX_cjs.toBIP371TapTree(recipient.tapTree) } : {}
16752
+ ...recipient.tapTree ? { tapTree: chunkNMDISCGW_cjs.toBIP371TapTree(recipient.tapTree) } : {}
16752
16753
  }));
16753
16754
  const totalBtcOutput = outputs.reduce((sum, o) => sum + Number(o.amount), 0);
16754
16755
  let changeAmount = totalBtcSelected - totalBtcOutput;
@@ -16940,10 +16941,10 @@ var Wallet2 = class extends ReadonlyWallet {
16940
16941
  const serverPubKey = this.arkServerPublicKey;
16941
16942
  const serverUnrollScript = this.serverUnrollScript;
16942
16943
  const arkAddress = offchainTapscript.address(this.network.hrp, serverPubKey);
16943
- const normalizedInputs = inputs.map(chunkASKOHVGX_cjs.normalizeVtxo);
16944
- const at = now ?? await chunkASKOHVGX_cjs.resolveTimeHeight(this.onchainProvider);
16944
+ const normalizedInputs = inputs.map(chunkNMDISCGW_cjs.normalizeVtxo);
16945
+ const at = now ?? await chunkNMDISCGW_cjs.resolveTimeHeight(this.onchainProvider);
16945
16946
  for (const input of normalizedInputs) {
16946
- if (!chunkASKOHVGX_cjs.canSpendOffchain(input, at)) {
16947
+ if (!chunkNMDISCGW_cjs.canSpendOffchain(input, at)) {
16947
16948
  throw new Error(
16948
16949
  `sendSelectedVtxosToSelf: input ${input.txid}:${input.vout} is not cooperatively spendable`
16949
16950
  );
@@ -17027,7 +17028,7 @@ var Wallet2 = class extends ReadonlyWallet {
17027
17028
  );
17028
17029
  const arkTxJobs = inputs.map((input, index) => ({
17029
17030
  index,
17030
- lookupScript: chunkASKOHVGX_cjs.VtxoScript.decode(input.tapTree).pkScript
17031
+ lookupScript: chunkNMDISCGW_cjs.VtxoScript.decode(input.tapTree).pkScript
17031
17032
  }));
17032
17033
  const identity = this.identity;
17033
17034
  const signer = {
@@ -17136,7 +17137,7 @@ var Wallet2 = class extends ReadonlyWallet {
17136
17137
  }
17137
17138
  const checkpointIdByOutpoint = /* @__PURE__ */ new Map();
17138
17139
  for (const encoded of signedCheckpointTxs) {
17139
- const checkpoint = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(encoded));
17140
+ const checkpoint = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(encoded));
17140
17141
  for (let i = 0; i < checkpoint.inputsLength; i++) {
17141
17142
  const input = checkpoint.getInput(i);
17142
17143
  if (!input.txid) continue;
@@ -17252,12 +17253,12 @@ var Wallet2 = class extends ReadonlyWallet {
17252
17253
  const spentVtxos = [];
17253
17254
  const inputArkTxIds = /* @__PURE__ */ new Set();
17254
17255
  const boardingRemovalsByAddress = /* @__PURE__ */ new Map();
17255
- const vtxoInputs = inputs.filter(chunkASKOHVGX_cjs.isVirtualCoin);
17256
+ const vtxoInputs = inputs.filter(chunkNMDISCGW_cjs.isVirtualCoin);
17256
17257
  const cm = await this.getContractManager();
17257
17258
  const annotatedVtxos = await cm.annotateVtxos(vtxoInputs);
17258
17259
  const annotatedByKey = new Map(annotatedVtxos.map((v) => [`${v.txid}:${v.vout}`, v]));
17259
17260
  for (const input of inputs) {
17260
- if (chunkASKOHVGX_cjs.isVirtualCoin(input)) {
17261
+ if (chunkNMDISCGW_cjs.isVirtualCoin(input)) {
17261
17262
  const outpoint = `${input.txid}:${input.vout}`;
17262
17263
  const vtxo = annotatedByKey.get(outpoint);
17263
17264
  if (!vtxo) {
@@ -17274,7 +17275,7 @@ var Wallet2 = class extends ReadonlyWallet {
17274
17275
  } else {
17275
17276
  let sourceAddress;
17276
17277
  try {
17277
- sourceAddress = chunkASKOHVGX_cjs.VtxoScript.decode(input.tapTree).onchainAddress(
17278
+ sourceAddress = chunkNMDISCGW_cjs.VtxoScript.decode(input.tapTree).onchainAddress(
17278
17279
  this.network
17279
17280
  );
17280
17281
  } catch {
@@ -17346,7 +17347,7 @@ function bySelectionOrder(a, b) {
17346
17347
  return b.value - a.value;
17347
17348
  }
17348
17349
  function selectVirtualCoins(coins, targetAmount) {
17349
- const sortedCoins = coins.map(chunkASKOHVGX_cjs.normalizeVtxo).sort(bySelectionOrder);
17350
+ const sortedCoins = coins.map(chunkNMDISCGW_cjs.normalizeVtxo).sort(bySelectionOrder);
17350
17351
  const selectedCoins = [];
17351
17352
  let selectedAmount = 0;
17352
17353
  for (const coin of sortedCoins) {
@@ -17463,7 +17464,7 @@ function assertTimeoutMap(name, timeouts) {
17463
17464
  if (value === void 0) {
17464
17465
  throw new Error(`${name}.${key} must be a non-negative safe integer`);
17465
17466
  }
17466
- chunkASKOHVGX_cjs.assertTimerMs(`${name}.${key}`, value);
17467
+ chunkNMDISCGW_cjs.assertTimerMs(`${name}.${key}`, value);
17467
17468
  }
17468
17469
  }
17469
17470
  var MessageBus = class {
@@ -17480,8 +17481,8 @@ var MessageBus = class {
17480
17481
  }) {
17481
17482
  this.walletRepository = walletRepository;
17482
17483
  this.contractRepository = contractRepository;
17483
- chunkASKOHVGX_cjs.assertTimerMs("tickIntervalMs", tickIntervalMs);
17484
- chunkASKOHVGX_cjs.assertTimerMs("messageTimeoutMs", messageTimeoutMs);
17484
+ chunkNMDISCGW_cjs.assertTimerMs("tickIntervalMs", tickIntervalMs);
17485
+ chunkNMDISCGW_cjs.assertTimerMs("messageTimeoutMs", messageTimeoutMs);
17485
17486
  assertTimeoutMap("messageTimeoutOverrides", messageTimeoutOverrides);
17486
17487
  this.intentRepository = intentRepository;
17487
17488
  this.onchainProvider = onchainProvider;
@@ -17737,14 +17738,14 @@ var MessageBus = class {
17737
17738
  this.initialized = true;
17738
17739
  }
17739
17740
  async buildServices(config) {
17740
- const arkProvider = new chunkASKOHVGX_cjs.RestArkProvider(config.arkServer.url);
17741
+ const arkProvider = new chunkNMDISCGW_cjs.RestArkProvider(config.arkServer.url);
17741
17742
  const storage = {
17742
17743
  walletRepository: this.walletRepository,
17743
17744
  contractRepository: this.contractRepository,
17744
17745
  ...this.intentRepository && { intentRepository: this.intentRepository }
17745
17746
  };
17746
17747
  const delegateProvider = config.delegateUrl ? new RestDelegateProvider(config.delegateUrl) : void 0;
17747
- const indexerProvider = new chunkAICUNREA_cjs.RestIndexerProvider(config.arkServer.url);
17748
+ const indexerProvider = new chunkX2BWPGCY_cjs.RestIndexerProvider(config.arkServer.url);
17748
17749
  const serialized = normalizeSerializedIdentity(config.wallet);
17749
17750
  if (isSigningSerialized(serialized)) {
17750
17751
  const identity2 = hydrateIdentity(serialized);
@@ -18086,7 +18087,7 @@ var offboardNetworkNames = [
18086
18087
  function offboardDestinationScript(destinationAddress) {
18087
18088
  for (const networkName of offboardNetworkNames) {
18088
18089
  try {
18089
- const network = chunkASKOHVGX_cjs.networks[networkName];
18090
+ const network = chunkNMDISCGW_cjs.networks[networkName];
18090
18091
  const addr = btcSigner.Address(network).decode(destinationAddress);
18091
18092
  return btcSigner.OutScript.encode(addr);
18092
18093
  } catch {
@@ -18126,7 +18127,7 @@ function filterOffboardInputs(vtxos, feeInfo, named) {
18126
18127
  const inputs = [];
18127
18128
  let subtotal = 0n;
18128
18129
  for (const vtxo of vtxos) {
18129
- const inputFee = estimator.evalOffchainInput(chunkASKOHVGX_cjs.toOffchainInputFeeParams(vtxo));
18130
+ const inputFee = estimator.evalOffchainInput(chunkNMDISCGW_cjs.toOffchainInputFeeParams(vtxo));
18130
18131
  if (inputFee.satoshis >= vtxo.value) {
18131
18132
  if (named) {
18132
18133
  throw new Error(
@@ -18223,7 +18224,7 @@ var Ramps = class {
18223
18224
  }
18224
18225
  amount = amount ?? totalAmount;
18225
18226
  const offchainAddress = await this.wallet.getAddress();
18226
- const offchainAddr = chunkASKOHVGX_cjs.ArkAddress.decode(offchainAddress);
18227
+ const offchainAddr = chunkNMDISCGW_cjs.ArkAddress.decode(offchainAddress);
18227
18228
  const offchainScript = base.hex.encode(offchainAddr.pkScript);
18228
18229
  const outputFee = estimator.evalOffchainOutput({
18229
18230
  amount,
@@ -18373,7 +18374,7 @@ var Ramps = class {
18373
18374
  const ordered = [...candidates].sort(bySelectionOrder);
18374
18375
  let covered = 0n;
18375
18376
  for (let i = 0; i < ordered.length && i < MAX_VTXOS_PER_SETTLEMENT; i++) {
18376
- const fee = estimator.evalOffchainInput(chunkASKOHVGX_cjs.toOffchainInputFeeParams(ordered[i])).satoshis;
18377
+ const fee = estimator.evalOffchainInput(chunkNMDISCGW_cjs.toOffchainInputFeeParams(ordered[i])).satoshis;
18377
18378
  covered += BigInt(ordered[i].value) - BigInt(fee);
18378
18379
  if (covered < needed) continue;
18379
18380
  try {
@@ -18407,7 +18408,7 @@ var Ramps = class {
18407
18408
  async fundChange(left, estimator) {
18408
18409
  if (left <= 0n) return { change: 0n };
18409
18410
  const changeAddress = await this.wallet.getAddress();
18410
- const changeScript = base.hex.encode(chunkASKOHVGX_cjs.ArkAddress.decode(changeAddress).pkScript);
18411
+ const changeScript = base.hex.encode(chunkNMDISCGW_cjs.ArkAddress.decode(changeAddress).pkScript);
18411
18412
  const { change } = changeAfterOutputFee(
18412
18413
  left,
18413
18414
  (amount) => BigInt(estimator.evalOffchainOutput({ amount, script: changeScript }).satoshis)
@@ -19341,7 +19342,7 @@ var WalletMessageHandler = class {
19341
19342
  this.lazyBoardingInit = payload.lazyBoarding ?? false;
19342
19343
  this.boardingEpoch++;
19343
19344
  this.boardingLoaded = false;
19344
- this.indexerProvider = new chunkAICUNREA_cjs.RestIndexerProvider(arkServerUrl);
19345
+ this.indexerProvider = new chunkX2BWPGCY_cjs.RestIndexerProvider(arkServerUrl);
19345
19346
  await this.onWalletInitialized();
19346
19347
  }
19347
19348
  /** @see RequestInitWallet.payload.lazyBoarding */
@@ -19763,7 +19764,7 @@ var WalletMessageHandler = class {
19763
19764
  this.readonlyWallet.getBoardingTxs()
19764
19765
  ]);
19765
19766
  const indexerProvider = this.indexerProvider;
19766
- const resolveTxCreatedAt = indexerProvider ? (txids) => chunkASKOHVGX_cjs.fetchVtxoCreatedAtByTxid(indexerProvider, txids) : void 0;
19767
+ const resolveTxCreatedAt = indexerProvider ? (txids) => chunkNMDISCGW_cjs.fetchVtxoCreatedAtByTxid(indexerProvider, txids) : void 0;
19767
19768
  return buildTransactionHistory(
19768
19769
  vtxos,
19769
19770
  boardingTxs,
@@ -19832,7 +19833,7 @@ var DEFAULT_MESSAGE_TIMEOUTS = {
19832
19833
  // budget so the worker's snapshot fallback stays reachable before this
19833
19834
  // page deadline fires — lowering it below the budget would time the page
19834
19835
  // out while the worker is still seconds from answering from cache.
19835
- GET_ARKADE_INFO: chunkASKOHVGX_cjs.INFO_FETCH_TIMEOUT_MS + 8e3,
19836
+ GET_ARKADE_INFO: chunkNMDISCGW_cjs.INFO_FETCH_TIMEOUT_MS + 8e3,
19836
19837
  INDEXER_GET_VTXOS: 2e4,
19837
19838
  INDEXER_GET_VIRTUAL_TXS: 2e4,
19838
19839
  GET_VTXOS: 2e4,
@@ -19977,7 +19978,7 @@ var ServiceWorkerAssetManager = class extends ServiceWorkerReadonlyAssetManager
19977
19978
  }
19978
19979
  };
19979
19980
  var initializeMessageBus = (serviceWorker, config, timeoutMs = 2e3) => {
19980
- chunkASKOHVGX_cjs.assertTimerMs("messageBusTimeoutMs", timeoutMs);
19981
+ chunkNMDISCGW_cjs.assertTimerMs("messageBusTimeoutMs", timeoutMs);
19981
19982
  const initCmd = {
19982
19983
  tag: "INITIALIZE_MESSAGE_BUS",
19983
19984
  id: getRandomId(),
@@ -20065,7 +20066,7 @@ var ServiceWorkerReadonlyWallet = class _ServiceWorkerReadonlyWallet {
20065
20066
  }
20066
20067
  /** Shared tail of both `create()` factories: boot the bus, INIT_WALLET, cache for reinit. */
20067
20068
  static async bootstrap(wallet, options, serializedWallet, busConfig) {
20068
- const arkServer = options.arkServer ?? { url: chunkASKOHVGX_cjs.DEFAULT_ARKADE_SERVER_URL };
20069
+ const arkServer = options.arkServer ?? { url: chunkNMDISCGW_cjs.DEFAULT_ARKADE_SERVER_URL };
20069
20070
  const initWalletPayload = {
20070
20071
  lazyBoarding: options.lazyBoarding,
20071
20072
  arkServerUrl: arkServer.url,
@@ -20075,7 +20076,7 @@ var ServiceWorkerReadonlyWallet = class _ServiceWorkerReadonlyWallet {
20075
20076
  Object.entries(options.messageTimeouts ?? {}).filter(([, ms]) => ms !== void 0)
20076
20077
  );
20077
20078
  for (const [key, value] of Object.entries(overrides)) {
20078
- chunkASKOHVGX_cjs.assertTimerMs(`messageTimeouts.${key}`, value);
20079
+ chunkNMDISCGW_cjs.assertTimerMs(`messageTimeouts.${key}`, value);
20079
20080
  }
20080
20081
  const messageTimeouts = {
20081
20082
  ...DEFAULT_MESSAGE_TIMEOUTS,
@@ -20415,7 +20416,7 @@ var ServiceWorkerReadonlyWallet = class _ServiceWorkerReadonlyWallet {
20415
20416
  try {
20416
20417
  const response = await this.sendMessage(message);
20417
20418
  const { vtxos, page } = response.payload;
20418
- return { vtxos: vtxos.map(chunkASKOHVGX_cjs.normalizeVtxo), page: page && { ...page } };
20419
+ return { vtxos: vtxos.map(chunkNMDISCGW_cjs.normalizeVtxo), page: page && { ...page } };
20419
20420
  } catch (cause) {
20420
20421
  throw new Error(`Failed to get vtxos: ${cause}`, { cause });
20421
20422
  }
@@ -20519,7 +20520,7 @@ var ServiceWorkerReadonlyWallet = class _ServiceWorkerReadonlyWallet {
20519
20520
  };
20520
20521
  try {
20521
20522
  const response = await this.sendMessage(message);
20522
- return response.payload.vtxos.map(chunkASKOHVGX_cjs.normalizeVtxo);
20523
+ return response.payload.vtxos.map(chunkNMDISCGW_cjs.normalizeVtxo);
20523
20524
  } catch (error) {
20524
20525
  throw new Error(`Failed to get vtxos: ${error}`);
20525
20526
  }
@@ -20550,7 +20551,7 @@ var ServiceWorkerReadonlyWallet = class _ServiceWorkerReadonlyWallet {
20550
20551
  "Service worker does not support the requested contract scope or freshness check"
20551
20552
  );
20552
20553
  }
20553
- return payload.vtxos.map(chunkASKOHVGX_cjs.normalizeVtxo);
20554
+ return payload.vtxos.map(chunkNMDISCGW_cjs.normalizeVtxo);
20554
20555
  } catch (error) {
20555
20556
  throw new Error(`Failed to get spendable vtxos: ${error}`);
20556
20557
  }
@@ -20745,7 +20746,7 @@ var ServiceWorkerReadonlyWallet = class _ServiceWorkerReadonlyWallet {
20745
20746
  };
20746
20747
  try {
20747
20748
  const response = await sendContractMessage(message);
20748
- return response.payload.vtxos.map(chunkASKOHVGX_cjs.normalizeVtxo);
20749
+ return response.payload.vtxos.map(chunkNMDISCGW_cjs.normalizeVtxo);
20749
20750
  } catch (cause) {
20750
20751
  throw new Error(`Failed to annotate vtxos: ${cause}`, { cause });
20751
20752
  }
@@ -21385,7 +21386,7 @@ var ServiceWorkerWallet = class _ServiceWorkerWallet extends ServiceWorkerReadon
21385
21386
  };
21386
21387
  try {
21387
21388
  const response = await wallet.sendMessage(message);
21388
- return response.payload.vtxos.map(chunkASKOHVGX_cjs.normalizeVtxo);
21389
+ return response.payload.vtxos.map(chunkNMDISCGW_cjs.normalizeVtxo);
21389
21390
  } catch (e) {
21390
21391
  throw new Error(`Failed to get expiring vtxos: ${e}`);
21391
21392
  }
@@ -21502,12 +21503,12 @@ var OnchainWallet = class _OnchainWallet {
21502
21503
  * @returns Configured onchain wallet
21503
21504
  * @throws Error if the configured identity cannot produce a valid x-only public key
21504
21505
  */
21505
- static async create(identity, networkName = chunkASKOHVGX_cjs.DEFAULT_NETWORK_NAME, provider) {
21506
+ static async create(identity, networkName = chunkNMDISCGW_cjs.DEFAULT_NETWORK_NAME, provider) {
21506
21507
  const pubkey = await identity.xOnlyPublicKey();
21507
21508
  if (!pubkey) {
21508
21509
  throw new Error("Invalid configured public key");
21509
21510
  }
21510
- const network = chunkASKOHVGX_cjs.getNetwork(networkName);
21511
+ const network = chunkNMDISCGW_cjs.getNetwork(networkName);
21511
21512
  const onchainProvider = provider || new EsploraProvider(ESPLORA_URL[networkName]);
21512
21513
  const onchainP2TR = btcSigner.p2tr(pubkey, void 0, network);
21513
21514
  return new _OnchainWallet(identity, network, onchainP2TR, onchainProvider);
@@ -21607,7 +21608,7 @@ var OnchainWallet = class _OnchainWallet {
21607
21608
  feeRate,
21608
21609
  params.address
21609
21610
  );
21610
- let tx = new chunkASKOHVGX_cjs.Transaction();
21611
+ let tx = new chunkNMDISCGW_cjs.Transaction();
21611
21612
  for (const input of inputs) {
21612
21613
  tx.addInput({
21613
21614
  txid: input.txid,
@@ -21665,7 +21666,7 @@ var OnchainWallet = class _OnchainWallet {
21665
21666
  * @throws If the parent has no anchor, or funding cannot be selected/signed
21666
21667
  */
21667
21668
  async bumpAnchor(parentHex, feeRate) {
21668
- const parent = chunkASKOHVGX_cjs.Transaction.fromRaw(base.hex.decode(parentHex));
21669
+ const parent = chunkNMDISCGW_cjs.Transaction.fromRaw(base.hex.decode(parentHex));
21669
21670
  const coins = (await this.getCoins()).filter((c) => c.status.confirmed);
21670
21671
  const child = await this.buildBumpPackage(parent, feeRate, coins);
21671
21672
  return [parent.hex, child.hex];
@@ -22481,7 +22482,7 @@ var CachingArkProvider = class {
22481
22482
  constructor(inner, ttlMs = DEFAULT_TTL_MS) {
22482
22483
  this.inner = inner;
22483
22484
  this.ttlMs = ttlMs;
22484
- chunkASKOHVGX_cjs.assertNonNegativeMs("ttlMs", ttlMs);
22485
+ chunkNMDISCGW_cjs.assertNonNegativeMs("ttlMs", ttlMs);
22485
22486
  this.unsubscribe = inner.onServerInfoChanged?.((info) => {
22486
22487
  this.cached = info;
22487
22488
  this.expiresAt = Date.now() + this.ttlMs;
@@ -22573,7 +22574,7 @@ async function resolvePrevTxs(txids, source, onchain) {
22573
22574
  try {
22574
22575
  const { txs } = await source.getVirtualTxs(wanted);
22575
22576
  for (const psbt of txs) {
22576
- const tx = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(psbt));
22577
+ const tx = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(psbt));
22577
22578
  resolved.set(tx.id, tx.toBytes());
22578
22579
  }
22579
22580
  } catch (err) {
@@ -22606,7 +22607,7 @@ async function resolvePrevTxs(txids, source, onchain) {
22606
22607
  async function attachPrevArkTxs(tx, txids, source, onchain) {
22607
22608
  const pending = [];
22608
22609
  for (let i = 0; i < tx.inputsLength; i++) {
22609
- if (chunkASKOHVGX_cjs.getArkPsbtFields(tx, i, chunkASKOHVGX_cjs.PrevArkTxField).length === 0) pending.push(i);
22610
+ if (chunkNMDISCGW_cjs.getArkPsbtFields(tx, i, chunkNMDISCGW_cjs.PrevArkTxField).length === 0) pending.push(i);
22610
22611
  }
22611
22612
  if (pending.length === 0) return;
22612
22613
  const resolved = await resolvePrevTxs(
@@ -22615,13 +22616,13 @@ async function attachPrevArkTxs(tx, txids, source, onchain) {
22615
22616
  onchain
22616
22617
  );
22617
22618
  for (const i of pending) {
22618
- chunkASKOHVGX_cjs.setArkPsbtField(tx, i, chunkASKOHVGX_cjs.PrevArkTxField, resolved.get(txidAt(txids, i)));
22619
+ chunkNMDISCGW_cjs.setArkPsbtField(tx, i, chunkNMDISCGW_cjs.PrevArkTxField, resolved.get(txidAt(txids, i)));
22619
22620
  }
22620
22621
  }
22621
22622
  async function attachPrevoutTxs(tx, source) {
22622
22623
  const pending = [];
22623
22624
  for (let i = 0; i < tx.inputsLength; i++) {
22624
- if (chunkASKOHVGX_cjs.getArkPsbtFields(tx, i, chunkASKOHVGX_cjs.PrevoutTxField).length > 0) continue;
22625
+ if (chunkNMDISCGW_cjs.getArkPsbtFields(tx, i, chunkNMDISCGW_cjs.PrevoutTxField).length > 0) continue;
22625
22626
  const input = tx.getInput(i);
22626
22627
  if (!input?.txid) throw new PrevTxUnavailableError(`input ${i} has no outpoint`);
22627
22628
  pending.push({ index: i, txid: base.hex.encode(input.txid) });
@@ -22632,7 +22633,7 @@ async function attachPrevoutTxs(tx, source) {
22632
22633
  resolved.set(txid, await source.getRawTransaction(txid));
22633
22634
  }
22634
22635
  for (const { index, txid } of pending) {
22635
- chunkASKOHVGX_cjs.setArkPsbtField(tx, index, chunkASKOHVGX_cjs.PrevoutTxField, resolved.get(txid));
22636
+ chunkNMDISCGW_cjs.setArkPsbtField(tx, index, chunkNMDISCGW_cjs.PrevoutTxField, resolved.get(txid));
22636
22637
  }
22637
22638
  }
22638
22639
  async function withPrevTxs(coins, source, onchain) {
@@ -22658,7 +22659,7 @@ exports.BIP322 = void 0;
22658
22659
  async function sign2(message, identity, network) {
22659
22660
  const xOnlyPubKey = await identity.xOnlyPublicKey();
22660
22661
  const payment = btcSigner.p2tr(xOnlyPubKey, void 0, network);
22661
- const toSpend = chunkASKOHVGX_cjs.craftToSpendTx(message, payment.script, TAG_BIP322);
22662
+ const toSpend = chunkNMDISCGW_cjs.craftToSpendTx(message, payment.script, TAG_BIP322);
22662
22663
  const toSign = craftBIP322ToSignP2TR(toSpend, payment.script, xOnlyPubKey);
22663
22664
  const signed = await identity.sign(toSign, [0]);
22664
22665
  signed.finalizeIdx(0);
@@ -22716,7 +22717,7 @@ function verifyP2TR(message, witnessItems, pkScript, pubkey) {
22716
22717
  if (sighashType !== btcSigner.SigHash.DEFAULT && sighashType !== btcSigner.SigHash.ALL) {
22717
22718
  return false;
22718
22719
  }
22719
- const toSpend = chunkASKOHVGX_cjs.craftToSpendTx(message, pkScript, TAG_BIP322);
22720
+ const toSpend = chunkNMDISCGW_cjs.craftToSpendTx(message, pkScript, TAG_BIP322);
22720
22721
  const toSign = craftBIP322ToSignP2TR(toSpend, pkScript);
22721
22722
  const sighash = toSign.preimageWitnessV1(0, [pkScript], sighashType, [0n]);
22722
22723
  const rawSig = sig.length === 65 ? sig.subarray(0, 64) : sig;
@@ -22737,7 +22738,7 @@ function verifyP2WPKH(message, witnessItems, pkScript, addressHash) {
22737
22738
  }
22738
22739
  const sighashType = sigWithHash[sigWithHash.length - 1];
22739
22740
  const derSig = sigWithHash.subarray(0, sigWithHash.length - 1);
22740
- const toSpend = chunkASKOHVGX_cjs.craftToSpendTx(message, pkScript, TAG_BIP322);
22741
+ const toSpend = chunkNMDISCGW_cjs.craftToSpendTx(message, pkScript, TAG_BIP322);
22741
22742
  const toSign = craftBIP322ToSignSimple(toSpend, pkScript);
22742
22743
  const scriptCode = btcSigner.OutScript.encode({ type: "pkh", hash: addressHash });
22743
22744
  const sighash = toSign.preimageWitnessV0(0, scriptCode, sighashType, 0n);
@@ -22790,7 +22791,7 @@ function encodeCompactSize(n) {
22790
22791
  return buf;
22791
22792
  }
22792
22793
  function craftBIP322ToSignP2TR(toSpend, pkScript, tapInternalKey) {
22793
- const tx = new chunkASKOHVGX_cjs.Transaction({ version: 0 });
22794
+ const tx = new chunkNMDISCGW_cjs.Transaction({ version: 0 });
22794
22795
  tx.addInput({
22795
22796
  txid: toSpend.id,
22796
22797
  index: 0,
@@ -22804,12 +22805,12 @@ function craftBIP322ToSignP2TR(toSpend, pkScript, tapInternalKey) {
22804
22805
  });
22805
22806
  tx.addOutput({
22806
22807
  amount: 0n,
22807
- script: chunkASKOHVGX_cjs.OP_RETURN_EMPTY_PKSCRIPT
22808
+ script: chunkNMDISCGW_cjs.OP_RETURN_EMPTY_PKSCRIPT
22808
22809
  });
22809
22810
  return tx;
22810
22811
  }
22811
22812
  function craftBIP322ToSignSimple(toSpend, pkScript) {
22812
- const tx = new chunkASKOHVGX_cjs.Transaction({ version: 0 });
22813
+ const tx = new chunkNMDISCGW_cjs.Transaction({ version: 0 });
22813
22814
  tx.addInput({
22814
22815
  txid: toSpend.id,
22815
22816
  index: 0,
@@ -22821,12 +22822,12 @@ function craftBIP322ToSignSimple(toSpend, pkScript) {
22821
22822
  });
22822
22823
  tx.addOutput({
22823
22824
  amount: 0n,
22824
- script: chunkASKOHVGX_cjs.OP_RETURN_EMPTY_PKSCRIPT
22825
+ script: chunkNMDISCGW_cjs.OP_RETURN_EMPTY_PKSCRIPT
22825
22826
  });
22826
22827
  return tx;
22827
22828
  }
22828
22829
  function finalizeVirtualTx(type, psbtBase64) {
22829
- const tx = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(psbtBase64));
22830
+ const tx = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(psbtBase64));
22830
22831
  if (type === "INDEXER_CHAINED_TX_TYPE_TREE" /* TREE */) {
22831
22832
  const input = tx.getInput(0);
22832
22833
  if (!input) {
@@ -22853,14 +22854,14 @@ var ExitPathError = class extends Error {
22853
22854
  reason;
22854
22855
  };
22855
22856
  function delayWeight(sequence) {
22856
- const t = chunkASKOHVGX_cjs.sequenceToTimelock(sequence);
22857
+ const t = chunkNMDISCGW_cjs.sequenceToTimelock(sequence);
22857
22858
  return t.type === "blocks" ? Number(t.value) : Number(t.value) / 600;
22858
22859
  }
22859
22860
  async function resolveUnilateralPath(params) {
22860
22861
  const { vtxo, scriptHex, contractRepository } = params;
22861
22862
  const contract = contractRepository ? (await collectContracts(contractRepository, { script: scriptHex }))[0] : void 0;
22862
22863
  if (contract) {
22863
- const handler = chunk4MCQZYH6_cjs.contractHandlers.get(contract.type);
22864
+ const handler = chunkM4DM3N6F_cjs.contractHandlers.get(contract.type);
22864
22865
  if (!handler) {
22865
22866
  throw new ExitPathError(
22866
22867
  "no-handler",
@@ -22882,12 +22883,12 @@ async function resolveUnilateralPath(params) {
22882
22883
  paths.sort((a, b) => delayWeight(a.sequence) - delayWeight(b.sequence));
22883
22884
  return { selection: paths[0], label: `${contract.type}:unilateral` };
22884
22885
  }
22885
- const decoded = chunkASKOHVGX_cjs.VtxoScript.decode(vtxo.tapTree);
22886
+ const decoded = chunkNMDISCGW_cjs.VtxoScript.decode(vtxo.tapTree);
22886
22887
  let best;
22887
22888
  for (const exit of decoded.exitPaths()) {
22888
22889
  const leaf = decoded.findLeaf(base.hex.encode(exit.script));
22889
22890
  if (!leaf) continue;
22890
- const sequence = chunkASKOHVGX_cjs.timelockToSequence(exit.params.timelock);
22891
+ const sequence = chunkNMDISCGW_cjs.timelockToSequence(exit.params.timelock);
22891
22892
  const weight = delayWeight(sequence);
22892
22893
  if (!best || weight < best.weight) {
22893
22894
  best = { selection: { leaf, sequence }, weight };
@@ -23094,7 +23095,7 @@ async function prepareUnrollTransaction(wallet, vtxoTxIds, outputAddress) {
23094
23095
  const txWeightEstimator = TxWeightEstimator.create();
23095
23096
  const walletDescriptor = base.hex.encode(await wallet.identity.xOnlyPublicKey());
23096
23097
  for (const vtxo of vtxos) {
23097
- if (!chunkASKOHVGX_cjs.canSweepOnchain(vtxo)) {
23098
+ if (!chunkNMDISCGW_cjs.canSweepOnchain(vtxo)) {
23098
23099
  throw new Error(
23099
23100
  `Vtxo ${vtxo.txid}:${vtxo.vout} cannot be swept onchain: it is not fully unrolled (use unroll first), or its exit output was already spent`
23100
23101
  );
@@ -23105,14 +23106,14 @@ async function prepareUnrollTransaction(wallet, vtxoTxIds, outputAddress) {
23105
23106
  }
23106
23107
  const resolved = await resolveUnilateralPath({
23107
23108
  vtxo,
23108
- scriptHex: base.hex.encode(chunkASKOHVGX_cjs.VtxoScript.decode(vtxo.tapTree).pkScript),
23109
+ scriptHex: base.hex.encode(chunkNMDISCGW_cjs.VtxoScript.decode(vtxo.tapTree).pkScript),
23109
23110
  contractRepository: wallet.contractRepository,
23110
23111
  walletDescriptor,
23111
23112
  currentTime: Date.now()
23112
23113
  });
23113
23114
  const spendingLeaf = resolved.selection.leaf;
23114
23115
  const sequence = resolved.selection.sequence;
23115
- const timelock = chunkASKOHVGX_cjs.sequenceToTimelock(sequence);
23116
+ const timelock = chunkNMDISCGW_cjs.sequenceToTimelock(sequence);
23116
23117
  const elapsed = timelock.type === "blocks" ? chainTip.height >= txStatus.blockHeight + Number(timelock.value) : chainTip.time >= txStatus.blockTime + Number(timelock.value);
23117
23118
  if (!elapsed) {
23118
23119
  throw new Error(`no available exit path found for vtxo ${vtxo.txid}:${vtxo.vout}`);
@@ -23125,7 +23126,7 @@ async function prepareUnrollTransaction(wallet, vtxoTxIds, outputAddress) {
23125
23126
  sequence,
23126
23127
  witnessUtxo: {
23127
23128
  amount: BigInt(vtxo.value),
23128
- script: chunkASKOHVGX_cjs.VtxoScript.decode(vtxo.tapTree).pkScript
23129
+ script: chunkNMDISCGW_cjs.VtxoScript.decode(vtxo.tapTree).pkScript
23129
23130
  },
23130
23131
  sighashType: btcSigner.SigHash.DEFAULT
23131
23132
  });
@@ -23135,7 +23136,7 @@ async function prepareUnrollTransaction(wallet, vtxoTxIds, outputAddress) {
23135
23136
  btcSigner.TaprootControlBlock.encode(spendingLeaf[0]).length
23136
23137
  );
23137
23138
  }
23138
- const tx = new chunkASKOHVGX_cjs.Transaction({ version: 2 });
23139
+ const tx = new chunkNMDISCGW_cjs.Transaction({ version: 2 });
23139
23140
  for (const input of inputs) {
23140
23141
  tx.addInput(input);
23141
23142
  }
@@ -23218,7 +23219,7 @@ async function buildSignedSweep(params) {
23218
23219
  `uneconomic vtxo ${vtxo.txid}:${vtxo.vout}: value ${vtxo.value} - fee ${fee} < dust`
23219
23220
  );
23220
23221
  }
23221
- const tx = new chunkASKOHVGX_cjs.Transaction({ version: 2 });
23222
+ const tx = new chunkNMDISCGW_cjs.Transaction({ version: 2 });
23222
23223
  tx.addInput({
23223
23224
  txid: vtxo.txid,
23224
23225
  index: vtxo.vout,
@@ -23243,7 +23244,7 @@ async function buildSignedSweep(params) {
23243
23244
  finalScriptWitness: [
23244
23245
  tapScriptSig[0][1],
23245
23246
  ...path.extraWitness,
23246
- chunkASKOHVGX_cjs.scriptFromTapLeafScript(path.leaf),
23247
+ chunkNMDISCGW_cjs.scriptFromTapLeafScript(path.leaf),
23247
23248
  btcSigner.TaprootControlBlock.encode(controlBlock)
23248
23249
  ]
23249
23250
  });
@@ -23273,7 +23274,7 @@ async function resolveFeeRate(opts) {
23273
23274
  }
23274
23275
  async function selectExitVtxos(opts) {
23275
23276
  if (!opts.vtxos) return opts.wallet.getVtxos();
23276
- const res = await chunkASKOHVGX_cjs.getNormalizedVtxos(opts.wallet.indexerProvider, { outpoints: opts.vtxos });
23277
+ const res = await chunkNMDISCGW_cjs.getNormalizedVtxos(opts.wallet.indexerProvider, { outpoints: opts.vtxos });
23277
23278
  const tapTrees = /* @__PURE__ */ new Map();
23278
23279
  const out = [];
23279
23280
  for (const vtxo of res.vtxos) {
@@ -23288,7 +23289,7 @@ async function selectExitVtxos(opts) {
23288
23289
  `no contract registered for vtxo script ${vtxo.script} \u2014 register the contract before exiting`
23289
23290
  );
23290
23291
  }
23291
- const handler = chunk4MCQZYH6_cjs.contractHandlers.get(contract.type);
23292
+ const handler = chunkM4DM3N6F_cjs.contractHandlers.get(contract.type);
23292
23293
  if (!handler) {
23293
23294
  throw new Error(`no contract handler registered for type '${contract.type}'`);
23294
23295
  }
@@ -23318,7 +23319,7 @@ async function computeExitLayout(opts, feeRate) {
23318
23319
  if (pendingNodes.length > 0) {
23319
23320
  const txs = await resolver.getVirtualTxs(pendingNodes.map((n) => n.txid));
23320
23321
  for (const psbt of txs) {
23321
- psbts.set(chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(psbt)).id, psbt);
23322
+ psbts.set(chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(psbt)).id, psbt);
23322
23323
  }
23323
23324
  }
23324
23325
  const childVsize = Number(
@@ -23346,7 +23347,7 @@ async function computeExitLayout(opts, feeRate) {
23346
23347
  try {
23347
23348
  const resolved = await resolveUnilateralPath({
23348
23349
  vtxo,
23349
- scriptHex: base.hex.encode(chunkASKOHVGX_cjs.VtxoScript.decode(vtxo.tapTree).pkScript),
23350
+ scriptHex: base.hex.encode(chunkNMDISCGW_cjs.VtxoScript.decode(vtxo.tapTree).pkScript),
23350
23351
  contractRepository: wallet.contractRepository,
23351
23352
  walletDescriptor,
23352
23353
  currentTime: Date.now()
@@ -23365,7 +23366,7 @@ async function computeExitLayout(opts, feeRate) {
23365
23366
  });
23366
23367
  continue;
23367
23368
  }
23368
- const t = chunkASKOHVGX_cjs.sequenceToTimelock(resolved.selection.sequence);
23369
+ const t = chunkNMDISCGW_cjs.sequenceToTimelock(resolved.selection.sequence);
23369
23370
  const delay = { type: t.type, value: Number(t.value) };
23370
23371
  infos.push({ outpoint, value: vtxo.value, sweepFee, path: resolved.label, delay });
23371
23372
  sweeps.push({ vtxo, resolved, sweepFee, delay });
@@ -23472,7 +23473,7 @@ var Executor = class {
23472
23473
  constructor(pkg, provider, opts) {
23473
23474
  this.pkg = pkg;
23474
23475
  this.provider = provider;
23475
- chunkASKOHVGX_cjs.assertTimerMs("pollIntervalMs", opts?.pollIntervalMs);
23476
+ chunkNMDISCGW_cjs.assertTimerMs("pollIntervalMs", opts?.pollIntervalMs);
23476
23477
  this.pollIntervalMs = opts?.pollIntervalMs ?? 5e3;
23477
23478
  this.feeWallet = opts?.feeWallet;
23478
23479
  this.signal = opts?.signal;
@@ -23767,7 +23768,7 @@ async function prepare(opts) {
23767
23768
  txid: sweep.vtxo.txid,
23768
23769
  vout: sweep.vtxo.vout,
23769
23770
  value: sweep.vtxo.value,
23770
- pkScript: chunkASKOHVGX_cjs.VtxoScript.decode(sweep.vtxo.tapTree).pkScript
23771
+ pkScript: chunkNMDISCGW_cjs.VtxoScript.decode(sweep.vtxo.tapTree).pkScript
23771
23772
  },
23772
23773
  path: sweep.resolved.selection,
23773
23774
  outputAddress: opts.sweepAddress,
@@ -23856,7 +23857,7 @@ async function prepare(opts) {
23856
23857
  if (newFee <= splitterFee) break;
23857
23858
  splitterFee = newFee;
23858
23859
  }
23859
- const splitter = new chunkASKOHVGX_cjs.Transaction({ version: 2 });
23860
+ const splitter = new chunkNMDISCGW_cjs.Transaction({ version: 2 });
23860
23861
  for (const coin of selected.inputs) {
23861
23862
  splitter.addInput({
23862
23863
  txid: coin.txid,
@@ -23995,46 +23996,46 @@ var UnilateralExit = {
23995
23996
 
23996
23997
  // src/arkade/index.ts
23997
23998
  var arkade_exports = {};
23998
- chunkASKOHVGX_cjs.__export(arkade_exports, {
23999
- ARKADE_OP: () => chunk4MCQZYH6_cjs.ARKADE_OP,
24000
- ARKADE_OPCODES: () => chunk4MCQZYH6_cjs.ARKADE_OPCODES,
24001
- ARKADE_OPCODE_NAMES: () => chunk4MCQZYH6_cjs.ARKADE_OPCODE_NAMES,
24002
- ARKADE_OPCODE_VALUES: () => chunk4MCQZYH6_cjs.ARKADE_OPCODE_VALUES,
24003
- ARKADE_OPS: () => chunk4MCQZYH6_cjs.ARKADE_OPS,
23999
+ chunkNMDISCGW_cjs.__export(arkade_exports, {
24000
+ ARKADE_OP: () => chunkM4DM3N6F_cjs.ARKADE_OP,
24001
+ ARKADE_OPCODES: () => chunkM4DM3N6F_cjs.ARKADE_OPCODES,
24002
+ ARKADE_OPCODE_NAMES: () => chunkM4DM3N6F_cjs.ARKADE_OPCODE_NAMES,
24003
+ ARKADE_OPCODE_VALUES: () => chunkM4DM3N6F_cjs.ARKADE_OPCODE_VALUES,
24004
+ ARKADE_OPS: () => chunkM4DM3N6F_cjs.ARKADE_OPS,
24004
24005
  Arkade: () => Arkade,
24005
24006
  ArkadeContract: () => ArkadeContract,
24006
- ArkadeProgramScript: () => chunk4MCQZYH6_cjs.ArkadeProgramScript,
24007
- ArkadeScript: () => chunk4MCQZYH6_cjs.ArkadeScript,
24007
+ ArkadeProgramScript: () => chunkM4DM3N6F_cjs.ArkadeProgramScript,
24008
+ ArkadeScript: () => chunkM4DM3N6F_cjs.ArkadeScript,
24008
24009
  ArkadeTransactionBuilder: () => ArkadeTransactionBuilder,
24009
- BigNum: () => chunk4MCQZYH6_cjs.bignum_exports,
24010
+ BigNum: () => chunkM4DM3N6F_cjs.bignum_exports,
24010
24011
  OP: () => btcSigner.OP,
24011
- OPCODE_NAMES: () => chunk4MCQZYH6_cjs.OPCODE_NAMES,
24012
- OPCODE_VALUES: () => chunk4MCQZYH6_cjs.OPCODE_VALUES,
24013
- SUPPORTED_PROGRAM_VERSION: () => chunk4MCQZYH6_cjs.SUPPORTED_PROGRAM_VERSION,
24012
+ OPCODE_NAMES: () => chunkM4DM3N6F_cjs.OPCODE_NAMES,
24013
+ OPCODE_VALUES: () => chunkM4DM3N6F_cjs.OPCODE_VALUES,
24014
+ SUPPORTED_PROGRAM_VERSION: () => chunkM4DM3N6F_cjs.SUPPORTED_PROGRAM_VERSION,
24014
24015
  Script: () => btcSigner.Script,
24015
- UnsupportedProgramVersionError: () => chunk4MCQZYH6_cjs.UnsupportedProgramVersionError,
24016
- arkadeScriptHash: () => chunk4MCQZYH6_cjs.arkadeScriptHash,
24017
- arkadeWitnessHash: () => chunk4MCQZYH6_cjs.arkadeWitnessHash,
24018
- asmToBytes: () => chunk4MCQZYH6_cjs.asmToBytes,
24019
- bytesToASM: () => chunk4MCQZYH6_cjs.bytesToASM,
24020
- computeArkadeScriptPublicKey: () => chunk4MCQZYH6_cjs.computeArkadeScriptPublicKey,
24016
+ UnsupportedProgramVersionError: () => chunkM4DM3N6F_cjs.UnsupportedProgramVersionError,
24017
+ arkadeScriptHash: () => chunkM4DM3N6F_cjs.arkadeScriptHash,
24018
+ arkadeWitnessHash: () => chunkM4DM3N6F_cjs.arkadeWitnessHash,
24019
+ asmToBytes: () => chunkM4DM3N6F_cjs.asmToBytes,
24020
+ bytesToASM: () => chunkM4DM3N6F_cjs.bytesToASM,
24021
+ computeArkadeScriptPublicKey: () => chunkM4DM3N6F_cjs.computeArkadeScriptPublicKey,
24021
24022
  createArkadeBatchHandler: () => createArkadeBatchHandler,
24022
- deserializeArkadeContractParams: () => chunk4MCQZYH6_cjs.deserializeArkadeContractParams,
24023
- fromASM: () => chunk4MCQZYH6_cjs.fromASM,
24024
- getOpcodeName: () => chunk4MCQZYH6_cjs.getOpcodeName,
24025
- getOpcodeValue: () => chunk4MCQZYH6_cjs.getOpcodeValue,
24023
+ deserializeArkadeContractParams: () => chunkM4DM3N6F_cjs.deserializeArkadeContractParams,
24024
+ fromASM: () => chunkM4DM3N6F_cjs.fromASM,
24025
+ getOpcodeName: () => chunkM4DM3N6F_cjs.getOpcodeName,
24026
+ getOpcodeValue: () => chunkM4DM3N6F_cjs.getOpcodeValue,
24026
24027
  isContractArtifact: () => isContractArtifact,
24027
- parseArtifact: () => chunk4MCQZYH6_cjs.parseArtifact,
24028
+ parseArtifact: () => chunkM4DM3N6F_cjs.parseArtifact,
24028
24029
  programFromArtifact: () => programFromArtifact,
24029
24030
  resolveArkadeService: () => resolveArkadeService,
24030
- resolveAsm: () => chunk4MCQZYH6_cjs.resolveAsm,
24031
- serializeArkadeContractParams: () => chunk4MCQZYH6_cjs.serializeArkadeContractParams,
24032
- stringifyArtifact: () => chunk4MCQZYH6_cjs.stringifyArtifact,
24033
- toASM: () => chunk4MCQZYH6_cjs.toASM,
24034
- validateProgram: () => chunk4MCQZYH6_cjs.validateProgram,
24035
- witnessRefToBytes: () => chunk4MCQZYH6_cjs.witnessRefToBytes
24031
+ resolveAsm: () => chunkM4DM3N6F_cjs.resolveAsm,
24032
+ serializeArkadeContractParams: () => chunkM4DM3N6F_cjs.serializeArkadeContractParams,
24033
+ stringifyArtifact: () => chunkM4DM3N6F_cjs.stringifyArtifact,
24034
+ toASM: () => chunkM4DM3N6F_cjs.toASM,
24035
+ validateProgram: () => chunkM4DM3N6F_cjs.validateProgram,
24036
+ witnessRefToBytes: () => chunkM4DM3N6F_cjs.witnessRefToBytes
24036
24037
  });
24037
- var isVtxoCoin = (input) => chunkASKOHVGX_cjs.isVirtualCoin(input);
24038
+ var isVtxoCoin = (input) => chunkNMDISCGW_cjs.isVirtualCoin(input);
24038
24039
  function createArkadeBatchHandler(intentId, inputs, signer, signedProof, message, session, arkProvider, emulator, network, recipients, batchExpiryPolicy) {
24039
24040
  let batchId;
24040
24041
  let sweepTapTreeRoot;
@@ -24055,23 +24056,23 @@ function createArkadeBatchHandler(intentId, inputs, signer, signedProof, message
24055
24056
  );
24056
24057
  await arkProvider.confirmRegistration(intentId);
24057
24058
  batchId = event.id;
24058
- const sweepTapscript = chunkASKOHVGX_cjs.CSVMultisigTapscript.encode({
24059
+ const sweepTapscript = chunkNMDISCGW_cjs.CSVMultisigTapscript.encode({
24059
24060
  timelock,
24060
- pubkeys: [chunk4MCQZYH6_cjs.toXOnly(base.hex.decode(info.forfeitPubkey), "forfeit key")]
24061
+ pubkeys: [chunkM4DM3N6F_cjs.toXOnly(base.hex.decode(info.forfeitPubkey), "forfeit key")]
24061
24062
  }).script;
24062
24063
  sweepTapTreeRoot = payment_js.tapLeafHash(sweepTapscript);
24063
24064
  return { skip: false };
24064
24065
  },
24065
24066
  onTreeSigningStarted: async (event, vtxoTree) => {
24066
24067
  const signerPubKey = await session.getPublicKey();
24067
- const xonlySignerPubKey = chunk4MCQZYH6_cjs.toXOnly(signerPubKey, "signer key");
24068
+ const xonlySignerPubKey = chunkM4DM3N6F_cjs.toXOnly(signerPubKey, "signer key");
24068
24069
  const xOnlyPubkeys = event.cosignersPublicKeys.map(
24069
- (k) => base.hex.encode(chunk4MCQZYH6_cjs.toXOnly(base.hex.decode(k), "cosigner key"))
24070
+ (k) => base.hex.encode(chunkM4DM3N6F_cjs.toXOnly(base.hex.decode(k), "cosigner key"))
24070
24071
  );
24071
24072
  if (!xOnlyPubkeys.includes(base.hex.encode(xonlySignerPubKey))) {
24072
24073
  return { skip: true };
24073
24074
  }
24074
- const commitmentTx = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(event.unsignedCommitmentTx));
24075
+ const commitmentTx = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(event.unsignedCommitmentTx));
24075
24076
  validateVtxoTxGraph(vtxoTree, commitmentTx, sweepTapTreeRoot);
24076
24077
  if (recipients && recipients.length > 0) {
24077
24078
  validateBatchRecipients(commitmentTx, vtxoTree.leaves(), recipients, network);
@@ -24109,7 +24110,7 @@ function createArkadeBatchHandler(intentId, inputs, signer, signedProof, message
24109
24110
  if (connectorTree) {
24110
24111
  validateConnectorsTxGraph(event.commitmentTx, connectorTree);
24111
24112
  }
24112
- let commitmentPsbt = chunkASKOHVGX_cjs.Transaction.fromPSBT(base.base64.decode(event.commitmentTx));
24113
+ let commitmentPsbt = chunkNMDISCGW_cjs.Transaction.fromPSBT(base.base64.decode(event.commitmentTx));
24113
24114
  assertFinalCommitmentMatchesValidated(
24114
24115
  commitmentPsbt,
24115
24116
  validatedCommitmentTxid,
@@ -24151,7 +24152,7 @@ function createArkadeBatchHandler(intentId, inputs, signer, signedProof, message
24151
24152
  boardingIndices.push(boardingIdx);
24152
24153
  continue;
24153
24154
  }
24154
- if (!chunkASKOHVGX_cjs.requiresForfeit(input) || isSubdust(input, info.dust)) {
24155
+ if (!chunkNMDISCGW_cjs.requiresForfeit(input) || isSubdust(input, info.dust)) {
24155
24156
  continue;
24156
24157
  }
24157
24158
  if (connectorIndex >= connectorLeaves.length) {
@@ -24172,7 +24173,7 @@ function createArkadeBatchHandler(intentId, inputs, signer, signedProof, message
24172
24173
  index: input.vout,
24173
24174
  witnessUtxo: {
24174
24175
  amount: BigInt(input.value),
24175
- script: chunkASKOHVGX_cjs.VtxoScript.decode(input.tapTree).pkScript
24176
+ script: chunkNMDISCGW_cjs.VtxoScript.decode(input.tapTree).pkScript
24176
24177
  },
24177
24178
  sighashType: btcSigner.SigHash.DEFAULT,
24178
24179
  tapLeafScript: [input.forfeitTapLeafScript]
@@ -24283,7 +24284,7 @@ function inputDef(name, type) {
24283
24284
  return { name, type: argType(type) };
24284
24285
  }
24285
24286
  function argType(arkType) {
24286
- if (!Object.hasOwn(chunk4MCQZYH6_cjs.ARKADE_TYPE_ENCODINGS, arkType)) fail(`unknown type '${arkType}'`);
24287
+ if (!Object.hasOwn(chunkM4DM3N6F_cjs.ARKADE_TYPE_ENCODINGS, arkType)) fail(`unknown type '${arkType}'`);
24287
24288
  return arkType;
24288
24289
  }
24289
24290
  function arrayParts(type) {
@@ -24324,7 +24325,7 @@ function flatten(param, structs, stack = []) {
24324
24325
  function opcodeToken(token) {
24325
24326
  const base = token.slice(3);
24326
24327
  const name = base === "0" || /^([1-9]|1[0-6])$/.test(base) ? token : base;
24327
- if (!Object.hasOwn(chunk4MCQZYH6_cjs.ARKADE_OPS, name)) {
24328
+ if (!Object.hasOwn(chunkM4DM3N6F_cjs.ARKADE_OPS, name)) {
24328
24329
  fail(`opcode '${token}' is not in this SDK's table`);
24329
24330
  }
24330
24331
  return name;
@@ -24371,7 +24372,7 @@ function providedWitness(witness) {
24371
24372
  fail(`witness '${item.name}': injected must be boolean`);
24372
24373
  if (item.injected && item.type !== "signature")
24373
24374
  fail(`witness '${item.name}': only infrastructure signatures can be injected`);
24374
- if (item.encoding !== void 0 && item.encoding !== chunk4MCQZYH6_cjs.ARKADE_TYPE_ENCODINGS[type])
24375
+ if (item.encoding !== void 0 && item.encoding !== chunkM4DM3N6F_cjs.ARKADE_TYPE_ENCODINGS[type])
24375
24376
  fail(
24376
24377
  `witness '${item.name}': encoding '${item.encoding}' does not match type '${item.type}'`
24377
24378
  );
@@ -24380,7 +24381,7 @@ function providedWitness(witness) {
24380
24381
  }
24381
24382
  function csvTimelock(leafName, operand) {
24382
24383
  if (typeof operand === "string") return { type: "sequence", value: operand };
24383
- const timelock = chunkASKOHVGX_cjs.sequenceToCanonicalTimelock(operand);
24384
+ const timelock = chunkNMDISCGW_cjs.sequenceToCanonicalTimelock(operand);
24384
24385
  if (!timelock) {
24385
24386
  fail(`leaf '${leafName}': CSV literal ${operand} is not a canonical BIP68 sequence`);
24386
24387
  }
@@ -24474,7 +24475,7 @@ function programFromArtifact(artifact) {
24474
24475
  if (!isNamed(field)) fail(`struct '${struct.name}': field needs a name and type`);
24475
24476
  claim(fields, field.name, "struct field");
24476
24477
  }
24477
- if (Object.hasOwn(chunk4MCQZYH6_cjs.ARKADE_TYPE_ENCODINGS, struct.name) || Object.hasOwn(NATIVE_STRUCTS, struct.name)) {
24478
+ if (Object.hasOwn(chunkM4DM3N6F_cjs.ARKADE_TYPE_ENCODINGS, struct.name) || Object.hasOwn(NATIVE_STRUCTS, struct.name)) {
24478
24479
  fail(`struct name '${struct.name}' shadows a built-in type`);
24479
24480
  }
24480
24481
  claim(structNames, struct.name, "struct");
@@ -24557,7 +24558,7 @@ function programFromArtifact(artifact) {
24557
24558
  const paramNames = /* @__PURE__ */ new Set();
24558
24559
  for (const param of params) claim(paramNames, param.name, "program parameter");
24559
24560
  return {
24560
- version: chunk4MCQZYH6_cjs.SUPPORTED_PROGRAM_VERSION,
24561
+ version: chunkM4DM3N6F_cjs.SUPPORTED_PROGRAM_VERSION,
24561
24562
  name: artifact.contractName,
24562
24563
  params,
24563
24564
  functions
@@ -24639,16 +24640,16 @@ var Arkade = class _Arkade {
24639
24640
  indexer = opts.indexer;
24640
24641
  info = await opts.arkade.getInfo();
24641
24642
  }
24642
- const serverKey = chunk4MCQZYH6_cjs.toXOnly(base.hex.decode(info.signerPubkey), "ark signer key");
24643
- const checkpoint = chunkASKOHVGX_cjs.CSVMultisigTapscript.decode(base.hex.decode(info.checkpointTapscript));
24644
- const network = opts.network ?? (Object.hasOwn(chunkASKOHVGX_cjs.networks, info.network) ? chunkASKOHVGX_cjs.getNetwork(info.network) : chunkASKOHVGX_cjs.DEFAULT_NETWORK);
24643
+ const serverKey = chunkM4DM3N6F_cjs.toXOnly(base.hex.decode(info.signerPubkey), "ark signer key");
24644
+ const checkpoint = chunkNMDISCGW_cjs.CSVMultisigTapscript.decode(base.hex.decode(info.checkpointTapscript));
24645
+ const network = opts.network ?? (Object.hasOwn(chunkNMDISCGW_cjs.networks, info.network) ? chunkNMDISCGW_cjs.getNetwork(info.network) : chunkNMDISCGW_cjs.DEFAULT_NETWORK);
24645
24646
  let emulatorKey;
24646
24647
  if (emulator) {
24647
- emulatorKey = base.hex.decode(chunkASKOHVGX_cjs.resolveEmulatorPubkey(network, opts.emulatorPubkey));
24648
+ emulatorKey = base.hex.decode(chunkNMDISCGW_cjs.resolveEmulatorPubkey(network, opts.emulatorPubkey));
24648
24649
  }
24649
24650
  let userKey;
24650
24651
  if (opts.identity) {
24651
- userKey = chunk4MCQZYH6_cjs.toXOnly(await opts.identity.xOnlyPublicKey(), "identity key");
24652
+ userKey = chunkM4DM3N6F_cjs.toXOnly(await opts.identity.xOnlyPublicKey(), "identity key");
24652
24653
  }
24653
24654
  let contractManager = opts.contractManager;
24654
24655
  let ownsContractManager = false;
@@ -24767,7 +24768,7 @@ var Arkade = class _Arkade {
24767
24768
  `compiler artifact: server exit delay ${delay}s must be a multiple of 512 seconds`
24768
24769
  );
24769
24770
  }
24770
- const sequence = BigInt(chunkASKOHVGX_cjs.timelockToSequence(typed));
24771
+ const sequence = BigInt(chunkNMDISCGW_cjs.timelockToSequence(typed));
24771
24772
  if (args.SERVER_EXIT_DELAY !== void 0 && args.SERVER_EXIT_DELAY !== sequence && args.SERVER_EXIT_DELAY !== Number(sequence)) {
24772
24773
  throw new Error(
24773
24774
  "compiler artifact: reserved SERVER_EXIT_DELAY must match the connected server"
@@ -24788,7 +24789,7 @@ var ArkadeContract = class _ArkadeContract {
24788
24789
  userKey: client.userKey,
24789
24790
  emulatorKey: client.emulatorKey
24790
24791
  };
24791
- this.vtxoScript = new chunk4MCQZYH6_cjs.ArkadeProgramScript(program, args, this.keys);
24792
+ this.vtxoScript = new chunkM4DM3N6F_cjs.ArkadeProgramScript(program, args, this.keys);
24792
24793
  this.tapTree = this.vtxoScript.encode();
24793
24794
  this.compiled = this.vtxoScript.compiled;
24794
24795
  }
@@ -24813,7 +24814,7 @@ var ArkadeContract = class _ArkadeContract {
24813
24814
  `ArkadeContract.fromContract: expected contract type 'arkade', got '${contract.type}'`
24814
24815
  );
24815
24816
  }
24816
- const typed = chunk4MCQZYH6_cjs.deserializeArkadeContractParams(contract.params);
24817
+ const typed = chunkM4DM3N6F_cjs.deserializeArkadeContractParams(contract.params);
24817
24818
  return new _ArkadeContract(client, typed.program, typed.args, {
24818
24819
  serverKey: typed.serverKey,
24819
24820
  userKey: typed.userKey,
@@ -24849,7 +24850,7 @@ var ArkadeContract = class _ArkadeContract {
24849
24850
  toContractParams() {
24850
24851
  return {
24851
24852
  type: "arkade",
24852
- params: chunk4MCQZYH6_cjs.serializeArkadeContractParams({
24853
+ params: chunkM4DM3N6F_cjs.serializeArkadeContractParams({
24853
24854
  program: this.program,
24854
24855
  args: this.args,
24855
24856
  serverKey: this.keys.serverKey,
@@ -24936,17 +24937,17 @@ var ArkadeContract = class _ArkadeContract {
24936
24937
  const [registered] = await manager.getContracts({ script: scriptHex });
24937
24938
  if (registered) {
24938
24939
  const [withVtxos] = await manager.getContractsWithVtxos({ script: scriptHex });
24939
- return (withVtxos?.vtxos ?? []).filter((v) => !chunkASKOHVGX_cjs.isVtxoSpent(v) && !v.isUnrolled);
24940
+ return (withVtxos?.vtxos ?? []).filter((v) => !chunkNMDISCGW_cjs.isVtxoSpent(v) && !v.isUnrolled);
24940
24941
  }
24941
24942
  }
24942
24943
  if (!this.client.indexer) {
24943
24944
  throw new Error("ArkadeContract.getUtxos: an indexer is required");
24944
24945
  }
24945
- const { vtxos } = await chunkASKOHVGX_cjs.getNormalizedVtxos(this.client.indexer, {
24946
+ const { vtxos } = await chunkNMDISCGW_cjs.getNormalizedVtxos(this.client.indexer, {
24946
24947
  scripts: [scriptHex],
24947
24948
  spendableOnly: true
24948
24949
  });
24949
- return vtxos.filter((v) => !chunkASKOHVGX_cjs.isVtxoSpent(v) && !v.isUnrolled);
24950
+ return vtxos.filter((v) => !chunkNMDISCGW_cjs.isVtxoSpent(v) && !v.isUnrolled);
24950
24951
  }
24951
24952
  /** Total spendable balance (requires an indexer). */
24952
24953
  async getBalance() {
@@ -25055,7 +25056,7 @@ var ArkadeTransactionBuilder = class {
25055
25056
  this.contract.client.checkpoint
25056
25057
  );
25057
25058
  if (coin.sourceTx) {
25058
- chunkASKOHVGX_cjs.setArkPsbtField(arkTx, 0, chunkASKOHVGX_cjs.PrevArkTxField, coin.sourceTx);
25059
+ chunkNMDISCGW_cjs.setArkPsbtField(arkTx, 0, chunkNMDISCGW_cjs.PrevArkTxField, coin.sourceTx);
25059
25060
  }
25060
25061
  if (this.fn.arkadeScript) {
25061
25062
  const indexer = this.contract.client.indexer;
@@ -25072,8 +25073,8 @@ var ArkadeTransactionBuilder = class {
25072
25073
  }
25073
25074
  const condition = (def.tapscript.witness ?? []).map((w) => this.witnessBytes(w));
25074
25075
  if (condition.length > 0) {
25075
- chunkASKOHVGX_cjs.setArkPsbtField(arkTx, 0, chunkASKOHVGX_cjs.ConditionWitness, condition);
25076
- chunkASKOHVGX_cjs.setArkPsbtField(checkpoints[0], 0, chunkASKOHVGX_cjs.ConditionWitness, condition);
25076
+ chunkNMDISCGW_cjs.setArkPsbtField(arkTx, 0, chunkNMDISCGW_cjs.ConditionWitness, condition);
25077
+ chunkNMDISCGW_cjs.setArkPsbtField(checkpoints[0], 0, chunkNMDISCGW_cjs.ConditionWitness, condition);
25077
25078
  }
25078
25079
  const packets = [];
25079
25080
  if (this.assetSpecs.length > 0) {
@@ -25181,19 +25182,19 @@ var ArkadeTransactionBuilder = class {
25181
25182
  }
25182
25183
  buildAssetPacket() {
25183
25184
  const groups = this.assetSpecs.map((s) => {
25184
- const id = typeof s.assetId === "string" ? chunkAICUNREA_cjs.AssetId.fromString(s.assetId) : chunkAICUNREA_cjs.AssetId.fromBytes(s.assetId);
25185
- return chunkAICUNREA_cjs.AssetGroup.create(
25185
+ const id = typeof s.assetId === "string" ? chunkX2BWPGCY_cjs.AssetId.fromString(s.assetId) : chunkX2BWPGCY_cjs.AssetId.fromBytes(s.assetId);
25186
+ return chunkX2BWPGCY_cjs.AssetGroup.create(
25186
25187
  id,
25187
25188
  null,
25188
- s.inputs.map((i) => chunkAICUNREA_cjs.AssetInput.create(i.vin, i.amount)),
25189
- s.outputs.map((o) => chunkAICUNREA_cjs.AssetOutput.create(o.vout, o.amount)),
25190
- (s.metadata ?? []).map((m) => chunkAICUNREA_cjs.Metadata.create(m.key, m.value))
25189
+ s.inputs.map((i) => chunkX2BWPGCY_cjs.AssetInput.create(i.vin, i.amount)),
25190
+ s.outputs.map((o) => chunkX2BWPGCY_cjs.AssetOutput.create(o.vout, o.amount)),
25191
+ (s.metadata ?? []).map((m) => chunkX2BWPGCY_cjs.Metadata.create(m.key, m.value))
25191
25192
  );
25192
25193
  });
25193
- return chunkAICUNREA_cjs.Packet.create(groups);
25194
+ return chunkX2BWPGCY_cjs.Packet.create(groups);
25194
25195
  }
25195
25196
  witnessBytes(ref) {
25196
- return chunk4MCQZYH6_cjs.witnessRefToBytes(ref, this.args, this.contract.args);
25197
+ return chunkM4DM3N6F_cjs.witnessRefToBytes(ref, this.args, this.contract.args);
25197
25198
  }
25198
25199
  };
25199
25200
  function bindInputs(fn, callArgs) {
@@ -25207,7 +25208,7 @@ function bindInputs(fn, callArgs) {
25207
25208
  inputs.forEach((def, i) => {
25208
25209
  if (Object.hasOwn(bound, def.name))
25209
25210
  throw new Error(`${fn.name}: duplicate input '${def.name}'`);
25210
- chunk4MCQZYH6_cjs.validateParamValue(def, callArgs[i]);
25211
+ chunkM4DM3N6F_cjs.validateParamValue(def, callArgs[i]);
25211
25212
  bound[def.name] = callArgs[i];
25212
25213
  });
25213
25214
  return bound;
@@ -25618,17 +25619,17 @@ var walletFeeSource = (wallet) => async () => (await wallet.arkProvider.getInfo(
25618
25619
  function offchainInputFees(vtxos, fees) {
25619
25620
  const estimator = new Estimator(fees?.intentFee ?? {});
25620
25621
  return vtxos.reduce(
25621
- (total, vtxo) => total + estimator.evalOffchainInput(chunkASKOHVGX_cjs.toOffchainInputFeeParams(vtxo)).satoshis,
25622
+ (total, vtxo) => total + estimator.evalOffchainInput(chunkNMDISCGW_cjs.toOffchainInputFeeParams(vtxo)).satoshis,
25622
25623
  0
25623
25624
  );
25624
25625
  }
25625
25626
  async function changeOutputFee(wallet, inputs, needed, fees) {
25626
25627
  const estimator = new Estimator(fees?.intentFee ?? {});
25627
25628
  const net = inputs.reduce(
25628
- (total, vtxo) => total + BigInt(vtxo.value) - BigInt(estimator.evalOffchainInput(chunkASKOHVGX_cjs.toOffchainInputFeeParams(vtxo)).satoshis),
25629
+ (total, vtxo) => total + BigInt(vtxo.value) - BigInt(estimator.evalOffchainInput(chunkNMDISCGW_cjs.toOffchainInputFeeParams(vtxo)).satoshis),
25629
25630
  0n
25630
25631
  );
25631
- const script = base.hex.encode(chunkASKOHVGX_cjs.ArkAddress.decode(await wallet.getAddress()).pkScript);
25632
+ const script = base.hex.encode(chunkNMDISCGW_cjs.ArkAddress.decode(await wallet.getAddress()).pkScript);
25632
25633
  return changeAfterOutputFee(
25633
25634
  net - needed,
25634
25635
  (amount) => BigInt(estimator.evalOffchainOutput({ amount, script }).satoshis)
@@ -25931,5 +25932,5 @@ exports.waitForIncomingFunds = waitForIncomingFunds;
25931
25932
  exports.walletFeeSource = walletFeeSource;
25932
25933
  exports.warnAndFilterVtxosForScript = warnAndFilterVtxosForScript;
25933
25934
  exports.withPrevTxs = withPrevTxs;
25934
- //# sourceMappingURL=chunk-3SM7BMIE.cjs.map
25935
- //# sourceMappingURL=chunk-3SM7BMIE.cjs.map
25935
+ //# sourceMappingURL=chunk-H7DN4AJC.cjs.map
25936
+ //# sourceMappingURL=chunk-H7DN4AJC.cjs.map