mongodb-dynamic-api 4.11.0 → 4.12.0

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 (42) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/package.json +1 -1
  3. package/src/modules/auth/auth.helper.d.ts +13 -3
  4. package/src/modules/auth/auth.helper.js +20 -6
  5. package/src/modules/auth/auth.helper.js.map +1 -1
  6. package/src/modules/auth/auth.module.js +24 -3
  7. package/src/modules/auth/auth.module.js.map +1 -1
  8. package/src/modules/auth/dtos/send-otp-code.dto.d.ts +3 -0
  9. package/src/modules/auth/dtos/send-otp-code.dto.js +24 -0
  10. package/src/modules/auth/dtos/send-otp-code.dto.js.map +1 -0
  11. package/src/modules/auth/dtos/verify-otp-code.dto.d.ts +4 -0
  12. package/src/modules/auth/dtos/verify-otp-code.dto.js +31 -0
  13. package/src/modules/auth/dtos/verify-otp-code.dto.js.map +1 -0
  14. package/src/modules/auth/guards/index.d.ts +1 -0
  15. package/src/modules/auth/guards/index.js +1 -0
  16. package/src/modules/auth/guards/index.js.map +1 -1
  17. package/src/modules/auth/guards/passwordless/passwordless.guard.d.ts +6 -0
  18. package/src/modules/auth/guards/passwordless/passwordless.guard.js +30 -0
  19. package/src/modules/auth/guards/passwordless/passwordless.guard.js.map +1 -0
  20. package/src/modules/auth/interfaces/auth-controller.interface.d.ts +7 -0
  21. package/src/modules/auth/interfaces/auth-options.interface.d.ts +8 -1
  22. package/src/modules/auth/interfaces/auth-service.interface.d.ts +2 -0
  23. package/src/modules/auth/mixins/auth-controller.mixin.d.ts +11 -2
  24. package/src/modules/auth/mixins/auth-controller.mixin.js +39 -1
  25. package/src/modules/auth/mixins/auth-controller.mixin.js.map +1 -1
  26. package/src/modules/auth/models/otp-code.model.d.ts +15 -0
  27. package/src/modules/auth/models/otp-code.model.js +38 -0
  28. package/src/modules/auth/models/otp-code.model.js.map +1 -0
  29. package/src/modules/auth/services/base-auth.service.d.ts +7 -2
  30. package/src/modules/auth/services/base-auth.service.js +38 -1
  31. package/src/modules/auth/services/base-auth.service.js.map +1 -1
  32. package/src/version.json +1 -1
  33. package/test/for-root/auth-api-passwordless.e2e-spec.d.ts +1 -0
  34. package/test/for-root/auth-api-passwordless.e2e-spec.js +150 -0
  35. package/test/for-root/auth-api-passwordless.e2e-spec.js.map +1 -0
  36. package/test/shared/entities/index.d.ts +1 -0
  37. package/test/shared/entities/index.js +1 -0
  38. package/test/shared/entities/index.js.map +1 -1
  39. package/test/shared/entities/passwordless-user.factory.d.ts +12 -0
  40. package/test/shared/entities/passwordless-user.factory.js +31 -0
  41. package/test/shared/entities/passwordless-user.factory.js.map +1 -0
  42. package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  Changelog
2
2
 
