@tc-libs/permission 0.9.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.
Files changed (83) hide show
  1. package/README.md +11 -0
  2. package/package.json +11 -0
  3. package/src/constants/permission.constant.d.ts +1 -0
  4. package/src/constants/permission.constant.js +5 -0
  5. package/src/constants/permission.constant.js.map +1 -0
  6. package/src/constants/permission.doc.constant.d.ts +22 -0
  7. package/src/constants/permission.doc.constant.js +33 -0
  8. package/src/constants/permission.doc.constant.js.map +1 -0
  9. package/src/constants/permission.list.constant.d.ts +8 -0
  10. package/src/constants/permission.list.constant.js +16 -0
  11. package/src/constants/permission.list.constant.js.map +1 -0
  12. package/src/constants/permission.permissions.constants.d.ts +2 -0
  13. package/src/constants/permission.permissions.constants.js +9 -0
  14. package/src/constants/permission.permissions.constants.js.map +1 -0
  15. package/src/controllers/permission.admin.controller.d.ts +16 -0
  16. package/src/controllers/permission.admin.controller.js +156 -0
  17. package/src/controllers/permission.admin.controller.js.map +1 -0
  18. package/src/decorators/permission.admin.decorator.d.ts +4 -0
  19. package/src/decorators/permission.admin.decorator.js +24 -0
  20. package/src/decorators/permission.admin.decorator.js.map +1 -0
  21. package/src/decorators/permission.decorator.d.ts +1 -0
  22. package/src/decorators/permission.decorator.js +9 -0
  23. package/src/decorators/permission.decorator.js.map +1 -0
  24. package/src/docs/permission.admin.doc.d.ts +6 -0
  25. package/src/docs/permission.admin.doc.js +91 -0
  26. package/src/docs/permission.admin.doc.js.map +1 -0
  27. package/src/dtos/permission.active.dto.d.ts +3 -0
  28. package/src/dtos/permission.active.dto.js +21 -0
  29. package/src/dtos/permission.active.dto.js.map +1 -0
  30. package/src/dtos/permission.create.dto.d.ts +6 -0
  31. package/src/dtos/permission.create.dto.js +50 -0
  32. package/src/dtos/permission.create.dto.js.map +1 -0
  33. package/src/dtos/permission.update-description.dto.d.ts +5 -0
  34. package/src/dtos/permission.update-description.dto.js +9 -0
  35. package/src/dtos/permission.update-description.dto.js.map +1 -0
  36. package/src/dtos/permission.update-group.dto.d.ts +5 -0
  37. package/src/dtos/permission.update-group.dto.js +11 -0
  38. package/src/dtos/permission.update-group.dto.js.map +1 -0
  39. package/src/dtos/permissions.request.dto.d.ts +3 -0
  40. package/src/dtos/permissions.request.dto.js +23 -0
  41. package/src/dtos/permissions.request.dto.js.map +1 -0
  42. package/src/guards/permission.active.guard.d.ts +7 -0
  43. package/src/guards/permission.active.guard.js +33 -0
  44. package/src/guards/permission.active.guard.js.map +1 -0
  45. package/src/guards/permission.not-found.guard.d.ts +4 -0
  46. package/src/guards/permission.not-found.guard.js +21 -0
  47. package/src/guards/permission.not-found.guard.js.map +1 -0
  48. package/src/guards/permission.put-to-request.guard.d.ts +7 -0
  49. package/src/guards/permission.put-to-request.guard.js +25 -0
  50. package/src/guards/permission.put-to-request.guard.js.map +1 -0
  51. package/src/index.d.ts +7 -0
  52. package/src/index.js +11 -0
  53. package/src/index.js.map +1 -0
  54. package/src/interfaces/permission.interface.d.ts +5 -0
  55. package/src/interfaces/permission.interface.js +3 -0
  56. package/src/interfaces/permission.interface.js.map +1 -0
  57. package/src/permission.module.d.ts +2 -0
  58. package/src/permission.module.js +20 -0
  59. package/src/permission.module.js.map +1 -0
  60. package/src/repository/entities/permission.entity.d.ts +16 -0
  61. package/src/repository/entities/permission.entity.js +72 -0
  62. package/src/repository/entities/permission.entity.js.map +1 -0
  63. package/src/repository/permission.repository.module.d.ts +2 -0
  64. package/src/repository/permission.repository.module.js +27 -0
  65. package/src/repository/permission.repository.module.js.map +1 -0
  66. package/src/repository/repositories/permission.repository.d.ts +11 -0
  67. package/src/repository/repositories/permission.repository.js +28 -0
  68. package/src/repository/repositories/permission.repository.js.map +1 -0
  69. package/src/serializations/index.d.ts +3 -0
  70. package/src/serializations/index.js +7 -0
  71. package/src/serializations/index.js.map +1 -0
  72. package/src/serializations/permission.get.serialization.d.ts +9 -0
  73. package/src/serializations/permission.get.serialization.js +57 -0
  74. package/src/serializations/permission.get.serialization.js.map +1 -0
  75. package/src/serializations/permission.group.serialization.d.ts +15 -0
  76. package/src/serializations/permission.group.serialization.js +40 -0
  77. package/src/serializations/permission.group.serialization.js.map +1 -0
  78. package/src/serializations/permission.list.serialization.d.ts +3 -0
  79. package/src/serializations/permission.list.serialization.js +8 -0
  80. package/src/serializations/permission.list.serialization.js.map +1 -0
  81. package/src/services/permission.service.d.ts +20 -0
  82. package/src/services/permission.service.js +50 -0
  83. package/src/services/permission.service.js.map +1 -0
