mdt-charts 1.29.0 → 1.30.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 (257) hide show
  1. package/lib/config/config.d.ts +170 -178
  2. package/lib/designer/designerConfig.d.ts +59 -62
  3. package/lib/engine/block/block.d.ts +16 -22
  4. package/lib/engine/block/block.js +51 -51
  5. package/lib/engine/block/blockHelper.d.ts +6 -6
  6. package/lib/engine/block/blockHelper.js +16 -16
  7. package/lib/engine/block/blockHtml.d.ts +8 -8
  8. package/lib/engine/block/blockHtml.js +15 -15
  9. package/lib/engine/block/blockSvg.d.ts +20 -20
  10. package/lib/engine/block/blockSvg.js +66 -65
  11. package/lib/engine/block/defs/LinearGradientDef.d.ts +2 -2
  12. package/lib/engine/block/defs/LinearGradientDef.js +27 -27
  13. package/lib/engine/block/defs/hatchPattern.d.ts +4 -4
  14. package/lib/engine/block/defs/hatchPattern.js +9 -9
  15. package/lib/engine/colorReader/colorReader.d.ts +5 -5
  16. package/lib/engine/colorReader/colorReader.js +18 -18
  17. package/lib/engine/contentManager/contentManager.d.ts +7 -6
  18. package/lib/engine/contentManager/contentManager.js +15 -15
  19. package/lib/engine/contentManager/contentManagerFactory.d.ts +7 -7
  20. package/lib/engine/contentManager/contentManagerFactory.js +12 -12
  21. package/lib/engine/elementHighlighter/elementHighlighter.d.ts +22 -70
  22. package/lib/engine/elementHighlighter/elementHighlighter.js +181 -230
  23. package/lib/engine/elementHighlighter/selectHighlighter.d.ts +4 -29
  24. package/lib/engine/elementHighlighter/selectHighlighter.js +87 -189
  25. package/lib/engine/engine.d.ts +17 -17
  26. package/lib/engine/engine.js +62 -87
  27. package/lib/engine/features/aggregator/aggregator.d.ts +17 -24
  28. package/lib/engine/features/aggregator/aggregator.js +102 -113
  29. package/lib/engine/features/axis/axis.d.ts +9 -22
  30. package/lib/engine/features/axis/axis.js +150 -159
  31. package/lib/engine/features/axis/axisDomHelper.d.ts +2 -7
  32. package/lib/engine/features/axis/axisDomHelper.js +20 -19
  33. package/lib/engine/features/axis/axisHelper.d.ts +5 -9
  34. package/lib/engine/features/axis/axisHelper.js +33 -28
  35. package/lib/engine/features/axis/axisLabelDomHelper.d.ts +11 -26
  36. package/lib/engine/features/axis/axisLabelDomHelper.js +152 -156
  37. package/lib/engine/features/axis/axisLabelsEventManager.d.ts +2 -2
  38. package/lib/engine/features/axis/axisLabelsEventManager.js +32 -32
  39. package/lib/engine/features/embeddedLabels/embeddedLabels.d.ts +16 -51
  40. package/lib/engine/features/embeddedLabels/embeddedLabels.js +134 -234
  41. package/lib/engine/features/embeddedLabels/embeddedLabelsDomHelper.d.ts +2 -13
  42. package/lib/engine/features/embeddedLabels/embeddedLabelsDomHelper.js +23 -20
  43. package/lib/engine/features/embeddedLabels/embeddedLabelsHelper.d.ts +15 -32
  44. package/lib/engine/features/embeddedLabels/embeddedLabelsHelper.js +63 -56
  45. package/lib/engine/features/gridLine/gidLineHelper.d.ts +7 -13
  46. package/lib/engine/features/gridLine/gidLineHelper.js +49 -42
  47. package/lib/engine/features/gridLine/gridLine.d.ts +5 -19
  48. package/lib/engine/features/gridLine/gridLine.js +36 -35
  49. package/lib/engine/features/legend/legend.d.ts +28 -38
  50. package/lib/engine/features/legend/legend.js +92 -118
  51. package/lib/engine/features/legend/legendDomHelper.d.ts +6 -13
  52. package/lib/engine/features/legend/legendDomHelper.js +62 -63
  53. package/lib/engine/features/legend/legendEventsManager.d.ts +8 -13
  54. package/lib/engine/features/legend/legendEventsManager.js +47 -48
  55. package/lib/engine/features/legend/legendHelper.d.ts +14 -39
  56. package/lib/engine/features/legend/legendHelper.js +92 -98
  57. package/lib/engine/features/legend/legendHelperService.d.ts +6 -13
  58. package/lib/engine/features/legend/legendHelperService.js +25 -24
  59. package/lib/engine/features/legend/legendMarkerCreator.d.ts +9 -18
  60. package/lib/engine/features/legend/legendMarkerCreator.js +76 -79
  61. package/lib/engine/features/legend/legendWidthCalculator.d.ts +7 -7
  62. package/lib/engine/features/legend/legendWidthCalculator.js +122 -126
  63. package/lib/engine/features/markDots/markDot.d.ts +15 -42
  64. package/lib/engine/features/markDots/markDot.js +70 -101
  65. package/lib/engine/features/markDots/markDotsHelper.d.ts +1 -8
  66. package/lib/engine/features/markDots/markDotsHelper.js +12 -13
  67. package/lib/engine/features/recordOverflowAlert/recordOverflowAlertCore.d.ts +5 -23
  68. package/lib/engine/features/recordOverflowAlert/recordOverflowAlertCore.js +34 -42
  69. package/lib/engine/features/scale/scale.d.ts +12 -17
  70. package/lib/engine/features/scale/scale.js +69 -76
  71. package/lib/engine/features/tipBox/tipBox.d.ts +5 -9
  72. package/lib/engine/features/tipBox/tipBox.js +24 -24
  73. package/lib/engine/features/tipBox/tipBoxHelper.d.ts +9 -16
  74. package/lib/engine/features/tipBox/tipBoxHelper.js +45 -60
  75. package/lib/engine/features/title/title.d.ts +6 -6
  76. package/lib/engine/features/title/title.js +35 -34
  77. package/lib/engine/features/tolltip/newTooltip/newTooltip.d.ts +11 -15
  78. package/lib/engine/features/tolltip/newTooltip/newTooltip.js +21 -21
  79. package/lib/engine/features/tolltip/newTooltip/newTooltipService.d.ts +8 -13
  80. package/lib/engine/features/tolltip/newTooltip/newTooltipService.js +23 -26
  81. package/lib/engine/features/tolltip/tooltip.d.ts +11 -17
  82. package/lib/engine/features/tolltip/tooltip.js +142 -296
  83. package/lib/engine/features/tolltip/tooltipComponentsManager.d.ts +10 -21
  84. package/lib/engine/features/tolltip/tooltipComponentsManager.js +114 -113
  85. package/lib/engine/features/tolltip/tooltipDomHelper.d.ts +21 -43
  86. package/lib/engine/features/tolltip/tooltipDomHelper.js +120 -144
  87. package/lib/engine/features/tolltip/tooltipHelper.d.ts +9 -39
  88. package/lib/engine/features/tolltip/tooltipHelper.js +91 -114
  89. package/lib/engine/features/valueLabels/valueLabels.d.ts +38 -58
  90. package/lib/engine/features/valueLabels/valueLabels.js +170 -205
  91. package/lib/engine/features/valueLabels/valueLabelsHelper.d.ts +1 -7
  92. package/lib/engine/features/valueLabels/valueLabelsHelper.js +18 -23
  93. package/lib/engine/features/valueLabelsCollision/valueLabelsCollision.d.ts +15 -18
  94. package/lib/engine/features/valueLabelsCollision/valueLabelsCollision.js +47 -46
  95. package/lib/engine/features/valueLabelsCollision/valueLabelsCollisionHelper.d.ts +3 -6
  96. package/lib/engine/features/valueLabelsCollision/valueLabelsCollisionHelper.js +45 -49
  97. package/lib/engine/filterManager/filterEventManager.d.ts +30 -37
  98. package/lib/engine/filterManager/filterEventManager.js +131 -174
  99. package/lib/engine/helpers/domHelper.d.ts +20 -45
  100. package/lib/engine/helpers/domHelper.js +61 -62
  101. package/lib/engine/helpers/fontResizer/fontResizer.d.ts +10 -10
  102. package/lib/engine/helpers/fontResizer/fontResizer.js +16 -21
  103. package/lib/engine/helpers/fontResizer/fontResizerService.d.ts +1 -1
  104. package/lib/engine/helpers/fontResizer/fontResizerService.js +10 -9
  105. package/lib/engine/helpers/helper.d.ts +27 -27
  106. package/lib/engine/helpers/helper.js +92 -91
  107. package/lib/engine/helpers/namesHelper.d.ts +3 -3
  108. package/lib/engine/helpers/namesHelper.js +6 -6
  109. package/lib/engine/helpers/pipeline/Pipeline.d.ts +5 -5
  110. package/lib/engine/helpers/pipeline/Pipeline.js +33 -33
  111. package/lib/engine/polarNotation/donut/DonutHelper.d.ts +11 -25
  112. package/lib/engine/polarNotation/donut/DonutHelper.js +70 -71
  113. package/lib/engine/polarNotation/donut/donut.d.ts +23 -38
  114. package/lib/engine/polarNotation/donut/donut.js +99 -109
  115. package/lib/engine/polarNotation/polarManager.d.ts +6 -6
  116. package/lib/engine/polarNotation/polarManager.js +47 -67
  117. package/lib/engine/transitionManager.d.ts +14 -13
  118. package/lib/engine/transitionManager.js +49 -48
  119. package/lib/engine/twoDimensionalNotation/area/area.d.ts +28 -44
  120. package/lib/engine/twoDimensionalNotation/area/area.js +238 -272
  121. package/lib/engine/twoDimensionalNotation/area/areaGenerator.d.ts +5 -13
  122. package/lib/engine/twoDimensionalNotation/area/areaGenerator.js +13 -13
  123. package/lib/engine/twoDimensionalNotation/area/areaHelper.d.ts +4 -4
  124. package/lib/engine/twoDimensionalNotation/area/areaHelper.js +41 -57
  125. package/lib/engine/twoDimensionalNotation/bar/bar.d.ts +29 -54
  126. package/lib/engine/twoDimensionalNotation/bar/bar.js +224 -362
  127. package/lib/engine/twoDimensionalNotation/bar/barHelper.d.ts +32 -71
  128. package/lib/engine/twoDimensionalNotation/bar/barHelper.js +126 -162
  129. package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStacker.d.ts +6 -6
  130. package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStacker.js +24 -24
  131. package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStackerService.d.ts +2 -2
  132. package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStackerService.js +17 -16
  133. package/lib/engine/twoDimensionalNotation/dot/dotChart.d.ts +23 -23
  134. package/lib/engine/twoDimensionalNotation/dot/dotChart.js +114 -135
  135. package/lib/engine/twoDimensionalNotation/line/line.d.ts +16 -37
  136. package/lib/engine/twoDimensionalNotation/line/line.js +132 -162
  137. package/lib/engine/twoDimensionalNotation/line/lineBuilder.d.ts +11 -14
  138. package/lib/engine/twoDimensionalNotation/line/lineBuilder.js +48 -47
  139. package/lib/engine/twoDimensionalNotation/line/lineGenerator.d.ts +4 -4
  140. package/lib/engine/twoDimensionalNotation/line/lineGenerator.js +8 -8
  141. package/lib/engine/twoDimensionalNotation/line/lineHelper.d.ts +6 -12
  142. package/lib/engine/twoDimensionalNotation/line/lineHelper.js +60 -76
  143. package/lib/engine/twoDimensionalNotation/lineLike/generatorFactory/lineLikeGeneratorFactory.d.ts +6 -6
  144. package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorCurveMiddleware.d.ts +5 -5
  145. package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorCurveMiddleware.js +17 -16
  146. package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorDefineMiddleware.d.ts +10 -11
  147. package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorDefineMiddleware.js +7 -9
  148. package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorMiddleware.d.ts +1 -3
  149. package/lib/engine/twoDimensionalNotation/twoDimensionalManager.d.ts +10 -10
  150. package/lib/engine/twoDimensionalNotation/twoDimensionalManager.js +138 -253
  151. package/lib/engine/valueFormatter.d.ts +3 -3
  152. package/lib/engine/valueFormatter.js +6 -6
  153. package/lib/main.d.ts +79 -82
  154. package/lib/main.js +84 -79
  155. package/lib/model/EventEmitter.d.ts +8 -8
  156. package/lib/model/EventEmitter.js +24 -24
  157. package/lib/model/chartStyleModel/chartStyleModel.d.ts +5 -5
  158. package/lib/model/chartStyleModel/chartStyleModel.js +25 -27
  159. package/lib/model/chartStyleModel/colorRange.d.ts +3 -3
  160. package/lib/model/chartStyleModel/colorRange.js +24 -19
  161. package/lib/model/chartStyleModel/twoDimensionalChartStyleModel.d.ts +12 -22
  162. package/lib/model/chartStyleModel/twoDimensionalChartStyleModel.js +60 -69
  163. package/lib/model/configsValidator/configValidator.d.ts +1 -1
  164. package/lib/model/configsValidator/configValidator.js +4 -4
  165. package/lib/model/dataManagerModel/dataManagerModel.d.ts +26 -36
  166. package/lib/model/dataManagerModel/dataManagerModel.js +128 -179
  167. package/lib/model/dataManagerModel/dataManagerModelService.d.ts +2 -2
  168. package/lib/model/dataManagerModel/dataManagerModelService.js +26 -25
  169. package/lib/model/featuresModel/axisModel.d.ts +18 -69
  170. package/lib/model/featuresModel/axisModel.js +169 -224
  171. package/lib/model/featuresModel/axisModelService.d.ts +6 -10
  172. package/lib/model/featuresModel/axisModelService.js +27 -27
  173. package/lib/model/featuresModel/legendModel/legendCanvasModel.d.ts +11 -16
  174. package/lib/model/featuresModel/legendModel/legendCanvasModel.js +59 -55
  175. package/lib/model/featuresModel/legendModel/legendModel.d.ts +3 -7
  176. package/lib/model/featuresModel/legendModel/legendModel.js +41 -59
  177. package/lib/model/featuresModel/legendModel/polarMarginCalculator.d.ts +3 -8
  178. package/lib/model/featuresModel/legendModel/polarMarginCalculator.js +20 -18
  179. package/lib/model/featuresModel/legendModel/twoDimLegendModel.d.ts +4 -8
  180. package/lib/model/featuresModel/legendModel/twoDimLegendModel.js +27 -40
  181. package/lib/model/featuresModel/otherComponents.d.ts +4 -7
  182. package/lib/model/featuresModel/otherComponents.js +9 -9
  183. package/lib/model/featuresModel/recordOverflowModel/recordOverflowModel.d.ts +4 -0
  184. package/lib/model/featuresModel/recordOverflowModel/recordOverflowModel.js +33 -0
  185. package/lib/model/featuresModel/scaleModel/scaleAxisRecalcer.d.ts +6 -6
  186. package/lib/model/featuresModel/scaleModel/scaleAxisRecalcer.js +23 -27
  187. package/lib/model/featuresModel/scaleModel/scaleDomainService.d.ts +5 -19
  188. package/lib/model/featuresModel/scaleModel/scaleDomainService.js +55 -44
  189. package/lib/model/featuresModel/scaleModel/scaleModel.d.ts +10 -10
  190. package/lib/model/featuresModel/scaleModel/scaleModel.js +50 -61
  191. package/lib/model/featuresModel/scaleModel/scaleModelServices.js +22 -15
  192. package/lib/model/featuresModel/titleModel.d.ts +1 -1
  193. package/lib/model/featuresModel/titleModel.js +14 -14
  194. package/lib/model/featuresModel/tooltipModel.d.ts +1 -1
  195. package/lib/model/featuresModel/tooltipModel.js +5 -5
  196. package/lib/model/featuresModel/valueLabelsModel/valueLabelsModel.d.ts +11 -23
  197. package/lib/model/featuresModel/valueLabelsModel/valueLabelsModel.js +51 -53
  198. package/lib/model/helpers/modelHelper.d.ts +7 -7
  199. package/lib/model/helpers/modelHelper.js +42 -38
  200. package/lib/model/helpers/twoDimensionalModelHelper.d.ts +9 -37
  201. package/lib/model/helpers/twoDimensionalModelHelper.js +125 -147
  202. package/lib/model/helpers/unitsFromConfigReader.js +4 -4
  203. package/lib/model/helpers/unitsReader.d.ts +2 -2
  204. package/lib/model/helpers/unitsReader.js +13 -11
  205. package/lib/model/margin/marginModel.d.ts +7 -7
  206. package/lib/model/margin/marginModel.js +20 -23
  207. package/lib/model/margin/twoDim/twoDimMarginModel.d.ts +13 -13
  208. package/lib/model/margin/twoDim/twoDimMarginModel.js +113 -184
  209. package/lib/model/model.d.ts +281 -315
  210. package/lib/model/model.js +4 -4
  211. package/lib/model/modelBuilder.d.ts +18 -27
  212. package/lib/model/modelBuilder.js +79 -85
  213. package/lib/model/modelInstance/canvasModel/canvasModel.d.ts +17 -17
  214. package/lib/model/modelInstance/canvasModel/canvasModel.js +43 -42
  215. package/lib/model/modelInstance/canvasModel/canvasSizesModel/canvasMarginModel.d.ts +7 -7
  216. package/lib/model/modelInstance/canvasModel/canvasSizesModel/canvasSizeModel.d.ts +2 -2
  217. package/lib/model/modelInstance/canvasModel/canvasSizesModel/marginModelService.d.ts +6 -6
  218. package/lib/model/modelInstance/canvasModel/canvasSizesModel/marginModelService.js +24 -24
  219. package/lib/model/modelInstance/canvasModel/legendCanvasModel.d.ts +4 -4
  220. package/lib/model/modelInstance/canvasModel/legendCanvasModel.js +11 -11
  221. package/lib/model/modelInstance/canvasModel/titleCanvas.d.ts +4 -4
  222. package/lib/model/modelInstance/canvasModel/titleCanvas.js +9 -9
  223. package/lib/model/modelInstance/chartBlockVersion/chartBlockVersion.d.ts +3 -3
  224. package/lib/model/modelInstance/chartBlockVersion/chartBlockVersion.js +6 -6
  225. package/lib/model/modelInstance/configReader.d.ts +23 -32
  226. package/lib/model/modelInstance/configReader.js +94 -125
  227. package/lib/model/modelInstance/dataModel/dataModel.d.ts +10 -10
  228. package/lib/model/modelInstance/dataModel/dataModel.js +25 -25
  229. package/lib/model/modelInstance/dataModel/dataRepository.d.ts +14 -14
  230. package/lib/model/modelInstance/dataModel/dataRepository.js +42 -42
  231. package/lib/model/modelInstance/modelInstance.d.ts +6 -11
  232. package/lib/model/modelInstance/modelInstance.js +16 -16
  233. package/lib/model/modelInstance/titleConfigReader.d.ts +8 -8
  234. package/lib/model/modelInstance/titleConfigReader.js +30 -37
  235. package/lib/model/notations/polar/donut/donutAggregatorService.d.ts +6 -9
  236. package/lib/model/notations/polar/donut/donutAggregatorService.js +37 -40
  237. package/lib/model/notations/polar/donut/donutModel.d.ts +5 -9
  238. package/lib/model/notations/polar/donut/donutModel.js +28 -28
  239. package/lib/model/notations/polar/donut/donutThicknessService.d.ts +3 -3
  240. package/lib/model/notations/polar/donut/donutThicknessService.js +15 -13
  241. package/lib/model/notations/polar/polarModel.d.ts +7 -18
  242. package/lib/model/notations/polar/polarModel.js +72 -79
  243. package/lib/model/notations/twoDimensional/styles.d.ts +7 -44
  244. package/lib/model/notations/twoDimensional/styles.js +125 -234
  245. package/lib/model/notations/twoDimensionalModel.d.ts +13 -23
  246. package/lib/model/notations/twoDimensionalModel.js +170 -330
  247. package/lib/optionsServices/publicOptionsService.d.ts +1 -1
  248. package/lib/optionsServices/publicOptionsService.js +4 -4
  249. package/lib/optionsServices/validators/sizeValidator.d.ts +2 -2
  250. package/lib/optionsServices/validators/sizeValidator.js +11 -10
  251. package/lib/style/charts-main.css +151 -150
  252. package/lib/style/charts-main.less +151 -150
  253. package/package.json +5 -5
  254. package/lib/engine/polarNotation/extenders/polarRecordOverflowAlert.d.ts +0 -15
  255. package/lib/engine/polarNotation/extenders/polarRecordOverflowAlert.js +0 -40
  256. package/lib/engine/twoDimensionalNotation/extenders/twoDimRecordOverflowAlert.d.ts +0 -15
  257. package/lib/engine/twoDimensionalNotation/extenders/twoDimRecordOverflowAlert.js +0 -32
