mdt-charts 1.28.2 → 1.29.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 (255) hide show
  1. package/lib/config/config.d.ts +164 -165
  2. package/lib/designer/designerConfig.d.ts +62 -59
  3. package/lib/engine/block/block.d.ts +22 -16
  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 +65 -66
  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 +6 -6
  18. package/lib/engine/contentManager/contentManager.js +15 -15
  19. package/lib/engine/contentManager/contentManagerFactory.d.ts +6 -6
  20. package/lib/engine/contentManager/contentManagerFactory.js +12 -12
  21. package/lib/engine/elementHighlighter/elementHighlighter.d.ts +70 -22
  22. package/lib/engine/elementHighlighter/elementHighlighter.js +230 -181
  23. package/lib/engine/elementHighlighter/selectHighlighter.d.ts +29 -4
  24. package/lib/engine/elementHighlighter/selectHighlighter.js +189 -87
  25. package/lib/engine/engine.d.ts +16 -16
  26. package/lib/engine/engine.js +87 -62
  27. package/lib/engine/features/aggregator/aggregator.d.ts +24 -17
  28. package/lib/engine/features/aggregator/aggregator.js +113 -102
  29. package/lib/engine/features/axis/axis.d.ts +22 -9
  30. package/lib/engine/features/axis/axis.js +159 -150
  31. package/lib/engine/features/axis/axisDomHelper.d.ts +7 -2
  32. package/lib/engine/features/axis/axisDomHelper.js +19 -20
  33. package/lib/engine/features/axis/axisHelper.d.ts +9 -5
  34. package/lib/engine/features/axis/axisHelper.js +28 -33
  35. package/lib/engine/features/axis/axisLabelDomHelper.d.ts +26 -11
  36. package/lib/engine/features/axis/axisLabelDomHelper.js +156 -152
  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 +51 -16
  40. package/lib/engine/features/embeddedLabels/embeddedLabels.js +234 -134
  41. package/lib/engine/features/embeddedLabels/embeddedLabelsDomHelper.d.ts +13 -2
  42. package/lib/engine/features/embeddedLabels/embeddedLabelsDomHelper.js +20 -23
  43. package/lib/engine/features/embeddedLabels/embeddedLabelsHelper.d.ts +32 -15
  44. package/lib/engine/features/embeddedLabels/embeddedLabelsHelper.js +56 -63
  45. package/lib/engine/features/gridLine/gidLineHelper.d.ts +13 -7
  46. package/lib/engine/features/gridLine/gidLineHelper.js +42 -49
  47. package/lib/engine/features/gridLine/gridLine.d.ts +19 -5
  48. package/lib/engine/features/gridLine/gridLine.js +35 -36
  49. package/lib/engine/features/legend/legend.d.ts +38 -29
  50. package/lib/engine/features/legend/legend.js +117 -92
  51. package/lib/engine/features/legend/legendDomHelper.d.ts +13 -6
  52. package/lib/engine/features/legend/legendDomHelper.js +63 -62
  53. package/lib/engine/features/legend/legendEventsManager.d.ts +13 -8
  54. package/lib/engine/features/legend/legendEventsManager.js +48 -47
  55. package/lib/engine/features/legend/legendHelper.d.ts +39 -14
  56. package/lib/engine/features/legend/legendHelper.js +98 -93
  57. package/lib/engine/features/legend/legendHelperService.d.ts +13 -6
  58. package/lib/engine/features/legend/legendHelperService.js +24 -25
  59. package/lib/engine/features/legend/legendMarkerCreator.d.ts +18 -9
  60. package/lib/engine/features/legend/legendMarkerCreator.js +79 -76
  61. package/lib/engine/features/legend/legendWidthCalculator.d.ts +7 -7
  62. package/lib/engine/features/legend/legendWidthCalculator.js +126 -122
  63. package/lib/engine/features/markDots/markDot.d.ts +42 -15
  64. package/lib/engine/features/markDots/markDot.js +101 -70
  65. package/lib/engine/features/markDots/markDotsHelper.d.ts +8 -1
  66. package/lib/engine/features/markDots/markDotsHelper.js +13 -12
  67. package/lib/engine/features/recordOverflowAlert/recordOverflowAlertCore.d.ts +17 -17
  68. package/lib/engine/features/recordOverflowAlert/recordOverflowAlertCore.js +42 -47
  69. package/lib/engine/features/scale/scale.d.ts +17 -12
  70. package/lib/engine/features/scale/scale.js +76 -69
  71. package/lib/engine/features/tipBox/tipBox.d.ts +9 -5
  72. package/lib/engine/features/tipBox/tipBox.js +24 -24
  73. package/lib/engine/features/tipBox/tipBoxHelper.d.ts +16 -9
  74. package/lib/engine/features/tipBox/tipBoxHelper.js +60 -45
  75. package/lib/engine/features/title/title.d.ts +6 -6
  76. package/lib/engine/features/title/title.js +34 -35
  77. package/lib/engine/features/tolltip/newTooltip/newTooltip.d.ts +15 -11
  78. package/lib/engine/features/tolltip/newTooltip/newTooltip.js +21 -21
  79. package/lib/engine/features/tolltip/newTooltip/newTooltipService.d.ts +13 -8
  80. package/lib/engine/features/tolltip/newTooltip/newTooltipService.js +26 -23
  81. package/lib/engine/features/tolltip/tooltip.d.ts +17 -11
  82. package/lib/engine/features/tolltip/tooltip.js +296 -142
  83. package/lib/engine/features/tolltip/tooltipComponentsManager.d.ts +21 -10
  84. package/lib/engine/features/tolltip/tooltipComponentsManager.js +113 -114
  85. package/lib/engine/features/tolltip/tooltipDomHelper.d.ts +43 -21
  86. package/lib/engine/features/tolltip/tooltipDomHelper.js +144 -120
  87. package/lib/engine/features/tolltip/tooltipHelper.d.ts +39 -9
  88. package/lib/engine/features/tolltip/tooltipHelper.js +114 -91
  89. package/lib/engine/features/valueLabels/valueLabels.d.ts +58 -38
  90. package/lib/engine/features/valueLabels/valueLabels.js +205 -169
  91. package/lib/engine/features/valueLabels/valueLabelsHelper.d.ts +7 -1
  92. package/lib/engine/features/valueLabels/valueLabelsHelper.js +23 -18
  93. package/lib/engine/features/valueLabelsCollision/valueLabelsCollision.d.ts +18 -15
  94. package/lib/engine/features/valueLabelsCollision/valueLabelsCollision.js +46 -47
  95. package/lib/engine/features/valueLabelsCollision/valueLabelsCollisionHelper.d.ts +6 -3
  96. package/lib/engine/features/valueLabelsCollision/valueLabelsCollisionHelper.js +49 -45
  97. package/lib/engine/filterManager/filterEventManager.d.ts +37 -26
  98. package/lib/engine/filterManager/filterEventManager.js +174 -129
  99. package/lib/engine/helpers/domHelper.d.ts +45 -20
  100. package/lib/engine/helpers/domHelper.js +62 -61
  101. package/lib/engine/helpers/fontResizer/fontResizer.d.ts +10 -10
  102. package/lib/engine/helpers/fontResizer/fontResizer.js +21 -16
  103. package/lib/engine/helpers/fontResizer/fontResizerService.d.ts +1 -1
  104. package/lib/engine/helpers/fontResizer/fontResizerService.js +9 -10
  105. package/lib/engine/helpers/helper.d.ts +27 -27
  106. package/lib/engine/helpers/helper.js +91 -92
  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 +25 -11
  112. package/lib/engine/polarNotation/donut/DonutHelper.js +71 -70
  113. package/lib/engine/polarNotation/donut/donut.d.ts +38 -23
  114. package/lib/engine/polarNotation/donut/donut.js +109 -99
  115. package/lib/engine/polarNotation/extenders/polarRecordOverflowAlert.d.ts +7 -7
  116. package/lib/engine/polarNotation/extenders/polarRecordOverflowAlert.js +36 -36
  117. package/lib/engine/polarNotation/polarManager.d.ts +5 -5
  118. package/lib/engine/polarNotation/polarManager.js +66 -52
  119. package/lib/engine/transitionManager.d.ts +13 -14
  120. package/lib/engine/transitionManager.js +48 -49
  121. package/lib/engine/twoDimensionalNotation/area/area.d.ts +44 -28
  122. package/lib/engine/twoDimensionalNotation/area/area.js +272 -238
  123. package/lib/engine/twoDimensionalNotation/area/areaGenerator.d.ts +13 -5
  124. package/lib/engine/twoDimensionalNotation/area/areaGenerator.js +13 -13
  125. package/lib/engine/twoDimensionalNotation/area/areaHelper.d.ts +4 -4
  126. package/lib/engine/twoDimensionalNotation/area/areaHelper.js +57 -41
  127. package/lib/engine/twoDimensionalNotation/bar/bar.d.ts +54 -29
  128. package/lib/engine/twoDimensionalNotation/bar/bar.js +362 -224
  129. package/lib/engine/twoDimensionalNotation/bar/barHelper.d.ts +71 -32
  130. package/lib/engine/twoDimensionalNotation/bar/barHelper.js +162 -126
  131. package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStacker.d.ts +6 -6
  132. package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStacker.js +24 -24
  133. package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStackerService.d.ts +2 -2
  134. package/lib/engine/twoDimensionalNotation/bar/stackedData/dataStackerService.js +16 -17
  135. package/lib/engine/twoDimensionalNotation/dot/dotChart.d.ts +23 -23
  136. package/lib/engine/twoDimensionalNotation/dot/dotChart.js +135 -114
  137. package/lib/engine/twoDimensionalNotation/extenders/twoDimRecordOverflowAlert.d.ts +7 -7
  138. package/lib/engine/twoDimensionalNotation/extenders/twoDimRecordOverflowAlert.js +28 -28
  139. package/lib/engine/twoDimensionalNotation/line/line.d.ts +37 -16
  140. package/lib/engine/twoDimensionalNotation/line/line.js +162 -132
  141. package/lib/engine/twoDimensionalNotation/line/lineBuilder.d.ts +14 -11
  142. package/lib/engine/twoDimensionalNotation/line/lineBuilder.js +47 -48
  143. package/lib/engine/twoDimensionalNotation/line/lineGenerator.d.ts +4 -4
  144. package/lib/engine/twoDimensionalNotation/line/lineGenerator.js +8 -8
  145. package/lib/engine/twoDimensionalNotation/line/lineHelper.d.ts +12 -6
  146. package/lib/engine/twoDimensionalNotation/line/lineHelper.js +76 -60
  147. package/lib/engine/twoDimensionalNotation/lineLike/generatorFactory/lineLikeGeneratorFactory.d.ts +6 -6
  148. package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorCurveMiddleware.d.ts +5 -5
  149. package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorCurveMiddleware.js +16 -17
  150. package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorDefineMiddleware.d.ts +11 -10
  151. package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorDefineMiddleware.js +9 -7
  152. package/lib/engine/twoDimensionalNotation/lineLike/generatorMiddleware/lineLikeGeneratorMiddleware.d.ts +3 -1
  153. package/lib/engine/twoDimensionalNotation/twoDimensionalManager.d.ts +9 -9
  154. package/lib/engine/twoDimensionalNotation/twoDimensionalManager.js +252 -143
  155. package/lib/engine/valueFormatter.d.ts +3 -3
  156. package/lib/engine/valueFormatter.js +6 -6
  157. package/lib/main.d.ts +82 -75
  158. package/lib/main.js +79 -84
  159. package/lib/model/EventEmitter.d.ts +8 -8
  160. package/lib/model/EventEmitter.js +24 -24
  161. package/lib/model/chartStyleModel/chartStyleModel.d.ts +5 -5
  162. package/lib/model/chartStyleModel/chartStyleModel.js +27 -25
  163. package/lib/model/chartStyleModel/colorRange.d.ts +3 -3
  164. package/lib/model/chartStyleModel/colorRange.js +19 -24
  165. package/lib/model/chartStyleModel/twoDimensionalChartStyleModel.d.ts +22 -12
  166. package/lib/model/chartStyleModel/twoDimensionalChartStyleModel.js +69 -60
  167. package/lib/model/configsValidator/configValidator.d.ts +1 -1
  168. package/lib/model/configsValidator/configValidator.js +4 -4
  169. package/lib/model/dataManagerModel/dataManagerModel.d.ts +36 -26
  170. package/lib/model/dataManagerModel/dataManagerModel.js +179 -128
  171. package/lib/model/dataManagerModel/dataManagerModelService.d.ts +2 -2
  172. package/lib/model/dataManagerModel/dataManagerModelService.js +25 -26
  173. package/lib/model/featuresModel/axisModel.d.ts +69 -18
  174. package/lib/model/featuresModel/axisModel.js +224 -169
  175. package/lib/model/featuresModel/axisModelService.d.ts +10 -6
  176. package/lib/model/featuresModel/axisModelService.js +27 -27
  177. package/lib/model/featuresModel/legendModel/legendCanvasModel.d.ts +16 -11
  178. package/lib/model/featuresModel/legendModel/legendCanvasModel.js +55 -59
  179. package/lib/model/featuresModel/legendModel/legendModel.d.ts +7 -3
  180. package/lib/model/featuresModel/legendModel/legendModel.js +59 -41
  181. package/lib/model/featuresModel/legendModel/polarMarginCalculator.d.ts +8 -3
  182. package/lib/model/featuresModel/legendModel/polarMarginCalculator.js +18 -20
  183. package/lib/model/featuresModel/legendModel/twoDimLegendModel.d.ts +8 -4
  184. package/lib/model/featuresModel/legendModel/twoDimLegendModel.js +40 -27
  185. package/lib/model/featuresModel/otherComponents.d.ts +7 -4
  186. package/lib/model/featuresModel/otherComponents.js +9 -9
  187. package/lib/model/featuresModel/scaleModel/scaleAxisRecalcer.d.ts +6 -6
  188. package/lib/model/featuresModel/scaleModel/scaleAxisRecalcer.js +27 -23
  189. package/lib/model/featuresModel/scaleModel/scaleDomainService.d.ts +19 -5
  190. package/lib/model/featuresModel/scaleModel/scaleDomainService.js +44 -55
  191. package/lib/model/featuresModel/scaleModel/scaleModel.d.ts +10 -10
  192. package/lib/model/featuresModel/scaleModel/scaleModel.js +61 -50
  193. package/lib/model/featuresModel/scaleModel/scaleModelServices.js +15 -22
  194. package/lib/model/featuresModel/titleModel.d.ts +1 -1
  195. package/lib/model/featuresModel/titleModel.js +14 -14
  196. package/lib/model/featuresModel/tooltipModel.d.ts +1 -1
  197. package/lib/model/featuresModel/tooltipModel.js +5 -5
  198. package/lib/model/featuresModel/valueLabelsModel/valueLabelsModel.d.ts +23 -11
  199. package/lib/model/featuresModel/valueLabelsModel/valueLabelsModel.js +53 -51
  200. package/lib/model/helpers/modelHelper.d.ts +7 -7
  201. package/lib/model/helpers/modelHelper.js +38 -42
  202. package/lib/model/helpers/twoDimensionalModelHelper.d.ts +37 -9
  203. package/lib/model/helpers/twoDimensionalModelHelper.js +147 -125
  204. package/lib/model/helpers/unitsFromConfigReader.js +4 -4
  205. package/lib/model/helpers/unitsReader.d.ts +2 -2
  206. package/lib/model/helpers/unitsReader.js +11 -13
  207. package/lib/model/margin/marginModel.d.ts +7 -7
  208. package/lib/model/margin/marginModel.js +23 -20
  209. package/lib/model/margin/twoDim/twoDimMarginModel.d.ts +13 -13
  210. package/lib/model/margin/twoDim/twoDimMarginModel.js +184 -113
  211. package/lib/model/model.d.ts +308 -280
  212. package/lib/model/model.js +4 -4
  213. package/lib/model/modelBuilder.d.ts +27 -18
  214. package/lib/model/modelBuilder.js +85 -79
  215. package/lib/model/modelInstance/canvasModel/canvasModel.d.ts +17 -17
  216. package/lib/model/modelInstance/canvasModel/canvasModel.js +42 -43
  217. package/lib/model/modelInstance/canvasModel/canvasSizesModel/canvasMarginModel.d.ts +7 -7
  218. package/lib/model/modelInstance/canvasModel/canvasSizesModel/canvasSizeModel.d.ts +2 -2
  219. package/lib/model/modelInstance/canvasModel/canvasSizesModel/marginModelService.d.ts +6 -6
  220. package/lib/model/modelInstance/canvasModel/canvasSizesModel/marginModelService.js +24 -24
  221. package/lib/model/modelInstance/canvasModel/legendCanvasModel.d.ts +4 -4
  222. package/lib/model/modelInstance/canvasModel/legendCanvasModel.js +11 -11
  223. package/lib/model/modelInstance/canvasModel/titleCanvas.d.ts +4 -4
  224. package/lib/model/modelInstance/canvasModel/titleCanvas.js +9 -9
  225. package/lib/model/modelInstance/chartBlockVersion/chartBlockVersion.d.ts +3 -3
  226. package/lib/model/modelInstance/chartBlockVersion/chartBlockVersion.js +6 -6
  227. package/lib/model/modelInstance/configReader.d.ts +32 -23
  228. package/lib/model/modelInstance/configReader.js +125 -94
  229. package/lib/model/modelInstance/dataModel/dataModel.d.ts +9 -9
  230. package/lib/model/modelInstance/dataModel/dataModel.js +24 -24
  231. package/lib/model/modelInstance/dataModel/dataRepository.d.ts +14 -14
  232. package/lib/model/modelInstance/dataModel/dataRepository.js +42 -42
  233. package/lib/model/modelInstance/modelInstance.d.ts +11 -6
  234. package/lib/model/modelInstance/modelInstance.js +16 -16
  235. package/lib/model/modelInstance/titleConfigReader.d.ts +8 -8
  236. package/lib/model/modelInstance/titleConfigReader.js +37 -30
  237. package/lib/model/notations/polar/donut/donutAggregatorService.d.ts +9 -6
  238. package/lib/model/notations/polar/donut/donutAggregatorService.js +40 -37
  239. package/lib/model/notations/polar/donut/donutModel.d.ts +9 -5
  240. package/lib/model/notations/polar/donut/donutModel.js +28 -28
  241. package/lib/model/notations/polar/donut/donutThicknessService.d.ts +3 -3
  242. package/lib/model/notations/polar/donut/donutThicknessService.js +13 -15
  243. package/lib/model/notations/polar/polarModel.d.ts +18 -7
  244. package/lib/model/notations/polar/polarModel.js +79 -65
  245. package/lib/model/notations/twoDimensional/styles.d.ts +44 -7
  246. package/lib/model/notations/twoDimensional/styles.js +234 -125
  247. package/lib/model/notations/twoDimensionalModel.d.ts +23 -13
  248. package/lib/model/notations/twoDimensionalModel.js +330 -162
  249. package/lib/optionsServices/publicOptionsService.d.ts +1 -1
  250. package/lib/optionsServices/publicOptionsService.js +4 -4
  251. package/lib/optionsServices/validators/sizeValidator.d.ts +2 -2
  252. package/lib/optionsServices/validators/sizeValidator.js +10 -11
  253. package/lib/style/charts-main.css +150 -151
  254. package/lib/style/charts-main.less +150 -151
  255. package/package.json +1 -1
