@bsv/wallet-toolbox 2.6.5 → 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (215) hide show
  1. package/CHANGELOG.md +68 -8
  2. package/README.md +68 -18
  3. package/docs/action-batch-planning.md +80 -37
  4. package/docs/managed-change-liquidity.md +251 -0
  5. package/out/src/Setup.d.ts +9 -0
  6. package/out/src/Setup.d.ts.map +1 -1
  7. package/out/src/Setup.js +2 -0
  8. package/out/src/Setup.js.map +1 -1
  9. package/out/src/SetupClient.d.ts +3 -0
  10. package/out/src/SetupClient.d.ts.map +1 -1
  11. package/out/src/SetupClient.js +1 -0
  12. package/out/src/SetupClient.js.map +1 -1
  13. package/out/src/SetupWallet.d.ts +3 -0
  14. package/out/src/SetupWallet.d.ts.map +1 -1
  15. package/out/src/Wallet.d.ts +4 -3
  16. package/out/src/Wallet.d.ts.map +1 -1
  17. package/out/src/Wallet.js +4 -3
  18. package/out/src/Wallet.js.map +1 -1
  19. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  20. package/out/src/WalletPermissionsManager.js +5 -8
  21. package/out/src/WalletPermissionsManager.js.map +1 -1
  22. package/out/src/mockchain/MockServices.d.ts.map +1 -1
  23. package/out/src/mockchain/MockServices.js +2 -6
  24. package/out/src/mockchain/MockServices.js.map +1 -1
  25. package/out/src/monitor/Monitor.d.ts.map +1 -1
  26. package/out/src/monitor/Monitor.js +5 -4
  27. package/out/src/monitor/Monitor.js.map +1 -1
  28. package/out/src/monitor/tasks/TaskArcSSE.d.ts +4 -1
  29. package/out/src/monitor/tasks/TaskArcSSE.d.ts.map +1 -1
  30. package/out/src/monitor/tasks/TaskArcSSE.js +92 -65
  31. package/out/src/monitor/tasks/TaskArcSSE.js.map +1 -1
  32. package/out/src/monitor/tasks/TaskReconcilePendingTransactions.d.ts +25 -0
  33. package/out/src/monitor/tasks/TaskReconcilePendingTransactions.d.ts.map +1 -0
  34. package/out/src/monitor/tasks/TaskReconcilePendingTransactions.js +181 -0
  35. package/out/src/monitor/tasks/TaskReconcilePendingTransactions.js.map +1 -0
  36. package/out/src/monitor/tasks/TaskReviewDoubleSpends.d.ts.map +1 -1
  37. package/out/src/monitor/tasks/TaskReviewDoubleSpends.js +15 -3
  38. package/out/src/monitor/tasks/TaskReviewDoubleSpends.js.map +1 -1
  39. package/out/src/monitor/tasks/TaskReviewUtxos.d.ts +29 -2
  40. package/out/src/monitor/tasks/TaskReviewUtxos.d.ts.map +1 -1
  41. package/out/src/monitor/tasks/TaskReviewUtxos.js +155 -7
  42. package/out/src/monitor/tasks/TaskReviewUtxos.js.map +1 -1
  43. package/out/src/monitor/tasks/index.all.d.ts +1 -0
  44. package/out/src/monitor/tasks/index.all.d.ts.map +1 -1
  45. package/out/src/monitor/tasks/index.all.js +1 -0
  46. package/out/src/monitor/tasks/index.all.js.map +1 -1
  47. package/out/src/sdk/ActionBatch.interfaces.d.ts +19 -0
  48. package/out/src/sdk/ActionBatch.interfaces.d.ts.map +1 -1
  49. package/out/src/sdk/WERR_errors.d.ts +23 -0
  50. package/out/src/sdk/WERR_errors.d.ts.map +1 -1
  51. package/out/src/sdk/WERR_errors.js +44 -1
  52. package/out/src/sdk/WERR_errors.js.map +1 -1
  53. package/out/src/sdk/WalletError.d.ts.map +1 -1
  54. package/out/src/sdk/WalletError.js +7 -21
  55. package/out/src/sdk/WalletError.js.map +1 -1
  56. package/out/src/sdk/WalletErrorFromJson.d.ts.map +1 -1
  57. package/out/src/sdk/WalletErrorFromJson.js +9 -1
  58. package/out/src/sdk/WalletErrorFromJson.js.map +1 -1
  59. package/out/src/sdk/WalletServices.interfaces.d.ts +14 -1
  60. package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  61. package/out/src/sdk/WalletStorage.interfaces.d.ts +3 -1
  62. package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
  63. package/out/src/sdk/types.d.ts +3 -2
  64. package/out/src/sdk/types.d.ts.map +1 -1
  65. package/out/src/sdk/types.js +3 -2
  66. package/out/src/sdk/types.js.map +1 -1
  67. package/out/src/services/Services.d.ts.map +1 -1
  68. package/out/src/services/Services.js +73 -15
  69. package/out/src/services/Services.js.map +1 -1
  70. package/out/src/services/classifyOutputUtxo.d.ts +25 -0
  71. package/out/src/services/classifyOutputUtxo.d.ts.map +1 -0
  72. package/out/src/services/classifyOutputUtxo.js +87 -0
  73. package/out/src/services/classifyOutputUtxo.js.map +1 -0
  74. package/out/src/services/createDefaultWalletServicesOptions.d.ts +16 -3
  75. package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
  76. package/out/src/services/createDefaultWalletServicesOptions.js +38 -8
  77. package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
  78. package/out/src/services/providers/ArcSSEClient.d.ts +13 -4
  79. package/out/src/services/providers/ArcSSEClient.d.ts.map +1 -1
  80. package/out/src/services/providers/ArcSSEClient.js +30 -7
  81. package/out/src/services/providers/ArcSSEClient.js.map +1 -1
  82. package/out/src/services/providers/Arcade.d.ts +10 -1
  83. package/out/src/services/providers/Arcade.d.ts.map +1 -1
  84. package/out/src/services/providers/Arcade.js +63 -0
  85. package/out/src/services/providers/Arcade.js.map +1 -1
  86. package/out/src/services/providers/arcadeStatus.d.ts +18 -0
  87. package/out/src/services/providers/arcadeStatus.d.ts.map +1 -0
  88. package/out/src/services/providers/arcadeStatus.js +56 -0
  89. package/out/src/services/providers/arcadeStatus.js.map +1 -0
  90. package/out/src/signer/actionBatch/ActionBatchPlanner.d.ts.map +1 -1
  91. package/out/src/signer/actionBatch/ActionBatchPlanner.js +25 -3
  92. package/out/src/signer/actionBatch/ActionBatchPlanner.js.map +1 -1
  93. package/out/src/signer/actionBatch/ActionBatchWorkspace.d.ts +2 -0
  94. package/out/src/signer/actionBatch/ActionBatchWorkspace.d.ts.map +1 -1
  95. package/out/src/signer/actionBatch/ActionBatchWorkspace.js +135 -16
  96. package/out/src/signer/actionBatch/ActionBatchWorkspace.js.map +1 -1
  97. package/out/src/storage/StorageIdb.d.ts +2 -0
  98. package/out/src/storage/StorageIdb.d.ts.map +1 -1
  99. package/out/src/storage/StorageIdb.js +24 -1
  100. package/out/src/storage/StorageIdb.js.map +1 -1
  101. package/out/src/storage/StorageKnex.d.ts +1 -1
  102. package/out/src/storage/StorageKnex.d.ts.map +1 -1
  103. package/out/src/storage/StorageKnex.js +4 -4
  104. package/out/src/storage/StorageKnex.js.map +1 -1
  105. package/out/src/storage/StorageProvider.d.ts +18 -2
  106. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  107. package/out/src/storage/StorageProvider.js +45 -14
  108. package/out/src/storage/StorageProvider.js.map +1 -1
  109. package/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
  110. package/out/src/storage/StorageReaderWriter.js +3 -2
  111. package/out/src/storage/StorageReaderWriter.js.map +1 -1
  112. package/out/src/storage/WalletStorageManager.d.ts +12 -0
  113. package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
  114. package/out/src/storage/WalletStorageManager.js +22 -2
  115. package/out/src/storage/WalletStorageManager.js.map +1 -1
  116. package/out/src/storage/adminServer/adminServer.d.ts +2 -0
  117. package/out/src/storage/adminServer/adminServer.d.ts.map +1 -1
  118. package/out/src/storage/adminServer/adminServer.js +25 -8
  119. package/out/src/storage/adminServer/adminServer.js.map +1 -1
  120. package/out/src/storage/adminServer/adminUi.d.ts.map +1 -1
  121. package/out/src/storage/adminServer/adminUi.js +32 -9
  122. package/out/src/storage/adminServer/adminUi.js.map +1 -1
  123. package/out/src/storage/adminServer/reviewUtxos.d.ts +27 -0
  124. package/out/src/storage/adminServer/reviewUtxos.d.ts.map +1 -0
  125. package/out/src/storage/adminServer/reviewUtxos.js +62 -0
  126. package/out/src/storage/adminServer/reviewUtxos.js.map +1 -0
  127. package/out/src/storage/index.all.d.ts +1 -0
  128. package/out/src/storage/index.all.d.ts.map +1 -1
  129. package/out/src/storage/index.all.js +1 -0
  130. package/out/src/storage/index.all.js.map +1 -1
  131. package/out/src/storage/index.client.d.ts +1 -0
  132. package/out/src/storage/index.client.d.ts.map +1 -1
  133. package/out/src/storage/index.client.js +1 -0
  134. package/out/src/storage/index.client.js.map +1 -1
  135. package/out/src/storage/index.mobile.d.ts +1 -0
  136. package/out/src/storage/index.mobile.d.ts.map +1 -1
  137. package/out/src/storage/index.mobile.js +1 -0
  138. package/out/src/storage/index.mobile.js.map +1 -1
  139. package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
  140. package/out/src/storage/methods/ListOutputsSpecOp.js +4 -44
  141. package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
  142. package/out/src/storage/methods/actionBatch.d.ts +9 -2
  143. package/out/src/storage/methods/actionBatch.d.ts.map +1 -1
  144. package/out/src/storage/methods/actionBatch.js +258 -66
  145. package/out/src/storage/methods/actionBatch.js.map +1 -1
  146. package/out/src/storage/methods/actionBatchBlobs.js +7 -4
  147. package/out/src/storage/methods/actionBatchBlobs.js.map +1 -1
  148. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -1
  149. package/out/src/storage/methods/attemptToPostReqsToNetwork.js +2 -66
  150. package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
  151. package/out/src/storage/methods/availableManagedChange.d.ts +8 -1
  152. package/out/src/storage/methods/availableManagedChange.d.ts.map +1 -1
  153. package/out/src/storage/methods/availableManagedChange.js.map +1 -1
  154. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  155. package/out/src/storage/methods/createAction.js +176 -58
  156. package/out/src/storage/methods/createAction.js.map +1 -1
  157. package/out/src/storage/methods/generateChange.d.ts +13 -1
  158. package/out/src/storage/methods/generateChange.d.ts.map +1 -1
  159. package/out/src/storage/methods/generateChange.js +169 -12
  160. package/out/src/storage/methods/generateChange.js.map +1 -1
  161. package/out/src/storage/methods/listActionsIdb.d.ts.map +1 -1
  162. package/out/src/storage/methods/listActionsIdb.js +4 -0
  163. package/out/src/storage/methods/listActionsIdb.js.map +1 -1
  164. package/out/src/storage/methods/listActionsKnex.d.ts.map +1 -1
  165. package/out/src/storage/methods/listActionsKnex.js +4 -0
  166. package/out/src/storage/methods/listActionsKnex.js.map +1 -1
  167. package/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -1
  168. package/out/src/storage/methods/listOutputsIdb.js +2 -1
  169. package/out/src/storage/methods/listOutputsIdb.js.map +1 -1
  170. package/out/src/storage/methods/managedChangePolicy.d.ts +44 -0
  171. package/out/src/storage/methods/managedChangePolicy.d.ts.map +1 -0
  172. package/out/src/storage/methods/managedChangePolicy.js +58 -0
  173. package/out/src/storage/methods/managedChangePolicy.js.map +1 -0
  174. package/out/src/storage/methods/reconcileFailedTransactionInputs.d.ts +26 -0
  175. package/out/src/storage/methods/reconcileFailedTransactionInputs.d.ts.map +1 -0
  176. package/out/src/storage/methods/reconcileFailedTransactionInputs.js +124 -0
  177. package/out/src/storage/methods/reconcileFailedTransactionInputs.js.map +1 -0
  178. package/out/src/storage/methods/reviewUtxoOutputs.d.ts +37 -0
  179. package/out/src/storage/methods/reviewUtxoOutputs.d.ts.map +1 -0
  180. package/out/src/storage/methods/reviewUtxoOutputs.js +150 -0
  181. package/out/src/storage/methods/reviewUtxoOutputs.js.map +1 -0
  182. package/out/src/storage/portable/index.d.ts.map +1 -1
  183. package/out/src/storage/portable/index.js +4 -2
  184. package/out/src/storage/portable/index.js.map +1 -1
  185. package/out/src/storage/remoting/StorageClientBase.d.ts +2 -1
  186. package/out/src/storage/remoting/StorageClientBase.d.ts.map +1 -1
  187. package/out/src/storage/remoting/StorageClientBase.js +3 -0
  188. package/out/src/storage/remoting/StorageClientBase.js.map +1 -1
  189. package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
  190. package/out/src/storage/remoting/StorageServer.js +4 -1
  191. package/out/src/storage/remoting/StorageServer.js.map +1 -1
  192. package/out/src/storage/schema/KnexMigrations.d.ts +1 -0
  193. package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
  194. package/out/src/storage/schema/KnexMigrations.js +29 -3
  195. package/out/src/storage/schema/KnexMigrations.js.map +1 -1
  196. package/out/src/storage/schema/entities/EntityOutputBasket.d.ts.map +1 -1
  197. package/out/src/storage/schema/entities/EntityOutputBasket.js +5 -2
  198. package/out/src/storage/schema/entities/EntityOutputBasket.js.map +1 -1
  199. package/out/src/utility/brc153ReferenceLabels.d.ts +21 -0
  200. package/out/src/utility/brc153ReferenceLabels.d.ts.map +1 -0
  201. package/out/src/utility/brc153ReferenceLabels.js +45 -0
  202. package/out/src/utility/brc153ReferenceLabels.js.map +1 -0
  203. package/out/src/utility/index.all.d.ts +1 -0
  204. package/out/src/utility/index.all.d.ts.map +1 -1
  205. package/out/src/utility/index.all.js +1 -0
  206. package/out/src/utility/index.all.js.map +1 -1
  207. package/out/src/utility/index.client.d.ts +1 -0
  208. package/out/src/utility/index.client.d.ts.map +1 -1
  209. package/out/src/utility/index.client.js +1 -0
  210. package/out/src/utility/index.client.js.map +1 -1
  211. package/out/src/utility/utilityHelpers.d.ts +1 -1
  212. package/out/src/utility/utilityHelpers.d.ts.map +1 -1
  213. package/out/src/utility/utilityHelpers.js +2 -1
  214. package/out/src/utility/utilityHelpers.js.map +1 -1
  215. package/package.json +3 -3
