@amcharts/amcharts5 5.9.12 → 5.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (261) hide show
  1. package/.internal/charts/flow/ArcDiagramNodes.d.ts.map +1 -1
  2. package/.internal/charts/flow/ArcDiagramNodes.js +2 -0
  3. package/.internal/charts/flow/ArcDiagramNodes.js.map +1 -1
  4. package/.internal/charts/flow/ChordNodes.d.ts.map +1 -1
  5. package/.internal/charts/flow/ChordNodes.js +2 -0
  6. package/.internal/charts/flow/ChordNodes.js.map +1 -1
  7. package/.internal/charts/flow/FlowNodes.d.ts +17 -1
  8. package/.internal/charts/flow/FlowNodes.d.ts.map +1 -1
  9. package/.internal/charts/flow/FlowNodes.js +13 -0
  10. package/.internal/charts/flow/FlowNodes.js.map +1 -1
  11. package/.internal/charts/flow/SankeyNodes.d.ts.map +1 -1
  12. package/.internal/charts/flow/SankeyNodes.js +2 -0
  13. package/.internal/charts/flow/SankeyNodes.js.map +1 -1
  14. package/.internal/charts/funnel/FunnelSeries.d.ts.map +1 -1
  15. package/.internal/charts/funnel/FunnelSeries.js +2 -0
  16. package/.internal/charts/funnel/FunnelSeries.js.map +1 -1
  17. package/.internal/charts/hierarchy/Hierarchy.d.ts +16 -0
  18. package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
  19. package/.internal/charts/hierarchy/Hierarchy.js +25 -4
  20. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  21. package/.internal/charts/hierarchy/HierarchyLink.d.ts +2 -0
  22. package/.internal/charts/hierarchy/HierarchyLink.d.ts.map +1 -1
  23. package/.internal/charts/hierarchy/HierarchyLink.js +22 -0
  24. package/.internal/charts/hierarchy/HierarchyLink.js.map +1 -1
  25. package/.internal/charts/hierarchy/LinkedHierarchy.d.ts.map +1 -1
  26. package/.internal/charts/hierarchy/LinkedHierarchy.js +5 -0
  27. package/.internal/charts/hierarchy/LinkedHierarchy.js.map +1 -1
  28. package/.internal/charts/hierarchy/Pack.d.ts.map +1 -1
  29. package/.internal/charts/hierarchy/Pack.js +2 -0
  30. package/.internal/charts/hierarchy/Pack.js.map +1 -1
  31. package/.internal/charts/hierarchy/Partition.d.ts.map +1 -1
  32. package/.internal/charts/hierarchy/Partition.js +2 -0
  33. package/.internal/charts/hierarchy/Partition.js.map +1 -1
  34. package/.internal/charts/hierarchy/Sunburst.d.ts.map +1 -1
  35. package/.internal/charts/hierarchy/Sunburst.js +2 -0
  36. package/.internal/charts/hierarchy/Sunburst.js.map +1 -1
  37. package/.internal/charts/hierarchy/Treemap.d.ts.map +1 -1
  38. package/.internal/charts/hierarchy/Treemap.js +2 -0
  39. package/.internal/charts/hierarchy/Treemap.js.map +1 -1
  40. package/.internal/charts/hierarchy/VoronoiTreemap.d.ts.map +1 -1
  41. package/.internal/charts/hierarchy/VoronoiTreemap.js +2 -0
  42. package/.internal/charts/hierarchy/VoronoiTreemap.js.map +1 -1
  43. package/.internal/charts/percent/PercentSeries.d.ts +16 -0
  44. package/.internal/charts/percent/PercentSeries.d.ts.map +1 -1
  45. package/.internal/charts/percent/PercentSeries.js +13 -0
  46. package/.internal/charts/percent/PercentSeries.js.map +1 -1
  47. package/.internal/charts/pie/PieSeries.d.ts.map +1 -1
  48. package/.internal/charts/pie/PieSeries.js +2 -0
  49. package/.internal/charts/pie/PieSeries.js.map +1 -1
  50. package/.internal/charts/stock/indicators/ChartIndicator.js +2 -2
  51. package/.internal/charts/stock/indicators/ChartIndicator.js.map +1 -1
  52. package/.internal/charts/venn/Venn.d.ts +19 -3
  53. package/.internal/charts/venn/Venn.d.ts.map +1 -1
  54. package/.internal/charts/venn/Venn.js +13 -0
  55. package/.internal/charts/venn/Venn.js.map +1 -1
  56. package/.internal/charts/xy/XYChart.d.ts +1 -1
  57. package/.internal/charts/xy/XYChart.d.ts.map +1 -1
  58. package/.internal/charts/xy/XYChart.js +10 -2
  59. package/.internal/charts/xy/XYChart.js.map +1 -1
  60. package/.internal/charts/xy/axes/ValueAxis.d.ts +2 -0
  61. package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
  62. package/.internal/charts/xy/axes/ValueAxis.js +27 -4
  63. package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
  64. package/.internal/charts/xy/series/BaseColumnSeries.d.ts.map +1 -1
  65. package/.internal/charts/xy/series/BaseColumnSeries.js +5 -0
  66. package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
  67. package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
  68. package/.internal/charts/xy/series/LineSeries.js +8 -0
  69. package/.internal/charts/xy/series/LineSeries.js.map +1 -1
  70. package/.internal/core/Classes.d.ts +2 -0
  71. package/.internal/core/Classes.d.ts.map +1 -1
  72. package/.internal/core/Classes.js.map +1 -1
  73. package/.internal/core/Registry.js +1 -1
  74. package/.internal/core/Registry.js.map +1 -1
  75. package/.internal/core/render/Component.d.ts +12 -4
  76. package/.internal/core/render/Component.d.ts.map +1 -1
  77. package/.internal/core/render/Component.js +14 -6
  78. package/.internal/core/render/Component.js.map +1 -1
  79. package/.internal/core/render/HeatLegend.d.ts.map +1 -1
  80. package/.internal/core/render/HeatLegend.js +4 -1
  81. package/.internal/core/render/HeatLegend.js.map +1 -1
  82. package/.internal/core/render/SerialChart.d.ts +9 -1
  83. package/.internal/core/render/SerialChart.d.ts.map +1 -1
  84. package/.internal/core/render/SerialChart.js +4 -0
  85. package/.internal/core/render/SerialChart.js.map +1 -1
  86. package/.internal/core/render/Series.d.ts +12 -4
  87. package/.internal/core/render/Series.d.ts.map +1 -1
  88. package/.internal/core/render/Series.js +4 -3
  89. package/.internal/core/render/Series.js.map +1 -1
  90. package/.internal/core/render/Sprite.d.ts.map +1 -1
  91. package/.internal/core/render/Sprite.js +45 -39
  92. package/.internal/core/render/Sprite.js.map +1 -1
  93. package/.internal/core/render/ZoomableContainer.d.ts.map +1 -1
  94. package/.internal/core/render/ZoomableContainer.js +15 -0
  95. package/.internal/core/render/ZoomableContainer.js.map +1 -1
  96. package/.internal/core/util/DurationFormatter.d.ts.map +1 -1
  97. package/.internal/core/util/DurationFormatter.js +9 -2
  98. package/.internal/core/util/DurationFormatter.js.map +1 -1
  99. package/.internal/core/util/PatternSet.d.ts +91 -0
  100. package/.internal/core/util/PatternSet.d.ts.map +1 -0
  101. package/.internal/core/util/PatternSet.js +236 -0
  102. package/.internal/core/util/PatternSet.js.map +1 -0
  103. package/.internal/plugins/json/Classes-script.d.ts +2 -0
  104. package/.internal/plugins/json/Classes-script.d.ts.map +1 -1
  105. package/.internal/plugins/json/Classes-script.js +1 -0
  106. package/.internal/plugins/json/Classes-script.js.map +1 -1
  107. package/.internal/plugins/json/Classes.d.ts +2 -0
  108. package/.internal/plugins/json/Classes.d.ts.map +1 -1
  109. package/.internal/plugins/json/Classes.js +1 -0
  110. package/.internal/plugins/json/Classes.js.map +1 -1
  111. package/.internal/themes/DefaultTheme.d.ts.map +1 -1
  112. package/.internal/themes/DefaultTheme.js +7 -0
  113. package/.internal/themes/DefaultTheme.js.map +1 -1
  114. package/CHANGELOG.md +26 -0
  115. package/examples/javascript/flow-arc-horizontal/package.json +1 -1
  116. package/examples/javascript/flow-arc-vertical/package.json +1 -1
  117. package/examples/javascript/flow-chord/package.json +1 -1
  118. package/examples/javascript/flow-chord-directed/package.json +1 -1
  119. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  120. package/examples/javascript/flow-sankey/package.json +1 -1
  121. package/examples/javascript/gauge/package.json +1 -1
  122. package/examples/javascript/gauge-bands/package.json +1 -1
  123. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  124. package/examples/javascript/hierarchy-pack/package.json +1 -1
  125. package/examples/javascript/hierarchy-partition/package.json +1 -1
  126. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  127. package/examples/javascript/hierarchy-tree/package.json +1 -1
  128. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  129. package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
  130. package/examples/javascript/jest/package.json +1 -1
  131. package/examples/javascript/json-pie/package.json +1 -1
  132. package/examples/javascript/json-xy/package.json +1 -1
  133. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  134. package/examples/javascript/map-clustered-points/package.json +1 -1
  135. package/examples/javascript/map-day-and-night/package.json +1 -1
  136. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  137. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  138. package/examples/javascript/map-with-bubbles/package.json +1 -1
  139. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  140. package/examples/javascript/misc-40-charts/package.json +1 -1
  141. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  142. package/examples/javascript/pie-chart/package.json +1 -1
  143. package/examples/javascript/pie-donut-chart/package.json +1 -1
  144. package/examples/javascript/pie-variable-radius/package.json +1 -1
  145. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  146. package/examples/javascript/radar-heat-map/package.json +1 -1
  147. package/examples/javascript/radar-line/package.json +1 -1
  148. package/examples/javascript/radar-time-line/package.json +1 -1
  149. package/examples/javascript/sliced-funnel/package.json +1 -1
  150. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  151. package/examples/javascript/sliced-pyramid/package.json +1 -1
  152. package/examples/javascript/stock-chart/package.json +1 -1
  153. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  154. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  155. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  156. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  157. package/examples/javascript/stock-chart-live/package.json +1 -1
  158. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  159. package/examples/javascript/venn-diagram/package.json +1 -1
  160. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  161. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  162. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  163. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  164. package/examples/javascript/xy-bubble/package.json +1 -1
  165. package/examples/javascript/xy-candlestick/package.json +1 -1
  166. package/examples/javascript/xy-clustered-column/package.json +1 -1
  167. package/examples/javascript/xy-column/package.json +1 -1
  168. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  169. package/examples/javascript/xy-data-grouping/package.json +1 -1
  170. package/examples/javascript/xy-draggable-range/package.json +1 -1
  171. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  172. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  173. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  174. package/examples/javascript/xy-line/package.json +1 -1
  175. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  176. package/examples/javascript/xy-live-data/package.json +1 -1
  177. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  178. package/examples/javascript/xy-ohlc/package.json +1 -1
  179. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  180. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  181. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  182. package/examples/javascript/xy-stacked-column/package.json +1 -1
  183. package/examples/javascript/xy-stacked-step/package.json +1 -1
  184. package/examples/javascript/xy-stock/package.json +1 -1
  185. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  186. package/examples/typescript/flow-arc-horizontal/package.json +1 -1
  187. package/examples/typescript/flow-arc-vertical/package.json +1 -1
  188. package/examples/typescript/flow-chord/package.json +1 -1
  189. package/examples/typescript/flow-chord-directed/package.json +1 -1
  190. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  191. package/examples/typescript/flow-sankey/package.json +1 -1
  192. package/examples/typescript/gauge/package.json +1 -1
  193. package/examples/typescript/gauge-bands/package.json +1 -1
  194. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  195. package/examples/typescript/hierarchy-pack/package.json +1 -1
  196. package/examples/typescript/hierarchy-partition/package.json +1 -1
  197. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  198. package/examples/typescript/hierarchy-tree/package.json +1 -1
  199. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  200. package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
  201. package/examples/typescript/jest/package.json +1 -1
  202. package/examples/typescript/json-pie/package.json +1 -1
  203. package/examples/typescript/json-xy/package.json +1 -1
  204. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  205. package/examples/typescript/map-clustered-points/package.json +1 -1
  206. package/examples/typescript/map-day-and-night/package.json +1 -1
  207. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  208. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  209. package/examples/typescript/map-with-bubbles/package.json +1 -1
  210. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  211. package/examples/typescript/misc-40-charts/package.json +1 -1
  212. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  213. package/examples/typescript/pie-chart/package.json +1 -1
  214. package/examples/typescript/pie-donut-chart/package.json +1 -1
  215. package/examples/typescript/pie-variable-radius/package.json +1 -1
  216. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  217. package/examples/typescript/radar-heat-map/package.json +1 -1
  218. package/examples/typescript/radar-line/package.json +1 -1
  219. package/examples/typescript/radar-time-line/package.json +1 -1
  220. package/examples/typescript/sliced-funnel/package.json +1 -1
  221. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  222. package/examples/typescript/sliced-pyramid/package.json +1 -1
  223. package/examples/typescript/stock-chart/package.json +1 -1
  224. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  225. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  226. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  227. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  228. package/examples/typescript/stock-chart-live/package.json +1 -1
  229. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  230. package/examples/typescript/venn-diagram/package.json +1 -1
  231. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  232. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  233. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  234. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  235. package/examples/typescript/xy-bubble/package.json +1 -1
  236. package/examples/typescript/xy-candlestick/package.json +1 -1
  237. package/examples/typescript/xy-clustered-column/package.json +1 -1
  238. package/examples/typescript/xy-column/package.json +1 -1
  239. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  240. package/examples/typescript/xy-data-grouping/package.json +1 -1
  241. package/examples/typescript/xy-draggable-range/package.json +1 -1
  242. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  243. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  244. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  245. package/examples/typescript/xy-line/package.json +1 -1
  246. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  247. package/examples/typescript/xy-live-data/package.json +1 -1
  248. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  249. package/examples/typescript/xy-ohlc/package.json +1 -1
  250. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  251. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  252. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  253. package/examples/typescript/xy-stacked-column/package.json +1 -1
  254. package/examples/typescript/xy-stacked-step/package.json +1 -1
  255. package/examples/typescript/xy-stock/package.json +1 -1
  256. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  257. package/index.d.ts +1 -0
  258. package/index.d.ts.map +1 -1
  259. package/index.js +1 -0
  260. package/index.js.map +1 -1
  261. package/package.json +4 -1
@@ -76,6 +76,28 @@ export class HierarchyLink extends Graphics {
76
76
  }
77
77
  }
78
78
  }
