@bsv/wallet-toolbox 1.5.21 → 1.6.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 (1191) hide show
  1. package/CHANGELOG.md +10 -1
  2. package/docs/README.md +3 -3
  3. package/docs/client.md +14589 -7522
  4. package/docs/monitor.md +41 -21
  5. package/docs/services.md +5516 -521
  6. package/docs/setup.md +31 -31
  7. package/docs/storage.md +531 -549
  8. package/docs/wallet.md +14586 -7519
  9. package/mobile/out/src/CWIStyleWalletManager.js +1 -1
  10. package/mobile/out/src/CWIStyleWalletManager.js.map +1 -1
  11. package/mobile/out/src/Setup.d.ts +267 -0
  12. package/mobile/out/src/Setup.d.ts.map +1 -0
  13. package/mobile/out/src/Setup.js +408 -0
  14. package/mobile/out/src/Setup.js.map +1 -0
  15. package/mobile/out/src/SetupClient.d.ts +9 -5
  16. package/mobile/out/src/SetupClient.d.ts.map +1 -1
  17. package/mobile/out/src/SetupClient.js +21 -15
  18. package/mobile/out/src/SetupClient.js.map +1 -1
  19. package/mobile/out/src/SetupWallet.d.ts +9 -6
  20. package/mobile/out/src/SetupWallet.d.ts.map +1 -1
  21. package/mobile/out/src/Wallet.d.ts +19 -15
  22. package/mobile/out/src/Wallet.d.ts.map +1 -1
  23. package/mobile/out/src/Wallet.js +59 -90
  24. package/mobile/out/src/Wallet.js.map +1 -1
  25. package/mobile/out/src/index.client.d.ts +11 -10
  26. package/mobile/out/src/index.client.d.ts.map +1 -1
  27. package/mobile/out/src/index.client.js +11 -10
  28. package/mobile/out/src/index.client.js.map +1 -1
  29. package/mobile/out/src/index.mobile.d.ts +11 -10
  30. package/mobile/out/src/index.mobile.d.ts.map +1 -1
  31. package/mobile/out/src/index.mobile.js +11 -10
  32. package/mobile/out/src/index.mobile.js.map +1 -1
  33. package/mobile/out/src/monitor/Monitor.d.ts +14 -12
  34. package/mobile/out/src/monitor/Monitor.d.ts.map +1 -1
  35. package/mobile/out/src/monitor/Monitor.js +11 -43
  36. package/mobile/out/src/monitor/Monitor.js.map +1 -1
  37. package/mobile/out/src/monitor/tasks/TaskCheckForProofs.js +3 -2
  38. package/mobile/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
  39. package/mobile/out/src/monitor/tasks/TaskNewHeader.d.ts +16 -1
  40. package/mobile/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -1
  41. package/mobile/out/src/monitor/tasks/TaskNewHeader.js +22 -1
  42. package/mobile/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
  43. package/mobile/out/src/monitor/tasks/TaskSendWaiting.d.ts +1 -1
  44. package/mobile/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
  45. package/mobile/out/src/monitor/tasks/TaskSendWaiting.js +5 -5
  46. package/mobile/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  47. package/mobile/out/src/sdk/WalletServices.interfaces.d.ts +1 -1
  48. package/mobile/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  49. package/mobile/out/src/sdk/validationHelpers.d.ts +4 -5
  50. package/mobile/out/src/sdk/validationHelpers.d.ts.map +1 -1
  51. package/mobile/out/src/sdk/validationHelpers.js +47 -47
  52. package/mobile/out/src/sdk/validationHelpers.js.map +1 -1
  53. package/mobile/out/src/services/Services.d.ts +25 -24
  54. package/mobile/out/src/services/Services.d.ts.map +1 -1
  55. package/mobile/out/src/services/Services.js +38 -35
  56. package/mobile/out/src/services/Services.js.map +1 -1
  57. package/mobile/out/src/services/chaintracker/BHServiceClient.d.ts +11 -6
  58. package/mobile/out/src/services/chaintracker/BHServiceClient.d.ts.map +1 -1
  59. package/mobile/out/src/services/chaintracker/BHServiceClient.js +14 -3
  60. package/mobile/out/src/services/chaintracker/BHServiceClient.js.map +1 -1
  61. package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +2 -2
  62. package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
  63. package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.js +6 -4
  64. package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
  65. package/mobile/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts +2 -45
  66. package/mobile/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts.map +1 -1
  67. package/mobile/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js.map +1 -1
  68. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts +75 -0
  69. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts.map +1 -0
  70. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.js +3 -0
  71. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.js.map +1 -0
  72. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts +81 -0
  73. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts.map +1 -0
  74. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.js +3 -0
  75. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.js.map +1 -0
  76. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts +54 -0
  77. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts.map +1 -0
  78. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.js +3 -0
  79. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.js.map +1 -0
  80. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts +163 -0
  81. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts.map +1 -0
  82. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.js +3 -0
  83. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.js.map +1 -0
  84. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts +8 -0
  85. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts.map +1 -0
  86. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.js +3 -0
  87. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.js.map +1 -0
  88. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.d.ts +55 -0
  89. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.d.ts.map +1 -0
  90. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.js +3 -0
  91. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.js.map +1 -0
  92. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +317 -0
  93. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -0
  94. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.js +3 -0
  95. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.js.map +1 -0
  96. package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts +19 -0
  97. package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts.map +1 -0
  98. package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.js +3 -0
  99. package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.js.map +1 -0
  100. package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +100 -0
  101. package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -0
  102. package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.js +515 -0
  103. package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -0
  104. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts +30 -0
  105. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts.map +1 -0
  106. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.js +149 -0
  107. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +1 -0
  108. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts +11 -9
  109. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -1
  110. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +26 -15
  111. package/mobile/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -1
  112. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts +60 -0
  113. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -0
  114. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +119 -0
  115. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -0
  116. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts +76 -0
  117. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts.map +1 -0
  118. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +115 -0
  119. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -0
  120. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts +13 -0
  121. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts.map +1 -0
  122. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js +20 -0
  123. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js.map +1 -0
  124. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts +62 -0
  125. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -0
  126. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +60 -0
  127. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -0
  128. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts +23 -0
  129. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map +1 -0
  130. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js +57 -0
  131. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +1 -0
  132. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts +61 -0
  133. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -0
  134. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +40 -0
  135. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -0
  136. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts +51 -0
  137. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts.map +1 -0
  138. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +68 -0
  139. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -0
  140. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts +16 -0
  141. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map +1 -0
  142. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js +53 -0
  143. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +1 -0
  144. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +171 -0
  145. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -0
  146. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +502 -0
  147. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -0
  148. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts +88 -0
  149. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts.map +1 -0
  150. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js +119 -0
  151. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js.map +1 -0
  152. package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts +22 -0
  153. package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -0
  154. package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +67 -0
  155. package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -0
  156. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts +68 -0
  157. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -0
  158. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +253 -0
  159. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -0
  160. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +41 -0
  161. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -0
  162. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +325 -0
  163. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -0
  164. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts +4 -0
  165. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts.map +1 -0
  166. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js +24 -0
  167. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +1 -0
  168. package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts +31 -0
  169. package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts.map +1 -0
  170. package/mobile/out/src/services/chaintracker/chaintracks/index.client.js +69 -0
  171. package/mobile/out/src/services/chaintracker/chaintracks/index.client.js.map +1 -0
  172. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +142 -0
  173. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -0
  174. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +814 -0
  175. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -0
  176. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts +78 -0
  177. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -0
  178. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js +261 -0
  179. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -0
  180. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +129 -0
  181. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -0
  182. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +145 -0
  183. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -0
  184. package/mobile/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts +10 -0
  185. package/mobile/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts.map +1 -0
  186. package/mobile/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js +47 -0
  187. package/mobile/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js.map +1 -0
  188. package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts +72 -0
  189. package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -0
  190. package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.js +119 -0
  191. package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -0
  192. package/mobile/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts +14 -0
  193. package/mobile/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts.map +1 -0
  194. package/mobile/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js +88 -0
  195. package/mobile/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js.map +1 -0
  196. package/mobile/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts +41 -22
  197. package/mobile/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
  198. package/mobile/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +125 -72
  199. package/mobile/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
  200. package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts +5 -0
  201. package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -0
  202. package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +385 -0
  203. package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -0
  204. package/mobile/out/src/services/chaintracker/index.client.d.ts +4 -0
  205. package/mobile/out/src/services/chaintracker/index.client.d.ts.map +1 -0
  206. package/{out/src/services/chaintracker/index.js → mobile/out/src/services/chaintracker/index.client.js} +2 -2
  207. package/mobile/out/src/services/chaintracker/index.client.js.map +1 -0
  208. package/mobile/out/src/services/createDefaultWalletServicesOptions.d.ts +5 -4
  209. package/mobile/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
  210. package/mobile/out/src/services/createDefaultWalletServicesOptions.js +4 -4
  211. package/mobile/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
  212. package/mobile/out/src/services/providers/ARC.d.ts +3 -3
  213. package/mobile/out/src/services/providers/ARC.d.ts.map +1 -1
  214. package/mobile/out/src/services/providers/ARC.js +4 -3
  215. package/mobile/out/src/services/providers/ARC.js.map +1 -1
  216. package/mobile/out/src/services/providers/Bitails.d.ts +7 -6
  217. package/mobile/out/src/services/providers/Bitails.d.ts.map +1 -1
  218. package/mobile/out/src/services/providers/Bitails.js +7 -5
  219. package/mobile/out/src/services/providers/Bitails.js.map +1 -1
  220. package/mobile/out/src/services/providers/WhatsOnChain.d.ts +76 -17
  221. package/mobile/out/src/services/providers/WhatsOnChain.d.ts.map +1 -1
  222. package/mobile/out/src/services/providers/WhatsOnChain.js +241 -143
  223. package/mobile/out/src/services/providers/WhatsOnChain.js.map +1 -1
  224. package/mobile/out/src/services/providers/{echangeRates.d.ts → exchangeRates.d.ts} +4 -4
  225. package/mobile/out/src/services/providers/exchangeRates.d.ts.map +1 -0
  226. package/mobile/out/src/services/providers/{echangeRates.js → exchangeRates.js} +9 -9
  227. package/mobile/out/src/services/providers/exchangeRates.js.map +1 -0
  228. package/mobile/out/src/signer/WalletSigner.d.ts +3 -3
  229. package/mobile/out/src/signer/WalletSigner.d.ts.map +1 -1
  230. package/mobile/out/src/signer/WalletSigner.js.map +1 -1
  231. package/mobile/out/src/signer/methods/acquireDirectCertificate.d.ts +4 -2
  232. package/mobile/out/src/signer/methods/acquireDirectCertificate.d.ts.map +1 -1
  233. package/mobile/out/src/signer/methods/acquireDirectCertificate.js.map +1 -1
  234. package/mobile/out/src/signer/methods/buildSignableTransaction.d.ts +9 -3
  235. package/mobile/out/src/signer/methods/buildSignableTransaction.d.ts.map +1 -1
  236. package/mobile/out/src/signer/methods/buildSignableTransaction.js +27 -11
  237. package/mobile/out/src/signer/methods/buildSignableTransaction.js.map +1 -1
  238. package/mobile/out/src/signer/methods/completeSignedTransaction.d.ts.map +1 -1
  239. package/mobile/out/src/signer/methods/completeSignedTransaction.js +15 -13
  240. package/mobile/out/src/signer/methods/completeSignedTransaction.js.map +1 -1
  241. package/mobile/out/src/signer/methods/createAction.d.ts +5 -9
  242. package/mobile/out/src/signer/methods/createAction.d.ts.map +1 -1
  243. package/mobile/out/src/signer/methods/createAction.js +6 -22
  244. package/mobile/out/src/signer/methods/createAction.js.map +1 -1
  245. package/mobile/out/src/signer/methods/internalizeAction.d.ts +3 -2
  246. package/mobile/out/src/signer/methods/internalizeAction.d.ts.map +1 -1
  247. package/mobile/out/src/signer/methods/internalizeAction.js +9 -8
  248. package/mobile/out/src/signer/methods/internalizeAction.js.map +1 -1
  249. package/mobile/out/src/signer/methods/proveCertificate.d.ts +4 -2
  250. package/mobile/out/src/signer/methods/proveCertificate.d.ts.map +1 -1
  251. package/mobile/out/src/signer/methods/proveCertificate.js +2 -2
  252. package/mobile/out/src/signer/methods/proveCertificate.js.map +1 -1
  253. package/mobile/out/src/signer/methods/signAction.d.ts +3 -3
  254. package/mobile/out/src/signer/methods/signAction.d.ts.map +1 -1
  255. package/mobile/out/src/signer/methods/signAction.js +5 -5
  256. package/mobile/out/src/signer/methods/signAction.js.map +1 -1
  257. package/mobile/out/src/storage/StorageIdb.d.ts +106 -104
  258. package/mobile/out/src/storage/StorageIdb.d.ts.map +1 -1
  259. package/mobile/out/src/storage/StorageIdb.js +27 -60
  260. package/mobile/out/src/storage/StorageIdb.js.map +1 -1
  261. package/mobile/out/src/storage/StorageKnex.d.ts +179 -0
  262. package/mobile/out/src/storage/StorageKnex.d.ts.map +1 -0
  263. package/mobile/out/src/storage/StorageKnex.js +1215 -0
  264. package/mobile/out/src/storage/StorageKnex.js.map +1 -0
  265. package/mobile/out/src/storage/StorageProvider.d.ts +56 -47
  266. package/mobile/out/src/storage/StorageProvider.d.ts.map +1 -1
  267. package/mobile/out/src/storage/StorageProvider.js +44 -40
  268. package/mobile/out/src/storage/StorageProvider.js.map +1 -1
  269. package/mobile/out/src/storage/StorageReaderWriter.d.ts +78 -64
  270. package/mobile/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
  271. package/mobile/out/src/storage/StorageReaderWriter.js +2 -2
  272. package/mobile/out/src/storage/StorageReaderWriter.js.map +1 -1
  273. package/mobile/out/src/storage/methods/ListActionsSpecOp.d.ts +6 -4
  274. package/mobile/out/src/storage/methods/ListActionsSpecOp.d.ts.map +1 -1
  275. package/mobile/out/src/storage/methods/ListActionsSpecOp.js +3 -3
  276. package/mobile/out/src/storage/methods/ListActionsSpecOp.js.map +1 -1
  277. package/mobile/out/src/storage/methods/ListOutputsSpecOp.d.ts +6 -5
  278. package/mobile/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
  279. package/mobile/out/src/storage/methods/ListOutputsSpecOp.js +11 -9
  280. package/mobile/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
  281. package/mobile/out/src/storage/methods/createAction.d.ts +6 -4
  282. package/mobile/out/src/storage/methods/createAction.d.ts.map +1 -1
  283. package/mobile/out/src/storage/methods/createAction.js +67 -43
  284. package/mobile/out/src/storage/methods/createAction.js.map +1 -1
  285. package/mobile/out/src/storage/methods/generateChange.d.ts +2 -2
  286. package/mobile/out/src/storage/methods/generateChange.d.ts.map +1 -1
  287. package/mobile/out/src/storage/methods/generateChange.js +27 -24
  288. package/mobile/out/src/storage/methods/generateChange.js.map +1 -1
  289. package/mobile/out/src/storage/methods/getBeefForTransaction.d.ts +3 -2
  290. package/mobile/out/src/storage/methods/getBeefForTransaction.d.ts.map +1 -1
  291. package/mobile/out/src/storage/methods/getBeefForTransaction.js +10 -8
  292. package/mobile/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
  293. package/mobile/out/src/storage/methods/getSyncChunk.d.ts +2 -2
  294. package/mobile/out/src/storage/methods/getSyncChunk.d.ts.map +1 -1
  295. package/mobile/out/src/storage/methods/getSyncChunk.js +6 -5
  296. package/mobile/out/src/storage/methods/getSyncChunk.js.map +1 -1
  297. package/mobile/out/src/storage/methods/internalizeAction.d.ts +3 -2
  298. package/mobile/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
  299. package/mobile/out/src/storage/methods/internalizeAction.js +21 -19
  300. package/mobile/out/src/storage/methods/internalizeAction.js.map +1 -1
  301. package/mobile/out/src/storage/methods/listActionsIdb.d.ts +3 -2
  302. package/mobile/out/src/storage/methods/listActionsIdb.d.ts.map +1 -1
  303. package/mobile/out/src/storage/methods/listActionsIdb.js +5 -5
  304. package/mobile/out/src/storage/methods/listActionsIdb.js.map +1 -1
  305. package/mobile/out/src/storage/methods/listActionsKnex.d.ts +6 -0
  306. package/mobile/out/src/storage/methods/listActionsKnex.d.ts.map +1 -0
  307. package/mobile/out/src/storage/methods/listActionsKnex.js +198 -0
  308. package/mobile/out/src/storage/methods/listActionsKnex.js.map +1 -0
  309. package/mobile/out/src/storage/methods/listOutputsIdb.d.ts +3 -2
  310. package/mobile/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -1
  311. package/mobile/out/src/storage/methods/listOutputsIdb.js +6 -5
  312. package/mobile/out/src/storage/methods/listOutputsIdb.js.map +1 -1
  313. package/mobile/out/src/storage/methods/listOutputsKnex.d.ts +6 -0
  314. package/mobile/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -0
  315. package/mobile/out/src/storage/methods/listOutputsKnex.js +241 -0
  316. package/mobile/out/src/storage/methods/listOutputsKnex.js.map +1 -0
  317. package/mobile/out/src/storage/methods/processAction.d.ts +6 -3
  318. package/mobile/out/src/storage/methods/processAction.d.ts.map +1 -1
  319. package/mobile/out/src/storage/methods/processAction.js +45 -40
  320. package/mobile/out/src/storage/methods/processAction.js.map +1 -1
  321. package/mobile/out/src/storage/methods/purgeData.d.ts +4 -0
  322. package/mobile/out/src/storage/methods/purgeData.d.ts.map +1 -0
  323. package/mobile/out/src/storage/methods/purgeData.js +207 -0
  324. package/mobile/out/src/storage/methods/purgeData.js.map +1 -0
  325. package/mobile/out/src/storage/methods/purgeDataIdb.d.ts +2 -2
  326. package/mobile/out/src/storage/methods/purgeDataIdb.d.ts.map +1 -1
  327. package/mobile/out/src/storage/methods/purgeDataIdb.js.map +1 -1
  328. package/mobile/out/src/storage/methods/reviewStatus.d.ts +20 -0
  329. package/mobile/out/src/storage/methods/reviewStatus.d.ts.map +1 -0
  330. package/mobile/out/src/storage/methods/reviewStatus.js +84 -0
  331. package/mobile/out/src/storage/methods/reviewStatus.js.map +1 -0
  332. package/mobile/out/src/storage/methods/utils.js +2 -2
  333. package/mobile/out/src/storage/methods/utils.js.map +1 -1
  334. package/mobile/out/src/storage/remoting/StorageClient.d.ts +35 -25
  335. package/mobile/out/src/storage/remoting/StorageClient.d.ts.map +1 -1
  336. package/mobile/out/src/storage/remoting/StorageClient.js +3 -3
  337. package/mobile/out/src/storage/remoting/StorageClient.js.map +1 -1
  338. package/mobile/out/src/storage/remoting/StorageMobile.d.ts +35 -25
  339. package/mobile/out/src/storage/remoting/StorageMobile.d.ts.map +1 -1
  340. package/mobile/out/src/storage/remoting/StorageMobile.js +3 -3
  341. package/mobile/out/src/storage/remoting/StorageMobile.js.map +1 -1
  342. package/mobile/out/src/storage/schema/KnexMigrations.d.ts +39 -0
  343. package/mobile/out/src/storage/schema/KnexMigrations.d.ts.map +1 -0
  344. package/mobile/out/src/storage/schema/KnexMigrations.js +410 -0
  345. package/mobile/out/src/storage/schema/KnexMigrations.js.map +1 -0
  346. package/mobile/out/src/storage/schema/entities/EntityBase.d.ts +4 -3
  347. package/mobile/out/src/storage/schema/entities/EntityBase.d.ts.map +1 -1
  348. package/mobile/out/src/storage/schema/entities/EntityBase.js.map +1 -1
  349. package/mobile/out/src/storage/schema/entities/EntityCertificate.d.ts +6 -5
  350. package/mobile/out/src/storage/schema/entities/EntityCertificate.d.ts.map +1 -1
  351. package/mobile/out/src/storage/schema/entities/EntityCertificate.js +5 -5
  352. package/mobile/out/src/storage/schema/entities/EntityCertificate.js.map +1 -1
  353. package/mobile/out/src/storage/schema/entities/EntityCertificateField.d.ts +6 -5
  354. package/mobile/out/src/storage/schema/entities/EntityCertificateField.d.ts.map +1 -1
  355. package/mobile/out/src/storage/schema/entities/EntityCertificateField.js +6 -5
  356. package/mobile/out/src/storage/schema/entities/EntityCertificateField.js.map +1 -1
  357. package/mobile/out/src/storage/schema/entities/EntityCommission.d.ts +6 -5
  358. package/mobile/out/src/storage/schema/entities/EntityCommission.d.ts.map +1 -1
  359. package/mobile/out/src/storage/schema/entities/EntityCommission.js +6 -6
  360. package/mobile/out/src/storage/schema/entities/EntityCommission.js.map +1 -1
  361. package/mobile/out/src/storage/schema/entities/EntityOutput.d.ts +8 -7
  362. package/mobile/out/src/storage/schema/entities/EntityOutput.d.ts.map +1 -1
  363. package/mobile/out/src/storage/schema/entities/EntityOutput.js +6 -6
  364. package/mobile/out/src/storage/schema/entities/EntityOutput.js.map +1 -1
  365. package/mobile/out/src/storage/schema/entities/EntityOutputBasket.d.ts +6 -5
  366. package/mobile/out/src/storage/schema/entities/EntityOutputBasket.d.ts.map +1 -1
  367. package/mobile/out/src/storage/schema/entities/EntityOutputBasket.js +6 -6
  368. package/mobile/out/src/storage/schema/entities/EntityOutputBasket.js.map +1 -1
  369. package/mobile/out/src/storage/schema/entities/EntityOutputTag.d.ts +6 -5
  370. package/mobile/out/src/storage/schema/entities/EntityOutputTag.d.ts.map +1 -1
  371. package/mobile/out/src/storage/schema/entities/EntityOutputTag.js +5 -5
  372. package/mobile/out/src/storage/schema/entities/EntityOutputTag.js.map +1 -1
  373. package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.d.ts +6 -5
  374. package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.d.ts.map +1 -1
  375. package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.js +8 -7
  376. package/mobile/out/src/storage/schema/entities/EntityOutputTagMap.js.map +1 -1
  377. package/mobile/out/src/storage/schema/entities/EntityProvenTx.d.ts +10 -7
  378. package/mobile/out/src/storage/schema/entities/EntityProvenTx.d.ts.map +1 -1
  379. package/mobile/out/src/storage/schema/entities/EntityProvenTx.js +14 -12
  380. package/mobile/out/src/storage/schema/entities/EntityProvenTx.js.map +1 -1
  381. package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.d.ts +22 -18
  382. package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.d.ts.map +1 -1
  383. package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.js +17 -15
  384. package/mobile/out/src/storage/schema/entities/EntityProvenTxReq.js.map +1 -1
  385. package/mobile/out/src/storage/schema/entities/EntitySyncState.d.ts +13 -11
  386. package/mobile/out/src/storage/schema/entities/EntitySyncState.d.ts.map +1 -1
  387. package/mobile/out/src/storage/schema/entities/EntitySyncState.js +39 -24
  388. package/mobile/out/src/storage/schema/entities/EntitySyncState.js.map +1 -1
  389. package/mobile/out/src/storage/schema/entities/EntityTransaction.d.ts +13 -9
  390. package/mobile/out/src/storage/schema/entities/EntityTransaction.d.ts.map +1 -1
  391. package/mobile/out/src/storage/schema/entities/EntityTransaction.js +13 -13
  392. package/mobile/out/src/storage/schema/entities/EntityTransaction.js.map +1 -1
  393. package/mobile/out/src/storage/schema/entities/EntityTxLabel.d.ts +6 -5
  394. package/mobile/out/src/storage/schema/entities/EntityTxLabel.d.ts.map +1 -1
  395. package/mobile/out/src/storage/schema/entities/EntityTxLabel.js +5 -5
  396. package/mobile/out/src/storage/schema/entities/EntityTxLabel.js.map +1 -1
  397. package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.d.ts +6 -5
  398. package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.d.ts.map +1 -1
  399. package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.js +8 -7
  400. package/mobile/out/src/storage/schema/entities/EntityTxLabelMap.js.map +1 -1
  401. package/mobile/out/src/storage/schema/entities/EntityUser.d.ts +6 -5
  402. package/mobile/out/src/storage/schema/entities/EntityUser.d.ts.map +1 -1
  403. package/mobile/out/src/storage/schema/entities/EntityUser.js +8 -7
  404. package/mobile/out/src/storage/schema/entities/EntityUser.js.map +1 -1
  405. package/mobile/out/src/storage/schema/entities/MergeEntity.d.ts +6 -5
  406. package/mobile/out/src/storage/schema/entities/MergeEntity.d.ts.map +1 -1
  407. package/mobile/out/src/storage/schema/entities/MergeEntity.js +6 -5
  408. package/mobile/out/src/storage/schema/entities/MergeEntity.js.map +1 -1
  409. package/mobile/out/src/utility/ReaderUint8Array.d.ts +28 -0
  410. package/mobile/out/src/utility/ReaderUint8Array.d.ts.map +1 -0
  411. package/mobile/out/src/utility/ReaderUint8Array.js +166 -0
  412. package/mobile/out/src/utility/ReaderUint8Array.js.map +1 -0
  413. package/mobile/out/src/utility/ScriptTemplateBRC29.d.ts.map +1 -1
  414. package/mobile/out/src/utility/ScriptTemplateBRC29.js +4 -4
  415. package/mobile/out/src/utility/ScriptTemplateBRC29.js.map +1 -1
  416. package/mobile/out/src/utility/utilityHelpers.d.ts +11 -4
  417. package/mobile/out/src/utility/utilityHelpers.d.ts.map +1 -1
  418. package/mobile/out/src/utility/utilityHelpers.js +30 -9
  419. package/mobile/out/src/utility/utilityHelpers.js.map +1 -1
  420. package/mobile/out/src/utility/utilityHelpers.noBuffer.d.ts +22 -5
  421. package/mobile/out/src/utility/utilityHelpers.noBuffer.d.ts.map +1 -1
  422. package/mobile/out/src/utility/utilityHelpers.noBuffer.js +50 -9
  423. package/mobile/out/src/utility/utilityHelpers.noBuffer.js.map +1 -1
  424. package/mobile/out/test/utils/TestUtilsWalletStorage.d.ts +522 -0
  425. package/mobile/out/test/utils/TestUtilsWalletStorage.d.ts.map +1 -0
  426. package/mobile/out/test/utils/TestUtilsWalletStorage.js +1956 -0
  427. package/mobile/out/test/utils/TestUtilsWalletStorage.js.map +1 -0
  428. package/mobile/out/tsconfig.mobile.tsbuildinfo +1 -1
  429. package/mobile/package-lock.json +6 -6
  430. package/mobile/package.json +2 -2
  431. package/out/src/CWIStyleWalletManager.js +1 -1
  432. package/out/src/CWIStyleWalletManager.js.map +1 -1
  433. package/out/src/Setup.d.ts +17 -11
  434. package/out/src/Setup.d.ts.map +1 -1
  435. package/out/src/Setup.js +31 -20
  436. package/out/src/Setup.js.map +1 -1
  437. package/out/src/SetupClient.d.ts +9 -5
  438. package/out/src/SetupClient.d.ts.map +1 -1
  439. package/out/src/SetupClient.js +21 -15
  440. package/out/src/SetupClient.js.map +1 -1
  441. package/out/src/SetupWallet.d.ts +9 -6
  442. package/out/src/SetupWallet.d.ts.map +1 -1
  443. package/out/src/Wallet.d.ts +19 -15
  444. package/out/src/Wallet.d.ts.map +1 -1
  445. package/out/src/Wallet.js +59 -90
  446. package/out/src/Wallet.js.map +1 -1
  447. package/out/src/index.all.d.ts +12 -11
  448. package/out/src/index.all.d.ts.map +1 -1
  449. package/out/src/index.all.js +12 -11
  450. package/out/src/index.all.js.map +1 -1
  451. package/out/src/index.client.d.ts +11 -10
  452. package/out/src/index.client.d.ts.map +1 -1
  453. package/out/src/index.client.js +11 -10
  454. package/out/src/index.client.js.map +1 -1
  455. package/out/src/index.mobile.d.ts +11 -10
  456. package/out/src/index.mobile.d.ts.map +1 -1
  457. package/out/src/index.mobile.js +11 -10
  458. package/out/src/index.mobile.js.map +1 -1
  459. package/out/src/monitor/Monitor.d.ts +14 -12
  460. package/out/src/monitor/Monitor.d.ts.map +1 -1
  461. package/out/src/monitor/Monitor.js +11 -43
  462. package/out/src/monitor/Monitor.js.map +1 -1
  463. package/out/src/monitor/MonitorDaemon.d.ts +9 -3
  464. package/out/src/monitor/MonitorDaemon.d.ts.map +1 -1
  465. package/out/src/monitor/MonitorDaemon.js +19 -13
  466. package/out/src/monitor/MonitorDaemon.js.map +1 -1
  467. package/out/src/monitor/tasks/TaskCheckForProofs.js +3 -2
  468. package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
  469. package/out/src/monitor/tasks/TaskNewHeader.d.ts +16 -1
  470. package/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -1
  471. package/out/src/monitor/tasks/TaskNewHeader.js +22 -1
  472. package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
  473. package/out/src/monitor/tasks/TaskSendWaiting.d.ts +1 -1
  474. package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
  475. package/out/src/monitor/tasks/TaskSendWaiting.js +5 -5
  476. package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  477. package/out/src/sdk/WalletServices.interfaces.d.ts +1 -1
  478. package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  479. package/out/src/sdk/validationHelpers.d.ts +4 -5
  480. package/out/src/sdk/validationHelpers.d.ts.map +1 -1
  481. package/out/src/sdk/validationHelpers.js +47 -47
  482. package/out/src/sdk/validationHelpers.js.map +1 -1
  483. package/out/src/services/Services.d.ts +25 -24
  484. package/out/src/services/Services.d.ts.map +1 -1
  485. package/out/src/services/Services.js +38 -35
  486. package/out/src/services/Services.js.map +1 -1
  487. package/out/src/services/__tests/postBeef.test.js +1 -1
  488. package/out/src/services/__tests/postBeef.test.js.map +1 -1
  489. package/out/src/services/chaintracker/BHServiceClient.d.ts +11 -6
  490. package/out/src/services/chaintracker/BHServiceClient.d.ts.map +1 -1
  491. package/out/src/services/chaintracker/BHServiceClient.js +14 -3
  492. package/out/src/services/chaintracker/BHServiceClient.js.map +1 -1
  493. package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +2 -2
  494. package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
  495. package/out/src/services/chaintracker/ChaintracksChainTracker.js +6 -4
  496. package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
  497. package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.js +5 -2
  498. package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.js.map +1 -1
  499. package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.js +18 -22
  500. package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.js.map +1 -1
  501. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts +2 -45
  502. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts.map +1 -1
  503. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js.map +1 -1
  504. package/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts +75 -0
  505. package/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts.map +1 -0
  506. package/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.js +3 -0
  507. package/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.js.map +1 -0
  508. package/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts +81 -0
  509. package/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts.map +1 -0
  510. package/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.js +3 -0
  511. package/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.js.map +1 -0
  512. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts +54 -0
  513. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts.map +1 -0
  514. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.js +3 -0
  515. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.js.map +1 -0
  516. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts +163 -0
  517. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts.map +1 -0
  518. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.js +3 -0
  519. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.js.map +1 -0
  520. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts +8 -0
  521. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts.map +1 -0
  522. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.js +3 -0
  523. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.js.map +1 -0
  524. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.d.ts +55 -0
  525. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.d.ts.map +1 -0
  526. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.js +3 -0
  527. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.js.map +1 -0
  528. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +317 -0
  529. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -0
  530. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.js +3 -0
  531. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.js.map +1 -0
  532. package/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts +19 -0
  533. package/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts.map +1 -0
  534. package/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.js +3 -0
  535. package/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.js.map +1 -0
  536. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +100 -0
  537. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -0
  538. package/out/src/services/chaintracker/chaintracks/Chaintracks.js +515 -0
  539. package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -0
  540. package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts +30 -0
  541. package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts.map +1 -0
  542. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js +149 -0
  543. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +1 -0
  544. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts +11 -9
  545. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -1
  546. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +26 -15
  547. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -1
  548. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts +60 -0
  549. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -0
  550. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +119 -0
  551. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -0
  552. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts +76 -0
  553. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts.map +1 -0
  554. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +115 -0
  555. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -0
  556. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts +13 -0
  557. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts.map +1 -0
  558. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js +20 -0
  559. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js.map +1 -0
  560. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts +62 -0
  561. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -0
  562. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +60 -0
  563. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -0
  564. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts +23 -0
  565. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map +1 -0
  566. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js +57 -0
  567. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +1 -0
  568. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts +61 -0
  569. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -0
  570. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +40 -0
  571. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -0
  572. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.d.ts +20 -0
  573. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.d.ts.map +1 -0
  574. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js +44 -0
  575. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js.map +1 -0
  576. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts +51 -0
  577. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts.map +1 -0
  578. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +68 -0
  579. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -0
  580. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts +16 -0
  581. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map +1 -0
  582. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js +53 -0
  583. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +1 -0
  584. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +171 -0
  585. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -0
  586. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +502 -0
  587. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -0
  588. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts +88 -0
  589. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts.map +1 -0
  590. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js +119 -0
  591. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js.map +1 -0
  592. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.d.ts +2 -0
  593. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.d.ts.map +1 -0
  594. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.js +50 -0
  595. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.js.map +1 -0
  596. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/LiveIngestorWhatsOnChainPoll.test.d.ts +2 -0
  597. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/LiveIngestorWhatsOnChainPoll.test.d.ts.map +1 -0
  598. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/LiveIngestorWhatsOnChainPoll.test.js +34 -0
  599. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/LiveIngestorWhatsOnChainPoll.test.js.map +1 -0
  600. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.d.ts +2 -0
  601. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.d.ts.map +1 -0
  602. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.js +102 -0
  603. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.js.map +1 -0
  604. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts +22 -0
  605. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -0
  606. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +67 -0
  607. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -0
  608. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts +24 -0
  609. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts.map +1 -0
  610. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js +81 -0
  611. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js.map +1 -0
  612. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts +68 -0
  613. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -0
  614. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +253 -0
  615. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -0
  616. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts +88 -0
  617. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -0
  618. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +452 -0
  619. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -0
  620. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageMemory.d.ts +5 -0
  621. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageMemory.d.ts.map +1 -0
  622. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageMemory.js +24 -0
  623. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageMemory.js.map +1 -0
  624. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +41 -0
  625. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -0
  626. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +325 -0
  627. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -0
  628. package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageKnex.test.d.ts +2 -0
  629. package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageKnex.test.d.ts.map +1 -0
  630. package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageKnex.test.js +39 -0
  631. package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageKnex.test.js.map +1 -0
  632. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.d.ts +2 -0
  633. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.d.ts.map +1 -0
  634. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js +40 -0
  635. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js.map +1 -0
  636. package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.d.ts +2 -0
  637. package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.d.ts.map +1 -0
  638. package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.js +151 -0
  639. package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.js.map +1 -0
  640. package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.d.ts +12 -0
  641. package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.d.ts.map +1 -0
  642. package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.js +62 -0
  643. package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.js.map +1 -0
  644. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.d.ts +11 -0
  645. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.d.ts.map +1 -0
  646. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js +41 -0
  647. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js.map +1 -0
  648. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts +4 -0
  649. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts.map +1 -0
  650. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js +24 -0
  651. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +1 -0
  652. package/out/src/services/chaintracker/chaintracks/index.all.d.ts +6 -0
  653. package/out/src/services/chaintracker/chaintracks/index.all.d.ts.map +1 -0
  654. package/{mobile/out/src/services/index.js → out/src/services/chaintracker/chaintracks/index.all.js} +6 -2
  655. package/out/src/services/chaintracker/chaintracks/index.all.js.map +1 -0
  656. package/out/src/services/chaintracker/chaintracks/index.client.d.ts +31 -0
  657. package/out/src/services/chaintracker/chaintracks/index.client.d.ts.map +1 -0
  658. package/out/src/services/chaintracker/chaintracks/index.client.js +69 -0
  659. package/out/src/services/chaintracker/chaintracks/index.client.js.map +1 -0
  660. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +142 -0
  661. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -0
  662. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +814 -0
  663. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -0
  664. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.d.ts +22 -0
  665. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.d.ts.map +1 -0
  666. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js +60 -0
  667. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js.map +1 -0
  668. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts +78 -0
  669. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -0
  670. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js +261 -0
  671. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -0
  672. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +129 -0
  673. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -0
  674. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +145 -0
  675. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -0
  676. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts +10 -0
  677. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts.map +1 -0
  678. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js +47 -0
  679. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js.map +1 -0
  680. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts +43 -0
  681. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts.map +1 -0
  682. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js +116 -0
  683. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js.map +1 -0
  684. package/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts +72 -0
  685. package/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -0
  686. package/out/src/services/chaintracker/chaintracks/util/HeightRange.js +119 -0
  687. package/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -0
  688. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts +14 -0
  689. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts.map +1 -0
  690. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js +88 -0
  691. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js.map +1 -0
  692. package/out/src/services/chaintracker/chaintracks/util/__tests/BulkFileDataManager.test.d.ts +2 -0
  693. package/out/src/services/chaintracker/chaintracks/util/__tests/BulkFileDataManager.test.d.ts.map +1 -0
  694. package/out/src/services/chaintracker/chaintracks/util/__tests/BulkFileDataManager.test.js +255 -0
  695. package/out/src/services/chaintracker/chaintracks/util/__tests/BulkFileDataManager.test.js.map +1 -0
  696. package/out/src/services/chaintracker/chaintracks/util/__tests/ChaintracksFetch.test.d.ts +2 -0
  697. package/out/src/services/chaintracker/chaintracks/util/__tests/ChaintracksFetch.test.d.ts.map +1 -0
  698. package/out/src/services/chaintracker/chaintracks/util/__tests/ChaintracksFetch.test.js +56 -0
  699. package/out/src/services/chaintracker/chaintracks/util/__tests/ChaintracksFetch.test.js.map +1 -0
  700. package/out/src/services/chaintracker/chaintracks/util/__tests/HeightRange.test.d.ts +2 -0
  701. package/out/src/services/chaintracker/chaintracks/util/__tests/HeightRange.test.d.ts.map +1 -0
  702. package/out/src/services/chaintracker/chaintracks/util/__tests/HeightRange.test.js +69 -0
  703. package/out/src/services/chaintracker/chaintracks/util/__tests/HeightRange.test.js.map +1 -0
  704. package/out/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.d.ts +2 -0
  705. package/out/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.d.ts.map +1 -0
  706. package/out/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.js +51 -0
  707. package/out/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.js.map +1 -0
  708. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts +41 -22
  709. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
  710. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +125 -72
  711. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
  712. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts +5 -0
  713. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -0
  714. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +385 -0
  715. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -0
  716. package/out/src/services/chaintracker/index.all.d.ts +4 -0
  717. package/out/src/services/chaintracker/index.all.d.ts.map +1 -0
  718. package/{mobile/out/src/services/chaintracker/index.js → out/src/services/chaintracker/index.all.js} +2 -2
  719. package/out/src/services/chaintracker/index.all.js.map +1 -0
  720. package/out/src/services/chaintracker/index.client.d.ts +4 -0
  721. package/out/src/services/chaintracker/index.client.d.ts.map +1 -0
  722. package/{mobile/out/src/services/chaintracker/chaintracks/index.js → out/src/services/chaintracker/index.client.js} +4 -3
  723. package/out/src/services/chaintracker/index.client.js.map +1 -0
  724. package/out/src/services/createDefaultWalletServicesOptions.d.ts +5 -4
  725. package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
  726. package/out/src/services/createDefaultWalletServicesOptions.js +4 -4
  727. package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
  728. package/out/src/services/providers/ARC.d.ts +3 -3
  729. package/out/src/services/providers/ARC.d.ts.map +1 -1
  730. package/out/src/services/providers/ARC.js +4 -3
  731. package/out/src/services/providers/ARC.js.map +1 -1
  732. package/out/src/services/providers/Bitails.d.ts +7 -6
  733. package/out/src/services/providers/Bitails.d.ts.map +1 -1
  734. package/out/src/services/providers/Bitails.js +7 -5
  735. package/out/src/services/providers/Bitails.js.map +1 -1
  736. package/out/src/services/providers/WhatsOnChain.d.ts +76 -17
  737. package/out/src/services/providers/WhatsOnChain.d.ts.map +1 -1
  738. package/out/src/services/providers/WhatsOnChain.js +241 -143
  739. package/out/src/services/providers/WhatsOnChain.js.map +1 -1
  740. package/out/src/services/providers/__tests/WhatsOnChain.test.js +17 -15
  741. package/out/src/services/providers/__tests/WhatsOnChain.test.js.map +1 -1
  742. package/out/src/services/providers/{echangeRates.d.ts → exchangeRates.d.ts} +4 -4
  743. package/out/src/services/providers/exchangeRates.d.ts.map +1 -0
  744. package/out/src/services/providers/{echangeRates.js → exchangeRates.js} +9 -9
  745. package/out/src/services/providers/exchangeRates.js.map +1 -0
  746. package/out/src/signer/WalletSigner.d.ts +3 -3
  747. package/out/src/signer/WalletSigner.d.ts.map +1 -1
  748. package/out/src/signer/WalletSigner.js.map +1 -1
  749. package/out/src/signer/methods/acquireDirectCertificate.d.ts +4 -2
  750. package/out/src/signer/methods/acquireDirectCertificate.d.ts.map +1 -1
  751. package/out/src/signer/methods/acquireDirectCertificate.js.map +1 -1
  752. package/out/src/signer/methods/buildSignableTransaction.d.ts +9 -3
  753. package/out/src/signer/methods/buildSignableTransaction.d.ts.map +1 -1
  754. package/out/src/signer/methods/buildSignableTransaction.js +27 -11
  755. package/out/src/signer/methods/buildSignableTransaction.js.map +1 -1
  756. package/out/src/signer/methods/completeSignedTransaction.d.ts.map +1 -1
  757. package/out/src/signer/methods/completeSignedTransaction.js +15 -13
  758. package/out/src/signer/methods/completeSignedTransaction.js.map +1 -1
  759. package/out/src/signer/methods/createAction.d.ts +5 -9
  760. package/out/src/signer/methods/createAction.d.ts.map +1 -1
  761. package/out/src/signer/methods/createAction.js +6 -22
  762. package/out/src/signer/methods/createAction.js.map +1 -1
  763. package/out/src/signer/methods/internalizeAction.d.ts +3 -2
  764. package/out/src/signer/methods/internalizeAction.d.ts.map +1 -1
  765. package/out/src/signer/methods/internalizeAction.js +9 -8
  766. package/out/src/signer/methods/internalizeAction.js.map +1 -1
  767. package/out/src/signer/methods/proveCertificate.d.ts +4 -2
  768. package/out/src/signer/methods/proveCertificate.d.ts.map +1 -1
  769. package/out/src/signer/methods/proveCertificate.js +2 -2
  770. package/out/src/signer/methods/proveCertificate.js.map +1 -1
  771. package/out/src/signer/methods/signAction.d.ts +3 -3
  772. package/out/src/signer/methods/signAction.d.ts.map +1 -1
  773. package/out/src/signer/methods/signAction.js +5 -5
  774. package/out/src/signer/methods/signAction.js.map +1 -1
  775. package/out/src/storage/StorageIdb.d.ts +106 -104
  776. package/out/src/storage/StorageIdb.d.ts.map +1 -1
  777. package/out/src/storage/StorageIdb.js +27 -60
  778. package/out/src/storage/StorageIdb.js.map +1 -1
  779. package/out/src/storage/StorageKnex.d.ts +108 -106
  780. package/out/src/storage/StorageKnex.d.ts.map +1 -1
  781. package/out/src/storage/StorageKnex.js +28 -27
  782. package/out/src/storage/StorageKnex.js.map +1 -1
  783. package/out/src/storage/StorageProvider.d.ts +56 -47
  784. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  785. package/out/src/storage/StorageProvider.js +44 -40
  786. package/out/src/storage/StorageProvider.js.map +1 -1
  787. package/out/src/storage/StorageReaderWriter.d.ts +78 -64
  788. package/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
  789. package/out/src/storage/StorageReaderWriter.js +2 -2
  790. package/out/src/storage/StorageReaderWriter.js.map +1 -1
  791. package/out/src/storage/__test/StorageIdb.test.js +1 -1
  792. package/out/src/storage/__test/StorageIdb.test.js.map +1 -1
  793. package/out/src/storage/__test/adminStats.man.test.js +2 -0
  794. package/out/src/storage/__test/adminStats.man.test.js.map +1 -1
  795. package/out/src/storage/methods/ListActionsSpecOp.d.ts +6 -4
  796. package/out/src/storage/methods/ListActionsSpecOp.d.ts.map +1 -1
  797. package/out/src/storage/methods/ListActionsSpecOp.js +3 -3
  798. package/out/src/storage/methods/ListActionsSpecOp.js.map +1 -1
  799. package/out/src/storage/methods/ListOutputsSpecOp.d.ts +6 -5
  800. package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
  801. package/out/src/storage/methods/ListOutputsSpecOp.js +11 -9
  802. package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
  803. package/out/src/storage/methods/createAction.d.ts +6 -4
  804. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  805. package/out/src/storage/methods/createAction.js +67 -43
  806. package/out/src/storage/methods/createAction.js.map +1 -1
  807. package/out/src/storage/methods/generateChange.d.ts +2 -2
  808. package/out/src/storage/methods/generateChange.d.ts.map +1 -1
  809. package/out/src/storage/methods/generateChange.js +27 -24
  810. package/out/src/storage/methods/generateChange.js.map +1 -1
  811. package/out/src/storage/methods/getBeefForTransaction.d.ts +3 -2
  812. package/out/src/storage/methods/getBeefForTransaction.d.ts.map +1 -1
  813. package/out/src/storage/methods/getBeefForTransaction.js +10 -8
  814. package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
  815. package/out/src/storage/methods/getSyncChunk.d.ts +2 -2
  816. package/out/src/storage/methods/getSyncChunk.d.ts.map +1 -1
  817. package/out/src/storage/methods/getSyncChunk.js +6 -5
  818. package/out/src/storage/methods/getSyncChunk.js.map +1 -1
  819. package/out/src/storage/methods/internalizeAction.d.ts +3 -2
  820. package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
  821. package/out/src/storage/methods/internalizeAction.js +21 -19
  822. package/out/src/storage/methods/internalizeAction.js.map +1 -1
  823. package/out/src/storage/methods/listActionsIdb.d.ts +3 -2
  824. package/out/src/storage/methods/listActionsIdb.d.ts.map +1 -1
  825. package/out/src/storage/methods/listActionsIdb.js +5 -5
  826. package/out/src/storage/methods/listActionsIdb.js.map +1 -1
  827. package/out/src/storage/methods/listActionsKnex.d.ts +3 -2
  828. package/out/src/storage/methods/listActionsKnex.d.ts.map +1 -1
  829. package/out/src/storage/methods/listActionsKnex.js +7 -6
  830. package/out/src/storage/methods/listActionsKnex.js.map +1 -1
  831. package/out/src/storage/methods/listOutputsIdb.d.ts +3 -2
  832. package/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -1
  833. package/out/src/storage/methods/listOutputsIdb.js +6 -5
  834. package/out/src/storage/methods/listOutputsIdb.js.map +1 -1
  835. package/out/src/storage/methods/listOutputsKnex.d.ts +3 -2
  836. package/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -1
  837. package/out/src/storage/methods/listOutputsKnex.js +5 -4
  838. package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
  839. package/out/src/storage/methods/processAction.d.ts +6 -3
  840. package/out/src/storage/methods/processAction.d.ts.map +1 -1
  841. package/out/src/storage/methods/processAction.js +45 -40
  842. package/out/src/storage/methods/processAction.js.map +1 -1
  843. package/out/src/storage/methods/purgeData.d.ts +2 -2
  844. package/out/src/storage/methods/purgeData.d.ts.map +1 -1
  845. package/out/src/storage/methods/purgeData.js +2 -2
  846. package/out/src/storage/methods/purgeData.js.map +1 -1
  847. package/out/src/storage/methods/purgeDataIdb.d.ts +2 -2
  848. package/out/src/storage/methods/purgeDataIdb.d.ts.map +1 -1
  849. package/out/src/storage/methods/purgeDataIdb.js.map +1 -1
  850. package/out/src/storage/methods/reviewStatus.d.ts +2 -2
  851. package/out/src/storage/methods/reviewStatus.d.ts.map +1 -1
  852. package/out/src/storage/methods/reviewStatus.js +2 -2
  853. package/out/src/storage/methods/reviewStatus.js.map +1 -1
  854. package/out/src/storage/methods/utils.js +2 -2
  855. package/out/src/storage/methods/utils.js.map +1 -1
  856. package/out/src/storage/remoting/StorageClient.d.ts +35 -25
  857. package/out/src/storage/remoting/StorageClient.d.ts.map +1 -1
  858. package/out/src/storage/remoting/StorageClient.js +3 -3
  859. package/out/src/storage/remoting/StorageClient.js.map +1 -1
  860. package/out/src/storage/remoting/StorageMobile.d.ts +35 -25
  861. package/out/src/storage/remoting/StorageMobile.d.ts.map +1 -1
  862. package/out/src/storage/remoting/StorageMobile.js +3 -3
  863. package/out/src/storage/remoting/StorageMobile.js.map +1 -1
  864. package/out/src/storage/remoting/StorageServer.d.ts +5 -3
  865. package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
  866. package/out/src/storage/remoting/StorageServer.js +6 -6
  867. package/out/src/storage/remoting/StorageServer.js.map +1 -1
  868. package/out/src/storage/schema/KnexMigrations.d.ts +8 -8
  869. package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
  870. package/out/src/storage/schema/KnexMigrations.js +38 -35
  871. package/out/src/storage/schema/KnexMigrations.js.map +1 -1
  872. package/out/src/storage/schema/entities/EntityBase.d.ts +4 -3
  873. package/out/src/storage/schema/entities/EntityBase.d.ts.map +1 -1
  874. package/out/src/storage/schema/entities/EntityBase.js.map +1 -1
  875. package/out/src/storage/schema/entities/EntityCertificate.d.ts +6 -5
  876. package/out/src/storage/schema/entities/EntityCertificate.d.ts.map +1 -1
  877. package/out/src/storage/schema/entities/EntityCertificate.js +5 -5
  878. package/out/src/storage/schema/entities/EntityCertificate.js.map +1 -1
  879. package/out/src/storage/schema/entities/EntityCertificateField.d.ts +6 -5
  880. package/out/src/storage/schema/entities/EntityCertificateField.d.ts.map +1 -1
  881. package/out/src/storage/schema/entities/EntityCertificateField.js +6 -5
  882. package/out/src/storage/schema/entities/EntityCertificateField.js.map +1 -1
  883. package/out/src/storage/schema/entities/EntityCommission.d.ts +6 -5
  884. package/out/src/storage/schema/entities/EntityCommission.d.ts.map +1 -1
  885. package/out/src/storage/schema/entities/EntityCommission.js +6 -6
  886. package/out/src/storage/schema/entities/EntityCommission.js.map +1 -1
  887. package/out/src/storage/schema/entities/EntityOutput.d.ts +8 -7
  888. package/out/src/storage/schema/entities/EntityOutput.d.ts.map +1 -1
  889. package/out/src/storage/schema/entities/EntityOutput.js +6 -6
  890. package/out/src/storage/schema/entities/EntityOutput.js.map +1 -1
  891. package/out/src/storage/schema/entities/EntityOutputBasket.d.ts +6 -5
  892. package/out/src/storage/schema/entities/EntityOutputBasket.d.ts.map +1 -1
  893. package/out/src/storage/schema/entities/EntityOutputBasket.js +6 -6
  894. package/out/src/storage/schema/entities/EntityOutputBasket.js.map +1 -1
  895. package/out/src/storage/schema/entities/EntityOutputTag.d.ts +6 -5
  896. package/out/src/storage/schema/entities/EntityOutputTag.d.ts.map +1 -1
  897. package/out/src/storage/schema/entities/EntityOutputTag.js +5 -5
  898. package/out/src/storage/schema/entities/EntityOutputTag.js.map +1 -1
  899. package/out/src/storage/schema/entities/EntityOutputTagMap.d.ts +6 -5
  900. package/out/src/storage/schema/entities/EntityOutputTagMap.d.ts.map +1 -1
  901. package/out/src/storage/schema/entities/EntityOutputTagMap.js +8 -7
  902. package/out/src/storage/schema/entities/EntityOutputTagMap.js.map +1 -1
  903. package/out/src/storage/schema/entities/EntityProvenTx.d.ts +10 -7
  904. package/out/src/storage/schema/entities/EntityProvenTx.d.ts.map +1 -1
  905. package/out/src/storage/schema/entities/EntityProvenTx.js +14 -12
  906. package/out/src/storage/schema/entities/EntityProvenTx.js.map +1 -1
  907. package/out/src/storage/schema/entities/EntityProvenTxReq.d.ts +22 -18
  908. package/out/src/storage/schema/entities/EntityProvenTxReq.d.ts.map +1 -1
  909. package/out/src/storage/schema/entities/EntityProvenTxReq.js +17 -15
  910. package/out/src/storage/schema/entities/EntityProvenTxReq.js.map +1 -1
  911. package/out/src/storage/schema/entities/EntitySyncState.d.ts +13 -11
  912. package/out/src/storage/schema/entities/EntitySyncState.d.ts.map +1 -1
  913. package/out/src/storage/schema/entities/EntitySyncState.js +39 -24
  914. package/out/src/storage/schema/entities/EntitySyncState.js.map +1 -1
  915. package/out/src/storage/schema/entities/EntityTransaction.d.ts +13 -9
  916. package/out/src/storage/schema/entities/EntityTransaction.d.ts.map +1 -1
  917. package/out/src/storage/schema/entities/EntityTransaction.js +13 -13
  918. package/out/src/storage/schema/entities/EntityTransaction.js.map +1 -1
  919. package/out/src/storage/schema/entities/EntityTxLabel.d.ts +6 -5
  920. package/out/src/storage/schema/entities/EntityTxLabel.d.ts.map +1 -1
  921. package/out/src/storage/schema/entities/EntityTxLabel.js +5 -5
  922. package/out/src/storage/schema/entities/EntityTxLabel.js.map +1 -1
  923. package/out/src/storage/schema/entities/EntityTxLabelMap.d.ts +6 -5
  924. package/out/src/storage/schema/entities/EntityTxLabelMap.d.ts.map +1 -1
  925. package/out/src/storage/schema/entities/EntityTxLabelMap.js +8 -7
  926. package/out/src/storage/schema/entities/EntityTxLabelMap.js.map +1 -1
  927. package/out/src/storage/schema/entities/EntityUser.d.ts +6 -5
  928. package/out/src/storage/schema/entities/EntityUser.d.ts.map +1 -1
  929. package/out/src/storage/schema/entities/EntityUser.js +8 -7
  930. package/out/src/storage/schema/entities/EntityUser.js.map +1 -1
  931. package/out/src/storage/schema/entities/MergeEntity.d.ts +6 -5
  932. package/out/src/storage/schema/entities/MergeEntity.d.ts.map +1 -1
  933. package/out/src/storage/schema/entities/MergeEntity.js +6 -5
  934. package/out/src/storage/schema/entities/MergeEntity.js.map +1 -1
  935. package/out/src/storage/sync/StorageMySQLDojoReader.d.ts +65 -48
  936. package/out/src/storage/sync/StorageMySQLDojoReader.d.ts.map +1 -1
  937. package/out/src/storage/sync/StorageMySQLDojoReader.js +125 -121
  938. package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -1
  939. package/out/src/utility/ReaderUint8Array.d.ts +28 -0
  940. package/out/src/utility/ReaderUint8Array.d.ts.map +1 -0
  941. package/out/src/utility/ReaderUint8Array.js +166 -0
  942. package/out/src/utility/ReaderUint8Array.js.map +1 -0
  943. package/out/src/utility/ScriptTemplateBRC29.d.ts.map +1 -1
  944. package/out/src/utility/ScriptTemplateBRC29.js +4 -4
  945. package/out/src/utility/ScriptTemplateBRC29.js.map +1 -1
  946. package/out/src/utility/__tests/utilityHelpers.noBuffer.test.d.ts +2 -0
  947. package/out/src/utility/__tests/utilityHelpers.noBuffer.test.d.ts.map +1 -0
  948. package/out/src/utility/__tests/utilityHelpers.noBuffer.test.js +107 -0
  949. package/out/src/utility/__tests/utilityHelpers.noBuffer.test.js.map +1 -0
  950. package/out/src/utility/utilityHelpers.d.ts +11 -4
  951. package/out/src/utility/utilityHelpers.d.ts.map +1 -1
  952. package/out/src/utility/utilityHelpers.js +30 -9
  953. package/out/src/utility/utilityHelpers.js.map +1 -1
  954. package/out/src/utility/utilityHelpers.noBuffer.d.ts +22 -5
  955. package/out/src/utility/utilityHelpers.noBuffer.d.ts.map +1 -1
  956. package/out/src/utility/utilityHelpers.noBuffer.js +50 -9
  957. package/out/src/utility/utilityHelpers.noBuffer.js.map +1 -1
  958. package/out/test/Wallet/get/getHeaderForHeight.test.js +6 -3
  959. package/out/test/Wallet/get/getHeaderForHeight.test.js.map +1 -1
  960. package/out/test/Wallet/get/getHeight.test.js +6 -3
  961. package/out/test/Wallet/get/getHeight.test.js.map +1 -1
  962. package/out/test/Wallet/local/localWallet2.man.test.js +2 -3
  963. package/out/test/Wallet/local/localWallet2.man.test.js.map +1 -1
  964. package/out/test/Wallet/support/operations.man.test.js +27 -1
  965. package/out/test/Wallet/support/operations.man.test.js.map +1 -1
  966. package/out/test/bsv-ts-sdk/LocalKVStore.test.js +7 -0
  967. package/out/test/bsv-ts-sdk/LocalKVStore.test.js.map +1 -1
  968. package/out/test/services/Services.test.js +8 -5
  969. package/out/test/services/Services.test.js.map +1 -1
  970. package/out/test/utils/TestUtilsWalletStorage.d.ts +55 -32
  971. package/out/test/utils/TestUtilsWalletStorage.d.ts.map +1 -1
  972. package/out/test/utils/TestUtilsWalletStorage.js +99 -85
  973. package/out/test/utils/TestUtilsWalletStorage.js.map +1 -1
  974. package/out/test/wallet/action/createAction.test.js +3 -0
  975. package/out/test/wallet/action/createAction.test.js.map +1 -1
  976. package/out/test/wallet/action/createAction2.test.d.ts.map +1 -1
  977. package/out/test/wallet/action/createAction2.test.js +3 -0
  978. package/out/test/wallet/action/createAction2.test.js.map +1 -1
  979. package/out/test/wallet/action/internalizeAction.test.js +8 -3
  980. package/out/test/wallet/action/internalizeAction.test.js.map +1 -1
  981. package/out/test/wallet/list/listActions.test.d.ts.map +1 -1
  982. package/out/test/wallet/list/listActions.test.js.map +1 -1
  983. package/out/test/wallet/list/listOutputs.test.js +31 -1
  984. package/out/test/wallet/list/listOutputs.test.js.map +1 -1
  985. package/out/tsconfig.all.tsbuildinfo +1 -1
  986. package/package.json +8 -5
  987. package/src/CWIStyleWalletManager.ts +1 -1
  988. package/src/Setup.ts +29 -25
  989. package/src/SetupClient.ts +14 -6
  990. package/src/SetupWallet.ts +9 -6
  991. package/src/Wallet.ts +103 -76
  992. package/src/index.all.ts +16 -11
  993. package/src/index.client.ts +14 -10
  994. package/src/index.mobile.ts +13 -10
  995. package/src/monitor/Monitor.ts +23 -23
  996. package/src/monitor/MonitorDaemon.ts +17 -21
  997. package/src/monitor/tasks/TaskCheckForProofs.ts +3 -3
  998. package/src/monitor/tasks/TaskNewHeader.ts +24 -2
  999. package/src/monitor/tasks/TaskSendWaiting.ts +5 -4
  1000. package/src/sdk/WalletServices.interfaces.ts +1 -1
  1001. package/src/sdk/validationHelpers.ts +51 -54
  1002. package/src/services/Services.ts +89 -67
  1003. package/src/services/__tests/postBeef.test.ts +1 -1
  1004. package/src/services/chaintracker/BHServiceClient.ts +22 -9
  1005. package/src/services/chaintracker/ChaintracksChainTracker.ts +9 -6
  1006. package/src/services/chaintracker/__tests/ChaintracksChainTracker.test.ts +4 -1
  1007. package/src/services/chaintracker/__tests/ChaintracksServiceClient.test.ts +20 -25
  1008. package/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.ts +2 -45
  1009. package/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.ts +89 -0
  1010. package/src/services/chaintracker/chaintracks/Api/BulkStorageApi.ts +92 -0
  1011. package/src/services/chaintracker/chaintracks/Api/ChaintracksApi.ts +64 -0
  1012. package/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.ts +184 -0
  1013. package/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.ts +8 -0
  1014. package/src/services/chaintracker/chaintracks/Api/ChaintracksFsApi.ts +58 -0
  1015. package/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.ts +357 -0
  1016. package/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.ts +25 -0
  1017. package/src/services/chaintracker/chaintracks/Chaintracks.ts +574 -0
  1018. package/src/services/chaintracker/chaintracks/ChaintracksService.ts +189 -0
  1019. package/src/services/chaintracker/chaintracks/ChaintracksServiceClient.ts +35 -23
  1020. package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.ts +177 -0
  1021. package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.ts +175 -0
  1022. package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.ts +18 -0
  1023. package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.ts +114 -0
  1024. package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.ts +80 -0
  1025. package/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.ts +84 -0
  1026. package/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.ts +59 -0
  1027. package/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.ts +118 -0
  1028. package/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.ts +59 -0
  1029. package/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.ts +564 -0
  1030. package/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.ts +200 -0
  1031. package/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.ts +54 -0
  1032. package/src/services/chaintracker/chaintracks/Ingest/__tests/LiveIngestorWhatsOnChainPoll.test.ts +33 -0
  1033. package/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.ts +124 -0
  1034. package/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.ts +91 -0
  1035. package/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.ts +103 -0
  1036. package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.ts +333 -0
  1037. package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.ts +545 -0
  1038. package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageMemory.ts +29 -0
  1039. package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.ts +372 -0
  1040. package/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageKnex.test.ts +45 -0
  1041. package/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.ts +49 -0
  1042. package/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.ts +183 -0
  1043. package/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.ts +67 -0
  1044. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest349/mainNetBlockHeaders.json +1 -0
  1045. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest349/mainNet_0.headers +0 -0
  1046. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest349/mainNet_1.headers +0 -0
  1047. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest349/mainNet_2.headers +0 -0
  1048. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest349/mainNet_3.headers +0 -0
  1049. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest379/mainNetBlockHeaders.json +1 -0
  1050. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest379/mainNet_0.headers +0 -0
  1051. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest379/mainNet_1.headers +0 -0
  1052. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest379/mainNet_2.headers +0 -0
  1053. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest379/mainNet_3.headers +0 -0
  1054. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest399/mainNetBlockHeaders.json +1 -0
  1055. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest399/mainNet_0.headers +0 -0
  1056. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest399/mainNet_1.headers +0 -0
  1057. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest399/mainNet_2.headers +0 -0
  1058. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest399/mainNet_3.headers +0 -0
  1059. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest402/mainNetBlockHeaders.json +1 -0
  1060. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest402/mainNet_0.headers +0 -0
  1061. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest402/mainNet_1.headers +0 -0
  1062. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest402/mainNet_2.headers +0 -0
  1063. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest402/mainNet_3.headers +0 -0
  1064. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest402/mainNet_4.headers +0 -0
  1065. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest499/mainNetBlockHeaders.json +1 -0
  1066. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest499/mainNet_0.headers +0 -0
  1067. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest499/mainNet_1.headers +0 -0
  1068. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest499/mainNet_2.headers +0 -0
  1069. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest499/mainNet_3.headers +0 -0
  1070. package/src/services/chaintracker/chaintracks/__tests/data/cdnTest499/mainNet_4.headers +0 -0
  1071. package/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.ts +52 -0
  1072. package/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.ts +29 -0
  1073. package/src/services/chaintracker/chaintracks/index.all.ts +7 -0
  1074. package/src/services/chaintracker/chaintracks/index.client.ts +38 -0
  1075. package/src/services/chaintracker/chaintracks/util/BulkFileDataManager.ts +938 -0
  1076. package/src/services/chaintracker/chaintracks/util/BulkFileDataReader.ts +60 -0
  1077. package/src/services/chaintracker/chaintracks/util/BulkFilesReader.ts +336 -0
  1078. package/src/services/chaintracker/chaintracks/util/BulkHeaderFile.ts +247 -0
  1079. package/src/services/chaintracker/chaintracks/util/ChaintracksFetch.ts +49 -0
  1080. package/src/services/chaintracker/chaintracks/util/ChaintracksFs.ts +137 -0
  1081. package/src/services/chaintracker/chaintracks/util/HeightRange.ts +132 -0
  1082. package/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.ts +76 -0
  1083. package/src/services/chaintracker/chaintracks/util/__tests/BulkFileDataManager.test.ts +304 -0
  1084. package/src/services/chaintracker/chaintracks/util/__tests/ChaintracksFetch.test.ts +60 -0
  1085. package/src/services/chaintracker/chaintracks/util/__tests/HeightRange.test.ts +67 -0
  1086. package/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.ts +49 -0
  1087. package/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.ts +148 -65
  1088. package/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.ts +385 -0
  1089. package/src/services/chaintracker/{index.ts → index.all.ts} +2 -1
  1090. package/src/services/chaintracker/index.client.ts +4 -0
  1091. package/src/services/createDefaultWalletServicesOptions.ts +9 -7
  1092. package/src/services/providers/ARC.ts +11 -9
  1093. package/src/services/providers/Bitails.ts +14 -11
  1094. package/src/services/providers/WhatsOnChain.ts +323 -163
  1095. package/src/services/providers/__tests/WhatsOnChain.test.ts +9 -6
  1096. package/src/services/providers/{echangeRates.ts → exchangeRates.ts} +15 -14
  1097. package/src/signer/WalletSigner.ts +4 -4
  1098. package/src/signer/methods/acquireDirectCertificate.ts +6 -3
  1099. package/src/signer/methods/buildSignableTransaction.ts +38 -9
  1100. package/src/signer/methods/completeSignedTransaction.ts +6 -4
  1101. package/src/signer/methods/createAction.ts +30 -38
  1102. package/src/signer/methods/internalizeAction.ts +17 -21
  1103. package/src/signer/methods/proveCertificate.ts +8 -5
  1104. package/src/signer/methods/signAction.ts +8 -8
  1105. package/src/storage/StorageIdb.ts +166 -166
  1106. package/src/storage/StorageKnex.ts +158 -150
  1107. package/src/storage/StorageProvider.ts +123 -95
  1108. package/src/storage/StorageReaderWriter.ts +89 -93
  1109. package/src/storage/__test/StorageIdb.test.ts +1 -1
  1110. package/src/storage/__test/adminStats.man.test.ts +2 -0
  1111. package/src/storage/methods/ListActionsSpecOp.ts +13 -11
  1112. package/src/storage/methods/ListOutputsSpecOp.ts +16 -12
  1113. package/src/storage/methods/createAction.ts +92 -68
  1114. package/src/storage/methods/generateChange.ts +28 -24
  1115. package/src/storage/methods/getBeefForTransaction.ts +12 -8
  1116. package/src/storage/methods/getSyncChunk.ts +33 -34
  1117. package/src/storage/methods/internalizeAction.ts +28 -41
  1118. package/src/storage/methods/listActionsIdb.ts +7 -5
  1119. package/src/storage/methods/listActionsKnex.ts +10 -5
  1120. package/src/storage/methods/listOutputsIdb.ts +10 -6
  1121. package/src/storage/methods/listOutputsKnex.ts +10 -5
  1122. package/src/storage/methods/processAction.ts +41 -37
  1123. package/src/storage/methods/purgeData.ts +12 -11
  1124. package/src/storage/methods/purgeDataIdb.ts +3 -8
  1125. package/src/storage/methods/reviewStatus.ts +6 -5
  1126. package/src/storage/methods/utils.ts +2 -2
  1127. package/src/storage/remoting/StorageClient.ts +65 -42
  1128. package/src/storage/remoting/StorageMobile.ts +65 -42
  1129. package/src/storage/remoting/StorageServer.ts +13 -9
  1130. package/src/storage/schema/KnexMigrations.ts +31 -29
  1131. package/src/storage/schema/entities/EntityBase.ts +4 -3
  1132. package/src/storage/schema/entities/EntityCertificate.ts +7 -6
  1133. package/src/storage/schema/entities/EntityCertificateField.ts +9 -7
  1134. package/src/storage/schema/entities/EntityCommission.ts +7 -7
  1135. package/src/storage/schema/entities/EntityOutput.ts +8 -8
  1136. package/src/storage/schema/entities/EntityOutputBasket.ts +7 -6
  1137. package/src/storage/schema/entities/EntityOutputTag.ts +7 -7
  1138. package/src/storage/schema/entities/EntityOutputTagMap.ts +9 -8
  1139. package/src/storage/schema/entities/EntityProvenTx.ts +18 -12
  1140. package/src/storage/schema/entities/EntityProvenTxReq.ts +30 -39
  1141. package/src/storage/schema/entities/EntitySyncState.ts +37 -48
  1142. package/src/storage/schema/entities/EntityTransaction.ts +13 -16
  1143. package/src/storage/schema/entities/EntityTxLabel.ts +7 -7
  1144. package/src/storage/schema/entities/EntityTxLabelMap.ts +9 -8
  1145. package/src/storage/schema/entities/EntityUser.ts +10 -9
  1146. package/src/storage/schema/entities/MergeEntity.ts +8 -7
  1147. package/src/storage/sync/StorageMySQLDojoReader.ts +99 -92
  1148. package/src/utility/ReaderUint8Array.ts +187 -0
  1149. package/src/utility/ScriptTemplateBRC29.ts +1 -2
  1150. package/src/utility/__tests/utilityHelpers.noBuffer.test.ts +109 -0
  1151. package/src/utility/utilityHelpers.noBuffer.ts +50 -8
  1152. package/src/utility/utilityHelpers.ts +34 -14
  1153. package/test/Wallet/get/getHeaderForHeight.test.ts +6 -2
  1154. package/test/Wallet/get/getHeight.test.ts +7 -3
  1155. package/test/Wallet/local/localWallet2.man.test.ts +2 -2
  1156. package/test/Wallet/support/operations.man.test.ts +33 -2
  1157. package/test/bsv-ts-sdk/LocalKVStore.test.ts +5 -0
  1158. package/test/services/Services.test.ts +11 -7
  1159. package/test/utils/TestUtilsWalletStorage.ts +87 -89
  1160. package/test/wallet/action/createAction.test.ts +2 -0
  1161. package/test/wallet/action/createAction2.test.ts +2 -0
  1162. package/test/wallet/action/internalizeAction.test.ts +7 -2
  1163. package/test/wallet/list/listActions.test.ts +1 -7
  1164. package/test/wallet/list/listOutputs.test.ts +33 -1
  1165. package/tsconfig.all.json +1 -0
  1166. package/tsconfig.client.json +2 -1
  1167. package/mobile/out/src/services/chaintracker/chaintracks/index.d.ts +0 -3
  1168. package/mobile/out/src/services/chaintracker/chaintracks/index.d.ts.map +0 -1
  1169. package/mobile/out/src/services/chaintracker/chaintracks/index.js.map +0 -1
  1170. package/mobile/out/src/services/chaintracker/index.d.ts +0 -4
  1171. package/mobile/out/src/services/chaintracker/index.d.ts.map +0 -1
  1172. package/mobile/out/src/services/chaintracker/index.js.map +0 -1
  1173. package/mobile/out/src/services/index.d.ts +0 -2
  1174. package/mobile/out/src/services/index.d.ts.map +0 -1
  1175. package/mobile/out/src/services/index.js.map +0 -1
  1176. package/mobile/out/src/services/providers/echangeRates.d.ts.map +0 -1
  1177. package/mobile/out/src/services/providers/echangeRates.js.map +0 -1
  1178. package/mobile/out/src/utility/utilityHelpers.buffer.d.ts +0 -18
  1179. package/mobile/out/src/utility/utilityHelpers.buffer.d.ts.map +0 -1
  1180. package/mobile/out/src/utility/utilityHelpers.buffer.js +0 -45
  1181. package/mobile/out/src/utility/utilityHelpers.buffer.js.map +0 -1
  1182. package/out/src/services/chaintracker/chaintracks/index.d.ts +0 -3
  1183. package/out/src/services/chaintracker/chaintracks/index.d.ts.map +0 -1
  1184. package/out/src/services/chaintracker/chaintracks/index.js +0 -19
  1185. package/out/src/services/chaintracker/chaintracks/index.js.map +0 -1
  1186. package/out/src/services/chaintracker/index.d.ts +0 -4
  1187. package/out/src/services/chaintracker/index.d.ts.map +0 -1
  1188. package/out/src/services/chaintracker/index.js.map +0 -1
  1189. package/out/src/services/providers/echangeRates.d.ts.map +0 -1
  1190. package/out/src/services/providers/echangeRates.js.map +0 -1
  1191. package/src/services/chaintracker/chaintracks/index.ts +0 -2
