@ackplus/nest-auth 2.0.0-beta.2 → 2.0.0-beta.20

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 (136) hide show
  1. package/dist/lib/admin-console/admin-console.module.js +1 -1
  2. package/dist/lib/admin-console/admin-console.module.js.map +1 -1
  3. package/dist/lib/admin-console/controllers/admin-auth.controller.d.ts +3 -3
  4. package/dist/lib/admin-console/controllers/admin-auth.controller.d.ts.map +1 -1
  5. package/dist/lib/admin-console/controllers/admin-auth.controller.js +11 -11
  6. package/dist/lib/admin-console/controllers/admin-auth.controller.js.map +1 -1
  7. package/dist/lib/admin-console/controllers/admin-users.controller.d.ts +13 -17
  8. package/dist/lib/admin-console/controllers/admin-users.controller.d.ts.map +1 -1
  9. package/dist/lib/admin-console/controllers/admin-users.controller.js +15 -14
  10. package/dist/lib/admin-console/controllers/admin-users.controller.js.map +1 -1
  11. package/dist/lib/admin-console/dto/admin-user.dto.d.ts +4 -2
  12. package/dist/lib/admin-console/dto/admin-user.dto.d.ts.map +1 -1
  13. package/dist/lib/admin-console/dto/admin-user.dto.js +16 -8
  14. package/dist/lib/admin-console/dto/admin-user.dto.js.map +1 -1
  15. package/dist/lib/admin-console/services/admin-auth.service.d.ts.map +1 -1
  16. package/dist/lib/admin-console/services/admin-auth.service.js +1 -3
  17. package/dist/lib/admin-console/services/admin-auth.service.js.map +1 -1
  18. package/dist/lib/admin-console/services/admin-user-management.service.d.ts +1 -1
  19. package/dist/lib/admin-console/services/admin-user-management.service.d.ts.map +1 -1
  20. package/dist/lib/admin-console/services/admin-user-management.service.js +1 -1
  21. package/dist/lib/admin-console/services/admin-user-management.service.js.map +1 -1
  22. package/dist/lib/admin-console/static/index.html +224 -224
  23. package/dist/lib/admin-console/static/nest-auth.json +93 -92
  24. package/dist/lib/auth/controllers/auth.controller.d.ts +3 -2
  25. package/dist/lib/auth/controllers/auth.controller.d.ts.map +1 -1
  26. package/dist/lib/auth/controllers/auth.controller.js +21 -1
  27. package/dist/lib/auth/controllers/auth.controller.js.map +1 -1
  28. package/dist/lib/auth/dto/responses/auth.response.dto.d.ts +3 -5
  29. package/dist/lib/auth/dto/responses/auth.response.dto.d.ts.map +1 -1
  30. package/dist/lib/auth/dto/responses/auth.response.dto.js +11 -27
  31. package/dist/lib/auth/dto/responses/auth.response.dto.js.map +1 -1
  32. package/dist/lib/auth/entities/otp.entity.d.ts +2 -1
  33. package/dist/lib/auth/entities/otp.entity.d.ts.map +1 -1
  34. package/dist/lib/auth/entities/otp.entity.js +13 -9
  35. package/dist/lib/auth/entities/otp.entity.js.map +1 -1
  36. package/dist/lib/auth/events/user-logged-in.event.d.ts +3 -1
  37. package/dist/lib/auth/events/user-logged-in.event.d.ts.map +1 -1
  38. package/dist/lib/auth/events/user-logged-in.event.js.map +1 -1
  39. package/dist/lib/auth/events/user-registered.event.d.ts +2 -1
  40. package/dist/lib/auth/events/user-registered.event.d.ts.map +1 -1
  41. package/dist/lib/auth/events/user-registered.event.js.map +1 -1
  42. package/dist/lib/auth/services/auth.service.d.ts +11 -5
  43. package/dist/lib/auth/services/auth.service.d.ts.map +1 -1
  44. package/dist/lib/auth/services/auth.service.js +202 -140
  45. package/dist/lib/auth/services/auth.service.js.map +1 -1
  46. package/dist/lib/auth/services/verification.service.d.ts.map +1 -1
  47. package/dist/lib/auth/services/verification.service.js +0 -4
  48. package/dist/lib/auth/services/verification.service.js.map +1 -1
  49. package/dist/lib/core/entities.d.ts +5 -3
  50. package/dist/lib/core/entities.d.ts.map +1 -1
  51. package/dist/lib/core/entities.js +5 -2
  52. package/dist/lib/core/entities.js.map +1 -1
  53. package/dist/lib/core/interfaces/auth-module-options.interface.d.ts +18 -3
  54. package/dist/lib/core/interfaces/auth-module-options.interface.d.ts.map +1 -1
  55. package/dist/lib/core/interfaces/token-payload.interface.d.ts +3 -1
  56. package/dist/lib/core/interfaces/token-payload.interface.d.ts.map +1 -1
  57. package/dist/lib/core/providers/jwt-auth.provider.d.ts +2 -1
  58. package/dist/lib/core/providers/jwt-auth.provider.d.ts.map +1 -1
  59. package/dist/lib/core/providers/passwordless-auth.provider.d.ts +2 -1
  60. package/dist/lib/core/providers/passwordless-auth.provider.d.ts.map +1 -1
  61. package/dist/lib/core/providers/passwordless-auth.provider.js +1 -0
  62. package/dist/lib/core/providers/passwordless-auth.provider.js.map +1 -1
  63. package/dist/lib/core/services/auth-config.service.d.ts.map +1 -1
  64. package/dist/lib/core/services/auth-config.service.js +6 -0
  65. package/dist/lib/core/services/auth-config.service.js.map +1 -1
  66. package/dist/lib/request-context/request-context.d.ts +1 -1
  67. package/dist/lib/request-context/request-context.d.ts.map +1 -1
  68. package/dist/lib/request-context/request-context.js +1 -1
  69. package/dist/lib/request-context/request-context.js.map +1 -1
  70. package/dist/lib/role/entities/role.entity.d.ts +3 -1
  71. package/dist/lib/role/entities/role.entity.d.ts.map +1 -1
  72. package/dist/lib/role/entities/role.entity.js +7 -1
  73. package/dist/lib/role/entities/role.entity.js.map +1 -1
  74. package/dist/lib/role/services/role.service.d.ts.map +1 -1
  75. package/dist/lib/role/services/role.service.js +13 -37
  76. package/dist/lib/role/services/role.service.js.map +1 -1
  77. package/dist/lib/role/utils/access-role-resolver.util.d.ts +20 -0
  78. package/dist/lib/role/utils/access-role-resolver.util.d.ts.map +1 -0
  79. package/dist/lib/role/utils/access-role-resolver.util.js +63 -0
  80. package/dist/lib/role/utils/access-role-resolver.util.js.map +1 -0
  81. package/dist/lib/session/services/session-manager.service.d.ts +5 -1
  82. package/dist/lib/session/services/session-manager.service.d.ts.map +1 -1
  83. package/dist/lib/session/services/session-manager.service.js +17 -5
  84. package/dist/lib/session/services/session-manager.service.js.map +1 -1
  85. package/dist/lib/tenant/entities/tenant.entity.d.ts +1 -1
  86. package/dist/lib/tenant/entities/tenant.entity.d.ts.map +1 -1
  87. package/dist/lib/tenant/entities/tenant.entity.js +1 -1
  88. package/dist/lib/tenant/entities/tenant.entity.js.map +1 -1
  89. package/dist/lib/tenant/index.d.ts +1 -1
  90. package/dist/lib/tenant/index.d.ts.map +1 -1
  91. package/dist/lib/tenant/index.js +1 -1
  92. package/dist/lib/tenant/index.js.map +1 -1
  93. package/dist/lib/tenant/services/tenant.service.d.ts +1 -0
  94. package/dist/lib/tenant/services/tenant.service.d.ts.map +1 -1
  95. package/dist/lib/tenant/services/tenant.service.js +5 -0
  96. package/dist/lib/tenant/services/tenant.service.js.map +1 -1
  97. package/dist/lib/tenant/tenant-context/services/base-tenant-context.service.d.ts +1 -1
  98. package/dist/lib/tenant/tenant-context/services/base-tenant-context.service.d.ts.map +1 -1
  99. package/dist/lib/tenant/tenant-context/services/disabled-tenant-context.service.d.ts +1 -1
  100. package/dist/lib/tenant/tenant-context/services/disabled-tenant-context.service.d.ts.map +1 -1
  101. package/dist/lib/tenant/tenant-context/tenant-context.interface.d.ts +1 -1
  102. package/dist/lib/tenant/tenant-context/tenant-context.interface.d.ts.map +1 -1
  103. package/dist/lib/user/entities/platform-access.entity.d.ts +16 -0
  104. package/dist/lib/user/entities/platform-access.entity.d.ts.map +1 -0
  105. package/dist/lib/user/entities/platform-access.entity.js +89 -0
  106. package/dist/lib/user/entities/platform-access.entity.js.map +1 -0
  107. package/dist/lib/{tenant → user}/entities/user-access.entity.d.ts +5 -2
  108. package/dist/lib/user/entities/user-access.entity.d.ts.map +1 -0
  109. package/dist/lib/{tenant → user}/entities/user-access.entity.js +29 -4
  110. package/dist/lib/user/entities/user-access.entity.js.map +1 -0
  111. package/dist/lib/user/entities/user.entity.d.ts +5 -7
  112. package/dist/lib/user/entities/user.entity.d.ts.map +1 -1
  113. package/dist/lib/user/entities/user.entity.js +48 -48
  114. package/dist/lib/user/entities/user.entity.js.map +1 -1
  115. package/dist/lib/user/services/user.service.d.ts +1 -2
  116. package/dist/lib/user/services/user.service.d.ts.map +1 -1
  117. package/dist/lib/user/services/user.service.js +16 -59
  118. package/dist/lib/user/services/user.service.js.map +1 -1
  119. package/dist/lib/user/user.module.d.ts.map +1 -1
  120. package/dist/lib/user/user.module.js +3 -2
  121. package/dist/lib/user/user.module.js.map +1 -1
  122. package/dist/lib/utils/has-token.d.ts +0 -1
  123. package/dist/lib/utils/has-token.d.ts.map +1 -1
  124. package/dist/lib/utils/has-token.js +1 -2
  125. package/dist/lib/utils/has-token.js.map +1 -1
  126. package/dist/lib/utils/index.d.ts +1 -0
  127. package/dist/lib/utils/index.d.ts.map +1 -1
  128. package/dist/lib/utils/index.js +1 -0
  129. package/dist/lib/utils/index.js.map +1 -1
  130. package/dist/lib/utils/tenant.d.ts +3 -0
  131. package/dist/lib/utils/tenant.d.ts.map +1 -0
  132. package/dist/lib/utils/tenant.js +21 -0
  133. package/dist/lib/utils/tenant.js.map +1 -0
  134. package/package.json +2 -2
  135. package/dist/lib/tenant/entities/user-access.entity.d.ts.map +0 -1
  136. package/dist/lib/tenant/entities/user-access.entity.js.map +0 -1
