@emdaer/core
Version:
emdaer core
25 lines (19 loc) • 579 B
JavaScript
/* */
/* eslint-disable no-use-before-define */
const resolvePlugin = require('./resolvePlugin');
async function executeNested(options) {
if (options && options.from) {
const [utilityPlugin, utilityOptions] = options.from;
return Object.assign({}, options, {
content: await executePlugin([utilityPlugin, utilityOptions]),
});
}
return options;
}
/**
* Executes a plugin to generate content
*/
async function executePlugin([plugin, options]) {
return (await resolvePlugin(plugin))(await executeNested(options));
}
module.exports = executePlugin;