@bopen-io/wallet-toolbox 2.15.0-bopen.1 → 2.15.0

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 (231) hide show
  1. package/CHANGELOG.md +183 -45
  2. package/README.md +134 -98
  3. package/docs/client.md +2947 -3080
  4. package/docs/monitor.md +154 -165
  5. package/docs/no-send-expiry.md +7 -2
  6. package/docs/services.md +822 -885
  7. package/docs/setup.md +1 -46
  8. package/docs/storage.md +1636 -1654
  9. package/docs/wallet.md +1975 -2132
  10. package/out/src/CWIStyleWalletManager.d.ts +36 -5
  11. package/out/src/CWIStyleWalletManager.d.ts.map +1 -1
  12. package/out/src/CWIStyleWalletManager.js +356 -60
  13. package/out/src/CWIStyleWalletManager.js.map +1 -1
  14. package/out/src/Setup.d.ts +0 -10
  15. package/out/src/Setup.d.ts.map +1 -1
  16. package/out/src/Setup.js +0 -24
  17. package/out/src/Setup.js.map +1 -1
  18. package/out/src/Wallet.d.ts.map +1 -1
  19. package/out/src/Wallet.js +8 -3
  20. package/out/src/Wallet.js.map +1 -1
  21. package/out/src/WalletAuthenticationManager.d.ts +3 -0
  22. package/out/src/WalletAuthenticationManager.d.ts.map +1 -1
  23. package/out/src/WalletAuthenticationManager.js +86 -3
  24. package/out/src/WalletAuthenticationManager.js.map +1 -1
  25. package/out/src/WalletPermissionsManager.d.ts +63 -9
  26. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  27. package/out/src/WalletPermissionsManager.js +213 -49
  28. package/out/src/WalletPermissionsManager.js.map +1 -1
  29. package/out/src/monitor/Monitor.js +1 -1
  30. package/out/src/monitor/Monitor.js.map +1 -1
  31. package/out/src/monitor/MonitorDaemon.d.ts +0 -2
  32. package/out/src/monitor/MonitorDaemon.d.ts.map +1 -1
  33. package/out/src/monitor/MonitorDaemon.js +1 -9
  34. package/out/src/monitor/MonitorDaemon.js.map +1 -1
  35. package/out/src/monitor/monitorValidation.d.ts +2 -1
  36. package/out/src/monitor/monitorValidation.d.ts.map +1 -1
  37. package/out/src/monitor/monitorValidation.js +2 -2
  38. package/out/src/monitor/monitorValidation.js.map +1 -1
  39. package/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -1
  40. package/out/src/monitor/tasks/TaskNewHeader.js +1 -1
  41. package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
  42. package/out/src/monitor/tasks/TaskReviewUtxos.d.ts.map +1 -1
  43. package/out/src/monitor/tasks/TaskReviewUtxos.js +2 -1
  44. package/out/src/monitor/tasks/TaskReviewUtxos.js.map +1 -1
  45. package/out/src/sdk/WERR_errors.d.ts +4 -0
  46. package/out/src/sdk/WERR_errors.d.ts.map +1 -1
  47. package/out/src/sdk/WERR_errors.js +4 -0
  48. package/out/src/sdk/WERR_errors.js.map +1 -1
  49. package/out/src/sdk/WalletErrorFromJson.d.ts.map +1 -1
  50. package/out/src/sdk/WalletErrorFromJson.js +23 -2
  51. package/out/src/sdk/WalletErrorFromJson.js.map +1 -1
  52. package/out/src/sdk/WalletStorage.interfaces.d.ts +11 -0
  53. package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
  54. package/out/src/sdk/types.d.ts +12 -1
  55. package/out/src/sdk/types.d.ts.map +1 -1
  56. package/out/src/sdk/types.js +19 -2
  57. package/out/src/sdk/types.js.map +1 -1
  58. package/out/src/services/Services.d.ts.map +1 -1
  59. package/out/src/services/Services.js +5 -3
  60. package/out/src/services/Services.js.map +1 -1
  61. package/out/src/services/chaintracker/BHServiceClient.js +2 -2
  62. package/out/src/services/chaintracker/BHServiceClient.js.map +1 -1
  63. package/out/src/services/chaintracker/chaintracks/Chaintracks.js +2 -2
  64. package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
  65. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -1
  66. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +3 -1
  67. package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -1
  68. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts.map +1 -1
  69. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js +3 -1
  70. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js.map +1 -1
  71. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +1 -1
  72. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
  73. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +1 -1
  74. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
  75. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js +1 -1
  76. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js.map +1 -1
  77. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
  78. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +2 -0
  79. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
  80. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +2 -2
  81. package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
  82. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +6 -6
  83. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
  84. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +2 -2
  85. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -1
  86. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts +0 -5
  87. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -1
  88. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +5 -13
  89. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -1
  90. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +1 -0
  91. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
  92. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +11 -3
  93. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
  94. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
  95. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +13 -9
  96. package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
  97. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
  98. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js +2 -2
  99. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
  100. package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.d.ts.map +1 -1
  101. package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.js +2 -2
  102. package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.js.map +1 -1
  103. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts +23 -5
  104. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
  105. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +58 -16
  106. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
  107. package/out/src/services/createDefaultWalletServicesOptions.d.ts +6 -3
  108. package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
  109. package/out/src/services/createDefaultWalletServicesOptions.js +18 -6
  110. package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
  111. package/out/src/services/networkConfig.d.ts +7 -0
  112. package/out/src/services/networkConfig.d.ts.map +1 -1
  113. package/out/src/services/networkConfig.js +25 -2
  114. package/out/src/services/networkConfig.js.map +1 -1
  115. package/out/src/services/providers/SdkWhatsOnChain.d.ts +8 -2
  116. package/out/src/services/providers/SdkWhatsOnChain.d.ts.map +1 -1
  117. package/out/src/services/providers/SdkWhatsOnChain.js +17 -6
  118. package/out/src/services/providers/SdkWhatsOnChain.js.map +1 -1
  119. package/out/src/services/validateMerklePathResult.d.ts +4 -3
  120. package/out/src/services/validateMerklePathResult.d.ts.map +1 -1
  121. package/out/src/services/validateMerklePathResult.js +6 -6
  122. package/out/src/services/validateMerklePathResult.js.map +1 -1
  123. package/out/src/signer/actionBatch/ActionBatchWorkspace.d.ts.map +1 -1
  124. package/out/src/signer/actionBatch/ActionBatchWorkspace.js +3 -2
  125. package/out/src/signer/actionBatch/ActionBatchWorkspace.js.map +1 -1
  126. package/out/src/signer/methods/createAction.d.ts +32 -1
  127. package/out/src/signer/methods/createAction.d.ts.map +1 -1
  128. package/out/src/signer/methods/createAction.js +56 -1
  129. package/out/src/signer/methods/createAction.js.map +1 -1
  130. package/out/src/signer/methods/internalizeAction.js +1 -1
  131. package/out/src/signer/methods/internalizeAction.js.map +1 -1
  132. package/out/src/signer/methods/signAction.js +8 -1
  133. package/out/src/signer/methods/signAction.js.map +1 -1
  134. package/out/src/storage/StorageIdb.js +4 -4
  135. package/out/src/storage/StorageIdb.js.map +1 -1
  136. package/out/src/storage/StorageKnex.d.ts +6 -5
  137. package/out/src/storage/StorageKnex.d.ts.map +1 -1
  138. package/out/src/storage/StorageKnex.js +321 -115
  139. package/out/src/storage/StorageKnex.js.map +1 -1
  140. package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
  141. package/out/src/storage/WalletStorageManager.js +5 -0
  142. package/out/src/storage/WalletStorageManager.js.map +1 -1
  143. package/out/src/storage/adminServer/adminServer.d.ts.map +1 -1
  144. package/out/src/storage/adminServer/adminServer.js +41 -3
  145. package/out/src/storage/adminServer/adminServer.js.map +1 -1
  146. package/out/src/storage/index.all.d.ts +0 -1
  147. package/out/src/storage/index.all.d.ts.map +1 -1
  148. package/out/src/storage/index.all.js +0 -1
  149. package/out/src/storage/index.all.js.map +1 -1
  150. package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
  151. package/out/src/storage/methods/ListOutputsSpecOp.js +84 -0
  152. package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
  153. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -1
  154. package/out/src/storage/methods/attemptToPostReqsToNetwork.js +7 -3
  155. package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
  156. package/out/src/storage/methods/createAction.d.ts +5 -0
  157. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  158. package/out/src/storage/methods/createAction.js +13 -6
  159. package/out/src/storage/methods/createAction.js.map +1 -1
  160. package/out/src/storage/methods/generateChange.d.ts +6 -0
  161. package/out/src/storage/methods/generateChange.d.ts.map +1 -1
  162. package/out/src/storage/methods/generateChange.js +10 -3
  163. package/out/src/storage/methods/generateChange.js.map +1 -1
  164. package/out/src/storage/methods/internalizeAction.d.ts +8 -1
  165. package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
  166. package/out/src/storage/methods/internalizeAction.js +106 -42
  167. package/out/src/storage/methods/internalizeAction.js.map +1 -1
  168. package/out/src/storage/methods/listActionsKnex.d.ts.map +1 -1
  169. package/out/src/storage/methods/listActionsKnex.js +1 -0
  170. package/out/src/storage/methods/listActionsKnex.js.map +1 -1
  171. package/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -1
  172. package/out/src/storage/methods/listOutputsKnex.js +2 -1
  173. package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
  174. package/out/src/storage/methods/noSendExpiry.d.ts.map +1 -1
  175. package/out/src/storage/methods/noSendExpiry.js +14 -4
  176. package/out/src/storage/methods/noSendExpiry.js.map +1 -1
  177. package/out/src/storage/methods/purgeData.d.ts.map +1 -1
  178. package/out/src/storage/methods/purgeData.js +3 -0
  179. package/out/src/storage/methods/purgeData.js.map +1 -1
  180. package/out/src/storage/methods/reviewStatus.d.ts.map +1 -1
  181. package/out/src/storage/methods/reviewStatus.js +3 -0
  182. package/out/src/storage/methods/reviewStatus.js.map +1 -1
  183. package/out/src/storage/portable/index.js +12 -38
  184. package/out/src/storage/portable/index.js.map +1 -1
  185. package/out/src/storage/remoting/StorageClientBase.d.ts.map +1 -1
  186. package/out/src/storage/remoting/StorageClientBase.js +15 -5
  187. package/out/src/storage/remoting/StorageClientBase.js.map +1 -1
  188. package/out/src/storage/remoting/StorageServer.d.ts +4 -17
  189. package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
  190. package/out/src/storage/remoting/StorageServer.js +25 -23
  191. package/out/src/storage/remoting/StorageServer.js.map +1 -1
  192. package/out/src/storage/remoting/syncChunkBinary.d.ts +10 -0
  193. package/out/src/storage/remoting/syncChunkBinary.d.ts.map +1 -1
  194. package/out/src/storage/remoting/syncChunkBinary.js +15 -11
  195. package/out/src/storage/remoting/syncChunkBinary.js.map +1 -1
  196. package/out/src/storage/schema/KnexMigrations.d.ts +3 -7
  197. package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
  198. package/out/src/storage/schema/KnexMigrations.js +86 -166
  199. package/out/src/storage/schema/KnexMigrations.js.map +1 -1
  200. package/out/src/storage/sync/liveSyncGuards.d.ts +11 -0
  201. package/out/src/storage/sync/liveSyncGuards.d.ts.map +1 -0
  202. package/out/src/storage/sync/liveSyncGuards.js +22 -0
  203. package/out/src/storage/sync/liveSyncGuards.js.map +1 -0
  204. package/out/src/utility/actionOutputAuthorizations.d.ts +10 -0
  205. package/out/src/utility/actionOutputAuthorizations.d.ts.map +1 -0
  206. package/out/src/utility/actionOutputAuthorizations.js +25 -0
  207. package/out/src/utility/actionOutputAuthorizations.js.map +1 -0
  208. package/out/src/utility/index.all.d.ts +1 -0
  209. package/out/src/utility/index.all.d.ts.map +1 -1
  210. package/out/src/utility/index.all.js +1 -0
  211. package/out/src/utility/index.all.js.map +1 -1
  212. package/out/src/utility/index.client.d.ts +1 -0
  213. package/out/src/utility/index.client.d.ts.map +1 -1
  214. package/out/src/utility/index.client.js +1 -0
  215. package/out/src/utility/index.client.js.map +1 -1
  216. package/out/src/utility/numericTotalOutputs.d.ts +7 -0
  217. package/out/src/utility/numericTotalOutputs.d.ts.map +1 -0
  218. package/out/src/utility/numericTotalOutputs.js +15 -0
  219. package/out/src/utility/numericTotalOutputs.js.map +1 -0
  220. package/out/src/utility/utilityHelpers.d.ts.map +1 -1
  221. package/out/src/utility/utilityHelpers.js +2 -0
  222. package/out/src/utility/utilityHelpers.js.map +1 -1
  223. package/package.json +19 -24
  224. package/out/src/storage/adminServer/reqReviewQuery.d.ts +0 -41
  225. package/out/src/storage/adminServer/reqReviewQuery.d.ts.map +0 -1
  226. package/out/src/storage/adminServer/reqReviewQuery.js +0 -67
  227. package/out/src/storage/adminServer/reqReviewQuery.js.map +0 -1
  228. package/out/src/storage/knexPostgres.d.ts +0 -16
  229. package/out/src/storage/knexPostgres.d.ts.map +0 -1
  230. package/out/src/storage/knexPostgres.js +0 -34
  231. package/out/src/storage/knexPostgres.js.map +0 -1
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.assertLiveSyncChainsMatch = assertLiveSyncChainsMatch;
4
+ exports.throwIfProcessSyncChunkError = throwIfProcessSyncChunkError;
5
+ const WERR_errors_1 = require("../../sdk/WERR_errors");
6
+ /**
7
+ * Live-sync handshake: compare reader and writer chain before any chunk moves.
8
+ */
9
+ function assertLiveSyncChainsMatch(readerSettings, writerSettings) {
10
+ if (readerSettings.chain !== writerSettings.chain) {
11
+ throw new WERR_errors_1.WERR_NETWORK_CHAIN(`Configured network chain is invalid or does not match across services. Reader '${readerSettings.storageName}' is '${String(readerSettings.chain)}'; writer '${writerSettings.storageName}' is '${String(writerSettings.chain)}'.`);
12
+ }
13
+ }
14
+ /**
15
+ * Honor a custom writer's non-throwing `ProcessSyncChunkResult.error`.
16
+ */
17
+ function throwIfProcessSyncChunkError(result) {
18
+ if (result.error != null) {
19
+ throw result.error;
20
+ }
21
+ }
22
+ //# sourceMappingURL=liveSyncGuards.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"liveSyncGuards.js","sourceRoot":"","sources":["../../../../src/storage/sync/liveSyncGuards.ts"],"names":[],"mappings":";;;;AAAA,uDAA0D;AAI1D;;GAEG;AACH,mCAA0C,cAA6B,EAAE,cAA6B;IACpG,IAAI,cAAc,CAAC,KAAK,KAAK,cAAc,CAAC,KAAK,EAAE,CAAC;QAClD,MAAM,IAAI,gCAAkB,CAC1B,kFAAkF,cAAc,CAAC,WAAW,SAAS,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,cAAc,cAAc,CAAC,WAAW,SAAS,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CACnO,CAAA;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,sCAA6C,MAA8B;IACzE,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,MAAM,CAAC,KAAK,CAAA;IACpB,CAAC;AACH,CAAC"}
@@ -0,0 +1,10 @@
1
+ interface BoundActionOutputAuthorization {
2
+ outputIndex: number;
3
+ lockingScript: string;
4
+ satoshis: number;
5
+ }
6
+ export declare function setActionOutputAuthorizations(result: object, outputs: ReadonlyArray<BoundActionOutputAuthorization>): void;
7
+ export declare function getActionOutputAuthorizations(result: object): BoundActionOutputAuthorization[];
8
+ export declare function copyActionOutputAuthorizations(source: object, target: object): void;
9
+ export {};
10
+ //# sourceMappingURL=actionOutputAuthorizations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actionOutputAuthorizations.d.ts","sourceRoot":"","sources":["../../../src/utility/actionOutputAuthorizations.ts"],"names":[],"mappings":"AAAA,UAAU,8BAA8B;IACtC,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAUD,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,aAAa,CAAC,8BAA8B,CAAC,GACrD,IAAI,CAEN;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,GAAG,8BAA8B,EAAE,CAG9F;AAED,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAGnF"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setActionOutputAuthorizations = setActionOutputAuthorizations;
4
+ exports.getActionOutputAuthorizations = getActionOutputAuthorizations;
5
+ exports.copyActionOutputAuthorizations = copyActionOutputAuthorizations;
6
+ // Internal cooperation between trusted local signer/permission code, not a
7
+ // sandbox for executable plugins. Remote BRC-100 fields and serialized results
8
+ // cannot populate this private registry; labels alone never confer authority.
9
+ const authorizations = new WeakMap();
10
+ const get = WeakMap.prototype.get;
11
+ const set = WeakMap.prototype.set;
12
+ const apply = Reflect.apply;
13
+ function setActionOutputAuthorizations(result, outputs) {
14
+ apply(set, authorizations, [result, outputs.map(output => Object.freeze({ ...output }))]);
15
+ }
16
+ function getActionOutputAuthorizations(result) {
17
+ const outputs = apply(get, authorizations, [result]);
18
+ return outputs == null ? [] : outputs.map(output => ({ ...output }));
19
+ }
20
+ function copyActionOutputAuthorizations(source, target) {
21
+ const outputs = apply(get, authorizations, [source]);
22
+ if (outputs != null)
23
+ apply(set, authorizations, [target, outputs]);
24
+ }
25
+ //# sourceMappingURL=actionOutputAuthorizations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actionOutputAuthorizations.js","sourceRoot":"","sources":["../../../src/utility/actionOutputAuthorizations.ts"],"names":[],"mappings":";;;;;AAMA,2EAA2E;AAC3E,+EAA+E;AAC/E,8EAA8E;AAC9E,MAAM,cAAc,GAAG,IAAI,OAAO,EAAmE,CAAA;AACrG,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAA;AACjC,MAAM,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAA;AACjC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;AAE3B,uCACE,MAAc,EACd,OAAsD;IAEtD,KAAK,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;AAC3F,CAAC;AAED,uCAA8C,MAAc;IAC1D,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,MAAM,CAAC,CAA8D,CAAA;IACjH,OAAO,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC,CAAA;AACtE,CAAC;AAED,wCAA+C,MAAc,EAAE,MAAc;IAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,MAAM,CAAC,CAA8D,CAAA;IACjH,IAAI,OAAO,IAAI,IAAI;QAAE,KAAK,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AACpE,CAAC"}
@@ -8,5 +8,6 @@ export * from './Format';
8
8
  export * from './brc114ActionTimeLabels';
