@bsv/wallet-toolbox 2.13.0 → 2.13.2

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 (659) hide show
  1. package/CHANGELOG.md +283 -1
  2. package/README.md +403 -5
  3. package/docs/README.md +8 -1
  4. package/docs/client.md +13057 -4632
  5. package/docs/identity-verification.md +196 -0
  6. package/docs/monitor.md +505 -190
  7. package/docs/services.md +4013 -1153
  8. package/docs/setup.md +98 -58
  9. package/docs/storage.md +5780 -1609
  10. package/docs/wallet.md +10155 -10871
  11. package/out/src/CWIStyleWalletManager.d.ts +6 -8
  12. package/out/src/CWIStyleWalletManager.d.ts.map +1 -1
  13. package/out/src/CWIStyleWalletManager.js +170 -125
  14. package/out/src/CWIStyleWalletManager.js.map +1 -1
  15. package/out/src/Setup.d.ts +2 -0
  16. package/out/src/Setup.d.ts.map +1 -1
  17. package/out/src/Setup.js +3 -2
  18. package/out/src/Setup.js.map +1 -1
  19. package/out/src/ShamirWalletManager.d.ts.map +1 -1
  20. package/out/src/ShamirWalletManager.js +34 -19
  21. package/out/src/ShamirWalletManager.js.map +1 -1
  22. package/out/src/SimpleWalletManager.d.ts.map +1 -1
  23. package/out/src/SimpleWalletManager.js +7 -6
  24. package/out/src/SimpleWalletManager.js.map +1 -1
  25. package/out/src/Wallet.d.ts +50 -11
  26. package/out/src/Wallet.d.ts.map +1 -1
  27. package/out/src/Wallet.js +183 -107
  28. package/out/src/Wallet.js.map +1 -1
  29. package/out/src/WalletAuthenticationManager.d.ts.map +1 -1
  30. package/out/src/WalletAuthenticationManager.js +282 -26
  31. package/out/src/WalletAuthenticationManager.js.map +1 -1
  32. package/out/src/WalletLogger.js +1 -1
  33. package/out/src/WalletLogger.js.map +1 -1
  34. package/out/src/WalletPermissionsManager.d.ts +30 -17
  35. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  36. package/out/src/WalletPermissionsManager.js +540 -312
  37. package/out/src/WalletPermissionsManager.js.map +1 -1
  38. package/out/src/WalletSettingsManager.d.ts +3 -2
  39. package/out/src/WalletSettingsManager.d.ts.map +1 -1
  40. package/out/src/WalletSettingsManager.js +141 -6
  41. package/out/src/WalletSettingsManager.js.map +1 -1
  42. package/out/src/entropy/EntropyCollector.d.ts.map +1 -1
  43. package/out/src/entropy/EntropyCollector.js +3 -2
  44. package/out/src/entropy/EntropyCollector.js.map +1 -1
  45. package/out/src/fundWalletP2PKH.d.ts.map +1 -1
  46. package/out/src/fundWalletP2PKH.js +143 -44
  47. package/out/src/fundWalletP2PKH.js.map +1 -1
  48. package/out/src/mockchain/MockChainTracker.d.ts.map +1 -1
  49. package/out/src/mockchain/MockChainTracker.js +5 -5
  50. package/out/src/mockchain/MockChainTracker.js.map +1 -1
  51. package/out/src/mockchain/MockServices.d.ts.map +1 -1
  52. package/out/src/mockchain/MockServices.js +32 -8
  53. package/out/src/mockchain/MockServices.js.map +1 -1
  54. package/out/src/monitor/Monitor.d.ts +17 -0
  55. package/out/src/monitor/Monitor.d.ts.map +1 -1
  56. package/out/src/monitor/Monitor.js +206 -42
  57. package/out/src/monitor/Monitor.js.map +1 -1
  58. package/out/src/monitor/MonitorDaemon.d.ts.map +1 -1
  59. package/out/src/monitor/MonitorDaemon.js +64 -16
  60. package/out/src/monitor/MonitorDaemon.js.map +1 -1
  61. package/out/src/monitor/monitorValidation.d.ts +12 -0
  62. package/out/src/monitor/monitorValidation.d.ts.map +1 -0
  63. package/out/src/monitor/monitorValidation.js +133 -0
  64. package/out/src/monitor/monitorValidation.js.map +1 -0
  65. package/out/src/monitor/tasks/TaskArcSSE.d.ts +2 -0
  66. package/out/src/monitor/tasks/TaskArcSSE.d.ts.map +1 -1
  67. package/out/src/monitor/tasks/TaskArcSSE.js +28 -12
  68. package/out/src/monitor/tasks/TaskArcSSE.js.map +1 -1
  69. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts +5 -0
  70. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -1
  71. package/out/src/monitor/tasks/TaskCheckForProofs.js +29 -24
  72. package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
  73. package/out/src/monitor/tasks/TaskCheckNoSends.d.ts.map +1 -1
  74. package/out/src/monitor/tasks/TaskCheckNoSends.js +11 -3
  75. package/out/src/monitor/tasks/TaskCheckNoSends.js.map +1 -1
  76. package/out/src/monitor/tasks/TaskFailAbandoned.d.ts.map +1 -1
  77. package/out/src/monitor/tasks/TaskFailAbandoned.js +9 -4
  78. package/out/src/monitor/tasks/TaskFailAbandoned.js.map +1 -1
  79. package/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -1
  80. package/out/src/monitor/tasks/TaskNewHeader.js +3 -1
  81. package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
  82. package/out/src/monitor/tasks/TaskReconcilePendingTransactions.d.ts.map +1 -1
  83. package/out/src/monitor/tasks/TaskReconcilePendingTransactions.js +9 -3
  84. package/out/src/monitor/tasks/TaskReconcilePendingTransactions.js.map +1 -1
  85. package/out/src/monitor/tasks/TaskReorg.d.ts.map +1 -1
  86. package/out/src/monitor/tasks/TaskReorg.js +4 -4
  87. package/out/src/monitor/tasks/TaskReorg.js.map +1 -1
  88. package/out/src/monitor/tasks/TaskReviewDoubleSpends.d.ts.map +1 -1
  89. package/out/src/monitor/tasks/TaskReviewDoubleSpends.js +17 -7
  90. package/out/src/monitor/tasks/TaskReviewDoubleSpends.js.map +1 -1
  91. package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts +18 -1
  92. package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts.map +1 -1
  93. package/out/src/monitor/tasks/TaskReviewProvenTxs.js +99 -21
  94. package/out/src/monitor/tasks/TaskReviewProvenTxs.js.map +1 -1
  95. package/out/src/monitor/tasks/TaskReviewUtxos.d.ts +4 -4
  96. package/out/src/monitor/tasks/TaskReviewUtxos.d.ts.map +1 -1
  97. package/out/src/monitor/tasks/TaskReviewUtxos.js +41 -13
  98. package/out/src/monitor/tasks/TaskReviewUtxos.js.map +1 -1
  99. package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
  100. package/out/src/monitor/tasks/TaskSendWaiting.js +52 -11
  101. package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  102. package/out/src/monitor/tasks/TaskUnFail.d.ts +1 -0
  103. package/out/src/monitor/tasks/TaskUnFail.d.ts.map +1 -1
  104. package/out/src/monitor/tasks/TaskUnFail.js +26 -8
  105. package/out/src/monitor/tasks/TaskUnFail.js.map +1 -1
  106. package/out/src/sdk/PrivilegedKeyManager.d.ts.map +1 -1
  107. package/out/src/sdk/PrivilegedKeyManager.js +3 -2
  108. package/out/src/sdk/PrivilegedKeyManager.js.map +1 -1
  109. package/out/src/sdk/WalletErrorFromJson.d.ts.map +1 -1
  110. package/out/src/sdk/WalletErrorFromJson.js +112 -2
  111. package/out/src/sdk/WalletErrorFromJson.js.map +1 -1
  112. package/out/src/sdk/WalletServices.interfaces.d.ts +17 -1
  113. package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  114. package/out/src/services/Services.d.ts +4 -0
  115. package/out/src/services/Services.d.ts.map +1 -1
  116. package/out/src/services/Services.js +260 -117
  117. package/out/src/services/Services.js.map +1 -1
  118. package/out/src/services/chaintracker/BHServiceClient.d.ts +21 -4
  119. package/out/src/services/chaintracker/BHServiceClient.d.ts.map +1 -1
  120. package/out/src/services/chaintracker/BHServiceClient.js +267 -66
  121. package/out/src/services/chaintracker/BHServiceClient.js.map +1 -1
  122. package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +25 -3
  123. package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
  124. package/out/src/services/chaintracker/ChaintracksChainTracker.js +188 -53
  125. package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
  126. package/out/src/services/chaintracker/LocalChainTracker.d.ts +26 -0
  127. package/out/src/services/chaintracker/LocalChainTracker.d.ts.map +1 -1
  128. package/out/src/services/chaintracker/LocalChainTracker.js +180 -10
  129. package/out/src/services/chaintracker/LocalChainTracker.js.map +1 -1
  130. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts.map +1 -1
  131. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js +59 -7
  132. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js.map +1 -1
  133. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts +6 -0
  134. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts.map +1 -1
  135. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts +7 -0
  136. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts.map +1 -1
  137. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts +2 -0
  138. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts.map +1 -1
  139. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +9 -0
  140. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -1
  141. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +19 -0
  142. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
  143. package/out/src/services/chaintracker/chaintracks/Chaintracks.js +237 -61
  144. package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
  145. package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts +16 -0
  146. package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts.map +1 -1
  147. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js +150 -26
  148. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +1 -1
  149. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts +30 -1
  150. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -1
  151. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +346 -30
  152. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -1
  153. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts +32 -1
  154. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts.map +1 -1
  155. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js +375 -43
  156. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js.map +1 -1
  157. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -1
  158. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +28 -3
  159. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
  160. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts.map +1 -1
  161. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +33 -9
  162. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
  163. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts.map +1 -1
  164. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js.map +1 -1
  165. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.d.ts.map +1 -1
  166. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.js +4 -2
  167. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.js.map +1 -1
  168. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts +2 -0
  169. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -1
  170. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +17 -4
  171. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -1
  172. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts +2 -0
  173. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map +1 -1
  174. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js +40 -20
  175. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +1 -1
  176. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -1
  177. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +14 -0
  178. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
  179. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.d.ts +6 -0
  180. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.d.ts.map +1 -1
  181. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js +56 -9
  182. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js.map +1 -1
  183. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.d.ts.map +1 -1
  184. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js +6 -3
  185. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js.map +1 -1
  186. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts +4 -0
  187. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts.map +1 -1
  188. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +27 -9
  189. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
  190. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts +8 -0
  191. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map +1 -1
  192. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js +49 -5
  193. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +1 -1
  194. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +1 -1
  195. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
  196. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +90 -21
  197. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
  198. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts +3 -1
  199. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts.map +1 -1
  200. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js +185 -38
  201. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js.map +1 -1
  202. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -1
  203. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +59 -6
  204. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
  205. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts +2 -0
  206. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts.map +1 -1
  207. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js +89 -39
  208. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js.map +1 -1
  209. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts +10 -0
  210. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
  211. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +225 -24
  212. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
  213. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts +2 -1
  214. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +1 -1
  215. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +265 -96
  216. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -1
  217. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts +3 -0
  218. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -1
  219. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +225 -86
  220. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -1
  221. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +3 -0
  222. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
  223. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +121 -35
  224. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
  225. package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.js +2 -2
  226. package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.js.map +1 -1
  227. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts.map +1 -1
  228. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js.map +1 -1
  229. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.d.ts.map +1 -1
  230. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js.map +1 -1
  231. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts.map +1 -1
  232. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +1 -1
  233. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -1
  234. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js +1 -7
  235. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -1
  236. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.d.ts.map +1 -1
  237. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js +1 -7
  238. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js.map +1 -1
  239. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts.map +1 -1
  240. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js +1 -7
  241. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js.map +1 -1
  242. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.d.ts +18 -0
  243. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.d.ts.map +1 -1
  244. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.js +204 -14
  245. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.js.map +1 -1
  246. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +6 -1
  247. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
  248. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +486 -82
  249. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
  250. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.d.ts.map +1 -1
  251. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js +17 -1
  252. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js.map +1 -1
  253. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.d.ts.map +1 -1
  254. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.js +12 -2
  255. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.js.map +1 -1
  256. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
  257. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js +99 -30
  258. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
  259. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +1 -0
  260. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -1
  261. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +23 -15
  262. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -1
  263. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts +7 -0
  264. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts.map +1 -1
  265. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js +90 -24
  266. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js.map +1 -1
  267. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts +2 -1
  268. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts.map +1 -1
  269. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js +57 -11
  270. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js.map +1 -1
  271. package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.d.ts +9 -0
  272. package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.d.ts.map +1 -1
  273. package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.js +100 -14
  274. package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.js.map +1 -1
  275. package/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -1
  276. package/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -1
  277. package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.d.ts +2 -0
  278. package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.d.ts.map +1 -1
  279. package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.js +104 -8
  280. package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.js.map +1 -1
  281. package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.d.ts +1 -0
  282. package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.d.ts.map +1 -1
  283. package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.js +79 -15
  284. package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.js.map +1 -1
  285. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts +3 -0
  286. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts.map +1 -1
  287. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js +15 -0
  288. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js.map +1 -1
  289. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts +6 -1
  290. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
  291. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +311 -93
  292. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
  293. package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.d.ts +4 -0
  294. package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.d.ts.map +1 -0
  295. package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.js +33 -0
  296. package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.js.map +1 -0
  297. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
  298. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
  299. package/out/src/services/classifyOutputUtxo.d.ts.map +1 -1
  300. package/out/src/services/classifyOutputUtxo.js +19 -10
  301. package/out/src/services/classifyOutputUtxo.js.map +1 -1
  302. package/out/src/services/fiatRateValidation.d.ts +12 -0
  303. package/out/src/services/fiatRateValidation.d.ts.map +1 -0
  304. package/out/src/services/fiatRateValidation.js +138 -0
  305. package/out/src/services/fiatRateValidation.js.map +1 -0
  306. package/out/src/services/getCanonicalMerklePath.d.ts +15 -0
  307. package/out/src/services/getCanonicalMerklePath.d.ts.map +1 -0
  308. package/out/src/services/getCanonicalMerklePath.js +90 -0
  309. package/out/src/services/getCanonicalMerklePath.js.map +1 -0
  310. package/out/src/services/providers/ARC.d.ts +3 -16
  311. package/out/src/services/providers/ARC.d.ts.map +1 -1
  312. package/out/src/services/providers/ARC.js +36 -37
  313. package/out/src/services/providers/ARC.js.map +1 -1
  314. package/out/src/services/providers/ArcSSEClient.d.ts +25 -19
  315. package/out/src/services/providers/ArcSSEClient.d.ts.map +1 -1
  316. package/out/src/services/providers/ArcSSEClient.js +352 -85
  317. package/out/src/services/providers/ArcSSEClient.js.map +1 -1
  318. package/out/src/services/providers/Arcade.d.ts +1 -0
  319. package/out/src/services/providers/Arcade.d.ts.map +1 -1
  320. package/out/src/services/providers/Arcade.js +56 -41
  321. package/out/src/services/providers/Arcade.js.map +1 -1
  322. package/out/src/services/providers/Bitails.d.ts +3 -0
  323. package/out/src/services/providers/Bitails.d.ts.map +1 -1
  324. package/out/src/services/providers/Bitails.js +79 -12
  325. package/out/src/services/providers/Bitails.js.map +1 -1
  326. package/out/src/services/providers/SdkWhatsOnChain.d.ts +8 -2
  327. package/out/src/services/providers/SdkWhatsOnChain.d.ts.map +1 -1
  328. package/out/src/services/providers/SdkWhatsOnChain.js +83 -10
  329. package/out/src/services/providers/SdkWhatsOnChain.js.map +1 -1
  330. package/out/src/services/providers/WhatsOnChain.d.ts +3 -0
  331. package/out/src/services/providers/WhatsOnChain.d.ts.map +1 -1
  332. package/out/src/services/providers/WhatsOnChain.js +221 -69
  333. package/out/src/services/providers/WhatsOnChain.js.map +1 -1
  334. package/out/src/services/providers/arcProviderConfig.d.ts +27 -0
  335. package/out/src/services/providers/arcProviderConfig.d.ts.map +1 -0
  336. package/out/src/services/providers/arcProviderConfig.js +83 -0
  337. package/out/src/services/providers/arcProviderConfig.js.map +1 -0
  338. package/out/src/services/providers/arcTxDataValidation.d.ts +4 -0
  339. package/out/src/services/providers/arcTxDataValidation.d.ts.map +1 -0
  340. package/out/src/services/providers/arcTxDataValidation.js +92 -0
  341. package/out/src/services/providers/arcTxDataValidation.js.map +1 -0
  342. package/out/src/services/providers/exchangeRates.d.ts +3 -3
  343. package/out/src/services/providers/exchangeRates.d.ts.map +1 -1
  344. package/out/src/services/providers/exchangeRates.js +153 -226
  345. package/out/src/services/providers/exchangeRates.js.map +1 -1
  346. package/out/src/services/providers/getBeefForTxid.d.ts.map +1 -1
  347. package/out/src/services/providers/getBeefForTxid.js.map +1 -1
  348. package/out/src/services/providers/whatsOnChainHelpers.d.ts +2 -2
  349. package/out/src/services/providers/whatsOnChainHelpers.d.ts.map +1 -1
  350. package/out/src/services/providers/whatsOnChainHelpers.js +11 -8
  351. package/out/src/services/providers/whatsOnChainHelpers.js.map +1 -1
  352. package/out/src/services/validateMerklePathResult.d.ts +30 -0
  353. package/out/src/services/validateMerklePathResult.d.ts.map +1 -0
  354. package/out/src/services/validateMerklePathResult.js +272 -0
  355. package/out/src/services/validateMerklePathResult.js.map +1 -0
  356. package/out/src/services/validatePostBeefResult.d.ts +17 -0
  357. package/out/src/services/validatePostBeefResult.d.ts.map +1 -0
  358. package/out/src/services/validatePostBeefResult.js +334 -0
  359. package/out/src/services/validatePostBeefResult.js.map +1 -0
  360. package/out/src/services/validateRawTxResult.d.ts +6 -0
  361. package/out/src/services/validateRawTxResult.d.ts.map +1 -0
  362. package/out/src/services/validateRawTxResult.js +77 -0
  363. package/out/src/services/validateRawTxResult.js.map +1 -0
  364. package/out/src/services/validateScriptHashHistoryResult.d.ts +5 -0
  365. package/out/src/services/validateScriptHashHistoryResult.d.ts.map +1 -0
  366. package/out/src/services/validateScriptHashHistoryResult.js +99 -0
  367. package/out/src/services/validateScriptHashHistoryResult.js.map +1 -0
  368. package/out/src/services/validateStatusForTxidsResult.d.ts +8 -0
  369. package/out/src/services/validateStatusForTxidsResult.d.ts.map +1 -0
  370. package/out/src/services/validateStatusForTxidsResult.js +181 -0
  371. package/out/src/services/validateStatusForTxidsResult.js.map +1 -0
  372. package/out/src/services/validateUtxoStatusResult.d.ts +6 -0
  373. package/out/src/services/validateUtxoStatusResult.d.ts.map +1 -0
  374. package/out/src/services/validateUtxoStatusResult.js +126 -0
  375. package/out/src/services/validateUtxoStatusResult.js.map +1 -0
  376. package/out/src/signer/actionBatch/ActionBatchPlanner.d.ts +3 -2
  377. package/out/src/signer/actionBatch/ActionBatchPlanner.d.ts.map +1 -1
  378. package/out/src/signer/actionBatch/ActionBatchPlanner.js +4 -3
  379. package/out/src/signer/actionBatch/ActionBatchPlanner.js.map +1 -1
  380. package/out/src/signer/actionBatch/ActionBatchWorkspace.d.ts +6 -5
  381. package/out/src/signer/actionBatch/ActionBatchWorkspace.d.ts.map +1 -1
  382. package/out/src/signer/actionBatch/ActionBatchWorkspace.js +70 -76
  383. package/out/src/signer/actionBatch/ActionBatchWorkspace.js.map +1 -1
  384. package/out/src/signer/actionBatch/actionBatchBootstrap.d.ts +2 -2
  385. package/out/src/signer/actionBatch/actionBatchBootstrap.d.ts.map +1 -1
  386. package/out/src/signer/actionBatch/actionBatchBootstrap.js +3 -3
  387. package/out/src/signer/actionBatch/actionBatchBootstrap.js.map +1 -1
  388. package/out/src/signer/methods/acquireDirectCertificate.d.ts +3 -2
  389. package/out/src/signer/methods/acquireDirectCertificate.d.ts.map +1 -1
  390. package/out/src/signer/methods/acquireDirectCertificate.js.map +1 -1
  391. package/out/src/signer/methods/buildSignableTransaction.d.ts +6 -5
  392. package/out/src/signer/methods/buildSignableTransaction.d.ts.map +1 -1
  393. package/out/src/signer/methods/buildSignableTransaction.js +6 -11
  394. package/out/src/signer/methods/buildSignableTransaction.js.map +1 -1
  395. package/out/src/signer/methods/createAction.d.ts +4 -3
  396. package/out/src/signer/methods/createAction.d.ts.map +1 -1
  397. package/out/src/signer/methods/createAction.js +4 -2
  398. package/out/src/signer/methods/createAction.js.map +1 -1
  399. package/out/src/signer/methods/createNoSendExpiryAction.d.ts +3 -3
  400. package/out/src/signer/methods/createNoSendExpiryAction.d.ts.map +1 -1
  401. package/out/src/signer/methods/createNoSendExpiryAction.js +9 -4
  402. package/out/src/signer/methods/createNoSendExpiryAction.js.map +1 -1
  403. package/out/src/signer/methods/internalizeAction.d.ts.map +1 -1
  404. package/out/src/signer/methods/internalizeAction.js +2 -2
  405. package/out/src/signer/methods/internalizeAction.js.map +1 -1
  406. package/out/src/signer/methods/proveCertificate.d.ts +3 -2
  407. package/out/src/signer/methods/proveCertificate.d.ts.map +1 -1
  408. package/out/src/signer/methods/proveCertificate.js.map +1 -1
  409. package/out/src/signer/methods/signAction.d.ts.map +1 -1
  410. package/out/src/signer/methods/signAction.js +3 -2
  411. package/out/src/signer/methods/signAction.js.map +1 -1
  412. package/out/src/signer/methods/verifyUnlockScripts.d.ts.map +1 -1
  413. package/out/src/signer/methods/verifyUnlockScripts.js +12 -17
  414. package/out/src/signer/methods/verifyUnlockScripts.js.map +1 -1
  415. package/out/src/storage/StorageIdb.d.ts +5 -3
  416. package/out/src/storage/StorageIdb.d.ts.map +1 -1
  417. package/out/src/storage/StorageIdb.js +15 -20
  418. package/out/src/storage/StorageIdb.js.map +1 -1
  419. package/out/src/storage/StorageKnex.d.ts +5 -3
  420. package/out/src/storage/StorageKnex.d.ts.map +1 -1
  421. package/out/src/storage/StorageKnex.js +143 -93
  422. package/out/src/storage/StorageKnex.js.map +1 -1
  423. package/out/src/storage/StorageProvider.d.ts +19 -9
  424. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  425. package/out/src/storage/StorageProvider.js +229 -145
  426. package/out/src/storage/StorageProvider.js.map +1 -1
  427. package/out/src/storage/StorageReader.d.ts +1 -1
  428. package/out/src/storage/StorageReader.d.ts.map +1 -1
  429. package/out/src/storage/StorageReader.js +9 -42
  430. package/out/src/storage/StorageReader.js.map +1 -1
  431. package/out/src/storage/StorageReaderWriter.d.ts +1 -0
  432. package/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
  433. package/out/src/storage/StorageReaderWriter.js +37 -36
  434. package/out/src/storage/StorageReaderWriter.js.map +1 -1
  435. package/out/src/storage/StorageSyncReader.d.ts +1 -1
  436. package/out/src/storage/StorageSyncReader.d.ts.map +1 -1
  437. package/out/src/storage/StorageSyncReader.js +3 -36
  438. package/out/src/storage/StorageSyncReader.js.map +1 -1
  439. package/out/src/storage/WalletStorageManager.d.ts +8 -7
  440. package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
  441. package/out/src/storage/WalletStorageManager.js +38 -65
  442. package/out/src/storage/WalletStorageManager.js.map +1 -1
  443. package/out/src/storage/adminServer/adminServer.d.ts +1 -1
  444. package/out/src/storage/adminServer/adminServer.d.ts.map +1 -1
  445. package/out/src/storage/adminServer/adminServer.js +16 -44
  446. package/out/src/storage/adminServer/adminServer.js.map +1 -1
  447. package/out/src/storage/methods/ListActionsSpecOp.d.ts +2 -2
  448. package/out/src/storage/methods/ListActionsSpecOp.d.ts.map +1 -1
  449. package/out/src/storage/methods/ListActionsSpecOp.js.map +1 -1
  450. package/out/src/storage/methods/ListOutputsSpecOp.d.ts +7 -4
  451. package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
  452. package/out/src/storage/methods/ListOutputsSpecOp.js +1 -0
  453. package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
  454. package/out/src/storage/methods/actionBatch.d.ts.map +1 -1
  455. package/out/src/storage/methods/actionBatch.js +3 -2
  456. package/out/src/storage/methods/actionBatch.js.map +1 -1
  457. package/out/src/storage/methods/actionBatchBlobs.d.ts +2 -0
  458. package/out/src/storage/methods/actionBatchBlobs.d.ts.map +1 -1
  459. package/out/src/storage/methods/actionBatchBlobs.js +40 -22
  460. package/out/src/storage/methods/actionBatchBlobs.js.map +1 -1
  461. package/out/src/storage/methods/actionBatchValidation.d.ts.map +1 -1
  462. package/out/src/storage/methods/actionBatchValidation.js +22 -30
  463. package/out/src/storage/methods/actionBatchValidation.js.map +1 -1
  464. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts +7 -2
  465. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -1
  466. package/out/src/storage/methods/attemptToPostReqsToNetwork.js +57 -44
  467. package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
  468. package/out/src/storage/methods/createAction.d.ts +7 -6
  469. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  470. package/out/src/storage/methods/createAction.js +7 -5
  471. package/out/src/storage/methods/createAction.js.map +1 -1
  472. package/out/src/storage/methods/generateChange.d.ts.map +1 -1
  473. package/out/src/storage/methods/generateChange.js +12 -11
  474. package/out/src/storage/methods/generateChange.js.map +1 -1
  475. package/out/src/storage/methods/getBeefForTransaction.js +5 -7
  476. package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
  477. package/out/src/storage/methods/internalizeAction.d.ts +3 -3
  478. package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
  479. package/out/src/storage/methods/internalizeAction.js +134 -129
  480. package/out/src/storage/methods/internalizeAction.js.map +1 -1
  481. package/out/src/storage/methods/listActionsIdb.d.ts +3 -2
  482. package/out/src/storage/methods/listActionsIdb.d.ts.map +1 -1
  483. package/out/src/storage/methods/listActionsIdb.js +2 -2
  484. package/out/src/storage/methods/listActionsIdb.js.map +1 -1
  485. package/out/src/storage/methods/listActionsKnex.d.ts +3 -2
  486. package/out/src/storage/methods/listActionsKnex.d.ts.map +1 -1
  487. package/out/src/storage/methods/listActionsKnex.js +10 -9
  488. package/out/src/storage/methods/listActionsKnex.js.map +1 -1
  489. package/out/src/storage/methods/listCertificates.d.ts +3 -2
  490. package/out/src/storage/methods/listCertificates.d.ts.map +1 -1
  491. package/out/src/storage/methods/listCertificates.js.map +1 -1
  492. package/out/src/storage/methods/listOutputsIdb.d.ts +3 -2
  493. package/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -1
  494. package/out/src/storage/methods/listOutputsIdb.js +11 -11
  495. package/out/src/storage/methods/listOutputsIdb.js.map +1 -1
  496. package/out/src/storage/methods/listOutputsKnex.d.ts +3 -2
  497. package/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -1
  498. package/out/src/storage/methods/listOutputsKnex.js +15 -23
  499. package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
  500. package/out/src/storage/methods/noSendExpiry.d.ts +3 -3
  501. package/out/src/storage/methods/noSendExpiry.d.ts.map +1 -1
  502. package/out/src/storage/methods/noSendExpiry.js +10 -8
  503. package/out/src/storage/methods/noSendExpiry.js.map +1 -1
  504. package/out/src/storage/methods/preparedBeef.d.ts.map +1 -1
  505. package/out/src/storage/methods/preparedBeef.js +13 -14
  506. package/out/src/storage/methods/preparedBeef.js.map +1 -1
  507. package/out/src/storage/methods/processAction.d.ts.map +1 -1
  508. package/out/src/storage/methods/processAction.js +37 -6
  509. package/out/src/storage/methods/processAction.js.map +1 -1
  510. package/out/src/storage/methods/reconcileFailedTransactionInputs.d.ts +1 -1
  511. package/out/src/storage/methods/reconcileFailedTransactionInputs.d.ts.map +1 -1
  512. package/out/src/storage/methods/reconcileFailedTransactionInputs.js.map +1 -1
  513. package/out/src/storage/methods/reviewStatusIdb.d.ts +1 -1
  514. package/out/src/storage/methods/reviewStatusIdb.d.ts.map +1 -1
  515. package/out/src/storage/methods/reviewStatusIdb.js.map +1 -1
  516. package/out/src/storage/methods/reviewUtxoOutputs.d.ts +1 -0
  517. package/out/src/storage/methods/reviewUtxoOutputs.d.ts.map +1 -1
  518. package/out/src/storage/methods/reviewUtxoOutputs.js +51 -4
  519. package/out/src/storage/methods/reviewUtxoOutputs.js.map +1 -1
  520. package/out/src/storage/methods/validateSyncProof.d.ts.map +1 -1
  521. package/out/src/storage/methods/validateSyncProof.js +3 -3
  522. package/out/src/storage/methods/validateSyncProof.js.map +1 -1
  523. package/out/src/storage/portable/index.d.ts.map +1 -1
  524. package/out/src/storage/portable/index.js +21 -13
  525. package/out/src/storage/portable/index.js.map +1 -1
  526. package/out/src/storage/remoting/BinaryJson.d.ts +11 -0
  527. package/out/src/storage/remoting/BinaryJson.d.ts.map +1 -1
  528. package/out/src/storage/remoting/BinaryJson.js +37 -0
  529. package/out/src/storage/remoting/BinaryJson.js.map +1 -1
  530. package/out/src/storage/remoting/KnexSessionManager.d.ts +26 -2
  531. package/out/src/storage/remoting/KnexSessionManager.d.ts.map +1 -1
  532. package/out/src/storage/remoting/KnexSessionManager.js +222 -30
  533. package/out/src/storage/remoting/KnexSessionManager.js.map +1 -1
  534. package/out/src/storage/remoting/KnexSyncTransferStore.d.ts.map +1 -1
  535. package/out/src/storage/remoting/KnexSyncTransferStore.js +3 -4
  536. package/out/src/storage/remoting/KnexSyncTransferStore.js.map +1 -1
  537. package/out/src/storage/remoting/StorageClient.d.ts +6 -1
  538. package/out/src/storage/remoting/StorageClient.d.ts.map +1 -1
  539. package/out/src/storage/remoting/StorageClient.js +63 -6
  540. package/out/src/storage/remoting/StorageClient.js.map +1 -1
  541. package/out/src/storage/remoting/StorageClientBase.d.ts +23 -6
  542. package/out/src/storage/remoting/StorageClientBase.d.ts.map +1 -1
  543. package/out/src/storage/remoting/StorageClientBase.js +148 -19
  544. package/out/src/storage/remoting/StorageClientBase.js.map +1 -1
  545. package/out/src/storage/remoting/StorageMobile.d.ts +5 -0
  546. package/out/src/storage/remoting/StorageMobile.d.ts.map +1 -1
  547. package/out/src/storage/remoting/StorageMobile.js +11 -9
  548. package/out/src/storage/remoting/StorageMobile.js.map +1 -1
  549. package/out/src/storage/remoting/StorageServer.d.ts +5 -1
  550. package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
  551. package/out/src/storage/remoting/StorageServer.js +95 -19
  552. package/out/src/storage/remoting/StorageServer.js.map +1 -1
  553. package/out/src/storage/remoting/SyncTransfer.d.ts.map +1 -1
  554. package/out/src/storage/remoting/SyncTransfer.js +3 -2
  555. package/out/src/storage/remoting/SyncTransfer.js.map +1 -1
  556. package/out/src/storage/schema/KnexMigrations.d.ts +1 -0
  557. package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
  558. package/out/src/storage/schema/KnexMigrations.js +28 -6
  559. package/out/src/storage/schema/KnexMigrations.js.map +1 -1
  560. package/out/src/storage/schema/entities/EntityOutput.d.ts.map +1 -1
  561. package/out/src/storage/schema/entities/EntityOutput.js +11 -4
  562. package/out/src/storage/schema/entities/EntityOutput.js.map +1 -1
  563. package/out/src/storage/schema/entities/EntityProvenTx.d.ts +2 -1
  564. package/out/src/storage/schema/entities/EntityProvenTx.d.ts.map +1 -1
  565. package/out/src/storage/schema/entities/EntityProvenTx.js +93 -39
  566. package/out/src/storage/schema/entities/EntityProvenTx.js.map +1 -1
  567. package/out/src/storage/schema/entities/EntityProvenTxReq.js +1 -1
  568. package/out/src/storage/schema/entities/EntityProvenTxReq.js.map +1 -1
  569. package/out/src/storage/schema/entities/EntitySyncState.js +1 -1
  570. package/out/src/storage/schema/entities/EntitySyncState.js.map +1 -1
  571. package/out/src/storage/schema/tables/TableCertificate.d.ts +1 -1
  572. package/out/src/storage/schema/tables/TableCertificate.d.ts.map +1 -1
  573. package/out/src/storage/schema/tables/TableCertificateField.d.ts +1 -1
  574. package/out/src/storage/schema/tables/TableCertificateField.d.ts.map +1 -1
  575. package/out/src/storage/schema/tables/TableCommission.d.ts +1 -1
  576. package/out/src/storage/schema/tables/TableCommission.d.ts.map +1 -1
  577. package/out/src/storage/schema/tables/TableMonitorEvent.d.ts +1 -1
  578. package/out/src/storage/schema/tables/TableMonitorEvent.d.ts.map +1 -1
  579. package/out/src/storage/schema/tables/TableOutput.d.ts +1 -1
  580. package/out/src/storage/schema/tables/TableOutput.d.ts.map +1 -1
  581. package/out/src/storage/schema/tables/TableOutputBasket.d.ts +1 -1
  582. package/out/src/storage/schema/tables/TableOutputBasket.d.ts.map +1 -1
  583. package/out/src/storage/schema/tables/TableOutputTag.d.ts +1 -1
  584. package/out/src/storage/schema/tables/TableOutputTag.d.ts.map +1 -1
  585. package/out/src/storage/schema/tables/TableOutputTagMap.d.ts +1 -1
  586. package/out/src/storage/schema/tables/TableOutputTagMap.d.ts.map +1 -1
  587. package/out/src/storage/schema/tables/TableProvenTx.d.ts +1 -1
  588. package/out/src/storage/schema/tables/TableProvenTx.d.ts.map +1 -1
  589. package/out/src/storage/schema/tables/TableProvenTxReq.d.ts +1 -1
  590. package/out/src/storage/schema/tables/TableProvenTxReq.d.ts.map +1 -1
  591. package/out/src/storage/schema/tables/TableSettings.d.ts +1 -1
  592. package/out/src/storage/schema/tables/TableSettings.d.ts.map +1 -1
  593. package/out/src/storage/schema/tables/TableSyncState.d.ts +1 -1
  594. package/out/src/storage/schema/tables/TableSyncState.d.ts.map +1 -1
  595. package/out/src/storage/schema/tables/TableTransaction.d.ts +1 -1
  596. package/out/src/storage/schema/tables/TableTransaction.d.ts.map +1 -1
  597. package/out/src/storage/schema/tables/TableTransaction.js.map +1 -1
  598. package/out/src/storage/schema/tables/TableTxLabel.d.ts +1 -1
  599. package/out/src/storage/schema/tables/TableTxLabel.d.ts.map +1 -1
  600. package/out/src/storage/schema/tables/TableTxLabelMap.d.ts +1 -1
  601. package/out/src/storage/schema/tables/TableTxLabelMap.d.ts.map +1 -1
  602. package/out/src/storage/schema/tables/TableUser.d.ts +1 -1
  603. package/out/src/storage/schema/tables/TableUser.d.ts.map +1 -1
  604. package/out/src/storage/sync/StorageMySQLDojoReader.d.ts.map +1 -1
  605. package/out/src/storage/sync/StorageMySQLDojoReader.js +8 -7
  606. package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -1
  607. package/out/src/utility/actionBatchDigest.d.ts.map +1 -1
  608. package/out/src/utility/actionBatchDigest.js +9 -7
  609. package/out/src/utility/actionBatchDigest.js.map +1 -1
  610. package/out/src/utility/actionBatchPack.d.ts.map +1 -1
  611. package/out/src/utility/actionBatchPack.js +7 -12
  612. package/out/src/utility/actionBatchPack.js.map +1 -1
  613. package/out/src/utility/brc153ReferenceLabels.d.ts.map +1 -1
  614. package/out/src/utility/brc153ReferenceLabels.js +4 -4
  615. package/out/src/utility/brc153ReferenceLabels.js.map +1 -1
  616. package/out/src/utility/brc177NoSendExpiry.d.ts +2 -2
  617. package/out/src/utility/brc177NoSendExpiry.d.ts.map +1 -1
  618. package/out/src/utility/canonicalizeAtomicBeef.js +2 -2
  619. package/out/src/utility/canonicalizeAtomicBeef.js.map +1 -1
  620. package/out/src/utility/exactActionSpend.d.ts +11 -0
  621. package/out/src/utility/exactActionSpend.d.ts.map +1 -0
  622. package/out/src/utility/exactActionSpend.js +11 -0
  623. package/out/src/utility/exactActionSpend.js.map +1 -0
  624. package/out/src/utility/identityUtils.d.ts +44 -4
  625. package/out/src/utility/identityUtils.d.ts.map +1 -1
  626. package/out/src/utility/identityUtils.js +376 -61
  627. package/out/src/utility/identityUtils.js.map +1 -1
  628. package/out/src/utility/parseTxScriptOffsets.d.ts.map +1 -1
  629. package/out/src/utility/parseTxScriptOffsets.js +1 -19
  630. package/out/src/utility/parseTxScriptOffsets.js.map +1 -1
  631. package/out/src/utility/tscProofToMerklePath.d.ts.map +1 -1
  632. package/out/src/utility/tscProofToMerklePath.js +35 -4
  633. package/out/src/utility/tscProofToMerklePath.js.map +1 -1
  634. package/out/src/utility/utilityHelpers.d.ts.map +1 -1
  635. package/out/src/utility/utilityHelpers.js +8 -6
  636. package/out/src/utility/utilityHelpers.js.map +1 -1
  637. package/out/src/utility/utilityHelpers.noBuffer.d.ts.map +1 -1
  638. package/out/src/utility/utilityHelpers.noBuffer.js +6 -6
  639. package/out/src/utility/utilityHelpers.noBuffer.js.map +1 -1
  640. package/out/src/utility/verifyOverlayOutput.d.ts +12 -0
  641. package/out/src/utility/verifyOverlayOutput.d.ts.map +1 -0
  642. package/out/src/utility/verifyOverlayOutput.js +22 -0
  643. package/out/src/utility/verifyOverlayOutput.js.map +1 -0
  644. package/out/src/utility/walletResultGuards.d.ts +14 -0
  645. package/out/src/utility/walletResultGuards.d.ts.map +1 -0
  646. package/out/src/utility/walletResultGuards.js +28 -0
  647. package/out/src/utility/walletResultGuards.js.map +1 -0
  648. package/out/src/wab-client/WABClient.d.ts +3 -17
  649. package/out/src/wab-client/WABClient.d.ts.map +1 -1
  650. package/out/src/wab-client/WABClient.js +30 -14
  651. package/out/src/wab-client/WABClient.js.map +1 -1
  652. package/out/src/wab-client/WABResponseValidation.d.ts +48 -0
  653. package/out/src/wab-client/WABResponseValidation.d.ts.map +1 -0
  654. package/out/src/wab-client/WABResponseValidation.js +321 -0
  655. package/out/src/wab-client/WABResponseValidation.js.map +1 -0
  656. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts.map +1 -1
  657. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js +3 -2
  658. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js.map +1 -1
  659. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"BulkFileDataManager.js","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFileDataManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BulkFileDataManager.js","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFileDataManager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"BulkFileDataReader.d.ts","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFileDataReader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAE3C,qBAAa,kBAAkB;IAC7B,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAA;IACrC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAA;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,UAAU,EAAE,MAAM,CAAA;IAElB,YAAa,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAKnF;IAED;;;;;;OAMG;YACW,kBAAkB;IAUhC;;OAEG;IACG,IAAI,IAAK,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAmB7C;CACF"}
