codecharta-visualization 1.114.0 → 1.115.1

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 (452) 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.html +0 -2
  71. package/app/codeCharta/ui/attributeSideBar/attributeSideBar.component.scss +48 -27
  72. package/app/codeCharta/ui/attributeSideBar/attributeSideBar.component.spec.ts +58 -11
  73. package/app/codeCharta/ui/attributeSideBar/attributeSideBar.component.ts +5 -7
  74. package/app/codeCharta/ui/attributeSideBar/attributeSideBar.module.ts +2 -2
  75. package/app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/attributeSideBarHeaderSection.component.ts +5 -4
  76. package/app/codeCharta/ui/attributeSideBar/attributeSideBarHeaderSection/nodePath/nodePath.component.ts +4 -3
  77. package/app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetric/attributeSideBarPrimaryMetric.component.html +13 -13
  78. package/app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetric/attributeSideBarPrimaryMetric.component.ts +4 -3
  79. package/app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetrics.component.html +26 -20
  80. package/app/codeCharta/ui/attributeSideBar/attributeSideBarPrimaryMetrics/attributeSideBarPrimaryMetrics.component.ts +4 -3
  81. package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.html +9 -7
  82. package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/attributeSideBarSecondaryMetrics.component.ts +4 -3
  83. package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/secondaryMetrics.selector.spec.ts +29 -4
  84. package/app/codeCharta/ui/attributeSideBar/attributeSideBarSecondaryMetrics/secondaryMetrics.selector.ts +11 -4
  85. package/app/codeCharta/ui/attributeSideBar/attributeTypeSelector/attributeTypeSelector.component.scss +16 -8
  86. package/app/codeCharta/ui/attributeSideBar/attributeTypeSelector/attributeTypeSelector.component.ts +5 -4
  87. package/app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.html +1 -1
  88. package/app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.spec.ts +2 -2
  89. package/app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.ts +4 -3
  90. package/app/codeCharta/ui/attributeSideBar/util/edge.ts +7 -0
  91. package/app/codeCharta/ui/attributeSideBar/util/metric.ts +2 -0
  92. package/app/codeCharta/ui/{legendPanel/selectors/legendMetric.ts → attributeSideBar/util/metricDescriptors.ts} +10 -4
  93. package/app/codeCharta/ui/codeMap/__snapshots__/codeMap.arrow.service.spec.ts.snap +16 -16
  94. package/app/codeCharta/ui/codeMap/__snapshots__/codeMap.render.service.spec.ts.snap +19 -19
  95. package/app/codeCharta/ui/codeMap/codeMap.arrow.service.spec.ts +5 -4
  96. package/app/codeCharta/ui/codeMap/codeMap.arrow.service.ts +34 -29
  97. package/app/codeCharta/ui/codeMap/codeMap.component.ts +9 -8
  98. package/app/codeCharta/ui/codeMap/codeMap.label.service.ts +5 -5
  99. package/app/codeCharta/ui/codeMap/codeMap.mouseEvent.service.spec.ts +14 -1
  100. package/app/codeCharta/ui/codeMap/codeMap.mouseEvent.service.ts +30 -25
  101. package/app/codeCharta/ui/codeMap/codeMap.render.service.spec.ts +8 -6
  102. package/app/codeCharta/ui/codeMap/codeMap.render.service.ts +18 -13
  103. package/app/codeCharta/ui/codeMap/threeViewer/threeOrbitControls.service.spec.ts +3 -3
  104. package/app/codeCharta/ui/codeMap/threeViewer/threeOrbitControls.service.ts +9 -9
  105. package/app/codeCharta/ui/codeMap/threeViewer/threeRenderer.service.ts +3 -3
  106. package/app/codeCharta/ui/codeMap/threeViewer/threeSceneService.ts +16 -19
  107. package/app/codeCharta/ui/codeMap/threeViewer/threeStats.service.spec.ts +27 -32
  108. package/app/codeCharta/ui/codeMap/threeViewer/threeStats.service.ts +3 -4
  109. package/app/codeCharta/ui/codeMap/threeViewer/threeViewer.service.spec.ts +2 -2
  110. package/app/codeCharta/ui/codeMap/threeViewer/threeViewer.service.ts +6 -6
  111. package/app/codeCharta/ui/colorPicker/colorPicker.component.spec.ts +5 -2
  112. package/app/codeCharta/ui/colorPicker/colorPicker.component.ts +3 -2
  113. package/app/codeCharta/ui/colorPickerForMapColor/colorPickerForMapColor.component.ts +5 -4
  114. package/app/codeCharta/ui/copyToClipboardButton/copyToClipboard.service.ts +2 -2
  115. package/app/codeCharta/ui/copyToClipboardButton/copyToClipboardButton.component.ts +4 -3
  116. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.component.spec.ts +17 -10
  117. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.component.ts +4 -3
  118. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigButton.module.ts +3 -3
  119. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.component.html +14 -2
  120. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.component.ts +23 -13
  121. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomConfigDialog.spec.ts +23 -9
  122. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/addCustomDialog.component.scss +7 -6
  123. package/app/codeCharta/ui/customConfigs/addCustomConfigButton/addCustomConfigDialog/downloadAndPurgeConfigs/downloadAndPurgeConfigs.component.ts +5 -4
  124. package/app/codeCharta/ui/customConfigs/customConfigHelper.service.ts +2 -2
  125. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfig2ApplicableColor.pipe.ts +2 -2
  126. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfig2ApplicableMessage.pipe.ts +2 -2
  127. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.html +15 -12
  128. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.scss +12 -8
  129. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.component.ts +7 -6
  130. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigDescription/applyCustomConfigButton.spec.ts +0 -6
  131. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.html +21 -4
  132. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.scss +38 -0
  133. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.spec.ts +32 -7
  134. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigItemGroup/customConfigItemGroup.component.ts +17 -2
  135. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.html +8 -8
  136. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.scss +27 -31
  137. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.spec.ts +6 -3
  138. package/app/codeCharta/ui/customConfigs/customConfigList/customConfigList.component.ts +5 -4
  139. package/app/codeCharta/ui/customConfigs/customConfigList/getCustomConfigItemGroups.spec.ts +5 -1
  140. package/app/codeCharta/ui/customConfigs/customConfigList/getCustomConfigItemGroups.ts +2 -1
  141. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.html +12 -0
  142. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.scss +31 -0
  143. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialog/customConfigNoteDialog.component.ts +12 -0
  144. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.html +3 -0
  145. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.spec.ts +90 -0
  146. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.component.ts +33 -0
  147. package/app/codeCharta/ui/customConfigs/customConfigNoteDialogButton/customConfigNoteDialogButton.module.ts +14 -0
  148. package/app/codeCharta/ui/customConfigs/customConfigs.component.spec.ts +5 -4
  149. package/app/codeCharta/ui/customConfigs/customConfigs.component.ts +6 -4
  150. package/app/codeCharta/ui/customConfigs/customConfigs.module.ts +14 -3
  151. package/app/codeCharta/ui/customConfigs/downloadCustomConfigsButton/downloadCustomConfigsButton.component.ts +4 -3
  152. package/app/codeCharta/ui/customConfigs/uploadCustomConfigButton/uploadCustomConfigButton.component.ts +3 -2
  153. package/app/codeCharta/ui/customConfigs/uploadCustomConfigButton/uploadCustomConfigButton.module.ts +1 -2
  154. package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.html +6 -6
  155. package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.scss +6 -14
  156. package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.component.ts +14 -7
  157. package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.e2e.ts +26 -0
  158. package/app/codeCharta/ui/dialogs/changelogDialog/changelogDialog.module.ts +1 -2
  159. package/app/codeCharta/ui/dialogs/confirmationDialog/confirmationDialog.component.scss +3 -3
  160. package/app/codeCharta/ui/dialogs/confirmationDialog/confirmationDialog.component.ts +4 -3
  161. package/app/codeCharta/ui/dialogs/errorDialog/errorDialog.component.po.ts +4 -9
  162. package/app/codeCharta/ui/dialogs/errorDialog/errorDialog.component.ts +3 -2
  163. package/app/codeCharta/ui/export3DMapButton/export3DMapButton.component.ts +4 -3
  164. package/app/codeCharta/ui/fileExtensionBar/distributionMetricChooser/distributionMetricChooser.component.ts +4 -3
  165. package/app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.scss +5 -6
  166. package/app/codeCharta/ui/fileExtensionBar/fileExtensionBar.component.ts +5 -4
  167. package/app/codeCharta/ui/fileExtensionBar/fileExtensionBar.module.ts +1 -2
  168. package/app/codeCharta/ui/fileExtensionBar/selectors/fileExtensionCalculator.spec.ts +18 -18
  169. package/app/codeCharta/ui/fileExtensionBar/selectors/fileExtensionCalculator.ts +1 -1
  170. package/app/codeCharta/ui/filePanel/filePanel.component.html +1 -1
  171. package/app/codeCharta/ui/filePanel/filePanel.component.scss +7 -27
  172. package/app/codeCharta/ui/filePanel/filePanel.component.ts +5 -4
  173. package/app/codeCharta/ui/filePanel/filePanel.module.ts +2 -2
  174. package/app/codeCharta/ui/filePanel/filePanel.po.ts +6 -4
  175. package/app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.html +26 -24
  176. package/app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.scss +6 -0
  177. package/app/codeCharta/ui/filePanel/filePanelDeltaSelector/filePanelDeltaSelector.component.ts +5 -3
  178. package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.html +5 -4
  179. package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.scss +38 -8
  180. package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.spec.ts +1 -1
  181. package/app/codeCharta/ui/filePanel/filePanelFileSelector/filePanelFileSelector.component.ts +5 -4
  182. package/app/codeCharta/ui/filePanel/filePanelFileSelector/removeFileButton/removeFileButton.component.html +1 -1
  183. package/app/codeCharta/ui/filePanel/filePanelFileSelector/removeFileButton/removeFileButton.component.ts +4 -4
  184. package/app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.html +1 -1
  185. package/app/codeCharta/ui/filePanel/filePanelStateButtons/filePanelStateButtons.component.ts +4 -6
  186. package/app/codeCharta/ui/filePanel/fileSelectionMode.service.ts +2 -2
  187. package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.html +1 -1
  188. package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.scss +12 -8
  189. package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.spec.ts +2 -2
  190. package/app/codeCharta/ui/labelledColorPicker/labelledColorPicker.component.ts +4 -3
  191. package/app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.html +8 -8
  192. package/app/codeCharta/ui/legendPanel/legendBlock/legendBlock.component.ts +5 -4
  193. package/app/codeCharta/ui/legendPanel/legendMarkedPackages/legendMarkedPackages.component.ts +5 -4
  194. package/app/codeCharta/ui/legendPanel/legendPanel.component.html +10 -6
  195. package/app/codeCharta/ui/legendPanel/legendPanel.component.scss +7 -0
  196. package/app/codeCharta/ui/legendPanel/legendPanel.component.ts +5 -7
  197. package/app/codeCharta/ui/legendPanel/selectors/legendAreaMetric.selector.ts +4 -4
  198. package/app/codeCharta/ui/legendPanel/selectors/legendColorMetric.selector.ts +4 -4
  199. package/app/codeCharta/ui/legendPanel/selectors/legendEdgeMetric.selector.spec.ts +10 -4
  200. package/app/codeCharta/ui/legendPanel/selectors/legendEdgeMetric.selector.ts +7 -7
  201. package/app/codeCharta/ui/legendPanel/selectors/legendHeightMetric.selector.ts +4 -4
  202. package/app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.scss +1 -1
  203. package/app/codeCharta/ui/loadingFileProgressSpinner/loadingFileProgressSpinner.component.ts +5 -4
  204. package/app/codeCharta/ui/metricChooser/metricChooser.component.html +1 -2
  205. package/app/codeCharta/ui/metricChooser/metricChooser.component.scss +22 -13
  206. package/app/codeCharta/ui/metricChooser/metricChooser.component.spec.ts +9 -7
  207. package/app/codeCharta/ui/metricChooser/metricChooser.component.ts +11 -10
  208. package/app/codeCharta/ui/metricChooser/metricChooser.module.ts +1 -2
  209. package/app/codeCharta/ui/metricChooser/metricChooserTypeHovered/metricChooserTypeHovered.component.ts +4 -3
  210. package/app/codeCharta/ui/metricChooser/metricChooserValueHovered/metricChooserValueHovered.component.ts +4 -3
  211. package/app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.scss +21 -3
  212. package/app/codeCharta/ui/resetSettingsButton/resetSettingsButton.component.ts +5 -4
  213. package/app/codeCharta/ui/ribbonBar/areaMetricChooser/areaMetricChooser.component.spec.ts +9 -6
  214. package/app/codeCharta/ui/ribbonBar/areaMetricChooser/areaMetricChooser.component.ts +4 -3
  215. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.html +13 -23
  216. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.scss +12 -3
  217. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.spec.ts +31 -17
  218. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.component.ts +14 -14
  219. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.module.ts +1 -2
  220. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.scss +2 -3
  221. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/artificialIntelligence.component.ts +5 -4
  222. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.html +12 -3
  223. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.spec.ts +10 -2
  224. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/highRiskProfile.component.ts +3 -2
  225. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/highRiskProfile/riskProfileBar.directive.ts +2 -2
  226. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/artificialIntelligence.selector.spec.ts +9 -13
  227. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/selectors/artificialIntelligence.selector.ts +8 -8
  228. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.html +11 -1
  229. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.spec.ts +4 -4
  230. package/app/codeCharta/ui/ribbonBar/artificialIntelligence/suspiciousMetrics/suspiciousMetrics.component.ts +6 -5
  231. package/app/codeCharta/ui/ribbonBar/colorMetricChooser/colorMetricChooser.component.spec.ts +9 -6
  232. package/app/codeCharta/ui/ribbonBar/colorMetricChooser/colorMetricChooser.component.ts +4 -3
  233. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.html +11 -10
  234. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.scss +17 -12
  235. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/colorSettingsPanel.component.ts +5 -4
  236. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/metricColorRangeSlider.component.ts +5 -4
  237. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSlider.component.html +2 -2
  238. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSlider.component.scss +21 -6
  239. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSlider.component.ts +6 -5
  240. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSliderLabels/rangeSliderLabels.component.spec.ts +2 -2
  241. package/app/codeCharta/ui/ribbonBar/colorSettingsPanel/metricColorRangeSlider/rangeSlider/rangeSliderLabels/rangeSliderLabels.component.ts +5 -4
  242. package/app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.scss +1 -1
  243. package/app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.spec.ts +8 -6
  244. package/app/codeCharta/ui/ribbonBar/edgeMetricChooser/edgeMetricChooser.component.ts +5 -4
  245. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeMetricToggle/edgeMetricToggle.component.ts +4 -4
  246. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.html +14 -15
  247. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.spec.ts +1 -1
  248. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeSettingsPanel.component.ts +4 -3
  249. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/selectors/amountOfBuildingsWithSelectedEdgeMetric.selector.ts +3 -3
  250. package/app/codeCharta/ui/ribbonBar/heightMetricChooser/areaMetricChooser.component.ts +4 -3
  251. package/app/codeCharta/ui/ribbonBar/heightMetricChooser/heightMetricChooser.component.spec.ts +9 -6
  252. package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.html +15 -19
  253. package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.spec.ts +3 -2
  254. package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.ts +5 -6
  255. package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.html +1 -1
  256. package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.scss +2 -0
  257. package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.spec.ts +4 -4
  258. package/app/codeCharta/ui/ribbonBar/linkColorMetricToHeightMetricButton/linkColorMetricToHeightMetricButton.component.ts +5 -4
  259. package/app/codeCharta/ui/ribbonBar/ribbonBar.component.html +21 -8
  260. package/app/codeCharta/ui/ribbonBar/ribbonBar.component.scss +18 -9
  261. package/app/codeCharta/ui/ribbonBar/ribbonBar.component.spec.ts +22 -23
  262. package/app/codeCharta/ui/ribbonBar/ribbonBar.component.ts +7 -6
  263. package/app/codeCharta/ui/ribbonBar/ribbonBar.e2e.ts +20 -1
  264. package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.html +1 -1
  265. package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.scss +9 -7
  266. package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.spec.ts +10 -3
  267. package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.component.ts +7 -10
  268. package/app/codeCharta/ui/ribbonBar/showScenariosButton/addCustomScenario/addCustomScenario.module.ts +1 -2
  269. package/app/codeCharta/ui/ribbonBar/showScenariosButton/scenario.service.ts +6 -6
  270. package/app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.scss +2 -2
  271. package/app/codeCharta/ui/ribbonBar/showScenariosButton/scenarios/scenarios.component.ts +5 -4
  272. package/app/codeCharta/ui/ribbonBar/showScenariosButton/showScenariosButton.component.ts +5 -4
  273. package/app/codeCharta/ui/screenshotButton/screenshotButton.component.ts +8 -7
  274. package/app/codeCharta/ui/searchPanel/blacklistPanel/blacklistPanel.component.scss +2 -2
  275. package/app/codeCharta/ui/searchPanel/blacklistPanel/blacklistPanel.component.ts +5 -4
  276. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeView.component.scss +14 -11
  277. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeView.component.ts +5 -5
  278. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemIcon/mapTreeViewItemIcon.component.ts +3 -2
  279. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemName/mapTreeViewItemName.component.ts +4 -3
  280. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.html +2 -2
  281. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewItemOptionButtons/mapTreeViewItemOptionButtons.component.ts +3 -2
  282. package/app/codeCharta/ui/searchPanel/mapTreeView/mapTreeViewLevel/mapTreeViewLevel.component.ts +4 -3
  283. package/app/codeCharta/ui/searchPanel/matchingFilesCounter/matchingFilesCounter.component.html +1 -1
  284. package/app/codeCharta/ui/searchPanel/matchingFilesCounter/matchingFilesCounter.component.scss +2 -2
  285. package/app/codeCharta/ui/searchPanel/matchingFilesCounter/matchingFilesCounter.component.ts +5 -4
  286. package/app/codeCharta/ui/searchPanel/searchBar/blacklistSearchPattern.effect.ts +1 -2
  287. package/app/codeCharta/ui/searchPanel/searchBar/searchBar.component.scss +0 -3
  288. package/app/codeCharta/ui/searchPanel/searchBar/searchBar.component.spec.ts +1 -1
  289. package/app/codeCharta/ui/searchPanel/searchBar/searchBar.component.ts +7 -6
  290. package/app/codeCharta/ui/searchPanel/searchPanel.component.html +1 -1
  291. package/app/codeCharta/ui/searchPanel/searchPanel.component.scss +0 -4
  292. package/app/codeCharta/ui/searchPanel/searchPanel.component.ts +4 -3
  293. package/app/codeCharta/ui/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.html +6 -20
  294. package/app/codeCharta/ui/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.scss +4 -6
  295. package/app/codeCharta/ui/searchPanel/searchPanelModeSelector/searchPanelModeSelector.component.ts +5 -4
  296. package/app/codeCharta/ui/searchPanel/sortingButton/sortingButton.component.ts +4 -3
  297. package/app/codeCharta/ui/searchPanel/sortingOption/sortingOption.component.spec.ts +1 -1
  298. package/app/codeCharta/ui/searchPanel/sortingOption/sortingOption.component.ts +4 -3
  299. package/app/codeCharta/ui/slider/slider.component.html +17 -21
  300. package/app/codeCharta/ui/slider/slider.component.scss +36 -19
  301. package/app/codeCharta/ui/slider/slider.component.spec.ts +38 -38
  302. package/app/codeCharta/ui/slider/slider.component.ts +8 -9
  303. package/app/codeCharta/ui/slider/slider.module.ts +1 -2
  304. package/app/codeCharta/ui/toolBar/downloadButton/downloadButton.component.spec.ts +2 -1
  305. package/app/codeCharta/ui/toolBar/downloadButton/downloadButton.component.ts +4 -3
  306. package/app/codeCharta/ui/toolBar/downloadButton/downloadButton.module.ts +1 -2
  307. package/app/codeCharta/ui/toolBar/downloadButton/downloadDialog/downloadDialog.component.html +1 -1
  308. package/app/codeCharta/ui/toolBar/downloadButton/downloadDialog/downloadDialog.component.scss +4 -5
  309. package/app/codeCharta/ui/toolBar/downloadButton/downloadDialog/downloadDialog.component.ts +5 -4
  310. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.html +1 -1
  311. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.scss +28 -34
  312. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.component.ts +5 -4
  313. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationButton.module.ts +1 -2
  314. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/displayQualitySelection/displayQualitySelection.component.html +1 -1
  315. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/displayQualitySelection/displayQualitySelection.component.ts +4 -3
  316. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.html +26 -23
  317. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/globalConfigurationDialog.component.ts +4 -3
  318. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.html +1 -1
  319. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.spec.ts +27 -24
  320. package/app/codeCharta/ui/toolBar/globalConfigurationButton/globalConfigurationDialog/mapLayoutSelection/mapLayoutSelection.component.ts +5 -4
  321. package/app/codeCharta/ui/toolBar/hoveredNodePathPanel/hoveredNodePathPanel.component.ts +5 -4
  322. package/app/codeCharta/ui/toolBar/loadingMapProgressSpinner/loadingMapProgressSpinner.component.ts +5 -4
  323. package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.html +8 -11
  324. package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.scss +4 -3
  325. package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.spec.ts +2 -2
  326. package/app/codeCharta/ui/toolBar/presentationModeButton/presentationModeButton.component.ts +5 -4
  327. package/app/codeCharta/ui/toolBar/toolBar.component.scss +2 -4
  328. package/app/codeCharta/ui/toolBar/toolBar.component.ts +5 -5
  329. package/app/codeCharta/ui/toolBar/toolBar.module.ts +1 -2
  330. package/app/codeCharta/ui/toolBar/uploadFilesButton/uploadFiles.service.ts +2 -2
  331. package/app/codeCharta/ui/toolBar/uploadFilesButton/uploadFilesButton.component.ts +5 -4
  332. package/app/codeCharta/ui/viewCube/centerMapButton/centerMapButton.component.ts +5 -4
  333. package/app/codeCharta/ui/viewCube/viewCube.component.spec.ts +2 -2
  334. package/app/codeCharta/ui/viewCube/viewCube.component.ts +6 -5
  335. package/app/codeCharta/ui/viewCube/viewCube.mouseEvents.service.spec.ts +3 -2
  336. package/app/codeCharta/ui/viewCube/viewCube.mouseEvents.service.ts +6 -6
  337. package/app/codeCharta/util/EventEmitter.ts +22 -0
  338. package/app/codeCharta/util/__snapshots__/aggregationGenerator.spec.ts.snap +116 -116
  339. package/app/codeCharta/util/__snapshots__/deltaGenerator.spec.ts.snap +82 -82
  340. package/app/codeCharta/util/__snapshots__/fileHelper.spec.ts.snap +23 -23
  341. package/app/codeCharta/util/aggregationGenerator.spec.ts +33 -27
  342. package/app/codeCharta/util/aggregationGenerator.ts +4 -1
  343. package/app/codeCharta/util/algorithm/treeMapLayout/__snapshots__/treeMapGenerator.spec.ts.snap +137 -137
  344. package/app/codeCharta/util/algorithm/treeMapLayout/__snapshots__/treeMapHelper.spec.ts.snap +9 -9
  345. package/app/codeCharta/util/customConfigBuilder.spec.ts +11 -4
  346. package/app/codeCharta/util/customConfigBuilder.ts +9 -3
  347. package/app/codeCharta/util/customConfigHelper.ts +9 -37
  348. package/app/codeCharta/util/dataMocks.ts +29 -5
  349. package/app/codeCharta/util/debounce.spec.ts +16 -0
  350. package/app/codeCharta/util/debounce.ts +10 -0
  351. package/app/codeCharta/util/fileDownloader.ts +1 -1
  352. package/app/codeCharta/util/gameObjectsParser/__snapshots__/gameObjectsImporter.spec.ts.snap +37 -37
  353. package/app/codeCharta/util/nodeDecorator.spec.ts +14 -1
  354. package/app/codeCharta/util/nodeDecorator.ts +12 -12
  355. package/app/codeCharta/util/parseNumberInput.ts +1 -1
  356. package/app/codeCharta/util/reduxHelper.ts +3 -3
  357. package/app/codeCharta/util/simplePipes/SimplePipesModule.ts +9 -0
  358. package/app/codeCharta/util/simplePipes/metricDescriptorTitle.pipe.spec.ts +62 -0
  359. package/app/codeCharta/util/simplePipes/metricDescriptorTitle.pipe.ts +18 -0
  360. package/app/codeCharta/util/{removeExtension.pipe.ts → simplePipes/removeExtension.pipe.ts} +1 -1
  361. package/app/codeCharta/util/testUtils/markdown-transformer.js +11 -0
  362. package/app/codeCharta/util/truncateText.pipe.ts +8 -0
  363. package/app/codeCharta/util/truncateText.spec.ts +19 -0
  364. package/app/index.html +1 -0
  365. package/app/material/_theme.scss +28 -17
  366. package/app/material/matDialog.scss +1 -1
  367. package/app/material/matMenu.scss +2 -2
  368. package/app/material/material.module.ts +5 -3
  369. package/app/material/material.scss +1 -6
  370. package/app/polyfills.ts +28 -0
  371. package/conf/jestE2E.config.json +7 -8
  372. package/conf/jestUnit.config.json +5 -17
  373. package/conf/webpack.config.js +9 -59
  374. package/dist/webpack/3rdpartylicenses.txt +1081 -0
  375. package/dist/webpack/codeCharta/assets/codecharta_logo.svg +1 -0
  376. package/dist/webpack/codeCharta/assets/empty.png +0 -0
  377. package/dist/webpack/codeCharta/assets/favicon.ico +0 -0
  378. package/dist/webpack/codeCharta/assets/gameObjectsFile.json +75 -0
  379. package/dist/webpack/codeCharta/assets/icon.icns +0 -0
  380. package/dist/webpack/codeCharta/assets/icon.ico +0 -0
  381. package/dist/webpack/codeCharta/assets/icon.png +0 -0
  382. package/dist/webpack/codeCharta/assets/output.cc.json.gz +0 -0
  383. package/dist/webpack/codeCharta/assets/sample1.cc.json +97 -0
  384. package/dist/webpack/codeCharta/assets/sample2.cc.json +46 -0
  385. package/dist/webpack/codeCharta/assets/sample3.cc.json +40 -0
  386. package/dist/webpack/codeCharta/assets/sample4.cc.json +45 -0
  387. package/dist/webpack/codeCharta/assets/scenarios.json +50 -0
  388. package/dist/webpack/index.html +7 -7
  389. package/dist/webpack/main.f697cbc91786388c.js +1 -0
  390. package/dist/webpack/material-icons-outlined.78a93b2079680a08.woff +0 -0
  391. package/dist/webpack/material-icons-outlined.f86cb7b0aa53f0fe.woff2 +0 -0
  392. package/dist/webpack/material-icons-round.92dc7ca2f4c591e7.woff +0 -0
  393. package/dist/webpack/material-icons-round.b10ec9db5b7fbc74.woff2 +0 -0
  394. package/dist/webpack/material-icons-sharp.3885863ee4746422.woff2 +0 -0
  395. package/dist/webpack/material-icons-sharp.a71cb2bf66c604de.woff +0 -0
  396. package/dist/webpack/material-icons-two-tone.588d63134de807a7.woff +0 -0
  397. package/dist/webpack/material-icons-two-tone.675bd578bd14533e.woff2 +0 -0
  398. package/dist/webpack/material-icons.4ad034d2c499d9b6.woff +0 -0
  399. package/dist/webpack/material-icons.59322316b3fd6063.woff2 +0 -0
  400. package/dist/webpack/polyfills.d69fe4da6218c8a9.js +1 -0
  401. package/dist/webpack/runtime.e384ce5b1b4e5942.js +1 -0
  402. package/dist/webpack/styles.796849f6e33c93f5.css +4 -0
  403. package/package.json +34 -53
  404. package/tsconfig.json +25 -22
  405. package/app/codeCharta/state/effects/resetDynamicMargin/resetDynamicMargin.effect.spec.ts +0 -48
  406. package/app/codeCharta/state/effects/resetDynamicMargin/resetDynamicMargin.effect.ts +0 -19
  407. package/app/codeCharta/state/selectors/accumulatedData/metricData/edgeMetricData.selector.spec.ts +0 -56
  408. package/app/codeCharta/state/store/appSettings/dynamicMargin/dynamicMargin.actions.ts +0 -21
  409. package/app/codeCharta/state/store/appSettings/dynamicMargin/dynamicMargin.reducer.spec.ts +0 -17
  410. package/app/codeCharta/state/store/appSettings/dynamicMargin/dynamicMargin.reducer.ts +0 -16
  411. package/app/codeCharta/state/store/appSettings/dynamicMargin/dynamicMargin.selector.ts +0 -4
  412. package/app/codeCharta/ui/attributeSideBar/metricDeltaSelected/metricDeltaSelected.component.scss +0 -5
  413. package/app/codeCharta/ui/filePanel/filePanelFileSelector/removeFileButton/removeFileButton.component.scss +0 -9
  414. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/areaSettingsPanel.po.ts +0 -22
  415. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/invertAreaOption/invertAreaOption.component.html +0 -1
  416. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/invertAreaOption/invertAreaOption.component.spec.ts +0 -29
  417. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel/invertAreaOption/invertAreaOption.component.ts +0 -23
  418. package/app/codeCharta/ui/ribbonBar/areaSettingsPanel.po.ts +0 -19
  419. package/app/codeCharta/ui/ribbonBar/edgeSettingsPanel/edgeMetricToggle/edgeMetricToggle.component.scss +0 -4
  420. package/app/codeCharta/ui/ribbonBar/heightSettingsPanel/heightSettingsPanel.component.scss +0 -18
  421. package/app/codeCharta/util/envDetector.ts +0 -3
  422. package/app/codeCharta/util/removeExtensionModule.ts +0 -8
  423. package/app/codeCharta/util/testUtils/drag.ts +0 -47
  424. package/app/material/matSelect.scss +0 -17
  425. package/conf/webpack.loaders.js +0 -54
  426. package/dist/webpack/04411cba9583fb0df01f.woff +0 -0
  427. package/dist/webpack/6289913a298e816100f5.woff +0 -0
  428. package/dist/webpack/6b3adb7ef9c9ac8d598a.woff +0 -0
  429. package/dist/webpack/6c307c85ae675678f41e.woff2 +0 -0
  430. package/dist/webpack/a70ec3e73fd410cdb178.woff2 +0 -0
  431. package/dist/webpack/aa2aae2fbd0e0b30967d.woff +0 -0
  432. package/dist/webpack/aa80805e686668b4358c.woff2 +0 -0
  433. package/dist/webpack/b906db2201d314b2ee12.woff2 +0 -0
  434. package/dist/webpack/bundle.js +0 -3
  435. package/dist/webpack/bundle.js.LICENSE.txt +0 -7619
  436. package/dist/webpack/bundle.js.map +0 -1
  437. package/dist/webpack/c6c0935815f6ba8fd80a.woff2 +0 -0
  438. package/dist/webpack/cb25b0543db8b7f06135.woff +0 -0
  439. /package/app/{assets/icon.ico → codeCharta/assets/favicon.ico} +0 -0
  440. /package/app/{assets → codeCharta/assets}/flatten.png +0 -0
  441. /package/app/{assets → codeCharta/assets}/icon.icns +0 -0
  442. /package/{dist/webpack → app/codeCharta/assets}/icon.ico +0 -0
  443. /package/app/{assets → codeCharta/assets}/icon.png +0 -0
  444. /package/app/codeCharta/state/store/fileSettings/attributeDescriptors/{attributesDescriptors.selector.ts → attributeDescriptors.selector.ts} +0 -0
  445. /package/app/codeCharta/util/{removeExtension.pipe.spec.ts → simplePipes/removeExtension.pipe.spec.ts} +0 -0
  446. /package/dist/webpack/{af36b2ef7e54a0b53f02.png → codeCharta/assets/flatten.png} +0 -0
  447. /package/dist/webpack/{6bfc95354e1616904298.png → codeCharta/assets/logo.png} +0 -0
  448. /package/dist/webpack/{8b43027f47b20503057d.eot → fontawesome-webfont.2b13baa7dd4f54c9.eot} +0 -0
  449. /package/dist/webpack/{1e59d2330b4c6deb84b3.ttf → fontawesome-webfont.8a7cb27d142e3e19.ttf} +0 -0
  450. /package/dist/webpack/{f691f37e57f04c152e23.woff → fontawesome-webfont.cf011583fb81df9f.woff} +0 -0
  451. /package/dist/webpack/{c1e38fd9e0e74ba58f7a.svg → fontawesome-webfont.da909aa098b0ee2d.svg} +0 -0
  452. /package/dist/webpack/{20fd1704ea223900efa9.woff2 → fontawesome-webfont.e9955780856cf8aa.woff2} +0 -0
