@digitaldefiance/node-express-suite 3.7.4 → 3.7.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (600) hide show
  1. package/package.json +2 -2
  2. package/src/__tests__/helpers/setup-test-env.d.ts +1 -1
  3. package/src/__tests__/helpers/setup-test-env.d.ts.map +1 -1
  4. package/src/__tests__/helpers/setup-test-env.js.map +1 -1
  5. package/src/application-base.d.ts +9 -4
  6. package/src/application-base.d.ts.map +1 -1
  7. package/src/application-base.js +5 -0
  8. package/src/application-base.js.map +1 -1
  9. package/src/application-concrete.d.ts +14 -1
  10. package/src/application-concrete.d.ts.map +1 -1
  11. package/src/application-concrete.js +14 -1
  12. package/src/application-concrete.js.map +1 -1
  13. package/src/application.d.ts +7 -2
  14. package/src/application.d.ts.map +1 -1
  15. package/src/application.js +5 -0
  16. package/src/application.js.map +1 -1
  17. package/src/backup-code.d.ts +5 -0
  18. package/src/backup-code.d.ts.map +1 -1
  19. package/src/backup-code.js +5 -0
  20. package/src/backup-code.js.map +1 -1
  21. package/src/builders/application-builder.d.ts +13 -1
  22. package/src/builders/application-builder.d.ts.map +1 -1
  23. package/src/builders/application-builder.js +12 -0
  24. package/src/builders/application-builder.js.map +1 -1
  25. package/src/constants.d.ts +5 -0
  26. package/src/constants.d.ts.map +1 -1
  27. package/src/constants.js +5 -0
  28. package/src/constants.js.map +1 -1
  29. package/src/container/service-container.d.ts +34 -0
  30. package/src/container/service-container.d.ts.map +1 -1
  31. package/src/container/service-container.js +30 -0
  32. package/src/container/service-container.js.map +1 -1
  33. package/src/container/service-definitions.d.ts +11 -0
  34. package/src/container/service-definitions.d.ts.map +1 -1
  35. package/src/container/service-definitions.js +8 -0
  36. package/src/container/service-definitions.js.map +1 -1
  37. package/src/controllers/base.d.ts +21 -8
  38. package/src/controllers/base.d.ts.map +1 -1
  39. package/src/controllers/base.js +13 -0
  40. package/src/controllers/base.js.map +1 -1
  41. package/src/controllers/user.d.ts +25 -8
  42. package/src/controllers/user.d.ts.map +1 -1
  43. package/src/controllers/user.js +17 -0
  44. package/src/controllers/user.js.map +1 -1
  45. package/src/database/database-initializer.d.ts +5 -0
  46. package/src/database/database-initializer.d.ts.map +1 -1
  47. package/src/database/database-initializer.js +5 -0
  48. package/src/database/database-initializer.js.map +1 -1
  49. package/src/decorators/base-controller.d.ts +11 -0
  50. package/src/decorators/base-controller.d.ts.map +1 -1
  51. package/src/decorators/base-controller.js +11 -0
  52. package/src/decorators/base-controller.js.map +1 -1
  53. package/src/decorators/controller.d.ts +5 -0
  54. package/src/decorators/controller.d.ts.map +1 -1
  55. package/src/decorators/controller.js +5 -0
  56. package/src/decorators/controller.js.map +1 -1
  57. package/src/decorators/zod-validation.d.ts +5 -0
  58. package/src/decorators/zod-validation.d.ts.map +1 -1
  59. package/src/decorators/zod-validation.js +5 -0
  60. package/src/decorators/zod-validation.js.map +1 -1
  61. package/src/defaults.d.ts +5 -0
  62. package/src/defaults.d.ts.map +1 -1
  63. package/src/defaults.js +5 -0
  64. package/src/defaults.js.map +1 -1
  65. package/src/documents/base.d.ts +12 -1
  66. package/src/documents/base.d.ts.map +1 -1
  67. package/src/documents/base.js +5 -0
  68. package/src/documents/base.js.map +1 -1
  69. package/src/documents/email-token.d.ts +9 -2
  70. package/src/documents/email-token.d.ts.map +1 -1
  71. package/src/documents/email-token.js +5 -0
  72. package/src/documents/email-token.js.map +1 -1
  73. package/src/documents/mnemonic.d.ts +10 -2
  74. package/src/documents/mnemonic.d.ts.map +1 -1
  75. package/src/documents/mnemonic.js +5 -0
  76. package/src/documents/mnemonic.js.map +1 -1
  77. package/src/documents/role.d.ts +9 -2
  78. package/src/documents/role.d.ts.map +1 -1
  79. package/src/documents/role.js +5 -0
  80. package/src/documents/role.js.map +1 -1
  81. package/src/documents/used-direct-login-token.d.ts +12 -1
  82. package/src/documents/used-direct-login-token.d.ts.map +1 -1
  83. package/src/documents/used-direct-login-token.js +5 -0
  84. package/src/documents/used-direct-login-token.js.map +1 -1
  85. package/src/documents/user-role.d.ts +10 -2
  86. package/src/documents/user-role.d.ts.map +1 -1
  87. package/src/documents/user-role.js +5 -0
  88. package/src/documents/user-role.js.map +1 -1
  89. package/src/documents/user.d.ts +10 -2
  90. package/src/documents/user.d.ts.map +1 -1
  91. package/src/documents/user.js +5 -0
  92. package/src/documents/user.js.map +1 -1
  93. package/src/enumerations/base-model-name.d.ts +5 -0
  94. package/src/enumerations/base-model-name.d.ts.map +1 -1
  95. package/src/enumerations/base-model-name.js +5 -0
  96. package/src/enumerations/base-model-name.js.map +1 -1
  97. package/src/enumerations/length-encoding-type.d.ts +9 -0
  98. package/src/enumerations/length-encoding-type.d.ts.map +1 -1
  99. package/src/enumerations/length-encoding-type.js +9 -0
  100. package/src/enumerations/length-encoding-type.js.map +1 -1
  101. package/src/enumerations/schema-collection.d.ts +5 -0
  102. package/src/enumerations/schema-collection.d.ts.map +1 -1
  103. package/src/enumerations/schema-collection.js +5 -0
  104. package/src/enumerations/schema-collection.js.map +1 -1
  105. package/src/enumerations/symmetric-error-type.d.ts +8 -0
  106. package/src/enumerations/symmetric-error-type.d.ts.map +1 -1
  107. package/src/enumerations/symmetric-error-type.js +8 -0
  108. package/src/enumerations/symmetric-error-type.js.map +1 -1
  109. package/src/environment.d.ts +15 -10
  110. package/src/environment.d.ts.map +1 -1
  111. package/src/environment.js +5 -0
  112. package/src/environment.js.map +1 -1
  113. package/src/errors/express-validation.d.ts +15 -0
  114. package/src/errors/express-validation.d.ts.map +1 -1
  115. package/src/errors/express-validation.js +15 -0
  116. package/src/errors/express-validation.js.map +1 -1
  117. package/src/errors/invalid-backup-code-version.d.ts +13 -0
  118. package/src/errors/invalid-backup-code-version.d.ts.map +1 -1
  119. package/src/errors/invalid-backup-code-version.js +13 -0
  120. package/src/errors/invalid-backup-code-version.js.map +1 -1
  121. package/src/errors/invalid-jwt-token.d.ts +12 -0
  122. package/src/errors/invalid-jwt-token.d.ts.map +1 -1
  123. package/src/errors/invalid-jwt-token.js +12 -0
  124. package/src/errors/invalid-jwt-token.js.map +1 -1
  125. package/src/errors/invalid-model.d.ts +12 -0
  126. package/src/errors/invalid-model.d.ts.map +1 -1
  127. package/src/errors/invalid-model.js +12 -0
  128. package/src/errors/invalid-model.js.map +1 -1
  129. package/src/errors/invalid-new-password.d.ts +14 -0
  130. package/src/errors/invalid-new-password.d.ts.map +1 -1
  131. package/src/errors/invalid-new-password.js +14 -0
  132. package/src/errors/invalid-new-password.js.map +1 -1
  133. package/src/errors/invalid-password.d.ts +14 -0
  134. package/src/errors/invalid-password.d.ts.map +1 -1
  135. package/src/errors/invalid-password.js +14 -0
  136. package/src/errors/invalid-password.js.map +1 -1
  137. package/src/errors/missing-validated-data.d.ts +17 -0
  138. package/src/errors/missing-validated-data.d.ts.map +1 -1
  139. package/src/errors/missing-validated-data.js +17 -0
  140. package/src/errors/missing-validated-data.js.map +1 -1
  141. package/src/errors/mnemonic-or-password-required.d.ts +12 -0
  142. package/src/errors/mnemonic-or-password-required.d.ts.map +1 -1
  143. package/src/errors/mnemonic-or-password-required.js +12 -0
  144. package/src/errors/mnemonic-or-password-required.js.map +1 -1
  145. package/src/errors/model-not-registered.d.ts +12 -0
  146. package/src/errors/model-not-registered.d.ts.map +1 -1
  147. package/src/errors/model-not-registered.js +12 -0
  148. package/src/errors/model-not-registered.js.map +1 -1
  149. package/src/errors/mongoose-validation.d.ts +16 -0
  150. package/src/errors/mongoose-validation.d.ts.map +1 -1
  151. package/src/errors/mongoose-validation.js +16 -0
  152. package/src/errors/mongoose-validation.js.map +1 -1
  153. package/src/errors/symmetric.d.ts +15 -0
  154. package/src/errors/symmetric.d.ts.map +1 -1
  155. package/src/errors/symmetric.js +15 -0
  156. package/src/errors/symmetric.js.map +1 -1
  157. package/src/errors/token-expired.d.ts +12 -0
  158. package/src/errors/token-expired.d.ts.map +1 -1
  159. package/src/errors/token-expired.js +12 -0
  160. package/src/errors/token-expired.js.map +1 -1
  161. package/src/get-language.d.ts +10 -0
  162. package/src/get-language.d.ts.map +1 -1
  163. package/src/get-language.js +10 -0
  164. package/src/get-language.js.map +1 -1
  165. package/src/get-timezone.d.ts +10 -0
  166. package/src/get-timezone.d.ts.map +1 -1
  167. package/src/get-timezone.js +15 -1
  168. package/src/get-timezone.js.map +1 -1
  169. package/src/interfaces/api-error-response.d.ts +9 -0
  170. package/src/interfaces/api-error-response.d.ts.map +1 -1
  171. package/src/interfaces/api-error-response.js +5 -0
  172. package/src/interfaces/api-error-response.js.map +1 -1
  173. package/src/interfaces/api-express-validation-error-response.d.ts +9 -0
  174. package/src/interfaces/api-express-validation-error-response.d.ts.map +1 -1
  175. package/src/interfaces/api-express-validation-error-response.js +5 -0
  176. package/src/interfaces/api-express-validation-error-response.js.map +1 -1
  177. package/src/interfaces/api-message-response.d.ts +8 -0
  178. package/src/interfaces/api-message-response.d.ts.map +1 -1
  179. package/src/interfaces/api-message-response.js +5 -0
  180. package/src/interfaces/api-message-response.js.map +1 -1
  181. package/src/interfaces/api-mongo-validation-error-response.d.ts +10 -0
  182. package/src/interfaces/api-mongo-validation-error-response.d.ts.map +1 -1
  183. package/src/interfaces/api-mongo-validation-error-response.js +5 -0
  184. package/src/interfaces/api-mongo-validation-error-response.js.map +1 -1
  185. package/src/interfaces/api-responses/backup-codes-response.d.ts +9 -0
  186. package/src/interfaces/api-responses/backup-codes-response.d.ts.map +1 -1
  187. package/src/interfaces/api-responses/backup-codes-response.js +5 -0
  188. package/src/interfaces/api-responses/backup-codes-response.js.map +1 -1
  189. package/src/interfaces/api-responses/challenge-response.d.ts +10 -0
  190. package/src/interfaces/api-responses/challenge-response.d.ts.map +1 -1
  191. package/src/interfaces/api-responses/challenge-response.js +4 -0
  192. package/src/interfaces/api-responses/challenge-response.js.map +1 -1
  193. package/src/interfaces/api-responses/code-count-response.d.ts +6 -0
  194. package/src/interfaces/api-responses/code-count-response.d.ts.map +1 -1
  195. package/src/interfaces/api-responses/code-count-response.js +5 -0
  196. package/src/interfaces/api-responses/code-count-response.js.map +1 -1
  197. package/src/interfaces/api-responses/login-response.d.ts +9 -0
  198. package/src/interfaces/api-responses/login-response.d.ts.map +1 -1
  199. package/src/interfaces/api-responses/login-response.js +5 -0
  200. package/src/interfaces/api-responses/login-response.js.map +1 -1
  201. package/src/interfaces/api-responses/mnemonic-response.d.ts +9 -0
  202. package/src/interfaces/api-responses/mnemonic-response.d.ts.map +1 -1
  203. package/src/interfaces/api-responses/mnemonic-response.js +4 -0
  204. package/src/interfaces/api-responses/mnemonic-response.js.map +1 -1
  205. package/src/interfaces/api-responses/registration-response.d.ts +10 -0
  206. package/src/interfaces/api-responses/registration-response.d.ts.map +1 -1
  207. package/src/interfaces/api-responses/registration-response.js +4 -0
  208. package/src/interfaces/api-responses/registration-response.js.map +1 -1
  209. package/src/interfaces/api-responses/request-user-response.d.ts +9 -0
  210. package/src/interfaces/api-responses/request-user-response.d.ts.map +1 -1
  211. package/src/interfaces/api-responses/request-user-response.js +5 -0
  212. package/src/interfaces/api-responses/request-user-response.js.map +1 -1
  213. package/src/interfaces/api-responses/user-settings-response.d.ts +6 -0
  214. package/src/interfaces/api-responses/user-settings-response.d.ts.map +1 -1
  215. package/src/interfaces/api-responses/user-settings-response.js +5 -0
  216. package/src/interfaces/api-responses/user-settings-response.js.map +1 -1
  217. package/src/interfaces/application.d.ts +22 -0
  218. package/src/interfaces/application.d.ts.map +1 -1
  219. package/src/interfaces/application.js +5 -0
  220. package/src/interfaces/application.js.map +1 -1
  221. package/src/interfaces/backend-objects/email-token.d.ts +10 -1
  222. package/src/interfaces/backend-objects/email-token.d.ts.map +1 -1
  223. package/src/interfaces/backend-objects/email-token.js +5 -0
  224. package/src/interfaces/backend-objects/email-token.js.map +1 -1
  225. package/src/interfaces/backend-objects/request-user.d.ts +11 -1
  226. package/src/interfaces/backend-objects/request-user.d.ts.map +1 -1
  227. package/src/interfaces/backend-objects/request-user.js +5 -0
  228. package/src/interfaces/backend-objects/request-user.js.map +1 -1
  229. package/src/interfaces/backend-objects/role.d.ts +10 -1
  230. package/src/interfaces/backend-objects/role.d.ts.map +1 -1
  231. package/src/interfaces/backend-objects/role.js +5 -0
  232. package/src/interfaces/backend-objects/role.js.map +1 -1
  233. package/src/interfaces/backend-objects/user.d.ts +11 -1
  234. package/src/interfaces/backend-objects/user.d.ts.map +1 -1
  235. package/src/interfaces/backend-objects/user.js +5 -0
  236. package/src/interfaces/backend-objects/user.js.map +1 -1
  237. package/src/interfaces/checksum-config.d.ts +10 -0
  238. package/src/interfaces/checksum-config.d.ts.map +1 -1
  239. package/src/interfaces/checksum-config.js +5 -0
  240. package/src/interfaces/checksum-config.js.map +1 -1
  241. package/src/interfaces/checksum-consts.d.ts +9 -0
  242. package/src/interfaces/checksum-consts.d.ts.map +1 -1
  243. package/src/interfaces/checksum-consts.js +5 -0
  244. package/src/interfaces/checksum-consts.js.map +1 -1
  245. package/src/interfaces/constants.d.ts +7 -2
  246. package/src/interfaces/constants.d.ts.map +1 -1
  247. package/src/interfaces/constants.js +5 -0
  248. package/src/interfaces/constants.js.map +1 -1
  249. package/src/interfaces/controller-config.d.ts +27 -10
  250. package/src/interfaces/controller-config.d.ts.map +1 -1
  251. package/src/interfaces/controller-config.js +5 -0
  252. package/src/interfaces/controller-config.js.map +1 -1
  253. package/src/interfaces/create-user-basics.d.ts +7 -1
  254. package/src/interfaces/create-user-basics.d.ts.map +1 -1
  255. package/src/interfaces/create-user-basics.js +5 -0
  256. package/src/interfaces/create-user-basics.js.map +1 -1
  257. package/src/interfaces/csp-config.d.ts +15 -0
  258. package/src/interfaces/csp-config.d.ts.map +1 -1
  259. package/src/interfaces/csp-config.js +10 -0
  260. package/src/interfaces/csp-config.js.map +1 -1
  261. package/src/interfaces/csp-definition.d.ts +21 -0
  262. package/src/interfaces/csp-definition.d.ts.map +1 -1
  263. package/src/interfaces/csp-definition.js +10 -0
  264. package/src/interfaces/csp-definition.js.map +1 -1
  265. package/src/interfaces/db-init-result.d.ts +11 -0
  266. package/src/interfaces/db-init-result.d.ts.map +1 -1
  267. package/src/interfaces/db-init-result.js +5 -0
  268. package/src/interfaces/db-init-result.js.map +1 -1
  269. package/src/interfaces/deep-partial.d.ts +10 -0
  270. package/src/interfaces/deep-partial.d.ts.map +1 -1
  271. package/src/interfaces/deep-partial.js +5 -0
  272. package/src/interfaces/deep-partial.js.map +1 -1
  273. package/src/interfaces/discriminator-collections.d.ts +11 -1
  274. package/src/interfaces/discriminator-collections.d.ts.map +1 -1
  275. package/src/interfaces/discriminator-collections.js +5 -0
  276. package/src/interfaces/discriminator-collections.js.map +1 -1
  277. package/src/interfaces/email-service.d.ts +17 -0
  278. package/src/interfaces/email-service.d.ts.map +1 -1
  279. package/src/interfaces/email-service.js +5 -0
  280. package/src/interfaces/email-service.js.map +1 -1
  281. package/src/interfaces/environment-mongo.d.ts +9 -0
  282. package/src/interfaces/environment-mongo.d.ts.map +1 -1
  283. package/src/interfaces/environment-mongo.js +5 -0
  284. package/src/interfaces/environment-mongo.js.map +1 -1
  285. package/src/interfaces/environment.d.ts +20 -10
  286. package/src/interfaces/environment.d.ts.map +1 -1
  287. package/src/interfaces/environment.js +5 -0
  288. package/src/interfaces/environment.js.map +1 -1
  289. package/src/interfaces/failable-result.d.ts +13 -0
  290. package/src/interfaces/failable-result.d.ts.map +1 -1
  291. package/src/interfaces/failable-result.js +5 -0
  292. package/src/interfaces/failable-result.js.map +1 -1
  293. package/src/interfaces/fec-consts.d.ts +9 -0
  294. package/src/interfaces/fec-consts.d.ts.map +1 -1
  295. package/src/interfaces/fec-consts.js +5 -0
  296. package/src/interfaces/fec-consts.js.map +1 -1
  297. package/src/interfaces/flexible-csp.d.ts +16 -0
  298. package/src/interfaces/flexible-csp.d.ts.map +1 -1
  299. package/src/interfaces/flexible-csp.js +10 -0
  300. package/src/interfaces/flexible-csp.js.map +1 -1
  301. package/src/interfaces/handleable-error-options.d.ts +12 -0
  302. package/src/interfaces/handleable-error-options.d.ts.map +1 -1
  303. package/src/interfaces/handleable-error-options.js +5 -0
  304. package/src/interfaces/handleable-error-options.js.map +1 -1
  305. package/src/interfaces/jwt-consts.d.ts +9 -0
  306. package/src/interfaces/jwt-consts.d.ts.map +1 -1
  307. package/src/interfaces/jwt-consts.js +5 -0
  308. package/src/interfaces/jwt-consts.js.map +1 -1
  309. package/src/interfaces/jwt-sign-response.d.ts +12 -1
  310. package/src/interfaces/jwt-sign-response.d.ts.map +1 -1
  311. package/src/interfaces/jwt-sign-response.js +5 -0
  312. package/src/interfaces/jwt-sign-response.js.map +1 -1
  313. package/src/interfaces/models/email-token.d.ts +7 -1
  314. package/src/interfaces/models/email-token.d.ts.map +1 -1
  315. package/src/interfaces/models/email-token.js +5 -0
  316. package/src/interfaces/models/email-token.js.map +1 -1
  317. package/src/interfaces/models/mnemonic.d.ts +8 -1
  318. package/src/interfaces/models/mnemonic.d.ts.map +1 -1
  319. package/src/interfaces/models/mnemonic.js +5 -0
  320. package/src/interfaces/models/mnemonic.js.map +1 -1
  321. package/src/interfaces/models/role.d.ts +7 -1
  322. package/src/interfaces/models/role.d.ts.map +1 -1
  323. package/src/interfaces/models/role.js +5 -0
  324. package/src/interfaces/models/role.js.map +1 -1
  325. package/src/interfaces/models/token-role.d.ts +11 -3
  326. package/src/interfaces/models/token-role.d.ts.map +1 -1
  327. package/src/interfaces/models/token-role.js +5 -0
  328. package/src/interfaces/models/token-role.js.map +1 -1
  329. package/src/interfaces/models/used-direct-login-token.d.ts +11 -3
  330. package/src/interfaces/models/used-direct-login-token.d.ts.map +1 -1
  331. package/src/interfaces/models/used-direct-login-token.js +5 -0
  332. package/src/interfaces/models/used-direct-login-token.js.map +1 -1
  333. package/src/interfaces/models/user-role.d.ts +11 -3
  334. package/src/interfaces/models/user-role.d.ts.map +1 -1
  335. package/src/interfaces/models/user-role.js +5 -0
  336. package/src/interfaces/models/user-role.js.map +1 -1
  337. package/src/interfaces/models/user.d.ts +13 -3
  338. package/src/interfaces/models/user.d.ts.map +1 -1
  339. package/src/interfaces/models/user.js +5 -0
  340. package/src/interfaces/models/user.js.map +1 -1
  341. package/src/interfaces/mongo-errors.d.ts +8 -0
  342. package/src/interfaces/mongo-errors.d.ts.map +1 -1
  343. package/src/interfaces/mongo-errors.js +5 -0
  344. package/src/interfaces/mongo-errors.js.map +1 -1
  345. package/src/interfaces/request-user.d.ts +16 -7
  346. package/src/interfaces/request-user.d.ts.map +1 -1
  347. package/src/interfaces/request-user.js +5 -0
  348. package/src/interfaces/request-user.js.map +1 -1
  349. package/src/interfaces/required-string-keys.d.ts +9 -3
  350. package/src/interfaces/required-string-keys.d.ts.map +1 -1
  351. package/src/interfaces/required-string-keys.js +5 -0
  352. package/src/interfaces/required-string-keys.js.map +1 -1
  353. package/src/interfaces/schema.d.ts +11 -3
  354. package/src/interfaces/schema.d.ts.map +1 -1
  355. package/src/interfaces/schema.js +5 -0
  356. package/src/interfaces/schema.js.map +1 -1
  357. package/src/interfaces/server-init-result.d.ts +23 -13
  358. package/src/interfaces/server-init-result.d.ts.map +1 -1
  359. package/src/interfaces/server-init-result.js +5 -0
  360. package/src/interfaces/server-init-result.js.map +1 -1
  361. package/src/interfaces/status-code-response.d.ts +12 -0
  362. package/src/interfaces/status-code-response.d.ts.map +1 -1
  363. package/src/interfaces/status-code-response.js +5 -0
  364. package/src/interfaces/status-code-response.js.map +1 -1
  365. package/src/interfaces/symmetric-encryption-results.d.ts +10 -0
  366. package/src/interfaces/symmetric-encryption-results.d.ts.map +1 -1
  367. package/src/interfaces/symmetric-encryption-results.js +5 -0
  368. package/src/interfaces/symmetric-encryption-results.js.map +1 -1
  369. package/src/interfaces/test-environment.d.ts +10 -0
  370. package/src/interfaces/test-environment.d.ts.map +1 -1
  371. package/src/interfaces/test-environment.js +5 -0
  372. package/src/interfaces/test-environment.js.map +1 -1
  373. package/src/interfaces/token-response.d.ts +10 -0
  374. package/src/interfaces/token-response.d.ts.map +1 -1
  375. package/src/interfaces/token-response.js +5 -0
  376. package/src/interfaces/token-response.js.map +1 -1
  377. package/src/middleware-utils.d.ts +23 -0
  378. package/src/middleware-utils.d.ts.map +1 -1
  379. package/src/middleware-utils.js +23 -0
  380. package/src/middleware-utils.js.map +1 -1
  381. package/src/middlewares/authenticate-crypto.d.ts +20 -3
  382. package/src/middlewares/authenticate-crypto.d.ts.map +1 -1
  383. package/src/middlewares/authenticate-crypto.js +19 -2
  384. package/src/middlewares/authenticate-crypto.js.map +1 -1
  385. package/src/middlewares/authenticate-token.d.ts +23 -10
  386. package/src/middlewares/authenticate-token.d.ts.map +1 -1
  387. package/src/middlewares/authenticate-token.js +22 -9
  388. package/src/middlewares/authenticate-token.js.map +1 -1
  389. package/src/middlewares/cleanup-crypto.d.ts +11 -2
  390. package/src/middlewares/cleanup-crypto.d.ts.map +1 -1
  391. package/src/middlewares/cleanup-crypto.js +11 -2
  392. package/src/middlewares/cleanup-crypto.js.map +1 -1
  393. package/src/middlewares/set-global-context-language.d.ts +13 -0
  394. package/src/middlewares/set-global-context-language.d.ts.map +1 -1
  395. package/src/middlewares/set-global-context-language.js +14 -1
  396. package/src/middlewares/set-global-context-language.js.map +1 -1
  397. package/src/model-registry.d.ts +63 -7
  398. package/src/model-registry.d.ts.map +1 -1
  399. package/src/model-registry.js +50 -0
  400. package/src/model-registry.js.map +1 -1
  401. package/src/models/email-token.d.ts +17 -1
  402. package/src/models/email-token.d.ts.map +1 -1
  403. package/src/models/email-token.js +5 -0
  404. package/src/models/email-token.js.map +1 -1
  405. package/src/models/mnemonic.d.ts +17 -1
  406. package/src/models/mnemonic.d.ts.map +1 -1
  407. package/src/models/mnemonic.js +16 -0
  408. package/src/models/mnemonic.js.map +1 -1
  409. package/src/models/role.d.ts +17 -1
  410. package/src/models/role.d.ts.map +1 -1
  411. package/src/models/role.js +16 -0
  412. package/src/models/role.js.map +1 -1
  413. package/src/models/used-direct-login-token.d.ts +17 -1
  414. package/src/models/used-direct-login-token.d.ts.map +1 -1
  415. package/src/models/used-direct-login-token.js +5 -0
  416. package/src/models/used-direct-login-token.js.map +1 -1
  417. package/src/models/user-role.d.ts +17 -1
  418. package/src/models/user-role.d.ts.map +1 -1
  419. package/src/models/user-role.js +16 -0
  420. package/src/models/user-role.js.map +1 -1
  421. package/src/models/user.d.ts +17 -1
  422. package/src/models/user.d.ts.map +1 -1
  423. package/src/models/user.js +16 -0
  424. package/src/models/user.js.map +1 -1
  425. package/src/pipeline/pipeline-builder.d.ts +8 -0
  426. package/src/pipeline/pipeline-builder.d.ts.map +1 -1
  427. package/src/pipeline/pipeline-builder.js +8 -0
  428. package/src/pipeline/pipeline-builder.js.map +1 -1
  429. package/src/plugins/plugin-interface.d.ts +9 -0
  430. package/src/plugins/plugin-interface.d.ts.map +1 -1
  431. package/src/plugins/plugin-interface.js +5 -0
  432. package/src/plugins/plugin-interface.js.map +1 -1
  433. package/src/plugins/plugin-manager.d.ts +9 -0
  434. package/src/plugins/plugin-manager.d.ts.map +1 -1
  435. package/src/plugins/plugin-manager.js +9 -0
  436. package/src/plugins/plugin-manager.js.map +1 -1
  437. package/src/registry/email-service-registry.d.ts +28 -6
  438. package/src/registry/email-service-registry.d.ts.map +1 -1
  439. package/src/registry/email-service-registry.js +28 -6
  440. package/src/registry/email-service-registry.js.map +1 -1
  441. package/src/responses/response-builder.d.ts +79 -0
  442. package/src/responses/response-builder.d.ts.map +1 -1
  443. package/src/responses/response-builder.js +79 -0
  444. package/src/responses/response-builder.js.map +1 -1
  445. package/src/routers/api.d.ts +36 -5
  446. package/src/routers/api.d.ts.map +1 -1
  447. package/src/routers/api.js +34 -4
  448. package/src/routers/api.js.map +1 -1
  449. package/src/routers/app.d.ts +61 -7
  450. package/src/routers/app.d.ts.map +1 -1
  451. package/src/routers/app.js +62 -5
  452. package/src/routers/app.js.map +1 -1
  453. package/src/routers/base.d.ts +17 -0
  454. package/src/routers/base.d.ts.map +1 -1
  455. package/src/routers/base.js +17 -0
  456. package/src/routers/base.js.map +1 -1
  457. package/src/routers/router-config.d.ts +17 -0
  458. package/src/routers/router-config.d.ts.map +1 -1
  459. package/src/routers/router-config.js +8 -0
  460. package/src/routers/router-config.js.map +1 -1
  461. package/src/routing/route-builder.d.ts +85 -0
  462. package/src/routing/route-builder.d.ts.map +1 -1
  463. package/src/routing/route-builder.js +81 -0
  464. package/src/routing/route-builder.js.map +1 -1
  465. package/src/schemas/email-token.d.ts +19 -3
  466. package/src/schemas/email-token.d.ts.map +1 -1
  467. package/src/schemas/email-token.js +15 -2
  468. package/src/schemas/email-token.js.map +1 -1
  469. package/src/schemas/mnemonic.d.ts +12 -2
  470. package/src/schemas/mnemonic.d.ts.map +1 -1
  471. package/src/schemas/mnemonic.js +12 -2
  472. package/src/schemas/mnemonic.js.map +1 -1
  473. package/src/schemas/role.d.ts +18 -3
  474. package/src/schemas/role.d.ts.map +1 -1
  475. package/src/schemas/role.js +15 -2
  476. package/src/schemas/role.js.map +1 -1
  477. package/src/schemas/schema.d.ts +21 -1
  478. package/src/schemas/schema.d.ts.map +1 -1
  479. package/src/schemas/schema.js +11 -0
  480. package/src/schemas/schema.js.map +1 -1
  481. package/src/schemas/used-direct-login-token.d.ts +15 -3
  482. package/src/schemas/used-direct-login-token.d.ts.map +1 -1
  483. package/src/schemas/used-direct-login-token.js +13 -2
  484. package/src/schemas/used-direct-login-token.js.map +1 -1
  485. package/src/schemas/user-role.d.ts +16 -3
  486. package/src/schemas/user-role.d.ts.map +1 -1
  487. package/src/schemas/user-role.js +14 -2
  488. package/src/schemas/user-role.js.map +1 -1
  489. package/src/schemas/user.d.ts +20 -1
  490. package/src/schemas/user.d.ts.map +1 -1
  491. package/src/schemas/user.js +20 -1
  492. package/src/schemas/user.js.map +1 -1
  493. package/src/services/backup-code.d.ts +22 -18
  494. package/src/services/backup-code.d.ts.map +1 -1
  495. package/src/services/backup-code.js +12 -8
  496. package/src/services/backup-code.js.map +1 -1
  497. package/src/services/base.d.ts +11 -0
  498. package/src/services/base.d.ts.map +1 -1
  499. package/src/services/base.js +11 -0
  500. package/src/services/base.js.map +1 -1
  501. package/src/services/checksum.d.ts +50 -29
  502. package/src/services/checksum.d.ts.map +1 -1
  503. package/src/services/checksum.js +50 -29
  504. package/src/services/checksum.js.map +1 -1
  505. package/src/services/database-initialization.d.ts +82 -55
  506. package/src/services/database-initialization.d.ts.map +1 -1
  507. package/src/services/database-initialization.js +61 -35
  508. package/src/services/database-initialization.js.map +1 -1
  509. package/src/services/db-init-cache.d.ts +8 -0
  510. package/src/services/db-init-cache.d.ts.map +1 -1
  511. package/src/services/db-init-cache.js +4 -0
  512. package/src/services/db-init-cache.js.map +1 -1
  513. package/src/services/direct-login-token.d.ts +22 -1
  514. package/src/services/direct-login-token.d.ts.map +1 -1
  515. package/src/services/direct-login-token.js +21 -0
  516. package/src/services/direct-login-token.js.map +1 -1
  517. package/src/services/dummy-email-service.d.ts +20 -1
  518. package/src/services/dummy-email-service.d.ts.map +1 -1
  519. package/src/services/dummy-email-service.js +20 -1
  520. package/src/services/dummy-email-service.js.map +1 -1
  521. package/src/services/fec-usage-example.d.ts +25 -5
  522. package/src/services/fec-usage-example.d.ts.map +1 -1
  523. package/src/services/fec-usage-example.js +25 -5
  524. package/src/services/fec-usage-example.js.map +1 -1
  525. package/src/services/fec.d.ts +49 -7
  526. package/src/services/fec.d.ts.map +1 -1
  527. package/src/services/fec.js +39 -7
  528. package/src/services/fec.js.map +1 -1
  529. package/src/services/jwt.d.ts +17 -2
  530. package/src/services/jwt.d.ts.map +1 -1
  531. package/src/services/jwt.js +15 -0
  532. package/src/services/jwt.js.map +1 -1
  533. package/src/services/key-wrapping.d.ts +86 -8
  534. package/src/services/key-wrapping.d.ts.map +1 -1
  535. package/src/services/key-wrapping.js +75 -10
  536. package/src/services/key-wrapping.js.map +1 -1
  537. package/src/services/mnemonic.d.ts +14 -8
  538. package/src/services/mnemonic.d.ts.map +1 -1
  539. package/src/services/mnemonic.js +8 -2
  540. package/src/services/mnemonic.js.map +1 -1
  541. package/src/services/request-user.d.ts +33 -11
  542. package/src/services/request-user.d.ts.map +1 -1
  543. package/src/services/request-user.js +28 -6
  544. package/src/services/request-user.js.map +1 -1
  545. package/src/services/role.d.ts +28 -18
  546. package/src/services/role.d.ts.map +1 -1
  547. package/src/services/role.js +11 -1
  548. package/src/services/role.js.map +1 -1
  549. package/src/services/symmetric.d.ts +35 -17
  550. package/src/services/symmetric.d.ts.map +1 -1
  551. package/src/services/symmetric.js +41 -17
  552. package/src/services/symmetric.js.map +1 -1
  553. package/src/services/system-user.d.ts +7 -1
  554. package/src/services/system-user.d.ts.map +1 -1
  555. package/src/services/system-user.js +7 -1
  556. package/src/services/system-user.js.map +1 -1
  557. package/src/services/user.d.ts +61 -38
  558. package/src/services/user.d.ts.map +1 -1
  559. package/src/services/user.js +23 -0
  560. package/src/services/user.js.map +1 -1
  561. package/src/services/xor.d.ts +10 -6
  562. package/src/services/xor.d.ts.map +1 -1
  563. package/src/services/xor.js +14 -6
  564. package/src/services/xor.js.map +1 -1
  565. package/src/testing.d.ts +5 -0
  566. package/src/testing.d.ts.map +1 -1
  567. package/src/testing.js +5 -0
  568. package/src/testing.js.map +1 -1
  569. package/src/transactions/transaction-manager.d.ts +25 -0
  570. package/src/transactions/transaction-manager.d.ts.map +1 -1
  571. package/src/transactions/transaction-manager.js +20 -0
  572. package/src/transactions/transaction-manager.js.map +1 -1
  573. package/src/types/app-config.d.ts +16 -2
  574. package/src/types/app-config.d.ts.map +1 -1
  575. package/src/types/app-config.js +5 -0
  576. package/src/types/app-config.js.map +1 -1
  577. package/src/types/controller-config.d.ts +14 -2
  578. package/src/types/controller-config.d.ts.map +1 -1
  579. package/src/types/controller-config.js +5 -0
  580. package/src/types/controller-config.js.map +1 -1
  581. package/src/types/environment-variables.d.ts +5 -0
  582. package/src/types/environment-variables.d.ts.map +1 -1
  583. package/src/types/environment-variables.js +3 -1
  584. package/src/types/environment-variables.js.map +1 -1
  585. package/src/types/mongoose-helpers.d.ts +5 -0
  586. package/src/types/mongoose-helpers.d.ts.map +1 -1
  587. package/src/types/mongoose-helpers.js +3 -1
  588. package/src/types/mongoose-helpers.js.map +1 -1
  589. package/src/types.d.ts +17 -3
  590. package/src/types.d.ts.map +1 -1
  591. package/src/types.js +14 -0
  592. package/src/types.js.map +1 -1
  593. package/src/utils.d.ts +58 -29
  594. package/src/utils.d.ts.map +1 -1
  595. package/src/utils.js +56 -31
  596. package/src/utils.js.map +1 -1
  597. package/src/validation/validation-builder.d.ts +39 -0
  598. package/src/validation/validation-builder.d.ts.map +1 -1
  599. package/src/validation/validation-builder.js +39 -0
  600. package/src/validation/validation-builder.js.map +1 -1
