@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,17 +1,38 @@
1
1
  "use strict";
2
+ /**
3
+ * @fileoverview Validation builder for fluent validation chain construction.
4
+ * Provides builder pattern for express-validator chains.
5
+ * @module validation/validation-builder
6
+ */
2
7
  Object.defineProperty(exports, "__esModule", { value: true });
3
8
  exports.ValidationBuilder = exports.FieldValidator = void 0;
4
9
  const suite_core_lib_1 = require("@digitaldefiance/suite-core-lib");
5
10
  const express_validator_1 = require("express-validator");
11
+ /**
12
+ * Field validator for building validation chains.
13
+ * @template TLanguage - Language code type
14
+ * @template TConstants - Constants type (defaults to IConstants)
15
+ */
6
16
  class FieldValidator {
7
17
  chain;
8
18
  language;
9
19
  constants;
20
+ /**
21
+ * Creates a new field validator.
22
+ * @param {string} field - Field name to validate
23
+ * @param {TLanguage} [language] - Language for error messages
24
+ * @param {TConstants} [constants] - Constants for validation
25
+ */
10
26
  constructor(field, language, constants) {
11
27
  this.chain = (0, express_validator_1.body)(field);
12
28
  this.language = language;
13
29
  this.constants = constants;
14
30
  }
31
+ /**
32
+ * Adds regex matching validation.
33
+ * @param {RegExp | Function} regex - Regex or function returning regex
34
+ * @returns {this} This validator for chaining
35
+ */
15
36
  matches(regex) {
16
37
  const actualRegex = typeof regex === 'function' && this.constants
17
38
  ? regex(this.constants)
@@ -19,60 +40,78 @@ class FieldValidator {
19
40
  this.chain = this.chain.matches(actualRegex);
20
41
  return this;
21
42
  }
43
+ /** Validates email format. @returns {this} This validator for chaining */
22
44
  isEmail() {
23
45
  this.chain = this.chain.isEmail();
24
46
  return this;
25
47
  }
48
+ /** Validates string type. @returns {this} This validator for chaining */
26
49
  isString() {
27
50
  this.chain = this.chain.isString();
28
51
  return this;
29
52
  }
53
+ /** Validates non-empty value. @returns {this} This validator for chaining */
30
54
  notEmpty() {
31
55
  this.chain = this.chain.notEmpty();
32
56
  return this;
33
57
  }
58
+ /** Makes field optional. @returns {this} This validator for chaining */
34
59
  optional() {
35
60
  this.chain = this.chain.optional();
36
61
  return this;
37
62
  }
63
+ /** Adds custom validator. @param {Function} validator - Custom validation function @returns {this} This validator for chaining */
38
64
  custom(validator) {
39
65
  this.chain = this.chain.custom(validator);
40
66
  return this;
41
67
  }
68
+ /** Validates string length. @param {object} options - Length options @returns {this} This validator for chaining */
42
69
  isLength(options) {
43
70
  this.chain = this.chain.isLength(options);
44
71
  return this;
45
72
  }
73
+ /** Validates value is in array. @param {unknown[]} values - Allowed values @returns {this} This validator for chaining */
46
74
  isIn(values) {
47
75
  this.chain = this.chain.isIn(values);
48
76
  return this;
49
77
  }
78
+ /** Sets error message. @param {SuiteCoreStringKey} key - Translation key @param {Record<string, string>} [params] - Message parameters @returns {this} This validator for chaining */
50
79
  withMessage(key, params) {
51
80
  const message = (0, suite_core_lib_1.getSuiteCoreTranslation)(key, params, this.language);
52
81
  this.chain = this.chain.withMessage(message);
53
82
  return this;
54
83
  }
84
+ /** Builds the validation chain. @returns {ValidationChain} Complete validation chain */
55
85
  build() {
56
86
  return this.chain;
57
87
  }
58
88
  }
59
89
  exports.FieldValidator = FieldValidator;
90
+ /**
91
+ * Validation builder for constructing multiple field validators.
92
+ * @template TLanguage - Language code type
93
+ * @template TConstants - Constants type (defaults to IConstants)
94
+ */
60
95
  class ValidationBuilder {
61
96
  validators = [];
62
97
  language;
63
98
  constants;
99
+ /** Creates a new validation builder. @param {TLanguage} [language] - Language for messages @param {TConstants} [constants] - Constants @returns {ValidationBuilder} New builder instance */
64
100
  static create(language, constants) {
65
101
  return new ValidationBuilder(language, constants);
66
102
  }
103
+ /** Creates a new validation builder. @param {TLanguage} [language] - Language for messages @param {TConstants} [constants] - Constants */
67
104
  constructor(language, constants) {
68
105
  this.language = language;
69
106
  this.constants = constants;
70
107
  }
108
+ /** Creates a field validator. @param {string} field - Field name @returns {FieldValidator} Field validator instance */
71
109
  for(field) {
72
110
  const validator = new FieldValidator(field, this.language, this.constants);
73
111
  this.validators.push(validator);
74
112
  return validator;
75
113
  }
114
+ /** Builds all validation chains. @returns {ValidationChain[]} Array of validation chains */
76
115
  build() {
77
116
  return this.validators.map((v) => v.build());
78
117
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validation-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/validation/validation-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-express-suite/src/validation/validation-builder.ts"],"names":[],"mappings":"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"}