@amcharts/amcharts5 5.0.9 → 5.0.13

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 (212) hide show
  1. package/.internal/charts/hierarchy/ForceDirected.d.ts +1 -0
  2. package/.internal/charts/hierarchy/ForceDirected.d.ts.map +1 -1
  3. package/.internal/charts/hierarchy/ForceDirected.js +21 -6
  4. package/.internal/charts/hierarchy/ForceDirected.js.map +1 -1
  5. package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
  6. package/.internal/charts/hierarchy/Hierarchy.js +3 -1
  7. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  8. package/.internal/charts/map/MapChart.d.ts +2 -1
  9. package/.internal/charts/map/MapChart.d.ts.map +1 -1
  10. package/.internal/charts/map/MapChart.js +46 -64
  11. package/.internal/charts/map/MapChart.js.map +1 -1
  12. package/.internal/charts/map/MapPointSeries.d.ts +2 -0
  13. package/.internal/charts/map/MapPointSeries.d.ts.map +1 -1
  14. package/.internal/charts/map/MapPointSeries.js +1 -1
  15. package/.internal/charts/map/MapPointSeries.js.map +1 -1
  16. package/.internal/charts/percent/PercentSeries.d.ts.map +1 -1
  17. package/.internal/charts/percent/PercentSeries.js +2 -1
  18. package/.internal/charts/percent/PercentSeries.js.map +1 -1
  19. package/.internal/charts/venn/Venn.d.ts.map +1 -1
  20. package/.internal/charts/venn/Venn.js +2 -1
  21. package/.internal/charts/venn/Venn.js.map +1 -1
  22. package/.internal/charts/xy/XYChart.d.ts.map +1 -1
  23. package/.internal/charts/xy/XYChart.js +4 -3
  24. package/.internal/charts/xy/XYChart.js.map +1 -1
  25. package/.internal/charts/xy/XYChartDefaultTheme.d.ts.map +1 -1
  26. package/.internal/charts/xy/XYChartDefaultTheme.js +25 -4
  27. package/.internal/charts/xy/XYChartDefaultTheme.js.map +1 -1
  28. package/.internal/charts/xy/axes/Axis.d.ts +2 -2
  29. package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
  30. package/.internal/charts/xy/axes/Axis.js +22 -17
  31. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  32. package/.internal/charts/xy/axes/AxisRenderer.d.ts +4 -4
  33. package/.internal/charts/xy/axes/AxisRenderer.d.ts.map +1 -1
  34. package/.internal/charts/xy/axes/AxisRenderer.js +13 -12
  35. package/.internal/charts/xy/axes/AxisRenderer.js.map +1 -1
  36. package/.internal/charts/xy/axes/AxisRendererX.d.ts.map +1 -1
  37. package/.internal/charts/xy/axes/AxisRendererX.js +9 -6
  38. package/.internal/charts/xy/axes/AxisRendererX.js.map +1 -1
  39. package/.internal/charts/xy/axes/AxisRendererY.d.ts.map +1 -1
  40. package/.internal/charts/xy/axes/AxisRendererY.js +9 -6
  41. package/.internal/charts/xy/axes/AxisRendererY.js.map +1 -1
  42. package/.internal/charts/xy/axes/CategoryAxis.d.ts.map +1 -1
  43. package/.internal/charts/xy/axes/CategoryAxis.js +2 -1
  44. package/.internal/charts/xy/axes/CategoryAxis.js.map +1 -1
  45. package/.internal/charts/xy/axes/CategoryDateAxis.js +1 -1
  46. package/.internal/charts/xy/axes/CategoryDateAxis.js.map +1 -1
  47. package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
  48. package/.internal/charts/xy/axes/DateAxis.js +2 -2
  49. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  50. package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
  51. package/.internal/charts/xy/axes/ValueAxis.js +39 -34
  52. package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
  53. package/.internal/charts/xy/series/LineSeries.js +1 -1
  54. package/.internal/charts/xy/series/LineSeries.js.map +1 -1
  55. package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
  56. package/.internal/charts/xy/series/XYSeries.js +5 -9
  57. package/.internal/charts/xy/series/XYSeries.js.map +1 -1
  58. package/.internal/core/Root.d.ts +6 -0
  59. package/.internal/core/Root.d.ts.map +1 -1
  60. package/.internal/core/Root.js +23 -2
  61. package/.internal/core/Root.js.map +1 -1
  62. package/.internal/core/render/Container.d.ts.map +1 -1
  63. package/.internal/core/render/Container.js +2 -1
  64. package/.internal/core/render/Container.js.map +1 -1
  65. package/.internal/core/render/Label.d.ts +1 -1
  66. package/.internal/core/render/Label.d.ts.map +1 -1
  67. package/.internal/core/render/Label.js +1 -0
  68. package/.internal/core/render/Label.js.map +1 -1
  69. package/.internal/core/render/Legend.d.ts +8 -3
  70. package/.internal/core/render/Legend.d.ts.map +1 -1
  71. package/.internal/core/render/Legend.js +60 -49
  72. package/.internal/core/render/Legend.js.map +1 -1
  73. package/.internal/core/render/Series.d.ts.map +1 -1
  74. package/.internal/core/render/Series.js +12 -12
  75. package/.internal/core/render/Series.js.map +1 -1
  76. package/.internal/core/render/Sprite.d.ts +11 -9
  77. package/.internal/core/render/Sprite.d.ts.map +1 -1
  78. package/.internal/core/render/Sprite.js +44 -26
  79. package/.internal/core/render/Sprite.js.map +1 -1
  80. package/.internal/core/render/Text.d.ts +1 -1
  81. package/.internal/core/render/Text.d.ts.map +1 -1
  82. package/.internal/core/render/Text.js.map +1 -1
  83. package/.internal/core/render/Tooltip.d.ts +2 -0
  84. package/.internal/core/render/Tooltip.d.ts.map +1 -1
  85. package/.internal/core/render/Tooltip.js +9 -0
  86. package/.internal/core/render/Tooltip.js.map +1 -1
  87. package/.internal/core/render/backend/CanvasRenderer.d.ts.map +1 -1
  88. package/.internal/core/render/backend/CanvasRenderer.js +6 -1
  89. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  90. package/.internal/core/util/Time.js +1 -1
  91. package/.internal/core/util/Time.js.map +1 -1
  92. package/.internal/themes/DefaultTheme.d.ts.map +1 -1
  93. package/.internal/themes/DefaultTheme.js +2 -3
  94. package/.internal/themes/DefaultTheme.js.map +1 -1
  95. package/CHANGELOG.md +51 -0
  96. package/examples/javascript/flow-chord/package.json +1 -1
  97. package/examples/javascript/flow-chord-directed/package.json +1 -1
  98. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  99. package/examples/javascript/flow-sankey/package.json +1 -1
  100. package/examples/javascript/gauge/package.json +1 -1
  101. package/examples/javascript/gauge-bands/package.json +1 -1
  102. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  103. package/examples/javascript/hierarchy-pack/package.json +1 -1
  104. package/examples/javascript/hierarchy-partition/package.json +1 -1
  105. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  106. package/examples/javascript/hierarchy-tree/package.json +1 -1
  107. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  108. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  109. package/examples/javascript/map-day-and-night/package.json +1 -1
  110. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  111. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  112. package/examples/javascript/map-with-bubbles/package.json +1 -1
  113. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  114. package/examples/javascript/misc-40-charts/package.json +1 -1
  115. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  116. package/examples/javascript/pie-chart/package.json +1 -1
  117. package/examples/javascript/pie-donut-chart/package.json +1 -1
  118. package/examples/javascript/pie-variable-radius/package.json +1 -1
  119. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  120. package/examples/javascript/radar-heat-map/package.json +1 -1
  121. package/examples/javascript/radar-line/package.json +1 -1
  122. package/examples/javascript/radar-time-line/package.json +1 -1
  123. package/examples/javascript/sliced-funnel/package.json +1 -1
  124. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  125. package/examples/javascript/sliced-pyramid/package.json +1 -1
  126. package/examples/javascript/venn-diagram/package.json +1 -1
  127. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  128. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  129. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  130. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  131. package/examples/javascript/xy-bubble/package.json +1 -1
  132. package/examples/javascript/xy-candlestick/package.json +1 -1
  133. package/examples/javascript/xy-clustered-column/package.json +1 -1
  134. package/examples/javascript/xy-column/package.json +1 -1
  135. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  136. package/examples/javascript/xy-data-grouping/package.json +1 -1
  137. package/examples/javascript/xy-draggable-range/index.js +2 -1
  138. package/examples/javascript/xy-draggable-range/package.json +1 -1
  139. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  140. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  141. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  142. package/examples/javascript/xy-line/package.json +1 -1
  143. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  144. package/examples/javascript/xy-live-data/package.json +1 -1
  145. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  146. package/examples/javascript/xy-ohlc/package.json +1 -1
  147. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  148. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  149. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  150. package/examples/javascript/xy-stacked-column/package.json +1 -1
  151. package/examples/javascript/xy-stacked-step/package.json +1 -1
  152. package/examples/javascript/xy-stock/package.json +1 -1
  153. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  154. package/examples/typescript/flow-chord/package.json +1 -1
  155. package/examples/typescript/flow-chord-directed/package.json +1 -1
  156. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  157. package/examples/typescript/flow-sankey/package.json +1 -1
  158. package/examples/typescript/gauge/package.json +1 -1
  159. package/examples/typescript/gauge-bands/package.json +1 -1
  160. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  161. package/examples/typescript/hierarchy-pack/package.json +1 -1
  162. package/examples/typescript/hierarchy-partition/package.json +1 -1
  163. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  164. package/examples/typescript/hierarchy-tree/package.json +1 -1
  165. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  166. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  167. package/examples/typescript/map-day-and-night/package.json +1 -1
  168. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  169. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  170. package/examples/typescript/map-with-bubbles/package.json +1 -1
  171. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  172. package/examples/typescript/misc-40-charts/package.json +1 -1
  173. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  174. package/examples/typescript/pie-chart/package.json +1 -1
  175. package/examples/typescript/pie-donut-chart/package.json +1 -1
  176. package/examples/typescript/pie-variable-radius/package.json +1 -1
  177. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  178. package/examples/typescript/radar-heat-map/package.json +1 -1
  179. package/examples/typescript/radar-line/package.json +1 -1
  180. package/examples/typescript/radar-time-line/package.json +1 -1
  181. package/examples/typescript/sliced-funnel/package.json +1 -1
  182. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  183. package/examples/typescript/sliced-pyramid/package.json +1 -1
  184. package/examples/typescript/venn-diagram/package.json +1 -1
  185. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  186. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  187. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  188. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  189. package/examples/typescript/xy-bubble/package.json +1 -1
  190. package/examples/typescript/xy-candlestick/package.json +1 -1
  191. package/examples/typescript/xy-clustered-column/package.json +1 -1
  192. package/examples/typescript/xy-column/package.json +1 -1
  193. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  194. package/examples/typescript/xy-data-grouping/package.json +1 -1
  195. package/examples/typescript/xy-draggable-range/index.ts +2 -1
  196. package/examples/typescript/xy-draggable-range/package.json +1 -1
  197. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  198. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  199. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  200. package/examples/typescript/xy-line/package.json +1 -1
  201. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  202. package/examples/typescript/xy-live-data/package.json +1 -1
  203. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  204. package/examples/typescript/xy-ohlc/package.json +1 -1
  205. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  206. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  207. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  208. package/examples/typescript/xy-stacked-column/package.json +1 -1
  209. package/examples/typescript/xy-stacked-step/package.json +1 -1
  210. package/examples/typescript/xy-stock/package.json +1 -1
  211. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  212. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Label.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Label.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Color } from \"../util/Color\";\nimport type { Percent } from \"../util/Percent\";\nimport type { DataItem, IComponentDataItem } from \"./Component\";\n\nimport { Text } from \"../render/Text\";\nimport { p50, p100 } from \"../util/Percent\";\nimport { Container, IContainerPrivate, IContainerSettings } from \"./Container\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\n\n\nexport interface ILabelSettings extends IContainerSettings {\n\n\t/**\n\t * Labels' text.\n\t */\n\ttext?: string;\n\n\t/**\n\t * Text color.\n\t */\n\tfill?: Color;\n\n\t/**\n\t * Alignment.\n\t */\n\ttextAlign?: \"start\" | \"end\" | \"left\" | \"right\" | \"center\";\n\n\t/**\n\t * Font family to use for the label.\n\t *\n\t * Multiple fonts can be separated by commas.\n\t */\n\tfontFamily?: string;\n\n\t/**\n\t * Font size in misc any supported CSS format (pixel, point, em, etc.).\n\t */\n\tfontSize?: string | number;\n\n\t/**\n\t * Font weight.\n\t */\n\tfontWeight?: \"normal\" | \"bold\" | \"bolder\" | \"lighter\" | \"100\" | \"200\" | \"300\" | \"400\" | \"500\" | \"600\" | \"700\" | \"800\" | \"900\";\n\n\t/**\n\t * Font style.\n\t */\n\tfontStyle?: \"normal\" | \"italic\" | \"oblique\";\n\n\n\t/**\n\t * Font variant.\n\t */\n\tfontVariant?: \"normal\" | \"small-caps\";\n\n\t/**\n\t * Line height in percent or absolute pixels.\n\t */\n\tlineHeight?: Percent | number;\n\n\t/**\n\t * How mouch of the height should be considered to go below baseline.\n\t *\n\t * @default 0.19\n\t */\n\tbaselineRatio?: number;\n\n\t/**\n\t * Opacity of the label.\n\t *\n\t * 0 - fully transparent; 1 - fully opaque.\n\t */\n\topacity?: number;\n\n\t/**\n\t * Text direction.\n\t *\n\t * @default \"ltr\"\n\t */\n\tdirection?: \"ltr\" | \"rtl\";\n\n\t/**\n\t * A base line to use when aligning text chunks vertically.\n\t */\n\ttextBaseline?: \"top\" | \"hanging\" | \"middle\" | \"alphabetic\" | \"ideographic\" | \"bottom\";\n\n\t/**\n\t * How to handle labels that do not fit into its designated space.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/#Oversized_text} for more info\n\t */\n\toversizedBehavior?: \"none\" | \"hide\" | \"fit\" | \"wrap\" | \"truncate\";\n\n\t/**\n\t * Whether words can be broken when truncating or wrapping text.\n\t *\n\t * @default false\n\t */\n\tbreakWords?: boolean;\n\n\t/**\n\t * Ellipsis characters to use when truncating text.\n\t *\n\t * Will use Unicode ellipsis symbol (`\"…\"`) by default, which might not be\n\t * available in all fonts. If ellipsis looks broken, use different\n\t * characters. E.g.:\n\t *\n\t * ```TypeScript\n\t * label.set(\"ellipsis\", \"...\");\n\t * ```\n\t * ```JavaScript\n\t * label.set(\"ellipsis\", \"...\");\n\t * ```\n\t *\n\t *\n\t * @default \"…\"\n\t */\n\tellipsis?: string;\n\n\t/**\n\t * Minimum relative scale allowed for label when scaling down\n\t * when `oversizedBehavior` is set to `\"fit\"`.\n\t *\n\t * If fitting the label would require it to scale beyond `minScale` it would\n\t * be hidden instead.\n\t */\n\tminScale?: number;\n\n\t/**\n\t * If set to `true` the label will parse `text` for data placeholders and\n\t * will try to populate them with actual data.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/#Data_placeholders} for more info\n\t */\n\tpopulateText?: boolean;\n\n\t/**\n\t * If set to `true`, will ignore in-line formatting blocks and will display\n\t * text exactly as it is.\n\t *\n\t * @default false\n\t */\n\tignoreFormatting?: boolean;\n\n\t/**\n\t * Color of the element's shadow.\n\t *\n\t * For this to work at least one of the following needs to be set as well:\n\t * `shadowBlur`, `shadowOffsetX`, `shadowOffsetY`.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowColor?: Color | null;\n\n\t/**\n\t * Blurriness of the the shadow.\n\t *\n\t * The bigger the number, the more blurry shadow will be.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowBlur?: number;\n\n\t/**\n\t * Horizontal shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetX?: number;\n\n\t/**\n\t * Vertical shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetY?: number;\n\n\t/**\n\t * Opacity of the shadow (0-1).\n\t *\n\t * If not set, will use the same as `fillOpacity` of the element.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOpacity?: number;\n\n\t// The following migh be supported some day:\n\t// padding?: number;\n\t// stroke?: number;\n\t// strokeThickness?: number;\n\t// trim?: number;\n\t// wordWrap?: boolean;\n\t// leading?: number;\n\t// letterSpacing?: number;\n}\n\nexport interface ILabelPrivate extends IContainerPrivate {\n}\n\n/**\n * Creates a label with support for in-line styling and data bindings.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/} for more info\n */\nexport class Label extends Container {\n\n\tdeclare public _settings: ILabelSettings;\n\tdeclare public _privateSettings: ILabelPrivate;\n\n\tprotected _text!: Text;\n\n\tprotected _textKeys: Array<string> = [\n\t\t\"text\",\n\t\t\"fill\",\n\t\t\"textAlign\",\n\t\t\"fontFamily\",\n\t\t\"fontSize\",\n\t\t\"fontStyle\",\n\t\t\"fontWeight\",\n\t\t\"fontStyle\",\n\t\t\"fontVariant\",\n\t\t\"shadowColor\",\n\t\t\"shadowBlur\",\n\t\t\"shadowOffsetX\",\n\t\t\"shadowOffsetY\",\n\t\t\"shadowOpacity\",\n\t\t// \"leading\",\n\t\t// \"letterSpacing\",\n\t\t\"lineHeight\",\n\t\t\"baselineRatio\",\n\t\t//\"padding\",\n\t\t// \"stroke\",\n\t\t// \"strokeThickness\",\n\t\t// \"trim\",\n\t\t// \"wordWrap\",\n\t\t\"direction\",\n\t\t\"textBaseline\",\n\t\t\"oversizedBehavior\",\n\t\t\"breakWords\",\n\t\t\"ellipsis\",\n\t\t\"minScale\",\n\t\t\"populateText\",\n\t\t\"role\",\n\t\t\"ignoreFormatting\"\n\t];\n\n\tpublic static className: string = \"Label\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([Label.className]);\n\n\t/**\n\t * @ignore Text is not to be used directly\n\t */\n\tpublic get text(): Text {\n\t\treturn this._text;\n\t}\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\n\t\tthis._makeText();\n\n\t\t$array.each(this._textKeys, (property) => {\n\t\t\tconst propValue = this.get(property as any);\n\t\t\tif (propValue != undefined) {\n\t\t\t\tthis._text.set(property as any, propValue);\n\t\t\t}\n\t\t})\n\t}\n\n\tpublic _makeText() {\n\t\tthis._text = this.children.push(Text.new(this._root, {}));\n\t}\n\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\n\t\t$array.each(this._textKeys, (property) => {\n\t\t\tthis._text.set(property as any, this.get(property as any));\n\t\t})\n\n\t\tif (this.isDirty(\"maxWidth\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\tif (this.isDirty(\"maxHeight\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\tif (this.isDirty(\"rotation\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\tif (this.isDirty(\"textAlign\") || this.isDirty(\"width\")) {\n\t\t\tconst textAlign = this.get(\"textAlign\");\n\t\t\tlet x: number | Percent | undefined;\n\t\t\tif (this.get(\"width\") != null) {\n\t\t\t\tif (textAlign == \"right\") {\n\t\t\t\t\tx = p100;\n\t\t\t\t}\n\t\t\t\telse if (textAlign == \"center\") {\n\t\t\t\t\tx = p50;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tx = 0;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (textAlign == \"left\" || textAlign == \"start\") {\n\t\t\t\t\tx = this.get(\"paddingLeft\");\n\t\t\t\t}\n\t\t\t\telse if (textAlign == \"right\" || textAlign == \"end\") {\n\t\t\t\t\tx = -this.get(\"paddingRight\");\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.text.set(\"x\", x);\n\t\t}\n\t}\n\n\tprotected _setMaxDimentions() {\n\t\tconst rotation = this.get(\"rotation\");\n\t\tconst vertical = rotation == 90 || rotation == 270;\n\n\t\tconst maxWidth = this.get(\"maxWidth\", Infinity);\n\t\tif ($type.isNumber(maxWidth)) {\n\t\t\tthis.text.set(vertical ? \"maxHeight\" : \"maxWidth\", maxWidth - this.get(\"paddingLeft\", 0) - this.get(\"paddingRight\", 0));\n\t\t}\n\t\telse {\n\t\t\tthis.text.set(vertical ? \"maxHeight\" : \"maxWidth\", undefined);\n\t\t}\n\n\t\tconst maxHeight = this.get(\"maxHeight\", Infinity);\n\t\tif ($type.isNumber(maxHeight)) {\n\t\t\tthis.text.set(vertical ? \"maxWidth\" : \"maxHeight\", maxHeight - this.get(\"paddingTop\", 0) - this.get(\"paddingBottom\", 0));\n\t\t}\n\t\telse {\n\t\t\tthis.text.set(vertical ? \"maxWidth\" : \"maxHeight\", undefined);\n\t\t}\n\t}\n\n\tpublic _setDataItem(dataItem: DataItem<IComponentDataItem>): void {\n\t\tsuper._setDataItem(dataItem);\n\t\tif (this.text.get(\"populateText\")) {\n\t\t\tthis.text.markDirtyText();\n\t\t}\n\t}\n\n\t/**\n\t * Returns text with populated placeholders and formatting if `populateText` is\n\t * set to `true`.\n\t *\n\t * @return Populated text\n\t */\n\tpublic getText(): string {\n\t\treturn this._text._getText();\n\t}\n}\n"]}
