@bsv/wallet-toolbox-client 2.1.24 → 3.0.0-alpha.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 (588) hide show
  1. package/out/src/CWIStyleWalletManager.d.ts +33 -7
  2. package/out/src/CWIStyleWalletManager.d.ts.map +1 -1
  3. package/out/src/CWIStyleWalletManager.js +281 -313
  4. package/out/src/CWIStyleWalletManager.js.map +1 -1
  5. package/out/src/SetupClient.d.ts +6 -6
  6. package/out/src/SetupClient.d.ts.map +1 -1
  7. package/out/src/SetupClient.js +5 -5
  8. package/out/src/SetupClient.js.map +1 -1
  9. package/out/src/SetupWallet.d.ts.map +1 -1
  10. package/out/src/SimpleWalletManager.d.ts +12 -2
  11. package/out/src/SimpleWalletManager.d.ts.map +1 -1
  12. package/out/src/SimpleWalletManager.js +46 -30
  13. package/out/src/SimpleWalletManager.js.map +1 -1
  14. package/out/src/Wallet.d.ts +1 -1
  15. package/out/src/Wallet.d.ts.map +1 -1
  16. package/out/src/Wallet.js +102 -100
  17. package/out/src/Wallet.js.map +1 -1
  18. package/out/src/WalletAuthenticationManager.d.ts +1 -1
  19. package/out/src/WalletAuthenticationManager.d.ts.map +1 -1
  20. package/out/src/WalletAuthenticationManager.js +3 -3
  21. package/out/src/WalletAuthenticationManager.js.map +1 -1
  22. package/out/src/WalletLogger.d.ts.map +1 -1
  23. package/out/src/WalletLogger.js +16 -8
  24. package/out/src/WalletLogger.js.map +1 -1
  25. package/out/src/WalletPermissionsManager.d.ts +89 -18
  26. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  27. package/out/src/WalletPermissionsManager.js +656 -870
  28. package/out/src/WalletPermissionsManager.js.map +1 -1
  29. package/out/src/WalletSettingsManager.d.ts +2 -2
  30. package/out/src/WalletSettingsManager.d.ts.map +1 -1
  31. package/out/src/WalletSettingsManager.js.map +1 -1
  32. package/out/src/fundWalletP2PKH.d.ts +2 -2
  33. package/out/src/fundWalletP2PKH.d.ts.map +1 -1
  34. package/out/src/fundWalletP2PKH.js +11 -10
  35. package/out/src/fundWalletP2PKH.js.map +1 -1
  36. package/out/src/mockchain/MockChainMigrations.d.ts +3 -3
  37. package/out/src/mockchain/MockChainMigrations.d.ts.map +1 -1
  38. package/out/src/mockchain/MockChainMigrations.js.map +1 -1
  39. package/out/src/mockchain/MockChainStorage.d.ts.map +1 -1
  40. package/out/src/mockchain/MockChainStorage.js +5 -5
  41. package/out/src/mockchain/MockChainStorage.js.map +1 -1
  42. package/out/src/mockchain/MockChainTracker.d.ts.map +1 -1
  43. package/out/src/mockchain/MockChainTracker.js +10 -10
  44. package/out/src/mockchain/MockChainTracker.js.map +1 -1
  45. package/out/src/mockchain/MockMiner.d.ts.map +1 -1
  46. package/out/src/mockchain/MockMiner.js +3 -3
  47. package/out/src/mockchain/MockMiner.js.map +1 -1
  48. package/out/src/mockchain/MockServices.d.ts +9 -0
  49. package/out/src/mockchain/MockServices.d.ts.map +1 -1
  50. package/out/src/mockchain/MockServices.js +195 -238
  51. package/out/src/mockchain/MockServices.js.map +1 -1
  52. package/out/src/mockchain/merkleTree.d.ts.map +1 -1
  53. package/out/src/mockchain/merkleTree.js +21 -12
  54. package/out/src/mockchain/merkleTree.js.map +1 -1
  55. package/out/src/monitor/LeasedMonitorTask.d.ts +43 -0
  56. package/out/src/monitor/LeasedMonitorTask.d.ts.map +1 -0
  57. package/out/src/monitor/LeasedMonitorTask.js +89 -0
  58. package/out/src/monitor/LeasedMonitorTask.js.map +1 -0
  59. package/out/src/monitor/Monitor.d.ts +24 -0
  60. package/out/src/monitor/Monitor.d.ts.map +1 -1
  61. package/out/src/monitor/Monitor.js +63 -75
  62. package/out/src/monitor/Monitor.js.map +1 -1
  63. package/out/src/monitor/V7LeasedTask.d.ts +43 -0
  64. package/out/src/monitor/V7LeasedTask.d.ts.map +1 -0
  65. package/out/src/monitor/V7LeasedTask.js +89 -0
  66. package/out/src/monitor/V7LeasedTask.js.map +1 -0
  67. package/out/src/monitor/tasks/TaskArcSSE.d.ts +2 -2
  68. package/out/src/monitor/tasks/TaskArcSSE.d.ts.map +1 -1
  69. package/out/src/monitor/tasks/TaskArcSSE.js +10 -23
  70. package/out/src/monitor/tasks/TaskArcSSE.js.map +1 -1
  71. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts +4 -2
  72. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -1
  73. package/out/src/monitor/tasks/TaskCheckForProofs.js +83 -16
  74. package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
  75. package/out/src/monitor/tasks/TaskCheckNoSends.d.ts +1 -1
  76. package/out/src/monitor/tasks/TaskCheckNoSends.d.ts.map +1 -1
  77. package/out/src/monitor/tasks/TaskCheckNoSends.js +1 -2
  78. package/out/src/monitor/tasks/TaskCheckNoSends.js.map +1 -1
  79. package/out/src/monitor/tasks/TaskClock.d.ts +1 -1
  80. package/out/src/monitor/tasks/TaskClock.d.ts.map +1 -1
  81. package/out/src/monitor/tasks/TaskClock.js +0 -1
  82. package/out/src/monitor/tasks/TaskClock.js.map +1 -1
  83. package/out/src/monitor/tasks/TaskFailAbandoned.d.ts +1 -1
  84. package/out/src/monitor/tasks/TaskFailAbandoned.d.ts.map +1 -1
  85. package/out/src/monitor/tasks/TaskFailAbandoned.js.map +1 -1
  86. package/out/src/monitor/tasks/TaskMineBlock.d.ts +1 -1
  87. package/out/src/monitor/tasks/TaskMineBlock.d.ts.map +1 -1
  88. package/out/src/monitor/tasks/TaskMineBlock.js.map +1 -1
  89. package/out/src/monitor/tasks/TaskMonitorCallHistory.d.ts +1 -1
  90. package/out/src/monitor/tasks/TaskMonitorCallHistory.d.ts.map +1 -1
  91. package/out/src/monitor/tasks/TaskMonitorCallHistory.js +1 -1
  92. package/out/src/monitor/tasks/TaskMonitorCallHistory.js.map +1 -1
  93. package/out/src/monitor/tasks/TaskNewHeader.d.ts +2 -2
  94. package/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -1
  95. package/out/src/monitor/tasks/TaskNewHeader.js +7 -5
  96. package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
  97. package/out/src/monitor/tasks/TaskPurge.d.ts +1 -1
  98. package/out/src/monitor/tasks/TaskPurge.d.ts.map +1 -1
  99. package/out/src/monitor/tasks/TaskPurge.js.map +1 -1
  100. package/out/src/monitor/tasks/TaskReorg.d.ts +1 -1
  101. package/out/src/monitor/tasks/TaskReorg.d.ts.map +1 -1
  102. package/out/src/monitor/tasks/TaskReorg.js +2 -2
  103. package/out/src/monitor/tasks/TaskReorg.js.map +1 -1
  104. package/out/src/monitor/tasks/TaskReviewDoubleSpends.d.ts +1 -1
  105. package/out/src/monitor/tasks/TaskReviewDoubleSpends.d.ts.map +1 -1
  106. package/out/src/monitor/tasks/TaskReviewDoubleSpends.js +10 -10
  107. package/out/src/monitor/tasks/TaskReviewDoubleSpends.js.map +1 -1
  108. package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts +1 -1
  109. package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts.map +1 -1
  110. package/out/src/monitor/tasks/TaskReviewProvenTxs.js +2 -2
  111. package/out/src/monitor/tasks/TaskReviewProvenTxs.js.map +1 -1
  112. package/out/src/monitor/tasks/TaskReviewStatus.d.ts +1 -1
  113. package/out/src/monitor/tasks/TaskReviewStatus.d.ts.map +1 -1
  114. package/out/src/monitor/tasks/TaskReviewStatus.js.map +1 -1
  115. package/out/src/monitor/tasks/TaskReviewUtxos.d.ts +1 -1
  116. package/out/src/monitor/tasks/TaskReviewUtxos.d.ts.map +1 -1
  117. package/out/src/monitor/tasks/TaskReviewUtxos.js.map +1 -1
  118. package/out/src/monitor/tasks/TaskSendWaiting.d.ts +1 -1
  119. package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
  120. package/out/src/monitor/tasks/TaskSendWaiting.js +4 -5
  121. package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  122. package/out/src/monitor/tasks/TaskUnFail.d.ts +1 -1
  123. package/out/src/monitor/tasks/TaskUnFail.d.ts.map +1 -1
  124. package/out/src/monitor/tasks/TaskUnFail.js +13 -15
  125. package/out/src/monitor/tasks/TaskUnFail.js.map +1 -1
  126. package/out/src/monitor/tasks/WalletMonitorTask.d.ts.map +1 -1
  127. package/out/src/monitor/tasks/WalletMonitorTask.js +3 -1
  128. package/out/src/monitor/tasks/WalletMonitorTask.js.map +1 -1
  129. package/out/src/sdk/CertOpsWallet.d.ts +3 -3
  130. package/out/src/sdk/CertOpsWallet.d.ts.map +1 -1
  131. package/out/src/sdk/PrivilegedKeyManager.d.ts +3 -3
  132. package/out/src/sdk/PrivilegedKeyManager.d.ts.map +1 -1
  133. package/out/src/sdk/PrivilegedKeyManager.js +26 -21
  134. package/out/src/sdk/PrivilegedKeyManager.js.map +1 -1
  135. package/out/src/sdk/WERR_errors.d.ts.map +1 -1
  136. package/out/src/sdk/WERR_errors.js +5 -5
  137. package/out/src/sdk/WERR_errors.js.map +1 -1
  138. package/out/src/sdk/WalletError.d.ts +1 -1
  139. package/out/src/sdk/WalletError.d.ts.map +1 -1
  140. package/out/src/sdk/WalletError.js +10 -3
  141. package/out/src/sdk/WalletError.js.map +1 -1
  142. package/out/src/sdk/WalletErrorFromJson.d.ts.map +1 -1
  143. package/out/src/sdk/WalletErrorFromJson.js +1 -3
  144. package/out/src/sdk/WalletErrorFromJson.js.map +1 -1
  145. package/out/src/sdk/WalletServices.interfaces.d.ts +19 -19
  146. package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  147. package/out/src/sdk/WalletStorage.interfaces.d.ts +59 -59
  148. package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
  149. package/out/src/sdk/types.d.ts +36 -4
  150. package/out/src/sdk/types.d.ts.map +1 -1
  151. package/out/src/sdk/types.js +53 -4
  152. package/out/src/sdk/types.js.map +1 -1
  153. package/out/src/services/ServiceCollection.d.ts +6 -6
  154. package/out/src/services/ServiceCollection.d.ts.map +1 -1
  155. package/out/src/services/ServiceCollection.js +3 -4
  156. package/out/src/services/ServiceCollection.js.map +1 -1
  157. package/out/src/services/Services.d.ts +5 -0
  158. package/out/src/services/Services.d.ts.map +1 -1
  159. package/out/src/services/Services.js +174 -182
  160. package/out/src/services/Services.js.map +1 -1
  161. package/out/src/services/chaintracker/BHServiceClient.d.ts.map +1 -1
  162. package/out/src/services/chaintracker/BHServiceClient.js +7 -7
  163. package/out/src/services/chaintracker/BHServiceClient.js.map +1 -1
  164. package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
  165. package/out/src/services/chaintracker/ChaintracksChainTracker.js +5 -5
  166. package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
  167. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts +5 -3
  168. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts.map +1 -1
  169. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js.map +1 -1
  170. package/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts.map +1 -1
  171. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +20 -10
  172. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
  173. package/out/src/services/chaintracker/chaintracks/Chaintracks.js +228 -221
  174. package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
  175. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -1
  176. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +9 -10
  177. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -1
  178. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -1
  179. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +1 -1
  180. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
  181. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts +1 -2
  182. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts.map +1 -1
  183. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +3 -3
  184. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
  185. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts.map +1 -1
  186. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js.map +1 -1
  187. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -1
  188. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +3 -3
  189. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -1
  190. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -1
  191. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +1 -1
  192. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
  193. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts.map +1 -1
  194. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +2 -2
  195. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
  196. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +2 -2
  197. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
  198. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +6 -39
  199. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
  200. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts +3 -3
  201. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts.map +1 -1
  202. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js +8 -6
  203. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js.map +1 -1
  204. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -1
  205. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +9 -16
  206. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
  207. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
  208. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +34 -22
  209. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
  210. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +1 -1
  211. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +31 -30
  212. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -1
  213. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +2 -2
  214. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
  215. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +11 -10
  216. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
  217. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts.map +1 -1
  218. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js.map +1 -1
  219. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts.map +1 -1
  220. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +1 -1
  221. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -1
  222. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -1
  223. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts.map +1 -1
  224. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js.map +1 -1
  225. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +6 -1
  226. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
  227. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +247 -227
  228. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
  229. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.d.ts.map +1 -1
  230. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js +8 -7
  231. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js.map +1 -1
  232. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
  233. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js +35 -25
  234. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
  235. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +5 -5
  236. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -1
  237. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +13 -11
  238. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -1
  239. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts +0 -1
  240. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts.map +1 -1
  241. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js.map +1 -1
  242. package/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -1
  243. package/out/src/services/chaintracker/chaintracks/util/HeightRange.js +21 -13
  244. package/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -1
  245. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts +2 -2
  246. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts.map +1 -1
  247. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js.map +1 -1
  248. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts +1 -1
  249. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
  250. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +28 -24
  251. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
  252. package/out/src/services/chaintracker/chaintracks/util/dirtyHashes.d.ts.map +1 -1
  253. package/out/src/services/chaintracker/chaintracks/util/dirtyHashes.js.map +1 -1
  254. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
  255. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +9 -10
  256. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
  257. package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
  258. package/out/src/services/createDefaultWalletServicesOptions.js +3 -3
  259. package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
  260. package/out/src/services/providers/ARC.d.ts.map +1 -1
  261. package/out/src/services/providers/ARC.js +7 -14
  262. package/out/src/services/providers/ARC.js.map +1 -1
  263. package/out/src/services/providers/ArcSSEClient.d.ts.map +1 -1
  264. package/out/src/services/providers/ArcSSEClient.js +1 -1
  265. package/out/src/services/providers/ArcSSEClient.js.map +1 -1
  266. package/out/src/services/providers/Bitails.d.ts.map +1 -1
  267. package/out/src/services/providers/Bitails.js +17 -17
  268. package/out/src/services/providers/Bitails.js.map +1 -1
  269. package/out/src/services/providers/SdkWhatsOnChain.d.ts.map +1 -1
  270. package/out/src/services/providers/SdkWhatsOnChain.js.map +1 -1
  271. package/out/src/services/providers/WhatsOnChain.d.ts +2 -0
  272. package/out/src/services/providers/WhatsOnChain.d.ts.map +1 -1
  273. package/out/src/services/providers/WhatsOnChain.js +109 -233
  274. package/out/src/services/providers/WhatsOnChain.js.map +1 -1
  275. package/out/src/services/providers/exchangeRates.d.ts.map +1 -1
  276. package/out/src/services/providers/exchangeRates.js +3 -3
  277. package/out/src/services/providers/exchangeRates.js.map +1 -1
  278. package/out/src/services/providers/getBeefForTxid.d.ts +1 -1
  279. package/out/src/services/providers/getBeefForTxid.d.ts.map +1 -1
  280. package/out/src/services/providers/getBeefForTxid.js.map +1 -1
  281. package/out/src/services/providers/whatsOnChainHelpers.d.ts +68 -0
  282. package/out/src/services/providers/whatsOnChainHelpers.d.ts.map +1 -0
  283. package/out/src/services/providers/whatsOnChainHelpers.js +147 -0
  284. package/out/src/services/providers/whatsOnChainHelpers.js.map +1 -0
  285. package/out/src/signer/WalletSigner.d.ts.map +1 -1
  286. package/out/src/signer/WalletSigner.js.map +1 -1
  287. package/out/src/signer/methods/acquireDirectCertificate.js +1 -1
  288. package/out/src/signer/methods/acquireDirectCertificate.js.map +1 -1
  289. package/out/src/signer/methods/buildSignableTransaction.d.ts.map +1 -1
  290. package/out/src/signer/methods/buildSignableTransaction.js +21 -13
  291. package/out/src/signer/methods/buildSignableTransaction.js.map +1 -1
  292. package/out/src/signer/methods/completeSignedTransaction.d.ts.map +1 -1
  293. package/out/src/signer/methods/completeSignedTransaction.js +20 -21
  294. package/out/src/signer/methods/completeSignedTransaction.js.map +1 -1
  295. package/out/src/signer/methods/createAction.d.ts.map +1 -1
  296. package/out/src/signer/methods/createAction.js +8 -7
  297. package/out/src/signer/methods/createAction.js.map +1 -1
  298. package/out/src/signer/methods/internalizeAction.d.ts.map +1 -1
  299. package/out/src/signer/methods/internalizeAction.js +8 -6
  300. package/out/src/signer/methods/internalizeAction.js.map +1 -1
  301. package/out/src/signer/methods/proveCertificate.js +1 -1
  302. package/out/src/signer/methods/signAction.d.ts.map +1 -1
  303. package/out/src/signer/methods/signAction.js +8 -10
  304. package/out/src/signer/methods/signAction.js.map +1 -1
  305. package/out/src/storage/StorageIdb.d.ts +16 -1
  306. package/out/src/storage/StorageIdb.d.ts.map +1 -1
  307. package/out/src/storage/StorageIdb.js +544 -1224
  308. package/out/src/storage/StorageIdb.js.map +1 -1
  309. package/out/src/storage/StorageProvider.d.ts +124 -1
  310. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  311. package/out/src/storage/StorageProvider.js +316 -186
  312. package/out/src/storage/StorageProvider.js.map +1 -1
  313. package/out/src/storage/StorageReader.d.ts.map +1 -1
  314. package/out/src/storage/StorageReader.js +8 -7
  315. package/out/src/storage/StorageReader.js.map +1 -1
  316. package/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
  317. package/out/src/storage/StorageReaderWriter.js +32 -32
  318. package/out/src/storage/StorageReaderWriter.js.map +1 -1
  319. package/out/src/storage/StorageSyncReader.d.ts.map +1 -1
  320. package/out/src/storage/StorageSyncReader.js +3 -3
  321. package/out/src/storage/StorageSyncReader.js.map +1 -1
  322. package/out/src/storage/WalletStorageManager.d.ts +3 -0
  323. package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
  324. package/out/src/storage/WalletStorageManager.js +83 -73
  325. package/out/src/storage/WalletStorageManager.js.map +1 -1
  326. package/out/src/storage/idbHelpers.d.ts +47 -0
  327. package/out/src/storage/idbHelpers.d.ts.map +1 -0
  328. package/out/src/storage/idbHelpers.js +417 -0
  329. package/out/src/storage/idbHelpers.js.map +1 -0
  330. package/out/src/storage/methods/ListActionsSpecOp.d.ts +6 -1
  331. package/out/src/storage/methods/ListActionsSpecOp.d.ts.map +1 -1
  332. package/out/src/storage/methods/ListActionsSpecOp.js +28 -2
  333. package/out/src/storage/methods/ListActionsSpecOp.js.map +1 -1
  334. package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
  335. package/out/src/storage/methods/ListOutputsSpecOp.js +8 -11
  336. package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
  337. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts +83 -0
  338. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -1
  339. package/out/src/storage/methods/attemptToPostReqsToNetwork.js +338 -63
  340. package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
  341. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  342. package/out/src/storage/methods/createAction.js +251 -274
  343. package/out/src/storage/methods/createAction.js.map +1 -1
  344. package/out/src/storage/methods/generateChange.d.ts.map +1 -1
  345. package/out/src/storage/methods/generateChange.js +99 -80
  346. package/out/src/storage/methods/generateChange.js.map +1 -1
  347. package/out/src/storage/methods/getBeefForTransaction.js +15 -13
  348. package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
  349. package/out/src/storage/methods/getSyncChunk.d.ts.map +1 -1
  350. package/out/src/storage/methods/getSyncChunk.js +4 -3
  351. package/out/src/storage/methods/getSyncChunk.js.map +1 -1
  352. package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
  353. package/out/src/storage/methods/internalizeAction.js +213 -56
  354. package/out/src/storage/methods/internalizeAction.js.map +1 -1
  355. package/out/src/storage/methods/listActionsIdb.d.ts.map +1 -1
  356. package/out/src/storage/methods/listActionsIdb.js +85 -110
  357. package/out/src/storage/methods/listActionsIdb.js.map +1 -1
  358. package/out/src/storage/methods/listCertificates.d.ts +1 -1
  359. package/out/src/storage/methods/listCertificates.d.ts.map +1 -1
  360. package/out/src/storage/methods/listCertificates.js +7 -7
  361. package/out/src/storage/methods/listCertificates.js.map +1 -1
  362. package/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -1
  363. package/out/src/storage/methods/listOutputsIdb.js +24 -27
  364. package/out/src/storage/methods/listOutputsIdb.js.map +1 -1
  365. package/out/src/storage/methods/offsetKey.d.ts +1 -1
  366. package/out/src/storage/methods/offsetKey.d.ts.map +1 -1
  367. package/out/src/storage/methods/offsetKey.js +3 -5
  368. package/out/src/storage/methods/offsetKey.js.map +1 -1
  369. package/out/src/storage/methods/processAction.d.ts +0 -11
  370. package/out/src/storage/methods/processAction.d.ts.map +1 -1
  371. package/out/src/storage/methods/processAction.js +168 -93
  372. package/out/src/storage/methods/processAction.js.map +1 -1
  373. package/out/src/storage/methods/purgeDataIdb.d.ts.map +1 -1
  374. package/out/src/storage/methods/purgeDataIdb.js +1 -1
  375. package/out/src/storage/methods/purgeDataIdb.js.map +1 -1
  376. package/out/src/storage/methods/reviewStatusIdb.d.ts +1 -1
  377. package/out/src/storage/methods/reviewStatusIdb.d.ts.map +1 -1
  378. package/out/src/storage/methods/reviewStatusIdb.js.map +1 -1
  379. package/out/src/storage/methods/utils.d.ts.map +1 -1
  380. package/out/src/storage/methods/utils.js +7 -1
  381. package/out/src/storage/methods/utils.js.map +1 -1
  382. package/out/src/storage/remoting/StorageClient.d.ts +4 -270
  383. package/out/src/storage/remoting/StorageClient.d.ts.map +1 -1
  384. package/out/src/storage/remoting/StorageClient.js +16 -423
  385. package/out/src/storage/remoting/StorageClient.js.map +1 -1
  386. package/out/src/storage/remoting/StorageClientBase.d.ts +289 -0
  387. package/out/src/storage/remoting/StorageClientBase.d.ts.map +1 -0
  388. package/out/src/storage/remoting/StorageClientBase.js +375 -0
  389. package/out/src/storage/remoting/StorageClientBase.js.map +1 -0
  390. package/out/src/storage/remoting/entityValidationHelpers.d.ts +29 -0
  391. package/out/src/storage/remoting/entityValidationHelpers.d.ts.map +1 -0
  392. package/out/src/storage/remoting/entityValidationHelpers.js +91 -0
  393. package/out/src/storage/remoting/entityValidationHelpers.js.map +1 -0
  394. package/out/src/storage/schema/StorageIdbSchema.d.ts +43 -2
  395. package/out/src/storage/schema/StorageIdbSchema.d.ts.map +1 -1
  396. package/out/src/storage/schema/entities/EntityBase.d.ts.map +1 -1
  397. package/out/src/storage/schema/entities/EntityBase.js.map +1 -1
  398. package/out/src/storage/schema/entities/EntityCertificate.d.ts.map +1 -1
  399. package/out/src/storage/schema/entities/EntityCertificate.js +5 -4
  400. package/out/src/storage/schema/entities/EntityCertificate.js.map +1 -1
  401. package/out/src/storage/schema/entities/EntityCertificateField.d.ts.map +1 -1
  402. package/out/src/storage/schema/entities/EntityCertificateField.js +5 -7
  403. package/out/src/storage/schema/entities/EntityCertificateField.js.map +1 -1
  404. package/out/src/storage/schema/entities/EntityCommission.d.ts.map +1 -1
  405. package/out/src/storage/schema/entities/EntityCommission.js +6 -8
  406. package/out/src/storage/schema/entities/EntityCommission.js.map +1 -1
  407. package/out/src/storage/schema/entities/EntityOutput.d.ts.map +1 -1
  408. package/out/src/storage/schema/entities/EntityOutput.js +21 -24
  409. package/out/src/storage/schema/entities/EntityOutput.js.map +1 -1
  410. package/out/src/storage/schema/entities/EntityOutputBasket.d.ts.map +1 -1
  411. package/out/src/storage/schema/entities/EntityOutputBasket.js +6 -6
  412. package/out/src/storage/schema/entities/EntityOutputBasket.js.map +1 -1
  413. package/out/src/storage/schema/entities/EntityOutputTag.d.ts.map +1 -1
  414. package/out/src/storage/schema/entities/EntityOutputTag.js +2 -2
  415. package/out/src/storage/schema/entities/EntityOutputTag.js.map +1 -1
  416. package/out/src/storage/schema/entities/EntityOutputTagMap.d.ts.map +1 -1
  417. package/out/src/storage/schema/entities/EntityOutputTagMap.js +4 -6
  418. package/out/src/storage/schema/entities/EntityOutputTagMap.js.map +1 -1
  419. package/out/src/storage/schema/entities/EntityProvenTx.d.ts +3 -3
  420. package/out/src/storage/schema/entities/EntityProvenTx.d.ts.map +1 -1
  421. package/out/src/storage/schema/entities/EntityProvenTx.js +22 -23
  422. package/out/src/storage/schema/entities/EntityProvenTx.js.map +1 -1
  423. package/out/src/storage/schema/entities/EntityProvenTxReq.d.ts +9 -0
  424. package/out/src/storage/schema/entities/EntityProvenTxReq.d.ts.map +1 -1
  425. package/out/src/storage/schema/entities/EntityProvenTxReq.js +116 -68
  426. package/out/src/storage/schema/entities/EntityProvenTxReq.js.map +1 -1
  427. package/out/src/storage/schema/entities/EntitySyncState.d.ts.map +1 -1
  428. package/out/src/storage/schema/entities/EntitySyncState.js +19 -18
  429. package/out/src/storage/schema/entities/EntitySyncState.js.map +1 -1
  430. package/out/src/storage/schema/entities/EntityTransaction.d.ts.map +1 -1
  431. package/out/src/storage/schema/entities/EntityTransaction.js +25 -26
  432. package/out/src/storage/schema/entities/EntityTransaction.js.map +1 -1
  433. package/out/src/storage/schema/entities/EntityTxLabel.d.ts.map +1 -1
  434. package/out/src/storage/schema/entities/EntityTxLabel.js +2 -2
  435. package/out/src/storage/schema/entities/EntityTxLabel.js.map +1 -1
  436. package/out/src/storage/schema/entities/EntityTxLabelMap.d.ts.map +1 -1
  437. package/out/src/storage/schema/entities/EntityTxLabelMap.js +4 -6
  438. package/out/src/storage/schema/entities/EntityTxLabelMap.js.map +1 -1
  439. package/out/src/storage/schema/entities/EntityUser.d.ts.map +1 -1
  440. package/out/src/storage/schema/entities/EntityUser.js +3 -3
  441. package/out/src/storage/schema/entities/EntityUser.js.map +1 -1
  442. package/out/src/storage/schema/entities/MergeEntity.d.ts.map +1 -1
  443. package/out/src/storage/schema/entities/MergeEntity.js +6 -6
  444. package/out/src/storage/schema/entities/MergeEntity.js.map +1 -1
  445. package/out/src/storage/schema/monitorLease.d.ts +57 -0
  446. package/out/src/storage/schema/monitorLease.d.ts.map +1 -0
  447. package/out/src/storage/schema/monitorLease.js +101 -0
  448. package/out/src/storage/schema/monitorLease.js.map +1 -0
  449. package/out/src/storage/schema/processingFsm.d.ts +27 -0
  450. package/out/src/storage/schema/processingFsm.d.ts.map +1 -0
  451. package/out/src/storage/schema/processingFsm.js +132 -0
  452. package/out/src/storage/schema/processingFsm.js.map +1 -0
  453. package/out/src/storage/schema/tables/TableAction.d.ts +38 -0
  454. package/out/src/storage/schema/tables/TableAction.d.ts.map +1 -0
  455. package/out/src/storage/schema/tables/TableAction.js +3 -0
  456. package/out/src/storage/schema/tables/TableAction.js.map +1 -0
  457. package/out/src/storage/schema/tables/TableCertificate.d.ts +2 -1
  458. package/out/src/storage/schema/tables/TableCertificate.d.ts.map +1 -1
  459. package/out/src/storage/schema/tables/TableCertificateField.d.ts +1 -1
  460. package/out/src/storage/schema/tables/TableCertificateField.d.ts.map +1 -1
  461. package/out/src/storage/schema/tables/TableChainTip.d.ts +17 -0
  462. package/out/src/storage/schema/tables/TableChainTip.d.ts.map +1 -0
  463. package/out/src/storage/schema/tables/TableChainTip.js +3 -0
  464. package/out/src/storage/schema/tables/TableChainTip.js.map +1 -0
  465. package/out/src/storage/schema/tables/TableCommission.d.ts +1 -1
  466. package/out/src/storage/schema/tables/TableCommission.d.ts.map +1 -1
  467. package/out/src/storage/schema/tables/TableMonitorEvent.d.ts +1 -1
  468. package/out/src/storage/schema/tables/TableMonitorEvent.d.ts.map +1 -1
  469. package/out/src/storage/schema/tables/TableMonitorLease.d.ts +23 -0
  470. package/out/src/storage/schema/tables/TableMonitorLease.d.ts.map +1 -0
  471. package/out/src/storage/schema/tables/TableMonitorLease.js +3 -0
  472. package/out/src/storage/schema/tables/TableMonitorLease.js.map +1 -0
  473. package/out/src/storage/schema/tables/TableOutput.d.ts +10 -2
  474. package/out/src/storage/schema/tables/TableOutput.d.ts.map +1 -1
  475. package/out/src/storage/schema/tables/TableOutput.js +1 -1
  476. package/out/src/storage/schema/tables/TableOutput.js.map +1 -1
  477. package/out/src/storage/schema/tables/TableOutputBasket.d.ts +1 -1
  478. package/out/src/storage/schema/tables/TableOutputBasket.d.ts.map +1 -1
  479. package/out/src/storage/schema/tables/TableOutputTag.d.ts +1 -1
  480. package/out/src/storage/schema/tables/TableOutputTag.d.ts.map +1 -1
  481. package/out/src/storage/schema/tables/TableOutputTagMap.d.ts +1 -1
  482. package/out/src/storage/schema/tables/TableOutputTagMap.d.ts.map +1 -1
  483. package/out/src/storage/schema/tables/TableProvenTx.d.ts +1 -1
  484. package/out/src/storage/schema/tables/TableProvenTx.d.ts.map +1 -1
  485. package/out/src/storage/schema/tables/TableProvenTxReq.d.ts +24 -1
  486. package/out/src/storage/schema/tables/TableProvenTxReq.d.ts.map +1 -1
  487. package/out/src/storage/schema/tables/TableSettings.d.ts +1 -1
  488. package/out/src/storage/schema/tables/TableSettings.d.ts.map +1 -1
  489. package/out/src/storage/schema/tables/TableSyncState.d.ts +1 -1
  490. package/out/src/storage/schema/tables/TableSyncState.d.ts.map +1 -1
  491. package/out/src/storage/schema/tables/TableTransaction.d.ts +1 -1
  492. package/out/src/storage/schema/tables/TableTransaction.d.ts.map +1 -1
  493. package/out/src/storage/schema/tables/TableTransactionNew.d.ts +50 -0
  494. package/out/src/storage/schema/tables/TableTransactionNew.d.ts.map +1 -0
  495. package/out/src/storage/schema/tables/TableTransactionNew.js +3 -0
  496. package/out/src/storage/schema/tables/TableTransactionNew.js.map +1 -0
  497. package/out/src/storage/schema/tables/TableTransactionV7.d.ts +50 -0
  498. package/out/src/storage/schema/tables/TableTransactionV7.d.ts.map +1 -0
  499. package/out/src/storage/schema/tables/TableTransactionV7.js +3 -0
  500. package/out/src/storage/schema/tables/TableTransactionV7.js.map +1 -0
  501. package/out/src/storage/schema/tables/TableTxAudit.d.ts +26 -0
  502. package/out/src/storage/schema/tables/TableTxAudit.d.ts.map +1 -0
  503. package/out/src/storage/schema/tables/TableTxAudit.js +3 -0
  504. package/out/src/storage/schema/tables/TableTxAudit.js.map +1 -0
  505. package/out/src/storage/schema/tables/TableTxLabel.d.ts +1 -1
  506. package/out/src/storage/schema/tables/TableTxLabel.d.ts.map +1 -1
  507. package/out/src/storage/schema/tables/TableTxLabelMap.d.ts +1 -1
  508. package/out/src/storage/schema/tables/TableTxLabelMap.d.ts.map +1 -1
  509. package/out/src/storage/schema/tables/TableUser.d.ts +1 -1
  510. package/out/src/storage/schema/tables/TableUser.d.ts.map +1 -1
  511. package/out/src/storage/schema/tables/index.d.ts +5 -0
  512. package/out/src/storage/schema/tables/index.d.ts.map +1 -1
  513. package/out/src/storage/schema/tables/index.js +5 -0
  514. package/out/src/storage/schema/tables/index.js.map +1 -1
  515. package/out/src/storage/schema/transactionCrud.d.ts +41 -0
  516. package/out/src/storage/schema/transactionCrud.d.ts.map +1 -0
  517. package/out/src/storage/schema/transactionCrud.js +205 -0
  518. package/out/src/storage/schema/transactionCrud.js.map +1 -0
  519. package/out/src/storage/schema/transactionService.d.ts +315 -0
  520. package/out/src/storage/schema/transactionService.d.ts.map +1 -0
  521. package/out/src/storage/schema/transactionService.js +783 -0
  522. package/out/src/storage/schema/transactionService.js.map +1 -0
  523. package/out/src/storage/schema/txAudit.d.ts +33 -0
  524. package/out/src/storage/schema/txAudit.d.ts.map +1 -0
  525. package/out/src/storage/schema/txAudit.js +64 -0
  526. package/out/src/storage/schema/txAudit.js.map +1 -0
  527. package/out/src/storage/schema/v7Crud.d.ts +41 -0
  528. package/out/src/storage/schema/v7Crud.d.ts.map +1 -0
  529. package/out/src/storage/schema/v7Crud.js +205 -0
  530. package/out/src/storage/schema/v7Crud.js.map +1 -0
  531. package/out/src/storage/schema/v7Fsm.d.ts +27 -0
  532. package/out/src/storage/schema/v7Fsm.d.ts.map +1 -0
  533. package/out/src/storage/schema/v7Fsm.js +124 -0
  534. package/out/src/storage/schema/v7Fsm.js.map +1 -0
  535. package/out/src/storage/schema/v7MonitorLease.d.ts +57 -0
  536. package/out/src/storage/schema/v7MonitorLease.d.ts.map +1 -0
  537. package/out/src/storage/schema/v7MonitorLease.js +101 -0
  538. package/out/src/storage/schema/v7MonitorLease.js.map +1 -0
  539. package/out/src/storage/schema/v7Service.d.ts +305 -0
  540. package/out/src/storage/schema/v7Service.d.ts.map +1 -0
  541. package/out/src/storage/schema/v7Service.js +757 -0
  542. package/out/src/storage/schema/v7Service.js.map +1 -0
  543. package/out/src/storage/schema/v7TxAudit.d.ts +33 -0
  544. package/out/src/storage/schema/v7TxAudit.d.ts.map +1 -0
  545. package/out/src/storage/schema/v7TxAudit.js +64 -0
  546. package/out/src/storage/schema/v7TxAudit.js.map +1 -0
  547. package/out/src/storage/storageProviderHelpers.d.ts +34 -0
  548. package/out/src/storage/storageProviderHelpers.d.ts.map +1 -0
  549. package/out/src/storage/storageProviderHelpers.js +100 -0
  550. package/out/src/storage/storageProviderHelpers.js.map +1 -0
  551. package/out/src/utility/ScriptTemplateBRC29.d.ts.map +1 -1
  552. package/out/src/utility/ScriptTemplateBRC29.js +2 -1
  553. package/out/src/utility/ScriptTemplateBRC29.js.map +1 -1
  554. package/out/src/utility/aggregateResults.d.ts +1 -1
  555. package/out/src/utility/aggregateResults.d.ts.map +1 -1
  556. package/out/src/utility/aggregateResults.js +2 -2
  557. package/out/src/utility/aggregateResults.js.map +1 -1
  558. package/out/src/utility/brc114ActionTimeLabels.d.ts +2 -2
  559. package/out/src/utility/brc114ActionTimeLabels.d.ts.map +1 -1
  560. package/out/src/utility/brc114ActionTimeLabels.js +16 -9
  561. package/out/src/utility/brc114ActionTimeLabels.js.map +1 -1
  562. package/out/src/utility/identityUtils.js +1 -1
  563. package/out/src/utility/identityUtils.js.map +1 -1
  564. package/out/src/utility/parseTxScriptOffsets.d.ts +4 -4
  565. package/out/src/utility/parseTxScriptOffsets.d.ts.map +1 -1
  566. package/out/src/utility/parseTxScriptOffsets.js.map +1 -1
  567. package/out/src/utility/stampLog.d.ts.map +1 -1
  568. package/out/src/utility/stampLog.js +7 -5
  569. package/out/src/utility/stampLog.js.map +1 -1
  570. package/out/src/utility/tscProofToMerklePath.d.ts.map +1 -1
  571. package/out/src/utility/tscProofToMerklePath.js +1 -1
  572. package/out/src/utility/tscProofToMerklePath.js.map +1 -1
  573. package/out/src/utility/utilityHelpers.d.ts +1 -2
  574. package/out/src/utility/utilityHelpers.d.ts.map +1 -1
  575. package/out/src/utility/utilityHelpers.js +10 -10
  576. package/out/src/utility/utilityHelpers.js.map +1 -1
  577. package/out/src/utility/utilityHelpers.noBuffer.d.ts +7 -3
  578. package/out/src/utility/utilityHelpers.noBuffer.d.ts.map +1 -1
  579. package/out/src/utility/utilityHelpers.noBuffer.js +3 -3
  580. package/out/src/utility/utilityHelpers.noBuffer.js.map +1 -1
  581. package/out/src/wab-client/WABClient.d.ts +1 -1
  582. package/out/src/wab-client/WABClient.d.ts.map +1 -1
  583. package/out/src/wab-client/WABClient.js +12 -12
  584. package/out/src/wab-client/WABClient.js.map +1 -1
  585. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts.map +1 -1
  586. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js +3 -3
  587. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js.map +1 -1
  588. package/package.json +7 -6
