intergalactic 15.118.0 → 15.119.0-prerelease.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 +47 -0
- package/accordion/lib/cjs/Accordion.js +9 -9
- package/accordion/lib/es6/Accordion.js +9 -9
- package/accordion/package.json +1 -1
- 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/animation/package.json +1 -1
- package/badge/lib/cjs/Badge.js +6 -6
- package/badge/lib/es6/Badge.js +6 -6
- package/badge/package.json +1 -1
- package/base-trigger/index.d.ts +6 -1
- package/base-trigger/lib/cjs/BaseTrigger.js +20 -19
- package/base-trigger/lib/cjs/BaseTrigger.js.map +1 -1
- package/base-trigger/lib/cjs/ButtonTrigger.js +3 -3
- package/base-trigger/lib/cjs/FilterTrigger.js +29 -21
- package/base-trigger/lib/cjs/FilterTrigger.js.map +1 -1
- package/base-trigger/lib/cjs/LinkTrigger.js +12 -12
- package/base-trigger/lib/cjs/index.d.js.map +1 -1
- package/base-trigger/lib/cjs/translations/en.json +2 -1
- package/base-trigger/lib/es6/BaseTrigger.js +20 -19
- package/base-trigger/lib/es6/BaseTrigger.js.map +1 -1
- package/base-trigger/lib/es6/ButtonTrigger.js +3 -3
- package/base-trigger/lib/es6/FilterTrigger.js +29 -21
- package/base-trigger/lib/es6/FilterTrigger.js.map +1 -1
- package/base-trigger/lib/es6/LinkTrigger.js +12 -12
- package/base-trigger/lib/es6/index.d.js.map +1 -1
- package/base-trigger/lib/es6/translations/en.json +2 -1
- package/base-trigger/lib/types/index.d.ts +6 -1
- package/base-trigger/package.json +1 -1
- package/breadcrumbs/lib/cjs/Breadcrumbs.js +8 -8
- package/breadcrumbs/lib/es6/Breadcrumbs.js +8 -8
- package/breadcrumbs/package.json +1 -1
- package/breakpoints/package.json +1 -1
- package/button/lib/cjs/component/Button/Button.js +27 -27
- package/button/lib/cjs/component/ButtonLink/ButtonLink.js +20 -20
- package/button/lib/es6/component/Button/Button.js +27 -27
- package/button/lib/es6/component/ButtonLink/ButtonLink.js +20 -20
- package/button/package.json +1 -1
- package/card/lib/cjs/Card.js +6 -6
- package/card/lib/es6/Card.js +6 -6
- package/card/package.json +1 -1
- package/carousel/lib/cjs/Carousel.js +21 -21
- package/carousel/lib/es6/Carousel.js +21 -21
- package/carousel/package.json +1 -1
- package/checkbox/lib/cjs/Checkbox.js +18 -18
- package/checkbox/lib/es6/Checkbox.js +18 -18
- package/checkbox/package.json +1 -1
- package/color-picker/lib/cjs/ColorPicker.js +24 -24
- package/color-picker/lib/cjs/PaletteManager.js +24 -24
- package/color-picker/lib/cjs/components/InputColor.js +24 -24
- package/color-picker/lib/cjs/components/Item.js +1 -2
- package/color-picker/lib/cjs/components/Item.js.map +1 -1
- package/color-picker/lib/es6/ColorPicker.js +24 -24
- package/color-picker/lib/es6/PaletteManager.js +24 -24
- package/color-picker/lib/es6/components/InputColor.js +24 -24
- package/color-picker/lib/es6/components/Item.js +1 -1
- package/color-picker/lib/es6/components/Item.js.map +1 -1
- package/color-picker/package.json +1 -1
- package/components.json +73 -73
- package/core/package.json +1 -1
- package/counter/lib/cjs/Counter.js +11 -11
- package/counter/lib/es6/Counter.js +11 -11
- package/counter/package.json +1 -1
- 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 +16 -16
- package/d3-chart/lib/cjs/Bubble.js +12 -12
- package/d3-chart/lib/cjs/CompactHorizontalBar.js +16 -16
- 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 +16 -16
- 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 +12 -12
- package/d3-chart/lib/cjs/Reference.js +12 -12
- 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/PlotA11yModule.js +2 -2
- package/d3-chart/lib/cjs/a11y/PlotA11yView.js +2 -2
- 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/es6/Area.js +11 -11
- package/d3-chart/lib/es6/Axis.js +14 -14
- package/d3-chart/lib/es6/Bar.js +16 -16
- package/d3-chart/lib/es6/Bubble.js +12 -12
- package/d3-chart/lib/es6/CompactHorizontalBar.js +16 -16
- 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 +16 -16
- 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 +12 -12
- package/d3-chart/lib/es6/Reference.js +12 -12
- 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/PlotA11yModule.js +2 -2
- package/d3-chart/lib/es6/a11y/PlotA11yView.js +2 -2
- 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/package.json +1 -1
- package/data-table/lib/cjs/Body.js +3 -3
- package/data-table/lib/cjs/DataTable.js +42 -37
- package/data-table/lib/cjs/DataTable.js.map +1 -1
- package/data-table/lib/cjs/Head.js +1 -2
- package/data-table/lib/cjs/Head.js.map +1 -1
- package/data-table/lib/es6/Body.js +3 -3
- package/data-table/lib/es6/DataTable.js +42 -37
- package/data-table/lib/es6/DataTable.js.map +1 -1
- package/data-table/lib/es6/Head.js +1 -1
- package/data-table/lib/es6/Head.js.map +1 -1
- package/data-table/package.json +1 -1
- package/date-picker/lib/cjs/components/Calendar.js +23 -24
- package/date-picker/lib/cjs/components/Calendar.js.map +1 -1
- package/date-picker/lib/cjs/components/DateRangeComparatorAbstract.js +30 -29
- package/date-picker/lib/cjs/components/DateRangeComparatorAbstract.js.map +1 -1
- package/date-picker/lib/cjs/components/InputTrigger.js +29 -29
- package/date-picker/lib/cjs/components/PickerAbstract.js +29 -29
- package/date-picker/lib/cjs/components/RangePickerAbstract.js +29 -29
- package/date-picker/lib/es6/components/Calendar.js +22 -22
- package/date-picker/lib/es6/components/Calendar.js.map +1 -1
- package/date-picker/lib/es6/components/DateRangeComparatorAbstract.js +30 -29
- package/date-picker/lib/es6/components/DateRangeComparatorAbstract.js.map +1 -1
- package/date-picker/lib/es6/components/InputTrigger.js +29 -29
- package/date-picker/lib/es6/components/PickerAbstract.js +29 -29
- package/date-picker/lib/es6/components/RangePickerAbstract.js +29 -29
- package/date-picker/package.json +1 -1
- package/divider/lib/cjs/Divider.js +10 -10
- package/divider/lib/es6/Divider.js +10 -10
- package/divider/package.json +1 -1
- package/dot/lib/cjs/Dot.js +10 -10
- package/dot/lib/es6/Dot.js +10 -10
- package/dot/package.json +1 -1
- package/drag-and-drop/lib/cjs/DragAndDrop.js +17 -18
- package/drag-and-drop/lib/cjs/DragAndDrop.js.map +1 -1
- package/drag-and-drop/lib/es6/DragAndDrop.js +17 -17
- package/drag-and-drop/lib/es6/DragAndDrop.js.map +1 -1
- package/drag-and-drop/package.json +1 -1
- package/dropdown/lib/cjs/AbstractDropdown.js +11 -7
- package/dropdown/lib/cjs/AbstractDropdown.js.map +1 -1
- package/dropdown/lib/cjs/Dropdown.js +16 -16
- package/dropdown/lib/cjs/Dropdown.js.map +1 -1
- package/dropdown/lib/es6/AbstractDropdown.js +11 -7
- package/dropdown/lib/es6/AbstractDropdown.js.map +1 -1
- package/dropdown/lib/es6/Dropdown.js +16 -16
- package/dropdown/lib/es6/Dropdown.js.map +1 -1
- package/dropdown/package.json +1 -1
- package/dropdown-menu/lib/cjs/DropdownMenu.js +18 -18
- package/dropdown-menu/lib/es6/DropdownMenu.js +18 -18
- package/dropdown-menu/package.json +1 -1
- package/ellipsis/lib/cjs/Ellipsis.js +10 -10
- package/ellipsis/lib/es6/Ellipsis.js +10 -10
- package/ellipsis/package.json +1 -1
- package/errors/lib/cjs/Error.js +9 -9
- package/errors/lib/es6/Error.js +9 -9
- package/errors/package.json +1 -1
- package/feature-popover/lib/cjs/FeaturePopover.js +11 -11
- package/feature-popover/lib/es6/FeaturePopover.js +11 -11
- package/feature-popover/package.json +1 -1
- package/feedback-form/lib/cjs/FeedbackForm.js +7 -7
- package/feedback-form/lib/cjs/component/checkbox-button/CheckboxButton.js +3 -3
- package/feedback-form/lib/cjs/component/feedback-rating/FeedbackRating.js +2 -2
- package/feedback-form/lib/cjs/component/slider-rating/SliderRating.js +6 -6
- package/feedback-form/lib/es6/FeedbackForm.js +7 -7
- package/feedback-form/lib/es6/component/checkbox-button/CheckboxButton.js +3 -3
- package/feedback-form/lib/es6/component/feedback-rating/FeedbackRating.js +2 -2
- package/feedback-form/lib/es6/component/slider-rating/SliderRating.js +6 -6
- package/feedback-form/package.json +1 -1
- 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/flags/package.json +1 -1
- package/flex-box/index.d.ts +1 -0
- 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/index.js +9 -1
- package/flex-box/lib/cjs/index.js.map +1 -1
- package/flex-box/lib/cjs/invalid-state-box/InvalidStateBox.js +2 -2
- package/flex-box/lib/cjs/screen-reader-only-box/ScreenReaderOnlyBox.js +30 -0
- package/flex-box/lib/cjs/screen-reader-only-box/ScreenReaderOnlyBox.js.map +1 -0
- package/flex-box/lib/cjs/screen-reader-only-box/screenReaderOnlyBox.shadow.css +12 -0
- 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/index.js +1 -0
- package/flex-box/lib/es6/index.js.map +1 -1
- package/flex-box/lib/es6/invalid-state-box/InvalidStateBox.js +2 -2
- package/flex-box/lib/es6/screen-reader-only-box/ScreenReaderOnlyBox.js +21 -0
- package/flex-box/lib/es6/screen-reader-only-box/ScreenReaderOnlyBox.js.map +1 -0
- package/flex-box/lib/es6/screen-reader-only-box/screenReaderOnlyBox.shadow.css +12 -0
- package/flex-box/lib/types/index.d.ts +1 -0
- package/flex-box/lib/types/screen-reader-only-box/ScreenReaderOnlyBox.d.ts +4 -0
- package/flex-box/package.json +1 -1
- package/flex-box/screen-reader-only-box/ScreenReaderOnlyBox.d.ts +4 -0
- package/format-text/lib/cjs/FormatText.js +5 -5
- package/format-text/lib/es6/FormatText.js +5 -5
- package/format-text/package.json +1 -1
- package/fullscreen-modal/lib/cjs/FullscreenModal.js +13 -13
- package/fullscreen-modal/lib/es6/FullscreenModal.js +13 -13
- package/fullscreen-modal/package.json +1 -1
- package/grid/lib/cjs/Grid.js +114 -114
- package/grid/lib/es6/Grid.js +114 -114
- package/grid/package.json +1 -1
- package/i18n-unplugin/package.json +1 -1
- 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/MetaColored/l/index.js +4 -4
- package/icon/color/MetaColored/l/index.mjs +4 -4
- package/icon/color/MetaColored/m/index.js +4 -4
- package/icon/color/MetaColored/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/package.json +1 -1
- 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/illustration/package.json +1 -1
- package/inline-edit/lib/cjs/InlineEdit.js +4 -4
- package/inline-edit/lib/es6/InlineEdit.js +4 -4
- package/inline-edit/package.json +1 -1
- package/inline-input/lib/cjs/InlineInput.js +14 -14
- package/inline-input/lib/es6/InlineInput.js +14 -14
- package/inline-input/package.json +1 -1
- package/input/lib/cjs/Input.js +17 -17
- package/input/lib/es6/Input.js +17 -17
- package/input/package.json +1 -1
- package/input-mask/lib/cjs/InputMask.js +7 -8
- package/input-mask/lib/cjs/InputMask.js.map +1 -1
- package/input-mask/lib/es6/InputMask.js +7 -7
- package/input-mask/lib/es6/InputMask.js.map +1 -1
- package/input-mask/package.json +1 -1
- package/input-number/lib/cjs/InputNumber.js +9 -9
- package/input-number/lib/es6/InputNumber.js +9 -9
- package/input-number/package.json +1 -1
- package/input-tags/InputTags.d.ts +1 -0
- package/input-tags/lib/cjs/InputTags.js +66 -37
- package/input-tags/lib/cjs/InputTags.js.map +1 -1
- package/input-tags/lib/es6/InputTags.js +68 -38
- package/input-tags/lib/es6/InputTags.js.map +1 -1
- package/input-tags/lib/types/InputTags.d.ts +1 -0
- package/input-tags/package.json +1 -1
- package/link/lib/cjs/Link.js +12 -12
- package/link/lib/es6/Link.js +12 -12
- package/link/package.json +1 -1
- package/mini-chart/lib/cjs/component/score/Donut.js +9 -9
- package/mini-chart/lib/cjs/component/score/Line.js +18 -18
- 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 +18 -18
- package/mini-chart/lib/es6/component/trend/Bar.js +7 -7
- package/mini-chart/lib/es6/component/trend/Line.js +7 -7
- package/mini-chart/package.json +1 -1
- package/modal/lib/cjs/Modal.js +8 -8
- package/modal/lib/es6/Modal.js +8 -8
- package/modal/package.json +1 -1
- package/neighbor-location/package.json +1 -1
- package/notice/lib/cjs/Notice.js +14 -14
- package/notice/lib/es6/Notice.js +14 -14
- package/notice/package.json +1 -1
- package/notice-bubble/index.d.ts +8 -0
- package/notice-bubble/lib/cjs/NoticeBubble.js +20 -23
- package/notice-bubble/lib/cjs/NoticeBubble.js.map +1 -1
- package/notice-bubble/lib/cjs/NoticeBubbleManager.js +24 -10
- package/notice-bubble/lib/cjs/NoticeBubbleManager.js.map +1 -1
- package/notice-bubble/lib/cjs/index.d.js.map +1 -1
- package/notice-bubble/lib/cjs/style/notice-bubble.shadow.css +2 -2
- package/notice-bubble/lib/es6/NoticeBubble.js +20 -23
- package/notice-bubble/lib/es6/NoticeBubble.js.map +1 -1
- package/notice-bubble/lib/es6/NoticeBubbleManager.js +24 -10
- package/notice-bubble/lib/es6/NoticeBubbleManager.js.map +1 -1
- package/notice-bubble/lib/es6/index.d.js.map +1 -1
- package/notice-bubble/lib/es6/style/notice-bubble.shadow.css +2 -2
- package/notice-bubble/lib/types/index.d.ts +8 -0
- package/notice-bubble/package.json +1 -1
- package/notice-global/lib/cjs/NoticeGlobal.js +11 -11
- package/notice-global/lib/es6/NoticeGlobal.js +11 -11
- package/notice-global/package.json +1 -1
- package/outside-click/package.json +1 -1
- package/package.json +1 -1
- package/pagination/lib/cjs/Pagination.js +11 -12
- package/pagination/lib/cjs/Pagination.js.map +1 -1
- package/pagination/lib/es6/Pagination.js +11 -11
- package/pagination/lib/es6/Pagination.js.map +1 -1
- package/pagination/package.json +1 -1
- package/pills/lib/cjs/Pills.js +13 -13
- package/pills/lib/es6/Pills.js +13 -13
- package/pills/package.json +1 -1
- package/popper/lib/cjs/Popper.js +7 -8
- package/popper/lib/cjs/Popper.js.map +1 -1
- package/popper/lib/es6/Popper.js +7 -7
- package/popper/lib/es6/Popper.js.map +1 -1
- package/popper/package.json +1 -1
- package/portal/package.json +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/product-head/package.json +1 -1
- package/progress-bar/lib/cjs/ProgressBar.js +15 -15
- package/progress-bar/lib/es6/ProgressBar.js +15 -15
- package/progress-bar/package.json +1 -1
- package/radio/lib/cjs/Radio.js +16 -16
- package/radio/lib/es6/Radio.js +16 -16
- package/radio/package.json +1 -1
- package/scroll-area/lib/cjs/ScrollArea.js +21 -21
- package/scroll-area/lib/cjs/ScrollBar.js +6 -6
- package/scroll-area/lib/es6/ScrollArea.js +21 -21
- package/scroll-area/lib/es6/ScrollBar.js +6 -6
- package/scroll-area/package.json +1 -1
- 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/select/package.json +1 -1
- package/side-panel/lib/cjs/SidePanel.js +16 -16
- package/side-panel/lib/es6/SidePanel.js +16 -16
- package/side-panel/package.json +1 -1
- 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/CompactHorizontalBar.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/CompactHorizontalBar.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/skeleton/package.json +1 -1
- package/slider/lib/cjs/Slider.js +8 -8
- package/slider/lib/es6/Slider.js +8 -8
- package/slider/package.json +1 -1
- package/spin/lib/cjs/Spin.js +13 -13
- package/spin/lib/es6/Spin.js +13 -13
- package/spin/package.json +1 -1
- package/spin-container/lib/cjs/SpinContainer.js +8 -8
- package/spin-container/lib/es6/SpinContainer.js +8 -8
- package/spin-container/package.json +1 -1
- package/sticky/lib/cjs/Sticky.js +2 -2
- package/sticky/lib/es6/Sticky.js +2 -2
- package/sticky/package.json +1 -1
- package/switch/lib/cjs/Switch.js +21 -21
- package/switch/lib/es6/Switch.js +21 -21
- package/switch/package.json +1 -1
- package/tab-line/lib/cjs/TabLine.js +13 -13
- package/tab-line/lib/es6/TabLine.js +13 -13
- package/tab-line/package.json +1 -1
- package/tab-panel/lib/cjs/TabPanel.js +8 -8
- package/tab-panel/lib/es6/TabPanel.js +8 -8
- package/tab-panel/package.json +1 -1
- package/tag/lib/cjs/Tag.js +23 -23
- package/tag/lib/es6/Tag.js +23 -23
- package/tag/package.json +1 -1
- package/textarea/lib/cjs/Textarea.js +8 -8
- package/textarea/lib/es6/Textarea.js +8 -8
- package/textarea/package.json +1 -1
- package/time-picker/lib/cjs/PickerFormat.js +2 -3
- package/time-picker/lib/cjs/PickerFormat.js.map +1 -1
- package/time-picker/lib/cjs/TimePicker.js +12 -12
- package/time-picker/lib/es6/PickerFormat.js +1 -1
- package/time-picker/lib/es6/PickerFormat.js.map +1 -1
- package/time-picker/lib/es6/TimePicker.js +12 -12
- package/time-picker/package.json +1 -1
- package/tooltip/lib/cjs/Tooltip.js +9 -9
- package/tooltip/lib/es6/Tooltip.js +9 -9
- package/tooltip/package.json +1 -1
- 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/typography/package.json +1 -1
- package/utils/lib/ScreenReaderOnly.d.ts +3 -0
- package/utils/lib/ScreenReaderOnly.js +3 -0
- package/utils/lib/ScreenReaderOnly.js.map +1 -1
- package/utils/lib/ScreenReaderOnly.mjs +4 -0
- package/utils/lib/ScreenReaderOnly.mjs.map +1 -1
- 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/findComponent.d.ts +4 -0
- package/utils/lib/findComponent.js +34 -0
- package/utils/lib/findComponent.js.map +1 -1
- package/utils/lib/findComponent.mjs +33 -0
- package/utils/lib/findComponent.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/widget-empty/package.json +1 -1
- package/wizard/lib/cjs/Wizard.js +13 -14
- package/wizard/lib/cjs/Wizard.js.map +1 -1
- package/wizard/lib/es6/Wizard.js +13 -13
- package/wizard/lib/es6/Wizard.js.map +1 -1
- package/wizard/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DragAndDrop.js","names":["React","createComponent","sstyled","Component","Root","Box","localizedMessages","i18nEnhance","useEnhancedEffect","style","_sstyled","insert","keyboardFocusEnhance","ScreenReaderOnly","uniqueIDEnhance","canUseDOM","noop","DragAndDropContext","createContext","attach","detach","DragAndDropRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","items","dragging","dragOver","hideHoverEffect","a11yHint","keyboardDraggingIndex","animatedScaling","reversedScaling","createRef","index","state","currentItem","itemText","node","getAttribute","textContent","zoneName","zonedItems","filter","i","itemsCount","itemPosition","findIndex","id","setA11yHint","setState","prevState","initialItemsRects","map","item","getBoundingClientRect","event","preventDefault","_this$state","itemIndex","rect","clientX","x","width","clientY","y","height","draggingItem","isDropZone","i18nKey","swapElements","onDnD","asProps","_this$state2","fromNode","fromId","fromIndex","toId","toIndex","draggingAllowed","_this$asProps$onInser","_this$asProps","_items$index","onInsertDroppable","children","_this$asProps$onSwapD","_this$asProps2","_items$index2","onSwapDraggable","_this$state$items$","firstItemNode","firstItemRect","parent","parentElement","document","body","computedStyle","getComputedStyle","overflow","left","right","top","bottom","_dragging$index","_items$draggingIndex","_items$dragOver","_this$state3","draggingIndex","dragNode","_items$node","_items","_this$containerRef$cu","nextDragNode","containerRef","current","insertBefore","_this$containerRef$cu2","_this$containerRef$cu3","nextSibling","focus","target","currentTarget","key","stopPropagation","_this$state$items$ind","handleItemDrop","handleItemDragStart","updateItemScaling","_items$i","_items$node2","_items2","prevNode","_this$containerRef$cu4","HTMLElement","startsWith","activeElement","requestAnimationFrame","_this$containerRef$cu5","rects","nodeRect","childNodes","forEach","childNode","roundedRect","Math","round","push","nextIndex","findNextRectangleIndex","handleItemKeyDown","customFocus","undefined","getCustomFocusItemIndex","_ref7","_prevState$items$inde","_prevState$items$inde2","_toConsumableArray","options","clearTimeout","clearA11yHintTimeout","getI18nText","window","setTimeout","_createClass","value","getDraggableProps","_","uid","onDragStart","makeItemDragStartHandler","onDragEnd","handleItemDragEnd","onDragOver","handleItemDragOver","onDragEnter","handleItemDragEnter","onDrop","onMouseMove","handleItemMouseMove","onKeyDown","makeItemKeyDownHandler","onFocus","handleItemFocus","dropPreview","keyboardDragging","dark","theme","componentDidMount","addEventListener","handlePageKeyDown","capture","componentWillUnmount","removeEventListener","componentDidUpdate","prevProps","render","_ref","_ref4","SA11yHint","_this$state4","context","_this$asProps3","styles","createElement","Provider","cn","_assignProps","control","i18n","locale","Draggable","props","_ref2","arguments[0]","_ref5","SDraggable","ref","useRef","_React$useContext","useContext","_props$placement","placement","_props$noDrag","noDrag","Children","_props$isDropZone","resolvedChildren","useMemo","_objectSpread","_assignProps2","enhance","rectangles","direction","candidate","minDistance","Infinity","verticallyOverlaps","horizontallyOverlaps","distance","indexOf","DropZone","_ref3","_ref6","SDropZone","DragAndDrop","_assignProps3","Dropable"],"sources":["../../src/DragAndDrop.tsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { sstyled, Component, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport useEnhancedEffect from '@semcore/utils/lib/use/useEnhancedEffect';\n\nimport style from './style/drag-and-drop.shadow.css';\nimport { DropZoneProps } from './index';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { ScreenReaderOnly } from '@semcore/utils/lib/ScreenReaderOnly';\nimport uniqueIDEnhance from '@semcore/utils/lib/uniqueID';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\n\ntype AsProps = {\n /**\n * @deprecated don't use this prop\n */\n theme?: 'dark' | 'default';\n /**\n * @deprecated use `onDnD` instead\n */\n onSwapDraggable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * @deprecated use `onDnD` instead\n */\n onInsertDroppable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * Contolled drag and drop handler\n */\n onDnD: (dndData: { fromIndex: number; fromId: string; toIndex: number; toId: string }) => void;\n /**\n * Index of id that indicates item that is currently under the user focus in case of real browser focus cannot be used.\n * When provided, drag and drop listens to whole page keyboard events. Doesn't provide `onCustomFocusChange` callback.\n */\n customFocus?: number | string;\n getI18nText: (messageId: string, values?: { [key: string]: string | number }) => string;\n uid: string;\n};\n\ntype AttachDetails = {\n index: number;\n children: React.ReactNode;\n node: HTMLElement;\n id: string;\n draggingAllowed: boolean;\n isDropZone?: boolean;\n zoneName?: string;\n};\n\nconst noop: (...args: any[]) => any = () => {\n /* do nothing */\n};\nconst DragAndDropContext = React.createContext<{\n attach: (details: AttachDetails) => void;\n detach: (index: number) => void;\n}>({\n attach: noop,\n detach: noop,\n});\n\ntype State = {\n items: Array<Omit<AttachDetails, 'index'> | undefined>;\n dragging: null | {\n index: number;\n initialItemsRects: Array<{ x: number; y: number; width: number; height: number } | undefined>;\n };\n dragOver: number | null;\n hideHoverEffect: boolean;\n a11yHint: string | null;\n keyboardDraggingIndex: number | null;\n animatedScaling: number | null;\n reversedScaling: boolean;\n};\n\ntype A11yHintKeys = keyof typeof localizedMessages.en;\n\nclass DragAndDropRoot extends Component<AsProps, {}, State> {\n static displayName = 'DragAndDrop';\n static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhance()];\n static defaultProps = {\n theme: 'default',\n i18n: localizedMessages,\n locale: 'en',\n };\n static style = style;\n\n state: State = {\n items: [],\n dragging: null,\n dragOver: null,\n hideHoverEffect: false, // https://stackoverflow.com/questions/67118739/hover-effect-reset-when-hovering-over-other-letters\n a11yHint: null,\n keyboardDraggingIndex: null,\n animatedScaling: null,\n reversedScaling: false,\n };\n\n containerRef = React.createRef<HTMLDivElement>();\n clearA11yHintTimeout = 0;\n\n handleItemDragStart = (index: number) => {\n const { items } = this.state;\n const currentItem = items[index];\n if (!currentItem) return;\n\n const itemText =\n currentItem.node.getAttribute('aria-label') || currentItem.node.textContent || `${index + 1}`;\n\n const zoneName = currentItem.zoneName;\n const zonedItems = !zoneName ? items : items.filter((i) => i?.zoneName === zoneName);\n const itemsCount = zonedItems.length;\n const itemPosition = zonedItems.findIndex(\n (i) => i?.node === currentItem.node || (i?.id && i?.id === currentItem.id),\n );\n\n this.setA11yHint(zoneName ? 'grabbedWithZone' : 'grabbed', {\n itemText,\n itemPosition: itemPosition + 1,\n itemsCount,\n zoneName: zoneName || '',\n });\n\n this.setState((prevState: State) => ({\n dragging: {\n index,\n initialItemsRects: prevState.items.map((item) => item?.node.getBoundingClientRect()),\n },\n }));\n };\n handleItemDragEnd = (event: DragEvent) => {\n event.preventDefault();\n this.setState({\n dragging: null,\n dragOver: null,\n reversedScaling: false,\n keyboardDraggingIndex: null,\n });\n };\n handleItemDragOver = (event: DragEvent) => {\n event.preventDefault();\n const { items, dragging, dragOver } = this.state;\n if (!dragging) return;\n const itemIndex = dragging.initialItemsRects.findIndex(\n (rect) =>\n rect &&\n event.clientX > rect.x &&\n event.clientX < rect.x + rect.width &&\n event.clientY > rect.y &&\n event.clientY < rect.y + rect.height,\n );\n const currentItem = items[itemIndex];\n const draggingItem = items[dragging.index];\n if (!currentItem || !draggingItem || itemIndex === dragOver) return;\n\n const node = currentItem.isDropZone ? draggingItem.node : currentItem.node;\n\n const itemText = node.getAttribute('aria-label') || node.textContent || `${itemIndex + 1}`;\n const zoneName = currentItem.zoneName;\n const zonedItems = !zoneName ? items : items.filter((i) => i?.zoneName === zoneName);\n const itemsCount = zonedItems.length;\n const itemPosition = zonedItems.findIndex(\n (i) => i?.node === currentItem.node || (i?.id && i?.id === currentItem.id),\n );\n\n const i18nKey = !zoneName\n ? 'grabbing'\n : currentItem.isDropZone\n ? 'grabbingJustWithZone'\n : 'grabbingFullWithZone';\n\n this.setA11yHint(i18nKey, {\n itemText,\n itemPosition: itemPosition + 1,\n itemsCount,\n zoneName: zoneName || '',\n });\n\n this.setState({ dragOver: itemIndex }, this.swapElements);\n };\n handleItemDrop = () => {\n const { onDnD } = this.asProps;\n if (!onDnD) return;\n\n const { items, dragging, dragOver } = this.state;\n if (!dragging) return;\n const currentItem = dragOver !== null ? items[dragOver] : items[dragging.index];\n const draggingItem = items[dragging.index];\n\n if (!currentItem || !draggingItem) return;\n\n const node = currentItem.isDropZone ? draggingItem.node : currentItem.node;\n const itemText =\n node.getAttribute('aria-label') || node.textContent || `${(dragOver ?? dragging.index) + 1}`;\n const zoneName = currentItem.zoneName;\n const zonedItems = !zoneName ? items : items.filter((i) => i?.zoneName === zoneName);\n const itemsCount = zonedItems.length;\n const itemPosition = zonedItems.findIndex(\n (i) => i?.node === currentItem.node || (i?.id && i?.id === currentItem.id),\n );\n\n const i18nKey = !zoneName\n ? 'dropped'\n : currentItem.isDropZone\n ? 'droppedJustWithZone'\n : 'droppedFullWithZone';\n\n this.setA11yHint(i18nKey, {\n itemText,\n itemPosition: itemPosition + 1,\n itemsCount,\n zoneName: zoneName || '',\n });\n\n this.setState({\n dragging: null,\n dragOver: null,\n keyboardDraggingIndex: null,\n hideHoverEffect: true,\n reversedScaling: false,\n });\n if (dragging && items[dragging.index]) {\n const fromNode = items[dragging.index];\n if (fromNode) {\n onDnD({\n fromId: fromNode.id,\n fromIndex: dragging.index,\n toId: currentItem.id,\n toIndex: dragOver ?? dragging.index,\n });\n }\n }\n if (!currentItem.draggingAllowed) {\n this.asProps.onInsertDroppable?.(items[dragging!.index]?.children, currentItem.children);\n } else {\n this.asProps.onSwapDraggable?.(items[dragging!.index]?.children, currentItem.children);\n }\n };\n handleItemDragEnter = (event: DragEvent) => {\n event.preventDefault();\n };\n handleItemMouseMove = () => {\n if (!this.state.hideHoverEffect) return;\n this.setState({ hideHoverEffect: false });\n };\n updateItemScaling = () => {\n const firstItemNode = this.state.items[0]?.node;\n if (!firstItemNode) return;\n if (this.state.reversedScaling) return;\n\n const firstItemRect = firstItemNode.getBoundingClientRect();\n let reversedScaling = false;\n let parent = firstItemNode.parentElement;\n while (parent && parent !== document.body) {\n const computedStyle = getComputedStyle(parent);\n const rect = parent.getBoundingClientRect();\n if (computedStyle.overflow !== 'visible') {\n if (\n rect.left >= firstItemRect.left ||\n rect.right <= firstItemRect.right ||\n rect.top >= firstItemRect.top ||\n rect.bottom <= firstItemRect.bottom\n ) {\n reversedScaling = true;\n break;\n }\n } else {\n if (\n rect.left < firstItemRect.left &&\n rect.right > firstItemRect.right &&\n rect.top < firstItemRect.top &&\n rect.bottom > firstItemRect.bottom\n ) {\n break;\n }\n }\n parent = parent.parentElement;\n }\n\n if (this.state.reversedScaling !== reversedScaling) {\n this.setState({ reversedScaling });\n }\n };\n swapElements = () => {\n const { items, dragging, dragOver } = this.state;\n const draggingIndex = dragging?.index ?? null;\n\n if (draggingIndex === null || dragOver === null) return;\n\n const node = items[draggingIndex]?.node;\n const dragNode = items[dragOver]?.node;\n\n if (!node || !dragNode) return;\n\n if (draggingIndex === dragOver) {\n const nextDragNode = items[dragOver + 1]?.node ?? null;\n this.containerRef.current?.insertBefore(node, nextDragNode);\n } else if (draggingIndex > dragOver) {\n this.containerRef.current?.insertBefore(node, dragNode);\n } else {\n this.containerRef.current?.insertBefore(node, dragNode.nextSibling);\n }\n\n node.focus();\n };\n handleItemKeyDown = (event: KeyboardEvent, index: number) => {\n if (event.target !== event.currentTarget) {\n return;\n }\n\n if (this.state.dragging && event.key === 'Tab') {\n event.preventDefault();\n event.stopPropagation();\n }\n\n if (event.key === ' ') {\n event.preventDefault();\n event.stopPropagation();\n if (this.state.dragging) {\n this.handleItemDrop();\n this.setState({\n dragging: null,\n dragOver: null,\n keyboardDraggingIndex: null,\n animatedScaling: index,\n hideHoverEffect: true,\n });\n } else if (this.state.items[index]?.draggingAllowed) {\n this.handleItemDragStart(index);\n this.setState({ keyboardDraggingIndex: index, animatedScaling: index });\n this.updateItemScaling();\n }\n return false;\n } else if (event.key === 'Escape' && this.state.dragging) {\n event.preventDefault();\n event.stopPropagation();\n\n this.setA11yHint('discarded');\n this.setState({\n dragging: null,\n dragOver: null,\n keyboardDraggingIndex: null,\n hideHoverEffect: true,\n });\n const { items } = this.state;\n for (let i = items.length - 1; i >= 0; i--) {\n const node = items[i]?.node;\n const prevNode = items[i + 1]?.node ?? null;\n if (node) {\n this.containerRef.current?.insertBefore(node, prevNode);\n }\n }\n\n if (event.target instanceof HTMLElement) {\n event.target.focus();\n }\n\n return false;\n } else if (event.key.startsWith('Arrow') && this.state.dragging) {\n if (this.state.animatedScaling !== null) {\n this.setState({ animatedScaling: null });\n }\n const node = event.currentTarget;\n if (!node || node !== document.activeElement) return;\n event.preventDefault();\n requestAnimationFrame(() => {\n if (!(node instanceof HTMLElement) || node !== document.activeElement) return;\n const rects: Array<{ top: number; right: number; bottom: number; left: number }> = [];\n let nodeRect: { top: number; right: number; bottom: number; left: number } = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n };\n\n this.containerRef.current?.childNodes.forEach((childNode, index) => {\n if (childNode instanceof HTMLElement) {\n const rect = childNode.getBoundingClientRect();\n const roundedRect = {\n top: Math.round(rect.top),\n right: Math.round(rect.right),\n bottom: Math.round(rect.bottom),\n left: Math.round(rect.left),\n };\n\n rects.push(roundedRect);\n\n if (childNode === node) {\n nodeRect = roundedRect;\n }\n }\n });\n const nextIndex = findNextRectangleIndex(rects, nodeRect, event.key as DirectionArrows);\n if (nextIndex === -1) return false;\n\n if (node && this.state.dragging !== null) {\n this.setA11yHint('grabbing', {\n itemPosition: nextIndex + 1,\n itemsCount: this.state.items.length,\n });\n this.setState({ dragOver: nextIndex }, () => {\n this.swapElements();\n });\n }\n return false;\n });\n }\n };\n handleItemFocus = () => {\n if (!this.state.dragging) return;\n this.updateItemScaling();\n };\n\n makeItemDragStartHandler = (index: number) => () => this.handleItemDragStart(index);\n makeItemKeyDownHandler = (index: number) => (event: KeyboardEvent) =>\n this.handleItemKeyDown(event, index);\n\n getDraggableProps(_: any, index: number) {\n const { uid } = this.asProps;\n return {\n uid,\n index,\n onDragStart: this.makeItemDragStartHandler(index),\n onDragEnd: this.handleItemDragEnd,\n onDragOver: this.handleItemDragOver,\n onDragEnter: this.handleItemDragEnter,\n onDrop: this.handleItemDrop,\n onMouseMove: this.handleItemMouseMove,\n onKeyDown: this.makeItemKeyDownHandler(index),\n onFocus: this.handleItemFocus,\n dropPreview: index === this.state.dragOver,\n keyboardDragging: index === this.state.keyboardDraggingIndex,\n reversedScaling: this.state.reversedScaling,\n dark: this.asProps.theme === 'dark',\n hideHoverEffect: this.state.hideHoverEffect,\n animatedScaling: index === this.state.animatedScaling,\n };\n }\n\n handlePageKeyDown = (event: KeyboardEvent) => {\n if (this.asProps.customFocus !== undefined) {\n const itemIndex = this.getCustomFocusItemIndex(this.asProps.customFocus);\n if (this.state.items[itemIndex!]) {\n this.handleItemKeyDown(event, itemIndex!);\n }\n }\n };\n\n attach = ({\n index,\n children,\n node,\n id,\n draggingAllowed,\n zoneName,\n isDropZone,\n }: AttachDetails) => {\n this.setState((prevState: State) => {\n if (prevState.items[index]?.children === children && prevState.items[index]?.node === node)\n return prevState;\n const { items } = prevState;\n items[index] = { children, node, id, draggingAllowed, zoneName, isDropZone };\n return { items: [...items] };\n });\n };\n detach = (index: number) => {\n this.setState((prevState: State) => {\n if (!prevState.items[index]) return prevState;\n const { items } = prevState;\n items[index] = undefined;\n return { items: [...items] };\n });\n };\n\n getCustomFocusItemIndex = (customFocus: string | number | undefined) => {\n if (customFocus === undefined) return undefined;\n let itemIndex = customFocus;\n if (typeof itemIndex === 'string') {\n itemIndex = this.state.items.findIndex((item) => item?.id === customFocus);\n }\n if (itemIndex === -1 || typeof itemIndex !== 'number') return undefined;\n return itemIndex;\n };\n\n setA11yHint = (key: A11yHintKeys, options: any = {}) => {\n clearTimeout(this.clearA11yHintTimeout);\n\n const { getI18nText } = this.asProps;\n\n this.setState({\n a11yHint: getI18nText(key, options),\n });\n\n if ((key === 'dropped' || key === 'discarded') && canUseDOM()) {\n this.clearA11yHintTimeout = window.setTimeout(() => {\n this.setState({ a11yHint: null });\n }, 2000);\n }\n };\n\n componentDidMount() {\n document.addEventListener('keydown', this.handlePageKeyDown, { capture: true });\n }\n\n componentWillUnmount() {\n clearTimeout(this.clearA11yHintTimeout);\n document.removeEventListener('keydown', this.handlePageKeyDown, { capture: true });\n }\n\n componentDidUpdate(prevProps: AsProps) {\n if (prevProps.customFocus !== this.asProps.customFocus) {\n const itemIndex = this.getCustomFocusItemIndex(this.asProps.customFocus);\n if (this.state.items[itemIndex!]) this.handleItemFocus();\n }\n }\n\n render() {\n const { attach, detach } = this;\n const SA11yHint = 'div';\n const { a11yHint, dragging } = this.state;\n const context = { attach, detach };\n const { getI18nText, uid } = this.asProps;\n\n return sstyled(this.asProps.styles)(\n <DragAndDropContext.Provider value={context}>\n {a11yHint && (\n <SA11yHint role='alert' aria-live='assertive'>\n {a11yHint}\n </SA11yHint>\n )}\n <Root render={Box} role={'group'} ref={this.containerRef} />\n <ScreenReaderOnly id={`describe-draggable-${uid}`} aria-hidden={'true'}>\n {getI18nText('describe', { control: 'Space' })}\n </ScreenReaderOnly>\n </DragAndDropContext.Provider>,\n );\n }\n}\n\nconst Draggable = (props: any) => {\n const SDraggable = Root;\n const ref = React.useRef();\n const { attach, detach } = React.useContext(DragAndDropContext);\n const {\n styles,\n placement = 'right',\n noDrag = false,\n index,\n children,\n Children,\n id,\n zoneName,\n isDropZone = false,\n uid,\n } = props;\n const resolvedChildren = React.useMemo(\n () => (typeof children === 'function' ? children(props) : children),\n [children, props],\n );\n\n useEnhancedEffect(() => {\n attach({\n index,\n children: resolvedChildren,\n node: ref.current!,\n id,\n draggingAllowed: !noDrag,\n zoneName,\n isDropZone,\n });\n return () => detach(index);\n }, [index, resolvedChildren, attach, detach, id]);\n\n return sstyled(styles)(\n <SDraggable\n render={Box}\n ref={ref}\n draggable={!noDrag}\n placement={placement}\n role={'group'}\n aria-describedby={`describe-draggable-${uid}`}\n >\n <Children />\n </SDraggable>,\n );\n};\nDraggable.enhance = [keyboardFocusEnhance()];\n\ntype DirectionArrows = 'ArrowRight' | 'ArrowLeft' | 'ArrowUp' | 'ArrowDown';\nconst findNextRectangleIndex = <\n Rectangle extends { top: number; right: number; bottom: number; left: number },\n>(\n rectangles: (Rectangle | undefined)[],\n current: Rectangle,\n direction: DirectionArrows,\n): number => {\n let candidate: Rectangle | null = null;\n let minDistance: number = Infinity;\n\n for (let i = 0; i < rectangles.length; i++) {\n const rect = rectangles[i];\n if (!rect) continue;\n if (rect === current) continue;\n\n const verticallyOverlaps = current.top <= rect.bottom && current.bottom >= rect.top;\n const horizontallyOverlaps = current.left <= rect.right && current.right >= rect.left;\n\n if (!verticallyOverlaps && !horizontallyOverlaps) continue;\n\n switch (direction) {\n case 'ArrowRight': {\n if (!verticallyOverlaps) continue;\n const distance = rect.left - current.right;\n if (distance < 0 || distance >= minDistance) continue;\n candidate = rect;\n minDistance = distance;\n break;\n }\n case 'ArrowLeft': {\n if (!verticallyOverlaps) continue;\n const distance = current.left - rect.right;\n if (distance < 0 || distance >= minDistance) continue;\n candidate = rect;\n minDistance = distance;\n break;\n }\n case 'ArrowUp': {\n if (!horizontallyOverlaps) continue;\n const distance = current.top - rect.bottom;\n\n if (distance < 0 || distance >= minDistance) continue;\n candidate = rect;\n minDistance = distance;\n break;\n }\n case 'ArrowDown': {\n if (!horizontallyOverlaps) continue;\n const distance = rect.top - current.bottom;\n if (distance < 0 || distance >= minDistance) continue;\n candidate = rect;\n minDistance = distance;\n break;\n }\n }\n }\n\n return rectangles.indexOf(candidate!);\n};\n\nconst DropZone = (props: DropZoneProps) => {\n const SDropZone = Root;\n const { styles } = props;\n\n return sstyled(styles)(\n <SDropZone render={DragAndDrop.Draggable} noDrag isDropZone aria-describedby={null} />,\n );\n};\n\nconst DragAndDrop = createComponent(DragAndDropRoot, {\n Draggable,\n DropZone,\n Dropable: DropZone,\n}) as any;\n\nexport default DragAndDrop;\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"DragAndDrop.js","names":["React","createComponent","sstyled","Component","Root","Box","localizedMessages","i18nEnhance","useEnhancedEffect","style","_sstyled","insert","keyboardFocusEnhance","ScreenReaderOnly","uniqueIDEnhance","canUseDOM","noop","DragAndDropContext","createContext","attach","detach","DragAndDropRoot","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","items","dragging","dragOver","hideHoverEffect","a11yHint","keyboardDraggingIndex","animatedScaling","reversedScaling","createRef","index","state","currentItem","itemText","node","getAttribute","textContent","zoneName","zonedItems","filter","i","itemsCount","itemPosition","findIndex","id","setA11yHint","setState","prevState","initialItemsRects","map","item","getBoundingClientRect","event","preventDefault","_this$state","itemIndex","rect","clientX","x","width","clientY","y","height","draggingItem","isDropZone","i18nKey","swapElements","onDnD","asProps","_this$state2","fromNode","fromId","fromIndex","toId","toIndex","draggingAllowed","_this$asProps$onInser","_this$asProps","_items$index","onInsertDroppable","children","_this$asProps$onSwapD","_this$asProps2","_items$index2","onSwapDraggable","_this$state$items$","firstItemNode","firstItemRect","parent","parentElement","document","body","computedStyle","getComputedStyle","overflow","left","right","top","bottom","_dragging$index","_items$draggingIndex","_items$dragOver","_this$state3","draggingIndex","dragNode","_items$node","_items","_this$containerRef$cu","nextDragNode","containerRef","current","insertBefore","_this$containerRef$cu2","_this$containerRef$cu3","nextSibling","focus","target","currentTarget","key","stopPropagation","_this$state$items$ind","handleItemDrop","handleItemDragStart","updateItemScaling","_items$i","_items$node2","_items2","prevNode","_this$containerRef$cu4","HTMLElement","startsWith","activeElement","requestAnimationFrame","_this$containerRef$cu5","rects","nodeRect","childNodes","forEach","childNode","roundedRect","Math","round","push","nextIndex","findNextRectangleIndex","handleItemKeyDown","customFocus","undefined","getCustomFocusItemIndex","_ref7","_prevState$items$inde","_prevState$items$inde2","_toConsumableArray","options","clearTimeout","clearA11yHintTimeout","getI18nText","window","setTimeout","_createClass","value","getDraggableProps","_","uid","onDragStart","makeItemDragStartHandler","onDragEnd","handleItemDragEnd","onDragOver","handleItemDragOver","onDragEnter","handleItemDragEnter","onDrop","onMouseMove","handleItemMouseMove","onKeyDown","makeItemKeyDownHandler","onFocus","handleItemFocus","dropPreview","keyboardDragging","dark","theme","componentDidMount","addEventListener","handlePageKeyDown","capture","componentWillUnmount","removeEventListener","componentDidUpdate","prevProps","render","_ref","_ref4","SA11yHint","_this$state4","context","_this$asProps3","styles","createElement","Provider","cn","_assignProps","control","i18n","locale","Draggable","props","_ref2","arguments[0]","_ref5","SDraggable","ref","useRef","_React$useContext","useContext","_props$placement","placement","_props$noDrag","noDrag","Children","_props$isDropZone","resolvedChildren","useMemo","_objectSpread","_assignProps2","enhance","rectangles","direction","candidate","minDistance","Infinity","verticallyOverlaps","horizontallyOverlaps","distance","indexOf","DropZone","_ref3","_ref6","SDropZone","DragAndDrop","_assignProps3","Dropable"],"sources":["../../src/DragAndDrop.tsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { sstyled, Component, Root } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport useEnhancedEffect from '@semcore/utils/lib/use/useEnhancedEffect';\n\nimport style from './style/drag-and-drop.shadow.css';\nimport { DropZoneProps } from './index';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { ScreenReaderOnly } from '@semcore/flex-box';\nimport uniqueIDEnhance from '@semcore/utils/lib/uniqueID';\nimport canUseDOM from '@semcore/utils/lib/canUseDOM';\n\ntype AsProps = {\n /**\n * @deprecated don't use this prop\n */\n theme?: 'dark' | 'default';\n /**\n * @deprecated use `onDnD` instead\n */\n onSwapDraggable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * @deprecated use `onDnD` instead\n */\n onInsertDroppable?: (draggableNode: React.ReactNode, droppableNode: React.ReactNode) => void;\n /**\n * Contolled drag and drop handler\n */\n onDnD: (dndData: { fromIndex: number; fromId: string; toIndex: number; toId: string }) => void;\n /**\n * Index of id that indicates item that is currently under the user focus in case of real browser focus cannot be used.\n * When provided, drag and drop listens to whole page keyboard events. Doesn't provide `onCustomFocusChange` callback.\n */\n customFocus?: number | string;\n getI18nText: (messageId: string, values?: { [key: string]: string | number }) => string;\n uid: string;\n};\n\ntype AttachDetails = {\n index: number;\n children: React.ReactNode;\n node: HTMLElement;\n id: string;\n draggingAllowed: boolean;\n isDropZone?: boolean;\n zoneName?: string;\n};\n\nconst noop: (...args: any[]) => any = () => {\n /* do nothing */\n};\nconst DragAndDropContext = React.createContext<{\n attach: (details: AttachDetails) => void;\n detach: (index: number) => void;\n}>({\n attach: noop,\n detach: noop,\n});\n\ntype State = {\n items: Array<Omit<AttachDetails, 'index'> | undefined>;\n dragging: null | {\n index: number;\n initialItemsRects: Array<{ x: number; y: number; width: number; height: number } | undefined>;\n };\n dragOver: number | null;\n hideHoverEffect: boolean;\n a11yHint: string | null;\n keyboardDraggingIndex: number | null;\n animatedScaling: number | null;\n reversedScaling: boolean;\n};\n\ntype A11yHintKeys = keyof typeof localizedMessages.en;\n\nclass DragAndDropRoot extends Component<AsProps, {}, State> {\n static displayName = 'DragAndDrop';\n static enhance = [i18nEnhance(localizedMessages), uniqueIDEnhance()];\n static defaultProps = {\n theme: 'default',\n i18n: localizedMessages,\n locale: 'en',\n };\n static style = style;\n\n state: State = {\n items: [],\n dragging: null,\n dragOver: null,\n hideHoverEffect: false, // https://stackoverflow.com/questions/67118739/hover-effect-reset-when-hovering-over-other-letters\n a11yHint: null,\n keyboardDraggingIndex: null,\n animatedScaling: null,\n reversedScaling: false,\n };\n\n containerRef = React.createRef<HTMLDivElement>();\n clearA11yHintTimeout = 0;\n\n handleItemDragStart = (index: number) => {\n const { items } = this.state;\n const currentItem = items[index];\n if (!currentItem) return;\n\n const itemText =\n currentItem.node.getAttribute('aria-label') || currentItem.node.textContent || `${index + 1}`;\n\n const zoneName = currentItem.zoneName;\n const zonedItems = !zoneName ? items : items.filter((i) => i?.zoneName === zoneName);\n const itemsCount = zonedItems.length;\n const itemPosition = zonedItems.findIndex(\n (i) => i?.node === currentItem.node || (i?.id && i?.id === currentItem.id),\n );\n\n this.setA11yHint(zoneName ? 'grabbedWithZone' : 'grabbed', {\n itemText,\n itemPosition: itemPosition + 1,\n itemsCount,\n zoneName: zoneName || '',\n });\n\n this.setState((prevState: State) => ({\n dragging: {\n index,\n initialItemsRects: prevState.items.map((item) => item?.node.getBoundingClientRect()),\n },\n }));\n };\n handleItemDragEnd = (event: DragEvent) => {\n event.preventDefault();\n this.setState({\n dragging: null,\n dragOver: null,\n reversedScaling: false,\n keyboardDraggingIndex: null,\n });\n };\n handleItemDragOver = (event: DragEvent) => {\n event.preventDefault();\n const { items, dragging, dragOver } = this.state;\n if (!dragging) return;\n const itemIndex = dragging.initialItemsRects.findIndex(\n (rect) =>\n rect &&\n event.clientX > rect.x &&\n event.clientX < rect.x + rect.width &&\n event.clientY > rect.y &&\n event.clientY < rect.y + rect.height,\n );\n const currentItem = items[itemIndex];\n const draggingItem = items[dragging.index];\n if (!currentItem || !draggingItem || itemIndex === dragOver) return;\n\n const node = currentItem.isDropZone ? draggingItem.node : currentItem.node;\n\n const itemText = node.getAttribute('aria-label') || node.textContent || `${itemIndex + 1}`;\n const zoneName = currentItem.zoneName;\n const zonedItems = !zoneName ? items : items.filter((i) => i?.zoneName === zoneName);\n const itemsCount = zonedItems.length;\n const itemPosition = zonedItems.findIndex(\n (i) => i?.node === currentItem.node || (i?.id && i?.id === currentItem.id),\n );\n\n const i18nKey = !zoneName\n ? 'grabbing'\n : currentItem.isDropZone\n ? 'grabbingJustWithZone'\n : 'grabbingFullWithZone';\n\n this.setA11yHint(i18nKey, {\n itemText,\n itemPosition: itemPosition + 1,\n itemsCount,\n zoneName: zoneName || '',\n });\n\n this.setState({ dragOver: itemIndex }, this.swapElements);\n };\n handleItemDrop = () => {\n const { onDnD } = this.asProps;\n if (!onDnD) return;\n\n const { items, dragging, dragOver } = this.state;\n if (!dragging) return;\n const currentItem = dragOver !== null ? items[dragOver] : items[dragging.index];\n const draggingItem = items[dragging.index];\n\n if (!currentItem || !draggingItem) return;\n\n const node = currentItem.isDropZone ? draggingItem.node : currentItem.node;\n const itemText =\n node.getAttribute('aria-label') || node.textContent || `${(dragOver ?? dragging.index) + 1}`;\n const zoneName = currentItem.zoneName;\n const zonedItems = !zoneName ? items : items.filter((i) => i?.zoneName === zoneName);\n const itemsCount = zonedItems.length;\n const itemPosition = zonedItems.findIndex(\n (i) => i?.node === currentItem.node || (i?.id && i?.id === currentItem.id),\n );\n\n const i18nKey = !zoneName\n ? 'dropped'\n : currentItem.isDropZone\n ? 'droppedJustWithZone'\n : 'droppedFullWithZone';\n\n this.setA11yHint(i18nKey, {\n itemText,\n itemPosition: itemPosition + 1,\n itemsCount,\n zoneName: zoneName || '',\n });\n\n this.setState({\n dragging: null,\n dragOver: null,\n keyboardDraggingIndex: null,\n hideHoverEffect: true,\n reversedScaling: false,\n });\n if (dragging && items[dragging.index]) {\n const fromNode = items[dragging.index];\n if (fromNode) {\n onDnD({\n fromId: fromNode.id,\n fromIndex: dragging.index,\n toId: currentItem.id,\n toIndex: dragOver ?? dragging.index,\n });\n }\n }\n if (!currentItem.draggingAllowed) {\n this.asProps.onInsertDroppable?.(items[dragging!.index]?.children, currentItem.children);\n } else {\n this.asProps.onSwapDraggable?.(items[dragging!.index]?.children, currentItem.children);\n }\n };\n handleItemDragEnter = (event: DragEvent) => {\n event.preventDefault();\n };\n handleItemMouseMove = () => {\n if (!this.state.hideHoverEffect) return;\n this.setState({ hideHoverEffect: false });\n };\n updateItemScaling = () => {\n const firstItemNode = this.state.items[0]?.node;\n if (!firstItemNode) return;\n if (this.state.reversedScaling) return;\n\n const firstItemRect = firstItemNode.getBoundingClientRect();\n let reversedScaling = false;\n let parent = firstItemNode.parentElement;\n while (parent && parent !== document.body) {\n const computedStyle = getComputedStyle(parent);\n const rect = parent.getBoundingClientRect();\n if (computedStyle.overflow !== 'visible') {\n if (\n rect.left >= firstItemRect.left ||\n rect.right <= firstItemRect.right ||\n rect.top >= firstItemRect.top ||\n rect.bottom <= firstItemRect.bottom\n ) {\n reversedScaling = true;\n break;\n }\n } else {\n if (\n rect.left < firstItemRect.left &&\n rect.right > firstItemRect.right &&\n rect.top < firstItemRect.top &&\n rect.bottom > firstItemRect.bottom\n ) {\n break;\n }\n }\n parent = parent.parentElement;\n }\n\n if (this.state.reversedScaling !== reversedScaling) {\n this.setState({ reversedScaling });\n }\n };\n swapElements = () => {\n const { items, dragging, dragOver } = this.state;\n const draggingIndex = dragging?.index ?? null;\n\n if (draggingIndex === null || dragOver === null) return;\n\n const node = items[draggingIndex]?.node;\n const dragNode = items[dragOver]?.node;\n\n if (!node || !dragNode) return;\n\n if (draggingIndex === dragOver) {\n const nextDragNode = items[dragOver + 1]?.node ?? null;\n this.containerRef.current?.insertBefore(node, nextDragNode);\n } else if (draggingIndex > dragOver) {\n this.containerRef.current?.insertBefore(node, dragNode);\n } else {\n this.containerRef.current?.insertBefore(node, dragNode.nextSibling);\n }\n\n node.focus();\n };\n handleItemKeyDown = (event: KeyboardEvent, index: number) => {\n if (event.target !== event.currentTarget) {\n return;\n }\n\n if (this.state.dragging && event.key === 'Tab') {\n event.preventDefault();\n event.stopPropagation();\n }\n\n if (event.key === ' ') {\n event.preventDefault();\n event.stopPropagation();\n if (this.state.dragging) {\n this.handleItemDrop();\n this.setState({\n dragging: null,\n dragOver: null,\n keyboardDraggingIndex: null,\n animatedScaling: index,\n hideHoverEffect: true,\n });\n } else if (this.state.items[index]?.draggingAllowed) {\n this.handleItemDragStart(index);\n this.setState({ keyboardDraggingIndex: index, animatedScaling: index });\n this.updateItemScaling();\n }\n return false;\n } else if (event.key === 'Escape' && this.state.dragging) {\n event.preventDefault();\n event.stopPropagation();\n\n this.setA11yHint('discarded');\n this.setState({\n dragging: null,\n dragOver: null,\n keyboardDraggingIndex: null,\n hideHoverEffect: true,\n });\n const { items } = this.state;\n for (let i = items.length - 1; i >= 0; i--) {\n const node = items[i]?.node;\n const prevNode = items[i + 1]?.node ?? null;\n if (node) {\n this.containerRef.current?.insertBefore(node, prevNode);\n }\n }\n\n if (event.target instanceof HTMLElement) {\n event.target.focus();\n }\n\n return false;\n } else if (event.key.startsWith('Arrow') && this.state.dragging) {\n if (this.state.animatedScaling !== null) {\n this.setState({ animatedScaling: null });\n }\n const node = event.currentTarget;\n if (!node || node !== document.activeElement) return;\n event.preventDefault();\n requestAnimationFrame(() => {\n if (!(node instanceof HTMLElement) || node !== document.activeElement) return;\n const rects: Array<{ top: number; right: number; bottom: number; left: number }> = [];\n let nodeRect: { top: number; right: number; bottom: number; left: number } = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n };\n\n this.containerRef.current?.childNodes.forEach((childNode, index) => {\n if (childNode instanceof HTMLElement) {\n const rect = childNode.getBoundingClientRect();\n const roundedRect = {\n top: Math.round(rect.top),\n right: Math.round(rect.right),\n bottom: Math.round(rect.bottom),\n left: Math.round(rect.left),\n };\n\n rects.push(roundedRect);\n\n if (childNode === node) {\n nodeRect = roundedRect;\n }\n }\n });\n const nextIndex = findNextRectangleIndex(rects, nodeRect, event.key as DirectionArrows);\n if (nextIndex === -1) return false;\n\n if (node && this.state.dragging !== null) {\n this.setA11yHint('grabbing', {\n itemPosition: nextIndex + 1,\n itemsCount: this.state.items.length,\n });\n this.setState({ dragOver: nextIndex }, () => {\n this.swapElements();\n });\n }\n return false;\n });\n }\n };\n handleItemFocus = () => {\n if (!this.state.dragging) return;\n this.updateItemScaling();\n };\n\n makeItemDragStartHandler = (index: number) => () => this.handleItemDragStart(index);\n makeItemKeyDownHandler = (index: number) => (event: KeyboardEvent) =>\n this.handleItemKeyDown(event, index);\n\n getDraggableProps(_: any, index: number) {\n const { uid } = this.asProps;\n return {\n uid,\n index,\n onDragStart: this.makeItemDragStartHandler(index),\n onDragEnd: this.handleItemDragEnd,\n onDragOver: this.handleItemDragOver,\n onDragEnter: this.handleItemDragEnter,\n onDrop: this.handleItemDrop,\n onMouseMove: this.handleItemMouseMove,\n onKeyDown: this.makeItemKeyDownHandler(index),\n onFocus: this.handleItemFocus,\n dropPreview: index === this.state.dragOver,\n keyboardDragging: index === this.state.keyboardDraggingIndex,\n reversedScaling: this.state.reversedScaling,\n dark: this.asProps.theme === 'dark',\n hideHoverEffect: this.state.hideHoverEffect,\n animatedScaling: index === this.state.animatedScaling,\n };\n }\n\n handlePageKeyDown = (event: KeyboardEvent) => {\n if (this.asProps.customFocus !== undefined) {\n const itemIndex = this.getCustomFocusItemIndex(this.asProps.customFocus);\n if (this.state.items[itemIndex!]) {\n this.handleItemKeyDown(event, itemIndex!);\n }\n }\n };\n\n attach = ({\n index,\n children,\n node,\n id,\n draggingAllowed,\n zoneName,\n isDropZone,\n }: AttachDetails) => {\n this.setState((prevState: State) => {\n if (prevState.items[index]?.children === children && prevState.items[index]?.node === node)\n return prevState;\n const { items } = prevState;\n items[index] = { children, node, id, draggingAllowed, zoneName, isDropZone };\n return { items: [...items] };\n });\n };\n detach = (index: number) => {\n this.setState((prevState: State) => {\n if (!prevState.items[index]) return prevState;\n const { items } = prevState;\n items[index] = undefined;\n return { items: [...items] };\n });\n };\n\n getCustomFocusItemIndex = (customFocus: string | number | undefined) => {\n if (customFocus === undefined) return undefined;\n let itemIndex = customFocus;\n if (typeof itemIndex === 'string') {\n itemIndex = this.state.items.findIndex((item) => item?.id === customFocus);\n }\n if (itemIndex === -1 || typeof itemIndex !== 'number') return undefined;\n return itemIndex;\n };\n\n setA11yHint = (key: A11yHintKeys, options: any = {}) => {\n clearTimeout(this.clearA11yHintTimeout);\n\n const { getI18nText } = this.asProps;\n\n this.setState({\n a11yHint: getI18nText(key, options),\n });\n\n if ((key === 'dropped' || key === 'discarded') && canUseDOM()) {\n this.clearA11yHintTimeout = window.setTimeout(() => {\n this.setState({ a11yHint: null });\n }, 2000);\n }\n };\n\n componentDidMount() {\n document.addEventListener('keydown', this.handlePageKeyDown, { capture: true });\n }\n\n componentWillUnmount() {\n clearTimeout(this.clearA11yHintTimeout);\n document.removeEventListener('keydown', this.handlePageKeyDown, { capture: true });\n }\n\n componentDidUpdate(prevProps: AsProps) {\n if (prevProps.customFocus !== this.asProps.customFocus) {\n const itemIndex = this.getCustomFocusItemIndex(this.asProps.customFocus);\n if (this.state.items[itemIndex!]) this.handleItemFocus();\n }\n }\n\n render() {\n const { attach, detach } = this;\n const SA11yHint = 'div';\n const { a11yHint, dragging } = this.state;\n const context = { attach, detach };\n const { getI18nText, uid } = this.asProps;\n\n return sstyled(this.asProps.styles)(\n <DragAndDropContext.Provider value={context}>\n {a11yHint && (\n <SA11yHint role='alert' aria-live='assertive'>\n {a11yHint}\n </SA11yHint>\n )}\n <Root render={Box} role={'group'} ref={this.containerRef} />\n <ScreenReaderOnly id={`describe-draggable-${uid}`} aria-hidden={'true'}>\n {getI18nText('describe', { control: 'Space' })}\n </ScreenReaderOnly>\n </DragAndDropContext.Provider>,\n );\n }\n}\n\nconst Draggable = (props: any) => {\n const SDraggable = Root;\n const ref = React.useRef();\n const { attach, detach } = React.useContext(DragAndDropContext);\n const {\n styles,\n placement = 'right',\n noDrag = false,\n index,\n children,\n Children,\n id,\n zoneName,\n isDropZone = false,\n uid,\n } = props;\n const resolvedChildren = React.useMemo(\n () => (typeof children === 'function' ? children(props) : children),\n [children, props],\n );\n\n useEnhancedEffect(() => {\n attach({\n index,\n children: resolvedChildren,\n node: ref.current!,\n id,\n draggingAllowed: !noDrag,\n zoneName,\n isDropZone,\n });\n return () => detach(index);\n }, [index, resolvedChildren, attach, detach, id]);\n\n return sstyled(styles)(\n <SDraggable\n render={Box}\n ref={ref}\n draggable={!noDrag}\n placement={placement}\n role={'group'}\n aria-describedby={`describe-draggable-${uid}`}\n >\n <Children />\n </SDraggable>,\n );\n};\nDraggable.enhance = [keyboardFocusEnhance()];\n\ntype DirectionArrows = 'ArrowRight' | 'ArrowLeft' | 'ArrowUp' | 'ArrowDown';\nconst findNextRectangleIndex = <\n Rectangle extends { top: number; right: number; bottom: number; left: number },\n>(\n rectangles: (Rectangle | undefined)[],\n current: Rectangle,\n direction: DirectionArrows,\n): number => {\n let candidate: Rectangle | null = null;\n let minDistance: number = Infinity;\n\n for (let i = 0; i < rectangles.length; i++) {\n const rect = rectangles[i];\n if (!rect) continue;\n if (rect === current) continue;\n\n const verticallyOverlaps = current.top <= rect.bottom && current.bottom >= rect.top;\n const horizontallyOverlaps = current.left <= rect.right && current.right >= rect.left;\n\n if (!verticallyOverlaps && !horizontallyOverlaps) continue;\n\n switch (direction) {\n case 'ArrowRight': {\n if (!verticallyOverlaps) continue;\n const distance = rect.left - current.right;\n if (distance < 0 || distance >= minDistance) continue;\n candidate = rect;\n minDistance = distance;\n break;\n }\n case 'ArrowLeft': {\n if (!verticallyOverlaps) continue;\n const distance = current.left - rect.right;\n if (distance < 0 || distance >= minDistance) continue;\n candidate = rect;\n minDistance = distance;\n break;\n }\n case 'ArrowUp': {\n if (!horizontallyOverlaps) continue;\n const distance = current.top - rect.bottom;\n\n if (distance < 0 || distance >= minDistance) continue;\n candidate = rect;\n minDistance = distance;\n break;\n }\n case 'ArrowDown': {\n if (!horizontallyOverlaps) continue;\n const distance = rect.top - current.bottom;\n if (distance < 0 || distance >= minDistance) continue;\n candidate = rect;\n minDistance = distance;\n break;\n }\n }\n }\n\n return rectangles.indexOf(candidate!);\n};\n\nconst DropZone = (props: DropZoneProps) => {\n const SDropZone = Root;\n const { styles } = props;\n\n return sstyled(styles)(\n <SDropZone render={DragAndDrop.Draggable} noDrag isDropZone aria-describedby={null} />,\n );\n};\n\nconst DragAndDrop = createComponent(DragAndDropRoot, {\n Draggable,\n DropZone,\n Dropable: DropZone,\n}) as any;\n\nexport default DragAndDrop;\n"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"name":"intergalactic/drag-and-drop","description":"Semrush DragAndDrop Component","version":"3.
|
1
|
+
{"name":"intergalactic/drag-and-drop","description":"Semrush DragAndDrop Component","version":"3.45.0-prerelease.0","main":"lib/cjs/index.js","module":"lib/es6/index.js","typings":"lib/types/index.d.ts","sideEffects":false,"author":"UI-kit team <ui-kit-team@semrush.com>","license":"MIT","scripts":{"build":"pnpm semcore-builder --source=js"},"dependencies":{"@semcore/card":"5.44.0-prerelease.0","@semcore/flex-box":"5.39.0-prerelease.0","@semcore/grid":"5.38.0-prerelease.0","@semcore/utils":"4.44.0-prerelease.0"},"peerDependencies":{"@semcore/core":"^2.37.0-prerelease.0","react":"16.8 - 18","react-dom":"16.8 - 18"},"repository":{"type":"git","url":"https://github.com/semrush/intergalactic.git","directory":"semcore/drag-and-drop"},"devDependencies":{"@semcore/badge":"*","@semcore/icon":"*","@semcore/testing-utils":"1.0.0","@semcore/tab-panel":"*","@types/react":"18.0.21"}}
|
@@ -45,14 +45,18 @@ var AbstractDropdown = /*#__PURE__*/function (_Component) {
|
|
45
45
|
var interaction = _this.asProps.interaction;
|
46
46
|
if (interaction === 'none') return false;
|
47
47
|
e.preventDefault();
|
48
|
+
e.stopPropagation();
|
48
49
|
_this.handlers.visible(true);
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
50
|
+
setTimeout(function () {
|
51
|
+
var _this$asProps$highlig;
|
52
|
+
var highlightedIndex = (_this$asProps$highlig = _this.asProps.highlightedIndex) !== null && _this$asProps$highlig !== void 0 ? _this$asProps$highlig : 0;
|
53
|
+
var element = _this.itemRefs[highlightedIndex];
|
54
|
+
element === null || element === void 0 ? void 0 : element.focus();
|
55
|
+
if (_this.role === 'menu') {
|
56
|
+
_this.handlers.highlightedIndex(highlightedIndex);
|
57
|
+
}
|
58
|
+
}, 0);
|
59
|
+
return false;
|
56
60
|
});
|
57
61
|
return _this;
|
58
62
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"AbstractDropdown.js","names":["_react","_interopRequireDefault","require","_core","_uniqueID","_i18nEnhance","_intergalacticDynamicLocales","_useFocusLock","_focusSourceEnhance","_getAccessibleName","enhance","uniqueIDEnhancement","i18nEnhance","localizedMessages","focusSourceEnhance","exports","selectedIndexContext","React","createContext","AbstractDropdown","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","createRef","e","interaction","asProps","preventDefault","handlers","visible","role","setTimeout","highlightedIndex","element","itemRefs","focus","_createClass2","key","value","uncontrolledProps","_this2","selectedIndex","index","get","getTriggerProps","_this$asProps","size","uid","disablePortal","getI18nText","id","focusHint","undefined","onClick","handleClickTrigger","ref","triggerRef","getListProps","getBasicListProps","getMenuProps","getPopperProps","_this$asProps2","ignorePortalsStacking","popperRef","tabIndex","focusMaster","hideFocus","getGroupProps","getItemProps","_","_this3","_this$asProps3","onMouseEnter","childRole","getItemHintProps","getItemTitleProps","scrollToNode","node","_this4","highlightedItemRef","current","scrollIntoView","prevHighlightedIndex","block","inline","getHighlightedIndex","amount","_this$itemProps$newIn","itemsLastIndex","itemProps","findIndex","item","selected","innerHighlightedIndex","newIndex","disabled","componentDidUpdate","prevProps","_this$asProps4","focusSourceRef","visibilityChanged","document","activeElement","body","isFocusInside","setFocus","itemRef","props","getAttribute","handlePreventCommonKeyDown","target","Element","targetTagName","tagName","includes","handlePreventPopperKeyDown","handleOpenKeyDown","currentTarget","handleArrowKeyDown","amountCount","shiftKey","_this$asProps5","inlineActions","stopPropagation","click","newHighlightedIndex","_this$itemRefs$newHig","focusTrigger","trigger","_this$triggerRef$curr","_this$asProps6","triggerId","triggerElement","getElementById","menuRef","getAccessibleName","Component"],"sources":["../../src/AbstractDropdown.tsx"],"sourcesContent":["import React from 'react';\nimport { Component } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport { isFocusInside, setFocus } from '@semcore/utils/lib/use/useFocusLock';\nimport focusSourceEnhance from '@semcore/utils/lib/enhances/focusSourceEnhance';\nimport { DropdownProps } from './index';\nimport { getAccessibleName } from '@semcore/utils/lib/getAccessibleName';\n\ntype AbstractDDProps = {\n visible: boolean;\n highlightedIndex: number | null;\n selectedIndex: number | null;\n placement: DropdownProps['placement'];\n inlineActions: boolean;\n disablePortal: boolean;\n ignorePortalsStacking: boolean;\n interaction: DropdownProps['interaction'];\n timeout?: number | [number, number];\n};\n\nexport const enhance = [\n uniqueIDEnhancement(),\n i18nEnhance(localizedMessages),\n focusSourceEnhance(),\n] as const;\n\nexport const selectedIndexContext = React.createContext(0);\n\nexport abstract class AbstractDropdown extends Component<AbstractDDProps, {}, {}, typeof enhance> {\n protected abstract role: 'menu' | 'listbox';\n\n popperRef = React.createRef<HTMLElement>();\n triggerRef = React.createRef<HTMLElement>();\n menuRef = React.createRef<HTMLElement>();\n\n itemProps: any[] = [];\n itemRefs: HTMLElement[] = [];\n\n highlightedItemRef = React.createRef<HTMLElement>();\n\n prevHighlightedIndex: number | null = null;\n\n uncontrolledProps() {\n return {\n selectedIndex: null,\n highlightedIndex: [\n null,\n (index: number | null) => {\n this.handlers.selectedIndex(index);\n },\n ],\n visible: null,\n };\n }\n\n get childRole() {\n if (this.role === 'listbox') {\n return 'option';\n }\n\n return 'menuitem';\n }\n\n handleClickTrigger = (e: React.SyntheticEvent) => {\n const { interaction } = this.asProps;\n\n if (interaction === 'none') return false;\n\n e.preventDefault();\n this.handlers.visible(true);\n\n if (this.role === 'menu') {\n setTimeout(() => {\n const { highlightedIndex } = this.asProps;\n const element = this.itemRefs[highlightedIndex ?? 0];\n element?.focus();\n }, 0);\n }\n };\n\n getTriggerProps() {\n const { size, uid, disablePortal, visible, getI18nText } = this.asProps;\n\n return {\n size,\n id: `igc-${uid}-trigger`,\n focusHint: visible && !disablePortal ? getI18nText('triggerHint') : undefined,\n 'aria-haspopup': 'true',\n 'aria-expanded': visible ? 'true' : 'false',\n onClick: this.handleClickTrigger,\n ref: this.triggerRef,\n };\n }\n\n getListProps() {\n return this.getBasicListProps();\n }\n\n getMenuProps() {\n return this.getBasicListProps();\n }\n\n getPopperProps() {\n const { uid, disablePortal, ignorePortalsStacking, interaction, highlightedIndex } =\n this.asProps;\n\n return {\n ref: this.popperRef,\n tabIndex: -1,\n id: `igc-${uid}-popper`,\n disablePortal,\n ignorePortalsStacking,\n focusMaster: interaction === 'click',\n hideFocus: highlightedIndex !== null,\n 'use:autoFocus': false,\n };\n }\n\n getGroupProps() {\n const { size } = this.asProps;\n return {\n size,\n };\n }\n\n getItemProps(_: any, index: number) {\n const { size, uid } = this.asProps;\n\n return {\n id: `igc-${uid}-option-${index}`,\n size,\n index,\n onMouseEnter: () => {\n this.handlers.selectedIndex(index);\n },\n role: this.childRole,\n };\n }\n\n getItemHintProps() {\n const { size } = this.asProps;\n return {\n size,\n };\n }\n\n getItemTitleProps() {\n const { size } = this.asProps;\n return {\n size,\n };\n }\n\n scrollToNode(node: Element | null) {\n if (node) {\n // @ts-ignore\n this.highlightedItemRef.current = node;\n }\n setTimeout(() => {\n if (node?.scrollIntoView) {\n if (this.asProps.highlightedIndex !== this.prevHighlightedIndex) {\n this.prevHighlightedIndex = this.asProps.highlightedIndex;\n node.scrollIntoView({\n block: 'nearest',\n inline: 'nearest',\n });\n }\n }\n }, 0);\n }\n\n getHighlightedIndex(amount: number): number {\n const { highlightedIndex } = this.asProps;\n const itemsLastIndex = this.itemProps.length - 1;\n const selectedIndex = this.itemProps.findIndex((item) => item.selected);\n\n if (itemsLastIndex < 0) return 0;\n\n let innerHighlightedIndex: number;\n\n if (highlightedIndex == null) {\n if (selectedIndex !== -1) {\n innerHighlightedIndex = selectedIndex;\n } else if (this.highlightedItemRef.current && this.prevHighlightedIndex !== null) {\n innerHighlightedIndex = this.prevHighlightedIndex;\n } else {\n innerHighlightedIndex = amount < 0 ? 0 : itemsLastIndex;\n }\n } else {\n innerHighlightedIndex = highlightedIndex;\n }\n\n let newIndex = innerHighlightedIndex + amount;\n if (newIndex < 0) {\n newIndex = amount + itemsLastIndex + 1;\n } else if (newIndex > itemsLastIndex) {\n newIndex = newIndex - itemsLastIndex - 1;\n }\n\n if (this.itemProps[newIndex]?.disabled) {\n return this.getHighlightedIndex(amount < 0 ? amount - 1 : amount + 1);\n } else if (!this.itemProps[newIndex]) {\n return 0;\n } else {\n return newIndex;\n }\n }\n\n componentDidUpdate(prevProps: AbstractDDProps) {\n const { visible, focusSourceRef } = this.asProps;\n const visibilityChanged = visible !== prevProps.visible;\n\n if (visibilityChanged && prevProps.visible !== undefined) {\n if (!visible) {\n this.handlers.highlightedIndex(null);\n // @ts-ignore\n this.highlightedItemRef.current = null;\n if (\n this.popperRef.current &&\n this.triggerRef.current &&\n (document.activeElement === document.body || isFocusInside(this.popperRef.current)) &&\n focusSourceRef.current === 'keyboard'\n ) {\n setFocus(this.triggerRef.current);\n }\n }\n }\n }\n\n protected itemRef(props: any, index: number, node: HTMLElement | null) {\n if (node?.getAttribute('role') === this.childRole) {\n this.itemRefs[index] = node;\n this.itemProps[index] = props;\n }\n }\n\n protected handlePreventCommonKeyDown(e: React.KeyboardEvent<HTMLElement>) {\n if (e.target instanceof Element) {\n const targetTagName = e.target.tagName;\n\n if (e.key === ' ' && ['INPUT', 'TEXTAREA'].includes(targetTagName)) return false;\n if (e.key === 'Enter' && targetTagName === 'TEXTAREA') return false;\n }\n }\n protected handlePreventPopperKeyDown(e: React.KeyboardEvent<HTMLElement>) {\n if (e.target instanceof Element) {\n const targetTagName = e.target.tagName;\n\n if (\n (e.key === ' ' || e.key === 'Enter') &&\n (targetTagName === 'BUTTON' || targetTagName === 'A')\n )\n return false;\n }\n }\n protected handleOpenKeyDown(e: React.KeyboardEvent<HTMLElement>) {\n if (\n this.asProps.visible !== true &&\n ['ArrowDown', 'ArrowUp', 'Enter', ' '].includes(e.key) &&\n e.currentTarget.getAttribute('role') !== this.childRole\n ) {\n this.handleClickTrigger(e);\n }\n }\n\n protected handleArrowKeyDown(e: React.KeyboardEvent<HTMLElement>) {\n const amountCount = e.shiftKey ? 5 : 1;\n const { highlightedIndex, inlineActions } = this.asProps;\n\n let amount: number | null = null;\n\n switch (e.key) {\n case 'ArrowDown': {\n if (!inlineActions) {\n amount = amountCount;\n }\n break;\n }\n case 'ArrowUp': {\n if (!inlineActions) {\n amount = -amountCount;\n }\n break;\n }\n case 'ArrowRight': {\n if (inlineActions) {\n amount = amountCount;\n }\n break;\n }\n case 'ArrowLeft': {\n if (inlineActions) {\n amount = -amountCount;\n }\n break;\n }\n case ' ':\n case 'Enter':\n if (this.highlightedItemRef.current && highlightedIndex !== null) {\n e.stopPropagation();\n e.preventDefault();\n this.highlightedItemRef.current.click();\n }\n\n break;\n }\n\n if (amount !== null) {\n const newHighlightedIndex = this.getHighlightedIndex(amount);\n if (newHighlightedIndex !== undefined && this.role === 'menu') {\n this.itemRefs[newHighlightedIndex]?.focus();\n }\n if (\n this.role === 'listbox' &&\n this.triggerRef.current &&\n !isFocusInside(this.triggerRef.current)\n ) {\n this.focusTrigger();\n }\n this.handlers.highlightedIndex(newHighlightedIndex, e);\n\n e.preventDefault();\n e.stopPropagation();\n }\n }\n\n private focusTrigger() {\n const trigger = this.triggerRef.current;\n if (!trigger) return;\n if (isFocusInside(trigger)) return;\n setFocus(trigger);\n }\n\n private getBasicListProps() {\n const { size, uid } = this.asProps;\n const triggerId = this.triggerRef.current?.id;\n const triggerElement = triggerId ? document.getElementById(triggerId) : null;\n\n return {\n size,\n index: this.asProps.highlightedIndex,\n tabIndex: -1,\n ref: this.menuRef,\n id: `igc-${uid}-list`,\n role: this.role,\n 'aria-label': getAccessibleName(triggerElement),\n };\n }\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"AbstractDropdown.js","names":["_react","_interopRequireDefault","require","_core","_uniqueID","_i18nEnhance","_intergalacticDynamicLocales","_useFocusLock","_focusSourceEnhance","_getAccessibleName","enhance","uniqueIDEnhancement","i18nEnhance","localizedMessages","focusSourceEnhance","exports","selectedIndexContext","React","createContext","AbstractDropdown","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","createRef","e","interaction","asProps","preventDefault","stopPropagation","handlers","visible","setTimeout","_this$asProps$highlig","highlightedIndex","element","itemRefs","focus","role","_createClass2","key","value","uncontrolledProps","_this2","selectedIndex","index","get","getTriggerProps","_this$asProps","size","uid","disablePortal","getI18nText","id","focusHint","undefined","onClick","handleClickTrigger","ref","triggerRef","getListProps","getBasicListProps","getMenuProps","getPopperProps","_this$asProps2","ignorePortalsStacking","popperRef","tabIndex","focusMaster","hideFocus","getGroupProps","getItemProps","_","_this3","_this$asProps3","onMouseEnter","childRole","getItemHintProps","getItemTitleProps","scrollToNode","node","_this4","highlightedItemRef","current","scrollIntoView","prevHighlightedIndex","block","inline","getHighlightedIndex","amount","_this$itemProps$newIn","itemsLastIndex","itemProps","findIndex","item","selected","innerHighlightedIndex","newIndex","disabled","componentDidUpdate","prevProps","_this$asProps4","focusSourceRef","visibilityChanged","document","activeElement","body","isFocusInside","setFocus","itemRef","props","getAttribute","handlePreventCommonKeyDown","target","Element","targetTagName","tagName","includes","handlePreventPopperKeyDown","handleOpenKeyDown","currentTarget","handleArrowKeyDown","amountCount","shiftKey","_this$asProps5","inlineActions","click","newHighlightedIndex","_this$itemRefs$newHig","focusTrigger","trigger","_this$triggerRef$curr","_this$asProps6","triggerId","triggerElement","getElementById","menuRef","getAccessibleName","Component"],"sources":["../../src/AbstractDropdown.tsx"],"sourcesContent":["import React from 'react';\nimport { Component } from '@semcore/core';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport { isFocusInside, setFocus } from '@semcore/utils/lib/use/useFocusLock';\nimport focusSourceEnhance from '@semcore/utils/lib/enhances/focusSourceEnhance';\nimport { DropdownProps } from './index';\nimport { getAccessibleName } from '@semcore/utils/lib/getAccessibleName';\n\ntype AbstractDDProps = {\n visible: boolean;\n highlightedIndex: number | null;\n selectedIndex: number | null;\n placement: DropdownProps['placement'];\n inlineActions: boolean;\n disablePortal: boolean;\n ignorePortalsStacking: boolean;\n interaction: DropdownProps['interaction'];\n timeout?: number | [number, number];\n};\n\nexport const enhance = [\n uniqueIDEnhancement(),\n i18nEnhance(localizedMessages),\n focusSourceEnhance(),\n] as const;\n\nexport const selectedIndexContext = React.createContext(0);\n\nexport abstract class AbstractDropdown extends Component<AbstractDDProps, {}, {}, typeof enhance> {\n protected abstract role: 'menu' | 'listbox';\n\n popperRef = React.createRef<HTMLElement>();\n triggerRef = React.createRef<HTMLElement>();\n menuRef = React.createRef<HTMLElement>();\n\n itemProps: any[] = [];\n itemRefs: HTMLElement[] = [];\n\n highlightedItemRef = React.createRef<HTMLElement>();\n\n prevHighlightedIndex: number | null = null;\n\n uncontrolledProps() {\n return {\n selectedIndex: null,\n highlightedIndex: [\n null,\n (index: number | null) => {\n this.handlers.selectedIndex(index);\n },\n ],\n visible: null,\n };\n }\n\n get childRole() {\n if (this.role === 'listbox') {\n return 'option';\n }\n\n return 'menuitem';\n }\n\n handleClickTrigger = (e: React.SyntheticEvent) => {\n const { interaction } = this.asProps;\n\n if (interaction === 'none') return false;\n\n e.preventDefault();\n e.stopPropagation();\n this.handlers.visible(true);\n\n setTimeout(() => {\n const highlightedIndex = this.asProps.highlightedIndex ?? 0;\n const element = this.itemRefs[highlightedIndex];\n element?.focus();\n if (this.role === 'menu') {\n this.handlers.highlightedIndex(highlightedIndex);\n }\n }, 0);\n\n return false;\n };\n\n getTriggerProps() {\n const { size, uid, disablePortal, visible, getI18nText } = this.asProps;\n\n return {\n size,\n id: `igc-${uid}-trigger`,\n focusHint: visible && !disablePortal ? getI18nText('triggerHint') : undefined,\n 'aria-haspopup': 'true',\n 'aria-expanded': visible ? 'true' : 'false',\n onClick: this.handleClickTrigger,\n ref: this.triggerRef,\n };\n }\n\n getListProps() {\n return this.getBasicListProps();\n }\n\n getMenuProps() {\n return this.getBasicListProps();\n }\n\n getPopperProps() {\n const { uid, disablePortal, ignorePortalsStacking, interaction, highlightedIndex } =\n this.asProps;\n\n return {\n ref: this.popperRef,\n tabIndex: -1,\n id: `igc-${uid}-popper`,\n disablePortal,\n ignorePortalsStacking,\n focusMaster: interaction === 'click',\n hideFocus: highlightedIndex !== null,\n 'use:autoFocus': false,\n };\n }\n\n getGroupProps() {\n const { size } = this.asProps;\n return {\n size,\n };\n }\n\n getItemProps(_: any, index: number) {\n const { size, uid } = this.asProps;\n\n return {\n id: `igc-${uid}-option-${index}`,\n size,\n index,\n onMouseEnter: () => {\n this.handlers.selectedIndex(index);\n },\n role: this.childRole,\n };\n }\n\n getItemHintProps() {\n const { size } = this.asProps;\n return {\n size,\n };\n }\n\n getItemTitleProps() {\n const { size } = this.asProps;\n return {\n size,\n };\n }\n\n scrollToNode(node: Element | null) {\n if (node) {\n // @ts-ignore\n this.highlightedItemRef.current = node;\n }\n setTimeout(() => {\n if (node?.scrollIntoView) {\n if (this.asProps.highlightedIndex !== this.prevHighlightedIndex) {\n this.prevHighlightedIndex = this.asProps.highlightedIndex;\n node.scrollIntoView({\n block: 'nearest',\n inline: 'nearest',\n });\n }\n }\n }, 0);\n }\n\n getHighlightedIndex(amount: number): number {\n const { highlightedIndex } = this.asProps;\n const itemsLastIndex = this.itemProps.length - 1;\n const selectedIndex = this.itemProps.findIndex((item) => item.selected);\n\n if (itemsLastIndex < 0) return 0;\n\n let innerHighlightedIndex: number;\n\n if (highlightedIndex == null) {\n if (selectedIndex !== -1) {\n innerHighlightedIndex = selectedIndex;\n } else if (this.highlightedItemRef.current && this.prevHighlightedIndex !== null) {\n innerHighlightedIndex = this.prevHighlightedIndex;\n } else {\n innerHighlightedIndex = amount < 0 ? 0 : itemsLastIndex;\n }\n } else {\n innerHighlightedIndex = highlightedIndex;\n }\n\n let newIndex = innerHighlightedIndex + amount;\n if (newIndex < 0) {\n newIndex = amount + itemsLastIndex + 1;\n } else if (newIndex > itemsLastIndex) {\n newIndex = newIndex - itemsLastIndex - 1;\n }\n\n if (this.itemProps[newIndex]?.disabled) {\n return this.getHighlightedIndex(amount < 0 ? amount - 1 : amount + 1);\n } else if (!this.itemProps[newIndex]) {\n return 0;\n } else {\n return newIndex;\n }\n }\n\n componentDidUpdate(prevProps: AbstractDDProps) {\n const { visible, focusSourceRef } = this.asProps;\n const visibilityChanged = visible !== prevProps.visible;\n\n if (visibilityChanged && prevProps.visible !== undefined) {\n if (!visible) {\n this.handlers.highlightedIndex(null);\n // @ts-ignore\n this.highlightedItemRef.current = null;\n if (\n this.popperRef.current &&\n this.triggerRef.current &&\n (document.activeElement === document.body || isFocusInside(this.popperRef.current)) &&\n focusSourceRef.current === 'keyboard'\n ) {\n setFocus(this.triggerRef.current);\n }\n }\n }\n }\n\n protected itemRef(props: any, index: number, node: HTMLElement | null) {\n if (node?.getAttribute('role') === this.childRole) {\n this.itemRefs[index] = node;\n this.itemProps[index] = props;\n }\n }\n\n protected handlePreventCommonKeyDown(e: React.KeyboardEvent<HTMLElement>) {\n if (e.target instanceof Element) {\n const targetTagName = e.target.tagName;\n\n if (e.key === ' ' && ['INPUT', 'TEXTAREA'].includes(targetTagName)) return false;\n if (e.key === 'Enter' && targetTagName === 'TEXTAREA') return false;\n }\n }\n protected handlePreventPopperKeyDown(e: React.KeyboardEvent<HTMLElement>) {\n if (e.target instanceof Element) {\n const targetTagName = e.target.tagName;\n\n if (\n (e.key === ' ' || e.key === 'Enter') &&\n (targetTagName === 'BUTTON' || targetTagName === 'A')\n )\n return false;\n }\n }\n protected handleOpenKeyDown(e: React.KeyboardEvent<HTMLElement>) {\n if (\n this.asProps.visible !== true &&\n ['ArrowDown', 'ArrowUp', 'Enter', ' '].includes(e.key) &&\n e.currentTarget.getAttribute('role') !== this.childRole\n ) {\n this.handleClickTrigger(e);\n }\n }\n\n protected handleArrowKeyDown(e: React.KeyboardEvent<HTMLElement>) {\n const amountCount = e.shiftKey ? 5 : 1;\n const { highlightedIndex, inlineActions } = this.asProps;\n\n let amount: number | null = null;\n\n switch (e.key) {\n case 'ArrowDown': {\n if (!inlineActions) {\n amount = amountCount;\n }\n break;\n }\n case 'ArrowUp': {\n if (!inlineActions) {\n amount = -amountCount;\n }\n break;\n }\n case 'ArrowRight': {\n if (inlineActions) {\n amount = amountCount;\n }\n break;\n }\n case 'ArrowLeft': {\n if (inlineActions) {\n amount = -amountCount;\n }\n break;\n }\n case ' ':\n case 'Enter':\n if (this.highlightedItemRef.current && highlightedIndex !== null) {\n e.stopPropagation();\n e.preventDefault();\n this.highlightedItemRef.current.click();\n }\n\n break;\n }\n\n if (amount !== null) {\n const newHighlightedIndex = this.getHighlightedIndex(amount);\n if (newHighlightedIndex !== undefined && this.role === 'menu') {\n this.itemRefs[newHighlightedIndex]?.focus();\n }\n if (\n this.role === 'listbox' &&\n this.triggerRef.current &&\n !isFocusInside(this.triggerRef.current)\n ) {\n this.focusTrigger();\n }\n this.handlers.highlightedIndex(newHighlightedIndex, e);\n\n e.preventDefault();\n e.stopPropagation();\n }\n }\n\n private focusTrigger() {\n const trigger = this.triggerRef.current;\n if (!trigger) return;\n if (isFocusInside(trigger)) return;\n setFocus(trigger);\n }\n\n private getBasicListProps() {\n const { size, uid } = this.asProps;\n const triggerId = this.triggerRef.current?.id;\n const triggerElement = triggerId ? document.getElementById(triggerId) : null;\n\n return {\n size,\n index: this.asProps.highlightedIndex,\n tabIndex: -1,\n ref: this.menuRef,\n id: `igc-${uid}-list`,\n role: this.role,\n 'aria-label': getAccessibleName(triggerElement),\n };\n }\n}\n"],"mappings":"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"}
|
@@ -31,21 +31,21 @@ var _DropdownItem = require("./DropdownItem");
|
|
31
31
|
var _flexBox = require("intergalactic/flex-box");
|
32
32
|
var _excluded = ["Children", "forwardRef", "modifiers", "stretch"];
|
33
33
|
/*__reshadow-styles__:"./style/dropdown.shadow.css"*/
|
34
|
-
var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".
|
35
|
-
"__SDropdownPopper": "
|
36
|
-
"__SDropdownItem": "
|
37
|
-
"_highlighted": "
|
38
|
-
"_disabled": "
|
39
|
-
"_size_l": "
|
40
|
-
"_size_m": "
|
41
|
-
"_visible": "
|
42
|
-
"_nesting-trigger": "__nesting-
|
43
|
-
"__SGroupTitle": "
|
44
|
-
"__SGroupHint": "
|
45
|
-
"_selected": "
|
46
|
-
"_notInteractive": "
|
47
|
-
"_variant_hint": "
|
48
|
-
"_variant_title": "
|
34
|
+
var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".___SDropdownItem_t47um_gg_,.___SDropdownPopper_t47um_gg_{position:relative;box-sizing:border-box;color:var(--intergalactic-text-primary, #191b23)}.___SDropdownPopper_t47um_gg_{background-color:var(--intergalactic-bg-primary-neutral, #ffffff);border-radius:var(--intergalactic-popper-rounded, 6px);border:1px solid var(--intergalactic-border-secondary, #e0e1e9);white-space:normal;box-shadow:var(--intergalactic-box-shadow-popper, 0px 1px 12px 0px rgba(25, 27, 35, 0.15))}.___SDropdownItem_t47um_gg_{-webkit-text-decoration:none;text-decoration:none;cursor:pointer;width:100%;text-align:left;line-height:normal}@media (hover:hover){.___SDropdownItem_t47um_gg_:hover{background-color:var(--intergalactic-dropdown-menu-item-hover, #f4f5f9)}}.___SDropdownItem_t47um_gg_:focus{outline:0}.___SDropdownItem_t47um_gg_.__selected_t47um_gg_{background-color:var(--intergalactic-dropdown-menu-item-selected, rgba(196, 229, 254, 0.7));box-shadow:2px 0 0 0 var(--intergalactic-control-primary-info, #008ff8) inset}@media (hover:hover){.___SDropdownItem_t47um_gg_.__selected_t47um_gg_:hover{background-color:var(--intergalactic-dropdown-menu-item-selected-hover, #c4e5fe)}}.___SDropdownItem_t47um_gg_.__highlighted_t47um_gg_{z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownItem_t47um_gg_.__disabled_t47um_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___SDropdownItem_t47um_gg_._size_l_t47um_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%);padding:var(--intergalactic-spacing-2x, 8px) var(--intergalactic-spacing-3x, 12px);min-height:40px}.___SDropdownItem_t47um_gg_._size_m_t47um_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);padding:calc(var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px)) var(--intergalactic-spacing-2x, 8px);min-height:32px}.___SDropdownItem_t47um_gg_.__notInteractive_t47um_gg_{cursor:default}@media (hover:hover){.___SDropdownItem_t47um_gg_.__notInteractive_t47um_gg_:hover{background:0 0}}.___SDropdownItem_t47um_gg_._variant_hint_t47um_gg_{color:var(--intergalactic-text-secondary, #6c6e79);cursor:default}@media (hover:hover){.___SDropdownItem_t47um_gg_._variant_hint_t47um_gg_:hover{background:0 0}}.___SDropdownItem_t47um_gg_._variant_title_t47um_gg_{font-weight:var(--intergalactic-bold, 700);cursor:default}@media (hover:hover){.___SDropdownItem_t47um_gg_._variant_title_t47um_gg_:hover{background:0 0}}.___SDropdownItem_t47um_gg_.__visible_t47um_gg_{background-color:var(--intergalactic-dropdown-menu-item-hover, #f4f5f9)}.___SDropdownItem_t47um_gg_.__nesting-trigger_t47um_gg_{justify-content:space-between}.___SGroupTitle_t47um_gg_{font-weight:var(--intergalactic-bold, 700)}.___SGroupHint_t47um_gg_{color:var(--intergalactic-text-secondary, #6c6e79)}" /*__inner_css_end__*/, "t47um_gg_") /*__reshadow_css_end__*/, {
|
35
|
+
"__SDropdownPopper": "___SDropdownPopper_t47um_gg_",
|
36
|
+
"__SDropdownItem": "___SDropdownItem_t47um_gg_",
|
37
|
+
"_highlighted": "__highlighted_t47um_gg_",
|
38
|
+
"_disabled": "__disabled_t47um_gg_",
|
39
|
+
"_size_l": "_size_l_t47um_gg_",
|
40
|
+
"_size_m": "_size_m_t47um_gg_",
|
41
|
+
"_visible": "__visible_t47um_gg_",
|
42
|
+
"_nesting-trigger": "__nesting-trigger_t47um_gg_",
|
43
|
+
"__SGroupTitle": "___SGroupTitle_t47um_gg_",
|
44
|
+
"__SGroupHint": "___SGroupHint_t47um_gg_",
|
45
|
+
"_selected": "__selected_t47um_gg_",
|
46
|
+
"_notInteractive": "__notInteractive_t47um_gg_",
|
47
|
+
"_variant_hint": "_variant_hint_t47um_gg_",
|
48
|
+
"_variant_title": "_variant_title_t47um_gg_"
|
49
49
|
});
|
50
50
|
var INTERACTION_TAGS = ['INPUT', 'TEXTAREA'];
|
51
51
|
var DropdownRoot = /*#__PURE__*/function (_Component) {
|
@@ -96,7 +96,7 @@ var DropdownRoot = /*#__PURE__*/function (_Component) {
|
|
96
96
|
}
|
97
97
|
if (e.key === ' ' && INTERACTION_TAGS.includes(e.target.tagName)) return;
|
98
98
|
if (e.key === 'Enter' && e.target.tagName === 'TEXTAREA') return;
|
99
|
-
if (['Enter', ' '].includes(e.key) && interaction !== 'none') {
|
99
|
+
if (['Enter', ' '].includes(e.key) && interaction !== 'none' && !e.isPropagationStopped()) {
|
100
100
|
e.preventDefault();
|
101
101
|
_this.handlers.visible(true);
|
102
102
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Dropdown.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_popper","_capitalizeFirstLetter","_uniqueID","_i18nEnhance","_intergalacticDynamicLocales","_useFocusLock","_DropdownItem","_flexBox","_excluded","style","_index","sstyled","insert","INTERACTION_TAGS","DropdownRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","React","createRef","name","enabled","phase","fn","_ref7","state","options","_state$placement$spli","placement","split","_state$placement$spli2","_slicedToArray2","position","isVertical","indexOf","len","referenceLen","elements","reference","capitalizeFirstLetter","stretch","rects","popper","width","Math","max","e","_this$asProps","asProps","visible","interaction","element","popperRef","current","key","hasFocusableIn","preventDefault","includes","target","tagName","handlers","_createClass2","value","uncontrolledProps","getTriggerProps","_this$asProps2","uid","disablePortal","getI18nText","id","undefined","focusHint","onKeyDown","handlerTriggerKeyDown","getPopperProps","_this$asProps3","ignorePortalsStacking","tabIndex","role","ref","focusMaster","autoFocus","render","_this$asProps4","Children","forwardRef","_this$asProps4$modifi","modifiers","other","_objectWithoutProperties2","createElement","_extends2","_toConsumableArray2","defaultModifiers","_typeof2","Component","offset","defaultVisible","i18n","localizedMessages","locale","uniqueIDEnhancement","i18nEnhance","DropdownTrigger","_ref8","_ref","arguments[0]","_ref4","styles","Tag","tag","hasInputTrigger","isInputTriggerTag","SDropdownTrigger","Popper","Trigger","cn","_objectSpread2","assignProps","DropdownPopper","_ref9","_ref2","_ref5","SDropdownPopper","DropdownGroup","props","_ref3","_ref6","title","subTitle","size","SGroup","Box","SDropdownItemContainer","Dropdown","Item","SGroupTitle","Flex","SGroupHint","uidTitle","useUID","uidSubTitle","groupAriaProps","Fragment","createComponent","DropdownItem","Group","parent","_default","exports"],"sources":["../../src/Dropdown.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Root, Component, sstyled } from '@semcore/core';\nimport Popper, { isInputTriggerTag } from '@semcore/popper';\nimport capitalizeFirstLetter from '@semcore/utils/lib/capitalizeFirstLetter';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\n\nimport style from './style/dropdown.shadow.css';\nimport { hasFocusableIn } from '@semcore/utils/lib/use/useFocusLock';\nimport { DropdownItem } from './DropdownItem';\nimport { Flex, Box } from '@semcore/flex-box';\nimport { useUID } from '@semcore/utils/lib/uniqueID';\n\nconst INTERACTION_TAGS = ['INPUT', 'TEXTAREA'];\n\nclass DropdownRoot extends Component {\n static displayName = 'Dropdown';\n static style = style;\n static defaultProps = {\n // timeout: [100, 50],\n placement: 'bottom-start',\n offset: [0, 4],\n stretch: 'min',\n defaultVisible: false,\n i18n: localizedMessages,\n locale: 'en',\n interaction: 'click',\n };\n static enhance = [uniqueIDEnhancement(), i18nEnhance(localizedMessages)];\n\n popperRef = React.createRef();\n\n uncontrolledProps() {\n return {\n visible: null,\n };\n }\n\n defaultModifiers = [\n {\n name: 'flip',\n enabled: false,\n },\n {\n name: 'stretch',\n phase: 'beforeRead',\n enabled: true,\n fn: function ({ state, options }) {\n const [position] = state.placement.split('-');\n\n const isVertical = ['left', 'right'].indexOf(position) !== -1;\n const len = isVertical ? 'height' : 'width';\n const referenceLen = state.elements.reference[`offset${capitalizeFirstLetter(len)}`];\n\n if (options.stretch === 'min') {\n state.rects.popper.width = Math.max(state.rects.popper.width, referenceLen);\n state.elements.popper.style[`min${capitalizeFirstLetter(len)}`] = `${referenceLen}px`;\n }\n\n if (options.stretch === 'fixed') {\n state.rects.popper.width = referenceLen;\n state.elements.popper.style[len] = `${referenceLen}px`;\n }\n },\n },\n ];\n\n handlerTriggerKeyDown = (e) => {\n const { visible, interaction } = this.asProps;\n const element = this.popperRef.current;\n\n if (\n interaction === 'click' &&\n visible &&\n e.key === 'Tab' &&\n element &&\n !hasFocusableIn(element)\n ) {\n e.preventDefault();\n\n return;\n }\n\n if (e.key === ' ' && INTERACTION_TAGS.includes(e.target.tagName)) return;\n if (e.key === 'Enter' && e.target.tagName === 'TEXTAREA') return;\n\n if (['Enter', ' '].includes(e.key) && interaction !== 'none') {\n e.preventDefault();\n this.handlers.visible(true);\n }\n };\n\n getTriggerProps() {\n const { uid, visible, disablePortal, getI18nText } = this.asProps;\n\n return {\n id: `igc-${uid}-trigger`,\n 'aria-controls': visible ? `igc-${uid}-popper` : undefined,\n focusHint: visible && !disablePortal ? getI18nText('triggerHint') : undefined,\n 'aria-expanded': visible ? 'true' : 'false',\n onKeyDown: this.handlerTriggerKeyDown,\n 'aria-haspopup': 'dialog',\n };\n }\n\n getPopperProps() {\n const { uid, disablePortal, ignorePortalsStacking, interaction } = this.asProps;\n\n return {\n id: `igc-${uid}-popper`,\n tabIndex: 0,\n role: 'dialog',\n disablePortal,\n ignorePortalsStacking,\n ref: this.popperRef,\n focusMaster: interaction === 'click',\n autoFocus: 'enforced',\n };\n }\n\n render() {\n const { Children, forwardRef, modifiers = [], stretch, ...other } = this.asProps;\n\n return (\n <Popper\n ref={forwardRef}\n modifiers={[\n ...this.defaultModifiers,\n {\n name: 'stretch',\n options: typeof stretch === 'object' ? stretch : { stretch },\n },\n ...modifiers,\n ]}\n {...other}\n >\n <Children />\n </Popper>\n );\n }\n}\n\nfunction DropdownTrigger({ styles, tag: Tag }) {\n const hasInputTrigger = isInputTriggerTag(Tag);\n const SDropdownTrigger = Root;\n\n return sstyled(styles)(\n <SDropdownTrigger render={Popper.Trigger} role={hasInputTrigger ? 'combobox' : 'button'} />,\n );\n}\n\nfunction DropdownPopper({ styles }) {\n const SDropdownPopper = Root;\n return sstyled(styles)(<SDropdownPopper render={Popper.Popper} />);\n}\n\nfunction DropdownGroup(props) {\n const { styles, title, Children, subTitle, size } = props;\n const SGroup = Root;\n const SDropdownItemContainer = Dropdown.Item;\n const SGroupTitle = Flex;\n const SGroupHint = Flex;\n const uidTitle = useUID('title_mi_group');\n const uidSubTitle = useUID('sub_title_mi_group');\n const groupAriaProps = {\n 'aria-labelledby': uidTitle,\n 'aria-describedby': subTitle ? uidSubTitle : undefined,\n };\n return sstyled(styles)(\n <>\n <SDropdownItemContainer notInteractive aria-hidden={'true'} tabindex={-1} size={size}>\n <SGroupTitle id={uidTitle}>{title}</SGroupTitle>\n {subTitle && <SGroupHint id={uidSubTitle}>{subTitle}</SGroupHint>}\n </SDropdownItemContainer>\n <SGroup render={Box} role={'group'} {...groupAriaProps} __excludeProps={['title']}>\n <Children />\n </SGroup>\n </>,\n );\n}\n\nconst Dropdown = createComponent(\n DropdownRoot,\n {\n Trigger: DropdownTrigger,\n Popper: DropdownPopper,\n Item: DropdownItem,\n Group: DropdownGroup,\n },\n {\n parent: Popper,\n },\n);\n\nexport default Dropdown;\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"Dropdown.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_popper","_capitalizeFirstLetter","_uniqueID","_i18nEnhance","_intergalacticDynamicLocales","_useFocusLock","_DropdownItem","_flexBox","_excluded","style","_index","sstyled","insert","INTERACTION_TAGS","DropdownRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","React","createRef","name","enabled","phase","fn","_ref7","state","options","_state$placement$spli","placement","split","_state$placement$spli2","_slicedToArray2","position","isVertical","indexOf","len","referenceLen","elements","reference","capitalizeFirstLetter","stretch","rects","popper","width","Math","max","e","_this$asProps","asProps","visible","interaction","element","popperRef","current","key","hasFocusableIn","preventDefault","includes","target","tagName","isPropagationStopped","handlers","_createClass2","value","uncontrolledProps","getTriggerProps","_this$asProps2","uid","disablePortal","getI18nText","id","undefined","focusHint","onKeyDown","handlerTriggerKeyDown","getPopperProps","_this$asProps3","ignorePortalsStacking","tabIndex","role","ref","focusMaster","autoFocus","render","_this$asProps4","Children","forwardRef","_this$asProps4$modifi","modifiers","other","_objectWithoutProperties2","createElement","_extends2","_toConsumableArray2","defaultModifiers","_typeof2","Component","offset","defaultVisible","i18n","localizedMessages","locale","uniqueIDEnhancement","i18nEnhance","DropdownTrigger","_ref8","_ref","arguments[0]","_ref4","styles","Tag","tag","hasInputTrigger","isInputTriggerTag","SDropdownTrigger","Popper","Trigger","cn","_objectSpread2","assignProps","DropdownPopper","_ref9","_ref2","_ref5","SDropdownPopper","DropdownGroup","props","_ref3","_ref6","title","subTitle","size","SGroup","Box","SDropdownItemContainer","Dropdown","Item","SGroupTitle","Flex","SGroupHint","uidTitle","useUID","uidSubTitle","groupAriaProps","Fragment","createComponent","DropdownItem","Group","parent","_default","exports"],"sources":["../../src/Dropdown.jsx"],"sourcesContent":["import React from 'react';\nimport createComponent, { Root, Component, sstyled } from '@semcore/core';\nimport Popper, { isInputTriggerTag } from '@semcore/popper';\nimport capitalizeFirstLetter from '@semcore/utils/lib/capitalizeFirstLetter';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\n\nimport style from './style/dropdown.shadow.css';\nimport { hasFocusableIn } from '@semcore/utils/lib/use/useFocusLock';\nimport { DropdownItem } from './DropdownItem';\nimport { Flex, Box } from '@semcore/flex-box';\nimport { useUID } from '@semcore/utils/lib/uniqueID';\n\nconst INTERACTION_TAGS = ['INPUT', 'TEXTAREA'];\n\nclass DropdownRoot extends Component {\n static displayName = 'Dropdown';\n static style = style;\n static defaultProps = {\n // timeout: [100, 50],\n placement: 'bottom-start',\n offset: [0, 4],\n stretch: 'min',\n defaultVisible: false,\n i18n: localizedMessages,\n locale: 'en',\n interaction: 'click',\n };\n static enhance = [uniqueIDEnhancement(), i18nEnhance(localizedMessages)];\n\n popperRef = React.createRef();\n\n uncontrolledProps() {\n return {\n visible: null,\n };\n }\n\n defaultModifiers = [\n {\n name: 'flip',\n enabled: false,\n },\n {\n name: 'stretch',\n phase: 'beforeRead',\n enabled: true,\n fn: function ({ state, options }) {\n const [position] = state.placement.split('-');\n\n const isVertical = ['left', 'right'].indexOf(position) !== -1;\n const len = isVertical ? 'height' : 'width';\n const referenceLen = state.elements.reference[`offset${capitalizeFirstLetter(len)}`];\n\n if (options.stretch === 'min') {\n state.rects.popper.width = Math.max(state.rects.popper.width, referenceLen);\n state.elements.popper.style[`min${capitalizeFirstLetter(len)}`] = `${referenceLen}px`;\n }\n\n if (options.stretch === 'fixed') {\n state.rects.popper.width = referenceLen;\n state.elements.popper.style[len] = `${referenceLen}px`;\n }\n },\n },\n ];\n\n handlerTriggerKeyDown = (e) => {\n const { visible, interaction } = this.asProps;\n const element = this.popperRef.current;\n\n if (\n interaction === 'click' &&\n visible &&\n e.key === 'Tab' &&\n element &&\n !hasFocusableIn(element)\n ) {\n e.preventDefault();\n\n return;\n }\n\n if (e.key === ' ' && INTERACTION_TAGS.includes(e.target.tagName)) return;\n if (e.key === 'Enter' && e.target.tagName === 'TEXTAREA') return;\n\n if (['Enter', ' '].includes(e.key) && interaction !== 'none' && !e.isPropagationStopped()) {\n e.preventDefault();\n this.handlers.visible(true);\n }\n };\n\n getTriggerProps() {\n const { uid, visible, disablePortal, getI18nText } = this.asProps;\n\n return {\n id: `igc-${uid}-trigger`,\n 'aria-controls': visible ? `igc-${uid}-popper` : undefined,\n focusHint: visible && !disablePortal ? getI18nText('triggerHint') : undefined,\n 'aria-expanded': visible ? 'true' : 'false',\n onKeyDown: this.handlerTriggerKeyDown,\n 'aria-haspopup': 'dialog',\n };\n }\n\n getPopperProps() {\n const { uid, disablePortal, ignorePortalsStacking, interaction } = this.asProps;\n\n return {\n id: `igc-${uid}-popper`,\n tabIndex: 0,\n role: 'dialog',\n disablePortal,\n ignorePortalsStacking,\n ref: this.popperRef,\n focusMaster: interaction === 'click',\n autoFocus: 'enforced',\n };\n }\n\n render() {\n const { Children, forwardRef, modifiers = [], stretch, ...other } = this.asProps;\n\n return (\n <Popper\n ref={forwardRef}\n modifiers={[\n ...this.defaultModifiers,\n {\n name: 'stretch',\n options: typeof stretch === 'object' ? stretch : { stretch },\n },\n ...modifiers,\n ]}\n {...other}\n >\n <Children />\n </Popper>\n );\n }\n}\n\nfunction DropdownTrigger({ styles, tag: Tag }) {\n const hasInputTrigger = isInputTriggerTag(Tag);\n const SDropdownTrigger = Root;\n\n return sstyled(styles)(\n <SDropdownTrigger render={Popper.Trigger} role={hasInputTrigger ? 'combobox' : 'button'} />,\n );\n}\n\nfunction DropdownPopper({ styles }) {\n const SDropdownPopper = Root;\n return sstyled(styles)(<SDropdownPopper render={Popper.Popper} />);\n}\n\nfunction DropdownGroup(props) {\n const { styles, title, Children, subTitle, size } = props;\n const SGroup = Root;\n const SDropdownItemContainer = Dropdown.Item;\n const SGroupTitle = Flex;\n const SGroupHint = Flex;\n const uidTitle = useUID('title_mi_group');\n const uidSubTitle = useUID('sub_title_mi_group');\n const groupAriaProps = {\n 'aria-labelledby': uidTitle,\n 'aria-describedby': subTitle ? uidSubTitle : undefined,\n };\n return sstyled(styles)(\n <>\n <SDropdownItemContainer notInteractive aria-hidden={'true'} tabindex={-1} size={size}>\n <SGroupTitle id={uidTitle}>{title}</SGroupTitle>\n {subTitle && <SGroupHint id={uidSubTitle}>{subTitle}</SGroupHint>}\n </SDropdownItemContainer>\n <SGroup render={Box} role={'group'} {...groupAriaProps} __excludeProps={['title']}>\n <Children />\n </SGroup>\n </>,\n );\n}\n\nconst Dropdown = createComponent(\n DropdownRoot,\n {\n Trigger: DropdownTrigger,\n Popper: DropdownPopper,\n Item: DropdownItem,\n Group: DropdownGroup,\n },\n {\n parent: Popper,\n },\n);\n\nexport default Dropdown;\n"],"mappings":"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"}
|
@@ -36,14 +36,18 @@ export var AbstractDropdown = /*#__PURE__*/function (_Component) {
|
|
36
36
|
var interaction = _this.asProps.interaction;
|
37
37
|
if (interaction === 'none') return false;
|
38
38
|
e.preventDefault();
|
39
|
+
e.stopPropagation();
|
39
40
|
_this.handlers.visible(true);
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
41
|
+
setTimeout(function () {
|
42
|
+
var _this$asProps$highlig;
|
43
|
+
var highlightedIndex = (_this$asProps$highlig = _this.asProps.highlightedIndex) !== null && _this$asProps$highlig !== void 0 ? _this$asProps$highlig : 0;
|
44
|
+
var element = _this.itemRefs[highlightedIndex];
|
45
|
+
element === null || element === void 0 ? void 0 : element.focus();
|
46
|
+
if (_this.role === 'menu') {
|
47
|
+
_this.handlers.highlightedIndex(highlightedIndex);
|
48
|
+
}
|
49
|
+
}, 0);
|
50
|
+
return false;
|
47
51
|
});
|
48
52
|
return _this;
|
49
53
|
}
|