@@ -4,33 +4,8 @@ import { MdtChartsDataRow, Size } from "../../config/config";
4
4
  import { BlockMargin, DonutChartSettings, PolarOptionsModel, TwoDimensionalOptionsModel } from "../../model/model";
5
5
  import { Block } from "../block/block";
6
6
  export declare class SelectHighlighter {
7
- static click2DHandler(
8
- multySelection: boolean,
9
- appendKey: boolean,
10
- keyValue: string,
11
- selectedKeys: string[],
12
- block: Block,
13
- options: TwoDimensionalOptionsModel
14
- ): void;
15
- static clickPolarHandler(
16
- multySelection: boolean,
17
- appendKey: boolean,
18
- selectedSegment: Selection<SVGGElement, PieArcDatum<MdtChartsDataRow>, BaseType, unknown>,
19
- selectedKeys: string[],
20
- margin: BlockMargin,
21
- blockSize: Size,
22
- block: Block,
23
- options: PolarOptionsModel,
24
- arcItems: Selection<SVGGElement, PieArcDatum<MdtChartsDataRow>, SVGGElement, unknown>,
25
- donutSettings: DonutChartSettings
26
- ): void;
27
- static clear2D(block: Block, options: TwoDimensionalOptionsModel): void;
28
- static clearPolar(
29
- margin: BlockMargin,
30
- blockSize: Size,
31
- block: Block,
32
- options: PolarOptionsModel,
33
- arcItems: Selection<SVGGElement, PieArcDatum<MdtChartsDataRow>, SVGGElement, unknown>,
34
- donutSettings: DonutChartSettings
35
- ): void;
7
+ static click2DHandler(multySelection: boolean, appendKey: boolean, keyValue: string, selectedKeys: string[], block: Block, options: TwoDimensionalOptionsModel): void;
8
+ static clickPolarHandler(multySelection: boolean, appendKey: boolean, selectedSegment: Selection<SVGGElement, PieArcDatum<MdtChartsDataRow>, BaseType, unknown>, selectedKeys: string[], margin: BlockMargin, blockSize: Size, block: Block, options: PolarOptionsModel, arcItems: Selection<SVGGElement, PieArcDatum<MdtChartsDataRow>, SVGGElement, unknown>, donutSettings: DonutChartSettings): void;
9
+ static clear2D(block: Block, options: TwoDimensionalOptionsModel): void;
10
+ static clearPolar(margin: BlockMargin, blockSize: Size, block: Block, options: PolarOptionsModel, arcItems: Selection<SVGGElement, PieArcDatum<MdtChartsDataRow>, SVGGElement, unknown>, donutSettings: DonutChartSettings): void;
36
11
  }