@@ -0,0 +1,137 @@
1
+ import {
2
+ ChaintracksAppendableFileApi,
3
+ ChaintracksFsApi,
4
+ ChaintracksReadableFileApi,
5
+ ChaintracksWritableFileApi
6
+ } from '../Api/ChaintracksFsApi'
7
+ import { promises as fs } from 'fs'
8
+ import Path from 'path'
9
+
10
+ export abstract class ChaintracksFsStatics {
11
+ static async delete(path: string): Promise<void> {
12
+ await fs.unlink(path)
13
+ }
14
+ static async writeFile(path: string, data: Uint8Array): Promise<void> {
15
+ await this.ensureFoldersExist(path)
16
+ await fs.writeFile(path, Buffer.from(data))
17
+ }
18
+ static async readFile(path: string): Promise<Uint8Array> {
19
+ const buffer = await fs.readFile(path)
20
+ return Uint8Array.from(buffer)
21
+ }
22
+ static async openReadableFile(path: string): Promise<ChaintracksReadableFileApi> {
23
+ return await ChaintracksReadableFile.openAsReadable(path)
24
+ }
25
+ static async openWritableFile(path: string): Promise<ChaintracksWritableFileApi> {
26
+ return await ChaintracksWritableFile.openAsWritable(path)
27
+ }
28
+
29
+ static async openAppendableFile(path: string): Promise<ChaintracksAppendableFileApi> {
30
+ return await ChaintracksAppendableFile.openAsAppendable(path)
31
+ }
32
+ static async ensureFoldersExist(path: string): Promise<void> {
33
+ const parsedPath = Path.parse(path)
34
+ await fs.mkdir(parsedPath.dir, { recursive: true })
35
+ }
36
+ static pathJoin(...parts: string[]): string {
37
+ return Path.join(...parts)
38
+ }
39
+ }
40
+
41
+ export const ChaintracksFs: ChaintracksFsApi = ChaintracksFsStatics
42
+
43
+ export class ChaintracksReadableFile implements ChaintracksReadableFileApi {
44
+ path: string
45
+ parsedPath: Path.ParsedPath
46
+ f: fs.FileHandle
47
+
48
+ protected constructor(path: string, f: fs.FileHandle) {
49
+ this.path = path
50
+ this.f = f
51
+ this.parsedPath = Path.parse(path)
52
+ }
53
+
54
+ async close(): Promise<void> {
55
+ await this.f.close()
56
+ }
57
+
58
+ async getLength(): Promise<number> {
59
+ const stats = await this.f.stat()
60
+ return stats.size
61
+ }
62
+
63
+ async read(length?: number, offset?: number): Promise<Uint8Array> {
64
+ length ||= 80 * 1024 // Default to 80KB if no length is specified
65
+ const buffer = Buffer.alloc(length)
66
+ const rr = await this.f.read(buffer, 0, length, offset || 0)
67
+ const rb = rr.bytesRead < length ? buffer.subarray(0, rr.bytesRead) : buffer
68
+ return Uint8Array.from(rb)
69
+ }
70
+
71
+ static async openAsReadable(path: string): Promise<ChaintracksReadableFile> {
72
+ const f = await fs.open(path, 'r')
73
+ const file = new ChaintracksReadableFile(path, f)
74
+ return file
75
+ }
76
+ }
77
+
78
+ export class ChaintracksWritableFile implements ChaintracksWritableFileApi {
79
+ path: string
80
+ parsedPath: Path.ParsedPath
81
+ f: fs.FileHandle
82
+ foldersEnsured: boolean = false
83
+
84
+ private constructor(path: string, f: fs.FileHandle) {
85
+ this.path = path
86
+ this.f = f
87
+ this.parsedPath = Path.parse(path)
88
+ }
89
+
90
+ static async openAsWritable(path: string): Promise<ChaintracksWritableFile> {
91
+ const f = await fs.open(path, 'w')
92
+ const file = new ChaintracksWritableFile(path, f)
93
+ return file
94
+ }
95
+
96
+ async close(): Promise<void> {
97
+ await this.f.close()
98
+ }
99
+
100
+ async ensureFoldersExist(): Promise<void> {
101
+ if (!this.foldersEnsured) {
102
+ await ChaintracksFsStatics.ensureFoldersExist(this.path)
103
+ this.foldersEnsured = true
104
+ }
105
+ }
106
+
107
+ async append(data: Uint8Array): Promise<void> {
108
+ await this.ensureFoldersExist()
109
+ throw new Error('Method not implemented.')
110
+ }
111
+ }
112
+
113
+ export class ChaintracksAppendableFile extends ChaintracksReadableFile implements ChaintracksAppendableFileApi {
114
+ foldersEnsured: boolean = false
115
+
116
+ private constructor(path: string, f: fs.FileHandle) {
117
+ super(path, f)
118
+ }
119
+
120
+ static async openAsAppendable(path: string): Promise<ChaintracksAppendableFile> {
121
+ const f = await fs.open(path, 'a+')
122
+ const file = new ChaintracksAppendableFile(path, f)
123
+ return file
124
+ }
125
+
126
+ async ensureFoldersExist(): Promise<void> {
127
+ if (!this.foldersEnsured) {
128
+ await ChaintracksFsStatics.ensureFoldersExist(this.path)
129
+ this.foldersEnsured = true
130
+ }
131
+ }
132
+
133
+ async append(data: Uint8Array): Promise<void> {
134
+ await this.ensureFoldersExist()
135
+ await this.f.write(Buffer.from(data))
136
+ }
137
+ }
@@ -0,0 +1,132 @@
1
+ import { BlockHeader } from '../../../../sdk/WalletServices.interfaces'
2
+
3
+ export interface HeightRangeApi {
4
+ minHeight: number
5
+ maxHeight: number
6
+ }
7
+
8
+ export interface HeightRanges {
9
+ bulk: HeightRange
10
+ live: HeightRange
11
+ }
12
+
13
+ export class HeightRange implements HeightRangeApi {
14
+ constructor(
15
+ public minHeight: number,
16
+ public maxHeight: number
17
+ ) {}
18
+
19
+ static readonly empty = new HeightRange(0, -1)
20
+
21
+ /**
22
+ * @param headers
23
+ * @returns range of height values from the given headers, or the empty range if there are no headers.
24
+ */
25
+ static from(headers: BlockHeader[]): HeightRange {
26
+ if (headers.length === 0) return HeightRange.empty
27
+ const minHeight = headers.reduce((min, h) => Math.min(min, h.height), headers[0].height)
28
+ const maxHeight = headers.reduce((max, h) => Math.max(max, h.height), headers[0].height)
29
+ return new HeightRange(minHeight, maxHeight)
30
+ }
31
+
32
+ get length() {
33
+ return Math.max(0, this.maxHeight - this.minHeight + 1)
34
+ }
35
+
36
+ get isEmpty() {
37
+ return this.minHeight > this.maxHeight
38
+ }
39
+
40
+ toString(): string {
41
+ return this.isEmpty ? '<empty>' : `${this.minHeight}-${this.maxHeight}`
42
+ }
43
+
44
+ /**
45
+ * @param range HeightRange or single height value.
46
+ * @returns true if `range` is entirely within this range.
47
+ */
48
+ contains(range: HeightRange | number) {
49
+ if (typeof range === 'number') {
50
+ return this.minHeight <= range && this.maxHeight >= range
51
+ }
52
+ return this.minHeight <= range.minHeight && this.maxHeight >= range.maxHeight
53
+ }
54
+
55
+ /**
56
+ * Return the intersection with another height range.
57
+ *
58
+ * Intersection with an empty range is always empty.
59
+ *
60
+ * The result is always a single, possibly empty, range.
61
+ * @param range
62
+ * @returns
63
+ */
64
+ intersect(range: HeightRange) {
65
+ return new HeightRange(Math.max(this.minHeight, range.minHeight), Math.min(this.maxHeight, range.maxHeight))
66
+ }
67
+
68
+ /**
69
+ * Return the union with another height range.
70
+ *
71
+ * Only valid if the two ranges overlap or touch, or one is empty.
72
+ *
73
+ * Throws an error if the union would create two disjoint ranges.
74
+ *
75
+ * @param range
76
+ * @returns
77
+ */
78
+ union(range: HeightRange) {
79
+ if (this.isEmpty) return range.copy()
80
+ if (range.isEmpty) return this.copy()
81
+ if (this.maxHeight + 1 < range.minHeight || range.maxHeight + 1 < this.minHeight)
82
+ throw new Error('Union of ranges with a gap between them is not supported.')
83
+ return new HeightRange(Math.min(this.minHeight, range.minHeight), Math.max(this.maxHeight, range.maxHeight))
84
+ }
85
+
86
+ /**
87
+ * Returns `range` subtracted from this range.
88
+ *
89
+ * Throws an error if the subtraction would create two disjoint ranges.
90
+ *
91
+ * @param range
92
+ * @returns
93
+ */
94
+ subtract(range: HeightRange) {
95
+ if (this.isEmpty || range.isEmpty) return this.copy()
96
+ if (this.minHeight < range.minHeight && this.maxHeight > range.maxHeight)
97
+ throw new Error('Subtraction of range that creates two disjoint ranges is not supported.')
98
+ if (range.maxHeight < this.minHeight || range.minHeight > this.maxHeight)
99
+ // Leave untouched. Subtracted is either all lower or all higher.
100
+ return this.copy()
101
+ if (range.minHeight <= this.minHeight && range.maxHeight < this.maxHeight)
102
+ // Remove a chunk on the low side.
103
+ return new HeightRange(range.maxHeight + 1, this.maxHeight)
104
+ if (range.minHeight <= this.minHeight && range.maxHeight >= this.maxHeight)
105
+ // Remove the whole thing
106
+ return new HeightRange(this.minHeight, this.minHeight - 1) // empty
107
+ if (range.minHeight <= this.maxHeight && range.maxHeight >= this.maxHeight)
108
+ // Remove a chunk on the high side.
109
+ return new HeightRange(this.minHeight, range.minHeight - 1)
110
+ throw new Error('All cases should have been handled :-) .')
111
+ }
112
+
113
+ /**
114
+ * If `range` is not empty and this is not empty, returns a new range minHeight
115
+ * replaced by to range.maxHeight + 1.
116
+ *
117
+ * Otherwise returns a copy of this range.
118
+ *
119
+ * This returns the portion of this range that is strictly above `range`.
120
+ */
121
+ above(range: HeightRange) {
122
+ if (range.isEmpty || this.isEmpty) return this.copy()
123
+ return new HeightRange(range.maxHeight + 1, this.maxHeight)
124
+ }
125
+
126
+ /**
127
+ * Return a copy of this range.
128
+ */
129
+ copy(): HeightRange {
130
+ return new HeightRange(this.minHeight, this.maxHeight)
131
+ }
132
+ }
@@ -0,0 +1,76 @@
1
+ /**
2
+ * A reader-writer lock to manage concurrent access.
3
+ * Allows multiple readers or one writer at a time.
4
+ */
5
+ export class SingleWriterMultiReaderLock {
6
+ private readers: number = 0
7
+ private writerActive: boolean = false
8
+ private readerQueue: Array<() => void> = []
9
+ private writerQueue: Array<() => void> = []
10
+
11
+ private checkQueues(): void {
12
+ if (this.writerActive || this.readers > 0) return
13
+ if (this.writerQueue.length > 0) {
14
+ // If there are waiting writers and no active readers or writers, start the next writer
15
+ const resolve = this.writerQueue.shift()!
16
+ resolve()
17
+ } else if (this.readerQueue.length > 0) {
18
+ // If there are waiting readers and no waiting writers, start all readers
19
+ const readers = this.readerQueue.splice(0)
20
+ for (const resolve of readers) {
21
+ resolve()
22
+ }
23
+ }
24
+ }
25
+
26
+ async withReadLock<T>(fn: () => Promise<T>): Promise<T> {
27
+ if (!this.writerActive && this.writerQueue.length === 0) {
28
+ // Fast path: no active writer or waiting writers, proceed immediately
29
+ this.readers++
30
+ try {
31
+ return await fn()
32
+ } finally {
33
+ this.readers--
34
+ this.checkQueues()
35
+ }
36
+ } else {
37
+ // Queue the reader until writers are done
38
+ const promise = new Promise<void>(resolve => {
39
+ this.readerQueue.push(resolve)
40
+ })
41
+ await promise
42
+ this.readers++
43
+ try {
44
+ return await fn()
45
+ } finally {
46
+ this.readers--
47
+ this.checkQueues()
48
+ }
49
+ }
50
+ }
51
+
52
+ async withWriteLock<T>(fn: () => Promise<T>): Promise<T> {
53
+ if (!this.writerActive && this.readers === 0) {
54
+ // Fast path: no active writer or readers, proceed immediately
55
+ this.writerActive = true
56
+ try {
57
+ return await fn()
58
+ } finally {
59
+ this.writerActive = false
60
+ this.checkQueues()
61
+ }
62
+ } else {
63
+ const promise = new Promise<void>(resolve => {
64
+ this.writerQueue.push(resolve)
65
+ })
66
+ await promise
67
+ this.writerActive = true
68
+ try {
69
+ return await fn()
70
+ } finally {
71
+ this.writerActive = false
72
+ this.checkQueues()
73
+ }
74
+ }
75
+ }
76
+ }
@@ -0,0 +1,304 @@
1
+ import { Knex, knex as makeKnex } from 'knex'
2
+ import { ChaintracksStorageKnex } from '../../Storage/ChaintracksStorageKnex'
3
+ import { deserializeBlockHeaders } from '../blockHeaderUtilities'
4
+ import { BulkFileDataManager } from '../BulkFileDataManager'
5
+ import { BulkHeaderFileInfo } from '../BulkHeaderFile'
6
+ import { ChaintracksFs } from '../ChaintracksFs'
7
+ import { LocalCdnServer } from '../../__tests/LocalCdnServer'
8
+ import { Chain } from '../../../../../sdk/types'
9
+ import { BlockHeader } from '../../../../../sdk/WalletServices.interfaces'
10
+
11
+ const runSlowTests = false
12
+
13
+ describe('BulkFileDataManager tests', () => {
14
+ jest.setTimeout(99999999)
15
+
16
+ const chain: Chain = 'main'
17
+ const fs = ChaintracksFs
18
+ const rootFolder = './src/services/chaintracker/chaintracks/__tests/data'
19
+ let headers300_399: BlockHeader[] = []
20
+ let headers400_499: BlockHeader[] = []
21
+ let server349: LocalCdnServer | undefined
22
+ let server379: LocalCdnServer | undefined
23
+ let server399: LocalCdnServer | undefined
24
+ let server402: LocalCdnServer | undefined
25
+ let server499: LocalCdnServer | undefined
26
+
27
+ beforeAll(async () => {
28
+ const data300_399 = await ChaintracksFs.readFile(fs.pathJoin(rootFolder, 'cdnTest499/mainNet_3.headers'))
29
+ const data400_499 = await ChaintracksFs.readFile(fs.pathJoin(rootFolder, 'cdnTest499/mainNet_4.headers'))
30
+ headers300_399 = deserializeBlockHeaders(300, data300_399)
31
+ headers400_499 = deserializeBlockHeaders(400, data400_499)
32
+
33
+ // Start the local CDN servers
34
+ server349 = new LocalCdnServer(8349, fs.pathJoin(rootFolder, 'cdnTest349'))
35
+ await server349.start()
36
+ server379 = new LocalCdnServer(8379, fs.pathJoin(rootFolder, 'cdnTest379'))
37
+ await server379.start()
38
+ server399 = new LocalCdnServer(8399, fs.pathJoin(rootFolder, 'cdnTest399'))
39
+ await server399.start()
40
+ server402 = new LocalCdnServer(8402, fs.pathJoin(rootFolder, 'cdnTest402'))
41
+ await server402.start()
42
+ server499 = new LocalCdnServer(8499, fs.pathJoin(rootFolder, 'cdnTest499'))
43
+ await server499.start()
44
+ })
45
+
46
+ afterAll(async () => {
47
+ if (server349) {
48
+ await server349.stop()
49
+ }
50
+ if (server379) {
51
+ await server379.stop()
52
+ }
53
+ if (server399) {
54
+ await server399.stop()
55
+ }
56
+ if (server402) {
57
+ await server402.stop()
58
+ }
59
+ if (server499) {
60
+ await server499.stop()
61
+ }
62
+ })
63
+
64
+ async function test0Body(manager: BulkFileDataManager) {
65
+ // Verify the default options and minimum expected files from default CDN
66
+ expect(manager.chain).toBe(chain)
67
+ expect(manager.maxPerFile).toBe(100000)
68
+ expect(manager.maxRetained).toBe(2)
69
+ expect(manager.fromKnownSourceUrl).toBe('https://cdn.projectbabbage.com/blockheaders')
70
+ const files = await manager.getBulkFiles()
71
+ expect(files.length).toBeGreaterThan(7)
72
+ const range = await manager.getHeightRange()
73
+ expect(range.minHeight).toBe(0)
74
+ expect(range.maxHeight).toBeGreaterThan(800000)
75
+ }
76
+
77
+ test('0 default options CDN files', async () => {
78
+ const options = BulkFileDataManager.createDefaultOptions(chain)
79
+ const manager = new BulkFileDataManager(options)
80
+
81
+ await test0Body(manager)
82
+ })
83
+
84
+ test('0a default options CDN files noDropAll', async () => {
85
+ if (!runSlowTests) return
86
+ const options = BulkFileDataManager.createDefaultOptions(chain)
87
+ const manager = new BulkFileDataManager(options)
88
+ const storage = await setupStorageKnex(manager, `BulkFileDataManager.test_0a`, false)
89
+
90
+ await test0Body(manager)
91
+
92
+ await storage.destroy()
93
+ })
94
+
95
+ test('0b default options CDN files dropAll', async () => {
96
+ if (!runSlowTests) return
97
+ const options = BulkFileDataManager.createDefaultOptions(chain)
98
+ const manager = new BulkFileDataManager(options)
99
+ const storage = await setupStorageKnex(manager, `BulkFileDataManager.test_0b`, true)
100
+
101
+ await test0Body(manager)
102
+
103
+ await storage.destroy()
104
+ })
105
+
106
+ async function test1Body(manager: BulkFileDataManager, minCount: number) {
107
+ // Verify header retrieval from different heights and data caching
108
+ expect(countDatas(manager)).toBe(minCount)
109
+ let h0 = await manager.findHeaderForHeightOrUndefined(0)
110
+ expect(h0?.hash).toBe('000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f')
111
+ expect(countDatas(manager)).toBe(minCount === 0 ? 1 : minCount)
112
+ const h101010 = await manager.findHeaderForHeightOrUndefined(101010)
113
+ expect(h101010?.hash).toBe('000000000001af33247fff33aae7c31baee4148d5a189e7353bf13bcee618202')
114
+ expect(countDatas(manager)).toBe(2)
115
+
116
+ h0 = await manager.findHeaderForHeightOrUndefined(0)
117
+ expect(h0?.hash).toBe('000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f')
118
+ expect(countDatas(manager)).toBe(2)
119
+
120
+ const h202020 = await manager.findHeaderForHeightOrUndefined(202020)
121
+ expect(h202020?.hash).toBe('00000000000003a40858736f3788edcbca3aa89ac5723a8c6b42f0227084f949')
122
+ expect(countDatas(manager)).toBe(2)
123
+ const h303030 = await manager.findHeaderForHeightOrUndefined(303030)
124
+ expect(h303030?.hash).toBe('00000000000000002f66589be500afbf212eabf7b10e12fe4639684df808c83b')
125
+ expect(countDatas(manager)).toBe(2)
126
+
127
+ h0 = await manager.findHeaderForHeightOrUndefined(0)
128
+ expect(h0?.hash).toBe('000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f')
129
+ expect(countDatas(manager)).toBe(2)
130
+
131
+ const h808080 = await manager.findHeaderForHeightOrUndefined(808080)
132
+ expect(h808080?.hash).toBe('00000000000000000a7287950fae52dac3098ba43011fd1e1315974a419b0110')
133
+ expect(countDatas(manager)).toBe(2)
134
+
135
+ // Verify a height request that is out of range returns undefined and does not affect cached data
136
+ const h909090 = await manager.findHeaderForHeightOrUndefined(909090)
137
+ expect(h909090?.hash).toBeUndefined()
138
+ expect(countDatas(manager)).toBe(2)
139
+
140
+ // Verify retrieval from cached data.
141
+ h0 = await manager.findHeaderForHeightOrUndefined(0)
142
+ expect(h0?.hash).toBe('000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f')
143
+ }
144
+
145
+ test('1 headers from heights maxRetained 2', async () => {
146
+ if (!runSlowTests) return
147
+ const options = BulkFileDataManager.createDefaultOptions(chain)
148
+ const manager = new BulkFileDataManager(options)
149
+
150
+ await test1Body(manager, 0)
151
+ })
152
+
153
+ test('1a headers from heights maxRetained 2', async () => {
154
+ if (!runSlowTests) return
155
+ const options = BulkFileDataManager.createDefaultOptions(chain)
156
+ const manager = new BulkFileDataManager(options)
157
+ const storage = await setupStorageKnex(manager, `BulkFileDataManager.test_1a`, true)
158
+
159
+ await test1Body(manager, 2)
160
+
161
+ await storage.destroy()
162
+ })
163
+
164
+ test('2 ReValidate', async () => {
165
+ if (!runSlowTests) return
166
+ const options = BulkFileDataManager.createDefaultOptions(chain)
167
+ const manager = new BulkFileDataManager(options)
168
+
169
+ // Verify full data re-validation
170
+ await manager.ReValidate()
171
+ expect(countDatas(manager)).toBe(2)
172
+ })
173
+
174
+ test('3 exportHeadersToFs', async () => {
175
+ if (!runSlowTests) return
176
+ const options = BulkFileDataManager.createDefaultOptions(chain)
177
+ const manager = new BulkFileDataManager(options)
178
+
179
+ for (const i of [349, 379, 399, 402, 499]) {
180
+ const folder = fs.pathJoin(rootFolder, `cdnTest${i}`)
181
+ await manager.exportHeadersToFs(ChaintracksFs, 100, folder, `http://localhost:8${i}/blockheaders`, i)
182
+ }
183
+ })
184
+
185
+ async function test4Body(manager: BulkFileDataManager, maxCount: number) {
186
+ expect(countDatas(manager)).toBe(2)
187
+ const range = await manager.getHeightRange()
188
+ expect(range.maxHeight).toBe(349)
189
+
190
+ await manager.mergeIncrementalBlockHeaders(headers300_399.slice(50))
191
+ await manager.ReValidate()
192
+ expect(countDatas(manager)).toBe(maxCount)
193
+ await manager.mergeIncrementalBlockHeaders(headers400_499)
194
+ await manager.ReValidate()
195
+ expect(countDatas(manager)).toBe(maxCount)
196
+
197
+ await updateFromLocalServer(manager, server379!)
198
+ await manager.ReValidate()
199
+ expect(countDatas(manager)).toBe(maxCount)
200
+ await updateFromLocalServer(manager, server399!)
201
+ await manager.ReValidate()
202
+ expect(countDatas(manager)).toBe(maxCount)
203
+ await updateFromLocalServer(manager, server402!)
204
+ await manager.ReValidate()
205
+ expect(countDatas(manager)).toBe(maxCount)
206
+ await updateFromLocalServer(manager, server499!)
207
+ await manager.ReValidate()
208
+ expect(countDatas(manager)).toBe(2)
209
+ }
210
+
211
+ test('4 add two incremental chunks overwrite by CDN', async () => {
212
+ const manager = await setupManagerOnLocalServer(server349!)
213
+
214
+ await test4Body(manager, 3)
215
+ })
216
+
217
+ test('4a add two incremental chunks overwrite by CDN', async () => {
218
+ const manager = await setupManagerOnLocalServer(server349!)
219
+ const storage = await setupStorageKnex(manager, `BulkFileDataManager.test_4a`, true)
220
+
221
+ await test4Body(manager, 2)
222
+
223
+ await storage.destroy()
224
+ })
225
+
226
+ async function test5Body(manager: BulkFileDataManager, maxCount: number) {
227
+ expect(countDatas(manager)).toBe(2)
228
+ await updateFromLocalServer(manager, server379!)
229
+ await manager.ReValidate()
230
+ expect(countDatas(manager)).toBe(2)
231
+
232
+ await manager.mergeIncrementalBlockHeaders(headers300_399.slice(50))
233
+ await manager.ReValidate()
234
+ expect(countDatas(manager)).toBe(maxCount)
235
+
236
+ await updateFromLocalServer(manager, server499!)
237
+ await manager.ReValidate()
238
+ expect(countDatas(manager)).toBe(2)
239
+
240
+ await manager.mergeIncrementalBlockHeaders(headers400_499)
241
+ await manager.ReValidate()
242
+ expect(countDatas(manager)).toBe(2)
243
+ }
244
+
245
+ test('5 add CDN incremental CDN incremental', async () => {
246
+ const manager = await setupManagerOnLocalServer(server349!)
247
+
248
+ await test5Body(manager, 3)
249
+ })
250
+
251
+ test('5a add CDN incremental CDN incremental', async () => {
252
+ const manager = await setupManagerOnLocalServer(server349!)
253
+ const storage = await setupStorageKnex(manager, `BulkFileDataManager.test_5a`, true)
254
+
255
+ await test5Body(manager, 2)
256
+
257
+ await storage.destroy()
258
+ })
259
+
260
+ async function setupStorageKnex(
261
+ manager: BulkFileDataManager,
262
+ filename: string,
263
+ deleteSqliteFile: boolean
264
+ ): Promise<ChaintracksStorageKnex> {
265
+ const path = fs.pathJoin(rootFolder, `${filename}.sqlite`)
266
+ const localSqlite: Knex.Config = {
267
+ client: 'sqlite3',
268
+ connection: { filename: path },
269
+ useNullAsDefault: true
270
+ }
271
+ if (deleteSqliteFile) {
272
+ const fs = ChaintracksFs
273
+ try {
274
+ await fs.delete(path)
275
+ } catch {}
276
+ }
277
+ const knexOptions = ChaintracksStorageKnex.createStorageKnexOptions(chain, makeKnex(localSqlite))
278
+ knexOptions.bulkFileDataManager = manager
279
+ const storage = new ChaintracksStorageKnex(knexOptions)
280
+ await storage.makeAvailable()
281
+
282
+ return storage
283
+ }
284
+
285
+ async function setupManagerOnLocalServer(server: LocalCdnServer) {
286
+ const options = BulkFileDataManager.createDefaultOptions(chain)
287
+ options.fromKnownSourceUrl = undefined
288
+ const manager = new BulkFileDataManager(options)
289
+ await updateFromLocalServer(manager, server)
290
+ return manager
291
+ }
292
+ })
293
+
294
+ async function updateFromLocalServer(manager: BulkFileDataManager, server: LocalCdnServer) {
295
+ await manager.updateFromUrl(`http://localhost:${server.port}/blockheaders`)
296
+ }
297
+
298
+ function countDatas(manager: BulkFileDataManager): number {
299
+ let count = 0
300
+ for (const file of manager['bfds'] as BulkHeaderFileInfo[]) {
301
+ if (file.data) count += 1
302
+ }
303
+ return count
304
+ }