@bsv/wallet-toolbox 1.1.7 → 1.1.8

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 (316) hide show
  1. package/docs/client.md +499 -486
  2. package/docs/monitor.md +29 -27
  3. package/docs/services.md +22 -22
  4. package/docs/setup.md +23 -23
  5. package/docs/storage.md +2177 -419
  6. package/docs/wallet.md +499 -486
  7. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts +4 -4
  8. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -1
  9. package/out/src/monitor/tasks/TaskCheckForProofs.js +2 -2
  10. package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
  11. package/out/src/monitor/tasks/TaskSendWaiting.d.ts +2 -2
  12. package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
  13. package/out/src/monitor/tasks/TaskSendWaiting.js +2 -2
  14. package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  15. package/out/src/sdk/StorageSyncReader.d.ts +30 -30
  16. package/out/src/sdk/StorageSyncReader.d.ts.map +1 -1
  17. package/out/src/sdk/StorageSyncReaderWriter.d.ts +60 -60
  18. package/out/src/sdk/StorageSyncReaderWriter.d.ts.map +1 -1
  19. package/out/src/sdk/WalletStorage.interfaces.d.ts +36 -36
  20. package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
  21. package/out/src/signer/methods/acquireDirectCertificate.d.ts.map +1 -1
  22. package/out/src/signer/methods/acquireDirectCertificate.js.map +1 -1
  23. package/out/src/storage/StorageKnex.d.ts +61 -61
  24. package/out/src/storage/StorageKnex.d.ts.map +1 -1
  25. package/out/src/storage/StorageKnex.js +2 -2
  26. package/out/src/storage/StorageKnex.js.map +1 -1
  27. package/out/src/storage/StorageProvider.d.ts +16 -15
  28. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  29. package/out/src/storage/StorageProvider.js +8 -8
  30. package/out/src/storage/StorageProvider.js.map +1 -1
  31. package/out/src/storage/StorageReader.d.ts +21 -21
  32. package/out/src/storage/StorageReader.d.ts.map +1 -1
  33. package/out/src/storage/StorageReader.js.map +1 -1
  34. package/out/src/storage/StorageReaderWriter.d.ts +60 -60
  35. package/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
  36. package/out/src/storage/StorageReaderWriter.js.map +1 -1
  37. package/out/src/storage/StorageSyncReader.d.ts +17 -17
  38. package/out/src/storage/StorageSyncReader.d.ts.map +1 -1
  39. package/out/src/storage/StorageSyncReader.js.map +1 -1
  40. package/out/src/storage/WalletStorageManager.d.ts +9 -9
  41. package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
  42. package/out/src/storage/WalletStorageManager.js +2 -2
  43. package/out/src/storage/WalletStorageManager.js.map +1 -1
  44. package/out/src/storage/index.all.d.ts +2 -2
  45. package/out/src/storage/index.all.d.ts.map +1 -1
  46. package/out/src/storage/index.all.js +3 -3
  47. package/out/src/storage/index.all.js.map +1 -1
  48. package/out/src/storage/index.client.d.ts +2 -2
  49. package/out/src/storage/index.client.d.ts.map +1 -1
  50. package/out/src/storage/index.client.js +2 -25
  51. package/out/src/storage/index.client.js.map +1 -1
  52. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts +3 -3
  53. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -1
  54. package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
  55. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  56. package/out/src/storage/methods/createAction.js +1 -1
  57. package/out/src/storage/methods/createAction.js.map +1 -1
  58. package/out/src/storage/methods/getBeefForTransaction.js +2 -2
  59. package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
  60. package/out/src/storage/methods/getSyncChunk.d.ts.map +1 -1
  61. package/out/src/storage/methods/getSyncChunk.js.map +1 -1
  62. package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
  63. package/out/src/storage/methods/internalizeAction.js +1 -1
  64. package/out/src/storage/methods/internalizeAction.js.map +1 -1
  65. package/out/src/storage/methods/listActions.js.map +1 -1
  66. package/out/src/storage/methods/listCertificates.d.ts.map +1 -1
  67. package/out/src/storage/methods/listCertificates.js.map +1 -1
  68. package/out/src/storage/methods/listOutputs.js.map +1 -1
  69. package/out/src/storage/methods/processAction.d.ts +4 -4
  70. package/out/src/storage/methods/processAction.d.ts.map +1 -1
  71. package/out/src/storage/methods/processAction.js +2 -2
  72. package/out/src/storage/methods/processAction.js.map +1 -1
  73. package/out/src/storage/methods/purgeData.d.ts.map +1 -1
  74. package/out/src/storage/methods/purgeData.js.map +1 -1
  75. package/out/src/storage/methods/reviewStatus.js.map +1 -1
  76. package/out/src/storage/remoting/StorageClient.d.ts +11 -11
  77. package/out/src/storage/remoting/StorageClient.d.ts.map +1 -1
  78. package/out/src/storage/remoting/StorageClient.js.map +1 -1
  79. package/out/src/storage/schema/entities/Certificate.d.ts +9 -9
  80. package/out/src/storage/schema/entities/Certificate.d.ts.map +1 -1
  81. package/out/src/storage/schema/entities/Certificate.js +5 -5
  82. package/out/src/storage/schema/entities/Certificate.js.map +1 -1
  83. package/out/src/storage/schema/entities/CertificateField.d.ts +9 -9
  84. package/out/src/storage/schema/entities/CertificateField.d.ts.map +1 -1
  85. package/out/src/storage/schema/entities/CertificateField.js +5 -5
  86. package/out/src/storage/schema/entities/CertificateField.js.map +1 -1
  87. package/out/src/storage/schema/entities/Commission.d.ts +9 -9
  88. package/out/src/storage/schema/entities/Commission.d.ts.map +1 -1
  89. package/out/src/storage/schema/entities/Commission.js +5 -5
  90. package/out/src/storage/schema/entities/Commission.js.map +1 -1
  91. package/out/src/storage/schema/entities/EntityBase.d.ts +1 -1
  92. package/out/src/storage/schema/entities/MergeEntity.d.ts +6 -7
  93. package/out/src/storage/schema/entities/MergeEntity.d.ts.map +1 -1
  94. package/out/src/storage/schema/entities/MergeEntity.js.map +1 -1
  95. package/out/src/storage/schema/entities/Output.d.ts +9 -9
  96. package/out/src/storage/schema/entities/Output.d.ts.map +1 -1
  97. package/out/src/storage/schema/entities/Output.js +5 -5
  98. package/out/src/storage/schema/entities/Output.js.map +1 -1
  99. package/out/src/storage/schema/entities/OutputBasket.d.ts +9 -9
  100. package/out/src/storage/schema/entities/OutputBasket.d.ts.map +1 -1
  101. package/out/src/storage/schema/entities/OutputBasket.js +5 -5
  102. package/out/src/storage/schema/entities/OutputBasket.js.map +1 -1
  103. package/out/src/storage/schema/entities/OutputTag.d.ts +9 -9
  104. package/out/src/storage/schema/entities/OutputTag.d.ts.map +1 -1
  105. package/out/src/storage/schema/entities/OutputTag.js +5 -5
  106. package/out/src/storage/schema/entities/OutputTag.js.map +1 -1
  107. package/out/src/storage/schema/entities/OutputTagMap.d.ts +9 -9
  108. package/out/src/storage/schema/entities/OutputTagMap.d.ts.map +1 -1
  109. package/out/src/storage/schema/entities/OutputTagMap.js +5 -5
  110. package/out/src/storage/schema/entities/OutputTagMap.js.map +1 -1
  111. package/out/src/storage/schema/entities/ProvenTx.d.ts +11 -11
  112. package/out/src/storage/schema/entities/ProvenTx.d.ts.map +1 -1
  113. package/out/src/storage/schema/entities/ProvenTx.js +11 -11
  114. package/out/src/storage/schema/entities/ProvenTx.js.map +1 -1
  115. package/out/src/storage/schema/entities/ProvenTxReq.d.ts +19 -19
  116. package/out/src/storage/schema/entities/ProvenTxReq.d.ts.map +1 -1
  117. package/out/src/storage/schema/entities/ProvenTxReq.js +13 -13
  118. package/out/src/storage/schema/entities/ProvenTxReq.js.map +1 -1
  119. package/out/src/storage/schema/entities/SyncState.d.ts +11 -11
  120. package/out/src/storage/schema/entities/SyncState.d.ts.map +1 -1
  121. package/out/src/storage/schema/entities/SyncState.js +27 -27
  122. package/out/src/storage/schema/entities/SyncState.js.map +1 -1
  123. package/out/src/storage/schema/entities/Transaction.d.ts +11 -11
  124. package/out/src/storage/schema/entities/Transaction.d.ts.map +1 -1
  125. package/out/src/storage/schema/entities/Transaction.js +6 -6
  126. package/out/src/storage/schema/entities/Transaction.js.map +1 -1
  127. package/out/src/storage/schema/entities/TxLabel.d.ts +9 -9
  128. package/out/src/storage/schema/entities/TxLabel.d.ts.map +1 -1
  129. package/out/src/storage/schema/entities/TxLabel.js +5 -5
  130. package/out/src/storage/schema/entities/TxLabel.js.map +1 -1
  131. package/out/src/storage/schema/entities/TxLabelMap.d.ts +9 -9
  132. package/out/src/storage/schema/entities/TxLabelMap.d.ts.map +1 -1
  133. package/out/src/storage/schema/entities/TxLabelMap.js +5 -5
  134. package/out/src/storage/schema/entities/TxLabelMap.js.map +1 -1
  135. package/out/src/storage/schema/entities/User.d.ts +9 -9
  136. package/out/src/storage/schema/entities/User.d.ts.map +1 -1
  137. package/out/src/storage/schema/entities/User.js +5 -5
  138. package/out/src/storage/schema/entities/User.js.map +1 -1
  139. package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.js +20 -307
  140. package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.js.map +1 -1
  141. package/out/src/storage/schema/entities/__tests/CertificateTests.test.js +17 -158
  142. package/out/src/storage/schema/entities/__tests/CertificateTests.test.js.map +1 -1
  143. package/out/src/storage/schema/entities/__tests/CommissionTests.test.js +23 -309
  144. package/out/src/storage/schema/entities/__tests/CommissionTests.test.js.map +1 -1
  145. package/out/src/storage/schema/entities/__tests/OutputBasketTests.test.js +19 -306
  146. package/out/src/storage/schema/entities/__tests/OutputBasketTests.test.js.map +1 -1
  147. package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.js +19 -306
  148. package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.js.map +1 -1
  149. package/out/src/storage/schema/entities/__tests/OutputTagTests.test.js +23 -237
  150. package/out/src/storage/schema/entities/__tests/OutputTagTests.test.js.map +1 -1
  151. package/out/src/storage/schema/entities/__tests/OutputTests.test.js +20 -233
  152. package/out/src/storage/schema/entities/__tests/OutputTests.test.js.map +1 -1
  153. package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.js +27 -98
  154. package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.js.map +1 -1
  155. package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js +25 -241
  156. package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js.map +1 -1
  157. package/out/src/storage/schema/entities/__tests/SyncStateTests.test.js +38 -112
  158. package/out/src/storage/schema/entities/__tests/SyncStateTests.test.js.map +1 -1
  159. package/out/src/storage/schema/entities/__tests/TransactionTests.test.js +39 -323
  160. package/out/src/storage/schema/entities/__tests/TransactionTests.test.js.map +1 -1
  161. package/out/src/storage/schema/entities/__tests/TxLabelMapTests.test.js +31 -169
  162. package/out/src/storage/schema/entities/__tests/TxLabelMapTests.test.js.map +1 -1
  163. package/out/src/storage/schema/entities/__tests/TxLabelTests.test.js +16 -159
  164. package/out/src/storage/schema/entities/__tests/TxLabelTests.test.js.map +1 -1
  165. package/out/src/storage/schema/entities/__tests/usersTests.test.js +21 -168
  166. package/out/src/storage/schema/entities/__tests/usersTests.test.js.map +1 -1
  167. package/out/src/storage/schema/tables/Certificate.d.ts +4 -4
  168. package/out/src/storage/schema/tables/Certificate.d.ts.map +1 -1
  169. package/out/src/storage/schema/tables/CertificateField.d.ts +1 -1
  170. package/out/src/storage/schema/tables/CertificateField.d.ts.map +1 -1
  171. package/out/src/storage/schema/tables/Commission.d.ts +1 -1
  172. package/out/src/storage/schema/tables/Commission.d.ts.map +1 -1
  173. package/out/src/storage/schema/tables/MonitorEvent.d.ts +1 -1
  174. package/out/src/storage/schema/tables/MonitorEvent.d.ts.map +1 -1
  175. package/out/src/storage/schema/tables/Output.d.ts +5 -5
  176. package/out/src/storage/schema/tables/Output.d.ts.map +1 -1
  177. package/out/src/storage/schema/tables/OutputBasket.d.ts +1 -1
  178. package/out/src/storage/schema/tables/OutputBasket.d.ts.map +1 -1
  179. package/out/src/storage/schema/tables/OutputTag.d.ts +1 -1
  180. package/out/src/storage/schema/tables/OutputTag.d.ts.map +1 -1
  181. package/out/src/storage/schema/tables/OutputTagMap.d.ts +1 -1
  182. package/out/src/storage/schema/tables/OutputTagMap.d.ts.map +1 -1
  183. package/out/src/storage/schema/tables/ProvenTx.d.ts +1 -1
  184. package/out/src/storage/schema/tables/ProvenTx.d.ts.map +1 -1
  185. package/out/src/storage/schema/tables/ProvenTxReq.d.ts +2 -2
  186. package/out/src/storage/schema/tables/ProvenTxReq.d.ts.map +1 -1
  187. package/out/src/storage/schema/tables/SyncState.d.ts +1 -1
  188. package/out/src/storage/schema/tables/SyncState.d.ts.map +1 -1
  189. package/out/src/storage/schema/tables/{Settings.d.ts → TableSettings.d.ts} +2 -2
  190. package/out/src/storage/schema/tables/TableSettings.d.ts.map +1 -0
  191. package/out/src/storage/schema/tables/{Settings.js → TableSettings.js} +1 -1
  192. package/out/src/storage/schema/tables/TableSettings.js.map +1 -0
  193. package/out/src/storage/schema/tables/Transaction.d.ts +1 -1
  194. package/out/src/storage/schema/tables/Transaction.d.ts.map +1 -1
  195. package/out/src/storage/schema/tables/TxLabel.d.ts +1 -1
  196. package/out/src/storage/schema/tables/TxLabel.d.ts.map +1 -1
  197. package/out/src/storage/schema/tables/TxLabelMap.d.ts +1 -1
  198. package/out/src/storage/schema/tables/TxLabelMap.d.ts.map +1 -1
  199. package/out/src/storage/schema/tables/User.d.ts +1 -1
  200. package/out/src/storage/schema/tables/User.d.ts.map +1 -1
  201. package/out/src/storage/schema/tables/index.d.ts +1 -1
  202. package/out/src/storage/schema/tables/index.d.ts.map +1 -1
  203. package/out/src/storage/schema/tables/index.js +1 -1
  204. package/out/src/storage/schema/tables/index.js.map +1 -1
  205. package/out/src/storage/sync/StorageMySQLDojoReader.d.ts +17 -17
  206. package/out/src/storage/sync/StorageMySQLDojoReader.d.ts.map +1 -1
  207. package/out/src/storage/sync/StorageMySQLDojoReader.js +2 -2
  208. package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -1
  209. package/out/test/Wallet/certificate/listCertificates.test.js.map +1 -1
  210. package/out/test/Wallet/live/walletLive.man.test.js +1 -1
  211. package/out/test/Wallet/live/walletLive.man.test.js.map +1 -1
  212. package/out/test/monitor/Monitor.test.js +7 -7
  213. package/out/test/monitor/Monitor.test.js.map +1 -1
  214. package/out/test/storage/StorageMySQLDojoReader.man.test.js +1 -1
  215. package/out/test/storage/StorageMySQLDojoReader.man.test.js.map +1 -1
  216. package/out/test/storage/insert.test.js.map +1 -1
  217. package/out/test/storage/update.test.js.map +1 -1
  218. package/out/test/storage/update2.test.js.map +1 -1
  219. package/out/test/utils/TestUtilsWalletStorage.d.ts +56 -56
  220. package/out/test/utils/TestUtilsWalletStorage.d.ts.map +1 -1
  221. package/out/test/utils/TestUtilsWalletStorage.js +11 -4
  222. package/out/test/utils/TestUtilsWalletStorage.js.map +1 -1
  223. package/out/test/wallet/action/createActionToGenerateBeefs.man.test.js.map +1 -1
  224. package/out/tsconfig.all.tsbuildinfo +1 -1
  225. package/package.json +2 -2
  226. package/src/monitor/tasks/TaskCheckForProofs.ts +11 -10
  227. package/src/monitor/tasks/TaskSendWaiting.ts +5 -5
  228. package/src/sdk/StorageSyncReader.ts +47 -30
  229. package/src/sdk/StorageSyncReaderWriter.ts +77 -63
  230. package/src/sdk/WalletStorage.interfaces.ts +55 -36
  231. package/src/signer/methods/acquireDirectCertificate.ts +2 -2
  232. package/src/storage/StorageKnex.ts +124 -104
  233. package/src/storage/StorageProvider.ts +43 -30
  234. package/src/storage/StorageReader.ts +36 -21
  235. package/src/storage/StorageReaderWriter.ts +78 -65
  236. package/src/storage/StorageSyncReader.ts +34 -17
  237. package/src/storage/WalletStorageManager.ts +17 -12
  238. package/src/storage/index.all.ts +2 -2
  239. package/src/storage/index.client.ts +2 -2
  240. package/src/storage/methods/attemptToPostReqsToNetwork.ts +3 -3
  241. package/src/storage/methods/createAction.ts +29 -26
  242. package/src/storage/methods/getBeefForTransaction.ts +3 -3
  243. package/src/storage/methods/getSyncChunk.ts +28 -13
  244. package/src/storage/methods/internalizeAction.ts +19 -17
  245. package/src/storage/methods/listActions.ts +5 -5
  246. package/src/storage/methods/listCertificates.ts +2 -2
  247. package/src/storage/methods/listOutputs.ts +5 -5
  248. package/src/storage/methods/processAction.ts +21 -17
  249. package/src/storage/methods/purgeData.ts +17 -11
  250. package/src/storage/methods/reviewStatus.ts +4 -4
  251. package/src/storage/remoting/StorageClient.ts +28 -18
  252. package/src/storage/schema/entities/Certificate.ts +16 -17
  253. package/src/storage/schema/entities/CertificateField.ts +17 -18
  254. package/src/storage/schema/entities/Commission.ts +16 -20
  255. package/src/storage/schema/entities/EntityBase.ts +1 -1
  256. package/src/storage/schema/entities/MergeEntity.ts +7 -7
  257. package/src/storage/schema/entities/Output.ts +16 -20
  258. package/src/storage/schema/entities/OutputBasket.ts +16 -17
  259. package/src/storage/schema/entities/OutputTag.ts +16 -20
  260. package/src/storage/schema/entities/OutputTagMap.ts +17 -18
  261. package/src/storage/schema/entities/ProvenTx.ts +24 -28
  262. package/src/storage/schema/entities/ProvenTxReq.ts +42 -45
  263. package/src/storage/schema/entities/SyncState.ts +61 -38
  264. package/src/storage/schema/entities/Transaction.ts +23 -23
  265. package/src/storage/schema/entities/TxLabel.ts +16 -17
  266. package/src/storage/schema/entities/TxLabelMap.ts +16 -20
  267. package/src/storage/schema/entities/User.ts +15 -19
  268. package/src/storage/schema/entities/__tests/CertificateFieldTests.test.ts +39 -318
  269. package/src/storage/schema/entities/__tests/CertificateTests.test.ts +29 -169
  270. package/src/storage/schema/entities/__tests/CommissionTests.test.ts +47 -325
  271. package/src/storage/schema/entities/__tests/OutputBasketTests.test.ts +35 -316
  272. package/src/storage/schema/entities/__tests/OutputTagMapTests.test.ts +38 -318
  273. package/src/storage/schema/entities/__tests/OutputTagTests.test.ts +36 -249
  274. package/src/storage/schema/entities/__tests/OutputTests.test.ts +30 -244
  275. package/src/storage/schema/entities/__tests/ProvenTxReqTests.test.ts +35 -101
  276. package/src/storage/schema/entities/__tests/ProvenTxTests.test.ts +27 -243
  277. package/src/storage/schema/entities/__tests/SyncStateTests.test.ts +54 -122
  278. package/src/storage/schema/entities/__tests/TransactionTests.test.ts +53 -333
  279. package/src/storage/schema/entities/__tests/TxLabelMapTests.test.ts +44 -177
  280. package/src/storage/schema/entities/__tests/TxLabelTests.test.ts +19 -163
  281. package/src/storage/schema/entities/__tests/usersTests.test.ts +31 -179
  282. package/src/storage/schema/tables/Certificate.ts +4 -4
  283. package/src/storage/schema/tables/CertificateField.ts +1 -1
  284. package/src/storage/schema/tables/Commission.ts +1 -1
  285. package/src/storage/schema/tables/MonitorEvent.ts +1 -1
  286. package/src/storage/schema/tables/Output.ts +5 -5
  287. package/src/storage/schema/tables/OutputBasket.ts +1 -1
  288. package/src/storage/schema/tables/OutputTag.ts +1 -1
  289. package/src/storage/schema/tables/OutputTagMap.ts +1 -1
  290. package/src/storage/schema/tables/ProvenTx.ts +1 -1
  291. package/src/storage/schema/tables/ProvenTxReq.ts +2 -2
  292. package/src/storage/schema/tables/SyncState.ts +1 -1
  293. package/src/storage/schema/tables/{Settings.ts → TableSettings.ts} +3 -1
  294. package/src/storage/schema/tables/Transaction.ts +1 -1
  295. package/src/storage/schema/tables/TxLabel.ts +1 -1
  296. package/src/storage/schema/tables/TxLabelMap.ts +1 -1
  297. package/src/storage/schema/tables/User.ts +1 -1
  298. package/src/storage/schema/tables/index.ts +1 -1
  299. package/src/storage/sync/StorageMySQLDojoReader.ts +67 -50
  300. package/test/Wallet/certificate/listCertificates.test.ts +12 -8
  301. package/test/Wallet/live/walletLive.man.test.ts +6 -6
  302. package/test/monitor/Monitor.test.ts +8 -8
  303. package/test/storage/StorageMySQLDojoReader.man.test.ts +1 -1
  304. package/test/storage/insert.test.ts +2 -2
  305. package/test/storage/update.test.ts +30 -30
  306. package/test/storage/update2.test.ts +23 -24
  307. package/test/utils/TestUtilsWalletStorage.ts +103 -82
  308. package/test/wallet/action/createActionToGenerateBeefs.man.test.ts +1 -2
  309. package/ts2md.json +1 -1
  310. package/out/src/storage/index.db.d.ts +0 -1
  311. package/out/src/storage/index.db.d.ts.map +0 -1
  312. package/out/src/storage/index.db.js +0 -2
  313. package/out/src/storage/index.db.js.map +0 -1
  314. package/out/src/storage/schema/tables/Settings.d.ts.map +0 -1
  315. package/out/src/storage/schema/tables/Settings.js.map +0 -1
  316. package/src/storage/index.db.ts +0 -0
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const src_1 = require("../../../../../src");
3
4
  const TestUtilsWalletStorage_1 = require("../../../../../test/utils/TestUtilsWalletStorage");
