@ui5/webcomponents 1.24.0-rc.4 → 2.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +347 -0
- package/README.md +1 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/Badge.d.ts +1 -0
- package/dist/Badge.js +6 -0
- package/dist/Badge.js.map +1 -1
- package/dist/Bar.d.ts +73 -0
- package/dist/Bar.js +113 -0
- package/dist/Bar.js.map +1 -0
- package/dist/Breadcrumbs.d.ts +5 -5
- package/dist/Breadcrumbs.js +10 -14
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/BusyIndicator.d.ts +1 -1
- package/dist/BusyIndicator.js +5 -1
- package/dist/BusyIndicator.js.map +1 -1
- package/dist/Calendar.d.ts +5 -5
- package/dist/Calendar.js +7 -7
- package/dist/Calendar.js.map +1 -1
- package/dist/Card.d.ts +3 -13
- package/dist/Card.js +1 -1
- package/dist/Card.js.map +1 -1
- package/dist/CardHeader.d.ts +6 -8
- package/dist/CardHeader.js +11 -7
- package/dist/CardHeader.js.map +1 -1
- package/dist/Carousel.d.ts +17 -2
- package/dist/Carousel.js +17 -4
- package/dist/Carousel.js.map +1 -1
- package/dist/CheckBox.d.ts +1 -0
- package/dist/CheckBox.js +5 -0
- package/dist/CheckBox.js.map +1 -1
- package/dist/ColorPalette.d.ts +7 -7
- package/dist/ColorPalette.js +14 -17
- package/dist/ColorPalette.js.map +1 -1
- package/dist/ColorPalettePopover.d.ts +0 -16
- package/dist/ColorPalettePopover.js +0 -23
- package/dist/ColorPalettePopover.js.map +1 -1
- package/dist/ColorPicker.d.ts +3 -3
- package/dist/ColorPicker.js +23 -23
- package/dist/ColorPicker.js.map +1 -1
- package/dist/ComboBox.d.ts +1 -0
- package/dist/ComboBox.js +11 -10
- package/dist/ComboBox.js.map +1 -1
- package/dist/DatePicker.d.ts +3 -3
- package/dist/DatePicker.js +7 -10
- package/dist/DatePicker.js.map +1 -1
- package/dist/DateRangePicker.d.ts +2 -2
- package/dist/DateRangePicker.js +2 -2
- package/dist/DateRangePicker.js.map +1 -1
- package/dist/DateTimePicker.d.ts +3 -3
- package/dist/DateTimePicker.js +6 -10
- package/dist/DateTimePicker.js.map +1 -1
- package/dist/Dialog.d.ts +0 -1
- package/dist/Dialog.js +1 -3
- package/dist/Dialog.js.map +1 -1
- package/dist/FileUploader.d.ts +3 -3
- package/dist/FileUploader.js +11 -11
- package/dist/FileUploader.js.map +1 -1
- package/dist/Input.d.ts +2 -1
- package/dist/Input.js +12 -8
- package/dist/Input.js.map +1 -1
- package/dist/List.d.ts +18 -18
- package/dist/List.js +37 -37
- package/dist/List.js.map +1 -1
- package/dist/ListItem.d.ts +3 -3
- package/dist/ListItem.js +15 -15
- package/dist/ListItem.js.map +1 -1
- package/dist/Menu.d.ts +2 -1
- package/dist/Menu.js +11 -9
- package/dist/Menu.js.map +1 -1
- package/dist/MultiComboBox.d.ts +14 -14
- package/dist/MultiComboBox.js +63 -59
- package/dist/MultiComboBox.js.map +1 -1
- package/dist/MultiInput.d.ts +1 -0
- package/dist/MultiInput.js +5 -2
- package/dist/MultiInput.js.map +1 -1
- package/dist/NavigationMenu.js +5 -5
- package/dist/NavigationMenu.js.map +1 -1
- package/dist/Option.d.ts +0 -9
- package/dist/Option.js +0 -3
- package/dist/Option.js.map +1 -1
- package/dist/Popover.d.ts +9 -12
- package/dist/Popover.js +50 -49
- package/dist/Popover.js.map +1 -1
- package/dist/Popup.d.ts +2 -4
- package/dist/Popup.js +38 -22
- package/dist/Popup.js.map +1 -1
- package/dist/ProgressIndicator.d.ts +0 -7
- package/dist/ProgressIndicator.js +0 -6
- package/dist/ProgressIndicator.js.map +1 -1
- package/dist/RadioButton.d.ts +1 -0
- package/dist/RadioButton.js +5 -0
- package/dist/RadioButton.js.map +1 -1
- package/dist/ResponsivePopover.js +0 -6
- package/dist/ResponsivePopover.js.map +1 -1
- package/dist/Select.d.ts +5 -7
- package/dist/Select.js +17 -24
- package/dist/Select.js.map +1 -1
- package/dist/SliderBase.d.ts +1 -1
- package/dist/SliderBase.js +1 -1
- package/dist/SliderBase.js.map +1 -1
- package/dist/Tab.d.ts +23 -11
- package/dist/Tab.js +32 -28
- package/dist/Tab.js.map +1 -1
- package/dist/TabContainer.d.ts +41 -84
- package/dist/TabContainer.js +98 -161
- package/dist/TabContainer.js.map +1 -1
- package/dist/TabSeparator.d.ts +12 -7
- package/dist/TabSeparator.js +10 -12
- package/dist/TabSeparator.js.map +1 -1
- package/dist/TextArea.d.ts +4 -3
- package/dist/TextArea.js +8 -11
- package/dist/TextArea.js.map +1 -1
- package/dist/TimePickerBase.d.ts +9 -9
- package/dist/TimePickerBase.js +24 -24
- package/dist/TimePickerBase.js.map +1 -1
- package/dist/Toast.js +0 -2
- package/dist/Toast.js.map +1 -1
- package/dist/Tokenizer.d.ts +1 -0
- package/dist/Tokenizer.js +8 -6
- package/dist/Tokenizer.js.map +1 -1
- package/dist/Toolbar.d.ts +6 -7
- package/dist/Toolbar.js +14 -23
- package/dist/Toolbar.js.map +1 -1
- package/dist/ToolbarButton.d.ts +0 -1
- package/dist/ToolbarButton.js +1 -3
- package/dist/ToolbarButton.js.map +1 -1
- package/dist/ToolbarRegistry.d.ts +1 -2
- package/dist/ToolbarRegistry.js +1 -4
- package/dist/ToolbarRegistry.js.map +1 -1
- package/dist/Tree.d.ts +4 -4
- package/dist/Tree.js +6 -6
- package/dist/Tree.js.map +1 -1
- package/dist/TreeItemBase.d.ts +1 -1
- package/dist/TreeItemBase.js.map +1 -1
- package/dist/bundle.common.bootstrap.js.map +1 -1
- package/dist/bundle.esm.js.map +1 -1
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/AvatarGroup.css +1 -1
- package/dist/css/themes/Badge.css +1 -1
- package/dist/css/themes/Bar.css +1 -0
- package/dist/css/themes/Breadcrumbs.css +1 -1
- package/dist/css/themes/BusyIndicator.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/Calendar.css +1 -1
- package/dist/css/themes/CalendarHeader.css +1 -1
- package/dist/css/themes/CalendarLegend.css +1 -1
- package/dist/css/themes/CalendarLegendItem.css +1 -1
- package/dist/css/themes/Card.css +1 -1
- package/dist/css/themes/CardHeader.css +1 -1
- package/dist/css/themes/Carousel.css +1 -1
- package/dist/css/themes/CheckBox.css +1 -1
- package/dist/css/themes/ColorPalette.css +1 -1
- package/dist/css/themes/ColorPaletteItem.css +1 -1
- package/dist/css/themes/ColorPalettePopover.css +1 -1
- package/dist/css/themes/ColorPicker.css +1 -1
- package/dist/css/themes/ComboBox.css +1 -1
- package/dist/css/themes/CustomListItem.css +1 -1
- package/dist/css/themes/DatePicker.css +1 -1
- package/dist/css/themes/DateTimePickerPopover.css +1 -1
- package/dist/css/themes/DayPicker.css +1 -1
- package/dist/css/themes/Dialog.css +1 -1
- package/dist/css/themes/FileUploader.css +1 -1
- package/dist/css/themes/GroupHeaderListItem.css +1 -1
- package/dist/css/themes/GrowingButton.css +1 -1
- package/dist/css/themes/Icon.css +1 -1
- package/dist/css/themes/Input.css +1 -1
- package/dist/css/themes/InputIcon.css +1 -1
- package/dist/css/themes/InputSharedStyles.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/List.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/ListItemBase.css +1 -1
- package/dist/css/themes/Menu.css +1 -1
- package/dist/css/themes/MenuListItem.css +1 -1
- package/dist/css/themes/MessageStrip.css +1 -1
- package/dist/css/themes/MonthPicker.css +1 -1
- package/dist/css/themes/MultiComboBox.css +1 -1
- package/dist/css/themes/MultiComboBoxPopover.css +1 -1
- package/dist/css/themes/MultiInput.css +1 -1
- package/dist/css/themes/NavigationMenu.css +1 -1
- package/dist/css/themes/Panel.css +1 -1
- package/dist/css/themes/Popover.css +1 -1
- package/dist/css/themes/Popup.css +1 -1
- package/dist/css/themes/PopupBlockLayer.css +1 -0
- package/dist/css/themes/PopupsCommon.css +1 -1
- package/dist/css/themes/ProgressIndicator.css +1 -1
- package/dist/css/themes/RadioButton.css +1 -1
- package/dist/css/themes/RangeSlider.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/ResponsivePopover.css +1 -1
- package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
- package/dist/css/themes/SegmentedButton.css +1 -1
- package/dist/css/themes/Select.css +1 -1
- package/dist/css/themes/SelectMenu.css +1 -1
- package/dist/css/themes/SelectPopover.css +1 -1
- package/dist/css/themes/SliderBase.css +1 -1
- package/dist/css/themes/SplitButton.css +1 -1
- package/dist/css/themes/StepInput.css +1 -1
- package/dist/css/themes/Switch.css +1 -1
- package/dist/css/themes/TabContainer.css +1 -1
- package/dist/css/themes/TabInOverflow.css +1 -1
- package/dist/css/themes/TabInStrip.css +1 -1
- package/dist/css/themes/TabSemanticIcon.css +1 -1
- package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
- package/dist/css/themes/TabSeparatorInStrip.css +1 -1
- package/dist/css/themes/Table.css +1 -1
- package/dist/css/themes/TableCell.css +1 -1
- package/dist/css/themes/TableColumn.css +1 -1
- package/dist/css/themes/TableGroupRow.css +1 -1
- package/dist/css/themes/TableRow.css +1 -1
- package/dist/css/themes/TextArea.css +1 -1
- package/dist/css/themes/TimePicker.css +1 -1
- package/dist/css/themes/Toast.css +1 -1
- package/dist/css/themes/ToggleButton.css +1 -1
- package/dist/css/themes/Token.css +1 -1
- package/dist/css/themes/Tokenizer.css +1 -1
- package/dist/css/themes/TokenizerPopover.css +1 -1
- package/dist/css/themes/Toolbar.css +1 -1
- package/dist/css/themes/ToolbarPopover.css +1 -1
- package/dist/css/themes/TreeItem.css +1 -1
- package/dist/css/themes/ValueStateMessage.css +1 -1
- package/dist/css/themes/WheelSlider.css +1 -1
- package/dist/css/themes/YearPicker.css +1 -1
- package/dist/css/themes/sap_belize/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_belize_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_belize_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_dark_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +431 -481
- package/dist/custom-elements.json +281 -304
- package/dist/features/InputSuggestions.d.ts +2 -2
- package/dist/features/InputSuggestions.js +8 -7
- package/dist/features/InputSuggestions.js.map +1 -1
- package/dist/generated/assets/themes/sap_belize/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_belize_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_belize_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_dark_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/json-imports/Themes.js +1 -1
- package/dist/generated/json-imports/Themes.js.map +1 -1
- package/dist/generated/json-imports/i18n.js +1 -1
- package/dist/generated/json-imports/i18n.js.map +1 -1
- package/dist/generated/templates/BarTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/BarTemplate.lit.js +5 -0
- package/dist/generated/templates/BarTemplate.lit.js.map +1 -0
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +2 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CardHeaderTemplate.lit.js +2 -2
- package/dist/generated/templates/CardHeaderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CarouselTemplate.lit.js +1 -1
- package/dist/generated/templates/CarouselTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +2 -1
- package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPaletteTemplate.lit.js +2 -1
- package/dist/generated/templates/ColorPaletteTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ColorPickerTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ComboBoxTemplate.lit.js +21 -2
- package/dist/generated/templates/ComboBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/CustomListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/CustomListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerInputTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/DatePickerInputTemplate.lit.js +7 -0
- package/dist/generated/templates/DatePickerInputTemplate.lit.js.map +1 -0
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js +5 -2
- package/dist/generated/templates/DatePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/DateTimePickerTemplate.lit.d.ts +4 -0
- package/dist/generated/templates/DateTimePickerTemplate.lit.js +13 -0
- package/dist/generated/templates/DateTimePickerTemplate.lit.js.map +1 -0
- package/dist/generated/templates/DialogTemplate.lit.js +1 -1
- package/dist/generated/templates/DialogTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/FileUploaderTemplate.lit.js +6 -2
- package/dist/generated/templates/FileUploaderTemplate.lit.js.map +1 -1
- package/dist/generated/templates/InputPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/InputPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/InputTemplate.lit.js +22 -2
- package/dist/generated/templates/InputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListTemplate.lit.js +2 -2
- package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MenuListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/MenuListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MenuTemplate.lit.js +2 -2
- package/dist/generated/templates/MenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +4 -4
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js +28 -2
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js.map +1 -1
- package/dist/generated/templates/MultiInputTemplate.lit.js +22 -2
- package/dist/generated/templates/MultiInputTemplate.lit.js.map +1 -1
- package/dist/generated/templates/NavigationMenuTemplate.lit.js +1 -1
- package/dist/generated/templates/NavigationMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/PopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +2 -2
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/PopupTemplate.lit.js +1 -1
- package/dist/generated/templates/PopupTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +1 -1
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectMenuTemplate.lit.js +1 -1
- package/dist/generated/templates/SelectMenuTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/SelectPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SelectTemplate.lit.js +18 -2
- package/dist/generated/templates/SelectTemplate.lit.js.map +1 -1
- package/dist/generated/templates/StandardListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/StandardListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabContainerTemplate.lit.js +2 -1
- package/dist/generated/templates/TabContainerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabInOverflowTemplate.lit.js +1 -1
- package/dist/generated/templates/TabInOverflowTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabInStripTemplate.lit.js +1 -1
- package/dist/generated/templates/TabInStripTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +1 -1
- package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TableTemplate.lit.js +1 -1
- package/dist/generated/templates/TableTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TextAreaTemplate.lit.js +6 -2
- package/dist/generated/templates/TextAreaTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TimePickerTemplate.lit.js +2 -1
- package/dist/generated/templates/TimePickerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TokenizerTemplate.lit.js +10 -2
- package/dist/generated/templates/TokenizerTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ToolbarPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ToolbarTemplate.lit.js +2 -1
- package/dist/generated/templates/ToolbarTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeItemBaseTemplate.lit.js +2 -2
- package/dist/generated/templates/TreeItemBaseTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeItemCustomTemplate.lit.js +2 -2
- package/dist/generated/templates/TreeItemCustomTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeItemTemplate.lit.js +2 -2
- package/dist/generated/templates/TreeItemTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TreeTemplate.lit.js +1 -1
- package/dist/generated/templates/TreeTemplate.lit.js.map +1 -1
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Avatar.css.js.map +1 -1
- package/dist/generated/themes/AvatarGroup.css.js +1 -1
- package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
- package/dist/generated/themes/Badge.css.js +1 -1
- package/dist/generated/themes/Badge.css.js.map +1 -1
- package/dist/generated/themes/Bar.css.js +9 -0
- package/dist/generated/themes/Bar.css.js.map +1 -0
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/BusyIndicator.css.js +1 -1
- package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/Button.css.js.map +1 -1
- package/dist/generated/themes/Calendar.css.js +1 -1
- package/dist/generated/themes/Calendar.css.js.map +1 -1
- package/dist/generated/themes/CalendarHeader.css.js +1 -1
- package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegend.css.js +1 -1
- package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
- package/dist/generated/themes/Card.css.js +1 -1
- package/dist/generated/themes/Card.css.js.map +1 -1
- package/dist/generated/themes/CardHeader.css.js +1 -1
- package/dist/generated/themes/CardHeader.css.js.map +1 -1
- package/dist/generated/themes/Carousel.css.js +1 -1
- package/dist/generated/themes/Carousel.css.js.map +1 -1
- package/dist/generated/themes/CheckBox.css.js +1 -1
- package/dist/generated/themes/CheckBox.css.js.map +1 -1
- package/dist/generated/themes/ColorPalette.css.js +1 -1
- package/dist/generated/themes/ColorPalette.css.js.map +1 -1
- package/dist/generated/themes/{ColorPaletteStaticArea.css.js → ColorPaletteDialog.css.js} +2 -2
- package/dist/generated/themes/ColorPaletteDialog.css.js.map +1 -0
- package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
- package/dist/generated/themes/ColorPicker.css.js +1 -1
- package/dist/generated/themes/ColorPicker.css.js.map +1 -1
- package/dist/generated/themes/ComboBox.css.js +1 -1
- package/dist/generated/themes/ComboBox.css.js.map +1 -1
- package/dist/generated/themes/CustomListItem.css.js +1 -1
- package/dist/generated/themes/CustomListItem.css.js.map +1 -1
- package/dist/generated/themes/DatePicker.css.js +1 -1
- package/dist/generated/themes/DatePicker.css.js.map +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
- package/dist/generated/themes/DayPicker.css.js +1 -1
- package/dist/generated/themes/DayPicker.css.js.map +1 -1
- package/dist/generated/themes/Dialog.css.js +1 -1
- package/dist/generated/themes/Dialog.css.js.map +1 -1
- package/dist/generated/themes/FileUploader.css.js +1 -1
- package/dist/generated/themes/FileUploader.css.js.map +1 -1
- package/dist/generated/themes/GroupHeaderListItem.css.js +1 -1
- package/dist/generated/themes/GroupHeaderListItem.css.js.map +1 -1
- package/dist/generated/themes/GrowingButton.css.js +1 -1
- package/dist/generated/themes/GrowingButton.css.js.map +1 -1
- package/dist/generated/themes/Icon.css.js +1 -1
- package/dist/generated/themes/Icon.css.js.map +1 -1
- package/dist/generated/themes/Input.css.js +1 -1
- package/dist/generated/themes/Input.css.js.map +1 -1
- package/dist/generated/themes/InputIcon.css.js +1 -1
- package/dist/generated/themes/InputIcon.css.js.map +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/Link.css.js.map +1 -1
- package/dist/generated/themes/List.css.js +1 -1
- package/dist/generated/themes/List.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/ListItemBase.css.js +1 -1
- package/dist/generated/themes/ListItemBase.css.js.map +1 -1
- package/dist/generated/themes/Menu.css.js +1 -1
- package/dist/generated/themes/Menu.css.js.map +1 -1
- package/dist/generated/themes/MenuListItem.css.js +1 -1
- package/dist/generated/themes/MenuListItem.css.js.map +1 -1
- package/dist/generated/themes/MessageStrip.css.js +1 -1
- package/dist/generated/themes/MessageStrip.css.js.map +1 -1
- package/dist/generated/themes/MonthPicker.css.js +1 -1
- package/dist/generated/themes/MonthPicker.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBox.css.js +1 -1
- package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
- package/dist/generated/themes/MultiInput.css.js +1 -1
- package/dist/generated/themes/MultiInput.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenu.css.js +1 -1
- package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
- package/dist/generated/themes/Panel.css.js +1 -1
- package/dist/generated/themes/Panel.css.js.map +1 -1
- package/dist/generated/themes/Popover.css.js +1 -1
- package/dist/generated/themes/Popover.css.js.map +1 -1
- package/dist/generated/themes/Popup.css.js +1 -1
- package/dist/generated/themes/Popup.css.js.map +1 -1
- package/dist/generated/themes/PopupBlockLayer.css.d.ts +3 -0
- package/dist/generated/themes/{PopupStaticAreaStyles.css.js → PopupBlockLayer.css.js} +2 -2
- package/dist/generated/themes/PopupBlockLayer.css.js.map +1 -0
- package/dist/generated/themes/PopupsCommon.css.js +1 -1
- package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
- package/dist/generated/themes/RadioButton.css.js +1 -1
- package/dist/generated/themes/RadioButton.css.js.map +1 -1
- package/dist/generated/themes/RangeSlider.css.js +1 -1
- package/dist/generated/themes/RangeSlider.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButton.css.js +1 -1
- package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
- package/dist/generated/themes/Select.css.js +1 -1
- package/dist/generated/themes/Select.css.js.map +1 -1
- package/dist/generated/themes/SelectMenu.css.js +1 -1
- package/dist/generated/themes/SelectMenu.css.js.map +1 -1
- package/dist/generated/themes/SelectPopover.css.js +1 -1
- package/dist/generated/themes/SelectPopover.css.js.map +1 -1
- package/dist/generated/themes/SliderBase.css.js +1 -1
- package/dist/generated/themes/SliderBase.css.js.map +1 -1
- package/dist/generated/themes/SplitButton.css.js +1 -1
- package/dist/generated/themes/SplitButton.css.js.map +1 -1
- package/dist/generated/themes/StepInput.css.js +1 -1
- package/dist/generated/themes/StepInput.css.js.map +1 -1
- package/dist/generated/themes/Switch.css.js +1 -1
- package/dist/generated/themes/Switch.css.js.map +1 -1
- package/dist/generated/themes/TabContainer.css.js +1 -1
- package/dist/generated/themes/TabContainer.css.js.map +1 -1
- package/dist/generated/themes/TabInOverflow.css.js +1 -1
- package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
- package/dist/generated/themes/TabInStrip.css.js +1 -1
- package/dist/generated/themes/TabInStrip.css.js.map +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
- package/dist/generated/themes/TabSeparatorInStrip.css.js +1 -1
- package/dist/generated/themes/TabSeparatorInStrip.css.js.map +1 -1
- package/dist/generated/themes/Table.css.js +1 -1
- package/dist/generated/themes/Table.css.js.map +1 -1
- package/dist/generated/themes/TableCell.css.js +1 -1
- package/dist/generated/themes/TableCell.css.js.map +1 -1
- package/dist/generated/themes/TableColumn.css.js +1 -1
- package/dist/generated/themes/TableColumn.css.js.map +1 -1
- package/dist/generated/themes/TableGroupRow.css.js +1 -1
- package/dist/generated/themes/TableGroupRow.css.js.map +1 -1
- package/dist/generated/themes/TableRow.css.js +1 -1
- package/dist/generated/themes/TableRow.css.js.map +1 -1
- package/dist/generated/themes/TextArea.css.js +1 -1
- package/dist/generated/themes/TextArea.css.js.map +1 -1
- package/dist/generated/themes/TimePicker.css.js +1 -1
- package/dist/generated/themes/TimePicker.css.js.map +1 -1
- package/dist/generated/themes/Toast.css.js +1 -1
- package/dist/generated/themes/Toast.css.js.map +1 -1
- package/dist/generated/themes/ToggleButton.css.js +1 -1
- package/dist/generated/themes/ToggleButton.css.js.map +1 -1
- package/dist/generated/themes/Token.css.js +1 -1
- package/dist/generated/themes/Token.css.js.map +1 -1
- package/dist/generated/themes/Tokenizer.css.js +1 -1
- package/dist/generated/themes/Tokenizer.css.js.map +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
- package/dist/generated/themes/Toolbar.css.js +1 -1
- package/dist/generated/themes/Toolbar.css.js.map +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
- package/dist/generated/themes/TreeItem.css.js +1 -1
- package/dist/generated/themes/TreeItem.css.js.map +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
- package/dist/generated/themes/WheelSlider.css.js +1 -1
- package/dist/generated/themes/WheelSlider.css.js.map +1 -1
- package/dist/generated/themes/YearPicker.css.js +1 -1
- package/dist/generated/themes/YearPicker.css.js.map +1 -1
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
- package/dist/types/BarDesign.d.ts +27 -0
- package/dist/types/BarDesign.js +29 -0
- package/dist/types/BarDesign.js.map +1 -0
- package/dist/types/{BreadcrumbsSeparatorStyle.d.ts → BreadcrumbsSeparator.d.ts} +3 -3
- package/dist/types/BreadcrumbsSeparator.js +39 -0
- package/dist/types/BreadcrumbsSeparator.js.map +1 -0
- package/dist/types/BusyIndicatorSize.d.ts +3 -3
- package/dist/types/BusyIndicatorSize.js +3 -3
- package/dist/types/BusyIndicatorSize.js.map +1 -1
- package/dist/types/{CarouselPageIndicatorStyle.d.ts → CarouselPageIndicatorType.d.ts} +3 -3
- package/dist/types/{CarouselPageIndicatorStyle.js → CarouselPageIndicatorType.js} +8 -8
- package/dist/types/CarouselPageIndicatorType.js.map +1 -0
- package/dist/types/{ListMode.d.ts → ListSelectionMode.d.ts} +8 -8
- package/dist/types/{ListMode.js → ListSelectionMode.js} +13 -13
- package/dist/types/ListSelectionMode.js.map +1 -0
- package/dist/types/{TabsOverflowMode.d.ts → OverflowMode.d.ts} +2 -2
- package/dist/types/{TabsOverflowMode.js → OverflowMode.js} +7 -7
- package/dist/types/OverflowMode.js.map +1 -0
- package/dist/types/PopoverHorizontalAlign.d.ts +4 -4
- package/dist/types/PopoverHorizontalAlign.js +4 -4
- package/dist/types/PopoverHorizontalAlign.js.map +1 -1
- package/dist/types/{PopoverPlacementType.d.ts → PopoverPlacement.d.ts} +7 -7
- package/dist/types/PopoverPlacement.js +29 -0
- package/dist/types/PopoverPlacement.js.map +1 -0
- package/dist/vscode.html-custom-data.json +76 -73
- package/dist/web-types.json +144 -121
- package/package-scripts.cjs +0 -1
- package/package.json +9 -9
- package/src/Bar.hbs +16 -0
- package/src/Breadcrumbs.hbs +3 -1
- package/src/BreadcrumbsPopover.hbs +3 -3
- package/src/CardHeader.hbs +3 -3
- package/src/Carousel.hbs +1 -0
- package/src/ColorPalette.hbs +5 -3
- package/src/ColorPaletteDialog.hbs +2 -0
- package/src/ColorPalettePopover.hbs +1 -1
- package/src/ColorPicker.hbs +3 -3
- package/src/ComboBox.hbs +2 -0
- package/src/ComboBoxPopover.hbs +5 -6
- package/src/DatePicker.hbs +2 -45
- package/src/DatePickerInput.hbs +45 -0
- package/src/DatePickerPopover.hbs +3 -3
- package/src/DateTimePicker.hbs +2 -0
- package/src/DateTimePickerPopover.hbs +1 -1
- package/src/FileUploader.hbs +2 -1
- package/src/FileUploaderPopover.hbs +2 -2
- package/src/Input.hbs +3 -1
- package/src/InputPopover.hbs +4 -4
- package/src/List.hbs +5 -6
- package/src/ListItem.hbs +1 -1
- package/src/Menu.hbs +3 -3
- package/src/MultiComboBox.hbs +2 -0
- package/src/MultiComboBoxPopover.hbs +6 -5
- package/src/NavigationMenu.hbs +1 -1
- package/src/Popup.hbs +2 -1
- package/src/PopupBlockLayer.hbs +2 -4
- package/src/ProgressIndicator.hbs +0 -1
- package/src/ResponsivePopover.hbs +1 -0
- package/src/Select.hbs +2 -0
- package/src/SelectMenu.hbs +4 -4
- package/src/SelectPopover.hbs +5 -5
- package/src/TabContainer.hbs +4 -2
- package/src/TabContainerPopover.hbs +4 -3
- package/src/TabInOverflow.hbs +1 -1
- package/src/TabInStrip.hbs +3 -3
- package/src/TabSeparatorInOverflow.hbs +1 -1
- package/src/Table.hbs +0 -1
- package/src/TextArea.hbs +2 -0
- package/src/TextAreaPopover.hbs +1 -1
- package/src/TimePicker.hbs +2 -0
- package/src/TimePickerPopover.hbs +6 -6
- package/src/Tokenizer.hbs +3 -1
- package/src/TokenizerPopover.hbs +3 -3
- package/src/Toolbar.hbs +3 -1
- package/src/ToolbarPopover.hbs +2 -2
- package/src/Tree.hbs +1 -1
- package/src/themes/Badge.css +2 -1
- package/src/themes/Bar.css +75 -0
- package/src/themes/Breadcrumbs.css +5 -5
- package/src/themes/BusyIndicator.css +18 -17
- package/src/themes/CardHeader.css +6 -4
- package/src/themes/Carousel.css +2 -1
- package/src/themes/CheckBox.css +11 -14
- package/src/themes/Dialog.css +2 -1
- package/src/themes/List.css +3 -3
- package/src/themes/ListItem.css +3 -3
- package/src/themes/Menu.css +1 -1
- package/src/themes/Popover.css +12 -12
- package/src/themes/Popup.css +5 -2
- package/src/themes/{PopupStaticAreaStyles.css → PopupBlockLayer.css} +6 -5
- package/src/themes/PopupsCommon.css +0 -1
- package/src/themes/ProgressIndicator.css +0 -4
- package/src/themes/RadioButton.css +4 -7
- package/src/themes/TabContainer.css +1 -0
- package/src/themes/TabInOverflow.css +1 -0
- package/src/themes/TabInStrip.css +8 -4
- package/src/themes/TabSeparatorInOverflow.css +2 -2
- package/src/themes/TabSeparatorInStrip.css +2 -2
- package/src/themes/TreeItem.css +2 -2
- package/src/themes/base/Bar-parameters.css +8 -0
- package/src/themes/base/RadioButton-parameters.css +0 -1
- package/src/themes/base/sizes-parameters.css +3 -0
- package/src/themes/sap_belize/parameters-bundle.css +2 -1
- package/src/themes/sap_belize_hcb/parameters-bundle.css +2 -1
- package/src/themes/sap_belize_hcw/parameters-bundle.css +2 -1
- package/src/themes/sap_fiori_3/parameters-bundle.css +2 -1
- package/src/themes/sap_fiori_3_dark/parameters-bundle.css +2 -1
- package/src/themes/sap_fiori_3_hcb/Bar-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +2 -1
- package/src/themes/sap_fiori_3_hcw/Bar-parameters.css +5 -0
- package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -1
- package/src/themes/sap_horizon/parameters-bundle.css +2 -1
- package/src/themes/sap_horizon_dark/CheckBox-parameters.css +1 -0
- package/src/themes/sap_horizon_dark/parameters-bundle.css +2 -1
- package/src/themes/sap_horizon_hcb/Bar-parameters.css +5 -0
- package/src/themes/sap_horizon_hcb/CheckBox-parameters.css +1 -0
- package/src/themes/sap_horizon_hcb/parameters-bundle.css +2 -1
- package/src/themes/sap_horizon_hcw/Bar-parameters.css +5 -0
- package/src/themes/sap_horizon_hcw/CheckBox-parameters.css +1 -0
- package/src/themes/sap_horizon_hcw/parameters-bundle.css +2 -1
- package/dist/Assets-static.d.ts +0 -4
- package/dist/Assets-static.js +0 -6
- package/dist/Assets-static.js.map +0 -1
- package/dist/css/themes/PopupStaticAreaStyles.css +0 -1
- package/dist/generated/json-imports/Themes-static.d.ts +0 -1
- package/dist/generated/json-imports/Themes-static.js +0 -45
- package/dist/generated/json-imports/Themes-static.js.map +0 -1
- package/dist/generated/json-imports/i18n-static.d.ts +0 -1
- package/dist/generated/json-imports/i18n-static.js +0 -168
- package/dist/generated/json-imports/i18n-static.js.map +0 -1
- package/dist/generated/themes/ColorPaletteStaticArea.css.js.map +0 -1
- package/dist/generated/themes/PopupStaticAreaStyles.css.js.map +0 -1
- package/dist/types/BreadcrumbsSeparatorStyle.js +0 -39
- package/dist/types/BreadcrumbsSeparatorStyle.js.map +0 -1
- package/dist/types/CarouselPageIndicatorStyle.js.map +0 -1
- package/dist/types/ListMode.js.map +0 -1
- package/dist/types/PopoverPlacementType.js +0 -29
- package/dist/types/PopoverPlacementType.js.map +0 -1
- package/dist/types/TabContainerBackgroundDesign.d.ts +0 -22
- package/dist/types/TabContainerBackgroundDesign.js +0 -24
- package/dist/types/TabContainerBackgroundDesign.js.map +0 -1
- package/dist/types/TabsOverflowMode.js.map +0 -1
- /package/dist/css/themes/{ColorPaletteStaticArea.css → ColorPaletteDialog.css} +0 -0
- /package/dist/generated/themes/{ColorPaletteStaticArea.css.d.ts → Bar.css.d.ts} +0 -0
- /package/dist/generated/themes/{PopupStaticAreaStyles.css.d.ts → ColorPaletteDialog.css.d.ts} +0 -0
- /package/src/themes/{ColorPaletteStaticArea.css → ColorPaletteDialog.css} +0 -0
- /package/src/themes/base/{PopupStaticAreaStyles-parameters.css → PopupBlockLayer-parameters.css} +0 -0
package/dist/ListItem.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListItem.js","sourceRoot":"","sources":["../src/ListItem.ts"],"names":[],"mappings":"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","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport { getEventMark } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport { isSpace, isEnter, isDelete } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { PassiveEventListenerObject } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/edit.js\";\nimport HighlightTypes from \"./types/HighlightTypes.js\";\nimport ListItemType from \"./types/ListItemType.js\";\nimport ListMode from \"./types/ListMode.js\";\nimport ListItemBase from \"./ListItemBase.js\";\nimport RadioButton from \"./RadioButton.js\";\nimport CheckBox from \"./CheckBox.js\";\nimport Button from \"./Button.js\";\nimport type { IButton } from \"./Button.js\";\nimport {\n\tDELETE,\n\tARIA_LABEL_LIST_ITEM_CHECKBOX,\n\tARIA_LABEL_LIST_ITEM_RADIO_BUTTON,\n\tLIST_ITEM_SELECTED,\n\tLIST_ITEM_NOT_SELECTED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport styles from \"./generated/themes/ListItem.css.js\";\nimport HasPopup from \"./types/HasPopup.js\";\n\n// Icons\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\n\ninterface IAccessibleListItem {\n\taccessibleName?: string;\n\taccessibleNameRef?: string;\n}\n\ntype SelectionRequestEventDetail = {\n\titem: ListItemBase,\n\tselectionComponentPressed: boolean,\n\tselected?: boolean,\n\tkey?: string,\n}\n\ntype PressEventDetail = {\n\titem: ListItem,\n\tselected: boolean,\n\tkey: string,\n}\n\ntype AccInfo = {\n\trole: string;\n\tariaExpanded?: boolean;\n\tariaLevel?: number;\n\tariaLabel: string;\n\tariaLabelRadioButton: string;\n\tariaSelectedText?: string;\n\tariaHaspopup?: `${Lowercase<HasPopup>}`;\n\tposinset?: number;\n\tsetsize?: number;\n\tariaSelected?: boolean;\n\tariaChecked?: boolean;\n\tlistItemAriaLabel?: string;\n\tariaOwns?: string;\n\ttooltip?: string;\n}\n\ntype AccessibilityAttributes = {\n\tariaSetsize?: number,\n\tariaPosinset?: number,\n}\n\n/**\n * @class\n * A class to serve as a base\n * for the `StandardListItem` and `CustomListItem` classes.\n * @constructor\n * @abstract\n * @extends ListItemBase\n * @public\n */\n@customElement({\n\tlanguageAware: true,\n\tstyles: [ListItemBase.styles, styles],\n\tdependencies: [\n\t\tButton,\n\t\tRadioButton,\n\t\tCheckBox,\n\t],\n})\n/**\n * Fired when the user clicks on the detail button when type is `Detail`.\n * @public\n */\n@event(\"detail-click\")\n@event(\"_press\")\n@event(\"_focused\")\n@event(\"_selection-requested\")\nabstract class ListItem extends ListItemBase {\n\t/**\n\t * Defines the visual indication and behavior of the list items.\n\t * Available options are `Active` (by default), `Inactive`, `Detail` and `Navigation`.\n\t *\n\t * **Note:** When set to `Active` or `Navigation`, the item will provide visual response upon press and hover,\n\t * while with type `Inactive` and `Detail` - will not.\n\t * @default \"Active\"\n\t * @public\n\t*/\n\t@property({ type: ListItemType, defaultValue: ListItemType.Active })\n\ttype!: `${ListItemType}`;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * - `ariaSetsize`: Defines the number of items in the current set of listitems or treeitems when not all items in the set are present in the DOM.\n\t * \tThe value of each `aria-setsize` is an integer reflecting number of items in the complete set.\n\t *\n\t * \t**Note:** If the size of the entire set is unknown, set `aria-setsize=\"-1\"`.\n\t * \t- `ariaPosinset`: Defines an element's number or position in the current set of listitems or treeitems when not all items are present in the DOM.\n\t * \tThe value of each `aria-posinset` is an integer greater than or equal to 1, and less than or equal to the size of the set when that size is known.\n\t * @default {}\n\t * @public\n\t * @since 1.15.0\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: AccessibilityAttributes;\n\n\t/**\n\t * The navigated state of the list item.\n\t * If set to `true`, a navigation indicator is displayed at the end of the list item.\n\t * @default false\n\t * @public\n\t * @since 1.10.0\n\t */\n\t@property({ type: Boolean })\n\tnavigated!: boolean;\n\n\t/**\n\t * Defines the text of the tooltip that would be displayed for the list item.\n\t * @default \"\"\n\t * @public\n\t * @since 1.23.0\n\t */\n\t@property({ type: String, defaultValue: \"\" })\n\ttooltip!: string;\n\n\t/**\n\t * Indicates if the list item is active, e.g pressed down with the mouse or the keyboard keys.\n\t * @private\n\t*/\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t * @default \"\"\n\t * @deprecated\n\t * @private\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\ttitle!: string;\n\n\t/**\n\t * Defines the highlight state of the list items.\n\t * Available options are: `\"None\"` (by default), `\"Success\"`, `\"Warning\"`, `\"Information\"` and `\"Error\"`.\n\t * @default \"None\"\n\t * @public\n\t * @since 1.24\n\t */\n\t@property({ type: HighlightTypes, defaultValue: HighlightTypes.None })\n\thighlight!: `${HighlightTypes}`;\n\n\t/**\n\t * Indicates if the list item is actionable, e.g has hover and pressed effects.\n\t * @private\n\t*/\n\t@property({ type: Boolean })\n\tactionable!: boolean;\n\n\t/**\n\t * Used to define the role of the list item.\n\t * @private\n\t * @default \"listitem\"\n\t * @since 1.0.0-rc.9\n\t *\n\t */\n\t@property({ defaultValue: \"listitem\" })\n\trole!: string;\n\n\t/**\n\t * Defines the description for the accessible role of the component.\n\t * @protected\n\t * @default undefined\n\t * @since 1.10.0\n\t */\n\t@property({ defaultValue: undefined, noAttribute: true })\n\taccessibleRoleDescription?: string;\n\n\t/**\n\t * Used to define the role of the list item.\n\t * @private\n\t * @default \"\"\n\t * @since 1.3.0\n\t *\n\t */\n\t@property()\n\taccessibleRole!: string;\n\n\t@property({ type: ListMode, defaultValue: ListMode.None })\n\t_mode!: `${ListMode}`;\n\n\t/**\n\t * Defines the availability and type of interactive popup element that can be triggered by the component on which the property is set.\n\t * @since 1.10.0\n\t * @private\n\t */\n\t@property({ type: HasPopup, noAttribute: true })\n\tariaHaspopup?: `${HasPopup}`;\n\n\t/**\n\t * Defines the delete button, displayed in \"Delete\" mode.\n\t * **Note:** While the slot allows custom buttons, to match\n\t * design guidelines, please use the `ui5-button` component.\n\t * **Note:** When the slot is not present, a built-in delete button will be displayed.\n\t * @since 1.9.0\n\t * @public\n\t*/\n\t@slot()\n\tdeleteButton!: Array<IButton>;\n\n\tdeactivateByKey: (e: KeyboardEvent) => void;\n\tdeactivate: () => void;\n\t_ontouchstart: PassiveEventListenerObject;\n\t// used in template, implemented in TreeItemBase, StandardListItem\n\taccessibleName?: string;\n\t// used in ListItem template but implemented in TreeItemBase\n\tindeterminate?: boolean;\n\t// Used in UploadCollectionItem\n\tdisableDeleteButton?: boolean;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.deactivateByKey = (e: KeyboardEvent) => {\n\t\t\tif (isEnter(e)) {\n\t\t\t\tthis.deactivate();\n\t\t\t}\n\t\t};\n\n\t\tthis.deactivate = () => {\n\t\t\tif (this.active) {\n\t\t\t\tthis.active = false;\n\t\t\t}\n\t\t};\n\n\t\tconst handleTouchStartEvent = (e: TouchEvent) => {\n\t\t\tthis._onmousedown(e as unknown as MouseEvent);\n\t\t};\n\n\t\tthis._ontouchstart = {\n\t\t\thandleEvent: handleTouchStartEvent,\n\t\t\tpassive: true,\n\t\t};\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.actionable = (this.type === ListItemType.Active || this.type === ListItemType.Navigation) && (this._mode !== ListMode.Delete);\n\t}\n\n\tonEnterDOM() {\n\t\tdocument.addEventListener(\"mouseup\", this.deactivate);\n\t\tdocument.addEventListener(\"touchend\", this.deactivate);\n\t\tdocument.addEventListener(\"keyup\", this.deactivateByKey);\n\t}\n\n\tonExitDOM() {\n\t\tdocument.removeEventListener(\"mouseup\", this.deactivate);\n\t\tdocument.removeEventListener(\"keyup\", this.deactivateByKey);\n\t\tdocument.removeEventListener(\"touchend\", this.deactivate);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tsuper._onkeydown(e);\n\n\t\tconst itemActive = this.type === ListItemType.Active,\n\t\t\titemNavigated = this.typeNavigation;\n\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif ((isSpace(e) || isEnter(e)) && (itemActive || itemNavigated)) {\n\t\t\tthis.activate();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.fireItemPress(e);\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e) || isEnter(e)) {\n\t\t\tthis.deactivate();\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\tthis.fireItemPress(e);\n\t\t}\n\n\t\tif (this.modeDelete && isDelete(e)) {\n\t\t\tthis.onDelete();\n\t\t}\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.activate();\n\t}\n\n\t_onmouseup(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.deactivate();\n\t}\n\n\t_ontouchend(e: TouchEvent) {\n\t\tthis._onmouseup(e as unknown as MouseEvent);\n\t}\n\n\t_onfocusout() {\n\t\tsuper._onfocusout();\n\t\tthis.deactivate();\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.fireItemPress(e);\n\t}\n\n\t_ondragstart(e: DragEvent) {\n\t\tif (e.target === this._listItem) {\n\t\t\tthis.setAttribute(\"data-moving\", \"\");\n\t\t}\n\t}\n\n\t_ondragend(e: DragEvent) {\n\t\tif (e.target === this._listItem) {\n\t\t\tthis.removeAttribute(\"data-moving\");\n\t\t}\n\t}\n\n\t/*\n\t * Called when selection components in Single (ui5-radio-button)\n\t * and Multi (ui5-checkbox) selection modes are used.\n\t */\n\tonMultiSelectionComponentPress(e: MouseEvent) {\n\t\tif (this.isInactive) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selected: (e.target as CheckBox).checked, selectionComponentPressed: true });\n\t}\n\n\tonSingleSelectionComponentPress(e: MouseEvent) {\n\t\tif (this.isInactive) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selected: !(e.target as RadioButton).checked, selectionComponentPressed: true });\n\t}\n\n\tactivate() {\n\t\tif (this.type === ListItemType.Active || this.type === ListItemType.Navigation) {\n\t\t\tthis.active = true;\n\t\t}\n\t}\n\n\tonDelete() {\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selectionComponentPressed: false });\n\t}\n\n\tonDetailClick() {\n\t\tthis.fireEvent(\"detail-click\", { item: this, selected: this.selected });\n\t}\n\n\tfireItemPress(e: Event) {\n\t\tif (this.isInactive || this.disabled) {\n\t\t\treturn;\n\t\t}\n\t\tif (isEnter(e as KeyboardEvent)) {\n\t\t\te.preventDefault();\n\t\t}\n\t\tthis.fireEvent<PressEventDetail>(\"_press\", { item: this, selected: this.selected, key: (e as KeyboardEvent).key });\n\t}\n\n\tget isInactive() {\n\t\treturn this.type === ListItemType.Inactive || this.type === ListItemType.Detail;\n\t}\n\n\tget placeSelectionElementBefore() {\n\t\treturn this._mode === ListMode.MultiSelect\n\t\t\t|| this._mode === ListMode.SingleSelectBegin;\n\t}\n\n\tget placeSelectionElementAfter() {\n\t\treturn !this.placeSelectionElementBefore\n\t\t\t&& (this._mode === ListMode.SingleSelectEnd || this._mode === ListMode.Delete);\n\t}\n\n\tget modeSingleSelect() {\n\t\treturn [\n\t\t\tListMode.SingleSelectBegin,\n\t\t\tListMode.SingleSelectEnd,\n\t\t\tListMode.SingleSelect,\n\t\t].includes(this._mode as ListMode);\n\t}\n\n\tget modeMultiSelect() {\n\t\treturn this._mode === ListMode.MultiSelect;\n\t}\n\n\tget modeDelete() {\n\t\treturn this._mode === ListMode.Delete;\n\t}\n\n\t/**\n\t * Used in UploadCollectionItem\n\t */\n\tget renderDeleteButton() {\n\t\treturn this.modeDelete;\n\t}\n\n\t/**\n\t * End\n\t */\n\n\tget typeDetail() {\n\t\treturn this.type === ListItemType.Detail;\n\t}\n\n\tget typeNavigation() {\n\t\treturn this.type === ListItemType.Navigation;\n\t}\n\n\tget typeActive() {\n\t\treturn this.type === ListItemType.Active;\n\t}\n\n\tget _ariaSelected() {\n\t\tif (this.modeMultiSelect || this.modeSingleSelect) {\n\t\t\treturn this.selected;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaSelectedText() {\n\t\tlet ariaSelectedText;\n\n\t\t// Selected state needs to be supported separately since now the role mapping is list -> listitem[]\n\t\t// to avoid the issue of nesting interactive elements, ex. (option -> radio/checkbox);\n\t\t// The text is added to aria-describedby because as part of the aria-labelledby\n\t\t// the whole content of the item is readout when the aria-labelledby value is changed.\n\t\tif (this._ariaSelected !== undefined) {\n\t\t\tariaSelectedText = this._ariaSelected ? ListItem.i18nBundle.getText(LIST_ITEM_SELECTED) : ListItem.i18nBundle.getText(LIST_ITEM_NOT_SELECTED);\n\t\t}\n\n\t\treturn ariaSelectedText;\n\t}\n\n\tget deleteText() {\n\t\treturn ListItem.i18nBundle.getText(DELETE);\n\t}\n\n\tget hasDeleteButtonSlot() {\n\t\treturn !!this.deleteButton.length;\n\t}\n\n\tget _accessibleNameRef(): string {\n\t\tif ((this as IAccessibleListItem).accessibleName) {\n\t\t\t// accessibleName is set - return labels excluding content\n\t\t\treturn `${this._id}-invisibleText`;\n\t\t}\n\n\t\t// accessibleName is not set - return _accInfo.listItemAriaLabel including content\n\t\treturn `${this._id}-content ${this._id}-invisibleText`;\n\t}\n\n\tget _accInfo(): AccInfo {\n\t\treturn {\n\t\t\trole: this.accessibleRole || this.role,\n\t\t\tariaExpanded: undefined,\n\t\t\tariaLevel: undefined,\n\t\t\tariaLabel: ListItem.i18nBundle.getText(ARIA_LABEL_LIST_ITEM_CHECKBOX),\n\t\t\tariaLabelRadioButton: ListItem.i18nBundle.getText(ARIA_LABEL_LIST_ITEM_RADIO_BUTTON),\n\t\t\tariaSelectedText: this.ariaSelectedText,\n\t\t\tariaHaspopup: this.ariaHaspopup?.toLowerCase() as Lowercase<HasPopup> || undefined,\n\t\t\tsetsize: this.accessibilityAttributes.ariaSetsize,\n\t\t\tposinset: this.accessibilityAttributes.ariaPosinset,\n\t\t\ttooltip: this.tooltip || this.title,\n\t\t};\n\t}\n\n\tget _hasHighlightColor() {\n\t\treturn this.highlight !== HighlightTypes.None;\n\t}\n\n\tget hasConfigurableMode() {\n\t\treturn true;\n\t}\n\n\tget _listItem() {\n\t\treturn this.shadowRoot!.querySelector(\"li\");\n\t}\n\n\tstatic async onDefine() {\n\t\tListItem.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nexport default ListItem;\nexport type {\n\tIAccessibleListItem,\n\tSelectionRequestEventDetail,\n\tPressEventDetail,\n\tAccessibilityAttributes,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"ListItem.js","sourceRoot":"","sources":["../src/ListItem.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,aAAa,MAAM,0DAA0D,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAC5E,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAG3E,OAAO,QAAQ,MAAM,qDAAqD,CAAC;AAC3E,OAAO,KAAK,MAAM,kDAAkD,CAAC;AACrE,OAAO,IAAI,MAAM,iDAAiD,CAAC;AACnE,OAAO,0CAA0C,CAAC;AAClD,OAAO,uCAAuC,CAAC;AAC/C,OAAO,cAAc,MAAM,2BAA2B,CAAC;AACvD,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,iBAAiB,MAAM,8BAA8B,CAAC;AAC7D,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,QAAQ,MAAM,eAAe,CAAC;AACrC,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,OAAO,EACN,MAAM,EACN,6BAA6B,EAC7B,iCAAiC,EACjC,kBAAkB,EAClB,sBAAsB,GACtB,MAAM,mCAAmC,CAAC;AAE3C,SAAS;AACT,OAAO,MAAM,MAAM,oCAAoC,CAAC;AACxD,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAE3C,QAAQ;AACR,OAAO,mDAAmD,CAAC;AA0C3D;;;;;;;;GAQG;AAkBH,IAAe,QAAQ,gBAAvB,MAAe,QAAS,SAAQ,YAAY;IAoJ3C;QACC,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,eAAe,GAAG,CAAC,CAAgB,EAAE,EAAE;YAC3C,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;gBACf,IAAI,CAAC,UAAU,EAAE,CAAC;aAClB;QACF,CAAC,CAAC;QAEF,IAAI,CAAC,UAAU,GAAG,GAAG,EAAE;YACtB,IAAI,IAAI,CAAC,MAAM,EAAE;gBAChB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;aACpB;QACF,CAAC,CAAC;QAEF,MAAM,qBAAqB,GAAG,CAAC,CAAa,EAAE,EAAE;YAC/C,IAAI,CAAC,YAAY,CAAC,CAA0B,CAAC,CAAC;QAC/C,CAAC,CAAC;QAEF,IAAI,CAAC,aAAa,GAAG;YACpB,WAAW,EAAE,qBAAqB;YAClC,OAAO,EAAE,IAAI;SACb,CAAC;IACH,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,KAAK,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACtJ,CAAC;IAED,UAAU;QACT,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACtD,QAAQ,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACvD,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAC1D,CAAC;IAED,SAAS;QACR,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACzD,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAC5D,QAAQ,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3D,CAAC;IAED,UAAU,CAAC,CAAgB;QAC1B,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAEpB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,EACnD,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;QAErC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;YACf,CAAC,CAAC,cAAc,EAAE,CAAC;SACnB;QAED,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,aAAa,CAAC,EAAE;YAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;SAChB;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;YACf,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;SACtB;IACF,CAAC;IAED,QAAQ,CAAC,CAAgB;QACxB,IAAI,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;YAC7B,IAAI,CAAC,UAAU,EAAE,CAAC;SAClB;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;YACf,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;SACtB;QAED,IAAI,IAAI,CAAC,UAAU,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE;YACnC,IAAI,CAAC,QAAQ,EAAE,CAAC;SAChB;IACF,CAAC;IAED,YAAY,CAAC,CAAa;QACzB,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;YACjC,OAAO;SACP;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;IACjB,CAAC;IAED,UAAU,CAAC,CAAa;QACvB,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;YACjC,OAAO;SACP;QACD,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAED,WAAW,CAAC,CAAa;QACxB,IAAI,CAAC,UAAU,CAAC,CAA0B,CAAC,CAAC;IAC7C,CAAC;IAED,WAAW;QACV,KAAK,CAAC,WAAW,EAAE,CAAC;QACpB,IAAI,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;IAED,QAAQ,CAAC,CAAa;QACrB,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;YACjC,OAAO;SACP;QACD,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAED,YAAY,CAAC,CAAY;QACxB,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE;YAChC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;SACrC;IACF,CAAC;IAED,UAAU,CAAC,CAAY;QACtB,IAAI,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE;YAChC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;SACpC;IACF,CAAC;IAED;;;OAGG;IACH,8BAA8B,CAAC,CAAa;QAC3C,IAAI,IAAI,CAAC,UAAU,EAAE;YACpB,OAAO;SACP;QAED,IAAI,CAAC,SAAS,CAA8B,sBAAsB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAG,CAAC,CAAC,MAAmB,CAAC,OAAO,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC,CAAC;IAChK,CAAC;IAED,+BAA+B,CAAC,CAAa;QAC5C,IAAI,IAAI,CAAC,UAAU,EAAE;YACpB,OAAO;SACP;QAED,IAAI,CAAC,SAAS,CAA8B,sBAAsB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAE,CAAC,CAAC,MAAsB,CAAC,OAAO,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC,CAAC;IACpK,CAAC;IAED,QAAQ;QACP,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,UAAU,EAAE;YAC/E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;SACnB;IACF,CAAC;IAED,QAAQ;QACP,IAAI,CAAC,SAAS,CAA8B,sBAAsB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,CAAC,CAAC;IACvH,CAAC;IAED,aAAa;QACZ,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,aAAa,CAAC,CAAQ;QACrB,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,EAAE;YACrC,OAAO;SACP;QACD,IAAI,OAAO,CAAC,CAAkB,CAAC,EAAE;YAChC,CAAC,CAAC,cAAc,EAAE,CAAC;SACnB;QACD,IAAI,CAAC,SAAS,CAAmB,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAG,CAAmB,CAAC,GAAG,EAAE,CAAC,CAAC;IACpH,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,CAAC;IACjF,CAAC;IAED,IAAI,2BAA2B;QAC9B,OAAO,IAAI,CAAC,cAAc,KAAK,iBAAiB,CAAC,QAAQ;eACrD,IAAI,CAAC,cAAc,KAAK,iBAAiB,CAAC,WAAW,CAAC;IAC3D,CAAC;IAED,IAAI,0BAA0B;QAC7B,OAAO,CAAC,IAAI,CAAC,2BAA2B;eACpC,CAAC,IAAI,CAAC,cAAc,KAAK,iBAAiB,CAAC,SAAS,IAAI,IAAI,CAAC,cAAc,KAAK,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC/G,CAAC;IAED,IAAI,gBAAgB;QACnB,OAAO;YACN,iBAAiB,CAAC,WAAW;YAC7B,iBAAiB,CAAC,SAAS;YAC3B,iBAAiB,CAAC,MAAM;SACxB,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAmC,CAAC,CAAC;IACtD,CAAC;IAED,IAAI,YAAY;QACf,OAAO,IAAI,CAAC,cAAc,KAAK,iBAAiB,CAAC,QAAQ,CAAC;IAC3D,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,cAAc,KAAK,iBAAiB,CAAC,MAAM,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,IAAI,kBAAkB;QACrB,OAAO,IAAI,CAAC,UAAU,CAAC;IACxB,CAAC;IAED;;OAEG;IAEH,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,CAAC;IAC1C,CAAC;IAED,IAAI,cAAc;QACjB,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,UAAU,CAAC;IAC9C,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,CAAC;IAC1C,CAAC;IAED,IAAI,aAAa;QAChB,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,gBAAgB,EAAE;YAC/C,OAAO,IAAI,CAAC,QAAQ,CAAC;SACrB;QAED,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,IAAI,gBAAgB;QACnB,IAAI,gBAAgB,CAAC;QAErB,mGAAmG;QACnG,sFAAsF;QACtF,+EAA+E;QAC/E,sFAAsF;QACtF,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE;YACrC,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;SAC9I;QAED,OAAO,gBAAgB,CAAC;IACzB,CAAC;IAED,IAAI,UAAU;QACb,OAAO,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,mBAAmB;QACtB,OAAO,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;IACnC,CAAC;IAED,IAAI,kBAAkB;QACrB,IAAK,IAA4B,CAAC,cAAc,EAAE;YACjD,0DAA0D;YAC1D,OAAO,GAAG,IAAI,CAAC,GAAG,gBAAgB,CAAC;SACnC;QAED,kFAAkF;QAClF,OAAO,GAAG,IAAI,CAAC,GAAG,YAAY,IAAI,CAAC,GAAG,gBAAgB,CAAC;IACxD,CAAC;IAED,IAAI,QAAQ;QACX,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,IAAI;YACtC,YAAY,EAAE,SAAS;YACvB,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,6BAA6B,CAAC;YACrE,oBAAoB,EAAE,UAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,iCAAiC,CAAC;YACpF,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,WAAW,EAAyB,IAAI,SAAS;YAClF,OAAO,EAAE,IAAI,CAAC,uBAAuB,CAAC,WAAW;YACjD,QAAQ,EAAE,IAAI,CAAC,uBAAuB,CAAC,YAAY;YACnD,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK;SACnC,CAAC;IACH,CAAC;IAED,IAAI,kBAAkB;QACrB,OAAO,IAAI,CAAC,SAAS,KAAK,cAAc,CAAC,IAAI,CAAC;IAC/C,CAAC;IAED,IAAI,mBAAmB;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,IAAI,CAAC,UAAW,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ;QACpB,UAAQ,CAAC,UAAU,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC,CAAC;IACjE,CAAC;CACD,CAAA;AApaA;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,MAAM,EAAE,CAAC;sCAC3C;AAmBzB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;yDACuB;AAUlD;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;2CACR;AASpB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;yCAC5B;AAOjB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;wCACX;AAUjB;IADC,QAAQ,EAAE;uCACI;AAUf;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,CAAC,IAAI,EAAE,CAAC;2CACtC;AAOhC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;4CACP;AAUrB;IADC,QAAQ,CAAC,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;sCACzB;AASd;IADC,QAAQ,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;2DACtB;AAUnC;IADC,QAAQ,EAAE;gDACa;AAGxB;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,YAAY,EAAE,iBAAiB,CAAC,IAAI,EAAE,CAAC;gDACpC;AAQxC;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;8CACnB;AAW7B;IADC,IAAI,EAAE;8CACuB;AAtIhB,QAAQ;IAjBtB,aAAa,CAAC;QACd,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC;QACrC,YAAY,EAAE;YACb,MAAM;YACN,WAAW;YACX,QAAQ;SACR;KACD,CAAC;IACF;;;OAGG;;IACF,KAAK,CAAC,cAAc,CAAC;IACrB,KAAK,CAAC,QAAQ,CAAC;IACf,KAAK,CAAC,UAAU,CAAC;IACjB,KAAK,CAAC,sBAAsB,CAAC;GACf,QAAQ,CA+atB;AAED,eAAe,QAAQ,CAAC","sourcesContent":["import customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport { getEventMark } from \"@ui5/webcomponents-base/dist/MarkedEvents.js\";\nimport { isSpace, isEnter, isDelete } from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type { PassiveEventListenerObject } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport \"@ui5/webcomponents-icons/dist/decline.js\";\nimport \"@ui5/webcomponents-icons/dist/edit.js\";\nimport HighlightTypes from \"./types/HighlightTypes.js\";\nimport ListItemType from \"./types/ListItemType.js\";\nimport ListSelectionMode from \"./types/ListSelectionMode.js\";\nimport ListItemBase from \"./ListItemBase.js\";\nimport RadioButton from \"./RadioButton.js\";\nimport CheckBox from \"./CheckBox.js\";\nimport Button from \"./Button.js\";\nimport type { IButton } from \"./Button.js\";\nimport {\n\tDELETE,\n\tARIA_LABEL_LIST_ITEM_CHECKBOX,\n\tARIA_LABEL_LIST_ITEM_RADIO_BUTTON,\n\tLIST_ITEM_SELECTED,\n\tLIST_ITEM_NOT_SELECTED,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport styles from \"./generated/themes/ListItem.css.js\";\nimport HasPopup from \"./types/HasPopup.js\";\n\n// Icons\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\n\ninterface IAccessibleListItem {\n\taccessibleName?: string;\n\taccessibleNameRef?: string;\n}\n\ntype SelectionRequestEventDetail = {\n\titem: ListItemBase,\n\tselectionComponentPressed: boolean,\n\tselected?: boolean,\n\tkey?: string,\n}\n\ntype PressEventDetail = {\n\titem: ListItem,\n\tselected: boolean,\n\tkey: string,\n}\n\ntype AccInfo = {\n\trole: string;\n\tariaExpanded?: boolean;\n\tariaLevel?: number;\n\tariaLabel: string;\n\tariaLabelRadioButton: string;\n\tariaSelectedText?: string;\n\tariaHaspopup?: `${Lowercase<HasPopup>}`;\n\tposinset?: number;\n\tsetsize?: number;\n\tariaSelected?: boolean;\n\tariaChecked?: boolean;\n\tlistItemAriaLabel?: string;\n\tariaOwns?: string;\n\ttooltip?: string;\n}\n\ntype AccessibilityAttributes = {\n\tariaSetsize?: number,\n\tariaPosinset?: number,\n}\n\n/**\n * @class\n * A class to serve as a base\n * for the `StandardListItem` and `CustomListItem` classes.\n * @constructor\n * @abstract\n * @extends ListItemBase\n * @public\n */\n@customElement({\n\tlanguageAware: true,\n\tstyles: [ListItemBase.styles, styles],\n\tdependencies: [\n\t\tButton,\n\t\tRadioButton,\n\t\tCheckBox,\n\t],\n})\n/**\n * Fired when the user clicks on the detail button when type is `Detail`.\n * @public\n */\n@event(\"detail-click\")\n@event(\"_press\")\n@event(\"_focused\")\n@event(\"_selection-requested\")\nabstract class ListItem extends ListItemBase {\n\t/**\n\t * Defines the visual indication and behavior of the list items.\n\t * Available options are `Active` (by default), `Inactive`, `Detail` and `Navigation`.\n\t *\n\t * **Note:** When set to `Active` or `Navigation`, the item will provide visual response upon press and hover,\n\t * while with type `Inactive` and `Detail` - will not.\n\t * @default \"Active\"\n\t * @public\n\t*/\n\t@property({ type: ListItemType, defaultValue: ListItemType.Active })\n\ttype!: `${ListItemType}`;\n\n\t/**\n\t * An object of strings that defines several additional accessibility attribute values\n\t * for customization depending on the use case.\n\t *\n\t * It supports the following fields:\n\t *\n\t * - `ariaSetsize`: Defines the number of items in the current set of listitems or treeitems when not all items in the set are present in the DOM.\n\t * \tThe value of each `aria-setsize` is an integer reflecting number of items in the complete set.\n\t *\n\t * \t**Note:** If the size of the entire set is unknown, set `aria-setsize=\"-1\"`.\n\t * \t- `ariaPosinset`: Defines an element's number or position in the current set of listitems or treeitems when not all items are present in the DOM.\n\t * \tThe value of each `aria-posinset` is an integer greater than or equal to 1, and less than or equal to the size of the set when that size is known.\n\t * @default {}\n\t * @public\n\t * @since 1.15.0\n\t */\n\t@property({ type: Object })\n\taccessibilityAttributes!: AccessibilityAttributes;\n\n\t/**\n\t * The navigated state of the list item.\n\t * If set to `true`, a navigation indicator is displayed at the end of the list item.\n\t * @default false\n\t * @public\n\t * @since 1.10.0\n\t */\n\t@property({ type: Boolean })\n\tnavigated!: boolean;\n\n\t/**\n\t * Defines the text of the tooltip that would be displayed for the list item.\n\t * @default \"\"\n\t * @public\n\t * @since 1.23.0\n\t */\n\t@property({ type: String, defaultValue: \"\" })\n\ttooltip!: string;\n\n\t/**\n\t * Indicates if the list item is active, e.g pressed down with the mouse or the keyboard keys.\n\t * @private\n\t*/\n\t@property({ type: Boolean })\n\tactive!: boolean;\n\n\t/**\n\t * Defines the tooltip of the component.\n\t * @default \"\"\n\t * @deprecated\n\t * @private\n\t * @since 1.0.0-rc.15\n\t */\n\t@property()\n\ttitle!: string;\n\n\t/**\n\t * Defines the highlight state of the list items.\n\t * Available options are: `\"None\"` (by default), `\"Success\"`, `\"Warning\"`, `\"Information\"` and `\"Error\"`.\n\t * @default \"None\"\n\t * @public\n\t * @since 1.24\n\t */\n\t@property({ type: HighlightTypes, defaultValue: HighlightTypes.None })\n\thighlight!: `${HighlightTypes}`;\n\n\t/**\n\t * Indicates if the list item is actionable, e.g has hover and pressed effects.\n\t * @private\n\t*/\n\t@property({ type: Boolean })\n\tactionable!: boolean;\n\n\t/**\n\t * Used to define the role of the list item.\n\t * @private\n\t * @default \"listitem\"\n\t * @since 1.0.0-rc.9\n\t *\n\t */\n\t@property({ defaultValue: \"listitem\" })\n\trole!: string;\n\n\t/**\n\t * Defines the description for the accessible role of the component.\n\t * @protected\n\t * @default undefined\n\t * @since 1.10.0\n\t */\n\t@property({ defaultValue: undefined, noAttribute: true })\n\taccessibleRoleDescription?: string;\n\n\t/**\n\t * Used to define the role of the list item.\n\t * @private\n\t * @default \"\"\n\t * @since 1.3.0\n\t *\n\t */\n\t@property()\n\taccessibleRole!: string;\n\n\t@property({ type: ListSelectionMode, defaultValue: ListSelectionMode.None })\n\t_selectionMode!: `${ListSelectionMode}`;\n\n\t/**\n\t * Defines the availability and type of interactive popup element that can be triggered by the component on which the property is set.\n\t * @since 1.10.0\n\t * @private\n\t */\n\t@property({ type: HasPopup, noAttribute: true })\n\tariaHaspopup?: `${HasPopup}`;\n\n\t/**\n\t * Defines the delete button, displayed in \"Delete\" mode.\n\t * **Note:** While the slot allows custom buttons, to match\n\t * design guidelines, please use the `ui5-button` component.\n\t * **Note:** When the slot is not present, a built-in delete button will be displayed.\n\t * @since 1.9.0\n\t * @public\n\t*/\n\t@slot()\n\tdeleteButton!: Array<IButton>;\n\n\tdeactivateByKey: (e: KeyboardEvent) => void;\n\tdeactivate: () => void;\n\t_ontouchstart: PassiveEventListenerObject;\n\t// used in template, implemented in TreeItemBase, StandardListItem\n\taccessibleName?: string;\n\t// used in ListItem template but implemented in TreeItemBase\n\tindeterminate?: boolean;\n\t// Used in UploadCollectionItem\n\tdisableDeleteButton?: boolean;\n\n\tstatic i18nBundle: I18nBundle;\n\n\tconstructor() {\n\t\tsuper();\n\n\t\tthis.deactivateByKey = (e: KeyboardEvent) => {\n\t\t\tif (isEnter(e)) {\n\t\t\t\tthis.deactivate();\n\t\t\t}\n\t\t};\n\n\t\tthis.deactivate = () => {\n\t\t\tif (this.active) {\n\t\t\t\tthis.active = false;\n\t\t\t}\n\t\t};\n\n\t\tconst handleTouchStartEvent = (e: TouchEvent) => {\n\t\t\tthis._onmousedown(e as unknown as MouseEvent);\n\t\t};\n\n\t\tthis._ontouchstart = {\n\t\t\thandleEvent: handleTouchStartEvent,\n\t\t\tpassive: true,\n\t\t};\n\t}\n\n\tonBeforeRendering() {\n\t\tthis.actionable = (this.type === ListItemType.Active || this.type === ListItemType.Navigation) && (this._selectionMode !== ListSelectionMode.Delete);\n\t}\n\n\tonEnterDOM() {\n\t\tdocument.addEventListener(\"mouseup\", this.deactivate);\n\t\tdocument.addEventListener(\"touchend\", this.deactivate);\n\t\tdocument.addEventListener(\"keyup\", this.deactivateByKey);\n\t}\n\n\tonExitDOM() {\n\t\tdocument.removeEventListener(\"mouseup\", this.deactivate);\n\t\tdocument.removeEventListener(\"keyup\", this.deactivateByKey);\n\t\tdocument.removeEventListener(\"touchend\", this.deactivate);\n\t}\n\n\t_onkeydown(e: KeyboardEvent) {\n\t\tsuper._onkeydown(e);\n\n\t\tconst itemActive = this.type === ListItemType.Active,\n\t\t\titemNavigated = this.typeNavigation;\n\n\t\tif (isSpace(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\n\t\tif ((isSpace(e) || isEnter(e)) && (itemActive || itemNavigated)) {\n\t\t\tthis.activate();\n\t\t}\n\n\t\tif (isEnter(e)) {\n\t\t\tthis.fireItemPress(e);\n\t\t}\n\t}\n\n\t_onkeyup(e: KeyboardEvent) {\n\t\tif (isSpace(e) || isEnter(e)) {\n\t\t\tthis.deactivate();\n\t\t}\n\n\t\tif (isSpace(e)) {\n\t\t\tthis.fireItemPress(e);\n\t\t}\n\n\t\tif (this.modeDelete && isDelete(e)) {\n\t\t\tthis.onDelete();\n\t\t}\n\t}\n\n\t_onmousedown(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.activate();\n\t}\n\n\t_onmouseup(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.deactivate();\n\t}\n\n\t_ontouchend(e: TouchEvent) {\n\t\tthis._onmouseup(e as unknown as MouseEvent);\n\t}\n\n\t_onfocusout() {\n\t\tsuper._onfocusout();\n\t\tthis.deactivate();\n\t}\n\n\t_onclick(e: MouseEvent) {\n\t\tif (getEventMark(e) === \"button\") {\n\t\t\treturn;\n\t\t}\n\t\tthis.fireItemPress(e);\n\t}\n\n\t_ondragstart(e: DragEvent) {\n\t\tif (e.target === this._listItem) {\n\t\t\tthis.setAttribute(\"data-moving\", \"\");\n\t\t}\n\t}\n\n\t_ondragend(e: DragEvent) {\n\t\tif (e.target === this._listItem) {\n\t\t\tthis.removeAttribute(\"data-moving\");\n\t\t}\n\t}\n\n\t/*\n\t * Called when selection components in Single (ui5-radio-button)\n\t * and Multi (ui5-checkbox) selection modes are used.\n\t */\n\tonMultiSelectionComponentPress(e: MouseEvent) {\n\t\tif (this.isInactive) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selected: (e.target as CheckBox).checked, selectionComponentPressed: true });\n\t}\n\n\tonSingleSelectionComponentPress(e: MouseEvent) {\n\t\tif (this.isInactive) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selected: !(e.target as RadioButton).checked, selectionComponentPressed: true });\n\t}\n\n\tactivate() {\n\t\tif (this.type === ListItemType.Active || this.type === ListItemType.Navigation) {\n\t\t\tthis.active = true;\n\t\t}\n\t}\n\n\tonDelete() {\n\t\tthis.fireEvent<SelectionRequestEventDetail>(\"_selection-requested\", { item: this, selectionComponentPressed: false });\n\t}\n\n\tonDetailClick() {\n\t\tthis.fireEvent(\"detail-click\", { item: this, selected: this.selected });\n\t}\n\n\tfireItemPress(e: Event) {\n\t\tif (this.isInactive || this.disabled) {\n\t\t\treturn;\n\t\t}\n\t\tif (isEnter(e as KeyboardEvent)) {\n\t\t\te.preventDefault();\n\t\t}\n\t\tthis.fireEvent<PressEventDetail>(\"_press\", { item: this, selected: this.selected, key: (e as KeyboardEvent).key });\n\t}\n\n\tget isInactive() {\n\t\treturn this.type === ListItemType.Inactive || this.type === ListItemType.Detail;\n\t}\n\n\tget placeSelectionElementBefore() {\n\t\treturn this._selectionMode === ListSelectionMode.Multiple\n\t\t\t|| this._selectionMode === ListSelectionMode.SingleStart;\n\t}\n\n\tget placeSelectionElementAfter() {\n\t\treturn !this.placeSelectionElementBefore\n\t\t\t&& (this._selectionMode === ListSelectionMode.SingleEnd || this._selectionMode === ListSelectionMode.Delete);\n\t}\n\n\tget modeSingleSelect() {\n\t\treturn [\n\t\t\tListSelectionMode.SingleStart,\n\t\t\tListSelectionMode.SingleEnd,\n\t\t\tListSelectionMode.Single,\n\t\t].includes(this._selectionMode as ListSelectionMode);\n\t}\n\n\tget modeMultiple() {\n\t\treturn this._selectionMode === ListSelectionMode.Multiple;\n\t}\n\n\tget modeDelete() {\n\t\treturn this._selectionMode === ListSelectionMode.Delete;\n\t}\n\n\t/**\n\t * Used in UploadCollectionItem\n\t */\n\tget renderDeleteButton() {\n\t\treturn this.modeDelete;\n\t}\n\n\t/**\n\t * End\n\t */\n\n\tget typeDetail() {\n\t\treturn this.type === ListItemType.Detail;\n\t}\n\n\tget typeNavigation() {\n\t\treturn this.type === ListItemType.Navigation;\n\t}\n\n\tget typeActive() {\n\t\treturn this.type === ListItemType.Active;\n\t}\n\n\tget _ariaSelected() {\n\t\tif (this.modeMultiple || this.modeSingleSelect) {\n\t\t\treturn this.selected;\n\t\t}\n\n\t\treturn undefined;\n\t}\n\n\tget ariaSelectedText() {\n\t\tlet ariaSelectedText;\n\n\t\t// Selected state needs to be supported separately since now the role mapping is list -> listitem[]\n\t\t// to avoid the issue of nesting interactive elements, ex. (option -> radio/checkbox);\n\t\t// The text is added to aria-describedby because as part of the aria-labelledby\n\t\t// the whole content of the item is readout when the aria-labelledby value is changed.\n\t\tif (this._ariaSelected !== undefined) {\n\t\t\tariaSelectedText = this._ariaSelected ? ListItem.i18nBundle.getText(LIST_ITEM_SELECTED) : ListItem.i18nBundle.getText(LIST_ITEM_NOT_SELECTED);\n\t\t}\n\n\t\treturn ariaSelectedText;\n\t}\n\n\tget deleteText() {\n\t\treturn ListItem.i18nBundle.getText(DELETE);\n\t}\n\n\tget hasDeleteButtonSlot() {\n\t\treturn !!this.deleteButton.length;\n\t}\n\n\tget _accessibleNameRef(): string {\n\t\tif ((this as IAccessibleListItem).accessibleName) {\n\t\t\t// accessibleName is set - return labels excluding content\n\t\t\treturn `${this._id}-invisibleText`;\n\t\t}\n\n\t\t// accessibleName is not set - return _accInfo.listItemAriaLabel including content\n\t\treturn `${this._id}-content ${this._id}-invisibleText`;\n\t}\n\n\tget _accInfo(): AccInfo {\n\t\treturn {\n\t\t\trole: this.accessibleRole || this.role,\n\t\t\tariaExpanded: undefined,\n\t\t\tariaLevel: undefined,\n\t\t\tariaLabel: ListItem.i18nBundle.getText(ARIA_LABEL_LIST_ITEM_CHECKBOX),\n\t\t\tariaLabelRadioButton: ListItem.i18nBundle.getText(ARIA_LABEL_LIST_ITEM_RADIO_BUTTON),\n\t\t\tariaSelectedText: this.ariaSelectedText,\n\t\t\tariaHaspopup: this.ariaHaspopup?.toLowerCase() as Lowercase<HasPopup> || undefined,\n\t\t\tsetsize: this.accessibilityAttributes.ariaSetsize,\n\t\t\tposinset: this.accessibilityAttributes.ariaPosinset,\n\t\t\ttooltip: this.tooltip || this.title,\n\t\t};\n\t}\n\n\tget _hasHighlightColor() {\n\t\treturn this.highlight !== HighlightTypes.None;\n\t}\n\n\tget hasConfigurableMode() {\n\t\treturn true;\n\t}\n\n\tget _listItem() {\n\t\treturn this.shadowRoot!.querySelector(\"li\");\n\t}\n\n\tstatic async onDefine() {\n\t\tListItem.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n}\n\nexport default ListItem;\nexport type {\n\tIAccessibleListItem,\n\tSelectionRequestEventDetail,\n\tPressEventDetail,\n\tAccessibilityAttributes,\n};\n"]}
|
package/dist/Menu.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ import ResponsivePopover from "./ResponsivePopover.js";
|
|
|
6
6
|
import type { ResponsivePopoverBeforeCloseEventDetail } from "./ResponsivePopover.js";
|
|
7
7
|
import StandardListItem from "./StandardListItem.js";
|
|
8
8
|
import type MenuItem from "./MenuItem.js";
|
|
9
|
+
import PopoverPlacement from "./types/PopoverPlacement.js";
|
|
9
10
|
import type { ListItemClickEventDetail } from "./List.js";
|
|
10
11
|
type CurrentItem = {
|
|
11
12
|
item: MenuItem;
|
|
@@ -144,7 +145,7 @@ declare class Menu extends UI5Element {
|
|
|
144
145
|
get itemsWithChildren(): boolean;
|
|
145
146
|
get itemsWithIcon(): boolean;
|
|
146
147
|
get isRtl(): boolean;
|
|
147
|
-
get
|
|
148
|
+
get placement(): `${PopoverPlacement}`;
|
|
148
149
|
get verticalAlign(): "Top" | "Bottom";
|
|
149
150
|
get labelBack(): string;
|
|
150
151
|
get labelClose(): string;
|
package/dist/Menu.js
CHANGED
|
@@ -6,6 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
var Menu_1;
|
|
8
8
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
9
|
+
import { renderFinished } from "@ui5/webcomponents-base/dist/Render.js";
|
|
9
10
|
import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
|
|
10
11
|
import property from "@ui5/webcomponents-base/dist/decorators/property.js";
|
|
11
12
|
import slot from "@ui5/webcomponents-base/dist/decorators/slot.js";
|
|
@@ -25,10 +26,11 @@ import MenuListItem from "./MenuListItem.js";
|
|
|
25
26
|
import StandardListItem from "./StandardListItem.js";
|
|
26
27
|
import Icon from "./Icon.js";
|
|
27
28
|
import BusyIndicator from "./BusyIndicator.js";
|
|
28
|
-
import
|
|
29
|
+
import "./types/PopoverPlacement.js";
|
|
30
|
+
import menuTemplate from "./generated/templates/MenuTemplate.lit.js";
|
|
29
31
|
import { MENU_BACK_BUTTON_ARIA_LABEL, MENU_CLOSE_BUTTON_ARIA_LABEL, } from "./generated/i18n/i18n-defaults.js";
|
|
30
32
|
// Styles
|
|
31
|
-
import
|
|
33
|
+
import menuCss from "./generated/themes/Menu.css.js";
|
|
32
34
|
const MENU_OPEN_DELAY = 300;
|
|
33
35
|
const MENU_CLOSE_DELAY = 400;
|
|
34
36
|
/**
|
|
@@ -76,8 +78,8 @@ let Menu = Menu_1 = class Menu extends UI5Element {
|
|
|
76
78
|
get isRtl() {
|
|
77
79
|
return this.effectiveDir === "rtl";
|
|
78
80
|
}
|
|
79
|
-
get
|
|
80
|
-
const placement = this.isRtl ? "
|
|
81
|
+
get placement() {
|
|
82
|
+
const placement = this.isRtl ? "Start" : "End";
|
|
81
83
|
return this._isSubMenu ? placement : "Bottom";
|
|
82
84
|
}
|
|
83
85
|
get verticalAlign() {
|
|
@@ -156,8 +158,8 @@ let Menu = Menu_1 = class Menu extends UI5Element {
|
|
|
156
158
|
}
|
|
157
159
|
async _createPopover() {
|
|
158
160
|
if (!this._popover) {
|
|
159
|
-
|
|
160
|
-
this._popover =
|
|
161
|
+
await renderFinished();
|
|
162
|
+
this._popover = this.shadowRoot.querySelector("[ui5-responsive-popover]");
|
|
161
163
|
}
|
|
162
164
|
return this._popover;
|
|
163
165
|
}
|
|
@@ -195,7 +197,7 @@ let Menu = Menu_1 = class Menu extends UI5Element {
|
|
|
195
197
|
subMenu.busyDelay = item.busyDelay;
|
|
196
198
|
const fragment = this._clonedItemsFragment(item);
|
|
197
199
|
subMenu.appendChild(fragment);
|
|
198
|
-
this.
|
|
200
|
+
this.shadowRoot.querySelector(".ui5-menu-submenus").appendChild(subMenu);
|
|
199
201
|
item._subMenu = subMenu;
|
|
200
202
|
}
|
|
201
203
|
_clonedItemsFragment(item) {
|
|
@@ -440,8 +442,8 @@ Menu = Menu_1 = __decorate([
|
|
|
440
442
|
customElement({
|
|
441
443
|
tag: "ui5-menu",
|
|
442
444
|
renderer: litRender,
|
|
443
|
-
|
|
444
|
-
|
|
445
|
+
styles: menuCss,
|
|
446
|
+
template: menuTemplate,
|
|
445
447
|
dependencies: [
|
|
446
448
|
ResponsivePopover,
|
|
447
449
|
Button,
|
package/dist/Menu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../src/Menu.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport DOMReference from \"@ui5/webcomponents-base/dist/types/DOMReference.js\";\nimport {\n\tisLeft,\n\tisRight,\n\tisEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport {\n\tisPhone,\n\tisDesktop,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { Timeout } from \"@ui5/webcomponents-base/dist/types.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport type { ResponsivePopoverBeforeCloseEventDetail } from \"./ResponsivePopover.js\";\nimport Button from \"./Button.js\";\nimport List from \"./List.js\";\nimport MenuListItem from \"./MenuListItem.js\";\nimport StandardListItem from \"./StandardListItem.js\";\nimport Icon from \"./Icon.js\";\nimport BusyIndicator from \"./BusyIndicator.js\";\nimport type MenuItem from \"./MenuItem.js\";\nimport type { ListItemClickEventDetail } from \"./List.js\";\nimport staticAreaMenuTemplate from \"./generated/templates/MenuTemplate.lit.js\";\nimport {\n\tMENU_BACK_BUTTON_ARIA_LABEL,\n\tMENU_CLOSE_BUTTON_ARIA_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport staticAreaMenuCss from \"./generated/themes/Menu.css.js\";\n\ntype CurrentItem = {\n\titem: MenuItem,\n\tposition: number,\n\tariaHasPopup: string | undefined,\n}\n\nconst MENU_OPEN_DELAY = 300;\nconst MENU_CLOSE_DELAY = 400;\n\ntype MenuItemClickEventDetail = {\n\titem: MenuItem,\n\ttext: string,\n}\n\ntype MenuBeforeOpenEventDetail = { item?: MenuItem };\ntype MenuBeforeCloseEventDetail = { escPressed: boolean };\n\ntype MenuItemFocusEventDetail = {\n\tref: HTMLElement,\n\titem: MenuItem,\n};\n\ntype OpenerStandardListItem = StandardListItem & { associatedItem: MenuItem };\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-menu` component represents a hierarchical menu structure.\n *\n * ### Usage\n *\n * `ui5-menu` contains `ui5-menu-item` components.\n * An arbitrary hierarchy structure can be represented by recursively nesting menu items.\n *\n * ### Keyboard Handling\n *\n * The `ui5-menu` provides advanced keyboard handling.\n * The user can use the following keyboard shortcuts in order to navigate trough the tree:\n *\n * - `Arrow Up` / `Arrow Down` - Navigates up and down the menu items that are currently visible.\n * - `Arrow Right`, `Space` or `Enter` - Opens a sub-menu if there are menu items nested\n * in the currently clicked menu item.\n * - `Arrow Left` or `Escape` - Closes the currently opened sub-menu.\n *\n * Note: if the text ditrection is set to Right-to-left (RTL), `Arrow Right` and `Arrow Left` functionality is swapped.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Menu.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.3.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-menu\",\n\trenderer: litRender,\n\tstaticAreaStyles: staticAreaMenuCss,\n\tstaticAreaTemplate: staticAreaMenuTemplate,\n\tdependencies: [\n\t\tResponsivePopover,\n\t\tButton,\n\t\tList,\n\t\tStandardListItem,\n\t\tMenuListItem,\n\t\tIcon,\n\t\tBusyIndicator,\n\t],\n})\n\n/**\n * Fired when an item is being clicked.\n *\n * **Note:** Since 1.17.0 the event is preventable, allowing the menu to remain open after an item is pressed.\n * @allowPreventDefault\n * @param { HTMLElement } item The currently clicked menu item.\n * @param { string } text The text of the currently clicked menu item.\n * @public\n */\n@event<MenuItemClickEventDetail>(\"item-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\titem: {\n\t\t\ttype: HTMLElement,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttext: {\n\t\t\ttype: String,\n\t\t},\n\t},\n})\n\n/**\n * Fired before the menu is opened. This event can be cancelled, which will prevent the menu from opening. **This event does not bubble.**\n *\n * **Note:** Since 1.14.0 the event is also fired before a sub-menu opens.\n * @public\n * @allowPreventDefault\n * @since 1.10.0\n * @param { HTMLElement } item The `ui5-menu-item` that triggers opening of the sub-menu or undefined when fired upon root menu opening.\n */\n@event<MenuBeforeOpenEventDetail>(\"before-open\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t * @since 1.14.0\n\t\t */\n\t\titem: {\n\t\t\ttype: HTMLElement,\n\t\t},\n\t},\n})\n\n/**\n * Fired after the menu is opened. **This event does not bubble.**\n * @public\n * @since 1.10.0\n */\n@event(\"after-open\")\n\n/**\n * Fired before the menu is closed. This event can be cancelled, which will prevent the menu from closing. **This event does not bubble.**\n * @public\n * @allowPreventDefault\n * @param {boolean} escPressed Indicates that `ESC` key has triggered the event.\n * @since 1.10.0\n */\n@event<MenuBeforeCloseEventDetail>(\"before-close\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tescPressed: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n})\n\n/**\n * Fired after the menu is closed. **This event does not bubble.**\n * @public\n * @since 1.10.0\n */\n@event(\"after-close\")\n\n/**\n * Fired when a menu item receives focus.\n *\n * @public\n * @param { HTMLElement } ref The currently focused element representing a <code>ui5-menu-item</code>.\n * @param { HTMLElement } item The <code>ui5-menu-item</code> represented by the focused element.\n * @since 1.23.1\n */\n@event<MenuItemFocusEventDetail>(\"item-focus\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tref: {\n\t\t\ttype: HTMLElement,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\titem: {\n\t\t\ttype: HTMLElement,\n\t\t},\n\t},\n})\n\nclass Menu extends UI5Element {\n\t/**\n\t * Defines the header text of the menu (displayed on mobile).\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\theaderText!: string;\n\n\t/**\n\t * Indicates if the menu is open\n\t * @public\n\t * @default false\n\t * @since 1.10.0\n\t */\n\t@property({ type: Boolean })\n\topen!:boolean;\n\n\t/**\n\t * Defines if a loading indicator would be displayed inside the corresponding ui5-menu popover.\n\t * @default false\n\t * @public\n\t * @since 1.13.0\n\t */\n\t@property({ type: Boolean })\n\tbusy!: boolean;\n\n\t/**\n\t * Defines the delay in milliseconds, after which the busy indicator will be displayed inside the corresponding ui5-menu popover..\n\t * @default 1000\n\t * @public\n\t * @since 1.13.0\n\t */\n\t@property({ validator: Integer, defaultValue: 1000 })\n\tbusyDelay!: number;\n\n\t/**\n\t * Defines the ID or DOM Reference of the element that the menu is shown at\n\t * @public\n\t * @default \"\"\n\t * @since 1.10.0\n\t */\n\t@property({ validator: DOMReference, defaultValue: \"\" })\n\topener!: HTMLElement | string;\n\n\t/**\n\t * Defines if the menu is sub-menu (not first-level).\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_isSubMenu!: boolean;\n\n\t/**\n\t * Stores id of a list item that opened sub-menu.\n\t * @private\n\t */\n\t@property()\n\t_subMenuOpenerId!: string;\n\n\t/**\n\t * Defines the currently available menu items.\n\t * (in case of non-phone devices these are the items of the menu,\n\t * but for phone devices the items of the currently opened sub-menu\n\t * will be populated here)\n\t * @private\n\t */\n\t@property({ type: Object, multiple: true })\n\t_currentItems!: Array<CurrentItem>;\n\n\t/**\n\t * Stores the ResponsivePopover instance\n\t */\n\t@property({ type: Object, defaultValue: undefined })\n\t_popover?: ResponsivePopover;\n\n\t/**\n\t * Stores parent menu item (if there is such).\n\t */\n\t@property({ type: Object, defaultValue: undefined })\n\t_parentMenuItem?: MenuItem;\n\n\t/**\n\t * Stores parent menu item DOM representation (if there is such).\n\t */\n\t@property({ type: Object, defaultValue: undefined })\n\t_opener?: HTMLElement;\n\n\t/**\n\t * Stores menu item that have sub-menu opened.\n\t */\n\t@property({ type: Object, defaultValue: undefined })\n\t_openedSubMenuItem?: MenuItem;\n\n\t/**\n\t * Defines the items of this component.\n\t *\n\t * **Note:** Use `ui5-menu-item` for the intended design.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\titems!: Array<MenuItem>;\n\n\tstatic i18nBundle: I18nBundle;\n\t_timeout?: Timeout;\n\n\tstatic async onDefine() {\n\t\tMenu.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tget itemsWithChildren() {\n\t\treturn !!this._currentItems.filter(item => item.item.items.length).length;\n\t}\n\n\tget itemsWithIcon() {\n\t\treturn !!this._currentItems.filter(item => item.item.icon !== \"\").length;\n\t}\n\n\tget isRtl() {\n\t\treturn this.effectiveDir === \"rtl\";\n\t}\n\n\tget placementType() {\n\t\tconst placement = this.isRtl ? \"Left\" : \"Right\";\n\t\treturn this._isSubMenu ? placement : \"Bottom\";\n\t}\n\n\tget verticalAlign() {\n\t\treturn this._isSubMenu ? \"Top\" : \"Bottom\";\n\t}\n\n\tget labelBack() {\n\t\treturn Menu.i18nBundle.getText(MENU_BACK_BUTTON_ARIA_LABEL);\n\t}\n\n\tget labelClose() {\n\t\treturn Menu.i18nBundle.getText(MENU_CLOSE_BUTTON_ARIA_LABEL);\n\t}\n\n\tget isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget isSubMenuOpened() {\n\t\treturn this._parentMenuItem && this._popover?.isOpen();\n\t}\n\n\tget menuHeaderTextPhone() {\n\t\treturn this._parentMenuItem ? this._parentMenuItem.text : this.headerText;\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prepareCurrentItems(this.items);\n\n\t\tconst itemsWithChildren = this.itemsWithChildren;\n\t\tconst itemsWithIcon = this.itemsWithIcon;\n\n\t\tthis._currentItems.forEach(item => {\n\t\t\titem.item._siblingsWithChildren = itemsWithChildren;\n\t\t\titem.item._siblingsWithIcon = itemsWithIcon;\n\t\t\tconst subMenu = item.item._subMenu;\n\t\t\tconst menuItem = item.item;\n\t\t\tif (subMenu && subMenu.busy) {\n\t\t\t\tsubMenu.innerHTML = \"\";\n\t\t\t\tconst fragment = this._clonedItemsFragment(menuItem);\n\t\t\t\tsubMenu.appendChild(fragment);\n\t\t\t}\n\n\t\t\tif (subMenu) {\n\t\t\t\tsubMenu.busy = item.item.busy;\n\t\t\t\tsubMenu.busyDelay = item.item.busyDelay;\n\t\t\t}\n\t\t});\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this.opener) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.open) {\n\t\t\tconst opener = this.getOpener();\n\t\t\tif (opener && !this.isSubMenuOpened) {\n\t\t\t\tthis.showAt(opener);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.close();\n\t\t}\n\t}\n\n\t/**\n\t * Shows the Menu near the opener element.\n\t * @param opener the element that the popover is shown at\n\t * @public\n\t */\n\tasync showAt(opener: HTMLElement): Promise<void> {\n\t\tif (!this._isSubMenu) {\n\t\t\tthis._parentMenuItem = undefined;\n\t\t\tthis._opener = undefined;\n\t\t}\n\t\tconst busyWithoutItems = !this._parentMenuItem?.items.length && this._parentMenuItem?.busy;\n\t\tconst popover = await this._createPopover();\n\t\tpopover.initialFocus = `${this._id}-menu-item-0`;\n\t\tpopover.showAt(opener, busyWithoutItems);\n\t}\n\n\t/**\n\t * Closes the Menu.\n\t * @public\n\t */\n\tclose(): void {\n\t\tthis._popover?.close(false, false, true);\n\t}\n\n\tasync _createPopover() {\n\t\tif (!this._popover) {\n\t\t\tconst staticAreaItemDomRef = await this.getStaticAreaItemDomRef();\n\t\t\tthis._popover = staticAreaItemDomRef!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t\t}\n\t\treturn this._popover;\n\t}\n\n\tgetOpener() {\n\t\tconst rootNode = this.getRootNode() as Document;\n\t\treturn this.opener instanceof HTMLElement ? this.opener : rootNode?.getElementById?.(this.opener);\n\t}\n\n\t_navigateBack() {\n\t\tthis._closeItemSubMenu(this._parentMenuItem as MenuItem, true);\n\t}\n\n\t_closeAll() {\n\t\tconst mainMenu = this._findMainMenu(this);\n\t\tmainMenu?.close();\n\t}\n\n\t_prepareCurrentItems(items: Array<MenuItem>) {\n\t\tthis._currentItems = items.map((item, index) => {\n\t\t\treturn {\n\t\t\t\titem,\n\t\t\t\tposition: index + 1,\n\t\t\t\tariaHasPopup: item.hasSubmenu ? \"menu\" : undefined,\n\t\t\t};\n\t\t});\n\t}\n\n\t_createSubMenu(item: MenuItem, opener: HTMLElement) {\n\t\tif (item._subMenu) {\n\t\t\treturn;\n\t\t}\n\t\tconst ctor = this.constructor as typeof Menu;\n\t\tconst subMenu = document.createElement(ctor.getMetadata().getTag()) as Menu;\n\n\t\tsubMenu._isSubMenu = true;\n\t\tsubMenu.setAttribute(\"id\", `submenu-${opener.id}`);\n\t\tsubMenu._parentMenuItem = item;\n\t\tsubMenu._opener = opener;\n\t\tsubMenu.busy = item.busy;\n\t\tsubMenu.busyDelay = item.busyDelay;\n\t\tconst fragment = this._clonedItemsFragment(item);\n\t\tsubMenu.appendChild(fragment);\n\t\tthis.staticAreaItem!.shadowRoot!.querySelector(\".ui5-menu-submenus\")!.appendChild(subMenu);\n\t\titem._subMenu = subMenu;\n\t}\n\n\t_clonedItemsFragment(item: MenuItem) {\n\t\tconst fragment = document.createDocumentFragment();\n\n\t\tfor (let i = 0; i < item.items.length; ++i) {\n\t\t\tconst clonedItem = item.items[i].cloneNode(true);\n\t\t\tfragment.appendChild(clonedItem);\n\t\t}\n\n\t\treturn fragment;\n\t}\n\n\t_openItemSubMenu(item: MenuItem, opener: HTMLElement) {\n\t\tconst mainMenu = this._findMainMenu(item);\n\t\tmainMenu?.fireEvent<MenuBeforeOpenEventDetail>(\"before-open\", {\n\t\t\titem,\n\t\t}, false, false);\n\t\titem._subMenu!.showAt(opener);\n\t\titem._preventSubMenuClose = true;\n\t\tthis._openedSubMenuItem = item;\n\t\tthis._subMenuOpenerId = opener.id;\n\t}\n\n\t_closeItemSubMenu(item: MenuItem, forceClose = false, keyboard = false) {\n\t\tif (item) {\n\t\t\tif (forceClose) {\n\t\t\t\titem._preventSubMenuClose = false;\n\t\t\t\tthis._closeSubMenuPopover(item._subMenu!, forceClose, keyboard);\n\t\t\t} else {\n\t\t\t\tsetTimeout(() => this._closeSubMenuPopover(item._subMenu!), 0);\n\t\t\t}\n\t\t}\n\t}\n\n\t_closeSubMenuPopover(subMenu: Menu, forceClose = false, keyboard = false) {\n\t\tif (subMenu) {\n\t\t\tconst parentItem = subMenu._parentMenuItem!;\n\n\t\t\tif (forceClose || !parentItem._preventSubMenuClose) {\n\t\t\t\tsubMenu.close();\n\t\t\t\tif (keyboard) {\n\t\t\t\t\tsubMenu._opener?.focus();\n\t\t\t\t}\n\t\t\t\tthis._openedSubMenuItem = undefined;\n\t\t\t\tthis._subMenuOpenerId = \"\";\n\t\t\t}\n\t\t}\n\t}\n\n\t_prepareSubMenu(item: MenuItem, opener: HTMLElement) {\n\t\tif (opener.id !== this._subMenuOpenerId || (item && item.hasSubmenu)) {\n\t\t\t// close opened sub-menu if there is any opened\n\t\t\tthis._closeItemSubMenu(this._openedSubMenuItem!, true);\n\t\t}\n\t\tif (item && item.hasSubmenu) {\n\t\t\t// create new sub-menu\n\t\t\tthis._createSubMenu(item, opener);\n\t\t\tthis._openItemSubMenu(item, opener);\n\t\t}\n\t\tif (this._parentMenuItem) {\n\t\t\tthis._parentMenuItem._preventSubMenuClose = true;\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent): void {\n\t\tconst target = e.target as HTMLElement;\n\t\tconst menuListItem = target.hasAttribute(\"ui5-menu-li\")\n\t\t\t? target as MenuListItem\n\t\t\t: (target.getRootNode() as ShadowRoot).host as MenuListItem;\n\t\tconst item = menuListItem.associatedItem;\n\t\tconst mainMenu = this._findMainMenu(item);\n\t\tmainMenu?.fireEvent<MenuItemFocusEventDetail>(\"item-focus\", { ref: menuListItem, item });\n\t}\n\n\t_startOpenTimeout(item: MenuItem, opener: OpenerStandardListItem) {\n\t\tclearTimeout(this._timeout);\n\n\t\t// Sets the new timeout\n\t\tthis._timeout = setTimeout(() => {\n\t\t\tthis._prepareSubMenu(item, opener);\n\t\t}, MENU_OPEN_DELAY);\n\t}\n\n\t_startCloseTimeout(item: MenuItem) {\n\t\tclearTimeout(this._timeout);\n\n\t\t// Sets the new timeout\n\t\tthis._timeout = setTimeout(() => {\n\t\t\tthis._closeItemSubMenu(item);\n\t\t}, MENU_CLOSE_DELAY);\n\t}\n\n\t_itemMouseOver(e: MouseEvent) {\n\t\tif (isDesktop()) {\n\t\t\t// respect mouseover only on desktop\n\t\t\tconst opener = e.target as OpenerStandardListItem;\n\t\t\tconst item = opener.associatedItem;\n\n\t\t\topener.focus();\n\n\t\t\t// Opens submenu with 300ms delay\n\t\t\tthis._startOpenTimeout(item, opener);\n\t\t}\n\t}\n\n\t_busyMouseOver() {\n\t\tif (this._parentMenuItem) {\n\t\t\tthis._parentMenuItem._preventSubMenuClose = true;\n\t\t}\n\t}\n\n\t_itemMouseOut(e: MouseEvent) {\n\t\tif (isDesktop()) {\n\t\t\tconst opener = e.target as OpenerStandardListItem;\n\t\t\tconst item = opener.associatedItem;\n\n\t\t\tclearTimeout(this._timeout);\n\n\t\t\t// Close submenu with 400ms delay\n\t\t\tif (item && item.hasSubmenu && item._subMenu) {\n\t\t\t\t// try to close the sub-menu\n\t\t\t\titem._preventSubMenuClose = false;\n\t\t\t\tthis._startCloseTimeout(item);\n\t\t\t}\n\t\t}\n\t}\n\n\t_itemKeyDown(e: KeyboardEvent) {\n\t\tconst shouldCloseMenu = this.isRtl ? isRight(e) : isLeft(e);\n\t\tconst shouldOpenMenu = this.isRtl ? isLeft(e) : isRight(e);\n\n\t\tif (isEnter(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\t\tif (shouldOpenMenu) {\n\t\t\tconst opener = e.target as OpenerStandardListItem;\n\t\t\tconst item = opener.associatedItem;\n\n\t\t\titem.hasSubmenu && this._prepareSubMenu(item, opener);\n\t\t} else if (shouldCloseMenu && this._isSubMenu && this._parentMenuItem) {\n\t\t\tconst parentMenuItemParent = this._parentMenuItem.parentElement as Menu;\n\t\t\tparentMenuItemParent._closeItemSubMenu(this._parentMenuItem, true, true);\n\t\t}\n\t}\n\n\t_itemClick(e: CustomEvent<ListItemClickEventDetail>) {\n\t\tconst opener = e.detail.item as OpenerStandardListItem;\n\t\tconst item = opener.associatedItem;\n\n\t\tif (!item.hasSubmenu) {\n\t\t\t// click on an item that doesn't have sub-items fires an \"item-click\" event\n\t\t\tif (!this._isSubMenu) {\n\t\t\t\t// fire event if the click is on top-level menu item\n\t\t\t\tconst prevented = !this.fireEvent<MenuItemClickEventDetail>(\"item-click\", {\n\t\t\t\t\t\"item\": item,\n\t\t\t\t\t\"text\": item.text,\n\t\t\t\t}, true, false);\n\n\t\t\t\tif (!prevented) {\n\t\t\t\t\tthis._popover!.close();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst mainMenu = this._findMainMenu(item);\n\t\t\t\tconst prevented = !mainMenu.fireEvent<MenuItemClickEventDetail>(\"item-click\", {\n\t\t\t\t\t\"item\": item,\n\t\t\t\t\t\"text\": item.text,\n\t\t\t\t}, true, false);\n\n\t\t\t\tif (!prevented) {\n\t\t\t\t\tlet openerMenuItem = item;\n\t\t\t\t\tlet parentMenu = openerMenuItem.parentElement as Menu;\n\t\t\t\t\tdo {\n\t\t\t\t\t\topenerMenuItem._preventSubMenuClose = false;\n\t\t\t\t\t\tthis._closeItemSubMenu(openerMenuItem);\n\t\t\t\t\t\tparentMenu = openerMenuItem.parentElement as Menu;\n\t\t\t\t\t\topenerMenuItem = parentMenu._parentMenuItem as MenuItem;\n\t\t\t\t\t} while (parentMenu._parentMenuItem);\n\n\t\t\t\t\tmainMenu._popover!.close();\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tthis._prepareSubMenu(item, opener);\n\t\t}\n\t}\n\n\t_findMainMenu(element: MenuItem | Menu) {\n\t\tlet menu = this._isMenu(element) ? element as Menu : element.parentElement as Menu;\n\t\twhile (menu && menu._parentMenuItem) {\n\t\t\tmenu = menu._parentMenuItem.parentElement as Menu;\n\t\t}\n\n\t\treturn menu;\n\t}\n\n\t_isMenu(element: HTMLElement) {\n\t\treturn element.hasAttribute(\"ui5-menu\");\n\t}\n\n\t_beforePopoverOpen(e: CustomEvent) {\n\t\tconst prevented = !this.fireEvent<MenuBeforeOpenEventDetail>(\"before-open\", {}, true, false);\n\n\t\tif (prevented) {\n\t\t\tthis.open = false;\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_afterPopoverOpen() {\n\t\tthis.open = true;\n\t\tthis.fireEvent(\"after-open\", {}, false, false);\n\t}\n\n\t_beforePopoverClose(e: CustomEvent<ResponsivePopoverBeforeCloseEventDetail>) {\n\t\tconst prevented = !this.fireEvent<MenuBeforeCloseEventDetail>(\"before-close\", { escPressed: e.detail.escPressed }, true, false);\n\n\t\tif (prevented) {\n\t\t\tthis.open = true;\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._openedSubMenuItem) {\n\t\t\tthis._openedSubMenuItem._preventSubMenuClose = false;\n\t\t\tthis._closeItemSubMenu(this._openedSubMenuItem);\n\t\t}\n\t}\n\n\t_afterPopoverClose() {\n\t\tthis.open = false;\n\t\tthis.fireEvent(\"after-close\", {}, false, false);\n\t}\n}\n\nMenu.define();\n\nexport default Menu;\nexport type {\n\tMenuItemClickEventDetail,\n\tMenuBeforeCloseEventDetail,\n\tMenuBeforeOpenEventDetail,\n\tMenuItemFocusEventDetail,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../src/Menu.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport { renderFinished } from \"@ui5/webcomponents-base/dist/Render.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport slot from \"@ui5/webcomponents-base/dist/decorators/slot.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event.js\";\nimport DOMReference from \"@ui5/webcomponents-base/dist/types/DOMReference.js\";\nimport {\n\tisLeft,\n\tisRight,\n\tisEnter,\n} from \"@ui5/webcomponents-base/dist/Keys.js\";\nimport {\n\tisPhone,\n\tisDesktop,\n} from \"@ui5/webcomponents-base/dist/Device.js\";\nimport { getI18nBundle } from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport \"@ui5/webcomponents-icons/dist/slim-arrow-right.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport { Timeout } from \"@ui5/webcomponents-base/dist/types.js\";\nimport Integer from \"@ui5/webcomponents-base/dist/types/Integer.js\";\nimport ResponsivePopover from \"./ResponsivePopover.js\";\nimport type { ResponsivePopoverBeforeCloseEventDetail } from \"./ResponsivePopover.js\";\nimport Button from \"./Button.js\";\nimport List from \"./List.js\";\nimport MenuListItem from \"./MenuListItem.js\";\nimport StandardListItem from \"./StandardListItem.js\";\nimport Icon from \"./Icon.js\";\nimport BusyIndicator from \"./BusyIndicator.js\";\nimport type MenuItem from \"./MenuItem.js\";\nimport PopoverPlacement from \"./types/PopoverPlacement.js\";\nimport type { ListItemClickEventDetail } from \"./List.js\";\nimport menuTemplate from \"./generated/templates/MenuTemplate.lit.js\";\nimport {\n\tMENU_BACK_BUTTON_ARIA_LABEL,\n\tMENU_CLOSE_BUTTON_ARIA_LABEL,\n} from \"./generated/i18n/i18n-defaults.js\";\n\n// Styles\nimport menuCss from \"./generated/themes/Menu.css.js\";\n\ntype CurrentItem = {\n\titem: MenuItem,\n\tposition: number,\n\tariaHasPopup: string | undefined,\n}\n\nconst MENU_OPEN_DELAY = 300;\nconst MENU_CLOSE_DELAY = 400;\n\ntype MenuItemClickEventDetail = {\n\titem: MenuItem,\n\ttext: string,\n}\n\ntype MenuBeforeOpenEventDetail = { item?: MenuItem };\ntype MenuBeforeCloseEventDetail = { escPressed: boolean };\n\ntype MenuItemFocusEventDetail = {\n\tref: HTMLElement,\n\titem: MenuItem,\n};\n\ntype OpenerStandardListItem = StandardListItem & { associatedItem: MenuItem };\n\n/**\n * @class\n *\n * ### Overview\n *\n * `ui5-menu` component represents a hierarchical menu structure.\n *\n * ### Usage\n *\n * `ui5-menu` contains `ui5-menu-item` components.\n * An arbitrary hierarchy structure can be represented by recursively nesting menu items.\n *\n * ### Keyboard Handling\n *\n * The `ui5-menu` provides advanced keyboard handling.\n * The user can use the following keyboard shortcuts in order to navigate trough the tree:\n *\n * - `Arrow Up` / `Arrow Down` - Navigates up and down the menu items that are currently visible.\n * - `Arrow Right`, `Space` or `Enter` - Opens a sub-menu if there are menu items nested\n * in the currently clicked menu item.\n * - `Arrow Left` or `Escape` - Closes the currently opened sub-menu.\n *\n * Note: if the text ditrection is set to Right-to-left (RTL), `Arrow Right` and `Arrow Left` functionality is swapped.\n *\n * ### ES6 Module Import\n *\n * `import \"@ui5/webcomponents/dist/Menu.js\";`\n * @constructor\n * @extends UI5Element\n * @since 1.3.0\n * @public\n */\n@customElement({\n\ttag: \"ui5-menu\",\n\trenderer: litRender,\n\tstyles: menuCss,\n\ttemplate: menuTemplate,\n\tdependencies: [\n\t\tResponsivePopover,\n\t\tButton,\n\t\tList,\n\t\tStandardListItem,\n\t\tMenuListItem,\n\t\tIcon,\n\t\tBusyIndicator,\n\t],\n})\n\n/**\n * Fired when an item is being clicked.\n *\n * **Note:** Since 1.17.0 the event is preventable, allowing the menu to remain open after an item is pressed.\n * @allowPreventDefault\n * @param { HTMLElement } item The currently clicked menu item.\n * @param { string } text The text of the currently clicked menu item.\n * @public\n */\n@event<MenuItemClickEventDetail>(\"item-click\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\titem: {\n\t\t\ttype: HTMLElement,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\ttext: {\n\t\t\ttype: String,\n\t\t},\n\t},\n})\n\n/**\n * Fired before the menu is opened. This event can be cancelled, which will prevent the menu from opening. **This event does not bubble.**\n *\n * **Note:** Since 1.14.0 the event is also fired before a sub-menu opens.\n * @public\n * @allowPreventDefault\n * @since 1.10.0\n * @param { HTMLElement } item The `ui5-menu-item` that triggers opening of the sub-menu or undefined when fired upon root menu opening.\n */\n@event<MenuBeforeOpenEventDetail>(\"before-open\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t * @since 1.14.0\n\t\t */\n\t\titem: {\n\t\t\ttype: HTMLElement,\n\t\t},\n\t},\n})\n\n/**\n * Fired after the menu is opened. **This event does not bubble.**\n * @public\n * @since 1.10.0\n */\n@event(\"after-open\")\n\n/**\n * Fired before the menu is closed. This event can be cancelled, which will prevent the menu from closing. **This event does not bubble.**\n * @public\n * @allowPreventDefault\n * @param {boolean} escPressed Indicates that `ESC` key has triggered the event.\n * @since 1.10.0\n */\n@event<MenuBeforeCloseEventDetail>(\"before-close\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tescPressed: {\n\t\t\ttype: Boolean,\n\t\t},\n\t},\n})\n\n/**\n * Fired after the menu is closed. **This event does not bubble.**\n * @public\n * @since 1.10.0\n */\n@event(\"after-close\")\n\n/**\n * Fired when a menu item receives focus.\n *\n * @public\n * @param { HTMLElement } ref The currently focused element representing a <code>ui5-menu-item</code>.\n * @param { HTMLElement } item The <code>ui5-menu-item</code> represented by the focused element.\n * @since 1.23.1\n */\n@event<MenuItemFocusEventDetail>(\"item-focus\", {\n\tdetail: {\n\t\t/**\n\t\t * @public\n\t\t */\n\t\tref: {\n\t\t\ttype: HTMLElement,\n\t\t},\n\t\t/**\n\t\t * @public\n\t\t */\n\t\titem: {\n\t\t\ttype: HTMLElement,\n\t\t},\n\t},\n})\n\nclass Menu extends UI5Element {\n\t/**\n\t * Defines the header text of the menu (displayed on mobile).\n\t * @default \"\"\n\t * @public\n\t */\n\t@property()\n\theaderText!: string;\n\n\t/**\n\t * Indicates if the menu is open\n\t * @public\n\t * @default false\n\t * @since 1.10.0\n\t */\n\t@property({ type: Boolean })\n\topen!:boolean;\n\n\t/**\n\t * Defines if a loading indicator would be displayed inside the corresponding ui5-menu popover.\n\t * @default false\n\t * @public\n\t * @since 1.13.0\n\t */\n\t@property({ type: Boolean })\n\tbusy!: boolean;\n\n\t/**\n\t * Defines the delay in milliseconds, after which the busy indicator will be displayed inside the corresponding ui5-menu popover..\n\t * @default 1000\n\t * @public\n\t * @since 1.13.0\n\t */\n\t@property({ validator: Integer, defaultValue: 1000 })\n\tbusyDelay!: number;\n\n\t/**\n\t * Defines the ID or DOM Reference of the element that the menu is shown at\n\t * @public\n\t * @default \"\"\n\t * @since 1.10.0\n\t */\n\t@property({ validator: DOMReference, defaultValue: \"\" })\n\topener!: HTMLElement | string;\n\n\t/**\n\t * Defines if the menu is sub-menu (not first-level).\n\t * @default false\n\t * @private\n\t */\n\t@property({ type: Boolean, noAttribute: true })\n\t_isSubMenu!: boolean;\n\n\t/**\n\t * Stores id of a list item that opened sub-menu.\n\t * @private\n\t */\n\t@property()\n\t_subMenuOpenerId!: string;\n\n\t/**\n\t * Defines the currently available menu items.\n\t * (in case of non-phone devices these are the items of the menu,\n\t * but for phone devices the items of the currently opened sub-menu\n\t * will be populated here)\n\t * @private\n\t */\n\t@property({ type: Object, multiple: true })\n\t_currentItems!: Array<CurrentItem>;\n\n\t/**\n\t * Stores the ResponsivePopover instance\n\t */\n\t@property({ type: Object, defaultValue: undefined })\n\t_popover?: ResponsivePopover;\n\n\t/**\n\t * Stores parent menu item (if there is such).\n\t */\n\t@property({ type: Object, defaultValue: undefined })\n\t_parentMenuItem?: MenuItem;\n\n\t/**\n\t * Stores parent menu item DOM representation (if there is such).\n\t */\n\t@property({ type: Object, defaultValue: undefined })\n\t_opener?: HTMLElement;\n\n\t/**\n\t * Stores menu item that have sub-menu opened.\n\t */\n\t@property({ type: Object, defaultValue: undefined })\n\t_openedSubMenuItem?: MenuItem;\n\n\t/**\n\t * Defines the items of this component.\n\t *\n\t * **Note:** Use `ui5-menu-item` for the intended design.\n\t * @public\n\t */\n\t@slot({ \"default\": true, type: HTMLElement, invalidateOnChildChange: true })\n\titems!: Array<MenuItem>;\n\n\tstatic i18nBundle: I18nBundle;\n\t_timeout?: Timeout;\n\n\tstatic async onDefine() {\n\t\tMenu.i18nBundle = await getI18nBundle(\"@ui5/webcomponents\");\n\t}\n\n\tget itemsWithChildren() {\n\t\treturn !!this._currentItems.filter(item => item.item.items.length).length;\n\t}\n\n\tget itemsWithIcon() {\n\t\treturn !!this._currentItems.filter(item => item.item.icon !== \"\").length;\n\t}\n\n\tget isRtl() {\n\t\treturn this.effectiveDir === \"rtl\";\n\t}\n\n\tget placement(): `${PopoverPlacement}` {\n\t\tconst placement = this.isRtl ? \"Start\" : \"End\";\n\t\treturn this._isSubMenu ? placement : \"Bottom\";\n\t}\n\n\tget verticalAlign() {\n\t\treturn this._isSubMenu ? \"Top\" : \"Bottom\";\n\t}\n\n\tget labelBack() {\n\t\treturn Menu.i18nBundle.getText(MENU_BACK_BUTTON_ARIA_LABEL);\n\t}\n\n\tget labelClose() {\n\t\treturn Menu.i18nBundle.getText(MENU_CLOSE_BUTTON_ARIA_LABEL);\n\t}\n\n\tget isPhone() {\n\t\treturn isPhone();\n\t}\n\n\tget isSubMenuOpened() {\n\t\treturn this._parentMenuItem && this._popover?.isOpen();\n\t}\n\n\tget menuHeaderTextPhone() {\n\t\treturn this._parentMenuItem ? this._parentMenuItem.text : this.headerText;\n\t}\n\n\tonBeforeRendering() {\n\t\tthis._prepareCurrentItems(this.items);\n\n\t\tconst itemsWithChildren = this.itemsWithChildren;\n\t\tconst itemsWithIcon = this.itemsWithIcon;\n\n\t\tthis._currentItems.forEach(item => {\n\t\t\titem.item._siblingsWithChildren = itemsWithChildren;\n\t\t\titem.item._siblingsWithIcon = itemsWithIcon;\n\t\t\tconst subMenu = item.item._subMenu;\n\t\t\tconst menuItem = item.item;\n\t\t\tif (subMenu && subMenu.busy) {\n\t\t\t\tsubMenu.innerHTML = \"\";\n\t\t\t\tconst fragment = this._clonedItemsFragment(menuItem);\n\t\t\t\tsubMenu.appendChild(fragment);\n\t\t\t}\n\n\t\t\tif (subMenu) {\n\t\t\t\tsubMenu.busy = item.item.busy;\n\t\t\t\tsubMenu.busyDelay = item.item.busyDelay;\n\t\t\t}\n\t\t});\n\t}\n\n\tonAfterRendering() {\n\t\tif (!this.opener) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.open) {\n\t\t\tconst opener = this.getOpener();\n\t\t\tif (opener && !this.isSubMenuOpened) {\n\t\t\t\tthis.showAt(opener);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.close();\n\t\t}\n\t}\n\n\t/**\n\t * Shows the Menu near the opener element.\n\t * @param opener the element that the popover is shown at\n\t * @public\n\t */\n\tasync showAt(opener: HTMLElement): Promise<void> {\n\t\tif (!this._isSubMenu) {\n\t\t\tthis._parentMenuItem = undefined;\n\t\t\tthis._opener = undefined;\n\t\t}\n\t\tconst busyWithoutItems = !this._parentMenuItem?.items.length && this._parentMenuItem?.busy;\n\t\tconst popover = await this._createPopover();\n\t\tpopover.initialFocus = `${this._id}-menu-item-0`;\n\t\tpopover.showAt(opener, busyWithoutItems);\n\t}\n\n\t/**\n\t * Closes the Menu.\n\t * @public\n\t */\n\tclose(): void {\n\t\tthis._popover?.close(false, false, true);\n\t}\n\n\tasync _createPopover() {\n\t\tif (!this._popover) {\n\t\t\tawait renderFinished();\n\t\t\tthis._popover = this.shadowRoot!.querySelector<ResponsivePopover>(\"[ui5-responsive-popover]\")!;\n\t\t}\n\t\treturn this._popover;\n\t}\n\n\tgetOpener() {\n\t\tconst rootNode = this.getRootNode() as Document;\n\t\treturn this.opener instanceof HTMLElement ? this.opener : rootNode?.getElementById?.(this.opener);\n\t}\n\n\t_navigateBack() {\n\t\tthis._closeItemSubMenu(this._parentMenuItem as MenuItem, true);\n\t}\n\n\t_closeAll() {\n\t\tconst mainMenu = this._findMainMenu(this);\n\t\tmainMenu?.close();\n\t}\n\n\t_prepareCurrentItems(items: Array<MenuItem>) {\n\t\tthis._currentItems = items.map((item, index) => {\n\t\t\treturn {\n\t\t\t\titem,\n\t\t\t\tposition: index + 1,\n\t\t\t\tariaHasPopup: item.hasSubmenu ? \"menu\" : undefined,\n\t\t\t};\n\t\t});\n\t}\n\n\t_createSubMenu(item: MenuItem, opener: HTMLElement) {\n\t\tif (item._subMenu) {\n\t\t\treturn;\n\t\t}\n\t\tconst ctor = this.constructor as typeof Menu;\n\t\tconst subMenu = document.createElement(ctor.getMetadata().getTag()) as Menu;\n\n\t\tsubMenu._isSubMenu = true;\n\t\tsubMenu.setAttribute(\"id\", `submenu-${opener.id}`);\n\t\tsubMenu._parentMenuItem = item;\n\t\tsubMenu._opener = opener;\n\t\tsubMenu.busy = item.busy;\n\t\tsubMenu.busyDelay = item.busyDelay;\n\t\tconst fragment = this._clonedItemsFragment(item);\n\t\tsubMenu.appendChild(fragment);\n\t\tthis.shadowRoot!.querySelector(\".ui5-menu-submenus\")!.appendChild(subMenu);\n\t\titem._subMenu = subMenu;\n\t}\n\n\t_clonedItemsFragment(item: MenuItem) {\n\t\tconst fragment = document.createDocumentFragment();\n\n\t\tfor (let i = 0; i < item.items.length; ++i) {\n\t\t\tconst clonedItem = item.items[i].cloneNode(true);\n\t\t\tfragment.appendChild(clonedItem);\n\t\t}\n\n\t\treturn fragment;\n\t}\n\n\t_openItemSubMenu(item: MenuItem, opener: HTMLElement) {\n\t\tconst mainMenu = this._findMainMenu(item);\n\t\tmainMenu?.fireEvent<MenuBeforeOpenEventDetail>(\"before-open\", {\n\t\t\titem,\n\t\t}, false, false);\n\t\titem._subMenu!.showAt(opener);\n\t\titem._preventSubMenuClose = true;\n\t\tthis._openedSubMenuItem = item;\n\t\tthis._subMenuOpenerId = opener.id;\n\t}\n\n\t_closeItemSubMenu(item: MenuItem, forceClose = false, keyboard = false) {\n\t\tif (item) {\n\t\t\tif (forceClose) {\n\t\t\t\titem._preventSubMenuClose = false;\n\t\t\t\tthis._closeSubMenuPopover(item._subMenu!, forceClose, keyboard);\n\t\t\t} else {\n\t\t\t\tsetTimeout(() => this._closeSubMenuPopover(item._subMenu!), 0);\n\t\t\t}\n\t\t}\n\t}\n\n\t_closeSubMenuPopover(subMenu: Menu, forceClose = false, keyboard = false) {\n\t\tif (subMenu) {\n\t\t\tconst parentItem = subMenu._parentMenuItem!;\n\n\t\t\tif (forceClose || !parentItem._preventSubMenuClose) {\n\t\t\t\tsubMenu.close();\n\t\t\t\tif (keyboard) {\n\t\t\t\t\tsubMenu._opener?.focus();\n\t\t\t\t}\n\t\t\t\tthis._openedSubMenuItem = undefined;\n\t\t\t\tthis._subMenuOpenerId = \"\";\n\t\t\t}\n\t\t}\n\t}\n\n\t_prepareSubMenu(item: MenuItem, opener: HTMLElement) {\n\t\tif (opener.id !== this._subMenuOpenerId || (item && item.hasSubmenu)) {\n\t\t\t// close opened sub-menu if there is any opened\n\t\t\tthis._closeItemSubMenu(this._openedSubMenuItem!, true);\n\t\t}\n\t\tif (item && item.hasSubmenu) {\n\t\t\t// create new sub-menu\n\t\t\tthis._createSubMenu(item, opener);\n\t\t\tthis._openItemSubMenu(item, opener);\n\t\t}\n\t\tif (this._parentMenuItem) {\n\t\t\tthis._parentMenuItem._preventSubMenuClose = true;\n\t\t}\n\t}\n\n\t_onfocusin(e: FocusEvent): void {\n\t\tconst target = e.target as HTMLElement;\n\t\tconst menuListItem = target.hasAttribute(\"ui5-menu-li\")\n\t\t\t? target as MenuListItem\n\t\t\t: (target.getRootNode() as ShadowRoot).host as MenuListItem;\n\t\tconst item = menuListItem.associatedItem;\n\t\tconst mainMenu = this._findMainMenu(item);\n\t\tmainMenu?.fireEvent<MenuItemFocusEventDetail>(\"item-focus\", { ref: menuListItem, item });\n\t}\n\n\t_startOpenTimeout(item: MenuItem, opener: OpenerStandardListItem) {\n\t\tclearTimeout(this._timeout);\n\n\t\t// Sets the new timeout\n\t\tthis._timeout = setTimeout(() => {\n\t\t\tthis._prepareSubMenu(item, opener);\n\t\t}, MENU_OPEN_DELAY);\n\t}\n\n\t_startCloseTimeout(item: MenuItem) {\n\t\tclearTimeout(this._timeout);\n\n\t\t// Sets the new timeout\n\t\tthis._timeout = setTimeout(() => {\n\t\t\tthis._closeItemSubMenu(item);\n\t\t}, MENU_CLOSE_DELAY);\n\t}\n\n\t_itemMouseOver(e: MouseEvent) {\n\t\tif (isDesktop()) {\n\t\t\t// respect mouseover only on desktop\n\t\t\tconst opener = e.target as OpenerStandardListItem;\n\t\t\tconst item = opener.associatedItem;\n\n\t\t\topener.focus();\n\n\t\t\t// Opens submenu with 300ms delay\n\t\t\tthis._startOpenTimeout(item, opener);\n\t\t}\n\t}\n\n\t_busyMouseOver() {\n\t\tif (this._parentMenuItem) {\n\t\t\tthis._parentMenuItem._preventSubMenuClose = true;\n\t\t}\n\t}\n\n\t_itemMouseOut(e: MouseEvent) {\n\t\tif (isDesktop()) {\n\t\t\tconst opener = e.target as OpenerStandardListItem;\n\t\t\tconst item = opener.associatedItem;\n\n\t\t\tclearTimeout(this._timeout);\n\n\t\t\t// Close submenu with 400ms delay\n\t\t\tif (item && item.hasSubmenu && item._subMenu) {\n\t\t\t\t// try to close the sub-menu\n\t\t\t\titem._preventSubMenuClose = false;\n\t\t\t\tthis._startCloseTimeout(item);\n\t\t\t}\n\t\t}\n\t}\n\n\t_itemKeyDown(e: KeyboardEvent) {\n\t\tconst shouldCloseMenu = this.isRtl ? isRight(e) : isLeft(e);\n\t\tconst shouldOpenMenu = this.isRtl ? isLeft(e) : isRight(e);\n\n\t\tif (isEnter(e)) {\n\t\t\te.preventDefault();\n\t\t}\n\t\tif (shouldOpenMenu) {\n\t\t\tconst opener = e.target as OpenerStandardListItem;\n\t\t\tconst item = opener.associatedItem;\n\n\t\t\titem.hasSubmenu && this._prepareSubMenu(item, opener);\n\t\t} else if (shouldCloseMenu && this._isSubMenu && this._parentMenuItem) {\n\t\t\tconst parentMenuItemParent = this._parentMenuItem.parentElement as Menu;\n\t\t\tparentMenuItemParent._closeItemSubMenu(this._parentMenuItem, true, true);\n\t\t}\n\t}\n\n\t_itemClick(e: CustomEvent<ListItemClickEventDetail>) {\n\t\tconst opener = e.detail.item as OpenerStandardListItem;\n\t\tconst item = opener.associatedItem;\n\n\t\tif (!item.hasSubmenu) {\n\t\t\t// click on an item that doesn't have sub-items fires an \"item-click\" event\n\t\t\tif (!this._isSubMenu) {\n\t\t\t\t// fire event if the click is on top-level menu item\n\t\t\t\tconst prevented = !this.fireEvent<MenuItemClickEventDetail>(\"item-click\", {\n\t\t\t\t\t\"item\": item,\n\t\t\t\t\t\"text\": item.text,\n\t\t\t\t}, true, false);\n\n\t\t\t\tif (!prevented) {\n\t\t\t\t\tthis._popover!.close();\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst mainMenu = this._findMainMenu(item);\n\t\t\t\tconst prevented = !mainMenu.fireEvent<MenuItemClickEventDetail>(\"item-click\", {\n\t\t\t\t\t\"item\": item,\n\t\t\t\t\t\"text\": item.text,\n\t\t\t\t}, true, false);\n\n\t\t\t\tif (!prevented) {\n\t\t\t\t\tlet openerMenuItem = item;\n\t\t\t\t\tlet parentMenu = openerMenuItem.parentElement as Menu;\n\t\t\t\t\tdo {\n\t\t\t\t\t\topenerMenuItem._preventSubMenuClose = false;\n\t\t\t\t\t\tthis._closeItemSubMenu(openerMenuItem);\n\t\t\t\t\t\tparentMenu = openerMenuItem.parentElement as Menu;\n\t\t\t\t\t\topenerMenuItem = parentMenu._parentMenuItem as MenuItem;\n\t\t\t\t\t} while (parentMenu._parentMenuItem);\n\n\t\t\t\t\tmainMenu._popover!.close();\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tthis._prepareSubMenu(item, opener);\n\t\t}\n\t}\n\n\t_findMainMenu(element: MenuItem | Menu) {\n\t\tlet menu = this._isMenu(element) ? element as Menu : element.parentElement as Menu;\n\t\twhile (menu && menu._parentMenuItem) {\n\t\t\tmenu = menu._parentMenuItem.parentElement as Menu;\n\t\t}\n\n\t\treturn menu;\n\t}\n\n\t_isMenu(element: HTMLElement) {\n\t\treturn element.hasAttribute(\"ui5-menu\");\n\t}\n\n\t_beforePopoverOpen(e: CustomEvent) {\n\t\tconst prevented = !this.fireEvent<MenuBeforeOpenEventDetail>(\"before-open\", {}, true, false);\n\n\t\tif (prevented) {\n\t\t\tthis.open = false;\n\t\t\te.preventDefault();\n\t\t}\n\t}\n\n\t_afterPopoverOpen() {\n\t\tthis.open = true;\n\t\tthis.fireEvent(\"after-open\", {}, false, false);\n\t}\n\n\t_beforePopoverClose(e: CustomEvent<ResponsivePopoverBeforeCloseEventDetail>) {\n\t\tconst prevented = !this.fireEvent<MenuBeforeCloseEventDetail>(\"before-close\", { escPressed: e.detail.escPressed }, true, false);\n\n\t\tif (prevented) {\n\t\t\tthis.open = true;\n\t\t\te.preventDefault();\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._openedSubMenuItem) {\n\t\t\tthis._openedSubMenuItem._preventSubMenuClose = false;\n\t\t\tthis._closeItemSubMenu(this._openedSubMenuItem);\n\t\t}\n\t}\n\n\t_afterPopoverClose() {\n\t\tthis.open = false;\n\t\tthis.fireEvent(\"after-close\", {}, false, false);\n\t}\n}\n\nMenu.define();\n\nexport default Menu;\nexport type {\n\tMenuItemClickEventDetail,\n\tMenuBeforeCloseEventDetail,\n\tMenuBeforeOpenEventDetail,\n\tMenuItemFocusEventDetail,\n};\n"]}
|
package/dist/MultiComboBox.d.ts
CHANGED
|
@@ -23,6 +23,7 @@ import ComboBoxFilter from "./types/ComboBoxFilter.js";
|
|
|
23
23
|
import type FormSupportT from "./features/InputElementsFormSupport.js";
|
|
24
24
|
import type ListItemBase from "./ListItemBase.js";
|
|
25
25
|
import { InputEventDetail } from "./Input.js";
|
|
26
|
+
import PopoverHorizontalAlign from "./types/PopoverHorizontalAlign.js";
|
|
26
27
|
/**
|
|
27
28
|
* Interface for components that may be slotted inside a `ui5-multi-combobox` as items
|
|
28
29
|
* @public
|
|
@@ -237,7 +238,6 @@ declare class MultiComboBox extends UI5Element {
|
|
|
237
238
|
_shouldFilterItems?: boolean;
|
|
238
239
|
_showMorePressed?: boolean;
|
|
239
240
|
_clearingValue?: boolean;
|
|
240
|
-
allItemsPopover?: ResponsivePopover;
|
|
241
241
|
valueStateHeader?: HTMLElement;
|
|
242
242
|
list?: List;
|
|
243
243
|
_shouldAutocomplete?: boolean;
|
|
@@ -245,7 +245,7 @@ declare class MultiComboBox extends UI5Element {
|
|
|
245
245
|
_isOpenedByKeyboard?: boolean;
|
|
246
246
|
_itemToFocus?: IMultiComboBoxItem;
|
|
247
247
|
_itemsBeforeOpen: Array<MultiComboboxItemWithSelection>;
|
|
248
|
-
selectedItems
|
|
248
|
+
selectedItems: Array<IMultiComboBoxItem>;
|
|
249
249
|
FormSupport?: typeof FormSupportT;
|
|
250
250
|
static i18nBundle: I18nBundle;
|
|
251
251
|
constructor();
|
|
@@ -254,7 +254,7 @@ declare class MultiComboBox extends UI5Element {
|
|
|
254
254
|
_handleResize(): void;
|
|
255
255
|
_handleMobileInput(e: CustomEvent<InputEventDetail>): void;
|
|
256
256
|
_inputChange(): void;
|
|
257
|
-
_mobileInputChange(e: CustomEvent):
|
|
257
|
+
_mobileInputChange(e: CustomEvent): void;
|
|
258
258
|
_togglePopover(): void;
|
|
259
259
|
togglePopoverByDropdownIcon(): void;
|
|
260
260
|
_showFilteredItems(): void;
|
|
@@ -289,10 +289,10 @@ declare class MultiComboBox extends UI5Element {
|
|
|
289
289
|
_handleSelectAll(): void;
|
|
290
290
|
_onListHeaderKeydown(e: KeyboardEvent): Promise<void>;
|
|
291
291
|
_handleSelectAllCheckboxClick(e: CustomEvent): void;
|
|
292
|
-
_onItemKeydown(e: KeyboardEvent):
|
|
292
|
+
_onItemKeydown(e: KeyboardEvent): void;
|
|
293
293
|
_handleArrowCtrl(e: KeyboardEvent): void;
|
|
294
294
|
_onItemTab(): void;
|
|
295
|
-
_handleArrowNavigation(e: KeyboardEvent, isDownControl: boolean):
|
|
295
|
+
_handleArrowNavigation(e: KeyboardEvent, isDownControl: boolean): void;
|
|
296
296
|
_handleArrowDown(): Promise<void>;
|
|
297
297
|
_handleItemRangeSelection(e: KeyboardEvent): void;
|
|
298
298
|
_navigateToNextItem(): void;
|
|
@@ -312,10 +312,10 @@ declare class MultiComboBox extends UI5Element {
|
|
|
312
312
|
_listSelectionChange(e: CustomEvent<ListSelectionChangeEventDetail>): void;
|
|
313
313
|
syncItems(listItems: Array<ListItemBase>): void;
|
|
314
314
|
fireSelectionChange(): boolean;
|
|
315
|
-
_getRespPopover():
|
|
315
|
+
_getRespPopover(): ResponsivePopover;
|
|
316
316
|
_getList(): Promise<List>;
|
|
317
317
|
_click(): void;
|
|
318
|
-
handleBeforeTokenizerPopoverOpen():
|
|
318
|
+
handleBeforeTokenizerPopoverOpen(): void;
|
|
319
319
|
_afterClosePicker(): void;
|
|
320
320
|
_beforeOpen(): void;
|
|
321
321
|
_handleTypeAhead(item: IMultiComboBoxItem, filterValue: string): void;
|
|
@@ -332,19 +332,19 @@ declare class MultiComboBox extends UI5Element {
|
|
|
332
332
|
toggle(isToggled: boolean): void;
|
|
333
333
|
handleCancel(): void;
|
|
334
334
|
handleOK(): void;
|
|
335
|
-
openPopover():
|
|
335
|
+
openPopover(): void;
|
|
336
336
|
_forwardFocusToInner(): void;
|
|
337
337
|
get morePopoverOpener(): HTMLElement;
|
|
338
|
-
closePopover():
|
|
339
|
-
_getPopover():
|
|
340
|
-
_getResponsivePopover():
|
|
341
|
-
_setValueStateHeader():
|
|
338
|
+
closePopover(): void;
|
|
339
|
+
_getPopover(): Popover;
|
|
340
|
+
_getResponsivePopover(): ResponsivePopover;
|
|
341
|
+
_setValueStateHeader(): void;
|
|
342
342
|
get _tokenizer(): Tokenizer;
|
|
343
343
|
inputFocusIn(e: FocusEvent): void;
|
|
344
344
|
inputFocusOut(e: FocusEvent): void;
|
|
345
345
|
get editable(): boolean;
|
|
346
346
|
get _isFocusInside(): boolean;
|
|
347
|
-
get selectedItemsListMode(): "None" | "
|
|
347
|
+
get selectedItemsListMode(): "None" | "Multiple";
|
|
348
348
|
get _listItemsType(): "Inactive" | "Active";
|
|
349
349
|
get hasValueState(): boolean;
|
|
350
350
|
get hasValueStateMessage(): boolean;
|
|
@@ -371,7 +371,7 @@ declare class MultiComboBox extends UI5Element {
|
|
|
371
371
|
get _showSelectedButtonAccessibleNameText(): string;
|
|
372
372
|
get _dialogOkButton(): string;
|
|
373
373
|
get _tokenizerExpanded(): boolean;
|
|
374
|
-
get _valueStatePopoverHorizontalAlign():
|
|
374
|
+
get _valueStatePopoverHorizontalAlign(): `${PopoverHorizontalAlign}`;
|
|
375
375
|
get iconsCount(): number;
|
|
376
376
|
get clearIconAccessibleName(): string;
|
|
377
377
|
get selectAllCheckboxLabel(): string;
|