@ultraviolet/ui 3.12.2 → 3.13.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/dist/_virtual/{_@oxc-project_runtime@0.120.0 → _@oxc-project_runtime@0.122.0}/helpers/defineProperty.js +1 -1
- package/dist/_virtual/{_@oxc-project_runtime@0.120.0 → _@oxc-project_runtime@0.122.0}/helpers/objectSpread2.js +1 -1
- package/dist/_virtual/{_@oxc-project_runtime@0.120.0 → _@oxc-project_runtime@0.122.0}/helpers/objectWithoutProperties.js +1 -1
- package/dist/_virtual/{_@oxc-project_runtime@0.120.0 → _@oxc-project_runtime@0.122.0}/helpers/objectWithoutPropertiesLoose.js +1 -1
- package/dist/_virtual/{_@oxc-project_runtime@0.120.0 → _@oxc-project_runtime@0.122.0}/helpers/toPrimitive.js +1 -1
- package/dist/_virtual/{_@oxc-project_runtime@0.120.0 → _@oxc-project_runtime@0.122.0}/helpers/toPropertyKey.js +1 -1
- package/dist/_virtual/{_@oxc-project_runtime@0.120.0 → _@oxc-project_runtime@0.122.0}/helpers/typeof.js +1 -1
- package/dist/components/ActionBar/index.js +1 -1
- package/dist/components/Avatar/constants.d.ts +15 -15
- package/dist/components/Avatar/index.js +1 -1
- package/dist/components/Avatar/styles.css.js +0 -2
- package/dist/components/BarChart/index.js +1 -1
- package/dist/components/Breadcrumbs/components/Item.d.ts.map +1 -1
- package/dist/components/Breadcrumbs/components/Item.js +8 -6
- package/dist/components/Button/index.d.ts.map +1 -1
- package/dist/components/Carousel/Item.d.ts +9 -0
- package/dist/components/Carousel/Item.d.ts.map +1 -0
- package/dist/components/Carousel/Item.js +22 -0
- package/dist/components/Carousel/index.d.ts +6 -8
- package/dist/components/Carousel/index.d.ts.map +1 -1
- package/dist/components/Carousel/index.js +4 -11
- package/dist/components/Checkbox/index.d.ts.map +1 -1
- package/dist/components/Checkbox/index.js +13 -12
- package/dist/components/Checkbox/styles.css.js +0 -4
- package/dist/components/CheckboxGroup/Context.d.ts +9 -0
- package/dist/components/CheckboxGroup/Context.d.ts.map +1 -0
- package/dist/components/CheckboxGroup/Context.js +13 -0
- package/dist/components/CheckboxGroup/SingleCheckbox.d.ts +8 -0
- package/dist/components/CheckboxGroup/SingleCheckbox.d.ts.map +1 -0
- package/dist/components/CheckboxGroup/SingleCheckbox.js +46 -0
- package/dist/components/CheckboxGroup/index.d.ts +25 -9
- package/dist/components/CheckboxGroup/index.d.ts.map +1 -1
- package/dist/components/CheckboxGroup/index.js +7 -32
- package/dist/components/CopyButton/index.d.ts.map +1 -1
- package/dist/components/CopyButton/index.js +4 -3
- package/dist/components/DateInput/components/CalendarDaily.d.ts.map +1 -1
- package/dist/components/DateInput/components/CalendarDaily.js +5 -4
- package/dist/components/DateInput/components/CalendarMonthly.d.ts.map +1 -1
- package/dist/components/DateInput/components/CalendarMonthly.js +5 -4
- package/dist/components/DateInput/helpers.d.ts +5 -1
- package/dist/components/DateInput/helpers.d.ts.map +1 -1
- package/dist/components/DateInput/helpers.js +18 -9
- package/dist/components/DateInput/index.d.ts.map +1 -1
- package/dist/components/DateInput/index.js +2 -2
- package/dist/components/DateInput/styles.css.d.ts.map +1 -1
- package/dist/components/Expandable/AnimatedExpandable.d.ts +3 -0
- package/dist/components/Expandable/AnimatedExpandable.d.ts.map +1 -0
- package/dist/components/Expandable/AnimatedExpandable.js +95 -0
- package/dist/components/Expandable/NonAnimatedExpandable.d.ts +3 -0
- package/dist/components/Expandable/NonAnimatedExpandable.d.ts.map +1 -0
- package/dist/components/Expandable/NonAnimatedExpandable.js +22 -0
- package/dist/components/Expandable/constant.d.ts +2 -0
- package/dist/components/Expandable/constant.d.ts.map +1 -0
- package/dist/components/Expandable/constant.js +8 -0
- package/dist/components/Expandable/index.d.ts +1 -24
- package/dist/components/Expandable/index.d.ts.map +1 -1
- package/dist/components/Expandable/index.js +8 -94
- package/dist/components/Expandable/types.d.ts +23 -0
- package/dist/components/Expandable/types.d.ts.map +1 -0
- package/dist/components/ExpandableCard/index.d.ts.map +1 -1
- package/dist/components/FileInput/DropzoneContent.d.ts +9 -0
- package/dist/components/FileInput/DropzoneContent.d.ts.map +1 -0
- package/dist/components/FileInput/DropzoneContent.js +30 -0
- package/dist/components/FileInput/components/Button.js +2 -2
- package/dist/components/FileInput/components/List.d.ts.map +1 -1
- package/dist/components/FileInput/components/List.js +11 -9
- package/dist/components/FileInput/helpers.d.ts.map +1 -1
- package/dist/components/FileInput/index.d.ts.map +1 -1
- package/dist/components/FileInput/index.js +40 -66
- package/dist/components/InfiniteScroll/index.js +1 -1
- package/dist/components/Label/LabelContent.d.ts +3 -0
- package/dist/components/Label/LabelContent.d.ts.map +1 -0
- package/dist/components/Label/LabelContent.js +61 -0
- package/dist/components/Label/index.d.ts +1 -19
- package/dist/components/Label/index.d.ts.map +1 -1
- package/dist/components/Label/index.js +3 -47
- package/dist/components/Label/type.d.ts +19 -0
- package/dist/components/Label/type.d.ts.map +1 -0
- package/dist/components/LineChart/CustomLegend.d.ts.map +1 -1
- package/dist/components/LineChart/CustomLegend.js +4 -9
- package/dist/components/LineChart/LegendCell.d.ts +10 -0
- package/dist/components/LineChart/LegendCell.d.ts.map +1 -0
- package/dist/components/LineChart/LegendCell.js +23 -0
- package/dist/components/LineChart/index.js +1 -1
- package/dist/components/List/Cell.js +1 -1
- package/dist/components/List/ExpandButtonCell.d.ts +9 -0
- package/dist/components/List/ExpandButtonCell.d.ts.map +1 -0
- package/dist/components/List/ExpandButtonCell.js +44 -0
- package/dist/components/List/HeaderCell.d.ts.map +1 -1
- package/dist/components/List/HeaderCell.js +4 -8
- package/dist/components/List/ListContext.js +3 -3
- package/dist/components/List/Row.d.ts.map +1 -1
- package/dist/components/List/Row.js +21 -50
- package/dist/components/List/SelectRowCell.d.ts +8 -0
- package/dist/components/List/SelectRowCell.d.ts.map +1 -0
- package/dist/components/List/SelectRowCell.js +49 -0
- package/dist/components/List/SortIcon.d.ts +4 -0
- package/dist/components/List/SortIcon.d.ts.map +1 -0
- package/dist/components/List/SortIcon.js +19 -0
- package/dist/components/List/TableContainer.d.ts +5 -0
- package/dist/components/List/TableContainer.d.ts.map +1 -0
- package/dist/components/List/TableContainer.js +31 -0
- package/dist/components/List/index.d.ts.map +1 -1
- package/dist/components/List/index.js +4 -16
- package/dist/components/Loader/index.js +1 -1
- package/dist/components/Menu/MenuContent.d.ts.map +1 -1
- package/dist/components/Menu/MenuContent.js +28 -22
- package/dist/components/Menu/components/Item.d.ts.map +1 -1
- package/dist/components/Menu/components/Item.js +8 -6
- package/dist/components/Menu/index.js +2 -2
- package/dist/components/Modal/ModalContent.d.ts.map +1 -1
- package/dist/components/Modal/ModalContent.js +4 -4
- package/dist/components/Modal/components/Dialog.d.ts.map +1 -1
- package/dist/components/Modal/components/Dialog.js +14 -12
- package/dist/components/Notification/Notification.js +1 -1
- package/dist/components/NumberInput/components/Controls.d.ts +12 -0
- package/dist/components/NumberInput/components/Controls.d.ts.map +1 -0
- package/dist/components/NumberInput/components/Controls.js +78 -0
- package/dist/components/NumberInput/components/Unit.d.ts +8 -0
- package/dist/components/NumberInput/components/Unit.d.ts.map +1 -0
- package/dist/components/NumberInput/components/Unit.js +28 -0
- package/dist/components/NumberInput/index.d.ts.map +1 -1
- package/dist/components/NumberInput/index.js +33 -86
- package/dist/components/Pagination/PaginationButton.d.ts +11 -0
- package/dist/components/Pagination/PaginationButton.d.ts.map +1 -0
- package/dist/components/Pagination/PaginationButton.js +39 -0
- package/dist/components/Pagination/PaginationButtons.d.ts.map +1 -1
- package/dist/components/Pagination/PaginationButtons.js +4 -25
- package/dist/components/PieChart/index.d.ts.map +1 -1
- package/dist/components/PieChart/index.js +1 -1
- package/dist/components/Popover/ContentWrapper.d.ts +3 -0
- package/dist/components/Popover/ContentWrapper.d.ts.map +1 -0
- package/dist/components/Popover/ContentWrapper.js +49 -0
- package/dist/components/Popover/index.d.ts +6 -12
- package/dist/components/Popover/index.d.ts.map +1 -1
- package/dist/components/Popover/index.js +4 -37
- package/dist/components/Popover/types.d.ts +26 -0
- package/dist/components/Popover/types.d.ts.map +1 -0
- package/dist/components/Popup/helpers.d.ts.map +1 -1
- package/dist/components/Popup/helpers.js +124 -123
- package/dist/components/Popup/index.d.ts.map +1 -1
- package/dist/components/Popup/index.js +3 -2
- package/dist/components/Popup/styles.css.d.ts.map +1 -1
- package/dist/components/Popup/styles.css.js +3 -3
- package/dist/components/ProgressBar/index.d.ts.map +1 -1
- package/dist/components/ProgressBar/index.js +63 -60
- package/dist/components/ProgressBar/styles.css.js +0 -2
- package/dist/components/Radio/MarkedIcon.d.ts +2 -0
- package/dist/components/Radio/MarkedIcon.d.ts.map +1 -0
- package/dist/components/Radio/MarkedIcon.js +33 -0
- package/dist/components/Radio/index.d.ts.map +1 -1
- package/dist/components/Radio/index.js +3 -21
- package/dist/components/Radio/styles.css.js +3 -3
- package/dist/components/RadioGroup/Context.d.ts +9 -0
- package/dist/components/RadioGroup/Context.d.ts.map +1 -0
- package/dist/components/RadioGroup/Context.js +12 -0
- package/dist/components/RadioGroup/SingleRadio.d.ts +6 -0
- package/dist/components/RadioGroup/SingleRadio.d.ts.map +1 -0
- package/dist/components/RadioGroup/SingleRadio.js +40 -0
- package/dist/components/RadioGroup/index.d.ts +2 -4
- package/dist/components/RadioGroup/index.d.ts.map +1 -1
- package/dist/components/RadioGroup/index.js +6 -28
- package/dist/components/Row/index.js +1 -1
- package/dist/components/Row/styles.css.js +2 -2
- package/dist/components/SearchInput/index.d.ts.map +1 -1
- package/dist/components/SelectInput/SelectInputProvider.d.ts.map +1 -1
- package/dist/components/SelectInput/SelectInputProvider.js +8 -63
- package/dist/components/SelectInput/components/Dropdown/AddOption.d.ts +12 -0
- package/dist/components/SelectInput/components/Dropdown/AddOption.d.ts.map +1 -0
- package/dist/components/SelectInput/components/Dropdown/AddOption.js +48 -0
- package/dist/components/SelectInput/components/Dropdown/Content.d.ts +20 -0
- package/dist/components/SelectInput/components/Dropdown/Content.d.ts.map +1 -0
- package/dist/components/SelectInput/components/Dropdown/Content.js +217 -0
- package/dist/components/SelectInput/components/{Dropdown.d.ts → Dropdown/Dropdown.d.ts} +1 -17
- package/dist/components/SelectInput/components/Dropdown/Dropdown.d.ts.map +1 -0
- package/dist/components/SelectInput/components/Dropdown/Dropdown.js +218 -0
- package/dist/components/SelectInput/components/Dropdown/Group.d.ts +5 -0
- package/dist/components/SelectInput/components/Dropdown/Group.d.ts.map +1 -0
- package/dist/components/SelectInput/components/Dropdown/Group.js +79 -0
- package/dist/components/SelectInput/components/Dropdown/Item.d.ts +13 -0
- package/dist/components/SelectInput/components/Dropdown/Item.d.ts.map +1 -0
- package/dist/components/SelectInput/components/Dropdown/Item.js +87 -0
- package/dist/components/SelectInput/components/{DropdownOption.d.ts → Dropdown/Option.d.ts} +2 -2
- package/dist/components/SelectInput/components/Dropdown/Option.d.ts.map +1 -0
- package/dist/components/SelectInput/components/Dropdown/Option.js +139 -0
- package/dist/components/SelectInput/components/Dropdown/SearchBar.d.ts +10 -0
- package/dist/components/SelectInput/components/Dropdown/SearchBar.d.ts.map +1 -0
- package/dist/components/SelectInput/components/{SearchBarDropdown.js → Dropdown/SearchBar.js} +20 -24
- package/dist/components/SelectInput/components/Dropdown/SelectAll.d.ts +4 -0
- package/dist/components/SelectInput/components/Dropdown/SelectAll.d.ts.map +1 -0
- package/dist/components/SelectInput/components/Dropdown/SelectAll.js +84 -0
- package/dist/components/SelectInput/components/{dropdown.css.d.ts → Dropdown/dropdown.css.d.ts} +4 -2
- package/dist/components/SelectInput/components/Dropdown/dropdown.css.d.ts.map +1 -0
- package/dist/components/SelectInput/components/{dropdown.css.js → Dropdown/dropdown.css.js} +15 -13
- package/dist/components/SelectInput/components/Dropdown/dropdown.css.ts.vanilla.js +8 -0
- package/dist/components/SelectInput/components/Dropdown/index.d.ts +2 -0
- package/dist/components/SelectInput/components/Dropdown/index.d.ts.map +1 -0
- package/dist/components/SelectInput/components/Dropdown/index.js +11 -0
- package/dist/components/SelectInput/components/SelectBar/SelectBar.d.ts.map +1 -0
- package/dist/components/SelectInput/components/{SelectBar.js → SelectBar/SelectBar.js} +24 -125
- package/dist/components/SelectInput/components/SelectBar/Values.d.ts +20 -0
- package/dist/components/SelectInput/components/SelectBar/Values.d.ts.map +1 -0
- package/dist/components/SelectInput/components/SelectBar/Values.js +93 -0
- package/dist/components/SelectInput/components/SelectBar/index.d.ts +2 -0
- package/dist/components/SelectInput/components/SelectBar/index.d.ts.map +1 -0
- package/dist/components/SelectInput/components/SelectBar/index.js +11 -0
- package/dist/components/SelectInput/components/SelectBar/selectBar.css.d.ts.map +1 -0
- package/dist/components/SelectInput/components/{selectBar.css.js → SelectBar/selectBar.css.js} +19 -19
- package/dist/components/SelectInput/components/SelectBar/selectBar.css.ts.vanilla.js +8 -0
- package/dist/components/SelectInput/components/helpers.d.ts +30 -0
- package/dist/components/SelectInput/components/helpers.d.ts.map +1 -0
- package/dist/components/SelectInput/components/helpers.js +77 -0
- package/dist/components/SelectInput/components/index.d.ts +3 -0
- package/dist/components/SelectInput/components/index.d.ts.map +1 -0
- package/dist/components/SelectInput/components/index.js +15 -0
- package/dist/components/SelectInput/index.d.ts.map +1 -1
- package/dist/components/SelectInput/index.js +4 -4
- package/dist/components/SelectInput/reducerFonctions.d.ts +28 -0
- package/dist/components/SelectInput/reducerFonctions.d.ts.map +1 -0
- package/dist/components/SelectInput/reducerFonctions.js +76 -0
- package/dist/components/SelectInput/styles.css.d.ts +4 -2
- package/dist/components/SelectInput/styles.css.d.ts.map +1 -1
- package/dist/components/SelectInput/styles.css.js +52 -50
- package/dist/components/SelectableCard/MultiStateInput.js +1 -1
- package/dist/components/SelectableCard/SelectableCard.js +5 -4
- package/dist/components/SelectableCardGroup/Context.d.ts +11 -0
- package/dist/components/SelectableCardGroup/Context.d.ts.map +1 -0
- package/dist/components/SelectableCardGroup/Context.js +13 -0
- package/dist/components/SelectableCardGroup/SingleCard.d.ts +5 -0
- package/dist/components/SelectableCardGroup/SingleCard.d.ts.map +1 -0
- package/dist/components/SelectableCardGroup/SingleCard.js +42 -0
- package/dist/components/SelectableCardGroup/index.d.ts +2 -4
- package/dist/components/SelectableCardGroup/index.d.ts.map +1 -1
- package/dist/components/SelectableCardGroup/index.js +6 -30
- package/dist/components/SelectableCardOptionGroup/components/Option.js +1 -1
- package/dist/components/Skeleton/Blocks.d.ts.map +1 -1
- package/dist/components/Skeleton/List.d.ts.map +1 -1
- package/dist/components/Skeleton/List.js +8 -9
- package/dist/components/Skeleton/Slider.d.ts.map +1 -1
- package/dist/components/Skeleton/index.js +1 -2
- package/dist/components/Slider/components/SingleSlider.d.ts.map +1 -1
- package/dist/components/Slider/components/SingleSlider.js +1 -1
- package/dist/components/Snippet/CodeContent.d.ts +14 -0
- package/dist/components/Snippet/CodeContent.d.ts.map +1 -0
- package/dist/components/Snippet/CodeContent.js +36 -0
- package/dist/components/Snippet/index.d.ts +1 -1
- package/dist/components/Snippet/index.d.ts.map +1 -1
- package/dist/components/Snippet/index.js +6 -22
- package/dist/components/Stack/index.js +2 -2
- package/dist/components/Stack/styles.css.js +2 -2
- package/dist/components/StepList/Item.d.ts +17 -0
- package/dist/components/StepList/Item.d.ts.map +1 -0
- package/dist/components/StepList/Item.js +32 -0
- package/dist/components/StepList/index.d.ts +12 -15
- package/dist/components/StepList/index.d.ts.map +1 -1
- package/dist/components/StepList/index.js +4 -19
- package/dist/components/Stepper/Bullet.d.ts +7 -0
- package/dist/components/Stepper/Bullet.d.ts.map +1 -0
- package/dist/components/Stepper/Bullet.js +42 -0
- package/dist/components/Stepper/Step.d.ts.map +1 -1
- package/dist/components/Stepper/Step.js +8 -24
- package/dist/components/Stepper/index.js +1 -1
- package/dist/components/Table/Cell.js +1 -1
- package/dist/components/Table/HeaderCell.d.ts.map +1 -1
- package/dist/components/Table/HeaderCell.js +6 -12
- package/dist/components/Table/SortIcon.d.ts +4 -0
- package/dist/components/Table/SortIcon.d.ts.map +1 -0
- package/dist/components/Table/SortIcon.js +19 -0
- package/dist/components/Table/TableContainer.d.ts +5 -0
- package/dist/components/Table/TableContainer.d.ts.map +1 -0
- package/dist/components/Table/TableContainer.js +31 -0
- package/dist/components/Table/TableContext.d.ts.map +1 -1
- package/dist/components/Table/TableContext.js +2 -2
- package/dist/components/Table/index.d.ts +6 -6
- package/dist/components/Table/index.d.ts.map +1 -1
- package/dist/components/Table/index.js +6 -22
- package/dist/components/Table/styles.css.js +0 -2
- package/dist/components/Tabs/Tab.js +2 -2
- package/dist/components/Tabs/TabMenu.js +2 -2
- package/dist/components/Tabs/TabMenuItem.js +2 -2
- package/dist/components/Tabs/index.js +2 -2
- package/dist/components/Tag/TagInner.d.ts +5 -0
- package/dist/components/Tag/TagInner.d.ts.map +1 -0
- package/dist/components/Tag/TagInner.js +48 -0
- package/dist/components/Tag/index.d.ts +1 -31
- package/dist/components/Tag/index.d.ts.map +1 -1
- package/dist/components/Tag/index.js +7 -40
- package/dist/components/Tag/type.d.ts +31 -0
- package/dist/components/Tag/type.d.ts.map +1 -0
- package/dist/components/TagInput/index.js +1 -1
- package/dist/components/TagList/constant.d.ts +2 -0
- package/dist/components/TagList/constant.d.ts.map +1 -1
- package/dist/components/TagList/constant.js +3 -2
- package/dist/components/TagList/index.d.ts +1 -1
- package/dist/components/TagList/index.d.ts.map +1 -1
- package/dist/components/TagList/index.js +33 -27
- package/dist/components/TagList/styles.css.d.ts.map +1 -1
- package/dist/components/Text/index.js +1 -1
- package/dist/components/Text/style.css.js +0 -2
- package/dist/components/TextArea/Icon.d.ts +5 -0
- package/dist/components/TextArea/Icon.d.ts.map +1 -0
- package/dist/components/TextArea/Icon.js +19 -0
- package/dist/components/TextArea/Notice.d.ts +11 -0
- package/dist/components/TextArea/Notice.d.ts.map +1 -0
- package/dist/components/TextArea/Notice.js +41 -0
- package/dist/components/TextArea/constant.d.ts +2 -0
- package/dist/components/TextArea/constant.d.ts.map +1 -0
- package/dist/components/TextArea/constant.js +11 -0
- package/dist/components/TextArea/index.d.ts.map +1 -1
- package/dist/components/TextArea/index.js +29 -48
- package/dist/components/TextInput/BottomText.d.ts +3 -0
- package/dist/components/TextInput/BottomText.d.ts.map +1 -0
- package/dist/components/TextInput/BottomText.js +29 -0
- package/dist/components/TextInput/PrefixSuffix.d.ts +7 -0
- package/dist/components/TextInput/PrefixSuffix.d.ts.map +1 -0
- package/dist/components/TextInput/PrefixSuffix.js +30 -0
- package/dist/components/TextInput/RightIcon.d.ts +10 -0
- package/dist/components/TextInput/RightIcon.d.ts.map +1 -0
- package/dist/components/TextInput/RightIcon.js +62 -0
- package/dist/components/TextInput/ShowHidePassword.d.ts +7 -0
- package/dist/components/TextInput/ShowHidePassword.d.ts.map +1 -0
- package/dist/components/TextInput/ShowHidePassword.js +36 -0
- package/dist/components/TextInput/index.d.ts +5 -6
- package/dist/components/TextInput/index.d.ts.map +1 -1
- package/dist/components/TextInput/index.js +46 -106
- package/dist/components/TextInput/type.d.ts +25 -0
- package/dist/components/TextInput/type.d.ts.map +1 -0
- package/dist/components/TimeInput/RightIcon.d.ts +9 -0
- package/dist/components/TimeInput/RightIcon.d.ts.map +1 -0
- package/dist/components/TimeInput/RightIcon.js +36 -0
- package/dist/components/TimeInput/index.d.ts.map +1 -1
- package/dist/components/TimeInput/index.js +17 -29
- package/dist/components/Toaster/Toaster.js +1 -1
- package/dist/components/ToggleGroup/Context.d.ts +9 -0
- package/dist/components/ToggleGroup/Context.d.ts.map +1 -0
- package/dist/components/ToggleGroup/Context.js +13 -0
- package/dist/components/ToggleGroup/SingleToggle.d.ts +11 -0
- package/dist/components/ToggleGroup/SingleToggle.d.ts.map +1 -0
- package/dist/components/ToggleGroup/SingleToggle.js +37 -0
- package/dist/components/ToggleGroup/index.d.ts +2 -9
- package/dist/components/ToggleGroup/index.d.ts.map +1 -1
- package/dist/components/ToggleGroup/index.js +6 -25
- package/dist/components/TreeMapChart/index.js +1 -1
- package/dist/components/VerificationCode/index.js +2 -3
- package/dist/components/compositions/CodeEditor/components/CopyButton.d.ts +5 -0
- package/dist/components/compositions/CodeEditor/components/CopyButton.d.ts.map +1 -0
- package/dist/components/compositions/CodeEditor/components/CopyButton.js +24 -0
- package/dist/components/compositions/CodeEditor/components/Expandable.d.ts +8 -0
- package/dist/components/compositions/CodeEditor/components/Expandable.d.ts.map +1 -0
- package/dist/components/compositions/CodeEditor/components/Expandable.js +37 -0
- package/dist/components/compositions/CodeEditor/index.d.ts +4 -38
- package/dist/components/compositions/CodeEditor/index.d.ts.map +1 -1
- package/dist/components/compositions/CodeEditor/index.js +6 -33
- package/dist/components/compositions/CodeEditor/styles.css.js +2 -0
- package/dist/components/compositions/CodeEditor/type.d.ts +38 -0
- package/dist/components/compositions/CodeEditor/type.d.ts.map +1 -0
- package/dist/components/compositions/ContentCard/Content.d.ts +0 -10
- package/dist/components/compositions/ContentCard/Content.d.ts.map +1 -1
- package/dist/components/compositions/ContentCard/Content.js +2 -30
- package/dist/components/compositions/ContentCard/ImageContent.d.ts +7 -0
- package/dist/components/compositions/ContentCard/ImageContent.d.ts.map +1 -0
- package/dist/components/compositions/ContentCard/ImageContent.js +23 -0
- package/dist/components/compositions/ContentCard/LinkContent.d.ts +5 -0
- package/dist/components/compositions/ContentCard/LinkContent.d.ts.map +1 -0
- package/dist/components/compositions/ContentCard/LinkContent.js +30 -0
- package/dist/components/compositions/ContentCard/index.d.ts.map +1 -1
- package/dist/components/compositions/ContentCard/index.js +5 -1
- package/dist/components/compositions/ContentCardGroup/index.d.ts.map +1 -1
- package/dist/components/compositions/Conversation/components/Date.d.ts +6 -0
- package/dist/components/compositions/Conversation/components/Date.d.ts.map +1 -0
- package/dist/components/compositions/Conversation/components/Date.js +23 -0
- package/dist/components/compositions/Conversation/components/Message.d.ts +11 -0
- package/dist/components/compositions/Conversation/components/Message.d.ts.map +1 -0
- package/dist/components/compositions/Conversation/components/Message.js +28 -0
- package/dist/components/compositions/Conversation/components/MessageInfos.d.ts +7 -0
- package/dist/components/compositions/Conversation/components/MessageInfos.d.ts.map +1 -0
- package/dist/components/compositions/Conversation/components/MessageInfos.js +18 -0
- package/dist/components/compositions/Conversation/components/MessageTag.d.ts +6 -0
- package/dist/components/compositions/Conversation/components/MessageTag.d.ts.map +1 -0
- package/dist/components/compositions/Conversation/components/MessageTag.js +20 -0
- package/dist/components/compositions/Conversation/index.d.ts +7 -22
- package/dist/components/compositions/Conversation/index.d.ts.map +1 -1
- package/dist/components/compositions/Conversation/index.js +10 -41
- package/dist/components/compositions/EstimateCost/Components/Children.d.ts +3 -0
- package/dist/components/compositions/EstimateCost/Components/Children.d.ts.map +1 -0
- package/dist/components/compositions/EstimateCost/Components/Children.js +52 -0
- package/dist/components/compositions/EstimateCost/Components/{ContentComponents.d.ts → Description.d.ts} +2 -8
- package/dist/components/compositions/EstimateCost/Components/Description.d.ts.map +1 -0
- package/dist/components/compositions/EstimateCost/Components/Description.js +19 -0
- package/dist/components/compositions/EstimateCost/Components/Item.d.ts.map +1 -1
- package/dist/components/compositions/EstimateCost/Components/Item.js +1 -1
- package/dist/components/compositions/EstimateCost/Components/ItemLeftSide.js +1 -1
- package/dist/components/compositions/EstimateCost/Components/ItemPrice.d.ts.map +1 -1
- package/dist/components/compositions/EstimateCost/Components/LineThrough.js +2 -2
- package/dist/components/compositions/EstimateCost/Components/Title.d.ts +5 -0
- package/dist/components/compositions/EstimateCost/Components/Title.d.ts.map +1 -0
- package/dist/components/compositions/EstimateCost/Components/Title.js +23 -0
- package/dist/components/compositions/EstimateCost/Components/Total.d.ts +3 -0
- package/dist/components/compositions/EstimateCost/Components/Total.d.ts.map +1 -0
- package/dist/components/compositions/EstimateCost/Components/{ContentComponents.js → Total.js} +6 -54
- package/dist/components/compositions/EstimateCost/Components/Unit.js +1 -1
- package/dist/components/compositions/EstimateCost/Components/components.css.js +2 -3
- package/dist/components/compositions/EstimateCost/Ellipsis.d.ts +7 -0
- package/dist/components/compositions/EstimateCost/Ellipsis.d.ts.map +1 -0
- package/dist/components/compositions/EstimateCost/Ellipsis.js +37 -0
- package/dist/components/compositions/EstimateCost/EstimateCostContent.d.ts.map +1 -1
- package/dist/components/compositions/EstimateCost/EstimateCostContent.js +8 -4
- package/dist/components/compositions/EstimateCost/EstimateCostProvider.js +1 -1
- package/dist/components/compositions/EstimateCost/Image.d.ts +2 -0
- package/dist/components/compositions/EstimateCost/Image.d.ts.map +1 -0
- package/dist/components/compositions/EstimateCost/Image.js +21 -0
- package/dist/components/compositions/EstimateCost/index.d.ts +10 -11
- package/dist/components/compositions/EstimateCost/index.d.ts.map +1 -1
- package/dist/components/compositions/EstimateCost/index.js +5 -35
- package/dist/components/compositions/EstimateCost/types.d.ts +1 -1
- package/dist/components/compositions/EstimateCost/types.d.ts.map +1 -1
- package/dist/components/compositions/InfoTable/components/Cell.d.ts.map +1 -1
- package/dist/components/compositions/InfoTable/components/Cell.js +2 -1
- package/dist/components/compositions/InfoTable/components/Row.js +1 -1
- package/dist/components/compositions/InfoTable/styles.css.d.ts +1 -0
- package/dist/components/compositions/InfoTable/styles.css.d.ts.map +1 -1
- package/dist/components/compositions/InfoTable/styles.css.js +2 -1
- package/dist/components/compositions/Navigation/NavigationProvider.js +1 -1
- package/dist/components/compositions/Navigation/components/Group.js +1 -1
- package/dist/components/compositions/Navigation/components/Item/Badge.d.ts +5 -0
- package/dist/components/compositions/Navigation/components/Item/Badge.d.ts.map +1 -0
- package/dist/components/compositions/Navigation/components/Item/Badge.js +23 -0
- package/dist/components/compositions/Navigation/components/Item/Children.d.ts +5 -0
- package/dist/components/compositions/Navigation/components/Item/Children.d.ts.map +1 -0
- package/dist/components/compositions/Navigation/components/Item/Children.js +39 -0
- package/dist/components/compositions/Navigation/components/Item/Content.d.ts +3 -0
- package/dist/components/compositions/Navigation/components/Item/Content.d.ts.map +1 -0
- package/dist/components/compositions/Navigation/components/Item/Content.js +80 -0
- package/dist/components/compositions/Navigation/components/{Item.d.ts → Item/Item.d.ts} +2 -2
- package/dist/components/compositions/Navigation/components/Item/Item.d.ts.map +1 -0
- package/dist/components/compositions/Navigation/components/{Item.js → Item/Item.js} +35 -8
- package/dist/components/compositions/Navigation/components/{ItemExpanded.d.ts → Item/ItemExpanded.d.ts} +1 -1
- package/dist/components/compositions/Navigation/components/Item/ItemExpanded.d.ts.map +1 -0
- package/dist/components/compositions/Navigation/components/{ItemExpanded.js → Item/ItemExpanded.js} +16 -92
- package/dist/components/compositions/Navigation/components/Item/ItemProvider.d.ts.map +1 -0
- package/dist/components/compositions/Navigation/components/{ItemProvider.js → Item/ItemProvider.js} +2 -2
- package/dist/components/compositions/Navigation/components/{ItemFragments.d.ts → Item/PinnedButton.d.ts} +2 -5
- package/dist/components/compositions/Navigation/components/Item/PinnedButton.d.ts.map +1 -0
- package/dist/components/compositions/Navigation/components/{ItemFragments.js → Item/PinnedButton.js} +9 -19
- package/dist/components/compositions/Navigation/components/Menu/Menu.d.ts +3 -0
- package/dist/components/compositions/Navigation/components/Menu/Menu.d.ts.map +1 -0
- package/dist/components/compositions/Navigation/components/Menu/Menu.js +73 -0
- package/dist/components/compositions/Navigation/components/{ItemMenu.d.ts → Menu/MenuItem.d.ts} +2 -3
- package/dist/components/compositions/Navigation/components/Menu/MenuItem.d.ts.map +1 -0
- package/dist/components/compositions/Navigation/components/{ItemMenu.js → Menu/MenuItem.js} +16 -65
- package/dist/components/compositions/Navigation/components/Menu/NestedMenu.d.ts +3 -0
- package/dist/components/compositions/Navigation/components/Menu/NestedMenu.d.ts.map +1 -0
- package/dist/components/compositions/Navigation/components/Menu/NestedMenu.js +51 -0
- package/dist/components/compositions/Navigation/components/PinnedItems.d.ts.map +1 -1
- package/dist/components/compositions/Navigation/components/PinnedItems.js +2 -2
- package/dist/components/compositions/Navigation/components/ShowHide.d.ts.map +1 -1
- package/dist/components/compositions/Navigation/index.js +1 -1
- package/dist/components/compositions/OfferList/components/Row.d.ts +1 -1
- package/dist/components/compositions/OfferList/components/Row.d.ts.map +1 -1
- package/dist/components/compositions/OfferList/components/Row.js +13 -47
- package/dist/components/compositions/OfferList/components/SelectableCell.d.ts +21 -0
- package/dist/components/compositions/OfferList/components/SelectableCell.d.ts.map +1 -0
- package/dist/components/compositions/OfferList/components/SelectableCell.js +71 -0
- package/dist/components/compositions/OfferList/index.d.ts.map +1 -1
- package/dist/components/compositions/OptionSelector/styles.css.js +178 -2
- package/dist/components/compositions/OrderSummary/ScrollableContent.d.ts.map +1 -1
- package/dist/components/compositions/OrderSummary/ScrollableContent.js +6 -221
- package/dist/components/compositions/OrderSummary/components/Category.d.ts +5 -0
- package/dist/components/compositions/OrderSummary/components/Category.d.ts.map +1 -0
- package/dist/components/compositions/OrderSummary/components/Category.js +125 -0
- package/dist/components/compositions/OrderSummary/components/SubCategory.d.ts +5 -0
- package/dist/components/compositions/OrderSummary/components/SubCategory.d.ts.map +1 -0
- package/dist/components/compositions/OrderSummary/components/SubCategory.js +104 -0
- package/dist/components/compositions/OrderSummary/components/SubCategoryPrice.d.ts +5 -0
- package/dist/components/compositions/OrderSummary/components/SubCategoryPrice.d.ts.map +1 -0
- package/dist/components/compositions/OrderSummary/components/SubCategoryPrice.js +50 -0
- package/dist/components/compositions/OrderSummary/helpers.js +1 -1
- package/dist/components/compositions/OrderSummary/index.d.ts +4 -0
- package/dist/components/compositions/OrderSummary/index.d.ts.map +1 -1
- package/dist/components/compositions/Plans/index.d.ts +3 -0
- package/dist/components/compositions/Plans/index.d.ts.map +1 -1
- package/dist/components/compositions/SteppedListCard/styles.css.js +0 -2
- package/dist/components/index.js +5 -4
- package/dist/components/styles.js +20 -20
- package/dist/helpers/legend.d.ts +15 -15
- package/dist/helpers/nivoTheme.d.ts +15 -15
- package/dist/helpers/treeMap.d.ts +15 -15
- package/dist/index.js +9 -8
- package/dist/theme/ThemeProvider.d.ts +15 -15
- package/dist/theme/index.d.ts +42 -42
- package/dist/ui.css +1 -1
- package/package.json +12 -6
- package/dist/components/SelectInput/components/Dropdown.d.ts.map +0 -1
- package/dist/components/SelectInput/components/Dropdown.js +0 -741
- package/dist/components/SelectInput/components/DropdownOption.d.ts.map +0 -1
- package/dist/components/SelectInput/components/DropdownOption.js +0 -163
- package/dist/components/SelectInput/components/SearchBarDropdown.d.ts +0 -10
- package/dist/components/SelectInput/components/SearchBarDropdown.d.ts.map +0 -1
- package/dist/components/SelectInput/components/SelectBar.d.ts.map +0 -1
- package/dist/components/SelectInput/components/dropdown.css.d.ts.map +0 -1
- package/dist/components/SelectInput/components/dropdown.css.ts.vanilla.js +0 -8
- package/dist/components/SelectInput/components/selectBar.css.d.ts.map +0 -1
- package/dist/components/SelectInput/components/selectBar.css.ts.vanilla.js +0 -8
- package/dist/components/compositions/EstimateCost/Components/ContentComponents.d.ts.map +0 -1
- package/dist/components/compositions/Navigation/components/Item.d.ts.map +0 -1
- package/dist/components/compositions/Navigation/components/ItemExpanded.d.ts.map +0 -1
- package/dist/components/compositions/Navigation/components/ItemFragments.d.ts.map +0 -1
- package/dist/components/compositions/Navigation/components/ItemMenu.d.ts.map +0 -1
- package/dist/components/compositions/Navigation/components/ItemProvider.d.ts.map +0 -1
- /package/dist/components/SelectInput/components/{SelectBar.d.ts → SelectBar/SelectBar.d.ts} +0 -0
- /package/dist/components/SelectInput/components/{selectBar.css.d.ts → SelectBar/selectBar.css.d.ts} +0 -0
- /package/dist/components/compositions/Navigation/components/{ItemProvider.d.ts → Item/ItemProvider.d.ts} +0 -0
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { __esmMin, __name } from "../../../../_virtual/_rolldown/runtime.js";
|
|
3
|
+
import { Stack, init_Stack } from "../../../Stack/index.js";
|
|
4
|
+
import { Text, init_Text } from "../../../Text/index.js";
|
|
5
|
+
import { OPTION_SELECTOR, init_constants } from "../../constants.js";
|
|
6
|
+
import { init_SelectInputProvider, useSelectInput } from "../../SelectInputProvider.js";
|
|
7
|
+
import { init_styles_css, selectInputStyle } from "../../styles.css.js";
|
|
8
|
+
import { Skeleton, init_Skeleton } from "../../../Skeleton/index.js";
|
|
9
|
+
import { AddOption, init_AddOption } from "./AddOption.js";
|
|
10
|
+
import { Group, init_Group } from "./Group.js";
|
|
11
|
+
import { Item, init_Item } from "./Item.js";
|
|
12
|
+
import { SelectAll, init_SelectAll } from "./SelectAll.js";
|
|
13
|
+
import { useEffect, useMemo, useRef } from "react";
|
|
14
|
+
import { cn } from "@ultraviolet/utils";
|
|
15
|
+
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
16
|
+
import { PlusIcon } from "@ultraviolet/icons/PlusIcon";
|
|
17
|
+
|
|
18
|
+
//#region src/components/SelectInput/components/Dropdown/Content.tsx
|
|
19
|
+
var moveFocusDown, moveFocusUp, handleKeyDownSelect, CreateDropdown;
|
|
20
|
+
var init_Content = __esmMin(() => {
|
|
21
|
+
init_Skeleton();
|
|
22
|
+
init_Stack();
|
|
23
|
+
init_Text();
|
|
24
|
+
init_constants();
|
|
25
|
+
init_SelectInputProvider();
|
|
26
|
+
init_styles_css();
|
|
27
|
+
init_AddOption();
|
|
28
|
+
init_Group();
|
|
29
|
+
init_Item();
|
|
30
|
+
init_SelectAll();
|
|
31
|
+
moveFocusDown = () => {
|
|
32
|
+
const options = document.querySelectorAll(OPTION_SELECTOR);
|
|
33
|
+
const activeItem = document.activeElement;
|
|
34
|
+
if (options) for (let i = 0; i < (options === null || options === void 0 ? void 0 : options.length); i += 1) {
|
|
35
|
+
const listLength = options.length;
|
|
36
|
+
if (activeItem === options[i] && activeItem !== options[listLength - 1]) options[i + 1].focus();
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
moveFocusUp = () => {
|
|
40
|
+
const options = document.querySelectorAll(OPTION_SELECTOR);
|
|
41
|
+
const activeItem = document.activeElement;
|
|
42
|
+
if (options) {
|
|
43
|
+
for (let i = 0; i < options.length; i += 1) if (activeItem === options[i] && activeItem !== options[0]) options[i - 1].focus();
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
handleKeyDownSelect = (event) => {
|
|
47
|
+
if (event.key === "ArrowDown") {
|
|
48
|
+
event.preventDefault();
|
|
49
|
+
moveFocusDown();
|
|
50
|
+
}
|
|
51
|
+
if (event.key === "ArrowUp") {
|
|
52
|
+
event.preventDefault();
|
|
53
|
+
moveFocusUp();
|
|
54
|
+
}
|
|
55
|
+
if (event.key === " ") event.preventDefault();
|
|
56
|
+
};
|
|
57
|
+
CreateDropdown = ({ isEmpty, emptyState, descriptionDirection, loadMore, optionalInfoPlacement, defaultSearchValue, isLoading, groupEmptyState, groupError, addOption, searchable }) => {
|
|
58
|
+
const { displayedOptions, searchInput, size } = useSelectInput();
|
|
59
|
+
const focusedItemRef = useRef(null);
|
|
60
|
+
useEffect(() => {
|
|
61
|
+
if (defaultSearchValue && (focusedItemRef === null || focusedItemRef === void 0 ? void 0 : focusedItemRef.current)) focusedItemRef.current.focus();
|
|
62
|
+
}, [defaultSearchValue]);
|
|
63
|
+
const textVariant = useMemo(() => {
|
|
64
|
+
if (size === "large") return "body";
|
|
65
|
+
if (size === "medium") return "bodySmall";
|
|
66
|
+
return "caption";
|
|
67
|
+
}, [size]);
|
|
68
|
+
const textVariantSmall = size === "small" ? "captionStrong" : "bodySmallStrong";
|
|
69
|
+
const sizeVariantIcon = size === "small" ? "xsmall" : "small";
|
|
70
|
+
const computedEmptyState = emptyState !== null && emptyState !== void 0 ? emptyState : /* @__PURE__ */ jsx(Text, {
|
|
71
|
+
as: "p",
|
|
72
|
+
variant: size === "small" ? "bodySmallStrong" : "bodyStrong",
|
|
73
|
+
children: "No options"
|
|
74
|
+
});
|
|
75
|
+
const addOptionLabel = /* @__PURE__ */ jsxs(Stack, {
|
|
76
|
+
alignItems: "center",
|
|
77
|
+
direction: "row",
|
|
78
|
+
gap: "1",
|
|
79
|
+
children: [/* @__PURE__ */ jsx(PlusIcon, {
|
|
80
|
+
sentiment: "primary",
|
|
81
|
+
size: sizeVariantIcon
|
|
82
|
+
}), /* @__PURE__ */ jsxs(Text, {
|
|
83
|
+
as: "span",
|
|
84
|
+
sentiment: "primary",
|
|
85
|
+
variant: textVariantSmall,
|
|
86
|
+
children: [
|
|
87
|
+
addOption === null || addOption === void 0 ? void 0 : addOption.text,
|
|
88
|
+
" ",
|
|
89
|
+
searchInput
|
|
90
|
+
]
|
|
91
|
+
})]
|
|
92
|
+
});
|
|
93
|
+
if (isEmpty && !addOption) return /* @__PURE__ */ jsx(Stack, {
|
|
94
|
+
alignItems: "center",
|
|
95
|
+
className: selectInputStyle.dropdownEmptyState,
|
|
96
|
+
gap: 2,
|
|
97
|
+
children: computedEmptyState
|
|
98
|
+
});
|
|
99
|
+
if (isEmpty && addOption && searchable) return /* @__PURE__ */ jsx(AddOption, {
|
|
100
|
+
addOption,
|
|
101
|
+
isEmpty,
|
|
102
|
+
option: {
|
|
103
|
+
label: addOptionLabel,
|
|
104
|
+
searchText: searchInput,
|
|
105
|
+
value: `${addOption.text} ${searchInput}`
|
|
106
|
+
},
|
|
107
|
+
searchable,
|
|
108
|
+
textVariant
|
|
109
|
+
});
|
|
110
|
+
return Array.isArray(displayedOptions) ? /* @__PURE__ */ jsxs(Stack, {
|
|
111
|
+
className: cn(selectInputStyle.dropdownContainer, selectInputStyle.dropdownContainerUnGrouped),
|
|
112
|
+
gap: .25,
|
|
113
|
+
id: "select-dropdown",
|
|
114
|
+
onKeyDown: handleKeyDownSelect,
|
|
115
|
+
role: "listbox",
|
|
116
|
+
children: [
|
|
117
|
+
/* @__PURE__ */ jsx(AddOption, {
|
|
118
|
+
addOption,
|
|
119
|
+
option: {
|
|
120
|
+
label: addOptionLabel,
|
|
121
|
+
searchText: searchInput,
|
|
122
|
+
value: `${addOption === null || addOption === void 0 ? void 0 : addOption.text} ${searchInput}`
|
|
123
|
+
},
|
|
124
|
+
searchable,
|
|
125
|
+
textVariant
|
|
126
|
+
}),
|
|
127
|
+
/* @__PURE__ */ jsx(SelectAll, { textVariant }),
|
|
128
|
+
/* @__PURE__ */ jsxs(Stack, {
|
|
129
|
+
gap: .25,
|
|
130
|
+
id: "items",
|
|
131
|
+
children: [isLoading ? /* @__PURE__ */ jsx(Skeleton, { variant: "block" }) : displayedOptions.map((option, index) => /* @__PURE__ */ jsx(Item, {
|
|
132
|
+
defaultSearchValue,
|
|
133
|
+
descriptionDirection,
|
|
134
|
+
focusedItemRef,
|
|
135
|
+
indexOption: index,
|
|
136
|
+
option,
|
|
137
|
+
optionalInfoPlacement,
|
|
138
|
+
textVariant
|
|
139
|
+
}, option.value)), loadMore ? /* @__PURE__ */ jsx(Stack, {
|
|
140
|
+
className: selectInputStyle.dropdownLoadMore,
|
|
141
|
+
children: loadMore
|
|
142
|
+
}) : null]
|
|
143
|
+
})
|
|
144
|
+
]
|
|
145
|
+
}) : /* @__PURE__ */ jsxs(Stack, {
|
|
146
|
+
className: selectInputStyle.dropdownContainer,
|
|
147
|
+
"data-grouped": true,
|
|
148
|
+
id: "select-dropdown",
|
|
149
|
+
onKeyDown: handleKeyDownSelect,
|
|
150
|
+
role: "listbox",
|
|
151
|
+
children: [isLoading ? /* @__PURE__ */ jsx(Skeleton, { variant: "block" }) : /* @__PURE__ */ jsxs(Fragment$1, { children: [
|
|
152
|
+
/* @__PURE__ */ jsx(AddOption, {
|
|
153
|
+
addOption,
|
|
154
|
+
option: {
|
|
155
|
+
label: addOptionLabel,
|
|
156
|
+
searchText: searchInput,
|
|
157
|
+
value: `${addOption === null || addOption === void 0 ? void 0 : addOption.text} ${searchInput}`
|
|
158
|
+
},
|
|
159
|
+
searchable,
|
|
160
|
+
textVariant
|
|
161
|
+
}),
|
|
162
|
+
/* @__PURE__ */ jsx(SelectAll, { textVariant }),
|
|
163
|
+
Object.keys(displayedOptions).map((group, index) => {
|
|
164
|
+
var _groupEmptyState$grou;
|
|
165
|
+
var _groupError$group;
|
|
166
|
+
const hasElements = displayedOptions[group].length > 0;
|
|
167
|
+
const emptyStateGroup = (_groupEmptyState$grou = groupEmptyState === null || groupEmptyState === void 0 ? void 0 : groupEmptyState[group]) !== null && _groupEmptyState$grou !== void 0 ? _groupEmptyState$grou : null;
|
|
168
|
+
const errorGroup = (_groupError$group = groupError === null || groupError === void 0 ? void 0 : groupError[group]) !== null && _groupError$group !== void 0 ? _groupError$group : null;
|
|
169
|
+
return /* @__PURE__ */ jsxs(Stack, {
|
|
170
|
+
gap: .25,
|
|
171
|
+
children: [hasElements || emptyStateGroup ? /* @__PURE__ */ jsx(Group, {
|
|
172
|
+
group,
|
|
173
|
+
index
|
|
174
|
+
}) : null, /* @__PURE__ */ jsxs(Stack, {
|
|
175
|
+
gap: "0.25",
|
|
176
|
+
id: "items",
|
|
177
|
+
children: [
|
|
178
|
+
!hasElements && emptyStateGroup ? /* @__PURE__ */ jsx(Text, {
|
|
179
|
+
as: "span",
|
|
180
|
+
className: selectInputStyle.emptyStateGroupStyle,
|
|
181
|
+
prominence: "weak",
|
|
182
|
+
sentiment: "neutral",
|
|
183
|
+
variant: textVariant,
|
|
184
|
+
children: emptyStateGroup
|
|
185
|
+
}) : null,
|
|
186
|
+
errorGroup ? /* @__PURE__ */ jsx(Text, {
|
|
187
|
+
as: "span",
|
|
188
|
+
className: selectInputStyle.emptyStateGroupStyle,
|
|
189
|
+
sentiment: "danger",
|
|
190
|
+
variant: textVariant,
|
|
191
|
+
children: errorGroup
|
|
192
|
+
}) : null,
|
|
193
|
+
displayedOptions[group].map((option, indexOption) => errorGroup ? null : /* @__PURE__ */ jsx(Item, {
|
|
194
|
+
defaultSearchValue,
|
|
195
|
+
descriptionDirection,
|
|
196
|
+
focusedItemRef,
|
|
197
|
+
group,
|
|
198
|
+
indexOption,
|
|
199
|
+
option,
|
|
200
|
+
optionalInfoPlacement,
|
|
201
|
+
textVariant
|
|
202
|
+
}, option.value))
|
|
203
|
+
]
|
|
204
|
+
})]
|
|
205
|
+
}, group);
|
|
206
|
+
})
|
|
207
|
+
] }), loadMore ? /* @__PURE__ */ jsx(Stack, {
|
|
208
|
+
className: selectInputStyle.dropdownLoadMore,
|
|
209
|
+
children: loadMore
|
|
210
|
+
}) : null]
|
|
211
|
+
});
|
|
212
|
+
};
|
|
213
|
+
});
|
|
214
|
+
|
|
215
|
+
//#endregion
|
|
216
|
+
init_Content();
|
|
217
|
+
export { CreateDropdown, init_Content };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Popup } from '
|
|
1
|
+
import { Popup } from '../../../Popup';
|
|
2
2
|
import type { ComponentProps, ReactNode, RefObject } from 'react';
|
|
3
3
|
export type DropdownProps = {
|
|
4
4
|
id?: string;
|
|
@@ -22,21 +22,5 @@ export type DropdownProps = {
|
|
|
22
22
|
onClick: (searchText: string) => void;
|
|
23
23
|
};
|
|
24
24
|
};
|
|
25
|
-
export type CreateDropdownProps = {
|
|
26
|
-
isEmpty: boolean;
|
|
27
|
-
emptyState: ReactNode;
|
|
28
|
-
descriptionDirection: 'row' | 'column';
|
|
29
|
-
loadMore?: ReactNode;
|
|
30
|
-
optionalInfoPlacement: 'left' | 'right';
|
|
31
|
-
defaultSearchValue: string | null;
|
|
32
|
-
isLoading?: boolean;
|
|
33
|
-
groupError?: Record<string, ReactNode>;
|
|
34
|
-
groupEmptyState?: Record<string, ReactNode>;
|
|
35
|
-
addOption?: {
|
|
36
|
-
text: string;
|
|
37
|
-
onClick: (searchText: string) => void;
|
|
38
|
-
};
|
|
39
|
-
searchable?: boolean;
|
|
40
|
-
};
|
|
41
25
|
export declare const Dropdown: ({ children, emptyState, descriptionDirection, searchable, placeholder, footer, refSelect, loadMore, optionalInfoPlacement, isLoading, size, dropdownAlign, portalTarget, id, groupError, groupEmptyState, addOption, }: DropdownProps) => import("react/jsx-runtime").JSX.Element;
|
|
42
26
|
//# sourceMappingURL=Dropdown.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../../../src/components/SelectInput/components/Dropdown/Dropdown.tsx"],"names":[],"mappings":"AAeA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAWtC,OAAO,KAAK,EACV,cAAc,EAEd,SAAS,EACT,SAAS,EAEV,MAAM,OAAO,CAAA;AAEd,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,SAAS,CAAA;IACnB,UAAU,EAAE,SAAS,CAAA;IACrB,oBAAoB,EAAE,KAAK,GAAG,QAAQ,CAAA;IACtC,UAAU,EAAE,OAAO,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,CAAC,CAAC,aAAa,EAAE,MAAM,IAAI,KAAK,SAAS,CAAC,GAAG,SAAS,CAAA;IAC/D,SAAS,EAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAA;IAC3C,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,qBAAqB,EAAE,MAAM,GAAG,OAAO,CAAA;IACvC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;IAClC,aAAa,CAAC,EAAE,cAAc,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,CAAC,CAAA;IACrD,YAAY,CAAC,EAAE,cAAc,CAAC,OAAO,KAAK,CAAC,CAAC,cAAc,CAAC,CAAA;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAC3C,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,CAAA;CACpE,CAAA;AAiED,eAAO,MAAM,QAAQ,oRA4NpB,CAAA"}
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { __esmMin, __name } from "../../../../_virtual/_rolldown/runtime.js";
|
|
3
|
+
import { _objectSpread2, init_objectSpread2 } from "../../../../_virtual/_@oxc-project_runtime@0.122.0/helpers/objectSpread2.js";
|
|
4
|
+
import { Stack, init_Stack } from "../../../Stack/index.js";
|
|
5
|
+
import { Popup, init_Popup } from "../../../Popup/index.js";
|
|
6
|
+
import { ModalContext, init_ModalProvider } from "../../../Modal/ModalProvider.js";
|
|
7
|
+
import { INPUT_SIZE_HEIGHT, init_constants } from "../../constants.js";
|
|
8
|
+
import { init_SelectInputProvider, useSelectInput } from "../../SelectInputProvider.js";
|
|
9
|
+
import { init_styles_css, selectInputStyle } from "../../styles.css.js";
|
|
10
|
+
import { CreateDropdown, init_Content } from "./Content.js";
|
|
11
|
+
import { dropdownWidth, init_dropdown_css } from "./dropdown.css.js";
|
|
12
|
+
import { SearchBar, init_SearchBar } from "./SearchBar.js";
|
|
13
|
+
import { useCallback, useContext, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
|
|
14
|
+
import { useTheme } from "@ultraviolet/themes";
|
|
15
|
+
import { assignInlineVars } from "@vanilla-extract/dynamic";
|
|
16
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
17
|
+
|
|
18
|
+
//#region src/components/SelectInput/components/Dropdown/Dropdown.tsx
|
|
19
|
+
var NON_SEARCHABLE_KEYS, handleKeyDown, Dropdown;
|
|
20
|
+
var init_Dropdown = __esmMin(() => {
|
|
21
|
+
init_ModalProvider();
|
|
22
|
+
init_Popup();
|
|
23
|
+
init_Stack();
|
|
24
|
+
init_constants();
|
|
25
|
+
init_SelectInputProvider();
|
|
26
|
+
init_styles_css();
|
|
27
|
+
init_Content();
|
|
28
|
+
init_dropdown_css();
|
|
29
|
+
init_SearchBar();
|
|
30
|
+
init_objectSpread2();
|
|
31
|
+
NON_SEARCHABLE_KEYS = [
|
|
32
|
+
"Tab",
|
|
33
|
+
" ",
|
|
34
|
+
"Enter",
|
|
35
|
+
"CapsLock",
|
|
36
|
+
"Shift",
|
|
37
|
+
"ArrowDown",
|
|
38
|
+
"ArrowUp",
|
|
39
|
+
"ArrowLeft",
|
|
40
|
+
"ArrowRight",
|
|
41
|
+
"Escape"
|
|
42
|
+
];
|
|
43
|
+
handleKeyDown = (event, ref, options, searchBarActive, setSearch, setDefaultSearch, search) => {
|
|
44
|
+
var _document$activeEleme;
|
|
45
|
+
if (ref.current && !searchBarActive && !NON_SEARCHABLE_KEYS.includes(event.key) && ((_document$activeEleme = document.activeElement) === null || _document$activeEleme === void 0 ? void 0 : _document$activeEleme.ariaLabel) !== "search-bar") {
|
|
46
|
+
const currentSearch = search + event.key;
|
|
47
|
+
setSearch(currentSearch);
|
|
48
|
+
ref.current.focus();
|
|
49
|
+
if (Array.isArray(options)) {
|
|
50
|
+
const closestOption = [...options].find((option) => option.searchText ? option.searchText.toLocaleLowerCase().startsWith(currentSearch) : option.value.toLocaleLowerCase().startsWith(currentSearch));
|
|
51
|
+
if (closestOption) {
|
|
52
|
+
var _closestOption$search;
|
|
53
|
+
setDefaultSearch((_closestOption$search = closestOption.searchText) !== null && _closestOption$search !== void 0 ? _closestOption$search : closestOption.value);
|
|
54
|
+
} else setDefaultSearch(null);
|
|
55
|
+
} else {
|
|
56
|
+
const closestOptions = _objectSpread2({}, options);
|
|
57
|
+
Object.keys(closestOptions).map((group) => {
|
|
58
|
+
closestOptions[group] = closestOptions[group].filter((option) => option.searchText ? option.searchText.toLocaleLowerCase().startsWith(currentSearch) : option.value.toLocaleLowerCase().startsWith(currentSearch));
|
|
59
|
+
return null;
|
|
60
|
+
});
|
|
61
|
+
const closestOption = closestOptions[Object.keys(closestOptions)[0]][0];
|
|
62
|
+
if (closestOption) {
|
|
63
|
+
var _closestOption$search2;
|
|
64
|
+
setDefaultSearch((_closestOption$search2 = closestOption.searchText) !== null && _closestOption$search2 !== void 0 ? _closestOption$search2 : closestOption.value);
|
|
65
|
+
} else setDefaultSearch(null);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
Dropdown = ({ children, emptyState, descriptionDirection, searchable, placeholder, footer, refSelect, loadMore, optionalInfoPlacement, isLoading, size, dropdownAlign, portalTarget, id, groupError, groupEmptyState, addOption }) => {
|
|
70
|
+
var _refSelect$current$of;
|
|
71
|
+
var _refSelect$current;
|
|
72
|
+
var _refSelect$current2;
|
|
73
|
+
var _refSelect$current3;
|
|
74
|
+
const { setIsDropdownVisible, isDropdownVisible, onSearch, searchInput, options, displayedOptions, numberOfOptions } = useSelectInput();
|
|
75
|
+
const theme = useTheme();
|
|
76
|
+
const [searchBarActive, setSearchBarActive] = useState(false);
|
|
77
|
+
const [defaultSearchValue, setDefaultSearch] = useState(null);
|
|
78
|
+
const ref = useRef(null);
|
|
79
|
+
const [search, setSearch] = useState("");
|
|
80
|
+
const [maxWidth, setWidth] = useState((_refSelect$current$of = (_refSelect$current = refSelect.current) === null || _refSelect$current === void 0 ? void 0 : _refSelect$current.offsetWidth) !== null && _refSelect$current$of !== void 0 ? _refSelect$current$of : "100%");
|
|
81
|
+
const modalContext = useContext(ModalContext);
|
|
82
|
+
const resizeDropdown = useCallback(() => {
|
|
83
|
+
if (refSelect.current && refSelect.current.getBoundingClientRect().width > 0 && refSelect.current.getBoundingClientRect().width !== maxWidth) setWidth(refSelect.current.getBoundingClientRect().width);
|
|
84
|
+
}, [refSelect, maxWidth]);
|
|
85
|
+
useLayoutEffect(() => {
|
|
86
|
+
if (refSelect.current && isDropdownVisible) {
|
|
87
|
+
const overflow = refSelect.current.getBoundingClientRect().bottom + 256 + Number(theme.sizing[INPUT_SIZE_HEIGHT[size]].replace("rem", "")) * 16 + Number.parseInt(theme.space["5"], 10) - window.innerHeight + 32;
|
|
88
|
+
if (overflow > 0 && modalContext) {
|
|
89
|
+
const currentModal = modalContext.openedModals[0];
|
|
90
|
+
const modalElement = currentModal === null || currentModal === void 0 ? void 0 : currentModal.ref.current;
|
|
91
|
+
if (modalElement) {
|
|
92
|
+
const parentElement = modalElement.parentNode;
|
|
93
|
+
if (parentElement instanceof HTMLElement) parentElement.scrollBy({
|
|
94
|
+
behavior: "smooth",
|
|
95
|
+
top: overflow
|
|
96
|
+
});
|
|
97
|
+
else modalElement.scrollBy({
|
|
98
|
+
behavior: "smooth",
|
|
99
|
+
top: overflow
|
|
100
|
+
});
|
|
101
|
+
} else window.scrollBy({
|
|
102
|
+
behavior: "smooth",
|
|
103
|
+
top: overflow
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}, [
|
|
108
|
+
isDropdownVisible,
|
|
109
|
+
refSelect,
|
|
110
|
+
size,
|
|
111
|
+
modalContext,
|
|
112
|
+
theme,
|
|
113
|
+
resizeDropdown
|
|
114
|
+
]);
|
|
115
|
+
useEffect(() => {
|
|
116
|
+
resizeDropdown();
|
|
117
|
+
window.addEventListener("resize", resizeDropdown);
|
|
118
|
+
return () => window.removeEventListener("resize", resizeDropdown);
|
|
119
|
+
}, [resizeDropdown, (_refSelect$current2 = refSelect.current) === null || _refSelect$current2 === void 0 ? void 0 : _refSelect$current2.offsetWidth]);
|
|
120
|
+
useEffect(() => {
|
|
121
|
+
if (!searchInput) onSearch(options);
|
|
122
|
+
}, [
|
|
123
|
+
onSearch,
|
|
124
|
+
options,
|
|
125
|
+
searchInput
|
|
126
|
+
]);
|
|
127
|
+
useEffect(() => {
|
|
128
|
+
if (!isDropdownVisible) {
|
|
129
|
+
setDefaultSearch(null);
|
|
130
|
+
setSearch("");
|
|
131
|
+
}
|
|
132
|
+
const eventKeydown = (event) => handleKeyDown(event, ref, options, searchBarActive, setSearch, setDefaultSearch, search);
|
|
133
|
+
if (!searchable) document.addEventListener("keydown", eventKeydown);
|
|
134
|
+
return () => {
|
|
135
|
+
if (!searchable) document.removeEventListener("keydown", eventKeydown);
|
|
136
|
+
};
|
|
137
|
+
}, [
|
|
138
|
+
isDropdownVisible,
|
|
139
|
+
searchBarActive,
|
|
140
|
+
options,
|
|
141
|
+
onSearch,
|
|
142
|
+
search,
|
|
143
|
+
refSelect,
|
|
144
|
+
setDefaultSearch,
|
|
145
|
+
setIsDropdownVisible,
|
|
146
|
+
searchable
|
|
147
|
+
]);
|
|
148
|
+
const isEmpty = useMemo(() => {
|
|
149
|
+
if (numberOfOptions === 0) return true;
|
|
150
|
+
if (Array.isArray(displayedOptions)) return displayedOptions.length === 0;
|
|
151
|
+
const groups = Object.keys(displayedOptions);
|
|
152
|
+
for (const group of groups) if (displayedOptions[group].length > 0) return false;
|
|
153
|
+
return true;
|
|
154
|
+
}, [displayedOptions, numberOfOptions]);
|
|
155
|
+
const computedFooter = useMemo(() => {
|
|
156
|
+
if (footer && !isEmpty) {
|
|
157
|
+
if (typeof footer === "function") return /* @__PURE__ */ jsx("div", {
|
|
158
|
+
className: selectInputStyle.footer,
|
|
159
|
+
children: footer(() => setIsDropdownVisible(false))
|
|
160
|
+
});
|
|
161
|
+
return /* @__PURE__ */ jsx("div", {
|
|
162
|
+
className: selectInputStyle.footer,
|
|
163
|
+
children: footer
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
return null;
|
|
167
|
+
}, [
|
|
168
|
+
isEmpty,
|
|
169
|
+
footer,
|
|
170
|
+
setIsDropdownVisible
|
|
171
|
+
]);
|
|
172
|
+
return /* @__PURE__ */ jsx(Popup, {
|
|
173
|
+
align: dropdownAlign !== null && dropdownAlign !== void 0 ? dropdownAlign : "start",
|
|
174
|
+
className: selectInputStyle.dropdown,
|
|
175
|
+
containerFullWidth: true,
|
|
176
|
+
debounceDelay: 0,
|
|
177
|
+
disableAnimation: true,
|
|
178
|
+
hasArrow: false,
|
|
179
|
+
hideOnClickOutside: true,
|
|
180
|
+
id,
|
|
181
|
+
maxWidth: maxWidth !== null && maxWidth !== void 0 ? maxWidth : (_refSelect$current3 = refSelect.current) === null || _refSelect$current3 === void 0 ? void 0 : _refSelect$current3.offsetWidth,
|
|
182
|
+
onClose: () => setIsDropdownVisible(false),
|
|
183
|
+
placement: "bottom",
|
|
184
|
+
portalTarget,
|
|
185
|
+
ref,
|
|
186
|
+
role: "dialog",
|
|
187
|
+
style: assignInlineVars({ [dropdownWidth]: typeof maxWidth === "number" ? `${maxWidth}px` : maxWidth }),
|
|
188
|
+
tabIndex: -1,
|
|
189
|
+
text: /* @__PURE__ */ jsxs(Stack, { children: [
|
|
190
|
+
searchable && !isLoading && (numberOfOptions >= 6 || addOption) ? /* @__PURE__ */ jsx(SearchBar, {
|
|
191
|
+
displayedOptions,
|
|
192
|
+
placeholder,
|
|
193
|
+
setSearchBarActive
|
|
194
|
+
}) : null,
|
|
195
|
+
/* @__PURE__ */ jsx(CreateDropdown, {
|
|
196
|
+
addOption,
|
|
197
|
+
defaultSearchValue,
|
|
198
|
+
descriptionDirection,
|
|
199
|
+
emptyState,
|
|
200
|
+
groupEmptyState,
|
|
201
|
+
groupError,
|
|
202
|
+
isEmpty,
|
|
203
|
+
isLoading,
|
|
204
|
+
loadMore,
|
|
205
|
+
optionalInfoPlacement,
|
|
206
|
+
searchable
|
|
207
|
+
}),
|
|
208
|
+
computedFooter
|
|
209
|
+
] }),
|
|
210
|
+
visible: isDropdownVisible,
|
|
211
|
+
children
|
|
212
|
+
});
|
|
213
|
+
};
|
|
214
|
+
});
|
|
215
|
+
|
|
216
|
+
//#endregion
|
|
217
|
+
init_Dropdown();
|
|
218
|
+
export { Dropdown, init_Dropdown };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Group.d.ts","sourceRoot":"","sources":["../../../../../src/components/SelectInput/components/Dropdown/Group.tsx"],"names":[],"mappings":"AAOA,eAAO,MAAM,KAAK;;;6CAgGjB,CAAA"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { __esmMin, __name } from "../../../../_virtual/_rolldown/runtime.js";
|
|
2
|
+
import { Text, init_Text } from "../../../Text/index.js";
|
|
3
|
+
import { init_SelectInputProvider, useSelectInput } from "../../SelectInputProvider.js";
|
|
4
|
+
import { init_styles_css, selectInputStyle } from "../../styles.css.js";
|
|
5
|
+
import { Checkbox, init_Checkbox } from "../../../Checkbox/index.js";
|
|
6
|
+
import { cn } from "@ultraviolet/utils";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
|
|
9
|
+
//#region src/components/SelectInput/components/Dropdown/Group.tsx
|
|
10
|
+
var Group;
|
|
11
|
+
var init_Group = __esmMin(() => {
|
|
12
|
+
init_Checkbox();
|
|
13
|
+
init_Text();
|
|
14
|
+
init_SelectInputProvider();
|
|
15
|
+
init_styles_css();
|
|
16
|
+
Group = ({ group, index }) => {
|
|
17
|
+
const { selectAllGroup, selectedData, size, setSelectedData, multiselect, options, onChange } = useSelectInput();
|
|
18
|
+
const handleSelectGroup = () => {
|
|
19
|
+
if (multiselect) {
|
|
20
|
+
setSelectedData({
|
|
21
|
+
selectedGroup: group,
|
|
22
|
+
type: "selectGroup"
|
|
23
|
+
});
|
|
24
|
+
if (!Array.isArray(options)) if (selectedData.selectedGroups.includes(group)) {
|
|
25
|
+
const newSelectedValues = [...selectedData.selectedValues].filter((selectedValue) => !options[group].find((option) => option.value === selectedValue));
|
|
26
|
+
onChange === null || onChange === void 0 || onChange(newSelectedValues);
|
|
27
|
+
} else {
|
|
28
|
+
const newSelectedValues = [...selectedData.selectedValues];
|
|
29
|
+
options[group].map((option) => newSelectedValues.includes(option.value) || option.disabled ? null : newSelectedValues.push(option.value));
|
|
30
|
+
onChange === null || onChange === void 0 || onChange(newSelectedValues);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
return /* @__PURE__ */ jsx("div", {
|
|
35
|
+
className: selectInputStyle.dropdownGroupWrapper,
|
|
36
|
+
id: selectAllGroup ? "items" : void 0,
|
|
37
|
+
children: group ? /* @__PURE__ */ jsx("button", {
|
|
38
|
+
className: cn(selectAllGroup ? selectInputStyle.dropdownGroupSelectable({ size }) : "", selectInputStyle.dropdownGroup),
|
|
39
|
+
"data-selectgroup": selectAllGroup,
|
|
40
|
+
"data-testid": `group-${index}`,
|
|
41
|
+
onClick: () => selectAllGroup ? handleSelectGroup() : null,
|
|
42
|
+
onKeyDown: (event) => {
|
|
43
|
+
if ([" ", "Enter"].includes(event.key)) {
|
|
44
|
+
event.preventDefault();
|
|
45
|
+
handleSelectGroup();
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
tabIndex: selectAllGroup ? 0 : -1,
|
|
49
|
+
type: "button",
|
|
50
|
+
children: selectAllGroup ? /* @__PURE__ */ jsx(Checkbox, {
|
|
51
|
+
checked: selectedData.selectedGroups.includes(group),
|
|
52
|
+
className: selectInputStyle.dropdownCheckbox,
|
|
53
|
+
"data-testid": "select-group",
|
|
54
|
+
disabled: false,
|
|
55
|
+
onChange: () => selectAllGroup ? handleSelectGroup() : null,
|
|
56
|
+
tabIndex: -1,
|
|
57
|
+
value: group,
|
|
58
|
+
children: /* @__PURE__ */ jsx(Text, {
|
|
59
|
+
as: "span",
|
|
60
|
+
placement: "left",
|
|
61
|
+
sentiment: "neutral",
|
|
62
|
+
variant: size === "small" ? "captionSmall" : "caption",
|
|
63
|
+
children: group.toUpperCase()
|
|
64
|
+
})
|
|
65
|
+
}) : /* @__PURE__ */ jsx(Text, {
|
|
66
|
+
as: "span",
|
|
67
|
+
placement: "left",
|
|
68
|
+
sentiment: "neutral",
|
|
69
|
+
variant: size === "small" ? "captionSmall" : "caption",
|
|
70
|
+
children: group.toUpperCase()
|
|
71
|
+
})
|
|
72
|
+
}, group) : null
|
|
73
|
+
});
|
|
74
|
+
};
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
//#endregion
|
|
78
|
+
init_Group();
|
|
79
|
+
export { Group, init_Group };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { OptionType } from '../../types';
|
|
2
|
+
import type { RefObject } from 'react';
|
|
3
|
+
export declare const Item: ({ option, indexOption, group, defaultSearchValue, focusedItemRef, descriptionDirection, textVariant, optionalInfoPlacement, }: {
|
|
4
|
+
option: OptionType;
|
|
5
|
+
indexOption: number;
|
|
6
|
+
group?: string | undefined;
|
|
7
|
+
defaultSearchValue: string | null;
|
|
8
|
+
focusedItemRef: RefObject<HTMLDivElement | null>;
|
|
9
|
+
descriptionDirection: "column" | "row";
|
|
10
|
+
textVariant: "body" | "bodySmall" | "caption";
|
|
11
|
+
optionalInfoPlacement: "left" | "right";
|
|
12
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
//# sourceMappingURL=Item.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Item.d.ts","sourceRoot":"","sources":["../../../../../src/components/SelectInput/components/Dropdown/Item.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,KAAK,EAA0C,SAAS,EAAE,MAAM,OAAO,CAAA;AAE9E,eAAO,MAAM,IAAI;;;;;;;;;6CA0IhB,CAAA"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { __esmMin, __name } from "../../../../_virtual/_rolldown/runtime.js";
|
|
2
|
+
import { init_SelectInputProvider, useSelectInput } from "../../SelectInputProvider.js";
|
|
3
|
+
import { init_styles_css, selectInputStyle } from "../../styles.css.js";
|
|
4
|
+
import { DisplayOption, init_Option } from "./Option.js";
|
|
5
|
+
import { Checkbox, init_Checkbox } from "../../../Checkbox/index.js";
|
|
6
|
+
import { cn } from "@ultraviolet/utils";
|
|
7
|
+
import { jsx } from "react/jsx-runtime";
|
|
8
|
+
|
|
9
|
+
//#region src/components/SelectInput/components/Dropdown/Item.tsx
|
|
10
|
+
var Item;
|
|
11
|
+
var init_Item = __esmMin(() => {
|
|
12
|
+
init_Checkbox();
|
|
13
|
+
init_SelectInputProvider();
|
|
14
|
+
init_styles_css();
|
|
15
|
+
init_Option();
|
|
16
|
+
Item = ({ option, indexOption, group, defaultSearchValue, focusedItemRef, descriptionDirection, textVariant, optionalInfoPlacement }) => {
|
|
17
|
+
const { setIsDropdownVisible, onChange, multiselect, setSelectedData, selectedData, size } = useSelectInput();
|
|
18
|
+
const handleClick = ({ clickedOption, event }) => {
|
|
19
|
+
event.stopPropagation();
|
|
20
|
+
setSelectedData({
|
|
21
|
+
clickedOption,
|
|
22
|
+
group,
|
|
23
|
+
type: "selectOption"
|
|
24
|
+
});
|
|
25
|
+
if (multiselect) if (selectedData.selectedValues.includes(clickedOption.value)) onChange === null || onChange === void 0 || onChange(selectedData.selectedValues.filter((value) => value !== clickedOption.value));
|
|
26
|
+
else onChange === null || onChange === void 0 || onChange([...selectedData.selectedValues, clickedOption.value]);
|
|
27
|
+
else onChange === null || onChange === void 0 || onChange(clickedOption.value);
|
|
28
|
+
setIsDropdownVisible(multiselect);
|
|
29
|
+
};
|
|
30
|
+
return /* @__PURE__ */ jsx("div", {
|
|
31
|
+
"aria-disabled": !!option.disabled,
|
|
32
|
+
"aria-label": option.value,
|
|
33
|
+
"aria-selected": selectedData.selectedValues.includes(option.value) && !option.disabled,
|
|
34
|
+
className: cn(selectInputStyle.dropdownItem({
|
|
35
|
+
disabled: !!option.disabled,
|
|
36
|
+
size,
|
|
37
|
+
selected: selectedData.selectedValues.includes(option.value) && !option.disabled
|
|
38
|
+
})),
|
|
39
|
+
"data-testid": `option-${option.value}`,
|
|
40
|
+
id: `option-${indexOption}`,
|
|
41
|
+
onClick: (event) => {
|
|
42
|
+
if (!option.disabled) handleClick({
|
|
43
|
+
clickedOption: option,
|
|
44
|
+
event
|
|
45
|
+
});
|
|
46
|
+
},
|
|
47
|
+
onKeyDown: (event) => {
|
|
48
|
+
if ([" ", "Enter"].includes(event.key)) handleClick({
|
|
49
|
+
clickedOption: option,
|
|
50
|
+
event
|
|
51
|
+
});
|
|
52
|
+
},
|
|
53
|
+
ref: option.value === defaultSearchValue || option.searchText === defaultSearchValue ? focusedItemRef : null,
|
|
54
|
+
role: "option",
|
|
55
|
+
tabIndex: option.disabled ? -1 : 0,
|
|
56
|
+
children: multiselect ? /* @__PURE__ */ jsx(Checkbox, {
|
|
57
|
+
checked: selectedData.selectedValues.includes(option.value) && !option.disabled,
|
|
58
|
+
className: selectInputStyle.dropdownCheckbox,
|
|
59
|
+
disabled: option.disabled,
|
|
60
|
+
onChange: (event) => {
|
|
61
|
+
if (!option.disabled) handleClick({
|
|
62
|
+
clickedOption: option,
|
|
63
|
+
event
|
|
64
|
+
});
|
|
65
|
+
},
|
|
66
|
+
tabIndex: -1,
|
|
67
|
+
tooltip: option.tooltip,
|
|
68
|
+
value: option.value,
|
|
69
|
+
children: /* @__PURE__ */ jsx(DisplayOption, {
|
|
70
|
+
descriptionDirection,
|
|
71
|
+
option,
|
|
72
|
+
optionalInfoPlacement,
|
|
73
|
+
textVariant
|
|
74
|
+
})
|
|
75
|
+
}) : /* @__PURE__ */ jsx(DisplayOption, {
|
|
76
|
+
descriptionDirection,
|
|
77
|
+
option,
|
|
78
|
+
optionalInfoPlacement,
|
|
79
|
+
textVariant
|
|
80
|
+
})
|
|
81
|
+
});
|
|
82
|
+
};
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
//#endregion
|
|
86
|
+
init_Item();
|
|
87
|
+
export { Item, init_Item };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { OptionType } from '
|
|
1
|
+
import type { OptionType } from '../../types';
|
|
2
2
|
type DisplayOptionProps = {
|
|
3
3
|
option: OptionType;
|
|
4
4
|
descriptionDirection: 'row' | 'column';
|
|
@@ -7,4 +7,4 @@ type DisplayOptionProps = {
|
|
|
7
7
|
};
|
|
8
8
|
export declare const DisplayOption: ({ option, optionalInfoPlacement, descriptionDirection, textVariant, }: DisplayOptionProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
9
|
export {};
|
|
10
|
-
//# sourceMappingURL=
|
|
10
|
+
//# sourceMappingURL=Option.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Option.d.ts","sourceRoot":"","sources":["../../../../../src/components/SelectInput/components/Dropdown/Option.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C,KAAK,kBAAkB,GAAG;IACxB,MAAM,EAAE,UAAU,CAAA;IAClB,oBAAoB,EAAE,KAAK,GAAG,QAAQ,CAAA;IACtC,qBAAqB,EAAE,MAAM,GAAG,OAAO,CAAA;IACvC,WAAW,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAAA;CAC9C,CAAA;AAED,eAAO,MAAM,aAAa,wIAiKzB,CAAA"}
|