loopback4-seeder
Version:
Run seeders to populate database
39 lines • 1.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SeederDefaults = exports.SeederBooter = void 0;
const tslib_1 = require("tslib");
const boot_1 = require("@loopback/boot");
const core_1 = require("@loopback/core");
const index_1 = require("../index");
let SeederBooter = class SeederBooter extends boot_1.BaseArtifactBooter {
constructor(app, projectRoot, options = {}) {
super(projectRoot,
// Set Seeder Booter Options if passed in via bootConfig
Object.assign({}, exports.SeederDefaults, options));
this.app = app;
}
async load() {
await super.load();
for (const cls of this.classes) {
(0, index_1.debug)('[INFO] Bind class: %s', cls.name);
this.app.add((0, core_1.createBindingFromClass)(cls).tag('seed'));
}
}
};
SeederBooter = (0, tslib_1.__decorate)([
(0, boot_1.booter)('seederBooter'),
(0, tslib_1.__param)(0, (0, core_1.inject)(core_1.CoreBindings.APPLICATION_INSTANCE)),
(0, tslib_1.__param)(1, (0, core_1.inject)(boot_1.BootBindings.PROJECT_ROOT)),
(0, tslib_1.__param)(2, (0, core_1.config)()),
(0, tslib_1.__metadata)("design:paramtypes", [core_1.Application, String, Object])
], SeederBooter);
exports.SeederBooter = SeederBooter;
/**
* Default ArtifactOptions for SeederBooter.
*/
exports.SeederDefaults = {
dirs: ['seeders'],
extensions: ['.seeder.js'],
nested: true,
};
//# sourceMappingURL=seeder.booter.js.map