@digitaldefiance/suite-core-lib 1.1.41 → 1.1.42

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 (469) hide show
  1. package/README.md +4 -0
  2. package/package.json +14 -33
  3. package/src/backup-code-string.ts +84 -0
  4. package/src/constants.ts +150 -0
  5. package/src/defaults.ts +73 -0
  6. package/src/enumerations/account-status.ts +17 -0
  7. package/src/enumerations/email-token-type.ts +24 -0
  8. package/src/enumerations/fec-error-type.ts +13 -0
  9. package/{dist/enumerations/index.d.ts → src/enumerations/index.ts} +1 -2
  10. package/src/enumerations/pbkdf2-error-type.ts +4 -0
  11. package/src/enumerations/role.ts +5 -0
  12. package/src/enumerations/suite-core-string-key.ts +446 -0
  13. package/src/errors/account-locked.ts +9 -0
  14. package/src/errors/account-status.ts +33 -0
  15. package/src/errors/admin-role-not-found.ts +10 -0
  16. package/src/errors/core-typed-handleable.ts +71 -0
  17. package/src/errors/direct-token-used.ts +8 -0
  18. package/src/errors/email-in-use.ts +11 -0
  19. package/src/errors/email-token-expired.ts +12 -0
  20. package/src/errors/email-token-failed-to-send.ts +19 -0
  21. package/src/errors/email-token-sent-too-recently.ts +29 -0
  22. package/src/errors/email-token-used-or-invalid.ts +12 -0
  23. package/src/errors/email-verified.ts +11 -0
  24. package/src/errors/failed-to-use-direct-token.ts +8 -0
  25. package/src/errors/fec-error.ts +35 -0
  26. package/src/errors/generic-validation.ts +10 -0
  27. package/{dist/errors/index.d.ts → src/errors/index.ts} +0 -1
  28. package/src/errors/invalid-backup-code.ts +6 -0
  29. package/src/errors/invalid-challenge-response.ts +11 -0
  30. package/src/errors/invalid-challenge.ts +8 -0
  31. package/src/errors/invalid-credentials.ts +14 -0
  32. package/src/errors/invalid-email.ts +20 -0
  33. package/src/errors/invalid-expired-token.ts +11 -0
  34. package/src/errors/invalid-token.ts +13 -0
  35. package/src/errors/invalid-userid.ts +21 -0
  36. package/src/errors/invalid-username.ts +14 -0
  37. package/src/errors/last-admin-error.ts +12 -0
  38. package/src/errors/login-challenge-expired.ts +11 -0
  39. package/src/errors/member-role-not-found.ts +10 -0
  40. package/src/errors/pbkdf2-error.ts +19 -0
  41. package/src/errors/pending-email-verification.ts +8 -0
  42. package/src/errors/private-key-required.ts +13 -0
  43. package/src/errors/system-role-not-found.ts +10 -0
  44. package/src/errors/token-not-found.ts +26 -0
  45. package/src/errors/translatable-suite-handleable.ts +43 -0
  46. package/src/errors/translatable-suite.ts +44 -0
  47. package/src/errors/user-not-found.ts +14 -0
  48. package/src/errors/username-email-required.ts +20 -0
  49. package/src/errors/username-in-use.ts +14 -0
  50. package/src/i18n-setup.ts +4939 -0
  51. package/{dist/index.d.ts → src/index.ts} +0 -1
  52. package/src/interfaces/backup-code-consts.ts +15 -0
  53. package/src/interfaces/backup-code.ts +6 -0
  54. package/src/interfaces/bases/email-token.ts +38 -0
  55. package/{dist/interfaces/bases/index.d.ts → src/interfaces/bases/index.ts} +0 -1
  56. package/{dist/interfaces/bases/mnemonic.d.ts → src/interfaces/bases/mnemonic.ts} +5 -5
  57. package/src/interfaces/bases/role.ts +40 -0
  58. package/src/interfaces/bases/token-role.ts +9 -0
  59. package/{dist/interfaces/bases/used-direct-login-token.d.ts → src/interfaces/bases/used-direct-login-token.ts} +3 -3
  60. package/src/interfaces/bases/user-role.ts +21 -0
  61. package/src/interfaces/bases/user.ts +80 -0
  62. package/src/interfaces/constants.ts +17 -0
  63. package/src/interfaces/core-consts.ts +109 -0
  64. package/src/interfaces/deep-partial.ts +3 -0
  65. package/{dist/interfaces/dto/email-token.d.ts → src/interfaces/dto/email-token.ts} +1 -1
  66. package/{dist/interfaces/dto/index.d.ts → src/interfaces/dto/index.ts} +0 -1
  67. package/{dist/interfaces/dto/mnemonic.d.ts → src/interfaces/dto/mnemonic.ts} +1 -1
  68. package/src/interfaces/dto/request-user.ts +12 -0
  69. package/{dist/interfaces/dto/role.d.ts → src/interfaces/dto/role.ts} +1 -1
  70. package/{dist/interfaces/dto/token-role.d.ts → src/interfaces/dto/token-role.ts} +9 -3
  71. package/{dist/interfaces/dto/user-role.d.ts → src/interfaces/dto/user-role.ts} +1 -1
  72. package/{dist/interfaces/dto/user.d.ts → src/interfaces/dto/user.ts} +1 -1
  73. package/src/interfaces/failable-result.ts +6 -0
  74. package/src/interfaces/frontend-objects/email-token.ts +8 -0
  75. package/{dist/interfaces/frontend-objects/index.d.ts → src/interfaces/frontend-objects/index.ts} +1 -2
  76. package/src/interfaces/frontend-objects/request-user.ts +12 -0
  77. package/{dist/interfaces/frontend-objects/role.d.ts → src/interfaces/frontend-objects/role.ts} +1 -1
  78. package/{dist/interfaces/frontend-objects/user-role.d.ts → src/interfaces/frontend-objects/user-role.ts} +1 -1
  79. package/src/interfaces/frontend-objects/user.ts +9 -0
  80. package/src/interfaces/has-creation.ts +6 -0
  81. package/src/interfaces/has-creator.ts +6 -0
  82. package/src/interfaces/has-id.ts +3 -0
  83. package/src/interfaces/has-soft-delete.ts +6 -0
  84. package/src/interfaces/has-soft-deleter.ts +6 -0
  85. package/src/interfaces/has-timestamp-owners.ts +6 -0
  86. package/src/interfaces/has-timestamps.ts +7 -0
  87. package/src/interfaces/has-updater.ts +6 -0
  88. package/src/interfaces/has-updates.ts +3 -0
  89. package/{dist/interfaces/index.d.ts → src/interfaces/index.ts} +1 -2
  90. package/{dist/interfaces/models/email-token.d.ts → src/interfaces/models/email-token.ts} +1 -1
  91. package/{dist/interfaces/models/index.d.ts → src/interfaces/models/index.ts} +0 -1
  92. package/{dist/interfaces/models/mnemonic.d.ts → src/interfaces/models/mnemonic.ts} +1 -1
  93. package/{dist/interfaces/models/role.d.ts → src/interfaces/models/role.ts} +1 -1
  94. package/{dist/interfaces/models/token-role.d.ts → src/interfaces/models/token-role.ts} +1 -1
  95. package/{dist/interfaces/models/used-direct-login-token.d.ts → src/interfaces/models/used-direct-login-token.ts} +3 -2
  96. package/{dist/interfaces/models/user-role.d.ts → src/interfaces/models/user-role.ts} +1 -1
  97. package/{dist/interfaces/models/user.d.ts → src/interfaces/models/user.ts} +13 -3
  98. package/{dist/interfaces/token-user.d.ts → src/interfaces/token-user.ts} +3 -3
  99. package/src/local-storage-manager.ts +69 -0
  100. package/dist/backup-code-string.d.ts +0 -26
  101. package/dist/backup-code-string.d.ts.map +0 -1
  102. package/dist/backup-code-string.js +0 -72
  103. package/dist/backup-code-string.js.map +0 -1
  104. package/dist/constants.d.ts +0 -7
  105. package/dist/constants.d.ts.map +0 -1
  106. package/dist/constants.js +0 -140
  107. package/dist/constants.js.map +0 -1
  108. package/dist/defaults.d.ts +0 -7
  109. package/dist/defaults.d.ts.map +0 -1
  110. package/dist/defaults.js +0 -60
  111. package/dist/defaults.js.map +0 -1
  112. package/dist/enumerations/account-status.d.ts +0 -18
  113. package/dist/enumerations/account-status.d.ts.map +0 -1
  114. package/dist/enumerations/account-status.js +0 -22
  115. package/dist/enumerations/account-status.js.map +0 -1
  116. package/dist/enumerations/email-token-type.d.ts +0 -25
  117. package/dist/enumerations/email-token-type.d.ts.map +0 -1
  118. package/dist/enumerations/email-token-type.js +0 -29
  119. package/dist/enumerations/email-token-type.js.map +0 -1
  120. package/dist/enumerations/fec-error-type.d.ts +0 -14
  121. package/dist/enumerations/fec-error-type.d.ts.map +0 -1
  122. package/dist/enumerations/fec-error-type.js +0 -18
  123. package/dist/enumerations/fec-error-type.js.map +0 -1
  124. package/dist/enumerations/index.d.ts.map +0 -1
  125. package/dist/enumerations/index.js +0 -23
  126. package/dist/enumerations/index.js.map +0 -1
  127. package/dist/enumerations/pbkdf2-error-type.d.ts +0 -5
  128. package/dist/enumerations/pbkdf2-error-type.d.ts.map +0 -1
  129. package/dist/enumerations/pbkdf2-error-type.js +0 -9
  130. package/dist/enumerations/pbkdf2-error-type.js.map +0 -1
  131. package/dist/enumerations/role.d.ts +0 -6
  132. package/dist/enumerations/role.d.ts.map +0 -1
  133. package/dist/enumerations/role.js +0 -10
  134. package/dist/enumerations/role.js.map +0 -1
  135. package/dist/enumerations/suite-core-string-key.d.ts +0 -433
  136. package/dist/enumerations/suite-core-string-key.d.ts.map +0 -1
  137. package/dist/enumerations/suite-core-string-key.js +0 -444
  138. package/dist/enumerations/suite-core-string-key.js.map +0 -1
  139. package/dist/errors/account-locked.d.ts +0 -5
  140. package/dist/errors/account-locked.d.ts.map +0 -1
  141. package/dist/errors/account-locked.js +0 -13
  142. package/dist/errors/account-locked.js.map +0 -1
  143. package/dist/errors/account-status.d.ts +0 -7
  144. package/dist/errors/account-status.d.ts.map +0 -1
  145. package/dist/errors/account-status.js +0 -30
  146. package/dist/errors/account-status.js.map +0 -1
  147. package/dist/errors/admin-role-not-found.d.ts +0 -6
  148. package/dist/errors/admin-role-not-found.d.ts.map +0 -1
  149. package/dist/errors/admin-role-not-found.js +0 -13
  150. package/dist/errors/admin-role-not-found.js.map +0 -1
  151. package/dist/errors/core-typed-handleable.d.ts +0 -12
  152. package/dist/errors/core-typed-handleable.d.ts.map +0 -1
  153. package/dist/errors/core-typed-handleable.js +0 -45
  154. package/dist/errors/core-typed-handleable.js.map +0 -1
  155. package/dist/errors/direct-token-used.d.ts +0 -5
  156. package/dist/errors/direct-token-used.d.ts.map +0 -1
  157. package/dist/errors/direct-token-used.js +0 -12
  158. package/dist/errors/direct-token-used.js.map +0 -1
  159. package/dist/errors/email-in-use.d.ts +0 -5
  160. package/dist/errors/email-in-use.d.ts.map +0 -1
  161. package/dist/errors/email-in-use.js +0 -15
  162. package/dist/errors/email-in-use.js.map +0 -1
  163. package/dist/errors/email-token-expired.d.ts +0 -5
  164. package/dist/errors/email-token-expired.d.ts.map +0 -1
  165. package/dist/errors/email-token-expired.js +0 -15
  166. package/dist/errors/email-token-expired.js.map +0 -1
  167. package/dist/errors/email-token-failed-to-send.d.ts +0 -6
  168. package/dist/errors/email-token-failed-to-send.d.ts.map +0 -1
  169. package/dist/errors/email-token-failed-to-send.js +0 -21
  170. package/dist/errors/email-token-failed-to-send.js.map +0 -1
  171. package/dist/errors/email-token-sent-too-recently.d.ts +0 -7
  172. package/dist/errors/email-token-sent-too-recently.d.ts.map +0 -1
  173. package/dist/errors/email-token-sent-too-recently.js +0 -19
  174. package/dist/errors/email-token-sent-too-recently.js.map +0 -1
  175. package/dist/errors/email-token-used-or-invalid.d.ts +0 -5
  176. package/dist/errors/email-token-used-or-invalid.d.ts.map +0 -1
  177. package/dist/errors/email-token-used-or-invalid.js +0 -15
  178. package/dist/errors/email-token-used-or-invalid.js.map +0 -1
  179. package/dist/errors/email-verified.d.ts +0 -5
  180. package/dist/errors/email-verified.d.ts.map +0 -1
  181. package/dist/errors/email-verified.js +0 -15
  182. package/dist/errors/email-verified.js.map +0 -1
  183. package/dist/errors/failed-to-use-direct-token.d.ts +0 -5
  184. package/dist/errors/failed-to-use-direct-token.d.ts.map +0 -1
  185. package/dist/errors/failed-to-use-direct-token.js +0 -12
  186. package/dist/errors/failed-to-use-direct-token.js.map +0 -1
  187. package/dist/errors/fec-error.d.ts +0 -6
  188. package/dist/errors/fec-error.d.ts.map +0 -1
  189. package/dist/errors/fec-error.js +0 -27
  190. package/dist/errors/fec-error.js.map +0 -1
  191. package/dist/errors/generic-validation.d.ts +0 -5
  192. package/dist/errors/generic-validation.d.ts.map +0 -1
  193. package/dist/errors/generic-validation.js +0 -11
  194. package/dist/errors/generic-validation.js.map +0 -1
  195. package/dist/errors/index.d.ts.map +0 -1
  196. package/dist/errors/index.js +0 -53
  197. package/dist/errors/index.js.map +0 -1
  198. package/dist/errors/invalid-backup-code.d.ts +0 -4
  199. package/dist/errors/invalid-backup-code.d.ts.map +0 -1
  200. package/dist/errors/invalid-backup-code.js +0 -11
  201. package/dist/errors/invalid-backup-code.js.map +0 -1
  202. package/dist/errors/invalid-challenge-response.d.ts +0 -5
  203. package/dist/errors/invalid-challenge-response.d.ts.map +0 -1
  204. package/dist/errors/invalid-challenge-response.js +0 -15
  205. package/dist/errors/invalid-challenge-response.js.map +0 -1
  206. package/dist/errors/invalid-challenge.d.ts +0 -5
  207. package/dist/errors/invalid-challenge.d.ts.map +0 -1
  208. package/dist/errors/invalid-challenge.js +0 -12
  209. package/dist/errors/invalid-challenge.js.map +0 -1
  210. package/dist/errors/invalid-credentials.d.ts +0 -5
  211. package/dist/errors/invalid-credentials.d.ts.map +0 -1
  212. package/dist/errors/invalid-credentials.js +0 -15
  213. package/dist/errors/invalid-credentials.js.map +0 -1
  214. package/dist/errors/invalid-email.d.ts +0 -7
  215. package/dist/errors/invalid-email.d.ts.map +0 -1
  216. package/dist/errors/invalid-email.js +0 -23
  217. package/dist/errors/invalid-email.js.map +0 -1
  218. package/dist/errors/invalid-expired-token.d.ts +0 -7
  219. package/dist/errors/invalid-expired-token.d.ts.map +0 -1
  220. package/dist/errors/invalid-expired-token.js +0 -13
  221. package/dist/errors/invalid-expired-token.js.map +0 -1
  222. package/dist/errors/invalid-token.d.ts +0 -5
  223. package/dist/errors/invalid-token.d.ts.map +0 -1
  224. package/dist/errors/invalid-token.js +0 -16
  225. package/dist/errors/invalid-token.js.map +0 -1
  226. package/dist/errors/invalid-userid.d.ts +0 -6
  227. package/dist/errors/invalid-userid.d.ts.map +0 -1
  228. package/dist/errors/invalid-userid.js +0 -18
  229. package/dist/errors/invalid-userid.js.map +0 -1
  230. package/dist/errors/invalid-username.d.ts +0 -5
  231. package/dist/errors/invalid-username.d.ts.map +0 -1
  232. package/dist/errors/invalid-username.js +0 -13
  233. package/dist/errors/invalid-username.js.map +0 -1
  234. package/dist/errors/last-admin-error.d.ts +0 -6
  235. package/dist/errors/last-admin-error.d.ts.map +0 -1
  236. package/dist/errors/last-admin-error.js +0 -15
  237. package/dist/errors/last-admin-error.js.map +0 -1
  238. package/dist/errors/login-challenge-expired.d.ts +0 -5
  239. package/dist/errors/login-challenge-expired.d.ts.map +0 -1
  240. package/dist/errors/login-challenge-expired.js +0 -15
  241. package/dist/errors/login-challenge-expired.js.map +0 -1
  242. package/dist/errors/member-role-not-found.d.ts +0 -6
  243. package/dist/errors/member-role-not-found.d.ts.map +0 -1
  244. package/dist/errors/member-role-not-found.js +0 -13
  245. package/dist/errors/member-role-not-found.js.map +0 -1
  246. package/dist/errors/pbkdf2-error.d.ts +0 -7
  247. package/dist/errors/pbkdf2-error.d.ts.map +0 -1
  248. package/dist/errors/pbkdf2-error.js +0 -20
  249. package/dist/errors/pbkdf2-error.js.map +0 -1
  250. package/dist/errors/pending-email-verification.d.ts +0 -5
  251. package/dist/errors/pending-email-verification.d.ts.map +0 -1
  252. package/dist/errors/pending-email-verification.js +0 -12
  253. package/dist/errors/pending-email-verification.js.map +0 -1
  254. package/dist/errors/plugin-typed-handleable.d.ts +0 -14
  255. package/dist/errors/plugin-typed-handleable.d.ts.map +0 -1
  256. package/dist/errors/plugin-typed-handleable.js +0 -47
  257. package/dist/errors/plugin-typed-handleable.js.map +0 -1
  258. package/dist/errors/private-key-required.d.ts +0 -5
  259. package/dist/errors/private-key-required.d.ts.map +0 -1
  260. package/dist/errors/private-key-required.js +0 -13
  261. package/dist/errors/private-key-required.js.map +0 -1
  262. package/dist/errors/system-role-not-found.d.ts +0 -6
  263. package/dist/errors/system-role-not-found.d.ts.map +0 -1
  264. package/dist/errors/system-role-not-found.js +0 -13
  265. package/dist/errors/system-role-not-found.js.map +0 -1
  266. package/dist/errors/token-not-found.d.ts +0 -7
  267. package/dist/errors/token-not-found.d.ts.map +0 -1
  268. package/dist/errors/token-not-found.js +0 -18
  269. package/dist/errors/token-not-found.js.map +0 -1
  270. package/dist/errors/translatable-suite-handleable.d.ts +0 -18
  271. package/dist/errors/translatable-suite-handleable.d.ts.map +0 -1
  272. package/dist/errors/translatable-suite-handleable.js +0 -29
  273. package/dist/errors/translatable-suite-handleable.js.map +0 -1
  274. package/dist/errors/translatable-suite.d.ts +0 -13
  275. package/dist/errors/translatable-suite.d.ts.map +0 -1
  276. package/dist/errors/translatable-suite.js +0 -37
  277. package/dist/errors/translatable-suite.js.map +0 -1
  278. package/dist/errors/user-not-found.d.ts +0 -5
  279. package/dist/errors/user-not-found.d.ts.map +0 -1
  280. package/dist/errors/user-not-found.js +0 -13
  281. package/dist/errors/user-not-found.js.map +0 -1
  282. package/dist/errors/username-email-required.d.ts +0 -6
  283. package/dist/errors/username-email-required.d.ts.map +0 -1
  284. package/dist/errors/username-email-required.js +0 -16
  285. package/dist/errors/username-email-required.js.map +0 -1
  286. package/dist/errors/username-in-use.d.ts +0 -5
  287. package/dist/errors/username-in-use.d.ts.map +0 -1
  288. package/dist/errors/username-in-use.js +0 -13
  289. package/dist/errors/username-in-use.js.map +0 -1
  290. package/dist/i18n-setup.d.ts +0 -40
  291. package/dist/i18n-setup.d.ts.map +0 -1
  292. package/dist/i18n-setup.js +0 -3576
  293. package/dist/i18n-setup.js.map +0 -1
  294. package/dist/index.d.ts.map +0 -1
  295. package/dist/index.js +0 -25
  296. package/dist/index.js.map +0 -1
  297. package/dist/interfaces/backup-code-consts.d.ts +0 -16
  298. package/dist/interfaces/backup-code-consts.d.ts.map +0 -1
  299. package/dist/interfaces/backup-code-consts.js +0 -3
  300. package/dist/interfaces/backup-code-consts.js.map +0 -1
  301. package/dist/interfaces/backup-code.d.ts +0 -7
  302. package/dist/interfaces/backup-code.d.ts.map +0 -1
  303. package/dist/interfaces/backup-code.js +0 -3
  304. package/dist/interfaces/backup-code.js.map +0 -1
  305. package/dist/interfaces/bases/email-token.d.ts +0 -33
  306. package/dist/interfaces/bases/email-token.d.ts.map +0 -1
  307. package/dist/interfaces/bases/email-token.js +0 -3
  308. package/dist/interfaces/bases/email-token.js.map +0 -1
  309. package/dist/interfaces/bases/index.d.ts.map +0 -1
  310. package/dist/interfaces/bases/index.js +0 -24
  311. package/dist/interfaces/bases/index.js.map +0 -1
  312. package/dist/interfaces/bases/mnemonic.d.ts.map +0 -1
  313. package/dist/interfaces/bases/mnemonic.js +0 -3
  314. package/dist/interfaces/bases/mnemonic.js.map +0 -1
  315. package/dist/interfaces/bases/role.d.ts +0 -32
  316. package/dist/interfaces/bases/role.d.ts.map +0 -1
  317. package/dist/interfaces/bases/role.js +0 -3
  318. package/dist/interfaces/bases/role.js.map +0 -1
  319. package/dist/interfaces/bases/token-role.d.ts +0 -8
  320. package/dist/interfaces/bases/token-role.d.ts.map +0 -1
  321. package/dist/interfaces/bases/token-role.js +0 -3
  322. package/dist/interfaces/bases/token-role.js.map +0 -1
  323. package/dist/interfaces/bases/used-direct-login-token.d.ts.map +0 -1
  324. package/dist/interfaces/bases/used-direct-login-token.js +0 -3
  325. package/dist/interfaces/bases/used-direct-login-token.js.map +0 -1
  326. package/dist/interfaces/bases/user-role.d.ts +0 -16
  327. package/dist/interfaces/bases/user-role.d.ts.map +0 -1
  328. package/dist/interfaces/bases/user-role.js +0 -3
  329. package/dist/interfaces/bases/user-role.js.map +0 -1
  330. package/dist/interfaces/bases/user.d.ts +0 -71
  331. package/dist/interfaces/bases/user.d.ts.map +0 -1
  332. package/dist/interfaces/bases/user.js +0 -3
  333. package/dist/interfaces/bases/user.js.map +0 -1
  334. package/dist/interfaces/constants.d.ts +0 -16
  335. package/dist/interfaces/constants.d.ts.map +0 -1
  336. package/dist/interfaces/constants.js +0 -3
  337. package/dist/interfaces/constants.js.map +0 -1
  338. package/dist/interfaces/core-consts.d.ts +0 -109
  339. package/dist/interfaces/core-consts.d.ts.map +0 -1
  340. package/dist/interfaces/core-consts.js +0 -3
  341. package/dist/interfaces/core-consts.js.map +0 -1
  342. package/dist/interfaces/deep-partial.d.ts +0 -4
  343. package/dist/interfaces/deep-partial.d.ts.map +0 -1
  344. package/dist/interfaces/deep-partial.js +0 -3
  345. package/dist/interfaces/deep-partial.js.map +0 -1
  346. package/dist/interfaces/dto/email-token.d.ts.map +0 -1
  347. package/dist/interfaces/dto/email-token.js +0 -3
  348. package/dist/interfaces/dto/email-token.js.map +0 -1
  349. package/dist/interfaces/dto/index.d.ts.map +0 -1
  350. package/dist/interfaces/dto/index.js +0 -24
  351. package/dist/interfaces/dto/index.js.map +0 -1
  352. package/dist/interfaces/dto/mnemonic.d.ts.map +0 -1
  353. package/dist/interfaces/dto/mnemonic.js +0 -3
  354. package/dist/interfaces/dto/mnemonic.js.map +0 -1
  355. package/dist/interfaces/dto/request-user.d.ts +0 -12
  356. package/dist/interfaces/dto/request-user.d.ts.map +0 -1
  357. package/dist/interfaces/dto/request-user.js +0 -3
  358. package/dist/interfaces/dto/request-user.js.map +0 -1
  359. package/dist/interfaces/dto/role.d.ts.map +0 -1
  360. package/dist/interfaces/dto/role.js +0 -3
  361. package/dist/interfaces/dto/role.js.map +0 -1
  362. package/dist/interfaces/dto/token-role.d.ts.map +0 -1
  363. package/dist/interfaces/dto/token-role.js +0 -3
  364. package/dist/interfaces/dto/token-role.js.map +0 -1
  365. package/dist/interfaces/dto/user-role.d.ts.map +0 -1
  366. package/dist/interfaces/dto/user-role.js +0 -3
  367. package/dist/interfaces/dto/user-role.js.map +0 -1
  368. package/dist/interfaces/dto/user.d.ts.map +0 -1
  369. package/dist/interfaces/dto/user.js +0 -3
  370. package/dist/interfaces/dto/user.js.map +0 -1
  371. package/dist/interfaces/failable-result.d.ts +0 -7
  372. package/dist/interfaces/failable-result.d.ts.map +0 -1
  373. package/dist/interfaces/failable-result.js +0 -3
  374. package/dist/interfaces/failable-result.js.map +0 -1
  375. package/dist/interfaces/frontend-objects/email-token.d.ts +0 -4
  376. package/dist/interfaces/frontend-objects/email-token.d.ts.map +0 -1
  377. package/dist/interfaces/frontend-objects/email-token.js +0 -3
  378. package/dist/interfaces/frontend-objects/email-token.js.map +0 -1
  379. package/dist/interfaces/frontend-objects/index.d.ts.map +0 -1
  380. package/dist/interfaces/frontend-objects/index.js +0 -22
  381. package/dist/interfaces/frontend-objects/index.js.map +0 -1
  382. package/dist/interfaces/frontend-objects/request-user.d.ts +0 -12
  383. package/dist/interfaces/frontend-objects/request-user.d.ts.map +0 -1
  384. package/dist/interfaces/frontend-objects/request-user.js +0 -3
  385. package/dist/interfaces/frontend-objects/request-user.js.map +0 -1
  386. package/dist/interfaces/frontend-objects/role.d.ts.map +0 -1
  387. package/dist/interfaces/frontend-objects/role.js +0 -3
  388. package/dist/interfaces/frontend-objects/role.js.map +0 -1
  389. package/dist/interfaces/frontend-objects/user-role.d.ts.map +0 -1
  390. package/dist/interfaces/frontend-objects/user-role.js +0 -3
  391. package/dist/interfaces/frontend-objects/user-role.js.map +0 -1
  392. package/dist/interfaces/frontend-objects/user.d.ts +0 -4
  393. package/dist/interfaces/frontend-objects/user.d.ts.map +0 -1
  394. package/dist/interfaces/frontend-objects/user.js +0 -3
  395. package/dist/interfaces/frontend-objects/user.js.map +0 -1
  396. package/dist/interfaces/handleable-error-options.d.ts +0 -6
  397. package/dist/interfaces/handleable-error-options.d.ts.map +0 -1
  398. package/dist/interfaces/handleable-error-options.js +0 -3
  399. package/dist/interfaces/handleable-error-options.js.map +0 -1
  400. package/dist/interfaces/has-creation.d.ts +0 -7
  401. package/dist/interfaces/has-creation.d.ts.map +0 -1
  402. package/dist/interfaces/has-creation.js +0 -3
  403. package/dist/interfaces/has-creation.js.map +0 -1
  404. package/dist/interfaces/has-creator.d.ts +0 -7
  405. package/dist/interfaces/has-creator.d.ts.map +0 -1
  406. package/dist/interfaces/has-creator.js +0 -3
  407. package/dist/interfaces/has-creator.js.map +0 -1
  408. package/dist/interfaces/has-id.d.ts +0 -4
  409. package/dist/interfaces/has-id.d.ts.map +0 -1
  410. package/dist/interfaces/has-id.js +0 -3
  411. package/dist/interfaces/has-id.js.map +0 -1
  412. package/dist/interfaces/has-soft-delete.d.ts +0 -7
  413. package/dist/interfaces/has-soft-delete.d.ts.map +0 -1
  414. package/dist/interfaces/has-soft-delete.js +0 -3
  415. package/dist/interfaces/has-soft-delete.js.map +0 -1
  416. package/dist/interfaces/has-soft-deleter.d.ts +0 -7
  417. package/dist/interfaces/has-soft-deleter.d.ts.map +0 -1
  418. package/dist/interfaces/has-soft-deleter.js +0 -3
  419. package/dist/interfaces/has-soft-deleter.js.map +0 -1
  420. package/dist/interfaces/has-timestamp-owners.d.ts +0 -5
  421. package/dist/interfaces/has-timestamp-owners.d.ts.map +0 -1
  422. package/dist/interfaces/has-timestamp-owners.js +0 -3
  423. package/dist/interfaces/has-timestamp-owners.js.map +0 -1
  424. package/dist/interfaces/has-timestamps.d.ts +0 -6
  425. package/dist/interfaces/has-timestamps.d.ts.map +0 -1
  426. package/dist/interfaces/has-timestamps.js +0 -3
  427. package/dist/interfaces/has-timestamps.js.map +0 -1
  428. package/dist/interfaces/has-updater.d.ts +0 -7
  429. package/dist/interfaces/has-updater.d.ts.map +0 -1
  430. package/dist/interfaces/has-updater.js +0 -3
  431. package/dist/interfaces/has-updater.js.map +0 -1
  432. package/dist/interfaces/has-updates.d.ts +0 -4
  433. package/dist/interfaces/has-updates.d.ts.map +0 -1
  434. package/dist/interfaces/has-updates.js +0 -3
  435. package/dist/interfaces/has-updates.js.map +0 -1
  436. package/dist/interfaces/index.d.ts.map +0 -1
  437. package/dist/interfaces/index.js +0 -37
  438. package/dist/interfaces/index.js.map +0 -1
  439. package/dist/interfaces/models/email-token.d.ts.map +0 -1
  440. package/dist/interfaces/models/email-token.js +0 -3
  441. package/dist/interfaces/models/email-token.js.map +0 -1
  442. package/dist/interfaces/models/index.d.ts.map +0 -1
  443. package/dist/interfaces/models/index.js +0 -25
  444. package/dist/interfaces/models/index.js.map +0 -1
  445. package/dist/interfaces/models/mnemonic.d.ts.map +0 -1
  446. package/dist/interfaces/models/mnemonic.js +0 -3
  447. package/dist/interfaces/models/mnemonic.js.map +0 -1
  448. package/dist/interfaces/models/role.d.ts.map +0 -1
  449. package/dist/interfaces/models/role.js +0 -3
  450. package/dist/interfaces/models/role.js.map +0 -1
  451. package/dist/interfaces/models/token-role.d.ts.map +0 -1
  452. package/dist/interfaces/models/token-role.js +0 -3
  453. package/dist/interfaces/models/token-role.js.map +0 -1
  454. package/dist/interfaces/models/used-direct-login-token.d.ts.map +0 -1
  455. package/dist/interfaces/models/used-direct-login-token.js +0 -3
  456. package/dist/interfaces/models/used-direct-login-token.js.map +0 -1
  457. package/dist/interfaces/models/user-role.d.ts.map +0 -1
  458. package/dist/interfaces/models/user-role.js +0 -3
  459. package/dist/interfaces/models/user-role.js.map +0 -1
  460. package/dist/interfaces/models/user.d.ts.map +0 -1
  461. package/dist/interfaces/models/user.js +0 -3
  462. package/dist/interfaces/models/user.js.map +0 -1
  463. package/dist/interfaces/token-user.d.ts.map +0 -1
  464. package/dist/interfaces/token-user.js +0 -3
  465. package/dist/interfaces/token-user.js.map +0 -1
  466. package/dist/local-storage-manager.d.ts +0 -22
  467. package/dist/local-storage-manager.d.ts.map +0 -1
  468. package/dist/local-storage-manager.js +0 -74
  469. package/dist/local-storage-manager.js.map +0 -1
