@amcharts/amcharts5 5.0.0-beta.32 → 5.0.0-beta.36

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 (372) hide show
  1. package/.internal/charts/flow/Chord.d.ts.map +1 -1
  2. package/.internal/charts/flow/Chord.js +7 -0
  3. package/.internal/charts/flow/Chord.js.map +1 -1
  4. package/.internal/charts/flow/Flow.d.ts.map +1 -1
  5. package/.internal/charts/flow/Flow.js +2 -0
  6. package/.internal/charts/flow/Flow.js.map +1 -1
  7. package/.internal/charts/flow/FlowDefaultTheme.d.ts +8 -0
  8. package/.internal/charts/flow/FlowDefaultTheme.d.ts.map +1 -0
  9. package/.internal/charts/flow/FlowDefaultTheme.js +214 -0
  10. package/.internal/charts/flow/FlowDefaultTheme.js.map +1 -0
  11. package/.internal/charts/hierarchy/BreadcrumbBar.d.ts.map +1 -1
  12. package/.internal/charts/hierarchy/BreadcrumbBar.js +2 -0
  13. package/.internal/charts/hierarchy/BreadcrumbBar.js.map +1 -1
  14. package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
  15. package/.internal/charts/hierarchy/Hierarchy.js +2 -0
  16. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  17. package/.internal/charts/hierarchy/HierarchyDefaultTheme.d.ts +8 -0
  18. package/.internal/charts/hierarchy/HierarchyDefaultTheme.d.ts.map +1 -0
  19. package/.internal/charts/hierarchy/HierarchyDefaultTheme.js +367 -0
  20. package/.internal/charts/hierarchy/HierarchyDefaultTheme.js.map +1 -0
  21. package/.internal/charts/map/MapChart.d.ts.map +1 -1
  22. package/.internal/charts/map/MapChart.js +10 -8
  23. package/.internal/charts/map/MapChart.js.map +1 -1
  24. package/.internal/charts/map/MapChartDefaultTheme.d.ts +8 -0
  25. package/.internal/charts/map/MapChartDefaultTheme.d.ts.map +1 -0
  26. package/.internal/charts/map/MapChartDefaultTheme.js +104 -0
  27. package/.internal/charts/map/MapChartDefaultTheme.js.map +1 -0
  28. package/.internal/charts/percent/PercentChart.d.ts +8 -1
  29. package/.internal/charts/percent/PercentChart.d.ts.map +1 -1
  30. package/.internal/charts/percent/PercentChart.js +9 -0
  31. package/.internal/charts/percent/PercentChart.js.map +1 -1
  32. package/.internal/charts/percent/PercentDefaultTheme.d.ts +8 -0
  33. package/.internal/charts/percent/PercentDefaultTheme.d.ts.map +1 -0
  34. package/.internal/charts/percent/PercentDefaultTheme.js +214 -0
  35. package/.internal/charts/percent/PercentDefaultTheme.js.map +1 -0
  36. package/.internal/charts/percent/PercentSeries.d.ts +1 -1
  37. package/.internal/charts/percent/PercentSeries.d.ts.map +1 -1
  38. package/.internal/charts/percent/PercentSeries.js +1 -1
  39. package/.internal/charts/percent/PercentSeries.js.map +1 -1
  40. package/.internal/charts/pie/PieSeries.d.ts +0 -3
  41. package/.internal/charts/pie/PieSeries.d.ts.map +1 -1
  42. package/.internal/charts/pie/PieSeries.js +2 -2
  43. package/.internal/charts/pie/PieSeries.js.map +1 -1
  44. package/.internal/charts/radar/ClockHand.js +1 -1
  45. package/.internal/charts/radar/ClockHand.js.map +1 -1
  46. package/.internal/charts/radar/RadarChart.d.ts.map +1 -1
  47. package/.internal/charts/radar/RadarChart.js +2 -0
  48. package/.internal/charts/radar/RadarChart.js.map +1 -1
  49. package/.internal/charts/radar/RadarDefaultTheme.d.ts +8 -0
  50. package/.internal/charts/radar/RadarDefaultTheme.d.ts.map +1 -0
  51. package/.internal/charts/radar/RadarDefaultTheme.js +102 -0
  52. package/.internal/charts/radar/RadarDefaultTheme.js.map +1 -0
  53. package/.internal/charts/venn/Venn.d.ts +147 -0
  54. package/.internal/charts/venn/Venn.d.ts.map +1 -0
  55. package/.internal/charts/venn/Venn.js +477 -0
  56. package/.internal/charts/venn/Venn.js.map +1 -0
  57. package/.internal/charts/venn/VennDefaultTheme.d.ts +8 -0
  58. package/.internal/charts/venn/VennDefaultTheme.d.ts.map +1 -0
  59. package/.internal/charts/venn/VennDefaultTheme.js +37 -0
  60. package/.internal/charts/venn/VennDefaultTheme.js.map +1 -0
  61. package/.internal/charts/venn/vennjs/circleintersection.js +223 -0
  62. package/.internal/charts/venn/vennjs/diagram.js +604 -0
  63. package/.internal/charts/venn/vennjs/fmin/bisect.js +32 -0
  64. package/.internal/charts/venn/vennjs/fmin/blas1.js +28 -0
  65. package/.internal/charts/venn/vennjs/fmin/conjugateGradient.js +64 -0
  66. package/.internal/charts/venn/vennjs/fmin/gradientDescent.js +73 -0
  67. package/.internal/charts/venn/vennjs/fmin/index.js +5 -0
  68. package/.internal/charts/venn/vennjs/fmin/linesearch.js +72 -0
  69. package/.internal/charts/venn/vennjs/fmin/nelderMead.js +144 -0
  70. package/.internal/charts/venn/vennjs/index.d.ts +5 -0
  71. package/.internal/charts/venn/vennjs/index.js +6 -0
  72. package/.internal/charts/venn/vennjs/layout.js +677 -0
  73. package/.internal/charts/wordcloud/WordCloud.d.ts +184 -0
  74. package/.internal/charts/wordcloud/WordCloud.d.ts.map +1 -0
  75. package/.internal/charts/wordcloud/WordCloud.js +564 -0
  76. package/.internal/charts/wordcloud/WordCloud.js.map +1 -0
  77. package/.internal/charts/wordcloud/WordCloudDefaultTheme.d.ts +8 -0
  78. package/.internal/charts/wordcloud/WordCloudDefaultTheme.d.ts.map +1 -0
  79. package/.internal/charts/wordcloud/WordCloudDefaultTheme.js +58 -0
  80. package/.internal/charts/wordcloud/WordCloudDefaultTheme.js.map +1 -0
  81. package/.internal/charts/xy/XYChart.d.ts +4 -4
  82. package/.internal/charts/xy/XYChart.d.ts.map +1 -1
  83. package/.internal/charts/xy/XYChart.js +4 -2
  84. package/.internal/charts/xy/XYChart.js.map +1 -1
  85. package/.internal/charts/xy/XYChartDefaultTheme.d.ts +8 -0
  86. package/.internal/charts/xy/XYChartDefaultTheme.d.ts.map +1 -0
  87. package/.internal/charts/xy/XYChartDefaultTheme.js +605 -0
  88. package/.internal/charts/xy/XYChartDefaultTheme.js.map +1 -0
  89. package/.internal/charts/xy/axes/Axis.d.ts +1 -1
  90. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  91. package/.internal/charts/xy/axes/CategoryAxis.d.ts.map +1 -1
  92. package/.internal/charts/xy/axes/CategoryAxis.js +2 -6
  93. package/.internal/charts/xy/axes/CategoryAxis.js.map +1 -1
  94. package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
  95. package/.internal/charts/xy/axes/DateAxis.js +6 -4
  96. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  97. package/.internal/charts/xy/axes/DurationAxis.d.ts +51 -0
  98. package/.internal/charts/xy/axes/DurationAxis.d.ts.map +1 -0
  99. package/.internal/charts/xy/axes/DurationAxis.js +162 -0
  100. package/.internal/charts/xy/axes/DurationAxis.js.map +1 -0
  101. package/.internal/charts/xy/axes/ValueAxis.d.ts +1 -0
  102. package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
  103. package/.internal/charts/xy/axes/ValueAxis.js +18 -8
  104. package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
  105. package/.internal/charts/xy/series/BaseColumnSeries.d.ts +3 -1
  106. package/.internal/charts/xy/series/BaseColumnSeries.d.ts.map +1 -1
  107. package/.internal/charts/xy/series/BaseColumnSeries.js +47 -9
  108. package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
  109. package/.internal/charts/xy/series/XYSeries.d.ts +1 -1
  110. package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
  111. package/.internal/charts/xy/series/XYSeries.js +15 -2
  112. package/.internal/charts/xy/series/XYSeries.js.map +1 -1
  113. package/.internal/core/Classes.d.ts +6 -0
  114. package/.internal/core/Classes.d.ts.map +1 -1
  115. package/.internal/core/Classes.js.map +1 -1
  116. package/.internal/core/Root.d.ts +13 -11
  117. package/.internal/core/Root.d.ts.map +1 -1
  118. package/.internal/core/Root.js +27 -17
  119. package/.internal/core/Root.js.map +1 -1
  120. package/.internal/core/render/Bullet.d.ts +1 -0
  121. package/.internal/core/render/Bullet.d.ts.map +1 -1
  122. package/.internal/core/render/Bullet.js.map +1 -1
  123. package/.internal/core/render/Container.js +1 -1
  124. package/.internal/core/render/Container.js.map +1 -1
  125. package/.internal/core/render/Graphics.js +1 -1
  126. package/.internal/core/render/Graphics.js.map +1 -1
  127. package/.internal/core/render/Legend.js +3 -3
  128. package/.internal/core/render/Legend.js.map +1 -1
  129. package/.internal/core/render/Rectangle.js +1 -1
  130. package/.internal/core/render/Rectangle.js.map +1 -1
  131. package/.internal/core/render/RoundedRectangle.js.map +1 -1
  132. package/.internal/core/render/Scrollbar.d.ts.map +1 -1
  133. package/.internal/core/render/Scrollbar.js +3 -3
  134. package/.internal/core/render/Scrollbar.js.map +1 -1
  135. package/.internal/core/render/Series.d.ts +1 -0
  136. package/.internal/core/render/Series.d.ts.map +1 -1
  137. package/.internal/core/render/Series.js +18 -0
  138. package/.internal/core/render/Series.js.map +1 -1
  139. package/.internal/core/render/Sprite.d.ts +17 -0
  140. package/.internal/core/render/Sprite.d.ts.map +1 -1
  141. package/.internal/core/render/Sprite.js +16 -0
  142. package/.internal/core/render/Sprite.js.map +1 -1
  143. package/.internal/core/render/backend/CanvasRenderer.d.ts +1 -0
  144. package/.internal/core/render/backend/CanvasRenderer.d.ts.map +1 -1
  145. package/.internal/core/render/backend/CanvasRenderer.js +54 -2
  146. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  147. package/.internal/core/render/backend/Renderer.d.ts +1 -0
  148. package/.internal/core/render/backend/Renderer.d.ts.map +1 -1
  149. package/.internal/core/render/backend/Renderer.js.map +1 -1
  150. package/.internal/core/util/DataProcessor.d.ts +0 -1
  151. package/.internal/core/util/DataProcessor.d.ts.map +1 -1
  152. package/.internal/core/util/DataProcessor.js +6 -13
  153. package/.internal/core/util/DataProcessor.js.map +1 -1
  154. package/.internal/core/util/DateFormatter.d.ts +1 -1
  155. package/.internal/core/util/DateFormatter.js +18 -18
  156. package/.internal/core/util/DateFormatter.js.map +1 -1
  157. package/.internal/core/util/DurationFormatter.d.ts +134 -0
  158. package/.internal/core/util/DurationFormatter.d.ts.map +1 -0
  159. package/.internal/core/util/DurationFormatter.js +521 -0
  160. package/.internal/core/util/DurationFormatter.js.map +1 -0
  161. package/.internal/core/util/Entity.d.ts +3 -0
  162. package/.internal/core/util/Entity.d.ts.map +1 -1
  163. package/.internal/core/util/Entity.js +26 -1
  164. package/.internal/core/util/Entity.js.map +1 -1
  165. package/.internal/core/util/Math.d.ts +9 -0
  166. package/.internal/core/util/Math.d.ts.map +1 -1
  167. package/.internal/core/util/Math.js +15 -0
  168. package/.internal/core/util/Math.js.map +1 -1
  169. package/.internal/core/util/NumberFormatter.d.ts.map +1 -1
  170. package/.internal/core/util/NumberFormatter.js +33 -28
  171. package/.internal/core/util/NumberFormatter.js.map +1 -1
  172. package/.internal/core/util/PopulateString.js +18 -1
  173. package/.internal/core/util/PopulateString.js.map +1 -1
  174. package/.internal/core/util/Utils.d.ts +1 -1
  175. package/.internal/core/util/Utils.d.ts.map +1 -1
  176. package/.internal/core/util/Utils.js +6 -3
  177. package/.internal/core/util/Utils.js.map +1 -1
  178. package/.internal/plugins/exporting/Annotator.d.ts +67 -0
  179. package/.internal/plugins/exporting/Annotator.d.ts.map +1 -0
  180. package/.internal/plugins/exporting/Annotator.js +301 -0
  181. package/.internal/plugins/exporting/Annotator.js.map +1 -0
  182. package/.internal/plugins/exporting/Exporting.js +2 -2
  183. package/.internal/plugins/exporting/Exporting.js.map +1 -1
  184. package/.internal/plugins/exporting/ExportingMenu.js +22 -22
  185. package/.internal/plugins/exporting/ExportingMenu.js.map +1 -1
  186. package/.internal/themes/AnimatedTheme.d.ts.map +1 -1
  187. package/.internal/themes/AnimatedTheme.js +1 -0
  188. package/.internal/themes/AnimatedTheme.js.map +1 -1
  189. package/.internal/themes/DefaultTheme.d.ts +10 -0
  190. package/.internal/themes/DefaultTheme.d.ts.map +1 -1
  191. package/.internal/themes/DefaultTheme.js +11 -1443
  192. package/.internal/themes/DefaultTheme.js.map +1 -1
  193. package/CHANGELOG.md +46 -0
  194. package/LICENSE-3RD-PARTY.md +1 -0
  195. package/examples/javascript/flow-chord/package.json +1 -1
  196. package/examples/javascript/flow-chord-directed/package.json +1 -1
  197. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  198. package/examples/javascript/flow-sankey/package.json +1 -1
  199. package/examples/javascript/gauge/package.json +1 -1
  200. package/examples/javascript/gauge-bands/package.json +1 -1
  201. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  202. package/examples/javascript/hierarchy-pack/package.json +1 -1
  203. package/examples/javascript/hierarchy-partition/package.json +1 -1
  204. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  205. package/examples/javascript/hierarchy-tree/package.json +1 -1
  206. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  207. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  208. package/examples/javascript/map-day-and-night/package.json +1 -1
  209. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  210. package/examples/javascript/map-globe-with-projected-circles/index.js +1 -1
  211. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  212. package/examples/javascript/map-with-bubbles/package.json +1 -1
  213. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  214. package/examples/javascript/misc-40-charts/package.json +1 -1
  215. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  216. package/examples/javascript/pie-chart/package.json +1 -1
  217. package/examples/javascript/pie-donut-chart/package.json +1 -1
  218. package/examples/javascript/pie-variable-radius/package.json +1 -1
  219. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  220. package/examples/javascript/radar-heat-map/package.json +1 -1
  221. package/examples/javascript/radar-line/package.json +1 -1
  222. package/examples/javascript/radar-time-line/index.js +8 -4
  223. package/examples/javascript/radar-time-line/package.json +1 -1
  224. package/examples/javascript/sliced-funnel/package.json +1 -1
  225. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  226. package/examples/javascript/sliced-pyramid/package.json +1 -1
  227. package/examples/javascript/venn-diagram/README.md +6 -0
  228. package/examples/javascript/venn-diagram/index.css +11 -0
  229. package/examples/javascript/venn-diagram/index.html +12 -0
  230. package/examples/javascript/venn-diagram/index.js +59 -0
  231. package/examples/javascript/venn-diagram/package.json +16 -0
  232. package/examples/javascript/venn-diagram/webpack.config.js +38 -0
  233. package/examples/javascript/wordcloud-with-data/README.md +6 -0
  234. package/examples/javascript/wordcloud-with-data/index.css +11 -0
  235. package/examples/javascript/wordcloud-with-data/index.html +12 -0
  236. package/examples/javascript/wordcloud-with-data/index.js +115 -0
  237. package/examples/javascript/wordcloud-with-data/package.json +16 -0
  238. package/examples/javascript/wordcloud-with-data/webpack.config.js +38 -0
  239. package/examples/javascript/wordcloud-with-text/README.md +6 -0
  240. package/examples/javascript/wordcloud-with-text/index.css +11 -0
  241. package/examples/javascript/wordcloud-with-text/index.html +12 -0
  242. package/examples/javascript/wordcloud-with-text/index.js +35 -0
  243. package/examples/javascript/wordcloud-with-text/package.json +16 -0
  244. package/examples/javascript/wordcloud-with-text/webpack.config.js +38 -0
  245. package/examples/javascript/xy-100-percent-stacked-column/index.js +1 -1
  246. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  247. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  248. package/examples/javascript/xy-bubble/package.json +1 -1
  249. package/examples/javascript/xy-candlestick/package.json +1 -1
  250. package/examples/javascript/xy-clustered-column/index.js +1 -1
  251. package/examples/javascript/xy-clustered-column/package.json +1 -1
  252. package/examples/javascript/xy-column/package.json +1 -1
  253. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  254. package/examples/javascript/xy-data-grouping/package.json +1 -1
  255. package/examples/javascript/xy-draggable-range/package.json +1 -1
  256. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  257. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  258. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  259. package/examples/javascript/xy-line/package.json +1 -1
  260. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  261. package/examples/javascript/xy-live-data/package.json +1 -1
  262. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  263. package/examples/javascript/xy-ohlc/package.json +1 -1
  264. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  265. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  266. package/examples/javascript/xy-stacked-and-clustered-column/index.js +1 -1
  267. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  268. package/examples/javascript/xy-stacked-column/package.json +1 -1
  269. package/examples/javascript/xy-stacked-step/package.json +1 -1
  270. package/examples/javascript/xy-stock/package.json +1 -1
  271. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  272. package/examples/typescript/flow-chord/package.json +1 -1
  273. package/examples/typescript/flow-chord-directed/package.json +1 -1
  274. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  275. package/examples/typescript/flow-sankey/package.json +1 -1
  276. package/examples/typescript/gauge/package.json +1 -1
  277. package/examples/typescript/gauge-bands/package.json +1 -1
  278. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  279. package/examples/typescript/hierarchy-pack/package.json +1 -1
  280. package/examples/typescript/hierarchy-partition/package.json +1 -1
  281. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  282. package/examples/typescript/hierarchy-tree/package.json +1 -1
  283. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  284. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  285. package/examples/typescript/map-day-and-night/package.json +1 -1
  286. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  287. package/examples/typescript/map-globe-with-projected-circles/index.ts +1 -1
  288. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  289. package/examples/typescript/map-with-bubbles/package.json +1 -1
  290. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  291. package/examples/typescript/misc-40-charts/package.json +1 -1
  292. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  293. package/examples/typescript/pie-chart/package.json +1 -1
  294. package/examples/typescript/pie-donut-chart/package.json +1 -1
  295. package/examples/typescript/pie-variable-radius/package.json +1 -1
  296. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  297. package/examples/typescript/radar-heat-map/package.json +1 -1
  298. package/examples/typescript/radar-line/package.json +1 -1
  299. package/examples/typescript/radar-time-line/index.ts +8 -4
  300. package/examples/typescript/radar-time-line/package.json +1 -1
  301. package/examples/typescript/sliced-funnel/package.json +1 -1
  302. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  303. package/examples/typescript/sliced-pyramid/package.json +1 -1
  304. package/examples/typescript/venn-diagram/README.md +6 -0
  305. package/examples/typescript/venn-diagram/index.css +11 -0
  306. package/examples/typescript/venn-diagram/index.html +12 -0
  307. package/examples/typescript/venn-diagram/index.ts +59 -0
  308. package/examples/typescript/venn-diagram/package.json +18 -0
  309. package/examples/typescript/venn-diagram/tsconfig.json +12 -0
  310. package/examples/typescript/venn-diagram/webpack.config.js +45 -0
  311. package/examples/typescript/wordcloud-with-data/README.md +6 -0
  312. package/examples/typescript/wordcloud-with-data/index.css +11 -0
  313. package/examples/typescript/wordcloud-with-data/index.html +12 -0
  314. package/examples/typescript/wordcloud-with-data/index.ts +115 -0
  315. package/examples/typescript/wordcloud-with-data/package.json +18 -0
  316. package/examples/typescript/wordcloud-with-data/tsconfig.json +12 -0
  317. package/examples/typescript/wordcloud-with-data/webpack.config.js +45 -0
  318. package/examples/typescript/wordcloud-with-text/README.md +6 -0
  319. package/examples/typescript/wordcloud-with-text/index.css +11 -0
  320. package/examples/typescript/wordcloud-with-text/index.html +12 -0
  321. package/examples/typescript/wordcloud-with-text/index.ts +35 -0
  322. package/examples/typescript/wordcloud-with-text/package.json +18 -0
  323. package/examples/typescript/wordcloud-with-text/tsconfig.json +12 -0
  324. package/examples/typescript/wordcloud-with-text/webpack.config.js +45 -0
  325. package/examples/typescript/xy-100-percent-stacked-column/index.ts +1 -1
  326. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  327. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  328. package/examples/typescript/xy-bubble/package.json +1 -1
  329. package/examples/typescript/xy-candlestick/package.json +1 -1
  330. package/examples/typescript/xy-clustered-column/index.ts +1 -1
  331. package/examples/typescript/xy-clustered-column/package.json +1 -1
  332. package/examples/typescript/xy-column/package.json +1 -1
  333. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  334. package/examples/typescript/xy-data-grouping/package.json +1 -1
  335. package/examples/typescript/xy-draggable-range/package.json +1 -1
  336. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  337. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  338. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  339. package/examples/typescript/xy-line/package.json +1 -1
  340. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  341. package/examples/typescript/xy-live-data/package.json +1 -1
  342. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  343. package/examples/typescript/xy-ohlc/package.json +1 -1
  344. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  345. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  346. package/examples/typescript/xy-stacked-and-clustered-column/index.ts +1 -1
  347. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  348. package/examples/typescript/xy-stacked-column/package.json +1 -1
  349. package/examples/typescript/xy-stacked-step/package.json +1 -1
  350. package/examples/typescript/xy-stock/package.json +1 -1
  351. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  352. package/index.d.ts +1 -0
  353. package/index.d.ts.map +1 -1
  354. package/index.js +1 -0
  355. package/index.js.map +1 -1
  356. package/package.json +6 -1
  357. package/plugins/exporting.d.ts +1 -0
  358. package/plugins/exporting.d.ts.map +1 -1
  359. package/plugins/exporting.js +1 -0
  360. package/plugins/exporting.js.map +1 -1
  361. package/venn.d.ts +2 -0
  362. package/venn.d.ts.map +1 -0
  363. package/venn.js +2 -0
  364. package/venn.js.map +1 -0
  365. package/wc.d.ts +2 -0
  366. package/wc.d.ts.map +1 -0
  367. package/wc.js +2 -0
  368. package/wc.js.map +1 -0
  369. package/xy.d.ts +1 -0
  370. package/xy.d.ts.map +1 -1
  371. package/xy.js +1 -0
  372. package/xy.js.map +1 -1
