UNPKG

@decaf-ts/db-decorators

Version:

Agnostic database decorators and repository

23 lines 1.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.id = id; const decorator_validation_1 = require("@decaf-ts/decorator-validation"); const validation_1 = require("./../validation/index.cjs"); const constants_1 = require("./../model/constants.cjs"); const decoration_1 = require("@decaf-ts/decoration"); /** * @description Decorator that marks a property as an ID field * @summary Creates a composite decorator that marks a property as required, readonly, and as the ID field for database operations * @return {PropertyDecorator} A decorator that can be applied to class properties * @function id * @category Property Decorators */ function id() { function idDecorator() { return function idDecorator(model, prop) { return (0, decoration_1.propMetadata)(decoration_1.Metadata.key(constants_1.DBKeys.ID, prop), {})(model, prop); }; } return (0, decoration_1.apply)((0, decorator_validation_1.required)(), (0, validation_1.readonly)(), idDecorator()); } //# sourceMappingURL=decorators.js.map