@@ -6,13 +6,43 @@ import { Size } from "../../../config/config";
6
6
  import { TooltipCoordinate } from "./newTooltip/newTooltip";
7
7
  import { TooltipPreCoordinate } from "./newTooltip/newTooltipService";
8
8
  export declare class TooltipHelper {
9
- private static convexsize;
10
- static getHorizontalPad(coordinateX: number, tooltipBlockWidth: number, blockSize: Size, translateX: number): number;
11
- static getVerticalPad(coordinateY: number, tooltipBlockHeight: number, translateY: number): number;
12
- static getTooltipArrowPadding(tooltipBlockWidth: number, horizontalPad: number): number;
13
- static getCoordinateByPointer(pointer: [number, number]): TooltipCoordinate;
14
- static getTooltipFixedCoordinate(scaleKey: AxisScale<any>, margin: BlockMargin, keyValue: string, blockBoundingRect: DOMRect, tooltipBoundingRect: DOMRect, keyAxisOrient: Orient, winWidth: number, winHeight: number): TooltipCoordinate;
15
- static getTooltipCursorCoordinate(pointer: [number, number], blockBoundingRect: DOMRect, tooltipBoundingRect: DOMRect): TooltipCoordinate;
16
- static getTooltipLineAttributes(scaleKey: AxisScale<any>, margin: BlockMargin, key: string, chartOrientation: ChartOrientation, blockSize: Size): TooltipLineAttributes;
17
- static recalcToolTipCoordinateByViewPort(blockBounding: DOMRect, tooltipBounding: DOMRect, preCoordinate: TooltipPreCoordinate, winWidth: number, winHeight: number): TooltipCoordinate;
9
+ private static convexsize;
10
+ static getHorizontalPad(
11
+ coordinateX: number,
12
+ tooltipBlockWidth: number,
13
+ blockSize: Size,
14
+ translateX: number
15
+ ): number;
16
+ static getVerticalPad(coordinateY: number, tooltipBlockHeight: number, translateY: number): number;
17
+ static getTooltipArrowPadding(tooltipBlockWidth: number, horizontalPad: number): number;
18
+ static getCoordinateByPointer(pointer: [number, number]): TooltipCoordinate;
19
+ static getTooltipFixedCoordinate(
20
+ scaleKey: AxisScale<any>,
21
+ margin: BlockMargin,
22
+ keyValue: string,
23
+ blockBoundingRect: DOMRect,
24
+ tooltipBoundingRect: DOMRect,
25
+ keyAxisOrient: Orient,
26
+ winWidth: number,
27
+ winHeight: number
28
+ ): TooltipCoordinate;
29
+ static getTooltipCursorCoordinate(
30
+ pointer: [number, number],
31
+ blockBoundingRect: DOMRect,
32
+ tooltipBoundingRect: DOMRect
33
+ ): TooltipCoordinate;
34
+ static getTooltipLineAttributes(
35
+ scaleKey: AxisScale<any>,
36
+ margin: BlockMargin,
37
+ key: string,
38
+ chartOrientation: ChartOrientation,
39
+ blockSize: Size
40
+ ): TooltipLineAttributes;
41
+ static recalcToolTipCoordinateByViewPort(
42
+ blockBounding: DOMRect,
43
+ tooltipBounding: DOMRect,
44
+ preCoordinate: TooltipPreCoordinate,
45
+ winWidth: number,
46
+ winHeight: number
47
+ ): TooltipCoordinate;
18
48
  }
