@ackplus/nest-auth 1.1.12 → 1.1.14

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ackplus/nest-auth",
3
- "version": "1.1.12",
3
+ "version": "1.1.14",
4
4
  "type": "commonjs",
5
5
  "main": "./src/index.js",
6
6
  "types": "./src/index.d.ts",
@@ -1 +1 @@
1
- {"version":3,"file":"admin-roles.controller.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/admin-console/controllers/admin-roles.controller.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAI/E,qBAEa,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,WAAW;IAGzC,SAAS;;;;;;;;;;;;IAUT,UAAU,CAAS,GAAG,EAAE,kBAAkB;;;;;;;;;;;;IAY1C,UAAU,CAAc,EAAE,EAAE,MAAM,EAAU,GAAG,EAAE,kBAAkB;;;;;;;;;;;;IA0BnE,UAAU,CAAc,EAAE,EAAE,MAAM;;;IAKxC,OAAO,CAAC,UAAU;CAYnB"}
1
+ {"version":3,"file":"admin-roles.controller.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/admin-console/controllers/admin-roles.controller.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAI/E,qBAEa,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,WAAW;IAGzC,SAAS;;;;;;;;;;;;IAQT,UAAU,CAAS,GAAG,EAAE,kBAAkB;;;;;;;;;;;;IAY1C,UAAU,CAAc,EAAE,EAAE,MAAM,EAAU,GAAG,EAAE,kBAAkB;;;;;;;;;;;;IA0BnE,UAAU,CAAc,EAAE,EAAE,MAAM;;;IAKxC,OAAO,CAAC,UAAU;CAYnB"}
@@ -12,9 +12,7 @@ let AdminRolesController = class AdminRolesController {
12
12
  this.roles = roles;
13
13
  }
