@mongez/gnz
Version:
Generator Z, the next generation of scaffolding tools.
40 lines (39 loc) • 1.17 kB
JavaScript
;const generators = [];
/**
* Register the given generators
*/
function registerGenerators(...generatorsList) {
generators.push(...generatorsList);
}
/**
* Register the given generator
*/
function registerGenerator(generator) {
generators.push(generator);
}
/**
* Get all registered generators
*/
function getGeneratorsList() {
return generators;
}
/**
* Create a generator instance
*/
function createGenerator(generatorOptions) {
return {
...generatorOptions,
execute: (options) => {
for (const key in options) {
if (options[key] === undefined) {
delete options[key];
}
}
const optionsList = { ...generatorOptions.defaultOptions, ...options };
return {
...generatorOptions,
optionsList: optionsList,
};
},
};
}exports.createGenerator=createGenerator;exports.generators=generators;exports.getGeneratorsList=getGeneratorsList;exports.registerGenerator=registerGenerator;exports.registerGenerators=registerGenerators;//# sourceMappingURL=generators-list.js.map