@arkade-os/sdk 0.4.72 → 0.4.74

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 (77) 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/{asyncStorageTaskQueue-s5lUGWxu.d.cts → asyncStorageTaskQueue-D1AwLuqn.d.cts} +2 -2
  8. package/dist/{asyncStorageTaskQueue-DhhNZc4v.d.ts → asyncStorageTaskQueue-aCaOBGTS.d.ts} +2 -2
  9. package/dist/{chunk-4C5PMGBB.cjs → chunk-AS3W34MG.cjs} +17 -17
  10. package/dist/{chunk-4C5PMGBB.cjs.map → chunk-AS3W34MG.cjs.map} +1 -1
  11. package/dist/{chunk-NPM5YZBC.cjs → chunk-DXLVCFVK.cjs} +49 -49
  12. package/dist/{chunk-NPM5YZBC.cjs.map → chunk-DXLVCFVK.cjs.map} +1 -1
  13. package/dist/{chunk-S5PUFSXC.js → chunk-J3XVGWMP.js} +21 -22
  14. package/dist/chunk-J3XVGWMP.js.map +1 -0
  15. package/dist/{chunk-4BWZ437E.cjs → chunk-J4ZR4VEM.cjs} +31 -32
  16. package/dist/chunk-J4ZR4VEM.cjs.map +1 -0
  17. package/dist/{chunk-6FTHFJAN.cjs → chunk-KMPNH7NS.cjs} +8 -4
  18. package/dist/chunk-KMPNH7NS.cjs.map +1 -0
  19. package/dist/{chunk-CZPBPMO2.js → chunk-KPLQN4M4.js} +4 -4
  20. package/dist/{chunk-CZPBPMO2.js.map → chunk-KPLQN4M4.js.map} +1 -1
  21. package/dist/{chunk-CB6QPAO5.js → chunk-LGB65ZCO.js} +3 -3
  22. package/dist/{chunk-CB6QPAO5.js.map → chunk-LGB65ZCO.js.map} +1 -1
  23. package/dist/{chunk-KDMHEWTD.cjs → chunk-QS6AZE4F.cjs} +10 -10
  24. package/dist/{chunk-KDMHEWTD.cjs.map → chunk-QS6AZE4F.cjs.map} +1 -1
  25. package/dist/{chunk-U5I3ITV7.cjs → chunk-WIHSU3YS.cjs} +708 -497
  26. package/dist/chunk-WIHSU3YS.cjs.map +1 -0
  27. package/dist/{chunk-5GQFYVWP.js → chunk-WJVOFYTQ.js} +8 -4
  28. package/dist/chunk-WJVOFYTQ.js.map +1 -0
  29. package/dist/{chunk-IGER5FPC.js → chunk-X5BPARRD.js} +3 -3
  30. package/dist/{chunk-IGER5FPC.js.map → chunk-X5BPARRD.js.map} +1 -1
  31. package/dist/{chunk-BHLYB44A.js → chunk-ZTGTQP2W.js} +272 -63
  32. package/dist/chunk-ZTGTQP2W.js.map +1 -0
  33. package/dist/contracts/handlers/index.cjs +9 -9
  34. package/dist/contracts/handlers/index.d.cts +3 -3
  35. package/dist/contracts/handlers/index.d.ts +3 -3
  36. package/dist/contracts/handlers/index.js +2 -2
  37. package/dist/{delegate-BJp8f6LT.d.cts → delegate-6N0DKdnG.d.cts} +1 -1
  38. package/dist/{delegate-Ckz_TWzM.d.ts → delegate-z6veQfLI.d.ts} +1 -1
  39. package/dist/{hdWalletCapable-DABgAD-T.d.ts → hdWalletCapable-Bncp-eF0.d.ts} +2 -2
  40. package/dist/{hdWalletCapable-DA9bJ5eB.d.cts → hdWalletCapable-DJT8E8sN.d.cts} +2 -2
  41. package/dist/{index-DSbDm0Io.d.cts → index-BVqlZJwW.d.cts} +2 -2
  42. package/dist/{index-Dg0-TvBQ.d.ts → index-Bxz3cKPA.d.cts} +13 -7
  43. package/dist/{index-Dg0-TvBQ.d.cts → index-Bxz3cKPA.d.ts} +13 -7
  44. package/dist/{index-B8xrELXY.d.ts → index-CKQQ1oOg.d.ts} +2 -2
  45. package/dist/index.cjs +308 -300
  46. package/dist/index.d.cts +50 -24
  47. package/dist/index.d.ts +50 -24
  48. package/dist/index.js +4 -4
  49. package/dist/repositories/realm/index.cjs +19 -19
  50. package/dist/repositories/realm/index.d.cts +2 -2
  51. package/dist/repositories/realm/index.d.ts +2 -2
  52. package/dist/repositories/realm/index.js +5 -5
  53. package/dist/repositories/sqlite/index.cjs +18 -18
  54. package/dist/repositories/sqlite/index.d.cts +2 -2
  55. package/dist/repositories/sqlite/index.d.ts +2 -2
  56. package/dist/repositories/sqlite/index.js +5 -5
  57. package/dist/{taskRunner-BH_FxaNI.d.cts → taskRunner-C26IIg1F.d.cts} +2 -2
  58. package/dist/{taskRunner-DrVz2QZs.d.ts → taskRunner-KxtIKYLv.d.ts} +2 -2
  59. package/dist/wallet/expo/background.cjs +14 -14
  60. package/dist/wallet/expo/background.d.cts +3 -3
  61. package/dist/wallet/expo/background.d.ts +3 -3
  62. package/dist/wallet/expo/background.js +6 -6
  63. package/dist/wallet/expo/index.cjs +14 -14
  64. package/dist/wallet/expo/index.d.cts +4 -4
  65. package/dist/wallet/expo/index.d.ts +4 -4
  66. package/dist/wallet/expo/index.js +5 -5
  67. package/dist/worker/expo/index.cjs +9 -9
  68. package/dist/worker/expo/index.d.cts +4 -4
  69. package/dist/worker/expo/index.d.ts +4 -4
  70. package/dist/worker/expo/index.js +5 -5
  71. package/package.json +1 -1
  72. package/dist/chunk-4BWZ437E.cjs.map +0 -1
  73. package/dist/chunk-5GQFYVWP.js.map +0 -1
  74. package/dist/chunk-6FTHFJAN.cjs.map +0 -1
  75. package/dist/chunk-BHLYB44A.js.map +0 -1
  76. package/dist/chunk-S5PUFSXC.js.map +0 -1
  77. package/dist/chunk-U5I3ITV7.cjs.map +0 -1
@@ -1,5 +1,5 @@
1
- import { W as WalletRepository, w as ExtendedVirtualCoin, x as VtxoRepositoryKey, E as ExtendedCoin, A as ArkTransaction, y as WalletState, C as ContractRepository, z as ContractFilter, v as Contract, B as IntentRepository, D as ArkIntent, F as IntentFilter, O as Outpoint, H as VirtualTxRepository, J as VirtualTx, K as VtxoBranch } from '../../index-Dg0-TvBQ.js';
2
- export { L as ChainedTxType } from '../../index-Dg0-TvBQ.js';
1
+ import { W as WalletRepository, w as ExtendedVirtualCoin, x as VtxoRepositoryKey, E as ExtendedCoin, A as ArkTransaction, y as WalletState, C as ContractRepository, z as ContractFilter, v as Contract, B as IntentRepository, D as ArkIntent, F as IntentFilter, O as Outpoint, H as VirtualTxRepository, J as VirtualTx, K as VtxoBranch } from '../../index-Bxz3cKPA.js';
2
+ export { L as ChainedTxType } from '../../index-Bxz3cKPA.js';
3
3
  import '@scure/btc-signer/utils.js';