@@ -2,96 +2,119 @@ import { Scale } from "../scale/scale";
2
2
  import { ARROW_DEFAULT_POSITION, TOOLTIP_ARROW_PADDING_X, TOOLTIP_ARROW_PADDING_Y } from "./tooltipDomHelper";
3
3
  import { TooltipService } from "./newTooltip/newTooltipService";
4
4
  export class TooltipHelper {
5
- static getHorizontalPad(coordinateX, tooltipBlockWidth, blockSize, translateX) {
6
- let pad = 0;
7
- if (tooltipBlockWidth + coordinateX - TOOLTIP_ARROW_PADDING_X + translateX > blockSize.width)
8
- pad = tooltipBlockWidth + coordinateX - TOOLTIP_ARROW_PADDING_X + translateX - blockSize.width;
9
- return pad;
10
- }
11
- static getVerticalPad(coordinateY, tooltipBlockHeight, translateY) {
12
- let pad = 0;
13
- if (coordinateY - TOOLTIP_ARROW_PADDING_Y - tooltipBlockHeight + translateY <
14
- -tooltipBlockHeight - TOOLTIP_ARROW_PADDING_Y)
15
- pad = coordinateY;
16
- return pad; // return zero or sub zero
17
- }
18
- static getTooltipArrowPadding(tooltipBlockWidth, horizontalPad) {
19
- return horizontalPad > tooltipBlockWidth
20
- ? tooltipBlockWidth - ARROW_DEFAULT_POSITION - 20 * Math.sqrt(2)
21
- : horizontalPad; // If tooltip arrow has coordinate outside svg, it take X position in end of tooltip block
22
- }
23
- static getCoordinateByPointer(pointer) {
24
- const coordinate = {
25
- left: null,
26
- top: null,
27
- right: null,
28
- bottom: null
29
- };
30
- coordinate.left = pointer[0] + "px";
31
- coordinate.top = pointer[1] + "px";
32
- return coordinate;
33
- }
34
- static getTooltipFixedCoordinate(scaleKey, margin, keyValue, blockBoundingRect, tooltipBoundingRect, keyAxisOrient, winWidth, winHeight) {
35
- const coordinate = {
36
- top: null,
37
- left: null
38
- };
39
- if (keyAxisOrient === "bottom" || keyAxisOrient === "top") {
40
- coordinate.left = Scale.getScaledValue(scaleKey, keyValue) + margin.left - tooltipBoundingRect.width / 2;
41
- if (keyAxisOrient === "bottom")
42
- coordinate.top = margin.top - 5 - tooltipBoundingRect.height;
43
- else
44
- coordinate.top = blockBoundingRect.height - margin.bottom;
45
- }
46
- if (keyAxisOrient === "left" || keyAxisOrient === "right") {
47
- coordinate.top = Scale.getScaledValue(scaleKey, keyValue) + margin.top - tooltipBoundingRect.height / 2;
48
- if (keyAxisOrient === "left")
49
- coordinate.left = blockBoundingRect.width - margin.right;
50
- else
51
- coordinate.left = margin.left - tooltipBoundingRect.width;
52
- }
53
- return this.recalcToolTipCoordinateByViewPort(blockBoundingRect, tooltipBoundingRect, coordinate, winWidth, winHeight);
54
- }
55
- static getTooltipCursorCoordinate(pointer, blockBoundingRect, tooltipBoundingRect) {
56
- const pad = 10;
57
- const coordinate = {
58
- top: pointer[1] + pad,
59
- left: pointer[0] + pad
60
- };
61
- return this.recalcToolTipCoordinateByViewPort(blockBoundingRect, tooltipBoundingRect, coordinate, window.innerWidth, window.innerHeight);
62
- }
63
- static getTooltipLineAttributes(scaleKey, margin, key, chartOrientation, blockSize) {
64
- const attributes = {
65
- x1: 0,
66
- x2: 0,
67
- y1: 0,
68
- y2: 0
69
- };
70
- if (chartOrientation === "vertical") {
71
- attributes.x1 = Math.ceil(Scale.getScaledValue(scaleKey, key) + margin.left) - 0.5;
72
- attributes.x2 = Math.ceil(Scale.getScaledValue(scaleKey, key) + margin.left) - 0.5;
73
- attributes.y1 = margin.top - this.convexsize;
74
- attributes.y2 = blockSize.height - margin.bottom + this.convexsize * 2;
75
- }
76
- else {
77
- attributes.x1 = margin.left - this.convexsize;
78
- attributes.x2 = blockSize.width - margin.right + this.convexsize * 2;
79
- attributes.y1 = Scale.getScaledValue(scaleKey, key) + margin.top;
80
- attributes.y2 = Scale.getScaledValue(scaleKey, key) + margin.top;
81
- }
82
- return attributes;
83
- }
84
- static recalcToolTipCoordinateByViewPort(blockBounding, tooltipBounding, preCoordinate, winWidth, winHeight) {
85
- const res = TooltipService.getTooltipByWindow(tooltipBounding, preCoordinate, {
86
- width: winWidth,
87
- height: winHeight
88
- }, blockBounding);
89
- return {
90
- left: res.left + "px",
91
- top: res.top + "px",
92
- right: null,
93
- bottom: null
94
- };
95
- }
5
+ static getHorizontalPad(coordinateX, tooltipBlockWidth, blockSize, translateX) {
6
+ let pad = 0;
7
+ if (tooltipBlockWidth + coordinateX - TOOLTIP_ARROW_PADDING_X + translateX > blockSize.width)
8
+ pad = tooltipBlockWidth + coordinateX - TOOLTIP_ARROW_PADDING_X + translateX - blockSize.width;
9
+ return pad;
10
+ }
11
+ static getVerticalPad(coordinateY, tooltipBlockHeight, translateY) {
12
+ let pad = 0;
13
+ if (
14
+ coordinateY - TOOLTIP_ARROW_PADDING_Y - tooltipBlockHeight + translateY <
15
+ -tooltipBlockHeight - TOOLTIP_ARROW_PADDING_Y
16
+ )
17
+ pad = coordinateY;
18
+ return pad; // return zero or sub zero
19
+ }
20
+ static getTooltipArrowPadding(tooltipBlockWidth, horizontalPad) {
21
+ return horizontalPad > tooltipBlockWidth
22
+ ? tooltipBlockWidth - ARROW_DEFAULT_POSITION - 20 * Math.sqrt(2)
23
+ : horizontalPad; // If tooltip arrow has coordinate outside svg, it take X position in end of tooltip block
24
+ }
25
+ static getCoordinateByPointer(pointer) {
26
+ const coordinate = {
27
+ left: null,
28
+ top: null,
29
+ right: null,
30
+ bottom: null
31
+ };
32
+ coordinate.left = pointer[0] + "px";
33
+ coordinate.top = pointer[1] + "px";
34
+ return coordinate;
35
+ }
36
+ static getTooltipFixedCoordinate(
37
+ scaleKey,
38
+ margin,
39
+ keyValue,
40
+ blockBoundingRect,
41
+ tooltipBoundingRect,
42
+ keyAxisOrient,
43
+ winWidth,
44
+ winHeight
45
+ ) {
46
+ const coordinate = {
47
+ top: null,
48
+ left: null
49
+ };
50
+ if (keyAxisOrient === "bottom" || keyAxisOrient === "top") {
51
+ coordinate.left = Scale.getScaledValue(scaleKey, keyValue) + margin.left - tooltipBoundingRect.width / 2;
52
+ if (keyAxisOrient === "bottom") coordinate.top = margin.top - 5 - tooltipBoundingRect.height;
53
+ else coordinate.top = blockBoundingRect.height - margin.bottom;
54
+ }
55
+ if (keyAxisOrient === "left" || keyAxisOrient === "right") {
56
+ coordinate.top = Scale.getScaledValue(scaleKey, keyValue) + margin.top - tooltipBoundingRect.height / 2;
57
+ if (keyAxisOrient === "left") coordinate.left = blockBoundingRect.width - margin.right;
58
+ else coordinate.left = margin.left - tooltipBoundingRect.width;
59
+ }
60
+ return this.recalcToolTipCoordinateByViewPort(
61
+ blockBoundingRect,
62
+ tooltipBoundingRect,
63
+ coordinate,
64
+ winWidth,
65
+ winHeight
66
+ );
67
+ }
68
+ static getTooltipCursorCoordinate(pointer, blockBoundingRect, tooltipBoundingRect) {
69
+ const pad = 10;
70
+ const coordinate = {
71
+ top: pointer[1] + pad,
72
+ left: pointer[0] + pad
73
+ };
74
+ return this.recalcToolTipCoordinateByViewPort(
75
+ blockBoundingRect,
76
+ tooltipBoundingRect,
77
+ coordinate,
78
+ window.innerWidth,
79
+ window.innerHeight
80
+ );
81
+ }
82
+ static getTooltipLineAttributes(scaleKey, margin, key, chartOrientation, blockSize) {
83
+ const attributes = {
84
+ x1: 0,
85
+ x2: 0,
86
+ y1: 0,
87
+ y2: 0
88
+ };
89
+ if (chartOrientation === "vertical") {
90
+ attributes.x1 = Math.ceil(Scale.getScaledValue(scaleKey, key) + margin.left) - 0.5;
91
+ attributes.x2 = Math.ceil(Scale.getScaledValue(scaleKey, key) + margin.left) - 0.5;
92
+ attributes.y1 = margin.top - this.convexsize;
93
+ attributes.y2 = blockSize.height - margin.bottom + this.convexsize * 2;
94
+ } else {
95
+ attributes.x1 = margin.left - this.convexsize;
96
+ attributes.x2 = blockSize.width - margin.right + this.convexsize * 2;
97
+ attributes.y1 = Scale.getScaledValue(scaleKey, key) + margin.top;
98
+ attributes.y2 = Scale.getScaledValue(scaleKey, key) + margin.top;
99
+ }
100
+ return attributes;
101
+ }
102
+ static recalcToolTipCoordinateByViewPort(blockBounding, tooltipBounding, preCoordinate, winWidth, winHeight) {
103
+ const res = TooltipService.getTooltipByWindow(
104
+ tooltipBounding,
105
+ preCoordinate,
106
+ {
107
+ width: winWidth,
108
+ height: winHeight
109
+ },
110
+ blockBounding
111
+ );
112
+ return {
113
+ left: res.left + "px",
114
+ top: res.top + "px",
115
+ right: null,
116
+ bottom: null
117
+ };
118
+ }
96
119
  }