@@ -0,0 +1,16 @@
1
+ import { BaseEntity } from 'typeorm';
2
+ import { NestAuthUser } from './user.entity';
3
+ import { NestAuthRole } from '../../role/entities/role.entity';
4
+ export declare class NestAuthPlatformAccess extends BaseEntity {
5
+ id: string;
6
+ userId: string;
7
+ user: NestAuthUser;
8
+ roles: NestAuthRole[];
9
+ isActive: boolean;
10
+ createdAt: Date;
11
+ updatedAt: Date;
12
+ getPermissions(): Promise<string[]>;
13
+ getRoles(withPermissions?: boolean): Promise<NestAuthRole[]>;
14
+ assignRoles(roleIds: string | string[]): Promise<void>;
15
+ }
16
+ //# sourceMappingURL=platform-access.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-access.entity.d.ts","sourceRoot":"","sources":["../../../../src/lib/user/entities/platform-access.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAUH,UAAU,EAGb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAI/D,qBACa,sBAAuB,SAAQ,UAAU;IAElD,EAAE,EAAE,MAAM,CAAC;IAKX,MAAM,EAAE,MAAM,CAAC;IAGf,IAAI,EAAE,YAAY,CAAC;IASnB,KAAK,EAAE,YAAY,EAAE,CAAC;IAGtB,QAAQ,EAAE,OAAO,CAAC;IAGlB,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;IAGV,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IASnC,QAAQ,CAAC,eAAe,UAAQ,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAU1D,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAO/D"}
@@ -0,0 +1,89 @@
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
+ var NestAuthPlatformAccess_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.NestAuthPlatformAccess = void 0;
14
+ const typeorm_1 = require("typeorm");
15
+ const user_entity_1 = require("./user.entity");
16
+ const role_entity_1 = require("../../role/entities/role.entity");
17
+ const lodash_1 = require("lodash");
18
+ const role_mapper_util_1 = require("../../role/utils/role-mapper.util");
19
+ let NestAuthPlatformAccess = NestAuthPlatformAccess_1 = class NestAuthPlatformAccess extends typeorm_1.BaseEntity {
20
+ id;
21
+ userId;
22
+ user;
23
+ roles;
24
+ isActive;
25
+ createdAt;
26
+ updatedAt;
27
+ async getPermissions() {
28
+ const roles = await this.getRoles(true);
29
+ return (0, lodash_1.chain)(roles)
30
+ .map((role) => (0, role_mapper_util_1.getRolePermissionNames)(role))
31
+ .flatten()
32
+ .uniq()
33
+ .value();
34
+ }
35
+ async getRoles(withPermissions = false) {
36
+ const access = await NestAuthPlatformAccess_1.findOne({
37
+ where: { userId: this.userId, isActive: true },
38
+ relations: ['roles', ...(withPermissions ? ['roles.rolePermissions', 'roles.rolePermissions.permission'] : [])],
39
+ });
40
+ return access?.roles?.length ? access.roles : [];
41
+ }
42
+ async assignRoles(roleIds) {
43
+ const ids = Array.isArray(roleIds) ? roleIds : [roleIds];
44
+ this.roles = ids.length
45
+ ? await role_entity_1.NestAuthRole.find({ where: { id: (0, typeorm_1.In)(ids) } })
46
+ : [];
47
+ await this.save();
48
+ }
49
+ };
50
+ exports.NestAuthPlatformAccess = NestAuthPlatformAccess;
51
+ __decorate([
52
+ (0, typeorm_1.PrimaryGeneratedColumn)('uuid'),
53
+ __metadata("design:type", String)
54
+ ], NestAuthPlatformAccess.prototype, "id", void 0);
55
+ __decorate([
56
+ (0, typeorm_1.Column)({ nullable: false }),
57
+ (0, typeorm_1.Index)(),
58
+ (0, typeorm_1.RelationId)((access) => access.user),
59
+ __metadata("design:type", String)
60
+ ], NestAuthPlatformAccess.prototype, "userId", void 0);
61
+ __decorate([
62
+ (0, typeorm_1.OneToOne)(() => user_entity_1.NestAuthUser, { onDelete: 'CASCADE' }),
63
+ __metadata("design:type", user_entity_1.NestAuthUser)
64
+ ], NestAuthPlatformAccess.prototype, "user", void 0);
65
+ __decorate([
66
+ (0, typeorm_1.ManyToMany)(() => role_entity_1.NestAuthRole, role => role.platformAccesses, { onDelete: 'CASCADE' }),
67
+ (0, typeorm_1.JoinTable)({
68
+ name: 'nest_auth_platform_access_roles',
69
+ joinColumn: { name: 'nestAuthPlatformAccessId', referencedColumnName: 'id' },
70
+ inverseJoinColumn: { name: 'nestAuthRolesId', referencedColumnName: 'id' },
71
+ }),
72
+ __metadata("design:type", Array)
73
+ ], NestAuthPlatformAccess.prototype, "roles", void 0);
74
+ __decorate([
75
+ (0, typeorm_1.Column)({ default: true }),
76
+ __metadata("design:type", Boolean)
77
+ ], NestAuthPlatformAccess.prototype, "isActive", void 0);
78
+ __decorate([
79
+ (0, typeorm_1.CreateDateColumn)(),
80
+ __metadata("design:type", Date)
81
+ ], NestAuthPlatformAccess.prototype, "createdAt", void 0);
82
+ __decorate([
83
+ (0, typeorm_1.UpdateDateColumn)(),
84
+ __metadata("design:type", Date)
85
+ ], NestAuthPlatformAccess.prototype, "updatedAt", void 0);
86
+ exports.NestAuthPlatformAccess = NestAuthPlatformAccess = NestAuthPlatformAccess_1 = __decorate([
87
+ (0, typeorm_1.Entity)('nest_auth_platform_accesses')
88
+ ], NestAuthPlatformAccess);
89
+ //# sourceMappingURL=platform-access.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-access.entity.js","sourceRoot":"","sources":["../../../../src/lib/user/entities/platform-access.entity.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { BaseEntity } from 'typeorm';
2
- import { NestAuthTenant } from './tenant.entity';
3
- import { NestAuthUser } from '../../user/entities/user.entity';
2
+ import { NestAuthTenant } from '../../tenant/entities/tenant.entity';
3
+ import { NestAuthUser } from './user.entity';
4
4
  import { NestAuthRole } from '../../role/entities/role.entity';
