@amcharts/amcharts5 5.3.17 → 5.4.1

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 (271) hide show
  1. package/.internal/charts/flow/ArcDiagram.d.ts +86 -0
  2. package/.internal/charts/flow/ArcDiagram.d.ts.map +1 -0
  3. package/.internal/charts/flow/ArcDiagram.js +161 -0
  4. package/.internal/charts/flow/ArcDiagram.js.map +1 -0
  5. package/.internal/charts/flow/ArcDiagramLink.d.ts +40 -0
  6. package/.internal/charts/flow/ArcDiagramLink.d.ts.map +1 -0
  7. package/.internal/charts/flow/ArcDiagramLink.js +130 -0
  8. package/.internal/charts/flow/ArcDiagramLink.js.map +1 -0
  9. package/.internal/charts/flow/ArcDiagramNodes.d.ts +60 -0
  10. package/.internal/charts/flow/ArcDiagramNodes.d.ts.map +1 -0
  11. package/.internal/charts/flow/ArcDiagramNodes.js +96 -0
  12. package/.internal/charts/flow/ArcDiagramNodes.js.map +1 -0
  13. package/.internal/charts/flow/Chord.d.ts +0 -9
  14. package/.internal/charts/flow/Chord.d.ts.map +1 -1
  15. package/.internal/charts/flow/Chord.js +0 -10
  16. package/.internal/charts/flow/Chord.js.map +1 -1
  17. package/.internal/charts/flow/ChordNodes.d.ts +9 -0
  18. package/.internal/charts/flow/ChordNodes.d.ts.map +1 -1
  19. package/.internal/charts/flow/ChordNodes.js +23 -2
  20. package/.internal/charts/flow/ChordNodes.js.map +1 -1
  21. package/.internal/charts/flow/Flow.d.ts +27 -1
  22. package/.internal/charts/flow/Flow.d.ts.map +1 -1
  23. package/.internal/charts/flow/Flow.js +7 -1
  24. package/.internal/charts/flow/Flow.js.map +1 -1
  25. package/.internal/charts/flow/FlowDefaultTheme.d.ts.map +1 -1
  26. package/.internal/charts/flow/FlowDefaultTheme.js +74 -3
  27. package/.internal/charts/flow/FlowDefaultTheme.js.map +1 -1
  28. package/.internal/charts/flow/FlowNodes.d.ts +16 -0
  29. package/.internal/charts/flow/FlowNodes.d.ts.map +1 -1
  30. package/.internal/charts/flow/FlowNodes.js +93 -1
  31. package/.internal/charts/flow/FlowNodes.js.map +1 -1
  32. package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
  33. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  34. package/.internal/charts/hierarchy/HierarchyDefaultTheme.d.ts.map +1 -1
  35. package/.internal/charts/hierarchy/HierarchyDefaultTheme.js +45 -0
  36. package/.internal/charts/hierarchy/HierarchyDefaultTheme.js.map +1 -1
  37. package/.internal/charts/hierarchy/Partition.d.ts +1 -1
  38. package/.internal/charts/hierarchy/Partition.js +1 -1
  39. package/.internal/charts/hierarchy/Partition.js.map +1 -1
  40. package/.internal/charts/hierarchy/VoronoiTreemap.d.ts +117 -0
  41. package/.internal/charts/hierarchy/VoronoiTreemap.d.ts.map +1 -0
  42. package/.internal/charts/hierarchy/VoronoiTreemap.js +176 -0
  43. package/.internal/charts/hierarchy/VoronoiTreemap.js.map +1 -0
  44. package/.internal/charts/map/MapSeries.d.ts.map +1 -1
  45. package/.internal/charts/map/MapSeries.js +1 -0
  46. package/.internal/charts/map/MapSeries.js.map +1 -1
  47. package/.internal/charts/stock/indicators/BollingerBands.d.ts +1 -0
  48. package/.internal/charts/stock/indicators/BollingerBands.d.ts.map +1 -1
  49. package/.internal/charts/stock/indicators/BollingerBands.js +10 -0
  50. package/.internal/charts/stock/indicators/BollingerBands.js.map +1 -1
  51. package/.internal/charts/xy/XYChart.d.ts +1 -1
  52. package/.internal/charts/xy/XYChart.d.ts.map +1 -1
  53. package/.internal/charts/xy/XYChart.js +12 -3
  54. package/.internal/charts/xy/XYChart.js.map +1 -1
  55. package/.internal/charts/xy/XYCursor.d.ts +1 -0
  56. package/.internal/charts/xy/XYCursor.d.ts.map +1 -1
  57. package/.internal/charts/xy/XYCursor.js +7 -4
  58. package/.internal/charts/xy/XYCursor.js.map +1 -1
  59. package/.internal/charts/xy/axes/DateAxis.js +1 -1
  60. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  61. package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
  62. package/.internal/charts/xy/series/LineSeries.js.map +1 -1
  63. package/.internal/core/Classes.d.ts +10 -0
  64. package/.internal/core/Classes.d.ts.map +1 -1
  65. package/.internal/core/Classes.js.map +1 -1
  66. package/.internal/core/Registry.d.ts.map +1 -1
  67. package/.internal/core/Registry.js +1 -1
  68. package/.internal/core/Registry.js.map +1 -1
  69. package/.internal/core/render/Polygon.d.ts +52 -0
  70. package/.internal/core/render/Polygon.d.ts.map +1 -0
  71. package/.internal/core/render/Polygon.js +133 -0
  72. package/.internal/core/render/Polygon.js.map +1 -0
  73. package/.internal/core/render/Sprite.js +1 -1
  74. package/.internal/core/render/Sprite.js.map +1 -1
  75. package/.internal/core/render/backend/CanvasRenderer.js +2 -2
  76. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  77. package/.internal/themes/AnimatedTheme.d.ts.map +1 -1
  78. package/.internal/themes/AnimatedTheme.js +2 -0
  79. package/.internal/themes/AnimatedTheme.js.map +1 -1
  80. package/.internal/themes/DefaultTheme.d.ts.map +1 -1
  81. package/.internal/themes/DefaultTheme.js +3 -0
  82. package/.internal/themes/DefaultTheme.js.map +1 -1
  83. package/CHANGELOG.md +26 -0
  84. package/examples/javascript/flow-arc-horizontal/README.md +6 -0
  85. package/examples/javascript/flow-arc-horizontal/index.css +11 -0
  86. package/examples/javascript/flow-arc-horizontal/index.html +12 -0
  87. package/examples/javascript/flow-arc-horizontal/index.js +116 -0
  88. package/examples/javascript/flow-arc-horizontal/package.json +16 -0
  89. package/examples/javascript/flow-arc-horizontal/webpack.config.js +38 -0
  90. package/examples/javascript/flow-arc-vertical/README.md +6 -0
  91. package/examples/javascript/flow-arc-vertical/index.css +11 -0
  92. package/examples/javascript/flow-arc-vertical/index.html +12 -0
  93. package/examples/javascript/flow-arc-vertical/index.js +91 -0
  94. package/examples/javascript/flow-arc-vertical/package.json +16 -0
  95. package/examples/javascript/flow-arc-vertical/webpack.config.js +38 -0
  96. package/examples/javascript/flow-chord/package.json +1 -1
  97. package/examples/javascript/flow-chord-directed/package.json +1 -1
  98. package/examples/javascript/flow-chord-non-ribbon/index.js +11 -5
  99. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  100. package/examples/javascript/flow-sankey/package.json +1 -1
  101. package/examples/javascript/gauge/package.json +1 -1
  102. package/examples/javascript/gauge-bands/package.json +1 -1
  103. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  104. package/examples/javascript/hierarchy-pack/package.json +1 -1
  105. package/examples/javascript/hierarchy-partition/package.json +1 -1
  106. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  107. package/examples/javascript/hierarchy-tree/package.json +1 -1
  108. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  109. package/examples/javascript/hierarchy-voronoi-treemap/README.md +6 -0
  110. package/examples/javascript/hierarchy-voronoi-treemap/index.css +11 -0
  111. package/examples/javascript/hierarchy-voronoi-treemap/index.html +12 -0
  112. package/examples/javascript/hierarchy-voronoi-treemap/index.js +1298 -0
  113. package/examples/javascript/hierarchy-voronoi-treemap/package.json +16 -0
  114. package/examples/javascript/hierarchy-voronoi-treemap/webpack.config.js +38 -0
  115. package/examples/javascript/jest/package.json +1 -1
  116. package/examples/javascript/json-pie/package.json +1 -1
  117. package/examples/javascript/json-xy/package.json +1 -1
  118. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  119. package/examples/javascript/map-day-and-night/package.json +1 -1
  120. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  121. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  122. package/examples/javascript/map-with-bubbles/package.json +1 -1
  123. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  124. package/examples/javascript/misc-40-charts/package.json +1 -1
  125. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  126. package/examples/javascript/pie-chart/package.json +1 -1
  127. package/examples/javascript/pie-donut-chart/package.json +1 -1
  128. package/examples/javascript/pie-variable-radius/package.json +1 -1
  129. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  130. package/examples/javascript/radar-heat-map/package.json +1 -1
  131. package/examples/javascript/radar-line/package.json +1 -1
  132. package/examples/javascript/radar-time-line/package.json +1 -1
  133. package/examples/javascript/sliced-funnel/package.json +1 -1
  134. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  135. package/examples/javascript/sliced-pyramid/package.json +1 -1
  136. package/examples/javascript/stock-chart/package.json +1 -1
  137. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  138. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  139. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  140. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  141. package/examples/javascript/stock-chart-live/package.json +1 -1
  142. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  143. package/examples/javascript/venn-diagram/package.json +1 -1
  144. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  145. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  146. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  147. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  148. package/examples/javascript/xy-bubble/package.json +1 -1
  149. package/examples/javascript/xy-candlestick/package.json +1 -1
  150. package/examples/javascript/xy-clustered-column/package.json +1 -1
  151. package/examples/javascript/xy-column/package.json +1 -1
  152. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  153. package/examples/javascript/xy-data-grouping/package.json +1 -1
  154. package/examples/javascript/xy-draggable-range/package.json +1 -1
  155. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  156. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  157. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  158. package/examples/javascript/xy-line/package.json +1 -1
  159. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  160. package/examples/javascript/xy-live-data/package.json +1 -1
  161. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  162. package/examples/javascript/xy-ohlc/package.json +1 -1
  163. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  164. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  165. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  166. package/examples/javascript/xy-stacked-column/package.json +1 -1
  167. package/examples/javascript/xy-stacked-step/package.json +1 -1
  168. package/examples/javascript/xy-stock/package.json +1 -1
  169. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  170. package/examples/typescript/flow-arc-horizontal/README.md +6 -0
  171. package/examples/typescript/flow-arc-horizontal/index.css +11 -0
  172. package/examples/typescript/flow-arc-horizontal/index.html +12 -0
  173. package/examples/typescript/flow-arc-horizontal/index.ts +116 -0
  174. package/examples/typescript/flow-arc-horizontal/package.json +18 -0
  175. package/examples/typescript/flow-arc-horizontal/tsconfig.json +12 -0
  176. package/examples/typescript/flow-arc-horizontal/webpack.config.js +45 -0
  177. package/examples/typescript/flow-arc-vertical/README.md +6 -0
  178. package/examples/typescript/flow-arc-vertical/index.css +11 -0
  179. package/examples/typescript/flow-arc-vertical/index.html +12 -0
  180. package/examples/typescript/flow-arc-vertical/index.ts +91 -0
  181. package/examples/typescript/flow-arc-vertical/package.json +18 -0
  182. package/examples/typescript/flow-arc-vertical/tsconfig.json +12 -0
  183. package/examples/typescript/flow-arc-vertical/webpack.config.js +45 -0
  184. package/examples/typescript/flow-chord/package.json +1 -1
  185. package/examples/typescript/flow-chord-directed/package.json +1 -1
  186. package/examples/typescript/flow-chord-non-ribbon/index.ts +11 -5
  187. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  188. package/examples/typescript/flow-sankey/package.json +1 -1
  189. package/examples/typescript/gauge/package.json +1 -1
  190. package/examples/typescript/gauge-bands/package.json +1 -1
  191. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  192. package/examples/typescript/hierarchy-pack/package.json +1 -1
  193. package/examples/typescript/hierarchy-partition/package.json +1 -1
  194. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  195. package/examples/typescript/hierarchy-tree/package.json +1 -1
  196. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  197. package/examples/typescript/hierarchy-voronoi-treemap/README.md +6 -0
  198. package/examples/typescript/hierarchy-voronoi-treemap/index.css +11 -0
  199. package/examples/typescript/hierarchy-voronoi-treemap/index.html +12 -0
  200. package/examples/typescript/hierarchy-voronoi-treemap/index.ts +1298 -0
  201. package/examples/typescript/hierarchy-voronoi-treemap/package.json +18 -0
  202. package/examples/typescript/hierarchy-voronoi-treemap/tsconfig.json +12 -0
  203. package/examples/typescript/hierarchy-voronoi-treemap/webpack.config.js +45 -0
  204. package/examples/typescript/jest/package.json +1 -1
  205. package/examples/typescript/json-pie/package.json +1 -1
  206. package/examples/typescript/json-xy/package.json +1 -1
  207. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  208. package/examples/typescript/map-day-and-night/package.json +1 -1
  209. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  210. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  211. package/examples/typescript/map-with-bubbles/package.json +1 -1
  212. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  213. package/examples/typescript/misc-40-charts/package.json +1 -1
  214. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  215. package/examples/typescript/pie-chart/package.json +1 -1
  216. package/examples/typescript/pie-donut-chart/package.json +1 -1
  217. package/examples/typescript/pie-variable-radius/package.json +1 -1
  218. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  219. package/examples/typescript/radar-heat-map/package.json +1 -1
  220. package/examples/typescript/radar-line/package.json +1 -1
  221. package/examples/typescript/radar-time-line/package.json +1 -1
  222. package/examples/typescript/sliced-funnel/package.json +1 -1
  223. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  224. package/examples/typescript/sliced-pyramid/package.json +1 -1
  225. package/examples/typescript/stock-chart/package.json +1 -1
  226. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  227. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  228. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  229. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  230. package/examples/typescript/stock-chart-live/package.json +1 -1
  231. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  232. package/examples/typescript/venn-diagram/package.json +1 -1
  233. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  234. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  235. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  236. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  237. package/examples/typescript/xy-bubble/package.json +1 -1
  238. package/examples/typescript/xy-candlestick/package.json +1 -1
  239. package/examples/typescript/xy-clustered-column/package.json +1 -1
  240. package/examples/typescript/xy-column/package.json +1 -1
  241. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  242. package/examples/typescript/xy-data-grouping/package.json +1 -1
  243. package/examples/typescript/xy-draggable-range/package.json +1 -1
  244. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  245. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  246. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  247. package/examples/typescript/xy-line/package.json +1 -1
  248. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  249. package/examples/typescript/xy-live-data/package.json +1 -1
  250. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  251. package/examples/typescript/xy-ohlc/package.json +1 -1
  252. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  253. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  254. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  255. package/examples/typescript/xy-stacked-column/package.json +1 -1
  256. package/examples/typescript/xy-stacked-step/package.json +1 -1
  257. package/examples/typescript/xy-stock/package.json +1 -1
  258. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  259. package/flow.d.ts +3 -0
  260. package/flow.d.ts.map +1 -1
  261. package/flow.js +3 -0
  262. package/flow.js.map +1 -1
  263. package/hierarchy.d.ts +1 -0
  264. package/hierarchy.d.ts.map +1 -1
  265. package/hierarchy.js +1 -0
  266. package/hierarchy.js.map +1 -1
  267. package/index.d.ts +1 -0
  268. package/index.d.ts.map +1 -1
  269. package/index.js +1 -0
  270. package/index.js.map +1 -1
  271. package/package.json +4 -2
