UNPKG

@minimaltech/node-infra

Version:

Minimal Technology NodeJS Infrastructure - Loopback 4 Framework

30 lines 1.23 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getDecoratorData = exports.MetadataDecoratorKeys = void 0; exports.permission = permission; const metadata_1 = require("@loopback/metadata"); class MetadataDecoratorKeys { } exports.MetadataDecoratorKeys = MetadataDecoratorKeys; MetadataDecoratorKeys.PERMISSION = 'metadata-key-for-permission-decorator'; // Read more: https://loopback.io/doc/en/lb4/Creating-decorators.html#inspect-metadata-of-a-property /** * @example * ```typescript * class MyController { * @permission({ idx: 1, allowedRoles: ['admin'], deniedRoles: ['guest'] }) * myMethod() { * // method implementation * } * } * ``` */ function permission(spec) { return metadata_1.MethodDecoratorFactory.createDecorator(MetadataDecoratorKeys.PERMISSION, spec); } // Read more: https://loopback.io/doc/en/lb4/Creating-decorators.html#to-create-a-decorator-that-can-be-used-multiple-times-on-a-single-method const getDecoratorData = (controllerPrototype, keyTargetDecorator) => { return metadata_1.MetadataInspector.getAllPropertyMetadata(keyTargetDecorator, controllerPrototype); }; exports.getDecoratorData = getDecoratorData; //# sourceMappingURL=index.js.map