intergalactic 15.75.2 → 15.76.0
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 +34 -0
- package/accordion/lib/cjs/Accordion.js +7 -7
- package/accordion/lib/es6/Accordion.js +7 -7
- package/animation/lib/cjs/Animation.js +11 -11
- package/animation/lib/cjs/Collapse.js +28 -28
- package/animation/lib/cjs/FadeInOut.js +28 -28
- package/animation/lib/cjs/Scale.js +28 -28
- package/animation/lib/cjs/Slide.js +28 -28
- package/animation/lib/cjs/Transform.js +28 -28
- package/animation/lib/es6/Animation.js +11 -11
- package/animation/lib/es6/Collapse.js +28 -28
- package/animation/lib/es6/FadeInOut.js +28 -28
- package/animation/lib/es6/Scale.js +28 -28
- package/animation/lib/es6/Slide.js +28 -28
- package/animation/lib/es6/Transform.js +28 -28
- package/badge/lib/cjs/Badge.js +6 -6
- package/badge/lib/es6/Badge.js +6 -6
- package/base-trigger/lib/cjs/BaseTrigger.js +18 -18
- package/base-trigger/lib/cjs/ButtonTrigger.js +3 -3
- package/base-trigger/lib/cjs/FilterTrigger.js +7 -7
- package/base-trigger/lib/cjs/LinkTrigger.js +12 -12
- package/base-trigger/lib/cjs/style/filter-trigger.shadow.css +2 -2
- package/base-trigger/lib/es6/BaseTrigger.js +18 -18
- package/base-trigger/lib/es6/ButtonTrigger.js +3 -3
- package/base-trigger/lib/es6/FilterTrigger.js +7 -7
- package/base-trigger/lib/es6/LinkTrigger.js +12 -12
- package/base-trigger/lib/es6/style/filter-trigger.shadow.css +2 -2
- package/breadcrumbs/lib/cjs/Breadcrumbs.js +6 -6
- package/breadcrumbs/lib/es6/Breadcrumbs.js +6 -6
- package/button/lib/cjs/Button.js +26 -26
- package/button/lib/es6/Button.js +26 -26
- package/card/lib/cjs/Card.js +8 -8
- package/card/lib/es6/Card.js +8 -8
- package/carousel/lib/cjs/Carousel.js +19 -19
- package/carousel/lib/es6/Carousel.js +19 -19
- package/checkbox/lib/cjs/Checkbox.js +18 -18
- package/checkbox/lib/es6/Checkbox.js +18 -18
- package/color-picker/lib/cjs/ColorPicker.js +23 -23
- package/color-picker/lib/cjs/PaletteManager.js +23 -23
- package/color-picker/lib/cjs/components/InputColor.js +23 -23
- package/color-picker/lib/es6/ColorPicker.js +23 -23
- package/color-picker/lib/es6/PaletteManager.js +23 -23
- package/color-picker/lib/es6/components/InputColor.js +23 -23
- package/components.json +73 -73
- package/counter/lib/cjs/Counter.js +10 -10
- package/counter/lib/es6/Counter.js +10 -10
- package/d3-chart/Plot.d.ts +4 -0
- package/d3-chart/a11y/DataAccessibilityTable.d.ts +11 -0
- package/d3-chart/a11y/hints.d.ts +6 -1
- package/d3-chart/a11y/serialize.d.ts +2 -2
- package/d3-chart/lib/cjs/Area.js +11 -11
- package/d3-chart/lib/cjs/Axis.js +14 -14
- package/d3-chart/lib/cjs/Bar.js +10 -10
- package/d3-chart/lib/cjs/Bubble.js +12 -12
- package/d3-chart/lib/cjs/Donut.js +9 -9
- package/d3-chart/lib/cjs/Dots.js +8 -8
- package/d3-chart/lib/cjs/HorizontalBar.js +10 -10
- package/d3-chart/lib/cjs/Hover.js +3 -3
- package/d3-chart/lib/cjs/Line.js +9 -9
- package/d3-chart/lib/cjs/Plot.js +3 -3
- package/d3-chart/lib/cjs/Radar.js +19 -19
- package/d3-chart/lib/cjs/RadialTree.js +11 -11
- package/d3-chart/lib/cjs/ReferenceLine.js +9 -9
- package/d3-chart/lib/cjs/ScatterPlot.js +9 -9
- package/d3-chart/lib/cjs/Tooltip.js +9 -9
- package/d3-chart/lib/cjs/Venn.js +9 -9
- package/d3-chart/lib/cjs/a11y/DataAccessibilityTable.js +116 -0
- package/d3-chart/lib/cjs/a11y/DataAccessibilityTable.js.map +1 -0
- package/d3-chart/lib/cjs/a11y/PlotA11yModule.js +2 -2
- package/d3-chart/lib/cjs/a11y/PlotA11yView.js +11 -90
- package/d3-chart/lib/cjs/a11y/PlotA11yView.js.map +1 -1
- package/d3-chart/lib/cjs/a11y/hints.js.map +1 -1
- package/d3-chart/lib/cjs/a11y/serialize.js +43 -30
- package/d3-chart/lib/cjs/a11y/serialize.js.map +1 -1
- package/d3-chart/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +17 -17
- package/d3-chart/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/d3-chart/lib/cjs/types/Plot.d.js.map +1 -1
- package/d3-chart/lib/es6/Area.js +11 -11
- package/d3-chart/lib/es6/Axis.js +14 -14
- package/d3-chart/lib/es6/Bar.js +10 -10
- package/d3-chart/lib/es6/Bubble.js +12 -12
- package/d3-chart/lib/es6/Donut.js +9 -9
- package/d3-chart/lib/es6/Dots.js +8 -8
- package/d3-chart/lib/es6/HorizontalBar.js +10 -10
- package/d3-chart/lib/es6/Hover.js +3 -3
- package/d3-chart/lib/es6/Line.js +9 -9
- package/d3-chart/lib/es6/Plot.js +3 -3
- package/d3-chart/lib/es6/Radar.js +19 -19
- package/d3-chart/lib/es6/RadialTree.js +11 -11
- package/d3-chart/lib/es6/ReferenceLine.js +9 -9
- package/d3-chart/lib/es6/ScatterPlot.js +9 -9
- package/d3-chart/lib/es6/Tooltip.js +9 -9
- package/d3-chart/lib/es6/Venn.js +9 -9
- package/d3-chart/lib/es6/a11y/DataAccessibilityTable.js +108 -0
- package/d3-chart/lib/es6/a11y/DataAccessibilityTable.js.map +1 -0
- package/d3-chart/lib/es6/a11y/PlotA11yModule.js +2 -2
- package/d3-chart/lib/es6/a11y/PlotA11yView.js +11 -90
- package/d3-chart/lib/es6/a11y/PlotA11yView.js.map +1 -1
- package/d3-chart/lib/es6/a11y/hints.js.map +1 -1
- package/d3-chart/lib/es6/a11y/serialize.js +41 -28
- package/d3-chart/lib/es6/a11y/serialize.js.map +1 -1
- package/d3-chart/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +17 -17
- package/d3-chart/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/d3-chart/lib/es6/types/Plot.d.js.map +1 -1
- package/d3-chart/lib/types/Plot.d.ts +4 -0
- package/d3-chart/lib/types/a11y/DataAccessibilityTable.d.ts +11 -0
- package/d3-chart/lib/types/a11y/hints.d.ts +6 -1
- package/d3-chart/lib/types/a11y/serialize.d.ts +2 -2
- package/data-table/lib/cjs/DataTable.js +35 -35
- package/data-table/lib/es6/DataTable.js +35 -35
- package/date-picker/index.d.ts +32 -14
- package/date-picker/lib/cjs/DatePicker.js +2 -0
- package/date-picker/lib/cjs/DatePicker.js.map +1 -1
- package/date-picker/lib/cjs/DateRangePicker.js +2 -0
- package/date-picker/lib/cjs/DateRangePicker.js.map +1 -1
- package/date-picker/lib/cjs/MonthPicker.js +2 -0
- package/date-picker/lib/cjs/MonthPicker.js.map +1 -1
- package/date-picker/lib/cjs/MonthRangePicker.js +2 -0
- package/date-picker/lib/cjs/MonthRangePicker.js.map +1 -1
- package/date-picker/lib/cjs/components/Calendar.js +21 -21
- package/date-picker/lib/cjs/components/DateRangeComparatorAbstract.js +31 -26
- package/date-picker/lib/cjs/components/DateRangeComparatorAbstract.js.map +1 -1
- package/date-picker/lib/cjs/components/InputTrigger.js +200 -73
- package/date-picker/lib/cjs/components/InputTrigger.js.map +1 -1
- package/date-picker/lib/cjs/components/PickerAbstract.js +27 -26
- package/date-picker/lib/cjs/components/PickerAbstract.js.map +1 -1
- package/date-picker/lib/cjs/components/RangePickerAbstract.js +27 -26
- package/date-picker/lib/cjs/components/RangePickerAbstract.js.map +1 -1
- package/date-picker/lib/cjs/index.d.js.map +1 -1
- package/date-picker/lib/cjs/style/date-picker.shadow.css +4 -0
- package/date-picker/lib/cjs/translations/en.json +5 -1
- package/date-picker/lib/es6/DatePicker.js +2 -0
- package/date-picker/lib/es6/DatePicker.js.map +1 -1
- package/date-picker/lib/es6/DateRangePicker.js +2 -0
- package/date-picker/lib/es6/DateRangePicker.js.map +1 -1
- package/date-picker/lib/es6/MonthPicker.js +2 -0
- package/date-picker/lib/es6/MonthPicker.js.map +1 -1
- package/date-picker/lib/es6/MonthRangePicker.js +2 -0
- package/date-picker/lib/es6/MonthRangePicker.js.map +1 -1
- package/date-picker/lib/es6/components/Calendar.js +21 -21
- package/date-picker/lib/es6/components/DateRangeComparatorAbstract.js +31 -26
- package/date-picker/lib/es6/components/DateRangeComparatorAbstract.js.map +1 -1
- package/date-picker/lib/es6/components/InputTrigger.js +200 -73
- package/date-picker/lib/es6/components/InputTrigger.js.map +1 -1
- package/date-picker/lib/es6/components/PickerAbstract.js +27 -26
- package/date-picker/lib/es6/components/PickerAbstract.js.map +1 -1
- package/date-picker/lib/es6/components/RangePickerAbstract.js +27 -26
- package/date-picker/lib/es6/components/RangePickerAbstract.js.map +1 -1
- package/date-picker/lib/es6/index.d.js.map +1 -1
- package/date-picker/lib/es6/style/date-picker.shadow.css +4 -0
- package/date-picker/lib/es6/translations/en.json +5 -1
- package/date-picker/lib/types/index.d.ts +32 -14
- package/divider/lib/cjs/Divider.js +9 -9
- package/divider/lib/es6/Divider.js +9 -9
- package/dot/lib/cjs/Dot.js +10 -10
- package/dot/lib/es6/Dot.js +10 -10
- package/drag-and-drop/lib/cjs/DragAndDrop.js +12 -12
- package/drag-and-drop/lib/es6/DragAndDrop.js +12 -12
- package/dropdown/lib/cjs/Dropdown.js +2 -2
- package/dropdown/lib/es6/Dropdown.js +2 -2
- package/dropdown-menu/index.d.ts +1 -0
- package/dropdown-menu/lib/cjs/DropdownMenu.js +80 -50
- package/dropdown-menu/lib/cjs/DropdownMenu.js.map +1 -1
- package/dropdown-menu/lib/cjs/index.d.js.map +1 -1
- package/dropdown-menu/lib/cjs/style/dropdown-menu.shadow.css +13 -0
- package/dropdown-menu/lib/cjs/styleScrollArea.js +6 -6
- package/dropdown-menu/lib/es6/DropdownMenu.js +82 -51
- package/dropdown-menu/lib/es6/DropdownMenu.js.map +1 -1
- package/dropdown-menu/lib/es6/index.d.js.map +1 -1
- package/dropdown-menu/lib/es6/style/dropdown-menu.shadow.css +13 -0
- package/dropdown-menu/lib/es6/styleScrollArea.js +6 -6
- package/dropdown-menu/lib/types/index.d.ts +1 -0
- package/ellipsis/lib/cjs/Ellipsis.js +10 -10
- package/ellipsis/lib/es6/Ellipsis.js +10 -10
- package/errors/lib/cjs/Error.js +9 -9
- package/errors/lib/es6/Error.js +9 -9
- package/feature-popover/lib/cjs/FeaturePopover.js +10 -10
- package/feature-popover/lib/es6/FeaturePopover.js +10 -10
- package/feedback-form/lib/cjs/FeedbackForm.js +7 -7
- package/feedback-form/lib/es6/FeedbackForm.js +7 -7
- package/flags/lib/cjs/Flags.js +3 -3
- package/flags/lib/es6/Flags.js +3 -3
- package/flags/lib/sprites/sprite@1x.css +256 -256
- package/flags/lib/sprites/sprite@2x.css +257 -257
- package/flex-box/lib/cjs/Box/useBox.js +3 -3
- package/flex-box/lib/cjs/Flex/useFlex.js +3 -3
- package/flex-box/lib/cjs/invalid-state-box/InvalidStateBox.js +2 -2
- package/flex-box/lib/es6/Box/useBox.js +3 -3
- package/flex-box/lib/es6/Flex/useFlex.js +3 -3
- package/flex-box/lib/es6/invalid-state-box/InvalidStateBox.js +2 -2
- package/format-text/lib/cjs/FormatText.js +5 -5
- package/format-text/lib/es6/FormatText.js +5 -5
- package/fullscreen-modal/lib/cjs/FullscreenModal.js +13 -13
- package/fullscreen-modal/lib/es6/FullscreenModal.js +13 -13
- package/grid/lib/cjs/Grid.js +114 -114
- package/grid/lib/es6/Grid.js +114 -114
- package/icon/color/Confluence/l/index.js +4 -4
- package/icon/color/Confluence/l/index.mjs +4 -4
- package/icon/color/Confluence/m/index.js +4 -4
- package/icon/color/Confluence/m/index.mjs +4 -4
- package/icon/color/MicrosoftOffice/l/index.js +10 -10
- package/icon/color/MicrosoftOffice/l/index.mjs +10 -10
- package/icon/color/MicrosoftOffice/m/index.js +10 -10
- package/icon/color/MicrosoftOffice/m/index.mjs +10 -10
- package/icon/lib/cjs/Icon.js +5 -5
- package/icon/lib/es6/Icon.js +5 -5
- package/icon/pay/Discover/l/index.js +1 -1
- package/icon/pay/Discover/l/index.mjs +1 -1
- package/icon/pay/Discover/m/index.js +1 -1
- package/icon/pay/Discover/m/index.mjs +1 -1
- package/icon/pay/JCB/l/index.js +10 -10
- package/icon/pay/JCB/l/index.mjs +10 -10
- package/icon/pay/JCB/m/index.js +10 -10
- package/icon/pay/JCB/m/index.mjs +10 -10
- package/icon/pay/Visa/l/index.js +2 -2
- package/icon/pay/Visa/l/index.mjs +2 -2
- package/icon/pay/Visa/m/index.js +2 -2
- package/icon/pay/Visa/m/index.mjs +2 -2
- package/illustration/lib/cjs/index.js +1 -1
- package/illustration/lib/es6/index.js +1 -1
- package/inline-edit/lib/cjs/InlineEdit.js +4 -4
- package/inline-edit/lib/es6/InlineEdit.js +4 -4
- package/inline-input/lib/cjs/InlineInput.js +18 -18
- package/inline-input/lib/es6/InlineInput.js +18 -18
- package/input/lib/cjs/Input.js +17 -17
- package/input/lib/es6/Input.js +17 -17
- package/input-mask/lib/cjs/InputMask.js +6 -6
- package/input-mask/lib/es6/InputMask.js +6 -6
- package/input-number/lib/cjs/InputNumber.js +9 -9
- package/input-number/lib/es6/InputNumber.js +9 -9
- package/input-tags/lib/cjs/InputTags.js +12 -12
- package/input-tags/lib/es6/InputTags.js +12 -12
- package/link/lib/cjs/Link.js +12 -12
- package/link/lib/es6/Link.js +12 -12
- package/mini-chart/lib/cjs/component/score/Donut.js +9 -9
- package/mini-chart/lib/cjs/component/score/Line.js +17 -17
- package/mini-chart/lib/cjs/component/trend/Bar.js +7 -7
- package/mini-chart/lib/cjs/component/trend/Line.js +7 -7
- package/mini-chart/lib/es6/component/score/Donut.js +9 -9
- package/mini-chart/lib/es6/component/score/Line.js +17 -17
- package/mini-chart/lib/es6/component/trend/Bar.js +7 -7
- package/mini-chart/lib/es6/component/trend/Line.js +7 -7
- package/modal/lib/cjs/Modal.js +9 -9
- package/modal/lib/es6/Modal.js +9 -9
- package/notice/lib/cjs/Notice.js +13 -13
- package/notice/lib/es6/Notice.js +13 -13
- package/notice-bubble/lib/cjs/NoticeBubble.js +12 -12
- package/notice-bubble/lib/es6/NoticeBubble.js +12 -12
- package/notice-global/lib/cjs/NoticeGlobal.js +11 -11
- package/notice-global/lib/es6/NoticeGlobal.js +11 -11
- package/package.json +1 -1
- package/pagination/lib/cjs/Pagination.js +10 -10
- package/pagination/lib/es6/Pagination.js +10 -10
- package/pills/lib/cjs/Pills.js +13 -13
- package/pills/lib/es6/Pills.js +13 -13
- package/popper/lib/cjs/Popper.js +49 -8
- package/popper/lib/cjs/Popper.js.map +1 -1
- package/popper/lib/es6/Popper.js +49 -8
- package/popper/lib/es6/Popper.js.map +1 -1
- package/product-head/lib/cjs/Info.js +4 -4
- package/product-head/lib/cjs/ProductHead.js +5 -5
- package/product-head/lib/cjs/Title.js +4 -4
- package/product-head/lib/es6/Info.js +4 -4
- package/product-head/lib/es6/ProductHead.js +5 -5
- package/product-head/lib/es6/Title.js +4 -4
- package/progress-bar/lib/cjs/ProgressBar.js +15 -15
- package/progress-bar/lib/es6/ProgressBar.js +15 -15
- package/radio/lib/cjs/Radio.js +16 -16
- package/radio/lib/es6/Radio.js +16 -16
- package/scroll-area/lib/cjs/ScrollArea.js +17 -17
- package/scroll-area/lib/cjs/ScrollBar.js +6 -6
- package/scroll-area/lib/es6/ScrollArea.js +17 -17
- package/scroll-area/lib/es6/ScrollBar.js +6 -6
- package/select/lib/cjs/InputSearch.js +6 -6
- package/select/lib/cjs/Select.js +8 -8
- package/select/lib/es6/InputSearch.js +6 -6
- package/select/lib/es6/Select.js +8 -8
- package/side-panel/lib/cjs/SidePanel.js +15 -15
- package/side-panel/lib/es6/SidePanel.js +15 -15
- package/skeleton/lib/cjs/Charts/Area.js +9 -9
- package/skeleton/lib/cjs/Charts/Bar.js +9 -9
- package/skeleton/lib/cjs/Charts/Bubble.js +9 -9
- package/skeleton/lib/cjs/Charts/Donut.js +9 -9
- package/skeleton/lib/cjs/Charts/Histogram.js +9 -9
- package/skeleton/lib/cjs/Charts/Line.js +9 -9
- package/skeleton/lib/cjs/Charts/RadialTree.js +9 -9
- package/skeleton/lib/cjs/Charts/ScatterPlot.js +9 -9
- package/skeleton/lib/cjs/Charts/Venn.js +9 -9
- package/skeleton/lib/cjs/Skeleton.js +8 -8
- package/skeleton/lib/es6/Charts/Area.js +9 -9
- package/skeleton/lib/es6/Charts/Bar.js +9 -9
- package/skeleton/lib/es6/Charts/Bubble.js +9 -9
- package/skeleton/lib/es6/Charts/Donut.js +9 -9
- package/skeleton/lib/es6/Charts/Histogram.js +9 -9
- package/skeleton/lib/es6/Charts/Line.js +9 -9
- package/skeleton/lib/es6/Charts/RadialTree.js +9 -9
- package/skeleton/lib/es6/Charts/ScatterPlot.js +9 -9
- package/skeleton/lib/es6/Charts/Venn.js +9 -9
- package/skeleton/lib/es6/Skeleton.js +8 -8
- package/slider/lib/cjs/Slider.js +7 -7
- package/slider/lib/es6/Slider.js +7 -7
- package/spin/lib/cjs/Spin.js +13 -13
- package/spin/lib/es6/Spin.js +13 -13
- package/spin-container/lib/cjs/SpinContainer.js +8 -8
- package/spin-container/lib/es6/SpinContainer.js +8 -8
- package/sticky/lib/cjs/Sticky.js +2 -2
- package/sticky/lib/es6/Sticky.js +2 -2
- package/switch/lib/cjs/Switch.js +21 -21
- package/switch/lib/es6/Switch.js +21 -21
- package/tab-line/lib/cjs/TabLine.js +13 -13
- package/tab-line/lib/es6/TabLine.js +13 -13
- package/tab-panel/lib/cjs/TabPanel.js +8 -8
- package/tab-panel/lib/es6/TabPanel.js +8 -8
- package/tag/lib/cjs/Tag.js +20 -20
- package/tag/lib/es6/Tag.js +20 -20
- package/textarea/lib/cjs/Textarea.js +14 -9
- package/textarea/lib/cjs/Textarea.js.map +1 -1
- package/textarea/lib/es6/Textarea.js +14 -9
- package/textarea/lib/es6/Textarea.js.map +1 -1
- package/time-picker/lib/cjs/TimePicker.js +12 -12
- package/time-picker/lib/es6/TimePicker.js +12 -12
- package/tooltip/lib/cjs/Tooltip.js +9 -9
- package/tooltip/lib/es6/Tooltip.js +9 -9
- package/typography/lib/cjs/Blockquote.js +4 -4
- package/typography/lib/cjs/Hint.js +7 -7
- package/typography/lib/cjs/List.js +5 -5
- package/typography/lib/cjs/Text.js +34 -34
- package/typography/lib/es6/Blockquote.js +4 -4
- package/typography/lib/es6/Hint.js +7 -7
- package/typography/lib/es6/List.js +5 -5
- package/typography/lib/es6/Text.js +34 -34
- package/utils/lib/components/invalid-state-pattern/InvalidStatePattern.js +2 -2
- package/utils/lib/components/invalid-state-pattern/InvalidStatePattern.mjs +2 -2
- package/utils/lib/enhances/keyboardFocusEnhance.d.ts +1 -1
- package/utils/lib/enhances/keyboardFocusEnhance.js +4 -3
- package/utils/lib/enhances/keyboardFocusEnhance.js.map +1 -1
- package/utils/lib/enhances/keyboardFocusEnhance.mjs +4 -3
- package/utils/lib/enhances/keyboardFocusEnhance.mjs.map +1 -1
- package/utils/lib/injectStyle.js +1 -1
- package/utils/lib/injectStyle.mjs +1 -1
- package/widget-empty/lib/cjs/WidgetEmpty.js +5 -5
- package/widget-empty/lib/es6/WidgetEmpty.js +5 -5
- package/wizard/lib/cjs/Wizard.js +11 -11
- package/wizard/lib/es6/Wizard.js +11 -11
@@ -0,0 +1,108 @@
|
|
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";
|
5
|
+
import React from 'react';
|
6
|
+
import { defaultValueFormatter } from './serialize';
|
7
|
+
export var DataAccessibilityTable = function DataAccessibilityTable(_ref) {
|
8
|
+
var id = _ref.id,
|
9
|
+
dataTableRef = _ref.dataTableRef,
|
10
|
+
data = _ref.data,
|
11
|
+
hints = _ref.hints,
|
12
|
+
config = _ref.config,
|
13
|
+
intl = _ref.intl;
|
14
|
+
var keys = React.useMemo(function () {
|
15
|
+
var _fromHints, _fromHints2, _fromHints3, _fromHints4, _fromHints5;
|
16
|
+
var fromHints = [];
|
17
|
+
(_fromHints = fromHints).push.apply(_fromHints, _toConsumableArray(hints.fields.verticalAxes));
|
18
|
+
(_fromHints2 = fromHints).push.apply(_fromHints2, _toConsumableArray(hints.fields.horizontalAxes));
|
19
|
+
(_fromHints3 = fromHints).push.apply(_fromHints3, _toConsumableArray(hints.fields.valueAxes));
|
20
|
+
(_fromHints4 = fromHints).push.apply(_fromHints4, _toConsumableArray(config.additionalFields));
|
21
|
+
(_fromHints5 = fromHints).push.apply(_fromHints5, _toConsumableArray(Object.keys(hints.fields.values)));
|
22
|
+
fromHints = _toConsumableArray(new Set(fromHints)).filter(function (key) {
|
23
|
+
return key in data[0];
|
24
|
+
});
|
25
|
+
if (fromHints.length === 0) {
|
26
|
+
data.forEach(function (row) {
|
27
|
+
var _fromHints6;
|
28
|
+
return (_fromHints6 = fromHints).push.apply(_fromHints6, _toConsumableArray(Object.keys(row)));
|
29
|
+
});
|
30
|
+
}
|
31
|
+
return _toConsumableArray(new Set(fromHints));
|
32
|
+
}, [data, hints]);
|
33
|
+
var duplicatedBaseKeys = React.useMemo(function () {
|
34
|
+
var baseKeys = keys.filter(function (key) {
|
35
|
+
return !hints.titles.valuesAxes[key];
|
36
|
+
}).map(function (key) {
|
37
|
+
if (hints.fields.verticalAxes.has(key) && hints.axesTitle.vertical) return [key, hints.axesTitle.vertical];
|
38
|
+
if (hints.fields.horizontalAxes.has(key) && hints.axesTitle.horizontal) return [key, hints.axesTitle.horizontal];
|
39
|
+
}).filter(function (entry) {
|
40
|
+
return entry !== undefined;
|
41
|
+
}).map(function (entry) {
|
42
|
+
return entry;
|
43
|
+
});
|
44
|
+
var doublicated = {};
|
45
|
+
var handled = {};
|
46
|
+
var _iterator = _createForOfIteratorHelper(baseKeys),
|
47
|
+
_step;
|
48
|
+
try {
|
49
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
50
|
+
var _step$value = _slicedToArray(_step.value, 2),
|
51
|
+
key = _step$value[0],
|
52
|
+
label = _step$value[1];
|
53
|
+
if (handled[label]) {
|
54
|
+
doublicated[key] = true;
|
55
|
+
doublicated[handled[label]] = true;
|
56
|
+
}
|
57
|
+
handled[label] = key;
|
58
|
+
}
|
59
|
+
} catch (err) {
|
60
|
+
_iterator.e(err);
|
61
|
+
} finally {
|
62
|
+
_iterator.f();
|
63
|
+
}
|
64
|
+
return doublicated;
|
65
|
+
}, [keys, hints]);
|
66
|
+
var renderTitle = React.useCallback(function (dataKey) {
|
67
|
+
var _config$titlesFormatt;
|
68
|
+
var formatted = (_config$titlesFormatt = config.titlesFormatter) === null || _config$titlesFormatt === void 0 ? void 0 : _config$titlesFormatt.call(config, dataKey);
|
69
|
+
if (formatted !== undefined) return formatted;
|
70
|
+
if (hints.titles.valuesAxes[dataKey]) return hints.titles.valuesAxes[dataKey];
|
71
|
+
if (!duplicatedBaseKeys[dataKey]) {
|
72
|
+
if (hints.fields.verticalAxes.has(dataKey) && hints.axesTitle.vertical) return hints.axesTitle.vertical;
|
73
|
+
if (hints.fields.horizontalAxes.has(dataKey) && hints.axesTitle.horizontal) return hints.axesTitle.horizontal;
|
74
|
+
}
|
75
|
+
return dataKey;
|
76
|
+
}, [data, hints, duplicatedBaseKeys, config]);
|
77
|
+
var formatValue = React.useCallback(function (value, row) {
|
78
|
+
var _config$valuesFormatt, _config$valuesFormatt2;
|
79
|
+
return (_config$valuesFormatt = (_config$valuesFormatt2 = config.valuesFormatter) === null || _config$valuesFormatt2 === void 0 ? void 0 : _config$valuesFormatt2.call(config, value, row)) !== null && _config$valuesFormatt !== void 0 ? _config$valuesFormatt : defaultValueFormatter(intl, value);
|
80
|
+
}, [intl, config]);
|
81
|
+
return /*#__PURE__*/React.createElement("table", {
|
82
|
+
id: "".concat(id, "-data-table"),
|
83
|
+
tabIndex: 0,
|
84
|
+
ref: dataTableRef
|
85
|
+
}, /*#__PURE__*/React.createElement("thead", null, /*#__PURE__*/React.createElement("tr", null, keys.map(function (key, index) {
|
86
|
+
return /*#__PURE__*/React.createElement("th", {
|
87
|
+
key: "".concat(key, "-").concat(index)
|
88
|
+
}, renderTitle(key));
|
89
|
+
}))), /*#__PURE__*/React.createElement("tbody", null, data.map(function (row, index) {
|
90
|
+
var key = "".concat(Object.values(row).filter(function (item) {
|
91
|
+
return _typeof(item) !== 'symbol';
|
92
|
+
}).join('-'), "-").concat(index);
|
93
|
+
var cells = keys.map(function (key) {
|
94
|
+
return _typeof(row[key]) !== 'symbol' ? [key, row[key]] : [key, ''];
|
95
|
+
});
|
96
|
+
return /*#__PURE__*/React.createElement("tr", {
|
97
|
+
key: key
|
98
|
+
}, cells.map(function (_ref2, index) {
|
99
|
+
var _ref3 = _slicedToArray(_ref2, 2),
|
100
|
+
key = _ref3[0],
|
101
|
+
value = _ref3[1];
|
102
|
+
return /*#__PURE__*/React.createElement("td", {
|
103
|
+
key: "".concat(key, "-").concat(index)
|
104
|
+
}, formatValue(value, keys[index]));
|
105
|
+
}));
|
106
|
+
})));
|
107
|
+
};
|
108
|
+
//# sourceMappingURL=DataAccessibilityTable.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"DataAccessibilityTable.js","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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"}
|
@@ -10,8 +10,8 @@ import { normalizeLocale } from './locale';
|
|
10
10
|
import { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';
|
11
11
|
import { Root, sstyled } from 'intergalactic/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_1m35e_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0}.___SPlotA11yModule_1m35e_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1}" /*__inner_css_end__*/, "1m35e_gg_") /*__reshadow_css_end__*/, {
|
14
|
+
"__SPlotA11yModule": "___SPlotA11yModule_1m35e_gg_"
|
15
15
|
});
|
16
16
|
import { Context as I18nContext, useI18n } from 'intergalactic/utils/lib/enhances/WithI18n';
|
17
17
|
import { Box } from 'intergalactic/flex-box';
|
@@ -1,24 +1,21 @@
|
|
1
|
-
import _typeof from "@babel/runtime/helpers/typeof";
|
2
1
|
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
3
2
|
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
4
|
-
import _createForOfIteratorHelper from "@babel/runtime/helpers/createForOfIteratorHelper";
|
5
|
-
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
6
3
|
import { sstyled as _sstyled } from 'intergalactic/core';
|
7
4
|
import { assignProps as _assignProps } from 'intergalactic/core';
|
8
5
|
import React from 'react';
|
9
6
|
import { heavyFindNextFocusableElement } from './focus';
|
10
7
|
import { makeDataSummarizationConfig } from './hints';
|
11
|
-
import { formatValue } from './serialize';
|
12
8
|
import { getIntl } from './intl';
|
13
9
|
import { summarize } from './summarize';
|
14
10
|
import { Root, sstyled } from 'intergalactic/core';
|
15
11
|
/*__reshadow-styles__:"../style/plotA11yView.shadow.css"*/
|
16
|
-
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
17
|
-
"__SPlotA11yView": "
|
12
|
+
var styles = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SPlotA11yView_1q4lm_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_1q4lm_gg_:focus,.___SPlotA11yView_1q4lm_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_1q4lm_gg_ a{cursor:pointer;-webkit-text-decoration:underline;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x, 8px);display:block}.___SPlotA11yView_1q4lm_gg_ table,.___SPlotA11yView_1q4lm_gg_ td,.___SPlotA11yView_1q4lm_gg_ th{border:1px solid var(--intergalactic-border-primary, #c4c7cf)}" /*__inner_css_end__*/, "1q4lm_gg_") /*__reshadow_css_end__*/, {
|
13
|
+
"__SPlotA11yView": "___SPlotA11yView_1q4lm_gg_"
|
18
14
|
});
|
19
15
|
import { Box } from 'intergalactic/flex-box';
|
20
16
|
import { useAsyncI18nMessages } from 'intergalactic/utils/lib/enhances/i18nEnhance';
|
21
17
|
import { localizedMessages } from './translations/view/__intergalactic-dynamic-locales';
|
18
|
+
import { DataAccessibilityTable } from './DataAccessibilityTable';
|
22
19
|
export var PlotA11yView = function PlotA11yView(_ref3) {
|
23
20
|
var _ref = arguments[0],
|
24
21
|
_ref2;
|
@@ -40,66 +37,6 @@ export var PlotA11yView = function PlotA11yView(_ref3) {
|
|
40
37
|
var data = React.useMemo(function () {
|
41
38
|
return Array.isArray(providedData) ? providedData : [providedData];
|
42
39
|
}, [providedData]);
|
43
|
-
var keys = React.useMemo(function () {
|
44
|
-
var _fromHints, _fromHints2, _fromHints3, _fromHints4, _fromHints5;
|
45
|
-
var fromHints = [];
|
46
|
-
(_fromHints = fromHints).push.apply(_fromHints, _toConsumableArray(hints.fields.verticalAxes));
|
47
|
-
(_fromHints2 = fromHints).push.apply(_fromHints2, _toConsumableArray(hints.fields.horizontalAxes));
|
48
|
-
(_fromHints3 = fromHints).push.apply(_fromHints3, _toConsumableArray(hints.fields.valueAxes));
|
49
|
-
(_fromHints4 = fromHints).push.apply(_fromHints4, _toConsumableArray(config.additionalFields));
|
50
|
-
(_fromHints5 = fromHints).push.apply(_fromHints5, _toConsumableArray(Object.keys(hints.fields.values)));
|
51
|
-
fromHints = _toConsumableArray(new Set(fromHints)).filter(function (key) {
|
52
|
-
return key in data[0];
|
53
|
-
});
|
54
|
-
if (fromHints.length === 0) {
|
55
|
-
data.forEach(function (row) {
|
56
|
-
var _fromHints6;
|
57
|
-
return (_fromHints6 = fromHints).push.apply(_fromHints6, _toConsumableArray(Object.keys(row)));
|
58
|
-
});
|
59
|
-
}
|
60
|
-
return _toConsumableArray(new Set(fromHints));
|
61
|
-
}, [data, hints]);
|
62
|
-
var duplicatedBaseKeys = React.useMemo(function () {
|
63
|
-
var baseKeys = keys.filter(function (key) {
|
64
|
-
return !hints.titles.valuesAxes[key];
|
65
|
-
}).map(function (key) {
|
66
|
-
if (hints.fields.verticalAxes.has(key) && hints.axesTitle.vertical) return [key, hints.axesTitle.vertical];
|
67
|
-
if (hints.fields.horizontalAxes.has(key) && hints.axesTitle.horizontal) return [key, hints.axesTitle.horizontal];
|
68
|
-
}).filter(function (entry) {
|
69
|
-
return entry !== undefined;
|
70
|
-
}).map(function (entry) {
|
71
|
-
return entry;
|
72
|
-
});
|
73
|
-
var doublicated = {};
|
74
|
-
var handled = {};
|
75
|
-
var _iterator = _createForOfIteratorHelper(baseKeys),
|
76
|
-
_step;
|
77
|
-
try {
|
78
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
79
|
-
var _step$value = _slicedToArray(_step.value, 2),
|
80
|
-
key = _step$value[0],
|
81
|
-
label = _step$value[1];
|
82
|
-
if (handled[label]) {
|
83
|
-
doublicated[key] = true;
|
84
|
-
doublicated[handled[label]] = true;
|
85
|
-
}
|
86
|
-
handled[label] = key;
|
87
|
-
}
|
88
|
-
} catch (err) {
|
89
|
-
_iterator.e(err);
|
90
|
-
} finally {
|
91
|
-
_iterator.f();
|
92
|
-
}
|
93
|
-
return doublicated;
|
94
|
-
}, [keys, hints]);
|
95
|
-
var renderTitle = React.useCallback(function (dataKey) {
|
96
|
-
if (hints.titles.valuesAxes[dataKey]) return hints.titles.valuesAxes[dataKey];
|
97
|
-
if (!duplicatedBaseKeys[dataKey]) {
|
98
|
-
if (hints.fields.verticalAxes.has(dataKey) && hints.axesTitle.vertical) return hints.axesTitle.vertical;
|
99
|
-
if (hints.fields.horizontalAxes.has(dataKey) && hints.axesTitle.horizontal) return hints.axesTitle.horizontal;
|
100
|
-
}
|
101
|
-
return dataKey;
|
102
|
-
}, [data, hints, duplicatedBaseKeys]);
|
103
40
|
var _React$useState = React.useState(null),
|
104
41
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
105
42
|
summary = _React$useState2[0],
|
@@ -197,29 +134,13 @@ export var PlotA11yView = function PlotA11yView(_ref3) {
|
|
197
134
|
"tabIndex": 0
|
198
135
|
}), generatingSummary ? texts.summaryPlaceholder : summary), /*#__PURE__*/React.createElement("strong", _ref2.cn("strong", {}), /*#__PURE__*/React.createElement("label", _ref2.cn("label", {
|
199
136
|
"htmlFor": "".concat(id, "-data-table")
|
200
|
-
}), texts.table)), /*#__PURE__*/React.createElement(
|
201
|
-
"id":
|
202
|
-
"
|
203
|
-
"
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
}))), /*#__PURE__*/React.createElement("tbody", _ref2.cn("tbody", {}), data.map(function (row, index) {
|
209
|
-
return /*#__PURE__*/React.createElement("tr", {
|
210
|
-
key: "".concat(Object.values(row).filter(function (item) {
|
211
|
-
return _typeof(item) !== 'symbol';
|
212
|
-
}).join('-'), "-").concat(index)
|
213
|
-
}, keys.map(function (key) {
|
214
|
-
return _typeof(row[key]) !== 'symbol' ? [key, row[key]] : [key, ''];
|
215
|
-
}).map(function (_ref4, index) {
|
216
|
-
var _ref5 = _slicedToArray(_ref4, 2),
|
217
|
-
key = _ref5[0],
|
218
|
-
value = _ref5[1];
|
219
|
-
return /*#__PURE__*/React.createElement("td", {
|
220
|
-
key: "".concat(key, "-").concat(index)
|
221
|
-
}, formatValue(intl, value));
|
222
|
-
}));
|
223
|
-
}))));
|
137
|
+
}), texts.table)), /*#__PURE__*/React.createElement(DataAccessibilityTable, _ref2.cn("DataAccessibilityTable", {
|
138
|
+
"id": id,
|
139
|
+
"dataTableRef": dataTableRef,
|
140
|
+
"data": data,
|
141
|
+
"hints": hints,
|
142
|
+
"config": config,
|
143
|
+
"intl": intl
|
144
|
+
})));
|
224
145
|
};
|
225
146
|
//# sourceMappingURL=PlotA11yView.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"PlotA11yView.js","names":["React","heavyFindNextFocusableElement","makeDataSummarizationConfig","formatValue","getIntl","summarize","Root","sstyled","styles","_sstyled","insert","Box","useAsyncI18nMessages","localizedMessages","PlotA11yView","_ref3","_ref","arguments[0]","_ref2","id","providedData","data","hints","plotLabel","plotRef","providedConfig","config","locale","SPlotA11yView","translations","intl","useMemo","Array","isArray","keys","_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","_React$useState","useState","_React$useState2","summary","setSummary","_React$useState3","_React$useState4","generatingSummary","setGeneratingSummary","useEffect","disable","override","setTimeout","handleSkip","_heavyFindNextFocusab","current","focus","handleSkipKeyboard","event","preventDefault","handleGoToTable","_dataTableRef$current","dataTableRef","handleGoToTableKeyboard","texts","formatMessage","close","skipPlot","goToTable","summaryPlaceholder","table","useRef","createElement","cn","_objectSpread","_assignProps","concat","index","item","_typeof","join","_ref4","_ref5"],"sources":["../../../src/a11y/PlotA11yView.tsx"],"sourcesContent":["import React from 'react';\nimport { heavyFindNextFocusableElement } from './focus';\nimport { makeDataSummarizationConfig } from './hints';\nimport type { A11yViewProps } from './PlotA11yModule';\nimport { formatValue } from './serialize';\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';\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 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 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],\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 handleSkip = React.useCallback(() => {\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 event.preventDefault();\n handleSkip();\n },\n [handleSkip],\n );\n const handleGoToTable = React.useCallback(() => {\n dataTableRef.current?.focus();\n }, []);\n const handleGoToTableKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (!(event.key === 'Enter' || event.key === ' ')) return;\n\n event.preventDefault();\n handleGoToTable();\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 render={Box} tabIndex={0} aria-label={texts.label}>\n {/* biome-ignore lint/a11y/useValidAnchor: */}\n <a aria-hidden onClick={handleSkip}>\n {texts.close}\n </a>\n {/* biome-ignore lint/a11y/useValidAnchor: */}\n <a role='link' tabIndex={0} onKeyDown={handleSkipKeyboard} onClick={handleSkip}>\n {texts.skipPlot}\n </a>\n {/* biome-ignore lint/a11y/useValidAnchor: */}\n <a role='link' tabIndex={0} 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} tabIndex={0}>\n {generatingSummary ? texts.summaryPlaceholder : summary}\n </div>\n <strong>\n <label htmlFor={`${id}-data-table`}>{texts.table}</label>\n </strong>\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 <tr\n key={`${Object.values(row)\n .filter((item) => typeof item !== 'symbol')\n .join('-')}-${index}`}\n >\n {keys\n .map((key) => (typeof row[key] !== 'symbol' ? [key, row[key]] : [key, '']))\n .map(([key, value], index) => (\n <td key={`${key}-${index}`}>{formatValue(intl, value)}</td>\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n </SPlotA11yView>,\n ) as React.ReactElement;\n};\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"PlotA11yView.js","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","handleSkip","useCallback","_heavyFindNextFocusab","current","focus","handleSkipKeyboard","event","key","preventDefault","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 handleSkip = React.useCallback(() => {\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 event.preventDefault();\n handleSkip();\n },\n [handleSkip],\n );\n const handleGoToTable = React.useCallback(() => {\n dataTableRef.current?.focus();\n }, []);\n const handleGoToTableKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (!(event.key === 'Enter' || event.key === ' ')) return;\n\n event.preventDefault();\n handleGoToTable();\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 render={Box} tabIndex={0} aria-label={texts.label}>\n {/* biome-ignore lint/a11y/useValidAnchor: */}\n <a aria-hidden onClick={handleSkip}>\n {texts.close}\n </a>\n {/* biome-ignore lint/a11y/useValidAnchor: */}\n <a role='link' tabIndex={0} onKeyDown={handleSkipKeyboard} onClick={handleSkip}>\n {texts.skipPlot}\n </a>\n {/* biome-ignore lint/a11y/useValidAnchor: */}\n <a role='link' tabIndex={0} 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} tabIndex={0}>\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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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"hints.js","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};\nexport type PartialDataSummarizationConfig = DeepPartial<DataSummarizationConfig>;\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
|
+
{"version":3,"file":"hints.js","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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"}
|