@eggjs/dal-decorator
Version:
tegg dal decorator
51 lines • 5.07 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ColumnModel = void 0;
const lodash_snakecase_1 = __importDefault(require("lodash.snakecase"));
class ColumnModel {
constructor(params) {
this.columnName = params.columnName;
this.propertyName = params.propertyName;
this.type = params.type;
this.canNull = params.canNull;
this.default = params.default;
this.comment = params.comment;
this.visible = params.visible;
this.autoIncrement = params.autoIncrement;
this.uniqueKey = params.uniqueKey;
this.primaryKey = params.primaryKey;
this.collate = params.collate;
this.columnFormat = params.columnFormat;
this.engineAttribute = params.engineAttribute;
this.secondaryEngineAttribute = params.secondaryEngineAttribute;
}
static build(property, type, params) {
var _a, _b;
const columnName = (_a = params === null || params === void 0 ? void 0 : params.name) !== null && _a !== void 0 ? _a : (0, lodash_snakecase_1.default)(property);
let canNull = (_b = params === null || params === void 0 ? void 0 : params.canNull) !== null && _b !== void 0 ? _b : false;
if (params === null || params === void 0 ? void 0 : params.primaryKey) {
canNull = false;
}
return new ColumnModel({
columnName,
propertyName: property,
type,
canNull,
default: params === null || params === void 0 ? void 0 : params.default,
comment: params === null || params === void 0 ? void 0 : params.comment,
visible: params === null || params === void 0 ? void 0 : params.visible,
autoIncrement: params === null || params === void 0 ? void 0 : params.autoIncrement,
uniqueKey: params === null || params === void 0 ? void 0 : params.uniqueKey,
primaryKey: params === null || params === void 0 ? void 0 : params.primaryKey,
collate: params === null || params === void 0 ? void 0 : params.collate,
columnFormat: params === null || params === void 0 ? void 0 : params.columnFormat,
engineAttribute: params === null || params === void 0 ? void 0 : params.engineAttribute,
secondaryEngineAttribute: params === null || params === void 0 ? void 0 : params.secondaryEngineAttribute,
});
}
}
exports.ColumnModel = ColumnModel;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29sdW1uTW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbW9kZWwvQ29sdW1uTW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsd0VBQXlDO0FBR3pDLE1BQWEsV0FBVztJQWdCdEIsWUFBWSxNQWVYO1FBQ0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN4QyxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQzlCLElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQztRQUMxQyxJQUFJLENBQUMsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUM7UUFDbEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUM5QixJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDeEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDO1FBQzlDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUM7SUFDbEUsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBZ0IsRUFBRSxJQUFzQixFQUFFLE1BQXFCOztRQUMxRSxNQUFNLFVBQVUsR0FBRyxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxJQUFJLG1DQUFJLElBQUEsMEJBQVMsRUFBQyxRQUFRLENBQUMsQ0FBQztRQUN2RCxJQUFJLE9BQU8sR0FBRyxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxPQUFPLG1DQUFJLEtBQUssQ0FBQztRQUN2QyxJQUFJLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxVQUFVLEVBQUUsQ0FBQztZQUN2QixPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLENBQUM7UUFDRCxPQUFPLElBQUksV0FBVyxDQUFDO1lBQ3JCLFVBQVU7WUFDVixZQUFZLEVBQUUsUUFBUTtZQUN0QixJQUFJO1lBQ0osT0FBTztZQUNQLE9BQU8sRUFBRSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsT0FBTztZQUN4QixPQUFPLEVBQUUsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE9BQU87WUFDeEIsT0FBTyxFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxPQUFPO1lBQ3hCLGFBQWEsRUFBRSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsYUFBYTtZQUNwQyxTQUFTLEVBQUUsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFNBQVM7WUFDNUIsVUFBVSxFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxVQUFVO1lBQzlCLE9BQU8sRUFBRSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsT0FBTztZQUN4QixZQUFZLEVBQUUsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLFlBQVk7WUFDbEMsZUFBZSxFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxlQUFlO1lBQ3hDLHdCQUF3QixFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSx3QkFBd0I7U0FDM0QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBdkVELGtDQXVFQyJ9