@amcharts/amcharts5 5.2.1 → 5.2.4
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/hierarchy/ForceDirected.d.ts +2 -2
- package/.internal/charts/hierarchy/ForceDirected.d.ts.map +1 -1
- package/.internal/charts/hierarchy/ForceDirected.js +6 -0
- package/.internal/charts/hierarchy/ForceDirected.js.map +1 -1
- package/.internal/charts/hierarchy/Tree.d.ts +7 -0
- package/.internal/charts/hierarchy/Tree.d.ts.map +1 -1
- package/.internal/charts/hierarchy/Tree.js +14 -3
- package/.internal/charts/hierarchy/Tree.js.map +1 -1
- package/.internal/charts/map/MapChart.d.ts +2 -1
- package/.internal/charts/map/MapChart.d.ts.map +1 -1
- package/.internal/charts/map/MapChart.js +2 -1
- package/.internal/charts/map/MapChart.js.map +1 -1
- package/.internal/charts/stock/StockChart.js +1 -1
- package/.internal/charts/stock/StockChart.js.map +1 -1
- package/.internal/charts/stock/drawing/LabelSeries.js +1 -1
- package/.internal/charts/stock/drawing/LabelSeries.js.map +1 -1
- package/.internal/charts/stock/toolbar/DateRangeSelector.d.ts +14 -0
- package/.internal/charts/stock/toolbar/DateRangeSelector.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/DateRangeSelector.js +6 -2
- package/.internal/charts/stock/toolbar/DateRangeSelector.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/IconControl.d.ts +3 -1
- package/.internal/charts/stock/toolbar/IconControl.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/IconControl.js +3 -1
- package/.internal/charts/stock/toolbar/IconControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/PeriodSelector.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/PeriodSelector.js +8 -0
- package/.internal/charts/stock/toolbar/PeriodSelector.js.map +1 -1
- package/.internal/charts/stock/toolbar/StockToolbarCSS.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/StockToolbarCSS.js +27 -25
- package/.internal/charts/stock/toolbar/StockToolbarCSS.js.map +1 -1
- package/.internal/charts/xy/XYChart.d.ts +12 -0
- package/.internal/charts/xy/XYChart.d.ts.map +1 -1
- package/.internal/charts/xy/XYChart.js +137 -118
- package/.internal/charts/xy/XYChart.js.map +1 -1
- package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/DateAxis.js +8 -5
- package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
- package/.internal/charts/xy/axes/GaplessDateAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/GaplessDateAxis.js +14 -1
- package/.internal/charts/xy/axes/GaplessDateAxis.js.map +1 -1
- package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/XYSeries.js +4 -8
- package/.internal/charts/xy/series/XYSeries.js.map +1 -1
- package/.internal/core/util/EventDispatcher.d.ts +6 -0
- package/.internal/core/util/EventDispatcher.d.ts.map +1 -1
- package/.internal/core/util/EventDispatcher.js +20 -0
- package/.internal/core/util/EventDispatcher.js.map +1 -1
- package/.internal/core/util/Modal.d.ts.map +1 -1
- package/.internal/core/util/Modal.js +5 -2
- package/.internal/core/util/Modal.js.map +1 -1
- package/.internal/core/util/TextFormatter.d.ts.map +1 -1
- package/.internal/core/util/TextFormatter.js +1 -9
- package/.internal/core/util/TextFormatter.js.map +1 -1
- package/.internal/themes/DefaultTheme.d.ts.map +1 -1
- package/.internal/themes/DefaultTheme.js +1 -0
- package/.internal/themes/DefaultTheme.js.map +1 -1
- package/CHANGELOG.md +32 -0
- 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/json/package.json +1 -1
- package/examples/javascript/map-animating-along-lines/package.json +1 -1
- package/examples/javascript/map-day-and-night/package.json +1 -1
- package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/javascript/map-with-bubbles/package.json +1 -1
- package/examples/javascript/map-zoom-to-country/package.json +1 -1
- package/examples/javascript/misc-40-charts/package.json +1 -1
- package/examples/javascript/misc-microchart-grid/package.json +1 -1
- package/examples/javascript/pie-chart/package.json +1 -1
- package/examples/javascript/pie-donut-chart/package.json +1 -1
- package/examples/javascript/pie-variable-radius/package.json +1 -1
- package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
- package/examples/javascript/radar-heat-map/package.json +1 -1
- package/examples/javascript/radar-line/package.json +1 -1
- package/examples/javascript/radar-time-line/package.json +1 -1
- package/examples/javascript/sliced-funnel/package.json +1 -1
- package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/javascript/sliced-pyramid/package.json +1 -1
- package/examples/javascript/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/index.js +155 -103
- 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-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/json/package.json +1 -1
- package/examples/typescript/map-animating-along-lines/package.json +1 -1
- package/examples/typescript/map-day-and-night/package.json +1 -1
- package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/typescript/map-with-bubbles/package.json +1 -1
- package/examples/typescript/map-zoom-to-country/package.json +1 -1
- package/examples/typescript/misc-40-charts/package.json +1 -1
- package/examples/typescript/misc-microchart-grid/package.json +1 -1
- package/examples/typescript/pie-chart/package.json +1 -1
- package/examples/typescript/pie-donut-chart/package.json +1 -1
- package/examples/typescript/pie-variable-radius/package.json +1 -1
- package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
- package/examples/typescript/radar-heat-map/package.json +1 -1
- package/examples/typescript/radar-line/package.json +1 -1
- package/examples/typescript/radar-time-line/package.json +1 -1
- package/examples/typescript/sliced-funnel/package.json +1 -1
- package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/typescript/sliced-pyramid/package.json +1 -1
- package/examples/typescript/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/index.ts +160 -108
- 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 +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventDispatcher.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/EventDispatcher.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH;;;;;GAKG;AACH,OAAO,EAAE,QAAQ,EAAa,aAAa,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,QAAQ,CAAC;AAyBhC;;;;GAIG;AACH;IASC;;OAEG;IACH;QAXA;;;;;WAA2C;QAC3C;;;;;WAAwC;QACxC;;;;;WAAmD;QACnD;;;;;WAA6B;QAC7B;;;;;WAA4B;QAC5B;;;;;WAA6B;QAO5B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACxB,CAAC;IAED;;;;OAIG;;;;;eACH;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;;IAED;;OAEG;;;;;eACH;YACC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBAEtB,IAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC;gBAE1B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,UAAU,GAAQ,IAAI,CAAC;gBAC5B,IAAI,CAAC,SAAS,GAAQ,IAAI,CAAC;gBAE3B,IAAI;oBACH,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,UAAC,CAAC;wBAChB,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACtB,CAAC,CAAC,CAAC;iBAEH;wBAAS;oBACT,IAAI,CAAC,OAAO,GAAQ,IAAI,CAAC;oBACzB,IAAI,CAAC,UAAU,GAAQ,IAAI,CAAC;iBAC5B;aACD;QACF,CAAC;;IAED;;;;OAIG;;;;;eACH;YACC,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC;QACrC,CAAC;;IAED;;;;OAIG;;;;;eACH,UAA+C,IAAS;YACvD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAjD,CAAiD,CAAC,CAAC;QAC9F,CAAC;;IAED;;;OAGG;;;;;eACH;YACC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACtB,CAAC;;IAED;;OAEG;;;;;eACH;YACC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACvB,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAAuC,IAAS;YAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;;IAED;;;;;;;;OAQG;;;;;eACH,UAAwC,IAAS,EAAE,MAAyB;YAAzB,uBAAA,EAAA,iBAAyB;YAC3E,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;QAC/B,CAAC;;IAED;;;;;;OAMG;;;;;eACH,UAA0B,QAAuB;YAChD,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,EAAE;gBAC1B,IAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAEhD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;oBACjB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;iBAC5D;gBAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;aAEjC;iBAAM;gBACN,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC5B;QACF,CAAC;;IAED;;;;;;;OAOG;;;;;eACH,UAA0D,IAAa,EAAE,IAAgB,EAAE,QAA2C,EAAE,OAAW;YAClJ,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,IAAI,CAAC,aAAa,CAAC,UAAC,IAAI;gBACvB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,yBAAyB;oBAClD,IAAI,CAAC,IAAI,KAAK,IAAI;oBAClB,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC;oBACtD,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE;oBAC1B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;iBACxB;YACF,CAAC,CAAC,CAAC;QACJ,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAAsC,IAAS;YAC9C,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,+BAA+B;YAC/B,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;QAC3H,CAAC;;IAED;;;;;;;OAOG;;;;;eACH,UAAmC,IAAS,EAAE,QAA2C,EAAE,OAAW;YACrG,IAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,UAAC,IAAI;gBACpD,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,4BAA4B;oBACxD,IAAI,CAAC,IAAI,KAAK,IAAI;oBAClB,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC;oBACtD,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC;QACrB,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAA+C,IAAS;YACvD,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAEnC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBAC3B,OAAO,IAAI,CAAC,QAAQ,CAAC;aAErB;iBAAM;gBACN,IAAI,KAAK,IAAI,CAAC,EAAE;oBACf,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;iBAE5B;qBAAM;oBACN,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAE,CAAC;iBACxB;gBAED,OAAO,KAAK,CAAC;aACb;QACF,CAAC;;IAED;;;;;;;OAOG;;;;;eACH,UAAwB,EAAqC;YAA7D,iBAmBC;YAlBA,EAAE,IAAI,CAAC,UAAU,CAAC;YAElB,IAAI;gBACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;aAEjC;oBAAS;gBACT,EAAE,IAAI,CAAC,UAAU,CAAC;gBAElB,sDAAsD;gBACtD,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;oBACvD,0BAA0B;oBAC1B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAC,MAAM;wBAChC,KAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;oBAC9B,CAAC,CAAC,CAAC;oBAEH,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;iBACxB;aACD;QACF,CAAC;;IAED;;;;;;OAMG;;;;;eACH,UAAqC,IAAS,EAAE,KAAa;YAC5D,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;gBAC/B,yFAAyF;gBACzF,4DAA4D;gBAC5D,IAAI,CAAC,aAAa,CAAC,UAAC,QAAQ;oBAC3B,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE;wBAC3E,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;qBAC/B;gBACF,CAAC,CAAC,CAAC;aACH;QACF,CAAC;;IAED;;;;;;OAMG;IACH;;;;;;;;;;;;;;;OAeG;IAEH;;;;;;;;;;;;OAYG;;;;;eACH,UAAsC,IAAa,EAAE,IAAgB,EAAE,QAAa,EAAE,OAAU,EAAE,WAAoB,EAAE,QAA4C;YAApK,iBAwBC;YAvBA,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAE5D,IAAM,IAAI,GAAkB;gBAC3B,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,WAAW;gBACxB,QAAQ,EAAO,QAAQ;gBACvB,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,IAAI,QAAQ,CAAC;oBACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;oBACnB,KAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC,CAAC;aACF,CAAC;YAEF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE3B,OAAO,IAAI,CAAC;QACb,CAAC;;IAED;;;;;;;OAOG;;;;;eACH,UAAmC,QAAwC,EAAE,OAAW,EAAE,WAA2B;YAA3B,4BAAA,EAAA,kBAA2B;YACpH,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAC,KAAK,EAAE,KAAK,IAAK,OAAM,QAAS,CAAC,IAAI,CAAC,OAAO,EAAE,KAAY,CAAC,EAA3C,CAA2C,CAAC,CAAC,QAAQ,CAAC;QACtI,CAAC;;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;;;;;eACH,UAAkC,IAAS,EAAE,QAAsD,EAAE,OAAW,EAAE,WAA2B;YAA3B,4BAAA,EAAA,kBAA2B;YAC5I,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAC,KAAK,EAAE,KAAK,IAAK,OAAA,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,EAA7B,CAA6B,CAAC,CAAC,QAAQ,CAAC;QACxH,CAAC;;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;;;;;eACH,UAAoC,IAAS,EAAE,QAAsD,EAAE,OAAW,EAAE,WAA2B;YAA3B,4BAAA,EAAA,kBAA2B;YAC9I,IAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAC,KAAK,EAAE,KAAK;gBAC3E,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;YAC9B,CAAC,CAAC,CAAC;YAEH,uDAAuD;YACvD,OAAO,CAAC,CAAC,QAAQ,CAAC;QACnB,CAAC;;IAED;;;;;;OAMG;;;;;eACH,UAAmC,IAAS,EAAE,QAA2C,EAAE,OAAW;YACrG,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9D,CAAC;;IAGD;;;;;;OAMG;;;;;eACH,UAAgB,MAAY;YAA5B,iBA2BC;YA1BA,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,IAAI,MAAM,KAAK,IAAI,EAAE;gBACpB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;aACpE;YAED,IAAM,SAAS,GAAqB,EAAE,CAAC;YAEvC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,UAAC,CAAC;gBAChC,yBAAyB;gBACzB,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,EAAE;oBAC/B,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE;wBACpB,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAe,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBAEzD;yBAAM,IAAI,CAAC,CAAC,IAAI,EAAE;wBAClB,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBAEzD;yBAAM;wBACN,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBACvD;iBACD;YACF,CAAC,CAAC,CAAC;YAEH,OAAO,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC;;IAEF,sBAAC;AAAD,CAAC,AAncD,IAmcC;;AAED;;;;;GAKG;AACH;IAAwD,2CAAkB;IAOzE;;;;OAIG;IACH,iCAAY,MAAc;QAA1B,YACC,iBAAO,SAEP;QAbD;;WAEG;QACH;;;;;WAAsB;QASrB,KAAI,CAAC,MAAM,GAAG,MAAM,CAAC;;IACtB,CAAC;IAED;;;;;;OAMG;;;;;eACH,UAAgB,MAAY;YAA5B,iBA+BC;YA9BA,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,IAAI,MAAM,KAAK,IAAI,EAAE;gBACpB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;aACpE;YAED,IAAM,SAAS,GAAqB,EAAE,CAAC;YAEvC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,UAAC,CAAC;gBAChC,kBAAkB;gBAClB,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,MAAM,EAAE;oBAChC,OAAO;iBACP;gBACD,yBAAyB;gBACzB,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,EAAE;oBAC/B,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE;wBACpB,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAe,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBAEzD;yBAAM,IAAI,CAAC,CAAC,IAAI,EAAE;wBAClB,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBAEzD;yBAAM;wBACN,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBACvD;iBACD;YACF,CAAC,CAAC,CAAC;YAEH,OAAO,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC;;IAEF,8BAAC;AAAD,CAAC,AAzDD,CAAwD,eAAe,GAyDtE","sourcesContent":["/**\n * Event Dispatcher module is used for registering listeners and dispatching\n * events across amCharts system.\n */\n\n/**\n * ============================================================================\n * IMPORTS\n * ============================================================================\n * @hidden\n */\nimport { Disposer, IDisposer, MultiDisposer } from \"./Disposer\";\nimport * as $array from \"./Array\";\nimport * as $type from \"./Type\";\n\n/**\n * @ignore\n */\nexport type Events<Target, T> = {\n\t[K in keyof T]: T[K] & { type: K, target: Target }\n};\n\n/**\n * A universal interface for event listeners.\n *\n * @ignore\n */\nexport interface EventListener {\n\tkilled: boolean;\n\tonce: boolean;\n\ttype: any | null;\n\tcallback: (event: any) => void;\n\tcontext: unknown;\n\tshouldClone: boolean;\n\tdispatch: (type: any, event: any) => void;\n\tdisposer: IDisposer;\n}\n\n/**\n * Universal Event Dispatcher.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/events/} for more info\n */\nexport class EventDispatcher<T> implements IDisposer {\n\tprotected _listeners: Array<EventListener>;\n\tprotected _killed: Array<EventListener>;\n\tprotected _disabled: { [key in keyof T]?: number };\n\tprotected _iterating: number;\n\tprotected _enabled: boolean;\n\tprotected _disposed: boolean;\n\n\n\t/**\n\t * Constructor\n\t */\n\tconstructor() {\n\t\tthis._listeners = [];\n\t\tthis._killed = [];\n\t\tthis._disabled = {};\n\t\tthis._iterating = 0;\n\t\tthis._enabled = true;\n\t\tthis._disposed = false;\n\t}\n\n\t/**\n\t * Returns if this object has been already 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 * Dispose (destroy) this object.\n\t */\n\tpublic dispose(): void {\n\t\tif (!this._disposed) {\n\t\t\tthis._disposed = true;\n\n\t\t\tconst a = this._listeners;\n\n\t\t\tthis._iterating = 1;\n\t\t\tthis._listeners = <any>null;\n\t\t\tthis._disabled = <any>null;\n\n\t\t\ttry {\n\t\t\t\t$array.each(a, (x) => {\n\t\t\t\t\tx.disposer.dispose();\n\t\t\t\t});\n\n\t\t\t} finally {\n\t\t\t\tthis._killed = <any>null;\n\t\t\t\tthis._iterating = <any>null;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Checks if this particular event dispatcher has any listeners set.\n\t *\n\t * @return Has listeners?\n\t */\n\tpublic hasListeners(): boolean {\n\t\treturn this._listeners.length !== 0;\n\t}\n\n\t/**\n\t * Checks if this particular event dispatcher has any particular listeners set.\n\t *\n\t * @return Has particular event listeners?\n\t */\n\tpublic hasListenersByType<Key extends keyof T>(type: Key): boolean {\n\t\treturn $array.any(this._listeners, (x) => (x.type === null || x.type === type) && !x.killed);\n\t}\n\n\t/**\n\t * Enable dispatching of events if they were previously disabled by\n\t * `disable()`.\n\t */\n\tpublic enable(): void {\n\t\tthis._enabled = true;\n\t}\n\n\t/**\n\t * Disable dispatching of events until re-enabled by `enable()`.\n\t */\n\tpublic disable(): void {\n\t\tthis._enabled = false;\n\t}\n\n\t/**\n\t * Enable dispatching particular event, if it was disabled before by\n\t * `disableType()`.\n\t *\n\t * @param type Event type\n\t */\n\tpublic enableType<Key extends keyof T>(type: Key): void {\n\t\tdelete this._disabled[type];\n\t}\n\n\t/**\n\t * Disable dispatching of events for a certain event type.\n\t *\n\t * Optionally, can set how many dispatches to skip before automatically\n\t * re-enabling the dispatching.\n\t *\n\t * @param type Event type\n\t * @param amount Number of event dispatches to skip\n\t */\n\tpublic disableType<Key extends keyof T>(type: Key, amount: number = Infinity): void {\n\t\tthis._disabled[type] = amount;\n\t}\n\n\t/**\n\t * Removes listener from dispatcher.\n\t *\n\t * Will throw an exception if such listener does not exists.\n\t *\n\t * @param listener Listener to remove\n\t */\n\tprotected _removeListener(listener: EventListener): void {\n\t\tif (this._iterating === 0) {\n\t\t\tconst index = this._listeners.indexOf(listener);\n\n\t\t\tif (index === -1) {\n\t\t\t\tthrow new Error(\"Invalid state: could not remove listener\");\n\t\t\t}\n\n\t\t\tthis._listeners.splice(index, 1);\n\n\t\t} else {\n\t\t\tthis._killed.push(listener);\n\t\t}\n\t}\n\n\t/**\n\t * Removes existing listener by certain parameters.\n\t *\n\t * @param once Listener's once setting\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t */\n\tprotected _removeExistingListener<C, Key extends keyof T>(once: boolean, type: Key | null, callback?: (this: C, event: T[Key]) => void, context?: C): void {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\tthis._eachListener((info) => {\n\t\t\tif (info.once === once && // TODO is this correct ?\n\t\t\t\tinfo.type === type &&\n\t\t\t\t(callback === undefined || info.callback === callback) &&\n\t\t\t\tinfo.context === context) {\n\t\t\t\tinfo.disposer.dispose();\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * Checks if dispatching for particular event type is enabled.\n\t *\n\t * @param type Event type\n\t * @return Enabled?\n\t */\n\tpublic isEnabled<Key extends keyof T>(type: Key): boolean {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\t// TODO is this check correct ?\n\t\treturn this._enabled && this._listeners.length > 0 && this.hasListenersByType(type) && this._disabled[type] === undefined;\n\t}\n\n\t/**\n\t * Checks if there's already a listener with specific parameters.\n\t *\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t * @return Has listener?\n\t */\n\tpublic has<C, Key extends keyof T>(type: Key, callback?: (this: C, event: T[Key]) => void, context?: C): boolean {\n\t\tconst index = $array.findIndex(this._listeners, (info) => {\n\t\t\treturn info.once !== true && // Ignoring \"once\" listeners\n\t\t\t\tinfo.type === type &&\n\t\t\t\t(callback === undefined || info.callback === callback) &&\n\t\t\t\tinfo.context === context;\n\t\t});\n\n\t\treturn index !== -1;\n\t}\n\n\t/**\n\t * Checks whether event of the particular type should be dispatched.\n\t *\n\t * @param type Event type\n\t * @return Dispatch?\n\t */\n\tprotected _shouldDispatch<Key extends keyof T>(type: Key): boolean {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\tconst count = this._disabled[type];\n\n\t\tif (!$type.isNumber(count)) {\n\t\t\treturn this._enabled;\n\n\t\t} else {\n\t\t\tif (count <= 1) {\n\t\t\t\tdelete this._disabled[type];\n\n\t\t\t} else {\n\t\t\t\t--this._disabled[type]!;\n\t\t\t}\n\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * [_eachListener description]\n\t *\n\t * All of this extra code is needed when a listener is removed while iterating\n\t *\n\t * @todo Description\n\t * @param fn [description]\n\t */\n\tprotected _eachListener(fn: (listener: EventListener) => void): void {\n\t\t++this._iterating;\n\n\t\ttry {\n\t\t\t$array.each(this._listeners, fn);\n\n\t\t} finally {\n\t\t\t--this._iterating;\n\n\t\t\t// TODO should this be inside or outside the finally ?\n\t\t\tif (this._iterating === 0 && this._killed.length !== 0) {\n\t\t\t\t// Remove killed listeners\n\t\t\t\t$array.each(this._killed, (killed) => {\n\t\t\t\t\tthis._removeListener(killed);\n\t\t\t\t});\n\n\t\t\t\tthis._killed.length = 0;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Dispatches an event immediately without waiting for next cycle.\n\t *\n\t * @param type Event type\n\t * @param event Event object\n\t * @todo automatically add in type and target properties if they are missing\n\t */\n\tpublic dispatch<Key extends keyof T>(type: Key, event: T[Key]): void {\n\t\tif (this._shouldDispatch(type)) {\n\t\t\t// TODO check if it's faster to use an object of listeners rather than a single big array\n\t\t\t// TODO if the function throws, maybe it should keep going ?\n\t\t\tthis._eachListener((listener) => {\n\t\t\t\tif (!listener.killed && (listener.type === null || listener.type === type)) {\n\t\t\t\t\tlistener.dispatch(type, event);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Shelves the event to be dispatched within next update cycle.\n\t *\n\t * @param type Event type\n\t * @param event Event object\n\t * @todo automatically add in type and target properties if they are missing\n\t */\n\t/*public dispatchLater<Key extends keyof T>(type: Key, event: T[Key]): void {\n\t\tif (this._shouldDispatch(type)) {\n\t\t\tthis._eachListener((listener) => {\n\t\t\t\t// TODO check if it's faster to use an object of listeners rather than a single big array\n\t\t\t\tif (!listener.killed && (listener.type === null || listener.type === type)) {\n\t\t\t\t\t// TODO if the function throws, maybe it should keep going ?\n\t\t\t\t\t// TODO dispatch during the update cycle, rather than using whenIdle\n\t\t\t\t\t$async.whenIdle(() => {\n\t\t\t\t\t\tif (!listener.killed) {\n\t\t\t\t\t\t\tlistener.dispatch(type, event);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}*/\n\n\t/**\n\t * Creates, catalogs and returns an [[EventListener]].\n\t *\n\t * Event listener can be disposed.\n\t *\n\t * @param once Listener's once setting\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t * @param shouldClone Whether the listener should be copied when the EventDispatcher is copied\n\t * @param dispatch\n\t * @returns An event listener\n\t */\n\tprotected _on<C, Key extends keyof T>(once: boolean, type: Key | null, callback: any, context: C, shouldClone: boolean, dispatch: (type: Key, event: T[Key]) => void): EventListener {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\tthis._removeExistingListener(once, type, callback, context);\n\n\t\tconst info: EventListener = {\n\t\t\ttype: type,\n\t\t\tcallback: callback,\n\t\t\tcontext: context,\n\t\t\tshouldClone: shouldClone,\n\t\t\tdispatch: <any>dispatch,\n\t\t\tkilled: false,\n\t\t\tonce: once,\n\t\t\tdisposer: new Disposer(() => {\n\t\t\t\tinfo.killed = true;\n\t\t\t\tthis._removeListener(info);\n\t\t\t})\n\t\t};\n\n\t\tthis._listeners.push(info);\n\n\t\treturn info;\n\t}\n\n\t/**\n\t * Creates an event listener to be invoked on **any** event.\n\t *\n\t * @param callback Callback function\n\t * @param context Callback context\n\t * @param shouldClone Whether the listener should be copied when the EventDispatcher is copied\n\t * @returns A disposable event listener\n\t */\n\tpublic onAll<C, K extends keyof T>(callback: (this: C, event: T[K]) => void, context?: C, shouldClone: boolean = true): IDisposer {\n\t\treturn this._on(false, null, callback, context, shouldClone, (_type, event) => (<any>callback).call(context, event as any)).disposer;\n\t}\n\n\t/**\n\t * Creates an event listener to be invoked on a specific event type.\n\t *\n\t * ```TypeScript\n\t * button.events.once(\"click\", (ev) => {\n\t * console.log(\"Button clicked\");\n\t * }, this);\n\t * ```\n\t * ```JavaScript\n\t * button.events.once(\"click\", (ev) => {\n\t * console.log(\"Button clicked\");\n\t * }, this);\n\t * ```\n\t *\n\t * The above will invoke our custom event handler whenever series we put\n\t * event on is hidden.\n\t *\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t * @param shouldClone Whether the listener should be copied when the EventDispatcher is copied\n\t * @returns A disposable event listener\n\t */\n\tpublic on<C, Key extends keyof T>(type: Key, callback: (this: C | undefined, event: T[Key]) => void, context?: C, shouldClone: boolean = true): IDisposer {\n\t\treturn this._on(false, type, callback, context, shouldClone, (_type, event) => callback.call(context, event)).disposer;\n\t}\n\n\t/**\n\t * Creates an event listener to be invoked on a specific event type once.\n\t *\n\t * Once the event listener is invoked, it is automatically disposed.\n\t *\n\t * ```TypeScript\n\t * button.events.once(\"click\", (ev) => {\n\t * console.log(\"Button clicked\");\n\t * }, this);\n\t * ```\n\t * ```JavaScript\n\t * button.events.once(\"click\", (ev) => {\n\t * console.log(\"Button clicked\");\n\t * }, this);\n\t * ```\n\t *\n\t * The above will invoke our custom event handler the first time series we\n\t * put event on is hidden.\n\t *\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t * @param shouldClone Whether the listener should be copied when the EventDispatcher is copied\n\t * @returns A disposable event listener\n\t */\n\tpublic once<C, Key extends keyof T>(type: Key, callback: (this: C | undefined, event: T[Key]) => void, context?: C, shouldClone: boolean = true): IDisposer {\n\t\tconst x = this._on(true, type, callback, context, shouldClone, (_type, event) => {\n\t\t\tx.disposer.dispose();\n\t\t\tcallback.call(context, event)\n\t\t});\n\n\t\t// TODO maybe this should return a different Disposer ?\n\t\treturn x.disposer;\n\t}\n\n\t/**\n\t * Removes the event listener with specific parameters.\n\t *\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t */\n\tpublic off<C, Key extends keyof T>(type: Key, callback?: (this: C, event: T[Key]) => void, context?: C): void {\n\t\tthis._removeExistingListener(false, type, callback, context);\n\t}\n\n\n\t/**\n\t * Copies all dispatcher parameters, including listeners, from another event\n\t * dispatcher.\n\t *\n\t * @param source Source event dispatcher\n\t * @ignore\n\t */\n\tpublic copyFrom(source: this): IDisposer {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\tif (source === this) {\n\t\t\tthrow new Error(\"Cannot copyFrom the same TargetedEventDispatcher\");\n\t\t}\n\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$array.each(source._listeners, (x) => {\n\t\t\t// TODO is this correct ?\n\t\t\tif (!x.killed && x.shouldClone) {\n\t\t\t\tif (x.type === null) {\n\t\t\t\t\tdisposers.push(this.onAll(x.callback as any, x.context));\n\n\t\t\t\t} else if (x.once) {\n\t\t\t\t\tdisposers.push(this.once(x.type, x.callback, x.context));\n\n\t\t\t\t} else {\n\t\t\t\t\tdisposers.push(this.on(x.type, x.callback, x.context));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n\n}\n\n/**\n * A version of the [[EventDispatcher]] that dispatches events for a specific\n * target object.\n *\n * @ignore\n */\nexport class TargetedEventDispatcher<Target, T> extends EventDispatcher<T> {\n\n\t/**\n\t * A target object which is originating events using this dispatcher.\n\t */\n\tpublic target: Target;\n\n\t/**\n\t * Constructor\n\t *\n\t * @param target Event dispatcher target\n\t */\n\tconstructor(target: Target) {\n\t\tsuper();\n\t\tthis.target = target;\n\t}\n\n\t/**\n\t * Copies all dispatcher parameters, including listeners, from another event\n\t * dispatcher.\n\t *\n\t * @param source Source event dispatcher\n\t * @ignore\n\t */\n\tpublic copyFrom(source: this): IDisposer {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\tif (source === this) {\n\t\t\tthrow new Error(\"Cannot copyFrom the same TargetedEventDispatcher\");\n\t\t}\n\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$array.each(source._listeners, (x) => {\n\t\t\t// TODO very hacky\n\t\t\tif (x.context === source.target) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// TODO is this correct ?\n\t\t\tif (!x.killed && x.shouldClone) {\n\t\t\t\tif (x.type === null) {\n\t\t\t\t\tdisposers.push(this.onAll(x.callback as any, x.context));\n\n\t\t\t\t} else if (x.once) {\n\t\t\t\t\tdisposers.push(this.once(x.type, x.callback, x.context));\n\n\t\t\t\t} else {\n\t\t\t\t\tdisposers.push(this.on(x.type, x.callback, x.context));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n\n}\n"]}
|
|
1
|
+
{"version":3,"file":"EventDispatcher.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/EventDispatcher.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH;;;;;GAKG;AACH,OAAO,EAAE,QAAQ,EAAa,aAAa,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,QAAQ,CAAC;AAyBhC;;;;GAIG;AACH;IASC;;OAEG;IACH;QAXA;;;;;WAA2C;QAC3C;;;;;WAAwC;QACxC;;;;;WAAmD;QACnD;;;;;WAA6B;QAC7B;;;;;WAA4B;QAC5B;;;;;WAA6B;QAO5B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACxB,CAAC;IAED;;;;OAIG;;;;;eACH;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;;IAED;;OAEG;;;;;eACH;YACC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACpB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBAEtB,IAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC;gBAE1B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,UAAU,GAAQ,IAAI,CAAC;gBAC5B,IAAI,CAAC,SAAS,GAAQ,IAAI,CAAC;gBAE3B,IAAI;oBACH,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,UAAC,CAAC;wBAChB,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACtB,CAAC,CAAC,CAAC;iBAEH;wBAAS;oBACT,IAAI,CAAC,OAAO,GAAQ,IAAI,CAAC;oBACzB,IAAI,CAAC,UAAU,GAAQ,IAAI,CAAC;iBAC5B;aACD;QACF,CAAC;;IAED;;;;OAIG;;;;;eACH;YACC,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,CAAC;QACrC,CAAC;;IAED;;;;OAIG;;;;;eACH,UAA+C,IAAS;YACvD,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAjD,CAAiD,CAAC,CAAC;QAC9F,CAAC;;IAED;;;OAGG;;;;;eACH;YACC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACtB,CAAC;;IAED;;OAEG;;;;;eACH;YACC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACvB,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAAuC,IAAS;YAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;;IAED;;;;;;;;OAQG;;;;;eACH,UAAwC,IAAS,EAAE,MAAyB;YAAzB,uBAAA,EAAA,iBAAyB;YAC3E,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;QAC/B,CAAC;;IAED;;;;;;OAMG;;;;;eACH,UAA0B,QAAuB;YAChD,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,EAAE;gBAC1B,IAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAEhD,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;oBACjB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;iBAC5D;gBAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;aAEjC;iBAAM;gBACN,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC5B;QACF,CAAC;;IAED;;;;;;;OAOG;;;;;eACH,UAA0D,IAAa,EAAE,IAAgB,EAAE,QAA2C,EAAE,OAAW;YAClJ,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,IAAI,CAAC,aAAa,CAAC,UAAC,IAAI;gBACvB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,yBAAyB;oBAClD,IAAI,CAAC,IAAI,KAAK,IAAI;oBAClB,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC;oBACtD,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE;oBAC1B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;iBACxB;YACF,CAAC,CAAC,CAAC;QACJ,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAAsC,IAAS;YAC9C,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,+BAA+B;YAC/B,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC;QAC3H,CAAC;;IAED;;;;OAIG;;;;;eACH,UAA0C,IAAS;YAClD,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,IAAI,CAAC,aAAa,CAAC,UAAC,IAAI;gBACvB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;oBACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;iBACxB;YACF,CAAC,CAAC,CAAC;QACJ,CAAC;;IAED;;;;;;;OAOG;;;;;eACH,UAAmC,IAAS,EAAE,QAA2C,EAAE,OAAW;YACrG,IAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,EAAE,UAAC,IAAI;gBACpD,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,4BAA4B;oBACxD,IAAI,CAAC,IAAI,KAAK,IAAI;oBAClB,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC;oBACtD,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC;YAC3B,CAAC,CAAC,CAAC;YAEH,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC;QACrB,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAA+C,IAAS;YACvD,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAEnC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBAC3B,OAAO,IAAI,CAAC,QAAQ,CAAC;aAErB;iBAAM;gBACN,IAAI,KAAK,IAAI,CAAC,EAAE;oBACf,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;iBAE5B;qBAAM;oBACN,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAE,CAAC;iBACxB;gBAED,OAAO,KAAK,CAAC;aACb;QACF,CAAC;;IAED;;;;;;;OAOG;;;;;eACH,UAAwB,EAAqC;YAA7D,iBAmBC;YAlBA,EAAE,IAAI,CAAC,UAAU,CAAC;YAElB,IAAI;gBACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;aAEjC;oBAAS;gBACT,EAAE,IAAI,CAAC,UAAU,CAAC;gBAElB,sDAAsD;gBACtD,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;oBACvD,0BAA0B;oBAC1B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAC,MAAM;wBAChC,KAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;oBAC9B,CAAC,CAAC,CAAC;oBAEH,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;iBACxB;aACD;QACF,CAAC;;IAED;;;;;;OAMG;;;;;eACH,UAAqC,IAAS,EAAE,KAAa;YAC5D,IAAI,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;gBAC/B,yFAAyF;gBACzF,4DAA4D;gBAC5D,IAAI,CAAC,aAAa,CAAC,UAAC,QAAQ;oBAC3B,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE;wBAC3E,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;qBAC/B;gBACF,CAAC,CAAC,CAAC;aACH;QACF,CAAC;;IAED;;;;;;OAMG;IACH;;;;;;;;;;;;;;;OAeG;IAEH;;;;;;;;;;;;OAYG;;;;;eACH,UAAsC,IAAa,EAAE,IAAgB,EAAE,QAAa,EAAE,OAAU,EAAE,WAAoB,EAAE,QAA4C;YAApK,iBAwBC;YAvBA,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,IAAI,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAE5D,IAAM,IAAI,GAAkB;gBAC3B,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,QAAQ;gBAClB,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,WAAW;gBACxB,QAAQ,EAAO,QAAQ;gBACvB,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,IAAI,QAAQ,CAAC;oBACtB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;oBACnB,KAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC,CAAC;aACF,CAAC;YAEF,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE3B,OAAO,IAAI,CAAC;QACb,CAAC;;IAED;;;;;;;OAOG;;;;;eACH,UAAmC,QAAwC,EAAE,OAAW,EAAE,WAA2B;YAA3B,4BAAA,EAAA,kBAA2B;YACpH,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAC,KAAK,EAAE,KAAK,IAAK,OAAM,QAAS,CAAC,IAAI,CAAC,OAAO,EAAE,KAAY,CAAC,EAA3C,CAA2C,CAAC,CAAC,QAAQ,CAAC;QACtI,CAAC;;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;;;;;eACH,UAAkC,IAAS,EAAE,QAAsD,EAAE,OAAW,EAAE,WAA2B;YAA3B,4BAAA,EAAA,kBAA2B;YAC5I,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAC,KAAK,EAAE,KAAK,IAAK,OAAA,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,EAA7B,CAA6B,CAAC,CAAC,QAAQ,CAAC;QACxH,CAAC;;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;;;;;eACH,UAAoC,IAAS,EAAE,QAAsD,EAAE,OAAW,EAAE,WAA2B;YAA3B,4BAAA,EAAA,kBAA2B;YAC9I,IAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAC,KAAK,EAAE,KAAK;gBAC3E,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;YAC9B,CAAC,CAAC,CAAC;YAEH,uDAAuD;YACvD,OAAO,CAAC,CAAC,QAAQ,CAAC;QACnB,CAAC;;IAED;;;;;;OAMG;;;;;eACH,UAAmC,IAAS,EAAE,QAA2C,EAAE,OAAW;YACrG,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9D,CAAC;;IAGD;;;;;;OAMG;;;;;eACH,UAAgB,MAAY;YAA5B,iBA2BC;YA1BA,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,IAAI,MAAM,KAAK,IAAI,EAAE;gBACpB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;aACpE;YAED,IAAM,SAAS,GAAqB,EAAE,CAAC;YAEvC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,UAAC,CAAC;gBAChC,yBAAyB;gBACzB,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,EAAE;oBAC/B,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE;wBACpB,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAe,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBAEzD;yBAAM,IAAI,CAAC,CAAC,IAAI,EAAE;wBAClB,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBAEzD;yBAAM;wBACN,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBACvD;iBACD;YACF,CAAC,CAAC,CAAC;YAEH,OAAO,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC;;IAEF,sBAAC;AAAD,CAAC,AApdD,IAodC;;AAED;;;;;GAKG;AACH;IAAwD,2CAAkB;IAOzE;;;;OAIG;IACH,iCAAY,MAAc;QAA1B,YACC,iBAAO,SAEP;QAbD;;WAEG;QACH;;;;;WAAsB;QASrB,KAAI,CAAC,MAAM,GAAG,MAAM,CAAC;;IACtB,CAAC;IAED;;;;;;OAMG;;;;;eACH,UAAgB,MAAY;YAA5B,iBA+BC;YA9BA,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;aAC/C;YAED,IAAI,MAAM,KAAK,IAAI,EAAE;gBACpB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;aACpE;YAED,IAAM,SAAS,GAAqB,EAAE,CAAC;YAEvC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,UAAC,CAAC;gBAChC,kBAAkB;gBAClB,IAAI,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,MAAM,EAAE;oBAChC,OAAO;iBACP;gBACD,yBAAyB;gBACzB,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,WAAW,EAAE;oBAC/B,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE;wBACpB,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAe,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBAEzD;yBAAM,IAAI,CAAC,CAAC,IAAI,EAAE;wBAClB,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBAEzD;yBAAM;wBACN,SAAS,CAAC,IAAI,CAAC,KAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;qBACvD;iBACD;YACF,CAAC,CAAC,CAAC;YAEH,OAAO,IAAI,aAAa,CAAC,SAAS,CAAC,CAAC;QACrC,CAAC;;IAEF,8BAAC;AAAD,CAAC,AAzDD,CAAwD,eAAe,GAyDtE","sourcesContent":["/**\n * Event Dispatcher module is used for registering listeners and dispatching\n * events across amCharts system.\n */\n\n/**\n * ============================================================================\n * IMPORTS\n * ============================================================================\n * @hidden\n */\nimport { Disposer, IDisposer, MultiDisposer } from \"./Disposer\";\nimport * as $array from \"./Array\";\nimport * as $type from \"./Type\";\n\n/**\n * @ignore\n */\nexport type Events<Target, T> = {\n\t[K in keyof T]: T[K] & { type: K, target: Target }\n};\n\n/**\n * A universal interface for event listeners.\n *\n * @ignore\n */\nexport interface EventListener {\n\tkilled: boolean;\n\tonce: boolean;\n\ttype: any | null;\n\tcallback: (event: any) => void;\n\tcontext: unknown;\n\tshouldClone: boolean;\n\tdispatch: (type: any, event: any) => void;\n\tdisposer: IDisposer;\n}\n\n/**\n * Universal Event Dispatcher.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/events/} for more info\n */\nexport class EventDispatcher<T> implements IDisposer {\n\tprotected _listeners: Array<EventListener>;\n\tprotected _killed: Array<EventListener>;\n\tprotected _disabled: { [key in keyof T]?: number };\n\tprotected _iterating: number;\n\tprotected _enabled: boolean;\n\tprotected _disposed: boolean;\n\n\n\t/**\n\t * Constructor\n\t */\n\tconstructor() {\n\t\tthis._listeners = [];\n\t\tthis._killed = [];\n\t\tthis._disabled = {};\n\t\tthis._iterating = 0;\n\t\tthis._enabled = true;\n\t\tthis._disposed = false;\n\t}\n\n\t/**\n\t * Returns if this object has been already 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 * Dispose (destroy) this object.\n\t */\n\tpublic dispose(): void {\n\t\tif (!this._disposed) {\n\t\t\tthis._disposed = true;\n\n\t\t\tconst a = this._listeners;\n\n\t\t\tthis._iterating = 1;\n\t\t\tthis._listeners = <any>null;\n\t\t\tthis._disabled = <any>null;\n\n\t\t\ttry {\n\t\t\t\t$array.each(a, (x) => {\n\t\t\t\t\tx.disposer.dispose();\n\t\t\t\t});\n\n\t\t\t} finally {\n\t\t\t\tthis._killed = <any>null;\n\t\t\t\tthis._iterating = <any>null;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Checks if this particular event dispatcher has any listeners set.\n\t *\n\t * @return Has listeners?\n\t */\n\tpublic hasListeners(): boolean {\n\t\treturn this._listeners.length !== 0;\n\t}\n\n\t/**\n\t * Checks if this particular event dispatcher has any particular listeners set.\n\t *\n\t * @return Has particular event listeners?\n\t */\n\tpublic hasListenersByType<Key extends keyof T>(type: Key): boolean {\n\t\treturn $array.any(this._listeners, (x) => (x.type === null || x.type === type) && !x.killed);\n\t}\n\n\t/**\n\t * Enable dispatching of events if they were previously disabled by\n\t * `disable()`.\n\t */\n\tpublic enable(): void {\n\t\tthis._enabled = true;\n\t}\n\n\t/**\n\t * Disable dispatching of events until re-enabled by `enable()`.\n\t */\n\tpublic disable(): void {\n\t\tthis._enabled = false;\n\t}\n\n\t/**\n\t * Enable dispatching particular event, if it was disabled before by\n\t * `disableType()`.\n\t *\n\t * @param type Event type\n\t */\n\tpublic enableType<Key extends keyof T>(type: Key): void {\n\t\tdelete this._disabled[type];\n\t}\n\n\t/**\n\t * Disable dispatching of events for a certain event type.\n\t *\n\t * Optionally, can set how many dispatches to skip before automatically\n\t * re-enabling the dispatching.\n\t *\n\t * @param type Event type\n\t * @param amount Number of event dispatches to skip\n\t */\n\tpublic disableType<Key extends keyof T>(type: Key, amount: number = Infinity): void {\n\t\tthis._disabled[type] = amount;\n\t}\n\n\t/**\n\t * Removes listener from dispatcher.\n\t *\n\t * Will throw an exception if such listener does not exists.\n\t *\n\t * @param listener Listener to remove\n\t */\n\tprotected _removeListener(listener: EventListener): void {\n\t\tif (this._iterating === 0) {\n\t\t\tconst index = this._listeners.indexOf(listener);\n\n\t\t\tif (index === -1) {\n\t\t\t\tthrow new Error(\"Invalid state: could not remove listener\");\n\t\t\t}\n\n\t\t\tthis._listeners.splice(index, 1);\n\n\t\t} else {\n\t\t\tthis._killed.push(listener);\n\t\t}\n\t}\n\n\t/**\n\t * Removes existing listener by certain parameters.\n\t *\n\t * @param once Listener's once setting\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t */\n\tprotected _removeExistingListener<C, Key extends keyof T>(once: boolean, type: Key | null, callback?: (this: C, event: T[Key]) => void, context?: C): void {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\tthis._eachListener((info) => {\n\t\t\tif (info.once === once && // TODO is this correct ?\n\t\t\t\tinfo.type === type &&\n\t\t\t\t(callback === undefined || info.callback === callback) &&\n\t\t\t\tinfo.context === context) {\n\t\t\t\tinfo.disposer.dispose();\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * Checks if dispatching for particular event type is enabled.\n\t *\n\t * @param type Event type\n\t * @return Enabled?\n\t */\n\tpublic isEnabled<Key extends keyof T>(type: Key): boolean {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\t// TODO is this check correct ?\n\t\treturn this._enabled && this._listeners.length > 0 && this.hasListenersByType(type) && this._disabled[type] === undefined;\n\t}\n\n\t/**\n\t * Removes all listeners of a particular event type\n\t *\n\t * @param type Listener's type\n\t */\n\tprotected removeType<Key extends keyof T>(type: Key): void {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\tthis._eachListener((info) => {\n\t\t\tif (info.type === type) {\n\t\t\t\tinfo.disposer.dispose();\n\t\t\t}\n\t\t});\n\t}\n\n\t/**\n\t * Checks if there's already a listener with specific parameters.\n\t *\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t * @return Has listener?\n\t */\n\tpublic has<C, Key extends keyof T>(type: Key, callback?: (this: C, event: T[Key]) => void, context?: C): boolean {\n\t\tconst index = $array.findIndex(this._listeners, (info) => {\n\t\t\treturn info.once !== true && // Ignoring \"once\" listeners\n\t\t\t\tinfo.type === type &&\n\t\t\t\t(callback === undefined || info.callback === callback) &&\n\t\t\t\tinfo.context === context;\n\t\t});\n\n\t\treturn index !== -1;\n\t}\n\n\t/**\n\t * Checks whether event of the particular type should be dispatched.\n\t *\n\t * @param type Event type\n\t * @return Dispatch?\n\t */\n\tprotected _shouldDispatch<Key extends keyof T>(type: Key): boolean {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\tconst count = this._disabled[type];\n\n\t\tif (!$type.isNumber(count)) {\n\t\t\treturn this._enabled;\n\n\t\t} else {\n\t\t\tif (count <= 1) {\n\t\t\t\tdelete this._disabled[type];\n\n\t\t\t} else {\n\t\t\t\t--this._disabled[type]!;\n\t\t\t}\n\n\t\t\treturn false;\n\t\t}\n\t}\n\n\t/**\n\t * [_eachListener description]\n\t *\n\t * All of this extra code is needed when a listener is removed while iterating\n\t *\n\t * @todo Description\n\t * @param fn [description]\n\t */\n\tprotected _eachListener(fn: (listener: EventListener) => void): void {\n\t\t++this._iterating;\n\n\t\ttry {\n\t\t\t$array.each(this._listeners, fn);\n\n\t\t} finally {\n\t\t\t--this._iterating;\n\n\t\t\t// TODO should this be inside or outside the finally ?\n\t\t\tif (this._iterating === 0 && this._killed.length !== 0) {\n\t\t\t\t// Remove killed listeners\n\t\t\t\t$array.each(this._killed, (killed) => {\n\t\t\t\t\tthis._removeListener(killed);\n\t\t\t\t});\n\n\t\t\t\tthis._killed.length = 0;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Dispatches an event immediately without waiting for next cycle.\n\t *\n\t * @param type Event type\n\t * @param event Event object\n\t * @todo automatically add in type and target properties if they are missing\n\t */\n\tpublic dispatch<Key extends keyof T>(type: Key, event: T[Key]): void {\n\t\tif (this._shouldDispatch(type)) {\n\t\t\t// TODO check if it's faster to use an object of listeners rather than a single big array\n\t\t\t// TODO if the function throws, maybe it should keep going ?\n\t\t\tthis._eachListener((listener) => {\n\t\t\t\tif (!listener.killed && (listener.type === null || listener.type === type)) {\n\t\t\t\t\tlistener.dispatch(type, event);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Shelves the event to be dispatched within next update cycle.\n\t *\n\t * @param type Event type\n\t * @param event Event object\n\t * @todo automatically add in type and target properties if they are missing\n\t */\n\t/*public dispatchLater<Key extends keyof T>(type: Key, event: T[Key]): void {\n\t\tif (this._shouldDispatch(type)) {\n\t\t\tthis._eachListener((listener) => {\n\t\t\t\t// TODO check if it's faster to use an object of listeners rather than a single big array\n\t\t\t\tif (!listener.killed && (listener.type === null || listener.type === type)) {\n\t\t\t\t\t// TODO if the function throws, maybe it should keep going ?\n\t\t\t\t\t// TODO dispatch during the update cycle, rather than using whenIdle\n\t\t\t\t\t$async.whenIdle(() => {\n\t\t\t\t\t\tif (!listener.killed) {\n\t\t\t\t\t\t\tlistener.dispatch(type, event);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}*/\n\n\t/**\n\t * Creates, catalogs and returns an [[EventListener]].\n\t *\n\t * Event listener can be disposed.\n\t *\n\t * @param once Listener's once setting\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t * @param shouldClone Whether the listener should be copied when the EventDispatcher is copied\n\t * @param dispatch\n\t * @returns An event listener\n\t */\n\tprotected _on<C, Key extends keyof T>(once: boolean, type: Key | null, callback: any, context: C, shouldClone: boolean, dispatch: (type: Key, event: T[Key]) => void): EventListener {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\tthis._removeExistingListener(once, type, callback, context);\n\n\t\tconst info: EventListener = {\n\t\t\ttype: type,\n\t\t\tcallback: callback,\n\t\t\tcontext: context,\n\t\t\tshouldClone: shouldClone,\n\t\t\tdispatch: <any>dispatch,\n\t\t\tkilled: false,\n\t\t\tonce: once,\n\t\t\tdisposer: new Disposer(() => {\n\t\t\t\tinfo.killed = true;\n\t\t\t\tthis._removeListener(info);\n\t\t\t})\n\t\t};\n\n\t\tthis._listeners.push(info);\n\n\t\treturn info;\n\t}\n\n\t/**\n\t * Creates an event listener to be invoked on **any** event.\n\t *\n\t * @param callback Callback function\n\t * @param context Callback context\n\t * @param shouldClone Whether the listener should be copied when the EventDispatcher is copied\n\t * @returns A disposable event listener\n\t */\n\tpublic onAll<C, K extends keyof T>(callback: (this: C, event: T[K]) => void, context?: C, shouldClone: boolean = true): IDisposer {\n\t\treturn this._on(false, null, callback, context, shouldClone, (_type, event) => (<any>callback).call(context, event as any)).disposer;\n\t}\n\n\t/**\n\t * Creates an event listener to be invoked on a specific event type.\n\t *\n\t * ```TypeScript\n\t * button.events.once(\"click\", (ev) => {\n\t * console.log(\"Button clicked\");\n\t * }, this);\n\t * ```\n\t * ```JavaScript\n\t * button.events.once(\"click\", (ev) => {\n\t * console.log(\"Button clicked\");\n\t * }, this);\n\t * ```\n\t *\n\t * The above will invoke our custom event handler whenever series we put\n\t * event on is hidden.\n\t *\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t * @param shouldClone Whether the listener should be copied when the EventDispatcher is copied\n\t * @returns A disposable event listener\n\t */\n\tpublic on<C, Key extends keyof T>(type: Key, callback: (this: C | undefined, event: T[Key]) => void, context?: C, shouldClone: boolean = true): IDisposer {\n\t\treturn this._on(false, type, callback, context, shouldClone, (_type, event) => callback.call(context, event)).disposer;\n\t}\n\n\t/**\n\t * Creates an event listener to be invoked on a specific event type once.\n\t *\n\t * Once the event listener is invoked, it is automatically disposed.\n\t *\n\t * ```TypeScript\n\t * button.events.once(\"click\", (ev) => {\n\t * console.log(\"Button clicked\");\n\t * }, this);\n\t * ```\n\t * ```JavaScript\n\t * button.events.once(\"click\", (ev) => {\n\t * console.log(\"Button clicked\");\n\t * }, this);\n\t * ```\n\t *\n\t * The above will invoke our custom event handler the first time series we\n\t * put event on is hidden.\n\t *\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t * @param shouldClone Whether the listener should be copied when the EventDispatcher is copied\n\t * @returns A disposable event listener\n\t */\n\tpublic once<C, Key extends keyof T>(type: Key, callback: (this: C | undefined, event: T[Key]) => void, context?: C, shouldClone: boolean = true): IDisposer {\n\t\tconst x = this._on(true, type, callback, context, shouldClone, (_type, event) => {\n\t\t\tx.disposer.dispose();\n\t\t\tcallback.call(context, event)\n\t\t});\n\n\t\t// TODO maybe this should return a different Disposer ?\n\t\treturn x.disposer;\n\t}\n\n\t/**\n\t * Removes the event listener with specific parameters.\n\t *\n\t * @param type Listener's type\n\t * @param callback Callback function\n\t * @param context Callback context\n\t */\n\tpublic off<C, Key extends keyof T>(type: Key, callback?: (this: C, event: T[Key]) => void, context?: C): void {\n\t\tthis._removeExistingListener(false, type, callback, context);\n\t}\n\n\n\t/**\n\t * Copies all dispatcher parameters, including listeners, from another event\n\t * dispatcher.\n\t *\n\t * @param source Source event dispatcher\n\t * @ignore\n\t */\n\tpublic copyFrom(source: this): IDisposer {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\tif (source === this) {\n\t\t\tthrow new Error(\"Cannot copyFrom the same TargetedEventDispatcher\");\n\t\t}\n\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$array.each(source._listeners, (x) => {\n\t\t\t// TODO is this correct ?\n\t\t\tif (!x.killed && x.shouldClone) {\n\t\t\t\tif (x.type === null) {\n\t\t\t\t\tdisposers.push(this.onAll(x.callback as any, x.context));\n\n\t\t\t\t} else if (x.once) {\n\t\t\t\t\tdisposers.push(this.once(x.type, x.callback, x.context));\n\n\t\t\t\t} else {\n\t\t\t\t\tdisposers.push(this.on(x.type, x.callback, x.context));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n\n}\n\n/**\n * A version of the [[EventDispatcher]] that dispatches events for a specific\n * target object.\n *\n * @ignore\n */\nexport class TargetedEventDispatcher<Target, T> extends EventDispatcher<T> {\n\n\t/**\n\t * A target object which is originating events using this dispatcher.\n\t */\n\tpublic target: Target;\n\n\t/**\n\t * Constructor\n\t *\n\t * @param target Event dispatcher target\n\t */\n\tconstructor(target: Target) {\n\t\tsuper();\n\t\tthis.target = target;\n\t}\n\n\t/**\n\t * Copies all dispatcher parameters, including listeners, from another event\n\t * dispatcher.\n\t *\n\t * @param source Source event dispatcher\n\t * @ignore\n\t */\n\tpublic copyFrom(source: this): IDisposer {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"EventDispatcher is disposed\");\n\t\t}\n\n\t\tif (source === this) {\n\t\t\tthrow new Error(\"Cannot copyFrom the same TargetedEventDispatcher\");\n\t\t}\n\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$array.each(source._listeners, (x) => {\n\t\t\t// TODO very hacky\n\t\t\tif (x.context === source.target) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// TODO is this correct ?\n\t\t\tif (!x.killed && x.shouldClone) {\n\t\t\t\tif (x.type === null) {\n\t\t\t\t\tdisposers.push(this.onAll(x.callback as any, x.context));\n\n\t\t\t\t} else if (x.once) {\n\t\t\t\t\tdisposers.push(this.once(x.type, x.callback, x.context));\n\n\t\t\t\t} else {\n\t\t\t\t\tdisposers.push(this.on(x.type, x.callback, x.context));\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Modal.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Modal.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AA+JlF,MAAM,WAAW,cAAe,SAAQ,eAAe;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAc,SAAQ,cAAc;IACpD,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACxB;AAED,MAAM,WAAW,YAAa,SAAQ,aAAa;IAClD,QAAQ,EAAE,EAAE,CAAA;IACZ,QAAQ,EAAE,EAAE,CAAA;IACZ,WAAW,EAAE,EAAE,CAAA;CACf;AAED;;GAEG;AACH,qBAAa,KAAM,SAAQ,MAAM;IAChC,OAAc,SAAS,EAAE,MAAM,CAAW;IAC1C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA+C;IAEvE,SAAS,EAAE,cAAc,CAAC;IAC1B,gBAAgB,EAAE,aAAa,CAAC;IAChC,OAAO,EAAE,YAAY,CAAC;IAIrC,SAAS,CAAC,SAAS;IAgDZ,cAAc;IAQrB;;;;OAIG;IACI,MAAM,IAAI,OAAO;IAIxB;;OAEG;IACI,IAAI,IAAI,IAAI;IAQnB;;OAEG;IACI,KAAK,IAAI,IAAI;IAQpB;;OAEG;IACI,MAAM,IAAI,IAAI;IAQrB;;OAEG;IACI,OAAO;CAKd"}
|
|
@@ -13,6 +13,8 @@ var rules;
|
|
|
13
13
|
function modalCSS(element, root, _prefix) {
|
|
14
14
|
var ic = root.interfaceColors;
|
|
15
15
|
var active = ic.get("secondaryButton").toCSS();
|
|
16
|
+
var text = ic.get("text").toCSS();
|
|
17
|
+
var shadow = ic.get("alternativeBackground").toCSS(0.45);
|
|
16
18
|
//const altbg = ic.get("alternativeBackground")!.toCSS();
|
|
17
19
|
if (!rules) {
|
|
18
20
|
var disposer_1 = new MultiDisposer([
|
|
@@ -60,8 +62,9 @@ function modalCSS(element, root, _prefix) {
|
|
|
60
62
|
"background": ic.get("background").toCSS(),
|
|
61
63
|
//"border": "1px solid " + ic.get("alternativeBackground")!.toCSS(),
|
|
62
64
|
"border-radius": "4px",
|
|
63
|
-
"-webkit-box-shadow": "0px 0px 36px 0px
|
|
64
|
-
"box-shadow": "0px 0px 36px 0px
|
|
65
|
+
"-webkit-box-shadow": "0px 0px 36px 0px " + shadow,
|
|
66
|
+
"box-shadow": "0px 0px 36px 0px " + shadow,
|
|
67
|
+
"color": text
|
|
65
68
|
}),
|
|
66
69
|
new StyleRule(element, ".am5-modal-content h1", {
|
|
67
70
|
"font-size": "1em",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Modal.ts"],"names":[],"mappings":"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","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\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}),\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}),\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}),\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}),\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 rgba(0,0,0,0.45)\",\n\t\t\t\t\"box-shadow\": \"0px 0px 36px 0px rgba(0,0,0,0.45)\"\n\t\t\t}),\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}),\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}),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-row\", {\n\t\t\t\t\"display\": \"table-row\"\n\t\t\t}),\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}),\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}),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-cell > *\", {\n\t\t\t\t\"vertical-align\": \"middle\"\n\t\t\t}),\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}),\n\n\t\t\tnew StyleRule(element, \".am5-modal-input-narrow\", {\n\t\t\t\t\"width\": \"50px\"\n\t\t\t}),\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}),\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}),\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}),\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}),\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\tcontent?: string;\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 */\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// 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\t$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() && ev.keyCode == 27) {\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\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\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\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\tthis.root.dom.removeChild(this.getPrivate(\"container\"));\n\t}\n\n}"]}
|
|
1
|
+
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Modal.ts"],"names":[],"mappings":"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","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}),\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}),\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}),\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}),\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}),\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}),\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}),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-row\", {\n\t\t\t\t\"display\": \"table-row\"\n\t\t\t}),\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}),\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}),\n\n\t\t\tnew StyleRule(element, \".am5-modal-table-cell > *\", {\n\t\t\t\t\"vertical-align\": \"middle\"\n\t\t\t}),\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}),\n\n\t\t\tnew StyleRule(element, \".am5-modal-input-narrow\", {\n\t\t\t\t\"width\": \"50px\"\n\t\t\t}),\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}),\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}),\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}),\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}),\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\tcontent?: string;\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 */\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// 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\t$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() && ev.keyCode == 27) {\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\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\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\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\tthis.root.dom.removeChild(this.getPrivate(\"container\"));\n\t}\n\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextFormatter.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/util/TextFormatter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AAG5D;;GAEG;AACH,MAAM,WAAW,UAAU;IAE1B;;OAEG;IACH,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IAE9C;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CAEd;AAED,qBAAa,aAAa;IAEzB,OAAc,MAAM,SAAkB;IAEtC;;;;;;OAMG;WACW,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAU1C;;;;;;OAMG;WACW,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAS5C;;;;;;OAMG;WACW,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAS3C;;;;;;;;;;;;;;;;;;;OAmBG;WACW,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,GAAE,OAAe,EAAE,YAAY,GAAE,OAAe,GAAG,UAAU,EAAE;IAiG7G;;;;;;;;OAQG;WACW,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;WAI9B,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;
|
|
1
|
+
{"version":3,"file":"TextFormatter.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/core/util/TextFormatter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AAG5D;;GAEG;AACH,MAAM,WAAW,UAAU;IAE1B;;OAEG;IACH,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IAE9C;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CAEd;AAED,qBAAa,aAAa;IAEzB,OAAc,MAAM,SAAkB;IAEtC;;;;;;OAMG;WACW,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAU1C;;;;;;OAMG;WACW,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAS5C;;;;;;OAMG;WACW,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAS3C;;;;;;;;;;;;;;;;;;;OAmBG;WACW,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,GAAE,OAAe,EAAE,YAAY,GAAE,OAAe,GAAG,UAAU,EAAE;IAiG7G;;;;;;;;OAQG;WACW,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;WAI9B,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU;CAuDrD"}
|
|
@@ -198,11 +198,6 @@ var TextFormatter = /** @class */ (function () {
|
|
|
198
198
|
if (style == "" || style == "[ ]") {
|
|
199
199
|
return {};
|
|
200
200
|
}
|
|
201
|
-
// TODO: cache
|
|
202
|
-
// let cached = registry.getCache("translateStyleShortcuts_" + style);
|
|
203
|
-
// if (cached) {
|
|
204
|
-
// return cached;
|
|
205
|
-
// }
|
|
206
201
|
// Pre-process quoted text
|
|
207
202
|
var q = style.match(/('[^']*')|("[^"]*")/gi);
|
|
208
203
|
if (q) {
|
|
@@ -216,7 +211,6 @@ var TextFormatter = /** @class */ (function () {
|
|
|
216
211
|
if (!b) {
|
|
217
212
|
return {};
|
|
218
213
|
}
|
|
219
|
-
//console.log(b)
|
|
220
214
|
// Check each part
|
|
221
215
|
for (var i = 0; i < b.length; i++) {
|
|
222
216
|
if (b[i].match(/^(normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900)$/i)) {
|
|
@@ -234,14 +228,12 @@ var TextFormatter = /** @class */ (function () {
|
|
|
234
228
|
format.fill = Color.fromString(b[i]);
|
|
235
229
|
}
|
|
236
230
|
else {
|
|
237
|
-
var p = b[i].split(/:[ ]*/);
|
|
231
|
+
var p = b[i].replace("+", " ").split(/:[ ]*/);
|
|
238
232
|
format[p[0]] = p[1];
|
|
239
233
|
//textStyle.push(b[i].replace(/^[a-zA-Z]:[ ]*/, ""));
|
|
240
234
|
//b[i] = b[i].replace(/\+/g, " ");
|
|
241
235
|
}
|
|
242
236
|
}
|
|
243
|
-
// TODO: cache
|
|
244
|
-
// registry.setCache("translateStyleShortcuts_" + style, res);
|
|
245
237
|
return format;
|
|
246
238
|
}
|
|
247
239
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextFormatter.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/TextFormatter.ts"],"names":[],"mappings":"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","sourcesContent":["import { Color } from \"./Color\"\nimport type { ITextStyle } from \"../render/backend/Renderer\"\nimport * as $type from \"./Type\";\n\n/**\n * Defines an interface for an object that holds a chunk of text.\n */\nexport interface ITextChunk {\n\n\t/**\n\t * Type of the chunk.\n\t */\n\t\"type\": \"value\" | \"text\" | \"format\" | \"image\",\n\n\t/**\n\t * Text.\n\t */\n\t\"text\": string\n\n}\n\nexport class TextFormatter {\n\n\tpublic static prefix = \"__amcharts__\";\n\n\t/**\n\t * Replaces brackets with temporary placeholders.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Input text\n\t * @return Escaped text\n\t */\n\tpublic static escape(text: string): string {\n\t\treturn text.\n\t\t\treplace(/\\[\\[/g, this.prefix + \"1\").\n\t\t\treplace(/([^\\/\\]]{1})\\]\\]/g, \"$1\" + this.prefix + \"2\").\n\t\t\treplace(/\\]\\]/g, this.prefix + \"2\").\n\t\t\treplace(/\\{\\{/g, this.prefix + \"3\").\n\t\t\treplace(/\\}\\}/g, this.prefix + \"4\").\n\t\t\treplace(/\\'\\'/g, this.prefix + \"5\");\n\t}\n\n\t/**\n\t * Replaces placeholders back to brackets.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Escaped text\n\t * @return Unescaped text\n\t */\n\tpublic static unescape(text: string): string {\n\t\treturn text.\n\t\t\treplace(new RegExp(this.prefix + \"1\", \"g\"), \"[[\").\n\t\t\treplace(new RegExp(this.prefix + \"2\", \"g\"), \"]]\").\n\t\t\treplace(new RegExp(this.prefix + \"3\", \"g\"), \"{{\").\n\t\t\treplace(new RegExp(this.prefix + \"4\", \"g\"), \"}}\").\n\t\t\treplace(new RegExp(this.prefix + \"5\", \"g\"), \"''\");\n\t}\n\n\t/**\n\t * Cleans up the text text for leftover double square brackets.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Input text\n\t * @return Cleaned up text\n\t */\n\tpublic static cleanUp(text: string): string {\n\t\treturn text.\n\t\t\treplace(/\\[\\[/g, \"[\").\n\t\t\treplace(/\\]\\]/g, \"]\").\n\t\t\treplace(/\\{\\{/g, \"{\").\n\t\t\treplace(/\\}\\}/g, \"}\").\n\t\t\treplace(/\\'\\'/g, \"'\");\n\t}\n\n\t/**\n\t * Splits string into chunks. (style blocks, quoted blocks, regular blocks)\n\t *\n\t * If the second parameter `quotedBlocks` is set to `true` this method will\n\t * also single out text blocks enclosed within single quotes that no\n\t * formatting should be applied to, and they should be displayed as is.\n\t *\n\t * Default for the above is `false`, so that you can use single quote in text\n\t * without escaping it.\n\t *\n\t * If enabled, single quotes can be escaped by doubling it - adding two\n\t * single quotes, which will be replaced by a one single quote in the final\n\t * output.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Text to chunk\n\t * @param quotedBlocks Use quoted blocks\n\t * @param noFormatting Formatting blocks will be treated as regular text\n\t * @return Array of string chunks\n\t */\n\tpublic static chunk(text: string, quotedBlocks: boolean = false, noFormatting: boolean = false): ITextChunk[] {\n\n\t\t// Init result\n\t\tlet res: ITextChunk[] = [];\n\n\t\t// Replace double (escaped) square spaces and quotes with temporary codes\n\t\ttext = this.escape(text);\n\n\t\t// Deal with style blocks\n\t\tlet chunks = quotedBlocks ? text.split(\"'\") : [text];\n\t\tfor (let i: number = 0; i < chunks.length; i++) {\n\t\t\tlet chunk = chunks[i];\n\n\t\t\t// Empty?\n\t\t\tif (chunk === \"\") {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif ((i % 2) === 0) {\n\n\t\t\t\t// Text outside quotes\n\t\t\t\t// Parse for style blocks which are \"text\" chunks, the rest chunks are\n\t\t\t\t// \"value\"\n\n\t\t\t\tchunk = chunk.replace(/\\]\\[/g, \"]\" + $type.PLACEHOLDER + \"[\");\n\t\t\t\tchunk = chunk.replace(/\\[\\]/g, \"[ ]\");\n\t\t\t\tlet chunks2 = chunk.split(/[\\[\\]]+/);\n\t\t\t\tfor (let i2: number = 0; i2 < chunks2.length; i2++) {\n\t\t\t\t\tlet chunk2 = this.cleanUp(this.unescape(chunks2[i2]));\n\n\t\t\t\t\t// Placeholder?\n\t\t\t\t\tif (chunk2 === $type.PLACEHOLDER) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Empty?\n\t\t\t\t\tif (chunk2 === \"\") {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Block or value\n\t\t\t\t\tif ((i2 % 2) === 0) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"value\",\n\t\t\t\t\t\t\t\"text\": chunk2\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": noFormatting ? \"value\" : \"format\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t}\n\t\t\telse {\n\n\t\t\t\t// A text within doublequotes\n\t\t\t\t// All chunks are \"text\"\n\n\t\t\t\tlet chunks2 = chunk.split(/[\\[\\]]+/);\n\t\t\t\tfor (let i2: number = 0; i2 < chunks2.length; i2++) {\n\t\t\t\t\tlet chunk2 = this.cleanUp(this.unescape(chunks2[i2]));\n\n\t\t\t\t\t// Empty?\n\t\t\t\t\tif (chunk2 === \"\") {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Block or text\n\t\t\t\t\tif ((i2 % 2) === 0) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"text\",\n\t\t\t\t\t\t\t\"text\": chunk2\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse if (this.isImage(chunk2)) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"image\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"format\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\n\t\treturn res;\n\t}\n\n\t/**\n\t * Checks if supplied format contains image information and should be\n\t * formatted as such.\n\t * I.e.: `[img: myImage.png]`\n\t *\n\t * @ignore\n\t * @param text Format\n\t * @return true if it is an image\n\t */\n\tpublic static isImage(text: string): boolean {\n\t\treturn text.match(/img[ ]?:/) ? true : false;\n\t}\n\n\tpublic static getTextStyle(style: string): ITextStyle {\n\n\t\t// let textStyle: string[] = [];\n\t\t// let textFill: string | undefined;\n\t\tlet format: ITextStyle = {};\n\n\t\tif (style == \"\" || style == \"[ ]\") {\n\t\t\treturn {};\n\t\t}\n\n\t\t// TODO: cache\n\t\t// let cached = registry.getCache(\"translateStyleShortcuts_\" + style);\n\t\t// if (cached) {\n\t\t// \treturn cached;\n\t\t// }\n\n\t\t// Pre-process quoted text\n\t\tconst q = style.match(/('[^']*')|(\"[^\"]*\")/gi);\n\t\tif (q) {\n\t\t\tfor (let i: number = 0; i < q.length; i++) {\n\t\t\t\tstyle = style.replace(q[i], q[i].replace(/['\"]*/g, \"\").replace(/[ ]+/g, \"+\"));\n\t\t\t}\n\t\t}\n\n\t\t// Get style parts\n\t\tlet b: string[] | null = style.match(/([\\w\\-]*:[\\s]?[^;\\s\\]]*)|(\\#[\\w]{1,6})|([\\w]+)|(\\/)/gi);\n\n\t\t// Empty?\n\t\tif (!b) {\n\t\t\treturn {};\n\t\t}\n\n\t\t//console.log(b)\n\n\t\t// Check each part\n\t\tfor (let i: number = 0; i < b.length; i++) {\n\n\t\t\tif (b[i].match(/^(normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900)$/i)) {\n\t\t\t\t(<any>format).fontWeight = b[i];\n\t\t\t}\n\t\t\telse if (b[i].match(/^(underline)$/i)) {\n\t\t\t\t(<any>format).textDecoration = b[i];\n\t\t\t}\n\t\t\telse if (b[i] == \"/\") {\n\t\t\t\t// Just closing tag\n\t\t\t\t// Do nothing\n\t\t\t}\n\t\t\telse if (!b[i].match(/:/)) {\n\t\t\t\t// Color\n\t\t\t\tformat.fill = Color.fromString(b[i]);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst p = b[i].split(/:[ ]*/);\n\t\t\t\t(<any>format)[p[0]] = p[1];\n\t\t\t\t//textStyle.push(b[i].replace(/^[a-zA-Z]:[ ]*/, \"\"));\n\t\t\t\t//b[i] = b[i].replace(/\\+/g, \" \");\n\t\t\t}\n\n\t\t}\n\n\t\t// TODO: cache\n\t\t// registry.setCache(\"translateStyleShortcuts_\" + style, res);\n\n\t\treturn format;\n\t}\n\n}\n"]}
|
|
1
|
+
{"version":3,"file":"TextFormatter.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/TextFormatter.ts"],"names":[],"mappings":"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","sourcesContent":["import { Color } from \"./Color\"\nimport type { ITextStyle } from \"../render/backend/Renderer\"\nimport * as $type from \"./Type\";\n\n/**\n * Defines an interface for an object that holds a chunk of text.\n */\nexport interface ITextChunk {\n\n\t/**\n\t * Type of the chunk.\n\t */\n\t\"type\": \"value\" | \"text\" | \"format\" | \"image\",\n\n\t/**\n\t * Text.\n\t */\n\t\"text\": string\n\n}\n\nexport class TextFormatter {\n\n\tpublic static prefix = \"__amcharts__\";\n\n\t/**\n\t * Replaces brackets with temporary placeholders.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Input text\n\t * @return Escaped text\n\t */\n\tpublic static escape(text: string): string {\n\t\treturn text.\n\t\t\treplace(/\\[\\[/g, this.prefix + \"1\").\n\t\t\treplace(/([^\\/\\]]{1})\\]\\]/g, \"$1\" + this.prefix + \"2\").\n\t\t\treplace(/\\]\\]/g, this.prefix + \"2\").\n\t\t\treplace(/\\{\\{/g, this.prefix + \"3\").\n\t\t\treplace(/\\}\\}/g, this.prefix + \"4\").\n\t\t\treplace(/\\'\\'/g, this.prefix + \"5\");\n\t}\n\n\t/**\n\t * Replaces placeholders back to brackets.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Escaped text\n\t * @return Unescaped text\n\t */\n\tpublic static unescape(text: string): string {\n\t\treturn text.\n\t\t\treplace(new RegExp(this.prefix + \"1\", \"g\"), \"[[\").\n\t\t\treplace(new RegExp(this.prefix + \"2\", \"g\"), \"]]\").\n\t\t\treplace(new RegExp(this.prefix + \"3\", \"g\"), \"{{\").\n\t\t\treplace(new RegExp(this.prefix + \"4\", \"g\"), \"}}\").\n\t\t\treplace(new RegExp(this.prefix + \"5\", \"g\"), \"''\");\n\t}\n\n\t/**\n\t * Cleans up the text text for leftover double square brackets.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Input text\n\t * @return Cleaned up text\n\t */\n\tpublic static cleanUp(text: string): string {\n\t\treturn text.\n\t\t\treplace(/\\[\\[/g, \"[\").\n\t\t\treplace(/\\]\\]/g, \"]\").\n\t\t\treplace(/\\{\\{/g, \"{\").\n\t\t\treplace(/\\}\\}/g, \"}\").\n\t\t\treplace(/\\'\\'/g, \"'\");\n\t}\n\n\t/**\n\t * Splits string into chunks. (style blocks, quoted blocks, regular blocks)\n\t *\n\t * If the second parameter `quotedBlocks` is set to `true` this method will\n\t * also single out text blocks enclosed within single quotes that no\n\t * formatting should be applied to, and they should be displayed as is.\n\t *\n\t * Default for the above is `false`, so that you can use single quote in text\n\t * without escaping it.\n\t *\n\t * If enabled, single quotes can be escaped by doubling it - adding two\n\t * single quotes, which will be replaced by a one single quote in the final\n\t * output.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Text to chunk\n\t * @param quotedBlocks Use quoted blocks\n\t * @param noFormatting Formatting blocks will be treated as regular text\n\t * @return Array of string chunks\n\t */\n\tpublic static chunk(text: string, quotedBlocks: boolean = false, noFormatting: boolean = false): ITextChunk[] {\n\n\t\t// Init result\n\t\tlet res: ITextChunk[] = [];\n\n\t\t// Replace double (escaped) square spaces and quotes with temporary codes\n\t\ttext = this.escape(text);\n\n\t\t// Deal with style blocks\n\t\tlet chunks = quotedBlocks ? text.split(\"'\") : [text];\n\t\tfor (let i: number = 0; i < chunks.length; i++) {\n\t\t\tlet chunk = chunks[i];\n\n\t\t\t// Empty?\n\t\t\tif (chunk === \"\") {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif ((i % 2) === 0) {\n\n\t\t\t\t// Text outside quotes\n\t\t\t\t// Parse for style blocks which are \"text\" chunks, the rest chunks are\n\t\t\t\t// \"value\"\n\n\t\t\t\tchunk = chunk.replace(/\\]\\[/g, \"]\" + $type.PLACEHOLDER + \"[\");\n\t\t\t\tchunk = chunk.replace(/\\[\\]/g, \"[ ]\");\n\t\t\t\tlet chunks2 = chunk.split(/[\\[\\]]+/);\n\t\t\t\tfor (let i2: number = 0; i2 < chunks2.length; i2++) {\n\t\t\t\t\tlet chunk2 = this.cleanUp(this.unescape(chunks2[i2]));\n\n\t\t\t\t\t// Placeholder?\n\t\t\t\t\tif (chunk2 === $type.PLACEHOLDER) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Empty?\n\t\t\t\t\tif (chunk2 === \"\") {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Block or value\n\t\t\t\t\tif ((i2 % 2) === 0) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"value\",\n\t\t\t\t\t\t\t\"text\": chunk2\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": noFormatting ? \"value\" : \"format\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t}\n\t\t\telse {\n\n\t\t\t\t// A text within doublequotes\n\t\t\t\t// All chunks are \"text\"\n\n\t\t\t\tlet chunks2 = chunk.split(/[\\[\\]]+/);\n\t\t\t\tfor (let i2: number = 0; i2 < chunks2.length; i2++) {\n\t\t\t\t\tlet chunk2 = this.cleanUp(this.unescape(chunks2[i2]));\n\n\t\t\t\t\t// Empty?\n\t\t\t\t\tif (chunk2 === \"\") {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Block or text\n\t\t\t\t\tif ((i2 % 2) === 0) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"text\",\n\t\t\t\t\t\t\t\"text\": chunk2\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse if (this.isImage(chunk2)) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"image\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"format\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\n\t\treturn res;\n\t}\n\n\t/**\n\t * Checks if supplied format contains image information and should be\n\t * formatted as such.\n\t * I.e.: `[img: myImage.png]`\n\t *\n\t * @ignore\n\t * @param text Format\n\t * @return true if it is an image\n\t */\n\tpublic static isImage(text: string): boolean {\n\t\treturn text.match(/img[ ]?:/) ? true : false;\n\t}\n\n\tpublic static getTextStyle(style: string): ITextStyle {\n\n\t\t// let textStyle: string[] = [];\n\t\t// let textFill: string | undefined;\n\t\tlet format: ITextStyle = {};\n\n\t\tif (style == \"\" || style == \"[ ]\") {\n\t\t\treturn {};\n\t\t}\n\n\t\t// Pre-process quoted text\n\t\tconst q = style.match(/('[^']*')|(\"[^\"]*\")/gi);\n\t\tif (q) {\n\t\t\tfor (let i: number = 0; i < q.length; i++) {\n\t\t\t\tstyle = style.replace(q[i], q[i].replace(/['\"]*/g, \"\").replace(/[ ]+/g, \"+\"));\n\t\t\t}\n\t\t}\n\n\t\t// Get style parts\n\t\tlet b: string[] | null = style.match(/([\\w\\-]*:[\\s]?[^;\\s\\]]*)|(\\#[\\w]{1,6})|([\\w]+)|(\\/)/gi);\n\n\t\t// Empty?\n\t\tif (!b) {\n\t\t\treturn {};\n\t\t}\n\n\t\t// Check each part\n\t\tfor (let i: number = 0; i < b.length; i++) {\n\n\t\t\tif (b[i].match(/^(normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900)$/i)) {\n\t\t\t\t(<any>format).fontWeight = b[i];\n\t\t\t}\n\t\t\telse if (b[i].match(/^(underline)$/i)) {\n\t\t\t\t(<any>format).textDecoration = b[i];\n\t\t\t}\n\t\t\telse if (b[i] == \"/\") {\n\t\t\t\t// Just closing tag\n\t\t\t\t// Do nothing\n\t\t\t}\n\t\t\telse if (!b[i].match(/:/)) {\n\t\t\t\t// Color\n\t\t\t\tformat.fill = Color.fromString(b[i]);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst p = b[i].replace(\"+\", \" \").split(/:[ ]*/);\n\t\t\t\t(<any>format)[p[0]] = p[1];\n\t\t\t\t//textStyle.push(b[i].replace(/^[a-zA-Z]:[ ]*/, \"\"));\n\t\t\t\t//b[i] = b[i].replace(/\\+/g, \" \");\n\t\t\t}\n\n\t\t}\n\n\t\treturn format;\n\t}\n\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DefaultTheme.d.ts","sourceRoot":"","sources":["../../../../src/.internal/themes/DefaultTheme.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAE9F,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAQtC,UAAU,QAAQ,CAAC,CAAC;IACnB,SAAS,EAAE,CAAC,CAAC;IACb,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAClD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,wBAAwB,QAOlI;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACtC,SAAS,CAAC,iBAAiB;
|
|
1
|
+
{"version":3,"file":"DefaultTheme.d.ts","sourceRoot":"","sources":["../../../../src/.internal/themes/DefaultTheme.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAE9F,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAQtC,UAAU,QAAQ,CAAC,CAAC;IACnB,SAAS,EAAE,CAAC,CAAC;IACb,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;CAClD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,wBAAwB,QAOlI;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACtC,SAAS,CAAC,iBAAiB;CA+5B3B"}
|
|
@@ -529,6 +529,7 @@ var DefaultTheme = /** @class */ (function (_super) {
|
|
|
529
529
|
cornerRadiusTR: 40
|
|
530
530
|
});
|
|
531
531
|
setColor(rule, "fill", ic, "secondaryButton");
|
|
532
|
+
setColor(rule, "stroke", ic, "secondaryButtonStroke");
|
|
532
533
|
}
|
|
533
534
|
{
|
|
534
535
|
var rule = r("RoundedRectangle", ["background", "resize", "button"]).states.create("hover", {});
|