UNPKG

infrastructure-components

Version:

Infrastructure-Components configure the infrastructure of your React-App as part of your React-Components.

48 lines 2.6 kB
"use strict"; var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; result["default"] = mod; return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const deepmerge = __importStar(require("deepmerge")); /** * Merges a list of ConfigParseResults into a single ParseResult, with a single sls-congiguration * * @param results */ function mergeParseResults(results) { //console.log("mergeParseResults: ", results); return results.reduce((merged, item) => { //console.log("afterMerge: ", merged.slsConfigs); //console.log("mergeParseResults: ", item.slsConfigs); return { stackType: item.stackType !== undefined ? item.stackType : merged.stackType, slsConfigs: deepmerge.all([ ...(Array.isArray(item.slsConfigs) ? item.slsConfigs : [item.slsConfigs]) ], merged.slsConfigs), webpackConfigs: merged.webpackConfigs.concat(item.webpackConfigs), postBuilds: merged.postBuilds.concat(item.postBuilds), environments: (merged.environments !== undefined ? merged.environments : []).concat(item.environments !== undefined ? item.environments : []), iamRoleStatements: merged.iamRoleStatements.concat(item.iamRoleStatements !== undefined ? item.iamRoleStatements : []), // usually, these fields should not be defined here, but only from the top-level configuration stackName: item.stackName !== undefined ? item.stackName : merged.stackName, assetsPath: item.assetsPath !== undefined ? item.assetsPath : merged.assetsPath, buildPath: item.buildPath !== undefined ? item.buildPath : merged.buildPath, region: item.region !== undefined ? item.region : merged.region, domain: item.domain !== undefined ? item.domain : merged.domain, certArn: item.certArn !== undefined ? item.certArn : merged.certArn, supportOfflineStart: item.supportOfflineStart !== undefined ? item.supportOfflineStart : merged.supportOfflineStart, supportCreateDomain: item.supportCreateDomain !== undefined ? item.supportCreateDomain : merged.supportCreateDomain }; }, { slsConfigs: {}, webpackConfigs: [], postBuilds: [], iamRoleStatements: [] }); } exports.mergeParseResults = mergeParseResults; //# sourceMappingURL=config-parse-result.js.map