4
4
  import '@scure/btc-signer/transaction.js';
5
5
  import '@scure/btc-signer';
@@ -1,8 +1,8 @@
1
- import { serializeVtxo, isVtxoForScript, serializeUtxo, serializeAssets, scriptFromArkAddress, deserializeVtxo, deserializeUtxo, deserializeAssets, assertIntentIdUnique, intentMatchesFilter, intentPageBounds, isTerminalIntentState, mergeChainedTxType } from '../../chunk-BHLYB44A.js';
2
- export { ChainedTxType } from '../../chunk-BHLYB44A.js';
3
- import '../../chunk-IGER5FPC.js';
4
- import '../../chunk-CB6QPAO5.js';
5
- import '../../chunk-5GQFYVWP.js';
1
+ import { serializeVtxo, isVtxoForScript, serializeUtxo, serializeAssets, scriptFromArkAddress, deserializeVtxo, deserializeUtxo, deserializeAssets, assertIntentIdUnique, intentMatchesFilter, intentPageBounds, isTerminalIntentState, mergeChainedTxType } from '../../chunk-ZTGTQP2W.js';
2
+ export { ChainedTxType } from '../../chunk-ZTGTQP2W.js';
3
+ import '../../chunk-X5BPARRD.js';
4
+ import '../../chunk-LGB65ZCO.js';
5
+ import '../../chunk-WJVOFYTQ.js';
6
6
  import '../../chunk-NSBPE2FW.js';
7
7
 
8
8
  // src/repositories/realm/walletRepository.ts
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkU5I3ITV7_cjs = require('../../chunk-U5I3ITV7.cjs');
4
- require('../../chunk-4C5PMGBB.cjs');
5
- require('../../chunk-NPM5YZBC.cjs');
6
- require('../../chunk-6FTHFJAN.cjs');
3
+ var chunkWIHSU3YS_cjs = require('../../chunk-WIHSU3YS.cjs');
4
+ require('../../chunk-AS3W34MG.cjs');
5
+ require('../../chunk-DXLVCFVK.cjs');
6
+ require('../../chunk-KMPNH7NS.cjs');
7
7
  require('../../chunk-5BLDMQED.cjs');
8
8
 
9
9
  // src/repositories/sqlite/transaction.ts