9
9
  export * from './brc153ReferenceLabels';
10
10
  export * from './brc177NoSendExpiry';
11
+ export * from './numericTotalOutputs';
11
12
  export * from './Argon2idBackend';
12
13
  //# sourceMappingURL=index.all.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.all.d.ts","sourceRoot":"","sources":["../../../src/utility/index.all.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAEhC,cAAc,yBAAyB,CAAA;AAEvC,cAAc,UAAU,CAAA;AAExB,cAAc,0BAA0B,CAAA;AACxC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.all.d.ts","sourceRoot":"","sources":["../../../src/utility/index.all.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAEhC,cAAc,yBAAyB,CAAA;AAEvC,cAAc,UAAU,CAAA;AAExB,cAAc,0BAA0B,CAAA;AACxC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,mBAAmB,CAAA"}
@@ -24,5 +24,6 @@ __exportStar(require("./Format"), exports);
24
24
  __exportStar(require("./brc114ActionTimeLabels"), exports);
25
25
  __exportStar(require("./brc153ReferenceLabels"), exports);
26
26
  __exportStar(require("./brc177NoSendExpiry"), exports);
27
+ __exportStar(require("./numericTotalOutputs"), exports);
27
28
  __exportStar(require("./Argon2idBackend"), exports);
28
29
  //# sourceMappingURL=index.all.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.all.js","sourceRoot":"","sources":["../../../src/utility/index.all.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,wDAAqC;AACrC,yDAAsC;AACtC,yDAAsC;AACtC,mDAAgC;AAEhC,0DAAuC;AAEvC,2CAAwB;AAExB,2DAAwC;AACxC,0DAAuC;AACvC,uDAAoC;AACpC,oDAAiC"}