@@ -6,4 +6,3 @@ export * from './i18n-setup';
6
6
  export * from './interfaces';
7
7
  export * from './local-storage-manager';
8
8
  export * from './defaults';
9
- //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,15 @@
1
+ export interface IBackupCodeConstants {
2
+ /**
3
+ * How many backup codes to generate for users
4
+ */
5
+ Count: number;
6
+ /**
7
+ * Regex for the backup codes
8
+ * 32 lowercase alphanumeric character string (a-z0-9)
9
+ */
10
+ NormalizedHexRegex: RegExp;
11
+ /**
12
+ * Regex for the display format of the backup codes
13
+ */
14
+ DisplayRegex: RegExp; // xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxx
15
+ }
@@ -0,0 +1,6 @@
1
+ export interface IBackupCode {
2
+ version: string;
3
+ checksumSalt: string;
4
+ checksum: string;
5
+ encrypted: string;
6
+ }
@@ -0,0 +1,38 @@
1
+ import { EmailTokenType } from '../../enumerations/email-token-type';
2
+ import { IHasId } from '../has-id';
3
+ import { IHasTimestamps } from '../has-timestamps';
4
+
5
+ /**
6
+ * Base interface for email token collection documents
7
+ */
8
+ export interface IEmailTokenBase<
9
+ I,
10
+ D extends Date | string,
11
+ E extends EmailTokenType | string,
12
+ > extends IHasId<I>,
13
+ IHasTimestamps<D> {
14
+ /**
15
+ * The user ID associated with the token
16
+ */
17
+ userId: I;
18
+ /**
19
+ * The type of token
20
+ */
21
+ type: E;
22
+ /**
23
+ * The token value
24
+ */
25
+ token: string;
26
+ /**
27
+ * The email address the token was sent to
28
+ */
29
+ email: string;
30
+ /**
31
+ * The date the token was last sent
32
+ */
33
+ lastSent?: D;
34
+ /**
35
+ * The date the token expires
36
+ */
37
+ expiresAt: D;
38
+ }
@@ -5,4 +5,3 @@ export * from './token-role';
5
5
  export * from './used-direct-login-token';