@@ -17,6 +17,7 @@ const ChaintracksChainTracker_1 = require("./chaintracker/ChaintracksChainTracke
17
17
  const WalletError_1 = require("../sdk/WalletError");
18
18
  const utilityHelpers_1 = require("../utility/utilityHelpers");
19
19
  const utilityHelpers_noBuffer_1 = require("../utility/utilityHelpers.noBuffer");
20
+ const classifyOutputUtxo_1 = require("./classifyOutputUtxo");
20
21
  class Services {
21
22
  static getStatusForTxidsBatchLimit = 20;
22
23
  static createDefaultOptions(chain) {
@@ -103,6 +104,17 @@ class Services {
103
104
  this.getStatusForTxidsServices
104
105
  .add({ name: 'WhatsOnChain', service: this.whatsonchain.getStatusForTxids.bind(this.whatsonchain) });
105
106
  }
107
+ if (this.arcade != null) {
108
+ // Arcade's lifecycle store keeps status reconciliation available when
109
+ // the explorer is disabled or unavailable. Keep the existing explorer
110
+ // first when configured because a successful `unknown` is a valid,
111
+ // conservative answer and the shared collection does not merge partial
112
+ // results from multiple providers.
113
+ this.getStatusForTxidsServices.add({
114
+ name: 'Arcade',
115
+ service: this.arcade.getStatusForTxids.bind(this.arcade)
116
+ });
117
+ }
106
118
  this.getScriptHashHistoryServices = new ServiceCollection_1.ServiceCollection('getScriptHashHistory');
107
119
  if (hasWhatsOnChain) {
108
120
  // prettier-ignore
@@ -122,9 +134,11 @@ class Services {
122
134
  // prettier-ignore
123
135
  this.postBeefServices.add({ name: 'GorillaPoolArcBeef', service: this.arcGorillaPool.postBeef.bind(this.arcGorillaPool) });
124
136
  }
125
- // prettier-ignore
126
- this.postBeefServices
127
- .add({ name: 'TaalArcBeef', service: this.arcTaal.postBeef.bind(this.arcTaal) });
137
+ if (this.options.arcUrl != null && this.options.arcUrl !== '') {
138
+ // prettier-ignore
139
+ this.postBeefServices
140
+ .add({ name: 'TaalArcBeef', service: this.arcTaal.postBeef.bind(this.arcTaal) });
141
+ }
128
142
  if (hasBitails && this.bitails != null) {
129
143
  this.postBeefServices.add({ name: 'Bitails', service: this.bitails.postBeef.bind(this.bitails) });
130
144
  }
@@ -223,21 +237,47 @@ class Services {
223
237
  const services = this.getStatusForTxidsServices;
224
238
  if (useNext === true)
225
239
  services.next();
226
- let r0 = {
240
+ let fallback = {
227
241
  name: '<noservices>',
228
242
  status: 'error',
229
243
  error: new WERR_errors_1.WERR_INTERNAL('No services available.'),
230
244
  results: []
231
245
  };
246
+ const resultsByTxid = new Map();
247
+ const unresolved = new Set(txids);
248
+ const providerNames = [];
249
+ let successfulProvider = false;
250
+ const rank = (result) => {
251
+ if (result.status === 'mined')
252
+ return 4;
253
+ if (result.status === 'known')
254
+ return 3;
255
+ if (result.terminal === true)
256
+ return 2;
257
+ return 1;
258
+ };
232
259
  for (let tries = 0; tries < services.count; tries++) {
233
260
  const stc = services.serviceToCall;
234
261
  try {
235
- const r = await this.getStatusForTxidsBatched(stc, txids);
262
+ const requestedTxids = [...unresolved];
263
+ if (requestedTxids.length === 0)
264
+ break;
265
+ const r = await this.getStatusForTxidsBatched(stc, requestedTxids);
236
266
  if (r.status === 'success') {
237
267
  services.addServiceCallSuccess(stc);
238
- r0 = r;
239
- break;
268
+ successfulProvider = true;
269
+ providerNames.push(r.name);
270
+ for (const result of r.results) {
271
+ const current = resultsByTxid.get(result.txid);
272
+ if (current == null || rank(result) > rank(current))
273
+ resultsByTxid.set(result.txid, result);
274
+ if (result.status === 'mined' || result.status === 'known')
275
+ unresolved.delete(result.txid);
276
+ }
277
+ services.next();
278
+ continue;
240
279
  }
280
+ fallback = r;
241
281
  if (r.error != null)
242
282
  services.addServiceCallError(stc, r.error);
243
283
  else
@@ -245,11 +285,18 @@ class Services {
245
285
  }
246
286
  catch (error_) {
247
287
  const e = WalletError_1.WalletError.fromUnknown(error_);
288
+ fallback = { name: stc.providerName, status: 'error', error: e, results: [] };
248
289
  services.addServiceCallError(stc, e);
249
290
  }
250
291
  services.next();
251
292
  }
252
- return r0;
293
+ if (!successfulProvider)
294
+ return fallback;
295
+ return {
296
+ name: [...new Set(providerNames)].join(','),
297
+ status: 'success',
298
+ results: txids.map(txid => resultsByTxid.get(txid) ?? { txid, status: 'unknown', depth: undefined })
299
+ };
253
300
  }
254
301
  async getStatusForTxidsBatched(stc, txids) {
255
302
  const results = [];
@@ -280,12 +327,7 @@ class Services {
280
327
  return hash;
281
328
  }
282
329
  async isUtxo(output) {
283
- if (output.lockingScript == null) {
284
- throw new WERR_errors_1.WERR_INVALID_PARAMETER('output.lockingScript', 'validated by storage provider validateOutputScript.');
285
- }
286
- const hash = this.hashOutputScript(sdk_1.Utils.toHex(output.lockingScript));
287
- const or = await this.getUtxoStatus(hash, undefined, `${output.txid ?? ''}.${output.vout}`);
288
- return or.isUtxo === true;
330
+ return (0, classifyOutputUtxo_1.requireConclusiveUtxo)(await (0, classifyOutputUtxo_1.classifyOutputUtxo)(this, output));
289
331
  }
290
332
  async getUtxoStatus(output, outputFormat, outpoint, useNext, logger) {
291
333
  const services = this.getUtxoStatusServices;
@@ -559,7 +601,23 @@ class Services {
559
601
  const chaintracks = this.options.chaintracks;
560
602
  return await chaintracks.currentHeight();
561
603
  };
562
- return await this.invokeChaintracksWithRetry(method, 'current_height');
604
+ try {
605
+ return await this.invokeChaintracksWithRetry(method, 'current_height');
606
+ }
607
+ catch (error_) {
608
+ // Chaintracks is otherwise this method's single point of failure, and a
609
+ // wallet UI that cannot read the present height is broadly unusable
610
+ // (observed live 2026-08-11: a CORS-blocked chaintracks fetch in a
611
+ // webview-hosted wallet). Mirror `hashToHeader`'s existing belt: fall
612
+ // back to WhatsOnChain, and rethrow the ORIGINAL chaintracks error when
613
+ // the fallback cannot answer either.
614
+ try {
615
+ return (await this.whatsonchain.getChainInfo()).blocks;
616
+ }
617
+ catch {
618
+ throw error_;
619
+ }
620
+ }
563
621
  }
564
622
  async hashToHeader(hash) {
565
623
  const method = async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"Services.js","sourceRoot":"","sources":["../../../src/services/Services.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Services.js","sourceRoot":"","sources":["../../../src/services/Services.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { WalletServices } from '../sdk/WalletServices.interfaces';
2
+ import type { TableOutput } from '../storage/schema/tables/TableOutput';
3
+ export type OutputUtxoVerdict = 'unspent' | 'spent' | 'unknown';
4
+ export interface OutputUtxoClassification {
5
+ verdict: OutputUtxoVerdict;
6
+ provider: string;
7
+ error?: unknown;
8
+ }
9
+ type UtxoServices = Pick<WalletServices, 'getUtxoStatus' | 'hashOutputScript'>;
10
+ export declare const UTXO_PROVIDER_MAX_CONCURRENCY = 4;
11
+ export declare function mapWithConcurrency<T, R>(values: T[], maxConcurrency: number, worker: (value: T, index: number) => Promise<R>): Promise<R[]>;
12
+ /**
13
+ * Classify an output without ever converting provider absence or failure into
14
+ * positive spent evidence. This helper deliberately catches provider throws so
15
+ * batch callers can finish classifying every candidate before deciding whether
16
+ * a destructive operation is safe.
17
+ */
18
+ export declare function classifyOutputUtxo(services: UtxoServices, output: TableOutput): Promise<OutputUtxoClassification>;
19
+ /**
20
+ * Convert an internal tri-state classification to the historical boolean
21
+ * contract only when a provider supplied a conclusive answer.
22
+ */
23
+ export declare function requireConclusiveUtxo(classification: OutputUtxoClassification): boolean;
24
+ export {};
25
+ //# sourceMappingURL=classifyOutputUtxo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"classifyOutputUtxo.d.ts","sourceRoot":"","sources":["../../../src/services/classifyOutputUtxo.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AAEtE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAA;AAEvE,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAA;AAE/D,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,iBAAiB,CAAA;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,KAAK,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,eAAe,GAAG,kBAAkB,CAAC,CAAA;AAE9E,eAAO,MAAM,6BAA6B,IAAI,CAAA;AAE9C,wBAAsB,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAC3C,MAAM,EAAE,CAAC,EAAE,EACX,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAC9C,OAAO,CAAC,CAAC,EAAE,CAAC,CAWd;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,wBAAwB,CAAC,CAiDnC;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,wBAAwB,GAAG,OAAO,CAKvF"}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UTXO_PROVIDER_MAX_CONCURRENCY = void 0;
4
+ exports.mapWithConcurrency = mapWithConcurrency;
5
+ exports.classifyOutputUtxo = classifyOutputUtxo;
6
+ exports.requireConclusiveUtxo = requireConclusiveUtxo;
7
+ const sdk_1 = require("@bsv/sdk");
8
+ const WERR_errors_1 = require("../sdk/WERR_errors");
9
+ exports.UTXO_PROVIDER_MAX_CONCURRENCY = 4;
10
+ async function mapWithConcurrency(values, maxConcurrency, worker) {
11
+ const results = Array.from({ length: values.length });
12
+ let nextIndex = 0;
13
+ const workers = Array.from({ length: Math.min(maxConcurrency, values.length) }, async () => {
14
+ while (nextIndex < values.length) {
15
+ const index = nextIndex++;
16
+ results[index] = await worker(values[index], index);
17
+ }
18
+ });
19
+ await Promise.all(workers);
20
+ return results;
21
+ }
22
+ /**
23
+ * Classify an output without ever converting provider absence or failure into
24
+ * positive spent evidence. This helper deliberately catches provider throws so
25
+ * batch callers can finish classifying every candidate before deciding whether
26
+ * a destructive operation is safe.
27
+ */
28
+ async function classifyOutputUtxo(services, output) {
29
+ if (output.lockingScript == null || output.lockingScript.length === 0) {
30
+ return {
31
+ verdict: 'unknown',
32
+ provider: '<no-locking-script>',
33
+ error: new WERR_errors_1.WERR_INVALID_PARAMETER('output.lockingScript', 'validated by storage provider validateOutputScript.')
34
+ };
35
+ }
36
+ if (typeof output.txid !== 'string' ||
37
+ !/^[0-9a-fA-F]{64}$/.test(output.txid) ||
38
+ !Number.isSafeInteger(output.vout) ||
39
+ output.vout < 0) {
40
+ return {
41
+ verdict: 'unknown',
42
+ provider: '<invalid-outpoint>',
43
+ error: new WERR_errors_1.WERR_INVALID_PARAMETER('output outpoint', 'a 32-byte transaction ID and non-negative vout')
44
+ };
45
+ }
46
+ try {
47
+ const hash = services.hashOutputScript(sdk_1.Utils.toHex(output.lockingScript));
48
+ const result = await services.getUtxoStatus(hash, undefined, `${output.txid}.${output.vout}`);
49
+ const provider = typeof result?.name === 'string' && result.name.length > 0
50
+ ? result.name
51
+ : '<invalid-provider-result>';
52
+ if (result?.status !== 'success' ||
53
+ typeof result.isUtxo !== 'boolean' ||
54
+ provider === '<invalid-provider-result>') {
55
+ return {
56
+ verdict: 'unknown',
57
+ provider,
58
+ error: result?.error
59
+ };
60
+ }
61
+ return {
62
+ verdict: result.isUtxo ? 'unspent' : 'spent',
63
+ provider
64
+ };
65
+ }
66
+ catch (error) {
67
+ return {
68
+ verdict: 'unknown',
69
+ provider: '<provider-error>',
70
+ error
71
+ };
72
+ }
73
+ }
74
+ /**
75
+ * Convert an internal tri-state classification to the historical boolean
76
+ * contract only when a provider supplied a conclusive answer.
77
+ */
78
+ function requireConclusiveUtxo(classification) {
79
+ if (classification.verdict === 'unspent')
80
+ return true;
81
+ if (classification.verdict === 'spent')
82
+ return false;
83
+ if (classification.error instanceof Error)
84
+ throw classification.error;
85
+ throw new WERR_errors_1.WERR_INVALID_OPERATION(`UTXO provider ${classification.provider} did not return a conclusive result.`);
86
+ }
87
+ //# sourceMappingURL=classifyOutputUtxo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"classifyOutputUtxo.js","sourceRoot":"","sources":["../../../src/services/classifyOutputUtxo.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,19 @@ import { ChaintracksClientApi } from './chaintracker/chaintracks/Api/Chaintracks
4
4
  /**
5
5
  * Returns the credential-free default ChainTracks client for a supported
6
6
  * public network, or an operator-configured client for stn/tstn.
7
+ *
8
+ * BROWSER RUNTIMES get the legacy CORS-enabled Chaintracks service for
9
+ * main/test. The Go Chaintracks deployments (`arcade-v2-*.bsvblockchain.tech`)
10
+ * currently serve no `Access-Control-Allow-Origin` header and answer OPTIONS
11
+ * preflights with 404 (verified live 2026-08-11), so every fetch from a
12
+ * browser-hosted wallet is CORS-blocked (WebKit surfaces it as
13
+ * `TypeError: Load failed`) and the wallet loses `getHeight`, headers and
14
+ * merkle-root validation wholesale. The repository service contract
15
+ * (AGENTS.md: "browser, mobile, and unknown-domain clients must not be
16
+ * silently blocked by CORS") requires a default that browsers can actually
17
+ * reach. Once the Go deployments serve CORS (and a browser-run conformance
18
+ * check proves it), this branch can be removed and browsers can share the v2
19
+ * default. Node runtimes are unchanged.
7
20
  */
8
21
  export declare function createDefaultChaintracksClient(chain: Exclude<Chain, 'mock'>): ChaintracksClientApi;
9
22
  export declare function createDefaultWalletServicesOptions(...[chain, arcCallbackUrl, arcCallbackToken, taalArcApiKey, gorillaPoolArcApiKey, bitailsApiKey, deploymentId, chaintracks, arcadeUrl, arcadeApiKey, arcadeCallbackToken]: [
@@ -16,9 +29,9 @@ export declare function createDefaultWalletServicesOptions(...[chain, arcCallbac
16
29
  deploymentId?: string,
17
30
  chaintracks?: ChaintracksClientApi,
18
31
  /**
19
- * Optional Arcade endpoint. When provided (or when a default exists for the chain via
20
- * `arcadeDefaultUrl`), Arcade is registered as the primary broadcaster ahead of ARC.
21
- * Pass an empty string to explicitly disable the per-chain default.
32
+ * Optional Arcade endpoint. TTN uses its public Arcade endpoint by default; other
33
+ * chains remain opt-in. Arcade is registered as the primary broadcaster ahead of ARC.
34
+ * Pass an empty string to explicitly disable the TTN default.
22
35
  */
23
36
  arcadeUrl?: string,
24
37
  /** Server-level API key (Bearer) for the Arcade endpoint, if it requires auth. */
@@ -1 +1 @@
1
- {"version":3,"file":"createDefaultWalletServicesOptions.d.ts","sourceRoot":"","sources":["../../../src/services/createDefaultWalletServicesOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAA;AAuB1F;;;GAGG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,oBAAoB,CAalG;AAED,wBAAgB,kCAAkC,CAChD,GAAG,CACD,KAAK,EACL,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,YAAY,EACZ,WAAW,EACX,SAAS,EACT,YAAY,EACZ,mBAAmB,CACpB,EAAE;IACD,KAAK,EAAE,KAAK;IACZ,cAAc,CAAC,EAAE,MAAM;IACvB,gBAAgB,CAAC,EAAE,MAAM;IACzB,aAAa,CAAC,EAAE,MAAM;IACtB,oBAAoB,CAAC,EAAE,MAAM;IAC7B,aAAa,CAAC,EAAE,MAAM;IACtB,YAAY,CAAC,EAAE,MAAM;IACrB,WAAW,CAAC,EAAE,oBAAoB;IAClC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM;IAClB,kFAAkF;IAClF,YAAY,CAAC,EAAE,MAAM;IACrB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM;CAC7B,GACA,qBAAqB,CA4EvB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAcjE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAgBlD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAElE"}
1
+ {"version":3,"file":"createDefaultWalletServicesOptions.d.ts","sourceRoot":"","sources":["../../../src/services/createDefaultWalletServicesOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAA;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,qDAAqD,CAAA;AAiC1F;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,oBAAoB,CAqBlG;AAED,wBAAgB,kCAAkC,CAChD,GAAG,CACD,KAAK,EACL,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,YAAY,EACZ,WAAW,EACX,SAAS,EACT,YAAY,EACZ,mBAAmB,CACpB,EAAE;IACD,KAAK,EAAE,KAAK;IACZ,cAAc,CAAC,EAAE,MAAM;IACvB,gBAAgB,CAAC,EAAE,MAAM;IACzB,aAAa,CAAC,EAAE,MAAM;IACtB,oBAAoB,CAAC,EAAE,MAAM;IAC7B,aAAa,CAAC,EAAE,MAAM;IACtB,YAAY,CAAC,EAAE,MAAM;IACrB,WAAW,CAAC,EAAE,oBAAoB;IAClC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM;IAClB,kFAAkF;IAClF,YAAY,CAAC,EAAE,MAAM;IACrB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM;CAC7B,GACA,qBAAqB,CA4EvB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAcjE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAgBlD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAElE"}
@@ -28,15 +28,45 @@ function configuredChaintracksClient(chain, serviceUrl) {
28
28
  return new GoChaintracksServiceClient_1.GoChaintracksServiceClient(chain, serviceUrl);
29
29
  return new ChaintracksServiceClient_1.ChaintracksServiceClient(chain, serviceUrl);
30
30
  }
31
+ /**
32
+ * True when running under a browser-style runtime — a real browser tab, or
33
+ * the embedded webview a desktop wallet shell hosts its wallet logic in
34
+ * (Metanet Client / User Wallet are Tauri WKWebViews) — where `fetch` is
35
+ * subject to CORS enforcement that Node-style runtimes do not apply.
36
+ */
37
+ function isBrowserRuntime() {
38
+ return typeof window !== 'undefined' && window.document !== undefined;
39
+ }
31
40
  /**
32
41
  * Returns the credential-free default ChainTracks client for a supported
33
42
  * public network, or an operator-configured client for stn/tstn.
43
+ *
44
+ * BROWSER RUNTIMES get the legacy CORS-enabled Chaintracks service for
45
+ * main/test. The Go Chaintracks deployments (`arcade-v2-*.bsvblockchain.tech`)
46
+ * currently serve no `Access-Control-Allow-Origin` header and answer OPTIONS
47
+ * preflights with 404 (verified live 2026-08-11), so every fetch from a
48
+ * browser-hosted wallet is CORS-blocked (WebKit surfaces it as
49
+ * `TypeError: Load failed`) and the wallet loses `getHeight`, headers and
50
+ * merkle-root validation wholesale. The repository service contract
51
+ * (AGENTS.md: "browser, mobile, and unknown-domain clients must not be
52
+ * silently blocked by CORS") requires a default that browsers can actually
53
+ * reach. Once the Go deployments serve CORS (and a browser-run conformance
54
+ * check proves it), this branch can be removed and browsers can share the v2
55
+ * default. Node runtimes are unchanged.
34
56
  */
35
57
  function createDefaultChaintracksClient(chain) {
36
58
  switch (chain) {
37
59
  case 'main':
38
60
  case 'test':
61
+ if (isBrowserRuntime()) {
62
+ return new ChaintracksServiceClient_1.ChaintracksServiceClient(chain, `https://${chain}net-chaintracks.babbage.systems`);
63
+ }
64
+ return new GoChaintracksServiceClient_1.GoChaintracksServiceClient(chain, arcadeDefaultUrl(chain), {
65
+ apiPrefix: '/chaintracks/v2'
66
+ });
39
67
  case 'ttn':
68
+ // No legacy CORS-enabled deployment exists for ttn — browser callers
69
+ // inherit the v2 endpoint until it serves CORS.
40
70
  return new GoChaintracksServiceClient_1.GoChaintracksServiceClient(chain, arcadeDefaultUrl(chain), {
41
71
  apiPrefix: '/chaintracks/v2'
42
72
  });
@@ -83,7 +113,9 @@ function createDefaultWalletServicesOptions(...[chain, arcCallbackUrl, arcCallba
83
113
  exchangeratesapiKey: undefined,
84
114
  chaintracksFiatExchangeRatesUrl,
85
115
  chaintracks,
86
- arcUrl: arcDefaultUrl(chain),
116
+ // Arcade uses EF at /tx. Legacy ARC uses BEEF at /v1/tx and has no
117
+ // compatible public TTN endpoint, so do not install it as a TTN fallback.
118
+ arcUrl: chain === 'ttn' ? '' : arcDefaultUrl(chain),
87
119
  arcConfig: {
88
120
  apiKey: taalArcApiKey ?? undefined,
89
121
  deploymentId,
@@ -99,12 +131,10 @@ function createDefaultWalletServicesOptions(...[chain, arcCallbackUrl, arcCallba
99
131
  },
100
132
  bitailsApiKey
101
133
  };
102
- // Arcade (bsv-blockchain/arcade) primary broadcaster.
103
- // Opt-in: enabled only when an explicit `arcadeUrl` is provided. Callers can pass
104
- // `arcadeDefaultUrl(chain)` to use the known per-chain endpoint. Kept opt-in (rather
105
- // than defaulted on) so existing consumers' broadcaster set is unchanged until the
106
- // Arcade path has been validated end-to-end; flipping the default is a one-line change.
107
- const resolvedArcadeUrl = arcadeUrl;
134
+ // Arcade (bsv-blockchain/arcade) primary broadcaster. TTN has no compatible
135
+ // public ARC fallback, so it defaults to the known TTN Arcade endpoint. Existing
136
+ // mainnet/testnet provider sets remain opt-in and therefore unchanged.
137
+ const resolvedArcadeUrl = arcadeUrl ?? (chain === 'ttn' ? arcadeDefaultUrl(chain) : undefined);
108
138
  if (resolvedArcadeUrl != null && resolvedArcadeUrl !== '') {
109
139
  o.arcadeUrl = resolvedArcadeUrl;
110
140
  o.arcadeConfig = {
@@ -145,7 +175,7 @@ function arcDefaultUrl(chain) {
145
175
  case 'stn':
146
176
  return (0, networkConfig_1.stnArcadeUrl)() ?? '';
147
177
  case 'ttn':
148
- return 'https://arcade-v2-ttn-us-1.bsvblockchain.tech/';
178
+ return '';
149
179
  case 'tstn':
150
180
  // Private per-deployment endpoint supplied via TSTN_ARCADE_URL ('' when unset).
151
181
  return (0, networkConfig_1.tstnArcadeUrl)() ?? '';
@@ -1 +1 @@
1
- {"version":3,"file":"createDefaultWalletServicesOptions.js","sourceRoot":"","sources":["../../../src/services/createDefaultWalletServicesOptions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createDefaultWalletServicesOptions.js","sourceRoot":"","sources":["../../../src/services/createDefaultWalletServicesOptions.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,15 @@ export interface ArcSSEEvent {
13
13
  txid: string;
14
14
  txStatus: string;
15
15
  timestamp: string;
16
+ /** Transport cursor attached by ArcSSEClient; not part of Arcade's JSON payload. */
17
+ eventId?: string;
18
+ /** ARC rejection code supplied by Arcade for classifiable REJECTED events. */
19
+ status?: number;
20
+ /** Arcade's validator or network rejection detail. */
21
+ extraInfo?: string;
22
+ blockHash?: string;
23
+ blockHeight?: number;
24
+ merklePath?: string;
16
25
  }
17
26
  export interface ArcSSEClientOptions {
18
27
  /** Base URL of the Arcade instance (e.g. "https://arcade-us-1.bsvb.tech") */
@@ -21,14 +30,14 @@ export interface ArcSSEClientOptions {
21
30
  callbackToken: string;
22
31
  /** Server-level API key for Authorization header (from ArcConfig.apiKey) */
23
32
  arcApiKey?: string;
24
- /** Called for each status event received */
25
- onEvent: (event: ArcSSEEvent) => void;
33
+ /** Called for each status event received; resolution acknowledges durable processing. */
34
+ onEvent: (event: ArcSSEEvent) => void | Promise<void>;
26
35
  /** Called when a connection error occurs */
27
36
  onError?: (error: Error) => void;
28
37
  /** Initial lastEventId for catchup */
29
38
  lastEventId?: string;
30
- /** Called whenever lastEventId changes, for persistence to storage */
31
- onLastEventIdChanged?: (lastEventId: string) => void;
39
+ /** Called after event processing and before lastEventId advances. */
40
+ onLastEventIdChanged?: (lastEventId: string) => void | Promise<void>;
32
41
  /** The react-native-sse EventSource class — passed in to avoid import from wallet-toolbox */
33
42
  EventSourceClass: any;
34
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ArcSSEClient.d.ts","sourceRoot":"","sources":["../../../../src/services/providers/ArcSSEClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAA;IACf,6EAA6E;IAC7E,aAAa,EAAE,MAAM,CAAA;IACrB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,4CAA4C;IAC5C,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAA;IACrC,4CAA4C;IAC5C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sEAAsE;IACtE,oBAAoB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAA;IACpD,6FAA6F;IAC7F,gBAAgB,EAAE,GAAG,CAAA;CACtB;AAED,qBAAa,YAAY;IAQV,OAAO,CAAC,QAAQ,CAAC,OAAO;IAPrC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,UAAU,CAAQ;IAE1B,YAA8B,OAAO,EAAE,mBAAmB,EAQzD;IAED,IAAI,WAAW,IAAK,MAAM,GAAG,SAAS,CAErC;IAED;;OAEG;IACH,OAAO,IAAK,IAAI,CAoDf;IAED,wCAAwC;IACxC,KAAK,IAAK,IAAI,CAQb;IAED;;;;OAIG;IACG,WAAW,IAAK,OAAO,CAAC,MAAM,CAAC,CAUpC;CACF"}
1
+ {"version":3,"file":"ArcSSEClient.d.ts","sourceRoot":"","sources":["../../../../src/services/providers/ArcSSEClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAA;IACf,6EAA6E;IAC7E,aAAa,EAAE,MAAM,CAAA;IACrB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,yFAAyF;IACzF,OAAO,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACrD,4CAA4C;IAC5C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,qEAAqE;IACrE,oBAAoB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACpE,6FAA6F;IAC7F,gBAAgB,EAAE,GAAG,CAAA;CACtB;AAED,qBAAa,YAAY;IAQV,OAAO,CAAC,QAAQ,CAAC,OAAO;IAPrC,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,EAAE,CAAY;IACtB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,UAAU,CAAQ;IAE1B,YAA8B,OAAO,EAAE,mBAAmB,EAQzD;IAED,IAAI,WAAW,IAAK,MAAM,GAAG,SAAS,CAErC;IAED;;OAEG;IACH,OAAO,IAAK,IAAI,CAwEf;IAED,wCAAwC;IACxC,KAAK,IAAK,IAAI,CAQb;IAED;;;;OAIG;IACG,WAAW,IAAK,OAAO,CAAC,MAAM,CAAC,CAUpC;CACF"}