@ui5/webcomponents 2.2.0 → 2.3.0-rc.1
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 +39 -0
- package/cypress/specs/Eventing.cy.ts +44 -0
- package/cypress/specs/F6.cy.ts +659 -0
- package/cypress/specs/Form.cy.ts +381 -0
- package/cypress/specs/FormSupport.cy.ts +896 -0
- package/cypress/specs/LitKeyFunction.cy.ts +50 -0
- package/cypress/specs/RTL.cy.ts +19 -0
- package/cypress.config.js +3 -1
- package/dist/.tsbuildinfo +1 -1
- package/dist/List.d.ts +4 -0
- package/dist/List.js +53 -2
- package/dist/List.js.map +1 -1
- package/dist/ListItemGroup.js +1 -1
- package/dist/ListItemGroup.js.map +1 -1
- package/dist/MultiComboBox.js +1 -0
- package/dist/MultiComboBox.js.map +1 -1
- package/dist/Popover.d.ts +1 -0
- package/dist/Popover.js +4 -0
- package/dist/Popover.js.map +1 -1
- package/dist/TabContainer.d.ts +3 -0
- package/dist/TabContainer.js +110 -10
- package/dist/TabContainer.js.map +1 -1
- package/dist/Text.d.ts +0 -1
- package/dist/Text.js +0 -1
- package/dist/Text.js.map +1 -1
- package/dist/Tree.js +1 -1
- package/dist/Tree.js.map +1 -1
- package/dist/css/themes/Avatar.css +1 -1
- package/dist/css/themes/AvatarGroup.css +1 -1
- package/dist/css/themes/Bar.css +1 -1
- package/dist/css/themes/Breadcrumbs.css +1 -1
- package/dist/css/themes/BusyIndicator.css +1 -1
- package/dist/css/themes/Button.css +1 -1
- package/dist/css/themes/Calendar.css +1 -1
- package/dist/css/themes/CalendarHeader.css +1 -1
- package/dist/css/themes/CalendarLegend.css +1 -1
- package/dist/css/themes/CalendarLegendItem.css +1 -1
- package/dist/css/themes/Card.css +1 -1
- package/dist/css/themes/CardHeader.css +1 -1
- package/dist/css/themes/Carousel.css +1 -1
- package/dist/css/themes/CheckBox.css +1 -1
- package/dist/css/themes/ColorPalette.css +1 -1
- package/dist/css/themes/ColorPaletteItem.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/DayPicker.css +1 -1
- package/dist/css/themes/Dialog.css +1 -1
- package/dist/css/themes/FileUploader.css +1 -1
- package/dist/css/themes/Form.css +1 -1
- package/dist/css/themes/FormItem.css +1 -1
- package/dist/css/themes/FormLabelSpan.css +1 -1
- package/dist/css/themes/GrowingButton.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/InputSharedStyles.css +1 -1
- package/dist/css/themes/Link.css +1 -1
- package/dist/css/themes/List.css +1 -1
- package/dist/css/themes/ListItem.css +1 -1
- package/dist/css/themes/ListItemBase.css +1 -1
- package/dist/css/themes/ListItemCustom.css +1 -1
- package/dist/css/themes/ListItemGroup.css +1 -1
- package/dist/css/themes/ListItemGroupHeader.css +1 -1
- package/dist/css/themes/ListItemIcon.css +1 -1
- package/dist/css/themes/Menu.css +1 -1
- package/dist/css/themes/MenuItem.css +1 -1
- package/dist/css/themes/MessageStrip.css +1 -1
- package/dist/css/themes/MonthPicker.css +1 -1
- package/dist/css/themes/MultiComboBox.css +1 -1
- package/dist/css/themes/MultiComboBoxPopover.css +1 -1
- package/dist/css/themes/MultiInput.css +1 -1
- package/dist/css/themes/NavigationMenu.css +1 -1
- package/dist/css/themes/NavigationMenuItem.css +1 -1
- package/dist/css/themes/OptionBase.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/ProgressIndicator.css +1 -1
- package/dist/css/themes/RadioButton.css +1 -1
- package/dist/css/themes/RangeSlider.css +1 -1
- package/dist/css/themes/RatingIndicator.css +1 -1
- package/dist/css/themes/ResponsivePopover.css +1 -1
- package/dist/css/themes/ResponsivePopoverCommon.css +1 -1
- package/dist/css/themes/SegmentedButton.css +1 -1
- package/dist/css/themes/SegmentedButtonItem.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 -1
- package/dist/css/themes/StepInput.css +1 -1
- package/dist/css/themes/SuggestionItem.css +1 -1
- package/dist/css/themes/SuggestionItemCustom.css +1 -1
- package/dist/css/themes/Switch.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/TabSemanticIcon.css +1 -1
- package/dist/css/themes/TabSeparatorInOverflow.css +1 -1
- package/dist/css/themes/Table.css +1 -1
- package/dist/css/themes/TableCellBase.css +1 -1
- package/dist/css/themes/TableHeaderRow.css +1 -1
- package/dist/css/themes/TableRow.css +1 -1
- package/dist/css/themes/TableRowBase.css +1 -1
- package/dist/css/themes/Tag.css +1 -1
- package/dist/css/themes/Text.css +1 -1
- package/dist/css/themes/TextArea.css +1 -1
- package/dist/css/themes/TimePicker.css +1 -1
- package/dist/css/themes/Toast.css +1 -1
- package/dist/css/themes/ToggleButton.css +1 -1
- package/dist/css/themes/Token.css +1 -1
- package/dist/css/themes/Tokenizer.css +1 -1
- package/dist/css/themes/TokenizerPopover.css +1 -1
- package/dist/css/themes/Toolbar.css +1 -1
- package/dist/css/themes/ToolbarPopover.css +1 -1
- package/dist/css/themes/TreeItem.css +1 -1
- package/dist/css/themes/ValueStateMessage.css +1 -1
- package/dist/css/themes/YearPicker.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_dark_exp/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_hcb_exp/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw/parameters-bundle.css +1 -1
- package/dist/css/themes/sap_horizon_hcw_exp/parameters-bundle.css +1 -1
- package/dist/custom-elements-internal.json +52 -8
- package/dist/custom-elements.json +25 -4
- 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_dark_exp/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_hcb_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw/parameters-bundle.css.json +1 -1
- package/dist/generated/assets/themes/sap_horizon_hcw_exp/parameters-bundle.css.json +1 -1
- package/dist/generated/i18n/i18n-defaults.js +9 -9
- package/dist/generated/i18n/i18n-defaults.js.map +1 -1
- package/dist/generated/templates/LinkTemplate.lit.js +1 -1
- package/dist/generated/templates/LinkTemplate.lit.js.map +1 -1
- package/dist/generated/templates/ListTemplate.lit.js +1 -1
- package/dist/generated/templates/ListTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js +1 -1
- package/dist/generated/templates/TabContainerPopoverTemplate.lit.js.map +1 -1
- package/dist/generated/templates/TabContainerTemplate.lit.js +1 -1
- package/dist/generated/templates/TabContainerTemplate.lit.js.map +1 -1
- package/dist/generated/themes/Avatar.css.js +1 -1
- package/dist/generated/themes/Avatar.css.js.map +1 -1
- package/dist/generated/themes/AvatarGroup.css.js +1 -1
- package/dist/generated/themes/AvatarGroup.css.js.map +1 -1
- package/dist/generated/themes/Bar.css.js +1 -1
- package/dist/generated/themes/Bar.css.js.map +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js +1 -1
- package/dist/generated/themes/Breadcrumbs.css.js.map +1 -1
- package/dist/generated/themes/BusyIndicator.css.js +1 -1
- package/dist/generated/themes/BusyIndicator.css.js.map +1 -1
- package/dist/generated/themes/Button.css.js +1 -1
- package/dist/generated/themes/Button.css.js.map +1 -1
- package/dist/generated/themes/Calendar.css.js +1 -1
- package/dist/generated/themes/Calendar.css.js.map +1 -1
- package/dist/generated/themes/CalendarHeader.css.js +1 -1
- package/dist/generated/themes/CalendarHeader.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegend.css.js +1 -1
- package/dist/generated/themes/CalendarLegend.css.js.map +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js +1 -1
- package/dist/generated/themes/CalendarLegendItem.css.js.map +1 -1
- package/dist/generated/themes/Card.css.js +1 -1
- package/dist/generated/themes/Card.css.js.map +1 -1
- package/dist/generated/themes/CardHeader.css.js +1 -1
- package/dist/generated/themes/CardHeader.css.js.map +1 -1
- package/dist/generated/themes/Carousel.css.js +1 -1
- package/dist/generated/themes/Carousel.css.js.map +1 -1
- package/dist/generated/themes/CheckBox.css.js +1 -1
- package/dist/generated/themes/CheckBox.css.js.map +1 -1
- package/dist/generated/themes/ColorPalette.css.js +1 -1
- package/dist/generated/themes/ColorPalette.css.js.map +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js +1 -1
- package/dist/generated/themes/ColorPaletteItem.css.js.map +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js +1 -1
- package/dist/generated/themes/ColorPalettePopover.css.js.map +1 -1
- package/dist/generated/themes/ColorPicker.css.js +1 -1
- package/dist/generated/themes/ColorPicker.css.js.map +1 -1
- package/dist/generated/themes/ComboBox.css.js +1 -1
- package/dist/generated/themes/ComboBox.css.js.map +1 -1
- package/dist/generated/themes/DatePicker.css.js +1 -1
- package/dist/generated/themes/DatePicker.css.js.map +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js +1 -1
- package/dist/generated/themes/DateTimePickerPopover.css.js.map +1 -1
- package/dist/generated/themes/DayPicker.css.js +1 -1
- package/dist/generated/themes/DayPicker.css.js.map +1 -1
- package/dist/generated/themes/Dialog.css.js +1 -1
- package/dist/generated/themes/Dialog.css.js.map +1 -1
- package/dist/generated/themes/FileUploader.css.js +1 -1
- package/dist/generated/themes/FileUploader.css.js.map +1 -1
- package/dist/generated/themes/Form.css.js +1 -1
- package/dist/generated/themes/Form.css.js.map +1 -1
- package/dist/generated/themes/FormItem.css.js +1 -1
- package/dist/generated/themes/FormItem.css.js.map +1 -1
- package/dist/generated/themes/FormLabelSpan.css.js +1 -1
- package/dist/generated/themes/FormLabelSpan.css.js.map +1 -1
- package/dist/generated/themes/GrowingButton.css.js +1 -1
- package/dist/generated/themes/GrowingButton.css.js.map +1 -1
- package/dist/generated/themes/Icon.css.js +1 -1
- package/dist/generated/themes/Icon.css.js.map +1 -1
- package/dist/generated/themes/Input.css.js +1 -1
- package/dist/generated/themes/Input.css.js.map +1 -1
- package/dist/generated/themes/InputIcon.css.js +1 -1
- package/dist/generated/themes/InputIcon.css.js.map +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js +1 -1
- package/dist/generated/themes/InputSharedStyles.css.js.map +1 -1
- package/dist/generated/themes/Link.css.js +1 -1
- package/dist/generated/themes/Link.css.js.map +1 -1
- package/dist/generated/themes/List.css.js +1 -1
- package/dist/generated/themes/List.css.js.map +1 -1
- package/dist/generated/themes/ListItem.css.js +1 -1
- package/dist/generated/themes/ListItem.css.js.map +1 -1
- package/dist/generated/themes/ListItemBase.css.js +1 -1
- package/dist/generated/themes/ListItemBase.css.js.map +1 -1
- package/dist/generated/themes/ListItemCustom.css.js +1 -1
- package/dist/generated/themes/ListItemCustom.css.js.map +1 -1
- package/dist/generated/themes/ListItemGroup.css.js +1 -1
- package/dist/generated/themes/ListItemGroup.css.js.map +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.js +1 -1
- package/dist/generated/themes/ListItemGroupHeader.css.js.map +1 -1
- package/dist/generated/themes/ListItemIcon.css.js +1 -1
- package/dist/generated/themes/ListItemIcon.css.js.map +1 -1
- package/dist/generated/themes/Menu.css.js +1 -1
- package/dist/generated/themes/Menu.css.js.map +1 -1
- package/dist/generated/themes/MenuItem.css.js +1 -1
- package/dist/generated/themes/MenuItem.css.js.map +1 -1
- package/dist/generated/themes/MessageStrip.css.js +1 -1
- package/dist/generated/themes/MessageStrip.css.js.map +1 -1
- package/dist/generated/themes/MonthPicker.css.js +1 -1
- package/dist/generated/themes/MonthPicker.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBox.css.js +1 -1
- package/dist/generated/themes/MultiComboBox.css.js.map +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js +1 -1
- package/dist/generated/themes/MultiComboBoxPopover.css.js.map +1 -1
- package/dist/generated/themes/MultiInput.css.js +1 -1
- package/dist/generated/themes/MultiInput.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenu.css.js +1 -1
- package/dist/generated/themes/NavigationMenu.css.js.map +1 -1
- package/dist/generated/themes/NavigationMenuItem.css.js +1 -1
- package/dist/generated/themes/NavigationMenuItem.css.js.map +1 -1
- package/dist/generated/themes/OptionBase.css.js +1 -1
- package/dist/generated/themes/OptionBase.css.js.map +1 -1
- package/dist/generated/themes/Panel.css.js +1 -1
- package/dist/generated/themes/Panel.css.js.map +1 -1
- package/dist/generated/themes/Popover.css.js +1 -1
- package/dist/generated/themes/Popover.css.js.map +1 -1
- package/dist/generated/themes/PopupsCommon.css.js +1 -1
- package/dist/generated/themes/PopupsCommon.css.js.map +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js +1 -1
- package/dist/generated/themes/ProgressIndicator.css.js.map +1 -1
- package/dist/generated/themes/RadioButton.css.js +1 -1
- package/dist/generated/themes/RadioButton.css.js.map +1 -1
- package/dist/generated/themes/RangeSlider.css.js +1 -1
- package/dist/generated/themes/RangeSlider.css.js.map +1 -1
- package/dist/generated/themes/RatingIndicator.css.js +1 -1
- package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js +1 -1
- package/dist/generated/themes/ResponsivePopover.css.js.map +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js +1 -1
- package/dist/generated/themes/ResponsivePopoverCommon.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButton.css.js +1 -1
- package/dist/generated/themes/SegmentedButton.css.js.map +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js +1 -1
- package/dist/generated/themes/SegmentedButtonItem.css.js.map +1 -1
- package/dist/generated/themes/Select.css.js +1 -1
- package/dist/generated/themes/Select.css.js.map +1 -1
- package/dist/generated/themes/SliderBase.css.js +1 -1
- package/dist/generated/themes/SliderBase.css.js.map +1 -1
- package/dist/generated/themes/SplitButton.css.js +1 -1
- package/dist/generated/themes/SplitButton.css.js.map +1 -1
- package/dist/generated/themes/StepInput.css.js +1 -1
- package/dist/generated/themes/StepInput.css.js.map +1 -1
- package/dist/generated/themes/SuggestionItem.css.js +1 -1
- package/dist/generated/themes/SuggestionItem.css.js.map +1 -1
- package/dist/generated/themes/SuggestionItemCustom.css.js +1 -1
- package/dist/generated/themes/SuggestionItemCustom.css.js.map +1 -1
- package/dist/generated/themes/Switch.css.js +1 -1
- package/dist/generated/themes/Switch.css.js.map +1 -1
- package/dist/generated/themes/TabContainer.css.js +1 -1
- package/dist/generated/themes/TabContainer.css.js.map +1 -1
- package/dist/generated/themes/TabInOverflow.css.js +1 -1
- package/dist/generated/themes/TabInOverflow.css.js.map +1 -1
- package/dist/generated/themes/TabInStrip.css.js +1 -1
- package/dist/generated/themes/TabInStrip.css.js.map +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js +1 -1
- package/dist/generated/themes/TabSemanticIcon.css.js.map +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js +1 -1
- package/dist/generated/themes/TabSeparatorInOverflow.css.js.map +1 -1
- package/dist/generated/themes/Table.css.js +1 -1
- package/dist/generated/themes/Table.css.js.map +1 -1
- package/dist/generated/themes/TableCellBase.css.js +1 -1
- package/dist/generated/themes/TableCellBase.css.js.map +1 -1
- package/dist/generated/themes/TableHeaderRow.css.js +1 -1
- package/dist/generated/themes/TableHeaderRow.css.js.map +1 -1
- package/dist/generated/themes/TableRow.css.js +1 -1
- package/dist/generated/themes/TableRow.css.js.map +1 -1
- package/dist/generated/themes/TableRowBase.css.js +1 -1
- package/dist/generated/themes/TableRowBase.css.js.map +1 -1
- package/dist/generated/themes/Tag.css.js +1 -1
- package/dist/generated/themes/Tag.css.js.map +1 -1
- package/dist/generated/themes/Text.css.js +1 -1
- package/dist/generated/themes/Text.css.js.map +1 -1
- package/dist/generated/themes/TextArea.css.js +1 -1
- package/dist/generated/themes/TextArea.css.js.map +1 -1
- package/dist/generated/themes/TimePicker.css.js +1 -1
- package/dist/generated/themes/TimePicker.css.js.map +1 -1
- package/dist/generated/themes/Toast.css.js +1 -1
- package/dist/generated/themes/Toast.css.js.map +1 -1
- package/dist/generated/themes/ToggleButton.css.js +1 -1
- package/dist/generated/themes/ToggleButton.css.js.map +1 -1
- package/dist/generated/themes/Token.css.js +1 -1
- package/dist/generated/themes/Token.css.js.map +1 -1
- package/dist/generated/themes/Tokenizer.css.js +1 -1
- package/dist/generated/themes/Tokenizer.css.js.map +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js +1 -1
- package/dist/generated/themes/TokenizerPopover.css.js.map +1 -1
- package/dist/generated/themes/Toolbar.css.js +1 -1
- package/dist/generated/themes/Toolbar.css.js.map +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js +1 -1
- package/dist/generated/themes/ToolbarPopover.css.js.map +1 -1
- package/dist/generated/themes/TreeItem.css.js +1 -1
- package/dist/generated/themes/TreeItem.css.js.map +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js +1 -1
- package/dist/generated/themes/ValueStateMessage.css.js.map +1 -1
- package/dist/generated/themes/YearPicker.css.js +1 -1
- package/dist/generated/themes/YearPicker.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_fiori_3_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_dark_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcb_exp/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw/parameters-bundle.css.js.map +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js +1 -1
- package/dist/generated/themes/sap_horizon_hcw_exp/parameters-bundle.css.js.map +1 -1
- package/dist/types/NotificationListGrowingMode.d.ts +18 -0
- package/dist/types/NotificationListGrowingMode.js +20 -0
- package/dist/types/NotificationListGrowingMode.js.map +1 -0
- package/dist/vscode.html-custom-data.json +2 -2
- package/dist/web-types.json +11 -7
- package/package.json +9 -9
- package/src/Link.hbs +1 -0
- package/src/List.hbs +2 -1
- package/src/TabContainerPopover.hbs +1 -0
- package/src/themes/Breadcrumbs.css +10 -0
- package/src/themes/GrowingButton.css +1 -1
- package/src/themes/Popover.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/parameters-bundle.css +1 -0
- package/src/themes/sap_fiori_3_hcw/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon/TextArea-parameters.css +1 -1
- package/src/themes/sap_horizon_dark/TextArea-parameters.css +1 -1
- package/src/themes/sap_horizon_dark/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon_hcb/parameters-bundle.css +1 -0
- package/src/themes/sap_horizon_hcw/parameters-bundle.css +1 -0
|
@@ -0,0 +1,659 @@
|
|
|
1
|
+
import { html } from "lit";
|
|
2
|
+
import "@ui5/webcomponents-base/dist/features/F6Navigation.js";
|
|
3
|
+
import "../../src/Button.js";
|
|
4
|
+
|
|
5
|
+
describe("F6 navigation", () => {
|
|
6
|
+
describe("F6 Forward navigation", () => {
|
|
7
|
+
it("tests navigation", () => {
|
|
8
|
+
cy.mount(html`<div>
|
|
9
|
+
<div class="section">
|
|
10
|
+
<button id="before">Before element</button>
|
|
11
|
+
</div>
|
|
12
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
13
|
+
<ui5-button id="first">First focusable</ui5-button>
|
|
14
|
+
</div>
|
|
15
|
+
<div class="section">
|
|
16
|
+
<ui5-button>Something focusable</ui5-button>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
19
|
+
<ui5-button id="second">Second focusable</ui5-button>
|
|
20
|
+
</div>
|
|
21
|
+
<div class="section">
|
|
22
|
+
<ui5-button>Something focusable</ui5-button>
|
|
23
|
+
</div>
|
|
24
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
25
|
+
<ui5-button id="third">Third focusable</ui5-button>
|
|
26
|
+
</div>
|
|
27
|
+
<div class="section">
|
|
28
|
+
<ui5-button>After Element</ui5-button>
|
|
29
|
+
</div>
|
|
30
|
+
</div`);
|
|
31
|
+
|
|
32
|
+
// act
|
|
33
|
+
cy.get("#before").focus();
|
|
34
|
+
cy.realPress("F6");
|
|
35
|
+
|
|
36
|
+
// assert 1st group is focused
|
|
37
|
+
cy.get("#first")
|
|
38
|
+
.should("be.focused");
|
|
39
|
+
|
|
40
|
+
// act
|
|
41
|
+
cy.realPress("F6");
|
|
42
|
+
|
|
43
|
+
// assert 2nd group is focused
|
|
44
|
+
cy.get("#second")
|
|
45
|
+
.should("be.focused");
|
|
46
|
+
|
|
47
|
+
// act
|
|
48
|
+
cy.realPress("F6");
|
|
49
|
+
|
|
50
|
+
// assert 3rd group is focused
|
|
51
|
+
cy.get("#third")
|
|
52
|
+
.should("be.focused");
|
|
53
|
+
|
|
54
|
+
// act
|
|
55
|
+
cy.realPress("F6");
|
|
56
|
+
|
|
57
|
+
// assert 1st group is focused agian
|
|
58
|
+
cy.get("#first")
|
|
59
|
+
.should("be.focused");
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
it("tests navigation with empty group", () => {
|
|
63
|
+
cy.mount(html`<div>
|
|
64
|
+
<div class="section">
|
|
65
|
+
<button id="before">Before element</button>
|
|
66
|
+
</div>
|
|
67
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
68
|
+
<ui5-button id="first">First focusable</ui5-button>
|
|
69
|
+
</div>
|
|
70
|
+
<div class="section">
|
|
71
|
+
<ui5-button>Something focusable</ui5-button>
|
|
72
|
+
</div>
|
|
73
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
74
|
+
Group without focusable element
|
|
75
|
+
</div>
|
|
76
|
+
<div class="section">
|
|
77
|
+
<ui5-button>Something focusable</ui5-button>
|
|
78
|
+
</div>
|
|
79
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
80
|
+
<ui5-button id="second">Second focusable</ui5-button>
|
|
81
|
+
</div>
|
|
82
|
+
<div class="section">
|
|
83
|
+
<ui5-button>After Element</ui5-button>
|
|
84
|
+
</div>
|
|
85
|
+
</div`);
|
|
86
|
+
|
|
87
|
+
// act
|
|
88
|
+
cy.get("#before").focus();
|
|
89
|
+
cy.realPress("F6");
|
|
90
|
+
|
|
91
|
+
// assert 1st group is focused
|
|
92
|
+
cy.get("#first")
|
|
93
|
+
.should("be.focused");
|
|
94
|
+
|
|
95
|
+
// act
|
|
96
|
+
cy.realPress("F6");
|
|
97
|
+
|
|
98
|
+
// assert 2nd group is focused (an empty group is skipped)
|
|
99
|
+
cy.get("#second")
|
|
100
|
+
.should("be.focused");
|
|
101
|
+
|
|
102
|
+
// act
|
|
103
|
+
cy.realPress("F6");
|
|
104
|
+
|
|
105
|
+
// assert 1st group is focused agian
|
|
106
|
+
cy.get("#first")
|
|
107
|
+
.should("be.focused");
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
it("tests navigation with nested groups", () => {
|
|
111
|
+
cy.mount(html`<div class="section">
|
|
112
|
+
<button id="before">Before element</button>
|
|
113
|
+
</div>
|
|
114
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
115
|
+
<ui5-button id="first">First focusable</ui5-button>
|
|
116
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
117
|
+
<ui5-button id="second">Second focusable</ui5-button>
|
|
118
|
+
</div>
|
|
119
|
+
</div>
|
|
120
|
+
<div class="section">
|
|
121
|
+
<ui5-button>Something focusable</ui5-button>
|
|
122
|
+
</div>
|
|
123
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
124
|
+
<ui5-button id="third">Third focusable</ui5-button>
|
|
125
|
+
</div>
|
|
126
|
+
<div class="section">
|
|
127
|
+
<ui5-button>After Element</ui5-button>
|
|
128
|
+
</div>`);
|
|
129
|
+
|
|
130
|
+
// act
|
|
131
|
+
cy.get("#before").focus();
|
|
132
|
+
cy.realPress("F6");
|
|
133
|
+
|
|
134
|
+
// assert 1st group is focused
|
|
135
|
+
cy.get("#first")
|
|
136
|
+
.should("be.focused");
|
|
137
|
+
|
|
138
|
+
// act
|
|
139
|
+
cy.realPress("F6");
|
|
140
|
+
|
|
141
|
+
// assert 2nd group is focused (an empty group is skipped)
|
|
142
|
+
cy.get("#second")
|
|
143
|
+
.should("be.focused");
|
|
144
|
+
|
|
145
|
+
// act
|
|
146
|
+
cy.realPress("F6");
|
|
147
|
+
|
|
148
|
+
// assert 3rd group is focused
|
|
149
|
+
cy.get("#third")
|
|
150
|
+
.should("be.focused");
|
|
151
|
+
|
|
152
|
+
// act
|
|
153
|
+
cy.realPress("F6");
|
|
154
|
+
|
|
155
|
+
// assert 1st group is focused agian
|
|
156
|
+
cy.get("#first")
|
|
157
|
+
.should("be.focused");
|
|
158
|
+
});
|
|
159
|
+
|
|
160
|
+
it("tests navigation with nesting inside empty fastnav-group parent", () => {
|
|
161
|
+
cy.mount(html`<div class="section">
|
|
162
|
+
<button id="before">Before element</button>
|
|
163
|
+
</div>
|
|
164
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
165
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
166
|
+
<ui5-button id="first">First focusable</ui5-button>
|
|
167
|
+
</div>
|
|
168
|
+
</div>
|
|
169
|
+
<div class="section">
|
|
170
|
+
<ui5-button>Something focusable</ui5-button>
|
|
171
|
+
</div>
|
|
172
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
173
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
174
|
+
<ui5-button id="second">First focusable</ui5-button>
|
|
175
|
+
</div>
|
|
176
|
+
</div>
|
|
177
|
+
<div class="section">
|
|
178
|
+
<ui5-button>Something focusable</ui5-button>
|
|
179
|
+
</div>
|
|
180
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
181
|
+
<ui5-button id="third">Second focusable</ui5-button>
|
|
182
|
+
</div>
|
|
183
|
+
<div class="section">
|
|
184
|
+
<ui5-button>After Element</ui5-button>
|
|
185
|
+
</div>`);
|
|
186
|
+
|
|
187
|
+
// act
|
|
188
|
+
cy.get("#before").focus();
|
|
189
|
+
cy.realPress("F6");
|
|
190
|
+
|
|
191
|
+
// assert 1st group is focused
|
|
192
|
+
cy.get("#first")
|
|
193
|
+
.should("be.focused");
|
|
194
|
+
|
|
195
|
+
// act
|
|
196
|
+
cy.realPress("F6");
|
|
197
|
+
|
|
198
|
+
// assert 2nd group is focused (an empty group is skipped)
|
|
199
|
+
cy.get("#second")
|
|
200
|
+
.should("be.focused");
|
|
201
|
+
|
|
202
|
+
// act
|
|
203
|
+
cy.get("#second").realPress("F6");
|
|
204
|
+
|
|
205
|
+
// assert 3rd group is focused
|
|
206
|
+
cy.get("#third")
|
|
207
|
+
.should("be.focused");
|
|
208
|
+
|
|
209
|
+
// act
|
|
210
|
+
cy.realPress("F6");
|
|
211
|
+
|
|
212
|
+
// assert 1st group is focused agian
|
|
213
|
+
cy.get("#first")
|
|
214
|
+
.should("be.focused");
|
|
215
|
+
});
|
|
216
|
+
|
|
217
|
+
it("tests navigation with group as a focusable element", () => {
|
|
218
|
+
cy.mount(html`<div class="section">
|
|
219
|
+
<button id="before">Before element</button>
|
|
220
|
+
</div>
|
|
221
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
222
|
+
<ui5-button id="first">First focusable</ui5-button>
|
|
223
|
+
</div>
|
|
224
|
+
<div class="section">
|
|
225
|
+
<ui5-button>Something focusable</ui5-button>
|
|
226
|
+
</div>
|
|
227
|
+
<div class="section" tabindex="0" id="second" data-sap-ui-fastnavgroup="true">
|
|
228
|
+
Second focusable
|
|
229
|
+
</div>
|
|
230
|
+
<div class="section">
|
|
231
|
+
<ui5-button>Something focusable</ui5-button>
|
|
232
|
+
</div>
|
|
233
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
234
|
+
<ui5-button id="third">Third focusable</ui5-button>
|
|
235
|
+
</div>
|
|
236
|
+
<div class="section">
|
|
237
|
+
<ui5-button>After Element</ui5-button>
|
|
238
|
+
</div>`);
|
|
239
|
+
|
|
240
|
+
// act
|
|
241
|
+
cy.get("#before").focus();
|
|
242
|
+
cy.realPress("F6");
|
|
243
|
+
|
|
244
|
+
// assert 1st group is focused
|
|
245
|
+
cy.get("#first")
|
|
246
|
+
.should("be.focused");
|
|
247
|
+
|
|
248
|
+
// act
|
|
249
|
+
cy.get("#first").realPress("F6");
|
|
250
|
+
|
|
251
|
+
// assert 2nd group is focused (an empty group is skipped)
|
|
252
|
+
cy.get("#second")
|
|
253
|
+
.should("be.focused");
|
|
254
|
+
|
|
255
|
+
// act
|
|
256
|
+
cy.realPress("F6");
|
|
257
|
+
|
|
258
|
+
// assert 3rd group is focused
|
|
259
|
+
cy.get("#third")
|
|
260
|
+
.should("be.focused");
|
|
261
|
+
|
|
262
|
+
// act
|
|
263
|
+
cy.realPress("F6");
|
|
264
|
+
|
|
265
|
+
// assert 1st group is focused agian
|
|
266
|
+
cy.get("#first")
|
|
267
|
+
.should("be.focused");
|
|
268
|
+
});
|
|
269
|
+
|
|
270
|
+
it("tests navigation without a focusable element", () => {
|
|
271
|
+
cy.mount(html`<div class="section">
|
|
272
|
+
<ui5-button id="first">Before element</ui5-button>
|
|
273
|
+
</div>
|
|
274
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
275
|
+
Group without focusable element
|
|
276
|
+
</div>
|
|
277
|
+
<div class="section">
|
|
278
|
+
<ui5-button>Something focusable</ui5-button>
|
|
279
|
+
</div>
|
|
280
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
281
|
+
Group without focusable element
|
|
282
|
+
</div>
|
|
283
|
+
<div class="section">
|
|
284
|
+
<ui5-button>Something focusable</ui5-button>
|
|
285
|
+
</div>
|
|
286
|
+
<div class="section">
|
|
287
|
+
<ui5-button>After Element</ui5-button>
|
|
288
|
+
</div>`);
|
|
289
|
+
|
|
290
|
+
// act
|
|
291
|
+
cy.get("#first")
|
|
292
|
+
.realClick();
|
|
293
|
+
|
|
294
|
+
// assert clicked btn is also the focused element
|
|
295
|
+
cy.get("#first")
|
|
296
|
+
.should("be.focused");
|
|
297
|
+
|
|
298
|
+
// act
|
|
299
|
+
cy.realPress("F6");
|
|
300
|
+
|
|
301
|
+
// assert same button remains focused as there is no fasnav group with focusable elements
|
|
302
|
+
cy.get("#first")
|
|
303
|
+
.should("be.focused");
|
|
304
|
+
});
|
|
305
|
+
|
|
306
|
+
it("tests navigation with a single group", () => {
|
|
307
|
+
cy.mount(html`<div class="section">
|
|
308
|
+
<button id="before">Before element</button>
|
|
309
|
+
</div>
|
|
310
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
311
|
+
<ui5-button id="first">Before element</ui5-button>
|
|
312
|
+
</div>
|
|
313
|
+
<div class="section">
|
|
314
|
+
<ui5-button>Something focusable</ui5-button>
|
|
315
|
+
</div>
|
|
316
|
+
<div class="section">
|
|
317
|
+
<ui5-button>Something focusable</ui5-button>
|
|
318
|
+
</div>
|
|
319
|
+
<div class="section">
|
|
320
|
+
<ui5-button>After Element</ui5-button>
|
|
321
|
+
</div>`);
|
|
322
|
+
|
|
323
|
+
// act
|
|
324
|
+
cy.get("#before").focus();
|
|
325
|
+
cy.realPress("F6");
|
|
326
|
+
|
|
327
|
+
// assert 1st group is focused
|
|
328
|
+
cy.get("#first")
|
|
329
|
+
.should("be.focused");
|
|
330
|
+
});
|
|
331
|
+
});
|
|
332
|
+
|
|
333
|
+
describe("F6 Backward navigation", () => {
|
|
334
|
+
it("tests navigation", () => {
|
|
335
|
+
cy.mount(html`<div>
|
|
336
|
+
<div class="section">
|
|
337
|
+
<button id="before">Before element</button>
|
|
338
|
+
</div>
|
|
339
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
340
|
+
<ui5-button id="first">First focusable</ui5-button>
|
|
341
|
+
</div>
|
|
342
|
+
<div class="section">
|
|
343
|
+
<ui5-button>Something focusable</ui5-button>
|
|
344
|
+
</div>
|
|
345
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
346
|
+
<ui5-button id="second">Second focusable</ui5-button>
|
|
347
|
+
</div>
|
|
348
|
+
<div class="section">
|
|
349
|
+
<ui5-button>Something focusable</ui5-button>
|
|
350
|
+
</div>
|
|
351
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
352
|
+
<ui5-button id="third">Third focusable</ui5-button>
|
|
353
|
+
</div>
|
|
354
|
+
<div class="section">
|
|
355
|
+
<ui5-button>After Element</ui5-button>
|
|
356
|
+
</div>
|
|
357
|
+
</div`);
|
|
358
|
+
|
|
359
|
+
// act
|
|
360
|
+
cy.get("#before").focus();
|
|
361
|
+
cy.realPress(["Shift", "F6"]);
|
|
362
|
+
|
|
363
|
+
// assert 3rd group is focused
|
|
364
|
+
cy.get("#third")
|
|
365
|
+
.should("be.focused");
|
|
366
|
+
|
|
367
|
+
// act
|
|
368
|
+
cy.realPress(["Shift", "F6"]);
|
|
369
|
+
|
|
370
|
+
// assert 2nd group is focused
|
|
371
|
+
cy.get("#second")
|
|
372
|
+
.should("be.focused");
|
|
373
|
+
|
|
374
|
+
// act
|
|
375
|
+
cy.realPress(["Shift", "F6"]);
|
|
376
|
+
|
|
377
|
+
// assert 1st group is focused
|
|
378
|
+
cy.get("#first")
|
|
379
|
+
.should("be.focused");
|
|
380
|
+
|
|
381
|
+
// act
|
|
382
|
+
cy.realPress(["Shift", "F6"]);
|
|
383
|
+
|
|
384
|
+
// assert 3rd group is focused agian
|
|
385
|
+
cy.get("#third")
|
|
386
|
+
.should("be.focused");
|
|
387
|
+
});
|
|
388
|
+
|
|
389
|
+
it("tests navigation with empty group", () => {
|
|
390
|
+
cy.mount(html`<div>
|
|
391
|
+
<div class="section">
|
|
392
|
+
<button id="before">Before element</button>
|
|
393
|
+
</div>
|
|
394
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
395
|
+
<ui5-button id="first">First focusable</ui5-button>
|
|
396
|
+
</div>
|
|
397
|
+
<div class="section">
|
|
398
|
+
<ui5-button>Something focusable</ui5-button>
|
|
399
|
+
</div>
|
|
400
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
401
|
+
Group without focusable element
|
|
402
|
+
</div>
|
|
403
|
+
<div class="section">
|
|
404
|
+
<ui5-button>Something focusable</ui5-button>
|
|
405
|
+
</div>
|
|
406
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
407
|
+
<ui5-button id="second">Second focusable</ui5-button>
|
|
408
|
+
</div>
|
|
409
|
+
<div class="section">
|
|
410
|
+
<ui5-button>After Element</ui5-button>
|
|
411
|
+
</div>
|
|
412
|
+
</div`);
|
|
413
|
+
|
|
414
|
+
// act
|
|
415
|
+
cy.get("#before").focus();
|
|
416
|
+
cy.realPress(["Shift", "F6"]);
|
|
417
|
+
|
|
418
|
+
// assert 2nd group is focused
|
|
419
|
+
cy.get("#second")
|
|
420
|
+
.should("be.focused");
|
|
421
|
+
|
|
422
|
+
// act
|
|
423
|
+
cy.realPress(["Shift", "F6"]);
|
|
424
|
+
|
|
425
|
+
// assert 1st group is focused (an empty group is skipped)
|
|
426
|
+
cy.get("#first")
|
|
427
|
+
.should("be.focused");
|
|
428
|
+
|
|
429
|
+
// act
|
|
430
|
+
cy.realPress(["Shift", "F6"]);
|
|
431
|
+
|
|
432
|
+
// assert 1st group is focused agian
|
|
433
|
+
cy.get("#second")
|
|
434
|
+
.should("be.focused");
|
|
435
|
+
});
|
|
436
|
+
|
|
437
|
+
it("tests navigation with nested groups", () => {
|
|
438
|
+
cy.mount(html`<div class="section">
|
|
439
|
+
<button id="before">Before element</button>
|
|
440
|
+
</div>
|
|
441
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
442
|
+
<ui5-button id="first">First focusable</ui5-button>
|
|
443
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
444
|
+
<ui5-button id="second">Second focusable</ui5-button>
|
|
445
|
+
</div>
|
|
446
|
+
</div>
|
|
447
|
+
<div class="section">
|
|
448
|
+
<ui5-button>Something focusable</ui5-button>
|
|
449
|
+
</div>
|
|
450
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
451
|
+
<ui5-button id="third">Third focusable</ui5-button>
|
|
452
|
+
</div>
|
|
453
|
+
<div class="section">
|
|
454
|
+
<ui5-button>After Element</ui5-button>
|
|
455
|
+
</div>`);
|
|
456
|
+
|
|
457
|
+
// act
|
|
458
|
+
cy.get("#before").focus();
|
|
459
|
+
cy.realPress(["Shift", "F6"]);
|
|
460
|
+
|
|
461
|
+
// assert 3rd group is focused
|
|
462
|
+
cy.get("#third")
|
|
463
|
+
.should("be.focused");
|
|
464
|
+
|
|
465
|
+
// act
|
|
466
|
+
cy.realPress(["Shift", "F6"]);
|
|
467
|
+
|
|
468
|
+
// assert 2nd group is focused (an empty group is skipped)
|
|
469
|
+
cy.get("#second")
|
|
470
|
+
.should("be.focused");
|
|
471
|
+
|
|
472
|
+
// act
|
|
473
|
+
cy.realPress(["Shift", "F6"]);
|
|
474
|
+
|
|
475
|
+
// assert 1st group is focused
|
|
476
|
+
cy.get("#first")
|
|
477
|
+
.should("be.focused");
|
|
478
|
+
|
|
479
|
+
// act
|
|
480
|
+
cy.realPress(["Shift", "F6"]);
|
|
481
|
+
|
|
482
|
+
// assert 3rd group is focused agian
|
|
483
|
+
cy.get("#third")
|
|
484
|
+
.should("be.focused");
|
|
485
|
+
});
|
|
486
|
+
|
|
487
|
+
it("tests navigation with nesting inside empty fastnav-group parent", () => {
|
|
488
|
+
cy.mount(html`<div class="section">
|
|
489
|
+
<button id="before">Before element</button>
|
|
490
|
+
</div>
|
|
491
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
492
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
493
|
+
<ui5-button id="first">First focusable</ui5-button>
|
|
494
|
+
</div>
|
|
495
|
+
</div>
|
|
496
|
+
<div class="section">
|
|
497
|
+
<ui5-button>Something focusable</ui5-button>
|
|
498
|
+
</div>
|
|
499
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
500
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
501
|
+
<ui5-button id="second">First focusable</ui5-button>
|
|
502
|
+
</div>
|
|
503
|
+
</div>
|
|
504
|
+
<div class="section">
|
|
505
|
+
<ui5-button>Something focusable</ui5-button>
|
|
506
|
+
</div>
|
|
507
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
508
|
+
<ui5-button id="third">Second focusable</ui5-button>
|
|
509
|
+
</div>
|
|
510
|
+
<div class="section">
|
|
511
|
+
<ui5-button>After Element</ui5-button>
|
|
512
|
+
</div>`);
|
|
513
|
+
|
|
514
|
+
// act
|
|
515
|
+
cy.get("#before").focus();
|
|
516
|
+
cy.realPress(["Shift", "F6"]);
|
|
517
|
+
|
|
518
|
+
// assert 3rd group is focused
|
|
519
|
+
cy.get("#third")
|
|
520
|
+
.should("be.focused");
|
|
521
|
+
|
|
522
|
+
// act
|
|
523
|
+
cy.realPress(["Shift", "F6"]);
|
|
524
|
+
|
|
525
|
+
// assert 2nd group is focused (an empty group is skipped)
|
|
526
|
+
cy.get("#second")
|
|
527
|
+
.should("be.focused");
|
|
528
|
+
|
|
529
|
+
// act
|
|
530
|
+
cy.realPress(["Shift", "F6"]);
|
|
531
|
+
|
|
532
|
+
// assert 1st group is focused
|
|
533
|
+
cy.get("#first")
|
|
534
|
+
.should("be.focused");
|
|
535
|
+
|
|
536
|
+
// act
|
|
537
|
+
cy.realPress(["Shift", "F6"]);
|
|
538
|
+
|
|
539
|
+
// assert 1st group is focused agian
|
|
540
|
+
cy.get("#third")
|
|
541
|
+
.should("be.focused");
|
|
542
|
+
});
|
|
543
|
+
|
|
544
|
+
it("tests navigation with group as a focusable element", () => {
|
|
545
|
+
cy.mount(html`<div class="section">
|
|
546
|
+
<button id="before">Before element</button>
|
|
547
|
+
</div>
|
|
548
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
549
|
+
<ui5-button id="first">First focusable</ui5-button>
|
|
550
|
+
</div>
|
|
551
|
+
<div class="section">
|
|
552
|
+
<ui5-button>Something focusable</ui5-button>
|
|
553
|
+
</div>
|
|
554
|
+
<div class="section" tabindex="0" id="second" data-sap-ui-fastnavgroup="true">
|
|
555
|
+
Second focusable
|
|
556
|
+
</div>
|
|
557
|
+
<div class="section">
|
|
558
|
+
<ui5-button>Something focusable</ui5-button>
|
|
559
|
+
</div>
|
|
560
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
561
|
+
<ui5-button id="third">Third focusable</ui5-button>
|
|
562
|
+
</div>
|
|
563
|
+
<div class="section">
|
|
564
|
+
<ui5-button>After Element</ui5-button>
|
|
565
|
+
</div>`);
|
|
566
|
+
|
|
567
|
+
// act
|
|
568
|
+
cy.get("#before").focus();
|
|
569
|
+
cy.realPress(["Shift", "F6"]);
|
|
570
|
+
|
|
571
|
+
// assert 3rd group is focused
|
|
572
|
+
cy.get("#third")
|
|
573
|
+
.should("be.focused");
|
|
574
|
+
|
|
575
|
+
// act
|
|
576
|
+
cy.realPress(["Shift", "F6"]);
|
|
577
|
+
|
|
578
|
+
// assert 2nd group is focused (an empty group is skipped)
|
|
579
|
+
cy.get("#second")
|
|
580
|
+
.should("be.focused");
|
|
581
|
+
|
|
582
|
+
// act
|
|
583
|
+
cy.realPress(["Shift", "F6"]);
|
|
584
|
+
|
|
585
|
+
// assert 1st group is focused
|
|
586
|
+
cy.get("#first")
|
|
587
|
+
.should("be.focused");
|
|
588
|
+
|
|
589
|
+
// act
|
|
590
|
+
cy.realPress(["Shift", "F6"]);
|
|
591
|
+
|
|
592
|
+
// assert 3rd group is focused agian
|
|
593
|
+
cy.get("#third")
|
|
594
|
+
.should("be.focused");
|
|
595
|
+
});
|
|
596
|
+
|
|
597
|
+
it("tests navigation without a focusable element", () => {
|
|
598
|
+
cy.mount(html`<div class="section">
|
|
599
|
+
<ui5-button id="first">Before element</ui5-button>
|
|
600
|
+
</div>
|
|
601
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
602
|
+
Group without focusable element
|
|
603
|
+
</div>
|
|
604
|
+
<div class="section">
|
|
605
|
+
<ui5-button>Something focusable</ui5-button>
|
|
606
|
+
</div>
|
|
607
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
608
|
+
Group without focusable element
|
|
609
|
+
</div>
|
|
610
|
+
<div class="section">
|
|
611
|
+
<ui5-button>Something focusable</ui5-button>
|
|
612
|
+
</div>
|
|
613
|
+
<div class="section">
|
|
614
|
+
<ui5-button>After Element</ui5-button>
|
|
615
|
+
</div>`);
|
|
616
|
+
|
|
617
|
+
// act
|
|
618
|
+
cy.get("#first")
|
|
619
|
+
.realClick();
|
|
620
|
+
|
|
621
|
+
// assert clicked btn is also the focused element
|
|
622
|
+
cy.get("#first")
|
|
623
|
+
.should("be.focused");
|
|
624
|
+
|
|
625
|
+
// act
|
|
626
|
+
cy.realPress(["Shift", "F6"]);
|
|
627
|
+
|
|
628
|
+
// assert same button remains focused as there is no fasnav group with focusable elements
|
|
629
|
+
cy.get("#first")
|
|
630
|
+
.should("be.focused");
|
|
631
|
+
});
|
|
632
|
+
|
|
633
|
+
it("tests navigation with a single group", () => {
|
|
634
|
+
cy.mount(html`<div class="section">
|
|
635
|
+
<button id="before">Before element</button>
|
|
636
|
+
</div>
|
|
637
|
+
<div class="section" data-sap-ui-fastnavgroup="true">
|
|
638
|
+
<ui5-button id="first">Before element</ui5-button>
|
|
639
|
+
</div>
|
|
640
|
+
<div class="section">
|
|
641
|
+
<ui5-button>Something focusable</ui5-button>
|
|
642
|
+
</div>
|
|
643
|
+
<div class="section">
|
|
644
|
+
<ui5-button>Something focusable</ui5-button>
|
|
645
|
+
</div>
|
|
646
|
+
<div class="section">
|
|
647
|
+
<ui5-button>After Element</ui5-button>
|
|
648
|
+
</div>`);
|
|
649
|
+
|
|
650
|
+
// act
|
|
651
|
+
cy.get("#before").focus();
|
|
652
|
+
cy.realPress(["Shift", "F6"]);
|
|
653
|
+
|
|
654
|
+
// assert 1st group is focused
|
|
655
|
+
cy.get("#first")
|
|
656
|
+
.should("be.focused");
|
|
657
|
+
});
|
|
658
|
+
});
|
|
659
|
+
});
|