@openui5/sap.m 1.103.1 → 1.106.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/.eslintrc.json +2 -3
- package/.reuse/dep5 +35 -15
- package/LICENSES/LicenseRef-tzdata-PublicDomain.txt +5 -0
- package/THIRDPARTY.txt +64 -21
- package/package.json +4 -4
- package/src/sap/m/.library +17 -1
- package/src/sap/m/AccButton.js +1 -1
- package/src/sap/m/ActionListItem.js +1 -1
- package/src/sap/m/ActionSelect.js +1 -1
- package/src/sap/m/ActionSheet.js +1 -1
- package/src/sap/m/App.js +2 -3
- package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
- package/src/sap/m/Avatar.js +2 -2
- package/src/sap/m/BadgeEnabler.js +1 -2
- package/src/sap/m/Bar.js +11 -10
- package/src/sap/m/Breadcrumbs.js +2 -2
- package/src/sap/m/BusyDialog.js +1 -1
- package/src/sap/m/BusyIndicator.js +1 -1
- package/src/sap/m/Button.js +49 -10
- package/src/sap/m/ButtonRenderer.js +10 -2
- package/src/sap/m/Carousel.js +3 -4
- package/src/sap/m/CarouselLayout.js +1 -1
- package/src/sap/m/CarouselRenderer.js +3 -3
- package/src/sap/m/CheckBox.js +46 -6
- package/src/sap/m/CheckBoxRenderer.js +1 -0
- package/src/sap/m/ColorPalette.js +1 -1
- package/src/sap/m/ColorPalettePopover.js +1 -1
- package/src/sap/m/Column.js +5 -5
- package/src/sap/m/ColumnHeaderPopover.js +5 -7
- package/src/sap/m/ColumnListItem.js +1 -4
- package/src/sap/m/ColumnListItemRenderer.js +1 -2
- package/src/sap/m/ColumnPopoverActionItem.js +3 -3
- package/src/sap/m/ColumnPopoverCustomItem.js +3 -3
- package/src/sap/m/ColumnPopoverItem.js +3 -3
- package/src/sap/m/ColumnPopoverSelectListItem.js +3 -5
- package/src/sap/m/ColumnPopoverSortItem.js +3 -3
- package/src/sap/m/ComboBox.js +6 -5
- package/src/sap/m/ComboBoxBase.js +3 -7
- package/src/sap/m/ComboBoxBaseRenderer.js +2 -2
- package/src/sap/m/ComboBoxTextField.js +1 -7
- package/src/sap/m/ComboBoxTextFieldRenderer.js +19 -4
- package/src/sap/m/CustomDynamicDateOption.js +1 -1
- package/src/sap/m/CustomListItem.js +1 -1
- package/src/sap/m/CustomTile.js +1 -1
- package/src/sap/m/CustomTreeItem.js +3 -3
- package/src/sap/m/CustomTreeItemRenderer.js +2 -2
- package/src/sap/m/DatePicker.js +16 -26
- package/src/sap/m/DateRangeSelection.js +45 -38
- package/src/sap/m/DateTimeField.js +87 -20
- package/src/sap/m/DateTimeInput.js +1 -1
- package/src/sap/m/DateTimePicker.js +58 -32
- package/src/sap/m/DateTimePickerRenderer.js +1 -1
- package/src/sap/m/Dialog.js +44 -2
- package/src/sap/m/DisplayListItem.js +1 -1
- package/src/sap/m/DraftIndicator.js +1 -1
- package/src/sap/m/DynamicDate.js +1 -1
- package/src/sap/m/DynamicDateFormat.js +2 -5
- package/src/sap/m/DynamicDateOption.js +43 -16
- package/src/sap/m/DynamicDateRange.js +49 -7
- package/src/sap/m/DynamicDateRangeRenderer.js +5 -2
- package/src/sap/m/DynamicDateUtil.js +23 -2
- package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
- package/src/sap/m/ExpandableText.js +1 -1
- package/src/sap/m/FacetFilter.js +2 -2
- package/src/sap/m/FacetFilterItem.js +1 -1
- package/src/sap/m/FacetFilterList.js +4 -4
- package/src/sap/m/FeedContent.js +1 -1
- package/src/sap/m/FeedInput.js +1 -1
- package/src/sap/m/FeedListItem.js +1 -1
- package/src/sap/m/FeedListItemAction.js +1 -1
- package/src/sap/m/Fiori20Adapter.js +2 -2
- package/src/sap/m/FlexBox.js +1 -1
- package/src/sap/m/FlexItemData.js +1 -1
- package/src/sap/m/FormattedText.js +1 -1
- package/src/sap/m/GenericTag.js +1 -1
- package/src/sap/m/GenericTile.js +116 -23
- package/src/sap/m/GenericTileLineModeRenderer.js +4 -4
- package/src/sap/m/GenericTileRenderer.js +23 -10
- package/src/sap/m/GroupHeaderListItem.js +1 -1
- package/src/sap/m/GrowingEnablement.js +60 -36
- package/src/sap/m/GrowingList.js +1 -1
- package/src/sap/m/HBox.js +1 -1
- package/src/sap/m/HeaderContainer.js +34 -32
- package/src/sap/m/HeaderContainerItemNavigator.js +3 -6
- package/src/sap/m/IconTabBar.js +54 -22
- package/src/sap/m/IconTabBarSelectList.js +1 -1
- package/src/sap/m/IconTabFilter.js +1 -1
- package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
- package/src/sap/m/IconTabHeader.js +6 -19
- package/src/sap/m/IconTabSeparator.js +1 -1
- package/src/sap/m/IllustratedMessage.js +98 -25
- package/src/sap/m/IllustratedMessageRenderer.js +10 -6
- package/src/sap/m/Illustration.js +8 -1
- package/src/sap/m/IllustrationPool.js +1 -0
- package/src/sap/m/IllustrationRenderer.js +2 -1
- package/src/sap/m/Image.js +73 -3
- package/src/sap/m/ImageContent.js +1 -1
- package/src/sap/m/ImageRenderer.js +66 -2
- package/src/sap/m/Input.js +62 -7
- package/src/sap/m/InputBase.js +1 -1
- package/src/sap/m/InputBaseRenderer.js +2 -2
- package/src/sap/m/InputListItem.js +1 -1
- package/src/sap/m/InputRenderer.js +4 -0
- package/src/sap/m/InstanceManager.js +6 -6
- package/src/sap/m/Label.js +34 -4
- package/src/sap/m/LabelRenderer.js +7 -2
- package/src/sap/m/LightBox.js +2 -2
- package/src/sap/m/LightBoxItem.js +1 -1
- package/src/sap/m/Link.js +74 -10
- package/src/sap/m/LinkRenderer.js +26 -12
- package/src/sap/m/List.js +38 -1
- package/src/sap/m/ListBase.js +109 -44
- package/src/sap/m/ListBaseRenderer.js +7 -15
- package/src/sap/m/ListItemBase.js +40 -11
- package/src/sap/m/ListItemBaseRenderer.js +17 -6
- package/src/sap/m/ListRenderer.js +2 -2
- package/src/sap/m/MaskEnabler.js +52 -2
- package/src/sap/m/MaskInput.js +23 -1
- package/src/sap/m/MaskInputRule.js +1 -1
- package/src/sap/m/Menu.js +1 -1
- package/src/sap/m/MenuButton.js +1 -1
- package/src/sap/m/MenuItem.js +1 -1
- package/src/sap/m/MenuListItem.js +1 -1
- package/src/sap/m/MessageBox.js +1 -1
- package/src/sap/m/MessageItem.js +3 -4
- package/src/sap/m/MessageListItem.js +10 -6
- package/src/sap/m/MessagePage.js +1 -1
- package/src/sap/m/MessagePopover.js +4 -1
- package/src/sap/m/MessagePopoverItem.js +1 -1
- package/src/sap/m/MessageStrip.js +1 -1
- package/src/sap/m/MessageToast.js +1 -1
- package/src/sap/m/MessageView.js +1 -1
- package/src/sap/m/MultiComboBox.js +5 -16
- package/src/sap/m/MultiEditField.js +1 -1
- package/src/sap/m/MultiInput.js +1 -15
- package/src/sap/m/NavContainer.js +21 -19
- package/src/sap/m/NewsContent.js +2 -3
- package/src/sap/m/NotificationList.js +1 -1
- package/src/sap/m/NotificationListBase.js +1 -1
- package/src/sap/m/NotificationListGroup.js +3 -7
- package/src/sap/m/NotificationListGroupRenderer.js +1 -1
- package/src/sap/m/NotificationListItem.js +1 -1
- package/src/sap/m/NumericContent.js +1 -1
- package/src/sap/m/NumericInput.js +1 -1
- package/src/sap/m/ObjectAttribute.js +1 -1
- package/src/sap/m/ObjectHeader.js +3 -3
- package/src/sap/m/ObjectIdentifier.js +8 -5
- package/src/sap/m/ObjectListItem.js +7 -1
- package/src/sap/m/ObjectMarker.js +1 -1
- package/src/sap/m/ObjectNumber.js +2 -3
- package/src/sap/m/ObjectNumberRenderer.js +10 -3
- package/src/sap/m/ObjectStatus.js +2 -3
- package/src/sap/m/ObjectStatusRenderer.js +2 -2
- package/src/sap/m/OverflowToolbar.js +3 -8
- package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
- package/src/sap/m/OverflowToolbarAssociativePopoverControls.js +3 -8
- package/src/sap/m/OverflowToolbarAssociativePopoverRenderer.js +2 -2
- package/src/sap/m/OverflowToolbarButton.js +2 -2
- package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
- package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
- package/src/sap/m/P13nAnyFilterItem.js +3 -3
- package/src/sap/m/P13nColumnsItem.js +3 -3
- package/src/sap/m/P13nColumnsPanel.js +3 -3
- package/src/sap/m/P13nConditionPanel.js +10 -3
- package/src/sap/m/P13nDialog.js +3 -3
- package/src/sap/m/P13nDimMeasureItem.js +3 -3
- package/src/sap/m/P13nDimMeasurePanel.js +3 -3
- package/src/sap/m/P13nFilterItem.js +3 -3
- package/src/sap/m/P13nFilterPanel.js +3 -3
- package/src/sap/m/P13nGroupItem.js +3 -3
- package/src/sap/m/P13nGroupPanel.js +3 -3
- package/src/sap/m/P13nItem.js +3 -3
- package/src/sap/m/P13nOperationsHelper.js +2 -2
- package/src/sap/m/P13nPanel.js +3 -3
- package/src/sap/m/P13nSelectionItem.js +3 -3
- package/src/sap/m/P13nSelectionPanel.js +3 -3
- package/src/sap/m/P13nSortItem.js +3 -3
- package/src/sap/m/P13nSortPanel.js +3 -3
- package/src/sap/m/PDFViewer.js +2 -2
- package/src/sap/m/PDFViewerRenderer.js +1 -0
- package/src/sap/m/Page.js +1 -3
- package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
- package/src/sap/m/PagingButton.js +1 -1
- package/src/sap/m/Panel.js +1 -1
- package/src/sap/m/PlanningCalendar.js +4 -16
- package/src/sap/m/PlanningCalendarHeader.js +1 -5
- package/src/sap/m/PlanningCalendarLegend.js +1 -1
- package/src/sap/m/PlanningCalendarRow.js +1 -1
- package/src/sap/m/PlanningCalendarView.js +1 -1
- package/src/sap/m/Popover.js +11 -4
- package/src/sap/m/ProgressIndicator.js +1 -1
- package/src/sap/m/ProgressIndicatorRenderer.js +6 -3
- package/src/sap/m/PullToRefresh.js +1 -1
- package/src/sap/m/QuickView.js +3 -3
- package/src/sap/m/QuickViewBase.js +3 -3
- package/src/sap/m/QuickViewCard.js +3 -3
- package/src/sap/m/QuickViewGroup.js +1 -1
- package/src/sap/m/QuickViewGroupElement.js +3 -3
- package/src/sap/m/QuickViewPage.js +3 -3
- package/src/sap/m/RadioButton.js +47 -20
- package/src/sap/m/RadioButtonGroup.js +29 -26
- package/src/sap/m/RangeSlider.js +1 -3
- package/src/sap/m/RatingIndicator.js +8 -1
- package/src/sap/m/RatingIndicatorRenderer.js +13 -4
- package/src/sap/m/ResponsivePopover.js +3 -3
- package/src/sap/m/ResponsiveScale.js +1 -1
- package/src/sap/m/ScrollBar.js +1 -1
- package/src/sap/m/ScrollContainer.js +1 -1
- package/src/sap/m/SearchField.js +1 -1
- package/src/sap/m/SearchFieldRenderer.js +1 -0
- package/src/sap/m/SegmentedButton.js +1 -1
- package/src/sap/m/SegmentedButtonItem.js +1 -1
- package/src/sap/m/Select.js +8 -14
- package/src/sap/m/SelectDialog.js +2 -1
- package/src/sap/m/SelectDialogBase.js +1 -1
- package/src/sap/m/SelectList.js +1 -1
- package/src/sap/m/SelectListRenderer.js +2 -2
- package/src/sap/m/SelectionDetails.js +2 -2
- package/src/sap/m/SelectionDetailsFacade.js +2 -2
- package/src/sap/m/SelectionDetailsItem.js +1 -1
- package/src/sap/m/SelectionDetailsItemLine.js +1 -1
- package/src/sap/m/Shell.js +1 -1
- package/src/sap/m/SimpleFixFlex.js +1 -1
- package/src/sap/m/SinglePlanningCalendar.js +7 -9
- package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
- package/src/sap/m/SinglePlanningCalendarGrid.js +1 -7
- package/src/sap/m/SinglePlanningCalendarMonthGrid.js +1 -1
- package/src/sap/m/SinglePlanningCalendarMonthGridRenderer.js +0 -2
- package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
- package/src/sap/m/SinglePlanningCalendarView.js +1 -1
- package/src/sap/m/SinglePlanningCalendarWeekView.js +12 -13
- package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
- package/src/sap/m/SlideTile.js +30 -5
- package/src/sap/m/Slider.js +1 -1
- package/src/sap/m/SliderTooltip.js +1 -3
- package/src/sap/m/SliderTooltipBase.js +1 -1
- package/src/sap/m/SliderTooltipBaseRenderer.js +2 -2
- package/src/sap/m/SliderTooltipContainer.js +1 -1
- package/src/sap/m/SliderTooltipContainerRenderer.js +2 -2
- package/src/sap/m/SliderTooltipRenderer.js +2 -2
- package/src/sap/m/SplitApp.js +1 -1
- package/src/sap/m/SplitButton.js +1 -3
- package/src/sap/m/SplitContainer.js +3 -7
- package/src/sap/m/StandardDynamicDateOption.js +9 -15
- package/src/sap/m/StandardListItem.js +1 -1
- package/src/sap/m/StandardListItemRenderer.js +2 -2
- package/src/sap/m/StandardTile.js +1 -1
- package/src/sap/m/StandardTreeItem.js +1 -1
- package/src/sap/m/StepInput.js +1 -1
- package/src/sap/m/SuggestionItem.js +1 -1
- package/src/sap/m/SuggestionsPopover.js +4 -2
- package/src/sap/m/Switch.js +1 -1
- package/src/sap/m/TabContainer.js +1 -1
- package/src/sap/m/TabContainerItem.js +1 -1
- package/src/sap/m/TabStrip.js +1 -1
- package/src/sap/m/TabStripItem.js +1 -1
- package/src/sap/m/Table.js +11 -9
- package/src/sap/m/TablePersoController.js +1 -1
- package/src/sap/m/TablePersoDialog.js +6 -15
- package/src/sap/m/TablePersoProvider.js +1 -1
- package/src/sap/m/TableRenderer.js +2 -9
- package/src/sap/m/TableSelectDialog.js +1 -1
- package/src/sap/m/Text.js +1 -1
- package/src/sap/m/TextArea.js +1 -1
- package/src/sap/m/TextAreaRenderer.js +1 -2
- package/src/sap/m/Tile.js +1 -1
- package/src/sap/m/TileContainer.js +1 -1
- package/src/sap/m/TileContent.js +8 -9
- package/src/sap/m/TileContentRenderer.js +3 -3
- package/src/sap/m/TimePicker.js +45 -8
- package/src/sap/m/TimePickerClock.js +2 -3
- package/src/sap/m/TimePickerClocks.js +5 -3
- package/src/sap/m/TimePickerClocksRenderer.js +4 -2
- package/src/sap/m/TimePickerInputs.js +1 -1
- package/src/sap/m/TimePickerInputsRenderer.js +1 -1
- package/src/sap/m/TimePickerInternals.js +1 -1
- package/src/sap/m/TimePickerSlider.js +1 -1
- package/src/sap/m/TimePickerSliders.js +3 -5
- package/src/sap/m/Title.js +1 -1
- package/src/sap/m/TitlePropagationSupport.js +1 -1
- package/src/sap/m/ToggleButton.js +2 -2
- package/src/sap/m/Token.js +1 -3
- package/src/sap/m/Tokenizer.js +1 -1
- package/src/sap/m/Toolbar.js +1 -1
- package/src/sap/m/ToolbarLayoutData.js +1 -1
- package/src/sap/m/ToolbarSeparator.js +1 -1
- package/src/sap/m/ToolbarSpacer.js +1 -1
- package/src/sap/m/Tree.js +8 -1
- package/src/sap/m/TreeItemBase.js +1 -1
- package/src/sap/m/TreeRenderer.js +0 -10
- package/src/sap/m/UploadCollection.js +2 -2
- package/src/sap/m/UploadCollectionItem.js +1 -1
- package/src/sap/m/UploadCollectionParameter.js +1 -1
- package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
- package/src/sap/m/VBox.js +1 -1
- package/src/sap/m/ValueStateHeader.js +1 -1
- package/src/sap/m/VariantItem.js +160 -0
- package/src/sap/m/VariantManagement.js +717 -571
- package/src/sap/m/ViewSettingsCustomItem.js +1 -1
- package/src/sap/m/ViewSettingsCustomTab.js +1 -1
- package/src/sap/m/ViewSettingsDialog.js +1 -1
- package/src/sap/m/ViewSettingsFilterItem.js +1 -1
- package/src/sap/m/ViewSettingsItem.js +1 -1
- package/src/sap/m/VisibleItem.js +1 -1
- package/src/sap/m/WheelSlider.js +1 -1
- package/src/sap/m/WheelSliderContainer.js +1 -1
- package/src/sap/m/Wizard.js +10 -3
- package/src/sap/m/WizardProgressNavigator.js +1 -1
- package/src/sap/m/WizardStep.js +3 -1
- package/src/sap/m/_thirdparty/purify.js +1622 -0
- package/src/sap/m/changeHandler/AddTableColumn.js +12 -13
- package/src/sap/m/changeHandler/ChangeLinkTarget.js +2 -3
- package/src/sap/m/changeHandler/CombineButtons.js +19 -22
- package/src/sap/m/changeHandler/MoveTableColumns.js +6 -6
- package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +5 -5
- package/src/sap/m/changeHandler/SplitMenuButton.js +7 -6
- package/src/sap/m/delegate/DateNavigation.js +0 -4
- package/src/sap/m/designtime/Link.designtime.js +19 -11
- package/src/sap/m/designtime/VariantManagement.designtime.js +36 -26
- package/src/sap/m/flexibility/EngineFlex.js +48 -0
- package/src/sap/m/inputUtils/selectionRange.js +1 -2
- package/src/sap/m/library.js +60 -7
- package/src/sap/m/messagebundle.properties +57 -6
- package/src/sap/m/messagebundle_ar.properties +39 -9
- package/src/sap/m/messagebundle_bg.properties +33 -3
- package/src/sap/m/messagebundle_ca.properties +32 -2
- package/src/sap/m/messagebundle_cs.properties +32 -2
- package/src/sap/m/messagebundle_cy.properties +34 -4
- package/src/sap/m/messagebundle_da.properties +32 -2
- package/src/sap/m/messagebundle_de.properties +32 -2
- package/src/sap/m/messagebundle_el.properties +35 -5
- package/src/sap/m/messagebundle_en.properties +34 -4
- package/src/sap/m/messagebundle_en_GB.properties +34 -4
- package/src/sap/m/messagebundle_en_US_sappsd.properties +33 -3
- package/src/sap/m/messagebundle_en_US_saprigi.properties +31 -3
- package/src/sap/m/messagebundle_en_US_saptrc.properties +33 -3
- package/src/sap/m/messagebundle_es.properties +33 -3
- package/src/sap/m/messagebundle_es_MX.properties +32 -2
- package/src/sap/m/messagebundle_et.properties +32 -2
- package/src/sap/m/messagebundle_fi.properties +36 -6
- package/src/sap/m/messagebundle_fr.properties +33 -3
- package/src/sap/m/messagebundle_fr_CA.properties +34 -4
- package/src/sap/m/messagebundle_hi.properties +34 -4
- package/src/sap/m/messagebundle_hr.properties +36 -6
- package/src/sap/m/messagebundle_hu.properties +34 -4
- package/src/sap/m/messagebundle_id.properties +34 -4
- package/src/sap/m/messagebundle_it.properties +33 -3
- package/src/sap/m/messagebundle_iw.properties +34 -4
- package/src/sap/m/messagebundle_ja.properties +33 -3
- package/src/sap/m/messagebundle_kk.properties +32 -2
- package/src/sap/m/messagebundle_ko.properties +40 -10
- package/src/sap/m/messagebundle_lt.properties +32 -2
- package/src/sap/m/messagebundle_lv.properties +32 -2
- package/src/sap/m/messagebundle_ms.properties +33 -3
- package/src/sap/m/messagebundle_nl.properties +46 -16
- package/src/sap/m/messagebundle_no.properties +34 -4
- package/src/sap/m/messagebundle_pl.properties +33 -3
- package/src/sap/m/messagebundle_pt.properties +37 -7
- package/src/sap/m/messagebundle_pt_PT.properties +32 -2
- package/src/sap/m/messagebundle_ro.properties +33 -3
- package/src/sap/m/messagebundle_ru.properties +33 -3
- package/src/sap/m/messagebundle_sh.properties +33 -3
- package/src/sap/m/messagebundle_sk.properties +32 -2
- package/src/sap/m/messagebundle_sl.properties +33 -3
- package/src/sap/m/messagebundle_sv.properties +32 -2
- package/src/sap/m/messagebundle_th.properties +65 -35
- package/src/sap/m/messagebundle_tr.properties +36 -6
- package/src/sap/m/messagebundle_uk.properties +33 -3
- package/src/sap/m/messagebundle_vi.properties +33 -3
- package/src/sap/m/messagebundle_zh_CN.properties +33 -3
- package/src/sap/m/messagebundle_zh_TW.properties +32 -2
- package/src/sap/m/p13n/AbstractContainer.js +7 -7
- package/src/sap/m/p13n/AbstractContainerItem.js +4 -4
- package/src/sap/m/p13n/BasePanel.js +24 -13
- package/src/sap/m/p13n/Container.js +3 -3
- package/src/sap/m/p13n/Engine.js +1254 -0
- package/src/sap/m/p13n/FlexUtil.js +161 -0
- package/src/sap/m/p13n/GroupController.js +145 -0
- package/src/sap/m/p13n/GroupPanel.js +12 -5
- package/src/sap/m/p13n/MetadataHelper.js +35 -0
- package/src/sap/m/p13n/PersistenceProvider.js +160 -0
- package/src/sap/m/p13n/Popup.js +49 -12
- package/src/sap/m/p13n/QueryPanel.js +3 -3
- package/src/sap/m/p13n/SelectionController.js +548 -0
- package/src/sap/m/p13n/SelectionPanel.js +23 -5
- package/src/sap/m/p13n/SortController.js +153 -0
- package/src/sap/m/p13n/SortPanel.js +15 -5
- package/src/sap/m/p13n/enum/PersistenceMode.js +43 -0
- package/src/sap/m/p13n/handler/xConfigHandler.js +166 -0
- package/src/sap/m/p13n/modification/FlexModificationHandler.js +90 -0
- package/src/sap/m/p13n/modification/LocalStorageModificationHandler.js +75 -0
- package/src/sap/m/p13n/modification/ModificationHandler.js +143 -0
- package/src/sap/m/p13n/modules/AdaptationProvider.js +67 -0
- package/src/sap/m/p13n/modules/DefaultProviderRegistry.js +147 -0
- package/src/sap/m/p13n/modules/StateHandlerRegistry.js +101 -0
- package/src/sap/m/p13n/modules/UIManager.js +230 -0
- package/src/sap/m/p13n/modules/xConfigAPI.js +288 -0
- package/src/sap/m/plugins/CellSelector.js +741 -0
- package/src/sap/m/plugins/ColumnResizer.js +15 -1
- package/src/sap/m/plugins/DataStateIndicator.js +2 -2
- package/src/sap/m/plugins/PasteProvider.js +1 -1
- package/src/sap/m/plugins/PluginBase.js +4 -3
- package/src/sap/m/rules/CheckBox.support.js +1 -1
- package/src/sap/m/rules/Image.support.js +1 -1
- package/src/sap/m/rules/Link.support.js +1 -1
- package/src/sap/m/rules/MessagePage.support.js +1 -1
- package/src/sap/m/rules/ObjectHeader.support.js +6 -6
- package/src/sap/m/rules/ObjectListItem.support.js +1 -1
- package/src/sap/m/rules/ObjectMarker.support.js +1 -1
- package/src/sap/m/rules/ObjectStatus.support.js +1 -1
- package/src/sap/m/rules/Panel.support.js +1 -1
- package/src/sap/m/rules/Select.support.js +1 -1
- package/src/sap/m/rules/Table.support.js +3 -3
- package/src/sap/m/semantic/AddAction.js +1 -1
- package/src/sap/m/semantic/CancelAction.js +1 -1
- package/src/sap/m/semantic/DeleteAction.js +1 -1
- package/src/sap/m/semantic/DetailPage.js +1 -1
- package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
- package/src/sap/m/semantic/EditAction.js +1 -1
- package/src/sap/m/semantic/FavoriteAction.js +1 -1
- package/src/sap/m/semantic/FilterAction.js +1 -1
- package/src/sap/m/semantic/FilterSelect.js +1 -1
- package/src/sap/m/semantic/FlagAction.js +1 -1
- package/src/sap/m/semantic/ForwardAction.js +1 -1
- package/src/sap/m/semantic/FullscreenPage.js +1 -1
- package/src/sap/m/semantic/GroupAction.js +1 -1
- package/src/sap/m/semantic/GroupSelect.js +1 -1
- package/src/sap/m/semantic/MainAction.js +1 -1
- package/src/sap/m/semantic/MasterPage.js +1 -1
- package/src/sap/m/semantic/MessagesIndicator.js +1 -1
- package/src/sap/m/semantic/MultiSelectAction.js +1 -1
- package/src/sap/m/semantic/NegativeAction.js +1 -1
- package/src/sap/m/semantic/OpenInAction.js +1 -1
- package/src/sap/m/semantic/PositiveAction.js +1 -1
- package/src/sap/m/semantic/PrintAction.js +1 -1
- package/src/sap/m/semantic/SaveAction.js +1 -1
- package/src/sap/m/semantic/Segment.js +1 -1
- package/src/sap/m/semantic/SegmentedContainer.js +1 -1
- package/src/sap/m/semantic/SemanticButton.js +1 -1
- package/src/sap/m/semantic/SemanticConfiguration.js +3 -4
- package/src/sap/m/semantic/SemanticControl.js +1 -1
- package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
- package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
- package/src/sap/m/semantic/SemanticPage.js +1 -1
- package/src/sap/m/semantic/SemanticSelect.js +1 -1
- package/src/sap/m/semantic/SemanticToggleButton.js +1 -3
- package/src/sap/m/semantic/SendEmailAction.js +1 -1
- package/src/sap/m/semantic/SendMessageAction.js +1 -1
- package/src/sap/m/semantic/ShareInJamAction.js +1 -1
- package/src/sap/m/semantic/ShareMenu.js +1 -1
- package/src/sap/m/semantic/ShareMenuPage.js +1 -1
- package/src/sap/m/semantic/SortAction.js +1 -1
- package/src/sap/m/semantic/SortSelect.js +1 -1
- package/src/sap/m/table/Util.js +30 -11
- package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
- package/src/sap/m/table/columnmenu/Entry.js +1 -1
- package/src/sap/m/table/columnmenu/Item.js +1 -1
- package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
- package/src/sap/m/table/columnmenu/Menu.js +50 -13
- package/src/sap/m/table/columnmenu/QuickAction.js +16 -8
- package/src/sap/m/table/columnmenu/QuickActionBase.js +18 -3
- package/src/sap/m/table/columnmenu/QuickActionItem.js +5 -6
- package/src/sap/m/table/columnmenu/QuickGroup.js +29 -5
- package/src/sap/m/table/columnmenu/QuickGroupItem.js +13 -1
- package/src/sap/m/table/columnmenu/QuickSort.js +1 -3
- package/src/sap/m/table/columnmenu/QuickSortItem.js +8 -7
- package/src/sap/m/table/columnmenu/QuickTotal.js +29 -5
- package/src/sap/m/table/columnmenu/QuickTotalItem.js +13 -1
- package/src/sap/m/themes/base/Breadcrumbs.less +6 -0
- package/src/sap/m/themes/base/Button.less +0 -1
- package/src/sap/m/themes/base/Carousel.less +8 -8
- package/src/sap/m/themes/base/CellSelector.less +9 -0
- package/src/sap/m/themes/base/CheckBox.less +1 -0
- package/src/sap/m/themes/base/Dialog.less +1 -0
- package/src/sap/m/themes/base/DisplayListItem.less +3 -3
- package/src/sap/m/themes/base/DynamicDateRange.less +4 -0
- package/src/sap/m/themes/base/FeedContent.less +13 -5
- package/src/sap/m/themes/base/GenericTile.less +56 -9
- package/src/sap/m/themes/base/IllustratedMessage.less +7 -0
- package/src/sap/m/themes/base/NewsContent.less +6 -0
- package/src/sap/m/themes/base/NumericContent.less +1 -1
- package/src/sap/m/themes/base/ObjectStatus.less +2 -1
- package/src/sap/m/themes/base/OverflowToolbarAssociativePopover.less +5 -1
- package/src/sap/m/themes/base/SelectList.less +0 -5
- package/src/sap/m/themes/base/SinglePlanningCalendarGrid.less +7 -0
- package/src/sap/m/themes/base/SlideTile.less +35 -4
- package/src/sap/m/themes/base/Table.less +11 -2
- package/src/sap/m/themes/base/TileContent.less +17 -0
- package/src/sap/m/themes/base/library.source.less +1 -0
- package/src/sap/m/upload/UploadSet.js +300 -23
- package/src/sap/m/upload/UploadSetItem.js +18 -7
- package/src/sap/m/upload/UploadSetRenderer.js +8 -16
- package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
- package/src/sap/m/upload/Uploader.js +1 -2
package/src/sap/m/InputBase.js
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
sap.ui.define(['sap/ui/core/Renderer', 'sap/ui/core/Core', 'sap/ui/core/library', 'sap/ui/core/ValueStateSupport', 'sap/ui/
|
|
8
|
-
function(Renderer, Core, coreLibrary, ValueStateSupport,
|
|
7
|
+
sap.ui.define(['sap/ui/core/Renderer', 'sap/ui/core/Core', 'sap/ui/core/library', 'sap/ui/core/ValueStateSupport', 'sap/ui/Device'],
|
|
8
|
+
function(Renderer, Core, coreLibrary, ValueStateSupport, Device) {
|
|
9
9
|
"use strict";
|
|
10
10
|
|
|
11
11
|
// shortcut for sap.ui.core.TextDirection
|
|
@@ -72,6 +72,10 @@ sap.ui.define(['sap/ui/core/InvisibleText', 'sap/ui/core/Renderer', './InputBase
|
|
|
72
72
|
}
|
|
73
73
|
};
|
|
74
74
|
|
|
75
|
+
InputRenderer.writeOuterAttributes = function (oRm, oControl) {
|
|
76
|
+
oRm.attr("data-ui5-accesskey", oControl.getProperty("accesskey"));
|
|
77
|
+
};
|
|
78
|
+
|
|
75
79
|
/**
|
|
76
80
|
* Adds inner css classes to the input field
|
|
77
81
|
*
|
|
@@ -66,7 +66,7 @@ sap.ui.define(["sap/base/assert", "sap/base/Log", "sap/ui/thirdparty/jquery"],
|
|
|
66
66
|
*
|
|
67
67
|
* @param {string} sCategoryId The category's id.
|
|
68
68
|
* @param {object} oInstance The instance that will be removed from the given category.
|
|
69
|
-
* @returns {object|null} The removed instance or <code>null</code
|
|
69
|
+
* @returns {object|null} The removed instance, or <code>null</code> if the instance isn't managed.
|
|
70
70
|
* @protected
|
|
71
71
|
*/
|
|
72
72
|
InstanceManager.removeInstance = function(sCategoryId, oInstance) {
|
|
@@ -169,7 +169,7 @@ sap.ui.define(["sap/base/assert", "sap/base/Log", "sap/ui/thirdparty/jquery"],
|
|
|
169
169
|
/**
|
|
170
170
|
* Adds a control to predefined lightbox category in instance manager.
|
|
171
171
|
*
|
|
172
|
-
* @param {sap.m.LightBox} oLightBox
|
|
172
|
+
* @param {sap.m.LightBox} oLightBox LightBox to be added to instance manager.
|
|
173
173
|
* @returns {this} Enable method chaining.
|
|
174
174
|
* @protected
|
|
175
175
|
*/
|
|
@@ -186,7 +186,7 @@ sap.ui.define(["sap/base/assert", "sap/base/Log", "sap/ui/thirdparty/jquery"],
|
|
|
186
186
|
* Removes control from predefined popover category in instance manager.
|
|
187
187
|
*
|
|
188
188
|
* @param {sap.ui.core.Control} oPopover to be removed from instance manager.
|
|
189
|
-
* @returns {sap.ui.core.Control|null} The removed popover or <code>null</code
|
|
189
|
+
* @returns {sap.ui.core.Control|null} The removed popover, or <code>null</code> if the popover isn't managed.
|
|
190
190
|
* @protected
|
|
191
191
|
*/
|
|
192
192
|
InstanceManager.removePopoverInstance = function(oPopover){
|
|
@@ -197,7 +197,7 @@ sap.ui.define(["sap/base/assert", "sap/base/Log", "sap/ui/thirdparty/jquery"],
|
|
|
197
197
|
* Removes control from predefined dialog category in instance manager.
|
|
198
198
|
*
|
|
199
199
|
* @param {sap.ui.core.Control} oDialog to be removed from instance manager.
|
|
200
|
-
* @returns {sap.ui.core.Control} The removed
|
|
200
|
+
* @returns {sap.ui.core.Control|null} The removed dialog, or <code>null</code> if the dialog isn't managed.
|
|
201
201
|
* @protected
|
|
202
202
|
*/
|
|
203
203
|
InstanceManager.removeDialogInstance = function(oDialog){
|
|
@@ -208,7 +208,7 @@ sap.ui.define(["sap/base/assert", "sap/base/Log", "sap/ui/thirdparty/jquery"],
|
|
|
208
208
|
* Removes control from predefined lightbox category in instance manager.
|
|
209
209
|
*
|
|
210
210
|
* @param {sap.m.LightBox} oLightBox to be removed from instance manager.
|
|
211
|
-
* @returns {sap.m.LightBox|null} The removed
|
|
211
|
+
* @returns {sap.m.LightBox|null} The removed LightBox, or <code>null</code> if the LightBox isn't managed.
|
|
212
212
|
* @protected
|
|
213
213
|
*/
|
|
214
214
|
InstanceManager.removeLightBoxInstance = function(oLightBox){
|
|
@@ -314,7 +314,7 @@ sap.ui.define(["sap/base/assert", "sap/base/Log", "sap/ui/thirdparty/jquery"],
|
|
|
314
314
|
};
|
|
315
315
|
|
|
316
316
|
/**
|
|
317
|
-
* Gets all of the open LightBoxes. If there's no
|
|
317
|
+
* Gets all of the open LightBoxes. If there's no LightBox open, an empty array is returned.
|
|
318
318
|
*
|
|
319
319
|
* @returns {sap.m.LightBox[]} The opened LightBoxes.
|
|
320
320
|
* @public
|
package/src/sap/m/Label.js
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
// Provides control sap.m.Label
|
|
8
8
|
sap.ui.define([
|
|
9
9
|
'./library',
|
|
10
|
+
"sap/ui/core/Core",
|
|
10
11
|
'sap/ui/core/Control',
|
|
11
12
|
'sap/ui/core/LabelEnablement',
|
|
12
13
|
'sap/m/HyphenationSupport',
|
|
@@ -15,6 +16,7 @@ sap.ui.define([
|
|
|
15
16
|
],
|
|
16
17
|
function(
|
|
17
18
|
library,
|
|
19
|
+
Core,
|
|
18
20
|
Control,
|
|
19
21
|
LabelEnablement,
|
|
20
22
|
HyphenationSupport,
|
|
@@ -73,10 +75,10 @@ function(
|
|
|
73
75
|
* <li> It is not recommended to use labels in Bold.</li>
|
|
74
76
|
* </ul>
|
|
75
77
|
* @extends sap.ui.core.Control
|
|
76
|
-
* @implements sap.ui.core.Label, sap.ui.core.IShrinkable
|
|
78
|
+
* @implements sap.ui.core.Label, sap.ui.core.IShrinkable, sap.ui.core.IAccessKeySupport
|
|
77
79
|
*
|
|
78
80
|
* @author SAP SE
|
|
79
|
-
* @version 1.
|
|
81
|
+
* @version 1.106.0
|
|
80
82
|
*
|
|
81
83
|
* @constructor
|
|
82
84
|
* @public
|
|
@@ -90,7 +92,8 @@ function(
|
|
|
90
92
|
"sap.ui.core.Label",
|
|
91
93
|
"sap.ui.core.IShrinkable",
|
|
92
94
|
"sap.m.IOverflowToolbarContent",
|
|
93
|
-
"sap.m.IHyphenation"
|
|
95
|
+
"sap.m.IHyphenation",
|
|
96
|
+
"sap.ui.core.IAccessKeySupport"
|
|
94
97
|
],
|
|
95
98
|
library : "sap.m",
|
|
96
99
|
properties : {
|
|
@@ -168,7 +171,15 @@ function(
|
|
|
168
171
|
* regardless of the value of the <code>showColon</code> property.
|
|
169
172
|
* @since 1.98
|
|
170
173
|
*/
|
|
171
|
-
showColon : {type : "boolean", group : "Appearance", defaultValue : false}
|
|
174
|
+
showColon : {type : "boolean", group : "Appearance", defaultValue : false},
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* Indicates whether the access keys ref of the control should be highlighted.
|
|
178
|
+
* NOTE: this property is used only when access keys feature is turned on.
|
|
179
|
+
*
|
|
180
|
+
* @private
|
|
181
|
+
*/
|
|
182
|
+
highlightAccKeysRef: { type: "boolean", defaultValue: false, visibility: "hidden" }
|
|
172
183
|
},
|
|
173
184
|
associations : {
|
|
174
185
|
|
|
@@ -201,6 +212,25 @@ function(
|
|
|
201
212
|
};
|
|
202
213
|
};
|
|
203
214
|
|
|
215
|
+
Label.prototype.onBeforeRendering = function () {
|
|
216
|
+
this._handleAccessKeysHighlighting();
|
|
217
|
+
};
|
|
218
|
+
|
|
219
|
+
Label.prototype._handleAccessKeysHighlighting = function () {
|
|
220
|
+
var sLabelForId = this.getLabelFor();
|
|
221
|
+
var sText = this.getText();
|
|
222
|
+
|
|
223
|
+
if (!sLabelForId || !sText) {
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
var oLabeledControl = Core.byId(sLabelForId);
|
|
228
|
+
|
|
229
|
+
if (oLabeledControl && oLabeledControl.isA("sap.m.Input") && oLabeledControl.getProperty("highlightAccKeysRef")) {
|
|
230
|
+
Core.byId(sLabelForId).setProperty("accesskey", (sText[0].toLowerCase()), true);
|
|
231
|
+
}
|
|
232
|
+
};
|
|
233
|
+
|
|
204
234
|
/**
|
|
205
235
|
* Enables the <code>sap.m.Label</code> to move inside the sap.m.OverflowToolbar.
|
|
206
236
|
* Required by the {@link sap.m.IOverflowToolbarContent} interface.
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
// Provides the default renderer for control sap.m.Label
|
|
8
|
-
sap.ui.define(['sap/ui/core/Core', 'sap/ui/core/Renderer', 'sap/m/library', 'sap/ui/core/library', 'sap/m/HyphenationSupport', "sap/ui/core/LabelEnablement"],
|
|
9
|
-
function(Core, Renderer, library, coreLibrary, HyphenationSupport, LabelEnablement) {
|
|
8
|
+
sap.ui.define(['sap/ui/core/Core', 'sap/ui/core/Renderer', 'sap/ui/core/AccessKeysEnablement', 'sap/m/library', 'sap/ui/core/library', 'sap/m/HyphenationSupport', "sap/ui/core/LabelEnablement"],
|
|
9
|
+
function(Core, Renderer, AccessKeysEnablement, library, coreLibrary, HyphenationSupport, LabelEnablement) {
|
|
10
10
|
"use strict";
|
|
11
11
|
|
|
12
12
|
// shortcut for sap.ui.core.TextDirection
|
|
@@ -123,6 +123,11 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/core/Renderer', 'sap/m/library', 'sap
|
|
|
123
123
|
// wrap the label text
|
|
124
124
|
rm.openStart("span", oLabel.getId() + "-text");
|
|
125
125
|
rm.class("sapMLabelTextWrapper");
|
|
126
|
+
|
|
127
|
+
if (oLabel.getProperty("highlightAccKeysRef")) {
|
|
128
|
+
rm.class(AccessKeysEnablement.CSS_CLASS);
|
|
129
|
+
}
|
|
130
|
+
|
|
126
131
|
rm.openEnd();
|
|
127
132
|
|
|
128
133
|
// write the label text
|
package/src/sap/m/LightBox.js
CHANGED
|
@@ -95,11 +95,11 @@ sap.ui.define([
|
|
|
95
95
|
*
|
|
96
96
|
* <h3>Additional Information</h3>
|
|
97
97
|
*
|
|
98
|
-
* Check out the
|
|
98
|
+
* Check out the {@link sap.m.LightBoxItem API Reference}.
|
|
99
99
|
* @extends sap.ui.core.Control
|
|
100
100
|
*
|
|
101
101
|
* @author SAP SE
|
|
102
|
-
* @version 1.
|
|
102
|
+
* @version 1.106.0
|
|
103
103
|
*
|
|
104
104
|
* @constructor
|
|
105
105
|
* @public
|
package/src/sap/m/Link.js
CHANGED
|
@@ -7,28 +7,30 @@
|
|
|
7
7
|
// Provides control sap.m.Link.
|
|
8
8
|
sap.ui.define([
|
|
9
9
|
"./library",
|
|
10
|
+
"sap/ui/core/Core",
|
|
10
11
|
"sap/ui/core/Control",
|
|
11
12
|
"sap/ui/core/InvisibleText",
|
|
12
13
|
"sap/ui/core/EnabledPropagator",
|
|
14
|
+
"sap/ui/core/AccessKeysEnablement",
|
|
13
15
|
"sap/ui/core/LabelEnablement",
|
|
14
16
|
"sap/ui/core/library",
|
|
15
17
|
"sap/ui/Device",
|
|
16
18
|
"./LinkRenderer",
|
|
17
19
|
"sap/ui/events/KeyCodes",
|
|
18
|
-
"sap/base/Log",
|
|
19
20
|
"sap/base/security/URLListValidator"
|
|
20
21
|
],
|
|
21
22
|
function(
|
|
22
23
|
library,
|
|
24
|
+
Core,
|
|
23
25
|
Control,
|
|
24
26
|
InvisibleText,
|
|
25
27
|
EnabledPropagator,
|
|
28
|
+
AccessKeysEnablement,
|
|
26
29
|
LabelEnablement,
|
|
27
30
|
coreLibrary,
|
|
28
31
|
Device,
|
|
29
32
|
LinkRenderer,
|
|
30
33
|
KeyCodes,
|
|
31
|
-
Log,
|
|
32
34
|
URLListValidator
|
|
33
35
|
) {
|
|
34
36
|
"use strict";
|
|
@@ -42,6 +44,9 @@ function(
|
|
|
42
44
|
// shortcut for sap.ui.core.aria.HasPopup
|
|
43
45
|
var AriaHasPopup = coreLibrary.aria.HasPopup;
|
|
44
46
|
|
|
47
|
+
// shortcut for sap.m.LinkAccessibleRole
|
|
48
|
+
var LinkAccessibleRole = library.LinkAccessibleRole;
|
|
49
|
+
|
|
45
50
|
// shortcut for sap.m.EmptyIndicator
|
|
46
51
|
var EmptyIndicatorMode = library.EmptyIndicatorMode;
|
|
47
52
|
|
|
@@ -78,10 +83,10 @@ function(
|
|
|
78
83
|
* @see {@link fiori:https://experience.sap.com/fiori-design-web/link/ Link}
|
|
79
84
|
*
|
|
80
85
|
* @extends sap.ui.core.Control
|
|
81
|
-
* @implements sap.ui.core.IShrinkable, sap.ui.core.IFormContent, sap.ui.core.ITitleContent
|
|
86
|
+
* @implements sap.ui.core.IShrinkable, sap.ui.core.IFormContent, sap.ui.core.ITitleContent, sap.ui.core.IAccessKeySupport
|
|
82
87
|
*
|
|
83
88
|
* @author SAP SE
|
|
84
|
-
* @version 1.
|
|
89
|
+
* @version 1.106.0
|
|
85
90
|
*
|
|
86
91
|
* @constructor
|
|
87
92
|
* @public
|
|
@@ -94,7 +99,8 @@ function(
|
|
|
94
99
|
interfaces : [
|
|
95
100
|
"sap.ui.core.IShrinkable",
|
|
96
101
|
"sap.ui.core.IFormContent",
|
|
97
|
-
"sap.ui.core.ITitleContent"
|
|
102
|
+
"sap.ui.core.ITitleContent",
|
|
103
|
+
"sap.ui.core.IAccessKeySupport"
|
|
98
104
|
],
|
|
99
105
|
library : "sap.m",
|
|
100
106
|
designtime: "sap/m/designtime/Link.designtime",
|
|
@@ -135,8 +141,9 @@ function(
|
|
|
135
141
|
width : {type : "sap.ui.core.CSSSize", group : "Dimension", defaultValue : null},
|
|
136
142
|
|
|
137
143
|
/**
|
|
138
|
-
* Defines the link target URI. Supports standard hyperlink behavior.
|
|
139
|
-
*
|
|
144
|
+
* Defines the link target URI. Supports standard hyperlink behavior.
|
|
145
|
+
* <b>Note:</b> Don't set <code>href</code> property if an action should be triggered by the link. Instead set <code>accessibleRole</code>
|
|
146
|
+
* property to <code>LinkAccessibleRole.Button</code> and register a <code>press</code> event handler.
|
|
140
147
|
*/
|
|
141
148
|
href : {type : "sap.ui.core.URI", group : "Data", defaultValue : null},
|
|
142
149
|
|
|
@@ -194,12 +201,38 @@ function(
|
|
|
194
201
|
*/
|
|
195
202
|
ariaHasPopup : {type : "sap.ui.core.aria.HasPopup", group : "Accessibility", defaultValue : AriaHasPopup.None},
|
|
196
203
|
|
|
204
|
+
/**
|
|
205
|
+
* Describes the accessibility role of the link:<ul>
|
|
206
|
+
* <li><code>LinkAccessibleRole.Default</code> - a navagation is expected to the location given in <code>href</code> property</li>
|
|
207
|
+
* <li><code>LinkAccessibleRole.Button</code> - there will be <code>role</code> attribute with value "Button" rendered. In this scenario the <code>href</code>
|
|
208
|
+
* property value shouldn't be set as navigation isn't expected to occur.</li></ul>
|
|
209
|
+
*
|
|
210
|
+
* @since 1.104.0
|
|
211
|
+
*/
|
|
212
|
+
accessibleRole : {type : "sap.m.LinkAccessibleRole", group : "Accessibility", defaultValue : LinkAccessibleRole.Default},
|
|
213
|
+
|
|
197
214
|
/**
|
|
198
215
|
* Specifies if an empty indicator should be displayed when there is no text.
|
|
199
216
|
*
|
|
200
217
|
* @since 1.89
|
|
201
218
|
*/
|
|
202
|
-
emptyIndicatorMode: { type: "sap.m.EmptyIndicatorMode", group: "Appearance", defaultValue: EmptyIndicatorMode.Off }
|
|
219
|
+
emptyIndicatorMode: { type: "sap.m.EmptyIndicatorMode", group: "Appearance", defaultValue: EmptyIndicatorMode.Off },
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
* Indicates whether the access keys ref of the control should be highlighted.
|
|
223
|
+
* NOTE: this property is used only when access keys feature is turned on.
|
|
224
|
+
*
|
|
225
|
+
* @private
|
|
226
|
+
*/
|
|
227
|
+
highlightAccKeysRef: { type: "boolean", defaultValue: false, visibility: "hidden" },
|
|
228
|
+
|
|
229
|
+
/**
|
|
230
|
+
* Indicates which keyboard key should be pressed to focus the access key ref
|
|
231
|
+
* NOTE: this property is used only when access keys feature is turned on.
|
|
232
|
+
*
|
|
233
|
+
* @private
|
|
234
|
+
*/
|
|
235
|
+
accesskey: { type: "string", defaultValue: "", visibility: "hidden" }
|
|
203
236
|
},
|
|
204
237
|
associations : {
|
|
205
238
|
|
|
@@ -245,6 +278,10 @@ function(
|
|
|
245
278
|
|
|
246
279
|
EnabledPropagator.call(Link.prototype); // inherit "disabled" state from parent controls
|
|
247
280
|
|
|
281
|
+
Link.prototype.init = function () {
|
|
282
|
+
AccessKeysEnablement.registerControl(this);
|
|
283
|
+
};
|
|
284
|
+
|
|
248
285
|
/**
|
|
249
286
|
* Required adaptations before rendering.
|
|
250
287
|
*
|
|
@@ -252,6 +289,18 @@ function(
|
|
|
252
289
|
*/
|
|
253
290
|
Link.prototype.onBeforeRendering = function() {};
|
|
254
291
|
|
|
292
|
+
Link.prototype.getAccessKeysFocusTarget = function () {
|
|
293
|
+
return this.getFocusDomRef();
|
|
294
|
+
};
|
|
295
|
+
|
|
296
|
+
Link.prototype.onAccKeysHighlightStart = function () {
|
|
297
|
+
setRefLabelsHighlightAccKeysRef.call(this, true);
|
|
298
|
+
};
|
|
299
|
+
|
|
300
|
+
Link.prototype.onAccKeysHighlightEnd = function () {
|
|
301
|
+
setRefLabelsHighlightAccKeysRef.call(this, false);
|
|
302
|
+
};
|
|
303
|
+
|
|
255
304
|
/**
|
|
256
305
|
* Handle the key down event for SPACE
|
|
257
306
|
* SHIFT or ESCAPE on pressed SPACE cancels the action
|
|
@@ -405,7 +454,8 @@ function(
|
|
|
405
454
|
sEmphasizedInfo = this.getEmphasized() ? oResourceBundle.getText("LINK_EMPHASIZED") : "",
|
|
406
455
|
sSubtleInfo = this.getSubtle() ? oResourceBundle.getText("LINK_SUBTLE") : "",
|
|
407
456
|
sText = this.getText(),
|
|
408
|
-
sDescription = sText
|
|
457
|
+
sDescription = sText,
|
|
458
|
+
sAccessibleRole = this.getAccessibleRole();
|
|
409
459
|
|
|
410
460
|
if (sText) {
|
|
411
461
|
sEmphasizedInfo && (sDescription += " " + sEmphasizedInfo);
|
|
@@ -413,7 +463,7 @@ function(
|
|
|
413
463
|
}
|
|
414
464
|
|
|
415
465
|
return {
|
|
416
|
-
role: "link",
|
|
466
|
+
role: sAccessibleRole === LinkAccessibleRole.Default ? "link" : sAccessibleRole,
|
|
417
467
|
type: sText ? oResourceBundle.getText("ACC_CTR_TYPE_LINK") : undefined,
|
|
418
468
|
description: sDescription,
|
|
419
469
|
focusable: this.getEnabled(),
|
|
@@ -454,6 +504,20 @@ function(
|
|
|
454
504
|
return !bAlreadyHasSelfReference && (aAriaLabelledBy.length > 0 || bHasReferencingLabels || bAllowEnhancingByParent);
|
|
455
505
|
};
|
|
456
506
|
|
|
507
|
+
var setRefLabelsHighlightAccKeysRef = function (bHighlightAccKeysRef) {
|
|
508
|
+
var aLabels = this.getAriaLabelledBy();
|
|
509
|
+
|
|
510
|
+
if (aLabels.length) {
|
|
511
|
+
var oLabel = Core.byId(aLabels[0]);
|
|
512
|
+
|
|
513
|
+
oLabel.setProperty("highlightAccKeysRef", bHighlightAccKeysRef);
|
|
514
|
+
|
|
515
|
+
if (oLabel.getText && oLabel.getText()) {
|
|
516
|
+
this.setProperty("accesskey", oLabel.getText()[0].toLowerCase());
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
};
|
|
520
|
+
|
|
457
521
|
return Link;
|
|
458
522
|
|
|
459
523
|
});
|
|
@@ -7,11 +7,12 @@
|
|
|
7
7
|
sap.ui.define([
|
|
8
8
|
"sap/ui/core/Renderer",
|
|
9
9
|
"sap/ui/core/library",
|
|
10
|
+
'sap/ui/core/AccessKeysEnablement',
|
|
10
11
|
"sap/ui/util/defaultLinkTypes",
|
|
11
12
|
'./library',
|
|
12
13
|
'sap/ui/core/Core'
|
|
13
14
|
],
|
|
14
|
-
function(Renderer, coreLibrary, defaultLinkTypes, mobileLibrary, Core) {
|
|
15
|
+
function(Renderer, coreLibrary, AccessKeysEnablement, defaultLinkTypes, mobileLibrary, Core) {
|
|
15
16
|
"use strict";
|
|
16
17
|
|
|
17
18
|
// shortcut for sap.ui.core.TextDirection
|
|
@@ -20,6 +21,9 @@
|
|
|
20
21
|
// shortcut for sap.ui.core.aria.HasPopup
|
|
21
22
|
var AriaHasPopup = coreLibrary.aria.HasPopup;
|
|
22
23
|
|
|
24
|
+
// shortcut for sap.m.LinkAccessibleRole
|
|
25
|
+
var LinkAccessibleRole = mobileLibrary.LinkAccessibleRole;
|
|
26
|
+
|
|
23
27
|
/**
|
|
24
28
|
* Link renderer
|
|
25
29
|
* @namespace
|
|
@@ -46,15 +50,16 @@
|
|
|
46
50
|
sTextAlign = Renderer.getTextAlign(oControl.getTextAlign(), sTextDir),
|
|
47
51
|
bShouldHaveOwnLabelledBy = oControl._determineSelfReferencePresence(),
|
|
48
52
|
sHasPopupType = oControl.getAriaHasPopup(),
|
|
49
|
-
sHref = oControl.getHref(),
|
|
50
53
|
sRel = defaultLinkTypes(oControl.getRel(), oControl.getTarget()),
|
|
54
|
+
sHref = oControl.getHref(),
|
|
55
|
+
sAccessibleRole = oControl.getAccessibleRole(),
|
|
51
56
|
oAccAttributes = {
|
|
52
57
|
labelledby: bShouldHaveOwnLabelledBy ? {value: oControl.getId(), append: true } : undefined,
|
|
53
58
|
haspopup: (sHasPopupType === AriaHasPopup.None) ? null : sHasPopupType.toLowerCase()
|
|
54
59
|
},
|
|
55
|
-
bIsValid = sHref && oControl._isHrefValid(sHref),
|
|
56
60
|
bEnabled = oControl.getEnabled(),
|
|
57
|
-
sTypeSemanticInfo = ""
|
|
61
|
+
sTypeSemanticInfo = "",
|
|
62
|
+
sAcccessKey = oControl.getProperty("accesskey");
|
|
58
63
|
|
|
59
64
|
// Link is rendered as a "<a>" element
|
|
60
65
|
oRm.openStart("a", oControl);
|
|
@@ -70,6 +75,23 @@
|
|
|
70
75
|
sTypeSemanticInfo += " " + oControl._sAriaLinkEmphasizedId;
|
|
71
76
|
}
|
|
72
77
|
|
|
78
|
+
if (sAcccessKey) {
|
|
79
|
+
oRm.attr("data-ui5-accesskey", sAcccessKey);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
switch (sAccessibleRole) {
|
|
83
|
+
case LinkAccessibleRole.Button:
|
|
84
|
+
oAccAttributes.role = LinkAccessibleRole.Button;
|
|
85
|
+
break;
|
|
86
|
+
default:
|
|
87
|
+
// Set a valid non empty value for the href attribute representing that there is no navigation,
|
|
88
|
+
// so we don't confuse the screen readers.
|
|
89
|
+
/*eslint-disable no-script-url */
|
|
90
|
+
sHref = sHref && oControl._isHrefValid(sHref) && oControl.getEnabled() ? sHref : "javascript:void(0)";
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
sHref && oRm.attr("href", sHref);
|
|
94
|
+
|
|
73
95
|
oAccAttributes.describedby = sTypeSemanticInfo ? {value: sTypeSemanticInfo.trim(), append: true} : undefined;
|
|
74
96
|
|
|
75
97
|
if (!bEnabled) {
|
|
@@ -86,14 +108,6 @@
|
|
|
86
108
|
oRm.attr("title", oControl.getTooltip_AsString());
|
|
87
109
|
}
|
|
88
110
|
|
|
89
|
-
/* set href only if link is enabled - BCP incident 1570020625 */
|
|
90
|
-
if (bIsValid && bEnabled) {
|
|
91
|
-
oRm.attr("href", sHref);
|
|
92
|
-
} else if (oControl.getText()) {
|
|
93
|
-
// Add href only if there's text. Otherwise virtual cursor would stop on the empty link. BCP 2070055617
|
|
94
|
-
oRm.attr("href", "");
|
|
95
|
-
}
|
|
96
|
-
|
|
97
111
|
if (oControl.getTarget()) {
|
|
98
112
|
oRm.attr("target", oControl.getTarget());
|
|
99
113
|
}
|
package/src/sap/m/List.js
CHANGED
|
@@ -30,7 +30,7 @@ sap.ui.define(["./library", "./ListBase", "./ListRenderer"],
|
|
|
30
30
|
* @extends sap.m.ListBase
|
|
31
31
|
*
|
|
32
32
|
* @author SAP SE
|
|
33
|
-
* @version 1.
|
|
33
|
+
* @version 1.106.0
|
|
34
34
|
*
|
|
35
35
|
* @constructor
|
|
36
36
|
* @public
|
|
@@ -51,6 +51,43 @@ sap.ui.define(["./library", "./ListBase", "./ListRenderer"],
|
|
|
51
51
|
}
|
|
52
52
|
}});
|
|
53
53
|
|
|
54
|
+
List.prototype.getAriaRole = function() {
|
|
55
|
+
return this._sAriaRole || "list";
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Applies the aria <code>role</code> attribute to the control.
|
|
60
|
+
*
|
|
61
|
+
* Supported values are:
|
|
62
|
+
* <ul>
|
|
63
|
+
* <li><code>list</code>: This is the default since version 1.105. The rendered items will have the <code>role="listitem"</code>.</li>
|
|
64
|
+
* <li><code>listbox</code>: Legacy support. The rendererd items will have the <code>role="option"</code>.</li>
|
|
65
|
+
* </ul>
|
|
66
|
+
* <b>Note:</b> This method must be called before the control renders.
|
|
67
|
+
* @param {string} sRole role attribute for the control
|
|
68
|
+
* @protected
|
|
69
|
+
* @ui5-restricted
|
|
70
|
+
* @since 1.105
|
|
71
|
+
*/
|
|
72
|
+
List.prototype.applyAriaRole = function(sRole) {
|
|
73
|
+
this._sAriaRole = sRole;
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
List.prototype.enhanceAccessibilityState = function(oElement, mAriaProps) {
|
|
77
|
+
ListBase.prototype.enhanceAccessibilityState.apply(this, arguments);
|
|
78
|
+
|
|
79
|
+
// update listitem Accessibility state according to the list's role attribute
|
|
80
|
+
if (this.getAriaRole() === "listbox" && oElement.isA("sap.m.ListItemBase")) {
|
|
81
|
+
mAriaProps.roledescription = null;
|
|
82
|
+
mAriaProps.role = "option";
|
|
83
|
+
mAriaProps.owns = null;
|
|
84
|
+
|
|
85
|
+
if (oElement.isSelectable()) {
|
|
86
|
+
mAriaProps.selected = oElement.getSelected();
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
|
|
54
91
|
return List;
|
|
55
92
|
|
|
56
93
|
});
|