1
+ {"version":3,"file":"Label.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Label.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Color } from \"../util/Color\";\nimport type { Percent } from \"../util/Percent\";\nimport type { DataItem, IComponentDataItem } from \"./Component\";\n\nimport { Text } from \"../render/Text\";\nimport { p50, p100 } from \"../util/Percent\";\nimport { Container, IContainerPrivate, IContainerSettings } from \"./Container\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\n\n\nexport interface ILabelSettings extends IContainerSettings {\n\n\t/**\n\t * Labels' text.\n\t */\n\ttext?: string;\n\n\t/**\n\t * Text color.\n\t */\n\tfill?: Color;\n\n\t/**\n\t * Alignment.\n\t */\n\ttextAlign?: \"start\" | \"end\" | \"left\" | \"right\" | \"center\";\n\n\t/**\n\t * Font family to use for the label.\n\t *\n\t * Multiple fonts can be separated by commas.\n\t */\n\tfontFamily?: string;\n\n\t/**\n\t * Font size in misc any supported CSS format (pixel, point, em, etc.).\n\t */\n\tfontSize?: string | number;\n\n\t/**\n\t * Font weight.\n\t */\n\tfontWeight?: \"normal\" | \"bold\" | \"bolder\" | \"lighter\" | \"100\" | \"200\" | \"300\" | \"400\" | \"500\" | \"600\" | \"700\" | \"800\" | \"900\";\n\n\t/**\n\t * Font style.\n\t */\n\tfontStyle?: \"normal\" | \"italic\" | \"oblique\";\n\n\n\t/**\n\t * Font variant.\n\t */\n\tfontVariant?: \"normal\" | \"small-caps\";\n\n\t/**\n\t * Line height in percent or absolute pixels.\n\t */\n\tlineHeight?: Percent | number;\n\n\t/**\n\t * How mouch of the height should be considered to go below baseline.\n\t *\n\t * @default 0.19\n\t */\n\tbaselineRatio?: number;\n\n\t/**\n\t * Opacity of the label.\n\t *\n\t * 0 - fully transparent; 1 - fully opaque.\n\t */\n\topacity?: number;\n\n\t/**\n\t * Text direction.\n\t *\n\t * @default \"ltr\"\n\t */\n\tdirection?: \"ltr\" | \"rtl\";\n\n\t/**\n\t * A base line to use when aligning text chunks vertically.\n\t */\n\ttextBaseline?: \"top\" | \"hanging\" | \"middle\" | \"alphabetic\" | \"ideographic\" | \"bottom\";\n\n\t/**\n\t * How to handle labels that do not fit into its designated space.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/#Oversized_text} for more info\n\t */\n\toversizedBehavior?: \"none\" | \"hide\" | \"fit\" | \"wrap\" | \"truncate\";\n\n\t/**\n\t * Whether words can be broken when truncating or wrapping text.\n\t *\n\t * @default false\n\t */\n\tbreakWords?: boolean;\n\n\t/**\n\t * Ellipsis characters to use when truncating text.\n\t *\n\t * Will use Unicode ellipsis symbol (`\"…\"`) by default, which might not be\n\t * available in all fonts. If ellipsis looks broken, use different\n\t * characters. E.g.:\n\t *\n\t * ```TypeScript\n\t * label.set(\"ellipsis\", \"...\");\n\t * ```\n\t * ```JavaScript\n\t * label.set(\"ellipsis\", \"...\");\n\t * ```\n\t *\n\t *\n\t * @default \"…\"\n\t */\n\tellipsis?: string;\n\n\t/**\n\t * Minimum relative scale allowed for label when scaling down\n\t * when `oversizedBehavior` is set to `\"fit\"`.\n\t *\n\t * If fitting the label would require it to scale beyond `minScale` it would\n\t * be hidden instead.\n\t */\n\tminScale?: number;\n\n\t/**\n\t * If set to `true` the label will parse `text` for data placeholders and\n\t * will try to populate them with actual data.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/#Data_placeholders} for more info\n\t */\n\tpopulateText?: boolean;\n\n\t/**\n\t * If set to `true`, will ignore in-line formatting blocks and will display\n\t * text exactly as it is.\n\t *\n\t * @default false\n\t */\n\tignoreFormatting?: boolean;\n\n\t/**\n\t * Color of the element's shadow.\n\t *\n\t * For this to work at least one of the following needs to be set as well:\n\t * `shadowBlur`, `shadowOffsetX`, `shadowOffsetY`.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowColor?: Color | null;\n\n\t/**\n\t * Blurriness of the the shadow.\n\t *\n\t * The bigger the number, the more blurry shadow will be.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowBlur?: number;\n\n\t/**\n\t * Horizontal shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetX?: number;\n\n\t/**\n\t * Vertical shadow offset in pixels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOffsetY?: number;\n\n\t/**\n\t * Opacity of the shadow (0-1).\n\t *\n\t * If not set, will use the same as `fillOpacity` of the element.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/shadows/} for more info\n\t */\n\tshadowOpacity?: number;\n\n\t// The following migh be supported some day:\n\t// padding?: number;\n\t// stroke?: number;\n\t// strokeThickness?: number;\n\t// trim?: number;\n\t// wordWrap?: boolean;\n\t// leading?: number;\n\t// letterSpacing?: number;\n}\n\nexport interface ILabelPrivate extends IContainerPrivate {\n}\n\n/**\n * Creates a label with support for in-line styling and data bindings.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/labels/} for more info\n */\nexport class Label extends Container {\n\n\tdeclare public _settings: ILabelSettings;\n\tdeclare public _privateSettings: ILabelPrivate;\n\n\tprotected _text!: Text;\n\n\tprotected _textKeys: Array<string> = [\n\t\t\"text\",\n\t\t\"fill\",\n\t\t\"textAlign\",\n\t\t\"fontFamily\",\n\t\t\"fontSize\",\n\t\t\"fontStyle\",\n\t\t\"fontWeight\",\n\t\t\"fontStyle\",\n\t\t\"fontVariant\",\n\t\t\"shadowColor\",\n\t\t\"shadowBlur\",\n\t\t\"shadowOffsetX\",\n\t\t\"shadowOffsetY\",\n\t\t\"shadowOpacity\",\n\t\t// \"leading\",\n\t\t// \"letterSpacing\",\n\t\t\"lineHeight\",\n\t\t\"baselineRatio\",\n\t\t//\"padding\",\n\t\t// \"stroke\",\n\t\t// \"strokeThickness\",\n\t\t// \"trim\",\n\t\t// \"wordWrap\",\n\t\t\"direction\",\n\t\t\"textBaseline\",\n\t\t\"oversizedBehavior\",\n\t\t\"breakWords\",\n\t\t\"ellipsis\",\n\t\t\"minScale\",\n\t\t\"populateText\",\n\t\t\"role\",\n\t\t\"ignoreFormatting\"\n\t];\n\n\tpublic static className: string = \"Label\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([Label.className]);\n\n\t/**\n\t * @ignore Text is not to be used directly\n\t */\n\tpublic get text(): Text {\n\t\treturn this._text;\n\t}\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\n\t\tthis._makeText();\n\n\t\t$array.each(this._textKeys, (property) => {\n\t\t\tconst propValue = this.get(property as any);\n\t\t\tif (propValue != undefined) {\n\t\t\t\tthis._text.set(property as any, propValue);\n\t\t\t}\n\t\t})\n\t}\n\n\tpublic _makeText() {\n\t\tthis._text = this.children.push(Text.new(this._root, {}));\n\t}\n\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\n\t\t$array.each(this._textKeys, (property) => {\n\t\t\tthis._text.set(property as any, this.get(property as any));\n\t\t})\n\n\t\tif (this.isDirty(\"maxWidth\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\tif (this.isDirty(\"maxHeight\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\tif (this.isDirty(\"rotation\")) {\n\t\t\tthis._setMaxDimentions();\n\t\t}\n\n\t\tif (this.isDirty(\"textAlign\") || this.isDirty(\"width\")) {\n\t\t\tconst textAlign = this.get(\"textAlign\");\n\t\t\tlet x: number | Percent | undefined;\n\t\t\tif (this.get(\"width\") != null) {\n\t\t\t\tif (textAlign == \"right\") {\n\t\t\t\t\tx = p100;\n\t\t\t\t}\n\t\t\t\telse if (textAlign == \"center\") {\n\t\t\t\t\tx = p50;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tx = 0;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tif (textAlign == \"left\" || textAlign == \"start\") {\n\t\t\t\t\tx = this.get(\"paddingLeft\");\n\t\t\t\t}\n\t\t\t\telse if (textAlign == \"right\" || textAlign == \"end\") {\n\t\t\t\t\tx = -this.get(\"paddingRight\");\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.text.set(\"x\", x);\n\t\t}\n\t}\n\n\tprotected _setMaxDimentions() {\n\t\tconst rotation = this.get(\"rotation\");\n\t\tconst vertical = rotation == 90 || rotation == 270;\n\n\t\tconst maxWidth = this.get(\"maxWidth\", Infinity);\n\t\tif ($type.isNumber(maxWidth)) {\n\t\t\tthis.text.set(vertical ? \"maxHeight\" : \"maxWidth\", maxWidth - this.get(\"paddingLeft\", 0) - this.get(\"paddingRight\", 0));\n\t\t}\n\t\telse {\n\t\t\tthis.text.set(vertical ? \"maxHeight\" : \"maxWidth\", undefined);\n\t\t}\n\n\t\tconst maxHeight = this.get(\"maxHeight\", Infinity);\n\t\tif ($type.isNumber(maxHeight)) {\n\t\t\tthis.text.set(vertical ? \"maxWidth\" : \"maxHeight\", maxHeight - this.get(\"paddingTop\", 0) - this.get(\"paddingBottom\", 0));\n\t\t}\n\t\telse {\n\t\t\tthis.text.set(vertical ? \"maxWidth\" : \"maxHeight\", undefined);\n\t\t}\n\t}\n\n\tpublic _setDataItem(dataItem?: DataItem<IComponentDataItem>): void {\n\t\tsuper._setDataItem(dataItem);\n\t\tthis._markDirtyKey(\"text\")\n\t\tif (this.text.get(\"populateText\")) {\n\t\t\tthis.text.markDirtyText();\n\t\t}\n\t}\n\n\t/**\n\t * Returns text with populated placeholders and formatting if `populateText` is\n\t * set to `true`.\n\t *\n\t * @return Populated text\n\t */\n\tpublic getText(): string {\n\t\treturn this._text._getText();\n\t}\n}\n"]}
@@ -49,9 +49,9 @@ export interface ILegendItemSettings extends IEntitySettings {
49
49
  */
50
50
  export interface ILegendItem extends Entity {
51
51
  _settings: ILegendItemSettings;
52
- isHidden: () => boolean;
53
- show: () => void;
54
- hide: () => void;
52
+ isHidden?: () => boolean;
53
+ show?: () => void;
54
+ hide?: () => void;
55
55
  createLegendMarker?: () => {};
56
56
  component?: Series;
57
57
  }
@@ -78,6 +78,10 @@ export interface ILegendSettings extends ISeriesSettings {
78
78
  *
79
79
  */
80
80
  strokeField?: string;
81
+ /**
82
+ * @todo review
83
+ */
84
+ clickTarget?: "itemContainer" | "marker" | "none";
81
85
  }
82
86
  export interface ILegendPrivate extends ISeriesPrivate {
83
87
  }
@@ -145,6 +149,7 @@ export declare class Legend extends Series {
145
149
  */
146
150
  readonly markerRectangles: ListTemplate<RoundedRectangle>;
147
151
  protected processDataItem(dataItem: DataItem<this["_dataItemSettings"]>): void;
152
+ protected _addClickEvents(container: Container, item: ILegendItem, dataItem: DataItem<this["_dataItemSettings"]>): void;
148
153
  /**
149
154
  * @ignore
150
155
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Legend.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Legend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Legend.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Legend.ts"],"names":[],"mappings":"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"}
@@ -179,48 +179,10 @@ var Legend = /** @class */ (function (_super) {
179
179
  var fillField = this.get("fillField");
180
180
  var strokeField = this.get("strokeField");
181
181
  if (itemContainer) {
182
- var item_1 = dataItem.dataContext;
183
- if (item_1 && item_1.set) {
184
- item_1.set("legendDataItem", dataItem);
185
- }
186
- if (item_1 && item_1.show) {
187
- this._disposers.push(item_1.on("visible", function (visible) {
188
- itemContainer.set("disabled", !visible);
189
- }));
190
- if (!item_1.get("visible")) {
191
- itemContainer.set("disabled", true);
192
- }
193
- itemContainer.events.on("pointerover", function () {
194
- var component = item_1.component;
195
- if (component && component.hoverDataItem) {
196
- component.hoverDataItem(item_1);
197
- }
198
- });
199
- itemContainer.events.on("pointerout", function () {
200
- var component = item_1.component;
201
- if (component && component.hoverDataItem) {
202
- component.unhoverDataItem(item_1);
203
- }
204
- });
205
- itemContainer.events.on("click", function () {
206
- var toggleDp = itemContainer._toggleDp;
207
- if (toggleDp) {
208
- toggleDp.dispose();
209
- }
210
- if (itemContainer.get("toggleKey") != "none") {
211
- var labelText = dataItem.get("label").text._getText();
212
- if (item_1.isHidden() || item_1.get("visible") === false) {
213
- item_1.show();
214
- itemContainer.set("disabled", false);
215
- _this._root.readerAlert(_this._t("%1 shown", _this._root.locale, labelText));
216
- }
217
- else {
218
- item_1.hide();
219
- itemContainer.set("disabled", true);
220
- _this._root.readerAlert(_this._t("%1 hidden", _this._root.locale, labelText));
221
- }
222
- }
223
- });
182
+ var clickTarget = this.get("clickTarget", "itemContainer");
183
+ var item = dataItem.dataContext;
184
+ if (item && item.set) {
185
+ item.set("legendDataItem", dataItem);
224
186
  }
225
187
  itemContainer._setDataItem(dataItem);
226
188
  dataItem.set("itemContainer", itemContainer);
@@ -234,16 +196,16 @@ var Legend = /** @class */ (function (_super) {
234
196
  var fill = dataItem.get("fill");
235
197
  var stroke = dataItem.get("stroke");
236
198
  dataItem.set("markerRectangle", markerRectangle);
237
- if (item_1 && item_1.get) {
238
- fill = item_1.get(fillField, fill);
239
- stroke = item_1.get(strokeField, stroke);
199
+ if (item && item.get) {
200
+ fill = item.get(fillField, fill);
201
+ stroke = item.get(strokeField, stroke);
240
202
  }
241
203
  if (!stroke) {
242
204
  stroke = fill;
243
205
  }
244
206
  if (!useDefaultMarker) {
245
- if (item_1 && item_1.createLegendMarker) {
246
- item_1.createLegendMarker();
207
+ if (item && item.createLegendMarker) {
208
+ item.createLegendMarker();
247
209
  }
248
210
  }
249
211
  markerRectangle.setAll({ fill: fill, stroke: stroke });
@@ -256,8 +218,8 @@ var Legend = /** @class */ (function (_super) {
256
218
  label_1.text.on("text", function () {
257
219
  itemContainer.set("ariaLabel", label_1.text._getText() + "; " + _this._t("Press ENTER to toggle"));
258
220
  });
259
- if (item_1 && item_1.get) {
260
- dataItem.set("name", item_1.get(nameField));
221
+ if (item && item.get) {
222
+ dataItem.set("name", item.get(nameField));
261
223
  }
262
224
  var name_1 = dataItem.get("name");
263
225
  if (name_1) {
@@ -270,9 +232,58 @@ var Legend = /** @class */ (function (_super) {
270
232
  valueLabel._setDataItem(dataItem);
271
233
  dataItem.set("valueLabel", valueLabel);
272
234
  }
235
+ if (item && item.show) {
236
+ this._disposers.push(item.on("visible", function (visible) {
237
+ itemContainer.set("disabled", !visible);
238
+ }));
239
+ if (!item.get("visible")) {
240
+ itemContainer.set("disabled", true);
241
+ }
242
+ if (clickTarget != "none") {
243
+ var clickContainer = itemContainer;
244
+ if (clickTarget == "marker") {
245
+ clickContainer = marker;
246
+ }
247
+ this._addClickEvents(clickContainer, item, dataItem);
248
+ }
249
+ }
273
250
  }
274
251
  }
275
252
  });
253
+ Object.defineProperty(Legend.prototype, "_addClickEvents", {
254
+ enumerable: false,
255
+ configurable: true,
256
+ writable: true,
257
+ value: function (container, item, dataItem) {
258
+ var _this = this;
259
+ container.set("cursorOverStyle", "pointer");
260
+ container.events.on("pointerover", function () {
261
+ var component = item.component;
262
+ if (component && component.hoverDataItem) {
263
+ component.hoverDataItem(item);
264
+ }
265
+ });
266
+ container.events.on("pointerout", function () {
267
+ var component = item.component;
268
+ if (component && component.hoverDataItem) {
269
+ component.unhoverDataItem(item);
270
+ }
271
+ });
272
+ container.events.on("click", function () {
273
+ var labelText = dataItem.get("label").text._getText();
274
+ if (item.show && item.isHidden && (item.isHidden() || item.get("visible") === false)) {
275
+ item.show();
276
+ container.set("disabled", false);
277
+ _this._root.readerAlert(_this._t("%1 shown", _this._root.locale, labelText));
278
+ }
279
+ else if (item.hide) {
280
+ item.hide();
281
+ container.set("disabled", true);
282
+ _this._root.readerAlert(_this._t("%1 hidden", _this._root.locale, labelText));
283
+ }
284
+ });
285
+ }
286
+ });
276
287
  /**
277
288
  * @ignore
278
289
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Legend.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Legend.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate } from \"./Series\";\nimport { Container } from \"../../core/render/Container\";\nimport { Label } from \"../../core/render/Label\";\nimport { RoundedRectangle } from \"../../core/render/RoundedRectangle\";\nimport { Rectangle } from \"../../core/render/Rectangle\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport type { Entity, IEntitySettings } from \"../../core/util/Entity\";\nimport type { Color } from \"../../core/util/Color\";\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface ILegendDataItem extends ISeriesDataItem {\n\n\t/**\n\t * [[Container]] element holding all other legend item elements, labels,\n\t * markers, etc.\n\t */\n\titemContainer: Container;\n\n\t/**\n\t * Marker element.\n\t */\n\tmarker: Container;\n\n\t/**\n\t * Marker rectangle element.\n\t */\n\tmarkerRectangle: RoundedRectangle;\n\n\t/**\n\t * Label element.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * Value label element.\n\t */\n\tvalueLabel: Label;\n\n\t/**\n\t * Marker fill color.\n\t */\n\tfill?: Color;\n\n\t/**\n\t * Marker stroke (outline) color.\n\t */\n\tstroke?: Color;\n\n\t/**\n\t * Name of the legend item.\n\t */\n\tname?: string;\n\n}\n\nexport interface ILegendItemSettings extends IEntitySettings {\n\tvisible?: boolean;\n}\n\n/**\n * @ignore\n */\nexport interface ILegendItem extends Entity {\n\t_settings: ILegendItemSettings;\n\tisHidden: () => boolean;\n\tshow: () => void;\n\thide: () => void;\n\tcreateLegendMarker?: () => {}\n\tcomponent?: Series;\n\t// how to define that properties of dataItem should have legendDataItem?\n}\n\n//type ILegendDataItemSettings = { [K in keyof ILegendDataItem]?: string; };\n\nexport interface ILegendSettings extends ISeriesSettings {\n\n\t/**\n\t * If set to `true` the legend will not try to mimic appearance of the actual\n\t * item but rather show default square marker.\n\t *\n\t * @default false\n\t */\n\tuseDefaultMarker?: boolean;\n\n\t/**\n\t * A key to look up in data for a name of the data item.\n\t *\n\t */\n\tnameField?: string;\n\n\t/**\n\t * A key to look up in data for a fill of the data item.\n\t *\n\t */\n\tfillField?: string;\n\n\t/**\n\t * A key to look up in data for a stroke of the data item.\n\t *\n\t */\n\tstrokeField?: string;\n\n}\n\nexport interface ILegendPrivate extends ISeriesPrivate {\n}\n\n/**\n * A universal legend control.\n *\n * @important\n * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/} for more info\n */\nexport class Legend extends Series {\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"legend\"]);\n\t\tthis.fields.push(\"name\", \"stroke\", \"fill\");\n\t\tsuper._afterNew();\n\t}\n\n\tpublic static className: string = \"Legend\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([Legend.className]);\n\n\tdeclare public _settings: ILegendSettings;\n\tdeclare public _privateSettings: ILegendPrivate;\n\tdeclare public _dataItemSettings: ILegendDataItem;\n\n\t/**\n\t * List of all [[Container]] elements for legend items.\n\t *\n\t * @default new ListTemplate<Container>\n\t */\n\tpublic readonly itemContainers: ListTemplate<Container> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Container._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.itemContainers.template.get(\"themeTags\", []), [\"legend\", \"item\"]),\n\t\t\tthemeTagsSelf: $utils.mergeTags(this.itemContainers.template.get(\"themeTagsSelf\", []), [\"itemcontainer\"]),\n\t\t\tbackground: Rectangle.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.itemContainers.template.get(\"themeTags\", []), [\"legend\", \"item\", \"background\"]),\n\t\t\t\tthemeTagsSelf: $utils.mergeTags(this.itemContainers.template.get(\"themeTagsSelf\", []), [\"itemcontainer\"])\n\t\t\t})\n\t\t}, [this.itemContainers.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeItemContainer(dataItem: DataItem<this[\"_dataItemSettings\"]>): Container {\n\t\tconst itemContainer = this.children.push(this.itemContainers.make());\n\t\titemContainer._setDataItem(dataItem);\n\t\tthis.itemContainers.push(itemContainer);\n\t\titemContainer.states.create(\"disabled\", {});\n\t\treturn itemContainer;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeMarker(): Container {\n\t\tconst marker = this.markers.make();\n\t\tthis.markers.push(marker);\n\t\tmarker.states.create(\"disabled\", {});\n\t\treturn marker;\n\t}\n\n\t/**\n\t * List of legend marker elements.\n\t *\n\t * @default new ListTemplate<Container>\n\t */\n\tpublic readonly markers: ListTemplate<Container> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Container._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.markers.template.get(\"themeTags\", []), [\"legend\", \"marker\"])\n\t\t}, [this.markers.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLabel(): Label {\n\t\tconst label = this.labels.make();\n\t\tlabel.states.create(\"disabled\", {});\n\t\treturn label;\n\t}\n\n\t/**\n\t * List of legend label elements.\n\t *\n\t * @default new ListTemplate<Label>\n\t */\n\tpublic readonly labels: ListTemplate<Label> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [\"legend\", \"label\"])\n\t\t}, [this.labels.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeValueLabel(): Label {\n\t\tconst valueLabel = this.valueLabels.make();\n\t\tvalueLabel.states.create(\"disabled\", {});\n\t\treturn valueLabel;\n\t}\n\n\t/**\n\t * List of legend value label elements.\n\t *\n\t * @default new ListTemplate<label>\n\t */\n\tpublic readonly valueLabels: ListTemplate<Label> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.valueLabels.template.get(\"themeTags\", []), [\"legend\", \"label\", \"value\"])\n\t\t}, [this.valueLabels.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeMarkerRectangle(): RoundedRectangle {\n\t\tconst markerRectangle = this.markerRectangles.make();\n\t\tmarkerRectangle.states.create(\"disabled\", {});\n\t\treturn markerRectangle;\n\t}\n\n\t/**\n\t * List of rectangle elements used for default legend markers.\n\t *\n\t * @default new ListTemplate<RoundedRectangle>\n\t */\n\tpublic readonly markerRectangles: ListTemplate<RoundedRectangle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RoundedRectangle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.markerRectangles.template.get(\"themeTags\", []), [\"legend\", \"marker\", \"rectangle\"])\n\t\t}, [this.markerRectangles.template])\n\t);\n\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst itemContainer = this.makeItemContainer(dataItem);\n\n\t\tconst nameField = this.get(\"nameField\");\n\t\tconst fillField = this.get(\"fillField\");\n\t\tconst strokeField = this.get(\"strokeField\");\n\n\t\tif (itemContainer) {\n\t\t\tconst item = dataItem.dataContext as ILegendItem;\n\n\t\t\tif (item && item.set) {\n\t\t\t\titem.set(<any>\"legendDataItem\", dataItem);\n\t\t\t}\n\n\t\t\tif (item && item.show) {\n\n\t\t\t\tthis._disposers.push(item.on(\"visible\", (visible) => {\n\t\t\t\t\titemContainer.set(\"disabled\", !visible)\n\t\t\t\t}));\n\n\t\t\t\tif (!item.get(\"visible\")) {\n\t\t\t\t\titemContainer.set(\"disabled\", true);\n\t\t\t\t}\n\t\t\t\titemContainer.events.on(\"pointerover\", () => {\n\t\t\t\t\tconst component = item.component;\n\t\t\t\t\tif (component && component.hoverDataItem) {\n\t\t\t\t\t\tcomponent.hoverDataItem(item as any)\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\titemContainer.events.on(\"pointerout\", () => {\n\t\t\t\t\tconst component = item.component;\n\t\t\t\t\tif (component && component.hoverDataItem) {\n\t\t\t\t\t\tcomponent.unhoverDataItem(item as any)\n\t\t\t\t\t}\n\t\t\t\t})\n\n\t\t\t\titemContainer.events.on(\"click\", () => {\n\t\t\t\t\tconst toggleDp = itemContainer._toggleDp;\n\t\t\t\t\tif (toggleDp) {\n\t\t\t\t\t\ttoggleDp.dispose();\n\t\t\t\t\t}\n\n\t\t\t\t\tif (itemContainer.get(\"toggleKey\") != \"none\") {\n\t\t\t\t\t\tconst labelText = dataItem.get(\"label\").text._getText();\n\n\t\t\t\t\t\tif (item.isHidden() || item.get(\"visible\") === false) {\n\t\t\t\t\t\t\titem.show();\n\t\t\t\t\t\t\titemContainer.set(\"disabled\", false);\n\t\t\t\t\t\t\tthis._root.readerAlert(this._t(\"%1 shown\", this._root.locale, labelText));\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\titem.hide();\n\t\t\t\t\t\t\titemContainer.set(\"disabled\", true);\n\t\t\t\t\t\t\tthis._root.readerAlert(this._t(\"%1 hidden\", this._root.locale, labelText));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\n\t\t\titemContainer._setDataItem(dataItem);\n\t\t\tdataItem.set(\"itemContainer\", itemContainer);\n\n\t\t\tconst marker = this.makeMarker();\n\t\t\tif (marker) {\n\t\t\t\titemContainer.children.push(marker);\n\t\t\t\tmarker._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"marker\", marker);\n\n\t\t\t\tconst useDefaultMarker = this.get(\"useDefaultMarker\");\n\n\t\t\t\tconst markerRectangle = marker.children.push(this.makeMarkerRectangle());\n\n\t\t\t\tlet fill = dataItem.get(\"fill\");\n\t\t\t\tlet stroke = dataItem.get(\"stroke\");\n\n\t\t\t\tdataItem.set(\"markerRectangle\", markerRectangle);\n\n\t\t\t\tif (item && item.get) {\n\t\t\t\t\tfill = item.get(fillField as any, fill);\n\t\t\t\t\tstroke = item.get(strokeField as any, stroke);\n\t\t\t\t}\n\n\t\t\t\tif (!stroke) {\n\t\t\t\t\tstroke = fill;\n\t\t\t\t}\n\n\t\t\t\tif (!useDefaultMarker) {\n\t\t\t\t\tif (item && item.createLegendMarker) {\n\t\t\t\t\t\titem.createLegendMarker();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tmarkerRectangle.setAll({ fill, stroke });\n\n\t\t\t}\n\n\t\t\tconst label = this.makeLabel();\n\n\t\t\tif (label) {\n\t\t\t\titemContainer.children.push(label);\n\t\t\t\tlabel._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"label\", label);\n\n\t\t\t\tlabel.text.on(\"text\", () => {\n\t\t\t\t\titemContainer.set(\"ariaLabel\", label.text._getText() + \"; \" + this._t(\"Press ENTER to toggle\"));\n\t\t\t\t});\n\n\t\t\t\tif (item && item.get) {\n\t\t\t\t\tdataItem.set(\"name\", item.get(nameField as any) as string);\n\t\t\t\t}\n\n\t\t\t\tlet name = dataItem.get(\"name\");\n\n\t\t\t\tif (name) {\n\t\t\t\t\tlabel.set(\"text\", name);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst valueLabel = this.makeValueLabel();\n\t\t\tif (valueLabel) {\n\t\t\t\titemContainer.children.push(valueLabel);\n\t\t\t\tvalueLabel._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"valueLabel\", valueLabel);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t\tlet itemContainer = dataItem.get(\"itemContainer\");\n\t\tif (itemContainer) {\n\t\t\tthis.itemContainers.removeValue(itemContainer);\n\t\t\titemContainer.dispose();\n\t\t}\n\n\t\tlet marker = dataItem.get(\"marker\");\n\t\tif (marker) {\n\t\t\tthis.markers.removeValue(marker);\n\t\t\tmarker.dispose();\n\t\t}\n\n\t\tlet markerRectangle = dataItem.get(\"markerRectangle\");\n\t\tif (markerRectangle) {\n\t\t\tthis.markerRectangles.removeValue(markerRectangle);\n\t\t\tmarkerRectangle.dispose();\n\t\t}\n\n\t\tlet label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tthis.labels.removeValue(label);\n\t\t\tlabel.dispose();\n\t\t}\n\n\t\tlet valueLabel = dataItem.get(\"valueLabel\");\n\t\tif (valueLabel) {\n\t\t\tthis.valueLabels.removeValue(valueLabel);\n\t\t\tvalueLabel.dispose();\n\t\t}\n\n\t}\n}\n"]}
1
+ {"version":3,"file":"Legend.js","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Legend.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate } from \"./Series\";\nimport { Container } from \"../../core/render/Container\";\nimport { Label } from \"../../core/render/Label\";\nimport { RoundedRectangle } from \"../../core/render/RoundedRectangle\";\nimport { Rectangle } from \"../../core/render/Rectangle\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport type { Entity, IEntitySettings } from \"../../core/util/Entity\";\nimport type { Color } from \"../../core/util/Color\";\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface ILegendDataItem extends ISeriesDataItem {\n\n\t/**\n\t * [[Container]] element holding all other legend item elements, labels,\n\t * markers, etc.\n\t */\n\titemContainer: Container;\n\n\t/**\n\t * Marker element.\n\t */\n\tmarker: Container;\n\n\t/**\n\t * Marker rectangle element.\n\t */\n\tmarkerRectangle: RoundedRectangle;\n\n\t/**\n\t * Label element.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * Value label element.\n\t */\n\tvalueLabel: Label;\n\n\t/**\n\t * Marker fill color.\n\t */\n\tfill?: Color;\n\n\t/**\n\t * Marker stroke (outline) color.\n\t */\n\tstroke?: Color;\n\n\t/**\n\t * Name of the legend item.\n\t */\n\tname?: string;\n\n}\n\nexport interface ILegendItemSettings extends IEntitySettings {\n\tvisible?: boolean;\n}\n\n/**\n * @ignore\n */\nexport interface ILegendItem extends Entity {\n\t_settings: ILegendItemSettings;\n\tisHidden?: () => boolean;\n\tshow?: () => void;\n\thide?: () => void;\n\tcreateLegendMarker?: () => {}\n\tcomponent?: Series;\n\t// how to define that properties of dataItem should have legendDataItem?\n}\n\n//type ILegendDataItemSettings = { [K in keyof ILegendDataItem]?: string; };\n\nexport interface ILegendSettings extends ISeriesSettings {\n\n\t/**\n\t * If set to `true` the legend will not try to mimic appearance of the actual\n\t * item but rather show default square marker.\n\t *\n\t * @default false\n\t */\n\tuseDefaultMarker?: boolean;\n\n\t/**\n\t * A key to look up in data for a name of the data item.\n\t *\n\t */\n\tnameField?: string;\n\n\t/**\n\t * A key to look up in data for a fill of the data item.\n\t *\n\t */\n\tfillField?: string;\n\n\t/**\n\t * A key to look up in data for a stroke of the data item.\n\t *\n\t */\n\tstrokeField?: string;\n\n\t/**\n\t * @todo review\n\t */\n\tclickTarget?: \"itemContainer\" | \"marker\" | \"none\"\n}\n\nexport interface ILegendPrivate extends ISeriesPrivate {\n}\n\n/**\n * A universal legend control.\n *\n * @important\n * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/} for more info\n */\nexport class Legend extends Series {\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"legend\"]);\n\t\tthis.fields.push(\"name\", \"stroke\", \"fill\");\n\t\tsuper._afterNew();\n\t}\n\n\tpublic static className: string = \"Legend\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([Legend.className]);\n\n\tdeclare public _settings: ILegendSettings;\n\tdeclare public _privateSettings: ILegendPrivate;\n\tdeclare public _dataItemSettings: ILegendDataItem;\n\n\t/**\n\t * List of all [[Container]] elements for legend items.\n\t *\n\t * @default new ListTemplate<Container>\n\t */\n\tpublic readonly itemContainers: ListTemplate<Container> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Container._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.itemContainers.template.get(\"themeTags\", []), [\"legend\", \"item\"]),\n\t\t\tthemeTagsSelf: $utils.mergeTags(this.itemContainers.template.get(\"themeTagsSelf\", []), [\"itemcontainer\"]),\n\t\t\tbackground: Rectangle.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.itemContainers.template.get(\"themeTags\", []), [\"legend\", \"item\", \"background\"]),\n\t\t\t\tthemeTagsSelf: $utils.mergeTags(this.itemContainers.template.get(\"themeTagsSelf\", []), [\"itemcontainer\"])\n\t\t\t})\n\t\t}, [this.itemContainers.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeItemContainer(dataItem: DataItem<this[\"_dataItemSettings\"]>): Container {\n\t\tconst itemContainer = this.children.push(this.itemContainers.make());\n\t\titemContainer._setDataItem(dataItem);\n\t\tthis.itemContainers.push(itemContainer);\n\t\titemContainer.states.create(\"disabled\", {});\n\t\treturn itemContainer;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeMarker(): Container {\n\t\tconst marker = this.markers.make();\n\t\tthis.markers.push(marker);\n\t\tmarker.states.create(\"disabled\", {});\n\t\treturn marker;\n\t}\n\n\t/**\n\t * List of legend marker elements.\n\t *\n\t * @default new ListTemplate<Container>\n\t */\n\tpublic readonly markers: ListTemplate<Container> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Container._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.markers.template.get(\"themeTags\", []), [\"legend\", \"marker\"])\n\t\t}, [this.markers.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLabel(): Label {\n\t\tconst label = this.labels.make();\n\t\tlabel.states.create(\"disabled\", {});\n\t\treturn label;\n\t}\n\n\t/**\n\t * List of legend label elements.\n\t *\n\t * @default new ListTemplate<Label>\n\t */\n\tpublic readonly labels: ListTemplate<Label> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [\"legend\", \"label\"])\n\t\t}, [this.labels.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeValueLabel(): Label {\n\t\tconst valueLabel = this.valueLabels.make();\n\t\tvalueLabel.states.create(\"disabled\", {});\n\t\treturn valueLabel;\n\t}\n\n\t/**\n\t * List of legend value label elements.\n\t *\n\t * @default new ListTemplate<label>\n\t */\n\tpublic readonly valueLabels: ListTemplate<Label> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.valueLabels.template.get(\"themeTags\", []), [\"legend\", \"label\", \"value\"])\n\t\t}, [this.valueLabels.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeMarkerRectangle(): RoundedRectangle {\n\t\tconst markerRectangle = this.markerRectangles.make();\n\t\tmarkerRectangle.states.create(\"disabled\", {});\n\t\treturn markerRectangle;\n\t}\n\n\t/**\n\t * List of rectangle elements used for default legend markers.\n\t *\n\t * @default new ListTemplate<RoundedRectangle>\n\t */\n\tpublic readonly markerRectangles: ListTemplate<RoundedRectangle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RoundedRectangle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.markerRectangles.template.get(\"themeTags\", []), [\"legend\", \"marker\", \"rectangle\"])\n\t\t}, [this.markerRectangles.template])\n\t);\n\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst itemContainer = this.makeItemContainer(dataItem);\n\n\t\tconst nameField = this.get(\"nameField\");\n\t\tconst fillField = this.get(\"fillField\");\n\t\tconst strokeField = this.get(\"strokeField\");\n\n\t\tif (itemContainer) {\n\t\t\tconst clickTarget = this.get(\"clickTarget\", \"itemContainer\");\n\n\t\t\tconst item = dataItem.dataContext as ILegendItem;\n\n\t\t\tif (item && item.set) {\n\t\t\t\titem.set(<any>\"legendDataItem\", dataItem);\n\t\t\t}\n\n\t\t\titemContainer._setDataItem(dataItem);\n\t\t\tdataItem.set(\"itemContainer\", itemContainer);\n\n\t\t\tconst marker = this.makeMarker();\n\t\t\tif (marker) {\n\t\t\t\titemContainer.children.push(marker);\n\t\t\t\tmarker._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"marker\", marker);\n\n\t\t\t\tconst useDefaultMarker = this.get(\"useDefaultMarker\");\n\n\t\t\t\tconst markerRectangle = marker.children.push(this.makeMarkerRectangle());\n\n\t\t\t\tlet fill = dataItem.get(\"fill\");\n\t\t\t\tlet stroke = dataItem.get(\"stroke\");\n\n\t\t\t\tdataItem.set(\"markerRectangle\", markerRectangle);\n\n\t\t\t\tif (item && item.get) {\n\t\t\t\t\tfill = item.get(fillField as any, fill);\n\t\t\t\t\tstroke = item.get(strokeField as any, stroke);\n\t\t\t\t}\n\n\t\t\t\tif (!stroke) {\n\t\t\t\t\tstroke = fill;\n\t\t\t\t}\n\n\t\t\t\tif (!useDefaultMarker) {\n\t\t\t\t\tif (item && item.createLegendMarker) {\n\t\t\t\t\t\titem.createLegendMarker();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tmarkerRectangle.setAll({ fill, stroke });\n\n\t\t\t}\n\n\t\t\tconst label = this.makeLabel();\n\n\t\t\tif (label) {\n\t\t\t\titemContainer.children.push(label);\n\t\t\t\tlabel._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"label\", label);\n\n\t\t\t\tlabel.text.on(\"text\", () => {\n\t\t\t\t\titemContainer.set(\"ariaLabel\", label.text._getText() + \"; \" + this._t(\"Press ENTER to toggle\"));\n\t\t\t\t});\n\n\t\t\t\tif (item && item.get) {\n\t\t\t\t\tdataItem.set(\"name\", item.get(nameField as any) as string);\n\t\t\t\t}\n\n\t\t\t\tlet name = dataItem.get(\"name\");\n\n\t\t\t\tif (name) {\n\t\t\t\t\tlabel.set(\"text\", name);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst valueLabel = this.makeValueLabel();\n\t\t\tif (valueLabel) {\n\t\t\t\titemContainer.children.push(valueLabel);\n\t\t\t\tvalueLabel._setDataItem(dataItem);\n\t\t\t\tdataItem.set(\"valueLabel\", valueLabel);\n\t\t\t}\n\n\t\t\tif (item && item.show) {\n\n\t\t\t\tthis._disposers.push(item.on(\"visible\", (visible) => {\n\t\t\t\t\titemContainer.set(\"disabled\", !visible)\n\t\t\t\t}));\n\n\t\t\t\tif (!item.get(\"visible\")) {\n\t\t\t\t\titemContainer.set(\"disabled\", true);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif(clickTarget != \"none\"){\n\t\t\t\t\tvar clickContainer = itemContainer;\n\t\t\t\t\tif(clickTarget == \"marker\"){\n\t\t\t\t\t\tclickContainer = marker;\n\t\t\t\t\t}\n\t\t\t\t\tthis._addClickEvents(clickContainer, item, dataItem)\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\n\tprotected _addClickEvents(container: Container, item: ILegendItem, dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tcontainer.set(\"cursorOverStyle\", \"pointer\");\n\t\tcontainer.events.on(\"pointerover\", () => {\n\t\t\tconst component = item.component;\n\t\t\tif (component && component.hoverDataItem) {\n\t\t\t\tcomponent.hoverDataItem(item as any)\n\t\t\t}\n\t\t})\n\n\t\tcontainer.events.on(\"pointerout\", () => {\n\t\t\tconst component = item.component;\n\t\t\tif (component && component.hoverDataItem) {\n\t\t\t\tcomponent.unhoverDataItem(item as any)\n\t\t\t}\n\t\t})\n\n\t\tcontainer.events.on(\"click\", () => {\t\t\t\n\t\t\tconst labelText = dataItem.get(\"label\").text._getText();\n\n\t\t\tif (item.show && item.isHidden && (item.isHidden() || item.get(\"visible\") === false)) {\n\t\t\t\titem.show();\n\t\t\t\tcontainer.set(\"disabled\", false);\n\t\t\t\tthis._root.readerAlert(this._t(\"%1 shown\", this._root.locale, labelText));\n\t\t\t}\n\t\t\telse if (item.hide) {\n\t\t\t\titem.hide();\n\t\t\t\tcontainer.set(\"disabled\", true);\n\t\t\t\tthis._root.readerAlert(this._t(\"%1 hidden\", this._root.locale, labelText));\n\t\t\t}\n\t\t})\n\t}\n\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t\tlet itemContainer = dataItem.get(\"itemContainer\");\n\t\tif (itemContainer) {\n\t\t\tthis.itemContainers.removeValue(itemContainer);\n\t\t\titemContainer.dispose();\n\t\t}\n\n\t\tlet marker = dataItem.get(\"marker\");\n\t\tif (marker) {\n\t\t\tthis.markers.removeValue(marker);\n\t\t\tmarker.dispose();\n\t\t}\n\n\t\tlet markerRectangle = dataItem.get(\"markerRectangle\");\n\t\tif (markerRectangle) {\n\t\t\tthis.markerRectangles.removeValue(markerRectangle);\n\t\t\tmarkerRectangle.dispose();\n\t\t}\n\n\t\tlet label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tthis.labels.removeValue(label);\n\t\t\tlabel.dispose();\n\t\t}\n\n\t\tlet valueLabel = dataItem.get(\"valueLabel\");\n\t\tif (valueLabel) {\n\t\t\tthis.valueLabels.removeValue(valueLabel);\n\t\t\tvalueLabel.dispose();\n\t\t}\n\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Series.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Series.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Series.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/render/Series.ts"],"names":[],"mappings":"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"}
@@ -210,8 +210,10 @@ var Series = /** @class */ (function (_super) {
210
210
  writable: true,
211
211
  value: function () {
212
212
  _super.prototype._prepareChildren.call(this);
213
+ var len = this.dataItems.length;
213
214
  var startIndex = this.getPrivate("startIndex", 0);
214
- var endIndex = this.getPrivate("endIndex", this.dataItems.length);
215
+ var endIndex = Math.min(len, this.getPrivate("endIndex", len));
216
+ this.setPrivateRaw("endIndex", endIndex); // update to handle less data
215
217
  var calculateAggregates = this.get("calculateAggregates");
216
218
  if (calculateAggregates) {
217
219
  if (this._valuesDirty && !this._dataProcessed) {
@@ -239,18 +241,16 @@ var Series = /** @class */ (function (_super) {
239
241
  }
240
242
  if (this.bullets.length > 0) {
241
243
  var count = this.dataItems.length;
242
- var startIndex_1 = this.getPrivate("startIndex", 0);
243
- var endIndex_1 = this.getPrivate("endIndex", count);
244
- for (var i = 0; i < startIndex_1; i++) {
244
+ for (var i = 0; i < startIndex; i++) {
245
245
  this._hideBullets(this.dataItems[i]);
246
246
  }
247
- for (var i = startIndex_1; i < endIndex_1; i++) {
247
+ for (var i = startIndex; i < endIndex; i++) {
248
248
  var dataItem = this.dataItems[i];
249
249
  if (!dataItem.bullets) {
250
250
  this._makeBullets(dataItem);
251
251
  }
252
252
  }
253
- for (var i = endIndex_1; i < count; i++) {
253
+ for (var i = endIndex; i < count; i++) {
254
254
  this._hideBullets(this.dataItems[i]);
255
255
  }
256
256
  }
@@ -592,7 +592,7 @@ var Series = /** @class */ (function (_super) {
592
592
  writable: true,
593
593
  value: function (show, duration) {
594
594
  return __awaiter(this, void 0, void 0, function () {
595
- var startIndex_2, endIndex_2;
595
+ var startIndex_1, endIndex_1;
596
596
  var _this = this;
597
597
  return __generator(this, function (_a) {
598
598
  switch (_a.label) {
@@ -602,19 +602,19 @@ var Series = /** @class */ (function (_super) {
602
602
  duration = this.get("interpolationDuration", 0);
603
603
  }
604
604
  if (!(duration > 0)) return [3 /*break*/, 2];
605
- startIndex_2 = this.getPrivate("startIndex", 0);
606
- endIndex_2 = this.getPrivate("endIndex", this.dataItems.length);
605
+ startIndex_1 = this.getPrivate("startIndex", 0);
606
+ endIndex_1 = this.getPrivate("endIndex", this.dataItems.length);
607
607
  return [4 /*yield*/, Promise.all($array.map(this.dataItems, function (dataItem, i) { return __awaiter(_this, void 0, void 0, function () {
608
608
  var realDuration, delay;
609
609
  return __generator(this, function (_a) {
610
610
  switch (_a.label) {
611
611
  case 0:
612
612
  realDuration = duration || 0;
613
- if (i < startIndex_2 - 10 || i > endIndex_2 + 10) {
613
+ if (i < startIndex_1 - 10 || i > endIndex_1 + 10) {
614
614
  realDuration = 0;
615
615
  }
616
- delay = this.get("sequencedDelay", 0) + realDuration / (endIndex_2 - startIndex_2);
617
- return [4 /*yield*/, $time.sleep(delay * (i - startIndex_2))];
616
+ delay = this.get("sequencedDelay", 0) + realDuration / (endIndex_1 - startIndex_1);
617
+ return [4 /*yield*/, $time.sleep(delay * (i - startIndex_1))];
618
618
  case 1:
619
619
  _a.sent();
620
620
  if (!show) return [3 /*break*/, 3];