@bopen-io/wallet-toolbox 2.6.2-brc153.5 → 2.15.0-bopen.1

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 (886) hide show
  1. package/CHANGELOG.md +789 -1
  2. package/LICENSES/Open-BSV-License-4-wallet-pre-2026.txt +28 -0
  3. package/README.md +889 -14
  4. package/THIRD_PARTY_NOTICES.md +35 -0
  5. package/docs/README.md +44 -31
  6. package/docs/action-batch-planning.md +80 -37
  7. package/docs/client.md +11241 -2525
  8. package/docs/identity-verification.md +218 -0
  9. package/docs/local-first-chaintracks.md +129 -0
  10. package/docs/managed-change-liquidity.md +258 -0
  11. package/docs/managed-change-policy.md +14 -1
  12. package/docs/monitor.md +411 -85
  13. package/docs/no-send-expiry.md +167 -0
  14. package/docs/prepared-beef.md +197 -0
  15. package/docs/services.md +5163 -2157
  16. package/docs/setup.md +153 -57
  17. package/docs/storage.md +5051 -851
  18. package/docs/sync-transfer.md +144 -0
  19. package/docs/wab-shamir.md +5 -1
  20. package/docs/wallet.md +10202 -10670
  21. package/out/src/CWIStyleWalletManager.d.ts +39 -31
  22. package/out/src/CWIStyleWalletManager.d.ts.map +1 -1
  23. package/out/src/CWIStyleWalletManager.js +309 -258
  24. package/out/src/CWIStyleWalletManager.js.map +1 -1
  25. package/out/src/Setup.d.ts +24 -0
  26. package/out/src/Setup.d.ts.map +1 -1
  27. package/out/src/Setup.js +30 -2
  28. package/out/src/Setup.js.map +1 -1
  29. package/out/src/SetupClient.d.ts +3 -0
  30. package/out/src/SetupClient.d.ts.map +1 -1
  31. package/out/src/SetupClient.js +1 -0
  32. package/out/src/SetupClient.js.map +1 -1
  33. package/out/src/SetupWallet.d.ts +3 -0
  34. package/out/src/SetupWallet.d.ts.map +1 -1
  35. package/out/src/ShamirWalletManager.d.ts.map +1 -1
  36. package/out/src/ShamirWalletManager.js +34 -19
  37. package/out/src/ShamirWalletManager.js.map +1 -1
  38. package/out/src/SimpleWalletManager.d.ts.map +1 -1
  39. package/out/src/SimpleWalletManager.js +7 -6
  40. package/out/src/SimpleWalletManager.js.map +1 -1
  41. package/out/src/Wallet.d.ts +54 -14
  42. package/out/src/Wallet.d.ts.map +1 -1
  43. package/out/src/Wallet.js +216 -114
  44. package/out/src/Wallet.js.map +1 -1
  45. package/out/src/WalletAuthenticationManager.d.ts +32 -0
  46. package/out/src/WalletAuthenticationManager.d.ts.map +1 -1
  47. package/out/src/WalletAuthenticationManager.js +531 -78
  48. package/out/src/WalletAuthenticationManager.js.map +1 -1
  49. package/out/src/WalletLogger.js +1 -1
  50. package/out/src/WalletLogger.js.map +1 -1
  51. package/out/src/WalletPermissionsManager.d.ts +101 -43
  52. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  53. package/out/src/WalletPermissionsManager.js +897 -414
  54. package/out/src/WalletPermissionsManager.js.map +1 -1
  55. package/out/src/WalletSettingsManager.d.ts +3 -2
  56. package/out/src/WalletSettingsManager.d.ts.map +1 -1
  57. package/out/src/WalletSettingsManager.js +143 -8
  58. package/out/src/WalletSettingsManager.js.map +1 -1
  59. package/out/src/entropy/EntropyCollector.d.ts.map +1 -1
  60. package/out/src/entropy/EntropyCollector.js +3 -2
  61. package/out/src/entropy/EntropyCollector.js.map +1 -1
  62. package/out/src/fundWalletP2PKH.d.ts.map +1 -1
  63. package/out/src/fundWalletP2PKH.js +143 -44
  64. package/out/src/fundWalletP2PKH.js.map +1 -1
  65. package/out/src/index.client.d.ts +6 -0
  66. package/out/src/index.client.d.ts.map +1 -1
  67. package/out/src/index.client.js +16 -1
  68. package/out/src/index.client.js.map +1 -1
  69. package/out/src/index.mobile.d.ts +7 -0
  70. package/out/src/index.mobile.d.ts.map +1 -1
  71. package/out/src/index.mobile.js +17 -1
  72. package/out/src/index.mobile.js.map +1 -1
  73. package/out/src/mockchain/MockChainTracker.d.ts.map +1 -1
  74. package/out/src/mockchain/MockChainTracker.js +5 -5
  75. package/out/src/mockchain/MockChainTracker.js.map +1 -1
  76. package/out/src/mockchain/MockServices.d.ts +2 -0
  77. package/out/src/mockchain/MockServices.d.ts.map +1 -1
  78. package/out/src/mockchain/MockServices.js +54 -14
  79. package/out/src/mockchain/MockServices.js.map +1 -1
  80. package/out/src/monitor/Monitor.d.ts +51 -0
  81. package/out/src/monitor/Monitor.d.ts.map +1 -1
  82. package/out/src/monitor/Monitor.js +282 -41
  83. package/out/src/monitor/Monitor.js.map +1 -1
  84. package/out/src/monitor/MonitorDaemon.d.ts +2 -0
  85. package/out/src/monitor/MonitorDaemon.d.ts.map +1 -1
  86. package/out/src/monitor/MonitorDaemon.js +73 -17
  87. package/out/src/monitor/MonitorDaemon.js.map +1 -1
  88. package/out/src/monitor/monitorValidation.d.ts +12 -0
  89. package/out/src/monitor/monitorValidation.d.ts.map +1 -0
  90. package/out/src/monitor/monitorValidation.js +133 -0
  91. package/out/src/monitor/monitorValidation.js.map +1 -0
  92. package/out/src/monitor/tasks/TaskArcSSE.d.ts +6 -1
  93. package/out/src/monitor/tasks/TaskArcSSE.d.ts.map +1 -1
  94. package/out/src/monitor/tasks/TaskArcSSE.js +117 -74
  95. package/out/src/monitor/tasks/TaskArcSSE.js.map +1 -1
  96. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts +5 -0
  97. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -1
  98. package/out/src/monitor/tasks/TaskCheckForProofs.js +29 -24
  99. package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
  100. package/out/src/monitor/tasks/TaskCheckNoSends.d.ts.map +1 -1
  101. package/out/src/monitor/tasks/TaskCheckNoSends.js +11 -3
  102. package/out/src/monitor/tasks/TaskCheckNoSends.js.map +1 -1
  103. package/out/src/monitor/tasks/TaskFailAbandoned.d.ts.map +1 -1
  104. package/out/src/monitor/tasks/TaskFailAbandoned.js +9 -4
  105. package/out/src/monitor/tasks/TaskFailAbandoned.js.map +1 -1
  106. package/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -1
  107. package/out/src/monitor/tasks/TaskNewHeader.js +3 -1
  108. package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
  109. package/out/src/monitor/tasks/TaskNoSendExpiry.d.ts +19 -0
  110. package/out/src/monitor/tasks/TaskNoSendExpiry.d.ts.map +1 -0
  111. package/out/src/monitor/tasks/TaskNoSendExpiry.js +47 -0
  112. package/out/src/monitor/tasks/TaskNoSendExpiry.js.map +1 -0
  113. package/out/src/monitor/tasks/TaskReconcilePendingTransactions.d.ts +27 -0
  114. package/out/src/monitor/tasks/TaskReconcilePendingTransactions.d.ts.map +1 -0
  115. package/out/src/monitor/tasks/TaskReconcilePendingTransactions.js +242 -0
  116. package/out/src/monitor/tasks/TaskReconcilePendingTransactions.js.map +1 -0
  117. package/out/src/monitor/tasks/TaskReorg.d.ts.map +1 -1
  118. package/out/src/monitor/tasks/TaskReorg.js +4 -4
  119. package/out/src/monitor/tasks/TaskReorg.js.map +1 -1
  120. package/out/src/monitor/tasks/TaskReviewDoubleSpends.d.ts.map +1 -1
  121. package/out/src/monitor/tasks/TaskReviewDoubleSpends.js +31 -9
  122. package/out/src/monitor/tasks/TaskReviewDoubleSpends.js.map +1 -1
  123. package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts +18 -1
  124. package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts.map +1 -1
  125. package/out/src/monitor/tasks/TaskReviewProvenTxs.js +99 -21
  126. package/out/src/monitor/tasks/TaskReviewProvenTxs.js.map +1 -1
  127. package/out/src/monitor/tasks/TaskReviewUtxos.d.ts +33 -6
  128. package/out/src/monitor/tasks/TaskReviewUtxos.d.ts.map +1 -1
  129. package/out/src/monitor/tasks/TaskReviewUtxos.js +189 -13
  130. package/out/src/monitor/tasks/TaskReviewUtxos.js.map +1 -1
  131. package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
  132. package/out/src/monitor/tasks/TaskSendWaiting.js +52 -11
  133. package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  134. package/out/src/monitor/tasks/TaskUnFail.d.ts +1 -0
  135. package/out/src/monitor/tasks/TaskUnFail.d.ts.map +1 -1
  136. package/out/src/monitor/tasks/TaskUnFail.js +26 -8
  137. package/out/src/monitor/tasks/TaskUnFail.js.map +1 -1
  138. package/out/src/monitor/tasks/index.all.d.ts +2 -0
  139. package/out/src/monitor/tasks/index.all.d.ts.map +1 -1
  140. package/out/src/monitor/tasks/index.all.js +2 -0
  141. package/out/src/monitor/tasks/index.all.js.map +1 -1
  142. package/out/src/sdk/ActionBatch.interfaces.d.ts +23 -0
  143. package/out/src/sdk/ActionBatch.interfaces.d.ts.map +1 -1
  144. package/out/src/sdk/PrivilegedKeyManager.d.ts.map +1 -1
  145. package/out/src/sdk/PrivilegedKeyManager.js +3 -2
  146. package/out/src/sdk/PrivilegedKeyManager.js.map +1 -1
  147. package/out/src/sdk/WERR_errors.d.ts +23 -0
  148. package/out/src/sdk/WERR_errors.d.ts.map +1 -1
  149. package/out/src/sdk/WERR_errors.js +51 -7
  150. package/out/src/sdk/WERR_errors.js.map +1 -1
  151. package/out/src/sdk/WalletError.d.ts.map +1 -1
  152. package/out/src/sdk/WalletError.js +7 -21
  153. package/out/src/sdk/WalletError.js.map +1 -1
  154. package/out/src/sdk/WalletErrorFromJson.d.ts.map +1 -1
  155. package/out/src/sdk/WalletErrorFromJson.js +121 -3
  156. package/out/src/sdk/WalletErrorFromJson.js.map +1 -1
  157. package/out/src/sdk/WalletServices.interfaces.d.ts +45 -2
  158. package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  159. package/out/src/sdk/WalletStorage.interfaces.d.ts +87 -4
  160. package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
  161. package/out/src/sdk/types.d.ts +3 -2
  162. package/out/src/sdk/types.d.ts.map +1 -1
  163. package/out/src/sdk/types.js +3 -2
  164. package/out/src/sdk/types.js.map +1 -1
  165. package/out/src/services/ServiceCollection.js +2 -2
  166. package/out/src/services/ServiceCollection.js.map +1 -1
  167. package/out/src/services/Services.d.ts +5 -0
  168. package/out/src/services/Services.d.ts.map +1 -1
  169. package/out/src/services/Services.js +346 -120
  170. package/out/src/services/Services.js.map +1 -1
  171. package/out/src/services/chaintracker/BHServiceClient.d.ts +21 -4
  172. package/out/src/services/chaintracker/BHServiceClient.d.ts.map +1 -1
  173. package/out/src/services/chaintracker/BHServiceClient.js +269 -66
  174. package/out/src/services/chaintracker/BHServiceClient.js.map +1 -1
  175. package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +25 -3
  176. package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
  177. package/out/src/services/chaintracker/ChaintracksChainTracker.js +188 -53
  178. package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
  179. package/out/src/services/chaintracker/LocalChainTracker.d.ts +122 -0
  180. package/out/src/services/chaintracker/LocalChainTracker.d.ts.map +1 -0
  181. package/out/src/services/chaintracker/LocalChainTracker.js +465 -0
  182. package/out/src/services/chaintracker/LocalChainTracker.js.map +1 -0
  183. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts.map +1 -1
  184. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js +59 -7
  185. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js.map +1 -1
  186. package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.d.ts +48 -0
  187. package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.d.ts.map +1 -0
  188. package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.js +3 -0
  189. package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.js.map +1 -0
  190. package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.d.ts +70 -0
  191. package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.d.ts.map +1 -0
  192. package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.js +21 -0
  193. package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.js.map +1 -0
  194. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts +6 -0
  195. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts.map +1 -1
  196. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts +53 -0
  197. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts.map +1 -1
  198. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts +9 -2
  199. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts.map +1 -1
  200. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +9 -0
  201. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -1
  202. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +28 -3
  203. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
  204. package/out/src/services/chaintracker/chaintracks/Chaintracks.js +282 -64
  205. package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
  206. package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts +16 -0
  207. package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts.map +1 -1
  208. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js +150 -26
  209. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +1 -1
  210. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts +30 -1
  211. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -1
  212. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +348 -30
  213. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -1
  214. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts +32 -1
  215. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts.map +1 -1
  216. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js +378 -44
  217. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js.map +1 -1
  218. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -1
  219. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +28 -3
  220. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
  221. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts.map +1 -1
  222. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +33 -9
  223. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
  224. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts.map +1 -1
  225. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js.map +1 -1
  226. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.d.ts.map +1 -1
  227. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.js +4 -2
  228. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.js.map +1 -1
  229. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts +2 -0
  230. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -1
  231. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +17 -4
  232. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -1
  233. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts +2 -0
  234. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map +1 -1
  235. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js +40 -20
  236. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +1 -1
  237. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -1
  238. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +14 -0
  239. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
  240. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.d.ts +6 -0
  241. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.d.ts.map +1 -1
  242. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js +56 -9
  243. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js.map +1 -1
  244. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.d.ts.map +1 -1
  245. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js +6 -3
  246. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js.map +1 -1
  247. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts +4 -0
  248. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts.map +1 -1
  249. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +27 -9
  250. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
  251. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts +8 -0
  252. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map +1 -1
  253. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js +49 -5
  254. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +1 -1
  255. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +1 -1
  256. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
  257. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +90 -21
  258. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
  259. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts +3 -1
  260. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts.map +1 -1
  261. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js +185 -38
  262. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js.map +1 -1
  263. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -1
  264. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +59 -6
  265. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
  266. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts +2 -0
  267. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts.map +1 -1
  268. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js +89 -39
  269. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js.map +1 -1
  270. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts +10 -0
  271. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
  272. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +230 -28
  273. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
  274. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts +2 -1
  275. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +1 -1
  276. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +265 -96
  277. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -1
  278. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts +8 -1
  279. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -1
  280. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +248 -87
  281. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -1
  282. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +3 -0
  283. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
  284. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +121 -35
  285. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
  286. package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.d.ts +8 -0
  287. package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.d.ts.map +1 -1
  288. package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.js +6 -3
  289. package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.js.map +1 -1
  290. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts.map +1 -1
  291. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js.map +1 -1
  292. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.d.ts.map +1 -1
  293. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js.map +1 -1
  294. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts.map +1 -1
  295. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +1 -1
  296. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -1
  297. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js +1 -7
  298. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -1
  299. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.d.ts.map +1 -1
  300. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js +1 -7
  301. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js.map +1 -1
  302. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts.map +1 -1
  303. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js +1 -7
  304. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js.map +1 -1
  305. package/out/src/services/chaintracker/chaintracks/index.all.d.ts +3 -0
  306. package/out/src/services/chaintracker/chaintracks/index.all.d.ts.map +1 -1
  307. package/out/src/services/chaintracker/chaintracks/index.all.js +3 -0
  308. package/out/src/services/chaintracker/chaintracks/index.all.js.map +1 -1
  309. package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts +5 -0
  310. package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts.map +1 -1
  311. package/out/src/services/chaintracker/chaintracks/index.mobile.js +5 -0
  312. package/out/src/services/chaintracker/chaintracks/index.mobile.js.map +1 -1
  313. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.d.ts +51 -0
  314. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.d.ts.map +1 -0
  315. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.js +394 -0
  316. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.js.map +1 -0
  317. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +45 -1
  318. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
  319. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +733 -166
  320. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
  321. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.d.ts.map +1 -1
  322. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js +17 -1
  323. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js.map +1 -1
  324. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.d.ts +32 -0
  325. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.d.ts.map +1 -0
  326. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.js +40 -0
  327. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.js.map +1 -0
  328. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
  329. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js +99 -30
  330. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
  331. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +3 -1
  332. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -1
  333. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +23 -15
  334. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -1
  335. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts +38 -4
  336. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts.map +1 -1
  337. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js +191 -47
  338. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js.map +1 -1
  339. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts +2 -1
  340. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts.map +1 -1
  341. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js +57 -11
  342. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js.map +1 -1
  343. package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.d.ts +48 -0
  344. package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.d.ts.map +1 -0
  345. package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.js +280 -0
  346. package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.js.map +1 -0
  347. package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.d.ts +30 -0
  348. package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.d.ts.map +1 -0
  349. package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.js +57 -0
  350. package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.js.map +1 -0
  351. package/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -1
  352. package/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -1
  353. package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.d.ts +14 -0
  354. package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.d.ts.map +1 -0
  355. package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.js +148 -0
  356. package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.js.map +1 -0
  357. package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.d.ts +41 -0
  358. package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.d.ts.map +1 -0
  359. package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.js +271 -0
  360. package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.js.map +1 -0
  361. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts +3 -0
  362. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts.map +1 -1
  363. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js +15 -0
  364. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js.map +1 -1
  365. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts +17 -4
  366. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
  367. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +362 -105
  368. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
  369. package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.d.ts +4 -0
  370. package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.d.ts.map +1 -0
  371. package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.js +33 -0
  372. package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.js.map +1 -0
  373. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
  374. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
  375. package/out/src/services/chaintracker/index.all.d.ts +1 -0
  376. package/out/src/services/chaintracker/index.all.d.ts.map +1 -1
  377. package/out/src/services/chaintracker/index.all.js +1 -0
  378. package/out/src/services/chaintracker/index.all.js.map +1 -1
  379. package/out/src/services/chaintracker/index.client.d.ts +1 -0
  380. package/out/src/services/chaintracker/index.client.d.ts.map +1 -1
  381. package/out/src/services/chaintracker/index.client.js +1 -0
  382. package/out/src/services/chaintracker/index.client.js.map +1 -1
  383. package/out/src/services/chaintracker/index.mobile.d.ts +1 -0
  384. package/out/src/services/chaintracker/index.mobile.d.ts.map +1 -1
  385. package/out/src/services/chaintracker/index.mobile.js +1 -0
  386. package/out/src/services/chaintracker/index.mobile.js.map +1 -1
  387. package/out/src/services/classifyOutputUtxo.d.ts +25 -0
  388. package/out/src/services/classifyOutputUtxo.d.ts.map +1 -0
  389. package/out/src/services/classifyOutputUtxo.js +96 -0
  390. package/out/src/services/classifyOutputUtxo.js.map +1 -0
  391. package/out/src/services/createDefaultWalletServicesOptions.d.ts +16 -3
  392. package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
  393. package/out/src/services/createDefaultWalletServicesOptions.js +38 -8
  394. package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
  395. package/out/src/services/fiatRateValidation.d.ts +12 -0
  396. package/out/src/services/fiatRateValidation.d.ts.map +1 -0
  397. package/out/src/services/fiatRateValidation.js +138 -0
  398. package/out/src/services/fiatRateValidation.js.map +1 -0
  399. package/out/src/services/getCanonicalMerklePath.d.ts +15 -0
  400. package/out/src/services/getCanonicalMerklePath.d.ts.map +1 -0
  401. package/out/src/services/getCanonicalMerklePath.js +90 -0
  402. package/out/src/services/getCanonicalMerklePath.js.map +1 -0
  403. package/out/src/services/providers/ARC.d.ts +3 -16
  404. package/out/src/services/providers/ARC.d.ts.map +1 -1
  405. package/out/src/services/providers/ARC.js +36 -37
  406. package/out/src/services/providers/ARC.js.map +1 -1
  407. package/out/src/services/providers/ArcSSEClient.d.ts +38 -23
  408. package/out/src/services/providers/ArcSSEClient.d.ts.map +1 -1
  409. package/out/src/services/providers/ArcSSEClient.js +384 -63
  410. package/out/src/services/providers/ArcSSEClient.js.map +1 -1
  411. package/out/src/services/providers/Arcade.d.ts +11 -1
  412. package/out/src/services/providers/Arcade.d.ts.map +1 -1
  413. package/out/src/services/providers/Arcade.js +111 -33
  414. package/out/src/services/providers/Arcade.js.map +1 -1
  415. package/out/src/services/providers/Bitails.d.ts +3 -0
  416. package/out/src/services/providers/Bitails.d.ts.map +1 -1
  417. package/out/src/services/providers/Bitails.js +79 -12
  418. package/out/src/services/providers/Bitails.js.map +1 -1
  419. package/out/src/services/providers/SdkWhatsOnChain.d.ts +8 -2
  420. package/out/src/services/providers/SdkWhatsOnChain.d.ts.map +1 -1
  421. package/out/src/services/providers/SdkWhatsOnChain.js +83 -10
  422. package/out/src/services/providers/SdkWhatsOnChain.js.map +1 -1
  423. package/out/src/services/providers/WhatsOnChain.d.ts +3 -0
  424. package/out/src/services/providers/WhatsOnChain.d.ts.map +1 -1
  425. package/out/src/services/providers/WhatsOnChain.js +221 -69
  426. package/out/src/services/providers/WhatsOnChain.js.map +1 -1
  427. package/out/src/services/providers/arcProviderConfig.d.ts +27 -0
  428. package/out/src/services/providers/arcProviderConfig.d.ts.map +1 -0
  429. package/out/src/services/providers/arcProviderConfig.js +83 -0
  430. package/out/src/services/providers/arcProviderConfig.js.map +1 -0
  431. package/out/src/services/providers/arcTxDataValidation.d.ts +4 -0
  432. package/out/src/services/providers/arcTxDataValidation.d.ts.map +1 -0
  433. package/out/src/services/providers/arcTxDataValidation.js +92 -0
  434. package/out/src/services/providers/arcTxDataValidation.js.map +1 -0
  435. package/out/src/services/providers/arcadeStatus.d.ts +18 -0
  436. package/out/src/services/providers/arcadeStatus.d.ts.map +1 -0
  437. package/out/src/services/providers/arcadeStatus.js +56 -0
  438. package/out/src/services/providers/arcadeStatus.js.map +1 -0
  439. package/out/src/services/providers/exchangeRates.d.ts +3 -3
  440. package/out/src/services/providers/exchangeRates.d.ts.map +1 -1
  441. package/out/src/services/providers/exchangeRates.js +153 -226
  442. package/out/src/services/providers/exchangeRates.js.map +1 -1
  443. package/out/src/services/providers/getBeefForTxid.d.ts.map +1 -1
  444. package/out/src/services/providers/getBeefForTxid.js.map +1 -1
  445. package/out/src/services/providers/whatsOnChainHelpers.d.ts +2 -2
  446. package/out/src/services/providers/whatsOnChainHelpers.d.ts.map +1 -1
  447. package/out/src/services/providers/whatsOnChainHelpers.js +11 -8
  448. package/out/src/services/providers/whatsOnChainHelpers.js.map +1 -1
  449. package/out/src/services/validateMerklePathResult.d.ts +30 -0
  450. package/out/src/services/validateMerklePathResult.d.ts.map +1 -0
  451. package/out/src/services/validateMerklePathResult.js +272 -0
  452. package/out/src/services/validateMerklePathResult.js.map +1 -0
  453. package/out/src/services/validatePostBeefResult.d.ts +17 -0
  454. package/out/src/services/validatePostBeefResult.d.ts.map +1 -0
  455. package/out/src/services/validatePostBeefResult.js +334 -0
  456. package/out/src/services/validatePostBeefResult.js.map +1 -0
  457. package/out/src/services/validateRawTxResult.d.ts +6 -0
  458. package/out/src/services/validateRawTxResult.d.ts.map +1 -0
  459. package/out/src/services/validateRawTxResult.js +77 -0
  460. package/out/src/services/validateRawTxResult.js.map +1 -0
  461. package/out/src/services/validateScriptHashHistoryResult.d.ts +5 -0
  462. package/out/src/services/validateScriptHashHistoryResult.d.ts.map +1 -0
  463. package/out/src/services/validateScriptHashHistoryResult.js +99 -0
  464. package/out/src/services/validateScriptHashHistoryResult.js.map +1 -0
  465. package/out/src/services/validateStatusForTxidsResult.d.ts +8 -0
  466. package/out/src/services/validateStatusForTxidsResult.d.ts.map +1 -0
  467. package/out/src/services/validateStatusForTxidsResult.js +181 -0
  468. package/out/src/services/validateStatusForTxidsResult.js.map +1 -0
  469. package/out/src/services/validateUtxoStatusResult.d.ts +6 -0
  470. package/out/src/services/validateUtxoStatusResult.d.ts.map +1 -0
  471. package/out/src/services/validateUtxoStatusResult.js +126 -0
  472. package/out/src/services/validateUtxoStatusResult.js.map +1 -0
  473. package/out/src/signer/actionBatch/ActionBatchPlanner.d.ts +3 -2
  474. package/out/src/signer/actionBatch/ActionBatchPlanner.d.ts.map +1 -1
  475. package/out/src/signer/actionBatch/ActionBatchPlanner.js +29 -6
  476. package/out/src/signer/actionBatch/ActionBatchPlanner.js.map +1 -1
  477. package/out/src/signer/actionBatch/ActionBatchWorkspace.d.ts +8 -5
  478. package/out/src/signer/actionBatch/ActionBatchWorkspace.d.ts.map +1 -1
  479. package/out/src/signer/actionBatch/ActionBatchWorkspace.js +186 -73
  480. package/out/src/signer/actionBatch/ActionBatchWorkspace.js.map +1 -1
  481. package/out/src/signer/actionBatch/actionBatchBootstrap.d.ts +2 -2
  482. package/out/src/signer/actionBatch/actionBatchBootstrap.d.ts.map +1 -1
  483. package/out/src/signer/actionBatch/actionBatchBootstrap.js +3 -3
  484. package/out/src/signer/actionBatch/actionBatchBootstrap.js.map +1 -1
  485. package/out/src/signer/methods/acquireDirectCertificate.d.ts +3 -2
  486. package/out/src/signer/methods/acquireDirectCertificate.d.ts.map +1 -1
  487. package/out/src/signer/methods/acquireDirectCertificate.js.map +1 -1
  488. package/out/src/signer/methods/buildSignableTransaction.d.ts +6 -5
  489. package/out/src/signer/methods/buildSignableTransaction.d.ts.map +1 -1
  490. package/out/src/signer/methods/buildSignableTransaction.js +6 -11
  491. package/out/src/signer/methods/buildSignableTransaction.js.map +1 -1
  492. package/out/src/signer/methods/createAction.d.ts +4 -3
  493. package/out/src/signer/methods/createAction.d.ts.map +1 -1
  494. package/out/src/signer/methods/createAction.js +3 -1
  495. package/out/src/signer/methods/createAction.js.map +1 -1
  496. package/out/src/signer/methods/createNoSendExpiryAction.d.ts +7 -0
  497. package/out/src/signer/methods/createNoSendExpiryAction.d.ts.map +1 -0
  498. package/out/src/signer/methods/createNoSendExpiryAction.js +254 -0
  499. package/out/src/signer/methods/createNoSendExpiryAction.js.map +1 -0
  500. package/out/src/signer/methods/internalizeAction.d.ts.map +1 -1
  501. package/out/src/signer/methods/internalizeAction.js +9 -5
  502. package/out/src/signer/methods/internalizeAction.js.map +1 -1
  503. package/out/src/signer/methods/proveCertificate.d.ts +3 -2
  504. package/out/src/signer/methods/proveCertificate.d.ts.map +1 -1
  505. package/out/src/signer/methods/proveCertificate.js.map +1 -1
  506. package/out/src/signer/methods/signAction.d.ts.map +1 -1
  507. package/out/src/signer/methods/signAction.js +12 -2
  508. package/out/src/signer/methods/signAction.js.map +1 -1
  509. package/out/src/signer/methods/verifyUnlockScripts.d.ts.map +1 -1
  510. package/out/src/signer/methods/verifyUnlockScripts.js +12 -17
  511. package/out/src/signer/methods/verifyUnlockScripts.js.map +1 -1
  512. package/out/src/storage/StorageIdb.d.ts +11 -3
  513. package/out/src/storage/StorageIdb.d.ts.map +1 -1
  514. package/out/src/storage/StorageIdb.js +134 -44
  515. package/out/src/storage/StorageIdb.js.map +1 -1
  516. package/out/src/storage/StorageKnex.d.ts +71 -7
  517. package/out/src/storage/StorageKnex.d.ts.map +1 -1
  518. package/out/src/storage/StorageKnex.js +616 -262
  519. package/out/src/storage/StorageKnex.js.map +1 -1
  520. package/out/src/storage/StorageProvider.d.ts +41 -10
  521. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  522. package/out/src/storage/StorageProvider.js +397 -107
  523. package/out/src/storage/StorageProvider.js.map +1 -1
  524. package/out/src/storage/StorageReader.d.ts +9 -3
  525. package/out/src/storage/StorageReader.d.ts.map +1 -1
  526. package/out/src/storage/StorageReader.js +21 -43
  527. package/out/src/storage/StorageReader.js.map +1 -1
  528. package/out/src/storage/StorageReaderWriter.d.ts +4 -0
  529. package/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
  530. package/out/src/storage/StorageReaderWriter.js +68 -38
  531. package/out/src/storage/StorageReaderWriter.js.map +1 -1
  532. package/out/src/storage/StorageSyncReader.d.ts +1 -1
  533. package/out/src/storage/StorageSyncReader.d.ts.map +1 -1
  534. package/out/src/storage/StorageSyncReader.js +3 -36
  535. package/out/src/storage/StorageSyncReader.js.map +1 -1
  536. package/out/src/storage/WalletStorageManager.d.ts +31 -6
  537. package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
  538. package/out/src/storage/WalletStorageManager.js +166 -75
  539. package/out/src/storage/WalletStorageManager.js.map +1 -1
  540. package/out/src/storage/adminServer/adminServer.d.ts +3 -1
  541. package/out/src/storage/adminServer/adminServer.d.ts.map +1 -1
  542. package/out/src/storage/adminServer/adminServer.js +41 -90
  543. package/out/src/storage/adminServer/adminServer.js.map +1 -1
  544. package/out/src/storage/adminServer/adminUi.d.ts.map +1 -1
  545. package/out/src/storage/adminServer/adminUi.js +32 -9
  546. package/out/src/storage/adminServer/adminUi.js.map +1 -1
  547. package/out/src/storage/adminServer/reqReviewQuery.d.ts +41 -0
  548. package/out/src/storage/adminServer/reqReviewQuery.d.ts.map +1 -0
  549. package/out/src/storage/adminServer/reqReviewQuery.js +67 -0
  550. package/out/src/storage/adminServer/reqReviewQuery.js.map +1 -0
  551. package/out/src/storage/adminServer/reviewUtxos.d.ts +27 -0
  552. package/out/src/storage/adminServer/reviewUtxos.d.ts.map +1 -0
  553. package/out/src/storage/adminServer/reviewUtxos.js +62 -0
  554. package/out/src/storage/adminServer/reviewUtxos.js.map +1 -0
  555. package/out/src/storage/idbHelpers.d.ts.map +1 -1
  556. package/out/src/storage/idbHelpers.js +14 -2
  557. package/out/src/storage/idbHelpers.js.map +1 -1
  558. package/out/src/storage/index.all.d.ts +4 -0
  559. package/out/src/storage/index.all.d.ts.map +1 -1
  560. package/out/src/storage/index.all.js +4 -0
  561. package/out/src/storage/index.all.js.map +1 -1
  562. package/out/src/storage/index.client.d.ts +1 -0
  563. package/out/src/storage/index.client.d.ts.map +1 -1
  564. package/out/src/storage/index.client.js +1 -0
  565. package/out/src/storage/index.client.js.map +1 -1
  566. package/out/src/storage/index.mobile.d.ts +1 -0
  567. package/out/src/storage/index.mobile.d.ts.map +1 -1
  568. package/out/src/storage/index.mobile.js +1 -0
  569. package/out/src/storage/index.mobile.js.map +1 -1
  570. package/out/src/storage/knexPostgres.d.ts +16 -0
  571. package/out/src/storage/knexPostgres.d.ts.map +1 -0
  572. package/out/src/storage/knexPostgres.js +34 -0
  573. package/out/src/storage/knexPostgres.js.map +1 -0
  574. package/out/src/storage/methods/ListActionsSpecOp.d.ts +2 -2
  575. package/out/src/storage/methods/ListActionsSpecOp.d.ts.map +1 -1
  576. package/out/src/storage/methods/ListActionsSpecOp.js.map +1 -1
  577. package/out/src/storage/methods/ListOutputsSpecOp.d.ts +7 -4
  578. package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
  579. package/out/src/storage/methods/ListOutputsSpecOp.js +5 -44
  580. package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
  581. package/out/src/storage/methods/actionBatch.d.ts +9 -2
  582. package/out/src/storage/methods/actionBatch.d.ts.map +1 -1
  583. package/out/src/storage/methods/actionBatch.js +260 -67
  584. package/out/src/storage/methods/actionBatch.js.map +1 -1
  585. package/out/src/storage/methods/actionBatchBlobs.d.ts +2 -0
  586. package/out/src/storage/methods/actionBatchBlobs.d.ts.map +1 -1
  587. package/out/src/storage/methods/actionBatchBlobs.js +47 -26
  588. package/out/src/storage/methods/actionBatchBlobs.js.map +1 -1
  589. package/out/src/storage/methods/actionBatchValidation.d.ts.map +1 -1
  590. package/out/src/storage/methods/actionBatchValidation.js +22 -30
  591. package/out/src/storage/methods/actionBatchValidation.js.map +1 -1
  592. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts +7 -2
  593. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -1
  594. package/out/src/storage/methods/attemptToPostReqsToNetwork.js +59 -110
  595. package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
  596. package/out/src/storage/methods/availableManagedChange.d.ts +8 -1
  597. package/out/src/storage/methods/availableManagedChange.d.ts.map +1 -1
  598. package/out/src/storage/methods/availableManagedChange.js.map +1 -1
  599. package/out/src/storage/methods/createAction.d.ts +60 -3
  600. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  601. package/out/src/storage/methods/createAction.js +390 -105
  602. package/out/src/storage/methods/createAction.js.map +1 -1
  603. package/out/src/storage/methods/generateChange.d.ts +15 -5
  604. package/out/src/storage/methods/generateChange.d.ts.map +1 -1
  605. package/out/src/storage/methods/generateChange.js +187 -27
  606. package/out/src/storage/methods/generateChange.js.map +1 -1
  607. package/out/src/storage/methods/getBeefForTransaction.js +5 -7
  608. package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
  609. package/out/src/storage/methods/getSyncChunk.d.ts.map +1 -1
  610. package/out/src/storage/methods/getSyncChunk.js +42 -11
  611. package/out/src/storage/methods/getSyncChunk.js.map +1 -1
  612. package/out/src/storage/methods/internalizeAction.d.ts +3 -3
  613. package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
  614. package/out/src/storage/methods/internalizeAction.js +171 -133
  615. package/out/src/storage/methods/internalizeAction.js.map +1 -1
  616. package/out/src/storage/methods/listActionsIdb.d.ts +3 -2
  617. package/out/src/storage/methods/listActionsIdb.d.ts.map +1 -1
  618. package/out/src/storage/methods/listActionsIdb.js +2 -2
  619. package/out/src/storage/methods/listActionsIdb.js.map +1 -1
  620. package/out/src/storage/methods/listActionsKnex.d.ts +3 -2
  621. package/out/src/storage/methods/listActionsKnex.d.ts.map +1 -1
  622. package/out/src/storage/methods/listActionsKnex.js +21 -11
  623. package/out/src/storage/methods/listActionsKnex.js.map +1 -1
  624. package/out/src/storage/methods/listCertificates.d.ts +3 -2
  625. package/out/src/storage/methods/listCertificates.d.ts.map +1 -1
  626. package/out/src/storage/methods/listCertificates.js.map +1 -1
  627. package/out/src/storage/methods/listOutputsIdb.d.ts +3 -2
  628. package/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -1
  629. package/out/src/storage/methods/listOutputsIdb.js +25 -18
  630. package/out/src/storage/methods/listOutputsIdb.js.map +1 -1
  631. package/out/src/storage/methods/listOutputsKnex.d.ts +3 -2
  632. package/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -1
  633. package/out/src/storage/methods/listOutputsKnex.js +31 -30
  634. package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
  635. package/out/src/storage/methods/managedChangePolicy.d.ts +44 -0
  636. package/out/src/storage/methods/managedChangePolicy.d.ts.map +1 -0
  637. package/out/src/storage/methods/managedChangePolicy.js +58 -0
  638. package/out/src/storage/methods/managedChangePolicy.js.map +1 -0
  639. package/out/src/storage/methods/maxPossibleSatoshis.d.ts +13 -0
  640. package/out/src/storage/methods/maxPossibleSatoshis.d.ts.map +1 -0
  641. package/out/src/storage/methods/maxPossibleSatoshis.js +16 -0
  642. package/out/src/storage/methods/maxPossibleSatoshis.js.map +1 -0
  643. package/out/src/storage/methods/noSendExpiry.d.ts +11 -0
  644. package/out/src/storage/methods/noSendExpiry.d.ts.map +1 -0
  645. package/out/src/storage/methods/noSendExpiry.js +359 -0
  646. package/out/src/storage/methods/noSendExpiry.js.map +1 -0
  647. package/out/src/storage/methods/noSendExpiryLifecycle.d.ts +14 -0
  648. package/out/src/storage/methods/noSendExpiryLifecycle.d.ts.map +1 -0
  649. package/out/src/storage/methods/noSendExpiryLifecycle.js +691 -0
  650. package/out/src/storage/methods/noSendExpiryLifecycle.js.map +1 -0
  651. package/out/src/storage/methods/preparedBeef.d.ts +104 -0
  652. package/out/src/storage/methods/preparedBeef.d.ts.map +1 -0
  653. package/out/src/storage/methods/preparedBeef.js +524 -0
  654. package/out/src/storage/methods/preparedBeef.js.map +1 -0
  655. package/out/src/storage/methods/processAction.d.ts.map +1 -1
  656. package/out/src/storage/methods/processAction.js +144 -32
  657. package/out/src/storage/methods/processAction.js.map +1 -1
  658. package/out/src/storage/methods/purgeData.d.ts.map +1 -1
  659. package/out/src/storage/methods/purgeData.js +18 -3
  660. package/out/src/storage/methods/purgeData.js.map +1 -1
  661. package/out/src/storage/methods/reconcileFailedTransactionInputs.d.ts +32 -0
  662. package/out/src/storage/methods/reconcileFailedTransactionInputs.d.ts.map +1 -0
  663. package/out/src/storage/methods/reconcileFailedTransactionInputs.js +142 -0
  664. package/out/src/storage/methods/reconcileFailedTransactionInputs.js.map +1 -0
  665. package/out/src/storage/methods/reviewStatus.js +4 -4
  666. package/out/src/storage/methods/reviewStatus.js.map +1 -1
  667. package/out/src/storage/methods/reviewStatusIdb.d.ts +1 -1
  668. package/out/src/storage/methods/reviewStatusIdb.d.ts.map +1 -1
  669. package/out/src/storage/methods/reviewStatusIdb.js.map +1 -1
  670. package/out/src/storage/methods/reviewUtxoOutputs.d.ts +38 -0
  671. package/out/src/storage/methods/reviewUtxoOutputs.d.ts.map +1 -0
  672. package/out/src/storage/methods/reviewUtxoOutputs.js +197 -0
  673. package/out/src/storage/methods/reviewUtxoOutputs.js.map +1 -0
  674. package/out/src/storage/methods/validateSyncProof.d.ts +32 -0
  675. package/out/src/storage/methods/validateSyncProof.d.ts.map +1 -0
  676. package/out/src/storage/methods/validateSyncProof.js +139 -0
  677. package/out/src/storage/methods/validateSyncProof.js.map +1 -0
  678. package/out/src/storage/portable/index.d.ts.map +1 -1
  679. package/out/src/storage/portable/index.js +63 -27
  680. package/out/src/storage/portable/index.js.map +1 -1
  681. package/out/src/storage/remoting/BinaryJson.d.ts +11 -0
  682. package/out/src/storage/remoting/BinaryJson.d.ts.map +1 -1
  683. package/out/src/storage/remoting/BinaryJson.js +94 -8
  684. package/out/src/storage/remoting/BinaryJson.js.map +1 -1
  685. package/out/src/storage/remoting/KnexPaymentReplayStore.d.ts.map +1 -1
  686. package/out/src/storage/remoting/KnexPaymentReplayStore.js +1 -0
  687. package/out/src/storage/remoting/KnexPaymentReplayStore.js.map +1 -1
  688. package/out/src/storage/remoting/KnexSessionManager.d.ts +26 -2
  689. package/out/src/storage/remoting/KnexSessionManager.d.ts.map +1 -1
  690. package/out/src/storage/remoting/KnexSessionManager.js +221 -40
  691. package/out/src/storage/remoting/KnexSessionManager.js.map +1 -1
  692. package/out/src/storage/remoting/KnexSyncTransferStore.d.ts +26 -0
  693. package/out/src/storage/remoting/KnexSyncTransferStore.d.ts.map +1 -0
  694. package/out/src/storage/remoting/KnexSyncTransferStore.js +222 -0
  695. package/out/src/storage/remoting/KnexSyncTransferStore.js.map +1 -0
  696. package/out/src/storage/remoting/StorageClient.d.ts +6 -1
  697. package/out/src/storage/remoting/StorageClient.d.ts.map +1 -1
  698. package/out/src/storage/remoting/StorageClient.js +65 -8
  699. package/out/src/storage/remoting/StorageClient.js.map +1 -1
  700. package/out/src/storage/remoting/StorageClientBase.d.ts +57 -10
  701. package/out/src/storage/remoting/StorageClientBase.d.ts.map +1 -1
  702. package/out/src/storage/remoting/StorageClientBase.js +372 -9
  703. package/out/src/storage/remoting/StorageClientBase.js.map +1 -1
  704. package/out/src/storage/remoting/StorageMobile.d.ts +5 -0
  705. package/out/src/storage/remoting/StorageMobile.d.ts.map +1 -1
  706. package/out/src/storage/remoting/StorageMobile.js +13 -11
  707. package/out/src/storage/remoting/StorageMobile.js.map +1 -1
  708. package/out/src/storage/remoting/StorageServer.d.ts +27 -5
  709. package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
  710. package/out/src/storage/remoting/StorageServer.js +243 -33
  711. package/out/src/storage/remoting/StorageServer.js.map +1 -1
  712. package/out/src/storage/remoting/SyncTransfer.d.ts +29 -0
  713. package/out/src/storage/remoting/SyncTransfer.d.ts.map +1 -0
  714. package/out/src/storage/remoting/SyncTransfer.js +153 -0
  715. package/out/src/storage/remoting/SyncTransfer.js.map +1 -0
  716. package/out/src/storage/remoting/entityValidationHelpers.d.ts.map +1 -1
  717. package/out/src/storage/remoting/entityValidationHelpers.js +35 -0
  718. package/out/src/storage/remoting/entityValidationHelpers.js.map +1 -1
  719. package/out/src/storage/remoting/syncChunkBinary.d.ts +4 -0
  720. package/out/src/storage/remoting/syncChunkBinary.d.ts.map +1 -0
  721. package/out/src/storage/remoting/syncChunkBinary.js +38 -0
  722. package/out/src/storage/remoting/syncChunkBinary.js.map +1 -0
  723. package/out/src/storage/remoting/validateRpcSyncProofs.d.ts +5 -0
  724. package/out/src/storage/remoting/validateRpcSyncProofs.d.ts.map +1 -0
  725. package/out/src/storage/remoting/validateRpcSyncProofs.js +82 -0
  726. package/out/src/storage/remoting/validateRpcSyncProofs.js.map +1 -0
  727. package/out/src/storage/schema/KnexMigrations.d.ts +13 -2
  728. package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
  729. package/out/src/storage/schema/KnexMigrations.js +334 -43
  730. package/out/src/storage/schema/KnexMigrations.js.map +1 -1
  731. package/out/src/storage/schema/StorageIdbSchema.d.ts +3 -0
  732. package/out/src/storage/schema/StorageIdbSchema.d.ts.map +1 -1
  733. package/out/src/storage/schema/entities/EntityOutput.d.ts.map +1 -1
  734. package/out/src/storage/schema/entities/EntityOutput.js +24 -4
  735. package/out/src/storage/schema/entities/EntityOutput.js.map +1 -1
  736. package/out/src/storage/schema/entities/EntityOutputBasket.d.ts.map +1 -1
  737. package/out/src/storage/schema/entities/EntityOutputBasket.js +5 -2
  738. package/out/src/storage/schema/entities/EntityOutputBasket.js.map +1 -1
  739. package/out/src/storage/schema/entities/EntityProvenTx.d.ts +4 -1
  740. package/out/src/storage/schema/entities/EntityProvenTx.d.ts.map +1 -1
  741. package/out/src/storage/schema/entities/EntityProvenTx.js +125 -41
  742. package/out/src/storage/schema/entities/EntityProvenTx.js.map +1 -1
  743. package/out/src/storage/schema/entities/EntityProvenTxReq.js +1 -1
  744. package/out/src/storage/schema/entities/EntityProvenTxReq.js.map +1 -1
  745. package/out/src/storage/schema/entities/EntitySyncState.d.ts +4 -2
  746. package/out/src/storage/schema/entities/EntitySyncState.d.ts.map +1 -1
  747. package/out/src/storage/schema/entities/EntitySyncState.js +12 -6
  748. package/out/src/storage/schema/entities/EntitySyncState.js.map +1 -1
  749. package/out/src/storage/schema/entities/EntityTransaction.d.ts +26 -0
  750. package/out/src/storage/schema/entities/EntityTransaction.d.ts.map +1 -1
  751. package/out/src/storage/schema/entities/EntityTransaction.js +221 -21
  752. package/out/src/storage/schema/entities/EntityTransaction.js.map +1 -1
  753. package/out/src/storage/schema/tables/TableCertificate.d.ts +1 -1
  754. package/out/src/storage/schema/tables/TableCertificate.d.ts.map +1 -1
  755. package/out/src/storage/schema/tables/TableCertificateField.d.ts +1 -1
  756. package/out/src/storage/schema/tables/TableCertificateField.d.ts.map +1 -1
  757. package/out/src/storage/schema/tables/TableCommission.d.ts +1 -1
  758. package/out/src/storage/schema/tables/TableCommission.d.ts.map +1 -1
  759. package/out/src/storage/schema/tables/TableMonitorEvent.d.ts +1 -1
  760. package/out/src/storage/schema/tables/TableMonitorEvent.d.ts.map +1 -1
  761. package/out/src/storage/schema/tables/TableOutput.d.ts +1 -1
  762. package/out/src/storage/schema/tables/TableOutput.d.ts.map +1 -1
  763. package/out/src/storage/schema/tables/TableOutputBasket.d.ts +1 -1
  764. package/out/src/storage/schema/tables/TableOutputBasket.d.ts.map +1 -1
  765. package/out/src/storage/schema/tables/TableOutputTag.d.ts +1 -1
  766. package/out/src/storage/schema/tables/TableOutputTag.d.ts.map +1 -1
  767. package/out/src/storage/schema/tables/TableOutputTagMap.d.ts +1 -1
  768. package/out/src/storage/schema/tables/TableOutputTagMap.d.ts.map +1 -1
  769. package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.d.ts +23 -0
  770. package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.d.ts.map +1 -0
  771. package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.js +3 -0
  772. package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.js.map +1 -0
  773. package/out/src/storage/schema/tables/TableProvenTx.d.ts +1 -1
  774. package/out/src/storage/schema/tables/TableProvenTx.d.ts.map +1 -1
  775. package/out/src/storage/schema/tables/TableProvenTxReq.d.ts +1 -1
  776. package/out/src/storage/schema/tables/TableProvenTxReq.d.ts.map +1 -1
  777. package/out/src/storage/schema/tables/TableSettings.d.ts +2 -2
  778. package/out/src/storage/schema/tables/TableSettings.d.ts.map +1 -1
  779. package/out/src/storage/schema/tables/TableSyncState.d.ts +1 -1
  780. package/out/src/storage/schema/tables/TableSyncState.d.ts.map +1 -1
  781. package/out/src/storage/schema/tables/TableTransaction.d.ts +17 -1
  782. package/out/src/storage/schema/tables/TableTransaction.d.ts.map +1 -1
  783. package/out/src/storage/schema/tables/TableTransaction.js +14 -1
  784. package/out/src/storage/schema/tables/TableTransaction.js.map +1 -1
  785. package/out/src/storage/schema/tables/TableTxLabel.d.ts +1 -1
  786. package/out/src/storage/schema/tables/TableTxLabel.d.ts.map +1 -1
  787. package/out/src/storage/schema/tables/TableTxLabelMap.d.ts +1 -1
  788. package/out/src/storage/schema/tables/TableTxLabelMap.d.ts.map +1 -1
  789. package/out/src/storage/schema/tables/TableUser.d.ts +1 -1
  790. package/out/src/storage/schema/tables/TableUser.d.ts.map +1 -1
  791. package/out/src/storage/sync/StorageMySQLDojoReader.d.ts.map +1 -1
  792. package/out/src/storage/sync/StorageMySQLDojoReader.js +8 -7
  793. package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -1
  794. package/out/src/storage/sync/SyncPageBudget.d.ts +8 -0
  795. package/out/src/storage/sync/SyncPageBudget.d.ts.map +1 -0
  796. package/out/src/storage/sync/SyncPageBudget.js +24 -0
  797. package/out/src/storage/sync/SyncPageBudget.js.map +1 -0
  798. package/out/src/storage/sync/syncCheckpoint.d.ts +4 -0
  799. package/out/src/storage/sync/syncCheckpoint.d.ts.map +1 -0
  800. package/out/src/storage/sync/syncCheckpoint.js +49 -0
  801. package/out/src/storage/sync/syncCheckpoint.js.map +1 -0
  802. package/out/src/utility/Argon2idBackend.d.ts +36 -0
  803. package/out/src/utility/Argon2idBackend.d.ts.map +1 -0
  804. package/out/src/utility/Argon2idBackend.js +60 -0
  805. package/out/src/utility/Argon2idBackend.js.map +1 -0
  806. package/out/src/utility/actionBatchDigest.d.ts.map +1 -1
  807. package/out/src/utility/actionBatchDigest.js +9 -7
  808. package/out/src/utility/actionBatchDigest.js.map +1 -1
  809. package/out/src/utility/actionBatchPack.d.ts.map +1 -1
  810. package/out/src/utility/actionBatchPack.js +7 -12
  811. package/out/src/utility/actionBatchPack.js.map +1 -1
  812. package/out/src/utility/beefForTxids.d.ts +12 -3
  813. package/out/src/utility/beefForTxids.d.ts.map +1 -1
  814. package/out/src/utility/beefForTxids.js +69 -21
  815. package/out/src/utility/beefForTxids.js.map +1 -1
  816. package/out/src/utility/brc153ReferenceLabels.d.ts +16 -0
  817. package/out/src/utility/brc153ReferenceLabels.d.ts.map +1 -1
  818. package/out/src/utility/brc153ReferenceLabels.js +20 -5
  819. package/out/src/utility/brc153ReferenceLabels.js.map +1 -1
  820. package/out/src/utility/brc177NoSendExpiry.d.ts +34 -0
  821. package/out/src/utility/brc177NoSendExpiry.d.ts.map +1 -0
  822. package/out/src/utility/brc177NoSendExpiry.js +81 -0
  823. package/out/src/utility/brc177NoSendExpiry.js.map +1 -0
  824. package/out/src/utility/canonicalizeAtomicBeef.d.ts +12 -0
  825. package/out/src/utility/canonicalizeAtomicBeef.d.ts.map +1 -0
  826. package/out/src/utility/canonicalizeAtomicBeef.js +23 -0
  827. package/out/src/utility/canonicalizeAtomicBeef.js.map +1 -0
  828. package/out/src/utility/exactActionSpend.d.ts +9 -0
  829. package/out/src/utility/exactActionSpend.d.ts.map +1 -0
  830. package/out/src/utility/exactActionSpend.js +26 -0
  831. package/out/src/utility/exactActionSpend.js.map +1 -0
  832. package/out/src/utility/hashWasm.d.ts +1 -1
  833. package/out/src/utility/hashWasm.d.ts.map +1 -1
  834. package/out/src/utility/hashWasm.js +83 -1
  835. package/out/src/utility/hashWasm.js.map +1 -1
  836. package/out/src/utility/identityUtils.d.ts +44 -4
  837. package/out/src/utility/identityUtils.d.ts.map +1 -1
  838. package/out/src/utility/identityUtils.js +523 -61
  839. package/out/src/utility/identityUtils.js.map +1 -1
  840. package/out/src/utility/index.all.d.ts +2 -0
  841. package/out/src/utility/index.all.d.ts.map +1 -1
  842. package/out/src/utility/index.all.js +2 -0
  843. package/out/src/utility/index.all.js.map +1 -1
  844. package/out/src/utility/index.client.d.ts +2 -0
  845. package/out/src/utility/index.client.d.ts.map +1 -1
  846. package/out/src/utility/index.client.js +2 -0
  847. package/out/src/utility/index.client.js.map +1 -1
  848. package/out/src/utility/parseTxScriptOffsets.d.ts.map +1 -1
  849. package/out/src/utility/parseTxScriptOffsets.js +1 -19
  850. package/out/src/utility/parseTxScriptOffsets.js.map +1 -1
  851. package/out/src/utility/tscProofToMerklePath.d.ts.map +1 -1
  852. package/out/src/utility/tscProofToMerklePath.js +35 -4
  853. package/out/src/utility/tscProofToMerklePath.js.map +1 -1
  854. package/out/src/utility/utilityHelpers.d.ts +1 -1
  855. package/out/src/utility/utilityHelpers.d.ts.map +1 -1
  856. package/out/src/utility/utilityHelpers.js +10 -7
  857. package/out/src/utility/utilityHelpers.js.map +1 -1
  858. package/out/src/utility/utilityHelpers.noBuffer.d.ts.map +1 -1
  859. package/out/src/utility/utilityHelpers.noBuffer.js +6 -6
  860. package/out/src/utility/utilityHelpers.noBuffer.js.map +1 -1
  861. package/out/src/utility/verifyOverlayOutput.d.ts +12 -0
  862. package/out/src/utility/verifyOverlayOutput.d.ts.map +1 -0
  863. package/out/src/utility/verifyOverlayOutput.js +22 -0
  864. package/out/src/utility/verifyOverlayOutput.js.map +1 -0
  865. package/out/src/utility/walletResultGuards.d.ts +14 -0
  866. package/out/src/utility/walletResultGuards.d.ts.map +1 -0
  867. package/out/src/utility/walletResultGuards.js +28 -0
  868. package/out/src/utility/walletResultGuards.js.map +1 -0
  869. package/out/src/wab-client/WABClient.d.ts +4 -17
  870. package/out/src/wab-client/WABClient.d.ts.map +1 -1
  871. package/out/src/wab-client/WABClient.js +35 -12
  872. package/out/src/wab-client/WABClient.js.map +1 -1
  873. package/out/src/wab-client/WABResponseValidation.d.ts +48 -0
  874. package/out/src/wab-client/WABResponseValidation.d.ts.map +1 -0
  875. package/out/src/wab-client/WABResponseValidation.js +321 -0
  876. package/out/src/wab-client/WABResponseValidation.js.map +1 -0
  877. package/out/src/wab-client/WABTransport.d.ts +17 -23
  878. package/out/src/wab-client/WABTransport.d.ts.map +1 -1
  879. package/out/src/wab-client/WABTransport.js +130 -142
  880. package/out/src/wab-client/WABTransport.js.map +1 -1
  881. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts +8 -0
  882. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts.map +1 -1
  883. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js +3 -2
  884. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js.map +1 -1
  885. package/package.json +35 -30
  886. package/docs/open-rpc/index.html +0 -46
