@bsv/wallet-toolbox 1.6.4 → 1.6.6

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 (264) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/docs/client.md +402 -313
  3. package/docs/monitor.md +4 -4
  4. package/docs/services.md +118 -133
  5. package/docs/wallet.md +402 -313
  6. package/mobile/out/src/monitor/Monitor.d.ts +3 -3
  7. package/mobile/out/src/monitor/Monitor.d.ts.map +1 -1
  8. package/mobile/out/src/monitor/Monitor.js.map +1 -1
  9. package/mobile/out/src/sdk/WalletServices.interfaces.d.ts +88 -2
  10. package/mobile/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  11. package/mobile/out/src/services/Services.js +1 -1
  12. package/mobile/out/src/services/Services.js.map +1 -1
  13. package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +3 -3
  14. package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
  15. package/mobile/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
  16. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts +1 -6
  17. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts.map +1 -1
  18. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts +1 -1
  19. package/mobile/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts.map +1 -1
  20. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts +2 -2
  21. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts.map +1 -1
  22. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +33 -16
  23. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -1
  24. package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts +1 -1
  25. package/mobile/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts.map +1 -1
  26. package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +1 -1
  27. package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
  28. package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.js +15 -11
  29. package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
  30. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts +2 -2
  31. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -1
  32. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +4 -4
  33. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
  34. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +1 -1
  35. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
  36. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -1
  37. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +2 -3
  38. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -1
  39. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts +2 -1
  40. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -1
  41. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +3 -1
  42. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
  43. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +1 -1
  44. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
  45. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +2 -2
  46. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
  47. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +4 -5
  48. package/mobile/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
  49. package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts +2 -1
  50. package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -1
  51. package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +2 -1
  52. package/mobile/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
  53. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts +7 -7
  54. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
  55. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +42 -5
  56. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
  57. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts +91 -0
  58. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +1 -0
  59. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +448 -0
  60. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -0
  61. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +3 -7
  62. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
  63. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +63 -130
  64. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
  65. package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts +12 -0
  66. package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -0
  67. package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js +83 -0
  68. package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -0
  69. package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts +2 -0
  70. package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts.map +1 -1
  71. package/mobile/out/src/services/chaintracker/chaintracks/index.client.js +2 -0
  72. package/mobile/out/src/services/chaintracker/chaintracks/index.client.js.map +1 -1
  73. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +2 -1
  74. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
  75. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +19 -7
  76. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
  77. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts +1 -1
  78. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
  79. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
  80. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +2 -2
  81. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -1
  82. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +2 -2
  83. package/mobile/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -1
  84. package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -1
  85. package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.js +4 -1
  86. package/mobile/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -1
  87. package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
  88. package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +26 -11
  89. package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
  90. package/mobile/out/src/services/createDefaultWalletServicesOptions.d.ts +2 -1
  91. package/mobile/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
  92. package/mobile/out/src/services/createDefaultWalletServicesOptions.js +19 -17
  93. package/mobile/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
  94. package/mobile/package-lock.json +2 -2
  95. package/mobile/package.json +1 -1
  96. package/out/src/monitor/Monitor.d.ts +3 -3
  97. package/out/src/monitor/Monitor.d.ts.map +1 -1
  98. package/out/src/monitor/Monitor.js.map +1 -1
  99. package/out/src/sdk/WalletServices.interfaces.d.ts +88 -2
  100. package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
  101. package/out/src/services/Services.js +1 -1
  102. package/out/src/services/Services.js.map +1 -1
  103. package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +3 -3
  104. package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
  105. package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
  106. package/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts +1 -6
  107. package/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts.map +1 -1
  108. package/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts +1 -1
  109. package/out/src/services/chaintracker/chaintracks/Api/BulkStorageApi.d.ts.map +1 -1
  110. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts +2 -2
  111. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts.map +1 -1
  112. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +33 -16
  113. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -1
  114. package/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts +1 -1
  115. package/out/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.d.ts.map +1 -1
  116. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +1 -1
  117. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
  118. package/out/src/services/chaintracker/chaintracks/Chaintracks.js +15 -11
  119. package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
  120. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts +2 -2
  121. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -1
  122. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +4 -4
  123. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
  124. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +1 -1
  125. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
  126. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -1
  127. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +2 -3
  128. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -1
  129. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map +1 -1
  130. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js +1 -1
  131. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +1 -1
  132. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts +2 -1
  133. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -1
  134. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +3 -1
  135. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
  136. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +1 -1
  137. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
  138. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map +1 -1
  139. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js +3 -3
  140. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +1 -1
  141. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +2 -2
  142. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
  143. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +4 -5
  144. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
  145. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.js +1 -1
  146. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.js.map +1 -1
  147. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.js +1 -1
  148. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.js.map +1 -1
  149. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts +2 -1
  150. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -1
  151. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +2 -1
  152. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
  153. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts.map +1 -1
  154. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js +4 -3
  155. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js.map +1 -1
  156. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts +7 -7
  157. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
  158. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +42 -5
  159. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
  160. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts +91 -0
  161. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +1 -0
  162. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +448 -0
  163. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -0
  164. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts +3 -29
  165. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -1
  166. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +61 -137
  167. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -1
  168. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +3 -7
  169. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
  170. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +63 -130
  171. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
  172. package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.d.ts +2 -0
  173. package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.d.ts.map +1 -0
  174. package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.js +81 -0
  175. package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.js.map +1 -0
  176. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js +12 -1
  177. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js.map +1 -1
  178. package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.js +1 -1
  179. package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.js.map +1 -1
  180. package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.d.ts +2 -0
  181. package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.d.ts.map +1 -0
  182. package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.js +50 -0
  183. package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.js.map +1 -0
  184. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts +12 -0
  185. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -0
  186. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js +83 -0
  187. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -0
  188. package/out/src/services/chaintracker/chaintracks/index.client.d.ts +2 -0
  189. package/out/src/services/chaintracker/chaintracks/index.client.d.ts.map +1 -1
  190. package/out/src/services/chaintracker/chaintracks/index.client.js +2 -0
  191. package/out/src/services/chaintracker/chaintracks/index.client.js.map +1 -1
  192. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +2 -1
  193. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
  194. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +19 -7
  195. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
  196. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts +1 -1
  197. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
  198. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
  199. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +2 -2
  200. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -1
  201. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +2 -2
  202. package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -1
  203. package/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -1
  204. package/out/src/services/chaintracker/chaintracks/util/HeightRange.js +4 -1
  205. package/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -1
  206. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
  207. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +26 -11
  208. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
  209. package/out/src/services/createDefaultWalletServicesOptions.d.ts +2 -1
  210. package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
  211. package/out/src/services/createDefaultWalletServicesOptions.js +19 -17
  212. package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
  213. package/out/src/services/providers/__tests/exchangeRates.test.d.ts +2 -0
  214. package/out/src/services/providers/__tests/exchangeRates.test.d.ts.map +1 -0
  215. package/out/src/services/providers/__tests/exchangeRates.test.js +19 -0
  216. package/out/src/services/providers/__tests/exchangeRates.test.js.map +1 -0
  217. package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
  218. package/out/src/storage/remoting/StorageServer.js +4 -0
  219. package/out/src/storage/remoting/StorageServer.js.map +1 -1
  220. package/out/test/Wallet/support/operations.man.test.js +1 -1
  221. package/out/test/Wallet/support/operations.man.test.js.map +1 -1
  222. package/out/tsconfig.all.tsbuildinfo +1 -1
  223. package/package.json +1 -1
  224. package/src/monitor/Monitor.ts +3 -3
  225. package/src/sdk/WalletServices.interfaces.ts +88 -1
  226. package/src/services/Services.ts +1 -1
  227. package/src/services/chaintracker/ChaintracksChainTracker.ts +3 -2
  228. package/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.ts +1 -7
  229. package/src/services/chaintracker/chaintracks/Api/BulkStorageApi.ts +1 -1
  230. package/src/services/chaintracker/chaintracks/Api/ChaintracksApi.ts +2 -2
  231. package/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.ts +39 -14
  232. package/src/services/chaintracker/chaintracks/Api/LiveIngestorApi.ts +1 -1
  233. package/src/services/chaintracker/chaintracks/Chaintracks.ts +16 -11
  234. package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.ts +4 -5
  235. package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.ts +1 -1
  236. package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.ts +2 -3
  237. package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.ts +1 -0
  238. package/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.ts +3 -1
  239. package/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.ts +1 -1
  240. package/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.ts +10 -3
  241. package/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.ts +6 -4
  242. package/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.ts +1 -1
  243. package/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.test.ts +1 -1
  244. package/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.ts +2 -1
  245. package/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.ts +4 -3
  246. package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.ts +60 -11
  247. package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.ts +557 -0
  248. package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.ts +80 -179
  249. package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.ts +63 -133
  250. package/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.ts +102 -0
  251. package/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.ts +14 -1
  252. package/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.ts +1 -1
  253. package/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.ts +61 -0
  254. package/src/services/chaintracker/chaintracks/createIdbChaintracks.ts +111 -0
  255. package/src/services/chaintracker/chaintracks/index.client.ts +2 -0
  256. package/src/services/chaintracker/chaintracks/util/BulkFileDataManager.ts +20 -11
  257. package/src/services/chaintracker/chaintracks/util/BulkFilesReader.ts +1 -1
  258. package/src/services/chaintracker/chaintracks/util/BulkHeaderFile.ts +3 -3
  259. package/src/services/chaintracker/chaintracks/util/HeightRange.ts +4 -1
  260. package/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.ts +26 -11
  261. package/src/services/createDefaultWalletServicesOptions.ts +25 -18
  262. package/src/services/providers/__tests/exchangeRates.test.ts +18 -0
  263. package/src/storage/remoting/StorageServer.ts +5 -0
  264. package/test/Wallet/support/operations.man.test.ts +1 -1
