@ui5/webcomponents 1.1.2 → 1.2.2
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 +100 -0
- package/README.md +1 -0
- package/dist/Avatar.js +1 -1
- package/dist/AvatarGroup.js +2 -2
- package/dist/Breadcrumbs.js +11 -4
- package/dist/BusyIndicator.js +1 -1
- package/dist/Button.js +44 -30
- package/dist/Calendar.js +1 -1
- package/dist/Card.js +2 -2
- package/dist/CheckBox.js +3 -3
- package/dist/ColorPalette.js +1 -1
- package/dist/ColorPaletteItem.js +2 -2
- package/dist/ColorPalettePopover.js +3 -3
- package/dist/ColorPicker.js +42 -4
- package/dist/ComboBox.js +10 -4
- package/dist/DatePicker.js +10 -8
- package/dist/DateRangePicker.js +7 -1
- package/dist/Dialog.js +35 -5
- package/dist/FileUploader.js +2 -1
- package/dist/Input.js +87 -19
- package/dist/Interfaces.js +1 -1
- package/dist/Label.js +7 -1
- package/dist/Link.js +16 -5
- package/dist/List.js +6 -16
- package/dist/ListItem.js +1 -1
- package/dist/ListItemBase.js +1 -1
- package/dist/MessageStrip.js +0 -8
- package/dist/MultiComboBox.js +186 -27
- package/dist/Panel.js +7 -8
- package/dist/Popover.js +39 -9
- package/dist/Popup.js +61 -26
- package/dist/ProgressIndicator.js +5 -0
- package/dist/RadioButton.js +1 -1
- package/dist/RangeSlider.js +6 -1
- package/dist/RatingIndicator.js +2 -2
- package/dist/ResponsivePopover.js +15 -11
- package/dist/SegmentedButton.js +2 -2
- package/dist/SegmentedButtonItem.js +7 -2
- package/dist/Select.js +14 -5
- package/dist/Slider.js +5 -0
- package/dist/SliderBase.js +4 -3
- package/dist/SplitButton.js +11 -5
- package/dist/StepInput.js +4 -4
- package/dist/Switch.js +13 -1
- package/dist/TabContainer.js +44 -3
- package/dist/Table.js +243 -4
- package/dist/TableColumn.js +0 -7
- package/dist/TableGroupRow.js +4 -0
- package/dist/TableRow.js +87 -8
- package/dist/TextArea.js +9 -4
- package/dist/Tokenizer.js +74 -8
- package/dist/Tree.js +5 -1
- package/dist/TreeItem.js +2 -2
- package/dist/TreeListItem.js +5 -2
- package/dist/api.json +129 -68
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/Calendar.css +1 -1
- package/dist/css/themes/ColorPalettePopover.css +1 -1
- package/dist/css/themes/ComboBox.css +1 -1
- package/dist/css/themes/DatePickerPopover.css +1 -1
- package/dist/css/themes/Dialog.css +1 -1
- package/dist/css/themes/Input.css +1 -1
- package/dist/css/themes/ListItemBase.css +1 -1
- package/dist/css/themes/MultiComboBox.css +1 -1
- package/dist/css/themes/PopupGlobal.css +1 -1
- package/dist/css/themes/PopupsCommon.css +1 -1
- package/dist/css/themes/ResponsivePopover.css +1 -1
- package/dist/css/themes/SelectPopover.css +1 -1
- package/dist/css/themes/SplitButton.css +1 -1
- package/dist/css/themes/Suggestions.css +1 -1
- package/dist/css/themes/TabInOverflow.css +1 -1
- package/dist/css/themes/TableRow.css +1 -1
- package/dist/css/themes/TimePickerPopover.css +1 -1
- package/dist/css/themes/TokenizerPopover.css +1 -0
- package/dist/css/themes/ValueStateMessage.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 -0
- package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -0
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -0
- package/dist/features/InputSuggestions.js +4 -0
- package/dist/generated/assets/i18n/messagebundle_ar.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_bg.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ca.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cs.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_cy.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_da.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_de.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_el.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_GB.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_et.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_fr_CA.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_hu.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_it.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_iw.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ja.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_kk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ko.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_lv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ms.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_nl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_no.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_pt_PT.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ro.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_ru.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sh.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sl.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_sv.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_th.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_tr.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_uk.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_vi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_CN.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_zh_TW.json +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 -0
- 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 -0
- package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -0
- package/dist/generated/i18n/i18n-defaults.js +2 -2
- package/dist/generated/json-imports/Themes-static.js +8 -2
- package/dist/generated/json-imports/Themes.js +4 -1
- package/dist/generated/templates/AvatarGroupTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
- package/dist/generated/templates/ButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/CalendarTemplate.lit.js +1 -1
- package/dist/generated/templates/CarouselTemplate.lit.js +3 -3
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPickerTemplate.lit.js +1 -1
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/CustomListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DatePickerTemplate.lit.js +1 -1
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/DialogTemplate.lit.js +3 -3
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +5 -4
- package/dist/generated/templates/InputPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/InputTemplate.lit.js +6 -5
- package/dist/generated/templates/ListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/ListTemplate.lit.js +1 -1
- package/dist/generated/templates/MessageStripTemplate.lit.js +1 -1
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/MultiInputTemplate.lit.js +7 -6
- package/dist/generated/templates/PanelTemplate.lit.js +2 -2
- package/dist/generated/templates/PopoverTemplate.lit.js +3 -3
- package/dist/generated/templates/PopupTemplate.lit.js +1 -1
- package/dist/generated/templates/RatingIndicatorTemplate.lit.js +1 -1
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +5 -5
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +1 -1
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/SelectTemplate.lit.js +1 -1
- package/dist/generated/templates/StandardListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/StepInputTemplate.lit.js +1 -1
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/SwitchTemplate.lit.js +1 -1
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TabContainerTemplate.lit.js +4 -4
- package/dist/generated/templates/TableGroupRowTemplate.lit.js +1 -1
- package/dist/generated/templates/TableRowTemplate.lit.js +2 -2
- package/dist/generated/templates/TableTemplate.lit.js +3 -3
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TextAreaTemplate.lit.js +1 -1
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/TokenizerTemplate.lit.js +1 -1
- package/dist/generated/templates/TreeListItemTemplate.lit.js +2 -2
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/Calendar.css.js +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
- package/dist/generated/themes/ComboBox.css.js +1 -1
- package/dist/generated/themes/DatePickerPopover.css.js +1 -1
- package/dist/generated/themes/Dialog.css.js +1 -1
- package/dist/generated/themes/Input.css.js +1 -1
- package/dist/generated/themes/ListItemBase.css.js +1 -1
- package/dist/generated/themes/MultiComboBox.css.js +1 -1
- package/dist/generated/themes/PopupGlobal.css.js +1 -1
- package/dist/generated/themes/PopupsCommon.css.js +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js +1 -1
- package/dist/generated/themes/SelectPopover.css.js +1 -1
- package/dist/generated/themes/SplitButton.css.js +1 -1
- package/dist/generated/themes/Suggestions.css.js +1 -1
- package/dist/generated/themes/TabInOverflow.css.js +1 -1
- package/dist/generated/themes/TableRow.css.js +1 -1
- package/dist/generated/themes/TimePickerPopover.css.js +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js +8 -0
- package/dist/generated/themes/ValueStateMessage.css.js +1 -1
- package/dist/generated/themes/sap_belize/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_belize_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -0
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -0
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -0
- package/dist/i18n/messagebundle.properties +6 -0
- package/dist/i18n/messagebundle_ar.properties +5 -0
- package/dist/i18n/messagebundle_bg.properties +5 -0
- package/dist/i18n/messagebundle_ca.properties +5 -0
- package/dist/i18n/messagebundle_cs.properties +5 -0
- package/dist/i18n/messagebundle_cy.properties +5 -0
- package/dist/i18n/messagebundle_da.properties +5 -0
- package/dist/i18n/messagebundle_de.properties +5 -0
- package/dist/i18n/messagebundle_el.properties +5 -0
- package/dist/i18n/messagebundle_en.properties +5 -0
- package/dist/i18n/messagebundle_en_GB.properties +5 -0
- package/dist/i18n/messagebundle_en_US_saprigi.properties +2 -0
- package/dist/i18n/messagebundle_es.properties +5 -0
- package/dist/i18n/messagebundle_es_MX.properties +5 -0
- package/dist/i18n/messagebundle_et.properties +5 -0
- package/dist/i18n/messagebundle_fi.properties +5 -0
- package/dist/i18n/messagebundle_fr.properties +5 -0
- package/dist/i18n/messagebundle_fr_CA.properties +5 -0
- package/dist/i18n/messagebundle_hi.properties +5 -0
- package/dist/i18n/messagebundle_hr.properties +5 -0
- package/dist/i18n/messagebundle_hu.properties +5 -0
- package/dist/i18n/messagebundle_id.properties +5 -0
- package/dist/i18n/messagebundle_it.properties +5 -0
- package/dist/i18n/messagebundle_iw.properties +5 -0
- package/dist/i18n/messagebundle_ja.properties +7 -2
- package/dist/i18n/messagebundle_kk.properties +5 -0
- package/dist/i18n/messagebundle_ko.properties +5 -0
- package/dist/i18n/messagebundle_lt.properties +5 -0
- package/dist/i18n/messagebundle_lv.properties +5 -0
- package/dist/i18n/messagebundle_ms.properties +5 -0
- package/dist/i18n/messagebundle_nl.properties +5 -0
- package/dist/i18n/messagebundle_no.properties +5 -0
- package/dist/i18n/messagebundle_pl.properties +5 -0
- package/dist/i18n/messagebundle_pt.properties +5 -0
- package/dist/i18n/messagebundle_pt_PT.properties +5 -0
- package/dist/i18n/messagebundle_ro.properties +5 -0
- package/dist/i18n/messagebundle_ru.properties +5 -0
- package/dist/i18n/messagebundle_sh.properties +5 -0
- package/dist/i18n/messagebundle_sk.properties +5 -0
- package/dist/i18n/messagebundle_sl.properties +5 -0
- package/dist/i18n/messagebundle_sv.properties +5 -0
- package/dist/i18n/messagebundle_th.properties +5 -0
- package/dist/i18n/messagebundle_tr.properties +5 -0
- package/dist/i18n/messagebundle_uk.properties +5 -0
- package/dist/i18n/messagebundle_vi.properties +5 -0
- package/dist/i18n/messagebundle_zh_CN.properties +5 -0
- package/dist/i18n/messagebundle_zh_TW.properties +5 -0
- package/package.json +11 -9
- package/src/Avatar.js +1 -1
- package/src/AvatarGroup.hbs +1 -1
- package/src/AvatarGroup.js +2 -2
- package/src/Breadcrumbs.hbs +2 -2
- package/src/Breadcrumbs.js +11 -4
- package/src/BreadcrumbsPopover.hbs +0 -1
- package/src/BusyIndicator.js +1 -1
- package/src/Button.hbs +4 -4
- package/src/Button.js +44 -30
- package/src/Calendar.hbs +1 -1
- package/src/Calendar.js +1 -1
- package/src/Card.js +2 -2
- package/src/Carousel.hbs +2 -2
- package/src/CheckBox.js +3 -3
- package/src/ColorPalette.js +1 -1
- package/src/ColorPaletteItem.js +2 -2
- package/src/ColorPalettePopover.hbs +1 -1
- package/src/ColorPalettePopover.js +3 -3
- package/src/ColorPicker.hbs +1 -0
- package/src/ColorPicker.js +42 -4
- package/src/ComboBox.js +10 -4
- package/src/ComboBoxPopover.hbs +0 -1
- package/src/DatePicker.hbs +1 -1
- package/src/DatePicker.js +10 -8
- package/src/DatePickerPopover.hbs +0 -2
- package/src/DateRangePicker.js +7 -1
- package/src/Dialog.hbs +3 -2
- package/src/Dialog.js +35 -5
- package/src/FileUploader.js +2 -1
- package/src/FileUploaderPopover.hbs +3 -2
- package/src/Input.hbs +5 -1
- package/src/Input.js +87 -19
- package/src/InputPopover.hbs +3 -4
- package/src/Interfaces.js +1 -1
- package/src/Label.js +7 -1
- package/src/Link.js +16 -5
- package/src/List.hbs +1 -1
- package/src/List.js +6 -16
- package/src/ListItem.hbs +1 -1
- package/src/ListItem.js +1 -1
- package/src/ListItemBase.js +1 -1
- package/src/MessageStrip.hbs +1 -1
- package/src/MessageStrip.js +0 -8
- package/src/MultiComboBox.js +186 -27
- package/src/MultiComboBoxPopover.hbs +0 -1
- package/src/Panel.hbs +4 -3
- package/src/Panel.js +7 -8
- package/src/Popover.hbs +2 -2
- package/src/Popover.js +39 -9
- package/src/Popup.hbs +1 -1
- package/src/Popup.js +61 -26
- package/src/ProgressIndicator.js +5 -0
- package/src/RadioButton.js +1 -1
- package/src/RangeSlider.js +6 -1
- package/src/RatingIndicator.hbs +2 -0
- package/src/RatingIndicator.js +2 -2
- package/src/ResponsivePopover.hbs +5 -5
- package/src/ResponsivePopover.js +15 -11
- package/src/SegmentedButton.js +2 -2
- package/src/SegmentedButtonItem.hbs +1 -1
- package/src/SegmentedButtonItem.js +7 -2
- package/src/Select.hbs +1 -0
- package/src/Select.js +14 -5
- package/src/SelectPopover.hbs +0 -1
- package/src/Slider.js +5 -0
- package/src/SliderBase.js +4 -3
- package/src/SplitButton.js +11 -5
- package/src/StepInput.hbs +4 -3
- package/src/StepInput.js +4 -4
- package/src/Switch.hbs +1 -1
- package/src/Switch.js +13 -1
- package/src/TabContainer.hbs +3 -3
- package/src/TabContainer.js +44 -3
- package/src/TabContainerPopover.hbs +1 -1
- package/src/Table.hbs +11 -1
- package/src/Table.js +243 -4
- package/src/TableColumn.js +0 -7
- package/src/TableGroupRow.hbs +1 -0
- package/src/TableGroupRow.js +4 -0
- package/src/TableRow.hbs +2 -0
- package/src/TableRow.js +87 -8
- package/src/TextArea.hbs +1 -1
- package/src/TextArea.js +9 -4
- package/src/TextAreaPopover.hbs +0 -1
- package/src/TimePickerPopover.hbs +0 -1
- package/src/Tokenizer.hbs +2 -1
- package/src/Tokenizer.js +74 -8
- package/src/Tree.js +5 -1
- package/src/TreeItem.js +2 -2
- package/src/TreeListItem.js +5 -2
- package/src/features/InputSuggestions.js +4 -0
- package/src/i18n/messagebundle.properties +6 -0
- package/src/i18n/messagebundle_ar.properties +5 -0
- package/src/i18n/messagebundle_bg.properties +5 -0
- package/src/i18n/messagebundle_ca.properties +5 -0
- package/src/i18n/messagebundle_cs.properties +5 -0
- package/src/i18n/messagebundle_cy.properties +5 -0
- package/src/i18n/messagebundle_da.properties +5 -0
- package/src/i18n/messagebundle_de.properties +5 -0
- package/src/i18n/messagebundle_el.properties +5 -0
- package/src/i18n/messagebundle_en.properties +5 -0
- package/src/i18n/messagebundle_en_GB.properties +5 -0
- package/src/i18n/messagebundle_en_US_saprigi.properties +2 -0
- package/src/i18n/messagebundle_es.properties +5 -0
- package/src/i18n/messagebundle_es_MX.properties +5 -0
- package/src/i18n/messagebundle_et.properties +5 -0
- package/src/i18n/messagebundle_fi.properties +5 -0
- package/src/i18n/messagebundle_fr.properties +5 -0
- package/src/i18n/messagebundle_fr_CA.properties +5 -0
- package/src/i18n/messagebundle_hi.properties +5 -0
- package/src/i18n/messagebundle_hr.properties +5 -0
- package/src/i18n/messagebundle_hu.properties +5 -0
- package/src/i18n/messagebundle_id.properties +5 -0
- package/src/i18n/messagebundle_it.properties +5 -0
- package/src/i18n/messagebundle_iw.properties +5 -0
- package/src/i18n/messagebundle_ja.properties +7 -2
- package/src/i18n/messagebundle_kk.properties +5 -0
- package/src/i18n/messagebundle_ko.properties +5 -0
- package/src/i18n/messagebundle_lt.properties +5 -0
- package/src/i18n/messagebundle_lv.properties +5 -0
- package/src/i18n/messagebundle_ms.properties +5 -0
- package/src/i18n/messagebundle_nl.properties +5 -0
- package/src/i18n/messagebundle_no.properties +5 -0
- package/src/i18n/messagebundle_pl.properties +5 -0
- package/src/i18n/messagebundle_pt.properties +5 -0
- package/src/i18n/messagebundle_pt_PT.properties +5 -0
- package/src/i18n/messagebundle_ro.properties +5 -0
- package/src/i18n/messagebundle_ru.properties +5 -0
- package/src/i18n/messagebundle_sh.properties +5 -0
- package/src/i18n/messagebundle_sk.properties +5 -0
- package/src/i18n/messagebundle_sl.properties +5 -0
- package/src/i18n/messagebundle_sv.properties +5 -0
- package/src/i18n/messagebundle_th.properties +5 -0
- package/src/i18n/messagebundle_tr.properties +5 -0
- package/src/i18n/messagebundle_uk.properties +5 -0
- package/src/i18n/messagebundle_vi.properties +5 -0
- package/src/i18n/messagebundle_zh_CN.properties +5 -0
- package/src/i18n/messagebundle_zh_TW.properties +5 -0
- package/src/themes/Avatar.css +1 -0
- package/src/themes/Button.css +1 -1
- package/src/themes/Calendar.css +6 -1
- package/src/themes/ColorPalettePopover.css +6 -5
- package/src/themes/DatePickerPopover.css +4 -0
- package/src/themes/Dialog.css +1 -5
- package/src/themes/Input.css +1 -0
- package/src/themes/ListItemBase.css +11 -5
- package/src/themes/MultiComboBox.css +0 -1
- package/src/themes/Popover.css +1 -1
- package/src/themes/PopupGlobal.css +1 -4
- package/src/themes/PopupsCommon.css +44 -4
- package/src/themes/ResponsivePopover.css +2 -7
- package/src/themes/ResponsivePopoverCommon.css +1 -0
- package/src/themes/SelectPopover.css +11 -2
- package/src/themes/SplitButton.css +1 -1
- package/src/themes/Suggestions.css +15 -1
- package/src/themes/TabInOverflow.css +5 -1
- package/src/themes/TableRow.css +1 -0
- package/src/themes/TimePickerPopover.css +4 -0
- package/src/themes/Tokenizer.css +1 -0
- package/src/themes/TokenizerPopover.css +4 -0
- package/src/themes/ValueStateMessage.css +10 -0
- package/src/themes/base/Avatar-parameters.css +31 -31
- package/src/themes/base/Badge-parameters.css +10 -10
- package/src/themes/base/DayPicker-parameters.css +2 -2
- package/src/themes/base/Dialog-parameters.css +1 -1
- package/src/themes/base/ListItemBase-parameters.css +1 -0
- package/src/themes/base/PopupsCommon-parameters.css +6 -1
- package/src/themes/base/SliderBase-parameters.css +7 -0
- package/src/themes/base/Switch-parameters.css +2 -13
- package/src/themes/base/sizes-parameters.css +7 -7
- package/src/themes/sap_belize_hcb/Avatar-parameters.css +15 -15
- package/src/themes/sap_belize_hcb/Switch-parameters.css +2 -4
- package/src/themes/sap_belize_hcw/Avatar-parameters.css +15 -15
- package/src/themes/sap_belize_hcw/Switch-parameters.css +2 -4
- package/src/themes/sap_fiori_3/Avatar-parameters.css +5 -5
- package/src/themes/sap_fiori_3_dark/Avatar-parameters.css +5 -5
- package/src/themes/sap_fiori_3_hcb/Avatar-parameters.css +19 -19
- package/src/themes/sap_fiori_3_hcb/DayPicker-parameters.css +0 -2
- package/src/themes/sap_fiori_3_hcb/Switch-parameters.css +2 -4
- package/src/themes/sap_fiori_3_hcw/Avatar-parameters.css +19 -19
- package/src/themes/sap_fiori_3_hcw/DayPicker-parameters.css +0 -2
- package/src/themes/sap_fiori_3_hcw/Switch-parameters.css +2 -4
- package/src/themes/sap_horizon/Dialog-parameters.css +1 -1
- package/src/themes/sap_horizon/ListItemBase-parameters.css +1 -2
- package/src/themes/sap_horizon/PopupsCommon-parameters.css +0 -1
- package/src/themes/sap_horizon/Switch-parameters.css +7 -7
- package/src/themes/sap_horizon_dark/Avatar-parameters.css +33 -0
- package/src/themes/sap_horizon_dark/BusyIndicator-parameters.css +7 -0
- package/src/themes/sap_horizon_dark/Button-parameters.css +20 -0
- package/src/themes/sap_horizon_dark/CalendarHeader-parameters.css +19 -0
- package/src/themes/sap_horizon_dark/Card-parameters.css +10 -0
- package/src/themes/sap_horizon_dark/CheckBox-parameters.css +34 -0
- package/src/themes/sap_horizon_dark/ColorPalette-parameters.css +16 -0
- package/src/themes/sap_horizon_dark/ColorPicker-parameters.css +10 -0
- package/src/themes/sap_horizon_dark/DatePicker-parameters.css +6 -0
- package/src/themes/sap_horizon_dark/DayPicker-parameters.css +31 -0
- package/src/themes/sap_horizon_dark/Dialog-parameters.css +11 -0
- package/src/themes/sap_horizon_dark/GrowingButton-parameters.css +5 -0
- package/src/themes/sap_horizon_dark/Input-parameters.css +35 -0
- package/src/themes/sap_horizon_dark/InputIcon-parameters.css +17 -0
- package/src/themes/sap_horizon_dark/Link-parameters.css +10 -0
- package/src/themes/sap_horizon_dark/List-parameters.css +5 -0
- package/src/themes/sap_horizon_dark/ListItemBase-parameters.css +7 -0
- package/src/themes/sap_horizon_dark/MessageStrip-parameters.css +9 -0
- package/src/themes/sap_horizon_dark/MonthPicker-parameters.css +17 -0
- package/src/themes/sap_horizon_dark/MultiComboBox-parameters.css +5 -0
- package/src/themes/sap_horizon_dark/Panel-parameters.css +12 -0
- package/src/themes/sap_horizon_dark/PopupsCommon-parameters.css +10 -0
- package/src/themes/sap_horizon_dark/ProgressIndicator-parameters.css +23 -0
- package/src/themes/sap_horizon_dark/RadioButton-parameters.css +9 -0
- package/src/themes/sap_horizon_dark/RatingIndicator-parameters.css +3 -0
- package/src/themes/sap_horizon_dark/SegmentedButtton-parameters.css +10 -0
- package/src/themes/sap_horizon_dark/Select-parameters.css +5 -0
- package/src/themes/sap_horizon_dark/SelectPopover-parameters.css +4 -0
- package/src/themes/sap_horizon_dark/SliderBase-parameters.css +44 -0
- package/src/themes/sap_horizon_dark/StepInput-parameters.css +25 -0
- package/src/themes/sap_horizon_dark/Suggestions-parameters.css +5 -0
- package/src/themes/sap_horizon_dark/Switch-parameters.css +31 -0
- package/src/themes/sap_horizon_dark/TabContainer-parameters.css +25 -0
- package/src/themes/sap_horizon_dark/Table-parameters.css +8 -0
- package/src/themes/sap_horizon_dark/TableColumn-parameters.css +5 -0
- package/src/themes/sap_horizon_dark/TableRow-parameters.css +5 -0
- package/src/themes/sap_horizon_dark/TextArea-parameters.css +22 -0
- package/src/themes/sap_horizon_dark/TimePicker-parameters.css +6 -0
- package/src/themes/sap_horizon_dark/ToggleButton-parameters.css +11 -0
- package/src/themes/sap_horizon_dark/Token-parameters.css +28 -0
- package/src/themes/sap_horizon_dark/Tokenizer-parameters.css +6 -0
- package/src/themes/sap_horizon_dark/ValueStateMessage-parameters.css +8 -0
- package/src/themes/sap_horizon_dark/WheelSlider-parameters.css +19 -0
- package/src/themes/sap_horizon_dark/YearPicker-parameters.css +16 -0
- package/src/themes/sap_horizon_dark/parameters-bundle.css +57 -0
- package/src/themes/sap_horizon_dark/sizes-parameters.css +8 -0
- package/src/themes/sap_horizon_exp/Switch-parameters.css +1 -1
- package/src/themes/sap_horizon_hcb/Avatar-parameters.css +24 -0
- package/src/themes/sap_horizon_hcb/Badge-parameters.css +43 -0
- package/src/themes/sap_horizon_hcb/Button-parameters.css +10 -0
- package/src/themes/sap_horizon_hcb/CalendarHeader-parameters.css +11 -0
- package/src/themes/sap_horizon_hcb/Card-parameters.css +6 -0
- package/src/themes/sap_horizon_hcb/Carousel-parameters.css +9 -0
- package/src/themes/sap_horizon_hcb/CheckBox-parameters.css +13 -0
- package/src/themes/sap_horizon_hcb/DatePicker-parameters.css +5 -0
- package/src/themes/sap_horizon_hcb/DayPicker-parameters.css +17 -0
- package/src/themes/sap_horizon_hcb/Dialog-parameters.css +7 -0
- package/src/themes/sap_horizon_hcb/GrowingButton-parameters.css +8 -0
- package/src/themes/sap_horizon_hcb/Input-parameters.css +21 -0
- package/src/themes/sap_horizon_hcb/InputIcon-parameters.css +5 -0
- package/src/themes/sap_horizon_hcb/Link-parameters.css +7 -0
- package/src/themes/sap_horizon_hcb/MessageStrip-parameters.css +10 -0
- package/src/themes/sap_horizon_hcb/MonthPicker-parameters.css +11 -0
- package/src/themes/sap_horizon_hcb/Panel-parameters.css +5 -0
- package/src/themes/sap_horizon_hcb/ProgressIndicator-parameters.css +11 -0
- package/src/themes/sap_horizon_hcb/RadioButton-parameters.css +10 -0
- package/src/themes/sap_horizon_hcb/Select-parameters.css +12 -0
- package/src/themes/sap_horizon_hcb/SliderBase-parameters.css +14 -0
- package/src/themes/sap_horizon_hcb/Switch-parameters.css +43 -0
- package/src/themes/sap_horizon_hcb/TabContainer-parameters.css +44 -0
- package/src/themes/sap_horizon_hcb/Table-parameters.css +5 -0
- package/src/themes/sap_horizon_hcb/TableRow-parameters.css +5 -0
- package/src/themes/sap_horizon_hcb/TextArea-parameters.css +10 -0
- package/src/themes/sap_horizon_hcb/TimePicker-parameters.css +5 -0
- package/src/themes/sap_horizon_hcb/ToggleButton-parameters.css +6 -0
- package/src/themes/sap_horizon_hcb/Token-parameters.css +7 -0
- package/src/themes/sap_horizon_hcb/ValueStateMessage-parameters.css +5 -0
- package/src/themes/sap_horizon_hcb/WheelSlider-parameters.css +17 -0
- package/src/themes/sap_horizon_hcb/YearPicker-parameters.css +11 -0
- package/src/themes/sap_horizon_hcb/parameters-bundle.css +48 -0
- package/src/themes/sap_horizon_hcw/Avatar-parameters.css +24 -0
- package/src/themes/sap_horizon_hcw/Badge-parameters.css +43 -0
- package/src/themes/sap_horizon_hcw/Button-parameters.css +10 -0
- package/src/themes/sap_horizon_hcw/CalendarHeader-parameters.css +11 -0
- package/src/themes/sap_horizon_hcw/Card-parameters.css +6 -0
- package/src/themes/sap_horizon_hcw/Carousel-parameters.css +9 -0
- package/src/themes/sap_horizon_hcw/CheckBox-parameters.css +13 -0
- package/src/themes/sap_horizon_hcw/DatePicker-parameters.css +5 -0
- package/src/themes/sap_horizon_hcw/DayPicker-parameters.css +17 -0
- package/src/themes/sap_horizon_hcw/Dialog-parameters.css +7 -0
- package/src/themes/sap_horizon_hcw/GrowingButton-parameters.css +8 -0
- package/src/themes/sap_horizon_hcw/Input-parameters.css +21 -0
- package/src/themes/sap_horizon_hcw/InputIcon-parameters.css +5 -0
- package/src/themes/sap_horizon_hcw/Link-parameters.css +7 -0
- package/src/themes/sap_horizon_hcw/MessageStrip-parameters.css +10 -0
- package/src/themes/sap_horizon_hcw/MonthPicker-parameters.css +11 -0
- package/src/themes/sap_horizon_hcw/Panel-parameters.css +5 -0
- package/src/themes/sap_horizon_hcw/ProgressIndicator-parameters.css +11 -0
- package/src/themes/sap_horizon_hcw/RadioButton-parameters.css +10 -0
- package/src/themes/sap_horizon_hcw/Select-parameters.css +12 -0
- package/src/themes/sap_horizon_hcw/SliderBase-parameters.css +13 -0
- package/src/themes/sap_horizon_hcw/Switch-parameters.css +43 -0
- package/src/themes/sap_horizon_hcw/TabContainer-parameters.css +44 -0
- package/src/themes/sap_horizon_hcw/Table-parameters.css +5 -0
- package/src/themes/sap_horizon_hcw/TableRow-parameters.css +5 -0
- package/src/themes/sap_horizon_hcw/TextArea-parameters.css +10 -0
- package/src/themes/sap_horizon_hcw/TimePicker-parameters.css +5 -0
- package/src/themes/sap_horizon_hcw/ToggleButton-parameters.css +6 -0
- package/src/themes/sap_horizon_hcw/Token-parameters.css +7 -0
- package/src/themes/sap_horizon_hcw/ValueStateMessage-parameters.css +5 -0
- package/src/themes/sap_horizon_hcw/WheelSlider-parameters.css +17 -0
- package/src/themes/sap_horizon_hcw/YearPicker-parameters.css +11 -0
- package/src/themes/sap_horizon_hcw/parameters-bundle.css +48 -0
package/dist/MultiComboBox.js
CHANGED
|
@@ -6,12 +6,14 @@ import {
|
|
|
6
6
|
isShow,
|
|
7
7
|
isDown,
|
|
8
8
|
isUp,
|
|
9
|
-
isBackSpace,
|
|
10
9
|
isSpace,
|
|
11
|
-
isLeft,
|
|
12
10
|
isRight,
|
|
13
|
-
|
|
14
|
-
|
|
11
|
+
isHome,
|
|
12
|
+
isTabNext,
|
|
13
|
+
isTabPrevious,
|
|
14
|
+
isHomeCtrl,
|
|
15
|
+
isEndCtrl,
|
|
16
|
+
isCtrlA,
|
|
15
17
|
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
16
18
|
import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
17
19
|
import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
|
|
@@ -20,6 +22,10 @@ import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
|
20
22
|
import "@ui5/webcomponents-icons/dist/decline.js";
|
|
21
23
|
import "@ui5/webcomponents-icons/dist/multiselect-all.js";
|
|
22
24
|
import "@ui5/webcomponents-icons/dist/not-editable.js";
|
|
25
|
+
import "@ui5/webcomponents-icons/dist/error.js";
|
|
26
|
+
import "@ui5/webcomponents-icons/dist/alert.js";
|
|
27
|
+
import "@ui5/webcomponents-icons/dist/sys-enter-2.js";
|
|
28
|
+
import "@ui5/webcomponents-icons/dist/information.js";
|
|
23
29
|
import MultiComboBoxItem from "./MultiComboBoxItem.js";
|
|
24
30
|
import Tokenizer from "./Tokenizer.js";
|
|
25
31
|
import Token from "./Token.js";
|
|
@@ -413,6 +419,7 @@ class MultiComboBox extends UI5Element {
|
|
|
413
419
|
this._deleting = false;
|
|
414
420
|
this._validationTimeout = null;
|
|
415
421
|
this._handleResizeBound = this._handleResize.bind(this);
|
|
422
|
+
this.currentItemIdx = -1;
|
|
416
423
|
}
|
|
417
424
|
|
|
418
425
|
onEnterDOM() {
|
|
@@ -524,7 +531,7 @@ class MultiComboBox extends UI5Element {
|
|
|
524
531
|
return this.placeholder;
|
|
525
532
|
}
|
|
526
533
|
|
|
527
|
-
|
|
534
|
+
_handleArrowLeft() {
|
|
528
535
|
const cursorPosition = this.getDomRef().querySelector(`input`).selectionStart;
|
|
529
536
|
|
|
530
537
|
if (cursorPosition === 0) {
|
|
@@ -535,14 +542,17 @@ class MultiComboBox extends UI5Element {
|
|
|
535
542
|
_tokenizerFocusOut(event) {
|
|
536
543
|
this._tokenizerFocused = false;
|
|
537
544
|
|
|
538
|
-
const tokensCount = this._tokenizer.tokens.length
|
|
545
|
+
const tokensCount = this._tokenizer.tokens.length;
|
|
546
|
+
const selectedTokens = this._selectedTokensCount;
|
|
547
|
+
const lastTokenBeingDeleted = tokensCount - 1 === 0 && this._deleting;
|
|
548
|
+
const allTokensAreBeingDeleted = selectedTokens === tokensCount && this._deleting;
|
|
539
549
|
|
|
540
550
|
if (!event.relatedTarget || !event.relatedTarget.hasAttribute("ui5-token")) {
|
|
541
551
|
this._tokenizer.tokens.forEach(token => { token.selected = false; });
|
|
542
552
|
this._tokenizer.scrollToStart();
|
|
543
553
|
}
|
|
544
554
|
|
|
545
|
-
if (
|
|
555
|
+
if (allTokensAreBeingDeleted || lastTokenBeingDeleted) {
|
|
546
556
|
setTimeout(() => {
|
|
547
557
|
if (!isPhone()) {
|
|
548
558
|
this.shadowRoot.querySelector("input").focus();
|
|
@@ -563,41 +573,85 @@ class MultiComboBox extends UI5Element {
|
|
|
563
573
|
}
|
|
564
574
|
|
|
565
575
|
async _onkeydown(event) {
|
|
566
|
-
if (isLeft(event)) {
|
|
567
|
-
this._handleLeft(event);
|
|
568
|
-
}
|
|
569
|
-
|
|
570
576
|
if (isShow(event) && !this.readonly && !this.disabled) {
|
|
571
577
|
event.preventDefault();
|
|
572
578
|
this.togglePopover();
|
|
573
579
|
}
|
|
574
580
|
|
|
575
|
-
if (
|
|
581
|
+
if (isUp(event) || isDown(event)) {
|
|
576
582
|
this._handleArrowNavigation(event);
|
|
583
|
+
return;
|
|
577
584
|
}
|
|
578
585
|
|
|
579
|
-
|
|
580
|
-
|
|
586
|
+
this._keyDown = true;
|
|
587
|
+
this[`_handle${event.key}`] && this[`_handle${event.key}`](event);
|
|
588
|
+
}
|
|
589
|
+
|
|
590
|
+
_handlePageUp(event) {
|
|
591
|
+
event.preventDefault();
|
|
592
|
+
}
|
|
593
|
+
|
|
594
|
+
_handlePageDown(event) {
|
|
595
|
+
event.preventDefault();
|
|
596
|
+
}
|
|
581
597
|
|
|
598
|
+
_handleBackspace(event) {
|
|
599
|
+
if (event.target.value === "") {
|
|
600
|
+
event.preventDefault();
|
|
582
601
|
this._tokenizer._focusLastToken();
|
|
583
602
|
}
|
|
603
|
+
}
|
|
584
604
|
|
|
585
|
-
|
|
586
|
-
if (
|
|
605
|
+
_handleEscape(event) {
|
|
606
|
+
if (!this.allowCustomValues || (!this.open && this.allowCustomValues)) {
|
|
587
607
|
this.value = this._lastValue;
|
|
588
608
|
}
|
|
609
|
+
}
|
|
610
|
+
|
|
611
|
+
_handleHome(event) {
|
|
612
|
+
const shouldFocusToken = this._isFocusInside && event.target.selectionStart === 0 && this._tokenizer.tokens.length > 0;
|
|
589
613
|
|
|
590
|
-
if (
|
|
591
|
-
|
|
614
|
+
if (shouldFocusToken) {
|
|
615
|
+
event.preventDefault();
|
|
616
|
+
this._tokenizer.tokens[0].focus();
|
|
592
617
|
}
|
|
618
|
+
}
|
|
593
619
|
|
|
594
|
-
|
|
620
|
+
_handleEnd(event) {
|
|
621
|
+
const tokens = this._tokenizer.tokens;
|
|
622
|
+
const lastTokenIdx = tokens.length - 1;
|
|
623
|
+
const shouldFocusInput = event.target === tokens[lastTokenIdx] && tokens[lastTokenIdx] === this.shadowRoot.activeElement;
|
|
624
|
+
|
|
625
|
+
if (shouldFocusInput) {
|
|
626
|
+
event.preventDefault();
|
|
627
|
+
this._inputDom.focus();
|
|
628
|
+
}
|
|
629
|
+
}
|
|
630
|
+
|
|
631
|
+
_handleTab(event) {
|
|
632
|
+
this.allItemsPopover.close();
|
|
633
|
+
}
|
|
634
|
+
|
|
635
|
+
_handleSelectAll(event) {
|
|
636
|
+
const filteredItems = this._filteredItems;
|
|
637
|
+
const allItemsSelected = filteredItems.every(item => item.selected);
|
|
638
|
+
|
|
639
|
+
filteredItems.forEach(item => {
|
|
640
|
+
item.selected = !allItemsSelected;
|
|
641
|
+
});
|
|
642
|
+
|
|
643
|
+
this.fireSelectionChange();
|
|
595
644
|
}
|
|
596
645
|
|
|
597
646
|
_onValueStateKeydown(event) {
|
|
598
647
|
const isArrowDown = isDown(event);
|
|
599
648
|
const isArrowUp = isUp(event);
|
|
600
649
|
|
|
650
|
+
if (isTabNext(event) || isTabPrevious(event)) {
|
|
651
|
+
this._onItemTab(event);
|
|
652
|
+
return;
|
|
653
|
+
}
|
|
654
|
+
|
|
601
655
|
event.preventDefault();
|
|
602
656
|
|
|
603
657
|
if (isArrowDown) {
|
|
@@ -612,23 +666,46 @@ class MultiComboBox extends UI5Element {
|
|
|
612
666
|
_onItemKeydown(event) {
|
|
613
667
|
const isFirstItem = this.list.items[0] === event.target;
|
|
614
668
|
|
|
669
|
+
if (isTabNext(event) || isTabPrevious(event)) {
|
|
670
|
+
this._onItemTab(event);
|
|
671
|
+
return;
|
|
672
|
+
}
|
|
673
|
+
|
|
674
|
+
if (isHomeCtrl(event)) {
|
|
675
|
+
this.list._itemNavigation._handleHome(event);
|
|
676
|
+
this.list.items[this.list._itemNavigation._currentIndex].focus();
|
|
677
|
+
}
|
|
678
|
+
|
|
679
|
+
if (isEndCtrl(event)) {
|
|
680
|
+
this.list._itemNavigation._handleEnd(event);
|
|
681
|
+
this.list.items[this.list._itemNavigation._currentIndex].focus();
|
|
682
|
+
}
|
|
683
|
+
|
|
615
684
|
event.preventDefault();
|
|
616
685
|
|
|
617
|
-
if (
|
|
686
|
+
if (isCtrlA(event)) {
|
|
687
|
+
this._handleSelectAll(event);
|
|
618
688
|
return;
|
|
619
689
|
}
|
|
620
690
|
|
|
621
|
-
if (this.valueStateHeader) {
|
|
691
|
+
if (((isUp(event) && isFirstItem) || isHome(event)) && this.valueStateHeader) {
|
|
622
692
|
this.valueStateHeader.focus();
|
|
623
|
-
return;
|
|
624
693
|
}
|
|
625
694
|
|
|
695
|
+
if (!this.valueStateHeader && isUp(event) && isFirstItem) {
|
|
696
|
+
this._inputDom.focus();
|
|
697
|
+
}
|
|
698
|
+
}
|
|
699
|
+
|
|
700
|
+
_onItemTab(event) {
|
|
626
701
|
this._inputDom.focus();
|
|
702
|
+
this.allItemsPopover.close();
|
|
627
703
|
}
|
|
628
704
|
|
|
629
705
|
async _handleArrowNavigation(event) {
|
|
630
706
|
const isArrowDown = isDown(event);
|
|
631
|
-
const hasSuggestions = this.
|
|
707
|
+
const hasSuggestions = this.items.length;
|
|
708
|
+
const isOpen = this.allItemsPopover.opened;
|
|
632
709
|
|
|
633
710
|
event.preventDefault();
|
|
634
711
|
|
|
@@ -636,7 +713,7 @@ class MultiComboBox extends UI5Element {
|
|
|
636
713
|
await this._setValueStateHeader();
|
|
637
714
|
}
|
|
638
715
|
|
|
639
|
-
if (isArrowDown && this.focused && this.valueStateHeader) {
|
|
716
|
+
if (isArrowDown && isOpen && this.focused && this.valueStateHeader) {
|
|
640
717
|
this.valueStateHeader.focus();
|
|
641
718
|
return;
|
|
642
719
|
}
|
|
@@ -644,16 +721,91 @@ class MultiComboBox extends UI5Element {
|
|
|
644
721
|
if (isArrowDown && this.focused && hasSuggestions) {
|
|
645
722
|
this._handleArrowDown(event);
|
|
646
723
|
}
|
|
724
|
+
|
|
725
|
+
if (!isArrowDown && !isOpen && !this.readonly) {
|
|
726
|
+
this._navigateToPrevItem();
|
|
727
|
+
}
|
|
647
728
|
}
|
|
648
729
|
|
|
649
730
|
_handleArrowDown(event) {
|
|
731
|
+
const isOpen = this.allItemsPopover.opened;
|
|
650
732
|
const firstListItem = this.list.items[0];
|
|
651
733
|
|
|
652
|
-
|
|
653
|
-
|
|
734
|
+
if (isOpen) {
|
|
735
|
+
this.list._itemNavigation.setCurrentItem(firstListItem);
|
|
736
|
+
firstListItem.focus();
|
|
737
|
+
} else if (!this.readonly) {
|
|
738
|
+
this._navigateToNextItem();
|
|
739
|
+
}
|
|
740
|
+
}
|
|
741
|
+
|
|
742
|
+
_navigateToNextItem() {
|
|
743
|
+
const items = this.items;
|
|
744
|
+
const itemsCount = items.length;
|
|
745
|
+
const previousItemIdx = this.currentItemIdx;
|
|
746
|
+
|
|
747
|
+
if (previousItemIdx > -1 && items[previousItemIdx].text !== this.value) {
|
|
748
|
+
this.currentItemIdx = -1;
|
|
749
|
+
}
|
|
750
|
+
|
|
751
|
+
if (previousItemIdx >= itemsCount - 1) {
|
|
752
|
+
return;
|
|
753
|
+
}
|
|
754
|
+
|
|
755
|
+
let currentItem = this.items[++this.currentItemIdx];
|
|
756
|
+
|
|
757
|
+
while (this.currentItemIdx < itemsCount - 1 && currentItem.selected) {
|
|
758
|
+
currentItem = this.items[++this.currentItemIdx];
|
|
759
|
+
}
|
|
760
|
+
|
|
761
|
+
if (currentItem.selected === true) {
|
|
762
|
+
this.currentItemIdx = previousItemIdx;
|
|
763
|
+
return;
|
|
764
|
+
}
|
|
765
|
+
|
|
766
|
+
this.value = currentItem.text;
|
|
767
|
+
this._innerInput.value = currentItem.text;
|
|
768
|
+
this._innerInput.setSelectionRange(0, currentItem.text.length);
|
|
769
|
+
}
|
|
770
|
+
|
|
771
|
+
_navigateToPrevItem() {
|
|
772
|
+
const items = this.items;
|
|
773
|
+
let previousItemIdx = this.currentItemIdx;
|
|
774
|
+
|
|
775
|
+
if ((!this.value && previousItemIdx !== -1) || (previousItemIdx !== -1 && this.value && this.value !== items[previousItemIdx].text)) {
|
|
776
|
+
previousItemIdx = -1;
|
|
777
|
+
}
|
|
778
|
+
|
|
779
|
+
if (previousItemIdx === -1) {
|
|
780
|
+
this.currentItemIdx = items.length;
|
|
781
|
+
}
|
|
782
|
+
|
|
783
|
+
if (previousItemIdx === 0) {
|
|
784
|
+
this.currentItemIdx = 0;
|
|
785
|
+
return;
|
|
786
|
+
}
|
|
787
|
+
|
|
788
|
+
let currentItem = this.items[--this.currentItemIdx];
|
|
789
|
+
|
|
790
|
+
while (currentItem && currentItem.selected && this.currentItemIdx > 0) {
|
|
791
|
+
currentItem = this.items[--this.currentItemIdx];
|
|
792
|
+
}
|
|
793
|
+
|
|
794
|
+
if (!currentItem) {
|
|
795
|
+
return;
|
|
796
|
+
}
|
|
797
|
+
|
|
798
|
+
if (currentItem.selected) {
|
|
799
|
+
this.currentItemIdx = previousItemIdx;
|
|
800
|
+
return;
|
|
801
|
+
}
|
|
802
|
+
|
|
803
|
+
this.value = currentItem.text;
|
|
804
|
+
this._innerInput.value = currentItem.text;
|
|
805
|
+
this._innerInput.setSelectionRange(0, currentItem.text.length);
|
|
654
806
|
}
|
|
655
807
|
|
|
656
|
-
|
|
808
|
+
_handleEnter() {
|
|
657
809
|
const lowerCaseValue = this.value.toLowerCase();
|
|
658
810
|
const matchingItem = this.items.find(item => item.text.toLowerCase() === lowerCaseValue);
|
|
659
811
|
const oldValueState = this.valueState;
|
|
@@ -698,6 +850,8 @@ class MultiComboBox extends UI5Element {
|
|
|
698
850
|
}, 0);
|
|
699
851
|
}
|
|
700
852
|
}
|
|
853
|
+
|
|
854
|
+
this[`_handle${event.key}`] && this[`_handle${event.key}`](event);
|
|
701
855
|
}
|
|
702
856
|
|
|
703
857
|
_filterItems(str) {
|
|
@@ -918,6 +1072,7 @@ class MultiComboBox extends UI5Element {
|
|
|
918
1072
|
this._innerInput.blur();
|
|
919
1073
|
}
|
|
920
1074
|
|
|
1075
|
+
!isPhone() && this._innerInput.setSelectionRange(0, this.value.length);
|
|
921
1076
|
this._lastValue = this.value;
|
|
922
1077
|
}
|
|
923
1078
|
|
|
@@ -1003,6 +1158,10 @@ class MultiComboBox extends UI5Element {
|
|
|
1003
1158
|
return `${this._id}-hiddenText-nMore`;
|
|
1004
1159
|
}
|
|
1005
1160
|
|
|
1161
|
+
get _selectedTokensCount() {
|
|
1162
|
+
return this._tokenizer.tokens.filter(token => token.selected).length;
|
|
1163
|
+
}
|
|
1164
|
+
|
|
1006
1165
|
get ariaDescribedByText() {
|
|
1007
1166
|
return this.valueStateTextId ? `${this._tokensCountTextId} ${this.valueStateTextId}` : `${this._tokensCountTextId}`;
|
|
1008
1167
|
}
|
package/dist/Panel.js
CHANGED
|
@@ -8,6 +8,7 @@ import { getAnimationMode } from "@ui5/webcomponents-base/dist/config/AnimationM
|
|
|
8
8
|
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
9
9
|
import "@ui5/webcomponents-icons/dist/slim-arrow-right.js";
|
|
10
10
|
import Button from "./Button.js";
|
|
11
|
+
import Icon from "./Icon.js";
|
|
11
12
|
import TitleLevel from "./types/TitleLevel.js";
|
|
12
13
|
import PanelAccessibleRole from "./types/PanelAccessibleRole.js";
|
|
13
14
|
import PanelTemplate from "./generated/templates/PanelTemplate.lit.js";
|
|
@@ -132,7 +133,7 @@ const metadata = {
|
|
|
132
133
|
},
|
|
133
134
|
|
|
134
135
|
/**
|
|
135
|
-
*
|
|
136
|
+
* Defines the accessible aria name of the component.
|
|
136
137
|
*
|
|
137
138
|
* @type {string}
|
|
138
139
|
* @defaultvalue ""
|
|
@@ -175,10 +176,6 @@ const metadata = {
|
|
|
175
176
|
type: Boolean,
|
|
176
177
|
noAttribute: true,
|
|
177
178
|
},
|
|
178
|
-
|
|
179
|
-
_buttonAccInfo: {
|
|
180
|
-
type: Object,
|
|
181
|
-
},
|
|
182
179
|
},
|
|
183
180
|
events: /** @lends sap.ui.webcomponents.main.Panel.prototype */ {
|
|
184
181
|
|
|
@@ -409,8 +406,10 @@ class Panel extends UI5Element {
|
|
|
409
406
|
get accInfo() {
|
|
410
407
|
return {
|
|
411
408
|
"button": {
|
|
412
|
-
"
|
|
413
|
-
|
|
409
|
+
"accessibilityAttributes": {
|
|
410
|
+
"expanded": this.expanded,
|
|
411
|
+
"controls": `${this._id}-content`,
|
|
412
|
+
},
|
|
414
413
|
"title": this.toggleButtonTitle,
|
|
415
414
|
"ariaLabelButton": !this.nonFocusableButton && this.useAccessibleNameForToggleButton ? this.effectiveAccessibleName : undefined,
|
|
416
415
|
},
|
|
@@ -458,7 +457,7 @@ class Panel extends UI5Element {
|
|
|
458
457
|
}
|
|
459
458
|
|
|
460
459
|
static get dependencies() {
|
|
461
|
-
return [Button];
|
|
460
|
+
return [Button, Icon];
|
|
462
461
|
}
|
|
463
462
|
|
|
464
463
|
static async onDefine() {
|
package/dist/Popover.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
2
2
|
import { isIOS } from "@ui5/webcomponents-base/dist/Device.js";
|
|
3
|
-
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
4
3
|
import { getClosedPopupParent } from "@ui5/webcomponents-base/dist/util/PopupUtils.js";
|
|
5
4
|
import clamp from "@ui5/webcomponents-base/dist/util/clamp.js";
|
|
6
5
|
import Popup from "./Popup.js";
|
|
@@ -145,6 +144,17 @@ const metadata = {
|
|
|
145
144
|
type: Boolean,
|
|
146
145
|
},
|
|
147
146
|
|
|
147
|
+
/**
|
|
148
|
+
* Defines the opener id of the element that the popover is shown at
|
|
149
|
+
* @public
|
|
150
|
+
* @type {String}
|
|
151
|
+
* @defaultvalue ""
|
|
152
|
+
* @since 1.2.0
|
|
153
|
+
*/
|
|
154
|
+
opener: {
|
|
155
|
+
type: String,
|
|
156
|
+
},
|
|
157
|
+
|
|
148
158
|
/**
|
|
149
159
|
* Defines whether the content is scrollable.
|
|
150
160
|
*
|
|
@@ -249,6 +259,17 @@ const metadata = {
|
|
|
249
259
|
* or selects an action within the popover. You can prevent this with the
|
|
250
260
|
* <code>modal</code> property.
|
|
251
261
|
*
|
|
262
|
+
* <h3>CSS Shadow Parts</h3>
|
|
263
|
+
*
|
|
264
|
+
* <ui5-link target="_blank" href="https://developer.mozilla.org/en-US/docs/Web/CSS/::part">CSS Shadow Parts</ui5-link> allow developers to style elements inside the Shadow DOM.
|
|
265
|
+
* <br>
|
|
266
|
+
* The <code>ui5-popover</code> exposes the following CSS Shadow Parts:
|
|
267
|
+
* <ul>
|
|
268
|
+
* <li>header - Used to style the header of the component</li>
|
|
269
|
+
* <li>content - Used to style the content of the component</li>
|
|
270
|
+
* <li>footer - Used to style the footer of the component</li>
|
|
271
|
+
* </ul>
|
|
272
|
+
*
|
|
252
273
|
* <h3>ES6 Module Import</h3>
|
|
253
274
|
*
|
|
254
275
|
* <code>import "@ui5/webcomponents/dist/Popover.js";</code>
|
|
@@ -264,8 +285,6 @@ const metadata = {
|
|
|
264
285
|
class Popover extends Popup {
|
|
265
286
|
constructor() {
|
|
266
287
|
super();
|
|
267
|
-
|
|
268
|
-
this._handleResize = this.handleResize.bind(this);
|
|
269
288
|
}
|
|
270
289
|
|
|
271
290
|
static get metadata() {
|
|
@@ -288,12 +307,18 @@ class Popover extends Popup {
|
|
|
288
307
|
return 6; // px
|
|
289
308
|
}
|
|
290
309
|
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
310
|
+
onAfterRendering() {
|
|
311
|
+
if (!this.isOpen() && this.open) {
|
|
312
|
+
const opener = document.getElementById(this.opener);
|
|
313
|
+
if (!opener) {
|
|
314
|
+
console.warn("Valid opener id is required."); // eslint-disable-line
|
|
315
|
+
return;
|
|
316
|
+
}
|
|
294
317
|
|
|
295
|
-
|
|
296
|
-
|
|
318
|
+
this.showAt(opener);
|
|
319
|
+
} else if (this.isOpen() && !this.open) {
|
|
320
|
+
this.close();
|
|
321
|
+
}
|
|
297
322
|
}
|
|
298
323
|
|
|
299
324
|
isOpenerClicked(event) {
|
|
@@ -365,7 +390,12 @@ class Popover extends Popup {
|
|
|
365
390
|
&& openerRect.right === 0;
|
|
366
391
|
}
|
|
367
392
|
|
|
368
|
-
|
|
393
|
+
/**
|
|
394
|
+
* @override
|
|
395
|
+
*/
|
|
396
|
+
_resize() {
|
|
397
|
+
super._resize();
|
|
398
|
+
|
|
369
399
|
if (this.opened) {
|
|
370
400
|
this.reposition();
|
|
371
401
|
}
|