@hedhog/admin 0.51.7 → 0.51.10

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.
@@ -58,5 +58,18 @@ export declare class AuthController {
58
58
  changeEmail({ currentEmail, password, newEmail }: EmailDTO): Promise<{
59
59
  token: string;
60
60
  }>;
61
+ generate2fa({ id }: {
62
+ id: any;
63
+ }): Promise<{
64
+ qrCode: any;
65
+ secret: any;
66
+ }>;
67
+ verify2fa({ id }: {
68
+ id: any;
69
+ }, { secret }: {
70
+ secret: string;
71
+ }): Promise<{
72
+ token: string;
73
+ }>;
61
74
  }
62
75
  //# sourceMappingURL=auth.controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.controller.d.ts","sourceRoot":"","sources":["../../src/auth/auth.controller.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAErD,qBACa,cAAc;IAGvB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,WAAW;IAKjC,eAAe,CAAgB,IAAI,EAAE,MAAM;;;;;IAM3C,UAAU,CAAS,IAAI,EAAE,aAAa;;;IAMtC,MAAM,CAAS,EAAE,EAAE,EAAE,EAAE,QAAQ;;;;;;;;;;IAM/B,KAAK,CAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,QAAQ;;;;;;;;IAM3C,QAAQ,CACJ,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,WAAW;;;IAahE,GAAG,CAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM;;;IAMnC,MAAM,CAEV,EACE,KAAK,GACN,EAAE,SAAS,GAAG;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;KACd;;;IASG,KAAK,CAAS,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAAE,QAAQ;;;IAUjE,cAAc,CAElB,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,SAAS;;;IAWlE,WAAW,CAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,QAAQ;;;CAGzE"}
