@ui5/webcomponents 0.0.0-49cef2d02 → 0.0.0-4a28ecb24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +135 -0
- package/dist/Assets-static.d.ts +4 -0
- package/dist/Assets-static.js +1 -1
- package/dist/Assets-static.js.map +1 -0
- package/dist/Assets.d.ts +5 -0
- package/dist/Assets.js +1 -1
- package/dist/Assets.js.map +1 -0
- package/dist/Avatar.d.ts +3 -3
- package/dist/Avatar.js +0 -1
- package/dist/Avatar.js.map +1 -1
- package/dist/AvatarGroup.js +2 -19
- package/dist/Badge.d.ts +3 -3
- package/dist/Badge.js +0 -1
- package/dist/Badge.js.map +1 -1
- package/dist/Breadcrumbs.d.ts +13 -13
- package/dist/Breadcrumbs.js +2 -5
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/BreadcrumbsItem.d.ts +1 -0
- package/dist/BreadcrumbsItem.js +1 -0
- package/dist/BreadcrumbsItem.js.map +1 -1
- package/dist/BusyIndicator.d.ts +136 -0
- package/dist/BusyIndicator.js +125 -208
- package/dist/BusyIndicator.js.map +1 -0
- package/dist/Button.d.ts +3 -3
- package/dist/Button.js +0 -1
- package/dist/Button.js.map +1 -1
- package/dist/Calendar.d.ts +3 -3
- package/dist/Calendar.js +1 -1
- package/dist/CalendarDate.d.ts +1 -0
- package/dist/CalendarDate.js +1 -0
- package/dist/CalendarDate.js.map +1 -1
- package/dist/CalendarHeader.d.ts +2 -2
- package/dist/CalendarHeader.js +1 -3
- package/dist/CalendarHeader.js.map +1 -1
- package/dist/Card.d.ts +3 -3
- package/dist/Card.js +2 -4
- package/dist/Card.js.map +1 -1
- package/dist/CardHeader.d.ts +8 -8
- package/dist/CardHeader.js +1 -3
- package/dist/CardHeader.js.map +1 -1
- package/dist/Carousel.d.ts +318 -0
- package/dist/Carousel.js +444 -642
- package/dist/Carousel.js.map +1 -0
- package/dist/CheckBox.d.ts +3 -3
- package/dist/CheckBox.js +1 -3
- package/dist/CheckBox.js.map +1 -1
- package/dist/ColorPalette.d.ts +5 -5
- package/dist/ColorPalette.js +2 -4
- package/dist/ColorPalette.js.map +1 -1
- package/dist/ColorPaletteItem.d.ts +3 -2
- package/dist/ColorPaletteItem.js +2 -3
- package/dist/ColorPaletteItem.js.map +1 -1
- package/dist/ColorPalettePopover.d.ts +12 -13
- package/dist/ColorPalettePopover.js +5 -4
- package/dist/ColorPalettePopover.js.map +1 -1
- package/dist/ColorPicker.d.ts +2 -2
- package/dist/ColorPicker.js +1 -3
- package/dist/ColorPicker.js.map +1 -1
- package/dist/ComboBox.js +2 -2
- package/dist/ComboBoxGroupItem.js +1 -0
- package/dist/ComboBoxItem.js +1 -0
- package/dist/CustomListItem.d.ts +1 -1
- package/dist/DatePicker.d.ts +10 -6
- package/dist/DatePicker.js +3 -5
- package/dist/DatePicker.js.map +1 -1
- package/dist/DateRangePicker.d.ts +4 -0
- package/dist/DateRangePicker.js +4 -1
- package/dist/DateRangePicker.js.map +1 -1
- package/dist/DateTimePicker.d.ts +3 -8
- package/dist/DateTimePicker.js +1 -3
- package/dist/DateTimePicker.js.map +1 -1
- package/dist/DayPicker.d.ts +2 -2
- package/dist/DayPicker.js +1 -3
- package/dist/DayPicker.js.map +1 -1
- package/dist/Dialog.d.ts +15 -11
- package/dist/Dialog.js +14 -7
- package/dist/Dialog.js.map +1 -1
- package/dist/FileUploader.d.ts +5 -4
- package/dist/FileUploader.js +2 -3
- package/dist/FileUploader.js.map +1 -1
- package/dist/GroupHeaderListItem.d.ts +2 -2
- package/dist/GroupHeaderListItem.js +0 -1
- package/dist/GroupHeaderListItem.js.map +1 -1
- package/dist/Icon.d.ts +2 -2
- package/dist/Input.d.ts +20 -10
- package/dist/Input.js +20 -14
- package/dist/Input.js.map +1 -1
- package/dist/Label.d.ts +2 -2
- package/dist/Link.d.ts +2 -2
- package/dist/Link.js +0 -1
- package/dist/Link.js.map +1 -1
- package/dist/List.d.ts +4 -3
- package/dist/List.js +2 -5
- package/dist/List.js.map +1 -1
- package/dist/ListItem.d.ts +7 -2
- package/dist/ListItem.js +4 -8
- package/dist/ListItem.js.map +1 -1
- package/dist/Menu.d.ts +18 -14
- package/dist/Menu.js +6 -5
- package/dist/Menu.js.map +1 -1
- package/dist/MenuItem.d.ts +1 -0
- package/dist/MenuItem.js +1 -0
- package/dist/MenuItem.js.map +1 -1
- package/dist/MessageStrip.d.ts +2 -2
- package/dist/MessageStrip.js +1 -3
- package/dist/MessageStrip.js.map +1 -1
- package/dist/MonthPicker.d.ts +2 -2
- package/dist/MonthPicker.js +1 -3
- package/dist/MonthPicker.js.map +1 -1
- package/dist/MultiComboBox.js +6 -2
- package/dist/MultiComboBoxGroupItem.js +1 -0
- package/dist/MultiComboBoxItem.js +1 -0
- package/dist/MultiInput.js +1 -1
- package/dist/Option.d.ts +95 -0
- package/dist/Option.js +48 -118
- package/dist/Option.js.map +1 -0
- package/dist/Panel.d.ts +2 -2
- package/dist/Panel.js +0 -1
- package/dist/Panel.js.map +1 -1
- package/dist/Popover.d.ts +8 -6
- package/dist/Popover.js +7 -8
- package/dist/Popover.js.map +1 -1
- package/dist/Popup.d.ts +28 -17
- package/dist/Popup.js +13 -3
- package/dist/Popup.js.map +1 -1
- package/dist/ProgressIndicator.d.ts +2 -2
- package/dist/ProgressIndicator.js +1 -3
- package/dist/ProgressIndicator.js.map +1 -1
- package/dist/RadioButton.d.ts +245 -0
- package/dist/RadioButton.js +260 -484
- package/dist/RadioButton.js.map +1 -0
- package/dist/RadioButtonGroup.d.ts +25 -0
- package/dist/RadioButtonGroup.js +188 -202
- package/dist/RadioButtonGroup.js.map +1 -0
- package/dist/RangeSlider.d.ts +1 -1
- package/dist/RangeSlider.js +1 -3
- package/dist/RangeSlider.js.map +1 -1
- package/dist/ResponsivePopover.d.ts +108 -0
- package/dist/ResponsivePopover.js +145 -180
- package/dist/ResponsivePopover.js.map +1 -0
- package/dist/SegmentedButton.js +3 -3
- package/dist/SegmentedButtonItem.js +1 -0
- package/dist/Select.d.ts +341 -0
- package/dist/Select.js +579 -814
- package/dist/Select.js.map +1 -0
- package/dist/Slider.d.ts +1 -1
- package/dist/Slider.js +1 -3
- package/dist/Slider.js.map +1 -1
- package/dist/SplitButton.d.ts +2 -2
- package/dist/SplitButton.js +1 -3
- package/dist/SplitButton.js.map +1 -1
- package/dist/StandardListItem.d.ts +4 -2
- package/dist/StandardListItem.js +0 -1
- package/dist/StandardListItem.js.map +1 -1
- package/dist/StepInput.d.ts +3 -3
- package/dist/StepInput.js +0 -1
- package/dist/StepInput.js.map +1 -1
- package/dist/SuggestionGroupItem.d.ts +1 -0
- package/dist/SuggestionGroupItem.js +1 -0
- package/dist/SuggestionGroupItem.js.map +1 -1
- package/dist/SuggestionItem.d.ts +9 -8
- package/dist/SuggestionItem.js +1 -0
- package/dist/SuggestionItem.js.map +1 -1
- package/dist/SuggestionListItem.d.ts +1 -1
- package/dist/Switch.d.ts +2 -2
- package/dist/TabContainer.js +1 -2
- package/dist/Table.d.ts +6 -4
- package/dist/Table.js +2 -6
- package/dist/Table.js.map +1 -1
- package/dist/TableCell.d.ts +2 -2
- package/dist/TableColumn.d.ts +2 -2
- package/dist/TableGroupRow.d.ts +2 -2
- package/dist/TableGroupRow.js +1 -4
- package/dist/TableGroupRow.js.map +1 -1
- package/dist/TableRow.d.ts +2 -2
- package/dist/TableRow.js +1 -4
- package/dist/TableRow.js.map +1 -1
- package/dist/TimePicker.d.ts +1 -0
- package/dist/TimePicker.js +2 -3
- package/dist/TimePicker.js.map +1 -1
- package/dist/TimePickerBase.d.ts +20 -12
- package/dist/TimePickerBase.js +11 -4
- package/dist/TimePickerBase.js.map +1 -1
- package/dist/TimeSelection.d.ts +2 -2
- package/dist/TimeSelection.js +1 -3
- package/dist/TimeSelection.js.map +1 -1
- package/dist/Title.d.ts +2 -2
- package/dist/Tree.js +1 -1
- package/dist/WheelSlider.d.ts +2 -2
- package/dist/YearPicker.d.ts +2 -2
- package/dist/YearPicker.js +1 -3
- package/dist/YearPicker.js.map +1 -1
- package/dist/api.json +1 -1
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/custom-elements.json +1 -0
- package/dist/features/ColorPaletteMoreColors.d.ts +1 -1
- package/dist/features/ColorPaletteMoreColors.js +1 -3
- package/dist/features/ColorPaletteMoreColors.js.map +1 -1
- package/dist/features/InputSuggestions.d.ts +8 -4
- package/dist/features/InputSuggestions.js +1 -4
- package/dist/features/InputSuggestions.js.map +1 -1
- package/dist/generated/i18n/i18n-defaults.d.ts +142 -0
- package/dist/generated/i18n/i18n-defaults.js +142 -2
- package/dist/generated/i18n/i18n-defaults.js.map +1 -0
- package/dist/generated/templates/CarouselTemplate.lit.js +2 -2
- package/dist/generated/templates/RadioButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/SelectTemplate.lit.js +1 -1
- package/dist/generated/themes/Avatar.css.d.ts +3 -0
- package/dist/generated/themes/Avatar.css.js +5 -5
- package/dist/generated/themes/Avatar.css.js.map +1 -0
- package/dist/generated/themes/AvatarGroup.css.d.ts +3 -0
- package/dist/generated/themes/AvatarGroup.css.js +5 -5
- package/dist/generated/themes/AvatarGroup.css.js.map +1 -0
- package/dist/generated/themes/Badge.css.d.ts +3 -0
- package/dist/generated/themes/Badge.css.js +5 -5
- package/dist/generated/themes/Badge.css.js.map +1 -0
- package/dist/generated/themes/Breadcrumbs.css.d.ts +3 -0
- package/dist/generated/themes/Breadcrumbs.css.js +5 -5
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -0
- package/dist/generated/themes/BreadcrumbsPopover.css.d.ts +3 -0
- package/dist/generated/themes/BreadcrumbsPopover.css.js +5 -5
- package/dist/generated/themes/BreadcrumbsPopover.css.js.map +1 -0
- package/dist/generated/themes/BrowserScrollbar.css.d.ts +3 -0
- package/dist/generated/themes/BrowserScrollbar.css.js +5 -5
- package/dist/generated/themes/BrowserScrollbar.css.js.map +1 -0
- package/dist/generated/themes/BusyIndicator.css.d.ts +3 -0
- package/dist/generated/themes/BusyIndicator.css.js +5 -5
- package/dist/generated/themes/BusyIndicator.css.js.map +1 -0
- package/dist/generated/themes/Button.css.d.ts +3 -0
- package/dist/generated/themes/Button.css.js +5 -5
- package/dist/generated/themes/Button.css.js.map +1 -0
- package/dist/generated/themes/Calendar.css.d.ts +3 -0
- package/dist/generated/themes/Calendar.css.js +5 -5
- package/dist/generated/themes/Calendar.css.js.map +1 -0
- package/dist/generated/themes/CalendarHeader.css.d.ts +3 -0
- package/dist/generated/themes/CalendarHeader.css.js +5 -5
- package/dist/generated/themes/CalendarHeader.css.js.map +1 -0
- package/dist/generated/themes/Card.css.d.ts +3 -0
- package/dist/generated/themes/Card.css.js +5 -5
- package/dist/generated/themes/Card.css.js.map +1 -0
- package/dist/generated/themes/CardHeader.css.d.ts +3 -0
- package/dist/generated/themes/CardHeader.css.js +5 -5
- package/dist/generated/themes/CardHeader.css.js.map +1 -0
- package/dist/generated/themes/Carousel.css.d.ts +3 -0
- package/dist/generated/themes/Carousel.css.js +5 -5
- package/dist/generated/themes/Carousel.css.js.map +1 -0
- package/dist/generated/themes/CheckBox.css.d.ts +3 -0
- package/dist/generated/themes/CheckBox.css.js +5 -5
- package/dist/generated/themes/CheckBox.css.js.map +1 -0
- package/dist/generated/themes/ColorPalette.css.d.ts +3 -0
- package/dist/generated/themes/ColorPalette.css.js +5 -5
- package/dist/generated/themes/ColorPalette.css.js.map +1 -0
- package/dist/generated/themes/ColorPaletteItem.css.d.ts +3 -0
- package/dist/generated/themes/ColorPaletteItem.css.js +5 -5
- package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -0
- package/dist/generated/themes/ColorPalettePopover.css.d.ts +3 -0
- package/dist/generated/themes/ColorPalettePopover.css.js +5 -5
- package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -0
- package/dist/generated/themes/ColorPaletteStaticArea.css.d.ts +3 -0
- package/dist/generated/themes/ColorPaletteStaticArea.css.js +5 -5
- package/dist/generated/themes/ColorPaletteStaticArea.css.js.map +1 -0
- package/dist/generated/themes/ColorPicker.css.d.ts +3 -0
- package/dist/generated/themes/ColorPicker.css.js +5 -5
- package/dist/generated/themes/ColorPicker.css.js.map +1 -0
- package/dist/generated/themes/ComboBox.css.d.ts +3 -0
- package/dist/generated/themes/ComboBox.css.js +5 -5
- package/dist/generated/themes/ComboBox.css.js.map +1 -0
- package/dist/generated/themes/ComboBoxPopover.css.d.ts +3 -0
- package/dist/generated/themes/ComboBoxPopover.css.js +5 -5
- package/dist/generated/themes/ComboBoxPopover.css.js.map +1 -0
- package/dist/generated/themes/CustomListItem.css.d.ts +3 -0
- package/dist/generated/themes/CustomListItem.css.js +5 -5
- package/dist/generated/themes/CustomListItem.css.js.map +1 -0
- package/dist/generated/themes/DatePicker.css.d.ts +3 -0
- package/dist/generated/themes/DatePicker.css.js +5 -5
- package/dist/generated/themes/DatePicker.css.js.map +1 -0
- package/dist/generated/themes/DatePickerPopover.css.d.ts +3 -0
- package/dist/generated/themes/DatePickerPopover.css.js +5 -5
- package/dist/generated/themes/DatePickerPopover.css.js.map +1 -0
- package/dist/generated/themes/DateRangePicker.css.d.ts +3 -0
- package/dist/generated/themes/DateRangePicker.css.js +5 -5
- package/dist/generated/themes/DateRangePicker.css.js.map +1 -0
- package/dist/generated/themes/DateTimePicker.css.d.ts +3 -0
- package/dist/generated/themes/DateTimePicker.css.js +5 -5
- package/dist/generated/themes/DateTimePicker.css.js.map +1 -0
- package/dist/generated/themes/DateTimePickerPopover.css.d.ts +3 -0
- package/dist/generated/themes/DateTimePickerPopover.css.js +5 -5
- package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -0
- package/dist/generated/themes/DayPicker.css.d.ts +3 -0
- package/dist/generated/themes/DayPicker.css.js +5 -5
- package/dist/generated/themes/DayPicker.css.js.map +1 -0
- package/dist/generated/themes/Dialog.css.d.ts +3 -0
- package/dist/generated/themes/Dialog.css.js +5 -5
- package/dist/generated/themes/Dialog.css.js.map +1 -0
- package/dist/generated/themes/FileUploader.css.d.ts +3 -0
- package/dist/generated/themes/FileUploader.css.js +5 -5
- package/dist/generated/themes/FileUploader.css.js.map +1 -0
- package/dist/generated/themes/GroupHeaderListItem.css.d.ts +3 -0
- package/dist/generated/themes/GroupHeaderListItem.css.js +5 -5
- package/dist/generated/themes/GroupHeaderListItem.css.js.map +1 -0
- package/dist/generated/themes/GrowingButton.css.d.ts +3 -0
- package/dist/generated/themes/GrowingButton.css.js +5 -5
- package/dist/generated/themes/GrowingButton.css.js.map +1 -0
- package/dist/generated/themes/Icon.css.d.ts +3 -0
- package/dist/generated/themes/Icon.css.js +5 -5
- package/dist/generated/themes/Icon.css.js.map +1 -0
- package/dist/generated/themes/Input.css.d.ts +3 -0
- package/dist/generated/themes/Input.css.js +5 -5
- package/dist/generated/themes/Input.css.js.map +1 -0
- package/dist/generated/themes/InputIcon.css.d.ts +3 -0
- package/dist/generated/themes/InputIcon.css.js +5 -5
- package/dist/generated/themes/InputIcon.css.js.map +1 -0
- package/dist/generated/themes/InvisibleTextStyles.css.d.ts +3 -0
- package/dist/generated/themes/InvisibleTextStyles.css.js +5 -5
- package/dist/generated/themes/InvisibleTextStyles.css.js.map +1 -0
- package/dist/generated/themes/Label.css.d.ts +3 -0
- package/dist/generated/themes/Label.css.js +5 -5
- package/dist/generated/themes/Label.css.js.map +1 -0
- package/dist/generated/themes/Link.css.d.ts +3 -0
- package/dist/generated/themes/Link.css.js +5 -5
- package/dist/generated/themes/Link.css.js.map +1 -0
- package/dist/generated/themes/List.css.d.ts +3 -0
- package/dist/generated/themes/List.css.js +5 -5
- package/dist/generated/themes/List.css.js.map +1 -0
- package/dist/generated/themes/ListItem.css.d.ts +3 -0
- package/dist/generated/themes/ListItem.css.js +5 -5
- package/dist/generated/themes/ListItem.css.js.map +1 -0
- package/dist/generated/themes/ListItemBase.css.d.ts +3 -0
- package/dist/generated/themes/ListItemBase.css.js +5 -5
- package/dist/generated/themes/ListItemBase.css.js.map +1 -0
- package/dist/generated/themes/Menu.css.d.ts +3 -0
- package/dist/generated/themes/Menu.css.js +5 -5
- package/dist/generated/themes/Menu.css.js.map +1 -0
- package/dist/generated/themes/MessageStrip.css.d.ts +3 -0
- package/dist/generated/themes/MessageStrip.css.js +5 -5
- package/dist/generated/themes/MessageStrip.css.js.map +1 -0
- package/dist/generated/themes/MonthPicker.css.d.ts +3 -0
- package/dist/generated/themes/MonthPicker.css.js +5 -5
- package/dist/generated/themes/MonthPicker.css.js.map +1 -0
- package/dist/generated/themes/MultiComboBox.css.d.ts +3 -0
- package/dist/generated/themes/MultiComboBox.css.js +5 -5
- package/dist/generated/themes/MultiComboBox.css.js.map +1 -0
- package/dist/generated/themes/MultiComboBoxPopover.css.d.ts +3 -0
- package/dist/generated/themes/MultiComboBoxPopover.css.js +5 -5
- package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -0
- package/dist/generated/themes/MultiInput.css.d.ts +3 -0
- package/dist/generated/themes/MultiInput.css.js +5 -5
- package/dist/generated/themes/MultiInput.css.js.map +1 -0
- package/dist/generated/themes/Panel.css.d.ts +3 -0
- package/dist/generated/themes/Panel.css.js +5 -5
- package/dist/generated/themes/Panel.css.js.map +1 -0
- package/dist/generated/themes/Popover.css.d.ts +3 -0
- package/dist/generated/themes/Popover.css.js +5 -5
- package/dist/generated/themes/Popover.css.js.map +1 -0
- package/dist/generated/themes/Popup.css.d.ts +3 -0
- package/dist/generated/themes/Popup.css.js +5 -5
- package/dist/generated/themes/Popup.css.js.map +1 -0
- package/dist/generated/themes/PopupGlobal.css.d.ts +3 -0
- package/dist/generated/themes/PopupGlobal.css.js +5 -5
- package/dist/generated/themes/PopupGlobal.css.js.map +1 -0
- package/dist/generated/themes/PopupStaticAreaStyles.css.d.ts +3 -0
- package/dist/generated/themes/PopupStaticAreaStyles.css.js +5 -5
- package/dist/generated/themes/PopupStaticAreaStyles.css.js.map +1 -0
- package/dist/generated/themes/PopupsCommon.css.d.ts +3 -0
- package/dist/generated/themes/PopupsCommon.css.js +5 -5
- package/dist/generated/themes/PopupsCommon.css.js.map +1 -0
- package/dist/generated/themes/ProgressIndicator.css.d.ts +3 -0
- package/dist/generated/themes/ProgressIndicator.css.js +5 -5
- package/dist/generated/themes/ProgressIndicator.css.js.map +1 -0
- package/dist/generated/themes/RadioButton.css.d.ts +3 -0
- package/dist/generated/themes/RadioButton.css.js +5 -5
- package/dist/generated/themes/RadioButton.css.js.map +1 -0
- package/dist/generated/themes/RangeSlider.css.d.ts +3 -0
- package/dist/generated/themes/RangeSlider.css.js +5 -5
- package/dist/generated/themes/RangeSlider.css.js.map +1 -0
- package/dist/generated/themes/RatingIndicator.css.d.ts +3 -0
- package/dist/generated/themes/RatingIndicator.css.js +5 -5
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -0
- package/dist/generated/themes/ResponsivePopover.css.d.ts +3 -0
- package/dist/generated/themes/ResponsivePopover.css.js +5 -5
- package/dist/generated/themes/ResponsivePopover.css.js.map +1 -0
- package/dist/generated/themes/ResponsivePopoverCommon.css.d.ts +3 -0
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +5 -5
- package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -0
- package/dist/generated/themes/SegmentedButton.css.d.ts +3 -0
- package/dist/generated/themes/SegmentedButton.css.js +5 -5
- package/dist/generated/themes/SegmentedButton.css.js.map +1 -0
- package/dist/generated/themes/Select.css.d.ts +3 -0
- package/dist/generated/themes/Select.css.js +5 -5
- package/dist/generated/themes/Select.css.js.map +1 -0
- package/dist/generated/themes/SelectPopover.css.d.ts +3 -0
- package/dist/generated/themes/SelectPopover.css.js +5 -5
- package/dist/generated/themes/SelectPopover.css.js.map +1 -0
- package/dist/generated/themes/SliderBase.css.d.ts +3 -0
- package/dist/generated/themes/SliderBase.css.js +5 -5
- package/dist/generated/themes/SliderBase.css.js.map +1 -0
- package/dist/generated/themes/SplitButton.css.d.ts +3 -0
- package/dist/generated/themes/SplitButton.css.js +5 -5
- package/dist/generated/themes/SplitButton.css.js.map +1 -0
- package/dist/generated/themes/StepInput.css.d.ts +3 -0
- package/dist/generated/themes/StepInput.css.js +5 -5
- package/dist/generated/themes/StepInput.css.js.map +1 -0
- package/dist/generated/themes/Suggestions.css.d.ts +3 -0
- package/dist/generated/themes/Suggestions.css.js +5 -5
- package/dist/generated/themes/Suggestions.css.js.map +1 -0
- package/dist/generated/themes/Switch.css.d.ts +3 -0
- package/dist/generated/themes/Switch.css.js +5 -5
- package/dist/generated/themes/Switch.css.js.map +1 -0
- package/dist/generated/themes/Tab.css.d.ts +3 -0
- package/dist/generated/themes/Tab.css.js +5 -5
- package/dist/generated/themes/Tab.css.js.map +1 -0
- package/dist/generated/themes/TabContainer.css.d.ts +3 -0
- package/dist/generated/themes/TabContainer.css.js +5 -5
- package/dist/generated/themes/TabContainer.css.js.map +1 -0
- package/dist/generated/themes/TabInOverflow.css.d.ts +3 -0
- package/dist/generated/themes/TabInOverflow.css.js +5 -5
- package/dist/generated/themes/TabInOverflow.css.js.map +1 -0
- package/dist/generated/themes/TabInStrip.css.d.ts +3 -0
- package/dist/generated/themes/TabInStrip.css.js +5 -5
- package/dist/generated/themes/TabInStrip.css.js.map +1 -0
- package/dist/generated/themes/TabSemanticIcon.css.d.ts +3 -0
- package/dist/generated/themes/TabSemanticIcon.css.js +5 -5
- package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -0
- package/dist/generated/themes/TabSeparatorInOverflow.css.d.ts +3 -0
- package/dist/generated/themes/TabSeparatorInOverflow.css.js +5 -5
- package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -0
- package/dist/generated/themes/TabSeparatorInStrip.css.d.ts +3 -0
- package/dist/generated/themes/TabSeparatorInStrip.css.js +5 -5
- package/dist/generated/themes/TabSeparatorInStrip.css.js.map +1 -0
- package/dist/generated/themes/Table.css.d.ts +3 -0
- package/dist/generated/themes/Table.css.js +5 -5
- package/dist/generated/themes/Table.css.js.map +1 -0
- package/dist/generated/themes/TableCell.css.d.ts +3 -0
- package/dist/generated/themes/TableCell.css.js +5 -5
- package/dist/generated/themes/TableCell.css.js.map +1 -0
- package/dist/generated/themes/TableColumn.css.d.ts +3 -0
- package/dist/generated/themes/TableColumn.css.js +5 -5
- package/dist/generated/themes/TableColumn.css.js.map +1 -0
- package/dist/generated/themes/TableGroupRow.css.d.ts +3 -0
- package/dist/generated/themes/TableGroupRow.css.js +5 -5
- package/dist/generated/themes/TableGroupRow.css.js.map +1 -0
- package/dist/generated/themes/TableRow.css.d.ts +3 -0
- package/dist/generated/themes/TableRow.css.js +5 -5
- package/dist/generated/themes/TableRow.css.js.map +1 -0
- package/dist/generated/themes/TapHighlightColor.css.d.ts +3 -0
- package/dist/generated/themes/TapHighlightColor.css.js +5 -5
- package/dist/generated/themes/TapHighlightColor.css.js.map +1 -0
- package/dist/generated/themes/TextArea.css.d.ts +3 -0
- package/dist/generated/themes/TextArea.css.js +5 -5
- package/dist/generated/themes/TextArea.css.js.map +1 -0
- package/dist/generated/themes/TimePicker.css.d.ts +3 -0
- package/dist/generated/themes/TimePicker.css.js +5 -5
- package/dist/generated/themes/TimePicker.css.js.map +1 -0
- package/dist/generated/themes/TimePickerPopover.css.d.ts +3 -0
- package/dist/generated/themes/TimePickerPopover.css.js +5 -5
- package/dist/generated/themes/TimePickerPopover.css.js.map +1 -0
- package/dist/generated/themes/TimeSelection.css.d.ts +3 -0
- package/dist/generated/themes/TimeSelection.css.js +5 -5
- package/dist/generated/themes/TimeSelection.css.js.map +1 -0
- package/dist/generated/themes/Title.css.d.ts +3 -0
- package/dist/generated/themes/Title.css.js +5 -5
- package/dist/generated/themes/Title.css.js.map +1 -0
- package/dist/generated/themes/Toast.css.d.ts +3 -0
- package/dist/generated/themes/Toast.css.js +5 -5
- package/dist/generated/themes/Toast.css.js.map +1 -0
- package/dist/generated/themes/ToggleButton.css.d.ts +3 -0
- package/dist/generated/themes/ToggleButton.css.js +5 -5
- package/dist/generated/themes/ToggleButton.css.js.map +1 -0
- package/dist/generated/themes/Token.css.d.ts +3 -0
- package/dist/generated/themes/Token.css.js +5 -5
- package/dist/generated/themes/Token.css.js.map +1 -0
- package/dist/generated/themes/Tokenizer.css.d.ts +3 -0
- package/dist/generated/themes/Tokenizer.css.js +5 -5
- package/dist/generated/themes/Tokenizer.css.js.map +1 -0
- package/dist/generated/themes/TokenizerPopover.css.d.ts +3 -0
- package/dist/generated/themes/TokenizerPopover.css.js +5 -5
- package/dist/generated/themes/TokenizerPopover.css.js.map +1 -0
- package/dist/generated/themes/Tree.css.d.ts +3 -0
- package/dist/generated/themes/Tree.css.js +5 -5
- package/dist/generated/themes/Tree.css.js.map +1 -0
- package/dist/generated/themes/TreeItem.css.d.ts +3 -0
- package/dist/generated/themes/TreeItem.css.js +5 -5
- package/dist/generated/themes/TreeItem.css.js.map +1 -0
- package/dist/generated/themes/ValueStateMessage.css.d.ts +3 -0
- package/dist/generated/themes/ValueStateMessage.css.js +5 -5
- package/dist/generated/themes/ValueStateMessage.css.js.map +1 -0
- package/dist/generated/themes/WheelSlider.css.d.ts +3 -0
- package/dist/generated/themes/WheelSlider.css.js +5 -5
- package/dist/generated/themes/WheelSlider.css.js.map +1 -0
- package/dist/generated/themes/YearPicker.css.d.ts +3 -0
- package/dist/generated/themes/YearPicker.css.js +5 -5
- package/dist/generated/themes/YearPicker.css.js.map +1 -0
- package/dist/generated/themes/sap_belize/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +1 -0
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +1 -0
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js.map +1 -0
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -0
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -0
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -0
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -0
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -0
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -0
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -0
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -0
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.d.ts +3 -0
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +3 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -0
- package/dist/i18n/messagebundle.properties +1 -1
- package/dist/types/PopupAccessibleRole.d.ts +30 -0
- package/dist/types/PopupAccessibleRole.js +32 -0
- package/dist/types/PopupAccessibleRole.js.map +1 -0
- package/global.d.ts +2 -2
- package/package.json +7 -7
- package/src/{Assets-static.js → Assets-static.ts} +0 -0
- package/src/{Assets.js → Assets.ts} +0 -0
- package/src/Avatar.ts +2 -4
- package/src/AvatarGroup.js +2 -19
- package/src/Badge.ts +2 -4
- package/src/Breadcrumbs.ts +7 -16
- package/src/BreadcrumbsItem.ts +1 -0
- package/src/{BusyIndicator.js → BusyIndicator.ts} +92 -99
- package/src/Button.ts +3 -4
- package/src/Calendar.ts +1 -1
- package/src/CalendarDate.ts +1 -0
- package/src/CalendarHeader.ts +2 -4
- package/src/Card.ts +3 -5
- package/src/CardHeader.ts +8 -10
- package/src/Carousel.hbs +3 -3
- package/src/{Carousel.js → Carousel.ts} +236 -230
- package/src/CheckBox.ts +4 -6
- package/src/ColorPalette.ts +3 -5
- package/src/ColorPaletteItem.ts +2 -3
- package/src/ColorPalettePopover.ts +8 -16
- package/src/ColorPicker.ts +7 -9
- package/src/ComboBox.js +2 -2
- package/src/ComboBoxGroupItem.js +1 -0
- package/src/ComboBoxItem.js +1 -0
- package/src/DatePicker.ts +8 -11
- package/src/DateRangePicker.ts +5 -3
- package/src/DateTimePicker.ts +7 -15
- package/src/DayPicker.ts +4 -5
- package/src/Dialog.ts +26 -15
- package/src/FileUploader.ts +7 -8
- package/src/GroupHeaderListItem.ts +1 -3
- package/src/Input.ts +47 -30
- package/src/Link.ts +0 -1
- package/src/List.ts +5 -8
- package/src/ListItem.ts +13 -12
- package/src/Menu.ts +13 -18
- package/src/MenuItem.ts +1 -0
- package/src/MessageStrip.ts +6 -7
- package/src/MonthPicker.ts +1 -3
- package/src/MultiComboBox.js +6 -2
- package/src/MultiComboBoxGroupItem.js +1 -0
- package/src/MultiComboBoxItem.js +1 -0
- package/src/MultiInput.js +1 -1
- package/src/Option.ts +119 -0
- package/src/Panel.ts +1 -3
- package/src/Popover.ts +9 -10
- package/src/Popup.ts +34 -19
- package/src/ProgressIndicator.ts +4 -6
- package/src/RadioButton.hbs +5 -6
- package/src/RadioButton.ts +530 -0
- package/src/{RadioButtonGroup.js → RadioButtonGroup.ts} +59 -28
- package/src/RangeSlider.ts +5 -7
- package/src/ResponsivePopover.hbs +1 -0
- package/src/{ResponsivePopover.js → ResponsivePopover.ts} +70 -58
- package/src/SegmentedButton.js +3 -3
- package/src/SegmentedButtonItem.js +1 -0
- package/src/Select.hbs +1 -1
- package/src/{Select.js → Select.ts} +305 -265
- package/src/Slider.ts +1 -3
- package/src/SplitButton.ts +3 -5
- package/src/StandardListItem.ts +0 -1
- package/src/StepInput.ts +3 -5
- package/src/SuggestionGroupItem.ts +1 -0
- package/src/SuggestionItem.ts +9 -8
- package/src/TabContainer.js +1 -2
- package/src/Table.ts +5 -9
- package/src/TableGroupRow.ts +1 -4
- package/src/TableRow.ts +2 -5
- package/src/TimePicker.ts +2 -3
- package/src/TimePickerBase.ts +13 -13
- package/src/TimeSelection.ts +3 -5
- package/src/Tree.hbs +1 -1
- package/src/Tree.js +1 -1
- package/src/YearPicker.ts +2 -6
- package/src/features/ColorPaletteMoreColors.ts +3 -5
- package/src/features/InputSuggestions.ts +3 -8
- package/src/i18n/messagebundle.properties +1 -1
- package/src/themes/Avatar.css +11 -11
- package/src/types/PopupAccessibleRole.ts +34 -0
- package/.dev-server-port +0 -1
- package/src/Option.js +0 -136
- package/src/RadioButton.js +0 -535
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
|
+
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
3
|
+
import languageAware from "@ui5/webcomponents-base/dist/decorators/languageAware.js";
|
|
4
|
+
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
5
|
+
import event from "@ui5/webcomponents-base/dist/decorators/event.js";
|
|
6
|
+
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
2
7
|
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
3
8
|
import {
|
|
4
9
|
isSpace,
|
|
@@ -13,7 +18,6 @@ import {
|
|
|
13
18
|
isTabPrevious,
|
|
14
19
|
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
15
20
|
import announce from "@ui5/webcomponents-base/dist/util/InvisibleMessage.js";
|
|
16
|
-
import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
17
21
|
import { getFeature } from "@ui5/webcomponents-base/dist/FeaturesRegistry.js";
|
|
18
22
|
import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
|
|
19
23
|
import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
|
|
@@ -23,8 +27,14 @@ import "@ui5/webcomponents-icons/dist/alert.js";
|
|
|
23
27
|
import "@ui5/webcomponents-icons/dist/sys-enter-2.js";
|
|
24
28
|
import "@ui5/webcomponents-icons/dist/information.js";
|
|
25
29
|
import { isPhone } from "@ui5/webcomponents-base/dist/Device.js";
|
|
30
|
+
import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
26
31
|
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
27
32
|
import "@ui5/webcomponents-icons/dist/decline.js";
|
|
33
|
+
import type { Timeout } from "@ui5/webcomponents-base/dist/types.js";
|
|
34
|
+
import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
35
|
+
import InvisibleMessageMode from "@ui5/webcomponents-base/dist/types/InvisibleMessageMode.js";
|
|
36
|
+
import List from "./List.js";
|
|
37
|
+
import type { SelectionChangeEventDetail } from "./List.js";
|
|
28
38
|
import {
|
|
29
39
|
VALUE_STATE_SUCCESS,
|
|
30
40
|
VALUE_STATE_INFORMATION,
|
|
@@ -42,7 +52,6 @@ import Option from "./Option.js";
|
|
|
42
52
|
import Label from "./Label.js";
|
|
43
53
|
import ResponsivePopover from "./ResponsivePopover.js";
|
|
44
54
|
import Popover from "./Popover.js";
|
|
45
|
-
import List from "./List.js";
|
|
46
55
|
import StandardListItem from "./StandardListItem.js";
|
|
47
56
|
import Icon from "./Icon.js";
|
|
48
57
|
import Button from "./Button.js";
|
|
@@ -56,202 +65,25 @@ import selectCss from "./generated/themes/Select.css.js";
|
|
|
56
65
|
import ResponsivePopoverCommonCss from "./generated/themes/ResponsivePopoverCommon.css.js";
|
|
57
66
|
import ValueStateMessageCss from "./generated/themes/ValueStateMessage.css.js";
|
|
58
67
|
import SelectPopoverCss from "./generated/themes/SelectPopover.css.js";
|
|
68
|
+
import type FormSupport from "./features/InputElementsFormSupport.js";
|
|
69
|
+
import { IFormElement } from "./features/InputElementsFormSupport.js";
|
|
70
|
+
import type ListItemBase from "./ListItemBase.js";
|
|
59
71
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
*
|
|
76
|
-
* <br><br>
|
|
77
|
-
* <b>Note:</b> Use the <code>ui5-option</code> component to define the desired options.
|
|
78
|
-
* @type {sap.ui.webc.main.ISelectOption[]}
|
|
79
|
-
* @slot options
|
|
80
|
-
* @public
|
|
81
|
-
*/
|
|
82
|
-
"default": {
|
|
83
|
-
propertyName: "options",
|
|
84
|
-
type: HTMLElement,
|
|
85
|
-
invalidateOnChildChange: true,
|
|
86
|
-
},
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* Defines the value state message that will be displayed as pop up under the component.
|
|
90
|
-
* <br><br>
|
|
91
|
-
*
|
|
92
|
-
* <b>Note:</b> If not specified, a default text (in the respective language) will be displayed.
|
|
93
|
-
* <br>
|
|
94
|
-
* <b>Note:</b> The <code>valueStateMessage</code> would be displayed,
|
|
95
|
-
* when the component is in <code>Information</code>, <code>Warning</code> or <code>Error</code> value state.
|
|
96
|
-
* @type {HTMLElement[]}
|
|
97
|
-
* @since 1.0.0-rc.9
|
|
98
|
-
* @slot
|
|
99
|
-
* @public
|
|
100
|
-
*/
|
|
101
|
-
valueStateMessage: {
|
|
102
|
-
type: HTMLElement,
|
|
103
|
-
},
|
|
104
|
-
|
|
105
|
-
/**
|
|
106
|
-
* The slot is used to render native <code>input</code> HTML element within Light DOM to enable form submit,
|
|
107
|
-
* when <code>name</code> property is set.
|
|
108
|
-
* @type {HTMLElement[]}
|
|
109
|
-
* @slot
|
|
110
|
-
* @private
|
|
111
|
-
*/
|
|
112
|
-
formSupport: {
|
|
113
|
-
type: HTMLElement,
|
|
114
|
-
},
|
|
115
|
-
},
|
|
116
|
-
properties: /** @lends sap.ui.webc.main.Select.prototype */ {
|
|
117
|
-
|
|
118
|
-
/**
|
|
119
|
-
* Defines whether the component is in disabled state.
|
|
120
|
-
* <br><br>
|
|
121
|
-
* <b>Note:</b> A disabled component is noninteractive.
|
|
122
|
-
*
|
|
123
|
-
* @type {boolean}
|
|
124
|
-
* @defaultvalue false
|
|
125
|
-
* @public
|
|
126
|
-
*/
|
|
127
|
-
disabled: {
|
|
128
|
-
type: Boolean,
|
|
129
|
-
},
|
|
130
|
-
|
|
131
|
-
/**
|
|
132
|
-
* Determines the name with which the component will be submitted in an HTML form.
|
|
133
|
-
* The value of the component will be the value of the currently selected <code>ui5-option</code>.
|
|
134
|
-
*
|
|
135
|
-
* <br><br>
|
|
136
|
-
* <b>Important:</b> For the <code>name</code> property to have effect, you must add the following import to your project:
|
|
137
|
-
* <code>import "@ui5/webcomponents/dist/features/InputElementsFormSupport.js";</code>
|
|
138
|
-
*
|
|
139
|
-
* <br><br>
|
|
140
|
-
* <b>Note:</b> When set, a native <code>input</code> HTML element
|
|
141
|
-
* will be created inside the <code>ui5-select</code> so that it can be submitted as
|
|
142
|
-
* part of an HTML form. Do not use this property unless you need to submit a form.
|
|
143
|
-
*
|
|
144
|
-
* @type {string}
|
|
145
|
-
* @defaultvalue ""
|
|
146
|
-
* @public
|
|
147
|
-
*/
|
|
148
|
-
name: {
|
|
149
|
-
type: String,
|
|
150
|
-
},
|
|
151
|
-
|
|
152
|
-
/**
|
|
153
|
-
* Defines the value state of the component.
|
|
154
|
-
* <br><br>
|
|
155
|
-
* Available options are:
|
|
156
|
-
* <ul>
|
|
157
|
-
* <li><code>None</code></li>
|
|
158
|
-
* <li><code>Error</code></li>
|
|
159
|
-
* <li><code>Warning</code></li>
|
|
160
|
-
* <li><code>Success</code></li>
|
|
161
|
-
* <li><code>Information</code></li>
|
|
162
|
-
* </ul>
|
|
163
|
-
*
|
|
164
|
-
* @type {sap.ui.webc.base.types.ValueState}
|
|
165
|
-
* @defaultvalue "None"
|
|
166
|
-
* @public
|
|
167
|
-
*/
|
|
168
|
-
valueState: {
|
|
169
|
-
type: ValueState,
|
|
170
|
-
defaultValue: ValueState.None,
|
|
171
|
-
},
|
|
172
|
-
|
|
173
|
-
/**
|
|
174
|
-
* Defines whether the component is required.
|
|
175
|
-
*
|
|
176
|
-
* @since 1.0.0-rc.9
|
|
177
|
-
* @type {boolean}
|
|
178
|
-
* @defaultvalue false
|
|
179
|
-
* @public
|
|
180
|
-
*/
|
|
181
|
-
required: {
|
|
182
|
-
type: Boolean,
|
|
183
|
-
},
|
|
184
|
-
|
|
185
|
-
/**
|
|
186
|
-
* Defines the accessible ARIA name of the component.
|
|
187
|
-
*
|
|
188
|
-
* @type {string}
|
|
189
|
-
* @since 1.0.0-rc.9
|
|
190
|
-
* @public
|
|
191
|
-
* @since 1.0.0-rc.15
|
|
192
|
-
*/
|
|
193
|
-
accessibleName: {
|
|
194
|
-
type: String,
|
|
195
|
-
},
|
|
196
|
-
|
|
197
|
-
/**
|
|
198
|
-
* Receives id(or many ids) of the elements that label the select.
|
|
199
|
-
*
|
|
200
|
-
* @type {string}
|
|
201
|
-
* @defaultvalue ""
|
|
202
|
-
* @public
|
|
203
|
-
* @since 1.0.0-rc.15
|
|
204
|
-
*/
|
|
205
|
-
accessibleNameRef: {
|
|
206
|
-
type: String,
|
|
207
|
-
defaultValue: "",
|
|
208
|
-
},
|
|
209
|
-
|
|
210
|
-
_text: {
|
|
211
|
-
type: String,
|
|
212
|
-
noAttribute: true,
|
|
213
|
-
},
|
|
214
|
-
|
|
215
|
-
_iconPressed: {
|
|
216
|
-
type: Boolean,
|
|
217
|
-
noAttribute: true,
|
|
218
|
-
},
|
|
219
|
-
|
|
220
|
-
/**
|
|
221
|
-
* @private
|
|
222
|
-
*/
|
|
223
|
-
opened: {
|
|
224
|
-
type: Boolean,
|
|
225
|
-
},
|
|
226
|
-
|
|
227
|
-
_listWidth: {
|
|
228
|
-
type: Integer,
|
|
229
|
-
defaultValue: 0,
|
|
230
|
-
noAttribute: true,
|
|
231
|
-
},
|
|
232
|
-
|
|
233
|
-
/**
|
|
234
|
-
* @private
|
|
235
|
-
*/
|
|
236
|
-
focused: {
|
|
237
|
-
type: Boolean,
|
|
238
|
-
},
|
|
239
|
-
},
|
|
240
|
-
events: /** @lends sap.ui.webc.main.Select.prototype */ {
|
|
241
|
-
/**
|
|
242
|
-
* Fired when the selected option changes.
|
|
243
|
-
*
|
|
244
|
-
* @event
|
|
245
|
-
* @param {HTMLElement} selectedOption the selected option.
|
|
246
|
-
* @public
|
|
247
|
-
*/
|
|
248
|
-
change: {
|
|
249
|
-
detail: {
|
|
250
|
-
selectedOption: {},
|
|
251
|
-
},
|
|
252
|
-
},
|
|
253
|
-
},
|
|
254
|
-
};
|
|
72
|
+
type SelectChangeEventDetail = {
|
|
73
|
+
selectedOption: Option,
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
interface IOption extends UI5Element {
|
|
77
|
+
selected: boolean,
|
|
78
|
+
_focused: boolean,
|
|
79
|
+
icon?: string | undefined,
|
|
80
|
+
value: string,
|
|
81
|
+
textContent: string | null,
|
|
82
|
+
title: string,
|
|
83
|
+
additionalText: string,
|
|
84
|
+
id: string,
|
|
85
|
+
stableDomRef: string,
|
|
86
|
+
}
|
|
255
87
|
|
|
256
88
|
/**
|
|
257
89
|
* @class
|
|
@@ -282,14 +114,220 @@ const metadata = {
|
|
|
282
114
|
* @alias sap.ui.webc.main.Select
|
|
283
115
|
* @extends sap.ui.webc.base.UI5Element
|
|
284
116
|
* @tagname ui5-select
|
|
285
|
-
* @appenddocs Option
|
|
117
|
+
* @appenddocs sap.ui.webc.main.Option
|
|
286
118
|
* @public
|
|
287
119
|
* @since 0.8.0
|
|
288
120
|
*/
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
121
|
+
@customElement("ui5-select")
|
|
122
|
+
@languageAware
|
|
123
|
+
/**
|
|
124
|
+
* Fired when the selected option changes.
|
|
125
|
+
*
|
|
126
|
+
* @event sap.ui.webc.main.Select#change
|
|
127
|
+
* @param {HTMLElement} selectedOption the selected option.
|
|
128
|
+
* @public
|
|
129
|
+
*/
|
|
130
|
+
@event("change", {
|
|
131
|
+
detail: {
|
|
132
|
+
selectedOption: { type: HTMLElement },
|
|
133
|
+
},
|
|
134
|
+
})
|
|
135
|
+
/**
|
|
136
|
+
* Fired after the component's dropdown menu opens.
|
|
137
|
+
*
|
|
138
|
+
* @event sap.ui.webc.main.Select#open
|
|
139
|
+
* @public
|
|
140
|
+
*/
|
|
141
|
+
@event("open")
|
|
142
|
+
/**
|
|
143
|
+
* Fired after the component's dropdown menu closes.
|
|
144
|
+
*
|
|
145
|
+
* @event sap.ui.webc.main.Select#close
|
|
146
|
+
* @public
|
|
147
|
+
*/
|
|
148
|
+
@event("close")
|
|
149
|
+
class Select extends UI5Element implements IFormElement {
|
|
150
|
+
static i18nBundle: I18nBundle;
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Defines whether the component is in disabled state.
|
|
154
|
+
* <br><br>
|
|
155
|
+
* <b>Note:</b> A disabled component is noninteractive.
|
|
156
|
+
*
|
|
157
|
+
* @type {boolean}
|
|
158
|
+
* @defaultvalue false
|
|
159
|
+
* @name sap.ui.webc.main.Select.disabled
|
|
160
|
+
* @public
|
|
161
|
+
*/
|
|
162
|
+
@property({ type: Boolean })
|
|
163
|
+
disabled!: boolean;
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Determines the name with which the component will be submitted in an HTML form.
|
|
167
|
+
* The value of the component will be the value of the currently selected <code>ui5-option</code>.
|
|
168
|
+
*
|
|
169
|
+
* <br><br>
|
|
170
|
+
* <b>Important:</b> For the <code>name</code> property to have effect, you must add the following import to your project:
|
|
171
|
+
* <code>import "@ui5/webcomponents/dist/features/InputElementsFormSupport.js";</code>
|
|
172
|
+
*
|
|
173
|
+
* <br><br>
|
|
174
|
+
* <b>Note:</b> When set, a native <code>input</code> HTML element
|
|
175
|
+
* will be created inside the <code>ui5-select</code> so that it can be submitted as
|
|
176
|
+
* part of an HTML form. Do not use this property unless you need to submit a form.
|
|
177
|
+
*
|
|
178
|
+
* @type {string}
|
|
179
|
+
* @defaultvalue ""
|
|
180
|
+
* @name sap.ui.webc.main.Select.name
|
|
181
|
+
* @public
|
|
182
|
+
*/
|
|
183
|
+
@property()
|
|
184
|
+
name!: string;
|
|
185
|
+
|
|
186
|
+
/**
|
|
187
|
+
* Defines the value state of the component.
|
|
188
|
+
* <br><br>
|
|
189
|
+
* Available options are:
|
|
190
|
+
* <ul>
|
|
191
|
+
* <li><code>None</code></li>
|
|
192
|
+
* <li><code>Error</code></li>
|
|
193
|
+
* <li><code>Warning</code></li>
|
|
194
|
+
* <li><code>Success</code></li>
|
|
195
|
+
* <li><code>Information</code></li>
|
|
196
|
+
* </ul>
|
|
197
|
+
*
|
|
198
|
+
* @type {sap.ui.webc.base.types.ValueState}
|
|
199
|
+
* @defaultvalue "None"
|
|
200
|
+
* @name sap.ui.webc.main.Select.valueState
|
|
201
|
+
* @public
|
|
202
|
+
*/
|
|
203
|
+
@property({ type: ValueState, defaultValue: ValueState.None })
|
|
204
|
+
valueState!: ValueState;
|
|
205
|
+
|
|
206
|
+
/**
|
|
207
|
+
* Defines whether the component is required.
|
|
208
|
+
*
|
|
209
|
+
* @since 1.0.0-rc.9
|
|
210
|
+
* @type {boolean}
|
|
211
|
+
* @defaultvalue false
|
|
212
|
+
* @name sap.ui.webc.main.Select.required
|
|
213
|
+
* @public
|
|
214
|
+
*/
|
|
215
|
+
@property({ type: Boolean })
|
|
216
|
+
required!: boolean;
|
|
217
|
+
|
|
218
|
+
/**
|
|
219
|
+
* Defines the accessible ARIA name of the component.
|
|
220
|
+
*
|
|
221
|
+
* @type {string}
|
|
222
|
+
* @since 1.0.0-rc.9
|
|
223
|
+
* @public
|
|
224
|
+
* @defaultvalue ""
|
|
225
|
+
* @name sap.ui.webc.main.Select.accessibleName
|
|
226
|
+
* @since 1.0.0-rc.15
|
|
227
|
+
*/
|
|
228
|
+
@property()
|
|
229
|
+
accessibleName!: string;
|
|
230
|
+
|
|
231
|
+
/**
|
|
232
|
+
* Receives id(or many ids) of the elements that label the select.
|
|
233
|
+
*
|
|
234
|
+
* @type {string}
|
|
235
|
+
* @defaultvalue ""
|
|
236
|
+
* @name sap.ui.webc.main.Select.accessibleNameRef
|
|
237
|
+
* @public
|
|
238
|
+
* @since 1.0.0-rc.15
|
|
239
|
+
*/
|
|
240
|
+
@property()
|
|
241
|
+
accessibleNameRef!: string;
|
|
242
|
+
|
|
243
|
+
/**
|
|
244
|
+
* @private
|
|
245
|
+
*/
|
|
246
|
+
@property({ type: String, noAttribute: true })
|
|
247
|
+
_text?: string | null;
|
|
248
|
+
|
|
249
|
+
/**
|
|
250
|
+
* @private
|
|
251
|
+
*/
|
|
252
|
+
@property({ type: Boolean, noAttribute: true })
|
|
253
|
+
_iconPressed!: boolean;
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* @private
|
|
257
|
+
*/
|
|
258
|
+
@property({ type: Boolean })
|
|
259
|
+
opened!: boolean;
|
|
260
|
+
|
|
261
|
+
/**
|
|
262
|
+
* @type {sap.ui.webc.base.types.Integer}
|
|
263
|
+
* @private
|
|
264
|
+
*/
|
|
265
|
+
@property({ validator: Integer, defaultValue: 0, noAttribute: true })
|
|
266
|
+
_listWidth!: number;
|
|
267
|
+
|
|
268
|
+
/**
|
|
269
|
+
* @private
|
|
270
|
+
*/
|
|
271
|
+
@property({ type: Boolean })
|
|
272
|
+
focused!: boolean;
|
|
273
|
+
|
|
274
|
+
_syncedOptions: Array<IOption>;
|
|
275
|
+
_selectedIndex: number;
|
|
276
|
+
_selectedIndexBeforeOpen: number;
|
|
277
|
+
_escapePressed: boolean;
|
|
278
|
+
_lastSelectedOption: Option | null;
|
|
279
|
+
_typedChars: string;
|
|
280
|
+
_typingTimeoutID?: Timeout | number;
|
|
281
|
+
responsivePopover!: ResponsivePopover;
|
|
282
|
+
selectedItem?: string | null;
|
|
283
|
+
popover?: Popover;
|
|
284
|
+
value!: string;
|
|
285
|
+
|
|
286
|
+
/**
|
|
287
|
+
* Defines the component options.
|
|
288
|
+
*
|
|
289
|
+
* <br><br>
|
|
290
|
+
* <b>Note:</b> Only one selected option is allowed.
|
|
291
|
+
* If more than one option is defined as selected, the last one would be considered as the selected one.
|
|
292
|
+
*
|
|
293
|
+
* <br><br>
|
|
294
|
+
* <b>Note:</b> Use the <code>ui5-option</code> component to define the desired options.
|
|
295
|
+
* @type {sap.ui.webc.main.ISelectOption[]}
|
|
296
|
+
* @slot options
|
|
297
|
+
* @name sap.ui.webc.main.Select.prototype.default
|
|
298
|
+
* @public
|
|
299
|
+
*/
|
|
300
|
+
@slot({ "default": true, type: HTMLElement, invalidateOnChildChange: true })
|
|
301
|
+
options!: Array<Option>;
|
|
302
|
+
|
|
303
|
+
/**
|
|
304
|
+
* The slot is used to render native <code>input</code> HTML element within Light DOM to enable form submit,
|
|
305
|
+
* when <code>name</code> property is set.
|
|
306
|
+
* @type {HTMLElement[]}
|
|
307
|
+
* @slot
|
|
308
|
+
* @private
|
|
309
|
+
*/
|
|
310
|
+
@slot()
|
|
311
|
+
formSupport!: Array<HTMLElement>;
|
|
312
|
+
|
|
313
|
+
/**
|
|
314
|
+
* Defines the value state message that will be displayed as pop up under the component.
|
|
315
|
+
* <br><br>
|
|
316
|
+
*
|
|
317
|
+
* <b>Note:</b> If not specified, a default text (in the respective language) will be displayed.
|
|
318
|
+
* <br><br>
|
|
319
|
+
* <b>Note:</b> The <code>valueStateMessage</code> would be displayed,
|
|
320
|
+
* when the component is in <code>Information</code>, <code>Warning</code> or <code>Error</code> value state.
|
|
321
|
+
* <br><br>
|
|
322
|
+
* <b>Note:</b> If the component has <code>suggestionItems</code>,
|
|
323
|
+
* the <code>valueStateMessage</code> would be displayed as part of the same popover, if used on desktop, or dialog - on phone.
|
|
324
|
+
* @type {HTMLElement[]}
|
|
325
|
+
* @name sap.ui.webc.main.Select.prototype.valueStateMessage
|
|
326
|
+
* @slot
|
|
327
|
+
* @public
|
|
328
|
+
*/
|
|
329
|
+
@slot()
|
|
330
|
+
valueStateMessage!: Array<HTMLElement>;
|
|
293
331
|
|
|
294
332
|
static get render() {
|
|
295
333
|
return litRender;
|
|
@@ -320,7 +358,6 @@ class Select extends UI5Element {
|
|
|
320
358
|
this._escapePressed = false;
|
|
321
359
|
this._lastSelectedOption = null;
|
|
322
360
|
this._typedChars = "";
|
|
323
|
-
this._typingTimeoutID = -1;
|
|
324
361
|
}
|
|
325
362
|
|
|
326
363
|
onBeforeRendering() {
|
|
@@ -354,7 +391,7 @@ class Select extends UI5Element {
|
|
|
354
391
|
|
|
355
392
|
async _respPopover() {
|
|
356
393
|
const staticAreaItem = await this.getStaticAreaItemDomRef();
|
|
357
|
-
return staticAreaItem
|
|
394
|
+
return staticAreaItem!.querySelector<ResponsivePopover>("[ui5-responsive-popover]")!;
|
|
358
395
|
}
|
|
359
396
|
|
|
360
397
|
/**
|
|
@@ -385,7 +422,7 @@ class Select extends UI5Element {
|
|
|
385
422
|
this.responsivePopover = await this._respPopover();
|
|
386
423
|
|
|
387
424
|
this.options.forEach(option => {
|
|
388
|
-
option._getRealDomRef = () => this.responsivePopover.querySelector(`*[data-ui5-stable=${option.stableDomRef}]`)
|
|
425
|
+
option._getRealDomRef = () => this.responsivePopover.querySelector<HTMLElement>(`*[data-ui5-stable=${option.stableDomRef}]`)!;
|
|
389
426
|
});
|
|
390
427
|
}
|
|
391
428
|
|
|
@@ -418,7 +455,7 @@ class Select extends UI5Element {
|
|
|
418
455
|
};
|
|
419
456
|
});
|
|
420
457
|
|
|
421
|
-
if (lastSelectedOptionIndex > -1
|
|
458
|
+
if (lastSelectedOptionIndex > -1) {
|
|
422
459
|
syncOpts[lastSelectedOptionIndex].selected = true;
|
|
423
460
|
syncOpts[lastSelectedOptionIndex]._focused = true;
|
|
424
461
|
options[lastSelectedOptionIndex].selected = true;
|
|
@@ -438,52 +475,53 @@ class Select extends UI5Element {
|
|
|
438
475
|
}
|
|
439
476
|
}
|
|
440
477
|
|
|
441
|
-
this._syncedOptions = syncOpts
|
|
478
|
+
this._syncedOptions = syncOpts as Array<IOption>;
|
|
442
479
|
}
|
|
443
480
|
|
|
444
481
|
_enableFormSupport() {
|
|
445
|
-
const
|
|
446
|
-
if (
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
nativeInput.
|
|
482
|
+
const formSupport = getFeature<typeof FormSupport>("FormSupport");
|
|
483
|
+
if (formSupport) {
|
|
484
|
+
formSupport.syncNativeHiddenInput(this, (element: IFormElement, nativeInput: HTMLInputElement) => {
|
|
485
|
+
const selectElement = (element as Select);
|
|
486
|
+
nativeInput.disabled = !!element.disabled;
|
|
487
|
+
nativeInput.value = selectElement._currentlySelectedOption ? selectElement._currentlySelectedOption.value : "";
|
|
450
488
|
});
|
|
451
489
|
} else if (this.name) {
|
|
452
490
|
console.warn(`In order for the "name" property to have effect, you should also: import "@ui5/webcomponents/dist/features/InputElementsFormSupport.js";`); // eslint-disable-line
|
|
453
491
|
}
|
|
454
492
|
}
|
|
455
493
|
|
|
456
|
-
_onkeydown(
|
|
457
|
-
const isTab = (isTabNext(
|
|
494
|
+
_onkeydown(e: KeyboardEvent) {
|
|
495
|
+
const isTab = (isTabNext(e) || isTabPrevious(e));
|
|
458
496
|
|
|
459
497
|
if (isTab && this.responsivePopover && this.responsivePopover.opened) {
|
|
460
498
|
this.responsivePopover.close();
|
|
461
499
|
}
|
|
462
500
|
|
|
463
|
-
if (isShow(
|
|
464
|
-
|
|
501
|
+
if (isShow(e)) {
|
|
502
|
+
e.preventDefault();
|
|
465
503
|
this._toggleRespPopover();
|
|
466
|
-
} else if (isSpace(
|
|
467
|
-
|
|
468
|
-
} else if (isEscape(
|
|
504
|
+
} else if (isSpace(e)) {
|
|
505
|
+
e.preventDefault();
|
|
506
|
+
} else if (isEscape(e) && this._isPickerOpen) {
|
|
469
507
|
this._escapePressed = true;
|
|
470
|
-
} else if (isHome(
|
|
471
|
-
this._handleHomeKey(
|
|
472
|
-
} else if (isEnd(
|
|
473
|
-
this._handleEndKey(
|
|
474
|
-
} else if (isEnter(
|
|
508
|
+
} else if (isHome(e)) {
|
|
509
|
+
this._handleHomeKey(e);
|
|
510
|
+
} else if (isEnd(e)) {
|
|
511
|
+
this._handleEndKey(e);
|
|
512
|
+
} else if (isEnter(e)) {
|
|
475
513
|
this._handleSelectionChange();
|
|
476
|
-
} else if (isUp(
|
|
477
|
-
this._handleArrowNavigation(
|
|
514
|
+
} else if (isUp(e) || isDown(e)) {
|
|
515
|
+
this._handleArrowNavigation(e);
|
|
478
516
|
}
|
|
479
517
|
}
|
|
480
518
|
|
|
481
|
-
_handleKeyboardNavigation(
|
|
482
|
-
if (isEnter(
|
|
519
|
+
_handleKeyboardNavigation(e: KeyboardEvent) {
|
|
520
|
+
if (isEnter(e)) {
|
|
483
521
|
return;
|
|
484
522
|
}
|
|
485
523
|
|
|
486
|
-
const typedCharacter =
|
|
524
|
+
const typedCharacter = e.key.toLowerCase();
|
|
487
525
|
|
|
488
526
|
this._typedChars += typedCharacter;
|
|
489
527
|
|
|
@@ -503,7 +541,7 @@ class Select extends UI5Element {
|
|
|
503
541
|
this._selectTypedItem(text);
|
|
504
542
|
}
|
|
505
543
|
|
|
506
|
-
_selectTypedItem(text) {
|
|
544
|
+
_selectTypedItem(text: string) {
|
|
507
545
|
const currentIndex = this._selectedIndex;
|
|
508
546
|
const itemToSelect = this._searchNextItemByText(text);
|
|
509
547
|
|
|
@@ -518,30 +556,30 @@ class Select extends UI5Element {
|
|
|
518
556
|
}
|
|
519
557
|
}
|
|
520
558
|
|
|
521
|
-
_searchNextItemByText(text) {
|
|
559
|
+
_searchNextItemByText(text: string) {
|
|
522
560
|
let orderedOptions = this._filteredItems.slice(0);
|
|
523
561
|
const optionsAfterSelected = orderedOptions.splice(this._selectedIndex + 1, orderedOptions.length - this._selectedIndex);
|
|
524
562
|
const optionsBeforeSelected = orderedOptions.splice(0, orderedOptions.length - 1);
|
|
525
563
|
|
|
526
564
|
orderedOptions = optionsAfterSelected.concat(optionsBeforeSelected);
|
|
527
565
|
|
|
528
|
-
return orderedOptions.find(option => option.textContent.toLowerCase().startsWith(text));
|
|
566
|
+
return orderedOptions.find(option => (option.textContent || "").toLowerCase().startsWith(text));
|
|
529
567
|
}
|
|
530
568
|
|
|
531
|
-
_handleHomeKey(
|
|
532
|
-
|
|
569
|
+
_handleHomeKey(e: KeyboardEvent) {
|
|
570
|
+
e.preventDefault();
|
|
533
571
|
this._changeSelectedItem(this._selectedIndex, 0);
|
|
534
572
|
}
|
|
535
573
|
|
|
536
|
-
_handleEndKey(
|
|
574
|
+
_handleEndKey(e: KeyboardEvent) {
|
|
537
575
|
const lastIndex = this._filteredItems.length - 1;
|
|
538
576
|
|
|
539
|
-
|
|
577
|
+
e.preventDefault();
|
|
540
578
|
this._changeSelectedItem(this._selectedIndex, lastIndex);
|
|
541
579
|
}
|
|
542
580
|
|
|
543
|
-
_onkeyup(
|
|
544
|
-
if (isSpace(
|
|
581
|
+
_onkeyup(e: KeyboardEvent) {
|
|
582
|
+
if (isSpace(e)) {
|
|
545
583
|
if (this._isPickerOpen) {
|
|
546
584
|
this._handleSelectionChange();
|
|
547
585
|
} else {
|
|
@@ -550,11 +588,11 @@ class Select extends UI5Element {
|
|
|
550
588
|
}
|
|
551
589
|
}
|
|
552
590
|
|
|
553
|
-
_getSelectedItemIndex(item) {
|
|
591
|
+
_getSelectedItemIndex(item: ListItemBase) {
|
|
554
592
|
return this._filteredItems.findIndex(option => `${option._id}-li` === item.id);
|
|
555
593
|
}
|
|
556
594
|
|
|
557
|
-
_select(index) {
|
|
595
|
+
_select(index: number) {
|
|
558
596
|
this._filteredItems[this._selectedIndex].selected = false;
|
|
559
597
|
this._selectedIndex = index;
|
|
560
598
|
this._filteredItems[index].selected = true;
|
|
@@ -564,20 +602,20 @@ class Select extends UI5Element {
|
|
|
564
602
|
* The user clicked on an item from the list
|
|
565
603
|
* @private
|
|
566
604
|
*/
|
|
567
|
-
_handleItemPress(
|
|
568
|
-
const item =
|
|
605
|
+
_handleItemPress(e: CustomEvent<SelectionChangeEventDetail>) {
|
|
606
|
+
const item = e.detail.selectedItems[0];
|
|
569
607
|
const selectedItemIndex = this._getSelectedItemIndex(item);
|
|
570
608
|
|
|
571
609
|
this._handleSelectionChange(selectedItemIndex);
|
|
572
610
|
}
|
|
573
611
|
|
|
574
|
-
_itemMousedown(
|
|
612
|
+
_itemMousedown(e: MouseEvent) {
|
|
575
613
|
// prevent actual focus of items
|
|
576
|
-
|
|
614
|
+
e.preventDefault();
|
|
577
615
|
}
|
|
578
616
|
|
|
579
|
-
_onclick(
|
|
580
|
-
this.getFocusDomRef()
|
|
617
|
+
_onclick() {
|
|
618
|
+
this.getFocusDomRef()!.focus();
|
|
581
619
|
this._toggleRespPopover();
|
|
582
620
|
}
|
|
583
621
|
|
|
@@ -591,12 +629,12 @@ class Select extends UI5Element {
|
|
|
591
629
|
this._toggleRespPopover();
|
|
592
630
|
}
|
|
593
631
|
|
|
594
|
-
_handleArrowNavigation(
|
|
632
|
+
_handleArrowNavigation(e: KeyboardEvent) {
|
|
595
633
|
let nextIndex = -1;
|
|
596
634
|
const currentIndex = this._selectedIndex;
|
|
597
|
-
const isDownKey = isDown(
|
|
635
|
+
const isDownKey = isDown(e);
|
|
598
636
|
|
|
599
|
-
|
|
637
|
+
e.preventDefault();
|
|
600
638
|
if (isDownKey) {
|
|
601
639
|
nextIndex = this._getNextOptionIndex();
|
|
602
640
|
} else {
|
|
@@ -613,7 +651,7 @@ class Select extends UI5Element {
|
|
|
613
651
|
}
|
|
614
652
|
}
|
|
615
653
|
|
|
616
|
-
_changeSelectedItem(oldIndex, newIndex) {
|
|
654
|
+
_changeSelectedItem(oldIndex: number, newIndex: number) {
|
|
617
655
|
const options = this._filteredItems;
|
|
618
656
|
|
|
619
657
|
options[oldIndex].selected = false;
|
|
@@ -645,6 +683,7 @@ class Select extends UI5Element {
|
|
|
645
683
|
|
|
646
684
|
_afterOpen() {
|
|
647
685
|
this.opened = true;
|
|
686
|
+
this.fireEvent<CustomEvent>("open");
|
|
648
687
|
}
|
|
649
688
|
|
|
650
689
|
_afterClose() {
|
|
@@ -659,10 +698,11 @@ class Select extends UI5Element {
|
|
|
659
698
|
this._fireChangeEvent(this._filteredItems[this._selectedIndex]);
|
|
660
699
|
this._lastSelectedOption = this._filteredItems[this._selectedIndex];
|
|
661
700
|
}
|
|
701
|
+
this.fireEvent<CustomEvent>("close");
|
|
662
702
|
}
|
|
663
703
|
|
|
664
|
-
_fireChangeEvent(selectedOption) {
|
|
665
|
-
this.fireEvent("change", { selectedOption });
|
|
704
|
+
_fireChangeEvent(selectedOption: Option) {
|
|
705
|
+
this.fireEvent<SelectChangeEventDetail>("change", { selectedOption });
|
|
666
706
|
|
|
667
707
|
// Angular two way data binding
|
|
668
708
|
this.selectedItem = selectedOption.textContent;
|
|
@@ -700,11 +740,11 @@ class Select extends UI5Element {
|
|
|
700
740
|
}
|
|
701
741
|
|
|
702
742
|
get valueStateDefaultText() {
|
|
703
|
-
return this.valueStateTextMappings[this.valueState];
|
|
743
|
+
return this.valueState !== ValueState.None ? this.valueStateTextMappings[this.valueState] : "";
|
|
704
744
|
}
|
|
705
745
|
|
|
706
746
|
get valueStateTypeText() {
|
|
707
|
-
return this.valueStateTypeMappings[this.valueState];
|
|
747
|
+
return this.valueState !== ValueState.None ? this.valueStateTypeMappings[this.valueState] : "";
|
|
708
748
|
}
|
|
709
749
|
|
|
710
750
|
get hasValueState() {
|
|
@@ -723,15 +763,11 @@ class Select extends UI5Element {
|
|
|
723
763
|
return Select.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);
|
|
724
764
|
}
|
|
725
765
|
|
|
726
|
-
get _currentSelectedItem() {
|
|
727
|
-
return this.shadowRoot.querySelector(`#${this._filteredItems[this._selectedIndex]._id}-li`);
|
|
728
|
-
}
|
|
729
|
-
|
|
730
766
|
get _currentlySelectedOption() {
|
|
731
767
|
return this._filteredItems[this._selectedIndex];
|
|
732
768
|
}
|
|
733
769
|
|
|
734
|
-
get
|
|
770
|
+
get _effectiveTabIndex() {
|
|
735
771
|
return this.disabled
|
|
736
772
|
|| (this.responsivePopover // Handles focus on Tab/Shift + Tab when the popover is opened
|
|
737
773
|
&& this.responsivePopover.opened) ? "-1" : "0";
|
|
@@ -790,7 +826,7 @@ class Select extends UI5Element {
|
|
|
790
826
|
}
|
|
791
827
|
|
|
792
828
|
get shouldDisplayDefaultValueStateMessage() {
|
|
793
|
-
return !this.
|
|
829
|
+
return !this.valueStateMessageText.length && this.hasValueStateText;
|
|
794
830
|
}
|
|
795
831
|
|
|
796
832
|
get hasValueStateText() {
|
|
@@ -820,14 +856,14 @@ class Select extends UI5Element {
|
|
|
820
856
|
const itemPositionText = Select.i18nBundle.getText(LIST_ITEM_POSITION, this._selectedIndex + 1, optionsCount);
|
|
821
857
|
|
|
822
858
|
if (this.focused && this._currentlySelectedOption) {
|
|
823
|
-
text = `${this._currentlySelectedOption.textContent} ${this._isPickerOpen ? itemPositionText : ""}`;
|
|
859
|
+
text = `${this._currentlySelectedOption.textContent as string} ${this._isPickerOpen ? itemPositionText : ""}`;
|
|
824
860
|
|
|
825
|
-
announce(text,
|
|
861
|
+
announce(text, InvisibleMessageMode.Polite);
|
|
826
862
|
}
|
|
827
863
|
}
|
|
828
864
|
|
|
829
865
|
async openValueStatePopover() {
|
|
830
|
-
this.popover = await this._getPopover();
|
|
866
|
+
this.popover = await this._getPopover() as Popover;
|
|
831
867
|
if (this.popover) {
|
|
832
868
|
this.popover.showAt(this);
|
|
833
869
|
}
|
|
@@ -837,7 +873,7 @@ class Select extends UI5Element {
|
|
|
837
873
|
this.popover && this.popover.close();
|
|
838
874
|
}
|
|
839
875
|
|
|
840
|
-
toggleValueStatePopover(open) {
|
|
876
|
+
toggleValueStatePopover(open: boolean) {
|
|
841
877
|
if (open) {
|
|
842
878
|
this.openValueStatePopover();
|
|
843
879
|
} else {
|
|
@@ -851,7 +887,7 @@ class Select extends UI5Element {
|
|
|
851
887
|
|
|
852
888
|
async _getPopover() {
|
|
853
889
|
const staticAreaItem = await this.getStaticAreaItemDomRef();
|
|
854
|
-
return staticAreaItem
|
|
890
|
+
return staticAreaItem!.querySelector<Popover>("[ui5-popover]");
|
|
855
891
|
}
|
|
856
892
|
|
|
857
893
|
static get dependencies() {
|
|
@@ -875,3 +911,7 @@ class Select extends UI5Element {
|
|
|
875
911
|
Select.define();
|
|
876
912
|
|
|
877
913
|
export default Select;
|
|
914
|
+
export type {
|
|
915
|
+
SelectChangeEventDetail,
|
|
916
|
+
IOption,
|
|
917
|
+
};
|