@arkade-os/sdk 0.4.45 → 0.4.47

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 (91) hide show
  1. package/dist/adapters/expo.cjs +5 -5
  2. package/dist/adapters/expo.d.cts +2 -2
  3. package/dist/adapters/expo.d.ts +2 -2
  4. package/dist/adapters/expo.js +3 -3
  5. package/dist/adapters/indexedDB.cjs +5 -5
  6. package/dist/adapters/indexedDB.js +4 -4
  7. package/dist/{ark-C-PjOngm.d.cts → ark-CoJgwTi_.d.cts} +31 -3
  8. package/dist/{ark-C-PjOngm.d.ts → ark-CoJgwTi_.d.ts} +31 -3
  9. package/dist/{asyncStorageTaskQueue-BmBPvTyh.d.cts → asyncStorageTaskQueue-Dowyo59a.d.cts} +2 -2
  10. package/dist/{asyncStorageTaskQueue-CHpI3moJ.d.ts → asyncStorageTaskQueue-Z3aFoXCl.d.ts} +2 -2
  11. package/dist/{chunk-QZ6HZZZK.js → chunk-3N5I6GT6.js} +3 -3
  12. package/dist/{chunk-QZ6HZZZK.js.map → chunk-3N5I6GT6.js.map} +1 -1
  13. package/dist/{chunk-BOA4SHCD.js → chunk-AJQ4AOT3.js} +4 -4
  14. package/dist/{chunk-BOA4SHCD.js.map → chunk-AJQ4AOT3.js.map} +1 -1
  15. package/dist/{chunk-BE5MUB7T.js → chunk-C7TXXTMS.js} +9 -5
  16. package/dist/chunk-C7TXXTMS.js.map +1 -0
  17. package/dist/{chunk-YBQV7XBC.js → chunk-CDDWXBEM.js} +139 -21
  18. package/dist/chunk-CDDWXBEM.js.map +1 -0
  19. package/dist/{chunk-UHOHLN3C.cjs → chunk-HHV5FPC6.cjs} +148 -25
  20. package/dist/chunk-HHV5FPC6.cjs.map +1 -0
  21. package/dist/{chunk-HZ7VIN7P.cjs → chunk-JAYOXOLT.cjs} +14 -14
  22. package/dist/{chunk-HZ7VIN7P.cjs.map → chunk-JAYOXOLT.cjs.map} +1 -1
  23. package/dist/{chunk-HXDZ2QTW.cjs → chunk-L5ND2FJJ.cjs} +9 -5
  24. package/dist/chunk-L5ND2FJJ.cjs.map +1 -0
  25. package/dist/{chunk-TGRJ5WAX.js → chunk-OCS5S3L3.js} +1085 -103
  26. package/dist/chunk-OCS5S3L3.js.map +1 -0
  27. package/dist/chunk-RQSA7ADZ.cjs +2286 -0
  28. package/dist/chunk-RQSA7ADZ.cjs.map +1 -0
  29. package/dist/{chunk-OFQGANH2.cjs → chunk-VE67GMGM.cjs} +7 -7
  30. package/dist/{chunk-OFQGANH2.cjs.map → chunk-VE67GMGM.cjs.map} +1 -1
  31. package/dist/{chunk-SRCWBFSZ.cjs → chunk-WTTLIFS7.cjs} +1281 -289
  32. package/dist/chunk-WTTLIFS7.cjs.map +1 -0
  33. package/dist/chunk-XN3554FT.js +2244 -0
  34. package/dist/chunk-XN3554FT.js.map +1 -0
  35. package/dist/contracts/handlers/index.cjs +11 -7
  36. package/dist/contracts/handlers/index.d.cts +3 -3
  37. package/dist/contracts/handlers/index.d.ts +3 -3
  38. package/dist/contracts/handlers/index.js +2 -2
  39. package/dist/{delegate-BKNqva1j.d.ts → delegate-CuaDqqQi.d.ts} +1 -1
  40. package/dist/{delegate-DOEobYwH.d.cts → delegate-Dl87_zMA.d.cts} +1 -1
  41. package/dist/index-BC_G0VTh.d.cts +512 -0
  42. package/dist/index-CKwpZEpw.d.ts +512 -0
  43. package/dist/index.cjs +219 -159
  44. package/dist/index.d.cts +3097 -2090
  45. package/dist/index.d.ts +3097 -2090
  46. package/dist/index.js +4 -4
  47. package/dist/repositories/realm/index.cjs +23 -19
  48. package/dist/repositories/realm/index.cjs.map +1 -1
  49. package/dist/repositories/realm/index.d.cts +2 -2
  50. package/dist/repositories/realm/index.d.ts +2 -2
  51. package/dist/repositories/realm/index.js +9 -5
  52. package/dist/repositories/realm/index.js.map +1 -1
  53. package/dist/repositories/sqlite/index.cjs +22 -18
  54. package/dist/repositories/sqlite/index.cjs.map +1 -1
  55. package/dist/repositories/sqlite/index.d.cts +2 -2
  56. package/dist/repositories/sqlite/index.d.ts +2 -2
  57. package/dist/repositories/sqlite/index.js +9 -5
  58. package/dist/repositories/sqlite/index.js.map +1 -1
  59. package/dist/{taskRunner-BngWSFMi.d.ts → taskRunner-Dz-TI4Rb.d.ts} +2 -2
  60. package/dist/{taskRunner-DOiyRuJa.d.cts → taskRunner-Dz47k0lp.d.cts} +2 -2
  61. package/dist/wallet/expo/background.cjs +14 -14
  62. package/dist/wallet/expo/background.d.cts +3 -3
  63. package/dist/wallet/expo/background.d.ts +3 -3
  64. package/dist/wallet/expo/background.js +6 -6
  65. package/dist/wallet/expo/index.cjs +18 -14
  66. package/dist/wallet/expo/index.cjs.map +1 -1
  67. package/dist/wallet/expo/index.d.cts +4 -4
  68. package/dist/wallet/expo/index.d.ts +4 -4
  69. package/dist/wallet/expo/index.js +9 -5
  70. package/dist/wallet/expo/index.js.map +1 -1
  71. package/dist/{wallet-DBjumS42.d.cts → wallet-Oxz_wLxo.d.cts} +47 -3
  72. package/dist/{wallet-B3awP1Nj.d.ts → wallet-x7egmXq6.d.ts} +47 -3
  73. package/dist/worker/expo/index.cjs +10 -9
  74. package/dist/worker/expo/index.cjs.map +1 -1
  75. package/dist/worker/expo/index.d.cts +4 -4
  76. package/dist/worker/expo/index.d.ts +4 -4
  77. package/dist/worker/expo/index.js +6 -5
  78. package/dist/worker/expo/index.js.map +1 -1
  79. package/package.json +2 -2
  80. package/dist/chunk-32YKLQPS.cjs +0 -970
  81. package/dist/chunk-32YKLQPS.cjs.map +0 -1
  82. package/dist/chunk-BE5MUB7T.js.map +0 -1
  83. package/dist/chunk-HXDZ2QTW.cjs.map +0 -1
  84. package/dist/chunk-SRCWBFSZ.cjs.map +0 -1
  85. package/dist/chunk-TGRJ5WAX.js.map +0 -1
  86. package/dist/chunk-UHOHLN3C.cjs.map +0 -1
  87. package/dist/chunk-YBQV7XBC.js.map +0 -1
  88. package/dist/chunk-YNEDJTX2.js +0 -957
  89. package/dist/chunk-YNEDJTX2.js.map +0 -1
  90. package/dist/index-BlW4I30l.d.cts +0 -259
  91. package/dist/index-Cm2fGeox.d.ts +0 -259
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var chunkHXDZ2QTW_cjs = require('./chunk-HXDZ2QTW.cjs');
3
+ var chunkL5ND2FJJ_cjs = require('./chunk-L5ND2FJJ.cjs');
4
4
  var chunk5BLDMQED_cjs = require('./chunk-5BLDMQED.cjs');