@@ -1,5 +1,4 @@
1
1
  import type { DataItem } from "../../core/render/Component";
2
- import type { RadialLabel } from "../../core/render/RadialLabel";
3
2
  import { Flow, IFlowSettings, IFlowDataItem, IFlowPrivate, IFlowEvents } from "./Flow";
4
3
  import { RibbonGenerator, RibbonSubgroup, Ribbon } from "d3-chord";
5
4
  import { ListTemplate } from "../../core/util/List";
@@ -11,10 +10,6 @@ export interface IChordDataItem extends IFlowDataItem {
11
10
  * A link element.
12
11
  */
13
12
  link: ChordLink;
14
- /**
15
- * A label element.
16
- */
17
- label: RadialLabel;
18
13
  /**
19
14
  * Source node data item.
20
15
  */
@@ -114,9 +109,5 @@ export declare class Chord extends Flow {
114
109
  _prepareChildren(): void;
115
110
  protected _getLinkPoints(link: ChordLink, linkRadius: number, chordLayoutItem: any): void;
116
111
  protected _updateLink(ribbon: RibbonGenerator<any, Ribbon, RibbonSubgroup>, link: ChordLink, linkRadius: number, chordLayoutItem: any): void;
117
- /**
118
- * @ignore
119
- */
120
- disposeDataItem(dataItem: DataItem<this["_dataItemSettings"]>): void;
121
112
  }
122
113
  //# sourceMappingURL=Chord.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Chord.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/Chord.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Chord.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/Chord.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5D,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACvF,OAAO,EAAiB,eAAe,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlF,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,OAAO,EAAa,MAAM,yBAAyB,CAAC;AAO7D,MAAM,WAAW,cAAe,SAAQ,aAAa;IAEpD;;OAEG;IACH,IAAI,EAAE,SAAS,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IAEtC;;OAEG;IACH,MAAM,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;CAEtC;AAED,MAAM,WAAW,cAAe,SAAQ,aAAa;IAEpD;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAE1B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,IAAI,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,MAAM,CAAA;CAE1C;AAED,MAAM,WAAW,aAAc,SAAQ,YAAY;CAClD;AAED,MAAM,WAAW,YAAa,SAAQ,WAAW;CAChD;AAED;;;;;GAKG;AACH,qBAAa,KAAM,SAAQ,IAAI;IAE9B,OAAc,SAAS,EAAE,MAAM,CAAW;IAC1C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA6C;IAEpF;;;;OAIG;IACH,SAAgB,KAAK,EAAE,YAAY,CAAC,SAAS,CAAC,CAG5C;IAEF;;;;OAIG;IACH,SAAgB,KAAK,EAAE,UAAU,CAAsD;IAExE,SAAS,EAAE,cAAc,CAAC;IAC1B,gBAAgB,EAAE,aAAa,CAAC;IAChC,iBAAiB,EAAE,cAAc,CAAC;IAClC,OAAO,EAAE,YAAY,CAAC;IAE9B,QAAQ,iCAAW;IACnB,YAAY,EAAE;QAAE,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;QAAC,MAAM,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,EAAE,CAAM;IACxL,OAAO,+CAAY;IAE1B,SAAS,CAAC,SAAS;IAOnB,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC;IAUzE;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,SAAS;IAUzE,SAAS,CAAC,WAAW,IAAI,MAAM,EAAE,EAAE;IA+B5B,gBAAgB;IAyEvB,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG;IAoBlF,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG;CAWrI"}
@@ -192,16 +192,6 @@ export class Chord extends Flow {
192
192
  });
193
193
  }
194
194
  }
195
- /**
196
- * @ignore
197
- */
198
- disposeDataItem(dataItem) {
199
- super.disposeDataItem(dataItem);
200
- let label = dataItem.get("label");
201
- if (label) {
202
- label.dispose();
203
- }
204
- }
205
195
  }