97
120
  TooltipHelper.convexsize = 5;
@@ -1,49 +1,69 @@
1
1
  import { Block } from "../../../engine/block/block";
2
- import { OptionsModelData, Orient, TwoDimChartValueLabelsOptions, TwoDimensionalChartModel, TwoDimensionalValueLabels, ValueLabelAnchor, ValueLabelDominantBaseline, ValueLabelsStyleModel } from "../../../model/model";
2
+ import {
3
+ OptionsModelData,
4
+ Orient,
5
+ TwoDimChartValueLabelsOptions,
6
+ TwoDimensionalChartModel,
7
+ TwoDimensionalValueLabels,
8
+ ValueLabelAnchor,
9
+ ValueLabelDominantBaseline,
10
+ ValueLabelsStyleModel
11
+ } from "../../../model/model";
3
12
  import { MdtChartsDataRow, MdtChartsDataSource } from "../../../config/config";
4
13
  import { Scales, ScalesWithSecondary } from "../../../engine/features/scale/scale";
5
14
  export interface ValueLabelsOptions {
6
- elementAccessors: {
7
- getBlock: () => Block;
8
- };
9
- data: {
10
- keyFieldName: string;
11
- };
12
- canvas: {
13
- keyAxisOrient: Orient;
14
- valueLabels: TwoDimensionalValueLabels;
15
- style: ValueLabelsStyleModel;
16
- };
15
+ elementAccessors: {
16
+ getBlock: () => Block;
17
+ };
18
+ data: {
19
+ keyFieldName: string;
20
+ };
21
+ canvas: {
22
+ keyAxisOrient: Orient;
23
+ valueLabels: TwoDimensionalValueLabels;
24
+ style: ValueLabelsStyleModel;
25
+ };
17
26
  }
