@brightchain/brightchain-api-lib 0.15.0 → 0.17.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 (315) hide show
  1. package/package.json +4 -4
  2. package/src/browser.d.ts +13 -0
  3. package/src/browser.d.ts.map +1 -0
  4. package/src/browser.js +16 -0
  5. package/src/browser.js.map +1 -0
  6. package/src/index.d.ts +5 -1
  7. package/src/index.d.ts.map +1 -1
  8. package/src/index.js +7 -1
  9. package/src/index.js.map +1 -1
  10. package/src/lib/adapters/brightChainDbDocumentStoreAdapter.d.ts +24 -0
  11. package/src/lib/adapters/brightChainDbDocumentStoreAdapter.d.ts.map +1 -0
  12. package/src/lib/adapters/brightChainDbDocumentStoreAdapter.js +53 -0
  13. package/src/lib/adapters/brightChainDbDocumentStoreAdapter.js.map +1 -0
  14. package/src/lib/application-base.d.ts +8 -37
  15. package/src/lib/application-base.d.ts.map +1 -1
  16. package/src/lib/application-base.js +8 -80
  17. package/src/lib/application-base.js.map +1 -1
  18. package/src/lib/application.d.ts +56 -7
  19. package/src/lib/application.d.ts.map +1 -1
  20. package/src/lib/application.js +169 -134
  21. package/src/lib/application.js.map +1 -1
  22. package/src/lib/availability/gossipService.d.ts +20 -1
  23. package/src/lib/availability/gossipService.d.ts.map +1 -1
  24. package/src/lib/availability/gossipService.js +59 -0
  25. package/src/lib/availability/gossipService.js.map +1 -1
  26. package/src/lib/availability/index.d.ts +1 -0
  27. package/src/lib/availability/index.d.ts.map +1 -1
  28. package/src/lib/availability/index.js +1 -0
  29. package/src/lib/availability/index.js.map +1 -1
  30. package/src/lib/availability/poolDiscoveryService.d.ts +117 -0
  31. package/src/lib/availability/poolDiscoveryService.d.ts.map +1 -0
  32. package/src/lib/availability/poolDiscoveryService.js +218 -0
  33. package/src/lib/availability/poolDiscoveryService.js.map +1 -0
  34. package/src/lib/blockFetch/httpBlockFetchTransport.d.ts.map +1 -1
  35. package/src/lib/blockFetch/httpBlockFetchTransport.js.map +1 -1
  36. package/src/lib/constants.js +2 -2
  37. package/src/lib/constants.js.map +1 -1
  38. package/src/lib/controllers/api/blocks.d.ts.map +1 -1
  39. package/src/lib/controllers/api/blocks.js +290 -290
  40. package/src/lib/controllers/api/blocks.js.map +1 -1
  41. package/src/lib/controllers/api/brightpass.d.ts.map +1 -1
  42. package/src/lib/controllers/api/brightpass.js +270 -274
  43. package/src/lib/controllers/api/brightpass.js.map +1 -1
  44. package/src/lib/controllers/api/energy.d.ts.map +1 -1
  45. package/src/lib/controllers/api/energy.js +93 -93
  46. package/src/lib/controllers/api/energy.js.map +1 -1
  47. package/src/lib/controllers/api/health.d.ts +4 -4
  48. package/src/lib/controllers/api/health.d.ts.map +1 -1
  49. package/src/lib/controllers/api/health.js.map +1 -1
  50. package/src/lib/controllers/api/i18n.d.ts.map +1 -1
  51. package/src/lib/controllers/api/i18n.js +8 -8
  52. package/src/lib/controllers/api/i18n.js.map +1 -1
  53. package/src/lib/controllers/api/index.d.ts +1 -0
  54. package/src/lib/controllers/api/index.d.ts.map +1 -1
  55. package/src/lib/controllers/api/index.js +1 -0
  56. package/src/lib/controllers/api/index.js.map +1 -1
  57. package/src/lib/controllers/api/introspection.d.ts +60 -0
  58. package/src/lib/controllers/api/introspection.d.ts.map +1 -0
  59. package/src/lib/controllers/api/introspection.js +375 -0
  60. package/src/lib/controllers/api/introspection.js.map +1 -0
  61. package/src/lib/controllers/api/nodes.d.ts +7 -6
  62. package/src/lib/controllers/api/nodes.d.ts.map +1 -1
  63. package/src/lib/controllers/api/nodes.js.map +1 -1
  64. package/src/lib/controllers/api/quorum.d.ts.map +1 -1
  65. package/src/lib/controllers/api/quorum.js +483 -483
  66. package/src/lib/controllers/api/quorum.js.map +1 -1
  67. package/src/lib/controllers/api/sessions.d.ts.map +1 -1
  68. package/src/lib/controllers/api/sessions.js +8 -8
  69. package/src/lib/controllers/api/sessions.js.map +1 -1
  70. package/src/lib/controllers/api/sync.d.ts +6 -5
  71. package/src/lib/controllers/api/sync.d.ts.map +1 -1
  72. package/src/lib/controllers/api/sync.js.map +1 -1
  73. package/src/lib/controllers/api/user.d.ts.map +1 -1
  74. package/src/lib/controllers/api/user.js +260 -180
  75. package/src/lib/controllers/api/user.js.map +1 -1
  76. package/src/lib/controllers/base.d.ts +1 -2
  77. package/src/lib/controllers/base.d.ts.map +1 -1
  78. package/src/lib/controllers/base.js +0 -1
  79. package/src/lib/controllers/base.js.map +1 -1
  80. package/src/lib/databaseInit.d.ts +28 -0
  81. package/src/lib/databaseInit.d.ts.map +1 -0
  82. package/src/lib/databaseInit.js +107 -0
  83. package/src/lib/databaseInit.js.map +1 -0
  84. package/src/lib/enumerations/brightChainApiStrings.d.ts +4 -0
  85. package/src/lib/enumerations/brightChainApiStrings.d.ts.map +1 -1
  86. package/src/lib/enumerations/brightChainApiStrings.js +4 -0
  87. package/src/lib/enumerations/brightChainApiStrings.js.map +1 -1
  88. package/src/lib/enumerations/index.d.ts +1 -0
  89. package/src/lib/enumerations/index.d.ts.map +1 -1
  90. package/src/lib/enumerations/index.js +1 -0
  91. package/src/lib/enumerations/index.js.map +1 -1
  92. package/src/lib/enumerations/websocketMessageType.d.ts +5 -1
  93. package/src/lib/enumerations/websocketMessageType.d.ts.map +1 -1
  94. package/src/lib/enumerations/websocketMessageType.js +4 -0
  95. package/src/lib/enumerations/websocketMessageType.js.map +1 -1
  96. package/src/lib/environment.d.ts +5 -0
  97. package/src/lib/environment.d.ts.map +1 -1
  98. package/src/lib/environment.js +7 -0
  99. package/src/lib/environment.js.map +1 -1
  100. package/src/lib/errors/index.d.ts +1 -0
  101. package/src/lib/errors/index.d.ts.map +1 -1
  102. package/src/lib/errors/index.js +1 -0
  103. package/src/lib/errors/index.js.map +1 -1
  104. package/src/lib/errors/memberIndexSchemaValidationError.d.ts +6 -0
  105. package/src/lib/errors/memberIndexSchemaValidationError.d.ts.map +1 -0
  106. package/src/lib/errors/memberIndexSchemaValidationError.js +15 -0
  107. package/src/lib/errors/memberIndexSchemaValidationError.js.map +1 -0
  108. package/src/lib/factories/blockStoreFactory.d.ts +2 -13
  109. package/src/lib/factories/blockStoreFactory.d.ts.map +1 -1
  110. package/src/lib/factories/blockStoreFactory.js +5 -10
  111. package/src/lib/factories/blockStoreFactory.js.map +1 -1
  112. package/src/lib/interfaces/application.d.ts +7 -1
  113. package/src/lib/interfaces/application.d.ts.map +1 -1
  114. package/src/lib/interfaces/blocksHandlers.d.ts +3 -3
  115. package/src/lib/interfaces/blocksHandlers.d.ts.map +1 -1
  116. package/src/lib/interfaces/brightchain-init-result.d.ts +17 -0
  117. package/src/lib/interfaces/brightchain-init-result.d.ts.map +1 -0
  118. package/src/lib/interfaces/brightchain-init-result.js +9 -0
  119. package/src/lib/interfaces/brightchain-init-result.js.map +1 -0
  120. package/src/lib/interfaces/cblHandlers.d.ts +3 -2
  121. package/src/lib/interfaces/cblHandlers.d.ts.map +1 -1
  122. package/src/lib/interfaces/environment.d.ts +4 -0
  123. package/src/lib/interfaces/environment.d.ts.map +1 -1
  124. package/src/lib/interfaces/index.d.ts +5 -0
  125. package/src/lib/interfaces/index.d.ts.map +1 -1
  126. package/src/lib/interfaces/introspectionApiResponses.d.ts +66 -0
  127. package/src/lib/interfaces/introspectionApiResponses.d.ts.map +1 -0
  128. package/src/lib/interfaces/introspectionApiResponses.js +3 -0
  129. package/src/lib/interfaces/introspectionApiResponses.js.map +1 -0
  130. package/src/lib/interfaces/members-handlers.d.ts +11 -0
  131. package/src/lib/interfaces/members-handlers.d.ts.map +1 -0
  132. package/src/lib/interfaces/members-handlers.js +3 -0
  133. package/src/lib/interfaces/members-handlers.js.map +1 -0
  134. package/src/lib/interfaces/responses/api-backup-codes-response.d.ts +2 -5
  135. package/src/lib/interfaces/responses/api-backup-codes-response.d.ts.map +1 -1
  136. package/src/lib/interfaces/responses/api-challenge-response.d.ts +2 -5
  137. package/src/lib/interfaces/responses/api-challenge-response.d.ts.map +1 -1
  138. package/src/lib/interfaces/responses/api-code-count-response.d.ts +2 -5
  139. package/src/lib/interfaces/responses/api-code-count-response.d.ts.map +1 -1
  140. package/src/lib/interfaces/responses/api-detailed-health-response.d.ts +5 -0
  141. package/src/lib/interfaces/responses/api-detailed-health-response.d.ts.map +1 -0
  142. package/src/lib/interfaces/responses/api-detailed-health-response.js +3 -0
  143. package/src/lib/interfaces/responses/api-detailed-health-response.js.map +1 -0
  144. package/src/lib/interfaces/responses/api-discover-block-response.d.ts +5 -0
  145. package/src/lib/interfaces/responses/api-discover-block-response.d.ts.map +1 -0
  146. package/src/lib/interfaces/responses/api-discover-block-response.js +3 -0
  147. package/src/lib/interfaces/responses/api-discover-block-response.js.map +1 -0
  148. package/src/lib/interfaces/responses/api-error.d.ts +5 -0
  149. package/src/lib/interfaces/responses/api-error.d.ts.map +1 -0
  150. package/src/lib/interfaces/responses/api-error.js +3 -0
  151. package/src/lib/interfaces/responses/api-error.js.map +1 -0
  152. package/src/lib/interfaces/responses/api-express-validation-error.d.ts +7 -0
  153. package/src/lib/interfaces/responses/api-express-validation-error.d.ts.map +1 -0
  154. package/src/lib/interfaces/responses/api-express-validation-error.js +3 -0
  155. package/src/lib/interfaces/responses/api-express-validation-error.js.map +1 -0
  156. package/src/lib/interfaces/responses/api-get-block-response.d.ts +5 -0
  157. package/src/lib/interfaces/responses/api-get-block-response.d.ts.map +1 -0
  158. package/src/lib/interfaces/responses/api-get-block-response.js +3 -0
  159. package/src/lib/interfaces/responses/api-get-block-response.js.map +1 -0
  160. package/src/lib/interfaces/responses/api-get-node-response.d.ts +5 -0
  161. package/src/lib/interfaces/responses/api-get-node-response.d.ts.map +1 -0
  162. package/src/lib/interfaces/responses/api-get-node-response.js +3 -0
  163. package/src/lib/interfaces/responses/api-get-node-response.js.map +1 -0
  164. package/src/lib/interfaces/responses/api-health-response.d.ts +5 -0
  165. package/src/lib/interfaces/responses/api-health-response.d.ts.map +1 -0
  166. package/src/lib/interfaces/responses/api-health-response.js +3 -0
  167. package/src/lib/interfaces/responses/api-health-response.js.map +1 -0
  168. package/src/lib/interfaces/responses/api-list-nodes-response.d.ts +5 -0
  169. package/src/lib/interfaces/responses/api-list-nodes-response.d.ts.map +1 -0
  170. package/src/lib/interfaces/responses/api-list-nodes-response.js +3 -0
  171. package/src/lib/interfaces/responses/api-list-nodes-response.js.map +1 -0
  172. package/src/lib/interfaces/responses/api-login-response.d.ts +2 -14
  173. package/src/lib/interfaces/responses/api-login-response.d.ts.map +1 -1
  174. package/src/lib/interfaces/responses/api-members-response.d.ts +8 -0
  175. package/src/lib/interfaces/responses/api-members-response.d.ts.map +1 -0
  176. package/src/lib/interfaces/responses/api-members-response.js +3 -0
  177. package/src/lib/interfaces/responses/api-members-response.js.map +1 -0
  178. package/src/lib/interfaces/responses/api-mnemonic-response.d.ts +2 -5
  179. package/src/lib/interfaces/responses/api-mnemonic-response.d.ts.map +1 -1
  180. package/src/lib/interfaces/responses/api-reconcile-response.d.ts +5 -0
  181. package/src/lib/interfaces/responses/api-reconcile-response.d.ts.map +1 -0
  182. package/src/lib/interfaces/responses/api-reconcile-response.js +3 -0
  183. package/src/lib/interfaces/responses/api-reconcile-response.js.map +1 -0
  184. package/src/lib/interfaces/responses/api-register-node-response.d.ts +5 -0
  185. package/src/lib/interfaces/responses/api-register-node-response.d.ts.map +1 -0
  186. package/src/lib/interfaces/responses/api-register-node-response.js +3 -0
  187. package/src/lib/interfaces/responses/api-register-node-response.js.map +1 -0
  188. package/src/lib/interfaces/responses/api-registration-response.d.ts +2 -10
  189. package/src/lib/interfaces/responses/api-registration-response.d.ts.map +1 -1
  190. package/src/lib/interfaces/responses/api-replicate-block-response.d.ts +5 -0
  191. package/src/lib/interfaces/responses/api-replicate-block-response.d.ts.map +1 -0
  192. package/src/lib/interfaces/responses/api-replicate-block-response.js +3 -0
  193. package/src/lib/interfaces/responses/api-replicate-block-response.js.map +1 -0
  194. package/src/lib/interfaces/responses/api-request-user-response.d.ts +2 -6
  195. package/src/lib/interfaces/responses/api-request-user-response.d.ts.map +1 -1
  196. package/src/lib/interfaces/responses/api-status-code-response.d.ts +7 -0
  197. package/src/lib/interfaces/responses/api-status-code-response.d.ts.map +1 -0
  198. package/src/lib/interfaces/responses/api-status-code-response.js +3 -0
  199. package/src/lib/interfaces/responses/api-status-code-response.js.map +1 -0
  200. package/src/lib/interfaces/responses/api-store-block-response.d.ts +5 -0
  201. package/src/lib/interfaces/responses/api-store-block-response.d.ts.map +1 -0
  202. package/src/lib/interfaces/responses/api-store-block-response.js +3 -0
  203. package/src/lib/interfaces/responses/api-store-block-response.js.map +1 -0
  204. package/src/lib/interfaces/responses/api-store-cbl-response.d.ts +5 -0
  205. package/src/lib/interfaces/responses/api-store-cbl-response.d.ts.map +1 -0
  206. package/src/lib/interfaces/responses/api-store-cbl-response.js +3 -0
  207. package/src/lib/interfaces/responses/api-store-cbl-response.js.map +1 -0
  208. package/src/lib/interfaces/responses/api-sync-request-response.d.ts +5 -0
  209. package/src/lib/interfaces/responses/api-sync-request-response.d.ts.map +1 -0
  210. package/src/lib/interfaces/responses/api-sync-request-response.js +3 -0
  211. package/src/lib/interfaces/responses/api-sync-request-response.js.map +1 -0
  212. package/src/lib/interfaces/responses/block-data-response.d.ts +11 -0
  213. package/src/lib/interfaces/responses/block-data-response.d.ts.map +1 -0
  214. package/src/lib/interfaces/responses/block-data-response.js +3 -0
  215. package/src/lib/interfaces/responses/block-data-response.js.map +1 -0
  216. package/src/lib/interfaces/responses/block-location-response.d.ts +11 -0
  217. package/src/lib/interfaces/responses/block-location-response.d.ts.map +1 -0
  218. package/src/lib/interfaces/responses/block-location-response.js +3 -0
  219. package/src/lib/interfaces/responses/block-location-response.js.map +1 -0
  220. package/src/lib/interfaces/responses/index.d.ts +18 -0
  221. package/src/lib/interfaces/responses/index.d.ts.map +1 -1
  222. package/src/lib/interfaces/status-code-response.d.ts +1 -6
  223. package/src/lib/interfaces/status-code-response.d.ts.map +1 -1
  224. package/src/lib/interfaces/storage/client-session.d.ts +8 -0
  225. package/src/lib/interfaces/storage/client-session.d.ts.map +1 -0
  226. package/src/lib/interfaces/storage/client-session.js +3 -0
  227. package/src/lib/interfaces/storage/client-session.js.map +1 -0
  228. package/src/lib/interfaces/storage/collection.d.ts +9 -0
  229. package/src/lib/interfaces/storage/collection.d.ts.map +1 -0
  230. package/src/lib/interfaces/storage/collection.js +3 -0
  231. package/src/lib/interfaces/storage/collection.js.map +1 -0
  232. package/src/lib/interfaces/storage/database-lifecycle-hooks.d.ts +8 -0
  233. package/src/lib/interfaces/storage/database-lifecycle-hooks.d.ts.map +1 -0
  234. package/src/lib/interfaces/storage/database-lifecycle-hooks.js +3 -0
  235. package/src/lib/interfaces/storage/database-lifecycle-hooks.js.map +1 -0
  236. package/src/lib/interfaces/storage/database.d.ts +9 -0
  237. package/src/lib/interfaces/storage/database.d.ts.map +1 -0
  238. package/src/lib/interfaces/storage/database.js +3 -0
  239. package/src/lib/interfaces/storage/database.js.map +1 -0
  240. package/src/lib/interfaces/storage/document-types.d.ts +9 -0
  241. package/src/lib/interfaces/storage/document-types.d.ts.map +1 -0
  242. package/src/lib/interfaces/storage/document-types.js +10 -0
  243. package/src/lib/interfaces/storage/document-types.js.map +1 -0
  244. package/src/lib/interfaces/storage/index.d.ts +7 -0
  245. package/src/lib/interfaces/storage/index.d.ts.map +1 -0
  246. package/src/lib/interfaces/storage/index.js +7 -0
  247. package/src/lib/interfaces/storage/index.js.map +1 -0
  248. package/src/lib/interfaces/storage/memberIndexSchema.d.ts +11 -0
  249. package/src/lib/interfaces/storage/memberIndexSchema.d.ts.map +1 -0
  250. package/src/lib/interfaces/storage/memberIndexSchema.js +26 -0
  251. package/src/lib/interfaces/storage/memberIndexSchema.js.map +1 -0
  252. package/src/lib/interfaces/userApiResponse.d.ts +17 -0
  253. package/src/lib/interfaces/userApiResponse.d.ts.map +1 -0
  254. package/src/lib/interfaces/userApiResponse.js +3 -0
  255. package/src/lib/interfaces/userApiResponse.js.map +1 -0
  256. package/src/lib/interfaces/websocketMessages.d.ts +64 -1
  257. package/src/lib/interfaces/websocketMessages.d.ts.map +1 -1
  258. package/src/lib/middleware/index.d.ts +2 -0
  259. package/src/lib/middleware/index.d.ts.map +1 -0
  260. package/src/lib/middleware/index.js +6 -0
  261. package/src/lib/middleware/index.js.map +1 -0
  262. package/src/lib/middleware/validateBody.d.ts +13 -0
  263. package/src/lib/middleware/validateBody.d.ts.map +1 -0
  264. package/src/lib/middleware/validateBody.js +35 -0
  265. package/src/lib/middleware/validateBody.js.map +1 -0
  266. package/src/lib/middlewares/authentication.d.ts +2 -0
  267. package/src/lib/middlewares/authentication.d.ts.map +1 -1
  268. package/src/lib/middlewares/authentication.js.map +1 -1
  269. package/src/lib/routers/api.d.ts +27 -0
  270. package/src/lib/routers/api.d.ts.map +1 -1
  271. package/src/lib/routers/api.js +44 -0
  272. package/src/lib/routers/api.js.map +1 -1
  273. package/src/lib/routers/app.d.ts +22 -14
  274. package/src/lib/routers/app.d.ts.map +1 -1
  275. package/src/lib/routers/app.js +28 -116
  276. package/src/lib/routers/app.js.map +1 -1
  277. package/src/lib/services/auth.d.ts +3 -1
  278. package/src/lib/services/auth.d.ts.map +1 -1
  279. package/src/lib/services/auth.js +51 -4
  280. package/src/lib/services/auth.js.map +1 -1
  281. package/src/lib/services/brightchain-member-init.service.d.ts +66 -0
  282. package/src/lib/services/brightchain-member-init.service.d.ts.map +1 -0
  283. package/src/lib/services/brightchain-member-init.service.js +152 -0
  284. package/src/lib/services/brightchain-member-init.service.js.map +1 -0
  285. package/src/lib/services/brightpass.property.helpers.d.ts +23 -0
  286. package/src/lib/services/brightpass.property.helpers.d.ts.map +1 -0
  287. package/src/lib/services/brightpass.property.helpers.js +113 -0
  288. package/src/lib/services/brightpass.property.helpers.js.map +1 -0
  289. package/src/lib/services/clientWebSocketServer.d.ts +147 -0
  290. package/src/lib/services/clientWebSocketServer.d.ts.map +1 -0
  291. package/src/lib/services/clientWebSocketServer.js +437 -0
  292. package/src/lib/services/clientWebSocketServer.js.map +1 -0
  293. package/src/lib/services/index.d.ts +2 -0
  294. package/src/lib/services/index.d.ts.map +1 -1
  295. package/src/lib/services/index.js +2 -0
  296. package/src/lib/services/index.js.map +1 -1
  297. package/src/lib/stores/diskBlockAsyncStore.d.ts +4 -4
  298. package/src/lib/stores/diskBlockAsyncStore.d.ts.map +1 -1
  299. package/src/lib/stores/diskBlockAsyncStore.js.map +1 -1
  300. package/src/lib/stores/diskBlockStore.d.ts +82 -17
  301. package/src/lib/stores/diskBlockStore.d.ts.map +1 -1
  302. package/src/lib/stores/diskBlockStore.js +787 -19
  303. package/src/lib/stores/diskBlockStore.js.map +1 -1
  304. package/src/lib/stores/diskBlockSyncStore.d.ts +24 -5
  305. package/src/lib/stores/diskBlockSyncStore.d.ts.map +1 -1
  306. package/src/lib/stores/diskBlockSyncStore.js +30 -13
  307. package/src/lib/stores/diskBlockSyncStore.js.map +1 -1
  308. package/src/lib/upstream-stubs.d.ts +36 -0
  309. package/src/lib/upstream-stubs.d.ts.map +1 -0
  310. package/src/lib/upstream-stubs.js +43 -0
  311. package/src/lib/upstream-stubs.js.map +1 -0
  312. package/src/lib/validation/userValidation.d.ts +27 -0
  313. package/src/lib/validation/userValidation.d.ts.map +1 -0
  314. package/src/lib/validation/userValidation.js +70 -0
  315. package/src/lib/validation/userValidation.js.map +1 -0
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@brightchain/brightchain-api-lib",
3
- "version": "0.15.0",
3
+ "version": "0.17.0",
4
4
  "main": "./src/index.js",