6
6
  export * from './user';
7
7
  export * from './user-role';
8
- //# sourceMappingURL=index.d.ts.map
@@ -1,11 +1,11 @@
1
1
  import { IHasId } from '../has-id';
2
+
2
3
  /**
3
4
  * Represents a mnemonic hash being stored to check for uniqueness
4
5
  */
5
6
  export interface IMnemonicBase<I> extends IHasId<I> {
6
- /**
7
- * A non-reversible HMAC of the mnemonic, used for uniqueness checks.
8
- */
9
- hmac: string;
7
+ /**
8
+ * A non-reversible HMAC of the mnemonic, used for uniqueness checks.
9
+ */
10
+ hmac: string;
10
11
  }
11
- //# sourceMappingURL=mnemonic.d.ts.map
@@ -0,0 +1,40 @@
1
+ import { Role } from '../../enumerations/role';
2
+ import { IHasId } from '../has-id';
3
+ import { IHasSoftDelete } from '../has-soft-delete';
4
+ import { IHasSoftDeleter } from '../has-soft-deleter';
5
+ import { IHasTimestampOwners } from '../has-timestamp-owners';
6
+ import { IHasTimestamps } from '../has-timestamps';
7
+
8
+ export interface IRoleBase<
9
+ I,
10
+ D extends Date | string = Date,
11
+ R extends Role | string = Role,
12
+ > extends IHasId<I>,
13
+ IHasTimestamps<D>,
14
+ IHasTimestampOwners<I>,
15
+ IHasSoftDelete<D>,
16
+ IHasSoftDeleter<I> {
17
+ /**
18
+ * The name of the role
19
+ */
20
+ name: R;
21
+ /**
22
+ * Whether the role is an admin
23
+ */
24
+ admin: boolean;
25
+ /**
26
+ * Whether the role is a site member
27
+ * Must not specify admin or system
28
+ */
29
+ member: boolean;
30
+ /**
31
+ * Whether the role is a restricted child account
32
+ * This prevents the account from certain actions
33
+ * Must not specify admin, member,
34
+ */
35
+ child: boolean;
36
+ /**
37
+ * Whether the role is a system account
38
+ */
39
+ system: boolean;
40
+ }
@@ -0,0 +1,9 @@
1
+ import { IRoleBase } from './role';
2
+
3
+ export interface ITokenRole<I, D extends Date | string = Date>
4
+ extends IRoleBase<I, D> {
5
+ /**
6
+ * The translated name of the role
7
+ */
8
+ translatedName: string;
9
+ }
@@ -1,6 +1,6 @@
1
1
  import { IHasId } from '../has-id';
