@decaf-ts/db-decorators
Version:
Agnostic database decorators and repository
19 lines • 991 B
JavaScript
;
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 repository_1 = require("./../repository/index.cjs");
const reflection_1 = require("@decaf-ts/reflection");
/**
* @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() {
return (0, reflection_1.apply)((0, decorator_validation_1.required)(), (0, validation_1.readonly)(), (0, decorator_validation_1.propMetadata)(repository_1.Repository.key(constants_1.DBKeys.ID), {}));
}
//# sourceMappingURL=decorators.js.map