@amcharts/amcharts5 5.2.7 → 5.2.8

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 (204) hide show
  1. package/.internal/charts/funnel/FunnelSeries.d.ts +2 -0
  2. package/.internal/charts/funnel/FunnelSeries.d.ts.map +1 -1
  3. package/.internal/charts/funnel/FunnelSeries.js +27 -0
  4. package/.internal/charts/funnel/FunnelSeries.js.map +1 -1
  5. package/.internal/charts/map/MapChart.d.ts +2 -1
  6. package/.internal/charts/map/MapChart.d.ts.map +1 -1
  7. package/.internal/charts/map/MapChart.js +25 -1
  8. package/.internal/charts/map/MapChart.js.map +1 -1
  9. package/.internal/charts/map/MapChartDefaultTheme.d.ts.map +1 -1
  10. package/.internal/charts/map/MapChartDefaultTheme.js +2 -1
  11. package/.internal/charts/map/MapChartDefaultTheme.js.map +1 -1
  12. package/.internal/charts/map/MapPointSeries.d.ts +5 -0
  13. package/.internal/charts/map/MapPointSeries.d.ts.map +1 -1
  14. package/.internal/charts/map/MapPointSeries.js.map +1 -1
  15. package/.internal/charts/percent/PercentChart.d.ts +1 -0
  16. package/.internal/charts/percent/PercentChart.d.ts.map +1 -1
  17. package/.internal/charts/percent/PercentChart.js +9 -0
  18. package/.internal/charts/percent/PercentChart.js.map +1 -1
  19. package/.internal/charts/percent/PercentSeries.d.ts.map +1 -1
  20. package/.internal/charts/percent/PercentSeries.js +6 -0
  21. package/.internal/charts/percent/PercentSeries.js.map +1 -1
  22. package/.internal/charts/pie/PieChart.d.ts.map +1 -1
  23. package/.internal/charts/pie/PieChart.js +5 -0
  24. package/.internal/charts/pie/PieChart.js.map +1 -1
  25. package/.internal/charts/pie/PieSeries.d.ts +2 -0
  26. package/.internal/charts/pie/PieSeries.d.ts.map +1 -1
  27. package/.internal/charts/pie/PieSeries.js +23 -0
  28. package/.internal/charts/pie/PieSeries.js.map +1 -1
  29. package/.internal/charts/xy/XYChart.d.ts +9 -3
  30. package/.internal/charts/xy/XYChart.d.ts.map +1 -1
  31. package/.internal/charts/xy/XYChart.js +12 -2
  32. package/.internal/charts/xy/XYChart.js.map +1 -1
  33. package/.internal/charts/xy/axes/Axis.d.ts +5 -0
  34. package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
  35. package/.internal/charts/xy/axes/Axis.js +1 -0
  36. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  37. package/.internal/core/Root.d.ts +2 -0
  38. package/.internal/core/Root.d.ts.map +1 -1
  39. package/.internal/core/Root.js +49 -22
  40. package/.internal/core/Root.js.map +1 -1
  41. package/.internal/core/render/Container.d.ts.map +1 -1
  42. package/.internal/core/render/Container.js +9 -1
  43. package/.internal/core/render/Container.js.map +1 -1
  44. package/.internal/core/render/Label.d.ts +2 -2
  45. package/.internal/core/render/Label.d.ts.map +1 -1
  46. package/.internal/core/render/Label.js.map +1 -1
  47. package/.internal/core/render/Scrollbar.d.ts +2 -2
  48. package/.internal/core/render/Scrollbar.d.ts.map +1 -1
  49. package/.internal/core/render/Scrollbar.js +5 -2
  50. package/.internal/core/render/Scrollbar.js.map +1 -1
  51. package/.internal/core/render/Series.d.ts.map +1 -1
  52. package/.internal/core/render/Series.js +3 -0
  53. package/.internal/core/render/Series.js.map +1 -1
  54. package/.internal/core/render/Text.d.ts +1 -1
  55. package/.internal/core/render/Text.d.ts.map +1 -1
  56. package/.internal/core/render/Text.js.map +1 -1
  57. package/.internal/core/render/backend/CanvasRenderer.d.ts +1 -1
  58. package/.internal/core/render/backend/CanvasRenderer.d.ts.map +1 -1
  59. package/.internal/core/render/backend/CanvasRenderer.js +8 -2
  60. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  61. package/.internal/core/render/backend/Renderer.d.ts +1 -1
  62. package/.internal/core/render/backend/Renderer.d.ts.map +1 -1
  63. package/.internal/core/render/backend/Renderer.js.map +1 -1
  64. package/.internal/core/util/TextFormatter.js +2 -2
  65. package/.internal/core/util/TextFormatter.js.map +1 -1
  66. package/.internal/core/util/Utils.d.ts +9 -0
  67. package/.internal/core/util/Utils.d.ts.map +1 -1
  68. package/.internal/core/util/Utils.js +10 -0
  69. package/.internal/core/util/Utils.js.map +1 -1
  70. package/.internal/plugins/exporting/Exporting.d.ts.map +1 -1
  71. package/.internal/plugins/exporting/Exporting.js +12 -9
  72. package/.internal/plugins/exporting/Exporting.js.map +1 -1
  73. package/CHANGELOG.md +18 -0
  74. package/examples/javascript/flow-chord/package.json +1 -1
  75. package/examples/javascript/flow-chord-directed/package.json +1 -1
  76. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  77. package/examples/javascript/flow-sankey/package.json +1 -1
  78. package/examples/javascript/gauge/package.json +1 -1
  79. package/examples/javascript/gauge-bands/package.json +1 -1
  80. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  81. package/examples/javascript/hierarchy-pack/package.json +1 -1
  82. package/examples/javascript/hierarchy-partition/package.json +1 -1
  83. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  84. package/examples/javascript/hierarchy-tree/package.json +1 -1
  85. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  86. package/examples/javascript/json/package.json +1 -1
  87. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  88. package/examples/javascript/map-day-and-night/package.json +1 -1
  89. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  90. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  91. package/examples/javascript/map-with-bubbles/package.json +1 -1
  92. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  93. package/examples/javascript/misc-40-charts/package.json +1 -1
  94. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  95. package/examples/javascript/pie-chart/package.json +1 -1
  96. package/examples/javascript/pie-donut-chart/package.json +1 -1
  97. package/examples/javascript/pie-variable-radius/package.json +1 -1
  98. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  99. package/examples/javascript/radar-heat-map/package.json +1 -1
  100. package/examples/javascript/radar-line/package.json +1 -1
  101. package/examples/javascript/radar-time-line/package.json +1 -1
  102. package/examples/javascript/sliced-funnel/package.json +1 -1
  103. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  104. package/examples/javascript/sliced-pyramid/package.json +1 -1
  105. package/examples/javascript/stock-chart/package.json +1 -1
  106. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  107. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  108. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  109. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  110. package/examples/javascript/stock-chart-live/package.json +1 -1
  111. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  112. package/examples/javascript/venn-diagram/package.json +1 -1
  113. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  114. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  115. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  116. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  117. package/examples/javascript/xy-bubble/package.json +1 -1
  118. package/examples/javascript/xy-candlestick/package.json +1 -1
  119. package/examples/javascript/xy-clustered-column/package.json +1 -1
  120. package/examples/javascript/xy-column/package.json +1 -1
  121. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  122. package/examples/javascript/xy-data-grouping/package.json +1 -1
  123. package/examples/javascript/xy-draggable-range/package.json +1 -1
  124. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  125. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  126. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  127. package/examples/javascript/xy-line/package.json +1 -1
  128. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  129. package/examples/javascript/xy-live-data/package.json +1 -1
  130. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  131. package/examples/javascript/xy-ohlc/package.json +1 -1
  132. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  133. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  134. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  135. package/examples/javascript/xy-stacked-column/package.json +1 -1
  136. package/examples/javascript/xy-stacked-step/package.json +1 -1
  137. package/examples/javascript/xy-stock/package.json +1 -1
  138. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  139. package/examples/typescript/flow-chord/package.json +1 -1
  140. package/examples/typescript/flow-chord-directed/package.json +1 -1
  141. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  142. package/examples/typescript/flow-sankey/package.json +1 -1
  143. package/examples/typescript/gauge/package.json +1 -1
  144. package/examples/typescript/gauge-bands/package.json +1 -1
  145. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  146. package/examples/typescript/hierarchy-pack/package.json +1 -1
  147. package/examples/typescript/hierarchy-partition/package.json +1 -1
  148. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  149. package/examples/typescript/hierarchy-tree/package.json +1 -1
  150. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  151. package/examples/typescript/json/package.json +1 -1
  152. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  153. package/examples/typescript/map-day-and-night/package.json +1 -1
  154. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  155. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  156. package/examples/typescript/map-with-bubbles/package.json +1 -1
  157. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  158. package/examples/typescript/misc-40-charts/package.json +1 -1
  159. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  160. package/examples/typescript/pie-chart/package.json +1 -1
  161. package/examples/typescript/pie-donut-chart/package.json +1 -1
  162. package/examples/typescript/pie-variable-radius/package.json +1 -1
  163. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  164. package/examples/typescript/radar-heat-map/package.json +1 -1
  165. package/examples/typescript/radar-line/package.json +1 -1
  166. package/examples/typescript/radar-time-line/package.json +1 -1
  167. package/examples/typescript/sliced-funnel/package.json +1 -1
  168. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  169. package/examples/typescript/sliced-pyramid/package.json +1 -1
  170. package/examples/typescript/stock-chart/package.json +1 -1
  171. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  172. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  173. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  174. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  175. package/examples/typescript/stock-chart-live/package.json +1 -1
  176. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  177. package/examples/typescript/venn-diagram/package.json +1 -1
  178. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  179. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  180. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  181. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  182. package/examples/typescript/xy-bubble/package.json +1 -1
  183. package/examples/typescript/xy-candlestick/package.json +1 -1
  184. package/examples/typescript/xy-clustered-column/package.json +1 -1
  185. package/examples/typescript/xy-column/package.json +1 -1
  186. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  187. package/examples/typescript/xy-data-grouping/package.json +1 -1
  188. package/examples/typescript/xy-draggable-range/package.json +1 -1
  189. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  190. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  191. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  192. package/examples/typescript/xy-line/package.json +1 -1
  193. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  194. package/examples/typescript/xy-live-data/package.json +1 -1
  195. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  196. package/examples/typescript/xy-ohlc/package.json +1 -1
  197. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  198. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  199. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  200. package/examples/typescript/xy-stacked-column/package.json +1 -1
  201. package/examples/typescript/xy-stacked-step/package.json +1 -1
  202. package/examples/typescript/xy-stock/package.json +1 -1
  203. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  204. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PercentSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/percent/PercentSeries.ts"],"names":[],"mappings":";AAUA,OAAO,EAAE,MAAM,EAAoD,MAAM,0BAA0B,CAAC;AACpG,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAqG9C;;GAEG;AACH;IAA4C,iCAAM;IAAlD;QAAA,qEA+gBC;QAngBA;;;;mBAAkC,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAI,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;WAAC;QAC7H;;;;mBAAkC,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAI,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;WAAC;QAC7H;;;;mBAAiC,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAI,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;WAAC;QAE5H;;;;mBAAyD,EAAE;WAAC;QAC5D;;;;mBAAyD,EAAE;WAAC;QAC5D;;;;mBAAyD,EAAE;WAAC;QAE5D;;;;WAIG;QACH;;;;mBAA2D,KAAI,CAAC,WAAW,EAAE;WAAC;QA2B9E;;;;WAIG;QACH;;;;mBAA2D,KAAI,CAAC,WAAW,EAAE;WAAC;QAe9E;;;;WAIG;QACH;;;;mBAAyD,KAAI,CAAC,UAAU,EAAE;WAAC;;IAkc5E,CAAC;IAhfA;;OAEG;;;;;eACH,UAAiB,QAA6C;YAA9D,iBAgBC;YAfA,IAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YAErE,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE;gBAChB,KAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YACnC,CAAC,CAAC,CAAA;YAEF,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE;gBAClB,KAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YACnC,CAAC,CAAC,CAAA;YAEF,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC7B,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAExB,OAAO,KAAK,CAAC;QACd,CAAC;;IAWD;;OAEG;;;;;eACH,UAAiB,QAA6C;YAC7D,IAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC7B,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,OAAO,KAAK,CAAC;QACd,CAAC;;;;;;eAYD,UAA4B,QAA6C;YACxE,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE;gBAClC,OAAO,IAAI,CAAC;aACZ;YACD,OAAO,KAAK,CAAC;QACd,CAAC;;IAED;;OAEG;;;;;eACH,UAAgB,QAA6C;YAC5D,IAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAClE,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC5B,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,IAAI,CAAC;QACb,CAAC;;;;;;eAED;YACC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACrC,iBAAM,SAAS,WAAE,CAAC;QACnB,CAAC;;;;;;eAED;YACC,IAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,MAAM,EAAE;gBACX,MAAM,CAAC,KAAK,EAAE,CAAC;aACf;QACF,CAAC;;;;;;eAED;YACC,iBAAM,gBAAgB,WAAE,CAAC;YAEzB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YAEnB,IAAI,IAAI,CAAC,YAAY,EAAE;gBACtB,IAAI,KAAG,GAAG,CAAC,CAAC;gBACZ,IAAI,QAAM,GAAG,CAAC,CAAC;gBACf,IAAI,WAAS,GAAG,CAAC,CAAC;gBAClB,IAAI,UAAQ,GAAG,QAAQ,CAAC;gBACxB,IAAI,OAAK,GAAG,CAAC,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAC,QAAQ;oBACrC,IAAI,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;oBACnD,KAAG,IAAI,YAAY,CAAC;oBACpB,QAAM,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAClC,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAC,QAAQ;oBACrC,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;oBAC5C,IAAI,KAAK,IAAI,QAAM,EAAE;wBACpB,KAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;qBAC/B;oBAED,IAAI,KAAK,GAAG,WAAS,EAAE;wBACtB,WAAS,GAAG,KAAK,CAAC;qBAClB;oBAED,IAAI,KAAK,GAAG,UAAQ,EAAE;wBACrB,UAAQ,GAAG,KAAK,CAAC;qBACjB;oBAED,OAAK,EAAE,CAAC;oBAER,IAAI,YAAY,GAAG,KAAK,GAAG,QAAM,CAAC;oBAElC,IAAI,QAAM,IAAI,CAAC,EAAE;wBAChB,YAAY,GAAG,CAAC,CAAC;qBACjB;oBAED,QAAQ,CAAC,MAAM,CAAC,mBAAmB,EAAE,YAAY,GAAG,GAAG,CAAC,CAAC;gBAC1D,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,UAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,WAAS,CAAC,CAAC;gBAC3C,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,KAAG,CAAC,CAAC;gBACpC,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,KAAG,GAAG,OAAK,CAAC,CAAC;gBAChD,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,QAAM,CAAC,CAAC;aAC/C;QACF,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAAkB,QAAiB;;;;;;4BAC9B,QAAQ,GAAwB,EAAE,CAAC;4BACvC,QAAQ,CAAC,IAAI,CAAC,iBAAM,IAAI,YAAC,QAAQ,CAAC,CAAC,CAAA;4BAEnC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;4BACvD,qBAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAA;;4BAA3B,SAA2B,CAAC;;;;;SAC5B;;IAED;;;;;OAKG;;;;;eACH,UAAkB,QAAiB;;;;;;4BAC9B,QAAQ,GAAwB,EAAE,CAAC;4BACvC,QAAQ,CAAC,IAAI,CAAC,iBAAM,IAAI,YAAC,QAAQ,CAAC,CAAC,CAAA;4BAEnC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;4BACxD,qBAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAA;;4BAA3B,SAA2B,CAAC;;;;;SAC5B;;IAED;;OAEG;;;;;eACH;YACC,iBAAM,eAAe,WAAE,CAAC;YACxB,IAAI,IAAI,CAAC,YAAY,EAAE;gBACtB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAC,QAAQ;oBACrC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC5C,CAAC,CAAC,CAAC;aACH;YACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjB,CAAC;;;;;;eAED;YAAA,iBAaC;YAZA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAE/B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAE/B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAElC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,UAAC,QAAQ;gBACpC,KAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAA;QACH,CAAC;;;;;;eAGD;YACC,iBAAM,aAAa,WAAE,CAAC;YACtB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjB,CAAC;;;;;;eAED,UAA0B,QAA6C;YACtE,iBAAM,eAAe,YAAC,QAAQ,CAAC,CAAC;YAEhC,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE;gBACjC,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAChC,IAAI,MAAM,EAAE;oBACX,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;iBACvC;aACD;QACF,CAAC;;IAED;;;;;;OAMG;;;;;eACH,UAA0B,QAA6C,EAAE,QAAiB;;;;;;4BACnF,QAAQ,GAAG,CAAC,iBAAM,YAAY,YAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;4BAC1D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;gCAC9B,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;6BACjD;4BAEK,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;4BAE5C,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BAE5B,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;4BAC3G,IAAI,SAAS,EAAE;gCACd,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;6BACvC;4BAEK,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;4BAClC,IAAI,IAAI,EAAE;gCACT,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;6BACnC;4BACK,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BACpC,IAAI,KAAK,EAAE;gCACV,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;6BACpC;4BAEK,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BACpC,IAAI,KAAK,EAAE;gCACV,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;6BACpC;4BAED,qBAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAA;;4BAA3B,SAA2B,CAAC;;;;;SAC5B;;IAED;;;;;;OAMG;;;;;eACH,UAA0B,QAA6C,EAAE,QAAiB;;;;;;4BACnF,QAAQ,GAAG,CAAC,iBAAM,YAAY,YAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;4BACpD,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;4BAEpD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;gCAC9B,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,wBAAwB,EAAE,IAAI,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC,CAAC;6BAC5F;4BAEK,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC;4BAEnF,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;4BACvG,IAAI,SAAS,EAAE;gCACd,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;6BACvC;4BAEK,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;4BAClC,IAAI,IAAI,EAAE;gCACT,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;6BACnC;4BACK,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BACpC,IAAI,KAAK,EAAE;gCACV,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;6BACpC;4BAEK,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BACpC,KAAK,CAAC,WAAW,EAAE,CAAC;4BAEpB,IAAI,KAAK,EAAE;gCACV,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;6BACpC;4BAED,qBAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAA;;4BAA3B,SAA2B,CAAC;;;;;SAC5B;;IAED;;OAEG;;;;;eACH,UAAuB,QAA6C;YACnE,iBAAM,eAAe,YAAC,QAAQ,CAAC,CAAC;YAChC,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAClC,IAAI,KAAK,EAAE;gBACV,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBAC/B,KAAK,CAAC,OAAO,EAAE,CAAC;aAChB;YACD,IAAI,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,IAAI,EAAE;gBACT,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;aACf;YACD,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAClC,IAAI,KAAK,EAAE;gBACV,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;gBAC/B,KAAK,CAAC,OAAO,EAAE,CAAC;aAChB;QACF,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAAqB,QAA6C;YACjE,IAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE;gBAC/B,KAAK,CAAC,KAAK,EAAE,CAAC;aACd;QACF,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAAuB,QAA6C;YACnE,IAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpC,IAAI,KAAK,EAAE;gBACV,KAAK,CAAC,OAAO,EAAE,CAAC;aAChB;QACF,CAAC;;IAED;;OAEG;;;;;eACH,UAA0B,QAA6C;YACtE,IAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAEpC,IAAI,KAAK,EAAE;gBACV,IAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;gBACtD,IAAI,cAAc,EAAE;oBACnB,IAAM,iBAAe,GAAG,cAAc,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;oBAC9D,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,UAAC,OAAY;wBACxC,IAAI,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE;4BAC/B,iBAAe,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;yBACjD;oBACF,CAAC,CAAC,CAAA;iBACF;aACD;QACF,CAAC;;;;;;eAED,UAAuB,MAA2C;YACjE,IAAI,MAAM,EAAE;gBAEX,IAAI,MAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBAE/B,MAAM,CAAC,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC;oBAChB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBACd,OAAO,CAAC,CAAC;qBACT;yBACI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBACnB,OAAO,CAAC,CAAC,CAAC;qBACV;yBACI;wBACJ,OAAO,CAAC,CAAC;qBACT;gBACF,CAAC,CAAC,CAAA;gBAEF,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,UAAC,CAAC;oBACrB,IAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;oBAC7C,IAAI,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC;oBAC1B,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,MAAI,EAAE;wBAC1B,CAAC,CAAC,CAAC,GAAG,MAAI,GAAG,QAAQ,CAAC;qBACtB;oBACD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAEtB,MAAI,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;gBAC5B,CAAC,CAAC,CAAA;aACF;QACF,CAAC;;;;;;eAED;YACC,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;QACzC,CAAC;;;;;;eAED;YACC,OAAO,CAAC,CAAC;QACV,CAAC;;;;;;eAED,UAAqB,MAA2C;YAC/D,IAAI,MAAM,EAAE;gBACX,IAAI,MAAI,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;gBAE7B,MAAM,CAAC,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC;oBAChB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBACd,OAAO,CAAC,CAAC;qBACT;yBACI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBACnB,OAAO,CAAC,CAAC,CAAC;qBACV;yBACI;wBACJ,OAAO,CAAC,CAAC;qBACT;gBACF,CAAC,CAAC,CAAA;gBAEF,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,UAAC,CAAC;oBACrB,IAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;oBAC7C,IAAI,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;oBAChC,IAAI,CAAC,CAAC,CAAC,GAAG,WAAW,GAAG,MAAI,EAAE;wBAC7B,CAAC,CAAC,CAAC,GAAG,MAAI,GAAG,WAAW,CAAC;qBACzB;oBACD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtB,MAAI,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC;gBACzB,CAAC,CAAC,CAAA;aACF;QACF,CAAC;;;;;;eAED,UAAwB,MAA2C;YAClE,IAAI,MAAM,EAAE;gBAEX,IAAI,MAAI,GAAG,CAAC,CAAC;gBAEb,MAAM,CAAC,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC;oBAChB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBACd,OAAO,CAAC,CAAC;qBACT;yBACI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBACnB,OAAO,CAAC,CAAC,CAAC;qBACV;yBACI;wBACJ,OAAO,CAAC,CAAC;qBACT;gBACF,CAAC,CAAC,CAAA;gBAEF,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,UAAC,CAAC;oBACrB,IAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;oBAC7C,IAAI,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC5B,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,MAAI,EAAE;wBAC3B,CAAC,CAAC,CAAC,GAAG,MAAI,GAAG,SAAS,CAAC;qBACvB;oBACD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAEtB,MAAI,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;gBAC3B,CAAC,CAAC,CAAA;aACF;QACF,CAAC;;;;;;eAED,UAAuB,MAA2C;YACjE,IAAI,MAAM,EAAE;gBACX,IAAI,MAAI,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC;gBAE3C,MAAM,CAAC,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC;oBAChB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBACd,OAAO,CAAC,CAAC;qBACT;yBACI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;wBACnB,OAAO,CAAC,CAAC,CAAC;qBACV;yBACI;wBACJ,OAAO,CAAC,CAAC;qBACT;gBACF,CAAC,CAAC,CAAA;gBAEF,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,UAAC,CAAC;oBACrB,IAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;oBAC7C,IAAI,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC;oBAC9B,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,MAAI,EAAE;wBAC5B,CAAC,CAAC,CAAC,GAAG,MAAI,GAAG,UAAU,CAAC;qBACxB;oBACD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtB,MAAI,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;gBAC1B,CAAC,CAAC,CAAA;aACF;QACF,CAAC;;;;;;eAED;YACC,iBAAM,WAAW,WAAE,CAAC;YACpB,IAAI,CAAC,SAAS,EAAE,CAAC;QAClB,CAAC;;;;;;eAED,UAAsB,SAA8C;QAEpE,CAAC;;;;;;eAED;YACC,iBAAM,QAAQ,WAAE,CAAC;YAEjB,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACzB,IAAI,KAAK,EAAE;gBACV,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;aAC/B;QACF,CAAC;;IA3gBD;;;;eAAkC,eAAe;OAAC;IAClD;;;;eAA0C,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;OAAC;IA6gB/F,oBAAC;CAAA,AA/gBD,CAA4C,MAAM,GA+gBjD;SA/gBqB,aAAa","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { Graphics } from \"../../core/render/Graphics\";\nimport type { Label } from \"../../core/render/Label\";\nimport type { Tick } from \"../../core/render/Tick\";\nimport type { ListTemplate } from \"../../core/util/List\";\nimport type { ColorSet } from \"../../core/util/ColorSet\";\nimport type { ILegendDataItem } from \"../../core/render/Legend\";\nimport type { Color } from \"../../core/util/Color\";\nimport type { PercentChart } from \"./PercentChart\";\n\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate } from \"../../core/render/Series\";\nimport { Container } from \"../../core/render/Container\";\nimport { visualSettings } from \"../../core/render/Graphics\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\n\nexport interface IPercentSeriesDataItem extends ISeriesDataItem {\n\n\t/**\n\t * Percent of the series value total.\n\t */\n\tvaluePercentTotal: number;\n\n\t/**\n\t * Category.\n\t */\n\tcategory: string;\n\n\t/**\n\t * Slice visual element.\n\t */\n\tslice: Graphics;\n\n\t/**\n\t * Slice label.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * Slice tick.\n\t */\n\ttick: Tick;\n\n\t/**\n\t * A related legend data item.\n\t */\n\tlegendDataItem: DataItem<ILegendDataItem>;\n\n\t/**\n\t * Fill color used for the slice and related elements, e.g. legend marker.\n\t */\n\tfill: Color;\n\n}\n\n//type IPercentSeriesDataItemSettings = { [K in keyof IPercentSeriesDataItem]?: string; };\n\nexport interface IPercentSeriesSettings extends ISeriesSettings {\n\n\t/**\n\t * A [[ColorSet]] to use when asigning colors for slices.\n\t */\n\tcolors?: ColorSet;\n\n\t/**\n\t * A field in data that holds category names.\n\t */\n\tcategoryField?: string;\n\n\t/**\n\t * Should slice labels be aligned in columns/rows?\n\t */\n\talignLabels?: boolean;\n\n\t/**\n\t * A field that holds color for slice fill.\n\t */\n\tfillField?: string;\n\n}\n\nexport interface IPercentSeriesPrivate extends ISeriesPrivate {\n\n\t/**\n\t * Calculate average value in series.\n\t */\n\tvalueAverage?: number;\n\n\t/**\n\t * Count of items in series.\n\t */\n\tvalueCount?: number;\n\n\t/**\n\t * Sum of values in series.\n\t */\n\tvalueSum?: number;\n\n\t/**\n\t * Sum of all absolute values in series.\n\t */\n\tvalueAbsoluteSum?: number;\n\n\t/**\n\t * Lowest value in series.\n\t */\n\tvalueLow?: number;\n\n\t/**\n\t * Highest value in series.\n\t */\n\tvalueHigh?: number;\n\n}\n\n/**\n * A base class for any percent chart series.\n */\nexport abstract class PercentSeries extends Series {\n\tpublic static className: string = \"PercentSeries\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([PercentSeries.className]);\n\n\tdeclare public _settings: IPercentSeriesSettings;\n\tdeclare public _privateSettings: IPercentSeriesPrivate;\n\tdeclare public _dataItemSettings: IPercentSeriesDataItem;\n\n\tdeclare public _sliceType: Graphics;\n\tdeclare public _labelType: Label;\n\tdeclare public _tickType: Tick;\n\n\tpublic readonly slicesContainer = this.children.push(Container.new(this._root, { position: \"absolute\", isMeasured: false }));\n\tpublic readonly labelsContainer = this.children.push(Container.new(this._root, { position: \"absolute\", isMeasured: false }));\n\tpublic readonly ticksContainer = this.children.push(Container.new(this._root, { position: \"absolute\", isMeasured: false }));\n\n\tprotected _lLabels: Array<{ label: Label, y: number }> = [];\n\tprotected _rLabels: Array<{ label: Label, y: number }> = [];\n\tprotected _hLabels: Array<{ label: Label, y: number }> = [];\n\n\t/**\n\t * A [[ListTemplate]] of all slices in series.\n\t *\n\t * `slices.template` can also be used to configure slices.\n\t */\n\tpublic readonly slices: ListTemplate<this[\"_sliceType\"]> = this._makeSlices();\n\n\tprotected abstract _makeSlices(): ListTemplate<this[\"_sliceType\"]>;\n\n\tpublic abstract chart: PercentChart | undefined;\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeSlice(dataItem: DataItem<this[\"_dataItemSettings\"]>): this[\"_sliceType\"] {\n\t\tconst slice = this.slicesContainer.children.push(this.slices.make());\n\n\t\tslice.on(\"fill\", () => {\n\t\t\tthis.updateLegendMarker(dataItem);\n\t\t})\n\n\t\tslice.on(\"stroke\", () => {\n\t\t\tthis.updateLegendMarker(dataItem);\n\t\t})\n\n\t\tslice._setDataItem(dataItem);\n\t\tdataItem.set(\"slice\", slice);\n\t\tthis.slices.push(slice);\n\n\t\treturn slice;\n\t}\n\n\t/**\n\t * A [[ListTemplate]] of all slice labels in series.\n\t *\n\t * `labels.template` can also be used to configure slice labels.\n\t */\n\tpublic readonly labels: ListTemplate<this[\"_labelType\"]> = this._makeLabels();\n\n\tprotected abstract _makeLabels(): ListTemplate<this[\"_labelType\"]>;\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLabel(dataItem: DataItem<this[\"_dataItemSettings\"]>): this[\"_labelType\"] {\n\t\tconst label = this.labelsContainer.children.push(this.labels.make());\n\t\tlabel._setDataItem(dataItem);\n\t\tdataItem.set(\"label\", label);\n\t\tthis.labels.push(label);\n\t\treturn label;\n\t}\n\n\t/**\n\t * A [[ListTemplate]] of all slice ticks in series.\n\t *\n\t * `ticks.template` can also be used to configure slice ticks.\n\t */\n\tpublic readonly ticks: ListTemplate<this[\"_tickType\"]> = this._makeTicks();\n\n\tprotected abstract _makeTicks(): ListTemplate<this[\"_tickType\"]>;\n\n\n\tprotected _shouldMakeBullet(dataItem: DataItem<this[\"_dataItemSettings\"]>): boolean {\n\t\tif (dataItem.get(\"value\") != null) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeTick(dataItem: DataItem<this[\"_dataItemSettings\"]>): this[\"_tickType\"] {\n\t\tconst tick = this.ticksContainer.children.push(this.ticks.make());\n\t\ttick._setDataItem(dataItem);\n\t\tdataItem.set(\"tick\", tick);\n\t\tthis.ticks.push(tick);\n\t\treturn tick;\n\t}\n\n\tprotected _afterNew() {\n\t\tthis.fields.push(\"category\", \"fill\");\n\t\tsuper._afterNew();\n\t}\n\n\tprotected _onDataClear() {\n\t\tconst colors = this.get(\"colors\");\n\t\tif (colors) {\n\t\t\tcolors.reset();\n\t\t}\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tthis._lLabels = [];\n\t\tthis._rLabels = [];\n\t\tthis._hLabels = [];\n\n\t\tif (this._valuesDirty) {\n\t\t\tlet sum = 0;\n\t\t\tlet absSum = 0;\n\t\t\tlet valueHigh = 0;\n\t\t\tlet valueLow = Infinity;\n\t\t\tlet count = 0;\n\t\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\t\tlet valueWorking = dataItem.get(\"valueWorking\", 0);\n\t\t\t\tsum += valueWorking;\n\t\t\t\tabsSum += Math.abs(valueWorking);\n\t\t\t});\n\n\t\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\t\tlet value = dataItem.get(\"valueWorking\", 0);\n\t\t\t\tif (value >= absSum) {\n\t\t\t\t\tsum = dataItem.get(\"value\", 0);\n\t\t\t\t}\n\n\t\t\t\tif (value > valueHigh) {\n\t\t\t\t\tvalueHigh = value;\n\t\t\t\t}\n\n\t\t\t\tif (value < valueLow) {\n\t\t\t\t\tvalueLow = value;\n\t\t\t\t}\n\n\t\t\t\tcount++;\n\n\t\t\t\tlet percentTotal = value / absSum;\n\n\t\t\t\tif (absSum == 0) {\n\t\t\t\t\tpercentTotal = 0;\n\t\t\t\t}\n\n\t\t\t\tdataItem.setRaw(\"valuePercentTotal\", percentTotal * 100);\n\t\t\t});\n\n\t\t\tthis.setPrivateRaw(\"valueLow\", valueLow);\n\t\t\tthis.setPrivateRaw(\"valueHigh\", valueHigh);\n\t\t\tthis.setPrivateRaw(\"valueSum\", sum);\n\t\t\tthis.setPrivateRaw(\"valueAverage\", sum / count);\n\t\t\tthis.setPrivateRaw(\"valueAbsoluteSum\", absSum);\n\t\t}\n\t}\n\n\t/**\n\t * Shows hidden series.\n\t *\n\t * @param duration Animation duration in milliseconds\n\t * @return Animation promise\n\t */\n\tpublic async show(duration?: number): Promise<void> {\n\t\tlet promises: Array<Promise<any>> = [];\n\t\tpromises.push(super.show(duration))\n\n\t\tpromises.push(this._sequencedShowHide(true, duration));\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * Hide whole series.\n\t *\n\t * @param duration Animation duration in milliseconds\n\t * @return Animation promise\n\t */\n\tpublic async hide(duration?: number): Promise<void> {\n\t\tlet promises: Array<Promise<any>> = [];\n\t\tpromises.push(super.hide(duration))\n\n\t\tpromises.push(this._sequencedShowHide(false, duration));\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\t\tif (this._valuesDirty) {\n\t\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\t\tdataItem.get(\"label\").text.markDirtyText();\n\t\t\t});\n\t\t}\n\t\tthis._arrange();\n\t}\n\n\tprotected _arrange() {\n\t\tthis._arrangeDown(this._lLabels);\n\t\tthis._arrangeUp(this._lLabels);\n\n\t\tthis._arrangeDown(this._rLabels);\n\t\tthis._arrangeUp(this._rLabels);\n\n\t\tthis._arrangeLeft(this._hLabels);\n\t\tthis._arrangeRight(this._hLabels);\n\n\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\t}\n\n\n\tpublic _afterChanged() {\n\t\tsuper._afterChanged();\n\t\tthis._arrange();\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tif (dataItem.get(\"fill\") == null) {\n\t\t\tlet colors = this.get(\"colors\");\n\t\t\tif (colors) {\n\t\t\t\tdataItem.setRaw(\"fill\", colors.next());\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Shows series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = this.get(\"stateAnimationDuration\", 0);\n\t\t}\n\n\t\tconst easing = this.get(\"stateAnimationEasing\");\n\n\t\tlet value = dataItem.get(\"value\");\n\n\t\tconst animation = dataItem.animate({ key: \"valueWorking\", to: value, duration: duration, easing: easing });\n\t\tif (animation) {\n\t\t\tpromises.push(animation.waitForStop());\n\t\t}\n\n\t\tconst tick = dataItem.get(\"tick\");\n\t\tif (tick) {\n\t\t\tpromises.push(tick.show(duration));\n\t\t}\n\t\tconst label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tpromises.push(label.show(duration));\n\t\t}\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tpromises.push(slice.show(duration));\n\t\t}\n\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\t\tconst hiddenState = this.states.create(\"hidden\", {})\n\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = hiddenState.get(\"stateAnimationDuration\", this.get(\"stateAnimationDuration\", 0));\n\t\t}\n\n\t\tconst easing = hiddenState.get(\"stateAnimationEasing\", this.get(\"stateAnimationEasing\"));\n\n\t\tconst animation = dataItem.animate({ key: \"valueWorking\", to: 0, duration: duration, easing: easing });\n\t\tif (animation) {\n\t\t\tpromises.push(animation.waitForStop());\n\t\t}\n\n\t\tconst tick = dataItem.get(\"tick\");\n\t\tif (tick) {\n\t\t\tpromises.push(tick.hide(duration));\n\t\t}\n\t\tconst label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tpromises.push(label.hide(duration));\n\t\t}\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tslice.hideTooltip();\n\n\t\tif (slice) {\n\t\t\tpromises.push(slice.hide(duration));\n\t\t}\n\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\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\t\tlet tick = dataItem.get(\"tick\");\n\t\tif (tick) {\n\t\t\tthis.ticks.removeValue(tick);\n\t\t\ttick.dispose();\n\t\t}\n\t\tlet slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tthis.slices.removeValue(slice);\n\t\t\tslice.dispose();\n\t\t}\n\t}\n\n\t/**\n\t * Triggers hover on a series data item.\n\t *\n\t * @since 5.0.7\n\t * @param dataItem Target data item\n\t */\n\tpublic hoverDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice && !slice.isHidden()) {\n\t\t\tslice.hover();\n\t\t}\n\t}\n\n\t/**\n\t * Triggers un-hover on a series data item.\n\t *\n\t * @since 5.0.7\n\t * @param dataItem Target data item\n\t */\n\tpublic unhoverDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tslice.unhover();\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLegendMarker(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\n\t\tif (slice) {\n\t\t\tconst legendDataItem = dataItem.get(\"legendDataItem\");\n\t\t\tif (legendDataItem) {\n\t\t\t\tconst markerRectangle = legendDataItem.get(\"markerRectangle\");\n\t\t\t\t$array.each(visualSettings, (setting: any) => {\n\t\t\t\t\tif (slice.get(setting) != null) {\n\t\t\t\t\t\tmarkerRectangle.set(setting, slice.get(setting));\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _arrangeDown(labels?: Array<{ label: Label, y: number }>) {\n\t\tif (labels) {\n\n\t\t\tlet next = this._getNextDown();\n\n\t\t\tlabels.sort((a, b) => {\n\t\t\t\tif (a.y > b.y) {\n\t\t\t\t\treturn 1;\n\t\t\t\t}\n\t\t\t\telse if (a.y < b.y) {\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(labels, (l) => {\n\t\t\t\tconst bounds = l.label.adjustedLocalBounds();\n\t\t\t\tlet labelTop = bounds.top;\n\t\t\t\tif (l.y + labelTop < next) {\n\t\t\t\t\tl.y = next - labelTop;\n\t\t\t\t}\n\t\t\t\tl.label.set(\"y\", l.y);\n\n\t\t\t\tnext = l.y + bounds.bottom;\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _getNextUp() {\n\t\treturn this.labelsContainer.maxHeight();\n\t}\n\n\tprotected _getNextDown() {\n\t\treturn 0;\n\t}\n\n\tprotected _arrangeUp(labels?: Array<{ label: Label, y: number }>) {\n\t\tif (labels) {\n\t\t\tlet next = this._getNextUp();\n\n\t\t\tlabels.sort((a, b) => {\n\t\t\t\tif (a.y < b.y) {\n\t\t\t\t\treturn 1;\n\t\t\t\t}\n\t\t\t\telse if (a.y > b.y) {\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(labels, (l) => {\n\t\t\t\tconst bounds = l.label.adjustedLocalBounds();\n\t\t\t\tlet labelBottom = bounds.bottom;\n\t\t\t\tif (l.y + labelBottom > next) {\n\t\t\t\t\tl.y = next - labelBottom;\n\t\t\t\t}\n\t\t\t\tl.label.set(\"y\", l.y);\n\t\t\t\tnext = l.y + bounds.top;\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _arrangeRight(labels?: Array<{ label: Label, y: number }>) {\n\t\tif (labels) {\n\n\t\t\tlet next = 0;\n\n\t\t\tlabels.sort((a, b) => {\n\t\t\t\tif (a.y > b.y) {\n\t\t\t\t\treturn 1;\n\t\t\t\t}\n\t\t\t\telse if (a.y < b.y) {\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(labels, (l) => {\n\t\t\t\tconst bounds = l.label.adjustedLocalBounds();\n\t\t\t\tlet labelLeft = bounds.left;\n\t\t\t\tif (l.y + labelLeft < next) {\n\t\t\t\t\tl.y = next - labelLeft;\n\t\t\t\t}\n\t\t\t\tl.label.set(\"x\", l.y);\n\n\t\t\t\tnext = l.y + bounds.right;\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _arrangeLeft(labels?: Array<{ label: Label, y: number }>) {\n\t\tif (labels) {\n\t\t\tlet next = this.labelsContainer.maxWidth();\n\n\t\t\tlabels.sort((a, b) => {\n\t\t\t\tif (a.y < b.y) {\n\t\t\t\t\treturn 1;\n\t\t\t\t}\n\t\t\t\telse if (a.y > b.y) {\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(labels, (l) => {\n\t\t\t\tconst bounds = l.label.adjustedLocalBounds();\n\t\t\t\tlet labelRight = bounds.right;\n\t\t\t\tif (l.y + labelRight > next) {\n\t\t\t\t\tl.y = next - labelRight;\n\t\t\t\t}\n\t\t\t\tl.label.set(\"x\", l.y);\n\t\t\t\tnext = l.y + bounds.left;\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic _updateSize() {\n\t\tsuper._updateSize();\n\t\tthis.markDirty();\n\t}\n\n\tprotected _updateTick(_dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t}\n\n\tprotected _dispose() {\n\t\tsuper._dispose();\n\n\t\tconst chart = this.chart;\n\t\tif (chart) {\n\t\t\tchart.series.removeValue(this);\n\t\t}\n\t}\n\n\n}\n"]}