@@ -6,193 +6,91 @@ import { DonutHelper } from "../polarNotation/donut/DonutHelper";
6
6
  import { ElementHighlighter } from "./elementHighlighter";
7
7
  import { MarkDot } from "../../engine/features/markDots/markDot";
8
8
  export class SelectHighlighter {
9
- static click2DHandler(multySelection, appendKey, keyValue, selectedKeys, block, options) {
10
- options.charts.forEach((chart) => {
11
- const selectedElements = DomHelper.getChartElementsByKeys(
12
- DomHelper.get2DChartElements(block, chart),
13
- chart.isSegmented,
14
- options.data.keyField.name,
15
- [keyValue]
16
- );
17
- const elements = DomHelper.get2DChartElements(block, chart);
18
- if (!appendKey) {
19
- ElementHighlighter.toggle2DElements(
20
- selectedElements,
21
- false,
22
- chart,
23
- block.transitionManager.durations.markerHover
24
- );
25
- if (chart.type !== "bar") MarkDot.tryMakeMarkDotVisible(selectedElements, chart.markersOptions, false);
26
- if (selectedKeys.length > 0) {
27
- ElementHighlighter.toggleActivityStyle(selectedElements, false);
28
- } else {
29
- ElementHighlighter.toggleActivityStyle(elements, true);
30
- if (chart.type !== "bar") MarkDot.tryMakeMarkDotVisible(elements, chart.markersOptions, false);
31
- }
32
- return;
33
- }
34
- if (multySelection) {
35
- ElementHighlighter.toggle2DElements(
36
- selectedElements,
37
- true,
38
- chart,
39
- block.transitionManager.durations.markerHover
40
- );
41
- ElementHighlighter.toggleActivityStyle(selectedElements, true);
42
- ElementHighlighter.toggleActivityStyle(
43
- DomHelper.getChartElementsByKeys(
44
- elements,
45
- chart.isSegmented,
46
- options.data.keyField.name,
47
- selectedKeys,
48
- SelectionCondition.Exclude
49
- ),
50
- false
51
- );
52
- } else {
53
- ElementHighlighter.toggle2DElements(
54
- DomHelper.getChartElementsByKeys(
55
- elements,
56
- chart.isSegmented,
57
- options.data.keyField.name,
58
- selectedKeys,
59
- SelectionCondition.Exclude
60
- ),
61
- false,
62
- chart,
63
- block.transitionManager.durations.markerHover
64
- );
65
- ElementHighlighter.toggleActivityStyle(elements, false);
66
- if (chart.type !== "bar") MarkDot.tryMakeMarkDotVisible(elements, chart.markersOptions, false);
67
- ElementHighlighter.toggleActivityStyle(selectedElements, true);
68
- ElementHighlighter.toggle2DElements(
69
- selectedElements,
70
- true,
71
- chart,
72
- block.transitionManager.durations.markerHover
73
- );
74
- }
75
- if (chart.type !== "bar") MarkDot.tryMakeMarkDotVisible(selectedElements, chart.markersOptions, true);
76
- });
77
- }
78
- static clickPolarHandler(
79
- multySelection,
80
- appendKey,
81
- selectedSegment,
82
- selectedKeys,
83
- margin,
84
- blockSize,
85
- block,
86
- options,
87
- arcItems,
88
- donutSettings
89
- ) {
90
- const donutThickness = DonutHelper.getThickness(donutSettings, blockSize, margin);
91
- if (!appendKey) {
92
- ElementHighlighter.toggleDonutHighlightState(
93
- selectedSegment,
94
- margin,
95
- blockSize,
96
- donutThickness,
97
- block.transitionManager.durations.higlightedScale,
98
- false
99
- );
100
- ElementHighlighter.removeCloneForElem(block, options.data.keyField.name, selectedSegment);
101
- ElementHighlighter.removeShadowClone(
102
- block,
103
- options.data.keyField.name,
104
- selectedSegment,
105
- margin,
106
- blockSize,
107
- donutThickness
108
- );
109
- if (selectedKeys.length > 0) {
110
- ElementHighlighter.toggleActivityStyle(selectedSegment, false);
111
- ElementHighlighter.toggleActivityStyle(
112
- Legend.getItemsByKeys(block, selectedKeys, SelectionCondition.Exclude),
113
- false
114
- );
115
- } else {
116
- ElementHighlighter.toggleActivityStyle(Donut.getAllArcGroups(block), true);
117
- ElementHighlighter.toggleActivityStyle(
118
- Legend.getItemsByKeys(block, [], SelectionCondition.Exclude),
119
- true
120
- );
121
- }
122
- return;
123
- }
124
- if (multySelection) {
125
- ElementHighlighter.removeCloneForElem(block, options.data.keyField.name, selectedSegment);
126
- ElementHighlighter.removeShadowClone(
127
- block,
128
- options.data.keyField.name,
129
- selectedSegment,
130
- margin,
131
- blockSize,
132
- donutThickness
133
- );
134
- ElementHighlighter.renderArcCloneAndHighlight(block, margin, selectedSegment, blockSize, donutThickness);
135
- ElementHighlighter.toggleActivityStyle(selectedSegment, true);
136
- ElementHighlighter.toggleActivityStyle(
137
- DomHelper.getChartElementsByKeys(
138
- Donut.getAllArcGroups(block),
139
- true,
140
- options.data.keyField.name,
141
- selectedKeys,
142
- SelectionCondition.Exclude
143
- ),
144
- false
145
- );
146
- } else {
147
- ElementHighlighter.removeDonutHighlightingByKeys(
148
- arcItems,
149
- options.data.keyField.name,
150
- selectedKeys,
151
- margin,
152
- blockSize,
153
- donutThickness
154
- );
155
- ElementHighlighter.removeDonutArcClones(block);
156
- ElementHighlighter.toggleActivityStyle(Donut.getAllArcGroups(block), false);
157
- ElementHighlighter.toggleActivityStyle(selectedSegment, true);
158
- ElementHighlighter.renderArcCloneAndHighlight(block, margin, selectedSegment, blockSize, donutThickness);
159
- }
160
- ElementHighlighter.toggleActivityStyle(
161
- Legend.getItemsByKeys(block, selectedKeys, SelectionCondition.Exclude),
162
- false
163
- );
164
- ElementHighlighter.toggleActivityStyle(Legend.getItemsByKeys(block, selectedKeys), true);
165
- }
166
- static clear2D(block, options) {
167
- options.charts.forEach((chart) => {
168
- const elements = DomHelper.get2DChartElements(block, chart);
169
- ElementHighlighter.toggle2DElements(elements, false, chart, block.transitionManager.durations.markerHover);
170
- ElementHighlighter.toggleActivityStyle(elements, true);
171
- if (chart.type !== "bar") MarkDot.tryMakeMarkDotVisible(elements, chart.markersOptions, false);
172
- });
173
- }
174
- static clearPolar(margin, blockSize, block, options, arcItems, donutSettings) {
175
- const donutThickness = DonutHelper.getThickness(donutSettings, blockSize, margin);
176
- ElementHighlighter.toggleDonutHighlightState(
177
- arcItems,
178
- margin,
179
- blockSize,
180
- donutThickness,
181
- block.transitionManager.durations.higlightedScale,
182
- false
183
- );
184
- arcItems.each(function () {
185
- ElementHighlighter.removeCloneForElem(block, options.data.keyField.name, select(this));
186
- ElementHighlighter.removeShadowClone(
187
- block,
188
- options.data.keyField.name,
189
- select(this),
190
- margin,
191
- blockSize,
192
- donutThickness
193
- );
194
- });
195
- ElementHighlighter.toggleActivityStyle(Donut.getAllArcGroups(block), true);
196
- ElementHighlighter.toggleActivityStyle(Legend.getItemsByKeys(block, [], SelectionCondition.Exclude), true);
197
- }
9
+ static click2DHandler(multySelection, appendKey, keyValue, selectedKeys, block, options) {
10
+ options.charts.forEach((chart) => {
11
+ const selectedElements = DomHelper.getChartElementsByKeys(DomHelper.get2DChartElements(block, chart), chart.isSegmented, options.data.keyField.name, [keyValue]);
12
+ const elements = DomHelper.get2DChartElements(block, chart);
13
+ if (!appendKey) {
14
+ ElementHighlighter.toggle2DElements(selectedElements, false, chart, block.transitionManager.durations.markerHover);
15
+ if (chart.type !== "bar")
16
+ MarkDot.tryMakeMarkDotVisible(selectedElements, chart.markersOptions, false);
17
+ if (selectedKeys.length > 0) {
18
+ ElementHighlighter.toggleActivityStyle(selectedElements, false);
19
+ }
20
+ else {
21
+ ElementHighlighter.toggleActivityStyle(elements, true);
22
+ if (chart.type !== "bar")
23
+ MarkDot.tryMakeMarkDotVisible(elements, chart.markersOptions, false);
24
+ }
25
+ return;
26
+ }
27
+ if (multySelection) {
28
+ ElementHighlighter.toggle2DElements(selectedElements, true, chart, block.transitionManager.durations.markerHover);
29
+ ElementHighlighter.toggleActivityStyle(selectedElements, true);
30
+ ElementHighlighter.toggleActivityStyle(DomHelper.getChartElementsByKeys(elements, chart.isSegmented, options.data.keyField.name, selectedKeys, SelectionCondition.Exclude), false);
31
+ }
32
+ else {
33
+ ElementHighlighter.toggle2DElements(DomHelper.getChartElementsByKeys(elements, chart.isSegmented, options.data.keyField.name, selectedKeys, SelectionCondition.Exclude), false, chart, block.transitionManager.durations.markerHover);
34
+ ElementHighlighter.toggleActivityStyle(elements, false);
35
+ if (chart.type !== "bar")
36
+ MarkDot.tryMakeMarkDotVisible(elements, chart.markersOptions, false);
37
+ ElementHighlighter.toggleActivityStyle(selectedElements, true);
38
+ ElementHighlighter.toggle2DElements(selectedElements, true, chart, block.transitionManager.durations.markerHover);
39
+ }
40
+ if (chart.type !== "bar")
41
+ MarkDot.tryMakeMarkDotVisible(selectedElements, chart.markersOptions, true);
42
+ });
43
+ }
44
+ static clickPolarHandler(multySelection, appendKey, selectedSegment, selectedKeys, margin, blockSize, block, options, arcItems, donutSettings) {
45
+ const donutThickness = DonutHelper.getThickness(donutSettings, blockSize, margin);
46
+ if (!appendKey) {
47
+ ElementHighlighter.toggleDonutHighlightState(selectedSegment, margin, blockSize, donutThickness, block.transitionManager.durations.higlightedScale, false);
48
+ ElementHighlighter.removeCloneForElem(block, options.data.keyField.name, selectedSegment);
49
+ ElementHighlighter.removeShadowClone(block, options.data.keyField.name, selectedSegment, margin, blockSize, donutThickness);
50
+ if (selectedKeys.length > 0) {
51
+ ElementHighlighter.toggleActivityStyle(selectedSegment, false);
52
+ ElementHighlighter.toggleActivityStyle(Legend.getItemsByKeys(block, selectedKeys, SelectionCondition.Exclude), false);
53
+ }
54
+ else {
55
+ ElementHighlighter.toggleActivityStyle(Donut.getAllArcGroups(block), true);
56
+ ElementHighlighter.toggleActivityStyle(Legend.getItemsByKeys(block, [], SelectionCondition.Exclude), true);
57
+ }
58
+ return;
59
+ }
60
+ if (multySelection) {
61
+ ElementHighlighter.removeCloneForElem(block, options.data.keyField.name, selectedSegment);
62
+ ElementHighlighter.removeShadowClone(block, options.data.keyField.name, selectedSegment, margin, blockSize, donutThickness);
63
+ ElementHighlighter.renderArcCloneAndHighlight(block, margin, selectedSegment, blockSize, donutThickness);
64
+ ElementHighlighter.toggleActivityStyle(selectedSegment, true);
65
+ ElementHighlighter.toggleActivityStyle(DomHelper.getChartElementsByKeys(Donut.getAllArcGroups(block), true, options.data.keyField.name, selectedKeys, SelectionCondition.Exclude), false);
66
+ }
67
+ else {
68
+ ElementHighlighter.removeDonutHighlightingByKeys(arcItems, options.data.keyField.name, selectedKeys, margin, blockSize, donutThickness);
69
+ ElementHighlighter.removeDonutArcClones(block);
70
+ ElementHighlighter.toggleActivityStyle(Donut.getAllArcGroups(block), false);
71
+ ElementHighlighter.toggleActivityStyle(selectedSegment, true);
72
+ ElementHighlighter.renderArcCloneAndHighlight(block, margin, selectedSegment, blockSize, donutThickness);
73
+ }
74
+ ElementHighlighter.toggleActivityStyle(Legend.getItemsByKeys(block, selectedKeys, SelectionCondition.Exclude), false);
75
+ ElementHighlighter.toggleActivityStyle(Legend.getItemsByKeys(block, selectedKeys), true);
76
+ }
77
+ static clear2D(block, options) {
78
+ options.charts.forEach((chart) => {
79
+ const elements = DomHelper.get2DChartElements(block, chart);
80
+ ElementHighlighter.toggle2DElements(elements, false, chart, block.transitionManager.durations.markerHover);
81
+ ElementHighlighter.toggleActivityStyle(elements, true);
82
+ if (chart.type !== "bar")
83
+ MarkDot.tryMakeMarkDotVisible(elements, chart.markersOptions, false);
84
+ });
85
+ }
86
+ static clearPolar(margin, blockSize, block, options, arcItems, donutSettings) {
87
+ const donutThickness = DonutHelper.getThickness(donutSettings, blockSize, margin);
88
+ ElementHighlighter.toggleDonutHighlightState(arcItems, margin, blockSize, donutThickness, block.transitionManager.durations.higlightedScale, false);
89
+ arcItems.each(function () {
90
+ ElementHighlighter.removeCloneForElem(block, options.data.keyField.name, select(this));
91
+ ElementHighlighter.removeShadowClone(block, options.data.keyField.name, select(this), margin, blockSize, donutThickness);
92
+ });
93
+ ElementHighlighter.toggleActivityStyle(Donut.getAllArcGroups(block), true);
94
+ ElementHighlighter.toggleActivityStyle(Legend.getItemsByKeys(block, [], SelectionCondition.Exclude), true);
95
+ }
198
96
  }