2
+
2
3
  export interface IUsedDirectLoginTokenBase<I> extends IHasId<I> {
3
- userId: I;
4
- token: string;
4
+ userId: I;
5
+ token: string;
5
6
  }
6
- //# sourceMappingURL=used-direct-login-token.d.ts.map
@@ -0,0 +1,21 @@
1
+ import { IHasId } from '../has-id';
2
+ import { IHasSoftDelete } from '../has-soft-delete';
3
+ import { IHasSoftDeleter } from '../has-soft-deleter';
4
+ import { IHasTimestampOwners } from '../has-timestamp-owners';
5
+ import { IHasTimestamps } from '../has-timestamps';
6
+
7
+ export interface IUserRoleBase<I, D extends Date | string>
8
+ extends IHasId<I>,
9
+ IHasTimestamps<D>,
10
+ IHasTimestampOwners<I>,
11
+ IHasSoftDelete<D>,
12
+ IHasSoftDeleter<I> {
13
+ /**
14
+ * The user ID
15
+ */
16
+ userId: I;
17
+ /**
18
+ * The role ID
19
+ */
20
+ roleId: I;
21
+ }
@@ -0,0 +1,80 @@
1
+ import { AccountStatus } from '../../enumerations/account-status';
2
+ import { IBackupCode } from '../backup-code';
3
+ import { IHasId } from '../has-id';
4
+ import { IHasSoftDelete } from '../has-soft-delete';
5
+ import { IHasSoftDeleter } from '../has-soft-deleter';
6
+ import { IHasTimestampOwners } from '../has-timestamp-owners';
7
+ import { IHasTimestamps } from '../has-timestamps';
8
+
9
+ /**
10
+ * Base interface for user collection documents
11
+ */
12
+ export interface IUserBase<
13
+ I,
14
+ D extends Date | string,
15
+ S extends string,
16
+ A extends AccountStatus | string,
17
+ > extends IHasId<I>,
18
+ IHasTimestamps<D>,
19
+ IHasTimestampOwners<I>,
20
+ IHasSoftDelete<D>,
21
+ IHasSoftDeleter<I> {
22
+ /**
23
+ * The username of the user
24
+ */
25
+ username: string;
26
+ /**
27
+ * The email address of the user
28
+ */
29
+ email: string;
30
+ /**
31
+ * The public key for the user
32
+ */
33
+ publicKey: string;
34
+ /**
35
+ * The timezone of the user
36
+ */
37
+ timezone: string;
38
+ /**
39
+ * The language of the site for the user
40
+ */
41
+ siteLanguage: S;
42
+ /**
43
+ * The date the user last logged in
44
+ */
45
+ lastLogin?: D;
46
+ /**
47
+ * Whether the user has verified their email address
48
+ */
49
+ emailVerified: boolean;
50
+ /**
51
+ * The status of the user's account, eg 'AdminLock'
52
+ */
53
+ accountStatus: A;
54
+ /**
55
+ * Reference to the mnemonic document
56
+ */
57
+ mnemonicId?: I;
58
+ /**
59
+ * Whether the user has enabled direct challenge
60
+ */
61
+ directChallenge: boolean;
62
+ /**
63
+ * Password-wrapped ECIES private key
64
+ */
65
+ passwordWrappedPrivateKey?: {
66
+ salt: string;
67
+ iv: string;
68
+ authTag: string;
69
+ ciphertext: string;
70
+ iterations: number;
71
+ };
72
+ /**
73
+ * Array of backup codes to recover mnemonic/private key
74
+ */
75
+ backupCodes: Array<IBackupCode>;
76
+ /**
77
+ * Copy of the mnemonic encrypted with the user's public key
78
+ */
79
+ mnemonicRecovery: string;
80
+ }
@@ -0,0 +1,17 @@
1
+ import { IBackupCodeConstants } from './backup-code-consts';
2
+ import { ICoreConstants } from './core-consts';
3
+
4
+ export interface IConstants extends ICoreConstants {
5
+ /**
6
+ * The email of the administrator user/admin contact
7
+ */
8
+ AdministratorEmail: string;
9
+ /**
10
+ * The email of the test user.
11
+ */
12
+ MemberEmail: string;
13
+ /**
14
+ * The email of the system user.
15
+ */
16
+ SystemEmail: string;
17
+ }
@@ -0,0 +1,109 @@
1
+ import { IBackupCodeConstants } from './backup-code-consts';
2
+
3
+ export interface ICoreConstants {
4
+ /**
5
+ * Backup code related constants
6
+ */
7
+ BACKUP_CODES: IBackupCodeConstants;
8
+ /**
9
+ * Duration in milliseconds for a login challenge
10
+ */
11
+ LoginChallengeExpiration: number;
12
+ /**
13
+ * Default duration in seconds for which mnemonics are kept in memory
14
+ */
15
+ DefaultExpireMemoryMnemonicSeconds: number;
16
+ /**
17
+ * Default duration in seconds for which wallets are kept in memory
18
+ */
19
+ DefaultExpireMemoryWalletSeconds: number;
20
+ /**
21
+ * The expected length of a direct login challenge in bytes
22
+ */
23
+ DirectLoginChallengeLength: number;
24
+ /**
25
+ * Duration in milliseconds for which an email token is valid.
26
+ */
27
+ EmailTokenExpiration: number;
28
+ /**
29
+ * Length in bytes of the email token generated (is represented as a hex string of twice as many)
30
+ */
31
+ EmailTokenLength: number;
32
+ /**
33
+ * Number of rounds for bcrypt hashing. Higher values increase security but also consume more CPU resources.
34
+ */
35
+ BcryptRounds: number;
36
+ /**
37
+ * The username of the administrator user.
38
+ */
39
+ AdministratorUser: string;
40
+ /**
41
+ * The name of the administrator role.
42
+ */
43
+ AdministratorRole: string;
44
+ /**
45
+ * The name of the member role.
46
+ */
47
+ MemberRole: string;
48
+ /**
49
+ * The username of the test user.
50
+ */
51
+ MemberUser: string;
52
+ /**
53
+ * The name of the system role.
54
+ */
55
+ SystemRole: string;
56
+ /**
57
+ * The username of the system user.
58
+ */
59
+ SystemUser: string;
60
+ /**
61
+ * Minimum username length
62
+ */
63
+ UsernameMinLength: number;
64
+ /**
65
+ * Maximum username length
66
+ */
67
+ UsernameMaxLength: number;
68
+ /**
69
+ * The regular expression for valid usernames.
70
+ */
71
+ UsernameRegex: RegExp;
72
+ /**
73
+ * Minimum password length
74
+ */
75
+ PasswordMinLength: number;
76
+ /**
77
+ * The regular expression for valid passwords.
78
+ */
79
+ PasswordRegex: RegExp;
80
+ /**
81
+ * The regular expression for valid mnemonic phrases.
82
+ * BIP39
83
+ */
84
+ MnemonicRegex: RegExp;
85
+ /**
86
+ * The regular expression for valid HMAC keys.
87
+ */
88
+ HmacRegex: RegExp;
89
+ /**
90
+ * The amount of time in milliseconds after which an email token can be resent.
91
+ */
92
+ EmailTokenResendInterval: number;
93
+ /**
94
+ * The interval in minutes after which an email token can be resent.
95
+ */
96
+ EmailTokenResendIntervalMinutes: number;
97
+ /**
98
+ * The name of the site.
99
+ */
100
+ Site: string;
101
+ /**
102
+ * The tagline of the site.
103
+ */
104
+ SiteTagline: string;
105
+ /**
106
+ * The description of the site.
107
+ */
108
+ SiteDescription: string;
109
+ }
@@ -0,0 +1,3 @@
1
+ export type DeepPartial<T> = {
2
+ [P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P];
3
+ };
@@ -1,3 +1,3 @@
1
1
  import { IEmailTokenBase } from '../bases/email-token';
