@ui5/webcomponents 1.2.2 → 1.3.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 +97 -0
- package/README.md +6 -1
- package/dist/Breadcrumbs.js +55 -5
- package/dist/Button.js +13 -10
- package/dist/CardHeader.js +5 -10
- package/dist/CheckBox.js +12 -0
- package/dist/ColorPicker.js +14 -10
- package/dist/ComboBox.js +13 -9
- package/dist/DatePicker.js +13 -7
- package/dist/DateTimePicker.js +3 -0
- package/dist/Icon.js +4 -9
- package/dist/Input.js +36 -4
- package/dist/Interfaces.js +10 -0
- package/dist/Link.js +1 -1
- package/dist/List.js +54 -5
- package/dist/ListItem.js +28 -5
- package/dist/ListItemBase.js +3 -1
- package/dist/Menu.js +500 -0
- package/dist/MenuItem.js +162 -0
- package/dist/MultiComboBox.js +229 -25
- package/dist/MultiInput.js +20 -9
- package/dist/Option.js +10 -0
- package/dist/Popover.js +37 -77
- package/dist/Popup.js +4 -0
- package/dist/RadioButton.js +10 -1
- package/dist/ResponsivePopover.js +4 -0
- package/dist/Select.js +3 -0
- package/dist/SliderBase.js +7 -4
- package/dist/SplitButton.js +13 -6
- package/dist/Tab.js +78 -4
- package/dist/TabContainer.js +193 -41
- package/dist/Table.js +240 -44
- package/dist/TableGroupRow.js +4 -1
- package/dist/TableRow.js +33 -66
- package/dist/TimePicker.js +0 -2
- package/dist/TimePickerBase.js +11 -2
- package/dist/TimeSelection.js +7 -0
- package/dist/Token.js +2 -1
- package/dist/Tokenizer.js +26 -16
- package/dist/WheelSlider.js +7 -0
- package/dist/api.json +231 -9
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/Badge.css +1 -1
- package/dist/css/themes/BreadcrumbsPopover.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/CalendarHeader.css +1 -1
- package/dist/css/themes/Card.css +1 -1
- package/dist/css/themes/CardHeader.css +1 -1
- package/dist/css/themes/CheckBox.css +1 -1
- package/dist/css/themes/ColorPalette.css +1 -1
- package/dist/css/themes/ColorPalettePopover.css +1 -1
- package/dist/css/themes/ColorPicker.css +1 -1
- package/dist/css/themes/ComboBox.css +1 -1
- package/dist/css/themes/DatePicker.css +1 -1
- package/dist/css/themes/DateTimePickerPopover.css +1 -1
- package/dist/css/themes/Dialog.css +1 -1
- package/dist/css/themes/Icon.css +1 -1
- package/dist/css/themes/Input.css +1 -1
- package/dist/css/themes/InputIcon.css +1 -1
- package/dist/css/themes/Label.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/Menu.css +1 -0
- package/dist/css/themes/MessageStrip.css +1 -1
- package/dist/css/themes/MultiComboBox.css +1 -1
- package/dist/css/themes/MultiInput.css +1 -1
- package/dist/css/themes/Panel.css +1 -1
- package/dist/css/themes/PopupsCommon.css +1 -1
- package/dist/css/themes/RadioButton.css +1 -1
- package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
- package/dist/css/themes/SegmentedButton.css +1 -1
- package/dist/css/themes/Select.css +1 -1
- package/dist/css/themes/SplitButton.css +1 -1
- package/dist/css/themes/StepInput.css +1 -1
- package/dist/css/themes/Suggestions.css +1 -1
- package/dist/css/themes/TabContainer.css +1 -1
- package/dist/css/themes/TabInOverflow.css +1 -1
- package/dist/css/themes/TabInStrip.css +1 -1
- package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
- package/dist/css/themes/Table.css +1 -1
- package/dist/css/themes/TableCell.css +1 -1
- package/dist/css/themes/TableColumn.css +1 -1
- package/dist/css/themes/TableGroupRow.css +1 -1
- package/dist/css/themes/TableRow.css +1 -1
- package/dist/css/themes/TextArea.css +1 -1
- package/dist/css/themes/TimePicker.css +1 -1
- package/dist/css/themes/Title.css +1 -1
- package/dist/css/themes/Toast.css +1 -1
- package/dist/css/themes/ToggleButton.css +1 -1
- package/dist/css/themes/TreeListItem.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_dark/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcb/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/features/InputElementsFormSupport.js +8 -5
- 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_dark/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcb/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/i18n/i18n-defaults.js +2 -2
- package/dist/generated/templates/AvatarGroupTemplate.lit.js +1 -1
- package/dist/generated/templates/AvatarTemplate.lit.js +1 -1
- package/dist/generated/templates/BadgeTemplate.lit.js +1 -1
- package/dist/generated/templates/BreadcrumbsPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/BreadcrumbsTemplate.lit.js +3 -3
- package/dist/generated/templates/BusyIndicatorTemplate.lit.js +1 -1
- package/dist/generated/templates/ButtonTemplate.lit.js +2 -2
- package/dist/generated/templates/CalendarHeaderTemplate.lit.js +1 -1
- package/dist/generated/templates/CalendarTemplate.lit.js +1 -1
- package/dist/generated/templates/CardHeaderTemplate.lit.js +4 -4
- package/dist/generated/templates/CardTemplate.lit.js +1 -1
- package/dist/generated/templates/CarouselTemplate.lit.js +4 -4
- package/dist/generated/templates/CheckBoxTemplate.lit.js +3 -3
- package/dist/generated/templates/ColorPaletteDialogTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPalettePopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ColorPaletteTemplate.lit.js +3 -3
- package/dist/generated/templates/ColorPickerTemplate.lit.js +1 -1
- package/dist/generated/templates/ComboBoxPopoverTemplate.lit.js +6 -6
- package/dist/generated/templates/ComboBoxTemplate.lit.js +3 -4
- package/dist/generated/templates/CustomListItemTemplate.lit.js +8 -8
- package/dist/generated/templates/DatePickerPopoverTemplate.lit.js +3 -3
- package/dist/generated/templates/DatePickerTemplate.lit.js +2 -2
- package/dist/generated/templates/DateTimePickerPopoverTemplate.lit.js +4 -4
- package/dist/generated/templates/DialogTemplate.lit.js +1 -1
- package/dist/generated/templates/FileUploaderPopoverTemplate.lit.js +2 -2
- package/dist/generated/templates/FileUploaderTemplate.lit.js +1 -1
- package/dist/generated/templates/InputPopoverTemplate.lit.js +8 -8
- package/dist/generated/templates/InputTemplate.lit.js +6 -7
- package/dist/generated/templates/LabelTemplate.lit.js +1 -1
- package/dist/generated/templates/ListItemTemplate.lit.js +8 -8
- package/dist/generated/templates/ListTemplate.lit.js +2 -2
- package/dist/generated/templates/MenuTemplate.lit.js +15 -0
- package/dist/generated/templates/MessageStripTemplate.lit.js +2 -2
- package/dist/generated/templates/MultiComboBoxPopoverTemplate.lit.js +10 -10
- package/dist/generated/templates/MultiComboBoxTemplate.lit.js +4 -5
- package/dist/generated/templates/MultiInputTemplate.lit.js +7 -8
- package/dist/generated/templates/PanelTemplate.lit.js +3 -3
- package/dist/generated/templates/PopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/ProgressIndicatorTemplate.lit.js +2 -2
- package/dist/generated/templates/RadioButtonTemplate.lit.js +2 -2
- package/dist/generated/templates/RangeSliderTemplate.lit.js +1 -1
- package/dist/generated/templates/ResponsivePopoverTemplate.lit.js +4 -4
- package/dist/generated/templates/SegmentedButtonItemTemplate.lit.js +1 -1
- package/dist/generated/templates/SelectPopoverTemplate.lit.js +5 -5
- package/dist/generated/templates/SelectTemplate.lit.js +2 -2
- package/dist/generated/templates/SliderTemplate.lit.js +1 -1
- package/dist/generated/templates/SplitButtonTemplate.lit.js +1 -1
- package/dist/generated/templates/StandardListItemTemplate.lit.js +11 -11
- package/dist/generated/templates/StepInputTemplate.lit.js +3 -3
- package/dist/generated/templates/SuggestionListItemTemplate.lit.js +11 -11
- package/dist/generated/templates/SwitchTemplate.lit.js +3 -3
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +2 -5
- package/dist/generated/templates/TabContainerTemplate.lit.js +10 -12
- package/dist/generated/templates/TabInOverflowTemplate.lit.js +3 -2
- package/dist/generated/templates/TabInStripTemplate.lit.js +5 -3
- package/dist/generated/templates/TabSeparatorInOverflowTemplate.lit.js +1 -1
- package/dist/generated/templates/TabTemplate.lit.js +2 -1
- package/dist/generated/templates/TableRowTemplate.lit.js +1 -1
- package/dist/generated/templates/TableTemplate.lit.js +3 -3
- package/dist/generated/templates/TextAreaPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TimePickerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TimePickerTemplate.lit.js +2 -2
- package/dist/generated/templates/TimeSelectionTemplate.lit.js +4 -4
- package/dist/generated/templates/ToggleButtonTemplate.lit.js +2 -2
- package/dist/generated/templates/TokenTemplate.lit.js +1 -1
- package/dist/generated/templates/TokenizerPopoverTemplate.lit.js +5 -5
- package/dist/generated/templates/TreeListItemTemplate.lit.js +11 -11
- package/dist/generated/templates/TreeTemplate.lit.js +2 -2
- package/dist/generated/templates/WheelSliderTemplate.lit.js +1 -1
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Badge.css.js +1 -1
- package/dist/generated/themes/BreadcrumbsPopover.css.js +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/CalendarHeader.css.js +1 -1
- package/dist/generated/themes/Card.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/ColorPalette.css.js +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
- package/dist/generated/themes/ColorPicker.css.js +1 -1
- package/dist/generated/themes/ComboBox.css.js +1 -1
- package/dist/generated/themes/DatePicker.css.js +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
- package/dist/generated/themes/Dialog.css.js +1 -1
- package/dist/generated/themes/Icon.css.js +1 -1
- package/dist/generated/themes/Input.css.js +1 -1
- package/dist/generated/themes/InputIcon.css.js +1 -1
- package/dist/generated/themes/Label.css.js +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/Menu.css.js +8 -0
- package/dist/generated/themes/MessageStrip.css.js +1 -1
- package/dist/generated/themes/MultiComboBox.css.js +1 -1
- package/dist/generated/themes/MultiInput.css.js +1 -1
- package/dist/generated/themes/Panel.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/ResponsivePopoverCommon.css.js +1 -1
- package/dist/generated/themes/SegmentedButton.css.js +1 -1
- package/dist/generated/themes/Select.css.js +1 -1
- package/dist/generated/themes/SplitButton.css.js +1 -1
- package/dist/generated/themes/StepInput.css.js +1 -1
- package/dist/generated/themes/Suggestions.css.js +1 -1
- 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 +1 -1
- package/dist/generated/themes/Table.css.js +1 -1
- package/dist/generated/themes/TableCell.css.js +1 -1
- package/dist/generated/themes/TableColumn.css.js +1 -1
- package/dist/generated/themes/TableGroupRow.css.js +1 -1
- package/dist/generated/themes/TableRow.css.js +1 -1
- package/dist/generated/themes/TextArea.css.js +1 -1
- package/dist/generated/themes/TimePicker.css.js +1 -1
- package/dist/generated/themes/Title.css.js +1 -1
- package/dist/generated/themes/Toast.css.js +1 -1
- package/dist/generated/themes/ToggleButton.css.js +1 -1
- package/dist/generated/themes/TreeListItem.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_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
- package/dist/i18n/messagebundle.properties +8 -0
- package/dist/i18n/messagebundle_ar.properties +6 -0
- package/dist/i18n/messagebundle_bg.properties +6 -0
- package/dist/i18n/messagebundle_ca.properties +6 -0
- package/dist/i18n/messagebundle_cs.properties +6 -0
- package/dist/i18n/messagebundle_cy.properties +6 -0
- package/dist/i18n/messagebundle_da.properties +6 -0
- package/dist/i18n/messagebundle_de.properties +6 -0
- package/dist/i18n/messagebundle_el.properties +6 -0
- package/dist/i18n/messagebundle_en.properties +6 -0
- package/dist/i18n/messagebundle_en_GB.properties +6 -0
- package/dist/i18n/messagebundle_en_US_sappsd.properties +6 -0
- package/dist/i18n/messagebundle_en_US_saprigi.properties +7 -0
- package/dist/i18n/messagebundle_en_US_saptrc.properties +6 -0
- package/dist/i18n/messagebundle_es.properties +6 -0
- package/dist/i18n/messagebundle_es_MX.properties +6 -0
- package/dist/i18n/messagebundle_et.properties +6 -0
- package/dist/i18n/messagebundle_fi.properties +6 -0
- package/dist/i18n/messagebundle_fr.properties +6 -0
- package/dist/i18n/messagebundle_fr_CA.properties +6 -0
- package/dist/i18n/messagebundle_hi.properties +6 -0
- package/dist/i18n/messagebundle_hr.properties +6 -0
- package/dist/i18n/messagebundle_hu.properties +6 -0
- package/dist/i18n/messagebundle_id.properties +6 -0
- package/dist/i18n/messagebundle_it.properties +6 -0
- package/dist/i18n/messagebundle_iw.properties +6 -0
- package/dist/i18n/messagebundle_ja.properties +6 -0
- package/dist/i18n/messagebundle_kk.properties +6 -0
- package/dist/i18n/messagebundle_ko.properties +6 -0
- package/dist/i18n/messagebundle_lt.properties +6 -0
- package/dist/i18n/messagebundle_lv.properties +6 -0
- package/dist/i18n/messagebundle_ms.properties +6 -0
- package/dist/i18n/messagebundle_nl.properties +6 -0
- package/dist/i18n/messagebundle_no.properties +6 -0
- package/dist/i18n/messagebundle_pl.properties +6 -0
- package/dist/i18n/messagebundle_pt.properties +6 -0
- package/dist/i18n/messagebundle_pt_PT.properties +6 -0
- package/dist/i18n/messagebundle_ro.properties +6 -0
- package/dist/i18n/messagebundle_ru.properties +6 -0
- package/dist/i18n/messagebundle_sh.properties +6 -0
- package/dist/i18n/messagebundle_sk.properties +6 -0
- package/dist/i18n/messagebundle_sl.properties +6 -0
- package/dist/i18n/messagebundle_sv.properties +6 -0
- package/dist/i18n/messagebundle_th.properties +6 -0
- package/dist/i18n/messagebundle_tr.properties +6 -0
- package/dist/i18n/messagebundle_uk.properties +6 -0
- package/dist/i18n/messagebundle_vi.properties +6 -0
- package/dist/i18n/messagebundle_zh_CN.properties +6 -0
- package/dist/i18n/messagebundle_zh_TW.properties +6 -0
- package/dist/types/ListGrowingMode.js +36 -3
- package/dist/types/TableGrowingMode.js +35 -2
- package/package.json +7 -10
- package/src/Badge.hbs +0 -1
- package/src/Breadcrumbs.hbs +5 -3
- package/src/Breadcrumbs.js +55 -5
- package/src/BreadcrumbsPopover.hbs +1 -0
- package/src/Button.hbs +0 -1
- package/src/Button.js +13 -10
- package/src/CalendarHeader.hbs +1 -4
- package/src/Card.hbs +0 -1
- package/src/CardHeader.hbs +18 -15
- package/src/CardHeader.js +5 -10
- package/src/CheckBox.hbs +1 -1
- package/src/CheckBox.js +12 -0
- package/src/ColorPicker.hbs +2 -2
- package/src/ColorPicker.js +14 -10
- package/src/ComboBox.hbs +1 -5
- package/src/ComboBox.js +13 -9
- package/src/ComboBoxPopover.hbs +2 -1
- package/src/DatePicker.js +13 -7
- package/src/DateTimePicker.js +3 -0
- package/src/DateTimePickerPopover.hbs +3 -1
- package/src/Icon.js +4 -9
- package/src/Input.hbs +1 -5
- package/src/Input.js +36 -4
- package/src/InputPopover.hbs +2 -1
- package/src/Interfaces.js +10 -0
- package/src/Label.hbs +1 -2
- package/src/Link.js +1 -1
- package/src/List.hbs +1 -0
- package/src/List.js +54 -5
- package/src/ListItem.hbs +1 -1
- package/src/ListItem.js +28 -5
- package/src/ListItemBase.js +3 -1
- package/src/Menu.hbs +100 -0
- package/src/Menu.js +500 -0
- package/src/MenuItem.js +162 -0
- package/src/MultiComboBox.hbs +2 -6
- package/src/MultiComboBox.js +229 -25
- package/src/MultiInput.hbs +1 -1
- package/src/MultiInput.js +20 -9
- package/src/Option.js +10 -0
- package/src/Panel.hbs +0 -1
- package/src/Popover.hbs +1 -1
- package/src/Popover.js +37 -77
- package/src/Popup.js +4 -0
- package/src/RadioButton.hbs +1 -1
- package/src/RadioButton.js +10 -1
- package/src/ResponsivePopover.js +4 -0
- package/src/Select.hbs +1 -1
- package/src/Select.js +3 -0
- package/src/SelectPopover.hbs +1 -0
- package/src/SliderBase.js +7 -4
- package/src/SplitButton.js +13 -6
- package/src/StandardListItem.hbs +2 -2
- package/src/Switch.hbs +1 -1
- package/src/Tab.hbs +5 -1
- package/src/Tab.js +78 -4
- package/src/TabContainer.hbs +11 -13
- package/src/TabContainer.js +193 -41
- package/src/TabContainerPopover.hbs +4 -10
- package/src/TabInOverflow.hbs +15 -8
- package/src/TabInStrip.hbs +19 -2
- package/src/TabSeparatorInOverflow.hbs +1 -0
- package/src/Table.hbs +7 -2
- package/src/Table.js +240 -44
- package/src/TableGroupRow.js +4 -1
- package/src/TableRow.js +33 -66
- package/src/TimePicker.js +0 -2
- package/src/TimePickerBase.js +11 -2
- package/src/TimeSelection.js +7 -0
- package/src/Token.js +2 -1
- package/src/Tokenizer.js +26 -16
- package/src/TokenizerPopover.hbs +16 -17
- package/src/WheelSlider.js +7 -0
- package/src/features/InputElementsFormSupport.js +8 -5
- package/src/i18n/messagebundle.properties +8 -0
- package/src/i18n/messagebundle_ar.properties +6 -0
- package/src/i18n/messagebundle_bg.properties +6 -0
- package/src/i18n/messagebundle_ca.properties +6 -0
- package/src/i18n/messagebundle_cs.properties +6 -0
- package/src/i18n/messagebundle_cy.properties +6 -0
- package/src/i18n/messagebundle_da.properties +6 -0
- package/src/i18n/messagebundle_de.properties +6 -0
- package/src/i18n/messagebundle_el.properties +6 -0
- package/src/i18n/messagebundle_en.properties +6 -0
- package/src/i18n/messagebundle_en_GB.properties +6 -0
- package/src/i18n/messagebundle_en_US_sappsd.properties +6 -0
- package/src/i18n/messagebundle_en_US_saprigi.properties +7 -0
- package/src/i18n/messagebundle_en_US_saptrc.properties +6 -0
- package/src/i18n/messagebundle_es.properties +6 -0
- package/src/i18n/messagebundle_es_MX.properties +6 -0
- package/src/i18n/messagebundle_et.properties +6 -0
- package/src/i18n/messagebundle_fi.properties +6 -0
- package/src/i18n/messagebundle_fr.properties +6 -0
- package/src/i18n/messagebundle_fr_CA.properties +6 -0
- package/src/i18n/messagebundle_hi.properties +6 -0
- package/src/i18n/messagebundle_hr.properties +6 -0
- package/src/i18n/messagebundle_hu.properties +6 -0
- package/src/i18n/messagebundle_id.properties +6 -0
- package/src/i18n/messagebundle_it.properties +6 -0
- package/src/i18n/messagebundle_iw.properties +6 -0
- package/src/i18n/messagebundle_ja.properties +6 -0
- package/src/i18n/messagebundle_kk.properties +6 -0
- package/src/i18n/messagebundle_ko.properties +6 -0
- package/src/i18n/messagebundle_lt.properties +6 -0
- package/src/i18n/messagebundle_lv.properties +6 -0
- package/src/i18n/messagebundle_ms.properties +6 -0
- package/src/i18n/messagebundle_nl.properties +6 -0
- package/src/i18n/messagebundle_no.properties +6 -0
- package/src/i18n/messagebundle_pl.properties +6 -0
- package/src/i18n/messagebundle_pt.properties +6 -0
- package/src/i18n/messagebundle_pt_PT.properties +6 -0
- package/src/i18n/messagebundle_ro.properties +6 -0
- package/src/i18n/messagebundle_ru.properties +6 -0
- package/src/i18n/messagebundle_sh.properties +6 -0
- package/src/i18n/messagebundle_sk.properties +6 -0
- package/src/i18n/messagebundle_sl.properties +6 -0
- package/src/i18n/messagebundle_sv.properties +6 -0
- package/src/i18n/messagebundle_th.properties +6 -0
- package/src/i18n/messagebundle_tr.properties +6 -0
- package/src/i18n/messagebundle_uk.properties +6 -0
- package/src/i18n/messagebundle_vi.properties +6 -0
- package/src/i18n/messagebundle_zh_CN.properties +6 -0
- package/src/i18n/messagebundle_zh_TW.properties +6 -0
- package/src/themes/Avatar.css +37 -52
- package/src/themes/Badge.css +1 -7
- package/src/themes/BreadcrumbsPopover.css +4 -0
- package/src/themes/Button.css +62 -87
- package/src/themes/CalendarHeader.css +2 -7
- package/src/themes/Card.css +7 -4
- package/src/themes/CardHeader.css +24 -26
- package/src/themes/CheckBox.css +8 -24
- package/src/themes/ColorPalette.css +2 -0
- package/src/themes/ColorPalettePopover.css +4 -0
- package/src/themes/ColorPicker.css +16 -0
- package/src/themes/ComboBox.css +1 -0
- package/src/themes/DateTimePickerPopover.css +5 -1
- package/src/themes/Dialog.css +20 -6
- package/src/themes/Icon.css +15 -3
- package/src/themes/Input.css +174 -131
- package/src/themes/InputIcon.css +12 -3
- package/src/themes/Label.css +1 -7
- package/src/themes/Link.css +32 -15
- package/src/themes/ListItem.css +8 -38
- package/src/themes/Menu.css +101 -0
- package/src/themes/MessageStrip.css +17 -47
- package/src/themes/MultiComboBox.css +1 -0
- package/src/themes/Panel.css +21 -14
- package/src/themes/PopupsCommon.css +12 -11
- package/src/themes/RadioButton.css +74 -8
- package/src/themes/ResponsivePopoverCommon.css +50 -50
- package/src/themes/SegmentedButton.css +36 -10
- package/src/themes/Select.css +1 -5
- package/src/themes/SplitButton.css +143 -32
- package/src/themes/StepInput.css +10 -8
- package/src/themes/Suggestions.css +4 -0
- package/src/themes/TabContainer.css +35 -2
- package/src/themes/TabInOverflow.css +15 -9
- package/src/themes/TabInStrip.css +67 -28
- package/src/themes/TabSeparatorInOverflow.css +2 -1
- package/src/themes/Table.css +7 -2
- package/src/themes/TableCell.css +2 -6
- package/src/themes/TableColumn.css +1 -3
- package/src/themes/TableGroupRow.css +6 -4
- package/src/themes/TableRow.css +28 -20
- package/src/themes/TextArea.css +93 -36
- package/src/themes/Title.css +7 -7
- package/src/themes/Toast.css +1 -1
- package/src/themes/ToggleButton.css +90 -50
- package/src/themes/TreeListItem.css +1 -7
- package/src/themes/ValueStateMessage.css +8 -10
- package/src/themes/base/Avatar-parameters.css +19 -0
- package/src/themes/base/Button-parameters.css +5 -0
- package/src/themes/base/Card-parameters.css +5 -3
- package/src/themes/base/CheckBox-parameters.css +5 -2
- package/src/themes/base/Dialog-parameters.css +5 -4
- package/src/themes/base/Input-parameters.css +44 -44
- package/src/themes/base/InputIcon-parameters.css +10 -2
- package/src/themes/base/Link-parameters.css +7 -1
- package/src/themes/base/MessageStrip-parameters.css +4 -7
- package/src/themes/base/Panel-parameters.css +4 -4
- package/src/themes/base/PopupsCommon-parameters.css +1 -3
- package/src/themes/base/RadioButton-parameters.css +18 -2
- package/src/themes/base/SegmentedButtton-parameters.css +3 -2
- package/src/themes/base/SplitButton-parameters.css +17 -0
- package/src/themes/base/StepInput-parameters.css +1 -0
- package/src/themes/base/TabContainer-parameters.css +15 -0
- package/src/themes/base/Table-parameters.css +2 -0
- package/src/themes/base/TableGroupRow-parameters.css +4 -0
- package/src/themes/base/TextArea-parameters.css +8 -6
- package/src/themes/base/ValueStateMessage-parameters.css +6 -0
- package/src/themes/base/rtl-parameters.css +16 -0
- package/src/themes/base/sizes-parameters.css +47 -6
- package/src/themes/sap_belize/Card-parameters.css +5 -0
- package/src/themes/sap_belize/Input-parameters.css +16 -1
- package/src/themes/sap_belize/InputIcon-parameters.css +1 -1
- package/src/themes/sap_belize/Panel-parameters.css +12 -0
- package/src/themes/sap_belize/PopupsCommon-parameters.css +5 -0
- package/src/themes/sap_belize/SplitButton-parameters.css +6 -0
- package/src/themes/sap_belize/TableRow-parameters.css +5 -0
- package/src/themes/sap_belize/parameters-bundle.css +8 -5
- package/src/themes/sap_belize/sizes-parameters.css +15 -0
- package/src/themes/sap_belize_hcb/Button-parameters.css +2 -2
- package/src/themes/sap_belize_hcb/Card-parameters.css +2 -1
- package/src/themes/sap_belize_hcb/Input-parameters.css +19 -0
- package/src/themes/sap_belize_hcb/InputIcon-parameters.css +1 -1
- package/src/themes/sap_belize_hcb/Link-parameters.css +2 -1
- package/src/themes/sap_belize_hcb/MessageStrip-parameters.css +0 -1
- package/src/themes/sap_belize_hcb/Panel-parameters.css +8 -0
- package/src/themes/sap_belize_hcb/PopupsCommon-parameters.css +5 -0
- package/src/themes/sap_belize_hcb/RadioButton-parameters.css +6 -2
- package/src/themes/sap_belize_hcb/SplitButton-parameters.css +10 -0
- package/src/themes/sap_belize_hcb/TableRow-parameters.css +1 -0
- package/src/themes/sap_belize_hcb/TextArea-parameters.css +3 -0
- package/src/themes/sap_belize_hcb/ValueStateMessage-parameters.css +2 -0
- package/src/themes/sap_belize_hcb/parameters-bundle.css +6 -3
- package/src/themes/sap_belize_hcb/sizes-parameters.css +15 -0
- package/src/themes/sap_belize_hcw/Button-parameters.css +2 -2
- package/src/themes/sap_belize_hcw/Card-parameters.css +2 -1
- package/src/themes/sap_belize_hcw/Input-parameters.css +19 -0
- package/src/themes/sap_belize_hcw/InputIcon-parameters.css +1 -1
- package/src/themes/sap_belize_hcw/Link-parameters.css +2 -1
- package/src/themes/sap_belize_hcw/MessageStrip-parameters.css +0 -1
- package/src/themes/sap_belize_hcw/Panel-parameters.css +8 -0
- package/src/themes/sap_belize_hcw/PopupsCommon-parameters.css +5 -0
- package/src/themes/sap_belize_hcw/RadioButton-parameters.css +5 -1
- package/src/themes/sap_belize_hcw/SplitButton-parameters.css +10 -0
- package/src/themes/sap_belize_hcw/TableRow-parameters.css +1 -0
- package/src/themes/sap_belize_hcw/TextArea-parameters.css +3 -0
- package/src/themes/sap_belize_hcw/ValueStateMessage-parameters.css +2 -0
- package/src/themes/sap_belize_hcw/parameters-bundle.css +7 -4
- package/src/themes/sap_belize_hcw/sizes-parameters.css +15 -0
- package/src/themes/sap_fiori_3/Button-parameters.css +1 -0
- package/src/themes/sap_fiori_3/Input-parameters.css +0 -2
- package/src/themes/sap_fiori_3/Link-parameters.css +0 -1
- package/src/themes/sap_fiori_3/Panel-parameters.css +0 -1
- package/src/themes/sap_fiori_3/TabContainer-parameters.css +1 -0
- package/src/themes/sap_fiori_3/parameters-bundle.css +4 -1
- package/src/themes/sap_fiori_3_dark/Button-parameters.css +1 -0
- package/src/themes/sap_fiori_3_dark/Input-parameters.css +0 -2
- package/src/themes/sap_fiori_3_dark/Link-parameters.css +0 -1
- package/src/themes/sap_fiori_3_dark/Panel-parameters.css +0 -1
- package/src/themes/sap_fiori_3_dark/TabContainer-parameters.css +1 -0
- package/src/themes/sap_fiori_3_dark/parameters-bundle.css +4 -1
- package/src/themes/sap_fiori_3_hcb/Button-parameters.css +3 -2
- package/src/themes/sap_fiori_3_hcb/Input-parameters.css +14 -7
- package/src/themes/sap_fiori_3_hcb/Link-parameters.css +4 -1
- package/src/themes/sap_fiori_3_hcb/MessageStrip-parameters.css +0 -1
- package/src/themes/sap_fiori_3_hcb/RadioButton-parameters.css +5 -1
- package/src/themes/sap_fiori_3_hcb/SplitButton-parameters.css +12 -0
- package/src/themes/sap_fiori_3_hcb/TextArea-parameters.css +3 -0
- package/src/themes/sap_fiori_3_hcb/ValueStateMessage-parameters.css +2 -0
- package/src/themes/sap_fiori_3_hcb/parameters-bundle.css +7 -4
- package/src/themes/sap_fiori_3_hcb/sizes-parameters.css +8 -0
- package/src/themes/sap_fiori_3_hcw/Button-parameters.css +3 -2
- package/src/themes/sap_fiori_3_hcw/Input-parameters.css +14 -7
- package/src/themes/sap_fiori_3_hcw/Link-parameters.css +4 -1
- package/src/themes/sap_fiori_3_hcw/MessageStrip-parameters.css +0 -1
- package/src/themes/sap_fiori_3_hcw/RadioButton-parameters.css +5 -1
- package/src/themes/sap_fiori_3_hcw/SplitButton-parameters.css +12 -0
- package/src/themes/sap_fiori_3_hcw/TextArea-parameters.css +3 -0
- package/src/themes/sap_fiori_3_hcw/ValueStateMessage-parameters.css +2 -0
- package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +7 -4
- package/src/themes/sap_fiori_3_hcw/sizes-parameters.css +8 -0
- package/src/themes/sap_horizon/Avatar-parameters.css +47 -27
- package/src/themes/sap_horizon/BusyIndicator-parameters.css +1 -1
- package/src/themes/sap_horizon/Button-parameters.css +6 -7
- package/src/themes/sap_horizon/Card-parameters.css +8 -3
- package/src/themes/sap_horizon/CheckBox-parameters.css +38 -23
- package/src/themes/sap_horizon/Dialog-parameters.css +6 -6
- package/src/themes/sap_horizon/Icon-parameters.css +3 -0
- package/src/themes/sap_horizon/Input-parameters.css +28 -29
- package/src/themes/sap_horizon/InputIcon-parameters.css +11 -4
- package/src/themes/sap_horizon/Link-parameters.css +6 -2
- package/src/themes/sap_horizon/MessageStrip-parameters.css +1 -5
- package/src/themes/sap_horizon/Panel-parameters.css +2 -3
- package/src/themes/sap_horizon/RadioButton-parameters.css +10 -4
- package/src/themes/sap_horizon/SegmentedButtton-parameters.css +1 -1
- package/src/themes/sap_horizon/SplitButton-parameters.css +17 -0
- package/src/themes/sap_horizon/TabContainer-parameters.css +13 -4
- package/src/themes/sap_horizon/Table-parameters.css +2 -1
- package/src/themes/sap_horizon/TableGroupRow-parameters.css +6 -0
- package/src/themes/sap_horizon/TextArea-parameters.css +1 -6
- package/src/themes/sap_horizon/ToggleButton-parameters.css +1 -11
- package/src/themes/sap_horizon/ValueStateMessage-parameters.css +4 -1
- package/src/themes/sap_horizon/parameters-bundle.css +5 -3
- package/src/themes/sap_horizon/sizes-parameters.css +10 -0
- package/src/themes/sap_horizon_dark/Avatar-parameters.css +47 -27
- package/src/themes/sap_horizon_dark/BusyIndicator-parameters.css +1 -1
- package/src/themes/sap_horizon_dark/Button-parameters.css +6 -7
- package/src/themes/sap_horizon_dark/Card-parameters.css +8 -3
- package/src/themes/sap_horizon_dark/CheckBox-parameters.css +38 -23
- package/src/themes/sap_horizon_dark/Dialog-parameters.css +6 -6
- package/src/themes/sap_horizon_dark/Icon-parameters.css +3 -0
- package/src/themes/sap_horizon_dark/Input-parameters.css +27 -28
- package/src/themes/sap_horizon_dark/InputIcon-parameters.css +11 -4
- package/src/themes/sap_horizon_dark/Link-parameters.css +6 -2
- package/src/themes/sap_horizon_dark/MessageStrip-parameters.css +1 -5
- package/src/themes/sap_horizon_dark/Panel-parameters.css +2 -3
- package/src/themes/sap_horizon_dark/RadioButton-parameters.css +10 -4
- package/src/themes/sap_horizon_dark/SegmentedButtton-parameters.css +1 -1
- package/src/themes/sap_horizon_dark/SplitButton-parameters.css +17 -0
- package/src/themes/sap_horizon_dark/Table-parameters.css +2 -1
- package/src/themes/sap_horizon_dark/TableGroupRow-parameters.css +6 -0
- package/src/themes/sap_horizon_dark/TextArea-parameters.css +1 -6
- package/src/themes/sap_horizon_dark/ToggleButton-parameters.css +1 -11
- package/src/themes/sap_horizon_dark/ValueStateMessage-parameters.css +4 -1
- package/src/themes/sap_horizon_dark/parameters-bundle.css +5 -3
- package/src/themes/sap_horizon_dark/sizes-parameters.css +10 -0
- package/src/themes/sap_horizon_exp/Input-parameters.css +34 -37
- package/src/themes/sap_horizon_exp/InputIcon-parameters.css +4 -0
- package/src/themes/sap_horizon_exp/Link-parameters.css +1 -1
- package/src/themes/sap_horizon_exp/Panel-parameters.css +0 -1
- package/src/themes/sap_horizon_exp/Popover-parameters.css +0 -1
- package/src/themes/sap_horizon_exp/parameters-bundle.css +1 -1
- package/src/themes/sap_horizon_hcb/Avatar-parameters.css +44 -15
- package/src/themes/sap_horizon_hcb/BusyIndicator-parameters.css +5 -0
- package/src/themes/sap_horizon_hcb/Button-parameters.css +6 -6
- package/src/themes/sap_horizon_hcb/Card-parameters.css +6 -1
- package/src/themes/sap_horizon_hcb/CheckBox-parameters.css +46 -10
- package/src/themes/sap_horizon_hcb/Dialog-parameters.css +2 -3
- package/src/themes/sap_horizon_hcb/Input-parameters.css +17 -7
- package/src/themes/sap_horizon_hcb/InputIcon-parameters.css +7 -1
- package/src/themes/sap_horizon_hcb/Link-parameters.css +4 -1
- package/src/themes/sap_horizon_hcb/MessageStrip-parameters.css +1 -1
- package/src/themes/sap_horizon_hcb/Panel-parameters.css +3 -0
- package/src/themes/sap_horizon_hcb/RadioButton-parameters.css +9 -3
- package/src/themes/sap_horizon_hcb/SegmentedButtton-parameters.css +9 -0
- package/src/themes/sap_horizon_hcb/SplitButton-parameters.css +12 -0
- package/src/themes/sap_horizon_hcb/Table-parameters.css +4 -0
- package/src/themes/sap_horizon_hcb/TableGroupRow-parameters.css +6 -0
- package/src/themes/sap_horizon_hcb/TextArea-parameters.css +7 -0
- package/src/themes/sap_horizon_hcb/ToggleButton-parameters.css +1 -6
- package/src/themes/sap_horizon_hcb/ValueStateMessage-parameters.css +8 -0
- package/src/themes/sap_horizon_hcb/parameters-bundle.css +6 -3
- package/src/themes/sap_horizon_hcb/sizes-parameters.css +8 -0
- package/src/themes/sap_horizon_hcw/Avatar-parameters.css +44 -15
- package/src/themes/sap_horizon_hcw/BusyIndicator-parameters.css +5 -0
- package/src/themes/sap_horizon_hcw/Button-parameters.css +7 -7
- package/src/themes/sap_horizon_hcw/Card-parameters.css +6 -1
- package/src/themes/sap_horizon_hcw/CheckBox-parameters.css +46 -10
- package/src/themes/sap_horizon_hcw/Dialog-parameters.css +2 -3
- package/src/themes/sap_horizon_hcw/Input-parameters.css +17 -7
- package/src/themes/sap_horizon_hcw/InputIcon-parameters.css +7 -1
- package/src/themes/sap_horizon_hcw/Link-parameters.css +4 -1
- package/src/themes/sap_horizon_hcw/MessageStrip-parameters.css +1 -1
- package/src/themes/sap_horizon_hcw/Panel-parameters.css +4 -0
- package/src/themes/sap_horizon_hcw/RadioButton-parameters.css +11 -1
- package/src/themes/sap_horizon_hcw/SegmentedButtton-parameters.css +9 -0
- package/src/themes/sap_horizon_hcw/SplitButton-parameters.css +12 -0
- package/src/themes/sap_horizon_hcw/Table-parameters.css +4 -0
- package/src/themes/sap_horizon_hcw/TableGroupRow-parameters.css +6 -0
- package/src/themes/sap_horizon_hcw/TextArea-parameters.css +7 -0
- package/src/themes/sap_horizon_hcw/ToggleButton-parameters.css +1 -6
- package/src/themes/sap_horizon_hcw/ValueStateMessage-parameters.css +8 -0
- package/src/themes/sap_horizon_hcw/parameters-bundle.css +6 -3
- package/src/themes/sap_horizon_hcw/sizes-parameters.css +8 -0
- package/src/types/ListGrowingMode.js +36 -3
- package/src/types/TableGrowingMode.js +35 -2
- package/dist/webcomponentsjs/CHANGELOG.md +0 -61
- package/dist/webcomponentsjs/LICENSE.md +0 -19
- package/dist/webcomponentsjs/README.md +0 -246
- package/dist/webcomponentsjs/bundles/webcomponents-ce.js +0 -63
- package/dist/webcomponentsjs/bundles/webcomponents-ce.js.map +0 -1
- package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js +0 -60
- package/dist/webcomponentsjs/bundles/webcomponents-pf_dom.js.map +0 -1
- package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js +0 -95
- package/dist/webcomponentsjs/bundles/webcomponents-pf_js.js.map +0 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js +0 -360
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce-pf.js.map +0 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js +0 -228
- package/dist/webcomponentsjs/bundles/webcomponents-sd-ce.js.map +0 -1
- package/dist/webcomponentsjs/bundles/webcomponents-sd.js +0 -185
- package/dist/webcomponentsjs/bundles/webcomponents-sd.js.map +0 -1
- package/dist/webcomponentsjs/custom-elements-es5-adapter.js +0 -15
- package/dist/webcomponentsjs/webcomponents-bundle.js +0 -370
- package/dist/webcomponentsjs/webcomponents-bundle.js.map +0 -1
- package/dist/webcomponentsjs/webcomponents-loader.js +0 -206
- package/src/themes/base/Title-parameters.css +0 -8
- package/src/themes/sap_belize_hcb/Dialog-parameters.css +0 -7
- package/src/themes/sap_belize_hcw/Dialog-parameters.css +0 -7
- package/src/themes/sap_fiori_3_hcb/Dialog-parameters.css +0 -7
- package/src/themes/sap_fiori_3_hcb/InputIcon-parameters.css +0 -5
- package/src/themes/sap_fiori_3_hcw/Dialog-parameters.css +0 -7
- package/src/themes/sap_fiori_3_hcw/InputIcon-parameters.css +0 -5
- package/src/themes/sap_horizon/PopupsCommon-parameters.css +0 -9
- package/src/themes/sap_horizon_dark/PopupsCommon-parameters.css +0 -10
package/src/Table.js
CHANGED
|
@@ -6,6 +6,8 @@ import Integer from "@ui5/webcomponents-base/dist/types/Integer.js";
|
|
|
6
6
|
import NavigationMode from "@ui5/webcomponents-base/dist/types/NavigationMode.js";
|
|
7
7
|
import { isIE } from "@ui5/webcomponents-base/dist/Device.js";
|
|
8
8
|
import {
|
|
9
|
+
isTabNext,
|
|
10
|
+
isTabPrevious,
|
|
9
11
|
isSpace,
|
|
10
12
|
isEnter,
|
|
11
13
|
isCtrlA,
|
|
@@ -18,7 +20,10 @@ import {
|
|
|
18
20
|
isHomeShift,
|
|
19
21
|
isEndShift,
|
|
20
22
|
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
21
|
-
import
|
|
23
|
+
import getNormalizedTarget from "@ui5/webcomponents-base/dist/util/getNormalizedTarget.js";
|
|
24
|
+
import getActiveElement from "@ui5/webcomponents-base/dist/util/getActiveElement.js";
|
|
25
|
+
import { getLastTabbableElement, getTabbableElements } from "@ui5/webcomponents-base/dist/util/TabbableElements.js";
|
|
26
|
+
import { getEffectiveAriaLabelText } from "@ui5/webcomponents-base/dist/util/AriaLabelHelper.js";
|
|
22
27
|
import { getI18nBundle } from "@ui5/webcomponents-base/dist/i18nBundle.js";
|
|
23
28
|
import debounce from "@ui5/webcomponents-base/dist/util/debounce.js";
|
|
24
29
|
import isElementInView from "@ui5/webcomponents-base/dist/util/isElementInView.js";
|
|
@@ -43,6 +48,8 @@ import styles from "./generated/themes/Table.css.js";
|
|
|
43
48
|
|
|
44
49
|
const GROWING_WITH_SCROLL_DEBOUNCE_RATE = 250; // ms
|
|
45
50
|
|
|
51
|
+
const PAGE_UP_DOWN_SIZE = 20;
|
|
52
|
+
|
|
46
53
|
/**
|
|
47
54
|
* @public
|
|
48
55
|
*/
|
|
@@ -246,6 +253,32 @@ const metadata = {
|
|
|
246
253
|
defaultValue: TableMode.None,
|
|
247
254
|
},
|
|
248
255
|
|
|
256
|
+
/**
|
|
257
|
+
* Defines the accessible aria name of the component.
|
|
258
|
+
*
|
|
259
|
+
* @type {string}
|
|
260
|
+
* @defaultvalue: ""
|
|
261
|
+
* @public
|
|
262
|
+
* @since 1.3.0
|
|
263
|
+
*/
|
|
264
|
+
accessibleName: {
|
|
265
|
+
type: String,
|
|
266
|
+
defaultValue: undefined,
|
|
267
|
+
},
|
|
268
|
+
|
|
269
|
+
/**
|
|
270
|
+
* Receives id(or many ids) of the elements that label the component.
|
|
271
|
+
*
|
|
272
|
+
* @type {string}
|
|
273
|
+
* @defaultvalue ""
|
|
274
|
+
* @public
|
|
275
|
+
* @since 1.3.0
|
|
276
|
+
*/
|
|
277
|
+
accessibleNameRef: {
|
|
278
|
+
type: String,
|
|
279
|
+
defaultValue: "",
|
|
280
|
+
},
|
|
281
|
+
|
|
249
282
|
_hiddenColumns: {
|
|
250
283
|
type: Object,
|
|
251
284
|
multiple: true,
|
|
@@ -397,7 +430,8 @@ const metadata = {
|
|
|
397
430
|
* <li>[ALT]+[DOWN]/[UP] - Switches focus between header, last focused item, and More button (if applies) in either direction.</li>
|
|
398
431
|
* <li>[SHIFT]+[DOWN]/[UP] - Selects the next/previous item in a MultiSelect table, if the current item is selected (Range selection). Otherwise, deselects them (Range deselection).</li>
|
|
399
432
|
* <li>[SHIFT]+[HOME]/[END] - Range selection to the first/last item of the List.</li>
|
|
400
|
-
* <li>[CTRL]+[HOME]/[END] - Same behavior as HOME & END.</li>
|
|
433
|
+
* <li>[CTRL]+[HOME]/[END] - Same behavior as HOME & END.</li>
|
|
434
|
+
* </ul>
|
|
401
435
|
*
|
|
402
436
|
* <h3>ES6 Module Import</h3>
|
|
403
437
|
*
|
|
@@ -455,17 +489,28 @@ class Table extends UI5Element {
|
|
|
455
489
|
navigationMode: NavigationMode.Vertical,
|
|
456
490
|
affectedPropertiesNames: ["_columnHeader"],
|
|
457
491
|
getItemsCallback: () => [this._columnHeader, ...this.rows],
|
|
458
|
-
skipItemsSize:
|
|
492
|
+
skipItemsSize: PAGE_UP_DOWN_SIZE,
|
|
459
493
|
});
|
|
460
494
|
|
|
461
495
|
this.fnOnRowFocused = this.onRowFocused.bind(this);
|
|
462
496
|
|
|
463
497
|
this._handleResize = this.popinContent.bind(this);
|
|
464
498
|
|
|
499
|
+
this.fnHandleF7 = this._handleF7.bind(this);
|
|
500
|
+
|
|
465
501
|
this.tableEndObserved = false;
|
|
466
502
|
|
|
467
503
|
this.addEventListener("ui5-selection-requested", this._handleSelect.bind(this));
|
|
504
|
+
this.addEventListener("ui5-_forward-after", this._onForwardAfter.bind(this));
|
|
505
|
+
this.addEventListener("ui5-_forward-before", this._onForwardBefore.bind(this));
|
|
506
|
+
|
|
507
|
+
// Stores the last focused element within the table.
|
|
508
|
+
this.lastFocusedElement = null;
|
|
509
|
+
|
|
510
|
+
// Indicates whether the table is forwarding focus before or after the current table row.
|
|
511
|
+
this._forwardingFocus = false;
|
|
468
512
|
|
|
513
|
+
// Stores the last focused nested element index (within a table row) for F7 navigation.
|
|
469
514
|
this._prevNestedElementIndex = 0;
|
|
470
515
|
}
|
|
471
516
|
|
|
@@ -485,6 +530,8 @@ class Table extends UI5Element {
|
|
|
485
530
|
row._busy = this.busy;
|
|
486
531
|
row.removeEventListener("ui5-_focused", this.fnOnRowFocused);
|
|
487
532
|
row.addEventListener("ui5-_focused", this.fnOnRowFocused);
|
|
533
|
+
row.removeEventListener("ui5-f7-pressed", this.fnHandleF7);
|
|
534
|
+
row.addEventListener("ui5-f7-pressed", this.fnHandleF7);
|
|
488
535
|
row.mode = this.mode;
|
|
489
536
|
});
|
|
490
537
|
|
|
@@ -497,7 +544,7 @@ class Table extends UI5Element {
|
|
|
497
544
|
|
|
498
545
|
this._allRowsSelected = selectedRows.length === this.rows.length;
|
|
499
546
|
|
|
500
|
-
this.
|
|
547
|
+
this._prevFocusedRow = this._prevFocusedRow || this.rows[0];
|
|
501
548
|
}
|
|
502
549
|
|
|
503
550
|
onAfterRendering() {
|
|
@@ -516,14 +563,6 @@ class Table extends UI5Element {
|
|
|
516
563
|
ResizeHandler.register(this.getDomRef(), this._handleResize);
|
|
517
564
|
|
|
518
565
|
this._itemNavigation.setCurrentItem(this.rows.length ? this.rows[0] : this._columnHeader);
|
|
519
|
-
|
|
520
|
-
this.rows.forEach((row, index) => {
|
|
521
|
-
row._tabbableElements = getTabbableElements(row);
|
|
522
|
-
|
|
523
|
-
if (index > 0) {
|
|
524
|
-
row._tabbableElements.forEach(el => el.setAttribute("tabindex", "-1"));
|
|
525
|
-
}
|
|
526
|
-
});
|
|
527
566
|
}
|
|
528
567
|
|
|
529
568
|
onExitDOM() {
|
|
@@ -537,16 +576,17 @@ class Table extends UI5Element {
|
|
|
537
576
|
}
|
|
538
577
|
|
|
539
578
|
_onkeydown(event) {
|
|
579
|
+
if (isTabNext(event) || isTabPrevious(event)) {
|
|
580
|
+
this._handleTab(event);
|
|
581
|
+
}
|
|
582
|
+
|
|
540
583
|
if (isCtrlA(event)) {
|
|
541
584
|
event.preventDefault();
|
|
542
585
|
this.isMultiSelect && this._selectAll(event);
|
|
543
|
-
return;
|
|
544
586
|
}
|
|
545
587
|
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
if (isAltUp || isDownAlt(event)) {
|
|
549
|
-
return this._handleArrowAlt(isAltUp, event.target);
|
|
588
|
+
if (isUpAlt(event) || isDownAlt(event)) {
|
|
589
|
+
this._handleArrowAlt(event);
|
|
550
590
|
}
|
|
551
591
|
|
|
552
592
|
if ((isUpShift(event) || isDownShift(event)) && this.isMultiSelect) {
|
|
@@ -574,6 +614,50 @@ class Table extends UI5Element {
|
|
|
574
614
|
}
|
|
575
615
|
}
|
|
576
616
|
|
|
617
|
+
_handleTab(event) {
|
|
618
|
+
const isNext = isTabNext(event);
|
|
619
|
+
const target = getNormalizedTarget(event.target);
|
|
620
|
+
const targetType = this.getFocusedElementType(event.target);
|
|
621
|
+
|
|
622
|
+
if (this.columnHeaderTabbables.includes(target)) {
|
|
623
|
+
if (isNext && this.columnHeaderLastElement === target) {
|
|
624
|
+
return this._focusNextElement(event);
|
|
625
|
+
}
|
|
626
|
+
|
|
627
|
+
return;
|
|
628
|
+
}
|
|
629
|
+
|
|
630
|
+
if (isNext && targetType === "columnHeader" && !this.columnHeaderTabbables.length) {
|
|
631
|
+
return this._focusNextElement(event);
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
if (targetType === "tableRow" || !targetType) {
|
|
635
|
+
return;
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
switch (targetType) {
|
|
639
|
+
case "tableGroupRow":
|
|
640
|
+
return isNext ? this._focusNextElement(event) : this._focusForwardElement(event, false);
|
|
641
|
+
case "columnHeader":
|
|
642
|
+
return !isNext && this._focusForwardElement(event, false);
|
|
643
|
+
case "moreButton":
|
|
644
|
+
if (isNext) {
|
|
645
|
+
this._focusForwardElement(event, true);
|
|
646
|
+
} else {
|
|
647
|
+
event.preventDefault();
|
|
648
|
+
this.currentElement.focus();
|
|
649
|
+
}
|
|
650
|
+
}
|
|
651
|
+
}
|
|
652
|
+
|
|
653
|
+
_focusNextElement(event) {
|
|
654
|
+
if (!this.growsWithButton) {
|
|
655
|
+
this._focusForwardElement(event, true);
|
|
656
|
+
} else {
|
|
657
|
+
this.morеBtn.focus();
|
|
658
|
+
}
|
|
659
|
+
}
|
|
660
|
+
|
|
577
661
|
_handleArrowNav(event) {
|
|
578
662
|
const isRowFocused = this.currentElement.localName === "tr";
|
|
579
663
|
|
|
@@ -654,40 +738,39 @@ class Table extends UI5Element {
|
|
|
654
738
|
* Handles Alt + Up/Down.
|
|
655
739
|
* Switches focus between column header, last focused item, and "More" button (if applicable).
|
|
656
740
|
* @private
|
|
657
|
-
* @param {
|
|
658
|
-
* @param {object} focusedElement The element currently in focus
|
|
741
|
+
* @param {CustomEvent} event
|
|
659
742
|
*/
|
|
660
|
-
_handleArrowAlt(
|
|
661
|
-
const
|
|
662
|
-
const
|
|
743
|
+
_handleArrowAlt(event) {
|
|
744
|
+
const shouldMoveUp = isUpAlt(event);
|
|
745
|
+
const focusedElementType = this.getFocusedElementType(event.target);
|
|
663
746
|
|
|
664
747
|
if (shouldMoveUp) {
|
|
665
748
|
switch (focusedElementType) {
|
|
666
749
|
case "tableRow":
|
|
667
|
-
|
|
668
|
-
|
|
750
|
+
case "tableGroupRow":
|
|
751
|
+
this._prevFocusedRow = event.target;
|
|
752
|
+
return this._onColumnHeaderClick(event);
|
|
669
753
|
case "columnHeader":
|
|
670
|
-
return
|
|
754
|
+
return this.morеBtn ? this.morеBtn.focus() : this._prevFocusedRow.focus();
|
|
671
755
|
case "moreButton":
|
|
672
|
-
return this.
|
|
756
|
+
return this._prevFocusedRow ? this._prevFocusedRow.focus() : this._onColumnHeaderClick(event);
|
|
673
757
|
}
|
|
674
758
|
} else {
|
|
675
759
|
switch (focusedElementType) {
|
|
676
760
|
case "tableRow":
|
|
677
|
-
|
|
678
|
-
|
|
761
|
+
case "tableGroupRow":
|
|
762
|
+
this._prevFocusedRow = event.target;
|
|
763
|
+
return this.morеBtn ? this.morеBtn.focus() : this._onColumnHeaderClick(event);
|
|
679
764
|
case "columnHeader":
|
|
680
|
-
if (this.
|
|
681
|
-
|
|
682
|
-
}
|
|
683
|
-
|
|
684
|
-
if (moreButton) {
|
|
685
|
-
return moreButton.focus();
|
|
765
|
+
if (this._prevFocusedRow) {
|
|
766
|
+
this._prevFocusedRow.focus();
|
|
767
|
+
} else if (this.morеBtn) {
|
|
768
|
+
this.morеBtn.focus();
|
|
686
769
|
}
|
|
687
770
|
|
|
688
771
|
return;
|
|
689
772
|
case "moreButton":
|
|
690
|
-
return this._onColumnHeaderClick();
|
|
773
|
+
return this._onColumnHeaderClick(event);
|
|
691
774
|
}
|
|
692
775
|
}
|
|
693
776
|
}
|
|
@@ -695,32 +778,133 @@ class Table extends UI5Element {
|
|
|
695
778
|
/**
|
|
696
779
|
* Determines the type of the currently focused element.
|
|
697
780
|
* @private
|
|
698
|
-
* @param {object} element The
|
|
699
|
-
* @returns {("columnHeader"|"tableRow"|"moreButton")} A string identifier
|
|
781
|
+
* @param {object} element The DOM element
|
|
782
|
+
* @returns {("columnHeader"|"tableRow"|"tableGroupRow"|"moreButton")} A string identifier
|
|
700
783
|
*/
|
|
701
784
|
getFocusedElementType(element) {
|
|
702
|
-
if (element === this.
|
|
785
|
+
if (element === this.columnHeader) {
|
|
703
786
|
return "columnHeader";
|
|
704
787
|
}
|
|
705
788
|
|
|
706
|
-
if (element === this.
|
|
789
|
+
if (element === this.morеBtn) {
|
|
707
790
|
return "moreButton";
|
|
708
791
|
}
|
|
709
792
|
|
|
710
793
|
if (this.rows.includes(element)) {
|
|
711
|
-
|
|
794
|
+
const isGroupRow = element.hasAttribute("ui5-table-group-row");
|
|
795
|
+
return isGroupRow ? "tableGroupRow" : "tableRow";
|
|
712
796
|
}
|
|
713
797
|
}
|
|
714
798
|
|
|
799
|
+
/**
|
|
800
|
+
* Toggles focus between the table row's root and the last focused nested element.
|
|
801
|
+
* @private
|
|
802
|
+
* @param {CustomEvent} event "ui5-f7-pressed"
|
|
803
|
+
*/
|
|
804
|
+
_handleF7(event) {
|
|
805
|
+
const row = event.detail.row;
|
|
806
|
+
row._tabbables = getTabbableElements(row);
|
|
807
|
+
const activeElement = getActiveElement();
|
|
808
|
+
const lastFocusedElement = row._tabbables[this._prevNestedElementIndex] || row._tabbables[0];
|
|
809
|
+
const targetIndex = row._tabbables.indexOf(activeElement);
|
|
810
|
+
|
|
811
|
+
if (!row._tabbables.length) {
|
|
812
|
+
return;
|
|
813
|
+
}
|
|
814
|
+
|
|
815
|
+
if (activeElement === row.root) {
|
|
816
|
+
lastFocusedElement.focus();
|
|
817
|
+
} else if (targetIndex > -1) {
|
|
818
|
+
this._prevNestedElementIndex = targetIndex;
|
|
819
|
+
row.root.focus();
|
|
820
|
+
}
|
|
821
|
+
}
|
|
822
|
+
|
|
823
|
+
_onfocusin(event) {
|
|
824
|
+
const target = getNormalizedTarget(event.target);
|
|
825
|
+
|
|
826
|
+
if (!this._isForwardElement(target)) {
|
|
827
|
+
this.lastFocusedElement = target;
|
|
828
|
+
return;
|
|
829
|
+
}
|
|
830
|
+
|
|
831
|
+
if (!this._forwardingFocus) {
|
|
832
|
+
if (this.lastFocusedElement) {
|
|
833
|
+
this.lastFocusedElement.focus();
|
|
834
|
+
} else {
|
|
835
|
+
this.currentElement.focus();
|
|
836
|
+
}
|
|
837
|
+
|
|
838
|
+
event.stopImmediatePropagation();
|
|
839
|
+
}
|
|
840
|
+
|
|
841
|
+
this._forwardingFocus = false;
|
|
842
|
+
}
|
|
843
|
+
|
|
844
|
+
_onForwardBefore(event) {
|
|
845
|
+
this.lastFocusedElement = event.detail.target;
|
|
846
|
+
this._focusForwardElement(event, false);
|
|
847
|
+
event.stopImmediatePropagation();
|
|
848
|
+
}
|
|
849
|
+
|
|
850
|
+
_onForwardAfter(event) {
|
|
851
|
+
this.lastFocusedElement = event.detail.target;
|
|
852
|
+
|
|
853
|
+
if (!this.growsWithButton) {
|
|
854
|
+
this._focusForwardElement(event, true);
|
|
855
|
+
} else {
|
|
856
|
+
this.morеBtn.focus();
|
|
857
|
+
}
|
|
858
|
+
}
|
|
859
|
+
|
|
860
|
+
_focusForwardElement(event, isAfter) {
|
|
861
|
+
this._forwardingFocus = true;
|
|
862
|
+
this.shadowRoot.querySelector(`#${this._id}-${isAfter ? "after" : "before"}`).focus();
|
|
863
|
+
}
|
|
864
|
+
|
|
865
|
+
_isForwardElement(node) {
|
|
866
|
+
const nodeId = node.id;
|
|
867
|
+
const afterElement = this._getForwardElement(true);
|
|
868
|
+
const beforeElement = this._getForwardElement(false);
|
|
869
|
+
|
|
870
|
+
if (this._id === nodeId || (beforeElement && beforeElement.id === nodeId)) {
|
|
871
|
+
return true;
|
|
872
|
+
}
|
|
873
|
+
|
|
874
|
+
return afterElement && afterElement.id === nodeId;
|
|
875
|
+
}
|
|
876
|
+
|
|
877
|
+
_getForwardElement(isAfter) {
|
|
878
|
+
const dir = isAfter ? "after" : "before";
|
|
879
|
+
|
|
880
|
+
if (!this[`_${dir}Element`]) {
|
|
881
|
+
this[`_${dir}Element`] = this.shadowRoot.querySelector(`#${this._id}-${dir}`);
|
|
882
|
+
}
|
|
883
|
+
|
|
884
|
+
return this[`_${dir}Element`];
|
|
885
|
+
}
|
|
886
|
+
|
|
715
887
|
onRowFocused(event) {
|
|
716
888
|
this._itemNavigation.setCurrentItem(event.target);
|
|
717
889
|
}
|
|
718
890
|
|
|
719
|
-
|
|
720
|
-
this.getColumnHeader().focus();
|
|
891
|
+
_onColumnHeaderFocused(event) {
|
|
721
892
|
this._itemNavigation.setCurrentItem(this._columnHeader);
|
|
722
893
|
}
|
|
723
894
|
|
|
895
|
+
_onColumnHeaderClick(event) {
|
|
896
|
+
if (!event.target) {
|
|
897
|
+
this.columnHeader.focus();
|
|
898
|
+
}
|
|
899
|
+
|
|
900
|
+
const target = getNormalizedTarget(event.target);
|
|
901
|
+
const isNestedElement = this.columnHeaderTabbables.includes(target);
|
|
902
|
+
|
|
903
|
+
if (!isNestedElement) {
|
|
904
|
+
this.columnHeader.focus();
|
|
905
|
+
}
|
|
906
|
+
}
|
|
907
|
+
|
|
724
908
|
_onColumnHeaderKeydown(event) {
|
|
725
909
|
if (isSpace(event)) {
|
|
726
910
|
event.preventDefault();
|
|
@@ -841,11 +1025,11 @@ class Table extends UI5Element {
|
|
|
841
1025
|
this.getRowParent(parent);
|
|
842
1026
|
}
|
|
843
1027
|
|
|
844
|
-
|
|
1028
|
+
get columnHeader() {
|
|
845
1029
|
return this.getDomRef() && this.getDomRef().querySelector(`#${this._id}-columnHeader`);
|
|
846
1030
|
}
|
|
847
1031
|
|
|
848
|
-
|
|
1032
|
+
get morеBtn() {
|
|
849
1033
|
return this.growsWithButton && this.getDomRef() && this.getDomRef().querySelector(`#${this._id}-growingButton`);
|
|
850
1034
|
}
|
|
851
1035
|
|
|
@@ -960,6 +1144,10 @@ class Table extends UI5Element {
|
|
|
960
1144
|
return `${headerRowText} ${columnsTitle}`;
|
|
961
1145
|
}
|
|
962
1146
|
|
|
1147
|
+
get tableAriaLabelText() {
|
|
1148
|
+
return getEffectiveAriaLabelText(this);
|
|
1149
|
+
}
|
|
1150
|
+
|
|
963
1151
|
get ariaLabelSelectAllText() {
|
|
964
1152
|
return Table.i18nBundle.getText(ARIA_LABEL_SELECT_ALL_CHECKBOX);
|
|
965
1153
|
}
|
|
@@ -1003,6 +1191,14 @@ class Table extends UI5Element {
|
|
|
1003
1191
|
get currentElement() {
|
|
1004
1192
|
return this._itemNavigation._getCurrentItem();
|
|
1005
1193
|
}
|
|
1194
|
+
|
|
1195
|
+
get columnHeaderTabbables() {
|
|
1196
|
+
return getTabbableElements(this.columnHeader);
|
|
1197
|
+
}
|
|
1198
|
+
|
|
1199
|
+
get columnHeaderLastElement() {
|
|
1200
|
+
return getLastTabbableElement(this.columnHeader);
|
|
1201
|
+
}
|
|
1006
1202
|
}
|
|
1007
1203
|
|
|
1008
1204
|
Table.define();
|
package/src/TableGroupRow.js
CHANGED
|
@@ -69,6 +69,9 @@ const metadata = {
|
|
|
69
69
|
noAttribute: true,
|
|
70
70
|
},
|
|
71
71
|
},
|
|
72
|
+
events: /** @lends sap.ui.webcomponents.main.TableGroupRow.prototype */ {
|
|
73
|
+
_focused: {},
|
|
74
|
+
},
|
|
72
75
|
};
|
|
73
76
|
|
|
74
77
|
/**
|
|
@@ -151,7 +154,7 @@ class TableGroupRow extends UI5Element {
|
|
|
151
154
|
}
|
|
152
155
|
|
|
153
156
|
_onfocusin(event) {
|
|
154
|
-
this.
|
|
157
|
+
this.fireEvent("_focused", event);
|
|
155
158
|
}
|
|
156
159
|
|
|
157
160
|
static async onDefine() {
|
package/src/TableRow.js
CHANGED
|
@@ -8,6 +8,8 @@ import {
|
|
|
8
8
|
isTabNext,
|
|
9
9
|
isTabPrevious,
|
|
10
10
|
} from "@ui5/webcomponents-base/dist/Keys.js";
|
|
11
|
+
import getActiveElement from "@ui5/webcomponents-base/dist/util/getActiveElement.js";
|
|
12
|
+
import { getLastTabbableElement } from "@ui5/webcomponents-base/dist/util/TabbableElements.js";
|
|
11
13
|
import CheckBox from "./CheckBox.js";
|
|
12
14
|
import TableMode from "./types/TableMode.js";
|
|
13
15
|
import TableRowType from "./types/TableRowType.js";
|
|
@@ -113,13 +115,6 @@ const metadata = {
|
|
|
113
115
|
defaultValue: "",
|
|
114
116
|
noAttribute: true,
|
|
115
117
|
},
|
|
116
|
-
_tabbableElements: {
|
|
117
|
-
type: Object,
|
|
118
|
-
multiple: true,
|
|
119
|
-
},
|
|
120
|
-
_tabMarked: {
|
|
121
|
-
type: Boolean,
|
|
122
|
-
},
|
|
123
118
|
},
|
|
124
119
|
events: /** @lends sap.ui.webcomponents.main.TableRow.prototype */ {
|
|
125
120
|
/**
|
|
@@ -139,6 +134,14 @@ const metadata = {
|
|
|
139
134
|
* @private
|
|
140
135
|
*/
|
|
141
136
|
"selection-requested": {},
|
|
137
|
+
/**
|
|
138
|
+
* Fired when F7 is pressed.
|
|
139
|
+
*
|
|
140
|
+
* @event sap.ui.webcomponents.main.TableRow#f7-pressed
|
|
141
|
+
* @since 1.2.0
|
|
142
|
+
* @private
|
|
143
|
+
*/
|
|
144
|
+
"f7-pressed": {},
|
|
142
145
|
},
|
|
143
146
|
};
|
|
144
147
|
|
|
@@ -188,23 +191,35 @@ class TableRow extends UI5Element {
|
|
|
188
191
|
return [CheckBox];
|
|
189
192
|
}
|
|
190
193
|
|
|
194
|
+
constructor() {
|
|
195
|
+
super();
|
|
196
|
+
|
|
197
|
+
this._ontouchstart = {
|
|
198
|
+
handleEvent(event) {
|
|
199
|
+
this.activate();
|
|
200
|
+
},
|
|
201
|
+
passive: true,
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
|
|
191
205
|
_onmouseup() {
|
|
192
206
|
this.deactivate();
|
|
193
207
|
}
|
|
194
208
|
|
|
195
209
|
_onkeydown(event) {
|
|
210
|
+
const activeElement = getActiveElement();
|
|
196
211
|
const itemActive = this.type === TableRowType.Active;
|
|
197
212
|
const isSingleSelect = this.isSingleSelect;
|
|
198
213
|
const itemSelectable = isSingleSelect || this.isMultiSelect;
|
|
199
214
|
const isRowFocused = this._activeElementHasAttribute("ui5-table-row");
|
|
200
215
|
const checkboxPressed = event.target.classList.contains("ui5-multi-select-checkbox");
|
|
201
216
|
|
|
202
|
-
if (isTabNext(event)
|
|
203
|
-
this.
|
|
217
|
+
if (isTabNext(event) && activeElement === (getLastTabbableElement(this) || this.root)) {
|
|
218
|
+
this.fireEvent("_forward-after", { target: activeElement });
|
|
204
219
|
}
|
|
205
220
|
|
|
206
|
-
if (
|
|
207
|
-
this.
|
|
221
|
+
if (isTabPrevious(event) && activeElement === this.root) {
|
|
222
|
+
this.fireEvent("_forward-before", { target: activeElement });
|
|
208
223
|
}
|
|
209
224
|
|
|
210
225
|
if (isSpace(event) && event.target.tagName.toLowerCase() === "tr") {
|
|
@@ -226,7 +241,7 @@ class TableRow extends UI5Element {
|
|
|
226
241
|
|
|
227
242
|
if (isF7(event)) {
|
|
228
243
|
event.preventDefault();
|
|
229
|
-
this.
|
|
244
|
+
this.fireEvent("f7-pressed", { row: this });
|
|
230
245
|
}
|
|
231
246
|
}
|
|
232
247
|
|
|
@@ -236,34 +251,20 @@ class TableRow extends UI5Element {
|
|
|
236
251
|
}
|
|
237
252
|
}
|
|
238
253
|
|
|
239
|
-
_ontouchstart(event) {
|
|
240
|
-
this.activate();
|
|
241
|
-
}
|
|
242
|
-
|
|
243
254
|
_ontouchend() {
|
|
244
255
|
this.deactivate();
|
|
245
256
|
}
|
|
246
257
|
|
|
247
|
-
_onfocusout(
|
|
258
|
+
_onfocusout() {
|
|
248
259
|
this.deactivate();
|
|
249
|
-
|
|
250
|
-
if (!this._tabMarked) {
|
|
251
|
-
this._tabbableElements.forEach(el => el.setAttribute("tabindex", -1));
|
|
252
|
-
} else {
|
|
253
|
-
this._tabMarked = false;
|
|
254
|
-
}
|
|
255
260
|
}
|
|
256
261
|
|
|
257
262
|
_onfocusin(event, forceSelfFocus = false) {
|
|
258
|
-
const tableRowRoot = this.shadowRoot.querySelector(".ui5-table-row-root");
|
|
259
|
-
|
|
260
263
|
if (forceSelfFocus || this._activeElementHasAttribute("ui5-table-cell")) {
|
|
261
|
-
|
|
264
|
+
this.root.focus();
|
|
262
265
|
this.activate();
|
|
263
266
|
}
|
|
264
267
|
|
|
265
|
-
this._tabbableElements.forEach(el => el.setAttribute("tabindex", 0));
|
|
266
|
-
|
|
267
268
|
this.fireEvent("_focused", event);
|
|
268
269
|
}
|
|
269
270
|
|
|
@@ -300,44 +301,6 @@ class TableRow extends UI5Element {
|
|
|
300
301
|
this.fireEvent("selection-requested", { row: this });
|
|
301
302
|
}
|
|
302
303
|
|
|
303
|
-
/**
|
|
304
|
-
* Toggles focus between the table row's root and the last focused nested element.
|
|
305
|
-
* @private
|
|
306
|
-
* @param {Object} activeElement The currently focused element
|
|
307
|
-
*/
|
|
308
|
-
_handleF7(activeElement) {
|
|
309
|
-
const elements = this._tabbableElements;
|
|
310
|
-
|
|
311
|
-
if (!elements.length) {
|
|
312
|
-
return;
|
|
313
|
-
}
|
|
314
|
-
|
|
315
|
-
const table = this.parentElement;
|
|
316
|
-
const tableRowRoot = this.shadowRoot.querySelector(".ui5-table-row-root");
|
|
317
|
-
const prevFocusedIdx = table._prevNestedElementIndex;
|
|
318
|
-
|
|
319
|
-
if (activeElement === tableRowRoot) {
|
|
320
|
-
const lastFocusedElement = elements[prevFocusedIdx];
|
|
321
|
-
|
|
322
|
-
if (lastFocusedElement) {
|
|
323
|
-
lastFocusedElement.focus();
|
|
324
|
-
} else {
|
|
325
|
-
elements[0].focus();
|
|
326
|
-
}
|
|
327
|
-
|
|
328
|
-
return;
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
const shadowRoot = activeElement.shadowRoot;
|
|
332
|
-
const target = shadowRoot ? shadowRoot.activeElement : activeElement;
|
|
333
|
-
const targetIndex = elements.indexOf(target);
|
|
334
|
-
|
|
335
|
-
if (targetIndex > -1) {
|
|
336
|
-
table._prevNestedElementIndex = targetIndex;
|
|
337
|
-
tableRowRoot.focus();
|
|
338
|
-
}
|
|
339
|
-
}
|
|
340
|
-
|
|
341
304
|
_activeElementHasAttribute(attr) {
|
|
342
305
|
return this.getRootNode().activeElement.hasAttribute(attr);
|
|
343
306
|
}
|
|
@@ -439,6 +402,10 @@ class TableRow extends UI5Element {
|
|
|
439
402
|
return this.mode === "MultiSelect";
|
|
440
403
|
}
|
|
441
404
|
|
|
405
|
+
get root() {
|
|
406
|
+
return this.shadowRoot.querySelector(".ui5-table-row-root");
|
|
407
|
+
}
|
|
408
|
+
|
|
442
409
|
getCellText(cell) {
|
|
443
410
|
return this.getNormilzedTextContent(cell.textContent);
|
|
444
411
|
}
|
package/src/TimePicker.js
CHANGED
|
@@ -150,9 +150,7 @@ class TimePicker extends TimePickerBase {
|
|
|
150
150
|
"ariaRoledescription": this.dateAriaDescription,
|
|
151
151
|
"ariaHasPopup": "dialog",
|
|
152
152
|
"ariaAutoComplete": "none",
|
|
153
|
-
"role": "combobox",
|
|
154
153
|
"ariaControls": `${this._id}-responsive-popover`,
|
|
155
|
-
"ariaExpanded": this.isOpen(),
|
|
156
154
|
};
|
|
157
155
|
}
|
|
158
156
|
|
package/src/TimePickerBase.js
CHANGED
|
@@ -256,8 +256,10 @@ class TimePickerBase extends UI5Element {
|
|
|
256
256
|
value = this.normalizeValue(value); // transform valid values (in any format) to the correct format
|
|
257
257
|
}
|
|
258
258
|
|
|
259
|
-
|
|
260
|
-
|
|
259
|
+
if (!events.includes("input")) {
|
|
260
|
+
this.value = ""; // Do not remove! DurationPicker use case -> value is 05:10, user tries 05:12, after normalization value is changed back to 05:10 so no invalidation happens, but the input still shows 05:12. Thus we enforce invalidation with the ""
|
|
261
|
+
this.value = value;
|
|
262
|
+
}
|
|
261
263
|
this.tempValue = value; // if the picker is open, sync it
|
|
262
264
|
this._updateValueState(); // Change the value state to Error/None, but only if needed
|
|
263
265
|
events.forEach(event => {
|
|
@@ -440,6 +442,13 @@ class TimePickerBase extends UI5Element {
|
|
|
440
442
|
this._updateValueAndFireEvents(newValue, true, ["change", "value-changed"]);
|
|
441
443
|
}
|
|
442
444
|
|
|
445
|
+
/**
|
|
446
|
+
*
|
|
447
|
+
* @param {event} e Wheel Event
|
|
448
|
+
* @private
|
|
449
|
+
*
|
|
450
|
+
* The listener for this event can't be passive as it calls preventDefault()
|
|
451
|
+
*/
|
|
443
452
|
_handleWheel(e) {
|
|
444
453
|
e.preventDefault();
|
|
445
454
|
}
|