206
196
  Object.defineProperty(Chord, "className", {
207
197
  enumerable: true,
@@ -1 +1 @@
1
- {"version":3,"file":"Chord.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/Chord.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { RadialLabel } from \"../../core/render/RadialLabel\";\n\nimport { Flow, IFlowSettings, IFlowDataItem, IFlowPrivate, IFlowEvents } from \"./Flow\";\nimport { chord, ribbon, RibbonGenerator, RibbonSubgroup, Ribbon } from \"d3-chord\";\nimport { ascending, descending } from \"d3\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { ChordNodes, IChordNodesDataItem } from \"./ChordNodes\";\nimport { ChordLink } from \"./ChordLink\";\nimport { Percent, p100, p50 } from \"../../core/util/Percent\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $math from \"../../core/util/Math\";\n\n\nexport interface IChordDataItem extends IFlowDataItem {\n\n\t/**\n\t * A link element.\n\t */\n\tlink: ChordLink;\n\n\t/**\n\t * A label element.\n\t */\n\tlabel: RadialLabel;\n\n\t/**\n\t * Source node data item.\n\t */\n\tsource: DataItem<IChordNodesDataItem>;\n\n\t/**\n\t * Target node data item.\n\t */\n\ttarget: DataItem<IChordNodesDataItem>;\n\n}\n\nexport interface IChordSettings extends IFlowSettings {\n\n\t/**\n\t * Angle of a gap between each node, in degrees.\n\t *\n\t * @default 1\n\t */\n\tpadAngle?: number;\n\n\t/**\n\t * Radius of the diagram in percent or pixels.\n\t *\n\t * If set in percent, it will be relative to the whole area available for\n\t * the series.\n\t *\n\t * @default 90%\n\t */\n\tradius?: number | Percent;\n\n\t/**\n\t * The thickness of node strip in pixels.\n\t *\n\t * @default 10\n\t */\n\tnodeWidth?: number;\n\n\t/**\n\t * Starting angle in degrees.\n\t *\n\t * @default 0\n\t */\n\tstartAngle?: number;\n\n\t/**\n\t * How to sort nodes by their value.\n\t *\n\t * @default \"descending\"\n\t */\n\tsort?: \"ascending\" | \"descending\" | \"none\"\n\n}\n\nexport interface IChordPrivate extends IFlowPrivate {\n}\n\nexport interface IChordEvents extends IFlowEvents {\n}\n\n/**\n * Regular chord series.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/} for more information\n * @important\n */\nexport class Chord extends Flow {\n\n\tpublic static className: string = \"Chord\";\n\tpublic static classNames: Array<string> = Flow.classNames.concat([Chord.className]);\n\n\t/**\n\t * List of link elements.\n\t *\n\t * @default new ListTemplate<ChordLink>\n\t */\n\tpublic readonly links: ListTemplate<ChordLink> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => ChordLink._new(this._root, { themeTags: [\"link\", \"shape\"] }, [this.links.template])\n\t);\n\n\t/**\n\t * A series for all chord nodes.\n\t *\n\t * @default ChordNodes.new()\n\t */\n\tpublic readonly nodes: ChordNodes = this.children.push(ChordNodes.new(this._root, {}));\n\n\tdeclare public _settings: IChordSettings;\n\tdeclare public _privateSettings: IChordPrivate;\n\tdeclare public _dataItemSettings: IChordDataItem;\n\tdeclare public _events: IChordEvents;\n\n\tpublic _d3chord = chord();\n\tpublic _chordLayout: { source: { index: number, startAngle: number, endAngle: number, value: number }, target: { index: number, startAngle: number, endAngle: number, value: number } }[] = [];\n\tpublic _ribbon = ribbon();\n\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"chord\"]);\n\t\tthis.linksContainer.setAll({ x: p50, y: p50 })\n\t\tthis.bulletsContainer.setAll({ x: p50, y: p50 });\n\t\tsuper._afterNew();\n\t}\n\n\tprotected _fixRibbon(ribbon: RibbonGenerator<any, Ribbon, RibbonSubgroup>) {\n\t\tribbon.startAngle((d) => {\n\t\t\treturn d.startAngle + this.get(\"startAngle\", 0) * $math.RADIANS + Math.PI / 2;\n\t\t})\n\n\t\tribbon.endAngle((d) => {\n\t\t\treturn d.endAngle + this.get(\"startAngle\", 0) * $math.RADIANS + Math.PI / 2;\n\t\t})\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLink(dataItem: DataItem<this[\"_dataItemSettings\"]>): ChordLink {\n\t\tconst link = this.linksContainer.children.push(this.links.make());\n\t\tthis.links.push(link);\n\t\tlink._setDataItem(dataItem);\n\t\tlink.set(\"source\", dataItem.get(\"source\"));\n\t\tlink.set(\"target\", dataItem.get(\"target\"));\n\t\tlink.series = this;\n\t\treturn link;\n\t}\n\n\tprotected _makeMatrix(): number[][] {\n\t\tconst matrix: number[][] = [];\n\t\t$array.each(this.nodes.dataItems, (sourceDataItem) => {\n\t\t\tconst group: number[] = [];\n\t\t\tmatrix.push(group);\n\t\t\tlet outgoing = sourceDataItem.get(\"outgoingLinks\");\n\n\t\t\t$array.each(this.nodes.dataItems, (targetDataItem) => {\n\t\t\t\tlet value = 0;\n\t\t\t\tif (outgoing) {\n\t\t\t\t\t$array.each(outgoing, (outgoingLink) => {\n\t\t\t\t\t\tif (outgoingLink.get(\"target\") === targetDataItem) {\n\t\t\t\t\t\t\tvalue = outgoingLink.get(\"valueWorking\");\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet valueSum = this.getPrivate(\"valueSum\", 0);\n\t\t\t\t\t\tlet minSize = this.get(\"minSize\", 0);\n\t\t\t\t\t\tif(value > 0 && minSize > 0){\n\t\t\t\t\t\t\tif(value < valueSum * minSize){\n\t\t\t\t\t\t\t\tvalue = valueSum * minSize;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\t\t\t\t\t\t\t\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t\tgroup.push(value);\n\t\t\t})\n\t\t})\n\t\treturn matrix;\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tthis._fixRibbon(this._ribbon);\n\n\t\tlet chordChanged = false;\n\n\t\tif (this._valuesDirty || this._sizeDirty || this.isDirty(\"padAngle\") || this.isDirty(\"startAngle\")) {\n\n\t\t\tconst matrix = this._makeMatrix();\n\n\t\t\tthis._d3chord.padAngle(this.get(\"padAngle\", 0) * $math.RADIANS);\n\t\t\tconst sort = this.get(\"sort\");\n\n\t\t\tif (sort === \"ascending\") {\n\t\t\t\tthis._d3chord.sortGroups(ascending);\n\t\t\t}\n\t\t\telse if (sort === \"descending\") {\n\t\t\t\tthis._d3chord.sortGroups(descending);\n\t\t\t}\n/*\n\t\t\tthis._d3chord.sortSubgroups((a, b)=>{\n\t\t\t\tif (a != Math.round(a)) return false\n\t\t\t\tif (b != Math.round(b)) return true\n\t\t\t\treturn b < a ? -1 : b > a ? 1 : 0;\n\t\t\t})\n*/\n\t\t\tthis._chordLayout = this._d3chord(matrix);\n\n\t\t\tchordChanged = true;\n\t\t}\n\n\t\tif (chordChanged || this.isDirty(\"radius\") || this.isDirty(\"nodeWidth\")) {\n\t\t\tlet radius = $utils.relativeToValue(this.get(\"radius\", 0), Math.min(this.innerWidth(), this.innerHeight())) / 2;\n\n\t\t\tlet i = 0;\n\n\t\t\tconst chordStartAngle = this.get(\"startAngle\", 0);\n\t\t\tconst nodeWidth = this.get(\"nodeWidth\", 0);\n\n\t\t\t$array.each(this.nodes.dataItems, (dataItem) => {\n\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\tconst chordGroup = (this._chordLayout as any).groups[i];\n\t\t\t\tconst startAngle = chordGroup.startAngle * $math.DEGREES + chordStartAngle;\n\t\t\t\tconst endAngle = chordGroup.endAngle * $math.DEGREES + chordStartAngle;\n\t\t\t\tslice.setAll({ radius: radius, innerRadius: radius - nodeWidth, startAngle: startAngle as number, arc: endAngle - startAngle })\n\n\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\tlabel.setAll({ labelAngle: startAngle + (endAngle - startAngle) / 2 });\n\t\t\t\tlabel.setPrivate(\"radius\", radius);\n\t\t\t\tlabel.setPrivate(\"innerRadius\", 0.1);\n\t\t\t\ti++;\n\t\t\t})\n\n\t\t\tconst linkRadius = radius - this.get(\"nodeWidth\", 0);\n\n\t\t\t$array.each(this._chordLayout, (chord) => {\n\n\t\t\t\tlet dataItem = this._linksByIndex[chord.source.index + \"_\" + chord.target.index];\n\n\t\t\t\tif (!dataItem) {\n\t\t\t\t\tdataItem = this._linksByIndex[chord.target.index + \"_\" + chord.source.index];\n\t\t\t\t}\n\n\t\t\t\tif (dataItem) {\n\t\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\t\tthis._getLinkPoints(link, linkRadius, chord);\n\t\t\t\t\tthis._updateLink(this._ribbon, link, linkRadius, chord);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _getLinkPoints(link: ChordLink, linkRadius: number, chordLayoutItem: any) {\n\t\tconst source = chordLayoutItem.source;\n\t\tconst target = chordLayoutItem.target;\n\n\t\tconst chordStartAngle = this.get(\"startAngle\", 0) * $math.RADIANS;\n\n\t\tif (source && target) {\n\t\t\tconst startAngle0 = source.startAngle;\n\t\t\tconst endAngle0 = source.endAngle\n\t\t\tconst angle0 = startAngle0 + (endAngle0 - startAngle0) / 2 + chordStartAngle;\n\n\t\t\tconst startAngle1 = target.startAngle;\n\t\t\tconst endAngle1 = target.endAngle\n\t\t\tconst angle1 = startAngle1 + (endAngle1 - startAngle1) / 2 + chordStartAngle;\n\n\t\t\tlink._p0 = { x: linkRadius * Math.cos(angle0), y: linkRadius * Math.sin(angle0) };\n\t\t\tlink._p1 = { x: linkRadius * Math.cos(angle1), y: linkRadius * Math.sin(angle1) };\n\t\t}\n\t}\n\n\tprotected _updateLink(ribbon: RibbonGenerator<any, Ribbon, RibbonSubgroup>, link: ChordLink, linkRadius: number, chordLayoutItem: any) {\n\t\tif (chordLayoutItem) {\n\t\t\tribbon.sourceRadius($utils.relativeToValue(link.get(\"sourceRadius\", p100), linkRadius));\n\t\t\tribbon.targetRadius($utils.relativeToValue(link.get(\"targetRadius\", p100), linkRadius));\n\n\t\t\tlink.set(\"draw\", (display) => {\n\t\t\t\tribbon.context(display as any);\n\t\t\t\tribbon(chordLayoutItem);\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tlet label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tlabel.dispose();\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"Chord.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/Chord.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\n\nimport { Flow, IFlowSettings, IFlowDataItem, IFlowPrivate, IFlowEvents } from \"./Flow\";\nimport { chord, ribbon, RibbonGenerator, RibbonSubgroup, Ribbon } from \"d3-chord\";\nimport { ascending, descending } from \"d3\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { ChordNodes, IChordNodesDataItem } from \"./ChordNodes\";\nimport { ChordLink } from \"./ChordLink\";\nimport { Percent, p100, p50 } from \"../../core/util/Percent\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $math from \"../../core/util/Math\";\n\n\nexport interface IChordDataItem extends IFlowDataItem {\n\n\t/**\n\t * A link element.\n\t */\n\tlink: ChordLink;\n\n\t/**\n\t * Source node data item.\n\t */\n\tsource: DataItem<IChordNodesDataItem>;\n\n\t/**\n\t * Target node data item.\n\t */\n\ttarget: DataItem<IChordNodesDataItem>;\n\n}\n\nexport interface IChordSettings extends IFlowSettings {\n\n\t/**\n\t * Angle of a gap between each node, in degrees.\n\t *\n\t * @default 1\n\t */\n\tpadAngle?: number;\n\n\t/**\n\t * Radius of the diagram in percent or pixels.\n\t *\n\t * If set in percent, it will be relative to the whole area available for\n\t * the series.\n\t *\n\t * @default 90%\n\t */\n\tradius?: number | Percent;\n\n\t/**\n\t * The thickness of node strip in pixels.\n\t *\n\t * @default 10\n\t */\n\tnodeWidth?: number;\n\n\t/**\n\t * Starting angle in degrees.\n\t *\n\t * @default 0\n\t */\n\tstartAngle?: number;\n\n\t/**\n\t * How to sort nodes by their value.\n\t *\n\t * @default \"descending\"\n\t */\n\tsort?: \"ascending\" | \"descending\" | \"none\"\n\n}\n\nexport interface IChordPrivate extends IFlowPrivate {\n}\n\nexport interface IChordEvents extends IFlowEvents {\n}\n\n/**\n * Regular chord series.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/} for more information\n * @important\n */\nexport class Chord extends Flow {\n\n\tpublic static className: string = \"Chord\";\n\tpublic static classNames: Array<string> = Flow.classNames.concat([Chord.className]);\n\n\t/**\n\t * List of link elements.\n\t *\n\t * @default new ListTemplate<ChordLink>\n\t */\n\tpublic readonly links: ListTemplate<ChordLink> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => ChordLink._new(this._root, { themeTags: [\"link\", \"shape\"] }, [this.links.template])\n\t);\n\n\t/**\n\t * A series for all chord nodes.\n\t *\n\t * @default ChordNodes.new()\n\t */\n\tpublic readonly nodes: ChordNodes = this.children.push(ChordNodes.new(this._root, {}));\n\n\tdeclare public _settings: IChordSettings;\n\tdeclare public _privateSettings: IChordPrivate;\n\tdeclare public _dataItemSettings: IChordDataItem;\n\tdeclare public _events: IChordEvents;\n\n\tpublic _d3chord = chord();\n\tpublic _chordLayout: { source: { index: number, startAngle: number, endAngle: number, value: number }, target: { index: number, startAngle: number, endAngle: number, value: number } }[] = [];\n\tpublic _ribbon = ribbon();\n\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"chord\"]);\n\t\tthis.linksContainer.setAll({ x: p50, y: p50 })\n\t\tthis.bulletsContainer.setAll({ x: p50, y: p50 });\n\t\tsuper._afterNew();\n\t}\n\n\tprotected _fixRibbon(ribbon: RibbonGenerator<any, Ribbon, RibbonSubgroup>) {\n\t\tribbon.startAngle((d) => {\n\t\t\treturn d.startAngle + this.get(\"startAngle\", 0) * $math.RADIANS + Math.PI / 2;\n\t\t})\n\n\t\tribbon.endAngle((d) => {\n\t\t\treturn d.endAngle + this.get(\"startAngle\", 0) * $math.RADIANS + Math.PI / 2;\n\t\t})\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLink(dataItem: DataItem<this[\"_dataItemSettings\"]>): ChordLink {\n\t\tconst link = this.linksContainer.children.push(this.links.make());\n\t\tthis.links.push(link);\n\t\tlink._setDataItem(dataItem);\n\t\tlink.set(\"source\", dataItem.get(\"source\"));\n\t\tlink.set(\"target\", dataItem.get(\"target\"));\n\t\tlink.series = this;\n\t\treturn link;\n\t}\n\n\tprotected _makeMatrix(): number[][] {\n\t\tconst matrix: number[][] = [];\n\t\t$array.each(this.nodes.dataItems, (sourceDataItem) => {\n\t\t\tconst group: number[] = [];\n\t\t\tmatrix.push(group);\n\t\t\tlet outgoing = sourceDataItem.get(\"outgoingLinks\");\n\n\t\t\t$array.each(this.nodes.dataItems, (targetDataItem) => {\n\t\t\t\tlet value = 0;\n\t\t\t\tif (outgoing) {\n\t\t\t\t\t$array.each(outgoing, (outgoingLink) => {\n\t\t\t\t\t\tif (outgoingLink.get(\"target\") === targetDataItem) {\n\t\t\t\t\t\t\tvalue = outgoingLink.get(\"valueWorking\");\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tlet valueSum = this.getPrivate(\"valueSum\", 0);\n\t\t\t\t\t\tlet minSize = this.get(\"minSize\", 0);\n\t\t\t\t\t\tif(value > 0 && minSize > 0){\n\t\t\t\t\t\t\tif(value < valueSum * minSize){\n\t\t\t\t\t\t\t\tvalue = valueSum * minSize;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\t\t\t\t\t\t\t\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t\tgroup.push(value);\n\t\t\t})\n\t\t})\n\t\treturn matrix;\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tthis._fixRibbon(this._ribbon);\n\n\t\tlet chordChanged = false;\n\n\t\tif (this._valuesDirty || this._sizeDirty || this.isDirty(\"padAngle\") || this.isDirty(\"startAngle\")) {\n\n\t\t\tconst matrix = this._makeMatrix();\n\n\t\t\tthis._d3chord.padAngle(this.get(\"padAngle\", 0) * $math.RADIANS);\n\t\t\tconst sort = this.get(\"sort\");\n\n\t\t\tif (sort === \"ascending\") {\n\t\t\t\tthis._d3chord.sortGroups(ascending);\n\t\t\t}\n\t\t\telse if (sort === \"descending\") {\n\t\t\t\tthis._d3chord.sortGroups(descending);\n\t\t\t}\n/*\n\t\t\tthis._d3chord.sortSubgroups((a, b)=>{\n\t\t\t\tif (a != Math.round(a)) return false\n\t\t\t\tif (b != Math.round(b)) return true\n\t\t\t\treturn b < a ? -1 : b > a ? 1 : 0;\n\t\t\t})\n*/\n\t\t\tthis._chordLayout = this._d3chord(matrix);\n\n\t\t\tchordChanged = true;\n\t\t}\n\n\t\tif (chordChanged || this.isDirty(\"radius\") || this.isDirty(\"nodeWidth\")) {\n\t\t\tlet radius = $utils.relativeToValue(this.get(\"radius\", 0), Math.min(this.innerWidth(), this.innerHeight())) / 2;\n\n\t\t\tlet i = 0;\n\n\t\t\tconst chordStartAngle = this.get(\"startAngle\", 0);\n\t\t\tconst nodeWidth = this.get(\"nodeWidth\", 0);\n\n\t\t\t$array.each(this.nodes.dataItems, (dataItem) => {\n\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\tconst chordGroup = (this._chordLayout as any).groups[i];\n\t\t\t\tconst startAngle = chordGroup.startAngle * $math.DEGREES + chordStartAngle;\n\t\t\t\tconst endAngle = chordGroup.endAngle * $math.DEGREES + chordStartAngle;\n\t\t\t\tslice.setAll({ radius: radius, innerRadius: radius - nodeWidth, startAngle: startAngle as number, arc: endAngle - startAngle })\n\n\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\tlabel.setAll({ labelAngle: startAngle + (endAngle - startAngle) / 2 });\n\t\t\t\tlabel.setPrivate(\"radius\", radius);\n\t\t\t\tlabel.setPrivate(\"innerRadius\", 0.1);\n\t\t\t\ti++;\n\t\t\t})\n\n\t\t\tconst linkRadius = radius - this.get(\"nodeWidth\", 0);\n\n\t\t\t$array.each(this._chordLayout, (chord) => {\n\n\t\t\t\tlet dataItem = this._linksByIndex[chord.source.index + \"_\" + chord.target.index];\n\n\t\t\t\tif (!dataItem) {\n\t\t\t\t\tdataItem = this._linksByIndex[chord.target.index + \"_\" + chord.source.index];\n\t\t\t\t}\n\n\t\t\t\tif (dataItem) {\n\t\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\t\tthis._getLinkPoints(link, linkRadius, chord);\n\t\t\t\t\tthis._updateLink(this._ribbon, link, linkRadius, chord);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _getLinkPoints(link: ChordLink, linkRadius: number, chordLayoutItem: any) {\n\t\tconst source = chordLayoutItem.source;\n\t\tconst target = chordLayoutItem.target;\n\n\t\tconst chordStartAngle = this.get(\"startAngle\", 0) * $math.RADIANS;\n\n\t\tif (source && target) {\n\t\t\tconst startAngle0 = source.startAngle;\n\t\t\tconst endAngle0 = source.endAngle\n\t\t\tconst angle0 = startAngle0 + (endAngle0 - startAngle0) / 2 + chordStartAngle;\n\n\t\t\tconst startAngle1 = target.startAngle;\n\t\t\tconst endAngle1 = target.endAngle\n\t\t\tconst angle1 = startAngle1 + (endAngle1 - startAngle1) / 2 + chordStartAngle;\n\n\t\t\tlink._p0 = { x: linkRadius * Math.cos(angle0), y: linkRadius * Math.sin(angle0) };\n\t\t\tlink._p1 = { x: linkRadius * Math.cos(angle1), y: linkRadius * Math.sin(angle1) };\n\t\t}\n\t}\n\n\tprotected _updateLink(ribbon: RibbonGenerator<any, Ribbon, RibbonSubgroup>, link: ChordLink, linkRadius: number, chordLayoutItem: any) {\n\t\tif (chordLayoutItem) {\n\t\t\tribbon.sourceRadius($utils.relativeToValue(link.get(\"sourceRadius\", p100), linkRadius));\n\t\t\tribbon.targetRadius($utils.relativeToValue(link.get(\"targetRadius\", p100), linkRadius));\n\n\t\t\tlink.set(\"draw\", (display) => {\n\t\t\t\tribbon.context(display as any);\n\t\t\t\tribbon(chordLayoutItem);\n\t\t\t})\n\t\t}\n\t}\n}\n"]}
@@ -48,11 +48,20 @@ export declare class ChordNodes extends FlowNodes {
48
48
  *
49
49
  * @default new ListTemplate<Slice>
50
50
  */
51
+ readonly slices: ListTemplate<Slice>;
52
+ /**
53
+ * @ignore
54
+ * added to solve old naming bug
55
+ */
51
56
  readonly rectangles: ListTemplate<Slice>;
52
57
  /**
53
58
  * @ignore
54
59
  */
55
60
  makeNode(dataItem: DataItem<this["_dataItemSettings"]>): FlowNode;
56
61
  _positionBullet(bullet: Bullet): void;
62
+ /**
63
+ * @ignore
64
+ */
65
+ disposeDataItem(dataItem: DataItem<this["_dataItemSettings"]>): void;
57
66
  }
58
67
  //# sourceMappingURL=ChordNodes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChordNodes.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/ChordNodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACrH,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAI5D,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAE9D;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC;IAEb;;OAEG;IACH,KAAK,EAAE,WAAW,CAAC;CAEnB;AAED,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;CAC9D;AAED,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;CAC5D;AAED,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;CAC1D;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,SAAS;IACxC,OAAc,SAAS,EAAE,MAAM,CAAgB;IAC/C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAuD;IAE9F;;;;OAIG;IACH,SAAgB,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC,CAG/C;IAEa,SAAS,EAAE,mBAAmB,CAAC;IAC/B,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,iBAAiB,EAAE,mBAAmB,CAAC;IACvC,OAAO,EAAE,iBAAiB,CAAC;IAE1C;;OAEG;IACI,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC;IAE/B,SAAS,CAAC,OAAO,EAAE,MAAM,CAAK;IAE9B;;;;OAIG;IACH,SAAgB,UAAU,EAAE,YAAY,CAAC,KAAK,CAAC,CAG7C;IAEF;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,QAAQ;IAwCjE,eAAe,CAAC,MAAM,EAAE,MAAM;CAqBrC"}
1
+ {"version":3,"file":"ChordNodes.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/ChordNodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACrH,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAI5D,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAE9D;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC;IAEb;;OAEG;IACH,KAAK,EAAE,WAAW,CAAC;CAEnB;AAED,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;CAC9D;AAED,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB;CAC5D;AAED,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;CAC1D;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,SAAS;IACxC,OAAc,SAAS,EAAE,MAAM,CAAgB;IAC/C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAuD;IAE9F;;;;OAIG;IACH,SAAgB,MAAM,EAAE,YAAY,CAAC,WAAW,CAAC,CAG/C;IAEa,SAAS,EAAE,mBAAmB,CAAC;IAC/B,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,iBAAiB,EAAE,mBAAmB,CAAC;IACvC,OAAO,EAAE,iBAAiB,CAAC;IAE1C;;OAEG;IACI,IAAI,EAAE,KAAK,GAAG,SAAS,CAAC;IAE/B,SAAS,CAAC,OAAO,EAAE,MAAM,CAAK;IAE9B;;;;OAIG;IACH,SAAgB,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAGzC;IAEF;;;OAGG;IACH,SAAgB,UAAU,sBAAe;IAEzC;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,QAAQ;IAwCjE,eAAe,CAAC,MAAM,EAAE,MAAM;IAsBrC;;OAEG;IACI,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;CAQpE"}
@@ -41,11 +41,21 @@ export class ChordNodes extends FlowNodes {
41
41
  *
42
42
  * @default new ListTemplate<Slice>
43
43
  */
44
+ Object.defineProperty(this, "slices", {
45
+ enumerable: true,
46
+ configurable: true,
47
+ writable: true,
48
+ value: new ListTemplate(Template.new({}), () => Slice._new(this._root, { themeTags: ["shape"] }, [this.slices.template]))
49
+ });
50
+ /**
51
+ * @ignore
52
+ * added to solve old naming bug
53
+ */
44
54
  Object.defineProperty(this, "rectangles", {
45
55
  enumerable: true,
46
56
  configurable: true,
47
57
  writable: true,
48
- value: new ListTemplate(Template.new({}), () => Slice._new(this._root, { themeTags: ["shape"] }, [this.rectangles.template]))
58
+ value: this.slices
49
59
  });
50
60
  }
51
61
  /**
@@ -53,7 +63,7 @@ export class ChordNodes extends FlowNodes {
53
63
  */
54
64
  makeNode(dataItem) {
55
65
  const node = super.makeNode(dataItem, "chord");
56
- const slice = node.children.insertIndex(0, this.rectangles.make());
66
+ const slice = node.children.insertIndex(0, this.slices.make());
57
67
  dataItem.set("slice", slice);
58
68
  slice._setSoft("fill", dataItem.get("fill"));
59
69
  const label = this.labels.make();
@@ -103,6 +113,17 @@ export class ChordNodes extends FlowNodes {
103
113
  }
104
114
  }
105
115
  }