@@ -1,32 +1,52 @@
1
1
  "use strict";
2
+ /**
3
+ * @fileoverview Service for symmetric encryption operations using AES-256-GCM.
4
+ * Provides encryption/decryption for buffers and JSON data with automatic key generation.
5
+ * @module services/symmetric
6
+ */
2
7
  Object.defineProperty(exports, "__esModule", { value: true });
3
8
  exports.SymmetricService = void 0;
4
9
  const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
5
10
  const crypto_1 = require("crypto");
6
11
  const symmetric_error_type_1 = require("../enumerations/symmetric-error-type");
7
12
  const symmetric_1 = require("../errors/symmetric");
13
+ /**
14
+ * Type guard to check if an object has a toJson method.
15
+ * @template T Object type to check
16
+ * @param obj Object to check
17
+ * @returns True if object has toJson method
18
+ */
8
19
  function hasToJsonMethod(obj) {
9
20
  return typeof obj === 'object' && obj !== null && 'toJson' in obj;
10
21
  }
11
22
  /**
12
- * Service for handling symmetric encryption operations.
13
- * This service provides functionality for:
14
- * - AES encryption/decryption of buffers and JSON data
15
- * - Key and IV generation
16
- * - Secure cryptographic operations
23
+ * Service for handling symmetric encryption operations using AES-256-GCM.
24
+ * Provides functionality for encrypting/decrypting buffers and JSON data with automatic key generation.
17
25
  */