@@ -1,22 +1,22 @@
1
1
  import { Block } from "./block/block";
2
2
  import { Model } from "../model/model";
3
- import { FilterCallback } from "./filterManager/filterEventManager";
3
+ import { ChartClearSelectionOptions, FilterCallback } from "./filterManager/filterEventManager";
4
4
  import { MdtChartsDataSource } from "../config/config";
5
5
  export declare class Engine {
6
- private filterCallback;
7
- private initializeSelected;
8
- block: Block;
9
- data: MdtChartsDataSource;
10
- private filterEventManager;
11
- private chartId;
12
- private contentManager;
13
- constructor(id: number, filterCallback: FilterCallback, initializeSelected: number[]);
14
- render(model: Model, data: MdtChartsDataSource, parentElement: HTMLElement): void;
15
- updateFullBlock(model: Model, data: MdtChartsDataSource): void;
16
- destroy(): void;
17
- updateData(model: Model, newData: MdtChartsDataSource): void;
18
- clearSelection(model: Model): void;
19
- updateColors(model: Model): void;
20
- private renderCharts;
21
- private setFilterEventManager;
6
+ private filterCallback;
7
+ private initializeSelected;
8
+ block: Block;
9
+ data: MdtChartsDataSource;
10
+ private filterEventManager;
11
+ private chartId;
12
+ private contentManager;
13
+ constructor(id: number, filterCallback: FilterCallback, initializeSelected: number[]);
14
+ render(model: Model, data: MdtChartsDataSource, parentElement: HTMLElement): void;
15
+ updateFullBlock(model: Model, data: MdtChartsDataSource): void;
16
+ destroy(): void;
17
+ updateData(model: Model, newData: MdtChartsDataSource): void;
18
+ clearSelection(model: Model, options?: ChartClearSelectionOptions): void;
19
+ updateColors(model: Model): void;
20
+ private renderCharts;
21
+ private setFilterEventManager;
22
22
  }