@@ -154,7 +154,7 @@ var SQLiteWalletRepository = class {
154
154
  for (const row of nullRows) {
155
155
  await this.db.run(
156
156
  `UPDATE ${this.tables.vtxos} SET script = ? WHERE txid = ? AND vout = ?`,
157
- [chunkU5I3ITV7_cjs.scriptFromArkAddress(row.address), row.txid, row.vout]
157
+ [chunkWIHSU3YS_cjs.scriptFromArkAddress(row.address), row.txid, row.vout]
158
158
  );
159
159
  }
160
160
  const tempName = `${this.tables.vtxos}__migrate_tmp`;
@@ -225,7 +225,7 @@ var SQLiteWalletRepository = class {
225
225
  async saveVtxos(address, vtxos) {
226
226
  await this.ensureInit();
227
227
  for (const vtxo of vtxos) {
228
- const s = chunkU5I3ITV7_cjs.serializeVtxo(vtxo);
228
+ const s = chunkWIHSU3YS_cjs.serializeVtxo(vtxo);
229
229
  await this.db.run(
230
230
  `INSERT OR REPLACE INTO ${this.tables.vtxos}
231
231
  (txid, vout, value, address,
@@ -280,7 +280,7 @@ var SQLiteWalletRepository = class {
280
280
  throw new Error("SQLiteWalletRepository requires an address");
281
281
  }
282
282
  for (const vtxo of vtxos) {
283
- if (!chunkU5I3ITV7_cjs.isVtxoForScript(vtxo, key.script)) {
283
+ if (!chunkWIHSU3YS_cjs.isVtxoForScript(vtxo, key.script)) {
284
284
  throw new Error(
285
285
  `VTXO ${vtxo.txid}:${vtxo.vout} script mismatch: expected ${key.script}, got ${vtxo.script}`
286
286
  );
@@ -304,7 +304,7 @@ var SQLiteWalletRepository = class {
304
304
  async saveUtxos(address, utxos) {
305
305
  await this.ensureInit();
306
306
  for (const utxo of utxos) {
307
- const s = chunkU5I3ITV7_cjs.serializeUtxo(utxo);
307
+ const s = chunkWIHSU3YS_cjs.serializeUtxo(utxo);
308
308
  await this.db.run(
309
309
  `INSERT OR REPLACE INTO ${this.tables.utxos}
310
310
  (txid, vout, value, address,
@@ -360,7 +360,7 @@ var SQLiteWalletRepository = class {
360
360
  tx.amount,
361
361
  tx.settled ? 1 : 0,
362
362
  tx.createdAt,
363
- tx.assets ? JSON.stringify(chunkU5I3ITV7_cjs.serializeAssets(tx.assets)) : null
363
+ tx.assets ? JSON.stringify(chunkWIHSU3YS_cjs.serializeAssets(tx.assets)) : null
364
364
  ]
365
365
  );
366
366
  }
@@ -434,9 +434,9 @@ function vtxoRowToDomain(row) {
434
434
  // Post-migration every row has `script`, but the backfill is
435
435
  // idempotent: derive from `address` if the legacy column is still
436
436
  // null (e.g. the migration hasn't run yet on this handle).
437
- script: row.script ?? chunkU5I3ITV7_cjs.scriptFromArkAddress(row.address)
437
+ script: row.script ?? chunkWIHSU3YS_cjs.scriptFromArkAddress(row.address)
438
438
  };
439
- return chunkU5I3ITV7_cjs.deserializeVtxo(serialized);
439
+ return chunkWIHSU3YS_cjs.deserializeVtxo(serialized);
440
440
  }
441
441
  function utxoRowToDomain(row) {
442
442
  const serialized = {
@@ -455,7 +455,7 @@ function utxoRowToDomain(row) {
455
455
  status: JSON.parse(row.status_json),
456
456
  extraWitness: row.extra_witness_json ? JSON.parse(row.extra_witness_json) : void 0
457
457
  };
458
- return chunkU5I3ITV7_cjs.deserializeUtxo(serialized);
458
+ return chunkWIHSU3YS_cjs.deserializeUtxo(serialized);
459
459
  }
460
460
  function txRowToDomain(row) {
461
461
  const tx = {
@@ -470,7 +470,7 @@ function txRowToDomain(row) {
470
470
  createdAt: row.created_at
471
471
  };
472
472
  if (row.assets_json) {
473
- tx.assets = chunkU5I3ITV7_cjs.deserializeAssets(JSON.parse(row.assets_json));
473
+ tx.assets = chunkWIHSU3YS_cjs.deserializeAssets(JSON.parse(row.assets_json));
474
474
  }
475
475
  return tx;
476
476
  }
@@ -743,8 +743,8 @@ var SQLiteIntentRepository = class {
743
743
  `SELECT * FROM ${this.t} ORDER BY created_at ASC, intent_tx_id ASC`
744
744
  );
745
745
  let out = rows.map(rowToIntent);
746
- if (filter) out = out.filter((i) => chunkU5I3ITV7_cjs.intentMatchesFilter(i, filter));
747
- const { skip, end } = chunkU5I3ITV7_cjs.intentPageBounds(filter, out.length);
746
+ if (filter) out = out.filter((i) => chunkWIHSU3YS_cjs.intentMatchesFilter(i, filter));
747
+ const { skip, end } = chunkWIHSU3YS_cjs.intentPageBounds(filter, out.length);
748
748
  return out.slice(skip, end);
749
749
  }
750
750
  async getLockedVtxoOutpoints() {
@@ -752,7 +752,7 @@ var SQLiteIntentRepository = class {
752
752
  const rows = await this.db.all(`SELECT * FROM ${this.t}`);
753
753
  const out = [];
754
754
  for (const r of rows) {
755
- if (chunkU5I3ITV7_cjs.isTerminalIntentState(r.state)) continue;
755
+ if (chunkWIHSU3YS_cjs.isTerminalIntentState(r.state)) continue;
756
756
  for (const o of JSON.parse(r.intent_vtxos_json)) out.push(o);
757
757
  }
758
758
  return out;
@@ -847,7 +847,7 @@ var SQLiteVirtualTxRepository = class {
847
847
  const prev = prevByTxid.get(t.txid);
848
848
  const psbt = t.psbt ?? prev?.psbt ?? null;
849
849
  const expires = t.expiresAt ?? prev?.expires_at ?? null;
850
- const type = chunkU5I3ITV7_cjs.mergeChainedTxType(t.type, prev?.type);
850
+ const type = chunkWIHSU3YS_cjs.mergeChainedTxType(t.type, prev?.type);
851
851
  await this.db.run(
852
852
  `INSERT OR REPLACE INTO ${this.tTx} (txid, psbt, expires_at, type) VALUES (?, ?, ?, ?)`,
853
853
  [t.txid, psbt, expires, type]
@@ -940,7 +940,7 @@ function sanitizeTablePrefix(p) {
940
940
 
941
941
  Object.defineProperty(exports, "ChainedTxType", {
942
942
  enumerable: true,
943
- get: function () { return chunkU5I3ITV7_cjs.ChainedTxType; }
943
+ get: function () { return chunkWIHSU3YS_cjs.ChainedTxType; }
944
944
  });
945
945
  exports.SQLiteContractRepository = SQLiteContractRepository;
946
946
  exports.SQLiteIntentRepository = SQLiteIntentRepository;
@@ -1,5 +1,5 @@
1
- import { W as WalletRepository, w as ExtendedVirtualCoin, x as VtxoRepositoryKey, E as ExtendedCoin, A as ArkTransaction, y as WalletState, C as ContractRepository, z as ContractFilter, v as Contract, B as IntentRepository, D as ArkIntent, F as IntentFilter, O as Outpoint, H as VirtualTxRepository, J as VirtualTx, K as VtxoBranch } from '../../index-Dg0-TvBQ.cjs';
2
- export { L as ChainedTxType } from '../../index-Dg0-TvBQ.cjs';
1
+ import { W as WalletRepository, w as ExtendedVirtualCoin, x as VtxoRepositoryKey, E as ExtendedCoin, A as ArkTransaction, y as WalletState, C as ContractRepository, z as ContractFilter, v as Contract, B as IntentRepository, D as ArkIntent, F as IntentFilter, O as Outpoint, H as VirtualTxRepository, J as VirtualTx, K as VtxoBranch } from '../../index-Bxz3cKPA.cjs';
2
+ export { L as ChainedTxType } from '../../index-Bxz3cKPA.cjs';
3
3
  import '@scure/btc-signer/utils.js';
4
4
  import '@scure/btc-signer/transaction.js';
5
5
  import '@scure/btc-signer';
@@ -1,5 +1,5 @@
1
- import { W as WalletRepository, w as ExtendedVirtualCoin, x as VtxoRepositoryKey, E as ExtendedCoin, A as ArkTransaction, y as WalletState, C as ContractRepository, z as ContractFilter, v as Contract, B as IntentRepository, D as ArkIntent, F as IntentFilter, O as Outpoint, H as VirtualTxRepository, J as VirtualTx, K as VtxoBranch } from '../../index-Dg0-TvBQ.js';
2
- export { L as ChainedTxType } from '../../index-Dg0-TvBQ.js';
1
+ import { W as WalletRepository, w as ExtendedVirtualCoin, x as VtxoRepositoryKey, E as ExtendedCoin, A as ArkTransaction, y as WalletState, C as ContractRepository, z as ContractFilter, v as Contract, B as IntentRepository, D as ArkIntent, F as IntentFilter, O as Outpoint, H as VirtualTxRepository, J as VirtualTx, K as VtxoBranch } from '../../index-Bxz3cKPA.js';
2
+ export { L as ChainedTxType } from '../../index-Bxz3cKPA.js';
3
3
  import '@scure/btc-signer/utils.js';
4
4
  import '@scure/btc-signer/transaction.js';
5
5
  import '@scure/btc-signer';
@@ -1,8 +1,8 @@
1
- import { scriptFromArkAddress, serializeVtxo, isVtxoForScript, serializeUtxo, serializeAssets, deserializeVtxo, deserializeUtxo, deserializeAssets, intentMatchesFilter, intentPageBounds, isTerminalIntentState, mergeChainedTxType } from '../../chunk-BHLYB44A.js';
2
- export { ChainedTxType } from '../../chunk-BHLYB44A.js';
3
- import '../../chunk-IGER5FPC.js';
4
- import '../../chunk-CB6QPAO5.js';
5
- import '../../chunk-5GQFYVWP.js';
1
+ import { scriptFromArkAddress, serializeVtxo, isVtxoForScript, serializeUtxo, serializeAssets, deserializeVtxo, deserializeUtxo, deserializeAssets, intentMatchesFilter, intentPageBounds, isTerminalIntentState, mergeChainedTxType } from '../../chunk-ZTGTQP2W.js';
2
+ export { ChainedTxType } from '../../chunk-ZTGTQP2W.js';
3
+ import '../../chunk-X5BPARRD.js';
4
+ import '../../chunk-LGB65ZCO.js';
5
+ import '../../chunk-WJVOFYTQ.js';
6
6
  import '../../chunk-NSBPE2FW.js';
7
7
 
8
8
  // src/repositories/sqlite/transaction.ts
@@ -1,4 +1,4 @@
1
- import { W as WalletRepository, C as ContractRepository, r as IndexerProvider, q as ArkProvider, u as VirtualCoin, v as Contract, w as ExtendedVirtualCoin } from './index-Dg0-TvBQ.cjs';
1
+ import { W as WalletRepository, C as ContractRepository, r as IndexerProvider, q as ArkProvider, u as VirtualCoin, v as Contract, w as ExtendedVirtualCoin } from './index-Bxz3cKPA.cjs';
2
2
 
3
3
  /**
4
4
  * A task item represents a unit of work in the inbox.
@@ -111,4 +111,4 @@ interface CreateTaskDependenciesOptions {
111
111
  */
112
112
  declare function createTaskDependencies(options: CreateTaskDependenciesOptions): TaskDependencies;
113
113
 
114
- export { type CreateTaskDependenciesOptions as C, InMemoryTaskQueue as I, type TaskProcessor as T, type TaskQueue as a, type TaskDependencies as b, type TaskItem as c, type TaskResult as d, createTaskDependencies as e, runTasks as r };
114
+ export { type CreateTaskDependenciesOptions as C, InMemoryTaskQueue as I, type TaskProcessor as T, type TaskDependencies as a, type TaskItem as b, type TaskQueue as c, type TaskResult as d, createTaskDependencies as e, runTasks as r };
@@ -1,4 +1,4 @@
1
- import { W as WalletRepository, C as ContractRepository, r as IndexerProvider, q as ArkProvider, u as VirtualCoin, v as Contract, w as ExtendedVirtualCoin } from './index-Dg0-TvBQ.js';
1
+ import { W as WalletRepository, C as ContractRepository, r as IndexerProvider, q as ArkProvider, u as VirtualCoin, v as Contract, w as ExtendedVirtualCoin } from './index-Bxz3cKPA.js';
2
2
 
3
3
  /**
4
4
  * A task item represents a unit of work in the inbox.
@@ -111,4 +111,4 @@ interface CreateTaskDependenciesOptions {
111
111
  */
112
112
  declare function createTaskDependencies(options: CreateTaskDependenciesOptions): TaskDependencies;
113
113
 
114
- export { type CreateTaskDependenciesOptions as C, InMemoryTaskQueue as I, type TaskProcessor as T, type TaskQueue as a, type TaskDependencies as b, type TaskItem as c, type TaskResult as d, createTaskDependencies as e, runTasks as r };
114
+ export { type CreateTaskDependenciesOptions as C, InMemoryTaskQueue as I, type TaskProcessor as T, type TaskDependencies as a, type TaskItem as b, type TaskQueue as c, type TaskResult as d, createTaskDependencies as e, runTasks as r };
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var chunkKDMHEWTD_cjs = require('../../chunk-KDMHEWTD.cjs');
4
- var chunk4BWZ437E_cjs = require('../../chunk-4BWZ437E.cjs');
5
- var chunkU5I3ITV7_cjs = require('../../chunk-U5I3ITV7.cjs');
6
- require('../../chunk-4C5PMGBB.cjs');
7
- require('../../chunk-NPM5YZBC.cjs');
8
- require('../../chunk-6FTHFJAN.cjs');
3
+ var chunkQS6AZE4F_cjs = require('../../chunk-QS6AZE4F.cjs');
4
+ var chunkJ4ZR4VEM_cjs = require('../../chunk-J4ZR4VEM.cjs');
5
+ var chunkWIHSU3YS_cjs = require('../../chunk-WIHSU3YS.cjs');
6
+ require('../../chunk-AS3W34MG.cjs');
7
+ require('../../chunk-DXLVCFVK.cjs');
8
+ require('../../chunk-KMPNH7NS.cjs');
9
9
  require('../../chunk-5BLDMQED.cjs');
10
10
  var TaskManager = require('expo-task-manager');
11
11
  var BackgroundTask = require('expo-background-task');
@@ -36,7 +36,7 @@ function defineExpoBackgroundTask(taskName, options) {
36
36
  taskQueue,
37
37
  walletRepository,
38
38
  contractRepository,
39
- processors = [chunkKDMHEWTD_cjs.contractPollProcessor]
39
+ processors = [chunkQS6AZE4F_cjs.contractPollProcessor]
40
40
  } = options;
41
41
  TaskManager__namespace.defineTask(taskName, async () => {
42
42
  try {
@@ -44,24 +44,24 @@ function defineExpoBackgroundTask(taskName, options) {
44
44
  if (!config) {
45
45
  return BackgroundTask__namespace.BackgroundTaskResult.Success;
46
46
  }
47
- const indexerProvider = new chunk4BWZ437E_cjs.ExpoIndexerProvider(config.arkServerUrl);
48
- const arkProvider = new chunk4BWZ437E_cjs.ExpoArkProvider(config.arkServerUrl);
49
- const deps = chunkKDMHEWTD_cjs.createTaskDependencies({
47
+ const indexerProvider = new chunkJ4ZR4VEM_cjs.ExpoIndexerProvider(config.arkServerUrl);
48
+ const arkProvider = new chunkJ4ZR4VEM_cjs.ExpoArkProvider(config.arkServerUrl);
49
+ const deps = chunkQS6AZE4F_cjs.createTaskDependencies({
50
50
  walletRepository,
51
51
  contractRepository,
52
52
  indexerProvider,
53
53
  arkProvider
54
54
  });
55
- await chunkKDMHEWTD_cjs.runTasks(taskQueue, processors, deps);
55
+ await chunkQS6AZE4F_cjs.runTasks(taskQueue, processors, deps);
56
56
  const results = await taskQueue.getResults();
57
57
  if (results.length > 0) {
58
58
  await taskQueue.acknowledgeResults(results.map((r) => r.id));
59
59
  }
60
- const existing = await taskQueue.getTasks(chunkKDMHEWTD_cjs.CONTRACT_POLL_TASK_TYPE);
60
+ const existing = await taskQueue.getTasks(chunkQS6AZE4F_cjs.CONTRACT_POLL_TASK_TYPE);
61
61
  if (existing.length === 0) {
62
62
  const task = {
63
- id: chunkU5I3ITV7_cjs.getRandomId(),
64
- type: chunkKDMHEWTD_cjs.CONTRACT_POLL_TASK_TYPE,
63
+ id: chunkWIHSU3YS_cjs.getRandomId(),
64
+ type: chunkQS6AZE4F_cjs.CONTRACT_POLL_TASK_TYPE,
65
65
  data: {},
66
66
  createdAt: Date.now()
67
67
  };
@@ -1,6 +1,6 @@
1
- import { W as WalletRepository, C as ContractRepository } from '../../index-Dg0-TvBQ.cjs';
2
- import { A as AsyncStorageTaskQueue } from '../../asyncStorageTaskQueue-s5lUGWxu.cjs';
3
- import { T as TaskProcessor } from '../../taskRunner-BH_FxaNI.cjs';
1
+ import { W as WalletRepository, C as ContractRepository } from '../../index-Bxz3cKPA.cjs';
2
+ import { a as AsyncStorageTaskQueue } from '../../asyncStorageTaskQueue-D1AwLuqn.cjs';
3
+ import { T as TaskProcessor } from '../../taskRunner-C26IIg1F.cjs';
4
4
  import '@scure/btc-signer/utils.js';
5
5
  import '@scure/btc-signer/transaction.js';
6
6
  import '@scure/btc-signer';
@@ -1,6 +1,6 @@
1
- import { W as WalletRepository, C as ContractRepository } from '../../index-Dg0-TvBQ.js';
2
- import { A as AsyncStorageTaskQueue } from '../../asyncStorageTaskQueue-DhhNZc4v.js';
3
- import { T as TaskProcessor } from '../../taskRunner-DrVz2QZs.js';
1
+ import { W as WalletRepository, C as ContractRepository } from '../../index-Bxz3cKPA.js';
2
+ import { a as AsyncStorageTaskQueue } from '../../asyncStorageTaskQueue-aCaOBGTS.js';
3
+ import { T as TaskProcessor } from '../../taskRunner-KxtIKYLv.js';
4
4
  import '@scure/btc-signer/utils.js';
5
5
  import '@scure/btc-signer/transaction.js';
6
6
  import '@scure/btc-signer';
@@ -1,9 +1,9 @@
1
- import { contractPollProcessor, createTaskDependencies, runTasks, CONTRACT_POLL_TASK_TYPE } from '../../chunk-CZPBPMO2.js';
2
- import { ExpoIndexerProvider, ExpoArkProvider } from '../../chunk-S5PUFSXC.js';
3
- import { getRandomId } from '../../chunk-BHLYB44A.js';
4
- import '../../chunk-IGER5FPC.js';
5
- import '../../chunk-CB6QPAO5.js';
6
- import '../../chunk-5GQFYVWP.js';
1
+ import { contractPollProcessor, createTaskDependencies, runTasks, CONTRACT_POLL_TASK_TYPE } from '../../chunk-KPLQN4M4.js';
2
+ import { ExpoIndexerProvider, ExpoArkProvider } from '../../chunk-J3XVGWMP.js';
3
+ import { getRandomId } from '../../chunk-ZTGTQP2W.js';
4
+ import '../../chunk-X5BPARRD.js';
5
+ import '../../chunk-LGB65ZCO.js';
6
+ import '../../chunk-WJVOFYTQ.js';
7
7
  import '../../chunk-NSBPE2FW.js';
8
8
  import * as TaskManager from 'expo-task-manager';
9
9
  import * as BackgroundTask from 'expo-background-task';
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var chunkKDMHEWTD_cjs = require('../../chunk-KDMHEWTD.cjs');
4
- var chunkU5I3ITV7_cjs = require('../../chunk-U5I3ITV7.cjs');
5
- require('../../chunk-4C5PMGBB.cjs');
6
- require('../../chunk-NPM5YZBC.cjs');
7
- require('../../chunk-6FTHFJAN.cjs');
3
+ var chunkQS6AZE4F_cjs = require('../../chunk-QS6AZE4F.cjs');
4
+ var chunkWIHSU3YS_cjs = require('../../chunk-WIHSU3YS.cjs');
5
+ require('../../chunk-AS3W34MG.cjs');
6
+ require('../../chunk-DXLVCFVK.cjs');
7
+ require('../../chunk-KMPNH7NS.cjs');
8
8
  require('../../chunk-5BLDMQED.cjs');
9
9
  var base = require('@scure/base');
10
10
 
@@ -58,18 +58,18 @@ var ExpoWallet = class _ExpoWallet {
58
58
  */
59
59
  static async setup(config) {
60
60
  warnOnRemovedBackgroundFields(config.background);
61
- const wallet = await chunkU5I3ITV7_cjs.Wallet.create(config);
62
- const processors = config.background.processors ?? [chunkKDMHEWTD_cjs.contractPollProcessor];
61
+ const wallet = await chunkWIHSU3YS_cjs.Wallet.create(config);
62
+ const processors = config.background.processors ?? [chunkQS6AZE4F_cjs.contractPollProcessor];
63
63
  const deps = {
64
64
  walletRepository: wallet.walletRepository,
65
65
  contractRepository: wallet.contractRepository,
66
66
  indexerProvider: wallet.indexerProvider,
67
67
  arkProvider: wallet.arkProvider,
68
- extendVtxo: (vtxo, contract) => chunkU5I3ITV7_cjs.extendVirtualCoinForContract(vtxo, contract)
68
+ extendVtxo: (vtxo, contract) => chunkWIHSU3YS_cjs.extendVirtualCoinForContract(vtxo, contract)
69
69
  };
70
70
  const { taskQueue } = config.background;
71
71
  if ("persistConfig" in taskQueue) {
72
- const arkServerUrl = config.arkServerUrl || chunkU5I3ITV7_cjs.extractArkProviderUrl(wallet.arkProvider);
72
+ const arkServerUrl = config.arkServerUrl || chunkWIHSU3YS_cjs.extractArkProviderUrl(wallet.arkProvider);
73
73
  if (arkServerUrl) {
74
74
  const timelock = wallet.offchainTapscript.options.csvTimelock;
75
75
  const bgConfig = {
@@ -100,7 +100,7 @@ var ExpoWallet = class _ExpoWallet {
100
100
  }
101
101
  async runForegroundPoll() {
102
102
  if (this.cleared) return;
103
- await chunkKDMHEWTD_cjs.runTasks(this.taskQueue, this.processors, this.deps);
103
+ await chunkQS6AZE4F_cjs.runTasks(this.taskQueue, this.processors, this.deps);
104
104
  const results = await this.taskQueue.getResults();
105
105
  if (results.length > 0) {
106
106
  await this.taskQueue.acknowledgeResults(results.map((r) => r.id));
@@ -109,18 +109,18 @@ var ExpoWallet = class _ExpoWallet {
109
109
  await this.seedContractPollTask();
110
110
  }
111
111
  async seedContractPollTask() {
112
- const existing = await this.taskQueue.getTasks(chunkKDMHEWTD_cjs.CONTRACT_POLL_TASK_TYPE);
112
+ const existing = await this.taskQueue.getTasks(chunkQS6AZE4F_cjs.CONTRACT_POLL_TASK_TYPE);
113
113
  if (existing.length > 0) return;
114
114
  const task = {
115
- id: chunkU5I3ITV7_cjs.getRandomId(),
116
- type: chunkKDMHEWTD_cjs.CONTRACT_POLL_TASK_TYPE,
115
+ id: chunkWIHSU3YS_cjs.getRandomId(),
116
+ type: chunkQS6AZE4F_cjs.CONTRACT_POLL_TASK_TYPE,
117
117
  data: {},
118
118
  createdAt: Date.now()
119
119
  };
120
120
  await this.taskQueue.addTask(task);
121
121
  }
122
122
  async removeContractPollTasks() {
123
- const tasks = await this.taskQueue.getTasks(chunkKDMHEWTD_cjs.CONTRACT_POLL_TASK_TYPE);
123
+ const tasks = await this.taskQueue.getTasks(chunkQS6AZE4F_cjs.CONTRACT_POLL_TASK_TYPE);
124
124
  for (const task of tasks) {
125
125
  await this.taskQueue.removeTask(task.id);
126
126
  }
@@ -1,10 +1,10 @@
1
- import { H as HDWalletCapable, a as HDAllocationCapable, A as AddressAllocationCapable, W as Wallet, P as ProviderConnectionState } from '../../hdWalletCapable-DA9bJ5eB.cjs';
2
- import { I as IWallet, a as Identity, b as WalletConfig, c as WalletBalance, G as GetVtxosFilter, N as NormalizedExtendedVirtualCoin, E as ExtendedCoin, A as ArkTransaction, d as ActivityRegistry, e as Activity, f as IContractManager, g as GetNewAddressesOptions, h as NewAddress, i as IDelegateManager, S as SendBitcoinParams, j as SettleParams, k as SettlementEvent, l as SendParams, R as Recipient, m as IAssetManager } from '../../index-Dg0-TvBQ.cjs';
3
- import { a as TaskQueue, T as TaskProcessor } from '../../taskRunner-BH_FxaNI.cjs';
1
+ import { H as HDWalletCapable, a as HDAllocationCapable, A as AddressAllocationCapable, W as Wallet, P as ProviderConnectionState } from '../../hdWalletCapable-DJT8E8sN.cjs';
2
+ import { I as IWallet, a as Identity, b as WalletConfig, c as WalletBalance, G as GetVtxosFilter, N as NormalizedExtendedVirtualCoin, E as ExtendedCoin, A as ArkTransaction, d as ActivityRegistry, e as Activity, f as IContractManager, g as GetNewAddressesOptions, h as NewAddress, i as IDelegateManager, S as SendBitcoinParams, j as SettleParams, k as SettlementEvent, l as SendParams, R as Recipient, m as IAssetManager } from '../../index-Bxz3cKPA.cjs';
3
+ import { c as TaskQueue, T as TaskProcessor } from '../../taskRunner-C26IIg1F.cjs';
4
4
  import '@scure/btc-signer';
5
5
  import '@scure/btc-signer/psbt.js';
6
6
  import '@scure/btc-signer/utils.js';
7
- import '../../delegate-BJp8f6LT.cjs';
7
+ import '../../delegate-6N0DKdnG.cjs';
8
8
  import '@scure/btc-signer/transaction.js';
9
9
 
10
10
  /**
@@ -1,10 +1,10 @@
1
- import { H as HDWalletCapable, a as HDAllocationCapable, A as AddressAllocationCapable, W as Wallet, P as ProviderConnectionState } from '../../hdWalletCapable-DABgAD-T.js';
2
- import { I as IWallet, a as Identity, b as WalletConfig, c as WalletBalance, G as GetVtxosFilter, N as NormalizedExtendedVirtualCoin, E as ExtendedCoin, A as ArkTransaction, d as ActivityRegistry, e as Activity, f as IContractManager, g as GetNewAddressesOptions, h as NewAddress, i as IDelegateManager, S as SendBitcoinParams, j as SettleParams, k as SettlementEvent, l as SendParams, R as Recipient, m as IAssetManager } from '../../index-Dg0-TvBQ.js';
3
- import { a as TaskQueue, T as TaskProcessor } from '../../taskRunner-DrVz2QZs.js';
1
+ import { H as HDWalletCapable, a as HDAllocationCapable, A as AddressAllocationCapable, W as Wallet, P as ProviderConnectionState } from '../../hdWalletCapable-Bncp-eF0.js';
2
+ import { I as IWallet, a as Identity, b as WalletConfig, c as WalletBalance, G as GetVtxosFilter, N as NormalizedExtendedVirtualCoin, E as ExtendedCoin, A as ArkTransaction, d as ActivityRegistry, e as Activity, f as IContractManager, g as GetNewAddressesOptions, h as NewAddress, i as IDelegateManager, S as SendBitcoinParams, j as SettleParams, k as SettlementEvent, l as SendParams, R as Recipient, m as IAssetManager } from '../../index-Bxz3cKPA.js';
3
+ import { c as TaskQueue, T as TaskProcessor } from '../../taskRunner-KxtIKYLv.js';
4
4
  import '@scure/btc-signer';
5
5
  import '@scure/btc-signer/psbt.js';
6
6
  import '@scure/btc-signer/utils.js';
7
- import '../../delegate-Ckz_TWzM.js';
7
+ import '../../delegate-z6veQfLI.js';
8
8
  import '@scure/btc-signer/transaction.js';
9
9
 
10
10
  /**
@@ -1,8 +1,8 @@
1
- import { contractPollProcessor, runTasks, CONTRACT_POLL_TASK_TYPE } from '../../chunk-CZPBPMO2.js';
2
- import { Wallet, extractArkProviderUrl, getRandomId, extendVirtualCoinForContract } from '../../chunk-BHLYB44A.js';
3
- import '../../chunk-IGER5FPC.js';
4
- import '../../chunk-CB6QPAO5.js';
5
- import '../../chunk-5GQFYVWP.js';
1
+ import { contractPollProcessor, runTasks, CONTRACT_POLL_TASK_TYPE } from '../../chunk-KPLQN4M4.js';
2
+ import { Wallet, extractArkProviderUrl, getRandomId, extendVirtualCoinForContract } from '../../chunk-ZTGTQP2W.js';
3
+ import '../../chunk-X5BPARRD.js';
4
+ import '../../chunk-LGB65ZCO.js';
5
+ import '../../chunk-WJVOFYTQ.js';
6
6
  import '../../chunk-NSBPE2FW.js';
7
7
  import { hex } from '@scure/base';
8
8
 
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var chunkKDMHEWTD_cjs = require('../../chunk-KDMHEWTD.cjs');
4
- require('../../chunk-U5I3ITV7.cjs');
5
- require('../../chunk-4C5PMGBB.cjs');
6
- require('../../chunk-NPM5YZBC.cjs');
7
- require('../../chunk-6FTHFJAN.cjs');
3
+ var chunkQS6AZE4F_cjs = require('../../chunk-QS6AZE4F.cjs');
4
+ require('../../chunk-WIHSU3YS.cjs');
5
+ require('../../chunk-AS3W34MG.cjs');
6
+ require('../../chunk-DXLVCFVK.cjs');
7
+ require('../../chunk-KMPNH7NS.cjs');
8
8
  require('../../chunk-5BLDMQED.cjs');
9
9
 
10
10
  // src/worker/expo/taskQueue.ts
@@ -121,19 +121,19 @@ var AsyncStorageTaskQueue = class {
121
121
 
122
122
  Object.defineProperty(exports, "CONTRACT_POLL_TASK_TYPE", {
123
123
  enumerable: true,
124
- get: function () { return chunkKDMHEWTD_cjs.CONTRACT_POLL_TASK_TYPE; }
124
+ get: function () { return chunkQS6AZE4F_cjs.CONTRACT_POLL_TASK_TYPE; }
125
125
  });
126
126
  Object.defineProperty(exports, "contractPollProcessor", {
127
127
  enumerable: true,
128
- get: function () { return chunkKDMHEWTD_cjs.contractPollProcessor; }
128
+ get: function () { return chunkQS6AZE4F_cjs.contractPollProcessor; }
129
129
  });
130
130
  Object.defineProperty(exports, "createTaskDependencies", {
131
131
  enumerable: true,
132
- get: function () { return chunkKDMHEWTD_cjs.createTaskDependencies; }
132
+ get: function () { return chunkQS6AZE4F_cjs.createTaskDependencies; }
133
133
  });
134
134
  Object.defineProperty(exports, "runTasks", {
135
135
  enumerable: true,
136
- get: function () { return chunkKDMHEWTD_cjs.runTasks; }
136
+ get: function () { return chunkQS6AZE4F_cjs.runTasks; }
137
137
  });
138
138
  exports.AsyncStorageTaskQueue = AsyncStorageTaskQueue;
139
139
  exports.InMemoryTaskQueue = InMemoryTaskQueue;
@@ -1,7 +1,7 @@
1
- import { T as TaskProcessor } from '../../taskRunner-BH_FxaNI.cjs';
2
- export { C as CreateTaskDependenciesOptions, I as InMemoryTaskQueue, b as TaskDependencies, c as TaskItem, a as TaskQueue, d as TaskResult, e as createTaskDependencies, r as runTasks } from '../../taskRunner-BH_FxaNI.cjs';
3
- export { a as AsyncStorageLike, A as AsyncStorageTaskQueue } from '../../asyncStorageTaskQueue-s5lUGWxu.cjs';
4
- import '../../index-Dg0-TvBQ.cjs';
1
+ import { T as TaskProcessor } from '../../taskRunner-C26IIg1F.cjs';
2
+ export { C as CreateTaskDependenciesOptions, I as InMemoryTaskQueue, a as TaskDependencies, b as TaskItem, c as TaskQueue, d as TaskResult, e as createTaskDependencies, r as runTasks } from '../../taskRunner-C26IIg1F.cjs';
3
+ export { A as AsyncStorageLike, a as AsyncStorageTaskQueue } from '../../asyncStorageTaskQueue-D1AwLuqn.cjs';
4
+ import '../../index-Bxz3cKPA.cjs';
5
5
  import '@scure/btc-signer/utils.js';
6
6
  import '@scure/btc-signer/transaction.js';
7
7
  import '@scure/btc-signer';
@@ -1,7 +1,7 @@
1
- import { T as TaskProcessor } from '../../taskRunner-DrVz2QZs.js';
2
- export { C as CreateTaskDependenciesOptions, I as InMemoryTaskQueue, b as TaskDependencies, c as TaskItem, a as TaskQueue, d as TaskResult, e as createTaskDependencies, r as runTasks } from '../../taskRunner-DrVz2QZs.js';
3
- export { a as AsyncStorageLike, A as AsyncStorageTaskQueue } from '../../asyncStorageTaskQueue-DhhNZc4v.js';
4
- import '../../index-Dg0-TvBQ.js';
1
+ import { T as TaskProcessor } from '../../taskRunner-KxtIKYLv.js';
2
+ export { C as CreateTaskDependenciesOptions, I as InMemoryTaskQueue, a as TaskDependencies, b as TaskItem, c as TaskQueue, d as TaskResult, e as createTaskDependencies, r as runTasks } from '../../taskRunner-KxtIKYLv.js';
3
+ export { A as AsyncStorageLike, a as AsyncStorageTaskQueue } from '../../asyncStorageTaskQueue-aCaOBGTS.js';
4
+ import '../../index-Bxz3cKPA.js';
5
5
  import '@scure/btc-signer/utils.js';
6
6
  import '@scure/btc-signer/transaction.js';
7
7
  import '@scure/btc-signer';
@@ -1,8 +1,8 @@
1
- export { CONTRACT_POLL_TASK_TYPE, contractPollProcessor, createTaskDependencies, runTasks } from '../../chunk-CZPBPMO2.js';
2
- import '../../chunk-BHLYB44A.js';
3
- import '../../chunk-IGER5FPC.js';
4
- import '../../chunk-CB6QPAO5.js';
5
- import '../../chunk-5GQFYVWP.js';
1
+ export { CONTRACT_POLL_TASK_TYPE, contractPollProcessor, createTaskDependencies, runTasks } from '../../chunk-KPLQN4M4.js';
2
+ import '../../chunk-ZTGTQP2W.js';
3
+ import '../../chunk-X5BPARRD.js';
4
+ import '../../chunk-LGB65ZCO.js';
5
+ import '../../chunk-WJVOFYTQ.js';
6
6
  import '../../chunk-NSBPE2FW.js';
7
7
 
8
8
  // src/worker/expo/taskQueue.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arkade-os/sdk",
3
- "version": "0.4.72",
3
+ "version": "0.4.74",
4
4
  "description": "TypeScript SDK for building Bitcoin wallets using the Arkade protocol",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/providers/expoUtils.ts","../src/providers/expoArk.ts","../src/providers/expoIndexer.ts"],"names":["buildVersion","sdkVersion","fetch","RestArkProvider","DEFAULT_ARKADE_SERVER_URL","isFetchTimeoutError","RestIndexerProvider","convertVtxo"],"mappings":"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","file":"chunk-4BWZ437E.cjs","sourcesContent":["import { fetch, buildVersion, sdkVersion } from \"../utils/fetch\";\n\n/**\n * Dynamically imports expo/fetch with fallback to standard fetch.\n * @returns A fetch function suitable for SSE streaming\n */\nexport async function getExpoFetch(options?: { requireExpo?: boolean }): Promise<typeof fetch> {\n const requireExpo = options?.requireExpo ?? false;\n\n try {\n const expoFetchModule = await import(\"expo/fetch\");\n console.debug(\"Using expo/fetch for streaming\");\n const expoFetchWithHeader = (input: RequestInfo, init?: RequestInit) => {\n const headers = new Headers(init?.headers);\n headers.set(\"X-Build-Version\", buildVersion);\n headers.set(\"X-SDK-VERSION\", sdkVersion);\n return expoFetchModule.fetch(input, { ...init, headers });\n };\n return expoFetchWithHeader as unknown as typeof fetch;\n } catch (error) {\n if (requireExpo) {\n throw new Error(\n \"expo/fetch is unavailable in this environment. \" +\n \"Please ensure expo/fetch is installed and properly configured.\",\n );\n }\n\n console.warn(\n \"Using standard fetch instead of expo/fetch. \" +\n \"Streaming may not be fully supported in some environments.\",\n error,\n );\n return fetch;\n }\n}\n\n/**\n * Generic SSE stream processor using fetch API with ReadableStream.\n * Handles SSE format parsing, buffer management, and abort signals.\n *\n * @param url - The SSE endpoint URL\n * @param abortSignal - Signal to abort the stream\n * @param fetchFn - Fetch function to use (defaults to standard fetch)\n * @param headers - Additional headers to send\n * @param parseData - Function to parse and yield data from SSE events\n */\nexport async function* sseStreamIterator<T>(\n url: string,\n abortSignal: AbortSignal,\n fetchFn: typeof fetch,\n headers: Record<string, string>,\n parseData: (data: any) => T | null,\n): AsyncGenerator<T, void, unknown> {\n const fetchController = new AbortController();\n const cleanup = () => fetchController.abort();\n abortSignal?.addEventListener(\"abort\", cleanup, { once: true });\n\n try {\n const response = await fetchFn(url, {\n headers: {\n Accept: \"text/event-stream\",\n ...headers,\n },\n // Required, not just for cancellation: `getExpoFetch` falls back to\n // the Ark `fetch` wrapper, which routes through `baseFetch` and so\n // bounds any read that brings no signal of its own. Drop this and\n // the stream is truncated at READ_TIMEOUT_MS.\n signal: fetchController.signal,\n });\n\n if (!response.ok) {\n throw new Error(`Unexpected status ${response.status} when fetching SSE stream`);\n }\n\n if (!response.body) {\n throw new Error(\"Response body is null\");\n }\n\n const reader = response.body.getReader();\n const decoder = new TextDecoder();\n let buffer = \"\";\n\n while (!abortSignal?.aborted) {\n const { done, value } = await reader.read();\n if (done) {\n break;\n }\n\n buffer += decoder.decode(value, { stream: true });\n const lines = buffer.split(\"\\n\");\n\n for (let i = 0; i < lines.length - 1; i++) {\n const line = lines[i].trim();\n if (!line) continue;\n\n if (line.startsWith(\"data:\")) {\n const jsonStr = line.substring(5).trim();\n if (!jsonStr) continue;\n\n try {\n const data = JSON.parse(jsonStr);\n const parsed = parseData(data);\n if (parsed !== null) {\n yield parsed;\n }\n } catch (parseError) {\n console.error(\"Failed to parse SSE data:\", parseError);\n throw parseError;\n }\n }\n }\n\n buffer = lines[lines.length - 1];\n }\n } finally {\n abortSignal?.removeEventListener(\"abort\", cleanup);\n }\n}\n","import { DEFAULT_ARKADE_SERVER_URL } from \"../networks\";\nimport { RestArkProvider, SettlementEvent, TxNotificationEvent, isFetchTimeoutError } from \"./ark\";\nimport { getExpoFetch, sseStreamIterator } from \"./expoUtils\";\n\n/**\n * Expo-compatible Arkade provider implementation using expo/fetch for SSE support.\n * This provider works specifically in React Native/Expo environments where\n * standard EventSource is not available but expo/fetch provides SSE capabilities.\n *\n * @example\n * ```typescript\n * import { ExpoArkProvider } from '@arkade-os/sdk/providers/expo';\n *\n * const provider = new ExpoArkProvider('https://arkade.computer');\n * const info = await provider.getInfo();\n * ```\n */\nexport class ExpoArkProvider extends RestArkProvider {\n constructor(serverUrl: string = DEFAULT_ARKADE_SERVER_URL) {\n super(serverUrl);\n }\n\n override async *getEventStream(\n signal: AbortSignal,\n topics: string[],\n ): AsyncIterableIterator<SettlementEvent> {\n const expoFetch = await getExpoFetch();\n const url = `${this.serverUrl}/v1/batch/events`;\n const queryParams =\n topics.length > 0\n ? `?${topics.map((topic) => `topics=${encodeURIComponent(topic)}`).join(\"&\")}`\n : \"\";\n\n while (!signal?.aborted) {\n try {\n yield* sseStreamIterator(url + queryParams, signal, expoFetch, {}, (data) => {\n // Handle different response structures\n // v8 mesh API might wrap in {result: ...} or send directly\n const eventData = data.result || data;\n\n // Skip heartbeat messages\n if (eventData.heartbeat !== undefined) {\n return null;\n }\n\n return this.parseSettlementEvent(eventData);\n });\n } catch (error) {\n if (error instanceof Error && error.name === \"AbortError\") {\n break;\n }\n\n // ignore timeout errors, they're expected when the server is not sending anything for 5 min\n // these timeouts are set by expo/fetch function\n if (isFetchTimeoutError(error)) {\n console.debug(\"Timeout error ignored\");\n continue;\n }\n\n console.error(\"Event stream error:\", error);\n throw error;\n }\n }\n }\n\n override async *getTransactionsStream(\n signal: AbortSignal,\n ): AsyncIterableIterator<TxNotificationEvent> {\n const expoFetch = await getExpoFetch();\n const url = `${this.serverUrl}/v1/txs`;\n\n while (!signal?.aborted) {\n try {\n yield* sseStreamIterator(url, signal, expoFetch, {}, (data) => {\n return this.parseTransactionNotification(data.result);\n });\n } catch (error) {\n if (error instanceof Error && error.name === \"AbortError\") {\n break;\n }\n\n // ignore timeout errors, they're expected when the server is not sending anything for 5 min\n // these timeouts are set by expo/fetch function\n if (isFetchTimeoutError(error)) {\n console.debug(\"Timeout error ignored\");\n continue;\n }\n\n console.error(\"Transaction stream error:\", error);\n throw error;\n }\n }\n }\n}\n","import { RestIndexerProvider, SubscriptionResponse } from \"./indexer\";\nimport { isFetchTimeoutError } from \"./ark\";\nimport { convertVtxo } from \"../wallet/vtxo\";\nimport { getExpoFetch, sseStreamIterator } from \"./expoUtils\";\nimport { DEFAULT_ARKADE_SERVER_URL } from \"../networks\";\n\n/**\n * Expo-compatible Indexer provider implementation using expo/fetch for streaming support.\n * This provider works specifically in React Native/Expo environments where\n * standard fetch streaming may not work properly but expo/fetch provides streaming capabilities.\n *\n * @example\n * ```typescript\n * import { ExpoIndexerProvider } from '@arkade-os/sdk/adapters/expo';\n *\n * const provider = new ExpoIndexerProvider('https://indexer.example.com');\n * const vtxos = await provider.getVtxos({ scripts: ['script1'] });\n * ```\n */\nexport class ExpoIndexerProvider extends RestIndexerProvider {\n constructor(serverUrl: string = DEFAULT_ARKADE_SERVER_URL) {\n super(serverUrl);\n }\n\n override async *getSubscription(\n subscriptionId: string,\n abortSignal: AbortSignal,\n ): AsyncIterableIterator<SubscriptionResponse> {\n // Detect if we're running in React Native/Expo environment\n const isReactNative =\n typeof navigator !== \"undefined\" && navigator.product === \"ReactNative\";\n\n const expoFetch = await getExpoFetch().catch((error) => {\n // In React Native/Expo, expo/fetch is required for proper streaming support\n if (isReactNative) {\n throw new Error(\n \"expo/fetch is unavailable in React Native environment. \" +\n \"Please ensure expo/fetch is installed and properly configured. \" +\n \"Streaming support may not work with standard fetch in React Native.\",\n );\n }\n throw error;\n });\n\n const url = `${this.serverUrl}/v1/indexer/script/subscription/${subscriptionId}`;\n\n while (!abortSignal.aborted) {\n try {\n yield* sseStreamIterator(\n url,\n abortSignal,\n expoFetch,\n { \"Content-Type\": \"application/json\" },\n (data): SubscriptionResponse | null => {\n // Handle new v8 proto format with heartbeat or event\n if (data.heartbeat !== undefined) {\n // Skip heartbeat messages\n return null;\n }\n // Process event messages\n if (data.event) {\n return {\n txid: data.event.txid,\n scripts: data.event.scripts || [],\n newVtxos: (data.event.newVtxos || []).map(convertVtxo),\n spentVtxos: (data.event.spentVtxos || []).map(convertVtxo),\n sweptVtxos: (data.event.sweptVtxos || []).map(convertVtxo),\n tx: data.event.tx,\n checkpointTxs: data.event.checkpointTxs,\n };\n }\n return null;\n },\n );\n } catch (error) {\n if (error instanceof Error && error.name === \"AbortError\") {\n break;\n }\n\n // ignore timeout errors, they're expected when the server is not sending anything for 5 min\n // these timeouts are set by expo/fetch function\n if (isFetchTimeoutError(error)) {\n console.debug(\"Timeout error ignored\");\n continue;\n }\n\n console.error(\"Subscription error:\", error);\n throw error;\n }\n }\n }\n}\n"]}