@@ -8,6 +8,7 @@ const utilityHelpers_1 = require("../../../../utility/utilityHelpers");
8
8
  const HeightRange_1 = require("../util/HeightRange");
9
9
  const WERR_errors_1 = require("../../../../sdk/WERR_errors");
10
10
  const KnexMigrations_1 = require("../../../../storage/schema/KnexMigrations");
11
+ const BulkFileDataManager_1 = require("../util/BulkFileDataManager");
11
12
  function createInsertHeaderResult() {
12
13
  return {
13
14
  added: false,
@@ -22,6 +23,12 @@ function createInsertHeaderResult() {
22
23
  deactivatedHeaders: []
23
24
  };
24
25
  }
26
+ function toKnexBulkFileRow(file) {
27
+ const row = Object.fromEntries(Object.entries(file).filter(([, value]) => value !== undefined));
28
+ if (file.data != null)
29
+ row.data = Buffer.from(file.data);
30
+ return row;
31
+ }
25
32
  /**
26
33
  * Implements the ChaintracksStorageApi using Knex.js for both MySql and Sqlite support.
27
34
  * Also see `chaintracksStorageMemory` which leverages Knex support for an in memory database.
@@ -38,6 +45,7 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
38
45
  _dbtype;
39
46
  bulkFilesTableName = 'bulk_files';
40
47
  headerTableName = 'live_headers';
48
+ stateTableName = 'chaintracks_state';
41
49
  constructor(options) {
42
50
  super(options);
43
51
  if (options.knex == null)
@@ -57,9 +65,19 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
57
65
  /* ignore */
58
66
  }