1
+ {"version":3,"file":"PercentSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/percent/PercentSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { Graphics } from \"../../core/render/Graphics\";\nimport type { Label } from \"../../core/render/Label\";\nimport type { Tick } from \"../../core/render/Tick\";\nimport type { ListTemplate } from \"../../core/util/List\";\nimport type { ColorSet } from \"../../core/util/ColorSet\";\nimport type { ILegendDataItem } from \"../../core/render/Legend\";\nimport type { Color } from \"../../core/util/Color\";\nimport type { PercentChart } from \"./PercentChart\";\n\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate } from \"../../core/render/Series\";\nimport { Container } from \"../../core/render/Container\";\nimport { visualSettings } from \"../../core/render/Graphics\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\n\nexport interface IPercentSeriesDataItem extends ISeriesDataItem {\n\n\t/**\n\t * Percent of the series value total.\n\t */\n\tvaluePercentTotal: number;\n\n\t/**\n\t * Category.\n\t */\n\tcategory: string;\n\n\t/**\n\t * Slice visual element.\n\t */\n\tslice: Graphics;\n\n\t/**\n\t * Slice label.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * Slice tick.\n\t */\n\ttick: Tick;\n\n\t/**\n\t * A related legend data item.\n\t */\n\tlegendDataItem: DataItem<ILegendDataItem>;\n\n\t/**\n\t * Fill color used for the slice and related elements, e.g. legend marker.\n\t */\n\tfill: Color;\n\n}\n\n//type IPercentSeriesDataItemSettings = { [K in keyof IPercentSeriesDataItem]?: string; };\n\nexport interface IPercentSeriesSettings extends ISeriesSettings {\n\n\t/**\n\t * A [[ColorSet]] to use when asigning colors for slices.\n\t */\n\tcolors?: ColorSet;\n\n\t/**\n\t * A field in data that holds category names.\n\t */\n\tcategoryField?: string;\n\n\t/**\n\t * Should slice labels be aligned in columns/rows?\n\t */\n\talignLabels?: boolean;\n\n\t/**\n\t * A field that holds color for slice fill.\n\t */\n\tfillField?: string;\n\n}\n\nexport interface IPercentSeriesPrivate extends ISeriesPrivate {\n\n\t/**\n\t * Calculate average value in series.\n\t */\n\tvalueAverage?: number;\n\n\t/**\n\t * Count of items in series.\n\t */\n\tvalueCount?: number;\n\n\t/**\n\t * Sum of values in series.\n\t */\n\tvalueSum?: number;\n\n\t/**\n\t * Sum of all absolute values in series.\n\t */\n\tvalueAbsoluteSum?: number;\n\n\t/**\n\t * Lowest value in series.\n\t */\n\tvalueLow?: number;\n\n\t/**\n\t * Highest value in series.\n\t */\n\tvalueHigh?: number;\n\n}\n\n/**\n * A base class for any percent chart series.\n */\nexport abstract class PercentSeries extends Series {\n\tpublic static className: string = \"PercentSeries\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([PercentSeries.className]);\n\n\tdeclare public _settings: IPercentSeriesSettings;\n\tdeclare public _privateSettings: IPercentSeriesPrivate;\n\tdeclare public _dataItemSettings: IPercentSeriesDataItem;\n\n\tdeclare public _sliceType: Graphics;\n\tdeclare public _labelType: Label;\n\tdeclare public _tickType: Tick;\n\n\tpublic readonly slicesContainer = this.children.push(Container.new(this._root, { position: \"absolute\", isMeasured: false }));\n\tpublic readonly labelsContainer = this.children.push(Container.new(this._root, { position: \"absolute\", isMeasured: false }));\n\tpublic readonly ticksContainer = this.children.push(Container.new(this._root, { position: \"absolute\", isMeasured: false }));\n\n\tprotected _lLabels: Array<{ label: Label, y: number }> = [];\n\tprotected _rLabels: Array<{ label: Label, y: number }> = [];\n\tprotected _hLabels: Array<{ label: Label, y: number }> = [];\n\n\t/**\n\t * A [[ListTemplate]] of all slices in series.\n\t *\n\t * `slices.template` can also be used to configure slices.\n\t */\n\tpublic readonly slices: ListTemplate<this[\"_sliceType\"]> = this._makeSlices();\n\n\tprotected abstract _makeSlices(): ListTemplate<this[\"_sliceType\"]>;\n\n\tpublic abstract chart: PercentChart | undefined;\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeSlice(dataItem: DataItem<this[\"_dataItemSettings\"]>): this[\"_sliceType\"] {\n\t\tconst slice = this.slicesContainer.children.push(this.slices.make());\n\n\t\tslice.on(\"fill\", () => {\n\t\t\tthis.updateLegendMarker(dataItem);\n\t\t})\n\n\t\tslice.on(\"stroke\", () => {\n\t\t\tthis.updateLegendMarker(dataItem);\n\t\t})\n\n\t\tslice._setDataItem(dataItem);\n\t\tdataItem.set(\"slice\", slice);\n\t\tthis.slices.push(slice);\n\n\t\treturn slice;\n\t}\n\n\t/**\n\t * A [[ListTemplate]] of all slice labels in series.\n\t *\n\t * `labels.template` can also be used to configure slice labels.\n\t */\n\tpublic readonly labels: ListTemplate<this[\"_labelType\"]> = this._makeLabels();\n\n\tprotected abstract _makeLabels(): ListTemplate<this[\"_labelType\"]>;\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLabel(dataItem: DataItem<this[\"_dataItemSettings\"]>): this[\"_labelType\"] {\n\t\tconst label = this.labelsContainer.children.push(this.labels.make());\n\t\tlabel._setDataItem(dataItem);\n\t\tdataItem.set(\"label\", label);\n\t\tthis.labels.push(label);\n\t\treturn label;\n\t}\n\n\t/**\n\t * A [[ListTemplate]] of all slice ticks in series.\n\t *\n\t * `ticks.template` can also be used to configure slice ticks.\n\t */\n\tpublic readonly ticks: ListTemplate<this[\"_tickType\"]> = this._makeTicks();\n\n\tprotected abstract _makeTicks(): ListTemplate<this[\"_tickType\"]>;\n\n\n\tprotected _shouldMakeBullet(dataItem: DataItem<this[\"_dataItemSettings\"]>): boolean {\n\t\tif (dataItem.get(\"value\") != null) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeTick(dataItem: DataItem<this[\"_dataItemSettings\"]>): this[\"_tickType\"] {\n\t\tconst tick = this.ticksContainer.children.push(this.ticks.make());\n\t\ttick._setDataItem(dataItem);\n\t\tdataItem.set(\"tick\", tick);\n\t\tthis.ticks.push(tick);\n\t\treturn tick;\n\t}\n\n\tprotected _afterNew() {\n\t\tthis.fields.push(\"category\", \"fill\");\n\t\tsuper._afterNew();\n\t}\n\n\tprotected _onDataClear() {\n\t\tconst colors = this.get(\"colors\");\n\t\tif (colors) {\n\t\t\tcolors.reset();\n\t\t}\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tthis._lLabels = [];\n\t\tthis._rLabels = [];\n\t\tthis._hLabels = [];\n\n\t\tif (this._valuesDirty) {\n\t\t\tlet sum = 0;\n\t\t\tlet absSum = 0;\n\t\t\tlet valueHigh = 0;\n\t\t\tlet valueLow = Infinity;\n\t\t\tlet count = 0;\n\t\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\t\tlet valueWorking = dataItem.get(\"valueWorking\", 0);\n\t\t\t\tsum += valueWorking;\n\t\t\t\tabsSum += Math.abs(valueWorking);\n\t\t\t});\n\n\t\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\t\tlet value = dataItem.get(\"valueWorking\", 0);\n\t\t\t\tif (value >= absSum) {\n\t\t\t\t\tsum = dataItem.get(\"value\", 0);\n\t\t\t\t}\n\n\t\t\t\tif (value > valueHigh) {\n\t\t\t\t\tvalueHigh = value;\n\t\t\t\t}\n\n\t\t\t\tif (value < valueLow) {\n\t\t\t\t\tvalueLow = value;\n\t\t\t\t}\n\n\t\t\t\tcount++;\n\n\t\t\t\tlet percentTotal = value / absSum;\n\n\t\t\t\tif (absSum == 0) {\n\t\t\t\t\tpercentTotal = 0;\n\t\t\t\t}\n\n\t\t\t\tdataItem.setRaw(\"valuePercentTotal\", percentTotal * 100);\n\t\t\t});\n\n\t\t\tthis.setPrivateRaw(\"valueLow\", valueLow);\n\t\t\tthis.setPrivateRaw(\"valueHigh\", valueHigh);\n\t\t\tthis.setPrivateRaw(\"valueSum\", sum);\n\t\t\tthis.setPrivateRaw(\"valueAverage\", sum / count);\n\t\t\tthis.setPrivateRaw(\"valueAbsoluteSum\", absSum);\n\t\t}\n\t}\n\n\t/**\n\t * Shows hidden series.\n\t *\n\t * @param duration Animation duration in milliseconds\n\t * @return Animation promise\n\t */\n\tpublic async show(duration?: number): Promise<void> {\n\t\tlet promises: Array<Promise<any>> = [];\n\t\tpromises.push(super.show(duration))\n\n\t\tpromises.push(this._sequencedShowHide(true, duration));\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * Hide whole series.\n\t *\n\t * @param duration Animation duration in milliseconds\n\t * @return Animation promise\n\t */\n\tpublic async hide(duration?: number): Promise<void> {\n\t\tlet promises: Array<Promise<any>> = [];\n\t\tpromises.push(super.hide(duration))\n\n\t\tpromises.push(this._sequencedShowHide(false, duration));\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren();\n\t\tif (this._valuesDirty) {\n\t\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\t\tdataItem.get(\"label\").text.markDirtyText();\n\t\t\t});\n\t\t}\n\n\t\tif (this.isDirty(\"legendLabelText\") || this.isDirty(\"legendValueText\")) {\n\t\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\t\tthis.updateLegendValue(dataItem);\n\t\t\t});\n\t\t}\n\n\t\tthis._arrange();\n\t}\n\n\tprotected _arrange() {\n\t\tthis._arrangeDown(this._lLabels);\n\t\tthis._arrangeUp(this._lLabels);\n\n\t\tthis._arrangeDown(this._rLabels);\n\t\tthis._arrangeUp(this._rLabels);\n\n\t\tthis._arrangeLeft(this._hLabels);\n\t\tthis._arrangeRight(this._hLabels);\n\n\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\t}\n\n\n\tpublic _afterChanged() {\n\t\tsuper._afterChanged();\n\t\tthis._arrange();\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tif (dataItem.get(\"fill\") == null) {\n\t\t\tlet colors = this.get(\"colors\");\n\t\t\tif (colors) {\n\t\t\t\tdataItem.setRaw(\"fill\", colors.next());\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Shows series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = this.get(\"stateAnimationDuration\", 0);\n\t\t}\n\n\t\tconst easing = this.get(\"stateAnimationEasing\");\n\n\t\tlet value = dataItem.get(\"value\");\n\n\t\tconst animation = dataItem.animate({ key: \"valueWorking\", to: value, duration: duration, easing: easing });\n\t\tif (animation) {\n\t\t\tpromises.push(animation.waitForStop());\n\t\t}\n\n\t\tconst tick = dataItem.get(\"tick\");\n\t\tif (tick) {\n\t\t\tpromises.push(tick.show(duration));\n\t\t}\n\t\tconst label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tpromises.push(label.show(duration));\n\t\t}\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tpromises.push(slice.show(duration));\n\t\t}\n\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\t\tconst hiddenState = this.states.create(\"hidden\", {})\n\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = hiddenState.get(\"stateAnimationDuration\", this.get(\"stateAnimationDuration\", 0));\n\t\t}\n\n\t\tconst easing = hiddenState.get(\"stateAnimationEasing\", this.get(\"stateAnimationEasing\"));\n\n\t\tconst animation = dataItem.animate({ key: \"valueWorking\", to: 0, duration: duration, easing: easing });\n\t\tif (animation) {\n\t\t\tpromises.push(animation.waitForStop());\n\t\t}\n\n\t\tconst tick = dataItem.get(\"tick\");\n\t\tif (tick) {\n\t\t\tpromises.push(tick.hide(duration));\n\t\t}\n\t\tconst label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tpromises.push(label.hide(duration));\n\t\t}\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tslice.hideTooltip();\n\n\t\tif (slice) {\n\t\t\tpromises.push(slice.hide(duration));\n\t\t}\n\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\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\t\tlet tick = dataItem.get(\"tick\");\n\t\tif (tick) {\n\t\t\tthis.ticks.removeValue(tick);\n\t\t\ttick.dispose();\n\t\t}\n\t\tlet slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tthis.slices.removeValue(slice);\n\t\t\tslice.dispose();\n\t\t}\n\t}\n\n\t/**\n\t * Triggers hover on a series data item.\n\t *\n\t * @since 5.0.7\n\t * @param dataItem Target data item\n\t */\n\tpublic hoverDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice && !slice.isHidden()) {\n\t\t\tslice.hover();\n\t\t}\n\t}\n\n\t/**\n\t * Triggers un-hover on a series data item.\n\t *\n\t * @since 5.0.7\n\t * @param dataItem Target data item\n\t */\n\tpublic unhoverDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tslice.unhover();\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLegendMarker(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst slice = dataItem.get(\"slice\");\n\n\t\tif (slice) {\n\t\t\tconst legendDataItem = dataItem.get(\"legendDataItem\");\n\t\t\tif (legendDataItem) {\n\t\t\t\tconst markerRectangle = legendDataItem.get(\"markerRectangle\");\n\t\t\t\t$array.each(visualSettings, (setting: any) => {\n\t\t\t\t\tif (slice.get(setting) != null) {\n\t\t\t\t\t\tmarkerRectangle.set(setting, slice.get(setting));\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _arrangeDown(labels?: Array<{ label: Label, y: number }>) {\n\t\tif (labels) {\n\n\t\t\tlet next = this._getNextDown();\n\n\t\t\tlabels.sort((a, b) => {\n\t\t\t\tif (a.y > b.y) {\n\t\t\t\t\treturn 1;\n\t\t\t\t}\n\t\t\t\telse if (a.y < b.y) {\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(labels, (l) => {\n\t\t\t\tconst bounds = l.label.adjustedLocalBounds();\n\t\t\t\tlet labelTop = bounds.top;\n\t\t\t\tif (l.y + labelTop < next) {\n\t\t\t\t\tl.y = next - labelTop;\n\t\t\t\t}\n\t\t\t\tl.label.set(\"y\", l.y);\n\n\t\t\t\tnext = l.y + bounds.bottom;\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _getNextUp() {\n\t\treturn this.labelsContainer.maxHeight();\n\t}\n\n\tprotected _getNextDown() {\n\t\treturn 0;\n\t}\n\n\tprotected _arrangeUp(labels?: Array<{ label: Label, y: number }>) {\n\t\tif (labels) {\n\t\t\tlet next = this._getNextUp();\n\n\t\t\tlabels.sort((a, b) => {\n\t\t\t\tif (a.y < b.y) {\n\t\t\t\t\treturn 1;\n\t\t\t\t}\n\t\t\t\telse if (a.y > b.y) {\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(labels, (l) => {\n\t\t\t\tconst bounds = l.label.adjustedLocalBounds();\n\t\t\t\tlet labelBottom = bounds.bottom;\n\t\t\t\tif (l.y + labelBottom > next) {\n\t\t\t\t\tl.y = next - labelBottom;\n\t\t\t\t}\n\t\t\t\tl.label.set(\"y\", l.y);\n\t\t\t\tnext = l.y + bounds.top;\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _arrangeRight(labels?: Array<{ label: Label, y: number }>) {\n\t\tif (labels) {\n\n\t\t\tlet next = 0;\n\n\t\t\tlabels.sort((a, b) => {\n\t\t\t\tif (a.y > b.y) {\n\t\t\t\t\treturn 1;\n\t\t\t\t}\n\t\t\t\telse if (a.y < b.y) {\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(labels, (l) => {\n\t\t\t\tconst bounds = l.label.adjustedLocalBounds();\n\t\t\t\tlet labelLeft = bounds.left;\n\t\t\t\tif (l.y + labelLeft < next) {\n\t\t\t\t\tl.y = next - labelLeft;\n\t\t\t\t}\n\t\t\t\tl.label.set(\"x\", l.y);\n\n\t\t\t\tnext = l.y + bounds.right;\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _arrangeLeft(labels?: Array<{ label: Label, y: number }>) {\n\t\tif (labels) {\n\t\t\tlet next = this.labelsContainer.maxWidth();\n\n\t\t\tlabels.sort((a, b) => {\n\t\t\t\tif (a.y < b.y) {\n\t\t\t\t\treturn 1;\n\t\t\t\t}\n\t\t\t\telse if (a.y > b.y) {\n\t\t\t\t\treturn -1;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\treturn 0;\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(labels, (l) => {\n\t\t\t\tconst bounds = l.label.adjustedLocalBounds();\n\t\t\t\tlet labelRight = bounds.right;\n\t\t\t\tif (l.y + labelRight > next) {\n\t\t\t\t\tl.y = next - labelRight;\n\t\t\t\t}\n\t\t\t\tl.label.set(\"x\", l.y);\n\t\t\t\tnext = l.y + bounds.left;\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic _updateSize() {\n\t\tsuper._updateSize();\n\t\tthis.markDirty();\n\t}\n\n\tprotected _updateTick(_dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t}\n\n\tprotected _dispose() {\n\t\tsuper._dispose();\n\n\t\tconst chart = this.chart;\n\t\tif (chart) {\n\t\t\tchart.series.removeValue(this);\n\t\t}\n\t}\n\n\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"PieChart.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/pie/PieChart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAOpG,MAAM,WAAW,iBAAkB,SAAQ,qBAAqB;IAE/D;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAE1B;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAE/B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CAElB;AAED,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB;IAE7D;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CAEpB;AAED;;;;;GAKG;AACH,qBAAa,QAAS,SAAQ,YAAY;IAEzC,OAAc,SAAS,EAAE,MAAM,CAAc;IAC7C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAwD;IAEhF,SAAS,EAAE,iBAAiB,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,WAAW,EAAE,SAAS,CAAC;IAEtC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAK;IAEjC,SAAS,CAAC,SAAS;IAKZ,gBAAgB;IA4CvB;;;;;;;;OAQG;IACI,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM;IAoBzC;;;;;;;;OAQG;IACI,WAAW,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM;CAsB9C"}
1
+ {"version":3,"file":"PieChart.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/pie/PieChart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAOpG,MAAM,WAAW,iBAAkB,SAAQ,qBAAqB;IAE/D;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAE1B;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAE/B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CAElB;AAED,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB;IAE7D;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CAEpB;AAED;;;;;GAKG;AACH,qBAAa,QAAS,SAAQ,YAAY;IAEzC,OAAc,SAAS,EAAE,MAAM,CAAc;IAC7C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAwD;IAEhF,SAAS,EAAE,iBAAiB,CAAC;IAC7B,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,WAAW,EAAE,SAAS,CAAC;IAEtC,SAAS,CAAC,UAAU,EAAE,MAAM,CAAK;IAEjC,SAAS,CAAC,SAAS;IAKZ,gBAAgB;IAkDvB;;;;;;;;OAQG;IACI,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM;IAoBzC;;;;;;;;OAQG;IACI,WAAW,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM;CAsB9C"}
@@ -66,6 +66,11 @@ var PieChart = /** @class */ (function (_super) {
66
66
  series._markDirtyKey("startAngle");
67
67
  });
68
68
  }
