UNPKG

blow-data

Version:
47 lines (46 loc) 1.15 kB
'use strict'; const util_1 = require('util'); const BaseModel_1 = require('./BaseModel'); const manager_1 = require('./manager'); function isInstnace(model) { return model instanceof BaseModel_1.BaseModel; } exports.isInstnace = isInstnace; function isConstructor(model) { return model.prototype instanceof BaseModel_1.BaseModel; } exports.isConstructor = isConstructor; function getMetadata(model) { if (isInstnace(model)) { return model.constructor.metadata; } else { return model.metadata; } } exports.getMetadata = getMetadata; function getCtor(model) { return model.constructor; } exports.getCtor = getCtor; function getIdName(model) { return getMetadata(model).idProperty.name; } exports.getIdName = getIdName; function getIdValue(model) { return model[getIdName(model)]; } exports.getIdValue = getIdValue; function setIdValue(model, id) { model[getIdName(model)] = id; } exports.setIdValue = setIdValue; function getModel(model) { if (util_1.isString(model)) { return manager_1.manager.getModel(model); } else { return model; } } exports.getModel = getModel;