@@ -15,20 +15,27 @@ function computeMerkleRoot(txids) {
15
15
  throw new Error('Cannot compute merkle root of empty txid list');
16
16
  }
17
17
  // Convert txids to byte arrays (reverse to little-endian for hashing)
18
- let level = txids.map(txid => (0, utilityHelpers_noBuffer_1.asArray)(txid).reverse());
18
+ let level = txids.map(txid => {
19
+ const txidBytes = (0, utilityHelpers_noBuffer_1.asArray)(txid);
20
+ txidBytes.reverse();
21
+ return txidBytes;
22
+ });
19
23
  while (level.length > 1) {
20
24
  const next = [];
21
25
  for (let i = 0; i < level.length; i += 2) {
22
26
  const left = level[i];
23
27
  const right = i + 1 < level.length ? level[i + 1] : level[i]; // duplicate last if odd
24
28
  const combined = [...left, ...right];
25
- const hash = (0, utilityHelpers_1.doubleSha256BE)(combined).reverse(); // doubleSha256BE returns BE, reverse to LE for next level
29
+ const hash = (0, utilityHelpers_1.doubleSha256BE)(combined); // doubleSha256BE returns BE, reverse to LE for next level
30
+ hash.reverse();
26
31
  next.push(hash);
27
32
  }
28
33
  level = next;
29
34
  }
30
35
  // Final root in LE, reverse to BE for return
31
- return (0, utilityHelpers_noBuffer_1.asString)(level[0].reverse());
36
+ const root = [...level[0]];
37
+ root.reverse();
38
+ return (0, utilityHelpers_noBuffer_1.asString)(root);
32
39
  }
33
40
  /**
34
41
  * Compute the MerklePath for a target transaction at `targetIndex` within a block at `blockHeight`.
@@ -53,7 +60,7 @@ function computeMerklePath(txids, targetIndex, blockHeight) {
53
60
  treeHeight++;
54
61
  n = Math.ceil(n / 2);
55
62
  }
56
- const path = Array(treeHeight)
63
+ const path = new Array(treeHeight)
57
64
  .fill(0)
58
65
  .map(() => []);
59
66
  let index = targetIndex;
@@ -87,20 +94,22 @@ function computeMerklePath(txids, targetIndex, blockHeight) {
87
94
  }
88
95
  }
89
96
  }
97
+ else if (siblingIndex >= levelTxids.length) {
98
+ // Higher levels: duplicate sibling when odd
99
+ path[level].push({ offset: siblingIndex, duplicate: true });
100
+ }
90
101
  else {
91
102
  // Higher levels: we only need the sibling hash
92
- if (siblingIndex >= levelTxids.length) {
93
- path[level].push({ offset: siblingIndex, duplicate: true });
94
- }
95
- else {
96
- path[level].push({ offset: siblingIndex, hash: levelTxids[siblingIndex] });
97
- }
103
+ path[level].push({ offset: siblingIndex, hash: levelTxids[siblingIndex] });
98
104
  }
99
105
  // Compute next level hashes
100
106
  const nextLevel = [];
101
107
  for (let i = 0; i < levelTxids.length; i += 2) {
102
- const left = (0, utilityHelpers_noBuffer_1.asArray)(levelTxids[i]).reverse();
103
- const right = i + 1 < levelTxids.length ? (0, utilityHelpers_noBuffer_1.asArray)(levelTxids[i + 1]).reverse() : left;
108
+ const left = (0, utilityHelpers_noBuffer_1.asArray)(levelTxids[i]);
109
+ left.reverse();
110
+ const right = i + 1 < levelTxids.length ? (0, utilityHelpers_noBuffer_1.asArray)(levelTxids[i + 1]) : left;
111
+ if (right !== left)
112
+ right.reverse();
104
113
  const combined = [...left, ...right];
105
114
  const hash = (0, utilityHelpers_1.doubleSha256BE)(combined); // returns BE
106
115
  nextLevel.push((0, utilityHelpers_noBuffer_1.asString)(hash));
@@ -1 +1 @@
1
- {"version":3,"file":"merkleTree.js","sourceRoot":"","sources":["../../../../src/mockchain/merkleTree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"merkleTree.js","sourceRoot":"","sources":["../../../../src/mockchain/merkleTree.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,43 @@
1
+ import { TransactionService } from '../storage/schema/transactionService';
2
+ /**
3
+ * Helper that wraps a long-running monitor task body in `monitor_lease`
4
+ * acquire / renew / release semantics.
5
+ *
6
+ * Usage:
7
+ * ```typescript
8
+ * const helper = new LeasedMonitorTask(txSvc)
9
+ * const { ran } = await helper.run('proof-acquisition', ownerId, 30_000, async () => {
10
+ * // task body runs only when lease is acquired
11
+ * })
12
+ * if (!ran) {
13
+ * console.log('lease held by another instance – skipping')
14
+ * }
15
+ * ```
16
+ *
17
+ * Lease renewal is driven by a `setInterval` firing at `ttlMs * 0.4` so the
18
+ * lease is always refreshed well before it would expire (40 % window). The
19
+ * interval is cleared in the `finally` block before `releaseLease` is called.
20
+ *
21
+ * Logging writes to `console.log` so that lease activity is visible in the
22
+ * same stream as other Monitor diagnostics.
23
+ */
24
+ export declare class LeasedMonitorTask {
25
+ private readonly svc;
26
+ constructor(svc: TransactionService);
27
+ /**
28
+ * Attempt to claim the named lease and, if successful, execute `body`.
29
+ *
30
+ * @param taskName Logical task identifier stored in `monitor_lease.task_name`.
31
+ * @param ownerId Stable identifier for this Monitor instance.
32
+ * @param ttlMs Lease TTL in milliseconds. Renewal fires at `ttlMs * 0.4`.
33
+ * @param body Async work to perform while holding the lease.
34
+ *
35
+ * @returns `{ ran: true }` when the lease was acquired and `body` completed
36
+ * (even if `body` threw — the error is re-thrown after cleanup).
37
+ * `{ ran: false }` when another owner holds a live lease.
38
+ */
39
+ run(taskName: string, ownerId: string, ttlMs: number, body: () => Promise<void>): Promise<{
40
+ ran: boolean;
41
+ }>;
42
+ }
43
+ //# sourceMappingURL=LeasedMonitorTask.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeasedMonitorTask.d.ts","sourceRoot":"","sources":["../../../../src/monitor/LeasedMonitorTask.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AAEzE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,iBAAiB;IACf,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,kBAAkB;IAErD;;;;;;;;;;;OAWG;IACG,GAAG,CACP,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GACxB,OAAO,CAAC;QAAE,GAAG,EAAE,OAAO,CAAA;KAAE,CAAC;CA2C7B"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LeasedMonitorTask = void 0;
4
+ /**
5
+ * Helper that wraps a long-running monitor task body in `monitor_lease`
6
+ * acquire / renew / release semantics.
7
+ *
8
+ * Usage:
9
+ * ```typescript
10
+ * const helper = new LeasedMonitorTask(txSvc)
11
+ * const { ran } = await helper.run('proof-acquisition', ownerId, 30_000, async () => {
12
+ * // task body runs only when lease is acquired
13
+ * })
14
+ * if (!ran) {
15
+ * console.log('lease held by another instance – skipping')
16
+ * }
17
+ * ```
18
+ *
19
+ * Lease renewal is driven by a `setInterval` firing at `ttlMs * 0.4` so the
20
+ * lease is always refreshed well before it would expire (40 % window). The
21
+ * interval is cleared in the `finally` block before `releaseLease` is called.
22
+ *
23
+ * Logging writes to `console.log` so that lease activity is visible in the
24
+ * same stream as other Monitor diagnostics.
25
+ */
26
+ class LeasedMonitorTask {
27
+ constructor(svc) {
28
+ this.svc = svc;
29
+ }
30
+ /**
31
+ * Attempt to claim the named lease and, if successful, execute `body`.
32
+ *
33
+ * @param taskName Logical task identifier stored in `monitor_lease.task_name`.
34
+ * @param ownerId Stable identifier for this Monitor instance.
35
+ * @param ttlMs Lease TTL in milliseconds. Renewal fires at `ttlMs * 0.4`.
36
+ * @param body Async work to perform while holding the lease.
37
+ *
38
+ * @returns `{ ran: true }` when the lease was acquired and `body` completed
39
+ * (even if `body` threw — the error is re-thrown after cleanup).
40
+ * `{ ran: false }` when another owner holds a live lease.
41
+ */
42
+ async run(taskName, ownerId, ttlMs, body) {
43
+ const claim = await this.svc.tryClaimLease({ taskName, ownerId, ttlMs });
44
+ if (!claim.acquired) {
45
+ console.log(`[LeasedMonitorTask] ${taskName}: lease held by another owner — skipping`);
46
+ return { ran: false };
47
+ }
48
+ console.log(`[LeasedMonitorTask] ${taskName}: lease acquired by ${ownerId} (ttl=${ttlMs}ms)`);
49
+ // Renew at 40 % of TTL so there is always a healthy margin before expiry.
50
+ const renewIntervalMs = Math.max(1000, Math.floor(ttlMs * 0.4));
51
+ let renewFailures = 0;
52
+ const renewTimer = setInterval(async () => {
53
+ var _a, _b;
54
+ try {
55
+ const result = await this.svc.renewLease({ taskName, ownerId, ttlMs });
56
+ if (result.acquired) {
57
+ renewFailures = 0;
58
+ console.log(`[LeasedMonitorTask] ${taskName}: lease renewed (renewCount=${(_b = (_a = result.lease) === null || _a === void 0 ? void 0 : _a.renewCount) !== null && _b !== void 0 ? _b : '?'})`);
59
+ }
60
+ else {
61
+ renewFailures++;
62
+ console.log(`[LeasedMonitorTask] ${taskName}: lease renew failed (attempt ${renewFailures}) — may have been taken over`);
63
+ }
64
+ }
65
+ catch (err) {
66
+ renewFailures++;
67
+ const msg = err instanceof Error ? err.message : String(err);
68
+ console.log(`[LeasedMonitorTask] ${taskName}: lease renew error (attempt ${renewFailures}): ${msg}`);
69
+ }
70
+ }, renewIntervalMs);
71
+ try {
72
+ await body();
73
+ return { ran: true };
74
+ }
75
+ finally {
76
+ clearInterval(renewTimer);
77
+ try {
78
+ const released = await this.svc.releaseLease({ taskName, ownerId });
79
+ console.log(`[LeasedMonitorTask] ${taskName}: lease released by ${ownerId} (deleted=${released})`);
80
+ }
81
+ catch (releaseErr) {
82
+ const msg = releaseErr instanceof Error ? releaseErr.message : String(releaseErr);
83
+ console.log(`[LeasedMonitorTask] ${taskName}: lease release error: ${msg}`);
84
+ }
85
+ }
86
+ }
87
+ }
88
+ exports.LeasedMonitorTask = LeasedMonitorTask;
89
+ //# sourceMappingURL=LeasedMonitorTask.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LeasedMonitorTask.js","sourceRoot":"","sources":["../../../../src/monitor/LeasedMonitorTask.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAa,iBAAiB;IAC5B,YAA8B,GAAuB;QAAvB,QAAG,GAAH,GAAG,CAAoB;IAAG,CAAC;IAEzD;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,GAAG,CACP,QAAgB,EAChB,OAAe,EACf,KAAa,EACb,IAAyB;QAEzB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;QACxE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,0CAA0C,CAAC,CAAA;YACtF,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAA;QACvB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,uBAAuB,OAAO,SAAS,KAAK,KAAK,CAAC,CAAA;QAE7F,0EAA0E;QAC1E,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAA;QAC/D,IAAI,aAAa,GAAG,CAAC,CAAA;QACrB,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;;YACxC,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;gBACtE,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACpB,aAAa,GAAG,CAAC,CAAA;oBACjB,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,+BAA+B,MAAA,MAAA,MAAM,CAAC,KAAK,0CAAE,UAAU,mCAAI,GAAG,GAAG,CAAC,CAAA;gBAC/G,CAAC;qBAAM,CAAC;oBACN,aAAa,EAAE,CAAA;oBACf,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,iCAAiC,aAAa,8BAA8B,CAAC,CAAA;gBAC1H,CAAC;YACH,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACtB,aAAa,EAAE,CAAA;gBACf,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAC5D,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,gCAAgC,aAAa,MAAM,GAAG,EAAE,CAAC,CAAA;YACtG,CAAC;QACH,CAAC,EAAE,eAAe,CAAC,CAAA;QAEnB,IAAI,CAAC;YACH,MAAM,IAAI,EAAE,CAAA;YACZ,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAA;QACtB,CAAC;gBAAS,CAAC;YACT,aAAa,CAAC,UAAU,CAAC,CAAA;YACzB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;gBACnE,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,uBAAuB,OAAO,aAAa,QAAQ,GAAG,CAAC,CAAA;YACpG,CAAC;YAAC,OAAO,UAAmB,EAAE,CAAC;gBAC7B,MAAM,GAAG,GAAG,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;gBACjF,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,0BAA0B,GAAG,EAAE,CAAC,CAAA;YAC7E,CAAC;QACH,CAAC;IACH,CAAC;CACF;AA/DD,8CA+DC"}
@@ -24,6 +24,15 @@ export interface MonitorOptions {
24
24
  abandonedMsecs: number;
25
25
  unprovenAttemptsLimitTest: number;
26
26
  unprovenAttemptsLimitMain: number;
27
+ /**
28
+ * Maximum number of times a broadcast transaction may be reset to 'unsent' for
29
+ * rebroadcast after proof check timeout (circuit breaker).
30
+ *
31
+ * Default 0 means unlimited — the tx is rebroadcast indefinitely until a proof
32
+ * is found. Set to a positive integer to cap rebroadcast cycles; once the limit
33
+ * is reached the req is marked 'invalid'.
34
+ */
35
+ maxRebroadcastAttempts: number;
27
36
  /**
28
37
  * Stable callback token for ARC SSE event streaming.
29
38
  * When set, TaskArcadeSSE will open an SSE connection to Arcade's
@@ -50,6 +59,13 @@ export interface MonitorOptions {
50
59
  */
51
60
  export declare class Monitor {
52
61
  static createDefaultWalletMonitorOptions(chain: Chain, storage: MonitorStorage, services?: Services, chaintracks?: Chaintracks, startupTaskMode?: MonitorStartupTaskMode): MonitorOptions;
62
+ /**
63
+ * Stable identifier for this Monitor instance, used as the `ownerId` when
64
+ * acquiring monitor_lease rows. Generated once at construction time via
65
+ * 8 cryptographically random bytes (16 hex chars). Callers may override this
66
+ * after construction if a deterministic / persisted id is preferred.
67
+ */
68
+ instanceId: string;
53
69
  options: MonitorOptions;
54
70
  services: Services | WalletServices;
55
71
  chain: Chain;
@@ -61,7 +77,15 @@ export declare class Monitor {
61
77
  onTransactionBroadcasted?: (broadcastResult: ReviewActionResult) => Promise<void>;
62
78
  onTransactionProven?: (txStatus: ProvenTransactionStatus) => Promise<void>;
63
79
  onTransactionStatusChanged?: (txid: string, newStatus: string) => Promise<void>;
80
+ /**
81
+ * Resolves once the optional Chaintracks subscriptions have been registered.
82
+ * Await this before calling `startTasks()` if `chaintracksWithEvents` is provided
83
+ * and you need subscriptions to be active before the first task loop runs.
84
+ */
85
+ get ready(): Promise<void>;
86
+ private _readyInit?;
64
87
  constructor(options: MonitorOptions);
88
+ private _init;
65
89
  private applyStartupTaskMode;
66
90
  destroy(): Promise<void>;
67
91
  static readonly oneSecond = 1000;
@@ -1 +1 @@
1
- {"version":3,"file":"Monitor.d.ts","sourceRoot":"","sources":["../../../../src/monitor/Monitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Monitor.d.ts","sourceRoot":"","sources":["../../../../src/monitor/Monitor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AAEtE,OAAO,EAAa,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAiB9D,OAAO,EAAE,KAAK,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AAGpE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,+DAA+D,CAAA;AAEpG,OAAO,EAAE,WAAW,EAAE,MAAM,kDAAkD,CAAA;AAE9E,MAAM,MAAM,cAAc,GAAG,oBAAoB,CAAA;AACjD,MAAM,MAAM,sBAAsB,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,YAAY,CAAA;AAEpF,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,KAAK,CAAA;IAEZ,QAAQ,EAAE,QAAQ,GAAG,cAAc,CAAA;IAEnC,OAAO,EAAE,cAAc,CAAA;IAEvB,WAAW,EAAE,oBAAoB,CAAA;IAEjC,qBAAqB,CAAC,EAAE,WAAW,CAAA;IAEnC,eAAe,CAAC,EAAE,sBAAsB,CAAA;IAExC;;OAEG;IACH,iCAAiC,EAAE,MAAM,CAAA;IAEzC,gBAAgB,EAAE,MAAM,CAAA;IAExB,cAAc,EAAE,MAAM,CAAA;IAEtB,yBAAyB,EAAE,MAAM,CAAA;IAEjC,yBAAyB,EAAE,MAAM,CAAA;IAEjC;;;;;;;OAOG;IACH,sBAAsB,EAAE,MAAM,CAAA;IAE9B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB,+EAA+E;IAC/E,kBAAkB,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;IACtD,iDAAiD;IACjD,kBAAkB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3D,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,GAAG,CAAA;IAEtB;;OAEG;IACH,wBAAwB,CAAC,EAAE,CAAC,eAAe,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjF,mBAAmB,CAAC,EAAE,CAAC,QAAQ,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1E,0BAA0B,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAChF;AAED;;;GAGG;AACH,qBAAa,OAAO;IAClB,MAAM,CAAC,iCAAiC,CACtC,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,cAAc,EACvB,QAAQ,CAAC,EAAE,QAAQ,EACnB,WAAW,CAAC,EAAE,WAAW,EACzB,eAAe,GAAE,sBAA+B,GAC/C,cAAc;IAoBjB;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAoB;IAEtC,OAAO,EAAE,cAAc,CAAA;IACvB,QAAQ,EAAE,QAAQ,GAAG,cAAc,CAAA;IACnC,KAAK,EAAE,KAAK,CAAA;IACZ,OAAO,EAAE,cAAc,CAAA;IACvB,WAAW,EAAE,oBAAoB,CAAA;IACjC,qBAAqB,CAAC,EAAE,WAAW,CAAA;IACnC,wBAAwB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAC1C,0BAA0B,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IAC5C,wBAAwB,CAAC,EAAE,CAAC,eAAe,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjF,mBAAmB,CAAC,EAAE,CAAC,QAAQ,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1E,0BAA0B,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAE/E;;;;OAIG;IACH,IAAI,KAAK,IAAK,OAAO,CAAC,IAAI,CAAC,CAK1B;IAED,OAAO,CAAC,UAAU,CAAC,CAAe;gBAErB,OAAO,EAAE,cAAc;YActB,KAAK;IAQnB,OAAO,CAAC,oBAAoB;IAkBtB,OAAO,IAAK,OAAO,CAAC,IAAI,CAAC;IAQ/B,MAAM,CAAC,QAAQ,CAAC,SAAS,QAAO;IAChC,MAAM,CAAC,QAAQ,CAAC,SAAS,SAAyB;IAClD,MAAM,CAAC,QAAQ,CAAC,OAAO,SAAyB;IAChD,MAAM,CAAC,QAAQ,CAAC,MAAM,SAAuB;IAC7C,MAAM,CAAC,QAAQ,CAAC,OAAO,SAAqB;IAE5C;;OAEG;IACH,MAAM,EAAE,iBAAiB,EAAE,CAAK;IAChC;;OAEG;IACH,WAAW,EAAE,iBAAiB,EAAE,CAAK;IACrC,aAAa,UAAQ;IAErB,kBAAkB,EAAE,eAAe,CAOlC;IAED,kBAAkB,IAAK,IAAI;IAsB3B;;OAEG;IACH,eAAe,IAAK,IAAI;IAyBxB;;OAEG;IACH,iBAAiB,IAAK,IAAI;IAwB1B,OAAO,CAAE,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAKvC,UAAU,CAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAIzB,OAAO,CAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAWvC,OAAO,IAAK,OAAO,CAAC,IAAI,CAAC;IAuD/B,cAAc,UAAO;IACrB,oBAAoB,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAA;IACxC,iBAAiB,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAY;IAEhF,UAAU,IAAK,OAAO,CAAC,IAAI,CAAC;IAqB5B,QAAQ,CAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAY/D,SAAS,IAAK,IAAI;IAIlB,aAAa,EAAE,WAAW,GAAG,SAAS,CAAA;IACtC,iBAAiB,EAAE,IAAI,GAAG,SAAS,CAAA;IAEnC;;;;;;OAMG;IACH,qBAAqB,CAAE,MAAM,EAAE,WAAW,GAAG,IAAI;IASjD;;;;;;OAMG;IACH,4BAA4B,CAAE,eAAe,EAAE,kBAAkB,GAAG,IAAI;IAMxE;;;;;;OAMG;IACH,uBAAuB,CAAE,QAAQ,EAAE,uBAAuB,GAAG,IAAI;IAMjE;;OAEG;IACH,8BAA8B,CAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAMtE;;;OAGG;IACG,cAAc,IAAK,OAAO,CAAC,MAAM,CAAC;IAKxC,kBAAkB,EAAE,eAAe,EAAE,CAAK;IAE1C;;;;;;;;;OASG;IAEH,YAAY,CAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI;IAYhH;;;;;;;OAOG;IAEH,aAAa,CAAE,MAAM,EAAE,WAAW,GAAG,IAAI;CAG1C;AAED,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,MAAM,EAAE,WAAW,CAAA;CACpB"}
@@ -27,8 +27,8 @@ const Services_1 = require("../services/Services");
27
27
  */
28
28
  class Monitor {
29
29
  static createDefaultWalletMonitorOptions(chain, storage, services, chaintracks, startupTaskMode = 'none') {
30
- services || (services = new Services_1.Services(chain));
31
- if (!services.options.chaintracks)
30
+ services !== null && services !== void 0 ? services : (services = new Services_1.Services(chain));
31
+ if (services.options.chaintracks == null)
32
32
  throw new WERR_errors_1.WERR_INVALID_PARAMETER('services.options.chaintracks', 'valid');
33
33
  const o = {
34
34
  chain,
@@ -37,15 +37,34 @@ class Monitor {
37
37
  msecsWaitPerMerkleProofServiceReq: 500,
38
38
  taskRunWaitMsecs: 5000,
39
39
  abandonedMsecs: 1000 * 60 * 5,
40
- unprovenAttemptsLimitTest: 10,
40
+ unprovenAttemptsLimitTest: 100,
41
41
  unprovenAttemptsLimitMain: 144,
42
+ maxRebroadcastAttempts: 0,
42
43
  chaintracks: services.options.chaintracks,
43
44
  chaintracksWithEvents: chaintracks,
44
45
  startupTaskMode
45
46
  };
46
47
  return o;
47
48
  }
49
+ /**
50
+ * Resolves once the optional Chaintracks subscriptions have been registered.
51
+ * Await this before calling `startTasks()` if `chaintracksWithEvents` is provided
52
+ * and you need subscriptions to be active before the first task loop runs.
53
+ */
54
+ get ready() {
55
+ if (this._readyInit === undefined) {
56
+ this._readyInit = this._init();
57
+ }
58
+ return this._readyInit;
59
+ }
48
60
  constructor(options) {
61
+ /**
62
+ * Stable identifier for this Monitor instance, used as the `ownerId` when
63
+ * acquiring monitor_lease rows. Generated once at construction time via
64
+ * 8 cryptographically random bytes (16 hex chars). Callers may override this
65
+ * after construction if a deterministic / persisted id is preferred.
66
+ */
67
+ this.instanceId = (0, utilityHelpers_1.randomBytesHex)(8);
49
68
  /**
50
69
  * _tasks are typically run by the scheduler but may also be run by runTask.
51
70
  */
@@ -75,13 +94,15 @@ class Monitor {
75
94
  this.onTransactionProven = options.onTransactionProven;
76
95
  this.onTransactionBroadcasted = options.onTransactionBroadcasted;
77
96
  this.onTransactionStatusChanged = options.onTransactionStatusChanged;
78
- if (this.chaintracksWithEvents) {
79
- const c = this.chaintracksWithEvents;
80
- this.reorgSubscriptionPromise = c.subscribeReorgs(this.processReorg.bind(this));
81
- this.headersSubscriptionPromise = c.subscribeHeaders(this.processHeader.bind(this));
82
- }
83
97
  this.applyStartupTaskMode(options.startupTaskMode || 'none');
84
98
  }
99
+ async _init() {
100
+ if (this.chaintracksWithEvents != null) {
101
+ this.reorgSubscriptionPromise = this.chaintracksWithEvents.subscribeReorgs(this.processReorg.bind(this));
102
+ this.headersSubscriptionPromise = this.chaintracksWithEvents.subscribeHeaders(this.processHeader.bind(this));
103
+ await Promise.all([this.reorgSubscriptionPromise, this.headersSubscriptionPromise]);
104
+ }
105
+ }
85
106
  applyStartupTaskMode(mode) {
86
107
  switch (mode) {
87
108
  case 'default':
@@ -96,34 +117,20 @@ class Monitor {
96
117
  case 'none':
97
118
  break;
98
119
  default:
99
- throw new WERR_errors_1.WERR_INVALID_PARAMETER('startupTaskMode', `'none', 'default', 'multiuser', or 'alltoother'`);
120
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('startupTaskMode', '\'none\', \'default\', \'multiuser\', or \'alltoother\'');
100
121
  }
101
122
  }
102
123
  async destroy() {
103
- if (this.chaintracksWithEvents) {
124
+ if (this.chaintracksWithEvents != null) {
104
125
  const c = this.chaintracksWithEvents;
105
- if (this.reorgSubscriptionPromise)
126
+ if (this.reorgSubscriptionPromise != null)
106
127
  await c.unsubscribe(await this.reorgSubscriptionPromise);
107
- if (this.headersSubscriptionPromise)
128
+ if (this.headersSubscriptionPromise != null)
108
129
  await c.unsubscribe(await this.headersSubscriptionPromise);
109
130
  }
110
131
  }
111
132
  addAllTasksToOther() {
112
- this._otherTasks.push(new TaskClock_1.TaskClock(this));
113
- this._otherTasks.push(new TaskNewHeader_1.TaskNewHeader(this));
114
- this._otherTasks.push(new TaskMonitorCallHistory_1.TaskMonitorCallHistory(this));
115
- this._otherTasks.push(new TaskSendWaiting_1.TaskSendWaiting(this));
116
- this._otherTasks.push(new TaskCheckForProofs_1.TaskCheckForProofs(this));
117
- this._otherTasks.push(new TaskCheckNoSends_1.TaskCheckNoSends(this));
118
- this._otherTasks.push(new TaskFailAbandoned_1.TaskFailAbandoned(this));
119
- this._otherTasks.push(new TaskUnFail_1.TaskUnFail(this));
120
- this._otherTasks.push(new TaskReviewStatus_1.TaskReviewStatus(this));
121
- this._otherTasks.push(new TaskReorg_1.TaskReorg(this));
122
- this._otherTasks.push(new TaskReviewUtxos_1.TaskReviewUtxos(this));
123
- this._otherTasks.push(new TaskReviewDoubleSpends_1.TaskReviewDoubleSpends(this));
124
- this._otherTasks.push(new TaskReviewProvenTxs_1.TaskReviewProvenTxs(this));
125
- this._otherTasks.push(new TaskPurge_1.TaskPurge(this, this.defaultPurgeParams));
126
- //this._otherTasks.push(new TaskSyncWhenIdle(this))
133
+ this._otherTasks.push(new TaskClock_1.TaskClock(this), new TaskNewHeader_1.TaskNewHeader(this), new TaskMonitorCallHistory_1.TaskMonitorCallHistory(this), new TaskSendWaiting_1.TaskSendWaiting(this), new TaskCheckForProofs_1.TaskCheckForProofs(this), new TaskCheckNoSends_1.TaskCheckNoSends(this), new TaskFailAbandoned_1.TaskFailAbandoned(this), new TaskUnFail_1.TaskUnFail(this), new TaskReviewStatus_1.TaskReviewStatus(this), new TaskReorg_1.TaskReorg(this), new TaskReviewUtxos_1.TaskReviewUtxos(this), new TaskReviewDoubleSpends_1.TaskReviewDoubleSpends(this), new TaskReviewProvenTxs_1.TaskReviewProvenTxs(this), new TaskPurge_1.TaskPurge(this, this.defaultPurgeParams));
127
134
  if (this.chain === 'mock') {
128
135
  this._otherTasks.push(new TaskMineBlock_1.TaskMineBlock(this));
129
136
  }
@@ -132,21 +139,10 @@ class Monitor {
132
139
  * Default tasks with settings appropriate for a single user storage
133
140
  */
134
141
  addDefaultTasks() {
135
- this._tasks.push(new TaskClock_1.TaskClock(this));
136
- this._tasks.push(new TaskNewHeader_1.TaskNewHeader(this));
137
- this._tasks.push(new TaskMonitorCallHistory_1.TaskMonitorCallHistory(this));
138
- this._tasks.push(new TaskSendWaiting_1.TaskSendWaiting(this, 8 * Monitor.oneSecond, 7 * Monitor.oneSecond)); // Check every 8 seconds but must be 7 seconds old
139
- this._tasks.push(new TaskCheckForProofs_1.TaskCheckForProofs(this, 2 * Monitor.oneHour)); // Every two hours if no block found
140
- this._tasks.push(new TaskCheckNoSends_1.TaskCheckNoSends(this));
141
- this._tasks.push(new TaskFailAbandoned_1.TaskFailAbandoned(this, 8 * Monitor.oneMinute));
142
- this._tasks.push(new TaskUnFail_1.TaskUnFail(this));
143
- this._tasks.push(new TaskReviewStatus_1.TaskReviewStatus(this));
144
- this._tasks.push(new TaskReorg_1.TaskReorg(this));
145
- this._tasks.push(new TaskReviewDoubleSpends_1.TaskReviewDoubleSpends(this));
146
- this._tasks.push(new TaskReviewProvenTxs_1.TaskReviewProvenTxs(this));
147
- this._otherTasks.push(new TaskPurge_1.TaskPurge(this, this.defaultPurgeParams, 6 * Monitor.oneHour));
148
- this._otherTasks.push(new TaskReviewUtxos_1.TaskReviewUtxos(this));
149
- this._tasks.push(new TaskArcSSE_1.TaskArcadeSSE(this));
142
+ this._tasks.push(new TaskClock_1.TaskClock(this), new TaskNewHeader_1.TaskNewHeader(this), new TaskMonitorCallHistory_1.TaskMonitorCallHistory(this), new TaskSendWaiting_1.TaskSendWaiting(this, 8 * Monitor.oneSecond, 7 * Monitor.oneSecond), // Check every 8 seconds but must be 7 seconds old
143
+ new TaskCheckForProofs_1.TaskCheckForProofs(this, 2 * Monitor.oneHour), // Every two hours if no block found
144
+ new TaskCheckNoSends_1.TaskCheckNoSends(this), new TaskFailAbandoned_1.TaskFailAbandoned(this, 8 * Monitor.oneMinute), new TaskUnFail_1.TaskUnFail(this), new TaskReviewStatus_1.TaskReviewStatus(this), new TaskReorg_1.TaskReorg(this), new TaskReviewDoubleSpends_1.TaskReviewDoubleSpends(this), new TaskReviewProvenTxs_1.TaskReviewProvenTxs(this), new TaskArcSSE_1.TaskArcadeSSE(this));
145
+ this._otherTasks.push(new TaskPurge_1.TaskPurge(this, this.defaultPurgeParams, 6 * Monitor.oneHour), new TaskReviewUtxos_1.TaskReviewUtxos(this));
150
146
  if (this.chain === 'mock') {
151
147
  this._tasks.push(new TaskMineBlock_1.TaskMineBlock(this));
152
148
  }
@@ -155,27 +151,18 @@ class Monitor {
155
151
  * Tasks appropriate for multi-user storage
156
152
  */
157
153
  addMultiUserTasks() {
158
- this._tasks.push(new TaskClock_1.TaskClock(this));
159
- this._tasks.push(new TaskNewHeader_1.TaskNewHeader(this));
160
- this._tasks.push(new TaskMonitorCallHistory_1.TaskMonitorCallHistory(this));
161
- this._tasks.push(new TaskSendWaiting_1.TaskSendWaiting(this, 8 * Monitor.oneSecond, 7 * Monitor.oneSecond)); // Check every 8 seconds but must be 7 seconds old
162
- this._tasks.push(new TaskCheckForProofs_1.TaskCheckForProofs(this, 2 * Monitor.oneHour)); // Every two hours if no block found
163
- this._tasks.push(new TaskCheckNoSends_1.TaskCheckNoSends(this));
164
- this._tasks.push(new TaskFailAbandoned_1.TaskFailAbandoned(this, 8 * Monitor.oneMinute));
165
- this._tasks.push(new TaskUnFail_1.TaskUnFail(this));
166
- this._tasks.push(new TaskReviewStatus_1.TaskReviewStatus(this));
167
- this._tasks.push(new TaskReorg_1.TaskReorg(this));
168
- this._tasks.push(new TaskReviewDoubleSpends_1.TaskReviewDoubleSpends(this));
169
- this._tasks.push(new TaskReviewProvenTxs_1.TaskReviewProvenTxs(this));
170
- this._otherTasks.push(new TaskPurge_1.TaskPurge(this, this.defaultPurgeParams));
171
- this._otherTasks.push(new TaskReviewUtxos_1.TaskReviewUtxos(this));
154
+ this._tasks.push(new TaskClock_1.TaskClock(this), new TaskNewHeader_1.TaskNewHeader(this), new TaskMonitorCallHistory_1.TaskMonitorCallHistory(this), new TaskSendWaiting_1.TaskSendWaiting(this, 8 * Monitor.oneSecond, 7 * Monitor.oneSecond), // Check every 8 seconds but must be 7 seconds old
155
+ new TaskCheckForProofs_1.TaskCheckForProofs(this, 2 * Monitor.oneHour), // Every two hours if no block found
156
+ new TaskCheckNoSends_1.TaskCheckNoSends(this), new TaskFailAbandoned_1.TaskFailAbandoned(this, 8 * Monitor.oneMinute), new TaskUnFail_1.TaskUnFail(this), new TaskReviewStatus_1.TaskReviewStatus(this), new TaskReorg_1.TaskReorg(this), new TaskReviewDoubleSpends_1.TaskReviewDoubleSpends(this), new TaskReviewProvenTxs_1.TaskReviewProvenTxs(this));
157
+ this._otherTasks.push(new TaskPurge_1.TaskPurge(this, this.defaultPurgeParams), new TaskReviewUtxos_1.TaskReviewUtxos(this));
172
158
  if (this.chain === 'mock') {
173
159
  this._tasks.push(new TaskMineBlock_1.TaskMineBlock(this));
174
160
  }
175
161
  }
176
162
  addTask(task) {
177
- if (this._tasks.some(t => t.name === task.name))
163
+ if (this._tasks.some(t => t.name === task.name)) {
178
164
  throw new WERR_errors_1.WERR_BAD_REQUEST(`task ${task.name} has already been added.`);
165
+ }
179
166
  this._tasks.push(task);
180
167
  }
181
168
  removeTask(name) {
@@ -184,9 +171,8 @@ class Monitor {
184
171
  async runTask(name) {
185
172
  let task = this._tasks.find(t => t.name === name);
186
173
  let log = '';
187
- if (!task)
188
- task = this._otherTasks.find(t => t.name === name);
189
- if (task) {
174
+ task !== null && task !== void 0 ? task : (task = this._otherTasks.find(t => t.name === name));
175
+ if (task != null) {
190
176
  await task.asyncSetup();
191
177
  log = await task.runTask();
192
178
  }
@@ -198,8 +184,8 @@ class Monitor {
198
184
  try {
199
185
  await t.asyncSetup();
200
186
  }
201
- catch (eu) {
202
- const e = WalletError_1.WalletError.fromUnknown(eu);
187
+ catch (error_) {
188
+ const e = WalletError_1.WalletError.fromUnknown(error_);
203
189
  const details = `monitor task ${t.name} asyncSetup error ${e.code} ${e.description}`;
204
190
  console.log(details);
205
191
  await this.logEvent('error0', details);
@@ -211,14 +197,14 @@ class Monitor {
211
197
  }
212
198
  if (this.storage.getActive().isStorageProvider()) {
213
199
  const tasksToRun = [];
214
- const now = new Date().getTime();
200
+ const now = Date.now();
215
201
  for (const t of this._tasks) {
216
202
  try {
217
203
  if (t.trigger(now).run)
218
204
  tasksToRun.push(t);
219
205
  }
220
- catch (eu) {
221
- const e = WalletError_1.WalletError.fromUnknown(eu);
206
+ catch (error_) {
207
+ const e = WalletError_1.WalletError.fromUnknown(error_);
222
208
  const details = `monitor task ${t.name} trigger error ${e.code} ${e.description}`;
223
209
  console.log(details);
224
210
  await this.logEvent('error0', details);
@@ -238,14 +224,14 @@ class Monitor {
238
224
  }
239
225
  }
240
226
  }
241
- catch (eu) {
242
- const e = WalletError_1.WalletError.fromUnknown(eu);
227
+ catch (error_) {
228
+ const e = WalletError_1.WalletError.fromUnknown(error_);
243
229
  const details = `monitor task ${ttr.name} runTask error ${e.code} ${e.description}\n${e.stack}`;
244
230
  console.log(details);
245
231
  await this.logEvent('error1', details);
246
232
  }
247
233
  finally {
248
- ttr.lastRunMsecsSinceEpoch = new Date().getTime();
234
+ ttr.lastRunMsecsSinceEpoch = Date.now();
249
235
  }
250
236
  }
251
237
  }
@@ -257,12 +243,12 @@ class Monitor {
257
243
  this._tasksRunningPromise = new Promise(resolve => {
258
244
  this.resolveCompletion = resolve;
259
245
  });
260
- for (; this._tasksRunning;) {
246
+ while (this._tasksRunning) {
261
247
  await this.runOnce();
262
248
  // console.log(`${new Date().toISOString()} tasks run, waiting...`)
263
249
  await (0, utilityHelpers_1.wait)(this.options.taskRunWaitMsecs);
264
250
  }
265
- if (this.resolveCompletion) {
251
+ if (this.resolveCompletion != null) {
266
252
  this.resolveCompletion();
267
253
  this.resolveCompletion = undefined;
268
254
  }
@@ -304,7 +290,7 @@ class Monitor {
304
290
  * @param broadcastResult
305
291
  */
306
292
  callOnBroadcastedTransaction(broadcastResult) {
307
- if (this.onTransactionBroadcasted) {
293
+ if (this.onTransactionBroadcasted != null) {
308
294
  this.onTransactionBroadcasted(broadcastResult);
309
295
  }
310
296
  }
@@ -316,7 +302,7 @@ class Monitor {
316
302
  * @param txStatus
317
303
  */
318
304
  callOnProvenTransaction(txStatus) {
319
- if (this.onTransactionProven) {
305
+ if (this.onTransactionProven != null) {
320
306
  this.onTransactionProven(txStatus);
321
307
  }
322
308
  }
@@ -324,7 +310,7 @@ class Monitor {
324
310
  * Called by TaskArcadeSSE when an SSE status event is received from Arcade.
325
311
  */
326
312
  callOnTransactionStatusChanged(txid, newStatus) {
327
- if (this.onTransactionStatusChanged) {
313
+ if (this.onTransactionStatusChanged != null) {
328
314
  this.onTransactionStatusChanged(txid, newStatus);
329
315
  }
330
316
  }
@@ -349,7 +335,7 @@ class Monitor {
349
335
  */
350
336
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
351
337
  processReorg(depth, oldTip, newTip, deactivatedHeaders) {
352
- if (deactivatedHeaders) {
338
+ if (deactivatedHeaders != null) {
353
339
  for (const header of deactivatedHeaders) {
354
340
  this.deactivatedHeaders.push({
355
341
  whenMsecs: Date.now(),
@@ -368,7 +354,9 @@ class Monitor {
368
354
  * @param header
369
355
  */
370
356
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
371
- processHeader(header) { }
357
+ processHeader(header) {
358
+ // Intentional no-op: new headers are aged via TaskNewHeader before processing
359
+ }
372
360
  }
373
361
  exports.Monitor = Monitor;
374
362
  Monitor.oneSecond = 1000;