1
+ {"version":3,"file":"index.all.js","sourceRoot":"","sources":["../../../src/utility/index.all.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,wDAAqC;AACrC,yDAAsC;AACtC,yDAAsC;AACtC,mDAAgC;AAEhC,0DAAuC;AAEvC,2CAAwB;AAExB,2DAAwC;AACxC,0DAAuC;AACvC,uDAAoC;AACpC,wDAAqC;AACrC,oDAAiC"}
@@ -7,5 +7,6 @@ export * from './utilityHelpers.noBuffer';
7
7
  export * from './brc114ActionTimeLabels';
8
8
  export * from './brc153ReferenceLabels';
9
9
  export * from './brc177NoSendExpiry';
10
+ export * from './numericTotalOutputs';
10
11
  export * from './Argon2idBackend';
11
12
  //# sourceMappingURL=index.client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/utility/index.client.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAEhC,cAAc,2BAA2B,CAAA;AAEzC,cAAc,0BAA0B,CAAA;AACxC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/utility/index.client.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAEhC,cAAc,2BAA2B,CAAA;AAEzC,cAAc,0BAA0B,CAAA;AACxC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,mBAAmB,CAAA"}
@@ -23,5 +23,6 @@ __exportStar(require("./utilityHelpers.noBuffer"), exports);
23
23
  __exportStar(require("./brc114ActionTimeLabels"), exports);
24
24
  __exportStar(require("./brc153ReferenceLabels"), exports);
25
25
  __exportStar(require("./brc177NoSendExpiry"), exports);
26
+ __exportStar(require("./numericTotalOutputs"), exports);
26
27
  __exportStar(require("./Argon2idBackend"), exports);
27
28
  //# sourceMappingURL=index.client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.js","sourceRoot":"","sources":["../../../src/utility/index.client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,wDAAqC;AACrC,yDAAsC;AACtC,yDAAsC;AACtC,mDAAgC;AAEhC,4DAAyC;AAEzC,2DAAwC;AACxC,0DAAuC;AACvC,uDAAoC;AACpC,oDAAiC"}
1
+ {"version":3,"file":"index.client.js","sourceRoot":"","sources":["../../../src/utility/index.client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,wDAAqC;AACrC,yDAAsC;AACtC,yDAAsC;AACtC,mDAAgC;AAEhC,4DAAyC;AAEzC,2DAAwC;AACxC,0DAAuC;AACvC,uDAAoC;AACpC,wDAAqC;AACrC,oDAAiC"}
@@ -0,0 +1,7 @@
1
+ import type { ListOutputsResult } from '@bsv/sdk';
2
+ /**
3
+ * A `listOutputs` `totalOutputs` as a number: an output count, or a special operation's
4
+ * satoshi sum. Only a BRC-112 module balance query returns decimal text there.
5
+ */
6
+ export declare function numericTotalOutputs(result: Pick<ListOutputsResult, 'totalOutputs'>): number;
7
+ //# sourceMappingURL=numericTotalOutputs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numericTotalOutputs.d.ts","sourceRoot":"","sources":["../../../src/utility/numericTotalOutputs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAA;AAGjD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAC,GAAG,MAAM,CAK3F"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.numericTotalOutputs = numericTotalOutputs;
4
+ const WERR_errors_1 = require("../sdk/WERR_errors");
5
+ /**
6
+ * A `listOutputs` `totalOutputs` as a number: an output count, or a special operation's
7
+ * satoshi sum. Only a BRC-112 module balance query returns decimal text there.
8
+ */
9
+ function numericTotalOutputs(result) {
10
+ if (typeof result.totalOutputs !== 'number') {
11
+ throw new WERR_errors_1.WERR_INTERNAL('listOutputs returned BRC-112 decimal text where a number was expected');
12
+ }
13
+ return result.totalOutputs;
14
+ }
15
+ //# sourceMappingURL=numericTotalOutputs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numericTotalOutputs.js","sourceRoot":"","sources":["../../../src/utility/numericTotalOutputs.ts"],"names":[],"mappings":";;;AACA,oDAAkD;AAElD;;;GAGG;AACH,6BAAoC,MAA+C;IACjF,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC5C,MAAM,IAAI,2BAAa,CAAC,uEAAuE,CAAC,CAAA;IAClG,CAAC;IACD,OAAO,MAAM,CAAC,YAAY,CAAA;AAC5B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"utilityHelpers.d.ts","sourceRoot":"","sources":["../../../src/utility/utilityHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utilityHelpers.d.ts","sourceRoot":"","sources":["../../../src/utility/utilityHelpers.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,7 @@ function toWalletNetwork(chain) {
44
44
  case 'stn':
45
45
  case 'ttn':
46
46
  case 'tstn':
47
+ case 'regtest':
47
48
  case 'mock':
48
49
  return 'testnet';
49
50
  }
@@ -62,6 +63,7 @@ function toLookupNetworkPreset(chain) {
62
63
  return 'teratestnet';
63
64
  case 'stn':
64
65
  case 'tstn':
66
+ case 'regtest':
65
67
  case 'mock':
66
68
  return 'local';
67
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utilityHelpers.js","sourceRoot":"","sources":["../../../src/utility/utilityHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utilityHelpers.js","sourceRoot":"","sources":["../../../src/utility/utilityHelpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kCAAwH;AACxH,mDAAiD;AACjD,qDAA2D;AAE3D,uEAAmD;AAEnD,oDAA4F;AAErF,KAAK,yBAAyB,MAAqB;IACxD,OAAO,CAAC,MAAM,MAAM,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;AACrE,CAAC;AAED,yBAAgC,KAAY;IAC1C,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,MAAM;YACT,OAAO,SAAS,CAAA;QAClB,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK,CAAC;QACX,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,SAAS,CAAC;QACf,KAAK,MAAM;YACT,OAAO,SAAS,CAAA;IACpB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,+BAAsC,KAAY;IAChD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,MAAM;YACT,OAAO,SAAS,CAAA;QAClB,KAAK,MAAM;YACT,OAAO,SAAS,CAAA;QAClB,KAAK,KAAK;YACR,OAAO,aAAa,CAAA;QACtB,KAAK,KAAK,CAAC;QACX,KAAK,MAAM,CAAC;QACZ,KAAK,SAAS,CAAC;QACf,KAAK,MAAM;YACT,OAAO,OAAO,CAAA;IAClB,CAAC;AACH,CAAC;AAED,wBAA+B,EAAe,EAAE,IAAqB;IACnE,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,IAAI,GAAG,UAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;IAC3D,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAA;IACzB,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAA;AAC1C,CAAC;AAED;;;;GAIG;AACH,oBAA2B,EAAsC;IAC/D,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;QACtB,EAAE,GAAG,iBAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;IACjC,CAAC;SAAM,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;QAClC,EAAE,GAAG,iBAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC9B,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAED;;;;GAIG;AACH,wBAA+B,MAAqC;IAClE,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,GAAG,YAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IACpC,CAAC;SAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,GAAG,YAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACjC,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;GAGG;AACH,4BAAmC,OAAe;IAChD,OAAO,gBAAU,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;AAC9C,CAAC;AAED;;;GAGG;AACH,4BAAmC,MAAc;IAC/C,OAAO,eAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;AACrC,CAAC;AAED;;;;GAIG;AACH,sBAAgC,CAAuB,EAAE,WAAoB;IAC3E,IAAI,CAAC,IAAI,IAAI;QAAE,MAAM,IAAI,2BAAa,CAAC,WAAW,IAAI,6BAA6B,CAAC,CAAA;IACpF,OAAO,CAAC,CAAA;AACV,CAAC;AAED;;;;GAIG;AACH,yBAAgC,CAAS;IACvC,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,MAAM,IAAI,2BAAa,CAAC,uBAAuB,CAAC,CAAA;IAC3E,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC1B,OAAO,CAAC,CAAA;AACV,CAAC;AAED;;;;GAIG;AACH,iCAAwC,CAAiB;IACvD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,SAAS,CAAA;IAC3C,OAAO,eAAe,CAAC,CAAC,CAAC,CAAA;AAC3B,CAAC;AAED;;;;GAIG;AACH,sBAA6B,CAA4B;IACvD,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,MAAM,IAAI,2BAAa,CAAC,uBAAuB,CAAC,CAAA;IAC3E,OAAO,CAAC,CAAA;AACV,CAAC;AAED;;;;GAIG;AACH,uBAA8B,CAA4B;IACxD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;QAAE,MAAM,IAAI,2BAAa,CAAC,yBAAyB,CAAC,CAAA;IACrG,OAAO,CAAC,CAAA;AACV,CAAC;AAED;;;;GAIG;AACH,kBAAyB,EAA6B;IACpD,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC,CAAA;IACtB,IAAI,EAAE,GAAG,CAAC;QAAE,MAAM,IAAI,2BAAa,CAAC,6CAA6C,CAAC,CAAA;IAClF,OAAO,EAAE,CAAA;AACX,CAAC;AAED;;;;;;GAMG;AACH,yBAAmC,OAAY;IAC7C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,8BAAgB,CAAC,wBAAwB,CAAC,CAAA;IAC5E,OAAO,OAAO,CAAC,CAAC,CAAC,CAAA;AACnB,CAAC;AAED;;;;;;GAMG;AACH,mBAA6B,OAAY,EAAE,eAAwB;IACjE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,8BAAgB,CAAC,eAAe,IAAI,kCAAkC,CAAC,CAAA;IAC3G,OAAO,OAAO,CAAC,CAAC,CAAC,CAAA;AACnB,CAAC;AAED;;;;;GAKG;AACI,KAAK,eAAe,KAAa;IACtC,MAAM,QAAQ,GAAG,CAAC,CAAA;IAClB,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA,CAAC,yCAAyC;IACxE,IACE,OAAO,KAAK,KAAK,QAAQ;QACzB,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QACvB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;QACnB,KAAK,GAAG,QAAQ;QAChB,KAAK,GAAG,QAAQ,EAChB,CAAC;QACD,MAAM,IAAI,oCAAsB,CAAC,OAAO,EAAE,oBAAoB,QAAQ,QAAQ,QAAQ,eAAe,KAAK,GAAG,CAAC,CAAA;IAChH,CAAC;IACD,OAAO,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;AACjE,CAAC;AAED;;GAEG;AACH,qBAA4B,KAAa;IACvC,OAAO,IAAA,YAAM,EAAC,KAAK,CAAC,CAAA;AACtB,CAAC;AAED;;GAEG;AACH,wBAA+B,KAAa;IAC1C,OAAO,IAAA,aAAK,EAAC,IAAA,YAAM,EAAC,KAAK,CAAC,CAAC,CAAA;AAC7B,CAAC;AAED;;GAEG;AACH,2BAAkC,KAAa;IAC7C,OAAO,IAAA,gBAAQ,EAAC,IAAA,YAAM,EAAC,KAAK,CAAC,CAAC,CAAA;AAChC,CAAC;AAED,mCAA0C,IAAY;IACpD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,CAAA;IAClC,IAAI,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,KAAK,IAAI,IAAI,IAAI,GAAG,UAAU,IAAI,IAAI,GAAG,YAAY,EAAE,CAAC;QAC/E,MAAM,IAAI,oCAAsB,CAAC,MAAM,EAAE,+BAA+B,CAAC,CAAA;IAC3E,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;GAKG;AACH,qBAA4B,IAAc,EAAE,IAAc;IACxD,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAA;IAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAA;IACvC,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,6BAAoC,IAAe,EAAE,IAAe;IAClE,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI;QAAE,OAAO,IAAI,CAAA;IAC7C,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI;QAAE,OAAO,KAAK,CAAA;IAC9C,OAAO,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;AAChC,CAAC;AAED,iBAAwB,EAAS,EAAE,EAAS;IAC1C,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;QAC7B,IAAI,EAAE,GAAG,EAAE;YAAE,OAAO,EAAE,CAAA;QACtB,OAAO,EAAE,CAAA;IACX,CAAC;IACD,IAAI,EAAE,IAAI,IAAI;QAAE,OAAO,EAAE,CAAA;IACzB,IAAI,EAAE,IAAI,IAAI;QAAE,OAAO,EAAE,CAAA;IACzB,OAAO,SAAS,CAAA;AAClB,CAAC;AAED;;;;GAIG;AACH,oBAA2B,IAA2B;IACpD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,IAAI,GAAG,IAAA,iCAAO,EAAC,IAAI,CAAC,CAAA;IACtB,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,aAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAA;IAChD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;GAKG;AACH,wBAA+B,IAA2B;IACxD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,IAAI,GAAG,IAAA,iCAAO,EAAC,IAAI,CAAC,CAAA;IACtB,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,aAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAA;IAChD,MAAM,MAAM,GAAG,IAAI,aAAM,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAA;IAClD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;GAKG;AACH,wBAA+B,IAA2B;IACxD,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAA;AACvC,CAAC;AAED;;;;;GAKG;AACI,MAAM,MAAM,GAAG,CAAC,OAAe,EAAE,GAAG,cAAqB,EAAQ,EAAE;IACxE,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,mBAAmB,IAAI,GAAG,KAAK,IAAI,CAAC,CAAA;IAC1F,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,CAAA;IACzC,CAAC;AACH,CAAC,CAAA;AALY,QAAA,MAAM,GAAN,MAAM,CAKlB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bopen-io/wallet-toolbox",
3
- "version": "2.15.0-bopen.1",
3
+ "version": "2.15.0",
4
4
  "sideEffects": false,
5
5
  "type": "commonjs",
6
6
  "engines": {
@@ -9,7 +9,7 @@
9
9
  "publishConfig": {
10
10
  "access": "public"
11
11
  },
12
- "description": "Interim repack of @bsv/wallet-toolbox 2.15.0 with Postgres StorageKnex, mountable StorageServer and unique sync states (bsv-blockchain/ts-stack#719, #722, #723)",
12
+ "description": "Interim repack of @bsv/wallet-toolbox at bsv-blockchain/ts-stack 41a6edb43 (#1243: @bsv/sdk 4.0, BRC-207 color module)",
13
13
  "main": "./out/src/index.js",
14
14
  "types": "./out/src/index.d.ts",
15
15
  "exports": {
@@ -24,12 +24,8 @@
24
24
  "default": "./out/src/sdk/index.js"
25
25
  },
26
26
  "./out/src/*": {
27
- "types": [
28
- "./out/src/*.d.ts",
29
- "./out/src/*"
30
- ],
31
- "require": "./out/src/*",
32
- "default": "./out/src/*"
27
+ "types": "./out/src/*.d.ts",
28
+ "require": "./out/src/*.js"
33
29
  },
34
30
  "./package.json": "./package.json"
35
31
  },
@@ -44,7 +40,7 @@
44
40
  ],
45
41
  "repository": {
46
42
  "type": "git",
47
- "url": "git+https://github.com/bsv-blockchain/ts-stack.git",
43
+ "url": "git+https://github.com/shruggr/ts-stack.git",
48
44
  "directory": "packages/wallet/wallet-toolbox"
49
45
  },
50
46
  "author": "BSV Association",
@@ -60,48 +56,47 @@
60
56
  },
