codecharta-visualization 1.113.0 → 1.115.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -1
- package/app/app.module.ts +1 -11
- package/app/app.scss +0 -2
- package/app/codeCharta/assets/codecharta_logo.svg +1 -0
- package/app/codeCharta/codeCharta.component.html +10 -7
- package/app/codeCharta/codeCharta.component.scss +22 -51
- package/app/codeCharta/codeCharta.component.ts +5 -7
- package/app/codeCharta/codeCharta.model.ts +2 -5
- package/app/codeCharta/e2e/__snapshots__/logo.e2e.ts.snap +2 -2
- package/app/codeCharta/e2e/logo.po.ts +7 -7
- package/app/codeCharta/e2e/url.e2e.ts +2 -2
- package/app/codeCharta/index.d.ts +1 -1
- package/app/codeCharta/model/customConfig/customConfig.api.model.ts +1 -0
- package/app/codeCharta/services/isAttributeSideBarVisible.service.ts +2 -2
- package/app/codeCharta/services/loadFile/fileRoot.ts +8 -0
- package/app/codeCharta/services/loadFile/loadFile.service.spec.ts +12 -11
- package/app/codeCharta/services/loadFile/loadFile.service.ts +10 -12
- package/app/codeCharta/services/loadInitialFile/loadInitialFile.service.spec.ts +1 -1
- package/app/codeCharta/services/loadInitialFile/loadInitialFile.service.ts +7 -7
- package/app/codeCharta/services/version/version.service.ts +2 -2
- package/app/codeCharta/state/angular-redux/effects/createEffect.spec.ts +1 -2
- package/app/codeCharta/state/effects/addBlacklistItemsIfNotResultsInEmptyMap/addBlacklistItemsIfNotResultsInEmptyMap.effect.spec.ts +4 -9
- package/app/codeCharta/state/effects/addBlacklistItemsIfNotResultsInEmptyMap/resultsInEmptyMap.ts +2 -2
- package/app/codeCharta/state/effects/autoFitCodeMapChange/autoFitCodeMap.effect.spec.ts +1 -2
- package/app/codeCharta/state/effects/autoFitCodeMapChange/autoFitCodeMap.effect.ts +5 -5
- package/app/codeCharta/state/effects/linkColorMetricToHeightMetric/linkColorMetricToHeightMetric.effect.ts +2 -2
- package/app/codeCharta/state/effects/nodeContextMenu/excludeButton/excludeButton.component.ts +6 -5
- package/app/codeCharta/state/effects/nodeContextMenu/flattenButtons/flattenButtons.component.html +2 -2
- package/app/codeCharta/state/effects/nodeContextMenu/flattenButtons/flattenButtons.component.spec.ts +4 -4
- package/app/codeCharta/state/effects/nodeContextMenu/flattenButtons/flattenButtons.component.ts +7 -6
- package/app/codeCharta/state/effects/nodeContextMenu/focusButtons/focusButtons.component.ts +4 -3
- package/app/codeCharta/state/effects/nodeContextMenu/highlightButtons/highlightButtons.component.spec.ts +5 -5
- package/app/codeCharta/state/effects/nodeContextMenu/highlightButtons/highlightButtons.component.ts +4 -6
- package/app/codeCharta/state/effects/nodeContextMenu/markFolderRow/markFolderRow.component.ts +5 -4
- package/app/codeCharta/state/effects/nodeContextMenu/nodeContextMenu.service.ts +2 -2
- package/app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.html +1 -1
- package/app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.scss +6 -7
- package/app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.spec.ts +1 -2
- package/app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.ts +5 -4
- package/app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.module.ts +1 -2
- package/app/codeCharta/state/effects/nodeContextMenu/openNodeContextMenu.effect.ts +1 -4
- package/app/codeCharta/state/effects/renderCodeMapEffect/actionsRequiringRerender.ts +3 -1
- package/app/codeCharta/state/effects/renderCodeMapEffect/renderCodeMap.effect.ts +4 -4
- package/app/codeCharta/state/effects/resetChosenMetrics/resetChosenMetrics.effect.spec.ts +25 -19
- package/app/codeCharta/state/effects/resetChosenMetrics/resetChosenMetrics.effect.ts +6 -5
- package/app/codeCharta/state/effects/resetSelectedEdgeMetricWhenItDoesntExistAnymore/resetSelectedEdgeMetricWhenItDoesntExistAnymore.effect.spec.ts +13 -13
- package/app/codeCharta/state/effects/resetSelectedEdgeMetricWhenItDoesntExistAnymore/resetSelectedEdgeMetricWhenItDoesntExistAnymore.effect.ts +6 -6
- package/app/codeCharta/state/effects/unfocusNodes/unfocusNodes.effect.ts +2 -2
- package/app/codeCharta/state/effects/updateEdgePreviews/updateEdgePreviews.effect.ts +2 -2
- package/app/codeCharta/state/effects/updateEdgePreviews/utils/edgePreviewNodes.selector.ts +5 -3
- package/app/codeCharta/state/effects/updateFileSettings/updateFileSettings.effect.ts +2 -2
- package/app/codeCharta/state/effects/updateFileSettings/utils/__snapshots__/blacklist.merger.spec.ts.snap +9 -9
- package/app/codeCharta/state/effects/updateFileSettings/utils/__snapshots__/edges.merger.spec.ts.snap +16 -16
- package/app/codeCharta/state/effects/updateFileSettings/utils/__snapshots__/markedPackages.merger.spec.ts.snap +10 -10
- package/app/codeCharta/state/effects/updateFileSettings/utils/blacklist.merger.spec.ts +6 -6
- package/app/codeCharta/state/effects/updateVisibleTopLabels/updateVisibleTopLabels.effect.ts +2 -2
- package/app/codeCharta/state/selectors/accumulatedData/accumulatedData.selector.spec.ts +76 -0
- package/app/codeCharta/state/selectors/accumulatedData/accumulatedData.selector.ts +7 -12
- package/app/codeCharta/state/selectors/accumulatedData/metricData/edgeMetricData.calculator.spec.ts +46 -0
- package/app/codeCharta/state/selectors/accumulatedData/metricData/{edgeMetricData.selector.ts → edgeMetricData.calculator.ts} +12 -28
- package/app/codeCharta/state/selectors/accumulatedData/metricData/metricData.selector.ts +10 -6
- package/app/codeCharta/state/selectors/accumulatedData/metricData/metricNames.selector.spec.ts +5 -5
- package/app/codeCharta/state/selectors/accumulatedData/metricData/metricNames.selector.ts +2 -2
- package/app/codeCharta/state/selectors/accumulatedData/metricData/{nodeMetricData.selector.spec.ts → nodeMetricData.calculator.spec.ts} +3 -4
- package/app/codeCharta/state/selectors/accumulatedData/metricData/{nodeMetricData.selector.ts → nodeMetricData.calculator.ts} +2 -7
- package/app/codeCharta/state/selectors/accumulatedData/metricData/selectedColorMetricData.selector.ts +4 -4
- package/app/codeCharta/state/selectors/accumulatedData/utils/addEdgeMetricsForLeaves.ts +3 -2
- package/app/codeCharta/state/selectors/accumulatedData/utils/getMetricValuesForNode.spec.ts +4 -11
- package/app/codeCharta/state/selectors/accumulatedData/utils/getMetricValuesForNode.ts +2 -2
- package/app/codeCharta/state/selectors/allNecessaryRenderDataAvailable/areAllNecessaryRenderDataAvailable.selector.ts +7 -6
- package/app/codeCharta/state/selectors/primaryMetrics/primaryMetrics.selector.ts +27 -11
- package/app/codeCharta/state/store/appSettings/appSettings.actions.ts +3 -3
- package/app/codeCharta/state/store/appSettings/appSettings.reducer.ts +3 -3
- package/app/codeCharta/state/store/appSettings/enableFloorLabels/enableFloorLabels.actions.ts +21 -0
- package/app/codeCharta/state/store/appSettings/enableFloorLabels/enableFloorLabels.reducer.spec.ts +26 -0
- package/app/codeCharta/state/store/appSettings/enableFloorLabels/enableFloorLabels.reducer.ts +10 -0
- package/app/codeCharta/state/store/appSettings/{dynamicMargin/dynamicMargin.selector.ts → enableFloorLabels/enableFloorLabels.selector.ts} +1 -1
- package/app/codeCharta/state/store/appSettings/invertArea/invertArea.actions.ts +1 -12
- package/app/codeCharta/state/store/appSettings/invertArea/invertArea.reducer.ts +2 -4
- package/app/codeCharta/state/store/dynamicSettings/colorRange/resetColorRange.effect.ts +1 -1
- package/app/codeCharta/state/store/dynamicSettings/focusedNodePath/focusedNodePath.reducer.ts +2 -2
- package/app/codeCharta/state/store/fileSettings/blacklist/blacklist.reducer.spec.ts +5 -9
- package/app/codeCharta/state/store/state.reducer.spec.ts +3 -3
- package/app/codeCharta/ui/actionIcon/actionIcon.component.ts +4 -3
- package/app/codeCharta/ui/actionIcon/actionIcon.module.ts +1 -2
- package/app/codeCharta/ui/attributeSideBar/attributeSideBar.component.scss +1 -1
- package/app/codeCharta/ui/attributeSideBar/attributeSideBar.component.spec.ts +59 -7
- package/app/codeCharta/ui/attributeSideBar/attributeSideBar.component.ts +5 -7
- package/app/codeCharta/ui/attributeSideBar/attributeSideBar.module.ts +2 -2
- package/app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/attributeSideBarHeaderSection.component.ts +5 -4
- package/app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/nodePath/nodePath.component.ts +4 -3
- package/app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetric/attributeSideBarPrimaryMetric.component.ts +4 -3
- package/app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetrics.component.html +10 -5
- package/app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetrics.component.ts +4 -3
- package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.html +5 -1
- package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.ts +4 -3
- package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/secondaryMetrics.selector.spec.ts +29 -4
- package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/secondaryMetrics.selector.ts +11 -4
- package/app/codeCharta/ui/attributeSideBar/attributeTypeSelector/attributeTypeSelector.component.scss +4 -6
- package/app/codeCharta/ui/attributeSideBar/attributeTypeSelector/attributeTypeSelector.component.ts +5 -4
- package/app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.spec.ts +3 -4
- package/app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.ts +4 -3
- package/app/codeCharta/ui/attributeSideBar/util/edge.ts +7 -0
- package/app/codeCharta/ui/attributeSideBar/util/metric.ts +2 -0
- package/app/codeCharta/ui/{legendPanel/selectors/legendMetric.ts → attributeSideBar/util/metricDescriptors.ts} +10 -4
- package/app/codeCharta/ui/codeMap/__snapshots__/codeMap.arrow.service.spec.ts.snap +16 -16
- package/app/codeCharta/ui/codeMap/__snapshots__/codeMap.render.service.spec.ts.snap +19 -19
- package/app/codeCharta/ui/codeMap/codeMap.arrow.service.spec.ts +5 -4
- package/app/codeCharta/ui/codeMap/codeMap.arrow.service.ts +34 -29
- package/app/codeCharta/ui/codeMap/codeMap.component.ts +9 -8
- package/app/codeCharta/ui/codeMap/codeMap.label.service.ts +5 -5
- package/app/codeCharta/ui/codeMap/codeMap.mouseEvent.service.spec.ts +18 -6
- package/app/codeCharta/ui/codeMap/codeMap.mouseEvent.service.ts +30 -25
- package/app/codeCharta/ui/codeMap/codeMap.render.service.spec.ts +8 -6
- package/app/codeCharta/ui/codeMap/codeMap.render.service.ts +18 -13
- package/app/codeCharta/ui/codeMap/threeViewer/threeOrbitControls.service.spec.ts +3 -3
- package/app/codeCharta/ui/codeMap/threeViewer/threeOrbitControls.service.ts +9 -9
- package/app/codeCharta/ui/codeMap/threeViewer/threeRenderer.service.ts +3 -3
- package/app/codeCharta/ui/codeMap/threeViewer/threeSceneService.spec.ts +12 -2
- package/app/codeCharta/ui/codeMap/threeViewer/threeSceneService.ts +19 -22
- package/app/codeCharta/ui/codeMap/threeViewer/threeStats.service.spec.ts +27 -32
- package/app/codeCharta/ui/codeMap/threeViewer/threeStats.service.ts +3 -4
- package/app/codeCharta/ui/codeMap/threeViewer/threeViewer.service.spec.ts +2 -2
- package/app/codeCharta/ui/codeMap/threeViewer/threeViewer.service.ts +6 -6
- package/app/codeCharta/ui/colorPicker/colorPicker.component.spec.ts +5 -2
- package/app/codeCharta/ui/colorPicker/colorPicker.component.ts +3 -2
- package/app/codeCharta/ui/colorPickerForMapColor/colorPickerForMapColor.component.ts +5 -4
- package/app/codeCharta/ui/copyToClipboardButton/copyToClipboard.service.ts +2 -2
- package/app/codeCharta/ui/copyToClipboardButton/copyToClipboardButton.component.ts +4 -3
- package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.component.spec.ts +17 -10
- package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.component.ts +4 -3
- package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.module.ts +3 -3
- package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.component.html +14 -2
- package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.component.ts +23 -13
- package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.spec.ts +23 -9
- package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomDialog.component.scss +7 -6
- package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndPurgeConfigs.component.ts +5 -4
- package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndPurgeConfigs.spec.ts +3 -3
- package/app/codeCharta/ui/customConfigs/customConfigHelper.service.ts +2 -2
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfig2ApplicableColor.pipe.ts +2 -2
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfig2ApplicableMessage.pipe.ts +2 -2
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.html +15 -12
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.scss +12 -8
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.ts +7 -6
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.spec.ts +0 -6
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.html +21 -4
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.scss +38 -0
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.spec.ts +32 -7
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.ts +17 -2
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/getMissingCustomConfigModeAndMaps.spec.ts +1 -2
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.html +8 -8
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.scss +27 -31
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.spec.ts +6 -3
- package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.ts +5 -4
- package/app/codeCharta/ui/customConfigs/customConfigList/getCustomConfigItemGroups.spec.ts +5 -1
- package/app/codeCharta/ui/customConfigs/customConfigList/getCustomConfigItemGroups.ts +2 -1
- package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.html +12 -0
- package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.scss +31 -0
- package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.ts +12 -0
- package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.html +3 -0
- package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.spec.ts +90 -0
- package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.ts +33 -0
- package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.module.ts +14 -0
- package/app/codeCharta/ui/customConfigs/customConfigs.component.spec.ts +5 -4
- package/app/codeCharta/ui/customConfigs/customConfigs.component.ts +6 -4
- package/app/codeCharta/ui/customConfigs/customConfigs.module.ts +14 -3
- package/app/codeCharta/ui/customConfigs/downloadCustomConfigsButton/downloadCustomConfigsButton.component.ts +4 -3
- package/app/codeCharta/ui/customConfigs/uploadCustomConfigButton/uploadCustomConfigButton.component.ts +3 -2
- package/app/codeCharta/ui/customConfigs/uploadCustomConfigButton/uploadCustomConfigButton.module.ts +1 -2
- package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.html +6 -6
- package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.scss +6 -14
- package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.ts +4 -3
- package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.module.ts +1 -2
- package/app/codeCharta/ui/dialogs/confirmationDialog/confirmationDialog.component.scss +3 -3
- package/app/codeCharta/ui/dialogs/confirmationDialog/confirmationDialog.component.ts +4 -3
- package/app/codeCharta/ui/dialogs/errorDialog/errorDialog.component.po.ts +4 -9
- package/app/codeCharta/ui/dialogs/errorDialog/errorDialog.component.ts +3 -2
- package/app/codeCharta/ui/export3DMapButton/export3DMapButton.component.ts +4 -3
- package/app/codeCharta/ui/fileExtensionBar/distributionMetricChooser/distributionMetricChooser.component.ts +4 -3
- package/app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.scss +5 -6
- package/app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.ts +5 -4
- package/app/codeCharta/ui/fileExtensionBar/fileExtensionBar.module.ts +1 -2
- package/app/codeCharta/ui/fileExtensionBar/selectors/fileExtensionCalculator.spec.ts +22 -22
- package/app/codeCharta/ui/fileExtensionBar/selectors/fileExtensionCalculator.ts +1 -1
- package/app/codeCharta/ui/filePanel/filePanel.component.html +1 -1
- package/app/codeCharta/ui/filePanel/filePanel.component.scss +7 -27
- package/app/codeCharta/ui/filePanel/filePanel.component.spec.ts +1 -2
- package/app/codeCharta/ui/filePanel/filePanel.component.ts +5 -4
- package/app/codeCharta/ui/filePanel/filePanel.module.ts +2 -2
- package/app/codeCharta/ui/filePanel/filePanel.po.ts +6 -4
- package/app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.html +26 -24
- package/app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.scss +6 -0
- package/app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.ts +5 -3
- package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.html +1 -0
- package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.scss +2 -9
- package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.spec.ts +1 -1
- package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.ts +5 -4
- package/app/codeCharta/ui/filePanel/filePanelFileSelector/removeFileButton/removeFileButton.component.scss +1 -1
- package/app/codeCharta/ui/filePanel/filePanelFileSelector/removeFileButton/removeFileButton.component.ts +5 -4
- package/app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.html +1 -1
- package/app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.ts +4 -6
- package/app/codeCharta/ui/filePanel/fileSelectionMode.service.ts +2 -2
- package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.html +1 -1
- package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.scss +12 -8
- package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.spec.ts +2 -2
- package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.ts +4 -3
- package/app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.html +8 -8
- package/app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.ts +5 -4
- package/app/codeCharta/ui/legendPanel/legendMarkedPackages/legendMarkedPackages.component.ts +5 -4
- package/app/codeCharta/ui/legendPanel/legendPanel.component.html +12 -6
- package/app/codeCharta/ui/legendPanel/legendPanel.component.spec.ts +10 -0
- package/app/codeCharta/ui/legendPanel/legendPanel.component.ts +5 -7
- package/app/codeCharta/ui/legendPanel/selectors/legendAreaMetric.selector.ts +4 -4
- package/app/codeCharta/ui/legendPanel/selectors/legendColorMetric.selector.ts +4 -4
- package/app/codeCharta/ui/legendPanel/selectors/legendEdgeMetric.selector.spec.ts +10 -4
- package/app/codeCharta/ui/legendPanel/selectors/legendEdgeMetric.selector.ts +7 -7
- package/app/codeCharta/ui/legendPanel/selectors/legendHeightMetric.selector.ts +4 -4
- package/app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.scss +1 -1
- package/app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.ts +5 -4
- package/app/codeCharta/ui/metricChooser/metricChooser.component.html +1 -2
- package/app/codeCharta/ui/metricChooser/metricChooser.component.scss +22 -13
- package/app/codeCharta/ui/metricChooser/metricChooser.component.spec.ts +9 -7
- package/app/codeCharta/ui/metricChooser/metricChooser.component.ts +11 -10
- package/app/codeCharta/ui/metricChooser/metricChooser.module.ts +1 -2
- package/app/codeCharta/ui/metricChooser/metricChooserTypeHovered/metricChooserTypeHovered.component.spec.ts +1 -2
- package/app/codeCharta/ui/metricChooser/metricChooserTypeHovered/metricChooserTypeHovered.component.ts +4 -3
- package/app/codeCharta/ui/metricChooser/metricChooserValueHovered/metricChooserValueHovered.component.spec.ts +1 -2
- package/app/codeCharta/ui/metricChooser/metricChooserValueHovered/metricChooserValueHovered.component.ts +4 -3
- package/app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.scss +21 -3
- package/app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.ts +5 -4
- package/app/codeCharta/ui/ribbonBar/areaMetricChooser/areaMetricChooser.component.spec.ts +9 -6
- package/app/codeCharta/ui/ribbonBar/areaMetricChooser/areaMetricChooser.component.ts +4 -3
- package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.html +13 -21
- package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.scss +12 -3
- package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.spec.ts +32 -13
- package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.ts +18 -11
- package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.module.ts +1 -2
- package/app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.scss +2 -3
- package/app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.ts +5 -4
- package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.html +12 -3
- package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.spec.ts +10 -2
- package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.ts +3 -2
- package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/riskProfileBar.directive.ts +2 -2
- package/app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/artificialIntelligence.selector.spec.ts +8 -18
- package/app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/artificialIntelligence.selector.ts +9 -13
- package/app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.html +11 -1
- package/app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.spec.ts +4 -4
- package/app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.ts +6 -5
- package/app/codeCharta/ui/ribbonBar/colorMetricChooser/colorMetricChooser.component.spec.ts +9 -6
- package/app/codeCharta/ui/ribbonBar/colorMetricChooser/colorMetricChooser.component.ts +4 -3
- package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.html +11 -10
- package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.scss +17 -12
- package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.spec.ts +1 -2
- package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.ts +5 -4
- package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/metricColorRangeSlider.component.ts +5 -4
- package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSlider.component.html +2 -2
- package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSlider.component.scss +21 -6
- package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSlider.component.ts +6 -5
- package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSliderLabels/rangeSliderLabels.component.spec.ts +2 -2
- package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSliderLabels/rangeSliderLabels.component.ts +5 -4
- package/app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.scss +1 -1
- package/app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.spec.ts +8 -6
- package/app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.ts +5 -4
- package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeMetricToggle/edgeMetricToggle.component.ts +4 -4
- package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.html +14 -15
- package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.spec.ts +1 -1
- package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.ts +4 -3
- package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/selectors/amountOfBuildingsWithSelectedEdgeMetric.selector.ts +3 -3
- package/app/codeCharta/ui/ribbonBar/heightMetricChooser/areaMetricChooser.component.ts +4 -3
- package/app/codeCharta/ui/ribbonBar/heightMetricChooser/heightMetricChooser.component.spec.ts +9 -6
- package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.html +15 -19
- package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.spec.ts +3 -2
- package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.ts +5 -6
- package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.html +1 -1
- package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.scss +2 -0
- package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.spec.ts +4 -4
- package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.ts +5 -4
- package/app/codeCharta/ui/ribbonBar/ribbonBar.component.html +21 -8
- package/app/codeCharta/ui/ribbonBar/ribbonBar.component.scss +18 -8
- package/app/codeCharta/ui/ribbonBar/ribbonBar.component.spec.ts +23 -25
- package/app/codeCharta/ui/ribbonBar/ribbonBar.component.ts +7 -6
- package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.html +1 -1
- package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.scss +9 -7
- package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.spec.ts +10 -3
- package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.ts +7 -10
- package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.module.ts +1 -2
- package/app/codeCharta/ui/ribbonBar/showScenariosButton/scenario.service.ts +6 -6
- package/app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.scss +2 -2
- package/app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.ts +5 -4
- package/app/codeCharta/ui/ribbonBar/showScenariosButton/showScenariosButton.component.ts +5 -4
- package/app/codeCharta/ui/screenshotButton/screenshotButton.component.ts +8 -7
- package/app/codeCharta/ui/searchPanel/blacklistPanel/blacklistPanel.component.scss +2 -2
- package/app/codeCharta/ui/searchPanel/blacklistPanel/blacklistPanel.component.spec.ts +3 -4
- package/app/codeCharta/ui/searchPanel/blacklistPanel/blacklistPanel.component.ts +8 -7
- package/app/codeCharta/ui/searchPanel/blacklistPanel/createBlacklistItemSelector.spec.ts +10 -10
- package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeView.component.scss +14 -11
- package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeView.component.ts +5 -5
- package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemIcon/mapTreeViewItemIcon.component.ts +3 -2
- package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemName/mapTreeViewItemName.component.html +1 -1
- package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemName/mapTreeViewItemName.component.spec.ts +53 -0
- package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemName/mapTreeViewItemName.component.ts +4 -3
- package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.html +2 -2
- package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.ts +3 -2
- package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewLevel/mapTreeViewLevel.component.ts +4 -3
- package/app/codeCharta/ui/searchPanel/matchingFilesCounter/matchingFilesCounter.component.html +1 -1
- package/app/codeCharta/ui/searchPanel/matchingFilesCounter/matchingFilesCounter.component.scss +2 -2
- package/app/codeCharta/ui/searchPanel/matchingFilesCounter/matchingFilesCounter.component.ts +5 -4
- package/app/codeCharta/ui/searchPanel/matchingFilesCounter/selectors/matchingFilesCounter.selector.ts +4 -4
- package/app/codeCharta/ui/searchPanel/searchBar/blacklistSearchPattern.effect.spec.ts +5 -7
- package/app/codeCharta/ui/searchPanel/searchBar/blacklistSearchPattern.effect.ts +3 -4
- package/app/codeCharta/ui/searchPanel/searchBar/searchBar.component.scss +0 -3
- package/app/codeCharta/ui/searchPanel/searchBar/searchBar.component.spec.ts +4 -6
- package/app/codeCharta/ui/searchPanel/searchBar/searchBar.component.ts +7 -6
- package/app/codeCharta/ui/searchPanel/searchBar/selectors/isExcludePatternDisabled.selector.ts +1 -2
- package/app/codeCharta/ui/searchPanel/searchBar/selectors/isFlattenPatternDisabled.selector.ts +1 -2
- package/app/codeCharta/ui/searchPanel/searchBar/utils/isPatternBlacklisted.spec.ts +4 -5
- package/app/codeCharta/ui/searchPanel/searchBar/utils/parseBlacklistItems.spec.ts +6 -7
- package/app/codeCharta/ui/searchPanel/searchPanel.component.html +1 -1
- package/app/codeCharta/ui/searchPanel/searchPanel.component.scss +0 -4
- package/app/codeCharta/ui/searchPanel/searchPanel.component.ts +4 -3
- package/app/codeCharta/ui/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.html +6 -20
- package/app/codeCharta/ui/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.scss +4 -6
- package/app/codeCharta/ui/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.spec.ts +1 -2
- package/app/codeCharta/ui/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.ts +5 -4
- package/app/codeCharta/ui/searchPanel/sortingButton/sortingButton.component.ts +4 -3
- package/app/codeCharta/ui/searchPanel/sortingOption/sortingOption.component.spec.ts +1 -1
- package/app/codeCharta/ui/searchPanel/sortingOption/sortingOption.component.ts +4 -3
- package/app/codeCharta/ui/slider/slider.component.html +17 -21
- package/app/codeCharta/ui/slider/slider.component.scss +36 -19
- package/app/codeCharta/ui/slider/slider.component.spec.ts +38 -38
- package/app/codeCharta/ui/slider/slider.component.ts +8 -9
- package/app/codeCharta/ui/slider/slider.module.ts +1 -2
- package/app/codeCharta/ui/toolBar/downloadButton/downloadButton.component.spec.ts +2 -1
- package/app/codeCharta/ui/toolBar/downloadButton/downloadButton.component.ts +4 -3
- package/app/codeCharta/ui/toolBar/downloadButton/downloadButton.module.ts +1 -2
- package/app/codeCharta/ui/toolBar/downloadButton/downloadDialog/downloadDialog.component.html +1 -1
- package/app/codeCharta/ui/toolBar/downloadButton/downloadDialog/downloadDialog.component.scss +4 -5
- package/app/codeCharta/ui/toolBar/downloadButton/downloadDialog/downloadDialog.component.ts +7 -7
- package/app/codeCharta/ui/toolBar/downloadButton/downloadDialog/util/propertyHelper.spec.ts +3 -3
- package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.html +1 -1
- package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.scss +28 -34
- package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.ts +5 -4
- package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.module.ts +1 -2
- package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/displayQualitySelection/displayQualitySelection.component.html +1 -1
- package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/displayQualitySelection/displayQualitySelection.component.ts +4 -3
- package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.html +26 -23
- package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.ts +4 -3
- package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.html +1 -1
- package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.spec.ts +27 -24
- package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.ts +5 -4
- package/app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanel.component.spec.ts +1 -2
- package/app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanel.component.ts +5 -4
- package/app/codeCharta/ui/toolBar/loadingMapProgressSpinner/loadingMapProgressSpinner.component.ts +5 -4
- package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.html +8 -11
- package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.scss +4 -3
- package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.spec.ts +2 -2
- package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.ts +5 -4
- package/app/codeCharta/ui/toolBar/toolBar.component.scss +2 -4
- package/app/codeCharta/ui/toolBar/toolBar.component.spec.ts +1 -2
- package/app/codeCharta/ui/toolBar/toolBar.component.ts +5 -5
- package/app/codeCharta/ui/toolBar/toolBar.module.ts +1 -2
- package/app/codeCharta/ui/toolBar/uploadFilesButton/uploadFiles.service.ts +2 -2
- package/app/codeCharta/ui/toolBar/uploadFilesButton/uploadFilesButton.component.ts +5 -4
- package/app/codeCharta/ui/viewCube/centerMapButton/centerMapButton.component.ts +5 -4
- package/app/codeCharta/ui/viewCube/viewCube.component.spec.ts +2 -2
- package/app/codeCharta/ui/viewCube/viewCube.component.ts +6 -5
- package/app/codeCharta/ui/viewCube/viewCube.mouseEvents.service.spec.ts +3 -2
- package/app/codeCharta/ui/viewCube/viewCube.mouseEvents.service.ts +6 -6
- package/app/codeCharta/util/EventEmitter.ts +22 -0
- package/app/codeCharta/util/__snapshots__/aggregationGenerator.spec.ts.snap +116 -116
- package/app/codeCharta/util/__snapshots__/deltaGenerator.spec.ts.snap +82 -82
- package/app/codeCharta/util/__snapshots__/fileHelper.spec.ts.snap +23 -23
- package/app/codeCharta/util/aggregationGenerator.spec.ts +33 -27
- package/app/codeCharta/util/aggregationGenerator.ts +7 -4
- package/app/codeCharta/util/algorithm/streetLayout/streetLayoutGenerator.ts +2 -2
- package/app/codeCharta/util/algorithm/treeMapLayout/__snapshots__/treeMapGenerator.spec.ts.snap +339 -124
- package/app/codeCharta/util/algorithm/treeMapLayout/__snapshots__/treeMapHelper.spec.ts.snap +9 -9
- package/app/codeCharta/util/algorithm/treeMapLayout/treeMapGenerator.spec.ts +14 -3
- package/app/codeCharta/util/algorithm/treeMapLayout/treeMapGenerator.ts +15 -8
- package/app/codeCharta/util/algorithm/treeMapLayout/treeMapHelper.spec.ts +3 -3
- package/app/codeCharta/util/codeMapHelper.ts +1 -1
- package/app/codeCharta/util/customConfigBuilder.spec.ts +11 -4
- package/app/codeCharta/util/customConfigBuilder.ts +10 -3
- package/app/codeCharta/util/customConfigHelper.spec.ts +11 -21
- package/app/codeCharta/util/customConfigHelper.ts +8 -22
- package/app/codeCharta/util/dataMocks.ts +35 -9
- package/app/codeCharta/util/debounce.spec.ts +16 -0
- package/app/codeCharta/util/debounce.ts +10 -0
- package/app/codeCharta/util/deltaGenerator.ts +2 -2
- package/app/codeCharta/util/fileDownloader.spec.ts +3 -3
- package/app/codeCharta/util/fileDownloader.ts +3 -3
- package/app/codeCharta/util/fileHelper.spec.ts +2 -2
- package/app/codeCharta/util/fileHelper.ts +2 -2
- package/app/codeCharta/util/gameObjectsParser/__snapshots__/gameObjectsImporter.spec.ts.snap +37 -37
- package/app/codeCharta/util/nodeDecorator.spec.ts +14 -1
- package/app/codeCharta/util/nodeDecorator.ts +13 -13
- package/app/codeCharta/util/nodePathHelper.ts +5 -5
- package/app/codeCharta/util/parseNumberInput.ts +1 -1
- package/app/codeCharta/util/reduxHelper.ts +3 -3
- package/app/codeCharta/util/simplePipes/SimplePipesModule.ts +9 -0
- package/app/codeCharta/util/simplePipes/metricDescriptorTitle.pipe.spec.ts +62 -0
- package/app/codeCharta/util/simplePipes/metricDescriptorTitle.pipe.ts +18 -0
- package/app/codeCharta/util/{removeExtension.pipe.ts → simplePipes/removeExtension.pipe.ts} +1 -1
- package/app/codeCharta/util/truncateText.pipe.ts +8 -0
- package/app/codeCharta/util/truncateText.spec.ts +19 -0
- package/app/index.html +1 -0
- package/app/material/_theme.scss +28 -17
- package/app/material/matDialog.scss +1 -1
- package/app/material/matMenu.scss +2 -2
- package/app/material/material.module.ts +5 -3
- package/app/material/material.scss +1 -6
- package/app/polyfills.ts +28 -0
- package/conf/jestE2E.config.json +2 -4
- package/conf/jestUnit.config.json +7 -18
- package/conf/webpack.config.js +19 -56
- package/dist/webpack/3rdpartylicenses.txt +1063 -0
- package/dist/webpack/codeCharta/assets/codecharta_logo.svg +1 -0
- package/dist/webpack/codeCharta/assets/empty.png +0 -0
- package/dist/webpack/codeCharta/assets/favicon.ico +0 -0
- package/dist/webpack/codeCharta/assets/gameObjectsFile.json +75 -0
- package/dist/webpack/codeCharta/assets/icon.icns +0 -0
- package/dist/webpack/codeCharta/assets/icon.ico +0 -0
- package/dist/webpack/codeCharta/assets/icon.png +0 -0
- package/dist/webpack/codeCharta/assets/output.cc.json.gz +0 -0
- package/dist/webpack/codeCharta/assets/sample1.cc.json +97 -0
- package/dist/webpack/codeCharta/assets/sample2.cc.json +46 -0
- package/dist/webpack/codeCharta/assets/sample3.cc.json +40 -0
- package/dist/webpack/codeCharta/assets/sample4.cc.json +45 -0
- package/dist/webpack/codeCharta/assets/scenarios.json +50 -0
- package/dist/webpack/index.html +7 -7
- package/dist/webpack/main.bc36f7880e897bab.js +1 -0
- package/dist/webpack/material-icons-outlined.78a93b2079680a08.woff +0 -0
- package/dist/webpack/material-icons-outlined.f86cb7b0aa53f0fe.woff2 +0 -0
- package/dist/webpack/material-icons-round.92dc7ca2f4c591e7.woff +0 -0
- package/dist/webpack/material-icons-round.b10ec9db5b7fbc74.woff2 +0 -0
- package/dist/webpack/material-icons-sharp.3885863ee4746422.woff2 +0 -0
- package/dist/webpack/material-icons-sharp.a71cb2bf66c604de.woff +0 -0
- package/dist/webpack/material-icons-two-tone.588d63134de807a7.woff +0 -0
- package/dist/webpack/material-icons-two-tone.675bd578bd14533e.woff2 +0 -0
- package/dist/webpack/material-icons.4ad034d2c499d9b6.woff +0 -0
- package/dist/webpack/material-icons.59322316b3fd6063.woff2 +0 -0
- package/dist/webpack/polyfills.d69fe4da6218c8a9.js +1 -0
- package/dist/webpack/runtime.e384ce5b1b4e5942.js +1 -0
- package/dist/webpack/styles.796849f6e33c93f5.css +4 -0
- package/package.json +34 -55
- package/tsconfig.json +25 -24
- package/app/codeCharta/state/effects/resetDynamicMargin/resetDynamicMargin.effect.spec.ts +0 -48
- package/app/codeCharta/state/effects/resetDynamicMargin/resetDynamicMargin.effect.ts +0 -19
- package/app/codeCharta/state/selectors/accumulatedData/metricData/edgeMetricData.selector.spec.ts +0 -56
- package/app/codeCharta/state/store/appSettings/dynamicMargin/dynamicMargin.actions.ts +0 -21
- package/app/codeCharta/state/store/appSettings/dynamicMargin/dynamicMargin.reducer.spec.ts +0 -17
- package/app/codeCharta/state/store/appSettings/dynamicMargin/dynamicMargin.reducer.ts +0 -16
- package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.po.ts +0 -22
- package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/invertAreaOption/invertAreaOption.component.html +0 -1
- package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/invertAreaOption/invertAreaOption.component.spec.ts +0 -29
- package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/invertAreaOption/invertAreaOption.component.ts +0 -23
- package/app/codeCharta/ui/ribbonBar/areaSettingsPanel.po.ts +0 -19
- package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeMetricToggle/edgeMetricToggle.component.scss +0 -4
- package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.scss +0 -18
- package/app/codeCharta/util/envDetector.ts +0 -3
- package/app/codeCharta/util/removeExtensionModule.ts +0 -8
- package/app/codeCharta/util/testUtils/drag.ts +0 -47
- package/app/material/matSelect.scss +0 -17
- package/conf/webpack.loaders.js +0 -54
- package/dist/webpack/04411cba9583fb0df01f.woff +0 -0
- package/dist/webpack/6289913a298e816100f5.woff +0 -0
- package/dist/webpack/6b3adb7ef9c9ac8d598a.woff +0 -0
- package/dist/webpack/6c307c85ae675678f41e.woff2 +0 -0
- package/dist/webpack/a70ec3e73fd410cdb178.woff2 +0 -0
- package/dist/webpack/aa2aae2fbd0e0b30967d.woff +0 -0
- package/dist/webpack/aa80805e686668b4358c.woff2 +0 -0
- package/dist/webpack/b906db2201d314b2ee12.woff2 +0 -0
- package/dist/webpack/bundle.js +0 -3
- package/dist/webpack/bundle.js.LICENSE.txt +0 -7243
- package/dist/webpack/bundle.js.map +0 -1
- package/dist/webpack/c6c0935815f6ba8fd80a.woff2 +0 -0
- package/dist/webpack/cb25b0543db8b7f06135.woff +0 -0
- /package/app/{assets/icon.ico → codeCharta/assets/favicon.ico} +0 -0
- /package/app/{assets → codeCharta/assets}/flatten.png +0 -0
- /package/app/{assets → codeCharta/assets}/icon.icns +0 -0
- /package/{dist/webpack → app/codeCharta/assets}/icon.ico +0 -0
- /package/app/{assets → codeCharta/assets}/icon.png +0 -0
- /package/app/codeCharta/state/store/fileSettings/attributeDescriptors/{attributesDescriptors.selector.ts → attributeDescriptors.selector.ts} +0 -0
- /package/app/codeCharta/util/{removeExtension.pipe.spec.ts → simplePipes/removeExtension.pipe.spec.ts} +0 -0
- /package/dist/webpack/{af36b2ef7e54a0b53f02.png → codeCharta/assets/flatten.png} +0 -0
- /package/dist/webpack/{6bfc95354e1616904298.png → codeCharta/assets/logo.png} +0 -0
- /package/dist/webpack/{8b43027f47b20503057d.eot → fontawesome-webfont.2b13baa7dd4f54c9.eot} +0 -0
- /package/dist/webpack/{1e59d2330b4c6deb84b3.ttf → fontawesome-webfont.8a7cb27d142e3e19.ttf} +0 -0
- /package/dist/webpack/{f691f37e57f04c152e23.woff → fontawesome-webfont.cf011583fb81df9f.woff} +0 -0
- /package/dist/webpack/{c1e38fd9e0e74ba58f7a.svg → fontawesome-webfont.da909aa098b0ee2d.svg} +0 -0
- /package/dist/webpack/{20fd1704ea223900efa9.woff2 → fontawesome-webfont.e9955780856cf8aa.woff2} +0 -0
|
@@ -1,9 +1,26 @@
|
|
|
1
1
|
import { CustomPanel, ThreeStatsService } from "./threeStats.service"
|
|
2
2
|
import { ThreeRendererService } from "./threeRenderer.service"
|
|
3
|
-
import Stats from "three/examples/jsm/libs/stats.module"
|
|
4
3
|
import { WebGLRenderer } from "three/src/renderers/WebGLRenderer"
|
|
5
4
|
import { WebGLInfo } from "three/src/renderers/webgl/WebGLInfo"
|
|
6
|
-
|
|
5
|
+
|
|
6
|
+
jest.mock("three/examples/jsm/libs/stats.module", () => {
|
|
7
|
+
function MockedStats() {
|
|
8
|
+
return {
|
|
9
|
+
addPanel: jest.fn(),
|
|
10
|
+
showPanel: jest.fn(),
|
|
11
|
+
update: jest.fn(),
|
|
12
|
+
domElement: {
|
|
13
|
+
style: {} as CSSStyleDeclaration,
|
|
14
|
+
remove: jest.fn()
|
|
15
|
+
} as unknown as HTMLDivElement
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
MockedStats.Panel = () => ({})
|
|
19
|
+
return {
|
|
20
|
+
__esModule: true,
|
|
21
|
+
default: MockedStats
|
|
22
|
+
}
|
|
23
|
+
})
|
|
7
24
|
|
|
8
25
|
describe("ThreeStatsService", () => {
|
|
9
26
|
let threeStatsService: ThreeStatsService
|
|
@@ -11,15 +28,10 @@ describe("ThreeStatsService", () => {
|
|
|
11
28
|
let element: HTMLCanvasElement
|
|
12
29
|
|
|
13
30
|
beforeEach(() => {
|
|
14
|
-
setDevelopmentMode(true)
|
|
15
31
|
restartSystem()
|
|
16
32
|
})
|
|
17
33
|
|
|
18
|
-
const
|
|
19
|
-
jest.spyOn(environmentDetector, "isDevelopment").mockReturnValue(value)
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
const restartSystem = () => {
|
|
34
|
+
const restartSystem = (simulateDevelopmentMode = true) => {
|
|
23
35
|
threeRendererService = { getInfo: jest.fn(), getMemoryInfo: jest.fn() } as unknown as ThreeRendererService
|
|
24
36
|
threeRendererService.renderer = {} as WebGLRenderer
|
|
25
37
|
threeRendererService.renderer.info = { render: {}, memory: {} } as WebGLInfo
|
|
@@ -29,14 +41,8 @@ describe("ThreeStatsService", () => {
|
|
|
29
41
|
element = { ...element, append: jest.fn() }
|
|
30
42
|
|
|
31
43
|
threeStatsService = new ThreeStatsService(threeRendererService)
|
|
32
|
-
threeStatsService.
|
|
33
|
-
threeStatsService.
|
|
34
|
-
threeStatsService.stats.showPanel = jest.fn()
|
|
35
|
-
threeStatsService.stats.update = jest.fn()
|
|
36
|
-
threeStatsService.stats.domElement = {
|
|
37
|
-
style: {} as CSSStyleDeclaration,
|
|
38
|
-
remove: jest.fn()
|
|
39
|
-
} as unknown as HTMLDivElement
|
|
44
|
+
threeStatsService.isDevelopmentMode = simulateDevelopmentMode
|
|
45
|
+
threeStatsService.init(element)
|
|
40
46
|
}
|
|
41
47
|
|
|
42
48
|
const mockPanels = (keys: string[]) => {
|
|
@@ -50,10 +56,8 @@ describe("ThreeStatsService", () => {
|
|
|
50
56
|
|
|
51
57
|
describe("init", () => {
|
|
52
58
|
it("should not do anything when not in development mode", () => {
|
|
53
|
-
|
|
54
|
-
restartSystem()
|
|
59
|
+
restartSystem(false)
|
|
55
60
|
const generateStatPanels = jest.spyOn(threeStatsService, "generateStatPanels" as any)
|
|
56
|
-
|
|
57
61
|
threeStatsService.init(element)
|
|
58
62
|
|
|
59
63
|
expect(element.append).not.toHaveBeenCalled()
|
|
@@ -76,12 +80,6 @@ describe("ThreeStatsService", () => {
|
|
|
76
80
|
})
|
|
77
81
|
|
|
78
82
|
describe("generateStatPanels", () => {
|
|
79
|
-
it("should call addPanel", () => {
|
|
80
|
-
threeStatsService["generateStatPanels"]()
|
|
81
|
-
|
|
82
|
-
expect(threeStatsService.stats.addPanel).toHaveBeenCalledTimes(4)
|
|
83
|
-
})
|
|
84
|
-
|
|
85
83
|
it("should show stats", () => {
|
|
86
84
|
threeStatsService["generateStatPanels"]()
|
|
87
85
|
|
|
@@ -101,8 +99,7 @@ describe("ThreeStatsService", () => {
|
|
|
101
99
|
})
|
|
102
100
|
|
|
103
101
|
it("should not do anything when not in development mode", () => {
|
|
104
|
-
|
|
105
|
-
restartSystem()
|
|
102
|
+
restartSystem(false)
|
|
106
103
|
const processPanel = jest.spyOn(threeStatsService, "processPanel" as any)
|
|
107
104
|
|
|
108
105
|
threeStatsService.updateStats()
|
|
@@ -142,8 +139,7 @@ describe("ThreeStatsService", () => {
|
|
|
142
139
|
})
|
|
143
140
|
|
|
144
141
|
it("should not do anything when not in development mode", () => {
|
|
145
|
-
|
|
146
|
-
restartSystem()
|
|
142
|
+
restartSystem(false)
|
|
147
143
|
|
|
148
144
|
threeStatsService.resetPanels()
|
|
149
145
|
|
|
@@ -185,12 +181,11 @@ describe("ThreeStatsService", () => {
|
|
|
185
181
|
|
|
186
182
|
describe("destroy", () => {
|
|
187
183
|
it("should not do anything when not in development mode", () => {
|
|
188
|
-
|
|
189
|
-
restartSystem()
|
|
184
|
+
restartSystem(false)
|
|
190
185
|
|
|
191
186
|
threeStatsService.destroy()
|
|
192
187
|
|
|
193
|
-
expect(threeStatsService.stats
|
|
188
|
+
expect(threeStatsService.stats).toBe(undefined)
|
|
194
189
|
})
|
|
195
190
|
|
|
196
191
|
it("should remove dom Element", () => {
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import Stats from "three/examples/jsm/libs/stats.module"
|
|
2
2
|
import { ThreeRendererService } from "./threeRenderer.service"
|
|
3
|
-
import {
|
|
4
|
-
import { Inject, Injectable } from "@angular/core"
|
|
3
|
+
import { Injectable, isDevMode } from "@angular/core"
|
|
5
4
|
|
|
6
5
|
const ONE_SECOND = 1000
|
|
7
6
|
export interface CustomPanel {
|
|
@@ -17,9 +16,9 @@ export class ThreeStatsService {
|
|
|
17
16
|
geometryMemoryPanel: CustomPanel
|
|
18
17
|
textureMemoryPanel: CustomPanel
|
|
19
18
|
prevTime: number
|
|
20
|
-
isDevelopmentMode =
|
|
19
|
+
isDevelopmentMode = isDevMode()
|
|
21
20
|
|
|
22
|
-
constructor(
|
|
21
|
+
constructor(private threeRendererService: ThreeRendererService) {}
|
|
23
22
|
|
|
24
23
|
init = (canvasElement: Element) => {
|
|
25
24
|
if (this.isDevelopmentMode) {
|
|
@@ -5,7 +5,7 @@ import { ThreeOrbitControlsService } from "./threeOrbitControls.service"
|
|
|
5
5
|
import { ThreeRendererService } from "./threeRenderer.service"
|
|
6
6
|
import { ThreeViewerService } from "./threeViewer.service"
|
|
7
7
|
import { PerspectiveCamera, Scene, Vector3, WebGLRenderer } from "three"
|
|
8
|
-
import { OrbitControls } from "three/examples/jsm/controls/OrbitControls"
|
|
8
|
+
import type { OrbitControls } from "three/examples/jsm/controls/OrbitControls"
|
|
9
9
|
import { ThreeStatsService } from "./threeStats.service"
|
|
10
10
|
import { CustomComposer } from "../rendering/postprocessor/customComposer"
|
|
11
11
|
|
|
@@ -59,7 +59,7 @@ describe("ThreeViewerService", () => {
|
|
|
59
59
|
threeRendererService.composer = { dispose: jest.fn() } as unknown as CustomComposer
|
|
60
60
|
threeRendererService.renderer.getContext = jest.fn()
|
|
61
61
|
threeRendererService.renderer.setPixelRatio = jest.fn()
|
|
62
|
-
threeOrbitControlsService.controls = { enableKeys: null } as OrbitControls
|
|
62
|
+
threeOrbitControlsService.controls = { enableKeys: null } as unknown as OrbitControls
|
|
63
63
|
threeOrbitControlsService.controls.update = jest.fn()
|
|
64
64
|
threeSceneService.scene = { position: new Vector3(1, 2, 3) } as Scene
|
|
65
65
|
threeSceneService.scene.add = jest.fn()
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Injectable } from "@angular/core"
|
|
2
2
|
import { ThreeSceneService } from "./threeSceneService"
|
|
3
3
|
import { ThreeCameraService } from "./threeCamera.service"
|
|
4
4
|
import { ThreeOrbitControlsService } from "./threeOrbitControls.service"
|
|
@@ -10,11 +10,11 @@ export class ThreeViewerService {
|
|
|
10
10
|
private animationFrameId: number
|
|
11
11
|
|
|
12
12
|
constructor(
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
private threeSceneService: ThreeSceneService,
|
|
14
|
+
private threeCameraService: ThreeCameraService,
|
|
15
|
+
private threeOrbitControlsService: ThreeOrbitControlsService,
|
|
16
|
+
private threeRendererService: ThreeRendererService,
|
|
17
|
+
private threeStatsService: ThreeStatsService
|
|
18
18
|
) {}
|
|
19
19
|
|
|
20
20
|
init(target: Element) {
|
|
@@ -41,8 +41,11 @@ describe("colorPicker", () => {
|
|
|
41
41
|
expectColorPickerInDom(true)
|
|
42
42
|
expect(screen.queryByText("isOpen: true")).toBeTruthy()
|
|
43
43
|
|
|
44
|
-
// @ts-
|
|
45
|
-
ng.
|
|
44
|
+
// @ts-expect-error
|
|
45
|
+
ng.getComponent(screen.queryByRole("colorpicker")).onChangeComplete.emit({
|
|
46
|
+
$event: {},
|
|
47
|
+
color: { hex: "#000000" }
|
|
48
|
+
})
|
|
46
49
|
expect(await screen.findByText("color: #000000")).toBeTruthy()
|
|
47
50
|
|
|
48
51
|
fireEvent.click(document)
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { Component, EventEmitter, HostListener, Input, Output, TemplateRef, ViewChild } from "@angular/core"
|
|
1
|
+
import { Component, EventEmitter, HostListener, Input, Output, TemplateRef, ViewChild, ViewEncapsulation } from "@angular/core"
|
|
2
2
|
import { MatMenuTrigger, MenuPositionX } from "@angular/material/menu"
|
|
3
3
|
|
|
4
4
|
@Component({
|
|
5
5
|
selector: "cc-color-picker",
|
|
6
|
-
|
|
6
|
+
templateUrl: "./colorPicker.component.html",
|
|
7
|
+
encapsulation: ViewEncapsulation.None
|
|
7
8
|
})
|
|
8
9
|
export class ColorPickerComponent {
|
|
9
10
|
@Input() hexColor: string
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, Input, ViewEncapsulation } from "@angular/core"
|
|
2
2
|
|
|
3
3
|
import { MapColors } from "../../codeCharta.model"
|
|
4
4
|
import { Store } from "../../state/angular-redux/store"
|
|
@@ -9,16 +9,17 @@ import { colorRangeSelector } from "../../state/store/dynamicSettings/colorRange
|
|
|
9
9
|
|
|
10
10
|
@Component({
|
|
11
11
|
selector: "cc-color-picker-for-map-color",
|
|
12
|
-
|
|
12
|
+
templateUrl: "./colorPickerForMapColor.component.html",
|
|
13
|
+
encapsulation: ViewEncapsulation.None
|
|
13
14
|
})
|
|
14
15
|
export class ColorPickerForMapColorComponent {
|
|
15
|
-
@Input() mapColorFor: keyof MapColors
|
|
16
|
+
@Input() mapColorFor: keyof Omit<MapColors, "labelColorAndAlpha" | "markingColors">
|
|
16
17
|
|
|
17
18
|
mapColors$ = this.store.select(mapColorsSelector)
|
|
18
19
|
colorRange$ = this.store.select(colorRangeSelector)
|
|
19
20
|
nodeMetricRange$ = this.store.select(selectedColorMetricDataSelector)
|
|
20
21
|
|
|
21
|
-
constructor(
|
|
22
|
+
constructor(private store: Store) {}
|
|
22
23
|
|
|
23
24
|
handleColorChange(newHexColor: string) {
|
|
24
25
|
this.store.dispatch(
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Injectable } from "@angular/core"
|
|
2
2
|
import { State } from "../../state/angular-redux/state"
|
|
3
3
|
import { accumulatedDataSelector } from "../../state/selectors/accumulatedData/accumulatedData.selector"
|
|
4
4
|
import { buildTextOfFiles } from "./util/clipboardString"
|
|
@@ -6,7 +6,7 @@ import { getFilenamesWithHighestMetrics } from "./util/getFilenamesWithHighestMe
|
|
|
6
6
|
|
|
7
7
|
@Injectable()
|
|
8
8
|
export class CopyToClipboardService {
|
|
9
|
-
constructor(
|
|
9
|
+
constructor(private state: State) {}
|
|
10
10
|
|
|
11
11
|
private getUnifiedMapNode() {
|
|
12
12
|
const { unifiedMapNode } = accumulatedDataSelector(this.state.getValue())
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, ViewEncapsulation } from "@angular/core"
|
|
2
2
|
import { CopyToClipboardService } from "./copyToClipboard.service"
|
|
3
3
|
|
|
4
4
|
@Component({
|
|
5
5
|
selector: "cc-copy-to-clipboard-button",
|
|
6
|
-
|
|
6
|
+
templateUrl: "./copyToClipboardButton.component.html",
|
|
7
|
+
encapsulation: ViewEncapsulation.None
|
|
7
8
|
})
|
|
8
9
|
export class CopyToClipboardButtonComponent {
|
|
9
|
-
constructor(
|
|
10
|
+
constructor(private service: CopyToClipboardService) {}
|
|
10
11
|
|
|
11
12
|
async copyNamesToClipBoard() {
|
|
12
13
|
await navigator.clipboard.writeText(this.service.getClipboardText())
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { TestBed } from "@angular/core/testing"
|
|
2
2
|
import { AddCustomConfigButtonModule } from "./addCustomConfigButton.module"
|
|
3
|
-
import {
|
|
3
|
+
import { render, screen } from "@testing-library/angular"
|
|
4
4
|
import { AddCustomConfigButtonComponent } from "./addCustomConfigButton.component"
|
|
5
5
|
import userEvent from "@testing-library/user-event"
|
|
6
|
-
import { waitForElementToBeRemoved } from "@testing-library/dom"
|
|
7
6
|
import { CustomConfigHelper } from "../../../util/customConfigHelper"
|
|
8
7
|
import { Vector3 } from "three"
|
|
9
8
|
import { ThreeCameraService } from "../../codeMap/threeViewer/threeCamera.service"
|
|
10
9
|
import { ThreeOrbitControlsService } from "../../codeMap/threeViewer/threeOrbitControls.service"
|
|
10
|
+
import { TestbedHarnessEnvironment } from "@angular/cdk/testing/testbed"
|
|
11
|
+
import { MatDialogHarness } from "@angular/material/dialog/testing"
|
|
11
12
|
|
|
12
13
|
describe("addCustomConfigButtonComponent", () => {
|
|
13
14
|
beforeEach(async () => {
|
|
@@ -21,18 +22,24 @@ describe("addCustomConfigButtonComponent", () => {
|
|
|
21
22
|
})
|
|
22
23
|
|
|
23
24
|
it("should let a user save a custom config", async () => {
|
|
25
|
+
const configName = "myCustomConfig"
|
|
26
|
+
const configNote = "My Custom Note"
|
|
24
27
|
const addCustomConfigSpy = jest.spyOn(CustomConfigHelper, "addCustomConfig")
|
|
25
|
-
await render(AddCustomConfigButtonComponent, { excludeComponentDeclaration: true })
|
|
28
|
+
const { fixture } = await render(AddCustomConfigButtonComponent, { excludeComponentDeclaration: true })
|
|
29
|
+
const loader = TestbedHarnessEnvironment.documentRootLoader(fixture)
|
|
30
|
+
let currentlyOpenedDialogs = await loader.getAllHarnesses(MatDialogHarness)
|
|
31
|
+
expect(currentlyOpenedDialogs.length).toBe(0)
|
|
26
32
|
|
|
27
|
-
|
|
28
|
-
|
|
33
|
+
await userEvent.click(screen.getByRole("button"))
|
|
34
|
+
currentlyOpenedDialogs = await loader.getAllHarnesses(MatDialogHarness)
|
|
35
|
+
expect(currentlyOpenedDialogs.length).toBe(1)
|
|
29
36
|
|
|
30
|
-
await screen.
|
|
37
|
+
await userEvent.type(screen.getAllByRole("textbox")[0], configName)
|
|
38
|
+
await userEvent.type(screen.getAllByRole("textbox")[1], configNote)
|
|
39
|
+
await userEvent.click(screen.getByRole("button", { name: "ADD" }))
|
|
40
|
+
currentlyOpenedDialogs = await loader.getAllHarnesses(MatDialogHarness)
|
|
31
41
|
|
|
32
|
-
|
|
33
|
-
fireEvent.click(screen.getByRole("button", { name: "ADD" }))
|
|
34
|
-
|
|
35
|
-
await waitForElementToBeRemoved(screen.getByText("Add Custom View"))
|
|
42
|
+
expect(currentlyOpenedDialogs.length).toBe(0)
|
|
36
43
|
expect(addCustomConfigSpy).toHaveBeenCalledTimes(1)
|
|
37
44
|
})
|
|
38
45
|
})
|
package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.component.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, ViewEncapsulation } from "@angular/core"
|
|
2
2
|
import { MatDialog } from "@angular/material/dialog"
|
|
3
3
|
import { AddCustomConfigDialogComponent } from "./addCustomConfigDialog/addCustomConfigDialog.component"
|
|
4
4
|
|
|
5
5
|
@Component({
|
|
6
6
|
selector: "cc-add-custom-config-button",
|
|
7
|
-
|
|
7
|
+
templateUrl: "./addCustomConfigButton.component.html",
|
|
8
|
+
encapsulation: ViewEncapsulation.None
|
|
8
9
|
})
|
|
9
10
|
export class AddCustomConfigButtonComponent {
|
|
10
|
-
constructor(
|
|
11
|
+
constructor(private dialog: MatDialog) {}
|
|
11
12
|
|
|
12
13
|
showAddCustomConfigDialog() {
|
|
13
14
|
this.dialog.open(AddCustomConfigDialogComponent, { panelClass: "cc-add-custom-config-dialog" })
|
package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.module.ts
CHANGED
|
@@ -5,11 +5,11 @@ import { AddCustomConfigDialogComponent } from "./addCustomConfigDialog/addCusto
|
|
|
5
5
|
import { FormsModule, ReactiveFormsModule } from "@angular/forms"
|
|
6
6
|
import { CommonModule } from "@angular/common"
|
|
7
7
|
import { DownloadAndPurgeConfigsComponent } from "./addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndPurgeConfigs.component"
|
|
8
|
+
import { CustomConfigNoteDialogButtonModule } from "../customConfigNoteDialogButton/customConfigNoteDialogButton.module"
|
|
8
9
|
|
|
9
10
|
@NgModule({
|
|
10
|
-
imports: [MaterialModule, ReactiveFormsModule, FormsModule, CommonModule],
|
|
11
|
+
imports: [MaterialModule, ReactiveFormsModule, FormsModule, CommonModule, CustomConfigNoteDialogButtonModule],
|
|
11
12
|
declarations: [AddCustomConfigButtonComponent, AddCustomConfigDialogComponent, DownloadAndPurgeConfigsComponent],
|
|
12
|
-
exports: [AddCustomConfigButtonComponent]
|
|
13
|
-
entryComponents: [AddCustomConfigDialogComponent]
|
|
13
|
+
exports: [AddCustomConfigButtonComponent]
|
|
14
14
|
})
|
|
15
15
|
export class AddCustomConfigButtonModule {}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<mat-toolbar class="header">
|
|
1
|
+
<mat-toolbar class="header" xmlns="http://www.w3.org/1999/html">
|
|
2
2
|
<h2>Add Custom View</h2>
|
|
3
3
|
</mat-toolbar>
|
|
4
4
|
|
|
@@ -7,9 +7,21 @@
|
|
|
7
7
|
<mat-form-field>
|
|
8
8
|
<label>Save individual configurations for your map.</label>
|
|
9
9
|
<input matInput class="custom-config-input" [formControl]="customConfigName" required />
|
|
10
|
-
<mat-hint align="start">View Name</mat-hint>
|
|
10
|
+
<mat-hint align="start">Config View Name</mat-hint>
|
|
11
11
|
<mat-error *ngIf="customConfigName.invalid">{{ getErrorMessage() }}</mat-error>
|
|
12
12
|
</mat-form-field>
|
|
13
|
+
<mat-form-field class="custom-config-note">
|
|
14
|
+
<label>Provide custom note for configuration (optional)</label>
|
|
15
|
+
<textarea
|
|
16
|
+
cdkAutosizeMinRows="8"
|
|
17
|
+
cdkTextareaAutosize
|
|
18
|
+
matInput
|
|
19
|
+
class="custom-config-input"
|
|
20
|
+
[(ngModel)]="customConfigNote"
|
|
21
|
+
required
|
|
22
|
+
></textarea>
|
|
23
|
+
<mat-hint align="start">Config Note</mat-hint>
|
|
24
|
+
</mat-form-field>
|
|
13
25
|
</div>
|
|
14
26
|
</mat-dialog-content>
|
|
15
27
|
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import "
|
|
2
|
-
import {
|
|
3
|
-
import { FormControl, Validators, AbstractControl, ValidatorFn } from "@angular/forms"
|
|
1
|
+
import { Component, OnInit, ViewEncapsulation } from "@angular/core"
|
|
2
|
+
import { UntypedFormControl, Validators, AbstractControl, ValidatorFn } from "@angular/forms"
|
|
4
3
|
import { CustomConfigHelper } from "../../../../util/customConfigHelper"
|
|
5
4
|
import { buildCustomConfigFromState } from "../../../../util/customConfigBuilder"
|
|
6
5
|
import { State } from "../../../../state/angular-redux/state"
|
|
@@ -9,20 +8,26 @@ import { ThreeOrbitControlsService } from "../../../codeMap/threeViewer/threeOrb
|
|
|
9
8
|
import { VisibleFilesBySelectionMode, visibleFilesBySelectionModeSelector } from "../../visibleFilesBySelectionMode.selector"
|
|
10
9
|
|
|
11
10
|
@Component({
|
|
12
|
-
|
|
11
|
+
templateUrl: "./addCustomConfigDialog.component.html",
|
|
12
|
+
styleUrls: ["./addCustomDialog.component.scss"],
|
|
13
|
+
encapsulation: ViewEncapsulation.None
|
|
13
14
|
})
|
|
14
15
|
export class AddCustomConfigDialogComponent implements OnInit {
|
|
15
|
-
customConfigName:
|
|
16
|
+
customConfigName: UntypedFormControl
|
|
17
|
+
customConfigNote: string
|
|
16
18
|
|
|
17
19
|
constructor(
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
20
|
+
private state: State,
|
|
21
|
+
private threeCameraService: ThreeCameraService,
|
|
22
|
+
private threeOrbitControlsService: ThreeOrbitControlsService
|
|
21
23
|
) {}
|
|
22
24
|
|
|
23
25
|
ngOnInit(): void {
|
|
24
26
|
const visibleFilesBySelectionMode = visibleFilesBySelectionModeSelector(this.state.getValue())
|
|
25
|
-
this.customConfigName = new
|
|
27
|
+
this.customConfigName = new UntypedFormControl("", [
|
|
28
|
+
Validators.required,
|
|
29
|
+
createCustomConfigNameValidator(visibleFilesBySelectionMode)
|
|
30
|
+
])
|
|
26
31
|
this.customConfigName.setValue(CustomConfigHelper.getConfigNameSuggestionByFileState(visibleFilesBySelectionMode))
|
|
27
32
|
}
|
|
28
33
|
|
|
@@ -34,10 +39,15 @@ export class AddCustomConfigDialogComponent implements OnInit {
|
|
|
34
39
|
}
|
|
35
40
|
|
|
36
41
|
addCustomConfig() {
|
|
37
|
-
const newCustomConfig = buildCustomConfigFromState(
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
42
|
+
const newCustomConfig = buildCustomConfigFromState(
|
|
43
|
+
this.customConfigName.value,
|
|
44
|
+
this.state.getValue(),
|
|
45
|
+
{
|
|
46
|
+
camera: this.threeCameraService.camera.position,
|
|
47
|
+
cameraTarget: this.threeOrbitControlsService.controls.target
|
|
48
|
+
},
|
|
49
|
+
this.customConfigNote
|
|
50
|
+
)
|
|
41
51
|
CustomConfigHelper.addCustomConfig(newCustomConfig)
|
|
42
52
|
}
|
|
43
53
|
}
|
|
@@ -4,10 +4,10 @@ import { render, screen } from "@testing-library/angular"
|
|
|
4
4
|
import { AddCustomConfigDialogComponent } from "./addCustomConfigDialog.component"
|
|
5
5
|
import { CustomConfigHelper } from "../../../../util/customConfigHelper"
|
|
6
6
|
import userEvent from "@testing-library/user-event"
|
|
7
|
-
import { MatDialog } from "@angular/material/dialog"
|
|
8
7
|
import { Vector3 } from "three"
|
|
9
8
|
import { ThreeCameraService } from "../../../codeMap/threeViewer/threeCamera.service"
|
|
10
9
|
import { ThreeOrbitControlsService } from "../../../codeMap/threeViewer/threeOrbitControls.service"
|
|
10
|
+
import { MatDialog } from "@angular/material/dialog"
|
|
11
11
|
|
|
12
12
|
describe("addCustomConfigDialogComponent", () => {
|
|
13
13
|
jest.spyOn(CustomConfigHelper, "getConfigNameSuggestionByFileState").mockReturnValue("new custom view name")
|
|
@@ -27,18 +27,30 @@ describe("addCustomConfigDialogComponent", () => {
|
|
|
27
27
|
it("should suggest a valid custom view name and 'add' button is enabled", async () => {
|
|
28
28
|
await render(AddCustomConfigDialogComponent, { excludeComponentDeclaration: true })
|
|
29
29
|
|
|
30
|
-
const input = screen.
|
|
30
|
+
const input = screen.getAllByRole("textbox") as HTMLInputElement[]
|
|
31
|
+
const nameTextField = input[0]
|
|
31
32
|
|
|
32
|
-
expect(
|
|
33
|
+
expect(nameTextField.value).toBe("new custom view name")
|
|
34
|
+
expect((screen.getByRole("button") as HTMLButtonElement).disabled).toBe(false)
|
|
35
|
+
})
|
|
36
|
+
|
|
37
|
+
it("should show an empty comment text field, with optional entry", async () => {
|
|
38
|
+
await render(AddCustomConfigDialogComponent, { excludeComponentDeclaration: true })
|
|
39
|
+
|
|
40
|
+
const input = screen.getAllByRole("textbox") as HTMLInputElement[]
|
|
41
|
+
const commentTextField = input[1]
|
|
42
|
+
|
|
43
|
+
expect(commentTextField.value).toBe("")
|
|
33
44
|
expect((screen.getByRole("button") as HTMLButtonElement).disabled).toBe(false)
|
|
34
45
|
})
|
|
35
46
|
|
|
36
47
|
it("should show error message when input field is empty and disable 'add' button", async () => {
|
|
37
48
|
await render(AddCustomConfigDialogComponent, { excludeComponentDeclaration: true })
|
|
38
49
|
|
|
39
|
-
const input = screen.
|
|
40
|
-
|
|
41
|
-
|
|
50
|
+
const input = screen.getAllByRole("textbox") as HTMLInputElement[]
|
|
51
|
+
const nameTextField = input[0]
|
|
52
|
+
await userEvent.clear(nameTextField)
|
|
53
|
+
nameTextField.blur()
|
|
42
54
|
|
|
43
55
|
expect(await screen.findByText("Please enter a view name.")).not.toBeNull()
|
|
44
56
|
expect((screen.getByRole("button") as HTMLButtonElement).disabled).toBe(true)
|
|
@@ -48,9 +60,11 @@ describe("addCustomConfigDialogComponent", () => {
|
|
|
48
60
|
await render(AddCustomConfigDialogComponent, { excludeComponentDeclaration: true })
|
|
49
61
|
jest.spyOn(CustomConfigHelper, "hasCustomConfigByName").mockReturnValue(true)
|
|
50
62
|
|
|
51
|
-
const input = screen.
|
|
52
|
-
|
|
53
|
-
|
|
63
|
+
const input = screen.getAllByRole("textbox") as HTMLInputElement[]
|
|
64
|
+
const nameTextField = input[0]
|
|
65
|
+
|
|
66
|
+
await userEvent.type(nameTextField, "file name already exists")
|
|
67
|
+
nameTextField.blur()
|
|
54
68
|
|
|
55
69
|
expect(await screen.findByText("A Custom View with this name already exists.")).not.toBeNull()
|
|
56
70
|
expect((screen.getByRole("button") as HTMLButtonElement).disabled).toBe(true)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
@use "../../../../../material/theme";
|
|
2
2
|
|
|
3
|
-
.cc-add-custom-config-dialog .mat-dialog-container {
|
|
3
|
+
.cc-add-custom-config-dialog .mat-mdc-dialog-container {
|
|
4
4
|
padding: 0;
|
|
5
5
|
width: 500px;
|
|
6
6
|
overflow: hidden;
|
|
@@ -15,11 +15,12 @@
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
.dialog-content {
|
|
18
|
-
padding: 0 24px;
|
|
19
|
-
margin: 10px 0;
|
|
20
|
-
|
|
21
18
|
mat-form-field {
|
|
22
19
|
width: 100%;
|
|
20
|
+
|
|
21
|
+
&.custom-config-note {
|
|
22
|
+
padding-top: 30px;
|
|
23
|
+
}
|
|
23
24
|
}
|
|
24
25
|
|
|
25
26
|
label {
|
|
@@ -32,7 +33,7 @@
|
|
|
32
33
|
}
|
|
33
34
|
}
|
|
34
35
|
|
|
35
|
-
.mat-dialog-actions {
|
|
36
|
+
.mat-mdc-dialog-actions {
|
|
36
37
|
margin: 0;
|
|
37
38
|
padding: 0 8px;
|
|
38
39
|
position: relative;
|
|
@@ -51,7 +52,7 @@
|
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
54
|
|
|
54
|
-
.mat-button {
|
|
55
|
+
.mat-mdc-button {
|
|
55
56
|
padding: 0 8px;
|
|
56
57
|
margin: 8px 0 8px 8px;
|
|
57
58
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, OnInit, ViewEncapsulation } from "@angular/core"
|
|
2
2
|
import { ErrorDialogComponent } from "../../../../dialogs/errorDialog/errorDialog.component"
|
|
3
3
|
import { ConfirmationDialogComponent } from "../../../../dialogs/confirmationDialog/confirmationDialog.component"
|
|
4
4
|
import { CustomConfigHelper } from "../../../../../util/customConfigHelper"
|
|
@@ -7,13 +7,14 @@ import { validateLocalStorageSize } from "../validateLocalStorageSize"
|
|
|
7
7
|
import { downloadAndCollectPurgeableConfigs } from "../downloadAndCollectPurgeableConfigs"
|
|
8
8
|
|
|
9
9
|
@Component({
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
selector: "cc-download-and-purge-configs",
|
|
11
|
+
templateUrl: "./downloadAndPurgeConfigs.component.html",
|
|
12
|
+
encapsulation: ViewEncapsulation.None
|
|
12
13
|
})
|
|
13
14
|
export class DownloadAndPurgeConfigsComponent implements OnInit {
|
|
14
15
|
isLocalStorageSizeValid = true
|
|
15
16
|
|
|
16
|
-
constructor(
|
|
17
|
+
constructor(private dialog: MatDialog) {}
|
|
17
18
|
|
|
18
19
|
ngOnInit(): void {
|
|
19
20
|
this.isLocalStorageSizeValid = validateLocalStorageSize()
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { validateLocalStorageSize } from "../validateLocalStorageSize"
|
|
2
|
-
import { mocked } from "ts-jest/utils"
|
|
3
2
|
import { DownloadAndPurgeConfigsComponent } from "./downloadAndPurgeConfigs.component"
|
|
4
3
|
import { render, screen } from "@testing-library/angular"
|
|
5
4
|
import { TestBed } from "@angular/core/testing"
|
|
@@ -14,10 +13,10 @@ import { CustomConfigHelper } from "../../../../../util/customConfigHelper"
|
|
|
14
13
|
import { InteractivityChecker } from "@angular/cdk/a11y"
|
|
15
14
|
|
|
16
15
|
jest.mock("../validateLocalStorageSize", () => ({ validateLocalStorageSize: jest.fn() }))
|
|
17
|
-
const mockedValidateLocalStorageSize = mocked(validateLocalStorageSize)
|
|
16
|
+
const mockedValidateLocalStorageSize = jest.mocked(validateLocalStorageSize)
|
|
18
17
|
|
|
19
18
|
jest.mock("../downloadAndCollectPurgeableConfigs", () => ({ downloadAndCollectPurgeableConfigs: jest.fn() }))
|
|
20
|
-
const mockedDownloadAndCollectPurgeableOldConfigs = mocked(downloadAndCollectPurgeableConfigs)
|
|
19
|
+
const mockedDownloadAndCollectPurgeableOldConfigs = jest.mocked(downloadAndCollectPurgeableConfigs)
|
|
21
20
|
|
|
22
21
|
describe("downloadAndPurgeConfigsComponent", () => {
|
|
23
22
|
@NgModule({
|
|
@@ -29,6 +28,7 @@ describe("downloadAndPurgeConfigsComponent", () => {
|
|
|
29
28
|
class TestModule {}
|
|
30
29
|
|
|
31
30
|
beforeEach(() => {
|
|
31
|
+
document.body.innerHTML = ""
|
|
32
32
|
TestBed.configureTestingModule({
|
|
33
33
|
imports: [TestModule]
|
|
34
34
|
})
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { combineLatest, map } from "rxjs"
|
|
2
2
|
import { CustomConfigHelper } from "../../util/customConfigHelper"
|
|
3
3
|
import { getDownloadableCustomConfigs } from "./downloadCustomConfigsButton/getDownloadableCustomConfigs"
|
|
4
|
-
import {
|
|
4
|
+
import { Injectable } from "@angular/core"
|
|
5
5
|
import { Store } from "../../state/angular-redux/store"
|
|
6
6
|
import { getCustomConfigItemGroups } from "./customConfigList/getCustomConfigItemGroups"
|
|
7
7
|
import { visibleFilesBySelectionModeSelector } from "./visibleFilesBySelectionMode.selector"
|
|
@@ -18,5 +18,5 @@ export class CustomConfigHelperService {
|
|
|
18
18
|
CustomConfigHelper.customConfigChange$
|
|
19
19
|
]).pipe(map(([visibleFilesBySelectionMode]) => getCustomConfigItemGroups(visibleFilesBySelectionMode)))
|
|
20
20
|
|
|
21
|
-
constructor(
|
|
21
|
+
constructor(private store: Store) {}
|
|
22
22
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Pipe, PipeTransform } from "@angular/core"
|
|
2
2
|
import { State } from "../../../../state/angular-redux/state"
|
|
3
3
|
import { CustomConfigItem } from "../../customConfigs.component"
|
|
4
4
|
import { getMissingCustomConfigModeAndMaps } from "./getMissingCustomConfigModeAndMaps"
|
|
5
5
|
|
|
6
6
|
@Pipe({ name: "customConfig2ApplicableColor" })
|
|
7
7
|
export class CustomConfig2ApplicableColor implements PipeTransform {
|
|
8
|
-
constructor(
|
|
8
|
+
constructor(private state: State) {}
|
|
9
9
|
|
|
10
10
|
transform(customConfig: CustomConfigItem): string {
|
|
11
11
|
const { mapSelectionMode, mapNames } = getMissingCustomConfigModeAndMaps(customConfig, this.state)
|