@skyapp-labs/blueprint-backend-core 1.3.1 → 1.4.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.
- package/CHANGELOG.md +3 -3
- package/dist/common/interfaces/request-user.interface.d.ts +6 -0
- package/dist/common/interfaces/request-user.interface.d.ts.map +1 -1
- package/dist/modules/auth/auth-core/strategies/jwt.strategy.d.ts +2 -4
- package/dist/modules/auth/auth-core/strategies/jwt.strategy.d.ts.map +1 -1
- package/dist/modules/auth/auth-core/strategies/jwt.strategy.js +10 -1
- package/dist/modules/auth/auth-core/strategies/jwt.strategy.js.map +1 -1
- package/dist/modules/auth/dto/token.dto.d.ts +6 -0
- package/dist/modules/auth/dto/token.dto.d.ts.map +1 -1
- package/dist/modules/roles/services/user-roles.service.d.ts +10 -0
- package/dist/modules/roles/services/user-roles.service.d.ts.map +1 -1
- package/dist/modules/roles/services/user-roles.service.js +23 -4
- package/dist/modules/roles/services/user-roles.service.js.map +1 -1
- package/dist/modules/sessions/services/token.service.d.ts +2 -0
- package/dist/modules/sessions/services/token.service.d.ts.map +1 -1
- package/dist/modules/sessions/services/token.service.js +31 -23
- package/dist/modules/sessions/services/token.service.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
# [1.4.0](https://github.com/Skyapp-Labs/blueprint-backend-core/compare/v1.3.1...v1.4.0) (2026-05-19)
|
|
2
2
|
|
|
3
3
|
|
|
4
|
-
###
|
|
4
|
+
### Features
|
|
5
5
|
|
|
6
|
-
*
|
|
6
|
+
* enhance JWT payload structure to include user profile details and permissions ([d7c8464](https://github.com/Skyapp-Labs/blueprint-backend-core/commit/d7c846430fa74e731f7b78fffdd91fbd43150caf))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-user.interface.d.ts","sourceRoot":"","sources":["../../../common/interfaces/request-user.interface.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"request-user.interface.d.ts","sourceRoot":"","sources":["../../../common/interfaces/request-user.interface.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,EAAE,CAAC;CAChB"}
|
|
@@ -2,6 +2,7 @@ import { Strategy } from 'passport-jwt';
|
|
|
2
2
|
import { ConfigService } from '@nestjs/config';
|
|
3
3
|
import IORedis from 'ioredis';
|
|
4
4
|
import { JwtPayload } from '../../dto/token.dto';
|
|
5
|
+
import { RequestUser } from '../../../../common/interfaces/request-user.interface';
|
|
5
6
|
declare const JwtStrategy_base: new (...args: [opt: import("passport-jwt").StrategyOptionsWithRequest] | [opt: import("passport-jwt").StrategyOptionsWithoutRequest]) => Strategy & {
|
|
6
7
|
validate(...args: any[]): unknown;
|
|
7
8
|
};
|
|
@@ -9,10 +10,7 @@ export declare class JwtStrategy extends JwtStrategy_base {
|
|
|
9
10
|
private readonly configService;
|
|
10
11
|
private readonly redis;
|
|
11
12
|
constructor(configService: ConfigService, redis: IORedis | null);
|
|
12
|
-
validate(payload: JwtPayload): Promise<
|
|
13
|
-
id: string;
|
|
14
|
-
permissions: string[];
|
|
15
|
-
}>;
|
|
13
|
+
validate(payload: JwtPayload): Promise<RequestUser>;
|
|
16
14
|
}
|
|
17
15
|
export {};
|
|
18
16
|
//# sourceMappingURL=jwt.strategy.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.strategy.d.ts","sourceRoot":"","sources":["../../../../../modules/auth/auth-core/strategies/jwt.strategy.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,QAAQ,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;;;;
|
|
1
|
+
{"version":3,"file":"jwt.strategy.d.ts","sourceRoot":"","sources":["../../../../../modules/auth/auth-core/strategies/jwt.strategy.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,QAAQ,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,sDAAsD,CAAC;;;;AAEnF,qBACa,WAAY,SAAQ,gBAA0B;IAEzD,OAAO,CAAC,QAAQ,CAAC,aAAa;IAG9B,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAHL,aAAa,EAAE,aAAa,EAG5B,KAAK,EAAE,OAAO,GAAG,IAAI;IASjC,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;CAkBzD"}
|
|
@@ -32,7 +32,16 @@ let JwtStrategy = class JwtStrategy extends (0, passport_1.PassportStrategy)(pas
|
|
|
32
32
|
const banned = await this.redis?.get(`user:banned:${payload.sub}`);
|
|
33
33
|
if (banned)
|
|
34
34
|
throw new common_1.UnauthorizedException('Account deactivated');
|
|
35
|
-
return {
|
|
35
|
+
return {
|
|
36
|
+
id: payload.sub,
|
|
37
|
+
fullName: payload.fullName ?? '',
|
|
38
|
+
phoneNumber: payload.phoneNumber ?? '',
|
|
39
|
+
countryCode: payload.countryCode ?? '',
|
|
40
|
+
email: payload.email,
|
|
41
|
+
photoUrl: payload.photoUrl,
|
|
42
|
+
permissions: payload.permissions ?? [],
|
|
43
|
+
roles: payload.roles ?? [],
|
|
44
|
+
};
|
|
36
45
|
}
|
|
37
46
|
};
|
|
38
47
|
exports.JwtStrategy = JwtStrategy;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jwt.strategy.js","sourceRoot":"","sources":["../../../../../modules/auth/auth-core/strategies/jwt.strategy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAqF;AACrF,+CAAoD;AACpD,+CAAoD;AACpD,2CAA+C;AAE/C,kEAA+D;
|
|
1
|
+
{"version":3,"file":"jwt.strategy.js","sourceRoot":"","sources":["../../../../../modules/auth/auth-core/strategies/jwt.strategy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAqF;AACrF,+CAAoD;AACpD,+CAAoD;AACpD,2CAA+C;AAE/C,kEAA+D;AAKxD,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,IAAA,2BAAgB,EAAC,uBAAQ,CAAC;IAC1D,YACkB,aAA4B,EAG5B,KAAqB;QAEtC,KAAK,CAAC;YACL,cAAc,EAAE,yBAAU,CAAC,2BAA2B,EAAE;YACxD,gBAAgB,EAAE,KAAK;YACvB,WAAW,EAAE,aAAa,CAAC,GAAG,CAAS,gBAAgB,EAAE,EAAE,CAAC;SAC5D,CAAC,CAAC;QATc,kBAAa,GAAb,aAAa,CAAe;QAG5B,UAAK,GAAL,KAAK,CAAgB;IAOvC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAmB;QAIjC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,eAAe,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACnE,IAAI,MAAM;YAAE,MAAM,IAAI,8BAAqB,CAAC,qBAAqB,CAAC,CAAC;QAEnE,OAAO;YACN,EAAE,EAAE,OAAO,CAAC,GAAG;YACf,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE;YAChC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;YACtC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;YACtC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;YACtC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;SAC1B,CAAC;IACH,CAAC;CACD,CAAA;AAhCY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;IAIV,WAAA,IAAA,iBAAQ,GAAE,CAAA;IACV,WAAA,IAAA,eAAM,EAAC,2BAAY,CAAC,CAAA;qCAFW,sBAAa;GAFlC,WAAW,CAgCvB"}
|
|
@@ -3,7 +3,13 @@ export declare class RefreshTokenDto {
|
|
|
3
3
|
}
|
|
4
4
|
export interface JwtPayload {
|
|
5
5
|
sub: string;
|
|
6
|
+
fullName: string;
|
|
7
|
+
phoneNumber: string;
|
|
8
|
+
countryCode: string;
|
|
9
|
+
email?: string;
|
|
10
|
+
photoUrl?: string;
|
|
6
11
|
permissions: string[];
|
|
12
|
+
roles: string[];
|
|
7
13
|
iat?: number;
|
|
8
14
|
exp?: number;
|
|
9
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token.dto.d.ts","sourceRoot":"","sources":["../../../../modules/auth/dto/token.dto.ts"],"names":[],"mappings":"AAGA,qBAAa,eAAe;IAI3B,YAAY,EAAG,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,aAAa;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CAClB"}
|
|
1
|
+
{"version":3,"file":"token.dto.d.ts","sourceRoot":"","sources":["../../../../modules/auth/dto/token.dto.ts"],"names":[],"mappings":"AAGA,qBAAa,eAAe;IAI3B,YAAY,EAAG,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,aAAa;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;CAClB"}
|
|
@@ -10,6 +10,16 @@ export declare class UserRolesService {
|
|
|
10
10
|
removeRoles(userId: string): Promise<User>;
|
|
11
11
|
getUserRoles(userId: string): Promise<Role[]>;
|
|
12
12
|
getUserPermissionSlugs(userId: string): Promise<string[]>;
|
|
13
|
+
getUserRoleAndPermissionSlugs(userId: string): Promise<{
|
|
14
|
+
permissions: string[];
|
|
15
|
+
roleSlugs: string[];
|
|
16
|
+
}>;
|
|
17
|
+
getUserAuthContext(userId: string): Promise<{
|
|
18
|
+
user: User;
|
|
19
|
+
permissions: string[];
|
|
20
|
+
roleSlugs: string[];
|
|
21
|
+
}>;
|
|
22
|
+
private collectRoleAndPermissionSlugs;
|
|
13
23
|
private getUserWithRoles;
|
|
14
24
|
}
|
|
15
25
|
//# sourceMappingURL=user-roles.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-roles.service.d.ts","sourceRoot":"","sources":["../../../../modules/roles/services/user-roles.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAM,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,qBACa,gBAAgB;IAG3B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAFd,cAAc,EAAE,UAAU,CAAC,IAAI,CAAC,EAEhC,cAAc,EAAE,UAAU,CAAC,IAAI,CAAC;IAG5C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAe/D,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAS7C,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"user-roles.service.d.ts","sourceRoot":"","sources":["../../../../modules/roles/services/user-roles.service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAM,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,qBACa,gBAAgB;IAG3B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAFd,cAAc,EAAE,UAAU,CAAC,IAAI,CAAC,EAEhC,cAAc,EAAE,UAAU,CAAC,IAAI,CAAC;IAG5C,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAe/D,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW1C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAS7C,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKzD,6BAA6B,CAClC,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,WAAW,EAAE,MAAM,EAAE,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAMpD,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QACjD,IAAI,EAAE,IAAI,CAAC;QACX,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,SAAS,EAAE,MAAM,EAAE,CAAC;KACpB,CAAC;IAWF,OAAO,CAAC,6BAA6B;YAevB,gBAAgB;CAQ9B"}
|
|
@@ -58,14 +58,33 @@ let UserRolesService = class UserRolesService {
|
|
|
58
58
|
return user.roles;
|
|
59
59
|
}
|
|
60
60
|
async getUserPermissionSlugs(userId) {
|
|
61
|
+
const { permissions } = await this.getUserRoleAndPermissionSlugs(userId);
|
|
62
|
+
return permissions;
|
|
63
|
+
}
|
|
64
|
+
async getUserRoleAndPermissionSlugs(userId) {
|
|
61
65
|
const roles = await this.getUserRoles(userId);
|
|
62
|
-
|
|
66
|
+
return this.collectRoleAndPermissionSlugs(roles);
|
|
67
|
+
}
|
|
68
|
+
async getUserAuthContext(userId) {
|
|
69
|
+
const user = await this.userRepository.findOne({
|
|
70
|
+
where: { id: userId },
|
|
71
|
+
relations: ['roles', 'roles.permissions'],
|
|
72
|
+
});
|
|
73
|
+
if (!user)
|
|
74
|
+
throw new common_1.NotFoundException(`User ${userId} not found`);
|
|
75
|
+
const { permissions, roleSlugs } = this.collectRoleAndPermissionSlugs(user.roles ?? []);
|
|
76
|
+
return { user, permissions, roleSlugs };
|
|
77
|
+
}
|
|
78
|
+
collectRoleAndPermissionSlugs(roles) {
|
|
79
|
+
const permissions = new Set();
|
|
80
|
+
const roleSlugs = [];
|
|
63
81
|
for (const role of roles) {
|
|
64
|
-
|
|
65
|
-
|
|
82
|
+
roleSlugs.push(role.slug);
|
|
83
|
+
for (const perm of role.permissions ?? []) {
|
|
84
|
+
permissions.add(perm.slug);
|
|
66
85
|
}
|
|
67
86
|
}
|
|
68
|
-
return Array.from(
|
|
87
|
+
return { permissions: Array.from(permissions), roleSlugs };
|
|
69
88
|
}
|
|
70
89
|
async getUserWithRoles(userId) {
|
|
71
90
|
const user = await this.userRepository.findOne({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-roles.service.js","sourceRoot":"","sources":["../../../../modules/roles/services/user-roles.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA+D;AAC/D,6CAAmD;AACnD,qCAAyC;AACzC,kEAAwD;AACxD,0CAAmC;AAI5B,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAC5B,YAEkB,cAAgC,EAEhC,cAAgC;QAFhC,mBAAc,GAAd,cAAc,CAAkB;QAEhC,mBAAc,GAAd,cAAc,CAAkB;IAC/C,CAAC;IAEJ,KAAK,CAAC,WAAW,CAAC,MAAc,EAAE,GAAmB;QACpD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YAC9C,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;YACrB,SAAS,EAAE,CAAC,OAAO,CAAC;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,0BAAiB,CAAC,QAAQ,MAAM,YAAY,CAAC,CAAC;QAEnE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC;YAC5C,KAAK,EAAE,EAAE,EAAE,EAAE,IAAA,YAAE,EAAC,GAAG,CAAC,OAAO,CAAC,EAAE;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAc;QAC/B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YAC9C,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;YACrB,SAAS,EAAE,CAAC,OAAO,CAAC;SACpB,CAAC,CAAC;QACH,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,0BAAiB,CAAC,QAAQ,MAAM,YAAY,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAChB,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc;QAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YAC9C,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE;YACrB,SAAS,EAAE,CAAC,OAAO,EAAE,mBAAmB,CAAC;SACzC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,0BAAiB,CAAC,QAAQ,MAAM,YAAY,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,MAAc;QAC1C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"user-roles.service.js","sourceRoot":"","sources":["../../../../modules/roles/services/user-roles.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,6 +29,8 @@ export declare class TokenService {
|
|
|
29
29
|
}): Promise<TokenResponse>;
|
|
30
30
|
rotateRefreshToken(rawRefreshToken: string, deviceInfo?: string, ipAddress?: string): Promise<TokenResponse>;
|
|
31
31
|
generateTokensForUserId(userId: string, familyId: string, providerRefreshToken?: string, deviceInfo?: string, ipAddress?: string): Promise<TokenResponse>;
|
|
32
|
+
private issueTokenPair;
|
|
33
|
+
private buildJwtPayload;
|
|
32
34
|
private get accessTokenExpiresInMs();
|
|
33
35
|
revokeRefreshToken(tokenId: string, reason?: RevokeReason): Promise<void>;
|
|
34
36
|
revokeAllUserTokens(userId: string, reason?: RevokeReason): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token.service.d.ts","sourceRoot":"","sources":["../../../../modules/sessions/services/token.service.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAIrC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAc,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAkB3E,qBACa,YAAY;IAIvB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAEjC,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IAGvC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAVjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;gBAGtC,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,gBAAgB,EAElC,sBAAsB,EAAE,UAAU,CAAC,YAAY,CAAC,EAGhD,KAAK,EAAE,OAAO,GAAG,IAAI,EACrB,eAAe,EAAE,eAAe;IAU5C,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBrD,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAcpD,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqB9D,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAcxD,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAexD,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"token.service.d.ts","sourceRoot":"","sources":["../../../../modules/sessions/services/token.service.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAIrC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAc,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,kCAAkC,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAkB3E,qBACa,YAAY;IAIvB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAEjC,OAAO,CAAC,QAAQ,CAAC,sBAAsB;IAGvC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAVjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiC;gBAGtC,UAAU,EAAE,UAAU,EACtB,gBAAgB,EAAE,gBAAgB,EAElC,sBAAsB,EAAE,UAAU,CAAC,YAAY,CAAC,EAGhD,KAAK,EAAE,OAAO,GAAG,IAAI,EACrB,eAAe,EAAE,eAAe;IAU5C,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBrD,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAcpD,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqB9D,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAcxD,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAexD,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAcxD,cAAc,CAAC,EACpB,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,SAAS,EACT,oBAAoB,GACpB,EAAE;QACF,IAAI,EAAE,IAAI,CAAC;QACX,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,oBAAoB,CAAC,EAAE,MAAM,CAAC;KAC9B,GAAG,OAAO,CAAC,aAAa,CAAC;IAapB,kBAAkB,CACvB,eAAe,EAAE,MAAM,EACvB,UAAU,CAAC,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,aAAa,CAAC;IAqDnB,uBAAuB,CAC5B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,UAAU,CAAC,EAAE,MAAM,EACnB,SAAS,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,aAAa,CAAC;YAWX,cAAc;IAsC5B,OAAO,CAAC,eAAe;IAevB,OAAO,KAAK,sBAAsB,GAMjC;IAEK,kBAAkB,CACvB,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,YAAkC,GACxC,OAAO,CAAC,IAAI,CAAC;IAOV,mBAAmB,CACxB,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,YAAkC,GACxC,OAAO,CAAC,IAAI,CAAC;IASV,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAO9D,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;YAM1D,gBAAgB;YAyBhB,WAAW;YAIX,kBAAkB;IAOhC,OAAO,CAAC,WAAW;CAOnB"}
|
|
@@ -129,23 +129,13 @@ let TokenService = TokenService_1 = class TokenService {
|
|
|
129
129
|
return email;
|
|
130
130
|
}
|
|
131
131
|
async generateTokens({ user, familyId, deviceInfo, ipAddress, providerRefreshToken, }) {
|
|
132
|
-
const permissions = await this.userRolesService.
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
expiresIn: this.settingsService.get(settings_keys_1.SETTING_KEYS.TOKENS_ACCESS_EXPIRES_IN),
|
|
132
|
+
const { permissions, roleSlugs } = await this.userRolesService.getUserRoleAndPermissionSlugs(user.id);
|
|
133
|
+
return this.issueTokenPair(user, permissions, roleSlugs, {
|
|
134
|
+
familyId,
|
|
135
|
+
providerRefreshToken,
|
|
136
|
+
deviceInfo,
|
|
137
|
+
ipAddress,
|
|
139
138
|
});
|
|
140
|
-
const resolvedFamilyId = familyId ?? (0, crypto_1.randomUUID)();
|
|
141
|
-
const secret = (0, crypto_1.randomUUID)();
|
|
142
|
-
const tokenHash = await argon2.hash(secret);
|
|
143
|
-
const savedToken = await this.saveRefreshToken(user.id, tokenHash, resolvedFamilyId, providerRefreshToken, deviceInfo, ipAddress);
|
|
144
|
-
return {
|
|
145
|
-
accessToken,
|
|
146
|
-
refreshToken: `${savedToken.id}.${secret}`,
|
|
147
|
-
expiresIn: this.accessTokenExpiresInMs,
|
|
148
|
-
};
|
|
149
139
|
}
|
|
150
140
|
async rotateRefreshToken(rawRefreshToken, deviceInfo, ipAddress) {
|
|
151
141
|
const parts = rawRefreshToken.split('.');
|
|
@@ -171,26 +161,44 @@ let TokenService = TokenService_1 = class TokenService {
|
|
|
171
161
|
throw new common_1.UnauthorizedException('Refresh token expired');
|
|
172
162
|
}
|
|
173
163
|
await this.markRevoked(record.id, refresh_token_entity_1.RevokeReason.ROTATED);
|
|
174
|
-
return this.generateTokensForUserId(record.userId, record.familyId, deviceInfo, ipAddress);
|
|
164
|
+
return this.generateTokensForUserId(record.userId, record.familyId, record.providerRefreshToken, deviceInfo, ipAddress);
|
|
175
165
|
}
|
|
176
166
|
async generateTokensForUserId(userId, familyId, providerRefreshToken, deviceInfo, ipAddress) {
|
|
177
|
-
const permissions = await this.userRolesService.
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
167
|
+
const { user, permissions, roleSlugs } = await this.userRolesService.getUserAuthContext(userId);
|
|
168
|
+
return this.issueTokenPair(user, permissions, roleSlugs, {
|
|
169
|
+
familyId,
|
|
170
|
+
providerRefreshToken,
|
|
171
|
+
deviceInfo,
|
|
172
|
+
ipAddress,
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
async issueTokenPair(user, permissions, roleSlugs, options) {
|
|
176
|
+
const payload = this.buildJwtPayload(user, permissions, roleSlugs);
|
|
182
177
|
const accessToken = await this.jwtService.signAsync(payload, {
|
|
183
178
|
expiresIn: this.settingsService.get(settings_keys_1.SETTING_KEYS.TOKENS_ACCESS_EXPIRES_IN),
|
|
184
179
|
});
|
|
180
|
+
const resolvedFamilyId = options.familyId ?? (0, crypto_1.randomUUID)();
|
|
185
181
|
const secret = (0, crypto_1.randomUUID)();
|
|
186
182
|
const tokenHash = await argon2.hash(secret);
|
|
187
|
-
const savedToken = await this.saveRefreshToken(
|
|
183
|
+
const savedToken = await this.saveRefreshToken(user.id, tokenHash, resolvedFamilyId, options.providerRefreshToken, options.deviceInfo, options.ipAddress);
|
|
188
184
|
return {
|
|
189
185
|
accessToken,
|
|
190
186
|
refreshToken: `${savedToken.id}.${secret}`,
|
|
191
187
|
expiresIn: this.accessTokenExpiresInMs,
|
|
192
188
|
};
|
|
193
189
|
}
|
|
190
|
+
buildJwtPayload(user, permissions, roles) {
|
|
191
|
+
return {
|
|
192
|
+
sub: user.id,
|
|
193
|
+
fullName: user.fullName,
|
|
194
|
+
phoneNumber: user.phoneNumber ?? '',
|
|
195
|
+
countryCode: user.countryCode ?? '',
|
|
196
|
+
...(user.email ? { email: user.email } : {}),
|
|
197
|
+
...(user.photoUrl ? { photoUrl: user.photoUrl } : {}),
|
|
198
|
+
permissions,
|
|
199
|
+
roles,
|
|
200
|
+
};
|
|
201
|
+
}
|
|
194
202
|
get accessTokenExpiresInMs() {
|
|
195
203
|
return (0, ms_1.default)(this.settingsService.get(settings_keys_1.SETTING_KEYS.TOKENS_ACCESS_EXPIRES_IN));
|
|
196
204
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token.service.js","sourceRoot":"","sources":["../../../../modules/sessions/services/token.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"token.service.js","sourceRoot":"","sources":["../../../../modules/sessions/services/token.service.ts"],"names":[],"mappings":"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"}
|