1
+ {"version":3,"file":"auth.controller.d.ts","sourceRoot":"","sources":["../../src/auth/auth.controller.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,IAAI,IAAI,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAErD,qBACa,cAAc;IAGvB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,WAAW;IAKjC,eAAe,CAAgB,IAAI,EAAE,MAAM;;;;;IAM3C,UAAU,CAAS,IAAI,EAAE,aAAa;;;IAMtC,MAAM,CAAS,EAAE,EAAE,EAAE,EAAE,QAAQ;;;;;;;;;;IAM/B,KAAK,CAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,QAAQ;;;;;;;;IAM3C,QAAQ,CACJ,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,WAAW;;;IAahE,GAAG,CAAS,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM;;;IAMnC,MAAM,CAEV,EACE,KAAK,GACN,EAAE,SAAS,GAAG;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;KACd;;;IASG,KAAK,CAAS,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAAE,QAAQ;;;IAUjE,cAAc,CAElB,EAAE,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,SAAS;;;IAWlE,WAAW,CAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,QAAQ;;;IAKlE,WAAW,CAAS,EAAE,EAAE,EAAE;;KAAA;;;;IAK1B,SAAS,CAAS,EAAE,EAAE,EAAE;;KAAA,EAAU,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE;;;CAGvE"}
@@ -74,6 +74,12 @@ let AuthController = class AuthController {
74
74
  async changeEmail({ currentEmail, password, newEmail }) {
75
75
  return this.service.changeEmail({ currentEmail, password, newEmail });
76
76
  }
77
+ async generate2fa({ id }) {
78
+ return this.service.generate2fa(id);
79
+ }
80
+ async verify2fa({ id }, { secret }) {
81
+ return this.service.verify2fa(id, secret);
82
+ }
77
83
  };
78
84
  exports.AuthController = AuthController;
79
85
  __decorate([
@@ -155,6 +161,21 @@ __decorate([
155
161
  __metadata("design:paramtypes", [email_dto_1.EmailDTO]),
156
162
  __metadata("design:returntype", Promise)
157
163
  ], AuthController.prototype, "changeEmail", null);
164
+ __decorate([
165
+ (0, common_1.Post)('2fa/generate'),
166
+ __param(0, (0, core_1.User)()),
167
+ __metadata("design:type", Function),
168
+ __metadata("design:paramtypes", [Object]),
169
+ __metadata("design:returntype", Promise)
170
+ ], AuthController.prototype, "generate2fa", null);
171
+ __decorate([
172
+ (0, common_1.Post)('2fa/verify'),
173
+ __param(0, (0, core_1.User)()),
174
+ __param(1, (0, common_1.Body)()),
175
+ __metadata("design:type", Function),
176
+ __metadata("design:paramtypes", [Object, Object]),
177
+ __metadata("design:returntype", Promise)
178
+ ], AuthController.prototype, "verify2fa", null);
158
179
  exports.AuthController = AuthController = __decorate([
159
180
  (0, common_1.Controller)('auth'),
160
181
  __param(0, (0, common_1.Inject)((0, common_1.forwardRef)(() => auth_service_1.AuthService))),
@@ -1 +1 @@
1
- {"version":3,"file":"auth.controller.js","sourceRoot":"","sources":["../../src/auth/auth.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.controller.js","sourceRoot":"","sources":["../../src/auth/auth.controller.ts"],"names":[],"mappings":"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"}
@@ -74,5 +74,13 @@ export declare class AuthService {
74
74
  email: string;
75
75
  password: string;
76
76
  }>;
77
+ generate2fa(userId: number): Promise<{
78
+ qrCode: any;
79
+ secret: any;
80
+ }>;
81
+ create2faRecoveryCodes(userId: number): Promise<void>;
82
+ verify2fa(userId: number, secret: string): Promise<{
83
+ token: string;
84
+ }>;
77
85
  }
78
86
  //# sourceMappingURL=auth.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../src/auth/auth.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAS/C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AASzC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,qBACa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAEpB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBANJ,aAAa,EAAE,aAAa,EAE5B,MAAM,EAAE,aAAa,EAErB,GAAG,EAAE,UAAU,EAEf,IAAI,EAAE,WAAW;IAG9B,eAAe,CAAC,IAAI,EAAE,MAAM;;;;;IAyB5B,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,WAAW;;;IA2BrE,UAAU,CAAC,EACf,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,MAAM,EACN,UAAU,EACV,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,WAAW,GACZ,EAAE,aAAa;;;IA+EV,WAAW,CAAC,KAAK,EAAE,MAAM;IAM/B,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAW5C,oBAAoB,IAAI,MAAM;IAMxB,yBAAyB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;;;;;;IAkDzD,QAAQ,CAAC,IAAI,KAAA;;;IAUb,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS;;;IA0C3B,cAAc,CAAC,EACnB,KAAK,EACL,eAAe,EACf,WAAW,EACX,kBAAkB,GACnB,EAAE,SAAS;;;IAkCN,WAAW,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,QAAQ;;;IAyD1D,aAAa,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,QAAQ;;;IAgDjE,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM;;;IA0B3B,KAAK,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,QAAQ;;;;;;;;IAInC,MAAM,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;CAKxB"}
1
+ {"version":3,"file":"auth.service.d.ts","sourceRoot":"","sources":["../../src/auth/auth.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAS/C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAWzC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAG3C,qBACa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAE9B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAEvB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAEpB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBANJ,aAAa,EAAE,aAAa,EAE5B,MAAM,EAAE,aAAa,EAErB,GAAG,EAAE,UAAU,EAEf,IAAI,EAAE,WAAW;IAG9B,eAAe,CAAC,IAAI,EAAE,MAAM;;;;;IAyB5B,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,WAAW;;;IA2BrE,UAAU,CAAC,EACf,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,MAAM,EACN,UAAU,EACV,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,WAAW,GACZ,EAAE,aAAa;;;IA+EV,WAAW,CAAC,KAAK,EAAE,MAAM;IAM/B,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAW5C,oBAAoB,IAAI,MAAM;IAMxB,yBAAyB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;;;;;;;;IAkDzD,QAAQ,CAAC,IAAI,KAAA;;;IAUb,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS;;;IA0C3B,cAAc,CAAC,EACnB,KAAK,EACL,eAAe,EACf,WAAW,EACX,kBAAkB,GACnB,EAAE,SAAS;;;IAkCN,WAAW,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,QAAQ;;;IAyD1D,aAAa,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,QAAQ;;;IAgDjE,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM;;;IA0B3B,KAAK,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,QAAQ;;;;;;;;IAInC,MAAM,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;IAMjB,WAAW,CAAC,MAAM,EAAE,MAAM;;;;IA4B1B,sBAAsB,CAAC,MAAM,EAAE,MAAM;IAErC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;;;CAgC/C"}
@@ -1,10 +1,43 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
2
18
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
19
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
20
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
21
  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
22
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
23
  };
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
8
41
  var __metadata = (this && this.__metadata) || function (k, v) {
9
42
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
43
  };
@@ -19,6 +52,8 @@ const common_1 = require("@nestjs/common");
19
52
  const config_1 = require("@nestjs/config");
20
53
  const jwt_1 = require("@nestjs/jwt");
21
54
  const bcrypt_1 = require("bcrypt");
55
+ const qrcode = __importStar(require("qrcode"));
56
+ const speakeasy = __importStar(require("speakeasy"));
22
57
  const emails_1 = require("../emails");
23
58
  const multifactor_type_enum_1 = require("./enums/multifactor-type.enum");
24
59
  let AuthService = class AuthService {
@@ -386,6 +421,56 @@ let AuthService = class AuthService {
386
421
  where: { id },
387
422
  });
388
423
  }
424
+ async generate2fa(userId) {
425
+ const user = await this.prisma.user.findFirst({
426
+ where: {
427
+ id: userId,
428
+ },
429
+ select: {
430
+ email: true,
431
+ },
432
+ });
433
+ const issuer = 'Hedhog';
434
+ const appName = `${issuer} (${user.email})`;
435
+ const secret = speakeasy.generateSecret({
436
+ name: appName,
437
+ });
438
+ const otpauth = speakeasy.otpauthURL({
439
+ secret: secret.base32,
440
+ label: appName,
441
+ issuer,
442
+ });
443
+ const qrCode = await qrcode.toDataURL(otpauth);
444
+ return { qrCode, secret: secret.base32 };
445
+ }
446
+ async create2faRecoveryCodes(userId) { }
447
+ async verify2fa(userId, secret) {
448
+ const user = await this.prisma.user.findFirst({
449
+ where: {
450
+ id: userId,
451
+ },
452
+ });
453
+ if (!user) {
454
+ throw new common_1.NotFoundException('Usuário não encontrado');
455
+ }
456
+ const isValid = await speakeasy.totp.verify({
457
+ secret,
458
+ encoding: 'base32',
459
+ });
460
+ if (!isValid) {
461
+ throw new common_1.BadRequestException('Código inválido');
462
+ }
463
+ await this.prisma.user.update({
464
+ where: {
465
+ id: userId,
466
+ },
467
+ data: {
468
+ multifactor_id: multifactor_type_enum_1.MultifactorType.APP,
469
+ code: secret,
470
+ },
471
+ });
472
+ return this.getToken(user);
473
+ }
389
474
  };
390
475
  exports.AuthService = AuthService;
391
476
  exports.AuthService = AuthService = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../src/auth/auth.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../src/auth/auth.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ columns:
2
+ - type: pk
3
+ - name: user_id
4
+ type: fk
5
+ isNullable: true
6
+ references:
7
+ table: user
8
+ column: id
9
+ onDelete: CASCADE
10
+ - name: code
11
+ - type: created_at
12
+ - type: updated_at
13
+ ifNotExists: true
package/hedhog.yaml CHANGED
@@ -404,6 +404,58 @@ data:
404
404
  - where:
405
405
  slug: admin
406
406
  setting_group:
407
+ - slug: general
408
+ icon: settings
409
+ name:
410
+ en: General
411
+ pt: Geral
412
+ description:
413
+ en: General settings and configurations.
414
+ pt: Configurações e definições gerais.
415
+ relations:
416
+ setting:
417
+ - slug: url
418
+ type: string
419
+ name:
420
+ en: Base URL
421
+ pt: URL Base
422
+ description:
423
+ en: The base URL of the system
424
+ pt: A URL base do sistema
425
+ value: http://localhost:3200
426
+ user_override: false
427
+ - slug: localization
428
+ icon: world
429
+ name:
430
+ en: Localization
431
+ pt: Localização
432
+ description:
433
+ en: Configure the localization setting.
434
+ pt: Configurar as definições de localização.
435
+ relations:
436
+ setting:
437
+ - slug: language
438
+ type: string
439
+ name:
440
+ en: Default Language
441
+ pt: Idioma Padrão
442
+ description:
443
+ en: The system default language, each user can have their own preferred language
444
+ pt:
445
+ O idioma padrão do sistema, cada usuário pode ter o seu próprio idioma
446
+ preferido
447
+ value: en
448
+ user_override: true
449
+ - slug: timezone
450
+ type: string
451
+ name:
452
+ en: Timezone
453
+ pt: Fuso Horário
454
+ description:
455
+ en: The timezone to use
456
+ pt: O fuso horário a utilizar
457
+ value: UTC
458
+ user_override: true
407
459
  - slug: oauth
408
460
  icon: brand-auth0
409
461
  name:
@@ -422,7 +474,7 @@ data:
422
474
  description:
423
475
  en: The client ID for Google OAuth
424
476
  pt: O ID do cliente para o OAuth do Google
425
- value: null
477
+ value: ''
426
478
  user_override: false
427
479
  - slug: google_client_secret
428
480
  type: string
@@ -432,7 +484,7 @@ data:
432
484
  description:
433
485
  en: The client secret for Google OAuth
434
486
  pt: O segredo do cliente para o OAuth do Google
435
- value: null
487
+ value: ''
436
488
  user_override: false
437
489
  - slug: google_scopes
438
490
  type: array
@@ -452,7 +504,7 @@ data:
452
504
  description:
453
505
  en: The client ID for Facebook OAuth
454
506
  pt: O ID do cliente para o OAuth do Facebook
455
- value: null
507
+ value: ''
456
508
  user_override: false
457
509
  - slug: facebook_client_secret
458
510
  type: string
@@ -462,7 +514,7 @@ data:
462
514
  description:
463
515
  en: The client secret for Facebook OAuth
464
516
  pt: O segredo do cliente para o OAuth do Facebook
465
- value: null
517
+ value: ''
466
518
  user_override: false
467
519
  - slug: facebook_scopes
468
520
  type: array
@@ -474,58 +526,6 @@ data:
474
526
  pt: Os escopos para o OAuth do Facebook
475
527
  value: id,emails,name,displayName,photos
476
528
  user_override: false
477
- - slug: general
478
- icon: settings
479
- name:
480
- en: General
481
- pt: Geral
482
- description:
483
- en: General settings and configurations.
484
- pt: Configurações e definições gerais.
485
- relations:
486
- setting:
487
- - slug: url
488
- type: string
489
- name:
490
- en: Base URL
491
- pt: URL Base
492
- description:
493
- en: The base URL of the system
494
- pt: A URL base do sistema
495
- value: http://localhost:3200
496
- user_override: false
497
- - slug: localization
498
- icon: world
499
- name:
500
- en: Localization
501
- pt: Localização
502
- description:
503
- en: Configure the localization setting.
504
- pt: Configurar as definições de localização.
505
- relations:
506
- setting:
507
- - slug: language
508
- type: string
509
- name:
510
- en: Default Language
511
- pt: Idioma Padrão
512
- description:
513
- en: The system default language, each user can have their own preferred language
514
- pt:
515
- O idioma padrão do sistema, cada usuário pode ter o seu próprio idioma
516
- preferido
517
- value: en
518
- user_override: true
519
- - slug: timezone
520
- type: string
521
- name:
522
- en: Timezone
523
- pt: Fuso Horário
524
- description:
525
- en: The timezone to use
526
- pt: O fuso horário a utilizar
527
- value: UTC
528
- user_override: true
529
529
  menu:
530
530
  - url: /management/setting
531
531
  icon: settings
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hedhog/admin",
3
- "version": "0.51.7",
3
+ "version": "0.51.10",
4
4
  "private": false,
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -33,6 +33,7 @@
33
33
  "@nestjs/config": "^4.0.1",
34
34
  "@nestjs/jwt": "^10.2.0",
35
35
  "@nestjs/mapped-types": "^2.1.0",
36
+ "@types/passport-google-oauth20": "^2.0.16",
36
37
  "ts-node": "^10.9.1",
37
38
  "typescript": "^5.1.3"
38
39
  },
@@ -43,5 +44,12 @@
43
44
  "@hedhog/prisma": "latest",
44
45
  "@hedhog/utils": "latest",
45
46
  "@nestjs/jwt": "^10.2.0"
47
+ },
48
+ "dependencies": {
49
+ "@nestjs/passport": "^11.0.5",
50
+ "passport": "^0.7.0",
51
+ "passport-google-oauth20": "^2.0.0",
52
+ "qrcode": "^1.5.4",
53
+ "speakeasy": "^2.0.0"
46
54
  }
47
55
  }