5
5
  var btcSigner = require('@scure/btc-signer');
6
- var base = require('@scure/base');
7
6
  var secp256k1_js = require('@noble/curves/secp256k1.js');
7
+ var base = require('@scure/base');
8
8
  var utils_js = require('@scure/btc-signer/utils.js');
9
9
 
10
10
  var Transaction = class extends btcSigner.Transaction {
@@ -31,6 +31,8 @@ var ArkPsbtFieldKey = /* @__PURE__ */ ((ArkPsbtFieldKey2) => {
31
31
  ArkPsbtFieldKey2["VtxoTreeExpiry"] = "expiry";
32
32
  ArkPsbtFieldKey2["Cosigner"] = "cosigner";
33
33
  ArkPsbtFieldKey2["ConditionWitness"] = "condition";
34
+ ArkPsbtFieldKey2["PrevArkTx"] = "prevarktx";
35
+ ArkPsbtFieldKey2["PrevoutTx"] = "prevouttx";
34
36
  return ArkPsbtFieldKey2;
35
37
  })(ArkPsbtFieldKey || {});
36
38
  var ArkPsbtFieldKeyType = 222;
@@ -44,7 +46,7 @@ function getArkPsbtFields(tx, inputIndex, coder) {
44
46
  const fields = [];
45
47
  for (const u of unknown) {
46
48
  const v = coder.decode(u);
47
- if (v) fields.push(v);
49
+ if (v !== null) fields.push(v);
48
50
  }
49
51
  return fields;
50
52
  }
@@ -58,7 +60,7 @@ var VtxoTaprootTree = {
58
60
  value
59
61
  ],
60
62
  decode: (value) => nullIfCatch(() => {
61
- if (!checkKeyIncludes(value[0], "taptree" /* VtxoTaprootTree */)) return null;
63
+ if (!checkKeyMatch(value[0], "taptree" /* VtxoTaprootTree */)) return null;
62
64
  return value[1];
63
65
  })
64
66
  };