@@ -6,8 +6,6 @@ const ChaintracksStorageBase_1 = require("./ChaintracksStorageBase");
6
6
  const blockHeaderUtilities_1 = require("../util/blockHeaderUtilities");
7
7
  const utilityHelpers_1 = require("../../../../utility/utilityHelpers");
8
8
  const HeightRange_1 = require("../util/HeightRange");
9
- const BulkFilesReader_1 = require("../util/BulkFilesReader");
10
- const ChaintracksFetch_1 = require("../util/ChaintracksFetch");
11
9
  const WERR_errors_1 = require("../../../../sdk/WERR_errors");
12
10
  const KnexMigrations_1 = require("../../../../storage/schema/KnexMigrations");
13
11
  /**
@@ -18,22 +16,17 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
18
16
  static createStorageKnexOptions(chain, knex) {
19
17
  const options = {
20
18
  ...ChaintracksStorageBase_1.ChaintracksStorageBase.createStorageBaseOptions(chain),
21
- knex,
22
- headerTableName: `live_headers`,
23
- bulkBlockHashTableName: `bulk_hash`,
24
- bulkMerkleRootTableName: `bulk_merkle`
19
+ knex
25
20
  };
26
21
  return options;
27
22
  }
28
23
  constructor(options) {
29
24
  super(options);
30
25
  this.bulkFilesTableName = 'bulk_files';
26
+ this.headerTableName = `live_headers`;
31
27
  if (!options.knex)
32
28
  throw new Error('The knex options property is required.');
33
29
  this.knex = options.knex;
34
- this.headerTableName = options.headerTableName;
35
- this.bulkBlockHashTableName = options.bulkBlockHashTableName;
36
- this.bulkMerkleRootTableName = options.bulkMerkleRootTableName;
37
30
  }
38
31
  get dbtype() {
39
32
  if (!this._dbtype)
@@ -59,7 +52,7 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
59
52
  this._dbtype = await (0, KnexMigrations_1.determineDBType)(this.knex);
60
53
  await super.makeAvailable();
61
54
  // Connect the bulk data file manager to the table provided by this storage class.
62
- await this.bulkManager.setStorage(this);
55
+ await this.bulkManager.setStorage(this, this.log);
63
56
  }
64
57
  }
65
58
  async migrateLatest() {
@@ -93,9 +86,8 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
93
86
  await this.knex.destroy();
94
87
  }
95
88
  async findLiveHeightRange() {
96
- const maxHeight = (await this.findChainTipHeader()).height;
97
- const [resultrow] = await this.knex(this.headerTableName).min('height as minHeight');
98
- return { minHeight: resultrow.minHeight, maxHeight };
89
+ var _a, _b;
90
+ return new HeightRange_1.HeightRange(((_a = (await this.knex(this.headerTableName).where({ isActive: true }).min('height as v')).pop()) === null || _a === void 0 ? void 0 : _a.v) || 0, ((_b = (await this.knex(this.headerTableName).where({ isActive: true }).max('height as v')).pop()) === null || _b === void 0 ? void 0 : _b.v) || -1);
99
91
  }
100
92
  async findLiveHeaderForHeaderId(headerId) {
101
93
  const [header] = await this.knex(this.headerTableName).where({ headerId: headerId });
@@ -179,16 +171,18 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
179
171
  */
180
172
  async insertHeader(header) {
181
173
  const table = this.headerTableName;
182
- let ok = true;
183
- let dupe = false;
184
- let noPrev = false;
185
- let badPrev = false;
186
- let noActiveAncestor = false;
187
- let noTip = false;
188
- let setActiveChainTip = false;
189
- let reorgDepth = 0;
190
- let priorTip;
191
- ok = await this.knex.transaction(async (trx) => {
174
+ const r = {
175
+ added: false,
176
+ dupe: false,
177
+ noPrev: false,
178
+ badPrev: false,
179
+ noActiveAncestor: false,
180
+ isActiveTip: false,
181
+ reorgDepth: 0,
182
+ priorTip: undefined,
183
+ noTip: false
184
+ };
185
+ await this.knex.transaction(async (trx) => {
192
186
  /*
193
187
  We ensure the header does not already exist. This needs to be done
194
188
  inside the transaction to avoid inserting multiple headers. If an
@@ -196,64 +190,71 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
196
190
  */
197
191
  const [dupeCheck] = await trx(table).where({ hash: header.hash }).count();
198
192
  if (dupeCheck['count(*)']) {
199
- dupe = true;
200
- return false;
193
+ r.dupe = true;
194
+ return;
201
195
  }
202
196
  // This is the existing previous header to the one being inserted...
203
197
  let [oneBack] = await trx(table).where({ hash: header.previousHash });
204
198
  if (!oneBack) {
205
199
  // Check if this is first live header...
206
- const r = await trx(table).count();
207
- const count = Number(r[0]['count(*)']);
200
+ const cr = await trx(table).count();
201
+ const count = Number(cr[0]['count(*)']);
208
202
  if (count === 0) {
203
+ // If this is the first live header, the last bulk header (if there is one) is the previous header.
209
204
  const lbf = await this.bulkManager.getLastFile();
210
205
  if (!lbf)
211
206
  throw new WERR_errors_1.WERR_INVALID_OPERATION('bulk headers must exist before first live header can be added');
212
207
  if (header.previousHash === lbf.lastHash && header.height === lbf.firstHeight + lbf.count) {
208
+ // Valid first live header. Add it.
213
209
  const chainWork = (0, blockHeaderUtilities_1.addWork)(lbf.lastChainWork, (0, blockHeaderUtilities_1.convertBitsToWork)(header.bits));
210
+ r.isActiveTip = true;
214
211
  const newHeader = {
215
212
  ...header,
216
213
  previousHeaderId: null,
217
214
  chainWork,
218
- isChainTip: true,
219
- isActive: true
215
+ isChainTip: r.isActiveTip,
216
+ isActive: r.isActiveTip
220
217
  };
218
+ // Success
221
219
  await trx(table).insert(newHeader);
222
- return true;
220
+ r.added = true;
221
+ return;
223
222
  }
224
223
  }
225
- // Never add a header that doesn't extend existing headers.
226
- // Or one that's confused about its height.
227
- noPrev = true;
228
- return false;
224
+ // Failure without a oneBack
225
+ // First live header that does not follow last bulk header or
226
+ // Not the first live header and live headers doesn't include a previousHash header.
227
+ r.noPrev = true;
228
+ return;
229
229
  }
230
+ // This header's previousHash matches an existing live header's hash, if height isn't +1, reject it.
230
231
  if (oneBack.height + 1 != header.height) {
231
- badPrev = true;
232
- return false;
232
+ r.badPrev = true;
233
+ return;
233
234
  }
234
- const chainWork = (0, blockHeaderUtilities_1.addWork)(oneBack.chainWork, (0, blockHeaderUtilities_1.convertBitsToWork)(header.bits));
235
- let tip;
236
235
  if (oneBack.isActive && oneBack.isChainTip) {
237
- tip = oneBack;
236
+ r.priorTip = oneBack;
238
237
  }
239
238
  else {
240
239
  ;
241
- [tip] = await trx(table).where({ isActive: true, isChainTip: true });
240
+ [r.priorTip] = await trx(table).where({ isActive: true, isChainTip: true });
242
241
  }
243
- if (!tip) {
244
- noTip = true;
245
- return false;
242
+ if (!r.priorTip) {
243
+ // No active chain tip found. This is a logic error in state of live headers.
244
+ r.noTip = true;
245
+ return;
246
246
  }
247
- priorTip = tip;
248
- setActiveChainTip = (0, blockHeaderUtilities_1.isMoreWork)(chainWork, tip.chainWork);
247
+ // We have an acceptable new live header...and live headers has an active chain tip.
248
+ const chainWork = (0, blockHeaderUtilities_1.addWork)(oneBack.chainWork, (0, blockHeaderUtilities_1.convertBitsToWork)(header.bits));
249
+ r.isActiveTip = (0, blockHeaderUtilities_1.isMoreWork)(chainWork, r.priorTip.chainWork);
249
250
  const newHeader = {
250
251
  ...header,
251
252
  previousHeaderId: oneBack.headerId,
252
253
  chainWork,
253
- isChainTip: setActiveChainTip,
254
- isActive: setActiveChainTip
254
+ isChainTip: r.isActiveTip,
255
+ isActive: r.isActiveTip
255
256
  };
256
- if (setActiveChainTip) {
257
+ if (r.isActiveTip) {
257
258
  // Find newHeader's first active ancestor
258
259
  let activeAncestor = oneBack;
259
260
  while (!activeAncestor.isActive) {
@@ -261,14 +262,15 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
261
262
  headerId: activeAncestor.previousHeaderId || -1
262
263
  });
263
264
  if (!previousHeader) {
264
- noActiveAncestor = true;
265
- return false;
265
+ // live headers doesn't contain an active ancestor. This is a live header's logic error.
266
+ r.noActiveAncestor = true;
267
+ return;
266
268
  }
267
269
  activeAncestor = previousHeader;
268
270
  }
269
271
  if (!(oneBack.isActive && oneBack.isChainTip))
270
272
  // If this is the new active chain tip, and oneBack was not, this is a reorg.
271
- reorgDepth = Math.min(priorTip.height, header.height) - activeAncestor.height;
273
+ r.reorgDepth = Math.min(r.priorTip.height, header.height) - activeAncestor.height;
272
274
  if (activeAncestor.headerId !== oneBack.headerId) {
273
275
  // Deactivate headers from the current active chain tip up to but excluding our activeAncestor:
274
276
  let [headerToDeactivate] = await trx(table).where({ isChainTip: true, isActive: true });
@@ -295,24 +297,15 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
295
297
  }
296
298
  }
297
299
  if (oneBack.isChainTip) {
300
+ // Deactivate the old chain tip
298
301
  await trx(table).where({ headerId: oneBack.headerId }).update({ isChainTip: false });
299
302
  }
300
303
  await trx(table).insert(newHeader);
301
- return true;
304
+ r.added = true;
302
305
  });
303
- if (ok && setActiveChainTip)
306
+ if (r.added && r.isActiveTip)
304
307
  this.pruneLiveBlockHeaders(header.height);
305
- return {
306
- added: ok,
307
- dupe,
308
- isActiveTip: setActiveChainTip,
309
- reorgDepth,
310
- priorTip,
311
- noPrev,
312
- badPrev,
313
- noActiveAncestor,
314
- noTip
315
- };
308
+ return r;
316
309
  }
317
310
  async findMaxHeaderId() {
318
311
  var _a;
@@ -320,42 +313,6 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
320
313
  //const [resultrow] = await this.knex(this.headerTableName).max('headerId as maxHeaderId')
321
314
  //return resultrow?.maxHeaderId || 0
322
315
  }
323
- async getLiveHeightRange() {
324
- var _a, _b;
325
- return new HeightRange_1.HeightRange(((_a = (await this.knex(this.headerTableName).where({ isActive: true }).min('height as v')).pop()) === null || _a === void 0 ? void 0 : _a.v) || 0, ((_b = (await this.knex(this.headerTableName).where({ isActive: true }).max('height as v')).pop()) === null || _b === void 0 ? void 0 : _b.v) || -1);
326
- }
327
- async appendToIndexTable(table, index, buffers, minHeight) {
328
- const newRows = [];
329
- for (let i = 0; i < buffers.length; i++) {
330
- const row = { height: minHeight + i };
331
- row[index] = buffers[i];
332
- newRows.push(row);
333
- }
334
- try {
335
- await this.knex.batchInsert(table, newRows, newRows.length);
336
- return;
337
- }
338
- catch (err) {
339
- if ((err === null || err === void 0 ? void 0 : err.code) !== 'ER_DUP_ENTRY')
340
- throw err;
341
- }
342
- // If the batchInsert failed, we may be recovering from an earlier failure. Try inserting one at a time and ignore duplicate hash values.
343
- for (let i = 0; i < newRows.length; i++) {
344
- await this.knex(this.bulkBlockHashTableName).insert(newRows[i]).onConflict(index).ignore();
345
- }
346
- }
347
- async appendToIndexTableChunked(table, index, buffers, minHeight, chunkSize) {
348
- let remaining = buffers.length;
349
- while (remaining > 0) {
350
- const size = Math.min(remaining, chunkSize);
351
- const chunk = buffers.slice(0, size);
352
- buffers = buffers.slice(size);
353
- await this.appendToIndexTable(table, index, chunk, minHeight);
354
- console.log(`Appended ${size} index records to ${index} table`);
355
- remaining -= size;
356
- minHeight += size;
357
- }
358
- }
359
316
  async deleteLiveBlockHeaders() {
360
317
  const table = this.headerTableName;
361
318
  await this.knex.transaction(async (trx) => {
@@ -390,46 +347,13 @@ class ChaintracksStorageKnex extends ChaintracksStorageBase_1.ChaintracksStorage
390
347
  }
391
348
  });
392
349
  }
393
- async getHeaders(height, count) {
394
- if (count <= 0)
395
- return [];
350
+ async getLiveHeaders(range) {
396
351
  const headers = await this.knex(this.headerTableName)
397
352
  .where({ isActive: true })
398
- .andWhere('height', '>=', height)
399
- .andWhere('height', '<', height + count)
400
- .limit(count)
353
+ .andWhere('height', '>=', range.minHeight)
354
+ .andWhere('height', '<=', range.maxHeight)
401
355
  .orderBy('height');
402
- const bufs = [];
403
- if (headers.length === 0 || headers[0].height > height) {
404
- // Some or all headers requested are in bulk storage...
405
- // There may be some overlap between bulk and live, headers are only
406
- // deleted from live after they have been added to bulk.
407
- // Only get what is needed.
408
- const bulkCount = headers.length === 0 ? count : headers[0].height - height;
409
- const range = new HeightRange_1.HeightRange(height, height + bulkCount - 1);
410
- const reader = await BulkFilesReader_1.BulkFilesReaderStorage.fromStorage(this, new ChaintracksFetch_1.ChaintracksFetch(), range, bulkCount * 80);
411
- const bulkData = await reader.read();
412
- if (bulkData)
413
- bufs.push(bulkData);
414
- }
415
- if (headers.length > 0) {
416
- // Some or all headers requested were in live storage...
417
- let buf = new Uint8Array(headers.length * 80);
418
- for (let i = 0; i < headers.length; i++) {
419
- const h = headers[i];
420
- const ha = (0, blockHeaderUtilities_1.serializeBaseBlockHeader)(h);
421
- buf.set(ha, i * 80);
422
- }
423
- bufs.push(buf);
424
- }
425
- const r = [bufs.length * 80];
426
- let i = 0;
427
- for (const bh of bufs) {
428
- for (const b of bh) {
429
- r[i++] = b;
430
- }
431
- }
432
- return r;
356
+ return headers;
433
357
  }
434
358
  concatSerializedHeaders(bufs) {
435
359
  const r = [bufs.length * 80];
@@ -1 +1 @@
1
- {"version":3,"file":"ChaintracksStorageKnex.js","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.ts"],"names":[],"mappings":";;;AACA,2EAAuE;AAEvE,qEAAiE;AAGjE,uEAA+G;AAC/G,uEAAoE;AAGpE,qDAAiD;AACjD,6DAAgE;AAChE,+DAA2D;AAG3D,6DAA4F;AAC5F,8EAA2E;AA6B3E;;;GAGG;AACH,MAAa,sBAAuB,SAAQ,+CAAsB;IAChE,MAAM,CAAC,wBAAwB,CAAC,KAAY,EAAE,IAAW;QACvD,MAAM,OAAO,GAAkC;YAC7C,GAAG,+CAAsB,CAAC,wBAAwB,CAAC,KAAK,CAAC;YACzD,IAAI;YACJ,eAAe,EAAE,cAAc;YAC/B,sBAAsB,EAAE,WAAW;YACnC,uBAAuB,EAAE,aAAa;SACvC,CAAA;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IASD,YAAY,OAAsC;QAChD,KAAK,CAAC,OAAO,CAAC,CAAA;QALhB,uBAAkB,GAAW,YAAY,CAAA;QAMvC,IAAI,CAAC,OAAO,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;QAC5E,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACxB,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAA;QAC9C,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC,sBAAsB,CAAA;QAC5D,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAA;IAChE,CAAC;IAED,IAAI,MAAM;QACR,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,oCAAsB,CAAC,+BAA+B,CAAC,CAAA;QACpF,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IAEQ,KAAK,CAAC,QAAQ;QACrB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;QAC3B,CAAC;QAAC,WAAM,CAAC;YACP,YAAY;QACd,CAAC;IACH,CAAC;IAEQ,KAAK,CAAC,aAAa;QAC1B,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW;YAAE,OAAM;QAChD,gGAAgG;QAChG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAC5B,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,IAAI,CAAC,OAAO,GAAG,MAAM,IAAA,gCAAe,EAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC/C,MAAM,KAAK,CAAC,aAAa,EAAE,CAAA;YAC3B,kFAAkF;YAClF,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACzC,CAAC;IACH,CAAC;IAEQ,KAAK,CAAC,aAAa;QAC1B,IAAI,IAAI,CAAC,WAAW;YAAE,OAAM;QAC5B,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,eAAe,EAAE,IAAI,qDAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC9F,MAAM,KAAK,CAAC,aAAa,EAAE,CAAA;IAC7B,CAAC;IAEQ,KAAK,CAAC,WAAW;QACxB,yFAAyF;QACzF,MAAM,MAAM,GAAG;YACb,eAAe,EAAE,IAAI,qDAAyB,CAAC,MAAM,CAAC;SACvD,CAAA;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,MAAM,CAAA;QACnE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC9C,IAAI,CAAC,CAAC,EAAE,CAAC;oBACP,OAAO,CAAC,KAAK,CAAC,sEAAsE,CAAC,CAAA;oBACrF,MAAK;gBACP,CAAC;YACH,CAAC;YAAC,OAAO,EAAW,EAAE,CAAC;gBACrB,MAAK;YACP,CAAC;QACH,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,KAAK,CAAA;QACxB,MAAM,KAAK,CAAC,WAAW,EAAE,CAAA;IAC3B,CAAC;IAEQ,KAAK,CAAC,OAAO;QACpB,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;IAC3B,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,MAAM,SAAS,GAAG,CAAC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,MAAM,CAAA;QAE1D,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;QACpF,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,CAAA;IACtD,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,QAAgB;QAC9C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;QACrG,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,YAAY,QAAQ,qCAAqC,CAAC,CAAA;QACvF,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;QAChH,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;QAC1E,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,KAAK,CAAC,6BAA6B;QACjC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;QAChH,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,MAAc;QAC1C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;QACjH,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,IAAY;QAC3C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QAC7F,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;QACrC,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,2BAA2B,CAAC,UAAkB;QAClD,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAA;QACzG,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc;QACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE,CAAA;QACtF,OAAO,KAAK,CAAA;IACd,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,IAAwB;QAC3C,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,MAAM,CAAA;QACpC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAClE,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QAChB,OAAO,EAAE,CAAA;IACX,CAAC;IACD,KAAK,CAAC,cAAc,CAAC,MAAc,EAAE,IAAwB;QAC3D,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACzF,OAAO,CAAC,CAAA;IACV,CAAC;IACD,KAAK,CAAC,YAAY;QAChB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAqB,IAAI,CAAC,kBAAkB,CAAC;aACvE,MAAM,CACL,QAAQ,EACR,OAAO,EACP,UAAU,EACV,aAAa,EACb,OAAO,EACP,UAAU,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,eAAe,EACf,WAAW,EACX,WAAW,CACZ;aACA,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,CAAA;QAChC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,eAAe,CAAC,MAAc,EAAE,UAAkB,EAAE,SAAkB;QACpE,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;YAAE,OAAO,aAAa,MAAM,SAAS,UAAU,QAAQ,SAAU,GAAG,CAAA;QAC/F,OAAO,UAAU,MAAM,KAAK,UAAU,KAAK,SAAS,GAAG,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,MAAc,EAAE,MAAe,EAAE,MAAe;QACpE,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAC1B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,oCAAsB,CAAC,QAAQ,EAAE,oCAAoC,CAAC,CAAA;QAC/G,IAAI,IAAI,GAA2B,SAAS,CAAA;QAC5C,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YACzD,IAAI,EAAE,GAA8B,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CACrD,UAAU,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,MAAO,GAAG,CAAC,EAAE,MAAM,CAAC,iBAAiB,IAAI,CAAC,kBAAkB,oBAAoB,MAAM,GAAG,CACjI,CAAA;YACD,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;gBAAE,EAAE,GAAI,EAA6C,CAAC,CAAC,CAAC,CAAA;YACnF,MAAM,CAAC,GAAG,IAAA,gCAAe,EAAC,EAAE,CAAC,CAAA;YAC7B,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;gBAChB,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;YAChC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,IAAA,gCAAe,EAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;YAC5G,IAAI,CAAC,CAAC,IAAI;gBAAE,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC5C,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,MAAmB;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAA;QAElC,IAAI,EAAE,GAAG,IAAI,CAAA;QACb,IAAI,IAAI,GAAG,KAAK,CAAA;QAChB,IAAI,MAAM,GAAG,KAAK,CAAA;QAClB,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,IAAI,gBAAgB,GAAG,KAAK,CAAA;QAC5B,IAAI,KAAK,GAAG,KAAK,CAAA;QACjB,IAAI,iBAAiB,GAAG,KAAK,CAAA;QAC7B,IAAI,UAAU,GAAG,CAAC,CAAA;QAClB,IAAI,QAAqC,CAAA;QAEzC,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YAC3C;;;;oBAIQ;YACR,MAAM,CAAC,SAAS,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAA;YACzE,IAAI,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC1B,IAAI,GAAG,IAAI,CAAA;gBACX,OAAO,KAAK,CAAA;YACd,CAAC;YAED,oEAAoE;YACpE,IAAI,CAAC,OAAO,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAA;YAEtF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,wCAAwC;gBACxC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAA;gBAClC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAA;gBACtC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;oBAChB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAA;oBAChD,IAAI,CAAC,GAAG;wBAAE,MAAM,IAAI,oCAAsB,CAAC,+DAA+D,CAAC,CAAA;oBAC3G,IAAI,MAAM,CAAC,YAAY,KAAK,GAAG,CAAC,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC;wBAC1F,MAAM,SAAS,GAAG,IAAA,8BAAO,EAAC,GAAG,CAAC,aAAa,EAAE,IAAA,wCAAiB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;wBAC5E,MAAM,SAAS,GAAG;4BAChB,GAAG,MAAM;4BACT,gBAAgB,EAAE,IAAI;4BACtB,SAAS;4BACT,UAAU,EAAE,IAAI;4BAChB,QAAQ,EAAE,IAAI;yBACf,CAAA;wBACD,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;wBACnD,OAAO,IAAI,CAAA;oBACb,CAAC;gBACH,CAAC;gBACD,2DAA2D;gBAC3D,2CAA2C;gBAC3C,MAAM,GAAG,IAAI,CAAA;gBACb,OAAO,KAAK,CAAA;YACd,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACxC,OAAO,GAAG,IAAI,CAAA;gBACd,OAAO,KAAK,CAAA;YACd,CAAC;YAED,MAAM,SAAS,GAAG,IAAA,8BAAO,EAAC,OAAO,CAAC,SAAS,EAAE,IAAA,wCAAiB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;YAE5E,IAAI,GAAgC,CAAA;YACpC,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;gBAC3C,GAAG,GAAG,OAAO,CAAA;YACf,CAAC;iBAAM,CAAC;gBACN,CAAC;gBAAA,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAA;YACxF,CAAC;YAED,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,KAAK,GAAG,IAAI,CAAA;gBACZ,OAAO,KAAK,CAAA;YACd,CAAC;YAED,QAAQ,GAAG,GAAG,CAAA;YAEd,iBAAiB,GAAG,IAAA,iCAAU,EAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAA;YAExD,MAAM,SAAS,GAAG;gBAChB,GAAG,MAAM;gBACT,gBAAgB,EAAE,OAAO,CAAC,QAAQ;gBAClC,SAAS;gBACT,UAAU,EAAE,iBAAiB;gBAC7B,QAAQ,EAAE,iBAAiB;aAC5B,CAAA;YAED,IAAI,iBAAiB,EAAE,CAAC;gBACtB,yCAAyC;gBACzC,IAAI,cAAc,GAAG,OAAO,CAAA;gBAC5B,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;oBAChC,MAAM,CAAC,cAAc,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC;wBAC/D,QAAQ,EAAE,cAAc,CAAC,gBAAgB,IAAI,CAAC,CAAC;qBAChD,CAAC,CAAA;oBACF,IAAI,CAAC,cAAc,EAAE,CAAC;wBACpB,gBAAgB,GAAG,IAAI,CAAA;wBACvB,OAAO,KAAK,CAAA;oBACd,CAAC;oBACD,cAAc,GAAG,cAAc,CAAA;gBACjC,CAAC;gBAED,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC;oBAC3C,6EAA6E;oBAC7E,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,MAAM,CAAA;gBAE/E,IAAI,cAAc,CAAC,QAAQ,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACjD,+FAA+F;oBAC/F,IAAI,CAAC,kBAAkB,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;oBACxG,OAAO,kBAAkB,CAAC,QAAQ,KAAK,cAAc,CAAC,QAAQ,EAAE,CAAC;wBAC/D,4DAA4D;wBAC5D,MAAM,GAAG,CAAkB,KAAK,CAAC;6BAC9B,KAAK,CAAC,EAAE,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,EAAE,CAAC;6BAChD,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAA;wBAC9B,MAAM,CAAC,cAAc,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC;4BAC/D,QAAQ,EAAE,kBAAkB,CAAC,gBAAgB,IAAI,CAAC,CAAC;yBACpD,CAAC,CAAA;wBACF,kBAAkB,GAAG,cAAc,CAAA;oBACrC,CAAC;oBAED,4EAA4E;oBAC5E,IAAI,gBAAgB,GAAG,OAAO,CAAA;oBAC9B,OAAO,gBAAgB,CAAC,QAAQ,KAAK,cAAc,CAAC,QAAQ,EAAE,CAAC;wBAC7D,2DAA2D;wBAC3D,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;wBAC3G,MAAM,CAAC,cAAc,CAAC,GAAG,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC;4BAC/D,QAAQ,EAAE,gBAAgB,CAAC,gBAAgB,IAAI,CAAC,CAAC;yBAClD,CAAC,CAAA;wBACF,gBAAgB,GAAG,cAAc,CAAA;oBACnC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;gBACvB,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAA;YACvG,CAAC;YAED,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;YAEnD,OAAO,IAAI,CAAA;QACb,CAAC,CAAC,CAAA;QAEF,IAAI,EAAE,IAAI,iBAAiB;YAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAEtE,OAAO;YACL,KAAK,EAAE,EAAE;YACT,IAAI;YACJ,WAAW,EAAE,iBAAiB;YAC9B,UAAU;YACV,QAAQ;YACR,MAAM;YACN,OAAO;YACP,gBAAgB;YAChB,KAAK;SACN,CAAA;IACH,CAAC;IAED,KAAK,CAAC,eAAe;;QACnB,OAAO,CAAC,MAAA,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE,0CAAE,CAAY,KAAI,CAAC,CAAC,CAAA;QAC9F,0FAA0F;QAC1F,oCAAoC;IACtC,CAAC;IAED,KAAK,CAAC,kBAAkB;;QACtB,OAAO,IAAI,yBAAW,CACpB,CAAC,MAAA,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE,0CAAE,CAAY,KAAI,CAAC,EAC9G,CAAC,MAAA,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,EAAE,0CAAE,CAAY,KAAI,CAAC,CAAC,CAChH,CAAA;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,KAAa,EAAE,KAAa,EAAE,OAAiB,EAAE,SAAiB;QACzF,MAAM,OAAO,GAAyB,EAAE,CAAA;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,GAAG,GAAG,EAAE,MAAM,EAAE,SAAS,GAAG,CAAC,EAAE,CAAA;YACrC,GAAG,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YACvB,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;YAC3D,OAAM;QACR,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,IAAI,CAAC,GAAwB,aAAxB,GAAG,uBAAH,GAAG,CAAuB,IAAI,MAAK,cAAc;gBAAE,MAAM,GAAG,CAAA;QACnE,CAAC;QAED,yIAAyI;QACzI,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAA;QAC5F,CAAC;IACH,CAAC;IAED,KAAK,CAAC,yBAAyB,CAC7B,KAAa,EACb,KAAa,EACb,OAAiB,EACjB,SAAiB,EACjB,SAAiB;QAEjB,IAAI,SAAS,GAAG,OAAO,CAAC,MAAM,CAAA;QAC9B,OAAO,SAAS,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;YAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;YACpC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAC7B,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;YAC7D,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,qBAAqB,KAAK,QAAQ,CAAC,CAAA;YAC/D,SAAS,IAAI,IAAI,CAAA;YACjB,SAAS,IAAI,IAAI,CAAA;QACnB,CAAC;IACH,CAAC;IAEQ,KAAK,CAAC,sBAAsB;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAA;QAClC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACtC,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAA;YACpE,MAAM,GAAG,CAAkB,KAAK,CAAC,CAAC,GAAG,EAAE,CAAA;QACzC,CAAC,CAAC,CAAA;IACJ,CAAC;IAEQ,KAAK,CAAC,sBAAsB;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAA;QACrC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACtC,MAAM,GAAG,CAAqB,KAAK,CAAC,CAAC,GAAG,EAAE,CAAA;QAC5C,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,2BAA2B,CAAC,SAAiB;QACjD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;YACvC,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAA;gBACtC,MAAM,GAAG,CAAC,SAAS,CAAC;qBACjB,OAAO,CAAC,kBAAkB,EAAE;oBAC3B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAAA;gBAC1E,CAAC,CAAC;qBACD,MAAM,CAAC,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAA;gBAErC,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,GAAG,EAAE,CAAA;gBAEhF,qBAAqB;gBACrB,MAAM,GAAG,CAAC,MAAM,EAAE,CAAA;gBAClB,OAAO,YAAY,CAAA;YACrB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,oBAAoB;gBACpB,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAA;gBACpB,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,KAAa;QAC5C,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO,EAAE,CAAA;QAEzB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC;aACnE,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;aACzB,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC;aAChC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC;aACvC,KAAK,CAAC,KAAK,CAAC;aACZ,OAAO,CAAC,QAAQ,CAAC,CAAA;QAEpB,MAAM,IAAI,GAAiB,EAAE,CAAA;QAE7B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;YACvD,uDAAuD;YACvD,oEAAoE;YACpE,wDAAwD;YACxD,2BAA2B;YAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,CAAA;YAC3E,MAAM,KAAK,GAAG,IAAI,yBAAW,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,CAAC,CAAC,CAAA;YAC7D,MAAM,MAAM,GAAG,MAAM,wCAAsB,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,mCAAgB,EAAE,EAAE,KAAK,EAAE,SAAS,GAAG,EAAE,CAAC,CAAA;YAC5G,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAA;YACpC,IAAI,QAAQ;gBAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACnC,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,wDAAwD;YACxD,IAAI,GAAG,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;YAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACxC,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;gBACpB,MAAM,EAAE,GAAG,IAAA,+CAAwB,EAAC,CAAC,CAAC,CAAA;gBACtC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,CAAA;YACrB,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChB,CAAC;QAED,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;QAC5B,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;YACtB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAA;YACZ,CAAC;QACH,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,uBAAuB,CAAC,IAAgB;QACtC,MAAM,CAAC,GAAa,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;QACtC,KAAK,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;YACtB,KAAK,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBACnB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACX,CAAC;QACH,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,KAAa;QACpC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAkB,IAAI,CAAC,eAAe,CAAC;aACnE,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;aACzB,KAAK,CAAC,KAAK,CAAC;aACZ,OAAO,CAAC,QAAQ,CAAC,CAAA;QACpB,OAAO,OAAO,CAAA;IAChB,CAAC;CACF;AA/eD,wDA+eC"}
1
+ {"version":3,"file":"ChaintracksStorageKnex.js","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.ts"],"names":[],"mappings":"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"}
@@ -27,15 +27,11 @@ export declare class ChaintracksStorageNoDb extends ChaintracksStorageBase {
27
27
  findLiveHeaderForHeaderId(headerId: number): Promise<LiveBlockHeader>;
28
28
  findLiveHeaderForHeight(height: number): Promise<LiveBlockHeader | null>;
29
29
  findLiveHeaderForMerkleRoot(merkleRoot: string): Promise<LiveBlockHeader | null>;
30
- findLiveHeightRange(): Promise<{
31
- minHeight: number;
32
- maxHeight: number;
33
- }>;
30
+ findLiveHeightRange(): Promise<HeightRange>;
34
31
  findMaxHeaderId(): Promise<number>;
35
- getLiveHeightRange(): Promise<HeightRange>;
36
32
  liveHeadersForBulk(count: number): Promise<LiveBlockHeader[]>;
37
- getHeaders(height: number, count: number): Promise<number[]>;
38
- insertHeader(header: BlockHeader, prev?: LiveBlockHeader): Promise<InsertHeaderResult>;
33
+ getLiveHeaders(range: HeightRange): Promise<LiveBlockHeader[]>;
34
+ insertHeader(header: BlockHeader): Promise<InsertHeaderResult>;
39
35
  }
40
36
  export {};
41
37
  //# sourceMappingURL=ChaintracksStorageNoDb.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChaintracksStorageNoDb.d.ts","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAChG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAGjD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAA;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAA;AAEvE,UAAU,mBAAmB;IAC3B,KAAK,EAAE,KAAK,CAAA;IACZ,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACzC,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACpC;AAED,MAAM,WAAW,6BAA8B,SAAQ,6BAA6B;CAAG;AAEvF,qBAAa,sBAAuB,SAAQ,sBAAsB;IAChE,MAAM,CAAC,QAAQ,EAAE,mBAAmB,CAMnC;IACD,MAAM,CAAC,QAAQ,EAAE,mBAAmB,CAMnC;gBAEW,OAAO,EAAE,6BAA6B;IAInC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAEjC,OAAO,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAU9B,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQvC,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsC/D,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC;IAO9C,6BAA6B,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAKrE,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAMzE,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAOrE,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAKxE,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAKhF,mBAAmB,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAWxE,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAKlC,kBAAkB,IAAI,OAAO,CAAC,WAAW,CAAC;IAW1C,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAQ7D,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAwC5D,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAkKtG"}
1
+ {"version":3,"file":"ChaintracksStorageNoDb.d.ts","sourceRoot":"","sources":["../../../../../../src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AAChG,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAGjD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAA;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAA;AAEvE,UAAU,mBAAmB;IAC3B,KAAK,EAAE,KAAK,CAAA;IACZ,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IACzC,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CACpC;AAED,MAAM,WAAW,6BAA8B,SAAQ,6BAA6B;CAAG;AAEvF,qBAAa,sBAAuB,SAAQ,sBAAsB;IAChE,MAAM,CAAC,QAAQ,EAAE,mBAAmB,CAMnC;IACD,MAAM,CAAC,QAAQ,EAAE,mBAAmB,CAMnC;gBAEW,OAAO,EAAE,6BAA6B;IAInC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAEjC,OAAO,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAU9B,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;IAQvC,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsC/D,kBAAkB,IAAI,OAAO,CAAC,eAAe,CAAC;IAO9C,6BAA6B,IAAI,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IAKrE,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAMzE,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAOrE,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAKxE,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAKhF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAW3C,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAKlC,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAQ7D,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAS9D,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAsI9E"}