@@ -1,4 +1,4 @@
1
- import { Inject, Injectable } from "@angular/core"
1
+ import { Injectable, OnDestroy } from "@angular/core"
2
2
  import { ThreeCameraService } from "./threeViewer/threeCamera.service"
3
3
  import { CodeMapBuilding } from "./rendering/codeMapBuilding"
4
4
  import { ViewCubeMouseEventsService } from "../viewCube/viewCube.mouseEvents.service"
@@ -15,12 +15,12 @@ import { setRightClickedNodeData } from "../../state/store/appStatus/rightClicke
15
15
  import { idToNodeSelector } from "../../state/selectors/accumulatedData/idToNode.selector"
16
16
  import { IdToBuildingService } from "../../services/idToBuilding/idToBuilding.service"
17
17
  import { hoveredNodeIdSelector } from "../../state/store/appStatus/hoveredNodeId/hoveredNodeId.selector"
18
- import { debounce } from "lodash"
19
18
  import { tap, distinctUntilChanged } from "rxjs"
20
19
  import { Store } from "../../state/angular-redux/store"
21
20
  import { visibleFileStatesSelector } from "../../state/selectors/visibleFileStates.selector"
22
21
  import { blacklistSelector } from "../../state/store/fileSettings/blacklist/blacklist.selector"