61
57
  "homepage": "https://github.com/bsv-blockchain/ts-stack/tree/main/packages/wallet/wallet-toolbox#readme",
62
58
  "dependencies": {
63
- "@bsv/auth-express-middleware": "^2.2.8",
64
- "@bsv/payment-express-middleware": "^2.1.8",
59
+ "@bsv/auth-express-middleware": "^2.2.9",
60
+ "@bsv/payment-express-middleware": "^2.1.9",
65
61
  "@noble/hashes": "2.4.0",
66
62
  "@types/express": "^5.0.6",
67
- "better-sqlite3": "^13.0.2",
63
+ "better-sqlite3": "^13.0.3",
68
64
  "body-parser": "^2.3.0",
69
65
  "dotenv": "^17.4.2",
70
66
  "express": "^5.2.1",
71
- "express-rate-limit": "^8.6.1",
67
+ "express-rate-limit": "^8.7.0",
72
68
  "hash-wasm": "^4.12.0",
73
69
  "idb": "^8.0.3",
74
70
  "knex": "^3.3.0",
75
- "mysql2": "^3.23.2",
76
- "ws": "^8.21.1"
71
+ "mysql2": "^3.24.4",
72
+ "ws": "^8.21.3"
77
73
  },
78
74
  "devDependencies": {
79
- "@bsv/sdk": "^2.3.1",
80
- "@bsv/verifast": "^0.3.4",
81
- "@jest/globals": "^30.4.1",
75
+ "@jest/globals": "^30.5.1",
82
76
  "@types/body-parser": "^1.19.6",
83
77
  "@types/cors": "^2.8.19",
84
78
  "@types/fs-extra": "^11.0.4",
85
79
  "@types/jest": "^30.0.0",
86
- "@types/node": "^26.1.2",
87
- "@types/pg": "^8.23.1",
80
+ "@types/node": "^26.6.1",
88
81
  "@types/ws": "^8.18.1",
89
82
  "@typescript/native": "npm:typescript@7.0.2",
90
83
  "cors": "^2.8.6",
91
84
  "fake-indexeddb": "^6.2.5",
92
85
  "fast-check": "^4.9.0",
93
86
  "fs-extra": "^11.4.0",
94
- "jest": "^30.4.2",
95
- "oxlint": "^1.76.0",
87
+ "jest": "^30.5.1",
88
+ "oxlint": "^1.83.0",
96
89
  "pg": "^8.23.0",
97
90
  "picocolors": "^1.1.1",
98
91
  "ts-jest": "^29.4.12",
99
92
  "ts-node": "^10.9.2",
100
93
  "ts2md": "^0.2.8",
101
- "typescript": "npm:@typescript/typescript6@6.0.2"
94
+ "typescript": "npm:@typescript/typescript6@6.0.2",
95
+ "@bsv/verifast": "^0.3.8",
96
+ "@bsv/sdk": "npm:@bopen-io/sdk@^4.0.0"
102
97
  },
