@bsv/wallet-toolbox 2.1.24 → 2.1.25

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 (777) hide show
  1. package/CHANGELOG.md +2 -7
  2. package/docs/storage.md +8 -8
  3. package/out/src/CWIStyleWalletManager.d.ts +33 -7
  4. package/out/src/CWIStyleWalletManager.d.ts.map +1 -1
  5. package/out/src/CWIStyleWalletManager.js +281 -313
  6. package/out/src/CWIStyleWalletManager.js.map +1 -1
  7. package/out/src/Setup.d.ts +6 -6
  8. package/out/src/Setup.d.ts.map +1 -1
  9. package/out/src/Setup.js +5 -5
  10. package/out/src/Setup.js.map +1 -1
  11. package/out/src/SetupClient.d.ts +6 -6
  12. package/out/src/SetupClient.d.ts.map +1 -1
  13. package/out/src/SetupClient.js +5 -5
  14. package/out/src/SetupClient.js.map +1 -1
  15. package/out/src/SetupWallet.d.ts.map +1 -1
  16. package/out/src/ShamirWalletManager.d.ts +3 -3
  17. package/out/src/ShamirWalletManager.d.ts.map +1 -1
  18. package/out/src/ShamirWalletManager.js +6 -6
  19. package/out/src/ShamirWalletManager.js.map +1 -1
  20. package/out/src/SimpleWalletManager.d.ts +12 -2
  21. package/out/src/SimpleWalletManager.d.ts.map +1 -1
  22. package/out/src/SimpleWalletManager.js +46 -30
  23. package/out/src/SimpleWalletManager.js.map +1 -1
  24. package/out/src/Wallet.d.ts +1 -1
  25. package/out/src/Wallet.d.ts.map +1 -1
  26. package/out/src/Wallet.js +102 -100
  27. package/out/src/Wallet.js.map +1 -1
  28. package/out/src/WalletAuthenticationManager.d.ts +1 -1
  29. package/out/src/WalletAuthenticationManager.d.ts.map +1 -1
  30. package/out/src/WalletAuthenticationManager.js +3 -3
  31. package/out/src/WalletAuthenticationManager.js.map +1 -1
  32. package/out/src/WalletLogger.d.ts.map +1 -1
  33. package/out/src/WalletLogger.js +16 -8
  34. package/out/src/WalletLogger.js.map +1 -1
  35. package/out/src/WalletPermissionsManager.d.ts +89 -18
  36. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  37. package/out/src/WalletPermissionsManager.js +656 -870
  38. package/out/src/WalletPermissionsManager.js.map +1 -1
  39. package/out/src/WalletSettingsManager.d.ts +2 -2
  40. package/out/src/WalletSettingsManager.d.ts.map +1 -1
  41. package/out/src/WalletSettingsManager.js.map +1 -1
  42. package/out/src/__tests/CWIStyleWalletManager.test.js +6 -6
  43. package/out/src/__tests/CWIStyleWalletManager.test.js.map +1 -1
  44. package/out/src/__tests/WalletPermissionsManager.checks.test.js.map +1 -1
  45. package/out/src/__tests/WalletPermissionsManager.encryption.test.js +8 -8
  46. package/out/src/__tests/WalletPermissionsManager.encryption.test.js.map +1 -1
  47. package/out/src/__tests/WalletPermissionsManager.fixtures.d.ts +0 -2
  48. package/out/src/__tests/WalletPermissionsManager.fixtures.d.ts.map +1 -1
  49. package/out/src/__tests/WalletPermissionsManager.fixtures.js +6 -18
  50. package/out/src/__tests/WalletPermissionsManager.fixtures.js.map +1 -1
  51. package/out/src/__tests/WalletPermissionsManager.flows.test.js.map +1 -1
  52. package/out/src/__tests/WalletPermissionsManager.pmodules.test.js +7 -7
  53. package/out/src/__tests/WalletPermissionsManager.pmodules.test.js.map +1 -1
  54. package/out/src/__tests/WalletPermissionsManager.tokens.test.js +1 -1
  55. package/out/src/__tests/WalletPermissionsManager.tokens.test.js.map +1 -1
  56. package/out/src/entropy/EntropyCollector.d.ts +1 -1
  57. package/out/src/entropy/EntropyCollector.d.ts.map +1 -1
  58. package/out/src/entropy/EntropyCollector.js +3 -3
  59. package/out/src/entropy/EntropyCollector.js.map +1 -1
  60. package/out/src/fundWalletP2PKH.d.ts +2 -2
  61. package/out/src/fundWalletP2PKH.d.ts.map +1 -1
  62. package/out/src/fundWalletP2PKH.js +11 -10
  63. package/out/src/fundWalletP2PKH.js.map +1 -1
  64. package/out/src/mockchain/MockChainMigrations.d.ts +3 -3
  65. package/out/src/mockchain/MockChainMigrations.d.ts.map +1 -1
  66. package/out/src/mockchain/MockChainMigrations.js.map +1 -1
  67. package/out/src/mockchain/MockChainStorage.d.ts.map +1 -1
  68. package/out/src/mockchain/MockChainStorage.js +5 -5
  69. package/out/src/mockchain/MockChainStorage.js.map +1 -1
  70. package/out/src/mockchain/MockChainTracker.d.ts.map +1 -1
  71. package/out/src/mockchain/MockChainTracker.js +10 -10
  72. package/out/src/mockchain/MockChainTracker.js.map +1 -1
  73. package/out/src/mockchain/MockMiner.d.ts.map +1 -1
  74. package/out/src/mockchain/MockMiner.js +3 -3
  75. package/out/src/mockchain/MockMiner.js.map +1 -1
  76. package/out/src/mockchain/MockServices.d.ts +9 -0
  77. package/out/src/mockchain/MockServices.d.ts.map +1 -1
  78. package/out/src/mockchain/MockServices.js +195 -238
  79. package/out/src/mockchain/MockServices.js.map +1 -1
  80. package/out/src/mockchain/merkleTree.d.ts.map +1 -1
  81. package/out/src/mockchain/merkleTree.js +21 -12
  82. package/out/src/mockchain/merkleTree.js.map +1 -1
  83. package/out/src/monitor/Monitor.d.ts +17 -0
  84. package/out/src/monitor/Monitor.d.ts.map +1 -1
  85. package/out/src/monitor/Monitor.js +56 -75
  86. package/out/src/monitor/Monitor.js.map +1 -1
  87. package/out/src/monitor/MonitorDaemon.d.ts.map +1 -1
  88. package/out/src/monitor/MonitorDaemon.js +24 -23
  89. package/out/src/monitor/MonitorDaemon.js.map +1 -1
  90. package/out/src/monitor/__test/MonitorDaemon.man.test.js.map +1 -1
  91. package/out/src/monitor/tasks/TaskArcSSE.d.ts +2 -2
  92. package/out/src/monitor/tasks/TaskArcSSE.d.ts.map +1 -1
  93. package/out/src/monitor/tasks/TaskArcSSE.js +10 -23
  94. package/out/src/monitor/tasks/TaskArcSSE.js.map +1 -1
  95. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts +2 -2
  96. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -1
  97. package/out/src/monitor/tasks/TaskCheckForProofs.js +28 -16
  98. package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
  99. package/out/src/monitor/tasks/TaskCheckNoSends.d.ts +1 -1
  100. package/out/src/monitor/tasks/TaskCheckNoSends.d.ts.map +1 -1
  101. package/out/src/monitor/tasks/TaskCheckNoSends.js +1 -2
  102. package/out/src/monitor/tasks/TaskCheckNoSends.js.map +1 -1
  103. package/out/src/monitor/tasks/TaskClock.d.ts +1 -1
  104. package/out/src/monitor/tasks/TaskClock.d.ts.map +1 -1
  105. package/out/src/monitor/tasks/TaskClock.js +0 -1
  106. package/out/src/monitor/tasks/TaskClock.js.map +1 -1
  107. package/out/src/monitor/tasks/TaskFailAbandoned.d.ts +1 -1
  108. package/out/src/monitor/tasks/TaskFailAbandoned.d.ts.map +1 -1
  109. package/out/src/monitor/tasks/TaskFailAbandoned.js.map +1 -1
  110. package/out/src/monitor/tasks/TaskMineBlock.d.ts +1 -1
  111. package/out/src/monitor/tasks/TaskMineBlock.d.ts.map +1 -1
  112. package/out/src/monitor/tasks/TaskMineBlock.js.map +1 -1
  113. package/out/src/monitor/tasks/TaskMonitorCallHistory.d.ts +1 -1
  114. package/out/src/monitor/tasks/TaskMonitorCallHistory.d.ts.map +1 -1
  115. package/out/src/monitor/tasks/TaskMonitorCallHistory.js +1 -1
  116. package/out/src/monitor/tasks/TaskMonitorCallHistory.js.map +1 -1
  117. package/out/src/monitor/tasks/TaskNewHeader.d.ts +2 -2
  118. package/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -1
  119. package/out/src/monitor/tasks/TaskNewHeader.js +7 -5
  120. package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
  121. package/out/src/monitor/tasks/TaskPurge.d.ts +1 -1
  122. package/out/src/monitor/tasks/TaskPurge.d.ts.map +1 -1
  123. package/out/src/monitor/tasks/TaskPurge.js.map +1 -1
  124. package/out/src/monitor/tasks/TaskReorg.d.ts +1 -1
  125. package/out/src/monitor/tasks/TaskReorg.d.ts.map +1 -1
  126. package/out/src/monitor/tasks/TaskReorg.js +2 -2
  127. package/out/src/monitor/tasks/TaskReorg.js.map +1 -1
  128. package/out/src/monitor/tasks/TaskReviewDoubleSpends.d.ts +1 -1
  129. package/out/src/monitor/tasks/TaskReviewDoubleSpends.d.ts.map +1 -1
  130. package/out/src/monitor/tasks/TaskReviewDoubleSpends.js +10 -10
  131. package/out/src/monitor/tasks/TaskReviewDoubleSpends.js.map +1 -1
  132. package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts +1 -1
  133. package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts.map +1 -1
  134. package/out/src/monitor/tasks/TaskReviewProvenTxs.js +2 -2
  135. package/out/src/monitor/tasks/TaskReviewProvenTxs.js.map +1 -1
  136. package/out/src/monitor/tasks/TaskReviewStatus.d.ts +1 -1
  137. package/out/src/monitor/tasks/TaskReviewStatus.d.ts.map +1 -1
  138. package/out/src/monitor/tasks/TaskReviewStatus.js.map +1 -1
  139. package/out/src/monitor/tasks/TaskReviewUtxos.d.ts +1 -1
  140. package/out/src/monitor/tasks/TaskReviewUtxos.d.ts.map +1 -1
  141. package/out/src/monitor/tasks/TaskReviewUtxos.js.map +1 -1
  142. package/out/src/monitor/tasks/TaskSendWaiting.d.ts +1 -1
  143. package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
  144. package/out/src/monitor/tasks/TaskSendWaiting.js +4 -5
  145. package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  146. package/out/src/monitor/tasks/TaskSyncWhenIdle.d.ts +1 -1
  147. package/out/src/monitor/tasks/TaskSyncWhenIdle.d.ts.map +1 -1
  148. package/out/src/monitor/tasks/TaskSyncWhenIdle.js +1 -4
  149. package/out/src/monitor/tasks/TaskSyncWhenIdle.js.map +1 -1
  150. package/out/src/monitor/tasks/TaskUnFail.d.ts +1 -1
  151. package/out/src/monitor/tasks/TaskUnFail.d.ts.map +1 -1
  152. package/out/src/monitor/tasks/TaskUnFail.js +13 -15
  153. package/out/src/monitor/tasks/TaskUnFail.js.map +1 -1
  154. package/out/src/monitor/tasks/WalletMonitorTask.d.ts.map +1 -1
  155. package/out/src/monitor/tasks/WalletMonitorTask.js +3 -1
  156. package/out/src/monitor/tasks/WalletMonitorTask.js.map +1 -1
  157. package/out/src/monitor/tasks/__tests/TaskArcSSE.test.js.map +1 -1
  158. package/out/src/monitor/tasks/__tests/TaskReviewDoubleSpends.test.js.map +1 -1
  159. package/out/src/monitor/tasks/__tests/TaskReviewProvenTxs.test.js.map +1 -1
  160. package/out/src/monitor/tasks/__tests/TaskReviewUtxos.test.js.map +1 -1
  161. package/out/src/monitor/tasks/__tests/TaskSendWaiting.test.js.map +1 -1
  162. package/out/src/sdk/CertOpsWallet.d.ts +3 -3
  163. package/out/src/sdk/CertOpsWallet.d.ts.map +1 -1
  164. package/out/src/sdk/PrivilegedKeyManager.d.ts +3 -3
  165. package/out/src/sdk/PrivilegedKeyManager.d.ts.map +1 -1
  166. package/out/src/sdk/PrivilegedKeyManager.js +26 -21
  167. package/out/src/sdk/PrivilegedKeyManager.js.map +1 -1
  168. package/out/src/sdk/WERR_errors.d.ts.map +1 -1
  169. package/out/src/sdk/WERR_errors.js +5 -5
  170. package/out/src/sdk/WERR_errors.js.map +1 -1
  171. package/out/src/sdk/WalletError.d.ts +1 -1
  172. package/out/src/sdk/WalletError.d.ts.map +1 -1
  173. package/out/src/sdk/WalletError.js +10 -3
  174. package/out/src/sdk/WalletError.js.map +1 -1
  175. package/out/src/sdk/WalletErrorFromJson.d.ts.map +1 -1
  176. package/out/src/sdk/WalletErrorFromJson.js +1 -3
  177. package/out/src/sdk/WalletErrorFromJson.js.map +1 -1
  178. package/out/src/sdk/WalletServices.interfaces.d.ts +19 -19
  179. package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  180. package/out/src/sdk/__test/CertificateLifeCycle.test.js +3 -3
  181. package/out/src/sdk/__test/CertificateLifeCycle.test.js.map +1 -1
  182. package/out/src/sdk/__test/WalletError.test.js +4 -4
  183. package/out/src/sdk/__test/WalletError.test.js.map +1 -1
  184. package/out/src/sdk/types.d.ts +4 -4
  185. package/out/src/sdk/types.d.ts.map +1 -1
  186. package/out/src/sdk/types.js +3 -3
  187. package/out/src/sdk/types.js.map +1 -1
  188. package/out/src/services/ServiceCollection.d.ts +6 -6
  189. package/out/src/services/ServiceCollection.d.ts.map +1 -1
  190. package/out/src/services/ServiceCollection.js +3 -4
  191. package/out/src/services/ServiceCollection.js.map +1 -1
  192. package/out/src/services/Services.d.ts +5 -0
  193. package/out/src/services/Services.d.ts.map +1 -1
  194. package/out/src/services/Services.js +174 -182
  195. package/out/src/services/Services.js.map +1 -1
  196. package/out/src/services/__tests/ARC.man.test.js.map +1 -1
  197. package/out/src/services/__tests/ARC.timeout.man.test.js +3 -3
  198. package/out/src/services/__tests/ARC.timeout.man.test.js.map +1 -1
  199. package/out/src/services/__tests/ArcGorillaPool.man.test.js.map +1 -1
  200. package/out/src/services/__tests/bitrails.test.js +3 -2
  201. package/out/src/services/__tests/bitrails.test.js.map +1 -1
  202. package/out/src/services/__tests/getFiatExchangeRate.test.js.map +1 -1
  203. package/out/src/services/__tests/postBeef.test.js.map +1 -1
  204. package/out/src/services/chaintracker/BHServiceClient.d.ts.map +1 -1
  205. package/out/src/services/chaintracker/BHServiceClient.js +7 -7
  206. package/out/src/services/chaintracker/BHServiceClient.js.map +1 -1
  207. package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
  208. package/out/src/services/chaintracker/ChaintracksChainTracker.js +5 -5
  209. package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
  210. package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.js +2 -2
  211. package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.js.map +1 -1
  212. package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.js +1 -1
  213. package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.js.map +1 -1
  214. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts +5 -3
  215. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts.map +1 -1
  216. package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js.map +1 -1
  217. package/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts.map +1 -1
  218. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +20 -10
  219. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
  220. package/out/src/services/chaintracker/chaintracks/Chaintracks.js +228 -221
  221. package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
  222. package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts +1 -1
  223. package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts.map +1 -1
  224. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js +5 -22
  225. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +1 -1
  226. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -1
  227. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +9 -10
  228. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -1
  229. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -1
  230. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +1 -1
  231. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
  232. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts +1 -2
  233. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts.map +1 -1
  234. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +3 -3
  235. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
  236. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts.map +1 -1
  237. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js.map +1 -1
  238. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -1
  239. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +3 -3
  240. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -1
  241. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map +1 -1
  242. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +1 -1
  243. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -1
  244. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +1 -1
  245. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
  246. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.d.ts.map +1 -1
  247. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js +1 -8
  248. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js.map +1 -1
  249. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts.map +1 -1
  250. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +2 -2
  251. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
  252. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map +1 -1
  253. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +1 -1
  254. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +2 -2
  255. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
  256. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +6 -39
  257. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
  258. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts +3 -3
  259. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts.map +1 -1
  260. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js +8 -6
  261. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js.map +1 -1
  262. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.js +2 -1
  263. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.js.map +1 -1
  264. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/LiveIngestorWhatsOnChainPoll.test.js +4 -3
  265. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/LiveIngestorWhatsOnChainPoll.test.js.map +1 -1
  266. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.man.test.js +11 -10
  267. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.man.test.js.map +1 -1
  268. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -1
  269. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +9 -16
  270. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
  271. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts +3 -3
  272. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts.map +1 -1
  273. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js +13 -13
  274. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js.map +1 -1
  275. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
  276. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +34 -22
  277. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
  278. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +1 -1
  279. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +31 -30
  280. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -1
  281. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts +1 -2
  282. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -1
  283. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +25 -22
  284. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -1
  285. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageMemory.d.ts.map +1 -1
  286. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageMemory.js +0 -21
  287. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageMemory.js.map +1 -1
  288. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +2 -2
  289. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
  290. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +11 -10
  291. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
  292. package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.js +2 -1
  293. package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.js.map +1 -1
  294. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js +8 -7
  295. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js.map +1 -1
  296. package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksCDN.man.test.js +6 -5
  297. package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksCDN.man.test.js.map +1 -1
  298. package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.js +10 -9
  299. package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.js.map +1 -1
  300. package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.d.ts +1 -1
  301. package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.d.ts.map +1 -1
  302. package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.js +14 -17
  303. package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.js.map +1 -1
  304. package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.js +3 -2
  305. package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.js.map +1 -1
  306. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.d.ts.map +1 -1
  307. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js +6 -8
  308. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js.map +1 -1
  309. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -1
  310. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.d.ts.map +1 -1
  311. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js.map +1 -1
  312. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts.map +1 -1
  313. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +6 -1
  314. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
  315. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +247 -227
  316. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
  317. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.d.ts.map +1 -1
  318. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js +8 -7
  319. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js.map +1 -1
  320. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
  321. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js +35 -25
  322. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
  323. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +5 -5
  324. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -1
  325. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +13 -11
  326. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -1
  327. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts +0 -1
  328. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts.map +1 -1
  329. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js.map +1 -1
  330. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts +2 -2
  331. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts.map +1 -1
  332. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js +13 -13
  333. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js.map +1 -1
  334. package/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -1
  335. package/out/src/services/chaintracker/chaintracks/util/HeightRange.js +21 -13
  336. package/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -1
  337. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts +2 -2
  338. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts.map +1 -1
  339. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js.map +1 -1
  340. package/out/src/services/chaintracker/chaintracks/util/__tests/BulkFileDataManager.test.js +11 -11
  341. package/out/src/services/chaintracker/chaintracks/util/__tests/BulkFileDataManager.test.js.map +1 -1
  342. package/out/src/services/chaintracker/chaintracks/util/__tests/ChaintracksFetch.test.js +1 -1
  343. package/out/src/services/chaintracker/chaintracks/util/__tests/ChaintracksFetch.test.js.map +1 -1
  344. package/out/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.js +2 -2
  345. package/out/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.js.map +1 -1
  346. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts +1 -1
  347. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
  348. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +28 -24
  349. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
  350. package/out/src/services/chaintracker/chaintracks/util/dirtyHashes.d.ts.map +1 -1
  351. package/out/src/services/chaintracker/chaintracks/util/dirtyHashes.js.map +1 -1
  352. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
  353. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +9 -10
  354. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
  355. package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
  356. package/out/src/services/createDefaultWalletServicesOptions.js +3 -3
  357. package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
  358. package/out/src/services/providers/ARC.d.ts.map +1 -1
  359. package/out/src/services/providers/ARC.js +7 -14
  360. package/out/src/services/providers/ARC.js.map +1 -1
  361. package/out/src/services/providers/ArcSSEClient.d.ts.map +1 -1
  362. package/out/src/services/providers/ArcSSEClient.js +1 -1
  363. package/out/src/services/providers/ArcSSEClient.js.map +1 -1
  364. package/out/src/services/providers/Bitails.d.ts.map +1 -1
  365. package/out/src/services/providers/Bitails.js +17 -17
  366. package/out/src/services/providers/Bitails.js.map +1 -1
  367. package/out/src/services/providers/SdkWhatsOnChain.d.ts.map +1 -1
  368. package/out/src/services/providers/SdkWhatsOnChain.js.map +1 -1
  369. package/out/src/services/providers/WhatsOnChain.d.ts +2 -0
  370. package/out/src/services/providers/WhatsOnChain.d.ts.map +1 -1
  371. package/out/src/services/providers/WhatsOnChain.js +109 -233
  372. package/out/src/services/providers/WhatsOnChain.js.map +1 -1
  373. package/out/src/services/providers/__tests/ArcSSEClient.test.js.map +1 -1
  374. package/out/src/services/providers/exchangeRates.d.ts.map +1 -1
  375. package/out/src/services/providers/exchangeRates.js +3 -3
  376. package/out/src/services/providers/exchangeRates.js.map +1 -1
  377. package/out/src/services/providers/getBeefForTxid.d.ts +1 -1
  378. package/out/src/services/providers/getBeefForTxid.d.ts.map +1 -1
  379. package/out/src/services/providers/getBeefForTxid.js.map +1 -1
  380. package/out/src/services/providers/whatsOnChainHelpers.d.ts +68 -0
  381. package/out/src/services/providers/whatsOnChainHelpers.d.ts.map +1 -0
  382. package/out/src/services/providers/whatsOnChainHelpers.js +147 -0
  383. package/out/src/services/providers/whatsOnChainHelpers.js.map +1 -0
  384. package/out/src/signer/WalletSigner.d.ts.map +1 -1
  385. package/out/src/signer/WalletSigner.js.map +1 -1
  386. package/out/src/signer/methods/acquireDirectCertificate.js +1 -1
  387. package/out/src/signer/methods/acquireDirectCertificate.js.map +1 -1
  388. package/out/src/signer/methods/buildSignableTransaction.d.ts.map +1 -1
  389. package/out/src/signer/methods/buildSignableTransaction.js +21 -13
  390. package/out/src/signer/methods/buildSignableTransaction.js.map +1 -1
  391. package/out/src/signer/methods/completeSignedTransaction.d.ts.map +1 -1
  392. package/out/src/signer/methods/completeSignedTransaction.js +20 -21
  393. package/out/src/signer/methods/completeSignedTransaction.js.map +1 -1
  394. package/out/src/signer/methods/createAction.d.ts.map +1 -1
  395. package/out/src/signer/methods/createAction.js +8 -7
  396. package/out/src/signer/methods/createAction.js.map +1 -1
  397. package/out/src/signer/methods/internalizeAction.d.ts.map +1 -1
  398. package/out/src/signer/methods/internalizeAction.js +8 -6
  399. package/out/src/signer/methods/internalizeAction.js.map +1 -1
  400. package/out/src/signer/methods/proveCertificate.js +1 -1
  401. package/out/src/signer/methods/signAction.d.ts.map +1 -1
  402. package/out/src/signer/methods/signAction.js +8 -10
  403. package/out/src/signer/methods/signAction.js.map +1 -1
  404. package/out/src/storage/StorageIdb.d.ts +16 -1
  405. package/out/src/storage/StorageIdb.d.ts.map +1 -1
  406. package/out/src/storage/StorageIdb.js +536 -1221
  407. package/out/src/storage/StorageIdb.js.map +1 -1
  408. package/out/src/storage/StorageKnex.d.ts +10 -0
  409. package/out/src/storage/StorageKnex.d.ts.map +1 -1
  410. package/out/src/storage/StorageKnex.js +162 -152
  411. package/out/src/storage/StorageKnex.js.map +1 -1
  412. package/out/src/storage/StorageProvider.d.ts +10 -0
  413. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  414. package/out/src/storage/StorageProvider.js +152 -182
  415. package/out/src/storage/StorageProvider.js.map +1 -1
  416. package/out/src/storage/StorageReader.d.ts.map +1 -1
  417. package/out/src/storage/StorageReader.js +8 -7
  418. package/out/src/storage/StorageReader.js.map +1 -1
  419. package/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
  420. package/out/src/storage/StorageReaderWriter.js +32 -32
  421. package/out/src/storage/StorageReaderWriter.js.map +1 -1
  422. package/out/src/storage/StorageSyncReader.d.ts.map +1 -1
  423. package/out/src/storage/StorageSyncReader.js +3 -3
  424. package/out/src/storage/StorageSyncReader.js.map +1 -1
  425. package/out/src/storage/WalletStorageManager.d.ts +3 -0
  426. package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
  427. package/out/src/storage/WalletStorageManager.js +83 -73
  428. package/out/src/storage/WalletStorageManager.js.map +1 -1
  429. package/out/src/storage/__test/StorageIdb.test.js +1 -1
  430. package/out/src/storage/__test/WalletStorageManager.test.js +1 -1
  431. package/out/src/storage/__test/WalletStorageManager.test.js.map +1 -1
  432. package/out/src/storage/__test/adminStats.man.test.js +1 -1
  433. package/out/src/storage/__test/adminStats.man.test.js.map +1 -1
  434. package/out/src/storage/__test/findStaleMerkleRoots.test.js.map +1 -1
  435. package/out/src/storage/__test/findStaleMerkleRootsKnex.test.js.map +1 -1
  436. package/out/src/storage/__test/getBeefForTransaction.test.js +1 -1
  437. package/out/src/storage/__test/getBeefForTransaction.test.js.map +1 -1
  438. package/out/src/storage/adminServer/adminServer.d.ts +1 -1
  439. package/out/src/storage/adminServer/adminServer.d.ts.map +1 -1
  440. package/out/src/storage/adminServer/adminServer.js +12 -12
  441. package/out/src/storage/adminServer/adminServer.js.map +1 -1
  442. package/out/src/storage/adminServer/adminUi.d.ts.map +1 -1
  443. package/out/src/storage/idbHelpers.d.ts +42 -0
  444. package/out/src/storage/idbHelpers.d.ts.map +1 -0
  445. package/out/src/storage/idbHelpers.js +375 -0
  446. package/out/src/storage/idbHelpers.js.map +1 -0
  447. package/out/src/storage/methods/ListActionsSpecOp.d.ts +6 -1
  448. package/out/src/storage/methods/ListActionsSpecOp.d.ts.map +1 -1
  449. package/out/src/storage/methods/ListActionsSpecOp.js +28 -2
  450. package/out/src/storage/methods/ListActionsSpecOp.js.map +1 -1
  451. package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
  452. package/out/src/storage/methods/ListOutputsSpecOp.js +8 -11
  453. package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
  454. package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.js +3 -3
  455. package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.js.map +1 -1
  456. package/out/src/storage/methods/__test/offsetKey.test.js +1 -1
  457. package/out/src/storage/methods/__test/offsetKey.test.js.map +1 -1
  458. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts +83 -0
  459. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -1
  460. package/out/src/storage/methods/attemptToPostReqsToNetwork.js +224 -61
  461. package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
  462. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  463. package/out/src/storage/methods/createAction.js +230 -270
  464. package/out/src/storage/methods/createAction.js.map +1 -1
  465. package/out/src/storage/methods/generateChange.d.ts.map +1 -1
  466. package/out/src/storage/methods/generateChange.js +99 -80
  467. package/out/src/storage/methods/generateChange.js.map +1 -1
  468. package/out/src/storage/methods/getBeefForTransaction.js +15 -13
  469. package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
  470. package/out/src/storage/methods/getSyncChunk.d.ts.map +1 -1
  471. package/out/src/storage/methods/getSyncChunk.js +4 -3
  472. package/out/src/storage/methods/getSyncChunk.js.map +1 -1
  473. package/out/src/storage/methods/internalizeAction.js +41 -51
  474. package/out/src/storage/methods/internalizeAction.js.map +1 -1
  475. package/out/src/storage/methods/listActionsIdb.d.ts.map +1 -1
  476. package/out/src/storage/methods/listActionsIdb.js +85 -110
  477. package/out/src/storage/methods/listActionsIdb.js.map +1 -1
  478. package/out/src/storage/methods/listActionsKnex.d.ts +1 -1
  479. package/out/src/storage/methods/listActionsKnex.d.ts.map +1 -1
  480. package/out/src/storage/methods/listActionsKnex.js +94 -117
  481. package/out/src/storage/methods/listActionsKnex.js.map +1 -1
  482. package/out/src/storage/methods/listCertificates.d.ts +1 -1
  483. package/out/src/storage/methods/listCertificates.d.ts.map +1 -1
  484. package/out/src/storage/methods/listCertificates.js +7 -7
  485. package/out/src/storage/methods/listCertificates.js.map +1 -1
  486. package/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -1
  487. package/out/src/storage/methods/listOutputsIdb.js +24 -27
  488. package/out/src/storage/methods/listOutputsIdb.js.map +1 -1
  489. package/out/src/storage/methods/listOutputsKnex.d.ts +1 -1
  490. package/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -1
  491. package/out/src/storage/methods/listOutputsKnex.js +27 -28
  492. package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
  493. package/out/src/storage/methods/offsetKey.d.ts +1 -1
  494. package/out/src/storage/methods/offsetKey.d.ts.map +1 -1
  495. package/out/src/storage/methods/offsetKey.js +3 -5
  496. package/out/src/storage/methods/offsetKey.js.map +1 -1
  497. package/out/src/storage/methods/processAction.d.ts +0 -11
  498. package/out/src/storage/methods/processAction.d.ts.map +1 -1
  499. package/out/src/storage/methods/processAction.js +90 -83
  500. package/out/src/storage/methods/processAction.js.map +1 -1
  501. package/out/src/storage/methods/purgeData.d.ts +1 -1
  502. package/out/src/storage/methods/purgeData.d.ts.map +1 -1
  503. package/out/src/storage/methods/purgeData.js +35 -16
  504. package/out/src/storage/methods/purgeData.js.map +1 -1
  505. package/out/src/storage/methods/purgeDataIdb.d.ts.map +1 -1
  506. package/out/src/storage/methods/purgeDataIdb.js +1 -1
  507. package/out/src/storage/methods/purgeDataIdb.js.map +1 -1
  508. package/out/src/storage/methods/reviewStatus.d.ts +1 -1
  509. package/out/src/storage/methods/reviewStatus.d.ts.map +1 -1
  510. package/out/src/storage/methods/reviewStatus.js +20 -12
  511. package/out/src/storage/methods/reviewStatus.js.map +1 -1
  512. package/out/src/storage/methods/reviewStatusIdb.d.ts +1 -1
  513. package/out/src/storage/methods/reviewStatusIdb.d.ts.map +1 -1
  514. package/out/src/storage/methods/reviewStatusIdb.js.map +1 -1
  515. package/out/src/storage/methods/utils.Buffer.d.ts.map +1 -1
  516. package/out/src/storage/methods/utils.Buffer.js.map +1 -1
  517. package/out/src/storage/methods/utils.d.ts.map +1 -1
  518. package/out/src/storage/methods/utils.js +7 -1
  519. package/out/src/storage/methods/utils.js.map +1 -1
  520. package/out/src/storage/remoting/StorageClient.d.ts +4 -270
  521. package/out/src/storage/remoting/StorageClient.d.ts.map +1 -1
  522. package/out/src/storage/remoting/StorageClient.js +16 -423
  523. package/out/src/storage/remoting/StorageClient.js.map +1 -1
  524. package/out/src/storage/remoting/StorageClientBase.d.ts +289 -0
  525. package/out/src/storage/remoting/StorageClientBase.d.ts.map +1 -0
  526. package/out/src/storage/remoting/StorageClientBase.js +375 -0
  527. package/out/src/storage/remoting/StorageClientBase.js.map +1 -0
  528. package/out/src/storage/remoting/StorageMobile.d.ts +7 -275
  529. package/out/src/storage/remoting/StorageMobile.d.ts.map +1 -1
  530. package/out/src/storage/remoting/StorageMobile.js +12 -421
  531. package/out/src/storage/remoting/StorageMobile.js.map +1 -1
  532. package/out/src/storage/remoting/StorageServer.d.ts +11 -8
  533. package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
  534. package/out/src/storage/remoting/StorageServer.js +51 -102
  535. package/out/src/storage/remoting/StorageServer.js.map +1 -1
  536. package/out/src/storage/remoting/__test/StorageClient.man.test.js +6 -6
  537. package/out/src/storage/remoting/__test/StorageClient.man.test.js.map +1 -1
  538. package/out/src/storage/remoting/__test/StorageClient.test.js +8 -8
  539. package/out/src/storage/remoting/__test/StorageClient.test.js.map +1 -1
  540. package/out/src/storage/remoting/__tests__/entityValidationHelpers.test.d.ts +2 -0
  541. package/out/src/storage/remoting/__tests__/entityValidationHelpers.test.d.ts.map +1 -0
  542. package/out/src/storage/remoting/__tests__/entityValidationHelpers.test.js +268 -0
  543. package/out/src/storage/remoting/__tests__/entityValidationHelpers.test.js.map +1 -0
  544. package/out/src/storage/remoting/entityValidationHelpers.d.ts +29 -0
  545. package/out/src/storage/remoting/entityValidationHelpers.d.ts.map +1 -0
  546. package/out/src/storage/remoting/entityValidationHelpers.js +91 -0
  547. package/out/src/storage/remoting/entityValidationHelpers.js.map +1 -0
  548. package/out/src/storage/schema/KnexMigrations.d.ts +3 -3
  549. package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
  550. package/out/src/storage/schema/KnexMigrations.js +26 -9
  551. package/out/src/storage/schema/KnexMigrations.js.map +1 -1
  552. package/out/src/storage/schema/StorageIdbSchema.d.ts +1 -1
  553. package/out/src/storage/schema/StorageIdbSchema.d.ts.map +1 -1
  554. package/out/src/storage/schema/__tests/v7Backfill.runner.test.d.ts +2 -0
  555. package/out/src/storage/schema/__tests/v7Backfill.runner.test.d.ts.map +1 -0
  556. package/out/src/storage/schema/__tests/v7Backfill.runner.test.js +148 -0
  557. package/out/src/storage/schema/__tests/v7Backfill.runner.test.js.map +1 -0
  558. package/out/src/storage/schema/__tests/v7Backfill.test.d.ts +2 -0
  559. package/out/src/storage/schema/__tests/v7Backfill.test.d.ts.map +1 -0
  560. package/out/src/storage/schema/__tests/v7Backfill.test.js +96 -0
  561. package/out/src/storage/schema/__tests/v7Backfill.test.js.map +1 -0
  562. package/out/src/storage/schema/__tests/v7Fsm.test.d.ts +2 -0
  563. package/out/src/storage/schema/__tests/v7Fsm.test.d.ts.map +1 -0
  564. package/out/src/storage/schema/__tests/v7Fsm.test.js +42 -0
  565. package/out/src/storage/schema/__tests/v7Fsm.test.js.map +1 -0
  566. package/out/src/storage/schema/__tests/v7Spendability.test.d.ts +2 -0
  567. package/out/src/storage/schema/__tests/v7Spendability.test.d.ts.map +1 -0
  568. package/out/src/storage/schema/__tests/v7Spendability.test.js +29 -0
  569. package/out/src/storage/schema/__tests/v7Spendability.test.js.map +1 -0
  570. package/out/src/storage/schema/entities/EntityBase.d.ts.map +1 -1
  571. package/out/src/storage/schema/entities/EntityBase.js.map +1 -1
  572. package/out/src/storage/schema/entities/EntityCertificate.d.ts.map +1 -1
  573. package/out/src/storage/schema/entities/EntityCertificate.js +5 -4
  574. package/out/src/storage/schema/entities/EntityCertificate.js.map +1 -1
  575. package/out/src/storage/schema/entities/EntityCertificateField.d.ts.map +1 -1
  576. package/out/src/storage/schema/entities/EntityCertificateField.js +5 -7
  577. package/out/src/storage/schema/entities/EntityCertificateField.js.map +1 -1
  578. package/out/src/storage/schema/entities/EntityCommission.d.ts.map +1 -1
  579. package/out/src/storage/schema/entities/EntityCommission.js +6 -8
  580. package/out/src/storage/schema/entities/EntityCommission.js.map +1 -1
  581. package/out/src/storage/schema/entities/EntityOutput.d.ts.map +1 -1
  582. package/out/src/storage/schema/entities/EntityOutput.js +21 -24
  583. package/out/src/storage/schema/entities/EntityOutput.js.map +1 -1
  584. package/out/src/storage/schema/entities/EntityOutputBasket.d.ts.map +1 -1
  585. package/out/src/storage/schema/entities/EntityOutputBasket.js +6 -6
  586. package/out/src/storage/schema/entities/EntityOutputBasket.js.map +1 -1
  587. package/out/src/storage/schema/entities/EntityOutputTag.d.ts.map +1 -1
  588. package/out/src/storage/schema/entities/EntityOutputTag.js +2 -2
  589. package/out/src/storage/schema/entities/EntityOutputTag.js.map +1 -1
  590. package/out/src/storage/schema/entities/EntityOutputTagMap.d.ts.map +1 -1
  591. package/out/src/storage/schema/entities/EntityOutputTagMap.js +4 -6
  592. package/out/src/storage/schema/entities/EntityOutputTagMap.js.map +1 -1
  593. package/out/src/storage/schema/entities/EntityProvenTx.d.ts +3 -3
  594. package/out/src/storage/schema/entities/EntityProvenTx.d.ts.map +1 -1
  595. package/out/src/storage/schema/entities/EntityProvenTx.js +22 -23
  596. package/out/src/storage/schema/entities/EntityProvenTx.js.map +1 -1
  597. package/out/src/storage/schema/entities/EntityProvenTxReq.d.ts +9 -0
  598. package/out/src/storage/schema/entities/EntityProvenTxReq.d.ts.map +1 -1
  599. package/out/src/storage/schema/entities/EntityProvenTxReq.js +116 -68
  600. package/out/src/storage/schema/entities/EntityProvenTxReq.js.map +1 -1
  601. package/out/src/storage/schema/entities/EntitySyncState.d.ts.map +1 -1
  602. package/out/src/storage/schema/entities/EntitySyncState.js +19 -18
  603. package/out/src/storage/schema/entities/EntitySyncState.js.map +1 -1
  604. package/out/src/storage/schema/entities/EntityTransaction.d.ts.map +1 -1
  605. package/out/src/storage/schema/entities/EntityTransaction.js +25 -26
  606. package/out/src/storage/schema/entities/EntityTransaction.js.map +1 -1
  607. package/out/src/storage/schema/entities/EntityTxLabel.d.ts.map +1 -1
  608. package/out/src/storage/schema/entities/EntityTxLabel.js +2 -2
  609. package/out/src/storage/schema/entities/EntityTxLabel.js.map +1 -1
  610. package/out/src/storage/schema/entities/EntityTxLabelMap.d.ts.map +1 -1
  611. package/out/src/storage/schema/entities/EntityTxLabelMap.js +4 -6
  612. package/out/src/storage/schema/entities/EntityTxLabelMap.js.map +1 -1
  613. package/out/src/storage/schema/entities/EntityUser.d.ts.map +1 -1
  614. package/out/src/storage/schema/entities/EntityUser.js +3 -3
  615. package/out/src/storage/schema/entities/EntityUser.js.map +1 -1
  616. package/out/src/storage/schema/entities/MergeEntity.d.ts.map +1 -1
  617. package/out/src/storage/schema/entities/MergeEntity.js +6 -6
  618. package/out/src/storage/schema/entities/MergeEntity.js.map +1 -1
  619. package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.js +1 -1
  620. package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.js.map +1 -1
  621. package/out/src/storage/schema/entities/__tests/CertificateTests.test.js.map +1 -1
  622. package/out/src/storage/schema/entities/__tests/CommissionTests.test.js.map +1 -1
  623. package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.js +3 -3
  624. package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.js.map +1 -1
  625. package/out/src/storage/schema/entities/__tests/OutputTests.test.js +1 -1
  626. package/out/src/storage/schema/entities/__tests/OutputTests.test.js.map +1 -1
  627. package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.js +32 -0
  628. package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.js.map +1 -1
  629. package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js +6 -6
  630. package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js.map +1 -1
  631. package/out/src/storage/schema/entities/__tests/TransactionTests.test.js +3 -3
  632. package/out/src/storage/schema/entities/__tests/TransactionTests.test.js.map +1 -1
  633. package/out/src/storage/schema/entities/__tests/stampLogTests.test.js +3 -3
  634. package/out/src/storage/schema/entities/__tests/usersTests.test.js +1 -1
  635. package/out/src/storage/schema/entities/__tests/usersTests.test.js.map +1 -1
  636. package/out/src/storage/schema/tables/TableAction.d.ts +38 -0
  637. package/out/src/storage/schema/tables/TableAction.d.ts.map +1 -0
  638. package/out/src/storage/schema/tables/TableAction.js +3 -0
  639. package/out/src/storage/schema/tables/TableAction.js.map +1 -0
  640. package/out/src/storage/schema/tables/TableCertificate.d.ts +2 -1
  641. package/out/src/storage/schema/tables/TableCertificate.d.ts.map +1 -1
  642. package/out/src/storage/schema/tables/TableCertificateField.d.ts +1 -1
  643. package/out/src/storage/schema/tables/TableCertificateField.d.ts.map +1 -1
  644. package/out/src/storage/schema/tables/TableChainTip.d.ts +17 -0
  645. package/out/src/storage/schema/tables/TableChainTip.d.ts.map +1 -0
  646. package/out/src/storage/schema/tables/TableChainTip.js +3 -0
  647. package/out/src/storage/schema/tables/TableChainTip.js.map +1 -0
  648. package/out/src/storage/schema/tables/TableCommission.d.ts +1 -1
  649. package/out/src/storage/schema/tables/TableCommission.d.ts.map +1 -1
  650. package/out/src/storage/schema/tables/TableMonitorEvent.d.ts +1 -1
  651. package/out/src/storage/schema/tables/TableMonitorEvent.d.ts.map +1 -1
  652. package/out/src/storage/schema/tables/TableMonitorLease.d.ts +23 -0
  653. package/out/src/storage/schema/tables/TableMonitorLease.d.ts.map +1 -0
  654. package/out/src/storage/schema/tables/TableMonitorLease.js +3 -0
  655. package/out/src/storage/schema/tables/TableMonitorLease.js.map +1 -0
  656. package/out/src/storage/schema/tables/TableOutput.d.ts +3 -2
  657. package/out/src/storage/schema/tables/TableOutput.d.ts.map +1 -1
  658. package/out/src/storage/schema/tables/TableOutput.js +1 -1
  659. package/out/src/storage/schema/tables/TableOutput.js.map +1 -1
  660. package/out/src/storage/schema/tables/TableOutputBasket.d.ts +1 -1
  661. package/out/src/storage/schema/tables/TableOutputBasket.d.ts.map +1 -1
  662. package/out/src/storage/schema/tables/TableOutputTag.d.ts +1 -1
  663. package/out/src/storage/schema/tables/TableOutputTag.d.ts.map +1 -1
  664. package/out/src/storage/schema/tables/TableOutputTagMap.d.ts +1 -1
  665. package/out/src/storage/schema/tables/TableOutputTagMap.d.ts.map +1 -1
  666. package/out/src/storage/schema/tables/TableProvenTx.d.ts +1 -1
  667. package/out/src/storage/schema/tables/TableProvenTx.d.ts.map +1 -1
  668. package/out/src/storage/schema/tables/TableProvenTxReq.d.ts +24 -1
  669. package/out/src/storage/schema/tables/TableProvenTxReq.d.ts.map +1 -1
  670. package/out/src/storage/schema/tables/TableSettings.d.ts +1 -1
  671. package/out/src/storage/schema/tables/TableSettings.d.ts.map +1 -1
  672. package/out/src/storage/schema/tables/TableSyncState.d.ts +1 -1
  673. package/out/src/storage/schema/tables/TableSyncState.d.ts.map +1 -1
  674. package/out/src/storage/schema/tables/TableTransaction.d.ts +1 -1
  675. package/out/src/storage/schema/tables/TableTransaction.d.ts.map +1 -1
  676. package/out/src/storage/schema/tables/TableTransactionV7.d.ts +50 -0
  677. package/out/src/storage/schema/tables/TableTransactionV7.d.ts.map +1 -0
  678. package/out/src/storage/schema/tables/TableTransactionV7.js +3 -0
  679. package/out/src/storage/schema/tables/TableTransactionV7.js.map +1 -0
  680. package/out/src/storage/schema/tables/TableTxAudit.d.ts +26 -0
  681. package/out/src/storage/schema/tables/TableTxAudit.d.ts.map +1 -0
  682. package/out/src/storage/schema/tables/TableTxAudit.js +3 -0
  683. package/out/src/storage/schema/tables/TableTxAudit.js.map +1 -0
  684. package/out/src/storage/schema/tables/TableTxLabel.d.ts +1 -1
  685. package/out/src/storage/schema/tables/TableTxLabel.d.ts.map +1 -1
  686. package/out/src/storage/schema/tables/TableTxLabelMap.d.ts +1 -1
  687. package/out/src/storage/schema/tables/TableTxLabelMap.d.ts.map +1 -1
  688. package/out/src/storage/schema/tables/TableUser.d.ts +1 -1
  689. package/out/src/storage/schema/tables/TableUser.d.ts.map +1 -1
  690. package/out/src/storage/schema/v7Backfill.d.ts +35 -0
  691. package/out/src/storage/schema/v7Backfill.d.ts.map +1 -0
  692. package/out/src/storage/schema/v7Backfill.idb.d.ts +32 -0
  693. package/out/src/storage/schema/v7Backfill.idb.d.ts.map +1 -0
  694. package/out/src/storage/schema/v7Backfill.idb.js +95 -0
  695. package/out/src/storage/schema/v7Backfill.idb.js.map +1 -0
  696. package/out/src/storage/schema/v7Backfill.js +147 -0
  697. package/out/src/storage/schema/v7Backfill.js.map +1 -0
  698. package/out/src/storage/schema/v7Backfill.knex.d.ts +32 -0
  699. package/out/src/storage/schema/v7Backfill.knex.d.ts.map +1 -0
  700. package/out/src/storage/schema/v7Backfill.knex.js +240 -0
  701. package/out/src/storage/schema/v7Backfill.knex.js.map +1 -0
  702. package/out/src/storage/schema/v7Backfill.runner.d.ts +63 -0
  703. package/out/src/storage/schema/v7Backfill.runner.d.ts.map +1 -0
  704. package/out/src/storage/schema/v7Backfill.runner.js +62 -0
  705. package/out/src/storage/schema/v7Backfill.runner.js.map +1 -0
  706. package/out/src/storage/schema/v7Crud.d.ts +39 -0
  707. package/out/src/storage/schema/v7Crud.d.ts.map +1 -0
  708. package/out/src/storage/schema/v7Crud.js +203 -0
  709. package/out/src/storage/schema/v7Crud.js.map +1 -0
  710. package/out/src/storage/schema/v7Fsm.d.ts +27 -0
  711. package/out/src/storage/schema/v7Fsm.d.ts.map +1 -0
  712. package/out/src/storage/schema/v7Fsm.js +108 -0
  713. package/out/src/storage/schema/v7Fsm.js.map +1 -0
  714. package/out/src/storage/schema/v7MonitorLease.d.ts +57 -0
  715. package/out/src/storage/schema/v7MonitorLease.d.ts.map +1 -0
  716. package/out/src/storage/schema/v7MonitorLease.js +101 -0
  717. package/out/src/storage/schema/v7MonitorLease.js.map +1 -0
  718. package/out/src/storage/schema/v7Spendability.d.ts +45 -0
  719. package/out/src/storage/schema/v7Spendability.d.ts.map +1 -0
  720. package/out/src/storage/schema/v7Spendability.js +52 -0
  721. package/out/src/storage/schema/v7Spendability.js.map +1 -0
  722. package/out/src/storage/schema/v7TxAudit.d.ts +33 -0
  723. package/out/src/storage/schema/v7TxAudit.d.ts.map +1 -0
  724. package/out/src/storage/schema/v7TxAudit.js +64 -0
  725. package/out/src/storage/schema/v7TxAudit.js.map +1 -0
  726. package/out/src/storage/storageProviderHelpers.d.ts +34 -0
  727. package/out/src/storage/storageProviderHelpers.d.ts.map +1 -0
  728. package/out/src/storage/storageProviderHelpers.js +100 -0
  729. package/out/src/storage/storageProviderHelpers.js.map +1 -0
  730. package/out/src/storage/sync/StorageMySQLDojoReader.d.ts +1 -2
  731. package/out/src/storage/sync/StorageMySQLDojoReader.d.ts.map +1 -1
  732. package/out/src/storage/sync/StorageMySQLDojoReader.js +37 -32
  733. package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -1
  734. package/out/src/utility/Format.d.ts.map +1 -1
  735. package/out/src/utility/Format.js +11 -9
  736. package/out/src/utility/Format.js.map +1 -1
  737. package/out/src/utility/ScriptTemplateBRC29.d.ts.map +1 -1
  738. package/out/src/utility/ScriptTemplateBRC29.js +2 -1
  739. package/out/src/utility/ScriptTemplateBRC29.js.map +1 -1
  740. package/out/src/utility/aggregateResults.d.ts +1 -1
  741. package/out/src/utility/aggregateResults.d.ts.map +1 -1
  742. package/out/src/utility/aggregateResults.js +2 -2
  743. package/out/src/utility/aggregateResults.js.map +1 -1
  744. package/out/src/utility/brc114ActionTimeLabels.d.ts +2 -2
  745. package/out/src/utility/brc114ActionTimeLabels.d.ts.map +1 -1
  746. package/out/src/utility/brc114ActionTimeLabels.js +16 -9
  747. package/out/src/utility/brc114ActionTimeLabels.js.map +1 -1
  748. package/out/src/utility/identityUtils.js +1 -1
  749. package/out/src/utility/identityUtils.js.map +1 -1
  750. package/out/src/utility/parseTxScriptOffsets.d.ts +4 -4
  751. package/out/src/utility/parseTxScriptOffsets.d.ts.map +1 -1
  752. package/out/src/utility/parseTxScriptOffsets.js.map +1 -1
  753. package/out/src/utility/stampLog.d.ts.map +1 -1
  754. package/out/src/utility/stampLog.js +7 -5
  755. package/out/src/utility/stampLog.js.map +1 -1
  756. package/out/src/utility/tscProofToMerklePath.d.ts.map +1 -1
  757. package/out/src/utility/tscProofToMerklePath.js +1 -1
  758. package/out/src/utility/tscProofToMerklePath.js.map +1 -1
  759. package/out/src/utility/utilityHelpers.buffer.d.ts +5 -3
  760. package/out/src/utility/utilityHelpers.buffer.d.ts.map +1 -1
  761. package/out/src/utility/utilityHelpers.buffer.js.map +1 -1
  762. package/out/src/utility/utilityHelpers.d.ts +1 -2
  763. package/out/src/utility/utilityHelpers.d.ts.map +1 -1
  764. package/out/src/utility/utilityHelpers.js +10 -10
  765. package/out/src/utility/utilityHelpers.js.map +1 -1
  766. package/out/src/utility/utilityHelpers.noBuffer.d.ts +7 -3
  767. package/out/src/utility/utilityHelpers.noBuffer.d.ts.map +1 -1
  768. package/out/src/utility/utilityHelpers.noBuffer.js +3 -3
  769. package/out/src/utility/utilityHelpers.noBuffer.js.map +1 -1
  770. package/out/src/wab-client/WABClient.d.ts +1 -1
  771. package/out/src/wab-client/WABClient.d.ts.map +1 -1
  772. package/out/src/wab-client/WABClient.js +12 -12
  773. package/out/src/wab-client/WABClient.js.map +1 -1
  774. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts.map +1 -1
  775. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js +3 -3
  776. package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js.map +1 -1
  777. package/package.json +24 -20
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.V7IdbBackfillDriver = void 0;
4
+ exports.runV7IdbBackfill = runV7IdbBackfill;
5
+ const v7Backfill_runner_1 = require("./v7Backfill.runner");
6
+ const BACKFILL_STORES = [
7
+ 'proven_tx_reqs',
8
+ 'proven_txs',
9
+ 'transactions',
10
+ 'transactions_v7',
11
+ 'actions',
12
+ 'tx_labels_map'
13
+ ];
14
+ /**
15
+ * IndexedDB driver for the V7 backfill.
16
+ *
17
+ * The orchestrator is driven entirely from this driver inside a single
18
+ * `readwrite` transaction across the legacy + V7 stores. The streams cache
19
+ * the keys up-front (`getAllKeys`) and then walk them one at a time so the
20
+ * idb cursor lifetime does not span an external `await`.
21
+ */
22
+ class V7IdbBackfillDriver {
23
+ constructor(trx) {
24
+ this.trx = trx;
25
+ }
26
+ async *streamLegacyReqs() {
27
+ const reqStore = this.trx.objectStore('proven_tx_reqs');
28
+ const provenStore = this.trx.objectStore('proven_txs');
29
+ const reqKeys = await reqStore.getAllKeys();
30
+ for (const key of reqKeys) {
31
+ const req = await reqStore.get(key);
32
+ let proven;
33
+ if (req.provenTxId != null)
34
+ proven = await provenStore.get(req.provenTxId);
35
+ yield { req, proven };
36
+ }
37
+ }
38
+ async *streamLegacyTransactions() {
39
+ const store = this.trx.objectStore('transactions');
40
+ const keys = await store.getAllKeys();
41
+ for (const key of keys) {
42
+ const row = await store.get(key);
43
+ yield row;
44
+ }
45
+ }
46
+ async upsertTransactionV7(row) {
47
+ const store = this.trx.objectStore('transactions_v7');
48
+ const txidIndex = store.index('txid');
49
+ const existing = await txidIndex.get(row.txid);
50
+ if (existing != null) {
51
+ const merged = { ...existing, ...row, transactionId: existing.transactionId };
52
+ await store.put(merged);
53
+ return existing.transactionId;
54
+ }
55
+ const newId = await store.add(row);
56
+ return newId;
57
+ }
58
+ async upsertAction(row) {
59
+ const store = this.trx.objectStore('actions');
60
+ const idx = store.index('userId_transactionId');
61
+ const existing = await idx.get([row.userId, row.transactionId]);
62
+ if (existing != null) {
63
+ const merged = { ...existing, ...row, actionId: existing.actionId };
64
+ await store.put(merged);
65
+ return existing.actionId;
66
+ }
67
+ const newId = await store.add(row);
68
+ return newId;
69
+ }
70
+ async repointTxLabelMap(legacyTransactionId, actionId) {
71
+ if (legacyTransactionId === actionId)
72
+ return;
73
+ const store = this.trx.objectStore('tx_labels_map');
74
+ const idx = store.index('transactionId');
75
+ const matches = await idx.getAll(legacyTransactionId);
76
+ for (const m of matches) {
77
+ const updated = { ...m, transactionId: actionId };
78
+ await store.delete([m.txLabelId, legacyTransactionId]);
79
+ await store.add(updated);
80
+ }
81
+ }
82
+ }
83
+ exports.V7IdbBackfillDriver = V7IdbBackfillDriver;
84
+ /**
85
+ * Convenience entry point that opens the required readwrite transaction and
86
+ * runs the orchestrator against it.
87
+ */
88
+ async function runV7IdbBackfill(db, now = new Date()) {
89
+ const trx = db.transaction(BACKFILL_STORES, 'readwrite');
90
+ const driver = new V7IdbBackfillDriver(trx);
91
+ const stats = await (0, v7Backfill_runner_1.runV7Backfill)(driver, now);
92
+ await trx.done;
93
+ return stats;
94
+ }
95
+ //# sourceMappingURL=v7Backfill.idb.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v7Backfill.idb.js","sourceRoot":"","sources":["../../../../src/storage/schema/v7Backfill.idb.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,147 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.buildTransactionV7Row = buildTransactionV7Row;
37
+ exports.buildTransactionV7RowFromLegacyTx = buildTransactionV7RowFromLegacyTx;
38
+ exports.buildActionRow = buildActionRow;
39
+ const sdk = __importStar(require("../../sdk"));
40
+ /**
41
+ * Pure transformation helpers for the V7 schema backfill.
42
+ *
43
+ * These functions are deliberately storage-agnostic — they accept the legacy
44
+ * rows and return the new shapes. A storage driver (Knex or IDB) is responsible
45
+ * for reading the source rows and inserting the returned objects.
46
+ *
47
+ * No row in this module ever talks to the database; this keeps the
48
+ * transformation under unit-test control and lets us run dry-run migrations.
49
+ */
50
+ /**
51
+ * Merge a legacy `proven_tx_reqs` row together with an optional `proven_txs`
52
+ * row into a single V7 `transactions` (transactions_v7) row.
53
+ *
54
+ * The proof fields come from `proven_txs` when present; otherwise they are
55
+ * left undefined. Processing state is derived from the request's legacy status.
56
+ */
57
+ function buildTransactionV7Row(req, proven, now = new Date()) {
58
+ var _a, _b, _c;
59
+ const processing = sdk.provenTxReqStatusToProcessing(req.status);
60
+ return {
61
+ created_at: req.created_at,
62
+ updated_at: now,
63
+ txid: req.txid,
64
+ processing,
65
+ processingChangedAt: (_a = req.updated_at) !== null && _a !== void 0 ? _a : now,
66
+ nextActionAt: undefined,
67
+ attempts: (_b = req.attempts) !== null && _b !== void 0 ? _b : 0,
68
+ rebroadcastCycles: (_c = req.rebroadcastAttempts) !== null && _c !== void 0 ? _c : 0,
69
+ wasBroadcast: req.wasBroadcast === true,
70
+ idempotencyKey: undefined,
71
+ batch: req.batch,
72
+ rawTx: req.rawTx,
73
+ inputBeef: req.inputBEEF,
74
+ height: proven === null || proven === void 0 ? void 0 : proven.height,
75
+ merkleIndex: proven === null || proven === void 0 ? void 0 : proven.index,
76
+ merklePath: proven === null || proven === void 0 ? void 0 : proven.merklePath,
77
+ merkleRoot: proven === null || proven === void 0 ? void 0 : proven.merkleRoot,
78
+ blockHash: proven === null || proven === void 0 ? void 0 : proven.blockHash,
79
+ isCoinbase: false,
80
+ lastProvider: undefined,
81
+ lastProviderStatus: undefined,
82
+ frozenReason: undefined,
83
+ rowVersion: 0
84
+ };
85
+ }
86
+ /**
87
+ * Build a V7 `transactions` row from a legacy per-user `transactions` row when
88
+ * no `proven_tx_reqs` entry exists (e.g. locally-created actions that never
89
+ * reached the broadcast queue).
90
+ *
91
+ * Returns `undefined` when the legacy row has no txid — such rows belong to
92
+ * incomplete actions and have no canonical V7 representation yet.
93
+ */
94
+ function buildTransactionV7RowFromLegacyTx(tx, now = new Date()) {
95
+ var _a;
96
+ if (tx.txid == null)
97
+ return undefined;
98
+ return {
99
+ created_at: tx.created_at,
100
+ updated_at: now,
101
+ txid: tx.txid,
102
+ processing: sdk.transactionStatusToProcessing(tx.status),
103
+ processingChangedAt: (_a = tx.updated_at) !== null && _a !== void 0 ? _a : now,
104
+ nextActionAt: undefined,
105
+ attempts: 0,
106
+ rebroadcastCycles: 0,
107
+ wasBroadcast: false,
108
+ idempotencyKey: undefined,
109
+ batch: undefined,
110
+ rawTx: tx.rawTx,
111
+ inputBeef: tx.inputBEEF,
112
+ height: undefined,
113
+ merkleIndex: undefined,
114
+ merklePath: undefined,
115
+ merkleRoot: undefined,
116
+ blockHash: undefined,
117
+ isCoinbase: false,
118
+ lastProvider: undefined,
119
+ lastProviderStatus: undefined,
120
+ frozenReason: undefined,
121
+ rowVersion: 0
122
+ };
123
+ }
124
+ /**
125
+ * Build a V7 `actions` row from a legacy per-user `transactions` row.
126
+ * The caller is responsible for resolving `transactionId` to the
127
+ * newly-inserted `transactions_v7.transactionId`.
128
+ */
129
+ function buildActionRow(legacy, v7TransactionId, now = new Date()) {
130
+ var _a;
131
+ return {
132
+ created_at: legacy.created_at,
133
+ updated_at: now,
134
+ userId: legacy.userId,
135
+ transactionId: v7TransactionId,
136
+ reference: legacy.reference,
137
+ description: legacy.description,
138
+ isOutgoing: legacy.isOutgoing,
139
+ satoshisDelta: (_a = legacy.satoshis) !== null && _a !== void 0 ? _a : 0,
140
+ userNosend: legacy.status === 'nosend',
141
+ hidden: false,
142
+ userAborted: legacy.status === 'failed',
143
+ notifyJson: undefined,
144
+ rowVersion: 0
145
+ };
146
+ }
147
+ //# sourceMappingURL=v7Backfill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v7Backfill.js","sourceRoot":"","sources":["../../../../src/storage/schema/v7Backfill.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { Knex } from 'knex';
2
+ import { TableAction, TableProvenTx, TableProvenTxReq, TableTransaction, TableTransactionV7 } from './tables';
3
+ import { V7BackfillDriver, V7BackfillStats } from './v7Backfill.runner';
4
+ /**
5
+ * Knex driver for the V7 backfill.
6
+ *
7
+ * Reads from the legacy `proven_tx_reqs`, `proven_txs`, and `transactions`
8
+ * tables, writes into the new `transactions_v7` and `actions` tables, and
9
+ * re-points `tx_labels_map` rows to the new `actionId`.
10
+ *
11
+ * All work is performed against the `knex` (or transaction) handle passed in.
12
+ * The caller is responsible for opening a transaction around the orchestrator
13
+ * call when atomicity is desired.
14
+ */
15
+ export declare class V7KnexBackfillDriver implements V7BackfillDriver {
16
+ private readonly knex;
17
+ constructor(knex: Knex);
18
+ streamLegacyReqs(): AsyncIterable<{
19
+ req: TableProvenTxReq;
20
+ proven?: TableProvenTx;
21
+ }>;
22
+ streamLegacyTransactions(): AsyncIterable<TableTransaction>;
23
+ upsertTransactionV7(row: Omit<TableTransactionV7, 'transactionId'>): Promise<number>;
24
+ upsertAction(row: Omit<TableAction, 'actionId'>): Promise<number>;
25
+ repointTxLabelMap(legacyTransactionId: number, actionId: number): Promise<void>;
26
+ }
27
+ /**
28
+ * Convenience entry point. Opens a Knex transaction and runs the orchestrator
29
+ * inside it so that the entire backfill either succeeds or rolls back.
30
+ */
31
+ export declare function runV7KnexBackfill(knex: Knex, now?: Date): Promise<V7BackfillStats>;
32
+ //# sourceMappingURL=v7Backfill.knex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v7Backfill.knex.d.ts","sourceRoot":"","sources":["../../../../src/storage/schema/v7Backfill.knex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EACL,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,UAAU,CAAA;AACjB,OAAO,EAAiB,gBAAgB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAItF;;;;;;;;;;GAUG;AACH,qBAAa,oBAAqB,YAAW,gBAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,IAAI;IAEhC,gBAAgB,IAAK,aAAa,CAAC;QAAE,GAAG,EAAE,gBAAgB,CAAC;QAAC,MAAM,CAAC,EAAE,aAAa,CAAA;KAAE,CAAC;IA6DrF,wBAAwB,IAAK,aAAa,CAAC,gBAAgB,CAAC;IAiC9D,mBAAmB,CAAE,GAAG,EAAE,IAAI,CAAC,kBAAkB,EAAE,eAAe,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAuDrF,YAAY,CAAE,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IA0ClE,iBAAiB,CAAE,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAMvF;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAE,IAAI,EAAE,IAAI,EAAE,GAAG,GAAE,IAAiB,GAAG,OAAO,CAAC,eAAe,CAAC,CAKrG"}
@@ -0,0 +1,240 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.V7KnexBackfillDriver = void 0;
4
+ exports.runV7KnexBackfill = runV7KnexBackfill;
5
+ const v7Backfill_runner_1 = require("./v7Backfill.runner");
6
+ const STREAM_BATCH = 500;
7
+ /**
8
+ * Knex driver for the V7 backfill.
9
+ *
10
+ * Reads from the legacy `proven_tx_reqs`, `proven_txs`, and `transactions`
11
+ * tables, writes into the new `transactions_v7` and `actions` tables, and
12
+ * re-points `tx_labels_map` rows to the new `actionId`.
13
+ *
14
+ * All work is performed against the `knex` (or transaction) handle passed in.
15
+ * The caller is responsible for opening a transaction around the orchestrator
16
+ * call when atomicity is desired.
17
+ */
18
+ class V7KnexBackfillDriver {
19
+ constructor(knex) {
20
+ this.knex = knex;
21
+ }
22
+ async *streamLegacyReqs() {
23
+ var _a, _b, _c;
24
+ let lastId = 0;
25
+ /* eslint-disable-next-line no-constant-condition */
26
+ while (true) {
27
+ const rows = await this.knex('proven_tx_reqs as r')
28
+ .leftJoin('proven_txs as p', 'r.provenTxId', 'p.provenTxId')
29
+ .select('r.*', this.knex.ref('p.height').as('p_height'), this.knex.ref('p.index').as('p_index'), this.knex.ref('p.merklePath').as('p_merklePath'), this.knex.ref('p.blockHash').as('p_blockHash'), this.knex.ref('p.merkleRoot').as('p_merkleRoot'), this.knex.ref('p.rawTx').as('p_rawTx'), this.knex.ref('p.created_at').as('p_created_at'), this.knex.ref('p.updated_at').as('p_updated_at'), this.knex.ref('p.txid').as('p_txid'))
30
+ .where('r.provenTxReqId', '>', lastId)
31
+ .orderBy('r.provenTxReqId')
32
+ .limit(STREAM_BATCH);
33
+ if (rows.length === 0)
34
+ return;
35
+ for (const row of rows) {
36
+ lastId = row.provenTxReqId;
37
+ const req = {
38
+ created_at: row.created_at,
39
+ updated_at: row.updated_at,
40
+ provenTxReqId: row.provenTxReqId,
41
+ provenTxId: row.provenTxId,
42
+ status: row.status,
43
+ attempts: row.attempts,
44
+ notified: row.notified,
45
+ txid: row.txid,
46
+ batch: row.batch,
47
+ history: row.history,
48
+ notify: row.notify,
49
+ rawTx: (_a = toBytes(row.rawTx)) !== null && _a !== void 0 ? _a : [],
50
+ inputBEEF: toBytes(row.inputBEEF),
51
+ wasBroadcast: row.wasBroadcast,
52
+ rebroadcastAttempts: row.rebroadcastAttempts
53
+ };
54
+ let proven;
55
+ if (row.p_txid != null) {
56
+ proven = {
57
+ created_at: row.p_created_at,
58
+ updated_at: row.p_updated_at,
59
+ provenTxId: row.provenTxId,
60
+ txid: row.p_txid,
61
+ height: row.p_height,
62
+ index: row.p_index,
63
+ merklePath: (_b = toBytes(row.p_merklePath)) !== null && _b !== void 0 ? _b : [],
64
+ rawTx: (_c = toBytes(row.p_rawTx)) !== null && _c !== void 0 ? _c : [],
65
+ blockHash: row.p_blockHash,
66
+ merkleRoot: row.p_merkleRoot
67
+ };
68
+ }
69
+ yield { req, proven };
70
+ }
71
+ }
72
+ }
73
+ async *streamLegacyTransactions() {
74
+ let lastId = 0;
75
+ /* eslint-disable-next-line no-constant-condition */
76
+ while (true) {
77
+ const rows = await this.knex('transactions')
78
+ .where('transactionId', '>', lastId)
79
+ .orderBy('transactionId')
80
+ .limit(STREAM_BATCH)
81
+ .select('*');
82
+ if (rows.length === 0)
83
+ return;
84
+ for (const row of rows) {
85
+ lastId = row.transactionId;
86
+ yield {
87
+ created_at: row.created_at,
88
+ updated_at: row.updated_at,
89
+ transactionId: row.transactionId,
90
+ userId: row.userId,
91
+ provenTxId: row.provenTxId,
92
+ status: row.status,
93
+ reference: row.reference,
94
+ isOutgoing: !!row.isOutgoing,
95
+ satoshis: row.satoshis,
96
+ description: row.description,
97
+ version: row.version,
98
+ lockTime: row.lockTime,
99
+ txid: row.txid,
100
+ inputBEEF: toBytes(row.inputBEEF),
101
+ rawTx: toBytes(row.rawTx)
102
+ };
103
+ }
104
+ }
105
+ }
106
+ async upsertTransactionV7(row) {
107
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
108
+ const existing = await this.knex('transactions_v7').where({ txid: row.txid }).first('transactionId');
109
+ if (existing != null) {
110
+ await this.knex('transactions_v7')
111
+ .where({ transactionId: existing.transactionId })
112
+ .update({
113
+ processing: row.processing,
114
+ processing_changed_at: row.processingChangedAt,
115
+ next_action_at: (_a = row.nextActionAt) !== null && _a !== void 0 ? _a : null,
116
+ attempts: row.attempts,
117
+ rebroadcast_cycles: row.rebroadcastCycles,
118
+ was_broadcast: row.wasBroadcast,
119
+ batch: (_b = row.batch) !== null && _b !== void 0 ? _b : null,
120
+ raw_tx: toBuf(row.rawTx),
121
+ input_beef: toBuf(row.inputBeef),
122
+ height: (_c = row.height) !== null && _c !== void 0 ? _c : null,
123
+ merkle_index: (_d = row.merkleIndex) !== null && _d !== void 0 ? _d : null,
124
+ merkle_path: toBuf(row.merklePath),
125
+ merkle_root: (_e = row.merkleRoot) !== null && _e !== void 0 ? _e : null,
126
+ block_hash: (_f = row.blockHash) !== null && _f !== void 0 ? _f : null,
127
+ is_coinbase: row.isCoinbase,
128
+ updated_at: row.updated_at
129
+ });
130
+ return existing.transactionId;
131
+ }
132
+ const [insertedId] = await this.knex('transactions_v7').insert({
133
+ txid: row.txid,
134
+ processing: row.processing,
135
+ processing_changed_at: row.processingChangedAt,
136
+ next_action_at: (_g = row.nextActionAt) !== null && _g !== void 0 ? _g : null,
137
+ attempts: row.attempts,
138
+ rebroadcast_cycles: row.rebroadcastCycles,
139
+ was_broadcast: row.wasBroadcast,
140
+ idempotency_key: (_h = row.idempotencyKey) !== null && _h !== void 0 ? _h : null,
141
+ batch: (_j = row.batch) !== null && _j !== void 0 ? _j : null,
142
+ raw_tx: toBuf(row.rawTx),
143
+ input_beef: toBuf(row.inputBeef),
144
+ height: (_k = row.height) !== null && _k !== void 0 ? _k : null,
145
+ merkle_index: (_l = row.merkleIndex) !== null && _l !== void 0 ? _l : null,
146
+ merkle_path: toBuf(row.merklePath),
147
+ merkle_root: (_m = row.merkleRoot) !== null && _m !== void 0 ? _m : null,
148
+ block_hash: (_o = row.blockHash) !== null && _o !== void 0 ? _o : null,
149
+ is_coinbase: row.isCoinbase,
150
+ last_provider: (_p = row.lastProvider) !== null && _p !== void 0 ? _p : null,
151
+ last_provider_status: (_q = row.lastProviderStatus) !== null && _q !== void 0 ? _q : null,
152
+ frozen_reason: (_r = row.frozenReason) !== null && _r !== void 0 ? _r : null,
153
+ row_version: row.rowVersion,
154
+ created_at: row.created_at,
155
+ updated_at: row.updated_at
156
+ });
157
+ if (typeof insertedId === 'number' && insertedId > 0)
158
+ return insertedId;
159
+ const row2 = await this.knex('transactions_v7').where({ txid: row.txid }).first('transactionId');
160
+ return row2.transactionId;
161
+ }
162
+ async upsertAction(row) {
163
+ var _a, _b;
164
+ const existing = await this.knex('actions')
165
+ .where({ userId: row.userId, transactionId: row.transactionId })
166
+ .first('actionId');
167
+ if (existing != null) {
168
+ await this.knex('actions')
169
+ .where({ actionId: existing.actionId })
170
+ .update({
171
+ reference: row.reference,
172
+ description: row.description,
173
+ isOutgoing: row.isOutgoing,
174
+ satoshis_delta: row.satoshisDelta,
175
+ user_nosend: row.userNosend,
176
+ hidden: row.hidden,
177
+ user_aborted: row.userAborted,
178
+ notify_json: (_a = row.notifyJson) !== null && _a !== void 0 ? _a : null,
179
+ updated_at: row.updated_at
180
+ });
181
+ return existing.actionId;
182
+ }
183
+ const [insertedId] = await this.knex('actions').insert({
184
+ userId: row.userId,
185
+ transactionId: row.transactionId,
186
+ reference: row.reference,
187
+ description: row.description,
188
+ isOutgoing: row.isOutgoing,
189
+ satoshis_delta: row.satoshisDelta,
190
+ user_nosend: row.userNosend,
191
+ hidden: row.hidden,
192
+ user_aborted: row.userAborted,
193
+ notify_json: (_b = row.notifyJson) !== null && _b !== void 0 ? _b : null,
194
+ row_version: row.rowVersion,
195
+ created_at: row.created_at,
196
+ updated_at: row.updated_at
197
+ });
198
+ if (typeof insertedId === 'number' && insertedId > 0)
199
+ return insertedId;
200
+ const row2 = await this.knex('actions')
201
+ .where({ userId: row.userId, transactionId: row.transactionId })
202
+ .first('actionId');
203
+ return row2.actionId;
204
+ }
205
+ async repointTxLabelMap(legacyTransactionId, actionId) {
206
+ if (legacyTransactionId === actionId)
207
+ return;
208
+ await this.knex('tx_labels_map')
209
+ .where({ transactionId: legacyTransactionId })
210
+ .update({ transactionId: actionId });
211
+ }
212
+ }
213
+ exports.V7KnexBackfillDriver = V7KnexBackfillDriver;
214
+ /**
215
+ * Convenience entry point. Opens a Knex transaction and runs the orchestrator
216
+ * inside it so that the entire backfill either succeeds or rolls back.
217
+ */
218
+ async function runV7KnexBackfill(knex, now = new Date()) {
219
+ return await knex.transaction(async (trx) => {
220
+ const driver = new V7KnexBackfillDriver(trx);
221
+ return await (0, v7Backfill_runner_1.runV7Backfill)(driver, now);
222
+ });
223
+ }
224
+ function toBytes(v) {
225
+ if (v == null)
226
+ return undefined;
227
+ if (Array.isArray(v))
228
+ return v;
229
+ if (Buffer.isBuffer(v))
230
+ return Array.from(v.values());
231
+ if (v instanceof Uint8Array)
232
+ return Array.from(v.values());
233
+ return undefined;
234
+ }
235
+ function toBuf(v) {
236
+ if (v == null)
237
+ return null;
238
+ return Buffer.from(v);
239
+ }
240
+ //# sourceMappingURL=v7Backfill.knex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v7Backfill.knex.js","sourceRoot":"","sources":["../../../../src/storage/schema/v7Backfill.knex.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import { TableAction, TableProvenTx, TableProvenTxReq, TableTransaction, TableTransactionV7 } from './tables';
2
+ /**
3
+ * Storage-agnostic driver used by the V7 backfill orchestrator.
4
+ *
5
+ * Implementations must be idempotent — calling each method twice with the same
6
+ * input must not produce duplicate rows. The orchestrator is responsible for
7
+ * iteration order and chunking; the driver only performs writes.
8
+ */
9
+ export interface V7BackfillDriver {
10
+ /** Stream legacy `proven_tx_reqs` rows joined with their `proven_txs` row when available. */
11
+ streamLegacyReqs: () => AsyncIterable<{
12
+ req: TableProvenTxReq;
13
+ proven?: TableProvenTx;
14
+ }>;
15
+ /** Stream legacy `transactions` rows ordered by transactionId ascending. */
16
+ streamLegacyTransactions: () => AsyncIterable<TableTransaction>;
17
+ /**
18
+ * Upsert a V7 `transactions` row by `txid`. Returns the resolved
19
+ * `transactionId` (PK of `transactions_v7`).
20
+ */
21
+ upsertTransactionV7: (row: Omit<TableTransactionV7, 'transactionId'>) => Promise<number>;
22
+ /**
23
+ * Upsert a V7 `actions` row by `(userId, transactionId)`. Returns the
24
+ * resolved `actionId`.
25
+ */
26
+ upsertAction: (row: Omit<TableAction, 'actionId'>) => Promise<number>;
27
+ /**
28
+ * Re-point a single legacy `tx_labels_map` row whose `transactionId` refers
29
+ * to the old `transactions` PK so that it points to the new `actions.actionId`.
30
+ *
31
+ * Implementations may choose to rewrite the entire mapping in bulk and treat
32
+ * this method as a no-op; the orchestrator will still call it once per pair.
33
+ */
34
+ repointTxLabelMap: (legacyTransactionId: number, actionId: number) => Promise<void>;
35
+ }
36
+ export interface V7BackfillStats {
37
+ reqsBackfilled: number;
38
+ legacyTxOnlyBackfilled: number;
39
+ actionsBackfilled: number;
40
+ labelMapsRepointed: number;
41
+ }
42
+ /**
43
+ * Orchestrates §3 Steps 2-5 of PROD_REQ_V7_TS.md.
44
+ *
45
+ * Strategy:
46
+ * 1. Walk every `proven_tx_reqs` row (joined with its proof) and upsert a row
47
+ * in `transactions_v7`. Build a `txid -> transactionId` map.
48
+ * 2. Walk every legacy `transactions` row.
49
+ * - If the row has a txid AND it is not in the map, upsert a tx-only V7
50
+ * row (locally-created actions that never reached the broadcast queue).
51
+ * - Compute the V7 `transactionId` for this legacy row. Rows without a
52
+ * txid (unsigned, unprocessed) are skipped — they have no canonical V7
53
+ * representation yet and are surfaced as gaps in the stats.
54
+ * 3. Upsert an `actions` row per legacy `transactions` row that has a V7
55
+ * transactionId.
56
+ * 4. Re-point `tx_labels_map.transactionId` from legacy PK to new `actionId`.
57
+ *
58
+ * The driver is invoked one row at a time so that the entire pass can run as
59
+ * a single Knex transaction or a single IDB readwrite transaction without
60
+ * holding the full row set in memory.
61
+ */
62
+ export declare function runV7Backfill(driver: V7BackfillDriver, now?: Date): Promise<V7BackfillStats>;
63
+ //# sourceMappingURL=v7Backfill.runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v7Backfill.runner.d.ts","sourceRoot":"","sources":["../../../../src/storage/schema/v7Backfill.runner.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,UAAU,CAAA;AAEjB;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6FAA6F;IAC7F,gBAAgB,EAAE,MAAM,aAAa,CAAC;QAAE,GAAG,EAAE,gBAAgB,CAAC;QAAC,MAAM,CAAC,EAAE,aAAa,CAAA;KAAE,CAAC,CAAA;IACxF,4EAA4E;IAC5E,wBAAwB,EAAE,MAAM,aAAa,CAAC,gBAAgB,CAAC,CAAA;IAC/D;;;OAGG;IACH,mBAAmB,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,kBAAkB,EAAE,eAAe,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IACxF;;;OAGG;IACH,YAAY,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IACrE;;;;;;OAMG;IACH,iBAAiB,EAAE,CAAC,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACpF;AAED,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAA;IACtB,sBAAsB,EAAE,MAAM,CAAA;IAC9B,iBAAiB,EAAE,MAAM,CAAA;IACzB,kBAAkB,EAAE,MAAM,CAAA;CAC3B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,aAAa,CAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,GAAE,IAAiB,GAAG,OAAO,CAAC,eAAe,CAAC,CAyC/G"}