@ackplus/nest-auth 2.0.0-beta.9 → 2.0.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 (276) hide show
  1. package/README.md +83 -130
  2. package/dist/index.d.ts +1 -1
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +1 -1
  5. package/dist/index.js.map +1 -1
  6. package/dist/lib/admin-console/admin-console.module.js +1 -1
  7. package/dist/lib/admin-console/admin-console.module.js.map +1 -1
  8. package/dist/lib/admin-console/controllers/admin-auth.controller.d.ts +3 -3
  9. package/dist/lib/admin-console/controllers/admin-auth.controller.d.ts.map +1 -1
  10. package/dist/lib/admin-console/controllers/admin-auth.controller.js +30 -12
  11. package/dist/lib/admin-console/controllers/admin-auth.controller.js.map +1 -1
  12. package/dist/lib/admin-console/controllers/admin-console.controller.d.ts +1 -1
  13. package/dist/lib/admin-console/controllers/admin-console.controller.d.ts.map +1 -1
  14. package/dist/lib/admin-console/controllers/admin-console.controller.js +19 -9
  15. package/dist/lib/admin-console/controllers/admin-console.controller.js.map +1 -1
  16. package/dist/lib/admin-console/controllers/admin-permissions.controller.d.ts.map +1 -1
  17. package/dist/lib/admin-console/controllers/admin-permissions.controller.js +19 -1
  18. package/dist/lib/admin-console/controllers/admin-permissions.controller.js.map +1 -1
  19. package/dist/lib/admin-console/controllers/admin-roles.controller.d.ts.map +1 -1
  20. package/dist/lib/admin-console/controllers/admin-roles.controller.js +15 -1
  21. package/dist/lib/admin-console/controllers/admin-roles.controller.js.map +1 -1
  22. package/dist/lib/admin-console/controllers/admin-tenants.controller.d.ts.map +1 -1
  23. package/dist/lib/admin-console/controllers/admin-tenants.controller.js +15 -1
  24. package/dist/lib/admin-console/controllers/admin-tenants.controller.js.map +1 -1
  25. package/dist/lib/admin-console/controllers/admin-users.controller.d.ts +13 -17
  26. package/dist/lib/admin-console/controllers/admin-users.controller.d.ts.map +1 -1
  27. package/dist/lib/admin-console/controllers/admin-users.controller.js +35 -13
  28. package/dist/lib/admin-console/controllers/admin-users.controller.js.map +1 -1
  29. package/dist/lib/admin-console/dto/admin-user.dto.d.ts +4 -2
  30. package/dist/lib/admin-console/dto/admin-user.dto.d.ts.map +1 -1
  31. package/dist/lib/admin-console/dto/admin-user.dto.js +16 -8
  32. package/dist/lib/admin-console/dto/admin-user.dto.js.map +1 -1
  33. package/dist/lib/admin-console/services/admin-console-config.service.d.ts.map +1 -1
  34. package/dist/lib/admin-console/services/admin-console-config.service.js +10 -4
  35. package/dist/lib/admin-console/services/admin-console-config.service.js.map +1 -1
  36. package/dist/lib/admin-console/services/admin-user-management.service.d.ts +1 -1
  37. package/dist/lib/admin-console/services/admin-user-management.service.d.ts.map +1 -1
  38. package/dist/lib/admin-console/services/admin-user-management.service.js +1 -1
  39. package/dist/lib/admin-console/services/admin-user-management.service.js.map +1 -1
  40. package/dist/lib/admin-console/static/index.html +632 -567
  41. package/dist/lib/admin-console/static/nest-auth.json +3502 -157
  42. package/dist/lib/audit/services/audit.service.d.ts +2 -0
  43. package/dist/lib/audit/services/audit.service.d.ts.map +1 -1
  44. package/dist/lib/audit/services/audit.service.js +23 -0
  45. package/dist/lib/audit/services/audit.service.js.map +1 -1
  46. package/dist/lib/auth/auth.module.d.ts.map +1 -1
  47. package/dist/lib/auth/auth.module.js +6 -0
  48. package/dist/lib/auth/auth.module.js.map +1 -1
  49. package/dist/lib/auth/controllers/auth.controller.d.ts +3 -2
  50. package/dist/lib/auth/controllers/auth.controller.d.ts.map +1 -1
  51. package/dist/lib/auth/controllers/auth.controller.js +48 -24
  52. package/dist/lib/auth/controllers/auth.controller.js.map +1 -1
  53. package/dist/lib/auth/controllers/mfa.controller.d.ts.map +1 -1
  54. package/dist/lib/auth/controllers/mfa.controller.js +6 -1
  55. package/dist/lib/auth/controllers/mfa.controller.js.map +1 -1
  56. package/dist/lib/auth/dto/credentials/social-credentials.dto.d.ts +2 -0
  57. package/dist/lib/auth/dto/credentials/social-credentials.dto.d.ts.map +1 -1
  58. package/dist/lib/auth/dto/credentials/social-credentials.dto.js +28 -0
  59. package/dist/lib/auth/dto/credentials/social-credentials.dto.js.map +1 -1
  60. package/dist/lib/auth/dto/requests/verify-2fa.request.dto.d.ts.map +1 -1
  61. package/dist/lib/auth/dto/requests/verify-2fa.request.dto.js +2 -0
  62. package/dist/lib/auth/dto/requests/verify-2fa.request.dto.js.map +1 -1
  63. package/dist/lib/auth/dto/responses/auth.response.dto.d.ts +3 -5
  64. package/dist/lib/auth/dto/responses/auth.response.dto.d.ts.map +1 -1
  65. package/dist/lib/auth/dto/responses/auth.response.dto.js +11 -27
  66. package/dist/lib/auth/dto/responses/auth.response.dto.js.map +1 -1
  67. package/dist/lib/auth/entities/otp.entity.d.ts +1 -1
  68. package/dist/lib/auth/entities/otp.entity.d.ts.map +1 -1
  69. package/dist/lib/auth/entities/otp.entity.js.map +1 -1
  70. package/dist/lib/auth/entities/trusted-device.entity.d.ts.map +1 -1
  71. package/dist/lib/auth/entities/trusted-device.entity.js +1 -1
  72. package/dist/lib/auth/entities/trusted-device.entity.js.map +1 -1
  73. package/dist/lib/auth/events/login-failed.event.d.ts +15 -0
  74. package/dist/lib/auth/events/login-failed.event.d.ts.map +1 -0
  75. package/dist/lib/auth/events/login-failed.event.js +11 -0
  76. package/dist/lib/auth/events/login-failed.event.js.map +1 -0
  77. package/dist/lib/auth/events/user-logged-in.event.d.ts +3 -1
  78. package/dist/lib/auth/events/user-logged-in.event.d.ts.map +1 -1
  79. package/dist/lib/auth/events/user-logged-in.event.js.map +1 -1
  80. package/dist/lib/auth/events/user-registered.event.d.ts +2 -1
  81. package/dist/lib/auth/events/user-registered.event.d.ts.map +1 -1
  82. package/dist/lib/auth/events/user-registered.event.js.map +1 -1
  83. package/dist/lib/auth/guards/auth.guard.d.ts.map +1 -1
  84. package/dist/lib/auth/guards/auth.guard.js +1 -1
  85. package/dist/lib/auth/guards/auth.guard.js.map +1 -1
  86. package/dist/lib/auth/interceptors/token-response.interceptor.d.ts.map +1 -1
  87. package/dist/lib/auth/interceptors/token-response.interceptor.js +4 -3
  88. package/dist/lib/auth/interceptors/token-response.interceptor.js.map +1 -1
  89. package/dist/lib/auth/services/auth.service.d.ts +17 -6
  90. package/dist/lib/auth/services/auth.service.d.ts.map +1 -1
  91. package/dist/lib/auth/services/auth.service.js +271 -287
  92. package/dist/lib/auth/services/auth.service.js.map +1 -1
  93. package/dist/lib/auth/services/logout.service.d.ts +14 -0
  94. package/dist/lib/auth/services/logout.service.d.ts.map +1 -0
  95. package/dist/lib/auth/services/logout.service.js +74 -0
  96. package/dist/lib/auth/services/logout.service.js.map +1 -0
  97. package/dist/lib/auth/services/mfa.service.d.ts +2 -0
  98. package/dist/lib/auth/services/mfa.service.d.ts.map +1 -1
  99. package/dist/lib/auth/services/mfa.service.js +29 -6
  100. package/dist/lib/auth/services/mfa.service.js.map +1 -1
  101. package/dist/lib/auth/services/otp-flow.service.d.ts.map +1 -1
  102. package/dist/lib/auth/services/otp-flow.service.js +1 -2
  103. package/dist/lib/auth/services/otp-flow.service.js.map +1 -1
  104. package/dist/lib/auth/services/password.service.d.ts +2 -1
  105. package/dist/lib/auth/services/password.service.d.ts.map +1 -1
  106. package/dist/lib/auth/services/password.service.js +19 -6
  107. package/dist/lib/auth/services/password.service.js.map +1 -1
  108. package/dist/lib/auth/services/session-token.service.d.ts +37 -0
  109. package/dist/lib/auth/services/session-token.service.d.ts.map +1 -0
  110. package/dist/lib/auth/services/session-token.service.js +151 -0
  111. package/dist/lib/auth/services/session-token.service.js.map +1 -0
  112. package/dist/lib/auth/services/verification.service.d.ts.map +1 -1
  113. package/dist/lib/auth/services/verification.service.js +0 -5
  114. package/dist/lib/auth/services/verification.service.js.map +1 -1
  115. package/dist/lib/auth.constants.d.ts +15 -0
  116. package/dist/lib/auth.constants.d.ts.map +1 -1
  117. package/dist/lib/auth.constants.js +11 -0
  118. package/dist/lib/auth.constants.js.map +1 -1
  119. package/dist/lib/core/entities.d.ts +5 -3
  120. package/dist/lib/core/entities.d.ts.map +1 -1
  121. package/dist/lib/core/entities.js +5 -2
  122. package/dist/lib/core/entities.js.map +1 -1
  123. package/dist/lib/core/index.d.ts +1 -0
  124. package/dist/lib/core/index.d.ts.map +1 -1
  125. package/dist/lib/core/index.js +1 -0
  126. package/dist/lib/core/index.js.map +1 -1
  127. package/dist/lib/core/interfaces/auth-module-options.interface.d.ts +28 -5
  128. package/dist/lib/core/interfaces/auth-module-options.interface.d.ts.map +1 -1
  129. package/dist/lib/core/interfaces/session-options.interface.d.ts +5 -1
  130. package/dist/lib/core/interfaces/session-options.interface.d.ts.map +1 -1
  131. package/dist/lib/core/interfaces/session-options.interface.js +1 -0
  132. package/dist/lib/core/interfaces/session-options.interface.js.map +1 -1
  133. package/dist/lib/core/interfaces/token-payload.interface.d.ts +3 -1
  134. package/dist/lib/core/interfaces/token-payload.interface.d.ts.map +1 -1
  135. package/dist/lib/core/providers/apple-auth.provider.d.ts +13 -7
  136. package/dist/lib/core/providers/apple-auth.provider.d.ts.map +1 -1
  137. package/dist/lib/core/providers/apple-auth.provider.js +166 -7
  138. package/dist/lib/core/providers/apple-auth.provider.js.map +1 -1
  139. package/dist/lib/core/providers/base-auth.provider.d.ts +2 -0
  140. package/dist/lib/core/providers/base-auth.provider.d.ts.map +1 -1
  141. package/dist/lib/core/providers/base-auth.provider.js.map +1 -1
  142. package/dist/lib/core/providers/email-auth.provider.d.ts.map +1 -1
  143. package/dist/lib/core/providers/email-auth.provider.js +13 -2
  144. package/dist/lib/core/providers/email-auth.provider.js.map +1 -1
  145. package/dist/lib/core/providers/github-auth.provider.d.ts +3 -0
  146. package/dist/lib/core/providers/github-auth.provider.d.ts.map +1 -1
  147. package/dist/lib/core/providers/github-auth.provider.js +73 -24
  148. package/dist/lib/core/providers/github-auth.provider.js.map +1 -1
  149. package/dist/lib/core/providers/google-auth.provider.d.ts +1 -0
  150. package/dist/lib/core/providers/google-auth.provider.d.ts.map +1 -1
  151. package/dist/lib/core/providers/google-auth.provider.js +7 -1
  152. package/dist/lib/core/providers/google-auth.provider.js.map +1 -1
  153. package/dist/lib/core/providers/jwt-auth.provider.d.ts +2 -1
  154. package/dist/lib/core/providers/jwt-auth.provider.d.ts.map +1 -1
  155. package/dist/lib/core/providers/passwordless-auth.provider.d.ts +3 -1
  156. package/dist/lib/core/providers/passwordless-auth.provider.d.ts.map +1 -1
  157. package/dist/lib/core/providers/passwordless-auth.provider.js +11 -1
  158. package/dist/lib/core/providers/passwordless-auth.provider.js.map +1 -1
  159. package/dist/lib/core/providers/phone-auth.provider.d.ts.map +1 -1
  160. package/dist/lib/core/providers/phone-auth.provider.js +13 -2
  161. package/dist/lib/core/providers/phone-auth.provider.js.map +1 -1
  162. package/dist/lib/core/services/auth-config.service.d.ts.map +1 -1
  163. package/dist/lib/core/services/auth-config.service.js +6 -0
  164. package/dist/lib/core/services/auth-config.service.js.map +1 -1
  165. package/dist/lib/core/services/jwt.service.d.ts.map +1 -1
  166. package/dist/lib/core/services/jwt.service.js +10 -5
  167. package/dist/lib/core/services/jwt.service.js.map +1 -1
  168. package/dist/lib/core/swagger/api-responses.decorator.d.ts +15 -0
  169. package/dist/lib/core/swagger/api-responses.decorator.d.ts.map +1 -0
  170. package/dist/lib/core/swagger/api-responses.decorator.js +57 -0
  171. package/dist/lib/core/swagger/api-responses.decorator.js.map +1 -0
  172. package/dist/lib/nest-auth.module.d.ts.map +1 -1
  173. package/dist/lib/nest-auth.module.js +18 -2
  174. package/dist/lib/nest-auth.module.js.map +1 -1
  175. package/dist/lib/permission/events/permission-created.event.d.ts +9 -0
  176. package/dist/lib/permission/events/permission-created.event.d.ts.map +1 -0
  177. package/dist/lib/permission/events/permission-created.event.js +11 -0
  178. package/dist/lib/permission/events/permission-created.event.js.map +1 -0
  179. package/dist/lib/permission/events/permission-deleted.event.d.ts +9 -0
  180. package/dist/lib/permission/events/permission-deleted.event.d.ts.map +1 -0
  181. package/dist/lib/permission/events/permission-deleted.event.js +11 -0
  182. package/dist/lib/permission/events/permission-deleted.event.js.map +1 -0
  183. package/dist/lib/permission/events/permission-updated.event.d.ts +10 -0
  184. package/dist/lib/permission/events/permission-updated.event.d.ts.map +1 -0
  185. package/dist/lib/permission/events/permission-updated.event.js +11 -0
  186. package/dist/lib/permission/events/permission-updated.event.js.map +1 -0
  187. package/dist/lib/permission/index.d.ts +3 -0
  188. package/dist/lib/permission/index.d.ts.map +1 -1
  189. package/dist/lib/permission/index.js +3 -0
  190. package/dist/lib/permission/index.js.map +1 -1
  191. package/dist/lib/permission/services/permission.service.d.ts +3 -1
  192. package/dist/lib/permission/services/permission.service.d.ts.map +1 -1
  193. package/dist/lib/permission/services/permission.service.js +16 -4
  194. package/dist/lib/permission/services/permission.service.js.map +1 -1
  195. package/dist/lib/request-context/request-context.d.ts +1 -1
  196. package/dist/lib/request-context/request-context.d.ts.map +1 -1
  197. package/dist/lib/request-context/request-context.js +3 -3
  198. package/dist/lib/request-context/request-context.js.map +1 -1
  199. package/dist/lib/role/entities/role.entity.d.ts +3 -1
  200. package/dist/lib/role/entities/role.entity.d.ts.map +1 -1
  201. package/dist/lib/role/entities/role.entity.js +7 -1
  202. package/dist/lib/role/entities/role.entity.js.map +1 -1
  203. package/dist/lib/role/events/role-created.event.d.ts +9 -0
  204. package/dist/lib/role/events/role-created.event.d.ts.map +1 -0
  205. package/dist/lib/role/events/role-created.event.js +11 -0
  206. package/dist/lib/role/events/role-created.event.js.map +1 -0
  207. package/dist/lib/role/events/role-deleted.event.d.ts +9 -0
  208. package/dist/lib/role/events/role-deleted.event.d.ts.map +1 -0
  209. package/dist/lib/role/events/role-deleted.event.js +11 -0
  210. package/dist/lib/role/events/role-deleted.event.js.map +1 -0
  211. package/dist/lib/role/events/role-updated.event.d.ts +10 -0
  212. package/dist/lib/role/events/role-updated.event.d.ts.map +1 -0
  213. package/dist/lib/role/events/role-updated.event.js +11 -0
  214. package/dist/lib/role/events/role-updated.event.js.map +1 -0
  215. package/dist/lib/role/index.d.ts +3 -0
  216. package/dist/lib/role/index.d.ts.map +1 -1
  217. package/dist/lib/role/index.js +3 -0
  218. package/dist/lib/role/index.js.map +1 -1
  219. package/dist/lib/role/services/role.service.d.ts +3 -1
  220. package/dist/lib/role/services/role.service.d.ts.map +1 -1
  221. package/dist/lib/role/services/role.service.js +29 -41
  222. package/dist/lib/role/services/role.service.js.map +1 -1
  223. package/dist/lib/role/utils/access-role-resolver.util.d.ts +20 -0
  224. package/dist/lib/role/utils/access-role-resolver.util.d.ts.map +1 -0
  225. package/dist/lib/role/utils/access-role-resolver.util.js +63 -0
  226. package/dist/lib/role/utils/access-role-resolver.util.js.map +1 -0
  227. package/dist/lib/session/services/session-manager.service.d.ts +8 -3
  228. package/dist/lib/session/services/session-manager.service.d.ts.map +1 -1
  229. package/dist/lib/session/services/session-manager.service.js +30 -11
  230. package/dist/lib/session/services/session-manager.service.js.map +1 -1
  231. package/dist/lib/session/session.module.d.ts.map +1 -1
  232. package/dist/lib/session/session.module.js +5 -1
  233. package/dist/lib/session/session.module.js.map +1 -1
  234. package/dist/lib/tenant/decorators/current-tenant.decorator.d.ts.map +1 -1
  235. package/dist/lib/tenant/decorators/current-tenant.decorator.js.map +1 -1
  236. package/dist/lib/tenant/entities/tenant.entity.d.ts +1 -1
  237. package/dist/lib/tenant/entities/tenant.entity.d.ts.map +1 -1
  238. package/dist/lib/tenant/entities/tenant.entity.js +1 -1
  239. package/dist/lib/tenant/entities/tenant.entity.js.map +1 -1
  240. package/dist/lib/tenant/index.d.ts +1 -1
  241. package/dist/lib/tenant/index.d.ts.map +1 -1
  242. package/dist/lib/tenant/index.js +1 -1
  243. package/dist/lib/tenant/index.js.map +1 -1
  244. package/dist/lib/tenant/tenant-context/services/base-tenant-context.service.d.ts +1 -1
  245. package/dist/lib/tenant/tenant-context/services/base-tenant-context.service.d.ts.map +1 -1
  246. package/dist/lib/tenant/tenant-context/services/disabled-tenant-context.service.d.ts +1 -1
  247. package/dist/lib/tenant/tenant-context/services/disabled-tenant-context.service.d.ts.map +1 -1
  248. package/dist/lib/tenant/tenant-context/tenant-context.interface.d.ts +1 -1
  249. package/dist/lib/tenant/tenant-context/tenant-context.interface.d.ts.map +1 -1
  250. package/dist/lib/user/entities/platform-access.entity.d.ts +16 -0
  251. package/dist/lib/user/entities/platform-access.entity.d.ts.map +1 -0
  252. package/dist/lib/user/entities/platform-access.entity.js +95 -0
  253. package/dist/lib/user/entities/platform-access.entity.js.map +1 -0
  254. package/dist/lib/user/entities/user-access.entity.d.ts +22 -0
  255. package/dist/lib/user/entities/user-access.entity.d.ts.map +1 -0
  256. package/dist/lib/{tenant → user}/entities/user-access.entity.js +35 -4
  257. package/dist/lib/user/entities/user-access.entity.js.map +1 -0
  258. package/dist/lib/user/entities/user.entity.d.ts +10 -12
  259. package/dist/lib/user/entities/user.entity.d.ts.map +1 -1
  260. package/dist/lib/user/entities/user.entity.js +91 -73
  261. package/dist/lib/user/entities/user.entity.js.map +1 -1
  262. package/dist/lib/user/services/access-key.service.d.ts +1 -0
  263. package/dist/lib/user/services/access-key.service.d.ts.map +1 -1
  264. package/dist/lib/user/services/access-key.service.js +19 -3
  265. package/dist/lib/user/services/access-key.service.js.map +1 -1
  266. package/dist/lib/user/services/user.service.d.ts +27 -22
  267. package/dist/lib/user/services/user.service.d.ts.map +1 -1
  268. package/dist/lib/user/services/user.service.js +135 -84
  269. package/dist/lib/user/services/user.service.js.map +1 -1
  270. package/dist/lib/user/user.module.d.ts.map +1 -1
  271. package/dist/lib/user/user.module.js +3 -2
  272. package/dist/lib/user/user.module.js.map +1 -1
  273. package/package.json +14 -9
  274. package/dist/lib/tenant/entities/user-access.entity.d.ts +0 -19
  275. package/dist/lib/tenant/entities/user-access.entity.d.ts.map +0 -1
  276. package/dist/lib/tenant/entities/user-access.entity.js.map +0 -1