1
+ {"version":3,"file":"BulkFileDataReader.d.ts","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFileDataReader.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAE3C,qBAAa,kBAAkB;IAC7B,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAA;IACrC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAA;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,UAAU,EAAE,MAAM,CAAA;IAElB,YAAY,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAwBlF;IAED;;;;;;OAMG;YACW,kBAAkB;IAUhC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAqB5C;CACF"}
@@ -9,8 +9,24 @@ class BulkFileDataReader {
9
9
  maxBufferSize;
10
10
  nextHeight;
11
11
  constructor(manager, range, maxBufferSize) {
12
+ if (range == null || typeof range !== 'object')
13
+ throw new sdk_1.WERR_INVALID_PARAMETER('range', 'a HeightRange');
14
+ if (!Number.isSafeInteger(range.minHeight) ||
15
+ range.minHeight < 0 ||
16
+ range.minHeight > 0x7fffffff ||
17
+ !Number.isSafeInteger(range.maxHeight) ||
18
+ range.maxHeight < -1 ||
19
+ range.maxHeight > 0x7fffffff) {
20
+ throw new sdk_1.WERR_INVALID_PARAMETER('range', 'supported safe-integer block heights');
21
+ }
22
+ if (!Number.isSafeInteger(maxBufferSize) ||
23
+ maxBufferSize < 80 ||
24
+ maxBufferSize > 100_000 * 80 ||
25
+ maxBufferSize % 80 !== 0) {
26
+ throw new sdk_1.WERR_INVALID_PARAMETER('maxBufferSize', 'a multiple of 80 bytes from 80 through 8000000');
27
+ }
12
28
  this.manager = manager;
13
- this.range = range;
29
+ this.range = new HeightRange_1.HeightRange(range.minHeight, range.maxHeight);
14
30
  this.maxBufferSize = maxBufferSize;
15
31
  this.nextHeight = range.minHeight;
16
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BulkFileDataReader.js","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFileDataReader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BulkFileDataReader.js","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFileDataReader.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"BulkFileDataValidator.worker.d.ts","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,6BAA6B,EAC7B,4BAA4B,EAC5B,wBAAwB,EACzB,MAAM,iCAAiC,CAAA;AAGxC,MAAM,WAAW,kCAAkC;IACjD,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,IAAI,CAAC,6BAA6B,EAAE,MAAM,CAAC,GAAG;QAAE,IAAI,EAAE,WAAW,CAAA;KAAE,CAAA;CAC7E;AAED,UAAU,aAAa;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,EAAE,EAAE,IAAI,CAAA;IACR,MAAM,EAAE,IAAI,CAAC,4BAA4B,EAAE,MAAM,CAAC,GAAG;QAAE,IAAI,EAAE,WAAW,CAAA;KAAE,CAAA;CAC3E;AAED,UAAU,aAAa;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,EAAE,EAAE,KAAK,CAAA;IACT,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAA;IACjE,IAAI,EAAE,WAAW,CAAA;CAClB;AAED,MAAM,WAAW,+BAA+B;IAC9C,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,kCAAkC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAA;IAC9G,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAA;CAC1F;AAED,wBAAgB,wCAAwC,CACtD,IAAI,EAAE,IAAI,CAAC,+BAA+B,EAAE,aAAa,CAAC,EAC1D,SAAS,GAAE,wBAA4D,GACtE,CAAC,OAAO,EAAE,kCAAkC,KAAK,OAAO,CAAC,IAAI,CAAC,CAoBhE;AAED,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,+BAA+B,EACrC,SAAS,GAAE,wBAA4D,GACtE,IAAI,CAEN"}
1
+ {"version":3,"file":"BulkFileDataValidator.worker.d.ts","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,6BAA6B,EAC7B,4BAA4B,EAC5B,wBAAwB,EACzB,MAAM,iCAAiC,CAAA;AAGxC,MAAM,WAAW,kCAAkC;IACjD,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,IAAI,CAAC,6BAA6B,EAAE,MAAM,CAAC,GAAG;QAAE,IAAI,EAAE,WAAW,CAAA;KAAE,CAAA;CAC7E;AAED,UAAU,aAAa;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,EAAE,EAAE,IAAI,CAAA;IACR,MAAM,EAAE,IAAI,CAAC,4BAA4B,EAAE,MAAM,CAAC,GAAG;QAAE,IAAI,EAAE,WAAW,CAAA;KAAE,CAAA;CAC3E;AAED,UAAU,aAAa;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,EAAE,EAAE,KAAK,CAAA;IACT,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAA;IACjE,IAAI,EAAE,WAAW,CAAA;CAClB;AAED,MAAM,WAAW,+BAA+B;IAC9C,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,kCAAkC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAA;IAC9G,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,OAAO,CAAA;CAC1F;AAED,wBAAgB,wCAAwC,CACtD,IAAI,EAAE,IAAI,CAAC,+BAA+B,EAAE,aAAa,CAAC,EAC1D,SAAS,GAAE,wBAA4D,GACtE,CAAC,OAAO,EAAE,kCAAkC,KAAK,OAAO,CAAC,IAAI,CAAC,CA8BhE;AAED,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,+BAA+B,EACrC,SAAS,GAAE,wBAA4D,GACtE,IAAI,CAEN"}
@@ -6,17 +6,27 @@ const node_worker_threads_1 = require("node:worker_threads");
6
6
  const InlineBulkFileDataValidator_1 = require("./InlineBulkFileDataValidator");
7
7
  function createBulkFileDataValidatorWorkerHandler(port, validator = new InlineBulkFileDataValidator_1.InlineBulkFileDataValidator()) {
8
8
  return async ({ id, request }) => {
9
+ if (!Number.isSafeInteger(id) || id < 1 || !(request?.data instanceof ArrayBuffer)) {
10
+ throw new Error('Bulk-header validator worker received an invalid request envelope.');
11
+ }
9
12
  const data = new Uint8Array(request.data);
10
13
  try {
11
14
  const result = await validator.validate({ ...request, data });
12
- const resultBuffer = result.data.buffer;
15
+ const normalized = (0, InlineBulkFileDataValidator_1.normalizeBulkFileDataValidationRequest)({ ...request, data: result.data });
16
+ const resultBuffer = normalized.data.buffer;
13
17
  port.postMessage({ id, ok: true, result: { ...result, data: resultBuffer } }, [resultBuffer]);
14
18
  }
15
19
  catch (error) {
16
20
  port.postMessage({
17
21
  id,
18
22
  ok: false,
19
- error: error instanceof Error ? { name: error.name, message: error.message, stack: error.stack } : String(error),
23
+ error: error instanceof Error
24
+ ? {
25
+ name: error.name.slice(0, 128),
26
+ message: error.message.slice(0, 4096),
27
+ stack: error.stack?.slice(0, 8192)
28
+ }
29
+ : String(error).slice(0, 4096),
20
30
  data: data.buffer
21
31
  }, [data.buffer]);
22
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BulkFileDataValidator.worker.js","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.ts"],"names":[],"mappings":";;;;AAAA,6DAAgD;AAMhD,+EAA2E;AAyB3E,kDACE,IAA0D,EAC1D,SAAS,GAA6B,IAAI,yDAA2B,EAAE;IAEvE,OAAO,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC/B,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACzC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;YAC7D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,MAAqB,CAAA;YACtD,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;QAC/F,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CACd;gBACE,EAAE;gBACF,EAAE,EAAE,KAAK;gBACT,KAAK,EACH,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC3G,IAAI,EAAE,IAAI,CAAC,MAAqB;aACjC,EACD,CAAC,IAAI,CAAC,MAAqB,CAAC,CAC7B,CAAA;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,2CACE,IAAqC,EACrC,SAAS,GAA6B,IAAI,yDAA2B,EAAE;IAEvE,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,wCAAwC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAA;AAC/E,CAAC;AAED,IAAI,gCAAU,IAAI,IAAI;IAAE,iCAAiC,CAAC,gCAAU,CAAC,CAAA"}
1
+ {"version":3,"file":"BulkFileDataValidator.worker.js","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.ts"],"names":[],"mappings":";;;;AAAA,6DAAgD;AAMhD,+EAAmH;AAyBnH,kDACE,IAA0D,EAC1D,SAAS,GAA6B,IAAI,yDAA2B,EAAE;IAEvE,OAAO,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC/B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,YAAY,WAAW,CAAC,EAAE,CAAC;YACnF,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;QACvF,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACzC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;YAC7D,MAAM,UAAU,GAAG,IAAA,oEAAsC,EAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;YAC5F,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC,MAAqB,CAAA;YAC1D,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;QAC/F,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,WAAW,CACd;gBACE,EAAE;gBACF,EAAE,EAAE,KAAK;gBACT,KAAK,EACH,KAAK,YAAY,KAAK;oBACpB,CAAC,CAAC;wBACE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;wBAC9B,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;wBACrC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;qBACnC;oBACH,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;gBAClC,IAAI,EAAE,IAAI,CAAC,MAAqB;aACjC,EACD,CAAC,IAAI,CAAC,MAAqB,CAAC,CAC7B,CAAA;QACH,CAAC;IACH,CAAC,CAAA;AACH,CAAC;AAED,2CACE,IAAqC,EACrC,SAAS,GAA6B,IAAI,yDAA2B,EAAE;IAEvE,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,wCAAwC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAA;AAC/E,CAAC;AAED,IAAI,gCAAU,IAAI,IAAI;IAAE,iCAAiC,CAAC,gCAAU,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"BulkFilesReader.d.ts","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFilesReader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BulkFilesReader.d.ts","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/util/BulkFilesReader.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,34 @@ exports.BulkFilesReaderStorage = exports.BulkFilesReaderFs = exports.BulkFilesRe
4
4
  const HeightRange_1 = require("./HeightRange");
5
5
  const blockHeaderUtilities_1 = require("./blockHeaderUtilities");
6
6
  const utilityHelpers_noBuffer_1 = require("../../../../utility/utilityHelpers.noBuffer");
7
- const sdk_1 = require("@bsv/sdk");
8
- const sdk_2 = require("../../../../sdk");
7
+ const Hash_1 = require("@bsv/sdk/primitives/Hash");
8
+ const sdk_1 = require("../../../../sdk");
9
9
  const BulkHeaderFile_1 = require("./BulkHeaderFile");
10
+ const BulkFileDataManager_1 = require("./BulkFileDataManager");
11
+ const MAX_LOCAL_BULK_MANIFEST_BYTES = 16 * 1024 * 1024;
12
+ const MAX_READER_FILES = 10_000;
13
+ const MAX_READER_BUFFER_BYTES = 100_000 * 80;
14
+ const SAFE_LOCAL_FILE_NAME = /^[A-Za-z0-9][A-Za-z0-9._~-]*$/;
15
+ function validateLocalFileName(fileName, name) {
16
+ if (typeof fileName !== 'string' ||
17
+ fileName.length === 0 ||
18
+ fileName.length > 255 ||
19
+ !SAFE_LOCAL_FILE_NAME.test(fileName) ||
20
+ fileName === '.' ||
21
+ fileName === '..') {
22
+ throw new sdk_1.WERR_INVALID_PARAMETER(name, 'a safe path-free ASCII file name');
23
+ }
24
+ }
25
+ function validateReaderRange(range) {
26
+ if (range == null || typeof range !== 'object')
27
+ throw new sdk_1.WERR_INVALID_PARAMETER('range', 'a HeightRange');
28
+ if (!Number.isSafeInteger(range.minHeight) || range.minHeight < 0 || range.minHeight > 0x7fffffff) {
29
+ throw new sdk_1.WERR_INVALID_PARAMETER('range.minHeight', 'an integer from 0 through 2147483647');
30
+ }
31
+ if (!Number.isSafeInteger(range.maxHeight) || range.maxHeight < -1 || range.maxHeight > 0x7fffffff) {
32
+ throw new sdk_1.WERR_INVALID_PARAMETER('range.maxHeight', 'an integer from -1 through 2147483647');
33
+ }
34
+ }
10
35
  /**
11
36
  * Breaks available bulk headers stored in multiple files into a sequence of buffers with
12
37
  * limited maximum size.
@@ -29,22 +54,33 @@ class BulkFilesReader {
29
54
  */
30
55
  nextHeight;
31
56
  constructor(files, range, maxBufferSize) {
57
+ if (!Array.isArray(files) ||
58
+ files.length > MAX_READER_FILES ||
59
+ Object.keys(files).length !== files.length ||
60
+ files.some(file => !(file instanceof BulkHeaderFile_1.BulkHeaderFile))) {
61
+ throw new sdk_1.WERR_INVALID_PARAMETER('files', `a dense array of at most ${MAX_READER_FILES} bulk-header files`);
62
+ }
32
63
  this.files = files;
33
64
  this.range = HeightRange_1.HeightRange.empty;
34
65
  this.setRange(range);
35
- this.setMaxBufferSize(maxBufferSize || 400 * 80);
66
+ this.setMaxBufferSize(maxBufferSize ?? 400 * 80);
36
67
  }
37
68
  setRange(range) {
38
69
  this.range = this.heightRange;
39
70
  if (range != null) {
40
- this.range = this.range.intersect(range);
71
+ validateReaderRange(range);
72
+ this.range = this.range.intersect(new HeightRange_1.HeightRange(range.minHeight, range.maxHeight));
41
73
  }
42
74
  this.nextHeight = this.range.isEmpty ? undefined : this.range.minHeight;
43
75
  }
44
76
  setMaxBufferSize(maxBufferSize) {
45
- this.maxBufferSize = maxBufferSize || 400 * 80;
46
- if (this.maxBufferSize % 80 !== 0)
47
- throw new Error('maxBufferSize must be a multiple of 80 bytes.');
77
+ this.maxBufferSize = maxBufferSize ?? 400 * 80;
78
+ if (!Number.isSafeInteger(this.maxBufferSize) ||
79
+ this.maxBufferSize < 80 ||
80
+ this.maxBufferSize > MAX_READER_BUFFER_BYTES ||
81
+ this.maxBufferSize % 80 !== 0) {
82
+ throw new sdk_1.WERR_INVALID_PARAMETER('maxBufferSize', `a multiple of 80 bytes from 80 through ${MAX_READER_BUFFER_BYTES}`);
83
+ }
48
84
  }
49
85
  getLastFile() {
50
86
  return this.files.at(-1);
@@ -62,6 +98,9 @@ class BulkFilesReader {
62
98
  return this.files.find(file => file.firstHeight <= height && file.firstHeight + file.count > height);
63
99
  }
64
100
  async readBufferForHeightOrUndefined(height) {
101
+ if (!Number.isSafeInteger(height) || height < 0 || height > 0x7fffffff) {
102
+ throw new sdk_1.WERR_INVALID_PARAMETER('height', 'an integer from 0 through 2147483647');
103
+ }
65
104
  const file = this.getFileForHeight(height);
66
105
  if (file == null)
67
106
  return undefined;
@@ -105,7 +144,7 @@ class BulkFilesReader {
105
144
  return this.files[0];
106
145
  const i = this.files.indexOf(file);
107
146
  if (i < 0)
108
- throw new sdk_2.WERR_INVALID_PARAMETER('file', 'a valid file from this.files');
147
+ throw new sdk_1.WERR_INVALID_PARAMETER('file', 'a valid file from this.files');
109
148
  return this.files[i + 1];
110
149
  }
111
150
  /**
@@ -118,7 +157,7 @@ class BulkFilesReader {
118
157
  lastHeight = Math.min(lastHeight, this.range.maxHeight);
119
158
  let file = this.getFileForHeight(this.nextHeight);
120
159
  if (file == null)
121
- throw new sdk_2.WERR_INTERNAL('logic error');
160
+ throw new sdk_1.WERR_INTERNAL('logic error');
122
161
  const readRange = new HeightRange_1.HeightRange(this.nextHeight, lastHeight);
123
162
  const buffers = new Uint8Array(readRange.length * 80);
124
163
  let offset = 0;
@@ -142,45 +181,56 @@ class BulkFilesReader {
142
181
  */
143
182
  resetRange(range, maxBufferSize) {
144
183
  this.setRange(range);
145
- this.setMaxBufferSize(maxBufferSize || 400 * 80);
184
+ this.setMaxBufferSize(maxBufferSize ?? 400 * 80);
146
185
  }
147
186
  async validateFiles() {
148
187
  let lastChainWork = '00'.repeat(32);
149
188
  let lastHeaderHash = '00'.repeat(32);
150
- for (const file of this.files) {
189
+ let nextHeight = 0;
190
+ const chain = this.files[0]?.chain;
191
+ for (const [index, file] of this.files.entries()) {
192
+ if (chain == null || file.chain !== chain) {
193
+ throw new sdk_1.WERR_INVALID_OPERATION(`bulk file ${file.fileName} has a missing or inconsistent chain`);
194
+ }
195
+ if (file.firstHeight !== nextHeight) {
196
+ throw new sdk_1.WERR_INVALID_OPERATION(`bulk file ${file.fileName} is not contiguous: expected first height ${nextHeight}, got ${file.firstHeight}`);
197
+ }
151
198
  if (file.prevChainWork !== lastChainWork) {
152
- throw new sdk_2.WERR_INVALID_OPERATION(`prevChainWork mismatch for file ${file.fileName}: expected ${file.prevChainWork}, got ${lastChainWork}`);
199
+ throw new sdk_1.WERR_INVALID_OPERATION(`prevChainWork mismatch for file ${file.fileName}: expected ${file.prevChainWork}, got ${lastChainWork}`);
153
200
  }
154
201
  if (file.prevHash !== lastHeaderHash) {
155
- throw new sdk_2.WERR_INVALID_OPERATION(`prevHash mismatch for file ${file.fileName}: expected ${file.prevHash}, got ${lastHeaderHash}`);
202
+ throw new sdk_1.WERR_INVALID_OPERATION(`prevHash mismatch for file ${file.fileName}: expected ${file.prevHash}, got ${lastHeaderHash}`);
156
203
  }
157
204
  const data = await file.ensureData();
158
205
  if (data.length !== file.count * 80) {
159
- throw new sdk_2.WERR_INVALID_OPERATION(`data length mismatch for file ${file.fileName}: expected ${file.count * 80} bytes, got ${data.length} bytes`);
206
+ throw new sdk_1.WERR_INVALID_OPERATION(`data length mismatch for file ${file.fileName}: expected ${file.count * 80} bytes, got ${data.length} bytes`);
160
207
  }
161
208
  const fileHash = await file.computeFileHash();
162
209
  if (!file.fileHash)
163
- throw new sdk_2.WERR_INVALID_OPERATION(`fileHash missing for file ${file.fileName}`);
210
+ throw new sdk_1.WERR_INVALID_OPERATION(`fileHash missing for file ${file.fileName}`);
164
211
  if (file.fileHash !== fileHash) {
165
- throw new sdk_2.WERR_INVALID_OPERATION(`fileHash mismatch for file ${file.fileName}: expected ${file.fileHash}, got ${fileHash}`);
212
+ throw new sdk_1.WERR_INVALID_OPERATION(`fileHash mismatch for file ${file.fileName}: expected ${file.fileHash}, got ${fileHash}`);
166
213
  }
167
214
  ;
168
215
  ({ lastHeaderHash, lastChainWork } = (0, blockHeaderUtilities_1.validateBufferOfHeaders)(data, lastHeaderHash, 0, file.count, lastChainWork));
216
+ if (index === 0)
217
+ (0, blockHeaderUtilities_1.validateGenesisHeader)(data, chain);
169
218
  if (file.lastHash !== lastHeaderHash) {
170
- throw new sdk_2.WERR_INVALID_OPERATION(`lastHash mismatch for file ${file.fileName}: expected ${file.lastHash}, got ${lastHeaderHash}`);
219
+ throw new sdk_1.WERR_INVALID_OPERATION(`lastHash mismatch for file ${file.fileName}: expected ${file.lastHash}, got ${lastHeaderHash}`);
171
220
  }
172
221
  if (file.lastChainWork !== lastChainWork) {
173
- throw new sdk_2.WERR_INVALID_OPERATION(`lastChainWork mismatch for file ${file.fileName}: expected ${file.lastChainWork}, got ${lastChainWork}`);
222
+ throw new sdk_1.WERR_INVALID_OPERATION(`lastChainWork mismatch for file ${file.fileName}: expected ${file.lastChainWork}, got ${lastChainWork}`);
174
223
  }
175
224
  file.validated = true;
225
+ nextHeight += file.count;
176
226
  }
177
227
  }
178
228
  async exportHeadersToFs(toFs, toHeadersPerFile, toFolder) {
179
229
  if (!this.files || this.files.length === 0 || this.files[0].count === 0) {
180
- throw new sdk_2.WERR_INVALID_OPERATION('no headers currently available to export');
230
+ throw new sdk_1.WERR_INVALID_OPERATION('no headers currently available to export');
181
231
  }
182
232
  if (!this.files[0].chain)
183
- throw new sdk_2.WERR_INVALID_OPERATION('chain is not defined for the first file');
233
+ throw new sdk_1.WERR_INVALID_OPERATION('chain is not defined for the first file');
184
234
  const chain = this.files[0].chain;
185
235
  const toFileName = (i) => `${chain}Net_${i}.headers`;
186
236
  const toPath = (i) => toFs.pathJoin(toFolder, toFileName(i));
@@ -205,7 +255,7 @@ class BulkFilesReader {
205
255
  }
206
256
  const last = (0, blockHeaderUtilities_1.validateBufferOfHeaders)(data, lastHeaderHash, 0, undefined, lastChainWork);
207
257
  await toFs.writeFile(toPath(i), data);
208
- const fileHash = (0, utilityHelpers_noBuffer_1.asString)(sdk_1.Hash.sha256((0, utilityHelpers_noBuffer_1.asArray)(data)), 'base64');
258
+ const fileHash = (0, utilityHelpers_noBuffer_1.asString)((0, Hash_1.sha256)((0, utilityHelpers_noBuffer_1.asArray)(data)), 'base64');
209
259
  const file = {
210
260
  chain,
211
261
  count: data.length / 80,
@@ -240,31 +290,50 @@ class BulkFilesReaderFs extends BulkFilesReader {
240
290
  * @returns
241
291
  */
242
292
  static async fromFs(fs, rootFolder, jsonFilename, range, maxBufferSize) {
293
+ validateLocalFileName(jsonFilename, 'jsonFilename');
243
294
  const filesInfo = await this.readJsonFile(fs, rootFolder, jsonFilename);
244
295
  const readerFiles = filesInfo.files.map(file => new BulkHeaderFile_1.BulkHeaderFileFs(file, fs, rootFolder));
245
- return new BulkFilesReaderFs(fs, readerFiles, range, maxBufferSize);
296
+ const reader = new BulkFilesReaderFs(fs, readerFiles, range, maxBufferSize);
297
+ await reader.validateFiles();
298
+ return reader;
246
299
  }
247
300
  static async writeEmptyJsonFile(fs, rootFolder, jsonFilename) {
248
- const json = JSON.stringify({ files: [], rootFolder });
301
+ validateLocalFileName(jsonFilename, 'jsonFilename');
302
+ const json = JSON.stringify({ files: [], rootFolder, jsonFilename, headersPerFile: 100_000 });
249
303
  await fs.writeFile(fs.pathJoin(rootFolder, jsonFilename), (0, utilityHelpers_noBuffer_1.asUint8Array)(json, 'utf8'));
250
304
  return json;
251
305
  }
252
306
  static async readJsonFile(fs, rootFolder, jsonFilename, failToEmptyRange = true) {
307
+ validateLocalFileName(jsonFilename, 'jsonFilename');
253
308
  const filePath = (file) => fs.pathJoin(rootFolder, file);
254
309
  const jsonPath = filePath(jsonFilename);
255
310
  let json;
256
311
  try {
257
- json = (0, utilityHelpers_noBuffer_1.asString)(await fs.readFile(jsonPath), 'utf8');
312
+ const bytes = await fs.readFile(jsonPath);
313
+ if (bytes.length > MAX_LOCAL_BULK_MANIFEST_BYTES) {
314
+ throw new sdk_1.WERR_INVALID_PARAMETER(`${rootFolder}/${jsonFilename}`, `no larger than ${MAX_LOCAL_BULK_MANIFEST_BYTES} bytes`);
315
+ }
316
+ json = (0, utilityHelpers_noBuffer_1.asString)(bytes, 'utf8');
258
317
  }
259
- catch {
260
- // File does not exist yet. When failToEmptyRange is false we treat a missing
261
- // JSON index as an empty range and create it; otherwise we surface a clear error.
262
- if (!failToEmptyRange) {
263
- throw new sdk_2.WERR_INVALID_PARAMETER(`${rootFolder}/${jsonFilename}`, 'a valid, existing JSON file.');
318
+ catch (error) {
319
+ // Only a definite not-found condition may create an empty index. Permission,
320
+ // corruption, size-limit, and other I/O failures must remain visible.
321
+ const errorCode = error?.code;
322
+ if (!failToEmptyRange || errorCode !== 'ENOENT') {
323
+ if (errorCode !== 'ENOENT')
324
+ throw error;
325
+ throw new sdk_1.WERR_INVALID_PARAMETER(`${rootFolder}/${jsonFilename}`, 'a valid, existing JSON file.');
264
326
  }
265
327
  json = await this.writeEmptyJsonFile(fs, rootFolder, jsonFilename);
266
328
  }
267
- const readerFiles = JSON.parse(json);
329
+ const parsed = JSON.parse(json);
330
+ // Older locally generated empty indexes omitted these two descriptive
331
+ // fields. Supply their non-authoritative defaults before strict parsing.
332
+ if (parsed.headersPerFile === undefined)
333
+ parsed.headersPerFile = 100_000;
334
+ if (parsed.jsonFilename === undefined)
335
+ parsed.jsonFilename = jsonFilename;
336
+ const readerFiles = (0, BulkFileDataManager_1.normalizeBulkHeaderFilesInfo)(parsed);
268
337
  readerFiles.jsonFilename = jsonFilename;
269
338
  readerFiles.rootFolder = rootFolder;
270
339
  return readerFiles;