@starklabs/forge 1.3.23 → 1.3.24-beta.1

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 (694) hide show
  1. package/dist/js/account/index.d.ts +1 -1
  2. package/dist/js/account/index.d.ts.map +1 -1
  3. package/dist/js/account/index.js +14 -7
  4. package/dist/js/account/index.js.map +1 -1
  5. package/dist/js/account/me.delete.d.ts +2 -2
  6. package/dist/js/account/me.delete.d.ts.map +1 -1
  7. package/dist/js/account/me.delete.js +15 -6
  8. package/dist/js/account/me.delete.js.map +1 -1
  9. package/dist/js/account/me.update.d.ts +3 -3
  10. package/dist/js/account/me.update.d.ts.map +1 -1
  11. package/dist/js/account/me.update.js +20 -7
  12. package/dist/js/account/me.update.js.map +1 -1
  13. package/dist/js/app.js +21 -8
  14. package/dist/js/app.js.map +1 -1
  15. package/dist/js/auth/builtin/auth.collection.d.ts.map +1 -1
  16. package/dist/js/auth/builtin/auth.collection.js +21 -11
  17. package/dist/js/auth/builtin/auth.collection.js.map +1 -1
  18. package/dist/js/auth/forgotPassword.d.ts +4 -4
  19. package/dist/js/auth/forgotPassword.d.ts.map +1 -1
  20. package/dist/js/auth/forgotPassword.js +12 -6
  21. package/dist/js/auth/forgotPassword.js.map +1 -1
  22. package/dist/js/auth/index.d.ts +1 -1
  23. package/dist/js/auth/index.d.ts.map +1 -1
  24. package/dist/js/auth/index.js +16 -8
  25. package/dist/js/auth/index.js.map +1 -1
  26. package/dist/js/auth/login.d.ts +4 -4
  27. package/dist/js/auth/login.d.ts.map +1 -1
  28. package/dist/js/auth/login.js +8 -4
  29. package/dist/js/auth/login.js.map +1 -1
  30. package/dist/js/auth/logout.js +6 -1
  31. package/dist/js/auth/logout.js.map +1 -1
  32. package/dist/js/auth/refresh.js +9 -0
  33. package/dist/js/auth/refresh.js.map +1 -1
  34. package/dist/js/auth/resendOTP.d.ts +4 -4
  35. package/dist/js/auth/resendOTP.d.ts.map +1 -1
  36. package/dist/js/auth/resendOTP.js +14 -4
  37. package/dist/js/auth/resendOTP.js.map +1 -1
  38. package/dist/js/auth/resetPassword.d.ts +4 -4
  39. package/dist/js/auth/resetPassword.d.ts.map +1 -1
  40. package/dist/js/auth/resetPassword.js +14 -4
  41. package/dist/js/auth/resetPassword.js.map +1 -1
  42. package/dist/js/auth/signup.d.ts +4 -4
  43. package/dist/js/auth/signup.d.ts.map +1 -1
  44. package/dist/js/auth/signup.js +10 -5
  45. package/dist/js/auth/signup.js.map +1 -1
  46. package/dist/js/auth/utils/authenticateUser.d.ts +3 -3
  47. package/dist/js/auth/utils/authenticateUser.d.ts.map +1 -1
  48. package/dist/js/auth/utils/authenticateUser.js +13 -3
  49. package/dist/js/auth/utils/authenticateUser.js.map +1 -1
  50. package/dist/js/auth/utils/createOTPModel.d.ts +1 -1
  51. package/dist/js/auth/utils/createOTPModel.d.ts.map +1 -1
  52. package/dist/js/auth/utils/createOTPModel.js +8 -3
  53. package/dist/js/auth/utils/createOTPModel.js.map +1 -1
  54. package/dist/js/auth/utils/createOTPUser.d.ts +3 -3
  55. package/dist/js/auth/utils/createOTPUser.d.ts.map +1 -1
  56. package/dist/js/auth/utils/createOTPUser.js +11 -3
  57. package/dist/js/auth/utils/createOTPUser.js.map +1 -1
  58. package/dist/js/auth/utils/createUser.d.ts +3 -3
  59. package/dist/js/auth/utils/createUser.d.ts.map +1 -1
  60. package/dist/js/auth/utils/createUser.js +12 -2
  61. package/dist/js/auth/utils/createUser.js.map +1 -1
  62. package/dist/js/auth/utils/findRefreshToken.js +5 -1
  63. package/dist/js/auth/utils/findRefreshToken.js.map +1 -1
  64. package/dist/js/auth/utils/findRefreshTokenUser.js +1 -0
  65. package/dist/js/auth/utils/findRefreshTokenUser.js.map +1 -1
  66. package/dist/js/auth/utils/getOTPUser.js +3 -0
  67. package/dist/js/auth/utils/getOTPUser.js.map +1 -1
  68. package/dist/js/auth/utils/getUser.d.ts +3 -3
  69. package/dist/js/auth/utils/getUser.d.ts.map +1 -1
  70. package/dist/js/auth/utils/getUser.js +6 -2
  71. package/dist/js/auth/utils/getUser.js.map +1 -1
  72. package/dist/js/auth/utils/handleGetToken.d.ts.map +1 -1
  73. package/dist/js/auth/utils/handleGetToken.js +2 -2
  74. package/dist/js/auth/utils/handleGetToken.js.map +1 -1
  75. package/dist/js/auth/utils/handleRefreshTokenValidation.js +7 -1
  76. package/dist/js/auth/utils/handleRefreshTokenValidation.js.map +1 -1
  77. package/dist/js/auth/utils/handleRotateRefreshToken.js +7 -1
  78. package/dist/js/auth/utils/handleRotateRefreshToken.js.map +1 -1
  79. package/dist/js/auth/utils/modeMap.d.ts +12 -12
  80. package/dist/js/auth/utils/otpVerifiedResponse.js +1 -0
  81. package/dist/js/auth/utils/otpVerifiedResponse.js.map +1 -1
  82. package/dist/js/auth/utils/sendCookie.js +10 -0
  83. package/dist/js/auth/utils/sendCookie.js.map +1 -1
  84. package/dist/js/auth/utils/sendOTP.d.ts.map +1 -1
  85. package/dist/js/auth/utils/sendOTP.js +15 -14
  86. package/dist/js/auth/utils/sendOTP.js.map +1 -1
  87. package/dist/js/auth/utils/verifyCredentials.d.ts +3 -3
  88. package/dist/js/auth/utils/verifyCredentials.d.ts.map +1 -1
  89. package/dist/js/auth/utils/verifyCredentials.js +8 -6
  90. package/dist/js/auth/utils/verifyCredentials.js.map +1 -1
  91. package/dist/js/auth/verifyOTP.d.ts +4 -4
  92. package/dist/js/auth/verifyOTP.d.ts.map +1 -1
  93. package/dist/js/auth/verifyOTP.js +18 -5
  94. package/dist/js/auth/verifyOTP.js.map +1 -1
  95. package/dist/js/config/auth.envs.d.ts +4 -0
  96. package/dist/js/config/auth.envs.d.ts.map +1 -0
  97. package/dist/js/config/auth.envs.js +79 -0
  98. package/dist/js/config/auth.envs.js.map +1 -0
  99. package/dist/js/config/cloudinary.js +1 -0
  100. package/dist/js/config/cloudinary.js.map +1 -1
  101. package/dist/js/config/duration.js +7 -0
  102. package/dist/js/config/duration.js.map +1 -1
  103. package/dist/js/config/email.envs.d.ts +4 -0
  104. package/dist/js/config/email.envs.d.ts.map +1 -0
  105. package/dist/js/config/email.envs.js +50 -0
  106. package/dist/js/config/email.envs.js.map +1 -0
  107. package/dist/js/config/envs.d.ts.map +1 -1
  108. package/dist/js/config/envs.js +7 -57
  109. package/dist/js/config/envs.js.map +1 -1
  110. package/dist/js/config/handleReqType.d.ts +1 -1
  111. package/dist/js/config/handleReqType.d.ts.map +1 -1
  112. package/dist/js/config/handleReqType.js +4 -3
  113. package/dist/js/config/handleReqType.js.map +1 -1
  114. package/dist/js/config/handlerMap.js +4 -0
  115. package/dist/js/config/handlerMap.js.map +1 -1
  116. package/dist/js/config/refreshModel.js +1 -0
  117. package/dist/js/config/refreshModel.js.map +1 -1
  118. package/dist/js/config/sendEmail.d.ts.map +1 -1
  119. package/dist/js/config/sendEmail.js +4 -1
  120. package/dist/js/config/sendEmail.js.map +1 -1
  121. package/dist/js/crud/bunch.crud.js +2 -0
  122. package/dist/js/crud/bunch.crud.js.map +1 -1
  123. package/dist/js/crud/create.d.ts +4 -4
  124. package/dist/js/crud/create.d.ts.map +1 -1
  125. package/dist/js/crud/create.js +23 -8
  126. package/dist/js/crud/create.js.map +1 -1
  127. package/dist/js/crud/createBulk.d.ts +4 -4
  128. package/dist/js/crud/createBulk.d.ts.map +1 -1
  129. package/dist/js/crud/createBulk.js +8 -3
  130. package/dist/js/crud/createBulk.js.map +1 -1
  131. package/dist/js/crud/email/index.d.ts +2 -0
  132. package/dist/js/crud/email/index.d.ts.map +1 -0
  133. package/dist/js/crud/email/index.js +2 -0
  134. package/dist/js/crud/email/index.js.map +1 -0
  135. package/dist/js/crud/encryption/handleDecryption.js +8 -3
  136. package/dist/js/crud/encryption/handleDecryption.js.map +1 -1
  137. package/dist/js/crud/encryption/handleEncryption.js +7 -3
  138. package/dist/js/crud/encryption/handleEncryption.js.map +1 -1
  139. package/dist/js/crud/handleUploads/file.add.d.ts +4 -4
  140. package/dist/js/crud/handleUploads/file.add.d.ts.map +1 -1
  141. package/dist/js/crud/handleUploads/file.add.js +16 -9
  142. package/dist/js/crud/handleUploads/file.add.js.map +1 -1
  143. package/dist/js/crud/handleUploads/file.delete.d.ts +4 -4
  144. package/dist/js/crud/handleUploads/file.delete.d.ts.map +1 -1
  145. package/dist/js/crud/handleUploads/file.delete.js +14 -5
  146. package/dist/js/crud/handleUploads/file.delete.js.map +1 -1
  147. package/dist/js/crud/handleUploads/file.update.d.ts +4 -4
  148. package/dist/js/crud/handleUploads/file.update.d.ts.map +1 -1
  149. package/dist/js/crud/handleUploads/file.update.js +15 -5
  150. package/dist/js/crud/handleUploads/file.update.js.map +1 -1
  151. package/dist/js/crud/index.d.ts +1 -1
  152. package/dist/js/crud/index.d.ts.map +1 -1
  153. package/dist/js/crud/index.js +18 -11
  154. package/dist/js/crud/index.js.map +1 -1
  155. package/dist/js/crud/read.d.ts +4 -4
  156. package/dist/js/crud/read.d.ts.map +1 -1
  157. package/dist/js/crud/read.js +19 -11
  158. package/dist/js/crud/read.js.map +1 -1
  159. package/dist/js/crud/readAll.d.ts +3 -3
  160. package/dist/js/crud/readAll.d.ts.map +1 -1
  161. package/dist/js/crud/readAll.js +16 -8
  162. package/dist/js/crud/readAll.js.map +1 -1
  163. package/dist/js/crud/remove.d.ts +3 -3
  164. package/dist/js/crud/remove.d.ts.map +1 -1
  165. package/dist/js/crud/remove.js +19 -8
  166. package/dist/js/crud/remove.js.map +1 -1
  167. package/dist/js/crud/removeAll.d.ts +3 -3
  168. package/dist/js/crud/removeAll.d.ts.map +1 -1
  169. package/dist/js/crud/removeAll.js +13 -5
  170. package/dist/js/crud/removeAll.js.map +1 -1
  171. package/dist/js/crud/removeMultiple.d.ts +4 -4
  172. package/dist/js/crud/removeMultiple.d.ts.map +1 -1
  173. package/dist/js/crud/removeMultiple.js +18 -7
  174. package/dist/js/crud/removeMultiple.js.map +1 -1
  175. package/dist/js/crud/security/handleDecryption.js +8 -3
  176. package/dist/js/crud/security/handleDecryption.js.map +1 -1
  177. package/dist/js/crud/security/handleEncryption.js +7 -3
  178. package/dist/js/crud/security/handleEncryption.js.map +1 -1
  179. package/dist/js/crud/security/handleHashing.js +8 -3
  180. package/dist/js/crud/security/handleHashing.js.map +1 -1
  181. package/dist/js/crud/update.d.ts +4 -4
  182. package/dist/js/crud/update.d.ts.map +1 -1
  183. package/dist/js/crud/update.js +24 -9
  184. package/dist/js/crud/update.js.map +1 -1
  185. package/dist/js/crud/utils/authorizeAccess.d.ts +2 -2
  186. package/dist/js/crud/utils/authorizeAccess.d.ts.map +1 -1
  187. package/dist/js/crud/utils/authorizeAccess.js +19 -13
  188. package/dist/js/crud/utils/authorizeAccess.js.map +1 -1
  189. package/dist/js/crud/utils/getItem.d.ts +3 -3
  190. package/dist/js/crud/utils/getItem.d.ts.map +1 -1
  191. package/dist/js/crud/utils/getItem.js +18 -9
  192. package/dist/js/crud/utils/getItem.js.map +1 -1
  193. package/dist/js/crud/utils/runActions.d.ts +2 -3
  194. package/dist/js/crud/utils/runActions.d.ts.map +1 -1
  195. package/dist/js/crud/utils/runActions.js +14 -4
  196. package/dist/js/crud/utils/runActions.js.map +1 -1
  197. package/dist/js/email/index.d.ts +4 -0
  198. package/dist/js/email/index.d.ts.map +1 -0
  199. package/dist/js/email/index.js +180 -0
  200. package/dist/js/email/index.js.map +1 -0
  201. package/dist/js/email/templates/account.created.d.ts +4 -0
  202. package/dist/js/email/templates/account.created.d.ts.map +1 -0
  203. package/dist/js/email/templates/account.created.email.d.ts +4 -0
  204. package/dist/js/email/templates/account.created.email.d.ts.map +1 -0
  205. package/dist/js/email/templates/account.created.email.js +165 -0
  206. package/dist/js/email/templates/account.created.email.js.map +1 -0
  207. package/dist/js/email/templates/account.created.js +122 -0
  208. package/dist/js/email/templates/account.created.js.map +1 -0
  209. package/dist/js/email/templates/account.deleted.d.ts +4 -0
  210. package/dist/js/email/templates/account.deleted.d.ts.map +1 -0
  211. package/dist/js/email/templates/account.deleted.js +111 -0
  212. package/dist/js/email/templates/account.deleted.js.map +1 -0
  213. package/dist/js/email/templates/account.updated.d.ts +4 -0
  214. package/dist/js/email/templates/account.updated.d.ts.map +1 -0
  215. package/dist/js/email/templates/account.updated.js +128 -0
  216. package/dist/js/email/templates/account.updated.js.map +1 -0
  217. package/dist/js/email/templates/announcement.d.ts +4 -0
  218. package/dist/js/email/templates/announcement.d.ts.map +1 -0
  219. package/dist/js/email/templates/announcement.js +122 -0
  220. package/dist/js/email/templates/announcement.js.map +1 -0
  221. package/dist/js/email/templates/api.key.created.d.ts +4 -0
  222. package/dist/js/email/templates/api.key.created.d.ts.map +1 -0
  223. package/dist/js/email/templates/api.key.created.js +159 -0
  224. package/dist/js/email/templates/api.key.created.js.map +1 -0
  225. package/dist/js/email/templates/api.key.revoked.d.ts +4 -0
  226. package/dist/js/email/templates/api.key.revoked.d.ts.map +1 -0
  227. package/dist/js/email/templates/api.key.revoked.js +134 -0
  228. package/dist/js/email/templates/api.key.revoked.js.map +1 -0
  229. package/dist/js/email/templates/contact.form.d.ts +4 -0
  230. package/dist/js/email/templates/contact.form.d.ts.map +1 -0
  231. package/dist/js/email/templates/contact.form.js +134 -0
  232. package/dist/js/email/templates/contact.form.js.map +1 -0
  233. package/dist/js/email/templates/daily.report.d.ts +4 -0
  234. package/dist/js/email/templates/daily.report.d.ts.map +1 -0
  235. package/dist/js/email/templates/daily.report.js +143 -0
  236. package/dist/js/email/templates/daily.report.js.map +1 -0
  237. package/dist/js/email/templates/email.changed.d.ts +4 -0
  238. package/dist/js/email/templates/email.changed.d.ts.map +1 -0
  239. package/dist/js/email/templates/email.changed.js +122 -0
  240. package/dist/js/email/templates/email.changed.js.map +1 -0
  241. package/dist/js/email/templates/feedback.d.ts +4 -0
  242. package/dist/js/email/templates/feedback.d.ts.map +1 -0
  243. package/dist/js/email/templates/feedback.js +136 -0
  244. package/dist/js/email/templates/feedback.js.map +1 -0
  245. package/dist/js/email/templates/index.d.ts +46 -0
  246. package/dist/js/email/templates/index.d.ts.map +1 -0
  247. package/dist/js/email/templates/index.js +46 -0
  248. package/dist/js/email/templates/index.js.map +1 -0
  249. package/dist/js/email/templates/invoice.d.ts +4 -0
  250. package/dist/js/email/templates/invoice.d.ts.map +1 -0
  251. package/dist/js/email/templates/invoice.js +147 -0
  252. package/dist/js/email/templates/invoice.js.map +1 -0
  253. package/dist/js/email/templates/login.alert.d.ts +4 -0
  254. package/dist/js/email/templates/login.alert.d.ts.map +1 -0
  255. package/dist/js/email/templates/login.alert.js +147 -0
  256. package/dist/js/email/templates/login.alert.js.map +1 -0
  257. package/dist/js/email/templates/magic.link.d.ts +4 -0
  258. package/dist/js/email/templates/magic.link.d.ts.map +1 -0
  259. package/dist/js/email/templates/magic.link.js +126 -0
  260. package/dist/js/email/templates/magic.link.js.map +1 -0
  261. package/dist/js/email/templates/maintenance.d.ts +4 -0
  262. package/dist/js/email/templates/maintenance.d.ts.map +1 -0
  263. package/dist/js/email/templates/maintenance.js +132 -0
  264. package/dist/js/email/templates/maintenance.js.map +1 -0
  265. package/dist/js/email/templates/member.added.d.ts +4 -0
  266. package/dist/js/email/templates/member.added.d.ts.map +1 -0
  267. package/dist/js/email/templates/member.added.js +122 -0
  268. package/dist/js/email/templates/member.added.js.map +1 -0
  269. package/dist/js/email/templates/member.removed.d.ts +4 -0
  270. package/dist/js/email/templates/member.removed.d.ts.map +1 -0
  271. package/dist/js/email/templates/member.removed.js +122 -0
  272. package/dist/js/email/templates/member.removed.js.map +1 -0
  273. package/dist/js/email/templates/mention.d.ts +4 -0
  274. package/dist/js/email/templates/mention.d.ts.map +1 -0
  275. package/dist/js/email/templates/mention.js +134 -0
  276. package/dist/js/email/templates/mention.js.map +1 -0
  277. package/dist/js/email/templates/monthly.report.d.ts +4 -0
  278. package/dist/js/email/templates/monthly.report.d.ts.map +1 -0
  279. package/dist/js/email/templates/monthly.report.js +143 -0
  280. package/dist/js/email/templates/monthly.report.js.map +1 -0
  281. package/dist/js/email/templates/new.comment.d.ts +4 -0
  282. package/dist/js/email/templates/new.comment.d.ts.map +1 -0
  283. package/dist/js/email/templates/new.comment.js +134 -0
  284. package/dist/js/email/templates/new.comment.js.map +1 -0
  285. package/dist/js/email/templates/new.device.login.d.ts +4 -0
  286. package/dist/js/email/templates/new.device.login.d.ts.map +1 -0
  287. package/dist/js/email/templates/new.device.login.js +147 -0
  288. package/dist/js/email/templates/new.device.login.js.map +1 -0
  289. package/dist/js/email/templates/new.message.d.ts +4 -0
  290. package/dist/js/email/templates/new.message.d.ts.map +1 -0
  291. package/dist/js/email/templates/new.message.js +134 -0
  292. package/dist/js/email/templates/new.message.js.map +1 -0
  293. package/dist/js/email/templates/notification.d.ts +4 -0
  294. package/dist/js/email/templates/notification.d.ts.map +1 -0
  295. package/dist/js/email/templates/notification.js +122 -0
  296. package/dist/js/email/templates/notification.js.map +1 -0
  297. package/dist/js/email/templates/order.cancelled.d.ts +4 -0
  298. package/dist/js/email/templates/order.cancelled.d.ts.map +1 -0
  299. package/dist/js/email/templates/order.cancelled.js +132 -0
  300. package/dist/js/email/templates/order.cancelled.js.map +1 -0
  301. package/dist/js/email/templates/order.confirmation.d.ts +4 -0
  302. package/dist/js/email/templates/order.confirmation.d.ts.map +1 -0
  303. package/dist/js/email/templates/order.confirmation.js +143 -0
  304. package/dist/js/email/templates/order.confirmation.js.map +1 -0
  305. package/dist/js/email/templates/order.delivered.d.ts +4 -0
  306. package/dist/js/email/templates/order.delivered.d.ts.map +1 -0
  307. package/dist/js/email/templates/order.delivered.js +122 -0
  308. package/dist/js/email/templates/order.delivered.js.map +1 -0
  309. package/dist/js/email/templates/order.shipped.d.ts +4 -0
  310. package/dist/js/email/templates/order.shipped.d.ts.map +1 -0
  311. package/dist/js/email/templates/order.shipped.js +143 -0
  312. package/dist/js/email/templates/order.shipped.js.map +1 -0
  313. package/dist/js/email/templates/organization.invitation.d.ts +4 -0
  314. package/dist/js/email/templates/organization.invitation.d.ts.map +1 -0
  315. package/dist/js/email/templates/organization.invitation.js +126 -0
  316. package/dist/js/email/templates/organization.invitation.js.map +1 -0
  317. package/dist/js/email/templates/otp.verfication.d.ts +4 -0
  318. package/dist/js/email/templates/otp.verfication.d.ts.map +1 -0
  319. package/dist/js/email/templates/otp.verfication.js +117 -0
  320. package/dist/js/email/templates/otp.verfication.js.map +1 -0
  321. package/dist/js/email/templates/password.changed.d.ts +4 -0
  322. package/dist/js/email/templates/password.changed.d.ts.map +1 -0
  323. package/dist/js/email/templates/password.changed.js +155 -0
  324. package/dist/js/email/templates/password.changed.js.map +1 -0
  325. package/dist/js/email/templates/password.expiring.d.ts +4 -0
  326. package/dist/js/email/templates/password.expiring.d.ts.map +1 -0
  327. package/dist/js/email/templates/password.expiring.js +122 -0
  328. package/dist/js/email/templates/password.expiring.js.map +1 -0
  329. package/dist/js/email/templates/password.reset.d.ts +4 -0
  330. package/dist/js/email/templates/password.reset.d.ts.map +1 -0
  331. package/dist/js/email/templates/password.reset.js +138 -0
  332. package/dist/js/email/templates/password.reset.js.map +1 -0
  333. package/dist/js/email/templates/payment.failed.d.ts +4 -0
  334. package/dist/js/email/templates/payment.failed.d.ts.map +1 -0
  335. package/dist/js/email/templates/payment.failed.js +155 -0
  336. package/dist/js/email/templates/payment.failed.js.map +1 -0
  337. package/dist/js/email/templates/payment.success.d.ts +4 -0
  338. package/dist/js/email/templates/payment.success.d.ts.map +1 -0
  339. package/dist/js/email/templates/payment.success.js +143 -0
  340. package/dist/js/email/templates/payment.success.js.map +1 -0
  341. package/dist/js/email/templates/receipt.d.ts +4 -0
  342. package/dist/js/email/templates/receipt.d.ts.map +1 -0
  343. package/dist/js/email/templates/receipt.js +147 -0
  344. package/dist/js/email/templates/receipt.js.map +1 -0
  345. package/dist/js/email/templates/reminder.d.ts +4 -0
  346. package/dist/js/email/templates/reminder.d.ts.map +1 -0
  347. package/dist/js/email/templates/reminder.js +122 -0
  348. package/dist/js/email/templates/reminder.js.map +1 -0
  349. package/dist/js/email/templates/security.alert.d.ts +4 -0
  350. package/dist/js/email/templates/security.alert.d.ts.map +1 -0
  351. package/dist/js/email/templates/security.alert.js +155 -0
  352. package/dist/js/email/templates/security.alert.js.map +1 -0
  353. package/dist/js/email/templates/subscription.cancelled.d.ts +4 -0
  354. package/dist/js/email/templates/subscription.cancelled.d.ts.map +1 -0
  355. package/dist/js/email/templates/subscription.cancelled.js +122 -0
  356. package/dist/js/email/templates/subscription.cancelled.js.map +1 -0
  357. package/dist/js/email/templates/subscription.created.d.ts +4 -0
  358. package/dist/js/email/templates/subscription.created.d.ts.map +1 -0
  359. package/dist/js/email/templates/subscription.created.js +143 -0
  360. package/dist/js/email/templates/subscription.created.js.map +1 -0
  361. package/dist/js/email/templates/subscription.renewed.d.ts +4 -0
  362. package/dist/js/email/templates/subscription.renewed.d.ts.map +1 -0
  363. package/dist/js/email/templates/subscription.renewed.js +143 -0
  364. package/dist/js/email/templates/subscription.renewed.js.map +1 -0
  365. package/dist/js/email/templates/support.ticket.d.ts +4 -0
  366. package/dist/js/email/templates/support.ticket.d.ts.map +1 -0
  367. package/dist/js/email/templates/support.ticket.js +143 -0
  368. package/dist/js/email/templates/support.ticket.js.map +1 -0
  369. package/dist/js/email/templates/team.invitation.d.ts +4 -0
  370. package/dist/js/email/templates/team.invitation.d.ts.map +1 -0
  371. package/dist/js/email/templates/team.invitation.js +126 -0
  372. package/dist/js/email/templates/team.invitation.js.map +1 -0
  373. package/dist/js/email/templates/trial.ending.d.ts +4 -0
  374. package/dist/js/email/templates/trial.ending.d.ts.map +1 -0
  375. package/dist/js/email/templates/trial.ending.js +122 -0
  376. package/dist/js/email/templates/trial.ending.js.map +1 -0
  377. package/dist/js/email/templates/two.factor.code.d.ts +4 -0
  378. package/dist/js/email/templates/two.factor.code.d.ts.map +1 -0
  379. package/dist/js/email/templates/two.factor.code.js +121 -0
  380. package/dist/js/email/templates/two.factor.code.js.map +1 -0
  381. package/dist/js/email/templates/verify.email.d.ts +4 -0
  382. package/dist/js/email/templates/verify.email.d.ts.map +1 -0
  383. package/dist/js/email/templates/verify.email.js +126 -0
  384. package/dist/js/email/templates/verify.email.js.map +1 -0
  385. package/dist/js/email/templates/weekly.report.d.ts +4 -0
  386. package/dist/js/email/templates/weekly.report.d.ts.map +1 -0
  387. package/dist/js/email/templates/weekly.report.js +143 -0
  388. package/dist/js/email/templates/weekly.report.js.map +1 -0
  389. package/dist/js/email/templates/welcome.d.ts +4 -0
  390. package/dist/js/email/templates/welcome.d.ts.map +1 -0
  391. package/dist/js/email/templates/welcome.email.d.ts +4 -0
  392. package/dist/js/email/templates/welcome.email.d.ts.map +1 -0
  393. package/dist/js/email/templates/welcome.email.js +417 -0
  394. package/dist/js/email/templates/welcome.email.js.map +1 -0
  395. package/dist/js/email/templates/welcome.js +122 -0
  396. package/dist/js/email/templates/welcome.js.map +1 -0
  397. package/dist/js/email/utils/auto-fields.d.ts +68 -0
  398. package/dist/js/email/utils/auto-fields.d.ts.map +1 -0
  399. package/dist/js/email/utils/auto-fields.js +232 -0
  400. package/dist/js/email/utils/auto-fields.js.map +1 -0
  401. package/dist/js/email/utils/auto-fields.type.d.ts +18 -0
  402. package/dist/js/email/utils/auto-fields.type.d.ts.map +1 -0
  403. package/dist/js/email/utils/auto-fields.type.js +2 -0
  404. package/dist/js/email/utils/auto-fields.type.js.map +1 -0
  405. package/dist/js/email/utils/emailTemplates.d.ts +2 -0
  406. package/dist/js/email/utils/emailTemplates.d.ts.map +1 -0
  407. package/dist/js/email/utils/emailTemplates.js +49 -0
  408. package/dist/js/email/utils/emailTemplates.js.map +1 -0
  409. package/dist/js/email/utils/handleEmailTemplateConfig.d.ts +4 -0
  410. package/dist/js/email/utils/handleEmailTemplateConfig.d.ts.map +1 -0
  411. package/dist/js/email/utils/handleEmailTemplateConfig.js +47 -0
  412. package/dist/js/email/utils/handleEmailTemplateConfig.js.map +1 -0
  413. package/dist/js/health/health.collection.js +11 -11
  414. package/dist/js/health/health.collection.js.map +1 -1
  415. package/dist/js/health/index.d.ts +1 -1
  416. package/dist/js/health/index.d.ts.map +1 -1
  417. package/dist/js/health/index.js +2 -2
  418. package/dist/js/health/index.js.map +1 -1
  419. package/dist/js/lib/OAuthProviders.js +1 -1
  420. package/dist/js/lib/OAuthProviders.js.map +1 -1
  421. package/dist/js/lib/db.js +1 -0
  422. package/dist/js/lib/db.js.map +1 -1
  423. package/dist/js/lib/model.factory.d.ts +10 -1
  424. package/dist/js/lib/model.factory.d.ts.map +1 -1
  425. package/dist/js/lib/model.factory.js +18 -4
  426. package/dist/js/lib/model.factory.js.map +1 -1
  427. package/dist/js/lib/model.registry.js +1 -0
  428. package/dist/js/lib/model.registry.js.map +1 -1
  429. package/dist/js/lib/mongoose.fields.js +20 -0
  430. package/dist/js/lib/mongoose.fields.js.map +1 -1
  431. package/dist/js/lib/schema.builder.js +3 -0
  432. package/dist/js/lib/schema.builder.js.map +1 -1
  433. package/dist/js/lib/unified.fields.d.ts +5 -0
  434. package/dist/js/lib/unified.fields.d.ts.map +1 -1
  435. package/dist/js/lib/unified.fields.js +56 -0
  436. package/dist/js/lib/unified.fields.js.map +1 -1
  437. package/dist/js/lib/unified.types.d.ts +3 -0
  438. package/dist/js/lib/unified.types.d.ts.map +1 -1
  439. package/dist/js/lib/zod.factory.d.ts +13 -0
  440. package/dist/js/lib/zod.factory.d.ts.map +1 -1
  441. package/dist/js/lib/zod.factory.js +14 -0
  442. package/dist/js/lib/zod.factory.js.map +1 -1
  443. package/dist/js/lib/zod.fields.d.ts +55 -0
  444. package/dist/js/lib/zod.fields.d.ts.map +1 -1
  445. package/dist/js/lib/zod.fields.js +56 -0
  446. package/dist/js/lib/zod.fields.js.map +1 -1
  447. package/dist/js/middleware/error.middleware.js +1 -0
  448. package/dist/js/middleware/error.middleware.js.map +1 -1
  449. package/dist/js/middleware/multer.middleware.d.ts +1 -1
  450. package/dist/js/middleware/multer.middleware.d.ts.map +1 -1
  451. package/dist/js/middleware/multer.middleware.js +22 -7
  452. package/dist/js/middleware/multer.middleware.js.map +1 -1
  453. package/dist/js/terminal/appInfo.js +11 -11
  454. package/dist/js/terminal/appInfo.js.map +1 -1
  455. package/dist/js/terminal/logger.js +1 -1
  456. package/dist/js/terminal/logger.js.map +1 -1
  457. package/dist/js/types/ActionHandler.d.ts +82 -14
  458. package/dist/js/types/ActionHandler.d.ts.map +1 -1
  459. package/dist/js/types/Collection.d.ts +104 -15
  460. package/dist/js/types/Collection.d.ts.map +1 -1
  461. package/dist/js/types/Constructor.d.ts +4 -2
  462. package/dist/js/types/Constructor.d.ts.map +1 -1
  463. package/dist/js/types/EmailActionTemplate.d.ts +52 -0
  464. package/dist/js/types/EmailActionTemplate.d.ts.map +1 -0
  465. package/dist/js/types/EmailActionTemplate.js +2 -0
  466. package/dist/js/types/EmailActionTemplate.js.map +1 -0
  467. package/dist/js/types/Route.d.ts +131 -14
  468. package/dist/js/types/Route.d.ts.map +1 -1
  469. package/dist/js/types/Routepath.js +15 -0
  470. package/dist/js/types/Routepath.js.map +1 -1
  471. package/dist/js/types/email/account.created.type.d.ts +10 -0
  472. package/dist/js/types/email/account.created.type.d.ts.map +1 -0
  473. package/dist/js/types/email/account.created.type.js +2 -0
  474. package/dist/js/types/email/account.created.type.js.map +1 -0
  475. package/dist/js/types/email/account.deleted.type.d.ts +10 -0
  476. package/dist/js/types/email/account.deleted.type.d.ts.map +1 -0
  477. package/dist/js/types/email/account.deleted.type.js +2 -0
  478. package/dist/js/types/email/account.deleted.type.js.map +1 -0
  479. package/dist/js/types/email/account.updated.type.d.ts +12 -0
  480. package/dist/js/types/email/account.updated.type.d.ts.map +1 -0
  481. package/dist/js/types/email/account.updated.type.js +2 -0
  482. package/dist/js/types/email/account.updated.type.js.map +1 -0
  483. package/dist/js/types/email/announcement.type.d.ts +13 -0
  484. package/dist/js/types/email/announcement.type.d.ts.map +1 -0
  485. package/dist/js/types/email/announcement.type.js +2 -0
  486. package/dist/js/types/email/announcement.type.js.map +1 -0
  487. package/dist/js/types/email/api.key.created.type.d.ts +14 -0
  488. package/dist/js/types/email/api.key.created.type.d.ts.map +1 -0
  489. package/dist/js/types/email/api.key.created.type.js +2 -0
  490. package/dist/js/types/email/api.key.created.type.js.map +1 -0
  491. package/dist/js/types/email/api.key.revoked.type.d.ts +14 -0
  492. package/dist/js/types/email/api.key.revoked.type.d.ts.map +1 -0
  493. package/dist/js/types/email/api.key.revoked.type.js +2 -0
  494. package/dist/js/types/email/api.key.revoked.type.js.map +1 -0
  495. package/dist/js/types/email/contact.form.type.d.ts +11 -0
  496. package/dist/js/types/email/contact.form.type.d.ts.map +1 -0
  497. package/dist/js/types/email/contact.form.type.js +2 -0
  498. package/dist/js/types/email/contact.form.type.js.map +1 -0
  499. package/dist/js/types/email/daily.report.type.d.ts +14 -0
  500. package/dist/js/types/email/daily.report.type.d.ts.map +1 -0
  501. package/dist/js/types/email/daily.report.type.js +2 -0
  502. package/dist/js/types/email/daily.report.type.js.map +1 -0
  503. package/dist/js/types/email/email.changed.type.d.ts +12 -0
  504. package/dist/js/types/email/email.changed.type.d.ts.map +1 -0
  505. package/dist/js/types/email/email.changed.type.js +2 -0
  506. package/dist/js/types/email/email.changed.type.js.map +1 -0
  507. package/dist/js/types/email/feedback.type.d.ts +11 -0
  508. package/dist/js/types/email/feedback.type.d.ts.map +1 -0
  509. package/dist/js/types/email/feedback.type.js +2 -0
  510. package/dist/js/types/email/feedback.type.js.map +1 -0
  511. package/dist/js/types/email/index.d.ts +46 -0
  512. package/dist/js/types/email/index.d.ts.map +1 -0
  513. package/dist/js/types/email/index.js +2 -0
  514. package/dist/js/types/email/index.js.map +1 -0
  515. package/dist/js/types/email/invoice.type.d.ts +14 -0
  516. package/dist/js/types/email/invoice.type.d.ts.map +1 -0
  517. package/dist/js/types/email/invoice.type.js +2 -0
  518. package/dist/js/types/email/invoice.type.js.map +1 -0
  519. package/dist/js/types/email/login.alert.type.d.ts +12 -0
  520. package/dist/js/types/email/login.alert.type.d.ts.map +1 -0
  521. package/dist/js/types/email/login.alert.type.js +2 -0
  522. package/dist/js/types/email/login.alert.type.js.map +1 -0
  523. package/dist/js/types/email/magic.link.type.d.ts +11 -0
  524. package/dist/js/types/email/magic.link.type.d.ts.map +1 -0
  525. package/dist/js/types/email/magic.link.type.js +2 -0
  526. package/dist/js/types/email/magic.link.type.js.map +1 -0
  527. package/dist/js/types/email/maintenance.type.d.ts +13 -0
  528. package/dist/js/types/email/maintenance.type.d.ts.map +1 -0
  529. package/dist/js/types/email/maintenance.type.js +2 -0
  530. package/dist/js/types/email/maintenance.type.js.map +1 -0
  531. package/dist/js/types/email/member.added.type.d.ts +14 -0
  532. package/dist/js/types/email/member.added.type.d.ts.map +1 -0
  533. package/dist/js/types/email/member.added.type.js +2 -0
  534. package/dist/js/types/email/member.added.type.js.map +1 -0
  535. package/dist/js/types/email/member.removed.type.d.ts +14 -0
  536. package/dist/js/types/email/member.removed.type.d.ts.map +1 -0
  537. package/dist/js/types/email/member.removed.type.js +2 -0
  538. package/dist/js/types/email/member.removed.type.js.map +1 -0
  539. package/dist/js/types/email/mention.type.d.ts +12 -0
  540. package/dist/js/types/email/mention.type.d.ts.map +1 -0
  541. package/dist/js/types/email/mention.type.js +2 -0
  542. package/dist/js/types/email/mention.type.js.map +1 -0
  543. package/dist/js/types/email/monthly.report.type.d.ts +14 -0
  544. package/dist/js/types/email/monthly.report.type.d.ts.map +1 -0
  545. package/dist/js/types/email/monthly.report.type.js +2 -0
  546. package/dist/js/types/email/monthly.report.type.js.map +1 -0
  547. package/dist/js/types/email/new.comment.type.d.ts +12 -0
  548. package/dist/js/types/email/new.comment.type.d.ts.map +1 -0
  549. package/dist/js/types/email/new.comment.type.js +2 -0
  550. package/dist/js/types/email/new.comment.type.js.map +1 -0
  551. package/dist/js/types/email/new.device.login.type.d.ts +11 -0
  552. package/dist/js/types/email/new.device.login.type.d.ts.map +1 -0
  553. package/dist/js/types/email/new.device.login.type.js +2 -0
  554. package/dist/js/types/email/new.device.login.type.js.map +1 -0
  555. package/dist/js/types/email/new.message.type.d.ts +11 -0
  556. package/dist/js/types/email/new.message.type.d.ts.map +1 -0
  557. package/dist/js/types/email/new.message.type.js +2 -0
  558. package/dist/js/types/email/new.message.type.js.map +1 -0
  559. package/dist/js/types/email/notification.type.d.ts +13 -0
  560. package/dist/js/types/email/notification.type.d.ts.map +1 -0
  561. package/dist/js/types/email/notification.type.js +2 -0
  562. package/dist/js/types/email/notification.type.js.map +1 -0
  563. package/dist/js/types/email/order.cancelled.type.d.ts +12 -0
  564. package/dist/js/types/email/order.cancelled.type.d.ts.map +1 -0
  565. package/dist/js/types/email/order.cancelled.type.js +2 -0
  566. package/dist/js/types/email/order.cancelled.type.js.map +1 -0
  567. package/dist/js/types/email/order.confirmation.type.d.ts +13 -0
  568. package/dist/js/types/email/order.confirmation.type.d.ts.map +1 -0
  569. package/dist/js/types/email/order.confirmation.type.js +2 -0
  570. package/dist/js/types/email/order.confirmation.type.js.map +1 -0
  571. package/dist/js/types/email/order.delivered.type.d.ts +12 -0
  572. package/dist/js/types/email/order.delivered.type.d.ts.map +1 -0
  573. package/dist/js/types/email/order.delivered.type.js +2 -0
  574. package/dist/js/types/email/order.delivered.type.js.map +1 -0
  575. package/dist/js/types/email/order.shipped.type.d.ts +14 -0
  576. package/dist/js/types/email/order.shipped.type.d.ts.map +1 -0
  577. package/dist/js/types/email/order.shipped.type.js +2 -0
  578. package/dist/js/types/email/order.shipped.type.js.map +1 -0
  579. package/dist/js/types/email/organization.invitation.type.d.ts +13 -0
  580. package/dist/js/types/email/organization.invitation.type.d.ts.map +1 -0
  581. package/dist/js/types/email/organization.invitation.type.js +2 -0
  582. package/dist/js/types/email/organization.invitation.type.js.map +1 -0
  583. package/dist/js/types/email/otp.verification.type.d.ts +11 -0
  584. package/dist/js/types/email/otp.verification.type.d.ts.map +1 -0
  585. package/dist/js/types/email/otp.verification.type.js +2 -0
  586. package/dist/js/types/email/otp.verification.type.js.map +1 -0
  587. package/dist/js/types/email/password.changed.type.d.ts +12 -0
  588. package/dist/js/types/email/password.changed.type.d.ts.map +1 -0
  589. package/dist/js/types/email/password.changed.type.js +2 -0
  590. package/dist/js/types/email/password.changed.type.js.map +1 -0
  591. package/dist/js/types/email/password.expiring.type.d.ts +12 -0
  592. package/dist/js/types/email/password.expiring.type.d.ts.map +1 -0
  593. package/dist/js/types/email/password.expiring.type.js +2 -0
  594. package/dist/js/types/email/password.expiring.type.js.map +1 -0
  595. package/dist/js/types/email/password.reset.type.d.ts +11 -0
  596. package/dist/js/types/email/password.reset.type.d.ts.map +1 -0
  597. package/dist/js/types/email/password.reset.type.js +2 -0
  598. package/dist/js/types/email/password.reset.type.js.map +1 -0
  599. package/dist/js/types/email/payment.failed.type.d.ts +14 -0
  600. package/dist/js/types/email/payment.failed.type.d.ts.map +1 -0
  601. package/dist/js/types/email/payment.failed.type.js +2 -0
  602. package/dist/js/types/email/payment.failed.type.js.map +1 -0
  603. package/dist/js/types/email/payment.success.type.d.ts +13 -0
  604. package/dist/js/types/email/payment.success.type.d.ts.map +1 -0
  605. package/dist/js/types/email/payment.success.type.js +2 -0
  606. package/dist/js/types/email/payment.success.type.js.map +1 -0
  607. package/dist/js/types/email/receipt.type.d.ts +14 -0
  608. package/dist/js/types/email/receipt.type.d.ts.map +1 -0
  609. package/dist/js/types/email/receipt.type.js +2 -0
  610. package/dist/js/types/email/receipt.type.js.map +1 -0
  611. package/dist/js/types/email/reminder.type.d.ts +12 -0
  612. package/dist/js/types/email/reminder.type.d.ts.map +1 -0
  613. package/dist/js/types/email/reminder.type.js +2 -0
  614. package/dist/js/types/email/reminder.type.js.map +1 -0
  615. package/dist/js/types/email/security.alert.type.d.ts +12 -0
  616. package/dist/js/types/email/security.alert.type.d.ts.map +1 -0
  617. package/dist/js/types/email/security.alert.type.js +2 -0
  618. package/dist/js/types/email/security.alert.type.js.map +1 -0
  619. package/dist/js/types/email/static-config.type.d.ts +8 -0
  620. package/dist/js/types/email/static-config.type.d.ts.map +1 -0
  621. package/dist/js/types/email/static-config.type.js +2 -0
  622. package/dist/js/types/email/static-config.type.js.map +1 -0
  623. package/dist/js/types/email/subscription.cancelled.type.d.ts +12 -0
  624. package/dist/js/types/email/subscription.cancelled.type.d.ts.map +1 -0
  625. package/dist/js/types/email/subscription.cancelled.type.js +2 -0
  626. package/dist/js/types/email/subscription.cancelled.type.js.map +1 -0
  627. package/dist/js/types/email/subscription.created.type.d.ts +13 -0
  628. package/dist/js/types/email/subscription.created.type.d.ts.map +1 -0
  629. package/dist/js/types/email/subscription.created.type.js +2 -0
  630. package/dist/js/types/email/subscription.created.type.js.map +1 -0
  631. package/dist/js/types/email/subscription.renewed.type.d.ts +14 -0
  632. package/dist/js/types/email/subscription.renewed.type.d.ts.map +1 -0
  633. package/dist/js/types/email/subscription.renewed.type.js +2 -0
  634. package/dist/js/types/email/subscription.renewed.type.js.map +1 -0
  635. package/dist/js/types/email/support.ticket.type.d.ts +14 -0
  636. package/dist/js/types/email/support.ticket.type.d.ts.map +1 -0
  637. package/dist/js/types/email/support.ticket.type.js +2 -0
  638. package/dist/js/types/email/support.ticket.type.js.map +1 -0
  639. package/dist/js/types/email/team.invitation.type.d.ts +13 -0
  640. package/dist/js/types/email/team.invitation.type.d.ts.map +1 -0
  641. package/dist/js/types/email/team.invitation.type.js +2 -0
  642. package/dist/js/types/email/team.invitation.type.js.map +1 -0
  643. package/dist/js/types/email/trial.ending.type.d.ts +13 -0
  644. package/dist/js/types/email/trial.ending.type.d.ts.map +1 -0
  645. package/dist/js/types/email/trial.ending.type.js +2 -0
  646. package/dist/js/types/email/trial.ending.type.js.map +1 -0
  647. package/dist/js/types/email/two.factor.code.type.d.ts +11 -0
  648. package/dist/js/types/email/two.factor.code.type.d.ts.map +1 -0
  649. package/dist/js/types/email/two.factor.code.type.js +2 -0
  650. package/dist/js/types/email/two.factor.code.type.js.map +1 -0
  651. package/dist/js/types/email/verify.email.type.d.ts +11 -0
  652. package/dist/js/types/email/verify.email.type.d.ts.map +1 -0
  653. package/dist/js/types/email/verify.email.type.js +2 -0
  654. package/dist/js/types/email/verify.email.type.js.map +1 -0
  655. package/dist/js/types/email/weekly.report.type.d.ts +14 -0
  656. package/dist/js/types/email/weekly.report.type.d.ts.map +1 -0
  657. package/dist/js/types/email/weekly.report.type.js +2 -0
  658. package/dist/js/types/email/weekly.report.type.js.map +1 -0
  659. package/dist/js/types/email/welcome.type.d.ts +10 -0
  660. package/dist/js/types/email/welcome.type.d.ts.map +1 -0
  661. package/dist/js/types/email/welcome.type.js +2 -0
  662. package/dist/js/types/email/welcome.type.js.map +1 -0
  663. package/dist/js/types/upload.d.ts +57 -5
  664. package/dist/js/types/upload.d.ts.map +1 -1
  665. package/dist/js/upload/create.js +9 -6
  666. package/dist/js/upload/create.js.map +1 -1
  667. package/dist/js/upload/delete.js +21 -21
  668. package/dist/js/upload/delete.js.map +1 -1
  669. package/dist/js/upload/update.js +21 -21
  670. package/dist/js/upload/update.js.map +1 -1
  671. package/dist/js/utils/getErrorDetail.d.ts +2 -2
  672. package/dist/js/utils/getErrorDetail.d.ts.map +1 -1
  673. package/dist/js/utils/getErrorDetail.js +2 -2
  674. package/dist/js/utils/getErrorDetail.js.map +1 -1
  675. package/dist/js/utils/getModel.d.ts +3 -3
  676. package/dist/js/utils/getModel.d.ts.map +1 -1
  677. package/dist/js/utils/getModel.js +6 -6
  678. package/dist/js/utils/getModel.js.map +1 -1
  679. package/dist/js/utils/libsodium.js +6 -0
  680. package/dist/js/utils/libsodium.js.map +1 -1
  681. package/dist/js/utils/otpPurposes.js +38 -0
  682. package/dist/js/utils/otpPurposes.js.map +1 -1
  683. package/dist/js/utils/sanitize.js +23 -2
  684. package/dist/js/utils/sanitize.js.map +1 -1
  685. package/dist/js/utils/saveRefreshToken.js +2 -1
  686. package/dist/js/utils/saveRefreshToken.js.map +1 -1
  687. package/dist/js/utils/validate.js +5 -3
  688. package/dist/js/utils/validate.js.map +1 -1
  689. package/dist/js/utils/validationKeyError.d.ts +1 -1
  690. package/dist/js/utils/validationKeyError.d.ts.map +1 -1
  691. package/dist/js/utils/validationKeyError.js +13 -8
  692. package/dist/js/utils/validationKeyError.js.map +1 -1
  693. package/package.json +1 -1
  694. package/readme.md +29 -29