package/README.md CHANGED
@@ -1,170 +1,123 @@
1
1
  # @ackplus/nest-auth
2
2
 
3
- A powerful, modular authentication and user management system for NestJS.
3
+ [![npm version](https://img.shields.io/npm/v/@ackplus/nest-auth.svg)](https://www.npmjs.com/package/@ackplus/nest-auth)
4
+ [![npm downloads](https://img.shields.io/npm/dm/@ackplus/nest-auth.svg)](https://www.npmjs.com/package/@ackplus/nest-auth)
5
+ [![license](https://img.shields.io/npm/l/@ackplus/nest-auth.svg)](https://www.npmjs.com/package/@ackplus/nest-auth)
4
6
 
5
- ## Features
7
+ Full-featured authentication module for NestJS. Sessions, MFA, OAuth, passwordless, multi-tenancy, RBAC, audit logging, and an embedded admin console — all type-safe end to end.
6
8
 
7
- - **Complete Auth System** - Login, generic registration, password recovery, verification.
8
- - � **Multi-Factor Authentication** - Built-in TOTP (Authenticator App) support.
9
- - � **Social Authentication** - Google, Facebook, Apple, GitHub integration.
10
- - 🏢 **Multi-Tenancy** - Built-in tenant isolation and management.
11
- - � **RBAC** - Role-Based Access Control with dynamic permissions.
12
- - 🍪 **Flexible Session Management** - Support for JWTs via Cookies or Headers.
13
- - � **Device Management** - Trusted device tracking.
9
+ > 📚 **Full documentation: [ack-solutions.github.io/nest-auth](https://ack-solutions.github.io/nest-auth/)**
14
10
 
15
- ## Installation
11
+ ---
12
+
13
+ ## Why
14
+
15
+ Modern auth has a long checklist: email + password, OAuth, MFA, refresh-token rotation, RBAC, multi-tenancy, audit logs, an admin console. Most teams glue together five libraries (and own the integration risk) or buy a hosted vendor (and lose data ownership). `@ackplus/nest-auth` picks a third path: **a single, modular library you install in your own NestJS app, backed by your own database**.
16
+
17
+ ## Install
16
18
 
17
19
  ```bash
18
- npm install @ackplus/nest-auth
19
- # or
20
- pnpm add @ackplus/nest-auth
20
+ pnpm add @ackplus/nest-auth @ackplus/nest-auth-contracts
21
21
  ```
22
22
 
23
- ## Peer Dependencies
23
+ Required peer dependencies:
24
24
 
25
25
  ```bash
26
- npm install @nestjs/common @nestjs/core @nestjs/typeorm typeorm class-validator class-transformer reflect-metadata @nestjs/event-emitter @nestjs/swagger
26
+ pnpm add @nestjs/common @nestjs/core @nestjs/typeorm @nestjs/swagger \
27
+ @nestjs/event-emitter @nestjs/platform-express \
28
+ typeorm class-validator class-transformer reflect-metadata rxjs
27
29
  ```
28
30
 
29
- ### Optional Dependencies (Social Auth)
31
+ Optional, only if you enable the matching feature:
30
32
 
31
- If you plan to use social authentication providers:
33
+ | Feature | Add |
34
+ | --- | --- |
35
+ | Cookie-mode sessions | `cookie-parser` |
36
+ | Redis sessions | `ioredis` |
37
+ | Google OAuth | `google-auth-library` |
38
+ | Facebook OAuth | `fb` |
39
+ | Apple OAuth | `apple-auth` |
40
+ | Rate limiting | `@nestjs/throttler` |
32
41
 
33
- ```bash
34
- # Google
35
- npm install google-auth-library
42
+ [Full install guide →](https://ack-solutions.github.io/nest-auth/docs/getting-started/installation/)
36
43
 
37
- # Facebook
38
- npm install fb
44
+ ## What's included
39
45
 
40
- # Apple
41
- npm install apple-auth
42
- ```
43
-
44
- ## Quick Start
46
+ | Capability | Notes |
47
+ | --- | --- |
48
+ | **9 sign-in methods** | Email + password · phone + password · passwordless OTP · magic link · Google · Facebook · Apple · GitHub · API keys + custom OAuth providers |
49
+ | **MFA** | TOTP · email OTP · SMS OTP · recovery codes · trusted-device tokens |
50
+ | **Sessions** | Database (default), Redis, or in-memory · auto-refresh · refresh-token rotation · password-hash-prefix invalidation |
51
+ | **Multi-tenancy** | `disabled` / `shared` / `isolated` modes · tenant-aware decorators · per-request context |
52
+ | **RBAC** | Roles + permissions per guard namespace (web, api, mobile) · external IDP friendly |
53
+ | **Embedded admin console** | Built-in React UI for users, roles, permissions, tenants, API keys |
54
+ | **Hooks & events** | Every lifecycle moment is overridable; full `EventEmitter2` integration |
55
+ | **Audit logging** | Structured event hook for compliance |
56
+ | **OpenAPI** | Auto-generated `@nestjs/swagger` spec for every endpoint |
45
57
 
46
- ### 1. Import Module
58
+ ## Minimal example
47
59
 
48
- ```typescript
60
+ ```ts
49
61
  import { Module } from '@nestjs/common';
50
- import { NestAuthModule } from '@ackplus/nest-auth';
62
+ import { TypeOrmModule } from '@nestjs/typeorm';
63
+ import { EventEmitterModule } from '@nestjs/event-emitter';
64
+ import { NestAuthModule, NestAuthEntities } from '@ackplus/nest-auth';
51
65
 
52
66
  @Module({
53
67
  imports: [
68
+ EventEmitterModule.forRoot(),
69
+ TypeOrmModule.forRoot({
70
+ type: 'postgres',
71
+ url: process.env.DATABASE_URL,
72
+ entities: [...NestAuthEntities],
73
+ synchronize: process.env.NODE_ENV === 'development',
74
+ }),
75
+ TypeOrmModule.forFeature([...NestAuthEntities]),
76
+
54
77
  NestAuthModule.forRoot({
55
- isGlobal: true,
56
- session: {
57
- accessTokenValidity: '15m',
58
- refreshTokenValidity: '7d',
59
- },
60
- // ... other config
78
+ appName: 'My App',
79
+ session: { jwt: { secret: process.env.JWT_SECRET! } },
80
+ // emailAuth: { enabled: true }, // default
81
+ // google: { clientId, clientSecret }, // opt-in OAuth
82
+ // mfa: { enabled: true, required: true },
83
+ // tenant: { enabled: true, mode: TenantModeEnum.SHARED },
61
84
  }),
62
85
  ],
63
86
  })
64
87
  export class AppModule {}
65
88
  ```
66
89
 
67
- ### 2. Guard Routes
68
-
69
- ```typescript
70
- import { Controller, Get, UseGuards } from '@nestjs/common';
71
- import { NestAuthAuthGuard } from '@ackplus/nest-auth';
72
-
73
- @Controller('profile')
74
- export class ProfileController {
75
-
76
- @Get()
77
- @UseGuards(NestAuthAuthGuard)
78
- getProfile(@Req() req) {
79
- return req.user;
80
- }
81
- }
82
- ```
83
-
84
- ## Configuration
85
-
86
- ### Social Providers
87
-
88
- ```typescript
89
- NestAuthModule.forRoot({
90
- google: {
91
- clientId: '...',
92
- clientSecret: '...',
93
- },
94
- facebook: {
95
- appId: '...',
96
- appSecret: '...',
97
- },
98
- // ...
99
- })
100
- ```
101
-
102
- ### Email / SMPT
90
+ That's it — you immediately get `POST /auth/signup`, `POST /auth/login`, `/auth/refresh-token`, password-reset, MFA, OAuth callbacks, and the rest of the API. Wire `EventEmitterModule.forRoot()`, `cookie-parser`, and the `AuthExceptionFilter` from the [setup checklist](https://ack-solutions.github.io/nest-auth/docs/getting-started/setup-checklist/) and ship.
103
91
 
104
- To enable email verification and password resets:
105
-
106
- ```typescript
107
- NestAuthModule.forRoot({
108
- mail: {
109
- driver: 'smtp',
110
- host: 'smtp.example.com',
111
- // ...
112
- }
113
- })
114
- ```
115
-
116
- ## Session Storage Options
117
-
118
- By default, sessions are stored in the database via TypeORM. You can switch to Redis for
119
- multi-instance performance without changing your login/signup flows.
120
-
121
- ### Redis Setup
122
-
123
- 1) Install the optional Redis dependency:
124
-
125
- ```bash
126
- npm install ioredis
127
- ```
92
+ ## Documentation
128
93
 
129
- 2) Enable Redis sessions:
130
-
131
- ```typescript
132
- import { SessionStorageType } from '@ackplus/nest-auth';
133
-
134
- NestAuthModule.forRoot({
135
- session: {
136
- storageType: SessionStorageType.REDIS, // or 'redis'
137
- redis: {
138
- url: process.env.REDIS_URL, // preferred when available
139
- host: '127.0.0.1',
140
- port: 6379,
141
- password: process.env.REDIS_PASSWORD,
142
- db: 0,
143
- tls: undefined,
144
- keyPrefix: 'nest-auth:sess:',
145
- ttlSeconds: 60 * 60 * 24 * 7,
146
- enableOfflineQueue: true,
147
- },
148
- },
149
- });
150
- ```
94
+ | Section | What's there |
95
+ | --- | --- |
96
+ | [Getting Started](https://ack-solutions.github.io/nest-auth/docs/getting-started/) | Install, database setup (3 paths), env vars, quickstart for backend / React / Next.js / vanilla |
97
+ | [Core Concepts](https://ack-solutions.github.io/nest-auth/docs/concepts/) | Sessions, user model, multi-tenancy, RBAC, MFA, events, audit |
98
+ | [Authentication](https://ack-solutions.github.io/nest-auth/docs/authentication/) | One page per sign-in method |
99
+ | [Backend Reference](https://ack-solutions.github.io/nest-auth/docs/backend/) | Module config, entities, decorators, guards, services, hooks, events, error codes, admin console |
100
+ | [Production](https://ack-solutions.github.io/nest-auth/docs/production/) | Email/SMS wiring, JWT customization, scaling, CORS & security, testing |
101
+ | [Recipes](https://ack-solutions.github.io/nest-auth/docs/recipes/) | 20 copy-paste solutions — referral codes, custom OAuth, tenant switcher, etc. |
102
+ | [API Reference](https://ack-solutions.github.io/nest-auth/docs/api-reference/) | Auto-generated REST + TypeScript types |
103
+ | [FAQ & Troubleshooting](https://ack-solutions.github.io/nest-auth/docs/faq/) | Error codes → likely cause → fix |
151
104
 
152
- Notes:
153
- - If `session.storageType` is omitted, the database store is used (no breaking changes).
154
- - Legacy config is still supported: `session.redisUrl`.
155
- - Redis keys are JSON-serialized and use TTL; `ttlSeconds` defaults to the session expiry when possible.
105
+ ## Companion packages
156
106
 
157
- ### Production Notes
107
+ | Package | Use when |
108
+ | --- | --- |
109
+ | [`@ackplus/nest-auth-client`](https://www.npmjs.com/package/@ackplus/nest-auth-client) | Vanilla JS / Vue / Angular / Svelte / React Native client |
110
+ | [`@ackplus/nest-auth-react`](https://www.npmjs.com/package/@ackplus/nest-auth-react) | React provider, hooks, guards, and Next.js App Router helpers |
111
+ | [`@ackplus/nest-auth-contracts`](https://www.npmjs.com/package/@ackplus/nest-auth-contracts) | Shared TS types — consumed by all three |
158
112
 
159
- - Enable Redis persistence (AOF/RDB) for durability.
160
- - Use Redis clustering/sentinel for high availability.
161
- - Choose a consistent `keyPrefix` to isolate environments.
162
- - Monitor TTL/evictions and memory usage.
113
+ All four packages release together with the same version number. Pin them all to the same version.
163
114
 
164
- ## Documentation
115
+ ## Links
165
116
 
166
- For full documentation covering RBAC, Tenants, and advanced configuration, please refer to the official docs (link to be added).
117
+ - 📚 [Documentation](https://ack-solutions.github.io/nest-auth/)
118
+ - 💬 [Issue Tracker](https://github.com/ack-solutions/nest-auth/issues)
119
+ - 📦 [GitHub Repository](https://github.com/ack-solutions/nest-auth)
167
120
 
168
121
  ## License
169
122
 
170
- MIT
123
+ [MIT](https://github.com/ack-solutions/nest-auth/blob/main/LICENSE)
package/dist/index.d.ts CHANGED
@@ -7,7 +7,7 @@ export * from './lib/role';
7
7
  export * from './lib/permission';
8
8
  export * from './lib/tenant';
9
9
  export * from './lib/core';
10
- export * from './lib/request-context/request-context';
10
+ export * from './lib/request-context';
11
11
  export type { IAuthModuleOptions, IAuthModuleAsyncOptions, IAuthModuleOptionsFactory, IDefaultTenantOptions, IAdminConsoleOptions, IPasswordlessOptions, } from './lib/core/interfaces/auth-module-options.interface';
12
12
  export { AuthConfigService } from './lib/core/services/auth-config.service';
13
13
  export { DebugLoggerService, DebugLogLevel } from './lib/core/services/debug-logger.service';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AAEvC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAG3B,cAAc,uCAAuC,CAAC;AAGtD,YAAY,EACV,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,qDAAqD,CAAC;AAG7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAG5E,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAC7F,YAAY,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAGhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AAGnF,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG/D,cAAc,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AAEvC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAG3B,cAAc,uBAAuB,CAAC;AAGtC,YAAY,EACV,kBAAkB,EAClB,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,qDAAqD,CAAC;AAG7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAG5E,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AAC7F,YAAY,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAGhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AAGnF,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG/D,cAAc,8BAA8B,CAAC"}
package/dist/index.js CHANGED
@@ -24,7 +24,7 @@ __exportStar(require("./lib/role"), exports);
24
24
  __exportStar(require("./lib/permission"), exports);
25
25
  __exportStar(require("./lib/tenant"), exports);
26
26
  __exportStar(require("./lib/core"), exports);
27
- __exportStar(require("./lib/request-context/request-context"), exports);
27
+ __exportStar(require("./lib/request-context"), exports);
28
28
  var auth_config_service_1 = require("./lib/core/services/auth-config.service");
29
29
  Object.defineProperty(exports, "AuthConfigService", { enumerable: true, get: function () { return auth_config_service_1.AuthConfigService; } });
30
30
  var debug_logger_service_1 = require("./lib/core/services/debug-logger.service");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yDAAuC;AAEvC,uDAAqC;AAGrC,6CAA2B;AAC3B,gDAA8B;AAC9B,6CAA2B;AAC3B,6CAA2B;AAC3B,mDAAiC;AACjC,+CAA6B;AAC7B,6CAA2B;AAG3B,wEAAsD;AAatD,+EAA4E;AAAnE,wHAAA,iBAAiB,OAAA;AAG1B,iFAA6F;AAApF,0HAAA,kBAAkB,OAAA;AAAE,qHAAA,aAAa,OAAA;AAI1C,oFAAmF;AAA1E,sHAAA,iBAAiB,OAAA;AAG1B,qCAA+D;AAAtD,wGAAA,eAAe,OAAA;AAAE,wGAAA,eAAe,OAAA;AAGzC,+DAA6C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yDAAuC;AAEvC,uDAAqC;AAGrC,6CAA2B;AAC3B,gDAA8B;AAC9B,6CAA2B;AAC3B,6CAA2B;AAC3B,mDAAiC;AACjC,+CAA6B;AAC7B,6CAA2B;AAG3B,wDAAsC;AAatC,+EAA4E;AAAnE,wHAAA,iBAAiB,OAAA;AAG1B,iFAA6F;AAApF,0HAAA,kBAAkB,OAAA;AAAE,qHAAA,aAAa,OAAA;AAI1C,oFAAmF;AAA1E,sHAAA,iBAAiB,OAAA;AAG1B,qCAA+D;AAAtD,wGAAA,eAAe,OAAA;AAAE,wGAAA,eAAe,OAAA;AAGzC,+DAA6C"}
@@ -30,7 +30,7 @@ const trusted_device_entity_1 = require("../auth/entities/trusted-device.entity"
30
30
  const user_entity_1 = require("../user/entities/user.entity");
31
31
  const permission_module_1 = require("../permission/permission.module");
32
32
  const session_module_1 = require("../session/session.module");
33
- const user_access_entity_1 = require("../tenant/entities/user-access.entity");
33
+ const user_access_entity_1 = require("../user/entities/user-access.entity");
34
34
  const admin_user_management_service_1 = require("./services/admin-user-management.service");
35
35
  let AdminConsoleModule = class AdminConsoleModule {
36
36
  };
@@ -1 +1 @@
1
- {"version":3,"file":"admin-console.module.js","sourceRoot":"","sources":["../../../src/lib/admin-console/admin-console.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAoD;AACpD,6CAAgD;AAChD,oEAAiE;AACjE,sEAAiE;AACjE,sEAAiE;AACjE,4EAAuE;AACvE,qFAAgF;AAChF,+EAA0E;AAC1E,sEAAiE;AACjE,qDAAiD;AACjD,qDAAiD;AACjD,2DAAuD;AACvD,iFAA4E;AAC5E,iFAA4E;AAC5E,qFAAgF;AAChF,6FAAwF;AACxF,0FAAoF;AACpF,qDAAiD;AACjD,0EAAuE;AACvE,kFAA+E;AAC/E,8DAA4D;AAC5D,uEAAmE;AACnE,8DAA0D;AAC1D,8EAA2E;AAC3E,4FAAsF;AA6C/E,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;CAAI,CAAA;AAAtB,gDAAkB;6BAAlB,kBAAkB;IA3C9B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC;gBACvB,qCAAiB;gBACjB,qCAAiB;gBACjB,6CAAqB;gBACrB,0BAAY;gBACZ,uCAAkB;aACnB,CAAC;YACF,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC;YAC5B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC;YAC5B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC;YAC5B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,4BAAY,CAAC;YAC9B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,8BAAa,CAAC;YAC/B,oCAAgB;SACjB;QACD,SAAS,EAAE;YACT,qCAAgB;YAChB,qCAAgB;YAChB,2CAAmB;YACnB,wDAAyB;YACzB,0DAA0B;YAC1B,uCAAiB;SAClB;QACD,WAAW,EAAE;YAEX,2CAAmB;YACnB,6CAAoB;YACpB,6CAAoB;YACpB,iDAAsB;YACtB,yDAA0B;YAE1B,iDAAsB;SACvB;QACD,OAAO,EAAE;YACP,qCAAgB;YAChB,qCAAgB;YAChB,2CAAmB;YACnB,wDAAyB;YACzB,uCAAiB;YACjB,uBAAa;SACd;KACF,CAAC;GACW,kBAAkB,CAAI"}
1
+ {"version":3,"file":"admin-console.module.js","sourceRoot":"","sources":["../../../src/lib/admin-console/admin-console.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAoD;AACpD,6CAAgD;AAChD,oEAAiE;AACjE,sEAAiE;AACjE,sEAAiE;AACjE,4EAAuE;AACvE,qFAAgF;AAChF,+EAA0E;AAC1E,sEAAiE;AACjE,qDAAiD;AACjD,qDAAiD;AACjD,2DAAuD;AACvD,iFAA4E;AAC5E,iFAA4E;AAC5E,qFAAgF;AAChF,6FAAwF;AACxF,0FAAoF;AACpF,qDAAiD;AACjD,0EAAuE;AACvE,kFAA+E;AAC/E,8DAA4D;AAC5D,uEAAmE;AACnE,8DAA0D;AAC1D,4EAAyE;AACzE,4FAAsF;AA6C/E,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;CAAI,CAAA;AAAtB,gDAAkB;6BAAlB,kBAAkB;IA3C9B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC;gBACvB,qCAAiB;gBACjB,qCAAiB;gBACjB,6CAAqB;gBACrB,0BAAY;gBACZ,uCAAkB;aACnB,CAAC;YACF,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC;YAC5B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC;YAC5B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC;YAC5B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,4BAAY,CAAC;YAC9B,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,8BAAa,CAAC;YAC/B,oCAAgB;SACjB;QACD,SAAS,EAAE;YACT,qCAAgB;YAChB,qCAAgB;YAChB,2CAAmB;YACnB,wDAAyB;YACzB,0DAA0B;YAC1B,uCAAiB;SAClB;QACD,WAAW,EAAE;YAEX,2CAAmB;YACnB,6CAAoB;YACpB,6CAAoB;YACpB,iDAAsB;YACtB,yDAA0B;YAE1B,iDAAsB;SACvB;QACD,OAAO,EAAE;YACP,qCAAgB;YAChB,qCAAgB;YAChB,2CAAmB;YACnB,wDAAyB;YACzB,uCAAiB;YACjB,uBAAa;SACd;KACF,CAAC;GACW,kBAAkB,CAAI"}
@@ -48,9 +48,6 @@ export declare class AdminAuthController {
48
48
  updatedAt: Date;
49
49
  };
50
50
  }>;
51
- logout(admin: NestAuthAdminUser, res: Response): Promise<{
52
- message: string;
53
- }>;
54
51
  me(admin: NestAuthAdminUser): Promise<{
55
52
  id: string;
56
53
  email: string;
@@ -60,6 +57,9 @@ export declare class AdminAuthController {
60
57
  createdAt: Date;
61
58
  updatedAt: Date;
62
59
  }>;
60
+ logout(admin: NestAuthAdminUser, res: Response): Promise<{
61
+ message: string;
62
+ }>;
63
63
  publicConfig(): Promise<{
64
64
  allowAdminManagement: boolean;
65
65
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"admin-auth.controller.d.ts","sourceRoot":"","sources":["../../../../src/lib/admin-console/controllers/admin-auth.controller.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAErE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,qBACa,mBAAmB;IAE5B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBARd,SAAS,EAAE,gBAAgB,EAC3B,QAAQ,EAAE,mBAAmB,EAC7B,MAAM,EAAE,yBAAyB,EACjC,UAAU,EAAE,gBAAgB,EAC5B,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,EAE5B,cAAc,EAAE,UAAU,CAAC,YAAY,CAAC;IAG3D,OAAO,CAAC,gBAAgB;IAUlB,MAAM,CAAS,GAAG,EAAE,cAAc;;;;;;;;;;;;IAkClC,KAAK,CAAS,GAAG,EAAE,aAAa,EAA8B,GAAG,EAAE,QAAQ;;;;;;;;;;;;IAa3E,MAAM,CAAiB,KAAK,EAAE,iBAAiB,EAA8B,GAAG,EAAE,QAAQ;;;IAkB1F,EAAE,CAAiB,KAAK,EAAE,iBAAiB;;;;;;;;;IAK3C,YAAY;;;IASZ,iBAAiB;;;;;;;;;;kBAuBa,MAAM;mBAAS,MAAM;;;IAoDnD,UAAU;;;;;;;;;;;IAYV,WAAW,CAAS,GAAG,EAAE,uBAAuB;;;;;;;;;;;IAUhD,WAAW,CAAc,EAAE,EAAE,MAAM,EAAU,GAAG,EAAE,uBAAuB;;;;;;;;;;;IAUzE,WAAW,CAAc,EAAE,EAAE,MAAM;;;IASnC,aAAa,CAAS,GAAG,EAAE,qBAAqB;;;IAqCtD,OAAO,CAAC,WAAW;CAWpB"}
1
+ {"version":3,"file":"admin-auth.controller.d.ts","sourceRoot":"","sources":["../../../../src/lib/admin-console/controllers/admin-auth.controller.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAErE,OAAO,EAAe,UAAU,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,qBAKa,mBAAmB;IAE5B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBARd,SAAS,EAAE,gBAAgB,EAC3B,QAAQ,EAAE,mBAAmB,EAC7B,MAAM,EAAE,yBAAyB,EACjC,UAAU,EAAE,gBAAgB,EAC5B,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,EAE5B,cAAc,EAAE,UAAU,CAAC,YAAY,CAAC;IAG3D,OAAO,CAAC,gBAAgB;IAWlB,MAAM,CAAS,GAAG,EAAE,cAAc;;;;;;;;;;;;IAmClC,KAAK,CAAS,GAAG,EAAE,aAAa,EAA8B,GAAG,EAAE,QAAQ;;;;;;;;;;;;IAc3E,EAAE,CAAiB,KAAK,EAAE,iBAAiB;;;;;;;;;IAO3C,MAAM,CAAiB,KAAK,EAAE,iBAAiB,EAA8B,GAAG,EAAE,QAAQ;;;IAkB1F,YAAY;;;IAUZ,iBAAiB;;;;;;;;;;kBAuBa,MAAM;mBAAS,MAAM;;;IAqDnD,UAAU;;;;;;;;;;;IAaV,WAAW,CAAS,GAAG,EAAE,uBAAuB;;;;;;;;;;;IAWhD,WAAW,CAAc,EAAE,EAAE,MAAM,EAAU,GAAG,EAAE,uBAAuB;;;;;;;;;;;IAWzE,WAAW,CAAc,EAAE,EAAE,MAAM;;;IAUnC,aAAa,CAAS,GAAG,EAAE,qBAAqB;;;IAqCtD,OAAO,CAAC,WAAW;CAWpB"}
@@ -21,6 +21,9 @@ const login_dto_1 = require("../dto/login.dto");
21
21
  const reset_password_dto_1 = require("../dto/reset-password.dto");
22
22
  const signup_dto_1 = require("../dto/signup.dto");
23
23
  const admin_session_guard_1 = require("../guards/admin-session.guard");
24
+ const auth_exception_filter_1 = require("../../auth/filters/auth-exception.filter");
25
+ const swagger_1 = require("@nestjs/swagger");
26
+ const core_1 = require("../../core");
24
27
  const current_admin_decorator_1 = require("../decorators/current-admin.decorator");
25
28
  const admin_user_entity_1 = require("../entities/admin-user.entity");
26
29
  const create_dashboard_admin_dto_1 = require("../dto/create-dashboard-admin.dto");
@@ -96,6 +99,9 @@ let AdminAuthController = class AdminAuthController {
96
99
  admin: this.toSafeAdmin(admin),
97
100
  };
98
101
  }
102
+ async me(admin) {
103
+ return this.toSafeAdmin(admin);
104
+ }
99
105
  async logout(admin, res) {
100
106
  try {
101
107
  await this.sessions.invalidateSessionForAdmin(admin.id);
@@ -109,9 +115,6 @@ let AdminAuthController = class AdminAuthController {
109
115
  });
110
116
  return { message: 'Signed out' };
111
117
  }
112
- async me(admin) {
113
- return this.toSafeAdmin(admin);
114
- }
115
118
  async publicConfig() {
116
119
  return {
117
120
  allowAdminManagement: this.config.allowAdminManagement(),
@@ -121,7 +124,7 @@ let AdminAuthController = class AdminAuthController {
121
124
  const [totalUsers, activeUsers, verifiedUsers] = await Promise.all([
122
125
  this.userService.countUsers(),
123
126
  this.userService.countUsers({ where: { isActive: true } }),
124
- this.userService.countUsers({ where: { isVerified: true } }),
127
+ this.userService.countUsers({ where: { emailVerifiedAt: (0, typeorm_2.Not)((0, typeorm_2.IsNull)()) } }),
125
128
  ]);
126
129
  const roles = await this.roleService.getRoles();
127
130
  const tenants = await this.tenantService.getTenants({ order: { createdAt: 'DESC' } });
@@ -243,6 +246,7 @@ let AdminAuthController = class AdminAuthController {
243
246
  };
244
247
  exports.AdminAuthController = AdminAuthController;
245
248
  __decorate([
249
+ (0, swagger_1.ApiOperation)({ summary: 'Create an admin (secret-key gated)' }),
246
250
  (0, common_1.Post)('signup'),
247
251
  __param(0, (0, common_1.Body)()),
248
252
  __metadata("design:type", Function),
@@ -250,6 +254,7 @@ __decorate([
250
254
  __metadata("design:returntype", Promise)
251
255
  ], AdminAuthController.prototype, "signup", null);
252
256
  __decorate([
257
+ (0, swagger_1.ApiOperation)({ summary: 'Admin login (sets the session cookie)' }),
253
258
  (0, common_1.Post)('login'),
254
259
  __param(0, (0, common_1.Body)()),
255
260
  __param(1, (0, common_1.Res)({ passthrough: true })),
@@ -258,29 +263,33 @@ __decorate([
258
263
  __metadata("design:returntype", Promise)
259
264
  ], AdminAuthController.prototype, "login", null);
260
265
  __decorate([
261
- (0, common_1.Post)('logout'),
266
+ (0, swagger_1.ApiOperation)({ summary: 'Current admin' }),
267
+ (0, common_1.Get)('me'),
262
268
  (0, common_1.UseGuards)(admin_session_guard_1.AdminSessionGuard),
263
269
  __param(0, (0, current_admin_decorator_1.CurrentAdmin)()),
264
- __param(1, (0, common_1.Res)({ passthrough: true })),
265
270
  __metadata("design:type", Function),
266
- __metadata("design:paramtypes", [admin_user_entity_1.NestAuthAdminUser, Object]),
271
+ __metadata("design:paramtypes", [admin_user_entity_1.NestAuthAdminUser]),
267
272
  __metadata("design:returntype", Promise)
268
- ], AdminAuthController.prototype, "logout", null);
273
+ ], AdminAuthController.prototype, "me", null);
269
274
  __decorate([
270
- (0, common_1.Get)('me'),
275
+ (0, swagger_1.ApiOperation)({ summary: 'Admin logout' }),
276
+ (0, common_1.Post)('logout'),
271
277
  (0, common_1.UseGuards)(admin_session_guard_1.AdminSessionGuard),
272
278
  __param(0, (0, current_admin_decorator_1.CurrentAdmin)()),
279
+ __param(1, (0, common_1.Res)({ passthrough: true })),
273
280
  __metadata("design:type", Function),
274
- __metadata("design:paramtypes", [admin_user_entity_1.NestAuthAdminUser]),
281
+ __metadata("design:paramtypes", [admin_user_entity_1.NestAuthAdminUser, Object]),
275
282
  __metadata("design:returntype", Promise)
276
- ], AdminAuthController.prototype, "me", null);
283
+ ], AdminAuthController.prototype, "logout", null);
277
284
  __decorate([
285
+ (0, swagger_1.ApiOperation)({ summary: 'Public admin-console config' }),
278
286
  (0, common_1.Get)('config'),
279
287
  __metadata("design:type", Function),
280
288
  __metadata("design:paramtypes", []),
281
289
  __metadata("design:returntype", Promise)
282
290
  ], AdminAuthController.prototype, "publicConfig", null);
283
291
  __decorate([
292
+ (0, swagger_1.ApiOperation)({ summary: 'Dashboard stats' }),
284
293
  (0, common_1.Get)('api/stats'),
285
294
  (0, common_1.UseGuards)(admin_session_guard_1.AdminSessionGuard),
286
295
  __metadata("design:type", Function),
@@ -288,6 +297,7 @@ __decorate([
288
297
  __metadata("design:returntype", Promise)
289
298
  ], AdminAuthController.prototype, "getDashboardStats", null);
290
299
  __decorate([
300
+ (0, swagger_1.ApiOperation)({ summary: 'List admins' }),
291
301
  (0, common_1.Get)('admins'),
292
302
  (0, common_1.UseGuards)(admin_session_guard_1.AdminSessionGuard),
293
303
  __metadata("design:type", Function),
@@ -295,6 +305,7 @@ __decorate([
295
305
  __metadata("design:returntype", Promise)
296
306
  ], AdminAuthController.prototype, "listAdmins", null);
297
307
  __decorate([
308
+ (0, swagger_1.ApiOperation)({ summary: 'Create an admin' }),
298
309
  (0, common_1.Post)('admins'),
299
310
  (0, common_1.UseGuards)(admin_session_guard_1.AdminSessionGuard),
300
311
  __param(0, (0, common_1.Body)()),
@@ -303,6 +314,7 @@ __decorate([
303
314
  __metadata("design:returntype", Promise)
304
315
  ], AdminAuthController.prototype, "createAdmin", null);
305
316
  __decorate([
317
+ (0, swagger_1.ApiOperation)({ summary: 'Update an admin' }),
306
318
  (0, common_1.Patch)('admins/:id'),
307
319
  (0, common_1.UseGuards)(admin_session_guard_1.AdminSessionGuard),
308
320
  __param(0, (0, common_1.Param)('id')),
@@ -312,6 +324,7 @@ __decorate([
312
324
  __metadata("design:returntype", Promise)
313
325
  ], AdminAuthController.prototype, "updateAdmin", null);
314
326
  __decorate([
327
+ (0, swagger_1.ApiOperation)({ summary: 'Delete an admin' }),
315
328
  (0, common_1.Delete)('admins/:id'),
316
329
  (0, common_1.UseGuards)(admin_session_guard_1.AdminSessionGuard),
317
330
  __param(0, (0, common_1.Param)('id')),
@@ -320,6 +333,7 @@ __decorate([
320
333
  __metadata("design:returntype", Promise)
321
334
  ], AdminAuthController.prototype, "deleteAdmin", null);
322
335
  __decorate([
336
+ (0, swagger_1.ApiOperation)({ summary: "Reset an admin's password" }),
323
337
  (0, common_1.Post)('reset-password'),
324
338
  __param(0, (0, common_1.Body)()),
325
339
  __metadata("design:type", Function),
@@ -327,7 +341,11 @@ __decorate([
327
341
  __metadata("design:returntype", Promise)
328
342
  ], AdminAuthController.prototype, "resetPassword", null);
329
343
  exports.AdminAuthController = AdminAuthController = __decorate([
330
- (0, common_1.Controller)('auth/admin'),
344
+ (0, common_1.Controller)(),
345
+ (0, common_1.UseFilters)(auth_exception_filter_1.AuthExceptionFilter),
346
+ (0, swagger_1.ApiTags)('Admin · Console'),
347
+ (0, core_1.ApiValidationError)(),
348
+ (0, core_1.ApiUnauthorized)(),
331
349
  __param(7, (0, typeorm_1.InjectRepository)(user_entity_1.NestAuthUser)),
332
350
  __metadata("design:paramtypes", [admin_auth_service_1.AdminAuthService,
333
351
  admin_session_service_1.AdminSessionService,
@@ -1 +1 @@
1
- {"version":3,"file":"admin-auth.controller.js","sourceRoot":"","sources":["../../../../src/lib/admin-console/controllers/admin-auth.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admin-auth.controller.js","sourceRoot":"","sources":["../../../../src/lib/admin-console/controllers/admin-auth.controller.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ export declare class AdminConsoleController implements OnModuleInit {
5
5
  private readonly config;
6
6
  private readonly logger;
7
7
  private cachedIndexHtml;
8
- private staticRoot;
8
+ private readonly staticRoot;
9
9
  private readonly indexPath;
10
10
  constructor(config: AdminConsoleConfigService);
11
11
  onModuleInit(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"admin-console.controller.d.ts","sourceRoot":"","sources":["../../../../src/lib/admin-console/controllers/admin-console.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,YAAY,EAAc,MAAM,gBAAgB,CAAC;AACnF,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGnC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAsBrF,qBACa,sBAAuB,YAAW,YAAY;IAM7C,OAAO,CAAC,QAAQ,CAAC,MAAM;IALnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2C;IAClE,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAuC;gBAEpC,MAAM,EAAE,yBAAyB;IAE9D,YAAY;IAaN,UAAU,CAAQ,GAAG,EAAE,QAAQ;CAgCtC"}
1
+ {"version":3,"file":"admin-console.controller.d.ts","sourceRoot":"","sources":["../../../../src/lib/admin-console/controllers/admin-console.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,YAAY,EAAc,MAAM,gBAAgB,CAAC;AAEnF,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGnC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAwBrF,qBAEa,sBAAuB,YAAW,YAAY;IAM7C,OAAO,CAAC,QAAQ,CAAC,MAAM;IALnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2C;IAClE,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAClD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgE;gBAE7D,MAAM,EAAE,yBAAyB;IAE9D,YAAY;IAwBN,UAAU,CAAQ,GAAG,EAAE,QAAQ;CAuCtC"}
@@ -15,14 +15,15 @@ var AdminConsoleController_1;
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.AdminConsoleController = void 0;
17
17
  const common_1 = require("@nestjs/common");
18
+ const swagger_1 = require("@nestjs/swagger");
18
19
  const path_1 = require("path");
19
20
  const fs_1 = require("fs");
20
21
  const admin_console_config_service_1 = require("../services/admin-console-config.service");
21
22
  const candidateStaticRoots = [
22
23
  (0, path_1.join)(__dirname, '..', 'static'),
24
+ (0, path_1.join)(process.cwd(), 'node_modules', '@ackplus', 'nest-auth', 'dist', 'lib', 'admin-console', 'static'),
25
+ (0, path_1.join)(process.cwd(), 'packages', 'nest-auth', 'dist', 'lib', 'admin-console', 'static'),
23
26
  (0, path_1.join)(process.cwd(), 'packages', 'nest-auth', 'src', 'lib', 'admin-console', 'static'),
24
- (0, path_1.join)(process.cwd(), 'dist', 'apps', 'nest-examples', 'packages', 'nest-auth', 'src', 'lib', 'admin-console', 'static'),
25
- (0, path_1.join)(process.cwd(), 'dist', 'packages', 'nest-auth', 'src', 'lib', 'admin-console', 'static'),
26
27
  ];
27
28
  function resolveStaticRoot() {
28
29
  for (const root of candidateStaticRoots) {
@@ -30,14 +31,14 @@ function resolveStaticRoot() {
30
31
  return root;
31
32
  }
32
33
  }
33
- return candidateStaticRoots[1];
34
+ return null;
34
35
  }
35
36
  let AdminConsoleController = AdminConsoleController_1 = class AdminConsoleController {
36
37
  config;
37
38
  logger = new common_1.Logger(AdminConsoleController_1.name);
38
39
  cachedIndexHtml = null;
39
40
  staticRoot = resolveStaticRoot();
40
- indexPath = (0, path_1.join)(this.staticRoot, 'index.html');
41
+ indexPath = this.staticRoot ? (0, path_1.join)(this.staticRoot, 'index.html') : null;
41
42
  constructor(config) {
42
43
  this.config = config;
43
44
  }
@@ -45,19 +46,27 @@ let AdminConsoleController = AdminConsoleController_1 = class AdminConsoleContro
45
46
  if (this.config.getConfig().enabled === false) {
46
47
  return;
47
48
  }
49
+ if (!this.indexPath) {
50
+ this.logger.warn('Admin console UI bundle not found (no static/index.html). The admin API still works; ' +
51
+ 'run `pnpm -F @ackplus/nest-auth-admin build` to serve the dashboard at /auth/admin.');
52
+ return;
53
+ }
48
54
  try {
49
55
  this.cachedIndexHtml = (0, fs_1.readFileSync)(this.indexPath, 'utf8');
50
- this.logger.log('Admin console index.html cached successfully');
56
+ this.logger.log('Admin console UI bundle loaded');
51
57
  }
52
58
  catch (error) {
53
- this.logger.error('Failed to read admin console index.html on startup', { path: this.indexPath, message: error.message }, error.stack);
59
+ this.logger.warn(`Admin console UI bundle could not be read at ${this.indexPath}: ${error.message}`);
54
60
  }
55
61
  }
56
62
  async serveIndex(res) {
57
63
  this.config.ensureEnabled();
58
64
  if (!this.cachedIndexHtml) {
59
- this.logger.error('Cached index.html is not available');
60
- res.status(500).send('Internal Server Error');
65
+ res
66
+ .status(404)
67
+ .type('text/plain')
68
+ .send('Admin console UI is not bundled in this build. The admin API is available under ' +
69
+ '/auth/admin/api/*. To serve the dashboard UI, build @ackplus/nest-auth-admin.');
61
70
  return;
62
71
  }
63
72
  try {
@@ -87,7 +96,8 @@ __decorate([
87
96
  __metadata("design:returntype", Promise)
88
97
  ], AdminConsoleController.prototype, "serveIndex", null);
89
98
  exports.AdminConsoleController = AdminConsoleController = AdminConsoleController_1 = __decorate([
90
- (0, common_1.Controller)('auth/admin'),
99
+ (0, swagger_1.ApiExcludeController)(),
100
+ (0, common_1.Controller)(),
91
101
  __metadata("design:paramtypes", [admin_console_config_service_1.AdminConsoleConfigService])
92
102
  ], AdminConsoleController);
93
103
  //# sourceMappingURL=admin-console.controller.js.map