18
27
  export interface ValueLabelAttrs {
19
- x: (data: MdtChartsDataRow) => number;
20
- y: (data: MdtChartsDataRow) => number;
21
- textAnchor: ValueLabelAnchor;
22
- dominantBaseline: ValueLabelDominantBaseline;
28
+ x: (data: MdtChartsDataRow) => number;
29
+ y: (data: MdtChartsDataRow) => number;
30
+ textAnchor: ValueLabelAnchor;
31
+ dominantBaseline: ValueLabelDominantBaseline;
23
32
  }
24
33
  export declare class ChartValueLabels {
25
- private readonly globalOptions;
26
- private readonly chart;
27
- static readonly valueLabelClass: string;
28
- private readonly renderPipeline;
29
- private readonly attrsProvider;
30
- private options;
31
- constructor(globalOptions: ValueLabelsOptions, chart: TwoDimensionalChartModel);
32
- render(scales: Scales, data: MdtChartsDataRow[]): void;
33
- update(scales: Scales, newData: MdtChartsDataRow[], updatedOptions: TwoDimChartValueLabelsOptions): Promise<void[]>;
34
- private renderByGroupIndex;
35
- private updateByGroupIndex;
36
- private getAllValueLabelsOfChart;
37
- private setAttrs;
38
- private setClasses;
34
+ private readonly globalOptions;
35
+ private readonly chart;
36
+ static readonly valueLabelClass: string;
37
+ private readonly renderPipeline;
38
+ private readonly attrsProvider;
39
+ private options;
40
+ constructor(globalOptions: ValueLabelsOptions, chart: TwoDimensionalChartModel);
41
+ render(scales: Scales, data: MdtChartsDataRow[]): void;
42
+ update(scales: Scales, newData: MdtChartsDataRow[], updatedOptions: TwoDimChartValueLabelsOptions): Promise<void[]>;
43
+ private renderByGroupIndex;
44
+ private updateByGroupIndex;
45
+ private getAllValueLabelsOfChart;
46
+ private setAttrs;
47
+ private setClasses;
39
48
  }