@@ -6,14 +6,17 @@ import getOTPModel from "./getOTPModel.js";
6
6
  import verifyCredentials from "./verifyCredentials.js";
7
7
  import getErrorDetail from "../../utils/getErrorDetail.js";
8
8
  import { getEnvs } from "../../config/envs.js";
9
- const createOTPUser = async ({ body, res, purpose, routeName, modelName, routeObj, }) => {
9
+ const createOTPUser = async ({ body, res, purpose, route, model, routeObj, }) => {
10
+ // get dynamic auth field keys
10
11
  const { authConfigObj } = getEnvs();
11
12
  const { fieldsObj } = authConfigObj;
12
13
  const emailKey = fieldsObj?.email;
13
14
  const passwordKey = fieldsObj?.password;
14
15
  const otpKey = fieldsObj?.otp;
15
16
  const purposeKey = fieldsObj?.purpose;
17
+ // otp model
16
18
  const OTPModel = getOTPModel(routeObj);
19
+ // if no purpose
17
20
  if (!purpose)
18
21
  throw new AppError({
19
22
  message: `${purposeKey} is required.`,
@@ -25,6 +28,7 @@ const createOTPUser = async ({ body, res, purpose, routeName, modelName, routeOb
25
28
  path: routeObj.path,
26
29
  },
27
30
  });
31
+ // if already requested otp
28
32
  const existingOTPs = await OTPModel.find({
29
33
  [emailKey]: body[emailKey],
30
34
  });
@@ -37,23 +41,27 @@ const createOTPUser = async ({ body, res, purpose, routeName, modelName, routeOb
37
41
  details: getErrorDetail(routeObj),
38
42
  });
39
43
  }
44
+ // if login - mode: otp
40
45
  if (purpose === "login")
41
46
  await verifyCredentials({
42
- modelName,
47
+ model,
43
48
  body,
44
- routeName,
49
+ route,
45
50
  routeObj,
46
51
  });
52
+ // send otp + handle hashing
47
53
  const { OTP, otpExpiry } = await sendOTP(body[emailKey], routeObj);
48
54
  const hashedOTP = await hash(OTP, routeObj);
49
55
  if (body?.[passwordKey])
50
56
  body[passwordKey] = await hash(body[passwordKey], routeObj);
57
+ // create otp
51
58
  await OTPModel.create({
52
59
  ...body,
53
60
  [otpKey]: hashedOTP,
54
61
  otpExpiry,
55
62
  [purposeKey]: purpose,
56
63
  });
64
+ // send response
57
65
  appResponse({
58
66
  res,
59
67
  message: "OTP sent successfully!",
@@ -1 +1 @@
1
- {"version":3,"file":"createOTPUser.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/createOTPUser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createOTPUser.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/createOTPUser.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import type { Response, Request } from "express";
2
2
  import type { Route } from "../../types/Collection.js";
3
- declare const createUser: ({ body, modelName, res, routeName, routeObj, req, }: {
3
+ declare const createUser: ({ body, model, res, route, routeObj, req, }: {
4
4
  body: any;
5
- modelName: string;
5
+ model: string;
6
6
  res: Response;
7
- routeName: string;
7
+ route: string;
8
8
  routeObj: Route;
9
9
  req: Request;
10
10
  }) => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"createUser.d.ts","sourceRoot":"","sources":["../../../../src/js/auth/utils/createUser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AASjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAKvD,QAAA,MAAM,UAAU,GAAU,qDAOvB;IACD,IAAI,EAAE,GAAG,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,QAAQ,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;CACd,kBAuFA,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"createUser.d.ts","sourceRoot":"","sources":["../../../../src/js/auth/utils/createUser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AASjD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAKvD,QAAA,MAAM,UAAU,GAAU,6CAOvB;IACD,IAAI,EAAE,GAAG,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,QAAQ,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,KAAK,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;CACd,kBAuFA,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -9,16 +9,20 @@ import { sendCookie } from "./sendCookie.js";
9
9
  import { getEnvs } from "../../config/envs.js";
10
10
  import tokenInfo from "./UAParser.js";
11
11
  import saveRefreshToken from "../../utils/saveRefreshToken.js";
12
- const createUser = async ({ body, modelName, res, routeName, routeObj, req, }) => {
12
+ const createUser = async ({ body, model, res, route, routeObj, req, }) => {
13
+ // get dynamic auth field keys
13
14
  const { authConfigObj } = getEnvs();
14
15
  const { fieldsObj } = authConfigObj;
15
16
  const emailKey = fieldsObj?.email;
16
17
  const passwordKey = fieldsObj?.password;
17
18
  const otpKey = fieldsObj?.otp;
18
19
  const purposeKey = fieldsObj?.purpose;
19
- const Model = getModel({ modelName, routeName, routeObj });
20
+ // models
21
+ const Model = getModel({ model, route, routeObj });
20
22
  const OTPModel = getOTPModel(routeObj);
23
+ // token info
21
24
  const { deviceType, familyId, jti, deviceName, ipAddress, os } = tokenInfo(req);
25
+ // isVerified - mode:otp
22
26
  let isVerified = false;
23
27
  let isOTPUser = null;
24
28
  if ("isVerified" in body)
@@ -27,6 +31,7 @@ const createUser = async ({ body, modelName, res, routeName, routeObj, req, }) =
27
31
  purpose: "signup",
28
32
  routeObj,
29
33
  }));
34
+ // delete body._id | hash password
30
35
  if (body instanceof mongoose.Document) {
31
36
  body = body.toObject();
32
37
  body.role = "user";
@@ -36,10 +41,13 @@ const createUser = async ({ body, modelName, res, routeName, routeObj, req, }) =
36
41
  body[passwordKey] = await hash(body[passwordKey], routeObj);
37
42
  body.role = "user";
38
43
  }
44
+ // new user
39
45
  const newUser = await Model.create(body);
46
+ // if from otp, remove it
40
47
  if (isVerified)
41
48
  await OTPModel.deleteOne({ _id: isOTPUser._id });
42
49
  const { _id } = newUser.toObject();
50
+ // send cookie
43
51
  const { accessToken, refreshToken, refreshTokenAge } = sendCookie({
44
52
  res,
45
53
  accessTokenName: authConfigObj.accessTokenName,
@@ -51,6 +59,7 @@ const createUser = async ({ body, modelName, res, routeName, routeObj, req, }) =
51
59
  familyId,
52
60
  jti,
53
61
  });
62
+ // save refreshToken
54
63
  const hashedToken = await hash(refreshToken);
55
64
  await saveRefreshToken({
56
65
  hashedToken,
@@ -64,6 +73,7 @@ const createUser = async ({ body, modelName, res, routeName, routeObj, req, }) =
64
73
  os,
65
74
  ipAddress,
66
75
  });
76
+ // send response
67
77
  appResponse({
68
78
  res,
69
79
  message: "Your account has been created successfully!",
@@ -1 +1 @@
1
- {"version":3,"file":"createUser.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/createUser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createUser.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/createUser.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,14 @@ import getModel from "../../utils/getModel.js";
2
2
  import AppError from "../../utils/AppError.js";
3
3
  import getErrorDetail from "../../utils/getErrorDetail.js";
4
4
  const findRefreshToken = async (owner, jti, routeObj) => {
5
- const RefreshToken = getModel({ modelName: "RefreshToken", routeObj });
5
+ // Model
6
+ const RefreshToken = getModel({ model: "RefreshToken", routeObj });
7
+ // find same device tokens
6
8
  const foundRefreshToken = await RefreshToken.findOne({
7
9
  owner,
8
10
  jti,
9
11
  });
12
+ // token not found
10
13
  if (!foundRefreshToken)
11
14
  throw new AppError({
12
15
  message: "Refresh token session was not found",
@@ -15,6 +18,7 @@ const findRefreshToken = async (owner, jti, routeObj) => {
15
18
  details: getErrorDetail(routeObj),
16
19
  statusCode: 401,
17
20
  });
21
+ // if token is revoked
18
22
  if (foundRefreshToken.revoked)
19
23
  throw new AppError({
20
24
  message: "Refresh token has been revoked",
@@ -1 +1 @@
1
- {"version":3,"file":"findRefreshToken.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/findRefreshToken.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAE3D,MAAM,gBAAgB,GAAG,KAAK,EAC5B,KAAa,EACb,GAAW,EACX,QAAe,EACf,EAAE;IAEF,MAAM,YAAY,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC;IAGvE,MAAM,iBAAiB,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC;QACnD,KAAK;QACL,GAAG;KACJ,CAAC,CAAC;IAGH,IAAI,CAAC,iBAAiB;QACpB,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,qCAAqC;YAC9C,IAAI,EAAE,yBAAyB;YAC/B,IAAI,EAAE,uDAAuD;YAC7D,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;YACjC,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;IAGL,IAAI,iBAAiB,CAAC,OAAO;QAC3B,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,gCAAgC;YACzC,IAAI,EAAE,uBAAuB;YAC7B,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,uDAAuD;YAC7D,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;IAEL,OAAO,iBAAiB,CAAC;AAC3B,CAAC,CAAC;AACF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"findRefreshToken.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/findRefreshToken.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAE3D,MAAM,gBAAgB,GAAG,KAAK,EAC5B,KAAa,EACb,GAAW,EACX,QAAe,EACf,EAAE;IACF,QAAQ;IACR,MAAM,YAAY,GAAG,QAAQ,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEnE,0BAA0B;IAC1B,MAAM,iBAAiB,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC;QACnD,KAAK;QACL,GAAG;KACJ,CAAC,CAAC;IAEH,kBAAkB;IAClB,IAAI,CAAC,iBAAiB;QACpB,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,qCAAqC;YAC9C,IAAI,EAAE,yBAAyB;YAC/B,IAAI,EAAE,uDAAuD;YAC7D,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;YACjC,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;IAEL,sBAAsB;IACtB,IAAI,iBAAiB,CAAC,OAAO;QAC3B,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,gCAAgC;YACzC,IAAI,EAAE,uBAAuB;YAC7B,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,uDAAuD;YAC7D,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;IAEL,OAAO,iBAAiB,CAAC;AAC3B,CAAC,CAAC;AACF,eAAe,gBAAgB,CAAC"}
@@ -5,6 +5,7 @@ import getErrorDetail from "../../utils/getErrorDetail.js";
5
5
  const findRefreshTokenUser = async (id, routeObj) => {
6
6
  const { userModelName } = getEnvs();
7
7
  const user = await findUser(id, routeObj, userModelName);
8
+ // if user not found
8
9
  if (!user)
9
10
  throw new AppError({
10
11
  message: "User associated with the refresh token was not found",
@@ -1 +1 @@
1
- {"version":3,"file":"findRefreshTokenUser.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/findRefreshTokenUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAE/D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAE3D,MAAM,oBAAoB,GAAG,KAAK,EAAE,EAAU,EAAE,QAAe,EAAE,EAAE;IACjE,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IAEpC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,aAAuB,CAAC,CAAC;IAGnE,IAAI,CAAC,IAAI;QACP,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,sDAAsD;YAC/D,IAAI,EAAE,wBAAwB;YAC9B,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,yCAAyC;YAC/C,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;AACP,CAAC,CAAC;AACF,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"findRefreshTokenUser.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/findRefreshTokenUser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAE/D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAE3D,MAAM,oBAAoB,GAAG,KAAK,EAAE,EAAU,EAAE,QAAe,EAAE,EAAE;IACjE,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IAEpC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,aAAuB,CAAC,CAAC;IAEnE,oBAAoB;IACpB,IAAI,CAAC,IAAI;QACP,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,sDAAsD;YAC/D,IAAI,EAAE,wBAAwB;YAC9B,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,yCAAyC;YAC/C,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;AACP,CAAC,CAAC;AACF,eAAe,oBAAoB,CAAC"}
@@ -2,11 +2,14 @@ import getOTPModel from "./getOTPModel.js";
2
2
  import AppError from "../../utils/AppError.js";
3
3
  import { getEnvs } from "../../config/envs.js";
4
4
  const getOTPUser = async ({ email, purpose, routeObj, }) => {
5
+ // get dynamic auth field keys
5
6
  const { authConfigObj } = getEnvs();
6
7
  const { fieldsObj } = authConfigObj;
7
8
  const emailKey = fieldsObj?.email;
8
9
  const purposeKey = fieldsObj?.purpose;
10
+ // otp model
9
11
  const OTPModel = getOTPModel(routeObj);
12
+ // otp user
10
13
  const OTPUser = await OTPModel.findOne({
11
14
  [emailKey]: email,
12
15
  [purposeKey]: purpose,
@@ -1 +1 @@
1
- {"version":3,"file":"getOTPUser.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/getOTPUser.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,MAAM,UAAU,GAAG,KAAK,EAAE,EACxB,KAAK,EACL,OAAO,EACP,QAAQ,GAKT,EAAE,EAAE;IAEH,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IACpC,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;IAEpC,MAAM,QAAQ,GAAG,SAAS,EAAE,KAAK,CAAC;IAClC,MAAM,UAAU,GAAG,SAAS,EAAE,OAAO,CAAC;IAGtC,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IAGvC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC;QACrC,CAAC,QAAS,CAAC,EAAE,KAAK;QAClB,CAAC,UAAW,CAAC,EAAE,OAAO;KACvB,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO;QACV,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,wBAAwB;YACjC,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,4CAA4C,QAAQ,QAAQ,UAAU,GAAG;YAC/E,OAAO,EAAE;gBACP,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB;SACF,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"getOTPUser.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/getOTPUser.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,MAAM,UAAU,GAAG,KAAK,EAAE,EACxB,KAAK,EACL,OAAO,EACP,QAAQ,GAKT,EAAE,EAAE;IACH,8BAA8B;IAC9B,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IACpC,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;IAEpC,MAAM,QAAQ,GAAG,SAAS,EAAE,KAAK,CAAC;IAClC,MAAM,UAAU,GAAG,SAAS,EAAE,OAAO,CAAC;IAEtC,YAAY;IACZ,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IAEvC,WAAW;IACX,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC;QACrC,CAAC,QAAS,CAAC,EAAE,KAAK;QAClB,CAAC,UAAW,CAAC,EAAE,OAAO;KACvB,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO;QACV,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,wBAAwB;YACjC,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,4CAA4C,QAAQ,QAAQ,UAAU,GAAG;YAC/E,OAAO,EAAE;gBACP,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB;SACF,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import type { Route } from "../../types/Collection.js";
2
- declare const getUser: ({ modelName, routeName, email, needPassword, routeObj, }: {
3
- modelName: string;
4
- routeName: string;
2
+ declare const getUser: ({ model, route, email, needPassword, routeObj, }: {
3
+ model: string;
4
+ route: string;
5
5
  email: string;
6
6
  needPassword?: boolean;
7
7
  routeObj: Route;
@@ -1 +1 @@
1
- {"version":3,"file":"getUser.d.ts","sourceRoot":"","sources":["../../../../src/js/auth/utils/getUser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAGvD,QAAA,MAAM,OAAO,GAAU,0DAMpB;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,KAAK,CAAC;CACjB,iBAsCA,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"getUser.d.ts","sourceRoot":"","sources":["../../../../src/js/auth/utils/getUser.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAGvD,QAAA,MAAM,OAAO,GAAU,kDAMpB;IACD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,KAAK,CAAC;CACjB,iBAsCA,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -1,12 +1,15 @@
1
1
  import getModel from "../../utils/getModel.js";
2
2
  import AppError from "../../utils/AppError.js";
3
3
  import { getEnvs } from "../../config/envs.js";
4
- const getUser = async ({ modelName, routeName, email, needPassword, routeObj, }) => {
4
+ const getUser = async ({ model, route, email, needPassword, routeObj, }) => {
5
+ // get dynamic auth field keys
5
6
  const { authConfigObj } = getEnvs();
6
7
  const { fieldsObj } = authConfigObj;
7
8
  const emailKey = fieldsObj?.email;
8
9
  const passwordKey = fieldsObj?.password;
9
- const Model = getModel({ modelName, routeName, routeObj });
10
+ // model
11
+ const Model = getModel({ model, route, routeObj });
12
+ // user
10
13
  let user = null;
11
14
  if (needPassword) {
12
15
  user = await Model.findOne({
@@ -18,6 +21,7 @@ const getUser = async ({ modelName, routeName, email, needPassword, routeObj, })
18
21
  [emailKey]: email,
19
22
  });
20
23
  }
24
+ // if user not found
21
25
  if (!user)
22
26
  throw new AppError({
23
27
  message: "User not found.",
@@ -1 +1 @@
1
- {"version":3,"file":"getUser.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/getUser.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,MAAM,OAAO,GAAG,KAAK,EAAE,EACrB,SAAS,EACT,SAAS,EACT,KAAK,EACL,YAAY,EACZ,QAAQ,GAOT,EAAE,EAAE;IAEH,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IACpC,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;IAEpC,MAAM,QAAQ,GAAG,SAAS,EAAE,KAAK,CAAC;IAClC,MAAM,WAAW,GAAG,SAAS,EAAE,QAAQ,CAAC;IAGxC,MAAM,KAAK,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;IAG3D,IAAI,IAAI,GAAQ,IAAI,CAAC;IAErB,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC;YACzB,CAAC,QAAS,CAAC,EAAE,KAAK;SACnB,CAAC,CAAC,MAAM,CAAC,IAAI,WAAY,EAAE,CAAC,CAAC;IAChC,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC;YACzB,CAAC,QAAS,CAAC,EAAE,KAAK;SACnB,CAAC,CAAC;IACL,CAAC;IAGD,IAAI,CAAC,IAAI;QACP,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,iBAAiB;YAC1B,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,uBAAuB,QAAQ,2BAA2B;YAChE,OAAO,EAAE;gBACP,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB;SACF,CAAC,CAAC;IAEL,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"getUser.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/getUser.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,MAAM,OAAO,GAAG,KAAK,EAAE,EACrB,KAAK,EACL,KAAK,EACL,KAAK,EACL,YAAY,EACZ,QAAQ,GAOT,EAAE,EAAE;IACH,8BAA8B;IAC9B,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IACpC,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;IAEpC,MAAM,QAAQ,GAAG,SAAS,EAAE,KAAK,CAAC;IAClC,MAAM,WAAW,GAAG,SAAS,EAAE,QAAQ,CAAC;IAExC,QAAQ;IACR,MAAM,KAAK,GAAG,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEnD,OAAO;IACP,IAAI,IAAI,GAAQ,IAAI,CAAC;IAErB,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC;YACzB,CAAC,QAAS,CAAC,EAAE,KAAK;SACnB,CAAC,CAAC,MAAM,CAAC,IAAI,WAAY,EAAE,CAAC,CAAC;IAChC,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC;YACzB,CAAC,QAAS,CAAC,EAAE,KAAK;SACnB,CAAC,CAAC;IACL,CAAC;IAED,oBAAoB;IACpB,IAAI,CAAC,IAAI;QACP,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,iBAAiB;YAC1B,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,uBAAuB,QAAQ,2BAA2B;YAChE,OAAO,EAAE;gBACP,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB;SACF,CAAC,CAAC;IAEL,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"handleGetToken.d.ts","sourceRoot":"","sources":["../../../../src/js/auth/utils/handleGetToken.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,QAAA,MAAM,QAAQ,GAAI,0BAIf;IACD,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,KAAK,CAAC;IAChB,IAAI,EAAE,iBAAiB,GAAG,kBAAkB,CAAC;CAC9C,WAkBA,CAAC;AACF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"handleGetToken.d.ts","sourceRoot":"","sources":["../../../../src/js/auth/utils/handleGetToken.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,QAAA,MAAM,QAAQ,GAAI,0BAIf;IACD,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,KAAK,CAAC;IAChB,IAAI,EAAE,iBAAiB,GAAG,kBAAkB,CAAC;CAC9C,WAmBA,CAAC;AACF,eAAe,QAAQ,CAAC"}
@@ -4,9 +4,9 @@ import { getEnvs } from "../../config/envs.js";
4
4
  const getToken = ({ req, routeObj, type, }) => {
5
5
  const { authConfigObj } = getEnvs();
6
6
  const tokenName = authConfigObj[type];
7
- let token = req.cookies[tokenName];
7
+ let token = req.cookies?.[tokenName];
8
8
  if (!token)
9
- token = req.body[tokenName];
9
+ token = req.body?.[tokenName];
10
10
  if (!token || typeof token !== "string")
11
11
  throw new AppError({
12
12
  message: `'${tokenName}' is missing`,
@@ -1 +1 @@
1
- {"version":3,"file":"handleGetToken.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/handleGetToken.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,MAAM,QAAQ,GAAG,CAAC,EAChB,GAAG,EACH,QAAQ,EACR,IAAI,GAKL,EAAE,EAAE;IACH,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IAEpC,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAEtC,IAAI,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,SAAU,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK;QAAE,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,SAAU,CAAC,CAAC;IAEzC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QACrC,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,IAAI,SAAS,cAAc;YACpC,IAAI,EAAE,GAAG,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,gBAAgB;YAC1E,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;YACjC,IAAI,EAAE,kDAAkD,SAAS,0KAA0K;YAC3O,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;IAEL,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AACF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"handleGetToken.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/handleGetToken.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,MAAM,QAAQ,GAAG,CAAC,EAChB,GAAG,EACH,QAAQ,EACR,IAAI,GAKL,EAAE,EAAE;IACH,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IAEpC,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAEtC,IAAI,KAAK,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,SAAU,CAAC,CAAC;IAEtC,IAAI,CAAC,KAAK;QAAE,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,SAAU,CAAC,CAAC;IAE3C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QACrC,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,IAAI,SAAS,cAAc;YACpC,IAAI,EAAE,GAAG,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,gBAAgB;YAC1E,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;YACjC,IAAI,EAAE,kDAAkD,SAAS,0KAA0K;YAC3O,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;IAEL,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AACF,eAAe,QAAQ,CAAC"}
@@ -4,8 +4,11 @@ import getModel from "../../utils/getModel.js";
4
4
  import getErrorDetail from "../../utils/getErrorDetail.js";
5
5
  import findRefreshToken from "./findRefreshToken.js";
6
6
  const handleRefreshTokenValidation = async (token, routeObj, owner, jti) => {
7
- const RefreshToken = getModel({ modelName: "RefreshToken", routeObj });
7
+ // Model
8
+ const RefreshToken = getModel({ model: "RefreshToken", routeObj });
9
+ // find same device tokens
8
10
  const foundToken = await findRefreshToken(owner, jti, routeObj);
11
+ // if token not found
9
12
  if (!foundToken)
10
13
  throw new AppError({
11
14
  message: "Refresh token is not found.",
@@ -14,7 +17,9 @@ const handleRefreshTokenValidation = async (token, routeObj, owner, jti) => {
14
17
  hint: "This refresh token is deleted. Sign in again to create a new authentication session.",
15
18
  details: getErrorDetail(routeObj),
16
19
  });
20
+ // token hash verification
17
21
  const isValid = await verifyHash(token, foundToken.refreshTokenHash, routeObj);
22
+ // if token is revoked
18
23
  if (foundToken.revoked)
19
24
  throw new AppError({
20
25
  message: "Refresh token black listed.",
@@ -23,6 +28,7 @@ const handleRefreshTokenValidation = async (token, routeObj, owner, jti) => {
23
28
  hint: "This refresh token can't be used. Sign in again to create a new authentication session.",
24
29
  details: getErrorDetail(routeObj),
25
30
  });
31
+ // if invalid hash
26
32
  if (!isValid) {
27
33
  await RefreshToken.updateOne({
28
34
  owner,
@@ -1 +1 @@
1
- {"version":3,"file":"handleRefreshTokenValidation.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/handleRefreshTokenValidation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAE/C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AAErD,MAAM,4BAA4B,GAAG,KAAK,EACxC,KAAa,EACb,QAAe,EACf,KAAa,EACb,GAAW,EACX,EAAE;IAEF,MAAM,YAAY,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC;IAGvE,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAGhE,IAAI,CAAC,UAAU;QACb,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,6BAA6B;YACtC,IAAI,EAAE,0BAA0B;YAChC,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,sFAAsF;YAC5F,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;IAGL,MAAM,OAAO,GAAG,MAAM,UAAU,CAC9B,KAAK,EACL,UAAU,CAAC,gBAAgB,EAC3B,QAAQ,CACT,CAAC;IAGF,IAAI,UAAU,CAAC,OAAO;QACpB,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,6BAA6B;YACtC,IAAI,EAAE,uBAAuB;YAC7B,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,yFAAyF;YAC/F,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;IAGL,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,YAAY,CAAC,SAAS,CAC1B;YACE,KAAK;YACL,GAAG;YACH,OAAO,EAAE,KAAK;SACf,EACD,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAC5B,CAAC;QAEF,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,0BAA0B;YACnC,IAAI,EAAE,uBAAuB;YAC7B,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,uDAAuD;YAC7D,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AACF,eAAe,4BAA4B,CAAC"}
1
+ {"version":3,"file":"handleRefreshTokenValidation.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/handleRefreshTokenValidation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAE/C,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AAErD,MAAM,4BAA4B,GAAG,KAAK,EACxC,KAAa,EACb,QAAe,EACf,KAAa,EACb,GAAW,EACX,EAAE;IACF,QAAQ;IACR,MAAM,YAAY,GAAG,QAAQ,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEnE,0BAA0B;IAC1B,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAEhE,qBAAqB;IACrB,IAAI,CAAC,UAAU;QACb,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,6BAA6B;YACtC,IAAI,EAAE,0BAA0B;YAChC,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,sFAAsF;YAC5F,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;IAEL,0BAA0B;IAC1B,MAAM,OAAO,GAAG,MAAM,UAAU,CAC9B,KAAK,EACL,UAAU,CAAC,gBAAgB,EAC3B,QAAQ,CACT,CAAC;IAEF,sBAAsB;IACtB,IAAI,UAAU,CAAC,OAAO;QACpB,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,6BAA6B;YACtC,IAAI,EAAE,uBAAuB;YAC7B,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,yFAAyF;YAC/F,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;IAEL,kBAAkB;IAClB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,YAAY,CAAC,SAAS,CAC1B;YACE,KAAK;YACL,GAAG;YACH,OAAO,EAAE,KAAK;SACf,EACD,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAC5B,CAAC;QAEF,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,0BAA0B;YACnC,IAAI,EAAE,uBAAuB;YAC7B,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,uDAAuD;YAC7D,OAAO,EAAE,cAAc,CAAC,QAAQ,CAAC;SAClC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AACF,eAAe,4BAA4B,CAAC"}
@@ -5,10 +5,11 @@ import { hash } from "../../utils/libsodium.js";
5
5
  import saveRefreshToken from "../../utils/saveRefreshToken.js";
6
6
  import getDuration from "../../config/duration.js";
7
7
  const handleRotateRefreshToken = async ({ owner, currentTokenJTI, rotateTokenJTI, deviceType, familyId, res, routeObj, deviceName, ipAddress, os, iat, }) => {
8
- const RefreshToken = getModel({ modelName: "RefreshToken" });
8
+ const RefreshToken = getModel({ model: "RefreshToken" });
9
9
  const { authConfigObj } = getEnvs();
10
10
  const { refreshTokenName, rotateRefreshToken, refreshTokenRotationInterval } = authConfigObj;
11
11
  let REFRESH_TOKEN = null;
12
+ // update - last used
12
13
  const updateLastUsed = async () => {
13
14
  await RefreshToken.updateOne({
14
15
  owner,
@@ -17,9 +18,11 @@ const handleRotateRefreshToken = async ({ owner, currentTokenJTI, rotateTokenJTI
17
18
  }, { $set: { lastUsedAt: Date.now() } });
18
19
  };
19
20
  if (!rotateRefreshToken) {
21
+ // update lastUsed
20
22
  await updateLastUsed();
21
23
  }
22
24
  else {
25
+ // check if rotationInterval is found
23
26
  const rotationInterval = getDuration(refreshTokenRotationInterval, routeObj);
24
27
  if (!!rotationInterval) {
25
28
  const timeLeft = iat * 1000 + rotationInterval;
@@ -28,6 +31,7 @@ const handleRotateRefreshToken = async ({ owner, currentTokenJTI, rotateTokenJTI
28
31
  return;
29
32
  }
30
33
  }
34
+ // cookie
31
35
  const { refreshToken, refreshTokenAge } = sendCookie({
32
36
  deviceType,
33
37
  refreshTokenName: refreshTokenName,
@@ -40,7 +44,9 @@ const handleRotateRefreshToken = async ({ owner, currentTokenJTI, rotateTokenJTI
40
44
  routeObj,
41
45
  });
42
46
  REFRESH_TOKEN = refreshToken;
47
+ // hashedToken
43
48
  const hashedToken = await hash(refreshToken);
49
+ // check if old token
44
50
  await RefreshToken.updateMany({
45
51
  owner,
46
52
  refreshTokenHash: { $ne: hashedToken },
@@ -1 +1 @@
1
- {"version":3,"file":"handleRotateRefreshToken.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/handleRotateRefreshToken.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAChD,OAAO,gBAAgB,MAAM,iCAAiC,CAAC;AAC/D,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAgBnD,MAAM,wBAAwB,GAAG,KAAK,EAAE,EACtC,KAAK,EACL,eAAe,EACf,cAAc,EACd,UAAU,EACV,QAAQ,EACR,GAAG,EACH,QAAQ,EACR,UAAU,EACV,SAAS,EACT,EAAE,EACF,GAAG,GACkB,EAAE,EAAE;IACzB,MAAM,YAAY,GAAG,QAAQ,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;IAC7D,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IAEpC,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,GAC1E,aAAa,CAAC;IAEhB,IAAI,aAAa,GAAG,IAAI,CAAC;IAGzB,MAAM,cAAc,GAAG,KAAK,IAAI,EAAE;QAChC,MAAM,YAAY,CAAC,SAAS,CAC1B;YACE,KAAK;YACL,GAAG,EAAE,eAAe;YACpB,OAAO,EAAE,KAAK;SACf,EACD,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CACrC,CAAC;IACJ,CAAC,CAAC;IAEF,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAExB,MAAM,cAAc,EAAE,CAAC;IACzB,CAAC;SAAM,CAAC;QAEN,MAAM,gBAAgB,GAAG,WAAW,CAClC,4BAA6B,EAC7B,QAAQ,CACT,CAAC;QAEF,IAAI,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,GAAG,GAAG,IAAI,GAAG,gBAAgB,CAAC;YAE/C,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;gBAC1B,MAAM,cAAc,EAAE,CAAC;gBACvB,OAAO;YACT,CAAC;QACH,CAAC;QAGD,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,GAAG,UAAU,CAAC;YACnD,UAAU;YACV,gBAAgB,EAAE,gBAAiB;YACnC,GAAG,EAAE,cAAc;YACnB,QAAQ;YACR,mBAAmB,EAAE;gBACnB,GAAG,EAAE,KAAK;aACX;YACD,GAAG;YACH,QAAQ;SACT,CAAC,CAAC;QAEH,aAAa,GAAG,YAAY,CAAC;QAG7B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAa,CAAC,CAAC;QAG9C,MAAM,YAAY,CAAC,UAAU,CAC3B;YACE,KAAK;YACL,gBAAgB,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE;YACtC,QAAQ;YACR,OAAO,EAAE,KAAK;SACf,EACD,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAC5B,CAAC;QAEF,MAAM,gBAAgB,CAAC;YACrB,GAAG,EAAE,KAAK;YACV,QAAQ;YACR,GAAG,EAAE,cAAc;YACnB,WAAW;YACX,eAAe;YACf,QAAQ;YACR,UAAU;YACV,UAAU;YACV,SAAS;YACT,EAAE;SACH,CAAC,CAAC;IACL,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
1
+ {"version":3,"file":"handleRotateRefreshToken.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/handleRotateRefreshToken.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAG/C,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAChD,OAAO,gBAAgB,MAAM,iCAAiC,CAAC;AAC/D,OAAO,WAAW,MAAM,0BAA0B,CAAC;AAgBnD,MAAM,wBAAwB,GAAG,KAAK,EAAE,EACtC,KAAK,EACL,eAAe,EACf,cAAc,EACd,UAAU,EACV,QAAQ,EACR,GAAG,EACH,QAAQ,EACR,UAAU,EACV,SAAS,EACT,EAAE,EACF,GAAG,GACkB,EAAE,EAAE;IACzB,MAAM,YAAY,GAAG,QAAQ,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;IACzD,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IAEpC,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,4BAA4B,EAAE,GAC1E,aAAa,CAAC;IAEhB,IAAI,aAAa,GAAG,IAAI,CAAC;IAEzB,qBAAqB;IACrB,MAAM,cAAc,GAAG,KAAK,IAAI,EAAE;QAChC,MAAM,YAAY,CAAC,SAAS,CAC1B;YACE,KAAK;YACL,GAAG,EAAE,eAAe;YACpB,OAAO,EAAE,KAAK;SACf,EACD,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CACrC,CAAC;IACJ,CAAC,CAAC;IAEF,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,kBAAkB;QAClB,MAAM,cAAc,EAAE,CAAC;IACzB,CAAC;SAAM,CAAC;QACN,qCAAqC;QACrC,MAAM,gBAAgB,GAAG,WAAW,CAClC,4BAA6B,EAC7B,QAAQ,CACT,CAAC;QAEF,IAAI,CAAC,CAAC,gBAAgB,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,GAAG,GAAG,IAAI,GAAG,gBAAgB,CAAC;YAE/C,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;gBAC1B,MAAM,cAAc,EAAE,CAAC;gBACvB,OAAO;YACT,CAAC;QACH,CAAC;QAED,SAAS;QACT,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,GAAG,UAAU,CAAC;YACnD,UAAU;YACV,gBAAgB,EAAE,gBAAiB;YACnC,GAAG,EAAE,cAAc;YACnB,QAAQ;YACR,mBAAmB,EAAE;gBACnB,GAAG,EAAE,KAAK;aACX;YACD,GAAG;YACH,QAAQ;SACT,CAAC,CAAC;QAEH,aAAa,GAAG,YAAY,CAAC;QAE7B,cAAc;QACd,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAa,CAAC,CAAC;QAE9C,qBAAqB;QACrB,MAAM,YAAY,CAAC,UAAU,CAC3B;YACE,KAAK;YACL,gBAAgB,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE;YACtC,QAAQ;YACR,OAAO,EAAE,KAAK;SACf,EACD,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAC5B,CAAC;QAEF,MAAM,gBAAgB,CAAC;YACrB,GAAG,EAAE,KAAK;YACV,QAAQ;YACR,GAAG,EAAE,cAAc;YACnB,WAAW;YACX,eAAe;YACf,QAAQ;YACR,UAAU;YACV,UAAU;YACV,SAAS;YACT,EAAE;SACH,CAAC,CAAC;IACL,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
@@ -1,37 +1,37 @@
1
1
  declare const modeMap: {
2
2
  signup: {
3
- otp: ({ body, res, purpose, routeName, modelName, routeObj, }: {
3
+ otp: ({ body, res, purpose, route, model, routeObj, }: {
4
4
  body: any;
5
5
  res: import("express").Response;
6
6
  purpose: string;
7
- routeName: string;
8
- modelName: string;
7
+ route: string;
8
+ model: string;
9
9
  routeObj: import("../../types/Route.js").Route;
10
10
  }) => Promise<void>;
11
- credentials: ({ body, modelName, res, routeName, routeObj, req, }: {
11
+ credentials: ({ body, model, res, route, routeObj, req, }: {
12
12
  body: any;
13
- modelName: string;
13
+ model: string;
14
14
  res: import("express").Response;
15
- routeName: string;
15
+ route: string;
16
16
  routeObj: import("../../types/Route.js").Route;
17
17
  req: import("express").Request;
18
18
  }) => Promise<void>;
19
19
  };
20
20
  login: {
21
- otp: ({ body, res, purpose, routeName, modelName, routeObj, }: {
21
+ otp: ({ body, res, purpose, route, model, routeObj, }: {
22
22
  body: any;
23
23
  res: import("express").Response;
24
24
  purpose: string;
25
- routeName: string;
26
- modelName: string;
25
+ route: string;
26
+ model: string;
27
27
  routeObj: import("../../types/Route.js").Route;
28
28
  }) => Promise<void>;
29
- credentials: ({ body, modelName, res, req, routeName, routeObj, }: {
29
+ credentials: ({ body, model, res, req, route, routeObj, }: {
30
30
  body: any;
31
- modelName: string;
31
+ model: string;
32
32
  res: import("express").Response;
33
33
  req: import("express").Request;
34
- routeName: string;
34
+ route: string;
35
35
  routeObj: import("../../types/Route.js").Route;
36
36
  }) => Promise<void>;
37
37
  };
@@ -2,6 +2,7 @@ import appResponse from "../../utils/response.js";
2
2
  import AppError from "../../utils/AppError.js";
3
3
  import { getEnvs } from "../../config/envs.js";
4
4
  const otpVerifiedResponse = ({ res, body, routeObj, }) => {
5
+ // get dynamic auth field key
5
6
  const { authConfigObj } = getEnvs();
6
7
  const { fieldsObj } = authConfigObj;
7
8
  const purposeKey = fieldsObj?.purpose;
@@ -1 +1 @@
1
- {"version":3,"file":"otpVerifiedResponse.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/otpVerifiedResponse.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,MAAM,mBAAmB,GAAG,CAAC,EAC3B,GAAG,EACH,IAAI,EACJ,QAAQ,GAKT,EAAE,EAAE;IAEH,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IACpC,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;IAEpC,MAAM,UAAU,GAAG,SAAS,EAAE,OAAO,CAAC;IAEtC,IAAI,CAAC,IAAI,EAAE,CAAC,UAAW,CAAC;QACtB,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,GAAG,UAAU,eAAe;YACrC,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,WAAW,UAAU,gDAAgD;YAC3E,OAAO,EAAE;gBACP,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB;SACF,CAAC,CAAC;IAEL,WAAW,CAAC;QACV,GAAG;QACH,OAAO,EAAE,GAAG,IAAI,CAAC,UAAW,CAAC,8BAA8B;QAC3D,OAAO,EAAE,IAAI,CAAC,UAAW,CAAC;KAC3B,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"otpVerifiedResponse.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/otpVerifiedResponse.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,MAAM,mBAAmB,GAAG,CAAC,EAC3B,GAAG,EACH,IAAI,EACJ,QAAQ,GAKT,EAAE,EAAE;IACH,6BAA6B;IAC7B,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,EAAE,CAAC;IACpC,MAAM,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;IAEpC,MAAM,UAAU,GAAG,SAAS,EAAE,OAAO,CAAC;IAEtC,IAAI,CAAC,IAAI,EAAE,CAAC,UAAW,CAAC;QACtB,MAAM,IAAI,QAAQ,CAAC;YACjB,OAAO,EAAE,GAAG,UAAU,eAAe;YACrC,UAAU,EAAE,GAAG;YACf,IAAI,EAAE,WAAW,UAAU,gDAAgD;YAC3E,OAAO,EAAE;gBACP,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB;SACF,CAAC,CAAC;IAEL,WAAW,CAAC;QACV,GAAG;QACH,OAAO,EAAE,GAAG,IAAI,CAAC,UAAW,CAAC,8BAA8B;QAC3D,OAAO,EAAE,IAAI,CAAC,UAAW,CAAC;KAC3B,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -2,9 +2,13 @@ import getDuration from "../../config/duration.js";
2
2
  import { getEnvs } from "../../config/envs.js";
3
3
  import AppError from "../../utils/AppError.js";
4
4
  import { signJWT } from "../../utils/handleJWT.js";
5
+ // send cookie
5
6
  export const sendCookie = ({ res, accessTokenName, accessTokenPayload, refreshTokenName, refreshTokenPayload, routeObj, jti, familyId, deviceType, }) => {
7
+ // envs
6
8
  const { ENV, domain, authConfigObj } = getEnvs();
9
+ // authConfigObj
7
10
  const { accessTokenAge, refreshTokenAge } = authConfigObj;
11
+ // if domain not found in production
8
12
  if (ENV === "production" && !domain)
9
13
  throw new AppError({
10
14
  message: "domain is required in production.",
@@ -16,6 +20,7 @@ export const sendCookie = ({ res, accessTokenName, accessTokenPayload, refreshTo
16
20
  path: routeObj.path,
17
21
  },
18
22
  });
23
+ // sign accessToken
19
24
  let accessToken = null;
20
25
  if (accessTokenName)
21
26
  accessToken = signJWT({
@@ -23,8 +28,10 @@ export const sendCookie = ({ res, accessTokenName, accessTokenPayload, refreshTo
23
28
  routeObj,
24
29
  age: accessTokenAge,
25
30
  });
31
+ // if refreshToken to send
26
32
  let refreshToken = null;
27
33
  if (refreshTokenName)
34
+ // sign refreshToken
28
35
  refreshToken = signJWT({
29
36
  routeObj,
30
37
  age: refreshTokenAge,
@@ -35,6 +42,7 @@ export const sendCookie = ({ res, accessTokenName, accessTokenPayload, refreshTo
35
42
  ...refreshTokenPayload,
36
43
  },
37
44
  });
45
+ // send access token cookie
38
46
  if (accessToken)
39
47
  res.cookie(accessTokenName, accessToken, {
40
48
  httpOnly: true,
@@ -43,6 +51,7 @@ export const sendCookie = ({ res, accessTokenName, accessTokenPayload, refreshTo
43
51
  secure: ENV === "production",
44
52
  domain: ENV === "production" ? domain : undefined,
45
53
  });
54
+ // if refreshToken to send
46
55
  if (refreshToken)
47
56
  res.cookie(refreshTokenName, refreshToken, {
48
57
  httpOnly: true,
@@ -57,6 +66,7 @@ export const sendCookie = ({ res, accessTokenName, accessTokenPayload, refreshTo
57
66
  refreshTokenAge,
58
67
  };
59
68
  };
69
+ // clear cookie
60
70
  export const clearCookie = ({ res, cookieName, routeObj, }) => {
61
71
  const { ENV, domain } = getEnvs();
62
72
  if (!ENV)
@@ -1 +1 @@
1
- {"version":3,"file":"sendCookie.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/sendCookie.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sendCookie.js","sourceRoot":"","sources":["../../../../src/js/auth/utils/sendCookie.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sendOTP.d.ts","sourceRoot":"","sources":["../../../../src/js/auth/utils/sendOTP.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAEvD,QAAA,MAAM,OAAO,GACX,OAAO,MAAM,EACb,UAAU,KAAK,KACd,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CA8C5C,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"sendOTP.d.ts","sourceRoot":"","sources":["../../../../src/js/auth/utils/sendOTP.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAKvD,QAAA,MAAM,OAAO,GACX,OAAO,MAAM,EACb,UAAU,KAAK,KACd,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CA4C5C,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -2,10 +2,13 @@ import { randomInt } from "crypto";
2
2
  import { getEnvs } from "../../config/envs.js";
3
3
  import sendEmail from "../../config/sendEmail.js";
4
4
  import AppError from "../../utils/AppError.js";
5
+ import { validateFrom } from "../../config/email.envs.js";
6
+ import { twoFactorCode } from "../../email/templates/index.js";
7
+ import { getCurrentYear } from "../../email/utils/auto-fields.js";
5
8
  const sendOTP = async (email, routeObj) => {
6
9
  const OTP = randomInt(100000, 1000000).toString();
7
10
  const otpExpiry = Date.now() + 1000 * 60 * 5;
8
- const { isOffline, adminEmailSender } = getEnvs();
11
+ const { isOffline, systemEmailSender, emailConfig } = getEnvs();
9
12
  if (!isOffline && isOffline !== false)
10
13
  throw new AppError({
11
14
  message: "isOffline is required.",
@@ -21,20 +24,18 @@ const sendOTP = async (email, routeObj) => {
21
24
  console.log(`OTP: ${OTP}`);
22
25
  return { OTP, otpExpiry };
23
26
  }
24
- const htmlBody = `<!doctype html><html><head><meta charset="UTF-8"><title>Core Computing Society - Email Verification</title></head><body style="margin:0;padding:0;font-family:Arial,sans-serif"><table width="100%" cellpadding="0" cellspacing="0" border="0" style="padding:40px 0;padding-top:0"><tr><td align="center"><table width="500" cellpadding="0" cellspacing="0" border="0" style="border-radius:12px;box-shadow:0 10px 25px rgba(0,0,0,.08);padding:40px;padding-top:10px"><tr><td align="center" style="padding-bottom:20px"><h2 style="margin:0;color:#111827;font-weight:600">Core Computing Society</h2></td></tr><tr><td align="center" style="padding-bottom:20px"><h1 style="margin:0;font-size:22px;color:#111827">Verify Your Email Address</h1></td></tr><tr><td align="center" style="padding-bottom:30px;color:#6b7280;font-size:15px;line-height:1.6">Welcome to the <strong>Core Computing Society (CCS)</strong>. Use the verification code below to verify your email address. This code will expire in <strong>5 minutes</strong>.</td></tr><tr><td align="center" style="padding-bottom:30px"><div style="display:inline-block;padding:18px 32px;font-size:28px;letter-spacing:8px;font-weight:bold;color:#111827;background:#f3f4f6;border-radius:8px;border:1px solid #e5e7eb">${OTP}</div></td></tr><tr><td align="center" style="color:#9ca3af;font-size:13px;line-height:1.5">If you didn't request this verification code, you can safely ignore this email. Never share your verification code with anyone.</td></tr><tr><td style="padding-top:30px"><hr style="border:none;border-top:1px solid #e5e7eb"></td></tr><tr><td align="center" style="padding-top:15px;font-size:12px;color:#9ca3af">© 2026 Core Computing Society. All rights reserved.</td></tr></table></td></tr></table></body></html>`;
25
- if (!adminEmailSender)
26
- throw new AppError({
27
- message: "adminEmailSender is required.",
28
- statusCode: 500,
29
- hint: "Define adminEmailSender in your environment configuration.",
30
- details: {
31
- handler: routeObj.handler,
32
- method: routeObj.method,
33
- path: routeObj.path,
34
- },
35
- });
27
+ const htmlBody = twoFactorCode({
28
+ otpCode: OTP,
29
+ expiryMinutes: new Date(otpExpiry).getMinutes() - new Date().getMinutes(),
30
+ currentYear: getCurrentYear(),
31
+ userEmail: email,
32
+ userName: "there",
33
+ ...emailConfig,
34
+ });
35
+ // validateFrom -------------------------------------------------------------------------
36
+ validateFrom(systemEmailSender);
36
37
  await sendEmail({
37
- from: adminEmailSender,
38
+ from: systemEmailSender,
38
39
  htmlBody,
39
40
  subject: "OTP Verification",
40
41
  to: email,