@@ -0,0 +1,3 @@
1
+ export declare class PermissionRequestDto {
2
+ permission: string;
3
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionRequestDto = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const swagger_1 = require("@nestjs/swagger");
6
+ const class_transformer_1 = require("class-transformer");
7
+ const class_validator_1 = require("class-validator");
8
+ class PermissionRequestDto {
9
+ }
10
+ exports.PermissionRequestDto = PermissionRequestDto;
11
+ tslib_1.__decorate([
12
+ (0, swagger_1.ApiProperty)({
13
+ name: 'permission',
14
+ description: 'permission id',
15
+ required: true,
16
+ nullable: false,
17
+ }),
18
+ (0, class_validator_1.IsNotEmpty)(),
19
+ (0, class_validator_1.IsUUID)('4'),
20
+ (0, class_transformer_1.Type)(() => String),
21
+ tslib_1.__metadata("design:type", String)
22
+ ], PermissionRequestDto.prototype, "permission", void 0);
23
+ //# sourceMappingURL=permissions.request.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissions.request.dto.js","sourceRoot":"","sources":["../../../../../packages/permission/src/dtos/permissions.request.dto.ts"],"names":[],"mappings":";;;;AAAA,6CAA8C;AAC9C,yDAAyC;AACzC,qDAAqD;AAErD,MAAa,oBAAoB;CAWhC;AAXD,oDAWC;AADC;IATC,IAAA,qBAAW,EAAC;QACX,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,eAAe;QAC5B,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,KAAK;KAChB,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,EAAC,GAAG,CAAC;IACX,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;;wDACA"}
@@ -0,0 +1,7 @@
1
+ import { CanActivate, ExecutionContext } from '@nestjs/common';
2
+ import { Reflector } from '@nestjs/core';
3
+ export declare class PermissionActiveGuard implements CanActivate {
4
+ private reflector;
5
+ constructor(reflector: Reflector);
6
+ canActivate(context: ExecutionContext): Promise<boolean>;
7
+ }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionActiveGuard = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const errors_1 = require("@tc-libs/errors");
6
+ const common_1 = require("@nestjs/common");
7
+ const core_1 = require("@nestjs/core");
8
+ const permission_entity_1 = require("../repository/entities/permission.entity");
9
+ const permission_constant_1 = require("../constants/permission.constant");
10
+ let PermissionActiveGuard = class PermissionActiveGuard {
11
+ constructor(reflector) {
12
+ this.reflector = reflector;
13
+ }
14
+ async canActivate(context) {
15
+ const required = this.reflector.getAllAndOverride(permission_constant_1.PERMISSION_ACTIVE_META_KEY, [context.getHandler(), context.getClass()]);
16
+ if (!required) {
17
+ return true;
18
+ }
19
+ const { __permission } = context.switchToHttp().getRequest();
20
+ if (!required.includes(__permission.active)) {
21
+ throw new errors_1.Api400EntityActiveInvalidError({
22
+ entity: permission_entity_1.PermissionEntity.name,
23
+ });
24
+ }
25
+ return true;
26
+ }
27
+ };
28
+ exports.PermissionActiveGuard = PermissionActiveGuard;
29
+ exports.PermissionActiveGuard = PermissionActiveGuard = tslib_1.__decorate([
30
+ (0, common_1.Injectable)(),
31
+ tslib_1.__metadata("design:paramtypes", [core_1.Reflector])
32
+ ], PermissionActiveGuard);
33
+ //# sourceMappingURL=permission.active.guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.active.guard.js","sourceRoot":"","sources":["../../../../../packages/permission/src/guards/permission.active.guard.ts"],"names":[],"mappings":";;;;AAAA,4CAAiE;AACjE,2CAA2E;AAC3E,uCAAyC;AACzC,gFAA4E;AAC5E,0EAA8E;AAGvE,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAChC,YAAoB,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IAAG,CAAC;IAE5C,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,QAAQ,GAAc,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAC1D,gDAA0B,EAC1B,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAC3C,CAAC;QAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QAE7D,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,uCAA8B,CAAC;gBACvC,MAAM,EAAE,oCAAgB,CAAC,IAAI;aAC9B,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAtBY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,mBAAU,GAAE;6CAEoB,gBAAS;GAD7B,qBAAqB,CAsBjC"}
@@ -0,0 +1,4 @@
1
+ import { CanActivate, ExecutionContext } from '@nestjs/common';
2
+ export declare class PermissionNotFoundGuard implements CanActivate {
3
+ canActivate(context: ExecutionContext): Promise<boolean>;
4
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionNotFoundGuard = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const errors_1 = require("@tc-libs/errors");
6
+ const common_1 = require("@nestjs/common");
7
+ const permission_entity_1 = require("../repository/entities/permission.entity");
8
+ let PermissionNotFoundGuard = class PermissionNotFoundGuard {
9
+ async canActivate(context) {
10
+ const { __permission } = context.switchToHttp().getRequest();
11
+ if (!__permission) {
12
+ throw new errors_1.Api404EntityNotFoundError({ entity: permission_entity_1.PermissionEntity.name });
13
+ }
14
+ return true;
15
+ }
16
+ };
17
+ exports.PermissionNotFoundGuard = PermissionNotFoundGuard;
18
+ exports.PermissionNotFoundGuard = PermissionNotFoundGuard = tslib_1.__decorate([
19
+ (0, common_1.Injectable)()
20
+ ], PermissionNotFoundGuard);
21
+ //# sourceMappingURL=permission.not-found.guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.not-found.guard.js","sourceRoot":"","sources":["../../../../../packages/permission/src/guards/permission.not-found.guard.ts"],"names":[],"mappings":";;;;AAAA,4CAA4D;AAC5D,2CAA2E;AAC3E,gFAA4E;AAGrE,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IAClC,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QAE7D,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,kCAAyB,CAAC,EAAE,MAAM,EAAE,oCAAgB,CAAC,IAAI,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AATY,0DAAuB;kCAAvB,uBAAuB;IADnC,IAAA,mBAAU,GAAE;GACA,uBAAuB,CASnC"}
@@ -0,0 +1,7 @@
1
+ import { CanActivate, ExecutionContext } from '@nestjs/common';
2
+ import { PermissionService } from '..';
3
+ export declare class PermissionPutToRequestGuard implements CanActivate {
4
+ private readonly permissionService;
5
+ constructor(permissionService: PermissionService);
6
+ canActivate(context: ExecutionContext): Promise<boolean>;
7
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionPutToRequestGuard = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const common_1 = require("@nestjs/common");
6
+ const __1 = require("..");
7
+ let PermissionPutToRequestGuard = class PermissionPutToRequestGuard {
8
+ constructor(permissionService) {
9
+ this.permissionService = permissionService;
10
+ }
11
+ async canActivate(context) {
12
+ const request = context.switchToHttp().getRequest();
13
+ const { params } = request;
14
+ const { permission } = params;
15
+ const check = await this.permissionService.findById(permission);
16
+ request.__permission = check;
17
+ return true;
18
+ }
19
+ };
20
+ exports.PermissionPutToRequestGuard = PermissionPutToRequestGuard;
21
+ exports.PermissionPutToRequestGuard = PermissionPutToRequestGuard = tslib_1.__decorate([
22
+ (0, common_1.Injectable)(),
23
+ tslib_1.__metadata("design:paramtypes", [__1.PermissionService])
24
+ ], PermissionPutToRequestGuard);
25
+ //# sourceMappingURL=permission.put-to-request.guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.put-to-request.guard.js","sourceRoot":"","sources":["../../../../../packages/permission/src/guards/permission.put-to-request.guard.ts"],"names":[],"mappings":";;;;AAAA,2CAA2E;AAC3E,0BAAsD;AAG/C,IAAM,2BAA2B,GAAjC,MAAM,2BAA2B;IACtC,YAA6B,iBAAoC;QAApC,sBAAiB,GAAjB,iBAAiB,CAAmB;IAAG,CAAC;IAErE,KAAK,CAAC,WAAW,CAAC,OAAyB;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QACpD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAC3B,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAE9B,MAAM,KAAK,GAAkB,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAChE,UAAU,CACX,CAAC;QACF,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;QAE7B,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAfY,kEAA2B;sCAA3B,2BAA2B;IADvC,IAAA,mBAAU,GAAE;6CAEqC,qBAAiB;GADtD,2BAA2B,CAevC"}
package/src/index.d.ts ADDED
@@ -0,0 +1,7 @@
1
+ export * from './permission.module';
2
+ export * from './services/permission.service';
3
+ export * from './serializations';
4
+ export * from './repository/entities/permission.entity';
5
+ export * from './controllers/permission.admin.controller';
6
+ export * from './constants/permission.permissions.constants';
7
+ export * from './dtos/permission.create.dto';
package/src/index.js ADDED
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./permission.module"), exports);
5
+ tslib_1.__exportStar(require("./services/permission.service"), exports);
6
+ tslib_1.__exportStar(require("./serializations"), exports);
7
+ tslib_1.__exportStar(require("./repository/entities/permission.entity"), exports);
8
+ tslib_1.__exportStar(require("./controllers/permission.admin.controller"), exports);
9
+ tslib_1.__exportStar(require("./constants/permission.permissions.constants"), exports);
10
+ tslib_1.__exportStar(require("./dtos/permission.create.dto"), exports);
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/permission/src/index.ts"],"names":[],"mappings":";;;AAAA,8DAAoC;AACpC,wEAA8C;AAC9C,2DAAiC;AACjC,kFAAwD;AACxD,oFAA0D;AAC1D,uFAA6D;AAC7D,uEAA6C"}
@@ -0,0 +1,5 @@
1
+ import { PermissionEntity } from '../repository/entities/permission.entity';
2
+ export interface IPermissionGroup {
3
+ group: string;
4
+ permissions: PermissionEntity[];
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=permission.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.interface.js","sourceRoot":"","sources":["../../../../../packages/permission/src/interfaces/permission.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export declare class PermissionModule {
2
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionModule = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const common_1 = require("@nestjs/common");
6
+ const permission_service_1 = require("./services/permission.service");
7
+ const permission_repository_module_1 = require("./repository/permission.repository.module");
8
+ let PermissionModule = class PermissionModule {
9
+ };
10
+ exports.PermissionModule = PermissionModule;
11
+ exports.PermissionModule = PermissionModule = tslib_1.__decorate([
12
+ (0, common_1.Global)(),
13
+ (0, common_1.Module)({
14
+ controllers: [],
15
+ providers: [permission_service_1.PermissionService],
16
+ exports: [permission_service_1.PermissionService],
17
+ imports: [permission_repository_module_1.PermissionRepositoryModule],
18
+ })
19
+ ], PermissionModule);
20
+ //# sourceMappingURL=permission.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.module.js","sourceRoot":"","sources":["../../../../packages/permission/src/permission.module.ts"],"names":[],"mappings":";;;;AAAA,2CAAgD;AAChD,sEAAkE;AAClE,4FAAuF;AAShF,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAAG,CAAA;AAAnB,4CAAgB;2BAAhB,gBAAgB;IAP5B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,WAAW,EAAE,EAAE;QACf,SAAS,EAAE,CAAC,sCAAiB,CAAC;QAC9B,OAAO,EAAE,CAAC,sCAAiB,CAAC;QAC5B,OAAO,EAAE,CAAC,yDAA0B,CAAC;KACtC,CAAC;GACW,gBAAgB,CAAG"}
@@ -0,0 +1,16 @@
1
+ import { DatabaseMongoEntityAbstract } from '@tc-libs/database';
2
+ import { Document } from 'mongoose';
3
+ export declare const PermissionDatabaseName = "permissions";
4
+ export declare class PermissionEntity extends DatabaseMongoEntityAbstract {
5
+ group: string;
6
+ permission: string;
7
+ code: string;
8
+ description: string;
9
+ active: boolean;
10
+ }
11
+ export declare const PermissionSchema: import("mongoose").Schema<PermissionEntity, import("mongoose").Model<PermissionEntity, any, any, any, Document<unknown, any, PermissionEntity> & PermissionEntity & Required<{
12
+ _id: import("mongoose").Types.ObjectId;
13
+ }>, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, PermissionEntity, Document<unknown, {}, PermissionEntity> & PermissionEntity & Required<{
14
+ _id: import("mongoose").Types.ObjectId;
15
+ }>>;
16
+ export type PermissionDoc = PermissionEntity & Document;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionSchema = exports.PermissionEntity = exports.PermissionDatabaseName = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const database_1 = require("@tc-libs/database");
6
+ const mongoose_1 = require("@nestjs/mongoose");
7
+ exports.PermissionDatabaseName = 'permissions';
8
+ let PermissionEntity = class PermissionEntity extends database_1.DatabaseMongoEntityAbstract {
9
+ };
10
+ exports.PermissionEntity = PermissionEntity;
11
+ tslib_1.__decorate([
12
+ (0, mongoose_1.Prop)({
13
+ required: true,
14
+ index: true,
15
+ uppercase: true,
16
+ trim: true,
17
+ type: String,
18
+ }),
19
+ tslib_1.__metadata("design:type", String)
20
+ ], PermissionEntity.prototype, "group", void 0);
21
+ tslib_1.__decorate([
22
+ (0, mongoose_1.Prop)({
23
+ required: true,
24
+ index: true,
25
+ uppercase: true,
26
+ trim: true,
27
+ maxlength: 255,
28
+ type: String,
29
+ }),
30
+ tslib_1.__metadata("design:type", String)
31
+ ], PermissionEntity.prototype, "permission", void 0);
32
+ tslib_1.__decorate([
33
+ (0, mongoose_1.Prop)({
34
+ required: true,
35
+ index: true,
36
+ uppercase: true,
37
+ unique: true,
38
+ trim: true,
39
+ maxlength: 255,
40
+ type: String,
41
+ }),
42
+ tslib_1.__metadata("design:type", String)
43
+ ], PermissionEntity.prototype, "code", void 0);
44
+ tslib_1.__decorate([
45
+ (0, mongoose_1.Prop)({
46
+ required: true,
47
+ type: String,
48
+ maxlength: 255,
49
+ }),
50
+ tslib_1.__metadata("design:type", String)
51
+ ], PermissionEntity.prototype, "description", void 0);
52
+ tslib_1.__decorate([
53
+ (0, mongoose_1.Prop)({
54
+ required: true,
55
+ default: true,
56
+ index: true,
57
+ type: Boolean,
58
+ }),
59
+ tslib_1.__metadata("design:type", Boolean)
60
+ ], PermissionEntity.prototype, "active", void 0);
61
+ exports.PermissionEntity = PermissionEntity = tslib_1.__decorate([
62
+ (0, database_1.DatabaseEntity)({ collection: exports.PermissionDatabaseName })
63
+ ], PermissionEntity);
64
+ exports.PermissionSchema = mongoose_1.SchemaFactory.createForClass(PermissionEntity);
65
+ exports.PermissionSchema.index({ group: 1, permission: 1 }, { unique: true });
66
+ exports.PermissionSchema.pre('save', function (next) {
67
+ this.permission = this.permission.toUpperCase();
68
+ this.group = this.group.toUpperCase();
69
+ this.code = `${this.group}.${this.permission}`;
70
+ next();
71
+ });
72
+ //# sourceMappingURL=permission.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.entity.js","sourceRoot":"","sources":["../../../../../../packages/permission/src/repository/entities/permission.entity.ts"],"names":[],"mappings":";;;;AAAA,gDAAgF;AAChF,+CAAuD;AAG1C,QAAA,sBAAsB,GAAG,aAAa,CAAC;AAG7C,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,sCAA2B;CA6ChE,CAAA;AA7CY,4CAAgB;AAQ3B;IAPC,IAAA,eAAI,EAAC;QACJ,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,IAAI;QACX,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,MAAM;KACb,CAAC;;+CACY;AAUd;IARC,IAAA,eAAI,EAAC;QACJ,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,IAAI;QACX,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,GAAG;QACd,IAAI,EAAE,MAAM;KACb,CAAC;;oDACiB;AAWnB;IATC,IAAA,eAAI,EAAC;QACJ,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,IAAI;QACX,SAAS,EAAE,IAAI;QACf,MAAM,EAAE,IAAI;QACZ,IAAI,EAAE,IAAI;QACV,SAAS,EAAE,GAAG;QACd,IAAI,EAAE,MAAM;KACb,CAAC;;8CACW;AAOb;IALC,IAAA,eAAI,EAAC;QACJ,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,GAAG;KACf,CAAC;;qDACkB;AAQpB;IANC,IAAA,eAAI,EAAC;QACJ,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,OAAO;KACd,CAAC;;gDACc;2BA5CL,gBAAgB;IAD5B,IAAA,yBAAc,EAAC,EAAE,UAAU,EAAE,8BAAsB,EAAE,CAAC;GAC1C,gBAAgB,CA6C5B;AAEY,QAAA,gBAAgB,GAAG,wBAAa,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;AAE/E,wBAAgB,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAItE,wBAAgB,CAAC,GAAG,CAClB,MAAM,EACN,UAAU,IAA2C;IACnD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;IAChD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;IACtC,IAAI,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;IAE/C,IAAI,EAAE,CAAC;AACT,CAAC,CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare class PermissionRepositoryModule {
2
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionRepositoryModule = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const common_1 = require("@nestjs/common");
6
+ const mongoose_1 = require("@nestjs/mongoose");
7
+ const permission_entity_1 = require("./entities/permission.entity");
8
+ const permission_repository_1 = require("./repositories/permission.repository");
9
+ let PermissionRepositoryModule = class PermissionRepositoryModule {
10
+ };
11
+ exports.PermissionRepositoryModule = PermissionRepositoryModule;
12
+ exports.PermissionRepositoryModule = PermissionRepositoryModule = tslib_1.__decorate([
13
+ (0, common_1.Module)({
14
+ providers: [permission_repository_1.PermissionRepository],
15
+ exports: [permission_repository_1.PermissionRepository],
16
+ controllers: [],
17
+ imports: [
18
+ mongoose_1.MongooseModule.forFeature([
19
+ {
20
+ name: permission_entity_1.PermissionEntity.name,
21
+ schema: permission_entity_1.PermissionSchema,
22
+ },
23
+ ]),
24
+ ],
25
+ })
26
+ ], PermissionRepositoryModule);
27
+ //# sourceMappingURL=permission.repository.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.repository.module.js","sourceRoot":"","sources":["../../../../../packages/permission/src/repository/permission.repository.module.ts"],"names":[],"mappings":";;;;AAAA,2CAAwC;AACxC,+CAAkD;AAClD,oEAGsC;AACtC,gFAA4E;AAerE,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;CAAG,CAAA;AAA7B,gEAA0B;qCAA1B,0BAA0B;IAbtC,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,CAAC,4CAAoB,CAAC;QACjC,OAAO,EAAE,CAAC,4CAAoB,CAAC;QAC/B,WAAW,EAAE,EAAE;QACf,OAAO,EAAE;YACP,yBAAc,CAAC,UAAU,CAAC;gBACxB;oBACE,IAAI,EAAE,oCAAgB,CAAC,IAAI;oBAC3B,MAAM,EAAE,oCAAgB;iBACzB;aACF,CAAC;SACH;KACF,CAAC;GACW,0BAA0B,CAAG"}
@@ -0,0 +1,11 @@
1
+ import { Logger } from '@nestjs/common';
2
+ import { AppCacheService } from '@tc-libs/app-cache';
3
+ import { DatabaseMongoRepositoryAbstract } from '@tc-libs/database';
4
+ import { Connection, Model } from 'mongoose';
5
+ import { PermissionDoc, PermissionEntity } from '../entities/permission.entity';
6
+ export declare class PermissionRepository extends DatabaseMongoRepositoryAbstract<PermissionEntity, PermissionDoc> {
7
+ protected readonly permissionModel: Model<PermissionEntity>;
8
+ protected readonly connection: Connection;
9
+ protected readonly _logger: Logger;
10
+ constructor(permissionModel: Model<PermissionEntity>, connection: Connection, _cache: AppCacheService);
11
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var PermissionRepository_1;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.PermissionRepository = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const common_1 = require("@nestjs/common");
7
+ const app_cache_1 = require("@tc-libs/app-cache");
8
+ const database_1 = require("@tc-libs/database");
9
+ const mongoose_1 = require("mongoose");
10
+ const permission_entity_1 = require("../entities/permission.entity");
11
+ let PermissionRepository = PermissionRepository_1 = class PermissionRepository extends database_1.DatabaseMongoRepositoryAbstract {
12
+ constructor(permissionModel, connection, _cache) {
13
+ super(permissionModel, connection, _cache);
14
+ this.permissionModel = permissionModel;
15
+ this.connection = connection;
16
+ this._logger = new common_1.Logger(PermissionRepository_1.name);
17
+ }
18
+ };
19
+ exports.PermissionRepository = PermissionRepository;
20
+ exports.PermissionRepository = PermissionRepository = PermissionRepository_1 = tslib_1.__decorate([
21
+ (0, common_1.Injectable)(),
22
+ tslib_1.__param(0, (0, database_1.DatabaseModel)(permission_entity_1.PermissionEntity.name)),
23
+ tslib_1.__param(1, (0, database_1.DatabaseConnection)()),
24
+ tslib_1.__metadata("design:paramtypes", [mongoose_1.Model,
25
+ mongoose_1.Connection,
26
+ app_cache_1.AppCacheService])
27
+ ], PermissionRepository);
28
+ //# sourceMappingURL=permission.repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.repository.js","sourceRoot":"","sources":["../../../../../../packages/permission/src/repository/repositories/permission.repository.ts"],"names":[],"mappings":";;;;;AAAA,2CAAoD;AACpD,kDAAqD;AACrD,gDAI2B;AAC3B,uCAA6C;AAC7C,qEAAgF;AAGzE,IAAM,oBAAoB,4BAA1B,MAAM,oBAAqB,SAAQ,0CAGzC;IAEC,YAEE,eAA2D,EAE3D,UAAyC,EACzC,MAAuB;QAEvB,KAAK,CAAC,eAAe,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;QALxB,oBAAe,GAAf,eAAe,CAAyB;QAExC,eAAU,GAAV,UAAU,CAAY;QALxB,YAAO,GAAW,IAAI,eAAM,CAAC,sBAAoB,CAAC,IAAI,CAAC,CAAC;IAS3E,CAAC;CACF,CAAA;AAdY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;IAOR,mBAAA,IAAA,wBAAa,EAAC,oCAAgB,CAAC,IAAI,CAAC,CAAA;IAEpC,mBAAA,IAAA,6BAAkB,GAAE,CAAA;6CADe,gBAAK;QAEV,qBAAU;QACjC,2BAAe;GAVd,oBAAoB,CAchC"}
@@ -0,0 +1,3 @@
1
+ export * from './permission.get.serialization';
2
+ export * from './permission.group.serialization';
3
+ export * from './permission.list.serialization';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./permission.get.serialization"), exports);
5
+ tslib_1.__exportStar(require("./permission.group.serialization"), exports);
6
+ tslib_1.__exportStar(require("./permission.list.serialization"), exports);
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/permission/src/serializations/index.ts"],"names":[],"mappings":";;;AAAA,yEAA+C;AAC/C,2EAAiD;AACjD,0EAAgD"}
@@ -0,0 +1,9 @@
1
+ import { ResponseIdSerialization } from '@tc-libs/response';
2
+ export declare class PermissionGetSerialization extends ResponseIdSerialization {
3
+ readonly active: boolean;
4
+ readonly group: string;
5
+ readonly description?: string;
6
+ readonly code?: string;
7
+ readonly createdAt: Date;
8
+ readonly updatedAt: Date;
9
+ }
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionGetSerialization = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const response_1 = require("@tc-libs/response");
6
+ const faker_1 = require("@faker-js/faker");
7
+ const swagger_1 = require("@nestjs/swagger");
8
+ class PermissionGetSerialization extends response_1.ResponseIdSerialization {
9
+ }
10
+ exports.PermissionGetSerialization = PermissionGetSerialization;
11
+ tslib_1.__decorate([
12
+ (0, swagger_1.ApiProperty)({
13
+ description: 'Active flag of permission',
14
+ example: true,
15
+ required: true,
16
+ }),
17
+ tslib_1.__metadata("design:type", Boolean)
18
+ ], PermissionGetSerialization.prototype, "active", void 0);
19
+ tslib_1.__decorate([
20
+ (0, swagger_1.ApiProperty)({
21
+ example: 'USER',
22
+ }),
23
+ tslib_1.__metadata("design:type", String)
24
+ ], PermissionGetSerialization.prototype, "group", void 0);
25
+ tslib_1.__decorate([
26
+ (0, swagger_1.ApiProperty)({
27
+ description: 'Description of permission',
28
+ example: 'WRITE',
29
+ required: false,
30
+ }),
31
+ tslib_1.__metadata("design:type", String)
32
+ ], PermissionGetSerialization.prototype, "description", void 0);
33
+ tslib_1.__decorate([
34
+ (0, swagger_1.ApiProperty)({
35
+ description: 'group and permission joined',
36
+ example: 'USER.WRITE',
37
+ required: false,
38
+ }),
39
+ tslib_1.__metadata("design:type", String)
40
+ ], PermissionGetSerialization.prototype, "code", void 0);
41
+ tslib_1.__decorate([
42
+ (0, swagger_1.ApiProperty)({
43
+ description: 'Date created at',
44
+ example: faker_1.faker.date.recent(),
45
+ required: true,
46
+ }),
47
+ tslib_1.__metadata("design:type", Date)
48
+ ], PermissionGetSerialization.prototype, "createdAt", void 0);
49
+ tslib_1.__decorate([
50
+ (0, swagger_1.ApiProperty)({
51
+ description: 'Date updated at',
52
+ example: faker_1.faker.date.recent(),
53
+ required: false,
54
+ }),
55
+ tslib_1.__metadata("design:type", Date)
56
+ ], PermissionGetSerialization.prototype, "updatedAt", void 0);
57
+ //# sourceMappingURL=permission.get.serialization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.get.serialization.js","sourceRoot":"","sources":["../../../../../packages/permission/src/serializations/permission.get.serialization.ts"],"names":[],"mappings":";;;;AAAA,gDAA4D;AAC5D,2CAAwC;AACxC,6CAA8C;AAE9C,MAAa,0BAA2B,SAAQ,kCAAuB;CAwCtE;AAxCD,gEAwCC;AAlCU;IALR,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,2BAA2B;QACxC,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,IAAI;KACf,CAAC;;0DACuB;AAKhB;IAHR,IAAA,qBAAW,EAAC;QACX,OAAO,EAAE,MAAM;KAChB,CAAC;;yDACqB;AAOd;IALR,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,2BAA2B;QACxC,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,KAAK;KAChB,CAAC;;+DAC4B;AAOrB;IALR,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,6BAA6B;QAC1C,OAAO,EAAE,YAAY;QACrB,QAAQ,EAAE,KAAK;KAChB,CAAC;;wDACqB;AAOd;IALR,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,iBAAiB;QAC9B,OAAO,EAAE,aAAK,CAAC,IAAI,CAAC,MAAM,EAAE;QAC5B,QAAQ,EAAE,IAAI;KACf,CAAC;sCACkB,IAAI;6DAAC;AAOhB;IALR,IAAA,qBAAW,EAAC;QACX,WAAW,EAAE,iBAAiB;QAC9B,OAAO,EAAE,aAAK,CAAC,IAAI,CAAC,MAAM,EAAE;QAC5B,QAAQ,EAAE,KAAK;KAChB,CAAC;sCACkB,IAAI;6DAAC"}
@@ -0,0 +1,15 @@
1
+ import { PermissionGetSerialization } from './permission.get.serialization';
2
+ declare const PermissionGroupPermissionSerialization_base: import("@nestjs/common").Type<Omit<PermissionGetSerialization, "group" | "createdAt" | "updatedAt">>;
3
+ declare class PermissionGroupPermissionSerialization extends PermissionGroupPermissionSerialization_base {
4
+ group: Date;
5
+ createdAt: Date;
6
+ updatedAt: Date;
7
+ }
8
+ declare const PermissionGroupSerialization_base: import("@nestjs/common").Type<Pick<PermissionGetSerialization, "group">>;
9
+ declare class PermissionGroupSerialization extends PermissionGroupSerialization_base {
10
+ permissions: PermissionGroupPermissionSerialization[];
11
+ }
12
+ export declare class PermissionGroupsSerialization {
13
+ groups: PermissionGroupSerialization[];
14
+ }
15
+ export {};
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionGroupsSerialization = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const swagger_1 = require("@nestjs/swagger");
6
+ const class_transformer_1 = require("class-transformer");
7
+ const permission_get_serialization_1 = require("./permission.get.serialization");
8
+ class PermissionGroupPermissionSerialization extends (0, swagger_1.OmitType)(permission_get_serialization_1.PermissionGetSerialization, ['group', 'createdAt', 'updatedAt']) {
9
+ }
10
+ tslib_1.__decorate([
11
+ (0, class_transformer_1.Exclude)(),
12
+ tslib_1.__metadata("design:type", Date)
13
+ ], PermissionGroupPermissionSerialization.prototype, "group", void 0);
14
+ tslib_1.__decorate([
15
+ (0, class_transformer_1.Exclude)(),
16
+ tslib_1.__metadata("design:type", Date)
17
+ ], PermissionGroupPermissionSerialization.prototype, "createdAt", void 0);
18
+ tslib_1.__decorate([
19
+ (0, class_transformer_1.Exclude)(),
20
+ tslib_1.__metadata("design:type", Date)
21
+ ], PermissionGroupPermissionSerialization.prototype, "updatedAt", void 0);
22
+ class PermissionGroupSerialization extends (0, swagger_1.PickType)(permission_get_serialization_1.PermissionGetSerialization, ['group']) {
23
+ }
24
+ tslib_1.__decorate([
25
+ (0, swagger_1.ApiProperty)({
26
+ type: () => PermissionGroupPermissionSerialization,
27
+ isArray: true,
28
+ }),
29
+ (0, class_transformer_1.Type)(() => PermissionGroupPermissionSerialization),
30
+ tslib_1.__metadata("design:type", Array)
31
+ ], PermissionGroupSerialization.prototype, "permissions", void 0);
32
+ class PermissionGroupsSerialization {
33
+ }
34
+ exports.PermissionGroupsSerialization = PermissionGroupsSerialization;
35
+ tslib_1.__decorate([
36
+ (0, swagger_1.ApiProperty)({ type: () => PermissionGroupSerialization, isArray: true }),
37
+ (0, class_transformer_1.Type)(() => PermissionGroupSerialization),
38
+ tslib_1.__metadata("design:type", Array)
39
+ ], PermissionGroupsSerialization.prototype, "groups", void 0);
40
+ //# sourceMappingURL=permission.group.serialization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.group.serialization.js","sourceRoot":"","sources":["../../../../../packages/permission/src/serializations/permission.group.serialization.ts"],"names":[],"mappings":";;;;AAAA,6CAAkE;AAClE,yDAAkD;AAClD,iFAA4E;AAE5E,MAAM,sCAAuC,SAAQ,IAAA,kBAAQ,EAC3D,yDAA0B,EAC1B,CAAC,OAAO,EAAE,WAAW,EAAE,WAAW,CAAU,CAC7C;CASA;AAPC;IADC,IAAA,2BAAO,GAAE;sCACH,IAAI;qEAAC;AAGZ;IADC,IAAA,2BAAO,GAAE;sCACC,IAAI;yEAAC;AAGhB;IADC,IAAA,2BAAO,GAAE;sCACC,IAAI;yEAAC;AAGlB,MAAM,4BAA6B,SAAQ,IAAA,kBAAQ,EACjD,yDAA0B,EAC1B,CAAC,OAAO,CAAU,CACnB;CAOA;AADC;IALC,IAAA,qBAAW,EAAC;QACX,IAAI,EAAE,GAAG,EAAE,CAAC,sCAAsC;QAClD,OAAO,EAAE,IAAI;KACd,CAAC;IACD,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,sCAAsC,CAAC;;iEACG;AAGxD,MAAa,6BAA6B;CAIzC;AAJD,sEAIC;AADC;IAFC,IAAA,qBAAW,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,4BAA4B,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACxE,IAAA,wBAAI,EAAC,GAAG,EAAE,CAAC,4BAA4B,CAAC;;6DACF"}
@@ -0,0 +1,3 @@
1
+ import { PermissionGetSerialization } from './permission.get.serialization';
2
+ export declare class PermissionListSerialization extends PermissionGetSerialization {
3
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PermissionListSerialization = void 0;
4
+ const permission_get_serialization_1 = require("./permission.get.serialization");
5
+ class PermissionListSerialization extends permission_get_serialization_1.PermissionGetSerialization {
6
+ }
7
+ exports.PermissionListSerialization = PermissionListSerialization;
8
+ //# sourceMappingURL=permission.list.serialization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.list.serialization.js","sourceRoot":"","sources":["../../../../../packages/permission/src/serializations/permission.list.serialization.ts"],"names":[],"mappings":";;;AAAA,iFAA4E;AAE5E,MAAa,2BAA4B,SAAQ,yDAA0B;CAAG;AAA9E,kEAA8E"}
@@ -0,0 +1,20 @@
1
+ import { IDatabaseFindAllOptions } from '@tc-libs/database';
2
+ import { AbstractService } from '@tc-libs/service';
3
+ import { PaginationService } from '@tc-libs/pagination';
4
+ import { Logger } from '@nestjs/common';
5
+ import { PermissionUpdateDescriptionDto } from '../dtos/permission.update-description.dto';
6
+ import { PermissionUpdateGroupDto } from '../dtos/permission.update-group.dto';
7
+ import { PermissionEntity, PermissionDoc } from '../repository/entities/permission.entity';
8
+ import { PermissionRepository } from '../repository/repositories/permission.repository';
9
+ export declare class PermissionService extends AbstractService<PermissionEntity, PermissionDoc> {
10
+ protected readonly _paging: PaginationService;
11
+ private readonly permissionRepository;
12
+ logger: Logger;
13
+ constructor(_paging: PaginationService, permissionRepository: PermissionRepository);
14
+ findAllIds(): Promise<string[]>;
15
+ findAllByGroup(filterGroups?: Record<string, any>, options?: IDatabaseFindAllOptions): Promise<PermissionDoc[]>;
16
+ updateDescription(repository: PermissionDoc, { description }: PermissionUpdateDescriptionDto): Promise<PermissionDoc>;
17
+ updateGroup(repository: PermissionDoc, { group }: PermissionUpdateGroupDto): Promise<PermissionDoc>;
18
+ active(repository: PermissionDoc): Promise<PermissionDoc>;
19
+ inactive(repository: PermissionDoc): Promise<PermissionDoc>;
20
+ }