59
67
  }
68
+ /**
69
+ * Chaintracks storage has not been tested on Postgres. Reject it before any
70
+ * migration runs, although `determineDBType` recognizes it for wallet storage.
71
+ */
72
+ assertSupportedDialect() {
73
+ if (this.knex.client.dialect === 'postgresql') {
74
+ throw new WERR_errors_1.WERR_NOT_IMPLEMENTED('ChaintracksStorageKnex supports SQLite and MySQL only.');
75
+ }
76
+ }
60
77
  async makeAvailable() {
61
78
  if (this.isAvailable && this.hasMigrated)
62
79
  return;
80
+ this.assertSupportedDialect();
63
81
  // Not a base class policy, but we want to ensure migrations are run before getting to business.
64
82
  if (!this.hasMigrated) {
65
83
  await this.migrateLatest();
@@ -74,6 +92,7 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
74
92
  async migrateLatest() {
75
93
  if (this.hasMigrated)
76
94
  return;
95
+ this.assertSupportedDialect();
77
96
  await this.knex.migrate.latest({ migrationSource: new ChaintracksKnexMigrations_1.ChaintracksKnexMigrations(this.chain) });
78
97
  await super.migrateLatest();
79
98
  }
@@ -84,19 +103,11 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
84
103
  };
85
104
  const count = Object.keys(config.migrationSource.migrations).length;
86
105
  for (let i = 0; i < count; i++) {
87
- try {
88
- const r = await this.knex.migrate.down(config);
89
- if (!r) {
90
- console.error('Migration returned falsy result await this.knex.migrate.down(config)');
91
- break;
92
- }
93
- }
94
- catch (migrationError) {
95
- // migrate.down throws when there are no more migrations to roll back — this is
96
- // the expected terminal condition, so we stop iterating rather than propagating.
97
- console.debug('migrate.down stopped (no more migrations or error):', migrationError);
106
+ if ((await this.knex.migrate.currentVersion(config)) === 'none')
98
107
  break;
99
- }
108
+ const result = await this.knex.migrate.down(config);
109
+ if (result == null)
110
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('database migration rollback returned no result');
100
111
  }
101
112
  this.hasMigrated = false;
102
113
  await super.dropAllData();
@@ -105,80 +116,192 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
105
116
  await this.knex.destroy();
106
117
  }