2
+
2
3
  export type IEmailTokenDTO = IEmailTokenBase<string, string, string>;
3
- //# sourceMappingURL=email-token.d.ts.map
@@ -5,4 +5,3 @@ export * from './role';
5
5
  export * from './token-role';
6
6
  export * from './user';
7
7
  export * from './user-role';
8
- //# sourceMappingURL=index.d.ts.map
@@ -1,3 +1,3 @@
1
1
  import { IMnemonicBase } from '../bases';
2
+
2
3
  export type IMnemonicDTO = IMnemonicBase<string>;
3
- //# sourceMappingURL=mnemonic.d.ts.map
@@ -0,0 +1,12 @@
1
+ import { IRoleDTO } from '../dto/role';
2
+
3
+ export interface IRequestUserDTO {
4
+ id: string;
5
+ roles: Array<IRoleDTO>;
6
+ username: string;
7
+ email: string;
8
+ timezone: string;
9
+ siteLanguage: string;
10
+ lastLogin?: string;
11
+ emailVerified: boolean;
12
+ }
@@ -1,3 +1,3 @@
1
1
  import { IRoleBase } from '../bases/role';
2
+
2
3
  export type IRoleDTO = IRoleBase<string, string, string>;
3
- //# sourceMappingURL=role.d.ts.map
@@ -4,7 +4,13 @@ import { IHasSoftDeleter } from '../has-soft-deleter';
4
4
  import { IHasTimestampOwners } from '../has-timestamp-owners';
