@semcore/d3-chart 16.5.0 → 17.0.0-prerelease.8
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/CHANGELOG.md +10 -0
- package/lib/cjs/AnimatedClipPath.js +28 -41
- package/lib/cjs/AnimatedClipPath.js.map +1 -1
- package/lib/cjs/Area.js +187 -223
- package/lib/cjs/Area.js.map +1 -1
- package/lib/cjs/Axis.js +248 -327
- package/lib/cjs/Axis.js.map +1 -1
- package/lib/cjs/Bar.js +162 -185
- package/lib/cjs/Bar.js.map +1 -1
- package/lib/cjs/Bubble.js +219 -248
- package/lib/cjs/Bubble.js.map +1 -1
- package/lib/cjs/CompactHorizontalBar.js +448 -482
- package/lib/cjs/CompactHorizontalBar.js.map +1 -1
- package/lib/cjs/Donut.js +349 -396
- package/lib/cjs/Donut.js.map +1 -1
- package/lib/cjs/Dots.js +67 -86
- package/lib/cjs/Dots.js.map +1 -1
- package/lib/cjs/GroupBar.js +78 -93
- package/lib/cjs/GroupBar.js.map +1 -1
- package/lib/cjs/HorizontalBar.js +149 -167
- package/lib/cjs/HorizontalBar.js.map +1 -1
- package/lib/cjs/Hover.js +178 -207
- package/lib/cjs/Hover.js.map +1 -1
- package/lib/cjs/Line.js +182 -222
- package/lib/cjs/Line.js.map +1 -1
- package/lib/cjs/Pattern.js +124 -126
- package/lib/cjs/Pattern.js.map +1 -1
- package/lib/cjs/Plot.js +100 -126
- package/lib/cjs/Plot.js.map +1 -1
- package/lib/cjs/Radar.js +576 -681
- package/lib/cjs/Radar.js.map +1 -1
- package/lib/cjs/RadialTree.js +518 -571
- package/lib/cjs/RadialTree.js.map +1 -1
- package/lib/cjs/Reference.js +147 -178
- package/lib/cjs/Reference.js.map +1 -1
- package/lib/cjs/ResponsiveContainer.js +64 -82
- package/lib/cjs/ResponsiveContainer.js.map +1 -1
- package/lib/cjs/ScatterPlot.js +169 -199
- package/lib/cjs/ScatterPlot.js.map +1 -1
- package/lib/cjs/StackBar.js +135 -177
- package/lib/cjs/StackBar.js.map +1 -1
- package/lib/cjs/StackedArea.js +60 -73
- package/lib/cjs/StackedArea.js.map +1 -1
- package/lib/cjs/Tooltip.js +193 -208
- package/lib/cjs/Tooltip.js.map +1 -1
- package/lib/cjs/Venn.js +182 -217
- package/lib/cjs/Venn.js.map +1 -1
- package/lib/cjs/a11y/DataAccessibilityTable.js +45 -83
- package/lib/cjs/a11y/DataAccessibilityTable.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yModule.js +37 -97
- package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yView.js +97 -91
- package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
- package/lib/cjs/a11y/bezier.js +17 -23
- package/lib/cjs/a11y/bezier.js.map +1 -1
- package/lib/cjs/a11y/focus.js +16 -16
- package/lib/cjs/a11y/focus.js.map +1 -1
- package/lib/cjs/a11y/hints.js +72 -75
- package/lib/cjs/a11y/hints.js.map +1 -1
- package/lib/cjs/a11y/insights.js +354 -525
- package/lib/cjs/a11y/insights.js.map +1 -1
- package/lib/cjs/a11y/intl.js +5 -5
- package/lib/cjs/a11y/intl.js.map +1 -1
- package/lib/cjs/a11y/locale.js +12 -19
- package/lib/cjs/a11y/locale.js.map +1 -1
- package/lib/cjs/a11y/serialize.js +164 -203
- package/lib/cjs/a11y/serialize.js.map +1 -1
- package/lib/cjs/a11y/summarize.js +7 -6
- package/lib/cjs/a11y/summarize.js.map +1 -1
- package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js +16 -16
- package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/a11y/translations/module/de.json +2 -2
- package/lib/cjs/a11y/translations/module/en.json +2 -2
- package/lib/cjs/a11y/translations/module/es.json +2 -2
- package/lib/cjs/a11y/translations/module/fr.json +2 -2
- package/lib/cjs/a11y/translations/module/it.json +2 -2
- package/lib/cjs/a11y/translations/module/ja.json +2 -2
- package/lib/cjs/a11y/translations/module/ko.json +2 -2
- package/lib/cjs/a11y/translations/module/nl.json +2 -2
- package/lib/cjs/a11y/translations/module/pl.json +2 -2
- package/lib/cjs/a11y/translations/module/pt.json +2 -2
- package/lib/cjs/a11y/translations/module/sv.json +2 -2
- package/lib/cjs/a11y/translations/module/tr.json +2 -2
- package/lib/cjs/a11y/translations/module/vi.json +2 -2
- package/lib/cjs/a11y/translations/module/zh.json +2 -2
- package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js +16 -16
- package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/color.js +1 -1
- package/lib/cjs/color.js.map +1 -1
- package/lib/cjs/component/Chart/AbstractChart.js +421 -466
- package/lib/cjs/component/Chart/AbstractChart.js.map +1 -1
- package/lib/cjs/component/Chart/AbstractChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/AreaChart.js +97 -115
- package/lib/cjs/component/Chart/AreaChart.js.map +1 -1
- package/lib/cjs/component/Chart/AreaChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/BarChart.js +229 -216
- package/lib/cjs/component/Chart/BarChart.js.map +1 -1
- package/lib/cjs/component/Chart/BarChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/BubbleChart.js +114 -136
- package/lib/cjs/component/Chart/BubbleChart.js.map +1 -1
- package/lib/cjs/component/Chart/BubbleChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/CigaretteChart.js +280 -305
- package/lib/cjs/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +76 -108
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js.map +1 -1
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/DonutChart.js +80 -95
- package/lib/cjs/component/Chart/DonutChart.js.map +1 -1
- package/lib/cjs/component/Chart/DonutChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/HistogramChart.js +126 -148
- package/lib/cjs/component/Chart/HistogramChart.js.map +1 -1
- package/lib/cjs/component/Chart/HistogramChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/LineChart.js +95 -113
- package/lib/cjs/component/Chart/LineChart.js.map +1 -1
- package/lib/cjs/component/Chart/LineChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/RadarChart.js +84 -110
- package/lib/cjs/component/Chart/RadarChart.js.map +1 -1
- package/lib/cjs/component/Chart/RadarChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/ScatterPlotChart.js +119 -143
- package/lib/cjs/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/cjs/component/Chart/ScatterPlotChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/VennChart.js +103 -122
- package/lib/cjs/component/Chart/VennChart.js.map +1 -1
- package/lib/cjs/component/Chart/VennChart.type.js.map +1 -1
- package/lib/cjs/component/Chart/index.js +2 -2
- package/lib/cjs/component/Chart/index.js.map +1 -1
- package/lib/cjs/component/ChartLegend/BaseLegend.js +72 -105
- package/lib/cjs/component/ChartLegend/BaseLegend.js.map +1 -1
- package/lib/cjs/component/ChartLegend/BaseLegend.type.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +58 -70
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +208 -221
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +63 -73
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
- package/lib/cjs/component/ChartLegend/index.js +4 -4
- package/lib/cjs/component/ChartLegend/index.js.map +1 -1
- package/lib/cjs/component/Cigarette/Cigarette.js +115 -129
- package/lib/cjs/component/Cigarette/Cigarette.js.map +1 -1
- package/lib/cjs/component/StackGroupBar/StackGroupBar.js +107 -137
- package/lib/cjs/component/StackGroupBar/StackGroupBar.js.map +1 -1
- package/lib/cjs/component/SvgElement.js +7 -7
- package/lib/cjs/component/SvgElement.js.map +1 -1
- package/lib/cjs/createElement.js +66 -65
- package/lib/cjs/createElement.js.map +1 -1
- package/lib/cjs/index.js +62 -62
- package/lib/cjs/style/axis.shadow.css +3 -0
- package/lib/cjs/style/plot.shadow.css +1 -3
- package/lib/cjs/style/plotA11yModule.shadow.css +10 -11
- package/lib/cjs/style/plotA11yView.shadow.css +13 -26
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js +15 -15
- package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/cjs/types/Axis.d.js.map +1 -1
- package/lib/cjs/types/CompactHorizontalBar.d.js.map +1 -1
- package/lib/cjs/types/Hover.d.js.map +1 -1
- package/lib/cjs/types/Line.d.js.map +1 -1
- package/lib/cjs/types/Plot.d.js.map +1 -1
- package/lib/cjs/types/Radar.d.js.map +1 -1
- package/lib/cjs/types/ResponsiveContainer.d.js.map +1 -1
- package/lib/cjs/types/Tooltip.d.js.map +1 -1
- package/lib/cjs/types/Venn.d.js.map +1 -1
- package/lib/cjs/types/index.d.js +80 -80
- package/lib/cjs/types/index.d.js.map +1 -1
- package/lib/cjs/utils.js +122 -145
- package/lib/cjs/utils.js.map +1 -1
- package/lib/es6/AnimatedClipPath.js +24 -37
- package/lib/es6/AnimatedClipPath.js.map +1 -1
- package/lib/es6/Area.js +179 -215
- package/lib/es6/Area.js.map +1 -1
- package/lib/es6/Axis.js +242 -321
- package/lib/es6/Axis.js.map +1 -1
- package/lib/es6/Bar.js +154 -177
- package/lib/es6/Bar.js.map +1 -1
- package/lib/es6/Bubble.js +206 -235
- package/lib/es6/Bubble.js.map +1 -1
- package/lib/es6/CompactHorizontalBar.js +433 -467
- package/lib/es6/CompactHorizontalBar.js.map +1 -1
- package/lib/es6/Donut.js +337 -384
- package/lib/es6/Donut.js.map +1 -1
- package/lib/es6/Dots.js +60 -79
- package/lib/es6/Dots.js.map +1 -1
- package/lib/es6/GroupBar.js +74 -89
- package/lib/es6/GroupBar.js.map +1 -1
- package/lib/es6/HorizontalBar.js +141 -159
- package/lib/es6/HorizontalBar.js.map +1 -1
- package/lib/es6/Hover.js +174 -203
- package/lib/es6/Hover.js.map +1 -1
- package/lib/es6/Line.js +173 -213
- package/lib/es6/Line.js.map +1 -1
- package/lib/es6/Pattern.js +68 -74
- package/lib/es6/Pattern.js.map +1 -1
- package/lib/es6/Plot.js +95 -121
- package/lib/es6/Plot.js.map +1 -1
- package/lib/es6/Radar.js +554 -659
- package/lib/es6/Radar.js.map +1 -1
- package/lib/es6/RadialTree.js +500 -553
- package/lib/es6/RadialTree.js.map +1 -1
- package/lib/es6/Reference.js +140 -171
- package/lib/es6/Reference.js.map +1 -1
- package/lib/es6/ResponsiveContainer.js +58 -76
- package/lib/es6/ResponsiveContainer.js.map +1 -1
- package/lib/es6/ScatterPlot.js +161 -191
- package/lib/es6/ScatterPlot.js.map +1 -1
- package/lib/es6/StackBar.js +130 -172
- package/lib/es6/StackBar.js.map +1 -1
- package/lib/es6/StackedArea.js +56 -69
- package/lib/es6/StackedArea.js.map +1 -1
- package/lib/es6/Tooltip.js +183 -198
- package/lib/es6/Tooltip.js.map +1 -1
- package/lib/es6/Venn.js +169 -204
- package/lib/es6/Venn.js.map +1 -1
- package/lib/es6/a11y/DataAccessibilityTable.js +41 -80
- package/lib/es6/a11y/DataAccessibilityTable.js.map +1 -1
- package/lib/es6/a11y/PlotA11yModule.js +35 -95
- package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
- package/lib/es6/a11y/PlotA11yView.js +89 -84
- package/lib/es6/a11y/PlotA11yView.js.map +1 -1
- package/lib/es6/a11y/bezier.js +16 -23
- package/lib/es6/a11y/bezier.js.map +1 -1
- package/lib/es6/a11y/focus.js +15 -16
- package/lib/es6/a11y/focus.js.map +1 -1
- package/lib/es6/a11y/hints.js +67 -73
- package/lib/es6/a11y/hints.js.map +1 -1
- package/lib/es6/a11y/insights.js +353 -524
- package/lib/es6/a11y/insights.js.map +1 -1
- package/lib/es6/a11y/intl.js +4 -5
- package/lib/es6/a11y/intl.js.map +1 -1
- package/lib/es6/a11y/locale.js +11 -18
- package/lib/es6/a11y/locale.js.map +1 -1
- package/lib/es6/a11y/serialize.js +162 -203
- package/lib/es6/a11y/serialize.js.map +1 -1
- package/lib/es6/a11y/summarize.js +6 -6
- package/lib/es6/a11y/summarize.js.map +1 -1
- package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js +15 -15
- package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/a11y/translations/module/de.json +2 -2
- package/lib/es6/a11y/translations/module/en.json +2 -2
- package/lib/es6/a11y/translations/module/es.json +2 -2
- package/lib/es6/a11y/translations/module/fr.json +2 -2
- package/lib/es6/a11y/translations/module/it.json +2 -2
- package/lib/es6/a11y/translations/module/ja.json +2 -2
- package/lib/es6/a11y/translations/module/ko.json +2 -2
- package/lib/es6/a11y/translations/module/nl.json +2 -2
- package/lib/es6/a11y/translations/module/pl.json +2 -2
- package/lib/es6/a11y/translations/module/pt.json +2 -2
- package/lib/es6/a11y/translations/module/sv.json +2 -2
- package/lib/es6/a11y/translations/module/tr.json +2 -2
- package/lib/es6/a11y/translations/module/vi.json +2 -2
- package/lib/es6/a11y/translations/module/zh.json +2 -2
- package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js +15 -15
- package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/color.js +1 -1
- package/lib/es6/color.js.map +1 -1
- package/lib/es6/component/Chart/AbstractChart.js +416 -462
- package/lib/es6/component/Chart/AbstractChart.js.map +1 -1
- package/lib/es6/component/Chart/AbstractChart.type.js.map +1 -1
- package/lib/es6/component/Chart/AreaChart.js +92 -111
- package/lib/es6/component/Chart/AreaChart.js.map +1 -1
- package/lib/es6/component/Chart/AreaChart.type.js.map +1 -1
- package/lib/es6/component/Chart/BarChart.js +225 -213
- package/lib/es6/component/Chart/BarChart.js.map +1 -1
- package/lib/es6/component/Chart/BarChart.type.js.map +1 -1
- package/lib/es6/component/Chart/BubbleChart.js +109 -132
- package/lib/es6/component/Chart/BubbleChart.js.map +1 -1
- package/lib/es6/component/Chart/BubbleChart.type.js.map +1 -1
- package/lib/es6/component/Chart/CigaretteChart.js +276 -301
- package/lib/es6/component/Chart/CigaretteChart.js.map +1 -1
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js +70 -103
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +1 -1
- package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +1 -1
- package/lib/es6/component/Chart/DonutChart.js +74 -90
- package/lib/es6/component/Chart/DonutChart.js.map +1 -1
- package/lib/es6/component/Chart/DonutChart.type.js.map +1 -1
- package/lib/es6/component/Chart/HistogramChart.js +121 -144
- package/lib/es6/component/Chart/HistogramChart.js.map +1 -1
- package/lib/es6/component/Chart/HistogramChart.type.js.map +1 -1
- package/lib/es6/component/Chart/LineChart.js +90 -109
- package/lib/es6/component/Chart/LineChart.js.map +1 -1
- package/lib/es6/component/Chart/LineChart.type.js.map +1 -1
- package/lib/es6/component/Chart/RadarChart.js +80 -107
- package/lib/es6/component/Chart/RadarChart.js.map +1 -1
- package/lib/es6/component/Chart/RadarChart.type.js.map +1 -1
- package/lib/es6/component/Chart/ScatterPlotChart.js +113 -138
- package/lib/es6/component/Chart/ScatterPlotChart.js.map +1 -1
- package/lib/es6/component/Chart/ScatterPlotChart.type.js.map +1 -1
- package/lib/es6/component/Chart/VennChart.js +97 -117
- package/lib/es6/component/Chart/VennChart.js.map +1 -1
- package/lib/es6/component/Chart/VennChart.type.js.map +1 -1
- package/lib/es6/component/ChartLegend/BaseLegend.js +70 -104
- package/lib/es6/component/ChartLegend/BaseLegend.js.map +1 -1
- package/lib/es6/component/ChartLegend/BaseLegend.type.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +53 -65
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +198 -211
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js +1 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +58 -68
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +1 -1
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.js.map +1 -1
- package/lib/es6/component/Cigarette/Cigarette.js +108 -122
- package/lib/es6/component/Cigarette/Cigarette.js.map +1 -1
- package/lib/es6/component/StackGroupBar/StackGroupBar.js +100 -130
- package/lib/es6/component/StackGroupBar/StackGroupBar.js.map +1 -1
- package/lib/es6/component/SvgElement.js +4 -5
- package/lib/es6/component/SvgElement.js.map +1 -1
- package/lib/es6/createElement.js +55 -54
- package/lib/es6/createElement.js.map +1 -1
- package/lib/es6/style/axis.shadow.css +3 -0
- package/lib/es6/style/plot.shadow.css +1 -3
- package/lib/es6/style/plotA11yModule.shadow.css +10 -11
- package/lib/es6/style/plotA11yView.shadow.css +13 -26
- package/lib/es6/translations/__intergalactic-dynamic-locales.js +14 -14
- package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -1
- package/lib/es6/types/Axis.d.js.map +1 -1
- package/lib/es6/types/CompactHorizontalBar.d.js.map +1 -1
- package/lib/es6/types/Hover.d.js.map +1 -1
- package/lib/es6/types/Line.d.js.map +1 -1
- package/lib/es6/types/Plot.d.js.map +1 -1
- package/lib/es6/types/Radar.d.js.map +1 -1
- package/lib/es6/types/ResponsiveContainer.d.js.map +1 -1
- package/lib/es6/types/Tooltip.d.js.map +1 -1
- package/lib/es6/types/Venn.d.js.map +1 -1
- package/lib/es6/utils.js +105 -144
- package/lib/es6/utils.js.map +1 -1
- package/lib/esm/AnimatedClipPath.mjs +24 -36
- package/lib/esm/Area.mjs +178 -149
- package/lib/esm/Axis.mjs +241 -242
- package/lib/esm/Bar.mjs +155 -137
- package/lib/esm/Bubble.mjs +205 -171
- package/lib/esm/CompactHorizontalBar.mjs +428 -383
- package/lib/esm/Donut.mjs +315 -266
- package/lib/esm/Dots.mjs +60 -49
- package/lib/esm/GroupBar.mjs +71 -75
- package/lib/esm/HorizontalBar.mjs +142 -120
- package/lib/esm/Hover.mjs +173 -163
- package/lib/esm/Line.mjs +174 -145
- package/lib/esm/Pattern.mjs +67 -63
- package/lib/esm/Plot.mjs +98 -95
- package/lib/esm/Radar.mjs +550 -498
- package/lib/esm/RadialTree.mjs +512 -416
- package/lib/esm/Reference.mjs +137 -122
- package/lib/esm/ResponsiveContainer.mjs +58 -69
- package/lib/esm/ScatterPlot.mjs +163 -162
- package/lib/esm/StackBar.mjs +126 -147
- package/lib/esm/StackedArea.mjs +53 -61
- package/lib/esm/Tooltip.mjs +185 -175
- package/lib/esm/Venn.mjs +170 -170
- package/lib/esm/a11y/DataAccessibilityTable.mjs +46 -73
- package/lib/esm/a11y/PlotA11yModule.mjs +37 -80
- package/lib/esm/a11y/PlotA11yView.mjs +99 -74
- package/lib/esm/a11y/bezier.mjs +16 -23
- package/lib/esm/a11y/focus.mjs +15 -16
- package/lib/esm/a11y/hints.mjs +65 -71
- package/lib/esm/a11y/insights.mjs +347 -495
- package/lib/esm/a11y/intl.mjs +4 -5
- package/lib/esm/a11y/locale.mjs +12 -14
- package/lib/esm/a11y/serialize.mjs +139 -152
- package/lib/esm/a11y/summarize.mjs +3 -3
- package/lib/esm/a11y/translations/module/__intergalactic-dynamic-locales.mjs +1 -1
- package/lib/esm/a11y/translations/module/de.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/en.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/es.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/fr.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/it.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/ja.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/ko.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/nl.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/pl.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/pt.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/sv.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/tr.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/vi.json.mjs +2 -4
- package/lib/esm/a11y/translations/module/zh.json.mjs +2 -4
- package/lib/esm/a11y/translations/view/__intergalactic-dynamic-locales.mjs +1 -1
- package/lib/esm/color.mjs +1 -1
- package/lib/esm/component/Chart/AbstractChart.mjs +422 -415
- package/lib/esm/component/Chart/AreaChart.mjs +92 -91
- package/lib/esm/component/Chart/BarChart.mjs +225 -177
- package/lib/esm/component/Chart/BubbleChart.mjs +110 -118
- package/lib/esm/component/Chart/CigaretteChart.mjs +277 -268
- package/lib/esm/component/Chart/CompactHorizontalBarChart.mjs +70 -87
- package/lib/esm/component/Chart/DonutChart.mjs +74 -84
- package/lib/esm/component/Chart/HistogramChart.mjs +121 -117
- package/lib/esm/component/Chart/LineChart.mjs +90 -89
- package/lib/esm/component/Chart/RadarChart.mjs +81 -97
- package/lib/esm/component/Chart/ScatterPlotChart.mjs +113 -111
- package/lib/esm/component/Chart/VennChart.mjs +98 -111
- package/lib/esm/component/ChartLegend/BaseLegend.mjs +75 -97
- package/lib/esm/component/ChartLegend/LegendFlex/LegendFlex.mjs +54 -55
- package/lib/esm/component/ChartLegend/LegendItem/LegendItem.mjs +194 -165
- package/lib/esm/component/ChartLegend/LegendItem/LegendItem.type.mjs +1 -1
- package/lib/esm/component/ChartLegend/LegendTable/LegendTable.mjs +60 -58
- package/lib/esm/component/Cigarette/Cigarette.mjs +109 -99
- package/lib/esm/component/StackGroupBar/StackGroupBar.mjs +97 -111
- package/lib/esm/component/SvgElement.mjs +4 -4
- package/lib/esm/createElement.mjs +54 -37
- package/lib/esm/style/axis.shadow.css +3 -0
- package/lib/esm/style/plot.shadow.css +1 -3
- package/lib/esm/style/plotA11yModule.shadow.css +10 -11
- package/lib/esm/style/plotA11yView.shadow.css +13 -26
- package/lib/esm/translations/__intergalactic-dynamic-locales.mjs +1 -1
- package/lib/esm/utils.mjs +103 -138
- package/lib/types/Axis.d.ts +4 -0
- package/lib/types/CompactHorizontalBar.d.ts +1 -1
- package/lib/types/Hover.d.ts +1 -1
- package/lib/types/Line.d.ts +1 -1
- package/lib/types/Plot.d.ts +1 -1
- package/lib/types/Radar.d.ts +1 -1
- package/lib/types/ResponsiveContainer.d.ts +1 -1
- package/lib/types/Tooltip.d.ts +1 -3
- package/lib/types/Venn.d.ts +1 -1
- package/lib/types/a11y/PlotA11yModule.d.ts +4 -11
- package/lib/types/a11y/PlotA11yView.d.ts +12 -1
- package/lib/types/a11y/translations/module/__intergalactic-dynamic-locales.d.ts +14 -14
- package/lib/types/component/Chart/AbstractChart.d.ts +1 -1
- package/lib/types/component/Chart/AbstractChart.type.d.ts +1 -1
- package/lib/types/component/Chart/AreaChart.type.d.ts +1 -1
- package/lib/types/component/Chart/BarChart.type.d.ts +1 -1
- package/lib/types/component/Chart/BubbleChart.type.d.ts +1 -1
- package/lib/types/component/Chart/CompactHorizontalBarChart.type.d.ts +1 -1
- package/lib/types/component/Chart/DonutChart.type.d.ts +1 -1
- package/lib/types/component/Chart/HistogramChart.type.d.ts +1 -1
- package/lib/types/component/Chart/LineChart.type.d.ts +1 -1
- package/lib/types/component/Chart/RadarChart.type.d.ts +1 -1
- package/lib/types/component/Chart/ScatterPlotChart.type.d.ts +1 -1
- package/lib/types/component/Chart/VennChart.type.d.ts +1 -1
- package/lib/types/component/ChartLegend/BaseLegend.d.ts +1 -1
- package/lib/types/component/ChartLegend/BaseLegend.type.d.ts +1 -1
- package/lib/types/component/ChartLegend/LegendFlex/LegendFlex.type.d.ts +1 -1
- package/lib/types/component/ChartLegend/LegendItem/LegendItem.type.d.ts +1 -1
- package/lib/types/component/ChartLegend/LegendTable/LegendTable.type.d.ts +1 -1
- package/lib/types/utils.d.ts +10 -10
- package/package.json +11 -14
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
2
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
3
1
|
import { sstyled as _sstyled } from "@semcore/core";
|
|
4
2
|
import { assignProps as _assignProps } from "@semcore/core";
|
|
3
|
+
import { Box } from '@semcore/base-components';
|
|
5
4
|
import { Root, sstyled } from '@semcore/core';
|
|
6
5
|
import { useAsyncI18nMessages } from '@semcore/core/lib/utils/enhances/i18nEnhance';
|
|
7
|
-
import { Box } from '@semcore/flex-box';
|
|
8
6
|
import React from 'react';
|
|
9
7
|
import { DataAccessibilityTable } from './DataAccessibilityTable';
|
|
10
8
|
import { heavyFindNextFocusableElement } from './focus';
|
|
@@ -12,42 +10,47 @@ import { makeDataSummarizationConfig } from './hints';
|
|
|
12
10
|
import { getIntl } from './intl';
|
|
13
11
|
import { summarize } from './summarize';
|
|
14
12
|
/*!__reshadow-styles__:"../style/plotA11yView.shadow.css"*/
|
|
15
|
-
|
|
13
|
+
const styles = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SPlotA11yView_9ugu2_gg_{position:relative;display:block;background-color:var(--intergalactic-bg-primary-neutral, #ffffff);color:var(--intergalactic-text-primary, #191b23);border:3px solid var(--intergalactic-border-primary, #c4c7cf);font-size:var(--intergalactic-fs-50, 10px);z-index:var(--intergalactic-z-index-overlay, 500);padding:2px;width:200px;height:200px;max-width:80%;max-height:80%;overflow:auto}.___SPlotA11yView_9ugu2_gg_ a{cursor:pointer;-webkit-text-decoration:underline;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_9ugu2_gg_ table,.___SPlotA11yView_9ugu2_gg_ td,.___SPlotA11yView_9ugu2_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}", /*__inner_css_end__*/"9ugu2_gg_"),
|
|
16
14
|
/*__reshadow_css_end__*/
|
|
17
15
|
{
|
|
18
|
-
"__SPlotA11yView": "
|
|
16
|
+
"__SPlotA11yView": "___SPlotA11yView_9ugu2_gg_"
|
|
19
17
|
});
|
|
20
18
|
import { localizedMessages } from './translations/view/__intergalactic-dynamic-locales';
|
|
21
|
-
export
|
|
19
|
+
export const PlotA11yView = ({
|
|
20
|
+
id,
|
|
21
|
+
payload: providedData,
|
|
22
|
+
hints,
|
|
23
|
+
plotLabel,
|
|
24
|
+
triggerRef,
|
|
25
|
+
plotRef,
|
|
26
|
+
config: providedConfig,
|
|
27
|
+
locale,
|
|
28
|
+
onCloseHandler
|
|
29
|
+
}) => {
|
|
22
30
|
var _ref = arguments[0],
|
|
23
31
|
_ref2;
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
var _React$useState3 = React.useState(true),
|
|
47
|
-
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
48
|
-
generatingSummary = _React$useState4[0],
|
|
49
|
-
setGeneratingSummary = _React$useState4[1];
|
|
50
|
-
React.useEffect(function () {
|
|
32
|
+
const SPlotA11yView = Box;
|
|
33
|
+
const translations = useAsyncI18nMessages(localizedMessages, locale);
|
|
34
|
+
const intl = React.useMemo(() => getIntl(locale, translations, localizedMessages), [locale, translations, localizedMessages]);
|
|
35
|
+
const config = React.useMemo(() => makeDataSummarizationConfig(providedConfig), [providedConfig]);
|
|
36
|
+
const data = React.useMemo(() => Array.isArray(providedData) ? providedData : [providedData], [providedData]);
|
|
37
|
+
const rootRef = React.useRef(null);
|
|
38
|
+
const [summary, setSummary] = React.useState(null);
|
|
39
|
+
const [generatingSummary, setGeneratingSummary] = React.useState(true);
|
|
40
|
+
React.useEffect(() => {
|
|
41
|
+
rootRef.current?.focus();
|
|
42
|
+
function focusOutHandler(event) {
|
|
43
|
+
if (event.relatedTarget === null) {
|
|
44
|
+
return requestIdleCallback(onCloseHandler);
|
|
45
|
+
}
|
|
46
|
+
if (!(event.relatedTarget instanceof HTMLElement)) return;
|
|
47
|
+
if (rootRef.current?.contains(event.relatedTarget)) return;
|
|
48
|
+
requestIdleCallback(onCloseHandler);
|
|
49
|
+
}
|
|
50
|
+
rootRef.current?.addEventListener('focusout', focusOutHandler);
|
|
51
|
+
return () => rootRef.current?.removeEventListener('focusout', focusOutHandler);
|
|
52
|
+
}, []);
|
|
53
|
+
React.useEffect(() => {
|
|
51
54
|
if (config.disable) {
|
|
52
55
|
setSummary('');
|
|
53
56
|
setGeneratingSummary(false);
|
|
@@ -58,70 +61,72 @@ export var PlotA11yView = function PlotA11yView(_ref3) {
|
|
|
58
61
|
setGeneratingSummary(false);
|
|
59
62
|
return;
|
|
60
63
|
}
|
|
61
|
-
setTimeout(
|
|
64
|
+
setTimeout(() => {
|
|
62
65
|
setSummary(summarize(providedData, hints, config, locale, translations, localizedMessages));
|
|
63
66
|
setGeneratingSummary(false);
|
|
64
67
|
}, 0);
|
|
65
68
|
}, [providedData, hints, config, locale, translations, localizedMessages]);
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
(
|
|
69
|
+
const handleClose = React.useCallback(() => {
|
|
70
|
+
onCloseHandler();
|
|
71
|
+
requestIdleCallback(() => {
|
|
72
|
+
triggerRef.current?.focus();
|
|
73
|
+
});
|
|
69
74
|
}, []);
|
|
70
|
-
|
|
71
|
-
var _heavyFindNextFocusab;
|
|
75
|
+
const handleSkip = React.useCallback(event => {
|
|
72
76
|
event.preventDefault();
|
|
73
77
|
if (!plotRef.current) return;
|
|
74
|
-
|
|
78
|
+
heavyFindNextFocusableElement(plotRef.current)?.focus();
|
|
79
|
+
onCloseHandler();
|
|
75
80
|
}, []);
|
|
76
|
-
|
|
81
|
+
const handleSkipKeyboard = React.useCallback(event => {
|
|
77
82
|
if (!(event.key === 'Enter' || event.key === ' ')) return;
|
|
78
83
|
handleSkip(event);
|
|
79
84
|
}, [handleSkip]);
|
|
80
|
-
|
|
81
|
-
var _dataTableRef$current;
|
|
85
|
+
const handleGoToTable = React.useCallback(event => {
|
|
82
86
|
event.preventDefault();
|
|
83
|
-
|
|
87
|
+
dataTableRef.current?.focus();
|
|
84
88
|
}, []);
|
|
85
|
-
|
|
89
|
+
const handleGoToTableKeyboard = React.useCallback(event => {
|
|
86
90
|
if (!(event.key === 'Enter' || event.key === ' ')) return;
|
|
87
91
|
handleGoToTable(event);
|
|
88
92
|
}, [handleGoToTable]);
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
id: 'view-default-plot-label'
|
|
96
|
-
})
|
|
97
|
-
}),
|
|
98
|
-
close: intl.formatMessage({
|
|
99
|
-
id: 'view-close'
|
|
100
|
-
}),
|
|
101
|
-
skipPlot: intl.formatMessage({
|
|
102
|
-
id: 'view-skip-plot'
|
|
103
|
-
}),
|
|
104
|
-
goToTable: intl.formatMessage({
|
|
105
|
-
id: 'view-go-to-table'
|
|
106
|
-
}),
|
|
107
|
-
summary: intl.formatMessage({
|
|
108
|
-
id: 'view-data-summary'
|
|
109
|
-
}),
|
|
110
|
-
summaryPlaceholder: intl.formatMessage({
|
|
111
|
-
id: 'view-summary-placeholder'
|
|
112
|
-
}),
|
|
113
|
-
table: intl.formatMessage({
|
|
114
|
-
id: 'view-table'
|
|
93
|
+
const texts = React.useMemo(() => ({
|
|
94
|
+
label: intl.formatMessage({
|
|
95
|
+
id: 'view-label'
|
|
96
|
+
}, {
|
|
97
|
+
plotLabel: plotLabel ?? intl.formatMessage({
|
|
98
|
+
id: 'view-default-plot-label'
|
|
115
99
|
})
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
100
|
+
}),
|
|
101
|
+
close: intl.formatMessage({
|
|
102
|
+
id: 'view-close'
|
|
103
|
+
}),
|
|
104
|
+
skipPlot: intl.formatMessage({
|
|
105
|
+
id: 'view-skip-plot'
|
|
106
|
+
}),
|
|
107
|
+
goToTable: intl.formatMessage({
|
|
108
|
+
id: 'view-go-to-table'
|
|
109
|
+
}),
|
|
110
|
+
summary: intl.formatMessage({
|
|
111
|
+
id: 'view-data-summary'
|
|
112
|
+
}),
|
|
113
|
+
summaryPlaceholder: intl.formatMessage({
|
|
114
|
+
id: 'view-summary-placeholder'
|
|
115
|
+
}),
|
|
116
|
+
table: intl.formatMessage({
|
|
117
|
+
id: 'view-table'
|
|
118
|
+
})
|
|
119
|
+
}), [intl, plotLabel]);
|
|
120
|
+
const dataTableRef = React.useRef(null);
|
|
121
|
+
return _ref2 = sstyled(styles), /*#__PURE__*/React.createElement(SPlotA11yView, _ref2.cn("SPlotA11yView", {
|
|
122
|
+
..._assignProps({
|
|
123
|
+
"tabIndex": 0,
|
|
124
|
+
"aria-label": texts.label,
|
|
125
|
+
"role": 'dialog',
|
|
126
|
+
"__excludeProps": ['data'],
|
|
127
|
+
"ref": rootRef
|
|
128
|
+
}, _ref)
|
|
129
|
+
}), /*#__PURE__*/React.createElement("button", _ref2.cn("button", {
|
|
125
130
|
"type": 'button',
|
|
126
131
|
"onClick": handleClose
|
|
127
132
|
}), texts.close), /*#__PURE__*/React.createElement("a", _ref2.cn("a", {
|
|
@@ -129,16 +134,16 @@ export var PlotA11yView = function PlotA11yView(_ref3) {
|
|
|
129
134
|
"onKeyDown": handleSkipKeyboard,
|
|
130
135
|
"onClick": handleSkip
|
|
131
136
|
}), texts.skipPlot), /*#__PURE__*/React.createElement("a", _ref2.cn("a", {
|
|
132
|
-
"href":
|
|
137
|
+
"href": `#${id}-data-table`,
|
|
133
138
|
"onKeyDown": handleGoToTableKeyboard,
|
|
134
139
|
"onClick": handleGoToTable
|
|
135
140
|
}), texts.goToTable), /*#__PURE__*/React.createElement("strong", _ref2.cn("strong", {}), /*#__PURE__*/React.createElement("label", _ref2.cn("label", {
|
|
136
|
-
"htmlFor":
|
|
141
|
+
"htmlFor": `${id}-data-summary`
|
|
137
142
|
}), texts.summary)), /*#__PURE__*/React.createElement("div", _ref2.cn("div", {
|
|
138
|
-
"id":
|
|
143
|
+
"id": `${id}-data-summary`,
|
|
139
144
|
"aria-busy": generatingSummary
|
|
140
145
|
}), generatingSummary ? texts.summaryPlaceholder : summary), /*#__PURE__*/React.createElement("strong", _ref2.cn("strong", {}), /*#__PURE__*/React.createElement("label", _ref2.cn("label", {
|
|
141
|
-
"htmlFor":
|
|
146
|
+
"htmlFor": `${id}-data-table`
|
|
142
147
|
}), texts.table)), /*#__PURE__*/React.createElement(DataAccessibilityTable, _ref2.cn("DataAccessibilityTable", {
|
|
143
148
|
"id": id,
|
|
144
149
|
"dataTableRef": dataTableRef,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlotA11yView.js","names":["Root","sstyled","useAsyncI18nMessages","Box","React","DataAccessibilityTable","heavyFindNextFocusableElement","makeDataSummarizationConfig","getIntl","summarize","styles","_sstyled","insert","localizedMessages","PlotA11yView","_ref3","_ref","arguments[0]","_ref2","id","providedData","data","hints","plotLabel","plotRef","providedConfig","config","locale","SPlotA11yView","translations","intl","useMemo","Array","isArray","_React$useState","useState","_React$useState2","_slicedToArray","summary","setSummary","_React$useState3","_React$useState4","generatingSummary","setGeneratingSummary","useEffect","disable","override","setTimeout","handleClose","useCallback","_plotRef$current","current","focus","handleSkip","event","_heavyFindNextFocusab","preventDefault","handleSkipKeyboard","key","handleGoToTable","_dataTableRef$current","dataTableRef","handleGoToTableKeyboard","texts","label","formatMessage","close","skipPlot","goToTable","summaryPlaceholder","table","useRef","createElement","cn","_objectSpread","_assignProps","concat"],"sources":["../../../src/a11y/PlotA11yView.tsx"],"sourcesContent":["import { Root, sstyled } from '@semcore/core';\nimport { useAsyncI18nMessages } from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport { Box } from '@semcore/flex-box';\nimport React from 'react';\n\nimport { DataAccessibilityTable } from './DataAccessibilityTable';\nimport { heavyFindNextFocusableElement } from './focus';\nimport { makeDataSummarizationConfig } from './hints';\nimport { getIntl } from './intl';\nimport type { A11yViewProps } from './PlotA11yModule';\nimport { summarize } from './summarize';\nimport styles from '../style/plotA11yView.shadow.css';\nimport { localizedMessages } from './translations/view/__intergalactic-dynamic-locales';\n\nexport const PlotA11yView: React.FC<A11yViewProps> = ({\n id,\n data: providedData,\n hints,\n plotLabel,\n plotRef,\n config: providedConfig,\n locale,\n}) => {\n const SPlotA11yView = Root;\n const translations = useAsyncI18nMessages(localizedMessages, locale);\n const intl = React.useMemo(\n () => getIntl(locale, translations, localizedMessages),\n [locale, translations, localizedMessages],\n );\n const config = React.useMemo(() => makeDataSummarizationConfig(providedConfig), [providedConfig]);\n const data = React.useMemo(\n () => (Array.isArray(providedData) ? providedData : [providedData]),\n [providedData],\n );\n\n const [summary, setSummary] = React.useState<string | null>(null);\n const [generatingSummary, setGeneratingSummary] = React.useState(true);\n\n React.useEffect(() => {\n if (config.disable) {\n setSummary('');\n setGeneratingSummary(false);\n return;\n }\n if (config.override) {\n setSummary(config.override);\n setGeneratingSummary(false);\n return;\n }\n setTimeout(() => {\n setSummary(summarize(providedData, hints, config, locale, translations, localizedMessages));\n setGeneratingSummary(false);\n }, 0);\n }, [providedData, hints, config, locale, translations, localizedMessages]);\n\n const handleClose = React.useCallback(() => {\n plotRef.current?.focus();\n }, []);\n const handleSkip = React.useCallback((event: React.SyntheticEvent) => {\n event.preventDefault();\n if (!plotRef.current) return;\n\n heavyFindNextFocusableElement(plotRef.current)?.focus();\n }, []);\n const handleSkipKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (!(event.key === 'Enter' || event.key === ' ')) return;\n\n handleSkip(event);\n },\n [handleSkip],\n );\n const handleGoToTable = React.useCallback((event: React.SyntheticEvent) => {\n event.preventDefault();\n dataTableRef.current?.focus();\n }, []);\n const handleGoToTableKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (!(event.key === 'Enter' || event.key === ' ')) return;\n\n handleGoToTable(event);\n },\n [handleGoToTable],\n );\n\n const texts = React.useMemo(\n () => ({\n label: intl.formatMessage(\n { id: 'view-label' },\n { plotLabel: plotLabel ?? intl.formatMessage({ id: 'view-default-plot-label' }) },\n ),\n close: intl.formatMessage({ id: 'view-close' }),\n skipPlot: intl.formatMessage({ id: 'view-skip-plot' }),\n goToTable: intl.formatMessage({ id: 'view-go-to-table' }),\n summary: intl.formatMessage({ id: 'view-data-summary' }),\n summaryPlaceholder: intl.formatMessage({ id: 'view-summary-placeholder' }),\n table: intl.formatMessage({ id: 'view-table' }),\n }),\n [intl, plotLabel],\n );\n\n const dataTableRef = React.useRef<HTMLTableElement>(null);\n\n return sstyled(styles)(\n <SPlotA11yView\n render={Box}\n tabIndex={0}\n aria-label={texts.label}\n role='dialog'\n __excludeProps={['data']}\n >\n <button type='button' onClick={handleClose}>\n {texts.close}\n </button>\n <a href='#' onKeyDown={handleSkipKeyboard} onClick={handleSkip}>\n {texts.skipPlot}\n </a>\n <a href={`#${id}-data-table`} onKeyDown={handleGoToTableKeyboard} onClick={handleGoToTable}>\n {texts.goToTable}\n </a>\n <strong>\n <label htmlFor={`${id}-data-summary`}>{texts.summary}</label>\n </strong>\n <div id={`${id}-data-summary`} aria-busy={generatingSummary}>\n {generatingSummary ? texts.summaryPlaceholder : summary}\n </div>\n <strong>\n <label htmlFor={`${id}-data-table`}>{texts.table}</label>\n </strong>\n <DataAccessibilityTable\n id={id}\n dataTableRef={dataTableRef}\n data={data}\n hints={hints}\n config={config}\n intl={intl}\n />\n </SPlotA11yView>,\n ) as React.ReactElement;\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"PlotA11yView.js","names":["Box","Root","sstyled","useAsyncI18nMessages","React","DataAccessibilityTable","heavyFindNextFocusableElement","makeDataSummarizationConfig","getIntl","summarize","styles","_sstyled","insert","localizedMessages","PlotA11yView","id","payload","providedData","hints","plotLabel","triggerRef","plotRef","config","providedConfig","locale","onCloseHandler","_ref","arguments[0]","_ref2","SPlotA11yView","translations","intl","useMemo","data","Array","isArray","rootRef","useRef","summary","setSummary","useState","generatingSummary","setGeneratingSummary","useEffect","current","focus","focusOutHandler","event","relatedTarget","requestIdleCallback","HTMLElement","contains","addEventListener","removeEventListener","disable","override","setTimeout","handleClose","useCallback","handleSkip","preventDefault","handleSkipKeyboard","key","handleGoToTable","dataTableRef","handleGoToTableKeyboard","texts","label","formatMessage","close","skipPlot","goToTable","summaryPlaceholder","table","createElement","cn","_assignProps"],"sources":["../../../src/a11y/PlotA11yView.tsx"],"sourcesContent":["import { Box } from '@semcore/base-components';\nimport { Root, sstyled } from '@semcore/core';\nimport { useAsyncI18nMessages } from '@semcore/core/lib/utils/enhances/i18nEnhance';\nimport React from 'react';\n\nimport { DataAccessibilityTable } from './DataAccessibilityTable';\nimport { heavyFindNextFocusableElement } from './focus';\nimport { makeDataSummarizationConfig } from './hints';\nimport type { DataStructureHints, PartialDataSummarizationConfig } from './hints';\nimport { getIntl } from './intl';\nimport { summarize } from './summarize';\nimport styles from '../style/plotA11yView.shadow.css';\nimport { localizedMessages } from './translations/view/__intergalactic-dynamic-locales';\n\nexport type A11yViewProps = {\n id: string;\n payload: Record<string, unknown>[];\n hints: DataStructureHints;\n plotLabel: string;\n locale: NavigatorLanguage['language'];\n config: PartialDataSummarizationConfig;\n\n plotRef: React.RefObject<HTMLElement>;\n triggerRef: React.RefObject<HTMLElement>;\n onCloseHandler: () => void;\n};\n\nexport const PlotA11yView: React.FC<A11yViewProps> = ({\n id,\n payload: providedData,\n hints,\n plotLabel,\n triggerRef,\n plotRef,\n config: providedConfig,\n locale,\n onCloseHandler,\n}) => {\n const SPlotA11yView = Root;\n const translations = useAsyncI18nMessages(localizedMessages, locale);\n const intl = React.useMemo(\n () => getIntl(locale, translations, localizedMessages),\n [locale, translations, localizedMessages],\n );\n const config = React.useMemo(() => makeDataSummarizationConfig(providedConfig), [providedConfig]);\n const data = React.useMemo(\n () => (Array.isArray(providedData) ? providedData : [providedData]),\n [providedData],\n );\n const rootRef = React.useRef<HTMLDivElement>(null);\n\n const [summary, setSummary] = React.useState<string | null>(null);\n const [generatingSummary, setGeneratingSummary] = React.useState(true);\n\n React.useEffect(() => {\n rootRef.current?.focus();\n\n function focusOutHandler(event: FocusEvent) {\n if (event.relatedTarget === null) {\n return requestIdleCallback(onCloseHandler);\n }\n\n if (!(event.relatedTarget instanceof HTMLElement)) return;\n\n if (rootRef.current?.contains(event.relatedTarget)) return;\n\n requestIdleCallback(onCloseHandler);\n }\n\n rootRef.current?.addEventListener('focusout', focusOutHandler);\n return () => rootRef.current?.removeEventListener('focusout', focusOutHandler);\n }, []);\n\n React.useEffect(() => {\n if (config.disable) {\n setSummary('');\n setGeneratingSummary(false);\n return;\n }\n if (config.override) {\n setSummary(config.override);\n setGeneratingSummary(false);\n return;\n }\n setTimeout(() => {\n setSummary(summarize(providedData, hints, config, locale, translations, localizedMessages));\n setGeneratingSummary(false);\n }, 0);\n }, [providedData, hints, config, locale, translations, localizedMessages]);\n\n const handleClose = React.useCallback(() => {\n onCloseHandler();\n\n requestIdleCallback(() => {\n triggerRef.current?.focus();\n });\n }, []);\n const handleSkip = React.useCallback((event: React.SyntheticEvent) => {\n event.preventDefault();\n if (!plotRef.current) return;\n\n heavyFindNextFocusableElement(plotRef.current)?.focus();\n\n onCloseHandler();\n }, []);\n const handleSkipKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (!(event.key === 'Enter' || event.key === ' ')) return;\n\n handleSkip(event);\n },\n [handleSkip],\n );\n const handleGoToTable = React.useCallback((event: React.SyntheticEvent) => {\n event.preventDefault();\n dataTableRef.current?.focus();\n }, []);\n const handleGoToTableKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (!(event.key === 'Enter' || event.key === ' ')) return;\n\n handleGoToTable(event);\n },\n [handleGoToTable],\n );\n\n const texts = React.useMemo(\n () => ({\n label: intl.formatMessage(\n { id: 'view-label' },\n { plotLabel: plotLabel ?? intl.formatMessage({ id: 'view-default-plot-label' }) },\n ),\n close: intl.formatMessage({ id: 'view-close' }),\n skipPlot: intl.formatMessage({ id: 'view-skip-plot' }),\n goToTable: intl.formatMessage({ id: 'view-go-to-table' }),\n summary: intl.formatMessage({ id: 'view-data-summary' }),\n summaryPlaceholder: intl.formatMessage({ id: 'view-summary-placeholder' }),\n table: intl.formatMessage({ id: 'view-table' }),\n }),\n [intl, plotLabel],\n );\n\n const dataTableRef = React.useRef<HTMLTableElement>(null);\n\n return sstyled(styles)(\n <SPlotA11yView\n render={Box}\n tabIndex={0}\n aria-label={texts.label}\n role='dialog'\n __excludeProps={['data']}\n ref={rootRef}\n >\n <button type='button' onClick={handleClose}>\n {texts.close}\n </button>\n <a href='#' onKeyDown={handleSkipKeyboard} onClick={handleSkip}>\n {texts.skipPlot}\n </a>\n <a href={`#${id}-data-table`} onKeyDown={handleGoToTableKeyboard} onClick={handleGoToTable}>\n {texts.goToTable}\n </a>\n <strong>\n <label htmlFor={`${id}-data-summary`}>{texts.summary}</label>\n </strong>\n <div id={`${id}-data-summary`} aria-busy={generatingSummary}>\n {generatingSummary ? texts.summaryPlaceholder : summary}\n </div>\n <strong>\n <label htmlFor={`${id}-data-table`}>{texts.table}</label>\n </strong>\n <DataAccessibilityTable\n id={id}\n dataTableRef={dataTableRef}\n data={data}\n hints={hints}\n config={config}\n intl={intl}\n />\n </SPlotA11yView>,\n ) as React.ReactElement;\n};\n"],"mappings":"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","ignoreList":[]}
|
package/lib/es6/a11y/bezier.js
CHANGED
|
@@ -1,29 +1,22 @@
|
|
|
1
|
-
export
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
var tPower = i;
|
|
16
|
-
var reversedTPower = points.length - 1 - i;
|
|
17
|
-
var edge = i === 0 || i === points.length - 1;
|
|
18
|
-
var factor = edge ? 1 : points.length - 1;
|
|
19
|
-
var point = points[i];
|
|
20
|
-
var weight = weightPoints[i];
|
|
21
|
-
result += factor * Math.pow(t, tPower) * Math.pow(1 - t, reversedTPower) * point * weight;
|
|
1
|
+
export const makeBezier = (points, bounds) => {
|
|
2
|
+
const yPoints = points.map(point => point.y);
|
|
3
|
+
const noPoints = points.map(() => 1);
|
|
4
|
+
const weightPoints = points.map(point => point.weight ?? 1);
|
|
5
|
+
const process = (t, points) => {
|
|
6
|
+
let result = 0;
|
|
7
|
+
for (let i = 0; i < points.length; i++) {
|
|
8
|
+
const tPower = i;
|
|
9
|
+
const reversedTPower = points.length - 1 - i;
|
|
10
|
+
const edge = i === 0 || i === points.length - 1;
|
|
11
|
+
const factor = edge ? 1 : points.length - 1;
|
|
12
|
+
const point = points[i];
|
|
13
|
+
const weight = weightPoints[i];
|
|
14
|
+
result += factor * t ** tPower * (1 - t) ** reversedTPower * point * weight;
|
|
22
15
|
}
|
|
23
16
|
return result;
|
|
24
17
|
};
|
|
25
|
-
return
|
|
26
|
-
|
|
18
|
+
return x => {
|
|
19
|
+
const t = x / bounds.width;
|
|
27
20
|
return process(t, yPoints) / process(t, noPoints);
|
|
28
21
|
};
|
|
29
22
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bezier.js","names":["makeBezier","points","bounds","yPoints","map","point","y","noPoints","weightPoints","
|
|
1
|
+
{"version":3,"file":"bezier.js","names":["makeBezier","points","bounds","yPoints","map","point","y","noPoints","weightPoints","weight","process","t","result","i","length","tPower","reversedTPower","edge","factor","x","width"],"sources":["../../../src/a11y/bezier.ts"],"sourcesContent":["export const makeBezier = (\n points: { x: number; y: number; weight?: number }[],\n bounds: { width: number; height: number },\n) => {\n const yPoints = points.map((point) => point.y);\n const noPoints = points.map(() => 1);\n const weightPoints = points.map((point) => point.weight ?? 1);\n const process = (t: number, points: number[]) => {\n let result = 0;\n for (let i = 0; i < points.length; i++) {\n const tPower = i;\n const reversedTPower = points.length - 1 - i;\n const edge = i === 0 || i === points.length - 1;\n const factor = edge ? 1 : points.length - 1;\n const point = points[i];\n const weight = weightPoints[i];\n result += factor * t ** tPower * (1 - t) ** reversedTPower * point * weight;\n }\n return result;\n };\n\n return (x: number) => {\n const t = x / bounds.width;\n return process(t, yPoints) / process(t, noPoints);\n };\n};\n"],"mappings":"AAAA,OAAO,MAAMA,UAAU,GAAGA,CACxBC,MAAmD,EACnDC,MAAyC,KACtC;EACH,MAAMC,OAAO,GAAGF,MAAM,CAACG,GAAG,CAAEC,KAAK,IAAKA,KAAK,CAACC,CAAC,CAAC;EAC9C,MAAMC,QAAQ,GAAGN,MAAM,CAACG,GAAG,CAAC,MAAM,CAAC,CAAC;EACpC,MAAMI,YAAY,GAAGP,MAAM,CAACG,GAAG,CAAEC,KAAK,IAAKA,KAAK,CAACI,MAAM,IAAI,CAAC,CAAC;EAC7D,MAAMC,OAAO,GAAGA,CAACC,CAAS,EAAEV,MAAgB,KAAK;IAC/C,IAAIW,MAAM,GAAG,CAAC;IACd,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGZ,MAAM,CAACa,MAAM,EAAED,CAAC,EAAE,EAAE;MACtC,MAAME,MAAM,GAAGF,CAAC;MAChB,MAAMG,cAAc,GAAGf,MAAM,CAACa,MAAM,GAAG,CAAC,GAAGD,CAAC;MAC5C,MAAMI,IAAI,GAAGJ,CAAC,KAAK,CAAC,IAAIA,CAAC,KAAKZ,MAAM,CAACa,MAAM,GAAG,CAAC;MAC/C,MAAMI,MAAM,GAAGD,IAAI,GAAG,CAAC,GAAGhB,MAAM,CAACa,MAAM,GAAG,CAAC;MAC3C,MAAMT,KAAK,GAAGJ,MAAM,CAACY,CAAC,CAAC;MACvB,MAAMJ,MAAM,GAAGD,YAAY,CAACK,CAAC,CAAC;MAC9BD,MAAM,IAAIM,MAAM,GAAGP,CAAC,IAAII,MAAM,GAAG,CAAC,CAAC,GAAGJ,CAAC,KAAKK,cAAc,GAAGX,KAAK,GAAGI,MAAM;IAC7E;IACA,OAAOG,MAAM;EACf,CAAC;EAED,OAAQO,CAAS,IAAK;IACpB,MAAMR,CAAC,GAAGQ,CAAC,GAAGjB,MAAM,CAACkB,KAAK;IAC1B,OAAOV,OAAO,CAACC,CAAC,EAAER,OAAO,CAAC,GAAGO,OAAO,CAACC,CAAC,EAAEJ,QAAQ,CAAC;EACnD,CAAC;AACH,CAAC","ignoreList":[]}
|
package/lib/es6/a11y/focus.js
CHANGED
|
@@ -1,39 +1,38 @@
|
|
|
1
1
|
import { isFocusable } from '@semcore/core/lib/utils/focus-lock/isFocusable';
|
|
2
|
-
|
|
2
|
+
const findNextFocusableElementInChildren = element => {
|
|
3
3
|
if (element && isFocusable(element)) {
|
|
4
4
|
return element;
|
|
5
5
|
}
|
|
6
|
-
|
|
6
|
+
const children = element?.children;
|
|
7
7
|
if (children) {
|
|
8
|
-
for (
|
|
9
|
-
|
|
8
|
+
for (let i = 0; i < children.length; i++) {
|
|
9
|
+
const childChild = children.item(i);
|
|
10
10
|
if (!childChild) continue;
|
|
11
|
-
|
|
11
|
+
const result = findNextFocusableElementInChildren(childChild);
|
|
12
12
|
if (result) return result;
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
return null;
|
|
16
16
|
};
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
const makeParentsChain = element => {
|
|
18
|
+
const parents = [];
|
|
19
|
+
let parent = element.parentElement;
|
|
20
20
|
while (parent) {
|
|
21
21
|
parents.push(parent);
|
|
22
22
|
parent = parent.parentElement;
|
|
23
23
|
}
|
|
24
24
|
return parents;
|
|
25
25
|
};
|
|
26
|
-
export
|
|
27
|
-
|
|
28
|
-
for (
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
var siblings = Array.from((_parent$children = parent === null || parent === void 0 ? void 0 : parent.children) !== null && _parent$children !== void 0 ? _parent$children : []);
|
|
26
|
+
export const heavyFindNextFocusableElement = base => {
|
|
27
|
+
const parents = makeParentsChain(base);
|
|
28
|
+
for (let i = 0; i < parents.length; i++) {
|
|
29
|
+
const parent = parents[i];
|
|
30
|
+
let siblings = Array.from(parent?.children ?? []);
|
|
32
31
|
if (siblings.indexOf(parents[i - 1] || base) !== -1) {
|
|
33
32
|
siblings = siblings.slice(siblings.indexOf(parents[i - 1] || base) + 1);
|
|
34
33
|
}
|
|
35
|
-
for (
|
|
36
|
-
|
|
34
|
+
for (let i = 0; i < siblings.length; i++) {
|
|
35
|
+
const focusable = findNextFocusableElementInChildren(siblings[i]);
|
|
37
36
|
if (focusable) return focusable;
|
|
38
37
|
}
|
|
39
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus.js","names":["isFocusable","findNextFocusableElementInChildren","element","children","i","length","childChild","item","result","makeParentsChain","parents","parent","parentElement","push","heavyFindNextFocusableElement","base","
|
|
1
|
+
{"version":3,"file":"focus.js","names":["isFocusable","findNextFocusableElementInChildren","element","children","i","length","childChild","item","result","makeParentsChain","parents","parent","parentElement","push","heavyFindNextFocusableElement","base","siblings","Array","from","indexOf","slice","focusable"],"sources":["../../../src/a11y/focus.ts"],"sourcesContent":["import { isFocusable } from '@semcore/core/lib/utils/focus-lock/isFocusable';\n\ntype FocusableElement = Element & { focus: () => void };\n\nconst findNextFocusableElementInChildren = (element: Element | null): FocusableElement | null => {\n if (element && isFocusable(element)) {\n return element as FocusableElement;\n }\n\n const children = element?.children;\n\n if (children) {\n for (let i = 0; i < children.length; i++) {\n const childChild = children.item(i);\n if (!childChild) continue;\n const result = findNextFocusableElementInChildren(childChild);\n if (result) return result;\n }\n }\n\n return null;\n};\n\nconst makeParentsChain = (element: Element): Element[] => {\n const parents = [];\n let parent = element.parentElement;\n\n while (parent) {\n parents.push(parent);\n parent = parent.parentElement;\n }\n\n return parents;\n};\n\nexport const heavyFindNextFocusableElement = (base: Element): FocusableElement | null => {\n const parents = makeParentsChain(base);\n for (let i = 0; i < parents.length; i++) {\n const parent = parents[i];\n let siblings = Array.from(parent?.children ?? []);\n if (siblings.indexOf(parents[i - 1] || base) !== -1) {\n siblings = siblings.slice(siblings.indexOf(parents[i - 1] || base) + 1);\n }\n\n for (let i = 0; i < siblings.length; i++) {\n const focusable = findNextFocusableElementInChildren(siblings[i]);\n if (focusable) return focusable;\n }\n }\n\n return null;\n};\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,gDAAgD;AAI5E,MAAMC,kCAAkC,GAAIC,OAAuB,IAA8B;EAC/F,IAAIA,OAAO,IAAIF,WAAW,CAACE,OAAO,CAAC,EAAE;IACnC,OAAOA,OAAO;EAChB;EAEA,MAAMC,QAAQ,GAAGD,OAAO,EAAEC,QAAQ;EAElC,IAAIA,QAAQ,EAAE;IACZ,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,QAAQ,CAACE,MAAM,EAAED,CAAC,EAAE,EAAE;MACxC,MAAME,UAAU,GAAGH,QAAQ,CAACI,IAAI,CAACH,CAAC,CAAC;MACnC,IAAI,CAACE,UAAU,EAAE;MACjB,MAAME,MAAM,GAAGP,kCAAkC,CAACK,UAAU,CAAC;MAC7D,IAAIE,MAAM,EAAE,OAAOA,MAAM;IAC3B;EACF;EAEA,OAAO,IAAI;AACb,CAAC;AAED,MAAMC,gBAAgB,GAAIP,OAAgB,IAAgB;EACxD,MAAMQ,OAAO,GAAG,EAAE;EAClB,IAAIC,MAAM,GAAGT,OAAO,CAACU,aAAa;EAElC,OAAOD,MAAM,EAAE;IACbD,OAAO,CAACG,IAAI,CAACF,MAAM,CAAC;IACpBA,MAAM,GAAGA,MAAM,CAACC,aAAa;EAC/B;EAEA,OAAOF,OAAO;AAChB,CAAC;AAED,OAAO,MAAMI,6BAA6B,GAAIC,IAAa,IAA8B;EACvF,MAAML,OAAO,GAAGD,gBAAgB,CAACM,IAAI,CAAC;EACtC,KAAK,IAAIX,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGM,OAAO,CAACL,MAAM,EAAED,CAAC,EAAE,EAAE;IACvC,MAAMO,MAAM,GAAGD,OAAO,CAACN,CAAC,CAAC;IACzB,IAAIY,QAAQ,GAAGC,KAAK,CAACC,IAAI,CAACP,MAAM,EAAER,QAAQ,IAAI,EAAE,CAAC;IACjD,IAAIa,QAAQ,CAACG,OAAO,CAACT,OAAO,CAACN,CAAC,GAAG,CAAC,CAAC,IAAIW,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;MACnDC,QAAQ,GAAGA,QAAQ,CAACI,KAAK,CAACJ,QAAQ,CAACG,OAAO,CAACT,OAAO,CAACN,CAAC,GAAG,CAAC,CAAC,IAAIW,IAAI,CAAC,GAAG,CAAC,CAAC;IACzE;IAEA,KAAK,IAAIX,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGY,QAAQ,CAACX,MAAM,EAAED,CAAC,EAAE,EAAE;MACxC,MAAMiB,SAAS,GAAGpB,kCAAkC,CAACe,QAAQ,CAACZ,CAAC,CAAC,CAAC;MACjE,IAAIiB,SAAS,EAAE,OAAOA,SAAS;IACjC;EACF;EAEA,OAAO,IAAI;AACb,CAAC","ignoreList":[]}
|
package/lib/es6/a11y/hints.js
CHANGED
|
@@ -1,73 +1,68 @@
|
|
|
1
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
-
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
3
|
-
import _typeof from "@babel/runtime/helpers/typeof";
|
|
4
1
|
import reactToText from '@semcore/core/lib/utils/reactToText';
|
|
5
|
-
export
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
var handler = {
|
|
36
|
-
specifyDataRowFields: function specifyDataRowFields(x, y, value) {
|
|
2
|
+
export const makeDataHintsContainer = () => ({
|
|
3
|
+
fields: {
|
|
4
|
+
verticalAxes: new Set(),
|
|
5
|
+
horizontalAxes: new Set(),
|
|
6
|
+
valueAxes: new Set(),
|
|
7
|
+
values: new Set()
|
|
8
|
+
},
|
|
9
|
+
groups: new Set(),
|
|
10
|
+
axesTitle: {
|
|
11
|
+
vertical: null,
|
|
12
|
+
horizontal: null
|
|
13
|
+
},
|
|
14
|
+
titles: {
|
|
15
|
+
verticalAxes: {},
|
|
16
|
+
getVerticalAxesTitle: null,
|
|
17
|
+
horizontalAxes: {},
|
|
18
|
+
getHorizontalAxesTitle: null,
|
|
19
|
+
valuesAxes: {},
|
|
20
|
+
getValueAxesTitle: null
|
|
21
|
+
},
|
|
22
|
+
grid: {
|
|
23
|
+
verticalAxes: null,
|
|
24
|
+
horizontalAxes: null
|
|
25
|
+
},
|
|
26
|
+
dataType: null,
|
|
27
|
+
pointsDensity: null
|
|
28
|
+
});
|
|
29
|
+
export const makeDataHintsHandlers = mutableContainer => {
|
|
30
|
+
const handler = {
|
|
31
|
+
specifyDataRowFields: (x, y, value) => {
|
|
37
32
|
if (y) mutableContainer.fields.verticalAxes.add(y);
|
|
38
33
|
if (x) mutableContainer.fields.horizontalAxes.add(x);
|
|
39
34
|
if (value) mutableContainer.fields.valueAxes.add(value);
|
|
40
35
|
},
|
|
41
|
-
setupGrid:
|
|
36
|
+
setupGrid: (direction, size) => {
|
|
42
37
|
if (direction === 'horizontal') {
|
|
43
38
|
mutableContainer.grid.horizontalAxes = size;
|
|
44
39
|
} else if (direction === 'vertical') {
|
|
45
40
|
mutableContainer.grid.verticalAxes = size;
|
|
46
41
|
}
|
|
47
42
|
},
|
|
48
|
-
establishDataType:
|
|
43
|
+
establishDataType: dataType => {
|
|
49
44
|
mutableContainer.dataType = dataType;
|
|
50
45
|
},
|
|
51
|
-
describeValueEntity:
|
|
46
|
+
describeValueEntity: (dataKey, readableName) => {
|
|
52
47
|
mutableContainer.fields.values.add(dataKey);
|
|
53
48
|
handler.labelKey('value', dataKey, readableName);
|
|
54
49
|
},
|
|
55
|
-
describeGroupedValues:
|
|
50
|
+
describeGroupedValues: (groupKey, dataKey) => {
|
|
56
51
|
mutableContainer.groups.add(groupKey);
|
|
57
52
|
mutableContainer.fields.values.add(dataKey);
|
|
58
53
|
},
|
|
59
|
-
labelKey:
|
|
54
|
+
labelKey: (axes, dataKey, label) => {
|
|
60
55
|
if (axes === 'vertical') mutableContainer.titles.verticalAxes[dataKey] = label;
|
|
61
56
|
if (axes === 'horizontal') mutableContainer.titles.horizontalAxes[dataKey] = label;
|
|
62
57
|
if (axes === 'value') mutableContainer.titles.valuesAxes[dataKey] = label;
|
|
63
58
|
},
|
|
64
|
-
addKeyLabelGetter:
|
|
59
|
+
addKeyLabelGetter: (axes, getter) => {
|
|
65
60
|
if (axes === 'vertical') mutableContainer.titles.getVerticalAxesTitle = getter;
|
|
66
61
|
if (axes === 'horizontal') mutableContainer.titles.getHorizontalAxesTitle = getter;
|
|
67
62
|
if (axes === 'value') mutableContainer.titles.getValueAxesTitle = getter;
|
|
68
63
|
},
|
|
69
|
-
setTitle:
|
|
70
|
-
if (typeof title === 'number' || typeof title === 'bigint' ||
|
|
64
|
+
setTitle: (describedDataAxes, title) => {
|
|
65
|
+
if (typeof title === 'number' || typeof title === 'bigint' || typeof title === 'object' && title instanceof Date) {
|
|
71
66
|
title = String(title);
|
|
72
67
|
}
|
|
73
68
|
if (typeof title !== 'string') {
|
|
@@ -79,40 +74,39 @@ export var makeDataHintsHandlers = function makeDataHintsHandlers(mutableContain
|
|
|
79
74
|
mutableContainer.axesTitle.vertical = title;
|
|
80
75
|
}
|
|
81
76
|
},
|
|
82
|
-
setPointsDensity:
|
|
77
|
+
setPointsDensity: (horizontalAxes, verticalAxes) => {
|
|
83
78
|
mutableContainer.pointsDensity = {
|
|
84
|
-
verticalAxes
|
|
85
|
-
horizontalAxes
|
|
79
|
+
verticalAxes,
|
|
80
|
+
horizontalAxes
|
|
86
81
|
};
|
|
87
82
|
}
|
|
88
83
|
};
|
|
89
84
|
return handler;
|
|
90
85
|
};
|
|
91
|
-
export
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
};
|
|
86
|
+
export const makeDataSummarizationConfig = config => ({
|
|
87
|
+
clustersGridSize: undefined,
|
|
88
|
+
maxListSymbols: 100,
|
|
89
|
+
datesWithTime: undefined,
|
|
90
|
+
clustersLimit: 5,
|
|
91
|
+
valuesLimit: 5,
|
|
92
|
+
groupsLimit: 5,
|
|
93
|
+
dataType: undefined,
|
|
94
|
+
disable: false,
|
|
95
|
+
override: undefined,
|
|
96
|
+
...(config ?? {}),
|
|
97
|
+
trendTangens: {
|
|
98
|
+
static: 1 / 15,
|
|
99
|
+
weak: 1 / 10,
|
|
100
|
+
medium: 1 / 5,
|
|
101
|
+
strong: Number.POSITIVE_INFINITY,
|
|
102
|
+
...(config?.trendTangens ?? {})
|
|
103
|
+
},
|
|
104
|
+
movingAverage: {
|
|
105
|
+
longSize: undefined,
|
|
106
|
+
shortSize: undefined,
|
|
107
|
+
notableDiff: undefined,
|
|
108
|
+
...(config?.movingAverage ?? {})
|
|
109
|
+
},
|
|
110
|
+
additionalFields: [...(config?.additionalFields ?? [])]
|
|
111
|
+
});
|
|
118
112
|
//# sourceMappingURL=hints.js.map
|