@semcore/d3-chart 3.58.5 → 3.58.6
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 +6 -0
- package/lib/cjs/AnimatedClipPath.js +7 -7
- package/lib/cjs/Area.js +17 -17
- package/lib/cjs/Axis.js +21 -21
- package/lib/cjs/Bar.js +22 -22
- package/lib/cjs/Bubble.js +20 -20
- package/lib/cjs/CompactHorizontalBar.js +24 -24
- package/lib/cjs/Donut.js +18 -18
- package/lib/cjs/Dots.js +9 -9
- package/lib/cjs/GroupBar.js +5 -5
- package/lib/cjs/HorizontalBar.js +22 -22
- package/lib/cjs/Hover.js +11 -11
- package/lib/cjs/Line.js +15 -15
- package/lib/cjs/Pattern.js +3 -3
- package/lib/cjs/Plot.js +11 -11
- package/lib/cjs/Radar.js +28 -28
- package/lib/cjs/RadialTree.js +22 -22
- package/lib/cjs/Reference.js +19 -19
- package/lib/cjs/ResponsiveContainer.js +8 -8
- package/lib/cjs/ScatterPlot.js +17 -17
- package/lib/cjs/StackBar.js +8 -8
- package/lib/cjs/StackedArea.js +6 -6
- package/lib/cjs/Tooltip.js +17 -17
- package/lib/cjs/Venn.js +18 -18
- package/lib/cjs/a11y/DataAccessibilityTable.js +4 -4
- package/lib/cjs/a11y/PlotA11yModule.js +6 -6
- package/lib/cjs/a11y/PlotA11yView.js +4 -4
- package/lib/cjs/a11y/hints.js +3 -3
- package/lib/cjs/a11y/insights.js +5 -5
- package/lib/cjs/a11y/locale.js +1 -1
- package/lib/cjs/a11y/serialize.js +4 -4
- package/lib/cjs/component/Chart/AbstractChart.js +9 -9
- package/lib/cjs/component/Chart/AreaChart.js +8 -8
- package/lib/cjs/component/Chart/BarChart.js +10 -10
- package/lib/cjs/component/Chart/BubbleChart.js +5 -5
- package/lib/cjs/component/Chart/CigaretteChart.js +10 -10
- package/lib/cjs/component/Chart/CompactHorizontalBarChart.js +8 -8
- package/lib/cjs/component/Chart/DonutChart.js +5 -5
- package/lib/cjs/component/Chart/HistogramChart.js +9 -9
- package/lib/cjs/component/Chart/LineChart.js +8 -8
- package/lib/cjs/component/Chart/RadarChart.js +8 -8
- package/lib/cjs/component/Chart/ScatterPlotChart.js +7 -7
- package/lib/cjs/component/Chart/VennChart.js +5 -5
- package/lib/cjs/component/ChartLegend/BaseLegend.js +7 -7
- package/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +10 -10
- package/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +24 -24
- package/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +12 -12
- package/lib/cjs/component/Cigarette/Cigarette.js +6 -6
- package/lib/cjs/component/StackGroupBar/StackGroupBar.js +8 -8
- package/lib/cjs/createElement.js +3 -3
- package/lib/cjs/utils.js +5 -5
- package/lib/es6/{AnimatedClipPath.js → AnimatedClipPath.mjs} +8 -8
- package/lib/es6/AnimatedClipPath.mjs.map +1 -0
- package/lib/es6/{Area.js → Area.mjs} +18 -18
- package/lib/es6/Area.mjs.map +1 -0
- package/lib/es6/{Axis.js → Axis.mjs} +22 -22
- package/lib/es6/Axis.mjs.map +1 -0
- package/lib/es6/{Bar.js → Bar.mjs} +23 -23
- package/lib/es6/Bar.mjs.map +1 -0
- package/lib/es6/{Bubble.js → Bubble.mjs} +21 -21
- package/lib/es6/Bubble.mjs.map +1 -0
- package/lib/es6/{CompactHorizontalBar.js → CompactHorizontalBar.mjs} +25 -25
- package/lib/es6/CompactHorizontalBar.mjs.map +1 -0
- package/lib/es6/{Donut.js → Donut.mjs} +19 -19
- package/lib/es6/Donut.mjs.map +1 -0
- package/lib/es6/{Dots.js → Dots.mjs} +10 -10
- package/lib/es6/Dots.mjs.map +1 -0
- package/lib/es6/{GroupBar.js → GroupBar.mjs} +6 -6
- package/lib/es6/GroupBar.mjs.map +1 -0
- package/lib/es6/{HorizontalBar.js → HorizontalBar.mjs} +23 -23
- package/lib/es6/HorizontalBar.mjs.map +1 -0
- package/lib/es6/{Hover.js → Hover.mjs} +12 -12
- package/lib/es6/Hover.mjs.map +1 -0
- package/lib/es6/{Line.js → Line.mjs} +16 -16
- package/lib/es6/Line.mjs.map +1 -0
- package/lib/es6/{Pattern.js → Pattern.mjs} +4 -4
- package/lib/es6/Pattern.mjs.map +1 -0
- package/lib/es6/{Plot.js → Plot.mjs} +12 -12
- package/lib/es6/Plot.mjs.map +1 -0
- package/lib/es6/{Radar.js → Radar.mjs} +29 -29
- package/lib/es6/Radar.mjs.map +1 -0
- package/lib/es6/{RadialTree.js → RadialTree.mjs} +23 -23
- package/lib/es6/RadialTree.mjs.map +1 -0
- package/lib/es6/{Reference.js → Reference.mjs} +20 -20
- package/lib/es6/Reference.mjs.map +1 -0
- package/lib/es6/{ResponsiveContainer.js → ResponsiveContainer.mjs} +9 -9
- package/lib/es6/ResponsiveContainer.mjs.map +1 -0
- package/lib/es6/{ScatterPlot.js → ScatterPlot.mjs} +18 -18
- package/lib/es6/ScatterPlot.mjs.map +1 -0
- package/lib/es6/{StackBar.js → StackBar.mjs} +9 -9
- package/lib/es6/StackBar.mjs.map +1 -0
- package/lib/es6/{StackedArea.js → StackedArea.mjs} +7 -7
- package/lib/es6/StackedArea.mjs.map +1 -0
- package/lib/es6/{Tooltip.js → Tooltip.mjs} +18 -18
- package/lib/es6/Tooltip.mjs.map +1 -0
- package/lib/es6/{Venn.js → Venn.mjs} +19 -19
- package/lib/es6/Venn.mjs.map +1 -0
- package/lib/es6/a11y/{DataAccessibilityTable.js → DataAccessibilityTable.mjs} +5 -5
- package/lib/es6/a11y/DataAccessibilityTable.mjs.map +1 -0
- package/lib/es6/a11y/{PlotA11yModule.js → PlotA11yModule.mjs} +6 -6
- package/lib/es6/a11y/PlotA11yModule.mjs.map +1 -0
- package/lib/es6/a11y/{PlotA11yView.js → PlotA11yView.mjs} +5 -5
- package/lib/es6/a11y/PlotA11yView.mjs.map +1 -0
- package/lib/es6/a11y/{bezier.js → bezier.mjs} +1 -1
- package/lib/es6/a11y/bezier.mjs.map +1 -0
- package/lib/es6/a11y/{focus.js → focus.mjs} +1 -1
- package/lib/es6/a11y/focus.mjs.map +1 -0
- package/lib/es6/a11y/{hints.js → hints.mjs} +4 -4
- package/lib/es6/a11y/hints.mjs.map +1 -0
- package/lib/es6/a11y/{insights.js → insights.mjs} +6 -6
- package/lib/es6/a11y/insights.mjs.map +1 -0
- package/lib/es6/a11y/{intl.js → intl.mjs} +1 -1
- package/lib/es6/a11y/intl.mjs.map +1 -0
- package/lib/es6/a11y/{locale.js → locale.mjs} +2 -2
- package/lib/es6/a11y/locale.mjs.map +1 -0
- package/lib/es6/a11y/{serialize.js → serialize.mjs} +5 -5
- package/lib/es6/a11y/serialize.mjs.map +1 -0
- package/lib/es6/a11y/{summarize.js → summarize.mjs} +1 -1
- package/lib/es6/a11y/summarize.mjs.map +1 -0
- package/lib/es6/a11y/translations/{view/__intergalactic-dynamic-locales.js → module/__intergalactic-dynamic-locales.mjs} +1 -1
- package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.mjs.map +1 -0
- package/lib/es6/a11y/translations/{module/__intergalactic-dynamic-locales.js → view/__intergalactic-dynamic-locales.mjs} +1 -1
- package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.mjs.map +1 -0
- package/lib/es6/{color.js → color.mjs} +1 -1
- package/lib/es6/color.mjs.map +1 -0
- package/lib/es6/component/Chart/{AbstractChart.js → AbstractChart.mjs} +10 -10
- package/lib/es6/component/Chart/AbstractChart.mjs.map +1 -0
- package/lib/es6/component/Chart/AbstractChart.type.mjs +2 -0
- package/lib/es6/component/Chart/AbstractChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{AreaChart.js → AreaChart.mjs} +9 -9
- package/lib/es6/component/Chart/AreaChart.mjs.map +1 -0
- package/lib/es6/component/Chart/AreaChart.type.mjs +2 -0
- package/lib/es6/component/Chart/AreaChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{BarChart.js → BarChart.mjs} +11 -11
- package/lib/es6/component/Chart/BarChart.mjs.map +1 -0
- package/lib/es6/component/Chart/BarChart.type.mjs +2 -0
- package/lib/es6/component/Chart/BarChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{BubbleChart.js → BubbleChart.mjs} +6 -6
- package/lib/es6/component/Chart/BubbleChart.mjs.map +1 -0
- package/lib/es6/component/Chart/BubbleChart.type.mjs +2 -0
- package/lib/es6/component/Chart/BubbleChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{CigaretteChart.js → CigaretteChart.mjs} +11 -11
- package/lib/es6/component/Chart/CigaretteChart.mjs.map +1 -0
- package/lib/es6/component/Chart/CigaretteChart.type.mjs +2 -0
- package/lib/es6/component/Chart/CigaretteChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{CompactHorizontalBarChart.js → CompactHorizontalBarChart.mjs} +9 -9
- package/lib/es6/component/Chart/CompactHorizontalBarChart.mjs.map +1 -0
- package/lib/es6/component/Chart/CompactHorizontalBarChart.type.mjs +2 -0
- package/lib/es6/component/Chart/CompactHorizontalBarChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{DonutChart.js → DonutChart.mjs} +6 -6
- package/lib/es6/component/Chart/DonutChart.mjs.map +1 -0
- package/lib/es6/component/Chart/DonutChart.type.mjs +2 -0
- package/lib/es6/component/Chart/DonutChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{HistogramChart.js → HistogramChart.mjs} +10 -10
- package/lib/es6/component/Chart/HistogramChart.mjs.map +1 -0
- package/lib/es6/component/Chart/HistogramChart.type.mjs +2 -0
- package/lib/es6/component/Chart/HistogramChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{LineChart.js → LineChart.mjs} +9 -9
- package/lib/es6/component/Chart/LineChart.mjs.map +1 -0
- package/lib/es6/component/Chart/LineChart.type.mjs +2 -0
- package/lib/es6/component/Chart/LineChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{RadarChart.js → RadarChart.mjs} +9 -9
- package/lib/es6/component/Chart/RadarChart.mjs.map +1 -0
- package/lib/es6/component/Chart/RadarChart.type.mjs +2 -0
- package/lib/es6/component/Chart/RadarChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{ScatterPlotChart.js → ScatterPlotChart.mjs} +8 -8
- package/lib/es6/component/Chart/ScatterPlotChart.mjs.map +1 -0
- package/lib/es6/component/Chart/ScatterPlotChart.type.mjs +2 -0
- package/lib/es6/component/Chart/ScatterPlotChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{VennChart.js → VennChart.mjs} +6 -6
- package/lib/es6/component/Chart/VennChart.mjs.map +1 -0
- package/lib/es6/component/Chart/VennChart.type.mjs +2 -0
- package/lib/es6/component/Chart/VennChart.type.mjs.map +1 -0
- package/lib/es6/component/Chart/{index.js → index.mjs} +1 -1
- package/lib/es6/component/Chart/index.mjs.map +1 -0
- package/lib/es6/component/ChartLegend/{BaseLegend.js → BaseLegend.mjs} +8 -8
- package/lib/es6/component/ChartLegend/BaseLegend.mjs.map +1 -0
- package/lib/es6/component/ChartLegend/BaseLegend.type.mjs +2 -0
- package/lib/es6/component/ChartLegend/BaseLegend.type.mjs.map +1 -0
- package/lib/es6/component/ChartLegend/LegendFlex/{LegendFlex.js → LegendFlex.mjs} +11 -11
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.mjs.map +1 -0
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.mjs +2 -0
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.mjs.map +1 -0
- package/lib/es6/component/ChartLegend/LegendItem/{LegendItem.js → LegendItem.mjs} +25 -25
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.mjs.map +1 -0
- package/lib/es6/component/ChartLegend/LegendItem/{LegendItem.type.js → LegendItem.type.mjs} +1 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.mjs.map +1 -0
- package/lib/es6/component/ChartLegend/LegendTable/{LegendTable.js → LegendTable.mjs} +13 -13
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.mjs.map +1 -0
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.mjs +2 -0
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.mjs.map +1 -0
- package/lib/es6/component/ChartLegend/{index.js → index.mjs} +1 -1
- package/lib/es6/component/ChartLegend/index.mjs.map +1 -0
- package/lib/es6/component/Cigarette/{Cigarette.js → Cigarette.mjs} +7 -7
- package/lib/es6/component/Cigarette/Cigarette.mjs.map +1 -0
- package/lib/es6/component/StackGroupBar/{StackGroupBar.js → StackGroupBar.mjs} +9 -9
- package/lib/es6/component/StackGroupBar/StackGroupBar.mjs.map +1 -0
- package/lib/es6/component/StackGroupBar/StackGroupBar.type.mjs +2 -0
- package/lib/es6/component/StackGroupBar/StackGroupBar.type.mjs.map +1 -0
- package/lib/es6/createElement.d.mjs +2 -0
- package/lib/es6/createElement.d.mjs.map +1 -0
- package/lib/es6/{createElement.js → createElement.mjs} +4 -4
- package/lib/es6/createElement.mjs.map +1 -0
- package/lib/es6/{index.js → index.mjs} +1 -1
- package/lib/es6/index.mjs.map +1 -0
- package/lib/es6/translations/{__intergalactic-dynamic-locales.js → __intergalactic-dynamic-locales.mjs} +1 -1
- package/lib/es6/translations/__intergalactic-dynamic-locales.mjs.map +1 -0
- package/lib/es6/types/Area.d.mjs +2 -0
- package/lib/es6/types/Area.d.mjs.map +1 -0
- package/lib/es6/types/Axis.d.mjs +2 -0
- package/lib/es6/types/Axis.d.mjs.map +1 -0
- package/lib/es6/types/Bar.d.mjs +2 -0
- package/lib/es6/types/Bar.d.mjs.map +1 -0
- package/lib/es6/types/Bubble.d.mjs +2 -0
- package/lib/es6/types/Bubble.d.mjs.map +1 -0
- package/lib/es6/types/ClipPath.d.mjs +2 -0
- package/lib/es6/types/ClipPath.d.mjs.map +1 -0
- package/lib/es6/types/CompactHorizontalBar.d.mjs +2 -0
- package/lib/es6/types/CompactHorizontalBar.d.mjs.map +1 -0
- package/lib/es6/types/Donut.d.mjs +2 -0
- package/lib/es6/types/Donut.d.mjs.map +1 -0
- package/lib/es6/types/GroupBar.d.mjs +2 -0
- package/lib/es6/types/GroupBar.d.mjs.map +1 -0
- package/lib/es6/types/HorizontalBar.d.mjs +2 -0
- package/lib/es6/types/HorizontalBar.d.mjs.map +1 -0
- package/lib/es6/types/Hover.d.mjs +2 -0
- package/lib/es6/types/Hover.d.mjs.map +1 -0
- package/lib/es6/types/Line.d.mjs +2 -0
- package/lib/es6/types/Line.d.mjs.map +1 -0
- package/lib/es6/types/Plot.d.mjs +2 -0
- package/lib/es6/types/Plot.d.mjs.map +1 -0
- package/lib/es6/types/Radar.d.mjs +2 -0
- package/lib/es6/types/Radar.d.mjs.map +1 -0
- package/lib/es6/types/Reference.d.mjs +2 -0
- package/lib/es6/types/Reference.d.mjs.map +1 -0
- package/lib/es6/types/ResponsiveContainer.d.mjs +2 -0
- package/lib/es6/types/ResponsiveContainer.d.mjs.map +1 -0
- package/lib/es6/types/ScatterPlot.d.mjs +2 -0
- package/lib/es6/types/ScatterPlot.d.mjs.map +1 -0
- package/lib/es6/types/StackBar.d.mjs +2 -0
- package/lib/es6/types/StackBar.d.mjs.map +1 -0
- package/lib/es6/types/StackedArea.d.mjs +2 -0
- package/lib/es6/types/StackedArea.d.mjs.map +1 -0
- package/lib/es6/types/Tooltip.d.mjs +2 -0
- package/lib/es6/types/Tooltip.d.mjs.map +1 -0
- package/lib/es6/types/Venn.d.mjs +2 -0
- package/lib/es6/types/Venn.d.mjs.map +1 -0
- package/lib/es6/types/context.d.mjs +2 -0
- package/lib/es6/types/context.d.mjs.map +1 -0
- package/lib/es6/types/{index.d.js → index.d.mjs} +1 -1
- package/lib/es6/types/index.d.mjs.map +1 -0
- package/lib/es6/{utils.js → utils.mjs} +6 -6
- package/lib/es6/utils.mjs.map +1 -0
- package/package.json +7 -12
- package/lib/es6/AnimatedClipPath.js.map +0 -1
- package/lib/es6/Area.js.map +0 -1
- package/lib/es6/Axis.js.map +0 -1
- package/lib/es6/Bar.js.map +0 -1
- package/lib/es6/Bubble.js.map +0 -1
- package/lib/es6/CompactHorizontalBar.js.map +0 -1
- package/lib/es6/Donut.js.map +0 -1
- package/lib/es6/Dots.js.map +0 -1
- package/lib/es6/GroupBar.js.map +0 -1
- package/lib/es6/HorizontalBar.js.map +0 -1
- package/lib/es6/Hover.js.map +0 -1
- package/lib/es6/Line.js.map +0 -1
- package/lib/es6/Pattern.js.map +0 -1
- package/lib/es6/Plot.js.map +0 -1
- package/lib/es6/Radar.js.map +0 -1
- package/lib/es6/RadialTree.js.map +0 -1
- package/lib/es6/Reference.js.map +0 -1
- package/lib/es6/ResponsiveContainer.js.map +0 -1
- package/lib/es6/ScatterPlot.js.map +0 -1
- package/lib/es6/StackBar.js.map +0 -1
- package/lib/es6/StackedArea.js.map +0 -1
- package/lib/es6/Tooltip.js.map +0 -1
- package/lib/es6/Venn.js.map +0 -1
- package/lib/es6/a11y/DataAccessibilityTable.js.map +0 -1
- package/lib/es6/a11y/PlotA11yModule.js.map +0 -1
- package/lib/es6/a11y/PlotA11yView.js.map +0 -1
- package/lib/es6/a11y/bezier.js.map +0 -1
- package/lib/es6/a11y/focus.js.map +0 -1
- package/lib/es6/a11y/hints.js.map +0 -1
- package/lib/es6/a11y/insights.js.map +0 -1
- package/lib/es6/a11y/intl.js.map +0 -1
- package/lib/es6/a11y/locale.js.map +0 -1
- package/lib/es6/a11y/serialize.js.map +0 -1
- package/lib/es6/a11y/summarize.js.map +0 -1
- package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js.map +0 -1
- package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js.map +0 -1
- package/lib/es6/color.js.map +0 -1
- package/lib/es6/component/Chart/AbstractChart.js.map +0 -1
- package/lib/es6/component/Chart/AbstractChart.type.js +0 -2
- package/lib/es6/component/Chart/AbstractChart.type.js.map +0 -1
- package/lib/es6/component/Chart/AreaChart.js.map +0 -1
- package/lib/es6/component/Chart/AreaChart.type.js +0 -2
- package/lib/es6/component/Chart/AreaChart.type.js.map +0 -1
- package/lib/es6/component/Chart/BarChart.js.map +0 -1
- package/lib/es6/component/Chart/BarChart.type.js +0 -2
- package/lib/es6/component/Chart/BarChart.type.js.map +0 -1
- package/lib/es6/component/Chart/BubbleChart.js.map +0 -1
- package/lib/es6/component/Chart/BubbleChart.type.js +0 -2
- package/lib/es6/component/Chart/BubbleChart.type.js.map +0 -1
- package/lib/es6/component/Chart/CigaretteChart.js.map +0 -1
- package/lib/es6/component/Chart/CigaretteChart.type.js +0 -2
- package/lib/es6/component/Chart/CigaretteChart.type.js.map +0 -1
- package/lib/es6/component/Chart/CompactHorizontalBarChart.js.map +0 -1
- package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js +0 -2
- package/lib/es6/component/Chart/CompactHorizontalBarChart.type.js.map +0 -1
- package/lib/es6/component/Chart/DonutChart.js.map +0 -1
- package/lib/es6/component/Chart/DonutChart.type.js +0 -2
- package/lib/es6/component/Chart/DonutChart.type.js.map +0 -1
- package/lib/es6/component/Chart/HistogramChart.js.map +0 -1
- package/lib/es6/component/Chart/HistogramChart.type.js +0 -2
- package/lib/es6/component/Chart/HistogramChart.type.js.map +0 -1
- package/lib/es6/component/Chart/LineChart.js.map +0 -1
- package/lib/es6/component/Chart/LineChart.type.js +0 -2
- package/lib/es6/component/Chart/LineChart.type.js.map +0 -1
- package/lib/es6/component/Chart/RadarChart.js.map +0 -1
- package/lib/es6/component/Chart/RadarChart.type.js +0 -2
- package/lib/es6/component/Chart/RadarChart.type.js.map +0 -1
- package/lib/es6/component/Chart/ScatterPlotChart.js.map +0 -1
- package/lib/es6/component/Chart/ScatterPlotChart.type.js +0 -2
- package/lib/es6/component/Chart/ScatterPlotChart.type.js.map +0 -1
- package/lib/es6/component/Chart/VennChart.js.map +0 -1
- package/lib/es6/component/Chart/VennChart.type.js +0 -2
- package/lib/es6/component/Chart/VennChart.type.js.map +0 -1
- package/lib/es6/component/Chart/index.js.map +0 -1
- package/lib/es6/component/ChartLegend/BaseLegend.js.map +0 -1
- package/lib/es6/component/ChartLegend/BaseLegend.type.js +0 -2
- package/lib/es6/component/ChartLegend/BaseLegend.type.js.map +0 -1
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js.map +0 -1
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.js +0 -2
- package/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.type.js.map +0 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.js.map +0 -1
- package/lib/es6/component/ChartLegend/LegendItem/LegendItem.type.js.map +0 -1
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.js.map +0 -1
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.js +0 -2
- package/lib/es6/component/ChartLegend/LegendTable/LegendTable.type.js.map +0 -1
- package/lib/es6/component/ChartLegend/index.js.map +0 -1
- package/lib/es6/component/Cigarette/Cigarette.js.map +0 -1
- package/lib/es6/component/StackGroupBar/StackGroupBar.js.map +0 -1
- package/lib/es6/component/StackGroupBar/StackGroupBar.type.js +0 -2
- package/lib/es6/component/StackGroupBar/StackGroupBar.type.js.map +0 -1
- package/lib/es6/createElement.d.js +0 -2
- package/lib/es6/createElement.d.js.map +0 -1
- package/lib/es6/createElement.js.map +0 -1
- package/lib/es6/index.js.map +0 -1
- package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +0 -1
- package/lib/es6/types/Area.d.js +0 -2
- package/lib/es6/types/Area.d.js.map +0 -1
- package/lib/es6/types/Axis.d.js +0 -2
- package/lib/es6/types/Axis.d.js.map +0 -1
- package/lib/es6/types/Bar.d.js +0 -2
- package/lib/es6/types/Bar.d.js.map +0 -1
- package/lib/es6/types/Bubble.d.js +0 -2
- package/lib/es6/types/Bubble.d.js.map +0 -1
- package/lib/es6/types/ClipPath.d.js +0 -2
- package/lib/es6/types/ClipPath.d.js.map +0 -1
- package/lib/es6/types/CompactHorizontalBar.d.js +0 -2
- package/lib/es6/types/CompactHorizontalBar.d.js.map +0 -1
- package/lib/es6/types/Donut.d.js +0 -2
- package/lib/es6/types/Donut.d.js.map +0 -1
- package/lib/es6/types/GroupBar.d.js +0 -2
- package/lib/es6/types/GroupBar.d.js.map +0 -1
- package/lib/es6/types/HorizontalBar.d.js +0 -2
- package/lib/es6/types/HorizontalBar.d.js.map +0 -1
- package/lib/es6/types/Hover.d.js +0 -2
- package/lib/es6/types/Hover.d.js.map +0 -1
- package/lib/es6/types/Line.d.js +0 -2
- package/lib/es6/types/Line.d.js.map +0 -1
- package/lib/es6/types/Plot.d.js +0 -2
- package/lib/es6/types/Plot.d.js.map +0 -1
- package/lib/es6/types/Radar.d.js +0 -2
- package/lib/es6/types/Radar.d.js.map +0 -1
- package/lib/es6/types/Reference.d.js +0 -2
- package/lib/es6/types/Reference.d.js.map +0 -1
- package/lib/es6/types/ResponsiveContainer.d.js +0 -2
- package/lib/es6/types/ResponsiveContainer.d.js.map +0 -1
- package/lib/es6/types/ScatterPlot.d.js +0 -2
- package/lib/es6/types/ScatterPlot.d.js.map +0 -1
- package/lib/es6/types/StackBar.d.js +0 -2
- package/lib/es6/types/StackBar.d.js.map +0 -1
- package/lib/es6/types/StackedArea.d.js +0 -2
- package/lib/es6/types/StackedArea.d.js.map +0 -1
- package/lib/es6/types/Tooltip.d.js +0 -2
- package/lib/es6/types/Tooltip.d.js.map +0 -1
- package/lib/es6/types/Venn.d.js +0 -2
- package/lib/es6/types/Venn.d.js.map +0 -1
- package/lib/es6/types/context.d.js +0 -2
- package/lib/es6/types/context.d.js.map +0 -1
- package/lib/es6/types/index.d.js.map +0 -1
- package/lib/es6/utils.js.map +0 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
2
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
3
|
-
import _extends from "@babel/runtime/helpers/extends";
|
|
4
|
-
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
|
5
|
-
import _createClass from "@babel/runtime/helpers/createClass";
|
|
6
|
-
import _assertThisInitialized from "@babel/runtime/helpers/assertThisInitialized";
|
|
7
|
-
import _inherits from "@babel/runtime/helpers/inherits";
|
|
8
|
-
import _createSuper from "@babel/runtime/helpers/createSuper";
|
|
9
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
1
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
4
|
+
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
5
|
+
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
6
|
+
import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
|
|
7
|
+
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
8
|
+
import _createSuper from "@babel/runtime/helpers/esm/createSuper";
|
|
9
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
10
10
|
import { sstyled as _sstyled } from "@semcore/utils/lib/core/index";
|
|
11
11
|
import { assignProps as _assignProps } from "@semcore/core";
|
|
12
12
|
import React from 'react';
|
|
@@ -20,15 +20,15 @@ import Tooltip from './Tooltip';
|
|
|
20
20
|
import { PatternFill } from './Pattern';
|
|
21
21
|
import uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';
|
|
22
22
|
/*__reshadow-styles__:"./style/venn.shadow.css"*/
|
|
23
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
24
|
-
"__SCircle": "
|
|
25
|
-
"_color": "
|
|
26
|
-
"--color": "--
|
|
27
|
-
"_transparent": "
|
|
28
|
-
"__SIntersection": "
|
|
29
|
-
"--duration": "--
|
|
30
|
-
"_pattern": "
|
|
31
|
-
"--pattern": "--
|
|
23
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SCircle_1wieu_gg_,.___SIntersection_1wieu_gg_{stroke:var(--intergalactic-chart-grid-border, #ffffff);stroke-width:2px}.___SCircle_1wieu_gg_{fill:var(--intergalactic-chart-palette-order-2, #59ddaa);fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_1wieu);transition-timing-function:ease-in-out}@media (hover:hover){.___SCircle_1wieu_gg_:hover{fill-opacity:.7}}.___SCircle_1wieu_gg_.__color_1wieu_gg_{fill:var(--color_1wieu)}.___SCircle_1wieu_gg_.__pattern_1wieu_gg_.__color_1wieu_gg_{fill:var(--pattern_1wieu);fill-opacity:.7;stroke:var(--color_1wieu);stroke-width:1px}@media (hover:hover){.___SCircle_1wieu_gg_.__pattern_1wieu_gg_.__color_1wieu_gg_:hover{fill-opacity:.85}}.___SCircle_1wieu_gg_.__transparent_1wieu_gg_{opacity:.3}.___SIntersection_1wieu_gg_{fill-opacity:0}@media (hover:hover){.___SIntersection_1wieu_gg_:hover{fill-opacity:.1}}.___SIntersection_1wieu_gg_.__transparent_1wieu_gg_{opacity:.3}" /*__inner_css_end__*/, "1wieu_gg_") /*__reshadow_css_end__*/, {
|
|
24
|
+
"__SCircle": "___SCircle_1wieu_gg_",
|
|
25
|
+
"_color": "__color_1wieu_gg_",
|
|
26
|
+
"--color": "--color_1wieu",
|
|
27
|
+
"_transparent": "__transparent_1wieu_gg_",
|
|
28
|
+
"__SIntersection": "___SIntersection_1wieu_gg_",
|
|
29
|
+
"--duration": "--duration_1wieu",
|
|
30
|
+
"_pattern": "__pattern_1wieu_gg_",
|
|
31
|
+
"--pattern": "--pattern_1wieu"
|
|
32
32
|
});
|
|
33
33
|
var VennRoot = /*#__PURE__*/function (_Component) {
|
|
34
34
|
_inherits(VennRoot, _Component);
|
|
@@ -252,4 +252,4 @@ var Venn = createElement(VennRoot, {
|
|
|
252
252
|
Tooltip: [VennTooltip, Tooltip._______childrenComponents]
|
|
253
253
|
});
|
|
254
254
|
export default Venn;
|
|
255
|
-
//# sourceMappingURL=Venn.
|
|
255
|
+
//# sourceMappingURL=Venn.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Venn.mjs","names":["React","venn","normalizeSolution","scaleSolution","intersectionAreaPath","Component","Root","sstyled","canUseDOM","FadeInOut","createElement","getChartDefaultColorName","Tooltip","PatternFill","uniqueIDEnhancement","style","_sstyled","insert","VennRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","document","visible","props","tooltipProps","_ref5","clientX","clientY","eventEmitter","asProps","emit","forwardRef","ref","_extends","tag","_createClass","key","value","generateGetBoundingClientRect","x","undefined","y","width","height","top","right","bottom","left","getVennData","_this$asProps","data","orientation","orientationOrder","size","_size","_slicedToArray","vennData","Object","entries","map","_ref6","_ref7","dataKey","sets","split","getCircleProps","index","colorBackwardCapabilityOffset","color","name","patterns","duration","originalData","onMouseMove","bindHandlerTooltip","onMouseLeave","transparent","resolveColor","uid","minRadius","getIntersectionProps","_this$asProps2","dataKeys","delay","values","filter","d","includes","setid","render","Element","dataHintsHandler","establishDataType","renderElement","childrenPosition","Math","PI","c1","c2","radius","Circle","_ref8","_ref2","SCircle","styles","describeValueEntity","Fragment","cn","Intersection","_ref3","SIntersection","renderIntersection","useCallback","VennTooltip","_ref","arguments[0]","_ref4","SVennTooltip","_objectSpread","_assignProps","Venn","_______childrenComponents"],"sources":["../../src/Venn.jsx"],"sourcesContent":["import React from 'react';\nimport { venn, normalizeSolution, scaleSolution, intersectionAreaPath } from '@upsetjs/venn.js';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\nimport { FadeInOut } from '@semcore/animation';\nimport createElement from './createElement';\nimport { getChartDefaultColorName } from './utils';\nimport Tooltip from './Tooltip';\nimport { PatternFill } from './Pattern';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\n\nimport style from './style/venn.shadow.css';\n\nclass VennRoot extends Component {\n static displayName = 'Venn';\n static style = style;\n\n static defaultProps = {\n orientation: Math.PI / 2,\n orientationOrder: (c1, c2) => c2.radius - c1.radius,\n duration: 500,\n minRadius: 6,\n };\n static enhance = [uniqueIDEnhancement()];\n\n virtualElement = canUseDOM() ? document.createElement('div') : {};\n\n generateGetBoundingClientRect(x = 0, y = 0) {\n return () => ({ width: 0, height: 0, top: y, right: x, bottom: y, left: x });\n }\n\n bindHandlerTooltip = (visible, props, tooltipProps) => ({ clientX, clientY }) => {\n const { eventEmitter } = this.asProps;\n\n eventEmitter.emit('setTooltipPosition', clientX, clientY);\n eventEmitter.emit('setTooltipRenderingProps', props, tooltipProps);\n eventEmitter.emit('setTooltipVisible', visible);\n };\n\n getVennData() {\n const { data, orientation, orientationOrder, size } = this.asProps;\n const [width, height] = size;\n const vennData = Object.entries(data).map(([dataKey, size]) => ({\n sets: dataKey.split('/'),\n size,\n }));\n return scaleSolution(\n normalizeSolution(venn(vennData), orientation, orientationOrder),\n width,\n height,\n 10,\n );\n }\n\n getCircleProps(props, index) {\n const colorBackwardCapabilityOffset = 1;\n const color = props.color || getChartDefaultColorName(index + colorBackwardCapabilityOffset);\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color,\n patterns: this.asProps.patterns,\n };\n\n return {\n duration: this.asProps.duration,\n data: this.vennData[props.dataKey],\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent: this.asProps.transparent,\n resolveColor: this.asProps.resolveColor,\n color,\n uid: `${this.asProps.uid}-${index}`,\n patterns: this.asProps.patterns,\n minRadius: this.asProps.minRadius,\n };\n }\n\n getIntersectionProps(props) {\n const { duration, transparent } = this.asProps;\n const dataKeys = props.dataKey.split('/');\n const tooltipProps = {\n dataKey: props.dataKey,\n name: props.name,\n color: props.color,\n duration: props.duration,\n transparent: props.transparent,\n };\n\n return {\n duration,\n delay: duration,\n data: Object.values(this.vennData).filter((d) => dataKeys.includes(d.setid)),\n originalData: this.asProps.data[props.dataKey],\n onMouseMove: this.bindHandlerTooltip(true, props, tooltipProps),\n onMouseLeave: this.bindHandlerTooltip(false, props, tooltipProps),\n transparent,\n resolveColor: this.asProps.resolveColor,\n };\n }\n\n renderElement = React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='g' visible {...props} />;\n });\n\n render() {\n const Element = this.Element;\n this.asProps.dataHintsHandler.establishDataType('values-set');\n this.vennData = this.getVennData();\n return (\n <Element\n aria-hidden\n render={this.renderElement}\n childrenPosition='inside'\n vennData={this.vennData}\n />\n );\n }\n}\n\nfunction Circle({\n Element: SCircle,\n styles,\n color,\n resolveColor,\n data,\n duration,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n uid,\n patterns,\n minRadius,\n}) {\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const radius = data.radius < minRadius ? minRadius : data.radius;\n if (data.radius === 0) return null;\n\n return (\n <>\n {sstyled(styles)(\n <SCircle\n aria-hidden\n render='circle'\n color={resolveColor(color)}\n pattern={patterns ? `url(#${uid}-pattern)` : undefined}\n cx={data.x}\n cy={data.y}\n r={radius}\n transparent={transparent}\n use:duration={`${duration}ms`}\n />,\n )}\n {patterns && (\n <PatternFill\n id={`${uid}-pattern`}\n patternKey={color}\n color={resolveColor(color)}\n patterns={patterns}\n />\n )}\n </>\n );\n}\n\nfunction Intersection(props) {\n const {\n Element: SIntersection,\n styles,\n data,\n name,\n dataKey,\n dataHintsHandler,\n transparent,\n } = props;\n dataHintsHandler.describeValueEntity(dataKey, name);\n\n const renderIntersection = React.useCallback(\n React.forwardRef((props, ref) => {\n return <FadeInOut aria-hidden ref={ref} tag='path' visible {...props} />;\n }),\n [props],\n );\n return sstyled(styles)(\n <SIntersection\n aria-hidden\n render={renderIntersection}\n d={intersectionAreaPath(data)}\n transparent={transparent}\n />,\n );\n}\n\nconst VennTooltip = (props) => {\n const SVennTooltip = Root;\n return sstyled(props.styles)(<SVennTooltip render={Tooltip} excludeAnchorProps />);\n};\n\nconst Venn = createElement(VennRoot, {\n Circle,\n Intersection,\n Tooltip: [VennTooltip, Tooltip._______childrenComponents],\n});\n\nexport default Venn;\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import _typeof from "@babel/runtime/helpers/typeof";
|
|
2
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
3
|
-
import _createForOfIteratorHelper from "@babel/runtime/helpers/createForOfIteratorHelper";
|
|
4
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
1
|
+
import _typeof from "@babel/runtime/helpers/esm/typeof";
|
|
2
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
|
+
import _createForOfIteratorHelper from "@babel/runtime/helpers/esm/createForOfIteratorHelper";
|
|
4
|
+
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
5
5
|
import React from 'react';
|
|
6
6
|
import { defaultValueFormatter } from './serialize';
|
|
7
7
|
export var DataAccessibilityTable = function DataAccessibilityTable(_ref) {
|
|
@@ -105,4 +105,4 @@ export var DataAccessibilityTable = function DataAccessibilityTable(_ref) {
|
|
|
105
105
|
}));
|
|
106
106
|
})));
|
|
107
107
|
};
|
|
108
|
-
//# sourceMappingURL=DataAccessibilityTable.
|
|
108
|
+
//# sourceMappingURL=DataAccessibilityTable.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DataAccessibilityTable.mjs","names":["React","defaultValueFormatter","DataAccessibilityTable","_ref","id","dataTableRef","data","hints","config","intl","keys","useMemo","_fromHints","_fromHints2","_fromHints3","_fromHints4","_fromHints5","fromHints","push","apply","_toConsumableArray","fields","verticalAxes","horizontalAxes","valueAxes","additionalFields","Object","values","Set","filter","key","length","forEach","row","_fromHints6","duplicatedBaseKeys","baseKeys","titles","valuesAxes","map","has","axesTitle","vertical","horizontal","entry","undefined","doublicated","handled","_iterator","_createForOfIteratorHelper","_step","s","n","done","_step$value","_slicedToArray","value","label","err","e","f","renderTitle","useCallback","dataKey","_config$titlesFormatt","formatted","titlesFormatter","call","formatValue","_config$valuesFormatt","_config$valuesFormatt2","valuesFormatter","createElement","concat","tabIndex","ref","index","item","_typeof","join","cells","_ref2","_ref3"],"sources":["../../../src/a11y/DataAccessibilityTable.tsx"],"sourcesContent":["import React from 'react';\nimport { DataStructureHints, DataSummarizationConfig } from './hints';\nimport { Intl } from './intl';\nimport { defaultValueFormatter } from './serialize';\n\nexport const DataAccessibilityTable: React.FC<{\n id: string;\n dataTableRef: React.RefObject<HTMLTableElement>;\n data: Record<string | number, unknown>[];\n hints: DataStructureHints;\n config: DataSummarizationConfig;\n intl: Intl;\n}> = ({ id, dataTableRef, data, hints, config, intl }) => {\n const keys = React.useMemo(() => {\n let fromHints: (string | number)[] = [];\n fromHints.push(...hints.fields.verticalAxes);\n fromHints.push(...hints.fields.horizontalAxes);\n fromHints.push(...hints.fields.valueAxes);\n fromHints.push(...config.additionalFields);\n fromHints.push(...Object.keys(hints.fields.values));\n\n fromHints = [...new Set(fromHints)].filter((key) => key in data[0]);\n\n if (fromHints.length === 0) {\n data.forEach((row) => fromHints.push(...Object.keys(row)));\n }\n\n return [...new Set(fromHints)];\n }, [data, hints]);\n const duplicatedBaseKeys = React.useMemo(() => {\n const baseKeys = keys\n .filter((key) => !hints.titles.valuesAxes[key])\n .map((key) => {\n if (hints.fields.verticalAxes.has(key) && hints.axesTitle.vertical)\n return [key, hints.axesTitle.vertical];\n if (hints.fields.horizontalAxes.has(key) && hints.axesTitle.horizontal)\n return [key, hints.axesTitle.horizontal];\n })\n .filter((entry) => entry !== undefined)\n .map((entry) => entry!);\n const doublicated: Record<string, true> = {};\n const handled: Record<string, string | number> = {};\n for (const [key, label] of baseKeys) {\n if (handled[label]) {\n doublicated[key] = true;\n doublicated[handled[label]] = true;\n }\n handled[label] = key;\n }\n return doublicated;\n }, [keys, hints]);\n const renderTitle = React.useCallback(\n (dataKey: string | number) => {\n const formatted = config.titlesFormatter?.(dataKey);\n if (formatted !== undefined) return formatted;\n if (hints.titles.valuesAxes[dataKey]) return hints.titles.valuesAxes[dataKey];\n if (!duplicatedBaseKeys[dataKey]) {\n if (hints.fields.verticalAxes.has(dataKey) && hints.axesTitle.vertical)\n return hints.axesTitle.vertical;\n if (hints.fields.horizontalAxes.has(dataKey) && hints.axesTitle.horizontal)\n return hints.axesTitle.horizontal;\n }\n\n return dataKey;\n },\n [data, hints, duplicatedBaseKeys, config],\n );\n const formatValue = React.useCallback(\n (value: unknown, row: string) => {\n return config.valuesFormatter?.(value, row) ?? defaultValueFormatter(intl, value);\n },\n [intl, config],\n );\n\n return (\n <table id={`${id}-data-table`} tabIndex={0} ref={dataTableRef}>\n <thead>\n <tr>\n {keys.map((key, index) => (\n <th key={`${key}-${index}`}>{renderTitle(key)}</th>\n ))}\n </tr>\n </thead>\n <tbody>\n {data.map((row, index) => {\n const key = `${Object.values(row)\n .filter((item) => typeof item !== 'symbol')\n .join('-')}-${index}`;\n const cells = keys.map((key) =>\n typeof row[key] !== 'symbol' ? [key, row[key]] : [key, ''],\n );\n\n return (\n <tr key={key}>\n {cells.map(([key, value], index) => (\n <td key={`${key}-${index}`}>{formatValue(value, keys[index] as string)}</td>\n ))}\n </tr>\n );\n })}\n </tbody>\n </table>\n );\n};\n"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
2
|
-
import _extends from "@babel/runtime/helpers/extends";
|
|
3
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
1
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
3
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
4
4
|
import { sstyled as _sstyled } from "@semcore/utils/lib/core/index";
|
|
5
5
|
import { assignProps as _assignProps3 } from "@semcore/core";
|
|
6
6
|
import { assignProps as _assignProps2 } from "@semcore/core";
|
|
@@ -10,8 +10,8 @@ import { normalizeLocale } from './locale';
|
|
|
10
10
|
import { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';
|
|
11
11
|
import { Root, sstyled } from '@semcore/core';
|
|
12
12
|
/*__reshadow-styles__:"../style/plotA11yModule.shadow.css"*/
|
|
13
|
-
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
14
|
-
"__SPlotA11yModule": "
|
|
13
|
+
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPlotA11yModule_1bl68_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0}.___SPlotA11yModule_1bl68_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1}" /*__inner_css_end__*/, "1bl68_gg_") /*__reshadow_css_end__*/, {
|
|
14
|
+
"__SPlotA11yModule": "___SPlotA11yModule_1bl68_gg_"
|
|
15
15
|
});
|
|
16
16
|
import { Context as I18nContext, useI18n } from '@semcore/utils/lib/enhances/WithI18n';
|
|
17
17
|
import { Box } from '@semcore/flex-box';
|
|
@@ -123,4 +123,4 @@ export var PlotA11yModule = function PlotA11yModule(props) {
|
|
|
123
123
|
"onFocus": hadnleHiddenElementsFocus
|
|
124
124
|
}, _ref))), t('disabled'));
|
|
125
125
|
};
|
|
126
|
-
//# sourceMappingURL=PlotA11yModule.
|
|
126
|
+
//# sourceMappingURL=PlotA11yModule.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlotA11yModule.mjs","names":["React","normalizeLocale","localizedMessages","Root","sstyled","styles","_sstyled","insert","Context","I18nContext","useI18n","Box","globalWasFocused","globalNavWithKeyboard","PlotA11yModule","props","_ref","arguments[0]","_ref5","SPlotA11yModule","_React$useState","useState","_React$useState2","_slicedToArray","wasFocused","setWasFocused","_React$useState3","_React$useState4","navWithKeyboard","setNavWithKeyboard","_React$useState5","_React$useState6","plotA11yView","setPlotA11yView","hadnleHiddenElementsFocus","useCallback","_React$useState7","_React$useState8","loading","setLoading","_React$useState9","_React$useState10","error","setError","contextLocale","useContext","locale","useMemo","_props$locale","t","useEffect","_props$plotRef$curren","focusListener","plotRef","current","addEventListener","_props$plotRef$curren2","removeEventListener","_document$body","keyboardListener","event","navigationKeys","includes","key","document","body","_document$body2","shouldDisplayView","then","_ref6","PlotA11yView","Component","console","_ref2","createElement","_extends","_ref3","cn","_objectSpread","_assignProps","_ref4","_assignProps2","_assignProps3"],"sources":["../../../src/a11y/PlotA11yModule.tsx"],"sourcesContent":["import React from 'react';\nimport { DataStructureHints, PartialDataSummarizationConfig } from './hints';\nimport { normalizeLocale } from './locale';\nimport { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yModule.shadow.css';\nimport { Context as I18nContext, useI18n } from '@semcore/utils/lib/enhances/WithI18n';\nimport { Box } from '@semcore/flex-box';\n\nlet globalWasFocused = false;\nlet globalNavWithKeyboard = false;\n\nexport type A11yViewProps = {\n id: string;\n data: Record<string, unknown>[];\n hints: DataStructureHints;\n plotLabel: string;\n locale: NavigatorLanguage['language'];\n config: PartialDataSummarizationConfig;\n\n plotRef: React.RefObject<HTMLElement>;\n};\n\nexport const PlotA11yModule: React.FC<A11yViewProps> = (props) => {\n const SPlotA11yModule = Root;\n const [wasFocused, setWasFocused] = React.useState(globalWasFocused);\n const [navWithKeyboard, setNavWithKeyboard] = React.useState(globalNavWithKeyboard);\n const [plotA11yView, setPlotA11yView] = React.useState<{\n Component: React.FC<A11yViewProps>;\n } | null>(null);\n\n const hadnleHiddenElementsFocus = React.useCallback(() => {\n setWasFocused(true);\n setNavWithKeyboard(true);\n }, []);\n\n const [loading, setLoading] = React.useState(false);\n const [error, setError] = React.useState<Error | null>(null);\n\n const contextLocale = React.useContext(I18nContext);\n const locale = React.useMemo(\n () => normalizeLocale(props.locale ?? contextLocale, localizedMessages),\n [props.locale],\n );\n const t = useI18n(localizedMessages, locale!);\n\n React.useEffect(() => {\n if (wasFocused) return;\n const focusListener = () => {\n globalWasFocused = true;\n setWasFocused(true);\n };\n\n props.plotRef.current?.addEventListener('focus', focusListener);\n return () => props.plotRef.current?.removeEventListener('focus', focusListener);\n }, [wasFocused, props.plotRef]);\n React.useEffect(() => {\n if (navWithKeyboard) return;\n const keyboardListener = (event: Event) => {\n const navigationKeys = [\n 'Tab',\n 'ArrowUp',\n 'ArrowLeft',\n 'ArrowDown',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowLeft',\n ];\n if ('key' in event && navigationKeys.includes((event as KeyboardEvent).key)) {\n setNavWithKeyboard(true);\n globalNavWithKeyboard = true;\n }\n };\n document.body?.addEventListener('keydown', keyboardListener);\n return () => document.body?.removeEventListener('keydown', keyboardListener);\n }, [navWithKeyboard]);\n\n const shouldDisplayView = wasFocused && navWithKeyboard;\n\n React.useEffect(() => {\n if (!shouldDisplayView) return;\n if (plotA11yView) return;\n if (loading) return;\n\n setLoading(true);\n\n import('./PlotA11yView')\n .then(({ PlotA11yView }) => {\n setPlotA11yView({ Component: PlotA11yView });\n setLoading(false);\n setError(null);\n })\n .catch((error) => {\n console.error(error);\n setError(error);\n });\n }, [plotA11yView, shouldDisplayView, loading, setLoading]);\n\n if (plotA11yView) {\n return sstyled(styles)(\n <plotA11yView.Component {...props} locale={locale!} />,\n ) as React.ReactElement;\n }\n\n if (error) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live='assertive'>\n {t('failed')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n if (loading) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live='polite'>\n {t('loading')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} onFocus={hadnleHiddenElementsFocus}>\n {t('disabled')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n};\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
2
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
1
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
2
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
3
|
import { sstyled as _sstyled } from "@semcore/utils/lib/core/index";
|
|
4
4
|
import { assignProps as _assignProps } from "@semcore/core";
|
|
5
5
|
import React from 'react';
|
|
@@ -9,8 +9,8 @@ import { getIntl } from './intl';
|
|
|
9
9
|
import { summarize } from './summarize';
|
|
10
10
|
import { Root, sstyled } from '@semcore/core';
|
|
11
11
|
/*__reshadow-styles__:"../style/plotA11yView.shadow.css"*/
|
|
12
|
-
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
|
13
|
-
"__SPlotA11yView": "
|
|
12
|
+
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPlotA11yView_1jqfg_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0;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);padding:2px;width:200px;height:200px;max-width:80%;max-height:80%;overflow:auto}.___SPlotA11yView_1jqfg_gg_:focus,.___SPlotA11yView_1jqfg_gg_:focus-within{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1;z-index:var(--intergalactic-z-index-overlay, 500);position:relative;display:block}.___SPlotA11yView_1jqfg_gg_ a{cursor:pointer;-webkit-text-decoration:underline;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_1jqfg_gg_ table,.___SPlotA11yView_1jqfg_gg_ td,.___SPlotA11yView_1jqfg_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}" /*__inner_css_end__*/, "1jqfg_gg_") /*__reshadow_css_end__*/, {
|
|
13
|
+
"__SPlotA11yView": "___SPlotA11yView_1jqfg_gg_"
|
|
14
14
|
});
|
|
15
15
|
import { Box } from '@semcore/flex-box';
|
|
16
16
|
import { useAsyncI18nMessages } from '@semcore/utils/lib/enhances/i18nEnhance';
|
|
@@ -146,4 +146,4 @@ export var PlotA11yView = function PlotA11yView(_ref3) {
|
|
|
146
146
|
"intl": intl
|
|
147
147
|
})));
|
|
148
148
|
};
|
|
149
|
-
//# sourceMappingURL=PlotA11yView.
|
|
149
|
+
//# sourceMappingURL=PlotA11yView.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PlotA11yView.mjs","names":["React","heavyFindNextFocusableElement","makeDataSummarizationConfig","getIntl","summarize","Root","sstyled","styles","_sstyled","insert","Box","useAsyncI18nMessages","localizedMessages","DataAccessibilityTable","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 React from 'react';\nimport { heavyFindNextFocusableElement } from './focus';\nimport { makeDataSummarizationConfig } from './hints';\nimport type { A11yViewProps } from './PlotA11yModule';\nimport { getIntl } from './intl';\nimport { summarize } from './summarize';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yView.shadow.css';\nimport { Box } from '@semcore/flex-box';\nimport { useAsyncI18nMessages } from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from './translations/view/__intergalactic-dynamic-locales';\nimport { DataAccessibilityTable } from './DataAccessibilityTable';\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 {/* biome-ignore lint/a11y/useValidAnchor: */}\n <a href={'#'} onKeyDown={handleSkipKeyboard} onClick={handleSkip}>\n {texts.skipPlot}\n </a>\n {/* biome-ignore lint/a11y/useValidAnchor: */}\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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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bezier.mjs","names":["makeBezier","points","bounds","yPoints","map","point","y","noPoints","weightPoints","_point$weight","weight","process","t","result","i","length","tPower","reversedTPower","edge","factor","Math","pow","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,IAAMA,UAAU,GAAG,SAAbA,UAAUA,CACrBC,MAAmD,EACnDC,MAAyC,EACtC;EACH,IAAMC,OAAO,GAAGF,MAAM,CAACG,GAAG,CAAC,UAACC,KAAK;IAAA,OAAKA,KAAK,CAACC,CAAC;EAAA,EAAC;EAC9C,IAAMC,QAAQ,GAAGN,MAAM,CAACG,GAAG,CAAC;IAAA,OAAM,CAAC;EAAA,EAAC;EACpC,IAAMI,YAAY,GAAGP,MAAM,CAACG,GAAG,CAAC,UAACC,KAAK;IAAA,IAAAI,aAAA;IAAA,QAAAA,aAAA,GAAKJ,KAAK,CAACK,MAAM,cAAAD,aAAA,cAAAA,aAAA,GAAI,CAAC;EAAA,EAAC;EAC7D,IAAME,OAAO,GAAG,SAAVA,OAAOA,CAAIC,CAAS,EAAEX,MAAgB,EAAK;IAC/C,IAAIY,MAAM,GAAG,CAAC;IACd,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGb,MAAM,CAACc,MAAM,EAAED,CAAC,EAAE,EAAE;MACtC,IAAME,MAAM,GAAGF,CAAC;MAChB,IAAMG,cAAc,GAAGhB,MAAM,CAACc,MAAM,GAAG,CAAC,GAAGD,CAAC;MAC5C,IAAMI,IAAI,GAAGJ,CAAC,KAAK,CAAC,IAAIA,CAAC,KAAKb,MAAM,CAACc,MAAM,GAAG,CAAC;MAC/C,IAAMI,MAAM,GAAGD,IAAI,GAAG,CAAC,GAAGjB,MAAM,CAACc,MAAM,GAAG,CAAC;MAC3C,IAAMV,KAAK,GAAGJ,MAAM,CAACa,CAAC,CAAC;MACvB,IAAMJ,MAAM,GAAGF,YAAY,CAACM,CAAC,CAAC;MAC9BD,MAAM,IAAIM,MAAM,GAAAC,IAAA,CAAAC,GAAA,CAAGT,CAAC,EAAII,MAAM,IAAAI,IAAA,CAAAC,GAAA,CAAI,CAAC,GAAGT,CAAC,EAAKK,cAAc,IAAGZ,KAAK,GAAGK,MAAM;IAC7E;IACA,OAAOG,MAAM;EACf,CAAC;EAED,OAAO,UAACS,CAAS,EAAK;IACpB,IAAMV,CAAC,GAAGU,CAAC,GAAGpB,MAAM,CAACqB,KAAK;IAC1B,OAAOZ,OAAO,CAACC,CAAC,EAAET,OAAO,CAAC,GAAGQ,OAAO,CAACC,CAAC,EAAEL,QAAQ,CAAC;EACnD,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"focus.mjs","names":["isFocusable","findNextFocusableElementInChildren","element","children","i","length","childChild","item","result","makeParentsChain","parents","parent","parentElement","push","heavyFindNextFocusableElement","base","_parent$children","siblings","Array","from","indexOf","slice","focusable"],"sources":["../../../src/a11y/focus.ts"],"sourcesContent":["import { isFocusable } from '@semcore/utils/lib/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,2CAA2C;AAIvE,IAAMC,kCAAkC,GAAG,SAArCA,kCAAkCA,CAAIC,OAAuB,EAA8B;EAC/F,IAAIA,OAAO,IAAIF,WAAW,CAACE,OAAO,CAAC,EAAE;IACnC,OAAOA,OAAO;EAChB;EAEA,IAAMC,QAAQ,GAAGD,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEC,QAAQ;EAElC,IAAIA,QAAQ,EAAE;IACZ,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,QAAQ,CAACE,MAAM,EAAED,CAAC,EAAE,EAAE;MACxC,IAAME,UAAU,GAAGH,QAAQ,CAACI,IAAI,CAACH,CAAC,CAAC;MACnC,IAAI,CAACE,UAAU,EAAE;MACjB,IAAME,MAAM,GAAGP,kCAAkC,CAACK,UAAU,CAAC;MAC7D,IAAIE,MAAM,EAAE,OAAOA,MAAM;IAC3B;EACF;EAEA,OAAO,IAAI;AACb,CAAC;AAED,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIP,OAAgB,EAAgB;EACxD,IAAMQ,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,IAAMI,6BAA6B,GAAG,SAAhCA,6BAA6BA,CAAIC,IAAa,EAA8B;EACvF,IAAML,OAAO,GAAGD,gBAAgB,CAACM,IAAI,CAAC;EACtC,KAAK,IAAIX,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGM,OAAO,CAACL,MAAM,EAAED,CAAC,EAAE,EAAE;IAAA,IAAAY,gBAAA;IACvC,IAAML,MAAM,GAAGD,OAAO,CAACN,CAAC,CAAC;IACzB,IAAIa,QAAQ,GAAGC,KAAK,CAACC,IAAI,EAAAH,gBAAA,GAACL,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAER,QAAQ,cAAAa,gBAAA,cAAAA,gBAAA,GAAI,EAAE,CAAC;IACjD,IAAIC,QAAQ,CAACG,OAAO,CAACV,OAAO,CAACN,CAAC,GAAG,CAAC,CAAC,IAAIW,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;MACnDE,QAAQ,GAAGA,QAAQ,CAACI,KAAK,CAACJ,QAAQ,CAACG,OAAO,CAACV,OAAO,CAACN,CAAC,GAAG,CAAC,CAAC,IAAIW,IAAI,CAAC,GAAG,CAAC,CAAC;IACzE;IAEA,KAAK,IAAIX,EAAC,GAAG,CAAC,EAAEA,EAAC,GAAGa,QAAQ,CAACZ,MAAM,EAAED,EAAC,EAAE,EAAE;MACxC,IAAMkB,SAAS,GAAGrB,kCAAkC,CAACgB,QAAQ,CAACb,EAAC,CAAC,CAAC;MACjE,IAAIkB,SAAS,EAAE,OAAOA,SAAS;IACjC;EACF;EAEA,OAAO,IAAI;AACb,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
-
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
|
3
|
-
import _typeof from "@babel/runtime/helpers/typeof";
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
2
|
+
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
3
|
+
import _typeof from "@babel/runtime/helpers/esm/typeof";
|
|
4
4
|
import reactToText from '@semcore/utils/lib/reactToText';
|
|
5
5
|
export var makeDataHintsContainer = function makeDataHintsContainer() {
|
|
6
6
|
return {
|
|
@@ -115,4 +115,4 @@ export var makeDataSummarizationConfig = function makeDataSummarizationConfig(co
|
|
|
115
115
|
additionalFields: _toConsumableArray((_config$additionalFie = config === null || config === void 0 ? void 0 : config.additionalFields) !== null && _config$additionalFie !== void 0 ? _config$additionalFie : [])
|
|
116
116
|
});
|
|
117
117
|
};
|
|
118
|
-
//# sourceMappingURL=hints.
|
|
118
|
+
//# sourceMappingURL=hints.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hints.mjs","names":["reactToText","makeDataHintsContainer","fields","verticalAxes","Set","horizontalAxes","valueAxes","values","groups","axesTitle","vertical","horizontal","titles","getVerticalAxesTitle","getHorizontalAxesTitle","valuesAxes","getValueAxesTitle","grid","dataType","pointsDensity","makeDataHintsHandlers","mutableContainer","handler","specifyDataRowFields","x","y","value","add","setupGrid","direction","size","establishDataType","describeValueEntity","dataKey","readableName","labelKey","describeGroupedValues","groupKey","axes","label","addKeyLabelGetter","getter","setTitle","describedDataAxes","title","_typeof","Date","String","setPointsDensity","makeDataSummarizationConfig","config","_config$trendTangens","_config$movingAverage","_config$additionalFie","_objectSpread","clustersGridSize","undefined","maxListSymbols","datesWithTime","clustersLimit","valuesLimit","groupsLimit","disable","override","trendTangens","weak","medium","strong","Infinity","movingAverage","longSize","shortSize","notableDiff","additionalFields","_toConsumableArray"],"sources":["../../../src/a11y/hints.ts"],"sourcesContent":["import { SerializableDataType } from './insights';\nimport reactToText from '@semcore/utils/lib/reactToText';\n\ntype DeepPartial<T> = T extends object\n ? {\n [P in keyof T]?: DeepPartial<T[P]>;\n }\n : T;\n\nexport type DataStructureHints = {\n fields: {\n verticalAxes: Set<string | number>;\n horizontalAxes: Set<string | number>;\n valueAxes: Set<string | number>;\n values: Set<string | number>;\n };\n groups: Set<string | number>;\n axesTitle: {\n vertical: string | null;\n horizontal: string | null;\n };\n titles: {\n verticalAxes: {\n [dataKey: string | number]: string;\n };\n getVerticalAxesTitle: null | ((dataKey: string | number) => string);\n horizontalAxes: {\n [dataKey: string | number]: string;\n };\n getHorizontalAxesTitle: null | ((dataKey: string | number) => string);\n valuesAxes: {\n [dataKey: string | number]: string;\n };\n getValueAxesTitle: null | ((dataKey: string | number) => string);\n };\n grid: {\n verticalAxes: number | null;\n horizontalAxes: number | null;\n };\n pointsDensity: {\n verticalAxes: number;\n horizontalAxes: number;\n } | null;\n dataType: SerializableDataType | null;\n};\nexport type DataSummarizationConfig = {\n trendTangens: {\n static: number;\n weak: number;\n medium: number;\n strong: number;\n };\n movingAverage: {\n longSize: number | undefined;\n shortSize: number | undefined;\n notableDiff: number | undefined;\n };\n dataType: SerializableDataType | undefined;\n clustersGridSize: number | undefined;\n maxListSymbols: number;\n datesWithTime: boolean | undefined;\n clustersLimit: number;\n valuesLimit: number;\n groupsLimit: number;\n disable: boolean;\n override: string | undefined;\n additionalFields: string[];\n titlesFormatter?: (key: string | number | null) => string | undefined;\n valuesFormatter?: (value: unknown, key: string | number | null) => string | undefined;\n};\nexport type PartialDataSummarizationConfig = DeepPartial<\n Omit<DataSummarizationConfig, 'titlesFormatter' | 'valuesFormatter'>\n> & {\n titlesFormatter?: (key: string | number | null) => string | undefined;\n valuesFormatter?: (value: unknown, key: string | number | null) => string | undefined;\n};\n\nexport const makeDataHintsContainer = (): DataStructureHints => ({\n fields: {\n verticalAxes: new Set(),\n horizontalAxes: new Set(),\n valueAxes: new Set(),\n values: new Set(),\n },\n groups: new Set(),\n axesTitle: {\n vertical: null,\n horizontal: null,\n },\n titles: {\n verticalAxes: {},\n getVerticalAxesTitle: null,\n horizontalAxes: {},\n getHorizontalAxesTitle: null,\n valuesAxes: {},\n getValueAxesTitle: null,\n },\n grid: {\n verticalAxes: null,\n horizontalAxes: null,\n },\n dataType: null,\n pointsDensity: null,\n});\n\nexport const makeDataHintsHandlers = (mutableContainer: DataStructureHints) => {\n const handler = {\n specifyDataRowFields: (x?: string, y?: string, value?: string) => {\n if (y) mutableContainer.fields.verticalAxes.add(y);\n if (x) mutableContainer.fields.horizontalAxes.add(x);\n if (value) mutableContainer.fields.valueAxes.add(value);\n },\n setupGrid: (direction: 'vertical' | 'horizontal', size: number) => {\n if (direction === 'horizontal') {\n mutableContainer.grid.horizontalAxes = size;\n } else if (direction === 'vertical') {\n mutableContainer.grid.verticalAxes = size;\n }\n },\n establishDataType: (dataType: SerializableDataType) => {\n mutableContainer.dataType = dataType;\n },\n describeValueEntity: (dataKey: string | number, readableName: string) => {\n mutableContainer.fields.values.add(dataKey);\n handler.labelKey('value', dataKey, readableName);\n },\n describeGroupedValues: (groupKey: string | number, dataKey: string | number) => {\n mutableContainer.groups.add(groupKey);\n mutableContainer.fields.values.add(dataKey);\n },\n labelKey: (\n axes: 'vertical' | 'horizontal' | 'value',\n dataKey: string | number,\n label: string,\n ) => {\n if (axes === 'vertical') mutableContainer.titles.verticalAxes[dataKey] = label;\n if (axes === 'horizontal') mutableContainer.titles.horizontalAxes[dataKey] = label;\n if (axes === 'value') mutableContainer.titles.valuesAxes[dataKey] = label;\n },\n addKeyLabelGetter: (\n axes: 'vertical' | 'horizontal' | 'value',\n getter: (dataKey: string | number) => string,\n ) => {\n if (axes === 'vertical') mutableContainer.titles.getVerticalAxesTitle = getter;\n if (axes === 'horizontal') mutableContainer.titles.getHorizontalAxesTitle = getter;\n if (axes === 'value') mutableContainer.titles.getValueAxesTitle = getter;\n },\n setTitle: (describedDataAxes: 'vertical' | 'horizontal', title: string) => {\n if (\n typeof title === 'number' ||\n typeof title === 'bigint' ||\n (typeof title === 'object' && (title as any) instanceof Date)\n ) {\n title = String(title);\n }\n if (typeof title !== 'string') {\n title = reactToText(title);\n }\n if (describedDataAxes === 'horizontal') {\n mutableContainer.axesTitle.horizontal = title;\n } else if (describedDataAxes === 'vertical') {\n mutableContainer.axesTitle.vertical = title;\n }\n },\n setPointsDensity: (horizontalAxes: number, verticalAxes: number) => {\n mutableContainer.pointsDensity = { verticalAxes, horizontalAxes };\n },\n };\n return handler;\n};\n\nexport type DataHintsHandler = ReturnType<typeof makeDataHintsHandlers>;\n\nexport const makeDataSummarizationConfig = (\n config?: PartialDataSummarizationConfig,\n): DataSummarizationConfig => ({\n clustersGridSize: undefined,\n maxListSymbols: 100,\n datesWithTime: undefined,\n clustersLimit: 5,\n valuesLimit: 5,\n groupsLimit: 5,\n dataType: undefined,\n disable: false,\n override: undefined,\n ...(config ?? {}),\n trendTangens: {\n static: 1 / 15,\n weak: 1 / 10,\n medium: 1 / 5,\n strong: Infinity,\n ...(config?.trendTangens ?? {}),\n },\n movingAverage: {\n longSize: undefined,\n shortSize: undefined,\n notableDiff: undefined,\n ...(config?.movingAverage ?? {}),\n },\n additionalFields: [...(config?.additionalFields ?? [])] as string[],\n});\n"],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
|
-
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
3
|
-
import _createForOfIteratorHelper from "@babel/runtime/helpers/createForOfIteratorHelper";
|
|
4
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
5
|
-
import _typeof from "@babel/runtime/helpers/typeof";
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
2
|
+
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
|
+
import _createForOfIteratorHelper from "@babel/runtime/helpers/esm/createForOfIteratorHelper";
|
|
4
|
+
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
5
|
+
import _typeof from "@babel/runtime/helpers/esm/typeof";
|
|
6
6
|
import { makeBezier } from './bezier';
|
|
7
7
|
var getPropByPath = function getPropByPath(obj, path) {
|
|
8
8
|
if (typeof path === 'number') path = String(path);
|
|
@@ -712,4 +712,4 @@ export var extractDataInsights = function extractDataInsights(data, hints, confi
|
|
|
712
712
|
entitiesCount: entitiesCount
|
|
713
713
|
};
|
|
714
714
|
};
|
|
715
|
-
//# sourceMappingURL=insights.
|
|
715
|
+
//# sourceMappingURL=insights.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insights.mjs","names":["makeBezier","getPropByPath","obj","path","String","split","i","length","_typeof","movingAverage","data","frame","result","Math","floor","ceil","startIndex","max","endIndex","min","part","slice","sum","reduce","item","value","push","extractDataInsights","hints","config","_config$dataType","_hints$axesTitle$vert","_ref","insights","dataType","dataRange","groupKeys","_toConsumableArray","groups","dataTitle","axesTitle","vertical","horizontal","entitiesCount","keysMap","Object","fromEntries","keys","Array","isArray","map","key","fields","horizontalAxes","size","verticalAxes","valueAxes","possibleGroupKeys","filter","allData","row","Set","_ref2","_hints$titles$getHori","_hints$titles$getHori2","_hints$titles","_ref3","_hints$titles$getHori3","_hints$titles$getHori4","_hints$titles2","firstRow","lastRow","possibleValueKeys","concat","valuesKeys","possibleLabelKeys","labelsKey","fromKey","toKey","from","titles","getHorizontalAxesTitle","call","to","_hints$axesTitle$vert2","label","_iterator","_createForOfIteratorHelper","_step","_loop","_config$movingAverage","_config$movingAverage2","_insights","valueKey","values","average","variance","pow","standardDeviation","sqrt","trendStrengths","frameSize","longMovingAverageSize","longSize","shortMovingAverageSize","shortSize","longMovingAverage","shortMovingAverage","table","_values$i","_longMovingAverage$i","_shortMovingAverage$i","NaN","toFixed","strengthsMap","growth","weak","medium","strong","reduction","recordTrend","_ref4","width","type","_hints$pointsDensity$","_hints$pointsDensity","_hints$pointsDensity$2","_hints$pointsDensity2","normalizedHeight","abs","pointsDensity","normalizedWidth","tang","trendStrength","trendTangens","strength","priority","change","dataKey","displayValue","generalTrend","valuesAxes","localTrends","_config$movingAverage3","notableDiff","lastSwitch","lastSwitchValue","shortWasAbove","_ref5","_hints$titles$getHori5","_hints$titles$getHori6","_hints$titles3","_ref6","_hints$titles$getHori7","_hints$titles$getHori8","_hints$titles4","shortIsAbove","diff","lastIndex","lastValue","apply","s","n","done","err","e","f","_ref7","_config$clustersGridS","_relativeSizeDistrivu","_insights2","guessedXKey","guessedYKey","guessedValueKey","guessedLabelKey","normalized","x","y","gridSize","clustersGridSize","grid","usedX","usedY","_iterator2","_step2","_step2$value","add","orderedX","sort","a","b","orderedY","distancesX","index","distancesY","avgDistanceX","avgDistanceY","belowAvgDistancesX","belowAvgDistancesY","betweenDistanceX","betweenDistanceY","avgDistance","Number","isNaN","takenY","takenX","_grid$gridX","_grid$gridX$gridY","_normalized$i","gridX","round","gridY","clusterId","members","clusters","_iterator3","parseInt","_step3","_iterator4","_step4","_clusters$grid$_x4$_y","_clusters$grid$_x4$_y2","pointHandled","_i4","_arr","xNeighbour","_i5","_arr2","_grid$xNeighbour","yNeighbour","undefined","clustersInsights","_hints$axesTitle$hori","_hints$axesTitle$vert3","_ref8","labels","_ref9","uniqueLabels","_ref10","_ref11","relativeSize","center","xLabel","yLabel","relativeSizeDistrivution","_defineProperty","Infinity","averageSize","cluster","smallerClusters","smallerSize","biggerClusters","biggerSize","normalizingSize","averageSizeNormalized","smallerSizeNormalized","biggerSizeNormalized","sizeMapBezier","weight","height","_i3","_clustersInsights","clustersInsight","mappedSize","_relativeSizeDistrivu2","sortedX","sortedY","_insights3","makeRowKey","join","allRowsIds","groupedValues","_groupedValues$key","_hints$titles$getHori9","_hints$titles$getHori10","_hints$titles5","groupKeyValue","groupName","rows","grouppingKeys","_fields","entries","_ref12","_group$groupName","_ref13","_slicedToArray","groupKey","group","_iterator5","_step5","_iterator6","_step6","_ref15","_hints$titles$valuesA","_hints$titles$getVert","_hints$titles6","field","getVerticalAxesTitle","averageValue","_ref14","_ref16","_hints$titles$valuesA2","_hints$titles$getValu","_hints$titles7","getValueAxesTitle","_insights4","_getPropByPath","fieldPath","startsWith","substring","_ref17","hasHighPriorityInsights","some","insight"],"sources":["../../../src/a11y/insights.ts"],"sourcesContent":["import { makeBezier } from './bezier';\nimport { DataStructureHints, DataSummarizationConfig } from './hints';\n\nexport type TrendNode = {\n type: 'trend';\n priority: number;\n change: {\n from: number;\n to: number;\n strength:\n | 'strong-reduction'\n | 'reduction'\n | 'weak-reduction'\n | 'static'\n | 'weak-growth'\n | 'growth'\n | 'strong-growth';\n };\n from: unknown;\n to: unknown;\n dataKey: string | number;\n label?: string;\n};\nexport type GeneralTrendNode = Omit<TrendNode, 'type'> & { type: 'general-trend' };\nexport type ComparisonNode = {\n type: 'comparison';\n label?: string;\n priority: number;\n values: {\n value: unknown;\n label: string;\n }[];\n};\n\ntype ClusterRelativeSize =\n | 'significantly-smaller'\n | 'smaller'\n | 'slightly-smaller'\n | 'average'\n | 'slightly-bigger'\n | 'bigger'\n | 'significantly-bigger';\nexport type ClusterNode = {\n type: 'cluster';\n priority: number;\n size: number;\n labels: unknown[];\n center: {\n x: number;\n xLabel: string | number;\n y: number;\n yLabel: string | number;\n };\n relativeSize: ClusterRelativeSize;\n};\nexport type Insight = TrendNode | GeneralTrendNode | ComparisonNode | ClusterNode;\n\nexport type SerializableDataType =\n | 'time-series'\n | 'points-cloud'\n | 'values-set'\n | 'grouped-values'\n | 'indexed-groups';\n\nexport type AnalyzedData = {\n insights: Insight[];\n dataType: SerializableDataType;\n dataRange: {\n from: string | number | Date;\n to: string | number | Date;\n label: string | number | null;\n }[];\n dataTitle: string | null;\n entitiesCount: number;\n};\n\nconst getPropByPath = (obj: any, path: number | string | string[]): unknown => {\n if (typeof path === 'number') path = String(path);\n if (typeof path === 'string') path = path.split('.');\n for (let i = 0; i < path.length; i++) {\n if (typeof obj !== 'object' || obj === null) return obj;\n obj = obj[path[i]];\n }\n return obj;\n};\n\nconst movingAverage = (data: number[], frame: number) => {\n const result: number[] = [];\n frame = Math.floor(frame) % 2 === data.length % 2 ? Math.floor(frame) : Math.ceil(frame);\n\n for (let i = 0; i < data.length; i++) {\n let startIndex = Math.max(0, i - Math.floor(frame / 2));\n let endIndex = Math.min(data.length, i + Math.ceil(frame / 2));\n startIndex = Math.min(startIndex, Math.max(0, endIndex - frame));\n endIndex = Math.max(endIndex, Math.min(data.length, startIndex + frame));\n const part = data.slice(startIndex, endIndex);\n const sum = part.reduce((sum, item) => sum + item, 0);\n const value = sum / part.length;\n result.push(value);\n }\n return result;\n};\n\nexport const extractDataInsights = (\n data: Record<string, unknown>[] | Record<string, unknown>,\n hints: DataStructureHints,\n config: DataSummarizationConfig,\n): AnalyzedData => {\n let insights: AnalyzedData['insights'] = [];\n let dataType: AnalyzedData['dataType'] | null = config.dataType ?? hints.dataType;\n const dataRange: AnalyzedData['dataRange'] = [];\n let groupKeys = [...hints.groups];\n const dataTitle: string | null = hints.axesTitle.vertical ?? hints.axesTitle.horizontal;\n let entitiesCount = 0;\n\n const keysMap = Object.fromEntries(\n Object.keys((Array.isArray(data) ? data[0] : data) ?? {}).map((key) => [key, true]),\n );\n\n if (!dataType) {\n if (\n ((keysMap['y'] || keysMap['y1'] || keysMap['y2']) &&\n keysMap['x'] &&\n (keysMap['value'] || keysMap['label'])) ||\n (hints.fields.horizontalAxes.size > 0 &&\n hints.fields.verticalAxes.size > 0 &&\n hints.fields.valueAxes.size > 0)\n ) {\n dataType = 'points-cloud';\n } else if (Array.isArray(data) && data.length > 6) {\n dataType = 'time-series';\n } else if (Array.isArray(data) && Object.keys(keysMap).length >= 3) {\n const possibleGroupKeys = Object.keys(keysMap)\n .filter((key) => typeof data[0][key] === 'string')\n .filter((key) => {\n const allData = data.map((row) => row[key]);\n return new Set(allData).size === allData.length;\n });\n if (possibleGroupKeys.length === 1) {\n groupKeys = possibleGroupKeys;\n dataType = 'grouped-values';\n } else {\n dataType = 'values-set';\n }\n } else {\n dataType = 'values-set';\n }\n }\n\n if (dataType === 'grouped-values' && groupKeys.length === 0) {\n dataType = 'values-set';\n }\n\n if (Array.isArray(data)) {\n if (dataType === 'time-series') {\n const firstRow = data[0];\n const lastRow = data[data.length - 1];\n const possibleValueKeys = ['y', 'value', ...hints.fields.verticalAxes];\n const valuesKeys = possibleValueKeys.filter((key) => keysMap[key]);\n\n const possibleLabelKeys = ['label', 'x', ...hints.fields.horizontalAxes];\n const labelsKey = possibleLabelKeys.filter((key) => keysMap[key])[0];\n\n entitiesCount = Object.keys(valuesKeys).length;\n\n const fromKey = firstRow[labelsKey];\n const toKey = lastRow[labelsKey];\n const from =\n hints.titles.getHorizontalAxesTitle?.(fromKey as string) ??\n hints.titles.horizontalAxes[fromKey as string] ??\n (fromKey as string);\n const to =\n hints.titles.getHorizontalAxesTitle?.(toKey as string) ??\n hints.titles.horizontalAxes[toKey as string] ??\n (toKey as string);\n\n if (entitiesCount > 0) {\n dataRange.push({ from, to, label: hints.axesTitle.vertical ?? labelsKey });\n }\n\n for (const valueKey of valuesKeys) {\n const values = (data as Record<string, number>[])\n .map((row) => row[valueKey])\n .filter((value) => typeof value !== 'symbol');\n const sum = values.reduce((sum, value) => sum + value, 0);\n const average = sum / values.length;\n const variance =\n (1 / values.length) *\n values.map((value) => (value - average) ** 2).reduce((sum, item) => sum + item, 0);\n const standardDeviation = Math.sqrt(variance);\n const trendStrengths = ['static', 'weak', 'medium', 'strong'] as const;\n\n const frameSize = Math.sqrt(values.length);\n const longMovingAverageSize = config.movingAverage.longSize ?? frameSize;\n const shortMovingAverageSize = config.movingAverage.shortSize ?? Math.sqrt(frameSize);\n const longMovingAverage = movingAverage(values, longMovingAverageSize);\n const shortMovingAverage =\n values.length < 8 ? values : movingAverage(values, shortMovingAverageSize);\n\n const table = [];\n for (const i in values) {\n table.push({\n value: (values[i] ?? NaN).toFixed(2),\n long: (longMovingAverage[i] ?? NaN).toFixed(2),\n short: (shortMovingAverage[i] ?? NaN).toFixed(2),\n });\n }\n\n const strengthsMap = {\n growth: {\n static: 'static',\n weak: 'weak-growth',\n medium: 'growth',\n strong: 'strong-growth',\n },\n reduction: {\n static: 'static',\n weak: 'weak-reduction',\n medium: 'reduction',\n strong: 'strong-reduction',\n },\n } as const;\n\n const recordTrend = ({\n value,\n width,\n label,\n type,\n }: {\n value: { from: number; to: number };\n width: number;\n label: { from: unknown; to: unknown; dataKey: string | number; displayValue?: string };\n type: 'general-trend' | 'trend';\n }): GeneralTrendNode | TrendNode | undefined => {\n for (let i = 0; i < trendStrengths.length; i++) {\n const normalizedHeight =\n Math.abs(value.from - value.to) / (hints.pointsDensity?.verticalAxes ?? 1);\n const normalizedWidth = width / (hints.pointsDensity?.horizontalAxes ?? 1);\n const tang = normalizedHeight / normalizedWidth;\n const trendStrength = trendStrengths[i];\n if (tang <= config.trendTangens[trendStrength] || i === trendStrengths.length - 1) {\n const strength =\n value.to > value.from\n ? strengthsMap.growth[trendStrength]\n : strengthsMap.reduction[trendStrength];\n\n return {\n type,\n priority: i,\n change: {\n from: value.from,\n to: value.to,\n strength,\n },\n from: label.from,\n to: label.to,\n dataKey: label.dataKey,\n label: label.displayValue,\n };\n }\n }\n };\n\n const generalTrend = recordTrend({\n type: 'general-trend',\n value: {\n from: shortMovingAverage[0],\n to: shortMovingAverage[shortMovingAverage.length - 1],\n },\n width: data.length,\n label: { from, to, dataKey: valueKey, displayValue: hints.titles.valuesAxes[valueKey] },\n })!;\n const localTrends: Insight[] = [];\n {\n const notableDiff = config.movingAverage.notableDiff ?? standardDeviation / 10;\n let lastSwitch = 0;\n let lastSwitchValue = shortMovingAverage[lastSwitch];\n let shortWasAbove = shortMovingAverage[0] > longMovingAverage[0];\n for (let i = 1; i < data.length; i++) {\n const shortIsAbove = shortMovingAverage[i] > longMovingAverage[i];\n const diff = Math.abs(shortMovingAverage[i] - longMovingAverage[i]);\n\n if (shortIsAbove === shortWasAbove) continue;\n if (diff < notableDiff) continue;\n if (i === 0 && lastSwitch === data.length - 1) continue;\n if (i === data.length - 1 && lastSwitch === 0) continue;\n i = Math.min(i, data.length - 1);\n\n const fromKey = data[lastSwitch][labelsKey];\n const toKey = data[i][labelsKey];\n const from =\n hints.titles.getHorizontalAxesTitle?.(fromKey as string) ??\n hints.titles.horizontalAxes[fromKey as string] ??\n fromKey;\n const to =\n hints.titles.getHorizontalAxesTitle?.(toKey as string) ??\n hints.titles.horizontalAxes[toKey as string] ??\n toKey;\n localTrends.push(\n recordTrend({\n type: 'trend',\n value: {\n from: lastSwitchValue,\n to: shortMovingAverage[i],\n },\n width: i - lastSwitch,\n label: {\n from,\n to,\n dataKey: valueKey,\n displayValue: hints.titles.valuesAxes[valueKey],\n },\n })!,\n );\n lastSwitch = i;\n lastSwitchValue = shortMovingAverage[lastSwitch];\n shortWasAbove = shortIsAbove;\n }\n\n if (lastSwitch !== 0) {\n const lastIndex = shortMovingAverage.length - 1;\n const lastValue = shortMovingAverage[lastIndex];\n if (Math.abs(lastSwitchValue - lastValue) > notableDiff) {\n localTrends.push(\n recordTrend({\n type: 'trend',\n value: {\n from: lastSwitchValue,\n to: lastValue,\n },\n width: lastIndex - lastSwitch,\n label: {\n from: data[lastSwitch][labelsKey],\n to: data[lastIndex][labelsKey],\n dataKey: valueKey,\n displayValue: hints.titles.valuesAxes[valueKey],\n },\n })!,\n );\n }\n }\n }\n insights.push(generalTrend);\n insights.push(...localTrends);\n }\n } else if (dataType === 'points-cloud') {\n const guessedXKey = [...hints.fields.horizontalAxes.values(), 'x'][0];\n const guessedYKey = [...hints.fields.verticalAxes.values(), 'y'][0];\n const guessedValueKey = [...hints.fields.valueAxes.values(), 'value'][0];\n const guessedLabelKey = keysMap['label'] ? 'label' : guessedValueKey;\n const normalized = data.map((row) => ({\n x: row[guessedXKey] as number,\n y: row[guessedYKey] as number,\n label: row[guessedLabelKey],\n value: row[guessedValueKey] as number,\n }));\n let gridSize =\n config.clustersGridSize ?? hints.grid.verticalAxes ?? hints.grid.horizontalAxes;\n if (!gridSize) {\n const usedX = new Set<number>();\n const usedY = new Set<number>();\n for (const { x, y } of normalized) {\n usedX.add(x);\n usedY.add(y);\n }\n const orderedX = [...usedX].sort((a, b) => a - b);\n const orderedY = [...usedY].sort((a, b) => a - b);\n const distancesX = orderedX.slice(0, -1).map((x, index) => orderedX[index + 1] - x);\n const distancesY = orderedY.slice(0, -1).map((y, index) => orderedY[index + 1] - y);\n const avgDistanceX = distancesX.reduce((sum, x) => sum + x, 0) / distancesX.length;\n const avgDistanceY = distancesY.reduce((sum, y) => sum + y, 0) / distancesY.length;\n const belowAvgDistancesX = distancesX.filter((x) => x < avgDistanceX);\n const belowAvgDistancesY = distancesY.filter((y) => y < avgDistanceY);\n const betweenDistanceX =\n belowAvgDistancesX.reduce((sum, x) => sum + x, 0) / belowAvgDistancesX.length;\n const betweenDistanceY =\n belowAvgDistancesY.reduce((sum, y) => sum + y, 0) / belowAvgDistancesY.length;\n let avgDistance = 0;\n if (!Number.isNaN(betweenDistanceX) && !Number.isNaN(betweenDistanceY)) {\n avgDistance = (betweenDistanceX + betweenDistanceY) / 2;\n } else if (!Number.isNaN(betweenDistanceX)) {\n avgDistance = betweenDistanceX;\n } else if (!Number.isNaN(betweenDistanceY)) {\n avgDistance = betweenDistanceY;\n } else {\n avgDistance = (avgDistanceX + avgDistanceY) / 2;\n }\n gridSize = Math.sqrt(Math.sqrt(avgDistance));\n }\n\n const grid: {\n [x: string]: { [y: string]: { clusterId: string; members: typeof normalized } };\n } = {};\n const takenY = new Set<number>();\n const takenX = new Set<number>();\n for (let i = 0; i < normalized.length; i++) {\n const { x, y } = normalized[i];\n const gridX = Math.round(x / gridSize!);\n const gridY = Math.round(y / gridSize!);\n takenY.add(y);\n takenX.add(x);\n grid[gridX] = grid[gridX] ?? {};\n grid[gridX][gridY] = grid[gridX][gridY] ?? { clusterId: `${gridX}_${gridY}`, members: [] };\n grid[gridX][gridY].members.push(normalized[i]);\n }\n const clusters: { [clusterId: string]: typeof normalized } = {};\n for (const x of Object.keys(grid).map((x) => parseInt(x, 10))) {\n for (const y of Object.keys(grid[x]).map((y) => parseInt(y, 10))) {\n let pointHandled = false;\n for (const xNeighbour of [x - 1, x, x + 1]) {\n for (const yNeighbour of [y - 1, y, y + 1]) {\n if (xNeighbour === undefined || yNeighbour === undefined) continue;\n if (xNeighbour === x && yNeighbour === y) continue;\n if (!grid[xNeighbour]?.[yNeighbour]) continue;\n pointHandled = true;\n grid[x][y].clusterId = grid[xNeighbour][yNeighbour].clusterId;\n break;\n }\n if (pointHandled) break;\n }\n clusters[grid[x][y].clusterId] = clusters[grid[x][y].clusterId] ?? [];\n clusters[grid[x][y].clusterId].push(...grid[x][y].members);\n }\n }\n const clustersInsights: ClusterNode[] = [];\n for (const clusterId in clusters) {\n const size = clusters[clusterId].reduce((sum, { value }) => sum + (value ?? 1), 0);\n const labels = [...clusters[clusterId]]\n .sort((a, b) => b.value - a.value)\n .map(({ label }) => label)\n .filter((label) => label !== undefined);\n const uniqueLabels = [...new Set(labels)];\n const x =\n clusters[clusterId].reduce((sum, { x }) => sum + x, 0) / clusters[clusterId].length;\n const y =\n clusters[clusterId].reduce((sum, { y }) => sum + y, 0) / clusters[clusterId].length;\n\n clustersInsights.push({\n type: 'cluster',\n priority: 1,\n size,\n labels: uniqueLabels,\n relativeSize: 'average',\n center: {\n x,\n y,\n xLabel: hints.axesTitle.horizontal ?? guessedXKey,\n yLabel: hints.axesTitle.vertical ?? guessedYKey,\n },\n });\n }\n entitiesCount = Object.keys(clusters).length;\n clustersInsights.sort((a, b) => b.size - a.size);\n\n const relativeSizeDistrivution = {\n ['significantly-bigger']: { max: Infinity, min: 0.85 },\n ['bigger']: { min: 0.7, max: 0.85 },\n ['slightly-bigger']: { min: 0.6, max: 0.7 },\n ['average']: { min: 0.4, max: 0.6 },\n ['slightly-smaller']: { max: 0.4, min: 0.3 },\n ['smaller']: { min: 0.15, max: 0.3 },\n ['significantly-smaller']: { min: -Infinity, max: 0.15 },\n } as { [key in ClusterRelativeSize]: { min: number; max: number } };\n const averageSize =\n clustersInsights.reduce((sum, cluster) => sum + cluster.size, 0) / clustersInsights.length;\n const smallerClusters = clustersInsights.filter((cluster) => cluster.size < averageSize);\n const smallerSize =\n smallerClusters.reduce((sum, cluster) => sum + cluster.size, 0) / smallerClusters.length;\n const biggerClusters = clustersInsights.filter((cluster) => cluster.size > averageSize);\n const biggerSize =\n biggerClusters.reduce((sum, cluster) => sum + cluster.size, 0) / biggerClusters.length;\n\n const normalizingSize = averageSize * 2;\n let averageSizeNormalized = averageSize / normalizingSize;\n let smallerSizeNormalized = smallerSize / normalizingSize;\n let biggerSizeNormalized = biggerSize / normalizingSize;\n\n smallerSizeNormalized = !Number.isNaN(smallerSizeNormalized) ? smallerSizeNormalized : 0.25;\n averageSizeNormalized = !Number.isNaN(averageSizeNormalized) ? averageSizeNormalized : 0.5;\n biggerSizeNormalized = !Number.isNaN(biggerSizeNormalized) ? biggerSizeNormalized : 0.75;\n\n const sizeMapBezier = makeBezier(\n [\n { x: 0, y: 0 },\n { x: 0.25, y: smallerSizeNormalized, weight: 10 },\n { x: 0.5, y: averageSizeNormalized },\n { x: 0.75, y: biggerSizeNormalized, weight: 10 },\n { x: 1, y: 1 },\n ],\n { width: 1, height: 1 },\n );\n\n for (const clustersInsight of clustersInsights) {\n const { size } = clustersInsight;\n const mappedSize = sizeMapBezier(size / normalizingSize);\n for (const relativeSize in relativeSizeDistrivution) {\n const { min, max } = relativeSizeDistrivution[relativeSize as ClusterRelativeSize];\n if (mappedSize > min && mappedSize <= max) {\n clustersInsight.relativeSize = relativeSize as ClusterRelativeSize;\n break;\n }\n }\n }\n\n insights.push(...clustersInsights);\n\n if (hints.axesTitle.horizontal) {\n const sortedX = [...takenX].sort((a, b) => a - b);\n dataRange.push({\n from: sortedX[0] as any,\n to: sortedX[sortedX.length - 1] as any,\n label: hints.axesTitle.horizontal,\n });\n }\n if (hints.axesTitle.vertical) {\n const sortedY = [...takenY].sort((a, b) => a - b);\n dataRange.push({\n from: sortedY[0] as any,\n to: sortedY[sortedY.length - 1] as any,\n label: hints.axesTitle.vertical,\n });\n }\n } else if (dataType === 'grouped-values') {\n const makeRowKey = (row: Record<string, unknown>) =>\n groupKeys.map((key, index) => `${index}-${getPropByPath(row, key)}`).join('-');\n const allRowsIds = data.map(makeRowKey);\n const groupedValues: {\n [groupId: string]: { groupName: string; rows: Record<string, unknown>[] };\n } = {};\n for (let i = 0; i < data.length; i++) {\n const row = data[i];\n const key = allRowsIds[i];\n const groupKeyValue = getPropByPath(row, groupKeys[0]) as string;\n groupedValues[key] = groupedValues[key] ?? {\n groupName: hints.titles.getHorizontalAxesTitle?.(groupKeyValue) ?? groupKeyValue,\n rows: [],\n };\n groupedValues[key].rows.push(row);\n }\n\n let fields = [...hints.fields.values];\n const grouppingKeys = Object.fromEntries(groupKeys.map((key) => [key, true]));\n if (fields.length === 0) {\n fields.push(...Object.keys(keysMap));\n }\n fields = fields.filter((key) => !grouppingKeys[key]);\n const groups = Object.entries(groupedValues).map(([groupKey, group]) => {\n const values: { label: string; value: unknown }[] = [];\n for (const row of group.rows) {\n for (const field of fields) {\n values.push({\n label:\n hints.titles.valuesAxes[field] ??\n hints.titles.getVerticalAxesTitle?.(field) ??\n (field as string),\n value: getPropByPath(row, field),\n });\n }\n }\n\n values.sort((a, b) => {\n if (typeof a.value !== 'number' || typeof b.value !== 'number') return 0;\n return b.value - a.value;\n });\n const averageValue =\n values.reduce((sum, { value }) => sum + (value as number), 0) / values.length;\n return {\n label: group.groupName ?? groupKey,\n values,\n averageValue: !Number.isNaN(averageValue) ? averageValue : undefined,\n };\n });\n\n groups.sort((a, b) => {\n if (typeof a.averageValue !== 'number' || typeof b.averageValue !== 'number') return 0;\n return b.averageValue - a.averageValue;\n });\n entitiesCount = groups.length;\n insights.push(\n ...groups.map(\n (group) =>\n ({\n type: 'comparison',\n label: group.label,\n values: group.values,\n priority: 1,\n }) as ComparisonNode,\n ),\n );\n }\n }\n if (dataType === 'values-set') {\n const fields = [...hints.fields.values];\n if (fields.length === 0) {\n fields.push(...Object.keys(keysMap));\n }\n const values = fields.map((field) => ({\n label:\n hints.titles.valuesAxes[field] ??\n hints.titles.getValueAxesTitle?.(field) ??\n (field as string),\n value: getPropByPath(data, field),\n }));\n entitiesCount = values.length;\n values.sort((a, b) => {\n if (typeof a.value !== 'number' || typeof b.value !== 'number') return 0;\n return b.value - a.value;\n });\n insights.push({\n type: 'comparison',\n values,\n priority: 1,\n });\n }\n if (dataType === 'indexed-groups') {\n const groups = [...hints.groups].map((groupKey) => {\n const values = [...hints.fields.values]\n .filter((fieldPath) => String(fieldPath).startsWith(`${groupKey}.`))\n .map((fieldPath) => ({\n label: getPropByPath(\n hints.titles.valuesAxes,\n String(fieldPath).substring(String(groupKey).length + 1),\n ),\n value: getPropByPath(data, String(fieldPath)),\n }));\n\n values.sort((a, b) => {\n if (typeof a.value !== 'number' || typeof b.value !== 'number') return 0;\n return b.value - a.value;\n });\n const averageValue =\n values.reduce((sum, { value }) => sum + (value as number), 0) / values.length;\n return {\n label: getPropByPath(hints.titles.valuesAxes, String(groupKey)) ?? groupKey,\n values,\n averageValue: !Number.isNaN(averageValue) ? averageValue : undefined,\n };\n });\n\n groups.sort((a, b) => {\n if (typeof a.averageValue !== 'number' || typeof b.averageValue !== 'number') return 0;\n return b.averageValue - a.averageValue;\n });\n entitiesCount = groups.length;\n insights.push(\n ...groups.map(\n (group) =>\n ({\n type: 'comparison',\n label: group.label,\n values: group.values,\n priority: 1,\n }) as ComparisonNode,\n ),\n );\n }\n\n const hasHighPriorityInsights = insights.some((insight) => insight.priority > 0);\n if (hasHighPriorityInsights) {\n insights = insights.filter((insight) => insight.priority > 0);\n } else {\n insights = insights.slice(0, 1);\n }\n\n return { insights, dataType: dataType!, dataRange, dataTitle, entitiesCount };\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"intl.mjs","names":["createIntl","createIntlCache","normalizeLocale","messagesCache","intlCache","getIntl","locale","translations","availableLocales","_normalizeLocale","defaultLocale","messages"],"sources":["../../../src/a11y/intl.ts"],"sourcesContent":["import { createIntl, createIntlCache, IntlShape } from '@formatjs/intl';\nimport { normalizeLocale } from './locale';\nimport type { localizedMessages as localizedMessagesTypeBase } from './translations/view/__intergalactic-dynamic-locales';\n\nexport type Intl = IntlShape<typeof localizedMessagesTypeBase['en']>;\nconst messagesCache = createIntlCache();\nconst intlCache: { [locale: string]: ReturnType<typeof createIntl> } = {};\nexport const getIntl = (\n locale: string,\n translations: { [messageId: string]: string },\n availableLocales: { [localeId: string]: any },\n) => {\n locale = normalizeLocale(locale, availableLocales) ?? 'en';\n intlCache[locale] = createIntl(\n {\n locale: locale,\n defaultLocale: 'en',\n messages: translations || {},\n },\n messagesCache,\n );\n return intlCache[locale] as Intl;\n};\n"],"mappings":"AAAA,SAASA,UAAU,EAAEC,eAAe,QAAmB,gBAAgB;AACvE,SAASC,eAAe,QAAQ,UAAU;AAI1C,IAAMC,aAAa,GAAGF,eAAe,EAAE;AACvC,IAAMG,SAA8D,GAAG,CAAC,CAAC;AACzE,OAAO,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAClBC,MAAc,EACdC,YAA6C,EAC7CC,gBAA6C,EAC1C;EAAA,IAAAC,gBAAA;EACHH,MAAM,IAAAG,gBAAA,GAAGP,eAAe,CAACI,MAAM,EAAEE,gBAAgB,CAAC,cAAAC,gBAAA,cAAAA,gBAAA,GAAI,IAAI;EAC1DL,SAAS,CAACE,MAAM,CAAC,GAAGN,UAAU,CAC5B;IACEM,MAAM,EAAEA,MAAM;IACdI,aAAa,EAAE,IAAI;IACnBC,QAAQ,EAAEJ,YAAY,IAAI,CAAC;EAC7B,CAAC,EACDJ,aAAa,CACd;EACD,OAAOC,SAAS,CAACE,MAAM,CAAC;AAC1B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
2
2
|
export var normalizeLocale = function normalizeLocale(providedLocale) {
|
|
3
3
|
var _ref, _providedLocale, _globalThis$navigator;
|
|
4
4
|
var translations = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
@@ -38,4 +38,4 @@ var isAvailableLocale = function isAvailableLocale(locale, translations) {
|
|
|
38
38
|
}
|
|
39
39
|
return localeBase;
|
|
40
40
|
};
|
|
41
|
-
//# sourceMappingURL=locale.
|
|
41
|
+
//# sourceMappingURL=locale.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"locale.mjs","names":["normalizeLocale","providedLocale","_ref","_providedLocale","_globalThis$navigator","translations","arguments","length","undefined","translationNames","locale","toLowerCase","isAvailableLocale","globalThis","navigator","language","includes","_locale$split","split","_locale$split2","_slicedToArray","localeBase","availableLocales","Object","keys","join","process","env","NODE_ENV","console","error","concat","_locale$split3","_locale$split4"],"sources":["../../../src/a11y/locale.ts"],"sourcesContent":["export const normalizeLocale = (\n providedLocale: string,\n translations: { [locale: string]: {} } = {},\n) => {\n const translationNames: { [lowercasedName: string]: string } = {};\n for (const locale in translations) {\n translationNames[locale.toLowerCase()] = locale;\n }\n providedLocale =\n providedLocale ?? isAvailableLocale(globalThis?.navigator?.language, translations) ?? 'en';\n let locale = providedLocale.toLowerCase();\n if (locale.includes('-') && !translations[locale]) {\n const [localeBase] = locale.split('-');\n if (translations[localeBase]) {\n locale = localeBase;\n }\n }\n locale = translationNames[locale] ? translationNames[locale] : locale;\n if (!translations[locale]) {\n const availableLocales = Object.keys(translations).join(', ');\n if (process.env.NODE_ENV !== 'production') {\n console.error(\n `[Intergalactic @semcore/d3-charts a11y module]: No locale \"${providedLocale}\" available. Available locales: ${availableLocales}`,\n );\n }\n return null;\n }\n return locale;\n};\n\nconst isAvailableLocale = (locale: string, translations: { [locale: string]: {} }) => {\n if (typeof locale !== 'string') {\n return undefined;\n }\n const [localeBase] = locale.split('-');\n if (!translations[localeBase]) {\n return undefined;\n }\n return localeBase;\n};\n"],"mappings":";AAAA,OAAO,IAAMA,eAAe,GAAG,SAAlBA,eAAeA,CAC1BC,cAAsB,EAEnB;EAAA,IAAAC,IAAA,EAAAC,eAAA,EAAAC,qBAAA;EAAA,IADHC,YAAsC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EAE3C,IAAMG,gBAAsD,GAAG,CAAC,CAAC;EACjE,KAAK,IAAMC,OAAM,IAAIL,YAAY,EAAE;IACjCI,gBAAgB,CAACC,OAAM,CAACC,WAAW,EAAE,CAAC,GAAGD,OAAM;EACjD;EACAT,cAAc,IAAAC,IAAA,IAAAC,eAAA,GACZF,cAAc,cAAAE,eAAA,cAAAA,eAAA,GAAIS,iBAAiB,CAACC,UAAU,aAAVA,UAAU,wBAAAT,qBAAA,GAAVS,UAAU,CAAEC,SAAS,cAAAV,qBAAA,uBAArBA,qBAAA,CAAuBW,QAAQ,EAAEV,YAAY,CAAC,cAAAH,IAAA,cAAAA,IAAA,GAAI,IAAI;EAC5F,IAAIQ,MAAM,GAAGT,cAAc,CAACU,WAAW,EAAE;EACzC,IAAID,MAAM,CAACM,QAAQ,CAAC,GAAG,CAAC,IAAI,CAACX,YAAY,CAACK,MAAM,CAAC,EAAE;IACjD,IAAAO,aAAA,GAAqBP,MAAM,CAACQ,KAAK,CAAC,GAAG,CAAC;MAAAC,cAAA,GAAAC,cAAA,CAAAH,aAAA;MAA/BI,UAAU,GAAAF,cAAA;IACjB,IAAId,YAAY,CAACgB,UAAU,CAAC,EAAE;MAC5BX,MAAM,GAAGW,UAAU;IACrB;EACF;EACAX,MAAM,GAAGD,gBAAgB,CAACC,MAAM,CAAC,GAAGD,gBAAgB,CAACC,MAAM,CAAC,GAAGA,MAAM;EACrE,IAAI,CAACL,YAAY,CAACK,MAAM,CAAC,EAAE;IACzB,IAAMY,gBAAgB,GAAGC,MAAM,CAACC,IAAI,CAACnB,YAAY,CAAC,CAACoB,IAAI,CAAC,IAAI,CAAC;IAC7D,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;MACzCC,OAAO,CAACC,KAAK,gEAAAC,MAAA,CACmD9B,cAAc,uCAAA8B,MAAA,CAAmCT,gBAAgB,EAChI;IACH;IACA,OAAO,IAAI;EACb;EACA,OAAOZ,MAAM;AACf,CAAC;AAED,IAAME,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIF,MAAc,EAAEL,YAAsC,EAAK;EACpF,IAAI,OAAOK,MAAM,KAAK,QAAQ,EAAE;IAC9B,OAAOF,SAAS;EAClB;EACA,IAAAwB,cAAA,GAAqBtB,MAAM,CAACQ,KAAK,CAAC,GAAG,CAAC;IAAAe,cAAA,GAAAb,cAAA,CAAAY,cAAA;IAA/BX,UAAU,GAAAY,cAAA;EACjB,IAAI,CAAC5B,YAAY,CAACgB,UAAU,CAAC,EAAE;IAC7B,OAAOb,SAAS;EAClB;EACA,OAAOa,UAAU;AACnB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
2
|
-
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
3
|
-
import _createForOfIteratorHelper from "@babel/runtime/helpers/createForOfIteratorHelper";
|
|
4
|
-
import _typeof from "@babel/runtime/helpers/typeof";
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
2
|
+
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
|
|
3
|
+
import _createForOfIteratorHelper from "@babel/runtime/helpers/esm/createForOfIteratorHelper";
|
|
4
|
+
import _typeof from "@babel/runtime/helpers/esm/typeof";
|
|
5
5
|
import { getIntl } from './intl';
|
|
6
6
|
var formatLimitedSizeList = function formatLimitedSizeList(items, intl) {
|
|
7
7
|
var maxFinalStringLength = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 100;
|
|
@@ -382,4 +382,4 @@ export var serialize = function serialize(_ref4, _ref5, _ref6) {
|
|
|
382
382
|
}
|
|
383
383
|
return null;
|
|
384
384
|
};
|
|
385
|
-
//# sourceMappingURL=serialize.
|
|
385
|
+
//# sourceMappingURL=serialize.mjs.map
|