@campxdev/server-shared 1.0.7 → 1.0.9
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/dist/common/index.d.ts +2 -0
- package/dist/common/index.d.ts.map +1 -1
- package/dist/common/index.js +2 -0
- package/dist/common/index.js.map +1 -1
- package/dist/common/interceptors/request.interceptor.d.ts +16 -0
- package/dist/common/interceptors/request.interceptor.d.ts.map +1 -0
- package/dist/common/interceptors/request.interceptor.js +109 -0
- package/dist/common/interceptors/request.interceptor.js.map +1 -0
- package/dist/common/store/request-store.d.ts +4 -0
- package/dist/common/store/request-store.d.ts.map +1 -1
- package/dist/common/store/request-store.js +16 -1
- package/dist/common/store/request-store.js.map +1 -1
- package/dist/common/store/store-config.d.ts +0 -2
- package/dist/common/store/store-config.d.ts.map +1 -1
- package/dist/common/store/store-config.js +1 -5
- package/dist/common/store/store-config.js.map +1 -1
- package/dist/common/store/store.interceptor.d.ts +6 -0
- package/dist/common/store/store.interceptor.d.ts.map +1 -0
- package/dist/common/store/store.interceptor.js +38 -0
- package/dist/common/store/store.interceptor.js.map +1 -0
- package/dist/domain/entities/index.d.ts +4 -0
- package/dist/domain/entities/index.d.ts.map +1 -0
- package/dist/domain/entities/index.js +20 -0
- package/dist/domain/entities/index.js.map +1 -0
- package/dist/domain/entities/profile-permission.entity.d.ts +12 -0
- package/dist/domain/entities/profile-permission.entity.d.ts.map +1 -0
- package/dist/domain/entities/profile-permission.entity.js +65 -0
- package/dist/domain/entities/profile-permission.entity.js.map +1 -0
- package/dist/domain/entities/profile.entity.d.ts +10 -0
- package/dist/domain/entities/profile.entity.d.ts.map +1 -0
- package/dist/domain/entities/profile.entity.js +55 -0
- package/dist/domain/entities/profile.entity.js.map +1 -0
- package/dist/domain/entities/user.entity.d.ts +20 -0
- package/dist/domain/entities/user.entity.d.ts.map +1 -0
- package/dist/domain/entities/user.entity.js +106 -0
- package/dist/domain/entities/user.entity.js.map +1 -0
- package/dist/domain/index.d.ts +2 -0
- package/dist/domain/index.d.ts.map +1 -1
- package/dist/domain/index.js +2 -0
- package/dist/domain/index.js.map +1 -1
- package/dist/domain/shared-domain.module.d.ts +3 -0
- package/dist/domain/shared-domain.module.d.ts.map +1 -0
- package/dist/domain/shared-domain.module.js +22 -0
- package/dist/domain/shared-domain.module.js.map +1 -0
- package/dist/permissions/check-permission.guard.d.ts +48 -0
- package/dist/permissions/check-permission.guard.d.ts.map +1 -0
- package/dist/permissions/check-permission.guard.js +57 -0
- package/dist/permissions/check-permission.guard.js.map +1 -0
- package/dist/permissions/index.d.ts +1 -0
- package/dist/permissions/index.d.ts.map +1 -1
- package/dist/permissions/permissions.d.ts +2 -2
- package/dist/permissions/permissions.d.ts.map +1 -1
- package/dist/permissions/permissions.js +2 -2
- package/dist/permissions/permissions.js.map +1 -1
- package/dist/shared-module/shared.module.d.ts.map +1 -1
- package/dist/shared-module/shared.module.js +5 -8
- package/dist/shared-module/shared.module.js.map +1 -1
- package/dist/shared-module/shared.service.d.ts +5 -3
- package/dist/shared-module/shared.service.d.ts.map +1 -1
- package/dist/shared-module/shared.service.js +13 -7
- package/dist/shared-module/shared.service.js.map +1 -1
- package/dist/utils/utils.d.ts +1 -0
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +11 -1
- package/dist/utils/utils.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,106 @@
|
|
|
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.User = void 0;
|
|
13
|
+
const typeorm_1 = require("typeorm");
|
|
14
|
+
const profile_entity_1 = require("./profile.entity");
|
|
15
|
+
let User = class User {
|
|
16
|
+
id;
|
|
17
|
+
type;
|
|
18
|
+
fullName;
|
|
19
|
+
username;
|
|
20
|
+
email;
|
|
21
|
+
mobile;
|
|
22
|
+
password;
|
|
23
|
+
isActive;
|
|
24
|
+
isSuperuser;
|
|
25
|
+
roleId;
|
|
26
|
+
departmentId;
|
|
27
|
+
pictureId;
|
|
28
|
+
profiles;
|
|
29
|
+
schoolId;
|
|
30
|
+
createdAt;
|
|
31
|
+
updatedAt;
|
|
32
|
+
};
|
|
33
|
+
__decorate([
|
|
34
|
+
(0, typeorm_1.PrimaryGeneratedColumn)(),
|
|
35
|
+
__metadata("design:type", Number)
|
|
36
|
+
], User.prototype, "id", void 0);
|
|
37
|
+
__decorate([
|
|
38
|
+
(0, typeorm_1.Column)(),
|
|
39
|
+
__metadata("design:type", String)
|
|
40
|
+
], User.prototype, "type", void 0);
|
|
41
|
+
__decorate([
|
|
42
|
+
(0, typeorm_1.Column)(),
|
|
43
|
+
__metadata("design:type", String)
|
|
44
|
+
], User.prototype, "fullName", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
(0, typeorm_1.Column)(),
|
|
47
|
+
__metadata("design:type", String)
|
|
48
|
+
], User.prototype, "username", void 0);
|
|
49
|
+
__decorate([
|
|
50
|
+
(0, typeorm_1.Column)(),
|
|
51
|
+
__metadata("design:type", String)
|
|
52
|
+
], User.prototype, "email", void 0);
|
|
53
|
+
__decorate([
|
|
54
|
+
(0, typeorm_1.Column)(),
|
|
55
|
+
__metadata("design:type", String)
|
|
56
|
+
], User.prototype, "mobile", void 0);
|
|
57
|
+
__decorate([
|
|
58
|
+
(0, typeorm_1.Column)(),
|
|
59
|
+
__metadata("design:type", String)
|
|
60
|
+
], User.prototype, "password", void 0);
|
|
61
|
+
__decorate([
|
|
62
|
+
(0, typeorm_1.Column)({ default: true }),
|
|
63
|
+
__metadata("design:type", Boolean)
|
|
64
|
+
], User.prototype, "isActive", void 0);
|
|
65
|
+
__decorate([
|
|
66
|
+
(0, typeorm_1.Column)({ default: false }),
|
|
67
|
+
__metadata("design:type", Boolean)
|
|
68
|
+
], User.prototype, "isSuperuser", void 0);
|
|
69
|
+
__decorate([
|
|
70
|
+
(0, typeorm_1.Column)(),
|
|
71
|
+
__metadata("design:type", Number)
|
|
72
|
+
], User.prototype, "roleId", void 0);
|
|
73
|
+
__decorate([
|
|
74
|
+
(0, typeorm_1.Column)(),
|
|
75
|
+
__metadata("design:type", Number)
|
|
76
|
+
], User.prototype, "departmentId", void 0);
|
|
77
|
+
__decorate([
|
|
78
|
+
(0, typeorm_1.Column)(),
|
|
79
|
+
__metadata("design:type", Number)
|
|
80
|
+
], User.prototype, "pictureId", void 0);
|
|
81
|
+
__decorate([
|
|
82
|
+
(0, typeorm_1.ManyToMany)(() => profile_entity_1.Profile),
|
|
83
|
+
(0, typeorm_1.JoinTable)({
|
|
84
|
+
name: 'user_profiles',
|
|
85
|
+
joinColumn: { name: 'user_id' },
|
|
86
|
+
inverseJoinColumn: { name: 'profile_id' },
|
|
87
|
+
}),
|
|
88
|
+
__metadata("design:type", Array)
|
|
89
|
+
], User.prototype, "profiles", void 0);
|
|
90
|
+
__decorate([
|
|
91
|
+
(0, typeorm_1.Column)(),
|
|
92
|
+
__metadata("design:type", Number)
|
|
93
|
+
], User.prototype, "schoolId", void 0);
|
|
94
|
+
__decorate([
|
|
95
|
+
(0, typeorm_1.CreateDateColumn)(),
|
|
96
|
+
__metadata("design:type", String)
|
|
97
|
+
], User.prototype, "createdAt", void 0);
|
|
98
|
+
__decorate([
|
|
99
|
+
(0, typeorm_1.UpdateDateColumn)(),
|
|
100
|
+
__metadata("design:type", String)
|
|
101
|
+
], User.prototype, "updatedAt", void 0);
|
|
102
|
+
User = __decorate([
|
|
103
|
+
(0, typeorm_1.Entity)()
|
|
104
|
+
], User);
|
|
105
|
+
exports.User = User;
|
|
106
|
+
//# sourceMappingURL=user.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.entity.js","sourceRoot":"","sources":["../../../src/domain/entities/user.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAQiB;AACjB,qDAA2C;AAGpC,IAAM,IAAI,GAAV,MAAM,IAAI;IAEf,EAAE,CAAS;IAGX,IAAI,CAAS;IAGb,QAAQ,CAAS;IAGjB,QAAQ,CAAS;IAGjB,KAAK,CAAS;IAGd,MAAM,CAAS;IAGf,QAAQ,CAAS;IAGjB,QAAQ,CAAU;IAGlB,WAAW,CAAU;IAGrB,MAAM,CAAS;IAGf,YAAY,CAAS;IAGrB,SAAS,CAAS;IAQlB,QAAQ,CAAY;IAGpB,QAAQ,CAAS;IAGjB,SAAS,CAAS;IAGlB,SAAS,CAAS;CACnB,CAAA;AApDC;IAAC,IAAA,gCAAsB,GAAE;;gCACd;AAEX;IAAC,IAAA,gBAAM,GAAE;;kCACI;AAEb;IAAC,IAAA,gBAAM,GAAE;;sCACQ;AAEjB;IAAC,IAAA,gBAAM,GAAE;;sCACQ;AAEjB;IAAC,IAAA,gBAAM,GAAE;;mCACK;AAEd;IAAC,IAAA,gBAAM,GAAE;;oCACM;AAEf;IAAC,IAAA,gBAAM,GAAE;;sCACQ;AAEjB;IAAC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;sCACR;AAElB;IAAC,IAAA,gBAAM,EAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;;yCACN;AAErB;IAAC,IAAA,gBAAM,GAAE;;oCACM;AAEf;IAAC,IAAA,gBAAM,GAAE;;0CACY;AAErB;IAAC,IAAA,gBAAM,GAAE;;uCACS;AAElB;IAAC,IAAA,oBAAU,EAAC,GAAG,EAAE,CAAC,wBAAO,CAAC;IACzB,IAAA,mBAAS,EAAC;QACT,IAAI,EAAE,eAAe;QACrB,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QAC/B,iBAAiB,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE;KAC1C,CAAC;;sCACkB;AAEpB;IAAC,IAAA,gBAAM,GAAE;;sCACQ;AAEjB;IAAC,IAAA,0BAAgB,GAAE;;uCACD;AAElB;IAAC,IAAA,0BAAgB,GAAE;;uCACD;AApDP,IAAI;IADhB,IAAA,gBAAM,GAAE;GACI,IAAI,CAqDhB;AArDY,oBAAI"}
|
package/dist/domain/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/domain/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/domain/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,YAAY,CAAC;AAC3B,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC"}
|
package/dist/domain/index.js
CHANGED
|
@@ -15,5 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./db-connection.module"), exports);
|
|
18
|
+
__exportStar(require("./entities"), exports);
|
|
18
19
|
__exportStar(require("./schemas/tenant.schema"), exports);
|
|
20
|
+
__exportStar(require("./shared-domain.module"), exports);
|
|
19
21
|
//# sourceMappingURL=index.js.map
|
package/dist/domain/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/domain/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,0DAAwC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/domain/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yDAAuC;AACvC,6CAA2B;AAC3B,0DAAwC;AACxC,yDAAuC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-domain.module.d.ts","sourceRoot":"","sources":["../../src/domain/shared-domain.module.ts"],"names":[],"mappings":"AAIA,qBAIa,kBAAkB;CAAG"}
|
|
@@ -0,0 +1,22 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.SharedDomainModule = void 0;
|
|
10
|
+
const common_1 = require("@nestjs/common");
|
|
11
|
+
const mongoose_1 = require("@nestjs/mongoose");
|
|
12
|
+
const tenant_schema_1 = require("./schemas/tenant.schema");
|
|
13
|
+
let SharedDomainModule = class SharedDomainModule {
|
|
14
|
+
};
|
|
15
|
+
SharedDomainModule = __decorate([
|
|
16
|
+
(0, common_1.Module)({
|
|
17
|
+
imports: [mongoose_1.MongooseModule.forFeature([{ name: tenant_schema_1.Tenant.name, schema: tenant_schema_1.TenantSchema }])],
|
|
18
|
+
exports: [mongoose_1.MongooseModule],
|
|
19
|
+
})
|
|
20
|
+
], SharedDomainModule);
|
|
21
|
+
exports.SharedDomainModule = SharedDomainModule;
|
|
22
|
+
//# sourceMappingURL=shared-domain.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared-domain.module.js","sourceRoot":"","sources":["../../src/domain/shared-domain.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAwC;AACxC,+CAAkD;AAClD,2DAA+D;AAMxD,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;CAAG,CAAA;AAArB,kBAAkB;IAJ9B,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,CAAC,yBAAc,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,sBAAM,CAAC,IAAI,EAAE,MAAM,EAAE,4BAAY,EAAE,CAAC,CAAC,CAAC;QACnF,OAAO,EAAE,CAAC,yBAAc,CAAC;KAC1B,CAAC;GACW,kBAAkB,CAAG;AAArB,gDAAkB"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { ProfilePermission, User } from '../domain';
|
|
2
|
+
export type PermissionCheckFn = (manager: any, user: User, permission: ProfilePermission, req: any) => Promise<boolean> | boolean;
|
|
3
|
+
export type CheckPermissions = {
|
|
4
|
+
organisation?: PermissionCheckFn;
|
|
5
|
+
users?: PermissionCheckFn;
|
|
6
|
+
admissions?: PermissionCheckFn;
|
|
7
|
+
students?: PermissionCheckFn;
|
|
8
|
+
subjects?: PermissionCheckFn;
|
|
9
|
+
course_registration?: PermissionCheckFn;
|
|
10
|
+
end_semester_examinations?: PermissionCheckFn;
|
|
11
|
+
internal_examinations?: PermissionCheckFn;
|
|
12
|
+
extra_curricular_activities?: PermissionCheckFn;
|
|
13
|
+
bundling?: PermissionCheckFn;
|
|
14
|
+
classroom?: PermissionCheckFn;
|
|
15
|
+
feed?: PermissionCheckFn;
|
|
16
|
+
programs?: PermissionCheckFn;
|
|
17
|
+
degrees?: PermissionCheckFn;
|
|
18
|
+
semesters?: PermissionCheckFn;
|
|
19
|
+
curriculums?: PermissionCheckFn;
|
|
20
|
+
assessment_rules?: PermissionCheckFn;
|
|
21
|
+
examinations?: PermissionCheckFn;
|
|
22
|
+
results_processing?: PermissionCheckFn;
|
|
23
|
+
lead_status?: PermissionCheckFn;
|
|
24
|
+
hosteler?: PermissionCheckFn;
|
|
25
|
+
hosteler_settings?: PermissionCheckFn;
|
|
26
|
+
schools?: PermissionCheckFn;
|
|
27
|
+
subject_types?: PermissionCheckFn;
|
|
28
|
+
assessment_types?: PermissionCheckFn;
|
|
29
|
+
master_subject?: PermissionCheckFn;
|
|
30
|
+
academic_calendar?: PermissionCheckFn;
|
|
31
|
+
designations?: PermissionCheckFn;
|
|
32
|
+
tasks?: PermissionCheckFn;
|
|
33
|
+
fee_counters?: PermissionCheckFn;
|
|
34
|
+
evaluators?: PermissionCheckFn;
|
|
35
|
+
exam_registrations?: PermissionCheckFn;
|
|
36
|
+
hall_tickets?: PermissionCheckFn;
|
|
37
|
+
omrs?: PermissionCheckFn;
|
|
38
|
+
paper_configuration?: PermissionCheckFn;
|
|
39
|
+
internal_marks?: PermissionCheckFn;
|
|
40
|
+
external_marks?: PermissionCheckFn;
|
|
41
|
+
d_forms?: PermissionCheckFn;
|
|
42
|
+
exam_rooms?: PermissionCheckFn;
|
|
43
|
+
exam_timetable?: PermissionCheckFn;
|
|
44
|
+
time_slots?: PermissionCheckFn;
|
|
45
|
+
quotas?: PermissionCheckFn;
|
|
46
|
+
};
|
|
47
|
+
export declare function validateRequestPermission(permissionName: string, fns: CheckPermissions): Promise<boolean>;
|
|
48
|
+
//# sourceMappingURL=check-permission.guard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-permission.guard.d.ts","sourceRoot":"","sources":["../../src/permissions/check-permission.guard.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGpD,MAAM,MAAM,iBAAiB,GAAG,CAC9B,OAAO,EAAE,GAAG,EACZ,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,iBAAiB,EAC7B,GAAG,EAAE,GAAG,KACL,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAEhC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACxC,yBAAyB,CAAC,EAAE,iBAAiB,CAAC;IAC9C,qBAAqB,CAAC,EAAE,iBAAiB,CAAC;IAC1C,2BAA2B,CAAC,EAAE,iBAAiB,CAAC;IAChD,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACvC,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,kBAAkB,CAAC,EAAE,iBAAiB,CAAC;IACvC,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACxC,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,MAAM,CAAC,EAAE,iBAAiB,CAAC;CAC5B,CAAC;AAEF,wBAAsB,yBAAyB,CAC7C,cAAc,EAAE,MAAM,EACtB,GAAG,EAAE,gBAAgB,GACpB,OAAO,CAAC,OAAO,CAAC,CA8ClB"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validateRequestPermission = void 0;
|
|
4
|
+
const lodash_1 = require("lodash");
|
|
5
|
+
const common_1 = require("../common");
|
|
6
|
+
const domain_1 = require("../domain");
|
|
7
|
+
const permissions_1 = require("./permissions");
|
|
8
|
+
async function validateRequestPermission(permissionName, fns) {
|
|
9
|
+
const reqUser = (0, common_1.getUserData)();
|
|
10
|
+
if (!reqUser || !reqUser.id)
|
|
11
|
+
return false;
|
|
12
|
+
const req = (0, common_1.getRequest)();
|
|
13
|
+
const user = await (0, common_1.getDataSource)().manager.findOne(domain_1.User, {
|
|
14
|
+
where: { id: reqUser.id },
|
|
15
|
+
relations: ['department', 'department.programs', 'profiles'],
|
|
16
|
+
});
|
|
17
|
+
if (permissionName === 'super_user')
|
|
18
|
+
return user.isSuperuser;
|
|
19
|
+
if (user.isSuperuser)
|
|
20
|
+
return true;
|
|
21
|
+
const group = (0, permissions_1.permissionGroupBySlug)()[permissionName];
|
|
22
|
+
if (!group)
|
|
23
|
+
return false;
|
|
24
|
+
const profilePermission = await (0, common_1.getDataSource)()
|
|
25
|
+
.manager.createQueryBuilder(domain_1.ProfilePermission, 'pp')
|
|
26
|
+
.andWhere('pp.permissionSlug = :name', { name: permissionName })
|
|
27
|
+
.andWhere('pp.profileId in (:profileIds)', {
|
|
28
|
+
profileIds: user.profiles.length > 0 ? user.profiles.map((p) => p.id) : [0],
|
|
29
|
+
})
|
|
30
|
+
.getMany()
|
|
31
|
+
.then((res) => {
|
|
32
|
+
if (res.length === 0)
|
|
33
|
+
return null;
|
|
34
|
+
const value = res[0];
|
|
35
|
+
value.hasPermission = res.some((r) => r.hasPermission);
|
|
36
|
+
group.permissions = (0, lodash_1.uniq)(res.map((val) => val.permissions ?? []).flat());
|
|
37
|
+
return value;
|
|
38
|
+
});
|
|
39
|
+
if (!profilePermission)
|
|
40
|
+
return false;
|
|
41
|
+
if (!profilePermission.hasPermission)
|
|
42
|
+
return false;
|
|
43
|
+
if (group.permissions.length === 0)
|
|
44
|
+
return true;
|
|
45
|
+
if (profilePermission.permissions.length === 0)
|
|
46
|
+
return false;
|
|
47
|
+
const pp = fns[permissionName];
|
|
48
|
+
if (pp === null || pp === undefined)
|
|
49
|
+
return true;
|
|
50
|
+
if (typeof pp === 'function')
|
|
51
|
+
return pp((0, common_1.getDataSource)().manager, user, profilePermission, req);
|
|
52
|
+
if (typeof pp === 'boolean')
|
|
53
|
+
return pp;
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
exports.validateRequestPermission = validateRequestPermission;
|
|
57
|
+
//# sourceMappingURL=check-permission.guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-permission.guard.js","sourceRoot":"","sources":["../../src/permissions/check-permission.guard.ts"],"names":[],"mappings":";;;AAAA,mCAA8B;AAC9B,sCAAmE;AACnE,sCAAoD;AACpD,+CAAsD;AAsD/C,KAAK,UAAU,yBAAyB,CAC7C,cAAsB,EACtB,GAAqB;IAErB,MAAM,OAAO,GAAG,IAAA,oBAAW,GAAE,CAAC;IAC9B,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAE1C,MAAM,GAAG,GAAG,IAAA,mBAAU,GAAE,CAAC;IAEzB,MAAM,IAAI,GAAG,MAAM,IAAA,sBAAa,GAAE,CAAC,OAAO,CAAC,OAAO,CAAC,aAAI,EAAE;QACvD,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE;QACzB,SAAS,EAAE,CAAC,YAAY,EAAE,qBAAqB,EAAE,UAAU,CAAC;KAC7D,CAAC,CAAC;IAEH,IAAI,cAAc,KAAK,YAAY;QAAE,OAAO,IAAI,CAAC,WAAW,CAAC;IAC7D,IAAI,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAElC,MAAM,KAAK,GAAG,IAAA,mCAAqB,GAAE,CAAC,cAAc,CAAC,CAAC;IACtD,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IAEzB,MAAM,iBAAiB,GAAG,MAAM,IAAA,sBAAa,GAAE;SAC5C,OAAO,CAAC,kBAAkB,CAAC,0BAAiB,EAAE,IAAI,CAAC;SACnD,QAAQ,CAAC,2BAA2B,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;SAC/D,QAAQ,CAAC,+BAA+B,EAAE;QACzC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAC5E,CAAC;SACD,OAAO,EAAE;SACT,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAClC,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QACrB,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;QACvD,KAAK,CAAC,WAAW,GAAG,IAAA,aAAI,EAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACzE,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IACL,IAAI,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC;IAErC,IAAI,CAAC,iBAAiB,CAAC,aAAa;QAAE,OAAO,KAAK,CAAC;IAEnD,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEhD,IAAI,iBAAiB,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAE7D,MAAM,EAAE,GAAG,GAAG,CAAC,cAAwC,CAAC,CAAC;IAEzD,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACjD,IAAI,OAAO,EAAE,KAAK,UAAU;QAAE,OAAO,EAAE,CAAC,IAAA,sBAAa,GAAE,CAAC,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,CAAC,CAAC;IAC/F,IAAI,OAAO,EAAE,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IAEvC,OAAO,IAAI,CAAC;AACd,CAAC;AAjDD,8DAiDC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/permissions/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/permissions/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -14,7 +14,7 @@ export interface IPermission {
|
|
|
14
14
|
export declare function permissionGroupsArray(): IPermissionGroup[];
|
|
15
15
|
export declare function permissionsArray(): IPermission[];
|
|
16
16
|
export declare function permissionGroupBySlug(): import("lodash").Dictionary<IPermission>;
|
|
17
|
-
export declare const permission:
|
|
17
|
+
export declare const permission: {
|
|
18
18
|
organisation: {
|
|
19
19
|
GROUP: {
|
|
20
20
|
name: string;
|
|
@@ -1886,5 +1886,5 @@ export declare const permission: Readonly<{
|
|
|
1886
1886
|
};
|
|
1887
1887
|
};
|
|
1888
1888
|
};
|
|
1889
|
-
}
|
|
1889
|
+
};
|
|
1890
1890
|
//# sourceMappingURL=permissions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/permissions/permissions.ts"],"names":[],"mappings":";AAsBA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,WAAW,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,wBAAgB,qBAAqB,IAAI,gBAAgB,EAAE,CAiB1D;AAED,wBAAgB,gBAAgB,kBAQ/B;AAED,wBAAgB,qBAAqB,6CAGpC;AAED,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/permissions/permissions.ts"],"names":[],"mappings":";AAsBA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,WAAW,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,wBAAgB,qBAAqB,IAAI,gBAAgB,EAAE,CAiB1D;AAED,wBAAgB,gBAAgB,kBAQ/B;AAED,wBAAgB,qBAAqB,6CAGpC;AAED,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAg1DtB,CAAC"}
|
|
@@ -37,7 +37,7 @@ function permissionGroupBySlug() {
|
|
|
37
37
|
return (0, lodash_1.keyBy)(groups, (val) => val.slug);
|
|
38
38
|
}
|
|
39
39
|
exports.permissionGroupBySlug = permissionGroupBySlug;
|
|
40
|
-
exports.permission =
|
|
40
|
+
exports.permission = {
|
|
41
41
|
organisation: {
|
|
42
42
|
GROUP: {
|
|
43
43
|
name: 'Organisation',
|
|
@@ -1909,5 +1909,5 @@ exports.permission = Object.freeze({
|
|
|
1909
1909
|
},
|
|
1910
1910
|
},
|
|
1911
1911
|
},
|
|
1912
|
-
}
|
|
1912
|
+
};
|
|
1913
1913
|
//# sourceMappingURL=permissions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/permissions/permissions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/permissions/permissions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.module.d.ts","sourceRoot":"","sources":["../../src/shared-module/shared.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAkB,MAAM,gBAAgB,CAAC;AAM/D,OAAO,EAAE,eAAe,EAAiB,MAAM,kBAAkB,CAAC;AAElE,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,eAAe,CAAC;CAClC;AAED,qBAEa,YAAY;IACvB,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,oBAAoB,GAAG,aAAa;
|
|
1
|
+
{"version":3,"file":"shared.module.d.ts","sourceRoot":"","sources":["../../src/shared-module/shared.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAkB,MAAM,gBAAgB,CAAC;AAM/D,OAAO,EAAE,eAAe,EAAiB,MAAM,kBAAkB,CAAC;AAElE,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,eAAe,CAAC;CAClC;AAED,qBAEa,YAAY;IACvB,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,oBAAoB,GAAG,aAAa;CAiB5D"}
|
|
@@ -18,20 +18,17 @@ let SharedModule = SharedModule_1 = class SharedModule {
|
|
|
18
18
|
common_2.MessagePatterProps.service = config.service;
|
|
19
19
|
return {
|
|
20
20
|
module: SharedModule_1,
|
|
21
|
-
imports: [
|
|
22
|
-
mongoose_1.MongooseModule.forFeature([{ name: domain_1.Tenant.name, schema: domain_1.TenantSchema }]),
|
|
23
|
-
domain_1.DBConnectionModule,
|
|
24
|
-
],
|
|
21
|
+
imports: [domain_1.SharedDomainModule, domain_1.DBConnectionModule],
|
|
25
22
|
providers: [
|
|
26
23
|
{
|
|
27
24
|
provide: shared_service_1.SharedService,
|
|
28
|
-
useFactory: (dbConnections,
|
|
29
|
-
return new shared_service_1.SharedService(config.dataBaseConfig, dbConnections,
|
|
25
|
+
useFactory: (dbConnections, tenantModel) => {
|
|
26
|
+
return new shared_service_1.SharedService(config.dataBaseConfig, dbConnections, tenantModel);
|
|
30
27
|
},
|
|
31
|
-
inject: [domain_1.TENANT_DB_CONNECTIONS, (0, mongoose_1.
|
|
28
|
+
inject: [domain_1.TENANT_DB_CONNECTIONS, (0, mongoose_1.getModelToken)(domain_1.Tenant.name)],
|
|
32
29
|
},
|
|
33
30
|
],
|
|
34
|
-
exports: [shared_service_1.SharedService
|
|
31
|
+
exports: [shared_service_1.SharedService],
|
|
35
32
|
};
|
|
36
33
|
}
|
|
37
34
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.module.js","sourceRoot":"","sources":["../../src/shared-module/shared.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAA+D;AAC/D,+
|
|
1
|
+
{"version":3,"file":"shared.module.js","sourceRoot":"","sources":["../../src/shared-module/shared.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAA+D;AAC/D,+CAAiD;AAGjD,sCAA+C;AAC/C,sCAAkG;AAClG,qDAAkE;AAS3D,IAAM,YAAY,oBAAlB,MAAM,YAAY;IACvB,MAAM,CAAC,OAAO,CAAC,MAA4B;QACzC,2BAAkB,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAC5C,OAAO;YACL,MAAM,EAAE,cAAY;YACpB,OAAO,EAAE,CAAC,2BAAkB,EAAE,2BAAkB,CAAC;YACjD,SAAS,EAAE;gBACT;oBACE,OAAO,EAAE,8BAAa;oBACtB,UAAU,EAAE,CAAC,aAAsC,EAAE,WAA0B,EAAE,EAAE;wBACjF,OAAO,IAAI,8BAAa,CAAC,MAAM,CAAC,cAAc,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;oBAC9E,CAAC;oBACD,MAAM,EAAE,CAAC,8BAAqB,EAAE,IAAA,wBAAa,EAAC,eAAM,CAAC,IAAI,CAAC,CAAC;iBAC5D;aACF;YACD,OAAO,EAAE,CAAC,8BAAa,CAAC;SACzB,CAAC;IACJ,CAAC;CACF,CAAA;AAlBY,YAAY;IAFxB,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,YAAY,CAkBxB;AAlBY,oCAAY"}
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { OnModuleDestroy, OnModuleInit } from '@nestjs/common';
|
|
2
|
-
import {
|
|
2
|
+
import { Model } from 'mongoose';
|
|
3
3
|
import { DataSource } from 'typeorm';
|
|
4
4
|
import { IRequest, TenantDetails } from '../common/interfaces/context.interface';
|
|
5
5
|
import { Tenant } from '../domain';
|
|
6
|
+
import { CheckPermissions } from '../permissions/check-permission.guard';
|
|
6
7
|
export interface IDataBaseConfig {
|
|
7
8
|
entities?: any[];
|
|
8
9
|
migrations?: any[];
|
|
10
|
+
checkPermissions?: CheckPermissions;
|
|
9
11
|
}
|
|
10
12
|
export declare class SharedService implements OnModuleDestroy, OnModuleInit {
|
|
11
13
|
private readonly dataBaseConfig;
|
|
12
14
|
private readonly dbConnections;
|
|
13
|
-
private readonly connection;
|
|
14
15
|
private readonly tenantModel;
|
|
15
|
-
constructor(dataBaseConfig: IDataBaseConfig, dbConnections: Map<string, DataSource>,
|
|
16
|
+
constructor(dataBaseConfig: IDataBaseConfig, dbConnections: Map<string, DataSource>, tenantModel: Model<Tenant>);
|
|
16
17
|
onModuleInit(): Promise<void>;
|
|
17
18
|
onModuleDestroy(): Promise<void>;
|
|
18
19
|
createTenantDetails(tenant: Tenant): TenantDetails;
|
|
@@ -26,5 +27,6 @@ export declare class SharedService implements OnModuleDestroy, OnModuleInit {
|
|
|
26
27
|
} | {
|
|
27
28
|
rootDataSource: DataSource;
|
|
28
29
|
}>;
|
|
30
|
+
getCheckPermission(): CheckPermissions;
|
|
29
31
|
}
|
|
30
32
|
//# sourceMappingURL=shared.service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.service.d.ts","sourceRoot":"","sources":["../../src/shared-module/shared.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EACf,YAAY,EAEb,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.service.d.ts","sourceRoot":"","sources":["../../src/shared-module/shared.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EACf,YAAY,EAEb,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAEzE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC;IACnB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;CACrC;AAED,qBACa,aAAc,YAAW,eAAe,EAAE,YAAY;IAE/D,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa;IACJ,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAFrC,cAAc,EAAE,eAAe,EAC/B,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EACZ,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC;IAGjE,YAAY;IAWZ,eAAe;IAWrB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa;IAO5C,yBAAyB,CAAC,EAAE,EAAE,MAAM;IAQpC,uBAAuB,CAAC,QAAQ,EAAE,MAAM;IA6CxC,mBAAmB,CAAC,MAAM,EAAE,aAAa;;;IAOzC,aAAa,CAAC,GAAG,EAAE,QAAQ;;;;;IASjC,kBAAkB;CAGnB"}
|