@@ -114,4 +114,14 @@ export class AuthController {
114
114
  async changeEmail(@Body() { currentEmail, password, newEmail }: EmailDTO) {
115
115
  return this.service.changeEmail({ currentEmail, password, newEmail });
116
116
  }
117
+
118
+ @Post('2fa/generate')
119
+ async generate2fa(@User() { id }) {
120
+ return this.service.generate2fa(id);
121
+ }
122
+
123
+ @Post('2fa/verify')
124
+ async verify2fa(@User() { id }, @Body() { secret }: { secret: string }) {
125
+ return this.service.verify2fa(id, secret);
126
+ }
117
127
  }
@@ -11,6 +11,8 @@ import {
11
11
  import { ConfigService } from '@nestjs/config';
12
12
  import { JwtService } from '@nestjs/jwt';
13
13
  import { compare, genSalt, hash } from 'bcrypt';
14
+ import * as qrcode from 'qrcode';
15
+ import * as speakeasy from 'speakeasy';
14
16
  import {
15
17
  getChangeEmailEmail,
16
18
  getChangePasswordEmail,
@@ -485,4 +487,67 @@ export class AuthService {
485
487
  where: { id },
486
488
  });
487
489
  }
490
+
491
+ async generate2fa(userId: number) {
492
+ const user = await this.prisma.user.findFirst({
493
+ where: {
494
+ id: userId,
495
+ },
496
+ select: {
497
+ email: true,
498
+ },
499
+ });
500
+
501
+ const issuer = 'Hedhog';
502
+ const appName = `${issuer} (${user.email})`;
503
+
504
+ const secret = speakeasy.generateSecret({
505
+ name: appName,
506
+ });
507
+
508
+ const otpauth = speakeasy.otpauthURL({
509
+ secret: secret.base32,
510
+ label: appName,
511
+ issuer,
512
+ });
513
+
514
+ const qrCode = await qrcode.toDataURL(otpauth);
515
+
516
+ return { qrCode, secret: secret.base32 };
517
+ }
518
+
519
+ async create2faRecoveryCodes(userId: number) {}
520
+
521
+ async verify2fa(userId: number, secret: string) {
522
+ const user = await this.prisma.user.findFirst({
523
+ where: {
524
+ id: userId,
525
+ },
526
+ });
527
+
528
+ if (!user) {
529
+ throw new NotFoundException('Usuário não encontrado');
530
+ }
531
+
532
+ const isValid = await speakeasy.totp.verify({
533
+ secret,
534
+ encoding: 'base32',
535
+ });
536
+
537
+ if (!isValid) {
538
+ throw new BadRequestException('Código inválido');
539
+ }
540
+
541
+ await this.prisma.user.update({
542
+ where: {
543
+ id: userId,
544
+ },
545
+ data: {
546
+ multifactor_id: MultifactorType.APP,
547
+ code: secret,
548
+ },
549
+ });
550
+
551
+ return this.getToken(user);
552
+ }
488
553
  }