107
118
  async findLiveHeightRange() {
108
- return new HeightRange_1.HeightRange((await this.knex(this.headerTableName).where({ isActive: true }).min('height as v')).pop()?.v || 0, (await this.knex(this.headerTableName).where({ isActive: true }).max('height as v')).pop()?.v || -1);
119
+ const min = (await this.knex(this.headerTableName).where({ isActive: true }).min('height as v')).pop()?.v;
120
+ const max = (await this.knex(this.headerTableName).where({ isActive: true }).max('height as v')).pop()?.v;
121
+ if (min == null || max == null)
122
+ return HeightRange_1.HeightRange.empty;
123
+ const minHeight = Number(min);
124
+ const maxHeight = Number(max);
125
+ this.validateHeight(minHeight, 'stored minimum height');
126
+ this.validateHeight(maxHeight, 'stored maximum height');
127
+ return new HeightRange_1.HeightRange(minHeight, maxHeight);
109
128
  }
110
129
  async findLiveHeaderForHeaderId(headerId) {
130
+ if (!Number.isSafeInteger(headerId) || headerId < 1) {
131
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('headerId', 'a positive safe integer');
132
+ }
111
133
  const [header] = await this.knex(this.headerTableName).where({ headerId });
112
134
  if (!header)
113
135
  throw new Error(`HeaderId ${headerId} not found in live header database.`);
114
136
  return header;
115
137
  }