@@ -0,0 +1,477 @@
1
+ import { __awaiter, __extends, __generator } from "tslib";
2
+ import { VennDefaultTheme } from "./VennDefaultTheme";
3
+ import { Series } from "../../core/render/Series";
4
+ import { Template } from "../../core/util/Template";
5
+ import { Graphics, visualSettings } from "../../core/render/Graphics";
6
+ import { Container } from "../../core/render/Container";
7
+ import { Label } from "../../core/render/Label";
8
+ import { ListTemplate } from "../../core/util/List";
9
+ import * as $utils from "../../core/util/Utils";
10
+ import * as $array from "../../core/util/Array";
11
+ import * as $type from "../../core/util/Type";
12
+ import * as venn from "./vennjs/index.js";
13
+ /**
14
+ * Creates a Venn diagram.
15
+ *
16
+ * @see {@link https://www.amcharts.com/docs/v5/charts/venn/} for more info
17
+ * @important
18
+ */
19
+ var Venn = /** @class */ (function (_super) {
20
+ __extends(Venn, _super);
21
+ function Venn() {
22
+ var _this = _super !== null && _super.apply(this, arguments) || this;
23
+ Object.defineProperty(_this, "_sets", {
24
+ enumerable: true,
25
+ configurable: true,
26
+ writable: true,
27
+ value: ""
28
+ });
29
+ /**
30
+ * A [[Container]] that holds all slices (circles and intersections).
31
+ *
32
+ * @default Container.new()
33
+ */
34
+ Object.defineProperty(_this, "slicesContainer", {
35
+ enumerable: true,
36
+ configurable: true,
37
+ writable: true,
38
+ value: _this.children.push(Container.new(_this._root, {}))
39
+ });
40
+ /**
41
+ * A [[Container]] that holds all labels.
42
+ *
43
+ * @default Container.new()
44
+ */
45
+ Object.defineProperty(_this, "labelsContainer", {
46
+ enumerable: true,
47
+ configurable: true,
48
+ writable: true,
49
+ value: _this.children.push(Container.new(_this._root, {}))
50
+ });
51
+ /**
52
+ * A [[Graphics]] element that is used to show the shape of the hovered slice
53
+ * or intersection.
54
+ *
55
+ * @default Graphics.new()
56
+ */
57
+ Object.defineProperty(_this, "hoverGraphics", {
58
+ enumerable: true,
59
+ configurable: true,
60
+ writable: true,
61
+ value: _this.slicesContainer.children.push(Graphics.new(_this._root, { position: "absolute", isMeasured: false }))
62
+ });
63
+ Object.defineProperty(_this, "_hovered", {
64
+ enumerable: true,
65
+ configurable: true,
66
+ writable: true,
67
+ value: void 0
68
+ });
69
+ /**
70
+ * A [[ListTemplate]] of all slices in series.
71
+ *
72
+ * `slices.template` can also be used to configure slices.
73
+ */
74
+ Object.defineProperty(_this, "slices", {
75
+ enumerable: true,
76
+ configurable: true,
77
+ writable: true,
78
+ value: _this._makeSlices()
79
+ });
80
+ /**
81
+ * A [[ListTemplate]] of all slice labels in series.
82
+ *
83
+ * `labels.template` can also be used to configure slice labels.
84
+ */
85
+ Object.defineProperty(_this, "labels", {
86
+ enumerable: true,
87
+ configurable: true,
88
+ writable: true,
89
+ value: _this._makeLabels()
90
+ });
91
+ return _this;
92
+ }
93
+ Object.defineProperty(Venn.prototype, "_afterNew", {
94
+ enumerable: false,
95
+ configurable: true,
96
+ writable: true,
97
+ value: function () {
98
+ this._defaultThemes.push(VennDefaultTheme.new(this._root));
99
+ this.fields.push("intersections", "category", "fill");
100
+ _super.prototype._afterNew.call(this);
101
+ }
102
+ });
103
+ /**
104
+ * @ignore
105
+ */
106
+ Object.defineProperty(Venn.prototype, "makeSlice", {
107
+ enumerable: false,
108
+ configurable: true,
109
+ writable: true,
110
+ value: function (dataItem) {
111
+ var _this = this;
112
+ var slice = this.slicesContainer.children.push(this.slices.make());
113
+ slice.events.on("pointerover", function (e) {
114
+ _this._hovered = e.target;
115
+ _this._updateHover();
116
+ });
117
+ slice.events.on("pointerout", function () {
118
+ _this._hovered = undefined;
119
+ _this.hoverGraphics.hide();
120
+ });
121
+ slice.on("fill", function () {
122
+ _this.updateLegendMarker(dataItem);
123
+ });
124
+ slice.on("stroke", function () {
125
+ _this.updateLegendMarker(dataItem);
126
+ });
127
+ slice._setDataItem(dataItem);
128
+ dataItem.set("slice", slice);
129
+ this.slices.push(slice);
130
+ return slice;
131
+ }
132
+ });
133
+ Object.defineProperty(Venn.prototype, "_updateHover", {
134
+ enumerable: false,
135
+ configurable: true,
136
+ writable: true,
137
+ value: function () {
138
+ if (this._hovered) {
139
+ var hoverGraphics = this.hoverGraphics;
140
+ hoverGraphics.set("svgPath", this._hovered.get("svgPath"));
141
+ hoverGraphics.show();
142
+ hoverGraphics.toFront();
143
+ }
144
+ }
145
+ });
146
+ /**
147
+ * @ignore
148
+ */
149
+ Object.defineProperty(Venn.prototype, "makeLabel", {
150
+ enumerable: false,
151
+ configurable: true,
152
+ writable: true,
153
+ value: function (dataItem) {
154
+ var label = this.labelsContainer.children.push(this.labels.make());
155
+ label._setDataItem(dataItem);
156
+ dataItem.set("label", label);
157
+ this.labels.push(label);
158
+ return label;
159
+ }
160
+ });
161
+ Object.defineProperty(Venn.prototype, "_makeSlices", {
162
+ enumerable: false,
163
+ configurable: true,
164
+ writable: true,
165
+ value: function () {
166
+ var _this = this;
167
+ return new ListTemplate(Template.new({}), function () { return Graphics._new(_this._root, {
168
+ themeTags: $utils.mergeTags(_this.slices.template.get("themeTags", []), ["venn", "series"])
169
+ }, [_this.slices.template]); });
170
+ }
171
+ });
172
+ Object.defineProperty(Venn.prototype, "_makeLabels", {
173
+ enumerable: false,
174
+ configurable: true,
175
+ writable: true,
176
+ value: function () {
177
+ var _this = this;
178
+ return new ListTemplate(Template.new({}), function () { return Label._new(_this._root, {
179
+ themeTags: $utils.mergeTags(_this.labels.template.get("themeTags", []), ["venn", "series"])
180
+ }, [_this.labels.template]); });
181
+ }
182
+ });
183
+ Object.defineProperty(Venn.prototype, "processDataItem", {
184
+ enumerable: false,
185
+ configurable: true,
186
+ writable: true,
187
+ value: function (dataItem) {
188
+ _super.prototype.processDataItem.call(this, dataItem);
189
+ if (dataItem.get("fill") == null) {
190
+ var colors = this.get("colors");
191
+ if (colors) {
192
+ dataItem.setRaw("fill", colors.next());
193
+ }
194
+ }
195
+ this.makeSlice(dataItem);
196
+ this.makeLabel(dataItem);
197
+ }
198
+ });
199
+ Object.defineProperty(Venn.prototype, "_prepareChildren", {
200
+ enumerable: false,
201
+ configurable: true,
202
+ writable: true,
203
+ value: function () {
204
+ var _this = this;
205
+ _super.prototype._prepareChildren.call(this);
206
+ if (this._valuesDirty || this._sizeDirty) {
207
+ var sets_1 = [];
208
+ // prepare data for venn
209
+ $array.each(this.dataItems, function (dataItem) {
210
+ var set = {};
211
+ var intersections = dataItem.get("intersections");
212
+ if (intersections) {
213
+ set.sets = intersections;
214
+ }
215
+ else {
216
+ set.sets = [dataItem.get("category")];
217
+ }
218
+ set.size = dataItem.get("valueWorking");
219
+ if (set.size > 0) {
220
+ sets_1.push(set);
221
+ }
222
+ });
223
+ var newSets = sets_1.toString();
224
+ this._sets = newSets;
225
+ if (sets_1.length > 0) {
226
+ var vennData = venn.venn(sets_1);
227
+ vennData = venn.normalizeSolution(vennData, null, null);
228
+ vennData = venn.scaleSolution(vennData, this.innerWidth(), this.innerHeight(), 0);
229
+ var circles_1 = {};
230
+ for (var name_1 in vennData) {
231
+ var item = vennData[name_1];
232
+ var r = item.radius;
233
+ var dataItem = this.getDataItemByCategory(name_1);
234
+ if (dataItem) {
235
+ var slice = dataItem.get("slice");
236
+ var color = dataItem.get("fill");
237
+ slice._setDefault("fill", color);
238
+ slice._setDefault("stroke", color);
239
+ slice.set("svgPath", "M" + item.x + "," + item.y + " m -" + r + ", 0 a " + r + "," + r + " 0 1,1 " + r * 2 + ",0 a " + r + "," + r + " 0 1,1 -" + r * 2 + ",0");
240
+ circles_1[name_1] = item;
241
+ }
242
+ }
243
+ var centers_1 = venn.computeTextCentres(circles_1, sets_1);
244
+ $array.each(this.dataItems, function (dataItem) {
245
+ var name = dataItem.get("category");
246
+ var center = centers_1[name];
247
+ var intersections = dataItem.get("intersections");
248
+ if (intersections) {
249
+ name = intersections.toString();
250
+ center = centers_1[name];
251
+ if (center) {
252
+ var set = intersections;
253
+ var cc = [];
254
+ for (var s = 0; s < set.length; s++) {
255
+ cc.push(circles_1[set[s]]);
256
+ }
257
+ var intersectionPath = venn.intersectionAreaPath(cc);
258
+ var slice = dataItem.get("slice");
259
+ var color = dataItem.get("fill");
260
+ slice._setDefault("fill", color);
261
+ slice._setDefault("stroke", color);
262
+ slice.setAll({ svgPath: intersectionPath });
263
+ }
264
+ }
265
+ if (center) {
266
+ var label = dataItem.get("label");
267
+ label.setAll({ x: center.x, y: center.y });
268
+ }
269
+ _this.updateLegendValue(dataItem);
270
+ });
271
+ }
272
+ this._updateHover();
273
+ }
274
+ }
275
+ });
276
+ /**
277
+ * Looks up and returns a data item by its category.
278
+ *
279
+ * @param category Category
280
+ * @return Data item
281
+ */
282
+ Object.defineProperty(Venn.prototype, "getDataItemByCategory", {
283
+ enumerable: false,
284
+ configurable: true,
285
+ writable: true,
286
+ value: function (id) {
287
+ return $array.find(this.dataItems, function (dataItem) {
288
+ return dataItem.get("category") == id;
289
+ });
290
+ }
291
+ });
292
+ /**
293
+ * Shows series's data item.
294
+ *
295
+ * @param dataItem Data item
296
+ * @param duration Animation duration in milliseconds
297
+ * @return Promise
298
+ */
299
+ Object.defineProperty(Venn.prototype, "showDataItem", {
300
+ enumerable: false,
301
+ configurable: true,
302
+ writable: true,
303
+ value: function (dataItem, duration) {
304
+ return __awaiter(this, void 0, void 0, function () {
305
+ var promises, easing, value, animation, label, slice, intersections, category_1;
306
+ var _this = this;
307
+ return __generator(this, function (_a) {
308
+ switch (_a.label) {
309
+ case 0:
310
+ promises = [_super.prototype.showDataItem.call(this, dataItem, duration)];
311
+ if (!$type.isNumber(duration)) {
312
+ duration = this.get("stateAnimationDuration", 0);
313
+ }
314
+ easing = this.get("stateAnimationEasing");
315
+ value = dataItem.get("value");
316
+ animation = dataItem.animate({ key: "valueWorking", to: value, duration: duration, easing: easing });
317
+ if (animation) {
318
+ promises.push(animation.waitForStop());
319
+ }
320
+ label = dataItem.get("label");
321
+ if (label) {
322
+ promises.push(label.show(duration));
323
+ }
324
+ slice = dataItem.get("slice");
325
+ if (slice) {
326
+ promises.push(slice.show(duration));
327
+ }
328
+ intersections = dataItem.get("intersections");
329
+ if (intersections) {
330
+ $array.each(intersections, function (cat) {
331
+ var di = _this.getDataItemByCategory(cat);
332
+ if (di && di.isHidden()) {
333
+ _this.showDataItem(di, duration);
334
+ }
335
+ });
336
+ }
337
+ if (!intersections) {
338
+ category_1 = dataItem.get("category");
339
+ $array.each(this.dataItems, function (di) {
340
+ var intersections = di.get("intersections");
341
+ if (di != dataItem && intersections) {
342
+ var allVisible_1 = true;
343
+ $array.each(intersections, function (cat) {
344
+ var dii = _this.getDataItemByCategory(cat);
345
+ if (dii && dii.isHidden()) {
346
+ allVisible_1 = false;
347
+ }
348
+ });
349
+ if (allVisible_1 && intersections.indexOf(category_1) != -1) {
350
+ if (di.isHidden()) {
351
+ _this.showDataItem(di, duration);
352
+ }
353
+ }
354
+ }
355
+ });
356
+ }
357
+ return [4 /*yield*/, Promise.all(promises)];
358
+ case 1:
359
+ _a.sent();
360
+ return [2 /*return*/];
361
+ }
362
+ });
363
+ });
364
+ }
365
+ });
366
+ /**
367
+ * Hides series's data item.
368
+ *
369
+ * @param dataItem Data item
370
+ * @param duration Animation duration in milliseconds
371
+ * @return Promise
372
+ */
373
+ Object.defineProperty(Venn.prototype, "hideDataItem", {
374
+ enumerable: false,
375
+ configurable: true,
376
+ writable: true,
377
+ value: function (dataItem, duration) {
378
+ return __awaiter(this, void 0, void 0, function () {
379
+ var promises, hiddenState, easing, animation, label, slice;
380
+ var _this = this;
381
+ return __generator(this, function (_a) {
382
+ switch (_a.label) {
383
+ case 0:
384
+ promises = [_super.prototype.hideDataItem.call(this, dataItem, duration)];
385
+ hiddenState = this.states.create("hidden", {});
386
+ if (!$type.isNumber(duration)) {
387
+ duration = hiddenState.get("stateAnimationDuration", this.get("stateAnimationDuration", 0));
388
+ }
389
+ easing = hiddenState.get("stateAnimationEasing", this.get("stateAnimationEasing"));
390
+ animation = dataItem.animate({ key: "valueWorking", to: 0, duration: duration, easing: easing });
391
+ if (animation) {
392
+ promises.push(animation.waitForStop());
393
+ }
394
+ label = dataItem.get("label");
395
+ if (label) {
396
+ promises.push(label.hide(duration));
397
+ }
398
+ slice = dataItem.get("slice");
399
+ if (slice) {
400
+ promises.push(slice.hide(duration));
401
+ }
402
+ if (!dataItem.get("intersections")) {
403
+ $array.each(this.dataItems, function (di) {
404
+ var intersections = di.get("intersections");
405
+ if (di != dataItem && intersections) {
406
+ if (intersections.indexOf(dataItem.get("category")) != -1) {
407
+ _this.hideDataItem(di, duration);
408
+ }
409
+ }
410
+ });
411
+ }
412
+ return [4 /*yield*/, Promise.all(promises)];
413
+ case 1:
414
+ _a.sent();
415
+ return [2 /*return*/];
416
+ }
417
+ });
418
+ });
419
+ }
420
+ });
421
+ /**
422
+ * @ignore
423
+ */
424
+ Object.defineProperty(Venn.prototype, "disposeDataItem", {
425
+ enumerable: false,
426
+ configurable: true,
427
+ writable: true,
428
+ value: function (dataItem) {
429
+ _super.prototype.disposeDataItem.call(this, dataItem);
430
+ var label = dataItem.get("label");
431
+ if (label) {
432
+ this.labels.removeValue(label);
433
+ label.dispose();
434
+ }
435
+ var slice = dataItem.get("slice");
436
+ if (slice) {
437
+ this.slices.removeValue(slice);
438
+ slice.dispose();
439
+ }
440
+ }
441
+ });
442
+ /**
443
+ * @ignore
444
+ */
445
+ Object.defineProperty(Venn.prototype, "updateLegendMarker", {
446
+ enumerable: false,
447
+ configurable: true,
448
+ writable: true,
449
+ value: function (dataItem) {
450
+ var slice = dataItem.get("slice");
451
+ if (slice) {
452
+ var legendDataItem = dataItem.get("legendDataItem");
453
+ if (legendDataItem) {
454
+ var markerRectangle_1 = legendDataItem.get("markerRectangle");
455
+ $array.each(visualSettings, function (setting) {
456
+ markerRectangle_1.set(setting, slice.get(setting));
457
+ });
458
+ }
459
+ }
460
+ }
461
+ });
462
+ Object.defineProperty(Venn, "className", {
463
+ enumerable: true,
464
+ configurable: true,
465
+ writable: true,
466
+ value: "Venn"
467
+ });
468
+ Object.defineProperty(Venn, "classNames", {
469
+ enumerable: true,
470
+ configurable: true,
471
+ writable: true,
472
+ value: Series.classNames.concat([Venn.className])
473
+ });
474
+ return Venn;
475
+ }(Series));
476
+ export { Venn };
477
+ //# sourceMappingURL=Venn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Venn.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/venn/Venn.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\n\nimport { VennDefaultTheme } from \"./VennDefaultTheme\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate } from \"../../core/render/Series\";\nimport { Template } from \"../../core/util/Template\";\nimport { Graphics, visualSettings } from \"../../core/render/Graphics\";\nimport { Container } from \"../../core/render/Container\";\nimport { Label } from \"../../core/render/Label\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport type { ILegendDataItem } from \"../../core/render/Legend\";\nimport type { Color } from \"../../core/util/Color\";\nimport type { ColorSet } from \"../../core/util/ColorSet\";\n\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as venn from \"./vennjs/index.js\";\n\nexport interface IVennDataItem extends ISeriesDataItem {\n\n\t/**\n\t * Array of categories that this data item is an intersection for.\n\t */\n\tintersections: Array<string>;\n\n\t/**\n\t * Category.\n\t */\n\tcategory: string;\n\n\t/**\n\t * Slice visaul element.\n\t */\n\tslice: Graphics;\n\n\t/**\n\t * Slice label.\n\t */\n\tlabel: Label;\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\nexport interface IVennSettings extends ISeriesSettings {\n\n\t/**\n\t * A field in data that holds array of categories that overlap.\n\t */\n\tintersectionsField?: string;\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 * A field that holds color for slice fill.\n\t */\n\tfillField?: string;\n\n}\n\nexport interface IVennPrivate extends ISeriesPrivate {\n}\n\n/**\n * Creates a Venn diagram.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/venn/} for more info\n * @important\n */\nexport class Venn extends Series {\n\n\tpublic static className: string = \"Venn\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([Venn.className]);\n\n\tdeclare public _settings: IVennSettings;\n\tdeclare public _privateSettings: IVennPrivate;\n\tdeclare public _dataItemSettings: IVennDataItem;\n\n\tprotected _sets: string = \"\";\n\n\t/**\n\t * A [[Container]] that holds all slices (circles and intersections).\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly slicesContainer = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * A [[Container]] that holds all labels.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly labelsContainer = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * A [[Graphics]] element that is used to show the shape of the hovered slice\n\t * or intersection.\n\t *\n\t * @default Graphics.new()\n\t */\n\tpublic readonly hoverGraphics = this.slicesContainer.children.push(Graphics.new(this._root, { position: \"absolute\", isMeasured: false }))\n\n\tprotected _hovered?: Graphics;\n\n\tprotected _afterNew() {\n\t\tthis._defaultThemes.push(VennDefaultTheme.new(this._root));\n\t\tthis.fields.push(\"intersections\", \"category\", \"fill\");\n\t\tsuper._afterNew();\n\t}\n\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<Graphics> = this._makeSlices();\n\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeSlice(dataItem: DataItem<this[\"_dataItemSettings\"]>): Graphics {\n\t\tconst slice = this.slicesContainer.children.push(this.slices.make());\n\t\tslice.events.on(\"pointerover\", (e) => {\n\t\t\tthis._hovered = e.target;\n\t\t\tthis._updateHover();\n\t\t})\n\n\t\tslice.events.on(\"pointerout\", () => {\n\t\t\tthis._hovered = undefined;\n\t\t\tthis.hoverGraphics.hide();\n\t\t})\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\tprotected _updateHover() {\n\t\tif (this._hovered) {\n\t\t\tconst hoverGraphics = this.hoverGraphics;\n\t\t\thoverGraphics.set(\"svgPath\", this._hovered.get(\"svgPath\"));\n\t\t\thoverGraphics.show();\n\t\t\thoverGraphics.toFront();\n\t\t}\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<Label> = this._makeLabels();\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLabel(dataItem: DataItem<this[\"_dataItemSettings\"]>): Label {\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\n\tprotected _makeSlices(): ListTemplate<Graphics> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Graphics._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.slices.template.get(\"themeTags\", []), [\"venn\", \"series\"])\n\t\t\t}, [this.slices.template]),\n\t\t);\n\t}\n\n\tprotected _makeLabels(): ListTemplate<Label> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Label._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [\"venn\", \"series\"])\n\t\t\t}, [this.labels.template]),\n\t\t);\n\t}\n\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\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\n\t\tthis.makeSlice(dataItem);\n\t\tthis.makeLabel(dataItem);\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tif (this._valuesDirty || this._sizeDirty) {\n\t\t\tconst sets: any[] = [];\n\n\t\t\t// prepare data for venn\n\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\tconst set: any = {};\n\t\t\t\tconst intersections = dataItem.get(\"intersections\");\n\t\t\t\tif (intersections) {\n\t\t\t\t\tset.sets = intersections;\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tset.sets = [dataItem.get(\"category\")];\n\t\t\t\t}\n\t\t\t\tset.size = dataItem.get(\"valueWorking\");\n\n\t\t\t\tif (set.size > 0) {\n\t\t\t\t\tsets.push(set);\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tconst newSets = sets.toString();\n\n\t\t\tthis._sets = newSets;\n\n\t\t\tif (sets.length > 0) {\n\t\t\t\tlet vennData = venn.venn(sets);\n\t\t\t\tvennData = venn.normalizeSolution(vennData, null, null);\n\t\t\t\tvennData = venn.scaleSolution(vennData, this.innerWidth(), this.innerHeight(), 0);\n\n\t\t\t\tconst circles: any = {};\n\t\t\t\tfor (let name in vennData) {\n\t\t\t\t\tlet item = vennData[name];\n\t\t\t\t\tlet r = item.radius;\n\n\t\t\t\t\tconst dataItem = this.getDataItemByCategory(name);\n\t\t\t\t\tif (dataItem) {\n\t\t\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\t\t\tconst color = dataItem.get(\"fill\");\n\t\t\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\t\t\tslice._setDefault(\"stroke\", color);\n\n\t\t\t\t\t\tslice.set(\"svgPath\", \"M\" + item.x + \",\" + item.y + \" m -\" + r + \", 0 a \" + r + \",\" + r + \" 0 1,1 \" + r * 2 + \",0 a \" + r + \",\" + r + \" 0 1,1 -\" + r * 2 + \",0\");\n\t\t\t\t\t\tcircles[name] = item;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\n\t\t\t\tlet centers: any = venn.computeTextCentres(circles, sets);\n\n\n\t\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\t\tlet name = dataItem.get(\"category\");\n\t\t\t\t\tlet center = centers[name];\n\t\t\t\t\tconst intersections = dataItem.get(\"intersections\");\n\t\t\t\t\tif (intersections) {\n\t\t\t\t\t\tname = intersections.toString();\n\t\t\t\t\t\tcenter = centers[name];\n\t\t\t\t\t\tif (center) {\n\t\t\t\t\t\t\tlet set = intersections;\n\t\t\t\t\t\t\tlet cc = [];\n\n\t\t\t\t\t\t\tfor (let s = 0; s < set.length; s++) {\n\t\t\t\t\t\t\t\tcc.push(circles[set[s]]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tlet intersectionPath = venn.intersectionAreaPath(cc)\n\t\t\t\t\t\t\tlet slice = dataItem.get(\"slice\");\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\n\t\t\t\t\t\t\tslice.setAll({ svgPath: intersectionPath });\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (center) {\n\t\t\t\t\t\tlet label = dataItem.get(\"label\");\n\t\t\t\t\t\tlabel.setAll({ x: center.x, y: center.y });\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.updateLegendValue(dataItem);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tthis._updateHover();\n\t\t}\n\t}\n\n\t/**\n\t * Looks up and returns a data item by its category.\n\t *\n\t * @param category Category\n\t * @return Data item\n\t */\n\tpublic getDataItemByCategory(id: string): DataItem<this[\"_dataItemSettings\"]> | undefined {\n\t\treturn $array.find(this.dataItems, (dataItem: any) => {\n\t\t\treturn dataItem.get(\"category\") == id;\n\t\t})\n\t}\n\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 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\n\t\tconst intersections = dataItem.get(\"intersections\");\n\t\tif (intersections) {\n\t\t\t$array.each(intersections, (cat) => {\n\t\t\t\tconst di = this.getDataItemByCategory(cat);\n\t\t\t\tif (di && di.isHidden()) {\n\t\t\t\t\tthis.showDataItem(di, duration);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tif (!intersections) {\n\t\t\tconst category = dataItem.get(\"category\");\n\n\t\t\t$array.each(this.dataItems, (di) => {\n\t\t\t\tconst intersections = di.get(\"intersections\");\n\t\t\t\tif (di != dataItem && intersections) {\n\t\t\t\t\tlet allVisible = true;\n\t\t\t\t\t$array.each(intersections, (cat) => {\n\t\t\t\t\t\tconst dii = this.getDataItemByCategory(cat);\n\t\t\t\t\t\tif (dii && dii.isHidden()) {\n\t\t\t\t\t\t\tallVisible = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\n\t\t\t\t\tif (allVisible && intersections.indexOf(category) != -1) {\n\t\t\t\t\t\tif (di.isHidden()) {\n\t\t\t\t\t\t\tthis.showDataItem(di, duration);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\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 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\tif (slice) {\n\t\t\tpromises.push(slice.hide(duration));\n\t\t}\n\n\t\tif (!dataItem.get(\"intersections\")) {\n\t\t\t$array.each(this.dataItems, (di) => {\n\t\t\t\tconst intersections = di.get(\"intersections\");\n\t\t\t\tif (di != dataItem && intersections) {\n\t\t\t\t\tif (intersections.indexOf(dataItem.get(\"category\")) != -1) {\n\t\t\t\t\t\tthis.hideDataItem(di, duration);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\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\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 * @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\tmarkerRectangle.set(setting, slice.get(setting));\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -0,0 +1,8 @@
1
+ import { Theme } from "../../core/Theme";
2
+ /**
3
+ * @ignore
4
+ */
5
+ export declare class VennDefaultTheme extends Theme {
6
+ protected setupDefaultRules(): void;
7
+ }
8
+ //# sourceMappingURL=VennDefaultTheme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VennDefaultTheme.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/venn/VennDefaultTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAKzC;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;IAC1C,SAAS,CAAC,iBAAiB;CAoB3B"}
@@ -0,0 +1,37 @@
1
+ import { __extends } from "tslib";
2
+ import { Theme } from "../../core/Theme";
3
+ import { p50, p100 } from "../../core/util/Percent";
4
+ import { ColorSet } from "../../core/util/ColorSet";
5
+ /**
6
+ * @ignore
7
+ */
8
+ var VennDefaultTheme = /** @class */ (function (_super) {
9
+ __extends(VennDefaultTheme, _super);
10
+ function VennDefaultTheme() {
11
+ return _super !== null && _super.apply(this, arguments) || this;
12
+ }
13
+ Object.defineProperty(VennDefaultTheme.prototype, "setupDefaultRules", {
14
+ enumerable: false,
15
+ configurable: true,
16
+ writable: true,
17
+ value: function () {
18
+ _super.prototype.setupDefaultRules.call(this);
19
+ this.rule("Venn").setAll({
20
+ legendLabelText: "{category}",
21
+ legendValueText: "{value}",
22
+ colors: ColorSet.new(this._root, {}),
23
+ width: p100,
24
+ height: p100
25
+ });
26
+ this.rule("Label", ["venn"]).setAll({
27
+ text: "{category}",
28
+ populateText: true,
29
+ centerX: p50,
30
+ centerY: p50
31
+ });
32
+ }
33
+ });
34
+ return VennDefaultTheme;
35
+ }(Theme));
36
+ export { VennDefaultTheme };
37
+ //# sourceMappingURL=VennDefaultTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VennDefaultTheme.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/venn/VennDefaultTheme.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGpD;;GAEG;AACH;IAAsC,oCAAK;IAA3C;;IAqBA,CAAC;;;;;eApBA;YACC,iBAAM,iBAAiB,WAAE,CAAC;YAE1B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;gBACxB,eAAe,EAAE,YAAY;gBAC7B,eAAe,EAAE,SAAS;gBAC1B,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;gBACpC,KAAK,EAAE,IAAI;gBACX,MAAM,EAAE,IAAI;aACZ,CAAC,CAAC;YAGH,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;gBACnC,IAAI,EAAE,YAAY;gBAClB,YAAY,EAAE,IAAI;gBAClB,OAAO,EAAE,GAAG;gBACZ,OAAO,EAAE,GAAG;aACZ,CAAC,CAAC;QAEJ,CAAC;;IACF,uBAAC;AAAD,CAAC,AArBD,CAAsC,KAAK,GAqB1C","sourcesContent":["import { Theme } from \"../../core/Theme\";\r\nimport { p50, p100 } from \"../../core/util/Percent\";\r\nimport { ColorSet } from \"../../core/util/ColorSet\";\r\n\r\n\r\n/**\r\n * @ignore\r\n */\r\nexport class VennDefaultTheme extends Theme {\r\n\tprotected setupDefaultRules() {\r\n\t\tsuper.setupDefaultRules();\r\n\r\n\t\tthis.rule(\"Venn\").setAll({\r\n\t\t\tlegendLabelText: \"{category}\",\r\n\t\t\tlegendValueText: \"{value}\",\r\n\t\t\tcolors: ColorSet.new(this._root, {}),\r\n\t\t\twidth: p100,\r\n\t\t\theight: p100\r\n\t\t});\r\n\r\n\r\n\t\tthis.rule(\"Label\", [\"venn\"]).setAll({\r\n\t\t\ttext: \"{category}\",\r\n\t\t\tpopulateText: true,\r\n\t\t\tcenterX: p50,\r\n\t\t\tcenterY: p50\r\n\t\t});\r\n\r\n\t}\r\n}\r\n"]}