@amcharts/amcharts5 5.0.0-beta.21 → 5.0.0-beta.22

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 (148) hide show
  1. package/.internal/charts/flow/ChordNodes.d.ts.map +1 -1
  2. package/.internal/charts/flow/ChordNodes.js +3 -1
  3. package/.internal/charts/flow/ChordNodes.js.map +1 -1
  4. package/.internal/charts/flow/FlowNodes.d.ts +19 -1
  5. package/.internal/charts/flow/FlowNodes.d.ts.map +1 -1
  6. package/.internal/charts/flow/FlowNodes.js +21 -9
  7. package/.internal/charts/flow/FlowNodes.js.map +1 -1
  8. package/.internal/charts/flow/SankeyNodes.d.ts.map +1 -1
  9. package/.internal/charts/flow/SankeyNodes.js +3 -3
  10. package/.internal/charts/flow/SankeyNodes.js.map +1 -1
  11. package/.internal/charts/funnel/FunnelSeries.d.ts.map +1 -1
  12. package/.internal/charts/funnel/FunnelSeries.js +1 -3
  13. package/.internal/charts/funnel/FunnelSeries.js.map +1 -1
  14. package/.internal/charts/hierarchy/Hierarchy.d.ts +6 -0
  15. package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
  16. package/.internal/charts/hierarchy/Hierarchy.js +15 -3
  17. package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
  18. package/.internal/charts/percent/PercentSeries.d.ts +29 -0
  19. package/.internal/charts/percent/PercentSeries.d.ts.map +1 -1
  20. package/.internal/charts/percent/PercentSeries.js +31 -5
  21. package/.internal/charts/percent/PercentSeries.js.map +1 -1
  22. package/.internal/charts/pie/PieSeries.d.ts.map +1 -1
  23. package/.internal/charts/pie/PieSeries.js +1 -3
  24. package/.internal/charts/pie/PieSeries.js.map +1 -1
  25. package/.internal/charts/xy/series/XYSeries.d.ts +1 -1
  26. package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
  27. package/.internal/charts/xy/series/XYSeries.js +37 -42
  28. package/.internal/charts/xy/series/XYSeries.js.map +1 -1
  29. package/.internal/core/render/Component.d.ts +2 -4
  30. package/.internal/core/render/Component.d.ts.map +1 -1
  31. package/.internal/core/render/Component.js +26 -73
  32. package/.internal/core/render/Component.js.map +1 -1
  33. package/.internal/core/render/Tooltip.d.ts.map +1 -1
  34. package/.internal/core/render/Tooltip.js +2 -20
  35. package/.internal/core/render/Tooltip.js.map +1 -1
  36. package/.internal/core/render/backend/CanvasRenderer.d.ts.map +1 -1
  37. package/.internal/core/render/backend/CanvasRenderer.js +4 -0
  38. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  39. package/CHANGELOG.md +16 -1
  40. package/examples/javascript/flow-chord/package.json +1 -1
  41. package/examples/javascript/flow-chord-directed/package.json +1 -1
  42. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  43. package/examples/javascript/flow-sankey/package.json +1 -1
  44. package/examples/javascript/gauge/package.json +1 -1
  45. package/examples/javascript/gauge-bands/package.json +1 -1
  46. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  47. package/examples/javascript/hierarchy-pack/package.json +1 -1
  48. package/examples/javascript/hierarchy-partition/package.json +1 -1
  49. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  50. package/examples/javascript/hierarchy-tree/package.json +1 -1
  51. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  52. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  53. package/examples/javascript/map-day-and-night/package.json +1 -1
  54. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  55. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  56. package/examples/javascript/map-with-bubbles/package.json +1 -1
  57. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  58. package/examples/javascript/misc-40-charts/package.json +1 -1
  59. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  60. package/examples/javascript/pie-chart/package.json +1 -1
  61. package/examples/javascript/pie-donut-chart/package.json +1 -1
  62. package/examples/javascript/pie-variable-radius/package.json +1 -1
  63. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  64. package/examples/javascript/radar-heat-map/package.json +1 -1
  65. package/examples/javascript/radar-line/package.json +1 -1
  66. package/examples/javascript/radar-time-line/package.json +1 -1
  67. package/examples/javascript/sliced-funnel/package.json +1 -1
  68. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  69. package/examples/javascript/sliced-pyramid/package.json +1 -1
  70. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  71. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  72. package/examples/javascript/xy-bubble/package.json +1 -1
  73. package/examples/javascript/xy-candlestick/package.json +1 -1
  74. package/examples/javascript/xy-clustered-column/package.json +1 -1
  75. package/examples/javascript/xy-column/package.json +1 -1
  76. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  77. package/examples/javascript/xy-data-grouping/package.json +1 -1
  78. package/examples/javascript/xy-draggable-range/package.json +1 -1
  79. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  80. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  81. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  82. package/examples/javascript/xy-line/package.json +1 -1
  83. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  84. package/examples/javascript/xy-live-data/package.json +1 -1
  85. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  86. package/examples/javascript/xy-ohlc/package.json +1 -1
  87. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  88. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  89. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  90. package/examples/javascript/xy-stacked-column/package.json +1 -1
  91. package/examples/javascript/xy-stacked-step/package.json +1 -1
  92. package/examples/javascript/xy-stock/package.json +1 -1
  93. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  94. package/examples/typescript/flow-chord/package.json +1 -1
  95. package/examples/typescript/flow-chord-directed/package.json +1 -1
  96. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  97. package/examples/typescript/flow-sankey/package.json +1 -1
  98. package/examples/typescript/gauge/package.json +1 -1
  99. package/examples/typescript/gauge-bands/package.json +1 -1
  100. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  101. package/examples/typescript/hierarchy-pack/package.json +1 -1
  102. package/examples/typescript/hierarchy-partition/package.json +1 -1
  103. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  104. package/examples/typescript/hierarchy-tree/package.json +1 -1
  105. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  106. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  107. package/examples/typescript/map-day-and-night/package.json +1 -1
  108. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  109. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  110. package/examples/typescript/map-with-bubbles/package.json +1 -1
  111. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  112. package/examples/typescript/misc-40-charts/package.json +1 -1
  113. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  114. package/examples/typescript/pie-chart/package.json +1 -1
  115. package/examples/typescript/pie-donut-chart/package.json +1 -1
  116. package/examples/typescript/pie-variable-radius/package.json +1 -1
  117. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  118. package/examples/typescript/radar-heat-map/package.json +1 -1
  119. package/examples/typescript/radar-line/package.json +1 -1
  120. package/examples/typescript/radar-time-line/package.json +1 -1
  121. package/examples/typescript/sliced-funnel/package.json +1 -1
  122. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  123. package/examples/typescript/sliced-pyramid/package.json +1 -1
  124. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  125. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  126. package/examples/typescript/xy-bubble/package.json +1 -1
  127. package/examples/typescript/xy-candlestick/package.json +1 -1
  128. package/examples/typescript/xy-clustered-column/package.json +1 -1
  129. package/examples/typescript/xy-column/package.json +1 -1
  130. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  131. package/examples/typescript/xy-data-grouping/package.json +1 -1
  132. package/examples/typescript/xy-draggable-range/package.json +1 -1
  133. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  134. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  135. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  136. package/examples/typescript/xy-line/package.json +1 -1
  137. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  138. package/examples/typescript/xy-live-data/package.json +1 -1
  139. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  140. package/examples/typescript/xy-ohlc/package.json +1 -1
  141. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  142. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  143. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  144. package/examples/typescript/xy-stacked-column/package.json +1 -1
  145. package/examples/typescript/xy-stacked-step/package.json +1 -1
  146. package/examples/typescript/xy-stock/package.json +1 -1
  147. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  148. package/package.json +1 -1
@@ -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,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,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;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,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;IACF;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,UAAU;IAM9F,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;IAoCjE,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,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,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;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,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;IACF;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,UAAU;IAM9F,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;IAuCjE,eAAe,CAAC,MAAM,EAAE,MAAM;CAqBrC"}
@@ -82,7 +82,7 @@ var ChordNodes = /** @class */ (function (_super) {
82
82
  var node = _super.prototype.makeNode.call(this, dataItem, "chord");
83
83
  var slice = node.children.insertIndex(0, this.rectangles.make());
84
84
  dataItem.set("slice", slice);
85
- slice.set("fill", dataItem.get("fill"));
85
+ slice._setSoft("fill", dataItem.get("fill"));
86
86
  var label = this.labels.make();
87
87
  label.addTag("flow");
88
88
  label.addTag("chord");
@@ -104,6 +104,8 @@ var ChordNodes = /** @class */ (function (_super) {
104
104
  _this.flow.set("startAngle", angle + _this._dAngle);
105
105
  }
106
106
  });
107
+ label._setDataItem(dataItem);
108
+ slice._setDataItem(dataItem);
107
109
  return node;
108
110
  }
109
111
  });
@@ -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 { Root } from \"../../core/Root\";\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\t/**\n\t * Use this method to create an instance of this class.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/getting-started/#New_element_syntax} for more info\n\t * @param root Root element\n\t * @param settings Settings\n\t * @param template Template\n\t * @return Instantiated object\n\t */\n\tpublic static new(root: Root, settings: ChordNodes[\"_settings\"], template?: Template<ChordNodes>): ChordNodes {\n\t\tconst x = new ChordNodes(root, settings, true, template);\n\t\tx._afterNew();\n\t\treturn x;\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.set(\"fill\", dataItem.get(\"fill\"));\n\n\t\tconst label = this.labels.make();\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\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 { Root } from \"../../core/Root\";\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\t/**\n\t * Use this method to create an instance of this class.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/getting-started/#New_element_syntax} for more info\n\t * @param root Root element\n\t * @param settings Settings\n\t * @param template Template\n\t * @return Instantiated object\n\t */\n\tpublic static new(root: Root, settings: ChordNodes[\"_settings\"], template?: Template<ChordNodes>): ChordNodes {\n\t\tconst x = new ChordNodes(root, settings, true, template);\n\t\tx._afterNew();\n\t\treturn x;\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\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"]}
@@ -7,7 +7,7 @@ import { Label } from "../../core/render/Label";
7
7
  import { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate, ISeriesEvents } from "../../core/render/Series";
8
8
  import { ListTemplate } from "../../core/util/List";
9
9
  import { FlowNode } from "./FlowNode";