79
+ hide(duration) {
80
+ $array.each(this.bullets, (bullet) => {
81
+ if (bullet) {
82
+ const sprite = bullet.get("sprite");
83
+ if (sprite) {
84
+ sprite.hide(duration);
85
+ }
86
+ }
87
+ });
88
+ return super.hide();
89
+ }
90
+ show(duration) {
91
+ $array.each(this.bullets, (bullet) => {
92
+ if (bullet) {
93
+ const sprite = bullet.get("sprite");
94
+ if (sprite) {
95
+ sprite.show(duration);
96
+ }
97
+ }
98
+ });
99
+ return super.show();
100
+ }
79
101
  _beforeChanged() {
80
102
  super._beforeChanged();
81
103
  if (this.isDirty("source")) {
@@ -1 +1 @@
1
- {"version":3,"file":"HierarchyLink.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/HierarchyLink.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IHierarchyDataItem } from \"./Hierarchy\";\nimport type { DataItem } from \"../../core/render/Component\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport { Graphics, IGraphicsSettings, IGraphicsPrivate } from \"../../core/render/Graphics\";\nimport * as $array from \"../../core/util/Array\";\nimport type { Root } from \"../../core/Root\";\nimport type { List } from \"../../core/util/List\";\nimport type { LinkedHierarchy } from \"./LinkedHierarchy\";\n\nexport interface IHierarchyLinkSettings extends IGraphicsSettings {\n\n\t/**\n\t * Source node data item.\n\t */\n\tsource?: DataItem<IHierarchyDataItem>;\n\n\t/**\n\t * Target node data item.\n\t */\n\ttarget?: DataItem<IHierarchyDataItem>;\n\n\t/**\n\t * Strength of the link.\n\t */\n\tstrength?: number;\n\n\t/**\n\t * Distance in pixels.\n\t */\n\tdistance?: number;\n\n}\n\nexport interface IHierarchyLinkPrivate extends IGraphicsPrivate {\n\td3Link: any;\n}\n\n/**\n * Draws a link between nodes in a hierarchy series.\n */\nexport class HierarchyLink extends Graphics {\n\tdeclare public _settings: IHierarchyLinkSettings;\n\tdeclare public _privateSettings: IHierarchyLinkPrivate;\n\n\tpublic static className: string = \"HierarchyLink\";\n\tpublic static classNames: Array<string> = Graphics.classNames.concat([HierarchyLink.className]);\n\n\tpublic bullets: Array<Bullet> = [];\n\n\tpublic series?: LinkedHierarchy;\n\n\tpublic _handleBullets(bullets:List<<D extends DataItem<IHierarchyDataItem>>(root: Root, source: D, target:D) => Bullet | undefined>) {\n\t\t$array.each(this.bullets, (bullet) => {\n\t\t\tbullet.dispose();\n\t\t})\n\t\t\n\t\tbullets.each((bullet)=>{\n\t\t\tconst newBullet = bullet(this._root, this.get(\"source\")!, this.get(\"target\")!);\n\t\t\tif (newBullet) {\n\t\t\t\tthis.bullets.push(newBullet);\n\n\t\t\t\tconst sprite = newBullet.get(\"sprite\");\n\n\t\t\t\tthis.addDisposer(newBullet.on(\"locationX\", () => {\n\t\t\t\t\tthis._clear = true;\n\t\t\t\t\tthis.markDirty();\n\t\t\t\t}))\n\n\t\t\t\tif(sprite){\n\t\t\t\t\tconst series = this.series;\n\t\t\t\t\tif(series){\n\t\t\t\t\t\tseries.linksContainer.children.push(sprite);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\t\t\t\n\t\t})\t\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\t\tif (this._clear) {\n\t\t\tlet source = this.get(\"source\");\n\t\t\tlet target = this.get(\"target\");\n\t\t\tif (source && target) {\n\t\t\t\tconst sourceNode = source.get(\"node\");\n\t\t\t\tconst targetNode = target.get(\"node\");\n\n\t\t\t\tconst x0 = sourceNode.x();\n\t\t\t\tconst y0 = sourceNode.y();\n\n\t\t\t\tconst x1 = targetNode.x();\n\t\t\t\tconst y1 = targetNode.y();\n\n\t\t\t\tthis._display.moveTo(x0, y0);\n\t\t\t\tthis._display.lineTo(x1, y1);\n\n\t\t\t\tconst sourceRadius = sourceNode.dataItem?.get(\"outerCircle\" as any).get(\"radius\", 0);\n\t\t\t\tconst targetRadius = targetNode.dataItem?.get(\"outerCircle\" as any).get(\"radius\", 0);\n\n\t\t\t\tconst distance = Math.hypot(x1 - x0, y1 - y0);\n\t\t\t\tconst trueDistance = distance - sourceRadius - targetRadius;\n\n\t\t\t\t$array.each(this.bullets, (bullet) => {\n\t\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\t\t\t\t\tif(sprite){\n\t\t\t\t\t\tconst location = bullet.get(\"locationX\", 0.5);\n\n\t\t\t\t\t\t// const tx = trueDistance / distance * (x1 - x0);\n\t\t\t\t\t\t// const ty = trueDistance / distance * (y1 - y0);\n\n\t\t\t\t\t\tsprite.set(\"x\", x0 + sourceRadius / distance * (x1 - x0) + trueDistance / distance * (x1 - x0) * location);\n\t\t\t\t\t\tsprite.set(\"y\", y0 + sourceRadius / distance * (y1 - y0) + trueDistance / distance * (y1 - y0) * location);\n\n\t\t\t\t\t\tif(bullet.get(\"autoRotate\")){\n\t\t\t\t\t\t\tsprite.set(\"rotation\", Math.atan2(y1 - y0, x1 - x0) * 180 / Math.PI + bullet.get(\"autoRotateAngle\", 0));\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\t}\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"source\")) {\n\t\t\tconst source = this.get(\"source\");\n\t\t\tif (source) {\n\t\t\t\tconst sourceNode = source.get(\"node\");\n\t\t\t\tsourceNode.events.on(\"positionchanged\", () => {\n\t\t\t\t\tthis._markDirtyKey(\"stroke\");\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t\tif (this.isDirty(\"target\")) {\n\t\t\tconst target = this.get(\"target\");\n\t\t\tif (target) {\n\t\t\t\tconst targetNode = target.get(\"node\");\n\t\t\t\ttargetNode.events.on(\"positionchanged\", () => {\n\t\t\t\t\tthis._markDirtyKey(\"stroke\");\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic dispose(){\n\t\tsuper.dispose();\n\t\t$array.each(this.bullets, (bullet) => {\n\t\t\tbullet.dispose();\n\t\t})\n\t\tthis.bullets = [];\n\t}\n}\n"]}
1
+ {"version":3,"file":"HierarchyLink.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/HierarchyLink.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IHierarchyDataItem } from \"./Hierarchy\";\nimport type { DataItem } from \"../../core/render/Component\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport { Graphics, IGraphicsSettings, IGraphicsPrivate } from \"../../core/render/Graphics\";\nimport * as $array from \"../../core/util/Array\";\nimport type { Root } from \"../../core/Root\";\nimport type { List } from \"../../core/util/List\";\nimport type { LinkedHierarchy } from \"./LinkedHierarchy\";\n\nexport interface IHierarchyLinkSettings extends IGraphicsSettings {\n\n\t/**\n\t * Source node data item.\n\t */\n\tsource?: DataItem<IHierarchyDataItem>;\n\n\t/**\n\t * Target node data item.\n\t */\n\ttarget?: DataItem<IHierarchyDataItem>;\n\n\t/**\n\t * Strength of the link.\n\t */\n\tstrength?: number;\n\n\t/**\n\t * Distance in pixels.\n\t */\n\tdistance?: number;\n\n}\n\nexport interface IHierarchyLinkPrivate extends IGraphicsPrivate {\n\td3Link: any;\n}\n\n/**\n * Draws a link between nodes in a hierarchy series.\n */\nexport class HierarchyLink extends Graphics {\n\tdeclare public _settings: IHierarchyLinkSettings;\n\tdeclare public _privateSettings: IHierarchyLinkPrivate;\n\n\tpublic static className: string = \"HierarchyLink\";\n\tpublic static classNames: Array<string> = Graphics.classNames.concat([HierarchyLink.className]);\n\n\tpublic bullets: Array<Bullet> = [];\n\n\tpublic series?: LinkedHierarchy;\n\n\tpublic _handleBullets(bullets:List<<D extends DataItem<IHierarchyDataItem>>(root: Root, source: D, target:D) => Bullet | undefined>) {\n\t\t$array.each(this.bullets, (bullet) => {\n\t\t\tbullet.dispose();\n\t\t})\n\t\t\n\t\tbullets.each((bullet)=>{\n\t\t\tconst newBullet = bullet(this._root, this.get(\"source\")!, this.get(\"target\")!);\n\t\t\tif (newBullet) {\n\t\t\t\tthis.bullets.push(newBullet);\n\n\t\t\t\tconst sprite = newBullet.get(\"sprite\");\n\n\t\t\t\tthis.addDisposer(newBullet.on(\"locationX\", () => {\n\t\t\t\t\tthis._clear = true;\n\t\t\t\t\tthis.markDirty();\n\t\t\t\t}))\n\n\t\t\t\tif(sprite){\n\t\t\t\t\tconst series = this.series;\n\t\t\t\t\tif(series){\n\t\t\t\t\t\tseries.linksContainer.children.push(sprite);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\t\t\t\n\t\t})\t\n\t}\n\n\tpublic _changed() {\n\t\tsuper._changed();\n\t\tif (this._clear) {\n\t\t\tlet source = this.get(\"source\");\n\t\t\tlet target = this.get(\"target\");\n\t\t\tif (source && target) {\n\t\t\t\tconst sourceNode = source.get(\"node\");\n\t\t\t\tconst targetNode = target.get(\"node\");\n\n\t\t\t\tconst x0 = sourceNode.x();\n\t\t\t\tconst y0 = sourceNode.y();\n\n\t\t\t\tconst x1 = targetNode.x();\n\t\t\t\tconst y1 = targetNode.y();\n\n\t\t\t\tthis._display.moveTo(x0, y0);\n\t\t\t\tthis._display.lineTo(x1, y1);\n\n\t\t\t\tconst sourceRadius = sourceNode.dataItem?.get(\"outerCircle\" as any).get(\"radius\", 0);\n\t\t\t\tconst targetRadius = targetNode.dataItem?.get(\"outerCircle\" as any).get(\"radius\", 0);\n\n\t\t\t\tconst distance = Math.hypot(x1 - x0, y1 - y0);\n\t\t\t\tconst trueDistance = distance - sourceRadius - targetRadius;\n\n\t\t\t\t$array.each(this.bullets, (bullet) => {\n\t\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\t\t\t\t\tif(sprite){\n\t\t\t\t\t\tconst location = bullet.get(\"locationX\", 0.5);\n\n\t\t\t\t\t\t// const tx = trueDistance / distance * (x1 - x0);\n\t\t\t\t\t\t// const ty = trueDistance / distance * (y1 - y0);\n\n\t\t\t\t\t\tsprite.set(\"x\", x0 + sourceRadius / distance * (x1 - x0) + trueDistance / distance * (x1 - x0) * location);\n\t\t\t\t\t\tsprite.set(\"y\", y0 + sourceRadius / distance * (y1 - y0) + trueDistance / distance * (y1 - y0) * location);\n\n\t\t\t\t\t\tif(bullet.get(\"autoRotate\")){\n\t\t\t\t\t\t\tsprite.set(\"rotation\", Math.atan2(y1 - y0, x1 - x0) * 180 / Math.PI + bullet.get(\"autoRotateAngle\", 0));\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\t}\n\n\tpublic hide(duration?: number){\n\t\t$array.each(this.bullets, (bullet) => {\n\t\t\tif(bullet){\n\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\t\t\t\tif(sprite){\n\t\t\t\t\tsprite.hide(duration);\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\t\treturn super.hide();\t\n\t}\n\n\tpublic show(duration?: number){\n\t\t$array.each(this.bullets, (bullet) => {\n\t\t\tif(bullet){\n\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\t\t\t\tif(sprite){\n\t\t\t\t\tsprite.show(duration);\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\t\treturn super.show();\t\n\t}\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"source\")) {\n\t\t\tconst source = this.get(\"source\");\n\t\t\tif (source) {\n\t\t\t\tconst sourceNode = source.get(\"node\");\n\t\t\t\tsourceNode.events.on(\"positionchanged\", () => {\n\t\t\t\t\tthis._markDirtyKey(\"stroke\");\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t\tif (this.isDirty(\"target\")) {\n\t\t\tconst target = this.get(\"target\");\n\t\t\tif (target) {\n\t\t\t\tconst targetNode = target.get(\"node\");\n\t\t\t\ttargetNode.events.on(\"positionchanged\", () => {\n\t\t\t\t\tthis._markDirtyKey(\"stroke\");\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic dispose(){\n\t\tsuper.dispose();\n\t\t$array.each(this.bullets, (bullet) => {\n\t\t\tbullet.dispose();\n\t\t})\n\t\tthis.bullets = [];\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"LinkedHierarchy.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/LinkedHierarchy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LinkedHierarchy.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/LinkedHierarchy.ts"],"names":[],"mappings":"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"}
@@ -182,10 +182,12 @@ export class LinkedHierarchy extends Hierarchy {
182
182
  });
183
183
  }
184
184
  const fill = dataItem.get("fill");
185
+ const fillPattern = dataItem.get("fillPattern");
185
186
  const circle = dataItem.get("circle");
186
187
  const children = dataItem.get("children");
187
188
  if (circle) {
188
189
  circle._setDefault("fill", fill);
190
+ circle._setDefault("fillPattern", fillPattern);
189
191
  circle._setDefault("stroke", fill);
190
192
  }
191
193
  const outerCircle = dataItem.get("outerCircle");
@@ -195,6 +197,9 @@ export class LinkedHierarchy extends Hierarchy {
195
197
  if (!children || children.length == 0) {
196
198
  outerCircle.setPrivate("visible", false);
197
199
  }
200
+ else {
201
+ outerCircle.setPrivate("visible", true);
202
+ }
198
203
  }
199
204
  }