69
+ if (this.isDirty("innerRadius") || this.isDirty("radius")) {
70
+ this.series.each(function (series) {
71
+ series._markDirtyKey("innerRadius");
72
+ });
73
+ }
69
74
  }
70
75
  });
71
76
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"PieChart.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/pie/PieChart.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PieSeries } from \"./PieSeries\";\n\nimport { Percent } from \"../../core/util/Percent\";\nimport { PercentChart, IPercentChartPrivate, IPercentChartSettings } from \"../percent/PercentChart\";\nimport { p50 } from \"../../core/util/Percent\";\n\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $math from \"../../core/util/Math\";\n\n\nexport interface IPieChartSettings extends IPercentChartSettings {\n\n\t/**\n\t * Outer radius of the pie chart.\n\t *\n\t * Can be set in fixed pixel value, or relative to chart container size in\n\t * percent.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/#Pie_radius} for more info\n\t * @default 80%\n\t */\n\tradius?: number | Percent;\n\n\t/**\n\t * Inner radius of the pie chart. Setting to any non-zero value will result\n\t * in a donut chart.\n\t *\n\t * Can be set in fixed pixel value, or relative to chart container size in\n\t * percent.\n\t *\n\t * Setting to negative number will mean pixels from outer radius.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/#Pie_radius} for more info\n\t */\n\tinnerRadius?: number | Percent;\n\n\t/**\n\t * A start angle of the chart in degrees.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/#Start_end_angles} for more info\n\t * @default -90\n\t */\n\tstartAngle?: number;\n\n\t/**\n\t * An end angle of the chart in degrees.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/#Start_end_angles} for more info\n\t * @default 270\n\t */\n\tendAngle?: number;\n\n}\n\nexport interface IPieChartPrivate extends IPercentChartPrivate {\n\n\t/**\n\t * @ignore\n\t */\n\tirModifyer?: number;\n\n}\n\n/**\n * Creates a pie chart.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/} for more info\n * @important\n */\nexport class PieChart extends PercentChart {\n\n\tpublic static className: string = \"PieChart\";\n\tpublic static classNames: Array<string> = PercentChart.classNames.concat([PieChart.className]);\n\n\tdeclare public _settings: IPieChartSettings;\n\tdeclare public _privateSettings: IPieChartPrivate;\n\tdeclare public _seriesType: PieSeries;\n\n\tprotected _maxRadius: number = 1;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis.seriesContainer.setAll({ x: p50, y: p50 });\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tconst chartContainer = this.chartContainer;\n\t\tconst w = chartContainer.innerWidth();\n\t\tconst h = chartContainer.innerHeight();\n\n\t\tconst startAngle = this.get(\"startAngle\", 0);\n\t\tconst endAngle = this.get(\"endAngle\", 0);\n\t\tconst innerRadius = this.get(\"innerRadius\");\n\n\n\t\tlet bounds = $math.getArcBounds(0, 0, startAngle, endAngle, 1);\n\n\t\tconst wr = w / (bounds.right - bounds.left);\n\t\tconst hr = h / (bounds.bottom - bounds.top);\n\n\t\tlet innerBounds = { left: 0, right: 0, top: 0, bottom: 0 };\n\n\t\tif (innerRadius instanceof Percent) {\n\t\t\tlet value = innerRadius.value;\n\t\t\tlet mr = Math.min(wr, hr);\n\t\t\tvalue = Math.max(mr * value, mr - Math.min(h, w)) / mr;\n\t\t\tinnerBounds = $math.getArcBounds(0, 0, startAngle, endAngle, value);\n\t\t\tthis.setPrivateRaw(\"irModifyer\", value / innerRadius.value);\n\t\t}\n\n\t\tbounds = $math.mergeBounds([bounds, innerBounds]);\n\n\t\tconst prevRadius = this._maxRadius;\n\t\tthis._maxRadius = Math.min(wr, hr);\n\n\t\tconst radius = $utils.relativeToValue(this.get(\"radius\", 0), this._maxRadius);\n\t\tthis.seriesContainer.setAll({\n\t\t\tdy: -radius * (bounds.bottom + bounds.top) / 2, dx: -radius * (bounds.right + bounds.left) / 2\n\t\t})\n\n\t\tif (this.isDirty(\"startAngle\") || this.isDirty(\"endAngle\") || prevRadius != this._maxRadius) {\n\t\t\tthis.series.each((series) => {\n\t\t\t\tseries._markDirtyKey(\"startAngle\");\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * Returns outer radius in pixels.\n\t *\n\t * If optional series parameter is passed in, it will return outer radius\n\t * of that particular series.\n\t *\n\t * @param series Series\n\t * @return Radius in pixels\n\t */\n\tpublic radius(series?: PieSeries): number {\n\n\t\tlet radius = $utils.relativeToValue(this.get(\"radius\", 0), this._maxRadius);\n\t\tlet innerRadius = $utils.relativeToValue(this.get(\"innerRadius\", 0), radius);\n\n\t\tif (series) {\n\t\t\tlet index = this.series.indexOf(series);\n\t\t\tlet length = this.series.length;\n\n\t\t\tlet seriesRadius = series.get(\"radius\");\n\t\t\tif (seriesRadius != null) {\n\t\t\t\treturn innerRadius + $utils.relativeToValue(seriesRadius, radius - innerRadius);\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn innerRadius + (radius - innerRadius) / length * (index + 1);\n\t\t\t}\n\t\t}\n\t\treturn radius;\n\t}\n\n\t/**\n\t * Returns inner radius in pixels.\n\t *\n\t * If optional series parameter is passed in, it will return inner radius\n\t * of that particular series.\n\t *\n\t * @param series Series\n\t * @return Radius in pixels\n\t */\n\tpublic innerRadius(series?: PieSeries): number {\n\t\tconst radius = this.radius();\n\t\tlet innerRadius = $utils.relativeToValue(this.get(\"innerRadius\", 0), radius);\n\n\t\tif (innerRadius < 0) {\n\t\t\tinnerRadius = radius + innerRadius;\n\t\t}\n\n\t\tif (series) {\n\t\t\tlet index = this.series.indexOf(series);\n\t\t\tlet length = this.series.length;\n\n\t\t\tlet seriesInnerRadius = series.get(\"innerRadius\");\n\t\t\tif (seriesInnerRadius != null) {\n\t\t\t\treturn innerRadius + $utils.relativeToValue(seriesInnerRadius, radius - innerRadius);\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn innerRadius + (radius - innerRadius) / length * index;\n\t\t\t}\n\t\t}\n\t\treturn innerRadius;\n\t}\n}\n"]}
1
+ {"version":3,"file":"PieChart.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/pie/PieChart.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PieSeries } from \"./PieSeries\";\n\nimport { Percent } from \"../../core/util/Percent\";\nimport { PercentChart, IPercentChartPrivate, IPercentChartSettings } from \"../percent/PercentChart\";\nimport { p50 } from \"../../core/util/Percent\";\n\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $math from \"../../core/util/Math\";\n\n\nexport interface IPieChartSettings extends IPercentChartSettings {\n\n\t/**\n\t * Outer radius of the pie chart.\n\t *\n\t * Can be set in fixed pixel value, or relative to chart container size in\n\t * percent.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/#Pie_radius} for more info\n\t * @default 80%\n\t */\n\tradius?: number | Percent;\n\n\t/**\n\t * Inner radius of the pie chart. Setting to any non-zero value will result\n\t * in a donut chart.\n\t *\n\t * Can be set in fixed pixel value, or relative to chart container size in\n\t * percent.\n\t *\n\t * Setting to negative number will mean pixels from outer radius.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/#Pie_radius} for more info\n\t */\n\tinnerRadius?: number | Percent;\n\n\t/**\n\t * A start angle of the chart in degrees.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/#Start_end_angles} for more info\n\t * @default -90\n\t */\n\tstartAngle?: number;\n\n\t/**\n\t * An end angle of the chart in degrees.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/#Start_end_angles} for more info\n\t * @default 270\n\t */\n\tendAngle?: number;\n\n}\n\nexport interface IPieChartPrivate extends IPercentChartPrivate {\n\n\t/**\n\t * @ignore\n\t */\n\tirModifyer?: number;\n\n}\n\n/**\n * Creates a pie chart.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/} for more info\n * @important\n */\nexport class PieChart extends PercentChart {\n\n\tpublic static className: string = \"PieChart\";\n\tpublic static classNames: Array<string> = PercentChart.classNames.concat([PieChart.className]);\n\n\tdeclare public _settings: IPieChartSettings;\n\tdeclare public _privateSettings: IPieChartPrivate;\n\tdeclare public _seriesType: PieSeries;\n\n\tprotected _maxRadius: number = 1;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis.seriesContainer.setAll({ x: p50, y: p50 });\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tconst chartContainer = this.chartContainer;\n\t\tconst w = chartContainer.innerWidth();\n\t\tconst h = chartContainer.innerHeight();\n\n\t\tconst startAngle = this.get(\"startAngle\", 0);\n\t\tconst endAngle = this.get(\"endAngle\", 0);\n\t\tconst innerRadius = this.get(\"innerRadius\");\n\n\n\t\tlet bounds = $math.getArcBounds(0, 0, startAngle, endAngle, 1);\n\n\t\tconst wr = w / (bounds.right - bounds.left);\n\t\tconst hr = h / (bounds.bottom - bounds.top);\n\n\t\tlet innerBounds = { left: 0, right: 0, top: 0, bottom: 0 };\n\n\t\tif (innerRadius instanceof Percent) {\n\t\t\tlet value = innerRadius.value;\n\t\t\tlet mr = Math.min(wr, hr);\n\t\t\tvalue = Math.max(mr * value, mr - Math.min(h, w)) / mr;\n\t\t\tinnerBounds = $math.getArcBounds(0, 0, startAngle, endAngle, value);\n\t\t\tthis.setPrivateRaw(\"irModifyer\", value / innerRadius.value);\n\t\t}\n\n\t\tbounds = $math.mergeBounds([bounds, innerBounds]);\n\n\t\tconst prevRadius = this._maxRadius;\n\t\tthis._maxRadius = Math.min(wr, hr);\n\n\t\tconst radius = $utils.relativeToValue(this.get(\"radius\", 0), this._maxRadius);\n\t\tthis.seriesContainer.setAll({\n\t\t\tdy: -radius * (bounds.bottom + bounds.top) / 2, dx: -radius * (bounds.right + bounds.left) / 2\n\t\t})\n\n\t\tif (this.isDirty(\"startAngle\") || this.isDirty(\"endAngle\") || prevRadius != this._maxRadius) {\n\t\t\tthis.series.each((series) => {\n\t\t\t\tseries._markDirtyKey(\"startAngle\");\n\t\t\t})\n\t\t}\n\n\t\tif(this.isDirty(\"innerRadius\") || this.isDirty(\"radius\")){\n\t\t\tthis.series.each((series) => {\n\t\t\t\tseries._markDirtyKey(\"innerRadius\");\n\t\t\t})\t\t\t\n\t\t}\n\t}\n\n\t/**\n\t * Returns outer radius in pixels.\n\t *\n\t * If optional series parameter is passed in, it will return outer radius\n\t * of that particular series.\n\t *\n\t * @param series Series\n\t * @return Radius in pixels\n\t */\n\tpublic radius(series?: PieSeries): number {\n\n\t\tlet radius = $utils.relativeToValue(this.get(\"radius\", 0), this._maxRadius);\n\t\tlet innerRadius = $utils.relativeToValue(this.get(\"innerRadius\", 0), radius);\n\n\t\tif (series) {\n\t\t\tlet index = this.series.indexOf(series);\n\t\t\tlet length = this.series.length;\n\n\t\t\tlet seriesRadius = series.get(\"radius\");\n\t\t\tif (seriesRadius != null) {\n\t\t\t\treturn innerRadius + $utils.relativeToValue(seriesRadius, radius - innerRadius);\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn innerRadius + (radius - innerRadius) / length * (index + 1);\n\t\t\t}\n\t\t}\n\t\treturn radius;\n\t}\n\n\t/**\n\t * Returns inner radius in pixels.\n\t *\n\t * If optional series parameter is passed in, it will return inner radius\n\t * of that particular series.\n\t *\n\t * @param series Series\n\t * @return Radius in pixels\n\t */\n\tpublic innerRadius(series?: PieSeries): number {\n\t\tconst radius = this.radius();\n\t\tlet innerRadius = $utils.relativeToValue(this.get(\"innerRadius\", 0), radius);\n\n\t\tif (innerRadius < 0) {\n\t\t\tinnerRadius = radius + innerRadius;\n\t\t}\n\n\t\tif (series) {\n\t\t\tlet index = this.series.indexOf(series);\n\t\t\tlet length = this.series.length;\n\n\t\t\tlet seriesInnerRadius = series.get(\"innerRadius\");\n\t\t\tif (seriesInnerRadius != null) {\n\t\t\t\treturn innerRadius + $utils.relativeToValue(seriesInnerRadius, radius - innerRadius);\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn innerRadius + (radius - innerRadius) / length * index;\n\t\t\t}\n\t\t}\n\t\treturn innerRadius;\n\t}\n}\n"]}
@@ -5,6 +5,7 @@ import { Slice } from "../../core/render/Slice";
5
5
  import { RadialLabel } from "../../core/render/RadialLabel";
