@ui5/webcomponents 1.0.2 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +87 -0
- package/dist/Breadcrumbs.js +8 -6
- package/dist/BreadcrumbsItem.js +1 -1
- package/dist/BusyIndicator.js +2 -3
- package/dist/Button.js +28 -1
- package/dist/Calendar.js +7 -0
- package/dist/Carousel.js +9 -0
- package/dist/CheckBox.js +34 -1
- package/dist/ColorPalette.js +5 -4
- package/dist/ColorPalettePopover.js +2 -0
- package/dist/ComboBox.js +91 -23
- package/dist/DateComponentBase.js +6 -8
- package/dist/DatePicker.js +10 -2
- package/dist/DateRangePicker.js +22 -0
- package/dist/Dialog.js +5 -22
- package/dist/Icon.js +10 -8
- package/dist/Input.js +107 -15
- package/dist/Link.js +32 -14
- package/dist/List.js +14 -4
- package/dist/MessageStrip.js +39 -2
- package/dist/MultiComboBox.js +7 -3
- package/dist/MultiComboBoxItem.js +1 -1
- package/dist/Option.js +12 -1
- package/dist/Panel.js +9 -0
- package/dist/Popover.js +106 -57
- package/dist/Popup.js +16 -2
- package/dist/RadioButton.js +15 -3
- package/dist/RatingIndicator.js +37 -7
- package/dist/ResponsivePopover.js +1 -0
- package/dist/SegmentedButton.js +14 -1
- package/dist/Select.js +2 -1
- package/dist/SliderBase.js +4 -0
- package/dist/SplitButton.js +421 -0
- package/dist/Switch.js +18 -0
- package/dist/Tab.js +10 -6
- package/dist/TabContainer.js +480 -108
- package/dist/TabSeparator.js +42 -3
- package/dist/Table.js +15 -5
- package/dist/TextArea.js +9 -3
- package/dist/ToggleButton.js +5 -0
- package/dist/Tokenizer.js +10 -3
- package/dist/TreeItem.js +21 -0
- package/dist/TreeListItem.js +8 -0
- package/dist/api.json +258 -26
- package/dist/css/themes/Badge.css +1 -1
- package/dist/css/themes/Breadcrumbs.css +1 -1
- package/dist/css/themes/BrowserScrollbar.css +1 -1
- package/dist/css/themes/BusyIndicator.css +1 -1
- package/dist/css/themes/CardHeader.css +1 -1
- package/dist/css/themes/CheckBox.css +1 -1
- package/dist/css/themes/ComboBox.css +1 -1
- package/dist/css/themes/CustomListItem.css +1 -1
- package/dist/css/themes/Dialog.css +1 -1
- package/dist/css/themes/Input.css +1 -1
- package/dist/css/themes/List.css +1 -1
- package/dist/css/themes/MultiComboBox.css +1 -1
- package/dist/css/themes/Panel.css +1 -1
- package/dist/css/themes/Popover.css +1 -1
- package/dist/css/themes/PopupsCommon.css +1 -1
- package/dist/css/themes/RadioButton.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/Select.css +1 -1
- package/dist/css/themes/SliderBase.css +1 -1
- package/dist/css/themes/SplitButton.css +1 -0
- package/dist/css/themes/TabContainer.css +1 -1
- package/dist/css/themes/TabInOverflow.css +1 -1
- package/dist/css/themes/TabInStrip.css +1 -1
- package/dist/css/themes/TabSeparatorInOverflow.css +1 -0
- package/dist/css/themes/TabSeparatorInStrip.css +1 -0
- package/dist/css/themes/Table.css +1 -1
- package/dist/css/themes/TableColumn.css +1 -1
- package/dist/css/themes/TextArea.css +1 -1
- package/dist/css/themes/TimeSelection.css +1 -1
- package/dist/css/themes/Token.css +1 -1
- 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_exp/parameters-bundle.css +1 -1
- package/dist/features/InputSuggestions.js +88 -15
- 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_sappsd.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_saprigi.json +1 -1
- package/dist/generated/assets/i18n/messagebundle_en_US_saptrc.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_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/i18n/i18n-defaults.js +2 -2
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +1 -1
- package/dist/generated/templates/BusyIndicatorTemplate.lit.js +1 -1
- package/dist/generated/templates/ButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/CardHeaderTemplate.lit.js +1 -1
- package/dist/generated/templates/CarouselTemplate.lit.js +1 -1
- package/dist/generated/templates/CheckBoxTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ComboBoxTemplate.lit.js +1 -1
- package/dist/generated/templates/CustomListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/DialogTemplate.lit.js +1 -1
- package/dist/generated/templates/InputPopoverTemplate.lit.js +3 -3
- package/dist/generated/templates/InputTemplate.lit.js +1 -1
- package/dist/generated/templates/LinkTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemTemplate.lit.js +2 -2
- 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 +1 -1
- package/dist/generated/templates/PanelTemplate.lit.js +1 -1
- package/dist/generated/templates/PopupBlockLayerTemplate.lit.js +1 -1
- package/dist/generated/templates/RangeSliderTemplate.lit.js +1 -1
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/SegmentedButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/SliderBaseTemplate.lit.js +1 -1
- package/dist/generated/templates/SliderTemplate.lit.js +1 -1
- package/dist/generated/templates/SplitButtonTemplate.lit.js +7 -0
- package/dist/generated/templates/StandardListItemTemplate.lit.js +2 -2
- 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 +4 -2
- package/dist/generated/templates/TabContainerTemplate.lit.js +9 -10
- package/dist/generated/templates/TabInOverflowTemplate.lit.js +1 -1
- package/dist/generated/templates/TabInStripTemplate.lit.js +1 -1
- package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +7 -0
- package/dist/generated/templates/TabSeparatorInStripTemplate.lit.js +7 -0
- package/dist/generated/templates/TableTemplate.lit.js +1 -1
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/TreeListItemTemplate.lit.js +2 -2
- package/dist/generated/templates/TreeTemplate.lit.js +1 -1
- package/dist/generated/themes/Badge.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/BrowserScrollbar.css.js +1 -1
- package/dist/generated/themes/BusyIndicator.css.js +1 -1
- package/dist/generated/themes/CardHeader.css.js +1 -1
- package/dist/generated/themes/CheckBox.css.js +1 -1
- package/dist/generated/themes/ComboBox.css.js +1 -1
- package/dist/generated/themes/CustomListItem.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/List.css.js +1 -1
- package/dist/generated/themes/MultiComboBox.css.js +1 -1
- package/dist/generated/themes/Panel.css.js +1 -1
- package/dist/generated/themes/Popover.css.js +1 -1
- package/dist/generated/themes/PopupsCommon.css.js +1 -1
- package/dist/generated/themes/RadioButton.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/Select.css.js +1 -1
- package/dist/generated/themes/SliderBase.css.js +1 -1
- package/dist/generated/themes/SplitButton.css.js +8 -0
- package/dist/generated/themes/TabContainer.css.js +1 -1
- package/dist/generated/themes/TabInOverflow.css.js +1 -1
- package/dist/generated/themes/TabInStrip.css.js +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js +8 -0
- package/dist/generated/themes/TabSeparatorInStrip.css.js +8 -0
- package/dist/generated/themes/Table.css.js +1 -1
- package/dist/generated/themes/TableColumn.css.js +1 -1
- package/dist/generated/themes/TextArea.css.js +1 -1
- package/dist/generated/themes/TimeSelection.css.js +1 -1
- package/dist/generated/themes/Token.css.js +1 -1
- 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_exp/parameters-bundle.css.js +1 -1
- package/dist/i18n/messagebundle.properties +26 -1
- package/dist/i18n/messagebundle_ar.properties +13 -1
- package/dist/i18n/messagebundle_bg.properties +13 -1
- package/dist/i18n/messagebundle_ca.properties +13 -1
- package/dist/i18n/messagebundle_cs.properties +13 -1
- package/dist/i18n/messagebundle_cy.properties +13 -1
- package/dist/i18n/messagebundle_da.properties +13 -1
- package/dist/i18n/messagebundle_de.properties +13 -1
- package/dist/i18n/messagebundle_el.properties +13 -1
- package/dist/i18n/messagebundle_en.properties +13 -1
- package/dist/i18n/messagebundle_en_GB.properties +13 -1
- package/dist/i18n/messagebundle_en_US_sappsd.properties +13 -1
- package/dist/i18n/messagebundle_en_US_saprigi.properties +13 -1
- package/dist/i18n/messagebundle_en_US_saptrc.properties +13 -1
- package/dist/i18n/messagebundle_es.properties +13 -1
- package/dist/i18n/messagebundle_es_MX.properties +13 -1
- package/dist/i18n/messagebundle_et.properties +13 -1
- package/dist/i18n/messagebundle_fi.properties +14 -2
- package/dist/i18n/messagebundle_fr.properties +13 -1
- package/dist/i18n/messagebundle_fr_CA.properties +13 -1
- package/dist/i18n/messagebundle_hi.properties +13 -1
- package/dist/i18n/messagebundle_hr.properties +13 -1
- package/dist/i18n/messagebundle_hu.properties +13 -1
- package/dist/i18n/messagebundle_id.properties +13 -1
- package/dist/i18n/messagebundle_it.properties +13 -1
- package/dist/i18n/messagebundle_iw.properties +13 -1
- package/dist/i18n/messagebundle_ja.properties +13 -1
- package/dist/i18n/messagebundle_kk.properties +13 -1
- package/dist/i18n/messagebundle_ko.properties +13 -1
- package/dist/i18n/messagebundle_lt.properties +13 -1
- package/dist/i18n/messagebundle_lv.properties +13 -1
- package/dist/i18n/messagebundle_ms.properties +13 -1
- package/dist/i18n/messagebundle_nl.properties +13 -1
- package/dist/i18n/messagebundle_no.properties +13 -1
- package/dist/i18n/messagebundle_pl.properties +13 -1
- package/dist/i18n/messagebundle_pt.properties +13 -1
- package/dist/i18n/messagebundle_pt_PT.properties +13 -1
- package/dist/i18n/messagebundle_ro.properties +13 -1
- package/dist/i18n/messagebundle_ru.properties +13 -1
- package/dist/i18n/messagebundle_sh.properties +13 -1
- package/dist/i18n/messagebundle_sk.properties +13 -1
- package/dist/i18n/messagebundle_sl.properties +13 -1
- package/dist/i18n/messagebundle_sv.properties +13 -1
- package/dist/i18n/messagebundle_th.properties +12 -0
- package/dist/i18n/messagebundle_tr.properties +13 -1
- package/dist/i18n/messagebundle_uk.properties +13 -1
- package/dist/i18n/messagebundle_vi.properties +13 -1
- package/dist/i18n/messagebundle_zh_CN.properties +13 -1
- package/dist/i18n/messagebundle_zh_TW.properties +12 -0
- package/dist/types/HasPopup.js +62 -0
- package/dist/types/TabsOverflowMode.js +40 -0
- package/package.json +8 -8
- package/src/Breadcrumbs.hbs +3 -2
- package/src/Breadcrumbs.js +8 -6
- package/src/BreadcrumbsItem.js +1 -1
- package/src/BreadcrumbsPopover.hbs +2 -2
- package/src/BusyIndicator.hbs +1 -1
- package/src/BusyIndicator.js +2 -3
- package/src/Button.hbs +1 -1
- package/src/Button.js +28 -1
- package/src/Calendar.js +7 -0
- package/src/CardHeader.hbs +12 -5
- package/src/Carousel.hbs +1 -0
- package/src/Carousel.js +9 -0
- package/src/CheckBox.hbs +1 -0
- package/src/CheckBox.js +34 -1
- package/src/ColorPalette.js +5 -4
- package/src/ColorPalettePopover.hbs +7 -5
- package/src/ColorPalettePopover.js +2 -0
- package/src/ComboBox.hbs +1 -0
- package/src/ComboBox.js +91 -23
- package/src/ComboBoxPopover.hbs +1 -0
- package/src/DateComponentBase.js +6 -8
- package/src/DatePicker.js +10 -2
- package/src/DateRangePicker.js +22 -0
- package/src/Dialog.hbs +1 -1
- package/src/Dialog.js +5 -22
- package/src/Icon.js +10 -8
- package/src/Input.hbs +1 -1
- package/src/Input.js +107 -15
- package/src/InputPopover.hbs +2 -3
- package/src/Link.hbs +2 -1
- package/src/Link.js +32 -14
- package/src/List.js +14 -4
- package/src/ListItem.hbs +1 -0
- package/src/MessageStrip.hbs +1 -1
- package/src/MessageStrip.js +39 -2
- package/src/MultiComboBox.js +7 -3
- package/src/MultiComboBoxItem.js +1 -1
- package/src/MultiComboBoxPopover.hbs +1 -1
- package/src/Option.js +12 -1
- package/src/Panel.hbs +1 -1
- package/src/Panel.js +9 -0
- package/src/Popover.js +106 -57
- package/src/Popup.js +16 -2
- package/src/PopupBlockLayer.hbs +1 -1
- package/src/RadioButton.js +15 -3
- package/src/RatingIndicator.js +37 -7
- package/src/ResponsivePopover.hbs +2 -0
- package/src/ResponsivePopover.js +1 -0
- package/src/SegmentedButton.hbs +1 -0
- package/src/SegmentedButton.js +14 -1
- package/src/Select.js +2 -1
- package/src/SelectPopover.hbs +2 -1
- package/src/SliderBase.hbs +1 -1
- package/src/SliderBase.js +4 -0
- package/src/SplitButton.hbs +53 -0
- package/src/SplitButton.js +421 -0
- package/src/Switch.hbs +1 -0
- package/src/Switch.js +18 -0
- package/src/Tab.js +10 -6
- package/src/TabContainer.hbs +48 -58
- package/src/TabContainer.js +480 -108
- package/src/TabContainerPopover.hbs +9 -6
- package/src/TabInOverflow.hbs +0 -1
- package/src/TabInStrip.hbs +3 -8
- package/src/TabSeparator.js +42 -3
- package/src/TabSeparatorInOverflow.hbs +8 -0
- package/src/TabSeparatorInStrip.hbs +6 -0
- package/src/Table.hbs +1 -1
- package/src/Table.js +15 -5
- package/src/TextArea.js +9 -3
- package/src/TextAreaPopover.hbs +1 -1
- package/src/ToggleButton.js +5 -0
- package/src/Tokenizer.js +10 -3
- package/src/Tree.hbs +1 -0
- package/src/TreeItem.js +21 -0
- package/src/TreeListItem.js +8 -0
- package/src/features/InputSuggestions.js +88 -15
- package/src/i18n/messagebundle.properties +26 -1
- package/src/i18n/messagebundle_ar.properties +13 -1
- package/src/i18n/messagebundle_bg.properties +13 -1
- package/src/i18n/messagebundle_ca.properties +13 -1
- package/src/i18n/messagebundle_cs.properties +13 -1
- package/src/i18n/messagebundle_cy.properties +13 -1
- package/src/i18n/messagebundle_da.properties +13 -1
- package/src/i18n/messagebundle_de.properties +13 -1
- package/src/i18n/messagebundle_el.properties +13 -1
- package/src/i18n/messagebundle_en.properties +13 -1
- package/src/i18n/messagebundle_en_GB.properties +13 -1
- package/src/i18n/messagebundle_en_US_sappsd.properties +13 -1
- package/src/i18n/messagebundle_en_US_saprigi.properties +13 -1
- package/src/i18n/messagebundle_en_US_saptrc.properties +13 -1
- package/src/i18n/messagebundle_es.properties +13 -1
- package/src/i18n/messagebundle_es_MX.properties +13 -1
- package/src/i18n/messagebundle_et.properties +13 -1
- package/src/i18n/messagebundle_fi.properties +14 -2
- package/src/i18n/messagebundle_fr.properties +13 -1
- package/src/i18n/messagebundle_fr_CA.properties +13 -1
- package/src/i18n/messagebundle_hi.properties +13 -1
- package/src/i18n/messagebundle_hr.properties +13 -1
- package/src/i18n/messagebundle_hu.properties +13 -1
- package/src/i18n/messagebundle_id.properties +13 -1
- package/src/i18n/messagebundle_it.properties +13 -1
- package/src/i18n/messagebundle_iw.properties +13 -1
- package/src/i18n/messagebundle_ja.properties +13 -1
- package/src/i18n/messagebundle_kk.properties +13 -1
- package/src/i18n/messagebundle_ko.properties +13 -1
- package/src/i18n/messagebundle_lt.properties +13 -1
- package/src/i18n/messagebundle_lv.properties +13 -1
- package/src/i18n/messagebundle_ms.properties +13 -1
- package/src/i18n/messagebundle_nl.properties +13 -1
- package/src/i18n/messagebundle_no.properties +13 -1
- package/src/i18n/messagebundle_pl.properties +13 -1
- package/src/i18n/messagebundle_pt.properties +13 -1
- package/src/i18n/messagebundle_pt_PT.properties +13 -1
- package/src/i18n/messagebundle_ro.properties +13 -1
- package/src/i18n/messagebundle_ru.properties +13 -1
- package/src/i18n/messagebundle_sh.properties +13 -1
- package/src/i18n/messagebundle_sk.properties +13 -1
- package/src/i18n/messagebundle_sl.properties +13 -1
- package/src/i18n/messagebundle_sv.properties +13 -1
- package/src/i18n/messagebundle_th.properties +12 -0
- package/src/i18n/messagebundle_tr.properties +13 -1
- package/src/i18n/messagebundle_uk.properties +13 -1
- package/src/i18n/messagebundle_vi.properties +13 -1
- package/src/i18n/messagebundle_zh_CN.properties +13 -1
- package/src/i18n/messagebundle_zh_TW.properties +12 -0
- package/src/themes/Badge.css +3 -1
- package/src/themes/Breadcrumbs.css +100 -99
- package/src/themes/BrowserScrollbar.css +2 -0
- package/src/themes/BusyIndicator.css +3 -3
- package/src/themes/CardHeader.css +7 -3
- package/src/themes/CheckBox.css +15 -7
- package/src/themes/CustomListItem.css +2 -1
- package/src/themes/Dialog.css +1 -0
- package/src/themes/Input.css +14 -0
- package/src/themes/List.css +1 -0
- package/src/themes/Panel.css +4 -0
- package/src/themes/Popover.css +4 -0
- package/src/themes/PopupsCommon.css +0 -1
- package/src/themes/RadioButton.css +4 -3
- package/src/themes/RatingIndicator.css +0 -1
- package/src/themes/SliderBase.css +3 -2
- package/src/themes/SplitButton.css +98 -0
- package/src/themes/TabContainer.css +17 -53
- package/src/themes/TabInOverflow.css +25 -21
- package/src/themes/TabInStrip.css +124 -100
- package/src/themes/TabSeparatorInOverflow.css +8 -0
- package/src/themes/TabSeparatorInStrip.css +5 -0
- package/src/themes/Table.css +1 -1
- package/src/themes/TableColumn.css +0 -1
- package/src/themes/TextArea.css +9 -1
- package/src/themes/TimeSelection.css +4 -0
- package/src/themes/Token.css +2 -1
- package/src/themes/Tokenizer.css +1 -1
- package/src/themes/ValueStateMessage.css +3 -3
- package/src/themes/base/BrowserScrollbar-parameters.css +4 -0
- package/src/themes/base/Card-parameters.css +1 -1
- package/src/themes/base/Input-parameters.css +5 -0
- package/src/themes/base/TabContainer-parameters.css +1 -1
- package/src/themes/base/TextArea-parameters.css +1 -0
- package/src/themes/base/Token-parameters.css +1 -0
- package/src/themes/base/sizes-parameters.css +2 -2
- package/src/themes/sap_belize/BrowserScrollbar-parameters.css +4 -0
- package/src/themes/sap_belize/Table-parameters.css +3 -0
- package/src/themes/sap_belize/parameters-bundle.css +1 -0
- package/src/themes/sap_belize_hcb/BrowserScrollbar-parameters.css +4 -0
- package/src/themes/sap_belize_hcb/Input-parameters.css +1 -0
- package/src/themes/sap_belize_hcb/Table-parameters.css +1 -0
- package/src/themes/sap_belize_hcb/Token-parameters.css +1 -0
- package/src/themes/sap_belize_hcb/parameters-bundle.css +1 -0
- package/src/themes/sap_belize_hcw/BrowserScrollbar-parameters.css +4 -0
- package/src/themes/sap_belize_hcw/Input-parameters.css +1 -0
- package/src/themes/sap_belize_hcw/Table-parameters.css +1 -0
- package/src/themes/sap_belize_hcw/Token-parameters.css +1 -0
- package/src/themes/sap_belize_hcw/parameters-bundle.css +1 -0
- package/src/themes/sap_fiori_3/TabContainer-parameters.css +1 -1
- package/src/themes/sap_fiori_3/parameters-bundle.css +1 -0
- package/src/themes/sap_fiori_3_dark/parameters-bundle.css +1 -0
- package/src/themes/sap_fiori_3_hcb/Input-parameters.css +7 -0
- package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +2 -0
- package/src/themes/sap_fiori_3_hcb/Token-parameters.css +2 -1
- package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +1 -0
- package/src/themes/sap_fiori_3_hcw/Input-parameters.css +7 -0
- package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +2 -0
- package/src/themes/sap_fiori_3_hcw/Token-parameters.css +2 -1
- package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon/Card-parameters.css +0 -1
- package/src/themes/sap_horizon/Table-parameters.css +1 -0
- package/src/themes/sap_horizon/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon_exp/parameters-bundle.css +1 -0
- package/src/types/HasPopup.js +62 -0
- package/src/types/TabsOverflowMode.js +40 -0
- package/csp.js +0 -7
- package/dist/generated/templates/TabSeparatorTemplate.lit.js +0 -7
- package/src/TabSeparator.hbs +0 -1
package/src/DateRangePicker.js
CHANGED
|
@@ -84,6 +84,28 @@ class DateRangePicker extends DatePicker {
|
|
|
84
84
|
return [DatePicker.styles, DateRangePickerCss];
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
+
/**
|
|
88
|
+
* <b>Note:</b> The getter method is inherited and not supported. If called it will return an empty value.
|
|
89
|
+
*
|
|
90
|
+
* @readonly
|
|
91
|
+
* @type { Date }
|
|
92
|
+
* @public
|
|
93
|
+
*/
|
|
94
|
+
get dateValue() {
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* <b>Note:</b> The getter method is inherited and not supported. If called it will return an empty value.
|
|
100
|
+
*
|
|
101
|
+
* @readonly
|
|
102
|
+
* @type { Date }
|
|
103
|
+
* @public
|
|
104
|
+
*/
|
|
105
|
+
get dateValueUTC() {
|
|
106
|
+
return null;
|
|
107
|
+
}
|
|
108
|
+
|
|
87
109
|
get _startDateTimestamp() {
|
|
88
110
|
return this._extractFirstTimestamp(this.value);
|
|
89
111
|
}
|
package/src/Dialog.hbs
CHANGED
package/src/Dialog.js
CHANGED
|
@@ -66,17 +66,6 @@ const metadata = {
|
|
|
66
66
|
type: String,
|
|
67
67
|
},
|
|
68
68
|
|
|
69
|
-
/**
|
|
70
|
-
* Sets the accessible aria name of the component.
|
|
71
|
-
*
|
|
72
|
-
* @type {string}
|
|
73
|
-
* @defaultvalue ""
|
|
74
|
-
* @public
|
|
75
|
-
*/
|
|
76
|
-
accessibleName: {
|
|
77
|
-
type: String,
|
|
78
|
-
},
|
|
79
|
-
|
|
80
69
|
/**
|
|
81
70
|
* Determines whether the component should be stretched to fullscreen.
|
|
82
71
|
* <br><br>
|
|
@@ -237,23 +226,13 @@ class Dialog extends Popup {
|
|
|
237
226
|
get _ariaLabelledBy() { // Required by Popup.js
|
|
238
227
|
let ariaLabelledById;
|
|
239
228
|
|
|
240
|
-
if (this.headerText !== "" && !this.
|
|
229
|
+
if (this.headerText !== "" && !this._ariaLabel) {
|
|
241
230
|
ariaLabelledById = "ui5-popup-header-text";
|
|
242
231
|
}
|
|
243
232
|
|
|
244
233
|
return ariaLabelledById;
|
|
245
234
|
}
|
|
246
235
|
|
|
247
|
-
get _ariaLabel() {
|
|
248
|
-
let ariaLabel;
|
|
249
|
-
|
|
250
|
-
if (this.header.length > 0 && !!this.accessibleName) {
|
|
251
|
-
ariaLabel = this.accessibleName;
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
return this.accessibleName ? this.accessibleName : ariaLabel;
|
|
255
|
-
}
|
|
256
|
-
|
|
257
236
|
get _ariaModal() { // Required by Popup.js
|
|
258
237
|
return true;
|
|
259
238
|
}
|
|
@@ -277,6 +256,10 @@ class Dialog extends Popup {
|
|
|
277
256
|
return this._movable ? "0" : undefined;
|
|
278
257
|
}
|
|
279
258
|
|
|
259
|
+
get _showResizeHandle() {
|
|
260
|
+
return this.resizable && this.onDesktop;
|
|
261
|
+
}
|
|
262
|
+
|
|
280
263
|
_show() {
|
|
281
264
|
super._show();
|
|
282
265
|
this._center();
|
package/src/Icon.js
CHANGED
|
@@ -89,10 +89,10 @@ const metadata = {
|
|
|
89
89
|
/**
|
|
90
90
|
* Defines the accessibility role of the component.
|
|
91
91
|
* @defaultvalue ""
|
|
92
|
-
* @
|
|
93
|
-
* @since 1.
|
|
92
|
+
* @public
|
|
93
|
+
* @since 1.1.0
|
|
94
94
|
*/
|
|
95
|
-
|
|
95
|
+
accessibleRole: {
|
|
96
96
|
type: String,
|
|
97
97
|
},
|
|
98
98
|
|
|
@@ -219,13 +219,13 @@ class Icon extends UI5Element {
|
|
|
219
219
|
this.createGlobalStyle(); // hide all icons until the first icon has rendered (and added the Icon.css)
|
|
220
220
|
}
|
|
221
221
|
|
|
222
|
-
|
|
222
|
+
_onFocusInHandler(event) {
|
|
223
223
|
if (this.interactive) {
|
|
224
224
|
this.focused = true;
|
|
225
225
|
}
|
|
226
226
|
}
|
|
227
227
|
|
|
228
|
-
|
|
228
|
+
_onFocusOutHandler(event) {
|
|
229
229
|
this.focused = false;
|
|
230
230
|
}
|
|
231
231
|
|
|
@@ -280,7 +280,7 @@ class Icon extends UI5Element {
|
|
|
280
280
|
}
|
|
281
281
|
|
|
282
282
|
get tabIndex() {
|
|
283
|
-
return this.interactive ? "0" :
|
|
283
|
+
return this.interactive ? "0" : undefined;
|
|
284
284
|
}
|
|
285
285
|
|
|
286
286
|
get isDecorative() {
|
|
@@ -288,8 +288,8 @@ class Icon extends UI5Element {
|
|
|
288
288
|
}
|
|
289
289
|
|
|
290
290
|
get effectiveAccessibleRole() {
|
|
291
|
-
if (this.
|
|
292
|
-
return this.
|
|
291
|
+
if (this.accessibleRole) {
|
|
292
|
+
return this.accessibleRole;
|
|
293
293
|
}
|
|
294
294
|
|
|
295
295
|
if (this.interactive) {
|
|
@@ -348,6 +348,8 @@ class Icon extends UI5Element {
|
|
|
348
348
|
this.packageName = iconData.packageName;
|
|
349
349
|
|
|
350
350
|
this._onclick = this.interactive ? this._onClickHandler.bind(this) : undefined;
|
|
351
|
+
this._onfocusout = this.interactive ? this._onFocusOutHandler.bind(this) : undefined;
|
|
352
|
+
this._onfocusin = this.interactive ? this._onFocusInHandler.bind(this) : undefined;
|
|
351
353
|
|
|
352
354
|
if (this.accessibleName) {
|
|
353
355
|
this.effectiveAccessibleName = this.accessibleName;
|
package/src/Input.hbs
CHANGED
package/src/Input.js
CHANGED
|
@@ -10,8 +10,13 @@ import {
|
|
|
10
10
|
isSpace,
|
|
11
11
|
isEnter,
|
|
12
12
|
isBackSpace,
|
|
13
|
+
isDelete,
|
|
13
14
|
isEscape,
|
|
14
15
|
isTabNext,
|
|
16
|
+
isPageUp,
|
|
17
|
+
isPageDown,
|
|
18
|
+
isHome,
|
|
19
|
+
isEnd,
|
|
15
20
|
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
16
21
|
import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
17
22
|
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
@@ -460,6 +465,22 @@ const metadata = {
|
|
|
460
465
|
* "@ui5/webcomponents/dist/features/InputSuggestions.js"
|
|
461
466
|
* to enable the suggestions functionality.
|
|
462
467
|
*
|
|
468
|
+
* <h3>Keyboard Handling</h3>
|
|
469
|
+
* The <code>ui5-input</code> provides the following keyboard shortcuts:
|
|
470
|
+
* <br>
|
|
471
|
+
*
|
|
472
|
+
* <ul>
|
|
473
|
+
* <li>[F4], [ALT]+[UP], or [ALT]+[DOWN] - Opens value help if available, same as clicking the value help icon. (Does not open suggestion list.)</li>
|
|
474
|
+
* <li>[ESC] - Closes the suggestion list, if open. If closed or not enabled, cancels changes and reverts to the value which the Input field had when it got the focus.</li>
|
|
475
|
+
* <li>[ENTER] or [RETURN] - If suggestion list is open takes over the current matching item and closes it. If value state or group header is focused, does nothing.</li>
|
|
476
|
+
* <li>[DOWN] - Focuses the next matching item in the suggestion list.</li>
|
|
477
|
+
* <li>[UP] - Focuses the previous matching item in the suggestion list.</li>
|
|
478
|
+
* <li>[HOME] - If focus is in the text input, moves caret before the first character. If focus is in the list, highlights the first item and updates the input accordingly.</li>
|
|
479
|
+
* <li>[END] - If focus is in the text input, moves caret after the last character. If focus is in the list, highlights the last item and updates the input accordingly.</li>
|
|
480
|
+
* <li>[PAGEUP] - If focus is in the list, moves highlight up by page size (10 items by default). If focus is in the input, does nothing.</li>
|
|
481
|
+
* <li>[PAGEDOWN] - If focus is in the list, moves highlight down by page size (10 items by default). If focus is in the input, does nothing.</li>
|
|
482
|
+
* </ul>
|
|
483
|
+
*
|
|
463
484
|
* <h3>ES6 Module Import</h3>
|
|
464
485
|
*
|
|
465
486
|
* <code>import "@ui5/webcomponents/dist/Input.js";</code>
|
|
@@ -520,7 +541,7 @@ class Input extends UI5Element {
|
|
|
520
541
|
this.suggestionSelectionCanceled = false;
|
|
521
542
|
|
|
522
543
|
// Indicates if the change event has already been fired
|
|
523
|
-
this.
|
|
544
|
+
this._changeFiredValue = null;
|
|
524
545
|
|
|
525
546
|
// tracks the value between focus in and focus out to detect that change event should be fired.
|
|
526
547
|
this.previousValue = undefined;
|
|
@@ -614,6 +635,22 @@ class Input extends UI5Element {
|
|
|
614
635
|
return this._handleEnter(event);
|
|
615
636
|
}
|
|
616
637
|
|
|
638
|
+
if (isPageUp(event)) {
|
|
639
|
+
return this._handlePageUp(event);
|
|
640
|
+
}
|
|
641
|
+
|
|
642
|
+
if (isPageDown(event)) {
|
|
643
|
+
return this._handlePageDown(event);
|
|
644
|
+
}
|
|
645
|
+
|
|
646
|
+
if (isHome(event)) {
|
|
647
|
+
return this._handleHome(event);
|
|
648
|
+
}
|
|
649
|
+
|
|
650
|
+
if (isEnd(event)) {
|
|
651
|
+
return this._handleEnd(event);
|
|
652
|
+
}
|
|
653
|
+
|
|
617
654
|
if (isEscape(event)) {
|
|
618
655
|
return this._handleEscape(event);
|
|
619
656
|
}
|
|
@@ -631,6 +668,11 @@ class Input extends UI5Element {
|
|
|
631
668
|
}
|
|
632
669
|
|
|
633
670
|
_onkeyup(event) {
|
|
671
|
+
// The native Delete event does not update the value property "on time". So, the (native) change event is always fired with the old value
|
|
672
|
+
if (isDelete(event)) {
|
|
673
|
+
this.value = event.target.value;
|
|
674
|
+
}
|
|
675
|
+
|
|
634
676
|
this._keyDown = false;
|
|
635
677
|
this._backspaceKeyDown = false;
|
|
636
678
|
}
|
|
@@ -672,6 +714,34 @@ class Input extends UI5Element {
|
|
|
672
714
|
this.focused = true;
|
|
673
715
|
}
|
|
674
716
|
|
|
717
|
+
_handlePageUp(event) {
|
|
718
|
+
if (this._isSuggestionsFocused) {
|
|
719
|
+
this.Suggestions.onPageUp(event);
|
|
720
|
+
} else {
|
|
721
|
+
event.preventDefault();
|
|
722
|
+
}
|
|
723
|
+
}
|
|
724
|
+
|
|
725
|
+
_handlePageDown(event) {
|
|
726
|
+
if (this._isSuggestionsFocused) {
|
|
727
|
+
this.Suggestions.onPageDown(event);
|
|
728
|
+
} else {
|
|
729
|
+
event.preventDefault();
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
|
|
733
|
+
_handleHome(event) {
|
|
734
|
+
if (this._isSuggestionsFocused) {
|
|
735
|
+
this.Suggestions.onHome(event);
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
|
|
739
|
+
_handleEnd(event) {
|
|
740
|
+
if (this._isSuggestionsFocused) {
|
|
741
|
+
this.Suggestions.onEnd(event);
|
|
742
|
+
}
|
|
743
|
+
}
|
|
744
|
+
|
|
675
745
|
_handleEscape() {
|
|
676
746
|
const hasSuggestions = this.showSuggestions && !!this.Suggestions;
|
|
677
747
|
const isOpen = hasSuggestions && this.open;
|
|
@@ -715,7 +785,7 @@ class Input extends UI5Element {
|
|
|
715
785
|
|
|
716
786
|
// if focusout is triggered by pressing on suggestion item or value state message popover, skip invalidation, because re-rendering
|
|
717
787
|
// will happen before "itemPress" event, which will make item "active" state not visualized
|
|
718
|
-
if (focusedOutToSuggestions
|
|
788
|
+
if (focusedOutToSuggestions || focusedOutToValueStateMessage) {
|
|
719
789
|
event.stopImmediatePropagation();
|
|
720
790
|
return;
|
|
721
791
|
}
|
|
@@ -754,13 +824,18 @@ class Input extends UI5Element {
|
|
|
754
824
|
}
|
|
755
825
|
}
|
|
756
826
|
|
|
757
|
-
|
|
758
|
-
|
|
827
|
+
_handleNativeInputChange() {
|
|
828
|
+
// The native change sometimes fires too early and getting input's value in the listener would return
|
|
829
|
+
// the previous value instead of the most recent one. This would make things consistent.
|
|
830
|
+
clearTimeout(this._nativeChangeDebounce);
|
|
831
|
+
this._nativeChangeDebounce = setTimeout(() => this._handleChange(), 100);
|
|
832
|
+
}
|
|
833
|
+
|
|
834
|
+
_handleChange() {
|
|
835
|
+
if (this._changeFiredValue !== this.value) {
|
|
836
|
+
this._changeFiredValue = this.value;
|
|
759
837
|
this.fireEvent(this.EVENT_CHANGE);
|
|
760
838
|
}
|
|
761
|
-
|
|
762
|
-
// Set event as no longer marked
|
|
763
|
-
this._changeFired = false;
|
|
764
839
|
}
|
|
765
840
|
|
|
766
841
|
_scroll(event) {
|
|
@@ -771,8 +846,8 @@ class Input extends UI5Element {
|
|
|
771
846
|
});
|
|
772
847
|
}
|
|
773
848
|
|
|
774
|
-
|
|
775
|
-
const inputDomRef =
|
|
849
|
+
_handleInput(event) {
|
|
850
|
+
const inputDomRef = this.getInputDOMRefSync();
|
|
776
851
|
const emptyValueFiredOnNumberInput = this.value && this.isTypeNumber && !inputDomRef.value;
|
|
777
852
|
|
|
778
853
|
this.suggestionSelectionCanceled = false;
|
|
@@ -921,10 +996,7 @@ class Input extends UI5Element {
|
|
|
921
996
|
this.valueBeforeItemSelection = itemText;
|
|
922
997
|
this.lastConfirmedValue = itemText;
|
|
923
998
|
this.fireEvent(this.EVENT_INPUT);
|
|
924
|
-
this.
|
|
925
|
-
|
|
926
|
-
// Mark the change event to avoid double firing
|
|
927
|
-
this._changeFired = true;
|
|
999
|
+
this._handleChange();
|
|
928
1000
|
}
|
|
929
1001
|
|
|
930
1002
|
this.valueBeforeItemPreview = "";
|
|
@@ -999,7 +1071,7 @@ class Input extends UI5Element {
|
|
|
999
1071
|
// In IE, pressing the ENTER does not fire change
|
|
1000
1072
|
const valueChanged = (this.previousValue !== undefined) && (this.previousValue !== this.value);
|
|
1001
1073
|
if (isIE() && action === this.ACTION_ENTER && valueChanged) {
|
|
1002
|
-
this.
|
|
1074
|
+
this._handleChange();
|
|
1003
1075
|
}
|
|
1004
1076
|
}
|
|
1005
1077
|
|
|
@@ -1021,6 +1093,14 @@ class Input extends UI5Element {
|
|
|
1021
1093
|
return this.nativeInput;
|
|
1022
1094
|
}
|
|
1023
1095
|
|
|
1096
|
+
getInputDOMRefSync() {
|
|
1097
|
+
if (isPhone() && this.Suggestions) {
|
|
1098
|
+
return this.Suggestions && this.Suggestions.responsivePopover.querySelector(".ui5-input-inner-phone");
|
|
1099
|
+
}
|
|
1100
|
+
|
|
1101
|
+
return this.nativeInput;
|
|
1102
|
+
}
|
|
1103
|
+
|
|
1024
1104
|
/**
|
|
1025
1105
|
* Returns a reference to the native input element
|
|
1026
1106
|
* @protected
|
|
@@ -1081,6 +1161,10 @@ class Input extends UI5Element {
|
|
|
1081
1161
|
});
|
|
1082
1162
|
}
|
|
1083
1163
|
|
|
1164
|
+
onItemMouseDown(event) {
|
|
1165
|
+
event.preventDefault();
|
|
1166
|
+
}
|
|
1167
|
+
|
|
1084
1168
|
onItemSelected(item, keyboardUsed) {
|
|
1085
1169
|
this.selectSuggestion(item, keyboardUsed);
|
|
1086
1170
|
}
|
|
@@ -1236,7 +1320,7 @@ class Input extends UI5Element {
|
|
|
1236
1320
|
}
|
|
1237
1321
|
|
|
1238
1322
|
get shouldDisplayOnlyValueStateMessage() {
|
|
1239
|
-
return this.hasValueStateMessage && !this.open && this.focused;
|
|
1323
|
+
return this.hasValueStateMessage && !this.readonly && !this.open && this.focused;
|
|
1240
1324
|
}
|
|
1241
1325
|
|
|
1242
1326
|
get shouldDisplayDefaultValueStateMessage() {
|
|
@@ -1286,6 +1370,10 @@ class Input extends UI5Element {
|
|
|
1286
1370
|
return isPhone();
|
|
1287
1371
|
}
|
|
1288
1372
|
|
|
1373
|
+
get _isSuggestionsFocused() {
|
|
1374
|
+
return !this.focused && this.Suggestions && this.Suggestions.isOpened();
|
|
1375
|
+
}
|
|
1376
|
+
|
|
1289
1377
|
/**
|
|
1290
1378
|
* Returns the placeholder value.
|
|
1291
1379
|
* @protected
|
|
@@ -1314,6 +1402,10 @@ class Input extends UI5Element {
|
|
|
1314
1402
|
return this.valueState !== ValueState.None ? result : "";
|
|
1315
1403
|
}
|
|
1316
1404
|
|
|
1405
|
+
get _valueStatePopoverHorizontalAlign() {
|
|
1406
|
+
return this.effectiveDir !== "rtl" ? "Left" : "Right";
|
|
1407
|
+
}
|
|
1408
|
+
|
|
1317
1409
|
/**
|
|
1318
1410
|
* This method is relevant for sap_horizon theme only
|
|
1319
1411
|
*/
|
package/src/InputPopover.hbs
CHANGED
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
hide-arrow
|
|
74
74
|
class="ui5-valuestatemessage-popover"
|
|
75
75
|
placement-type="Bottom"
|
|
76
|
-
horizontal-align="
|
|
76
|
+
horizontal-align="{{_valueStatePopoverHorizontalAlign}}"
|
|
77
77
|
>
|
|
78
78
|
<div slot="header" class="{{classes.popoverValueState}}" style="{{styles.popoverHeader}}">
|
|
79
79
|
<ui5-icon class="ui5-input-value-state-message-icon" name="{{_valueStateMessageInputIcon}}"></ui5-icon>
|
|
@@ -93,7 +93,7 @@
|
|
|
93
93
|
{{/inline}}
|
|
94
94
|
|
|
95
95
|
{{#*inline "suggestionsList"}}
|
|
96
|
-
<ui5-list separators="{{suggestionSeparators}}">
|
|
96
|
+
<ui5-list separators="{{suggestionSeparators}}" @mousedown="{{onItemMouseDown}}" mode="SingleSelect">
|
|
97
97
|
{{#each suggestionsTexts}}
|
|
98
98
|
{{#if groupItem}}
|
|
99
99
|
<ui5-li-groupheader data-ui5-key="{{key}}">{{{ this.text }}}</ui5-li-groupheader>
|
|
@@ -104,7 +104,6 @@
|
|
|
104
104
|
additional-text="{{this.additionalText}}"
|
|
105
105
|
type="{{this.type}}"
|
|
106
106
|
additional-text-state="{{this.additionalTextState}}"
|
|
107
|
-
@ui5-_item-press="{{ fnOnSuggestionItemPress }}"
|
|
108
107
|
data-ui5-key="{{key}}"
|
|
109
108
|
>
|
|
110
109
|
{{{ this.text }}}
|
package/src/Link.hbs
CHANGED
|
@@ -7,7 +7,8 @@
|
|
|
7
7
|
tabindex="{{tabIndex}}"
|
|
8
8
|
?disabled="{{disabled}}"
|
|
9
9
|
aria-label="{{ariaLabelText}}"
|
|
10
|
-
aria-haspopup="{{
|
|
10
|
+
aria-haspopup="{{accessibilityAttributes.hasPopup}}"
|
|
11
|
+
aria-expanded="{{accessibilityAttributes.expanded}}"
|
|
11
12
|
@focusin={{_onfocusin}}
|
|
12
13
|
@focusout={{_onfocusout}}
|
|
13
14
|
@click={{_onclick}}
|
package/src/Link.js
CHANGED
|
@@ -116,26 +116,44 @@ const metadata = {
|
|
|
116
116
|
},
|
|
117
117
|
|
|
118
118
|
/**
|
|
119
|
-
* Defines the
|
|
120
|
-
*
|
|
121
|
-
* @type String
|
|
122
|
-
* @defaultvalue undefined
|
|
119
|
+
* Defines the ARIA role of the component.
|
|
120
|
+
* @defaultvalue ""
|
|
123
121
|
* @private
|
|
124
122
|
* @since 1.0.0-rc.15
|
|
125
123
|
*/
|
|
126
|
-
|
|
124
|
+
accessibleRole: {
|
|
127
125
|
type: String,
|
|
128
|
-
defaultValue: undefined,
|
|
129
126
|
},
|
|
130
127
|
|
|
131
128
|
/**
|
|
132
|
-
*
|
|
133
|
-
*
|
|
134
|
-
*
|
|
135
|
-
*
|
|
129
|
+
* An object of strings that defines several additional accessibility attribute values
|
|
130
|
+
* for customization depending on the use case.
|
|
131
|
+
*
|
|
132
|
+
* It supports the following fields:
|
|
133
|
+
*
|
|
134
|
+
* <ul>
|
|
135
|
+
* <li><code>expanded</code>: Indicates whether the anchor element, or another grouping element it controls, is currently expanded or collapsed. Accepts the following string values:
|
|
136
|
+
* <ul>
|
|
137
|
+
* <li><code>true</code></li>
|
|
138
|
+
* <li><code>false</code></li>
|
|
139
|
+
* <ul>
|
|
140
|
+
* </li>
|
|
141
|
+
* <li><code>hasPopup</code>: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the anchor element. Accepts the following string values:
|
|
142
|
+
* <ul>
|
|
143
|
+
* <li><code>Dialog</code></li>
|
|
144
|
+
* <li><code>Grid</code></li>
|
|
145
|
+
* <li><code>ListBox</code></li>
|
|
146
|
+
* <li><code>Menu</code></li>
|
|
147
|
+
* <li><code>Tree</code></li>
|
|
148
|
+
* </ul>
|
|
149
|
+
* </li>
|
|
150
|
+
* </ul>
|
|
151
|
+
* @type {object}
|
|
152
|
+
* @public
|
|
153
|
+
* @since 1.1.0
|
|
136
154
|
*/
|
|
137
|
-
|
|
138
|
-
type:
|
|
155
|
+
accessibilityAttributes: {
|
|
156
|
+
type: Object,
|
|
139
157
|
},
|
|
140
158
|
|
|
141
159
|
_rel: {
|
|
@@ -246,11 +264,11 @@ class Link extends UI5Element {
|
|
|
246
264
|
}
|
|
247
265
|
|
|
248
266
|
onBeforeRendering() {
|
|
249
|
-
const needsNoReferrer = this.target
|
|
267
|
+
const needsNoReferrer = this.target !== "_self"
|
|
250
268
|
&& this.href
|
|
251
269
|
&& this._isCrossOrigin();
|
|
252
270
|
|
|
253
|
-
this._rel = needsNoReferrer ? "noreferrer" : undefined;
|
|
271
|
+
this._rel = needsNoReferrer ? "noreferrer noopener" : undefined;
|
|
254
272
|
}
|
|
255
273
|
|
|
256
274
|
_isCrossOrigin() {
|
package/src/List.js
CHANGED
|
@@ -40,6 +40,7 @@ const PAGE_UP_DOWN_SIZE = 10;
|
|
|
40
40
|
const metadata = {
|
|
41
41
|
tag: "ui5-list",
|
|
42
42
|
managedSlots: true,
|
|
43
|
+
fastNavigation: true,
|
|
43
44
|
slots: /** @lends sap.ui.webcomponents.main.List.prototype */ {
|
|
44
45
|
|
|
45
46
|
/**
|
|
@@ -168,7 +169,7 @@ const metadata = {
|
|
|
168
169
|
* <code>None</code> (default) - The growing is off.
|
|
169
170
|
* <br><br>
|
|
170
171
|
*
|
|
171
|
-
* <b>
|
|
172
|
+
* <b>Restrictions:</b> <code>growing="Scroll"</code> is not supported for Internet Explorer,
|
|
172
173
|
* on IE the component will fallback to <code>growing="Button"</code>.
|
|
173
174
|
* @type {ListGrowingMode}
|
|
174
175
|
* @defaultvalue "None"
|
|
@@ -265,6 +266,7 @@ const metadata = {
|
|
|
265
266
|
* is set to <code>Inactive</code>.
|
|
266
267
|
*
|
|
267
268
|
* @event sap.ui.webcomponents.main.List#item-click
|
|
269
|
+
* @allowPreventDefault
|
|
268
270
|
* @param {HTMLElement} item The clicked item.
|
|
269
271
|
* @public
|
|
270
272
|
*/
|
|
@@ -376,6 +378,8 @@ const metadata = {
|
|
|
376
378
|
*
|
|
377
379
|
* <br><br>
|
|
378
380
|
* <h3>Keyboard Handling</h3>
|
|
381
|
+
*
|
|
382
|
+
* <h4>Basic Navigation</h4
|
|
379
383
|
* The <code>ui5-list</code> provides advanced keyboard handling.
|
|
380
384
|
* When a list is focused the user can use the following keyboard
|
|
381
385
|
* shortcuts in order to perform a navigation:
|
|
@@ -393,6 +397,11 @@ const metadata = {
|
|
|
393
397
|
* <li>[SPACE] - Select an item (if <code>type</code> is 'Active') when <code>mode</code> is selection</li>
|
|
394
398
|
* <li>[DELETE] - Delete an item if <code>mode</code> property is <code>Delete</code></li>
|
|
395
399
|
* </ul>
|
|
400
|
+
*
|
|
401
|
+
* <h4>Fast Navigation</h4>
|
|
402
|
+
* This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.
|
|
403
|
+
* In order to use this functionality, you need to import the following module:
|
|
404
|
+
* <code>import "@ui5/webcomponents-base/dist/features/F6Navigation.js"</code>
|
|
396
405
|
* <br><br>
|
|
397
406
|
*
|
|
398
407
|
* <h3>ES6 Module Import</h3>
|
|
@@ -882,6 +891,10 @@ class List extends UI5Element {
|
|
|
882
891
|
onItemPress(event) {
|
|
883
892
|
const pressedItem = event.detail.item;
|
|
884
893
|
|
|
894
|
+
if (!this.fireEvent("item-click", { item: pressedItem }, true)) {
|
|
895
|
+
return;
|
|
896
|
+
}
|
|
897
|
+
|
|
885
898
|
if (!this._selectionRequested && this.mode !== ListMode.Delete) {
|
|
886
899
|
this._selectionRequested = true;
|
|
887
900
|
this.onSelectionRequested({
|
|
@@ -894,9 +907,6 @@ class List extends UI5Element {
|
|
|
894
907
|
});
|
|
895
908
|
}
|
|
896
909
|
|
|
897
|
-
this.fireEvent("item-press", { item: pressedItem });
|
|
898
|
-
this.fireEvent("item-click", { item: pressedItem });
|
|
899
|
-
|
|
900
910
|
this._selectionRequested = false;
|
|
901
911
|
}
|
|
902
912
|
|
package/src/ListItem.hbs
CHANGED
package/src/MessageStrip.hbs
CHANGED
package/src/MessageStrip.js
CHANGED
|
@@ -10,7 +10,14 @@ import MessageStripDesign from "./types/MessageStripDesign.js";
|
|
|
10
10
|
import MessageStripTemplate from "./generated/templates/MessageStripTemplate.lit.js";
|
|
11
11
|
import Icon from "./Icon.js";
|
|
12
12
|
import Button from "./Button.js";
|
|
13
|
-
import {
|
|
13
|
+
import {
|
|
14
|
+
MESSAGE_STRIP_CLOSE_BUTTON,
|
|
15
|
+
MESSAGE_STRIP_CLOSABLE,
|
|
16
|
+
MESSAGE_STRIP_ERROR,
|
|
17
|
+
MESSAGE_STRIP_WARNING,
|
|
18
|
+
MESSAGE_STRIP_SUCCESS,
|
|
19
|
+
MESSAGE_STRIP_INFORMATION,
|
|
20
|
+
} from "./generated/i18n/i18n-defaults.js";
|
|
14
21
|
|
|
15
22
|
// Styles
|
|
16
23
|
import messageStripCss from "./generated/themes/MessageStrip.css.js";
|
|
@@ -22,6 +29,7 @@ const metadata = {
|
|
|
22
29
|
tag: "ui5-message-strip",
|
|
23
30
|
altTag: "ui5-messagestrip",
|
|
24
31
|
languageAware: true,
|
|
32
|
+
fastNavigation: true,
|
|
25
33
|
properties: /** @lends sap.ui.webcomponents.main.MessageStrip.prototype */ {
|
|
26
34
|
|
|
27
35
|
/**
|
|
@@ -124,6 +132,14 @@ const metadata = {
|
|
|
124
132
|
* an icon in the beginning and a close button. Moreover, its size and background
|
|
125
133
|
* can be controlled with CSS.
|
|
126
134
|
*
|
|
135
|
+
* <h3>Keyboard Handling</h3>
|
|
136
|
+
*
|
|
137
|
+
* <h4>Fast Navigation</h4>
|
|
138
|
+
* This component provides a build in fast navigation group which can be used via <code>F6 / Shift + F6</code> or <code> Ctrl + Alt(Option) + Down / Ctrl + Alt(Option) + Up</code>.
|
|
139
|
+
* In order to use this functionality, you need to import the following module:
|
|
140
|
+
* <code>import "@ui5/webcomponents-base/dist/features/F6Navigation.js"</code>
|
|
141
|
+
* <br><br>
|
|
142
|
+
*
|
|
127
143
|
* <h3>ES6 Module Import</h3>
|
|
128
144
|
*
|
|
129
145
|
* <code>import "@ui5/webcomponents/dist/MessageStrip";</code>
|
|
@@ -190,14 +206,27 @@ class MessageStrip extends UI5Element {
|
|
|
190
206
|
};
|
|
191
207
|
}
|
|
192
208
|
|
|
209
|
+
static designAnnouncementMappings() {
|
|
210
|
+
return {
|
|
211
|
+
"Information": MessageStrip.i18nBundle.getText(MESSAGE_STRIP_INFORMATION),
|
|
212
|
+
"Positive": MessageStrip.i18nBundle.getText(MESSAGE_STRIP_SUCCESS),
|
|
213
|
+
"Negative": MessageStrip.i18nBundle.getText(MESSAGE_STRIP_ERROR),
|
|
214
|
+
"Warning": MessageStrip.i18nBundle.getText(MESSAGE_STRIP_WARNING),
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
|
|
193
218
|
get hiddenText() {
|
|
194
|
-
return
|
|
219
|
+
return `${MessageStrip.designAnnouncementMappings()[this.design]} ${this.hideCloseButton ? "" : this._closableText}`;
|
|
195
220
|
}
|
|
196
221
|
|
|
197
222
|
get _closeButtonText() {
|
|
198
223
|
return MessageStrip.i18nBundle.getText(MESSAGE_STRIP_CLOSE_BUTTON);
|
|
199
224
|
}
|
|
200
225
|
|
|
226
|
+
get _closableText() {
|
|
227
|
+
return MessageStrip.i18nBundle.getText(MESSAGE_STRIP_CLOSABLE);
|
|
228
|
+
}
|
|
229
|
+
|
|
201
230
|
get classes() {
|
|
202
231
|
return {
|
|
203
232
|
root: {
|
|
@@ -220,6 +249,14 @@ class MessageStrip extends UI5Element {
|
|
|
220
249
|
get designClasses() {
|
|
221
250
|
return MessageStrip.designClassesMappings()[this.design];
|
|
222
251
|
}
|
|
252
|
+
|
|
253
|
+
get accInfo() {
|
|
254
|
+
return {
|
|
255
|
+
"button": {
|
|
256
|
+
"title": this._closeButtonText,
|
|
257
|
+
},
|
|
258
|
+
};
|
|
259
|
+
}
|
|
223
260
|
}
|
|
224
261
|
|
|
225
262
|
MessageStrip.define();
|