@amcharts/amcharts5 5.10.5 → 5.10.7
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/ArcDiagram.d.ts.map +1 -1
- package/.internal/charts/flow/ArcDiagram.js +1 -1
- package/.internal/charts/flow/ArcDiagram.js.map +1 -1
- package/.internal/charts/flow/ArcDiagramNodes.d.ts.map +1 -1
- package/.internal/charts/flow/ArcDiagramNodes.js +2 -2
- package/.internal/charts/flow/ArcDiagramNodes.js.map +1 -1
- package/.internal/charts/flow/Chord.d.ts.map +1 -1
- package/.internal/charts/flow/Chord.js +1 -1
- package/.internal/charts/flow/Chord.js.map +1 -1
- package/.internal/charts/flow/ChordDirected.d.ts.map +1 -1
- package/.internal/charts/flow/ChordDirected.js +1 -1
- package/.internal/charts/flow/ChordDirected.js.map +1 -1
- package/.internal/charts/flow/ChordNodes.d.ts.map +1 -1
- package/.internal/charts/flow/ChordNodes.js +2 -2
- package/.internal/charts/flow/ChordNodes.js.map +1 -1
- package/.internal/charts/flow/FlowNodes.d.ts.map +1 -1
- package/.internal/charts/flow/FlowNodes.js +2 -2
- package/.internal/charts/flow/FlowNodes.js.map +1 -1
- package/.internal/charts/flow/Sankey.d.ts.map +1 -1
- package/.internal/charts/flow/Sankey.js +1 -1
- package/.internal/charts/flow/Sankey.js.map +1 -1
- package/.internal/charts/flow/SankeyNodes.d.ts.map +1 -1
- package/.internal/charts/flow/SankeyNodes.js +1 -1
- 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 -1
- package/.internal/charts/funnel/FunnelSeries.js.map +1 -1
- package/.internal/charts/hierarchy/BreadcrumbBar.d.ts.map +1 -1
- package/.internal/charts/hierarchy/BreadcrumbBar.js +2 -2
- package/.internal/charts/hierarchy/BreadcrumbBar.js.map +1 -1
- package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
- package/.internal/charts/hierarchy/Hierarchy.js +4 -4
- package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
- package/.internal/charts/hierarchy/HierarchyLink.d.ts +1 -1
- package/.internal/charts/hierarchy/HierarchyLink.d.ts.map +1 -1
- package/.internal/charts/hierarchy/HierarchyLink.js +2 -2
- package/.internal/charts/hierarchy/HierarchyLink.js.map +1 -1
- package/.internal/charts/hierarchy/LinkedHierarchy.d.ts.map +1 -1
- package/.internal/charts/hierarchy/LinkedHierarchy.js +8 -8
- package/.internal/charts/hierarchy/LinkedHierarchy.js.map +1 -1
- package/.internal/charts/hierarchy/Pack.d.ts.map +1 -1
- package/.internal/charts/hierarchy/Pack.js +2 -2
- package/.internal/charts/hierarchy/Pack.js.map +1 -1
- package/.internal/charts/hierarchy/Partition.d.ts.map +1 -1
- package/.internal/charts/hierarchy/Partition.js +2 -2
- package/.internal/charts/hierarchy/Partition.js.map +1 -1
- package/.internal/charts/hierarchy/Sunburst.d.ts.map +1 -1
- package/.internal/charts/hierarchy/Sunburst.js +4 -4
- package/.internal/charts/hierarchy/Sunburst.js.map +1 -1
- package/.internal/charts/hierarchy/Treemap.d.ts.map +1 -1
- package/.internal/charts/hierarchy/Treemap.js +2 -2
- package/.internal/charts/hierarchy/Treemap.js.map +1 -1
- package/.internal/charts/hierarchy/VoronoiTreemap.d.ts.map +1 -1
- package/.internal/charts/hierarchy/VoronoiTreemap.js +2 -2
- package/.internal/charts/hierarchy/VoronoiTreemap.js.map +1 -1
- package/.internal/charts/map/MapLineSeries.d.ts.map +1 -1
- package/.internal/charts/map/MapLineSeries.js +1 -1
- package/.internal/charts/map/MapLineSeries.js.map +1 -1
- package/.internal/charts/map/MapPolygonSeries.d.ts.map +1 -1
- package/.internal/charts/map/MapPolygonSeries.js +1 -1
- package/.internal/charts/map/MapPolygonSeries.js.map +1 -1
- package/.internal/charts/percent/PercentSeries.d.ts.map +1 -1
- package/.internal/charts/percent/PercentSeries.js +3 -3
- package/.internal/charts/percent/PercentSeries.js.map +1 -1
- package/.internal/charts/radar/AxisRendererCircular.d.ts.map +1 -1
- package/.internal/charts/radar/AxisRendererCircular.js +4 -4
- package/.internal/charts/radar/AxisRendererCircular.js.map +1 -1
- package/.internal/charts/radar/AxisRendererRadial.d.ts.map +1 -1
- package/.internal/charts/radar/AxisRendererRadial.js +2 -2
- package/.internal/charts/radar/AxisRendererRadial.js.map +1 -1
- package/.internal/charts/radar/RadarColumnSeries.d.ts.map +1 -1
- package/.internal/charts/radar/RadarColumnSeries.js +2 -2
- package/.internal/charts/radar/RadarColumnSeries.js.map +1 -1
- package/.internal/charts/stock/StockChart.d.ts +16 -1
- package/.internal/charts/stock/StockChart.d.ts.map +1 -1
- package/.internal/charts/stock/StockChart.js +17 -2
- package/.internal/charts/stock/StockChart.js.map +1 -1
- package/.internal/charts/stock/StockChartDefaultTheme.d.ts.map +1 -1
- package/.internal/charts/stock/StockChartDefaultTheme.js +6 -5
- package/.internal/charts/stock/StockChartDefaultTheme.js.map +1 -1
- package/.internal/charts/stock/StockLegend.d.ts.map +1 -1
- package/.internal/charts/stock/StockLegend.js +4 -4
- package/.internal/charts/stock/StockLegend.js.map +1 -1
- package/.internal/charts/stock/drawing/DrawingSeries.d.ts +1 -0
- package/.internal/charts/stock/drawing/DrawingSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/DrawingSeries.js +20 -9
- package/.internal/charts/stock/drawing/DrawingSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/EllipseSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/EllipseSeries.js +2 -1
- package/.internal/charts/stock/drawing/EllipseSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/FibonacciSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/FibonacciSeries.js +2 -2
- package/.internal/charts/stock/drawing/FibonacciSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/IconSeries.d.ts +1 -1
- package/.internal/charts/stock/drawing/IconSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/IconSeries.js +14 -2
- package/.internal/charts/stock/drawing/IconSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/LabelSeries.d.ts +2 -1
- package/.internal/charts/stock/drawing/LabelSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/LabelSeries.js +7 -1
- package/.internal/charts/stock/drawing/LabelSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/LineArrowSeries.d.ts +6 -2
- package/.internal/charts/stock/drawing/LineArrowSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/LineArrowSeries.js +110 -24
- package/.internal/charts/stock/drawing/LineArrowSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/Measure.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/Measure.js +1 -1
- package/.internal/charts/stock/drawing/Measure.js.map +1 -1
- package/.internal/charts/stock/drawing/SimpleLineSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/SimpleLineSeries.js +2 -2
- package/.internal/charts/stock/drawing/SimpleLineSeries.js.map +1 -1
- package/.internal/charts/stock/indicators/Indicator.d.ts +8 -0
- package/.internal/charts/stock/indicators/Indicator.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/Indicator.js.map +1 -1
- package/.internal/charts/stock/toolbar/DrawingControl.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/DrawingControl.js +1 -0
- package/.internal/charts/stock/toolbar/DrawingControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/IndicatorControl.js +1 -1
- package/.internal/charts/stock/toolbar/IndicatorControl.js.map +1 -1
- package/.internal/charts/venn/Venn.d.ts.map +1 -1
- package/.internal/charts/venn/Venn.js +2 -2
- package/.internal/charts/venn/Venn.js.map +1 -1
- package/.internal/charts/wordcloud/WordCloud.d.ts.map +1 -1
- package/.internal/charts/wordcloud/WordCloud.js +1 -1
- package/.internal/charts/wordcloud/WordCloud.js.map +1 -1
- package/.internal/charts/xy/axes/AxisBullet.d.ts +1 -1
- package/.internal/charts/xy/axes/AxisBullet.d.ts.map +1 -1
- package/.internal/charts/xy/axes/AxisBullet.js +2 -2
- package/.internal/charts/xy/axes/AxisBullet.js.map +1 -1
- package/.internal/charts/xy/axes/AxisRenderer.d.ts.map +1 -1
- package/.internal/charts/xy/axes/AxisRenderer.js +8 -8
- package/.internal/charts/xy/axes/AxisRenderer.js.map +1 -1
- package/.internal/charts/xy/series/CandlestickSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/CandlestickSeries.js +2 -2
- package/.internal/charts/xy/series/CandlestickSeries.js.map +1 -1
- package/.internal/charts/xy/series/ColumnSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/ColumnSeries.js +2 -2
- package/.internal/charts/xy/series/ColumnSeries.js.map +1 -1
- package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/LineSeries.js +5 -5
- package/.internal/charts/xy/series/LineSeries.js.map +1 -1
- package/.internal/charts/xy/series/OHLCSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/OHLCSeries.js +2 -2
- package/.internal/charts/xy/series/OHLCSeries.js.map +1 -1
- package/.internal/core/Registry.js +1 -1
- package/.internal/core/Registry.js.map +1 -1
- package/.internal/core/Root.d.ts.map +1 -1
- package/.internal/core/Root.js +55 -12
- package/.internal/core/Root.js.map +1 -1
- package/.internal/core/render/Container.d.ts.map +1 -1
- package/.internal/core/render/Container.js +120 -111
- package/.internal/core/render/Container.js.map +1 -1
- package/.internal/core/render/HeatLegend.d.ts.map +1 -1
- package/.internal/core/render/HeatLegend.js +2 -2
- package/.internal/core/render/HeatLegend.js.map +1 -1
- package/.internal/core/render/Legend.d.ts.map +1 -1
- package/.internal/core/render/Legend.js +10 -10
- package/.internal/core/render/Legend.js.map +1 -1
- package/.internal/core/render/Sprite.d.ts +1 -1
- package/.internal/core/render/Sprite.d.ts.map +1 -1
- package/.internal/core/render/Sprite.js.map +1 -1
- package/.internal/core/render/Tooltip.d.ts +1 -1
- package/.internal/core/render/Tooltip.d.ts.map +1 -1
- package/.internal/core/render/Tooltip.js +2 -2
- package/.internal/core/render/Tooltip.js.map +1 -1
- package/.internal/core/util/Entity.d.ts +4 -0
- package/.internal/core/util/Entity.d.ts.map +1 -1
- package/.internal/core/util/Entity.js +10 -1
- package/.internal/core/util/Entity.js.map +1 -1
- package/.internal/core/util/List.d.ts +2 -0
- package/.internal/core/util/List.d.ts.map +1 -1
- package/.internal/core/util/List.js +14 -5
- package/.internal/core/util/List.js.map +1 -1
- package/.internal/core/util/Modal.d.ts +1 -1
- package/.internal/core/util/Modal.d.ts.map +1 -1
- package/.internal/core/util/Modal.js +3 -3
- package/.internal/core/util/Modal.js.map +1 -1
- package/.internal/core/util/Template.d.ts +16 -1
- package/.internal/core/util/Template.d.ts.map +1 -1
- package/.internal/core/util/Template.js +65 -0
- package/.internal/core/util/Template.js.map +1 -1
- package/.internal/plugins/exporting/Annotator.d.ts +1 -1
- package/.internal/plugins/exporting/Annotator.d.ts.map +1 -1
- package/.internal/plugins/exporting/Annotator.js +2 -2
- package/.internal/plugins/exporting/Annotator.js.map +1 -1
- package/CHANGELOG.md +29 -0
- package/examples/javascript/flow-arc-horizontal/package.json +1 -1
- package/examples/javascript/flow-arc-vertical/package.json +1 -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/hierarchy-voronoi-treemap/package.json +1 -1
- package/examples/javascript/jest/package.json +1 -1
- package/examples/javascript/json-pie/package.json +1 -1
- package/examples/javascript/json-xy/package.json +1 -1
- package/examples/javascript/map-animating-along-lines/index.js +1 -1
- package/examples/javascript/map-animating-along-lines/package.json +2 -1
- package/examples/javascript/map-clustered-points/index.js +2 -2
- package/examples/javascript/map-clustered-points/package.json +2 -1
- package/examples/javascript/map-day-and-night/index.js +1 -1
- package/examples/javascript/map-day-and-night/package.json +2 -1
- package/examples/javascript/map-globe-rotate-to-country/index.js +2 -2
- package/examples/javascript/map-globe-rotate-to-country/package.json +2 -1
- package/examples/javascript/map-globe-with-projected-circles/index.js +2 -2
- package/examples/javascript/map-globe-with-projected-circles/package.json +2 -1
- package/examples/javascript/map-with-bubbles/index.js +1 -1
- package/examples/javascript/map-with-bubbles/package.json +2 -1
- package/examples/javascript/map-zoom-to-country/index.js +2 -2
- package/examples/javascript/map-zoom-to-country/package.json +2 -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/stock-chart/package.json +1 -1
- package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
- package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
- package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
- package/examples/javascript/stock-chart-intraday/package.json +1 -1
- package/examples/javascript/stock-chart-live/package.json +1 -1
- package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
- package/examples/javascript/venn-diagram/package.json +1 -1
- package/examples/javascript/wordcloud-with-data/package.json +1 -1
- package/examples/javascript/wordcloud-with-text/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-arc-horizontal/package.json +1 -1
- package/examples/typescript/flow-arc-vertical/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/hierarchy-voronoi-treemap/package.json +1 -1
- package/examples/typescript/jest/package.json +1 -1
- package/examples/typescript/json-pie/package.json +1 -1
- package/examples/typescript/json-xy/package.json +1 -1
- package/examples/typescript/map-animating-along-lines/index.ts +1 -1
- package/examples/typescript/map-animating-along-lines/package.json +2 -1
- package/examples/typescript/map-clustered-points/index.ts +2 -2
- package/examples/typescript/map-clustered-points/package.json +2 -1
- package/examples/typescript/map-day-and-night/index.ts +1 -1
- package/examples/typescript/map-day-and-night/package.json +2 -1
- package/examples/typescript/map-globe-rotate-to-country/index.ts +2 -2
- package/examples/typescript/map-globe-rotate-to-country/package.json +2 -1
- package/examples/typescript/map-globe-with-projected-circles/index.ts +2 -2
- package/examples/typescript/map-globe-with-projected-circles/package.json +2 -1
- package/examples/typescript/map-with-bubbles/index.ts +1 -1
- package/examples/typescript/map-with-bubbles/package.json +2 -1
- package/examples/typescript/map-zoom-to-country/index.ts +2 -2
- package/examples/typescript/map-zoom-to-country/package.json +2 -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/stock-chart/package.json +1 -1
- package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
- package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
- package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
- package/examples/typescript/stock-chart-intraday/package.json +1 -1
- package/examples/typescript/stock-chart-live/package.json +1 -1
- package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
- package/examples/typescript/venn-diagram/package.json +1 -1
- package/examples/typescript/wordcloud-with-data/package.json +1 -1
- package/examples/typescript/wordcloud-with-text/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
|
@@ -56,7 +56,7 @@ function modalCSS(element, root, _prefix) {
|
|
|
56
56
|
"display": "inline-block",
|
|
57
57
|
"padding": "1.2em",
|
|
58
58
|
"vertical-align": "middle",
|
|
59
|
-
"text-align": "
|
|
59
|
+
"text-align": "start",
|
|
60
60
|
"white-space": "normal",
|
|
61
61
|
"background": ic.get("background").toCSS(),
|
|
62
62
|
//"border": "1px solid " + ic.get("alternativeBackground")!.toCSS(),
|
|
@@ -236,8 +236,8 @@ export class Modal extends Entity {
|
|
|
236
236
|
/**
|
|
237
237
|
* Disposes modal.
|
|
238
238
|
*/
|
|
239
|
-
|
|
240
|
-
super.
|
|
239
|
+
_dispose() {
|
|
240
|
+
super._dispose();
|
|
241
241
|
const container = this.getPrivate("container");
|
|
242
242
|
if (container.parentElement) {
|
|
243
243
|
container.parentElement.removeChild(container);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Modal.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAkD,MAAM,UAAU,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACnC,OAAO,EAAE,aAAa,EAAa,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAErF,OAAO,KAAK,MAAM,MAAM,SAAS,CAAA;AAGjC;;GAEG;AACH,IAAI,KAAkC,CAAC;AAEvC;;GAEG;AACH,SAAS,QAAQ,CAAC,OAA0B,EAAE,IAAU,EAAE,OAAgB;IACzE,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC;IAChC,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAE,CAAC,KAAK,EAAE,CAAC;IAClD,MAAM,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,KAAK,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,uBAAuB,CAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5D,yDAAyD;IAEzD,IAAI,CAAC,KAAK,EAAE;QACX,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC;YAElC,IAAI,SAAS,CAAC,OAAO,EAAE,YAAY,EAAE;gBACpC,OAAO,EAAE,MAAM;gBACf,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,UAAU;gBACtB,SAAS,EAAE,QAAQ;gBACnB,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE,GAAG;aACX,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,oBAAoB,EAAE;gBAC5C,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,MAAM;gBACf,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,UAAU;gBACtB,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC,KAAK,CAAC,GAAG,CAAC;gBAC9C,SAAS,EAAE,KAAK;aAChB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,oBAAoB,EAAE;gBAC5C,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,MAAM;gBACf,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,UAAU;gBACtB,YAAY,EAAE,QAAQ;gBACtB,aAAa,EAAE,QAAQ;gBACvB,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC,KAAK,CAAC,GAAG,CAAC;gBAC9C,SAAS,EAAE,KAAK;aAChB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,2BAA2B,EAAE;gBACnD,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;gBAChB,gBAAgB,EAAE,QAAQ;gBAC1B,cAAc,EAAE,SAAS;aACzB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,oBAAoB,EAAE;gBAC5C,SAAS,EAAE,cAAc;gBACzB,SAAS,EAAE,OAAO;gBAClB,gBAAgB,EAAE,QAAQ;gBAC1B,YAAY,EAAE,MAAM;gBACpB,aAAa,EAAE,QAAQ;gBACvB,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC,KAAK,EAAE;gBAC3C,oEAAoE;gBACpE,eAAe,EAAE,KAAK;gBACtB,oBAAoB,EAAE,mBAAmB,GAAG,MAAM;gBAClD,YAAY,EAAE,mBAAmB,GAAG,MAAM;gBAC1C,OAAO,EAAE,IAAI;aACb,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,uBAAuB,EAAE;gBAC/C,WAAW,EAAE,KAAK;gBAClB,QAAQ,EAAE,aAAa;aACvB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,kBAAkB,EAAE;gBAC1C,SAAS,EAAE,OAAO;gBAClB,QAAQ,EAAE,OAAO;aACjB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,sBAAsB,EAAE;gBAC9C,SAAS,EAAE,WAAW;aACtB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,0BAA0B,EAAE;gBAClD,SAAS,EAAE,eAAe;gBAC1B,SAAS,EAAE,gBAAgB;aAC3B,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,uBAAuB,EAAE;gBAC/C,SAAS,EAAE,YAAY;gBACvB,SAAS,EAAE,aAAa;aACxB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,2BAA2B,EAAE;gBACnD,gBAAgB,EAAE,QAAQ;aAC1B,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,uGAAuG,EAAE;gBAC/H,QAAQ,EAAE,YAAY,GAAG,MAAM;gBAC/B,eAAe,EAAE,KAAK;gBACtB,SAAS,EAAE,SAAS;gBACpB,QAAQ,EAAE,KAAK;aACf,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,yBAAyB,EAAE;gBACjD,OAAO,EAAE,MAAM;aACf,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE;gBAC3C,aAAa,EAAE,KAAK;gBACpB,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAE,CAAC,KAAK,EAAE;gBAC/C,aAAa,EAAE,KAAK;gBACpB,YAAY,EAAE,QAAQ;gBACtB,iBAAiB,EAAE,MAAM;gBACzB,gBAAgB,EAAE,QAAQ;gBAC1B,QAAQ,EAAE,SAAS;gBACnB,SAAS,EAAE,aAAa;gBACxB,WAAW,EAAE,KAAK;gBAClB,eAAe,EAAE,QAAQ;gBACzB,QAAQ,EAAE,cAAc;gBACxB,QAAQ,EAAE,YAAY,GAAG,EAAE,CAAC,GAAG,CAAC,uBAAuB,CAAE,CAAC,KAAK,EAAE;gBACjE,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAE,CAAC,KAAK,EAAE;aAChD,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,yBAAyB,EAAE;gBACjD,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,sBAAsB,CAAE,CAAC,KAAK,EAAE;aACrD,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,qCAAqC,EAAE;gBAC7D,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,mBAAmB,CAAE,CAAC,KAAK,EAAE;gBAC7C,QAAQ,EAAE,YAAY,GAAG,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAE,CAAC,KAAK,EAAE;gBAC/D,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe,CAAE,CAAC,KAAK,EAAE;aAC9C,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,2CAA2C,EAAE;gBACnE,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,oBAAoB,CAAE,CAAC,KAAK,EAAE;aACnD,EAAE,IAAI,CAAC,KAAK,CAAC;SAEd,CAAC,CAAC;QAEH,KAAK,GAAG,IAAI,eAAe,CAAC,GAAG,EAAE;YAChC,KAAK,GAAG,SAAS,CAAC;YAClB,QAAQ,CAAC,OAAO,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;KACH;IAED,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;AAC1B,CAAC;AAkCD;;;;GAIG;AACH,MAAM,OAAO,KAAM,SAAQ,MAAM;IAQhC,qCAAqC;IAE3B,SAAS;QAClB,qDAAqD;QACrD,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAE7B,WAAW;QACX,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QAE5C,WAAW;QACX,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAE3D,kBAAkB;QAClB,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAChD,SAAS,CAAC,SAAS,GAAG,WAAW,CAAC;QAClC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAExC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,GAAG,mBAAmB,CAAC;QACxC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAEpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE;YACnE,IAAI,CAAC,MAAM,EAAE,CAAC;QACf,CAAC,CAAC,CAAC,CAAC;QAEJ,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,GAAG,mBAAmB,CAAC;QACxC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAEpC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,GAAG,mBAAmB,CAAC;QACxC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAEpC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,IAAI,EAAE;YACT,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;SACzB;QAED,eAAe;QACf,IAAI,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;YACtC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAiB,EAAE,EAAE;gBACvF,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,QAAQ,EAAE;oBACxD,IAAI,CAAC,MAAM,EAAE,CAAC;iBACd;YACF,CAAC,CAAC,CAAC,CAAC;SACJ;IACF,CAAC;IAEM,cAAc;QACpB,KAAK,CAAC,cAAc,EAAE,CAAC;QAEvB,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC5B,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;SAC/D;IACF,CAAC;IAED;;;;OAIG;IACI,MAAM;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC;IAC7D,CAAC;IAED;;OAEG;IACI,IAAI;QACV,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;QACrD,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;YAC/B,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE;gBACpB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,mBAAmB,GAAG,KAAK,CAAC;YAClD,CAAC,EAAE,EAAE,CAAC,CAAC;SACP;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC9B,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,IAAI;SACZ,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,KAAK;QACX,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QACpD,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;YAC/B,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,mBAAmB,GAAG,IAAI,CAAC;SAChD;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC9B,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,IAAI;SACZ,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM;QACZ,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QACpD,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;YAC/B,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,mBAAmB,GAAG,IAAI,CAAC;SAChD;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;YACjC,IAAI,EAAE,WAAW;YACjB,MAAM,EAAE,IAAI;SACZ,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,OAAO;QACb,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC/C,IAAI,SAAS,CAAC,aAAa,EAAE;YAC5B,SAAS,CAAC,aAAa,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;SAC/C;IACF,CAAC;;AAlID;;;;WAAkC,OAAO;GAAC;AAC1C;;;;WAA0C,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;GAAC","sourcesContent":["import type { Root } from \"../Root\"\n\nimport { Entity, IEntitySettings, IEntityPrivate, IEntityEvents } from \"./Entity\";\nimport { StyleRule } from \"./Utils\"\nimport { MultiDisposer, IDisposer, CounterDisposer } from \"../../core/util/Disposer\";\n\nimport * as $utils from \"./Utils\"\n\n\n/**\n * @ignore\n */\nlet rules: CounterDisposer | undefined;\n\n/**\n * @ignore\n */\nfunction modalCSS(element: ShadowRoot | null, root: Root, _prefix?: string): IDisposer {\n\tconst ic = root.interfaceColors;\n\tconst active = ic.get(\"secondaryButton\")!.toCSS();\n\tconst text = ic.get(\"text\")!.toCSS();\n\tconst shadow = ic.get(\"alternativeBackground\")!.toCSS(0.45);\n\t//const altbg = ic.get(\"alternativeBackground\")!.toCSS();\n\n\tif (!rules) {\n\t\tconst disposer = new MultiDisposer([\n\n\t\t\tnew StyleRule(element, \".am5-modal\", {\n\t\t\t\t\"width\": \"100%\",\n\t\t\t\t\"height\": \"100%\",\n\t\t\t\t\"position\": \"absolute\",\n\t\t\t\t\"z-index\": \"100000\",\n\t\t\t\t\"top\": \"0\",\n\t\t\t\t\"left\": \"0\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-curtain\", {\n\t\t\t\t\"top\": \"0\",\n\t\t\t\t\"left\": \"0\",\n\t\t\t\t\"width\": \"100%\",\n\t\t\t\t\"height\": \"100%\",\n\t\t\t\t\"position\": \"absolute\",\n\t\t\t\t\"background\": ic.get(\"background\")!.toCSS(0.5),\n\t\t\t\t\"z-index\": \"100\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-wrapper\", {\n\t\t\t\t\"top\": \"0\",\n\t\t\t\t\"left\": \"0\",\n\t\t\t\t\"width\": \"100%\",\n\t\t\t\t\"height\": \"100%\",\n\t\t\t\t\"position\": \"absolute\",\n\t\t\t\t\"text-align\": \"center\",\n\t\t\t\t\"white-space\": \"nowrap\",\n\t\t\t\t\"background\": ic.get(\"background\")!.toCSS(0.5),\n\t\t\t\t\"z-index\": \"101\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-wrapper:before\", {\n\t\t\t\t\"content\": \"''\",\n\t\t\t\t\"display\": \"inline-block\",\n\t\t\t\t\"height\": \"100%\",\n\t\t\t\t\"vertical-align\": \"middle\",\n\t\t\t\t\"margin-right\": \"-0.25em\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-content\", {\n\t\t\t\t\"display\": \"inline-block\",\n\t\t\t\t\"padding\": \"1.2em\",\n\t\t\t\t\"vertical-align\": \"middle\",\n\t\t\t\t\"text-align\": \"left\",\n\t\t\t\t\"white-space\": \"normal\",\n\t\t\t\t\"background\": ic.get(\"background\")!.toCSS(),\n\t\t\t\t//\"border\": \"1px solid \" + ic.get(\"alternativeBackground\")!.toCSS(),\n\t\t\t\t\"border-radius\": \"4px\",\n\t\t\t\t\"-webkit-box-shadow\": \"0px 0px 36px 0px \" + shadow,\n\t\t\t\t\"box-shadow\": \"0px 0px 36px 0px \" + shadow,\n\t\t\t\t\"color\": text\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-content h1\", {\n\t\t\t\t\"font-size\": \"1em\",\n\t\t\t\t\"margin\": \"0 0 0.5em 0\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table\", {\n\t\t\t\t\"display\": \"table\",\n\t\t\t\t\"margin\": \"1em 0\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-row\", {\n\t\t\t\t\"display\": \"table-row\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-heading\", {\n\t\t\t\t\"display\": \"table-heading\",\n\t\t\t\t\"padding\": \"3px 10px 3px 0\",\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-cell\", {\n\t\t\t\t\"display\": \"table-cell\",\n\t\t\t\t\"padding\": \"3px 0 3px 0\",\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-cell > *\", {\n\t\t\t\t\"vertical-align\": \"middle\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-content input[type=text], .am5-modal-content input[type=number], .am5-modal-content select\", {\n\t\t\t\t\"border\": \"1px solid \" + active,\n\t\t\t\t\"border-radius\": \"4px\",\n\t\t\t\t\"padding\": \"3px 5px\",\n\t\t\t\t\"margin\": \"2px\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-input-narrow\", {\n\t\t\t\t\"width\": \"50px\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-button\", {\n\t\t\t\t\"font-weight\": \"400\",\n\t\t\t\t\"color\": ic.get(\"secondaryButtonText\")!.toCSS(),\n\t\t\t\t\"line-height\": \"1.5\",\n\t\t\t\t\"text-align\": \"center\",\n\t\t\t\t\"text-decoration\": \"none\",\n\t\t\t\t\"vertical-align\": \"middle\",\n\t\t\t\t\"cursor\": \"pointer\",\n\t\t\t\t\"padding\": \"0.2em 0.8em\",\n\t\t\t\t\"font-size\": \"1em\",\n\t\t\t\t\"border-radius\": \"0.25em\",\n\t\t\t\t\"margin\": \"0 0.25em 0 0\",\n\t\t\t\t\"border\": \"1px solid \" + ic.get(\"secondaryButtonStroke\")!.toCSS(),\n\t\t\t\t\"background\": ic.get(\"secondaryButton\")!.toCSS()\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-button:hover\", {\n\t\t\t\t\"background\": ic.get(\"secondaryButtonHover\")!.toCSS()\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-button.am5-modal-primary\", {\n\t\t\t\t\"color\": ic.get(\"primaryButtonText\")!.toCSS(),\n\t\t\t\t\"border\": \"1px solid \" + ic.get(\"primaryButtonStroke\")!.toCSS(),\n\t\t\t\t\"background\": ic.get(\"primaryButton\")!.toCSS()\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-button.am5-modal-primary:hover\", {\n\t\t\t\t\"background\": ic.get(\"primaryButtonHover\")!.toCSS()\n\t\t\t}, root.nonce),\n\n\t\t]);\n\n\t\trules = new CounterDisposer(() => {\n\t\t\trules = undefined;\n\t\t\tdisposer.dispose();\n\t\t});\n\t}\n\n\treturn rules.increment();\n}\n\n\nexport interface IModalSettings extends IEntitySettings {\n\n\t/**\n\t * HTML content of the modal.\n\t */\n\tcontent?: string;\n\n\t/**\n\t * When modal is open, all interactions for the underlying chart will be\n\t * disabled.\n\t *\n\t * @default true\n\t * @since 5.2.11\n\t */\n\tdeactivateRoot?: boolean;\n\n}\n\nexport interface IModalPrivate extends IEntityPrivate {\n\tcontainer: HTMLDivElement;\n\tcurtain: HTMLDivElement;\n\twrapper: HTMLDivElement;\n\tcontent: HTMLDivElement;\n}\n\nexport interface IModalEvents extends IEntityEvents {\n\t\"opened\": {}\n\t\"closed\": {}\n\t\"cancelled\": {}\n}\n\n/**\n * Used to display a modal dialog with HTML content.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/modal-popups/} for more info\n */\nexport class Modal extends Entity {\n\tpublic static className: string = \"Modal\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([Modal.className]);\n\n\tdeclare public _settings: IModalSettings;\n\tdeclare public _privateSettings: IModalPrivate;\n\tdeclare public _events: IModalEvents;\n\n\t//protected _currentPass: number = 0;\n\n\tprotected _afterNew() {\n\t\t// Applying themes because this will not have parents\n\t\tsuper._afterNewApplyThemes();\n\n\t\t// Defaults\n\t\tthis._setRawDefault(\"deactivateRoot\", true);\n\n\t\t// Load CSS\n\t\tmodalCSS($utils.getShadowRoot(this._root.dom), this._root);\n\n\t\t// Create elements\n\t\tconst container = document.createElement(\"div\");\n\t\tcontainer.className = \"am5-modal\";\n\t\tcontainer.style.display = \"none\";\n\t\tthis.root._inner.appendChild(container);\n\t\tthis.setPrivate(\"container\", container);\n\n\t\tconst curtain = document.createElement(\"div\");\n\t\tcurtain.className = \"am5-modal-curtain\";\n\t\tcontainer.appendChild(curtain);\n\t\tthis.setPrivate(\"curtain\", curtain);\n\n\t\tthis._disposers.push($utils.addEventListener(curtain, \"click\", () => {\n\t\t\tthis.cancel();\n\t\t}));\n\n\t\tconst wrapper = document.createElement(\"div\");\n\t\twrapper.className = \"am5-modal-wrapper\";\n\t\tcontainer.appendChild(wrapper);\n\t\tthis.setPrivate(\"wrapper\", wrapper);\n\n\t\tconst content = document.createElement(\"div\");\n\t\tcontent.className = \"am5-modal-content\";\n\t\twrapper.appendChild(content);\n\t\tthis.setPrivate(\"content\", content);\n\n\t\tconst html = this.get(\"content\");\n\t\tif (html) {\n\t\t\tcontent.innerHTML = html;\n\t\t}\n\n\t\t// Close on ESC\n\t\tif ($utils.supports(\"keyboardevents\")) {\n\t\t\tthis._disposers.push($utils.addEventListener(document, \"keydown\", (ev: KeyboardEvent) => {\n\t\t\t\tif (this.isOpen() && $utils.getEventKey(ev) == \"Escape\") {\n\t\t\t\t\tthis.cancel();\n\t\t\t\t}\n\t\t\t}));\n\t\t}\n\t}\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"content\")) {\n\t\t\tthis.getPrivate(\"content\").innerHTML = this.get(\"content\", \"\");\n\t\t}\n\t}\n\n\t/**\n\t * Returns `true` if modal is currently open.\n\t * \n\t * @return Modal open?\n\t */\n\tpublic isOpen(): boolean {\n\t\treturn this.getPrivate(\"container\").style.display != \"none\";\n\t}\n\n\t/**\n\t * Opens modal.\n\t */\n\tpublic open(): void {\n\t\tthis.getPrivate(\"container\").style.display = \"block\";\n\t\tif (this.get(\"deactivateRoot\")) {\n\t\t\tthis.setTimeout(() => {\n\t\t\t\tthis._root._renderer.interactionsEnabled = false;\n\t\t\t}, 10);\n\t\t}\n\t\tthis.events.dispatch(\"opened\", {\n\t\t\ttype: \"opened\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\t/**\n\t * Closes modal.\n\t */\n\tpublic close(): void {\n\t\tthis.getPrivate(\"container\").style.display = \"none\";\n\t\tif (this.get(\"deactivateRoot\")) {\n\t\t\tthis._root._renderer.interactionsEnabled = true;\n\t\t}\n\t\tthis.events.dispatch(\"closed\", {\n\t\t\ttype: \"closed\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\t/**\n\t * Closes modal and invokes `cancelled` event.\n\t */\n\tpublic cancel(): void {\n\t\tthis.getPrivate(\"container\").style.display = \"none\";\n\t\tif (this.get(\"deactivateRoot\")) {\n\t\t\tthis._root._renderer.interactionsEnabled = true;\n\t\t}\n\t\tthis.events.dispatch(\"cancelled\", {\n\t\t\ttype: \"cancelled\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\t/**\n\t * Disposes modal.\n\t */\n\tpublic dispose() {\n\t\tsuper.dispose();\n\t\tconst container = this.getPrivate(\"container\");\n\t\tif (container.parentElement) {\n\t\t\tcontainer.parentElement.removeChild(container);\n\t\t}\n\t}\n\n}"]}
|
|
1
|
+
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Modal.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAkD,MAAM,UAAU,CAAC;AAClF,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACnC,OAAO,EAAE,aAAa,EAAa,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAErF,OAAO,KAAK,MAAM,MAAM,SAAS,CAAA;AAGjC;;GAEG;AACH,IAAI,KAAkC,CAAC;AAEvC;;GAEG;AACH,SAAS,QAAQ,CAAC,OAA0B,EAAE,IAAU,EAAE,OAAgB;IACzE,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC;IAChC,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAE,CAAC,KAAK,EAAE,CAAC;IAClD,MAAM,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,KAAK,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,uBAAuB,CAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5D,yDAAyD;IAEzD,IAAI,CAAC,KAAK,EAAE;QACX,MAAM,QAAQ,GAAG,IAAI,aAAa,CAAC;YAElC,IAAI,SAAS,CAAC,OAAO,EAAE,YAAY,EAAE;gBACpC,OAAO,EAAE,MAAM;gBACf,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,UAAU;gBACtB,SAAS,EAAE,QAAQ;gBACnB,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE,GAAG;aACX,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,oBAAoB,EAAE;gBAC5C,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,MAAM;gBACf,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,UAAU;gBACtB,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC,KAAK,CAAC,GAAG,CAAC;gBAC9C,SAAS,EAAE,KAAK;aAChB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,oBAAoB,EAAE;gBAC5C,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE,GAAG;gBACX,OAAO,EAAE,MAAM;gBACf,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,UAAU;gBACtB,YAAY,EAAE,QAAQ;gBACtB,aAAa,EAAE,QAAQ;gBACvB,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC,KAAK,CAAC,GAAG,CAAC;gBAC9C,SAAS,EAAE,KAAK;aAChB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,2BAA2B,EAAE;gBACnD,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,cAAc;gBACzB,QAAQ,EAAE,MAAM;gBAChB,gBAAgB,EAAE,QAAQ;gBAC1B,cAAc,EAAE,SAAS;aACzB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,oBAAoB,EAAE;gBAC5C,SAAS,EAAE,cAAc;gBACzB,SAAS,EAAE,OAAO;gBAClB,gBAAgB,EAAE,QAAQ;gBAC1B,YAAY,EAAE,OAAO;gBACrB,aAAa,EAAE,QAAQ;gBACvB,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC,KAAK,EAAE;gBAC3C,oEAAoE;gBACpE,eAAe,EAAE,KAAK;gBACtB,oBAAoB,EAAE,mBAAmB,GAAG,MAAM;gBAClD,YAAY,EAAE,mBAAmB,GAAG,MAAM;gBAC1C,OAAO,EAAE,IAAI;aACb,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,uBAAuB,EAAE;gBAC/C,WAAW,EAAE,KAAK;gBAClB,QAAQ,EAAE,aAAa;aACvB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,kBAAkB,EAAE;gBAC1C,SAAS,EAAE,OAAO;gBAClB,QAAQ,EAAE,OAAO;aACjB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,sBAAsB,EAAE;gBAC9C,SAAS,EAAE,WAAW;aACtB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,0BAA0B,EAAE;gBAClD,SAAS,EAAE,eAAe;gBAC1B,SAAS,EAAE,gBAAgB;aAC3B,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,uBAAuB,EAAE;gBAC/C,SAAS,EAAE,YAAY;gBACvB,SAAS,EAAE,aAAa;aACxB,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,2BAA2B,EAAE;gBACnD,gBAAgB,EAAE,QAAQ;aAC1B,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,uGAAuG,EAAE;gBAC/H,QAAQ,EAAE,YAAY,GAAG,MAAM;gBAC/B,eAAe,EAAE,KAAK;gBACtB,SAAS,EAAE,SAAS;gBACpB,QAAQ,EAAE,KAAK;aACf,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,yBAAyB,EAAE;gBACjD,OAAO,EAAE,MAAM;aACf,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,mBAAmB,EAAE;gBAC3C,aAAa,EAAE,KAAK;gBACpB,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAE,CAAC,KAAK,EAAE;gBAC/C,aAAa,EAAE,KAAK;gBACpB,YAAY,EAAE,QAAQ;gBACtB,iBAAiB,EAAE,MAAM;gBACzB,gBAAgB,EAAE,QAAQ;gBAC1B,QAAQ,EAAE,SAAS;gBACnB,SAAS,EAAE,aAAa;gBACxB,WAAW,EAAE,KAAK;gBAClB,eAAe,EAAE,QAAQ;gBACzB,QAAQ,EAAE,cAAc;gBACxB,QAAQ,EAAE,YAAY,GAAG,EAAE,CAAC,GAAG,CAAC,uBAAuB,CAAE,CAAC,KAAK,EAAE;gBACjE,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAE,CAAC,KAAK,EAAE;aAChD,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,yBAAyB,EAAE;gBACjD,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,sBAAsB,CAAE,CAAC,KAAK,EAAE;aACrD,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,qCAAqC,EAAE;gBAC7D,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,mBAAmB,CAAE,CAAC,KAAK,EAAE;gBAC7C,QAAQ,EAAE,YAAY,GAAG,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAE,CAAC,KAAK,EAAE;gBAC/D,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe,CAAE,CAAC,KAAK,EAAE;aAC9C,EAAE,IAAI,CAAC,KAAK,CAAC;YAEd,IAAI,SAAS,CAAC,OAAO,EAAE,2CAA2C,EAAE;gBACnE,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,oBAAoB,CAAE,CAAC,KAAK,EAAE;aACnD,EAAE,IAAI,CAAC,KAAK,CAAC;SAEd,CAAC,CAAC;QAEH,KAAK,GAAG,IAAI,eAAe,CAAC,GAAG,EAAE;YAChC,KAAK,GAAG,SAAS,CAAC;YAClB,QAAQ,CAAC,OAAO,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;KACH;IAED,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;AAC1B,CAAC;AAkCD;;;;GAIG;AACH,MAAM,OAAO,KAAM,SAAQ,MAAM;IAQhC,qCAAqC;IAE3B,SAAS;QAClB,qDAAqD;QACrD,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAE7B,WAAW;QACX,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QAE5C,WAAW;QACX,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAE3D,kBAAkB;QAClB,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAChD,SAAS,CAAC,SAAS,GAAG,WAAW,CAAC;QAClC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAExC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,GAAG,mBAAmB,CAAC;QACxC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAEpC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE;YACnE,IAAI,CAAC,MAAM,EAAE,CAAC;QACf,CAAC,CAAC,CAAC,CAAC;QAEJ,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,GAAG,mBAAmB,CAAC;QACxC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAEpC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,CAAC,SAAS,GAAG,mBAAmB,CAAC;QACxC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC7B,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAEpC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACjC,IAAI,IAAI,EAAE;YACT,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;SACzB;QAED,eAAe;QACf,IAAI,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;YACtC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAiB,EAAE,EAAE;gBACvF,IAAI,IAAI,CAAC,MAAM,EAAE,IAAI,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,QAAQ,EAAE;oBACxD,IAAI,CAAC,MAAM,EAAE,CAAC;iBACd;YACF,CAAC,CAAC,CAAC,CAAC;SACJ;IACF,CAAC;IAEM,cAAc;QACpB,KAAK,CAAC,cAAc,EAAE,CAAC;QAEvB,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC5B,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;SAC/D;IACF,CAAC;IAED;;;;OAIG;IACI,MAAM;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC;IAC7D,CAAC;IAED;;OAEG;IACI,IAAI;QACV,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;QACrD,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;YAC/B,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE;gBACpB,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,mBAAmB,GAAG,KAAK,CAAC;YAClD,CAAC,EAAE,EAAE,CAAC,CAAC;SACP;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC9B,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,IAAI;SACZ,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,KAAK;QACX,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QACpD,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;YAC/B,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,mBAAmB,GAAG,IAAI,CAAC;SAChD;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAC9B,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,IAAI;SACZ,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM;QACZ,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QACpD,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;YAC/B,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,mBAAmB,GAAG,IAAI,CAAC;SAChD;QACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;YACjC,IAAI,EAAE,WAAW;YACjB,MAAM,EAAE,IAAI;SACZ,CAAC,CAAC;IACJ,CAAC;IAED;;OAEG;IACO,QAAQ;QACjB,KAAK,CAAC,QAAQ,EAAE,CAAC;QAEjB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAC/C,IAAI,SAAS,CAAC,aAAa,EAAE;YAC5B,SAAS,CAAC,aAAa,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;SAC/C;IACF,CAAC;;AAnID;;;;WAAkC,OAAO;GAAC;AAC1C;;;;WAA0C,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;GAAC","sourcesContent":["import type { Root } from \"../Root\"\n\nimport { Entity, IEntitySettings, IEntityPrivate, IEntityEvents } from \"./Entity\";\nimport { StyleRule } from \"./Utils\"\nimport { MultiDisposer, IDisposer, CounterDisposer } from \"../../core/util/Disposer\";\n\nimport * as $utils from \"./Utils\"\n\n\n/**\n * @ignore\n */\nlet rules: CounterDisposer | undefined;\n\n/**\n * @ignore\n */\nfunction modalCSS(element: ShadowRoot | null, root: Root, _prefix?: string): IDisposer {\n\tconst ic = root.interfaceColors;\n\tconst active = ic.get(\"secondaryButton\")!.toCSS();\n\tconst text = ic.get(\"text\")!.toCSS();\n\tconst shadow = ic.get(\"alternativeBackground\")!.toCSS(0.45);\n\t//const altbg = ic.get(\"alternativeBackground\")!.toCSS();\n\n\tif (!rules) {\n\t\tconst disposer = new MultiDisposer([\n\n\t\t\tnew StyleRule(element, \".am5-modal\", {\n\t\t\t\t\"width\": \"100%\",\n\t\t\t\t\"height\": \"100%\",\n\t\t\t\t\"position\": \"absolute\",\n\t\t\t\t\"z-index\": \"100000\",\n\t\t\t\t\"top\": \"0\",\n\t\t\t\t\"left\": \"0\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-curtain\", {\n\t\t\t\t\"top\": \"0\",\n\t\t\t\t\"left\": \"0\",\n\t\t\t\t\"width\": \"100%\",\n\t\t\t\t\"height\": \"100%\",\n\t\t\t\t\"position\": \"absolute\",\n\t\t\t\t\"background\": ic.get(\"background\")!.toCSS(0.5),\n\t\t\t\t\"z-index\": \"100\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-wrapper\", {\n\t\t\t\t\"top\": \"0\",\n\t\t\t\t\"left\": \"0\",\n\t\t\t\t\"width\": \"100%\",\n\t\t\t\t\"height\": \"100%\",\n\t\t\t\t\"position\": \"absolute\",\n\t\t\t\t\"text-align\": \"center\",\n\t\t\t\t\"white-space\": \"nowrap\",\n\t\t\t\t\"background\": ic.get(\"background\")!.toCSS(0.5),\n\t\t\t\t\"z-index\": \"101\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-wrapper:before\", {\n\t\t\t\t\"content\": \"''\",\n\t\t\t\t\"display\": \"inline-block\",\n\t\t\t\t\"height\": \"100%\",\n\t\t\t\t\"vertical-align\": \"middle\",\n\t\t\t\t\"margin-right\": \"-0.25em\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-content\", {\n\t\t\t\t\"display\": \"inline-block\",\n\t\t\t\t\"padding\": \"1.2em\",\n\t\t\t\t\"vertical-align\": \"middle\",\n\t\t\t\t\"text-align\": \"start\",\n\t\t\t\t\"white-space\": \"normal\",\n\t\t\t\t\"background\": ic.get(\"background\")!.toCSS(),\n\t\t\t\t//\"border\": \"1px solid \" + ic.get(\"alternativeBackground\")!.toCSS(),\n\t\t\t\t\"border-radius\": \"4px\",\n\t\t\t\t\"-webkit-box-shadow\": \"0px 0px 36px 0px \" + shadow,\n\t\t\t\t\"box-shadow\": \"0px 0px 36px 0px \" + shadow,\n\t\t\t\t\"color\": text\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-content h1\", {\n\t\t\t\t\"font-size\": \"1em\",\n\t\t\t\t\"margin\": \"0 0 0.5em 0\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table\", {\n\t\t\t\t\"display\": \"table\",\n\t\t\t\t\"margin\": \"1em 0\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-row\", {\n\t\t\t\t\"display\": \"table-row\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-heading\", {\n\t\t\t\t\"display\": \"table-heading\",\n\t\t\t\t\"padding\": \"3px 10px 3px 0\",\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-cell\", {\n\t\t\t\t\"display\": \"table-cell\",\n\t\t\t\t\"padding\": \"3px 0 3px 0\",\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-cell > *\", {\n\t\t\t\t\"vertical-align\": \"middle\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-content input[type=text], .am5-modal-content input[type=number], .am5-modal-content select\", {\n\t\t\t\t\"border\": \"1px solid \" + active,\n\t\t\t\t\"border-radius\": \"4px\",\n\t\t\t\t\"padding\": \"3px 5px\",\n\t\t\t\t\"margin\": \"2px\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-input-narrow\", {\n\t\t\t\t\"width\": \"50px\"\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-button\", {\n\t\t\t\t\"font-weight\": \"400\",\n\t\t\t\t\"color\": ic.get(\"secondaryButtonText\")!.toCSS(),\n\t\t\t\t\"line-height\": \"1.5\",\n\t\t\t\t\"text-align\": \"center\",\n\t\t\t\t\"text-decoration\": \"none\",\n\t\t\t\t\"vertical-align\": \"middle\",\n\t\t\t\t\"cursor\": \"pointer\",\n\t\t\t\t\"padding\": \"0.2em 0.8em\",\n\t\t\t\t\"font-size\": \"1em\",\n\t\t\t\t\"border-radius\": \"0.25em\",\n\t\t\t\t\"margin\": \"0 0.25em 0 0\",\n\t\t\t\t\"border\": \"1px solid \" + ic.get(\"secondaryButtonStroke\")!.toCSS(),\n\t\t\t\t\"background\": ic.get(\"secondaryButton\")!.toCSS()\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-button:hover\", {\n\t\t\t\t\"background\": ic.get(\"secondaryButtonHover\")!.toCSS()\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-button.am5-modal-primary\", {\n\t\t\t\t\"color\": ic.get(\"primaryButtonText\")!.toCSS(),\n\t\t\t\t\"border\": \"1px solid \" + ic.get(\"primaryButtonStroke\")!.toCSS(),\n\t\t\t\t\"background\": ic.get(\"primaryButton\")!.toCSS()\n\t\t\t}, root.nonce),\n\n\t\t\tnew StyleRule(element, \".am5-modal-button.am5-modal-primary:hover\", {\n\t\t\t\t\"background\": ic.get(\"primaryButtonHover\")!.toCSS()\n\t\t\t}, root.nonce),\n\n\t\t]);\n\n\t\trules = new CounterDisposer(() => {\n\t\t\trules = undefined;\n\t\t\tdisposer.dispose();\n\t\t});\n\t}\n\n\treturn rules.increment();\n}\n\n\nexport interface IModalSettings extends IEntitySettings {\n\n\t/**\n\t * HTML content of the modal.\n\t */\n\tcontent?: string;\n\n\t/**\n\t * When modal is open, all interactions for the underlying chart will be\n\t * disabled.\n\t *\n\t * @default true\n\t * @since 5.2.11\n\t */\n\tdeactivateRoot?: boolean;\n\n}\n\nexport interface IModalPrivate extends IEntityPrivate {\n\tcontainer: HTMLDivElement;\n\tcurtain: HTMLDivElement;\n\twrapper: HTMLDivElement;\n\tcontent: HTMLDivElement;\n}\n\nexport interface IModalEvents extends IEntityEvents {\n\t\"opened\": {}\n\t\"closed\": {}\n\t\"cancelled\": {}\n}\n\n/**\n * Used to display a modal dialog with HTML content.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/common-elements/modal-popups/} for more info\n */\nexport class Modal extends Entity {\n\tpublic static className: string = \"Modal\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([Modal.className]);\n\n\tdeclare public _settings: IModalSettings;\n\tdeclare public _privateSettings: IModalPrivate;\n\tdeclare public _events: IModalEvents;\n\n\t//protected _currentPass: number = 0;\n\n\tprotected _afterNew() {\n\t\t// Applying themes because this will not have parents\n\t\tsuper._afterNewApplyThemes();\n\n\t\t// Defaults\n\t\tthis._setRawDefault(\"deactivateRoot\", true);\n\n\t\t// Load CSS\n\t\tmodalCSS($utils.getShadowRoot(this._root.dom), this._root);\n\n\t\t// Create elements\n\t\tconst container = document.createElement(\"div\");\n\t\tcontainer.className = \"am5-modal\";\n\t\tcontainer.style.display = \"none\";\n\t\tthis.root._inner.appendChild(container);\n\t\tthis.setPrivate(\"container\", container);\n\n\t\tconst curtain = document.createElement(\"div\");\n\t\tcurtain.className = \"am5-modal-curtain\";\n\t\tcontainer.appendChild(curtain);\n\t\tthis.setPrivate(\"curtain\", curtain);\n\n\t\tthis._disposers.push($utils.addEventListener(curtain, \"click\", () => {\n\t\t\tthis.cancel();\n\t\t}));\n\n\t\tconst wrapper = document.createElement(\"div\");\n\t\twrapper.className = \"am5-modal-wrapper\";\n\t\tcontainer.appendChild(wrapper);\n\t\tthis.setPrivate(\"wrapper\", wrapper);\n\n\t\tconst content = document.createElement(\"div\");\n\t\tcontent.className = \"am5-modal-content\";\n\t\twrapper.appendChild(content);\n\t\tthis.setPrivate(\"content\", content);\n\n\t\tconst html = this.get(\"content\");\n\t\tif (html) {\n\t\t\tcontent.innerHTML = html;\n\t\t}\n\n\t\t// Close on ESC\n\t\tif ($utils.supports(\"keyboardevents\")) {\n\t\t\tthis._disposers.push($utils.addEventListener(document, \"keydown\", (ev: KeyboardEvent) => {\n\t\t\t\tif (this.isOpen() && $utils.getEventKey(ev) == \"Escape\") {\n\t\t\t\t\tthis.cancel();\n\t\t\t\t}\n\t\t\t}));\n\t\t}\n\t}\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"content\")) {\n\t\t\tthis.getPrivate(\"content\").innerHTML = this.get(\"content\", \"\");\n\t\t}\n\t}\n\n\t/**\n\t * Returns `true` if modal is currently open.\n\t *\n\t * @return Modal open?\n\t */\n\tpublic isOpen(): boolean {\n\t\treturn this.getPrivate(\"container\").style.display != \"none\";\n\t}\n\n\t/**\n\t * Opens modal.\n\t */\n\tpublic open(): void {\n\t\tthis.getPrivate(\"container\").style.display = \"block\";\n\t\tif (this.get(\"deactivateRoot\")) {\n\t\t\tthis.setTimeout(() => {\n\t\t\t\tthis._root._renderer.interactionsEnabled = false;\n\t\t\t}, 10);\n\t\t}\n\t\tthis.events.dispatch(\"opened\", {\n\t\t\ttype: \"opened\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\t/**\n\t * Closes modal.\n\t */\n\tpublic close(): void {\n\t\tthis.getPrivate(\"container\").style.display = \"none\";\n\t\tif (this.get(\"deactivateRoot\")) {\n\t\t\tthis._root._renderer.interactionsEnabled = true;\n\t\t}\n\t\tthis.events.dispatch(\"closed\", {\n\t\t\ttype: \"closed\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\t/**\n\t * Closes modal and invokes `cancelled` event.\n\t */\n\tpublic cancel(): void {\n\t\tthis.getPrivate(\"container\").style.display = \"none\";\n\t\tif (this.get(\"deactivateRoot\")) {\n\t\t\tthis._root._renderer.interactionsEnabled = true;\n\t\t}\n\t\tthis.events.dispatch(\"cancelled\", {\n\t\t\ttype: \"cancelled\",\n\t\t\ttarget: this\n\t\t});\n\t}\n\n\t/**\n\t * Disposes modal.\n\t */\n\tprotected _dispose() {\n\t\tsuper._dispose();\n\n\t\tconst container = this.getPrivate(\"container\");\n\t\tif (container.parentElement) {\n\t\t\tcontainer.parentElement.removeChild(container);\n\t\t}\n\t}\n}\n"]}
|
|
@@ -7,6 +7,7 @@ export declare class TemplateState<E extends Entity> {
|
|
|
7
7
|
private _name;
|
|
8
8
|
private _template;
|
|
9
9
|
constructor(name: string, template: Template<E>, settings: Partial<E["_settings"]>);
|
|
10
|
+
_dispose(): void;
|
|
10
11
|
get<Key extends keyof this["_settings"]>(key: Key): this["_settings"][Key];
|
|
11
12
|
get<Key extends keyof this["_settings"], F>(key: Key, fallback: F): NonNullable<this["_settings"][Key]> | F;
|
|
12
13
|
set<Key extends keyof E["_settings"]>(key: Key, value: E["_settings"][Key]): void;
|
|
@@ -18,6 +19,7 @@ export declare class TemplateStates<E extends Entity> {
|
|
|
18
19
|
private _template;
|
|
19
20
|
private _states;
|
|
20
21
|
constructor(template: Template<E>);
|
|
22
|
+
_dispose(): void;
|
|
21
23
|
lookup(name: string): TemplateState<E> | undefined;
|
|
22
24
|
create(name: string, settings: Partial<E["_settings"]>): TemplateState<E>;
|
|
23
25
|
remove(name: string): void;
|
|
@@ -36,7 +38,8 @@ export interface ApplyState<E extends Entity> {
|
|
|
36
38
|
[name: string]: Dirty<E["_settings"]>;
|
|
37
39
|
};
|
|
38
40
|
}
|
|
39
|
-
export declare class Template<E extends Entity> {
|
|
41
|
+
export declare class Template<E extends Entity> implements IDisposer {
|
|
42
|
+
private _disposed;
|
|
40
43
|
_settings: Partial<E["_settings"]>;
|
|
41
44
|
_privateSettings: E["_privateSettings"];
|
|
42
45
|
_settingEvents: {
|
|
@@ -60,6 +63,18 @@ export declare class Template<E extends Entity> {
|
|
|
60
63
|
* @return Instantiated object
|
|
61
64
|
*/
|
|
62
65
|
static new<E extends Entity>(settings: E["_settings"]): Template<E>;
|
|
66
|
+
protected _dispose(): void;
|
|
67
|
+
/**
|
|
68
|
+
* Returns `true` if this element is disposed.
|
|
69
|
+
*
|
|
70
|
+
* @return Disposed
|
|
71
|
+
*/
|
|
72
|
+
isDisposed(): boolean;
|
|
73
|
+
/**
|
|
74
|
+
* Disposes this object.
|
|
75
|
+
*/
|
|
76
|
+
dispose(): void;
|
|
77
|
+
private _checkDisposed;
|
|
63
78
|
/**
|
|
64
79
|
* Array of all entities using this template.
|
|
65
80
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Template.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAA2B,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"Template.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Template.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,15 @@ import { EventDispatcher } from "./EventDispatcher";
|
|
|
2
2
|
import { Disposer, MultiDisposer } from "./Disposer";
|
|
3
3
|
import * as $array from "./Array";
|
|
4
4
|
import * as $object from "./Object";
|
|
5
|
+
import * as $type from "./Type";
|
|
6
|
+
function disposeSettings(settings) {
|
|
7
|
+
$object.each(settings, (_key, value) => {
|
|
8
|
+
if ($type.isObject(value) && typeof value.dispose === "function") {
|
|
9
|
+
value.enableDispose = true;
|
|
10
|
+
value.dispose();
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
}
|
|
5
14
|
export class TemplateState {
|
|
6
15
|
constructor(name, template, settings) {
|
|
7
16
|
Object.defineProperty(this, "_settings", {
|
|
@@ -26,6 +35,9 @@ export class TemplateState {
|
|
|
26
35
|
this._template = template;
|
|
27
36
|
this._settings = settings;
|
|
28
37
|
}
|
|
38
|
+
_dispose() {
|
|
39
|
+
disposeSettings(this._settings);
|
|
40
|
+
}
|
|
29
41
|
get(key, fallback) {
|
|
30
42
|
const value = this._settings[key];
|
|
31
43
|
if (value !== undefined) {
|
|
@@ -76,6 +88,11 @@ export class TemplateStates {
|
|
|
76
88
|
});
|
|
77
89
|
this._template = template;
|
|
78
90
|
}
|
|
91
|
+
_dispose() {
|
|
92
|
+
$object.each(this._states, (_key, state) => {
|
|
93
|
+
state._dispose();
|
|
94
|
+
});
|
|
95
|
+
}
|
|
79
96
|
lookup(name) {
|
|
80
97
|
return this._states[name];
|
|
81
98
|
}
|
|
@@ -148,6 +165,12 @@ export class TemplateAdapters {
|
|
|
148
165
|
// TODO maybe extend from Properties ?
|
|
149
166
|
export class Template {
|
|
150
167
|
constructor(settings, isReal) {
|
|
168
|
+
Object.defineProperty(this, "_disposed", {
|
|
169
|
+
enumerable: true,
|
|
170
|
+
configurable: true,
|
|
171
|
+
writable: true,
|
|
172
|
+
value: false
|
|
173
|
+
});
|
|
151
174
|
Object.defineProperty(this, "_settings", {
|
|
152
175
|
enumerable: true,
|
|
153
176
|
configurable: true,
|
|
@@ -220,6 +243,32 @@ export class Template {
|
|
|
220
243
|
static new(settings) {
|
|
221
244
|
return new Template(settings, true);
|
|
222
245
|
}
|
|
246
|
+
_dispose() {
|
|
247
|
+
disposeSettings(this._settings);
|
|
248
|
+
disposeSettings(this._privateSettings);
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* Returns `true` if this element is disposed.
|
|
252
|
+
*
|
|
253
|
+
* @return Disposed
|
|
254
|
+
*/
|
|
255
|
+
isDisposed() {
|
|
256
|
+
return this._disposed;
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Disposes this object.
|
|
260
|
+
*/
|
|
261
|
+
dispose() {
|
|
262
|
+
if (!this._disposed) {
|
|
263
|
+
this._disposed = true;
|
|
264
|
+
this._dispose();
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
_checkDisposed() {
|
|
268
|
+
if (this._disposed) {
|
|
269
|
+
throw new Error("Template is disposed");
|
|
270
|
+
}
|
|
271
|
+
}
|
|
223
272
|
/**
|
|
224
273
|
* Array of all entities using this template.
|
|
225
274
|
*/
|
|
@@ -227,6 +276,7 @@ export class Template {
|
|
|
227
276
|
return this._entities;
|
|
228
277
|
}
|
|
229
278
|
get(key, fallback) {
|
|
279
|
+
this._checkDisposed();
|
|
230
280
|
const value = this._settings[key];
|
|
231
281
|
if (value !== undefined) {
|
|
232
282
|
return value;
|
|
@@ -236,9 +286,11 @@ export class Template {
|
|
|
236
286
|
}
|
|
237
287
|
}
|
|
238
288
|
setRaw(key, value) {
|
|
289
|
+
this._checkDisposed();
|
|
239
290
|
this._settings[key] = value;
|
|
240
291
|
}
|
|
241
292
|
set(key, value) {
|
|
293
|
+
this._checkDisposed();
|
|
242
294
|
if (this._settings[key] !== value) {
|
|
243
295
|
this.setRaw(key, value);
|
|
244
296
|
this._entities.forEach((entity) => {
|
|
@@ -247,6 +299,7 @@ export class Template {
|
|
|
247
299
|
}
|
|
248
300
|
}
|
|
249
301
|
remove(key) {
|
|
302
|
+
this._checkDisposed();
|
|
250
303
|
if (key in this._settings) {
|
|
251
304
|
delete this._settings[key];
|
|
252
305
|
this._entities.forEach((entity) => {
|
|
@@ -255,11 +308,13 @@ export class Template {
|
|
|
255
308
|
}
|
|
256
309
|
}
|
|
257
310
|
removeAll() {
|
|
311
|
+
this._checkDisposed();
|
|
258
312
|
$object.each(this._settings, (key, _value) => {
|
|
259
313
|
this.remove(key);
|
|
260
314
|
});
|
|
261
315
|
}
|
|
262
316
|
getPrivate(key, fallback) {
|
|
317
|
+
this._checkDisposed();
|
|
263
318
|
const value = this._privateSettings[key];
|
|
264
319
|
if (value !== undefined) {
|
|
265
320
|
return value;
|
|
@@ -269,10 +324,12 @@ export class Template {
|
|
|
269
324
|
}
|
|
270
325
|
}
|
|
271
326
|
setPrivateRaw(key, value) {
|
|
327
|
+
this._checkDisposed();
|
|
272
328
|
this._privateSettings[key] = value;
|
|
273
329
|
return value;
|
|
274
330
|
}
|
|
275
331
|
setPrivate(key, value) {
|
|
332
|
+
this._checkDisposed();
|
|
276
333
|
if (this._privateSettings[key] !== value) {
|
|
277
334
|
this.setPrivateRaw(key, value);
|
|
278
335
|
this._entities.forEach((entity) => {
|
|
@@ -282,6 +339,7 @@ export class Template {
|
|
|
282
339
|
return value;
|
|
283
340
|
}
|
|
284
341
|
removePrivate(key) {
|
|
342
|
+
this._checkDisposed();
|
|
285
343
|
if (key in this._privateSettings) {
|
|
286
344
|
delete this._privateSettings[key];
|
|
287
345
|
this._entities.forEach((entity) => {
|
|
@@ -290,12 +348,14 @@ export class Template {
|
|
|
290
348
|
}
|
|
291
349
|
}
|
|
292
350
|
setAll(value) {
|
|
351
|
+
this._checkDisposed();
|
|
293
352
|
$object.each(value, (key, value) => {
|
|
294
353
|
this.set(key, value);
|
|
295
354
|
});
|
|
296
355
|
}
|
|
297
356
|
// TODO code duplication with Properties
|
|
298
357
|
on(key, callback) {
|
|
358
|
+
this._checkDisposed();
|
|
299
359
|
let events = this._settingEvents[key];
|
|
300
360
|
if (events === undefined) {
|
|
301
361
|
events = this._settingEvents[key] = [];
|
|
@@ -310,6 +370,7 @@ export class Template {
|
|
|
310
370
|
}
|
|
311
371
|
// TODO code duplication with Properties
|
|
312
372
|
onPrivate(key, callback) {
|
|
373
|
+
this._checkDisposed();
|
|
313
374
|
let events = this._privateSettingEvents[key];
|
|
314
375
|
if (events === undefined) {
|
|
315
376
|
events = this._privateSettingEvents[key] = [];
|
|
@@ -323,6 +384,7 @@ export class Template {
|
|
|
323
384
|
});
|
|
324
385
|
}
|
|
325
386
|
_apply(entity, state) {
|
|
387
|
+
this._checkDisposed();
|
|
326
388
|
const disposers = [];
|
|
327
389
|
$object.each(this._settingEvents, (key, events) => {
|
|
328
390
|
$array.each(events, (event) => {
|
|
@@ -340,12 +402,15 @@ export class Template {
|
|
|
340
402
|
return new MultiDisposer(disposers);
|
|
341
403
|
}
|
|
342
404
|
_setObjectTemplate(entity) {
|
|
405
|
+
this._checkDisposed();
|
|
343
406
|
this._entities.push(entity);
|
|
344
407
|
}
|
|
345
408
|
_removeObjectTemplate(entity) {
|
|
409
|
+
//this._checkDisposed();
|
|
346
410
|
$array.remove(this._entities, entity);
|
|
347
411
|
}
|
|
348
412
|
_stateChanged(name) {
|
|
413
|
+
this._checkDisposed();
|
|
349
414
|
this._entities.forEach((entity) => {
|
|
350
415
|
entity._applyStateByKey(name);
|
|
351
416
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Template.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Template.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Entity, Dirty } from \"./Entity\";\nimport type { State } from \"./States\";\nimport { EventDispatcher, Events } from \"./EventDispatcher\";\nimport { IDisposer, Disposer, MultiDisposer } from \"./Disposer\";\nimport * as $array from \"./Array\";\nimport * as $object from \"./Object\";\n\nexport class TemplateState<E extends Entity> {\n\tpublic _settings: Partial<E[\"_settings\"]>;\n\n\tprivate _name: string;\n\tprivate _template: Template<E>;\n\n\tconstructor(name: string, template: Template<E>, settings: Partial<E[\"_settings\"]>) {\n\t\tthis._name = name;\n\t\tthis._template = template;\n\t\tthis._settings = settings;\n\t}\n\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key): this[\"_settings\"][Key];\n\tpublic get<Key extends keyof this[\"_settings\"], F>(key: Key, fallback: F): NonNullable<this[\"_settings\"][Key]> | F;\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key, fallback?: any): any {\n\t\tconst value = this._settings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic set<Key extends keyof E[\"_settings\"]>(key: Key, value: E[\"_settings\"][Key]) {\n\t\tthis._settings[key] = value;\n\t\t// TODO maybe only do this if the value changed ?\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic remove<Key extends keyof this[\"_settings\"]>(key: Key) {\n\t\tdelete this._settings[key];\n\t\t// TODO maybe only do this if the value changed ?\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic setAll(settings: this[\"_settings\"]) {\n\t\t$object.keys(settings).forEach((key) => {\n\t\t\tthis._settings[key] = settings[key];\n\t\t});\n\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic _apply(other: State<E>, seen: Dirty<E[\"_settings\"]>): void {\n\t\t$object.each(this._settings, (key, value) => {\n\t\t\tif (!seen[key] && !other._userSettings[key]) {\n\t\t\t\tseen[key] = true;\n\t\t\t\tother.setRaw(key, value);\n\t\t\t}\n\t\t});\n\t}\n}\n\n\nexport class TemplateStates<E extends Entity> {\n\tprivate _template: Template<E>;\n\tprivate _states: { [key: string]: TemplateState<E> } = {};\n\n\tconstructor(template: Template<E>) {\n\t\tthis._template = template;\n\t}\n\n\tpublic lookup(name: string): TemplateState<E> | undefined {\n\t\treturn this._states[name];\n\t}\n\n\tpublic create(name: string, settings: Partial<E[\"_settings\"]>): TemplateState<E> {\n\t\tconst state = this._states[name];\n\n\t\tif (state) {\n\t\t\tstate.setAll(settings);\n\t\t\treturn state;\n\n\t\t} else {\n\t\t\tconst state = new TemplateState(name, this._template, settings);\n\t\t\tthis._states[name] = state;\n\t\t\tthis._template._stateChanged(name);\n\t\t\treturn state;\n\t\t}\n\t}\n\n\tpublic remove(name: string) {\n\t\tdelete this._states[name];\n\t\tthis._template._stateChanged(name);\n\t}\n\n\tpublic _apply(entity: E, state: ApplyState<E>): void {\n\t\t$object.each(this._states, (key, value) => {\n\t\t\tlet seen = state.states[key];\n\n\t\t\tif (seen == null) {\n\t\t\t\tseen = state.states[key] = {};\n\t\t\t}\n\n\t\t\tconst other = entity.states.create(key as string, {});\n\t\t\tvalue._apply(other, seen);\n\t\t});\n\t}\n}\n\n\nexport class TemplateAdapters<E extends Entity> {\n\tprivate _callbacks: { [K in keyof E[\"_settings\"]]?: Array<<O extends E>(value: O[\"_settings\"][K], target: O, key: K) => O[\"_settings\"][K]> } = {};\n\n\tpublic add<Key extends keyof E[\"_settings\"]>(key: Key, callback: (value: E[\"_settings\"][Key], target: E, key: Key) => E[\"_settings\"][Key]): IDisposer {\n\t\tlet callbacks = this._callbacks[key];\n\n\t\tif (callbacks === undefined) {\n\t\t\tcallbacks = this._callbacks[key] = [];\n\t\t}\n\n\t\tcallbacks.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(callbacks!, callback);\n\n\t\t\tif (callbacks!.length === 0) {\n\t\t\t\tdelete this._callbacks[key];\n\t\t\t}\n\t\t});\n\t}\n\n\tpublic remove<Key extends keyof E[\"_settings\"]>(key: Key) {\n\t\tconst callbacks = this._callbacks[key];\n\n\t\tif (callbacks !== undefined) {\n\t\t\tdelete this._callbacks[key];\n\t\t}\n\t}\n\n\tpublic _apply(entity: E): IDisposer {\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$object.each(this._callbacks, (key, callbacks) => {\n\t\t\t$array.each(callbacks, (callback) => {\n\t\t\t\tdisposers.push(entity.adapters.add(key, callback));\n\t\t\t});\n\t\t});\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n}\n\n\nexport interface ApplyState<E extends Entity> {\n\tsettings: Dirty<E[\"_settings\"]>;\n\tprivateSettings: Dirty<E[\"_privateSettings\"]>;\n\tstates: { [name: string]: Dirty<E[\"_settings\"]> };\n}\n\n\n// TODO maybe extend from Properties ?\nexport class Template<E extends Entity> {\n\tpublic _settings: Partial<E[\"_settings\"]>;\n\tpublic _privateSettings: E[\"_privateSettings\"] = {};\n\n\t// TODO code duplication with Properties\n\tpublic _settingEvents: { [K in keyof this[\"_settings\"]]?: Array<<V extends this[\"_settings\"][K]>(value: V) => void> } = {};\n\tpublic _privateSettingEvents: { [K in keyof this[\"_settings\"]]?: Array<<V extends this[\"_settings\"][K]>(value: V) => void> } = {};\n\n\tpublic _entities: Array<E> = [];\n\n\tpublic readonly states: TemplateStates<E> = new TemplateStates(this);\n\n\tpublic readonly adapters: TemplateAdapters<E> = new TemplateAdapters();\n\tpublic readonly events: EventDispatcher<Events<E, E[\"_events\"]>> = new EventDispatcher();\n\n\tpublic setup: (<O extends E>(entity: O) => void) | undefined;\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<E extends Entity>(settings: E[\"_settings\"]): Template<E> {\n\t\treturn new Template<E>(settings, true);\n\t}\n\n\t/**\n\t * Array of all entities using this template.\n\t */\n\tpublic get entities():Array<E>{\n\t\treturn this._entities;\n\t}\n\n\tconstructor(settings: E[\"_settings\"], isReal: boolean) {\n\t\tif (!isReal) {\n\t\t\tthrow new Error(\"You cannot use `new Class()`, instead use `Class.new()`\");\n\t\t}\n\n\t\tthis._settings = settings;\n\t}\n\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key): this[\"_settings\"][Key];\n\tpublic get<Key extends keyof this[\"_settings\"], F>(key: Key, fallback: F): NonNullable<this[\"_settings\"][Key]> | F;\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key, fallback?: any): any {\n\t\tconst value = this._settings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic setRaw<Key extends keyof this[\"_settings\"]>(key: Key, value: this[\"_settings\"][Key]) {\n\t\tthis._settings[key] = value;\n\t}\n\n\tpublic set<Key extends keyof this[\"_settings\"]>(key: Key, value: this[\"_settings\"][Key]) {\n\t\tif (this._settings[key] !== value) {\n\t\t\tthis.setRaw(key, value);\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._setTemplateProperty(this, key, value);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic remove<Key extends keyof this[\"_settings\"]>(key: Key): void {\n\t\tif (key in this._settings) {\n\t\t\tdelete this._settings[key];\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._removeTemplateProperty(key);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic removeAll(): void {\n\t\t$object.each(this._settings, (key, _value) => {\n\t\t\tthis.remove(key);\n\t\t});\n\t}\n\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"], F>(key: Key, fallback: F): NonNullable<this[\"_privateSettings\"][Key]> | F;\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key): this[\"_privateSettings\"][Key];\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key, fallback?: any): any {\n\t\tconst value = this._privateSettings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic setPrivateRaw<Key extends keyof this[\"_privateSettings\"], Value extends this[\"_privateSettings\"][Key]>(key: Key, value: Value): Value {\n\t\tthis._privateSettings[key] = value;\n\t\treturn value;\n\t}\n\n\tpublic setPrivate<Key extends keyof this[\"_privateSettings\"], Value extends this[\"_privateSettings\"][Key]>(key: Key, value: Value): Value {\n\t\tif (this._privateSettings[key] !== value) {\n\t\t\tthis.setPrivateRaw(key, value);\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._setTemplatePrivateProperty(this, key, value);\n\t\t\t});\n\t\t}\n\n\t\treturn value;\n\t}\n\n\tpublic removePrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key): void {\n\t\tif (key in this._privateSettings) {\n\t\t\tdelete this._privateSettings[key];\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._removeTemplatePrivateProperty(key);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic setAll(value: this[\"_settings\"]) {\n\t\t$object.each(value, (key, value) => {\n\t\t\tthis.set(key, value);\n\t\t});\n\t}\n\n\t// TODO code duplication with Properties\n\tpublic on<Key extends keyof this[\"_settings\"]>(key: Key, callback: (value: this[\"_settings\"][Key], target?: E, key?: Key) => void): IDisposer {\n\t\tlet events = this._settingEvents[key];\n\n\t\tif (events === undefined) {\n\t\t\tevents = this._settingEvents[key] = [];\n\t\t}\n\n\t\tevents.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(events!, callback);\n\n\t\t\tif (events!.length === 0) {\n\t\t\t\tdelete this._settingEvents[key];\n\t\t\t}\n\t\t});\n\t}\n\n\t// TODO code duplication with Properties\n\tpublic onPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key, callback: (value: this[\"_privateSettings\"][Key], target?: E, key?: Key) => void): IDisposer {\n\t\tlet events = this._privateSettingEvents[key];\n\n\t\tif (events === undefined) {\n\t\t\tevents = this._privateSettingEvents[key] = [];\n\t\t}\n\n\t\tevents.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(events!, callback);\n\n\t\t\tif (events!.length === 0) {\n\t\t\t\tdelete this._privateSettingEvents[key];\n\t\t\t}\n\t\t});\n\t}\n\n\tpublic _apply(entity: E, state: ApplyState<E>): IDisposer {\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$object.each(this._settingEvents, (key, events) => {\n\t\t\t$array.each(events, (event) => {\n\t\t\t\tdisposers.push(entity.on(key, event));\n\t\t\t});\n\t\t});\n\n\t\t$object.each(this._privateSettingEvents, (key, events) => {\n\t\t\t$array.each(events, (event) => {\n\t\t\t\tdisposers.push(entity.onPrivate(key, event));\n\t\t\t});\n\t\t});\n\n\t\tthis.states._apply(entity, state);\n\n\t\tdisposers.push(this.adapters._apply(entity));\n\t\tdisposers.push(entity.events.copyFrom(this.events));\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n\n\tpublic _setObjectTemplate(entity: E) {\n\t\tthis._entities.push(entity);\n\t}\n\n\tpublic _removeObjectTemplate(entity: E) {\n\t\t$array.remove(this._entities, entity);\n\t}\n\n\tpublic _stateChanged(name: string): void {\n\t\tthis._entities.forEach((entity) => {\n\t\t\tentity._applyStateByKey(name);\n\t\t});\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"Template.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Template.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAU,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAa,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,OAAO,MAAM,UAAU,CAAC;AACpC,OAAO,KAAK,KAAK,MAAM,QAAQ,CAAC;AAGhC,SAAS,eAAe,CAAC,QAAgB;IACxC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACtC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAQ,KAAa,CAAC,OAAO,KAAK,UAAU,EAAE;YACzE,KAAa,CAAC,aAAa,GAAG,IAAI,CAAC;YACnC,KAAa,CAAC,OAAO,EAAE,CAAC;SACzB;IACF,CAAC,CAAC,CAAC;AACJ,CAAC;AAGD,MAAM,OAAO,aAAa;IAMzB,YAAY,IAAY,EAAE,QAAqB,EAAE,QAAiC;QALlF;;;;;WAA0C;QAE1C;;;;;WAAsB;QACtB;;;;;WAA+B;QAG9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAEM,QAAQ;QACd,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAIM,GAAG,CAAsC,GAAQ,EAAE,QAAc;QACvE,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,KAAK,KAAK,SAAS,EAAE;YACxB,OAAO,KAAK,CAAC;SAEb;aAAM;YACN,OAAO,QAAQ,CAAC;SAChB;IACF,CAAC;IAEM,GAAG,CAAmC,GAAQ,EAAE,KAA0B;QAChF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAC5B,iDAAiD;QACjD,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAEM,MAAM,CAAsC,GAAQ;QAC1D,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC3B,iDAAiD;QACjD,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAEM,MAAM,CAAC,QAA2B;QACxC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACtC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAEM,MAAM,CAAC,KAAe,EAAE,IAA2B;QACzD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC3C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE;gBAC5C,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;gBACjB,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aACzB;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;CACD;AAGD,MAAM,OAAO,cAAc;IAI1B,YAAY,QAAqB;QAHjC;;;;;WAA+B;QAC/B;;;;mBAAuD,EAAE;WAAC;QAGzD,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAEM,QAAQ;QACd,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAC1C,KAAK,CAAC,QAAQ,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAEM,MAAM,CAAC,IAAY,EAAE,QAAiC;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,KAAK,EAAE;YACV,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACvB,OAAO,KAAK,CAAC;SAEb;aAAM;YACN,MAAM,KAAK,GAAG,IAAI,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAChE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YACnC,OAAO,KAAK,CAAC;SACb;IACF,CAAC;IAEM,MAAM,CAAC,IAAY;QACzB,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAEM,MAAM,CAAC,MAAS,EAAE,KAAoB;QAC5C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACzC,IAAI,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAE7B,IAAI,IAAI,IAAI,IAAI,EAAE;gBACjB,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;aAC9B;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAa,EAAE,EAAE,CAAC,CAAC;YACtD,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACJ,CAAC;CACD;AAGD,MAAM,OAAO,gBAAgB;IAA7B;QACC;;;;mBAA+I,EAAE;WAAC;IAuCnJ,CAAC;IArCO,GAAG,CAAmC,GAAQ,EAAE,QAAkF;QACxI,IAAI,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAErC,IAAI,SAAS,KAAK,SAAS,EAAE;YAC5B,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;SACtC;QAED,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEzB,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;YACxB,MAAM,CAAC,WAAW,CAAC,SAAU,EAAE,QAAQ,CAAC,CAAC;YAEzC,IAAI,SAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC5B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;aAC5B;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;IAEM,MAAM,CAAmC,GAAQ;QACvD,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAEvC,IAAI,SAAS,KAAK,SAAS,EAAE;YAC5B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SAC5B;IACF,CAAC;IAEM,MAAM,CAAC,MAAS;QACtB,MAAM,SAAS,GAAqB,EAAE,CAAC;QAEvC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;YAChD,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACnC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;CACD;AAUD,sCAAsC;AACtC,MAAM,OAAO,QAAQ;IAqEpB,YAAY,QAAwB,EAAE,MAAe;QApErD;;;;mBAA6B,KAAK;WAAC;QAEnC;;;;;WAA0C;QAC1C;;;;mBAAiD,EAAE;WAAC;QAEpD,wCAAwC;QACxC;;;;mBAAwH,EAAE;WAAC;QAC3H;;;;mBAA+H,EAAE;WAAC;QAElI;;;;mBAA6B,EAAE;WAAC;QAEhC;;;;mBAA4C,IAAI,cAAc,CAAC,IAAI,CAAC;WAAC;QAErE;;;;mBAAgD,IAAI,gBAAgB,EAAE;WAAC;QACvE;;;;mBAAmE,IAAI,eAAe,EAAE;WAAC;QAEzF;;;;;WAA6D;QAqD5D,IAAI,CAAC,MAAM,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;SAC3E;QAED,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAxDD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAmB,QAAwB;QAC3D,OAAO,IAAI,QAAQ,CAAI,QAAQ,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAES,QAAQ;QACjB,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChC,eAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACxC,CAAC;IAED;;;;OAIG;IACI,UAAU;QAChB,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAED;;OAEG;IACI,OAAO;QACb,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YACtB,IAAI,CAAC,QAAQ,EAAE,CAAC;SAChB;IACF,CAAC;IAEO,cAAc;QACrB,IAAI,IAAI,CAAC,SAAS,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;SACxC;IACF,CAAC;IAED;;OAEG;IACH,IAAW,QAAQ;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IAYM,GAAG,CAAsC,GAAQ,EAAE,QAAc;QACvE,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,KAAK,KAAK,SAAS,EAAE;YACxB,OAAO,KAAK,CAAC;SAEb;aAAM;YACN,OAAO,QAAQ,CAAC;SAChB;IACF,CAAC;IAEM,MAAM,CAAsC,GAAQ,EAAE,KAA6B;QACzF,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC7B,CAAC;IAEM,GAAG,CAAsC,GAAQ,EAAE,KAA6B;QACtF,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;YAClC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAExB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACjC,MAAM,CAAC,oBAAoB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YAC/C,CAAC,CAAC,CAAC;SACH;IACF,CAAC;IAEM,MAAM,CAAsC,GAAQ;QAC1D,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE;YAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAE3B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACjC,MAAM,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC;YACrC,CAAC,CAAC,CAAC;SACH;IACF,CAAC;IAEM,SAAS;QACf,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YAC5C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACJ,CAAC;IAIM,UAAU,CAA6C,GAAQ,EAAE,QAAc;QACrF,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAEzC,IAAI,KAAK,KAAK,SAAS,EAAE;YACxB,OAAO,KAAK,CAAC;SAEb;aAAM;YACN,OAAO,QAAQ,CAAC;SAChB;IACF,CAAC;IAEM,aAAa,CAA0F,GAAQ,EAAE,KAAY;QACnI,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACnC,OAAO,KAAK,CAAC;IACd,CAAC;IAEM,UAAU,CAA0F,GAAQ,EAAE,KAAY;QAChI,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;YACzC,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAE/B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACjC,MAAM,CAAC,2BAA2B,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACtD,CAAC,CAAC,CAAC;SACH;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAEM,aAAa,CAA6C,GAAQ;QACxE,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,GAAG,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACjC,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;YAElC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACjC,MAAM,CAAC,8BAA8B,CAAC,GAAG,CAAC,CAAC;YAC5C,CAAC,CAAC,CAAC;SACH;IACF,CAAC;IAEM,MAAM,CAAC,KAAwB;QACrC,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAClC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,wCAAwC;IACjC,EAAE,CAAsC,GAAQ,EAAE,QAAwE;QAChI,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QAEtC,IAAI,MAAM,KAAK,SAAS,EAAE;YACzB,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;SACvC;QAED,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEtB,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;YACxB,MAAM,CAAC,WAAW,CAAC,MAAO,EAAE,QAAQ,CAAC,CAAC;YAEtC,IAAI,MAAO,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;aAChC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,wCAAwC;IACjC,SAAS,CAA6C,GAAQ,EAAE,QAA+E;QACrJ,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;QAE7C,IAAI,MAAM,KAAK,SAAS,EAAE;YACzB,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;SAC9C;QAED,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEtB,OAAO,IAAI,QAAQ,CAAC,GAAG,EAAE;YACxB,MAAM,CAAC,WAAW,CAAC,MAAO,EAAE,QAAQ,CAAC,CAAC;YAEtC,IAAI,MAAO,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzB,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;aACvC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,MAAS,EAAE,KAAoB;QAC5C,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,MAAM,SAAS,GAAqB,EAAE,CAAC;QAEvC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACjD,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC7B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACxD,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC7B,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAElC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7C,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAEpD,OAAO,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC;IAEM,kBAAkB,CAAC,MAAS;QAClC,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAEM,qBAAqB,CAAC,MAAS;QACrC,wBAAwB;QACxB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACvC,CAAC;IAEM,aAAa,CAAC,IAAY;QAChC,IAAI,CAAC,cAAc,EAAE,CAAC;QAEtB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YACjC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACJ,CAAC;CACD","sourcesContent":["import type { Entity, Dirty } from \"./Entity\";\nimport type { State } from \"./States\";\nimport { EventDispatcher, Events } from \"./EventDispatcher\";\nimport { IDisposer, Disposer, MultiDisposer } from \"./Disposer\";\nimport * as $array from \"./Array\";\nimport * as $object from \"./Object\";\nimport * as $type from \"./Type\";\n\n\nfunction disposeSettings(settings: object) {\n\t$object.each(settings, (_key, value) => {\n\t\tif ($type.isObject(value) && typeof (value as any).dispose === \"function\") {\n\t\t\t(value as any).enableDispose = true;\n\t\t\t(value as any).dispose();\n\t\t}\n\t});\n}\n\n\nexport class TemplateState<E extends Entity> {\n\tpublic _settings: Partial<E[\"_settings\"]>;\n\n\tprivate _name: string;\n\tprivate _template: Template<E>;\n\n\tconstructor(name: string, template: Template<E>, settings: Partial<E[\"_settings\"]>) {\n\t\tthis._name = name;\n\t\tthis._template = template;\n\t\tthis._settings = settings;\n\t}\n\n\tpublic _dispose() {\n\t\tdisposeSettings(this._settings);\n\t}\n\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key): this[\"_settings\"][Key];\n\tpublic get<Key extends keyof this[\"_settings\"], F>(key: Key, fallback: F): NonNullable<this[\"_settings\"][Key]> | F;\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key, fallback?: any): any {\n\t\tconst value = this._settings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic set<Key extends keyof E[\"_settings\"]>(key: Key, value: E[\"_settings\"][Key]) {\n\t\tthis._settings[key] = value;\n\t\t// TODO maybe only do this if the value changed ?\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic remove<Key extends keyof this[\"_settings\"]>(key: Key) {\n\t\tdelete this._settings[key];\n\t\t// TODO maybe only do this if the value changed ?\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic setAll(settings: this[\"_settings\"]) {\n\t\t$object.keys(settings).forEach((key) => {\n\t\t\tthis._settings[key] = settings[key];\n\t\t});\n\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic _apply(other: State<E>, seen: Dirty<E[\"_settings\"]>): void {\n\t\t$object.each(this._settings, (key, value) => {\n\t\t\tif (!seen[key] && !other._userSettings[key]) {\n\t\t\t\tseen[key] = true;\n\t\t\t\tother.setRaw(key, value);\n\t\t\t}\n\t\t});\n\t}\n}\n\n\nexport class TemplateStates<E extends Entity> {\n\tprivate _template: Template<E>;\n\tprivate _states: { [key: string]: TemplateState<E> } = {};\n\n\tconstructor(template: Template<E>) {\n\t\tthis._template = template;\n\t}\n\n\tpublic _dispose() {\n\t\t$object.each(this._states, (_key, state) => {\n\t\t\tstate._dispose();\n\t\t});\n\t}\n\n\tpublic lookup(name: string): TemplateState<E> | undefined {\n\t\treturn this._states[name];\n\t}\n\n\tpublic create(name: string, settings: Partial<E[\"_settings\"]>): TemplateState<E> {\n\t\tconst state = this._states[name];\n\n\t\tif (state) {\n\t\t\tstate.setAll(settings);\n\t\t\treturn state;\n\n\t\t} else {\n\t\t\tconst state = new TemplateState(name, this._template, settings);\n\t\t\tthis._states[name] = state;\n\t\t\tthis._template._stateChanged(name);\n\t\t\treturn state;\n\t\t}\n\t}\n\n\tpublic remove(name: string) {\n\t\tdelete this._states[name];\n\t\tthis._template._stateChanged(name);\n\t}\n\n\tpublic _apply(entity: E, state: ApplyState<E>): void {\n\t\t$object.each(this._states, (key, value) => {\n\t\t\tlet seen = state.states[key];\n\n\t\t\tif (seen == null) {\n\t\t\t\tseen = state.states[key] = {};\n\t\t\t}\n\n\t\t\tconst other = entity.states.create(key as string, {});\n\t\t\tvalue._apply(other, seen);\n\t\t});\n\t}\n}\n\n\nexport class TemplateAdapters<E extends Entity> {\n\tprivate _callbacks: { [K in keyof E[\"_settings\"]]?: Array<<O extends E>(value: O[\"_settings\"][K], target: O, key: K) => O[\"_settings\"][K]> } = {};\n\n\tpublic add<Key extends keyof E[\"_settings\"]>(key: Key, callback: (value: E[\"_settings\"][Key], target: E, key: Key) => E[\"_settings\"][Key]): IDisposer {\n\t\tlet callbacks = this._callbacks[key];\n\n\t\tif (callbacks === undefined) {\n\t\t\tcallbacks = this._callbacks[key] = [];\n\t\t}\n\n\t\tcallbacks.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(callbacks!, callback);\n\n\t\t\tif (callbacks!.length === 0) {\n\t\t\t\tdelete this._callbacks[key];\n\t\t\t}\n\t\t});\n\t}\n\n\tpublic remove<Key extends keyof E[\"_settings\"]>(key: Key) {\n\t\tconst callbacks = this._callbacks[key];\n\n\t\tif (callbacks !== undefined) {\n\t\t\tdelete this._callbacks[key];\n\t\t}\n\t}\n\n\tpublic _apply(entity: E): IDisposer {\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$object.each(this._callbacks, (key, callbacks) => {\n\t\t\t$array.each(callbacks, (callback) => {\n\t\t\t\tdisposers.push(entity.adapters.add(key, callback));\n\t\t\t});\n\t\t});\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n}\n\n\nexport interface ApplyState<E extends Entity> {\n\tsettings: Dirty<E[\"_settings\"]>;\n\tprivateSettings: Dirty<E[\"_privateSettings\"]>;\n\tstates: { [name: string]: Dirty<E[\"_settings\"]> };\n}\n\n\n// TODO maybe extend from Properties ?\nexport class Template<E extends Entity> implements IDisposer {\n\tprivate _disposed: boolean = false;\n\n\tpublic _settings: Partial<E[\"_settings\"]>;\n\tpublic _privateSettings: E[\"_privateSettings\"] = {};\n\n\t// TODO code duplication with Properties\n\tpublic _settingEvents: { [K in keyof this[\"_settings\"]]?: Array<<V extends this[\"_settings\"][K]>(value: V) => void> } = {};\n\tpublic _privateSettingEvents: { [K in keyof this[\"_settings\"]]?: Array<<V extends this[\"_settings\"][K]>(value: V) => void> } = {};\n\n\tpublic _entities: Array<E> = [];\n\n\tpublic readonly states: TemplateStates<E> = new TemplateStates(this);\n\n\tpublic readonly adapters: TemplateAdapters<E> = new TemplateAdapters();\n\tpublic readonly events: EventDispatcher<Events<E, E[\"_events\"]>> = new EventDispatcher();\n\n\tpublic setup: (<O extends E>(entity: O) => void) | undefined;\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<E extends Entity>(settings: E[\"_settings\"]): Template<E> {\n\t\treturn new Template<E>(settings, true);\n\t}\n\n\tprotected _dispose() {\n\t\tdisposeSettings(this._settings);\n\t\tdisposeSettings(this._privateSettings);\n\t}\n\n\t/**\n\t * Returns `true` if this element is disposed.\n\t *\n\t * @return Disposed\n\t */\n\tpublic isDisposed(): boolean {\n\t\treturn this._disposed;\n\t}\n\n\t/**\n\t * Disposes this object.\n\t */\n\tpublic dispose() {\n\t\tif (!this._disposed) {\n\t\t\tthis._disposed = true;\n\t\t\tthis._dispose();\n\t\t}\n\t}\n\n\tprivate _checkDisposed() {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"Template is disposed\");\n\t\t}\n\t}\n\n\t/**\n\t * Array of all entities using this template.\n\t */\n\tpublic get entities():Array<E>{\n\t\treturn this._entities;\n\t}\n\n\tconstructor(settings: E[\"_settings\"], isReal: boolean) {\n\t\tif (!isReal) {\n\t\t\tthrow new Error(\"You cannot use `new Class()`, instead use `Class.new()`\");\n\t\t}\n\n\t\tthis._settings = settings;\n\t}\n\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key): this[\"_settings\"][Key];\n\tpublic get<Key extends keyof this[\"_settings\"], F>(key: Key, fallback: F): NonNullable<this[\"_settings\"][Key]> | F;\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key, fallback?: any): any {\n\t\tthis._checkDisposed();\n\n\t\tconst value = this._settings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic setRaw<Key extends keyof this[\"_settings\"]>(key: Key, value: this[\"_settings\"][Key]) {\n\t\tthis._checkDisposed();\n\t\tthis._settings[key] = value;\n\t}\n\n\tpublic set<Key extends keyof this[\"_settings\"]>(key: Key, value: this[\"_settings\"][Key]) {\n\t\tthis._checkDisposed();\n\n\t\tif (this._settings[key] !== value) {\n\t\t\tthis.setRaw(key, value);\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._setTemplateProperty(this, key, value);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic remove<Key extends keyof this[\"_settings\"]>(key: Key): void {\n\t\tthis._checkDisposed();\n\n\t\tif (key in this._settings) {\n\t\t\tdelete this._settings[key];\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._removeTemplateProperty(key);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic removeAll(): void {\n\t\tthis._checkDisposed();\n\n\t\t$object.each(this._settings, (key, _value) => {\n\t\t\tthis.remove(key);\n\t\t});\n\t}\n\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"], F>(key: Key, fallback: F): NonNullable<this[\"_privateSettings\"][Key]> | F;\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key): this[\"_privateSettings\"][Key];\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key, fallback?: any): any {\n\t\tthis._checkDisposed();\n\n\t\tconst value = this._privateSettings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic setPrivateRaw<Key extends keyof this[\"_privateSettings\"], Value extends this[\"_privateSettings\"][Key]>(key: Key, value: Value): Value {\n\t\tthis._checkDisposed();\n\t\tthis._privateSettings[key] = value;\n\t\treturn value;\n\t}\n\n\tpublic setPrivate<Key extends keyof this[\"_privateSettings\"], Value extends this[\"_privateSettings\"][Key]>(key: Key, value: Value): Value {\n\t\tthis._checkDisposed();\n\n\t\tif (this._privateSettings[key] !== value) {\n\t\t\tthis.setPrivateRaw(key, value);\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._setTemplatePrivateProperty(this, key, value);\n\t\t\t});\n\t\t}\n\n\t\treturn value;\n\t}\n\n\tpublic removePrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key): void {\n\t\tthis._checkDisposed();\n\n\t\tif (key in this._privateSettings) {\n\t\t\tdelete this._privateSettings[key];\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._removeTemplatePrivateProperty(key);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic setAll(value: this[\"_settings\"]) {\n\t\tthis._checkDisposed();\n\n\t\t$object.each(value, (key, value) => {\n\t\t\tthis.set(key, value);\n\t\t});\n\t}\n\n\t// TODO code duplication with Properties\n\tpublic on<Key extends keyof this[\"_settings\"]>(key: Key, callback: (value: this[\"_settings\"][Key], target?: E, key?: Key) => void): IDisposer {\n\t\tthis._checkDisposed();\n\n\t\tlet events = this._settingEvents[key];\n\n\t\tif (events === undefined) {\n\t\t\tevents = this._settingEvents[key] = [];\n\t\t}\n\n\t\tevents.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(events!, callback);\n\n\t\t\tif (events!.length === 0) {\n\t\t\t\tdelete this._settingEvents[key];\n\t\t\t}\n\t\t});\n\t}\n\n\t// TODO code duplication with Properties\n\tpublic onPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key, callback: (value: this[\"_privateSettings\"][Key], target?: E, key?: Key) => void): IDisposer {\n\t\tthis._checkDisposed();\n\n\t\tlet events = this._privateSettingEvents[key];\n\n\t\tif (events === undefined) {\n\t\t\tevents = this._privateSettingEvents[key] = [];\n\t\t}\n\n\t\tevents.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(events!, callback);\n\n\t\t\tif (events!.length === 0) {\n\t\t\t\tdelete this._privateSettingEvents[key];\n\t\t\t}\n\t\t});\n\t}\n\n\tpublic _apply(entity: E, state: ApplyState<E>): IDisposer {\n\t\tthis._checkDisposed();\n\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$object.each(this._settingEvents, (key, events) => {\n\t\t\t$array.each(events, (event) => {\n\t\t\t\tdisposers.push(entity.on(key, event));\n\t\t\t});\n\t\t});\n\n\t\t$object.each(this._privateSettingEvents, (key, events) => {\n\t\t\t$array.each(events, (event) => {\n\t\t\t\tdisposers.push(entity.onPrivate(key, event));\n\t\t\t});\n\t\t});\n\n\t\tthis.states._apply(entity, state);\n\n\t\tdisposers.push(this.adapters._apply(entity));\n\t\tdisposers.push(entity.events.copyFrom(this.events));\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n\n\tpublic _setObjectTemplate(entity: E) {\n\t\tthis._checkDisposed();\n\t\tthis._entities.push(entity);\n\t}\n\n\tpublic _removeObjectTemplate(entity: E) {\n\t\t//this._checkDisposed();\n\t\t$array.remove(this._entities, entity);\n\t}\n\n\tpublic _stateChanged(name: string): void {\n\t\tthis._checkDisposed();\n\n\t\tthis._entities.forEach((entity) => {\n\t\t\tentity._applyStateByKey(name);\n\t\t});\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Annotator.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/plugins/exporting/Annotator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAQ/F,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IAE1D;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,WAAW,CAAC,EAAE,GAAG,CAAC;IAElB;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,cAAc,CAAC,EAAE;QAAC,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC,CAAC;IAExC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,mBAAmB,CAAC,EAAE;QAAC,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC,CAAC;CAE7C;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc;CACxD;AAED,MAAM,WAAW,gBAAiB,SAAQ,aAAa;CACtD;AAID;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,MAAM;IACpC,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,OAAO,EAAE,gBAAgB,CAAC;IAEzC,OAAO,CAAC,UAAU,CAAC,CAAY;IAC/B,OAAO,CAAC,QAAQ,CAAC,CAAU;IAC3B,OAAO,CAAC,WAAW,CAAC,CAAM;IAC1B,OAAO,CAAC,WAAW,CAAC,CAAkB;IAKtC,SAAS,CAAC,SAAS;IAMZ,cAAc;IAQrB;;;OAGG;IACU,IAAI;IAeJ,YAAY;IAQzB;;OAEG;IACU,KAAK;IAOlB;;;OAGG;IACU,MAAM;IASnB;;OAEG;IACI,KAAK;IAOC,MAAM;
|
|
1
|
+
{"version":3,"file":"Annotator.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/plugins/exporting/Annotator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAQ/F,MAAM,WAAW,kBAAmB,SAAQ,eAAe;IAE1D;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,WAAW,CAAC,EAAE,GAAG,CAAC;IAElB;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,cAAc,CAAC,EAAE;QAAC,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC,CAAC;IAExC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,mBAAmB,CAAC,EAAE;QAAC,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC,CAAC;CAE7C;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc;CACxD;AAED,MAAM,WAAW,gBAAiB,SAAQ,aAAa;CACtD;AAID;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,MAAM;IACpC,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,OAAO,EAAE,gBAAgB,CAAC;IAEzC,OAAO,CAAC,UAAU,CAAC,CAAY;IAC/B,OAAO,CAAC,QAAQ,CAAC,CAAU;IAC3B,OAAO,CAAC,WAAW,CAAC,CAAM;IAC1B,OAAO,CAAC,WAAW,CAAC,CAAkB;IAKtC,SAAS,CAAC,SAAS;IAMZ,cAAc;IAQrB;;;OAGG;IACU,IAAI;IAeJ,YAAY;IAQzB;;OAEG;IACU,KAAK;IAOlB;;;OAGG;IACU,MAAM;IASnB;;OAEG;IACI,KAAK;IAOC,MAAM;IAUnB,SAAS,CAAC,QAAQ,IAAI,IAAI;YAQZ,UAAU;IAyDxB;;OAEG;YACW,YAAY;IAI1B;;;;;OAKG;IACU,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC;CAK1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Annotator.js","sourceRoot":"","sources":["../../../../../src/.internal/plugins/exporting/Annotator.ts"],"names":[],"mappings":"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","sourcesContent":["import { Entity, IEntitySettings, IEntityPrivate, IEntityEvents } from \"../../core/util/Entity\"\nimport { Container } from \"../../core/render/Container\";\nimport { Picture } from \"../../core/render/Picture\";\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $object from \"../../core/util/Object\";\n\nimport { p100 } from \"../../core/util/Percent\";\n\nexport interface IAnnotatorSettings extends IEntitySettings {\n\n\t/**\n\t * Layer number to use for annotations.\n\t *\n\t * @default 1000\n\t */\n\tlayer?: number;\n\n\t/**\n\t * Raw annotation info saved by MarkerJS.\n\t */\n\tmarkerState?: any;\n\n\t/**\n\t * MarkerArea settings in form of an object where keys are setting names and\n\t * value is a setting value. E.g.:\n\t *\n\t * ```TypeScript\n\t * let annotator = am5plugins_exporting.Annotator.new(root, {\n\t * markerSettings: {\n\t * defaultColorSet: [\"red\", \"green\", \"blue\"],\n\t * wrapText: true\n\t * }\n\t *});\n\t * ```\n\t * ```JavaScript\n\t * var annotator = am5plugins_exporting.Annotator.new(root, {\n\t * markerSettings: {\n\t * defaultColorSet: [\"red\", \"green\", \"blue\"],\n\t * wrapText: true\n\t * }\n\t *});\n\t * ```\n\t *\n\t * @see {@link https://markerjs.com/reference/classes/settings.html} for a full list of settings\n\t * @since 5.7.4\n\t */\n\tmarkerSettings?: {[index: string]: any};\n\n\t/**\n\t * MarkerArea style settings for user interface elements.E.g.:\n\t *\n\t * ```TypeScript\n\t * let annotator = am5plugins_exporting.Annotator.new(root, {\n\t * markerStyleSettings: {\n\t * toolboxColor: \"#F472B6\",\n\t * toolboxAccentColor: \"#BE185D\"\n\t * }\n\t *});\n\t * ```\n\t * ```JavaScript\n\t * var annotator = am5plugins_exporting.Annotator.new(root, {\n\t * markerStyleSettings: {\n\t * toolboxColor: \"#F472B6\",\n\t * toolboxAccentColor: \"#BE185D\"\n\t * }\n\t *});\n\t * ```\n\t *\n\t * @see {@link https://markerjs.com/reference/classes/settings.html} for a full list of settings\n\t * @since 5.7.5\n\t */\n\tmarkerStyleSettings?: {[index: string]: any};\n\n}\n\nexport interface IAnnotatorPrivate extends IEntityPrivate {\n}\n\nexport interface IAnnotatorEvents extends IEntityEvents {\n}\n\n\n\n/**\n * A plugin that can be used to annotate charts.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/exporting/annotator/} for more info\n */\nexport class Annotator extends Entity {\n\tpublic static className: string = \"Annotator\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([Annotator.className]);\n\n\tdeclare public _settings: IAnnotatorSettings;\n\tdeclare public _privateSettings: IAnnotatorPrivate;\n\tdeclare public _events: IAnnotatorEvents;\n\n\tprivate _container?: Container;\n\tprivate _picture?: Picture;\n\tprivate _markerArea?: any;\n\tprivate _skipRender?: boolean = false;\n\n\t//public extraImages: Array<Root | IAnnotatorImageSource> = [];\n\t//public dataSources: any[] = [];\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis._setRawDefault(\"layer\", 1000);\n\t\tthis._root.addDisposer(this);\n\t}\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"markerState\")) {\n\t\t\tthis._renderState();\n\t\t}\n\t}\n\n\t/**\n\t * Triggers annotation mode on the chart. This will display UI toolbars and\n\t * disable all interactions on the chart itself.\n\t */\n\tpublic async open() {\n\n\t\t// Delay this so that it's not knocked off by closing of the ExportingMenu\n\t\tthis.setTimeout(() => {\n\t\t\tthis._root._renderer.interactionsEnabled = false;\n\t\t}, 100)\n\n\t\tconst markerArea = await this.getMarkerArea();\n\t\tmarkerArea.show();\n\t\tthis._picture!.hide(0);\n\t\tif (this.get(\"markerState\")) {\n\t\t\tmarkerArea.restoreState(this.get(\"markerState\"));\n\t\t}\n\t}\n\n\tpublic async _renderState() {\n\t\tconst markerArea = await this.getMarkerArea();\n\t\tif (this.get(\"markerState\")) {\n\t\t\tthis._skipRender = true;\n\t\t\tmarkerArea.renderState(this.get(\"markerState\"));\n\t\t}\n\t}\n\n\t/**\n\t * Exists from annotation mode. All annotations remain visible on the chart.\n\t */\n\tpublic async close() {\n\t\t//this._root._renderer.interactionsEnabled = true;\n\t\tconst markerArea = await this.getMarkerArea();\n\t\tmarkerArea!.close();\n\t\tthis._markerArea = undefined;\n\t}\n\n\t/**\n\t * Exits from annotation mode. Any changes made during last session of the\n\t * annotation editing are cancelled.\n\t */\n\tpublic async cancel() {\n\t\tthis._root._renderer.interactionsEnabled = true;\n\t\tconst markerArea = await this.getMarkerArea();\n\t\tthis._picture!.show(0);\n\t\tmarkerArea!.close();\n\t\tthis._markerArea = undefined;\n\t\t//markerArea!.cancel();\n\t}\n\n\t/**\n\t * All annotations are removed.\n\t */\n\tpublic clear() {\n\t\tthis.set(\"markerState\", undefined);\n\t\tif (this._picture) {\n\t\t\tthis._picture.set(\"src\", \"\");\n\t\t}\n\t}\n\n\tpublic async toggle() {\n\t\tconst markerArea = await this.getMarkerArea();\n\t\tif (markerArea.isOpen) {\n\t\t\tthis.close();\n\t\t}\n\t\telse {\n\t\t\tthis.open();\n\t\t}\n\t}\n\n\tpublic dispose(): void {\n\t\tsuper.dispose();\n\t\tif (this._markerArea && this._markerArea.isOpen) {\n\t\t\tthis._markerArea.close();\n\t\t}\n\t}\n\n\tprivate async _maybeInit() {\n\n\t\t// Create layer canvas\n\t\tif (!this._container) {\n\t\t\tthis._container = this._root.container.children.push(Container.new(this._root, {\n\t\t\t\twidth: p100,\n\t\t\t\theight: p100,\n\t\t\t\tlayer: this.get(\"layer\"),\n\t\t\t\tinteractiveChildren: false\n\t\t\t}));\n\n\t\t\tthis._picture = this._container.children.push(Picture.new(this._root, {\n\t\t\t\twidth: p100,\n\t\t\t\theight: p100\n\t\t\t}));\n\t\t}\n\n\t\t// Create MarkerArea\n\t\tif (!this._markerArea) {\n\t\t\tconst markerjs2 = await this._getMarkerJS();\n\t\t\tconst canvas = this._container._display.getCanvas();\n\t\t\tconst markerArea = new markerjs2.MarkerArea(canvas);\n\t\t\t//markerArea.renderTarget = canvas;\n\t\t\tmarkerArea.uiStyleSettings.logoPosition = \"right\";\n\t\t\tmarkerArea.uiStyleSettings.zIndex = 20;\n\t\t\tmarkerArea.targetRoot = canvas.parentElement!;\n\n\t\t\t// Apply custom settings\n\t\t\tconst markerSettings = this.get(\"markerSettings\", {});\n\t\t\t$object.each(markerSettings, (key, value) => {\n\t\t\t\tmarkerArea.settings[key] = value;\n\t\t\t});\n\n\t\t\tconst markerStyleSettings = this.get(\"markerStyleSettings\", {});\n\t\t\t$object.each(markerStyleSettings, (key, value) => {\n\t\t\t\tmarkerArea.uiStyleSettings[key] = value;\n\t\t\t});\n\n\t\t\tthis._disposers.push($utils.addEventListener(markerArea, \"close\", () => {\n\t\t\t\tthis._root._renderer.interactionsEnabled = true;\n\t\t\t\tthis._picture!.show(0);\n\t\t\t\tthis._markerArea = undefined;\n\t\t\t}));\n\n\t\t\tthis._disposers.push($utils.addEventListener(markerArea, \"render\", (event: any) => {\n\t\t\t\tconst picture = this._picture!;\n\t\t\t\tpicture.set(\"src\", event.dataUrl);\n\t\t\t\tif (!this._skipRender) {\n\t\t\t\t\tthis.set(\"markerState\", event.state);\n\t\t\t\t}\n\t\t\t\tthis._skipRender = false;\n\t\t\t}));\n\n\t\t\tthis._markerArea = markerArea;\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tprivate async _getMarkerJS(): Promise<any> {\n\t\treturn await import(/* webpackChunkName: \"markerjs2\" */ \"markerjs2\");\n\t}\n\n\t/**\n\t * An instance of MarkerJS's [[MarkerArea]].\n\t *\n\t * @see {@link https://markerjs.com/docs/getting-started} for more info\n\t * @return MarkerArea\n\t */\n\tpublic async getMarkerArea(): Promise<any> {\n\t\tawait this._maybeInit();\n\t\treturn this._markerArea;\n\t}\n\n}\n"]}
|
|
1
|
+
{"version":3,"file":"Annotator.js","sourceRoot":"","sources":["../../../../../src/.internal/plugins/exporting/Annotator.ts"],"names":[],"mappings":"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","sourcesContent":["import { Entity, IEntitySettings, IEntityPrivate, IEntityEvents } from \"../../core/util/Entity\"\nimport { Container } from \"../../core/render/Container\";\nimport { Picture } from \"../../core/render/Picture\";\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $object from \"../../core/util/Object\";\n\nimport { p100 } from \"../../core/util/Percent\";\n\nexport interface IAnnotatorSettings extends IEntitySettings {\n\n\t/**\n\t * Layer number to use for annotations.\n\t *\n\t * @default 1000\n\t */\n\tlayer?: number;\n\n\t/**\n\t * Raw annotation info saved by MarkerJS.\n\t */\n\tmarkerState?: any;\n\n\t/**\n\t * MarkerArea settings in form of an object where keys are setting names and\n\t * value is a setting value. E.g.:\n\t *\n\t * ```TypeScript\n\t * let annotator = am5plugins_exporting.Annotator.new(root, {\n\t * markerSettings: {\n\t * defaultColorSet: [\"red\", \"green\", \"blue\"],\n\t * wrapText: true\n\t * }\n\t *});\n\t * ```\n\t * ```JavaScript\n\t * var annotator = am5plugins_exporting.Annotator.new(root, {\n\t * markerSettings: {\n\t * defaultColorSet: [\"red\", \"green\", \"blue\"],\n\t * wrapText: true\n\t * }\n\t *});\n\t * ```\n\t *\n\t * @see {@link https://markerjs.com/reference/classes/settings.html} for a full list of settings\n\t * @since 5.7.4\n\t */\n\tmarkerSettings?: {[index: string]: any};\n\n\t/**\n\t * MarkerArea style settings for user interface elements.E.g.:\n\t *\n\t * ```TypeScript\n\t * let annotator = am5plugins_exporting.Annotator.new(root, {\n\t * markerStyleSettings: {\n\t * toolboxColor: \"#F472B6\",\n\t * toolboxAccentColor: \"#BE185D\"\n\t * }\n\t *});\n\t * ```\n\t * ```JavaScript\n\t * var annotator = am5plugins_exporting.Annotator.new(root, {\n\t * markerStyleSettings: {\n\t * toolboxColor: \"#F472B6\",\n\t * toolboxAccentColor: \"#BE185D\"\n\t * }\n\t *});\n\t * ```\n\t *\n\t * @see {@link https://markerjs.com/reference/classes/settings.html} for a full list of settings\n\t * @since 5.7.5\n\t */\n\tmarkerStyleSettings?: {[index: string]: any};\n\n}\n\nexport interface IAnnotatorPrivate extends IEntityPrivate {\n}\n\nexport interface IAnnotatorEvents extends IEntityEvents {\n}\n\n\n\n/**\n * A plugin that can be used to annotate charts.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/exporting/annotator/} for more info\n */\nexport class Annotator extends Entity {\n\tpublic static className: string = \"Annotator\";\n\tpublic static classNames: Array<string> = Entity.classNames.concat([Annotator.className]);\n\n\tdeclare public _settings: IAnnotatorSettings;\n\tdeclare public _privateSettings: IAnnotatorPrivate;\n\tdeclare public _events: IAnnotatorEvents;\n\n\tprivate _container?: Container;\n\tprivate _picture?: Picture;\n\tprivate _markerArea?: any;\n\tprivate _skipRender?: boolean = false;\n\n\t//public extraImages: Array<Root | IAnnotatorImageSource> = [];\n\t//public dataSources: any[] = [];\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis._setRawDefault(\"layer\", 1000);\n\t\tthis._root.addDisposer(this);\n\t}\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"markerState\")) {\n\t\t\tthis._renderState();\n\t\t}\n\t}\n\n\t/**\n\t * Triggers annotation mode on the chart. This will display UI toolbars and\n\t * disable all interactions on the chart itself.\n\t */\n\tpublic async open() {\n\n\t\t// Delay this so that it's not knocked off by closing of the ExportingMenu\n\t\tthis.setTimeout(() => {\n\t\t\tthis._root._renderer.interactionsEnabled = false;\n\t\t}, 100)\n\n\t\tconst markerArea = await this.getMarkerArea();\n\t\tmarkerArea.show();\n\t\tthis._picture!.hide(0);\n\t\tif (this.get(\"markerState\")) {\n\t\t\tmarkerArea.restoreState(this.get(\"markerState\"));\n\t\t}\n\t}\n\n\tpublic async _renderState() {\n\t\tconst markerArea = await this.getMarkerArea();\n\t\tif (this.get(\"markerState\")) {\n\t\t\tthis._skipRender = true;\n\t\t\tmarkerArea.renderState(this.get(\"markerState\"));\n\t\t}\n\t}\n\n\t/**\n\t * Exists from annotation mode. All annotations remain visible on the chart.\n\t */\n\tpublic async close() {\n\t\t//this._root._renderer.interactionsEnabled = true;\n\t\tconst markerArea = await this.getMarkerArea();\n\t\tmarkerArea!.close();\n\t\tthis._markerArea = undefined;\n\t}\n\n\t/**\n\t * Exits from annotation mode. Any changes made during last session of the\n\t * annotation editing are cancelled.\n\t */\n\tpublic async cancel() {\n\t\tthis._root._renderer.interactionsEnabled = true;\n\t\tconst markerArea = await this.getMarkerArea();\n\t\tthis._picture!.show(0);\n\t\tmarkerArea!.close();\n\t\tthis._markerArea = undefined;\n\t\t//markerArea!.cancel();\n\t}\n\n\t/**\n\t * All annotations are removed.\n\t */\n\tpublic clear() {\n\t\tthis.set(\"markerState\", undefined);\n\t\tif (this._picture) {\n\t\t\tthis._picture.set(\"src\", \"\");\n\t\t}\n\t}\n\n\tpublic async toggle() {\n\t\tconst markerArea = await this.getMarkerArea();\n\t\tif (markerArea.isOpen) {\n\t\t\tthis.close();\n\t\t}\n\t\telse {\n\t\t\tthis.open();\n\t\t}\n\t}\n\n\tprotected _dispose(): void {\n\t\tsuper._dispose();\n\n\t\tif (this._markerArea && this._markerArea.isOpen) {\n\t\t\tthis._markerArea.close();\n\t\t}\n\t}\n\n\tprivate async _maybeInit() {\n\n\t\t// Create layer canvas\n\t\tif (!this._container) {\n\t\t\tthis._container = this._root.container.children.push(Container.new(this._root, {\n\t\t\t\twidth: p100,\n\t\t\t\theight: p100,\n\t\t\t\tlayer: this.get(\"layer\"),\n\t\t\t\tinteractiveChildren: false\n\t\t\t}));\n\n\t\t\tthis._picture = this._container.children.push(Picture.new(this._root, {\n\t\t\t\twidth: p100,\n\t\t\t\theight: p100\n\t\t\t}));\n\t\t}\n\n\t\t// Create MarkerArea\n\t\tif (!this._markerArea) {\n\t\t\tconst markerjs2 = await this._getMarkerJS();\n\t\t\tconst canvas = this._container._display.getCanvas();\n\t\t\tconst markerArea = new markerjs2.MarkerArea(canvas);\n\t\t\t//markerArea.renderTarget = canvas;\n\t\t\tmarkerArea.uiStyleSettings.logoPosition = \"right\";\n\t\t\tmarkerArea.uiStyleSettings.zIndex = 20;\n\t\t\tmarkerArea.targetRoot = canvas.parentElement!;\n\n\t\t\t// Apply custom settings\n\t\t\tconst markerSettings = this.get(\"markerSettings\", {});\n\t\t\t$object.each(markerSettings, (key, value) => {\n\t\t\t\tmarkerArea.settings[key] = value;\n\t\t\t});\n\n\t\t\tconst markerStyleSettings = this.get(\"markerStyleSettings\", {});\n\t\t\t$object.each(markerStyleSettings, (key, value) => {\n\t\t\t\tmarkerArea.uiStyleSettings[key] = value;\n\t\t\t});\n\n\t\t\tthis._disposers.push($utils.addEventListener(markerArea, \"close\", () => {\n\t\t\t\tthis._root._renderer.interactionsEnabled = true;\n\t\t\t\tthis._picture!.show(0);\n\t\t\t\tthis._markerArea = undefined;\n\t\t\t}));\n\n\t\t\tthis._disposers.push($utils.addEventListener(markerArea, \"render\", (event: any) => {\n\t\t\t\tconst picture = this._picture!;\n\t\t\t\tpicture.set(\"src\", event.dataUrl);\n\t\t\t\tif (!this._skipRender) {\n\t\t\t\t\tthis.set(\"markerState\", event.state);\n\t\t\t\t}\n\t\t\t\tthis._skipRender = false;\n\t\t\t}));\n\n\t\t\tthis._markerArea = markerArea;\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tprivate async _getMarkerJS(): Promise<any> {\n\t\treturn await import(/* webpackChunkName: \"markerjs2\" */ \"markerjs2\");\n\t}\n\n\t/**\n\t * An instance of MarkerJS's [[MarkerArea]].\n\t *\n\t * @see {@link https://markerjs.com/docs/getting-started} for more info\n\t * @return MarkerArea\n\t */\n\tpublic async getMarkerArea(): Promise<any> {\n\t\tawait this._maybeInit();\n\t\treturn this._markerArea;\n\t}\n\n}\n"]}
|
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,35 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/).
|
|
|
5
5
|
Please note, that this project, while following numbering syntax, it DOES NOT
|
|
6
6
|
adhere to [Semantic Versioning](http://semver.org/spec/v2.0.0.html) rules.
|
|
7
7
|
|
|
8
|
+
## [5.10.7] - 2024-10-12
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
- In some cases disposing `Root` element could result in a "Template is disposed" error.
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [5.10.6] - 2024-10-11
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
- `hideDrawingGrips` setting (default: `false`) added to `StockChart`. If set to true, grips of drawings will be hidden when not in drawing mode.
|
|
18
|
+
- `toggleDrawing(enabled: boolean)` method added to `StockChart`. Toggles drawing mode on or off.
|
|
19
|
+
- `autoOpenSettings` setting (default: `true`) added to `Indicator`. If set to `false`, a settings modal will not pop up automatically when the indicator is added to chart via indicator control.
|
|
20
|
+
|
|
21
|
+
### Changed
|
|
22
|
+
- On `StockChart` labels and icons are no longer draggable to avoid interfering with chart drag/zoom.
|
|
23
|
+
- Arrow position slightly changed in "Line Arrow" drawing tool on `StockChart`. Grip at the end of the arrow removed.
|
|
24
|
+
- Arrow tip size will not increased to reflect the line thickness of a "Line Arrow".
|
|
25
|
+
- "Volume Profile" indicator had its full name hardcoded for legend. It will now use its `shortName` (which is "Volume Profile", too, by default but can be changed to anything else).
|
|
26
|
+
- `Modal` content will now have its contents aligned to `start`, rather than `left`, to properly handle RTL direction.
|
|
27
|
+
|
|
28
|
+
### Fixed
|
|
29
|
+
- "Line Arrow" drawing tool would not save its color when serialized.
|
|
30
|
+
- "Line Arrow" tip was not taking a color change.
|
|
31
|
+
- ES2025 examples involving `MapChart` were not correctly importing geodata.
|
|
32
|
+
- Using `clearDrawings()` was erroring if there was "Line Arrow" drawings added to `StockChart`.
|
|
33
|
+
- Rotated elements with HTML content were not being properly positioned in all cases.
|
|
34
|
+
- `scrollToChild` method of `Container` was not working properly.
|
|
35
|
+
|
|
36
|
+
|
|
8
37
|
## [5.10.5] - 2024-09-06
|
|
9
38
|
|
|
10
39
|
### Added
|