5
5
  export declare class NestAuthUserAccess extends BaseEntity {
6
6
  id: string;
@@ -15,5 +15,8 @@ export declare class NestAuthUserAccess extends BaseEntity {
15
15
  metadata?: Record<string, any>;
16
16
  createdAt: Date;
17
17
  updatedAt: Date;
18
+ getPermissions(tenantId: string | null): Promise<string[]>;
19
+ getRoles(tenantId?: string | null, withPermissions?: boolean): Promise<NestAuthRole[]>;
20
+ assignRoles(roleIds: string | string[]): Promise<void>;
18
21
  }
19
22
  //# sourceMappingURL=user-access.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-access.entity.d.ts","sourceRoot":"","sources":["../../../../src/lib/user/entities/user-access.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAWH,UAAU,EAIb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAI/D,qBASa,kBAAmB,SAAQ,UAAU;IAE9C,EAAE,EAAE,MAAM,CAAC;IAKX,MAAM,EAAE,MAAM,CAAC;IAKf,QAAQ,EAAE,MAAM,CAAC;IAGjB,IAAI,EAAE,YAAY,CAAC;IAGnB,MAAM,EAAE,cAAc,CAAC;IASvB,KAAK,EAAE,YAAY,EAAE,CAAC;IAGtB,QAAQ,EAAE,OAAO,CAAC;IAGlB,SAAS,EAAE,OAAO,CAAC;IAGnB,MAAM,EAAE,MAAM,CAAC;IAGf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAG/B,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;IAEV,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAS1D,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,eAAe,UAAQ,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAUpF,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAQ/D"}
@@ -8,13 +8,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
+ var NestAuthUserAccess_1;
11
12
  Object.defineProperty(exports, "__esModule", { value: true });
12
13
  exports.NestAuthUserAccess = void 0;
13
14
  const typeorm_1 = require("typeorm");
14
- const tenant_entity_1 = require("./tenant.entity");
15
- const user_entity_1 = require("../../user/entities/user.entity");
15
+ const tenant_entity_1 = require("../../tenant/entities/tenant.entity");
16
+ const user_entity_1 = require("./user.entity");
16
17
  const role_entity_1 = require("../../role/entities/role.entity");
17
- let NestAuthUserAccess = class NestAuthUserAccess extends typeorm_1.BaseEntity {
18
+ const lodash_1 = require("lodash");
19
+ const role_mapper_util_1 = require("../../role/utils/role-mapper.util");
20
+ let NestAuthUserAccess = NestAuthUserAccess_1 = class NestAuthUserAccess extends typeorm_1.BaseEntity {
18
21
  id;
19
22
  userId;
20
23
  tenantId;
@@ -27,6 +30,28 @@ let NestAuthUserAccess = class NestAuthUserAccess extends typeorm_1.BaseEntity {
27
30
  metadata;
28
31
  createdAt;
29
32
  updatedAt;
33
+ async getPermissions(tenantId) {
34
+ const roles = await this.getRoles(tenantId, true);
35
+ return (0, lodash_1.chain)(roles)
36
+ .map((role) => (0, role_mapper_util_1.getRolePermissionNames)(role))
37
+ .flatten()
38
+ .uniq()
39
+ .value();
40
+ }
41
+ async getRoles(tenantId, withPermissions = false) {
42
+ const access = await NestAuthUserAccess_1.findOne({
43
+ where: { userId: this.userId, tenantId: tenantId ? (0, typeorm_1.Equal)(tenantId) : (0, typeorm_1.IsNull)() },
44
+ relations: ['roles', ...(withPermissions ? ['roles.rolePermissions', 'roles.rolePermissions.permission'] : [])],
45
+ });
46
+ return access?.roles?.length ? access.roles : [];
47
+ }
48
+ async assignRoles(roleIds) {
49
+ const ids = Array.isArray(roleIds) ? roleIds : [roleIds];
50
+ this.roles = ids.length
51
+ ? await role_entity_1.NestAuthRole.find({ where: { id: (0, typeorm_1.In)(ids) } })
52
+ : [];
53
+ await this.save();
54
+ }
30
55
  };
31
56
  exports.NestAuthUserAccess = NestAuthUserAccess;
32
57
  __decorate([
@@ -86,7 +111,7 @@ __decorate([
86
111
  (0, typeorm_1.UpdateDateColumn)(),
87
112
  __metadata("design:type", Date)
88
113
  ], NestAuthUserAccess.prototype, "updatedAt", void 0);
89
- exports.NestAuthUserAccess = NestAuthUserAccess = __decorate([
114
+ exports.NestAuthUserAccess = NestAuthUserAccess = NestAuthUserAccess_1 = __decorate([
90
115
  (0, typeorm_1.Entity)('nest_auth_user_accesses'),
91
116
  (0, typeorm_1.Index)('UQ_user_tenant_not_null', ['userId', 'tenantId'], {
92
117
  unique: true,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-access.entity.js","sourceRoot":"","sources":["../../../../src/lib/user/entities/user-access.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qCAeiB;AACjB,uEAAqE;AACrE,+CAA6C;AAC7C,iEAA+D;AAC/D,mCAA+B;AAC/B,wEAA2E;AAWpE,IAAM,kBAAkB,0BAAxB,MAAM,kBAAmB,SAAQ,oBAAU;IAE9C,EAAE,CAAS;IAKX,MAAM,CAAS;IAKf,QAAQ,CAAS;IAGjB,IAAI,CAAe;IAGnB,MAAM,CAAiB;IASvB,KAAK,CAAiB;IAGtB,QAAQ,CAAU;IAGlB,SAAS,CAAU;IAGnB,MAAM,CAAS;IAGf,QAAQ,CAAuB;IAG/B,SAAS,CAAO;IAGhB,SAAS,CAAO;IAEhB,KAAK,CAAC,cAAc,CAAC,QAAuB;QACxC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAClD,OAAO,IAAA,cAAK,EAAC,KAAK,CAAC;aACd,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,yCAAsB,EAAC,IAAI,CAAC,CAAC;aAC3C,OAAO,EAAE;aACT,IAAI,EAAE;aACN,KAAK,EAAE,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,QAAwB,EAAE,eAAe,GAAG,KAAK;QAC5D,MAAM,MAAM,GAAG,MAAM,oBAAkB,CAAC,OAAO,CAAC;YAC5C,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAA,eAAK,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAA,gBAAM,GAAE,EAAE;YAC/E,SAAS,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,uBAAuB,EAAE,kCAAkC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SAClH,CAAC,CAAC;QAEH,OAAO,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,CAAC;IAGD,KAAK,CAAC,WAAW,CAAC,OAA0B;QACxC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM;YACnB,CAAC,CAAC,MAAM,0BAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACrD,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;CAEJ,CAAA;AA1EY,gDAAkB;AAE3B;IADC,IAAA,gCAAsB,EAAC,MAAM,CAAC;;8CACpB;AAKX;IAHC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC3B,IAAA,eAAK,GAAE;IACP,IAAA,oBAAU,EAAC,CAAC,MAA0B,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;;kDACzC;AAKf;IAHC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC1B,IAAA,eAAK,GAAE;IACP,IAAA,oBAAU,EAAC,CAAC,MAA0B,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;;oDACzC;AAGjB;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,0BAAY,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;8BACjD,0BAAY;gDAAC;AAGnB;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,8BAAc,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACjE,8BAAc;kDAAC;AASvB;IANC,IAAA,oBAAU,EAAC,GAAG,EAAE,CAAC,0BAAY,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAClF,IAAA,mBAAS,EAAC;QACP,IAAI,EAAE,6BAA6B;QACnC,UAAU,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,IAAI,EAAE;QACxE,iBAAiB,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,IAAI,EAAE;KAC7E,CAAC;;iDACoB;AAGtB;IADC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;oDACR;AAGlB;IADC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;qDACR;AAGnB;IADC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;;kDACf;AAGf;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;oDAChC;AAG/B;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;qDAAC;AAGhB;IADC,IAAA,0BAAgB,GAAE;8BACR,IAAI;qDAAC;6BA7CP,kBAAkB;IAT9B,IAAA,gBAAM,EAAC,yBAAyB,CAAC;IACjC,IAAA,eAAK,EAAC,yBAAyB,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE;QACtD,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,wBAAwB;KAClC,CAAC;IACD,IAAA,eAAK,EAAC,qBAAqB,EAAE,CAAC,QAAQ,CAAC,EAAE;QACtC,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,oBAAoB;KAC9B,CAAC;GACW,kBAAkB,CA0E9B"}
@@ -3,8 +3,8 @@ import { NestAuthIdentity } from "./identity.entity";
3
3
  import { NestAuthSession } from "../../session/entities/session.entity";
4
4
  import { NestAuthOTP } from "../../auth/entities/otp.entity";
5
5
  import { NestAuthMFASecret } from "../../auth/entities/mfa-secret.entity";
6
- import { NestAuthRole } from "../../role/entities/role.entity";
7
- import { NestAuthUserAccess } from "../../tenant/entities/user-access.entity";
6
+ import { NestAuthUserAccess } from "./user-access.entity";
7
+ import { NestAuthPlatformAccess } from "./platform-access.entity";
8
8
  export declare class NestAuthUser extends BaseEntity {
9
9
  id: string;
10
10
  email: string;
@@ -12,7 +12,6 @@ export declare class NestAuthUser extends BaseEntity {
12
12
  phone: string;
13
13
  phoneVerifiedAt: Date;
14
14
  passwordHash: string;
15
- isVerified: boolean;
16
15
  isActive: boolean;
17
16
  metadata?: Record<string, any>;
18
17
  isMfaEnabled: boolean;
@@ -22,13 +21,12 @@ export declare class NestAuthUser extends BaseEntity {
22
21
  sessions: NestAuthSession[];
23
22
  otps: NestAuthOTP[];
24
23
  userAccesses: NestAuthUserAccess[];
24
+ platformAccess: NestAuthPlatformAccess;
25
25
  createdAt: Date;
26
26
  updatedAt: Date;
27
27
  updateTenantFields(): void;
28
- getPermissions(tenantId: string): Promise<string[]>;
29
- getRoles(tenantId?: string | null, withPermissions?: boolean): Promise<NestAuthRole[]>;
30
- assignRoles(roleIds: string | string[], tenantId?: string | null): Promise<void>;
31
- private getOrCreateUserAccess;
28
+ getUserAccess(tenantId?: string, createIfNotExists?: boolean): Promise<NestAuthUserAccess>;
29
+ getPlatformAccess(createIfNotExists?: boolean): Promise<NestAuthPlatformAccess>;
32
30
  findOrCreateIdentity(provider: string, providerId: string): Promise<NestAuthIdentity>;
33
31
  updateOrCreateIdentity(provider: string, data: Partial<NestAuthIdentity>): Promise<NestAuthIdentity>;
34
32
  updateEmail(newEmail: string): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"user.entity.d.ts","sourceRoot":"","sources":["../../../../src/lib/user/entities/user.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAOH,UAAU,EAMb,MAAM,SAAS,CAAC;AAIjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAExE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAK9E,qBACa,YAAa,SAAQ,UAAU;IAExC,EAAE,EAAE,MAAM,CAAC;IAIX,KAAK,EAAE,MAAM,CAAC;IAId,eAAe,EAAE,IAAI,CAAC;IAItB,KAAK,EAAE,MAAM,CAAC;IAId,eAAe,EAAE,IAAI,CAAC;IAGtB,YAAY,EAAE,MAAM,CAAC;IAGrB,UAAU,EAAE,OAAO,CAAC;IAGpB,QAAQ,EAAE,OAAO,CAAC;IAGlB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAG/B,YAAY,EAAE,OAAO,CAAC;IAGtB,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAG/B,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAGhC,QAAQ,EAAE,eAAe,EAAE,CAAC;IAG5B,IAAI,EAAE,WAAW,EAAE,CAAC;IAGpB,YAAY,EAAE,kBAAkB,EAAE,CAAC;IAGnC,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;IAIhB,kBAAkB;IAMZ,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IASnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,eAAe,UAAQ,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAYpF,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YASxE,qBAAqB;IAc7B,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAiBzD,sBAAsB,CACxB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAChC,OAAO,CAAC,gBAAgB,CAAC;IAwBtB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB5C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB/D,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiBpD,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAWrD"}
1
+ {"version":3,"file":"user.entity.d.ts","sourceRoot":"","sources":["../../../../src/lib/user/entities/user.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAOH,UAAU,EAOb,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE,qBACa,YAAa,SAAQ,UAAU;IAExC,EAAE,EAAE,MAAM,CAAC;IAIX,KAAK,EAAE,MAAM,CAAC;IAId,eAAe,EAAE,IAAI,CAAC;IAItB,KAAK,EAAE,MAAM,CAAC;IAId,eAAe,EAAE,IAAI,CAAC;IAGtB,YAAY,EAAE,MAAM,CAAC;IAGrB,QAAQ,EAAE,OAAO,CAAC;IAGlB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAG/B,YAAY,EAAE,OAAO,CAAC;IAGtB,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,UAAU,EAAE,gBAAgB,EAAE,CAAC;IAG/B,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAGhC,QAAQ,EAAE,eAAe,EAAE,CAAC;IAG5B,IAAI,EAAE,WAAW,EAAE,CAAC;IAGpB,YAAY,EAAE,kBAAkB,EAAE,CAAC;IAGnC,cAAc,EAAE,sBAAsB,CAAC;IAGvC,SAAS,EAAE,IAAI,CAAC;IAGhB,SAAS,EAAE,IAAI,CAAC;IAIhB,kBAAkB;IAMZ,aAAa,CAAC,QAAQ,GAAE,MAAa,EAAE,iBAAiB,GAAE,OAAe;IAezE,iBAAiB,CAAC,iBAAiB,GAAE,OAAe;IAepD,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAiBzD,sBAAsB,CACxB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAChC,OAAO,CAAC,gBAAgB,CAAC;IAwBtB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB5C,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB/D,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBpD,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAqBrD"}
@@ -11,19 +11,16 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.NestAuthUser = void 0;
13
13
  const typeorm_1 = require("typeorm");
14
- const typeorm_2 = require("typeorm");
15
14
  const argon2_1 = require("@node-rs/argon2");
16
15
  const auth_config_service_1 = require("../../core/services/auth-config.service");
17
16
  const identity_entity_1 = require("./identity.entity");
18
17
  const session_entity_1 = require("../../session/entities/session.entity");
19
- const lodash_1 = require("lodash");
20
18
  const otp_entity_1 = require("../../auth/entities/otp.entity");
21
19
  const mfa_secret_entity_1 = require("../../auth/entities/mfa-secret.entity");
22
- const role_entity_1 = require("../../role/entities/role.entity");
23
- const user_access_entity_1 = require("../../tenant/entities/user-access.entity");
20
+ const user_access_entity_1 = require("./user-access.entity");
24
21
  const auth_constants_1 = require("../../auth.constants");
25
22
  const utils_1 = require("../../utils");
26
- const role_mapper_util_1 = require("../../role/utils/role-mapper.util");
23
+ const platform_access_entity_1 = require("./platform-access.entity");
27
24
  let NestAuthUser = class NestAuthUser extends typeorm_1.BaseEntity {
28
25
  id;
29
26
  email;
@@ -31,7 +28,6 @@ let NestAuthUser = class NestAuthUser extends typeorm_1.BaseEntity {
31
28
  phone;
32
29
  phoneVerifiedAt;
33
30
  passwordHash;
34
- isVerified;
35
31
  isActive;
36
32
  metadata;
37
33
  isMfaEnabled;
@@ -41,6 +37,7 @@ let NestAuthUser = class NestAuthUser extends typeorm_1.BaseEntity {
41
37
  sessions;
42
38
  otps;
43
39
  userAccesses;
40
+ platformAccess;
44
41
  createdAt;
45
42
  updatedAt;
46
43
  updateTenantFields() {
@@ -48,44 +45,33 @@ let NestAuthUser = class NestAuthUser extends typeorm_1.BaseEntity {
48
45
  this.email = this.email.toLowerCase().trim();
49
46
  }
50
47
  }
51
- async getPermissions(tenantId) {
52
- const roles = await this.getRoles(tenantId, true);
53
- return (0, lodash_1.chain)(roles)
54
- .map((role) => (0, role_mapper_util_1.getRolePermissionNames)(role))
55
- .flatten()
56
- .uniq()
57
- .value();
58
- }
59
- async getRoles(tenantId, withPermissions = false) {
60
- const access = await user_access_entity_1.NestAuthUserAccess.findOne({
61
- where: { userId: this.id, tenantId: tenantId || (0, typeorm_1.IsNull)() },
62
- relations: ['roles', ...(withPermissions ? ['roles.rolePermissions', 'roles.rolePermissions.permission'] : [])],
48
+ async getUserAccess(tenantId = null, createIfNotExists = false) {
49
+ const existingUserAccess = await user_access_entity_1.NestAuthUserAccess.findOne({
50
+ where: { userId: this.id, tenantId: tenantId ? (0, typeorm_1.Equal)(tenantId) : (0, typeorm_1.IsNull)() }
63
51
  });
64
- if (access?.roles?.length) {
65
- return access.roles;
52
+ if (existingUserAccess) {
53
+ return existingUserAccess;
66
54
  }
67
- return [];
68
- }
69
- async assignRoles(roleIds, tenantId) {
70
- const access = await this.getOrCreateUserAccess(tenantId);
71
- const ids = Array.isArray(roleIds) ? roleIds : [roleIds];
72
- access.roles = ids.length
73
- ? await role_entity_1.NestAuthRole.find({ where: { id: (0, typeorm_2.In)(ids) } })
74
- : [];
75
- await access.save();
55
+ if (createIfNotExists) {
56
+ const userAccess = user_access_entity_1.NestAuthUserAccess.create({ userId: this.id, tenantId });
57
+ await userAccess.save();
58
+ return userAccess;
59
+ }
60
+ return null;
76
61
  }
77
- async getOrCreateUserAccess(tenantId) {
78
- let access = await user_access_entity_1.NestAuthUserAccess.findOne({
79
- where: { userId: this.id, tenantId: tenantId || (0, typeorm_1.IsNull)() },
80
- relations: ['roles'],
62
+ async getPlatformAccess(createIfNotExists = false) {
63
+ const existingPlatformAccess = await platform_access_entity_1.NestAuthPlatformAccess.findOne({
64
+ where: { userId: this.id }
81
65
  });
82
- console.log('access', access);
83
- if (!access) {
84
- access = user_access_entity_1.NestAuthUserAccess.create({ userId: this.id, tenantId });
85
- await access.save();
86
- access.roles = [];
66
+ if (existingPlatformAccess) {
67
+ return existingPlatformAccess;
87
68
  }
88
- return access;
69
+ if (createIfNotExists) {
70
+ const platformAccess = platform_access_entity_1.NestAuthPlatformAccess.create({ userId: this.id });
71
+ await platformAccess.save();
72
+ return platformAccess;
73
+ }
74
+ return null;
89
75
  }
90
76
  async findOrCreateIdentity(provider, providerId) {
91
77
  const existingIdentity = await identity_entity_1.NestAuthIdentity.findOne({
@@ -159,7 +145,12 @@ let NestAuthUser = class NestAuthUser extends typeorm_1.BaseEntity {
159
145
  if (!this.passwordHash)
160
146
  return false;
161
147
  const options = auth_config_service_1.AuthConfigService.getOptions();
162
- if (options.password?.verify) {
148
+ const hasCustomHash = !!options.password?.hash;
149
+ const hasCustomVerify = !!options.password?.verify;
150
+ if (hasCustomHash !== hasCustomVerify) {
151
+ throw new Error('password.hash and password.verify must be provided together');
152
+ }
153
+ if (hasCustomVerify) {
163
154
  return await options.password.verify(password, this.passwordHash);
164
155
  }
165
156
  try {
@@ -171,11 +162,20 @@ let NestAuthUser = class NestAuthUser extends typeorm_1.BaseEntity {
171
162
  }
172
163
  async setPassword(password) {
173
164
  const options = auth_config_service_1.AuthConfigService.getOptions();
165
+ const hasCustomHash = !!options.password?.hash;
166
+ const hasCustomVerify = !!options.password?.verify;
167
+ if (hasCustomHash !== hasCustomVerify) {
168
+ throw new Error('password.hash and password.verify must be provided together');
169
+ }
170
+ if (hasCustomHash) {
171
+ this.passwordHash = await options.password.hash(password);
172
+ return;
173
+ }
174
174
  this.passwordHash = await (0, argon2_1.hash)(password, {
175
175
  algorithm: 2,
176
- memoryCost: 65536,
177
- timeCost: 3,
178
- parallelism: 4
176
+ memoryCost: options.password?.argon2?.memoryCost ?? 65536,
177
+ timeCost: options.password?.argon2?.timeCost ?? 3,
178
+ parallelism: options.password?.argon2?.parallelism ?? 4,
179
179
  });
180
180
  }
181
181
  };
@@ -205,13 +205,9 @@ __decorate([
205
205
  __metadata("design:type", Date)
206
206
  ], NestAuthUser.prototype, "phoneVerifiedAt", void 0);
207
207
  __decorate([
208
- (0, typeorm_1.Column)({ nullable: true }),
208
+ (0, typeorm_1.Column)({ nullable: true, select: false }),
209
209
  __metadata("design:type", String)
210
210
  ], NestAuthUser.prototype, "passwordHash", void 0);
211
- __decorate([
212
- (0, typeorm_1.Column)({ default: false }),
213
- __metadata("design:type", Boolean)
214
- ], NestAuthUser.prototype, "isVerified", void 0);
215
211
  __decorate([
216
212
  (0, typeorm_1.Column)({ default: true }),
217
213
  __metadata("design:type", Boolean)
@@ -248,6 +244,10 @@ __decorate([
248
244
  (0, typeorm_1.OneToMany)(() => user_access_entity_1.NestAuthUserAccess, access => access.user),
249
245
  __metadata("design:type", Array)
250
246
  ], NestAuthUser.prototype, "userAccesses", void 0);
247
+ __decorate([
248
+ (0, typeorm_1.OneToOne)(() => platform_access_entity_1.NestAuthPlatformAccess, access => access.user),
249
+ __metadata("design:type", platform_access_entity_1.NestAuthPlatformAccess)
250
+ ], NestAuthUser.prototype, "platformAccess", void 0);
251
251
  __decorate([
252
252
  (0, typeorm_1.CreateDateColumn)(),
253
253
  __metadata("design:type", Date)
@@ -1 +1 @@
1
- {"version":3,"file":"user.entity.js","sourceRoot":"","sources":["../../../../src/lib/user/entities/user.entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user.entity.js","sourceRoot":"","sources":["../../../../src/lib/user/entities/user.entity.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import { EventEmitter2 } from '@nestjs/event-emitter';
4
4
  import { TenantService } from '../../tenant';
5
5
  import { DebugLoggerService } from '../../core/services/debug-logger.service';
6
6
  import { AuthConfigService } from '../../core/services/auth-config.service';
7
- import { NestAuthUserAccess } from '../../tenant/entities/user-access.entity';
7
+ import { NestAuthUserAccess } from '../entities/user-access.entity';
8
8
  import { NestAuthTenant } from '../../tenant/entities/tenant.entity';
9
9
  export declare class UserService {
10
10
  private readonly userRepository;
@@ -19,7 +19,6 @@ export declare class UserService {
19
19
  getUserByEmail(email: string, tenantId?: string, options?: FindOneOptions<NestAuthUser>): Promise<NestAuthUser>;
20
20
  getUserByPhone(phone: string, tenantId?: string, options?: FindOneOptions<NestAuthUser>): Promise<NestAuthUser>;
21
21
  getUsers(options?: FindManyOptions<NestAuthUser>): Promise<NestAuthUser[]>;
22
- getUsersByTenant(tenantId: string, options?: FindManyOptions<NestAuthUser>): Promise<NestAuthUser[]>;
23
22
  updateUser(id: string, data: Partial<NestAuthUser>): Promise<NestAuthUser>;
24
23
  ensureUserAccess(userId: string, tenantId: string): Promise<NestAuthUserAccess>;
25
24
  isUserInTenant(userId: string, tenantId: string): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"user.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/user/services/user.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAW,UAAU,EAAE,MAAM,SAAS,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAKtD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAKrE,qBACa,WAAW;IAGhB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,oBAAoB;IACrC,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW;gBANX,cAAc,EAAE,UAAU,CAAC,YAAY,CAAC,EAExC,oBAAoB,EAAE,UAAU,CAAC,kBAAkB,CAAC,EACpD,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,aAAa,EAC3B,iBAAiB,EAAE,iBAAiB,EACpC,WAAW,EAAE,kBAAkB;IAG9C,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC;IAkGhG,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IAsBtF,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IAyB/G,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IA0B/G,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAI1E,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAepG,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IA8F1E,gBAAgB,CAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAqBxB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAiBlE,kBAAkB,CACpB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EAAE,GAClB,OAAO,CAAC,kBAAkB,CAAC;IAiBxB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAgBzD,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAajE,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmCrC,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAqB5F,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAwB9F,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC;IA0BtE,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC;IA8BpF,UAAU,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAIpE,gBAAgB,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE,MAAM,CAAC,CAAC;IAI5F,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CAoBpG"}
1
+ {"version":3,"file":"user.service.d.ts","sourceRoot":"","sources":["../../../../src/lib/user/services/user.service.ts"],"names":[],"mappings":"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"}