UNPKG

firebird-orm

Version:
45 lines (44 loc) 1.65 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PRIMARY_COLUMN_METADATA_KEY = exports.COLUMN_METADATA_KEY = exports.ENTITY_METADATA_KEY = void 0; exports.Entity = Entity; exports.Column = Column; exports.PrimaryGeneratedColumn = PrimaryGeneratedColumn; require("reflect-metadata"); exports.ENTITY_METADATA_KEY = Symbol('entity'); exports.COLUMN_METADATA_KEY = Symbol('column'); exports.PRIMARY_COLUMN_METADATA_KEY = Symbol('primary'); function Entity(options = {}) { return (target) => { Reflect.defineMetadata(exports.ENTITY_METADATA_KEY, { name: options.name || target.name.toLowerCase(), target }, target); }; } function Column(options = {}) { return (target, propertyKey) => { const columns = Reflect.getMetadata(exports.COLUMN_METADATA_KEY, target.constructor) || []; columns.push({ name: options.name || propertyKey, propertyKey, type: options.type, nullable: options.nullable, length: options.length }); Reflect.defineMetadata(exports.COLUMN_METADATA_KEY, columns, target.constructor); }; } function PrimaryGeneratedColumn() { return (target, propertyKey) => { const columns = Reflect.getMetadata(exports.PRIMARY_COLUMN_METADATA_KEY, target.constructor) || []; columns.push({ name: propertyKey, propertyKey, type: 'number', isPrimary: true, isGenerated: true }); Reflect.defineMetadata(exports.PRIMARY_COLUMN_METADATA_KEY, columns, target.constructor); }; }