lib-tools
Version:
The lib-tools helps you simplify the build, bundle, test and npm packaging workflows for Typescript, JavaScript, Angular library projects and assets module projects.
52 lines • 7.58 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.applyEnvOverrides = void 0;
function applyEnvOverrides(overridableConfig, env) {
if (!overridableConfig.envOverrides || !Object.keys(overridableConfig.envOverrides).length) {
return;
}
const buildTargets = [];
if (env.production || env.prod) {
if (!buildTargets.includes('prod')) {
buildTargets.push('prod');
}
if (!buildTargets.includes('production')) {
buildTargets.push('production');
}
}
else if (env.dev || env.development) {
buildTargets.push('dev');
buildTargets.push('development');
}
const preDefinedKeys = ['prod', 'production', 'dev', 'development'];
Object.keys(env)
.filter((key) => !preDefinedKeys.includes(key.toLowerCase()) &&
!buildTargets.includes(key) &&
env[key] &&
(typeof env[key] === 'boolean' || env[key] === 'true'))
.forEach((key) => {
buildTargets.push(key);
});
Object.keys(overridableConfig.envOverrides).forEach((buildTargetKey) => {
const targetName = buildTargetKey;
const targets = targetName.split(',');
targets.forEach((t) => {
t = t.trim();
if (buildTargets.indexOf(t) > -1 && overridableConfig.envOverrides) {
const newConfig = overridableConfig.envOverrides[t];
if (newConfig && typeof newConfig === 'object') {
overrideActionConfig(overridableConfig, newConfig);
}
}
});
});
}
exports.applyEnvOverrides = applyEnvOverrides;
function overrideActionConfig(oldConfig, newConfig) {
Object.keys(newConfig)
.filter((key) => key !== 'envOverrides')
.forEach((key) => {
oldConfig[key] = JSON.parse(JSON.stringify(newConfig[key]));
});
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbHktZW52LW92ZXJyaWRlcy5qcyIsInNvdXJjZVJvb3QiOiIuLyIsInNvdXJjZXMiOlsiaGVscGVycy9hcHBseS1lbnYtb3ZlcnJpZGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLFNBQWdCLGlCQUFpQixDQUM3QixpQkFBaUQsRUFDakQsR0FBd0M7SUFFeEMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxFQUFFO1FBQ3hGLE9BQU87S0FDVjtJQUVELE1BQU0sWUFBWSxHQUFhLEVBQUUsQ0FBQztJQUVsQyxJQUFJLEdBQUcsQ0FBQyxVQUFVLElBQUksR0FBRyxDQUFDLElBQUksRUFBRTtRQUM1QixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNoQyxZQUFZLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzdCO1FBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDdEMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUNuQztLQUNKO1NBQU0sSUFBSSxHQUFHLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxXQUFXLEVBQUU7UUFDbkMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QixZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBQ3BDO0lBRUQsTUFBTSxjQUFjLEdBQUcsQ0FBQyxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxhQUFhLENBQUMsQ0FBQztJQUVwRSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztTQUNYLE1BQU0sQ0FDSCxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQ0osQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUMzQyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO1FBQzNCLEdBQUcsQ0FBQyxHQUFHLENBQUM7UUFDUixDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLFNBQVMsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssTUFBTSxDQUFDLENBQzdEO1NBQ0EsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7UUFDYixZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzNCLENBQUMsQ0FBQyxDQUFDO0lBRVAsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxjQUFzQixFQUFFLEVBQUU7UUFDM0UsTUFBTSxVQUFVLEdBQUcsY0FBYyxDQUFDO1FBQ2xDLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2xCLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDYixJQUFJLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksaUJBQWlCLENBQUMsWUFBWSxFQUFFO2dCQUNoRSxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BELElBQUksU0FBUyxJQUFJLE9BQU8sU0FBUyxLQUFLLFFBQVEsRUFBRTtvQkFDNUMsb0JBQW9CLENBQUMsaUJBQStDLEVBQUUsU0FBUyxDQUFDLENBQUM7aUJBQ3BGO2FBQ0o7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQWpERCw4Q0FpREM7QUFFRCxTQUFTLG9CQUFvQixDQUFDLFNBQXFDLEVBQUUsU0FBcUM7SUFDdEcsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7U0FDakIsTUFBTSxDQUFDLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssY0FBYyxDQUFDO1NBQy9DLE9BQU8sQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFO1FBQ3JCLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQVksQ0FBQztJQUMzRSxDQUFDLENBQUMsQ0FBQztBQUNYLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVycmlkYWJsZUNvbmZpZyB9IGZyb20gJy4uL21vZGVscyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBhcHBseUVudk92ZXJyaWRlczxUQ29uZmlnQmFzZT4oXG4gICAgb3ZlcnJpZGFibGVDb25maWc6IE92ZXJyaWRhYmxlQ29uZmlnPFRDb25maWdCYXNlPixcbiAgICBlbnY6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB8IHN0cmluZyB9XG4pOiB2b2lkIHtcbiAgICBpZiAoIW92ZXJyaWRhYmxlQ29uZmlnLmVudk92ZXJyaWRlcyB8fCAhT2JqZWN0LmtleXMob3ZlcnJpZGFibGVDb25maWcuZW52T3ZlcnJpZGVzKS5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGJ1aWxkVGFyZ2V0czogc3RyaW5nW10gPSBbXTtcblxuICAgIGlmIChlbnYucHJvZHVjdGlvbiB8fCBlbnYucHJvZCkge1xuICAgICAgICBpZiAoIWJ1aWxkVGFyZ2V0cy5pbmNsdWRlcygncHJvZCcpKSB7XG4gICAgICAgICAgICBidWlsZFRhcmdldHMucHVzaCgncHJvZCcpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghYnVpbGRUYXJnZXRzLmluY2x1ZGVzKCdwcm9kdWN0aW9uJykpIHtcbiAgICAgICAgICAgIGJ1aWxkVGFyZ2V0cy5wdXNoKCdwcm9kdWN0aW9uJyk7XG4gICAgICAgIH1cbiAgICB9IGVsc2UgaWYgKGVudi5kZXYgfHwgZW52LmRldmVsb3BtZW50KSB7XG4gICAgICAgIGJ1aWxkVGFyZ2V0cy5wdXNoKCdkZXYnKTtcbiAgICAgICAgYnVpbGRUYXJnZXRzLnB1c2goJ2RldmVsb3BtZW50Jyk7XG4gICAgfVxuXG4gICAgY29uc3QgcHJlRGVmaW5lZEtleXMgPSBbJ3Byb2QnLCAncHJvZHVjdGlvbicsICdkZXYnLCAnZGV2ZWxvcG1lbnQnXTtcblxuICAgIE9iamVjdC5rZXlzKGVudilcbiAgICAgICAgLmZpbHRlcihcbiAgICAgICAgICAgIChrZXkpID0+XG4gICAgICAgICAgICAgICAgIXByZURlZmluZWRLZXlzLmluY2x1ZGVzKGtleS50b0xvd2VyQ2FzZSgpKSAmJlxuICAgICAgICAgICAgICAgICFidWlsZFRhcmdldHMuaW5jbHVkZXMoa2V5KSAmJlxuICAgICAgICAgICAgICAgIGVudltrZXldICYmXG4gICAgICAgICAgICAgICAgKHR5cGVvZiBlbnZba2V5XSA9PT0gJ2Jvb2xlYW4nIHx8IGVudltrZXldID09PSAndHJ1ZScpXG4gICAgICAgIClcbiAgICAgICAgLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgICAgICAgYnVpbGRUYXJnZXRzLnB1c2goa2V5KTtcbiAgICAgICAgfSk7XG5cbiAgICBPYmplY3Qua2V5cyhvdmVycmlkYWJsZUNvbmZpZy5lbnZPdmVycmlkZXMpLmZvckVhY2goKGJ1aWxkVGFyZ2V0S2V5OiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgdGFyZ2V0TmFtZSA9IGJ1aWxkVGFyZ2V0S2V5O1xuICAgICAgICBjb25zdCB0YXJnZXRzID0gdGFyZ2V0TmFtZS5zcGxpdCgnLCcpO1xuICAgICAgICB0YXJnZXRzLmZvckVhY2goKHQpID0+IHtcbiAgICAgICAgICAgIHQgPSB0LnRyaW0oKTtcbiAgICAgICAgICAgIGlmIChidWlsZFRhcmdldHMuaW5kZXhPZih0KSA+IC0xICYmIG92ZXJyaWRhYmxlQ29uZmlnLmVudk92ZXJyaWRlcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5ld0NvbmZpZyA9IG92ZXJyaWRhYmxlQ29uZmlnLmVudk92ZXJyaWRlc1t0XTtcbiAgICAgICAgICAgICAgICBpZiAobmV3Q29uZmlnICYmIHR5cGVvZiBuZXdDb25maWcgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJyaWRlQWN0aW9uQ29uZmlnKG92ZXJyaWRhYmxlQ29uZmlnIGFzIHsgW2tleTogc3RyaW5nXTogdW5rbm93biB9LCBuZXdDb25maWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfSk7XG59XG5cbmZ1bmN0aW9uIG92ZXJyaWRlQWN0aW9uQ29uZmlnKG9sZENvbmZpZzogeyBba2V5OiBzdHJpbmddOiB1bmtub3duIH0sIG5ld0NvbmZpZzogeyBba2V5OiBzdHJpbmddOiB1bmtub3duIH0pOiB2b2lkIHtcbiAgICBPYmplY3Qua2V5cyhuZXdDb25maWcpXG4gICAgICAgIC5maWx0ZXIoKGtleTogc3RyaW5nKSA9PiBrZXkgIT09ICdlbnZPdmVycmlkZXMnKVxuICAgICAgICAuZm9yRWFjaCgoa2V5OiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgIG9sZENvbmZpZ1trZXldID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShuZXdDb25maWdba2V5XSkpIGFzIHVua25vd247XG4gICAgICAgIH0pO1xufVxuIl19