diff --git a/src/Components/Editor/Actions/AddContainer.ts b/src/Components/Editor/Actions/AddContainer.ts index 227b73a..06100ea 100644 --- a/src/Components/Editor/Actions/AddContainer.ts +++ b/src/Components/Editor/Actions/AddContainer.ts @@ -301,26 +301,14 @@ function InitializeChildrenWithPattern( const configs: Map = new Map(configuration.AvailableContainers.map(config => [config.Type, config])); const patterns: Map = new Map(configuration.Patterns.map(pattern => [pattern.id, pattern])); const containerOrPattern = GetPattern(patternId, configs, patterns); - const pattern = containerOrPattern as IPattern | IAvailableContainer; - if (!('children' in pattern)) { - // containerOrPattern is not a pattern but a container - const container = containerOrPattern as IAvailableContainer; - // Add Container - AddNewContainerToParent( - container, - configuration, - containers, - newContainer, - 0, 0, - newCounters, - symbols - ); + if (containerOrPattern === undefined) { + console.warn(`[InitializeChildrenWithPattern] PatternId ${patternId} was neither found as Pattern nor as IAvailableContainer`); return; } // BFS over patterns - BuildPatterns(pattern, newContainer, configuration, containers, newCounters, symbols, configs, patterns); + BuildPatterns(containerOrPattern, newContainer, configuration, containers, newCounters, symbols, configs, patterns); } /** @@ -337,7 +325,7 @@ function InitializeChildrenWithPattern( * @param patterns */ function BuildPatterns( - rootPattern: IPattern, + rootPattern: ContainerOrPattern, newContainer: ContainerModel, configuration: IConfiguration, containers: Map,