@ackplus/nest-auth 1.1.0 → 1.1.2

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 (645) hide show
  1. package/package.json +2 -2
  2. package/src/{index.ts → index.d.ts} +2 -18
  3. package/src/index.d.ts.map +1 -0
  4. package/src/index.js +24 -0
  5. package/src/lib/admin-console/admin-console.module.d.ts +3 -0
  6. package/src/lib/admin-console/admin-console.module.d.ts.map +1 -0
  7. package/src/lib/admin-console/admin-console.module.js +69 -0
  8. package/src/lib/admin-console/controllers/admin-auth.controller.d.ts +134 -0
  9. package/src/lib/admin-console/controllers/admin-auth.controller.d.ts.map +1 -0
  10. package/src/lib/admin-console/controllers/admin-auth.controller.js +374 -0
  11. package/src/lib/admin-console/controllers/admin-console.controller.d.ts +14 -0
  12. package/src/lib/admin-console/controllers/admin-console.controller.d.ts.map +1 -0
  13. package/src/lib/admin-console/controllers/admin-console.controller.js +87 -0
  14. package/src/lib/admin-console/controllers/admin-permissions.controller.d.ts +86 -0
  15. package/src/lib/admin-console/controllers/admin-permissions.controller.d.ts.map +1 -0
  16. package/src/lib/admin-console/controllers/admin-permissions.controller.js +195 -0
  17. package/src/lib/admin-console/controllers/admin-roles.controller.d.ts +47 -0
  18. package/src/lib/admin-console/controllers/admin-roles.controller.d.ts.map +1 -0
  19. package/src/lib/admin-console/controllers/admin-roles.controller.js +95 -0
  20. package/src/lib/admin-console/controllers/admin-tenants.controller.d.ts +44 -0
  21. package/src/lib/admin-console/controllers/admin-tenants.controller.d.ts.map +1 -0
  22. package/src/lib/admin-console/controllers/admin-tenants.controller.js +86 -0
  23. package/src/lib/admin-console/controllers/admin-users.controller.d.ts +146 -0
  24. package/src/lib/admin-console/controllers/admin-users.controller.d.ts.map +1 -0
  25. package/src/lib/admin-console/controllers/admin-users.controller.js +400 -0
  26. package/src/lib/admin-console/decorators/current-admin.decorator.d.ts +2 -0
  27. package/src/lib/admin-console/decorators/current-admin.decorator.d.ts.map +1 -0
  28. package/src/lib/admin-console/decorators/current-admin.decorator.js +8 -0
  29. package/src/lib/admin-console/dto/admin-permission.dto.d.ts +16 -0
  30. package/src/lib/admin-console/dto/admin-permission.dto.d.ts.map +1 -0
  31. package/src/lib/admin-console/dto/admin-permission.dto.js +123 -0
  32. package/src/lib/admin-console/dto/admin-role.dto.d.ts +13 -0
  33. package/src/lib/admin-console/dto/admin-role.dto.d.ts.map +1 -0
  34. package/src/lib/admin-console/dto/admin-role.dto.js +53 -0
  35. package/src/lib/admin-console/dto/admin-tenant.dto.d.ts +13 -0
  36. package/src/lib/admin-console/dto/admin-tenant.dto.d.ts.map +1 -0
  37. package/src/lib/admin-console/dto/admin-tenant.dto.js +57 -0
  38. package/src/lib/admin-console/dto/admin-user.dto.d.ts +21 -0
  39. package/src/lib/admin-console/dto/admin-user.dto.d.ts.map +1 -0
  40. package/src/lib/admin-console/dto/admin-user.dto.js +94 -0
  41. package/src/lib/admin-console/dto/create-dashboard-admin.dto.d.ts +10 -0
  42. package/src/lib/admin-console/dto/create-dashboard-admin.dto.d.ts.map +1 -0
  43. package/src/lib/admin-console/dto/create-dashboard-admin.dto.js +39 -0
  44. package/src/lib/admin-console/dto/login.dto.d.ts +5 -0
  45. package/src/lib/admin-console/dto/login.dto.d.ts.map +1 -0
  46. package/src/lib/admin-console/dto/login.dto.js +17 -0
  47. package/src/lib/admin-console/dto/reset-password.dto.d.ts +6 -0
  48. package/src/lib/admin-console/dto/reset-password.dto.d.ts.map +1 -0
  49. package/src/lib/admin-console/dto/reset-password.dto.js +26 -0
  50. package/src/lib/admin-console/dto/setup-admin.dto.d.ts +7 -0
  51. package/src/lib/admin-console/dto/setup-admin.dto.d.ts.map +1 -0
  52. package/src/lib/admin-console/dto/setup-admin.dto.js +29 -0
  53. package/src/lib/admin-console/dto/signup.dto.d.ts +8 -0
  54. package/src/lib/admin-console/dto/signup.dto.d.ts.map +1 -0
  55. package/src/lib/admin-console/dto/signup.dto.js +58 -0
  56. package/src/lib/admin-console/entities/admin-user.entity.d.ts +16 -0
  57. package/src/lib/admin-console/entities/admin-user.entity.d.ts.map +1 -0
  58. package/src/lib/admin-console/entities/admin-user.entity.js +86 -0
  59. package/src/lib/admin-console/guards/admin-session.guard.d.ts +17 -0
  60. package/src/lib/admin-console/guards/admin-session.guard.d.ts.map +1 -0
  61. package/src/lib/admin-console/guards/admin-session.guard.js +40 -0
  62. package/src/lib/admin-console/services/admin-auth.service.d.ts +22 -0
  63. package/src/lib/admin-console/services/admin-auth.service.d.ts.map +1 -0
  64. package/src/lib/admin-console/services/admin-auth.service.js +77 -0
  65. package/src/lib/admin-console/services/admin-console-config.service.d.ts +17 -0
  66. package/src/lib/admin-console/services/admin-console-config.service.d.ts.map +1 -0
  67. package/src/lib/admin-console/services/admin-console-config.service.js +58 -0
  68. package/src/lib/admin-console/services/admin-session.service.d.ts +27 -0
  69. package/src/lib/admin-console/services/admin-session.service.d.ts.map +1 -0
  70. package/src/lib/admin-console/services/admin-session.service.js +94 -0
  71. package/src/lib/admin-console/services/admin-user.service.d.ts +24 -0
  72. package/src/lib/admin-console/services/admin-user.service.d.ts.map +1 -0
  73. package/src/lib/admin-console/services/admin-user.service.js +87 -0
  74. package/src/lib/auth/auth.module.d.ts +3 -0
  75. package/src/lib/auth/auth.module.d.ts.map +1 -0
  76. package/src/lib/auth/auth.module.js +64 -0
  77. package/src/lib/auth/controllers/auth.controller.d.ts +67 -0
  78. package/src/lib/auth/controllers/auth.controller.d.ts.map +1 -0
  79. package/src/lib/auth/controllers/auth.controller.js +471 -0
  80. package/src/lib/auth/controllers/mfa.controller.d.ts +34 -0
  81. package/src/lib/auth/controllers/mfa.controller.d.ts.map +1 -0
  82. package/src/lib/auth/controllers/mfa.controller.js +230 -0
  83. package/src/lib/auth/dto/credentials/email-credentials.dto.d.ts +8 -0
  84. package/src/lib/auth/dto/credentials/email-credentials.dto.d.ts.map +1 -0
  85. package/src/lib/auth/dto/credentials/email-credentials.dto.js +31 -0
  86. package/src/lib/auth/dto/credentials/phone-credentials.dto.d.ts +8 -0
  87. package/src/lib/auth/dto/credentials/phone-credentials.dto.d.ts.map +1 -0
  88. package/src/lib/auth/dto/credentials/phone-credentials.dto.js +31 -0
  89. package/src/lib/auth/dto/credentials/social-credentials.dto.d.ts +7 -0
  90. package/src/lib/auth/dto/credentials/social-credentials.dto.d.ts.map +1 -0
  91. package/src/lib/auth/dto/credentials/social-credentials.dto.js +21 -0
  92. package/src/lib/auth/dto/index.d.ts +1 -0
  93. package/src/lib/auth/dto/index.d.ts.map +1 -0
  94. package/src/lib/auth/dto/index.js +0 -0
  95. package/src/lib/auth/dto/requests/change-password.request.dto.d.ts +5 -0
  96. package/src/lib/auth/dto/requests/change-password.request.dto.d.ts.map +1 -0
  97. package/src/lib/auth/dto/requests/change-password.request.dto.js +42 -0
  98. package/src/lib/auth/dto/requests/forgot-password.request.dto.d.ts +6 -0
  99. package/src/lib/auth/dto/requests/forgot-password.request.dto.d.ts.map +1 -0
  100. package/src/lib/auth/dto/requests/forgot-password.request.dto.js +38 -0
  101. package/src/lib/auth/dto/requests/initialize-admin.request.dto.d.ts +8 -0
  102. package/src/lib/auth/dto/requests/initialize-admin.request.dto.d.ts.map +1 -0
  103. package/src/lib/auth/dto/requests/initialize-admin.request.dto.js +58 -0
  104. package/src/lib/auth/dto/requests/login.request.dto.d.ts +13 -0
  105. package/src/lib/auth/dto/requests/login.request.dto.d.ts.map +1 -0
  106. package/src/lib/auth/dto/requests/login.request.dto.js +75 -0
  107. package/src/lib/auth/dto/requests/refresh-token.request.dto.d.ts +4 -0
  108. package/src/lib/auth/dto/requests/refresh-token.request.dto.d.ts.map +1 -0
  109. package/src/lib/auth/dto/requests/refresh-token.request.dto.js +18 -0
  110. package/src/lib/auth/dto/requests/reset-password-with-token.request.dto.d.ts +5 -0
  111. package/src/lib/auth/dto/requests/reset-password-with-token.request.dto.d.ts.map +1 -0
  112. package/src/lib/auth/dto/requests/reset-password-with-token.request.dto.js +29 -0
  113. package/src/lib/auth/dto/requests/reset-password.request.dto.d.ts +8 -0
  114. package/src/lib/auth/dto/requests/reset-password.request.dto.d.ts.map +1 -0
  115. package/src/lib/auth/dto/requests/reset-password.request.dto.js +60 -0
  116. package/src/lib/auth/dto/requests/send-email-verification.request.dto.d.ts +4 -0
  117. package/src/lib/auth/dto/requests/send-email-verification.request.dto.d.ts.map +1 -0
  118. package/src/lib/auth/dto/requests/send-email-verification.request.dto.js +18 -0
  119. package/src/lib/auth/dto/requests/send-mfa-code.request.dto.d.ts +5 -0
  120. package/src/lib/auth/dto/requests/send-mfa-code.request.dto.d.ts.map +1 -0
  121. package/src/lib/auth/dto/requests/send-mfa-code.request.dto.js +25 -0
  122. package/src/lib/auth/dto/requests/signup.request.dto.d.ts +8 -0
  123. package/src/lib/auth/dto/requests/signup.request.dto.d.ts.map +1 -0
  124. package/src/lib/auth/dto/requests/signup.request.dto.js +49 -0
  125. package/src/lib/auth/dto/requests/toggle-mfa.request.dto.d.ts +4 -0
  126. package/src/lib/auth/dto/requests/toggle-mfa.request.dto.d.ts.map +1 -0
  127. package/src/lib/auth/dto/requests/toggle-mfa.request.dto.js +18 -0
  128. package/src/lib/auth/dto/requests/verify-2fa.request.dto.d.ts +6 -0
  129. package/src/lib/auth/dto/requests/verify-2fa.request.dto.d.ts.map +1 -0
  130. package/src/lib/auth/dto/requests/verify-2fa.request.dto.js +31 -0
  131. package/src/lib/auth/dto/requests/verify-email.request.dto.d.ts +5 -0
  132. package/src/lib/auth/dto/requests/verify-email.request.dto.d.ts.map +1 -0
  133. package/src/lib/auth/dto/requests/verify-email.request.dto.js +29 -0
  134. package/src/lib/auth/dto/requests/verify-forgot-password-otp-request-dto.d.ts +7 -0
  135. package/src/lib/auth/dto/requests/verify-forgot-password-otp-request-dto.d.ts.map +1 -0
  136. package/src/lib/auth/dto/requests/verify-forgot-password-otp-request-dto.js +49 -0
  137. package/src/lib/auth/dto/requests/verify-totp-setup.request.dto.d.ts +5 -0
  138. package/src/lib/auth/dto/requests/verify-totp-setup.request.dto.d.ts.map +1 -0
  139. package/src/lib/auth/dto/requests/verify-totp-setup.request.dto.js +29 -0
  140. package/src/lib/auth/dto/responses/auth-cookie.response.dto.d.ts +41 -0
  141. package/src/lib/auth/dto/responses/auth-cookie.response.dto.d.ts.map +1 -0
  142. package/src/lib/auth/dto/responses/{auth-cookie.response.dto.ts → auth-cookie.response.dto.js} +18 -11
  143. package/src/lib/auth/dto/responses/auth-success.response.dto.d.ts +41 -0
  144. package/src/lib/auth/dto/responses/auth-success.response.dto.d.ts.map +1 -0
  145. package/src/lib/auth/dto/responses/{auth-success.response.dto.ts → auth-success.response.dto.js} +18 -11
  146. package/src/lib/auth/dto/responses/auth.response.dto.d.ts +40 -0
  147. package/src/lib/auth/dto/responses/auth.response.dto.d.ts.map +1 -0
  148. package/src/lib/auth/dto/responses/auth.response.dto.js +112 -0
  149. package/src/lib/auth/dto/responses/client-config.response.dto.d.ts +58 -0
  150. package/src/lib/auth/dto/responses/client-config.response.dto.d.ts.map +1 -0
  151. package/src/lib/auth/dto/responses/client-config.response.dto.js +202 -0
  152. package/src/lib/auth/dto/responses/initialize-admin.response.dto.d.ts +7 -0
  153. package/src/lib/auth/dto/responses/initialize-admin.response.dto.d.ts.map +1 -0
  154. package/src/lib/auth/dto/responses/initialize-admin.response.dto.js +30 -0
  155. package/src/lib/auth/dto/responses/mfa-code-response.dto.d.ts +7 -0
  156. package/src/lib/auth/dto/responses/mfa-code-response.dto.d.ts.map +1 -0
  157. package/src/lib/auth/dto/responses/mfa-code-response.dto.js +36 -0
  158. package/src/lib/auth/dto/responses/mfa-status.response.dto.d.ts +19 -0
  159. package/src/lib/auth/dto/responses/mfa-status.response.dto.d.ts.map +1 -0
  160. package/src/lib/auth/dto/responses/mfa-status.response.dto.js +108 -0
  161. package/src/lib/auth/dto/responses/verify-otp.response.dto.d.ts +5 -0
  162. package/src/lib/auth/dto/responses/verify-otp.response.dto.d.ts.map +1 -0
  163. package/src/lib/auth/dto/responses/verify-otp.response.dto.js +16 -0
  164. package/src/lib/auth/entities/mfa-secret.entity.d.ts +13 -0
  165. package/src/lib/auth/entities/mfa-secret.entity.d.ts.map +1 -0
  166. package/src/lib/auth/entities/mfa-secret.entity.js +49 -0
  167. package/src/lib/auth/entities/otp.entity.d.ts +14 -0
  168. package/src/lib/auth/entities/otp.entity.d.ts.map +1 -0
  169. package/src/lib/auth/entities/otp.entity.js +49 -0
  170. package/src/lib/auth/events/{logged-out-all.event.ts → logged-out-all.event.d.ts} +4 -6
  171. package/src/lib/auth/events/logged-out-all.event.d.ts.map +1 -0
  172. package/src/lib/auth/events/logged-out-all.event.js +9 -0
  173. package/src/lib/auth/events/{logged-out.event.ts → logged-out.event.d.ts} +4 -5
  174. package/src/lib/auth/events/logged-out.event.d.ts.map +1 -0
  175. package/src/lib/auth/events/logged-out.event.js +9 -0
  176. package/src/lib/auth/events/{password-reset-requested.event.ts → password-reset-requested.event.d.ts} +4 -6
  177. package/src/lib/auth/events/password-reset-requested.event.d.ts.map +1 -0
  178. package/src/lib/auth/events/password-reset-requested.event.js +9 -0
  179. package/src/lib/auth/events/{password-reset.event.ts → password-reset.event.d.ts} +4 -6
  180. package/src/lib/auth/events/password-reset.event.d.ts.map +1 -0
  181. package/src/lib/auth/events/password-reset.event.js +9 -0
  182. package/src/lib/auth/events/{user-2fa-verified.event.ts → user-2fa-verified.event.d.ts} +4 -6
  183. package/src/lib/auth/events/user-2fa-verified.event.d.ts.map +1 -0
  184. package/src/lib/auth/events/user-2fa-verified.event.js +9 -0
  185. package/src/lib/auth/events/{user-logged-in.event.ts → user-logged-in.event.d.ts} +4 -7
  186. package/src/lib/auth/events/user-logged-in.event.d.ts.map +1 -0
  187. package/src/lib/auth/events/user-logged-in.event.js +10 -0
  188. package/src/lib/auth/events/{user-refresh-token.event.ts → user-refresh-token.event.d.ts} +4 -6
  189. package/src/lib/auth/events/user-refresh-token.event.d.ts.map +1 -0
  190. package/src/lib/auth/events/user-refresh-token.event.js +9 -0
  191. package/src/lib/auth/events/{user-registered.event.ts → user-registered.event.d.ts} +4 -7
  192. package/src/lib/auth/events/user-registered.event.d.ts.map +1 -0
  193. package/src/lib/auth/events/user-registered.event.js +10 -0
  194. package/src/lib/auth/guards/auth.guard.d.ts +56 -0
  195. package/src/lib/auth/guards/auth.guard.d.ts.map +1 -0
  196. package/src/lib/auth/guards/{auth.guard.ts → auth.guard.js} +92 -135
  197. package/src/lib/auth/{index.ts → index.d.ts} +1 -13
  198. package/src/lib/auth/index.d.ts.map +1 -0
  199. package/src/lib/auth/index.js +51 -0
  200. package/src/lib/auth/interceptors/refresh-token.interceptor.d.ts +43 -0
  201. package/src/lib/auth/interceptors/refresh-token.interceptor.d.ts.map +1 -0
  202. package/src/lib/auth/interceptors/{refresh-token.interceptor.ts → refresh-token.interceptor.js} +38 -40
  203. package/src/lib/auth/services/auth.service.d.ts +67 -0
  204. package/src/lib/auth/services/auth.service.d.ts.map +1 -0
  205. package/src/lib/auth/services/{auth.service.ts → auth.service.js} +262 -475
  206. package/src/lib/auth/services/client-config.service.d.ts +12 -0
  207. package/src/lib/auth/services/client-config.service.d.ts.map +1 -0
  208. package/src/lib/auth/services/{client-config.service.ts → client-config.service.js} +28 -33
  209. package/src/lib/auth/services/cookie.service.d.ts +10 -0
  210. package/src/lib/auth/services/cookie.service.d.ts.map +1 -0
  211. package/src/lib/auth/services/cookie.service.js +42 -0
  212. package/src/lib/auth/services/mfa.service.d.ts +45 -0
  213. package/src/lib/auth/services/mfa.service.d.ts.map +1 -0
  214. package/src/lib/auth/services/{mfa.service.ts → mfa.service.js} +105 -184
  215. package/src/lib/auth.constants.d.ts +43 -0
  216. package/src/lib/auth.constants.d.ts.map +1 -0
  217. package/src/lib/auth.constants.js +54 -0
  218. package/src/lib/core/core.module.d.ts +7 -0
  219. package/src/lib/core/core.module.d.ts.map +1 -0
  220. package/src/lib/core/core.module.js +57 -0
  221. package/src/lib/core/decorators/{auth.decorator.ts → auth.decorator.d.ts} +2 -7
  222. package/src/lib/core/decorators/auth.decorator.d.ts.map +1 -0
  223. package/src/lib/core/decorators/auth.decorator.js +38 -0
  224. package/src/lib/core/decorators/permissions.decorator.d.ts +8 -0
  225. package/src/lib/core/decorators/permissions.decorator.d.ts.map +1 -0
  226. package/src/lib/core/decorators/permissions.decorator.js +18 -0
  227. package/src/lib/core/decorators/{public.decorator.ts → public.decorator.d.ts} +3 -5
  228. package/src/lib/core/decorators/public.decorator.d.ts.map +1 -0
  229. package/src/lib/core/decorators/public.decorator.js +35 -0
  230. package/src/lib/core/decorators/role.decorator.d.ts +4 -0
  231. package/src/lib/core/decorators/role.decorator.d.ts.map +1 -0
  232. package/src/lib/core/decorators/role.decorator.js +13 -0
  233. package/src/lib/core/decorators/skip-mfa.decorator.d.ts +3 -0
  234. package/src/lib/core/decorators/skip-mfa.decorator.d.ts.map +1 -0
  235. package/src/lib/core/decorators/skip-mfa.decorator.js +7 -0
  236. package/src/lib/core/dto/message.response.dto.d.ts +4 -0
  237. package/src/lib/core/dto/message.response.dto.d.ts.map +1 -0
  238. package/src/lib/core/dto/message.response.dto.js +12 -0
  239. package/src/lib/core/{entities.ts → entities.d.ts} +2 -14
  240. package/src/lib/core/entities.d.ts.map +1 -0
  241. package/src/lib/core/entities.js +37 -0
  242. package/src/lib/core/{index.ts → index.d.ts} +1 -15
  243. package/src/lib/core/index.d.ts.map +1 -0
  244. package/src/lib/core/index.js +35 -0
  245. package/src/lib/core/interfaces/{auth-module-options.interface.ts → auth-module-options.interface.d.ts} +13 -16
  246. package/src/lib/core/interfaces/auth-module-options.interface.d.ts.map +1 -0
  247. package/src/lib/core/interfaces/auth-module-options.interface.js +2 -0
  248. package/src/lib/core/interfaces/mfa-options.interface.d.ts +26 -0
  249. package/src/lib/core/interfaces/mfa-options.interface.d.ts.map +1 -0
  250. package/src/lib/core/interfaces/mfa-options.interface.js +9 -0
  251. package/src/lib/core/interfaces/otp.interface.d.ts +6 -0
  252. package/src/lib/core/interfaces/otp.interface.d.ts.map +1 -0
  253. package/src/lib/core/interfaces/otp.interface.js +9 -0
  254. package/src/lib/core/interfaces/session-options.interface.d.ts +16 -0
  255. package/src/lib/core/interfaces/session-options.interface.d.ts.map +1 -0
  256. package/src/lib/core/interfaces/session-options.interface.js +9 -0
  257. package/src/lib/core/interfaces/{token-payload.interface.ts → token-payload.interface.d.ts} +2 -4
  258. package/src/lib/core/interfaces/token-payload.interface.d.ts.map +1 -0
  259. package/src/lib/core/interfaces/token-payload.interface.js +2 -0
  260. package/src/lib/core/providers/apple-auth.provider.d.ts +19 -0
  261. package/src/lib/core/providers/apple-auth.provider.d.ts.map +1 -0
  262. package/src/lib/core/providers/apple-auth.provider.js +56 -0
  263. package/src/lib/core/providers/base-auth.provider.d.ts +33 -0
  264. package/src/lib/core/providers/base-auth.provider.d.ts.map +1 -0
  265. package/src/lib/core/providers/base-auth.provider.js +48 -0
  266. package/src/lib/core/providers/email-auth.provider.d.ts +31 -0
  267. package/src/lib/core/providers/email-auth.provider.d.ts.map +1 -0
  268. package/src/lib/core/providers/email-auth.provider.js +66 -0
  269. package/src/lib/core/providers/facebook-auth.provider.d.ts +19 -0
  270. package/src/lib/core/providers/facebook-auth.provider.d.ts.map +1 -0
  271. package/src/lib/core/providers/facebook-auth.provider.js +55 -0
  272. package/src/lib/core/providers/github-auth.provider.d.ts +24 -0
  273. package/src/lib/core/providers/github-auth.provider.d.ts.map +1 -0
  274. package/src/lib/core/providers/{github-auth.provider.ts → github-auth.provider.js} +31 -36
  275. package/src/lib/core/providers/google-auth.provider.d.ts +22 -0
  276. package/src/lib/core/providers/google-auth.provider.d.ts.map +1 -0
  277. package/src/lib/core/providers/google-auth.provider.js +57 -0
  278. package/src/lib/core/providers/jwt-auth.provider.d.ts +34 -0
  279. package/src/lib/core/providers/jwt-auth.provider.d.ts.map +1 -0
  280. package/src/lib/core/providers/jwt-auth.provider.js +49 -0
  281. package/src/lib/core/providers/phone-auth.provider.d.ts +19 -0
  282. package/src/lib/core/providers/phone-auth.provider.d.ts.map +1 -0
  283. package/src/lib/core/providers/phone-auth.provider.js +42 -0
  284. package/src/lib/core/services/auth-config.service.d.ts +39 -0
  285. package/src/lib/core/services/auth-config.service.d.ts.map +1 -0
  286. package/src/lib/core/services/auth-config.service.js +167 -0
  287. package/src/lib/core/services/auth-provider-registry.service.d.ts +42 -0
  288. package/src/lib/core/services/auth-provider-registry.service.d.ts.map +1 -0
  289. package/src/lib/core/services/auth-provider-registry.service.js +91 -0
  290. package/src/lib/core/services/debug-logger.service.d.ts +39 -0
  291. package/src/lib/core/services/debug-logger.service.d.ts.map +1 -0
  292. package/src/lib/core/services/{debug-logger.service.ts → debug-logger.service.js} +57 -88
  293. package/src/lib/core/services/initialization.service.d.ts +11 -0
  294. package/src/lib/core/services/initialization.service.d.ts.map +1 -0
  295. package/src/lib/core/services/initialization.service.js +35 -0
  296. package/src/lib/core/services/jwt.service.d.ts +23 -0
  297. package/src/lib/core/services/jwt.service.d.ts.map +1 -0
  298. package/src/lib/core/services/jwt.service.js +119 -0
  299. package/src/lib/nest-auth.module.d.ts +11 -0
  300. package/src/lib/nest-auth.module.d.ts.map +1 -0
  301. package/src/lib/nest-auth.module.js +144 -0
  302. package/src/lib/permission/entities/permission.entity.d.ts +27 -0
  303. package/src/lib/permission/entities/permission.entity.d.ts.map +1 -0
  304. package/src/lib/permission/entities/permission.entity.js +62 -0
  305. package/src/lib/permission/{index.ts → index.d.ts} +1 -1
  306. package/src/lib/permission/index.d.ts.map +1 -0
  307. package/src/lib/permission/index.js +6 -0
  308. package/src/lib/permission/permission.module.d.ts +3 -0
  309. package/src/lib/permission/permission.module.d.ts.map +1 -0
  310. package/src/lib/permission/permission.module.js +20 -0
  311. package/src/lib/permission/services/permission.service.d.ts +44 -0
  312. package/src/lib/permission/services/permission.service.d.ts.map +1 -0
  313. package/src/lib/permission/services/{permission.service.ts → permission.service.js} +48 -108
  314. package/src/lib/request-context/{index.ts → index.d.ts} +1 -0
  315. package/src/lib/request-context/index.d.ts.map +1 -0
  316. package/src/lib/request-context/index.js +5 -0
  317. package/src/lib/request-context/request-context.d.ts +23 -0
  318. package/src/lib/request-context/request-context.d.ts.map +1 -0
  319. package/src/lib/request-context/{request-context.ts → request-context.js} +26 -44
  320. package/src/lib/request-context/request-context.middleware.d.ts +5 -0
  321. package/src/lib/request-context/request-context.middleware.d.ts.map +1 -0
  322. package/src/lib/request-context/request-context.middleware.js +15 -0
  323. package/src/lib/role/entities/role.entity.d.ts +21 -0
  324. package/src/lib/role/entities/role.entity.d.ts.map +1 -0
  325. package/src/lib/role/entities/role.entity.js +110 -0
  326. package/src/lib/role/{index.ts → index.d.ts} +1 -2
  327. package/src/lib/role/index.d.ts.map +1 -0
  328. package/src/lib/role/index.js +5 -0
  329. package/src/lib/role/role.module.d.ts +3 -0
  330. package/src/lib/role/role.module.d.ts.map +1 -0
  331. package/src/lib/role/role.module.js +22 -0
  332. package/src/lib/role/services/role.service.d.ts +21 -0
  333. package/src/lib/role/services/role.service.d.ts.map +1 -0
  334. package/src/lib/role/services/{role.service.ts → role.service.js} +51 -107
  335. package/src/lib/session/entities/session.entity.d.ts +17 -0
  336. package/src/lib/session/entities/session.entity.d.ts.map +1 -0
  337. package/src/lib/session/entities/session.entity.js +62 -0
  338. package/src/lib/session/{index.ts → index.d.ts} +1 -11
  339. package/src/lib/session/index.d.ts.map +1 -0
  340. package/src/lib/session/index.js +18 -0
  341. package/src/lib/session/interfaces/{session-repository.interface.ts → session-repository.interface.d.ts} +1 -10
  342. package/src/lib/session/interfaces/session-repository.interface.d.ts.map +1 -0
  343. package/src/lib/session/interfaces/session-repository.interface.js +2 -0
  344. package/src/lib/session/repositories/{base-session.repository.ts → base-session.repository.d.ts} +7 -41
  345. package/src/lib/session/repositories/base-session.repository.d.ts.map +1 -0
  346. package/src/lib/session/repositories/base-session.repository.js +59 -0
  347. package/src/lib/session/repositories/memory-session.repository.d.ts +27 -0
  348. package/src/lib/session/repositories/memory-session.repository.d.ts.map +1 -0
  349. package/src/lib/session/repositories/{memory-session.repository.ts → memory-session.repository.js} +41 -61
  350. package/src/lib/session/repositories/redis-session.repository.d.ts +30 -0
  351. package/src/lib/session/repositories/redis-session.repository.d.ts.map +1 -0
  352. package/src/lib/session/repositories/{redis-session.repository.ts → redis-session.repository.js} +45 -75
  353. package/src/lib/session/repositories/typeorm-session.repository.d.ts +23 -0
  354. package/src/lib/session/repositories/typeorm-session.repository.d.ts.map +1 -0
  355. package/src/lib/session/repositories/typeorm-session.repository.js +79 -0
  356. package/src/lib/session/services/session-manager.service.d.ts +100 -0
  357. package/src/lib/session/services/session-manager.service.d.ts.map +1 -0
  358. package/src/lib/session/services/{session-manager.service.ts → session-manager.service.js} +54 -94
  359. package/src/lib/session/session.module.d.ts +14 -0
  360. package/src/lib/session/session.module.d.ts.map +1 -0
  361. package/src/lib/session/session.module.js +96 -0
  362. package/src/lib/session/utils/session.util.d.ts +73 -0
  363. package/src/lib/session/utils/session.util.d.ts.map +1 -0
  364. package/src/lib/session/utils/{session.util.ts → session.util.js} +24 -63
  365. package/src/lib/tenant/entities/{tenant.entity.ts → tenant.entity.d.ts} +2 -21
  366. package/src/lib/tenant/entities/tenant.entity.d.ts.map +1 -0
  367. package/src/lib/tenant/entities/tenant.entity.js +47 -0
  368. package/src/lib/tenant/events/tenant-created.event.d.ts +9 -0
  369. package/src/lib/tenant/events/tenant-created.event.d.ts.map +1 -0
  370. package/src/lib/tenant/events/tenant-created.event.js +9 -0
  371. package/src/lib/tenant/events/tenant-deleted.event.d.ts +9 -0
  372. package/src/lib/tenant/events/tenant-deleted.event.d.ts.map +1 -0
  373. package/src/lib/tenant/events/tenant-deleted.event.js +9 -0
  374. package/src/lib/tenant/events/tenant-updated.event.d.ts +10 -0
  375. package/src/lib/tenant/events/tenant-updated.event.d.ts.map +1 -0
  376. package/src/lib/tenant/events/tenant-updated.event.js +9 -0
  377. package/src/lib/tenant/{index.ts → index.d.ts} +1 -2
  378. package/src/lib/tenant/index.d.ts.map +1 -0
  379. package/src/lib/tenant/index.js +14 -0
  380. package/src/lib/tenant/services/tenant.service.d.ts +35 -0
  381. package/src/lib/tenant/services/tenant.service.d.ts.map +1 -0
  382. package/src/lib/tenant/services/{tenant.service.ts → tenant.service.js} +83 -137
  383. package/src/lib/tenant/tenant.module.d.ts +3 -0
  384. package/src/lib/tenant/tenant.module.d.ts.map +1 -0
  385. package/src/lib/tenant/tenant.module.js +26 -0
  386. package/src/lib/user/dto/requests/update-user.dto.d.ts +6 -0
  387. package/src/lib/user/dto/requests/update-user.dto.d.ts.map +1 -0
  388. package/src/lib/user/dto/requests/update-user.dto.js +23 -0
  389. package/src/lib/user/entities/access-key.entity.d.ts +17 -0
  390. package/src/lib/user/entities/access-key.entity.d.ts.map +1 -0
  391. package/src/lib/user/entities/access-key.entity.js +62 -0
  392. package/src/lib/user/entities/identity.entity.d.ts +13 -0
  393. package/src/lib/user/entities/identity.entity.d.ts.map +1 -0
  394. package/src/lib/user/entities/identity.entity.js +46 -0
  395. package/src/lib/user/entities/user.entity.d.ts +40 -0
  396. package/src/lib/user/entities/user.entity.d.ts.map +1 -0
  397. package/src/lib/user/entities/user.entity.js +218 -0
  398. package/src/lib/user/events/user-created.event.d.ts +10 -0
  399. package/src/lib/user/events/user-created.event.d.ts.map +1 -0
  400. package/src/lib/user/events/user-created.event.js +9 -0
  401. package/src/lib/user/events/user-deleted.event.d.ts +10 -0
  402. package/src/lib/user/events/user-deleted.event.d.ts.map +1 -0
  403. package/src/lib/user/events/user-deleted.event.js +9 -0
  404. package/src/lib/user/events/user-updated.event.d.ts +11 -0
  405. package/src/lib/user/events/user-updated.event.d.ts.map +1 -0
  406. package/src/lib/user/events/user-updated.event.js +9 -0
  407. package/src/lib/user/{index.ts → index.d.ts} +1 -5
  408. package/src/lib/user/index.d.ts.map +1 -0
  409. package/src/lib/user/index.js +12 -0
  410. package/src/lib/user/services/access-key.service.d.ts +20 -0
  411. package/src/lib/user/services/access-key.service.d.ts.map +1 -0
  412. package/src/lib/user/services/access-key.service.js +121 -0
  413. package/src/lib/user/services/user.service.d.ts +28 -0
  414. package/src/lib/user/services/user.service.d.ts.map +1 -0
  415. package/src/lib/user/services/{user.service.ts → user.service.js} +92 -164
  416. package/src/lib/user/user.module.d.ts +3 -0
  417. package/src/lib/user/user.module.d.ts.map +1 -0
  418. package/src/lib/user/user.module.js +33 -0
  419. package/src/lib/utils/database.utils.d.ts +3 -0
  420. package/src/lib/utils/database.utils.d.ts.map +1 -0
  421. package/src/lib/utils/database.utils.js +7 -0
  422. package/src/lib/utils/date.util.d.ts +41 -0
  423. package/src/lib/utils/date.util.d.ts.map +1 -0
  424. package/src/lib/utils/{date.util.ts → date.util.js} +28 -35
  425. package/src/lib/utils/device.util.d.ts +50 -0
  426. package/src/lib/utils/device.util.d.ts.map +1 -0
  427. package/src/lib/utils/device.util.js +114 -0
  428. package/src/lib/utils/{index.ts → index.d.ts} +1 -0
  429. package/src/lib/utils/index.d.ts.map +1 -0
  430. package/src/lib/utils/index.js +9 -0
  431. package/src/lib/utils/otp.d.ts +2 -0
  432. package/src/lib/utils/otp.d.ts.map +1 -0
  433. package/src/lib/utils/otp.js +6 -0
  434. package/src/lib/utils/security.util.d.ts +11 -0
  435. package/src/lib/utils/security.util.d.ts.map +1 -0
  436. package/src/lib/utils/{security.util.ts → security.util.js} +10 -9
  437. package/src/lib/utils/slug.util.d.ts +38 -0
  438. package/src/lib/utils/slug.util.d.ts.map +1 -0
  439. package/src/lib/utils/{slug.util.ts → slug.util.js} +10 -9
  440. package/eslint.config.mjs +0 -59
  441. package/jest.config.ts +0 -10
  442. package/project.json +0 -86
  443. package/src/lib/admin-console/admin-console.module.ts +0 -62
  444. package/src/lib/admin-console/controllers/admin-auth.controller.ts +0 -339
  445. package/src/lib/admin-console/controllers/admin-console.controller.ts +0 -82
  446. package/src/lib/admin-console/controllers/admin-permissions.controller.ts +0 -180
  447. package/src/lib/admin-console/controllers/admin-roles.controller.ts +0 -89
  448. package/src/lib/admin-console/controllers/admin-tenants.controller.ts +0 -68
  449. package/src/lib/admin-console/controllers/admin-users.controller.ts +0 -379
  450. package/src/lib/admin-console/decorators/current-admin.decorator.ts +0 -9
  451. package/src/lib/admin-console/dto/admin-permission.dto.ts +0 -106
  452. package/src/lib/admin-console/dto/admin-role.dto.ts +0 -45
  453. package/src/lib/admin-console/dto/admin-tenant.dto.ts +0 -43
  454. package/src/lib/admin-console/dto/admin-user.dto.ts +0 -87
  455. package/src/lib/admin-console/dto/create-dashboard-admin.dto.ts +0 -34
  456. package/src/lib/admin-console/dto/login.dto.ts +0 -10
  457. package/src/lib/admin-console/dto/reset-password.dto.ts +0 -21
  458. package/src/lib/admin-console/dto/setup-admin.dto.ts +0 -23
  459. package/src/lib/admin-console/dto/signup.dto.ts +0 -51
  460. package/src/lib/admin-console/entities/admin-user.entity.ts +0 -74
  461. package/src/lib/admin-console/guards/admin-session.guard.ts +0 -47
  462. package/src/lib/admin-console/services/admin-auth.service.ts +0 -82
  463. package/src/lib/admin-console/services/admin-console-config.service.ts +0 -62
  464. package/src/lib/admin-console/services/admin-session.service.ts +0 -106
  465. package/src/lib/admin-console/services/admin-user.service.ts +0 -96
  466. package/src/lib/auth/auth.module.ts +0 -58
  467. package/src/lib/auth/controllers/auth.controller.ts +0 -393
  468. package/src/lib/auth/controllers/mfa.controller.ts +0 -200
  469. package/src/lib/auth/dto/credentials/email-credentials.dto.ts +0 -24
  470. package/src/lib/auth/dto/credentials/phone-credentials.dto.ts +0 -24
  471. package/src/lib/auth/dto/credentials/social-credentials.dto.ts +0 -15
  472. package/src/lib/auth/dto/index.ts +0 -1
  473. package/src/lib/auth/dto/requests/change-password.request.dto.ts +0 -34
  474. package/src/lib/auth/dto/requests/forgot-password.request.dto.ts +0 -30
  475. package/src/lib/auth/dto/requests/initialize-admin.request.dto.ts +0 -51
  476. package/src/lib/auth/dto/requests/login.request.dto.ts +0 -65
  477. package/src/lib/auth/dto/requests/refresh-token.request.dto.ts +0 -12
  478. package/src/lib/auth/dto/requests/reset-password-with-token.request.dto.ts +0 -22
  479. package/src/lib/auth/dto/requests/reset-password.request.dto.ts +0 -50
  480. package/src/lib/auth/dto/requests/send-email-verification.request.dto.ts +0 -12
  481. package/src/lib/auth/dto/requests/send-mfa-code.request.dto.ts +0 -19
  482. package/src/lib/auth/dto/requests/signup.request.dto.ts +0 -42
  483. package/src/lib/auth/dto/requests/toggle-mfa.request.dto.ts +0 -12
  484. package/src/lib/auth/dto/requests/verify-2fa.request.dto.ts +0 -24
  485. package/src/lib/auth/dto/requests/verify-email.request.dto.ts +0 -22
  486. package/src/lib/auth/dto/requests/verify-forgot-password-otp-request-dto.ts +0 -41
  487. package/src/lib/auth/dto/requests/verify-totp-setup.request.dto.ts +0 -22
  488. package/src/lib/auth/dto/responses/auth.response.dto.ts +0 -99
  489. package/src/lib/auth/dto/responses/client-config.response.dto.ts +0 -153
  490. package/src/lib/auth/dto/responses/initialize-admin.response.dto.ts +0 -22
  491. package/src/lib/auth/dto/responses/mfa-code-response.dto.ts +0 -27
  492. package/src/lib/auth/dto/responses/mfa-status.response.dto.ts +0 -89
  493. package/src/lib/auth/dto/responses/verify-otp.response.dto.ts +0 -9
  494. package/src/lib/auth/entities/mfa-secret.entity.ts +0 -33
  495. package/src/lib/auth/entities/otp.entity.ts +0 -33
  496. package/src/lib/auth/services/cookie.service.ts +0 -43
  497. package/src/lib/auth.constants.ts +0 -63
  498. package/src/lib/core/core.module.ts +0 -50
  499. package/src/lib/core/decorators/permissions.decorator.ts +0 -17
  500. package/src/lib/core/decorators/role.decorator.ts +0 -12
  501. package/src/lib/core/decorators/skip-mfa.decorator.ts +0 -4
  502. package/src/lib/core/dto/message.response.dto.ts +0 -6
  503. package/src/lib/core/interfaces/mfa-options.interface.ts +0 -46
  504. package/src/lib/core/interfaces/otp.interface.ts +0 -6
  505. package/src/lib/core/interfaces/session-options.interface.ts +0 -19
  506. package/src/lib/core/providers/apple-auth.provider.ts +0 -61
  507. package/src/lib/core/providers/base-auth.provider.ts +0 -74
  508. package/src/lib/core/providers/email-auth.provider.ts +0 -71
  509. package/src/lib/core/providers/facebook-auth.provider.ts +0 -55
  510. package/src/lib/core/providers/google-auth.provider.ts +0 -61
  511. package/src/lib/core/providers/jwt-auth.provider.ts +0 -50
  512. package/src/lib/core/providers/phone-auth.provider.ts +0 -45
  513. package/src/lib/core/services/auth-config.service.ts +0 -184
  514. package/src/lib/core/services/auth-provider-registry.service.ts +0 -93
  515. package/src/lib/core/services/initialization.service.ts +0 -29
  516. package/src/lib/core/services/jwt.service.ts +0 -137
  517. package/src/lib/nest-auth.module.ts +0 -152
  518. package/src/lib/permission/entities/permission.entity.ts +0 -56
  519. package/src/lib/permission/permission.module.ts +0 -14
  520. package/src/lib/request-context/request-context.middleware.ts +0 -13
  521. package/src/lib/role/entities/role.entity.ts +0 -103
  522. package/src/lib/role/role.module.ts +0 -15
  523. package/src/lib/session/entities/session.entity.ts +0 -54
  524. package/src/lib/session/repositories/typeorm-session.repository.ts +0 -86
  525. package/src/lib/session/session.module.ts +0 -102
  526. package/src/lib/tenant/events/tenant-created.event.ts +0 -9
  527. package/src/lib/tenant/events/tenant-deleted.event.ts +0 -11
  528. package/src/lib/tenant/events/tenant-updated.event.ts +0 -12
  529. package/src/lib/tenant/tenant.module.ts +0 -19
  530. package/src/lib/types/express.d.ts +0 -14
  531. package/src/lib/user/dto/requests/update-user.dto.ts +0 -15
  532. package/src/lib/user/entities/access-key.entity.ts +0 -53
  533. package/src/lib/user/entities/identity.entity.ts +0 -31
  534. package/src/lib/user/entities/user.entity.ts +0 -212
  535. package/src/lib/user/events/user-created.event.ts +0 -10
  536. package/src/lib/user/events/user-deleted.event.ts +0 -12
  537. package/src/lib/user/events/user-updated.event.ts +0 -13
  538. package/src/lib/user/services/access-key.service.ts +0 -145
  539. package/src/lib/user/user.module.ts +0 -26
  540. package/src/lib/utils/database.utils.ts +0 -6
  541. package/src/lib/utils/device.util.ts +0 -111
  542. package/src/lib/utils/otp.ts +0 -3
  543. package/src/types/ms.d.ts +0 -1
  544. package/test/access-key.service.spec.ts +0 -204
  545. package/test/auth.service.spec.ts +0 -541
  546. package/test/mfa.service.spec.ts +0 -359
  547. package/test/role.service.spec.ts +0 -418
  548. package/test/tenant.service.spec.ts +0 -218
  549. package/test/test.setup.ts +0 -66
  550. package/test/user.service.spec.ts +0 -374
  551. package/tsconfig.json +0 -17
  552. package/tsconfig.lib.json +0 -15
  553. package/tsconfig.spec.json +0 -15
  554. package/tsconfig.tsbuildinfo +0 -1
  555. package/ui/.env +0 -1
  556. package/ui/.env.example +0 -1
  557. package/ui/.eslintignore +0 -7
  558. package/ui/README.md +0 -288
  559. package/ui/index.html +0 -17
  560. package/ui/package.json +0 -34
  561. package/ui/postcss.config.js +0 -6
  562. package/ui/src/App.tsx +0 -245
  563. package/ui/src/components/AuthGuard.tsx +0 -59
  564. package/ui/src/components/AuthProvider.tsx +0 -76
  565. package/ui/src/components/Button.tsx +0 -37
  566. package/ui/src/components/Card.tsx +0 -37
  567. package/ui/src/components/ErrorMessage.tsx +0 -15
  568. package/ui/src/components/FormDialog.tsx +0 -61
  569. package/ui/src/components/FormFooter.tsx +0 -37
  570. package/ui/src/components/Layout.tsx +0 -112
  571. package/ui/src/components/LoadingMessage.tsx +0 -11
  572. package/ui/src/components/Modal.tsx +0 -97
  573. package/ui/src/components/MultiSelect.tsx +0 -145
  574. package/ui/src/components/PageHeader.tsx +0 -42
  575. package/ui/src/components/PanelHeader.tsx +0 -28
  576. package/ui/src/components/PermissionInput.tsx +0 -473
  577. package/ui/src/components/SearchInput.tsx +0 -69
  578. package/ui/src/components/Select.tsx +0 -51
  579. package/ui/src/components/SwaggerUIWrapper.tsx +0 -316
  580. package/ui/src/components/Table.tsx +0 -207
  581. package/ui/src/components/Tag.tsx +0 -9
  582. package/ui/src/components/TagsInput.tsx +0 -96
  583. package/ui/src/components/admin/AdminForm.tsx +0 -170
  584. package/ui/src/components/admin/CreateAdminDialog.tsx +0 -38
  585. package/ui/src/components/auth/LoginFooter.tsx +0 -17
  586. package/ui/src/components/auth/LoginHeader.tsx +0 -14
  587. package/ui/src/components/auth/components/CodeBlock.tsx +0 -43
  588. package/ui/src/components/auth/components/CreateAccountCodeExamples.tsx +0 -60
  589. package/ui/src/components/auth/components/PasswordRequirements.tsx +0 -16
  590. package/ui/src/components/auth/components/PasswordStrengthIndicator.tsx +0 -48
  591. package/ui/src/components/auth/components/ResetPasswordCodeExamples.tsx +0 -76
  592. package/ui/src/components/auth/components/Tabs.tsx +0 -32
  593. package/ui/src/components/auth/dialogs/CreateAccountDialog.tsx +0 -79
  594. package/ui/src/components/auth/dialogs/ForgotPasswordDialog.tsx +0 -79
  595. package/ui/src/components/auth/forms/CreateAccountForm.tsx +0 -226
  596. package/ui/src/components/auth/forms/LoginForm.tsx +0 -149
  597. package/ui/src/components/auth/forms/ResetPasswordForm.tsx +0 -202
  598. package/ui/src/components/auth/types.ts +0 -17
  599. package/ui/src/components/auth/utils/security.ts +0 -82
  600. package/ui/src/components/auth/utils/utils.ts +0 -25
  601. package/ui/src/components/form/EmailField.tsx +0 -25
  602. package/ui/src/components/form/FormField.tsx +0 -102
  603. package/ui/src/components/form/FormMultiSelect.tsx +0 -46
  604. package/ui/src/components/form/FormSelect.tsx +0 -60
  605. package/ui/src/components/form/FormTagsInput.tsx +0 -42
  606. package/ui/src/components/form/FormTextarea.tsx +0 -42
  607. package/ui/src/components/form/PasswordField.tsx +0 -93
  608. package/ui/src/components/form/SecretKeyField.tsx +0 -49
  609. package/ui/src/components/permission/CreatePermissionDialog.tsx +0 -44
  610. package/ui/src/components/permission/EditPermissionDialog.tsx +0 -55
  611. package/ui/src/components/permission/PermissionForm.tsx +0 -251
  612. package/ui/src/components/role/CreateRoleDialog.tsx +0 -45
  613. package/ui/src/components/role/EditRoleDialog.tsx +0 -55
  614. package/ui/src/components/role/RoleDialog.tsx +0 -252
  615. package/ui/src/components/role/RoleForm.tsx +0 -246
  616. package/ui/src/components/tenant/CreateTenantDialog.tsx +0 -41
  617. package/ui/src/components/tenant/EditTenantDialog.tsx +0 -52
  618. package/ui/src/components/tenant/TenantForm.tsx +0 -160
  619. package/ui/src/components/user/CreateUserDialog.tsx +0 -45
  620. package/ui/src/components/user/UserDetailModal.tsx +0 -815
  621. package/ui/src/components/user/UserForm.tsx +0 -191
  622. package/ui/src/data/nest-auth.json +0 -1687
  623. package/ui/src/hooks/useApi.ts +0 -69
  624. package/ui/src/hooks/useAuth.ts +0 -100
  625. package/ui/src/hooks/useConfirm.tsx +0 -105
  626. package/ui/src/hooks/useFormFooter.tsx +0 -42
  627. package/ui/src/hooks/usePagination.ts +0 -69
  628. package/ui/src/index.css +0 -59
  629. package/ui/src/main.tsx +0 -13
  630. package/ui/src/pages/AdminsPage.tsx +0 -178
  631. package/ui/src/pages/ApiPage.tsx +0 -89
  632. package/ui/src/pages/DashboardPage.tsx +0 -281
  633. package/ui/src/pages/LoginPage.tsx +0 -39
  634. package/ui/src/pages/PermissionsPage.tsx +0 -376
  635. package/ui/src/pages/RolesPage.tsx +0 -274
  636. package/ui/src/pages/TenantsPage.tsx +0 -221
  637. package/ui/src/pages/UsersPage.tsx +0 -387
  638. package/ui/src/services/api.ts +0 -115
  639. package/ui/src/types/index.ts +0 -136
  640. package/ui/src/vite-env.d.ts +0 -9
  641. package/ui/tailwind.config.js +0 -45
  642. package/ui/tsconfig.json +0 -24
  643. package/ui/tsconfig.node.json +0 -10
  644. package/ui/vite.config.ts +0 -37
  645. package/ui/yarn.lock +0 -3137
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NestAuthPermission = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const typeorm_1 = require("typeorm");
6
+ const auth_constants_1 = require("../../auth.constants");
7
+ /**
8
+ * Permission Registry Entity
9
+ *
10
+ * This table acts as a registry/suggestions list for permissions.
11
+ * Roles store permission names as JSON strings (not foreign keys),
12
+ * so deleting a permission from this table won't break existing roles.
13
+ *
14
+ * Purpose:
15
+ * - Provides autocomplete/suggestions when adding permissions to roles
16
+ * - Prevents typos and ensures consistency
17
+ * - Allows tracking permission descriptions and metadata
18
+ * - Can be used for permission documentation/management
19
+ *
20
+ * Note: Permissions are unique per (name, guard) combination
21
+ */
22
+ let NestAuthPermission = class NestAuthPermission extends typeorm_1.BaseEntity {
23
+ };
24
+ exports.NestAuthPermission = NestAuthPermission;
25
+ tslib_1.__decorate([
26
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
27
+ tslib_1.__metadata("design:type", String)
28
+ ], NestAuthPermission.prototype, "id", void 0);
29
+ tslib_1.__decorate([
30
+ (0, typeorm_1.Column)(),
31
+ (0, typeorm_1.Index)(),
32
+ tslib_1.__metadata("design:type", String)
33
+ ], NestAuthPermission.prototype, "name", void 0);
34
+ tslib_1.__decorate([
35
+ (0, typeorm_1.Column)({ nullable: true, default: auth_constants_1.DEFAULT_GUARD_NAME }),
36
+ (0, typeorm_1.Index)(),
37
+ tslib_1.__metadata("design:type", String)
38
+ ], NestAuthPermission.prototype, "guard", void 0);
39
+ tslib_1.__decorate([
40
+ (0, typeorm_1.Column)({ nullable: true, type: 'text' }),
41
+ tslib_1.__metadata("design:type", String)
42
+ ], NestAuthPermission.prototype, "description", void 0);
43
+ tslib_1.__decorate([
44
+ (0, typeorm_1.Column)({ nullable: true }),
45
+ tslib_1.__metadata("design:type", String)
46
+ ], NestAuthPermission.prototype, "category", void 0);
47
+ tslib_1.__decorate([
48
+ (0, typeorm_1.Column)({ type: 'simple-json', nullable: true, default: '{}' }),
49
+ tslib_1.__metadata("design:type", Object)
50
+ ], NestAuthPermission.prototype, "metadata", void 0);
51
+ tslib_1.__decorate([
52
+ (0, typeorm_1.CreateDateColumn)(),
53
+ tslib_1.__metadata("design:type", Date)
54
+ ], NestAuthPermission.prototype, "createdAt", void 0);
55
+ tslib_1.__decorate([
56
+ (0, typeorm_1.UpdateDateColumn)(),
57
+ tslib_1.__metadata("design:type", Date)
58
+ ], NestAuthPermission.prototype, "updatedAt", void 0);
59
+ exports.NestAuthPermission = NestAuthPermission = tslib_1.__decorate([
60
+ (0, typeorm_1.Entity)('nest_auth_permissions'),
61
+ (0, typeorm_1.Unique)(['name', 'guard'])
62
+ ], NestAuthPermission);
@@ -1,4 +1,4 @@
1
1
  export * from './entities/permission.entity';
