@ackplus/nest-auth 1.1.67 → 1.1.69-beta.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 (199) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +4 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/lib/admin-console/admin-console.module.d.ts.map +1 -1
  6. package/dist/lib/admin-console/admin-console.module.js +4 -1
  7. package/dist/lib/admin-console/admin-console.module.js.map +1 -1
  8. package/dist/lib/admin-console/controllers/admin-users.controller.d.ts +12 -9
  9. package/dist/lib/admin-console/controllers/admin-users.controller.d.ts.map +1 -1
  10. package/dist/lib/admin-console/controllers/admin-users.controller.js +52 -22
  11. package/dist/lib/admin-console/controllers/admin-users.controller.js.map +1 -1
  12. package/dist/lib/admin-console/dto/admin-user.dto.d.ts +3 -6
  13. package/dist/lib/admin-console/dto/admin-user.dto.d.ts.map +1 -1
  14. package/dist/lib/admin-console/dto/admin-user.dto.js +12 -33
  15. package/dist/lib/admin-console/dto/admin-user.dto.js.map +1 -1
  16. package/dist/lib/admin-console/entities/admin-user.entity.d.ts.map +1 -1
  17. package/dist/lib/admin-console/entities/admin-user.entity.js +3 -2
  18. package/dist/lib/admin-console/entities/admin-user.entity.js.map +1 -1
  19. package/dist/lib/admin-console/services/admin-user-management.service.d.ts +14 -0
  20. package/dist/lib/admin-console/services/admin-user-management.service.d.ts.map +1 -0
  21. package/dist/lib/admin-console/services/admin-user-management.service.js +135 -0
  22. package/dist/lib/admin-console/services/admin-user-management.service.js.map +1 -0
  23. package/dist/lib/admin-console/static/index.html +216 -216
  24. package/dist/lib/admin-console/static/nest-auth.json +60 -1
  25. package/dist/lib/auth/controllers/auth.controller.d.ts +3 -1
  26. package/dist/lib/auth/controllers/auth.controller.d.ts.map +1 -1
  27. package/dist/lib/auth/controllers/auth.controller.js +25 -4
  28. package/dist/lib/auth/controllers/auth.controller.js.map +1 -1
  29. package/dist/lib/auth/controllers/mfa.controller.d.ts +0 -1
  30. package/dist/lib/auth/controllers/mfa.controller.d.ts.map +1 -1
  31. package/dist/lib/auth/controllers/mfa.controller.js +31 -14
  32. package/dist/lib/auth/controllers/mfa.controller.js.map +1 -1
  33. package/dist/lib/auth/dto/requests/switch-tenant.request.dto.d.ts +5 -0
  34. package/dist/lib/auth/dto/requests/switch-tenant.request.dto.d.ts.map +1 -0
  35. package/dist/lib/auth/dto/requests/switch-tenant.request.dto.js +27 -0
  36. package/dist/lib/auth/dto/requests/switch-tenant.request.dto.js.map +1 -0
  37. package/dist/lib/auth/dto/responses/auth.response.dto.d.ts +3 -1
  38. package/dist/lib/auth/dto/responses/auth.response.dto.d.ts.map +1 -1
  39. package/dist/lib/auth/dto/responses/auth.response.dto.js +16 -0
  40. package/dist/lib/auth/dto/responses/auth.response.dto.js.map +1 -1
  41. package/dist/lib/auth/dto/responses/client-config.response.dto.d.ts +2 -3
  42. package/dist/lib/auth/dto/responses/client-config.response.dto.d.ts.map +1 -1
  43. package/dist/lib/auth/dto/responses/client-config.response.dto.js +2 -6
  44. package/dist/lib/auth/dto/responses/client-config.response.dto.js.map +1 -1
  45. package/dist/lib/auth/guards/auth.guard.d.ts +1 -4
  46. package/dist/lib/auth/guards/auth.guard.d.ts.map +1 -1
  47. package/dist/lib/auth/guards/auth.guard.js +6 -16
  48. package/dist/lib/auth/guards/auth.guard.js.map +1 -1
  49. package/dist/lib/auth/index.d.ts +1 -0
  50. package/dist/lib/auth/index.d.ts.map +1 -1
  51. package/dist/lib/auth/index.js +1 -0
  52. package/dist/lib/auth/index.js.map +1 -1
  53. package/dist/lib/auth/services/auth.service.d.ts +8 -2
  54. package/dist/lib/auth/services/auth.service.d.ts.map +1 -1
  55. package/dist/lib/auth/services/auth.service.js +114 -43
  56. package/dist/lib/auth/services/auth.service.js.map +1 -1
  57. package/dist/lib/auth/services/mfa.service.d.ts.map +1 -1
  58. package/dist/lib/auth/services/mfa.service.js +2 -1
  59. package/dist/lib/auth/services/mfa.service.js.map +1 -1
  60. package/dist/lib/auth/services/password.service.d.ts.map +1 -1
  61. package/dist/lib/auth/services/password.service.js +7 -8
  62. package/dist/lib/auth/services/password.service.js.map +1 -1
  63. package/dist/lib/auth/services/verification.service.js +8 -8
  64. package/dist/lib/auth/services/verification.service.js.map +1 -1
  65. package/dist/lib/auth.constants.d.ts +1 -0
  66. package/dist/lib/auth.constants.d.ts.map +1 -1
  67. package/dist/lib/auth.constants.js +2 -1
  68. package/dist/lib/auth.constants.js.map +1 -1
  69. package/dist/lib/core/core.module.d.ts.map +1 -1
  70. package/dist/lib/core/core.module.js +0 -3
  71. package/dist/lib/core/core.module.js.map +1 -1
  72. package/dist/lib/core/entities.d.ts +3 -1
  73. package/dist/lib/core/entities.d.ts.map +1 -1
  74. package/dist/lib/core/entities.js +3 -0
  75. package/dist/lib/core/entities.js.map +1 -1
  76. package/dist/lib/core/interfaces/auth-module-options.interface.d.ts +3 -2
  77. package/dist/lib/core/interfaces/auth-module-options.interface.d.ts.map +1 -1
  78. package/dist/lib/core/interfaces/token-payload.interface.d.ts +1 -0
  79. package/dist/lib/core/interfaces/token-payload.interface.d.ts.map +1 -1
  80. package/dist/lib/core/providers/email-auth.provider.d.ts +0 -2
  81. package/dist/lib/core/providers/email-auth.provider.d.ts.map +1 -1
  82. package/dist/lib/core/providers/email-auth.provider.js +8 -16
  83. package/dist/lib/core/providers/email-auth.provider.js.map +1 -1
  84. package/dist/lib/core/providers/phone-auth.provider.d.ts +2 -0
  85. package/dist/lib/core/providers/phone-auth.provider.d.ts.map +1 -1
  86. package/dist/lib/core/providers/phone-auth.provider.js +14 -0
  87. package/dist/lib/core/providers/phone-auth.provider.js.map +1 -1
  88. package/dist/lib/core/services/auth-config.service.d.ts.map +1 -1
  89. package/dist/lib/core/services/auth-config.service.js +4 -1
  90. package/dist/lib/core/services/auth-config.service.js.map +1 -1
  91. package/dist/lib/core/services/jwt.service.d.ts +1 -0
  92. package/dist/lib/core/services/jwt.service.d.ts.map +1 -1
  93. package/dist/lib/core/services/jwt.service.js.map +1 -1
  94. package/dist/lib/nest-auth.module.d.ts.map +1 -1
  95. package/dist/lib/nest-auth.module.js.map +1 -1
  96. package/dist/lib/request-context/request-context.d.ts +9 -2
  97. package/dist/lib/request-context/request-context.d.ts.map +1 -1
  98. package/dist/lib/request-context/request-context.js +41 -1
  99. package/dist/lib/request-context/request-context.js.map +1 -1
  100. package/dist/lib/role/entities/role.entity.d.ts +2 -0
  101. package/dist/lib/role/entities/role.entity.d.ts.map +1 -1
  102. package/dist/lib/role/entities/role.entity.js +25 -11
  103. package/dist/lib/role/entities/role.entity.js.map +1 -1
  104. package/dist/lib/role/services/role.service.d.ts.map +1 -1
  105. package/dist/lib/role/services/role.service.js +0 -17
  106. package/dist/lib/role/services/role.service.js.map +1 -1
  107. package/dist/lib/session/services/session-manager.service.d.ts +1 -0
  108. package/dist/lib/session/services/session-manager.service.d.ts.map +1 -1
  109. package/dist/lib/session/services/session-manager.service.js +4 -3
  110. package/dist/lib/session/services/session-manager.service.js.map +1 -1
  111. package/dist/lib/session/utils/session.util.d.ts.map +1 -1
  112. package/dist/lib/session/utils/session.util.js.map +1 -1
  113. package/dist/lib/tenant/decorators/current-tenant.decorator.d.ts +3 -0
  114. package/dist/lib/tenant/decorators/current-tenant.decorator.d.ts.map +1 -0
  115. package/dist/lib/tenant/decorators/current-tenant.decorator.js +10 -0
  116. package/dist/lib/tenant/decorators/current-tenant.decorator.js.map +1 -0
  117. package/dist/lib/tenant/decorators/current-user-access.decorator.d.ts +3 -0
  118. package/dist/lib/tenant/decorators/current-user-access.decorator.d.ts.map +1 -0
  119. package/dist/lib/tenant/decorators/current-user-access.decorator.js +10 -0
  120. package/dist/lib/tenant/decorators/current-user-access.decorator.js.map +1 -0
  121. package/dist/lib/tenant/entities/tenant.entity.d.ts +2 -1
  122. package/dist/lib/tenant/entities/tenant.entity.d.ts.map +1 -1
  123. package/dist/lib/tenant/entities/tenant.entity.js +5 -4
  124. package/dist/lib/tenant/entities/tenant.entity.js.map +1 -1
  125. package/dist/lib/tenant/entities/user-access.entity.d.ts +19 -0
  126. package/dist/lib/tenant/entities/user-access.entity.d.ts.map +1 -0
  127. package/dist/lib/tenant/entities/user-access.entity.js +100 -0
  128. package/dist/lib/tenant/entities/user-access.entity.js.map +1 -0
  129. package/dist/lib/tenant/index.d.ts +4 -0
  130. package/dist/lib/tenant/index.d.ts.map +1 -1
  131. package/dist/lib/tenant/index.js +8 -1
  132. package/dist/lib/tenant/index.js.map +1 -1
  133. package/dist/lib/tenant/services/tenant.service.d.ts +4 -9
  134. package/dist/lib/tenant/services/tenant.service.d.ts.map +1 -1
  135. package/dist/lib/tenant/services/tenant.service.js +23 -72
  136. package/dist/lib/tenant/services/tenant.service.js.map +1 -1
  137. package/dist/lib/tenant/tenant-context/services/base-tenant-context.service.d.ts +13 -0
  138. package/dist/lib/tenant/tenant-context/services/base-tenant-context.service.d.ts.map +1 -0
  139. package/dist/lib/tenant/tenant-context/services/base-tenant-context.service.js +26 -0
  140. package/dist/lib/tenant/tenant-context/services/base-tenant-context.service.js.map +1 -0
  141. package/dist/lib/tenant/tenant-context/services/disabled-tenant-context.service.d.ts +10 -0
  142. package/dist/lib/tenant/tenant-context/services/disabled-tenant-context.service.d.ts.map +1 -0
  143. package/dist/lib/tenant/tenant-context/services/disabled-tenant-context.service.js +29 -0
  144. package/dist/lib/tenant/tenant-context/services/disabled-tenant-context.service.js.map +1 -0
  145. package/dist/lib/tenant/tenant-context/services/isolated-tenant-context.service.d.ts +6 -0
  146. package/dist/lib/tenant/tenant-context/services/isolated-tenant-context.service.d.ts.map +1 -0
  147. package/dist/lib/tenant/tenant-context/services/isolated-tenant-context.service.js +26 -0
  148. package/dist/lib/tenant/tenant-context/services/isolated-tenant-context.service.js.map +1 -0
  149. package/dist/lib/tenant/tenant-context/services/shared-tenant-context.service.d.ts +6 -0
  150. package/dist/lib/tenant/tenant-context/services/shared-tenant-context.service.d.ts.map +1 -0
  151. package/dist/lib/tenant/tenant-context/services/shared-tenant-context.service.js +26 -0
  152. package/dist/lib/tenant/tenant-context/services/shared-tenant-context.service.js.map +1 -0
  153. package/dist/lib/tenant/tenant-context/tenant-context.interface.d.ts +9 -0
  154. package/dist/lib/tenant/tenant-context/tenant-context.interface.d.ts.map +1 -0
  155. package/dist/lib/tenant/tenant-context/tenant-context.interface.js +3 -0
  156. package/dist/lib/tenant/tenant-context/tenant-context.interface.js.map +1 -0
  157. package/dist/lib/tenant/tenant.module.d.ts.map +1 -1
  158. package/dist/lib/tenant/tenant.module.js +25 -0
  159. package/dist/lib/tenant/tenant.module.js.map +1 -1
  160. package/dist/lib/user/entities/user.entity.d.ts +8 -15
  161. package/dist/lib/user/entities/user.entity.d.ts.map +1 -1
  162. package/dist/lib/user/entities/user.entity.js +77 -66
  163. package/dist/lib/user/entities/user.entity.js.map +1 -1
  164. package/dist/lib/user/events/user-deleted.event.d.ts +0 -1
  165. package/dist/lib/user/events/user-deleted.event.d.ts.map +1 -1
  166. package/dist/lib/user/events/user-deleted.event.js.map +1 -1
  167. package/dist/lib/user/events/user-updated.event.d.ts +0 -1
  168. package/dist/lib/user/events/user-updated.event.d.ts.map +1 -1
  169. package/dist/lib/user/events/user-updated.event.js.map +1 -1
  170. package/dist/lib/user/services/access-key.service.d.ts.map +1 -1
  171. package/dist/lib/user/services/access-key.service.js.map +1 -1
  172. package/dist/lib/user/services/user.service.d.ts +11 -3
  173. package/dist/lib/user/services/user.service.d.ts.map +1 -1
  174. package/dist/lib/user/services/user.service.js +159 -58
  175. package/dist/lib/user/services/user.service.js.map +1 -1
  176. package/dist/lib/user/user.module.d.ts.map +1 -1
  177. package/dist/lib/user/user.module.js +2 -1
  178. package/dist/lib/user/user.module.js.map +1 -1
  179. package/dist/lib/utils/database.utils.d.ts +1 -0
  180. package/dist/lib/utils/database.utils.d.ts.map +1 -1
  181. package/dist/lib/utils/database.utils.js +12 -0
  182. package/dist/lib/utils/database.utils.js.map +1 -1
  183. package/dist/lib/utils/index.d.ts +1 -0
  184. package/dist/lib/utils/index.d.ts.map +1 -1
  185. package/dist/lib/utils/index.js +1 -0
  186. package/dist/lib/utils/index.js.map +1 -1
  187. package/dist/lib/utils/normalize.util.d.ts +3 -0
  188. package/dist/lib/utils/normalize.util.d.ts.map +1 -0
  189. package/dist/lib/utils/normalize.util.js +17 -0
  190. package/dist/lib/utils/normalize.util.js.map +1 -0
  191. package/package.json +2 -2
  192. package/dist/lib/auth/filters/index.d.ts +0 -2
  193. package/dist/lib/auth/filters/index.d.ts.map +0 -1
  194. package/dist/lib/auth/filters/index.js +0 -18
  195. package/dist/lib/auth/filters/index.js.map +0 -1
  196. package/dist/lib/core/services/initialization.service.d.ts +0 -11
  197. package/dist/lib/core/services/initialization.service.d.ts.map +0 -1
  198. package/dist/lib/core/services/initialization.service.js +0 -44
  199. package/dist/lib/core/services/initialization.service.js.map +0 -1
