@ui5/webcomponents 1.0.1 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +118 -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 +27 -2
- 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 +11 -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/MultiInput.js +55 -8
- 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 +425 -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 +134 -7
- package/dist/TreeItem.js +21 -0
- package/dist/TreeListItem.js +8 -0
- package/dist/api.json +299 -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 +18 -1
- package/dist/i18n/messagebundle_en_US_saprigi.properties +18 -1
- package/dist/i18n/messagebundle_en_US_saptrc.properties +18 -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 +9 -9
- 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 +27 -2
- 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 +11 -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/MultiInput.js +55 -8
- 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 +425 -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 +134 -7
- 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 +18 -1
- package/src/i18n/messagebundle_en_US_saprigi.properties +18 -1
- package/src/i18n/messagebundle_en_US_saptrc.properties +18 -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/Title-parameters.css +6 -6
- 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
|
@@ -0,0 +1,425 @@
|
|
|
1
|
+
import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
|
|
2
|
+
import {
|
|
3
|
+
isEscape,
|
|
4
|
+
isSpace,
|
|
5
|
+
isEnter,
|
|
6
|
+
isDown,
|
|
7
|
+
isUp,
|
|
8
|
+
isDownAlt,
|
|
9
|
+
isUpAlt,
|
|
10
|
+
isF4,
|
|
11
|
+
isShift,
|
|
12
|
+
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
13
|
+
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
14
|
+
import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
15
|
+
import SplitButtonTemplate from "./generated/templates/SplitButtonTemplate.lit.js";
|
|
16
|
+
import ButtonDesign from "./types/ButtonDesign.js";
|
|
17
|
+
|
|
18
|
+
import {
|
|
19
|
+
SPLIT_BUTTON_DESCRIPTION,
|
|
20
|
+
SPLIT_BUTTON_KEYBOARD_HINT,
|
|
21
|
+
} from "./generated/i18n/i18n-defaults.js";
|
|
22
|
+
|
|
23
|
+
// Styles
|
|
24
|
+
import SplitButtonCss from "./generated/themes/SplitButton.css.js";
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* @public
|
|
28
|
+
*/
|
|
29
|
+
const metadata = {
|
|
30
|
+
tag: "ui5-split-button",
|
|
31
|
+
managedSlots: true,
|
|
32
|
+
properties: /** @lends sap.ui.webcomponents.main.SplitButton.prototype */ {
|
|
33
|
+
/**
|
|
34
|
+
* Defines the icon to be displayed as graphical element within the component.
|
|
35
|
+
* The SAP-icons font provides numerous options.
|
|
36
|
+
* <br><br>
|
|
37
|
+
* Example:
|
|
38
|
+
*
|
|
39
|
+
* See all the available icons in the <ui5-link target="_blank" href="https://openui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html" class="api-table-content-cell-link">Icon Explorer</ui5-link>.
|
|
40
|
+
*
|
|
41
|
+
* @type {string}
|
|
42
|
+
* @defaultvalue ""
|
|
43
|
+
* @public
|
|
44
|
+
*/
|
|
45
|
+
icon: {
|
|
46
|
+
type: String,
|
|
47
|
+
},
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Defines the icon to be displayed in active state as graphical element within the component.
|
|
51
|
+
*
|
|
52
|
+
* @type {string}
|
|
53
|
+
* @defaultvalue ""
|
|
54
|
+
* @public
|
|
55
|
+
*/
|
|
56
|
+
activeIcon: {
|
|
57
|
+
type: String,
|
|
58
|
+
},
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Defines the component design.
|
|
62
|
+
*
|
|
63
|
+
* <br><br>
|
|
64
|
+
* <b>The available values are:</b>
|
|
65
|
+
*
|
|
66
|
+
* <ul>
|
|
67
|
+
* <li><code>Default</code></li>
|
|
68
|
+
* <li><code>Emphasized</code></li>
|
|
69
|
+
* <li><code>Positive</code></li>
|
|
70
|
+
* <li><code>Negative</code></li>
|
|
71
|
+
* <li><code>Transparent</code></li>
|
|
72
|
+
* <li><code>Attention</code></li>
|
|
73
|
+
* </ul>
|
|
74
|
+
*
|
|
75
|
+
* @type {ButtonDesign}
|
|
76
|
+
* @defaultvalue "Default"
|
|
77
|
+
* @public
|
|
78
|
+
*/
|
|
79
|
+
design: {
|
|
80
|
+
type: ButtonDesign,
|
|
81
|
+
defaultValue: ButtonDesign.Default,
|
|
82
|
+
},
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* Defines whether the component is disabled.
|
|
86
|
+
* A disabled component can't be pressed or
|
|
87
|
+
* focused, and it is not in the tab chain.
|
|
88
|
+
*
|
|
89
|
+
* @type {boolean}
|
|
90
|
+
* @defaultvalue false
|
|
91
|
+
* @public
|
|
92
|
+
*/
|
|
93
|
+
disabled: {
|
|
94
|
+
type: Boolean,
|
|
95
|
+
},
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Sets the accessible aria name of the component.
|
|
99
|
+
*
|
|
100
|
+
* @type {String}
|
|
101
|
+
* @defaultvalue: ""
|
|
102
|
+
* @public
|
|
103
|
+
*/
|
|
104
|
+
accessibleName: {
|
|
105
|
+
type: String,
|
|
106
|
+
defaultValue: undefined,
|
|
107
|
+
},
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Indicates if the elements is on focus
|
|
111
|
+
* @type {boolean}
|
|
112
|
+
* @defaultvalue false
|
|
113
|
+
* @private
|
|
114
|
+
*/
|
|
115
|
+
focused: {
|
|
116
|
+
type: Boolean,
|
|
117
|
+
},
|
|
118
|
+
|
|
119
|
+
/**
|
|
120
|
+
* Accessibility-related properties for inner elements of the Split Button
|
|
121
|
+
*
|
|
122
|
+
* @type {Object}
|
|
123
|
+
* @private
|
|
124
|
+
*/
|
|
125
|
+
_splitButtonAccInfo: {
|
|
126
|
+
type: Object,
|
|
127
|
+
},
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Defines the tabIndex of the component.
|
|
131
|
+
* @type {string}
|
|
132
|
+
* @defaultvalue ""
|
|
133
|
+
* @private
|
|
134
|
+
*/
|
|
135
|
+
_tabIndex: {
|
|
136
|
+
type: String,
|
|
137
|
+
defaultValue: "0",
|
|
138
|
+
noAttribute: true,
|
|
139
|
+
},
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* Indicates if there is Space key pressed
|
|
143
|
+
* @type {boolean}
|
|
144
|
+
* @defaultvalue false
|
|
145
|
+
* @private
|
|
146
|
+
*/
|
|
147
|
+
_spacePressed: {
|
|
148
|
+
type: Boolean,
|
|
149
|
+
noAttribute: true,
|
|
150
|
+
},
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Indicates if there is SHIFT or ESCAPE key pressed
|
|
154
|
+
* @type {boolean}
|
|
155
|
+
* @defaultvalue false
|
|
156
|
+
* @private
|
|
157
|
+
*/
|
|
158
|
+
_shiftOrEscapePressed: {
|
|
159
|
+
type: Boolean,
|
|
160
|
+
noAttribute: true,
|
|
161
|
+
},
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Defines the active state of the text button
|
|
165
|
+
* @type {boolean}
|
|
166
|
+
* @defaultvalue false
|
|
167
|
+
* @private
|
|
168
|
+
*/
|
|
169
|
+
_textButtonActive: {
|
|
170
|
+
type: Boolean,
|
|
171
|
+
noAttribute: true,
|
|
172
|
+
},
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* Defines the icon of the text button
|
|
176
|
+
* @type {string}
|
|
177
|
+
* @defaultvalue ""
|
|
178
|
+
* @private
|
|
179
|
+
*/
|
|
180
|
+
_textButtonIcon: {
|
|
181
|
+
type: String,
|
|
182
|
+
noAttribute: true,
|
|
183
|
+
},
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* Defines the active state of the arrow button
|
|
187
|
+
* @type {boolean}
|
|
188
|
+
* @defaultvalue false
|
|
189
|
+
* @private
|
|
190
|
+
*/
|
|
191
|
+
_arrowButtonActive: {
|
|
192
|
+
type: Boolean,
|
|
193
|
+
noAttribute: true,
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
slots: /** @lends sap.ui.webcomponents.main.SplitButton.prototype */ {
|
|
197
|
+
/**
|
|
198
|
+
* Defines the text of the component.
|
|
199
|
+
* <br><br>
|
|
200
|
+
* <b>Note:</b> Although this slot accepts HTML Elements, it is strongly recommended that you only use text in order to preserve the intended design.
|
|
201
|
+
*
|
|
202
|
+
* @type {Node[]}
|
|
203
|
+
* @slot
|
|
204
|
+
* @public
|
|
205
|
+
*/
|
|
206
|
+
"default": {
|
|
207
|
+
type: Node,
|
|
208
|
+
propertyName: "text",
|
|
209
|
+
},
|
|
210
|
+
},
|
|
211
|
+
events: /** @lends sap.ui.webcomponents.main.SplitButton.prototype */ {
|
|
212
|
+
/**
|
|
213
|
+
* Fired when the user clicks on the default action.
|
|
214
|
+
* @event
|
|
215
|
+
* @public
|
|
216
|
+
*/
|
|
217
|
+
"click": {},
|
|
218
|
+
|
|
219
|
+
/**
|
|
220
|
+
* Fired when the user clicks on the arrow action.
|
|
221
|
+
* @event sap.ui.webcomponents.main.SplitButton#arrow-click
|
|
222
|
+
* @public
|
|
223
|
+
*/
|
|
224
|
+
"arrow-click": {},
|
|
225
|
+
},
|
|
226
|
+
};
|
|
227
|
+
|
|
228
|
+
/**
|
|
229
|
+
* @class
|
|
230
|
+
*
|
|
231
|
+
* <h3 class="comment-api-title">Overview</h3>
|
|
232
|
+
*
|
|
233
|
+
* <code>ui5-split-button</code> enables users to trigger actions. It is constructed of two separate actions -
|
|
234
|
+
* default action and arrow action that can be activated by clicking or tapping, or by
|
|
235
|
+
* pressing certain keyboard keys - <code>Space</code> or <code>Enter</code> for default action,
|
|
236
|
+
* and <code>Arrow Down</code> or <code>Arrow Up</code> for arrow action.
|
|
237
|
+
*
|
|
238
|
+
* <h3>Usage</h3>
|
|
239
|
+
*
|
|
240
|
+
* <code>ui5-split-button</code> consists two separate buttons:
|
|
241
|
+
* <ul>
|
|
242
|
+
* <li>for the first one (default action) you can define some <code>text</code> or an <code>icon</code>, or both.
|
|
243
|
+
* Also, it is possible to define different icon for active state of this button - <code>activeIcon</code>.</li>
|
|
244
|
+
* <li>the second one (arrow action) contains only <code>slim-arrow-down</code> icon.</li>
|
|
245
|
+
* </ul>
|
|
246
|
+
* You can choose a <code>design</code> from a set of predefined types (the same as for ui5-button) that offer
|
|
247
|
+
* different styling to correspond to the triggered action. Both text and arrow actions have the same design.
|
|
248
|
+
* <br><br>
|
|
249
|
+
* You can set the <code>ui5-split-button</code> as enabled or disabled. Both parts of an enabled
|
|
250
|
+
* <code>ui5-split-button</code> can be pressed by clicking or tapping it, or by certain keys, which changes
|
|
251
|
+
* the style to provide visual feedback to the user that it is pressed or hovered over with
|
|
252
|
+
* the mouse cursor. A disabled <code>ui5-split-button</code> appears inactive and any of the two buttons
|
|
253
|
+
* cannot be pressed.
|
|
254
|
+
* <br><br>
|
|
255
|
+
* <b>Keyboard handing</b>
|
|
256
|
+
* <ul>
|
|
257
|
+
* <li><code>Space</code> or <code>Enter</code> - triggers the default action</li>
|
|
258
|
+
* <li><code>Shift</code> or <code>Escape</code> - if <code>Space</code> is pressed, releases the default action button without triggering the click event.</li>
|
|
259
|
+
* <li><code>Arrow Down</code>, <code>Arrow Up</code>, <code>Alt</code>+<code>Arrow Down</code>, <code>Alt</code>+<code>Arrow Up</code>, or <code>F4</code> - triggers the arrow action
|
|
260
|
+
* There are separate events that are fired on activating of <code>ui5-split-button</code> parts:
|
|
261
|
+
* <ul>
|
|
262
|
+
* <li><code>click</code> for the first button (default action)</li>
|
|
263
|
+
* <li><code>arrow-click</code> for the second button (arrow action)</li>
|
|
264
|
+
* </ul>
|
|
265
|
+
*
|
|
266
|
+
* <h3>ES6 Module Import</h3>
|
|
267
|
+
*
|
|
268
|
+
* <code>import @ui5/webcomponents/dist/SplitButton.js";</code>
|
|
269
|
+
*
|
|
270
|
+
* @constructor
|
|
271
|
+
* @author SAP SE
|
|
272
|
+
* @alias sap.ui.webcomponents.main.SplitButton
|
|
273
|
+
* @extends UI5Element
|
|
274
|
+
* @tagname ui5-split-button
|
|
275
|
+
* @public
|
|
276
|
+
* @since 1.1.0
|
|
277
|
+
*/
|
|
278
|
+
class SplitButton extends UI5Element {
|
|
279
|
+
static get metadata() {
|
|
280
|
+
return metadata;
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
static get render() {
|
|
284
|
+
return litRender;
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
static get styles() {
|
|
288
|
+
return SplitButtonCss;
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
static get template() {
|
|
292
|
+
return SplitButtonTemplate;
|
|
293
|
+
}
|
|
294
|
+
|
|
295
|
+
static async onDefine() {
|
|
296
|
+
SplitButton.i18nBundle = await getI18nBundle("@ui5/webcomponents");
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
onBeforeRendering() {
|
|
300
|
+
this._textButtonIcon = this.textButton && this.activeIcon !== "" && (this._textButtonActive) && !this._shiftOrEscapePressed ? this.activeIcon : this.icon;
|
|
301
|
+
if (this.disabled) {
|
|
302
|
+
this._tabIndex = "-1";
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
_onFocusOut(event) {
|
|
307
|
+
if (this.disabled || event.isMarked) {
|
|
308
|
+
return;
|
|
309
|
+
}
|
|
310
|
+
this._shiftOrEscapePressed = false;
|
|
311
|
+
this.focused = false;
|
|
312
|
+
this._setTabIndexValue();
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
_onFocusIn(event) {
|
|
316
|
+
if (this.disabled || event.isMarked) {
|
|
317
|
+
return;
|
|
318
|
+
}
|
|
319
|
+
this._shiftOrEscapePressed = false;
|
|
320
|
+
this.focused = true;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
_onKeyDown(event) {
|
|
324
|
+
if (isDown(event) || isUp(event) || isDownAlt(event) || isUpAlt(event) || isF4(event)) {
|
|
325
|
+
event.preventDefault();
|
|
326
|
+
this._arrowButtonActive = true;
|
|
327
|
+
this._fireArrowClick();
|
|
328
|
+
} else if (isSpace(event) || isEnter(event)) {
|
|
329
|
+
event.preventDefault();
|
|
330
|
+
this._textButtonActive = true;
|
|
331
|
+
if (isEnter(event)) {
|
|
332
|
+
this._fireClick();
|
|
333
|
+
} else {
|
|
334
|
+
this._spacePressed = true;
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
if (this._spacePressed && (isEscape(event) || isShift(event))) {
|
|
338
|
+
this._shiftOrEscapePressed = true;
|
|
339
|
+
this._textButtonActive = false;
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
this._setTabIndexValue();
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
_onKeyUp(event) {
|
|
346
|
+
if (isDown(event) || isUp(event) || isDownAlt(event) || isUpAlt(event) || isF4(event)) {
|
|
347
|
+
this._arrowButtonActive = false;
|
|
348
|
+
} else if (isSpace(event) || isEnter(event)) {
|
|
349
|
+
this._textButtonActive = false;
|
|
350
|
+
if (isSpace(event)) {
|
|
351
|
+
event.preventDefault();
|
|
352
|
+
event.stopPropagation();
|
|
353
|
+
this._fireClick();
|
|
354
|
+
this._spacePressed = false;
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
this._setTabIndexValue();
|
|
359
|
+
}
|
|
360
|
+
|
|
361
|
+
_fireClick(event) {
|
|
362
|
+
event && event.stopPropagation();
|
|
363
|
+
if (!this._shiftOrEscapePressed) {
|
|
364
|
+
this.fireEvent("click");
|
|
365
|
+
}
|
|
366
|
+
this._shiftOrEscapePressed = false;
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
_fireArrowClick(event) {
|
|
370
|
+
event && event.stopPropagation();
|
|
371
|
+
this.fireEvent("arrow-click");
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
_textButtonRelease() {
|
|
375
|
+
this._textButtonActive = false;
|
|
376
|
+
this._textButtonIcon = this.textButton && this.activeIcon !== "" && (this._textButtonActive) && !this._shiftOrEscapePressed ? this.activeIcon : this.icon;
|
|
377
|
+
this._setTabIndexValue();
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
_textButtonPress() {
|
|
381
|
+
this._textButtonActive = true;
|
|
382
|
+
this.focused = false;
|
|
383
|
+
this._setTabIndexValue();
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
_setTabIndexValue() {
|
|
387
|
+
const textButton = this.textButton,
|
|
388
|
+
arrowButton = this.arrowButton,
|
|
389
|
+
buttonsAction = (textButton && (textButton.focused || textButton.active))
|
|
390
|
+
|| (arrowButton && (arrowButton.focused || arrowButton.active));
|
|
391
|
+
|
|
392
|
+
this._tabIndex = this.disabled || buttonsAction ? "-1" : "0";
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
get textButtonAccText() {
|
|
396
|
+
return this.textContent;
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
get textButton() {
|
|
400
|
+
return this.getDomRef() && this.getDomRef().querySelector(".ui5-split-text-button");
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
get arrowButton() {
|
|
404
|
+
return this.getDomRef() && this.getDomRef().querySelector(".ui5-split-arrow-button");
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
get accessibilityInfo() {
|
|
408
|
+
return {
|
|
409
|
+
// affects arrow button
|
|
410
|
+
ariaExpanded: this._splitButtonAccInfo && this._splitButtonAccInfo.ariaExpanded,
|
|
411
|
+
ariaHaspopup: this._splitButtonAccInfo && this._splitButtonAccInfo.ariaHaspopup,
|
|
412
|
+
// affects root element
|
|
413
|
+
description: SplitButton.i18nBundle.getText(SPLIT_BUTTON_DESCRIPTION),
|
|
414
|
+
keyboardHint: SplitButton.i18nBundle.getText(SPLIT_BUTTON_KEYBOARD_HINT),
|
|
415
|
+
};
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
get ariaLabelText() {
|
|
419
|
+
return [SplitButton.i18nBundle.getText(SPLIT_BUTTON_DESCRIPTION), SplitButton.i18nBundle.getText(SPLIT_BUTTON_KEYBOARD_HINT)].join(" ");
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
|
|
423
|
+
SplitButton.define();
|
|
424
|
+
|
|
425
|
+
export default SplitButton;
|
package/dist/Switch.js
CHANGED
|
@@ -3,6 +3,7 @@ import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
|
|
|
3
3
|
import { isSpace, isEnter } from "@ui5/webcomponents-base/dist/Keys.js";
|
|
4
4
|
import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
|
|
5
5
|
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
6
|
+
import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
|
|
6
7
|
import "@ui5/webcomponents-icons/dist/accept.js";
|
|
7
8
|
import "@ui5/webcomponents-icons/dist/decline.js";
|
|
8
9
|
import "@ui5/webcomponents-icons/dist/less.js";
|
|
@@ -95,6 +96,19 @@ const metadata = {
|
|
|
95
96
|
textOff: {
|
|
96
97
|
type: String,
|
|
97
98
|
},
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Receives id(or many ids) of the elements that label the component.
|
|
102
|
+
*
|
|
103
|
+
* @type {String}
|
|
104
|
+
* @defaultvalue ""
|
|
105
|
+
* @public
|
|
106
|
+
* @since 1.1.0
|
|
107
|
+
*/
|
|
108
|
+
accessibleNameRef: {
|
|
109
|
+
type: String,
|
|
110
|
+
defaultValue: "",
|
|
111
|
+
},
|
|
98
112
|
},
|
|
99
113
|
events: /** @lends sap.ui.webcomponents.main.Switch.prototype */ {
|
|
100
114
|
|
|
@@ -248,6 +262,10 @@ class Switch extends UI5Element {
|
|
|
248
262
|
return this.checked ? this.accessibilityOnText : this.accessibilityOffText;
|
|
249
263
|
}
|
|
250
264
|
|
|
265
|
+
get ariaLabelText() {
|
|
266
|
+
return getEffectiveAriaLabelText(this);
|
|
267
|
+
}
|
|
268
|
+
|
|
251
269
|
static get dependencies() {
|
|
252
270
|
return [Icon];
|
|
253
271
|
}
|
package/dist/Tab.js
CHANGED
|
@@ -56,7 +56,7 @@ const metadata = {
|
|
|
56
56
|
},
|
|
57
57
|
|
|
58
58
|
/**
|
|
59
|
-
* Represents the "additionalText" text, which is displayed in the tab
|
|
59
|
+
* Represents the "additionalText" text, which is displayed in the tab.
|
|
60
60
|
* @type {string}
|
|
61
61
|
* @defaultvalue ""
|
|
62
62
|
* @public
|
|
@@ -118,6 +118,10 @@ const metadata = {
|
|
|
118
118
|
defaultValue: "-1",
|
|
119
119
|
noAttribute: true,
|
|
120
120
|
},
|
|
121
|
+
|
|
122
|
+
_selected: {
|
|
123
|
+
type: Boolean,
|
|
124
|
+
},
|
|
121
125
|
},
|
|
122
126
|
events: /** @lends sap.ui.webcomponents.main.Tab.prototype */ {
|
|
123
127
|
},
|
|
@@ -192,7 +196,7 @@ class Tab extends UI5Element {
|
|
|
192
196
|
}
|
|
193
197
|
|
|
194
198
|
get stableDomRef() {
|
|
195
|
-
return `${this._id}-stable-dom-ref`;
|
|
199
|
+
return this.getAttribute("stable-dom-ref") || `${this._id}-stable-dom-ref`;
|
|
196
200
|
}
|
|
197
201
|
|
|
198
202
|
/**
|
|
@@ -234,11 +238,11 @@ class Tab extends UI5Element {
|
|
|
234
238
|
}
|
|
235
239
|
|
|
236
240
|
get effectiveSelected() {
|
|
237
|
-
return this.selected ||
|
|
241
|
+
return this.selected || this._selected;
|
|
238
242
|
}
|
|
239
243
|
|
|
240
244
|
get effectiveHidden() {
|
|
241
|
-
return !this.
|
|
245
|
+
return !this.effectiveSelected;
|
|
242
246
|
}
|
|
243
247
|
|
|
244
248
|
get ariaLabelledBy() {
|
|
@@ -259,10 +263,10 @@ class Tab extends UI5Element {
|
|
|
259
263
|
return labels.join(" ");
|
|
260
264
|
}
|
|
261
265
|
|
|
262
|
-
get
|
|
266
|
+
get stripClasses() {
|
|
263
267
|
const classes = ["ui5-tab-strip-item"];
|
|
264
268
|
|
|
265
|
-
if (this.
|
|
269
|
+
if (this.effectiveSelected) {
|
|
266
270
|
classes.push("ui5-tab-strip-item--selected");
|
|
267
271
|
}
|
|
268
272
|
|