@@ -4,91 +4,66 @@ import { ContentManager } from "./contentManager/contentManager";
4
4
  import { FilterEventManager } from "./filterManager/filterEventManager";
5
5
  import { Helper } from "./helpers/helper";
6
6
  export class Engine {
7
- constructor(id, filterCallback, initializeSelected) {
8
- this.filterCallback = filterCallback;
9
- this.initializeSelected = initializeSelected;
10
- this.chartId = id;
11
- }
12
- render(model, data, parentElement) {
13
- var _a;
14
- this.data = data;
15
- this.setFilterEventManager(model === null || model === void 0 ? void 0 : model.options);
16
- this.block = new Block(
17
- model.blockCanvas.cssClass,
18
- parentElement,
19
- this.chartId,
20
- this.filterEventManager,
21
- model.transitions
22
- );
23
- (_a = this.filterEventManager) === null || _a === void 0 ? void 0 : _a.setBlock(this.block);
24
- this.block.renderWrapper(model.blockCanvas.size);
25
- if (model.options) {
26
- this.contentManager = new ContentManager(model);
27
- ValueFormatter.setFormatFunction(model.dataSettings.format.formatters);
28
- this.renderCharts(model);
29
- }
30
- }
31
- updateFullBlock(model, data) {
32
- this.destroy();
33
- this.render(model, data, this.block.parentElement);
34
- }
35
- destroy() {
36
- this.block.destroy();
37
- }
38
- updateData(model, newData) {
39
- if (!newData) {
40
- this.data = newData;
41
- this.block.clearWrapper();
42
- } else {
43
- if (!this.data) {
44
- this.data = newData;
45
- this.updateFullBlock(model, this.data);
46
- } else if (!Helper.compareData(this.data, newData, model.options.data.dataSource)) {
47
- for (let source in newData) {
48
- this.data[source] = newData[source];
49
- }
50
- this.contentManager.updateData(this.block, model, newData);
51
- }
52
- }
53
- }
54
- clearSelection(model) {
55
- this.contentManager.clearSelection(this, model);
56
- }
57
- updateColors(model) {
58
- this.contentManager.updateColors(this, model);
59
- }
60
- renderCharts(model) {
61
- this.contentManager.render(model, this);
62
- }
63
- setFilterEventManager(options) {
64
- var _a, _b, _c;
65
- let highlightIds = [];
66
- if (this.initializeSelected instanceof Array && this.initializeSelected.length > 0)
67
- highlightIds = [...this.initializeSelected];
68
- if (
69
- (_a = options === null || options === void 0 ? void 0 : options.data) === null || _a === void 0
70
- ? void 0
71
- : _a.dataSource
72
- )
73
- this.filterEventManager = new FilterEventManager(
74
- this.filterCallback,
75
- this.data[options.data.dataSource],
76
- options.selectable,
77
- options.data.keyField.name,
78
- highlightIds
79
- );
80
- else
81
- this.filterEventManager = new FilterEventManager(
82
- this.filterCallback,
83
- [],
84
- options === null || options === void 0 ? void 0 : options.selectable,
85
- (_c =
86
- (_b = options === null || options === void 0 ? void 0 : options.data) === null || _b === void 0
87
- ? void 0
88
- : _b.keyField) === null || _c === void 0
89
- ? void 0
90
- : _c.name,
91
- highlightIds
92
- );
93
- }
7
+ constructor(id, filterCallback, initializeSelected) {
8
+ this.filterCallback = filterCallback;
9
+ this.initializeSelected = initializeSelected;
10
+ this.chartId = id;
11
+ }
12
+ render(model, data, parentElement) {
13
+ var _a;
14
+ this.data = data;
15
+ this.setFilterEventManager(model === null || model === void 0 ? void 0 : model.options);
16
+ this.block = new Block(model.blockCanvas.cssClass, parentElement, this.chartId, this.filterEventManager, model.transitions);
17
+ (_a = this.filterEventManager) === null || _a === void 0 ? void 0 : _a.setBlock(this.block);
18
+ this.block.renderWrapper(model.blockCanvas.size);
19
+ if (model.options) {
20
+ this.contentManager = new ContentManager(model);
21
+ ValueFormatter.setFormatFunction(model.dataSettings.format.formatters);
22
+ this.renderCharts(model);
23
+ }
24
+ }
25
+ updateFullBlock(model, data) {
26
+ this.destroy();
27
+ this.render(model, data, this.block.parentElement);
28
+ }
29
+ destroy() {
30
+ this.block.destroy();
31
+ }
32
+ updateData(model, newData) {
33
+ if (!newData) {
34
+ this.data = newData;
35
+ this.block.clearWrapper();
36
+ }
37
+ else {
38
+ if (!this.data) {
39
+ this.data = newData;
40
+ this.updateFullBlock(model, this.data);
41
+ }
42
+ else if (!Helper.compareData(this.data, newData, model.options.data.dataSource)) {
43
+ for (let source in newData) {
44
+ this.data[source] = newData[source];
45
+ }
46
+ this.contentManager.updateData(this.block, model, newData);
47
+ }
48
+ }
49
+ }
50
+ clearSelection(model, options) {
51
+ this.contentManager.clearSelection(this, model, options);
52
+ }
53
+ updateColors(model) {
54
+ this.contentManager.updateColors(this, model);
55
+ }
56
+ renderCharts(model) {
57
+ this.contentManager.render(model, this);
58
+ }
59
+ setFilterEventManager(options) {
60
+ var _a, _b, _c;
61
+ let highlightIds = [];
62
+ if (this.initializeSelected instanceof Array && this.initializeSelected.length > 0)
63
+ highlightIds = [...this.initializeSelected];
64
+ if ((_a = options === null || options === void 0 ? void 0 : options.data) === null || _a === void 0 ? void 0 : _a.dataSource)
65
+ this.filterEventManager = new FilterEventManager(this.filterCallback, this.data[options.data.dataSource], options.selectable, options.data.keyField.name, highlightIds);
66
+ else
67
+ this.filterEventManager = new FilterEventManager(this.filterCallback, [], options === null || options === void 0 ? void 0 : options.selectable, (_c = (_b = options === null || options === void 0 ? void 0 : options.data) === null || _b === void 0 ? void 0 : _b.keyField) === null || _c === void 0 ? void 0 : _c.name, highlightIds);
68
+ }
94
69
  }