18
26
  class SymmetricService {
27
+ /**
28
+ * Gets the symmetric key size in bits from ECIES constants.
29
+ * @param eciesConstants ECIES constants (defaults to ECIES)
30
+ * @returns Symmetric key size in bits
31
+ */
19
32
  static symmetricKeyBits(eciesConstants = ecies_lib_1.ECIES) {
20
33
  return eciesConstants.SYMMETRIC.KEY_BITS;
21
34
  }
35
+ /**
36
+ * Gets the symmetric key size in bytes from ECIES constants.
37
+ * @param eciesConstants ECIES constants (defaults to ECIES)
38
+ * @returns Symmetric key size in bytes
39
+ */
22
40
  static symmetricKeyBytes(eciesConstants = ecies_lib_1.ECIES) {
23
41
  return eciesConstants.SYMMETRIC.KEY_SIZE;
24
42
  }
25
43
  /**
26
- * Encrypt data with AES
27
- * @param data The data to encrypt
28
- * @param encryptionKey Optional encryption key (will be randomly generated if not provided)
44
+ * Encrypts data with AES-256-GCM.
45
+ * @param data Buffer to encrypt
46
+ * @param encryptionKey Optional encryption key (randomly generated if not provided)
47
+ * @param eciesConstants ECIES constants (defaults to ECIES)
29
48
  * @returns Object containing encrypted data and key
49
+ * @throws {SymmetricError} If encryption key length is invalid
30
50
  */
31
51
  static encryptBuffer(data, encryptionKey, eciesConstants = ecies_lib_1.ECIES) {
32
52
  if (encryptionKey &&
@@ -53,9 +73,10 @@ class SymmetricService {
53
73
  };
54
74
  }
55
75
  /**
56
- * Decrypt the given buffer with AES
57
- * @param encryptedData The encrypted data to decrypt
58
- * @param key The key to use for decryption
76
+ * Decrypts data with AES-256-GCM.
77
+ * @param encryptedData Encrypted data buffer (includes IV, ciphertext, and auth tag)
78
+ * @param key Decryption key
79
+ * @param eciesConstants ECIES constants (defaults to ECIES)
59
80
  * @returns Decrypted data as a Buffer
60
81
  */
61
82
  static decryptBuffer(encryptedData, key, eciesConstants = ecies_lib_1.ECIES) {
@@ -68,10 +89,12 @@ class SymmetricService {
68
89
  return Buffer.concat([decipher.update(ciphertextBuffer), decipher.final()]);
69
90
  }
70
91
  /**
71
- * Encrypt JSON data with AES
72
- * @param data The data to encrypt
73
- * @param encryptionKey Optional encryption key (will be randomly generated if not provided)
92
+ * Encrypts JSON data with AES-256-GCM.
93
+ * @template T Type of data to encrypt
94
+ * @param data Data to encrypt (will be JSON stringified)
95
+ * @param encryptionKey Optional encryption key (randomly generated if not provided)
74
96
  * @returns Object containing encrypted data and key
97
+ * @throws {SymmetricError} If data is null or undefined
75
98
  */
76
99
  static encryptJson(data, encryptionKey) {
77
100
  if (data === null || data === undefined) {
@@ -88,9 +111,10 @@ class SymmetricService {
88
111
  return SymmetricService.encryptBuffer(dataBuffer, encryptionKey);
89
112
  }
90
113
  /**
91
- * Decrypt the given buffer with AES and parse as JSON
92
- * @param encryptedData The encrypted data to decrypt
93
- * @param key The key to use for decryption
114
+ * Decrypts data with AES-256-GCM and parses as JSON.
115
+ * @template T Type of data to decrypt
116
+ * @param encryptedData Encrypted data buffer
117
+ * @param key Decryption key
94
118
  * @returns Decrypted data parsed as type T
95
119
  */
96
120
  static decryptJson(encryptedData, key) {
@@ -1 +1 @@
1
- {"version":3,"file":"symmetric.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/symmetric.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"symmetric.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/symmetric.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,14 @@
1
+ /**
2
+ * @fileoverview System user singleton service.
3
+ * Manages the system-level cryptographic member for server operations.
4
+ * @module services/system-user
5
+ */
1
6
  import { Member as BackendMember, PlatformID } from '@digitaldefiance/node-ecies-lib';
2
7
  import { Environment } from '../environment';
3
8
  import { IConstants } from '../interfaces/constants';
4
9
  /**
5
- * Service to manage the system member's wallet.
10
+ * Service for managing the system user singleton.
11
+ * Provides access to system-level cryptographic operations and key management.
6
12
  */
7
13
  export declare class SystemUserService {
8
14
  private static systemUser;
@@ -1 +1 @@
1
- {"version":3,"file":"system-user.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/system-user.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,MAAM,IAAI,aAAa,EAEvB,UAAU,EACX,MAAM,iCAAiC,CAAC;AAKzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAC,UAAU,CAA0C;IAEnE;;;OAGG;WACW,aAAa,CAAC,GAAG,SAAS,UAAU,GAAG,MAAM,EACzD,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,EAC7B,SAAS,EAAE,UAAU,GACpB,aAAa,CAAC,GAAG,CAAC;WAqCP,aAAa,CAAC,GAAG,SAAS,UAAU,GAAG,MAAM,EACzD,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EACxB,SAAS,EAAE,UAAU,GACpB,IAAI;CAQR"}
1
+ {"version":3,"file":"system-user.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/system-user.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,EACL,MAAM,IAAI,aAAa,EAEvB,UAAU,EACX,MAAM,iCAAiC,CAAC;AAKzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAC,UAAU,CAA0C;IAEnE;;;OAGG;WACW,aAAa,CAAC,GAAG,SAAS,UAAU,GAAG,MAAM,EACzD,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,EAC7B,SAAS,EAAE,UAAU,GACpB,aAAa,CAAC,GAAG,CAAC;WAqCP,aAAa,CAAC,GAAG,SAAS,UAAU,GAAG,MAAM,EACzD,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EACxB,SAAS,EAAE,UAAU,GACpB,IAAI;CAQR"}
@@ -1,11 +1,17 @@
1
1
  "use strict";
2
+ /**
3
+ * @fileoverview System user singleton service.
4
+ * Manages the system-level cryptographic member for server operations.
5
+ * @module services/system-user
6
+ */
2
7
  Object.defineProperty(exports, "__esModule", { value: true });
3
8
  exports.SystemUserService = void 0;
4
9
  const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
5
10
  const node_ecies_lib_1 = require("@digitaldefiance/node-ecies-lib");
6
11
  const suite_core_lib_1 = require("@digitaldefiance/suite-core-lib");
7
12
  /**
8
- * Service to manage the system member's wallet.
13
+ * Service for managing the system user singleton.
14
+ * Provides access to system-level cryptographic operations and key management.
9
15
  */
10
16
  class SystemUserService {
11
17
  static systemUser = null;
@@ -1 +1 @@
1
- {"version":3,"file":"system-user.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/system-user.ts"],"names":[],"mappings":";;;AAAA,0DAKoC;AACpC,oEAIyC;AACzC,oEAGyC;AAIzC;;GAEG;AACH,MAAa,iBAAiB;IACpB,MAAM,CAAC,UAAU,GAAqC,IAAI,CAAC;IAEnE;;;OAGG;IACI,MAAM,CAAC,aAAa,CACzB,WAA6B,EAC7B,SAAqB;QAErB,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;YAClC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;gBAChC,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,uBAAuB,EAC1C;oBACE,IAAI,EAAE,iBAAiB;iBACxB,CACF,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,GAAiB,WAAW,CAAC,cAAc,CAAC;YAC1D,MAAM,YAAY,GAAG,IAAI,6BAAY,CAAM,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;YACpE,MAAM,OAAO,GAAG,YAAY,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;YAEjE,iBAAiB,CAAC,UAAU,GAAG,IAAI,uBAAa,CAC9C,YAAY,EACZ,sBAAU,CAAC,MAAM,EACjB,SAAS,CAAC,UAAU,EACpB,IAAI,uBAAW,CAAC,SAAS,CAAC,WAAW,CAAC,EACtC,OAAO,CAAC,SAAS,EACjB,IAAI,wBAAY,CAAC,OAAO,CAAC,UAAU,CAAC,EACpC,MAAM,CACP,CAAC;YACF,IACE,iBAAiB,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACtD,WAAW,CAAC,kBAAkB,EAC9B,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,uDAAuD,EAAE;oBACpE,OAAO,EAAE,iBAAiB,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAC/D,QAAQ,EAAE,WAAW,CAAC,kBAAkB;iBACzC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,iBAAiB,CAAC,UAAgC,CAAC;IAC5D,CAAC;IAEM,MAAM,CAAC,aAAa,CACzB,IAAwB,EACxB,SAAqB;QAErB,IAAI,IAAI,CAAC,IAAI,KAAK,sBAAU,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,UAAU,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAC;QACJ,CAAC;QACD,iBAAiB,CAAC,UAAU,GAAG,IAA0B,CAAC;IAC5D,CAAC;;AAzDH,8CA0DC"}
1
+ {"version":3,"file":"system-user.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/system-user.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,0DAKoC;AACpC,oEAIyC;AACzC,oEAGyC;AAIzC;;;GAGG;AACH,MAAa,iBAAiB;IACpB,MAAM,CAAC,UAAU,GAAqC,IAAI,CAAC;IAEnE;;;OAGG;IACI,MAAM,CAAC,aAAa,CACzB,WAA6B,EAC7B,SAAqB;QAErB,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;YAClC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;gBAChC,MAAM,IAAI,uCAAsB,CAC9B,mCAAkB,CAAC,uBAAuB,EAC1C;oBACE,IAAI,EAAE,iBAAiB;iBACxB,CACF,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,GAAiB,WAAW,CAAC,cAAc,CAAC;YAC1D,MAAM,YAAY,GAAG,IAAI,6BAAY,CAAM,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;YACpE,MAAM,OAAO,GAAG,YAAY,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAC;YAEjE,iBAAiB,CAAC,UAAU,GAAG,IAAI,uBAAa,CAC9C,YAAY,EACZ,sBAAU,CAAC,MAAM,EACjB,SAAS,CAAC,UAAU,EACpB,IAAI,uBAAW,CAAC,SAAS,CAAC,WAAW,CAAC,EACtC,OAAO,CAAC,SAAS,EACjB,IAAI,wBAAY,CAAC,OAAO,CAAC,UAAU,CAAC,EACpC,MAAM,CACP,CAAC;YACF,IACE,iBAAiB,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACtD,WAAW,CAAC,kBAAkB,EAC9B,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,uDAAuD,EAAE;oBACpE,OAAO,EAAE,iBAAiB,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAC/D,QAAQ,EAAE,WAAW,CAAC,kBAAkB;iBACzC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,iBAAiB,CAAC,UAAgC,CAAC;IAC5D,CAAC;IAEM,MAAM,CAAC,aAAa,CACzB,IAAwB,EACxB,SAAqB;QAErB,IAAI,IAAI,CAAC,IAAI,KAAK,sBAAU,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,UAAU,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CACb,gEAAgE,CACjE,CAAC;QACJ,CAAC;QACD,iBAAiB,CAAC,UAAU,GAAG,IAA0B,CAAC;IAC5D,CAAC;;AAzDH,8CA0DC"}
@@ -1,3 +1,9 @@
1
+ /**
2
+ * @fileoverview Comprehensive user management service.
3
+ * Handles user authentication, registration, password management, email verification,
4
+ * mnemonic recovery, backup codes, and all user-related operations.
5
+ * @module services/user
6
+ */
1
7
  import { SecureBuffer, SecureString } from '@digitaldefiance/ecies-lib';
2
8
  import { ClientSession, ProjectionType } from '@digitaldefiance/mongoose-types';
3
9
  import { Member as BackendMember, ECIESService, PlatformID } from '@digitaldefiance/node-ecies-lib';
@@ -18,28 +24,45 @@ import { BaseService } from './base';
18
24
  import { KeyWrappingService } from './key-wrapping';
19
25
  import { MnemonicService } from './mnemonic';
20
26
  import { RoleService } from './role';
21
- export declare class UserService<T, I extends PlatformID, D extends Date, S extends string, A extends string, _TEnvironment extends Environment<I> = Environment<I>, _TConstants extends IConstants = IConstants, _TBaseDocument extends IBaseDocument<T, I> = IBaseDocument<T, I>, TUser extends IUserBase<I, D, S, A> = IUserBase<I, D, S, A>, TTokenRole extends ITokenRole<I, D> = ITokenRole<I, D>, TApplication extends IApplication<I> = IApplication<I>> extends BaseService<I, TApplication> {
22
- protected readonly roleService: RoleService<I, D, TTokenRole>;
23
- protected readonly eciesService: ECIESService<I>;
27
+ /**
28
+ * Comprehensive service for user management and authentication.
29
+ * Provides methods for user creation, authentication (mnemonic/password/challenge),
30
+ * email verification, password reset, backup code recovery, and settings management.
31
+ * @template T - User document type
32
+ * @template TID - Platform ID type
33
+ * @template TDate - Date type
34
+ * @template TLanguage - String type for site language
35
+ * @template TAccountStatus - String type for account status
36
+ * @template _TEnvironment - Environment type
37
+ * @template _TConstants - Constants type
38
+ * @template _TBaseDocument - Base document type
39
+ * @template TUser - User base interface type
40
+ * @template TTokenRole - Token role interface type
41
+ * @template TApplication - Application interface type
42
+ * @extends {BaseService<TID, TApplication>}
43
+ */
44
+ export declare class UserService<T, TID extends PlatformID, TDate extends Date, TLanguage extends string, TAccountStatus extends string, _TEnvironment extends Environment<TID> = Environment<TID>, _TConstants extends IConstants = IConstants, _TBaseDocument extends IBaseDocument<T, TID> = IBaseDocument<T, TID>, TUser extends IUserBase<TID, TDate, TLanguage, TAccountStatus> = IUserBase<TID, TDate, TLanguage, TAccountStatus>, TTokenRole extends ITokenRole<TID, TDate> = ITokenRole<TID, TDate>, TApplication extends IApplication<TID> = IApplication<TID>> extends BaseService<TID, TApplication> {
45
+ protected readonly roleService: RoleService<TID, TDate, TTokenRole>;
46
+ protected readonly eciesService: ECIESService<TID>;
24
47
  protected readonly keyWrappingService: KeyWrappingService;
25
48
  protected readonly mnemonicService: MnemonicService;
26
49
  protected readonly emailService: IEmailService;
27
- protected readonly backupCodeService: BackupCodeService<I, D, TTokenRole, TApplication>;
50
+ protected readonly backupCodeService: BackupCodeService<TID, TDate, TTokenRole, TApplication>;
28
51
  protected readonly serverUrl: string;
29
52
  protected readonly disableEmailSend: boolean;
30
- constructor(application: TApplication, roleService: RoleService<I, D, TTokenRole>, emailService: IEmailService, keyWrappingService: KeyWrappingService, backupCodeService: BackupCodeService<I, D, TTokenRole, TApplication>);
53
+ constructor(application: TApplication, roleService: RoleService<TID, TDate, TTokenRole>, emailService: IEmailService, keyWrappingService: KeyWrappingService, backupCodeService: BackupCodeService<TID, TDate, TTokenRole, TApplication>);
31
54
  /**
32
55
  * Given a User Document, make a User DTO
33
56
  * @param user a User Document
34
57
  * @returns An IUserDTO
35
58
  */
36
- static userToUserDTO<S extends string, I extends PlatformID = Buffer>(user: IUserDocument<S, I> | Record<string, unknown>): IUserDTO;
59
+ static userToUserDTO<TLanguage extends string, TID extends PlatformID = Buffer>(user: IUserDocument<TLanguage, TID> | Record<string, unknown>): IUserDTO;
37
60
  /**
38
61
  * Given a User DTO, reconstitute ids and dates
39
62
  * @param user a User DTO
40
63
  * @returns An IUserBackendObject
41
64
  */
42
- hydrateUserDTOToBackend(user: IUserDTO): IUserBackendObject<S, I>;
65
+ hydrateUserDTOToBackend(user: IUserDTO): IUserBackendObject<TLanguage, TID>;
43
66
  /**
44
67
  * Create a new email token to send to the user for email verification
45
68
  * @param userDoc The user to create the email token for
@@ -47,7 +70,7 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
47
70
  * @param session The session to use for the query
48
71
  * @returns The email token document
49
72
  */
50
- createEmailToken(userDoc: IUserDocument<S, I>, type: EmailTokenType, session?: ClientSession): Promise<IEmailTokenDocument>;
73
+ createEmailToken(userDoc: IUserDocument<TLanguage, TID>, type: EmailTokenType, session?: ClientSession): Promise<IEmailTokenDocument>;
51
74
  /**
52
75
  * Create and send an email token to the user for email verification
53
76
  * @param user The user to send the email token to
@@ -55,7 +78,7 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
55
78
  * @param session The session to use for the query
56
79
  * @returns The email token document
57
80
  */
58
- createAndSendEmailToken(user: IUserDocument<S, I> | (Pick<IUserDocument<S, I>, keyof IUserDocument<S, I>> & {
81
+ createAndSendEmailToken(user: IUserDocument<TLanguage, TID> | (Pick<IUserDocument<TLanguage, TID>, keyof IUserDocument<TLanguage, TID>> & {
59
82
  _id: any;
60
83
  }), type?: EmailTokenType, session?: ClientSession, debug?: boolean): Promise<IEmailTokenDocument>;
61
84
  /**
@@ -66,7 +89,7 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
66
89
  * @param debug Whether to enable debug logging
67
90
  * @returns The email token document
68
91
  */
69
- createAndSendEmailTokenDirect(user: IUserDocument<S, I>, type: EmailTokenType | undefined, session: ClientSession, debug?: boolean): Promise<IEmailTokenDocument>;
92
+ createAndSendEmailTokenDirect(user: IUserDocument<TLanguage, TID>, type: EmailTokenType | undefined, session: ClientSession, debug?: boolean): Promise<IEmailTokenDocument>;
70
93
  /**
71
94
  * Send an email token to the user for email verification
72
95
  * @param emailToken The email token to send
@@ -83,7 +106,7 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
83
106
  * @throws InvalidCredentialsError if not found or deleted
84
107
  * @throws AccountLockedError | PendingEmailVerificationError | AccountStatusError per status
85
108
  */
86
- findUser(email?: string, username?: string, session?: ClientSession): Promise<IUserDocument<S, I>>;
109
+ findUser(email?: string, username?: string, session?: ClientSession): Promise<IUserDocument<TLanguage, TID>>;
87
110
  /**
88
111
  * Finds a user record by ID
89
112
  * @param userId The user ID
@@ -91,7 +114,7 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
91
114
  * @param session The active session, if present
92
115
  * @returns The user document
93
116
  */
94
- findUserById(userId: I, throwIfNotActive: boolean, session?: ClientSession, select?: ProjectionType<IUserDocument<S, I>>): Promise<IUserDocument<S, I>>;
117
+ findUserById(userId: TID, throwIfNotActive: boolean, session?: ClientSession, select?: ProjectionType<IUserDocument<TLanguage, TID>>): Promise<IUserDocument<TLanguage, TID>>;
95
118
  /**
96
119
  * Ensure required fields are present in a projection for queries that rely on them.
97
120
  * Supports string and object-style projections. For inclusion projections, adds fields.
@@ -104,13 +127,13 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
104
127
  * @param createdBy The user ID of the user creating the new user
105
128
  * @returns The filled in user
106
129
  */
107
- fillUserDefaults(newUser: ICreateUserBasics, createdBy: I, backupCodes: Array<IBackupCode>, encryptedMnemonic: string, userId?: I): IUserBackendObject<S, I>;
130
+ fillUserDefaults(newUser: ICreateUserBasics, createdBy: TID, backupCodes: Array<IBackupCode>, encryptedMnemonic: string, userId?: TID): IUserBackendObject<TLanguage, TID>;
108
131
  /**
109
132
  * Create a new user document from an IUser and unhashed password
110
133
  * @param newUser The user object
111
134
  * @returns The new user document
112
135
  */
113
- makeUserDoc(newUser: TUser): Promise<IUserDocument<S, I>>;
136
+ makeUserDoc(newUser: TUser): Promise<IUserDocument<TLanguage, TID>>;
114
137
  /**
115
138
  * Create a new user.
116
139
  * Do not set createdBy to a new (non-existing) ObjectId unless you also set newUserId to it.
@@ -124,8 +147,8 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
124
147
  * @param password The password to use for the new user (optional, if not provided, mnemonic will be used)
125
148
  * @returns The new user document
126
149
  */
127
- newUser(systemUser: BackendMember<I>, userData: ICreateUserBasics, createdBy?: I, newUserId?: I, session?: ClientSession, debug?: boolean, password?: string): Promise<{
128
- user: IUserDocument<S, I>;
150
+ newUser(systemUser: BackendMember<TID>, userData: ICreateUserBasics, createdBy?: TID, newUserId?: TID, session?: ClientSession, debug?: boolean, password?: string): Promise<{
151
+ user: IUserDocument<TLanguage, TID>;
129
152
  mnemonic: string;
130
153
  backupCodes: Array<string>;
131
154
  password?: string;
@@ -134,14 +157,14 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
134
157
  * Get the backup codes for a user.
135
158
  * Requires the user not be deleted or inactive
136
159
  */
137
- getEncryptedUserBackupCodes(userId: I, session?: ClientSession): Promise<Array<IBackupCode>>;
160
+ getEncryptedUserBackupCodes(userId: TID, session?: ClientSession): Promise<Array<IBackupCode>>;
138
161
  /**
139
162
  * Resets the given user's backup codes
140
163
  * @param backupUser The user to generate codes for
141
164
  * @param session The current session, if any
142
165
  * @returns A promise of an array of backup codes
143
166
  */
144
- resetUserBackupCodes(backupUser: BackendMember<I>, systemUser: BackendMember<I>, session?: ClientSession): Promise<Array<BackupCode>>;
167
+ resetUserBackupCodes(backupUser: BackendMember<TID>, systemUser: BackendMember<TID>, session?: ClientSession): Promise<Array<BackupCode>>;
145
168
  /**
146
169
  * Recover a user's mnemonic from an encrypted mnemonic
147
170
  * @param user The user whose mnemonic to recover
@@ -157,7 +180,7 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
157
180
  * @param session The current session, if any
158
181
  * @returns A promise containing the created Member
159
182
  */
160
- makeUserFromUserDoc(userDoc: IUserDocument<S, I>, privateKey?: SecureBuffer, publicKey?: Buffer, mnemonic?: SecureString, wallet?: Wallet, session?: ClientSession): Promise<BackendMember<I>>;
183
+ makeUserFromUserDoc(userDoc: IUserDocument<TLanguage, TID>, privateKey?: SecureBuffer, publicKey?: Buffer, mnemonic?: SecureString, wallet?: Wallet, session?: ClientSession): Promise<BackendMember<TID>>;
161
184
  /**
162
185
  * Challenges a given userDoc with a given mnemonic, returns a system and user Member
163
186
  * @param userDoc The userDoc in question
@@ -168,9 +191,9 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
168
191
  * @throws PendingEmailVerificationError if the email is not verified
169
192
  * @throws AccountStatusError if the account status is invalid
170
193
  */
171
- challengeUserWithMnemonic(userDoc: IUserDocument<S, I>, mnemonic: SecureString, session?: ClientSession): Promise<{
172
- userMember: BackendMember<I>;
173
- adminMember: BackendMember<I>;
194
+ challengeUserWithMnemonic(userDoc: IUserDocument<TLanguage, TID>, mnemonic: SecureString, session?: ClientSession): Promise<{
195
+ userMember: BackendMember<TID>;
196
+ adminMember: BackendMember<TID>;
174
197
  }>;
175
198
  /**
176
199
  * Validates a login challenge response
@@ -181,36 +204,36 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
181
204
  * @returns A promise that resolves to the user document, user member, and system member
182
205
  */
183
206
  loginWithChallengeResponse(challengeResponse: string, email?: string, username?: string, session?: ClientSession): Promise<{
184
- userDoc: IUserDocument<S, I>;
185
- userMember: BackendMember<I>;
186
- adminMember: BackendMember<I>;
207
+ userDoc: IUserDocument<TLanguage, TID>;
208
+ userMember: BackendMember<TID>;
209
+ adminMember: BackendMember<TID>;
187
210
  }>;
188
211
  /**
189
212
  * Authenticate a user with client-verified challenge (skips server-side challenge)
190
213
  * @returns The authenticated user document.
191
214
  */
192
215
  loginWithClientVerifiedChallenge(usernameOrEmail: string, mnemonic: SecureString, session?: ClientSession): Promise<{
193
- userDoc: IUserDocument<S, I>;
194
- userMember: BackendMember<I>;
195
- adminMember: BackendMember<I>;
216
+ userDoc: IUserDocument<TLanguage, TID>;
217
+ userMember: BackendMember<TID>;
218
+ adminMember: BackendMember<TID>;
196
219
  }>;
197
220
  /**
198
221
  * Authenticate a user with their mnemonic.
199
222
  * @returns The authenticated user document.
200
223
  */
201
224
  loginWithMnemonic(usernameOrEmail: string, mnemonic: SecureString, session?: ClientSession): Promise<{
202
- userDoc: IUserDocument<S, I>;
203
- userMember: BackendMember<I>;
204
- adminMember: BackendMember<I>;
225
+ userDoc: IUserDocument<TLanguage, TID>;
226
+ userMember: BackendMember<TID>;
227
+ adminMember: BackendMember<TID>;
205
228
  }>;
206
229
  /**
207
230
  * Authenticate a user with their password (for key-wrapped accounts).
208
231
  * @returns The authenticated user document.
209
232
  */
210
233
  loginWithPassword(usernameOrEmail: string, password: string, session?: ClientSession): Promise<{
211
- userDoc: IUserDocument<S, I>;
212
- userMember: BackendMember<I>;
213
- adminMember: BackendMember<I>;
234
+ userDoc: IUserDocument<TLanguage, TID>;
235
+ userMember: BackendMember<TID>;
236
+ adminMember: BackendMember<TID>;
214
237
  }>;
215
238
  /**
216
239
  * Re-send a previously sent email token
@@ -316,8 +339,8 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
316
339
  * @returns A promise with the user document and user member object
317
340
  */
318
341
  verifyDirectLoginChallenge(serverSignedRequest: string, signature: string, username?: string, email?: string, session?: ClientSession): Promise<{
319
- userDoc: IUserDocument<S, I>;
320
- userMember: BackendMember<I>;
342
+ userDoc: IUserDocument<TLanguage, TID>;
343
+ userMember: BackendMember<TID>;
321
344
  }>;
322
345
  /**
323
346
  * Request a login link via email
@@ -334,12 +357,12 @@ export declare class UserService<T, I extends PlatformID, D extends Date, S exte
334
357
  * @param session The session to use for the query
335
358
  * @returns The user document if the challenge is valid
336
359
  */
337
- validateEmailLoginTokenChallenge(token: string, signature: string, session?: ClientSession): Promise<IUserDocument<S, I>>;
360
+ validateEmailLoginTokenChallenge(token: string, signature: string, session?: ClientSession): Promise<IUserDocument<TLanguage, TID>>;
338
361
  /**
339
362
  * Updates the user's last login time atomically
340
363
  * @param userId - The ID of the user
341
364
  * @returns void
342
365
  */
343
- updateLastLogin(userId: I): Promise<void>;
366
+ updateLastLogin(userId: TID): Promise<void>;
344
367
  }
345
368
  //# sourceMappingURL=user.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/user.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,YAAY,EACZ,YAAY,EACb,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,aAAa,EAEb,cAAc,EACf,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,MAAM,IAAI,aAAa,EACvB,YAAY,EAEZ,UAAU,EAEX,MAAM,iCAAiC,CAAC;AACzC,OAAO,EASL,cAAc,EAId,WAAW,EAKX,eAAe,EACf,UAAU,EACV,SAAS,EACT,QAAQ,EAYT,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG5C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAKrC,qBAAa,WAAW,CACtB,CAAC,EACD,CAAC,SAAS,UAAU,EACpB,CAAC,SAAS,IAAI,EACd,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,MAAM,EAChB,aAAa,SAAS,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,EACrD,WAAW,SAAS,UAAU,GAAG,UAAU,EAC3C,cAAc,SAAS,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAChE,KAAK,SAAS,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC3D,UAAU,SAAS,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,EACtD,YAAY,SAAS,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CACtD,SAAQ,WAAW,CAAC,CAAC,EAAE,YAAY,CAAC;IACpC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IAC9D,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACjD,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAC1D,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IACpD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC;IAC/C,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CACrD,CAAC,EACD,CAAC,EACD,UAAU,EACV,YAAY,CACb,CAAC;IACF,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IACrC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;gBAG3C,WAAW,EAAE,YAAY,EACzB,WAAW,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,EAC1C,YAAY,EAAE,aAAa,EAC3B,kBAAkB,EAAE,kBAAkB,EACtC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,YAAY,CAAC;IA+BtE;;;;OAIG;WACW,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,UAAU,GAAG,MAAM,EACzE,IAAI,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAClD,QAAQ;IA4CX;;;;OAIG;IACI,uBAAuB,CAAC,IAAI,EAAE,QAAQ,GAAG,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;IAsBxE;;;;;;OAMG;IACU,gBAAgB,CAC3B,OAAO,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAC5B,IAAI,EAAE,cAAc,EACpB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,mBAAmB,CAAC;IA8F/B;;;;;;OAMG;IACU,uBAAuB,CAClC,IAAI,EACA,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,GACnB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG;QAAE,GAAG,EAAE,GAAG,CAAA;KAAE,CAAC,EACzE,IAAI,GAAE,cAAmD,EACzD,OAAO,CAAC,EAAE,aAAa,EACvB,KAAK,UAAQ,GACZ,OAAO,CAAC,mBAAmB,CAAC;IAU/B;;;;;;;OAOG;IACU,6BAA6B,CACxC,IAAI,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EACzB,IAAI,EAAE,cAAc,YAAqC,EACzD,OAAO,EAAE,aAAa,EACtB,KAAK,UAAQ,GACZ,OAAO,CAAC,mBAAmB,CAAC;IAoD/B;;;;;OAKG;IACU,cAAc,CACzB,UAAU,EAAE,mBAAmB,EAC/B,OAAO,CAAC,EAAE,aAAa,EACvB,KAAK,UAAQ,GACZ,OAAO,CAAC,IAAI,CAAC;IA2EhB;;;;;;;;OAQG;IACU,QAAQ,CACnB,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAgD/B;;;;;;OAMG;IACU,YAAY,CACvB,MAAM,EAAE,CAAC,EACT,gBAAgB,EAAE,OAAO,EACzB,OAAO,CAAC,EAAE,aAAa,EACvB,MAAM,CAAC,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAC3C,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAgC/B;;;;OAIG;IACH,OAAO,CAAC,gCAAgC;IA0CxC;;;;;OAKG;IACI,gBAAgB,CACrB,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,CAAC,EACZ,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,EAC/B,iBAAiB,EAAE,MAAM,EACzB,MAAM,CAAC,EAAE,CAAC,GACT,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC;IAuB3B;;;;OAIG;IACU,WAAW,CAAC,OAAO,EAAE,KAAK,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAetE;;;;;;;;;;;;OAYG;IACU,OAAO,CAClB,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,EAC5B,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,CAAC,EAAE,CAAC,EACb,SAAS,CAAC,EAAE,CAAC,EACb,OAAO,CAAC,EAAE,aAAa,EACvB,KAAK,UAAQ,EACb,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC;QACT,IAAI,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1B,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IAgKF;;;OAGG;IACU,2BAA2B,CACtC,MAAM,EAAE,CAAC,EACT,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAK9B;;;;;OAKG;IACU,oBAAoB,CAC/B,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,EAC5B,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,EAC5B,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IA2B7B;;;;;OAKG;IACI,eAAe,CACpB,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,EACxB,iBAAiB,EAAE,MAAM,GACxB,YAAY;IAiBf;;;;;;;OAOG;IACU,mBAAmB,CAC9B,OAAO,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAC5B,UAAU,CAAC,EAAE,YAAY,EACzB,SAAS,CAAC,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,YAAY,EACvB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IA2B5B;;;;;;;;;OASG;IACU,yBAAyB,CACpC,OAAO,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAC5B,QAAQ,EAAE,YAAY,EACtB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC;QACT,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;QAC7B,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;KAC/B,CAAC;IAuFF;;;;;;;OAOG;IACU,0BAA0B,CACrC,iBAAiB,EAAE,MAAM,EACzB,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC;QACT,OAAO,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7B,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;QAC7B,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;KAC/B,CAAC;IAuDF;;;OAGG;IACU,gCAAgC,CAC3C,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,YAAY,EACtB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC;QACT,OAAO,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7B,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;QAC7B,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;KAC/B,CAAC;IAgGF;;;OAGG;IACU,iBAAiB,CAC5B,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,YAAY,EACtB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC;QACT,OAAO,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7B,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;QAC7B,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;KAC/B,CAAC;IAuCF;;;OAGG;IACU,iBAAiB,CAC5B,eAAe,EAAE,MAAM,EACvB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC;QACT,OAAO,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7B,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;QAC7B,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;KAC/B,CAAC;IA8EF;;;;;;OAMG;IACU,gBAAgB,CAC3B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,cAAc,EACpB,OAAO,CAAC,EAAE,aAAa,EACvB,KAAK,UAAQ,GACZ,OAAO,CAAC,IAAI,CAAC;IA+BhB;;;;;;;;;OASG;IACU,6BAA6B,CACxC,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC;IAqFhB;;;;;;;OAOG;IACU,kBAAkB,CAC7B,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,cAAc,EAC7B,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC;IA6BhB;;;;;;OAMG;IACU,kBAAkB,CAC7B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,eAAe,CAAC;IA4B3B;;;;;;OAMG;IACU,cAAc,CACzB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,OAAO,EACpB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,eAAe,CAAC;IA4B3B;;;;;;OAMG;IACU,kBAAkB,CAC7B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE;QACR,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,EACD,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,eAAe,CAAC;IA6D3B;;;;;;;OAOG;IACU,cAAc,CACzB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC;IAsDhB;;;;;;OAMG;IACU,cAAc,CACzB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,cAAc,EACrB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAYtC;;;;;OAKG;IACU,gBAAgB,CAC3B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,cAAc,EACpB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC;IAiBhB;;;;;;OAMG;IACU,sBAAsB,CACjC,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,EAAE,gDAAgD;IACrE,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC;IAgHhB;;;OAGG;IACI,4BAA4B,IAAI,MAAM;IAY7C;;;;;OAKG;IACU,0BAA0B,CACrC,mBAAmB,EAAE,MAAM,EAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC;QAAE,OAAO,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;KAAE,CAAC;IA0G1E;;;;;;OAMG;IACU,iBAAiB,CAC5B,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC;IAqBhB;;;;;;OAMG;IACU,gCAAgC,CAC3C,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAyC/B;;;;OAIG;IACU,eAAe,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAuCvD"}
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/services/user.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,10 @@
1
1
  "use strict";
2
+ /**
3
+ * @fileoverview Comprehensive user management service.
4
+ * Handles user authentication, registration, password management, email verification,
5
+ * mnemonic recovery, backup codes, and all user-related operations.
6
+ * @module services/user
7
+ */
2
8
  Object.defineProperty(exports, "__esModule", { value: true });
3
9
  exports.UserService = void 0;
4
10
  const tslib_1 = require("tslib");
@@ -19,6 +25,23 @@ const direct_login_token_1 = require("./direct-login-token");
19
25
  const mnemonic_1 = require("./mnemonic");
20
26
  const request_user_1 = require("./request-user");
21
27
  const system_user_1 = require("./system-user");
28
+ /**
29
+ * Comprehensive service for user management and authentication.
30
+ * Provides methods for user creation, authentication (mnemonic/password/challenge),
31
+ * email verification, password reset, backup code recovery, and settings management.
32
+ * @template T - User document type
33
+ * @template TID - Platform ID type
34
+ * @template TDate - Date type
35
+ * @template TLanguage - String type for site language
36
+ * @template TAccountStatus - String type for account status
37
+ * @template _TEnvironment - Environment type
38
+ * @template _TConstants - Constants type
39
+ * @template _TBaseDocument - Base document type
40
+ * @template TUser - User base interface type
41
+ * @template TTokenRole - Token role interface type
42
+ * @template TApplication - Application interface type
43
+ * @extends {BaseService<TID, TApplication>}
44
+ */
22
45
  class UserService extends base_1.BaseService {
23
46
  roleService;
24
47
  eciesService;