5
5
  import { IHasTimestamps } from '../has-timestamps';
6
6
  import { IRoleDTO } from './role';
7
- export interface ITokenRoleDTO extends IRoleDTO, IHasId<string>, IHasTimestamps<string>, IHasTimestampOwners<string>, IHasSoftDelete<string>, IHasSoftDeleter<string> {
8
- translatedName?: string;
7
+
8
+ export interface ITokenRoleDTO
9
+ extends IRoleDTO,
10
+ IHasId<string>,
11
+ IHasTimestamps<string>,
12
+ IHasTimestampOwners<string>,
13
+ IHasSoftDelete<string>,
14
+ IHasSoftDeleter<string> {
15
+ translatedName?: string;
9
16
  }
10
- //# sourceMappingURL=token-role.d.ts.map
@@ -1,3 +1,3 @@
1
1
  import { IUserRoleBase } from '../bases/user-role';
2
+
2
3
  export type IUserRoleDTO = IUserRoleBase<string, string>;
3
- //# sourceMappingURL=user-role.d.ts.map
@@ -1,3 +1,3 @@
1
1
  import { IUserBase } from '../bases/user';
2
+
2
3
  export type IUserDTO = IUserBase<string, string, string, string>;
3
- //# sourceMappingURL=user.d.ts.map
@@ -0,0 +1,6 @@
1
+ export interface IFailableResult<T> {
2
+ success: boolean;
3
+ data?: T;
4
+ message?: string;
5
+ error?: string | Error;
6
+ }
@@ -0,0 +1,8 @@
1
+ import { EmailTokenType } from '../../enumerations/email-token-type';
2
+ import { IEmailTokenBase } from '../bases/email-token';
3
+
4
+ export type IEmailTokenFrontendObject = IEmailTokenBase<
5
+ string,
6
+ Date,
7
+ EmailTokenType
8
+ >;
@@ -2,5 +2,4 @@ export * from './email-token';
2
2
  export * from './request-user';
3
3
  export * from './role';
4
4
  export * from './user-role';
5
- export * from './user';
6
- //# sourceMappingURL=index.d.ts.map
5
+ export * from './user';
@@ -0,0 +1,12 @@
1
+ import { IRoleFrontendObject } from './role';
2
+
3
+ export interface IRequestUserFrontendObject {
4
+ id: string;
5
+ roles: Array<IRoleFrontendObject>;
6
+ username: string;
7
+ email: string;
8
+ timezone: string;
9
+ siteLanguage: string;
10
+ lastLogin?: Date;
11
+ emailVerified: boolean;
12
+ }
@@ -1,4 +1,4 @@
1
1
  import { Role } from '../../enumerations/role';
2
2
  import { IRoleBase } from '../bases/role';
3
+
3
4
  export type IRoleFrontendObject = IRoleBase<string, Date, Role>;
4
- //# sourceMappingURL=role.d.ts.map
@@ -1,3 +1,3 @@
1
1
  import { IUserRoleBase } from '../bases/user-role';
2
+
2
3
  export type IUserRoleFrontendObject = IUserRoleBase<string, Date>;
3
- //# sourceMappingURL=user-role.d.ts.map
@@ -0,0 +1,9 @@
1
+ import { AccountStatus } from '../../enumerations/account-status';
2
+ import { IUserBase } from '../bases/user';
3
+
4
+ export type IUserFrontendObject = IUserBase<
5
+ string,
6
+ Date,
7
+ string,
8
+ AccountStatus
9
+ >;
@@ -0,0 +1,6 @@
1
+ export interface IHasCreation<D extends Date | string> {
2
+ /**
3
+ * The date the object was created.
4
+ */
5
+ createdAt: D;
6
+ }
@@ -0,0 +1,6 @@
1
+ export interface IHasCreator<I> {
2
+ /**
3
+ * The unique identifier for the user who created the object.
4
+ */
5
+ createdBy: I;
6
+ }
@@ -0,0 +1,3 @@
1
+ export interface IHasId<I> {
2
+ _id: I;
3
+ }
@@ -0,0 +1,6 @@
1
+ export interface IHasSoftDelete<D extends Date | string> {
2
+ /**
3
+ * The date the object was deleted.
4
+ */
5
+ deletedAt?: D;
6
+ }
@@ -0,0 +1,6 @@
1
+ export interface IHasSoftDeleter<I> {
2
+ /**
3
+ * The unique identifier for the user who deleted the object.
4
+ */
5
+ deletedBy?: I;
6
+ }
@@ -0,0 +1,6 @@
1
+ import { IHasCreator } from './has-creator';
2
+ import { IHasUpdater } from './has-updater';
3
+
4
+ export interface IHasTimestampOwners<I>
5
+ extends IHasCreator<I>,
6
+ IHasUpdater<I> {}
@@ -0,0 +1,7 @@
1
+ import { IHasCreation } from './has-creation';
2
+
3
+ export interface IHasTimestamps<D extends Date | string>
4
+ extends IHasCreation<D> {
5
+ createdAt: D;
6
+ updatedAt: D;
7
+ }
@@ -0,0 +1,6 @@
1
+ export interface IHasUpdater<I> {
2
+ /**
3
+ * The unique identifier for the user who updated the object.
4
+ */
5
+ updatedBy: I;
6
+ }
@@ -0,0 +1,3 @@
1
+ export interface IHasUpdates<D extends Date | string> {
2
+ updatedAt: D;
3
+ }
@@ -17,5 +17,4 @@ export * from './has-timestamps';
17
17
  export * from './has-updater';
18
18
  export * from './has-updates';
19
19
  export * from './models';
20
- export * from './token-user';
21
- //# sourceMappingURL=index.d.ts.map
20
+ export * from './token-user';
@@ -1,6 +1,6 @@
1
1
  import { IEmailTokenBase } from '../bases/email-token';
2
+
2
3
  /**
3
4
  * Front-End Base interface for email token collection documents
4
5
  */
5
6
  export type IFrontendEmailToken = IEmailTokenBase<string, Date, string>;
6
- //# sourceMappingURL=email-token.d.ts.map
@@ -6,4 +6,3 @@ export * from './token-role';
6
6
  export * from './used-direct-login-token';
7
7
  export * from './user';
8
8
  export * from './user-role';
9
- //# sourceMappingURL=index.d.ts.map
@@ -1,6 +1,6 @@
1
1
  import { IMnemonicBase } from '../bases/mnemonic';
2
+
2
3
  /**
3
4
  * Represents a front-end mnemonic hash being stored to check for uniqueness
4
5
  */
5
6
  export type IFrontendMnemonic = IMnemonicBase<string>;
6
- //# sourceMappingURL=mnemonic.d.ts.map
@@ -1,6 +1,6 @@
1
1
  import { IRoleBase } from '../bases/role';
2
+
2
3
  /**
3
4
  * Front-end Base interface for role collection documents
4
5
  */
5
6
  export type IFrontendRole = IRoleBase<string, Date>;
6
- //# sourceMappingURL=role.d.ts.map
@@ -1,5 +1,6 @@
1
1
  import { Types } from 'mongoose';
2
2
  import { ITokenRole } from '../bases';
3
+
3
4
  /**
4
5
  * Front-end Base interface for token role collection documents
5
6
  */
@@ -8,4 +9,3 @@ export type IFrontendTokenRole = ITokenRole<string, Date>;
8
9
  * Back-end Base interface for token role collection documents
9
10
  */
10
11
  export type IBackendTokenRole = ITokenRole<Types.ObjectId, Date>;
11
- //# sourceMappingURL=token-role.d.ts.map
@@ -1,5 +1,6 @@
1
1
  import { Types } from 'mongoose';
2
2
  import { IUsedDirectLoginTokenBase } from '../bases/used-direct-login-token';
3
+
3
4
  /**
4
5
  * Base interface for front-end used direct login token collection documents
5
6
  */
@@ -7,5 +8,5 @@ export type IFrontendUsedDirectLoginToken = IUsedDirectLoginTokenBase<string>;
7
8
  /**
8
9
  * Base interface for back-end used direct login token collection documents
9
10
  */
10
- export type IBackendUsedDirectLoginToken = IUsedDirectLoginTokenBase<Types.ObjectId>;
11
- //# sourceMappingURL=used-direct-login-token.d.ts.map
11
+ export type IBackendUsedDirectLoginToken =
12
+ IUsedDirectLoginTokenBase<Types.ObjectId>;