116
138
  async findChainTipHeader() {
117
- const [tip] = await this.knex(this.headerTableName).where({ isActive: true, isChainTip: true });
139
+ const tips = await this.knex(this.headerTableName)
140
+ .where({ isActive: true, isChainTip: true })
141
+ .limit(2);
142
+ if (tips.length > 1)
143
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('multiple active chain tips exist in the database');
144
+ const [tip] = tips;
118
145
  if (!tip)
119
146
  throw new Error('Database contains no active chain tip header.');
120
147
  return tip;
121
148
  }
122
149
  async findChainTipHeaderOrUndefined() {
123
- const [tip] = await this.knex(this.headerTableName).where({ isActive: true, isChainTip: true });
124
- return tip;
150
+ const tips = await this.knex(this.headerTableName)
151
+ .where({ isActive: true, isChainTip: true })
152
+ .limit(2);
153
+ if (tips.length > 1)
154
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('multiple active chain tips exist in the database');
155
+ return tips[0];
125
156
  }
126
157
  async findLiveHeaderForHeight(height) {
127
- const [header] = await this.knex(this.headerTableName).where({ height, isActive: true });
128
- return header || null;
158
+ this.validateHeight(height);
159
+ const headers = await this.knex(this.headerTableName).where({ height, isActive: true }).limit(2);
160
+ if (headers.length > 1)
161
+ throw new WERR_errors_1.WERR_INVALID_OPERATION(`multiple active headers exist at height ${height}`);
162
+ return headers[0] || null;
129
163
  }