5
5
  "types": "./src/index.d.ts",
6
6
  "dependencies": {
7
7
  "@aws-sdk/client-ses": "^3.859.0",
8
- "@brightchain/brightchain-lib": "0.15.0",
8
+ "@brightchain/brightchain-lib": "0.17.0",
9
9
  "@digitaldefiance/branded-enum": "^0.0.7",
10
10
  "@digitaldefiance/enclave-bridge-client": "^1.1.0",
11
- "@digitaldefiance/i18n-lib": "^4.5.0",
12
- "@digitaldefiance/node-ecies-lib": "^4.18.0",
11
+ "@digitaldefiance/i18n-lib": "^4.6.3",
12
+ "@digitaldefiance/node-ecies-lib": "^4.19.4",
13
13
  "@ethereumjs/wallet": "^10.0.0",
14
14
  "bip39": "^3.1.0",
15
15
  "buffer": "^6.0.3",
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Browser-safe exports from brightchain-api-lib
3
+ *
4
+ * This file exports only the types and constants that are safe to use
5
+ * in browser environments, excluding Node.js-specific implementations.
6
+ */
7
+ export * from './lib/constants';
8
+ export * from './lib/enumerations';
9
+ export * from './lib/errors';
10
+ export type { IApiConstants } from './lib/interfaces/api-constants';
11
+ export type { ClientSession, DefaultBackendIdType, SchemaMap, } from './lib/shared-types';
12
+ export * from './lib/browserKeyring';
13
+ //# sourceMappingURL=browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../brightchain-api-lib/src/browser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAG7B,YAAY,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,YAAY,EACV,aAAa,EACb,oBAAoB,EACpB,SAAS,GACV,MAAM,oBAAoB,CAAC;AAG5B,cAAc,sBAAsB,CAAC"}
package/src/browser.js ADDED
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ /**
3
+ * Browser-safe exports from brightchain-api-lib
4
+ *
5
+ * This file exports only the types and constants that are safe to use
6
+ * in browser environments, excluding Node.js-specific implementations.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ const tslib_1 = require("tslib");
10
+ // Export only constants and types, no Node.js implementations
11
+ tslib_1.__exportStar(require("./lib/constants"), exports);
12
+ tslib_1.__exportStar(require("./lib/enumerations"), exports);
13
+ tslib_1.__exportStar(require("./lib/errors"), exports);
14
+ // Export browser-safe keyring
15
+ tslib_1.__exportStar(require("./lib/browserKeyring"), exports);
16
+ //# sourceMappingURL=browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../brightchain-api-lib/src/browser.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,8DAA8D;AAC9D,0DAAgC;AAChC,6DAAmC;AACnC,uDAA6B;AAU7B,8BAA8B;AAC9B,+DAAqC"}
package/src/index.d.ts CHANGED
@@ -1,22 +1,26 @@
1
1
  export * from './lib/stores';
2
2
  export * from './lib/transforms';
3
3
  export * from './lib/services';
4
+ export * from './lib/adapters/brightChainDbDocumentStoreAdapter';
5
+ export * from './lib/databaseInit';
4
6
  export * from './lib/appConstants';
5
7
  export * from './lib/application';
6
- export * from './lib/application-base';
7
8
  export * from './lib/constants';
8
9
  export * from './lib/controllers';
10
+ export * from './lib/upstream-stubs';
9
11
  export * from './lib/enumerations';
10
12
  export * from './lib/environment';
11
13
  export * from './lib/errors';
12
14
  export * from './lib/interfaces';
13
15
  export * from './lib/datastore';
16
+ export * from './lib/middleware';
14
17
  export * from './lib/middlewares';
15
18
  export * from './lib/routers';
16
19
  export * from './lib/availability';
17
20
  export * from './lib/blockFetch';
18
21
  export * from './lib/utils/errorResponse';
19
22
  export * from './lib/utils/type-converters';
23
+ export * from './lib/validation/userValidation';
20
24
  export type { ClientSession, DefaultBackendIdType, SchemaMap, } from './lib/shared-types';
21
25
  export * from './lib/auth';
22
26
  export * from './lib/encryption';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../brightchain-api-lib/src/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AAGjC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAElC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AAKjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAG9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAE5C,YAAY,EACV,aAAa,EACb,oBAAoB,EACpB,SAAS,GACV,MAAM,oBAAoB,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,kBAAkB,CAAC;AAGjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../brightchain-api-lib/src/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AAGjC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,kDAAkD,CAAC;AACjE,cAAc,oBAAoB,CAAC;AAGnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AAErC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AAKjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAG9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAG5C,cAAc,iCAAiC,CAAC;AAEhD,YAAY,EACV,aAAa,EACb,oBAAoB,EACpB,SAAS,GACV,MAAM,oBAAoB,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,kBAAkB,CAAC;AAGjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC"}
package/src/index.js CHANGED
@@ -6,12 +6,15 @@ tslib_1.__exportStar(require("./lib/stores"), exports);
6
6
  tslib_1.__exportStar(require("./lib/transforms"), exports);
7
7
  // Export Node.js specific services
8
8
  tslib_1.__exportStar(require("./lib/services"), exports);
9
+ // Database initialization
10
+ tslib_1.__exportStar(require("./lib/adapters/brightChainDbDocumentStoreAdapter"), exports);
11
+ tslib_1.__exportStar(require("./lib/databaseInit"), exports);
9
12
  // API lib exports
10
13
  tslib_1.__exportStar(require("./lib/appConstants"), exports);
11
14
  tslib_1.__exportStar(require("./lib/application"), exports);
12
- tslib_1.__exportStar(require("./lib/application-base"), exports);
13
15
  tslib_1.__exportStar(require("./lib/constants"), exports);
14
16
  tslib_1.__exportStar(require("./lib/controllers"), exports);
17
+ tslib_1.__exportStar(require("./lib/upstream-stubs"), exports);
15
18
  // Note: UserController is exported from controllers/api, not controllers/user (which is the legacy location)
16
19
  tslib_1.__exportStar(require("./lib/enumerations"), exports);
17
20
  tslib_1.__exportStar(require("./lib/environment"), exports);
@@ -21,6 +24,7 @@ tslib_1.__exportStar(require("./lib/interfaces"), exports);
21
24
  // Duplicate with brightchain-lib: export * from './lib/interfaces/token-user';
22
25
  // Duplicate with brightchain-lib: export * from './lib/interfaces/wallet-seed';
23
26
  tslib_1.__exportStar(require("./lib/datastore"), exports);
27
+ tslib_1.__exportStar(require("./lib/middleware"), exports);
24
28
  tslib_1.__exportStar(require("./lib/middlewares"), exports);
25
29
  tslib_1.__exportStar(require("./lib/routers"), exports);
26
30
  // Note: FEC types (ParityData, FecRecoveryResult, IFecService) are re-exported from brightchain-lib
@@ -29,6 +33,8 @@ tslib_1.__exportStar(require("./lib/availability"), exports);
29
33
  tslib_1.__exportStar(require("./lib/blockFetch"), exports);
30
34
  tslib_1.__exportStar(require("./lib/utils/errorResponse"), exports);
31
35
  tslib_1.__exportStar(require("./lib/utils/type-converters"), exports);
36
+ // Validation utilities
37
+ tslib_1.__exportStar(require("./lib/validation/userValidation"), exports);
32
38
  // Auth exports
33
39
  tslib_1.__exportStar(require("./lib/auth"), exports);
34
40
  // Encryption exports
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../brightchain-api-lib/src/index.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AACrC,uDAA6B;AAC7B,2DAAiC;AAEjC,mCAAmC;AACnC,yDAA+B;AAE/B,kBAAkB;AAClB,6DAAmC;AACnC,4DAAkC;AAClC,iEAAuC;AACvC,0DAAgC;AAChC,4DAAkC;AAClC,6GAA6G;AAC7G,6DAAmC;AACnC,4DAAkC;AAClC,uDAA6B;AAC7B,2DAAiC;AACjC,iGAAiG;AACjG,+EAA+E;AAC/E,gFAAgF;AAEhF,0DAAgC;AAChC,4DAAkC;AAClC,wDAA8B;AAC9B,oGAAoG;AACpG,kFAAkF;AAClF,6DAAmC;AACnC,2DAAiC;AACjC,oEAA0C;AAC1C,sEAA4C;AAQ5C,eAAe;AACf,qDAA2B;AAE3B,qBAAqB;AACrB,2DAAiC;AAEjC,kBAAkB;AAClB,+DAAqC;AACrC,4DAAkC;AAClC,qEAA2C;AAC3C,8DAAoC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../brightchain-api-lib/src/index.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AACrC,uDAA6B;AAC7B,2DAAiC;AAEjC,mCAAmC;AACnC,yDAA+B;AAE/B,0BAA0B;AAC1B,2FAAiE;AACjE,6DAAmC;AAEnC,kBAAkB;AAClB,6DAAmC;AACnC,4DAAkC;AAClC,0DAAgC;AAChC,4DAAkC;AAClC,+DAAqC;AACrC,6GAA6G;AAC7G,6DAAmC;AACnC,4DAAkC;AAClC,uDAA6B;AAC7B,2DAAiC;AACjC,iGAAiG;AACjG,+EAA+E;AAC/E,gFAAgF;AAEhF,0DAAgC;AAChC,2DAAiC;AACjC,4DAAkC;AAClC,wDAA8B;AAC9B,oGAAoG;AACpG,kFAAkF;AAClF,6DAAmC;AACnC,2DAAiC;AACjC,oEAA0C;AAC1C,sEAA4C;AAE5C,uBAAuB;AACvB,0EAAgD;AAQhD,eAAe;AACf,qDAA2B;AAE3B,qBAAqB;AACrB,2DAAiC;AAEjC,kBAAkB;AAClB,+DAAqC;AACrC,4DAAkC;AAClC,qEAA2C;AAC3C,8DAAoC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @fileoverview Adapter that wraps BrightChainDb as an IDocumentStore.
3
+ *
4
+ * BrightChainDb's Collection.find() returns a Cursor synchronously, while
5
+ * IDocumentStore expects find() to return Promise<IDocumentCursor<T>>.
6
+ * This thin adapter bridges the structural mismatch so that
7
+ * EnergyAccountStore (in brightchain-lib) can use BrightChainDb for
8
+ * persistence without depending on brightchain-db directly.
9
+ *
10
+ * @module adapters/brightChainDbDocumentStoreAdapter
11
+ */
12
+ import type { IDocumentCollection, IDocumentStore } from '@brightchain/brightchain-lib';
13
+ import type { BrightChainDb } from '@brightchain/db';
14
+ /**
15
+ * Wraps a BrightChainDb instance to satisfy the IDocumentStore interface.
16
+ */
17
+ export declare class BrightChainDbDocumentStoreAdapter implements IDocumentStore {
18
+ private readonly db;
19
+ constructor(db: BrightChainDb);
20
+ collection<T>(name: string): IDocumentCollection<T>;
21
+ connect(uri?: string): Promise<void>;
22
+ isConnected(): boolean;
23
+ }
24
+ //# sourceMappingURL=brightChainDbDocumentStoreAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brightChainDbDocumentStoreAdapter.d.ts","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/adapters/brightChainDbDocumentStoreAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EACV,mBAAmB,EAEnB,cAAc,EACf,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,aAAa,EAAgB,MAAM,iBAAiB,CAAC;AAEnE;;GAEG;AACH,qBAAa,iCAAkC,YAAW,cAAc;IAC1D,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,aAAa;IAE9C,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,mBAAmB,CAAC,CAAC,CAAC;IAgC7C,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C,WAAW,IAAI,OAAO;CAGvB"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Adapter that wraps BrightChainDb as an IDocumentStore.
4
+ *
5
+ * BrightChainDb's Collection.find() returns a Cursor synchronously, while
6
+ * IDocumentStore expects find() to return Promise<IDocumentCursor<T>>.
7
+ * This thin adapter bridges the structural mismatch so that
8
+ * EnergyAccountStore (in brightchain-lib) can use BrightChainDb for
9
+ * persistence without depending on brightchain-db directly.
10
+ *
11
+ * @module adapters/brightChainDbDocumentStoreAdapter
12
+ */
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.BrightChainDbDocumentStoreAdapter = void 0;
15
+ /**
16
+ * Wraps a BrightChainDb instance to satisfy the IDocumentStore interface.
17
+ */
18
+ class BrightChainDbDocumentStoreAdapter {
19
+ constructor(db) {
20
+ this.db = db;
21
+ }
22
+ collection(name) {
23
+ const coll = this.db.collection(name);
24
+ return {
25
+ async find(filter) {
26
+ // Collection.find() returns a Cursor synchronously; wrap it
27
+ // as a Promise<IDocumentCursor<T>> by resolving immediately.
28
+ const cursor = coll.find(filter);
29
+ return {
30
+ async toArray() {
31
+ const docs = await cursor.toArray();
32
+ return docs;
33
+ },
34
+ };
35
+ },
36
+ async replaceOne(filter, doc, options) {
37
+ await coll.replaceOne(filter, doc, options);
38
+ },
39
+ async deleteOne(filter) {
40
+ const result = await coll.deleteOne(filter);
41
+ return result.deletedCount > 0;
42
+ },
43
+ };
44
+ }
45
+ async connect(uri) {
46
+ await this.db.connect(uri);
47
+ }
48
+ isConnected() {
49
+ return this.db.isConnected();
50
+ }
51
+ }
52
+ exports.BrightChainDbDocumentStoreAdapter = BrightChainDbDocumentStoreAdapter;
53
+ //# sourceMappingURL=brightChainDbDocumentStoreAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brightChainDbDocumentStoreAdapter.js","sourceRoot":"","sources":["../../../../../brightchain-api-lib/src/lib/adapters/brightChainDbDocumentStoreAdapter.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AASH;;GAEG;AACH,MAAa,iCAAiC;IAC5C,YAA6B,EAAiB;QAAjB,OAAE,GAAF,EAAE,CAAe;IAAG,CAAC;IAElD,UAAU,CAAI,IAAY;QACxB,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,UAAU,CAAe,IAAI,CAAC,CAAC;QACpD,OAAO;YACL,KAAK,CAAC,IAAI,CAAC,MAAkB;gBAC3B,4DAA4D;gBAC5D,6DAA6D;gBAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAA+B,CAAC,CAAC;gBAC1D,OAAO;oBACL,KAAK,CAAC,OAAO;wBACX,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpC,OAAO,IAAW,CAAC;oBACrB,CAAC;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,CAAC,UAAU,CACd,MAAkB,EAClB,GAAM,EACN,OAA8B;gBAE9B,MAAM,IAAI,CAAC,UAAU,CACnB,MAA+B,EAC/B,GAAmB,EACnB,OAAO,CACR,CAAC;YACJ,CAAC;YACD,KAAK,CAAC,SAAS,CAAC,MAAkB;gBAChC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAA+B,CAAC,CAAC;gBACrE,OAAO,MAAM,CAAC,YAAY,GAAG,CAAC,CAAC;YACjC,CAAC;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAY;QACxB,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;IAC/B,CAAC;CACF;AA1CD,8EA0CC"}
@@ -1,40 +1,11 @@
1
- import { PlatformID } from '@digitaldefiance/node-ecies-lib';
2
- import { IApplication, IBaseDocument, IConstants, PluginManager, ServiceContainer } from '@digitaldefiance/node-express-suite';
3
- import { DocumentStore } from './datastore/document-store';
4
- import { Environment } from './environment';
5
- import type { DefaultBackendIdType } from './shared-types';
6
1
  /**
7
- * Base Application class with core functionality
2
+ * @deprecated This file is no longer used.
3
+ *
4
+ * The local BaseApplication class has been removed as part of the upstream
5
+ * Application refactor. BrightChain's App<TID> now extends the upstream
6
+ * Application from @digitaldefiance/node-express-suite directly, and
7
+ * manages DocumentStore/BlockDocumentStore internally.
8
+ *
9
+ * See: brightchain-api-lib/src/lib/application.ts
8
10
  */
9
- export declare class BaseApplication<TID extends PlatformID = DefaultBackendIdType> implements IApplication<TID> {
10
- private _environment;
11
- get environment(): Environment<TID>;
12
- get constants(): IConstants;
13
- get db(): any;
14
- private _services;
15
- get services(): ServiceContainer;
16
- private _plugins;
17
- get plugins(): PluginManager<TID>;
18
- getModel<U extends IBaseDocument<any, any>>(modelName: string): U;
19
- reloadEnvironment(path?: string, override?: boolean): void;
20
- static get distDir(): string;
21
- /**
22
- * Flag indicating whether the application is ready to handle requests
23
- */
24
- protected _ready: boolean;
25
- /**
26
- * Get whether the application is ready to handle requests
27
- */
28
- get ready(): boolean;
29
- constructor(environment: Environment<TID>, documentStore?: DocumentStore);
30
- private readonly documentStore;
31
- /**
32
- * Start the application and connect to the database
33
- */
34
- start(delayReady?: boolean): Promise<void>;
35
- /**
36
- * Stop the application
37
- */
38
- stop(): Promise<void>;
39
- }
40
11
  //# sourceMappingURL=application-base.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"application-base.d.ts","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/application-base.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EACL,YAAY,EACZ,aAAa,EACb,UAAU,EACV,aAAa,EACb,gBAAgB,EACjB,MAAM,qCAAqC,CAAC;AAI7C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE3D;;GAEG;AACH,qBAAa,eAAe,CAC1B,GAAG,SAAS,UAAU,GAAG,oBAAoB,CAC7C,YAAW,YAAY,CAAC,GAAG,CAAC;IAC5B,OAAO,CAAC,YAAY,CAAmB;IACvC,IAAW,WAAW,IAAI,WAAW,CAAC,GAAG,CAAC,CAEzC;IAED,IAAW,SAAS,IAAI,UAAU,CAEjC;IAED,IAAW,EAAE,IAAI,GAAG,CAEnB;IAED,OAAO,CAAC,SAAS,CAA+B;IAChD,IAAW,QAAQ,IAAI,gBAAgB,CAKtC;IAED,OAAO,CAAC,QAAQ,CAAiC;IACjD,IAAW,OAAO,IAAI,aAAa,CAAC,GAAG,CAAC,CAKvC;IAEM,QAAQ,CAAC,CAAC,SAAS,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC;IAMjE,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,UAAO,GAAG,IAAI;IAI9D,WAAkB,OAAO,IAAI,MAAM,CAIlC;IAED;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,IAAW,KAAK,IAAI,OAAO,CAE1B;gBAEW,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,EAAE,aAAa;IAQxE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAE9C;;OAEG;IACU,KAAK,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAevD;;OAEG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAGnC"}
1
+ {"version":3,"file":"application-base.d.ts","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/application-base.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
@@ -1,84 +1,12 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BaseApplication = void 0;
4
- /* eslint-disable @typescript-eslint/no-explicit-any */
5
- const brightchain_lib_1 = require("@brightchain/brightchain-lib");
6
- const node_express_suite_1 = require("@digitaldefiance/node-express-suite");
7
- const path_1 = require("path");
8
- const appConstants_1 = require("./appConstants");
9
- const block_document_store_1 = require("./datastore/block-document-store");
10
- const environment_1 = require("./environment");
11
2
  /**
12
- * Base Application class with core functionality
3
+ * @deprecated This file is no longer used.
4
+ *
5
+ * The local BaseApplication class has been removed as part of the upstream
6
+ * Application refactor. BrightChain's App<TID> now extends the upstream
7
+ * Application from @digitaldefiance/node-express-suite directly, and
8
+ * manages DocumentStore/BlockDocumentStore internally.
9
+ *
10
+ * See: brightchain-api-lib/src/lib/application.ts
13
11
  */
14
- class BaseApplication {
15
- get environment() {
16
- return this._environment;
17
- }
18
- get constants() {
19
- return appConstants_1.AppConstants;
20
- }
21
- get db() {
22
- return this.documentStore;
23
- }
24
- get services() {
25
- if (!this._services) {
26
- this._services = new node_express_suite_1.ServiceContainer();
27
- }
28
- return this._services;
29
- }
30
- get plugins() {
31
- if (!this._plugins) {
32
- this._plugins = new node_express_suite_1.PluginManager();
33
- }
34
- return this._plugins;
35
- }
36
- getModel(modelName) {
37
- // Get a collection from the in-memory document store
38
- const collection = this.documentStore.collection(modelName);
39
- return collection;
40
- }
41
- reloadEnvironment(path, override = true) {
42
- this._environment = new environment_1.Environment(path, false, override);
43
- }
44
- static get distDir() {
45
- const cwd = process.cwd();
46
- const distPath = (0, path_1.join)(cwd, 'dist');
47
- return distPath;
48
- }
49
- /**
50
- * Get whether the application is ready to handle requests
51
- */
52
- get ready() {
53
- return this._ready;
54
- }
55
- constructor(environment, documentStore) {
56
- this._ready = false;
57
- this._environment = environment;
58
- this.documentStore =
59
- documentStore ??
60
- new block_document_store_1.BlockDocumentStore(new brightchain_lib_1.MemoryBlockStore(brightchain_lib_1.BlockSize.Small));
61
- }
62
- /**
63
- * Start the application and connect to the database
64
- */
65
- async start(delayReady) {
66
- if (this._ready) {
67
- console.error('Failed to start the application:', 'Application is already running');
68
- const err = new Error('Application is already running');
69
- if (process.env['NODE_ENV'] === 'test') {
70
- throw err;
71
- }
72
- process.exit(1);
73
- }
74
- this._ready = delayReady ? false : true;
75
- }
76
- /**
77
- * Stop the application
78
- */
79
- async stop() {
80
- this._ready = false;
81
- }
82
- }
83
- exports.BaseApplication = BaseApplication;
84
12
  //# sourceMappingURL=application-base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"application-base.js","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/application-base.ts"],"names":[],"mappings":";;;AAAA,uDAAuD;AACvD,kEAA2E;AAE3E,4EAM6C;AAC7C,+BAA4B;AAC5B,iDAA8C;AAC9C,2EAAsE;AAEtE,+CAA4C;AAG5C;;GAEG;AACH,MAAa,eAAe;IAI1B,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,2BAAY,CAAC;IACtB,CAAC;IAED,IAAW,EAAE;QACX,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAGD,IAAW,QAAQ;QACjB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,qCAAgB,EAAE,CAAC;QAC1C,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAGD,IAAW,OAAO;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,kCAAa,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAEM,QAAQ,CAAoC,SAAiB;QAClE,qDAAqD;QACrD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC5D,OAAO,UAA0B,CAAC;IACpC,CAAC;IAEM,iBAAiB,CAAC,IAAa,EAAE,QAAQ,GAAG,IAAI;QACrD,IAAI,CAAC,YAAY,GAAG,IAAI,yBAAW,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,KAAK,OAAO;QACvB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACnC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAOD;;OAEG;IACH,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,YAAY,WAA6B,EAAE,aAA6B;QACtE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,aAAa;YAChB,aAAa;gBACb,IAAI,yCAAkB,CAAC,IAAI,kCAAgB,CAAC,2BAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAClE,CAAC;IAID;;OAEG;IACI,KAAK,CAAC,KAAK,CAAC,UAAoB;QACrC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CACX,kCAAkC,EAClC,gCAAgC,CACjC,CAAC;YACF,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACxD,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,MAAM,EAAE,CAAC;gBACvC,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1C,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,IAAI;QACf,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;CACF;AA9FD,0CA8FC"}
1
+ {"version":3,"file":"application-base.js","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/application-base.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG"}
@@ -1,27 +1,60 @@
1
1
  import { IAvailabilityService, IDiscoveryProtocol, IReconciliationService } from '@brightchain/brightchain-lib';
2
2
  import { PlatformID } from '@digitaldefiance/node-ecies-lib';
3
- import { Application } from 'express';
4
- import { BaseApplication } from './application-base';
3
+ import { IConstants, Application as UpstreamApplication } from '@digitaldefiance/node-express-suite';
4
+ import { GossipService } from './availability/gossipService';
5
+ import { PoolDiscoveryService } from './availability/poolDiscoveryService';
6
+ import { DocumentCollection, DocumentRecord, DocumentStore } from './datastore/document-store';
5
7
  import { Environment } from './environment';
8
+ import { IBrightChainInitResult } from './interfaces/brightchain-init-result';
6
9
  import { ApiRouter } from './routers/api';
10
+ import { AppRouter } from './routers/app';
11
+ import { ClientWebSocketServer } from './services/clientWebSocketServer';
7
12
  import { EventNotificationSystem } from './services/eventNotificationSystem';
8
13
  import { MessagePassingService } from './services/messagePassingService';
9
14
  import { WebSocketMessageServer } from './services/webSocketMessageServer';
10
15
  /**
11
- * Application class
16
+ * Application class for BrightChain.
17
+ *
18
+ * Extends the upstream Application from @digitaldefiance/node-express-suite,
19
+ * inheriting HTTP/HTTPS server lifecycle, greenlock/Let's Encrypt support,
20
+ * middleware initialization, and graceful shutdown.
21
+ *
22
+ * BrightChain-specific concerns (services, WebSocket, UPnP, EventNotificationSystem)
23
+ * are initialized after the upstream start() completes.
24
+ *
25
+ * Mongoose-related upstream parameters are satisfied with no-op stubs since
26
+ * BrightChain uses DocumentStore/BlockDocumentStore instead.
12
27
  */
13
- export declare class App<TID extends PlatformID> extends BaseApplication<TID> {
14
- readonly expressApp: Application;
15
- private server;
28
+ export declare class App<TID extends PlatformID> extends UpstreamApplication<IBrightChainInitResult<TID>, Record<string, never>, TID, Environment<TID>, IConstants, AppRouter<TID>> {
16
29
  private controllers;
17
30
  private readonly keyStorage;
31
+ private readonly _brightchainDocumentStore;
18
32
  private apiRouter;
19
33
  private eventSystem;
20
34
  private wsServer;
35
+ private clientWsServer;
21
36
  private messagePassingService;
22
37
  private upnpManager;
38
+ /**
39
+ * Captured HTTP server reference for WebSocket attachment.
40
+ * The upstream Application stores the server as a private field,
41
+ * so we intercept expressApp.listen() to capture it here.
42
+ */
43
+ private _httpServer;
23
44
  constructor(environment: Environment<TID>);
24
- start(): Promise<void>;
45
+ /**
46
+ * Get the BrightChain document store.
47
+ * Overrides the upstream mongoose-based `db` getter since BrightChain
48
+ * uses its own BlockDocumentStore instead of mongoose.
49
+ */
50
+ get db(): DocumentStore;
51
+ /**
52
+ * Get a collection from the BrightChain document store by name.
53
+ * Overrides the upstream mongoose-based `getModel()` to delegate
54
+ * to the BlockDocumentStore's collection() method.
55
+ */
56
+ getModel<U extends DocumentRecord>(modelName: string): DocumentCollection<U>;
57
+ start(mongoUri?: string): Promise<void>;
25
58
  stop(): Promise<void>;
26
59
  getController<T = unknown>(name: string): T;
27
60
  setController(name: string, controller: unknown): void;
@@ -40,6 +73,12 @@ export declare class App<TID extends PlatformID> extends BaseApplication<TID> {
40
73
  * Useful for sending messages to connected nodes.
41
74
  */
42
75
  getWebSocketServer(): WebSocketMessageServer | null;
76
+ /**
77
+ * Get the ClientWebSocketServer instance.
78
+ * Used for Lumen client protocol connections.
79
+ * @see Requirements 9.6, 11.3
80
+ */
81
+ getClientWebSocketServer(): ClientWebSocketServer | null;
43
82
  /**
44
83
  * Set the MessagePassingService for the application.
45
84
  * This should be called after the application is started and
@@ -68,5 +107,15 @@ export declare class App<TID extends PlatformID> extends BaseApplication<TID> {
68
107
  * @requirements 4.4
69
108
  */
70
109
  setReconciliationService(service: IReconciliationService): void;
110
+ /**
111
+ * Set the PoolDiscoveryService and wire gossip handlers.
112
+ * Registers the service, connects GossipService pool announcement/removal
113
+ * handlers, and passes the service to the IntrospectionController via ApiRouter.
114
+ *
115
+ * @param poolDiscoveryService - The pool discovery service instance
116
+ * @param gossipService - The gossip service to wire pool announcement handlers to
117
+ * @see Requirements 7.1, 8.3
118
+ */
119
+ setPoolDiscoveryService(poolDiscoveryService: PoolDiscoveryService, gossipService: GossipService): void;
71
120
  }
72
121
  //# sourceMappingURL=application.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/application.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EAGvB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAY7D,OAAgB,EAAE,WAAW,EAAmC,MAAM,SAAS,CAAC;AAKhF,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAE3E;;GAEG;AACH,qBAAa,GAAG,CAAC,GAAG,SAAS,UAAU,CAAE,SAAQ,eAAe,CAAC,GAAG,CAAC;IACnE,SAAgB,UAAU,EAAE,WAAW,CAAC;IACxC,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,WAAW,CAAmC;IACtD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAC9C,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,WAAW,CAAwC;IAC3D,OAAO,CAAC,QAAQ,CAAuC;IACvD,OAAO,CAAC,qBAAqB,CAAsC;IACnE,OAAO,CAAC,WAAW,CAA4B;gBAEnC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC;IAcnB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAiLtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAkDpC,aAAa,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;IAI3C,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI;IAI7D;;;OAGG;IACI,YAAY,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI;IAI5C;;;OAGG;IACI,cAAc,IAAI,uBAAuB,GAAG,IAAI;IAIvD;;;OAGG;IACI,kBAAkB,IAAI,sBAAsB,GAAG,IAAI;IAI1D;;;;;OAKG;IACI,wBAAwB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI;IAQrE;;;;;OAKG;IACI,oBAAoB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI;IAO/D;;;;;OAKG;IACI,sBAAsB,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI;IAQlE;;;;;OAKG;IACI,wBAAwB,CAAC,OAAO,EAAE,sBAAsB,GAAG,IAAI;CAMvE"}
1
+ {"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../../../brightchain-api-lib/src/lib/application.ts"],"names":[],"mappings":"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"}