6
6
  import { ListTemplate } from "../../core/util/List";
7
7
  import { Percent } from "../../core/util/Percent";
8
+ import type { Bullet } from "../../core/render/Bullet";
8
9
  export interface IPieSeriesDataItem extends IPercentSeriesDataItem {
9
10
  slice: Slice;
10
11
  label: RadialLabel;
@@ -62,5 +63,6 @@ export declare class PieSeries extends PercentSeries {
62
63
  protected _getNextDown(): number;
63
64
  _prepareChildren(): void;
64
65
  protected _updateTick(dataItem: DataItem<this["_dataItemSettings"]>): void;
66
+ _positionBullet(bullet: Bullet): void;
65
67
  }
66
68
  //# sourceMappingURL=PieSeries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PieSeries.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/pie/PieSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEhI,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAQ,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAMxD,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;IACjE,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,WAAW,CAAC;CACnB;AAED,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;IAEjE;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAE1B;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAE/B;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CAElB;AAED,MAAM,WAAW,iBAAkB,SAAQ,qBAAqB;IAE/D;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAEhB;AAED;;;;;GAKG;AACH,qBAAa,SAAU,SAAQ,aAAa;IAE5B,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAC;IAE3C,OAAc,SAAS,EAAE,MAAM,CAAe;IAC9C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA0D;IAElF,SAAS,EAAE,kBAAkB,CAAC;IAC9B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,iBAAiB,EAAE,kBAAkB,CAAC;IAEtC,UAAU,EAAE,KAAK,CAAC;IAClB,UAAU,EAAE,WAAW,CAAC;IAEvC,SAAS,CAAC,WAAW,IAAI,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IASzD,SAAS,CAAC,WAAW,IAAI,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IASzD,SAAS,CAAC,UAAU,IAAI,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IASvD,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IA4BvE,SAAS,CAAC,UAAU;IAIpB,SAAS,CAAC,YAAY;IAIf,gBAAgB;IA+FvB,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;CAoCnE"}
1
+ {"version":3,"file":"PieSeries.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/pie/PieSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEhI,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAQ,OAAO,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAMvD,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;IACjE,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,WAAW,CAAC;CACnB;AAED,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;IAEjE;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAE1B;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAE/B;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CAElB;AAED,MAAM,WAAW,iBAAkB,SAAQ,qBAAqB;IAE/D;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAEhB;AAED;;;;;GAKG;AACH,qBAAa,SAAU,SAAQ,aAAa;IAE5B,KAAK,EAAE,QAAQ,GAAG,SAAS,CAAC;IAE3C,OAAc,SAAS,EAAE,MAAM,CAAe;IAC9C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA0D;IAElF,SAAS,EAAE,kBAAkB,CAAC;IAC9B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,iBAAiB,EAAE,kBAAkB,CAAC;IAEtC,UAAU,EAAE,KAAK,CAAC;IAClB,UAAU,EAAE,WAAW,CAAC;IAEvC,SAAS,CAAC,WAAW,IAAI,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IASzD,SAAS,CAAC,WAAW,IAAI,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IASzD,SAAS,CAAC,UAAU,IAAI,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IASvD,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IA4BvE,SAAS,CAAC,UAAU;IAIpB,SAAS,CAAC,YAAY;IAIf,gBAAgB;IA+FvB,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAqC5D,eAAe,CAAC,MAAM,EAAE,MAAM;CAsBrC"}
@@ -216,6 +216,29 @@ var PieSeries = /** @class */ (function (_super) {
216
216
  }
217
217
  }
218
218
  });