2
2
  export * from './services/permission.service';
3
3
  export * from './permission.module';
4
-
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/nest-auth/src/lib/permission/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./entities/permission.entity"), exports);
5
+ tslib_1.__exportStar(require("./services/permission.service"), exports);
6
+ tslib_1.__exportStar(require("./permission.module"), exports);
@@ -0,0 +1,3 @@
1
+ export declare class PermissionModule {
2
+ }
3
+ //# sourceMappingURL=permission.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.module.d.ts","sourceRoot":"","sources":["../../../../../../packages/nest-auth/src/lib/permission/permission.module.ts"],"names":[],"mappings":"AAKA,qBAOa,gBAAgB;CAAI"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionModule = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const common_1 = require("@nestjs/common");
6
+ const typeorm_1 = require("@nestjs/typeorm");
7
+ const permission_entity_1 = require("./entities/permission.entity");
8
+ const permission_service_1 = require("./services/permission.service");
9
+ let PermissionModule = class PermissionModule {
10
+ };
11
+ exports.PermissionModule = PermissionModule;
12
+ exports.PermissionModule = PermissionModule = tslib_1.__decorate([
13
+ (0, common_1.Module)({
14
+ imports: [
15
+ typeorm_1.TypeOrmModule.forFeature([permission_entity_1.NestAuthPermission]),
16
+ ],
17
+ providers: [permission_service_1.PermissionService],
18
+ exports: [permission_service_1.PermissionService, typeorm_1.TypeOrmModule],
19
+ })
20
+ ], PermissionModule);
@@ -0,0 +1,44 @@
1
+ import { Repository } from 'typeorm';
2
+ import { NestAuthPermission } from '../entities/permission.entity';
3
+ export declare class PermissionService {
4
+ private permissionRepository;
5
+ constructor(permissionRepository: Repository<NestAuthPermission>);
6
+ createPermission(data: {
7
+ name: string;
8
+ guard?: string;
9
+ description?: string;
10
+ category?: string;
11
+ metadata?: Record<string, any>;
12
+ }): Promise<NestAuthPermission>;
13
+ getPermissions(options?: {
14
+ search?: string;
15
+ category?: string;
16
+ guard?: string;
17
+ limit?: number;
18
+ }): Promise<NestAuthPermission[]>;
19
+ getPermissionByName(name: string, guard?: string): Promise<NestAuthPermission | null>;
20
+ getPermissionsByGuard(guard: string): Promise<NestAuthPermission[]>;
21
+ getGuards(): Promise<string[]>;
22
+ getPermissionById(id: string): Promise<NestAuthPermission>;
23
+ updatePermission(id: string, data: {
24
+ name?: string;
25
+ guard?: string;
26
+ description?: string;
27
+ category?: string;
28
+ metadata?: Record<string, any>;
29
+ }): Promise<NestAuthPermission>;
30
+ deletePermission(id: string): Promise<void>;
31
+ getPermissionsByNames(names: string[]): Promise<NestAuthPermission[]>;
32
+ searchPermissions(query: string, guard?: string, limit?: number): Promise<NestAuthPermission[]>;
33
+ getCategories(): Promise<string[]>;
34
+ /**
35
+ * Batch create permissions - useful for seeding
36
+ */
37
+ createPermissions(permissions: Array<{
38
+ name: string;
39
+ description?: string;
40
+ category?: string;
41
+ metadata?: Record<string, any>;
42
+ }>): Promise<NestAuthPermission[]>;
43
+ }
44
+ //# sourceMappingURL=permission.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.service.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/permission/services/permission.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAQ,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAGnE,qBACa,iBAAiB;IAGtB,OAAO,CAAC,oBAAoB;gBAApB,oBAAoB,EAAE,UAAU,CAAC,kBAAkB,CAAC;IAG1D,gBAAgB,CAAC,IAAI,EAAE;QACzB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAClC,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAqBzB,cAAc,CAAC,OAAO,CAAC,EAAE;QAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IA2B3B,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAMrF,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAOnE,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAS9B,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAY1D,gBAAgB,CAClB,EAAE,EAAE,MAAM,EACV,IAAI,EAAE;QACF,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAClC,GACF,OAAO,CAAC,kBAAkB,CAAC;IAyCxB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3C,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IASrE,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAoBnG,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAUxC;;OAEG;IACG,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC;QACvC,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAClC,CAAC,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;CAwBrC"}
@@ -1,32 +1,24 @@
1
- import { Injectable, ConflictException, NotFoundException } from '@nestjs/common';
2
- import { InjectRepository } from '@nestjs/typeorm';
3
- import { Repository, Like } from 'typeorm';
4
- import { NestAuthPermission } from '../entities/permission.entity';
5
- import { DEFAULT_GUARD_NAME } from '../../auth.constants';
6
-
7
- @Injectable()
8
- export class PermissionService {
9
- constructor(
10
- @InjectRepository(NestAuthPermission)
11
- private permissionRepository: Repository<NestAuthPermission>,
12
- ) { }
13
-
14
- async createPermission(data: {
15
- name: string;
16
- guard?: string;
17
- description?: string;
18
- category?: string;
19
- metadata?: Record<string, any>;
20
- }): Promise<NestAuthPermission> {
21
- const guard = data.guard || DEFAULT_GUARD_NAME;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionService = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const common_1 = require("@nestjs/common");
6
+ const typeorm_1 = require("@nestjs/typeorm");
7
+ const typeorm_2 = require("typeorm");
8
+ const permission_entity_1 = require("../entities/permission.entity");
9
+ const auth_constants_1 = require("../../auth.constants");
10
+ let PermissionService = class PermissionService {
11
+ constructor(permissionRepository) {
12
+ this.permissionRepository = permissionRepository;
13
+ }
14
+ async createPermission(data) {
15
+ const guard = data.guard || auth_constants_1.DEFAULT_GUARD_NAME;
22
16
  const existing = await this.permissionRepository.findOne({
23
17
  where: { name: data.name.trim(), guard },
24
18
  });
25
-
26
19
  if (existing) {
27
- throw new ConflictException(`Permission '${data.name}' with guard '${guard}' already exists`);
20
+ throw new common_1.ConflictException(`Permission '${data.name}' with guard '${guard}' already exists`);
28
21
  }
29
-
30
22
  const permission = this.permissionRepository.create({
31
23
  name: data.name.trim(),
32
24
  guard,
@@ -34,132 +26,91 @@ export class PermissionService {
34
26
  category: data.category?.trim(),
35
27
  metadata: data.metadata || {},
36
28
  });
37
-
38
29
  return this.permissionRepository.save(permission);
39
30
  }
40
-
41
- async getPermissions(options?: {
42
- search?: string;
43
- category?: string;
44
- guard?: string;
45
- limit?: number;
46
- }): Promise<NestAuthPermission[]> {
31
+ async getPermissions(options) {
47
32
  const query = this.permissionRepository.createQueryBuilder('permission');
48
-
49
33
  if (options?.search) {
50
- query.where(
51
- '(permission.name LIKE :search OR permission.description LIKE :search)',
52
- { search: `%${options.search}%` }
53
- );
34
+ query.where('(permission.name LIKE :search OR permission.description LIKE :search)', { search: `%${options.search}%` });
54
35
  }
55
-
56
36
  if (options?.category) {
57
37
  query.andWhere('permission.category = :category', { category: options.category });
58
38
  }
59
-
60
39
  if (options?.guard) {
61
40
  query.andWhere('permission.guard = :guard', { guard: options.guard });
62
41
  }
63
-
64
42
  query.orderBy('permission.name', 'ASC');
65
-
66
43
  if (options?.limit) {
67
44
  query.limit(options.limit);
68
45
  }
69
-
70
46
  return query.getMany();
71
47
  }
72
-
73
- async getPermissionByName(name: string, guard?: string): Promise<NestAuthPermission | null> {
48
+ async getPermissionByName(name, guard) {
74
49
  return this.permissionRepository.findOne({
75
- where: { name, guard: guard || DEFAULT_GUARD_NAME },
50
+ where: { name, guard: guard || auth_constants_1.DEFAULT_GUARD_NAME },
76
51
  });
77
52
  }
78
-
79
- async getPermissionsByGuard(guard: string): Promise<NestAuthPermission[]> {
53
+ async getPermissionsByGuard(guard) {
80
54
  return this.permissionRepository.find({
81
55
  where: { guard },
82
56
  order: { name: 'ASC' },
83
57
  });
84
58
  }
85
-
86
- async getGuards(): Promise<string[]> {
59
+ async getGuards() {
87
60
  const result = await this.permissionRepository
88
61
  .createQueryBuilder('permission')
89
62
  .select('DISTINCT permission.guard', 'guard')
90
63
  .getRawMany();
91
-
92
64
  return result.map(r => r.guard).filter(Boolean).sort();
93
65
  }
94
-
95
- async getPermissionById(id: string): Promise<NestAuthPermission> {
66
+ async getPermissionById(id) {
96
67
  const permission = await this.permissionRepository.findOne({
97
68
  where: { id },
98
69
  });
99
-
100
70
  if (!permission) {
101
- throw new NotFoundException(`Permission with id ${id} not found`);
71
+ throw new common_1.NotFoundException(`Permission with id ${id} not found`);
102
72
  }
103
-
104
73
  return permission;
105
74
  }
106
-
107
- async updatePermission(
108
- id: string,
109
- data: {
110
- name?: string;
111
- guard?: string;
112
- description?: string;
113
- category?: string;
114
- metadata?: Record<string, any>;
115
- }
116
- ): Promise<NestAuthPermission> {
75
+ async updatePermission(id, data) {
117
76
  const permission = await this.getPermissionById(id);
118
77
  const guard = data.guard || permission.guard;
119
-
120
78
  if (data.name && data.name !== permission.name) {
121
79
  // Check if new name already exists for this guard
122
80
  const existing = await this.permissionRepository.findOne({
123
81
  where: { name: data.name.trim(), guard },
124
82
  });
125
83
  if (existing) {
126
- throw new ConflictException(`Permission '${data.name}' with guard '${guard}' already exists`);
84
+ throw new common_1.ConflictException(`Permission '${data.name}' with guard '${guard}' already exists`);
127
85
  }
128
86
  permission.name = data.name.trim();
129
87
  }
130
-
131
88
  if (data.guard && data.guard !== permission.guard) {
132
89
  // Check if permission with new guard already exists
133
90
  const existing = await this.permissionRepository.findOne({
134
91
  where: { name: permission.name, guard: data.guard },
135
92
  });
136
93
  if (existing) {
137
- throw new ConflictException(`Permission '${permission.name}' with guard '${data.guard}' already exists`);
94
+ throw new common_1.ConflictException(`Permission '${permission.name}' with guard '${data.guard}' already exists`);
138
95
  }
139
96
  permission.guard = data.guard;
140
97
  }
141
-
142
98
  if (data.description !== undefined) {
143
99
  permission.description = data.description?.trim() || null;
144
100
  }
145
-
146
101
  if (data.category !== undefined) {
147
102
  permission.category = data.category?.trim() || null;
148
103
  }
149
-
150
104
  if (data.metadata !== undefined) {
151
105
  permission.metadata = data.metadata || {};
152
106
  }
153
-
154
107
  return this.permissionRepository.save(permission);
155
108
  }
156
-
157
- async deletePermission(id: string): Promise<void> {
109
+ async deletePermission(id) {
158
110
  const permission = await this.getPermissionById(id);
159
111
  await this.permissionRepository.remove(permission);
160
112
  }
161
-
162
- async getPermissionsByNames(names: string[]): Promise<NestAuthPermission[]> {
113
+ async getPermissionsByNames(names) {
163
114
  if (names.length === 0) {
164
115
  return [];
165
116
  }
@@ -167,67 +118,56 @@ export class PermissionService {
167
118
  where: names.map(name => ({ name })),
168
119
  });
169
120
  }
170
-
171
- async searchPermissions(query: string, guard?: string, limit: number = 20): Promise<NestAuthPermission[]> {
172
- const whereConditions: any[] = [
173
- { name: Like(`%${query}%`) },
174
- { description: Like(`%${query}%`) },
121
+ async searchPermissions(query, guard, limit = 20) {
122
+ const whereConditions = [
123
+ { name: (0, typeorm_2.Like)(`%${query}%`) },
124
+ { description: (0, typeorm_2.Like)(`%${query}%`) },
175
125
  ];
176
-
177
126
  if (guard) {
178
127
  // Apply guard filter to all conditions
179
128
  whereConditions.forEach(condition => {
180
129
  condition.guard = guard;
181
130
  });
182
131
  }
183
-
184
132
  return this.permissionRepository.find({
185
133
  where: whereConditions,
186
134
  take: limit,
187
135
  order: { name: 'ASC' },
188
136
  });
189
137
  }
190
-
191
- async getCategories(): Promise<string[]> {
138
+ async getCategories() {
192
139
  const result = await this.permissionRepository
193
140
  .createQueryBuilder('permission')
194
141
  .select('DISTINCT permission.category', 'category')
195
142
  .where('permission.category IS NOT NULL')
196
143
  .getRawMany();
197
-
198
144
  return result.map(r => r.category).filter(Boolean).sort();
199
145
  }
200
-
201
146
  /**
202
147
  * Batch create permissions - useful for seeding
203
148
  */
204
- async createPermissions(permissions: Array<{
205
- name: string;
206
- description?: string;
207
- category?: string;
208
- metadata?: Record<string, any>;
209
- }>): Promise<NestAuthPermission[]> {
149
+ async createPermissions(permissions) {
210
150
  const existing = await this.permissionRepository.find({
211
151
  where: permissions.map(p => ({ name: p.name })),
212
152
  });
213
-
214
153
  const existingNames = new Set(existing.map(p => p.name));
215
154
  const toCreate = permissions.filter(p => !existingNames.has(p.name));
216
-
217
155
  if (toCreate.length === 0) {
218
156
  return existing;
219
157
  }
220
-
221
- const newPermissions = this.permissionRepository.create(
222
- toCreate.map(p => ({
223
- name: p.name.trim(),
224
- description: p.description?.trim(),
225
- category: p.category?.trim(),
226
- metadata: p.metadata || {},
227
- }))
228
- );
229
-
158
+ const newPermissions = this.permissionRepository.create(toCreate.map(p => ({
159
+ name: p.name.trim(),
160
+ description: p.description?.trim(),
161
+ category: p.category?.trim(),
162
+ metadata: p.metadata || {},
163
+ })));
230
164
  const saved = await this.permissionRepository.save(newPermissions);
231
165
  return [...existing, ...saved];
232
166
  }
233
- }
167
+ };
168
+ exports.PermissionService = PermissionService;
169
+ exports.PermissionService = PermissionService = tslib_1.__decorate([
170
+ (0, common_1.Injectable)(),
171
+ tslib_1.__param(0, (0, typeorm_1.InjectRepository)(permission_entity_1.NestAuthPermission)),
172
+ tslib_1.__metadata("design:paramtypes", [typeorm_2.Repository])
173
+ ], PermissionService);
@@ -1,2 +1,3 @@
1
1
  export * from './request-context';
2
2
  export * from './request-context.middleware';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/nest-auth/src/lib/request-context/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./request-context"), exports);
5
+ tslib_1.__exportStar(require("./request-context.middleware"), exports);
@@ -0,0 +1,23 @@
1
+ import { Request, Response } from 'express';
2
+ import { JWTTokenPayload, SessionPayload } from '../core/interfaces/token-payload.interface';
3
+ export declare class RequestContext {
4
+ private static storage;
5
+ readonly id: number;
6
+ request: Request;
7
+ response: Response;
8
+ private constructor();
9
+ static create(request: Request, response: Response, next: () => void): void;
10
+ static current(): RequestContext | undefined;
11
+ static currentRequest(): Request | null;
12
+ static currentUser(): JWTTokenPayload | null;
13
+ static currentSession(): SessionPayload | null;
14
+ static getDeviceInfo(): {
15
+ deviceName: string;
16
+ ipAddress: string;
17
+ browser: string;
18
+ };
19
+ private static getDeviceName;
20
+ private static getBrowser;
21
+ private static getIpAddress;
22
+ }
23
+ //# sourceMappingURL=request-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-context.d.ts","sourceRoot":"","sources":["../../../../../../packages/nest-auth/src/lib/request-context/request-context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,4CAA4C,CAAC;AAE7F,qBAAa,cAAc;IAEvB,OAAO,CAAC,MAAM,CAAC,OAAO,CAA2C;IAEjE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAEpB,OAAO,EAAE,OAAO,CAAC;IAEjB,QAAQ,EAAE,QAAQ,CAAC;IAEnB,OAAO;WAMO,MAAM,CAChB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,MAAM,IAAI;WAMN,OAAO,IAAI,cAAc,GAAG,SAAS;WAIrC,cAAc,IAAI,OAAO,GAAG,IAAI;WAKhC,WAAW,IAAI,eAAe,GAAG,IAAI;WAWrC,cAAc,IAAI,cAAc,GAAG,IAAI;WAKvC,aAAa,IAAI;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IAQzF,OAAO,CAAC,MAAM,CAAC,aAAa;IAoB5B,OAAO,CAAC,MAAM,CAAC,UAAU;IAuCzB,OAAO,CAAC,MAAM,CAAC,YAAY;CAU9B"}
@@ -1,42 +1,25 @@
1
- import { AsyncLocalStorage } from 'async_hooks';
2
- import { Request, Response } from 'express';
3
- import { JWTTokenPayload, SessionPayload } from '../core/interfaces/token-payload.interface';
4
-
5
- export class RequestContext {
6
-
7
- private static storage = new AsyncLocalStorage<RequestContext>();
8
-
9
- readonly id: number;
10
-
11
- request: Request;
12
-
13
- response: Response;
14
-
15
- private constructor(request: Request, response: Response) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RequestContext = void 0;
4
+ const async_hooks_1 = require("async_hooks");
5
+ class RequestContext {
6
+ constructor(request, response) {
16
7
  this.id = Math.random();
17
8
  this.request = request;
18
9
  this.response = response;
19
10
  }
20
-
21
- public static create(
22
- request: Request,
23
- response: Response,
24
- next: () => void,
25
- ) {
11
+ static create(request, response, next) {
26
12
  const context = new RequestContext(request, response);
27
13
  RequestContext.storage.run(context, () => next());
28
14
  }
29
-
30
- public static current(): RequestContext | undefined {
15
+ static current() {
31
16
  return RequestContext.storage.getStore();
32
17
  }
33
-
34
- public static currentRequest(): Request | null {
18
+ static currentRequest() {
35
19
  const requestContext = RequestContext.current();
36
20
  return requestContext ? requestContext.request : null;
37
21
  }
38
-
39
- public static currentUser(): JWTTokenPayload | null {
22
+ static currentUser() {
40
23
  const request = RequestContext.currentRequest();
41
24
  if (!request['user']) {
42
25
  return null;
@@ -44,23 +27,20 @@ export class RequestContext {
44
27
  return {
45
28
  id: request['user'].sub,
46
29
  ...request['user']
47
- } as JWTTokenPayload;
30
+ };
48
31
  }
49
-
50
- public static currentSession(): SessionPayload | null {
32
+ static currentSession() {
51
33
  const request = RequestContext.currentRequest();
52
34
  return request ? request['session'] : null;
53
35
  }
54
-
55
- public static getDeviceInfo(): { deviceName: string; ipAddress: string; browser: string } {
36
+ static getDeviceInfo() {
56
37
  return {
57
38
  deviceName: this.getDeviceName(),
58
39
  ipAddress: this.getIpAddress(),
59
40
  browser: this.getBrowser(),
60
41
  };
61
42
  }
62
-
63
- private static getDeviceName(): string {
43
+ static getDeviceName() {
64
44
  const request = this.currentRequest();
65
45
  if (!request) {
66
46
  return 'Unknown Device';
@@ -68,25 +48,27 @@ export class RequestContext {
68
48
  const userAgent = request.headers['user-agent'] || 'unknown';
69
49
  if (userAgent.includes('Windows')) {
70
50
  return 'Windows';
71
- } else if (userAgent.includes('Macintosh')) {
51
+ }
52
+ else if (userAgent.includes('Macintosh')) {
72
53
  return 'Mac';
73
- } else if (userAgent.includes('Linux')) {
54
+ }
55
+ else if (userAgent.includes('Linux')) {
74
56
  return 'Linux';
75
- } else if (userAgent.includes('Android')) {
57
+ }
58
+ else if (userAgent.includes('Android')) {
76
59
  return 'Android';
77
- } else if (userAgent.includes('iPhone') || userAgent.includes('iPad')) {
60
+ }
61
+ else if (userAgent.includes('iPhone') || userAgent.includes('iPad')) {
78
62
  return 'iOS';
79
63
  }
80
64
  return 'Unknown Device';
81
65
  }
82
-
83
- private static getBrowser(): string {
66
+ static getBrowser() {
84
67
  const request = this.currentRequest();
85
68
  if (!request) {
86
69
  return 'unknown';
87
70
  }
88
71
  const userAgent = request.headers['user-agent'] || 'unknown';
89
-
90
72
  // Chrome
91
73
  if (userAgent.includes('Chrome') && !userAgent.includes('Chromium')) {
92
74
  return 'Chrome';
@@ -115,11 +97,9 @@ export class RequestContext {
115
97
  if (userAgent.includes('Brave')) {
116
98
  return 'Brave';
117
99
  }
118
-
119
100
  return 'Unknown Browser';
120
101
  }
121
-
122
- private static getIpAddress(): string {
102
+ static getIpAddress() {
123
103
  const request = this.currentRequest();
124
104
  if (request) {
125
105
  return request.ip ||
@@ -130,3 +110,5 @@ export class RequestContext {
130
110
  return 'unknown';
131
111
  }
132
112
  }
113
+ exports.RequestContext = RequestContext;
114
+ RequestContext.storage = new async_hooks_1.AsyncLocalStorage();
@@ -0,0 +1,5 @@
1
+ import { NestMiddleware } from '@nestjs/common';
2
+ export declare class RequestContextMiddleware implements NestMiddleware {
3
+ use(req: any, res: any, next: any): void;
4
+ }
5
+ //# sourceMappingURL=request-context.middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-context.middleware.d.ts","sourceRoot":"","sources":["../../../../../../packages/nest-auth/src/lib/request-context/request-context.middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAK5D,qBACa,wBAAyB,YAAW,cAAc;IAE3D,GAAG,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA,EAAE,IAAI,KAAA;CAIrB"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RequestContextMiddleware = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const common_1 = require("@nestjs/common");
6
+ const request_context_1 = require("./request-context");
7
+ let RequestContextMiddleware = class RequestContextMiddleware {
8
+ use(req, res, next) {
9
+ request_context_1.RequestContext.create(req, res, next);
10
+ }
11
+ };
12
+ exports.RequestContextMiddleware = RequestContextMiddleware;
13
+ exports.RequestContextMiddleware = RequestContextMiddleware = tslib_1.__decorate([
14
+ (0, common_1.Injectable)()
15
+ ], RequestContextMiddleware);