vitamin
Version:
Data Mapper library for Node.js applications
49 lines (35 loc) • 1.11 kB
JavaScript
;
var _mapper = require('./mapper');
var _mapper2 = _interopRequireDefault(_mapper);
var _registry = require('./registry');
var _registry2 = _interopRequireDefault(_registry);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
// vitamin object
var vitamin = {
/**
* Set/Get a model constructor
*
* @param {String} name
* @param {Object|Mapper} options
* @return model constructor
*/
model: function model(name) {
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
if (options != null) {
var mapper = void 0;
if (options instanceof _mapper2.default) mapper = options;else mapper = new _mapper2.default(options);
_registry2.default.set(name, mapper);
}
return _registry2.default.get(name).modelClass;
}
};
/**
* Usage
*
* export default require('vitamin')(knex(dbConfig))
*/
module.exports = function initialize(knex) {
// register the default database connection
_registry2.default.connection('default', knex);
return vitamin;
};