4
5
  const ProvenTx_1 = require("../../../../../src/storage/schema/entities/ProvenTx");
5
6
  describe('ProvenTx class method tests', () => {
@@ -105,7 +106,7 @@ describe('ProvenTx class method tests', () => {
105
106
  nLockTimeIsFinal: async () => true
106
107
  };
107
108
  // Call the method under test
108
- const result = await ProvenTx_1.ProvenTx.fromTxid(txid, services);
109
+ const result = await ProvenTx_1.EntityProvenTx.fromTxid(txid, services);
109
110
  // Validate the ProvenTx result
110
111
  expect(result.proven).toBeDefined();
111
112
  expect(result.proven.txid).toBe(txid);
@@ -121,7 +122,7 @@ describe('ProvenTx class method tests', () => {
121
122
  const txid = 'missing-txid';
122
123
  const services = ctx.services;
123
124
  // Call the method under test
124
- const result = await ProvenTx_1.ProvenTx.fromTxid(txid, services);
125
+ const result = await ProvenTx_1.EntityProvenTx.fromTxid(txid, services);
125
126
  // Validate that ProvenTx could not be created
126
127
  expect(result.proven).toBeUndefined();
127
128
  expect(result.rawTx).toBeUndefined();
@@ -134,7 +135,7 @@ describe('ProvenTx class method tests', () => {
134
135
  const rawTx = await services.getRawTx(txid);
135
136
  const merkleProof = await services.getMerklePath(txid);
136
137
  // Call the method under test
137
- const result = await ProvenTx_1.ProvenTx.fromTxid(txid, services);
138
+ const result = await ProvenTx_1.EntityProvenTx.fromTxid(txid, services);
138
139
  // Validate the ProvenTx result
139
140
  expect(result.proven).toBeUndefined();
140
141
  expect(result.rawTx).toEqual(rawTx.rawTx);
@@ -154,7 +155,7 @@ describe('ProvenTx class method tests', () => {
154
155
  merkleRoot: 'mock-merkle-root'
155
156
  };
156
157
  // Initialize the ProvenTx entity with mock data
157
- const provenTx = new ProvenTx_1.ProvenTx(mockData);
158
+ const provenTx = new ProvenTx_1.EntityProvenTx(mockData);
158
159
  // Validate getters
159
160
  expect(provenTx.provenTxId).toBe(mockData.provenTxId);
160
161
  expect(provenTx.created_at).toEqual(mockData.created_at);
@@ -191,7 +192,7 @@ describe('ProvenTx class method tests', () => {
191
192
  expect(provenTx.merkleRoot).toBe('new-merkle-root');
192
193
  // Validate overridden methods
193
194
  expect(provenTx.id).toBe(2);
194
- expect(provenTx.entityName).toBe('ProvenTx');
195
+ expect(provenTx.entityName).toBe('provenTx');
195
196
  expect(provenTx.entityTable).toBe('proven_txs');
196
197
  // Update id via overridden setter
197
198
  provenTx.id = 3;
@@ -202,7 +203,7 @@ describe('ProvenTx class method tests', () => {
202
203
  const ctx1 = ctxs[0];
203
204
  const ctx2 = ctxs2[0];
204
205
  // Insert a ProvenTx into the first database
205
- const provenTx1 = new ProvenTx_1.ProvenTx({
206
+ const provenTx1 = new ProvenTx_1.EntityProvenTx({
206
207
  provenTxId: 401,
207
208
  txid: 'valid-txid',
208
209
  created_at: new Date('2023-01-01'),
@@ -216,7 +217,7 @@ describe('ProvenTx class method tests', () => {
216
217
  });
217
218
  await ctx1.activeStorage.insertProvenTx(provenTx1.toApi());
218
219
  // Insert a matching ProvenTx into the second database
219
- const provenTx2 = new ProvenTx_1.ProvenTx({
220
+ const provenTx2 = new ProvenTx_1.EntityProvenTx({
220
221
  provenTxId: 401,
221
222
  txid: 'valid-txid',
222
223
  created_at: new Date('2023-01-01'),
@@ -229,87 +230,14 @@ describe('ProvenTx class method tests', () => {
229
230
  merkleRoot: 'merkle-root'
230
231
  });
231
232
  await ctx2.activeStorage.insertProvenTx(provenTx2.toApi());
232
- // Create a valid SyncMap
233
- const syncMap = {
234
- provenTx: {
235
- idMap: { [provenTx1.provenTxId]: provenTx2.provenTxId },
236
- entityName: 'ProvenTx',
237
- maxUpdated_at: undefined,
238
- count: 1
239
- },
240
- transaction: {
241
- idMap: {},
242
- entityName: 'Transaction',
243
- maxUpdated_at: undefined,
244
- count: 0
245
- },
246
- outputBasket: {
247
- idMap: {},
248
- entityName: 'OutputBasket',
249
- maxUpdated_at: undefined,
250
- count: 0
251
- },
252
- provenTxReq: {
253
- idMap: {},
254
- entityName: 'ProvenTxReq',
255
- maxUpdated_at: undefined,
256
- count: 0
257
- },
258
- txLabel: {
259
- idMap: {},
260
- entityName: 'TxLabel',
261
- maxUpdated_at: undefined,
262
- count: 0
263
- },
264
- txLabelMap: {
265
- idMap: {},
266
- entityName: 'TxLabelMap',
267
- maxUpdated_at: undefined,
268
- count: 0
269
- },
270
- output: {
271
- idMap: {},
272
- entityName: 'Output',
273
- maxUpdated_at: undefined,
274
- count: 0
275
- },
276
- outputTag: {
277
- idMap: {},
278
- entityName: 'OutputTag',
279
- maxUpdated_at: undefined,
280
- count: 0
281
- },
282
- outputTagMap: {
283
- idMap: {},
284
- entityName: 'OutputTagMap',
285
- maxUpdated_at: undefined,
286
- count: 0
287
- },
288
- certificate: {
289
- idMap: {},
290
- entityName: 'Certificate',
291
- maxUpdated_at: undefined,
292
- count: 0
293
- },
294
- certificateField: {
295
- idMap: {},
296
- entityName: 'CertificateField',
297
- maxUpdated_at: undefined,
298
- count: 0
299
- },
300
- commission: {
301
- idMap: {},
302
- entityName: 'Commission',
303
- maxUpdated_at: undefined,
304
- count: 0
305
- }
306
- };
233
+ const syncMap = (0, src_1.createSyncMap)();
234
+ syncMap.provenTx.idMap = { [provenTx1.provenTxId]: provenTx2.provenTxId };
307
235
  // Verify the ProvenTx entities match
308
236
  expect(provenTx1.equals(provenTx2.toApi(), syncMap)).toBe(true);
309
237
  });
310
238
  // Test: equals identifies non-matching txid
311
239
  test('5_equals: identifies non-matching txid', async () => {
312
- const provenTx1 = new ProvenTx_1.ProvenTx({
240
+ const provenTx1 = new ProvenTx_1.EntityProvenTx({
313
241
  provenTxId: 102,
314
242
  txid: 'txid1',
315
243
  created_at: new Date('2023-01-01'),
@@ -321,7 +249,7 @@ describe('ProvenTx class method tests', () => {
321
249
  blockHash: 'block-hash',
322
250
  merkleRoot: 'merkle-root'
323
251
  });
324
- const provenTx2 = new ProvenTx_1.ProvenTx({
252
+ const provenTx2 = new ProvenTx_1.EntityProvenTx({
325
253
  provenTxId: 103,
326
254
  txid: 'txid2',
327
255
  created_at: new Date('2023-01-01'),
@@ -337,7 +265,7 @@ describe('ProvenTx class method tests', () => {
337
265
  });
338
266
  // Test: equals identifies non-matching height
339
267
  test('6_equals: identifies non-matching height', async () => {
340
- const provenTx1 = new ProvenTx_1.ProvenTx({
268
+ const provenTx1 = new ProvenTx_1.EntityProvenTx({
341
269
  provenTxId: 104,
342
270
  txid: 'valid-txid',
343
271
  created_at: new Date('2023-01-01'),
@@ -349,7 +277,7 @@ describe('ProvenTx class method tests', () => {
349
277
  blockHash: 'block-hash',
350
278
  merkleRoot: 'merkle-root'
351
279
  });
352
- const provenTx2 = new ProvenTx_1.ProvenTx({
280
+ const provenTx2 = new ProvenTx_1.EntityProvenTx({
353
281
  provenTxId: 105,
354
282
  txid: 'valid-txid',
355
283
  created_at: new Date('2023-01-01'),
@@ -365,7 +293,7 @@ describe('ProvenTx class method tests', () => {
365
293
  });
366
294
  // Test: equals identifies non-matching merklePath
367
295
  test('7_equals: identifies non-matching merklePath', async () => {
368
- const provenTx1 = new ProvenTx_1.ProvenTx({
296
+ const provenTx1 = new ProvenTx_1.EntityProvenTx({
369
297
  provenTxId: 106,
370
298
  txid: 'valid-txid',
371
299
  created_at: new Date('2023-01-01'),
@@ -377,7 +305,7 @@ describe('ProvenTx class method tests', () => {
377
305
  blockHash: 'block-hash',
378
306
  merkleRoot: 'merkle-root'
379
307
  });
380
- const provenTx2 = new ProvenTx_1.ProvenTx({
308
+ const provenTx2 = new ProvenTx_1.EntityProvenTx({
381
309
  provenTxId: 107,
382
310
  txid: 'valid-txid',
383
311
  created_at: new Date('2023-01-01'),
@@ -393,7 +321,7 @@ describe('ProvenTx class method tests', () => {
393
321
  });
394
322
  // Test: equals identifies non-matching syncMap
395
323
  test('8_equals: identifies non-matching syncMap', async () => {
396
- const provenTx1 = new ProvenTx_1.ProvenTx({
324
+ const provenTx1 = new ProvenTx_1.EntityProvenTx({
397
325
  provenTxId: 108,
398
326
  txid: 'valid-txid',
399
327
  created_at: new Date('2023-01-01'),
@@ -405,7 +333,7 @@ describe('ProvenTx class method tests', () => {
405
333
  blockHash: 'block-hash',
406
334
  merkleRoot: 'merkle-root'
407
335
  });
408
- const provenTx2 = new ProvenTx_1.ProvenTx({
336
+ const provenTx2 = new ProvenTx_1.EntityProvenTx({
409
337
  provenTxId: 109,
410
338
  txid: 'valid-txid',
411
339
  created_at: new Date('2023-01-01'),
@@ -417,87 +345,15 @@ describe('ProvenTx class method tests', () => {
417
345
  blockHash: 'block-hash',
418
346
  merkleRoot: 'merkle-root'
419
347
  });
420
- const syncMap = {
421
- provenTx: {
422
- idMap: { 108: 999 },
423
- entityName: 'ProvenTx',
424
- maxUpdated_at: undefined,
425
- count: 1
426
- },
427
- transaction: {
428
- idMap: {},
429
- entityName: 'Transaction',
430
- maxUpdated_at: undefined,
431
- count: 0
432
- },
433
- outputBasket: {
434
- idMap: {},
435
- entityName: 'OutputBasket',
436
- maxUpdated_at: undefined,
437
- count: 0
438
- },
439
- provenTxReq: {
440
- idMap: {},
441
- entityName: 'ProvenTxReq',
442
- maxUpdated_at: undefined,
443
- count: 0
444
- },
445
- txLabel: {
446
- idMap: {},
447
- entityName: 'TxLabel',
448
- maxUpdated_at: undefined,
449
- count: 0
450
- },
451
- txLabelMap: {
452
- idMap: {},
453
- entityName: 'TxLabelMap',
454
- maxUpdated_at: undefined,
455
- count: 0
456
- },
457
- output: {
458
- idMap: {},
459
- entityName: 'Output',
460
- maxUpdated_at: undefined,
461
- count: 0
462
- },
463
- outputTag: {
464
- idMap: {},
465
- entityName: 'OutputTag',
466
- maxUpdated_at: undefined,
467
- count: 0
468
- },
469
- outputTagMap: {
470
- idMap: {},
471
- entityName: 'OutputTagMap',
472
- maxUpdated_at: undefined,
473
- count: 0
474
- },
475
- certificate: {
476
- idMap: {},
477
- entityName: 'Certificate',
478
- maxUpdated_at: undefined,
479
- count: 0
480
- },
481
- certificateField: {
482
- idMap: {},
483
- entityName: 'CertificateField',
484
- maxUpdated_at: undefined,
485
- count: 0
486
- },
487
- commission: {
488
- idMap: {},
489
- entityName: 'Commission',
490
- maxUpdated_at: undefined,
491
- count: 0
492
- }
493
- };
348
+ const syncMap = (0, src_1.createSyncMap)();
349
+ syncMap.provenTx.idMap = { 108: 999 };
494
350
  expect(provenTx1.equals(provenTx2.toApi(), syncMap)).toBe(false);
495
351
  });
496
352
  test('9_equals: provenTxId mismatch without syncMap', async () => {
497
353
  const ctx1 = ctxs[0];
498
354
  const ctx2 = ctxs2[0];
499
355
  // Insert a ProvenTx record into the first database
500
- const tx1 = new ProvenTx_1.ProvenTx({
356
+ const tx1 = new ProvenTx_1.EntityProvenTx({
501
357
  provenTxId: 405,
502
358
  txid: 'txid1',
503
359
  created_at: new Date('2023-01-01'),
@@ -511,7 +367,7 @@ describe('ProvenTx class method tests', () => {
511
367
  });
512
368
  await ctx1.activeStorage.insertProvenTx(tx1.toApi());
513
369
  // Insert a different ProvenTx record into the second database with a mismatched provenTxId
514
- const tx2 = new ProvenTx_1.ProvenTx({
370
+ const tx2 = new ProvenTx_1.EntityProvenTx({
515
371
  provenTxId: 406,
516
372
  txid: 'txid1',
517
373
  created_at: new Date('2023-01-01'),
@@ -530,7 +386,7 @@ describe('ProvenTx class method tests', () => {
530
386
  test('10_mergeExisting: always returns false', async () => {
531
387
  const ctx = ctxs[0];
532
388
  // Create a ProvenTx entity
533
- const provenTx = new ProvenTx_1.ProvenTx({
389
+ const provenTx = new ProvenTx_1.EntityProvenTx({
534
390
  provenTxId: 101,
535
391
  txid: 'txid1',
536
392
  created_at: new Date('2023-01-01'),
@@ -542,82 +398,10 @@ describe('ProvenTx class method tests', () => {
542
398
  blockHash: 'block-hash-1',
543
399
  merkleRoot: 'merkle-root-1'
544
400
  });
401
+ const mockSyncMap = (0, src_1.createSyncMap)();
402
+ mockSyncMap.provenTx.idMap = { [provenTx.provenTxId]: provenTx.provenTxId };
545
403
  // Create mock storage, syncMap, and trx token
546
404
  const mockStorage = ctx.activeStorage;
547
- const mockSyncMap = {
548
- provenTx: {
549
- idMap: { [provenTx.provenTxId]: provenTx.provenTxId },
550
- entityName: 'ProvenTx',
551
- maxUpdated_at: undefined,
552
- count: 1
553
- },
554
- transaction: {
555
- idMap: {},
556
- entityName: 'Transaction',
557
- maxUpdated_at: undefined,
558
- count: 0
559
- },
560
- outputBasket: {
561
- idMap: {},
562
- entityName: 'OutputBasket',
563
- maxUpdated_at: undefined,
564
- count: 0
565
- },
566
- provenTxReq: {
567
- idMap: {},
568
- entityName: 'ProvenTxReq',
569
- maxUpdated_at: undefined,
570
- count: 0
571
- },
572
- txLabel: {
573
- idMap: {},
574
- entityName: 'TxLabel',
575
- maxUpdated_at: undefined,
576
- count: 0
577
- },
578
- txLabelMap: {
579
- idMap: {},
580
- entityName: 'TxLabelMap',
581
- maxUpdated_at: undefined,
582
- count: 0
583
- },
584
- output: {
585
- idMap: {},
586
- entityName: 'Output',
587
- maxUpdated_at: undefined,
588
- count: 0
589
- },
590
- outputTag: {
591
- idMap: {},
592
- entityName: 'OutputTag',
593
- maxUpdated_at: undefined,
594
- count: 0
595
- },
596
- outputTagMap: {
597
- idMap: {},
598
- entityName: 'OutputTagMap',
599
- maxUpdated_at: undefined,
600
- count: 0
601
- },
602
- certificate: {
603
- idMap: {},
604
- entityName: 'Certificate',
605
- maxUpdated_at: undefined,
606
- count: 0
607
- },
608
- certificateField: {
609
- idMap: {},
610
- entityName: 'CertificateField',
611
- maxUpdated_at: undefined,
612
- count: 0
613
- },
614
- commission: {
615
- idMap: {},
616
- entityName: 'Commission',
617
- maxUpdated_at: undefined,
618
- count: 0
619
- }
620
- };
621
405
  const mockTrx = {};
622
406
  // Call the mergeExisting method
623
407
  const result = await provenTx.mergeExisting(mockStorage, new Date(), provenTx.toApi(), mockSyncMap, mockTrx);
@@ -1 +1 @@
1
- {"version":3,"file":"ProvenTxTests.test.js","sourceRoot":"","sources":["../../../../../../src/storage/schema/entities/__tests/ProvenTxTests.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProvenTxTests.test.js","sourceRoot":"","sources":["../../../../../../src/storage/schema/entities/__tests/ProvenTxTests.test.ts"],"names":[],"mappings":"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"}