40
49
  export declare class CanvasValueLabels {
41
- private readonly options;
42
- private chartsValueLabels;
43
- constructor(options: ValueLabelsOptions);
44
- render(scales: ScalesWithSecondary, charts: TwoDimensionalChartModel[], data: MdtChartsDataSource, dataOptions: OptionsModelData): void;
45
- update(scales: ScalesWithSecondary, charts: TwoDimensionalChartModel[], data: MdtChartsDataSource, dataOptions: OptionsModelData, newCanvasOptions: TwoDimensionalValueLabels): void;
46
- private toggleOldValueLabelsVisibility;
47
- private getAllValueLabels;
48
- private getChartScales;
50
+ private readonly options;
51
+ private chartsValueLabels;
52
+ constructor(options: ValueLabelsOptions);
53
+ render(
54
+ scales: ScalesWithSecondary,
55
+ charts: TwoDimensionalChartModel[],
56
+ data: MdtChartsDataSource,
57
+ dataOptions: OptionsModelData
58
+ ): void;
59
+ update(
60
+ scales: ScalesWithSecondary,
61
+ charts: TwoDimensionalChartModel[],
62
+ data: MdtChartsDataSource,
63
+ dataOptions: OptionsModelData,
64
+ newCanvasOptions: TwoDimensionalValueLabels
65
+ ): void;
66
+ private toggleOldValueLabelsVisibility;
67
+ private getAllValueLabels;
68
+ private getChartScales;
49
69
  }