3
+ ## [4.12.0](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/v4.11.0...v4.12.0) (2026-05-26)
4
+
5
+ ### auth
6
+
7
+ * **auth:** add passwordless OTP flow ([858cd49](https://github.com/MikeDev75015/mongodb-dynamic-api/commit/858cd49e348127412e8eaf86f06d94d0784bef63))
8
+
3
9
  ## [4.11.0](https://github.com/MikeDev75015/mongodb-dynamic-api/compare/v4.10.0...v4.11.0) (2026-05-25)
4
10
 
5
11
  ### callbacks
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mongodb-dynamic-api",
3
- "version": "4.11.0",
3
+ "version": "4.12.0",
4
4
  "description": "Auto generated CRUD API for MongoDB using NestJS",
5
5
  "readmeFilename": "README.md",
6
6
  "main": "index.js",
@@ -1,12 +1,21 @@
1
1
  import { Type, ValidationPipeOptions } from '@nestjs/common';
2
2
  import { AuthAbilityPredicate, AfterSaveCallback, DynamicAPIServiceProvider, GatewayOptions } from '../../interfaces';
3
3
  import { BaseEntity } from '../../models';
4
- import { AuthControllerConstructor, AuthGatewayConstructor, DynamicApiGetAccountOptions, DynamicApiLoginOptions, DynamicApiRefreshTokenOptions, DynamicApiRegisterOptions, DynamicApiResetPasswordOptions, DynamicApiUpdateAccountOptions } from './interfaces';
4
+ import { AuthControllerConstructor, AuthGatewayConstructor, DynamicApiGetAccountOptions, DynamicApiLoginOptions, DynamicApiRefreshTokenOptions, DynamicApiRegisterOptions, DynamicApiResetPasswordOptions, DynamicApiUpdateAccountOptions, PasswordlessOptions } from './interfaces';
5
5
  declare const authServiceProviderName = "DynamicApiAuthService";
6
6
  declare const authGatewayProviderName = "DynamicApiAuthGateway";
7
7
  declare const localStrategyProviderName = "DynamicApiLocalStrategy";
8
8
  declare function createLocalStrategyProvider<Entity extends BaseEntity>(loginField: keyof Entity, passwordField: keyof Entity, abilityPredicate: AuthAbilityPredicate | undefined, customValidate?: (req: any) => Promise<Entity | null>, useStrategy?: Type<any>): DynamicAPIServiceProvider;
9
- declare function createAuthServiceProvider<Entity extends BaseEntity>(userEntity: Type<Entity>, { loginField, passwordField, additionalFields, callback: loginCallback }: DynamicApiLoginOptions<Entity>, getAccountCallback: AfterSaveCallback<Entity> | undefined, register: DynamicApiRegisterOptions<Entity> | undefined, resetPasswordOptions: DynamicApiResetPasswordOptions<Entity> | undefined, updateAccount: DynamicApiUpdateAccountOptions<Entity> | undefined, refreshToken?: DynamicApiRefreshTokenOptions<Entity>): DynamicAPIServiceProvider;
9
+ type AuthServiceProviderOptions<Entity extends BaseEntity> = {
10
+ loginOptions: DynamicApiLoginOptions<Entity>;
11
+ getAccountCallback?: AfterSaveCallback<Entity>;
12
+ register?: DynamicApiRegisterOptions<Entity>;
13
+ resetPasswordOptions?: DynamicApiResetPasswordOptions<Entity>;
14
+ updateAccount?: DynamicApiUpdateAccountOptions<Entity>;
15
+ refreshToken?: DynamicApiRefreshTokenOptions<Entity>;
16
+ passwordlessOptions?: PasswordlessOptions<Entity>;
17
+ };
18
+ declare function createAuthServiceProvider<Entity extends BaseEntity>(userEntity: Type<Entity>, { loginOptions: { loginField, passwordField, additionalFields, callback: loginCallback }, getAccountCallback, register, resetPasswordOptions, updateAccount, refreshToken, passwordlessOptions, }: AuthServiceProviderOptions<Entity>): DynamicAPIServiceProvider;
10
19
  type CreateAuthControllerOptions<Entity extends BaseEntity> = {
11
20
  getAccountOptions?: DynamicApiGetAccountOptions<Entity>;
12
21
  registerOptions?: DynamicApiRegisterOptions<Entity>;
@@ -14,6 +23,7 @@ type CreateAuthControllerOptions<Entity extends BaseEntity> = {
14
23
  resetPasswordOptions?: DynamicApiResetPasswordOptions<Entity>;
15
24
  updateAccountOptions?: DynamicApiUpdateAccountOptions<Entity>;
16
25
  refreshTokenOptions?: DynamicApiRefreshTokenOptions<Entity>;
26
+ passwordlessOptions?: PasswordlessOptions<Entity>;
17
27
  };
18
28
  type CreateAuthGatewayOptions<Entity extends BaseEntity> = GatewayOptions & {
19
29
  validationPipeOptions?: ValidationPipeOptions;
@@ -23,6 +33,6 @@ type CreateAuthGatewayOptions<Entity extends BaseEntity> = GatewayOptions & {
23
33
  updateAccountOptions?: DynamicApiUpdateAccountOptions<Entity>;
24
34
  refreshTokenOptions?: DynamicApiRefreshTokenOptions<Entity>;
25
35
  };
26
- declare function createAuthController<Entity extends BaseEntity>(userEntity: Type<Entity>, loginOptions: DynamicApiLoginOptions<Entity>, { getAccountOptions, registerOptions, validationPipeOptions, resetPasswordOptions, updateAccountOptions, refreshTokenOptions, }?: CreateAuthControllerOptions<Entity>): AuthControllerConstructor<Entity>;
36
+ declare function createAuthController<Entity extends BaseEntity>(userEntity: Type<Entity>, loginOptions: DynamicApiLoginOptions<Entity>, { getAccountOptions, registerOptions, validationPipeOptions, resetPasswordOptions, updateAccountOptions, refreshTokenOptions, passwordlessOptions, }?: CreateAuthControllerOptions<Entity>): AuthControllerConstructor<Entity>;
27
37
  declare function createAuthGateway<Entity extends BaseEntity>(userEntity: Type<Entity>, loginOptions: DynamicApiLoginOptions<Entity>, { getAccountOptions, registerOptions, resetPasswordOptions, updateAccountOptions, refreshTokenOptions, validationPipeOptions, ...gatewayOptions }: CreateAuthGatewayOptions<Entity>): AuthGatewayConstructor<Entity>;
28
38
  export { authServiceProviderName, authGatewayProviderName, createAuthController, createAuthServiceProvider, createAuthGateway, createLocalStrategyProvider, localStrategyProviderName, };
@@ -29,6 +29,7 @@ const decorators_1 = require("../../decorators");
29
29
  const dynamic_api_module_1 = require("../../dynamic-api.module");
30
30
  const filters_1 = require("../../filters");
31
31
  const services_1 = require("../../services");
32
+ const otp_code_model_1 = require("./models/otp-code.model");
32
33
  const mixins_1 = require("./mixins");
33
34
  const services_2 = require("./services");
34
35
  const authServiceProviderName = 'DynamicApiAuthService';
@@ -92,13 +93,14 @@ function createLocalStrategyProvider(loginField, passwordField, abilityPredicate
92
93
  useClass: LocalStrategy,
93
94
  };
94
95
  }
95
- function createAuthServiceProvider(userEntity, { loginField, passwordField, additionalFields = [], callback: loginCallback }, getAccountCallback, register, resetPasswordOptions, updateAccount, refreshToken) {
96
+ function createAuthServiceProvider(userEntity, { loginOptions: { loginField, passwordField, additionalFields = [], callback: loginCallback }, getAccountCallback, register, resetPasswordOptions, updateAccount, refreshToken, passwordlessOptions, }) {
96
97
  let AuthService = class AuthService extends services_2.BaseAuthService {
97
- constructor(model, jwtService, bcryptService) {
98
- super(model, jwtService, bcryptService);
98
+ constructor(model, jwtService, bcryptService, otpModel) {
99
+ super(model, jwtService, bcryptService, otpModel);
99
100
  this.model = model;
100
101
  this.jwtService = jwtService;
101
102
  this.bcryptService = bcryptService;
103
+ this.otpModel = otpModel;
102
104
  this.entity = userEntity;
103
105
  this.additionalRequestFields = additionalFields;
104
106
  this.loginField = loginField;
@@ -112,21 +114,33 @@ function createAuthServiceProvider(userEntity, { loginField, passwordField, addi
112
114
  this.loginCallback = loginCallback;
113
115
  this.getAccountCallback = getAccountCallback;
114
116
  this.resetPasswordOptions = resetPasswordOptions;
117
+ this.passwordlessOptions = passwordlessOptions;
115
118
  }
116
119
  };
117
120
  AuthService = __decorate([
118
121
  __param(0, (0, mongoose_1.InjectModel)(userEntity.name, dynamic_api_module_1.DynamicApiModule.state.get('connectionName'))),
122
+ __param(3, (0, common_1.Optional)()),
123
+ __param(3, (0, mongoose_1.InjectModel)(otp_code_model_1.OtpCode.name, dynamic_api_module_1.DynamicApiModule.state.get('connectionName'))),
119
124
  __metadata("design:paramtypes", [mongoose_2.Model,
120
125
  jwt_1.JwtService,
121
- services_1.BcryptService])
126
+ services_1.BcryptService,
127
+ mongoose_2.Model])
122
128
  ], AuthService);
123
129
  return {
124
130
  provide: authServiceProviderName,
125
131
  useClass: AuthService,
126
132
  };
127
133
  }
128
- function createAuthController(userEntity, loginOptions, { getAccountOptions, registerOptions, validationPipeOptions, resetPasswordOptions, updateAccountOptions, refreshTokenOptions, } = {}) {
129
- let AuthController = class AuthController extends (0, mixins_1.AuthControllerMixin)(userEntity, loginOptions, registerOptions, resetPasswordOptions, updateAccountOptions, getAccountOptions, refreshTokenOptions) {
134
+ function createAuthController(userEntity, loginOptions, { getAccountOptions, registerOptions, validationPipeOptions, resetPasswordOptions, updateAccountOptions, refreshTokenOptions, passwordlessOptions, } = {}) {
135
+ let AuthController = class AuthController extends (0, mixins_1.AuthControllerMixin)(userEntity, {
136
+ loginOptions,
137
+ registerOptions,
138
+ resetPasswordOptions,
139
+ updateAccountOptions,
140
+ getAccountOptions,
141
+ refreshTokenOptions,
142
+ passwordlessOptions,
143
+ }) {
130
144
  constructor(service, broadcastService, jwtService) {
131
145
  super(service, broadcastService, jwtService);
132
146
  this.service = service;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/modules/auth/auth.helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAmPE,oDAAoB;AACpB,8DAAyB;AACzB,8CAAiB;AACjB,kEAA2B;AAtP7B,2CAA8J;AAC9J,qCAAyC;AACzC,+CAA+C;AAC/C,+CAAoD;AACpD,6CAA0C;AAC1C,mDAAsD;AACtD,uCAAiC;AACjC,mDAA0C;AAC1C,iDAAiD;AACjD,iEAA4D;AAC5D,2CAA4D;AAG5D,6CAA2E;AAE3E,qCAAiE;AACjE,yCAA6C;AAE7C,MAAM,uBAAuB,GAAG,uBAAuB,CAAC;AA+NtD,0DAAuB;AA9NzB,MAAM,uBAAuB,GAAG,uBAAuB,CAAC;AA+NtD,0DAAuB;AA9NzB,MAAM,yBAAyB,GAAG,yBAAyB,CAAC;AAmO1D,8DAAyB;AAjO3B,SAAS,2BAA2B,CAClC,UAAwB,EACxB,aAA2B,EAC3B,gBAAkD,EAClD,cAAqD,EACrD,WAAuB;IAEvB,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO;YACL,OAAO,EAAE,yBAAyB;YAClC,QAAQ,EAAE,WAAW;SACtB,CAAC;IACJ,CAAC;IAED,IACM,aAAa,GADnB,MACM,aAAc,SAAQ,IAAA,2BAAgB,EAAC,yBAAQ,CAAC;QAIpD,YAEE,WAAmD;YAEnD,KAAK,CAAC;gBACJ,aAAa,EAAE,UAAoB;gBACnC,aAAa,EAAE,aAAuB;gBACtC,iBAAiB,EAAE,IAAI;aACxB,CAAC,CAAC;YANgB,gBAAW,GAAX,WAAW,CAAqB;YAL3C,qBAAgB,GAAG,gBAAgB,CAAC;YACpC,mBAAc,GAAG,cAAc,CAAC;QAW1C,CAAC;QASD,YAAY,CAAC,GAAQ,EAAE,OAAa;YAClC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,UAAoB,CAAC,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC;gBACjE,GAAG,CAAC,IAAI,CAAC,UAAoB,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;YAClD,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACzB,OAAO,KAAK,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAC1C,CAAC;YAED,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,UAAoB,CAAC,IAAI,EAAE,CAAC;YACrD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,aAAuB,CAAC,IAAI,EAAE,CAAC;YAEvD,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC;iBAC5B,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iBAClC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACrC,CAAC;QAED,KAAK,CAAC,QAAQ,CAAC,GAAQ,EAAE,KAAa,EAAE,IAAY;YAClD,IAAI,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAEvE,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC1D,CAAC;YAED,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,8BAAqB,CAAC,qBAAqB,CAAC,CAAC;YACzD,CAAC;YAED,IAAI,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1D,MAAM,IAAI,2BAAkB,CAAC,eAAe,CAAC,CAAC;YAChD,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAA;IAxDK,aAAa;QADlB,IAAA,mBAAU,GAAE;QAMR,WAAA,IAAA,eAAM,EAAC,uBAAuB,CAAC,CAAA;;OAL9B,aAAa,CAwDlB;IAED,OAAO;QACL,OAAO,EAAE,yBAAyB;QAClC,QAAQ,EAAE,aAAa;KACxB,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAChC,UAAwB,EACxB,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,GAAG,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAkC,EAC7G,kBAAyD,EACzD,QAAuD,EACvD,oBAAwE,EACxE,aAAiE,EACjE,YAAoD;IAEpD,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,0BAAuB;QAiB/C,YAKE,KAAuC,EACpB,UAAsB,EACtB,aAA4B;YAE/C,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;YAJrB,UAAK,GAAL,KAAK,CAAe;YACpB,eAAU,GAAV,UAAU,CAAY;YACtB,kBAAa,GAAb,aAAa,CAAe;YAvBvC,WAAM,GAAG,UAAU,CAAC;YACpB,4BAAuB,GAAG,gBAAgB,CAAC;YAC3C,eAAU,GAAG,UAAU,CAAC;YACxB,kBAAa,GAAG,aAAa,CAAC;YAC9B,sBAAiB,GAAG,YAAY,EAAE,iBAAiB,CAAC;YACpD,yBAAoB,GAAG,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAU,sBAAsB,CAAC,IAAI,KAAK,CAAC;YAE5F,2BAAsB,GAAG,QAAQ,EAAE,kBAAkB,CAAC;YACtD,qBAAgB,GAAG,QAAQ,EAAE,QAAQ,CAAC;YAEtC,gCAA2B,GAAG,aAAa,EAAE,kBAAkB,CAAC;YAChE,0BAAqB,GAAG,aAAa,EAAE,QAAQ,CAAC;YAChD,kBAAa,GAAG,aAAa,CAAC;YAC9B,uBAAkB,GAAG,kBAAkB,CAAC;YACxC,yBAAoB,GAAG,oBAAoB,CAAC;QAYtD,CAAC;KACF,CAAA;IA5BK,WAAW;QAkBZ,WAAA,IAAA,sBAAW,EACV,UAAU,CAAC,IAAI,EACf,qCAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAC7C,CAAA;yCACyB,gBAAK;YACA,gBAAU;YACP,wBAAa;OAxB7C,WAAW,CA4BhB;IAED,OAAO;QACL,OAAO,EAAE,uBAAuB;QAChC,QAAQ,EAAE,WAAW;KACtB,CAAC;AACJ,CAAC;AAoBD,SAAS,oBAAoB,CAC3B,UAAwB,EACxB,YAA4C,EAC5C,EACE,iBAAiB,EACjB,eAAe,EACf,qBAAqB,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,MACoB,EAAE;IAE3C,IAGM,cAAc,GAHpB,MAGM,cAAe,SAAQ,IAAA,4BAAmB,EAC9C,UAAU,EACV,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,CACpB;QACC,YAEqB,OAA4B,EAE5B,gBAA4C,EAE5C,UAAsB;YAEzC,KAAK,CAAC,OAAO,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAC;YAN1B,YAAO,GAAP,OAAO,CAAqB;YAE5B,qBAAgB,GAAhB,gBAAgB,CAA4B;YAE5C,eAAU,GAAV,UAAU,CAAY;QAG3C,CAAC;KACF,CAAA;IAnBK,cAAc;QAHnB,IAAA,mBAAU,EAAC,MAAM,CAAC;QAClB,IAAA,iBAAO,EAAC,MAAM,CAAC;QACf,IAAA,0BAAa,EAAC,qBAAqB,CAAC;QAWhC,WAAA,IAAA,eAAM,EAAC,uBAAuB,CAAC,CAAA;QAE/B,WAAA,IAAA,iBAAQ,GAAE,CAAA;QAAE,WAAA,IAAA,eAAM,EAAC,qCAA0B,CAAC,CAAA;QAE9C,WAAA,IAAA,eAAM,EAAC,gBAAU,CAAC,CAAA;iDADkB,qCAA0B;YAEhC,gBAAU;OAfvC,cAAc,CAmBnB;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,SAAS,iBAAiB,CACxB,UAAwB,EACxB,YAA4C,EAC5C,EACE,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,qBAAqB,EACrB,GAAG,cAAc,EACgB;IAEnC,IAGM,WAAW,GAHjB,MAGM,WAAY,SAAQ,IAAA,yBAAgB,EACxC,UAAU,EACV,YAAY,EACZ,eAAe,IAAI,EAAE,EACrB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,CACpB;QACC,YAEqB,OAA4B,EAC5B,UAAsB;YAEzC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAHR,YAAO,GAAP,OAAO,CAAqB;YAC5B,eAAU,GAAV,UAAU,CAAY;QAG3C,CAAC;KACF,CAAA;IAhBK,WAAW;QAHhB,IAAA,6BAAgB,EAAC,cAAc,CAAC;QAChC,IAAA,mBAAU,EAAC,IAAI,qCAA2B,EAAE,CAAC;QAC7C,IAAA,0BAAa,EAAC,qBAAqB,CAAC;QAWhC,WAAA,IAAA,eAAM,EAAC,uBAAuB,CAAC,CAAA;iDAED,gBAAU;OAZvC,WAAW,CAgBhB;IAED,OAAO,WAAW,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"auth.helper.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/modules/auth/auth.helper.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ const gateways_1 = require("../../gateways");
18
18
  const helpers_1 = require("../../helpers");
19
19
  const services_1 = require("../../services");
20
20
  const auth_helper_1 = require("./auth.helper");
21
+ const otp_code_model_1 = require("./models/otp-code.model");
21
22
  const strategies_1 = require("./strategies");
22
23
  let AuthModule = AuthModule_1 = class AuthModule {
23
24
  configure(consumer) {
@@ -26,12 +27,13 @@ let AuthModule = AuthModule_1 = class AuthModule {
26
27
  }
27
28
  }
28
29
  static forRoot(options) {
29
- const { userEntity, login: { loginField, passwordField, ...login }, getAccount, register, updateAccount, resetPassword, refreshToken, jwt: { secret, expiresIn }, validationPipeOptions, webSocket, extraImports, extraProviders, extraControllers, } = this.initializeAuthOptions(options);
30
+ const { userEntity, login: { loginField, passwordField, ...login }, getAccount, register, updateAccount, resetPassword, refreshToken, passwordless, jwt: { secret, expiresIn }, validationPipeOptions, webSocket, extraImports, extraProviders, extraControllers, } = this.initializeAuthOptions(options);
30
31
  AuthModule_1.useCookie = refreshToken?.useCookie ?? false;
31
32
  const { resetPasswordCallback, ...resetPasswordOptionsRest } = resetPassword;
32
33
  const resetPasswordOptions = resetPasswordCallback
33
34
  ? { resetPasswordCallback, ...resetPasswordOptionsRest }
34
35
  : undefined;
36
+ const connectionName = dynamic_api_module_1.DynamicApiModule.state.get('connectionName');
35
37
  const AuthController = (0, auth_helper_1.createAuthController)(userEntity, { loginField, passwordField, ...login }, {
36
38
  getAccountOptions: getAccount,
37
39
  registerOptions: register,
@@ -39,8 +41,17 @@ let AuthModule = AuthModule_1 = class AuthModule {
39
41
  resetPasswordOptions,
40
42
  updateAccountOptions: updateAccount,
41
43
  refreshTokenOptions: refreshToken,
44
+ passwordlessOptions: passwordless,
45
+ });
46
+ const AuthServiceProvider = (0, auth_helper_1.createAuthServiceProvider)(userEntity, {
47
+ loginOptions: { loginField, passwordField, ...login },
48
+ getAccountCallback: getAccount?.callback,
49
+ register,
50
+ resetPasswordOptions,
51
+ updateAccount,
52
+ refreshToken,
53
+ passwordlessOptions: passwordless,
42
54
  });
43
- const AuthServiceProvider = (0, auth_helper_1.createAuthServiceProvider)(userEntity, { loginField, passwordField, ...login }, getAccount?.callback, register, resetPasswordOptions, updateAccount, refreshToken);
44
55
  const LocalStrategyProvider = (0, auth_helper_1.createLocalStrategyProvider)(loginField, passwordField, login.abilityPredicate, login.customValidate, login.useStrategy);
45
56
  const schema = (0, helpers_1.buildSchemaFromEntity)(userEntity);
46
57
  services_1.DynamicApiGlobalStateService.addEntitySchema(userEntity, schema);
@@ -68,6 +79,9 @@ let AuthModule = AuthModule_1 = class AuthModule {
68
79
  }),
69
80
  },
70
81
  ];
82
+ const otpFeatureModule = passwordless
83
+ ? mongoose_1.MongooseModule.forFeature([{ name: otp_code_model_1.OtpCode.name, schema: otp_code_model_1.OtpCodeSchema }], connectionName)
84
+ : undefined;
71
85
  return {
72
86
  module: AuthModule_1,
73
87
  imports: [
@@ -78,6 +92,7 @@ let AuthModule = AuthModule_1 = class AuthModule {
78
92
  schema,
79
93
  },
80
94
  ], dynamic_api_module_1.DynamicApiModule.state.get('connectionName')),
95
+ ...(otpFeatureModule ? [otpFeatureModule] : []),
81
96
  passport_1.PassportModule,
82
97
  jwt_1.JwtModule.register({
83
98
  global: true,
@@ -98,7 +113,7 @@ let AuthModule = AuthModule_1 = class AuthModule {
98
113
  controllers: [AuthController, ...extraControllers],
99
114
  };
100
115
  }
101
- static initializeAuthOptions({ userEntity, jwt, login, register, updateAccount, getAccount, resetPassword, refreshToken, validationPipeOptions, webSocket, extraImports = [], extraProviders = [], extraControllers = [], }) {
116
+ static initializeAuthOptions({ userEntity, jwt, login, register, updateAccount, getAccount, resetPassword, refreshToken, passwordless, validationPipeOptions, webSocket, extraImports = [], extraProviders = [], extraControllers = [], }) {
102
117
  return {
103
118
  userEntity: userEntity,
104
119
  jwt: {
@@ -137,6 +152,12 @@ let AuthModule = AuthModule_1 = class AuthModule {
137
152
  refreshTokenField: refreshToken?.refreshTokenField,
138
153
  useCookie: refreshToken?.useCookie ?? false,
139
154
  },
155
+ passwordless: passwordless
156
+ ? {
157
+ ...passwordless,
158
+ otpExpirationMinutes: passwordless.otpExpirationMinutes ?? 10,
159
+ }
160
+ : undefined,
140
161
  validationPipeOptions: validationPipeOptions,
141
162
  webSocket,
142
163
  extraImports,
@@ -1 +1 @@
1
- {"version":3,"file":"auth.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/modules/auth/auth.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.module.js","sourceRoot":"","sources":["../../../../libs/dynamic-api/src/modules/auth/auth.module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare class SendOtpCodeDto {
2
+ identifier: string;
3
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.SendOtpCodeDto = void 0;
13
+ const swagger_1 = require("@nestjs/swagger");
14
+ const class_validator_1 = require("class-validator");
15
+ class SendOtpCodeDto {
16
+ }
17
+ exports.SendOtpCodeDto = SendOtpCodeDto;
18
+ __decorate([
19
+ (0, class_validator_1.IsString)(),
20
+ (0, class_validator_1.IsNotEmpty)(),
21
+ (0, swagger_1.ApiProperty)({ description: 'User identifier (e.g. email address).' }),
22
+ __metadata("design:type", String)
23
+ ], SendOtpCodeDto.prototype, "identifier", void 0);
24
+ //# sourceMappingURL=send-otp-code.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send-otp-code.dto.js","sourceRoot":"","sources":["../../../../../libs/dynamic-api/src/modules/auth/dtos/send-otp-code.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA8C;AAC9C,qDAAuD;AAEvD,MAAa,cAAc;CAK1B;AALD,wCAKC;AADC;IAHC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC;;kDACnD"}
@@ -0,0 +1,4 @@
1
+ export declare class VerifyOtpCodeDto {
2
+ identifier: string;
3
+ code: string;
4
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.VerifyOtpCodeDto = void 0;
13
+ const swagger_1 = require("@nestjs/swagger");
14
+ const class_validator_1 = require("class-validator");
15
+ class VerifyOtpCodeDto {
16
+ }
17
+ exports.VerifyOtpCodeDto = VerifyOtpCodeDto;
18
+ __decorate([
19
+ (0, class_validator_1.IsString)(),
20
+ (0, class_validator_1.IsNotEmpty)(),
21
+ (0, swagger_1.ApiProperty)({ description: 'User identifier (e.g. email address).' }),
22
+ __metadata("design:type", String)
23
+ ], VerifyOtpCodeDto.prototype, "identifier", void 0);
24
+ __decorate([
25
+ (0, class_validator_1.IsString)(),
26
+ (0, class_validator_1.IsNotEmpty)(),
27
+ (0, class_validator_1.Length)(6, 6),
28
+ (0, swagger_1.ApiProperty)({ description: '6-digit one-time code sent to the user.' }),
29
+ __metadata("design:type", String)
30
+ ], VerifyOtpCodeDto.prototype, "code", void 0);
31
+ //# sourceMappingURL=verify-otp-code.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-otp-code.dto.js","sourceRoot":"","sources":["../../../../../libs/dynamic-api/src/modules/auth/dtos/verify-otp-code.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA8C;AAC9C,qDAA+D;AAE/D,MAAa,gBAAgB;CAW5B;AAXD,4CAWC;AAPC;IAHC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,uCAAuC,EAAE,CAAC;;oDACnD;AAMnB;IAJC,IAAA,0BAAQ,GAAE;IACV,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,EAAC,CAAC,EAAE,CAAC,CAAC;IACZ,IAAA,qBAAW,EAAC,EAAE,WAAW,EAAE,yCAAyC,EAAE,CAAC;;8CAC3D"}
@@ -3,4 +3,5 @@ export * from './jwt-refresh/jwt-refresh.guard';
3
3
  export * from './jwt-socket-auth/jwt-socket-auth.guard';
4
4
  export * from './jwt-socket-refresh/jwt-socket-refresh.guard';
5
5
  export * from './local-auth/local-auth.guard';
6
+ export * from './passwordless/passwordless.guard';
6
7
  export * from './reset-password/reset-password.guard';
@@ -19,5 +19,6 @@ __exportStar(require("./jwt-refresh/jwt-refresh.guard"), exports);
19
19
  __exportStar(require("./jwt-socket-auth/jwt-socket-auth.guard"), exports);
20
20
  __exportStar(require("./jwt-socket-refresh/jwt-socket-refresh.guard"), exports);
21
21
  __exportStar(require("./local-auth/local-auth.guard"), exports);
22
+ __exportStar(require("./passwordless/passwordless.guard"), exports);
22
23
  __exportStar(require("./reset-password/reset-password.guard"), exports);
23
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/dynamic-api/src/modules/auth/guards/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4DAA0C;AAC1C,kEAAgD;AAChD,0EAAwD;AACxD,gFAA8D;AAC9D,gEAA8C;AAC9C,wEAAsD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/dynamic-api/src/modules/auth/guards/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4DAA0C;AAC1C,kEAAgD;AAChD,0EAAwD;AACxD,gFAA8D;AAC9D,gEAA8C;AAC9C,oEAAkD;AAClD,wEAAsD"}
@@ -0,0 +1,6 @@
1
+ import { CanActivate, ExecutionContext } from '@nestjs/common';
2
+ export declare class PasswordlessGuard implements CanActivate {
3
+ private readonly configured;
4
+ constructor(configured: boolean);
5
+ canActivate(_context: ExecutionContext): boolean;
6
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.PasswordlessGuard = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ let PasswordlessGuard = class PasswordlessGuard {
15
+ constructor(configured) {
16
+ this.configured = configured;
17
+ }
18
+ canActivate(_context) {
19
+ if (!this.configured) {
20
+ throw new common_1.ServiceUnavailableException('This feature is not available');
21
+ }
22
+ return true;
23
+ }
24
+ };
25
+ exports.PasswordlessGuard = PasswordlessGuard;
26
+ exports.PasswordlessGuard = PasswordlessGuard = __decorate([
27
+ (0, common_1.Injectable)(),
28
+ __metadata("design:paramtypes", [Boolean])
29
+ ], PasswordlessGuard);
30
+ //# sourceMappingURL=passwordless.guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passwordless.guard.js","sourceRoot":"","sources":["../../../../../../libs/dynamic-api/src/modules/auth/guards/passwordless/passwordless.guard.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAwG;AAGjG,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,YAA6B,UAAmB;QAAnB,eAAU,GAAV,UAAU,CAAS;IAAG,CAAC;IAEpD,WAAW,CAAC,QAA0B;QACpC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,oCAA2B,CAAC,+BAA+B,CAAC,CAAC;QACzE,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAVY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;;GACA,iBAAiB,CAU7B"}
@@ -28,6 +28,13 @@ interface AuthController<Entity extends BaseEntity> {
28
28
  logout(req: {
29
29
  user: Entity;
30
30
  }, res: Response): Promise<void>;
31
+ sendOtpCode(body: {
32
+ identifier: string;
33
+ }): Promise<void>;
34
+ verifyOtpCode(body: {
35
+ identifier: string;
36
+ code: string;
37
+ }, res: Response): Promise<LoginResponse>;
31
38
  }
32
39
  type AuthControllerConstructor<Entity extends BaseEntity> = new (service: AuthService<Entity>, broadcastService?: DynamicApiBroadcastService, jwtService?: JwtService) => AuthController<Entity>;
33
40
  export type { AuthController, AuthControllerConstructor };
@@ -66,6 +66,12 @@ type DynamicApiRefreshTokenOptions<Entity extends BaseEntity = any> = {
66
66
  refreshTokenField?: keyof Entity;
67
67
  useCookie?: boolean;
68
68
  };
69
+ type PasswordlessOptions<Entity extends BaseEntity = any> = {
70
+ otpExpirationMinutes?: number;
71
+ generateCode?: () => string;
72
+ sendCodeCallback: (identifier: string, code: string) => Promise<void>;
73
+ callback?: AfterSaveCallback<Entity>;
74
+ };
69
75
  type DynamicApiAuthOptions<Entity extends BaseEntity = any> = {
70
76
  userEntity: Type<Entity>;
71
77
  jwt?: DynamicApiJWTOptions;
@@ -75,10 +81,11 @@ type DynamicApiAuthOptions<Entity extends BaseEntity = any> = {
75
81
  updateAccount?: DynamicApiUpdateAccountOptions<Entity>;
76
82
  resetPassword?: Partial<DynamicApiResetPasswordOptions<Entity>>;
77
83
  refreshToken?: DynamicApiRefreshTokenOptions<Entity>;
84
+ passwordless?: PasswordlessOptions<Entity>;
78
85
  validationPipeOptions?: ValidationPipeOptions;
79
86
  webSocket?: DynamicApiWebSocketOptions;
80
87
  extraImports?: ModuleMetadata['imports'];
81
88
  extraProviders?: ModuleMetadata['providers'];
82
89
  extraControllers?: ModuleMetadata['controllers'];
83
90
  };
84
- export type { DynamicApiAuthBroadcastConfig, DynamicApiAuthOptions, DynamicApiRegisterOptions, DynamicApiUpdateAccountOptions, DynamicApiGetAccountOptions, DynamicApiJWTOptions, DynamicApiLoginOptions, DynamicApiRefreshTokenOptions, DynamicApiResetPasswordOptions, };
91
+ export type { DynamicApiAuthBroadcastConfig, DynamicApiAuthOptions, DynamicApiRegisterOptions, DynamicApiUpdateAccountOptions, DynamicApiGetAccountOptions, DynamicApiJWTOptions, DynamicApiLoginOptions, DynamicApiRefreshTokenOptions, DynamicApiResetPasswordOptions, PasswordlessOptions, };
@@ -13,5 +13,7 @@ interface AuthService<Entity extends BaseEntity> {
13
13
  changePassword(resetPasswordToken: string, newPassword: string): Promise<void>;
14
14
  refreshToken(user: Entity, rawToken?: string): Promise<LoginResponse>;
15
15
  logout(user: Entity): Promise<void>;
16
+ sendOtpCode(identifier: string): Promise<void>;
17
+ verifyOtpCode(identifier: string, code: string): Promise<LoginResponse>;
16
18
  }
17
19
  export type { AuthService, LoginResponse };
@@ -1,5 +1,14 @@
1
1
  import { Type } from '@nestjs/common';
2
2
  import { BaseEntity } from '../../../models';
3
- import { AuthControllerConstructor, DynamicApiGetAccountOptions, DynamicApiLoginOptions, DynamicApiRefreshTokenOptions, DynamicApiRegisterOptions, DynamicApiResetPasswordOptions, DynamicApiUpdateAccountOptions } from '../interfaces';
4
- declare function AuthControllerMixin<Entity extends BaseEntity>(userEntity: Type<Entity>, { loginField, passwordField, additionalFields: additionalRequestFields, useInterceptors: loginUseInterceptors, broadcast: loginBroadcastConfig, }: DynamicApiLoginOptions<Entity>, { additionalFields: additionalRegisterFields, protected: registerProtected, abilityPredicate: registerAbilityPredicate, useInterceptors: registerUseInterceptors, broadcast: registerBroadcastConfig, }?: DynamicApiRegisterOptions<Entity>, { resetPasswordUseInterceptors, changePasswordUseInterceptors, ...resetPasswordOptions }?: DynamicApiResetPasswordOptions<Entity>, { useInterceptors: updateAccountUseInterceptors, broadcast: updateAccountBroadcastConfig, refreshTokenOnUpdate, ...updateAccountOptions }?: DynamicApiUpdateAccountOptions<Entity>, { useInterceptors: getAccountUseInterceptors, broadcast: getAccountBroadcastConfig, }?: DynamicApiGetAccountOptions<Entity>, { useInterceptors: refreshTokenUseInterceptors, useCookie, }?: DynamicApiRefreshTokenOptions<Entity>): AuthControllerConstructor<Entity>;
3
+ import { AuthControllerConstructor, DynamicApiGetAccountOptions, DynamicApiLoginOptions, DynamicApiRefreshTokenOptions, DynamicApiRegisterOptions, DynamicApiResetPasswordOptions, DynamicApiUpdateAccountOptions, PasswordlessOptions } from '../interfaces';
4
+ type AuthControllerMixinOptions<Entity extends BaseEntity> = {
5
+ loginOptions: DynamicApiLoginOptions<Entity>;
6
+ registerOptions?: DynamicApiRegisterOptions<Entity>;
7
+ resetPasswordOptions?: DynamicApiResetPasswordOptions<Entity>;
8
+ updateAccountOptions?: DynamicApiUpdateAccountOptions<Entity>;
9
+ getAccountOptions?: DynamicApiGetAccountOptions<Entity>;
10
+ refreshTokenOptions?: DynamicApiRefreshTokenOptions<Entity>;
11
+ passwordlessOptions?: PasswordlessOptions<Entity>;
12
+ };
13
+ declare function AuthControllerMixin<Entity extends BaseEntity>(userEntity: Type<Entity>, { loginOptions: { loginField, passwordField, additionalFields: additionalRequestFields, useInterceptors: loginUseInterceptors, broadcast: loginBroadcastConfig, }, registerOptions: { additionalFields: additionalRegisterFields, protected: registerProtected, abilityPredicate: registerAbilityPredicate, useInterceptors: registerUseInterceptors, broadcast: registerBroadcastConfig, }, resetPasswordOptions: { resetPasswordUseInterceptors, changePasswordUseInterceptors, ...resetPasswordOptions }, updateAccountOptions: { useInterceptors: updateAccountUseInterceptors, broadcast: updateAccountBroadcastConfig, refreshTokenOnUpdate, ...updateAccountOptions }, getAccountOptions: { useInterceptors: getAccountUseInterceptors, broadcast: getAccountBroadcastConfig, }, refreshTokenOptions: { useInterceptors: refreshTokenUseInterceptors, useCookie, }, passwordlessOptions, }: AuthControllerMixinOptions<Entity>): AuthControllerConstructor<Entity>;
5
14
  export { AuthControllerMixin };
@@ -26,11 +26,13 @@ const auth_operation_context_1 = require("../auth-operation-context");
26
26
  const auth_events_constants_1 = require("../auth-events.constants");
27
27
  const change_password_dto_1 = require("../dtos/change-password.dto");
28
28
  const reset_password_dto_1 = require("../dtos/reset-password.dto");
29
+ const send_otp_code_dto_1 = require("../dtos/send-otp-code.dto");
30
+ const verify_otp_code_dto_1 = require("../dtos/verify-otp-code.dto");
29
31
  const guards_1 = require("../guards");
30
32
  const auth_policies_guard_mixin_1 = require("./auth-policies-guard.mixin");
31
33
  const REFRESH_TOKEN_COOKIE = 'refreshToken';
32
34
  const COOKIE_OPTIONS = { httpOnly: true, secure: process.env.NODE_ENV === 'production', sameSite: 'strict' };
33
- function AuthControllerMixin(userEntity, { loginField, passwordField, additionalFields: additionalRequestFields = [], useInterceptors: loginUseInterceptors = [], broadcast: loginBroadcastConfig, }, { additionalFields: additionalRegisterFields, protected: registerProtected, abilityPredicate: registerAbilityPredicate, useInterceptors: registerUseInterceptors = [], broadcast: registerBroadcastConfig, } = {}, { resetPasswordUseInterceptors = [], changePasswordUseInterceptors = [], ...resetPasswordOptions } = {}, { useInterceptors: updateAccountUseInterceptors = [], broadcast: updateAccountBroadcastConfig, refreshTokenOnUpdate = false, ...updateAccountOptions } = {}, { useInterceptors: getAccountUseInterceptors = [], broadcast: getAccountBroadcastConfig, } = {}, { useInterceptors: refreshTokenUseInterceptors = [], useCookie = false, } = {}) {
35
+ function AuthControllerMixin(userEntity, { loginOptions: { loginField, passwordField, additionalFields: additionalRequestFields = [], useInterceptors: loginUseInterceptors = [], broadcast: loginBroadcastConfig, }, registerOptions: { additionalFields: additionalRegisterFields, protected: registerProtected, abilityPredicate: registerAbilityPredicate, useInterceptors: registerUseInterceptors = [], broadcast: registerBroadcastConfig, } = {}, resetPasswordOptions: { resetPasswordUseInterceptors = [], changePasswordUseInterceptors = [], ...resetPasswordOptions } = {}, updateAccountOptions: { useInterceptors: updateAccountUseInterceptors = [], broadcast: updateAccountBroadcastConfig, refreshTokenOnUpdate = false, ...updateAccountOptions } = {}, getAccountOptions: { useInterceptors: getAccountUseInterceptors = [], broadcast: getAccountBroadcastConfig, } = {}, refreshTokenOptions: { useInterceptors: refreshTokenUseInterceptors = [], useCookie = false, } = {}, passwordlessOptions, }) {
34
36
  var _a;
35
37
  if (!loginField || !passwordField) {
36
38
  throw new Error('Login and password fields are required');
@@ -207,6 +209,18 @@ function AuthControllerMixin(userEntity, { loginField, passwordField, additional
207
209
  res.clearCookie(REFRESH_TOKEN_COOKIE);
208
210
  }
209
211
  }
212
+ sendOtpCode({ identifier }) {
213
+ return this.service.sendOtpCode(identifier);
214
+ }
215
+ async verifyOtpCode({ identifier, code }, res) {
216
+ const result = await this.service.verifyOtpCode(identifier, code);
217
+ if (useCookie) {
218
+ res.cookie(REFRESH_TOKEN_COOKIE, result.refreshToken, COOKIE_OPTIONS);
219
+ const { refreshToken: _rt, ...bodyResult } = result;
220
+ return bodyResult;
221
+ }
222
+ return result;
223
+ }
210
224
  };
211
225
  __decorate([
212
226
  (0, swagger_1.ApiBearerAuth)(),
@@ -307,6 +321,30 @@ function AuthControllerMixin(userEntity, { loginField, passwordField, additional
307
321
  __metadata("design:paramtypes", [Object, Object]),
308
322
  __metadata("design:returntype", Promise)
309
323
  ], BaseAuthController.prototype, "logout", null);
324
+ __decorate([
325
+ (0, decorators_1.Public)(),
326
+ (0, decorators_1.ApiEndpointVisibility)(!!passwordlessOptions),
327
+ (0, common_1.UseGuards)(new guards_1.PasswordlessGuard(!!passwordlessOptions)),
328
+ (0, common_1.HttpCode)(common_1.HttpStatus.NO_CONTENT),
329
+ (0, common_1.Post)('passwordless/send-code'),
330
+ __param(0, (0, common_1.Body)()),
331
+ __metadata("design:type", Function),
332
+ __metadata("design:paramtypes", [send_otp_code_dto_1.SendOtpCodeDto]),
333
+ __metadata("design:returntype", Promise)
334
+ ], BaseAuthController.prototype, "sendOtpCode", null);
335
+ __decorate([
336
+ (0, decorators_1.Public)(),
337
+ (0, decorators_1.ApiEndpointVisibility)(!!passwordlessOptions),
338
+ (0, common_1.UseGuards)(new guards_1.PasswordlessGuard(!!passwordlessOptions)),
339
+ (0, common_1.HttpCode)(common_1.HttpStatus.OK),
340
+ (0, swagger_1.ApiOkResponse)({ type: AuthPresenter }),
341
+ (0, common_1.Post)('passwordless/verify-code'),
342
+ __param(0, (0, common_1.Body)()),
343
+ __param(1, (0, common_1.Res)({ passthrough: true })),
344
+ __metadata("design:type", Function),
345
+ __metadata("design:paramtypes", [verify_otp_code_dto_1.VerifyOtpCodeDto, Object]),
346
+ __metadata("design:returntype", Promise)
347
+ ], BaseAuthController.prototype, "verifyOtpCode", null);
310
348
  BaseAuthController = __decorate([
311
349
  __param(1, (0, common_1.Optional)()),
312
350
  __param(2, (0, common_1.Optional)()),
@@ -1 +1 @@
1
- {"version":3,"file":"auth-controller.mixin.js","sourceRoot":"","sources":["../../../../../libs/dynamic-api/src/modules/auth/mixins/auth-controller.mixin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth-controller.mixin.js","sourceRoot":"","sources":["../../../../../libs/dynamic-api/src/modules/auth/mixins/auth-controller.mixin.ts"],"names":[],"mappings":"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"}