23
22
  import { State } from "../../state/angular-redux/state"
23
+ import { debounce } from "../../util/debounce"
24
24
 
25
25
  interface Coordinates {
26
26
  x: number
@@ -40,7 +40,7 @@ export enum CursorType {
40
40
  }
41
41
 
42
42
  @Injectable({ providedIn: "root" })
43
- export class CodeMapMouseEventService {
43
+ export class CodeMapMouseEventService implements OnDestroy {
44
44
  private readonly THRESHOLD_FOR_MOUSE_MOVEMENT_TRACKING = 3
45
45
 
46
46
  private intersectedBuilding: CodeMapBuilding
@@ -52,26 +52,15 @@ export class CodeMapMouseEventService {
52
52
  private isMoving = false
53
53
  private raycaster = new Raycaster()
54
54
  private temporaryLabelForBuilding = null
55
-
56
- constructor(
57
- @Inject(ThreeCameraService) private threeCameraService: ThreeCameraService,
58
- @Inject(ThreeRendererService) private threeRendererService: ThreeRendererService,
59
- @Inject(ThreeSceneService) private threeSceneService: ThreeSceneService,
60
- @Inject(Store) private store: Store,
61
- @Inject(State) private state: State,
62
- @Inject(CodeMapLabelService) private codeMapLabelService: CodeMapLabelService,
63
- @Inject(ViewCubeMouseEventsService) private viewCubeMouseEvents: ViewCubeMouseEventsService,
64
- @Inject(ThreeViewerService) private threeViewerService: ThreeViewerService,
65
- @Inject(IdToBuildingService) private idToBuilding: IdToBuildingService
66
- ) {
55
+ private subscriptions = [
67
56
  this.store
68
57
  .select(visibleFileStatesSelector)
69
58
  .pipe(tap(() => this.onFilesSelectionChanged()))
70
- .subscribe()
59
+ .subscribe(),
71
60
  this.store
72
61
  .select(blacklistSelector)
73
62
  .pipe(tap(blacklist => this.onBlacklistChanged(blacklist)))
74
- .subscribe()
63
+ .subscribe(),
75
64
  this.store
76
65
  .select(hoveredNodeIdSelector)
77
66
  .pipe(
@@ -85,6 +74,24 @@ export class CodeMapMouseEventService {
85
74
  })
86
75
  )
87
76
  .subscribe()
77
+ ]
78
+
79
+ constructor(
80
+ private threeCameraService: ThreeCameraService,
81
+ private threeRendererService: ThreeRendererService,
82
+ private threeSceneService: ThreeSceneService,
83
+ private store: Store,
84
+ private state: State,
85
+ private codeMapLabelService: CodeMapLabelService,
86
+ private viewCubeMouseEvents: ViewCubeMouseEventsService,
87
+ private threeViewerService: ThreeViewerService,
88
+ private idToBuilding: IdToBuildingService
89
+ ) {}
90
+
91
+ ngOnDestroy(): void {
92
+ for (const subscription of this.subscriptions) {
93
+ subscription.unsubscribe()
94
+ }
88
95
  }
89
96
 
90
97
  static changeCursorIndicator(cursorIcon: CursorType) {
@@ -92,10 +99,7 @@ export class CodeMapMouseEventService {
92
99
  }
93
100
 
94
101
  start() {
95
- this.threeRendererService.renderer.domElement.addEventListener(
96
- "mousemove",
97
- debounce(event => this.onDocumentMouseMove(event), 60)
98
- )
102
+ this.threeRendererService.renderer.domElement.addEventListener("mousemove", debounce(this.onDocumentMouseMove, 1))
99
103
  this.threeRendererService.renderer.domElement.addEventListener("mouseup", event => this.onDocumentMouseUp(event))
100
104
  this.threeRendererService.renderer.domElement.addEventListener("mousedown", event => this.onDocumentMouseDown(event))
101
105
  this.threeRendererService.renderer.domElement.addEventListener("dblclick", () => this.onDocumentDoubleClick())
@@ -103,7 +107,7 @@ export class CodeMapMouseEventService {
103
107
  this.threeRendererService.renderer.domElement.addEventListener("mouseenter", () => this.onDocumentMouseEnter())
104
108
  this.threeRendererService.renderer.domElement.addEventListener(
105
109
  "wheel",
106
- debounce(() => this.threeRendererService.render(), 60)
110
+ debounce(() => this.threeRendererService.render(), 1)
107
111
  )
108
112
  this.viewCubeMouseEvents.subscribe("viewCubeEventPropagation", this.onViewCubeEventPropagation)
109
113
  }
@@ -260,7 +264,7 @@ export class CodeMapMouseEventService {
260
264
  }
261
265
  }
262
266
 
263
- onDocumentMouseMove(event: MouseEvent) {
267
+ onDocumentMouseMove = (event: MouseEvent) => {
264
268
  this.mouse.x = event.clientX
265
269
  this.mouse.y = event.clientY
266
270
  this.updateHovering()
@@ -349,11 +353,12 @@ export class CodeMapMouseEventService {
349
353
  private onLeftClick() {
350
354
  this.isGrabbing = false
351
355
  if (!this.hasMouseMovedMoreThanThreePixels(this.mouseOnLastClick)) {
352
- this.threeSceneService.clearSelection()
353
- this.threeSceneService.clearConstantHighlight()
354
356
  if (this.intersectedBuilding) {
355
357
  this.threeSceneService.selectBuilding(this.intersectedBuilding)
358
+ } else {
359
+ this.threeSceneService.clearSelection()
356
360
  }
361
+ this.threeSceneService.clearConstantHighlight()
357
362
  }
358
363
  this.threeRendererService.render()
359
364
  }
@@ -26,15 +26,14 @@ import { setShowMetricLabelNameValue } from "../../state/store/appSettings/showM
26
26
  import { klona } from "klona"
27
27
  import { ThreeStatsService } from "./threeViewer/threeStats.service"
28
28
  import { setColorLabels } from "../../state/store/appSettings/colorLabels/colorLabels.actions"
29
- import { nodeMetricDataSelector } from "../../state/selectors/accumulatedData/metricData/nodeMetricData.selector"
30
29
  import { CodeMapMouseEventService } from "./codeMap.mouseEvent.service"
31
30
  import { Store } from "../../state/angular-redux/store"
32
31
  import { State } from "../../state/angular-redux/state"
32
+ import { metricDataSelector } from "../../state/selectors/accumulatedData/metricData/metricData.selector"
33
33
 
34
- const mockedNodeMetricDataSelector = nodeMetricDataSelector as unknown as jest.Mock
35
- jest.mock("../../state/selectors/accumulatedData/metricData/nodeMetricData.selector", () => ({
36
- nodeMetricDataSelector: jest.fn(),
37
- UNARY_METRIC: "unary"
34
+ const mockedMetricDataSelector = metricDataSelector as unknown as jest.Mock
35
+ jest.mock("../../state/selectors/accumulatedData/metricData/metricData.selector", () => ({
36
+ metricDataSelector: jest.fn()
38
37
  }))
39
38
 
40
39
  describe("codeMapRenderService", () => {
@@ -74,7 +73,10 @@ describe("codeMapRenderService", () => {
74
73
  NodeDecorator.decorateParentNodesWithAggregatedAttributes(map, false, DEFAULT_STATE.fileSettings.attributeTypes)
75
74
  store.dispatch(setState(STATE))
76
75
  store.dispatch(unfocusNode())
77
- mockedNodeMetricDataSelector.mockImplementation(() => METRIC_DATA)
76
+ mockedMetricDataSelector.mockImplementation(() => ({
77
+ nodeMetricData: METRIC_DATA,
78
+ edgeMetricData: []
79
+ }))
78
80
  }
79
81
 
80
82
  function rebuildService() {
@@ -1,4 +1,4 @@
1
- import { Inject, Injectable } from "@angular/core"
1
+ import { Injectable, OnDestroy } from "@angular/core"
2
2
  import { CodeMapMesh } from "./rendering/codeMapMesh"
3
3
  import { createTreemapNodes } from "../../util/algorithm/treeMapLayout/treeMapGenerator"
4
4
  import { CodeMapLabelService } from "./codeMap.label.service"
@@ -8,32 +8,37 @@ import { CodeMapNode, LayoutAlgorithm, Node } from "../../codeCharta.model"
8
8
  import { isDeltaState } from "../../model/files/files.helper"
9
9
  import { StreetLayoutGenerator } from "../../util/algorithm/streetLayout/streetLayoutGenerator"
10
10
  import { ThreeStatsService } from "./threeViewer/threeStats.service"
11
- import { nodeMetricDataSelector } from "../../state/selectors/accumulatedData/metricData/nodeMetricData.selector"
12
11
  import { CodeMapMouseEventService } from "./codeMap.mouseEvent.service"
13
12
  import { Store } from "../../state/angular-redux/store"
14
13
  import { isLoadingFileSelector } from "../../state/store/appSettings/isLoadingFile/isLoadingFile.selector"
15
- import { tap } from "rxjs"
14
+ import { Subscription, tap } from "rxjs"
16
15
  import { State } from "../../state/angular-redux/state"
16
+ import { metricDataSelector } from "../../state/selectors/accumulatedData/metricData/metricData.selector"
17
17
 
18
18
  @Injectable({ providedIn: "root" })
19
- export class CodeMapRenderService {
19
+ export class CodeMapRenderService implements OnDestroy {
20
20
  private nodesByColor = {
21
21
  positive: [],
22
22
  neutral: [],
23
23
  negative: []
24
24
  }
25
25
  private unflattenedNodes
26
+ private subscription: Subscription
26
27
 
27
28
  constructor(
28
- @Inject(Store) private store: Store,
29
- @Inject(State) private state: State,
30
- @Inject(ThreeSceneService) private threeSceneService: ThreeSceneService,
31
- @Inject(CodeMapLabelService) private codeMapLabelService: CodeMapLabelService,
32
- @Inject(CodeMapArrowService) private codeMapArrowService: CodeMapArrowService,
33
- @Inject(ThreeStatsService) private threeStatsService: ThreeStatsService,
34
- @Inject(CodeMapMouseEventService) private codeMapMouseEventService: CodeMapMouseEventService
29
+ private store: Store,
30
+ private state: State,
31
+ private threeSceneService: ThreeSceneService,
32
+ private codeMapLabelService: CodeMapLabelService,
33
+ private codeMapArrowService: CodeMapArrowService,
34
+ private threeStatsService: ThreeStatsService,
35
+ private codeMapMouseEventService: CodeMapMouseEventService
35
36
  ) {
36
- this.store.select(isLoadingFileSelector).pipe(tap(this.onIsLoadingFileChanged)).subscribe()
37
+ this.subscription = this.store.select(isLoadingFileSelector).pipe(tap(this.onIsLoadingFileChanged)).subscribe()
38
+ }
39
+
40
+ ngOnDestroy(): void {
41
+ this.subscription.unsubscribe()
37
42
  }
38
43
 
39
44
  onIsLoadingFileChanged = (isLoadingFile: boolean) => {
@@ -75,7 +80,7 @@ export class CodeMapRenderService {
75
80
 
76
81
  private getNodes(map: CodeMapNode) {
77
82
  const state = this.state.getValue()
78
- const nodeMetricData = nodeMetricDataSelector(state)
83
+ const nodeMetricData = metricDataSelector(state).nodeMetricData
79
84
  const {
80
85
  appSettings: { layoutAlgorithm },
81
86
  files
@@ -3,7 +3,7 @@ import { ThreeOrbitControlsService } from "./threeOrbitControls.service"
3
3
  import { ThreeCameraService } from "./threeCamera.service"
4
4
  import { ThreeSceneService } from "./threeSceneService"
5
5
  import { BoxGeometry, Group, Mesh, PerspectiveCamera, Vector3 } from "three"
6
- import { OrbitControls } from "three/examples/jsm/controls/OrbitControls"
6
+ import type { OrbitControls } from "three/examples/jsm/controls/OrbitControls"
7
7
  import { ThreeRendererService } from "./threeRenderer.service"
8
8
  import { wait } from "../../../util/testUtils/wait"
9
9
 
@@ -46,7 +46,7 @@ describe("ThreeOrbitControlsService", () => {
46
46
  function withMockedControlService() {
47
47
  threeOrbitControlsService.controls = {
48
48
  target: new Vector3(1, 1, 1)
49
- } as OrbitControls
49
+ } as unknown as OrbitControls
50
50
  threeOrbitControlsService.controls.update = jest.fn()
51
51
  }
52
52
 
@@ -57,7 +57,7 @@ describe("ThreeOrbitControlsService", () => {
57
57
  it("rotateCameraInVectorDirection ", () => {
58
58
  threeOrbitControlsService.controls = {
59
59
  target: new Vector3(0, 0, 0)
60
- } as OrbitControls
60
+ } as unknown as OrbitControls
61
61
  const vector = { x: 0, y: 1, z: 0 }
62
62
 
63
63
  threeOrbitControlsService.rotateCameraInVectorDirection(vector.x, vector.y, vector.z)
@@ -1,15 +1,15 @@
1
1
  import { ThreeCameraService } from "./threeCamera.service"
2
- import { Inject, Injectable } from "@angular/core"
2
+ import { Injectable } from "@angular/core"
3
3
  import { Box3, Mesh, MeshNormalMaterial, PerspectiveCamera, Vector3, Sphere, BoxGeometry } from "three"
4
4
  import { ThreeSceneService } from "./threeSceneService"
5
5
 
6
- import { OrbitControls } from "three/examples/jsm/controls/OrbitControls"
6
+ import type { OrbitControls as OrbitControlsType } from "three/examples/jsm/controls/OrbitControls"
7
7
  // TODO remove this old orbital control and use the jsm examples oneW
8
8
  // eslint-disable-next-line no-duplicate-imports
9
9
  import * as Three from "three"
10
10
  import oc from "three-orbit-controls"
11
- import { EventEmitter } from "tsee"
12
11
  import { ThreeRendererService } from "./threeRenderer.service"
12
+ import { EventEmitter } from "../../../util/EventEmitter"
13
13
 
14
14
  type CameraChangeEvents = {
15
15
  onCameraChanged: (data: { camera: PerspectiveCamera }) => void
@@ -19,13 +19,13 @@ type CameraChangeEvents = {
19
19
  export class ThreeOrbitControlsService {
20
20
  static CAMERA_CHANGED_EVENT_NAME = "camera-changed"
21
21
 
22
- controls: OrbitControls
22
+ controls: OrbitControlsType
23
23
  private eventEmitter = new EventEmitter<CameraChangeEvents>()
24
24
 
25
25
  constructor(
26
- @Inject(ThreeCameraService) private threeCameraService: ThreeCameraService,
27
- @Inject(ThreeSceneService) private threeSceneService: ThreeSceneService,
28
- @Inject(ThreeRendererService) private threeRendererService: ThreeRendererService
26
+ private threeCameraService: ThreeCameraService,
27
+ private threeSceneService: ThreeSceneService,
28
+ private threeRendererService: ThreeRendererService
29
29
  ) {}
30
30
 
31
31
  setControlTarget(cameraTarget: Vector3) {
@@ -111,8 +111,8 @@ export class ThreeOrbitControlsService {
111
111
  }
112
112
 
113
113
  init(domElement: HTMLCanvasElement) {
114
- const orbitControls = oc(Three)
115
- this.controls = new orbitControls(this.threeCameraService.camera, domElement)
114
+ const OrbitControls = oc(Three)
115
+ this.controls = new OrbitControls(this.threeCameraService.camera, domElement) as unknown as OrbitControlsType
116
116
  this.controls.addEventListener("change", () => {
117
117
  this.onInput(this.threeCameraService.camera)
118
118
  })
@@ -1,4 +1,4 @@
1
- import { Inject, Injectable } from "@angular/core"
1
+ import { Injectable } from "@angular/core"
2
2
  import { Camera, RGBAFormat, Scene, Vector2, WebGLInfo, WebGLRenderer, WebGLRenderTarget } from "three"
3
3
  import { RenderPass } from "three/examples/jsm/postprocessing/RenderPass"
4
4
  import { WEBGL } from "three/examples/jsm/WebGL"
@@ -14,7 +14,7 @@ import { fxaaShaderStrings } from "../rendering/shaders/loaders/fxaaShaderString
14
14
  export class ThreeRendererService {
15
15
  static BACKGROUND_COLOR = {
16
16
  white: 0xff_ff_ff,
17
- normal: 0xee_ee_dd
17
+ normal: 0xf4_f4_eb
18
18
  }
19
19
 
20
20
  static CLEAR_COLOR = ThreeRendererService.BACKGROUND_COLOR.normal
@@ -37,7 +37,7 @@ export class ThreeRendererService {
37
37
  scene: Scene
38
38
  camera: Camera
39
39
 
40
- constructor(@Inject(Store) private store: Store, @Inject(State) private state: State) {}
40
+ constructor(private store: Store, private state: State) {}
41
41
 
42
42
  init(containerWidth: number, containerHeight: number, scene: Scene, camera: Camera) {
43
43
  this.scene = scene
@@ -10,12 +10,12 @@ import { idToNodeSelector } from "../../../state/selectors/accumulatedData/idToN
10
10
  import { IdToBuildingService } from "../../../services/idToBuilding/idToBuilding.service"
11
11
  import { mapColorsSelector } from "../../../state/store/appSettings/mapColors/mapColors.selector"
12
12
  import { ThreeRendererService } from "./threeRenderer.service"
13
- import { EventEmitter } from "tsee"
14
- import { Inject, Injectable } from "@angular/core"
13
+ import { Injectable, OnDestroy } from "@angular/core"
15
14
  import { Store } from "../../../state/angular-redux/store"
16
15
  import { defaultMapColors } from "../../../state/store/appSettings/mapColors/mapColors.actions"
17
16
  import { State } from "../../../state/angular-redux/state"
18
17
  import { treeMapSize } from "../../../util/algorithm/treeMapLayout/treeMapHelper"
18
+ import { EventEmitter } from "../../../util/EventEmitter"
19
19
 
20
20
  type BuildingSelectedEvents = {
21
21
  onBuildingSelected: (data: { building: CodeMapBuilding }) => void
@@ -23,7 +23,7 @@ type BuildingSelectedEvents = {
23
23
  }
24
24
 
25
25
  @Injectable({ providedIn: "root" })
26
- export class ThreeSceneService {
26
+ export class ThreeSceneService implements OnDestroy {
27
27
  scene: Scene
28
28
  labels: Group
29
29
  floorLabelPlanes: Group
@@ -49,18 +49,17 @@ export class ThreeSceneService {
49
49
  private highlightedLabel = null
50
50
  private highlightedLineIndex = -1
51
51
  private highlightedLine = null
52
+ private subscription = this.store.select(mapColorsSelector).subscribe(mapColors => {
53
+ this.folderLabelColorSelected = mapColors.selected
54
+ this.numberSelectionColor = ColorConverter.convertHexToNumber(this.folderLabelColorSelected)
55
+ })
52
56
 
53
57
  constructor(
54
- @Inject(Store) private store: Store,
55
- @Inject(State) private state: State,
56
- @Inject(IdToBuildingService) private idToBuilding: IdToBuildingService,
57
- @Inject(ThreeRendererService) private threeRendererService: ThreeRendererService
58
+ private store: Store,
59
+ private state: State,
60
+ private idToBuilding: IdToBuildingService,
61
+ private threeRendererService: ThreeRendererService
58
62
  ) {
59
- this.store.select(mapColorsSelector).subscribe(mapColors => {
60
- this.folderLabelColorSelected = mapColors.selected
61
- this.numberSelectionColor = ColorConverter.convertHexToNumber(this.folderLabelColorSelected)
62
- })
63
-
64
63
  this.scene = new Scene()
65
64
  this.mapGeometry = new Group()
66
65
  this.lights = new Group()
@@ -77,6 +76,10 @@ export class ThreeSceneService {
77
76
  this.scene.add(this.floorLabelPlanes)
78
77
  }
79
78
 
79
+ ngOnDestroy(): void {
80
+ this.subscription.unsubscribe()
81
+ }
82
+
80
83
  private initFloorLabels(nodes: Node[]) {
81
84
  this.floorLabelPlanes.clear()
82
85
 
@@ -368,6 +371,7 @@ export class ThreeSceneService {
368
371
  this.store.dispatch(setSelectedBuildingId(null))
369
372
  this.eventEmitter.emit("onBuildingDeselected")
370
373
  }
374
+
371
375
  if (this.highlighted.length > 0) {
372
376
  this.highlightBuildings()
373
377
  }
@@ -419,13 +423,6 @@ export class ThreeSceneService {
419
423
  return this.highlighted[0]
420
424
  }
421
425
 
422
- getHighlightedNode() {
423
- if (this.getHighlightedBuilding()) {
424
- return this.getHighlightedBuilding().node
425
- }
426
- return null
427
- }
428
-
429
426
  dispose() {
430
427
  this.mapMesh?.dispose()
431
428
  }
@@ -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
- import * as environmentDetector from "../../../util/envDetector"
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 setDevelopmentMode = (value: boolean) => {
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.stats = {} as Stats
33
- threeStatsService.stats.addPanel = jest.fn()
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
- setDevelopmentMode(false)
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
- setDevelopmentMode(false)
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
- setDevelopmentMode(false)
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
- setDevelopmentMode(false)
189
- restartSystem()
184
+ restartSystem(false)
190
185
 
191
186
  threeStatsService.destroy()
192
187
 
193
- expect(threeStatsService.stats.domElement.remove).not.toHaveBeenCalled()
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 { isDevelopment } from "../../../util/envDetector"
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 = isDevelopment()
19
+ isDevelopmentMode = isDevMode()
21
20
 
22
- constructor(@Inject(ThreeRendererService) private threeRendererService: ThreeRendererService) {}
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 { Inject, Injectable } from "@angular/core"
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
- @Inject(ThreeSceneService) private threeSceneService: ThreeSceneService,
14
- @Inject(ThreeCameraService) private threeCameraService: ThreeCameraService,
15
- @Inject(ThreeOrbitControlsService) private threeOrbitControlsService: ThreeOrbitControlsService,
16
- @Inject(ThreeRendererService) private threeRendererService: ThreeRendererService,
17
- @Inject(ThreeStatsService) private threeStatsService: ThreeStatsService
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-ignore
45
- ng.probe(screen.queryByRole("colorpicker")).componentInstance.onChangeComplete.emit({ $event: {}, color: { hex: "#000000" } })
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
- template: require("./colorPicker.component.html")
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, Inject, Input } from "@angular/core"
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
- template: require("./colorPickerForMapColor.component.html")
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(@Inject(Store) private store: Store) {}
22
+ constructor(private store: Store) {}
22
23
 
23
24
  handleColorChange(newHexColor: string) {
24
25
  this.store.dispatch(
@@ -1,4 +1,4 @@
1
- import { Inject, Injectable } from "@angular/core"
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(@Inject(State) private state: State) {}
9
+ constructor(private state: State) {}
10
10
 
11
11
  private getUnifiedMapNode() {
12
12
  const { unifiedMapNode } = accumulatedDataSelector(this.state.getValue())