codecharta-visualization 1.114.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.
Files changed (443) hide show
  1. package/README.md +4 -1
  2. package/app/app.module.ts +1 -12
  3. package/app/app.scss +0 -2
  4. package/app/codeCharta/assets/codecharta_logo.svg +1 -0
  5. package/app/codeCharta/codeCharta.component.html +10 -7
  6. package/app/codeCharta/codeCharta.component.scss +22 -51
  7. package/app/codeCharta/codeCharta.component.ts +5 -7
  8. package/app/codeCharta/codeCharta.model.ts +0 -1
  9. package/app/codeCharta/e2e/__snapshots__/logo.e2e.ts.snap +2 -2
  10. package/app/codeCharta/e2e/logo.po.ts +7 -7
  11. package/app/codeCharta/e2e/url.e2e.ts +2 -2
  12. package/app/codeCharta/index.d.ts +1 -1
  13. package/app/codeCharta/model/customConfig/customConfig.api.model.ts +1 -0
  14. package/app/codeCharta/services/isAttributeSideBarVisible.service.ts +2 -2
  15. package/app/codeCharta/services/loadFile/loadFile.service.spec.ts +6 -6
  16. package/app/codeCharta/services/loadFile/loadFile.service.ts +7 -3
  17. package/app/codeCharta/services/loadInitialFile/loadInitialFile.service.spec.ts +1 -1
  18. package/app/codeCharta/services/loadInitialFile/loadInitialFile.service.ts +7 -7
  19. package/app/codeCharta/services/version/version.service.ts +2 -2
  20. package/app/codeCharta/state/effects/autoFitCodeMapChange/autoFitCodeMap.effect.ts +5 -5
  21. package/app/codeCharta/state/effects/linkColorMetricToHeightMetric/linkColorMetricToHeightMetric.effect.ts +2 -2
  22. package/app/codeCharta/state/effects/nodeContextMenu/excludeButton/excludeButton.component.ts +4 -3
  23. package/app/codeCharta/state/effects/nodeContextMenu/flattenButtons/flattenButtons.component.html +2 -2
  24. package/app/codeCharta/state/effects/nodeContextMenu/flattenButtons/flattenButtons.component.ts +4 -3
  25. package/app/codeCharta/state/effects/nodeContextMenu/focusButtons/focusButtons.component.ts +4 -3
  26. package/app/codeCharta/state/effects/nodeContextMenu/highlightButtons/highlightButtons.component.spec.ts +5 -5
  27. package/app/codeCharta/state/effects/nodeContextMenu/highlightButtons/highlightButtons.component.ts +4 -6
  28. package/app/codeCharta/state/effects/nodeContextMenu/markFolderRow/markFolderRow.component.ts +5 -4
  29. package/app/codeCharta/state/effects/nodeContextMenu/nodeContextMenu.service.ts +2 -2
  30. package/app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.html +1 -1
  31. package/app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.scss +6 -7
  32. package/app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.component.ts +5 -4
  33. package/app/codeCharta/state/effects/nodeContextMenu/nodeContextMenuCard/nodeContextMenuCard.module.ts +1 -2
  34. package/app/codeCharta/state/effects/nodeContextMenu/openNodeContextMenu.effect.ts +1 -4
  35. package/app/codeCharta/state/effects/renderCodeMapEffect/renderCodeMap.effect.ts +4 -4
  36. package/app/codeCharta/state/effects/resetChosenMetrics/resetChosenMetrics.effect.spec.ts +25 -19
  37. package/app/codeCharta/state/effects/resetChosenMetrics/resetChosenMetrics.effect.ts +6 -5
  38. package/app/codeCharta/state/effects/resetSelectedEdgeMetricWhenItDoesntExistAnymore/resetSelectedEdgeMetricWhenItDoesntExistAnymore.effect.spec.ts +13 -13
  39. package/app/codeCharta/state/effects/resetSelectedEdgeMetricWhenItDoesntExistAnymore/resetSelectedEdgeMetricWhenItDoesntExistAnymore.effect.ts +6 -6
  40. package/app/codeCharta/state/effects/unfocusNodes/unfocusNodes.effect.ts +2 -2
  41. package/app/codeCharta/state/effects/updateEdgePreviews/updateEdgePreviews.effect.ts +2 -2
  42. package/app/codeCharta/state/effects/updateEdgePreviews/utils/edgePreviewNodes.selector.ts +5 -3
  43. package/app/codeCharta/state/effects/updateFileSettings/updateFileSettings.effect.ts +2 -2
  44. package/app/codeCharta/state/effects/updateFileSettings/utils/__snapshots__/blacklist.merger.spec.ts.snap +9 -9
  45. package/app/codeCharta/state/effects/updateFileSettings/utils/__snapshots__/edges.merger.spec.ts.snap +16 -16
  46. package/app/codeCharta/state/effects/updateFileSettings/utils/__snapshots__/markedPackages.merger.spec.ts.snap +10 -10
  47. package/app/codeCharta/state/effects/updateVisibleTopLabels/updateVisibleTopLabels.effect.ts +2 -2
  48. package/app/codeCharta/state/selectors/accumulatedData/accumulatedData.selector.spec.ts +76 -0
  49. package/app/codeCharta/state/selectors/accumulatedData/accumulatedData.selector.ts +7 -12
  50. package/app/codeCharta/state/selectors/accumulatedData/metricData/edgeMetricData.calculator.spec.ts +46 -0
  51. package/app/codeCharta/state/selectors/accumulatedData/metricData/{edgeMetricData.selector.ts → edgeMetricData.calculator.ts} +10 -23
  52. package/app/codeCharta/state/selectors/accumulatedData/metricData/metricData.selector.ts +10 -6
  53. package/app/codeCharta/state/selectors/accumulatedData/metricData/metricNames.selector.spec.ts +5 -5
  54. package/app/codeCharta/state/selectors/accumulatedData/metricData/metricNames.selector.ts +2 -2
  55. package/app/codeCharta/state/selectors/accumulatedData/metricData/{nodeMetricData.selector.spec.ts → nodeMetricData.calculator.spec.ts} +2 -2
  56. package/app/codeCharta/state/selectors/accumulatedData/metricData/{nodeMetricData.selector.ts → nodeMetricData.calculator.ts} +0 -5
  57. package/app/codeCharta/state/selectors/accumulatedData/metricData/selectedColorMetricData.selector.ts +4 -4
  58. package/app/codeCharta/state/selectors/accumulatedData/utils/addEdgeMetricsForLeaves.ts +3 -2
  59. package/app/codeCharta/state/selectors/accumulatedData/utils/getMetricValuesForNode.spec.ts +4 -11
  60. package/app/codeCharta/state/selectors/accumulatedData/utils/getMetricValuesForNode.ts +2 -2
  61. package/app/codeCharta/state/selectors/allNecessaryRenderDataAvailable/areAllNecessaryRenderDataAvailable.selector.ts +7 -6
  62. package/app/codeCharta/state/selectors/primaryMetrics/primaryMetrics.selector.ts +27 -11
  63. package/app/codeCharta/state/store/appSettings/appSettings.actions.ts +0 -2
  64. package/app/codeCharta/state/store/appSettings/appSettings.reducer.ts +0 -2
  65. package/app/codeCharta/state/store/appSettings/invertArea/invertArea.actions.ts +1 -12
  66. package/app/codeCharta/state/store/appSettings/invertArea/invertArea.reducer.ts +2 -4
  67. package/app/codeCharta/state/store/dynamicSettings/colorRange/resetColorRange.effect.ts +1 -1
  68. package/app/codeCharta/ui/actionIcon/actionIcon.component.ts +4 -3
  69. package/app/codeCharta/ui/actionIcon/actionIcon.module.ts +1 -2
  70. package/app/codeCharta/ui/attributeSideBar/attributeSideBar.component.scss +1 -1
  71. package/app/codeCharta/ui/attributeSideBar/attributeSideBar.component.spec.ts +59 -7
  72. package/app/codeCharta/ui/attributeSideBar/attributeSideBar.component.ts +5 -7
  73. package/app/codeCharta/ui/attributeSideBar/attributeSideBar.module.ts +2 -2
  74. package/app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/attributeSideBarHeaderSection.component.ts +5 -4
  75. package/app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/nodePath/nodePath.component.ts +4 -3
  76. package/app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetric/attributeSideBarPrimaryMetric.component.ts +4 -3
  77. package/app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetrics.component.html +10 -5
  78. package/app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetrics.component.ts +4 -3
  79. package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.html +5 -1
  80. package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.ts +4 -3
  81. package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/secondaryMetrics.selector.spec.ts +29 -4
  82. package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/secondaryMetrics.selector.ts +11 -4
  83. package/app/codeCharta/ui/attributeSideBar/attributeTypeSelector/attributeTypeSelector.component.scss +4 -6
  84. package/app/codeCharta/ui/attributeSideBar/attributeTypeSelector/attributeTypeSelector.component.ts +5 -4
  85. package/app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.spec.ts +2 -2
  86. package/app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.ts +4 -3
  87. package/app/codeCharta/ui/attributeSideBar/util/edge.ts +7 -0
  88. package/app/codeCharta/ui/attributeSideBar/util/metric.ts +2 -0
  89. package/app/codeCharta/ui/{legendPanel/selectors/legendMetric.ts → attributeSideBar/util/metricDescriptors.ts} +10 -4
  90. package/app/codeCharta/ui/codeMap/__snapshots__/codeMap.arrow.service.spec.ts.snap +16 -16
  91. package/app/codeCharta/ui/codeMap/__snapshots__/codeMap.render.service.spec.ts.snap +19 -19
  92. package/app/codeCharta/ui/codeMap/codeMap.arrow.service.spec.ts +5 -4
  93. package/app/codeCharta/ui/codeMap/codeMap.arrow.service.ts +34 -29
  94. package/app/codeCharta/ui/codeMap/codeMap.component.ts +9 -8
  95. package/app/codeCharta/ui/codeMap/codeMap.label.service.ts +5 -5
  96. package/app/codeCharta/ui/codeMap/codeMap.mouseEvent.service.spec.ts +14 -1
  97. package/app/codeCharta/ui/codeMap/codeMap.mouseEvent.service.ts +30 -25
  98. package/app/codeCharta/ui/codeMap/codeMap.render.service.spec.ts +8 -6
  99. package/app/codeCharta/ui/codeMap/codeMap.render.service.ts +18 -13
  100. package/app/codeCharta/ui/codeMap/threeViewer/threeOrbitControls.service.spec.ts +3 -3
  101. package/app/codeCharta/ui/codeMap/threeViewer/threeOrbitControls.service.ts +9 -9
  102. package/app/codeCharta/ui/codeMap/threeViewer/threeRenderer.service.ts +3 -3
  103. package/app/codeCharta/ui/codeMap/threeViewer/threeSceneService.ts +16 -19
  104. package/app/codeCharta/ui/codeMap/threeViewer/threeStats.service.spec.ts +27 -32
  105. package/app/codeCharta/ui/codeMap/threeViewer/threeStats.service.ts +3 -4
  106. package/app/codeCharta/ui/codeMap/threeViewer/threeViewer.service.spec.ts +2 -2
  107. package/app/codeCharta/ui/codeMap/threeViewer/threeViewer.service.ts +6 -6
  108. package/app/codeCharta/ui/colorPicker/colorPicker.component.spec.ts +5 -2
  109. package/app/codeCharta/ui/colorPicker/colorPicker.component.ts +3 -2
  110. package/app/codeCharta/ui/colorPickerForMapColor/colorPickerForMapColor.component.ts +5 -4
  111. package/app/codeCharta/ui/copyToClipboardButton/copyToClipboard.service.ts +2 -2
  112. package/app/codeCharta/ui/copyToClipboardButton/copyToClipboardButton.component.ts +4 -3
  113. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.component.spec.ts +17 -10
  114. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.component.ts +4 -3
  115. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.module.ts +3 -3
  116. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.component.html +14 -2
  117. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.component.ts +23 -13
  118. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.spec.ts +23 -9
  119. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomDialog.component.scss +7 -6
  120. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndPurgeConfigs.component.ts +5 -4
  121. package/app/codeCharta/ui/customConfigs/customConfigHelper.service.ts +2 -2
  122. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfig2ApplicableColor.pipe.ts +2 -2
  123. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfig2ApplicableMessage.pipe.ts +2 -2
  124. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.html +15 -12
  125. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.scss +12 -8
  126. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.ts +7 -6
  127. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.spec.ts +0 -6
  128. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.html +21 -4
  129. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.scss +38 -0
  130. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.spec.ts +32 -7
  131. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.ts +17 -2
  132. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.html +8 -8
  133. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.scss +27 -31
  134. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.spec.ts +6 -3
  135. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.ts +5 -4
  136. package/app/codeCharta/ui/customConfigs/customConfigList/getCustomConfigItemGroups.spec.ts +5 -1
  137. package/app/codeCharta/ui/customConfigs/customConfigList/getCustomConfigItemGroups.ts +2 -1
  138. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.html +12 -0
  139. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.scss +31 -0
  140. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.ts +12 -0
  141. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.html +3 -0
  142. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.spec.ts +90 -0
  143. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.ts +33 -0
  144. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.module.ts +14 -0
  145. package/app/codeCharta/ui/customConfigs/customConfigs.component.spec.ts +5 -4
  146. package/app/codeCharta/ui/customConfigs/customConfigs.component.ts +6 -4
  147. package/app/codeCharta/ui/customConfigs/customConfigs.module.ts +14 -3
  148. package/app/codeCharta/ui/customConfigs/downloadCustomConfigsButton/downloadCustomConfigsButton.component.ts +4 -3
  149. package/app/codeCharta/ui/customConfigs/uploadCustomConfigButton/uploadCustomConfigButton.component.ts +3 -2
  150. package/app/codeCharta/ui/customConfigs/uploadCustomConfigButton/uploadCustomConfigButton.module.ts +1 -2
  151. package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.html +6 -6
  152. package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.scss +6 -14
  153. package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.ts +4 -3
  154. package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.module.ts +1 -2
  155. package/app/codeCharta/ui/dialogs/confirmationDialog/confirmationDialog.component.scss +3 -3
  156. package/app/codeCharta/ui/dialogs/confirmationDialog/confirmationDialog.component.ts +4 -3
  157. package/app/codeCharta/ui/dialogs/errorDialog/errorDialog.component.po.ts +4 -9
  158. package/app/codeCharta/ui/dialogs/errorDialog/errorDialog.component.ts +3 -2
  159. package/app/codeCharta/ui/export3DMapButton/export3DMapButton.component.ts +4 -3
  160. package/app/codeCharta/ui/fileExtensionBar/distributionMetricChooser/distributionMetricChooser.component.ts +4 -3
  161. package/app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.scss +5 -6
  162. package/app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.ts +5 -4
  163. package/app/codeCharta/ui/fileExtensionBar/fileExtensionBar.module.ts +1 -2
  164. package/app/codeCharta/ui/fileExtensionBar/selectors/fileExtensionCalculator.spec.ts +18 -18
  165. package/app/codeCharta/ui/fileExtensionBar/selectors/fileExtensionCalculator.ts +1 -1
  166. package/app/codeCharta/ui/filePanel/filePanel.component.html +1 -1
  167. package/app/codeCharta/ui/filePanel/filePanel.component.scss +7 -27
  168. package/app/codeCharta/ui/filePanel/filePanel.component.ts +5 -4
  169. package/app/codeCharta/ui/filePanel/filePanel.module.ts +2 -2
  170. package/app/codeCharta/ui/filePanel/filePanel.po.ts +6 -4
  171. package/app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.html +26 -24
  172. package/app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.scss +6 -0
  173. package/app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.ts +5 -3
  174. package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.html +1 -0
  175. package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.scss +2 -9
  176. package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.spec.ts +1 -1
  177. package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.ts +5 -4
  178. package/app/codeCharta/ui/filePanel/filePanelFileSelector/removeFileButton/removeFileButton.component.scss +1 -1
  179. package/app/codeCharta/ui/filePanel/filePanelFileSelector/removeFileButton/removeFileButton.component.ts +5 -4
  180. package/app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.html +1 -1
  181. package/app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.ts +4 -6
  182. package/app/codeCharta/ui/filePanel/fileSelectionMode.service.ts +2 -2
  183. package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.html +1 -1
  184. package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.scss +12 -8
  185. package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.spec.ts +2 -2
  186. package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.ts +4 -3
  187. package/app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.html +8 -8
  188. package/app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.ts +5 -4
  189. package/app/codeCharta/ui/legendPanel/legendMarkedPackages/legendMarkedPackages.component.ts +5 -4
  190. package/app/codeCharta/ui/legendPanel/legendPanel.component.html +11 -5
  191. package/app/codeCharta/ui/legendPanel/legendPanel.component.ts +5 -7
  192. package/app/codeCharta/ui/legendPanel/selectors/legendAreaMetric.selector.ts +4 -4
  193. package/app/codeCharta/ui/legendPanel/selectors/legendColorMetric.selector.ts +4 -4
  194. package/app/codeCharta/ui/legendPanel/selectors/legendEdgeMetric.selector.spec.ts +10 -4
  195. package/app/codeCharta/ui/legendPanel/selectors/legendEdgeMetric.selector.ts +7 -7
  196. package/app/codeCharta/ui/legendPanel/selectors/legendHeightMetric.selector.ts +4 -4
  197. package/app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.scss +1 -1
  198. package/app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.ts +5 -4
  199. package/app/codeCharta/ui/metricChooser/metricChooser.component.html +1 -2
  200. package/app/codeCharta/ui/metricChooser/metricChooser.component.scss +22 -13
  201. package/app/codeCharta/ui/metricChooser/metricChooser.component.spec.ts +9 -7
  202. package/app/codeCharta/ui/metricChooser/metricChooser.component.ts +11 -10
  203. package/app/codeCharta/ui/metricChooser/metricChooser.module.ts +1 -2
  204. package/app/codeCharta/ui/metricChooser/metricChooserTypeHovered/metricChooserTypeHovered.component.ts +4 -3
  205. package/app/codeCharta/ui/metricChooser/metricChooserValueHovered/metricChooserValueHovered.component.ts +4 -3
  206. package/app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.scss +21 -3
  207. package/app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.ts +5 -4
  208. package/app/codeCharta/ui/ribbonBar/areaMetricChooser/areaMetricChooser.component.spec.ts +9 -6
  209. package/app/codeCharta/ui/ribbonBar/areaMetricChooser/areaMetricChooser.component.ts +4 -3
  210. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.html +13 -23
  211. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.scss +12 -3
  212. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.spec.ts +31 -17
  213. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.ts +14 -14
  214. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.module.ts +1 -2
  215. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.scss +2 -3
  216. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.ts +5 -4
  217. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.html +12 -3
  218. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.spec.ts +10 -2
  219. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.ts +3 -2
  220. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/riskProfileBar.directive.ts +2 -2
  221. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/artificialIntelligence.selector.spec.ts +6 -16
  222. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/artificialIntelligence.selector.ts +7 -11
  223. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.html +11 -1
  224. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.spec.ts +4 -4
  225. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.ts +6 -5
  226. package/app/codeCharta/ui/ribbonBar/colorMetricChooser/colorMetricChooser.component.spec.ts +9 -6
  227. package/app/codeCharta/ui/ribbonBar/colorMetricChooser/colorMetricChooser.component.ts +4 -3
  228. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.html +11 -10
  229. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.scss +17 -12
  230. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.ts +5 -4
  231. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/metricColorRangeSlider.component.ts +5 -4
  232. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSlider.component.html +2 -2
  233. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSlider.component.scss +21 -6
  234. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSlider.component.ts +6 -5
  235. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSliderLabels/rangeSliderLabels.component.spec.ts +2 -2
  236. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSliderLabels/rangeSliderLabels.component.ts +5 -4
  237. package/app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.scss +1 -1
  238. package/app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.spec.ts +8 -6
  239. package/app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.ts +5 -4
  240. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeMetricToggle/edgeMetricToggle.component.ts +4 -4
  241. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.html +14 -15
  242. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.spec.ts +1 -1
  243. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.ts +4 -3
  244. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/selectors/amountOfBuildingsWithSelectedEdgeMetric.selector.ts +3 -3
  245. package/app/codeCharta/ui/ribbonBar/heightMetricChooser/areaMetricChooser.component.ts +4 -3
  246. package/app/codeCharta/ui/ribbonBar/heightMetricChooser/heightMetricChooser.component.spec.ts +9 -6
  247. package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.html +15 -19
  248. package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.spec.ts +3 -2
  249. package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.ts +5 -6
  250. package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.html +1 -1
  251. package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.scss +2 -0
  252. package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.spec.ts +4 -4
  253. package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.ts +5 -4
  254. package/app/codeCharta/ui/ribbonBar/ribbonBar.component.html +21 -8
  255. package/app/codeCharta/ui/ribbonBar/ribbonBar.component.scss +18 -8
  256. package/app/codeCharta/ui/ribbonBar/ribbonBar.component.spec.ts +22 -23
  257. package/app/codeCharta/ui/ribbonBar/ribbonBar.component.ts +7 -6
  258. package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.html +1 -1
  259. package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.scss +9 -7
  260. package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.spec.ts +10 -3
  261. package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.ts +7 -10
  262. package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.module.ts +1 -2
  263. package/app/codeCharta/ui/ribbonBar/showScenariosButton/scenario.service.ts +6 -6
  264. package/app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.scss +2 -2
  265. package/app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.ts +5 -4
  266. package/app/codeCharta/ui/ribbonBar/showScenariosButton/showScenariosButton.component.ts +5 -4
  267. package/app/codeCharta/ui/screenshotButton/screenshotButton.component.ts +8 -7
  268. package/app/codeCharta/ui/searchPanel/blacklistPanel/blacklistPanel.component.scss +2 -2
  269. package/app/codeCharta/ui/searchPanel/blacklistPanel/blacklistPanel.component.ts +5 -4
  270. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeView.component.scss +14 -11
  271. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeView.component.ts +5 -5
  272. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemIcon/mapTreeViewItemIcon.component.ts +3 -2
  273. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemName/mapTreeViewItemName.component.ts +4 -3
  274. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.html +2 -2
  275. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.ts +3 -2
  276. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewLevel/mapTreeViewLevel.component.ts +4 -3
  277. package/app/codeCharta/ui/searchPanel/matchingFilesCounter/matchingFilesCounter.component.html +1 -1
  278. package/app/codeCharta/ui/searchPanel/matchingFilesCounter/matchingFilesCounter.component.scss +2 -2
  279. package/app/codeCharta/ui/searchPanel/matchingFilesCounter/matchingFilesCounter.component.ts +5 -4
  280. package/app/codeCharta/ui/searchPanel/searchBar/blacklistSearchPattern.effect.ts +1 -2
  281. package/app/codeCharta/ui/searchPanel/searchBar/searchBar.component.scss +0 -3
  282. package/app/codeCharta/ui/searchPanel/searchBar/searchBar.component.spec.ts +1 -1
  283. package/app/codeCharta/ui/searchPanel/searchBar/searchBar.component.ts +7 -6
  284. package/app/codeCharta/ui/searchPanel/searchPanel.component.html +1 -1
  285. package/app/codeCharta/ui/searchPanel/searchPanel.component.scss +0 -4
  286. package/app/codeCharta/ui/searchPanel/searchPanel.component.ts +4 -3
  287. package/app/codeCharta/ui/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.html +6 -20
  288. package/app/codeCharta/ui/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.scss +4 -6
  289. package/app/codeCharta/ui/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.ts +5 -4
  290. package/app/codeCharta/ui/searchPanel/sortingButton/sortingButton.component.ts +4 -3
  291. package/app/codeCharta/ui/searchPanel/sortingOption/sortingOption.component.spec.ts +1 -1
  292. package/app/codeCharta/ui/searchPanel/sortingOption/sortingOption.component.ts +4 -3
  293. package/app/codeCharta/ui/slider/slider.component.html +17 -21
  294. package/app/codeCharta/ui/slider/slider.component.scss +36 -19
  295. package/app/codeCharta/ui/slider/slider.component.spec.ts +38 -38
  296. package/app/codeCharta/ui/slider/slider.component.ts +8 -9
  297. package/app/codeCharta/ui/slider/slider.module.ts +1 -2
  298. package/app/codeCharta/ui/toolBar/downloadButton/downloadButton.component.spec.ts +2 -1
  299. package/app/codeCharta/ui/toolBar/downloadButton/downloadButton.component.ts +4 -3
  300. package/app/codeCharta/ui/toolBar/downloadButton/downloadButton.module.ts +1 -2
  301. package/app/codeCharta/ui/toolBar/downloadButton/downloadDialog/downloadDialog.component.html +1 -1
  302. package/app/codeCharta/ui/toolBar/downloadButton/downloadDialog/downloadDialog.component.scss +4 -5
  303. package/app/codeCharta/ui/toolBar/downloadButton/downloadDialog/downloadDialog.component.ts +5 -4
  304. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.html +1 -1
  305. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.scss +28 -34
  306. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.ts +5 -4
  307. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.module.ts +1 -2
  308. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/displayQualitySelection/displayQualitySelection.component.html +1 -1
  309. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/displayQualitySelection/displayQualitySelection.component.ts +4 -3
  310. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.html +26 -23
  311. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.ts +4 -3
  312. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.html +1 -1
  313. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.spec.ts +27 -24
  314. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.ts +5 -4
  315. package/app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanel.component.ts +5 -4
  316. package/app/codeCharta/ui/toolBar/loadingMapProgressSpinner/loadingMapProgressSpinner.component.ts +5 -4
  317. package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.html +8 -11
  318. package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.scss +4 -3
  319. package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.spec.ts +2 -2
  320. package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.ts +5 -4
  321. package/app/codeCharta/ui/toolBar/toolBar.component.scss +2 -4
  322. package/app/codeCharta/ui/toolBar/toolBar.component.ts +5 -5
  323. package/app/codeCharta/ui/toolBar/toolBar.module.ts +1 -2
  324. package/app/codeCharta/ui/toolBar/uploadFilesButton/uploadFiles.service.ts +2 -2
  325. package/app/codeCharta/ui/toolBar/uploadFilesButton/uploadFilesButton.component.ts +5 -4
  326. package/app/codeCharta/ui/viewCube/centerMapButton/centerMapButton.component.ts +5 -4
  327. package/app/codeCharta/ui/viewCube/viewCube.component.spec.ts +2 -2
  328. package/app/codeCharta/ui/viewCube/viewCube.component.ts +6 -5
  329. package/app/codeCharta/ui/viewCube/viewCube.mouseEvents.service.spec.ts +3 -2
  330. package/app/codeCharta/ui/viewCube/viewCube.mouseEvents.service.ts +6 -6
  331. package/app/codeCharta/util/EventEmitter.ts +22 -0
  332. package/app/codeCharta/util/__snapshots__/aggregationGenerator.spec.ts.snap +116 -116
  333. package/app/codeCharta/util/__snapshots__/deltaGenerator.spec.ts.snap +82 -82
  334. package/app/codeCharta/util/__snapshots__/fileHelper.spec.ts.snap +23 -23
  335. package/app/codeCharta/util/aggregationGenerator.spec.ts +33 -27
  336. package/app/codeCharta/util/aggregationGenerator.ts +4 -1
  337. package/app/codeCharta/util/algorithm/treeMapLayout/__snapshots__/treeMapGenerator.spec.ts.snap +137 -137
  338. package/app/codeCharta/util/algorithm/treeMapLayout/__snapshots__/treeMapHelper.spec.ts.snap +9 -9
  339. package/app/codeCharta/util/customConfigBuilder.spec.ts +11 -4
  340. package/app/codeCharta/util/customConfigBuilder.ts +9 -3
  341. package/app/codeCharta/util/customConfigHelper.ts +8 -8
  342. package/app/codeCharta/util/dataMocks.ts +29 -5
  343. package/app/codeCharta/util/debounce.spec.ts +16 -0
  344. package/app/codeCharta/util/debounce.ts +10 -0
  345. package/app/codeCharta/util/fileDownloader.ts +1 -1
  346. package/app/codeCharta/util/gameObjectsParser/__snapshots__/gameObjectsImporter.spec.ts.snap +37 -37
  347. package/app/codeCharta/util/nodeDecorator.spec.ts +14 -1
  348. package/app/codeCharta/util/nodeDecorator.ts +12 -12
  349. package/app/codeCharta/util/parseNumberInput.ts +1 -1
  350. package/app/codeCharta/util/reduxHelper.ts +3 -3
  351. package/app/codeCharta/util/simplePipes/SimplePipesModule.ts +9 -0
  352. package/app/codeCharta/util/simplePipes/metricDescriptorTitle.pipe.spec.ts +62 -0
  353. package/app/codeCharta/util/simplePipes/metricDescriptorTitle.pipe.ts +18 -0
  354. package/app/codeCharta/util/{removeExtension.pipe.ts → simplePipes/removeExtension.pipe.ts} +1 -1
  355. package/app/codeCharta/util/truncateText.pipe.ts +8 -0
  356. package/app/codeCharta/util/truncateText.spec.ts +19 -0
  357. package/app/index.html +1 -0
  358. package/app/material/_theme.scss +28 -17
  359. package/app/material/matDialog.scss +1 -1
  360. package/app/material/matMenu.scss +2 -2
  361. package/app/material/material.module.ts +5 -3
  362. package/app/material/material.scss +1 -6
  363. package/app/polyfills.ts +28 -0
  364. package/conf/jestE2E.config.json +1 -3
  365. package/conf/jestUnit.config.json +5 -17
  366. package/conf/webpack.config.js +19 -56
  367. package/dist/webpack/3rdpartylicenses.txt +1063 -0
  368. package/dist/webpack/codeCharta/assets/codecharta_logo.svg +1 -0
  369. package/dist/webpack/codeCharta/assets/empty.png +0 -0
  370. package/dist/webpack/codeCharta/assets/favicon.ico +0 -0
  371. package/dist/webpack/codeCharta/assets/gameObjectsFile.json +75 -0
  372. package/dist/webpack/codeCharta/assets/icon.icns +0 -0
  373. package/dist/webpack/codeCharta/assets/icon.ico +0 -0
  374. package/dist/webpack/codeCharta/assets/icon.png +0 -0
  375. package/dist/webpack/codeCharta/assets/output.cc.json.gz +0 -0
  376. package/dist/webpack/codeCharta/assets/sample1.cc.json +97 -0
  377. package/dist/webpack/codeCharta/assets/sample2.cc.json +46 -0
  378. package/dist/webpack/codeCharta/assets/sample3.cc.json +40 -0
  379. package/dist/webpack/codeCharta/assets/sample4.cc.json +45 -0
  380. package/dist/webpack/codeCharta/assets/scenarios.json +50 -0
  381. package/dist/webpack/index.html +7 -7
  382. package/dist/webpack/main.bc36f7880e897bab.js +1 -0
  383. package/dist/webpack/material-icons-outlined.78a93b2079680a08.woff +0 -0
  384. package/dist/webpack/material-icons-outlined.f86cb7b0aa53f0fe.woff2 +0 -0
  385. package/dist/webpack/material-icons-round.92dc7ca2f4c591e7.woff +0 -0
  386. package/dist/webpack/material-icons-round.b10ec9db5b7fbc74.woff2 +0 -0
  387. package/dist/webpack/material-icons-sharp.3885863ee4746422.woff2 +0 -0
  388. package/dist/webpack/material-icons-sharp.a71cb2bf66c604de.woff +0 -0
  389. package/dist/webpack/material-icons-two-tone.588d63134de807a7.woff +0 -0
  390. package/dist/webpack/material-icons-two-tone.675bd578bd14533e.woff2 +0 -0
  391. package/dist/webpack/material-icons.4ad034d2c499d9b6.woff +0 -0
  392. package/dist/webpack/material-icons.59322316b3fd6063.woff2 +0 -0
  393. package/dist/webpack/polyfills.d69fe4da6218c8a9.js +1 -0
  394. package/dist/webpack/runtime.e384ce5b1b4e5942.js +1 -0
  395. package/dist/webpack/styles.796849f6e33c93f5.css +4 -0
  396. package/package.json +33 -51
  397. package/tsconfig.json +25 -22
  398. package/app/codeCharta/state/effects/resetDynamicMargin/resetDynamicMargin.effect.spec.ts +0 -48
  399. package/app/codeCharta/state/effects/resetDynamicMargin/resetDynamicMargin.effect.ts +0 -19
  400. package/app/codeCharta/state/selectors/accumulatedData/metricData/edgeMetricData.selector.spec.ts +0 -56
  401. package/app/codeCharta/state/store/appSettings/dynamicMargin/dynamicMargin.actions.ts +0 -21
  402. package/app/codeCharta/state/store/appSettings/dynamicMargin/dynamicMargin.reducer.spec.ts +0 -17
  403. package/app/codeCharta/state/store/appSettings/dynamicMargin/dynamicMargin.reducer.ts +0 -16
  404. package/app/codeCharta/state/store/appSettings/dynamicMargin/dynamicMargin.selector.ts +0 -4
  405. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.po.ts +0 -22
  406. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/invertAreaOption/invertAreaOption.component.html +0 -1
  407. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/invertAreaOption/invertAreaOption.component.spec.ts +0 -29
  408. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/invertAreaOption/invertAreaOption.component.ts +0 -23
  409. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel.po.ts +0 -19
  410. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeMetricToggle/edgeMetricToggle.component.scss +0 -4
  411. package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.scss +0 -18
  412. package/app/codeCharta/util/envDetector.ts +0 -3
  413. package/app/codeCharta/util/removeExtensionModule.ts +0 -8
  414. package/app/codeCharta/util/testUtils/drag.ts +0 -47
  415. package/app/material/matSelect.scss +0 -17
  416. package/conf/webpack.loaders.js +0 -54
  417. package/dist/webpack/04411cba9583fb0df01f.woff +0 -0
  418. package/dist/webpack/6289913a298e816100f5.woff +0 -0
  419. package/dist/webpack/6b3adb7ef9c9ac8d598a.woff +0 -0
  420. package/dist/webpack/6c307c85ae675678f41e.woff2 +0 -0
  421. package/dist/webpack/a70ec3e73fd410cdb178.woff2 +0 -0
  422. package/dist/webpack/aa2aae2fbd0e0b30967d.woff +0 -0
  423. package/dist/webpack/aa80805e686668b4358c.woff2 +0 -0
  424. package/dist/webpack/b906db2201d314b2ee12.woff2 +0 -0
  425. package/dist/webpack/bundle.js +0 -3
  426. package/dist/webpack/bundle.js.LICENSE.txt +0 -7619
  427. package/dist/webpack/bundle.js.map +0 -1
  428. package/dist/webpack/c6c0935815f6ba8fd80a.woff2 +0 -0
  429. package/dist/webpack/cb25b0543db8b7f06135.woff +0 -0
  430. /package/app/{assets/icon.ico → codeCharta/assets/favicon.ico} +0 -0
  431. /package/app/{assets → codeCharta/assets}/flatten.png +0 -0
  432. /package/app/{assets → codeCharta/assets}/icon.icns +0 -0
  433. /package/{dist/webpack → app/codeCharta/assets}/icon.ico +0 -0
  434. /package/app/{assets → codeCharta/assets}/icon.png +0 -0
  435. /package/app/codeCharta/state/store/fileSettings/attributeDescriptors/{attributesDescriptors.selector.ts → attributeDescriptors.selector.ts} +0 -0
  436. /package/app/codeCharta/util/{removeExtension.pipe.spec.ts → simplePipes/removeExtension.pipe.spec.ts} +0 -0
  437. /package/dist/webpack/{af36b2ef7e54a0b53f02.png → codeCharta/assets/flatten.png} +0 -0
  438. /package/dist/webpack/{6bfc95354e1616904298.png → codeCharta/assets/logo.png} +0 -0
  439. /package/dist/webpack/{8b43027f47b20503057d.eot → fontawesome-webfont.2b13baa7dd4f54c9.eot} +0 -0
  440. /package/dist/webpack/{1e59d2330b4c6deb84b3.ttf → fontawesome-webfont.8a7cb27d142e3e19.ttf} +0 -0
  441. /package/dist/webpack/{f691f37e57f04c152e23.woff → fontawesome-webfont.cf011583fb81df9f.woff} +0 -0
  442. /package/dist/webpack/{c1e38fd9e0e74ba58f7a.svg → fontawesome-webfont.da909aa098b0ee2d.svg} +0 -0
  443. /package/dist/webpack/{20fd1704ea223900efa9.woff2 → fontawesome-webfont.e9955780856cf8aa.woff2} +0 -0
