UNPKG

relax-orm

Version:
24 lines 992 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); require("reflect-metadata"); var data_type_1 = require("../enum/data.type"); var attribute_service_1 = require("../service/attribute.service"); function Column(option) { return function (target, propertyKey) { var columnOption = (!option || typeof option === 'string') ? columnOptionFactory(target, propertyKey, option) : option; attribute_service_1.addAttribute(target, propertyKey, columnOption); }; } exports.Column = Column; function columnOptionFactory(target, propertyKey, name) { var dataType = Reflect.getMetadata('design:type', target, propertyKey).name; if (dataType !== 'String' && dataType !== 'Number') { throw new Error('DataType have to be decleared at @Column with IColumnOption'); } return { column: name ? name : propertyKey.toUpperCase(), type: data_type_1.DataType[dataType], }; } //# sourceMappingURL=column.js.map