130
164
  async findLiveHeaderForBlockHash(hash) {
165
+ this.validateHash(hash);
131
166
  const [header] = await this.knex(this.headerTableName).where({ hash });
132
167
  const result = header || null;
133
168
  return result;
134
169
  }
135
170
  async findLiveHeaderForMerkleRoot(merkleRoot) {
136
- const [header] = await this.knex(this.headerTableName).where({ merkleRoot });
137
- return header;
171
+ this.validateHash(merkleRoot, 'merkleRoot');
172
+ const [header] = await this.knex(this.headerTableName)
173
+ .where({ merkleRoot })
174
+ .orderBy('isActive', 'desc')
175
+ .limit(1);
176
+ return header || null;
177
+ }
178
+ async withBulkFileLock(work) {
179
+ return await this.knex.transaction(async (trx) => {
180
+ const lockQuery = trx(this.stateTableName).where({ stateId: 1 });
181
+ const state = this.dbtype === 'MySQL' ? await lockQuery.forUpdate().first() : await lockQuery.first();
182
+ if (state == null)
183
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('Chaintracks bulk-file transaction lock row is missing');
184
+ return await work(trx);
185
+ });
138
186
  }
139
187
  async deleteBulkFile(fileId) {
140
- const count = await this.knex(this.bulkFilesTableName).where({ fileId }).del();
141
- return count;
188
+ if (!Number.isSafeInteger(fileId) || fileId < 1) {
189
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('fileId', 'a positive safe integer');
190
+ }
191
+ return await this.withBulkFileLock(async (trx) => await trx(this.bulkFilesTableName).where({ fileId }).del());
142
192
  }
143
193
  async insertBulkFile(file) {
144
- if (!file.fileId)
145
- delete file.fileId;
146
- const [id] = await this.knex(this.bulkFilesTableName).insert(file);
147
- file.fileId = id;
148
- return id;
194
+ const canonical = (0, BulkFileDataManager_1.normalizeBulkHeaderFileInfo)(file, true);
195
+ if (canonical.chain !== this.chain)
196
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('file.chain', this.chain);
197
+ delete canonical.fileId;
198
+ return await this.withBulkFileLock(async (trx) => {
199
+ const [id] = await trx(this.bulkFilesTableName).insert(toKnexBulkFileRow(canonical));
200
+ const fileId = Number(id);
201
+ if (!Number.isSafeInteger(fileId) || fileId < 1) {
202
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('database returned an invalid bulk-file id');
203
+ }
204
+ return fileId;
205
+ });
149
206
  }
150
207
  async updateBulkFile(fileId, file) {
151
- const n = await this.knex(this.bulkFilesTableName).where({ fileId }).update(file);
152
- return n;
208
+ if (!Number.isSafeInteger(fileId) || fileId < 1) {
209
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('fileId', 'a positive safe integer');
210
+ }
211
+ const canonical = (0, BulkFileDataManager_1.normalizeBulkHeaderFileInfo)(file, true);
212
+ if (canonical.chain !== this.chain)
213
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('file.chain', this.chain);
214
+ if (canonical.fileId !== undefined && canonical.fileId !== fileId) {
215
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('file.fileId', 'undefined or equal to fileId');
216
+ }
217
+ delete canonical.fileId;
218
+ return await this.withBulkFileLock(async (trx) => await trx(this.bulkFilesTableName).where({ fileId }).update(toKnexBulkFileRow(canonical)));
219
+ }
220
+ async replaceBulkFiles(files) {
221
+ const canonical = (0, BulkFileDataManager_1.normalizeBulkHeaderFileSequence)(files, true).map(value => {
222
+ if (value.chain !== this.chain)
223
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('file.chain', this.chain);
224
+ return value;
225
+ });
226
+ return await this.withBulkFileLock(async (trx) => {
227
+ const currentRows = await trx(this.bulkFilesTableName).select('fileId');
228
+ const currentIds = new Set();
229
+ for (const row of currentRows) {
230
+ const fileId = Number(row.fileId);
231
+ if (!Number.isSafeInteger(fileId) || fileId < 1 || currentIds.has(fileId)) {
232
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('database contains an invalid or duplicate bulk-file id');
233
+ }
234
+ currentIds.add(fileId);
235
+ }
236
+ const retainedIds = new Set();
237
+ const committed = [];
238
+ for (const file of canonical) {
239
+ const row = toKnexBulkFileRow(file);
240
+ delete row.fileId;
241
+ let fileId = file.fileId;
242
+ if (fileId !== undefined) {
243
+ if (!currentIds.has(fileId) || retainedIds.has(fileId)) {
244
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('file.fileId', 'a unique id belonging to the current bulk-file set');
245
+ }
246
+ const affected = await trx(this.bulkFilesTableName).where({ fileId }).update(row);
247
+ if (affected !== 1)
248
+ throw new WERR_errors_1.WERR_INVALID_OPERATION(`failed to replace bulk file ${fileId}`);
249
+ }
250
+ else {
251
+ const [inserted] = await trx(this.bulkFilesTableName).insert(row);
252
+ fileId = Number(inserted);
253
+ if (!Number.isSafeInteger(fileId) || fileId < 1) {
254
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('database returned an invalid bulk-file id');
255
+ }
256
+ }
257
+ retainedIds.add(fileId);
258
+ committed.push({ ...file, fileId });
259
+ }
260
+ const deleteIds = [...currentIds].filter(fileId => !retainedIds.has(fileId));
261
+ if (deleteIds.length > 0) {
262
+ const deleted = await trx(this.bulkFilesTableName).whereIn('fileId', deleteIds).del();
263
+ if (deleted !== deleteIds.length)
264
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('failed to replace the complete bulk-file set');
265
+ }
266
+ return committed;
267
+ });
153
268
  }
154
269
  async getBulkFiles() {
155
270
  const files = await this.knex(this.bulkFilesTableName)
156
271
  .select('fileId', 'chain', 'fileName', 'firstHeight', 'count', 'prevHash', 'lastHash', 'fileHash', 'prevChainWork', 'lastChainWork', 'validated', 'sourceUrl')
157
272
  .orderBy('firstHeight', 'asc');
158
- return files;
159
- }
160
- dbTypeSubstring(source, fromOffset, forLength) {
161
- if (this.dbtype === 'MySQL')
162
- return `substring(${source} from ${fromOffset} for ${forLength})`;
163
- return `substr(${source}, ${fromOffset}, ${forLength})`;
273
+ return files.map(file => (0, BulkFileDataManager_1.normalizeBulkHeaderFileInfo)(file, true));
164
274
  }