10
- import { ColorSet } from "../../core/util/ColorSet";
10
+ import type { ColorSet } from "../../core/util/ColorSet";
11
11
  export interface IFlowNodesDataItem extends ISeriesDataItem {
12
12
  /**
13
13
  * Node name.
@@ -71,7 +71,24 @@ export interface IFlowNodesDataItem extends ISeriesDataItem {
71
71
  depth: number;
72
72
  }
73
73
  export interface IFlowNodesSettings extends ISeriesSettings {
74
+ /**
75
+ * A field in data boolean setting if the node is "unknown".
76
+ *
77
+ * @default "unknown"
78
+ */
74
79
  unknownField?: string;
80
+ /**
81
+ * A field in data that holds name for the node.
82
+ *
83
+ * @default "id"
84
+ */
85
+ nameField?: string;
86
+ /**
87
+ * A field in data that holds color used for fills nodes.
88
+ *
89
+ * @default "fill"
90
+ */
91
+ fillField?: string;
75
92
  /**
76
93
  * A [[ColorSet]] that series will use to apply to its nodes.
77
94
  */
@@ -110,6 +127,7 @@ export declare abstract class FlowNodes extends Series {
110
127
  */
111
128
  abstract flow: Flow | undefined;
112
129
  protected _afterNew(): void;
130
+ protected _onDataClear(): void;
113
131
  protected processDataItem(dataItem: DataItem<this["_dataItemSettings"]>): void;
114
132
  /**
115
133
  * @ignore
@@ -1 +1 @@
1
- {"version":3,"file":"FlowNodes.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/FlowNodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,KAAK,KAAK,QAAQ,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEnH,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAIpD,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IAE1D;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,IAAI,EAAE,QAAQ,CAAC;IAEf;;OAEG;IACH,KAAK,EAAE,KAAK,CAAC;IAEb;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;IAEZ;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;OAEG;IACH,YAAY,EAAE,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,qBAAqB,EAAE,QAAQ,CAAC,qBAAqB,CAAC,CAAC;IAElG;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;IAE9C;;OAEG;IACH,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;IAE9C;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CAEd;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc;CACxD;AAED,MAAM,WAAW,gBAAiB,SAAQ,aAAa;CACtD;AAGD;;GAEG;AACH,8BAAsB,SAAU,SAAQ,MAAM;IAC7C,OAAc,SAAS,EAAE,MAAM,CAAe;IAC9C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAmD;IAE3E,SAAS,EAAE,kBAAkB,CAAC;IAC9B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,iBAAiB,EAAE,kBAAkB,CAAC;IACtC,OAAO,EAAE,gBAAgB,CAAC;IAEzC;;;;OAIG;IACH,SAAgB,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAGzC;IAEF;;;;OAIG;IACH,SAAgB,KAAK,EAAE,YAAY,CAAC,QAAQ,CAAC,CAG3C;IAEF;;OAEG;IACH,SAAgB,IAAI,EAAE,IAAI,GAAG,SAAS,CAAC;IAEvC,SAAS,CAAC,SAAS;IAanB,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAavE;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ;IAqB3F;;OAEG;IACI,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAcpE;;OAEG;IACI,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC;IASnG;;OAEG;IACI,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC;IASnG;;;;;;OAMG;IACU,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B1G;;;;;;OAMG;IACU,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA+B1G"}
1
+ {"version":3,"file":"FlowNodes.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/FlowNodes.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,6 @@ import { Series } from "../../core/render/Series";
4
4
  import { Template } from "../../core/util/Template";
5
5
  import { ListTemplate } from "../../core/util/List";
6
6
  import { FlowNode } from "./FlowNode";
7
- import { ColorSet } from "../../core/util/ColorSet";
8
7
  import * as $array from "../../core/util/Array";
9
8
  /**
10
9
  * Holds instances of nodes for a [[Flow]] series.
@@ -42,27 +41,40 @@ var FlowNodes = /** @class */ (function (_super) {
42
41
  configurable: true,
43
42
  writable: true,
44
43
  value: function () {
45
- this.fields.push("unknown");
44
+ this.fields.push("unknown", "name", "fill");
46
45
  this.set("idField", "id");
46
+ this.set("nameField", "id");
47
+ this.set("fillField", "fill");
47
48
  this.set("unknownField", "unknown");
48
- //@todo remove this when it will be possible to set it from theme
49
- this.set("colors", ColorSet.new(this._root, {}));
50
49
  this.children.push(this.bulletsContainer);
51
50
  _super.prototype._afterNew.call(this);
52
51
  }
53
52
  });
53
+ Object.defineProperty(FlowNodes.prototype, "_onDataClear", {
54
+ enumerable: false,
55
+ configurable: true,
56
+ writable: true,
57
+ value: function () {
58
+ var colors = this.get("colors");
59
+ if (colors) {
60
+ colors.reset();
61
+ }
62
+ }
63
+ });
54
64
  Object.defineProperty(FlowNodes.prototype, "processDataItem", {
55
65
  enumerable: false,
56
66
  configurable: true,
57
67
  writable: true,
58
68
  value: function (dataItem) {
59
69
  _super.prototype.processDataItem.call(this, dataItem);
60
- dataItem.set("d3SankeyNode", { name: dataItem.get("id"), dataItem: dataItem });
61
- var colors = this.get("colors");
62
- if (colors) {
63
- dataItem.set("fill", colors.next());
70
+ dataItem.setRaw("d3SankeyNode", { name: dataItem.get("id"), dataItem: dataItem });
71
+ if (dataItem.get("fill") == null) {
72
+ var colors = this.get("colors");
73
+ if (colors) {
74
+ dataItem.setRaw("fill", colors.next());
75
+ }
64
76
  }
65
- dataItem.set("node", this.makeNode(dataItem));
77
+ dataItem.setRaw("node", this.makeNode(dataItem));
66
78
  }
67
79
  });
68
80
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FlowNodes.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/FlowNodes.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { Color } from \"../../core/util/Color\";\nimport type { Time } from \"../../core/util/Animation\";\nimport type { Flow, IFlowDataItem } from \"./Flow\";\nimport type * as d3sankey from \"d3-sankey\";\n\nimport { Label } from \"../../core/render/Label\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate, ISeriesEvents } from \"../../core/render/Series\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { FlowNode } from \"./FlowNode\";\nimport { ColorSet } from \"../../core/util/ColorSet\";\n\nimport * as $array from \"../../core/util/Array\";\n\nexport interface IFlowNodesDataItem extends ISeriesDataItem {\n\n\t/**\n\t * Node name.\n\t */\n\tname: string;\n\n\t/**\n\t * An associated node instance.\n\t */\n\tnode: FlowNode;\n\n\t/**\n\t * Node label.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * Node color.\n\t */\n\tfill: Color;\n\n\t/**\n\t * Indicates \"unknown\" node.\n\t */\n\tunknown: boolean;\n\n\t/**\n\t * @ignore\n\t */\n\td3SankeyNode: d3sankey.SankeyNode<d3sankey.SankeyExtraProperties, d3sankey.SankeyExtraProperties>;\n\n\t/**\n\t * Sum of values of all incoming links.\n\t */\n\tsumIncoming: number;\n\n\t/**\n\t * Sum of values of all outgoing links.\n\t */\n\tsumOutgoing: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumIncomingWorking: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumOutgoingWorking: number;\n\n\t/**\n\t * Sum of values of all links: incoming and outgoing.\n\t */\n\tsum: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumWorking: number;\n\n\t/**\n\t * A list of incoming link data items.\n\t */\n\tincomingLinks: Array<DataItem<IFlowDataItem>>;\n\n\t/**\n\t * A list of outgoing link data items.\n\t */\n\toutgoingLinks: Array<DataItem<IFlowDataItem>>;\n\n\t/**\n\t * Depth of the node.\n\t */\n\tdepth: number;\n\n}\n\nexport interface IFlowNodesSettings extends ISeriesSettings {\n\tunknownField?: string;\n\n\t/**\n\t * A [[ColorSet]] that series will use to apply to its nodes.\n\t */\n\tcolors?: ColorSet;\n\tanimationDuration?: number;\n\tanimationEasing?: (t: Time) => Time;\n}\n\nexport interface IFlowNodesPrivate extends ISeriesPrivate {\n}\n\nexport interface IFlowNodesEvents extends ISeriesEvents {\n}\n\n\n/**\n * Holds instances of nodes for a [[Flow]] series.\n */\nexport abstract class FlowNodes extends Series {\n\tpublic static className: string = \"FlowNodes\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([FlowNodes.className]);\n\n\tdeclare public _settings: IFlowNodesSettings;\n\tdeclare public _privateSettings: IFlowNodesPrivate;\n\tdeclare public _dataItemSettings: IFlowNodesDataItem;\n\tdeclare public _events: IFlowNodesEvents;\n\n\t/**\n\t * List of label elements.\n\t *\n\t * @default new ListTemplate<Label>\n\t */\n\tpublic readonly labels: ListTemplate<Label> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label.new(this._root, {}, this.labels.template)\n\t);\n\n\t/**\n\t * List of node elements.\n\t *\n\t * @default new ListTemplate<FlowNode>\n\t */\n\tpublic readonly nodes: ListTemplate<FlowNode> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => FlowNode.new(this._root, { themeTags: [\"node\"] }, this.nodes.template)\n\t);\n\n\t/**\n\t * Related [[Flow]] series.\n\t */\n\tpublic abstract flow: Flow | undefined;\n\n\tprotected _afterNew() {\n\t\tthis.fields.push(\"unknown\");\n\t\tthis.set(\"idField\", \"id\");\n\t\tthis.set(\"unknownField\", \"unknown\");\n\n\t\t//@todo remove this when it will be possible to set it from theme\n\t\tthis.set(\"colors\", ColorSet.new(this._root, {}));\n\n\t\tthis.children.push(this.bulletsContainer);\n\n\t\tsuper._afterNew();\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\t\tdataItem.set(\"d3SankeyNode\", { name: dataItem.get(\"id\"), dataItem: dataItem });\n\n\t\tlet colors = this.get(\"colors\");\n\n\t\tif (colors) {\n\t\t\tdataItem.set(\"fill\", colors.next());\n\t\t}\n\n\t\tdataItem.set(\"node\", this.makeNode(dataItem));\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>, themeTag?: string): FlowNode {\n\n\t\tconst node = this.nodes.make();\n\t\tthis.nodes.push(node);\n\n\t\tif (themeTag) {\n\t\t\tnode.addTag(themeTag);\n\t\t}\n\n\t\tif (dataItem.get(\"unknown\")) {\n\t\t\tnode.addTag(\"unknown\");\n\t\t}\n\n\t\tthis.children.push(node);\n\t\tnode._setDataItem(dataItem);\n\t\tnode.series = this;\n\n\t\tdataItem.set(\"node\", node);\n\t\treturn node;\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 node = dataItem.get(\"node\");\n\t\tif (node) {\n\t\t\tnode.dispose();\n\t\t\tthis.nodes.removeValue(node);\n\t\t}\n\t\tlet label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tlabel.dispose();\n\t\t\tthis.labels.removeValue(label);\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic addincomingLink(dataItem: DataItem<this[\"_dataItemSettings\"]>, link: DataItem<IFlowDataItem>) {\n\t\tlet incoming = dataItem.get(\"incomingLinks\");\n\t\tif (!incoming) {\n\t\t\tincoming = [];\n\t\t\tdataItem.set(\"incomingLinks\", incoming)\n\t\t}\n\t\tincoming.push(link);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic addOutgoingLink(dataItem: DataItem<this[\"_dataItemSettings\"]>, link: DataItem<IFlowDataItem>) {\n\t\tlet outgoing = dataItem.get(\"outgoingLinks\");\n\t\tif (!outgoing) {\n\t\t\toutgoing = [];\n\t\t\tdataItem.set(\"outgoingLinks\", outgoing)\n\t\t}\n\t\toutgoing.push(link);\n\t}\n\n\t/**\n\t * Shows node's data item.\n\t * \n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tconst flow = this.flow;\n\t\tif (flow) {\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.show(duration);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tawait promises;\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t * \n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\n\t\tconst flow = this.flow;\n\t\tif (flow) {\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.hide(duration);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\n\t\t\tif (links) {\n\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t\tawait promises;\n\t}\n}\n"]}
1
+ {"version":3,"file":"FlowNodes.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/FlowNodes.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { Color } from \"../../core/util/Color\";\nimport type { Time } from \"../../core/util/Animation\";\nimport type { Flow, IFlowDataItem } from \"./Flow\";\nimport type * as d3sankey from \"d3-sankey\";\n\nimport { Label } from \"../../core/render/Label\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate, ISeriesEvents } from \"../../core/render/Series\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { FlowNode } from \"./FlowNode\";\nimport type { ColorSet } from \"../../core/util/ColorSet\";\n\nimport * as $array from \"../../core/util/Array\";\n\nexport interface IFlowNodesDataItem extends ISeriesDataItem {\n\n\t/**\n\t * Node name.\n\t */\n\tname: string;\n\n\t/**\n\t * An associated node instance.\n\t */\n\tnode: FlowNode;\n\n\t/**\n\t * Node label.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * Node color.\n\t */\n\tfill: Color;\n\n\t/**\n\t * Indicates \"unknown\" node.\n\t */\n\tunknown: boolean;\n\n\t/**\n\t * @ignore\n\t */\n\td3SankeyNode: d3sankey.SankeyNode<d3sankey.SankeyExtraProperties, d3sankey.SankeyExtraProperties>;\n\n\t/**\n\t * Sum of values of all incoming links.\n\t */\n\tsumIncoming: number;\n\n\t/**\n\t * Sum of values of all outgoing links.\n\t */\n\tsumOutgoing: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumIncomingWorking: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumOutgoingWorking: number;\n\n\t/**\n\t * Sum of values of all links: incoming and outgoing.\n\t */\n\tsum: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumWorking: number;\n\n\t/**\n\t * A list of incoming link data items.\n\t */\n\tincomingLinks: Array<DataItem<IFlowDataItem>>;\n\n\t/**\n\t * A list of outgoing link data items.\n\t */\n\toutgoingLinks: Array<DataItem<IFlowDataItem>>;\n\n\t/**\n\t * Depth of the node.\n\t */\n\tdepth: number;\n\n}\n\nexport interface IFlowNodesSettings extends ISeriesSettings {\n\n\t/**\n\t * A field in data boolean setting if the node is \"unknown\".\n\t *\n\t * @default \"unknown\"\n\t */\n\tunknownField?: string;\n\n\t/**\n\t * A field in data that holds name for the node.\n\t *\n\t * @default \"id\"\n\t */\n\tnameField?: string;\n\n\t/**\n\t * A field in data that holds color used for fills nodes.\n\t *\n\t * @default \"fill\"\n\t */\n\tfillField?: string;\n\n\t/**\n\t * A [[ColorSet]] that series will use to apply to its nodes.\n\t */\n\tcolors?: ColorSet;\n\tanimationDuration?: number;\n\tanimationEasing?: (t: Time) => Time;\n}\n\nexport interface IFlowNodesPrivate extends ISeriesPrivate {\n}\n\nexport interface IFlowNodesEvents extends ISeriesEvents {\n}\n\n\n/**\n * Holds instances of nodes for a [[Flow]] series.\n */\nexport abstract class FlowNodes extends Series {\n\tpublic static className: string = \"FlowNodes\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([FlowNodes.className]);\n\n\tdeclare public _settings: IFlowNodesSettings;\n\tdeclare public _privateSettings: IFlowNodesPrivate;\n\tdeclare public _dataItemSettings: IFlowNodesDataItem;\n\tdeclare public _events: IFlowNodesEvents;\n\n\t/**\n\t * List of label elements.\n\t *\n\t * @default new ListTemplate<Label>\n\t */\n\tpublic readonly labels: ListTemplate<Label> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label.new(this._root, {}, this.labels.template)\n\t);\n\n\t/**\n\t * List of node elements.\n\t *\n\t * @default new ListTemplate<FlowNode>\n\t */\n\tpublic readonly nodes: ListTemplate<FlowNode> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => FlowNode.new(this._root, { themeTags: [\"node\"] }, this.nodes.template)\n\t);\n\n\t/**\n\t * Related [[Flow]] series.\n\t */\n\tpublic abstract flow: Flow | undefined;\n\n\tprotected _afterNew() {\n\t\tthis.fields.push(\"unknown\", \"name\", \"fill\");\n\n\t\tthis.set(\"idField\", \"id\");\n\t\tthis.set(\"nameField\", \"id\");\n\t\tthis.set(\"fillField\", \"fill\");\n\t\tthis.set(\"unknownField\", \"unknown\");\n\n\t\tthis.children.push(this.bulletsContainer);\n\n\t\tsuper._afterNew();\n\t}\n\n\tprotected _onDataClear() {\n\t\tconst colors = this.get(\"colors\");\n\t\tif (colors) {\n\t\t\tcolors.reset();\n\t\t}\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\t\tdataItem.setRaw(\"d3SankeyNode\", { name: dataItem.get(\"id\"), dataItem: dataItem });\n\n\t\tif (dataItem.get(\"fill\") == null) {\n\t\t\tlet colors = this.get(\"colors\");\n\t\t\tif (colors) {\n\t\t\t\tdataItem.setRaw(\"fill\", colors.next());\n\t\t\t}\n\t\t}\n\n\t\tdataItem.setRaw(\"node\", this.makeNode(dataItem));\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>, themeTag?: string): FlowNode {\n\n\t\tconst node = this.nodes.make();\n\t\tthis.nodes.push(node);\n\n\t\tif (themeTag) {\n\t\t\tnode.addTag(themeTag);\n\t\t}\n\n\t\tif (dataItem.get(\"unknown\")) {\n\t\t\tnode.addTag(\"unknown\");\n\t\t}\n\n\t\tthis.children.push(node);\n\t\tnode._setDataItem(dataItem);\n\t\tnode.series = this;\n\n\t\tdataItem.set(\"node\", node);\n\t\treturn node;\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 node = dataItem.get(\"node\");\n\t\tif (node) {\n\t\t\tnode.dispose();\n\t\t\tthis.nodes.removeValue(node);\n\t\t}\n\t\tlet label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tlabel.dispose();\n\t\t\tthis.labels.removeValue(label);\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic addincomingLink(dataItem: DataItem<this[\"_dataItemSettings\"]>, link: DataItem<IFlowDataItem>) {\n\t\tlet incoming = dataItem.get(\"incomingLinks\");\n\t\tif (!incoming) {\n\t\t\tincoming = [];\n\t\t\tdataItem.set(\"incomingLinks\", incoming)\n\t\t}\n\t\tincoming.push(link);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic addOutgoingLink(dataItem: DataItem<this[\"_dataItemSettings\"]>, link: DataItem<IFlowDataItem>) {\n\t\tlet outgoing = dataItem.get(\"outgoingLinks\");\n\t\tif (!outgoing) {\n\t\t\toutgoing = [];\n\t\t\tdataItem.set(\"outgoingLinks\", outgoing)\n\t\t}\n\t\toutgoing.push(link);\n\t}\n\n\t/**\n\t * Shows node's data item.\n\t * \n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tconst flow = this.flow;\n\t\tif (flow) {\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.show(duration);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tawait promises;\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t * \n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\n\t\tconst flow = this.flow;\n\t\tif (flow) {\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.hide(duration);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\n\t\t\tif (links) {\n\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t\tawait promises;\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"SankeyNodes.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/SankeyNodes.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,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACrH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,MAAM,WAAW,oBAAqB,SAAQ,kBAAkB;IAC/D,SAAS,EAAE,gBAAgB,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAqB,SAAQ,kBAAkB;CAC/D;AAED,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;CAC7D;AAED,MAAM,WAAW,kBAAmB,SAAQ,gBAAgB;CAC3D;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACzC,OAAc,SAAS,EAAE,MAAM,CAAiB;IAChD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAwD;IAE/F;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,WAAW;IAMjG,SAAS,EAAE,oBAAoB,CAAC;IAChC,gBAAgB,EAAE,mBAAmB,CAAC;IACtC,iBAAiB,EAAE,oBAAoB,CAAC;IACxC,OAAO,EAAE,kBAAkB,CAAC;IAE3C;;;;OAIG;IACH,SAAgB,UAAU,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAGxD;IAEF;;OAEG;IACI,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAEhC;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,QAAQ;IAwCjE,eAAe,CAAC,MAAM,EAAE,MAAM;IAmBrC;;OAEG;IACI,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;CAQpE"}
1
+ {"version":3,"file":"SankeyNodes.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/SankeyNodes.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,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACrH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAEtE,MAAM,WAAW,oBAAqB,SAAQ,kBAAkB;IAC/D,SAAS,EAAE,gBAAgB,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAqB,SAAQ,kBAAkB;CAC/D;AAED,MAAM,WAAW,mBAAoB,SAAQ,iBAAiB;CAC7D;AAED,MAAM,WAAW,kBAAmB,SAAQ,gBAAgB;CAC3D;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,SAAS;IACzC,OAAc,SAAS,EAAE,MAAM,CAAiB;IAChD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAwD;IAE/F;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,WAAW;IAMjG,SAAS,EAAE,oBAAoB,CAAC;IAChC,gBAAgB,EAAE,mBAAmB,CAAC;IACtC,iBAAiB,EAAE,oBAAoB,CAAC;IACxC,OAAO,EAAE,kBAAkB,CAAC;IAE3C;;;;OAIG;IACH,SAAgB,UAAU,EAAE,YAAY,CAAC,gBAAgB,CAAC,CAGxD;IAEF;;OAEG;IACI,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAEhC;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,QAAQ;IAyCjE,eAAe,CAAC,MAAM,EAAE,MAAM;IAmBrC;;OAEG;IACI,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;CAQpE"}
@@ -63,19 +63,17 @@ var SankeyNodes = /** @class */ (function (_super) {
63
63
  var node = _super.prototype.makeNode.call(this, dataItem, "sankey");
64
64
  var rectangle = node.children.insertIndex(0, this.rectangles.make());
65
65
  this.rectangles.push(rectangle);
66
+ rectangle._setSoft("fill", dataItem.get("fill"));
66
67
  dataItem.set("rectangle", rectangle);
67
- rectangle.set("fill", dataItem.get("fill"));
68
68
  node.events.on("dragged", function () {
69
69
  var d3SankeyNode = node.dataItem.get("d3SankeyNode");
70
70
  if (d3SankeyNode) {
71
71
  if (flow) {
72
72
  if (flow.get("orientation") == "horizontal") {
73
- //node.setRaw("x", d3SankeyNode.x0);
74
73
  d3SankeyNode.x0 = node.x();
75
74
  d3SankeyNode.y0 = node.y();
76
75
  }
77
76
  else {
78
- //node.setRaw("y", d3SankeyNode.x0);
79
77
  d3SankeyNode.x0 = node.y();
80
78
  d3SankeyNode.y0 = node.x();
81
79
  }
@@ -89,6 +87,8 @@ var SankeyNodes = /** @class */ (function (_super) {
89
87
  }
90
88
  node.children.push(label);
91
89
  dataItem.set("label", label);
90
+ label._setDataItem(dataItem);
91
+ rectangle._setDataItem(dataItem);
92
92
  return node;
93
93
  }
94
94
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SankeyNodes.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/SankeyNodes.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { FlowNode } from \"./FlowNode\";\nimport type { Sankey } from \"./Sankey\";\nimport type { Root } from \"../../core/Root\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { FlowNodes, IFlowNodesSettings, IFlowNodesDataItem, IFlowNodesPrivate, IFlowNodesEvents } from \"./FlowNodes\";\nimport { RoundedRectangle } from \"../../core/render/RoundedRectangle\";\n\nexport interface ISankeyNodesDataItem extends IFlowNodesDataItem {\n\trectangle: RoundedRectangle;\n}\n\nexport interface ISankeyNodesSettings extends IFlowNodesSettings {\n}\n\nexport interface ISankeyNodesPrivate extends IFlowNodesPrivate {\n}\n\nexport interface ISankeyNodesEvents extends IFlowNodesEvents {\n}\n\n/**\n * Holds instances of nodes for a [[Sankey]] series.\n */\nexport class SankeyNodes extends FlowNodes {\n\tpublic static className: string = \"SankeyNodes\";\n\tpublic static classNames: Array<string> = FlowNodes.classNames.concat([SankeyNodes.className]);\n\n\t/**\n\t * Use this method to create an instance of this class.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/getting-started/#New_element_syntax} for more info\n\t * @param root Root element\n\t * @param settings Settings\n\t * @param template Template\n\t * @return Instantiated object\n\t */\n\tpublic static new(root: Root, settings: SankeyNodes[\"_settings\"], template?: Template<SankeyNodes>): SankeyNodes {\n\t\tconst x = new SankeyNodes(root, settings, true, template);\n\t\tx._afterNew();\n\t\treturn x;\n\t}\n\n\tdeclare public _settings: ISankeyNodesSettings;\n\tdeclare public _privateSettings: ISankeyNodesPrivate;\n\tdeclare public _dataItemSettings: ISankeyNodesDataItem;\n\tdeclare public _events: ISankeyNodesEvents;\n\n\t/**\n\t * List of rectangle elements.\n\t *\n\t * @default new ListTemplate<RoundedRectangle>\n\t */\n\tpublic readonly rectangles: ListTemplate<RoundedRectangle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RoundedRectangle.new(this._root, { themeTags: [\"shape\"] }, this.rectangles.template)\n\t);\n\n\t/**\n\t * Related [[Sankey]] series.\n\t */\n\tpublic flow: Sankey | undefined;\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>): FlowNode {\n\t\tconst flow = this.flow;\n\n\t\tconst node = super.makeNode(dataItem, \"sankey\");\n\n\t\tconst rectangle = node.children.insertIndex(0, this.rectangles.make());\n\t\tthis.rectangles.push(rectangle);\n\t\tdataItem.set(\"rectangle\", rectangle);\n\t\trectangle.set(\"fill\", dataItem.get(\"fill\"));\n\n\t\tnode.events.on(\"dragged\", () => {\n\t\t\tconst d3SankeyNode = (node.dataItem as DataItem<ISankeyNodesDataItem>).get(\"d3SankeyNode\");\n\t\t\tif (d3SankeyNode) {\n\t\t\t\tif (flow) {\n\t\t\t\t\tif (flow.get(\"orientation\") == \"horizontal\") {\n\t\t\t\t\t\t//node.setRaw(\"x\", d3SankeyNode.x0);\n\t\t\t\t\t\td3SankeyNode.x0 = node.x();\n\t\t\t\t\t\td3SankeyNode.y0 = node.y();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\t//node.setRaw(\"y\", d3SankeyNode.x0);\n\t\t\t\t\t\td3SankeyNode.x0 = node.y();\n\t\t\t\t\t\td3SankeyNode.y0 = node.x();\n\t\t\t\t\t}\n\n\t\t\t\t\tflow.updateSankey();\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\tconst label = this.labels.make();\n\t\tif (flow) {\n\t\t\tlabel.addTag(flow.get(\"orientation\", \"\"));\n\t\t}\n\t\tnode.children.push(label);\n\t\tdataItem.set(\"label\", label);\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 rectangle = dataItem.get(\"rectangle\");\n\t\t\t\t\tconst node = dataItem.get(\"node\");\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 (rectangle) {\n\t\t\t\t\t\tsprite.setAll({ x: node.x() + rectangle.width() * locationX, y: node.y() + rectangle.height() * locationY });\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 rectangle = dataItem.get(\"rectangle\");\n\t\tif (rectangle) {\n\t\t\trectangle.dispose();\n\t\t\tthis.rectangles.removeValue(rectangle);\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"SankeyNodes.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/SankeyNodes.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { FlowNode } from \"./FlowNode\";\nimport type { Sankey } from \"./Sankey\";\nimport type { Root } from \"../../core/Root\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { FlowNodes, IFlowNodesSettings, IFlowNodesDataItem, IFlowNodesPrivate, IFlowNodesEvents } from \"./FlowNodes\";\nimport { RoundedRectangle } from \"../../core/render/RoundedRectangle\";\n\nexport interface ISankeyNodesDataItem extends IFlowNodesDataItem {\n\trectangle: RoundedRectangle;\n}\n\nexport interface ISankeyNodesSettings extends IFlowNodesSettings {\n}\n\nexport interface ISankeyNodesPrivate extends IFlowNodesPrivate {\n}\n\nexport interface ISankeyNodesEvents extends IFlowNodesEvents {\n}\n\n/**\n * Holds instances of nodes for a [[Sankey]] series.\n */\nexport class SankeyNodes extends FlowNodes {\n\tpublic static className: string = \"SankeyNodes\";\n\tpublic static classNames: Array<string> = FlowNodes.classNames.concat([SankeyNodes.className]);\n\n\t/**\n\t * Use this method to create an instance of this class.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/getting-started/#New_element_syntax} for more info\n\t * @param root Root element\n\t * @param settings Settings\n\t * @param template Template\n\t * @return Instantiated object\n\t */\n\tpublic static new(root: Root, settings: SankeyNodes[\"_settings\"], template?: Template<SankeyNodes>): SankeyNodes {\n\t\tconst x = new SankeyNodes(root, settings, true, template);\n\t\tx._afterNew();\n\t\treturn x;\n\t}\n\n\tdeclare public _settings: ISankeyNodesSettings;\n\tdeclare public _privateSettings: ISankeyNodesPrivate;\n\tdeclare public _dataItemSettings: ISankeyNodesDataItem;\n\tdeclare public _events: ISankeyNodesEvents;\n\n\t/**\n\t * List of rectangle elements.\n\t *\n\t * @default new ListTemplate<RoundedRectangle>\n\t */\n\tpublic readonly rectangles: ListTemplate<RoundedRectangle> = new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RoundedRectangle.new(this._root, { themeTags: [\"shape\"] }, this.rectangles.template)\n\t);\n\n\t/**\n\t * Related [[Sankey]] series.\n\t */\n\tpublic flow: Sankey | undefined;\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>): FlowNode {\n\t\tconst flow = this.flow;\n\n\t\tconst node = super.makeNode(dataItem, \"sankey\");\n\n\t\tconst rectangle = node.children.insertIndex(0, this.rectangles.make());\n\t\tthis.rectangles.push(rectangle);\n\t\trectangle._setSoft(\"fill\", dataItem.get(\"fill\"));\t\t\n\t\tdataItem.set(\"rectangle\", rectangle);\n\n\t\tnode.events.on(\"dragged\", () => {\n\t\t\tconst d3SankeyNode = (node.dataItem as DataItem<ISankeyNodesDataItem>).get(\"d3SankeyNode\");\n\t\t\tif (d3SankeyNode) {\n\t\t\t\tif (flow) {\n\t\t\t\t\tif (flow.get(\"orientation\") == \"horizontal\") {\n\t\t\t\t\t\td3SankeyNode.x0 = node.x();\n\t\t\t\t\t\td3SankeyNode.y0 = node.y();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\td3SankeyNode.x0 = node.y();\n\t\t\t\t\t\td3SankeyNode.y0 = node.x();\n\t\t\t\t\t}\n\n\t\t\t\t\tflow.updateSankey();\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\tconst label = this.labels.make();\n\t\tif (flow) {\n\t\t\tlabel.addTag(flow.get(\"orientation\", \"\"));\n\t\t}\n\t\tnode.children.push(label);\n\t\tdataItem.set(\"label\", label);\n\n\t\tlabel._setDataItem(dataItem);\n\t\trectangle._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 rectangle = dataItem.get(\"rectangle\");\n\t\t\t\t\tconst node = dataItem.get(\"node\");\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 (rectangle) {\n\t\t\t\t\t\tsprite.setAll({ x: node.x() + rectangle.width() * locationX, y: node.y() + rectangle.height() * locationY });\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 rectangle = dataItem.get(\"rectangle\");\n\t\tif (rectangle) {\n\t\t\trectangle.dispose();\n\t\t\tthis.rectangles.removeValue(rectangle);\n\t\t}\n\t}\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"FunnelSeries.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/FunnelSeries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FunnelSeries.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/FunnelSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAChI,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAQhD,MAAM,WAAW,qBAAsB,SAAQ,sBAAsB;IACpE,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,qBAAsB,SAAQ,sBAAsB;IAEpE;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,WAAW,EAAE,YAAY,GAAG,UAAU,CAAC;IAEvC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CAErB;AAED,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;CAClE;AAED;;;;;GAKG;AACH,qBAAa,YAAa,SAAQ,aAAa;IAE9C;;OAEG;IACY,KAAK,EAAE,WAAW,GAAG,SAAS,CAAC;IAE9C,SAAS,CAAC,IAAI,SAAY;IAEX,UAAU,EAAE,WAAW,CAAC;IACxB,UAAU,EAAE,KAAK,CAAC;IAClB,SAAS,EAAE,IAAI,CAAC;IAE/B,SAAS,CAAC,WAAW,IAAI,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IASzD,SAAS,CAAC,WAAW,IAAI,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IASzD,SAAS,CAAC,UAAU,IAAI,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IASvD;;;;;;OAMG;IACH,SAAgB,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAqB;IAE5E,SAAS,CAAC,UAAU,IAAI,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IASxD;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC;IASlF;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,GAAG,YAAY;IAMnH,OAAc,SAAS,EAAE,MAAM,CAAkB;IACjD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA6D;IAErF,SAAS,EAAE,qBAAqB,CAAC;IACjC,gBAAgB,EAAE,oBAAoB,CAAC;IACvC,iBAAiB,EAAE,qBAAqB,CAAC;IAExD,SAAS,CAAC,MAAM,EAAE,MAAM,CAAK;IAC7B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAK;IAC7B,SAAS,CAAC,UAAU,EAAE,MAAM,CAAK;IAEjC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAS;IAErC,SAAS,CAAC,SAAS;IAoBnB,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAmChE,eAAe;IAoGtB,SAAS,CAAC,UAAU;IAgCpB,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,MAAM;IAc7E,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,OAAO;IAexE,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAkFrE;;;;;;OAMG;IACU,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1G;;;;;;OAMG;IACU,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK1G,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IA0EnE;;OAEG;IACI,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;CAQpE"}
@@ -245,8 +245,6 @@ var FunnelSeries = /** @class */ (function (_super) {
245
245
  }
246
246
  this._nextCoord = this.get("startLocation", 0) * h;
247
247
  this.markDirtyBounds();
248
- var colors_1 = this.get("colors");
249
- colors_1.reset();
250
248
  var i_1 = 0;
251
249
  $array.each(this._dataItems, function (dataItem) {
252
250
  _this.updateLegendValue(dataItem);
@@ -256,7 +254,7 @@ var FunnelSeries = /** @class */ (function (_super) {
256
254
  var tick = dataItem.get("tick");
257
255
  var label = dataItem.get("label");
258
256
  var link = dataItem.get("link");
259
- var color = colors_1.next();
257
+ var color = dataItem.get("fill");
260
258
  slice._setDefault("fill", color);
261
259
  slice._setDefault("stroke", color);
262
260
  link._setDefault("fill", color);
@@ -1 +1 @@
1
- {"version":3,"file":"FunnelSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/FunnelSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { SlicedChart } from \"./SlicedChart\";\nimport type { Root } from \"../../core/Root\";\n\nimport { PercentSeries, IPercentSeriesSettings, IPercentSeriesDataItem, IPercentSeriesPrivate } from \"../percent/PercentSeries\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { FunnelSlice } from \"./FunnelSlice\";\nimport { Tick } from \"../../core/render/Tick\";\nimport { Label } from \"../../core/render/Label\";\nimport { percent, p50, p100 } from \"../../core/util/Percent\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $utils from \"../../core/util/Utils\";\n\n\nexport interface IFunnelSeriesDataItem extends IPercentSeriesDataItem {\n\tslice: FunnelSlice;\n\tlink: FunnelSlice;\n\tindex: number;\n}\n\nexport interface IFunnelSeriesSettings extends IPercentSeriesSettings {\n\n\t/**\n\t * Width of the bottom edge of the slice relative to the top edge of the next\n\t * slice.\n\t *\n\t * `1` - means the full width of the slice, resulting in a rectangle.\n\t * `0` - means using width of the next slice, resulting in a trapezoid.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Slice_bottom_width} for more info\n\t * @default 1\n\t */\n\tbottomRatio?: number;\n\n\t/**\n\t * Orientation of the series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/#Series_orientation} for more info\n\t * @default \"vertical\"\n\t */\n\torientation: \"horizontal\" | \"vertical\";\n\n\t/**\n\t * If set to `true`, series will not create slices for data items with zero\n\t * value.\n\t */\n\tignoreZeroValues?: boolean;\n\n\t/**\n\t * Should labels be aligned into columns/rows?\n\t *\n\t * @default false\n\t */\n\talignLabels?: boolean;\n\n\t/**\n\t * Relative location within area available to series where it should start.\n\t *\n\t * `0` - beginning, `1` - end, or any intermediate value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Start_end_locations} for more info\n\t * @default 0\n\t */\n\tstartLocation?: number;\n\n\t/**\n\t * Relative location within area available to series where it should start.\n\t *\n\t * `0` - beginning, `1` - end, or any intermediate value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Start_end_locations} for more info\n\t * @default 0\n\t */\n\tendLocation?: number;\n\n}\n\nexport interface IFunnelSeriesPrivate extends IPercentSeriesPrivate {\n}\n\n/**\n * Creates a funnel series for use in a [[SlicedChart]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/} for more info\n * @important\n */\nexport class FunnelSeries extends PercentSeries {\n\n\t/**\n\t * A chart series is attached to.\n\t */\n\tdeclare public chart: SlicedChart | undefined;\n\n\tprotected _tag = \"funnel\";\n\n\tdeclare public _sliceType: FunnelSlice;\n\tdeclare public _labelType: Label;\n\tdeclare public _tickType: Tick;\n\n\tprotected _makeSlices(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => FunnelSlice.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.slices.template.get(\"themeTags\", []), [this._tag, \"series\", \"slice\", this.get(\"orientation\")])\n\t\t\t}, this.slices.template)\n\t\t);\n\t}\n\n\tprotected _makeLabels(): ListTemplate<this[\"_labelType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Label.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [this._tag, \"series\", \"label\", this.get(\"orientation\")])\n\t\t\t}, this.labels.template)\n\t\t);\n\t}\n\n\tprotected _makeTicks(): ListTemplate<this[\"_tickType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Tick.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.ticks.template.get(\"themeTags\", []), [this._tag, \"series\", \"tick\", this.get(\"orientation\")])\n\t\t\t}, this.ticks.template)\n\t\t);\n\t}\n\n\t/**\n\t * A [[ListTemplate]] of all slice links in series.\n\t *\n\t * `links.template` can also be used to configure slice links.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Slice_links} for more info\n\t */\n\tpublic readonly links: ListTemplate<this[\"_sliceType\"]> = this._makeLinks();\n\n\tprotected _makeLinks(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => FunnelSlice.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.links.template.get(\"themeTags\", []), [this._tag, \"series\", \"link\", this.get(\"orientation\")])\n\t\t\t}, this.links.template),\n\t\t);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLink(dataItem: DataItem<this[\"_dataItemSettings\"]>): this[\"_sliceType\"] {\n\t\tconst link = this.slicesContainer.children.push(this.links.make());\n\t\tlink._setDataItem(dataItem);\n\t\tdataItem.set(\"link\", link);\n\t\tthis.links.push(link);\n\t\treturn link;\n\t}\n\n\n\t/**\n\t * Use this method to create an instance of this class.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/getting-started/#New_element_syntax} for more info\n\t * @param root Root element\n\t * @param settings Settings\n\t * @param template Template\n\t * @return Instantiated object\n\t */\n\tpublic static new(root: Root, settings: FunnelSeries[\"_settings\"], template?: Template<FunnelSeries>): FunnelSeries {\n\t\tconst x = new FunnelSeries(root, settings, true, template);\n\t\tx._afterNew();\n\t\treturn x;\n\t}\n\n\tpublic static className: string = \"FunnelSeries\";\n\tpublic static classNames: Array<string> = PercentSeries.classNames.concat([FunnelSeries.className]);\n\n\tdeclare public _settings: IFunnelSeriesSettings;\n\tdeclare public _privateSettings: IFunnelSeriesPrivate;\n\tdeclare public _dataItemSettings: IFunnelSeriesDataItem;\n\n\tprotected _total: number = 0;\n\tprotected _count: number = 0;\n\tprotected _nextCoord: number = 0;\n\n\tprotected _opposite: boolean = false;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tconst slicesContainer = this.slicesContainer;\n\t\tslicesContainer.setAll({ isMeasured: true, position: \"relative\", width: percent(100), height: percent(100) });\n\t\tslicesContainer.onPrivate(\"width\", () => {\n\t\t\tthis.markDirtySize();\n\t\t})\n\n\t\tslicesContainer.onPrivate(\"height\", () => {\n\t\t\tthis.markDirtySize();\n\t\t})\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tthis.set(\"layout\", this._root.horizontalLayout);\n\t\t}\n\t\telse {\n\t\t\tthis.set(\"layout\", this._root.verticalLayout);\n\t\t}\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst slice = this.makeSlice(dataItem);\n\n\t\tslice._setDataItem(dataItem);\n\n\t\tdataItem.set(\"slice\", slice);\n\n\t\tthis.makeLink(dataItem);\n\t\tconst label = this.makeLabel(dataItem);\n\n\t\tlabel.on(\"x\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tlabel.on(\"y\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tthis.makeTick(dataItem);\n\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tlabel.markDirty();\n\t\t})\n\n\t\tslice.events.on(\"boundschanged\", () => {\n\t\t\tconst dataItem = slice.dataItem;\n\t\t\tif (dataItem) {\n\t\t\t\tthis._updateTick(dataItem as any);\n\t\t\t}\n\t\t})\n\t}\n\n\n\tpublic _updateChildren() {\n\t\tthis._opposite = false;\n\t\tif (this.children.indexOf(this.labelsContainer) == 0) {\n\t\t\tthis._opposite = true;\n\t\t}\n\n\t\tlet total = 0;\n\t\tlet count = 0;\n\n\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\tconst value = dataItem.get(\"value\");\n\t\t\tif ($type.isNumber(value)) {\n\t\t\t\tcount++;\n\t\t\t\tif (value > 0) {\n\t\t\t\t\ttotal += Math.abs(dataItem.get(\"valueWorking\", value) / value);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (this.get(\"ignoreZeroValues\", false)) {\n\t\t\t\t\t\tcount--;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (dataItem.isHidden()) {\n\t\t\t\t\t\t\tcount--;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\ttotal += 1;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\tthis._total = 1 / count * total;\n\t\tthis._count = count;\n\n\t\tif (this.isDirty(\"alignLabels\")) {\n\t\t\tthis._fixLayout();\n\t\t}\n\n\t\tif (this._total > 0 && (this._valuesDirty || this._sizeDirty)) {\n\n\t\t\tconst slicesContainer = this.slicesContainer;\n\n\t\t\tlet h: number;\n\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\th = slicesContainer.innerHeight();\n\t\t\t}\n\t\t\telse {\n\t\t\t\th = slicesContainer.innerWidth();\n\t\t\t}\n\n\t\t\tthis._nextCoord = this.get(\"startLocation\", 0) * h;\n\n\t\t\tthis.markDirtyBounds();\n\n\t\t\tconst colors = this.get(\"colors\")!;\n\t\t\tcolors.reset();\n\t\t\tlet i = 0;\n\t\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\t\tthis.updateLegendValue(dataItem);\n\n\t\t\t\tdataItem.set(\"index\", i);\n\t\t\t\ti++;\n\n\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\tconst tick = dataItem.get(\"tick\");\n\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\tconst color = colors.next();\n\n\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\tslice._setDefault(\"stroke\", color);\n\t\t\t\tlink._setDefault(\"fill\", color);\n\t\t\t\tlink._setDefault(\"stroke\", color);\n\n\t\t\t\tconst value = dataItem.get(\"value\");\n\t\t\t\tif ($type.isNumber(value)) {\n\t\t\t\t\tif (value == 0 && this.get(\"ignoreZeroValues\")) {\n\t\t\t\t\t\tslice.setPrivate(\"visible\", false);\n\t\t\t\t\t\ttick.setPrivate(\"visible\", false);\n\t\t\t\t\t\tlabel.setPrivate(\"visible\", false);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tslice.setPrivate(\"visible\", true);\n\t\t\t\t\t\ttick.setPrivate(\"visible\", true);\n\t\t\t\t\t\tlabel.setPrivate(\"visible\", true);\n\n\t\t\t\t\t\tthis.decorateSlice(dataItem);\n\n\t\t\t\t\t\tif (this.isLast(dataItem)) {\n\t\t\t\t\t\t\tlink.setPrivate(\"visible\", false);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (!dataItem.isHidden()) {\n\t\t\t\t\t\t\tlink.setPrivate(\"visible\", true);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t\tsuper._updateChildren();\n\t}\n\n\tprotected _fixLayout() {\n\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst labelsContainer = this.labelsContainer;\n\t\tconst labelsTemplate = this.labels.template;\n\n\t\tif (this.get(\"alignLabels\")) {\n\t\t\tlabelsContainer.set(\"position\", \"relative\");\n\t\t\tlabelsContainer.setAll({ isMeasured: true });\n\t\t\tif (orientation == \"vertical\") {\n\t\t\t\tthis.set(\"layout\", this._root.horizontalLayout);\n\t\t\t\tlabelsTemplate.setAll({ centerX: p100, x: p100 });\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.set(\"layout\", this._root.verticalLayout);\n\t\t\t\tlabelsTemplate.setAll({ centerX: 0, x: 0 });\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tlabelsContainer.setAll({ isMeasured: false, position: \"absolute\" });\n\t\t\tif (orientation == \"vertical\") {\n\t\t\t\tlabelsContainer.setAll({ x: p50 });\n\t\t\t\tlabelsTemplate.setAll({ centerX: p50, x: 0 });\n\t\t\t}\n\t\t\telse {\n\t\t\t\tlabelsContainer.setAll({ y: p50 });\n\t\t\t\tlabelsTemplate.setAll({ centerX: p50, y: 0 });\n\t\t\t}\n\t\t}\n\t\tthis.markDirtySize();\n\t}\n\n\tprotected getNextValue(dataItem: DataItem<this[\"_dataItemSettings\"]>): number {\n\t\tlet index = dataItem.get(\"index\");\n\t\tlet nextValue = dataItem.get(\"valueWorking\", 0);\n\t\tif (index < this.dataItems.length - 1) {\n\t\t\tlet nextItem = this.dataItems[index + 1];\n\t\t\tnextValue = nextItem.get(\"valueWorking\", 0);\n\n\t\t\tif (nextItem.isHidden() || (nextItem.get(\"value\") == 0 && this.get(\"ignoreZeroValues\"))) {\n\t\t\t\treturn this.getNextValue(nextItem);\n\t\t\t}\n\t\t}\n\t\treturn nextValue;\n\t}\n\n\tprotected isLast(dataItem: DataItem<this[\"_dataItemSettings\"]>): boolean {\n\t\tlet index = dataItem.get(\"index\");\n\t\tif (index == this.dataItems.length - 1) {\n\t\t\treturn true;\n\t\t}\n\t\telse {\n\t\t\tfor (let i = index + 1; i < this.dataItems.length; i++) {\n\t\t\t\tif (!this.dataItems[i].isHidden()) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tprotected decorateSlice(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst orientation = this.get(\"orientation\");\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tconst label = dataItem.get(\"label\");\n\t\tconst link = dataItem.get(\"link\");\n\n\t\tconst slicesContainer = this.slicesContainer;\n\n\t\tlet maxWidth = slicesContainer.innerWidth();\n\t\tlet maxHeight = slicesContainer.innerHeight();\n\n\t\tlet maxSize = maxWidth;\n\t\tif (orientation == \"horizontal\") {\n\t\t\tmaxSize = maxHeight;\n\t\t}\n\n\t\tconst nextValue = this.getNextValue(dataItem);\n\t\tconst value = dataItem.get(\"value\", 0);\n\t\tconst workingValue = Math.abs(dataItem.get(\"valueWorking\", value));\n\t\tconst bottomRatio = this.get(\"bottomRatio\", 0);\n\t\tconst valueHigh = this.getPrivate(\"valueHigh\", 0);\n\n\n\t\tlet d = 1;\n\t\tif (value != 0) {\n\t\t\td = workingValue / Math.abs(value);\n\t\t}\n\t\telse {\n\t\t\tif (dataItem.isHidden()) {\n\t\t\t\td = 0.000001;\n\t\t\t}\n\t\t}\n\n\t\tif (this._nextCoord == Infinity) {\n\t\t\tthis._nextCoord = 0;\n\t\t}\n\n\t\tlet topWidth = workingValue / valueHigh * maxSize;\n\t\tlet bottomWidth = (workingValue - (workingValue - nextValue) * bottomRatio) / valueHigh * maxSize;\n\n\t\tslice.setAll({ topWidth, bottomWidth, orientation });\n\t\tlink.setAll({ topWidth: bottomWidth, bottomWidth: (workingValue - (workingValue - nextValue)) / valueHigh * maxSize, orientation });\n\n\t\tconst startLocation = this.get(\"startLocation\", 0);\n\t\tconst endLocation = this.get(\"endLocation\", 1);\n\n\t\tif (orientation == \"vertical\") {\n\n\t\t\tlet linkHeight = link.height() * d;\n\n\t\t\tmaxHeight = maxHeight * (endLocation - startLocation) + linkHeight;\n\n\t\t\tslice.set(\"y\", this._nextCoord);\n\n\t\t\tlet height = Math.min(100000, Math.max(0, maxHeight / this._count * d / this._total - linkHeight));\n\n\t\t\tslice.setAll({ height, x: maxWidth / 2 });\n\t\t\tlet labelY = this._nextCoord + height / 2;\n\t\t\tlabel.set(\"y\", labelY);\n\n\t\t\tthis._nextCoord += height + linkHeight;\n\t\t\tlink.setAll({ y: this._nextCoord - linkHeight, x: maxWidth / 2 });\n\t\t}\n\t\telse {\n\t\t\tlet linkHeight = link.width() * d;\n\n\t\t\tmaxWidth = maxWidth * (endLocation - startLocation) + linkHeight;\n\n\t\t\tslice.set(\"x\", this._nextCoord);\n\n\t\t\tlet width = Math.min(100000, Math.max(0, maxWidth / this._count * d / this._total - linkHeight));\n\n\t\t\tslice.setAll({ width, y: maxHeight / 2 });\n\t\t\tconst labelX = this._nextCoord + width / 2;\n\t\t\tlabel.set(\"x\", labelX);\n\n\t\t\tthis._nextCoord += width + linkHeight;\n\t\t\tlink.setAll({ x: this._nextCoord - linkHeight, y: maxHeight / 2 });\n\t\t}\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tdataItem.get(\"link\").hide(duration);\n\t\treturn super.hideDataItem(dataItem, duration)\n\t}\n\n\t/**\n\t * Shows series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tdataItem.get(\"link\").show(duration);\n\t\treturn super.showDataItem(dataItem, duration)\n\t}\n\n\tprotected _updateTick(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tif (this.get(\"alignLabels\")) {\n\t\t\tconst tick = dataItem.get(\"tick\");\n\t\t\tconst label = dataItem.get(\"label\");\n\t\t\tconst slice = dataItem.get(\"slice\");\n\n\t\t\tif (tick && slice && label) {\n\n\t\t\t\tconst labelsContainer = this.labelsContainer;\n\t\t\t\tconst slicesContainer = this.slicesContainer;\n\t\t\t\tlet tickLocation = tick.get(\"location\", 0.5);\n\n\t\t\t\tconst lcw = labelsContainer.width();\n\t\t\t\tconst lch = labelsContainer.height();\n\n\t\t\t\tconst pl = labelsContainer.get(\"paddingLeft\", 0);\n\t\t\t\tconst pr = labelsContainer.get(\"paddingRight\", 0);\n\t\t\t\tconst pt = labelsContainer.get(\"paddingTop\", 0);\n\t\t\t\tconst pb = labelsContainer.get(\"paddingBottom\", 0);\n\n\t\t\t\tlet p0 = { x: 0, y: 0 };\n\t\t\t\tlet p1 = { x: 0, y: 0 };\n\t\t\t\tlet p2 = { x: 0, y: 0 };\n\n\t\t\t\tif (this._opposite) {\n\t\t\t\t\ttickLocation = 1 - tickLocation;\n\t\t\t\t}\n\n\t\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\t\tp0 = slice.getPoint(tickLocation, 0.5);\n\t\t\t\t\tp0.x += slice.x() + slicesContainer.x();\n\t\t\t\t\tp0.y += slice.y() + slicesContainer.y();\n\n\t\t\t\t\tif (this._opposite) {\n\t\t\t\t\t\tp1.x = lcw;\n\t\t\t\t\t\tp1.y = label.y();\n\n\t\t\t\t\t\tp2.x = lcw - pl;\n\t\t\t\t\t\tp2.y = p1.y;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tp1.x = slicesContainer.x() + slicesContainer.width();\n\t\t\t\t\t\tp1.y = label.y();\n\n\t\t\t\t\t\tp2.x = p1.x + lcw - label.width() - pr;\n\t\t\t\t\t\tp2.y = p1.y;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tp0 = slice.getPoint(0.5, tickLocation);\n\t\t\t\t\tp0.x += slice.x() + slicesContainer.x();\n\t\t\t\t\tp0.y += slice.y() + slicesContainer.y();\n\n\t\t\t\t\tif (this._opposite) {\n\t\t\t\t\t\tp1.y = lch;\n\t\t\t\t\t\tp1.x = label.x();\n\n\t\t\t\t\t\tp2.y = lch - pt;\n\t\t\t\t\t\tp2.x = p1.x;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tp1.y = slicesContainer.y() + slicesContainer.height();\n\t\t\t\t\t\tp1.x = label.x();\n\n\t\t\t\t\t\tp2.y = p1.y + lch - label.height() - pb;\n\t\t\t\t\t\tp2.x = p1.x;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttick.set(\"points\", [p0, p1, p2]);\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 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"]}
1
+ {"version":3,"file":"FunnelSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/FunnelSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { SlicedChart } from \"./SlicedChart\";\nimport type { Root } from \"../../core/Root\";\n\nimport { PercentSeries, IPercentSeriesSettings, IPercentSeriesDataItem, IPercentSeriesPrivate } from \"../percent/PercentSeries\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { FunnelSlice } from \"./FunnelSlice\";\nimport { Tick } from \"../../core/render/Tick\";\nimport { Label } from \"../../core/render/Label\";\nimport { percent, p50, p100 } from \"../../core/util/Percent\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $utils from \"../../core/util/Utils\";\n\n\nexport interface IFunnelSeriesDataItem extends IPercentSeriesDataItem {\n\tslice: FunnelSlice;\n\tlink: FunnelSlice;\n\tindex: number;\n}\n\nexport interface IFunnelSeriesSettings extends IPercentSeriesSettings {\n\n\t/**\n\t * Width of the bottom edge of the slice relative to the top edge of the next\n\t * slice.\n\t *\n\t * `1` - means the full width of the slice, resulting in a rectangle.\n\t * `0` - means using width of the next slice, resulting in a trapezoid.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Slice_bottom_width} for more info\n\t * @default 1\n\t */\n\tbottomRatio?: number;\n\n\t/**\n\t * Orientation of the series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/#Series_orientation} for more info\n\t * @default \"vertical\"\n\t */\n\torientation: \"horizontal\" | \"vertical\";\n\n\t/**\n\t * If set to `true`, series will not create slices for data items with zero\n\t * value.\n\t */\n\tignoreZeroValues?: boolean;\n\n\t/**\n\t * Should labels be aligned into columns/rows?\n\t *\n\t * @default false\n\t */\n\talignLabels?: boolean;\n\n\t/**\n\t * Relative location within area available to series where it should start.\n\t *\n\t * `0` - beginning, `1` - end, or any intermediate value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Start_end_locations} for more info\n\t * @default 0\n\t */\n\tstartLocation?: number;\n\n\t/**\n\t * Relative location within area available to series where it should start.\n\t *\n\t * `0` - beginning, `1` - end, or any intermediate value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Start_end_locations} for more info\n\t * @default 0\n\t */\n\tendLocation?: number;\n\n}\n\nexport interface IFunnelSeriesPrivate extends IPercentSeriesPrivate {\n}\n\n/**\n * Creates a funnel series for use in a [[SlicedChart]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/} for more info\n * @important\n */\nexport class FunnelSeries extends PercentSeries {\n\n\t/**\n\t * A chart series is attached to.\n\t */\n\tdeclare public chart: SlicedChart | undefined;\n\n\tprotected _tag = \"funnel\";\n\n\tdeclare public _sliceType: FunnelSlice;\n\tdeclare public _labelType: Label;\n\tdeclare public _tickType: Tick;\n\n\tprotected _makeSlices(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => FunnelSlice.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.slices.template.get(\"themeTags\", []), [this._tag, \"series\", \"slice\", this.get(\"orientation\")])\n\t\t\t}, this.slices.template)\n\t\t);\n\t}\n\n\tprotected _makeLabels(): ListTemplate<this[\"_labelType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Label.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [this._tag, \"series\", \"label\", this.get(\"orientation\")])\n\t\t\t}, this.labels.template)\n\t\t);\n\t}\n\n\tprotected _makeTicks(): ListTemplate<this[\"_tickType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Tick.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.ticks.template.get(\"themeTags\", []), [this._tag, \"series\", \"tick\", this.get(\"orientation\")])\n\t\t\t}, this.ticks.template)\n\t\t);\n\t}\n\n\t/**\n\t * A [[ListTemplate]] of all slice links in series.\n\t *\n\t * `links.template` can also be used to configure slice links.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Slice_links} for more info\n\t */\n\tpublic readonly links: ListTemplate<this[\"_sliceType\"]> = this._makeLinks();\n\n\tprotected _makeLinks(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => FunnelSlice.new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.links.template.get(\"themeTags\", []), [this._tag, \"series\", \"link\", this.get(\"orientation\")])\n\t\t\t}, this.links.template),\n\t\t);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLink(dataItem: DataItem<this[\"_dataItemSettings\"]>): this[\"_sliceType\"] {\n\t\tconst link = this.slicesContainer.children.push(this.links.make());\n\t\tlink._setDataItem(dataItem);\n\t\tdataItem.set(\"link\", link);\n\t\tthis.links.push(link);\n\t\treturn link;\n\t}\n\n\n\t/**\n\t * Use this method to create an instance of this class.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/getting-started/#New_element_syntax} for more info\n\t * @param root Root element\n\t * @param settings Settings\n\t * @param template Template\n\t * @return Instantiated object\n\t */\n\tpublic static new(root: Root, settings: FunnelSeries[\"_settings\"], template?: Template<FunnelSeries>): FunnelSeries {\n\t\tconst x = new FunnelSeries(root, settings, true, template);\n\t\tx._afterNew();\n\t\treturn x;\n\t}\n\n\tpublic static className: string = \"FunnelSeries\";\n\tpublic static classNames: Array<string> = PercentSeries.classNames.concat([FunnelSeries.className]);\n\n\tdeclare public _settings: IFunnelSeriesSettings;\n\tdeclare public _privateSettings: IFunnelSeriesPrivate;\n\tdeclare public _dataItemSettings: IFunnelSeriesDataItem;\n\n\tprotected _total: number = 0;\n\tprotected _count: number = 0;\n\tprotected _nextCoord: number = 0;\n\n\tprotected _opposite: boolean = false;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tconst slicesContainer = this.slicesContainer;\n\t\tslicesContainer.setAll({ isMeasured: true, position: \"relative\", width: percent(100), height: percent(100) });\n\t\tslicesContainer.onPrivate(\"width\", () => {\n\t\t\tthis.markDirtySize();\n\t\t})\n\n\t\tslicesContainer.onPrivate(\"height\", () => {\n\t\t\tthis.markDirtySize();\n\t\t})\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tthis.set(\"layout\", this._root.horizontalLayout);\n\t\t}\n\t\telse {\n\t\t\tthis.set(\"layout\", this._root.verticalLayout);\n\t\t}\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst slice = this.makeSlice(dataItem);\n\n\t\tslice._setDataItem(dataItem);\n\n\t\tdataItem.set(\"slice\", slice);\n\n\t\tthis.makeLink(dataItem);\n\t\tconst label = this.makeLabel(dataItem);\n\n\t\tlabel.on(\"x\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tlabel.on(\"y\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tthis.makeTick(dataItem);\n\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tlabel.markDirty();\n\t\t})\n\n\t\tslice.events.on(\"boundschanged\", () => {\n\t\t\tconst dataItem = slice.dataItem;\n\t\t\tif (dataItem) {\n\t\t\t\tthis._updateTick(dataItem as any);\n\t\t\t}\n\t\t})\n\t}\n\n\n\tpublic _updateChildren() {\n\t\tthis._opposite = false;\n\t\tif (this.children.indexOf(this.labelsContainer) == 0) {\n\t\t\tthis._opposite = true;\n\t\t}\n\n\t\tlet total = 0;\n\t\tlet count = 0;\n\n\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\tconst value = dataItem.get(\"value\");\n\t\t\tif ($type.isNumber(value)) {\n\t\t\t\tcount++;\n\t\t\t\tif (value > 0) {\n\t\t\t\t\ttotal += Math.abs(dataItem.get(\"valueWorking\", value) / value);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (this.get(\"ignoreZeroValues\", false)) {\n\t\t\t\t\t\tcount--;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (dataItem.isHidden()) {\n\t\t\t\t\t\t\tcount--;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\ttotal += 1;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\tthis._total = 1 / count * total;\n\t\tthis._count = count;\n\n\t\tif (this.isDirty(\"alignLabels\")) {\n\t\t\tthis._fixLayout();\n\t\t}\n\n\t\tif (this._total > 0 && (this._valuesDirty || this._sizeDirty)) {\n\n\t\t\tconst slicesContainer = this.slicesContainer;\n\n\t\t\tlet h: number;\n\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\th = slicesContainer.innerHeight();\n\t\t\t}\n\t\t\telse {\n\t\t\t\th = slicesContainer.innerWidth();\n\t\t\t}\n\n\t\t\tthis._nextCoord = this.get(\"startLocation\", 0) * h;\n\n\t\t\tthis.markDirtyBounds();\n\n\t\t\tlet i = 0;\n\t\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\t\tthis.updateLegendValue(dataItem);\n\n\t\t\t\tdataItem.set(\"index\", i);\n\t\t\t\ti++;\n\n\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\tconst tick = dataItem.get(\"tick\");\n\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\tconst color = dataItem.get(\"fill\");\n\n\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\tslice._setDefault(\"stroke\", color);\n\t\t\t\tlink._setDefault(\"fill\", color);\n\t\t\t\tlink._setDefault(\"stroke\", color);\n\n\t\t\t\tconst value = dataItem.get(\"value\");\n\t\t\t\tif ($type.isNumber(value)) {\n\t\t\t\t\tif (value == 0 && this.get(\"ignoreZeroValues\")) {\n\t\t\t\t\t\tslice.setPrivate(\"visible\", false);\n\t\t\t\t\t\ttick.setPrivate(\"visible\", false);\n\t\t\t\t\t\tlabel.setPrivate(\"visible\", false);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tslice.setPrivate(\"visible\", true);\n\t\t\t\t\t\ttick.setPrivate(\"visible\", true);\n\t\t\t\t\t\tlabel.setPrivate(\"visible\", true);\n\n\t\t\t\t\t\tthis.decorateSlice(dataItem);\n\n\t\t\t\t\t\tif (this.isLast(dataItem)) {\n\t\t\t\t\t\t\tlink.setPrivate(\"visible\", false);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (!dataItem.isHidden()) {\n\t\t\t\t\t\t\tlink.setPrivate(\"visible\", true);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t\tsuper._updateChildren();\n\t}\n\n\tprotected _fixLayout() {\n\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst labelsContainer = this.labelsContainer;\n\t\tconst labelsTemplate = this.labels.template;\n\n\t\tif (this.get(\"alignLabels\")) {\n\t\t\tlabelsContainer.set(\"position\", \"relative\");\n\t\t\tlabelsContainer.setAll({ isMeasured: true });\n\t\t\tif (orientation == \"vertical\") {\n\t\t\t\tthis.set(\"layout\", this._root.horizontalLayout);\n\t\t\t\tlabelsTemplate.setAll({ centerX: p100, x: p100 });\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.set(\"layout\", this._root.verticalLayout);\n\t\t\t\tlabelsTemplate.setAll({ centerX: 0, x: 0 });\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tlabelsContainer.setAll({ isMeasured: false, position: \"absolute\" });\n\t\t\tif (orientation == \"vertical\") {\n\t\t\t\tlabelsContainer.setAll({ x: p50 });\n\t\t\t\tlabelsTemplate.setAll({ centerX: p50, x: 0 });\n\t\t\t}\n\t\t\telse {\n\t\t\t\tlabelsContainer.setAll({ y: p50 });\n\t\t\t\tlabelsTemplate.setAll({ centerX: p50, y: 0 });\n\t\t\t}\n\t\t}\n\t\tthis.markDirtySize();\n\t}\n\n\tprotected getNextValue(dataItem: DataItem<this[\"_dataItemSettings\"]>): number {\n\t\tlet index = dataItem.get(\"index\");\n\t\tlet nextValue = dataItem.get(\"valueWorking\", 0);\n\t\tif (index < this.dataItems.length - 1) {\n\t\t\tlet nextItem = this.dataItems[index + 1];\n\t\t\tnextValue = nextItem.get(\"valueWorking\", 0);\n\n\t\t\tif (nextItem.isHidden() || (nextItem.get(\"value\") == 0 && this.get(\"ignoreZeroValues\"))) {\n\t\t\t\treturn this.getNextValue(nextItem);\n\t\t\t}\n\t\t}\n\t\treturn nextValue;\n\t}\n\n\tprotected isLast(dataItem: DataItem<this[\"_dataItemSettings\"]>): boolean {\n\t\tlet index = dataItem.get(\"index\");\n\t\tif (index == this.dataItems.length - 1) {\n\t\t\treturn true;\n\t\t}\n\t\telse {\n\t\t\tfor (let i = index + 1; i < this.dataItems.length; i++) {\n\t\t\t\tif (!this.dataItems[i].isHidden()) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tprotected decorateSlice(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst orientation = this.get(\"orientation\");\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tconst label = dataItem.get(\"label\");\n\t\tconst link = dataItem.get(\"link\");\n\n\t\tconst slicesContainer = this.slicesContainer;\n\n\t\tlet maxWidth = slicesContainer.innerWidth();\n\t\tlet maxHeight = slicesContainer.innerHeight();\n\n\t\tlet maxSize = maxWidth;\n\t\tif (orientation == \"horizontal\") {\n\t\t\tmaxSize = maxHeight;\n\t\t}\n\n\t\tconst nextValue = this.getNextValue(dataItem);\n\t\tconst value = dataItem.get(\"value\", 0);\n\t\tconst workingValue = Math.abs(dataItem.get(\"valueWorking\", value));\n\t\tconst bottomRatio = this.get(\"bottomRatio\", 0);\n\t\tconst valueHigh = this.getPrivate(\"valueHigh\", 0);\n\n\n\t\tlet d = 1;\n\t\tif (value != 0) {\n\t\t\td = workingValue / Math.abs(value);\n\t\t}\n\t\telse {\n\t\t\tif (dataItem.isHidden()) {\n\t\t\t\td = 0.000001;\n\t\t\t}\n\t\t}\n\n\t\tif (this._nextCoord == Infinity) {\n\t\t\tthis._nextCoord = 0;\n\t\t}\n\n\t\tlet topWidth = workingValue / valueHigh * maxSize;\n\t\tlet bottomWidth = (workingValue - (workingValue - nextValue) * bottomRatio) / valueHigh * maxSize;\n\n\t\tslice.setAll({ topWidth, bottomWidth, orientation });\n\t\tlink.setAll({ topWidth: bottomWidth, bottomWidth: (workingValue - (workingValue - nextValue)) / valueHigh * maxSize, orientation });\n\n\t\tconst startLocation = this.get(\"startLocation\", 0);\n\t\tconst endLocation = this.get(\"endLocation\", 1);\n\n\t\tif (orientation == \"vertical\") {\n\n\t\t\tlet linkHeight = link.height() * d;\n\n\t\t\tmaxHeight = maxHeight * (endLocation - startLocation) + linkHeight;\n\n\t\t\tslice.set(\"y\", this._nextCoord);\n\n\t\t\tlet height = Math.min(100000, Math.max(0, maxHeight / this._count * d / this._total - linkHeight));\n\n\t\t\tslice.setAll({ height, x: maxWidth / 2 });\n\t\t\tlet labelY = this._nextCoord + height / 2;\n\t\t\tlabel.set(\"y\", labelY);\n\n\t\t\tthis._nextCoord += height + linkHeight;\n\t\t\tlink.setAll({ y: this._nextCoord - linkHeight, x: maxWidth / 2 });\n\t\t}\n\t\telse {\n\t\t\tlet linkHeight = link.width() * d;\n\n\t\t\tmaxWidth = maxWidth * (endLocation - startLocation) + linkHeight;\n\n\t\t\tslice.set(\"x\", this._nextCoord);\n\n\t\t\tlet width = Math.min(100000, Math.max(0, maxWidth / this._count * d / this._total - linkHeight));\n\n\t\t\tslice.setAll({ width, y: maxHeight / 2 });\n\t\t\tconst labelX = this._nextCoord + width / 2;\n\t\t\tlabel.set(\"x\", labelX);\n\n\t\t\tthis._nextCoord += width + linkHeight;\n\t\t\tlink.setAll({ x: this._nextCoord - linkHeight, y: maxHeight / 2 });\n\t\t}\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tdataItem.get(\"link\").hide(duration);\n\t\treturn super.hideDataItem(dataItem, duration)\n\t}\n\n\t/**\n\t * Shows series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tdataItem.get(\"link\").show(duration);\n\t\treturn super.showDataItem(dataItem, duration)\n\t}\n\n\tprotected _updateTick(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tif (this.get(\"alignLabels\")) {\n\t\t\tconst tick = dataItem.get(\"tick\");\n\t\t\tconst label = dataItem.get(\"label\");\n\t\t\tconst slice = dataItem.get(\"slice\");\n\n\t\t\tif (tick && slice && label) {\n\n\t\t\t\tconst labelsContainer = this.labelsContainer;\n\t\t\t\tconst slicesContainer = this.slicesContainer;\n\t\t\t\tlet tickLocation = tick.get(\"location\", 0.5);\n\n\t\t\t\tconst lcw = labelsContainer.width();\n\t\t\t\tconst lch = labelsContainer.height();\n\n\t\t\t\tconst pl = labelsContainer.get(\"paddingLeft\", 0);\n\t\t\t\tconst pr = labelsContainer.get(\"paddingRight\", 0);\n\t\t\t\tconst pt = labelsContainer.get(\"paddingTop\", 0);\n\t\t\t\tconst pb = labelsContainer.get(\"paddingBottom\", 0);\n\n\t\t\t\tlet p0 = { x: 0, y: 0 };\n\t\t\t\tlet p1 = { x: 0, y: 0 };\n\t\t\t\tlet p2 = { x: 0, y: 0 };\n\n\t\t\t\tif (this._opposite) {\n\t\t\t\t\ttickLocation = 1 - tickLocation;\n\t\t\t\t}\n\n\t\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\t\tp0 = slice.getPoint(tickLocation, 0.5);\n\t\t\t\t\tp0.x += slice.x() + slicesContainer.x();\n\t\t\t\t\tp0.y += slice.y() + slicesContainer.y();\n\n\t\t\t\t\tif (this._opposite) {\n\t\t\t\t\t\tp1.x = lcw;\n\t\t\t\t\t\tp1.y = label.y();\n\n\t\t\t\t\t\tp2.x = lcw - pl;\n\t\t\t\t\t\tp2.y = p1.y;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tp1.x = slicesContainer.x() + slicesContainer.width();\n\t\t\t\t\t\tp1.y = label.y();\n\n\t\t\t\t\t\tp2.x = p1.x + lcw - label.width() - pr;\n\t\t\t\t\t\tp2.y = p1.y;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tp0 = slice.getPoint(0.5, tickLocation);\n\t\t\t\t\tp0.x += slice.x() + slicesContainer.x();\n\t\t\t\t\tp0.y += slice.y() + slicesContainer.y();\n\n\t\t\t\t\tif (this._opposite) {\n\t\t\t\t\t\tp1.y = lch;\n\t\t\t\t\t\tp1.x = label.x();\n\n\t\t\t\t\t\tp2.y = lch - pt;\n\t\t\t\t\t\tp2.x = p1.x;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tp1.y = slicesContainer.y() + slicesContainer.height();\n\t\t\t\t\t\tp1.x = label.x();\n\n\t\t\t\t\t\tp2.y = p1.y + lch - label.height() - pb;\n\t\t\t\t\t\tp2.x = p1.x;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttick.set(\"points\", [p0, p1, p2]);\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 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"]}
@@ -60,6 +60,11 @@ export interface IHierarchySettings extends ISeriesSettings {
60
60
  * disabled (collapsed).
61
61
  */
62
62
  disabledField?: string;
63
+ /**
64
+ * A field in data that holds color used for fills for various elements, such
65
+ * as nodes.
66
+ */
67
+ fillField?: string;
63
68
  /**
64
69
  * A [[ColorSet]] to use when asigning colors for nodes.
65
70
  *
@@ -171,6 +176,7 @@ export declare abstract class Hierarchy extends Series {
171
176
  protected _updateNode(_dataItem: DataItem<this["_dataItemSettings"]>): void;
172
177
  _getDataItemById(dataItems: Array<DataItem<this["_dataItemSettings"]>>, id: string): DataItem<this["_dataItemSettings"]> | undefined;
173
178
  protected _handleBullets(dataItems: Array<DataItem<this["_dataItemSettings"]>>): void;
179
+ protected _onDataClear(): void;
174
180
  protected processDataItem(dataItem: DataItem<this["_dataItemSettings"]>): void;
175
181
  protected _processDataItem(_dataItem: DataItem<this["_dataItemSettings"]>): void;
176
182
  protected _updateValues(d3HierarchyNode: d3hierarchy.HierarchyNode<IHierarchyDataObject>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"Hierarchy.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Hierarchy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Hierarchy.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Hierarchy.ts"],"names":[],"mappings":"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"}