@ui5/webcomponents 0.0.0-323968e1b → 0.0.0-4180fe799
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 +717 -1
- package/README.md +144 -41
- package/csp.js +7 -0
- package/customI18n.js +50 -0
- package/dist/Assets-static.js +6 -0
- package/dist/Assets.js +3 -2
- package/dist/Avatar.js +224 -40
- package/dist/AvatarGroup.js +603 -0
- package/dist/Badge.js +48 -28
- package/dist/Breadcrumbs.js +563 -0
- package/dist/BreadcrumbsItem.js +109 -0
- package/dist/BusyIndicator.js +172 -19
- package/dist/Button.js +180 -49
- package/dist/Calendar.js +345 -554
- package/dist/CalendarDate.js +45 -0
- package/dist/CalendarHeader.js +133 -64
- package/dist/CalendarPart.js +111 -0
- package/dist/Card.js +47 -161
- package/dist/CardHeader.js +288 -0
- package/dist/Carousel.js +681 -0
- package/dist/CheckBox.js +154 -54
- package/dist/ColorPalette.js +493 -0
- package/dist/ColorPaletteItem.js +137 -0
- package/dist/ColorPalettePopover.js +219 -0
- package/dist/ColorPicker.js +524 -0
- package/dist/ComboBox.js +664 -107
- package/dist/ComboBoxFilters.js +8 -1
- package/dist/ComboBoxGroupItem.js +70 -0
- package/dist/ComboBoxItem.js +33 -30
- package/dist/CustomListItem.js +38 -9
- package/dist/DateComponentBase.js +170 -0
- package/dist/DatePicker.js +468 -384
- package/dist/DateRangePicker.js +328 -0
- package/dist/DateTimePicker.js +430 -0
- package/dist/DayPicker.js +513 -438
- package/dist/Dialog.js +501 -47
- package/dist/DurationPicker.js +312 -0
- package/dist/FileUploader.js +532 -0
- package/dist/GroupHeaderListItem.js +36 -8
- package/dist/Icon.js +221 -43
- package/dist/Input.js +796 -127
- package/dist/Interfaces.js +192 -0
- package/dist/Label.js +27 -12
- package/dist/Link.js +143 -35
- package/dist/List.js +560 -73
- package/dist/ListItem.js +139 -30
- package/dist/ListItemBase.js +53 -9
- package/dist/MessageStrip.js +82 -93
- package/dist/MonthPicker.js +181 -184
- package/dist/MultiComboBox.js +625 -200
- package/dist/MultiComboBoxItem.js +43 -0
- package/dist/MultiInput.js +301 -0
- package/dist/Option.js +48 -5
- package/dist/Panel.js +123 -41
- package/dist/Popover.js +314 -234
- package/dist/Popup.js +382 -287
- package/dist/ProgressIndicator.js +235 -0
- package/dist/RadioButton.js +153 -66
- package/dist/RadioButtonGroup.js +53 -29
- package/dist/RangeSlider.js +769 -0
- package/dist/RatingIndicator.js +291 -0
- package/dist/ResponsivePopover.js +117 -61
- package/dist/SegmentedButton.js +290 -0
- package/dist/SegmentedButtonItem.js +109 -0
- package/dist/Select.js +500 -110
- package/dist/Slider.js +320 -0
- package/dist/SliderBase.js +842 -0
- package/dist/StandardListItem.js +46 -24
- package/dist/StepInput.js +684 -0
- package/dist/SuggestionGroupItem.js +64 -0
- package/dist/SuggestionItem.js +146 -0
- package/dist/SuggestionListItem.js +76 -0
- package/dist/Switch.js +62 -48
- package/dist/Tab.js +184 -18
- package/dist/TabContainer.js +337 -235
- package/dist/TabSeparator.js +2 -1
- package/dist/Table.js +492 -39
- package/dist/TableCell.js +13 -15
- package/dist/TableColumn.js +18 -7
- package/dist/TableGroupRow.js +160 -0
- package/dist/TableRow.js +254 -31
- package/dist/TextArea.js +314 -38
- package/dist/TimePicker.js +166 -0
- package/dist/TimePickerBase.js +463 -0
- package/dist/TimeSelection.js +493 -0
- package/dist/Title.js +18 -10
- package/dist/Toast.js +63 -37
- package/dist/ToggleButton.js +21 -13
- package/dist/Token.js +87 -49
- package/dist/Tokenizer.js +250 -65
- package/dist/Tree.js +443 -0
- package/dist/TreeItem.js +168 -0
- package/dist/TreeListItem.js +332 -0
- package/dist/WheelSlider.js +435 -0
- package/dist/YearPicker.js +201 -258
- package/dist/api.json +6877 -0
- package/dist/features/ColorPaletteMoreColors.js +42 -0
- package/dist/features/InputElementsFormSupport.js +35 -1
- package/dist/features/InputSuggestions.js +294 -52
- 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 -0
- 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 -0
- package/dist/generated/assets/i18n/messagebundle_en_US_sappsd.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.json +1 -0
- package/dist/generated/assets/i18n/messagebundle_es.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_es_MX.json +1 -0
- 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 -0
- 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_in.json +1 -0
- 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 -0
- 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 -0
- 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 -0
- package/dist/generated/assets/themes/sap_fiori_3_hcw/parameters-bundle.css.json +1 -0
- package/dist/generated/assets/themes/sap_horizon/parameters-bundle.css.json +1 -0
- package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -0
- package/dist/generated/i18n/i18n-defaults.js +2 -2
- package/dist/generated/json-imports/Themes-static.js +35 -0
- package/dist/generated/json-imports/Themes.js +23 -13
- package/dist/generated/json-imports/i18n-static.js +162 -0
- package/dist/generated/json-imports/i18n.js +113 -89
- package/dist/generated/templates/AvatarGroupTemplate.lit.js +9 -0
- package/dist/generated/templates/AvatarTemplate.lit.js +9 -9
- package/dist/generated/templates/BadgeTemplate.lit.js +5 -6
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +8 -0
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +9 -0
- package/dist/generated/templates/BusyIndicatorTemplate.lit.js +7 -5
- package/dist/generated/templates/ButtonTemplate.lit.js +6 -6
- package/dist/generated/templates/CalendarHeaderTemplate.lit.js +6 -4
- package/dist/generated/templates/CalendarTemplate.lit.js +4 -4
- package/dist/generated/templates/CardHeaderTemplate.lit.js +12 -0
- package/dist/generated/templates/CardTemplate.lit.js +5 -8
- package/dist/generated/templates/CarouselTemplate.lit.js +16 -0
- package/dist/generated/templates/CheckBoxTemplate.lit.js +7 -7
- package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +7 -0
- package/dist/generated/templates/ColorPaletteItemTemplate.lit.js +7 -0
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +8 -0
- package/dist/generated/templates/ColorPaletteTemplate.lit.js +12 -0
- package/dist/generated/templates/ColorPickerTemplate.lit.js +7 -0
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +20 -5
- package/dist/generated/templates/ComboBoxTemplate.lit.js +8 -5
- package/dist/generated/templates/CustomListItemTemplate.lit.js +13 -12
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +7 -4
- package/dist/generated/templates/DatePickerTemplate.lit.js +6 -5
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +12 -0
- package/dist/generated/templates/DayPickerTemplate.lit.js +13 -11
- package/dist/generated/templates/DialogTemplate.lit.js +9 -8
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +10 -0
- package/dist/generated/templates/FileUploaderTemplate.lit.js +10 -0
- package/dist/generated/templates/GroupHeaderListItemTemplate.lit.js +4 -4
- package/dist/generated/templates/IconTemplate.lit.js +6 -6
- package/dist/generated/templates/InputPopoverTemplate.lit.js +24 -6
- package/dist/generated/templates/InputTemplate.lit.js +9 -8
- package/dist/generated/templates/LabelTemplate.lit.js +4 -4
- package/dist/generated/templates/LinkTemplate.lit.js +5 -5
- package/dist/generated/templates/ListItemTemplate.lit.js +13 -12
- package/dist/generated/templates/ListTemplate.lit.js +12 -8
- package/dist/generated/templates/MessageStripTemplate.lit.js +6 -22
- package/dist/generated/templates/MonthPickerTemplate.lit.js +6 -6
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +23 -7
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js +10 -8
- package/dist/generated/templates/MultiInputTemplate.lit.js +16 -0
- package/dist/generated/templates/PanelTemplate.lit.js +9 -6
- package/dist/generated/templates/PopoverTemplate.lit.js +9 -9
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +7 -0
- package/dist/generated/templates/PopupTemplate.lit.js +4 -4
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +17 -0
- package/dist/generated/templates/RadioButtonTemplate.lit.js +7 -7
- package/dist/generated/templates/RangeSliderTemplate.lit.js +13 -0
- package/dist/generated/templates/RatingIndicatorTemplate.lit.js +14 -0
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +16 -11
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +8 -0
- package/dist/generated/templates/SegmentedButtonTemplate.lit.js +7 -0
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +20 -6
- package/dist/generated/templates/SelectTemplate.lit.js +6 -4
- package/dist/generated/templates/SliderBaseTemplate.lit.js +11 -0
- package/dist/generated/templates/SliderTemplate.lit.js +12 -0
- package/dist/generated/templates/StandardListItemTemplate.lit.js +21 -18
- package/dist/generated/templates/StepInputTemplate.lit.js +10 -0
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js +27 -0
- package/dist/generated/templates/SwitchTemplate.lit.js +8 -6
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +6 -8
- package/dist/generated/templates/TabContainerTemplate.lit.js +16 -18
- package/dist/generated/templates/TabInOverflowTemplate.lit.js +9 -0
- package/dist/generated/templates/TabInStripTemplate.lit.js +11 -0
- package/dist/generated/templates/TabSeparatorTemplate.lit.js +4 -4
- package/dist/generated/templates/TabTemplate.lit.js +4 -4
- package/dist/generated/templates/TableCellTemplate.lit.js +4 -4
- package/dist/generated/templates/TableColumnTemplate.lit.js +4 -4
- package/dist/generated/templates/TableGroupRowTemplate.lit.js +7 -0
- package/dist/generated/templates/TableRowTemplate.lit.js +12 -6
- package/dist/generated/templates/TableTemplate.lit.js +13 -8
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +11 -0
- package/dist/generated/templates/TextAreaTemplate.lit.js +8 -8
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +7 -0
- package/dist/generated/templates/TimePickerTemplate.lit.js +9 -0
- package/dist/generated/templates/TimeSelectionTemplate.lit.js +11 -0
- package/dist/generated/templates/TitleTemplate.lit.js +10 -10
- package/dist/generated/templates/ToastTemplate.lit.js +5 -4
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +6 -6
- package/dist/generated/templates/TokenTemplate.lit.js +7 -5
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +12 -0
- package/dist/generated/templates/TokenizerTemplate.lit.js +6 -6
- package/dist/generated/templates/TreeListItemTemplate.lit.js +21 -0
- package/dist/generated/templates/TreeTemplate.lit.js +8 -0
- package/dist/generated/templates/WheelSliderTemplate.lit.js +10 -0
- package/dist/generated/templates/YearPickerTemplate.lit.js +6 -6
- package/dist/generated/themes/Avatar.css.js +6 -7
- package/dist/generated/themes/AvatarGroup.css.js +8 -0
- package/dist/generated/themes/Badge.css.js +6 -7
- package/dist/generated/themes/Breadcrumbs.css.js +8 -0
- package/dist/generated/themes/BreadcrumbsPopover.css.js +8 -0
- package/dist/generated/themes/BrowserScrollbar.css.js +8 -0
- package/dist/generated/themes/BusyIndicator.css.js +6 -7
- package/dist/generated/themes/Button.css.js +6 -7
- package/dist/generated/themes/Button.ie11.css.js +8 -0
- package/dist/generated/themes/Calendar.css.js +6 -7
- package/dist/generated/themes/CalendarHeader.css.js +6 -7
- package/dist/generated/themes/Card.css.js +6 -7
- package/dist/generated/themes/CardHeader.css.js +8 -0
- package/dist/generated/themes/Carousel.css.js +8 -0
- package/dist/generated/themes/CheckBox.css.js +6 -7
- package/dist/generated/themes/ColorPalette.css.js +8 -0
- package/dist/generated/themes/ColorPaletteItem.css.js +8 -0
- package/dist/generated/themes/ColorPalettePopover.css.js +8 -0
- package/dist/generated/themes/ColorPaletteStaticArea.css.js +8 -0
- package/dist/generated/themes/ColorPicker.css.js +8 -0
- package/dist/generated/themes/ComboBox.css.js +6 -7
- package/dist/generated/themes/ComboBoxPopover.css.js +6 -7
- package/dist/generated/themes/CustomListItem.css.js +6 -7
- package/dist/generated/themes/DatePicker.css.js +6 -7
- package/dist/generated/themes/DatePickerPopover.css.js +6 -7
- package/dist/generated/themes/DateRangePicker.css.js +8 -0
- package/dist/generated/themes/DateTimePicker.css.js +8 -0
- package/dist/generated/themes/DateTimePickerPopover.css.js +8 -0
- package/dist/generated/themes/DayPicker.css.js +6 -7
- package/dist/generated/themes/Dialog.css.js +6 -7
- package/dist/generated/themes/FileUploader.css.js +8 -0
- package/dist/generated/themes/GroupHeaderListItem.css.js +6 -7
- package/dist/generated/themes/GrowingButton.css.js +8 -0
- package/dist/generated/themes/Icon.css.js +6 -7
- package/dist/generated/themes/Input.css.js +6 -7
- package/dist/generated/themes/InputIcon.css.js +6 -7
- package/dist/generated/themes/InvisibleTextStyles.css.js +6 -7
- package/dist/generated/themes/Label.css.js +6 -7
- package/dist/generated/themes/Link.css.js +6 -7
- package/dist/generated/themes/List.css.js +6 -7
- package/dist/generated/themes/ListItem.css.js +6 -7
- package/dist/generated/themes/ListItemBase.css.js +6 -7
- package/dist/generated/themes/MessageStrip.css.js +6 -7
- package/dist/generated/themes/MonthPicker.css.js +6 -7
- package/dist/generated/themes/MultiComboBox.css.js +6 -7
- package/dist/generated/themes/MultiInput.css.js +8 -0
- package/dist/generated/themes/Panel.css.js +6 -7
- package/dist/generated/themes/Popover.css.js +6 -7
- package/dist/generated/themes/Popup.css.js +6 -7
- package/dist/generated/themes/PopupGlobal.css.js +8 -0
- package/dist/generated/themes/PopupStaticAreaStyles.css.js +8 -0
- package/dist/generated/themes/PopupsCommon.css.js +8 -0
- package/dist/generated/themes/ProgressIndicator.css.js +8 -0
- package/dist/generated/themes/RadioButton.css.js +6 -7
- package/dist/generated/themes/RatingIndicator.css.js +8 -0
- package/dist/generated/themes/ResponsivePopover.css.js +6 -7
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +6 -7
- package/dist/generated/themes/SegmentedButton.css.js +8 -0
- package/dist/generated/themes/Select.css.js +6 -7
- package/dist/generated/themes/SelectPopover.css.js +8 -0
- package/dist/generated/themes/SliderBase.css.js +8 -0
- package/dist/generated/themes/StepInput.css.js +8 -0
- package/dist/generated/themes/Suggestions.css.js +8 -0
- package/dist/generated/themes/Switch.css.js +6 -7
- package/dist/generated/themes/Tab.css.js +6 -7
- package/dist/generated/themes/TabContainer.css.js +6 -7
- package/dist/generated/themes/TabInOverflow.css.js +8 -0
- package/dist/generated/themes/TabInStrip.css.js +8 -0
- package/dist/generated/themes/Table.css.js +6 -7
- package/dist/generated/themes/TableCell.css.js +6 -7
- package/dist/generated/themes/TableColumn.css.js +6 -7
- package/dist/generated/themes/TableGroupRow.css.js +8 -0
- package/dist/generated/themes/TableRow.css.js +6 -7
- package/dist/generated/themes/TapHighlightColor.css.js +8 -0
- package/dist/generated/themes/TextArea.css.js +6 -7
- package/dist/generated/themes/TimePicker.css.js +8 -0
- package/dist/generated/themes/TimePickerPopover.css.js +8 -0
- package/dist/generated/themes/TimeSelection.css.js +8 -0
- package/dist/generated/themes/Title.css.js +6 -7
- package/dist/generated/themes/Toast.css.js +6 -7
- package/dist/generated/themes/ToggleButton.css.js +6 -7
- package/dist/generated/themes/ToggleButton.ie11.css.js +8 -0
- package/dist/generated/themes/Token.css.js +6 -7
- package/dist/generated/themes/Tokenizer.css.js +6 -7
- package/dist/generated/themes/Tree.css.js +8 -0
- package/dist/generated/themes/TreeListItem.css.js +8 -0
- package/dist/generated/themes/ValueStateMessage.css.js +8 -0
- package/dist/generated/themes/WheelSlider.css.js +8 -0
- package/dist/generated/themes/YearPicker.css.js +6 -7
- 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 -0
- 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 -0
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -0
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -0
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -0
- package/dist/i18n/messagebundle.properties +335 -0
- package/dist/i18n/messagebundle_ar.properties +224 -0
- package/dist/i18n/messagebundle_bg.properties +224 -0
- package/dist/i18n/messagebundle_ca.properties +224 -0
- package/dist/i18n/messagebundle_cs.properties +224 -0
- package/dist/i18n/messagebundle_cy.properties +224 -0
- package/dist/i18n/messagebundle_da.properties +224 -0
- package/dist/i18n/messagebundle_de.properties +224 -0
- package/dist/i18n/messagebundle_el.properties +224 -0
- package/dist/i18n/messagebundle_en.properties +224 -0
- package/dist/i18n/messagebundle_en_GB.properties +224 -0
- package/dist/i18n/messagebundle_en_US_sappsd.properties +224 -0
- package/dist/i18n/messagebundle_en_US_saprigi.properties +224 -0
- package/dist/i18n/messagebundle_en_US_saptrc.properties +224 -0
- package/dist/i18n/messagebundle_es.properties +224 -0
- package/dist/i18n/messagebundle_es_MX.properties +224 -0
- package/dist/i18n/messagebundle_et.properties +224 -0
- package/dist/i18n/messagebundle_fi.properties +224 -0
- package/dist/i18n/messagebundle_fr.properties +224 -0
- package/dist/i18n/messagebundle_fr_CA.properties +224 -0
- package/dist/i18n/messagebundle_hi.properties +224 -0
- package/dist/i18n/messagebundle_hr.properties +224 -0
- package/dist/i18n/messagebundle_hu.properties +224 -0
- package/dist/i18n/messagebundle_id.properties +224 -0
- package/dist/i18n/messagebundle_in.properties +172 -0
- package/dist/i18n/messagebundle_it.properties +224 -0
- package/dist/i18n/messagebundle_iw.properties +224 -0
- package/dist/i18n/messagebundle_ja.properties +224 -0
- package/dist/i18n/messagebundle_kk.properties +224 -0
- package/dist/i18n/messagebundle_ko.properties +224 -0
- package/dist/i18n/messagebundle_lt.properties +224 -0
- package/dist/i18n/messagebundle_lv.properties +224 -0
- package/dist/i18n/messagebundle_ms.properties +224 -0
- package/dist/i18n/messagebundle_nl.properties +224 -0
- package/dist/i18n/messagebundle_no.properties +224 -0
- package/dist/i18n/messagebundle_pl.properties +224 -0
- package/dist/i18n/messagebundle_pt.properties +224 -0
- package/dist/i18n/messagebundle_pt_PT.properties +224 -0
- package/dist/i18n/messagebundle_ro.properties +224 -0
- package/dist/i18n/messagebundle_ru.properties +224 -0
- package/dist/i18n/messagebundle_sh.properties +224 -0
- package/dist/i18n/messagebundle_sk.properties +224 -0
- package/dist/i18n/messagebundle_sl.properties +224 -0
- package/dist/i18n/messagebundle_sv.properties +224 -0
- package/dist/i18n/messagebundle_th.properties +224 -0
- package/dist/i18n/messagebundle_tr.properties +224 -0
- package/dist/i18n/messagebundle_uk.properties +224 -0
- package/dist/i18n/messagebundle_vi.properties +224 -0
- package/dist/i18n/messagebundle_zh_CN.properties +224 -0
- package/dist/i18n/messagebundle_zh_TW.properties +224 -0
- package/dist/popup-utils/OpenedPopupsRegistry.js +18 -13
- package/dist/popup-utils/PopoverRegistry.js +55 -21
- package/dist/timepicker-utils/TimeSlider.js +103 -0
- package/dist/types/{AvatarBackgroundColor.js → AvatarColorScheme.js} +9 -9
- package/dist/types/AvatarGroupType.js +43 -0
- package/dist/types/AvatarShape.js +1 -1
- package/dist/types/AvatarSize.js +1 -1
- package/dist/types/BreadcrumbsDesign.js +42 -0
- package/dist/types/BreadcrumbsSeparatorStyle.js +69 -0
- package/dist/types/BusyIndicatorSize.js +1 -1
- package/dist/types/ButtonDesign.js +8 -1
- package/dist/types/CalendarSelectionMode.js +47 -0
- package/dist/types/CarouselArrowsPlacement.js +40 -0
- package/dist/types/GrowingMode.js +48 -0
- package/dist/types/InputType.js +7 -7
- package/dist/types/LinkDesign.js +1 -1
- package/dist/types/ListGrowingMode.js +15 -0
- package/dist/types/ListItemType.js +8 -1
- package/dist/types/ListMode.js +9 -1
- package/dist/types/ListSeparators.js +1 -1
- package/dist/types/{MessageStripType.js → MessageStripDesign.js} +7 -7
- package/dist/types/PanelAccessibleRole.js +1 -1
- package/dist/types/PopoverHorizontalAlign.js +1 -1
- package/dist/types/PopoverPlacementType.js +2 -2
- package/dist/types/PopoverVerticalAlign.js +1 -2
- package/dist/types/Priority.js +55 -0
- package/dist/types/SemanticColor.js +1 -1
- package/dist/types/SwitchDesign.js +40 -0
- package/dist/types/TabContainerTabsPlacement.js +40 -0
- package/dist/types/TabLayout.js +40 -0
- package/dist/types/TableGrowingMode.js +15 -0
- package/dist/types/TableMode.js +47 -0
- package/dist/types/TableRowType.js +40 -0
- package/dist/types/TitleLevel.js +1 -1
- package/dist/types/ToastPlacement.js +1 -2
- package/dist/types/WrappingType.js +41 -0
- package/dist/webcomponentsjs/CHANGELOG.md +61 -0
- package/dist/webcomponentsjs/README.md +64 -47
- package/dist/webcomponentsjs/bundles/webcomponents-ce.js +38 -38
- package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +1 -1
- package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js +60 -0
- package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +1 -0
- package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +95 -0
- package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +1 -0
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +292 -229
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +1 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +190 -170
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +1 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd.js +151 -132
- package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +1 -1
- package/dist/webcomponentsjs/custom-elements-es5-adapter.js +2 -2
- package/dist/webcomponentsjs/webcomponents-bundle.js +302 -230
- package/dist/webcomponentsjs/webcomponents-bundle.js.map +1 -1
- package/dist/webcomponentsjs/webcomponents-loader.js +49 -28
- package/package-scripts.js +1 -0
- package/package.json +23 -8
- package/src/Assets-static.js +6 -0
- package/src/Assets.js +7 -0
- package/src/Avatar.hbs +20 -0
- package/src/Avatar.js +392 -0
- package/src/AvatarGroup.hbs +30 -0
- package/src/AvatarGroup.js +603 -0
- package/src/Badge.hbs +14 -0
- package/src/Badge.js +165 -0
- package/src/Breadcrumbs.hbs +42 -0
- package/src/Breadcrumbs.js +563 -0
- package/src/BreadcrumbsItem.js +109 -0
- package/src/BreadcrumbsPopover.hbs +28 -0
- package/src/BusyIndicator.hbs +32 -0
- package/src/BusyIndicator.js +269 -0
- package/src/Button.hbs +45 -0
- package/src/Button.js +463 -0
- package/src/Calendar.hbs +69 -0
- package/src/Calendar.js +489 -0
- package/src/CalendarDate.js +45 -0
- package/src/CalendarHeader.hbs +54 -0
- package/src/CalendarHeader.js +209 -0
- package/src/CalendarPart.js +111 -0
- package/src/Card.hbs +14 -0
- package/src/Card.js +160 -0
- package/src/CardHeader.hbs +35 -0
- package/src/CardHeader.js +288 -0
- package/src/Carousel.hbs +85 -0
- package/src/Carousel.js +681 -0
- package/src/CheckBox.hbs +44 -0
- package/src/CheckBox.js +424 -0
- package/src/ColorPalette.hbs +52 -0
- package/src/ColorPalette.js +493 -0
- package/src/ColorPaletteDialog.hbs +18 -0
- package/src/ColorPaletteItem.hbs +11 -0
- package/src/ColorPaletteItem.js +137 -0
- package/src/ColorPalettePopover.hbs +29 -0
- package/src/ColorPalettePopover.js +219 -0
- package/src/ColorPicker.hbs +98 -0
- package/src/ColorPicker.js +524 -0
- package/src/ComboBox.hbs +49 -0
- package/src/ComboBox.js +1041 -0
- package/src/ComboBoxFilters.js +40 -0
- package/src/ComboBoxGroupItem.js +70 -0
- package/src/ComboBoxItem.js +49 -0
- package/src/ComboBoxPopover.hbs +125 -0
- package/src/CustomListItem.hbs +5 -0
- package/src/CustomListItem.js +99 -0
- package/src/DateComponentBase.js +170 -0
- package/src/DatePicker.hbs +44 -0
- package/src/DatePicker.js +823 -0
- package/src/DatePickerPopover.hbs +63 -0
- package/src/DateRangePicker.js +328 -0
- package/src/DateTimePicker.js +430 -0
- package/src/DateTimePickerPopover.hbs +74 -0
- package/src/DayPicker.hbs +66 -0
- package/src/DayPicker.js +754 -0
- package/src/Dialog.hbs +35 -0
- package/src/Dialog.js +601 -0
- package/src/DurationPicker.js +312 -0
- package/src/FileUploader.hbs +40 -0
- package/src/FileUploader.js +532 -0
- package/src/FileUploaderPopover.hbs +25 -0
- package/src/GroupHeaderListItem.hbs +15 -0
- package/src/GroupHeaderListItem.js +94 -0
- package/src/Icon.hbs +25 -0
- package/src/Icon.js +373 -0
- package/src/Input.hbs +78 -0
- package/src/Input.js +1381 -0
- package/src/InputPopover.hbs +118 -0
- package/src/Interfaces.js +192 -0
- package/src/Label.hbs +13 -0
- package/src/Label.js +152 -0
- package/src/Link.hbs +20 -0
- package/src/Link.js +349 -0
- package/src/List.hbs +89 -0
- package/src/List.js +1056 -0
- package/src/ListItem.hbs +102 -0
- package/src/ListItem.js +371 -0
- package/src/ListItemBase.js +179 -0
- package/src/MessageStrip.hbs +34 -0
- package/src/MessageStrip.js +227 -0
- package/src/MonthPicker.hbs +29 -0
- package/src/MonthPicker.js +299 -0
- package/src/MultiComboBox.hbs +78 -0
- package/src/MultiComboBox.js +1091 -0
- package/src/MultiComboBoxItem.js +43 -0
- package/src/MultiComboBoxPopover.hbs +133 -0
- package/src/MultiInput.hbs +41 -0
- package/src/MultiInput.js +301 -0
- package/src/Option.js +115 -0
- package/src/Panel.hbs +63 -0
- package/src/Panel.js +462 -0
- package/src/Popover.hbs +25 -0
- package/src/Popover.js +786 -0
- package/src/Popup.hbs +34 -0
- package/src/Popup.js +567 -0
- package/src/PopupBlockLayer.hbs +7 -0
- package/src/ProgressIndicator.hbs +35 -0
- package/src/ProgressIndicator.js +235 -0
- package/src/RadioButton.hbs +33 -0
- package/src/RadioButton.js +494 -0
- package/src/RadioButtonGroup.js +205 -0
- package/src/RangeSlider.hbs +70 -0
- package/src/RangeSlider.js +769 -0
- package/src/RatingIndicator.hbs +33 -0
- package/src/RatingIndicator.js +291 -0
- package/src/ResponsivePopover.hbs +39 -0
- package/src/ResponsivePopover.js +206 -0
- package/src/SegmentedButton.hbs +17 -0
- package/src/SegmentedButton.js +290 -0
- package/src/SegmentedButtonItem.hbs +42 -0
- package/src/SegmentedButtonItem.js +109 -0
- package/src/Select.hbs +45 -0
- package/src/Select.js +834 -0
- package/src/SelectPopover.hbs +89 -0
- package/src/Slider.hbs +42 -0
- package/src/Slider.js +320 -0
- package/src/SliderBase.hbs +38 -0
- package/src/SliderBase.js +842 -0
- package/src/StandardListItem.hbs +44 -0
- package/src/StandardListItem.js +191 -0
- package/src/StepInput.hbs +80 -0
- package/src/StepInput.js +684 -0
- package/src/SuggestionGroupItem.js +64 -0
- package/src/SuggestionItem.js +146 -0
- package/src/SuggestionListItem.hbs +33 -0
- package/src/SuggestionListItem.js +76 -0
- package/src/Switch.hbs +50 -0
- package/src/Switch.js +262 -0
- package/src/Tab.hbs +3 -0
- package/src/Tab.js +334 -0
- package/src/TabContainer.hbs +93 -0
- package/src/TabContainer.js +679 -0
- package/src/TabContainerPopover.hbs +24 -0
- package/src/TabInOverflow.hbs +22 -0
- package/src/TabInStrip.hbs +43 -0
- package/src/TabSeparator.hbs +1 -0
- package/src/TabSeparator.js +44 -0
- package/src/Table.hbs +99 -0
- package/src/Table.js +761 -0
- package/src/TableCell.hbs +7 -0
- package/src/TableCell.js +88 -0
- package/src/TableColumn.hbs +8 -0
- package/src/TableColumn.js +136 -0
- package/src/TableGroupRow.hbs +12 -0
- package/src/TableGroupRow.js +160 -0
- package/src/TableRow.hbs +61 -0
- package/src/TableRow.js +388 -0
- package/src/TextArea.hbs +50 -0
- package/src/TextArea.js +691 -0
- package/src/TextAreaPopover.hbs +28 -0
- package/src/TimePicker.hbs +35 -0
- package/src/TimePicker.js +166 -0
- package/src/TimePickerBase.js +463 -0
- package/src/TimePickerPopover.hbs +34 -0
- package/src/TimeSelection.hbs +60 -0
- package/src/TimeSelection.js +493 -0
- package/src/Title.hbs +47 -0
- package/src/Title.js +132 -0
- package/src/Toast.hbs +13 -0
- package/src/Toast.js +243 -0
- package/src/ToggleButton.hbs +5 -0
- package/src/ToggleButton.js +84 -0
- package/src/Token.hbs +30 -0
- package/src/Token.js +219 -0
- package/src/Tokenizer.hbs +27 -0
- package/src/Tokenizer.js +414 -0
- package/src/TokenizerPopover.hbs +50 -0
- package/src/Tree.hbs +42 -0
- package/src/Tree.js +443 -0
- package/src/TreeItem.js +168 -0
- package/src/TreeListItem.hbs +48 -0
- package/src/TreeListItem.js +332 -0
- package/src/WheelSlider.hbs +48 -0
- package/src/WheelSlider.js +435 -0
- package/src/YearPicker.hbs +27 -0
- package/src/YearPicker.js +324 -0
- package/src/features/ColorPaletteMoreColors.js +42 -0
- package/src/features/InputElementsFormSupport.js +88 -0
- package/src/features/InputSuggestions.js +530 -0
- package/src/i18n/messagebundle.properties +335 -0
- package/src/i18n/messagebundle_ar.properties +224 -0
- package/src/i18n/messagebundle_bg.properties +224 -0
- package/src/i18n/messagebundle_ca.properties +224 -0
- package/src/i18n/messagebundle_cs.properties +224 -0
- package/src/i18n/messagebundle_cy.properties +224 -0
- package/src/i18n/messagebundle_da.properties +224 -0
- package/src/i18n/messagebundle_de.properties +224 -0
- package/src/i18n/messagebundle_el.properties +224 -0
- package/src/i18n/messagebundle_en.properties +224 -0
- package/src/i18n/messagebundle_en_GB.properties +224 -0
- package/src/i18n/messagebundle_en_US_sappsd.properties +224 -0
- package/src/i18n/messagebundle_en_US_saprigi.properties +224 -0
- package/src/i18n/messagebundle_en_US_saptrc.properties +224 -0
- package/src/i18n/messagebundle_es.properties +224 -0
- package/src/i18n/messagebundle_es_MX.properties +224 -0
- package/src/i18n/messagebundle_et.properties +224 -0
- package/src/i18n/messagebundle_fi.properties +224 -0
- package/src/i18n/messagebundle_fr.properties +224 -0
- package/src/i18n/messagebundle_fr_CA.properties +224 -0
- package/src/i18n/messagebundle_hi.properties +224 -0
- package/src/i18n/messagebundle_hr.properties +224 -0
- package/src/i18n/messagebundle_hu.properties +224 -0
- package/src/i18n/messagebundle_id.properties +224 -0
- package/src/i18n/messagebundle_in.properties +172 -0
- package/src/i18n/messagebundle_it.properties +224 -0
- package/src/i18n/messagebundle_iw.properties +224 -0
- package/src/i18n/messagebundle_ja.properties +224 -0
- package/src/i18n/messagebundle_kk.properties +224 -0
- package/src/i18n/messagebundle_ko.properties +224 -0
- package/src/i18n/messagebundle_lt.properties +224 -0
- package/src/i18n/messagebundle_lv.properties +224 -0
- package/src/i18n/messagebundle_ms.properties +224 -0
- package/src/i18n/messagebundle_nl.properties +224 -0
- package/src/i18n/messagebundle_no.properties +224 -0
- package/src/i18n/messagebundle_pl.properties +224 -0
- package/src/i18n/messagebundle_pt.properties +224 -0
- package/src/i18n/messagebundle_pt_PT.properties +224 -0
- package/src/i18n/messagebundle_ro.properties +224 -0
- package/src/i18n/messagebundle_ru.properties +224 -0
- package/src/i18n/messagebundle_sh.properties +224 -0
- package/src/i18n/messagebundle_sk.properties +224 -0
- package/src/i18n/messagebundle_sl.properties +224 -0
- package/src/i18n/messagebundle_sv.properties +224 -0
- package/src/i18n/messagebundle_th.properties +224 -0
- package/src/i18n/messagebundle_tr.properties +224 -0
- package/src/i18n/messagebundle_uk.properties +224 -0
- package/src/i18n/messagebundle_vi.properties +224 -0
- package/src/i18n/messagebundle_zh_CN.properties +224 -0
- package/src/i18n/messagebundle_zh_TW.properties +224 -0
- package/src/popup-utils/OpenedPopupsRegistry.js +50 -0
- package/src/popup-utils/PopoverRegistry.js +145 -0
- package/src/timepicker-utils/TimeSlider.js +103 -0
- package/src/types/AvatarColorScheme.js +104 -0
- package/src/types/AvatarGroupType.js +43 -0
- package/src/types/AvatarShape.js +41 -0
- package/src/types/AvatarSize.js +67 -0
- package/src/types/BreadcrumbsDesign.js +42 -0
- package/src/types/BreadcrumbsSeparatorStyle.js +69 -0
- package/src/types/BusyIndicatorSize.js +47 -0
- package/src/types/ButtonDesign.js +68 -0
- package/src/types/CalendarSelectionMode.js +47 -0
- package/src/types/CarouselArrowsPlacement.js +40 -0
- package/src/types/GrowingMode.js +48 -0
- package/src/types/InputType.js +68 -0
- package/src/types/LinkDesign.js +47 -0
- package/src/types/ListGrowingMode.js +15 -0
- package/src/types/ListItemType.js +47 -0
- package/src/types/ListMode.js +77 -0
- package/src/types/ListSeparators.js +46 -0
- package/src/types/MessageStripDesign.js +54 -0
- package/src/types/PanelAccessibleRole.js +48 -0
- package/src/types/PopoverHorizontalAlign.js +54 -0
- package/src/types/PopoverPlacementType.js +54 -0
- package/src/types/PopoverVerticalAlign.js +54 -0
- package/src/types/Priority.js +55 -0
- package/src/types/SemanticColor.js +61 -0
- package/src/types/SwitchDesign.js +40 -0
- package/src/types/TabContainerTabsPlacement.js +40 -0
- package/src/types/TabLayout.js +40 -0
- package/src/types/TableGrowingMode.js +15 -0
- package/src/types/TableMode.js +47 -0
- package/src/types/TableRowType.js +40 -0
- package/src/types/TitleLevel.js +68 -0
- package/src/types/ToastPlacement.js +91 -0
- package/src/types/WrappingType.js +41 -0
- package/dist/Timeline.js +0 -81
- package/dist/TimelineItem.js +0 -163
- package/dist/generated/templates/ComboBoxItemTemplate.lit.js +0 -7
- package/dist/generated/templates/TimelineItemTemplate.lit.js +0 -12
- package/dist/generated/templates/TimelineTemplate.lit.js +0 -8
- package/dist/generated/themes/ComboBoxItem.css.js +0 -9
- package/dist/generated/themes/TabContainerPopup.css.js +0 -9
- package/dist/generated/themes/Timeline.css.js +0 -9
- package/dist/generated/themes/TimelineItem.css.js +0 -9
- package/dist/popup-utils/PopupUtils.js +0 -42
- package/dist/types/AvatarFitType.js +0 -40
- package/dist/webcomponentsjs/package.json +0 -46
- package/index.js +0 -2
package/dist/MultiComboBox.js
CHANGED
|
@@ -1,28 +1,46 @@
|
|
|
1
1
|
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
2
|
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
3
|
+
import ResizeHandler from "@ui5/webcomponents-base/dist/delegate/ResizeHandler.js";
|
|
3
4
|
import ValueState from "@ui5/webcomponents-base/dist/types/ValueState.js";
|
|
4
5
|
import {
|
|
5
|
-
isShow,
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
isShow,
|
|
7
|
+
isDown,
|
|
8
|
+
isUp,
|
|
9
|
+
isBackSpace,
|
|
10
|
+
isSpace,
|
|
11
|
+
isLeft,
|
|
12
|
+
isRight,
|
|
13
|
+
isEscape,
|
|
14
|
+
isEnter,
|
|
15
|
+
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
16
|
+
import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
17
|
+
import "@ui5/webcomponents-icons/dist/slim-arrow-down.js";
|
|
9
18
|
import { isIE, isPhone } from "@ui5/webcomponents-base/dist/Device.js";
|
|
10
|
-
import {
|
|
19
|
+
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
20
|
+
import "@ui5/webcomponents-icons/dist/decline.js";
|
|
21
|
+
import "@ui5/webcomponents-icons/dist/multiselect-all.js";
|
|
22
|
+
import "@ui5/webcomponents-icons/dist/not-editable.js";
|
|
23
|
+
import MultiComboBoxItem from "./MultiComboBoxItem.js";
|
|
11
24
|
import Tokenizer from "./Tokenizer.js";
|
|
12
25
|
import Token from "./Token.js";
|
|
13
26
|
import Icon from "./Icon.js";
|
|
27
|
+
import Popover from "./Popover.js";
|
|
14
28
|
import ResponsivePopover from "./ResponsivePopover.js";
|
|
15
29
|
import List from "./List.js";
|
|
16
30
|
import StandardListItem from "./StandardListItem.js";
|
|
17
31
|
import ToggleButton from "./ToggleButton.js";
|
|
32
|
+
import * as Filters from "./ComboBoxFilters.js";
|
|
33
|
+
import Button from "./Button.js";
|
|
34
|
+
|
|
18
35
|
import {
|
|
19
36
|
VALUE_STATE_SUCCESS,
|
|
20
37
|
VALUE_STATE_ERROR,
|
|
21
38
|
VALUE_STATE_WARNING,
|
|
22
|
-
|
|
23
|
-
TOKENIZER_ARIA_CONTAIN_ONE_TOKEN,
|
|
24
|
-
TOKENIZER_ARIA_CONTAIN_SEVERAL_TOKENS,
|
|
39
|
+
VALUE_STATE_INFORMATION,
|
|
25
40
|
INPUT_SUGGESTIONS_TITLE,
|
|
41
|
+
SELECT_OPTIONS,
|
|
42
|
+
MULTICOMBOBOX_DIALOG_OK_BUTTON,
|
|
43
|
+
VALUE_STATE_ERROR_ALREADY_SELECTED,
|
|
26
44
|
} from "./generated/i18n/i18n-defaults.js";
|
|
27
45
|
|
|
28
46
|
// Templates
|
|
@@ -32,36 +50,62 @@ import MultiComboBoxPopoverTemplate from "./generated/templates/MultiComboBoxPop
|
|
|
32
50
|
// Styles
|
|
33
51
|
import styles from "./generated/themes/MultiComboBox.css.js";
|
|
34
52
|
import ResponsivePopoverCommonCss from "./generated/themes/ResponsivePopoverCommon.css.js";
|
|
53
|
+
import ValueStateMessageCss from "./generated/themes/ValueStateMessage.css.js";
|
|
54
|
+
import SuggestionsCss from "./generated/themes/Suggestions.css.js";
|
|
35
55
|
|
|
36
56
|
/**
|
|
37
57
|
* @public
|
|
38
58
|
*/
|
|
39
59
|
const metadata = {
|
|
40
60
|
tag: "ui5-multi-combobox",
|
|
61
|
+
languageAware: true,
|
|
62
|
+
managedSlots: true,
|
|
41
63
|
slots: /** @lends sap.ui.webcomponents.main.MultiComboBox.prototype */ {
|
|
42
64
|
/**
|
|
43
|
-
* Defines the
|
|
65
|
+
* Defines the component items.
|
|
66
|
+
*
|
|
67
|
+
* @type {sap.ui.webcomponents.main.IMultiComboBoxItem[]}
|
|
68
|
+
* @slot items
|
|
69
|
+
* @public
|
|
70
|
+
*/
|
|
71
|
+
"default": {
|
|
72
|
+
propertyName: "items",
|
|
73
|
+
type: HTMLElement,
|
|
74
|
+
invalidateOnChildChange: true,
|
|
75
|
+
},
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Defines the icon to be displayed in the component.
|
|
79
|
+
*
|
|
80
|
+
* @type {sap.ui.webcomponents.main.IIcon}
|
|
81
|
+
* @slot
|
|
82
|
+
* @public
|
|
83
|
+
* @since 1.0.0-rc.9
|
|
84
|
+
*/
|
|
85
|
+
icon: {
|
|
86
|
+
type: HTMLElement,
|
|
87
|
+
},
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Defines the value state message that will be displayed as pop up under the component.
|
|
44
91
|
* <br><br>
|
|
45
|
-
* Example: <br>
|
|
46
|
-
* <ui5-multi-combobox><br>
|
|
47
|
-
* <ui5-li>Item #1</ui5-li><br>
|
|
48
|
-
* <ui5-li>Item #2</ui5-li><br>
|
|
49
|
-
* </ui5-multi-combobox>
|
|
50
|
-
* <br> <br>
|
|
51
92
|
*
|
|
93
|
+
* <b>Note:</b> If not specified, a default text (in the respective language) will be displayed.
|
|
94
|
+
* <br>
|
|
95
|
+
* <b>Note:</b> The <code>valueStateMessage</code> would be displayed,
|
|
96
|
+
* when the component is in <code>Information</code>, <code>Warning</code> or <code>Error</code> value state.
|
|
52
97
|
* @type {HTMLElement[]}
|
|
98
|
+
* @since 1.0.0-rc.9
|
|
53
99
|
* @slot
|
|
54
100
|
* @public
|
|
55
101
|
*/
|
|
56
|
-
|
|
57
|
-
propertyName: "items",
|
|
102
|
+
valueStateMessage: {
|
|
58
103
|
type: HTMLElement,
|
|
59
|
-
listenFor: { include: ["*"] },
|
|
60
104
|
},
|
|
61
105
|
},
|
|
62
106
|
properties: /** @lends sap.ui.webcomponents.main.MultiComboBox.prototype */ {
|
|
63
107
|
/**
|
|
64
|
-
* Defines the value of the
|
|
108
|
+
* Defines the value of the component.
|
|
65
109
|
* <br><br>
|
|
66
110
|
* <b>Note:</b> The property is updated upon typing.
|
|
67
111
|
*
|
|
@@ -76,7 +120,7 @@ const metadata = {
|
|
|
76
120
|
|
|
77
121
|
/**
|
|
78
122
|
* Defines a short hint intended to aid the user with data entry when the
|
|
79
|
-
*
|
|
123
|
+
* component has no value.
|
|
80
124
|
* @type {string}
|
|
81
125
|
* @defaultvalue ""
|
|
82
126
|
* @public
|
|
@@ -87,7 +131,7 @@ const metadata = {
|
|
|
87
131
|
},
|
|
88
132
|
|
|
89
133
|
/**
|
|
90
|
-
* Defines if the user input will be prevented if no matching item has been found
|
|
134
|
+
* Defines if the user input will be prevented, if no matching item has been found
|
|
91
135
|
*
|
|
92
136
|
* @type {boolean}
|
|
93
137
|
* @defaultvalue false
|
|
@@ -98,9 +142,9 @@ const metadata = {
|
|
|
98
142
|
},
|
|
99
143
|
|
|
100
144
|
/**
|
|
101
|
-
* Defines whether
|
|
145
|
+
* Defines whether the component is in disabled state.
|
|
102
146
|
* <br><br>
|
|
103
|
-
* <b>Note:</b> A disabled
|
|
147
|
+
* <b>Note:</b> A disabled component is completely noninteractive.
|
|
104
148
|
*
|
|
105
149
|
* @type {boolean}
|
|
106
150
|
* @defaultvalue false
|
|
@@ -111,10 +155,18 @@ const metadata = {
|
|
|
111
155
|
},
|
|
112
156
|
|
|
113
157
|
/**
|
|
114
|
-
* Defines the value state of the
|
|
115
|
-
*
|
|
158
|
+
* Defines the value state of the component.
|
|
159
|
+
* <br><br>
|
|
160
|
+
* Available options are:
|
|
161
|
+
* <ul>
|
|
162
|
+
* <li><code>None</code></li>
|
|
163
|
+
* <li><code>Error</code></li>
|
|
164
|
+
* <li><code>Warning</code></li>
|
|
165
|
+
* <li><code>Success</code></li>
|
|
166
|
+
* <li><code>Information</code></li>
|
|
167
|
+
* </ul>
|
|
116
168
|
*
|
|
117
|
-
* @type {
|
|
169
|
+
* @type {ValueState}
|
|
118
170
|
* @defaultvalue "None"
|
|
119
171
|
* @public
|
|
120
172
|
*/
|
|
@@ -124,9 +176,9 @@ const metadata = {
|
|
|
124
176
|
},
|
|
125
177
|
|
|
126
178
|
/**
|
|
127
|
-
* Defines whether the
|
|
179
|
+
* Defines whether the component is read-only.
|
|
128
180
|
* <br><br>
|
|
129
|
-
* <b>Note:</b> A read-only
|
|
181
|
+
* <b>Note:</b> A read-only component is not editable,
|
|
130
182
|
* but still provides visual feedback upon user interaction.
|
|
131
183
|
*
|
|
132
184
|
* @type {boolean}
|
|
@@ -138,7 +190,7 @@ const metadata = {
|
|
|
138
190
|
},
|
|
139
191
|
|
|
140
192
|
/**
|
|
141
|
-
* Defines whether the
|
|
193
|
+
* Defines whether the component is required.
|
|
142
194
|
*
|
|
143
195
|
* @type {boolean}
|
|
144
196
|
* @defaultvalue false
|
|
@@ -149,11 +201,25 @@ const metadata = {
|
|
|
149
201
|
type: Boolean,
|
|
150
202
|
},
|
|
151
203
|
|
|
204
|
+
/**
|
|
205
|
+
* Defines the filter type of the component.
|
|
206
|
+
* Available options are: <code>StartsWithPerTerm</code>, <code>StartsWith</code>, <code>Contains</code> and <code>None</code>.
|
|
207
|
+
*
|
|
208
|
+
* @type {string}
|
|
209
|
+
* @defaultvalue "StartsWithPerTerm"
|
|
210
|
+
* @public
|
|
211
|
+
*/
|
|
212
|
+
filter: {
|
|
213
|
+
type: String,
|
|
214
|
+
defaultValue: "StartsWithPerTerm",
|
|
215
|
+
},
|
|
216
|
+
|
|
152
217
|
/**
|
|
153
218
|
* Indicates whether the dropdown is open. True if the dropdown is open, false otherwise.
|
|
154
219
|
*
|
|
155
220
|
* @type {boolean}
|
|
156
221
|
* @defaultvalue false
|
|
222
|
+
* @readonly
|
|
157
223
|
* @since 1.0.0-rc.5
|
|
158
224
|
* @public
|
|
159
225
|
*/
|
|
@@ -161,16 +227,20 @@ const metadata = {
|
|
|
161
227
|
type: Boolean,
|
|
162
228
|
},
|
|
163
229
|
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
230
|
+
_filteredItems: {
|
|
231
|
+
type: Object,
|
|
232
|
+
},
|
|
233
|
+
|
|
234
|
+
filterSelected: {
|
|
235
|
+
type: Boolean,
|
|
236
|
+
},
|
|
237
|
+
|
|
168
238
|
focused: {
|
|
169
239
|
type: Boolean,
|
|
170
240
|
},
|
|
171
241
|
|
|
172
|
-
|
|
173
|
-
type:
|
|
242
|
+
_tokenizerFocused: {
|
|
243
|
+
type: Boolean,
|
|
174
244
|
},
|
|
175
245
|
|
|
176
246
|
_iconPressed: {
|
|
@@ -178,11 +248,18 @@ const metadata = {
|
|
|
178
248
|
noAttribute: true,
|
|
179
249
|
},
|
|
180
250
|
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
251
|
+
_inputWidth: {
|
|
252
|
+
type: Integer,
|
|
253
|
+
noAttribute: true,
|
|
254
|
+
},
|
|
255
|
+
|
|
256
|
+
_listWidth: {
|
|
257
|
+
type: Integer,
|
|
258
|
+
defaultValue: 0,
|
|
259
|
+
noAttribute: true,
|
|
260
|
+
},
|
|
261
|
+
|
|
262
|
+
_performingSelectionTwice: {
|
|
186
263
|
type: Boolean,
|
|
187
264
|
},
|
|
188
265
|
},
|
|
@@ -196,7 +273,7 @@ const metadata = {
|
|
|
196
273
|
change: {},
|
|
197
274
|
|
|
198
275
|
/**
|
|
199
|
-
* Fired when the value of the
|
|
276
|
+
* Fired when the value of the component changes at each keystroke.
|
|
200
277
|
*
|
|
201
278
|
* @event
|
|
202
279
|
* @public
|
|
@@ -206,21 +283,21 @@ const metadata = {
|
|
|
206
283
|
/**
|
|
207
284
|
* Fired when the dropdown is opened or closed.
|
|
208
285
|
*
|
|
209
|
-
* @event
|
|
286
|
+
* @event sap.ui.webcomponents.main.MultiComboBox#open-change
|
|
210
287
|
* @since 1.0.0-rc.5
|
|
211
288
|
* @public
|
|
212
289
|
*/
|
|
213
|
-
|
|
290
|
+
"open-change": {},
|
|
214
291
|
|
|
215
292
|
/**
|
|
216
293
|
* Fired when selection is changed by user interaction
|
|
217
294
|
* in <code>SingleSelect</code> and <code>MultiSelect</code> modes.
|
|
218
295
|
*
|
|
219
|
-
* @event
|
|
296
|
+
* @event sap.ui.webcomponents.main.MultiComboBox#selection-change
|
|
220
297
|
* @param {Array} items an array of the selected items.
|
|
221
298
|
* @public
|
|
222
299
|
*/
|
|
223
|
-
|
|
300
|
+
"selection-change": {
|
|
224
301
|
detail: {
|
|
225
302
|
items: { type: Array },
|
|
226
303
|
},
|
|
@@ -233,12 +310,10 @@ const metadata = {
|
|
|
233
310
|
*
|
|
234
311
|
* <h3 class="comment-api-title">Overview</h3>
|
|
235
312
|
*
|
|
236
|
-
* The <code>ui5-multi-combobox</code> component
|
|
313
|
+
* The <code>ui5-multi-combobox</code> component consists of a list box with items and a text field allowing the user to either type a value directly into the text field, or choose from the list of existing items.
|
|
237
314
|
*
|
|
238
|
-
*
|
|
239
|
-
*
|
|
240
|
-
* The <code>ui5-multi-combobox</code> component is commonly used to enable users to select one or more options from a predefined list. The control provides an editable input field to filter the list, and a dropdown arrow of available options.
|
|
241
|
-
* The select options in the list have checkboxes that permit multi-selection. Entered values are displayed as tokens.
|
|
315
|
+
* The drop-down list is used for selecting and filtering values, it enables users to select one or more options from a predefined list. The control provides an editable input field to filter the list, and a dropdown arrow to expand/collapse the list of available options.
|
|
316
|
+
* The options in the list have checkboxes that permit multi-selection. Entered values are displayed as tokens.
|
|
242
317
|
* <h3>Structure</h3>
|
|
243
318
|
* The <code>ui5-multi-combobox</code> consists of the following elements:
|
|
244
319
|
* <ul>
|
|
@@ -251,20 +326,29 @@ const metadata = {
|
|
|
251
326
|
*
|
|
252
327
|
* The <code>ui5-multi-combobox</code> provides advanced keyboard handling.
|
|
253
328
|
*
|
|
254
|
-
* <
|
|
329
|
+
* <h4>Picker</h4>
|
|
255
330
|
* If the <code>ui5-multi-combobox</code> is focused,
|
|
256
331
|
* you can open or close the drop-down by pressing <code>F4</code>, <code>ALT+UP</code> or <code>ALT+DOWN</code> keys.
|
|
257
332
|
* Once the drop-down is opened, you can use the <code>UP</code> and <code>DOWN</code> arrow keys
|
|
258
333
|
* to navigate through the available options and select one by pressing the <code>Space</code> or <code>Enter</code> keys.
|
|
259
334
|
* <br>
|
|
260
335
|
*
|
|
261
|
-
* <
|
|
336
|
+
* <h4>Tokens</h4>
|
|
262
337
|
* <ul>
|
|
263
|
-
* <li> Left/Right arrow keys - moves the focus selection form the currently
|
|
338
|
+
* <li> Left/Right arrow keys - moves the focus selection form the currently focused token to the previous/next one (if available). </li>
|
|
264
339
|
* <li> Delete - deletes the token and focuses the previous token. </li>
|
|
265
340
|
* <li> Backspace - deletes the token and focus the next token. </li>
|
|
266
341
|
* </ul>
|
|
267
342
|
*
|
|
343
|
+
* <h3>CSS Shadow Parts</h3>
|
|
344
|
+
*
|
|
345
|
+
* <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.
|
|
346
|
+
* <br>
|
|
347
|
+
* The <code>ui5-multi-combobox</code> exposes the following CSS Shadow Parts:
|
|
348
|
+
* <ul>
|
|
349
|
+
* <li>token-{index} - Used to style each token(where <code>token-0</code> corresponds to the first item)</li>
|
|
350
|
+
* </ul>
|
|
351
|
+
*
|
|
268
352
|
* <h3>ES6 Module Import</h3>
|
|
269
353
|
*
|
|
270
354
|
* <code>import "@ui5/webcomponents/dist/MultiComboBox";</code>
|
|
@@ -276,6 +360,7 @@ const metadata = {
|
|
|
276
360
|
* @extends UI5Element
|
|
277
361
|
* @tagname ui5-multi-combobox
|
|
278
362
|
* @public
|
|
363
|
+
* @appenddocs MultiComboBoxItem
|
|
279
364
|
* @since 0.11.0
|
|
280
365
|
*/
|
|
281
366
|
class MultiComboBox extends UI5Element {
|
|
@@ -300,47 +385,70 @@ class MultiComboBox extends UI5Element {
|
|
|
300
385
|
}
|
|
301
386
|
|
|
302
387
|
static get staticAreaStyles() {
|
|
303
|
-
return ResponsivePopoverCommonCss;
|
|
388
|
+
return [ResponsivePopoverCommonCss, ValueStateMessageCss, SuggestionsCss];
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
static get dependencies() {
|
|
392
|
+
return [
|
|
393
|
+
MultiComboBoxItem,
|
|
394
|
+
Tokenizer,
|
|
395
|
+
Token,
|
|
396
|
+
Icon,
|
|
397
|
+
ResponsivePopover,
|
|
398
|
+
Popover,
|
|
399
|
+
List,
|
|
400
|
+
StandardListItem,
|
|
401
|
+
ToggleButton,
|
|
402
|
+
Button,
|
|
403
|
+
];
|
|
304
404
|
}
|
|
305
405
|
|
|
306
406
|
constructor() {
|
|
307
407
|
super();
|
|
308
408
|
|
|
309
409
|
this._filteredItems = [];
|
|
410
|
+
this.selectedValues = [];
|
|
310
411
|
this._inputLastValue = "";
|
|
412
|
+
this._valueBeforeOpen = "";
|
|
311
413
|
this._deleting = false;
|
|
312
414
|
this._validationTimeout = null;
|
|
313
|
-
this.
|
|
314
|
-
|
|
415
|
+
this._handleResizeBound = this._handleResize.bind(this);
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
onEnterDOM() {
|
|
419
|
+
ResizeHandler.register(this, this._handleResizeBound);
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
onExitDOM() {
|
|
423
|
+
ResizeHandler.deregister(this, this._handleResizeBound);
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
_handleResize() {
|
|
427
|
+
this._inputWidth = this.offsetWidth;
|
|
315
428
|
}
|
|
316
429
|
|
|
317
430
|
_inputChange() {
|
|
318
431
|
this.fireEvent("change");
|
|
319
432
|
}
|
|
320
433
|
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
return;
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
this._showMorePressed = true;
|
|
327
|
-
this._selectedItemsPopoverOpened = true;
|
|
328
|
-
this._toggleRespPopover(true);
|
|
434
|
+
togglePopover() {
|
|
435
|
+
this.allItemsPopover.toggle(this);
|
|
329
436
|
}
|
|
330
437
|
|
|
331
|
-
|
|
332
|
-
this.
|
|
333
|
-
this.
|
|
438
|
+
_showFilteredItems() {
|
|
439
|
+
this.filterSelected = true;
|
|
440
|
+
this._showMorePressed = true;
|
|
334
441
|
|
|
335
|
-
this.
|
|
442
|
+
this.togglePopover();
|
|
336
443
|
}
|
|
337
444
|
|
|
338
|
-
|
|
339
|
-
this.
|
|
445
|
+
filterSelectedItems(event) {
|
|
446
|
+
this.filterSelected = event.target.pressed;
|
|
447
|
+
this.selectedItems = this._filteredItems.filter(item => item.selected);
|
|
340
448
|
}
|
|
341
449
|
|
|
342
|
-
|
|
343
|
-
this.
|
|
450
|
+
get _showAllItemsButtonPressed() {
|
|
451
|
+
return this.filterSelected;
|
|
344
452
|
}
|
|
345
453
|
|
|
346
454
|
get _inputDom() {
|
|
@@ -353,11 +461,15 @@ class MultiComboBox extends UI5Element {
|
|
|
353
461
|
const filteredItems = this._filterItems(value);
|
|
354
462
|
const oldValueState = this.valueState;
|
|
355
463
|
|
|
464
|
+
if (this.filterSelected) {
|
|
465
|
+
this.filterSelected = false;
|
|
466
|
+
}
|
|
467
|
+
|
|
356
468
|
/* skip calling change event when an input with a placeholder is focused on IE
|
|
357
469
|
- value of the host and the internal input should be differnt in case of actual input
|
|
358
470
|
- input is called when a key is pressed => keyup should not be called yet
|
|
359
471
|
*/
|
|
360
|
-
const skipFiring = (this._inputDom.value === this.value) && isIE && !this._keyDown && !!this.placeholder;
|
|
472
|
+
const skipFiring = (this._inputDom.value === this.value) && isIE() && !this._keyDown && !!this.placeholder;
|
|
361
473
|
|
|
362
474
|
if (skipFiring) {
|
|
363
475
|
event.preventDefault();
|
|
@@ -374,24 +486,20 @@ class MultiComboBox extends UI5Element {
|
|
|
374
486
|
input.value = this._inputLastValue;
|
|
375
487
|
this.valueState = "Error";
|
|
376
488
|
|
|
377
|
-
this.
|
|
378
|
-
this.valueState = oldValueState;
|
|
379
|
-
this._validationTimeout = null;
|
|
380
|
-
}, 2000);
|
|
489
|
+
this._resetValueState(oldValueState);
|
|
381
490
|
|
|
382
491
|
return;
|
|
383
492
|
}
|
|
384
493
|
|
|
385
|
-
|
|
386
494
|
this._inputLastValue = input.value;
|
|
387
495
|
this.value = input.value;
|
|
388
496
|
this._filteredItems = filteredItems;
|
|
389
497
|
|
|
390
498
|
if (!isPhone()) {
|
|
391
499
|
if (filteredItems.length === 0) {
|
|
392
|
-
this.
|
|
500
|
+
this.allItemsPopover.close();
|
|
393
501
|
} else {
|
|
394
|
-
this.
|
|
502
|
+
this.allItemsPopover.showAt(this);
|
|
395
503
|
}
|
|
396
504
|
}
|
|
397
505
|
|
|
@@ -405,259 +513,576 @@ class MultiComboBox extends UI5Element {
|
|
|
405
513
|
deletingItem.selected = false;
|
|
406
514
|
this._deleting = true;
|
|
407
515
|
|
|
408
|
-
this.
|
|
516
|
+
this.fireSelectionChange();
|
|
517
|
+
}
|
|
518
|
+
|
|
519
|
+
get _getPlaceholder() {
|
|
520
|
+
if (this._tokenizer && this._tokenizer.tokens.length) {
|
|
521
|
+
return "";
|
|
522
|
+
}
|
|
523
|
+
|
|
524
|
+
return this.placeholder;
|
|
525
|
+
}
|
|
526
|
+
|
|
527
|
+
_handleLeft() {
|
|
528
|
+
const cursorPosition = this.getDomRef().querySelector(`input`).selectionStart;
|
|
529
|
+
|
|
530
|
+
if (cursorPosition === 0) {
|
|
531
|
+
this._tokenizer._focusLastToken();
|
|
532
|
+
}
|
|
409
533
|
}
|
|
410
534
|
|
|
411
|
-
_tokenizerFocusOut() {
|
|
412
|
-
|
|
413
|
-
const tokensCount = tokenizer.tokens.length - 1;
|
|
535
|
+
_tokenizerFocusOut(event) {
|
|
536
|
+
this._tokenizerFocused = false;
|
|
414
537
|
|
|
415
|
-
|
|
538
|
+
const tokensCount = this._tokenizer.tokens.length - 1;
|
|
539
|
+
|
|
540
|
+
if (!event.relatedTarget || event.relatedTarget.localName !== "ui5-token") {
|
|
541
|
+
this._tokenizer.tokens.forEach(token => { token.selected = false; });
|
|
542
|
+
this._tokenizer.scrollToStart();
|
|
543
|
+
}
|
|
416
544
|
|
|
417
545
|
if (tokensCount === 0 && this._deleting) {
|
|
418
546
|
setTimeout(() => {
|
|
419
|
-
|
|
547
|
+
if (!isPhone()) {
|
|
548
|
+
this.shadowRoot.querySelector("input").focus();
|
|
549
|
+
}
|
|
550
|
+
|
|
420
551
|
this._deleting = false;
|
|
421
552
|
}, 0);
|
|
422
553
|
}
|
|
423
554
|
}
|
|
424
555
|
|
|
556
|
+
_tokenizerFocusIn() {
|
|
557
|
+
this._tokenizerFocused = true;
|
|
558
|
+
this.focused = false;
|
|
559
|
+
}
|
|
560
|
+
|
|
425
561
|
_onkeyup() {
|
|
426
562
|
this._keyDown = false;
|
|
427
563
|
}
|
|
428
564
|
|
|
429
|
-
_onkeydown(event) {
|
|
565
|
+
async _onkeydown(event) {
|
|
566
|
+
if (isLeft(event)) {
|
|
567
|
+
this._handleLeft(event);
|
|
568
|
+
}
|
|
569
|
+
|
|
430
570
|
if (isShow(event) && !this.readonly && !this.disabled) {
|
|
431
571
|
event.preventDefault();
|
|
432
|
-
this.
|
|
572
|
+
this.togglePopover();
|
|
433
573
|
}
|
|
434
574
|
|
|
435
|
-
if (
|
|
436
|
-
|
|
437
|
-
const list = this.getStaticAreaItemDomRef().querySelector(".ui5-multi-combobox-all-items-list");
|
|
438
|
-
list._itemNavigation.current = 0;
|
|
439
|
-
list.items[0].focus();
|
|
575
|
+
if (this.open && (isUp(event) || isDown(event))) {
|
|
576
|
+
this._handleArrowNavigation(event);
|
|
440
577
|
}
|
|
441
578
|
|
|
442
579
|
if (isBackSpace(event) && event.target.value === "") {
|
|
443
580
|
event.preventDefault();
|
|
444
581
|
|
|
445
|
-
|
|
582
|
+
this._tokenizer._focusLastToken();
|
|
583
|
+
}
|
|
446
584
|
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
585
|
+
// Reset value on ESC
|
|
586
|
+
if (isEscape(event) && (!this.allowCustomValues || (!this.open && this.allowCustomValues))) {
|
|
587
|
+
this.value = this._lastValue;
|
|
588
|
+
}
|
|
450
589
|
|
|
451
|
-
|
|
452
|
-
this.
|
|
590
|
+
if (isEnter(event)) {
|
|
591
|
+
this.handleEnter();
|
|
453
592
|
}
|
|
454
593
|
|
|
455
594
|
this._keyDown = true;
|
|
456
595
|
}
|
|
457
596
|
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
597
|
+
_onValueStateKeydown(event) {
|
|
598
|
+
const isArrowDown = isDown(event);
|
|
599
|
+
const isArrowUp = isUp(event);
|
|
600
|
+
|
|
601
|
+
event.preventDefault();
|
|
602
|
+
|
|
603
|
+
if (isArrowDown) {
|
|
604
|
+
this._handleArrowDown(event);
|
|
605
|
+
}
|
|
606
|
+
|
|
607
|
+
if (isArrowUp) {
|
|
608
|
+
this._inputDom.focus();
|
|
609
|
+
}
|
|
610
|
+
}
|
|
611
|
+
|
|
612
|
+
_onItemKeydown(event) {
|
|
613
|
+
const isFirstItem = this.list.items[0] === event.target;
|
|
614
|
+
|
|
615
|
+
event.preventDefault();
|
|
616
|
+
|
|
617
|
+
if (!isUp(event) || !isFirstItem) {
|
|
618
|
+
return;
|
|
619
|
+
}
|
|
620
|
+
|
|
621
|
+
if (this.valueStateHeader) {
|
|
622
|
+
this.valueStateHeader.focus();
|
|
623
|
+
return;
|
|
624
|
+
}
|
|
625
|
+
|
|
626
|
+
this._inputDom.focus();
|
|
462
627
|
}
|
|
463
628
|
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
this.
|
|
629
|
+
async _handleArrowNavigation(event) {
|
|
630
|
+
const isArrowDown = isDown(event);
|
|
631
|
+
const hasSuggestions = this.allItemsPopover.opened && this.items.length;
|
|
467
632
|
|
|
468
|
-
|
|
633
|
+
event.preventDefault();
|
|
634
|
+
|
|
635
|
+
if (this.hasValueStateMessage && !this.valueStateHeader) {
|
|
636
|
+
await this._setValueStateHeader();
|
|
637
|
+
}
|
|
638
|
+
|
|
639
|
+
if (isArrowDown && this.focused && this.valueStateHeader) {
|
|
640
|
+
this.valueStateHeader.focus();
|
|
641
|
+
return;
|
|
642
|
+
}
|
|
469
643
|
|
|
470
|
-
if (
|
|
471
|
-
this.
|
|
644
|
+
if (isArrowDown && this.focused && hasSuggestions) {
|
|
645
|
+
this._handleArrowDown(event);
|
|
472
646
|
}
|
|
473
647
|
}
|
|
474
648
|
|
|
475
|
-
|
|
476
|
-
|
|
649
|
+
_handleArrowDown(event) {
|
|
650
|
+
const firstListItem = this.list.items[0];
|
|
651
|
+
|
|
652
|
+
this.list._itemNavigation.setCurrentItem(firstListItem);
|
|
653
|
+
firstListItem.focus();
|
|
477
654
|
}
|
|
478
655
|
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
656
|
+
handleEnter() {
|
|
657
|
+
const lowerCaseValue = this.value.toLowerCase();
|
|
658
|
+
const matchingItem = this.items.find(item => item.text.toLowerCase() === lowerCaseValue);
|
|
659
|
+
const oldValueState = this.valueState;
|
|
660
|
+
|
|
661
|
+
if (matchingItem) {
|
|
662
|
+
if (matchingItem.selected) {
|
|
663
|
+
if (this._validationTimeout) {
|
|
664
|
+
return;
|
|
484
665
|
}
|
|
485
|
-
});
|
|
486
|
-
});
|
|
487
666
|
|
|
488
|
-
|
|
667
|
+
this.valueState = "Error";
|
|
668
|
+
this._performingSelectionTwice = true;
|
|
669
|
+
this._resetValueState(oldValueState, () => {
|
|
670
|
+
this._performingSelectionTwice = false;
|
|
671
|
+
});
|
|
672
|
+
} else {
|
|
673
|
+
matchingItem.selected = true;
|
|
674
|
+
this.value = "";
|
|
675
|
+
this.fireSelectionChange();
|
|
676
|
+
}
|
|
489
677
|
|
|
490
|
-
|
|
491
|
-
this._getRespPopover().close();
|
|
492
|
-
this.value = "";
|
|
493
|
-
this.fireEvent("input");
|
|
678
|
+
this.allItemsPopover.close();
|
|
494
679
|
}
|
|
495
680
|
}
|
|
496
681
|
|
|
497
|
-
|
|
498
|
-
|
|
682
|
+
_resetValueState(valueState, callback) {
|
|
683
|
+
this._validationTimeout = setTimeout(() => {
|
|
684
|
+
this.valueState = valueState;
|
|
685
|
+
this._validationTimeout = null;
|
|
686
|
+
|
|
687
|
+
callback && callback();
|
|
688
|
+
}, 2000);
|
|
499
689
|
}
|
|
500
690
|
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
691
|
+
_onTokenizerKeydown(event) {
|
|
692
|
+
if (isRight(event)) {
|
|
693
|
+
const lastTokenIndex = this._tokenizer.tokens.length - 1;
|
|
504
694
|
|
|
505
|
-
|
|
506
|
-
|
|
695
|
+
if (this._tokenizer.tokens[lastTokenIndex] === document.activeElement.shadowRoot.activeElement) {
|
|
696
|
+
setTimeout(() => {
|
|
697
|
+
this.shadowRoot.querySelector("input").focus();
|
|
698
|
+
}, 0);
|
|
699
|
+
}
|
|
507
700
|
}
|
|
701
|
+
}
|
|
702
|
+
|
|
703
|
+
_filterItems(str) {
|
|
704
|
+
return (Filters[this.filter] || Filters.StartsWithPerTerm)(str, this.items);
|
|
705
|
+
}
|
|
508
706
|
|
|
509
|
-
|
|
707
|
+
_afterOpenPicker() {
|
|
708
|
+
this._toggle();
|
|
510
709
|
|
|
511
|
-
|
|
710
|
+
if (!isPhone()) {
|
|
711
|
+
this._innerInput.focus();
|
|
712
|
+
} else {
|
|
713
|
+
this.allItemsPopover.focus();
|
|
714
|
+
}
|
|
512
715
|
}
|
|
513
716
|
|
|
514
|
-
|
|
515
|
-
this.
|
|
717
|
+
_toggle() {
|
|
718
|
+
this.open = !this.open;
|
|
719
|
+
this.fireEvent("open-change");
|
|
516
720
|
}
|
|
517
721
|
|
|
518
|
-
|
|
519
|
-
|
|
722
|
+
_getSelectedItems() {
|
|
723
|
+
// Angular 2 way data binding
|
|
724
|
+
this.selectedValues = this.items.filter(item => item.selected);
|
|
725
|
+
return this.selectedValues;
|
|
726
|
+
}
|
|
727
|
+
|
|
728
|
+
_listSelectionChange(event) {
|
|
729
|
+
// sync list items and cb items
|
|
730
|
+
this.syncItems(event.target.items);
|
|
731
|
+
|
|
732
|
+
// don't call selection change right after selection as user can cancel it on phone
|
|
733
|
+
if (!isPhone()) {
|
|
734
|
+
this.fireSelectionChange();
|
|
735
|
+
}
|
|
736
|
+
|
|
737
|
+
if (!event.detail.selectionComponentPressed && !isSpace(event.detail)) {
|
|
738
|
+
this.allItemsPopover.close();
|
|
739
|
+
this.value = "";
|
|
740
|
+
|
|
741
|
+
// if the item (not checkbox) is clicked, call the selection change
|
|
742
|
+
if (isPhone()) {
|
|
743
|
+
this.fireSelectionChange();
|
|
744
|
+
}
|
|
745
|
+
|
|
746
|
+
this.fireEvent("input");
|
|
747
|
+
}
|
|
748
|
+
}
|
|
749
|
+
|
|
750
|
+
syncItems(listItems) {
|
|
751
|
+
listItems.forEach(item => {
|
|
752
|
+
this.items.forEach(mcbItem => {
|
|
753
|
+
if (mcbItem._id === item.getAttribute("data-ui5-token-id")) {
|
|
754
|
+
mcbItem.selected = item.selected;
|
|
755
|
+
}
|
|
756
|
+
});
|
|
757
|
+
});
|
|
758
|
+
}
|
|
759
|
+
|
|
760
|
+
fireSelectionChange() {
|
|
761
|
+
this.fireEvent("selection-change", { items: this._getSelectedItems() });
|
|
762
|
+
// Angular 2 way data binding
|
|
763
|
+
this.fireEvent("value-changed");
|
|
764
|
+
}
|
|
765
|
+
|
|
766
|
+
async _getRespPopover() {
|
|
767
|
+
const staticAreaItem = await this.getStaticAreaItemDomRef();
|
|
768
|
+
this.allItemsPopover = staticAreaItem.querySelector(`.ui5-multi-combobox-all-items-responsive-popover`);
|
|
769
|
+
}
|
|
770
|
+
|
|
771
|
+
async _getList() {
|
|
772
|
+
const staticAreaItem = await this.getStaticAreaItemDomRef();
|
|
773
|
+
this.list = staticAreaItem.querySelector(".ui5-multi-combobox-all-items-list");
|
|
520
774
|
}
|
|
521
775
|
|
|
522
776
|
_click(event) {
|
|
523
|
-
if (isPhone() && !this.readonly && !this._showMorePressed) {
|
|
524
|
-
this.
|
|
777
|
+
if (isPhone() && !this.readonly && !this._showMorePressed && !this._deleting) {
|
|
778
|
+
this.allItemsPopover.showAt(this);
|
|
525
779
|
}
|
|
526
780
|
|
|
527
781
|
this._showMorePressed = false;
|
|
528
782
|
}
|
|
529
783
|
|
|
530
|
-
|
|
784
|
+
_afterClosePicker() {
|
|
531
785
|
// close device's keyboard and prevent further typing
|
|
532
786
|
if (isPhone()) {
|
|
533
787
|
this.blur();
|
|
534
788
|
}
|
|
535
|
-
}
|
|
536
789
|
|
|
537
|
-
|
|
538
|
-
if (this._selectedItemsPopoverOpened) {
|
|
539
|
-
event.target.pressed = true;
|
|
540
|
-
this._showAllItemsPopover();
|
|
541
|
-
} else {
|
|
542
|
-
event.target.pressed = false;
|
|
543
|
-
this._showMorePopover();
|
|
544
|
-
}
|
|
545
|
-
}
|
|
790
|
+
this._toggle();
|
|
546
791
|
|
|
547
|
-
|
|
548
|
-
this.
|
|
792
|
+
this._iconPressed = false;
|
|
793
|
+
this.filterSelected = false;
|
|
794
|
+
}
|
|
549
795
|
|
|
550
|
-
|
|
796
|
+
_beforeOpen() {
|
|
797
|
+
this._itemsBeforeOpen = this.items.map(item => {
|
|
798
|
+
return {
|
|
799
|
+
ref: item,
|
|
800
|
+
selected: item.selected,
|
|
801
|
+
};
|
|
802
|
+
});
|
|
551
803
|
|
|
552
|
-
|
|
553
|
-
const morePopover = this._getRespPopover(true);
|
|
804
|
+
this._valueBeforeOpen = this.value;
|
|
554
805
|
|
|
555
|
-
|
|
806
|
+
if (this.filterSelected) {
|
|
807
|
+
this.selectedItems = this._filteredItems.filter(item => item.selected);
|
|
556
808
|
}
|
|
809
|
+
}
|
|
557
810
|
|
|
811
|
+
onBeforeRendering() {
|
|
558
812
|
const input = this.shadowRoot.querySelector("input");
|
|
813
|
+
this._inputLastValue = this.value;
|
|
559
814
|
|
|
560
815
|
if (input && !input.value) {
|
|
561
816
|
this._filteredItems = this.items;
|
|
562
817
|
}
|
|
563
818
|
|
|
819
|
+
this.items.forEach(item => {
|
|
820
|
+
item._getRealDomRef = () => this.allItemsPopover.querySelector(`*[data-ui5-stable=${item.stableDomRef}]`);
|
|
821
|
+
});
|
|
822
|
+
|
|
564
823
|
const filteredItems = this._filterItems(this.value);
|
|
565
824
|
this._filteredItems = filteredItems;
|
|
566
825
|
}
|
|
567
826
|
|
|
568
|
-
onAfterRendering() {
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
827
|
+
async onAfterRendering() {
|
|
828
|
+
await this._getRespPopover();
|
|
829
|
+
await this._getList();
|
|
830
|
+
|
|
831
|
+
this.toggle(this.shouldDisplayOnlyValueStateMessage);
|
|
832
|
+
this.storeResponsivePopoverWidth();
|
|
833
|
+
|
|
834
|
+
this._deleting = false;
|
|
574
835
|
}
|
|
575
836
|
|
|
576
|
-
get
|
|
577
|
-
return
|
|
578
|
-
"Success": this.i18nBundle.getText(VALUE_STATE_SUCCESS),
|
|
579
|
-
"Error": this.i18nBundle.getText(VALUE_STATE_ERROR),
|
|
580
|
-
"Warning": this.i18nBundle.getText(VALUE_STATE_WARNING),
|
|
581
|
-
};
|
|
837
|
+
get _isPhone() {
|
|
838
|
+
return isPhone();
|
|
582
839
|
}
|
|
583
840
|
|
|
584
|
-
|
|
585
|
-
|
|
841
|
+
_onIconMousedown() {
|
|
842
|
+
this._iconPressed = true;
|
|
586
843
|
}
|
|
587
844
|
|
|
588
|
-
|
|
589
|
-
|
|
845
|
+
storeResponsivePopoverWidth() {
|
|
846
|
+
if (this.open && !this._listWidth) {
|
|
847
|
+
this._listWidth = this.list.offsetWidth;
|
|
848
|
+
}
|
|
849
|
+
}
|
|
590
850
|
|
|
591
|
-
|
|
592
|
-
|
|
851
|
+
toggle(isToggled) {
|
|
852
|
+
if (isToggled && !this.open) {
|
|
853
|
+
this.openPopover();
|
|
854
|
+
} else {
|
|
855
|
+
this.closePopover();
|
|
593
856
|
}
|
|
857
|
+
}
|
|
858
|
+
|
|
859
|
+
handleCancel() {
|
|
860
|
+
this._itemsBeforeOpen.forEach(item => {
|
|
861
|
+
item.ref.selected = item.selected;
|
|
862
|
+
});
|
|
594
863
|
|
|
595
|
-
|
|
596
|
-
|
|
864
|
+
this.togglePopover();
|
|
865
|
+
|
|
866
|
+
this.value = this._valueBeforeOpen;
|
|
867
|
+
}
|
|
868
|
+
|
|
869
|
+
handleOK() {
|
|
870
|
+
if (isPhone()) {
|
|
871
|
+
this.fireSelectionChange();
|
|
597
872
|
}
|
|
598
873
|
|
|
599
|
-
|
|
874
|
+
this.togglePopover();
|
|
875
|
+
}
|
|
876
|
+
|
|
877
|
+
async openPopover() {
|
|
878
|
+
const popover = await this._getPopover();
|
|
879
|
+
|
|
880
|
+
if (popover) {
|
|
881
|
+
popover.showAt(this);
|
|
882
|
+
}
|
|
883
|
+
}
|
|
884
|
+
|
|
885
|
+
_forwardFocusToInner() {
|
|
886
|
+
this._innerInput.focus();
|
|
887
|
+
}
|
|
888
|
+
|
|
889
|
+
async closePopover() {
|
|
890
|
+
const popover = await this._getPopover();
|
|
891
|
+
|
|
892
|
+
popover && popover.close();
|
|
893
|
+
}
|
|
894
|
+
|
|
895
|
+
async _getPopover() {
|
|
896
|
+
const staticAreaItem = await this.getStaticAreaItemDomRef();
|
|
897
|
+
return staticAreaItem.querySelector("[ui5-popover]");
|
|
898
|
+
}
|
|
899
|
+
|
|
900
|
+
async _getResponsivePopover() {
|
|
901
|
+
const staticAreaItem = await this.getStaticAreaItemDomRef();
|
|
902
|
+
return staticAreaItem.querySelector("[ui5-responsive-popover]");
|
|
903
|
+
}
|
|
904
|
+
|
|
905
|
+
async _setValueStateHeader() {
|
|
906
|
+
const responsivePopover = await this._getResponsivePopover();
|
|
907
|
+
this.valueStateHeader = responsivePopover.querySelector("div.ui5-responsive-popover-header.ui5-valuestatemessage-root");
|
|
908
|
+
}
|
|
909
|
+
|
|
910
|
+
get _tokenizer() {
|
|
911
|
+
return this.shadowRoot.querySelector("[ui5-tokenizer]");
|
|
600
912
|
}
|
|
601
913
|
|
|
602
|
-
|
|
603
|
-
|
|
914
|
+
inputFocusIn() {
|
|
915
|
+
if (!isPhone()) {
|
|
916
|
+
this.focused = true;
|
|
917
|
+
} else {
|
|
918
|
+
this._innerInput.blur();
|
|
919
|
+
}
|
|
920
|
+
|
|
921
|
+
this._lastValue = this.value;
|
|
604
922
|
}
|
|
605
923
|
|
|
606
|
-
|
|
924
|
+
inputFocusOut(event) {
|
|
607
925
|
if (!this.shadowRoot.contains(event.relatedTarget) && !this._deleting) {
|
|
608
|
-
this.
|
|
926
|
+
this.focused = false;
|
|
927
|
+
|
|
928
|
+
// remove the value if user focus out the input and focus is not going in the popover
|
|
929
|
+
if (!isPhone() && !this.allowCustomValues && (this.staticAreaItem !== event.relatedTarget)) {
|
|
930
|
+
this.value = "";
|
|
931
|
+
}
|
|
609
932
|
}
|
|
610
933
|
}
|
|
611
934
|
|
|
935
|
+
_readonlyIconClick() {
|
|
936
|
+
this._inputDom.focus();
|
|
937
|
+
}
|
|
938
|
+
|
|
612
939
|
get editable() {
|
|
613
940
|
return !this.readonly;
|
|
614
941
|
}
|
|
615
942
|
|
|
616
|
-
get
|
|
617
|
-
return
|
|
943
|
+
get _isFocusInside() {
|
|
944
|
+
return !isPhone() && (this.focused || this._tokenizerFocused);
|
|
618
945
|
}
|
|
619
946
|
|
|
620
947
|
get selectedItemsListMode() {
|
|
621
948
|
return this.readonly ? "None" : "MultiSelect";
|
|
622
949
|
}
|
|
623
950
|
|
|
951
|
+
get _listItemsType() {
|
|
952
|
+
return this.readonly ? "Inactive" : "Active";
|
|
953
|
+
}
|
|
954
|
+
|
|
624
955
|
get hasValueState() {
|
|
625
956
|
return this.valueState !== ValueState.None;
|
|
626
957
|
}
|
|
627
958
|
|
|
959
|
+
get hasValueStateMessage() {
|
|
960
|
+
return this.hasValueState && this.valueState !== ValueState.Success;
|
|
961
|
+
}
|
|
962
|
+
|
|
628
963
|
get valueStateText() {
|
|
629
|
-
|
|
964
|
+
let key = this.valueState;
|
|
965
|
+
|
|
966
|
+
if (this._performingSelectionTwice) {
|
|
967
|
+
key = "Error_Selection";
|
|
968
|
+
}
|
|
969
|
+
|
|
970
|
+
return this.valueStateTextMappings[key];
|
|
971
|
+
}
|
|
972
|
+
|
|
973
|
+
get valueStateTextId() {
|
|
974
|
+
return this.hasValueState ? `${this._id}-valueStateDesc` : undefined;
|
|
975
|
+
}
|
|
976
|
+
|
|
977
|
+
get valueStateMessageText() {
|
|
978
|
+
return this.getSlottedNodes("valueStateMessage").map(el => el.cloneNode(true));
|
|
979
|
+
}
|
|
980
|
+
|
|
981
|
+
/**
|
|
982
|
+
* This method is relevant for sap_horizon theme only
|
|
983
|
+
*/
|
|
984
|
+
get _valueStateMessageIcon() {
|
|
985
|
+
const iconPerValueState = {
|
|
986
|
+
Error: "error",
|
|
987
|
+
Warning: "alert",
|
|
988
|
+
Success: "sys-enter-2",
|
|
989
|
+
Information: "information",
|
|
990
|
+
};
|
|
991
|
+
|
|
992
|
+
return this.valueState !== ValueState.None ? iconPerValueState[this.valueState] : "";
|
|
993
|
+
}
|
|
994
|
+
|
|
995
|
+
get _tokensCountText() {
|
|
996
|
+
if (!this._tokenizer) {
|
|
997
|
+
return;
|
|
998
|
+
}
|
|
999
|
+
return this._tokenizer._tokensCountText();
|
|
1000
|
+
}
|
|
1001
|
+
|
|
1002
|
+
get _tokensCountTextId() {
|
|
1003
|
+
return `${this._id}-hiddenText-nMore`;
|
|
1004
|
+
}
|
|
1005
|
+
|
|
1006
|
+
get ariaDescribedByText() {
|
|
1007
|
+
return this.valueStateTextId ? `${this._tokensCountTextId} ${this.valueStateTextId}` : `${this._tokensCountTextId}`;
|
|
1008
|
+
}
|
|
1009
|
+
|
|
1010
|
+
get shouldDisplayDefaultValueStateMessage() {
|
|
1011
|
+
return !this.valueStateMessage.length && this.hasValueStateMessage;
|
|
1012
|
+
}
|
|
1013
|
+
|
|
1014
|
+
get shouldDisplayOnlyValueStateMessage() {
|
|
1015
|
+
return this.focused && this.hasValueStateMessage && !this._iconPressed;
|
|
1016
|
+
}
|
|
1017
|
+
|
|
1018
|
+
get valueStateTextMappings() {
|
|
1019
|
+
return {
|
|
1020
|
+
"Success": MultiComboBox.i18nBundle.getText(VALUE_STATE_SUCCESS),
|
|
1021
|
+
"Error": MultiComboBox.i18nBundle.getText(VALUE_STATE_ERROR),
|
|
1022
|
+
"Error_Selection": MultiComboBox.i18nBundle.getText(VALUE_STATE_ERROR_ALREADY_SELECTED),
|
|
1023
|
+
"Warning": MultiComboBox.i18nBundle.getText(VALUE_STATE_WARNING),
|
|
1024
|
+
"Information": MultiComboBox.i18nBundle.getText(VALUE_STATE_INFORMATION),
|
|
1025
|
+
};
|
|
630
1026
|
}
|
|
631
1027
|
|
|
632
1028
|
get _innerInput() {
|
|
633
1029
|
if (isPhone()) {
|
|
634
|
-
if (this.
|
|
635
|
-
return this.
|
|
1030
|
+
if (this.allItemsPopover.opened) {
|
|
1031
|
+
return this.allItemsPopover.querySelector("input");
|
|
636
1032
|
}
|
|
637
|
-
|
|
638
|
-
return this._getRespPopover(true).querySelector("input");
|
|
639
1033
|
}
|
|
640
1034
|
|
|
641
1035
|
return this.getDomRef().querySelector("#ui5-multi-combobox-input");
|
|
642
1036
|
}
|
|
643
1037
|
|
|
644
1038
|
get _headerTitleText() {
|
|
645
|
-
return
|
|
1039
|
+
return MultiComboBox.i18nBundle.getText(INPUT_SUGGESTIONS_TITLE);
|
|
646
1040
|
}
|
|
647
1041
|
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
1042
|
+
get _iconAccessibleNameText() {
|
|
1043
|
+
return MultiComboBox.i18nBundle.getText(SELECT_OPTIONS);
|
|
1044
|
+
}
|
|
1045
|
+
|
|
1046
|
+
get _dialogOkButton() {
|
|
1047
|
+
return MultiComboBox.i18nBundle.getText(MULTICOMBOBOX_DIALOG_OK_BUTTON);
|
|
1048
|
+
}
|
|
1049
|
+
|
|
1050
|
+
get _tokenizerExpanded() {
|
|
1051
|
+
return (this._isFocusInside || this.open) && !this.readonly;
|
|
1052
|
+
}
|
|
1053
|
+
|
|
1054
|
+
get classes() {
|
|
1055
|
+
return {
|
|
1056
|
+
popover: {
|
|
1057
|
+
"ui5-multi-combobox-all-items-responsive-popover": true,
|
|
1058
|
+
"ui5-suggestions-popover": !this.isPhone,
|
|
1059
|
+
"ui5-suggestions-popover-with-value-state-header": !this.isPhone && this.hasValueStateMessage,
|
|
1060
|
+
},
|
|
1061
|
+
popoverValueState: {
|
|
1062
|
+
"ui5-valuestatemessage-root": true,
|
|
1063
|
+
"ui5-valuestatemessage-header": true,
|
|
1064
|
+
"ui5-valuestatemessage--success": this.valueState === ValueState.Success,
|
|
1065
|
+
"ui5-valuestatemessage--error": this.valueState === ValueState.Error,
|
|
1066
|
+
"ui5-valuestatemessage--warning": this.valueState === ValueState.Warning,
|
|
1067
|
+
"ui5-valuestatemessage--information": this.valueState === ValueState.Information,
|
|
1068
|
+
},
|
|
1069
|
+
};
|
|
1070
|
+
}
|
|
1071
|
+
|
|
1072
|
+
get styles() {
|
|
1073
|
+
return {
|
|
1074
|
+
popoverValueStateMessage: {
|
|
1075
|
+
"width": `${this._listWidth}px`,
|
|
1076
|
+
"display": this._listWidth === 0 ? "none" : "inline-block",
|
|
1077
|
+
},
|
|
1078
|
+
popoverHeader: {
|
|
1079
|
+
"max-width": isPhone() ? "100%" : `${this._inputWidth}px`,
|
|
1080
|
+
},
|
|
1081
|
+
};
|
|
1082
|
+
}
|
|
659
1083
|
|
|
660
|
-
|
|
1084
|
+
static async onDefine() {
|
|
1085
|
+
MultiComboBox.i18nBundle = await getI18nBundle("@ui5/webcomponents");
|
|
661
1086
|
}
|
|
662
1087
|
}
|
|
663
1088
|
|