14
14
  async listRoles() {
15
- const roles = await this.roles.getRoles({
16
- order: { name: 'ASC' },
17
- });
15
+ const roles = await this.roles.getRoles();
18
16
  return {
19
17
  data: roles.map((role) => this.toSafeRole(role)),
20
18
  };
@@ -56,6 +56,12 @@ export declare class AuthController {
56
56
  changePassword(input: ChangePasswordRequestDto, res: Response): Promise<void>;
57
57
  forgotPassword(input: ForgotPasswordRequestDto): Promise<MessageResponseDto>;
58
58
  verifyForgotPasswordOtp(input: VerifyForgotPasswordOtpRequestDto): Promise<VerifyOtpResponseDto>;
59
+ /**
60
+ * Reset Password (Legacy - using OTP)
61
+ * @param input
62
+ * @returns
63
+ * @deprecated to-do remove in future release
64
+ */
59
65
  resetPassword(input: ResetPasswordRequestDto): Promise<MessageResponseDto>;
60
66
  resetPasswordWithToken(input: ResetPasswordWithTokenRequestDto): Promise<MessageResponseDto>;
61
67
  getUser(): Promise<import("../../core").NestAuthUser>;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.controller.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/controllers/auth.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.controller.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/controllers/auth.controller.ts"],"names":[],"mappings":"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"}
@@ -132,6 +132,12 @@ let AuthController = class AuthController {
132
132
  async verifyForgotPasswordOtp(input) {
133
133
  return await this.authService.verifyForgotPasswordOtp(input);
134
134
  }
135
+ /**
136
+ * Reset Password (Legacy - using OTP)
137
+ * @param input
138
+ * @returns
139
+ * @deprecated to-do remove in future release
140
+ */
135
141
  async resetPassword(input) {
136
142
  await this.authService.resetPassword(input);
137
143
  return { message: 'Password reset successfully' };
@@ -0,0 +1,13 @@
1
+ import { NestAuthUser } from "../../user/entities/user.entity";
2
+ import { MFAMethodEnum } from "../../core/interfaces/mfa-options.interface";
3
+ export interface TwoFactorCodeSentEventPayload {
4
+ user: NestAuthUser;
5
+ tenantId?: string;
6
+ method: MFAMethodEnum;
7
+ code: string;
8
+ }
9
+ export declare class TwoFactorCodeSentEvent {
10
+ readonly payload: TwoFactorCodeSentEventPayload;
11
+ constructor(payload: TwoFactorCodeSentEventPayload);
12
+ }
13
+ //# sourceMappingURL=two-factor-code-sent.event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"two-factor-code-sent.event.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/events/two-factor-code-sent.event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAE5E,MAAM,WAAW,6BAA6B;IAC1C,IAAI,EAAE,YAAY,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,sBAAsB;aAEX,OAAO,EAAE,6BAA6B;gBAAtC,OAAO,EAAE,6BAA6B;CAE7D"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TwoFactorCodeSentEvent = void 0;
4
+ class TwoFactorCodeSentEvent {
5
+ constructor(payload) {
6
+ this.payload = payload;
7
+ }
8
+ }
9
+ exports.TwoFactorCodeSentEvent = TwoFactorCodeSentEvent;
@@ -9,6 +9,7 @@ export * from './events/user-2fa-verified.event';
9
9
  export * from './events/user-logged-in.event';
10
10
  export * from './events/user-refresh-token.event';
11
11
  export * from './events/user-registered.event';
12
+ export * from './events/two-factor-code-sent.event';
12
13
  export * from './services/auth.service';
13
14
  export * from './services/cookie.service';
14
15
  export * from './services/mfa.service';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/nest-auth/src/lib/auth/index.ts"],"names":[],"mappings":"AACA,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,cAAc,0CAA0C,CAAC;AAGzD,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;AAG/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AAGjD,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,2CAA2C,CAAC;AAC1D,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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../packages/nest-auth/src/lib/auth/index.ts"],"names":[],"mappings":"AACA,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,cAAc,0CAA0C,CAAC;AAGzD,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,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AAGjD,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,2CAA2C,CAAC;AAC1D,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"}
@@ -17,6 +17,7 @@ tslib_1.__exportStar(require("./events/user-2fa-verified.event"), exports);
17
17
  tslib_1.__exportStar(require("./events/user-logged-in.event"), exports);
18
18
  tslib_1.__exportStar(require("./events/user-refresh-token.event"), exports);
19
19
  tslib_1.__exportStar(require("./events/user-registered.event"), exports);
20
+ tslib_1.__exportStar(require("./events/two-factor-code-sent.event"), exports);
20
21
  // Services
21
22
  tslib_1.__exportStar(require("./services/auth.service"), exports);
22
23
  tslib_1.__exportStar(require("./services/cookie.service"), exports);
@@ -21,6 +21,7 @@ import { ChangePasswordRequestDto } from '../dto/requests/change-password.reques
21
21
  import { VerifyOtpResponseDto } from '../dto/responses/verify-otp.response.dto';
22
22
  import { SendEmailVerificationRequestDto } from '../dto/requests/send-email-verification.request.dto';
23
23
  import { VerifyEmailRequestDto } from '../dto/requests/verify-email.request.dto';
24
+ import { AuthConfigService } from '../../core/services/auth-config.service';
24
25
  export declare class AuthService {
25
26
  private readonly userRepository;
26
27
  private otpRepository;
@@ -31,7 +32,8 @@ export declare class AuthService {
31
32
  private readonly eventEmitter;
32
33
  private readonly tenantService;
33
34
  private readonly debugLogger;
34
- constructor(userRepository: Repository<NestAuthUser>, otpRepository: Repository<NestAuthOTP>, authProviderRegistry: AuthProviderRegistryService, mfaService: MfaService, sessionManager: SessionManagerService, jwtService: JwtService, eventEmitter: EventEmitter2, tenantService: TenantService, debugLogger: DebugLoggerService);
35
+ private readonly authConfigService;
36
+ constructor(userRepository: Repository<NestAuthUser>, otpRepository: Repository<NestAuthOTP>, authProviderRegistry: AuthProviderRegistryService, mfaService: MfaService, sessionManager: SessionManagerService, jwtService: JwtService, eventEmitter: EventEmitter2, tenantService: TenantService, debugLogger: DebugLoggerService, authConfigService: AuthConfigService);
35
37
  getUserWithRolesAndPermissions(userId: string, relations?: string[]): Promise<NestAuthUser>;
36
38
  getUser(): Promise<NestAuthUser>;
37
39
  signup(input: SignupRequestDto): Promise<AuthResponseDto>;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/services/auth.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/services/auth.service.ts"],"names":[],"mappings":"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"}
@@ -28,8 +28,9 @@ const auth_provider_registry_service_1 = require("../../core/services/auth-provi
28
28
  const tenant_service_1 = require("../../tenant/services/tenant.service");
29
29
  const debug_logger_service_1 = require("../../core/services/debug-logger.service");
30
30
  const moment_1 = tslib_1.__importDefault(require("moment"));
31
+ const auth_config_service_1 = require("../../core/services/auth-config.service");
31
32
  let AuthService = class AuthService {
32
- constructor(userRepository, otpRepository, authProviderRegistry, mfaService, sessionManager, jwtService, eventEmitter, tenantService, debugLogger) {
33
+ constructor(userRepository, otpRepository, authProviderRegistry, mfaService, sessionManager, jwtService, eventEmitter, tenantService, debugLogger, authConfigService) {
33
34
  this.userRepository = userRepository;
34
35
  this.otpRepository = otpRepository;
35
36
  this.authProviderRegistry = authProviderRegistry;
@@ -39,6 +40,7 @@ let AuthService = class AuthService {
39
40
  this.eventEmitter = eventEmitter;
40
41
  this.tenantService = tenantService;
41
42
  this.debugLogger = debugLogger;
43
+ this.authConfigService = authConfigService;
42
44
  }
43
45
  getUserWithRolesAndPermissions(userId, relations = []) {
44
46
  return this.userRepository.findOne({
@@ -59,6 +61,10 @@ let AuthService = class AuthService {
59
61
  async signup(input) {
60
62
  this.debugLogger.logFunctionEntry('signup', 'AuthService', { email: input.email, phone: input.phone, hasPassword: !!input.password });
61
63
  try {
64
+ const config = this.authConfigService.getConfig();
65
+ if (config.registration?.enabled === false) {
66
+ throw new common_1.ForbiddenException('Registration is disabled');
67
+ }
62
68
  const { email, phone, password } = input;
63
69
  let { tenantId = null } = input;
64
70
  // Resolve tenant ID - use provided or default
@@ -730,5 +736,6 @@ exports.AuthService = AuthService = tslib_1.__decorate([
730
736
  jwt_service_1.JwtService,
731
737
  event_emitter_1.EventEmitter2,
732
738
  tenant_service_1.TenantService,
733
- debug_logger_service_1.DebugLoggerService])
739
+ debug_logger_service_1.DebugLoggerService,
740
+ auth_config_service_1.AuthConfigService])
734
741
  ], AuthService);
@@ -3,12 +3,14 @@ import { NestAuthMFASecret } from '../../auth/entities/mfa-secret.entity';
3
3
  import { MFAMethodEnum, MFAOptions } from '../../core/interfaces/mfa-options.interface';
4
4
  import { NestAuthUser } from '../../user/entities/user.entity';
5
5
  import { NestAuthOTP } from '../../auth/entities/otp.entity';
6
+ import { EventEmitter2 } from '@nestjs/event-emitter';
6
7
  export declare class MfaService {
7
8
  private mfaSecretRepository;
8
9
  private userRepository;
9
10
  private otpRepository;
11
+ private eventEmitter;
10
12
  mfaConfig: MFAOptions;
11
- constructor(mfaSecretRepository: Repository<NestAuthMFASecret>, userRepository: Repository<NestAuthUser>, otpRepository: Repository<NestAuthOTP>);
13
+ constructor(mfaSecretRepository: Repository<NestAuthMFASecret>, userRepository: Repository<NestAuthUser>, otpRepository: Repository<NestAuthOTP>, eventEmitter: EventEmitter2);
12
14
  requireMfaEnabledForApp(throwError?: boolean): boolean;
13
15
  private checkIsMfaEnabledForApp;
14
16
  getVerifiedMethods(userId: string): Promise<MFAMethodEnum[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"mfa.service.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/services/mfa.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,UAAU,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAG1E,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AAExF,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAO7D,qBACa,UAAU;IAMf,OAAO,CAAC,mBAAmB;IAG3B,OAAO,CAAC,cAAc;IAGtB,OAAO,CAAC,aAAa;IAVzB,SAAS,EAAE,UAAU,CAAA;gBAIT,mBAAmB,EAAE,UAAU,CAAC,iBAAiB,CAAC,EAGlD,cAAc,EAAE,UAAU,CAAC,YAAY,CAAC,EAGxC,aAAa,EAAE,UAAU,CAAC,WAAW,CAAC;IAKlD,uBAAuB,CAAC,UAAU,GAAE,OAAc;IAUlD,OAAO,CAAC,uBAAuB;IAIzB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAiC5D,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAmC3D,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAyBpE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAmDpF,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAqBjG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA6BnF,cAAc,CAAC,MAAM,EAAE,MAAM;;;;;;;;IAmB7B,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM7C,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgB/C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW9C,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ/D,SAAS,CAAC,MAAM,EAAE,MAAM;IAexB,UAAU,CAAC,MAAM,EAAE,MAAM;IASzB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMjD,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAUrD,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IA6B1E,mBAAmB,IAAI,aAAa,EAAE;IAOhC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAY1D"}
1
+ {"version":3,"file":"mfa.service.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/auth/services/mfa.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAY,UAAU,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAG1E,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,6CAA6C,CAAC;AAExF,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAK7D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAKtD,qBACa,UAAU;IAMf,OAAO,CAAC,mBAAmB;IAG3B,OAAO,CAAC,cAAc;IAGtB,OAAO,CAAC,aAAa;IAErB,OAAO,CAAC,YAAY;IAZxB,SAAS,EAAE,UAAU,CAAA;gBAIT,mBAAmB,EAAE,UAAU,CAAC,iBAAiB,CAAC,EAGlD,cAAc,EAAE,UAAU,CAAC,YAAY,CAAC,EAGxC,aAAa,EAAE,UAAU,CAAC,WAAW,CAAC,EAEtC,YAAY,EAAE,aAAa;IAKvC,uBAAuB,CAAC,UAAU,GAAE,OAAc;IAUlD,OAAO,CAAC,uBAAuB;IAIzB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAiC5D,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAmC3D,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAkCpE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;IAmDpF,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAqBjG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA6BnF,cAAc,CAAC,MAAM,EAAE,MAAM;;;;;;;;IAmB7B,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM7C,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgB/C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW9C,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ/D,SAAS,CAAC,MAAM,EAAE,MAAM;IAexB,UAAU,CAAC,MAAM,EAAE,MAAM;IASzB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMjD,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAUrD,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IA6B1E,mBAAmB,IAAI,aAAa,EAAE;IAOhC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAY1D"}
@@ -16,11 +16,15 @@ const otp_interface_1 = require("../../core/interfaces/otp.interface");
16
16
  const otp_1 = require("../../utils/otp");
17
17
  const ms_1 = tslib_1.__importDefault(require("ms"));
18
18
  const auth_config_service_1 = require("../../core/services/auth-config.service");
19
+ const event_emitter_1 = require("@nestjs/event-emitter");
20
+ const auth_constants_2 = require("../../auth.constants");
21
+ const two_factor_code_sent_event_1 = require("../events/two-factor-code-sent.event");
19
22
  let MfaService = class MfaService {
20
- constructor(mfaSecretRepository, userRepository, otpRepository) {
23
+ constructor(mfaSecretRepository, userRepository, otpRepository, eventEmitter) {
21
24
  this.mfaSecretRepository = mfaSecretRepository;
22
25
  this.userRepository = userRepository;
23
26
  this.otpRepository = otpRepository;
27
+ this.eventEmitter = eventEmitter;
24
28
  this.mfaConfig = auth_config_service_1.AuthConfigService.getOptions().mfa;
25
29
  }
26
30
  requireMfaEnabledForApp(throwError = true) {
@@ -98,11 +102,16 @@ let MfaService = class MfaService {
98
102
  code,
99
103
  });
100
104
  await this.otpRepository.save(otp);
101
- if (method === mfa_options_interface_1.MFAMethodEnum.EMAIL) {
102
- // TODO: Send email
103
- }
104
- else if (method === mfa_options_interface_1.MFAMethodEnum.SMS) {
105
- // TODO: Send SMS
105
+ if (method === mfa_options_interface_1.MFAMethodEnum.EMAIL || method === mfa_options_interface_1.MFAMethodEnum.SMS) {
106
+ const user = await this.userRepository.findOne({ where: { id: userId } });
107
+ if (user) {
108
+ await this.eventEmitter.emitAsync(auth_constants_2.NestAuthEvents.TWO_FACTOR_CODE_SENT, new two_factor_code_sent_event_1.TwoFactorCodeSentEvent({
109
+ user,
110
+ tenantId: user.tenantId,
111
+ method,
112
+ code,
113
+ }));
114
+ }
106
115
  }
107
116
  return true;
108
117
  }
@@ -308,5 +317,6 @@ exports.MfaService = MfaService = tslib_1.__decorate([
308
317
  tslib_1.__param(2, (0, typeorm_1.InjectRepository)(otp_entity_1.NestAuthOTP)),
309
318
  tslib_1.__metadata("design:paramtypes", [typeorm_2.Repository,
310
319
  typeorm_2.Repository,
311
- typeorm_2.Repository])
320
+ typeorm_2.Repository,
321
+ event_emitter_1.EventEmitter2])
312
322
  ], MfaService);
@@ -24,6 +24,7 @@ export declare const NestAuthEvents: {
24
24
  readonly LOGGED_IN: "nest_auth.logged_in";
25
25
  readonly REGISTERED: "nest_auth.registered";
26
26
  readonly TWO_FACTOR_VERIFIED: "nest_auth.two_factor_verified";
27
+ readonly TWO_FACTOR_CODE_SENT: "nest_auth.two_factor_code_sent";
27
28
  readonly REFRESH_TOKEN: "nest_auth.refresh_token";
28
29
  readonly PASSWORD_RESET_REQUESTED: "nest_auth.password_reset_requested";
29
30
  readonly PASSWORD_RESET: "nest_auth.password_reset";
@@ -1 +1 @@
1
- {"version":3,"file":"auth.constants.d.ts","sourceRoot":"","sources":["../../../../../packages/nest-auth/src/lib/auth.constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,kCAAkC,CAAC;AACnE,eAAO,MAAM,gCAAgC,qCAAqC,CAAC;AAInF,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AACvC,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C,eAAO,MAAM,sBAAsB,aAAa,CAAC;AACjD,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAC3C,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAC3C,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAI3C,eAAO,MAAM,6BAA6B,mBAAmB,CAAC;AAC9D,eAAO,MAAM,2BAA2B,iBAAiB,CAAC;AAC1D,eAAO,MAAM,0BAA0B,gBAAgB,CAAC;AACxD,eAAO,MAAM,oCAAoC,0BAA0B,CAAC;AAC5E,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAC7D,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAI7D,eAAO,MAAM,wBAAwB,gBAAgB,CAAC;AACtD,eAAO,MAAM,yBAAyB,iBAAiB,CAAC;AAGxD,eAAO,MAAM,kBAAkB,QAAQ,CAAC;AAGxC,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;CA4BjB,CAAC"}
1
+ {"version":3,"file":"auth.constants.d.ts","sourceRoot":"","sources":["../../../../../packages/nest-auth/src/lib/auth.constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,kCAAkC,CAAC;AACnE,eAAO,MAAM,gCAAgC,qCAAqC,CAAC;AAInF,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AACvC,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C,eAAO,MAAM,sBAAsB,aAAa,CAAC;AACjD,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAC3C,eAAO,MAAM,oBAAoB,WAAW,CAAC;AAC7C,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAC3C,eAAO,MAAM,mBAAmB,UAAU,CAAC;AAI3C,eAAO,MAAM,6BAA6B,mBAAmB,CAAC;AAC9D,eAAO,MAAM,2BAA2B,iBAAiB,CAAC;AAC1D,eAAO,MAAM,0BAA0B,gBAAgB,CAAC;AACxD,eAAO,MAAM,oCAAoC,0BAA0B,CAAC;AAC5E,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAC3D,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AAEvD,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAC7D,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAI7D,eAAO,MAAM,wBAAwB,gBAAgB,CAAC;AACtD,eAAO,MAAM,yBAAyB,iBAAiB,CAAC;AAGxD,eAAO,MAAM,kBAAkB,QAAQ,CAAC;AAGxC,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;CA6BjB,CAAC"}
@@ -33,6 +33,7 @@ exports.NestAuthEvents = {
33
33
  LOGGED_IN: 'nest_auth.logged_in',
34
34
  REGISTERED: 'nest_auth.registered',
35
35
  TWO_FACTOR_VERIFIED: 'nest_auth.two_factor_verified',
36
+ TWO_FACTOR_CODE_SENT: 'nest_auth.two_factor_code_sent',
36
37
  REFRESH_TOKEN: 'nest_auth.refresh_token',
37
38
  PASSWORD_RESET_REQUESTED: 'nest_auth.password_reset_requested',
38
39
  PASSWORD_RESET: 'nest_auth.password_reset',
@@ -1 +1 @@
1
- {"version":3,"file":"nest-auth.module.d.ts","sourceRoot":"","sources":["../../../../../packages/nest-auth/src/lib/nest-auth.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,aAAa,EAAE,kBAAkB,EAAY,MAAM,gBAAgB,CAAC;AAErF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAA4B,MAAM,iDAAiD,CAAC;AAetI,qBACa,cAAc;IACzB,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,iBAAiB,GAAG,aAAa;IAyCzD,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,sBAAsB,GAAG,aAAa;IAqCnE,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAkBnC,OAAO,CAAC,MAAM,CAAC,0BAA0B;IA0BzC,OAAO,CAAC,MAAM,CAAC,UAAU;IAOzB,SAAS,CAAC,QAAQ,EAAE,kBAAkB;CAGvC"}
1
+ {"version":3,"file":"nest-auth.module.d.ts","sourceRoot":"","sources":["../../../../../packages/nest-auth/src/lib/nest-auth.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,aAAa,EAAE,kBAAkB,EAAY,MAAM,gBAAgB,CAAC;AAErF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAA4B,MAAM,iDAAiD,CAAC;AAetI,qBACa,cAAc;IACzB,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,iBAAiB,GAAG,aAAa;IAyCzD,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,sBAAsB,GAAG,aAAa;IAuCnE,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAkBnC,OAAO,CAAC,MAAM,CAAC,0BAA0B;IA0BzC,OAAO,CAAC,MAAM,CAAC,UAAU;IAOzB,SAAS,CAAC,QAAQ,EAAE,kBAAkB;CAGvC"}
@@ -76,6 +76,7 @@ let NestAuthModule = NestAuthModule_1 = class NestAuthModule {
76
76
  user_module_1.UserModule,
77
77
  role_module_1.RoleModule,
78
78
  session_module_1.SessionModule,
79
+ admin_console_module_1.AdminConsoleModule,
79
80
  ...(options.imports || []),
80
81
  ],
81
82
  providers,
@@ -86,6 +87,7 @@ let NestAuthModule = NestAuthModule_1 = class NestAuthModule {
86
87
  user_module_1.UserModule,
87
88
  role_module_1.RoleModule,
88
89
  session_module_1.SessionModule,
90
+ admin_console_module_1.AdminConsoleModule,
89
91
  ],
90
92
  };
91
93
  }
@@ -5,14 +5,22 @@ export declare class RoleService {
5
5
  private roleRepository;
6
6
  private tenantService;
7
7
  constructor(roleRepository: Repository<NestAuthRole>, tenantService: TenantService);
8
- createRole(name: string, guard: string, tenantId?: string, isSystem?: boolean, permissionIds?: string | string[]): Promise<NestAuthRole>;
8
+ createRole(name: string, guard: string, tenantId?: string | null, isSystem?: boolean, permissionIds?: string | string[]): Promise<NestAuthRole>;
9
9
  getRoleById(id: string, options?: FindOneOptions<NestAuthRole>): Promise<NestAuthRole>;
10
10
  getRoleByName(name: string, guard?: string, tenantId?: string, options?: FindOneOptions<NestAuthRole>): Promise<NestAuthRole>;
11
11
  getSystemRoles(options?: FindManyOptions<NestAuthRole>): Promise<NestAuthRole[]>;
12
- getRoles(options?: FindManyOptions<NestAuthRole>): Promise<NestAuthRole[]>;
13
- getSystemRolesByGuard(guard: string, options?: FindManyOptions<NestAuthRole>): Promise<NestAuthRole[]>;
14
- getRolesByGuard(guard: string, tenantId?: string, options?: FindManyOptions<NestAuthRole>): Promise<NestAuthRole[]>;
15
- getRolesByTenant(tenantId: string, includeSystemRoles?: boolean, options?: FindManyOptions<NestAuthRole>): Promise<NestAuthRole[]>;
12
+ /**
13
+ * Get roles
14
+ * @param params
15
+ * @param options
16
+ * @returns
17
+ */
18
+ getRoles(params?: {
19
+ guard?: string;
20
+ tenantId?: string;
21
+ onlyTenantRoles?: boolean;
22
+ onlySystemRoles?: boolean;
23
+ }, options?: FindManyOptions<NestAuthRole>): Promise<NestAuthRole[]>;
16
24
  updateRole(id: string, data: Partial<NestAuthRole>): Promise<NestAuthRole>;
17
25
  updateRolePermissions(id: string, permissionIds: string | string[]): Promise<NestAuthRole>;
18
26
  deleteRole(id: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"role.service.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/role/services/role.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAU,UAAU,EAAE,MAAM,SAAS,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,qBACa,WAAW;IAGhB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,aAAa;gBADb,cAAc,EAAE,UAAU,CAAC,YAAY,CAAC,EACxC,aAAa,EAAE,aAAa;IAGlC,UAAU,CACZ,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,QAAQ,GAAE,MAAa,EACvB,QAAQ,GAAE,OAAe,EACzB,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAClC,OAAO,CAAC,YAAY,CAAC;IA+BlB,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IAetF,aAAa,CACf,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,GACvC,OAAO,CAAC,YAAY,CAAC;IA4BlB,cAAc,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAchF,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAI1E,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IActG,eAAe,CACjB,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GACxC,OAAO,CAAC,YAAY,EAAE,CAAC;IAcpB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,kBAAkB,GAAE,OAAc,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqCxI,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IAuD1E,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAqB1F,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBrC,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAMpD"}
1
+ {"version":3,"file":"role.service.d.ts","sourceRoot":"","sources":["../../../../../../../packages/nest-auth/src/lib/role/services/role.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAU,UAAU,EAAY,MAAM,SAAS,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,qBACa,WAAW;IAGhB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,aAAa;gBADb,cAAc,EAAE,UAAU,CAAC,YAAY,CAAC,EACxC,aAAa,EAAE,aAAa;IAGlC,UAAU,CACZ,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,QAAQ,GAAE,MAAM,GAAG,IAAW,EAC9B,QAAQ,GAAE,OAAe,EACzB,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAClC,OAAO,CAAC,YAAY,CAAC;IA+BlB,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IAetF,aAAa,CACf,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,GACvC,OAAO,CAAC,YAAY,CAAC;IA4BlB,cAAc,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IActF;;;;;OAKG;IACG,QAAQ,CACV,MAAM,GAAE;QACJ,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;KACxB,EACN,OAAO,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GACxC,OAAO,CAAC,YAAY,EAAE,CAAC;IAyDpB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IAuD1E,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAqB1F,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBrC,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAMpD"}
@@ -85,64 +85,62 @@ let RoleService = class RoleService {
85
85
  }
86
86
  });
87
87
  }
88
- async getRoles(options) {
89
- return this.roleRepository.find(options);
90
- }
91
- async getSystemRolesByGuard(guard, options) {
92
- return this.roleRepository.find({
93
- ...(options ? options : {}),
94
- where: {
95
- guard,
96
- isSystem: true,
97
- ...(options?.where ? options.where : {})
98
- },
99
- order: {
100
- name: 'ASC'
88
+ /**
89
+ * Get roles
90
+ * @param params
91
+ * @param options
92
+ * @returns
93
+ */
94
+ async getRoles(params = {}, options) {
95
+ const { guard, onlyTenantRoles, onlySystemRoles } = params;
96
+ let { tenantId } = params;
97
+ if (!onlySystemRoles) {
98
+ tenantId = await this.tenantService.resolveTenantId(tenantId);
99
+ }
100
+ const query = this.roleRepository.createQueryBuilder();
101
+ // const hasPagination = options?.skip !== undefined && options?.take !== undefined;
102
+ if (guard) {
103
+ query.andWhere(`${query.alias}.guard = :guard`, { guard });
104
+ }
105
+ if (onlySystemRoles) {
106
+ query.andWhere(`${query.alias}.isSystem = :isSystem`, { isSystem: true });
107
+ }
108
+ else if (onlyTenantRoles) {
109
+ if (!tenantId) {
110
+ return [];
111
+ }
112
+ query.andWhere(`${query.alias}.tenantId = :tenantId`, { tenantId });
113
+ }
114
+ else {
115
+ if (tenantId) {
116
+ query.andWhere(new typeorm_2.Brackets(qb => {
117
+ qb.where(`${query.alias}.tenantId = :tenantId`, { tenantId })
118
+ .orWhere(`${query.alias}.isSystem = :isSystem`, { isSystem: true });
119
+ }));
120
+ }
121
+ else {
122
+ query.andWhere(`${query.alias}.isSystem = :isSystem`, { isSystem: true });
101
123
  }
102
- });
103
- }
104
- async getRolesByGuard(guard, tenantId, options) {
105
- if (!guard) {
106
- return [];
107
- }
108
- return this.roleRepository.find({
109
- ...(options ? options : {}),
110
- where: {
111
- guard,
112
- ...(tenantId ? { tenantId } : { tenantId: (0, typeorm_2.IsNull)() }),
113
- ...(options?.where ? options.where : {})
114
- },
115
- });
116
- }
117
- async getRolesByTenant(tenantId, includeSystemRoles = true, options) {
118
- tenantId = await this.tenantService.resolveTenantId(tenantId);
119
- if (!tenantId) {
120
- return [];
121
- }
122
- const query = this.roleRepository.createQueryBuilder('role');
123
- // Add tenant condition
124
- query.where('role.tenantId = :tenantId', { tenantId });
125
- // Add system roles condition if needed
126
- if (includeSystemRoles) {
127
- query.orWhere('role.tenantId IS NULL AND role.isSystem = :isSystem', { isSystem: true });
128
124
  }
129
- // Apply any additional options
130
125
  if (options) {
131
126
  if (options.where) {
132
127
  query.andWhere(options.where);
133
128
  }
134
129
  if (options.order) {
135
130
  Object.entries(options.order).forEach(([key, value]) => {
136
- query.addOrderBy(`role.${key}`, value);
131
+ query.addOrderBy(`${query.alias}.${key}`, value);
137
132
  });
138
133
  }
139
- if (options.skip) {
140
- query.skip(options.skip);
141
- }
142
- if (options.take) {
143
- query.take(options.take);
144
- }
145
134
  }
135
+ else {
136
+ query.orderBy(`${query.alias}.name`, 'ASC');
137
+ }
138
+ query.take(1000);
139
+ // if (hasPagination) {
140
+ // query.skip(options.skip);
141
+ // query.take(options.take);
142
+ // return query.getManyAndCount();
143
+ // }
146
144
  return query.getMany();
147
145
  }
148
146
  async updateRole(id, data) {