116
+ /**
117
+ * @ignore
118
+ */
119
+ disposeDataItem(dataItem) {
120
+ super.disposeDataItem(dataItem);
121
+ let slice = dataItem.get("slice");
122
+ if (slice) {
123
+ this.slices.removeValue(slice);
124
+ slice.dispose();
125
+ }
126
+ }
106
127
  }
107
128
  Object.defineProperty(ChordNodes, "className", {
108
129
  enumerable: true,
@@ -1 +1 @@
1
- {"version":3,"file":"ChordNodes.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/ChordNodes.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { FlowNode } from \"./FlowNode\";\nimport type { Chord } from \"./Chord\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport { FlowNodes, IFlowNodesSettings, IFlowNodesDataItem, IFlowNodesPrivate, IFlowNodesEvents } from \"./FlowNodes\";\nimport { Slice } from \"../../core/render/Slice\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { RadialLabel } from \"../../core/render/RadialLabel\";\n\nimport * as $math from \"../../core/util/Math\";\n\nexport interface IChordNodesDataItem extends IFlowNodesDataItem {\n\n\t/**\n\t * Node [[Slice]] element.\n\t */\n\tslice: Slice;\n\n\t/**\n\t * Node label element.\n\t */\n\tlabel: RadialLabel;\n\n}\n\nexport interface IChordNodesSettings extends IFlowNodesSettings {\n}\n\nexport interface IChordNodesPrivate extends IFlowNodesPrivate {\n}\n\nexport interface IChordNodesEvents extends IFlowNodesEvents {\n}\n\n/**\n * Holds instances of nodes for a [[Chord]] series.\n */\nexport class ChordNodes extends FlowNodes {\n\tpublic static className: string = \"ChordNodes\";\n\tpublic static classNames: Array<string> = FlowNodes.classNames.concat([ChordNodes.className]);\n\n\t/**\n\t * List of label elements.\n\t *\n\t * @default new ListTemplate<RadialLabel>\n\t */\n\tpublic readonly labels: ListTemplate<RadialLabel> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RadialLabel._new(this._root, {}, [this.labels.template])\n\t);\n\n\tdeclare public _settings: IChordNodesSettings;\n\tdeclare public _privateSettings: IChordNodesPrivate;\n\tdeclare public _dataItemSettings: IChordNodesDataItem;\n\tdeclare public _events: IChordNodesEvents;\n\n\t/**\n\t * Related [[Chord]] series.\n\t */\n\tpublic flow: Chord | undefined;\n\n\tprotected _dAngle: number = 0;\n\n\t/**\n\t * List of slice elements.\n\t *\n\t * @default new ListTemplate<Slice>\n\t */\n\tpublic readonly rectangles: ListTemplate<Slice> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Slice._new(this._root, { themeTags: [\"shape\"] }, [this.rectangles.template])\n\t);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>): FlowNode {\n\t\tconst node = super.makeNode(dataItem, \"chord\");\n\n\t\tconst slice = node.children.insertIndex(0, this.rectangles.make());\n\t\tdataItem.set(\"slice\", slice);\n\t\tslice._setSoft(\"fill\", dataItem.get(\"fill\"));\n\n\t\tconst label = this.labels.make();\n\t\tthis.labels.push(label);\n\t\tlabel.addTag(\"flow\");\n\t\tlabel.addTag(\"chord\");\n\t\tlabel.addTag(\"node\");\n\n\t\tnode.children.push(label);\n\t\tdataItem.set(\"label\", label);\n\n\t\tnode.events.on(\"dragstart\", (e) => {\n\t\t\tlet point = this.toLocal(e.point);\n\t\t\tconst angle = $math.getAngle({ x: 0, y: 0 }, point);\n\t\t\tif (this.flow) {\n\t\t\t\tthis._dAngle = this.flow.get(\"startAngle\", 0) - angle;\n\t\t\t}\n\t\t})\n\n\t\tnode.events.on(\"dragged\", (e) => {\n\t\t\tlet point = this.toLocal(e.point);\n\t\t\tconst angle = $math.getAngle({ x: 0, y: 0 }, point);\n\n\t\t\tnode.setAll({ x: 0, y: 0 });\n\t\t\tif (this.flow) {\n\t\t\t\tthis.flow.set(\"startAngle\", angle + this._dAngle);\n\t\t\t}\n\t\t})\n\n\t\tlabel._setDataItem(dataItem);\n\t\tslice._setDataItem(dataItem);\n\n\t\treturn node;\n\t}\n\n\tpublic _positionBullet(bullet: Bullet) {\n\t\tconst sprite = bullet.get(\"sprite\");\n\t\tif (sprite) {\n\t\t\tconst dataItem = sprite.dataItem as DataItem<this[\"_dataItemSettings\"]>;\n\t\t\tif (dataItem) {\n\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\t\t\t\tif (sprite) {\n\t\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\t\tconst locationX = bullet.get(\"locationX\", 0.5);\n\t\t\t\t\tconst locationY = bullet.get(\"locationY\", 0.5);\n\t\t\t\t\tif (slice) {\n\t\t\t\t\t\tconst radius = slice.get(\"radius\", 0);\n\t\t\t\t\t\tconst innerRadius = slice.get(\"innerRadius\", 0);\n\t\t\t\t\t\tconst bulletRadius = innerRadius + (radius - innerRadius) * locationY;\n\t\t\t\t\t\tconst angle = slice.get(\"startAngle\", 0) + slice.get(\"arc\", 0) * locationX;\n\t\t\t\t\t\tsprite.setAll({ x: bulletRadius * $math.cos(angle), y: bulletRadius * $math.sin(angle) });\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"ChordNodes.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/ChordNodes.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { FlowNode } from \"./FlowNode\";\nimport type { Chord } from \"./Chord\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport { FlowNodes, IFlowNodesSettings, IFlowNodesDataItem, IFlowNodesPrivate, IFlowNodesEvents } from \"./FlowNodes\";\nimport { Slice } from \"../../core/render/Slice\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { RadialLabel } from \"../../core/render/RadialLabel\";\n\nimport * as $math from \"../../core/util/Math\";\n\nexport interface IChordNodesDataItem extends IFlowNodesDataItem {\n\n\t/**\n\t * Node [[Slice]] element.\n\t */\n\tslice: Slice;\n\n\t/**\n\t * Node label element.\n\t */\n\tlabel: RadialLabel;\n\n}\n\nexport interface IChordNodesSettings extends IFlowNodesSettings {\n}\n\nexport interface IChordNodesPrivate extends IFlowNodesPrivate {\n}\n\nexport interface IChordNodesEvents extends IFlowNodesEvents {\n}\n\n/**\n * Holds instances of nodes for a [[Chord]] series.\n */\nexport class ChordNodes extends FlowNodes {\n\tpublic static className: string = \"ChordNodes\";\n\tpublic static classNames: Array<string> = FlowNodes.classNames.concat([ChordNodes.className]);\n\n\t/**\n\t * List of label elements.\n\t *\n\t * @default new ListTemplate<RadialLabel>\n\t */\n\tpublic readonly labels: ListTemplate<RadialLabel> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RadialLabel._new(this._root, {}, [this.labels.template])\n\t);\n\n\tdeclare public _settings: IChordNodesSettings;\n\tdeclare public _privateSettings: IChordNodesPrivate;\n\tdeclare public _dataItemSettings: IChordNodesDataItem;\n\tdeclare public _events: IChordNodesEvents;\n\n\t/**\n\t * Related [[Chord]] series.\n\t */\n\tpublic flow: Chord | undefined;\n\n\tprotected _dAngle: number = 0;\n\n\t/**\n\t * List of slice elements.\n\t *\n\t * @default new ListTemplate<Slice>\n\t */\n\tpublic readonly slices: ListTemplate<Slice> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Slice._new(this._root, { themeTags: [\"shape\"] }, [this.slices.template])\n\t);\n\n\t/**\n\t * @ignore\n\t * added to solve old naming bug\n\t */\n\tpublic readonly rectangles = this.slices;\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>): FlowNode {\n\t\tconst node = super.makeNode(dataItem, \"chord\");\n\n\t\tconst slice = node.children.insertIndex(0, this.slices.make());\n\t\tdataItem.set(\"slice\", slice);\n\t\tslice._setSoft(\"fill\", dataItem.get(\"fill\"));\n\n\t\tconst label = this.labels.make();\n\t\tthis.labels.push(label);\n\t\tlabel.addTag(\"flow\");\n\t\tlabel.addTag(\"chord\");\n\t\tlabel.addTag(\"node\");\n\n\t\tnode.children.push(label);\n\t\tdataItem.set(\"label\", label);\n\n\t\tnode.events.on(\"dragstart\", (e) => {\n\t\t\tlet point = this.toLocal(e.point);\n\t\t\tconst angle = $math.getAngle({ x: 0, y: 0 }, point);\n\t\t\tif (this.flow) {\n\t\t\t\tthis._dAngle = this.flow.get(\"startAngle\", 0) - angle;\n\t\t\t}\n\t\t})\n\n\t\tnode.events.on(\"dragged\", (e) => {\n\t\t\tlet point = this.toLocal(e.point);\n\t\t\tconst angle = $math.getAngle({ x: 0, y: 0 }, point);\n\n\t\t\tnode.setAll({ x: 0, y: 0 });\n\t\t\tif (this.flow) {\n\t\t\t\tthis.flow.set(\"startAngle\", angle + this._dAngle);\n\t\t\t}\n\t\t})\n\n\t\tlabel._setDataItem(dataItem);\n\t\tslice._setDataItem(dataItem);\n\n\t\treturn node;\n\t}\n\n\tpublic _positionBullet(bullet: Bullet) {\n\t\tconst sprite = bullet.get(\"sprite\");\n\t\tif (sprite) {\n\t\t\tconst dataItem = sprite.dataItem as DataItem<this[\"_dataItemSettings\"]>;\n\t\t\tif (dataItem) {\n\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\t\t\t\tif (sprite) {\n\t\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\t\tconst locationX = bullet.get(\"locationX\", 0.5);\n\t\t\t\t\tconst locationY = bullet.get(\"locationY\", 0.5);\n\t\t\t\t\tif (slice) {\n\t\t\t\t\t\tconst radius = slice.get(\"radius\", 0);\n\t\t\t\t\t\tconst innerRadius = slice.get(\"innerRadius\", 0);\n\t\t\t\t\t\tconst bulletRadius = innerRadius + (radius - innerRadius) * locationY;\n\t\t\t\t\t\tconst angle = slice.get(\"startAngle\", 0) + slice.get(\"arc\", 0) * locationX;\n\t\t\t\t\t\tsprite.setAll({ x: bulletRadius * $math.cos(angle), y: bulletRadius * $math.sin(angle) });\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tlet slice = dataItem.get(\"slice\");\n\t\tif (slice) {\n\t\t\tthis.slices.removeValue(slice);\n\t\t\tslice.dispose();\n\t\t}\n\t}\n}\n"]}
@@ -67,16 +67,42 @@ export interface IFlowSettings extends ISeriesSettings {
67
67
  */
68
68
  nodePadding?: number;
69
69
  /**
70
- * Minimum size of the node/link.
70
+ * Minimum size of the link.
71
71
  *
72
72
  * It's a relative value to the sum of all values in the series. If set,
73
73
  * this relative value will be used for small value nodes when calculating
74
74
  * their size. For example, if it's set to `0.01`, small nodes will be
75
75
  * sized like their value is 1% of the total sum of all values in series.
76
76
  *
77
+ * @default 0
77
78
  * @since 5.1.5
78
79
  */
79
80
  minSize?: number;
81
+ /**
82
+ * Relative size of hidden links.
83
+ *
84
+ * Links are hidden when user clicks on nodes (if `toggleKey` on nodes is set
85
+ * to `"disabled"`).
86
+ *
87
+ * This allows hidden node to remain visible so that user could click on it
88
+ * again to show it and its links.
89
+ *
90
+ * @default 0.05
91
+ * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/#Node_toggling} for more info
92
+ * @since 5.4.1
93
+ */
94
+ hiddenSize?: number;
95
+ /**
96
+ * Minimum value of hidden links.
97
+ *
98
+ * Links are hidden when user clicks on nodes (if `toggleKey` on nodes is set
99
+ * to `"disabled"`).
100
+ *
101
+ * @default 0
102
+ * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/#Node_toggling} for more info
103
+ * @since 5.4.1
104
+ */
105
+ minHiddenValue?: number;
80
106
  }
81
107
  export interface IFlowPrivate extends ISeriesPrivate {
82
108
  valueSum?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"Flow.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/Flow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Flow.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/Flow.ts"],"names":[],"mappings":"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"}