200
205
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"LinkedHierarchy.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/LinkedHierarchy.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { Bullet } from \"../../core/render/Bullet\";\nimport type * as d3hierarchy from \"d3-hierarchy\";\n\nimport { Hierarchy, IHierarchySettings, IHierarchyDataItem, IHierarchyPrivate, IHierarchyEvents } from \"./Hierarchy\";\nimport { Container } from \"../../core/render/Container\";\nimport { LinkedHierarchyNode } from \"./LinkedHierarchyNode\";\nimport { HierarchyLink } from \"./HierarchyLink\";\nimport { Template } from \"../../core/util/Template\";\nimport { Circle } from \"../../core/render/Circle\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport type { IPoint } from \"../../core/util/IPoint\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $utils from \"../../core/util/Utils\";\nimport { List } from \"../../core/util/List\";\nimport type { Root } from \"../../core/Root\";\n\n/**\n * @ignore\n */\nexport interface ILinkedHierarchyDataObject {\n\tname?: string,\n\tvalue?: number,\n\tchildren?: ILinkedHierarchyDataObject[],\n\tdataItem?: DataItem<ILinkedHierarchyDataItem>\n};\n\nexport interface ILinkedHierarchyDataItem extends IHierarchyDataItem {\n\n\t/**\n\t * An array of child data items.\n\t */\n\tchildren: Array<DataItem<ILinkedHierarchyDataItem>>;\n\n\t/**\n\t * A data item of a parent node.\n\t */\n\tparent: DataItem<ILinkedHierarchyDataItem>;\n\n\t/**\n\t * A related node.\n\t */\n\tnode: LinkedHierarchyNode;\n\n\t/**\n\t * [[Circle]] element of the related node.\n\t */\n\tcircle: Circle;\n\n\t/**\n\t * [[Circle]] element of the related node, representing outer circle.\n\t */\n\touterCircle: Circle;\n\n\t/**\n\t * A [[HierarchyLink]] leading to parent node.\n\t */\n\tparentLink: HierarchyLink;\n\n\t/**\n\t * An [[HierarchyLink]] leading to parent node.\n\t */\n\tlinks: Array<HierarchyLink>;\n\n\t/**\n\t * An array of [[HierarchyLink]] objects leading to child nodes.\n\t */\n\tchildLinks: Array<HierarchyLink>;\n\n\t/**\n\t * An array of IDs of directly linked nodes.\n\t */\n\tlinkWith: Array<string>;\n\n\t/**\n\t * @ignore\n\t */\n\td3HierarchyNode: d3hierarchy.HierarchyPointNode<ILinkedHierarchyDataObject>;\n}\n\nexport interface ILinkedHierarchySettings extends IHierarchySettings {\n\n\t/**\n\t * A field in data which holds IDs of nodes to link with.\n\t */\n\tlinkWithField?: string;\n\n}\n\nexport interface ILinkedHierarchyPrivate extends IHierarchyPrivate {\n}\n\nexport interface ILinkedHierarchyEvents extends IHierarchyEvents {\n}\n\n/**\n * A base class for linked hierarchy series.\n */\nexport abstract class LinkedHierarchy extends Hierarchy {\n\n\tpublic static className: string = \"LinkedHierarchy\";\n\tpublic static classNames: Array<string> = Hierarchy.classNames.concat([LinkedHierarchy.className]);\n\n\tdeclare public _settings: ILinkedHierarchySettings;\n\tdeclare public _privateSettings: ILinkedHierarchyPrivate;\n\tdeclare public _dataItemSettings: ILinkedHierarchyDataItem;\n\tdeclare public _events: ILinkedHierarchyEvents;\n\n\tpublic linkBullets: List<<D extends DataItem<IHierarchyDataItem>>(root: Root, source: D, target:D) => Bullet | undefined> = new List();\n\n\tprotected _afterNew() {\n\t\tthis.fields.push(\"linkWith\", \"x\", \"y\");\n\n\t\tthis._disposers.push(this.linkBullets.events.onAll(() => {\n\t\t\tthis.links.each((link) => {\n\t\t\t\tlink._handleBullets(this.linkBullets);\n\t\t\t})\n\t\t}))\n\n\t\tsuper._afterNew();\n\t}\n\n\t/**\n\t * A list of nodes in a [[LinkedHierarchy]] chart.\n\t *\n\t * @default new ListTemplate<LinkedHierarchyNode>\n\t */\n\tpublic readonly nodes: ListTemplate<LinkedHierarchyNode> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => LinkedHierarchyNode._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.nodes.template.get(\"themeTags\", []), [this._tag, \"linkedhierarchy\", \"hierarchy\", \"node\"]),\n\t\t\tx: this.width() / 2,\n\t\t\ty: this.height() / 2\n\t\t}, [this.nodes.template])\n\t);\n\n\t/**\n\t * A list of node circle elements in a [[LinkedHierarchy]] chart.\n\t *\n\t * @default new ListTemplate<Circle>\n\t */\n\tpublic readonly circles: ListTemplate<Circle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Circle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.circles.template.get(\"themeTags\", []), [this._tag, \"shape\"])\n\t\t}, [this.circles.template])\n\t);\n\n\t/**\n\t * A list of node outer circle elements in a [[LinkedHierarchy]] chart.\n\t *\n\t * @default new ListTemplate<Circle>\n\t */\n\tpublic readonly outerCircles: ListTemplate<Circle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Circle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.outerCircles.template.get(\"themeTags\", []), [this._tag, \"outer\", \"shape\"])\n\t\t}, [this.outerCircles.template])\n\t);\n\n\t/**\n\t * A list of link elements in a [[LinkedHierarchy]] chart.\n\t *\n\t * @default new ListTemplate<HierarchyLink>\n\t */\n\tpublic readonly links: ListTemplate<HierarchyLink> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => HierarchyLink._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.links.template.get(\"themeTags\", []), [this._tag, \"linkedhierarchy\", \"hierarchy\", \"link\"])\n\t\t}, [this.links.template])\n\t);\n\n\t/**\n\t * A [[Container]] that link elements are placed in.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly linksContainer = this.children.moveValue(Container.new(this._root, {}), 0);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>): LinkedHierarchyNode {\n\t\tconst node = super.makeNode(dataItem) as LinkedHierarchyNode;\n\n\t\tconst circle = node.children.moveValue(this.circles.make(), 0);\n\t\tthis.circles.push(circle);\n\t\tnode.setPrivate(\"tooltipTarget\", circle);\n\t\tdataItem.setRaw(\"circle\", circle);\n\n\t\tconst outerCircle = node.children.moveValue(this.outerCircles.make(), 0);\n\t\tthis.outerCircles.push(outerCircle);\n\t\tdataItem.setRaw(\"outerCircle\", outerCircle);\n\n\t\tconst label = dataItem.get(\"label\");\n\n\t\tcircle.on(\"radius\", () => {\n\t\t\tconst d = circle.get(\"radius\", this.width()) * 2;\n\t\t\tlabel.setAll({ maxWidth: d, maxHeight: d })\n\t\t\touterCircle.set(\"radius\", d / 2);\n\n\t\t\tthis._handleRadiusChange();\n\t\t})\n\n\t\tconst d = circle.get(\"radius\", this.width()) * 2;\n\t\tlabel.setAll({ maxWidth: d, maxHeight: d });\n\t\t\n\t\tcircle._setDataItem(dataItem);\n\t\touterCircle._setDataItem(dataItem);\n\n\t\treturn node;\n\t}\n\n\tpublic _handleRadiusChange() {\n\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tdataItem.setRaw(\"childLinks\", []);\n\t\tdataItem.setRaw(\"links\", []);\n\t\tsuper.processDataItem(dataItem);\n\t}\n\n\tprotected _processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper._processDataItem(dataItem);\n\n\t\tconst parentDataItem = dataItem.get(\"parent\");\n\t\tif (parentDataItem && parentDataItem.get(\"depth\") >= this.get(\"topDepth\")) {\n\t\t\tconst link = this.linkDataItems(parentDataItem, dataItem);\n\t\t\tdataItem.setRaw(\"parentLink\", link);\n\t\t}\n\n\t\tconst node = dataItem.get(\"node\");\n\t\tthis.updateLinkWith(this.dataItems);\n\t\tnode._updateLinks(0);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLinkWith(dataItems: Array<DataItem<this[\"_dataItemSettings\"]>>) {\n\t\t$array.each(dataItems, (dataItem) => {\n\t\t\tconst linkWith = dataItem.get(\"linkWith\");\n\t\t\tif (linkWith) {\n\t\t\t\t$array.each(linkWith, (id) => {\n\t\t\t\t\tconst linkWithDataItem = this._getDataItemById(this.dataItems, id);\n\n\t\t\t\t\tif (linkWithDataItem) {\n\t\t\t\t\t\tthis.linkDataItems(dataItem, linkWithDataItem);\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tconst children = dataItem.get(\"children\");\n\t\t\tif (children) {\n\t\t\t\tthis.updateLinkWith(children);\n\t\t\t}\n\t\t})\n\t}\n\n\tprotected _getPoint(hierarchyNode: this[\"_dataItemSettings\"][\"d3HierarchyNode\"]): IPoint {\n\t\treturn { x: hierarchyNode.x, y: hierarchyNode.y };\n\t}\n\n\tprotected _animatePositions(dataItem: DataItem<this[\"_dataItemSettings\"]>){\n\t\tconst node = dataItem.get(\"node\");\n\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\n\t\tconst point = this._getPoint(hierarchyNode);\n\n\t\tconst duration = this.get(\"animationDuration\", 0);\n\t\tconst easing = this.get(\"animationEasing\");\n\n\t\tnode.animate({ key: \"x\", to: point.x, duration: duration, easing: easing });\n\t\tnode.animate({ key: \"y\", to: point.y, duration: duration, easing: easing });\t\t\n\t}\n\n\tprotected _updateNode(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper._updateNode(dataItem);\n\n\t\tthis._animatePositions(dataItem);\n\n\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\n\t\tconst hierarchyChildren = hierarchyNode.children;\n\t\tif (hierarchyChildren) {\n\t\t\t$array.each(hierarchyChildren, (hierarchyChild) => {\n\t\t\t\tthis._updateNodes(hierarchyChild)\n\t\t\t})\n\t\t}\n\n\t\tconst fill = dataItem.get(\"fill\");\n\t\tconst circle = dataItem.get(\"circle\");\n\t\tconst children = dataItem.get(\"children\");\n\t\t\n\t\tif (circle) {\n\t\t\tcircle._setDefault(\"fill\", fill);\n\t\t\tcircle._setDefault(\"stroke\", fill);\n\t\t}\n\n\t\tconst outerCircle = dataItem.get(\"outerCircle\");\n\t\tif (outerCircle) {\n\t\t\touterCircle._setDefault(\"fill\", fill);\n\t\t\touterCircle._setDefault(\"stroke\", fill);\n\n\t\t\tif (!children || children.length == 0) {\n\t\t\t\touterCircle.setPrivate(\"visible\", false);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Link two data items with a link element.\n\t *\n\t * @param source Source node data item\n\t * @param target Target node data item\n\t * @param strength Link strength\n\t * @return Link element\n\t */\n\tpublic linkDataItems(source: DataItem<this[\"_dataItemSettings\"]>, target: DataItem<this[\"_dataItemSettings\"]>, strength?: number): HierarchyLink {\n\n\t\tlet link!: HierarchyLink;\n\n\t\tconst sourceLinks = source.get(\"links\");\n\n\t\tif (sourceLinks) {\n\t\t\t$array.each(sourceLinks, (lnk) => {\n\t\t\t\tif (lnk.get(\"target\") == target) {\n\t\t\t\t\tlink = lnk;\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tconst targetLinks = target.get(\"links\");\n\n\t\tif (targetLinks) {\n\t\t\t$array.each(targetLinks, (lnk) => {\n\t\t\t\tif (lnk.get(\"target\") == source) {\n\t\t\t\t\tlink = lnk;\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tif (!link) {\n\t\t\tlink = this.links.make();\n\t\t\tlink.series = this;\n\t\t\tthis.links.push(link);\n\t\t\tthis.linksContainer.children.push(link);\n\t\t\tlink.set(\"source\", source);\n\t\t\tlink.set(\"target\", target);\n\t\t\tlink._setDataItem(source);\n\n\t\t\tlink._handleBullets(this.linkBullets);\n\t\t\tlink.set(\"stroke\", source.get(\"fill\"));\n\t\t\tif (strength != null) {\n\t\t\t\tlink.set(\"strength\", strength)\n\t\t\t}\n\n\t\t\tsource.get(\"childLinks\").push(link);\n\n\t\t\t$array.move(source.get(\"links\"), link);\n\t\t\t$array.move(target.get(\"links\"), link);\n\n\t\t\tthis._processLink(link, source, target);\n\t\t}\n\n\t\treturn link;\n\t}\n\n\n\t/**\n\t * Unlink two linked data items.\n\t *\n\t * @param source Source node data item\n\t * @param target Target node data item\n\t */\n\tpublic unlinkDataItems(source: DataItem<this[\"_dataItemSettings\"]>, target: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t\tlet link!: HierarchyLink;\n\n\t\tconst sourceLinks = source.get(\"links\");\n\n\t\tif (sourceLinks) {\n\t\t\t$array.each(sourceLinks, (lnk) => {\n\t\t\t\tif (lnk && lnk.get(\"target\") == target) {\n\t\t\t\t\tlink = lnk;\n\t\t\t\t\t$array.remove(sourceLinks, link);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tconst targetLinks = target.get(\"links\");\n\n\t\tif (targetLinks) {\n\t\t\t$array.each(targetLinks, (lnk) => {\n\t\t\t\tif (lnk && lnk.get(\"target\") == source) {\n\t\t\t\t\tlink = lnk;\n\t\t\t\t\t$array.remove(targetLinks, link);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tif (link) {\n\t\t\tthis._disposeLink(link);\n\t\t}\n\n\t\tthis._handleUnlink();\n\t}\n\n\tprotected _handleUnlink() {\n\n\t}\n\n\tprotected _disposeLink(link: HierarchyLink) {\n\t\tthis.links.removeValue(link);\n\t\tlink.dispose();\n\t}\n\n\t/**\n\t * Returns `true` if two nodes are linked with each other.\n\t */\n\tpublic areLinked(source: DataItem<this[\"_dataItemSettings\"]>, target: DataItem<this[\"_dataItemSettings\"]>): boolean {\n\t\tconst sourceLinks = source.get(\"links\");\n\t\tlet linked = false;\n\t\tif (sourceLinks) {\n\t\t\t$array.each(sourceLinks, (lnk) => {\n\t\t\t\tif (lnk.get(\"target\") == target) {\n\t\t\t\t\tlinked = true;\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tconst targetLinks = target.get(\"links\");\n\n\t\tif (targetLinks) {\n\t\t\t$array.each(targetLinks, (lnk) => {\n\t\t\t\tif (lnk.get(\"target\") == source) {\n\t\t\t\t\tlinked = true;\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\treturn linked;\n\t}\n\n\tprotected _processLink(_link: HierarchyLink, _source: DataItem<this[\"_dataItemSettings\"]>, _target: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tconst links = dataItem.get(\"links\");\n\t\tif (links) {\n\t\t\t$array.each(links, (link) => {\n\t\t\t\tthis._disposeLink(link)\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * Select a data item.\n\t * @param dataItem Data item\n\t */\n\tpublic selectDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst parent = dataItem.get(\"parent\");\n\n\t\tif (!dataItem.get(\"disabled\")) {\n\t\t\tthis.set(\"selectedDataItem\", dataItem);\n\t\t}\n\t\telse {\n\t\t\tif (parent) {\n\t\t\t\tthis.setRaw(\"selectedDataItem\", parent);\n\t\t\t\tconst type = \"dataitemselected\";\n\t\t\t\tthis.events.dispatch(type, { type: type, target: this, dataItem: parent });\n\t\t\t\tthis.disableDataItem(dataItem);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"LinkedHierarchy.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/LinkedHierarchy.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { Bullet } from \"../../core/render/Bullet\";\nimport type * as d3hierarchy from \"d3-hierarchy\";\n\nimport { Hierarchy, IHierarchySettings, IHierarchyDataItem, IHierarchyPrivate, IHierarchyEvents } from \"./Hierarchy\";\nimport { Container } from \"../../core/render/Container\";\nimport { LinkedHierarchyNode } from \"./LinkedHierarchyNode\";\nimport { HierarchyLink } from \"./HierarchyLink\";\nimport { Template } from \"../../core/util/Template\";\nimport { Circle } from \"../../core/render/Circle\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport type { IPoint } from \"../../core/util/IPoint\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $utils from \"../../core/util/Utils\";\nimport { List } from \"../../core/util/List\";\nimport type { Root } from \"../../core/Root\";\n\n/**\n * @ignore\n */\nexport interface ILinkedHierarchyDataObject {\n\tname?: string,\n\tvalue?: number,\n\tchildren?: ILinkedHierarchyDataObject[],\n\tdataItem?: DataItem<ILinkedHierarchyDataItem>\n};\n\nexport interface ILinkedHierarchyDataItem extends IHierarchyDataItem {\n\n\t/**\n\t * An array of child data items.\n\t */\n\tchildren: Array<DataItem<ILinkedHierarchyDataItem>>;\n\n\t/**\n\t * A data item of a parent node.\n\t */\n\tparent: DataItem<ILinkedHierarchyDataItem>;\n\n\t/**\n\t * A related node.\n\t */\n\tnode: LinkedHierarchyNode;\n\n\t/**\n\t * [[Circle]] element of the related node.\n\t */\n\tcircle: Circle;\n\n\t/**\n\t * [[Circle]] element of the related node, representing outer circle.\n\t */\n\touterCircle: Circle;\n\n\t/**\n\t * A [[HierarchyLink]] leading to parent node.\n\t */\n\tparentLink: HierarchyLink;\n\n\t/**\n\t * An [[HierarchyLink]] leading to parent node.\n\t */\n\tlinks: Array<HierarchyLink>;\n\n\t/**\n\t * An array of [[HierarchyLink]] objects leading to child nodes.\n\t */\n\tchildLinks: Array<HierarchyLink>;\n\n\t/**\n\t * An array of IDs of directly linked nodes.\n\t */\n\tlinkWith: Array<string>;\n\n\t/**\n\t * @ignore\n\t */\n\td3HierarchyNode: d3hierarchy.HierarchyPointNode<ILinkedHierarchyDataObject>;\n}\n\nexport interface ILinkedHierarchySettings extends IHierarchySettings {\n\n\t/**\n\t * A field in data which holds IDs of nodes to link with.\n\t */\n\tlinkWithField?: string;\n\n}\n\nexport interface ILinkedHierarchyPrivate extends IHierarchyPrivate {\n}\n\nexport interface ILinkedHierarchyEvents extends IHierarchyEvents {\n}\n\n/**\n * A base class for linked hierarchy series.\n */\nexport abstract class LinkedHierarchy extends Hierarchy {\n\n\tpublic static className: string = \"LinkedHierarchy\";\n\tpublic static classNames: Array<string> = Hierarchy.classNames.concat([LinkedHierarchy.className]);\n\n\tdeclare public _settings: ILinkedHierarchySettings;\n\tdeclare public _privateSettings: ILinkedHierarchyPrivate;\n\tdeclare public _dataItemSettings: ILinkedHierarchyDataItem;\n\tdeclare public _events: ILinkedHierarchyEvents;\n\n\tpublic linkBullets: List<<D extends DataItem<IHierarchyDataItem>>(root: Root, source: D, target:D) => Bullet | undefined> = new List();\n\n\tprotected _afterNew() {\n\t\tthis.fields.push(\"linkWith\", \"x\", \"y\");\n\n\t\tthis._disposers.push(this.linkBullets.events.onAll(() => {\n\t\t\tthis.links.each((link) => {\n\t\t\t\tlink._handleBullets(this.linkBullets);\n\t\t\t})\n\t\t}))\n\n\t\tsuper._afterNew();\n\t}\n\n\t/**\n\t * A list of nodes in a [[LinkedHierarchy]] chart.\n\t *\n\t * @default new ListTemplate<LinkedHierarchyNode>\n\t */\n\tpublic readonly nodes: ListTemplate<LinkedHierarchyNode> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => LinkedHierarchyNode._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.nodes.template.get(\"themeTags\", []), [this._tag, \"linkedhierarchy\", \"hierarchy\", \"node\"]),\n\t\t\tx: this.width() / 2,\n\t\t\ty: this.height() / 2\n\t\t}, [this.nodes.template])\n\t);\n\n\t/**\n\t * A list of node circle elements in a [[LinkedHierarchy]] chart.\n\t *\n\t * @default new ListTemplate<Circle>\n\t */\n\tpublic readonly circles: ListTemplate<Circle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Circle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.circles.template.get(\"themeTags\", []), [this._tag, \"shape\"])\n\t\t}, [this.circles.template])\n\t);\n\n\t/**\n\t * A list of node outer circle elements in a [[LinkedHierarchy]] chart.\n\t *\n\t * @default new ListTemplate<Circle>\n\t */\n\tpublic readonly outerCircles: ListTemplate<Circle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Circle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.outerCircles.template.get(\"themeTags\", []), [this._tag, \"outer\", \"shape\"])\n\t\t}, [this.outerCircles.template])\n\t);\n\n\t/**\n\t * A list of link elements in a [[LinkedHierarchy]] chart.\n\t *\n\t * @default new ListTemplate<HierarchyLink>\n\t */\n\tpublic readonly links: ListTemplate<HierarchyLink> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => HierarchyLink._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.links.template.get(\"themeTags\", []), [this._tag, \"linkedhierarchy\", \"hierarchy\", \"link\"])\n\t\t}, [this.links.template])\n\t);\n\n\t/**\n\t * A [[Container]] that link elements are placed in.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly linksContainer = this.children.moveValue(Container.new(this._root, {}), 0);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>): LinkedHierarchyNode {\n\t\tconst node = super.makeNode(dataItem) as LinkedHierarchyNode;\n\n\t\tconst circle = node.children.moveValue(this.circles.make(), 0);\n\t\tthis.circles.push(circle);\n\t\tnode.setPrivate(\"tooltipTarget\", circle);\n\t\tdataItem.setRaw(\"circle\", circle);\n\n\t\tconst outerCircle = node.children.moveValue(this.outerCircles.make(), 0);\n\t\tthis.outerCircles.push(outerCircle);\n\t\tdataItem.setRaw(\"outerCircle\", outerCircle);\n\n\t\tconst label = dataItem.get(\"label\");\n\n\t\tcircle.on(\"radius\", () => {\n\t\t\tconst d = circle.get(\"radius\", this.width()) * 2;\n\t\t\tlabel.setAll({ maxWidth: d, maxHeight: d })\n\t\t\touterCircle.set(\"radius\", d / 2);\n\n\t\t\tthis._handleRadiusChange();\n\t\t})\n\n\t\tconst d = circle.get(\"radius\", this.width()) * 2;\n\t\tlabel.setAll({ maxWidth: d, maxHeight: d });\n\t\t\n\t\tcircle._setDataItem(dataItem);\n\t\touterCircle._setDataItem(dataItem);\n\n\t\treturn node;\n\t}\n\n\tpublic _handleRadiusChange() {\n\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tdataItem.setRaw(\"childLinks\", []);\n\t\tdataItem.setRaw(\"links\", []);\n\t\tsuper.processDataItem(dataItem);\n\t}\n\n\tprotected _processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper._processDataItem(dataItem);\n\n\t\tconst parentDataItem = dataItem.get(\"parent\");\n\t\tif (parentDataItem && parentDataItem.get(\"depth\") >= this.get(\"topDepth\")) {\n\t\t\tconst link = this.linkDataItems(parentDataItem, dataItem);\n\t\t\tdataItem.setRaw(\"parentLink\", link);\n\t\t}\n\n\t\tconst node = dataItem.get(\"node\");\n\t\tthis.updateLinkWith(this.dataItems);\n\t\tnode._updateLinks(0);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLinkWith(dataItems: Array<DataItem<this[\"_dataItemSettings\"]>>) {\n\t\t$array.each(dataItems, (dataItem) => {\n\t\t\tconst linkWith = dataItem.get(\"linkWith\");\n\t\t\tif (linkWith) {\n\t\t\t\t$array.each(linkWith, (id) => {\n\t\t\t\t\tconst linkWithDataItem = this._getDataItemById(this.dataItems, id);\n\n\t\t\t\t\tif (linkWithDataItem) {\n\t\t\t\t\t\tthis.linkDataItems(dataItem, linkWithDataItem);\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tconst children = dataItem.get(\"children\");\n\t\t\tif (children) {\n\t\t\t\tthis.updateLinkWith(children);\n\t\t\t}\n\t\t})\n\t}\n\n\tprotected _getPoint(hierarchyNode: this[\"_dataItemSettings\"][\"d3HierarchyNode\"]): IPoint {\n\t\treturn { x: hierarchyNode.x, y: hierarchyNode.y };\n\t}\n\n\tprotected _animatePositions(dataItem: DataItem<this[\"_dataItemSettings\"]>){\n\t\tconst node = dataItem.get(\"node\");\n\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\n\t\tconst point = this._getPoint(hierarchyNode);\n\n\t\tconst duration = this.get(\"animationDuration\", 0);\n\t\tconst easing = this.get(\"animationEasing\");\n\n\t\tnode.animate({ key: \"x\", to: point.x, duration: duration, easing: easing });\n\t\tnode.animate({ key: \"y\", to: point.y, duration: duration, easing: easing });\t\t\n\t}\n\n\tprotected _updateNode(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper._updateNode(dataItem);\n\n\t\tthis._animatePositions(dataItem);\n\n\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\n\t\tconst hierarchyChildren = hierarchyNode.children;\n\t\tif (hierarchyChildren) {\n\t\t\t$array.each(hierarchyChildren, (hierarchyChild) => {\n\t\t\t\tthis._updateNodes(hierarchyChild)\n\t\t\t})\n\t\t}\n\n\t\tconst fill = dataItem.get(\"fill\");\n\t\tconst fillPattern = dataItem.get(\"fillPattern\");\n\t\tconst circle = dataItem.get(\"circle\");\n\t\tconst children = dataItem.get(\"children\");\n\t\t\n\t\tif (circle) {\n\t\t\tcircle._setDefault(\"fill\", fill);\n\t\t\tcircle._setDefault(\"fillPattern\", fillPattern);\n\t\t\tcircle._setDefault(\"stroke\", fill);\n\t\t}\n\n\t\tconst outerCircle = dataItem.get(\"outerCircle\");\n\t\tif (outerCircle) {\n\t\t\touterCircle._setDefault(\"fill\", fill);\n\t\t\touterCircle._setDefault(\"stroke\", fill);\n\n\t\t\tif (!children || children.length == 0) {\n\t\t\t\touterCircle.setPrivate(\"visible\", false);\n\t\t\t}\n\t\t\telse{\n\t\t\t\touterCircle.setPrivate(\"visible\", true);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Link two data items with a link element.\n\t *\n\t * @param source Source node data item\n\t * @param target Target node data item\n\t * @param strength Link strength\n\t * @return Link element\n\t */\n\tpublic linkDataItems(source: DataItem<this[\"_dataItemSettings\"]>, target: DataItem<this[\"_dataItemSettings\"]>, strength?: number): HierarchyLink {\n\n\t\tlet link!: HierarchyLink;\n\n\t\tconst sourceLinks = source.get(\"links\");\n\n\t\tif (sourceLinks) {\n\t\t\t$array.each(sourceLinks, (lnk) => {\n\t\t\t\tif (lnk.get(\"target\") == target) {\n\t\t\t\t\tlink = lnk;\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tconst targetLinks = target.get(\"links\");\n\n\t\tif (targetLinks) {\n\t\t\t$array.each(targetLinks, (lnk) => {\n\t\t\t\tif (lnk.get(\"target\") == source) {\n\t\t\t\t\tlink = lnk;\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tif (!link) {\n\t\t\tlink = this.links.make();\n\t\t\tlink.series = this;\n\t\t\tthis.links.push(link);\n\t\t\tthis.linksContainer.children.push(link);\n\t\t\tlink.set(\"source\", source);\n\t\t\tlink.set(\"target\", target);\n\t\t\tlink._setDataItem(source);\n\n\t\t\tlink._handleBullets(this.linkBullets);\n\t\t\tlink.set(\"stroke\", source.get(\"fill\"));\n\t\t\tif (strength != null) {\n\t\t\t\tlink.set(\"strength\", strength)\n\t\t\t}\n\n\t\t\tsource.get(\"childLinks\").push(link);\n\n\t\t\t$array.move(source.get(\"links\"), link);\n\t\t\t$array.move(target.get(\"links\"), link);\n\n\t\t\tthis._processLink(link, source, target);\n\t\t}\n\n\t\treturn link;\n\t}\n\n\n\t/**\n\t * Unlink two linked data items.\n\t *\n\t * @param source Source node data item\n\t * @param target Target node data item\n\t */\n\tpublic unlinkDataItems(source: DataItem<this[\"_dataItemSettings\"]>, target: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t\tlet link!: HierarchyLink;\n\n\t\tconst sourceLinks = source.get(\"links\");\n\n\t\tif (sourceLinks) {\n\t\t\t$array.each(sourceLinks, (lnk) => {\n\t\t\t\tif (lnk && lnk.get(\"target\") == target) {\n\t\t\t\t\tlink = lnk;\n\t\t\t\t\t$array.remove(sourceLinks, link);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tconst targetLinks = target.get(\"links\");\n\n\t\tif (targetLinks) {\n\t\t\t$array.each(targetLinks, (lnk) => {\n\t\t\t\tif (lnk && lnk.get(\"target\") == source) {\n\t\t\t\t\tlink = lnk;\n\t\t\t\t\t$array.remove(targetLinks, link);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tif (link) {\n\t\t\tthis._disposeLink(link);\n\t\t}\n\n\t\tthis._handleUnlink();\n\t}\n\n\tprotected _handleUnlink() {\n\n\t}\n\n\tprotected _disposeLink(link: HierarchyLink) {\n\t\tthis.links.removeValue(link);\n\t\tlink.dispose();\n\t}\n\n\t/**\n\t * Returns `true` if two nodes are linked with each other.\n\t */\n\tpublic areLinked(source: DataItem<this[\"_dataItemSettings\"]>, target: DataItem<this[\"_dataItemSettings\"]>): boolean {\n\t\tconst sourceLinks = source.get(\"links\");\n\t\tlet linked = false;\n\t\tif (sourceLinks) {\n\t\t\t$array.each(sourceLinks, (lnk) => {\n\t\t\t\tif (lnk.get(\"target\") == target) {\n\t\t\t\t\tlinked = true;\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tconst targetLinks = target.get(\"links\");\n\n\t\tif (targetLinks) {\n\t\t\t$array.each(targetLinks, (lnk) => {\n\t\t\t\tif (lnk.get(\"target\") == source) {\n\t\t\t\t\tlinked = true;\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\treturn linked;\n\t}\n\n\tprotected _processLink(_link: HierarchyLink, _source: DataItem<this[\"_dataItemSettings\"]>, _target: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tconst links = dataItem.get(\"links\");\n\t\tif (links) {\n\t\t\t$array.each(links, (link) => {\n\t\t\t\tthis._disposeLink(link)\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * Select a data item.\n\t * @param dataItem Data item\n\t */\n\tpublic selectDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst parent = dataItem.get(\"parent\");\n\n\t\tif (!dataItem.get(\"disabled\")) {\n\t\t\tthis.set(\"selectedDataItem\", dataItem);\n\t\t}\n\t\telse {\n\t\t\tif (parent) {\n\t\t\t\tthis.setRaw(\"selectedDataItem\", parent);\n\t\t\t\tconst type = \"dataitemselected\";\n\t\t\t\tthis.events.dispatch(type, { type: type, target: this, dataItem: parent });\n\t\t\t\tthis.disableDataItem(dataItem);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Pack.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Pack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACrH,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAG5C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAA;CAClC;AAED,MAAM,WAAW,aAAc,SAAQ,kBAAkB;IAExD;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;IAEzC;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IAEhC;;OAEG;IACH,eAAe,EAAE,WAAW,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;IAEpE;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAEf;AAED,MAAM,WAAW,aAAc,SAAQ,kBAAkB;IAExD;;;;OAIG;IACH,WAAW,CAAC,EAAC,MAAM,CAAA;CAEnB;AAED,MAAM,WAAW,YAAa,SAAQ,iBAAiB;IAEtD;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAEhB;AAED,MAAM,WAAW,WAAY,SAAQ,gBAAgB;CACpD;AAED;;;;;GAKG;AACH,qBAAa,IAAK,SAAQ,SAAS;IAEnB,SAAS,EAAE,aAAa,CAAC;IACzB,gBAAgB,EAAE,YAAY,CAAC;IAC/B,iBAAiB,EAAE,aAAa,CAAC;IAEhD,SAAS,CAAC,IAAI,EAAE,MAAM,CAAU;IAEhC,OAAc,SAAS,EAAE,MAAM,CAAU;IACzC,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAiD;IAEjF,WAAW,kCAAsB;IACzB,SAAS,EAAE,WAAW,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;IAClF,SAAS,EAAE,eAAe,GAAG,SAAS,CAAC;IAE9C;;;;OAIG;IACH,SAAgB,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,CAK3C;IAEF,SAAS,CAAC,SAAS;IAKZ,gBAAgB;IAUvB,SAAS,CAAC,cAAc;IAUxB,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IA4BnE,SAAS,CAAC,iBAAiB,CAAC,aAAa,EAAE,WAAW,CAAC,qBAAqB,CAAC,eAAe,CAAC;IAwB7F;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,aAAa;IAkBtE,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;CAsB1D"}
1
+ {"version":3,"file":"Pack.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Pack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACrH,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAG5C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAA;CAClC;AAED,MAAM,WAAW,aAAc,SAAQ,kBAAkB;IAExD;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;IAEzC;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;IAEhC;;OAEG;IACH,eAAe,EAAE,WAAW,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;IAEpE;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAEf;AAED,MAAM,WAAW,aAAc,SAAQ,kBAAkB;IAExD;;;;OAIG;IACH,WAAW,CAAC,EAAC,MAAM,CAAA;CAEnB;AAED,MAAM,WAAW,YAAa,SAAQ,iBAAiB;IAEtD;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAEhB;AAED,MAAM,WAAW,WAAY,SAAQ,gBAAgB;CACpD;AAED;;;;;GAKG;AACH,qBAAa,IAAK,SAAQ,SAAS;IAEnB,SAAS,EAAE,aAAa,CAAC;IACzB,gBAAgB,EAAE,YAAY,CAAC;IAC/B,iBAAiB,EAAE,aAAa,CAAC;IAEhD,SAAS,CAAC,IAAI,EAAE,MAAM,CAAU;IAEhC,OAAc,SAAS,EAAE,MAAM,CAAU;IACzC,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAiD;IAEjF,WAAW,kCAAsB;IACzB,SAAS,EAAE,WAAW,CAAC,qBAAqB,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;IAClF,SAAS,EAAE,eAAe,GAAG,SAAS,CAAC;IAE9C;;;;OAIG;IACH,SAAgB,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,CAK3C;IAEF,SAAS,CAAC,SAAS;IAKZ,gBAAgB;IAUvB,SAAS,CAAC,cAAc;IAUxB,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IA8BnE,SAAS,CAAC,iBAAiB,CAAC,aAAa,EAAE,WAAW,CAAC,qBAAqB,CAAC,eAAe,CAAC;IAwB7F;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,aAAa;IAkBtE,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;CAsB1D"}
@@ -83,8 +83,10 @@ export class Pack extends Hierarchy {
83
83
  node.animate({ key: "y", to: y, duration: duration, easing: easing });
84
84
  if (circle) {
85
85
  const fill = dataItem.get("fill");
86
+ const fillPattern = dataItem.get("fillPattern");
86
87
  circle.animate({ key: "radius", to: radius, duration: duration, easing: easing });
87
88
  circle._setDefault("fill", fill);
89
+ circle._setDefault("fillPattern", fillPattern);
88
90
  circle._setDefault("stroke", fill);
89
91
  }
90
92
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Pack.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Pack.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAA+E,MAAM,aAAa,CAAC;AACrH,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAU/C,CAAC;AAiDF;;;;;GAKG;AACH,MAAM,OAAO,IAAK,SAAQ,SAAS;IAAnC;;QAMC;;;;mBAAyB,MAAM;WAAC;QAKhC;;;;mBAAqB,WAAW,CAAC,IAAI,EAAE;WAAC;QAExC;;;;;WAA8C;QAE9C;;;;WAIG;QACH;;;;mBAAgD,IAAI,YAAY,CAC/D,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAChB,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;gBAC7B,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;aAC7F,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAC3B;WAAC;IA0HH,CAAC;IAxHU,SAAS;QAClB,KAAK,CAAC,SAAS,EAAE,CAAC;QAClB,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC9B,CAAC;IAEM,gBAAgB;QACtB,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAEzB,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;YAClC,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACvC;SACD;IACF,CAAC;IAES,cAAc;QACvB,IAAI,IAAI,CAAC,SAAS,EAAE;YACnB,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;YACpC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACzD,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3B,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAClC;IACF,CAAC;IAES,WAAW,CAAC,QAA6C;QAClE,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE5B,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAEtD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAE5C,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC;QACnC,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC;QACnC,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC;QAExC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAE3C,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QACrE,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QAErE,IAAI,MAAM,EAAE;YACX,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAElC,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;YACjF,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACjC,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;SACnC;IACF,CAAC;IAES,iBAAiB,CAAC,aAAiE;QAC5F,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC7C,IAAI,QAAQ,EAAE;YACb,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAClC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAEtC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAE5C,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC;YACnC,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC;YACnC,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,GAAG,MAAM,CAAC;YAExC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;YAC3B,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAE7B,MAAM,iBAAiB,GAAG,aAAa,CAAC,QAAQ,CAAC;YACjD,IAAI,iBAAiB,EAAE;gBACtB,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,cAAc,EAAE,EAAE;oBACjD,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAA;gBACvC,CAAC,CAAC,CAAA;aACF;SACD;IACF,CAAC;IAED;;OAEG;IACI,QAAQ,CAAC,QAA6C;QAC5D,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEtC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAElC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEpC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YACxB,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;YACjD,KAAK,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAA;QAEF,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,KAAK,CAAC,QAA6C;QACzD,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAEtD,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC;QAExB,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAEvE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC3C,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;QAEhD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACjB,QAAQ,GAAG,CAAC,CAAC;SACb;QAED,IAAI,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAEvF,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3C,cAAc,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACtI,cAAc,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACxI,CAAC;;AA1ID;;;;WAAkC,MAAM;GAAC;AACzC;;;;WAA0C,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;GAAC","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { HierarchyNode } from \"./HierarchyNode\";\n\nimport { Hierarchy, IHierarchyPrivate, IHierarchySettings, IHierarchyDataItem, IHierarchyEvents } from \"./Hierarchy\";\nimport { Circle } from \"../../core/render/Circle\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as d3hierarchy from \"d3-hierarchy\";\nimport * as $utils from \"../../core/util/Utils\";\n\n/**\n * @ignore\n */\nexport interface IPackDataObject {\n\tname?: string,\n\tvalue?: number,\n\tchildren?: IPackDataObject[],\n\tdataItem?: DataItem<IPackDataItem>\n};\n\nexport interface IPackDataItem extends IHierarchyDataItem {\n\n\t/**\n\t * An array of data items of node's children.\n\t */\n\tchildren: Array<DataItem<IPackDataItem>>;\n\n\t/**\n\t * A data item of node's parent.\n\t */\n\tparent: DataItem<IPackDataItem>;\n\n\t/**\n\t * @ignore\n\t */\n\td3HierarchyNode: d3hierarchy.HierarchyCircularNode<IPackDataObject>;\n\n\t/**\n\t * A [[Circle]] element of the node.\n\t */\n\tcircle: Circle;\n\n}\n\nexport interface IPackSettings extends IHierarchySettings {\n\n\t/**\n\t * Gap between nodes, in pixels.\n\t *\n\t * @since 5.2.6\n\t */\n\tnodePadding?:number\n\n}\n\nexport interface IPackPrivate extends IHierarchyPrivate {\n\n\t/**\n\t * @ignore\n\t */\n\tscaleR?: number;\n\n}\n\nexport interface IPackEvents extends IHierarchyEvents {\n}\n\n/**\n * Builds a pack diagram.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/hierarchy/sunburst/} for more info\n * @important\n */\nexport class Pack extends Hierarchy {\n\n\tdeclare public _settings: IPackSettings;\n\tdeclare public _privateSettings: IPackPrivate;\n\tdeclare public _dataItemSettings: IPackDataItem;\n\n\tprotected _tag: string = \"pack\";\n\n\tpublic static className: string = \"Pack\";\n\tpublic static classNames: Array<string> = Hierarchy.classNames.concat([Pack.className]);\n\n\tpublic _packLayout = d3hierarchy.pack();\n\tdeclare public _rootNode: d3hierarchy.HierarchyCircularNode<IPackDataObject> | undefined;\n\tpublic _packData: IPackDataObject | undefined;\n\n\t/**\n\t * A list of node circle elements in a [[Pack]] chart.\n\t *\n\t * @default new ListTemplate<Circle>\n\t */\n\tpublic readonly circles: ListTemplate<Circle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Circle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.circles.template.get(\"themeTags\", []), [this._tag, \"shape\"])\n\t\t}, [this.circles.template])\n\t);\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis.setPrivate(\"scaleR\", 1);\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tif (this.isPrivateDirty(\"scaleR\")) {\n\t\t\tif (this._rootNode) {\n\t\t\t\tthis._updateNodesScale(this._rootNode);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _updateVisuals() {\n\t\tif (this._rootNode) {\n\t\t\tconst packLayout = this._packLayout;\n\t\t\tpackLayout.size([this.innerWidth(), this.innerHeight()]);\n\t\t\tpackLayout(this._rootNode);\n\t\t\tpackLayout.padding(this.get(\"nodePadding\", 0));\n\t\t\tthis._updateNodes(this._rootNode);\n\t\t}\n\t}\n\n\tprotected _updateNode(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper._updateNode(dataItem);\n\n\t\tconst node = dataItem.get(\"node\");\n\t\tconst circle = dataItem.get(\"circle\");\n\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\n\t\tconst scaleR = this.getPrivate(\"scaleR\", 1);\n\n\t\tconst x = hierarchyNode.x * scaleR;\n\t\tconst y = hierarchyNode.y * scaleR;\n\t\tconst radius = hierarchyNode.r * scaleR;\n\n\t\tconst duration = this.get(\"animationDuration\", 0);\n\t\tconst easing = this.get(\"animationEasing\");\n\n\t\tnode.animate({ key: \"x\", to: x, duration: duration, easing: easing })\n\t\tnode.animate({ key: \"y\", to: y, duration: duration, easing: easing })\n\n\t\tif (circle) {\n\t\t\tconst fill = dataItem.get(\"fill\");\n\n\t\t\tcircle.animate({ key: \"radius\", to: radius, duration: duration, easing: easing })\n\t\t\tcircle._setDefault(\"fill\", fill);\n\t\t\tcircle._setDefault(\"stroke\", fill);\n\t\t}\n\t}\n\n\tprotected _updateNodesScale(hierarchyNode: d3hierarchy.HierarchyCircularNode<IPackDataObject>) {\n\t\tconst dataItem = hierarchyNode.data.dataItem;\n\t\tif (dataItem) {\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tconst circle = dataItem.get(\"circle\");\n\n\t\t\tconst scaleR = this.getPrivate(\"scaleR\", 1);\n\n\t\t\tconst x = hierarchyNode.x * scaleR;\n\t\t\tconst y = hierarchyNode.y * scaleR;\n\t\t\tconst radius = hierarchyNode.r * scaleR;\n\n\t\t\tnode.setAll({ x: x, y: y })\n\t\t\tcircle.set(\"radius\", radius);\n\n\t\t\tconst hierarchyChildren = hierarchyNode.children;\n\t\t\tif (hierarchyChildren) {\n\t\t\t\t$array.each(hierarchyChildren, (hierarchyChild) => {\n\t\t\t\t\tthis._updateNodesScale(hierarchyChild)\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>): HierarchyNode {\n\t\tconst node = super.makeNode(dataItem);\n\n\t\tconst circle = node.children.moveValue(this.circles.make(), 0);\n\t\tnode.setPrivate(\"tooltipTarget\", circle);\n\t\tthis.circles.push(circle);\n\t\tdataItem.setRaw(\"circle\", circle);\n\n\t\tconst label = dataItem.get(\"label\");\n\n\t\tcircle.on(\"radius\", () => {\n\t\t\tconst d = circle.get(\"radius\", this.width()) * 2;\n\t\t\tlabel.setAll({ maxWidth: d, maxHeight: d });\n\t\t})\n\n\t\treturn node;\n\t}\n\n\tpublic _zoom(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\n\t\tlet x = hierarchyNode.x;\n\t\tlet y = hierarchyNode.y;\n\t\tlet r = hierarchyNode.r;\n\n\t\tlet scaleR = Math.min(this.innerWidth(), this.innerHeight()) / (r * 2);\n\n\t\tconst easing = this.get(\"animationEasing\");\n\t\tlet duration = this.get(\"animationDuration\", 0);\n\n\t\tif (!this.inited) {\n\t\t\tduration = 0;\n\t\t}\n\n\t\tthis.animatePrivate({ key: \"scaleR\", to: scaleR, duration: duration, easing: easing });\n\n\t\tconst nodesContainer = this.nodesContainer;\n\t\tnodesContainer.animate({ key: \"x\", from: nodesContainer.x(), to: this.width() / 2 - x * scaleR, duration: duration, easing: easing });\n\t\tnodesContainer.animate({ key: \"y\", from: nodesContainer.y(), to: this.height() / 2 - y * scaleR, duration: duration, easing: easing });\n\t}\n}\n"]}
1
+ {"version":3,"file":"Pack.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Pack.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { HierarchyNode } from \"./HierarchyNode\";\n\nimport { Hierarchy, IHierarchyPrivate, IHierarchySettings, IHierarchyDataItem, IHierarchyEvents } from \"./Hierarchy\";\nimport { Circle } from \"../../core/render/Circle\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as d3hierarchy from \"d3-hierarchy\";\nimport * as $utils from \"../../core/util/Utils\";\n\n/**\n * @ignore\n */\nexport interface IPackDataObject {\n\tname?: string,\n\tvalue?: number,\n\tchildren?: IPackDataObject[],\n\tdataItem?: DataItem<IPackDataItem>\n};\n\nexport interface IPackDataItem extends IHierarchyDataItem {\n\n\t/**\n\t * An array of data items of node's children.\n\t */\n\tchildren: Array<DataItem<IPackDataItem>>;\n\n\t/**\n\t * A data item of node's parent.\n\t */\n\tparent: DataItem<IPackDataItem>;\n\n\t/**\n\t * @ignore\n\t */\n\td3HierarchyNode: d3hierarchy.HierarchyCircularNode<IPackDataObject>;\n\n\t/**\n\t * A [[Circle]] element of the node.\n\t */\n\tcircle: Circle;\n\n}\n\nexport interface IPackSettings extends IHierarchySettings {\n\n\t/**\n\t * Gap between nodes, in pixels.\n\t *\n\t * @since 5.2.6\n\t */\n\tnodePadding?:number\n\n}\n\nexport interface IPackPrivate extends IHierarchyPrivate {\n\n\t/**\n\t * @ignore\n\t */\n\tscaleR?: number;\n\n}\n\nexport interface IPackEvents extends IHierarchyEvents {\n}\n\n/**\n * Builds a pack diagram.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/hierarchy/sunburst/} for more info\n * @important\n */\nexport class Pack extends Hierarchy {\n\n\tdeclare public _settings: IPackSettings;\n\tdeclare public _privateSettings: IPackPrivate;\n\tdeclare public _dataItemSettings: IPackDataItem;\n\n\tprotected _tag: string = \"pack\";\n\n\tpublic static className: string = \"Pack\";\n\tpublic static classNames: Array<string> = Hierarchy.classNames.concat([Pack.className]);\n\n\tpublic _packLayout = d3hierarchy.pack();\n\tdeclare public _rootNode: d3hierarchy.HierarchyCircularNode<IPackDataObject> | undefined;\n\tpublic _packData: IPackDataObject | undefined;\n\n\t/**\n\t * A list of node circle elements in a [[Pack]] chart.\n\t *\n\t * @default new ListTemplate<Circle>\n\t */\n\tpublic readonly circles: ListTemplate<Circle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Circle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.circles.template.get(\"themeTags\", []), [this._tag, \"shape\"])\n\t\t}, [this.circles.template])\n\t);\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis.setPrivate(\"scaleR\", 1);\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tif (this.isPrivateDirty(\"scaleR\")) {\n\t\t\tif (this._rootNode) {\n\t\t\t\tthis._updateNodesScale(this._rootNode);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _updateVisuals() {\n\t\tif (this._rootNode) {\n\t\t\tconst packLayout = this._packLayout;\n\t\t\tpackLayout.size([this.innerWidth(), this.innerHeight()]);\n\t\t\tpackLayout(this._rootNode);\n\t\t\tpackLayout.padding(this.get(\"nodePadding\", 0));\n\t\t\tthis._updateNodes(this._rootNode);\n\t\t}\n\t}\n\n\tprotected _updateNode(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper._updateNode(dataItem);\n\n\t\tconst node = dataItem.get(\"node\");\n\t\tconst circle = dataItem.get(\"circle\");\n\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\n\t\tconst scaleR = this.getPrivate(\"scaleR\", 1);\n\n\t\tconst x = hierarchyNode.x * scaleR;\n\t\tconst y = hierarchyNode.y * scaleR;\n\t\tconst radius = hierarchyNode.r * scaleR;\n\n\t\tconst duration = this.get(\"animationDuration\", 0);\n\t\tconst easing = this.get(\"animationEasing\");\n\n\t\tnode.animate({ key: \"x\", to: x, duration: duration, easing: easing })\n\t\tnode.animate({ key: \"y\", to: y, duration: duration, easing: easing })\n\n\t\tif (circle) {\n\t\t\tconst fill = dataItem.get(\"fill\");\n\t\t\tconst fillPattern = dataItem.get(\"fillPattern\");\n\n\t\t\tcircle.animate({ key: \"radius\", to: radius, duration: duration, easing: easing })\n\t\t\tcircle._setDefault(\"fill\", fill);\n\t\t\tcircle._setDefault(\"fillPattern\", fillPattern);\n\t\t\tcircle._setDefault(\"stroke\", fill);\n\t\t}\n\t}\n\n\tprotected _updateNodesScale(hierarchyNode: d3hierarchy.HierarchyCircularNode<IPackDataObject>) {\n\t\tconst dataItem = hierarchyNode.data.dataItem;\n\t\tif (dataItem) {\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tconst circle = dataItem.get(\"circle\");\n\n\t\t\tconst scaleR = this.getPrivate(\"scaleR\", 1);\n\n\t\t\tconst x = hierarchyNode.x * scaleR;\n\t\t\tconst y = hierarchyNode.y * scaleR;\n\t\t\tconst radius = hierarchyNode.r * scaleR;\n\n\t\t\tnode.setAll({ x: x, y: y })\n\t\t\tcircle.set(\"radius\", radius);\n\n\t\t\tconst hierarchyChildren = hierarchyNode.children;\n\t\t\tif (hierarchyChildren) {\n\t\t\t\t$array.each(hierarchyChildren, (hierarchyChild) => {\n\t\t\t\t\tthis._updateNodesScale(hierarchyChild)\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>): HierarchyNode {\n\t\tconst node = super.makeNode(dataItem);\n\n\t\tconst circle = node.children.moveValue(this.circles.make(), 0);\n\t\tnode.setPrivate(\"tooltipTarget\", circle);\n\t\tthis.circles.push(circle);\n\t\tdataItem.setRaw(\"circle\", circle);\n\n\t\tconst label = dataItem.get(\"label\");\n\n\t\tcircle.on(\"radius\", () => {\n\t\t\tconst d = circle.get(\"radius\", this.width()) * 2;\n\t\t\tlabel.setAll({ maxWidth: d, maxHeight: d });\n\t\t})\n\n\t\treturn node;\n\t}\n\n\tpublic _zoom(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\n\t\tlet x = hierarchyNode.x;\n\t\tlet y = hierarchyNode.y;\n\t\tlet r = hierarchyNode.r;\n\n\t\tlet scaleR = Math.min(this.innerWidth(), this.innerHeight()) / (r * 2);\n\n\t\tconst easing = this.get(\"animationEasing\");\n\t\tlet duration = this.get(\"animationDuration\", 0);\n\n\t\tif (!this.inited) {\n\t\t\tduration = 0;\n\t\t}\n\n\t\tthis.animatePrivate({ key: \"scaleR\", to: scaleR, duration: duration, easing: easing });\n\n\t\tconst nodesContainer = this.nodesContainer;\n\t\tnodesContainer.animate({ key: \"x\", from: nodesContainer.x(), to: this.width() / 2 - x * scaleR, duration: duration, easing: easing });\n\t\tnodesContainer.animate({ key: \"y\", from: nodesContainer.y(), to: this.height() / 2 - y * scaleR, duration: duration, easing: easing });\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Partition.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Partition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEzH,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAKtE,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAClC,QAAQ,CAAC,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAA;CACvC;AAED,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAE7D;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAE9C;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAErC;;OAEG;IACH,eAAe,EAAE,WAAW,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,CAAC;IAE5E;;OAEG;IACH,SAAS,EAAE,gBAAgB,CAAC;CAE5B;AAED,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAE7D;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IAExC;;OAEG;IACH,EAAE,CAAC,EAAC,MAAM,CAAC;CACX;AAED,MAAM,WAAW,iBAAkB,SAAQ,iBAAiB;IAE3D;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,SAAS;IAExB,SAAS,EAAE,kBAAkB,CAAC;IAC9B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,iBAAiB,EAAE,kBAAkB,CAAC;IAErD,SAAS,CAAC,IAAI,EAAE,MAAM,CAAe;IAErC,OAAc,SAAS,EAAE,MAAM,CAAe;IAC9C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAsD;IAE7F;;;;OAIG;IACH,SAAgB,UAAU,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAKxD;IAEK,gBAAgB,uCAA2B;IAEnC,SAAS,EAAE,WAAW,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;IAEjG,SAAS,CAAC,SAAS;IAOZ,gBAAgB;IAoBvB,SAAS,CAAC,cAAc;IAwBxB,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IA8CnE,SAAS,CAAC,iBAAiB,CAAC,aAAa,EAAE,WAAW,CAAC,wBAAwB,CAAC,oBAAoB,CAAC;IAuCrG;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,aAAa;IAM7E,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa;IAiBtF,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;CA+E7D"}
1
+ {"version":3,"file":"Partition.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Partition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEzH,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAKtE,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAClC,QAAQ,CAAC,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAA;CACvC;AAED,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAE7D;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAE9C;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAErC;;OAEG;IACH,eAAe,EAAE,WAAW,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,CAAC;IAE5E;;OAEG;IACH,SAAS,EAAE,gBAAgB,CAAC;CAE5B;AAED,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAE7D;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;OAIG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IAExC;;OAEG;IACH,EAAE,CAAC,EAAC,MAAM,CAAC;CACX;AAED,MAAM,WAAW,iBAAkB,SAAQ,iBAAiB;IAE3D;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,SAAS;IAExB,SAAS,EAAE,kBAAkB,CAAC;IAC9B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,iBAAiB,EAAE,kBAAkB,CAAC;IAErD,SAAS,CAAC,IAAI,EAAE,MAAM,CAAe;IAErC,OAAc,SAAS,EAAE,MAAM,CAAe;IAC9C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAsD;IAE7F;;;;OAIG;IACH,SAAgB,UAAU,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAKxD;IAEK,gBAAgB,uCAA2B;IAEnC,SAAS,EAAE,WAAW,CAAC,wBAAwB,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;IAEjG,SAAS,CAAC,SAAS;IAOZ,gBAAgB;IAoBvB,SAAS,CAAC,cAAc;IAwBxB,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAgDnE,SAAS,CAAC,iBAAiB,CAAC,aAAa,EAAE,WAAW,CAAC,wBAAwB,CAAC,oBAAoB,CAAC;IAuCrG;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,aAAa;IAM7E,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa;IAiBtF,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;CA+E7D"}
@@ -110,9 +110,11 @@ export class Partition extends Hierarchy {
110
110
  node.animate({ key: "height", to: h, duration: duration, easing: easing });
111
111
  if (rectangle) {
112
112
  const fill = dataItem.get("fill");
113
+ const fillPattern = dataItem.get("fillPattern");
113
114
  rectangle.animate({ key: "width", to: w, duration: duration, easing: easing });
114
115
  rectangle.animate({ key: "height", to: h, duration: duration, easing: easing });
115
116
  rectangle._setDefault("fill", fill);
117
+ rectangle._setDefault("fillPattern", fillPattern);
116
118
  rectangle._setDefault("stroke", fill);
117
119
  }
118
120
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Partition.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Partition.ts"],"names":[],"mappings":"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","sourcesContent":["import type { HierarchyNode } from \"./HierarchyNode\";\nimport type { DataItem } from \"../../core/render/Component\";\n\nimport { Hierarchy, IHierarchyPrivate, IHierarchySettings, IHierarchyDataItem, IHierarchyDataObject } from \"./Hierarchy\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { RoundedRectangle } from \"../../core/render/RoundedRectangle\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $utils from \"../../core/util/Utils\";\nimport * as d3hierarchy from \"d3-hierarchy\";\n\n/**\n * @ignore\n */\nexport interface IPartitionDataObject {\n\tname?: string,\n\tvalue?: number,\n\tchildren?: IPartitionDataObject[],\n\tdataItem?: DataItem<IPartitionDataItem>\n};\n\nexport interface IPartitionDataItem extends IHierarchyDataItem {\n\n\t/**\n\t * Data items of child nodes.\n\t */\n\tchildren: Array<DataItem<IPartitionDataItem>>;\n\n\t/**\n\t * Data it of a parent node.\n\t */\n\tparent: DataItem<IPartitionDataItem>;\n\n\t/**\n\t * @ignore\n\t */\n\td3HierarchyNode: d3hierarchy.HierarchyRectangularNode<IHierarchyDataObject>;\n\n\t/**\n\t * A [[RoundedRectangle]] element of a node.\n\t */\n\trectangle: RoundedRectangle;\n\n}\n\nexport interface IPartitionSettings extends IHierarchySettings {\n\n\t/**\n\t * Gap between nodes in pixels.\n\t *\n\t * @default 0\n\t */\n\tnodePadding?: number;\n\n\t/**\n\t * Orientation of the diagram.\n\t *\n\t * @default \"vertical\"\n\t */\n\torientation?: \"horizontal\" | \"vertical\";\n\n\t/**\n\t * @ignore\n\t */\n\t_d?:number;\n}\n\nexport interface IPartitionPrivate extends IHierarchyPrivate {\n\n\t/**\n\t * Current horizontal scale.\n\t */\n\tscaleX?: number;\n\n\t/**\n\t * Current vertical scale.\n\t */\n\tscaleY?: number;\t\n}\n\n/**\n * Partition series.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/hierarchy/partition/} for more info\n */\nexport class Partition extends Hierarchy {\n\n\tdeclare public _settings: IPartitionSettings;\n\tdeclare public _privateSettings: IPartitionPrivate;\n\tdeclare public _dataItemSettings: IPartitionDataItem;\n\n\tprotected _tag: string = \"partition\";\n\n\tpublic static className: string = \"Partition\";\n\tpublic static classNames: Array<string> = Hierarchy.classNames.concat([Partition.className]);\n\n\t/**\n\t * A list of node rectangle elements in a [[Partition]] chart.\n\t *\n\t * @default new ListTemplate<RoundedRectangle>\n\t */\n\tpublic readonly rectangles: ListTemplate<RoundedRectangle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RoundedRectangle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.rectangles.template.get(\"themeTags\", []), [this._tag, \"shape\"])\n\t\t}, [this.rectangles.template])\n\t);\n\n\tpublic _partitionLayout = d3hierarchy.partition();\n\n\tdeclare public _rootNode: d3hierarchy.HierarchyRectangularNode<IPartitionDataObject> | undefined;\n\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"partition\", this._settings.orientation || \"vertical\"]);\n\t\tsuper._afterNew();\n\t\tthis.setPrivate(\"scaleX\", 1);\n\t\tthis.setPrivate(\"scaleY\", 1);\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tif (this.isDirty(\"nodePadding\")) {\n\t\t\tif (this._rootNode) {\n\t\t\t\tthis._updateNodes(this._rootNode);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isPrivateDirty(\"scaleX\") || this.isPrivateDirty(\"scaleY\")) {\n\t\t\tif (this._rootNode) {\n\t\t\t\tthis._updateNodesScale(this._rootNode);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"orientation\")) {\n\t\t\tthis._updateVisuals();\n\t\t}\n\t}\n\n\tprotected _updateVisuals() {\n\t\tif (this._rootNode) {\n\t\t\tconst partitionLayout = this._partitionLayout;\n\t\t\tlet w = this.innerWidth();\n\t\t\tlet h = this.innerHeight();\n\n\t\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\t\t[w, h] = [h, w];\n\t\t\t}\n\n\t\t\tpartitionLayout.size([w, h]);\n\n\t\t\tconst nodePadding = this.get(\"nodePadding\");\n\n\t\t\tif ($type.isNumber(nodePadding)) {\n\t\t\t\tpartitionLayout.padding(nodePadding);\n\t\t\t}\n\n\n\t\t\tpartitionLayout(this._rootNode);\n\t\t\tthis._updateNodes(this._rootNode);\n\t\t}\n\t}\n\n\tprotected _updateNode(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper._updateNode(dataItem);\n\n\t\tconst node = dataItem.get(\"node\");\n\t\tconst rectangle = dataItem.get(\"rectangle\");\n\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\n\t\tconst scaleX = this.getPrivate(\"scaleX\", 1);\n\t\tconst scaleY = this.getPrivate(\"scaleY\", 1);\n\n\t\tlet x0, x1, y0, y1: number;\n\n\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\tx0 = hierarchyNode.y0 * scaleX;\n\t\t\tx1 = hierarchyNode.y1 * scaleX;\n\t\t\ty0 = hierarchyNode.x0 * scaleY;\n\t\t\ty1 = hierarchyNode.x1 * scaleY;\n\t\t}\n\t\telse {\n\t\t\tx0 = hierarchyNode.x0 * scaleX;\n\t\t\tx1 = hierarchyNode.x1 * scaleX;\n\t\t\ty0 = hierarchyNode.y0 * scaleY;\n\t\t\ty1 = hierarchyNode.y1 * scaleY;\n\t\t}\n\t\tlet w = x1 - x0;\n\t\tlet h = y1 - y0;\n\n\t\tconst duration = this.get(\"animationDuration\", 0);\n\t\tconst easing = this.get(\"animationEasing\");\n\n\t\tnode.animate({ key: \"x\", to: x0, duration: duration, easing: easing })\n\t\tnode.animate({ key: \"y\", to: y0, duration: duration, easing: easing })\n\t\tnode.animate({ key: \"width\", to: w, duration: duration, easing: easing })\n\t\tnode.animate({ key: \"height\", to: h, duration: duration, easing: easing })\n\n\t\tif (rectangle) {\n\t\t\tconst fill = dataItem.get(\"fill\");\n\t\t\t\n\t\t\trectangle.animate({ key: \"width\", to: w, duration: duration, easing: easing })\n\t\t\trectangle.animate({ key: \"height\", to: h, duration: duration, easing: easing })\n\t\t\trectangle._setDefault(\"fill\", fill);\n\t\t\trectangle._setDefault(\"stroke\", fill);\t\t\t\n\t\t}\n\t}\n\n\n\tprotected _updateNodesScale(hierarchyNode: d3hierarchy.HierarchyRectangularNode<IPartitionDataObject>) {\n\t\tconst dataItem = hierarchyNode.data.dataItem;\n\t\tif (dataItem) {\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tconst rectangle = dataItem.get(\"rectangle\");\n\n\t\t\tconst scaleX = this.getPrivate(\"scaleX\", 1);\n\t\t\tconst scaleY = this.getPrivate(\"scaleY\", 1);\n\n\t\t\tlet x0, x1, y0, y1: number;\n\n\t\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\t\tx0 = hierarchyNode.y0 * scaleX;\n\t\t\t\tx1 = hierarchyNode.y1 * scaleX;\n\t\t\t\ty0 = hierarchyNode.x0 * scaleY;\n\t\t\t\ty1 = hierarchyNode.x1 * scaleY;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tx0 = hierarchyNode.x0 * scaleX;\n\t\t\t\tx1 = hierarchyNode.x1 * scaleX;\n\t\t\t\ty0 = hierarchyNode.y0 * scaleY;\n\t\t\t\ty1 = hierarchyNode.y1 * scaleY;\n\t\t\t}\n\n\t\t\tconst w = x1 - x0;\n\t\t\tconst h = y1 - y0;\n\n\t\t\tnode.setAll({ x: x0, y: y0, width: w, height: h });\n\t\t\trectangle.setAll({ width: w, height: h });\n\n\t\t\tconst hierarchyChildren = hierarchyNode.children;\n\t\t\tif (hierarchyChildren) {\n\t\t\t\t$array.each(hierarchyChildren, (hierarchyChild) => {\n\t\t\t\t\tthis._updateNodesScale(hierarchyChild)\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>): HierarchyNode {\n\t\tconst node = super.makeNode(dataItem);\n\t\tthis._makeNode(dataItem, node);\n\t\treturn node;\n\t}\n\n\tprotected _makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>, node: HierarchyNode) {\n\t\tconst rectangle = node.children.moveValue(this.rectangles.make(), 0);\n\t\tnode.setPrivate(\"tooltipTarget\", rectangle);\n\t\tdataItem.setRaw(\"rectangle\", rectangle);\n\t\trectangle._setDataItem(dataItem);\n\n\t\tconst label = dataItem.get(\"label\");\n\n\t\trectangle.on(\"width\", () => {\n\t\t\tlabel.set(\"maxWidth\", rectangle.width());\n\t\t})\n\n\t\trectangle.on(\"height\", () => {\n\t\t\tlabel.set(\"maxHeight\", rectangle.height());\n\t\t})\n\t}\n\n\tprotected _zoom(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tlet x0 = 0;\n\t\tlet x1 = 0;\n\t\tlet y0 = 0;\n\t\tlet y1 = 0;\n\n\t\tconst upDepth = this.get(\"upDepth\", 0) + 1;\n\t\tconst topDepth = this.get(\"topDepth\", 0);\n\n\t\tconst width = this.innerWidth();\n\t\tconst height = this.innerHeight();\n\n\t\tconst maxDepth = this.getPrivate(\"maxDepth\", 1);\n\t\tconst levelHeight = height / (maxDepth + 1);\n\t\tconst levelWidth = width / (maxDepth + 1);\n\t\tconst initialDepth = Math.min(this.get(\"initialDepth\", 1), maxDepth)// - topDepth);\n\n\t\tlet downDepth = this._currentDownDepth;\n\t\tif (downDepth == null) {\n\t\t\tdownDepth = this.get(\"downDepth\", 1);\n\t\t}\n\n\t\tif (dataItem) {\n\t\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\t\t\tlet currentDepth = hierarchyNode.depth;\n\n\t\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\t\tx0 = hierarchyNode.y0;\n\t\t\t\tx1 = hierarchyNode.y1;\n\n\t\t\t\ty0 = hierarchyNode.x0;\n\t\t\t\ty1 = hierarchyNode.x1;\n\n\t\t\t\tx0 = x1 - levelWidth * upDepth;\n\t\t\t\tx1 = x0 + levelWidth * (downDepth + 1);\n\n\t\t\t\tif (currentDepth < topDepth) {\n\t\t\t\t\ty0 = 0;\n\t\t\t\t\ty1 = height;\n\t\t\t\t\tx0 = levelWidth * topDepth;\n\t\t\t\t\tx1 = x0 + levelWidth * initialDepth;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tx0 = hierarchyNode.x0;\n\t\t\t\tx1 = hierarchyNode.x1;\n\n\t\t\t\ty0 = hierarchyNode.y0;\n\t\t\t\ty1 = hierarchyNode.y1;\n\n\t\t\t\ty0 = y1 - levelHeight * upDepth;\n\t\t\t\ty1 = y0 + levelHeight * (downDepth + 1);\n\n\t\t\t\tif (currentDepth < topDepth) {\n\t\t\t\t\tx0 = 0;\n\t\t\t\t\tx1 = width;\n\t\t\t\t\ty0 = levelHeight * topDepth;\n\t\t\t\t\ty1 = y0 + levelHeight * initialDepth;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tlet scaleX = width / (x1 - x0);\n\t\tlet scaleY = height / (y1 - y0);\n\n\t\tconst easing = this.get(\"animationEasing\");\n\t\tlet duration = this.get(\"animationDuration\", 0);\n\n\t\tif (!this.inited) {\n\t\t\tduration = 0;\n\t\t}\n\n\t\tthis.animatePrivate({ key: \"scaleX\", to: scaleX, duration: duration, easing: easing });\n\t\tthis.animatePrivate({ key: \"scaleY\", to: scaleY, duration: duration, easing: easing });\t\t\n\n\t\tthis.animate({key:\"_d\", from:0, to:1, duration: duration, easing: easing })\n\t\tthis.nodesContainer.animate({ key: \"x\", to: -x0 * scaleX, duration: duration, easing: easing });\n\t\tthis.nodesContainer.animate({ key: \"y\", to: -y0 * scaleY, duration: duration, easing: easing });\n\t}\n}\n"]}
1
+ {"version":3,"file":"Partition.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Partition.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAmF,MAAM,aAAa,CAAC;AACzH,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAU3C,CAAC;AA6DF;;;;GAIG;AACH,MAAM,OAAO,SAAU,SAAQ,SAAS;IAAxC;;QAMC;;;;mBAAyB,WAAW;WAAC;QAKrC;;;;WAIG;QACH;;;;mBAA6D,IAAI,YAAY,CAC5E,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAChB,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;gBACvC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;aAChG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAC9B;WAAC;QAEF;;;;mBAA0B,WAAW,CAAC,SAAS,EAAE;WAAC;IAuPnD,CAAC;IAnPU,SAAS;QAClB,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,IAAI,UAAU,CAAC,CAAC,CAAC;QAC/H,KAAK,CAAC,SAAS,EAAE,CAAC;QAClB,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC9B,CAAC;IAEM,gBAAgB;QACtB,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAEzB,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YAChC,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAClC;SACD;QAED,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;YACnE,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACvC;SACD;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;YAChC,IAAI,CAAC,cAAc,EAAE,CAAC;SACtB;IACF,CAAC;IAES,cAAc;QACvB,IAAI,IAAI,CAAC,SAAS,EAAE;YACnB,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;YAC9C,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAE3B,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,YAAY,EAAE;gBAC5C,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aAChB;YAED,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAE7B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAE5C,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;gBAChC,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;aACrC;YAGD,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAChC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAClC;IACF,CAAC;IAES,WAAW,CAAC,QAA6C;QAClE,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE5B,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAClC,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC5C,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAEtD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAE5C,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAU,CAAC;QAE3B,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,YAAY,EAAE;YAC5C,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;YAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;YAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;YAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;SAC/B;aACI;YACJ,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;YAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;YAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;YAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;SAC/B;QACD,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;QAEhB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAE3C,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QACtE,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QACtE,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QACzE,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QAE1E,IAAI,SAAS,EAAE;YACd,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAClC,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAEhD,SAAS,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;YAC9E,SAAS,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;YAC/E,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACpC,SAAS,CAAC,WAAW,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;YAClD,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;SACtC;IACF,CAAC;IAGS,iBAAiB,CAAC,aAAyE;QACpG,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC7C,IAAI,QAAQ,EAAE;YACb,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAClC,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAE5C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YAE5C,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAU,CAAC;YAE3B,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,YAAY,EAAE;gBAC5C,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;gBAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;gBAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;gBAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;aAC/B;iBACI;gBACJ,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;gBAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;gBAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;gBAC/B,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,MAAM,CAAC;aAC/B;YAED,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;YAClB,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;YAElB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;YACnD,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;YAE1C,MAAM,iBAAiB,GAAG,aAAa,CAAC,QAAQ,CAAC;YACjD,IAAI,iBAAiB,EAAE;gBACtB,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,cAAc,EAAE,EAAE;oBACjD,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAA;gBACvC,CAAC,CAAC,CAAA;aACF;SACD;IACF,CAAC;IAED;;OAEG;IACI,QAAQ,CAAC,QAA6C;QAC5D,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACb,CAAC;IAES,SAAS,CAAC,QAA6C,EAAE,IAAmB;QACrF,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;QACrE,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;QAC5C,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACxC,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAEjC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEpC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC1B,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAA;QAEF,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;YAC3B,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAA;IACH,CAAC;IAES,KAAK,CAAC,QAA6C;QAC5D,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC;QAEX,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAEzC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAElC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA,CAAA,eAAe;QAEnF,IAAI,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC;QACvC,IAAI,SAAS,IAAI,IAAI,EAAE;YACtB,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;SACrC;QAED,IAAI,QAAQ,EAAE;YACb,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YACtD,IAAI,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC;YAEvC,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,YAAY,EAAE;gBAC5C,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;gBACtB,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;gBAEtB,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;gBACtB,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;gBAEtB,EAAE,GAAG,EAAE,GAAG,UAAU,GAAG,OAAO,CAAC;gBAC/B,EAAE,GAAG,EAAE,GAAG,UAAU,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;gBAEvC,IAAI,YAAY,GAAG,QAAQ,EAAE;oBAC5B,EAAE,GAAG,CAAC,CAAC;oBACP,EAAE,GAAG,MAAM,CAAC;oBACZ,EAAE,GAAG,UAAU,GAAG,QAAQ,CAAC;oBAC3B,EAAE,GAAG,EAAE,GAAG,UAAU,GAAG,YAAY,CAAC;iBACpC;aACD;iBACI;gBACJ,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;gBACtB,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;gBAEtB,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;gBACtB,EAAE,GAAG,aAAa,CAAC,EAAE,CAAC;gBAEtB,EAAE,GAAG,EAAE,GAAG,WAAW,GAAG,OAAO,CAAC;gBAChC,EAAE,GAAG,EAAE,GAAG,WAAW,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;gBAExC,IAAI,YAAY,GAAG,QAAQ,EAAE;oBAC5B,EAAE,GAAG,CAAC,CAAC;oBACP,EAAE,GAAG,KAAK,CAAC;oBACX,EAAE,GAAG,WAAW,GAAG,QAAQ,CAAC;oBAC5B,EAAE,GAAG,EAAE,GAAG,WAAW,GAAG,YAAY,CAAC;iBACrC;aACD;SACD;QAED,IAAI,MAAM,GAAG,KAAK,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QAC/B,IAAI,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QAEhC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC3C,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;QAEhD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACjB,QAAQ,GAAG,CAAC,CAAC;SACb;QAED,IAAI,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACvF,IAAI,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAEvF,IAAI,CAAC,OAAO,CAAC,EAAC,GAAG,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,EAAE,EAAE,EAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QAC3E,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAChG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACjG,CAAC;;AArQD;;;;WAAkC,WAAW;GAAC;AAC9C;;;;WAA0C,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;GAAC","sourcesContent":["import type { HierarchyNode } from \"./HierarchyNode\";\nimport type { DataItem } from \"../../core/render/Component\";\n\nimport { Hierarchy, IHierarchyPrivate, IHierarchySettings, IHierarchyDataItem, IHierarchyDataObject } from \"./Hierarchy\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { RoundedRectangle } from \"../../core/render/RoundedRectangle\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $utils from \"../../core/util/Utils\";\nimport * as d3hierarchy from \"d3-hierarchy\";\n\n/**\n * @ignore\n */\nexport interface IPartitionDataObject {\n\tname?: string,\n\tvalue?: number,\n\tchildren?: IPartitionDataObject[],\n\tdataItem?: DataItem<IPartitionDataItem>\n};\n\nexport interface IPartitionDataItem extends IHierarchyDataItem {\n\n\t/**\n\t * Data items of child nodes.\n\t */\n\tchildren: Array<DataItem<IPartitionDataItem>>;\n\n\t/**\n\t * Data it of a parent node.\n\t */\n\tparent: DataItem<IPartitionDataItem>;\n\n\t/**\n\t * @ignore\n\t */\n\td3HierarchyNode: d3hierarchy.HierarchyRectangularNode<IHierarchyDataObject>;\n\n\t/**\n\t * A [[RoundedRectangle]] element of a node.\n\t */\n\trectangle: RoundedRectangle;\n\n}\n\nexport interface IPartitionSettings extends IHierarchySettings {\n\n\t/**\n\t * Gap between nodes in pixels.\n\t *\n\t * @default 0\n\t */\n\tnodePadding?: number;\n\n\t/**\n\t * Orientation of the diagram.\n\t *\n\t * @default \"vertical\"\n\t */\n\torientation?: \"horizontal\" | \"vertical\";\n\n\t/**\n\t * @ignore\n\t */\n\t_d?:number;\n}\n\nexport interface IPartitionPrivate extends IHierarchyPrivate {\n\n\t/**\n\t * Current horizontal scale.\n\t */\n\tscaleX?: number;\n\n\t/**\n\t * Current vertical scale.\n\t */\n\tscaleY?: number;\t\n}\n\n/**\n * Partition series.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/hierarchy/partition/} for more info\n */\nexport class Partition extends Hierarchy {\n\n\tdeclare public _settings: IPartitionSettings;\n\tdeclare public _privateSettings: IPartitionPrivate;\n\tdeclare public _dataItemSettings: IPartitionDataItem;\n\n\tprotected _tag: string = \"partition\";\n\n\tpublic static className: string = \"Partition\";\n\tpublic static classNames: Array<string> = Hierarchy.classNames.concat([Partition.className]);\n\n\t/**\n\t * A list of node rectangle elements in a [[Partition]] chart.\n\t *\n\t * @default new ListTemplate<RoundedRectangle>\n\t */\n\tpublic readonly rectangles: ListTemplate<RoundedRectangle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RoundedRectangle._new(this._root, {\n\t\t\tthemeTags: $utils.mergeTags(this.rectangles.template.get(\"themeTags\", []), [this._tag, \"shape\"])\n\t\t}, [this.rectangles.template])\n\t);\n\n\tpublic _partitionLayout = d3hierarchy.partition();\n\n\tdeclare public _rootNode: d3hierarchy.HierarchyRectangularNode<IPartitionDataObject> | undefined;\n\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"partition\", this._settings.orientation || \"vertical\"]);\n\t\tsuper._afterNew();\n\t\tthis.setPrivate(\"scaleX\", 1);\n\t\tthis.setPrivate(\"scaleY\", 1);\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tif (this.isDirty(\"nodePadding\")) {\n\t\t\tif (this._rootNode) {\n\t\t\t\tthis._updateNodes(this._rootNode);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isPrivateDirty(\"scaleX\") || this.isPrivateDirty(\"scaleY\")) {\n\t\t\tif (this._rootNode) {\n\t\t\t\tthis._updateNodesScale(this._rootNode);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"orientation\")) {\n\t\t\tthis._updateVisuals();\n\t\t}\n\t}\n\n\tprotected _updateVisuals() {\n\t\tif (this._rootNode) {\n\t\t\tconst partitionLayout = this._partitionLayout;\n\t\t\tlet w = this.innerWidth();\n\t\t\tlet h = this.innerHeight();\n\n\t\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\t\t[w, h] = [h, w];\n\t\t\t}\n\n\t\t\tpartitionLayout.size([w, h]);\n\n\t\t\tconst nodePadding = this.get(\"nodePadding\");\n\n\t\t\tif ($type.isNumber(nodePadding)) {\n\t\t\t\tpartitionLayout.padding(nodePadding);\n\t\t\t}\n\n\n\t\t\tpartitionLayout(this._rootNode);\n\t\t\tthis._updateNodes(this._rootNode);\n\t\t}\n\t}\n\n\tprotected _updateNode(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper._updateNode(dataItem);\n\n\t\tconst node = dataItem.get(\"node\");\n\t\tconst rectangle = dataItem.get(\"rectangle\");\n\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\n\t\tconst scaleX = this.getPrivate(\"scaleX\", 1);\n\t\tconst scaleY = this.getPrivate(\"scaleY\", 1);\n\n\t\tlet x0, x1, y0, y1: number;\n\n\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\tx0 = hierarchyNode.y0 * scaleX;\n\t\t\tx1 = hierarchyNode.y1 * scaleX;\n\t\t\ty0 = hierarchyNode.x0 * scaleY;\n\t\t\ty1 = hierarchyNode.x1 * scaleY;\n\t\t}\n\t\telse {\n\t\t\tx0 = hierarchyNode.x0 * scaleX;\n\t\t\tx1 = hierarchyNode.x1 * scaleX;\n\t\t\ty0 = hierarchyNode.y0 * scaleY;\n\t\t\ty1 = hierarchyNode.y1 * scaleY;\n\t\t}\n\t\tlet w = x1 - x0;\n\t\tlet h = y1 - y0;\n\n\t\tconst duration = this.get(\"animationDuration\", 0);\n\t\tconst easing = this.get(\"animationEasing\");\n\n\t\tnode.animate({ key: \"x\", to: x0, duration: duration, easing: easing })\n\t\tnode.animate({ key: \"y\", to: y0, duration: duration, easing: easing })\n\t\tnode.animate({ key: \"width\", to: w, duration: duration, easing: easing })\n\t\tnode.animate({ key: \"height\", to: h, duration: duration, easing: easing })\n\n\t\tif (rectangle) {\n\t\t\tconst fill = dataItem.get(\"fill\");\n\t\t\tconst fillPattern = dataItem.get(\"fillPattern\");\n\t\t\t\n\t\t\trectangle.animate({ key: \"width\", to: w, duration: duration, easing: easing })\n\t\t\trectangle.animate({ key: \"height\", to: h, duration: duration, easing: easing })\n\t\t\trectangle._setDefault(\"fill\", fill);\n\t\t\trectangle._setDefault(\"fillPattern\", fillPattern);\n\t\t\trectangle._setDefault(\"stroke\", fill);\t\t\t\n\t\t}\n\t}\n\n\n\tprotected _updateNodesScale(hierarchyNode: d3hierarchy.HierarchyRectangularNode<IPartitionDataObject>) {\n\t\tconst dataItem = hierarchyNode.data.dataItem;\n\t\tif (dataItem) {\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tconst rectangle = dataItem.get(\"rectangle\");\n\n\t\t\tconst scaleX = this.getPrivate(\"scaleX\", 1);\n\t\t\tconst scaleY = this.getPrivate(\"scaleY\", 1);\n\n\t\t\tlet x0, x1, y0, y1: number;\n\n\t\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\t\tx0 = hierarchyNode.y0 * scaleX;\n\t\t\t\tx1 = hierarchyNode.y1 * scaleX;\n\t\t\t\ty0 = hierarchyNode.x0 * scaleY;\n\t\t\t\ty1 = hierarchyNode.x1 * scaleY;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tx0 = hierarchyNode.x0 * scaleX;\n\t\t\t\tx1 = hierarchyNode.x1 * scaleX;\n\t\t\t\ty0 = hierarchyNode.y0 * scaleY;\n\t\t\t\ty1 = hierarchyNode.y1 * scaleY;\n\t\t\t}\n\n\t\t\tconst w = x1 - x0;\n\t\t\tconst h = y1 - y0;\n\n\t\t\tnode.setAll({ x: x0, y: y0, width: w, height: h });\n\t\t\trectangle.setAll({ width: w, height: h });\n\n\t\t\tconst hierarchyChildren = hierarchyNode.children;\n\t\t\tif (hierarchyChildren) {\n\t\t\t\t$array.each(hierarchyChildren, (hierarchyChild) => {\n\t\t\t\t\tthis._updateNodesScale(hierarchyChild)\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>): HierarchyNode {\n\t\tconst node = super.makeNode(dataItem);\n\t\tthis._makeNode(dataItem, node);\n\t\treturn node;\n\t}\n\n\tprotected _makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>, node: HierarchyNode) {\n\t\tconst rectangle = node.children.moveValue(this.rectangles.make(), 0);\n\t\tnode.setPrivate(\"tooltipTarget\", rectangle);\n\t\tdataItem.setRaw(\"rectangle\", rectangle);\n\t\trectangle._setDataItem(dataItem);\n\n\t\tconst label = dataItem.get(\"label\");\n\n\t\trectangle.on(\"width\", () => {\n\t\t\tlabel.set(\"maxWidth\", rectangle.width());\n\t\t})\n\n\t\trectangle.on(\"height\", () => {\n\t\t\tlabel.set(\"maxHeight\", rectangle.height());\n\t\t})\n\t}\n\n\tprotected _zoom(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tlet x0 = 0;\n\t\tlet x1 = 0;\n\t\tlet y0 = 0;\n\t\tlet y1 = 0;\n\n\t\tconst upDepth = this.get(\"upDepth\", 0) + 1;\n\t\tconst topDepth = this.get(\"topDepth\", 0);\n\n\t\tconst width = this.innerWidth();\n\t\tconst height = this.innerHeight();\n\n\t\tconst maxDepth = this.getPrivate(\"maxDepth\", 1);\n\t\tconst levelHeight = height / (maxDepth + 1);\n\t\tconst levelWidth = width / (maxDepth + 1);\n\t\tconst initialDepth = Math.min(this.get(\"initialDepth\", 1), maxDepth)// - topDepth);\n\n\t\tlet downDepth = this._currentDownDepth;\n\t\tif (downDepth == null) {\n\t\t\tdownDepth = this.get(\"downDepth\", 1);\n\t\t}\n\n\t\tif (dataItem) {\n\t\t\tconst hierarchyNode = dataItem.get(\"d3HierarchyNode\");\n\t\t\tlet currentDepth = hierarchyNode.depth;\n\n\t\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\t\tx0 = hierarchyNode.y0;\n\t\t\t\tx1 = hierarchyNode.y1;\n\n\t\t\t\ty0 = hierarchyNode.x0;\n\t\t\t\ty1 = hierarchyNode.x1;\n\n\t\t\t\tx0 = x1 - levelWidth * upDepth;\n\t\t\t\tx1 = x0 + levelWidth * (downDepth + 1);\n\n\t\t\t\tif (currentDepth < topDepth) {\n\t\t\t\t\ty0 = 0;\n\t\t\t\t\ty1 = height;\n\t\t\t\t\tx0 = levelWidth * topDepth;\n\t\t\t\t\tx1 = x0 + levelWidth * initialDepth;\n\t\t\t\t}\n\t\t\t}\n\t\t\telse {\n\t\t\t\tx0 = hierarchyNode.x0;\n\t\t\t\tx1 = hierarchyNode.x1;\n\n\t\t\t\ty0 = hierarchyNode.y0;\n\t\t\t\ty1 = hierarchyNode.y1;\n\n\t\t\t\ty0 = y1 - levelHeight * upDepth;\n\t\t\t\ty1 = y0 + levelHeight * (downDepth + 1);\n\n\t\t\t\tif (currentDepth < topDepth) {\n\t\t\t\t\tx0 = 0;\n\t\t\t\t\tx1 = width;\n\t\t\t\t\ty0 = levelHeight * topDepth;\n\t\t\t\t\ty1 = y0 + levelHeight * initialDepth;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tlet scaleX = width / (x1 - x0);\n\t\tlet scaleY = height / (y1 - y0);\n\n\t\tconst easing = this.get(\"animationEasing\");\n\t\tlet duration = this.get(\"animationDuration\", 0);\n\n\t\tif (!this.inited) {\n\t\t\tduration = 0;\n\t\t}\n\n\t\tthis.animatePrivate({ key: \"scaleX\", to: scaleX, duration: duration, easing: easing });\n\t\tthis.animatePrivate({ key: \"scaleY\", to: scaleY, duration: duration, easing: easing });\t\t\n\n\t\tthis.animate({key:\"_d\", from:0, to:1, duration: duration, easing: easing })\n\t\tthis.nodesContainer.animate({ key: \"x\", to: -x0 * scaleX, duration: duration, easing: easing });\n\t\tthis.nodesContainer.animate({ key: \"y\", to: -y0 * scaleY, duration: duration, easing: easing });\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Sunburst.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Sunburst.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Sunburst.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Sunburst.ts"],"names":[],"mappings":"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"}
@@ -135,7 +135,9 @@ export class Sunburst extends Partition {
135
135
  slice.animate({ key: "startAngle", to: sliceStartAngle, duration: duration, easing: easing });
136
136
  slice.animate({ key: "arc", to: arc, duration: duration, easing: easing });
137
137
  const fill = dataItem.get("fill");
138
+ const fillPattern = dataItem.get("fillPattern");
138
139
  slice._setDefault("fill", fill);
140
+ slice._setDefault("fillPattern", fillPattern);
139
141
  slice._setDefault("stroke", fill);
140
142
  }
141
143
  }