UNPKG

@itrocks/storage

Version:

Transforms model objects to and from storage systems

20 lines 939 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DataSource = void 0; exports.createDataSource = createDataSource; exports.dataSource = dataSource; exports.ds = dataSource; const class_type_1 = require("@itrocks/class-type"); const data_source_1 = require("./data-source"); Object.defineProperty(exports, "DataSource", { enumerable: true, get: function () { return data_source_1.DataSource; } }); let dataSources = {}; function createDataSource(config, dataSource = 'main') { const { engine, ...engineConfig } = config; const module = require(engine); const type = module.default ?? Object.values(module).find(any => (0, class_type_1.isAnyType)(any)); return dataSources[dataSource] = new type(engineConfig); } function dataSource(dataSource = 'main') { return dataSources[dataSource] ?? (() => { throw 'Unknown data source ' + dataSource; })(); } //# sourceMappingURL=storage.js.map