@@ -72,10 +74,38 @@ var ConditionWitness = {
72
74
  btcSigner.RawWitness.encode(value)
73
75
  ],
74
76
  decode: (value) => nullIfCatch(() => {
75
- if (!checkKeyIncludes(value[0], "condition" /* ConditionWitness */)) return null;
77
+ if (!checkKeyMatch(value[0], "condition" /* ConditionWitness */)) return null;
76
78
  return btcSigner.RawWitness.decode(value[1]);
77
79
  })
78
80
  };
81
+ var PrevArkTxField = {
82
+ key: "prevarktx" /* PrevArkTx */,
83
+ encode: (value) => [
84
+ {
85
+ type: ArkPsbtFieldKeyType,
86
+ key: encodedPsbtFieldKey["prevarktx" /* PrevArkTx */]
87
+ },
88
+ value
89
+ ],
90
+ decode: (value) => nullIfCatch(() => {
91
+ if (!checkKeyMatch(value[0], "prevarktx" /* PrevArkTx */)) return null;
92
+ return value[1];
93
+ })
94
+ };
95
+ var PrevoutTxField = {
96
+ key: "prevouttx" /* PrevoutTx */,
97
+ encode: (value) => [
98
+ {
99
+ type: ArkPsbtFieldKeyType,
100
+ key: encodedPsbtFieldKey["prevouttx" /* PrevoutTx */]
101
+ },
102
+ value
103
+ ],
104
+ decode: (value) => nullIfCatch(() => {
105
+ if (!checkKeyMatch(value[0], "prevouttx" /* PrevoutTx */)) return null;
106
+ return value[1];
107
+ })
108
+ };
79
109
  var CosignerPublicKey = {
80
110
  key: "cosigner" /* Cosigner */,
81
111
  encode: (value) => [
@@ -86,7 +116,7 @@ var CosignerPublicKey = {
86
116
  value.key
87
117
  ],
88
118
  decode: (unknown) => nullIfCatch(() => {
89
- if (!checkKeyIncludes(unknown[0], "cosigner" /* Cosigner */)) return null;
119
+ if (!checkKeyMatch(unknown[0], "cosigner" /* Cosigner */, true)) return null;
90
120
  return {
91
121
  index: unknown[0].key[unknown[0].key.length - 1],
92
122
  key: unknown[1]
@@ -103,10 +133,10 @@ var VtxoTreeExpiry = {
103
133
  btcSigner.ScriptNum(6, true).encode(value.value === 0n ? 0n : value.value)
104
134
  ],
105
135
  decode: (unknown) => nullIfCatch(() => {
106
- if (!checkKeyIncludes(unknown[0], "expiry" /* VtxoTreeExpiry */)) return null;
136
+ if (!checkKeyMatch(unknown[0], "expiry" /* VtxoTreeExpiry */)) return null;
107
137
  const v = btcSigner.ScriptNum(6, true).decode(unknown[1]);
108
138
  if (!v) return null;
109
- return chunkHXDZ2QTW_cjs.sequenceToTimelock(Number(v));
139
+ return chunkL5ND2FJJ_cjs.sequenceToTimelock(Number(v));
110
140
  })
111
141
  };
112
142
  var encodedPsbtFieldKey = Object.fromEntries(
@@ -115,17 +145,23 @@ var encodedPsbtFieldKey = Object.fromEntries(
115
145
  var nullIfCatch = (fn) => {
116
146
  try {
117
147
  return fn();
118
- } catch (err) {
148
+ } catch {
119
149
  return null;
120
150
  }
121
151
  };
122
- function checkKeyIncludes(key, arkPsbtFieldKey) {
123
- const expected = base.hex.encode(encodedPsbtFieldKey[arkPsbtFieldKey]);
124
- return base.hex.encode(new Uint8Array([key.type, ...key.key])).includes(expected);
152
+ function checkKeyMatch(key, arkPsbtFieldKey, prefixOnly = false) {
153
+ if (key.type !== ArkPsbtFieldKeyType) return false;
154
+ const expected = encodedPsbtFieldKey[arkPsbtFieldKey];
155
+ if (key.key.length < expected.length) return false;
156
+ if (!prefixOnly && key.key.length !== expected.length) return false;
157
+ for (let i = 0; i < expected.length; i++) {
158
+ if (key.key[i] !== expected[i]) return false;
159
+ }
160
+ return true;
125
161
  }
126
162
 
127
163
  // package.json
128
- var version = "0.4.45";
164
+ var version = "0.4.47";
129
165
 
130
166
  // src/utils/fetch.ts
131
167
  var buildVersion = "0.9.9";
@@ -186,7 +222,30 @@ var ArkError = class extends Error {
186
222
  this.name = name;
187
223
  this.metadata = metadata;
188
224
  }
225
+ code;
226
+ message;
227
+ name;
228
+ metadata;
189
229
  };
230
+ var ArkErrorName = {
231
+ DIGEST_MISMATCH: "DIGEST_MISMATCH",
232
+ VTXO_ALREADY_SPENT: "VTXO_ALREADY_SPENT",
233
+ INVALID_TX_FILTER: "INVALID_TX_FILTER",
234
+ TX_FILTERS_LIMIT_EXCEEDED: "TX_FILTERS_LIMIT_EXCEEDED",
235
+ /**
236
+ * A CLTV closure was spent before its absolute locktime matured. Raised only by
237
+ * `submitTx` (never `finalizeTx`), with metadata
238
+ * `{ locktime, current_locktime, type: "height" | "time" }`.
239
+ *
240
+ * Self-healing, so defer and retry rather than fail: the server matures a
241
+ * seconds-locktime against the **chain tip block's timestamp**, not its wall clock,
242
+ * so a spend attempted promptly at maturity is rejected until a later block lands.
243
+ */
244
+ FORFEIT_CLOSURE_LOCKED: "FORFEIT_CLOSURE_LOCKED"
245
+ };
246
+ function isArkError(error, name) {
247
+ return error instanceof ArkError && (name === void 0 || error.name === name);
248
+ }
190
249
  var ProviderUnavailableError = class extends Error {
191
250
  /** Always `true`: this error type only ever wraps retryable conditions. */
192
251
  retryable = true;
@@ -406,8 +465,8 @@ function prepareCoinAsIntentProofInput(coin) {
406
465
  if (!("tapTree" in coin)) {
407
466
  return coin;
408
467
  }
409
- const vtxoScript = chunkHXDZ2QTW_cjs.VtxoScript.decode(coin.tapTree);
410
- const sequence = chunkHXDZ2QTW_cjs.getSequence(coin.intentTapLeafScript);
468
+ const vtxoScript = chunkL5ND2FJJ_cjs.VtxoScript.decode(coin.tapTree);
469
+ const sequence = chunkL5ND2FJJ_cjs.getSequence(coin.intentTapLeafScript);
411
470
  const unknown = [VtxoTaprootTree.encode(coin.tapTree)];
412
471
  if (coin.extraWitness) {
413
472
  unknown.push(ConditionWitness.encode(coin.extraWitness));
@@ -545,9 +604,10 @@ var SettlementEventType = /* @__PURE__ */ ((SettlementEventType2) => {
545
604
  return SettlementEventType2;
546
605
  })(SettlementEventType || {});
547
606
  var RestArkProvider = class {
548
- constructor(serverUrl = chunkHXDZ2QTW_cjs.DEFAULT_ARKADE_SERVER_URL) {
607
+ constructor(serverUrl = chunkL5ND2FJJ_cjs.DEFAULT_ARKADE_SERVER_URL) {
549
608
  this.serverUrl = serverUrl;
550
609
  }
610
+ serverUrl;
551
611
  /**
552
612
  * Last server-info digest seen (from {@link getInfo}). Sent as `X-Digest`
553
613
  * on outgoing requests so arkd can reject a client whose cached info is
@@ -609,7 +669,7 @@ var RestArkProvider = class {
609
669
  }
610
670
  const arkError = maybeArkError(new Error(body));
611
671
  if (!arkError) throwIfHttpUnavailable(response, "arkade");
612
- if (arkError?.name !== "DIGEST_MISMATCH") return response;
672
+ if (!isArkError(arkError, ArkErrorName.DIGEST_MISMATCH)) return response;
613
673
  this._digest = "";
614
674
  const info = await this.getInfo();
615
675
  this.emitServerInfoChanged(info);
@@ -1166,7 +1226,7 @@ var MASK_ASSET_ID = 1;
1166
1226
  var MASK_CONTROL_ASSET = 2;
1167
1227
  var MASK_METADATA = 4;
1168
1228
 
1169
- // src/extension/asset/utils.ts
1229
+ // src/extension/utils.ts
1170
1230
  var BufferWriter = class {
1171
1231
  buffer = [];
1172
1232
  write(data) {
@@ -1207,6 +1267,25 @@ var BufferWriter = class {
1207
1267
  this.writeVarUint(data.length);
1208
1268
  this.write(data);
1209
1269
  }
1270
+ writeCompactSize(value) {
1271
+ if (value < 253) {
1272
+ this.writeByte(value);
1273
+ } else if (value <= 65535) {
1274
+ this.writeByte(253);
1275
+ this.writeUint16LE(value);
1276
+ } else if (value <= 4294967295) {
1277
+ this.writeByte(254);
1278
+ const b = new Uint8Array(4);
1279
+ new DataView(b.buffer).setUint32(0, value, true);
1280
+ this.write(b);
1281
+ } else {
1282
+ throw new Error("CompactSize value too large");
1283
+ }
1284
+ }
1285
+ writeCompactSlice(data) {
1286
+ this.writeCompactSize(data.length);
1287
+ this.write(data);
1288
+ }
1210
1289
  toBytes() {
1211
1290
  return new Uint8Array(this.buffer);
1212
1291
  }
@@ -1260,7 +1339,23 @@ var BufferReader = class {
1260
1339
  const length = Number(this.readVarUint());
1261
1340
  return this.readSlice(length);
1262
1341
  }
1342
+ readCompactSize() {
1343
+ const first = this.readByte();
1344
+ if (first < 253) return first;
1345
+ if (first === 253) return this.readUint16LE();
1346
+ if (first === 254) {
1347
+ const b = this.readSlice(4);
1348
+ return new DataView(b.buffer, b.byteOffset, b.byteLength).getUint32(0, true);
1349
+ }
1350
+ throw new Error("CompactSize 8-byte values not supported");
1351
+ }
1352
+ readCompactSlice() {
1353
+ const length = this.readCompactSize();
1354
+ return this.readSlice(length);
1355
+ }
1263
1356
  };
1357
+
1358
+ // src/extension/asset/utils.ts
1264
1359
  function isZeroBytes(bytes) {
1265
1360
  return bytes.every((byte) => byte === 0);
1266
1361
  }
@@ -1271,6 +1366,8 @@ var AssetId = class _AssetId {
1271
1366
  this.txid = txid;
1272
1367
  this.groupIndex = groupIndex;
1273
1368
  }
1369
+ txid;
1370
+ groupIndex;
1274
1371
  /**
1275
1372
  * Create an asset id from a genesis transaction id and group index.
1276
1373
  *
@@ -1402,6 +1499,7 @@ var AssetRef = class _AssetRef {
1402
1499
  constructor(ref) {
1403
1500
  this.ref = ref;
1404
1501
  }
1502
+ ref;
1405
1503
  /** Reference type discriminator. */
1406
1504
  get type() {
1407
1505
  return this.ref.type;
@@ -1530,6 +1628,7 @@ var AssetInput = class _AssetInput {
1530
1628
  constructor(input) {
1531
1629
  this.input = input;
1532
1630
  }
1631
+ input;
1533
1632
  /** Gets the transaction input index for an asset input, e.g. 0 */
1534
1633
  get vin() {
1535
1634
  return this.input.vin;
@@ -1660,6 +1759,7 @@ var AssetInputs = class _AssetInputs {
1660
1759
  constructor(inputs) {
1661
1760
  this.inputs = inputs;
1662
1761
  }
1762
+ inputs;
1663
1763
  /** Create a validated list of asset inputs. */
1664
1764
  static create(inputs) {
1665
1765
  const list = new _AssetInputs(inputs);
@@ -1732,6 +1832,8 @@ var AssetOutput = class _AssetOutput {
1732
1832
  this.vout = vout;
1733
1833
  this.amount = amount;
1734
1834
  }
1835
+ vout;
1836
+ amount;
1735
1837
  // 0x01 means local output, there is only 1 local output type currently
1736
1838
  // however we serialize it for future upgrades
1737
1839
  static TYPE_LOCAL = 1;
@@ -1812,6 +1914,7 @@ var AssetOutputs = class _AssetOutputs {
1812
1914
  constructor(outputs) {
1813
1915
  this.outputs = outputs;
1814
1916
  }
1917
+ outputs;
1815
1918
  /** Create a validated list of asset outputs. */
1816
1919
  static create(outputs) {
1817
1920
  const list = new _AssetOutputs(outputs);
@@ -1881,6 +1984,8 @@ var Metadata = class _Metadata {
1881
1984
  this.key = key;
1882
1985
  this.value = value;
1883
1986
  }
1987
+ key;
1988
+ value;
1884
1989
  /** Create a metadata entry from raw key and value bytes. */
1885
1990
  static create(key, value) {
1886
1991
  const md = new _Metadata(key, value);
@@ -1958,6 +2063,7 @@ var MetadataList = class _MetadataList {
1958
2063
  constructor(items) {
1959
2064
  this.items = items;
1960
2065
  }
2066
+ items;
1961
2067
  static ARK_LEAF_TAG = "ArkadeAssetLeaf";
1962
2068
  static ARK_BRANCH_TAG = "ArkadeAssetBranch";
1963
2069
  static ARK_LEAF_VERSION = 0;
@@ -2051,6 +2157,10 @@ var AssetGroup = class _AssetGroup {
2051
2157
  this.outputs = outputs;
2052
2158
  this.metadataList = new MetadataList(metadata);
2053
2159
  }
2160
+ assetId;
2161
+ controlAsset;
2162
+ inputs;
2163
+ outputs;
2054
2164
  metadataList;
2055
2165
  /**
2056
2166
  * Create and validate an asset group.
@@ -2247,6 +2357,7 @@ var Packet = class _Packet {
2247
2357
  constructor(groups) {
2248
2358
  this.groups = groups;
2249
2359
  }
2360
+ groups;
2250
2361
  /** PACKET_TYPE is the 1-byte TLV type tag used in the Extension envelope. */
2251
2362
  static PACKET_TYPE = 0;
2252
2363
  /** Create a validated asset packet from a list of asset groups. */
@@ -2379,9 +2490,10 @@ var ChainTxType = /* @__PURE__ */ ((ChainTxType2) => {
2379
2490
  return ChainTxType2;
2380
2491
  })(ChainTxType || {});
2381
2492
  var RestIndexerProvider = class {
2382
- constructor(serverUrl = chunkHXDZ2QTW_cjs.DEFAULT_ARKADE_SERVER_URL) {
2493
+ constructor(serverUrl = chunkL5ND2FJJ_cjs.DEFAULT_ARKADE_SERVER_URL) {
2383
2494
  this.serverUrl = serverUrl;
2384
2495
  }
2496
+ serverUrl;
2385
2497
  async getVtxoTree(batchOutpoint, opts) {
2386
2498
  let url = `${this.serverUrl}/v1/indexer/batch/${batchOutpoint.txid}/${batchOutpoint.vout}/tree`;
2387
2499
  const params = new URLSearchParams();
@@ -2613,12 +2725,16 @@ var RestIndexerProvider = class {
2613
2725
  if (!hasScripts && !hasOutpoints) {
2614
2726
  throw new Error("Either scripts or outpoints must be provided");
2615
2727
  }
2616
- const filterCount = [opts?.spendableOnly, opts?.spentOnly, opts?.recoverableOnly].filter(
2617
- Boolean
2618
- ).length;
2728
+ const filterCount = [
2729
+ opts?.spendableOnly,
2730
+ opts?.spentOnly,
2731
+ opts?.recoverableOnly,
2732
+ opts?.pendingOnly,
2733
+ opts?.renewableOnly
2734
+ ].filter(Boolean).length;
2619
2735
  if (filterCount > 1) {
2620
2736
  throw new Error(
2621
- "spendableOnly, spentOnly, and recoverableOnly are mutually exclusive options"
2737
+ "spendableOnly, spentOnly, recoverableOnly, pendingOnly, and renewableOnly are mutually exclusive options"
2622
2738
  );
2623
2739
  }
2624
2740
  if (opts?.after !== void 0 && opts?.before !== void 0 && opts.after !== 0 && opts.before !== 0 && opts.before <= opts.after) {
@@ -2644,6 +2760,8 @@ var RestIndexerProvider = class {
2644
2760
  params.append("recoverableOnly", opts.recoverableOnly.toString());
2645
2761
  if (opts.pendingOnly !== void 0)
2646
2762
  params.append("pendingOnly", opts.pendingOnly.toString());
2763
+ if (opts.renewableOnly !== void 0)
2764
+ params.append("renewableOnly", opts.renewableOnly.toString());
2647
2765
  if (opts.after !== void 0) params.append("after", opts.after.toString());
2648
2766
  if (opts.before !== void 0) params.append("before", opts.before.toString());
2649
2767
  if (opts.pageIndex !== void 0)
@@ -2859,6 +2977,7 @@ var Response;
2859
2977
  })(Response || (Response = {}));
2860
2978
 
2861
2979
  exports.ArkError = ArkError;
2980
+ exports.ArkErrorName = ArkErrorName;
2862
2981
  exports.ArkPsbtFieldKey = ArkPsbtFieldKey;
2863
2982
  exports.ArkPsbtFieldKeyType = ArkPsbtFieldKeyType;
2864
2983
  exports.AssetGroup = AssetGroup;
@@ -2867,6 +2986,7 @@ exports.AssetInput = AssetInput;
2867
2986
  exports.AssetOutput = AssetOutput;
2868
2987
  exports.AssetRef = AssetRef;
2869
2988
  exports.BufferReader = BufferReader;
2989
+ exports.BufferWriter = BufferWriter;
2870
2990
  exports.ChainTxType = ChainTxType;
2871
2991
  exports.ConditionWitness = ConditionWitness;
2872
2992
  exports.CosignerPublicKey = CosignerPublicKey;
@@ -2876,6 +2996,8 @@ exports.IndexerTxType = IndexerTxType;
2876
2996
  exports.Metadata = Metadata;
2877
2997
  exports.OP_RETURN_EMPTY_PKSCRIPT = OP_RETURN_EMPTY_PKSCRIPT;
2878
2998
  exports.Packet = Packet;
2999
+ exports.PrevArkTxField = PrevArkTxField;
3000
+ exports.PrevoutTxField = PrevoutTxField;
2879
3001
  exports.ProviderUnavailableError = ProviderUnavailableError;
2880
3002
  exports.RestArkProvider = RestArkProvider;
2881
3003
  exports.RestIndexerProvider = RestIndexerProvider;
@@ -2889,10 +3011,11 @@ exports.buildVersion = buildVersion;
2889
3011
  exports.craftToSpendTx = craftToSpendTx;
2890
3012
  exports.fetch = fetch;
2891
3013
  exports.getArkPsbtFields = getArkPsbtFields;
3014
+ exports.isArkError = isArkError;
2892
3015
  exports.isEventSourceError = isEventSourceError;
2893
3016
  exports.isFetchTimeoutError = isFetchTimeoutError;
2894
3017
  exports.maybeArkError = maybeArkError;
2895
3018
  exports.sdkVersion = sdkVersion;
2896
3019
  exports.setArkPsbtField = setArkPsbtField;
2897
- //# sourceMappingURL=chunk-UHOHLN3C.cjs.map
2898
- //# sourceMappingURL=chunk-UHOHLN3C.cjs.map
3020
+ //# sourceMappingURL=chunk-HHV5FPC6.cjs.map
3021
+ //# sourceMappingURL=chunk-HHV5FPC6.cjs.map