mzinga
Version:
Node, React and MongoDB Headless CMS and Application Framework
24 lines (23 loc) • 2.79 kB
JavaScript
/* eslint-disable no-use-before-define */ /* eslint-disable no-nested-ternary */ "use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "buildConfig", {
enumerable: true,
get: function() {
return buildConfig;
}
});
const _sanitize = require("./sanitize");
async function buildConfig(config) {
if (Array.isArray(config.plugins)) {
const configAfterPlugins = await config.plugins.reduce(async (acc, plugin)=>{
const configAfterPlugin = await acc;
return plugin(configAfterPlugin);
}, Promise.resolve(config));
const sanitizedConfig = (0, _sanitize.sanitizeConfig)(configAfterPlugins);
return sanitizedConfig;
}
return (0, _sanitize.sanitizeConfig)(config);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvYnVpbGQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tdXNlLWJlZm9yZS1kZWZpbmUgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLW5lc3RlZC10ZXJuYXJ5ICovXG5pbXBvcnQgdHlwZSB7IENvbmZpZywgU2FuaXRpemVkQ29uZmlnIH0gZnJvbSAnLi90eXBlcydcblxuaW1wb3J0IHsgc2FuaXRpemVDb25maWcgfSBmcm9tICcuL3Nhbml0aXplJ1xuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBCdWlsZHMgYW5kIHZhbGlkYXRlcyBNWmluZ2EgY29uZmlndXJhdGlvblxuICogQHBhcmFtIGNvbmZpZyBNWmluZ2EgQ29uZmlnXG4gKiBAcmV0dXJucyBCdWlsdCBhbmQgc2FuaXRpemVkIE1aaW5nYSBDb25maWdcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGJ1aWxkQ29uZmlnKGNvbmZpZzogQ29uZmlnKTogUHJvbWlzZTxTYW5pdGl6ZWRDb25maWc+IHtcbiAgaWYgKEFycmF5LmlzQXJyYXkoY29uZmlnLnBsdWdpbnMpKSB7XG4gICAgY29uc3QgY29uZmlnQWZ0ZXJQbHVnaW5zID0gYXdhaXQgY29uZmlnLnBsdWdpbnMucmVkdWNlKGFzeW5jIChhY2MsIHBsdWdpbikgPT4ge1xuICAgICAgY29uc3QgY29uZmlnQWZ0ZXJQbHVnaW4gPSBhd2FpdCBhY2NcbiAgICAgIHJldHVybiBwbHVnaW4oY29uZmlnQWZ0ZXJQbHVnaW4pXG4gICAgfSwgUHJvbWlzZS5yZXNvbHZlKGNvbmZpZykpXG5cbiAgICBjb25zdCBzYW5pdGl6ZWRDb25maWcgPSBzYW5pdGl6ZUNvbmZpZyhjb25maWdBZnRlclBsdWdpbnMpXG5cbiAgICByZXR1cm4gc2FuaXRpemVkQ29uZmlnXG4gIH1cblxuICByZXR1cm4gc2FuaXRpemVDb25maWcoY29uZmlnKVxufVxuIl0sIm5hbWVzIjpbImJ1aWxkQ29uZmlnIiwiY29uZmlnIiwiQXJyYXkiLCJpc0FycmF5IiwicGx1Z2lucyIsImNvbmZpZ0FmdGVyUGx1Z2lucyIsInJlZHVjZSIsImFjYyIsInBsdWdpbiIsImNvbmZpZ0FmdGVyUGx1Z2luIiwiUHJvbWlzZSIsInJlc29sdmUiLCJzYW5pdGl6ZWRDb25maWciLCJzYW5pdGl6ZUNvbmZpZyJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7IiwibWFwcGluZ3MiOiJBQUFBLHVDQUF1QyxHQUN2QyxvQ0FBb0M7Ozs7K0JBVWRBOzs7ZUFBQUE7OzswQkFQUztBQU94QixlQUFlQSxZQUFZQyxNQUFjO0lBQzlDLElBQUlDLE1BQU1DLE9BQU8sQ0FBQ0YsT0FBT0csT0FBTyxHQUFHO1FBQ2pDLE1BQU1DLHFCQUFxQixNQUFNSixPQUFPRyxPQUFPLENBQUNFLE1BQU0sQ0FBQyxPQUFPQyxLQUFLQztZQUNqRSxNQUFNQyxvQkFBb0IsTUFBTUY7WUFDaEMsT0FBT0MsT0FBT0M7UUFDaEIsR0FBR0MsUUFBUUMsT0FBTyxDQUFDVjtRQUVuQixNQUFNVyxrQkFBa0JDLElBQUFBLHdCQUFjLEVBQUNSO1FBRXZDLE9BQU9PO0lBQ1Q7SUFFQSxPQUFPQyxJQUFBQSx3QkFBYyxFQUFDWjtBQUN4QiJ9