@solidstarters/solid-core 1.2.48 → 1.2.50
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/controllers/security-rule.controller.d.ts +41 -0
- package/dist/controllers/security-rule.controller.d.ts.map +1 -0
- package/dist/controllers/security-rule.controller.js +179 -0
- package/dist/controllers/security-rule.controller.js.map +1 -0
- package/dist/dtos/create-model-metadata.dto.d.ts +3 -0
- package/dist/dtos/create-model-metadata.dto.d.ts.map +1 -1
- package/dist/dtos/create-model-metadata.dto.js +18 -1
- package/dist/dtos/create-model-metadata.dto.js.map +1 -1
- package/dist/dtos/create-security-rule.dto.d.ts +10 -0
- package/dist/dtos/create-security-rule.dto.d.ts.map +1 -0
- package/dist/dtos/create-security-rule.dto.js +65 -0
- package/dist/dtos/create-security-rule.dto.js.map +1 -0
- package/dist/dtos/security-rule-config.dto.d.ts +4 -0
- package/dist/dtos/security-rule-config.dto.d.ts.map +1 -0
- package/dist/dtos/security-rule-config.dto.js +4 -0
- package/dist/dtos/security-rule-config.dto.js.map +1 -0
- package/dist/dtos/update-security-rule.dto.d.ts +11 -0
- package/dist/dtos/update-security-rule.dto.d.ts.map +1 -0
- package/dist/dtos/update-security-rule.dto.js +72 -0
- package/dist/dtos/update-security-rule.dto.js.map +1 -0
- package/dist/entities/email-template.entity.js +1 -1
- package/dist/entities/email-template.entity.js.map +1 -1
- package/dist/entities/model-metadata.entity.d.ts +2 -0
- package/dist/entities/model-metadata.entity.d.ts.map +1 -1
- package/dist/entities/model-metadata.entity.js +9 -1
- package/dist/entities/model-metadata.entity.js.map +1 -1
- package/dist/entities/security-rule.entity.d.ts +11 -0
- package/dist/entities/security-rule.entity.d.ts.map +1 -0
- package/dist/entities/security-rule.entity.js +53 -0
- package/dist/entities/security-rule.entity.js.map +1 -0
- package/dist/entities/user.entity.d.ts.map +1 -1
- package/dist/entities/user.entity.js +2 -1
- package/dist/entities/user.entity.js.map +1 -1
- package/dist/helpers/solid-registry.d.ts +22 -1
- package/dist/helpers/solid-registry.d.ts.map +1 -1
- package/dist/helpers/solid-registry.js +29 -0
- package/dist/helpers/solid-registry.js.map +1 -1
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/interfaces.d.ts +2 -0
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js.map +1 -1
- package/dist/repository/security-rule.repository.d.ts +20 -0
- package/dist/repository/security-rule.repository.d.ts.map +1 -0
- package/dist/repository/security-rule.repository.js +128 -0
- package/dist/repository/security-rule.repository.js.map +1 -0
- package/dist/repository/solid-base.repository.d.ts +14 -0
- package/dist/repository/solid-base.repository.d.ts.map +1 -0
- package/dist/repository/solid-base.repository.js +26 -0
- package/dist/repository/solid-base.repository.js.map +1 -0
- package/dist/seeders/module-metadata-seeder.service.d.ts +5 -1
- package/dist/seeders/module-metadata-seeder.service.d.ts.map +1 -1
- package/dist/seeders/module-metadata-seeder.service.js +22 -2
- package/dist/seeders/module-metadata-seeder.service.js.map +1 -1
- package/dist/seeders/seed-data/solid-core-metadata.json +263 -0
- package/dist/services/field-metadata.service.d.ts.map +1 -1
- package/dist/services/field-metadata.service.js +1 -0
- package/dist/services/field-metadata.service.js.map +1 -1
- package/dist/services/module-metadata.service.d.ts.map +1 -1
- package/dist/services/module-metadata.service.js +1 -0
- package/dist/services/module-metadata.service.js.map +1 -1
- package/dist/services/request-context.service.d.ts +7 -0
- package/dist/services/request-context.service.d.ts.map +1 -0
- package/dist/services/request-context.service.js +33 -0
- package/dist/services/request-context.service.js.map +1 -0
- package/dist/services/security-rule.service.d.ts +27 -0
- package/dist/services/security-rule.service.d.ts.map +1 -0
- package/dist/services/security-rule.service.js +71 -0
- package/dist/services/security-rule.service.js.map +1 -0
- package/dist/services/view-metadata.service.d.ts +1 -0
- package/dist/services/view-metadata.service.d.ts.map +1 -1
- package/dist/services/view-metadata.service.js +22 -7
- package/dist/services/view-metadata.service.js.map +1 -1
- package/dist/solid-core.module.d.ts.map +1 -1
- package/dist/solid-core.module.js +15 -1
- package/dist/solid-core.module.js.map +1 -1
- package/dist/subscribers/security-rule.subscriber.d.ts +16 -0
- package/dist/subscribers/security-rule.subscriber.d.ts.map +1 -0
- package/dist/subscribers/security-rule.subscriber.js +123 -0
- package/dist/subscribers/security-rule.subscriber.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/controllers/security-rule.controller.ts +93 -0
- package/src/dtos/create-model-metadata.dto.ts +14 -0
- package/src/dtos/create-security-rule.dto.ts +34 -0
- package/src/dtos/security-rule-config.dto.ts +5 -0
- package/src/dtos/update-security-rule.dto.ts +39 -0
- package/src/entities/email-template.entity.ts +1 -1
- package/src/entities/model-metadata.entity.ts +6 -0
- package/src/entities/security-rule.entity.ts +25 -0
- package/src/entities/user.entity.ts +2 -1
- package/src/helpers/solid-registry.ts +34 -0
- package/src/index.ts +9 -0
- package/src/interfaces.ts +2 -0
- package/src/repository/security-rule.repository.ts +135 -0
- package/src/repository/solid-base.repository.ts +45 -0
- package/src/seeders/module-metadata-seeder.service.ts +28 -1
- package/src/seeders/seed-data/solid-core-metadata.json +264 -0
- package/src/seeders/seed-data/solid-core-metadata.json.bkp +6638 -0
- package/src/services/field-metadata.service.ts +1 -0
- package/src/services/module-metadata.service.ts +1 -0
- package/src/services/request-context.service.ts +16 -0
- package/src/services/security-rule.service.ts +54 -0
- package/src/services/view-metadata.service.ts +26 -7
- package/src/solid-core.module.ts +15 -1
- package/src/subscribers/security-rule.subscriber.ts +78 -0
|
@@ -0,0 +1,53 @@
|
|
|
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.SecurityRule = void 0;
|
|
13
|
+
const openapi = require("@nestjs/swagger");
|
|
14
|
+
const common_entity_1 = require("./common.entity");
|
|
15
|
+
const model_metadata_entity_1 = require("./model-metadata.entity");
|
|
16
|
+
const role_metadata_entity_1 = require("./role-metadata.entity");
|
|
17
|
+
const typeorm_1 = require("typeorm");
|
|
18
|
+
let SecurityRule = class SecurityRule extends common_entity_1.CommonEntity {
|
|
19
|
+
static _OPENAPI_METADATA_FACTORY() {
|
|
20
|
+
return { name: { required: true, type: () => String }, description: { required: true, type: () => String }, role: { required: true, type: () => require("./role-metadata.entity").RoleMetadata }, modelMetadata: { required: true, type: () => require("./model-metadata.entity").ModelMetadata }, securityRuleConfig: { required: true, type: () => Object } };
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
exports.SecurityRule = SecurityRule;
|
|
24
|
+
__decorate([
|
|
25
|
+
(0, typeorm_1.Index)({ unique: true }),
|
|
26
|
+
(0, typeorm_1.Column)({ type: "varchar" }),
|
|
27
|
+
__metadata("design:type", String)
|
|
28
|
+
], SecurityRule.prototype, "name", void 0);
|
|
29
|
+
__decorate([
|
|
30
|
+
(0, typeorm_1.Index)({ unique: true }),
|
|
31
|
+
(0, typeorm_1.Column)({ type: "varchar" }),
|
|
32
|
+
__metadata("design:type", String)
|
|
33
|
+
], SecurityRule.prototype, "description", void 0);
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, typeorm_1.Index)(),
|
|
36
|
+
(0, typeorm_1.ManyToOne)(() => role_metadata_entity_1.RoleMetadata, { onDelete: "CASCADE", nullable: false }),
|
|
37
|
+
(0, typeorm_1.JoinColumn)(),
|
|
38
|
+
__metadata("design:type", role_metadata_entity_1.RoleMetadata)
|
|
39
|
+
], SecurityRule.prototype, "role", void 0);
|
|
40
|
+
__decorate([
|
|
41
|
+
(0, typeorm_1.Index)(),
|
|
42
|
+
(0, typeorm_1.ManyToOne)(() => model_metadata_entity_1.ModelMetadata, { onDelete: "CASCADE", nullable: false }),
|
|
43
|
+
(0, typeorm_1.JoinColumn)(),
|
|
44
|
+
__metadata("design:type", model_metadata_entity_1.ModelMetadata)
|
|
45
|
+
], SecurityRule.prototype, "modelMetadata", void 0);
|
|
46
|
+
__decorate([
|
|
47
|
+
(0, typeorm_1.Column)({ type: "text" }),
|
|
48
|
+
__metadata("design:type", Object)
|
|
49
|
+
], SecurityRule.prototype, "securityRuleConfig", void 0);
|
|
50
|
+
exports.SecurityRule = SecurityRule = __decorate([
|
|
51
|
+
(0, typeorm_1.Entity)("ss_security_rule")
|
|
52
|
+
], SecurityRule);
|
|
53
|
+
//# sourceMappingURL=security-rule.entity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security-rule.entity.js","sourceRoot":"","sources":["../../src/entities/security-rule.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,mDAA0D;AAC1D,mEAAmE;AACnE,iEAAiE;AACjE,qCAAuE;AAGhE,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,4BAAY;;;;CAkB7C,CAAA;AAlBY,oCAAY;AAGrB;IAFC,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvB,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;0CACf;AAGb;IAFC,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvB,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;iDACR;AAIpB;IAHC,IAAA,eAAK,GAAE;IACP,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,mCAAY,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACvE,IAAA,oBAAU,GAAE;8BACP,mCAAY;0CAAC;AAInB;IAHC,IAAA,eAAK,GAAE;IACP,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,qCAAa,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACxE,IAAA,oBAAU,GAAE;8BACE,qCAAa;mDAAC;AAE7B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;wDACD;uBAhBf,YAAY;IADxB,IAAA,gBAAM,EAAC,kBAAkB,CAAC;GACd,YAAY,CAkBxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.entity.d.ts","sourceRoot":"","sources":["../../src/entities/user.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAEzE,
|
|
1
|
+
{"version":3,"file":"user.entity.d.ts","sourceRoot":"","sources":["../../src/entities/user.entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAEzD,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAEzE,qBAEa,IAAK,SAAQ,YAAY;IAElC,QAAQ,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC;IAGjB,KAAK,EAAE,MAAM,CAAC;IAGd,MAAM,EAAE,MAAM,CAAC;IAEf,QAAQ,EAAE,MAAM,CAAC;IAEjB,mBAAmB,EAAE,OAAO,CAAQ;IAEpC,iBAAiB,EAAE,MAAM,CAAW;IAEpC,UAAU,EAAE,MAAM,CAAC;IAEnB,iBAAiB,EAAE,MAAM,CAAC;IAE1B,QAAQ,EAAE,MAAM,CAAC;IAEjB,oBAAoB,EAAE,MAAM,CAAC;IAE7B,MAAM,EAAE,OAAO,CAAQ;IAEvB,yBAAyB,EAAE,IAAI,CAAC;IAEhC,iCAAiC,EAAE,MAAM,CAAC;IAE1C,0CAA0C,EAAE,IAAI,CAAC;IAEjD,6BAA6B,EAAE,IAAI,CAAC;IAEpC,oCAAoC,EAAE,MAAM,CAAC;IAE7C,6CAA6C,EAAE,IAAI,CAAC;IAEpD,8BAA8B,EAAE,IAAI,CAAC;IAErC,qCAAqC,EAAE,MAAM,CAAC;IAE9C,8CAA8C,EAAE,IAAI,CAAC;IAErD,sBAAsB,EAAE,IAAI,CAAC;IAE7B,6BAA6B,EAAE,MAAM,CAAC;IAEtC,sCAAsC,EAAE,IAAI,CAAC;IAE7C,uBAAuB,EAAE,IAAI,CAAC;IAE9B,8BAA8B,EAAE,MAAM,CAAC;IAEvC,uCAAuC,EAAE,IAAI,CAAC;IAE9C,aAAa,EAAE,MAAM,CAAC;IAGtB,KAAK,EAAE,YAAY,EAAE,CAAC;IAEtB,gBAAgB,EAAE,gBAAgB,EAAE,CAAC;CACxC"}
|
|
@@ -152,6 +152,7 @@ __decorate([
|
|
|
152
152
|
__metadata("design:type", Array)
|
|
153
153
|
], User.prototype, "userViewMetadata", void 0);
|
|
154
154
|
exports.User = User = __decorate([
|
|
155
|
-
(0, typeorm_1.Entity)("ss_user")
|
|
155
|
+
(0, typeorm_1.Entity)("ss_user"),
|
|
156
|
+
(0, typeorm_1.TableInheritance)({ column: { type: "varchar", name: "type", default: "User" } })
|
|
156
157
|
], User);
|
|
157
158
|
//# sourceMappingURL=user.entity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user.entity.js","sourceRoot":"","sources":["../../src/entities/user.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,mDAAyD;AACzD,
|
|
1
|
+
{"version":3,"file":"user.entity.js","sourceRoot":"","sources":["../../src/entities/user.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,mDAAyD;AACzD,qCAAoG;AACpG,iEAAiE;AACjE,2EAAyE;AAIlE,IAAM,IAAI,GAAV,MAAM,IAAK,SAAQ,4BAAY;IAA/B;;QAeH,wBAAmB,GAAY,IAAI,CAAC;QAEpC,sBAAiB,GAAW,OAAO,CAAC;QAUpC,WAAM,GAAY,IAAI,CAAC;KAsC1B;;2UAlDkC,IAAI,wWAYjB,IAAI;;CAsCzB,CAAA;AAjEY,oBAAI;AAEb;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sCAC3B;AAGjB;IAFC,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvB,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;sCACX;AAGjB;IAFC,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvB,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mCAC9B;AAGd;IAFC,IAAA,eAAK,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACvB,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oCAC7B;AAEf;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sCAC3B;AAEjB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;iDACvB;AAEpC;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;;+CACV;AAEpC;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;wCACzB;AAEnB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;+CAClB;AAE1B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;sCAC3B;AAEjB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACf;AAE7B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;oCACpB;AAEvB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACnB,IAAI;uDAAC;AAEhC;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;+DACF;AAE1C;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACF,IAAI;wEAAC;AAEjD;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACf,IAAI;2DAAC;AAEpC;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kEACC;AAE7C;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACC,IAAI;2EAAC;AAEpD;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACd,IAAI;4DAAC;AAErC;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mEACE;AAE9C;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACE,IAAI;4EAAC;AAErD;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACtB,IAAI;oDAAC;AAE7B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2DACN;AAEtC;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACN,IAAI;oEAAC;AAE7C;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACrB,IAAI;qDAAC;AAE9B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4DACL;AAEvC;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;8BACL,IAAI;qEAAC;AAE9C;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2CACtB;AAGtB;IAFC,IAAA,oBAAU,EAAC,GAAG,EAAE,CAAC,mCAAY,EAAE,YAAY,CAAC,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACrF,IAAA,mBAAS,GAAE;;mCACU;AAEtB;IADC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,4CAAgB,EAAE,gBAAgB,CAAC,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;;8CAC3D;eAhE5B,IAAI;IAFhB,IAAA,gBAAM,EAAC,SAAS,CAAC;IACjB,IAAA,0BAAgB,EAAC,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC;GACpE,IAAI,CAiEhB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { InstanceWrapper } from '@nestjs/core/injector/instance-wrapper';
|
|
2
2
|
import { ISelectionProvider, ISelectionProviderContext } from "../interfaces";
|
|
3
|
+
import { SecurityRule } from 'src/entities/security-rule.entity';
|
|
3
4
|
type ControllerMetadata = {
|
|
4
5
|
name: string;
|
|
5
6
|
methods: string[];
|
|
@@ -10,7 +11,24 @@ export declare enum RESERVED_SOLID_KEYWORDS {
|
|
|
10
11
|
fieldMetadata = "fieldMetadata",
|
|
11
12
|
dataSource = "dataSource",
|
|
12
13
|
repository = "repository",
|
|
13
|
-
entityManager = "entityManager"
|
|
14
|
+
entityManager = "entityManager",
|
|
15
|
+
actionMetadata = "actionMetadata",
|
|
16
|
+
emailAttachment = "emailAttachment",
|
|
17
|
+
emailTemplate = "emailTemplate",
|
|
18
|
+
listOfValues = "listOfValues",
|
|
19
|
+
mediaStorageProvider = "mediaStorageProvider",
|
|
20
|
+
media = "media",
|
|
21
|
+
menuItemMetadata = "menuItemMetadata",
|
|
22
|
+
mqMessageQueue = "mqMessageQueue",
|
|
23
|
+
mqMessage = "mqMessage",
|
|
24
|
+
permissionMetadata = "permissionMetadata",
|
|
25
|
+
roleMetadata = "roleMetadata",
|
|
26
|
+
securityRule = "securityRule",
|
|
27
|
+
setting = "setting",
|
|
28
|
+
smsTemplate = "smsTemplate",
|
|
29
|
+
userPasswordHistory = "userPasswordHistory",
|
|
30
|
+
userMetadata = "userMetadata",
|
|
31
|
+
user = "user"
|
|
14
32
|
}
|
|
15
33
|
export declare class SolidRegistry {
|
|
16
34
|
private seeders;
|
|
@@ -19,6 +37,7 @@ export declare class SolidRegistry {
|
|
|
19
37
|
private solidDatabaseModules;
|
|
20
38
|
private controllers;
|
|
21
39
|
private modules;
|
|
40
|
+
private securityRules;
|
|
22
41
|
registerController(name: string, methodNames: string[]): void;
|
|
23
42
|
registerControllers(controllers: Set<ControllerMetadata>): void;
|
|
24
43
|
registerSeeder(seeder: InstanceWrapper): void;
|
|
@@ -34,6 +53,8 @@ export declare class SolidRegistry {
|
|
|
34
53
|
getSolidDatabaseModules(): Array<InstanceWrapper>;
|
|
35
54
|
getModules(): Array<InstanceWrapper>;
|
|
36
55
|
getModule(name: string): InstanceWrapper;
|
|
56
|
+
registerSecurityRules(securityRules: SecurityRule[]): void;
|
|
57
|
+
getSecurityRules(modelSingularName: string, roleNames?: string[]): SecurityRule[];
|
|
37
58
|
}
|
|
38
59
|
export {};
|
|
39
60
|
//# sourceMappingURL=solid-registry.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solid-registry.d.ts","sourceRoot":"","sources":["../../src/helpers/solid-registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"solid-registry.d.ts","sourceRoot":"","sources":["../../src/helpers/solid-registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEjE,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,oBAAY,uBAAuB;IACjC,cAAc,mBAAmB;IACjC,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,UAAU,eAAe;IACzB,UAAU,eAAe;IACzB,aAAa,kBAAkB;IAC/B,cAAc,mBAAmB;IACjC,eAAe,oBAAoB;IACnC,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAC7B,oBAAoB,yBAAyB;IAC7C,KAAK,UAAU;IACf,gBAAgB,qBAAqB;IACrC,cAAc,mBAAmB;IACjC,SAAS,cAAc;IACvB,kBAAkB,uBAAuB;IACzC,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,mBAAmB,wBAAwB;IAC3C,YAAY,iBAAiB;IAC7B,IAAI,SAAS;CACd;AAED,qBACa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAmC;IAClD,OAAO,CAAC,kBAAkB,CAAmC;IAC7D,OAAO,CAAC,sBAAsB,CAAmC;IACjE,OAAO,CAAC,oBAAoB,CAAmC;IAC/D,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,aAAa,CAAsB;IAE3C,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI;IAI7D,mBAAmB,CAAC,WAAW,EAAE,GAAG,CAAC,kBAAkB,CAAC,GAAG,IAAI;IAI/D,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAI7C,yBAAyB,CAAC,iBAAiB,EAAE,eAAe,GAAG,IAAI;IAInE,6BAA6B,CAAC,qBAAqB,EAAE,eAAe,GAAG,IAAI;IAI3E,2BAA2B,CAAC,mBAAmB,EAAE,eAAe,GAAG,IAAI;IAIvE,eAAe,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,IAAI;IAIjD,UAAU,IAAI,KAAK,CAAC,eAAe,CAAC;IAIpC,cAAc,IAAI,kBAAkB,EAAE;IAItC,qBAAqB,IAAI,KAAK,CAAC,eAAe,CAAC;IAI/C,4BAA4B,CAAC,CAAC,SAAS,yBAAyB,EAAE,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC;IAWtG,yBAAyB,IAAI,KAAK,CAAC,eAAe,CAAC;IAInD,uBAAuB,IAAI,KAAK,CAAC,eAAe,CAAC;IAIjD,UAAU,IAAI,KAAK,CAAC,eAAe,CAAC;IAIpC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe;IAKxC,qBAAqB,CAAC,aAAa,EAAE,YAAY,EAAE;IAInD,gBAAgB,CAAC,iBAAiB,EAAC,MAAM,EAAE,SAAS,GAAE,MAAM,EAAO,GAAG,YAAY,EAAE;CAUrF"}
|
|
@@ -16,6 +16,23 @@ var RESERVED_SOLID_KEYWORDS;
|
|
|
16
16
|
RESERVED_SOLID_KEYWORDS["dataSource"] = "dataSource";
|
|
17
17
|
RESERVED_SOLID_KEYWORDS["repository"] = "repository";
|
|
18
18
|
RESERVED_SOLID_KEYWORDS["entityManager"] = "entityManager";
|
|
19
|
+
RESERVED_SOLID_KEYWORDS["actionMetadata"] = "actionMetadata";
|
|
20
|
+
RESERVED_SOLID_KEYWORDS["emailAttachment"] = "emailAttachment";
|
|
21
|
+
RESERVED_SOLID_KEYWORDS["emailTemplate"] = "emailTemplate";
|
|
22
|
+
RESERVED_SOLID_KEYWORDS["listOfValues"] = "listOfValues";
|
|
23
|
+
RESERVED_SOLID_KEYWORDS["mediaStorageProvider"] = "mediaStorageProvider";
|
|
24
|
+
RESERVED_SOLID_KEYWORDS["media"] = "media";
|
|
25
|
+
RESERVED_SOLID_KEYWORDS["menuItemMetadata"] = "menuItemMetadata";
|
|
26
|
+
RESERVED_SOLID_KEYWORDS["mqMessageQueue"] = "mqMessageQueue";
|
|
27
|
+
RESERVED_SOLID_KEYWORDS["mqMessage"] = "mqMessage";
|
|
28
|
+
RESERVED_SOLID_KEYWORDS["permissionMetadata"] = "permissionMetadata";
|
|
29
|
+
RESERVED_SOLID_KEYWORDS["roleMetadata"] = "roleMetadata";
|
|
30
|
+
RESERVED_SOLID_KEYWORDS["securityRule"] = "securityRule";
|
|
31
|
+
RESERVED_SOLID_KEYWORDS["setting"] = "setting";
|
|
32
|
+
RESERVED_SOLID_KEYWORDS["smsTemplate"] = "smsTemplate";
|
|
33
|
+
RESERVED_SOLID_KEYWORDS["userPasswordHistory"] = "userPasswordHistory";
|
|
34
|
+
RESERVED_SOLID_KEYWORDS["userMetadata"] = "userMetadata";
|
|
35
|
+
RESERVED_SOLID_KEYWORDS["user"] = "user";
|
|
19
36
|
})(RESERVED_SOLID_KEYWORDS || (exports.RESERVED_SOLID_KEYWORDS = RESERVED_SOLID_KEYWORDS = {}));
|
|
20
37
|
let SolidRegistry = class SolidRegistry {
|
|
21
38
|
constructor() {
|
|
@@ -25,6 +42,7 @@ let SolidRegistry = class SolidRegistry {
|
|
|
25
42
|
this.solidDatabaseModules = new Set();
|
|
26
43
|
this.controllers = new Set();
|
|
27
44
|
this.modules = new Set();
|
|
45
|
+
this.securityRules = [];
|
|
28
46
|
}
|
|
29
47
|
registerController(name, methodNames) {
|
|
30
48
|
this.controllers.add({ name: name, methods: methodNames });
|
|
@@ -78,6 +96,17 @@ let SolidRegistry = class SolidRegistry {
|
|
|
78
96
|
const module = this.getModules().filter((module) => module.name === name).pop();
|
|
79
97
|
return module;
|
|
80
98
|
}
|
|
99
|
+
registerSecurityRules(securityRules) {
|
|
100
|
+
this.securityRules = securityRules;
|
|
101
|
+
}
|
|
102
|
+
getSecurityRules(modelSingularName, roleNames = []) {
|
|
103
|
+
if (roleNames.length === 0) {
|
|
104
|
+
return this.securityRules.filter((rule) => rule.modelMetadata.singularName === modelSingularName);
|
|
105
|
+
}
|
|
106
|
+
return this.securityRules.filter((rule) => {
|
|
107
|
+
return rule.modelMetadata.singularName === modelSingularName && roleNames.includes(rule.role.name);
|
|
108
|
+
});
|
|
109
|
+
}
|
|
81
110
|
};
|
|
82
111
|
exports.SolidRegistry = SolidRegistry;
|
|
83
112
|
exports.SolidRegistry = SolidRegistry = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"solid-registry.js","sourceRoot":"","sources":["../../src/helpers/solid-registry.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;
|
|
1
|
+
{"version":3,"file":"solid-registry.js","sourceRoot":"","sources":["../../src/helpers/solid-registry.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -76,6 +76,8 @@ export * from './dtos/update-user.dto';
|
|
|
76
76
|
export * from './dtos/update-view-metadata.dto';
|
|
77
77
|
export * from './dtos/create-setting.dto';
|
|
78
78
|
export * from './dtos/update-setting.dto';
|
|
79
|
+
export * from './dtos/create-security-rule.dto';
|
|
80
|
+
export * from './dtos/update-security-rule.dto';
|
|
79
81
|
export * from './entities/action-metadata.entity';
|
|
80
82
|
export * from './entities/common.entity';
|
|
81
83
|
export * from './entities/email-attachment.entity';
|
|
@@ -97,6 +99,7 @@ export * from './entities/user.entity';
|
|
|
97
99
|
export * from './entities/view-metadata.entity';
|
|
98
100
|
export * from './entities/setting.entity';
|
|
99
101
|
export * from './entities/user-view-metadata.entity';
|
|
102
|
+
export * from './entities/security-rule.entity';
|
|
100
103
|
export * from './enums/auth-type.enum';
|
|
101
104
|
export * from './filters/http-exception.filter';
|
|
102
105
|
export * from './guards/access-token.guard';
|
|
@@ -196,6 +199,10 @@ export * from './services/user.service';
|
|
|
196
199
|
export * from './services/view-metadata.service';
|
|
197
200
|
export * from './services/whatsapp/Msg91WhatsappService';
|
|
198
201
|
export * from './services/setting.service';
|
|
202
|
+
export * from './services/security-rule.service';
|
|
203
|
+
export * from './services/request-context.service';
|
|
204
|
+
export * from './repository/solid-base.repository';
|
|
205
|
+
export * from './repository/security-rule.repository';
|
|
199
206
|
export * from './subscribers/model.subscriber';
|
|
200
207
|
export * from './subscribers/softDeleteAwareEventSubscriber.subscriber';
|
|
201
208
|
export * from './subscribers/view-metadata.subscriber';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA;AACjC,cAAc,kCAAkC,CAAA;AAChD,cAAc,mCAAmC,CAAA;AACjD,cAAc,kCAAkC,CAAA;AAChD,cAAc,yBAAyB,CAAA;AAEvC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA;AAEtC,cAAc,oCAAoC,CAAA;AAClD,cAAc,8CAA8C,CAAA;AAC5D,cAAc,6BAA6B,CAAA;AAC3C,cAAc,gDAAgD,CAAA;AAC9D,cAAc,uCAAuC,CAAA;AACrD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,2CAA2C,CAAA;AACzD,cAAc,8CAA8C,CAAA;AAC5D,cAAc,sCAAsC,CAAA;AACpD,cAAc,0BAA0B,CAAA;AACxC,cAAc,kCAAkC,CAAA;AAChD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,oCAAoC,CAAA;AAClD,cAAc,kCAAkC,CAAA;AAChD,cAAc,kCAAkC,CAAA;AAChD,cAAc,kCAAkC,CAAA;AAChD,cAAc,mDAAmD,CAAA;AACjE,cAAc,yBAAyB,CAAA;AACvC,cAAc,sCAAsC,CAAA;AACpD,cAAc,2BAA2B,CAAA;AACzC,cAAc,kCAAkC,CAAA;AAChD,cAAc,mCAAmC,CAAA;AACjD,cAAc,oCAAoC,CAAA;AAClD,cAAc,8BAA8B,CAAA;AAC5C,cAAc,uCAAuC,CAAA;AACrD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,wBAAwB,CAAA;AACtC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,wBAAwB,CAAA;AACtC,cAAc,qCAAqC,CAAA;AACnD,cAAc,oCAAoC,CAAA;AAClD,cAAc,mCAAmC,CAAA;AACjD,cAAc,8BAA8B,CAAA;AAC5C,cAAc,uBAAuB,CAAA;AACrC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,kBAAkB,CAAA;AAChC,cAAc,0BAA0B,CAAA;AACxC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,oCAAoC,CAAA;AAClD,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mCAAmC,CAAA;AACjD,cAAc,kCAAkC,CAAA;AAChD,cAAc,kCAAkC,CAAA;AAChD,cAAc,0CAA0C,CAAA;AACxD,cAAc,yBAAyB,CAAA;AACvC,cAAc,sCAAsC,CAAA;AACpD,cAAc,2BAA2B,CAAA;AACzC,cAAc,kCAAkC,CAAA;AAChD,cAAc,mCAAmC,CAAA;AACjD,cAAc,oCAAoC,CAAA;AAClD,cAAc,8BAA8B,CAAA;AAC5C,cAAc,uCAAuC,CAAA;AACrD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,wBAAwB,CAAA;AACtC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,2BAA2B,CAAA;AACzC,cAAc,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -92,6 +92,8 @@ __exportStar(require("./dtos/update-user.dto"), exports);
|
|
|
92
92
|
__exportStar(require("./dtos/update-view-metadata.dto"), exports);
|
|
93
93
|
__exportStar(require("./dtos/create-setting.dto"), exports);
|
|
94
94
|
__exportStar(require("./dtos/update-setting.dto"), exports);
|
|
95
|
+
__exportStar(require("./dtos/create-security-rule.dto"), exports);
|
|
96
|
+
__exportStar(require("./dtos/update-security-rule.dto"), exports);
|
|
95
97
|
__exportStar(require("./entities/action-metadata.entity"), exports);
|
|
96
98
|
__exportStar(require("./entities/common.entity"), exports);
|
|
97
99
|
__exportStar(require("./entities/email-attachment.entity"), exports);
|
|
@@ -113,6 +115,7 @@ __exportStar(require("./entities/user.entity"), exports);
|
|
|
113
115
|
__exportStar(require("./entities/view-metadata.entity"), exports);
|
|
114
116
|
__exportStar(require("./entities/setting.entity"), exports);
|
|
115
117
|
__exportStar(require("./entities/user-view-metadata.entity"), exports);
|
|
118
|
+
__exportStar(require("./entities/security-rule.entity"), exports);
|
|
116
119
|
__exportStar(require("./enums/auth-type.enum"), exports);
|
|
117
120
|
__exportStar(require("./filters/http-exception.filter"), exports);
|
|
118
121
|
__exportStar(require("./guards/access-token.guard"), exports);
|
|
@@ -212,6 +215,10 @@ __exportStar(require("./services/user.service"), exports);
|
|
|
212
215
|
__exportStar(require("./services/view-metadata.service"), exports);
|
|
213
216
|
__exportStar(require("./services/whatsapp/Msg91WhatsappService"), exports);
|
|
214
217
|
__exportStar(require("./services/setting.service"), exports);
|
|
218
|
+
__exportStar(require("./services/security-rule.service"), exports);
|
|
219
|
+
__exportStar(require("./services/request-context.service"), exports);
|
|
220
|
+
__exportStar(require("./repository/solid-base.repository"), exports);
|
|
221
|
+
__exportStar(require("./repository/security-rule.repository"), exports);
|
|
215
222
|
__exportStar(require("./subscribers/model.subscriber"), exports);
|
|
216
223
|
__exportStar(require("./subscribers/softDeleteAwareEventSubscriber.subscriber"), exports);
|
|
217
224
|
__exportStar(require("./subscribers/view-metadata.subscriber"), exports);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAiC;AACjC,mEAAgD;AAChD,oEAAiD;AACjD,mEAAgD;AAChD,0DAAuC;AAEvC,8DAA2C;AAC3C,yDAAsC;AACtC,sDAAmC;AACnC,yDAAsC;AAEtC,qEAAkD;AAClD,+EAA4D;AAC5D,8DAA2C;AAC3C,iFAA8D;AAC9D,wEAAqD;AACrD,kEAA+C;AAC/C,gEAA6C;AAC7C,+DAA4C;AAC5C,4EAAyD;AACzD,+EAA4D;AAC5D,uEAAoD;AACpD,2DAAwC;AACxC,mEAAgD;AAChD,6DAA0C;AAC1C,qEAAkD;AAClD,oEAAiD;AACjD,qEAAkD;AAClD,mEAAgD;AAChD,mEAAgD;AAChD,mEAAgD;AAChD,oFAAiE;AACjE,0DAAuC;AACvC,uEAAoD;AACpD,4DAAyC;AACzC,mEAAgD;AAChD,oEAAiD;AACjD,qEAAkD;AAClD,+DAA4C;AAC5C,wEAAqD;AACrD,kEAA+C;AAC/C,8DAA2C;AAC3C,iEAA8C;AAC9C,yDAAsC;AACtC,kEAA+C;AAC/C,yDAAsC;AACtC,sEAAmD;AACnD,qEAAkD;AAClD,oEAAiD;AACjD,+DAA4C;AAC5C,wDAAqC;AACrC,6DAA0C;AAC1C,yDAAsC;AACtC,yDAAsC;AACtC,8DAA2C;AAC3C,mDAAgC;AAChC,2DAAwC;AACxC,8DAA2C;AAC3C,qEAAkD;AAClD,qDAAkC;AAClC,qDAAkC;AAClC,yDAAsC;AACtC,oEAAiD;AACjD,mEAAgD;AAChD,mEAAgD;AAChD,2EAAwD;AACxD,0DAAuC;AACvC,uEAAoD;AACpD,4DAAyC;AACzC,mEAAgD;AAChD,oEAAiD;AACjD,qEAAkD;AAClD,+DAA4C;AAC5C,wEAAqD;AACrD,kEAA+C;AAC/C,iEAA8C;AAC9C,yDAAsC;AACtC,kEAA+C;AAC/C,4DAAyC;AACzC,4DAAyC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/interfaces.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ import { CreateRoleMetadataDto } from './dtos/create-role-metadata.dto';
|
|
|
10
10
|
import { CreateViewMetadataDto } from './dtos/create-view-metadata.dto';
|
|
11
11
|
import { FieldMetadata } from './entities/field-metadata.entity';
|
|
12
12
|
import { Media } from './entities/media.entity';
|
|
13
|
+
import { CreateSecurityRuleDto } from './dtos/create-security-rule.dto';
|
|
13
14
|
export interface FieldCrudManager {
|
|
14
15
|
validate(dto: any, files: Array<Express.Multer.File>): ValidationError[] | Promise<ValidationError[]>;
|
|
15
16
|
transformForCreate(dto: any, ctxt?: any): any | Promise<any>;
|
|
@@ -33,6 +34,7 @@ export interface ModuleMetadataConfiguration {
|
|
|
33
34
|
emailTemplates?: CreateEmailTemplateDto[];
|
|
34
35
|
smsTemplates?: CreateSmsTemplateDto[];
|
|
35
36
|
mediaStorageProviders?: CreateMediaStorageProviderMetadataDto[];
|
|
37
|
+
securityRules?: CreateSecurityRuleDto[];
|
|
36
38
|
}
|
|
37
39
|
export interface CodeGenerationOptions {
|
|
38
40
|
moduleId?: number;
|
package/dist/interfaces.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,qCAAqC,EAAE,MAAM,mDAAmD,CAAC;AAC1G,OAAO,EAAE,yBAAyB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"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"}
|
package/dist/interfaces.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;;AAgGA,IAAY,SAEX;AAFD,WAAY,SAAS;IACnB,gDAAmC,CAAA;AACrC,CAAC,EAFW,SAAS,yBAAT,SAAS,QAEpB;AAED,MAAa,YAAY;IACvB,YACS,IAAS,EACT,OAAU;QADV,SAAI,GAAJ,IAAI,CAAK;QACT,YAAO,GAAP,OAAO,CAAG;IAChB,CAAC;CACL;AALD,oCAKC;AAyCD,IAAY,UAEX;AAFD,WAAY,UAAU;IACpB,mCAAqB,CAAA;AACvB,CAAC,EAFW,UAAU,0BAAV,UAAU,QAErB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { CreateSecurityRuleDto } from 'src/dtos/create-security-rule.dto';
|
|
2
|
+
import { UpdateSecurityRuleDto } from 'src/dtos/update-security-rule.dto';
|
|
3
|
+
import { CommonEntity } from 'src/entities/common.entity';
|
|
4
|
+
import { SecurityRule } from 'src/entities/security-rule.entity';
|
|
5
|
+
import { SolidRegistry } from 'src/helpers/solid-registry';
|
|
6
|
+
import { ActiveUserData } from 'src/interfaces/active-user-data.interface';
|
|
7
|
+
import { CrudHelperService } from 'src/services/crud-helper.service';
|
|
8
|
+
import { DataSource, Repository, SelectQueryBuilder } from 'typeorm';
|
|
9
|
+
export declare class SecurityRuleRepository extends Repository<SecurityRule> {
|
|
10
|
+
private dataSource;
|
|
11
|
+
private readonly solidRegistry;
|
|
12
|
+
private readonly crudHelperService;
|
|
13
|
+
private readonly logger;
|
|
14
|
+
constructor(dataSource: DataSource, solidRegistry: SolidRegistry, crudHelperService: CrudHelperService);
|
|
15
|
+
applySecurityRules<T extends CommonEntity>(qb: SelectQueryBuilder<T>, modelSingularName: string, activeUser: ActiveUserData): SelectQueryBuilder<T>;
|
|
16
|
+
private resolveSecurityRuleConfig;
|
|
17
|
+
toDto(securityRule: SecurityRule): Promise<UpdateSecurityRuleDto>;
|
|
18
|
+
upsertWithDto(createDto: CreateSecurityRuleDto): Promise<SecurityRule>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=security-rule.repository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security-rule.repository.d.ts","sourceRoot":"","sources":["../../src/repository/security-rule.repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAG1D,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAErE,qBACa,sBAAuB,SAAQ,UAAU,CAAC,YAAY,CAAC;IAG5D,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAJtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2C;gBAEtD,UAAU,EAAE,UAAU,EACb,aAAa,EAAE,aAAa,EAC5B,iBAAiB,EAAE,iBAAiB;IAKzD,kBAAkB,CAAC,CAAC,SAAS,YAAY,EAAE,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,GAAI,kBAAkB,CAAC,CAAC,CAAC;IAqBpJ,OAAO,CAAC,yBAAyB;IAI3B,KAAK,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA4BjE,aAAa,CAAC,SAAS,EAAE,qBAAqB;CAyDvD"}
|
|
@@ -0,0 +1,128 @@
|
|
|
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 SecurityRuleRepository_1;
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.SecurityRuleRepository = void 0;
|
|
14
|
+
const common_1 = require("@nestjs/common");
|
|
15
|
+
const model_metadata_entity_1 = require("../entities/model-metadata.entity");
|
|
16
|
+
const role_metadata_entity_1 = require("../entities/role-metadata.entity");
|
|
17
|
+
const security_rule_entity_1 = require("../entities/security-rule.entity");
|
|
18
|
+
const solid_registry_1 = require("../helpers/solid-registry");
|
|
19
|
+
const crud_helper_service_1 = require("../services/crud-helper.service");
|
|
20
|
+
const typeorm_1 = require("typeorm");
|
|
21
|
+
let SecurityRuleRepository = SecurityRuleRepository_1 = class SecurityRuleRepository extends typeorm_1.Repository {
|
|
22
|
+
constructor(dataSource, solidRegistry, crudHelperService) {
|
|
23
|
+
super(security_rule_entity_1.SecurityRule, dataSource.createEntityManager());
|
|
24
|
+
this.dataSource = dataSource;
|
|
25
|
+
this.solidRegistry = solidRegistry;
|
|
26
|
+
this.crudHelperService = crudHelperService;
|
|
27
|
+
this.logger = new common_1.Logger(SecurityRuleRepository_1.name);
|
|
28
|
+
}
|
|
29
|
+
applySecurityRules(qb, modelSingularName, activeUser) {
|
|
30
|
+
const securityRules = this.solidRegistry.getSecurityRules(modelSingularName, activeUser.roles);
|
|
31
|
+
securityRules.forEach((rule) => {
|
|
32
|
+
try {
|
|
33
|
+
const parsedRule = JSON.parse(this.resolveSecurityRuleConfig(rule.securityRuleConfig, activeUser));
|
|
34
|
+
if (parsedRule && parsedRule.filters) {
|
|
35
|
+
this.crudHelperService.buildFilterQuery(qb, parsedRule, qb.alias);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
catch (error) {
|
|
39
|
+
this.logger.warn(`Error parsing security rule: ${rule.securityRuleConfig}`, error);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
return qb;
|
|
43
|
+
}
|
|
44
|
+
resolveSecurityRuleConfig(configString, activeUser) {
|
|
45
|
+
return configString.replace('$activeUserId', activeUser.sub.toString());
|
|
46
|
+
}
|
|
47
|
+
async toDto(securityRule) {
|
|
48
|
+
let populatedSecurityRule = securityRule;
|
|
49
|
+
if (!securityRule.role || !securityRule.modelMetadata) {
|
|
50
|
+
populatedSecurityRule = await this.findOne({
|
|
51
|
+
where: {
|
|
52
|
+
id: securityRule.id,
|
|
53
|
+
},
|
|
54
|
+
relations: {
|
|
55
|
+
role: true,
|
|
56
|
+
modelMetadata: true,
|
|
57
|
+
},
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
return {
|
|
61
|
+
id: populatedSecurityRule.id,
|
|
62
|
+
name: populatedSecurityRule.name,
|
|
63
|
+
description: populatedSecurityRule.description,
|
|
64
|
+
roleId: populatedSecurityRule.role.id,
|
|
65
|
+
roleUserKey: populatedSecurityRule.role.name,
|
|
66
|
+
modelMetadataId: populatedSecurityRule.modelMetadata.id,
|
|
67
|
+
modelMetadataUserKey: populatedSecurityRule.modelMetadata.singularName,
|
|
68
|
+
securityRuleConfig: populatedSecurityRule.securityRuleConfig,
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
async upsertWithDto(createDto) {
|
|
72
|
+
const roleRepository = this.dataSource.getRepository(role_metadata_entity_1.RoleMetadata);
|
|
73
|
+
if (!createDto.roleId) {
|
|
74
|
+
const role = await roleRepository.findOne({
|
|
75
|
+
where: {
|
|
76
|
+
id: createDto.roleId,
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
createDto['role'] = role;
|
|
80
|
+
}
|
|
81
|
+
if (createDto.roleUserKey) {
|
|
82
|
+
const role = await roleRepository.findOne({
|
|
83
|
+
where: {
|
|
84
|
+
name: createDto.roleUserKey,
|
|
85
|
+
},
|
|
86
|
+
});
|
|
87
|
+
createDto['role'] = role;
|
|
88
|
+
}
|
|
89
|
+
const modelMetadataRepository = this.dataSource.getRepository(model_metadata_entity_1.ModelMetadata);
|
|
90
|
+
if (!createDto.modelMetadataId) {
|
|
91
|
+
const modelMetadata = await modelMetadataRepository.findOne({
|
|
92
|
+
where: {
|
|
93
|
+
id: createDto.modelMetadataId,
|
|
94
|
+
},
|
|
95
|
+
});
|
|
96
|
+
createDto['modelMetadata'] = modelMetadata;
|
|
97
|
+
}
|
|
98
|
+
if (createDto.modelMetadataUserKey) {
|
|
99
|
+
const modelMetadata = await modelMetadataRepository.findOne({
|
|
100
|
+
where: {
|
|
101
|
+
singularName: createDto.modelMetadataUserKey,
|
|
102
|
+
},
|
|
103
|
+
});
|
|
104
|
+
createDto['modelMetadata'] = modelMetadata;
|
|
105
|
+
}
|
|
106
|
+
const existingSecurityRule = await this.findOne({
|
|
107
|
+
where: {
|
|
108
|
+
name: createDto.name,
|
|
109
|
+
},
|
|
110
|
+
});
|
|
111
|
+
if (existingSecurityRule) {
|
|
112
|
+
const updatedSecurityRule = this.merge(existingSecurityRule, createDto);
|
|
113
|
+
return this.save(updatedSecurityRule);
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
const securityRule = this.create(createDto);
|
|
117
|
+
return this.save(securityRule);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
exports.SecurityRuleRepository = SecurityRuleRepository;
|
|
122
|
+
exports.SecurityRuleRepository = SecurityRuleRepository = SecurityRuleRepository_1 = __decorate([
|
|
123
|
+
(0, common_1.Injectable)(),
|
|
124
|
+
__metadata("design:paramtypes", [typeorm_1.DataSource,
|
|
125
|
+
solid_registry_1.SolidRegistry,
|
|
126
|
+
crud_helper_service_1.CrudHelperService])
|
|
127
|
+
], SecurityRuleRepository);
|
|
128
|
+
//# sourceMappingURL=security-rule.repository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security-rule.repository.js","sourceRoot":"","sources":["../../src/repository/security-rule.repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Logger } from '@nestjs/common';
|
|
2
|
+
import { CommonEntity } from 'src/entities/common.entity';
|
|
3
|
+
import { RequestContextService } from 'src/services/request-context.service';
|
|
4
|
+
import { DataSource, EntityTarget, QueryRunner, Repository, SelectQueryBuilder } from 'typeorm';
|
|
5
|
+
import { SecurityRuleRepository } from './security-rule.repository';
|
|
6
|
+
export declare class SolidBaseRepository<T extends CommonEntity> extends Repository<T> {
|
|
7
|
+
protected readonly requestContextService: RequestContextService;
|
|
8
|
+
protected readonly securityRuleRepository: SecurityRuleRepository;
|
|
9
|
+
protected readonly logger: Logger;
|
|
10
|
+
constructor(entity: EntityTarget<T>, dataSource: DataSource, requestContextService: RequestContextService, securityRuleRepository: SecurityRuleRepository);
|
|
11
|
+
modelSingularName(): string;
|
|
12
|
+
createQueryBuilder(alias?: string, queryRunner?: QueryRunner): SelectQueryBuilder<T>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=solid-base.repository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solid-base.repository.d.ts","sourceRoot":"","sources":["../../src/repository/solid-base.repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EACH,UAAU,EACV,YAAY,EACZ,WAAW,EACX,UAAU,EACV,kBAAkB,EACrB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,qBAAa,mBAAmB,CAAC,CAAC,SAAS,YAAY,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IAMtE,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB;IAC/D,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB;IANrE,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAG9B,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EACvB,UAAU,EAAE,UAAU,EACH,qBAAqB,EAAE,qBAAqB,EAC5C,sBAAsB,EAAE,sBAAsB;IAMrE,iBAAiB,IAAI,MAAM;IAI3B,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,kBAAkB,CAAC,CAAC,CAAC;CAavF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SolidBaseRepository = void 0;
|
|
4
|
+
const strings_1 = require("@angular-devkit/core/src/utils/strings");
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
const typeorm_1 = require("typeorm");
|
|
7
|
+
class SolidBaseRepository extends typeorm_1.Repository {
|
|
8
|
+
constructor(entity, dataSource, requestContextService, securityRuleRepository) {
|
|
9
|
+
super(entity, dataSource.createEntityManager());
|
|
10
|
+
this.requestContextService = requestContextService;
|
|
11
|
+
this.securityRuleRepository = securityRuleRepository;
|
|
12
|
+
this.logger = new common_1.Logger(this.constructor.name);
|
|
13
|
+
}
|
|
14
|
+
modelSingularName() {
|
|
15
|
+
return (0, strings_1.camelize)(this.metadata.name);
|
|
16
|
+
}
|
|
17
|
+
createQueryBuilder(alias, queryRunner) {
|
|
18
|
+
const activeUserOrUndefined = this.requestContextService.getActiveUser();
|
|
19
|
+
const qb = super.createQueryBuilder(alias, queryRunner);
|
|
20
|
+
if (!activeUserOrUndefined)
|
|
21
|
+
return qb;
|
|
22
|
+
return this.securityRuleRepository.applySecurityRules(qb, this.modelSingularName(), activeUserOrUndefined);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.SolidBaseRepository = SolidBaseRepository;
|
|
26
|
+
//# sourceMappingURL=solid-base.repository.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solid-base.repository.js","sourceRoot":"","sources":["../../src/repository/solid-base.repository.ts"],"names":[],"mappings":";;;AAAA,oEAAkE;AAClE,2CAAwC;AAIxC,qCAMiB;AAGjB,MAAa,mBAA4C,SAAQ,oBAAa;IAG1E,YACI,MAAuB,EACvB,UAAsB,EACH,qBAA4C,EAC5C,sBAA8C;QAEjE,KAAK,CAAC,MAAM,EAAE,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAH7B,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,2BAAsB,GAAtB,sBAAsB,CAAwB;QAGjE,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,iBAAiB;QACb,OAAO,IAAA,kBAAQ,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,kBAAkB,CAAC,KAAc,EAAE,WAAyB;QACxD,MAAM,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,CAAC;QACzE,MAAM,EAAE,GAAG,KAAK,CAAC,kBAAkB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,qBAAqB;YAAE,OAAO,EAAE,CAAC;QAEtC,OAAO,IAAI,CAAC,sBAAsB,CAAC,kBAAkB,CACjD,EAAE,EACF,IAAI,CAAC,iBAAiB,EAAE,EACxB,qBAAuC,CAC1C,CAAC;IACN,CAAC;CAGJ;AA9BD,kDA8BC"}
|
|
@@ -24,6 +24,8 @@ import commonConfig from 'src/config/common.config';
|
|
|
24
24
|
import { CreateSettingDto } from 'src/dtos/create-setting.dto';
|
|
25
25
|
import { SettingService } from 'src/services/setting.service';
|
|
26
26
|
import { Setting } from 'src/entities/setting.entity';
|
|
27
|
+
import { CreateSecurityRuleDto } from 'src/dtos/create-security-rule.dto';
|
|
28
|
+
import { SecurityRuleRepository } from 'src/repository/security-rule.repository';
|
|
27
29
|
export declare class ModuleMetadataSeederService {
|
|
28
30
|
private readonly moduleMetadataService;
|
|
29
31
|
private readonly modelMetadataService;
|
|
@@ -45,8 +47,9 @@ export declare class ModuleMetadataSeederService {
|
|
|
45
47
|
private readonly commonConfiguration;
|
|
46
48
|
private readonly service;
|
|
47
49
|
readonly settingsRepo: Repository<Setting>;
|
|
50
|
+
readonly securityRuleRepo: SecurityRuleRepository;
|
|
48
51
|
private readonly logger;
|
|
49
|
-
constructor(moduleMetadataService: ModuleMetadataService, modelMetadataService: ModelMetadataService, fieldMetadataService: FieldMetadataService, mediaStorageProviderMetadataService: MediaStorageProviderMetadataService, roleService: RoleMetadataService, userService: UserService, authenticationService: AuthenticationService, solidActionService: ActionMetadataService, solidMenuItemService: MenuItemMetadataService, solidViewService: ViewMetadataService, mediaStorageProviderSeederService: MediaStorageProviderMetadataSeederService, emailTemplateService: EmailTemplateService, smsTemplateService: SmsTemplateService, permissionRepo: Repository<PermissionMetadata>, solidRegistry: SolidRegistry, appBuilderConfiguration: ConfigType<typeof appBuilderConfig>, iamConfiguration: ConfigType<typeof iamConfig>, commonConfiguration: ConfigType<typeof commonConfig>, service: SettingService, settingsRepo: Repository<Setting
|
|
52
|
+
constructor(moduleMetadataService: ModuleMetadataService, modelMetadataService: ModelMetadataService, fieldMetadataService: FieldMetadataService, mediaStorageProviderMetadataService: MediaStorageProviderMetadataService, roleService: RoleMetadataService, userService: UserService, authenticationService: AuthenticationService, solidActionService: ActionMetadataService, solidMenuItemService: MenuItemMetadataService, solidViewService: ViewMetadataService, mediaStorageProviderSeederService: MediaStorageProviderMetadataSeederService, emailTemplateService: EmailTemplateService, smsTemplateService: SmsTemplateService, permissionRepo: Repository<PermissionMetadata>, solidRegistry: SolidRegistry, appBuilderConfiguration: ConfigType<typeof appBuilderConfig>, iamConfiguration: ConfigType<typeof iamConfig>, commonConfiguration: ConfigType<typeof commonConfig>, service: SettingService, settingsRepo: Repository<Setting>, securityRuleRepo: SecurityRuleRepository);
|
|
50
53
|
seed(): Promise<void>;
|
|
51
54
|
seedPermissions(): Promise<void>;
|
|
52
55
|
seedMediaStorageProviders(mediaStorageProviders: any): Promise<void>;
|
|
@@ -58,5 +61,6 @@ export declare class ModuleMetadataSeederService {
|
|
|
58
61
|
seedUsers(users: any): Promise<void>;
|
|
59
62
|
seedModuleModelFields(moduleMetadata: CreateModuleMetadataDto): Promise<void>;
|
|
60
63
|
seedSettings(createDto: CreateSettingDto): Promise<void>;
|
|
64
|
+
seedSecurityRules(rulesDto: CreateSecurityRuleDto[]): Promise<void>;
|
|
61
65
|
}
|
|
62
66
|
//# sourceMappingURL=module-metadata-seeder.service.d.ts.map
|