@@ -44,9 +44,12 @@ describe("_getLegendEdgeMetric", () => {
44
44
  TEST_ATTRIBUTE_DESCRIPTORS_HALF_FILLED
45
45
  )
46
46
  ).toEqual({
47
+ description: "Maximum cyclic complexity",
48
+ hintHighValue: "",
49
+ hintLowValue: "",
47
50
  key: "mcc",
48
- title: "Maximum Cyclic Complexity",
49
- description: "Maximum cyclic complexity"
51
+ link: "https://www.npmjs.com/package/metric-gardener",
52
+ title: "Maximum Cyclic Complexity"
50
53
  })
51
54
 
52
55
  expect(
@@ -62,9 +65,12 @@ describe("_getLegendEdgeMetric", () => {
62
65
  TEST_ATTRIBUTE_DESCRIPTORS_HALF_FILLED
63
66
  )
64
67
  ).toEqual({
68
+ description: "",
69
+ hintHighValue: "",
70
+ hintLowValue: "",
65
71
  key: "rloc",
66
- title: "Real Lines of Code",
67
- description: ""
72
+ link: "https://www.npmjs.com/package/metric-gardener",
73
+ title: "Real Lines of Code"
68
74
  })
69
75
  })
70
76
  })
@@ -1,10 +1,10 @@
1
1
  import { EdgeMetricData } from "../../../codeCharta.model"