219
+ Object.defineProperty(PieSeries.prototype, "_positionBullet", {
220
+ enumerable: false,
221
+ configurable: true,
222
+ writable: true,
223
+ value: function (bullet) {
224
+ var sprite = bullet.get("sprite");
225
+ if (sprite) {
226
+ var dataItem = sprite.dataItem;
227
+ var slice = dataItem.get("slice");
228
+ if (slice) {
229
+ var innerRadius = slice.get("innerRadius", 0);
230
+ var radius = slice.get("radius", 0);
231
+ var startAngle = slice.get("startAngle", 0);
232
+ var arc = slice.get("arc", 0);
233
+ var locationX = bullet.get("locationX", 0.5);
234
+ var locationY = bullet.get("locationY", 0.5);
235
+ var angle = startAngle + arc * locationX;
236
+ var r = innerRadius + (radius - innerRadius) * locationY;
237
+ sprite.setAll({ x: $math.cos(angle) * r, y: $math.sin(angle) * r });
238
+ }
239
+ }
240
+ }
241
+ });
219
242
  Object.defineProperty(PieSeries, "className", {
220
243
  enumerable: true,
221
244
  configurable: true,
@@ -1 +1 @@
1
- {"version":3,"file":"PieSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/pie/PieSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { PieChart } from \"./PieChart\";\n\nimport { PercentSeries, IPercentSeriesSettings, IPercentSeriesDataItem, IPercentSeriesPrivate } from \"../percent/PercentSeries\";\nimport { Template } from \"../../core/util/Template\";\nimport { Slice } from \"../../core/render/Slice\";\nimport { Tick } from \"../../core/render/Tick\";\nimport { RadialLabel } from \"../../core/render/RadialLabel\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { p100, Percent } from \"../../core/util/Percent\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $math from \"../../core/util/Math\";\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface IPieSeriesDataItem extends IPercentSeriesDataItem {\n\tslice: Slice;\n\tlabel: RadialLabel;\n}\n\nexport interface IPieSeriesSettings extends IPercentSeriesSettings {\n\n\t/**\n\t * Radius of the series in pixels or percent.\n\t */\n\tradius?: Percent | number;\n\n\t/**\n\t * Radius of the series in pixels or percent.\n\t *\n\t * Setting to negative number will mean pixels from outer radius.\n\t */\n\tinnerRadius?: Percent | number;\n\n\t/**\n\t * Start angle of the series in degrees.\n\t *\n\t * @default -90\n\t */\n\tstartAngle?: number;\n\n\t/**\n\t * End angle of the series in degrees.\n\t *\n\t * @default 270\n\t */\n\tendAngle?: number;\n\n}\n\nexport interface IPieSeriesPrivate extends IPercentSeriesPrivate {\n\n\t/**\n\t * Actual radius of the series in pixels.\n\t */\n\tradius?: number;\n\n}\n\n/**\n * Creates a series for a [[PieChart]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/} for more info\n * @important\n */\nexport class PieSeries extends PercentSeries {\n\n\tdeclare public chart: PieChart | undefined;\n\n\tpublic static className: string = \"PieSeries\";\n\tpublic static classNames: Array<string> = PercentSeries.classNames.concat([PieSeries.className]);\n\n\tdeclare public _settings: IPieSeriesSettings;\n\tdeclare public _privateSettings: IPieSeriesPrivate;\n\tdeclare public _dataItemSettings: IPieSeriesDataItem;\n\n\tdeclare public _sliceType: Slice;\n\tdeclare public _labelType: RadialLabel;\n\n\tprotected _makeSlices(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Slice._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.slices.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.slices.template]),\n\t\t);\n\t}\n\n\tprotected _makeLabels(): ListTemplate<this[\"_labelType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => RadialLabel._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.labels.template]),\n\t\t);\n\t}\n\n\tprotected _makeTicks(): ListTemplate<this[\"_tickType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Tick._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.ticks.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.ticks.template]),\n\t\t);\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst slice = this.makeSlice(dataItem);\n\n\t\tslice.on(\"scale\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\t\tslice.on(\"shiftRadius\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tconst label = this.makeLabel(dataItem);\n\n\t\tlabel.events.on(\"positionchanged\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tthis.makeTick(dataItem);\n\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tlabel.markDirty();\n\t\t})\n\t}\n\n\tprotected _getNextUp() {\n\t\treturn this.labelsContainer.maxHeight() / 2;\n\t}\n\n\tprotected _getNextDown() {\n\t\treturn -this.labelsContainer.maxHeight() / 2;\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\t\tconst chart = this.chart;\n\t\tif (chart) {\n\n\t\t\tif (this.isDirty(\"alignLabels\")) {\n\t\t\t\tlet labelsTemplate = this.labels.template;\n\n\t\t\t\tif (this.get(\"alignLabels\")) {\n\t\t\t\t\tlabelsTemplate.set(\"textType\", \"aligned\");\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tlet textType = labelsTemplate.get(\"textType\");\n\t\t\t\t\tif (textType == null || textType == \"aligned\") {\n\t\t\t\t\t\tlabelsTemplate.set(\"textType\", \"adjusted\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t\tif (this._valuesDirty || this.isDirty(\"radius\") || this.isDirty(\"innerRadius\") || this.isDirty(\"startAngle\") || this.isDirty(\"endAngle\") || this.isDirty(\"alignLabels\")) {\n\t\t\t\tthis.markDirtyBounds();\n\t\t\t\tconst startAngle = this.get(\"startAngle\", chart.get(\"startAngle\", -90));\n\t\t\t\tconst endAngle = this.get(\"endAngle\", chart.get(\"endAngle\", 270));\n\t\t\t\tconst arc = endAngle - startAngle;\n\t\t\t\tlet currentAngle = startAngle;\n\n\t\t\t\tconst radius = chart.radius(this);\n\t\t\t\tthis.setPrivateRaw(\"radius\", radius);\n\t\t\t\tlet innerRadius = chart.innerRadius(this) * chart.getPrivate(\"irModifyer\", 1);\n\n\t\t\t\tif (innerRadius < 0) {\n\t\t\t\t\tinnerRadius = radius + innerRadius;\n\t\t\t\t}\n\n\t\t\t\tif (radius > 0) {\n\t\t\t\t\t$array.each(this._dataItems, (dataItem) => {\n\n\t\t\t\t\t\tthis.updateLegendValue(dataItem);\n\n\t\t\t\t\t\tlet currentArc = arc * dataItem.get(\"valuePercentTotal\") / 100;\n\t\t\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\t\t\tif (slice) {\n\t\t\t\t\t\t\tslice.set(\"radius\", radius);\n\t\t\t\t\t\t\tslice.set(\"innerRadius\", innerRadius);\n\t\t\t\t\t\t\tslice.set(\"startAngle\", currentAngle);\n\n\t\t\t\t\t\t\tslice.set(\"arc\", currentArc);\n\n\t\t\t\t\t\t\tconst color = dataItem.get(\"fill\");\n\t\t\t\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\t\t\t\tslice._setDefault(\"stroke\", color);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet middleAngle = $math.normalizeAngle(currentAngle + currentArc / 2);\n\n\t\t\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\t\t\tif (label) {\n\t\t\t\t\t\t\tlabel.setPrivate(\"radius\", radius);\n\t\t\t\t\t\t\tlabel.setPrivate(\"innerRadius\", innerRadius);\n\t\t\t\t\t\t\tlabel.set(\"labelAngle\", middleAngle);\n\n\t\t\t\t\t\t\tif (label.get(\"textType\") == \"aligned\") {\n\t\t\t\t\t\t\t\tlet labelRadius = radius + label.get(\"radius\", 0);\n\t\t\t\t\t\t\t\tlet y = radius * $math.sin(middleAngle);\n\n\t\t\t\t\t\t\t\tif (middleAngle > 90 && middleAngle <= 270) {\n\t\t\t\t\t\t\t\t\tif (!label.isHidden() && !label.isHiding()) {\n\t\t\t\t\t\t\t\t\t\tthis._lLabels.push({ label: label, y: y });\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabelRadius *= -1;\n\t\t\t\t\t\t\t\t\tlabelRadius -= this.labelsContainer.get(\"paddingLeft\", 0);\n\t\t\t\t\t\t\t\t\tlabel.set(\"centerX\", p100);\n\t\t\t\t\t\t\t\t\tlabel.setPrivateRaw(\"left\", true);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\tif (!label.isHidden() && !label.isHiding()) {\n\t\t\t\t\t\t\t\t\t\tthis._rLabels.push({ label: label, y: y });\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabelRadius += this.labelsContainer.get(\"paddingRight\", 0);\n\t\t\t\t\t\t\t\t\tlabel.set(\"centerX\", 0);\n\t\t\t\t\t\t\t\t\tlabel.setPrivateRaw(\"left\", false);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tlabel.set(\"x\", labelRadius);\n\t\t\t\t\t\t\t\tlabel.set(\"y\", radius * $math.sin(middleAngle));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcurrentAngle += currentArc;\n\t\t\t\t\t\tthis._updateTick(dataItem);\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _updateTick(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst tick = dataItem.get(\"tick\");\n\t\tconst label = dataItem.get(\"label\");\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tconst location = tick.get(\"location\", 1);\n\t\tif (tick && label && slice) {\n\t\t\tconst radius = (slice.get(\"shiftRadius\", 0) + slice.get(\"radius\", 0)) * slice.get(\"scale\", 1) * location;\n\t\t\tconst labelAngle = label.get(\"labelAngle\", 0);\n\t\t\tconst cos = $math.cos(labelAngle);\n\t\t\tconst sin = $math.sin(labelAngle);\n\n\t\t\tconst labelsContainer = this.labelsContainer;\n\t\t\tconst pl = labelsContainer.get(\"paddingLeft\", 0);\n\t\t\tconst pr = labelsContainer.get(\"paddingRight\", 0);\n\n\t\t\tlet x = 0;\n\t\t\tlet y = 0;\n\n\t\t\tx = label.x();\n\t\t\ty = label.y();\n\n\t\t\tif (label.get(\"textType\") == \"circular\") {\n\t\t\t\tconst labelRadius = label.radius() - label.get(\"paddingBottom\", 0);\n\t\t\t\tconst labelAngle = label.get(\"labelAngle\", 0);\n\t\t\t\tx = labelRadius * $math.cos(labelAngle);\n\t\t\t\ty = labelRadius * $math.sin(labelAngle);\n\t\t\t}\n\n\t\t\tlet dx = -pr;\n\t\t\tif (label.getPrivate(\"left\")) {\n\t\t\t\tdx = pl;\n\t\t\t}\n\n\t\t\ttick.set(\"points\", [{ x: slice.x() + radius * cos, y: slice.y() + radius * sin }, { x: x + dx, y: y }, { x: x, y: y }]);\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"PieSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/pie/PieSeries.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,aAAa,EAAyE,MAAM,0BAA0B,CAAC;AAChI,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAW,MAAM,yBAAyB,CAAC;AAGxD,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AA8ChD;;;;;GAKG;AACH;IAA+B,6BAAa;IAA5C;;IAuOA,CAAC;;;;;eAzNA;YAAA,iBAOC;YANA,OAAO,IAAI,YAAY,CACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAChB,cAAM,OAAA,KAAK,CAAC,IAAI,CAAC,KAAI,CAAC,KAAK,EAAE;gBAC5B,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;aACzF,EAAE,CAAC,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAFpB,CAEoB,CAC1B,CAAC;QACH,CAAC;;;;;;eAED;YAAA,iBAOC;YANA,OAAO,IAAI,YAAY,CACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAChB,cAAM,OAAA,WAAW,CAAC,IAAI,CAAC,KAAI,CAAC,KAAK,EAAE;gBAClC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;aACzF,EAAE,CAAC,KAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAFpB,CAEoB,CAC1B,CAAC;QACH,CAAC;;;;;;eAED;YAAA,iBAOC;YANA,OAAO,IAAI,YAAY,CACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAChB,cAAM,OAAA,IAAI,CAAC,IAAI,CAAC,KAAI,CAAC,KAAK,EAAE;gBAC3B,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;aACxF,EAAE,CAAC,KAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAFnB,CAEmB,CACzB,CAAC;QACH,CAAC;;;;;;eAED,UAA0B,QAA6C;YAAvE,iBA0BC;YAzBA,iBAAM,eAAe,YAAC,QAAQ,CAAC,CAAC;YAEhC,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAEvC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE;gBACjB,KAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAA;YACF,KAAK,CAAC,EAAE,CAAC,aAAa,EAAE;gBACvB,KAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAA;YACF,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,EAAE;gBAClC,KAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAA;YAEF,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAEvC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,EAAE;gBAClC,KAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAExB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,EAAE;gBAClC,KAAK,CAAC,SAAS,EAAE,CAAC;YACnB,CAAC,CAAC,CAAA;QACH,CAAC;;;;;;eAED;YACC,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC7C,CAAC;;;;;;eAED;YACC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAC9C,CAAC;;;;;;eAED;YAAA,iBA6FC;YA5FA,iBAAM,gBAAgB,WAAE,CAAC;YACzB,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACzB,IAAI,KAAK,EAAE;gBAEV,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;oBAChC,IAAI,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;oBAE1C,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;wBAC5B,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;qBAC1C;yBACI;wBACJ,IAAI,QAAQ,GAAG,cAAc,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;wBAC9C,IAAI,QAAQ,IAAI,IAAI,IAAI,QAAQ,IAAI,SAAS,EAAE;4BAC9C,cAAc,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;yBAC3C;qBACD;iBACD;gBAGD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;oBACxK,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvB,IAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBACxE,IAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;oBAClE,IAAM,KAAG,GAAG,QAAQ,GAAG,UAAU,CAAC;oBAClC,IAAI,cAAY,GAAG,UAAU,CAAC;oBAE9B,IAAM,QAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAClC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAM,CAAC,CAAC;oBACrC,IAAI,aAAW,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;oBAE9E,IAAI,aAAW,GAAG,CAAC,EAAE;wBACpB,aAAW,GAAG,QAAM,GAAG,aAAW,CAAC;qBACnC;oBAED,IAAI,QAAM,GAAG,CAAC,EAAE;wBACf,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAC,QAAQ;4BAErC,KAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;4BAEjC,IAAI,UAAU,GAAG,KAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,GAAG,CAAC;4BAC/D,IAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BACpC,IAAI,KAAK,EAAE;gCACV,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAM,CAAC,CAAC;gCAC5B,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,aAAW,CAAC,CAAC;gCACtC,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,cAAY,CAAC,CAAC;gCAEtC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;gCAE7B,IAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gCACnC,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gCACjC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;6BACnC;4BAED,IAAI,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,cAAY,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC;4BAEtE,IAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BACpC,IAAI,KAAK,EAAE;gCACV,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,QAAM,CAAC,CAAC;gCACnC,KAAK,CAAC,UAAU,CAAC,aAAa,EAAE,aAAW,CAAC,CAAC;gCAC7C,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;gCAErC,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,SAAS,EAAE;oCACvC,IAAI,WAAW,GAAG,QAAM,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;oCAClD,IAAI,CAAC,GAAG,QAAM,GAAG,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oCAExC,IAAI,WAAW,GAAG,EAAE,IAAI,WAAW,IAAI,GAAG,EAAE;wCAC3C,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE;4CAC3C,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;yCAC3C;wCACD,WAAW,IAAI,CAAC,CAAC,CAAC;wCAClB,WAAW,IAAI,KAAI,CAAC,eAAe,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;wCAC1D,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;wCAC3B,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;qCAClC;yCACI;wCACJ,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE;4CAC3C,KAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;yCAC3C;wCACD,WAAW,IAAI,KAAI,CAAC,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;wCAC3D,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;wCACxB,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;qCACnC;oCACD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;oCAC5B,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,QAAM,GAAG,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;iCAChD;6BACD;4BACD,cAAY,IAAI,UAAU,CAAC;4BAC3B,KAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;wBAC5B,CAAC,CAAC,CAAA;qBACF;iBACD;aACD;QACF,CAAC;;;;;;eAED,UAAsB,QAA6C;YAClE,IAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAClC,IAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpC,IAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpC,IAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YACzC,IAAI,IAAI,IAAI,KAAK,IAAI,KAAK,EAAE;gBAC3B,IAAM,MAAM,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC;gBACzG,IAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBAC9C,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAClC,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAElC,IAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;gBAC7C,IAAM,EAAE,GAAG,eAAe,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;gBACjD,IAAM,EAAE,GAAG,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;gBAElD,IAAI,CAAC,GAAG,CAAC,CAAC;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;gBAEV,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;gBACd,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;gBAEd,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,UAAU,EAAE;oBACxC,IAAM,WAAW,GAAG,KAAK,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;oBACnE,IAAM,YAAU,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;oBAC9C,CAAC,GAAG,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,YAAU,CAAC,CAAC;oBACxC,CAAC,GAAG,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,YAAU,CAAC,CAAC;iBACxC;gBAED,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;gBACb,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;oBAC7B,EAAE,GAAG,EAAE,CAAC;iBACR;gBAED,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,MAAM,GAAG,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;aACxH;QACF,CAAC;;;;;;eAED,UAAuB,MAAc;YAEpC,IAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACpC,IAAI,MAAM,EAAE;gBACX,IAAM,QAAQ,GAAG,MAAM,CAAC,QAA+C,CAAC;gBACxE,IAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAEpC,IAAI,KAAK,EAAE;oBACV,IAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;oBAChD,IAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;oBACtC,IAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;oBAC9C,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBAChC,IAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;oBAC/C,IAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;oBAE/C,IAAM,KAAK,GAAG,UAAU,GAAG,GAAG,GAAG,SAAS,CAAC;oBAC3C,IAAM,CAAC,GAAG,WAAW,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,SAAS,CAAC;oBAE3D,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;iBACpE;aACD;QACF,CAAC;;IAlOD;;;;eAAkC,WAAW;OAAC;IAC9C;;;;eAA0C,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;OAAC;IAkOlG,gBAAC;CAAA,AAvOD,CAA+B,aAAa,GAuO3C;SAvOY,SAAS","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { PieChart } from \"./PieChart\";\n\nimport { PercentSeries, IPercentSeriesSettings, IPercentSeriesDataItem, IPercentSeriesPrivate } from \"../percent/PercentSeries\";\nimport { Template } from \"../../core/util/Template\";\nimport { Slice } from \"../../core/render/Slice\";\nimport { Tick } from \"../../core/render/Tick\";\nimport { RadialLabel } from \"../../core/render/RadialLabel\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { p100, Percent } from \"../../core/util/Percent\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $math from \"../../core/util/Math\";\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface IPieSeriesDataItem extends IPercentSeriesDataItem {\n\tslice: Slice;\n\tlabel: RadialLabel;\n}\n\nexport interface IPieSeriesSettings extends IPercentSeriesSettings {\n\n\t/**\n\t * Radius of the series in pixels or percent.\n\t */\n\tradius?: Percent | number;\n\n\t/**\n\t * Radius of the series in pixels or percent.\n\t *\n\t * Setting to negative number will mean pixels from outer radius.\n\t */\n\tinnerRadius?: Percent | number;\n\n\t/**\n\t * Start angle of the series in degrees.\n\t *\n\t * @default -90\n\t */\n\tstartAngle?: number;\n\n\t/**\n\t * End angle of the series in degrees.\n\t *\n\t * @default 270\n\t */\n\tendAngle?: number;\n\n}\n\nexport interface IPieSeriesPrivate extends IPercentSeriesPrivate {\n\n\t/**\n\t * Actual radius of the series in pixels.\n\t */\n\tradius?: number;\n\n}\n\n/**\n * Creates a series for a [[PieChart]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/} for more info\n * @important\n */\nexport class PieSeries extends PercentSeries {\n\n\tdeclare public chart: PieChart | undefined;\n\n\tpublic static className: string = \"PieSeries\";\n\tpublic static classNames: Array<string> = PercentSeries.classNames.concat([PieSeries.className]);\n\n\tdeclare public _settings: IPieSeriesSettings;\n\tdeclare public _privateSettings: IPieSeriesPrivate;\n\tdeclare public _dataItemSettings: IPieSeriesDataItem;\n\n\tdeclare public _sliceType: Slice;\n\tdeclare public _labelType: RadialLabel;\n\n\tprotected _makeSlices(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Slice._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.slices.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.slices.template]),\n\t\t);\n\t}\n\n\tprotected _makeLabels(): ListTemplate<this[\"_labelType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => RadialLabel._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.labels.template]),\n\t\t);\n\t}\n\n\tprotected _makeTicks(): ListTemplate<this[\"_tickType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Tick._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.ticks.template.get(\"themeTags\", []), [\"pie\", \"series\"])\n\t\t\t}, [this.ticks.template]),\n\t\t);\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst slice = this.makeSlice(dataItem);\n\n\t\tslice.on(\"scale\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\t\tslice.on(\"shiftRadius\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tconst label = this.makeLabel(dataItem);\n\n\t\tlabel.events.on(\"positionchanged\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tthis.makeTick(dataItem);\n\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tlabel.markDirty();\n\t\t})\n\t}\n\n\tprotected _getNextUp() {\n\t\treturn this.labelsContainer.maxHeight() / 2;\n\t}\n\n\tprotected _getNextDown() {\n\t\treturn -this.labelsContainer.maxHeight() / 2;\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\t\tconst chart = this.chart;\n\t\tif (chart) {\n\n\t\t\tif (this.isDirty(\"alignLabels\")) {\n\t\t\t\tlet labelsTemplate = this.labels.template;\n\n\t\t\t\tif (this.get(\"alignLabels\")) {\n\t\t\t\t\tlabelsTemplate.set(\"textType\", \"aligned\");\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tlet textType = labelsTemplate.get(\"textType\");\n\t\t\t\t\tif (textType == null || textType == \"aligned\") {\n\t\t\t\t\t\tlabelsTemplate.set(\"textType\", \"adjusted\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\n\t\t\tif (this._valuesDirty || this.isDirty(\"radius\") || this.isDirty(\"innerRadius\") || this.isDirty(\"startAngle\") || this.isDirty(\"endAngle\") || this.isDirty(\"alignLabels\")) {\n\t\t\t\tthis.markDirtyBounds();\n\t\t\t\tconst startAngle = this.get(\"startAngle\", chart.get(\"startAngle\", -90));\n\t\t\t\tconst endAngle = this.get(\"endAngle\", chart.get(\"endAngle\", 270));\n\t\t\t\tconst arc = endAngle - startAngle;\n\t\t\t\tlet currentAngle = startAngle;\n\n\t\t\t\tconst radius = chart.radius(this);\n\t\t\t\tthis.setPrivateRaw(\"radius\", radius);\n\t\t\t\tlet innerRadius = chart.innerRadius(this) * chart.getPrivate(\"irModifyer\", 1);\n\n\t\t\t\tif (innerRadius < 0) {\n\t\t\t\t\tinnerRadius = radius + innerRadius;\n\t\t\t\t}\n\n\t\t\t\tif (radius > 0) {\n\t\t\t\t\t$array.each(this._dataItems, (dataItem) => {\n\n\t\t\t\t\t\tthis.updateLegendValue(dataItem);\n\n\t\t\t\t\t\tlet currentArc = arc * dataItem.get(\"valuePercentTotal\") / 100;\n\t\t\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\t\t\tif (slice) {\n\t\t\t\t\t\t\tslice.set(\"radius\", radius);\n\t\t\t\t\t\t\tslice.set(\"innerRadius\", innerRadius);\n\t\t\t\t\t\t\tslice.set(\"startAngle\", currentAngle);\n\n\t\t\t\t\t\t\tslice.set(\"arc\", currentArc);\n\n\t\t\t\t\t\t\tconst color = dataItem.get(\"fill\");\n\t\t\t\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\t\t\t\tslice._setDefault(\"stroke\", color);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet middleAngle = $math.normalizeAngle(currentAngle + currentArc / 2);\n\n\t\t\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\t\t\tif (label) {\n\t\t\t\t\t\t\tlabel.setPrivate(\"radius\", radius);\n\t\t\t\t\t\t\tlabel.setPrivate(\"innerRadius\", innerRadius);\n\t\t\t\t\t\t\tlabel.set(\"labelAngle\", middleAngle);\n\n\t\t\t\t\t\t\tif (label.get(\"textType\") == \"aligned\") {\n\t\t\t\t\t\t\t\tlet labelRadius = radius + label.get(\"radius\", 0);\n\t\t\t\t\t\t\t\tlet y = radius * $math.sin(middleAngle);\n\n\t\t\t\t\t\t\t\tif (middleAngle > 90 && middleAngle <= 270) {\n\t\t\t\t\t\t\t\t\tif (!label.isHidden() && !label.isHiding()) {\n\t\t\t\t\t\t\t\t\t\tthis._lLabels.push({ label: label, y: y });\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabelRadius *= -1;\n\t\t\t\t\t\t\t\t\tlabelRadius -= this.labelsContainer.get(\"paddingLeft\", 0);\n\t\t\t\t\t\t\t\t\tlabel.set(\"centerX\", p100);\n\t\t\t\t\t\t\t\t\tlabel.setPrivateRaw(\"left\", true);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\tif (!label.isHidden() && !label.isHiding()) {\n\t\t\t\t\t\t\t\t\t\tthis._rLabels.push({ label: label, y: y });\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tlabelRadius += this.labelsContainer.get(\"paddingRight\", 0);\n\t\t\t\t\t\t\t\t\tlabel.set(\"centerX\", 0);\n\t\t\t\t\t\t\t\t\tlabel.setPrivateRaw(\"left\", false);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tlabel.set(\"x\", labelRadius);\n\t\t\t\t\t\t\t\tlabel.set(\"y\", radius * $math.sin(middleAngle));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tcurrentAngle += currentArc;\n\t\t\t\t\t\tthis._updateTick(dataItem);\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _updateTick(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst tick = dataItem.get(\"tick\");\n\t\tconst label = dataItem.get(\"label\");\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tconst location = tick.get(\"location\", 1);\n\t\tif (tick && label && slice) {\n\t\t\tconst radius = (slice.get(\"shiftRadius\", 0) + slice.get(\"radius\", 0)) * slice.get(\"scale\", 1) * location;\n\t\t\tconst labelAngle = label.get(\"labelAngle\", 0);\n\t\t\tconst cos = $math.cos(labelAngle);\n\t\t\tconst sin = $math.sin(labelAngle);\n\n\t\t\tconst labelsContainer = this.labelsContainer;\n\t\t\tconst pl = labelsContainer.get(\"paddingLeft\", 0);\n\t\t\tconst pr = labelsContainer.get(\"paddingRight\", 0);\n\n\t\t\tlet x = 0;\n\t\t\tlet y = 0;\n\n\t\t\tx = label.x();\n\t\t\ty = label.y();\n\n\t\t\tif (label.get(\"textType\") == \"circular\") {\n\t\t\t\tconst labelRadius = label.radius() - label.get(\"paddingBottom\", 0);\n\t\t\t\tconst labelAngle = label.get(\"labelAngle\", 0);\n\t\t\t\tx = labelRadius * $math.cos(labelAngle);\n\t\t\t\ty = labelRadius * $math.sin(labelAngle);\n\t\t\t}\n\n\t\t\tlet dx = -pr;\n\t\t\tif (label.getPrivate(\"left\")) {\n\t\t\t\tdx = pl;\n\t\t\t}\n\n\t\t\ttick.set(\"points\", [{ x: slice.x() + radius * cos, y: slice.y() + radius * sin }, { x: x + dx, y: y }, { x: x, y: y }]);\n\t\t}\n\t}\n\n\tpublic _positionBullet(bullet: Bullet) {\n\n\t\tconst sprite = bullet.get(\"sprite\");\n\t\tif (sprite) {\n\t\t\tconst dataItem = sprite.dataItem as DataItem<this[\"_dataItemSettings\"]>;\n\t\t\tconst slice = dataItem.get(\"slice\");\n\n\t\t\tif (slice) {\n\t\t\t\tconst innerRadius = slice.get(\"innerRadius\", 0);\n\t\t\t\tconst radius = slice.get(\"radius\", 0);\n\t\t\t\tconst startAngle = slice.get(\"startAngle\", 0);\n\t\t\t\tconst arc = slice.get(\"arc\", 0);\n\t\t\t\tconst locationX = bullet.get(\"locationX\", 0.5);\n\t\t\t\tconst locationY = bullet.get(\"locationY\", 0.5);\n\n\t\t\t\tconst angle = startAngle + arc * locationX;\n\t\t\t\tconst r = innerRadius + (radius - innerRadius) * locationY;\n\n\t\t\t\tsprite.setAll({ x: $math.cos(angle) * r, y: $math.sin(angle) * r });\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -64,10 +64,16 @@ export interface IXYChartSettings extends ISerialChartSettings {
64
64
  */
65
65
  cursor?: XYCursor;
66
66
  /**
67
- * Indicates maximum distance from pointer (moust or touch) to points
68
- * tooltips need to be shown for.
67
+ * If not set (default), cursor will show tooltips for all data items in the
68
+ * same category/date.
69
69
  *
70
- * Points that are further from pointer than this setting will not be shown.
70
+ * If set, cursor will select closest data item to pointer (mouse or touch) and
71
+ * show tooltip for it.
72
+ *
73
+ * It will also show tooltips for all data items that are within X pixels
74
+ * range (as set in `maxTooltipDistance`).
75
+ *
76
+ * Tooltips for data items farther then X pixels, will not be shown.
71
77
  *
72
78
  * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/cursor/#Tooltips} for more info
73
79
  */
@@ -1 +1 @@
1
- {"version":3,"file":"XYChart.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/xy/XYChart.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XYChart.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/xy/XYChart.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAqB,MAAM,mBAAmB,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAGrD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAExD,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAC3H,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AASlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,MAAM,WAAW,gBAAiB,SAAQ,oBAAoB;IAE7D;;;;OAIG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IAEvB;;;OAGG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IAEvB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;;;;OAKG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IAEf;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IAE3E;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;IAE3E;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;IAElB;;;;;;;;;;;;;OAaG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC;IAExC;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IAEzB;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB;;;;;;;;;OASG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CAErB;AAED,MAAM,WAAW,eAAgB,SAAQ,mBAAmB;IAE3D;;OAEG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAA;IAE/B;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;CAC5B;AAGD,MAAM,WAAW,cAAe,SAAQ,kBAAkB;IAEzD;;;;OAIG;IACH,UAAU,EAAE,EAAE,CAAC;IAEf;;;;OAIG;IACH,QAAQ,EAAE,EAAE,CAAC;IAEb;;;;OAIG;IACH,UAAU,EAAE,EAAE,CAAC;CAEf;AAED;;;;;GAKG;AACH,qBAAa,OAAQ,SAAQ,WAAW;IAEvC,OAAc,SAAS,EAAE,MAAM,CAAa;IAC5C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAsD;IAE9E,SAAS,EAAE,gBAAgB,CAAC;IAC5B,gBAAgB,EAAE,eAAe,CAAC;IAClC,WAAW,EAAE,QAAQ,CAAC;IACtB,OAAO,EAAE,cAAc,CAAC;IAEvC;;OAEG;IACH,SAAgB,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAyB;IAEnF;;OAEG;IACH,SAAgB,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAyB;IAEnF;;;;;;OAMG;IACH,SAAgB,gBAAgB,EAAE,SAAS,CAAoH;IAE/J;;;;;;OAMG;IACH,SAAgB,qBAAqB,EAAE,SAAS,CAAoI;IAEpL;;;;;;OAMG;IACH,SAAgB,mBAAmB,EAAE,SAAS,CAAoH;IAElK;;;;;;OAMG;IACH,SAAgB,iBAAiB,EAAE,SAAS,CAA8H;IAE1K;;;;;OAKG;IACH,SAAgB,cAAc,EAAE,SAAS,CAA0H;IAEnK;;;;;;;;;;OAUG;IACH,SAAgB,aAAa,EAAE,SAAS,CAA+F;IAEvI;;;;;;OAMG;IACH,SAAgB,gBAAgB,EAAE,SAAS,CAA+F;IAE1I;;;;;OAKG;IACH,SAAgB,aAAa,EAAE,SAAS,CAAiH;IAEzJ;;;;;OAKG;IACH,SAAgB,gBAAgB,EAAE,SAAS,CAA+E;IAE1H;;;;;;OAMG;IACH,SAAgB,kBAAkB,EAAE,SAAS,CAA8H;IAE3K;;;;;OAKG;IACH,SAAgB,oBAAoB,EAAE,SAAS,CAAmE;IAElH;;;;;OAKG;IACH,SAAgB,aAAa,EAAE,MAAM,CAKjC;IAEG,UAAU,EAAE,MAAM,CAAkB;IAE3C,SAAS,CAAC,QAAQ,EAAE,SAAS,GAAG,SAAS,CAAC;IAEnC,YAAY,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAErC,SAAS,CAAC,WAAW,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAM;IAExD,SAAS,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE7B,SAAS,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC/B,SAAS,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE7B,SAAS,CAAC,SAAS;IAwDnB,SAAS,CAAC,SAAS;IAKnB,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC;IAqBnD;;;;;;OAMG;IACI,WAAW,CAAC,KAAK,EAAE;QAAE,aAAa,EAAE,UAAU,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,SAAS,CAAA;KAAE;IA4KzF,SAAS,CAAC,eAAe;IAmBzB,SAAS,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC;IAShD,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAcjE,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,aAAa;IA2D9C,SAAS,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC;IAW1D,SAAS,CAAC,uBAAuB;IAOjC,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa;IAqB7C,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,aAAa;IAiG9C,SAAS,CAAC,YAAY;IAyGf,qBAAqB;IAyErB,aAAa;IAOpB,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ;IAI9B,gBAAgB;IA6FvB,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC;IAKpD,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC;IAY/C,SAAS,CAAC,sBAAsB;IA+BhC,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,KAAK;IAwBnH,SAAS,CAAC,YAAY,CAAC,CAAC,SAAS,YAAY,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,GAAG,SAAS;IA0B/G,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC;IAqBvC,kBAAkB;IAazB;;OAEG;IACI,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;IAErC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,EAAE,OAAO;IAmC5D,SAAS,CAAC,cAAc;IA0BxB;;;;;OAKG;IACI,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IA4BrC;;OAEG;IACI,eAAe;IAkJtB,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIhD;;OAEG;IACI,OAAO;CAYd"}
@@ -13,6 +13,7 @@ import * as $array from "../../core/util/Array";
13
13
  import * as $type from "../../core/util/Type";
14
14
  import * as $order from "../../core/util/Order";
15
15
  import * as $object from "../../core/util/Object";
16
+ import * as $utils from "../../core/util/Utils";
16
17
  /**
17
18
  * Creates an XY chart.
18
19
  *
@@ -346,7 +347,14 @@ var XYChart = /** @class */ (function (_super) {
346
347
  var wheelY = this.get("wheelY");
347
348
  var plotContainer = this.plotContainer;
348
349
  var wheelEvent = event.originalEvent;
349
- wheelEvent.preventDefault();
350
+ // Ignore wheel event if it is happening on a non-chart element, e.g. if
351
+ // some page element is over the chart.
352
+ if ($utils.isLocalEvent(wheelEvent, this)) {
353
+ wheelEvent.preventDefault();
354
+ }
355
+ else {
356
+ return;
357
+ }
350
358
  var plotPoint = plotContainer.toLocal(this._root.documentPointToRoot({ x: wheelEvent.clientX, y: wheelEvent.clientY }));
351
359
  var wheelStep = this.get("wheelStep", 0.2);
352
360
  var shiftY = wheelEvent.deltaY / 100;
@@ -547,7 +555,8 @@ var XYChart = /** @class */ (function (_super) {
547
555
  }
548
556
  if (this.get("panX") || this.get("panY")) {
549
557
  if (local.x >= 0 && local.y >= 0 && local.x <= plotContainer.width() && local.y <= this.height()) {
550
- this._downPoint = local;
558
+ //this._downPoint = local;
559
+ this._downPoint = { x: event.clientX, y: event.clientY };
551
560
  var panX = this.get("panX");
552
561
  var panY = this.get("panY");
553
562
  if (panX) {
@@ -639,6 +648,7 @@ var XYChart = /** @class */ (function (_super) {
639
648
  }
640
649
  var downPoint = this._downPoint;
641
650
  if (downPoint) {
651
+ downPoint = plotContainer.toLocal(this._root.documentPointToRoot(downPoint));
642
652
  var local_1 = plotContainer.toLocal(this._root.documentPointToRoot({ x: event.clientX, y: event.clientY }));
643
653
  var panX = this.get("panX");
644
654
  var panY = this.get("panY");