@@ -8,9 +8,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
11
  Object.defineProperty(exports, "__esModule", { value: true });
15
12
  exports.NestAuthAuthGuard = void 0;
16
13
  const common_1 = require("@nestjs/common");
@@ -26,8 +23,6 @@ const auth_config_service_1 = require("../../core/services/auth-config.service")
26
23
  const cookie_helper_1 = require("../../utils/cookie.helper");
27
24
  const lodash_1 = require("lodash");
28
25
  const debug_logger_service_1 = require("../../core/services/debug-logger.service");
29
- const typeorm_1 = require("@nestjs/typeorm");
30
- const typeorm_2 = require("typeorm");
31
26
  const user_entity_1 = require("../../user/entities/user.entity");
32
27
  let NestAuthAuthGuard = class NestAuthAuthGuard {
33
28
  reflector;
@@ -36,19 +31,16 @@ let NestAuthAuthGuard = class NestAuthAuthGuard {
36
31
  accessKeyService;
37
32
  authConfigService;
38
33
  debugLogger;
39
- userRepository;
40
- constructor(reflector, jwtService, sessionManager, accessKeyService, authConfigService, debugLogger, userRepository) {
34
+ constructor(reflector, jwtService, sessionManager, accessKeyService, authConfigService, debugLogger) {
41
35
  this.reflector = reflector;
42
36
  this.jwtService = jwtService;
43
37
  this.sessionManager = sessionManager;
44
38
  this.accessKeyService = accessKeyService;
45
39
  this.authConfigService = authConfigService;
46
40
  this.debugLogger = debugLogger;
47
- this.userRepository = userRepository;
48
41
  }
49
42
  async canActivate(context) {
50
43
  const request = context.switchToHttp().getRequest();
51
- const response = context.switchToHttp().getResponse();
52
44
  const isOptional = this.reflector.getAllAndOverride(auth_constants_1.OPTIONAL_AUTH_KEY, [
53
45
  context.getHandler(),
54
46
  context.getClass(),
@@ -75,7 +67,7 @@ let NestAuthAuthGuard = class NestAuthAuthGuard {
75
67
  switch (authType) {
76
68
  case 'bearer':
77
69
  this.debugLogger.debug('Handling JWT authentication', 'AuthGuard');
78
- isAuthenticated = await this.handleJwtAuth(context, request, response, token, isOptional);
70
+ isAuthenticated = await this.handleJwtAuth(context, request, token, isOptional);
79
71
  break;
80
72
  case 'apikey':
81
73
  this.debugLogger.debug('Handling API key authentication', 'AuthGuard');
@@ -144,7 +136,7 @@ let NestAuthAuthGuard = class NestAuthAuthGuard {
144
136
  request.accessKey = null;
145
137
  request.authType = null;
146
138
  }
147
- async handleJwtAuth(context, request, response, token, isOptional = false) {
139
+ async handleJwtAuth(context, request, token, isOptional = false) {
148
140
  try {
149
141
  const payload = await this.jwtService.verifyToken(token);
150
142
  const config = this.authConfigService.getConfig();
@@ -180,9 +172,9 @@ let NestAuthAuthGuard = class NestAuthAuthGuard {
180
172
  }
181
173
  }
182
174
  request.session = session;
183
- const user = await this.userRepository.findOne({
175
+ const user = await user_entity_1.NestAuthUser.findOne({
184
176
  where: { id: session.userId },
185
- select: ['id', 'isActive', 'isVerified'],
177
+ select: ['id', 'isActive'],
186
178
  });
187
179
  if (!user || user.isActive === false) {
188
180
  if (isOptional) {
@@ -429,13 +421,11 @@ let NestAuthAuthGuard = class NestAuthAuthGuard {
429
421
  exports.NestAuthAuthGuard = NestAuthAuthGuard;
430
422
  exports.NestAuthAuthGuard = NestAuthAuthGuard = __decorate([
431
423
  (0, common_1.Injectable)(),
432
- __param(6, (0, typeorm_1.InjectRepository)(user_entity_1.NestAuthUser)),
433
424
  __metadata("design:paramtypes", [core_1.Reflector,
434
425
  jwt_service_1.JwtService,
435
426
  session_manager_service_1.SessionManagerService,
436
427
  access_key_service_1.AccessKeyService,
437
428
  auth_config_service_1.AuthConfigService,
438
- debug_logger_service_1.DebugLoggerService,
439
- typeorm_2.Repository])
429
+ debug_logger_service_1.DebugLoggerService])
440
430
  ], NestAuthAuthGuard);
441
431
  //# sourceMappingURL=auth.guard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.guard.js","sourceRoot":"","sources":["../../../../src/lib/auth/guards/auth.guard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.guard.js","sourceRoot":"","sources":["../../../../src/lib/auth/guards/auth.guard.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ export * from './dto/requests/change-password.request.dto';
26
26
  export * from './dto/requests/toggle-mfa.request.dto';
27
27
  export * from './dto/requests/refresh-token.request.dto';
28
28
  export * from './dto/requests/verify-2fa.request.dto';
29
+ export * from './dto/requests/switch-tenant.request.dto';
29
30
  export * from './dto/requests/verify-totp-setup.request.dto';
30
31
  export * from './dto/responses/auth.response.dto';
31
32
  export * from './dto/responses/auth-cookie.response.dto';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/auth/index.ts"],"names":[],"mappings":"AACA,cAAc,qBAAqB,CAAC;AAIpC,cAAc,2CAA2C,CAAC;AAG1D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yCAAyC,CAAC;AACxD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AAGpD,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,sDAAsD,CAAC;AACrE,cAAc,uDAAuD,CAAC;AACtE,cAAc,0CAA0C,CAAC;AACzD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,uCAAuC,CAAC;AACtD,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,4CAA4C,CAAC;AAG3D,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/auth/index.ts"],"names":[],"mappings":"AACA,cAAc,qBAAqB,CAAC;AAIpC,cAAc,2CAA2C,CAAC;AAG1D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yCAAyC,CAAC;AACxD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qCAAqC,CAAC;AAGpD,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,sDAAsD,CAAC;AACrE,cAAc,uDAAuD,CAAC;AACtE,cAAc,0CAA0C,CAAC;AACzD,cAAc,4CAA4C,CAAC;AAC3D,cAAc,uCAAuC,CAAC;AACtD,cAAc,0CAA0C,CAAC;AACzD,cAAc,uCAAuC,CAAC;AACtD,cAAc,0CAA0C,CAAC;AACzD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,mCAAmC,CAAC;AAClD,cAAc,0CAA0C,CAAC;AACzD,cAAc,yCAAyC,CAAC;AACxD,cAAc,yCAAyC,CAAC;AACxD,cAAc,4CAA4C,CAAC;AAG3D,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kCAAkC,CAAC"}
@@ -42,6 +42,7 @@ __exportStar(require("./dto/requests/change-password.request.dto"), exports);
42
42
  __exportStar(require("./dto/requests/toggle-mfa.request.dto"), exports);
43
43
  __exportStar(require("./dto/requests/refresh-token.request.dto"), exports);
44
44
  __exportStar(require("./dto/requests/verify-2fa.request.dto"), exports);
45
+ __exportStar(require("./dto/requests/switch-tenant.request.dto"), exports);
45
46
  __exportStar(require("./dto/requests/verify-totp-setup.request.dto"), exports);
46
47
  __exportStar(require("./dto/responses/auth.response.dto"), exports);
47
48
  __exportStar(require("./dto/responses/auth-cookie.response.dto"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/auth/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,sDAAoC;AAIpC,4EAA0D;AAG1D,gEAA8C;AAC9C,4DAA0C;AAC1C,0EAAwD;AACxD,gEAA8C;AAC9C,mEAAiD;AACjD,gEAA8C;AAC9C,oEAAkD;AAClD,iEAA+C;AAC/C,sEAAoD;AAGpD,0DAAwC;AACxC,yDAAuC;AAGvC,gEAA8C;AAC9C,+DAA6C;AAG7C,mEAAiD;AACjD,oEAAkD;AAClD,2EAAyD;AACzD,0EAAwD;AACxD,0EAAwD;AACxD,6EAA2D;AAC3D,uFAAqE;AACrE,wFAAsE;AACtE,2EAAyD;AACzD,6EAA2D;AAC3D,wEAAsD;AACtD,2EAAyD;AACzD,wEAAsD;AACtD,+EAA6D;AAC7D,oEAAkD;AAClD,2EAAyD;AACzD,0EAAwD;AACxD,0EAAwD;AACxD,6EAA2D;AAG3D,wDAAsC;AACtC,+DAA6C;AAC7C,mEAAiD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/auth/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,sDAAoC;AAIpC,4EAA0D;AAG1D,gEAA8C;AAC9C,4DAA0C;AAC1C,0EAAwD;AACxD,gEAA8C;AAC9C,mEAAiD;AACjD,gEAA8C;AAC9C,oEAAkD;AAClD,iEAA+C;AAC/C,sEAAoD;AAGpD,0DAAwC;AACxC,yDAAuC;AAGvC,gEAA8C;AAC9C,+DAA6C;AAG7C,mEAAiD;AACjD,oEAAkD;AAClD,2EAAyD;AACzD,0EAAwD;AACxD,0EAAwD;AACxD,6EAA2D;AAC3D,uFAAqE;AACrE,wFAAsE;AACtE,2EAAyD;AACzD,6EAA2D;AAC3D,wEAAsD;AACtD,2EAAyD;AACzD,wEAAsD;AACtD,2EAAyD;AACzD,+EAA6D;AAC7D,oEAAkD;AAClD,2EAAyD;AACzD,0EAAwD;AACxD,0EAAwD;AACxD,6EAA2D;AAG3D,wDAAsC;AACtC,+DAA6C;AAC7C,mEAAiD"}
@@ -16,6 +16,7 @@ import { AuthConfigService } from '../../core/services/auth-config.service';
16
16
  import { NestAuthSession } from '../../session/entities/session.entity';
17
17
  import { AuthTokensResponseDto } from '../dto/responses/auth.response.dto';
18
18
  import { UserService } from '../../user/services/user.service';
19
+ import { ITenantContextService } from '../../tenant/tenant-context/tenant-context.interface';
19
20
  export declare class AuthService {
20
21
  private readonly userRepository;
21
22
  private readonly authProviderRegistry;
@@ -27,17 +28,22 @@ export declare class AuthService {
27
28
  private readonly debugLogger;
28
29
  private readonly authConfigService;
29
30
  private readonly userService;
30
- constructor(userRepository: Repository<NestAuthUser>, authProviderRegistry: AuthProviderRegistryService, mfaService: MfaService, sessionManager: SessionManagerService, jwtService: JwtService, eventEmitter: EventEmitter2, tenantService: TenantService, debugLogger: DebugLoggerService, authConfigService: AuthConfigService, userService: UserService);
31
+ private readonly tenantContext;
32
+ private readonly authConfig;
33
+ constructor(userRepository: Repository<NestAuthUser>, authProviderRegistry: AuthProviderRegistryService, mfaService: MfaService, sessionManager: SessionManagerService, jwtService: JwtService, eventEmitter: EventEmitter2, tenantService: TenantService, debugLogger: DebugLoggerService, authConfigService: AuthConfigService, userService: UserService, tenantContext: ITenantContextService);
31
34
  getUserWithRolesAndPermissions(userId: string, relations?: string[]): Promise<NestAuthUser>;
32
- getUser(): Promise<Partial<NestAuthUser>>;
35
+ getUser(): Promise<any>;
33
36
  signup(input: NestAuthSignupRequestDto): Promise<AuthResponseDto>;
34
37
  login(input: NestAuthLoginRequestDto): Promise<AuthResponseDto>;
35
38
  verify2fa(input: NestAuthVerify2faRequestDto): Promise<import("../dto/responses/auth.response.dto").AuthWithTokensResponseDto>;
39
+ switchTenant(tenantId?: string | null): Promise<AuthResponseDto>;
36
40
  send2faCode(userId: string, method: NestAuthMFAMethodEnum): Promise<boolean>;
37
41
  private handleSocialLogin;
38
42
  refreshToken(refreshToken: string): Promise<AuthTokensResponseDto>;
39
43
  logout(logoutType?: 'user' | 'admin' | 'system', reason?: string): Promise<boolean>;
40
44
  logoutAll(userId: string, logoutType?: 'user' | 'admin' | 'system', reason?: string): Promise<boolean>;
45
+ private getTenantMode;
46
+ private ensureTenantAccess;
41
47
  private generateTokensPayload;
42
48
  private handleError;
43
49
  generateTokensFromSession(session: NestAuthSession): Promise<AuthTokensResponseDto>;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/auth/services/auth.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/auth/services/auth.service.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.AuthService = void 0;
16
16
  const common_1 = require("@nestjs/common");
17
+ const common_2 = require("@nestjs/common");
17
18
  const typeorm_1 = require("@nestjs/typeorm");
18
19
  const typeorm_2 = require("typeorm");
19
20
  const user_entity_1 = require("../../user/entities/user.entity");
@@ -23,6 +24,7 @@ const jwt_service_1 = require("../../core/services/jwt.service");
23
24
  const event_emitter_1 = require("@nestjs/event-emitter");
24
25
  const session_manager_service_1 = require("../../session/services/session-manager.service");
25
26
  const request_context_1 = require("../../request-context/request-context");
27
+ const nest_auth_contracts_1 = require("@ackplus/nest-auth-contracts");
26
28
  const user_registered_event_1 = require("../events/user-registered.event");
27
29
  const user_logged_in_event_1 = require("../events/user-logged-in.event");
28
30
  const user_2fa_verified_event_1 = require("../events/user-2fa-verified.event");
@@ -35,6 +37,7 @@ const debug_logger_service_1 = require("../../core/services/debug-logger.service
35
37
  const auth_config_service_1 = require("../../core/services/auth-config.service");
36
38
  const cookie_helper_1 = require("../../utils/cookie.helper");
37
39
  const user_service_1 = require("../../user/services/user.service");
40
+ const auth_constants_2 = require("../../auth.constants");
38
41
  let AuthService = class AuthService {
39
42
  userRepository;
40
43
  authProviderRegistry;
@@ -46,7 +49,9 @@ let AuthService = class AuthService {
46
49
  debugLogger;
47
50
  authConfigService;
48
51
  userService;
49
- constructor(userRepository, authProviderRegistry, mfaService, sessionManager, jwtService, eventEmitter, tenantService, debugLogger, authConfigService, userService) {
52
+ tenantContext;
53
+ authConfig;
54
+ constructor(userRepository, authProviderRegistry, mfaService, sessionManager, jwtService, eventEmitter, tenantService, debugLogger, authConfigService, userService, tenantContext) {
50
55
  this.userRepository = userRepository;
51
56
  this.authProviderRegistry = authProviderRegistry;
52
57
  this.mfaService = mfaService;
@@ -57,6 +62,8 @@ let AuthService = class AuthService {
57
62
  this.debugLogger = debugLogger;
58
63
  this.authConfigService = authConfigService;
59
64
  this.userService = userService;
65
+ this.tenantContext = tenantContext;
66
+ this.authConfig = this.authConfigService.getConfig();
60
67
  }
61
68
  getUserWithRolesAndPermissions(userId, relations = []) {
62
69
  return this.userRepository.findOne({
@@ -68,34 +75,32 @@ let AuthService = class AuthService {
68
75
  });
69
76
  }
70
77
  async getUser() {
71
- const user = request_context_1.RequestContext.currentUser();
78
+ const user = await request_context_1.RequestContext.currentUser();
72
79
  if (!user) {
73
80
  return null;
74
81
  }
75
82
  const fullUser = await this.getUserWithRolesAndPermissions(user.id);
76
- const config = this.authConfigService.getConfig();
77
- if (config.user?.serialize) {
78
- return await config.user.serialize(fullUser);
83
+ let serializedUser = fullUser;
84
+ if (this.authConfig.user?.serialize) {
85
+ serializedUser = await this.authConfig.user.serialize(fullUser);
79
86
  }
80
- return fullUser;
87
+ return serializedUser;
81
88
  }
82
89
  async signup(input) {
83
90
  this.debugLogger.logFunctionEntry('signup', 'AuthService', { email: input.email, phone: input.phone, hasPassword: !!input.password });
84
91
  try {
85
- const config = this.authConfigService.getConfig();
86
- if (config.registration?.enabled === false) {
92
+ if (this.authConfig.registration?.enabled === false) {
87
93
  throw new common_1.ForbiddenException({
88
94
  message: 'Registration is disabled',
89
95
  code: auth_constants_1.ERROR_CODES.REGISTRATION_DISABLED,
90
96
  });
91
97
  }
92
- const { email, phone, password } = input;
93
- let { tenantId = null } = input;
94
- if (config.registrationHooks?.beforeSignup) {
98
+ if (this.authConfig.registrationHooks?.beforeSignup) {
95
99
  const req = request_context_1.RequestContext.currentRequest();
96
- await config.registrationHooks.beforeSignup(input, { request: req });
100
+ input = await this.authConfig.registrationHooks.beforeSignup(input, { request: req });
97
101
  }
98
- tenantId = await this.tenantService.resolveTenantId(tenantId);
102
+ const { email, phone, password, tenantId } = input;
103
+ await this.tenantService.resolveTenantId(tenantId);
99
104
  this.debugLogger.logAuthOperation('signup', 'email|phone', undefined, { email, phone, resolvedTenantId: tenantId });
100
105
  if (!email && !phone) {
101
106
  this.debugLogger.error('Signup failed: Neither email nor phone provided', 'AuthService');
@@ -105,13 +110,13 @@ let AuthService = class AuthService {
105
110
  });
106
111
  }
107
112
  const providersToLink = [];
108
- if (email && config.emailAuth?.enabled !== false) {
113
+ if (email && this.authConfig.emailAuth?.enabled !== false) {
109
114
  const provider = this.authProviderRegistry.getProvider(auth_constants_1.EMAIL_AUTH_PROVIDER);
110
115
  if (provider) {
111
116
  providersToLink.push({ provider, userId: email, type: 'email' });
112
117
  }
113
118
  }
114
- if (phone && config.phoneAuth?.enabled === true) {
119
+ if (phone && this.authConfig.phoneAuth?.enabled === true) {
115
120
  const provider = this.authProviderRegistry.getProvider(auth_constants_1.PHONE_AUTH_PROVIDER);
116
121
  if (provider) {
117
122
  providersToLink.push({ provider, userId: phone, type: 'phone' });
@@ -147,19 +152,18 @@ let AuthService = class AuthService {
147
152
  let user = await this.userService.createUser({
148
153
  email,
149
154
  phone,
150
- tenantId,
151
155
  isVerified: false,
152
156
  password
153
- }, input);
157
+ }, tenantId, input);
154
158
  this.debugLogger.info('User created successfully', 'AuthService', { userId: user.id, tenantId });
155
159
  for (const item of providersToLink) {
156
160
  this.debugLogger.debug('Linking user to provider', 'AuthService', { userId: user.id, providerName: item.provider.providerName });
157
161
  await item.provider.linkToUser(user.id, item.userId);
158
162
  }
159
- if (config.registrationHooks?.onSignup) {
163
+ if (this.authConfig.registrationHooks?.onSignup) {
160
164
  this.debugLogger.debug('Applying registrationHooks.onSignup hook', 'AuthService', { userId: user.id });
161
165
  const request = request_context_1.RequestContext.currentRequest();
162
- const modifiedUser = await config.registrationHooks.onSignup(user, input, { request });
166
+ const modifiedUser = await this.authConfig.registrationHooks.onSignup(user, input, { request });
163
167
  if (modifiedUser) {
164
168
  user = modifiedUser;
165
169
  }
@@ -176,7 +180,7 @@ let AuthService = class AuthService {
176
180
  }
177
181
  }
178
182
  this.debugLogger.debug('Creating session for new user', 'AuthService', { userId: user.id });
179
- const session = await this.sessionManager.createSessionFromUser(user);
183
+ const session = await this.sessionManager.createSessionFromUser(user, { tenantId });
180
184
  const tokens = await this.generateTokensFromSession(session);
181
185
  const isRequiresMfa = await this.mfaService.isRequiresMfa(user.id);
182
186
  this.debugLogger.debug('Signup tokens generated', 'AuthService', { userId: user.id, isRequiresMfa });
@@ -184,7 +188,7 @@ let AuthService = class AuthService {
184
188
  const provider = providersToLink[0]?.provider;
185
189
  await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.REGISTERED, new user_registered_event_1.UserRegisteredEvent({
186
190
  user,
187
- tenantId: user.tenantId,
191
+ tenantId,
188
192
  input,
189
193
  provider,
190
194
  session,
@@ -192,7 +196,7 @@ let AuthService = class AuthService {
192
196
  isRequiresMfa
193
197
  }));
194
198
  this.debugLogger.logFunctionExit('signup', 'AuthService', { userId: user.id, isRequiresMfa });
195
- const autoLoginAfterSignup = config.registration?.autoLoginAfterSignup !== false;
199
+ const autoLoginAfterSignup = this.authConfig.registration?.autoLoginAfterSignup !== false;
196
200
  if (!autoLoginAfterSignup) {
197
201
  return {
198
202
  message: 'Account created successfully. Please login.',
@@ -210,12 +214,10 @@ let AuthService = class AuthService {
210
214
  }
211
215
  }
212
216
  async login(input) {
213
- let { credentials, providerName, createUserIfNotExists = false, guard } = input;
214
- this.debugLogger.logFunctionEntry('login', 'AuthService', { providerName, createUserIfNotExists, guard });
215
- let { tenantId = null } = input;
217
+ let { credentials, providerName, createUserIfNotExists = false, guard, tenantId } = input;
218
+ this.debugLogger.logFunctionEntry('login', 'AuthService', { providerName, createUserIfNotExists, guard, tenantId });
216
219
  try {
217
- const config = this.authConfigService.getConfig();
218
- tenantId = await this.tenantService.resolveTenantId(tenantId);
220
+ await this.tenantService.resolveTenantId(tenantId);
219
221
  this.debugLogger.logAuthOperation('login', providerName, undefined, { resolvedTenantId: tenantId, createUserIfNotExists });
220
222
  const provider = this.authProviderRegistry.getProvider(providerName);
221
223
  if (!provider) {
@@ -249,15 +251,16 @@ let AuthService = class AuthService {
249
251
  code: auth_constants_1.ERROR_CODES.ACCOUNT_INACTIVE,
250
252
  });
251
253
  }
252
- if (config.loginHooks?.onLogin) {
254
+ if (this.authConfig.loginHooks?.onLogin) {
253
255
  this.debugLogger.debug('Applying loginHooks.onLogin hook', 'AuthService', { userId: user.id });
254
256
  const request = request_context_1.RequestContext.currentRequest();
255
- const modifiedUser = await config.loginHooks.onLogin(user, input, { request, provider });
257
+ const modifiedUser = await this.authConfig.loginHooks.onLogin(user, input, { request, provider });
256
258
  if (modifiedUser) {
257
259
  user = modifiedUser;
258
260
  }
259
261
  }
260
262
  user = await this.getUserWithRolesAndPermissions(user.id);
263
+ await this.ensureTenantAccess(user, tenantId, createUserIfNotExists);
261
264
  let isRequiresMfa = false;
262
265
  let isTrusted = false;
263
266
  if (!provider.skipMfa) {
@@ -273,7 +276,7 @@ let AuthService = class AuthService {
273
276
  });
274
277
  }
275
278
  }
276
- let session = await this.sessionManager.createSessionFromUser(user);
279
+ let session = await this.sessionManager.createSessionFromUser(user, { tenantId });
277
280
  if (isRequiresMfa) {
278
281
  isTrusted = await this.checkTrustedDevice(user);
279
282
  if (isTrusted) {
@@ -286,7 +289,7 @@ let AuthService = class AuthService {
286
289
  const tokens = await this.generateTokensFromSession(session);
287
290
  await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.LOGGED_IN, new user_logged_in_event_1.UserLoggedInEvent({
288
291
  user,
289
- tenantId: user.tenantId,
292
+ tenantId,
290
293
  input,
291
294
  provider,
292
295
  session,
@@ -342,7 +345,7 @@ let AuthService = class AuthService {
342
345
  this.debugLogger.debug('Emitting 2FA verified event', 'AuthService', { userId: user.id });
343
346
  await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.TWO_FACTOR_VERIFIED, new user_2fa_verified_event_1.User2faVerifiedEvent({
344
347
  user: user,
345
- tenantId: user?.tenantId,
348
+ tenantId: payload.data?.tenantId ?? user?.tenantId,
346
349
  input,
347
350
  session: payload,
348
351
  tokens
@@ -356,6 +359,40 @@ let AuthService = class AuthService {
356
359
  throw error;
357
360
  }
358
361
  }
362
+ async switchTenant(tenantId) {
363
+ const session = request_context_1.RequestContext.currentSession();
364
+ if (!session) {
365
+ throw new common_1.UnauthorizedException({
366
+ message: 'Session not found',
367
+ code: auth_constants_1.ERROR_CODES.SESSION_NOT_FOUND,
368
+ });
369
+ }
370
+ const resolvedTenantId = await this.tenantService.resolveTenantId(tenantId || null);
371
+ const user = await this.userRepository.findOne({
372
+ where: { id: session.userId },
373
+ relations: ['userAccesses', 'userAccesses.tenant', 'userAccesses.roles'],
374
+ });
375
+ if (!user) {
376
+ throw new common_1.UnauthorizedException({
377
+ message: 'User not found',
378
+ code: auth_constants_1.ERROR_CODES.USER_NOT_FOUND,
379
+ });
380
+ }
381
+ await this.ensureTenantAccess(user, resolvedTenantId, false);
382
+ const roles = await user.getRoles(resolvedTenantId);
383
+ const permissions = await user.getPermissions(resolvedTenantId);
384
+ const updatedSession = await this.sessionManager.updateSession(session.id, {
385
+ data: {
386
+ ...(session.data || {}),
387
+ user,
388
+ roles,
389
+ permissions,
390
+ tenantId: resolvedTenantId || undefined,
391
+ }
392
+ });
393
+ const tokens = await this.generateTokensFromSession(updatedSession);
394
+ return this.generateAuthResponse(user, updatedSession, tokens, false);
395
+ }
359
396
  async send2faCode(userId, method) {
360
397
  const user = await this.userRepository.findOne({ where: { id: userId } });
361
398
  if (!user) {
@@ -381,12 +418,11 @@ let AuthService = class AuthService {
381
418
  [linkUserWith]: linkUserValue,
382
419
  isVerified: true,
383
420
  metadata: providerUser.metadata || {},
384
- tenantId: tenantId,
385
- }, {
421
+ }, tenantId, {
386
422
  [linkUserWith]: linkUserValue,
423
+ firstName: (providerUser.metadata?.name ?? '').split(' ')[0],
424
+ lastName: (providerUser.metadata?.name ?? '').split(' ').slice(1).join(' '),
387
425
  ...providerUser,
388
- firstName: providerUser.metadata?.name?.split(' ')[0],
389
- lastName: providerUser.metadata?.name?.split(' ').slice(1).join(' '),
390
426
  provider: provider.providerName,
391
427
  description: 'Social login auto-creation'
392
428
  });
@@ -465,7 +501,7 @@ let AuthService = class AuthService {
465
501
  if (session) {
466
502
  await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.LOGGED_OUT, new logged_out_event_1.LoggedOutEvent({
467
503
  user: user,
468
- tenantId: user?.tenantId,
504
+ tenantId: session?.data?.tenantId ?? user?.tenantId,
469
505
  session,
470
506
  logoutType,
471
507
  reason,
@@ -481,7 +517,7 @@ let AuthService = class AuthService {
481
517
  if (user) {
482
518
  await this.eventEmitter.emitAsync(auth_constants_1.NestAuthEvents.LOGGED_OUT_ALL, new logged_out_all_event_1.LoggedOutAllEvent({
483
519
  user,
484
- tenantId: user.tenantId,
520
+ tenantId: request_context_1.RequestContext.currentTenantId(),
485
521
  logoutType,
486
522
  reason,
487
523
  sessions,
@@ -489,6 +525,27 @@ let AuthService = class AuthService {
489
525
  }
490
526
  return true;
491
527
  }
528
+ getTenantMode() {
529
+ const config = this.authConfigService.getConfig();
530
+ const mode = config.tenant?.mode;
531
+ return mode === nest_auth_contracts_1.TenantModeEnum.SHARED ? nest_auth_contracts_1.TenantModeEnum.SHARED : nest_auth_contracts_1.TenantModeEnum.ISOLATED;
532
+ }
533
+ async ensureTenantAccess(user, tenantId, allowAutoJoin = false) {
534
+ if (!tenantId || !this.tenantContext.isEnabled()) {
535
+ return;
536
+ }
537
+ const isMember = await this.userService.isUserInTenant(user.id, tenantId);
538
+ if (!isMember) {
539
+ if (allowAutoJoin) {
540
+ await this.userService.ensureUserAccess(user.id, tenantId);
541
+ return;
542
+ }
543
+ throw new common_1.ForbiddenException({
544
+ message: 'User does not belong to this tenant',
545
+ code: auth_constants_1.ERROR_CODES.ACCESS_DENIED,
546
+ });
547
+ }
548
+ }
492
549
  async generateTokensPayload(session, otherPayload = {}) {
493
550
  let payload = {
494
551
  id: session.userId,
@@ -501,7 +558,7 @@ let AuthService = class AuthService {
501
558
  delete r?.permissions;
502
559
  return { ...r };
503
560
  }),
504
- tenantId: session.data?.user?.tenantId,
561
+ tenantId: session.data?.tenantId,
505
562
  isMfaEnabled: session.data?.user?.isMfaEnabled,
506
563
  isMfaVerified: session.data?.isMfaVerified,
507
564
  ...otherPayload,
@@ -532,8 +589,19 @@ let AuthService = class AuthService {
532
589
  if (config.user?.serialize) {
533
590
  serializedUser = await config.user.serialize(user);
534
591
  }
535
- const roleNames = user.roles?.map(r => r.name) || [];
536
- const permissions = this.extractPermissions(user);
592
+ const activeTenantId = session?.data?.tenantId;
593
+ let tenants = await this.userService.getUserTenants(user.id);
594
+ if (!tenants.length && activeTenantId) {
595
+ const fallbackTenant = await this.tenantService.getTenantById(activeTenantId);
596
+ if (fallbackTenant) {
597
+ tenants = [fallbackTenant];
598
+ }
599
+ }
600
+ const userWithAccesses = await this.getUserWithRolesAndPermissions(user.id, ['userAccesses', 'userAccesses.tenant', 'userAccesses.roles']);
601
+ const userAccesses = userWithAccesses.userAccesses ?? [];
602
+ const rolesForResponse = session?.data?.roles || user.roles || [];
603
+ const roleNames = rolesForResponse?.map(r => r.name) || [];
604
+ const permissions = session?.data?.permissions || this.extractPermissions(user);
537
605
  let response = {
538
606
  accessToken: tokens.accessToken,
539
607
  refreshToken: tokens.refreshToken,
@@ -547,7 +615,9 @@ let AuthService = class AuthService {
547
615
  roles: roleNames,
548
616
  permissions,
549
617
  metadata: serializedUser.metadata,
550
- tenantId: serializedUser.tenantId,
618
+ tenantId: activeTenantId,
619
+ tenants,
620
+ userAccesses,
551
621
  },
552
622
  };
553
623
  if (isRequiresMfa) {
@@ -595,6 +665,7 @@ exports.AuthService = AuthService;
595
665
  exports.AuthService = AuthService = __decorate([
596
666
  (0, common_1.Injectable)(),
597
667
  __param(0, (0, typeorm_1.InjectRepository)(user_entity_1.NestAuthUser)),
668
+ __param(10, (0, common_2.Inject)(auth_constants_2.NEST_AUTH_TENANT_CONTEXT_SERVICE)),
598
669
  __metadata("design:paramtypes", [typeorm_2.Repository,
599
670
  auth_provider_registry_service_1.AuthProviderRegistryService,
600
671
  mfa_service_1.MfaService,
@@ -604,6 +675,6 @@ exports.AuthService = AuthService = __decorate([
604
675
  tenant_service_1.TenantService,
605
676
  debug_logger_service_1.DebugLoggerService,
606
677
  auth_config_service_1.AuthConfigService,
607
- user_service_1.UserService])
678
+ user_service_1.UserService, Object])
608
679
  ], AuthService);
609
680
  //# sourceMappingURL=auth.service.js.map