2
2
  import { createSelector } from "../../../state/angular-redux/createSelector"
3
- import { edgeMetricDataSelector } from "../../../state/selectors/accumulatedData/metricData/edgeMetricData.selector"
4
3
  import { edgeMetricSelector } from "../../../state/store/dynamicSettings/edgeMetric/edgeMetric.selector"
5
4
  import { CcState } from "../../../state/store/store"
6
- import { getLegendMetric, LegendMetric } from "./legendMetric"
7
- import { attributeDescriptorsSelector } from "../../../state/store/fileSettings/attributeDescriptors/attributesDescriptors.selector"
5
+ import { getMetricDescriptors, MetricDescriptors } from "../../attributeSideBar/util/metricDescriptors"
6
+ import { attributeDescriptorsSelector } from "../../../state/store/fileSettings/attributeDescriptors/attributeDescriptors.selector"
7
+ import { metricDataSelector } from "../../../state/selectors/accumulatedData/metricData/metricData.selector"
8
8
 
9
9
  export const _getLegendEdgeMetric = (edgeMetric: string, edgeMetricDatas: EdgeMetricData[], attributeDescriptors) => {
10
10
  const edgeMetricData = edgeMetricDatas.find(someEdgeMetricData => {
@@ -15,10 +15,10 @@ export const _getLegendEdgeMetric = (edgeMetric: string, edgeMetricDatas: EdgeMe
15
15
  return
16
16
  }
17
17
 
18
- return getLegendMetric(edgeMetric, attributeDescriptors)
18
+ return getMetricDescriptors(edgeMetric, attributeDescriptors)
19
19
  }
20
20
 
21
- export const legendEdgeMetricSelector: (state: CcState) => LegendMetric | undefined = createSelector(
22
- [edgeMetricSelector, edgeMetricDataSelector, attributeDescriptorsSelector],
23
- _getLegendEdgeMetric
21
+ export const legendEdgeMetricSelector: (state: CcState) => MetricDescriptors | undefined = createSelector(
22
+ [edgeMetricSelector, metricDataSelector, attributeDescriptorsSelector],
23
+ (edgeMetric, metricData, attributeDescriptors) => _getLegendEdgeMetric(edgeMetric, metricData.edgeMetricData, attributeDescriptors)
24
24
  )
@@ -1,10 +1,10 @@
1
1
  import { createSelector } from "../../../state/angular-redux/createSelector"
2
2
  import { heightMetricSelector } from "../../../state/store/dynamicSettings/heightMetric/heightMetric.selector"
3
3
  import { CcState } from "../../../state/store/store"
4
- import { getLegendMetric, LegendMetric } from "./legendMetric"
5
- import { attributeDescriptorsSelector } from "../../../state/store/fileSettings/attributeDescriptors/attributesDescriptors.selector"
4
+ import { getMetricDescriptors, MetricDescriptors } from "../../attributeSideBar/util/metricDescriptors"
5
+ import { attributeDescriptorsSelector } from "../../../state/store/fileSettings/attributeDescriptors/attributeDescriptors.selector"
6
6
 
7
- export const legendHeightMetricSelector: (state: CcState) => LegendMetric = createSelector(
7
+ export const legendHeightMetricSelector: (state: CcState) => MetricDescriptors = createSelector(
8
8
  [heightMetricSelector, attributeDescriptorsSelector],
9
- (heightMetric, attributeDescriptors) => getLegendMetric(heightMetric, attributeDescriptors)
9
+ (heightMetric, attributeDescriptors) => getMetricDescriptors(heightMetric, attributeDescriptors)
10
10
  )
@@ -9,7 +9,7 @@ cc-loading-file-progress-spinner #loading-gif-file {
9
9
  display: inline-block;
10
10
  text-align: center;
11
11
 
12
- mat-progress-spinner.mat-progress-spinner {
12
+ mat-progress-spinner.mat-mdc-progress-spinner {
13
13
  display: inline-block;
14
14
  margin: 22% auto 0;
15
15
  }
@@ -1,17 +1,18 @@
1
- import "./loadingFileProgressSpinner.component.scss"
2
- import { Component, Inject } from "@angular/core"
1
+ import { Component, ViewEncapsulation } from "@angular/core"
3
2
  import { Observable } from "rxjs"
4
3
  import { Store } from "../../state/angular-redux/store"
5
4
  import { isLoadingFileSelector } from "../../state/store/appSettings/isLoadingFile/isLoadingFile.selector"
6
5
 
7
6
  @Component({
8
7
  selector: "cc-loading-file-progress-spinner",
9
- template: require("./loadingFileProgressSpinner.component.html")
8
+ templateUrl: "./loadingFileProgressSpinner.component.html",
9
+ styleUrls: ["./loadingFileProgressSpinner.component.scss"],
10
+ encapsulation: ViewEncapsulation.None
10
11
  })
11
12
  export class LoadingFileProgressSpinnerComponent {
12
13
  isLoadingFile$: Observable<boolean>
13
14
 
14
- constructor(@Inject(Store) store: Store) {
15
+ constructor(store: Store) {
15
16
  this.isLoadingFile$ = store.select(isLoadingFileSelector)
16
17
  }
17
18
  }
@@ -13,12 +13,11 @@
13
13
  <mat-option
14
14
  *ngFor="let option of metricData$ | async | filterMetricDataBySearchTerm: searchTerm"
15
15
  [value]="option.name"
16
- matTooltip="{{ metricDataDescription$.get(option.name) }}"
16
+ matTooltip="{{ metricDataDescription.get(option.name) }}"
17
17
  >
18
18
  {{ option.name }}
19
19
  <span class="metric-max-value">({{ option.maxValue }})</span>
20
20
  </mat-option>
21
21
  </div>
22
22
  </mat-select>
23
-
24
23
  <ng-content select="[hoveredInformation]"></ng-content>
@@ -1,14 +1,13 @@
1
1
  @use "../../../material/theme";
2
2
 
3
3
  cc-metric-chooser {
4
- position: relative;
5
4
  width: 100%;
6
5
 
7
6
  cc-metric-chooser-value-hovered,
8
7
  .cc-metric-chooser-hovered-container {
9
8
  position: absolute;
10
- bottom: 0;
11
- right: 0;
9
+ top: 10%;
10
+ right: 28px;
12
11
 
13
12
  .metric-value {
14
13
  height: 25px;
@@ -22,40 +21,50 @@ cc-metric-chooser {
22
21
  }
23
22
  }
24
23
 
25
- .mat-select {
24
+ .mat-mdc-select {
26
25
  border-bottom: none;
27
26
  }
28
27
  }
29
28
 
30
- .mat-select-panel.cc-metric-chooser {
29
+ .mat-mdc-select-panel.cc-metric-chooser {
31
30
  margin-top: 16px;
32
- width: 360px;
33
- max-width: 360px;
31
+ overflow: hidden;
34
32
 
35
33
  .cc-metric-chooser-search-field {
36
34
  width: 100%;
37
- color: theme.$cc-primary-color;
38
35
  font-size: 14px;
36
+ padding: 0 6px;
39
37
 
40
38
  .search-icon {
41
- margin-right: 8px;
39
+ color: theme.$cc-primary-color;
42
40
  margin-left: 8px;
43
41
  font-size: 18px;
44
42
  }
45
43
 
46
- .mat-form-field-label {
47
- margin-top: 4px;
44
+ .mat-mdc-form-field-subscript-wrapper.mat-mdc-form-field-bottom-align {
45
+ display: none;
46
+ }
47
+
48
+ .mat-mdc-form-field-infix {
49
+ margin-left: 6px;
50
+ display: flex;
48
51
  }
49
52
  }
50
53
 
51
54
  .cc-metric-chooser-option-container {
52
- margin-top: -18px;
53
55
  max-height: 216px;
54
56
  overflow-y: auto;
55
57
  font-size: 16px;
58
+ padding: 0 6px;
56
59
 
57
- .metric-max-value {
60
+ mat-option .metric-max-value {
58
61
  color: #ccc;
59
62
  }
60
63
  }
61
64
  }
65
+
66
+ .cdk-overlay-pane:not(.mat-mdc-select-panel-above) .mdc-menu-surface.mat-mdc-select-panel {
67
+ min-width: 300px;
68
+ position: absolute;
69
+ right: 0;
70
+ }
@@ -6,12 +6,14 @@ import userEvent from "@testing-library/user-event"
6
6
  import { MetricChooserComponent } from "./metricChooser.component"
7
7
  import { MetricChooserModule } from "./metricChooser.module"
8
8
 
9
- jest.mock("../../state/selectors/accumulatedData/metricData/nodeMetricData.selector", () => ({
10
- nodeMetricDataSelector: () => [
11
- { name: "aMetric", maxValue: 1 },
12
- { name: "bMetric", maxValue: 2 },
13
- { name: "cMetric", maxValue: 3 }
14
- ]
9
+ jest.mock("../../state/selectors/accumulatedData/metricData/metricData.selector", () => ({
10
+ metricDataSelector: () => ({
11
+ nodeMetricData: [
12
+ { name: "aMetric", maxValue: 1 },
13
+ { name: "bMetric", maxValue: 2 },
14
+ { name: "cMetric", maxValue: 3 }
15
+ ]
16
+ })
15
17
  }))
16
18
 
17
19
  describe("metricChooserComponent", () => {
@@ -54,7 +56,7 @@ describe("metricChooserComponent", () => {
54
56
  })
55
57
 
56
58
  await userEvent.click(await screen.findByText("aMetric (1)"))
57
- await screen.findByText("search metric (max value)")
59
+ screen.getByPlaceholderText("search metric (max value)")
58
60
  const searchBox = getSearchBox()
59
61
  expect(document.activeElement).toBe(searchBox)
60
62
 
@@ -1,17 +1,17 @@
1
- import "./metricChooser.component.scss"
2
- import { Component, ElementRef, Inject, Input, OnInit, ViewChild } from "@angular/core"
1
+ import { Component, ElementRef, Input, OnInit, ViewChild, ViewEncapsulation } from "@angular/core"
3
2
  import { Store } from "../../state/angular-redux/store"
4
- import { nodeMetricDataSelector } from "../../state/selectors/accumulatedData/metricData/nodeMetricData.selector"
5
- import { Observable } from "rxjs"
3
+ import { map, Observable } from "rxjs"
6
4
  import { EdgeMetricData, NodeMetricData } from "../../codeCharta.model"
7
- import { edgeMetricDataSelector } from "../../state/selectors/accumulatedData/metricData/edgeMetricData.selector"
8
5
  import { metricTitles } from "../../util/metric/metricTitles"
6
+ import { metricDataSelector } from "../../state/selectors/accumulatedData/metricData/metricData.selector"
9
7
 
10
8
  type MetricChooserType = "node" | "edge"
11
9
 
12
10
  @Component({
13
11
  selector: "cc-metric-chooser",
14
- template: require("./metricChooser.component.html")
12
+ templateUrl: "./metricChooser.component.html",
13
+ styleUrls: ["./metricChooser.component.scss"],
14
+ encapsulation: ViewEncapsulation.None
15
15
  })
16
16
  export class MetricChooserComponent implements OnInit {
17
17
  @Input() selectedMetricName: string
@@ -22,13 +22,14 @@ export class MetricChooserComponent implements OnInit {
22
22
  @ViewChild("searchTermInput") searchTermInput: ElementRef<HTMLInputElement>
23
23
  searchTerm = ""
24
24
  metricData$: Observable<NodeMetricData[] | EdgeMetricData[]>
25
- metricDataDescription$: Map<string, string>
25
+ metricDataDescription: Map<string, string> = metricTitles
26
26
 
27
- constructor(@Inject(Store) private store: Store) {}
27
+ constructor(private store: Store) {}
28
28
 
29
29
  ngOnInit(): void {
30
- this.metricData$ = this.store.select(this.type === "node" ? nodeMetricDataSelector : edgeMetricDataSelector)
31
- this.metricDataDescription$ = metricTitles
30
+ this.metricData$ = this.store
31
+ .select(metricDataSelector)
32
+ .pipe(map(metricData => (this.type === "node" ? metricData.nodeMetricData : metricData.edgeMetricData)))
32
33
  }
33
34
 
34
35
  handleOpenedChanged(opened: boolean) {
@@ -8,7 +8,6 @@ import { MetricChooserComponent } from "./metricChooser.component"
8
8
  @NgModule({
9
9
  imports: [CommonModule, MaterialModule, FormsModule],
10
10
  declarations: [MetricChooserComponent, FilterMetricDataBySearchTermPipe],
11
- exports: [MetricChooserComponent],
12
- entryComponents: [MetricChooserComponent]
11
+ exports: [MetricChooserComponent]
13
12
  })
14
13
  export class MetricChooserModule {}
@@ -1,4 +1,4 @@
1
- import { Component, Inject, Input, OnInit } from "@angular/core"
1
+ import { Component, Input, OnInit, ViewEncapsulation } from "@angular/core"
2
2
  import { Observable } from "rxjs"
3
3
  import { AttributeTypes, PrimaryMetrics } from "../../../codeCharta.model"
4
4
  import { Store } from "../../../state/angular-redux/store"
@@ -7,7 +7,8 @@ import { isHoveredNodeALeafSelector } from "./isHoveredNodeALeaf.selector"
7
7
 
8
8
  @Component({
9
9
  selector: "cc-metric-chooser-type-hovered",
10
- template: require("./metricChooserTypeHovered.component.html")
10
+ templateUrl: "./metricChooserTypeHovered.component.html",
11
+ encapsulation: ViewEncapsulation.None
11
12
  })
12
13
  export class MetricChooserTypeHoveredComponent implements OnInit {
13
14
  @Input() metricFor: keyof PrimaryMetrics
@@ -16,7 +17,7 @@ export class MetricChooserTypeHoveredComponent implements OnInit {
16
17
  isHoveredNodeALeaf$: Observable<boolean>
17
18
  attributeType$: Observable<string>
18
19
 
19
- constructor(@Inject(Store) private store: Store) {}
20
+ constructor(private store: Store) {}
20
21
 
21
22
  ngOnInit(): void {
22
23
  this.isHoveredNodeALeaf$ = this.store.select(isHoveredNodeALeafSelector)
@@ -1,4 +1,4 @@
1
- import { Component, Inject, Input } from "@angular/core"
1
+ import { Component, Input, ViewEncapsulation } from "@angular/core"
2
2
  import { Observable } from "rxjs"
3
3
  import { CodeMapNode, PrimaryMetrics } from "../../../codeCharta.model"
4
4
  import { Store } from "../../../state/angular-redux/store"
@@ -7,7 +7,8 @@ import { primaryMetricNamesSelector } from "../../../state/selectors/primaryMetr
7
7
 
8
8
  @Component({
9
9
  selector: "cc-metric-chooser-value-hovered",
10
- template: require("./metricChooserValueHovered.component.html")
10
+ templateUrl: "./metricChooserValueHovered.component.html",
11
+ encapsulation: ViewEncapsulation.None
11
12
  })
12
13
  export class MetricChooserValueHoveredComponent {
13
14
  @Input() metricFor: keyof PrimaryMetrics
@@ -15,7 +16,7 @@ export class MetricChooserValueHoveredComponent {
15
16
  hoveredNode$: Observable<CodeMapNode | undefined>
16
17
  primaryMetricNames$: Observable<PrimaryMetrics>
17
18
 
18
- constructor(@Inject(Store) store: Store) {
19
+ constructor(store: Store) {
19
20
  this.primaryMetricNames$ = store.select(primaryMetricNamesSelector)
20
21
  this.hoveredNode$ = store.select(hoveredNodeSelector)
21
22
  }
@@ -1,11 +1,29 @@
1
+ @use "../../../material/theme";
2
+
1
3
  cc-reset-settings-button {
2
4
  button {
3
- color: rgb(0, 150, 136);
5
+ color: theme.$cc-primary-color;
4
6
  background: none;
5
- padding: 8px;
7
+ align-items: center;
8
+ display: flex;
9
+ gap: 4px;
10
+ margin: 0;
11
+ padding: 0;
12
+
13
+ .fa {
14
+ display: flex;
15
+ align-items: center;
16
+ justify-content: center;
17
+ height: 40px;
18
+ width: 40px;
19
+ font-size: 18px;
20
+ }
6
21
 
7
22
  &:hover {
8
- background-color: rgba(158, 158, 158, 0.2);
23
+ .fa {
24
+ border-radius: 100%;
25
+ background-color: rgba(158, 158, 158, 0.2);
26
+ }
9
27
  }
10
28
  }
11
29
  }
@@ -1,13 +1,14 @@
1
- import "./resetSettingsButton.component.scss"
2
1
  import { setState } from "../../state/store/state.actions"
3
2
  import { getPartialDefaultState } from "./getPartialDefaultState"
4
- import { Component, Inject, Input } from "@angular/core"
3
+ import { Component, Input, ViewEncapsulation } from "@angular/core"
5
4
  import { Store } from "../../state/angular-redux/store"
6
5
  import { State } from "../../state/angular-redux/state"
7
6
 
8
7
  @Component({
9
8
  selector: "cc-reset-settings-button",
10
- template: require("./resetSettingsButton.component.html")
9
+ templateUrl: "./resetSettingsButton.component.html",
10
+ styleUrls: ["./resetSettingsButton.component.scss"],
11
+ encapsulation: ViewEncapsulation.None
11
12
  })
12
13
  export class ResetSettingsButtonComponent {
13
14
  @Input() settingsKeys: string[]
@@ -15,7 +16,7 @@ export class ResetSettingsButtonComponent {
15
16
  @Input() label?: string
16
17
  @Input() callback?: () => void
17
18
 
18
- constructor(@Inject(Store) private store: Store, @Inject(State) private state: State) {}
19
+ constructor(private store: Store, private state: State) {}
19
20
 
20
21
  applyDefaultSettings() {
21
22
  const partialDefaultState = getPartialDefaultState(this.settingsKeys, this.state.getValue())
@@ -7,11 +7,14 @@ import { Store } from "../../../state/store/store"
7
7
  import { AreaMetricChooserComponent } from "./areaMetricChooser.component"
8
8
  import { AreaMetricChooserModule } from "./areaMetricChooser.module"
9
9
 
10
- jest.mock("../../../state/selectors/accumulatedData/metricData/nodeMetricData.selector", () => ({
11
- nodeMetricDataSelector: () => [
12
- { name: "aMetric", maxValue: 1 },
13
- { name: "bMetric", maxValue: 2 }
14
- ]
10
+ jest.mock("../../../state/selectors/accumulatedData/metricData/metricData.selector", () => ({
11
+ metricDataSelector: () => ({
12
+ nodeMetricData: [
13
+ { name: "aMetric", maxValue: 1 },
14
+ { name: "bMetric", maxValue: 2 }
15
+ ],
16
+ edgeMetricData: []
17
+ })
15
18
  }))
16
19
 
17
20
  describe("areaMetricChooserComponent", () => {
@@ -26,7 +29,7 @@ describe("areaMetricChooserComponent", () => {
26
29
  await render(AreaMetricChooserComponent, { excludeComponentDeclaration: true })
27
30
 
28
31
  await userEvent.click(await screen.findByText("aMetric (1)"))
29
- expect(screen.getByText("Area Metric (highest value)")).not.toBe(null)
32
+ expect(screen.getByPlaceholderText("Area Metric (highest value)")).not.toBe(null)
30
33
  const options = screen.queryAllByRole("option")
31
34
  expect(options[0].textContent).toMatch("aMetric (1)")
32
35
  expect(options[1].textContent).toMatch("bMetric (2)")
@@ -1,16 +1,17 @@
1
- import { Component, Inject } from "@angular/core"
1
+ import { Component, ViewEncapsulation } from "@angular/core"
2
2
  import { Store } from "../../../state/angular-redux/store"
3
3
  import { setAreaMetric } from "../../../state/store/dynamicSettings/areaMetric/areaMetric.actions"
4
4
  import { areaMetricSelector } from "../../../state/store/dynamicSettings/areaMetric/areaMetric.selector"
5
5
 
6
6
  @Component({
7
7
  selector: "cc-area-metric-chooser",
8
- template: require("./areaMetricChooser.component.html")
8
+ templateUrl: "./areaMetricChooser.component.html",
9
+ encapsulation: ViewEncapsulation.None
9
10
  })
10
11
  export class AreaMetricChooserComponent {
11
12
  areaMetric$ = this.store.select(areaMetricSelector)
12
13
 
13
- constructor(@Inject(Store) private store: Store) {}
14
+ constructor(private store: Store) {}
14
15
 
15
16
  handleAreaMetricChanged(value: string) {
16
17
  this.store.dispatch(setAreaMetric(value))
@@ -1,28 +1,18 @@
1
- <cc-slider
2
- title="Amount of space between buildings in percent"
3
- label="Margin"
4
- [value]="margin$ | async"
5
- [onChange]="applyDebouncedMargin"
6
- [min]="1"
7
- [max]="100"
8
- ></cc-slider>
9
-
10
- <mat-checkbox (change)="setEnableFloorLabel($event)" [checked]="enableFloorLabels$ | async"> Enable Floor Labels </mat-checkbox>
11
-
12
- <div class="bottom-row">
13
- <mat-checkbox
14
- class="default-margin"
15
- [checked]="dynamicMargin$ | async"
16
- (change)="setDynamicMargin($event)"
17
- title="Set margin to default (50px)."
18
- >
19
- Default margin (50px)
20
- </mat-checkbox>
1
+ <div class="options">
2
+ <cc-slider
3
+ title="Amount of space between buildings in percent"
4
+ label="Margin"
5
+ [value]="margin$ | async"
6
+ [onChange]="applyDebouncedMargin"
7
+ [min]="1"
8
+ [max]="100"
9
+ ></cc-slider>
10
+ <mat-checkbox [checked]="enableFloorLabels$ | async" (change)="setEnableFloorLabel($event)">Enable Floor Labels</mat-checkbox>
11
+ <mat-checkbox [checked]="isInvertedArea$ | async" (change)="toggleInvertingArea($event)">Invert Area</mat-checkbox>
21
12
 
22
13
  <cc-reset-settings-button
23
- [settingsKeys]="['appSettings.dynamicMargin']"
14
+ [settingsKeys]="['dynamicSettings.margin', 'appSettings.invertArea', 'appSettings.enableFloorLabels']"
24
15
  tooltip="Reset area metric settings to their defaults"
16
+ label="Reset area metric settings"
25
17
  ></cc-reset-settings-button>
26
18
  </div>
27
-
28
- <cc-invert-area-option></cc-invert-area-option>
@@ -2,9 +2,18 @@ cc-area-settings-panel {
2
2
  text-align: left;
3
3
  max-height: 300px;
4
4
 
5
- .bottom-row {
6
- align-items: center;
5
+ .options {
7
6
  display: flex;
8
- justify-content: space-between;
7
+ flex-direction: column;
8
+
9
+ .margin-option {
10
+ position: relative;
11
+
12
+ cc-reset-settings-button {
13
+ position: absolute;
14
+ top: -20%;
15
+ left: 20%;
16
+ }
17
+ }
9
18
  }
10
19
  }
@@ -1,10 +1,12 @@
1
- import { AreaSettingsPanelComponent } from "./areaSettingsPanel.component"
2
- import { render, screen } from "@testing-library/angular"
3
- import { AreaSettingsPanelModule } from "./areaSettingsPanel.module"
4
- import { Store } from "../../../state/store/store"
1
+ import { TestbedHarnessEnvironment } from "@angular/cdk/testing/testbed"
5
2
  import { TestBed } from "@angular/core/testing"
3
+ import { MatInputHarness } from "@angular/material/input/testing"
4
+ import { render, screen } from "@testing-library/angular"
6
5
  import userEvent from "@testing-library/user-event"
7
- import { wait } from "../../../util/testUtils/wait"
6
+ import { State } from "../../../state/angular-redux/state"
7
+ import { CcState, Store } from "../../../state/store/store"
8
+ import { AreaSettingsPanelComponent } from "./areaSettingsPanel.component"
9
+ import { AreaSettingsPanelModule } from "./areaSettingsPanel.module"
8
10
 
9
11
  describe("AreaSettingsPanelComponent", () => {
10
12
  beforeEach(() => {
@@ -14,19 +16,31 @@ describe("AreaSettingsPanelComponent", () => {
14
16
  })
15
17
  })
16
18
 
17
- it("should reset default margin checkbox on changes of margin slider", async function () {
18
- const { container, detectChanges } = await render(AreaSettingsPanelComponent, { excludeComponentDeclaration: true })
19
- expect(screen.queryByRole("checkbox", { checked: true, name: "Default margin (50px)" })).not.toBe(null)
19
+ it("should allow for change and resetting of 'margin', 'enable floor label' and 'invert area'", async () => {
20
+ const { fixture } = await render(AreaSettingsPanelComponent, { excludeComponentDeclaration: true })
21
+ const loader = TestbedHarnessEnvironment.loader(fixture)
22
+ const state = TestBed.inject(State)
23
+ const initialValues = extractRelatedValues(state.getValue())
20
24
 
21
- const marginInput = container.querySelector("input")
22
- await userEvent.type(marginInput, "1")
23
- await wait(AreaSettingsPanelComponent.DEBOUNCE_TIME)
24
- detectChanges()
25
- expect(screen.queryByRole("checkbox", { checked: false, name: "Default margin (50px)" })).not.toBe(null)
26
- })
25
+ const marginInput = await loader.getHarness(MatInputHarness.with({ ancestor: 'cc-slider[label="Margin"]' }))
26
+ await marginInput.setValue(String(initialValues.margin + 1))
27
+ await userEvent.click(await screen.findByText("Enable Floor Labels"))
28
+ await userEvent.click(await screen.findByText("Invert Area"))
29
+ const changedValues = extractRelatedValues(state.getValue())
30
+ expect(changedValues.margin).toBe(initialValues.margin + 1)
31
+ expect(changedValues.enableFloorLabels).toBe(!initialValues.enableFloorLabels)
32
+ expect(changedValues.invertArea).toBe(!initialValues.invertArea)
27
33
 
28
- it("should display enableFloorLabels-checkbox", async () => {
29
- await render(AreaSettingsPanelComponent, { excludeComponentDeclaration: true })
30
- expect(screen.queryByText("Enable Floor Labels")).not.toBe(null)
34
+ await userEvent.click(await screen.findByText("Reset area metric settings"))
35
+ const resetValues = extractRelatedValues(state.getValue())
36
+ expect(resetValues).toEqual(initialValues)
31
37
  })
38
+
39
+ function extractRelatedValues(state: CcState) {
40
+ return {
41
+ margin: state.dynamicSettings.margin,
42
+ enableFloorLabels: state.appSettings.enableFloorLabels,
43
+ invertArea: state.appSettings.invertArea
44
+ }
45
+ }
32
46
  })
@@ -1,38 +1,38 @@
1
- import { Component, Inject } from "@angular/core"
2
- import "./areaSettingsPanel.component.scss"
1
+ import { Component, ViewEncapsulation } from "@angular/core"
3
2
  import { Store } from "../../../state/angular-redux/store"
4
3
  import { marginSelector } from "../../../state/store/dynamicSettings/margin/margin.selector"
5
- import debounce from "lodash.debounce"
6
4
  import { setMargin } from "../../../state/store/dynamicSettings/margin/margin.actions"
7
- import { dynamicMarginSelector } from "../../../state/store/appSettings/dynamicMargin/dynamicMargin.selector"
8
- import { setDynamicMargin } from "../../../state/store/appSettings/dynamicMargin/dynamicMargin.actions"
9
5
  import { MatCheckboxChange } from "@angular/material/checkbox"
10
6
  import { setEnableFloorLabels } from "../../../state/store/appSettings/enableFloorLabels/enableFloorLabels.actions"
11
7
  import { enableFloorLabelsSelector } from "../../../state/store/appSettings/enableFloorLabels/enableFloorLabels.selector"
8
+ import { invertAreaSelector } from "../../../state/store/appSettings/invertArea/invertArea.selector"
9
+ import { debounce } from "../../../util/debounce"
10
+ import { setInvertArea } from "../../../state/store/appSettings/invertArea/invertArea.actions"
12
11
 
13
12
  @Component({
14
13
  selector: "cc-area-settings-panel",
15
- template: require("./areaSettingsPanel.component.html")
14
+ templateUrl: "./areaSettingsPanel.component.html",
15
+ styleUrls: ["./areaSettingsPanel.component.scss"],
16
+ encapsulation: ViewEncapsulation.None
16
17
  })
17
18
  export class AreaSettingsPanelComponent {
18
19
  static DEBOUNCE_TIME = 400
19
20
 
20
21
  margin$ = this.store.select(marginSelector)
21
- dynamicMargin$ = this.store.select(dynamicMarginSelector)
22
22
  enableFloorLabels$ = this.store.select(enableFloorLabelsSelector)
23
+ isInvertedArea$ = this.store.select(invertAreaSelector)
24
+
25
+ constructor(private store: Store) {}
23
26
 
24
27
  applyDebouncedMargin = debounce((margin: number) => {
25
28
  this.store.dispatch(setMargin(margin))
26
- this.store.dispatch(setDynamicMargin(false))
27
29
  }, AreaSettingsPanelComponent.DEBOUNCE_TIME)
28
30
 
29
- constructor(@Inject(Store) private store: Store) {}
30
-
31
- setDynamicMargin($event: MatCheckboxChange) {
32
- this.store.dispatch(setDynamicMargin($event.checked))
33
- }
34
-
35
31
  setEnableFloorLabel(event: MatCheckboxChange) {
36
32
  this.store.dispatch(setEnableFloorLabels(event.checked))
37
33
  }
34
+
35
+ toggleInvertingArea(event: MatCheckboxChange) {
36
+ this.store.dispatch(setInvertArea(event.checked))
37
+ }
38
38
  }