103
98
  "peerDependencies": {
104
- "@bsv/sdk": "^2.8.0 || ^3.0.0"
99
+ "@bsv/sdk": "^2.8.0 || ^3.0.0 || ^4.0.0"
105
100
  },
106
101
  "peerDependenciesMeta": {
107
102
  "@bsv/sdk": {
@@ -1,41 +0,0 @@
1
- import type { Knex } from 'knex';
2
- export interface ReqRow {
3
- updated_at: Date | string;
4
- req_created_at: Date | string;
5
- tx_created_at?: Date | string;
6
- minutesOld: number;
7
- hoursOld: number;
8
- provenTxReqId: number;
9
- transactionId?: number;
10
- userId?: number;
11
- txid: string;
12
- provenTxId?: number;
13
- reqStatus: string;
14
- txStatus?: string;
15
- satoshis?: number;
16
- attempts: number;
17
- notified: boolean;
18
- history: string;
19
- notify: string;
20
- rawTxHex?: string;
21
- batch?: string;
22
- inputBeefHex?: string;
23
- }
24
- export interface ReqReviewFilter {
25
- status?: string;
26
- txid?: string;
27
- batch?: string;
28
- userId?: number;
29
- minTransactionId: number;
30
- limit: number;
31
- offset: number;
32
- }
33
- /**
34
- * Proven-tx-req rows joined to their transactions for the admin review page.
35
- * Supports MySQL and Postgres.
36
- */
37
- export declare function selectReqReview(knex: Knex, filter: ReqReviewFilter): Promise<{
38
- total: number;
39
- rows: ReqRow[];
40
- }>;
41
- //# sourceMappingURL=reqReviewQuery.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reqReviewQuery.d.ts","sourceRoot":"","sources":["../../../../src/storage/adminServer/reqReviewQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAEhC,MAAM,WAAW,MAAM;IACrB,UAAU,EAAE,IAAI,GAAG,MAAM,CAAA;IACzB,cAAc,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,aAAa,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,MAAM,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf;AAoBD;;;GAGG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CA0C5C"}
@@ -1,67 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.selectReqReview = selectReqReview;
4
- function isPostgres(knex) {
5
- return knex.client.dialect === 'postgresql';
6
- }
7
- /** Whole `unitSeconds` elapsed since `column`, as MySQL TIMESTAMPDIFF reports it. */
8
- function ageSince(knex, column, unitSeconds, alias) {
9
- if (isPostgres(knex)) {
10
- return knex.raw('cast(trunc(extract(epoch from (now() - ??)) / ?) as integer) as ??', [column, unitSeconds, alias]);
11
- }
12
- return knex.raw(`TIMESTAMPDIFF(${unitSeconds === 60 ? 'MINUTE' : 'HOUR'}, ??, NOW()) as ??`, [column, alias]);
13
- }
14
- /** Upper-case hex of a binary column, as MySQL HEX() returns it. */
15
- function upperHex(knex, column, alias) {
16
- if (isPostgres(knex))
17
- return knex.raw("upper(encode(??, 'hex')) as ??", [column, alias]);
18
- return knex.raw('HEX(??) as ??', [column, alias]);
19
- }
20
- /**
21
- * Proven-tx-req rows joined to their transactions for the admin review page.
22
- * Supports MySQL and Postgres.
23
- */
24
- async function selectReqReview(knex, filter) {
25
- const base = knex('proven_tx_reqs as r')
26
- .join('transactions as t', 't.txid', 'r.txid')
27
- .where('t.transactionId', '>=', filter.minTransactionId);
28
- if (filter.status)
29
- void base.andWhere('r.status', filter.status);
30
- if (filter.txid)
31
- void base.andWhere('r.txid', filter.txid);
32
- if (filter.batch)
33
- void base.andWhere('r.batch', filter.batch);
34
- if (filter.userId)
35
- void base.andWhere('t.userId', filter.userId);
36
- const totalResult = (await base.clone().count({ count: '*' }));
37
- const total = Number(totalResult[0]?.count || 0);
38
- const rows = (await base
39
- .clone()
40
- .select([
41
- 'r.updated_at',
42
- 'r.created_at as req_created_at',
43
- 't.created_at as tx_created_at',
44
- ageSince(knex, 'r.created_at', 60, 'minutesOld'),
45
- ageSince(knex, 'r.created_at', 3600, 'hoursOld'),
46
- 'r.provenTxReqId',
47
- 't.transactionId',
48
- 't.userId',
49
- 'r.txid',
50
- 'r.provenTxId',
51
- 'r.status as reqStatus',
52
- 't.status as txStatus',
53
- 't.satoshis',
54
- 'r.attempts',
55
- 'r.notified',
56
- 'r.history',
57
- 'r.notify',
58
- upperHex(knex, 'r.rawTx', 'rawTxHex'),
59
- 'r.batch',
60
- upperHex(knex, 'r.inputBEEF', 'inputBeefHex')
61
- ])
62
- .orderBy('r.provenTxReqId', 'desc')
63
- .limit(filter.limit)
64
- .offset(filter.offset));
65
- return { total, rows };
66
- }
67
- //# sourceMappingURL=reqReviewQuery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"reqReviewQuery.js","sourceRoot":"","sources":["../../../../src/storage/adminServer/reqReviewQuery.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- import { Knex } from 'knex';
2
- /**
3
- * Makes a Postgres knex return int8 values (bigint columns, `count(*)`) as
4
- * JavaScript numbers, as mysql2 and better-sqlite3 do. node-postgres returns
5
- * them as strings by default.
6
- *
7
- * The parser is set on each connection this knex acquires, including
8
- * connections created before this call and connections from a caller-supplied
9
- * pool. The process-wide `pg.types` defaults are not changed, so other pg
10
- * clients in the process are unaffected. Values above 2^53 lose precision;
11
- * wallet amounts and row ids stay well below that.
12
- *
13
- * Does nothing for other dialects, and is idempotent.
14
- */
15
- export declare function usePostgresInt8Numbers(knex: Knex): void;
16
- //# sourceMappingURL=knexPostgres.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"knexPostgres.d.ts","sourceRoot":"","sources":["../../../src/storage/knexPostgres.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAe3B;;;;;;;;;;;;GAYG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAUvD"}
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.usePostgresInt8Numbers = usePostgresInt8Numbers;
4
- const PG_INT8_OID = 20;
5
- const installed = Symbol.for('@bsv/wallet-toolbox/postgres-int8-numbers');
6
- function parseInt8(value) {
7
- return Number.parseInt(value, 10);
8
- }
9
- /**
10
- * Makes a Postgres knex return int8 values (bigint columns, `count(*)`) as
11
- * JavaScript numbers, as mysql2 and better-sqlite3 do. node-postgres returns
12
- * them as strings by default.
13
- *
14
- * The parser is set on each connection this knex acquires, including
15
- * connections created before this call and connections from a caller-supplied
16
- * pool. The process-wide `pg.types` defaults are not changed, so other pg
17
- * clients in the process are unaffected. Values above 2^53 lose precision;
18
- * wallet amounts and row ids stay well below that.
19
- *
20
- * Does nothing for other dialects, and is idempotent.
21
- */
22
- function usePostgresInt8Numbers(knex) {
23
- const client = knex.client;
24
- if (client?.dialect !== 'postgresql' || client[installed] === true)
25
- return;
26
- const acquire = client.acquireConnection.bind(client);
27
- client.acquireConnection = async () => {
28
- const connection = (await acquire());
29
- connection.setTypeParser(PG_INT8_OID, parseInt8);
30
- return connection;
31
- };
32
- client[installed] = true;
33
- }
34
- //# sourceMappingURL=knexPostgres.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"knexPostgres.js","sourceRoot":"","sources":["../../../src/storage/knexPostgres.ts"],"names":[],"mappings":";;;AAEA,MAAM,WAAW,GAAG,EAAE,CAAA;AACtB,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAA;AAQzE,SAAS,SAAS,CAAC,KAAa;IAC9B,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;AACnC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,gCAAuC,IAAU;IAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAuC,CAAA;IAC3D,IAAI,MAAM,EAAE,OAAO,KAAK,YAAY,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,IAAI;QAAE,OAAM;IAC1E,MAAM,OAAO,GAAG,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACrD,MAAM,CAAC,iBAAiB,GAAG,KAAK,IAAI,EAAE;QACpC,MAAM,UAAU,GAAG,CAAC,MAAM,OAAO,EAAE,CAAiB,CAAA;QACpD,UAAU,CAAC,aAAa,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;QAChD,OAAO,UAAU,CAAA;IACnB,CAAC,CAAA;IACD,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAA;AAC1B,CAAC"}