@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.
- package/.internal/charts/flow/ChordNodes.d.ts.map +1 -1
- package/.internal/charts/flow/ChordNodes.js +3 -1
- package/.internal/charts/flow/ChordNodes.js.map +1 -1
- package/.internal/charts/flow/FlowNodes.d.ts +19 -1
- package/.internal/charts/flow/FlowNodes.d.ts.map +1 -1
- package/.internal/charts/flow/FlowNodes.js +21 -9
- package/.internal/charts/flow/FlowNodes.js.map +1 -1
- package/.internal/charts/flow/SankeyNodes.d.ts.map +1 -1
- package/.internal/charts/flow/SankeyNodes.js +3 -3
- package/.internal/charts/flow/SankeyNodes.js.map +1 -1
- package/.internal/charts/funnel/FunnelSeries.d.ts.map +1 -1
- package/.internal/charts/funnel/FunnelSeries.js +1 -3
- package/.internal/charts/funnel/FunnelSeries.js.map +1 -1
- package/.internal/charts/hierarchy/Hierarchy.d.ts +6 -0
- package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
- package/.internal/charts/hierarchy/Hierarchy.js +15 -3
- package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
- package/.internal/charts/percent/PercentSeries.d.ts +29 -0
- package/.internal/charts/percent/PercentSeries.d.ts.map +1 -1
- package/.internal/charts/percent/PercentSeries.js +31 -5
- package/.internal/charts/percent/PercentSeries.js.map +1 -1
- package/.internal/charts/pie/PieSeries.d.ts.map +1 -1
- package/.internal/charts/pie/PieSeries.js +1 -3
- package/.internal/charts/pie/PieSeries.js.map +1 -1
- package/.internal/charts/xy/series/XYSeries.d.ts +1 -1
- package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/XYSeries.js +37 -42
- package/.internal/charts/xy/series/XYSeries.js.map +1 -1
- package/.internal/core/render/Component.d.ts +2 -4
- package/.internal/core/render/Component.d.ts.map +1 -1
- package/.internal/core/render/Component.js +26 -73
- package/.internal/core/render/Component.js.map +1 -1
- package/.internal/core/render/Tooltip.d.ts.map +1 -1
- package/.internal/core/render/Tooltip.js +2 -20
- package/.internal/core/render/Tooltip.js.map +1 -1
- package/.internal/core/render/backend/CanvasRenderer.d.ts.map +1 -1
- package/.internal/core/render/backend/CanvasRenderer.js +4 -0
- package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
- package/CHANGELOG.md +16 -1
- package/examples/javascript/flow-chord/package.json +1 -1
- package/examples/javascript/flow-chord-directed/package.json +1 -1
- package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
- package/examples/javascript/flow-sankey/package.json +1 -1
- package/examples/javascript/gauge/package.json +1 -1
- package/examples/javascript/gauge-bands/package.json +1 -1
- package/examples/javascript/hierarchy-force-directed/package.json +1 -1
- package/examples/javascript/hierarchy-pack/package.json +1 -1
- package/examples/javascript/hierarchy-partition/package.json +1 -1
- package/examples/javascript/hierarchy-sunburst/package.json +1 -1
- package/examples/javascript/hierarchy-tree/package.json +1 -1
- package/examples/javascript/hierarchy-treemap/package.json +1 -1
- package/examples/javascript/map-animating-along-lines/package.json +1 -1
- package/examples/javascript/map-day-and-night/package.json +1 -1
- package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/javascript/map-with-bubbles/package.json +1 -1
- package/examples/javascript/map-zoom-to-country/package.json +1 -1
- package/examples/javascript/misc-40-charts/package.json +1 -1
- package/examples/javascript/misc-microchart-grid/package.json +1 -1
- package/examples/javascript/pie-chart/package.json +1 -1
- package/examples/javascript/pie-donut-chart/package.json +1 -1
- package/examples/javascript/pie-variable-radius/package.json +1 -1
- package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
- package/examples/javascript/radar-heat-map/package.json +1 -1
- package/examples/javascript/radar-line/package.json +1 -1
- package/examples/javascript/radar-time-line/package.json +1 -1
- package/examples/javascript/sliced-funnel/package.json +1 -1
- package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/javascript/sliced-pyramid/package.json +1 -1
- package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
- package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
- package/examples/javascript/xy-bubble/package.json +1 -1
- package/examples/javascript/xy-candlestick/package.json +1 -1
- package/examples/javascript/xy-clustered-column/package.json +1 -1
- package/examples/javascript/xy-column/package.json +1 -1
- package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
- package/examples/javascript/xy-data-grouping/package.json +1 -1
- package/examples/javascript/xy-draggable-range/package.json +1 -1
- package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
- package/examples/javascript/xy-dumbbell plot/package.json +1 -1
- package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
- package/examples/javascript/xy-line/package.json +1 -1
- package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
- package/examples/javascript/xy-live-data/package.json +1 -1
- package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
- package/examples/javascript/xy-ohlc/package.json +1 -1
- package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
- package/examples/javascript/xy-smoothed-line/package.json +1 -1
- package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
- package/examples/javascript/xy-stacked-column/package.json +1 -1
- package/examples/javascript/xy-stacked-step/package.json +1 -1
- package/examples/javascript/xy-stock/package.json +1 -1
- package/examples/javascript/xy-stock-comparing/package.json +1 -1
- package/examples/typescript/flow-chord/package.json +1 -1
- package/examples/typescript/flow-chord-directed/package.json +1 -1
- package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
- package/examples/typescript/flow-sankey/package.json +1 -1
- package/examples/typescript/gauge/package.json +1 -1
- package/examples/typescript/gauge-bands/package.json +1 -1
- package/examples/typescript/hierarchy-force-directed/package.json +1 -1
- package/examples/typescript/hierarchy-pack/package.json +1 -1
- package/examples/typescript/hierarchy-partition/package.json +1 -1
- package/examples/typescript/hierarchy-sunburst/package.json +1 -1
- package/examples/typescript/hierarchy-tree/package.json +1 -1
- package/examples/typescript/hierarchy-treemap/package.json +1 -1
- package/examples/typescript/map-animating-along-lines/package.json +1 -1
- package/examples/typescript/map-day-and-night/package.json +1 -1
- package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/typescript/map-with-bubbles/package.json +1 -1
- package/examples/typescript/map-zoom-to-country/package.json +1 -1
- package/examples/typescript/misc-40-charts/package.json +1 -1
- package/examples/typescript/misc-microchart-grid/package.json +1 -1
- package/examples/typescript/pie-chart/package.json +1 -1
- package/examples/typescript/pie-donut-chart/package.json +1 -1
- package/examples/typescript/pie-variable-radius/package.json +1 -1
- package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
- package/examples/typescript/radar-heat-map/package.json +1 -1
- package/examples/typescript/radar-line/package.json +1 -1
- package/examples/typescript/radar-time-line/package.json +1 -1
- package/examples/typescript/sliced-funnel/package.json +1 -1
- package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/typescript/sliced-pyramid/package.json +1 -1
- package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
- package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
- package/examples/typescript/xy-bubble/package.json +1 -1
- package/examples/typescript/xy-candlestick/package.json +1 -1
- package/examples/typescript/xy-clustered-column/package.json +1 -1
- package/examples/typescript/xy-column/package.json +1 -1
- package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
- package/examples/typescript/xy-data-grouping/package.json +1 -1
- package/examples/typescript/xy-draggable-range/package.json +1 -1
- package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
- package/examples/typescript/xy-dumbbell plot/package.json +1 -1
- package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
- package/examples/typescript/xy-line/package.json +1 -1
- package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
- package/examples/typescript/xy-live-data/package.json +1 -1
- package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
- package/examples/typescript/xy-ohlc/package.json +1 -1
- package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
- package/examples/typescript/xy-smoothed-line/package.json +1 -1
- package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
- package/examples/typescript/xy-stacked-column/package.json +1 -1
- package/examples/typescript/xy-stacked-step/package.json +1 -1
- package/examples/typescript/xy-stock/package.json +1 -1
- package/examples/typescript/xy-stock-comparing/package.json +1 -1
- 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;
|
|
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.
|
|
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":";AAMA,OAAO,EAAE,SAAS,EAA+E,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;AAE5D,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAyB9C;;GAEG;AACH;IAAgC,8BAAS;IAAzC;QAAA,
|
|
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;
|
|
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.
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
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.
|
|
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;
|
|
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":";AAMA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,SAAS,EAA+E,MAAM,aAAa,CAAC;AACrH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAetE;;GAEG;AACH;IAAiC,+BAAS;IAA1C;QAAA,
|
|
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":"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"}
|
|
@@ -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 =
|
|
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":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACnH,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAKpD,OAAO,KAAK,WAAW,MAAM,cAAc,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAClC,QAAQ,CAAC,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAA;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IAC1D,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC9C,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;IACrB,MAAM,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,KAAK,CAAC;IACZ,QAAQ,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,eAAe,EAAE,WAAW,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;CACjE;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IAE1D;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,MAAM,CAAC,EAAE,QAAQ,CAAC;IAElB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAEhD;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAEzB;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IAExD;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAEjB;AAED,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACtD,gBAAgB,EAAE;QACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAA;KACvC,CAAC;CACF;AAED;;;;GAIG;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,cAAc,YAAwE;IAE/F,SAAS,EAAE,WAAW,CAAC,aAAa,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;IAEvE,SAAS,EAAE,oBAAoB,GAAG,SAAS,CAAC;IAEnD,SAAS,CAAC,MAAM,EAAE,MAAM,CAAK;IAE7B,SAAS,CAAC,IAAI,EAAE,MAAM,CAAe;IAErC;;;;OAIG;IACH,SAAgB,KAAK,EAAE,YAAY,CAAC,aAAa,CAAC,CAKhD;IAEF;;OAEG;IACI,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,aAAa;IA2B7E;;;;OAIG;IACH,SAAgB,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAKzC;IAEK,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;IAE7C,SAAS,CAAC,SAAS;IAQZ,gBAAgB;IAiChB,QAAQ;IAOf,SAAS,CAAC,cAAc;IAMxB,SAAS,CAAC,YAAY,CAAC,aAAa,EAAE,WAAW,CAAC,aAAa,CAAC,oBAAoB,CAAC;IAmBrF,SAAS,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAI7D,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,SAAS;IAsB3I,SAAS,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAoB9E,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IA0DvE,SAAS,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAIzE,SAAS,CAAC,aAAa,CAAC,eAAe,EAAE,WAAW,CAAC,aAAa,CAAC,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"Hierarchy.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/hierarchy/Hierarchy.ts"],"names":[],"mappings":"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"}
|