@@ -3,30 +3,23 @@ import { DonutAggregatorModel, Field } from "../../../model/model";
3
3
  import { Block } from "../../block/block";
4
4
  import { Translate } from "../../polarNotation/donut/donut";
5
5
  export interface AggregatorInfo {
6
- name: string;
7
- value: number | string;
8
- format: DataType;
9
- marginInPercent: number;
6
+ name: string;
7
+ value: number | string;
8
+ format: DataType;
9
+ marginInPercent: number;
10
10
  }
11
11
  export declare class Aggregator {
12
- static readonly aggregatorValueClass = "aggregator-value";
13
- private static readonly aggregatorTitleClass;
14
- private static readonly aggregatorObjectClass;
15
- static render(
16
- block: Block,
17
- valueField: Field,
18
- innerRadius: number,
19
- translate: Translate,
20
- fontSize: number,
21
- settings: DonutAggregatorModel
22
- ): void;
23
- static update(block: Block, valueField: Field, settings: DonutAggregatorModel): void;
24
- private static buildConfig;
25
- private static renderText;
26
- private static formatValue;
27
- private static updateText;
28
- private static reCalculateAggregatorFontSize;
29
- private static setTitleFontSize;
30
- private static renderAggregatorObject;
31
- private static renderWrapper;
12
+ static readonly aggregatorValueClass = "aggregator-value";
13
+ private static readonly aggregatorTitleClass;
14
+ private static readonly aggregatorObjectClass;
15
+ static render(block: Block, valueField: Field, innerRadius: number, translate: Translate, fontSize: number, settings: DonutAggregatorModel): void;
16
+ static update(block: Block, valueField: Field, settings: DonutAggregatorModel): void;
17
+ private static buildConfig;
18
+ private static renderText;
19
+ private static formatValue;
20
+ private static updateText;
21
+ private static reCalculateAggregatorFontSize;
22
+ private static setTitleFontSize;
23
+ private static renderAggregatorObject;
24
+ private static renderWrapper;
32
25
  }