165
275
  async getBulkFileData(fileId, offset, length) {
166
276
  await this.makeAvailable();
167
- if (!Number.isInteger(fileId))
168
- throw new WERR_errors_1.WERR_INVALID_PARAMETER('fileId', 'a valid, integer bulk_files fileId');
277
+ if (!Number.isSafeInteger(fileId) || fileId < 1) {
278
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('fileId', 'a positive safe-integer bulk_files fileId');
279
+ }
280
+ const hasOffset = offset !== undefined;
281
+ const hasLength = length !== undefined;
282
+ if (hasOffset !== hasLength) {
283
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('offset and length', 'both defined or both undefined');
284
+ }
285
+ if (hasOffset &&
286
+ (!Number.isSafeInteger(offset) ||
287
+ !Number.isSafeInteger(length) ||
288
+ offset < 0 ||
289
+ length < 0 ||
290
+ !Number.isSafeInteger(offset + length))) {
291
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('offset and length', 'non-negative safe integers with a safe sum');
292
+ }
169
293
  let data;
170
- if (Number.isInteger(offset) && Number.isInteger(length)) {
171
- let rs = await this.knex.raw(`select ${this.dbTypeSubstring('data', offset + 1, length)} as data from ${this.bulkFilesTableName} where fileId = '${fileId}'`);
172
- if (this.dbtype === 'MySQL')
173
- rs = rs[0];
174
- const r = (0, utilityHelpers_1.verifyOneOrNone)(rs);
294
+ if (hasOffset) {
295
+ const sql = this.dbtype === 'MySQL' ? 'substring(?? from ? for ?)' : 'substr(??, ?, ?)';
296
+ const slice = this.knex.raw(sql, ['data', offset + 1, length]);
297
+ const r = (0, utilityHelpers_1.verifyOneOrNone)(await this.knex(this.bulkFilesTableName).select({ data: slice }).where({ fileId }));
175
298
  if (r?.data != null) {
176
299
  data = Uint8Array.from(r.data);
177
300
  }
178
301
  }
179
302
  else {
180
303
  const r = (0, utilityHelpers_1.verifyOneOrNone)(await this.knex(this.bulkFilesTableName).where({ fileId }).select('data'));
181
- if (r.data)
304
+ if (r?.data)
182
305
  data = Uint8Array.from(r.data);
183
306
  }
184
307
  return data;
@@ -212,14 +335,21 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
212
335
  }
213
336
  async findActiveAncestor(trx, table, oneBack, result) {
214
337
  let activeAncestor = oneBack;
338
+ const visited = new Set();
215
339
  while (!activeAncestor.isActive) {
340
+ this.recordTraversalVisit(visited, activeAncestor, 'finding the active ancestor');
341
+ if (activeAncestor.previousHeaderId == null) {
342
+ result.noActiveAncestor = true;
343
+ return undefined;
344
+ }
216
345
  const [previousHeader] = await trx(table).where({
217
- headerId: activeAncestor.previousHeaderId || -1
346
+ headerId: activeAncestor.previousHeaderId
218
347
  });
219
348
  if (previousHeader == null) {
220
349
  result.noActiveAncestor = true;
221
350
  return undefined;
222
351
  }
352
+ this.validateStoredParentLink(activeAncestor, previousHeader);
223
353
  activeAncestor = previousHeader;
224
354
  }
225
355
  return activeAncestor;
@@ -227,27 +357,42 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
227
357
  async applyReorganization(trx, table, oneBack, activeAncestor, result) {
228
358
  if (activeAncestor.headerId === oneBack.headerId)
229
359
  return;
230
- let [headerToDeactivate] = await trx(table).where({
231
- isChainTip: true,
232
- isActive: true
233
- });
360
+ const activeTips = await trx(table).where({ isChainTip: true, isActive: true }).limit(2);
361
+ if (activeTips.length !== 1) {
362
+ throw new WERR_errors_1.WERR_INVALID_OPERATION(`expected one active chain tip, found ${activeTips.length}`);
363
+ }
364
+ let headerToDeactivate = activeTips[0];
365
+ const deactivated = new Set();
234
366
  while (headerToDeactivate.headerId !== activeAncestor.headerId) {
367
+ this.recordTraversalVisit(deactivated, headerToDeactivate, 'deactivating the prior active chain');
235
368
  result.deactivatedHeaders.push(headerToDeactivate);
236
- await trx(table)
237
- .where({ headerId: headerToDeactivate.headerId })
238
- .update({ isActive: false });
239
- [headerToDeactivate] = await trx(table).where({
240
- headerId: headerToDeactivate.previousHeaderId || -1
369
+ await trx(table).where({ headerId: headerToDeactivate.headerId }).update({ isActive: false });
370
+ if (headerToDeactivate.previousHeaderId == null) {
371
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('active chain does not reach the selected reorganization ancestor');
372
+ }
373
+ const [previousHeader] = await trx(table).where({
374
+ headerId: headerToDeactivate.previousHeaderId
241
375
  });
376
+ if (previousHeader == null)
377
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('active chain contains a missing parent header');
378
+ this.validateStoredParentLink(headerToDeactivate, previousHeader);
379
+ headerToDeactivate = previousHeader;
242
380
  }
243
381
  let headerToActivate = oneBack;
382
+ const activated = new Set();
244
383
  while (headerToActivate.headerId !== activeAncestor.headerId) {
245
- await trx(table)
246
- .where({ headerId: headerToActivate.headerId })
247
- .update({ isActive: true });
248
- [headerToActivate] = await trx(table).where({
249
- headerId: headerToActivate.previousHeaderId || -1
384
+ this.recordTraversalVisit(activated, headerToActivate, 'activating the replacement chain');
385
+ await trx(table).where({ headerId: headerToActivate.headerId }).update({ isActive: true });
386
+ if (headerToActivate.previousHeaderId == null) {
387
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('replacement chain does not reach the selected reorganization ancestor');
388
+ }
389
+ const [previousHeader] = await trx(table).where({
390
+ headerId: headerToActivate.previousHeaderId
250
391
  });
392
+ if (previousHeader == null)
393
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('replacement chain contains a missing parent header');
394
+ this.validateStoredParentLink(headerToActivate, previousHeader);
395
+ headerToActivate = previousHeader;
251
396
  }
252
397
  }
253
398
  async prepareActiveTip(trx, table, header, oneBack, result) {
@@ -257,8 +402,7 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
257
402
  if (activeAncestor == null)
258
403
  return false;
259
404
  if (!(oneBack.isActive && oneBack.isChainTip)) {
260
- result.reorgDepth =
261
- Math.min(result.priorTip.height, header.height) - activeAncestor.height;
405
+ result.reorgDepth = Math.min(result.priorTip.height, header.height) - activeAncestor.height;
262
406
  }
263
407
  await this.applyReorganization(trx, table, oneBack, activeAncestor, result);
264
408
  return true;
@@ -286,11 +430,17 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
286
430
  result.priorTip = oneBack;
287
431
  }
288
432
  else {
289
- ;
290
- [result.priorTip] = await trx(table).where({
433
+ const activeTips = await trx(table)
434
+ .where({
291
435
  isActive: true,
292
436
  isChainTip: true
293
- });
437
+ })
438
+ .limit(2);
439
+ if (activeTips.length > 1) {
440
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('multiple active chain tips exist in the database');
441
+ }
442
+ ;
443
+ [result.priorTip] = activeTips;
294
444
  }
295
445
  if (result.priorTip == null) {
296
446
  result.noTip = true;
@@ -309,23 +459,36 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
309
459
  return;
310
460
  }
311
461
  if (oneBack.isChainTip) {
312
- await trx(table)
313
- .where({ headerId: oneBack.headerId })
314
- .update({ isChainTip: false });
462
+ await trx(table).where({ headerId: oneBack.headerId }).update({ isChainTip: false });
315
463
  }
316
464
  await trx(table).insert(newHeader);
317
465
  result.added = true;
318
466
  }
319
467
  async insertHeader(header) {
468
+ header = this.validateIncomingHeader(header);
469
+ await this.makeAvailable();
320
470
  const table = this.headerTableName;
321
471
  const r = createInsertHeaderResult();
322
- await this.knex.transaction(async (trx) => this.insertHeaderWithinTransaction(trx, table, header, r));
472
+ await this.knex.transaction(async (trx) => {
473
+ const lockQuery = trx(this.stateTableName).where({ stateId: 1 });
474
+ const state = this.dbtype === 'MySQL' ? await lockQuery.forUpdate().first() : await lockQuery.first();
475
+ if (state == null)
476
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('Chaintracks insertion lock row is missing');
477
+ await this.insertHeaderWithinTransaction(trx, table, header, r);
478
+ });
323
479
  if (r.added && r.isActiveTip)
324
- this.pruneLiveBlockHeaders(header.height);
480
+ await this.pruneLiveBlockHeaders(header.height);
325
481
  return r;
326
482
  }
327
483
  async findMaxHeaderId() {
328
- return (await this.knex(this.headerTableName).max('headerId as v')).pop()?.v || -1;
484
+ const value = (await this.knex(this.headerTableName).max('headerId as v')).pop()?.v;
485
+ if (value == null)
486
+ return -1;
487
+ const headerId = Number(value);
488
+ if (!Number.isSafeInteger(headerId) || headerId < 1) {
489
+ throw new WERR_errors_1.WERR_INVALID_OPERATION('database contains an invalid maximum headerId');
490
+ }
491
+ return headerId;
329
492
  }
330
493
  async deleteLiveBlockHeaders() {
331
494
  const table = this.headerTableName;
@@ -336,32 +499,27 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
336
499
  }
337
500
  async deleteBulkBlockHeaders() {
338
501
  const table = this.bulkFilesTableName;
339
- await this.knex.transaction(async (trx) => {
502
+ await this.withBulkFileLock(async (trx) => {
340
503
  await trx(table).del();
341
504
  });
342
505
  }
343
506
  async deleteOlderLiveBlockHeaders(maxHeight) {
507
+ this.validateHeight(maxHeight, 'maxHeight');
344
508
  return await this.knex.transaction(async (trx) => {
345
- try {
346
- const tableName = this.headerTableName;
347
- await trx(tableName)
348
- .whereIn('previousHeaderId', function () {
349
- this.select('headerId').from(tableName).where('height', '<=', maxHeight);
350
- })
351
- .update({ previousHeaderId: null });
352
- const deletedCount = await trx(tableName).where('height', '<=', maxHeight).del();
353
- // Commit transaction
354
- await trx.commit();
355
- return deletedCount;
356
- }
357
- catch (error) {
358
- // Rollback on error
359
- await trx.rollback();
360
- throw error;
361
- }
509
+ const tableName = this.headerTableName;
510
+ await trx(tableName)
511
+ .whereIn('previousHeaderId', function () {
512
+ this.select('headerId').from(tableName).where('height', '<=', maxHeight);
513
+ })
514
+ .update({ previousHeaderId: null });
515
+ const deleted = await trx(tableName).where('height', '<=', maxHeight).del();
516
+ return Number(deleted ?? 0);
362
517
  });
363
518
  }
364
519
  async getLiveHeaders(range) {
520
+ this.validateRange(range);
521
+ if (range.isEmpty)
522
+ return [];
365
523
  const headers = await this.knex(this.headerTableName)
366
524
  .where({ isActive: true })
367
525
  .andWhere('height', '>=', range.minHeight)
@@ -379,6 +537,9 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
379
537
  return r;
380
538
  }
381
539
  async liveHeadersForBulk(count) {
540
+ if (!Number.isSafeInteger(count) || count < 1 || count > 100_000) {
541
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER('count', 'an integer from 1 through 100000');
542
+ }
382
543
  const headers = await this.knex(this.headerTableName)
383
544
  .where({ isActive: true })
384
545
  .limit(count)
@@ -1 +1 @@
1
- {"version":3,"file":"ChaintracksStorageKnex.js","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.ts"],"names":[],"mappings":";;;AACA,2EAAuE;AAEvE,qEAAiE;AAGjE,uEAAqF;AACrF,uEAAoE;AAGpE,qDAAiD;AAEjD,6DAA4F;AAC5F,8EAA2E;AAW3E,SAAS,wBAAwB;IAC/B,OAAO;QACL,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,KAAK;QACX,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,KAAK;QACd,gBAAgB,EAAE,KAAK;QACvB,WAAW,EAAE,KAAK;QAClB,UAAU,EAAE,CAAC;QACb,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,KAAK;QACZ,kBAAkB,EAAE,EAAE;KACvB,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,4BAAoC,SAAQ,+CAAsB;IAChE,MAAM,CAAC,wBAAwB,CAAE,KAAY,EAAE,IAAW;QACxD,MAAM,OAAO,GAAkC;YAC7C,GAAG,+CAAsB,CAAC,wBAAwB,CAAC,KAAK,CAAC;YACzD,IAAI;SACL,CAAA;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,IAAI,CAAM;IACV,OAAO,CAAS;IAChB,kBAAkB,GAAW,YAAY,CAAA;IACzC,eAAe,GAAW,cAAc,CAAA;IAExC,YAAa,OAAsC;QACjD,KAAK,CAAC,OAAO,CAAC,CAAA;QACd,IAAI,OAAO,CAAC,IAAI,IAAI,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QACnF,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;IAC1B,CAAC;IAED,IAAI,MAAM;QACR,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,oCAAsB,CAAC,+BAA+B,CAAC,CAAA;QACpF,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAEQ,KAAK,CAAC,QAAQ;QACrB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,YAAY;QACd,CAAC;IACH,CAAC;IAEQ,KAAK,CAAC,aAAa;QAC1B,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW;YAAE,OAAM;QAChD,gGAAgG;QAChG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAC5B,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,GAAG,MAAM,IAAA,gCAAe,EAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC/C,MAAM,KAAK,CAAC,aAAa,EAAE,CAAA;YAC3B,kFAAkF;YAClF,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;QACnD,CAAC;IACH,CAAC;IAEQ,KAAK,CAAC,aAAa;QAC1B,IAAI,IAAI,CAAC,WAAW;YAAE,OAAM;QAC5B,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,eAAe,EAAE,IAAI,qDAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC9F,MAAM,KAAK,CAAC,aAAa,EAAE,CAAA;IAC7B,CAAC;IAEQ,KAAK,CAAC,WAAW;QACxB,yFAAyF;QACzF,MAAM,MAAM,GAAG;YACb,eAAe,EAAE,IAAI,qDAAyB,CAAC,MAAM,CAAC;SACvD,CAAA;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,MAAM,CAAA;QACnE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC9C,IAAI,CAAC,CAAC,EAAE,CAAC;oBACP,OAAO,CAAC,KAAK,CAAC,sEAAsE,CAAC,CAAA;oBACrF,MAAK;gBACP,CAAC;YACH,CAAC;YAAC,OAAO,cAAuB,EAAE,CAAC;gBACjC,+EAA+E;gBAC/E,iFAAiF;gBACjF,OAAO,CAAC,KAAK,CAAC,qDAAqD,EAAE,cAAc,CAAC,CAAA;gBACpF,MAAK;YACP,CAAC;QACH,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,KAAK,CAAA;QACxB,MAAM,KAAK,CAAC,WAAW,EAAE,CAAA;IAC3B,CAAC;IAEQ,KAAK,CAAC,OAAO;QACpB,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;IAC3B,CAAC;IAEQ,KAAK,CAAC,mBAAmB;QAChC,OAAO,IAAI,yBAAW,CACnB,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAY,IAAI,CAAC,EAC7G,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAY,IAAI,CAAC,CAAC,CAChH,CAAA;IACH,CAAC;IAEQ,KAAK,CAAC,yBAAyB,CAAE,QAAgB;QACxD,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC3F,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,YAAY,QAAQ,qCAAqC,CAAC,CAAA;QACvF,OAAO,MAAM,CAAA;IACf,CAAC;IAEQ,KAAK,CAAC,kBAAkB;QAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;QAChH,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;QAC1E,OAAO,GAAG,CAAA;IACZ,CAAC;IAEQ,KAAK,CAAC,6BAA6B;QAC1C,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;QAChH,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAE,MAAc;QAC3C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;QACzG,OAAO,MAAM,IAAI,IAAI,CAAA;IACvB,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAE,IAAY;QAC5C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;QACvF,MAAM,MAAM,GAAG,MAAM,IAAI,IAAI,CAAA;QAC7B,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,2BAA2B,CAAE,UAAkB;QACnD,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC,CAAA;QAC7F,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,cAAc,CAAE,MAAc;QAClC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE,CAAA;QAC9E,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,CAAC,cAAc,CAAE,IAAwB;QAC5C,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,MAAM,CAAA;QACpC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAClE,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QAChB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,KAAK,CAAC,cAAc,CAAE,MAAc,EAAE,IAAwB;QAC5D,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACjF,OAAO,CAAC,CAAA;IACV,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAqB,IAAI,CAAC,kBAAkB,CAAC;aACvE,MAAM,CACL,QAAQ,EACR,OAAO,EACP,UAAU,EACV,aAAa,EACb,OAAO,EACP,UAAU,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,eAAe,EACf,WAAW,EACX,WAAW,CACZ;aACA,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,CAAA;QAChC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,eAAe,CAAE,MAAc,EAAE,UAAkB,EAAE,SAAkB;QACrE,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,aAAa,MAAM,SAAS,UAAU,QAAQ,SAAU,GAAG,CAAA;QAC/F,OAAO,UAAU,MAAM,KAAK,UAAU,KAAK,SAAS,GAAG,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,eAAe,CAAE,MAAc,EAAE,MAAe,EAAE,MAAe;QACrE,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,oCAAsB,CAAC,QAAQ,EAAE,oCAAoC,CAAC,CAAA;QAC/G,IAAI,IAA4B,CAAA;QAChC,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YACzD,IAAI,EAAE,GAAmC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAC1D,UAAU,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,MAAO,GAAG,CAAC,EAAE,MAAM,CAAC,iBAAiB,IAAI,CAAC,kBAAkB,oBAAoB,MAAM,GAAG,CACjI,CAAA;YACD,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;gBAAE,EAAE,GAAI,EAAuD,CAAC,CAAC,CAAC,CAAA;YAC7F,MAAM,CAAC,GAAG,IAAA,gCAAe,EAAC,EAAE,CAAC,CAAA;YAC7B,IAAI,CAAC,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC;gBACpB,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,IAAA,gCAAe,EAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;YACpG,IAAI,CAAC,CAAC,IAAI;gBAAE,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC5C,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,iBAAiB,CAC7B,GAAqB,EACrB,KAAa,EACb,MAAmB,EACnB,MAA0B;QAE1B,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAA;QAC1C,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAA;QACxD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAA;QACzD,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;YACzB,MAAM,IAAI,oCAAsB,CAC9B,+DAA+D,CAChE,CAAA;QACH,CAAC;QACD,IACE,MAAM,CAAC,YAAY,KAAK,YAAY,CAAC,QAAQ;YAC7C,MAAM,CAAC,MAAM,KAAK,YAAY,CAAC,WAAW,GAAG,YAAY,CAAC,KAAK,EAC/D,CAAC;YACD,OAAO,KAAK,CAAA;QACd,CAAC;QACD,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,MAAM,CAAC;YACvC,GAAG,MAAM;YACT,gBAAgB,EAAE,IAAI;YACtB,SAAS,EAAE,IAAA,8BAAO,EAChB,YAAY,CAAC,aAAa,EAC1B,IAAA,wCAAiB,EAAC,MAAM,CAAC,IAAI,CAAC,CAC/B;YACD,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,IAAI;SACf,CAAC,CAAA;QACF,MAAM,CAAC,WAAW,GAAG,IAAI,CAAA;QACzB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAA;QACnB,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,GAAqB,EACrB,KAAa,EACb,OAAwB,EACxB,MAA0B;QAE1B,IAAI,cAAc,GAAG,OAAO,CAAA;QAC5B,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;YAChC,MAAM,CAAC,cAAc,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC;gBAC/D,QAAQ,EAAE,cAAc,CAAC,gBAAgB,IAAI,CAAC,CAAC;aAChD,CAAC,CAAA;YACF,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;gBAC3B,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAA;gBAC9B,OAAO,SAAS,CAAA;YAClB,CAAC;YACD,cAAc,GAAG,cAAc,CAAA;QACjC,CAAC;QACD,OAAO,cAAc,CAAA;IACvB,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,GAAqB,EACrB,KAAa,EACb,OAAwB,EACxB,cAA+B,EAC/B,MAA0B;QAE1B,IAAI,cAAc,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ;YAAE,OAAM;QACxD,IAAI,CAAC,kBAAkB,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC;YACjE,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,IAAI;SACf,CAAC,CAAA;QACF,OAAO,kBAAkB,CAAC,QAAQ,KAAK,cAAc,CAAC,QAAQ,EAAE,CAAC;YAC/D,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;YAClD,MAAM,GAAG,CAAkB,KAAK,CAAC;iBAC9B,KAAK,CAAC,EAAE,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC;iBAChD,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAC7B;YAAA,CAAC,kBAAkB,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC;gBAC9D,QAAQ,EAAE,kBAAkB,CAAC,gBAAgB,IAAI,CAAC,CAAC;aACpD,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,gBAAgB,GAAG,OAAO,CAAA;QAC9B,OAAO,gBAAgB,CAAC,QAAQ,KAAK,cAAc,CAAC,QAAQ,EAAE,CAAC;YAC7D,MAAM,GAAG,CAAkB,KAAK,CAAC;iBAC9B,KAAK,CAAC,EAAE,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC;iBAC9C,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAC5B;YAAA,CAAC,gBAAgB,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC;gBAC5D,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,IAAI,CAAC,CAAC;aAClD,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,GAAqB,EACrB,KAAa,EACb,MAAmB,EACnB,OAAwB,EACxB,MAA0B;QAE1B,IAAI,CAAC,MAAM,CAAC,WAAW;YAAE,OAAO,IAAI,CAAA;QACpC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAClD,GAAG,EACH,KAAK,EACL,OAAO,EACP,MAAM,CACP,CAAA;QACD,IAAI,cAAc,IAAI,IAAI;YAAE,OAAO,KAAK,CAAA;QACxC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,UAAU;gBACf,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAS,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,MAAM,CAAA;QAC5E,CAAC;QACD,MAAM,IAAI,CAAC,mBAAmB,CAC5B,GAAG,EACH,KAAK,EACL,OAAO,EACP,cAAc,EACd,MAAM,CACP,CAAA;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,KAAK,CAAC,6BAA6B,CACzC,GAAqB,EACrB,KAAa,EACb,MAAmB,EACnB,MAA0B;QAE1B,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;QACzE,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,GAAG,IAAI,CAAA;YAClB,OAAM;QACR,CAAC;QACD,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC;YACxD,IAAI,EAAE,MAAM,CAAC,YAAY;SAC1B,CAAC,CAAA;QACF,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACpB,IAAI,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;gBAAE,OAAM;YACpE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAA;YACpB,OAAM;QACR,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YACxC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAA;YACrB,OAAM;QACR,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YAC3C,MAAM,CAAC,QAAQ,GAAG,OAAO,CAAA;QAC3B,CAAC;aAAM,CAAC;YACN,CAAC;YAAA,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC;gBAC3D,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE,IAAI;aACjB,CAAC,CAAA;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;YAC5B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAA;YACnB,OAAM;QACR,CAAC;QACD,MAAM,SAAS,GAAG,IAAA,8BAAO,EACvB,OAAO,CAAC,SAAS,EACjB,IAAA,wCAAiB,EAAC,MAAM,CAAC,IAAI,CAAC,CAC/B,CAAA;QACD,MAAM,CAAC,WAAW,GAAG,IAAA,iCAAU,EAAC,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QACrE,MAAM,SAAS,GAAG;YAChB,GAAG,MAAM;YACT,gBAAgB,EAAE,OAAO,CAAC,QAAQ;YAClC,SAAS;YACT,UAAU,EAAE,MAAM,CAAC,WAAW;YAC9B,QAAQ,EAAE,MAAM,CAAC,WAAW;SAC7B,CAAA;QACD,IACE,CAAC,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,EACnE,CAAC;YACD,OAAM;QACR,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,MAAM,GAAG,CAAkB,KAAK,CAAC;iBAC9B,KAAK,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;iBACrC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAA;QAClC,CAAC;QACD,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACnD,MAAM,CAAC,KAAK,GAAG,IAAI,CAAA;IACrB,CAAC;IAED,KAAK,CAAC,YAAY,CAAE,MAAmB;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAA;QAClC,MAAM,CAAC,GAAG,wBAAwB,EAAE,CAAA;QACpC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE,CACtC,IAAI,CAAC,6BAA6B,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAC1D,CAAA;QAED,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW;YAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAEvE,OAAO,CAAC,CAAA;IACV,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,OAAQ,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAY,IAAI,CAAC,CAAC,CAAA;IAChG,CAAC;IAEQ,KAAK,CAAC,sBAAsB;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAA;QAClC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACtC,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAA;YACpE,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,GAAG,EAAE,CAAA;QACzC,CAAC,CAAC,CAAA;IACJ,CAAC;IAEQ,KAAK,CAAC,sBAAsB;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAA;QACrC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACtC,MAAM,GAAG,CAAqB,KAAK,CAAC,CAAC,GAAG,EAAE,CAAA;QAC5C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,2BAA2B,CAAE,SAAiB;QAClD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YAC7C,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAA;gBACtC,MAAM,GAAG,CAAC,SAAS,CAAC;qBACjB,OAAO,CAAC,kBAAkB,EAAE;oBAC3B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;gBAC1E,CAAC,CAAC;qBACD,MAAM,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAA;gBAErC,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,GAAG,EAAE,CAAA;gBAEhF,qBAAqB;gBACrB,MAAM,GAAG,CAAC,MAAM,EAAE,CAAA;gBAClB,OAAO,YAAY,CAAA;YACrB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,oBAAoB;gBACpB,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAA;gBACpB,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAE,KAAkB;QACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC;aACnE,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;aACzB,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;aACzC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;aACzC,OAAO,CAAC,QAAQ,CAAC,CAAA;QACpB,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,uBAAuB,CAAE,IAAgB;QACvC,MAAM,CAAC,GAAa,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;QACtC,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;YACtB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACX,CAAC;QACH,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAE,KAAa;QACrC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC;aACnE,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;aACzB,KAAK,CAAC,KAAK,CAAC;aACZ,OAAO,CAAC,QAAQ,CAAC,CAAA;QACpB,OAAO,OAAO,CAAA;IAChB,CAAC;CACF"}
1
+ {"version":3,"file":"ChaintracksStorageKnex.js","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.ts"],"names":[],"mappings":"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"}
@@ -19,8 +19,11 @@ export declare class ChaintracksStorageNoDb extends ChaintracksStorageBase {
19
19
  static readonly stnData: ChaintracksNoDbData;
20
20
  static readonly ttnData: ChaintracksNoDbData;
21
21
  static readonly tstnData: ChaintracksNoDbData;
22
+ private readonly instanceData;
22
23
  constructor(options: ChaintracksStorageNoDbOptions);
23
24
  destroy(): Promise<void>;
25
+ private getMutableData;
26
+ /** Returns an isolated diagnostic snapshot; mutating it never changes tracker state. */
24
27
  getData(): Promise<ChaintracksNoDbData>;
25
28
  deleteLiveBlockHeaders(): Promise<void>;
26
29
  deleteOlderLiveBlockHeaders(maxHeight: number): Promise<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"ChaintracksStorageNoDb.d.ts","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAChG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAGvD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAA;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAA;AAEvE,UAAU,mBAAmB;IAC3B,KAAK,EAAE,KAAK,CAAA;IACZ,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACzC,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACpC;AAED,MAAM,WAAW,6BAA8B,SAAQ,6BAA6B;CAAG;AAiBvF,qBAAa,sBAAuB,SAAQ,sBAAsB;IAChE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAM5C;IAED,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAM5C;IAED,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAM3C;IAED,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAM3C;IAED,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAM5C;IAED,YAAY,OAAO,EAAE,6BAA6B,EAEjD;IAEc,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAEtC;IAEK,OAAO,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAkB5C;IAEc,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAMrD;IAEc,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAoC7E;IAEc,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC,CAK5D;IAEc,6BAA6B,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAGnF;IAEc,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAIvF;IAEc,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAKnF;IAEc,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAGtF;IAEc,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAG9F;IAEc,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,CASzD;IAEc,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAGhD;IAEc,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAM3E;IAEc,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAO5E;YAEa,iBAAiB;IAgC/B,OAAO,CAAC,kBAAkB;IAiB1B,OAAO,CAAC,mBAAmB;IA4B3B,OAAO,CAAC,gBAAgB;IAgBT,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAmE5E;CACF"}
1
+ {"version":3,"file":"ChaintracksStorageNoDb.d.ts","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAChG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAGvD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAA;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAA;AAEvE,UAAU,mBAAmB;IAC3B,KAAK,EAAE,KAAK,CAAA;IACZ,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACzC,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACpC;AAED,MAAM,WAAW,6BAA8B,SAAQ,6BAA6B;CAAG;AAyBvF,qBAAa,sBAAuB,SAAQ,sBAAsB;IAChE,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAM5C;IAED,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAM5C;IAED,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAM3C;IAED,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAM3C;IAED,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAM5C;IAED,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAElD,YAAY,OAAO,EAAE,6BAA6B,EASjD;IAEc,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAEtC;IAED,OAAO,CAAC,cAAc;IAgBtB,wFAAwF;IAClF,OAAO,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAS5C;IAEc,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAMrD;IAEc,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAqC7E;IAEc,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC,CAO5D;IAEc,6BAA6B,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,CAMnF;IAEc,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAMvF;IAEc,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAQnF;IAEc,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAOtF;IAEc,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAM9F;IAEc,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,CASzD;IAEc,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAGhD;IAEc,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAU3E;IAEc,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAQ5E;YAEa,iBAAiB;IAmC/B,OAAO,CAAC,kBAAkB;IAwB1B,OAAO,CAAC,mBAAmB;IA+C3B,OAAO,CAAC,gBAAgB;IAgBT,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAwE5E;CACF"}