@@ -258,6 +258,7 @@ export class Flow extends Series {
258
258
  break;
259
259
  case "target":
260
260
  link.set("stroke", targetFill);
261
+ break;
261
262
  case "gradient":
262
263
  let gradient = link._strokeGradient;
263
264
  if (!gradient) {
@@ -311,7 +312,12 @@ export class Flow extends Series {
311
312
  duration = hiddenState.get(stateAnimationDuration, this.get(stateAnimationDuration, 0));
312
313
  }
313
314
  const easing = hiddenState.get(stateAnimationEasing, this.get(stateAnimationEasing));
314
- promises.push(dataItem.animate({ key: "valueWorking", to: 0, duration: duration, easing: easing }).waitForStop());
315
+ promises.push(dataItem.animate({
316
+ key: "valueWorking",
317
+ to: Math.max(this.get("minHiddenValue", 0), this.get("hiddenSize", 0) * dataItem.get("value")),
318
+ duration: duration,
319
+ easing: easing
320
+ }).waitForStop());
315
321
  const linkGraphics = dataItem.get("link");
316
322
  linkGraphics.hide();
317
323
  yield Promise.all(promises);
@@ -1 +1 @@
1
- {"version":3,"file":"Flow.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/Flow.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { Color } from \"../../core/util/Color\";\nimport type { FlowLink } from \"./FlowLink\";\nimport type { FlowNodes, IFlowNodesDataItem } from \"./FlowNodes\";\nimport type { ListTemplate } from \"../../core/util/List\";\nimport type { Bullet } from \"../../core/render/Bullet\";\nimport type * as d3sankey from \"d3-sankey\";\n\nimport { FlowDefaultTheme } from \"./FlowDefaultTheme\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate, ISeriesEvents } from \"../../core/render/Series\";\nimport { Container } from \"../../core/render/Container\";\nimport { LinearGradient } from \"../../core/render/gradients/LinearGradient\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\n\nexport interface IFlowDataItem extends ISeriesDataItem {\n\n\t/**\n\t * Link value.\n\t */\n\tvalue: number;\n\n\t/**\n\t * @ignore\n\t */\n\tvalueWorking: number;\n\n\t/**\n\t * Associated link element.\n\t */\n\tlink: FlowLink;\n\n\t/**\n\t * Link's color.\n\t */\n\tfill: Color;\n\n\t/**\n\t * @ignore\n\t */\n\td3SankeyLink: d3sankey.SankeyLink<d3sankey.SankeyExtraProperties, d3sankey.SankeyExtraProperties>;\n\n\t/**\n\t * An ID of the target node.\n\t */\n\ttargetId: string;\n\n\t/**\n\t * An ID of the source node.\n\t */\n\tsourceId: string;\n\n\t/**\n\t * A data item of the source node.\n\t */\n\tsource: DataItem<IFlowNodesDataItem>;\n\n\t/**\n\t * A data item of the target node.\n\t */\n\ttarget: DataItem<IFlowNodesDataItem>;\n\n}\n\nexport interface IFlowSettings extends ISeriesSettings {\n\n\t/**\n\t * A field in data which holds source node ID.\n\t */\n\tsourceIdField?: string;\n\n\t/**\n\t * A field in data which holds target node ID.\n\t */\n\ttargetIdField?: string;\n\n\t/**\n\t * The thickness of node strip in pixels.\n\t *\n\t * @default 10\n\t */\n\tnodeWidth?: number;\n\n\t/**\n\t * Minimum gap between adjacent nodes.\n\t *\n\t * @default 10\n\t */\n\tnodePadding?: number;\n\n\t/**\n\t * Minimum size of the node/link.\n\t * \n\t * It's a relative value to the sum of all values in the series. If set,\n\t * this relative value will be used for small value nodes when calculating\n\t * their size. For example, if it's set to `0.01`, small nodes will be\n\t * sized like their value is 1% of the total sum of all values in series.\n\t *\n\t * @since 5.1.5\n\t */\n\tminSize?: number;\n\n}\n\nexport interface IFlowPrivate extends ISeriesPrivate {\n\tvalueSum?: number;\n\tvalueLow?: number;\n\tvalueHigh?: number;\n}\n\nexport interface IFlowEvents extends ISeriesEvents {\n}\n\n/**\n * A base class for all flow type series: [[Sankey]] and [[Chord]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/} for more info\n */\nexport abstract class Flow extends Series {\n\tpublic static className: string = \"Flow\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([Flow.className]);\n\n\tdeclare public _settings: IFlowSettings;\n\tdeclare public _privateSettings: IFlowPrivate;\n\tdeclare public _dataItemSettings: IFlowDataItem;\n\tdeclare public _events: IFlowEvents;\n\n\t/**\n\t * @ignore\n\t */\n\tdeclare public readonly nodes: FlowNodes;\n\n\t/**\n\t * Container series will place their links in.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly linksContainer = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * @ignore\n\t */\n\tpublic abstract readonly links: ListTemplate<FlowLink>;\n\n\tprotected _nodesData: d3sankey.SankeyNodeMinimal<{}, {}>[] = [];\n\tprotected _linksData: { source: d3sankey.SankeyNodeMinimal<{}, {}>, target: d3sankey.SankeyNodeMinimal<{}, {}>, value: number }[] = [];\n\tprotected _index = 0;\n\tprotected _nodesDataSet:boolean = false;\n\n\tprotected _linksByIndex: { [index: string]: any } = {};\n\tprotected _afterNew() {\n\t\tthis._defaultThemes.push(FlowDefaultTheme.new(this._root));\n\n\t\tthis.fields.push(\"disabled\", \"sourceId\", \"targetId\");\n\n\t\tif (this.nodes) {\n\t\t\tthis.nodes.flow = this;\n\t\t}\n\n\t\tsuper._afterNew();\n\n\t\tthis.children.push(this.bulletsContainer);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic abstract makeLink(dataItem: DataItem<this[\"_dataItemSettings\"]>): FlowLink;\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst nodes = this.nodes;\n\t\tif (nodes) {\n\t\t\tlet unknown = false;\n\t\t\tlet sourceId = dataItem.get(\"sourceId\");\n\t\t\tlet sourceDataItem = nodes.getDataItemById(sourceId);\n\n\t\t\tif (!sourceDataItem) {\n\t\t\t\tif (sourceId == null) {\n\t\t\t\t\tsourceId = \"undefined\" + this._index;\n\t\t\t\t\tthis._index++;\n\t\t\t\t\tunknown = true;\n\t\t\t\t}\n\t\t\t\tnodes.data.push({ id: sourceId, unknown: unknown });\n\t\t\t\tsourceDataItem = nodes.getDataItemById(sourceId)!;\n\t\t\t\tif (!unknown) {\n\t\t\t\t\tsourceDataItem.set(\"name\", sourceId);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tunknown = false;\n\t\t\tlet targetId = dataItem.get(\"targetId\");\n\n\t\t\tlet targetDataItem = nodes.getDataItemById(targetId);\n\t\t\tif (!targetDataItem) {\n\t\t\t\tif (targetId == null) {\n\t\t\t\t\ttargetId = \"undefined\" + this._index;\n\t\t\t\t\tthis._index++;\n\t\t\t\t\tunknown = true;\n\t\t\t\t}\n\n\t\t\t\tnodes.data.push({ id: targetId, unknown: unknown });\n\t\t\t\ttargetDataItem = nodes.getDataItemById(targetId)!;\n\t\t\t\tif (!unknown) {\n\t\t\t\t\ttargetDataItem.set(\"name\", targetId);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (sourceDataItem) {\n\t\t\t\tdataItem.set(\"source\", sourceDataItem);\n\t\t\t\tnodes.addOutgoingLink(sourceDataItem, dataItem);\n\t\t\t}\n\n\t\t\tif (targetDataItem) {\n\t\t\t\tdataItem.set(\"target\", targetDataItem);\n\t\t\t\tnodes.addincomingLink(targetDataItem, dataItem);\n\t\t\t}\n\n\t\t\tdataItem.set(\"link\", this.makeLink(dataItem));\n\n\t\t\tconst sourceIndex = this.nodes.dataItems.indexOf(sourceDataItem);\n\t\t\tconst targetIndex = this.nodes.dataItems.indexOf(targetDataItem);\n\n\t\t\tthis._linksByIndex[sourceIndex + \"_\" + targetIndex] = dataItem;\n\n\t\t\tif (sourceDataItem.get(\"unknown\")) {\n\t\t\t\tif (targetDataItem) {\n\t\t\t\t\tsourceDataItem.set(\"fill\", targetDataItem.get(\"fill\"));\n\t\t\t\t}\n\n\t\t\t\tdataItem.get(\"link\").set(\"fillStyle\", \"gradient\");\n\t\t\t}\n\n\n\t\t\tif (targetDataItem.get(\"unknown\")) {\n\t\t\t\tif (sourceDataItem) {\n\t\t\t\t\ttargetDataItem.set(\"fill\", sourceDataItem.get(\"fill\"));\n\t\t\t\t}\n\n\t\t\t\tdataItem.get(\"link\").set(\"fillStyle\", \"gradient\");\n\t\t\t}\n\n\t\t\tthis._updateLinkColor(dataItem);\n\t\t}\n\t}\n\n\tprotected _onDataClear() {\n\t\tif(!this.nodes._userDataSet){\n\t\t\tthis.nodes.data.setAll([]);\n\t\t\tthis.nodes._userDataSet = false;\n\t\t}\n\n\t}\t\t\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tlet valueLow = Infinity;\n\t\tlet valueHigh = -Infinity;\n\t\tlet valueSum = 0;\n\n\t\tif (this._valuesDirty) {\n\t\t\tthis._nodesData = [];\n\t\t\tconst nodes = this.nodes;\n\t\t\tif (nodes) {\n\t\t\t\t$array.each(nodes.dataItems, (dataItem) => {\n\t\t\t\t\tconst d3SankeyNode = dataItem.get(\"d3SankeyNode\");\n\t\t\t\t\tthis._nodesData.push(d3SankeyNode);\n\n\t\t\t\t\tconst incoming = dataItem.get(\"incomingLinks\")\n\n\t\t\t\t\tlet sumIncoming = 0;\n\t\t\t\t\tlet sumIncomingWorking = 0;\n\t\t\t\t\tif (incoming) {\n\t\t\t\t\t\t$array.each(incoming, (link) => {\n\t\t\t\t\t\t\tconst value = link.get(\"value\");\n\t\t\t\t\t\t\tconst workingValue = link.get(\"valueWorking\");\n\t\t\t\t\t\t\tsumIncoming += value;\n\t\t\t\t\t\t\tsumIncomingWorking += workingValue;\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\n\t\t\t\t\tdataItem.set(\"sumIncoming\", sumIncoming);\n\t\t\t\t\tdataItem.set(\"sumIncomingWorking\", sumIncomingWorking);\n\n\t\t\t\t\tconst outgoing = dataItem.get(\"outgoingLinks\")\n\t\t\t\t\tlet sumOutgoing = 0;\n\t\t\t\t\tlet sumOutgoingWorking = 0;\n\t\t\t\t\tif (outgoing) {\n\t\t\t\t\t\t$array.each(outgoing, (link) => {\n\t\t\t\t\t\t\tconst value = link.get(\"value\");\n\t\t\t\t\t\t\tconst workingValue = link.get(\"valueWorking\");\n\t\t\t\t\t\t\tsumOutgoing += value;\n\t\t\t\t\t\t\tsumOutgoingWorking += workingValue;\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\n\t\t\t\t\tdataItem.set(\"sumOutgoing\", sumOutgoing);\n\t\t\t\t\tdataItem.set(\"sumOutgoingWorking\", sumOutgoingWorking);\n\n\t\t\t\t\tdataItem.set(\"sum\", sumIncoming + sumOutgoing);\n\t\t\t\t\tdataItem.set(\"sumWorking\", sumIncomingWorking + sumOutgoingWorking);\n\n\t\t\t\t\tnodes.updateLegendValue(dataItem);\n\t\t\t\t})\n\t\t\t}\n\t\t\tthis._linksData = [];\n\n\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\tlet value = dataItem.get(\"value\");\n\t\t\t\tif ($type.isNumber(value)) {\n\t\t\t\t\tif (value < valueLow) {\n\t\t\t\t\t\tvalueLow = value;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (value > valueHigh) {\n\t\t\t\t\t\tvalueHigh = value;\n\t\t\t\t\t}\n\t\t\t\t\tvalueSum += value;\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\tlet value = dataItem.get(\"value\");\n\t\t\t\tif ($type.isNumber(value)) {\n\t\t\t\t\tlet valueWorking = dataItem.get(\"valueWorking\");\n\t\t\t\t\tlet minSize = this.get(\"minSize\", 0);\n\t\t\t\t\tif (minSize > 0) {\n\t\t\t\t\t\tif (valueWorking < minSize * valueSum) {\n\t\t\t\t\t\t\tvalueWorking = minSize * valueSum;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tlet d3SankeyLink = { source: dataItem.get(\"source\").get(\"d3SankeyNode\"), target: dataItem.get(\"target\").get(\"d3SankeyNode\"), value: valueWorking };\n\t\t\t\t\tdataItem.setRaw(\"d3SankeyLink\", d3SankeyLink);\n\t\t\t\t\tthis._linksData.push(d3SankeyLink);\n\t\t\t\t\tthis.updateLegendValue(dataItem);\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tthis.setPrivateRaw(\"valueHigh\", valueHigh);\n\t\t\tthis.setPrivateRaw(\"valueLow\", valueLow);\n\t\t\tthis.setPrivateRaw(\"valueSum\", valueSum);\n\t\t}\n\t}\n\n\tpublic _updateLinkColor(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst link = dataItem.get(\"link\");\n\n\t\tconst fillStyle = link.get(\"fillStyle\");\n\t\tconst strokeStyle = link.get(\"strokeStyle\");\n\t\tconst source = dataItem.get(\"source\");\n\t\tconst target = dataItem.get(\"target\");\n\t\tconst sourceFill = source.get(\"fill\");\n\t\tconst targetFill = target.get(\"fill\");\n\t\tlink.remove(\"fillGradient\");\n\t\tlink.remove(\"strokeGradient\");\n\n\t\tswitch (fillStyle) {\n\n\t\t\tcase \"solid\":\n\t\t\t\tlink._applyTemplates();\n\t\t\t\tbreak;\n\t\t\tcase \"source\":\n\t\t\t\tlink.set(\"fill\", sourceFill);\n\t\t\t\tbreak;\n\n\t\t\tcase \"target\":\n\t\t\t\tlink.set(\"fill\", targetFill);\n\t\t\t\tbreak;\n\n\t\t\tcase \"gradient\":\n\t\t\t\tlet gradient = link._fillGradient;\n\t\t\t\tif (!gradient) {\n\t\t\t\t\tgradient = LinearGradient.new(this._root, {});\n\t\t\t\t\tconst sourceStop: any = { color: sourceFill }\n\t\t\t\t\tif (source.get(\"unknown\")) {\n\t\t\t\t\t\tsourceStop.opacity = 0;\n\t\t\t\t\t}\n\t\t\t\t\tconst targetStop: any = { color: targetFill };\n\t\t\t\t\tif (target.get(\"unknown\")) {\n\t\t\t\t\t\ttargetStop.opacity = 0;\n\t\t\t\t\t}\n\n\t\t\t\t\tgradient.set(\"stops\", [sourceStop, targetStop]);\n\t\t\t\t\tlink._fillGradient = gradient;\n\t\t\t\t}\n\t\t\t\tlink.set(\"fillGradient\", gradient);\n\t\t\t\tbreak;\n\t\t\tcase \"none\":\n\t\t\t\tlink.set(\"fill\", undefined); // do not use remove!\n\t\t\t\tbreak;\n\t\t}\n\n\t\tswitch (strokeStyle) {\n\t\t\tcase \"solid\":\n\t\t\t\tlink._applyTemplates();\n\t\t\t\tbreak;\n\n\t\t\tcase \"source\":\n\t\t\t\tlink.set(\"stroke\", sourceFill);\n\t\t\t\tbreak;\n\n\t\t\tcase \"target\":\n\t\t\t\tlink.set(\"stroke\", targetFill);\n\n\t\t\tcase \"gradient\":\n\t\t\t\tlet gradient = link._strokeGradient;\n\t\t\t\tif (!gradient) {\n\t\t\t\t\tgradient = LinearGradient.new(this._root, {});\n\t\t\t\t\tconst sourceStop: any = { color: sourceFill }\n\t\t\t\t\tif (source.get(\"unknown\")) {\n\t\t\t\t\t\tsourceStop.opacity = 0;\n\t\t\t\t\t}\n\t\t\t\t\tconst targetStop: any = { color: targetFill };\n\t\t\t\t\tif (target.get(\"unknown\")) {\n\t\t\t\t\t\ttargetStop.opacity = 0;\n\t\t\t\t\t}\n\n\t\t\t\t\tgradient.set(\"stops\", [sourceStop, targetStop]);\n\t\t\t\t\tlink._strokeGradient = gradient;\n\t\t\t\t}\n\t\t\t\tlink.set(\"strokeGradient\", gradient);\n\t\t\t\tbreak;\n\n\t\t\tcase \"none\":\n\t\t\t\tlink.remove(\"stroke\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tlet link = dataItem.get(\"link\");\n\t\tif (link) {\n\t\t\tthis.links.removeValue(link);\n\t\t\tlink.dispose();\n\t\t}\n\t}\n\n\t/**\n\t * Shows diagram's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\t\tconst hiddenState = this.states.create(\"hidden\", {})\n\n\t\tconst stateAnimationDuration = \"stateAnimationDuration\";\n\t\tconst stateAnimationEasing = \"stateAnimationEasing\";\n\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = hiddenState.get(stateAnimationDuration, this.get(stateAnimationDuration, 0));\n\t\t}\n\n\t\tconst easing = hiddenState.get(stateAnimationEasing, this.get(stateAnimationEasing));\n\n\t\tpromises.push(dataItem.animate({ key: \"valueWorking\" as any, to: 0, duration: duration, easing: easing }).waitForStop());\n\n\t\tconst linkGraphics = dataItem.get(\"link\");\n\t\tlinkGraphics.hide();\n\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * Shows diagram's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = this.get(\"stateAnimationDuration\", 0);\n\t\t}\n\n\t\tconst easing = this.get(\"stateAnimationEasing\");\n\n\t\tpromises.push(dataItem.animate({ key: \"valueWorking\" as any, to: dataItem.get(\"value\"), duration: duration, easing: easing }).waitForStop());\n\n\t\tconst linkGraphics = dataItem.get(\"link\");\n\t\tlinkGraphics.show();\n\n\t\tawait Promise.all(promises);\n\t}\n\n\tpublic _positionBullet(bullet: Bullet) {\n\t\tconst sprite = bullet.get(\"sprite\");\n\n\t\tif (sprite) {\n\t\t\tconst dataItem = sprite.dataItem as DataItem<this[\"_dataItemSettings\"]>;\n\t\t\tif (dataItem) {\n\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\n\t\t\t\tif (sprite) {\n\t\t\t\t\tconst point = link.getPoint(this._getBulletLocation(bullet));\n\t\t\t\t\tsprite.setAll({ x: point.x, y: point.y });\n\n\t\t\t\t\tif (bullet.get(\"autoRotate\")) {\n\t\t\t\t\t\tsprite.set(\"rotation\", point.angle + bullet.get(\"autoRotateAngle\", 0));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _getBulletLocation(bullet: Bullet): number {\n\t\treturn bullet.get(\"locationY\", 0);\n\t}\n}\n"]}
1
+ {"version":3,"file":"Flow.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/Flow.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { Color } from \"../../core/util/Color\";\nimport type { FlowLink } from \"./FlowLink\";\nimport type { FlowNodes, IFlowNodesDataItem } from \"./FlowNodes\";\nimport type { ListTemplate } from \"../../core/util/List\";\nimport type { Bullet } from \"../../core/render/Bullet\";\nimport type * as d3sankey from \"d3-sankey\";\n\nimport { FlowDefaultTheme } from \"./FlowDefaultTheme\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate, ISeriesEvents } from \"../../core/render/Series\";\nimport { Container } from \"../../core/render/Container\";\nimport { LinearGradient } from \"../../core/render/gradients/LinearGradient\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\n\nexport interface IFlowDataItem extends ISeriesDataItem {\n\n\t/**\n\t * Link value.\n\t */\n\tvalue: number;\n\n\t/**\n\t * @ignore\n\t */\n\tvalueWorking: number;\n\n\t/**\n\t * Associated link element.\n\t */\n\tlink: FlowLink;\n\n\t/**\n\t * Link's color.\n\t */\n\tfill: Color;\n\n\t/**\n\t * @ignore\n\t */\n\td3SankeyLink: d3sankey.SankeyLink<d3sankey.SankeyExtraProperties, d3sankey.SankeyExtraProperties>;\n\n\t/**\n\t * An ID of the target node.\n\t */\n\ttargetId: string;\n\n\t/**\n\t * An ID of the source node.\n\t */\n\tsourceId: string;\n\n\t/**\n\t * A data item of the source node.\n\t */\n\tsource: DataItem<IFlowNodesDataItem>;\n\n\t/**\n\t * A data item of the target node.\n\t */\n\ttarget: DataItem<IFlowNodesDataItem>;\n\n}\n\nexport interface IFlowSettings extends ISeriesSettings {\n\n\t/**\n\t * A field in data which holds source node ID.\n\t */\n\tsourceIdField?: string;\n\n\t/**\n\t * A field in data which holds target node ID.\n\t */\n\ttargetIdField?: string;\n\n\t/**\n\t * The thickness of node strip in pixels.\n\t *\n\t * @default 10\n\t */\n\tnodeWidth?: number;\n\n\t/**\n\t * Minimum gap between adjacent nodes.\n\t *\n\t * @default 10\n\t */\n\tnodePadding?: number;\n\n\t/**\n\t * Minimum size of the link.\n\t * \n\t * It's a relative value to the sum of all values in the series. If set,\n\t * this relative value will be used for small value nodes when calculating\n\t * their size. For example, if it's set to `0.01`, small nodes will be\n\t * sized like their value is 1% of the total sum of all values in series.\n\t * \n\t * @default 0\n\t * @since 5.1.5\n\t */\n\tminSize?: number;\n\n\t/**\n\t * Relative size of hidden links.\n\t * \n\t * Links are hidden when user clicks on nodes (if `toggleKey` on nodes is set\n\t * to `\"disabled\"`).\n\t * \n\t * This allows hidden node to remain visible so that user could click on it\n\t * again to show it and its links.\n\t * \n\t * @default 0.05\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/#Node_toggling} for more info\n\t * @since 5.4.1\n\t */\n\thiddenSize?: number;\n\n\t/**\n\t * Minimum value of hidden links.\n\t * \n\t * Links are hidden when user clicks on nodes (if `toggleKey` on nodes is set\n\t * to `\"disabled\"`).\n\t * \n\t * @default 0\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/#Node_toggling} for more info\n\t * @since 5.4.1\n\t */\n\tminHiddenValue?: number;\n}\n\nexport interface IFlowPrivate extends ISeriesPrivate {\n\tvalueSum?: number;\n\tvalueLow?: number;\n\tvalueHigh?: number;\n}\n\nexport interface IFlowEvents extends ISeriesEvents {\n}\n\n/**\n * A base class for all flow type series: [[Sankey]] and [[Chord]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/} for more info\n */\nexport abstract class Flow extends Series {\n\tpublic static className: string = \"Flow\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([Flow.className]);\n\n\tdeclare public _settings: IFlowSettings;\n\tdeclare public _privateSettings: IFlowPrivate;\n\tdeclare public _dataItemSettings: IFlowDataItem;\n\tdeclare public _events: IFlowEvents;\n\n\t/**\n\t * @ignore\n\t */\n\tdeclare public readonly nodes: FlowNodes;\n\n\t/**\n\t * Container series will place their links in.\n\t *\n\t * @default Container.new()\n\t */\n\tpublic readonly linksContainer = this.children.push(Container.new(this._root, {}));\n\n\t/**\n\t * @ignore\n\t */\n\tpublic abstract readonly links: ListTemplate<FlowLink>;\n\n\tprotected _nodesData: d3sankey.SankeyNodeMinimal<{}, {}>[] = [];\n\tprotected _linksData: { source: d3sankey.SankeyNodeMinimal<{}, {}>, target: d3sankey.SankeyNodeMinimal<{}, {}>, value: number }[] = [];\n\tprotected _index = 0;\n\tprotected _nodesDataSet: boolean = false;\n\n\tprotected _linksByIndex: { [index: string]: any } = {};\n\tprotected _afterNew() {\n\t\tthis._defaultThemes.push(FlowDefaultTheme.new(this._root));\n\n\t\tthis.fields.push(\"disabled\", \"sourceId\", \"targetId\");\n\n\t\tif (this.nodes) {\n\t\t\tthis.nodes.flow = this;\n\t\t}\n\n\t\tsuper._afterNew();\n\n\t\tthis.children.push(this.bulletsContainer);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic abstract makeLink(dataItem: DataItem<this[\"_dataItemSettings\"]>): FlowLink;\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst nodes = this.nodes;\n\t\tif (nodes) {\n\t\t\tlet unknown = false;\n\t\t\tlet sourceId = dataItem.get(\"sourceId\");\n\t\t\tlet sourceDataItem = nodes.getDataItemById(sourceId);\n\n\t\t\tif (!sourceDataItem) {\n\t\t\t\tif (sourceId == null) {\n\t\t\t\t\tsourceId = \"undefined\" + this._index;\n\t\t\t\t\tthis._index++;\n\t\t\t\t\tunknown = true;\n\t\t\t\t}\n\t\t\t\tnodes.data.push({ id: sourceId, unknown: unknown });\n\t\t\t\tsourceDataItem = nodes.getDataItemById(sourceId)!;\n\t\t\t\tif (!unknown) {\n\t\t\t\t\tsourceDataItem.set(\"name\", sourceId);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tunknown = false;\n\t\t\tlet targetId = dataItem.get(\"targetId\");\n\n\t\t\tlet targetDataItem = nodes.getDataItemById(targetId);\n\t\t\tif (!targetDataItem) {\n\t\t\t\tif (targetId == null) {\n\t\t\t\t\ttargetId = \"undefined\" + this._index;\n\t\t\t\t\tthis._index++;\n\t\t\t\t\tunknown = true;\n\t\t\t\t}\n\n\t\t\t\tnodes.data.push({ id: targetId, unknown: unknown });\n\t\t\t\ttargetDataItem = nodes.getDataItemById(targetId)!;\n\t\t\t\tif (!unknown) {\n\t\t\t\t\ttargetDataItem.set(\"name\", targetId);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (sourceDataItem) {\n\t\t\t\tdataItem.set(\"source\", sourceDataItem);\n\t\t\t\tnodes.addOutgoingLink(sourceDataItem, dataItem);\n\t\t\t}\n\n\t\t\tif (targetDataItem) {\n\t\t\t\tdataItem.set(\"target\", targetDataItem);\n\t\t\t\tnodes.addincomingLink(targetDataItem, dataItem);\n\t\t\t}\n\n\t\t\tdataItem.set(\"link\", this.makeLink(dataItem));\n\n\t\t\tconst sourceIndex = this.nodes.dataItems.indexOf(sourceDataItem);\n\t\t\tconst targetIndex = this.nodes.dataItems.indexOf(targetDataItem);\n\n\t\t\tthis._linksByIndex[sourceIndex + \"_\" + targetIndex] = dataItem;\n\n\t\t\tif (sourceDataItem.get(\"unknown\")) {\n\t\t\t\tif (targetDataItem) {\n\t\t\t\t\tsourceDataItem.set(\"fill\", targetDataItem.get(\"fill\"));\n\t\t\t\t}\n\n\t\t\t\tdataItem.get(\"link\").set(\"fillStyle\", \"gradient\");\n\t\t\t}\n\n\n\t\t\tif (targetDataItem.get(\"unknown\")) {\n\t\t\t\tif (sourceDataItem) {\n\t\t\t\t\ttargetDataItem.set(\"fill\", sourceDataItem.get(\"fill\"));\n\t\t\t\t}\n\n\t\t\t\tdataItem.get(\"link\").set(\"fillStyle\", \"gradient\");\n\t\t\t}\n\n\t\t\tthis._updateLinkColor(dataItem);\n\t\t}\n\t}\n\n\tprotected _onDataClear() {\n\t\tif (!this.nodes._userDataSet) {\n\t\t\tthis.nodes.data.setAll([]);\n\t\t\tthis.nodes._userDataSet = false;\n\t\t}\n\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tlet valueLow = Infinity;\n\t\tlet valueHigh = -Infinity;\n\t\tlet valueSum = 0;\n\n\t\tif (this._valuesDirty) {\n\t\t\tthis._nodesData = [];\n\t\t\tconst nodes = this.nodes;\n\t\t\tif (nodes) {\n\t\t\t\t$array.each(nodes.dataItems, (dataItem) => {\n\t\t\t\t\tconst d3SankeyNode = dataItem.get(\"d3SankeyNode\");\n\t\t\t\t\tthis._nodesData.push(d3SankeyNode);\n\n\t\t\t\t\tconst incoming = dataItem.get(\"incomingLinks\")\n\n\t\t\t\t\tlet sumIncoming = 0;\n\t\t\t\t\tlet sumIncomingWorking = 0;\n\t\t\t\t\tif (incoming) {\n\t\t\t\t\t\t$array.each(incoming, (link) => {\n\t\t\t\t\t\t\tconst value = link.get(\"value\");\n\t\t\t\t\t\t\tconst workingValue = link.get(\"valueWorking\");\n\t\t\t\t\t\t\tsumIncoming += value;\n\t\t\t\t\t\t\tsumIncomingWorking += workingValue;\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\n\t\t\t\t\tdataItem.set(\"sumIncoming\", sumIncoming);\n\t\t\t\t\tdataItem.set(\"sumIncomingWorking\", sumIncomingWorking);\n\n\t\t\t\t\tconst outgoing = dataItem.get(\"outgoingLinks\")\n\t\t\t\t\tlet sumOutgoing = 0;\n\t\t\t\t\tlet sumOutgoingWorking = 0;\n\t\t\t\t\tif (outgoing) {\n\t\t\t\t\t\t$array.each(outgoing, (link) => {\n\t\t\t\t\t\t\tconst value = link.get(\"value\");\n\t\t\t\t\t\t\tconst workingValue = link.get(\"valueWorking\");\n\t\t\t\t\t\t\tsumOutgoing += value;\n\t\t\t\t\t\t\tsumOutgoingWorking += workingValue;\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\n\t\t\t\t\tdataItem.set(\"sumOutgoing\", sumOutgoing);\n\t\t\t\t\tdataItem.set(\"sumOutgoingWorking\", sumOutgoingWorking);\n\n\t\t\t\t\tdataItem.set(\"sum\", sumIncoming + sumOutgoing);\n\t\t\t\t\tdataItem.set(\"sumWorking\", sumIncomingWorking + sumOutgoingWorking);\n\n\t\t\t\t\tnodes.updateLegendValue(dataItem);\n\t\t\t\t})\n\t\t\t}\n\t\t\tthis._linksData = [];\n\n\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\tlet value = dataItem.get(\"value\");\n\t\t\t\tif ($type.isNumber(value)) {\n\t\t\t\t\tif (value < valueLow) {\n\t\t\t\t\t\tvalueLow = value;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (value > valueHigh) {\n\t\t\t\t\t\tvalueHigh = value;\n\t\t\t\t\t}\n\t\t\t\t\tvalueSum += value;\n\t\t\t\t}\n\t\t\t})\n\n\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\tlet value = dataItem.get(\"value\");\n\t\t\t\tif ($type.isNumber(value)) {\n\t\t\t\t\tlet valueWorking = dataItem.get(\"valueWorking\");\n\t\t\t\t\tlet minSize = this.get(\"minSize\", 0);\n\t\t\t\t\tif (minSize > 0) {\n\t\t\t\t\t\tif (valueWorking < minSize * valueSum) {\n\t\t\t\t\t\t\tvalueWorking = minSize * valueSum;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tlet d3SankeyLink = { source: dataItem.get(\"source\").get(\"d3SankeyNode\"), target: dataItem.get(\"target\").get(\"d3SankeyNode\"), value: valueWorking };\n\t\t\t\t\tdataItem.setRaw(\"d3SankeyLink\", d3SankeyLink);\n\t\t\t\t\tthis._linksData.push(d3SankeyLink);\n\t\t\t\t\tthis.updateLegendValue(dataItem);\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tthis.setPrivateRaw(\"valueHigh\", valueHigh);\n\t\t\tthis.setPrivateRaw(\"valueLow\", valueLow);\n\t\t\tthis.setPrivateRaw(\"valueSum\", valueSum);\n\t\t}\n\t}\n\n\tpublic _updateLinkColor(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst link = dataItem.get(\"link\");\n\n\t\tconst fillStyle = link.get(\"fillStyle\");\n\t\tconst strokeStyle = link.get(\"strokeStyle\");\n\t\tconst source = dataItem.get(\"source\");\n\t\tconst target = dataItem.get(\"target\");\n\t\tconst sourceFill = source.get(\"fill\");\n\t\tconst targetFill = target.get(\"fill\");\n\t\tlink.remove(\"fillGradient\");\n\t\tlink.remove(\"strokeGradient\");\n\n\t\tswitch (fillStyle) {\n\n\t\t\tcase \"solid\":\n\t\t\t\tlink._applyTemplates();\n\t\t\t\tbreak;\n\t\t\tcase \"source\":\n\t\t\t\tlink.set(\"fill\", sourceFill);\n\t\t\t\tbreak;\n\n\t\t\tcase \"target\":\n\t\t\t\tlink.set(\"fill\", targetFill);\n\t\t\t\tbreak;\n\n\t\t\tcase \"gradient\":\n\t\t\t\tlet gradient = link._fillGradient;\n\t\t\t\tif (!gradient) {\n\t\t\t\t\tgradient = LinearGradient.new(this._root, {});\n\t\t\t\t\tconst sourceStop: any = { color: sourceFill }\n\t\t\t\t\tif (source.get(\"unknown\")) {\n\t\t\t\t\t\tsourceStop.opacity = 0;\n\t\t\t\t\t}\n\t\t\t\t\tconst targetStop: any = { color: targetFill };\n\t\t\t\t\tif (target.get(\"unknown\")) {\n\t\t\t\t\t\ttargetStop.opacity = 0;\n\t\t\t\t\t}\n\n\t\t\t\t\tgradient.set(\"stops\", [sourceStop, targetStop]);\n\t\t\t\t\tlink._fillGradient = gradient;\n\t\t\t\t}\n\t\t\t\tlink.set(\"fillGradient\", gradient);\n\t\t\t\tbreak;\n\t\t\tcase \"none\":\n\t\t\t\tlink.set(\"fill\", undefined); // do not use remove!\n\t\t\t\tbreak;\n\t\t}\n\n\t\tswitch (strokeStyle) {\n\t\t\tcase \"solid\":\n\t\t\t\tlink._applyTemplates();\n\t\t\t\tbreak;\n\n\t\t\tcase \"source\":\n\t\t\t\tlink.set(\"stroke\", sourceFill);\n\t\t\t\tbreak;\n\n\t\t\tcase \"target\":\n\t\t\t\tlink.set(\"stroke\", targetFill);\n\t\t\t\tbreak;\n\t\t\tcase \"gradient\":\n\t\t\t\tlet gradient = link._strokeGradient;\n\t\t\t\tif (!gradient) {\n\t\t\t\t\tgradient = LinearGradient.new(this._root, {});\n\t\t\t\t\tconst sourceStop: any = { color: sourceFill }\n\t\t\t\t\tif (source.get(\"unknown\")) {\n\t\t\t\t\t\tsourceStop.opacity = 0;\n\t\t\t\t\t}\n\t\t\t\t\tconst targetStop: any = { color: targetFill };\n\t\t\t\t\tif (target.get(\"unknown\")) {\n\t\t\t\t\t\ttargetStop.opacity = 0;\n\t\t\t\t\t}\n\n\t\t\t\t\tgradient.set(\"stops\", [sourceStop, targetStop]);\n\t\t\t\t\tlink._strokeGradient = gradient;\n\t\t\t\t}\n\t\t\t\tlink.set(\"strokeGradient\", gradient);\n\t\t\t\tbreak;\n\n\t\t\tcase \"none\":\n\t\t\t\tlink.remove(\"stroke\");\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tlet link = dataItem.get(\"link\");\n\t\tif (link) {\n\t\t\tthis.links.removeValue(link);\n\t\t\tlink.dispose();\n\t\t}\n\t}\n\n\t/**\n\t * Shows diagram's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\t\tconst hiddenState = this.states.create(\"hidden\", {})\n\n\t\tconst stateAnimationDuration = \"stateAnimationDuration\";\n\t\tconst stateAnimationEasing = \"stateAnimationEasing\";\n\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = hiddenState.get(stateAnimationDuration, this.get(stateAnimationDuration, 0));\n\t\t}\n\n\t\tconst easing = hiddenState.get(stateAnimationEasing, this.get(stateAnimationEasing));\n\n\t\tpromises.push(dataItem.animate({\n\t\t\tkey: \"valueWorking\" as any,\n\t\t\tto: Math.max(this.get(\"minHiddenValue\", 0), this.get(\"hiddenSize\", 0) * dataItem.get(\"value\")),\n\t\t\tduration: duration,\n\t\t\teasing: easing\n\t\t}).waitForStop());\n\n\t\tconst linkGraphics = dataItem.get(\"link\");\n\t\tlinkGraphics.hide();\n\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * Shows diagram's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = this.get(\"stateAnimationDuration\", 0);\n\t\t}\n\n\t\tconst easing = this.get(\"stateAnimationEasing\");\n\n\t\tpromises.push(dataItem.animate({ key: \"valueWorking\" as any, to: dataItem.get(\"value\"), duration: duration, easing: easing }).waitForStop());\n\n\t\tconst linkGraphics = dataItem.get(\"link\");\n\t\tlinkGraphics.show();\n\n\t\tawait Promise.all(promises);\n\t}\n\n\tpublic _positionBullet(bullet: Bullet) {\n\t\tconst sprite = bullet.get(\"sprite\");\n\n\t\tif (sprite) {\n\t\t\tconst dataItem = sprite.dataItem as DataItem<this[\"_dataItemSettings\"]>;\n\t\t\tif (dataItem) {\n\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\n\t\t\t\tif (sprite) {\n\t\t\t\t\tconst point = link.getPoint(this._getBulletLocation(bullet));\n\t\t\t\t\tsprite.setAll({ x: point.x, y: point.y });\n\n\t\t\t\t\tif (bullet.get(\"autoRotate\")) {\n\t\t\t\t\t\tsprite.set(\"rotation\", point.angle + bullet.get(\"autoRotateAngle\", 0));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _getBulletLocation(bullet: Bullet): number {\n\t\treturn bullet.get(\"locationY\", 0);\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"FlowDefaultTheme.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/FlowDefaultTheme.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAQzC;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;IAC1C,SAAS,CAAC,iBAAiB;CAgP3B"}
1
+ {"version":3,"file":"FlowDefaultTheme.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/FlowDefaultTheme.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AASzC;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;IAC1C,SAAS,CAAC,iBAAiB;CAwU3B"}
@@ -3,6 +3,7 @@ import { percent, p100, p50 } from "../../core/util/Percent";
3
3
  import { ColorSet } from "../../core/util/ColorSet";
4
4
  import { setColor } from "../../themes/DefaultTheme";
5
5
  import * as $array from "../../core/util/Array";
6
+ import * as $ease from "../../core/util/Ease";
6
7
  /**
7
8
  * @ignore
8
9
  */
@@ -22,18 +23,29 @@ export class FlowDefaultTheme extends Theme {
22
23
  paddingLeft: 10,
23
24
  paddingRight: 10,
24
25
  paddingTop: 10,
25
- paddingBottom: 10
26
+ paddingBottom: 10,
27
+ hiddenSize: 0.05,
28
+ minSize: 0,
29
+ minHiddenValue: 0
26
30
  });
27
31
  r("FlowNodes").setAll({
28
32
  colors: ColorSet.new(this._root, {}),
29
33
  legendLabelText: "{name}",
30
34
  legendValueText: "{sumOutgoing.formatNumber('#.#')}"
31
35
  });
32
- r("FlowNode").setAll({});
36
+ r("FlowNode").setAll({
37
+ setStateOnChildren: true,
38
+ cursorOverStyle: "pointer",
39
+ toggleKey: "disabled"
40
+ });
41
+ r("FlowNode").states.create("disabled", {}); // do not remove
33
42
  r("FlowNode", ["unknown"]).setAll({
34
43
  draggable: false,
35
44
  opacity: 0
36
45
  });
46
+ r("Label", ["flow"]).states.create("disabled", {
47
+ fill: ic.get("disabled")
48
+ });
37
49
  r("RadialLabel", ["flow", "node"]).setAll({
38
50
  text: "{name}",
39
51
  populateText: true
@@ -105,6 +117,9 @@ export class FlowDefaultTheme extends Theme {
105
117
  cornerRadiusTR: 0,
106
118
  cornerRadiusBR: 0
107
119
  });
120
+ r("RoundedRectangle", ["shape"]).states.create("disabled", {
121
+ fill: ic.get("disabled")
122
+ });
108
123
  r("SankeyLink").setAll({
109
124
  controlPointDistance: 0.2
110
125
  });
@@ -146,7 +161,7 @@ export class FlowDefaultTheme extends Theme {
146
161
  nodeWidth: 10,
147
162
  padAngle: 1,
148
163
  startAngle: 0,
149
- sort: "descending"
164
+ sort: "none"
150
165
  });
151
166
  r("ChordDirected").setAll({
152
167
  linkHeadRadius: 10
@@ -168,6 +183,9 @@ export class FlowDefaultTheme extends Theme {
168
183
  r("Slice", ["chord", "node", "shape"]).setAll({
169
184
  cornerRadius: 0
170
185
  });
186
+ r("Slice", ["shape"]).states.create("disabled", {
187
+ fill: ic.get("disabled")
188
+ });
171
189
  r("RadialLabel", ["chord", "node"]).setAll({
172
190
  radius: 5,
173
191
  textType: "circular"
@@ -198,6 +216,59 @@ export class FlowDefaultTheme extends Theme {
198
216
  strokeOpacity: 0.4
199
217
  });
200
218
  r("Graphics", ["chord", "link", "shape", "basic"]).states.create("hover", { strokeWidth: 2, strokeOpacity: 1 });
219
+ /**
220
+ * ------------------------------------------------------------------------
221
+ * charts/flow: ArcDiagram
222
+ * ------------------------------------------------------------------------
223
+ */
224
+ r("ArcDiagram").setAll({
225
+ orientation: "horizontal",
226
+ nodePadding: 5,
227
+ minRadius: 5,
228
+ radiusKey: "sum",
229
+ animationEasing: $ease.out($ease.cubic)
230
+ });
231
+ r("ArcDiagramNodes", ["horizontal"]).setAll({
232
+ y: p100,
233
+ centerY: p100
234
+ });
235
+ r("ArcDiagramNodes", ["vertical"]).setAll({
236
+ centerX: 0
237
+ });
238
+ r("Circle", ["arcdiagram", "node", "shape"]).setAll({
239
+ tooltipText: "{name}: {sum}"
240
+ });
241
+ r("Circle", ["arcdiagram", "node", "shape"]).states.create("disabled", {
242
+ fill: ic.get("disabled")
243
+ });
244
+ {
245
+ const rule = r("ArcDiagramLink", ["link", "shape"]);
246
+ rule.setAll({
247
+ strokeOpacity: 0.15,
248
+ strokeStyle: "solid",
249
+ fillStyle: "none",
250
+ isMeasured: false
251
+ });
252
+ setColor(rule, "stroke", ic, "grid");
253
+ }
254
+ r("ArcDiagramLink", ["link", "shape"]).states.create("hover", {
255
+ strokeOpacity: 1
256
+ });
257
+ r("Label", ["arcdiagram", "node"]).setAll({
258
+ text: "{name}",
259
+ populateText: true
260
+ });
261
+ r("Label", ["arcdiagram", "horizontal"]).setAll({
262
+ y: 0,
263
+ centerY: p50,
264
+ centerX: p100,
265
+ rotation: -90
266
+ });
267
+ r("Label", ["arcdiagram", "vertical"]).setAll({
268
+ centerY: p50,
269
+ centerX: p100,
270
+ paddingRight: 15
271
+ });
201
272
  }
202
273
  }
203
274
  //# sourceMappingURL=FlowDefaultTheme.js.map