@salutejs/plasma-new-hope 0.340.0-canary.2321.19133039112.0 → 0.340.0-canary.2322.19259276297.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/cjs/components/Calendar/CalendarBase/CalendarBase.js +6 -0
- package/cjs/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
- package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
- package/cjs/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/Combobox.css +19 -0
- package/cjs/components/Combobox/ComboboxNew/Combobox.js +93 -19
- package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +2 -0
- package/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js +8 -2
- package/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +319 -1
- package/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/reducers/focusedPathReducer.js +7 -0
- package/cjs/components/Combobox/ComboboxNew/reducers/focusedPathReducer.js.map +1 -1
- package/cjs/components/Combobox/ComboboxNew/reducers/treePathReducer.js +161 -0
- package/cjs/components/Combobox/ComboboxNew/reducers/treePathReducer.js.map +1 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.css +57 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.js +96 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.js.map +1 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles.js +30 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles.js.map +1 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles_1auklgl.css +2 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.css +54 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.js +144 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.js.map +1 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles.js +205 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles.js.map +1 -0
- package/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles_7nhjnm.css +15 -0
- package/cjs/components/Combobox/ComboboxNew/utils/filterItems.js +4 -3
- package/cjs/components/Combobox/ComboboxNew/utils/filterItems.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.tokens.js +6 -0
- package/cjs/components/DatePicker/DatePicker.tokens.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.css +11 -11
- package/cjs/components/DatePicker/RangeDate/RangeDate.styles.js +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.styles.js.map +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.styles_21hloy.css +4 -0
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +11 -11
- package/cjs/components/DatePicker/utils/normalizeDates.js +3 -6
- package/cjs/components/DatePicker/utils/normalizeDates.js.map +1 -1
- package/cjs/components/DateTimePicker/DateTimePicker.css +200 -0
- package/cjs/components/DateTimePicker/DateTimePicker.js +337 -0
- package/cjs/components/DateTimePicker/DateTimePicker.js.map +1 -0
- package/cjs/components/DateTimePicker/DateTimePicker.styles.js +23 -0
- package/cjs/components/DateTimePicker/DateTimePicker.styles.js.map +1 -0
- package/cjs/components/DateTimePicker/DateTimePicker.styles_x7parr.css +3 -0
- package/cjs/components/DateTimePicker/DateTimePicker.tokens.js +268 -0
- package/cjs/components/DateTimePicker/DateTimePicker.tokens.js.map +1 -0
- package/cjs/components/DateTimePicker/hooks/useDateTimePicker.js +445 -0
- package/cjs/components/DateTimePicker/hooks/useDateTimePicker.js.map +1 -0
- package/cjs/components/DateTimePicker/hooks/useKeyboardNavigation.js +40 -0
- package/cjs/components/DateTimePicker/hooks/useKeyboardNavigation.js.map +1 -0
- package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.css +82 -0
- package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +36 -0
- package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js.map +1 -0
- package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +83 -0
- package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js.map +1 -0
- package/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles_1yl3xrz.css +2 -0
- package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.css +34 -0
- package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +44 -0
- package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js.map +1 -0
- package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +92 -0
- package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js.map +1 -0
- package/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles_pdofx1.css +6 -0
- package/cjs/components/DateTimePicker/ui/Input/Input.css +80 -0
- package/cjs/components/DateTimePicker/ui/Input/Input.js +70 -0
- package/cjs/components/DateTimePicker/ui/Input/Input.js.map +1 -0
- package/cjs/components/DateTimePicker/ui/Input/Input.styles.js +24 -0
- package/cjs/components/DateTimePicker/ui/Input/Input.styles.js.map +1 -0
- package/cjs/components/DateTimePicker/ui/Input/Input.styles_1af0tdj.css +1 -0
- package/cjs/components/DateTimePicker/ui/Popover/Popover.css +11 -0
- package/cjs/components/DateTimePicker/ui/Popover/Popover.js +37 -0
- package/cjs/components/DateTimePicker/ui/Popover/Popover.js.map +1 -0
- package/cjs/components/DateTimePicker/ui/Popover/Popover.styles.js +44 -0
- package/cjs/components/DateTimePicker/ui/Popover/Popover.styles.js.map +1 -0
- package/cjs/components/DateTimePicker/ui/Popover/Popover.styles_1v6vurg.css +2 -0
- package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.css +12 -0
- package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +30 -0
- package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.js.map +1 -0
- package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +40 -0
- package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js.map +1 -0
- package/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles_31tnfx.css +1 -0
- package/cjs/components/DateTimePicker/utils/getFormattedDateTime.js +81 -0
- package/cjs/components/DateTimePicker/utils/getFormattedDateTime.js.map +1 -0
- package/cjs/components/DateTimePicker/utils/getMaskedValue.js +53 -0
- package/cjs/components/DateTimePicker/utils/getMaskedValue.js.map +1 -0
- package/cjs/components/DateTimePicker/utils/getOriginalDateTime.js +73 -0
- package/cjs/components/DateTimePicker/utils/getOriginalDateTime.js.map +1 -0
- package/cjs/components/DateTimePicker/utils/normalizeDateTime.js +33 -0
- package/cjs/components/DateTimePicker/utils/normalizeDateTime.js.map +1 -0
- package/cjs/components/DateTimePicker/variations/_disabled/base.js +9 -0
- package/cjs/components/DateTimePicker/variations/_disabled/base.js.map +1 -0
- package/cjs/components/DateTimePicker/variations/_disabled/base_7ophop.css +1 -0
- package/cjs/components/DateTimePicker/variations/_readonly/base.js +9 -0
- package/cjs/components/DateTimePicker/variations/_readonly/base.js.map +1 -0
- package/cjs/components/DateTimePicker/variations/_readonly/base_rrpgsr.css +1 -0
- package/cjs/components/DateTimePicker/variations/_size/base.js +9 -0
- package/cjs/components/DateTimePicker/variations/_size/base.js.map +1 -0
- package/cjs/components/DateTimePicker/variations/_size/base_19i3bl1.css +1 -0
- package/cjs/components/DateTimePicker/variations/_tooltip-size/base.js +9 -0
- package/cjs/components/DateTimePicker/variations/_tooltip-size/base.js.map +1 -0
- package/cjs/components/DateTimePicker/variations/_tooltip-size/base_x642ct.css +1 -0
- package/cjs/components/DateTimePicker/variations/_view/base.js +9 -0
- package/cjs/components/DateTimePicker/variations/_view/base.js.map +1 -0
- package/cjs/components/DateTimePicker/variations/_view/base_1a1ebsk.css +1 -0
- package/cjs/components/Range/Range.css +8 -8
- package/cjs/components/Range/Range.styles.js +1 -1
- package/cjs/components/Range/Range.styles.js.map +1 -1
- package/cjs/components/Range/{Range.styles_jx7i43.css → Range.styles_it2utg.css} +2 -2
- package/cjs/components/Range/Range.tokens.js +6 -0
- package/cjs/components/Range/Range.tokens.js.map +1 -1
- package/cjs/components/Range/variations/_readonly/base.js +1 -1
- package/cjs/components/Range/variations/_readonly/base.js.map +1 -1
- package/{es/components/Range/variations/_readonly/base_1kd2tb.css → cjs/components/Range/variations/_readonly/base_1lu7vb0.css} +1 -1
- package/cjs/components/Select/Select.js +2 -1
- package/cjs/components/Select/Select.js.map +1 -1
- package/cjs/components/Select/hooks/useKeyboardNavigation.js +127 -38
- package/cjs/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
- package/cjs/components/Select/reducers/focusedPathReducer.js +7 -0
- package/cjs/components/Select/reducers/focusedPathReducer.js.map +1 -1
- package/cjs/components/Select/reducers/treePathReducer.js +12 -0
- package/cjs/components/Select/reducers/treePathReducer.js.map +1 -1
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +5 -2
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
- package/cjs/components/Select/ui/TreeList/TreeList.js +3 -3
- package/cjs/components/Select/ui/TreeList/TreeList.js.map +1 -1
- package/cjs/components/Select/ui/TreeList/ui/Item/Item.js +22 -5
- package/cjs/components/Select/ui/TreeList/ui/Item/Item.js.map +1 -1
- package/cjs/components/Tabs/tokens.js +1 -0
- package/cjs/components/Tabs/tokens.js.map +1 -1
- package/cjs/components/TimePickerGrid/TimePickerGrid.js +206 -276
- package/cjs/components/TimePickerGrid/TimePickerGrid.js.map +1 -1
- package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -1
- package/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +1 -1
- package/cjs/components/Tree/utils/deepCopy.js +29 -0
- package/cjs/components/Tree/utils/deepCopy.js.map +1 -0
- package/cjs/components/Tree/utils/traverseTree.js +1 -1
- package/cjs/components/Tree/utils/traverseTree.js.map +1 -1
- package/cjs/index.css +59 -11
- package/cjs/index.js +8 -0
- package/cjs/index.js.map +1 -1
- package/cjs/utils/index.js.map +1 -1
- package/cjs/utils/isArraysEqual.js +12 -0
- package/cjs/utils/isArraysEqual.js.map +1 -0
- package/emotion/cjs/components/Calendar/CalendarBase/CalendarBase.js +6 -0
- package/emotion/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +82 -17
- package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +2 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js +35 -3
- package/emotion/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +312 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/reducers/focusedPathReducer.js +7 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/reducers/index.js +1 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/reducers/treePathReducer.js +174 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.js +130 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles.js +36 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.types.js +4 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.js +192 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles.js +183 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.types.js +4 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/ui/index.js +1 -0
- package/emotion/cjs/components/Combobox/ComboboxNew/utils/filterItems.js +14 -6
- package/emotion/cjs/components/Combobox/ComboboxNew/utils/index.js +3 -0
- package/emotion/cjs/components/DatePicker/DatePicker.tokens.js +6 -0
- package/emotion/cjs/components/DatePicker/RangeDate/RangeDate.styles.js +7 -7
- package/emotion/cjs/components/DatePicker/utils/normalizeDates.js +3 -6
- package/emotion/cjs/components/DateTimePicker/DateTimePicker.js +459 -0
- package/emotion/cjs/components/DateTimePicker/DateTimePicker.styles.js +39 -0
- package/emotion/cjs/components/DateTimePicker/DateTimePicker.tokens.js +269 -0
- package/emotion/cjs/components/DateTimePicker/DateTimePicker.types.js +4 -0
- package/emotion/cjs/components/DateTimePicker/hooks/useDateTimePicker.js +499 -0
- package/emotion/cjs/components/DateTimePicker/hooks/useKeyboardNavigation.js +52 -0
- package/emotion/cjs/components/DateTimePicker/index.js +26 -0
- package/emotion/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +93 -0
- package/emotion/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +61 -0
- package/emotion/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +53 -0
- package/emotion/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +88 -0
- package/emotion/cjs/components/DateTimePicker/ui/Input/Input.js +167 -0
- package/emotion/cjs/components/DateTimePicker/ui/Input/Input.styles.js +25 -0
- package/emotion/cjs/components/DateTimePicker/ui/Popover/Popover.js +153 -0
- package/emotion/cjs/components/DateTimePicker/ui/Popover/Popover.styles.js +43 -0
- package/emotion/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +87 -0
- package/emotion/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +31 -0
- package/emotion/cjs/components/DateTimePicker/ui/index.js +29 -0
- package/emotion/cjs/components/DateTimePicker/utils/getFormattedDateTime.js +118 -0
- package/emotion/cjs/components/DateTimePicker/utils/getMaskedValue.js +52 -0
- package/emotion/cjs/components/DateTimePicker/utils/getOriginalDateTime.js +128 -0
- package/emotion/cjs/components/DateTimePicker/utils/index.js +19 -0
- package/emotion/cjs/components/DateTimePicker/utils/normalizeDateTime.js +30 -0
- package/emotion/cjs/components/DateTimePicker/variations/_disabled/base.js +13 -0
- package/emotion/cjs/components/DateTimePicker/variations/_readonly/base.js +14 -0
- package/emotion/cjs/components/DateTimePicker/variations/_size/base.js +14 -0
- package/emotion/cjs/components/DateTimePicker/variations/_tooltip-size/base.js +12 -0
- package/emotion/cjs/components/DateTimePicker/variations/_view/base.js +14 -0
- package/emotion/cjs/components/Range/Range.styles.js +19 -19
- package/emotion/cjs/components/Range/Range.tokens.js +6 -0
- package/emotion/cjs/components/Range/variations/_readonly/base.js +1 -1
- package/emotion/cjs/components/Select/Select.js +2 -1
- package/emotion/cjs/components/Select/hooks/useKeyboardNavigation.js +156 -44
- package/emotion/cjs/components/Select/reducers/focusedPathReducer.js +7 -0
- package/emotion/cjs/components/Select/reducers/treePathReducer.js +12 -0
- package/emotion/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +5 -2
- package/emotion/cjs/components/Select/ui/TreeList/TreeList.js +7 -3
- package/emotion/cjs/components/Select/ui/TreeList/ui/Item/Item.js +49 -5
- package/emotion/cjs/components/Tabs/tokens.js +1 -0
- package/emotion/cjs/components/TimePickerGrid/TimePickerGrid.js +213 -282
- package/emotion/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -2
- package/emotion/cjs/components/Tree/utils/deepCopy.js +83 -0
- package/emotion/cjs/components/Tree/utils/index.js +4 -0
- package/emotion/cjs/components/Tree/utils/traverseTree.js +1 -1
- package/emotion/cjs/examples/components/ChipGroup/ChipGroup.config.js +35 -0
- package/emotion/cjs/examples/components/Combobox/Combobox.config.js +15 -15
- package/emotion/cjs/examples/components/Combobox/Combobox.js +0 -15
- package/emotion/cjs/examples/components/DatePicker/DatePicker.config.js +9 -9
- package/emotion/cjs/examples/components/DateTimePicker/DateTimePicker.config.js +40 -0
- package/emotion/cjs/examples/components/DateTimePicker/DateTimePicker.js +15 -0
- package/emotion/cjs/examples/components/Range/Range.config.js +8 -8
- package/emotion/cjs/examples/components/Select/Select.config.js +24 -24
- package/emotion/cjs/examples/components/Tabs/horizontal/HorizontalTabItem.config.js +16 -16
- package/emotion/cjs/examples/components/Tabs/vertical/VerticalTabItem.config.js +7 -7
- package/emotion/cjs/index.js +1 -0
- package/emotion/cjs/utils/index.js +4 -0
- package/emotion/cjs/utils/isArraysEqual.js +15 -0
- package/emotion/es/components/Calendar/CalendarBase/CalendarBase.js +6 -0
- package/emotion/es/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
- package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +85 -20
- package/emotion/es/components/Combobox/ComboboxNew/Combobox.tokens.js +2 -0
- package/emotion/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js +35 -3
- package/emotion/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +313 -0
- package/emotion/es/components/Combobox/ComboboxNew/reducers/focusedPathReducer.js +7 -0
- package/emotion/es/components/Combobox/ComboboxNew/reducers/index.js +1 -0
- package/emotion/es/components/Combobox/ComboboxNew/reducers/treePathReducer.js +157 -0
- package/emotion/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.js +79 -0
- package/emotion/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles.js +13 -0
- package/emotion/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.types.js +1 -0
- package/emotion/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.js +141 -0
- package/emotion/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles.js +119 -0
- package/emotion/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.types.js +1 -0
- package/emotion/es/components/Combobox/ComboboxNew/ui/index.js +1 -0
- package/emotion/es/components/Combobox/ComboboxNew/utils/filterItems.js +3 -3
- package/emotion/es/components/Combobox/ComboboxNew/utils/index.js +1 -1
- package/emotion/es/components/DatePicker/DatePicker.tokens.js +6 -0
- package/emotion/es/components/DatePicker/RangeDate/RangeDate.styles.js +7 -7
- package/emotion/es/components/DatePicker/utils/normalizeDates.js +3 -6
- package/emotion/es/components/DateTimePicker/DateTimePicker.js +395 -0
- package/emotion/es/components/DateTimePicker/DateTimePicker.styles.js +13 -0
- package/emotion/es/components/DateTimePicker/DateTimePicker.tokens.js +248 -0
- package/emotion/es/components/DateTimePicker/DateTimePicker.types.js +1 -0
- package/emotion/es/components/DateTimePicker/hooks/useDateTimePicker.js +489 -0
- package/emotion/es/components/DateTimePicker/hooks/useKeyboardNavigation.js +34 -0
- package/emotion/es/components/DateTimePicker/index.js +2 -0
- package/emotion/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +78 -0
- package/emotion/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +36 -0
- package/emotion/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +38 -0
- package/emotion/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +53 -0
- package/emotion/es/components/DateTimePicker/ui/Input/Input.js +111 -0
- package/emotion/es/components/DateTimePicker/ui/Input/Input.styles.js +11 -0
- package/emotion/es/components/DateTimePicker/ui/Popover/Popover.js +102 -0
- package/emotion/es/components/DateTimePicker/ui/Popover/Popover.styles.js +20 -0
- package/emotion/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +72 -0
- package/emotion/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +16 -0
- package/emotion/es/components/DateTimePicker/ui/index.js +6 -0
- package/emotion/es/components/DateTimePicker/utils/getFormattedDateTime.js +108 -0
- package/emotion/es/components/DateTimePicker/utils/getMaskedValue.js +42 -0
- package/emotion/es/components/DateTimePicker/utils/getOriginalDateTime.js +118 -0
- package/emotion/es/components/DateTimePicker/utils/index.js +2 -0
- package/emotion/es/components/DateTimePicker/utils/normalizeDateTime.js +20 -0
- package/emotion/es/components/DateTimePicker/variations/_disabled/base.js +3 -0
- package/emotion/es/components/DateTimePicker/variations/_readonly/base.js +4 -0
- package/emotion/es/components/DateTimePicker/variations/_size/base.js +4 -0
- package/emotion/es/components/DateTimePicker/variations/_tooltip-size/base.js +2 -0
- package/emotion/es/components/DateTimePicker/variations/_view/base.js +4 -0
- package/emotion/es/components/Range/Range.styles.js +19 -19
- package/emotion/es/components/Range/Range.tokens.js +6 -0
- package/emotion/es/components/Range/variations/_readonly/base.js +1 -1
- package/emotion/es/components/Select/Select.js +2 -1
- package/emotion/es/components/Select/hooks/useKeyboardNavigation.js +157 -44
- package/emotion/es/components/Select/reducers/focusedPathReducer.js +7 -0
- package/emotion/es/components/Select/reducers/treePathReducer.js +12 -0
- package/emotion/es/components/Select/ui/Target/ui/Textfield/Textfield.js +5 -2
- package/emotion/es/components/Select/ui/TreeList/TreeList.js +7 -3
- package/emotion/es/components/Select/ui/TreeList/ui/Item/Item.js +50 -6
- package/emotion/es/components/Tabs/tokens.js +1 -0
- package/emotion/es/components/TimePickerGrid/TimePickerGrid.js +213 -282
- package/emotion/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -2
- package/emotion/es/components/Tree/utils/deepCopy.js +73 -0
- package/emotion/es/components/Tree/utils/index.js +1 -0
- package/emotion/es/components/Tree/utils/traverseTree.js +1 -1
- package/emotion/es/examples/components/ChipGroup/ChipGroup.config.js +25 -0
- package/emotion/es/examples/components/Combobox/Combobox.config.js +15 -15
- package/emotion/es/examples/components/DatePicker/DatePicker.config.js +9 -9
- package/emotion/es/examples/components/DateTimePicker/DateTimePicker.config.js +30 -0
- package/emotion/es/examples/components/DateTimePicker/DateTimePicker.js +5 -0
- package/emotion/es/examples/components/Range/Range.config.js +8 -8
- package/emotion/es/examples/components/Select/Select.config.js +24 -24
- package/emotion/es/examples/components/Tabs/horizontal/HorizontalTabItem.config.js +16 -16
- package/emotion/es/examples/components/Tabs/vertical/VerticalTabItem.config.js +7 -7
- package/emotion/es/index.js +1 -0
- package/emotion/es/utils/index.js +1 -0
- package/emotion/es/utils/isArraysEqual.js +5 -0
- package/es/components/Calendar/CalendarBase/CalendarBase.js +6 -0
- package/es/components/Calendar/CalendarBase/CalendarBase.js.map +1 -1
- package/es/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
- package/es/components/Calendar/CalendarDouble/CalendarDouble.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/Combobox.css +19 -0
- package/es/components/Combobox/ComboboxNew/Combobox.js +95 -21
- package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/Combobox.tokens.js +2 -0
- package/es/components/Combobox/ComboboxNew/Combobox.tokens.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js +8 -2
- package/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +319 -1
- package/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/reducers/focusedPathReducer.js +7 -0
- package/es/components/Combobox/ComboboxNew/reducers/focusedPathReducer.js.map +1 -1
- package/es/components/Combobox/ComboboxNew/reducers/treePathReducer.js +156 -0
- package/es/components/Combobox/ComboboxNew/reducers/treePathReducer.js.map +1 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.css +57 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.js +88 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.js.map +1 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles.js +25 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles.js.map +1 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles_1auklgl.css +2 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.css +54 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.js +136 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.js.map +1 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles.js +187 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles.js.map +1 -0
- package/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles_7nhjnm.css +15 -0
- package/es/components/Combobox/ComboboxNew/utils/filterItems.js +4 -4
- package/es/components/Combobox/ComboboxNew/utils/filterItems.js.map +1 -1
- package/es/components/DatePicker/DatePicker.tokens.js +6 -0
- package/es/components/DatePicker/DatePicker.tokens.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDate.css +11 -11
- package/es/components/DatePicker/RangeDate/RangeDate.styles.js +1 -1
- package/es/components/DatePicker/RangeDate/RangeDate.styles.js.map +1 -1
- package/es/components/DatePicker/RangeDate/RangeDate.styles_21hloy.css +4 -0
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +11 -11
- package/es/components/DatePicker/utils/normalizeDates.js +3 -6
- package/es/components/DatePicker/utils/normalizeDates.js.map +1 -1
- package/es/components/DateTimePicker/DateTimePicker.css +200 -0
- package/es/components/DateTimePicker/DateTimePicker.js +327 -0
- package/es/components/DateTimePicker/DateTimePicker.js.map +1 -0
- package/es/components/DateTimePicker/DateTimePicker.styles.js +17 -0
- package/es/components/DateTimePicker/DateTimePicker.styles.js.map +1 -0
- package/es/components/DateTimePicker/DateTimePicker.styles_x7parr.css +3 -0
- package/es/components/DateTimePicker/DateTimePicker.tokens.js +262 -0
- package/es/components/DateTimePicker/DateTimePicker.tokens.js.map +1 -0
- package/es/components/DateTimePicker/hooks/useDateTimePicker.js +441 -0
- package/es/components/DateTimePicker/hooks/useDateTimePicker.js.map +1 -0
- package/es/components/DateTimePicker/hooks/useKeyboardNavigation.js +35 -0
- package/es/components/DateTimePicker/hooks/useKeyboardNavigation.js.map +1 -0
- package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.css +82 -0
- package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +28 -0
- package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js.map +1 -0
- package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +78 -0
- package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js.map +1 -0
- package/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles_1yl3xrz.css +2 -0
- package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.css +34 -0
- package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +35 -0
- package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js.map +1 -0
- package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +83 -0
- package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js.map +1 -0
- package/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles_pdofx1.css +6 -0
- package/es/components/DateTimePicker/ui/Input/Input.css +80 -0
- package/es/components/DateTimePicker/ui/Input/Input.js +61 -0
- package/es/components/DateTimePicker/ui/Input/Input.js.map +1 -0
- package/es/components/DateTimePicker/ui/Input/Input.styles.js +20 -0
- package/es/components/DateTimePicker/ui/Input/Input.styles.js.map +1 -0
- package/es/components/DateTimePicker/ui/Input/Input.styles_1af0tdj.css +1 -0
- package/es/components/DateTimePicker/ui/Popover/Popover.css +11 -0
- package/es/components/DateTimePicker/ui/Popover/Popover.js +29 -0
- package/es/components/DateTimePicker/ui/Popover/Popover.js.map +1 -0
- package/es/components/DateTimePicker/ui/Popover/Popover.styles.js +39 -0
- package/es/components/DateTimePicker/ui/Popover/Popover.styles.js.map +1 -0
- package/es/components/DateTimePicker/ui/Popover/Popover.styles_1v6vurg.css +2 -0
- package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.css +12 -0
- package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +22 -0
- package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.js.map +1 -0
- package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +36 -0
- package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js.map +1 -0
- package/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles_31tnfx.css +1 -0
- package/es/components/DateTimePicker/utils/getFormattedDateTime.js +77 -0
- package/es/components/DateTimePicker/utils/getFormattedDateTime.js.map +1 -0
- package/es/components/DateTimePicker/utils/getMaskedValue.js +49 -0
- package/es/components/DateTimePicker/utils/getMaskedValue.js.map +1 -0
- package/es/components/DateTimePicker/utils/getOriginalDateTime.js +69 -0
- package/es/components/DateTimePicker/utils/getOriginalDateTime.js.map +1 -0
- package/es/components/DateTimePicker/utils/normalizeDateTime.js +29 -0
- package/es/components/DateTimePicker/utils/normalizeDateTime.js.map +1 -0
- package/es/components/DateTimePicker/variations/_disabled/base.js +5 -0
- package/es/components/DateTimePicker/variations/_disabled/base.js.map +1 -0
- package/es/components/DateTimePicker/variations/_disabled/base_7ophop.css +1 -0
- package/es/components/DateTimePicker/variations/_readonly/base.js +5 -0
- package/es/components/DateTimePicker/variations/_readonly/base.js.map +1 -0
- package/es/components/DateTimePicker/variations/_readonly/base_rrpgsr.css +1 -0
- package/es/components/DateTimePicker/variations/_size/base.js +5 -0
- package/es/components/DateTimePicker/variations/_size/base.js.map +1 -0
- package/es/components/DateTimePicker/variations/_size/base_19i3bl1.css +1 -0
- package/es/components/DateTimePicker/variations/_tooltip-size/base.js +5 -0
- package/es/components/DateTimePicker/variations/_tooltip-size/base.js.map +1 -0
- package/es/components/DateTimePicker/variations/_tooltip-size/base_x642ct.css +1 -0
- package/es/components/DateTimePicker/variations/_view/base.js +5 -0
- package/es/components/DateTimePicker/variations/_view/base.js.map +1 -0
- package/es/components/DateTimePicker/variations/_view/base_1a1ebsk.css +1 -0
- package/es/components/Range/Range.css +8 -8
- package/es/components/Range/Range.styles.js +1 -1
- package/es/components/Range/Range.styles.js.map +1 -1
- package/es/components/Range/{Range.styles_jx7i43.css → Range.styles_it2utg.css} +2 -2
- package/es/components/Range/Range.tokens.js +6 -0
- package/es/components/Range/Range.tokens.js.map +1 -1
- package/es/components/Range/variations/_readonly/base.js +1 -1
- package/es/components/Range/variations/_readonly/base.js.map +1 -1
- package/{cjs/components/Range/variations/_readonly/base_1kd2tb.css → es/components/Range/variations/_readonly/base_1lu7vb0.css} +1 -1
- package/es/components/Select/Select.js +2 -1
- package/es/components/Select/Select.js.map +1 -1
- package/es/components/Select/hooks/useKeyboardNavigation.js +127 -38
- package/es/components/Select/hooks/useKeyboardNavigation.js.map +1 -1
- package/es/components/Select/reducers/focusedPathReducer.js +7 -0
- package/es/components/Select/reducers/focusedPathReducer.js.map +1 -1
- package/es/components/Select/reducers/treePathReducer.js +12 -0
- package/es/components/Select/reducers/treePathReducer.js.map +1 -1
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.js +5 -2
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.js.map +1 -1
- package/es/components/Select/ui/TreeList/TreeList.js +3 -3
- package/es/components/Select/ui/TreeList/TreeList.js.map +1 -1
- package/es/components/Select/ui/TreeList/ui/Item/Item.js +23 -6
- package/es/components/Select/ui/TreeList/ui/Item/Item.js.map +1 -1
- package/es/components/Tabs/tokens.js +1 -0
- package/es/components/Tabs/tokens.js.map +1 -1
- package/es/components/TimePickerGrid/TimePickerGrid.js +208 -278
- package/es/components/TimePickerGrid/TimePickerGrid.js.map +1 -1
- package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -1
- package/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js.map +1 -1
- package/es/components/Tree/utils/deepCopy.js +25 -0
- package/es/components/Tree/utils/deepCopy.js.map +1 -0
- package/es/components/Tree/utils/traverseTree.js +1 -1
- package/es/components/Tree/utils/traverseTree.js.map +1 -1
- package/es/index.css +59 -11
- package/es/index.js +3 -0
- package/es/index.js.map +1 -1
- package/es/utils/index.js.map +1 -1
- package/es/utils/isArraysEqual.js +8 -0
- package/es/utils/isArraysEqual.js.map +1 -0
- package/package.json +2 -2
- package/styled-components/cjs/components/Calendar/CalendarBase/CalendarBase.js +6 -0
- package/styled-components/cjs/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +82 -17
- package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.tokens.js +2 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/hooks/getPathMaps.js +35 -3
- package/styled-components/cjs/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +312 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/reducers/focusedPathReducer.js +7 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/reducers/index.js +1 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/reducers/treePathReducer.js +174 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.js +130 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles.js +50 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/TreeList/TreeList.types.js +4 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.js +192 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles.js +296 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.types.js +4 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/ui/index.js +1 -0
- package/styled-components/cjs/components/Combobox/ComboboxNew/utils/filterItems.js +14 -6
- package/styled-components/cjs/components/Combobox/ComboboxNew/utils/index.js +3 -0
- package/styled-components/cjs/components/DatePicker/DatePicker.tokens.js +6 -0
- package/styled-components/cjs/components/DatePicker/RangeDate/RangeDate.styles.js +16 -4
- package/styled-components/cjs/components/DatePicker/utils/normalizeDates.js +3 -6
- package/styled-components/cjs/components/DateTimePicker/DateTimePicker.js +459 -0
- package/styled-components/cjs/components/DateTimePicker/DateTimePicker.styles.js +89 -0
- package/styled-components/cjs/components/DateTimePicker/DateTimePicker.tokens.js +269 -0
- package/styled-components/cjs/components/DateTimePicker/DateTimePicker.types.js +4 -0
- package/styled-components/cjs/components/DateTimePicker/hooks/useDateTimePicker.js +499 -0
- package/styled-components/cjs/components/DateTimePicker/hooks/useKeyboardNavigation.js +52 -0
- package/styled-components/cjs/components/DateTimePicker/index.js +26 -0
- package/styled-components/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +93 -0
- package/styled-components/cjs/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +75 -0
- package/styled-components/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +53 -0
- package/styled-components/cjs/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +132 -0
- package/styled-components/cjs/components/DateTimePicker/ui/Input/Input.js +167 -0
- package/styled-components/cjs/components/DateTimePicker/ui/Input/Input.styles.js +176 -0
- package/styled-components/cjs/components/DateTimePicker/ui/Popover/Popover.js +153 -0
- package/styled-components/cjs/components/DateTimePicker/ui/Popover/Popover.styles.js +56 -0
- package/styled-components/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +87 -0
- package/styled-components/cjs/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +69 -0
- package/styled-components/cjs/components/DateTimePicker/ui/index.js +29 -0
- package/styled-components/cjs/components/DateTimePicker/utils/getFormattedDateTime.js +118 -0
- package/styled-components/cjs/components/DateTimePicker/utils/getMaskedValue.js +52 -0
- package/styled-components/cjs/components/DateTimePicker/utils/getOriginalDateTime.js +128 -0
- package/styled-components/cjs/components/DateTimePicker/utils/index.js +19 -0
- package/styled-components/cjs/components/DateTimePicker/utils/normalizeDateTime.js +30 -0
- package/styled-components/cjs/components/DateTimePicker/variations/_disabled/base.js +16 -0
- package/styled-components/cjs/components/DateTimePicker/variations/_readonly/base.js +18 -0
- package/styled-components/cjs/components/DateTimePicker/variations/_size/base.js +24 -0
- package/styled-components/cjs/components/DateTimePicker/variations/_tooltip-size/base.js +14 -0
- package/styled-components/cjs/components/DateTimePicker/variations/_view/base.js +18 -0
- package/styled-components/cjs/components/Range/Range.styles.js +22 -13
- package/styled-components/cjs/components/Range/Range.tokens.js +6 -0
- package/styled-components/cjs/components/Range/variations/_readonly/base.js +3 -2
- package/styled-components/cjs/components/Select/Select.js +2 -1
- package/styled-components/cjs/components/Select/hooks/useKeyboardNavigation.js +156 -44
- package/styled-components/cjs/components/Select/reducers/focusedPathReducer.js +7 -0
- package/styled-components/cjs/components/Select/reducers/treePathReducer.js +12 -0
- package/styled-components/cjs/components/Select/ui/Target/ui/Textfield/Textfield.js +5 -2
- package/styled-components/cjs/components/Select/ui/TreeList/TreeList.js +7 -3
- package/styled-components/cjs/components/Select/ui/TreeList/ui/Item/Item.js +49 -5
- package/styled-components/cjs/components/Tabs/tokens.js +1 -0
- package/styled-components/cjs/components/TimePickerGrid/TimePickerGrid.js +213 -282
- package/styled-components/cjs/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -2
- package/styled-components/cjs/components/Tree/utils/deepCopy.js +83 -0
- package/styled-components/cjs/components/Tree/utils/index.js +4 -0
- package/styled-components/cjs/components/Tree/utils/traverseTree.js +1 -1
- package/styled-components/cjs/examples/components/ChipGroup/ChipGroup.config.js +141 -0
- package/styled-components/cjs/examples/components/Combobox/Combobox.config.js +20 -12
- package/styled-components/cjs/examples/components/DatePicker/DatePicker.config.js +4 -1
- package/styled-components/cjs/examples/components/DateTimePicker/DateTimePicker.config.js +786 -0
- package/styled-components/cjs/examples/components/DateTimePicker/DateTimePicker.js +15 -0
- package/styled-components/cjs/examples/components/Range/Range.config.js +4 -1
- package/styled-components/cjs/examples/components/Select/Select.config.js +7 -7
- package/styled-components/cjs/examples/components/Tabs/horizontal/HorizontalTabItem.config.js +4 -4
- package/styled-components/cjs/examples/components/Tabs/vertical/VerticalTabItem.config.js +4 -4
- package/styled-components/cjs/index.js +1 -0
- package/styled-components/cjs/utils/index.js +4 -0
- package/styled-components/cjs/utils/isArraysEqual.js +15 -0
- package/styled-components/es/components/Calendar/CalendarBase/CalendarBase.js +6 -0
- package/styled-components/es/components/Calendar/CalendarDouble/CalendarDouble.js +6 -0
- package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +85 -20
- package/styled-components/es/components/Combobox/ComboboxNew/Combobox.tokens.js +2 -0
- package/styled-components/es/components/Combobox/ComboboxNew/hooks/getPathMaps.js +35 -3
- package/styled-components/es/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.js +313 -0
- package/styled-components/es/components/Combobox/ComboboxNew/reducers/focusedPathReducer.js +7 -0
- package/styled-components/es/components/Combobox/ComboboxNew/reducers/index.js +1 -0
- package/styled-components/es/components/Combobox/ComboboxNew/reducers/treePathReducer.js +157 -0
- package/styled-components/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.js +79 -0
- package/styled-components/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles.js +27 -0
- package/styled-components/es/components/Combobox/ComboboxNew/ui/TreeList/TreeList.types.js +1 -0
- package/styled-components/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.js +141 -0
- package/styled-components/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles.js +232 -0
- package/styled-components/es/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.types.js +1 -0
- package/styled-components/es/components/Combobox/ComboboxNew/ui/index.js +1 -0
- package/styled-components/es/components/Combobox/ComboboxNew/utils/filterItems.js +3 -3
- package/styled-components/es/components/Combobox/ComboboxNew/utils/index.js +1 -1
- package/styled-components/es/components/DatePicker/DatePicker.tokens.js +6 -0
- package/styled-components/es/components/DatePicker/RangeDate/RangeDate.styles.js +16 -4
- package/styled-components/es/components/DatePicker/utils/normalizeDates.js +3 -6
- package/styled-components/es/components/DateTimePicker/DateTimePicker.js +395 -0
- package/styled-components/es/components/DateTimePicker/DateTimePicker.styles.js +28 -0
- package/styled-components/es/components/DateTimePicker/DateTimePicker.tokens.js +248 -0
- package/styled-components/es/components/DateTimePicker/DateTimePicker.types.js +1 -0
- package/styled-components/es/components/DateTimePicker/hooks/useDateTimePicker.js +489 -0
- package/styled-components/es/components/DateTimePicker/hooks/useKeyboardNavigation.js +34 -0
- package/styled-components/es/components/DateTimePicker/index.js +2 -0
- package/styled-components/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.js +78 -0
- package/styled-components/es/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.js +50 -0
- package/styled-components/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.js +38 -0
- package/styled-components/es/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.js +97 -0
- package/styled-components/es/components/DateTimePicker/ui/Input/Input.js +111 -0
- package/styled-components/es/components/DateTimePicker/ui/Input/Input.styles.js +162 -0
- package/styled-components/es/components/DateTimePicker/ui/Popover/Popover.js +102 -0
- package/styled-components/es/components/DateTimePicker/ui/Popover/Popover.styles.js +33 -0
- package/styled-components/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.js +72 -0
- package/styled-components/es/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.js +54 -0
- package/styled-components/es/components/DateTimePicker/ui/index.js +6 -0
- package/styled-components/es/components/DateTimePicker/utils/getFormattedDateTime.js +108 -0
- package/styled-components/es/components/DateTimePicker/utils/getMaskedValue.js +42 -0
- package/styled-components/es/components/DateTimePicker/utils/getOriginalDateTime.js +118 -0
- package/styled-components/es/components/DateTimePicker/utils/index.js +2 -0
- package/styled-components/es/components/DateTimePicker/utils/normalizeDateTime.js +20 -0
- package/styled-components/es/components/DateTimePicker/variations/_disabled/base.js +6 -0
- package/styled-components/es/components/DateTimePicker/variations/_readonly/base.js +8 -0
- package/styled-components/es/components/DateTimePicker/variations/_size/base.js +14 -0
- package/styled-components/es/components/DateTimePicker/variations/_tooltip-size/base.js +4 -0
- package/styled-components/es/components/DateTimePicker/variations/_view/base.js +8 -0
- package/styled-components/es/components/Range/Range.styles.js +22 -13
- package/styled-components/es/components/Range/Range.tokens.js +6 -0
- package/styled-components/es/components/Range/variations/_readonly/base.js +3 -2
- package/styled-components/es/components/Select/Select.js +2 -1
- package/styled-components/es/components/Select/hooks/useKeyboardNavigation.js +157 -44
- package/styled-components/es/components/Select/reducers/focusedPathReducer.js +7 -0
- package/styled-components/es/components/Select/reducers/treePathReducer.js +12 -0
- package/styled-components/es/components/Select/ui/Target/ui/Textfield/Textfield.js +5 -2
- package/styled-components/es/components/Select/ui/TreeList/TreeList.js +7 -3
- package/styled-components/es/components/Select/ui/TreeList/ui/Item/Item.js +50 -6
- package/styled-components/es/components/Tabs/tokens.js +1 -0
- package/styled-components/es/components/TimePickerGrid/TimePickerGrid.js +213 -282
- package/styled-components/es/components/TimePickerGrid/ui/TimeColumn/TimeColumn.js +2 -2
- package/styled-components/es/components/Tree/utils/deepCopy.js +73 -0
- package/styled-components/es/components/Tree/utils/index.js +1 -0
- package/styled-components/es/components/Tree/utils/traverseTree.js +1 -1
- package/styled-components/es/examples/components/ChipGroup/ChipGroup.config.js +131 -0
- package/styled-components/es/examples/components/Combobox/Combobox.config.js +20 -12
- package/styled-components/es/examples/components/DatePicker/DatePicker.config.js +4 -1
- package/styled-components/es/examples/components/DateTimePicker/DateTimePicker.config.js +776 -0
- package/styled-components/es/examples/components/DateTimePicker/DateTimePicker.js +5 -0
- package/styled-components/es/examples/components/Range/Range.config.js +4 -1
- package/styled-components/es/examples/components/Select/Select.config.js +7 -7
- package/styled-components/es/examples/components/Tabs/horizontal/HorizontalTabItem.config.js +4 -4
- package/styled-components/es/examples/components/Tabs/vertical/VerticalTabItem.config.js +4 -4
- package/styled-components/es/index.js +1 -0
- package/styled-components/es/utils/index.js +1 -0
- package/styled-components/es/utils/isArraysEqual.js +5 -0
- package/types/components/Calendar/CalendarBase/CalendarBase.d.ts.map +1 -1
- package/types/components/Calendar/CalendarDouble/CalendarDouble.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.tokens.d.ts +2 -0
- package/types/components/Combobox/ComboboxNew/Combobox.tokens.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +17 -3
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/hooks/getPathMaps.d.ts +2 -1
- package/types/components/Combobox/ComboboxNew/hooks/getPathMaps.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.d.ts +8 -3
- package/types/components/Combobox/ComboboxNew/hooks/useKeyboardNavigation.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/reducers/focusedPathReducer.d.ts +3 -0
- package/types/components/Combobox/ComboboxNew/reducers/focusedPathReducer.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/reducers/index.d.ts +1 -0
- package/types/components/Combobox/ComboboxNew/reducers/index.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/reducers/treePathReducer.d.ts +28 -0
- package/types/components/Combobox/ComboboxNew/reducers/treePathReducer.d.ts.map +1 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/TreeList.d.ts +4 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/TreeList.d.ts.map +1 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles.d.ts +6 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles.d.ts.map +1 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/TreeList.types.d.ts +11 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/TreeList.types.d.ts.map +1 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.d.ts +4 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.d.ts.map +1 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles.d.ts +62 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.styles.d.ts.map +1 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.types.d.ts +6 -0
- package/types/components/Combobox/ComboboxNew/ui/TreeList/ui/Item/Item.types.d.ts.map +1 -0
- package/types/components/Combobox/ComboboxNew/ui/index.d.ts +1 -0
- package/types/components/Combobox/ComboboxNew/ui/index.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/utils/filterItems.d.ts +1 -0
- package/types/components/Combobox/ComboboxNew/utils/filterItems.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/utils/index.d.ts +1 -1
- package/types/components/Combobox/ComboboxNew/utils/index.d.ts.map +1 -1
- package/types/components/DatePicker/DatePicker.tokens.d.ts +6 -0
- package/types/components/DatePicker/DatePicker.tokens.d.ts.map +1 -1
- package/types/components/DatePicker/RangeDate/RangeDate.styles.d.ts.map +1 -1
- package/types/components/DatePicker/utils/normalizeDates.d.ts.map +1 -1
- package/types/components/DateTimePicker/DateTimePicker.d.ts +73 -0
- package/types/components/DateTimePicker/DateTimePicker.d.ts.map +1 -0
- package/types/components/DateTimePicker/DateTimePicker.styles.d.ts +4 -0
- package/types/components/DateTimePicker/DateTimePicker.styles.d.ts.map +1 -0
- package/types/components/DateTimePicker/DateTimePicker.tokens.d.ts +257 -0
- package/types/components/DateTimePicker/DateTimePicker.tokens.d.ts.map +1 -0
- package/types/components/DateTimePicker/DateTimePicker.types.d.ts +160 -0
- package/types/components/DateTimePicker/DateTimePicker.types.d.ts.map +1 -0
- package/types/components/DateTimePicker/hooks/useDateTimePicker.d.ts +26 -0
- package/types/components/DateTimePicker/hooks/useDateTimePicker.d.ts.map +1 -0
- package/types/components/DateTimePicker/hooks/useKeyboardNavigation.d.ts +18 -0
- package/types/components/DateTimePicker/hooks/useKeyboardNavigation.d.ts.map +1 -0
- package/types/components/DateTimePicker/index.d.ts +4 -0
- package/types/components/DateTimePicker/index.d.ts.map +1 -0
- package/types/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.d.ts +11 -0
- package/types/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.d.ts.map +1 -0
- package/types/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.d.ts +10 -0
- package/types/components/DateTimePicker/ui/CalendarGrid/CalendarGrid.styles.d.ts.map +1 -0
- package/types/components/DateTimePicker/ui/DateShortcut/DateShortcutList.d.ts +12 -0
- package/types/components/DateTimePicker/ui/DateShortcut/DateShortcutList.d.ts.map +1 -0
- package/types/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.d.ts +44 -0
- package/types/components/DateTimePicker/ui/DateShortcut/DateShortcutList.styles.d.ts.map +1 -0
- package/types/components/DateTimePicker/ui/Input/Input.d.ts +8 -0
- package/types/components/DateTimePicker/ui/Input/Input.d.ts.map +1 -0
- package/types/components/DateTimePicker/ui/Input/Input.styles.d.ts +298 -0
- package/types/components/DateTimePicker/ui/Input/Input.styles.d.ts.map +1 -0
- package/types/components/DateTimePicker/ui/Popover/Popover.d.ts +8 -0
- package/types/components/DateTimePicker/ui/Popover/Popover.d.ts.map +1 -0
- package/types/components/DateTimePicker/ui/Popover/Popover.styles.d.ts +6 -0
- package/types/components/DateTimePicker/ui/Popover/Popover.styles.d.ts.map +1 -0
- package/types/components/DateTimePicker/ui/TimeGrid/TimeGrid.d.ts +9 -0
- package/types/components/DateTimePicker/ui/TimeGrid/TimeGrid.d.ts.map +1 -0
- package/types/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.d.ts +23 -0
- package/types/components/DateTimePicker/ui/TimeGrid/TimeGrid.styles.d.ts.map +1 -0
- package/types/components/DateTimePicker/ui/index.d.ts +7 -0
- package/types/components/DateTimePicker/ui/index.d.ts.map +1 -0
- package/types/components/DateTimePicker/utils/getFormattedDateTime.d.ts +27 -0
- package/types/components/DateTimePicker/utils/getFormattedDateTime.d.ts.map +1 -0
- package/types/components/DateTimePicker/utils/getMaskedValue.d.ts +13 -0
- package/types/components/DateTimePicker/utils/getMaskedValue.d.ts.map +1 -0
- package/types/components/DateTimePicker/utils/getOriginalDateTime.d.ts +19 -0
- package/types/components/DateTimePicker/utils/getOriginalDateTime.d.ts.map +1 -0
- package/types/components/DateTimePicker/utils/index.d.ts +3 -0
- package/types/components/DateTimePicker/utils/index.d.ts.map +1 -0
- package/types/components/DateTimePicker/utils/normalizeDateTime.d.ts +15 -0
- package/types/components/DateTimePicker/utils/normalizeDateTime.d.ts.map +1 -0
- package/types/components/DateTimePicker/variations/_disabled/base.d.ts +2 -0
- package/types/components/DateTimePicker/variations/_disabled/base.d.ts.map +1 -0
- package/types/components/DateTimePicker/variations/_readonly/base.d.ts +2 -0
- package/types/components/DateTimePicker/variations/_readonly/base.d.ts.map +1 -0
- package/types/components/DateTimePicker/variations/_size/base.d.ts +2 -0
- package/types/components/DateTimePicker/variations/_size/base.d.ts.map +1 -0
- package/types/components/DateTimePicker/variations/_tooltip-size/base.d.ts +2 -0
- package/types/components/DateTimePicker/variations/_tooltip-size/base.d.ts.map +1 -0
- package/types/components/DateTimePicker/variations/_view/base.d.ts +2 -0
- package/types/components/DateTimePicker/variations/_view/base.d.ts.map +1 -0
- package/types/components/Range/Range.styles.d.ts.map +1 -1
- package/types/components/Range/Range.tokens.d.ts +6 -0
- package/types/components/Range/Range.tokens.d.ts.map +1 -1
- package/types/components/Range/variations/_readonly/base.d.ts.map +1 -1
- package/types/components/Select/Select.d.ts.map +1 -1
- package/types/components/Select/hooks/useKeyboardNavigation.d.ts +2 -1
- package/types/components/Select/hooks/useKeyboardNavigation.d.ts.map +1 -1
- package/types/components/Select/reducers/focusedPathReducer.d.ts +3 -0
- package/types/components/Select/reducers/focusedPathReducer.d.ts.map +1 -1
- package/types/components/Select/reducers/treePathReducer.d.ts +6 -0
- package/types/components/Select/reducers/treePathReducer.d.ts.map +1 -1
- package/types/components/Select/ui/Target/ui/Textfield/Textfield.d.ts.map +1 -1
- package/types/components/Select/ui/TreeList/ui/Item/Item.d.ts.map +1 -1
- package/types/components/Select/ui/TreeList/ui/Item/Item.types.d.ts +1 -9
- package/types/components/Select/ui/TreeList/ui/Item/Item.types.d.ts.map +1 -1
- package/types/components/Tabs/tokens.d.ts +1 -0
- package/types/components/Tabs/tokens.d.ts.map +1 -1
- package/types/components/TimePickerGrid/TimePickerGrid.d.ts.map +1 -1
- package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts +1 -1
- package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.d.ts.map +1 -1
- package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.d.ts +2 -1
- package/types/components/TimePickerGrid/ui/TimeColumn/TimeColumn.types.d.ts.map +1 -1
- package/types/components/Tree/utils/deepCopy.d.ts +6 -0
- package/types/components/Tree/utils/deepCopy.d.ts.map +1 -0
- package/types/components/Tree/utils/index.d.ts +1 -0
- package/types/components/Tree/utils/index.d.ts.map +1 -1
- package/types/examples/components/ChipGroup/ChipGroup.config.d.ts.map +1 -0
- package/types/examples/components/ChipGroup/ChipGroup.d.ts.map +1 -0
- package/types/examples/components/Combobox/Combobox.config.d.ts.map +1 -1
- package/types/examples/components/Combobox/Combobox.d.ts +48 -0
- package/types/examples/components/Combobox/Combobox.d.ts.map +1 -1
- package/types/examples/components/DatePicker/DatePicker.config.d.ts.map +1 -1
- package/types/examples/components/DateTimePicker/DateTimePicker.config.d.ts +29 -0
- package/types/examples/components/DateTimePicker/DateTimePicker.config.d.ts.map +1 -0
- package/types/examples/components/DateTimePicker/DateTimePicker.d.ts +42 -0
- package/types/examples/components/DateTimePicker/DateTimePicker.d.ts.map +1 -0
- package/types/examples/components/Range/Range.config.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/utils/index.d.ts +1 -0
- package/types/utils/index.d.ts.map +1 -1
- package/types/utils/isArraysEqual.d.ts +2 -0
- package/types/utils/isArraysEqual.d.ts.map +1 -0
- package/cjs/components/DatePicker/RangeDate/RangeDate.styles_7jrupa.css +0 -4
- package/emotion/cjs/examples/components/ChipGroup /ChipGroup.config.js +0 -214
- package/emotion/es/examples/components/ChipGroup /ChipGroup.config.js +0 -204
- package/es/components/DatePicker/RangeDate/RangeDate.styles_7jrupa.css +0 -4
- package/styled-components/cjs/examples/components/ChipGroup /ChipGroup.config.js +0 -214
- package/styled-components/es/examples/components/ChipGroup /ChipGroup.config.js +0 -204
- package/types/examples/components/ChipGroup /ChipGroup.config.d.ts.map +0 -1
- package/types/examples/components/ChipGroup /ChipGroup.d.ts.map +0 -1
- /package/emotion/cjs/examples/components/{ChipGroup → ChipGroup}/ChipGroup.js +0 -0
- /package/emotion/es/examples/components/{ChipGroup → ChipGroup}/ChipGroup.js +0 -0
- /package/styled-components/cjs/examples/components/{ChipGroup → ChipGroup}/ChipGroup.js +0 -0
- /package/styled-components/es/examples/components/{ChipGroup → ChipGroup}/ChipGroup.js +0 -0
- /package/types/examples/components/{ChipGroup → ChipGroup}/ChipGroup.config.d.ts +0 -0
- /package/types/examples/components/{ChipGroup → ChipGroup}/ChipGroup.d.ts +0 -0
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { typeof as _typeof, createForOfIteratorHelper as _createForOfIteratorHelper } from '../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import { deepCopy } from '../../../../utils/deepCopy.js';
|
|
3
|
+
|
|
4
|
+
// Утилита для поиска ключа в объекте по пути.
|
|
5
|
+
var keyExists = function keyExists(obj, path) {
|
|
6
|
+
if (_typeof(obj) !== 'object' || obj === null || !Array.isArray(path)) {
|
|
7
|
+
return false;
|
|
8
|
+
}
|
|
9
|
+
var current = obj;
|
|
10
|
+
for (var i = 0; i < path.length; i++) {
|
|
11
|
+
var _key = path[i];
|
|
12
|
+
if (current === null || _typeof(current) !== 'object' || !(_key in current)) {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
current = current[_key];
|
|
16
|
+
}
|
|
17
|
+
return true;
|
|
18
|
+
};
|
|
19
|
+
function createObjectAtPath(obj, path) {
|
|
20
|
+
if (_typeof(obj) !== 'object' || obj === null) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
var current = obj;
|
|
24
|
+
for (var i = 0; i < path.length; i++) {
|
|
25
|
+
var _key2 = path[i];
|
|
26
|
+
if (i === path.length - 1) {
|
|
27
|
+
current[_key2] = {};
|
|
28
|
+
break;
|
|
29
|
+
}
|
|
30
|
+
if (current[_key2] === undefined || current[_key2] === null) {
|
|
31
|
+
current[_key2] = {};
|
|
32
|
+
}
|
|
33
|
+
current = current[_key2];
|
|
34
|
+
}
|
|
35
|
+
return obj;
|
|
36
|
+
}
|
|
37
|
+
function removeObjectAtPath(obj, path) {
|
|
38
|
+
if (path.length === 0) {
|
|
39
|
+
return obj;
|
|
40
|
+
}
|
|
41
|
+
var current = obj;
|
|
42
|
+
for (var i = 0; i < path.length; i++) {
|
|
43
|
+
var _key3 = path[i];
|
|
44
|
+
if (current === null || _typeof(current) !== 'object' || !(_key3 in current)) {
|
|
45
|
+
return obj;
|
|
46
|
+
}
|
|
47
|
+
if (i === path.length - 1) {
|
|
48
|
+
delete current[_key3];
|
|
49
|
+
break;
|
|
50
|
+
}
|
|
51
|
+
current = current[_key3];
|
|
52
|
+
}
|
|
53
|
+
return obj;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Утилита, которая получает на вход список отфильтрованных элементов и
|
|
58
|
+
* callback, с помощью которого эти элементы были отфильтрованы.
|
|
59
|
+
* Возвращает TreePathState, т.е. список раскрытых групп.
|
|
60
|
+
* По умолчанию группа не раскрывается, если в ней не было найдено ни одного элемента.
|
|
61
|
+
* Но т.к. поиск может осуществляться как по элементам, так и по группам,
|
|
62
|
+
* то может возникнуть ситуация, когда будет найдена как группа с определенным названием,
|
|
63
|
+
* так и элемент с таким же названием внутри нее, и в таком случае мы должны частично раскрыть группу,
|
|
64
|
+
* вплоть то найденного элемента.
|
|
65
|
+
* Если найдена только группа, без элементов внутри нее, то саму эту группу
|
|
66
|
+
* раскрывать не нужно. Нужно раскрыть только родителя этой группы.
|
|
67
|
+
*/
|
|
68
|
+
function generateNestedTreePathFromFilteredItems(filteredItems, filterCb, textValue) {
|
|
69
|
+
var result = {};
|
|
70
|
+
function traverse(items, currentPath) {
|
|
71
|
+
var hasFoundItems = false;
|
|
72
|
+
var _iterator = _createForOfIteratorHelper(items),
|
|
73
|
+
_step;
|
|
74
|
+
try {
|
|
75
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
76
|
+
var item = _step.value;
|
|
77
|
+
var isFound = filterCb(item, textValue);
|
|
78
|
+
if (item.items && item.items.length > 0) {
|
|
79
|
+
// Обрабатываем детей
|
|
80
|
+
var childPath = {};
|
|
81
|
+
var foundInChildren = traverse(item.items, childPath);
|
|
82
|
+
if (foundInChildren) {
|
|
83
|
+
// Если в детях найдены элементы - добавляем путь
|
|
84
|
+
currentPath[item.value] = childPath;
|
|
85
|
+
hasFoundItems = true;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// Если сама группа найдена, но в детях ничего нет - НЕ добавляем путь
|
|
89
|
+
// Просто отмечаем что что-то найдено на этом уровне
|
|
90
|
+
if (isFound && !foundInChildren) {
|
|
91
|
+
hasFoundItems = true;
|
|
92
|
+
}
|
|
93
|
+
} else if (isFound) {
|
|
94
|
+
// Для конечного элемента не добавляем путь в currentPath,
|
|
95
|
+
// но отмечаем что на этом уровне есть найденные элементы
|
|
96
|
+
hasFoundItems = true;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
} catch (err) {
|
|
100
|
+
_iterator.e(err);
|
|
101
|
+
} finally {
|
|
102
|
+
_iterator.f();
|
|
103
|
+
}
|
|
104
|
+
return hasFoundItems;
|
|
105
|
+
}
|
|
106
|
+
traverse(filteredItems, result);
|
|
107
|
+
return result;
|
|
108
|
+
}
|
|
109
|
+
function treePathReducer(state, action) {
|
|
110
|
+
switch (action.type) {
|
|
111
|
+
case 'reset':
|
|
112
|
+
{
|
|
113
|
+
return {};
|
|
114
|
+
}
|
|
115
|
+
case 'toggled_level':
|
|
116
|
+
{
|
|
117
|
+
var stateCopy = deepCopy(state);
|
|
118
|
+
var isTargetLevelOpened = keyExists(stateCopy, action.value);
|
|
119
|
+
if (isTargetLevelOpened) {
|
|
120
|
+
// нужно закрыть текущий уровень
|
|
121
|
+
removeObjectAtPath(stateCopy, action.value);
|
|
122
|
+
} else {
|
|
123
|
+
// нужно открыть требуемый уровень
|
|
124
|
+
createObjectAtPath(stateCopy, action.value);
|
|
125
|
+
}
|
|
126
|
+
return stateCopy;
|
|
127
|
+
}
|
|
128
|
+
case 'expand_by_key':
|
|
129
|
+
{
|
|
130
|
+
var _action$value = action.value,
|
|
131
|
+
filteredItems = _action$value.filteredItems,
|
|
132
|
+
filterCb = _action$value.filterCb,
|
|
133
|
+
textValue = _action$value.textValue;
|
|
134
|
+
return generateNestedTreePathFromFilteredItems(filteredItems, filterCb, textValue);
|
|
135
|
+
}
|
|
136
|
+
case 'open_level':
|
|
137
|
+
{
|
|
138
|
+
var _stateCopy = deepCopy(state);
|
|
139
|
+
createObjectAtPath(_stateCopy, action.value);
|
|
140
|
+
return _stateCopy;
|
|
141
|
+
}
|
|
142
|
+
case 'close_level':
|
|
143
|
+
{
|
|
144
|
+
var _stateCopy2 = deepCopy(state);
|
|
145
|
+
removeObjectAtPath(_stateCopy2, action.value);
|
|
146
|
+
return _stateCopy2;
|
|
147
|
+
}
|
|
148
|
+
default:
|
|
149
|
+
{
|
|
150
|
+
return state;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export { keyExists, treePathReducer };
|
|
156
|
+
//# sourceMappingURL=treePathReducer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"treePathReducer.js","sources":["../../../../../src/components/Combobox/ComboboxNew/reducers/treePathReducer.ts"],"sourcesContent":["import { deepCopy } from 'src/utils';\n\nimport { ItemOption } from '../Combobox.types';\n\ntype NestedTreePath = {\n [key: string]: {} | NestedTreePath;\n};\n\nexport type TreePathState = NestedTreePath;\n\nexport type TreePathAction =\n | { type: 'reset' }\n | { type: 'toggled_level'; value: string[] }\n | {\n type: 'expand_by_key';\n value: {\n filteredItems: ItemOption[];\n filterCb: (item: ItemOption, textValue: string) => boolean;\n textValue: string;\n };\n }\n | { type: 'open_level'; value: string[] }\n | { type: 'close_level'; value: string[] };\n\n// Утилита для поиска ключа в объекте по пути.\nexport const keyExists = (obj: NestedTreePath, path: string[]) => {\n if (typeof obj !== 'object' || obj === null || !Array.isArray(path)) {\n return false;\n }\n\n let current = obj;\n\n for (let i = 0; i < path.length; i++) {\n const key = path[i];\n\n if (current === null || typeof current !== 'object' || !(key in current)) {\n return false;\n }\n\n current = current[key];\n }\n\n return true;\n};\n\nfunction createObjectAtPath(obj: NestedTreePath, path: string[]) {\n if (typeof obj !== 'object' || obj === null) {\n return;\n }\n\n let current = obj;\n\n for (let i = 0; i < path.length; i++) {\n const key = path[i];\n\n if (i === path.length - 1) {\n current[key] = {};\n break;\n }\n\n if (current[key] === undefined || current[key] === null) {\n current[key] = {};\n }\n\n current = current[key];\n }\n\n return obj;\n}\n\nfunction removeObjectAtPath(obj: NestedTreePath, path: string[]) {\n if (path.length === 0) {\n return obj;\n }\n\n let current = obj;\n\n for (let i = 0; i < path.length; i++) {\n const key = path[i];\n\n if (current === null || typeof current !== 'object' || !(key in current)) {\n return obj;\n }\n\n if (i === path.length - 1) {\n delete current[key];\n break;\n }\n\n current = current[key];\n }\n\n return obj;\n}\n\n/**\n * Утилита, которая получает на вход список отфильтрованных элементов и\n * callback, с помощью которого эти элементы были отфильтрованы.\n * Возвращает TreePathState, т.е. список раскрытых групп.\n * По умолчанию группа не раскрывается, если в ней не было найдено ни одного элемента.\n * Но т.к. поиск может осуществляться как по элементам, так и по группам,\n * то может возникнуть ситуация, когда будет найдена как группа с определенным названием,\n * так и элемент с таким же названием внутри нее, и в таком случае мы должны частично раскрыть группу,\n * вплоть то найденного элемента.\n * Если найдена только группа, без элементов внутри нее, то саму эту группу\n * раскрывать не нужно. Нужно раскрыть только родителя этой группы.\n */\nfunction generateNestedTreePathFromFilteredItems(\n filteredItems: ItemOption[],\n filterCb: (item: ItemOption, value: string) => boolean,\n textValue: string,\n): TreePathState {\n const result: TreePathState = {};\n\n function traverse(items: ItemOption[], currentPath: TreePathState): boolean {\n let hasFoundItems = false;\n\n for (const item of items) {\n const isFound = filterCb(item, textValue);\n\n if (item.items && item.items.length > 0) {\n // Обрабатываем детей\n const childPath: TreePathState = {};\n const foundInChildren = traverse(item.items, childPath);\n\n if (foundInChildren) {\n // Если в детях найдены элементы - добавляем путь\n currentPath[item.value] = childPath;\n hasFoundItems = true;\n }\n\n // Если сама группа найдена, но в детях ничего нет - НЕ добавляем путь\n // Просто отмечаем что что-то найдено на этом уровне\n if (isFound && !foundInChildren) {\n hasFoundItems = true;\n }\n } else if (isFound) {\n // Для конечного элемента не добавляем путь в currentPath,\n // но отмечаем что на этом уровне есть найденные элементы\n hasFoundItems = true;\n }\n }\n\n return hasFoundItems;\n }\n\n traverse(filteredItems, result);\n\n return result;\n}\n\nexport function treePathReducer(state: TreePathState, action: TreePathAction): TreePathState {\n switch (action.type) {\n case 'reset': {\n return {};\n }\n\n case 'toggled_level': {\n const stateCopy = deepCopy(state);\n\n const isTargetLevelOpened = keyExists(stateCopy, action.value);\n\n if (isTargetLevelOpened) {\n // нужно закрыть текущий уровень\n removeObjectAtPath(stateCopy, action.value);\n } else {\n // нужно открыть требуемый уровень\n createObjectAtPath(stateCopy, action.value);\n }\n\n return stateCopy;\n }\n\n case 'expand_by_key': {\n const { filteredItems, filterCb, textValue } = action.value;\n\n return generateNestedTreePathFromFilteredItems(filteredItems, filterCb, textValue);\n }\n\n case 'open_level': {\n const stateCopy = deepCopy(state);\n\n createObjectAtPath(stateCopy, action.value);\n\n return stateCopy;\n }\n\n case 'close_level': {\n const stateCopy = deepCopy(state);\n\n removeObjectAtPath(stateCopy, action.value);\n\n return stateCopy;\n }\n\n default: {\n return state;\n }\n }\n}\n"],"names":["keyExists","obj","path","_typeof","Array","isArray","current","i","length","key","createObjectAtPath","undefined","removeObjectAtPath","generateNestedTreePathFromFilteredItems","filteredItems","filterCb","textValue","result","traverse","items","currentPath","hasFoundItems","_iterator","_createForOfIteratorHelper","_step","s","n","done","item","value","isFound","childPath","foundInChildren","err","e","f","treePathReducer","state","action","type","stateCopy","deepCopy","isTargetLevelOpened","_action$value"],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
.base_tj850e_b17hdes8__1acafc30 input[type='checkbox']:indeterminate + .base_tj850e_shwv1in__1acafc30 .base_tj850e_s1u3nd7e__1acafc30{background:var(--plasma-checkbox-fill-color);border-color:var(--plasma-checkbox-trigger-border-checked-color);}.base_tj850e_b17hdes8__1acafc30 input:checked + .base_tj850e_shwv1in__1acafc30 .base_tj850e_s1u3nd7e__1acafc30{background:var(--plasma-checkbox-fill-color);border-color:var(--plasma-checkbox-trigger-border-checked-color);}
|
|
2
|
+
|
|
3
|
+
.base_1kd28bo_bxbqqc3__7f6d1a80 input:disabled + .base_1kd28bo_shwv1in__7f6d1a80{opacity:var(--plasma-checkbox-disabled-opacity);}.base_1kd28bo_bxbqqc3__7f6d1a80 input:disabled + .base_1kd28bo_shwv1in__7f6d1a80{cursor:not-allowed;}
|
|
4
|
+
|
|
5
|
+
.base_x86p0b_b1y5wkm1__fe3a51af .base_x86p0b_checkboxTrigger__fe3a51af{position:relative;}.base_x86p0b_b1y5wkm1__fe3a51af .base_x86p0b_checkboxTrigger__fe3a51af::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0.125rem solid transparent;border-radius:var(--plasma-checkbox-trigger-border-radius);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.base_x86p0b_b1y5wkm1__fe3a51af .base_x86p0b_checkboxTrigger__fe3a51af.base_x86p0b_focusVisible__fe3a51af:focus::before,.base_x86p0b_b1y5wkm1__fe3a51af .base_x86p0b_checkboxTrigger__fe3a51af[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.125rem transparent;}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added] + label .base_x86p0b_checkboxTrigger__fe3a51af{border-color:transparent;position:relative;}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added] + label .base_x86p0b_checkboxTrigger__fe3a51af::before{content:'';position:absolute;top:-0.125rem;left:-0.125rem;right:-0.125rem;bottom:-0.125rem;z-index:1;display:block;box-sizing:content-box;border:0.125rem solid transparent;border-radius:var(--plasma-checkbox-trigger-border-radius);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added] + label .base_x86p0b_checkboxTrigger__fe3a51af::before{box-shadow:0 0 0 0.125rem var(--plasma-checkbox-focus-color);}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added]:checked + label .base_x86p0b_checkboxTrigger__fe3a51af,.base_x86p0b_b1y5wkm1__fe3a51af input[type='checkbox'][data-focus-visible-added]:indeterminate + label .base_x86p0b_checkboxTrigger__fe3a51af{position:relative;}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added]:checked + label .base_x86p0b_checkboxTrigger__fe3a51af::before,.base_x86p0b_b1y5wkm1__fe3a51af input[type='checkbox'][data-focus-visible-added]:indeterminate + label .base_x86p0b_checkboxTrigger__fe3a51af::before{content:'';position:absolute;top:-0.25rem;left:-0.25rem;right:-0.25rem;bottom:-0.25rem;z-index:1;display:block;box-sizing:content-box;border:0.063rem solid transparent;border-radius:calc(var(--plasma-checkbox-trigger-border-radius) + 0.125rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added]:checked + label .base_x86p0b_checkboxTrigger__fe3a51af::before,.base_x86p0b_b1y5wkm1__fe3a51af input[type='checkbox'][data-focus-visible-added]:indeterminate + label .base_x86p0b_checkboxTrigger__fe3a51af::before{box-shadow:0 0 0 0.063rem var(--plasma-checkbox-focus-color);}
|
|
6
|
+
|
|
7
|
+
.Checkbox_styles_1dv1w6k_b1udywkg__36f48cb9{margin:var(--plasma-checkbox-margin);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);position:relative;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}.Checkbox_styles_1dv1w6k_b1udywkg__36f48cb9 .Checkbox_styles_1dv1w6k_singleLine__36f48cb9{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
|
8
|
+
.Checkbox_styles_1dv1w6k_s165w87d__36f48cb9{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip:rect(0 0 0 0);clip:rect(0 0 0 0);}.Checkbox_styles_1dv1w6k_s165w87d__36f48cb9:focus{outline:0 none;}
|
|
9
|
+
.Checkbox_styles_1dv1w6k_sft3zxv__36f48cb9{padding:var(--plasma-checkbox-trigger-padding);}
|
|
10
|
+
.Checkbox_styles_1dv1w6k_s1u3nd7e__36f48cb9{width:var(--plasma-checkbox-trigger-size);height:var(--plasma-checkbox-trigger-size);border-radius:var(--plasma-checkbox-trigger-border-radius);position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;background:var(--plasma-checkbox-trigger-background-color);border:var(--plasma-checkbox-trigger-border-width) solid var(--plasma-checkbox-trigger-border-color);box-sizing:border-box;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;}input:not(:indeterminate) + label .Checkbox_styles_1dv1w6k_s1u3nd7e__36f48cb9 div{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transition:-webkit-transform 0.15s ease-in-out;-webkit-transition:transform 0.15s ease-in-out;transition:transform 0.15s ease-in-out;}input:checked + label .Checkbox_styles_1dv1w6k_s1u3nd7e__36f48cb9 div{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);}
|
|
11
|
+
.Checkbox_styles_1dv1w6k_shwv1in__36f48cb9{position:relative;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:inherit;cursor:pointer;}.Checkbox_styles_1dv1w6k_shwv1in__36f48cb9 .Checkbox_styles_1dv1w6k_singleLine__36f48cb9{width:100%;}
|
|
12
|
+
.Checkbox_styles_1dv1w6k_s1my1ay__36f48cb9{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-top:var(--plasma-checkbox-content-top-offset);margin-left:var(--plasma-checkbox-content-left-offset);}
|
|
13
|
+
.Checkbox_styles_1dv1w6k_s14u8fnn__36f48cb9{color:var(--plasma-checkbox-label-color);font-family:var(--plasma-checkbox-label-font-family);font-size:var(--plasma-checkbox-label-font-size);font-style:var(--plasma-checkbox-label-font-style);font-weight:var(--plasma-checkbox-label-font-weight);-webkit-letter-spacing:var(--plasma-checkbox-label-letter-spacing);-moz-letter-spacing:var(--plasma-checkbox-label-letter-spacing);-ms-letter-spacing:var(--plasma-checkbox-label-letter-spacing);letter-spacing:var(--plasma-checkbox-label-letter-spacing);line-height:var(--plasma-checkbox-label-line-height);}
|
|
14
|
+
.Checkbox_styles_1dv1w6k_s10clj68__36f48cb9{margin-top:var(--plasma-checkbox-description-margin-top);color:var(--plasma-checkbox-description-color);font-family:var(--plasma-checkbox-description-font-family);font-size:var(--plasma-checkbox-description-font-size);font-style:var(--plasma-checkbox-description-font-style);font-weight:var(--plasma-checkbox-description-font-weight);-webkit-letter-spacing:var(--plasma-checkbox-description-letter-spacing);-moz-letter-spacing:var(--plasma-checkbox-description-letter-spacing);-ms-letter-spacing:var(--plasma-checkbox-description-letter-spacing);letter-spacing:var(--plasma-checkbox-description-letter-spacing);line-height:var(--plasma-checkbox-description-line-height);}.Checkbox_styles_1dv1w6k_s10clj68__36f48cb9.Checkbox_styles_1dv1w6k_onlyDescription__36f48cb9{margin-top:0;}
|
|
15
|
+
|
|
16
|
+
.CellTextboxLabel_styles_1x97zqi_supiagz__b05150dd{color:var(--plasma-cell-label-color);font-size:var(--plasma-cell-label-font-size);font-weight:var(--plasma-cell-label-font-weight);font-family:var(--plasma-cell-label-font-family);font-style:var(--plasma-cell-label-font-style);line-height:var(--plasma-cell-label-line-height);-webkit-letter-spacing:var(--plasma-cell-label-letter-spacing);-moz-letter-spacing:var(--plasma-cell-label-letter-spacing);-ms-letter-spacing:var(--plasma-cell-label-letter-spacing);letter-spacing:var(--plasma-cell-label-letter-spacing);}
|
|
17
|
+
|
|
18
|
+
.CellTextboxTitle_styles_jogov7_s16psy9b__edbbb199{color:var(--plasma-cell-title-color);font-size:var(--plasma-cell-title-font-size);font-weight:var(--plasma-cell-title-font-weight);font-family:var(--plasma-cell-title-font-family);font-style:var(--plasma-cell-title-font-style);line-height:var(--plasma-cell-title-line-height);-webkit-letter-spacing:var(--plasma-cell-title-letter-spacing);-moz-letter-spacing:var(--plasma-cell-title-letter-spacing);-ms-letter-spacing:var(--plasma-cell-title-letter-spacing);letter-spacing:var(--plasma-cell-title-letter-spacing);}
|
|
19
|
+
|
|
20
|
+
.CellTextboxSubtitle_styles_n7i06q_s1bdz4u4__8e9f9a5a{color:var(--plasma-cell-subtitle-color);font-size:var(--plasma-cell-subtitle-font-size);font-weight:var(--plasma-cell-subtitle-font-weight);font-family:var(--plasma-cell-subtitle-font-family);font-style:var(--plasma-cell-subtitle-font-style);line-height:var(--plasma-cell-subtitle-line-height);-webkit-letter-spacing:var(--plasma-cell-subtitle-letter-spacing);-moz-letter-spacing:var(--plasma-cell-subtitle-letter-spacing);-ms-letter-spacing:var(--plasma-cell-subtitle-letter-spacing);letter-spacing:var(--plasma-cell-subtitle-letter-spacing);}
|
|
21
|
+
|
|
22
|
+
.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_cellStretchingFixed__a35afa10{width:var(--plasma-cell-width);}.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_cellStretchingFilled__a35afa10{width:100%;}.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_cellStretchingAuto__a35afa10{width:auto;}
|
|
23
|
+
.Cell_styles_1lali49_c1e5qbb3__a35afa10{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:auto;-ms-flex:auto;flex:auto;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;gap:var(--plasma-cell-gap);height:auto;}
|
|
24
|
+
.Cell_styles_1lali49_cdgokyj__a35afa10{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:auto;}
|
|
25
|
+
.Cell_styles_1lali49_c1k87ec1__a35afa10{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:var(--c1k87ec1-0);-webkit-box-align:var(--c1k87ec1-0);-ms-flex-align:var(--c1k87ec1-0);align-items:var(--c1k87ec1-0);}
|
|
26
|
+
.Cell_styles_1lali49_c1spqh22__a35afa10{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:var(--c1spqh22-0);-webkit-box-align:var(--c1spqh22-0);-ms-flex-align:var(--c1spqh22-0);align-items:var(--c1spqh22-0);text-align:right;}
|
|
27
|
+
|
|
28
|
+
.base_pir0qf_b1sr9i7l__baa3f156{color:var(--plasma-cell-color);background-color:var(--plasma-cell-background-color);width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;gap:var(--plasma-cell-gap);}.base_pir0qf_b1sr9i7l__baa3f156:focus{outline:0 none;}
|
|
29
|
+
|
|
30
|
+
.CellTextbox_styles_rgpies_cz0uqdu__c842929b{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--plasma-cell-textbox-gap);}
|
|
31
|
+
|
|
32
|
+
.Indicator_styles_v8giip_b5hgwnm__ffd4472f{border-radius:100%;}
|
|
33
|
+
|
|
34
|
+
.base_1rjb5ly_bu942ai__5ed616c0{background-color:var(--plasma-indicator-color);}
|
|
35
|
+
|
|
36
|
+
.base_7436cm_b17chi2r__254eb615{height:var(--plasma-indicator-size);width:var(--plasma-indicator-size);}
|
|
37
|
+
|
|
38
|
+
.IconRoot_7pl7ig_svvlqhf__32c458a1{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;width:var(--svvlqhf-0);height:var(--svvlqhf-0);-webkit-flex:0 0 var(--svvlqhf-0);-ms-flex:0 0 var(--svvlqhf-0);flex:0 0 var(--svvlqhf-0);}
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
.Item_styles_7nhjnm_swacibr__bb9b6d83{--plasma-cell-title-color:var(--text-primary);--plasma-cell-background-color:var(--surface-clear);--plasma-cell-padding:var(--plasma-combobox-cell-padding);--plasma-cell-padding-left-content:var(--plasma-combobox-cell-padding-left-content);--plasma-cell-padding-content:var(--plasma-combobox-cell-padding-content);--plasma-cell-padding-right-content:var(--plasma-combobox-cell-padding-right-content);--plasma-cell-textbox-gap:var(--plasma-combobox-cell-textbox-gap);--plasma-cell-gap:var(--plasma-combobox-cell-gap);--plasma-cell-title-font-family:var(--plasma-combobox-cell-title-font-family);--plasma-cell-title-font-size:var(--plasma-combobox-cell-title-font-size);--plasma-cell-title-font-style:var(--plasma-combobox-cell-title-font-style);--plasma-cell-title-font-weight:var(--plasma-combobox-cell-title-font-weight);--plasma-cell-title-letter-spacing:var(--plasma-combobox-cell-title-letter-spacing);--plasma-cell-title-line-height:var(--plasma-combobox-cell-title-line-height);width:100%;}
|
|
42
|
+
|
|
43
|
+
.Item_styles_7nhjnm_srzm47e__bb9b6d83{--plasma-checkbox-trigger-size:var(--plasma-combobox-checkbox-trigger-size);--plasma-checkbox-trigger-border-radius:var(--plasma-combobox-checkbox-trigger-border-radius);--plasma-checkbox-fill-color:var(--plasma-combobox-checkbox-fill-color);--plasma-checkbox-icon-color:var(--plasma-combobox-checkbox-icon-color);--plasma-checkbox-trigger-border-color:var(--plasma-combobox-checkbox-trigger-border-color);--plasma-checkbox-trigger-border-checked-color:var(--plasma-combobox-checkbox-trigger-border-checked-color);--plasma-checkbox-trigger-border-width:var(--plasma-combobox-checkbox-trigger-border-width);}
|
|
44
|
+
.Item_styles_7nhjnm_s192qkx1__bb9b6d83{--plasma-indicator-size:var(--plasma-combobox-indicator-size);--plasma-indicator-color:var(--plasma-combobox-item-icon-color);}
|
|
45
|
+
.Item_styles_7nhjnm_s1q9myss__bb9b6d83{width:var(--s1q9myss-0);height:var(--s1q9myss-0);}.Item_styles_7nhjnm_s1q9myss__bb9b6d83.Item_styles_7nhjnm_arrowInverse__bb9b6d83{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);}
|
|
46
|
+
.Item_styles_7nhjnm_s10m1bkx__bb9b6d83{width:var(--s10m1bkx-0);height:var(--s10m1bkx-0);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);}.Item_styles_7nhjnm_s10m1bkx__bb9b6d83.Item_styles_7nhjnm_arrowInverse__bb9b6d83{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);}
|
|
47
|
+
.Item_styles_7nhjnm_s1r53w2d__bb9b6d83{width:var(--s1r53w2d-0);height:var(--s1r53w2d-0);}
|
|
48
|
+
.Item_styles_7nhjnm_d1v61vfm__bb9b6d83{line-height:0;color:var(--plasma-combobox-disclosure-icon-color);visibility:var(--d1v61vfm-0);}.Item_styles_7nhjnm_d1v61vfm__bb9b6d83:hover{color:var(--plasma-combobox-disclosure-icon-color-hover);}
|
|
49
|
+
.Item_styles_7nhjnm_i6hijvp__bb9b6d83{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-flex:none;-ms-flex:none;flex:none;width:var(--i6hijvp-0);height:var(--i6hijvp-0);line-height:0;color:var(--plasma-combobox-item-icon-color);}
|
|
50
|
+
.Item_styles_7nhjnm_s1j1q6dk__bb9b6d83{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-flex:1;-ms-flex:1;flex:1;}
|
|
51
|
+
.Item_styles_7nhjnm_w1ftsp23__bb9b6d83{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:var(--plasma-select-item-gap);min-height:var(--plasma-combobox-item-height);margin:0;box-sizing:content-box;padding:var(--w1ftsp23-0);font-family:var(--plasma-combobox-font-family);font-size:var(--plasma-combobox-font-size);font-style:var(--plasma-combobox-font-style);font-weight:var(--plasma-combobox-font-weight);-webkit-letter-spacing:var(--plasma-combobox-font-letter-spacing);-moz-letter-spacing:var(--plasma-combobox-font-letter-spacing);-ms-letter-spacing:var(--plasma-combobox-font-letter-spacing);letter-spacing:var(--plasma-combobox-font-letter-spacing);line-height:var(--plasma-combobox-font-line-height);background-color:var(--surface-clear);color:var(--text-primary);border-radius:calc(var(--plasma-combobox-border-radius) - 0.125rem - var(--plasma-select-dropdown-border-width,0rem));-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-clip:padding-box;position:relative;}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83:hover:not(.Item_styles_7nhjnm_dropdownItemIsDisabled__bb9b6d83){cursor:pointer;background-color:var(--plasma-combobox-item-background-hover);}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83.Item_styles_7nhjnm_dropdownItemIsActive__bb9b6d83{background-color:var(--plasma-combobox-item-background-hover);}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83.Item_styles_7nhjnm_dropdownItemIsDisabled__bb9b6d83{opacity:0.4;cursor:not-allowed;}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83:focus{outline:none;}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0 solid transparent;border-radius:calc(var(--plasma-combobox-border-radius) - 0.125rem - var(--plasma-select-dropdown-border-width,0rem));-webkit-transition:none;transition:none;pointer-events:none;}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83.Item_styles_7nhjnm_dropdownItemIsFocused__bb9b6d83:before{outline:none;box-shadow:inset 0 0 0 0.0625rem var(--surface-accent);}
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
.Item_styles_7nhjnm_omc64gp__bb9b6d83{width:calc(var(--omc64gp-0) * var(--plasma-select-item-tree-offset-width));-webkit-flex:none;-ms-flex:none;flex:none;margin-right:calc(var(--plasma-select-item-gap) * -1);}
|
|
55
|
+
|
|
56
|
+
.TreeList_styles_1auklgl_l1ob9zdf__e765a7ed{width:100%;padding:calc(var(--plasma-combobox-padding) + var(--plasma-select-dropdown-border-width,0rem));border-radius:var(--plasma-combobox-border-radius);box-sizing:border-box;background:var(--surface-solid-card);box-shadow:0px 4px 14px -4px rgba(8,8,8,0.08),0px 1px 4px -1px rgba(0,0,0,0.04), inset 0 0 0 var(--plasma-select-dropdown-border-width,0rem) var(--plasma-select-dropdown-border-color,transparent);}
|
|
57
|
+
.TreeList_styles_1auklgl_s189uhoe__e765a7ed{max-height:var(--s189uhoe-0);overflow-x:hidden;overflow-y:auto;border-radius:calc(var(--plasma-combobox-border-radius) - 0.125rem - var(--plasma-select-dropdown-border-width,0rem));}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import React, { useRef } from 'react';
|
|
2
|
+
import { useVirtualizer } from '@tanstack/react-virtual';
|
|
3
|
+
import { Item } from './ui/Item/Item.js';
|
|
4
|
+
import { ListWrapper, ScrollContainer } from './TreeList.styles.js';
|
|
5
|
+
import { getHeightAsNumber } from '../../../../../utils/getHeightAsNumber.js';
|
|
6
|
+
|
|
7
|
+
var TreeList = function TreeList(_ref) {
|
|
8
|
+
var items = _ref.items,
|
|
9
|
+
listMaxHeight = _ref.listMaxHeight,
|
|
10
|
+
onScroll = _ref.onScroll,
|
|
11
|
+
virtual = _ref.virtual,
|
|
12
|
+
beforeList = _ref.beforeList,
|
|
13
|
+
afterList = _ref.afterList;
|
|
14
|
+
if (virtual) {
|
|
15
|
+
return /*#__PURE__*/React.createElement(VirtualTreeList, {
|
|
16
|
+
items: items,
|
|
17
|
+
listMaxHeight: listMaxHeight,
|
|
18
|
+
onScroll: onScroll,
|
|
19
|
+
beforeList: beforeList,
|
|
20
|
+
afterList: afterList
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
return /*#__PURE__*/React.createElement(ListWrapper, null, /*#__PURE__*/React.createElement(ScrollContainer, {
|
|
24
|
+
listMaxHeight: listMaxHeight,
|
|
25
|
+
onScroll: onScroll
|
|
26
|
+
}, beforeList, items === null || items === void 0 ? void 0 : items.map(function (item, index) {
|
|
27
|
+
return /*#__PURE__*/React.createElement(Item, {
|
|
28
|
+
key: index,
|
|
29
|
+
item: item,
|
|
30
|
+
pathToItem: [index]
|
|
31
|
+
});
|
|
32
|
+
}), afterList));
|
|
33
|
+
};
|
|
34
|
+
var VirtualTreeList = function VirtualTreeList(_ref2) {
|
|
35
|
+
var _virtualItems$0$start, _virtualItems$;
|
|
36
|
+
var _ref2$items = _ref2.items,
|
|
37
|
+
items = _ref2$items === void 0 ? [] : _ref2$items,
|
|
38
|
+
listMaxHeight = _ref2.listMaxHeight,
|
|
39
|
+
onScroll = _ref2.onScroll,
|
|
40
|
+
beforeList = _ref2.beforeList,
|
|
41
|
+
afterList = _ref2.afterList;
|
|
42
|
+
var parentRef = useRef(null);
|
|
43
|
+
var virtualizer = useVirtualizer({
|
|
44
|
+
count: items.length,
|
|
45
|
+
getScrollElement: function getScrollElement() {
|
|
46
|
+
return parentRef.current;
|
|
47
|
+
},
|
|
48
|
+
estimateSize: function estimateSize() {
|
|
49
|
+
return 48;
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
var virtualItems = virtualizer.getVirtualItems();
|
|
53
|
+
return /*#__PURE__*/React.createElement(ListWrapper, null, beforeList, /*#__PURE__*/React.createElement("div", {
|
|
54
|
+
ref: parentRef,
|
|
55
|
+
style: {
|
|
56
|
+
height: 'auto',
|
|
57
|
+
maxHeight: getHeightAsNumber(listMaxHeight),
|
|
58
|
+
overflowY: 'auto'
|
|
59
|
+
},
|
|
60
|
+
onScroll: onScroll
|
|
61
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
62
|
+
style: {
|
|
63
|
+
height: virtualizer.getTotalSize(),
|
|
64
|
+
width: '100%',
|
|
65
|
+
position: 'relative'
|
|
66
|
+
}
|
|
67
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
68
|
+
style: {
|
|
69
|
+
position: 'absolute',
|
|
70
|
+
top: 0,
|
|
71
|
+
left: 0,
|
|
72
|
+
width: '100%',
|
|
73
|
+
transform: "translateY(".concat((_virtualItems$0$start = (_virtualItems$ = virtualItems[0]) === null || _virtualItems$ === void 0 ? void 0 : _virtualItems$.start) !== null && _virtualItems$0$start !== void 0 ? _virtualItems$0$start : 0, "px)")
|
|
74
|
+
}
|
|
75
|
+
}, virtualItems.map(function (virtualRow) {
|
|
76
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
77
|
+
key: virtualRow.key,
|
|
78
|
+
"data-index": virtualRow.index,
|
|
79
|
+
ref: virtualizer.measureElement
|
|
80
|
+
}, /*#__PURE__*/React.createElement(Item, {
|
|
81
|
+
item: items[virtualRow.index],
|
|
82
|
+
pathToItem: [virtualRow.index]
|
|
83
|
+
}));
|
|
84
|
+
})))), afterList);
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
export { TreeList };
|
|
88
|
+
//# sourceMappingURL=TreeList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TreeList.js","sources":["../../../../../../src/components/Combobox/ComboboxNew/ui/TreeList/TreeList.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport { useVirtualizer } from '@tanstack/react-virtual';\nimport { getHeightAsNumber } from 'src/utils';\n\nimport { Props } from './TreeList.types';\nimport { Item } from './ui/Item/Item';\nimport { ListWrapper, ScrollContainer } from './TreeList.styles';\n\nexport const TreeList: React.FC<Props> = ({ items, listMaxHeight, onScroll, virtual, beforeList, afterList }) => {\n if (virtual) {\n return (\n <VirtualTreeList\n items={items}\n listMaxHeight={listMaxHeight}\n onScroll={onScroll}\n beforeList={beforeList}\n afterList={afterList}\n />\n );\n }\n\n return (\n <ListWrapper>\n <ScrollContainer listMaxHeight={listMaxHeight} onScroll={onScroll}>\n {beforeList}\n\n {items?.map((item, index) => {\n return <Item key={index} item={item} pathToItem={[index]} />;\n })}\n\n {afterList}\n </ScrollContainer>\n </ListWrapper>\n );\n};\n\nconst VirtualTreeList: React.FC<Props> = ({ items = [], listMaxHeight, onScroll, beforeList, afterList }) => {\n const parentRef = useRef<HTMLDivElement>(null);\n\n const virtualizer = useVirtualizer({\n count: items.length,\n getScrollElement: () => parentRef.current,\n estimateSize: () => 48,\n });\n\n const virtualItems = virtualizer.getVirtualItems();\n\n return (\n <ListWrapper>\n {beforeList}\n\n <div\n ref={parentRef}\n style={{\n height: 'auto',\n maxHeight: getHeightAsNumber(listMaxHeight),\n overflowY: 'auto',\n }}\n onScroll={onScroll}\n >\n <div\n style={{\n height: virtualizer.getTotalSize(),\n width: '100%',\n position: 'relative',\n }}\n >\n <div\n style={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: '100%',\n transform: `translateY(${virtualItems[0]?.start ?? 0}px)`,\n }}\n >\n {virtualItems.map((virtualRow) => (\n <div\n key={virtualRow.key as React.Key}\n data-index={virtualRow.index}\n ref={virtualizer.measureElement}\n >\n <Item item={items[virtualRow.index]} pathToItem={[virtualRow.index]} />\n </div>\n ))}\n </div>\n </div>\n </div>\n\n {afterList}\n </ListWrapper>\n );\n};\n"],"names":["TreeList","_ref","items","listMaxHeight","onScroll","virtual","beforeList","afterList","React","createElement","VirtualTreeList","ListWrapper","ScrollContainer","map","item","index","Item","key","pathToItem","_ref2","_virtualItems$0$start","_virtualItems$","_ref2$items","parentRef","useRef","virtualizer","useVirtualizer","count","length","getScrollElement","current","estimateSize","virtualItems","getVirtualItems","ref","style","height","maxHeight","getHeightAsNumber","overflowY","getTotalSize","width","position","top","left","transform","concat","start","virtualRow","measureElement"],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import './TreeList.styles_1auklgl.css';
|
|
2
|
+
import { styled } from '@linaria/react';
|
|
3
|
+
|
|
4
|
+
var ListWrapper = /*#__PURE__*/styled('div')({
|
|
5
|
+
name: "ListWrapper",
|
|
6
|
+
"class": "l1ob9zdf",
|
|
7
|
+
propsAsIs: false
|
|
8
|
+
});
|
|
9
|
+
var _exp8 = function _exp8() {
|
|
10
|
+
return function (_ref) {
|
|
11
|
+
var listMaxHeight = _ref.listMaxHeight;
|
|
12
|
+
return listMaxHeight || 'auto';
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
var ScrollContainer = /*#__PURE__*/styled('div')({
|
|
16
|
+
name: "ScrollContainer",
|
|
17
|
+
"class": "s189uhoe",
|
|
18
|
+
propsAsIs: false,
|
|
19
|
+
vars: {
|
|
20
|
+
"s189uhoe-0": [/*#__PURE__*/_exp8()]
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
export { ListWrapper, ScrollContainer };
|
|
25
|
+
//# sourceMappingURL=TreeList.styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TreeList.styles.js","sources":["../../../../../../src/components/Combobox/ComboboxNew/ui/TreeList/TreeList.styles.ts"],"sourcesContent":["import { styled } from '@linaria/react';\nimport { SelectProps } from 'src/components/Select';\n\nimport { constants, tokens } from '../../Combobox.tokens';\n\nexport const ListWrapper = styled.div`\n width: 100%;\n padding: calc(var(${tokens.padding}) + var(${tokens.dropdownBorderWidth}, 0rem));\n border-radius: var(${tokens.borderRadius});\n box-sizing: border-box;\n background: var(${constants.background});\n box-shadow: ${constants.boxShadow},\n inset 0 0 0 var(${tokens.dropdownBorderWidth}, 0rem) var(${tokens.dropdownBorderColor}, transparent);\n`;\n\nexport const ScrollContainer = styled.div<{\n listMaxHeight?: SelectProps['listMaxHeight'];\n}>`\n max-height: ${({ listMaxHeight }) => listMaxHeight || 'auto'};\n overflow-x: hidden;\n overflow-y: auto;\n border-radius: calc(var(${tokens.borderRadius}) - 0.125rem - var(${tokens.dropdownBorderWidth}, 0rem));\n`;\n"],"names":["ListWrapper","styled","name","class","propsAsIs","_exp8","_ref","listMaxHeight","ScrollContainer","vars"],"mappings":";;AAKO,IAAMA,WAAW,gBAAGC,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,aAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAA,CAQhC,EAAA;AAAC,IAAAC,KAAA,GAZgBA,SAYhBA,KAAAA,GAAA;AAAA,EAAA,OAKgB,UAAAC,IAAA,EAAA;AAAA,IAAA,IAAGC,aAAAA,GAAAA,IAAAA,CAAAA,aAAAA,CAAAA;IAAAA,OAAoBA,aAAa,IAAI,MAAM,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA,CAAA;AAHzD,IAAMC,eAAe,gBAAGP,MAAM,CAAA,KAAA,CAAA,CAAA;AAAAC,EAAAA,IAAA,EAAA,iBAAA;AAAAC,EAAAA,OAAAA,EAAA,UAAA;AAAAC,EAAAA,SAAA,EAAA,KAAA;AAAAK,EAAAA,IAAA,EAAA;AAAA,IAAA,YAAA,EAAA,cAGnBJ,KAA8C,EAAA,CAAA;AAAA,GAAA;AAAA,CAI/D;;;;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
.l1ob9zdf{width:100%;padding:calc(var(--plasma-combobox-padding) + var(--plasma-select-dropdown-border-width,0rem));border-radius:var(--plasma-combobox-border-radius);box-sizing:border-box;background:var(--surface-solid-card);box-shadow:0px 4px 14px -4px rgba(8,8,8,0.08),0px 1px 4px -1px rgba(0,0,0,0.04), inset 0 0 0 var(--plasma-select-dropdown-border-width,0rem) var(--plasma-select-dropdown-border-color,transparent);}
|
|
2
|
+
.s189uhoe{max-height:var(--s189uhoe-0);overflow-x:hidden;overflow-y:auto;border-radius:calc(var(--plasma-combobox-border-radius) - 0.125rem - var(--plasma-select-dropdown-border-width,0rem));}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
.base_tj850e_b17hdes8__1acafc30 input[type='checkbox']:indeterminate + .base_tj850e_shwv1in__1acafc30 .base_tj850e_s1u3nd7e__1acafc30{background:var(--plasma-checkbox-fill-color);border-color:var(--plasma-checkbox-trigger-border-checked-color);}.base_tj850e_b17hdes8__1acafc30 input:checked + .base_tj850e_shwv1in__1acafc30 .base_tj850e_s1u3nd7e__1acafc30{background:var(--plasma-checkbox-fill-color);border-color:var(--plasma-checkbox-trigger-border-checked-color);}
|
|
2
|
+
|
|
3
|
+
.base_1kd28bo_bxbqqc3__7f6d1a80 input:disabled + .base_1kd28bo_shwv1in__7f6d1a80{opacity:var(--plasma-checkbox-disabled-opacity);}.base_1kd28bo_bxbqqc3__7f6d1a80 input:disabled + .base_1kd28bo_shwv1in__7f6d1a80{cursor:not-allowed;}
|
|
4
|
+
|
|
5
|
+
.base_x86p0b_b1y5wkm1__fe3a51af .base_x86p0b_checkboxTrigger__fe3a51af{position:relative;}.base_x86p0b_b1y5wkm1__fe3a51af .base_x86p0b_checkboxTrigger__fe3a51af::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0.125rem solid transparent;border-radius:var(--plasma-checkbox-trigger-border-radius);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.base_x86p0b_b1y5wkm1__fe3a51af .base_x86p0b_checkboxTrigger__fe3a51af.base_x86p0b_focusVisible__fe3a51af:focus::before,.base_x86p0b_b1y5wkm1__fe3a51af .base_x86p0b_checkboxTrigger__fe3a51af[data-focus-visible-added]::before{outline:none;box-shadow:0 0 0 0.125rem transparent;}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added] + label .base_x86p0b_checkboxTrigger__fe3a51af{border-color:transparent;position:relative;}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added] + label .base_x86p0b_checkboxTrigger__fe3a51af::before{content:'';position:absolute;top:-0.125rem;left:-0.125rem;right:-0.125rem;bottom:-0.125rem;z-index:1;display:block;box-sizing:content-box;border:0.125rem solid transparent;border-radius:var(--plasma-checkbox-trigger-border-radius);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added] + label .base_x86p0b_checkboxTrigger__fe3a51af::before{box-shadow:0 0 0 0.125rem var(--plasma-checkbox-focus-color);}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added]:checked + label .base_x86p0b_checkboxTrigger__fe3a51af,.base_x86p0b_b1y5wkm1__fe3a51af input[type='checkbox'][data-focus-visible-added]:indeterminate + label .base_x86p0b_checkboxTrigger__fe3a51af{position:relative;}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added]:checked + label .base_x86p0b_checkboxTrigger__fe3a51af::before,.base_x86p0b_b1y5wkm1__fe3a51af input[type='checkbox'][data-focus-visible-added]:indeterminate + label .base_x86p0b_checkboxTrigger__fe3a51af::before{content:'';position:absolute;top:-0.25rem;left:-0.25rem;right:-0.25rem;bottom:-0.25rem;z-index:1;display:block;box-sizing:content-box;border:0.063rem solid transparent;border-radius:calc(var(--plasma-checkbox-trigger-border-radius) + 0.125rem);-webkit-transition:box-shadow 0.2s ease-in-out;transition:box-shadow 0.2s ease-in-out;pointer-events:none;}.base_x86p0b_b1y5wkm1__fe3a51af input[data-focus-visible-added]:checked + label .base_x86p0b_checkboxTrigger__fe3a51af::before,.base_x86p0b_b1y5wkm1__fe3a51af input[type='checkbox'][data-focus-visible-added]:indeterminate + label .base_x86p0b_checkboxTrigger__fe3a51af::before{box-shadow:0 0 0 0.063rem var(--plasma-checkbox-focus-color);}
|
|
6
|
+
|
|
7
|
+
.Checkbox_styles_1dv1w6k_b1udywkg__36f48cb9{margin:var(--plasma-checkbox-margin);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:rgba(0,0,0,0);position:relative;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}.Checkbox_styles_1dv1w6k_b1udywkg__36f48cb9 .Checkbox_styles_1dv1w6k_singleLine__36f48cb9{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
|
|
8
|
+
.Checkbox_styles_1dv1w6k_s165w87d__36f48cb9{position:absolute;width:1px;height:1px;overflow:hidden;-webkit-clip:rect(0 0 0 0);clip:rect(0 0 0 0);}.Checkbox_styles_1dv1w6k_s165w87d__36f48cb9:focus{outline:0 none;}
|
|
9
|
+
.Checkbox_styles_1dv1w6k_sft3zxv__36f48cb9{padding:var(--plasma-checkbox-trigger-padding);}
|
|
10
|
+
.Checkbox_styles_1dv1w6k_s1u3nd7e__36f48cb9{width:var(--plasma-checkbox-trigger-size);height:var(--plasma-checkbox-trigger-size);border-radius:var(--plasma-checkbox-trigger-border-radius);position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;background:var(--plasma-checkbox-trigger-background-color);border:var(--plasma-checkbox-trigger-border-width) solid var(--plasma-checkbox-trigger-border-color);box-sizing:border-box;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;-webkit-box-flex:0;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;}input:not(:indeterminate) + label .Checkbox_styles_1dv1w6k_s1u3nd7e__36f48cb9 div{-webkit-transform:scale(0);-ms-transform:scale(0);transform:scale(0);-webkit-transition:-webkit-transform 0.15s ease-in-out;-webkit-transition:transform 0.15s ease-in-out;transition:transform 0.15s ease-in-out;}input:checked + label .Checkbox_styles_1dv1w6k_s1u3nd7e__36f48cb9 div{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);}
|
|
11
|
+
.Checkbox_styles_1dv1w6k_shwv1in__36f48cb9{position:relative;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:inherit;cursor:pointer;}.Checkbox_styles_1dv1w6k_shwv1in__36f48cb9 .Checkbox_styles_1dv1w6k_singleLine__36f48cb9{width:100%;}
|
|
12
|
+
.Checkbox_styles_1dv1w6k_s1my1ay__36f48cb9{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-top:var(--plasma-checkbox-content-top-offset);margin-left:var(--plasma-checkbox-content-left-offset);}
|
|
13
|
+
.Checkbox_styles_1dv1w6k_s14u8fnn__36f48cb9{color:var(--plasma-checkbox-label-color);font-family:var(--plasma-checkbox-label-font-family);font-size:var(--plasma-checkbox-label-font-size);font-style:var(--plasma-checkbox-label-font-style);font-weight:var(--plasma-checkbox-label-font-weight);-webkit-letter-spacing:var(--plasma-checkbox-label-letter-spacing);-moz-letter-spacing:var(--plasma-checkbox-label-letter-spacing);-ms-letter-spacing:var(--plasma-checkbox-label-letter-spacing);letter-spacing:var(--plasma-checkbox-label-letter-spacing);line-height:var(--plasma-checkbox-label-line-height);}
|
|
14
|
+
.Checkbox_styles_1dv1w6k_s10clj68__36f48cb9{margin-top:var(--plasma-checkbox-description-margin-top);color:var(--plasma-checkbox-description-color);font-family:var(--plasma-checkbox-description-font-family);font-size:var(--plasma-checkbox-description-font-size);font-style:var(--plasma-checkbox-description-font-style);font-weight:var(--plasma-checkbox-description-font-weight);-webkit-letter-spacing:var(--plasma-checkbox-description-letter-spacing);-moz-letter-spacing:var(--plasma-checkbox-description-letter-spacing);-ms-letter-spacing:var(--plasma-checkbox-description-letter-spacing);letter-spacing:var(--plasma-checkbox-description-letter-spacing);line-height:var(--plasma-checkbox-description-line-height);}.Checkbox_styles_1dv1w6k_s10clj68__36f48cb9.Checkbox_styles_1dv1w6k_onlyDescription__36f48cb9{margin-top:0;}
|
|
15
|
+
|
|
16
|
+
.CellTextboxLabel_styles_1x97zqi_supiagz__b05150dd{color:var(--plasma-cell-label-color);font-size:var(--plasma-cell-label-font-size);font-weight:var(--plasma-cell-label-font-weight);font-family:var(--plasma-cell-label-font-family);font-style:var(--plasma-cell-label-font-style);line-height:var(--plasma-cell-label-line-height);-webkit-letter-spacing:var(--plasma-cell-label-letter-spacing);-moz-letter-spacing:var(--plasma-cell-label-letter-spacing);-ms-letter-spacing:var(--plasma-cell-label-letter-spacing);letter-spacing:var(--plasma-cell-label-letter-spacing);}
|
|
17
|
+
|
|
18
|
+
.CellTextboxTitle_styles_jogov7_s16psy9b__edbbb199{color:var(--plasma-cell-title-color);font-size:var(--plasma-cell-title-font-size);font-weight:var(--plasma-cell-title-font-weight);font-family:var(--plasma-cell-title-font-family);font-style:var(--plasma-cell-title-font-style);line-height:var(--plasma-cell-title-line-height);-webkit-letter-spacing:var(--plasma-cell-title-letter-spacing);-moz-letter-spacing:var(--plasma-cell-title-letter-spacing);-ms-letter-spacing:var(--plasma-cell-title-letter-spacing);letter-spacing:var(--plasma-cell-title-letter-spacing);}
|
|
19
|
+
|
|
20
|
+
.CellTextboxSubtitle_styles_n7i06q_s1bdz4u4__8e9f9a5a{color:var(--plasma-cell-subtitle-color);font-size:var(--plasma-cell-subtitle-font-size);font-weight:var(--plasma-cell-subtitle-font-weight);font-family:var(--plasma-cell-subtitle-font-family);font-style:var(--plasma-cell-subtitle-font-style);line-height:var(--plasma-cell-subtitle-line-height);-webkit-letter-spacing:var(--plasma-cell-subtitle-letter-spacing);-moz-letter-spacing:var(--plasma-cell-subtitle-letter-spacing);-ms-letter-spacing:var(--plasma-cell-subtitle-letter-spacing);letter-spacing:var(--plasma-cell-subtitle-letter-spacing);}
|
|
21
|
+
|
|
22
|
+
.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_cellStretchingFixed__a35afa10{width:var(--plasma-cell-width);}.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_cellStretchingFilled__a35afa10{width:100%;}.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_b1wikybr__a35afa10.Cell_styles_1lali49_cellStretchingAuto__a35afa10{width:auto;}
|
|
23
|
+
.Cell_styles_1lali49_c1e5qbb3__a35afa10{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:auto;-ms-flex:auto;flex:auto;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;gap:var(--plasma-cell-gap);height:auto;}
|
|
24
|
+
.Cell_styles_1lali49_cdgokyj__a35afa10{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:auto;}
|
|
25
|
+
.Cell_styles_1lali49_c1k87ec1__a35afa10{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:var(--c1k87ec1-0);-webkit-box-align:var(--c1k87ec1-0);-ms-flex-align:var(--c1k87ec1-0);align-items:var(--c1k87ec1-0);}
|
|
26
|
+
.Cell_styles_1lali49_c1spqh22__a35afa10{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:var(--c1spqh22-0);-webkit-box-align:var(--c1spqh22-0);-ms-flex-align:var(--c1spqh22-0);align-items:var(--c1spqh22-0);text-align:right;}
|
|
27
|
+
|
|
28
|
+
.base_pir0qf_b1sr9i7l__baa3f156{color:var(--plasma-cell-color);background-color:var(--plasma-cell-background-color);width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;gap:var(--plasma-cell-gap);}.base_pir0qf_b1sr9i7l__baa3f156:focus{outline:0 none;}
|
|
29
|
+
|
|
30
|
+
.CellTextbox_styles_rgpies_cz0uqdu__c842929b{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:var(--plasma-cell-textbox-gap);}
|
|
31
|
+
|
|
32
|
+
.Indicator_styles_v8giip_b5hgwnm__ffd4472f{border-radius:100%;}
|
|
33
|
+
|
|
34
|
+
.base_1rjb5ly_bu942ai__5ed616c0{background-color:var(--plasma-indicator-color);}
|
|
35
|
+
|
|
36
|
+
.base_7436cm_b17chi2r__254eb615{height:var(--plasma-indicator-size);width:var(--plasma-indicator-size);}
|
|
37
|
+
|
|
38
|
+
.IconRoot_7pl7ig_svvlqhf__32c458a1{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;width:var(--svvlqhf-0);height:var(--svvlqhf-0);-webkit-flex:0 0 var(--svvlqhf-0);-ms-flex:0 0 var(--svvlqhf-0);flex:0 0 var(--svvlqhf-0);}
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
.Item_styles_7nhjnm_swacibr__bb9b6d83{--plasma-cell-title-color:var(--text-primary);--plasma-cell-background-color:var(--surface-clear);--plasma-cell-padding:var(--plasma-combobox-cell-padding);--plasma-cell-padding-left-content:var(--plasma-combobox-cell-padding-left-content);--plasma-cell-padding-content:var(--plasma-combobox-cell-padding-content);--plasma-cell-padding-right-content:var(--plasma-combobox-cell-padding-right-content);--plasma-cell-textbox-gap:var(--plasma-combobox-cell-textbox-gap);--plasma-cell-gap:var(--plasma-combobox-cell-gap);--plasma-cell-title-font-family:var(--plasma-combobox-cell-title-font-family);--plasma-cell-title-font-size:var(--plasma-combobox-cell-title-font-size);--plasma-cell-title-font-style:var(--plasma-combobox-cell-title-font-style);--plasma-cell-title-font-weight:var(--plasma-combobox-cell-title-font-weight);--plasma-cell-title-letter-spacing:var(--plasma-combobox-cell-title-letter-spacing);--plasma-cell-title-line-height:var(--plasma-combobox-cell-title-line-height);width:100%;}
|
|
42
|
+
|
|
43
|
+
.Item_styles_7nhjnm_srzm47e__bb9b6d83{--plasma-checkbox-trigger-size:var(--plasma-combobox-checkbox-trigger-size);--plasma-checkbox-trigger-border-radius:var(--plasma-combobox-checkbox-trigger-border-radius);--plasma-checkbox-fill-color:var(--plasma-combobox-checkbox-fill-color);--plasma-checkbox-icon-color:var(--plasma-combobox-checkbox-icon-color);--plasma-checkbox-trigger-border-color:var(--plasma-combobox-checkbox-trigger-border-color);--plasma-checkbox-trigger-border-checked-color:var(--plasma-combobox-checkbox-trigger-border-checked-color);--plasma-checkbox-trigger-border-width:var(--plasma-combobox-checkbox-trigger-border-width);}
|
|
44
|
+
.Item_styles_7nhjnm_s192qkx1__bb9b6d83{--plasma-indicator-size:var(--plasma-combobox-indicator-size);--plasma-indicator-color:var(--plasma-combobox-item-icon-color);}
|
|
45
|
+
.Item_styles_7nhjnm_s1q9myss__bb9b6d83{width:var(--s1q9myss-0);height:var(--s1q9myss-0);}.Item_styles_7nhjnm_s1q9myss__bb9b6d83.Item_styles_7nhjnm_arrowInverse__bb9b6d83{-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);}
|
|
46
|
+
.Item_styles_7nhjnm_s10m1bkx__bb9b6d83{width:var(--s10m1bkx-0);height:var(--s10m1bkx-0);-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);}.Item_styles_7nhjnm_s10m1bkx__bb9b6d83.Item_styles_7nhjnm_arrowInverse__bb9b6d83{-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);}
|
|
47
|
+
.Item_styles_7nhjnm_s1r53w2d__bb9b6d83{width:var(--s1r53w2d-0);height:var(--s1r53w2d-0);}
|
|
48
|
+
.Item_styles_7nhjnm_d1v61vfm__bb9b6d83{line-height:0;color:var(--plasma-combobox-disclosure-icon-color);visibility:var(--d1v61vfm-0);}.Item_styles_7nhjnm_d1v61vfm__bb9b6d83:hover{color:var(--plasma-combobox-disclosure-icon-color-hover);}
|
|
49
|
+
.Item_styles_7nhjnm_i6hijvp__bb9b6d83{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-flex:none;-ms-flex:none;flex:none;width:var(--i6hijvp-0);height:var(--i6hijvp-0);line-height:0;color:var(--plasma-combobox-item-icon-color);}
|
|
50
|
+
.Item_styles_7nhjnm_s1j1q6dk__bb9b6d83{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-flex:1;-ms-flex:1;flex:1;}
|
|
51
|
+
.Item_styles_7nhjnm_w1ftsp23__bb9b6d83{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:var(--plasma-select-item-gap);min-height:var(--plasma-combobox-item-height);margin:0;box-sizing:content-box;padding:var(--w1ftsp23-0);font-family:var(--plasma-combobox-font-family);font-size:var(--plasma-combobox-font-size);font-style:var(--plasma-combobox-font-style);font-weight:var(--plasma-combobox-font-weight);-webkit-letter-spacing:var(--plasma-combobox-font-letter-spacing);-moz-letter-spacing:var(--plasma-combobox-font-letter-spacing);-ms-letter-spacing:var(--plasma-combobox-font-letter-spacing);letter-spacing:var(--plasma-combobox-font-letter-spacing);line-height:var(--plasma-combobox-font-line-height);background-color:var(--surface-clear);color:var(--text-primary);border-radius:calc(var(--plasma-combobox-border-radius) - 0.125rem - var(--plasma-select-dropdown-border-width,0rem));-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-clip:padding-box;position:relative;}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83:hover:not(.Item_styles_7nhjnm_dropdownItemIsDisabled__bb9b6d83){cursor:pointer;background-color:var(--plasma-combobox-item-background-hover);}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83.Item_styles_7nhjnm_dropdownItemIsActive__bb9b6d83{background-color:var(--plasma-combobox-item-background-hover);}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83.Item_styles_7nhjnm_dropdownItemIsDisabled__bb9b6d83{opacity:0.4;cursor:not-allowed;}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83:focus{outline:none;}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;display:block;box-sizing:content-box;border:0 solid transparent;border-radius:calc(var(--plasma-combobox-border-radius) - 0.125rem - var(--plasma-select-dropdown-border-width,0rem));-webkit-transition:none;transition:none;pointer-events:none;}.Item_styles_7nhjnm_w1ftsp23__bb9b6d83.Item_styles_7nhjnm_dropdownItemIsFocused__bb9b6d83:before{outline:none;box-shadow:inset 0 0 0 0.0625rem var(--surface-accent);}
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
.Item_styles_7nhjnm_omc64gp__bb9b6d83{width:calc(var(--omc64gp-0) * var(--plasma-select-item-tree-offset-width));-webkit-flex:none;-ms-flex:none;flex:none;margin-right:calc(var(--plasma-select-item-gap) * -1);}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { toConsumableArray as _toConsumableArray } from '../../../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
+
import React, { useContext, useRef } from 'react';
|
|
3
|
+
import { classes } from '../../../../../../Select/Select.tokens.js';
|
|
4
|
+
import { cx } from '../../../../../../../utils/index.js';
|
|
5
|
+
import { keyExists } from '../../../../reducers/treePathReducer.js';
|
|
6
|
+
import { Context } from '../../../../Combobox.context.js';
|
|
7
|
+
import { ItemWrapper, Wrapper, Offset, DisclosureIconWrapper, StyledArrowLeft, IconWrapper, StyledCheckboxWrapper, StyledCheckbox, StyledIndicator, StyledIconDone, StyledText, StyledWrapper, StyledCell, StyledArrowRight, ChildItems } from './Item.styles.js';
|
|
8
|
+
import { isArraysEqual } from '../../../../../../../utils/isArraysEqual.js';
|
|
9
|
+
import { useDidMountEffect } from '../../../../../../../hooks/useDidMountEffect.js';
|
|
10
|
+
import { sizeToIconSize } from '../../../../../../Select/utils/sizeToIconSize.js';
|
|
11
|
+
|
|
12
|
+
var _StyledIndicator, _StyledIndicator2;
|
|
13
|
+
var Item = function Item(_ref) {
|
|
14
|
+
var _valueToPathMap$get, _item$items;
|
|
15
|
+
var item = _ref.item,
|
|
16
|
+
pathToItem = _ref.pathToItem;
|
|
17
|
+
var label = item.label,
|
|
18
|
+
value = item.value,
|
|
19
|
+
disabled = item.disabled,
|
|
20
|
+
contentLeft = item.contentLeft,
|
|
21
|
+
contentRight = item.contentRight;
|
|
22
|
+
var isLeaf = !(item !== null && item !== void 0 && item.items);
|
|
23
|
+
var _useContext = useContext(Context),
|
|
24
|
+
checked = _useContext.checked,
|
|
25
|
+
multiple = _useContext.multiple,
|
|
26
|
+
size = _useContext.size,
|
|
27
|
+
variant = _useContext.variant,
|
|
28
|
+
renderItem = _useContext.renderItem,
|
|
29
|
+
_checkboxAppearance = _useContext._checkboxAppearance,
|
|
30
|
+
focusedPath = _useContext.focusedPath,
|
|
31
|
+
treePath = _useContext.treePath,
|
|
32
|
+
dispatchTreePath = _useContext.dispatchTreePath,
|
|
33
|
+
arrowPlacement = _useContext.arrowPlacement,
|
|
34
|
+
handleItemClick = _useContext.handleItemClick,
|
|
35
|
+
handleCheckboxChange = _useContext.handleCheckboxChange,
|
|
36
|
+
valueToPathMap = _useContext.valueToPathMap;
|
|
37
|
+
var ref = useRef(null);
|
|
38
|
+
var itemDisabled = disabled;
|
|
39
|
+
var disabledClassName = itemDisabled ? classes.dropdownItemIsDisabled : undefined;
|
|
40
|
+
var currentItemDepth = (((_valueToPathMap$get = valueToPathMap.get(item.value.toString())) === null || _valueToPathMap$get === void 0 ? void 0 : _valueToPathMap$get.length) || 0) - 1;
|
|
41
|
+
var isCurrentLevelOpened = keyExists(treePath, valueToPathMap.get(value.toString()) || []);
|
|
42
|
+
var withArrowInverse = isCurrentLevelOpened ? classes.arrowInverse : undefined;
|
|
43
|
+
var focusedClass = isArraysEqual(pathToItem, focusedPath) ? classes.dropdownItemIsFocused : undefined;
|
|
44
|
+
var handleClick = function handleClick(e) {
|
|
45
|
+
if (itemDisabled) return;
|
|
46
|
+
if (!isLeaf) {
|
|
47
|
+
dispatchTreePath({
|
|
48
|
+
type: 'toggled_level',
|
|
49
|
+
value: valueToPathMap.get(value.toString()) || []
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
if (handleItemClick) {
|
|
53
|
+
handleItemClick(item, e);
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
var handleChange = function handleChange(e) {
|
|
57
|
+
if (itemDisabled) return;
|
|
58
|
+
e.stopPropagation();
|
|
59
|
+
handleCheckboxChange(item);
|
|
60
|
+
};
|
|
61
|
+
useDidMountEffect(function () {
|
|
62
|
+
if (focusedClass && ref !== null && ref !== void 0 && ref.current) {
|
|
63
|
+
ref.current.scrollIntoView({
|
|
64
|
+
behavior: 'smooth',
|
|
65
|
+
block: 'center',
|
|
66
|
+
inline: 'center'
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
}, [focusedClass]);
|
|
70
|
+
return /*#__PURE__*/React.createElement(ItemWrapper, null, /*#__PURE__*/React.createElement(Wrapper, {
|
|
71
|
+
ref: ref,
|
|
72
|
+
className: cx(focusedClass, disabledClassName),
|
|
73
|
+
onClick: handleClick,
|
|
74
|
+
variant: variant,
|
|
75
|
+
role: "treeitem"
|
|
76
|
+
}, /*#__PURE__*/React.createElement(Offset, {
|
|
77
|
+
depth: currentItemDepth
|
|
78
|
+
}), arrowPlacement === 'left' && /*#__PURE__*/React.createElement(DisclosureIconWrapper, {
|
|
79
|
+
visibility: isLeaf ? 'hidden' : 'visible'
|
|
80
|
+
}, /*#__PURE__*/React.createElement(StyledArrowLeft, {
|
|
81
|
+
size: sizeToIconSize(size, variant),
|
|
82
|
+
color: "inherit",
|
|
83
|
+
className: withArrowInverse
|
|
84
|
+
})), multiple && /*#__PURE__*/React.createElement(IconWrapper, {
|
|
85
|
+
variant: variant
|
|
86
|
+
}, /*#__PURE__*/React.createElement(StyledCheckboxWrapper, {
|
|
87
|
+
onClick: function onClick(e) {
|
|
88
|
+
return e.stopPropagation();
|
|
89
|
+
}
|
|
90
|
+
}, /*#__PURE__*/React.createElement(StyledCheckbox, {
|
|
91
|
+
disabled: itemDisabled,
|
|
92
|
+
checked: Boolean(checked.get(item.value)),
|
|
93
|
+
indeterminate: checked.get(item.value) === 'indeterminate',
|
|
94
|
+
onChange: handleChange,
|
|
95
|
+
appearance: _checkboxAppearance !== null && _checkboxAppearance !== void 0 ? _checkboxAppearance : 'default'
|
|
96
|
+
}))), !multiple && arrowPlacement === 'right' && /*#__PURE__*/React.createElement(IconWrapper, {
|
|
97
|
+
variant: variant
|
|
98
|
+
}, checked.get(item.value) === 'dot' && (_StyledIndicator || (_StyledIndicator = /*#__PURE__*/React.createElement(StyledIndicator, {
|
|
99
|
+
size: "s",
|
|
100
|
+
view: "default"
|
|
101
|
+
}))), checked.get(item.value) === 'done' && /*#__PURE__*/React.createElement(StyledIconDone, {
|
|
102
|
+
size: sizeToIconSize(size, variant),
|
|
103
|
+
color: "inherit"
|
|
104
|
+
})), renderItem ? /*#__PURE__*/React.createElement(StyledText, null, renderItem(item)) : /*#__PURE__*/React.createElement(StyledWrapper, null, /*#__PURE__*/React.createElement(StyledCell, {
|
|
105
|
+
contentLeft: contentLeft,
|
|
106
|
+
contentRight: contentRight
|
|
107
|
+
// TODO: #1548
|
|
108
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
109
|
+
// @ts-ignore
|
|
110
|
+
,
|
|
111
|
+
title: /*#__PURE__*/React.createElement("span", null, label)
|
|
112
|
+
})), !multiple && arrowPlacement === 'left' && /*#__PURE__*/React.createElement(IconWrapper, {
|
|
113
|
+
variant: variant
|
|
114
|
+
}, checked.get(item.value) === 'dot' && (_StyledIndicator2 || (_StyledIndicator2 = /*#__PURE__*/React.createElement(StyledIndicator, {
|
|
115
|
+
size: "s",
|
|
116
|
+
view: "default"
|
|
117
|
+
}))), checked.get(item.value) === 'done' && /*#__PURE__*/React.createElement(StyledIconDone, {
|
|
118
|
+
size: sizeToIconSize(size, variant),
|
|
119
|
+
color: "inherit"
|
|
120
|
+
})), arrowPlacement === 'right' && /*#__PURE__*/React.createElement(DisclosureIconWrapper, {
|
|
121
|
+
visibility: isLeaf ? 'hidden' : 'visible'
|
|
122
|
+
}, /*#__PURE__*/React.createElement(StyledArrowRight, {
|
|
123
|
+
size: sizeToIconSize(size, variant),
|
|
124
|
+
color: "inherit",
|
|
125
|
+
className: withArrowInverse
|
|
126
|
+
}))), !isLeaf && isCurrentLevelOpened && /*#__PURE__*/React.createElement(ChildItems, null, (_item$items = item.items) === null || _item$items === void 0 ? void 0 : _item$items.map(function (item, index) {
|
|
127
|
+
return /*#__PURE__*/React.createElement(Item, {
|
|
128
|
+
item: item,
|
|
129
|
+
key: item.value,
|
|
130
|
+
pathToItem: [].concat(_toConsumableArray(pathToItem), [index])
|
|
131
|
+
});
|
|
132
|
+
})));
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
export { Item };
|
|
136
|
+
//# sourceMappingURL=Item.js.map
|