@openui5/sap.m 1.120.7 → 1.121.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/.reuse/dep5 +23 -21
- package/THIRDPARTY.txt +6 -43
- package/package.json +4 -4
- package/src/sap/m/.library +18 -2
- package/src/sap/m/AccButton.js +1 -1
- package/src/sap/m/ActionListItem.js +1 -1
- package/src/sap/m/ActionSelect.js +11 -11
- package/src/sap/m/ActionSheet.js +12 -8
- package/src/sap/m/ActionSheetRenderer.js +4 -4
- package/src/sap/m/ActionTile.js +7 -1
- package/src/sap/m/ActionTileContent.js +86 -7
- package/src/sap/m/ActionTileContentRenderer.js +4 -41
- package/src/sap/m/AdditionalTextButton.js +1 -1
- package/src/sap/m/App.js +1 -1
- package/src/sap/m/AssociativeOverflowToolbar.js +6 -6
- package/src/sap/m/Avatar.js +32 -14
- package/src/sap/m/Bar.js +5 -5
- package/src/sap/m/BarRenderer.js +3 -3
- package/src/sap/m/Breadcrumbs.js +12 -4
- package/src/sap/m/BreadcrumbsRenderer.js +1 -1
- package/src/sap/m/BusyDialog.js +19 -33
- package/src/sap/m/BusyIndicator.js +1 -1
- package/src/sap/m/Button.js +8 -8
- package/src/sap/m/ButtonRenderer.js +0 -4
- package/src/sap/m/Carousel.js +53 -25
- package/src/sap/m/CarouselLayout.js +14 -3
- package/src/sap/m/CarouselRenderer.js +4 -4
- package/src/sap/m/CheckBox.js +46 -5
- package/src/sap/m/CheckBoxRenderer.js +10 -3
- package/src/sap/m/ColorPalette.js +4 -2
- package/src/sap/m/ColorPalettePopover.js +5 -3
- package/src/sap/m/ColorPaletteRenderer.js +3 -3
- package/src/sap/m/Column.js +3 -4
- package/src/sap/m/ColumnHeaderPopover.js +1 -1
- package/src/sap/m/ColumnListItem.js +59 -20
- package/src/sap/m/ColumnListItemRenderer.js +8 -9
- package/src/sap/m/ColumnPopoverActionItem.js +1 -1
- package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
- package/src/sap/m/ColumnPopoverItem.js +1 -1
- package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
- package/src/sap/m/ColumnPopoverSortItem.js +6 -6
- package/src/sap/m/ComboBox.js +16 -9
- package/src/sap/m/ComboBoxBase.js +10 -9
- package/src/sap/m/ComboBoxTextField.js +6 -4
- package/src/sap/m/ContentConfig.js +142 -0
- package/src/sap/m/CustomListItem.js +1 -1
- package/src/sap/m/CustomTile.js +1 -1
- package/src/sap/m/CustomTreeItem.js +1 -1
- package/src/sap/m/DatePicker.js +19 -18
- package/src/sap/m/DatePickerRenderer.js +3 -3
- package/src/sap/m/DateRangeSelection.js +16 -13
- package/src/sap/m/DateRangeSelectionRenderer.js +3 -3
- package/src/sap/m/DateTimeField.js +17 -9
- package/src/sap/m/DateTimeInput.js +6 -4
- package/src/sap/m/DateTimePicker.js +39 -30
- package/src/sap/m/DateTimePickerRenderer.js +4 -2
- package/src/sap/m/Dialog.js +21 -9
- package/src/sap/m/DialogRenderer.js +10 -3
- package/src/sap/m/DisplayListItem.js +1 -1
- package/src/sap/m/DraftIndicator.js +5 -5
- package/src/sap/m/DynamicDate.js +5 -3
- package/src/sap/m/DynamicDateFormat.js +7 -6
- package/src/sap/m/DynamicDateOption.js +10 -5
- package/src/sap/m/DynamicDateRange.js +56 -43
- package/src/sap/m/DynamicDateUtil.js +3 -3
- package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
- package/src/sap/m/ExpandableText.js +5 -9
- package/src/sap/m/ExpandableTextRenderer.js +3 -3
- package/src/sap/m/FacetFilter.js +17 -8
- package/src/sap/m/FacetFilterItem.js +1 -1
- package/src/sap/m/FacetFilterList.js +7 -7
- package/src/sap/m/FacetFilterRenderer.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 +4 -4
- package/src/sap/m/FeedListItemAction.js +1 -1
- package/src/sap/m/FeedListItemRenderer.js +3 -3
- package/src/sap/m/Fiori20Adapter.js +9 -9
- package/src/sap/m/FlexBox.js +2 -2
- package/src/sap/m/FlexItemData.js +17 -17
- package/src/sap/m/FormattedText.js +7 -6
- package/src/sap/m/GenericTag.js +1 -1
- package/src/sap/m/GenericTagRenderer.js +5 -5
- package/src/sap/m/GenericTile.js +102 -14
- package/src/sap/m/GenericTileLineModeRenderer.js +3 -3
- package/src/sap/m/GenericTileRenderer.js +3 -3
- package/src/sap/m/GroupHeaderListItem.js +1 -1
- package/src/sap/m/GroupHeaderListItemRenderer.js +3 -3
- package/src/sap/m/GrowingEnablement.js +7 -6
- package/src/sap/m/GrowingList.js +1 -1
- package/src/sap/m/HBox.js +1 -1
- package/src/sap/m/HeaderContainer.js +5 -5
- package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
- package/src/sap/m/IconTabBar.js +4 -4
- package/src/sap/m/IconTabBarDragAndDropUtil.js +5 -5
- package/src/sap/m/IconTabBarSelectList.js +2 -2
- package/src/sap/m/IconTabFilter.js +27 -15
- package/src/sap/m/IconTabFilterExpandButtonBadge.js +4 -4
- package/src/sap/m/IconTabHeader.js +61 -28
- package/src/sap/m/IconTabHeaderRenderer.js +5 -5
- package/src/sap/m/IconTabSeparator.js +7 -7
- package/src/sap/m/IllustratedMessage.js +8 -6
- package/src/sap/m/IllustratedMessageType.js +12 -0
- package/src/sap/m/Illustration.js +4 -4
- package/src/sap/m/IllustrationPool.js +3 -3
- package/src/sap/m/Image.js +6 -3
- package/src/sap/m/ImageContent.js +1 -1
- package/src/sap/m/Input.js +65 -36
- package/src/sap/m/InputBase.js +33 -8
- package/src/sap/m/InputBaseRenderer.js +3 -3
- package/src/sap/m/InputListItem.js +1 -1
- package/src/sap/m/InputRenderer.js +5 -6
- package/src/sap/m/Label.js +6 -6
- package/src/sap/m/LightBox.js +4 -4
- package/src/sap/m/LightBoxItem.js +1 -1
- package/src/sap/m/Link.js +30 -6
- package/src/sap/m/LinkRenderer.js +4 -4
- package/src/sap/m/LinkTileContent.js +1 -1
- package/src/sap/m/List.js +1 -1
- package/src/sap/m/ListBase.js +43 -24
- package/src/sap/m/ListItemBase.js +7 -6
- package/src/sap/m/ListItemBaseRenderer.js +3 -0
- package/src/sap/m/MaskEnabler.js +8 -6
- package/src/sap/m/MaskInput.js +1 -1
- package/src/sap/m/MaskInputRenderer.js +2 -2
- package/src/sap/m/MaskInputRule.js +1 -1
- package/src/sap/m/Menu.js +19 -17
- package/src/sap/m/MenuButton.js +8 -6
- package/src/sap/m/MenuItem.js +9 -9
- package/src/sap/m/MenuListItem.js +5 -4
- package/src/sap/m/MessageBox.js +5 -3
- package/src/sap/m/MessageItem.js +1 -1
- package/src/sap/m/MessageListItem.js +4 -3
- package/src/sap/m/MessagePage.js +4 -2
- package/src/sap/m/MessagePopover.js +9 -6
- package/src/sap/m/MessagePopoverItem.js +1 -1
- package/src/sap/m/MessageStrip.js +9 -7
- package/src/sap/m/MessageStripRenderer.js +5 -2
- package/src/sap/m/MessageStripUtilities.js +6 -4
- package/src/sap/m/MessageToast.js +8 -7
- package/src/sap/m/MessageView.js +29 -6
- package/src/sap/m/MessageViewRenderer.js +2 -2
- package/src/sap/m/MultiComboBox.js +36 -17
- package/src/sap/m/MultiComboBoxRenderer.js +4 -4
- package/src/sap/m/MultiEditField.js +4 -4
- package/src/sap/m/MultiInput.js +66 -19
- package/src/sap/m/MultiInputRenderer.js +3 -3
- package/src/sap/m/NavContainer.js +14 -9
- package/src/sap/m/NewsContent.js +1 -1
- package/src/sap/m/NotificationList.js +1 -1
- package/src/sap/m/NotificationListBase.js +4 -4
- package/src/sap/m/NotificationListGroup.js +4 -4
- package/src/sap/m/NotificationListItem.js +4 -4
- package/src/sap/m/NumericContent.js +6 -6
- package/src/sap/m/NumericInput.js +1 -1
- package/src/sap/m/NumericInputRenderer.js +6 -6
- package/src/sap/m/ObjectAttribute.js +7 -6
- package/src/sap/m/ObjectAttributeRenderer.js +3 -3
- package/src/sap/m/ObjectHeader.js +15 -11
- package/src/sap/m/ObjectHeaderRenderer.js +4 -4
- package/src/sap/m/ObjectIdentifier.js +37 -8
- package/src/sap/m/ObjectIdentifierRenderer.js +3 -3
- package/src/sap/m/ObjectListItem.js +4 -4
- package/src/sap/m/ObjectMarker.js +6 -4
- package/src/sap/m/ObjectNumber.js +4 -3
- package/src/sap/m/ObjectNumberRenderer.js +6 -6
- package/src/sap/m/ObjectStatus.js +28 -22
- package/src/sap/m/ObjectStatusRenderer.js +26 -20
- package/src/sap/m/OverflowToolbar.js +2 -2
- package/src/sap/m/OverflowToolbarAssociativePopover.js +3 -3
- package/src/sap/m/OverflowToolbarButton.js +1 -1
- package/src/sap/m/OverflowToolbarLayoutData.js +2 -2
- package/src/sap/m/OverflowToolbarMenuButton.js +1 -1
- package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
- package/src/sap/m/P13nAnyFilterItem.js +1 -1
- package/src/sap/m/P13nColumnsItem.js +1 -1
- package/src/sap/m/P13nColumnsPanel.js +33 -11
- package/src/sap/m/P13nConditionPanel.js +6 -4
- package/src/sap/m/P13nDialog.js +27 -13
- package/src/sap/m/P13nDimMeasureItem.js +1 -1
- package/src/sap/m/P13nDimMeasurePanel.js +18 -12
- package/src/sap/m/P13nFilterItem.js +1 -1
- package/src/sap/m/P13nFilterPanel.js +71 -49
- package/src/sap/m/P13nGroupItem.js +1 -1
- package/src/sap/m/P13nGroupPanel.js +5 -4
- package/src/sap/m/P13nItem.js +1 -1
- package/src/sap/m/P13nPanel.js +1 -1
- package/src/sap/m/P13nSelectionItem.js +1 -1
- package/src/sap/m/P13nSelectionPanel.js +28 -7
- package/src/sap/m/P13nSortItem.js +1 -1
- package/src/sap/m/P13nSortPanel.js +6 -5
- package/src/sap/m/PDFViewer.js +13 -5
- package/src/sap/m/Page.js +4 -8
- package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
- package/src/sap/m/PagingButton.js +5 -4
- package/src/sap/m/Panel.js +10 -5
- package/src/sap/m/PlanningCalendar.js +160 -109
- package/src/sap/m/PlanningCalendarHeader.js +9 -7
- package/src/sap/m/PlanningCalendarLegend.js +5 -5
- package/src/sap/m/PlanningCalendarRow.js +26 -15
- package/src/sap/m/PlanningCalendarView.js +1 -4
- package/src/sap/m/Popover.js +19 -21
- package/src/sap/m/PopoverRenderer.js +4 -4
- package/src/sap/m/ProgressIndicator.js +15 -13
- package/src/sap/m/ProgressIndicatorRenderer.js +3 -4
- package/src/sap/m/PullToRefresh.js +4 -3
- package/src/sap/m/QuickView.js +1 -1
- package/src/sap/m/QuickViewBase.js +1 -1
- package/src/sap/m/QuickViewCard.js +1 -1
- package/src/sap/m/QuickViewCardRenderer.js +3 -3
- package/src/sap/m/QuickViewGroup.js +1 -1
- package/src/sap/m/QuickViewGroupElement.js +1 -1
- package/src/sap/m/QuickViewPage.js +29 -17
- package/src/sap/m/RadioButton.js +4 -4
- package/src/sap/m/RadioButtonGroup.js +38 -5
- package/src/sap/m/RadioButtonGroupRenderer.js +4 -4
- package/src/sap/m/RadioButtonRenderer.js +3 -3
- package/src/sap/m/RangeSlider.js +9 -7
- package/src/sap/m/RangeSliderRenderer.js +2 -2
- package/src/sap/m/RatingIndicator.js +7 -6
- package/src/sap/m/RatingIndicatorRenderer.js +4 -4
- package/src/sap/m/ResponsivePopover.js +1 -3
- package/src/sap/m/ResponsiveScale.js +1 -1
- package/src/sap/m/ScrollBar.js +3 -3
- package/src/sap/m/ScrollContainer.js +6 -6
- package/src/sap/m/SearchField.js +1 -1
- package/src/sap/m/SegmentedButton.js +7 -5
- package/src/sap/m/SegmentedButtonItem.js +1 -1
- package/src/sap/m/Select.js +30 -16
- package/src/sap/m/SelectDialog.js +5 -3
- package/src/sap/m/SelectDialogBase.js +6 -6
- package/src/sap/m/SelectList.js +6 -6
- package/src/sap/m/SelectionDetails.js +7 -3
- 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 +4 -4
- package/src/sap/m/ShellRenderer.js +3 -2
- package/src/sap/m/SimpleFixFlex.js +1 -1
- package/src/sap/m/SinglePlanningCalendar.js +41 -9
- package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
- package/src/sap/m/SinglePlanningCalendarGrid.js +122 -54
- package/src/sap/m/SinglePlanningCalendarGridRenderer.js +22 -20
- package/src/sap/m/SinglePlanningCalendarMonthGrid.js +315 -61
- package/src/sap/m/SinglePlanningCalendarMonthGridRenderer.js +88 -35
- package/src/sap/m/SinglePlanningCalendarMonthView.js +3 -4
- package/src/sap/m/SinglePlanningCalendarView.js +1 -1
- package/src/sap/m/SinglePlanningCalendarWeekView.js +5 -5
- package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +6 -5
- package/src/sap/m/SlideTile.js +6 -6
- package/src/sap/m/SlideTileRenderer.js +1 -3
- package/src/sap/m/Slider.js +38 -11
- package/src/sap/m/SliderRenderer.js +4 -4
- package/src/sap/m/SliderTooltip.js +4 -4
- package/src/sap/m/SliderTooltipBase.js +1 -1
- package/src/sap/m/SliderTooltipContainer.js +10 -8
- package/src/sap/m/SliderTooltipRenderer.js +3 -3
- package/src/sap/m/SplitApp.js +2 -1
- package/src/sap/m/SplitButton.js +5 -3
- package/src/sap/m/SplitContainer.js +20 -11
- package/src/sap/m/StandardDynamicDateOption.js +16 -12
- package/src/sap/m/StandardListItem.js +4 -3
- package/src/sap/m/StandardListItemRenderer.js +3 -3
- package/src/sap/m/StandardTile.js +1 -1
- package/src/sap/m/StandardTreeItem.js +1 -1
- package/src/sap/m/StepInput.js +6 -4
- package/src/sap/m/Suggest.js +5 -5
- package/src/sap/m/SuggestionItem.js +1 -1
- package/src/sap/m/SuggestionsList.js +9 -7
- package/src/sap/m/SuggestionsListRenderer.js +2 -2
- package/src/sap/m/SuggestionsPopover.js +1 -1
- package/src/sap/m/Switch.js +13 -11
- package/src/sap/m/SwitchRenderer.js +3 -3
- package/src/sap/m/TabContainer.js +9 -6
- package/src/sap/m/TabContainerItem.js +5 -8
- package/src/sap/m/TabStrip.js +23 -12
- package/src/sap/m/TabStripItem.js +7 -10
- package/src/sap/m/TabStripRenderer.js +2 -2
- package/src/sap/m/Table.js +4 -5
- package/src/sap/m/TablePersoController.js +10 -8
- package/src/sap/m/TablePersoDialog.js +19 -16
- package/src/sap/m/TablePersoProvider.js +1 -1
- package/src/sap/m/TableRenderer.js +4 -4
- package/src/sap/m/TableSelectDialog.js +5 -3
- package/src/sap/m/Text.js +36 -39
- package/src/sap/m/TextArea.js +5 -3
- package/src/sap/m/TextRenderer.js +2 -7
- package/src/sap/m/Tile.js +1 -1
- package/src/sap/m/TileAttribute.js +64 -0
- package/src/sap/m/TileAttributeRenderer.js +70 -0
- package/src/sap/m/TileContainer.js +10 -8
- package/src/sap/m/TileContent.js +8 -4
- package/src/sap/m/TileRenderer.js +3 -3
- package/src/sap/m/TimePicker.js +24 -19
- package/src/sap/m/TimePickerClock.js +4 -3
- package/src/sap/m/TimePickerClocks.js +1 -1
- package/src/sap/m/TimePickerInputs.js +1 -1
- package/src/sap/m/TimePickerInternals.js +12 -10
- package/src/sap/m/TimePickerSlider.js +9 -7
- package/src/sap/m/TimePickerSliders.js +17 -13
- package/src/sap/m/TimePickerSlidersRenderer.js +3 -3
- package/src/sap/m/Title.js +5 -4
- package/src/sap/m/TitlePropagationSupport.js +4 -4
- package/src/sap/m/ToggleButton.js +4 -3
- package/src/sap/m/Token.js +6 -6
- package/src/sap/m/Tokenizer.js +16 -10
- package/src/sap/m/Toolbar.js +4 -4
- 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 +4 -2
- package/src/sap/m/TreeItemBase.js +4 -3
- package/src/sap/m/TreeItemBaseRenderer.js +3 -3
- package/src/sap/m/UploadCollection.js +28 -24
- 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 +5 -5
- package/src/sap/m/VariantItem.js +8 -3
- package/src/sap/m/VariantManagement.js +112 -33
- package/src/sap/m/ViewSettingsCustomItem.js +1 -1
- package/src/sap/m/ViewSettingsCustomTab.js +1 -1
- package/src/sap/m/ViewSettingsDialog.js +34 -21
- package/src/sap/m/ViewSettingsFilterItem.js +1 -1
- package/src/sap/m/ViewSettingsItem.js +9 -2
- package/src/sap/m/VisibleItem.js +1 -1
- package/src/sap/m/WheelSlider.js +4 -3
- package/src/sap/m/WheelSliderContainer.js +1 -1
- package/src/sap/m/WheelSliderContainerRenderer.js +3 -3
- package/src/sap/m/Wizard.js +17 -15
- package/src/sap/m/WizardProgressNavigator.js +18 -2
- package/src/sap/m/WizardProgressNavigatorRenderer.js +9 -5
- package/src/sap/m/WizardRenderer.js +6 -4
- package/src/sap/m/WizardStep.js +9 -11
- package/src/sap/m/changeHandler/AddTableColumn.js +3 -7
- package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
- package/src/sap/m/changeHandler/CombineButtons.js +4 -4
- package/src/sap/m/changeHandler/MoveTableColumns.js +3 -2
- package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
- package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
- package/src/sap/m/delegate/ValueStateMessage.js +3 -3
- package/src/sap/m/designtime/IconTabBar.designtime.js +3 -2
- package/src/sap/m/designtime/Link.designtime.js +4 -4
- package/src/sap/m/designtime/MenuButton.designtime.js +3 -0
- package/src/sap/m/designtime/ObjectIdentifier.designtime.js +0 -4
- package/src/sap/m/designtime/messagebundle_en_US_saprigi.properties +91 -91
- package/src/sap/m/flexibility/EngineFlex.js +14 -8
- package/src/sap/m/flexibility/MenuButton.flexibility.js +1 -0
- package/src/sap/m/inputUtils/SuggestionsPopoverPopoverMixin.js +4 -4
- package/src/sap/m/library.js +181 -59
- package/src/sap/m/messagebundle.properties +113 -90
- package/src/sap/m/messagebundle_ar.properties +16 -10
- package/src/sap/m/messagebundle_bg.properties +19 -13
- package/src/sap/m/messagebundle_ca.properties +16 -10
- package/src/sap/m/messagebundle_cnr.properties +21 -15
- package/src/sap/m/messagebundle_cs.properties +16 -10
- package/src/sap/m/messagebundle_cy.properties +19 -13
- package/src/sap/m/messagebundle_da.properties +14 -8
- package/src/sap/m/messagebundle_de.properties +12 -6
- package/src/sap/m/messagebundle_el.properties +27 -21
- package/src/sap/m/messagebundle_en.properties +1164 -22
- package/src/sap/m/messagebundle_en_GB.properties +23 -17
- package/src/sap/m/messagebundle_en_US_saprigi.properties +34 -22
- package/src/sap/m/messagebundle_es.properties +19 -13
- package/src/sap/m/messagebundle_es_MX.properties +18 -12
- package/src/sap/m/messagebundle_et.properties +14 -8
- package/src/sap/m/messagebundle_fi.properties +21 -15
- package/src/sap/m/messagebundle_fr.properties +15 -9
- package/src/sap/m/messagebundle_fr_CA.properties +11 -5
- package/src/sap/m/messagebundle_hi.properties +24 -18
- package/src/sap/m/messagebundle_hr.properties +15 -9
- package/src/sap/m/messagebundle_hu.properties +20 -14
- package/src/sap/m/messagebundle_id.properties +15 -9
- package/src/sap/m/messagebundle_it.properties +17 -11
- package/src/sap/m/messagebundle_iw.properties +13 -7
- package/src/sap/m/messagebundle_ja.properties +23 -17
- package/src/sap/m/messagebundle_kk.properties +14 -8
- package/src/sap/m/messagebundle_ko.properties +18 -12
- package/src/sap/m/messagebundle_lt.properties +17 -11
- package/src/sap/m/messagebundle_lv.properties +26 -20
- package/src/sap/m/messagebundle_mk.properties +20 -14
- package/src/sap/m/messagebundle_ms.properties +13 -7
- package/src/sap/m/messagebundle_nl.properties +16 -10
- package/src/sap/m/messagebundle_no.properties +15 -9
- package/src/sap/m/messagebundle_pl.properties +16 -10
- package/src/sap/m/messagebundle_pt.properties +16 -10
- package/src/sap/m/messagebundle_pt_PT.properties +13 -7
- package/src/sap/m/messagebundle_ro.properties +13 -7
- package/src/sap/m/messagebundle_ru.properties +15 -9
- package/src/sap/m/messagebundle_sh.properties +21 -15
- package/src/sap/m/messagebundle_sk.properties +13 -7
- package/src/sap/m/messagebundle_sl.properties +14 -8
- package/src/sap/m/messagebundle_sr.properties +21 -15
- package/src/sap/m/messagebundle_sv.properties +15 -9
- package/src/sap/m/messagebundle_th.properties +12 -6
- package/src/sap/m/messagebundle_tr.properties +15 -9
- package/src/sap/m/messagebundle_uk.properties +15 -9
- package/src/sap/m/messagebundle_vi.properties +16 -10
- package/src/sap/m/messagebundle_zh_CN.properties +12 -6
- package/src/sap/m/messagebundle_zh_TW.properties +12 -6
- package/src/sap/m/p13n/.eslintrc.json +19 -0
- package/src/sap/m/p13n/AbstractContainer.js +43 -29
- package/src/sap/m/p13n/AbstractContainerItem.js +8 -8
- package/src/sap/m/p13n/BasePanel.js +123 -76
- package/src/sap/m/p13n/Container.js +80 -50
- package/src/sap/m/p13n/Engine.js +331 -294
- package/src/sap/m/p13n/FilterController.js +335 -0
- package/src/sap/m/p13n/FilterPanel.js +291 -0
- package/src/sap/m/p13n/FlexUtil.js +23 -21
- package/src/sap/m/p13n/GroupController.js +97 -85
- package/src/sap/m/p13n/GroupPanel.js +30 -25
- package/src/sap/m/p13n/MetadataHelper.js +65 -21
- package/src/sap/m/p13n/PersistenceProvider.js +11 -9
- package/src/sap/m/p13n/Popup.js +63 -45
- package/src/sap/m/p13n/QueryPanel.js +117 -93
- package/src/sap/m/p13n/SelectionController.js +302 -237
- package/src/sap/m/p13n/SelectionPanel.js +117 -83
- package/src/sap/m/p13n/SortController.js +100 -89
- package/src/sap/m/p13n/SortPanel.js +46 -31
- package/src/sap/m/p13n/enums/PersistenceMode.js +57 -0
- package/src/sap/m/p13n/{enum → enums}/ProcessingStrategy.js +10 -8
- package/src/sap/m/p13n/handler/xConfigHandler.js +175 -161
- package/src/sap/m/p13n/modification/FlexModificationHandler.js +151 -133
- package/src/sap/m/p13n/modification/LocalStorageModificationHandler.js +28 -28
- package/src/sap/m/p13n/modification/ModificationHandler.js +15 -15
- package/src/sap/m/p13n/modules/AdaptationProvider.js +7 -7
- package/src/sap/m/p13n/modules/DefaultProviderRegistry.js +20 -18
- package/src/sap/m/p13n/modules/StateHandlerRegistry.js +7 -7
- package/src/sap/m/p13n/modules/UIManager.js +119 -117
- package/src/sap/m/p13n/modules/xConfigAPI.js +74 -68
- package/src/sap/m/plugins/CellSelector.js +142 -26
- package/src/sap/m/plugins/ColumnResizer.js +12 -17
- package/src/sap/m/plugins/ContextMenuSetting.js +155 -0
- package/src/sap/m/plugins/CopyProvider.js +165 -110
- package/src/sap/m/plugins/DataStateIndicator.js +9 -6
- package/src/sap/m/plugins/PasteProvider.js +18 -10
- package/src/sap/m/plugins/PluginBase.js +39 -15
- 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 +3 -3
- 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 +3 -3
- package/src/sap/m/semantic/MessagesIndicator.js +1 -1
- package/src/sap/m/semantic/MultiSelectAction.js +3 -3
- 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 +7 -5
- 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 +4 -2
- package/src/sap/m/semantic/SemanticSelect.js +1 -1
- package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
- 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 +6 -12
- 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/ColumnWidthController.js +2 -3
- package/src/sap/m/table/Util.js +67 -40
- 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 +5 -5
- package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
- package/src/sap/m/table/columnmenu/Menu.js +13 -20
- package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
- package/src/sap/m/table/columnmenu/QuickActionBase.js +1 -1
- package/src/sap/m/table/columnmenu/QuickActionItem.js +1 -1
- package/src/sap/m/table/columnmenu/QuickGroup.js +7 -5
- package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -1
- package/src/sap/m/table/columnmenu/QuickSort.js +6 -4
- package/src/sap/m/table/columnmenu/QuickSortItem.js +6 -4
- package/src/sap/m/table/columnmenu/QuickTotal.js +7 -5
- package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -1
- package/src/sap/m/themes/base/ActionSheet.less +10 -3
- package/src/sap/m/themes/base/ActionTile.less +7 -4
- package/src/sap/m/themes/base/Carousel.less +1 -1
- package/src/sap/m/themes/base/ContextMenuSetting.less +3 -0
- package/src/sap/m/themes/base/IconTabBar.less +2 -2
- package/src/sap/m/themes/base/Label.less +2 -1
- package/src/sap/m/themes/base/Link.less +1 -1
- package/src/sap/m/themes/base/ListItemBase.less +1 -1
- package/src/sap/m/themes/base/MenuButton.less +2 -2
- package/src/sap/m/themes/base/MessageView.less +6 -0
- package/src/sap/m/themes/base/MultiComboBox.less +7 -4
- package/src/sap/m/themes/base/NumericContent.less +2 -2
- package/src/sap/m/themes/base/ObjectListItem.less +1 -1
- package/src/sap/m/themes/base/ObjectNumber.less +4 -4
- package/src/sap/m/themes/base/ObjectStatus.less +263 -160
- package/src/sap/m/themes/base/Panel.less +18 -4
- package/src/sap/m/themes/base/Popover.less +5 -0
- package/src/sap/m/themes/base/SinglePlanningCalendarMonthGrid.less +21 -0
- package/src/sap/m/themes/base/StandardListItem.less +1 -1
- package/src/sap/m/themes/base/SuggestionItem.less +6 -0
- package/src/sap/m/themes/base/Table.less +0 -5
- package/src/sap/m/themes/base/TablePersoDialog.less +4 -2
- package/src/sap/m/themes/base/Text.less +2 -1
- package/src/sap/m/themes/base/UploadCollection.less +2 -2
- package/src/sap/m/themes/base/UploadSet.less +55 -0
- package/src/sap/m/themes/base/VariantManagement.less +2 -1
- package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-NewMail.svg +27 -0
- package/src/sap/m/themes/base/illustrations/sapIllus-Dialog-SignOut.svg +24 -0
- package/src/sap/m/themes/base/illustrations/sapIllus-Dot-NewMail.svg +9 -0
- package/src/sap/m/themes/base/illustrations/sapIllus-Dot-SignOut.svg +12 -0
- package/src/sap/m/themes/base/illustrations/sapIllus-Scene-NewMail.svg +59 -0
- package/src/sap/m/themes/base/illustrations/sapIllus-Scene-SignOut.svg +113 -0
- package/src/sap/m/themes/base/illustrations/sapIllus-Spot-NewMail.svg +27 -0
- package/src/sap/m/themes/base/illustrations/sapIllus-Spot-SignOut.svg +23 -0
- package/src/sap/m/themes/base/library.source.less +2 -1
- package/src/sap/m/upload/ActionsPlaceholder.js +1 -1
- package/src/sap/m/upload/Column.js +1 -1
- package/src/sap/m/upload/FilePreviewDialog.js +5 -5
- package/src/sap/m/upload/FilterPanel.js +5 -3
- package/src/sap/m/upload/UploadSet.js +122 -61
- package/src/sap/m/upload/UploadSetItem.js +31 -7
- package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
- package/src/sap/m/upload/UploadSetwithTable.js +7 -6
- package/src/sap/m/upload/UploadSetwithTableItem.js +5 -5
- package/src/sap/m/upload/UploaderTableItem.js +1 -1
- package/src/sap/m/upload/p13n/PersManager.js +4 -2
- package/src/sap/m/upload/p13n/mediator/BaseMediator.js +1 -1
- package/src/sap/m/upload/p13n/mediator/ColumnsMediator.js +5 -4
- package/src/sap/m/upload/p13n/mediator/FilterMediator.js +5 -2
- package/src/sap/m/upload/p13n/mediator/GroupMediator.js +5 -4
- package/src/sap/m/upload/p13n/mediator/SortMediator.js +5 -4
- package/src/sap/m/upload/p13n/modules/PersPopupManager.js +3 -3
- package/LICENSES/BSD-2-Clause.txt +0 -22
- package/src/sap/m/CustomAttribute.js +0 -53
- package/src/sap/m/p13n/enum/PersistenceMode.js +0 -55
|
@@ -4,8 +4,22 @@
|
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
sap.ui.define([
|
|
7
|
-
"./QueryPanel",
|
|
8
|
-
|
|
7
|
+
"./QueryPanel",
|
|
8
|
+
"sap/m/Text",
|
|
9
|
+
"sap/m/SegmentedButton",
|
|
10
|
+
"sap/m/SegmentedButtonItem",
|
|
11
|
+
"sap/ui/core/Lib",
|
|
12
|
+
"sap/ui/layout/Grid",
|
|
13
|
+
"sap/ui/layout/GridData"
|
|
14
|
+
], (
|
|
15
|
+
QueryPanel,
|
|
16
|
+
Text,
|
|
17
|
+
SegmentedButton,
|
|
18
|
+
SegmentedButtonItem,
|
|
19
|
+
Library,
|
|
20
|
+
Grid,
|
|
21
|
+
GridData
|
|
22
|
+
) => {
|
|
9
23
|
"use strict";
|
|
10
24
|
|
|
11
25
|
/**
|
|
@@ -21,23 +35,23 @@ sap.ui.define([
|
|
|
21
35
|
* @extends sap.m.p13n.QueryPanel
|
|
22
36
|
*
|
|
23
37
|
* @author SAP SE
|
|
24
|
-
* @version 1.
|
|
38
|
+
* @version 1.121.0
|
|
25
39
|
*
|
|
26
40
|
* @public
|
|
27
41
|
* @since 1.96
|
|
28
42
|
* @alias sap.m.p13n.SortPanel
|
|
29
43
|
*/
|
|
30
44
|
|
|
31
|
-
|
|
45
|
+
const SortPanel = QueryPanel.extend("sap.m.p13n.SortPanel", {
|
|
32
46
|
metadata: {
|
|
33
47
|
properties: {
|
|
34
48
|
/**
|
|
35
49
|
* A short text describing the panel.
|
|
36
50
|
* <b>Note:</b> This text will only be displayed if the panel is being used in a <code>sap.m.p13n.Popup</code>.
|
|
37
51
|
*/
|
|
38
|
-
|
|
52
|
+
title: {
|
|
39
53
|
type: "string",
|
|
40
|
-
defaultValue:
|
|
54
|
+
defaultValue: Library.getResourceBundleFor("sap.m").getText("p13n.DEFAULT_TITLE_SORT")
|
|
41
55
|
}
|
|
42
56
|
},
|
|
43
57
|
library: "sap.m"
|
|
@@ -66,25 +80,26 @@ sap.ui.define([
|
|
|
66
80
|
|
|
67
81
|
/**
|
|
68
82
|
* Sets the personalization state of the panel instance.
|
|
83
|
+
*
|
|
69
84
|
* @name sap.m.p13n.SortPanel.setP13nData
|
|
70
85
|
* @public
|
|
71
86
|
* @function
|
|
72
87
|
*
|
|
73
|
-
* @param {sap.m.p13n.SortItem} aP13nData An array containing the personalization state
|
|
88
|
+
* @param {sap.m.p13n.SortItem[]} aP13nData An array containing the personalization state
|
|
74
89
|
* @returns {sap.m.p13n.SortPanel} The SortPanel instance
|
|
75
90
|
*
|
|
76
91
|
*/
|
|
77
92
|
|
|
78
|
-
SortPanel.prototype._createRemoveButton = function
|
|
79
|
-
|
|
93
|
+
SortPanel.prototype._createRemoveButton = function() {
|
|
94
|
+
const oRemoveBtn = QueryPanel.prototype._createRemoveButton.apply(this, arguments);
|
|
80
95
|
oRemoveBtn.setLayoutData(new GridData({
|
|
81
|
-
span: "XL3 L3 M3 S4"//on "S" the Asc/Desc text is invisible, we need to increase the size the
|
|
96
|
+
span: "XL3 L3 M3 S4" //on "S" the Asc/Desc text is invisible, we need to increase the size the
|
|
82
97
|
}));
|
|
83
98
|
return oRemoveBtn;
|
|
84
99
|
};
|
|
85
100
|
|
|
86
|
-
SortPanel.prototype._createOrderSwitch = function
|
|
87
|
-
|
|
101
|
+
SortPanel.prototype._createOrderSwitch = function(sKey, bDesc) {
|
|
102
|
+
const oSortOrderSwitch = new SegmentedButton({
|
|
88
103
|
enabled: sKey ? true : false,
|
|
89
104
|
layoutData: new GridData({
|
|
90
105
|
span: "XL2 L2 M2 S3" //on "S" the Asc/Desc text is invisible, we need to increase the size then
|
|
@@ -99,15 +114,15 @@ sap.ui.define([
|
|
|
99
114
|
icon: "sap-icon://sort-descending"
|
|
100
115
|
})
|
|
101
116
|
],
|
|
102
|
-
selectionChange:
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
117
|
+
selectionChange: (oEvt) => {
|
|
118
|
+
const oItem = oEvt.getParameter("item");
|
|
119
|
+
const sSortOrder = oItem.getKey();
|
|
120
|
+
const oText = oEvt.getSource().getParent().getContent()[2];
|
|
106
121
|
oText.setText(this._getSortOrderText(sSortOrder === "desc"));
|
|
107
|
-
|
|
122
|
+
const sKey = oEvt.oSource.getParent().getContent()[0].getSelectedItem().getKey();
|
|
108
123
|
|
|
109
124
|
this._changeOrder(sKey, sSortOrder == "desc");
|
|
110
|
-
}
|
|
125
|
+
}
|
|
111
126
|
});
|
|
112
127
|
|
|
113
128
|
oSortOrderSwitch.setSelectedItem(bDesc ? oSortOrderSwitch.getItems()[1] : oSortOrderSwitch.getItems()[0]);
|
|
@@ -115,7 +130,7 @@ sap.ui.define([
|
|
|
115
130
|
return oSortOrderSwitch;
|
|
116
131
|
};
|
|
117
132
|
|
|
118
|
-
SortPanel.prototype._createSortOrderText = function
|
|
133
|
+
SortPanel.prototype._createSortOrderText = function(sKey, bDesc) {
|
|
119
134
|
return new Text({
|
|
120
135
|
layoutData: new GridData({
|
|
121
136
|
span: "XL3 L3 M3 S3",
|
|
@@ -127,9 +142,9 @@ sap.ui.define([
|
|
|
127
142
|
|
|
128
143
|
SortPanel.prototype._createQueryRowGrid = function(oItem) {
|
|
129
144
|
//Enhance row with sort specific controls (Segmented Button + sort order text)
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
145
|
+
const oSelect = this._createKeySelect(oItem.name);
|
|
146
|
+
const oSortOrderSwitch = this._createOrderSwitch(oItem.name, oItem.descending);
|
|
147
|
+
const oSortOrderText = this._createSortOrderText(oItem.name, oItem.descending);
|
|
133
148
|
|
|
134
149
|
return new Grid({
|
|
135
150
|
containerQuery: true,
|
|
@@ -142,15 +157,15 @@ sap.ui.define([
|
|
|
142
157
|
}).addStyleClass("sapUiTinyMargin");
|
|
143
158
|
};
|
|
144
159
|
|
|
145
|
-
SortPanel.prototype._getPlaceholderText = function
|
|
160
|
+
SortPanel.prototype._getPlaceholderText = function() {
|
|
146
161
|
return this._getResourceText("p13n.SORT_PLACEHOLDER");
|
|
147
162
|
};
|
|
148
163
|
|
|
149
|
-
SortPanel.prototype._getRemoveButtonTooltipText = function
|
|
164
|
+
SortPanel.prototype._getRemoveButtonTooltipText = function() {
|
|
150
165
|
return this._getResourceText("p13n.SORT_REMOVEICONTOOLTIP");
|
|
151
166
|
};
|
|
152
167
|
|
|
153
|
-
SortPanel.prototype._getRemoveButtonAnnouncementText = function
|
|
168
|
+
SortPanel.prototype._getRemoveButtonAnnouncementText = function() {
|
|
154
169
|
return this._getResourceText("p13n.SORT_REMOVEICONANNOUNCE");
|
|
155
170
|
};
|
|
156
171
|
|
|
@@ -158,13 +173,13 @@ sap.ui.define([
|
|
|
158
173
|
QueryPanel.prototype._selectKey.apply(this, arguments);
|
|
159
174
|
|
|
160
175
|
//Enable SegmentedButton
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
176
|
+
const oListItem = oComboBox.getParent().getParent();
|
|
177
|
+
const sNewKey = oComboBox.getSelectedKey();
|
|
178
|
+
const aContent = oListItem.getContent()[0].getContent();
|
|
164
179
|
aContent[1].setEnabled(!!sNewKey);
|
|
165
180
|
|
|
166
181
|
//keep existing 'sortorder' selection
|
|
167
|
-
|
|
182
|
+
const bDescending = aContent[1].getSelectedKey() === "desc";
|
|
168
183
|
this._changeOrder(sNewKey, bDescending);
|
|
169
184
|
};
|
|
170
185
|
|
|
@@ -172,8 +187,8 @@ sap.ui.define([
|
|
|
172
187
|
return bDesc ? this._getResourceText("p13n.SORT_DESCENDING") : this._getResourceText("p13n.SORT_ASCENDING");
|
|
173
188
|
};
|
|
174
189
|
|
|
175
|
-
SortPanel.prototype._changeOrder = function
|
|
176
|
-
|
|
190
|
+
SortPanel.prototype._changeOrder = function(sKey, bDesc) {
|
|
191
|
+
const aItems = this._getP13nModel().getProperty("/items").filter((oItem) => {
|
|
177
192
|
return oItem.name === sKey;
|
|
178
193
|
});
|
|
179
194
|
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* OpenUI5
|
|
3
|
+
* (c) Copyright 2009-2024 SAP SE or an SAP affiliate company.
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
|
+
*/
|
|
6
|
+
sap.ui.define(["sap/ui/base/DataType"], (DataType) => {
|
|
7
|
+
"use strict";
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Enumerations for p13n enum artifacts
|
|
11
|
+
* @namespace
|
|
12
|
+
* @name sap.m.p13n.enums
|
|
13
|
+
* @private
|
|
14
|
+
* @ui5-restricted sap.m.p13n
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Enumeration of the preferred persistence mode for personalization changes.
|
|
19
|
+
*
|
|
20
|
+
* @enum {string}
|
|
21
|
+
* @since 1.104
|
|
22
|
+
* @alias sap.m.p13n.enums.PersistenceMode
|
|
23
|
+
* @private
|
|
24
|
+
* @ui5-restricted sap.ui.mdc, sap.fe
|
|
25
|
+
*/
|
|
26
|
+
const PersistenceMode = {
|
|
27
|
+
/**
|
|
28
|
+
* Personalization changes are created in the flexibility layer using <code>ignoreVariantManagement: true</code>
|
|
29
|
+
*
|
|
30
|
+
* @private
|
|
31
|
+
* @ui5-restricted sap.ui.mdc
|
|
32
|
+
*/
|
|
33
|
+
Global: "Global",
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Personalization changes are created and implicitly persisted only in case no additional <code>VariantManagement</code>
|
|
37
|
+
* control reference could be found. If a <code>sap.ui.fl.variants.VariantManagement</code> has been found,
|
|
38
|
+
* it will be used instead.
|
|
39
|
+
*
|
|
40
|
+
* @private
|
|
41
|
+
* @ui5-restricted sap.fe
|
|
42
|
+
*/
|
|
43
|
+
Auto: "Auto",
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Personalization changes are not persisted
|
|
47
|
+
*
|
|
48
|
+
* @private
|
|
49
|
+
* @ui5-restricted sap.ui.mdc
|
|
50
|
+
*/
|
|
51
|
+
Transient: "Transient"
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
DataType.registerEnum("sap.m.p13n.enums.PersistenceMode", PersistenceMode);
|
|
55
|
+
|
|
56
|
+
return PersistenceMode;
|
|
57
|
+
}, /* bExport= */ true);
|
|
@@ -5,19 +5,19 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
// Provides enumeration sap.m.p13n.ProcessingStrategy
|
|
8
|
-
sap.ui.define(
|
|
8
|
+
sap.ui.define(["sap/ui/base/DataType"], (DataType) => {
|
|
9
9
|
"use strict";
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
/**
|
|
12
12
|
* Defines the delta types of the <code>sap.m.p13n.p13n.Engine</code>.
|
|
13
13
|
*
|
|
14
14
|
* @enum {string}
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
* @private
|
|
16
|
+
* @ui5-restricted sap.m.p13n
|
|
17
17
|
* @since 1.108
|
|
18
|
-
* @alias sap.m.p13n.
|
|
18
|
+
* @alias sap.m.p13n.enums.ProcessingStrategy
|
|
19
19
|
*/
|
|
20
|
-
|
|
20
|
+
const ProcessingStrategy = {
|
|
21
21
|
/**
|
|
22
22
|
* The delta will only calculate changes that will be added in addition to the existing state
|
|
23
23
|
*
|
|
@@ -30,7 +30,7 @@ sap.ui.define(function() {
|
|
|
30
30
|
* <b>Note</b>: For example for array based state, entries added/removed will be respected.
|
|
31
31
|
* For example for object/path based state, the diff will not include paths that have not been explicitly provided.
|
|
32
32
|
*
|
|
33
|
-
|
|
33
|
+
* @private
|
|
34
34
|
* @ui5-restricted sap.m.p13n
|
|
35
35
|
*/
|
|
36
36
|
PartialReplace: true,
|
|
@@ -38,12 +38,14 @@ sap.ui.define(function() {
|
|
|
38
38
|
* The delta will be calculated as complete/absolute state difference, in case the new state does not
|
|
39
39
|
* provide a path to an existing state, this is going to be removed in addition to the PartialReplace processing strategy.
|
|
40
40
|
*
|
|
41
|
-
|
|
41
|
+
* @private
|
|
42
42
|
* @ui5-restricted sap.m.p13n
|
|
43
43
|
*/
|
|
44
44
|
FullReplace: "FullReplace"
|
|
45
45
|
};
|
|
46
46
|
|
|
47
|
+
DataType.registerEnum("sap.m.p13n.enums.ProcessingStrategy", ProcessingStrategy);
|
|
48
|
+
|
|
47
49
|
return ProcessingStrategy;
|
|
48
50
|
|
|
49
51
|
});
|
|
@@ -5,26 +5,26 @@
|
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
sap.ui.define([
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
],
|
|
8
|
+
'sap/m/p13n/Engine',
|
|
9
|
+
'sap/m/p13n/modules/xConfigAPI'
|
|
10
|
+
], (Engine, xConfigAPI) => {
|
|
11
11
|
"use strict";
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* @class Utility class for generic mdc xConfig handling by utilizing the
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
* <code>sap.m.p13n.Engine</code> and its <code>Modificationhandler</code>.
|
|
16
|
+
* This class should be used to handle property changes that should be persisted
|
|
17
|
+
* as flex changes for MDC control while enabling preprocessing via customdata.
|
|
18
18
|
*
|
|
19
19
|
* @author SAP SE
|
|
20
20
|
* @private
|
|
21
21
|
* @alias sap.m.p13n.handler.xConfigHandler
|
|
22
22
|
*/
|
|
23
|
-
|
|
23
|
+
const xConfigHandler = {};
|
|
24
24
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
if (oControl._pQueue === pOriginalPromise){
|
|
25
|
+
const fnQueueChange = (oControl, fTask) => {
|
|
26
|
+
const fCleanupPromiseQueue = (pOriginalPromise) => {
|
|
27
|
+
if (oControl._pQueue === pOriginalPromise) {
|
|
28
28
|
delete oControl._pQueue;
|
|
29
29
|
}
|
|
30
30
|
};
|
|
@@ -47,8 +47,8 @@ sap.ui.define([
|
|
|
47
47
|
});
|
|
48
48
|
|
|
49
49
|
if (!oControl._pPendingModification) {
|
|
50
|
-
oControl._pPendingModification = Engine.getInstance().waitForChanges(oControl).then(
|
|
51
|
-
|
|
50
|
+
oControl._pPendingModification = Engine.getInstance().waitForChanges(oControl).then(() => {
|
|
51
|
+
Engine.getInstance().fireStateChange(oControl);
|
|
52
52
|
Engine.getInstance().clearTrace(oControl);
|
|
53
53
|
delete oControl._pPendingModification;
|
|
54
54
|
});
|
|
@@ -56,163 +56,177 @@ sap.ui.define([
|
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
|
|
59
|
+
function getOperationType(sChangeType) {
|
|
60
|
+
const aChangeTypes = ["add", "remove", "move", "set"];
|
|
61
61
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
return aChangeTypes.find((sType) => {
|
|
63
|
+
return sChangeType.indexOf(sType) === 0;
|
|
64
|
+
});
|
|
65
65
|
|
|
66
|
-
|
|
66
|
+
}
|
|
67
67
|
|
|
68
68
|
function getRevertOperationType(sChangeType) {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
69
|
+
const mOppositeType = {
|
|
70
|
+
add: "remove",
|
|
71
|
+
remove: "add",
|
|
72
|
+
move: "move",
|
|
73
|
+
set: "set"
|
|
74
|
+
};
|
|
75
75
|
const sType = getOperationType(sChangeType);
|
|
76
|
-
|
|
76
|
+
return mOppositeType[sType];
|
|
77
77
|
}
|
|
78
78
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
if (!mMetaConfig || !mMetaConfig.hasOwnProperty("property")) {
|
|
95
|
-
throw new Error("Please provide a map containing the affected aggregation and property name!");
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
var sAffectedProperty = mMetaConfig.property;
|
|
99
|
-
var sAffectedAggregation;
|
|
100
|
-
|
|
101
|
-
return {
|
|
102
|
-
"changeHandler": {
|
|
103
|
-
applyChange: function (oChange, oControl, mPropertyBag) {
|
|
104
|
-
|
|
105
|
-
return fnQueueChange(oControl, function(){
|
|
106
|
-
return Engine.getInstance().readXConfig(oControl, {
|
|
107
|
-
propertyBag: mPropertyBag
|
|
108
|
-
})
|
|
109
|
-
.then(function(oPriorAggregationConfig) {
|
|
110
|
-
|
|
111
|
-
var sOperation = getOperationType(oChange.getChangeType());
|
|
112
|
-
|
|
113
|
-
sAffectedAggregation = oChange.getContent().targetAggregation;
|
|
114
|
-
|
|
115
|
-
var oRevertData = {
|
|
116
|
-
key: oChange.getContent().key
|
|
117
|
-
};
|
|
118
|
-
|
|
119
|
-
if (sOperation !== "set") {
|
|
120
|
-
//In case there is a add/remove operation, flag the revert data as the opposite of the current action (add will be removed as revert and vice versa)
|
|
121
|
-
oRevertData.value = sOperation !== "add";
|
|
122
|
-
} else {
|
|
123
|
-
oRevertData.value = null;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
var oController = Engine.getInstance().getController(oControl, oChange.getChangeType());
|
|
127
|
-
var aCurrentState = oController?.getCurrentState(), oStateItem;
|
|
128
|
-
if (aCurrentState && aCurrentState instanceof Array) {
|
|
129
|
-
oStateItem = aCurrentState.find(function(oItem, iIndex){
|
|
130
|
-
return oItem.key === oChange.getContent().key;
|
|
131
|
-
});
|
|
132
|
-
}
|
|
79
|
+
/**
|
|
80
|
+
* Creates a changehandler specific to the provided aggregation and property name,
|
|
81
|
+
* to enhance the xConfig object for a given mdc control instance.
|
|
82
|
+
*
|
|
83
|
+
* The enhanced object can be accessed using <code>Engine#readAggregationConfig</code>.
|
|
84
|
+
*
|
|
85
|
+
* @param {object} mMetaConfig A map describing the metadata structure that is affected by this changehandler
|
|
86
|
+
* @param {boolean} mMetaConfig.aggregationBased Defines whether the aggregation space or the property space should be used in the xConfig object
|
|
87
|
+
* @param {string} mMetaConfig.property The property name (such as <code>width</code> or <code>label</code>)
|
|
88
|
+
* @param {string} mMetaConfig.operation The operation to be executed by the handler (add, remove, move, set)
|
|
89
|
+
*
|
|
90
|
+
* @returns {object} The created changehandler object
|
|
91
|
+
*/
|
|
92
|
+
xConfigHandler.createHandler = (mMetaConfig) => {
|
|
133
93
|
|
|
134
|
-
|
|
94
|
+
if (!mMetaConfig || !mMetaConfig.hasOwnProperty("property")) {
|
|
95
|
+
throw new Error("Please provide a map containing the affected aggregation and property name!");
|
|
96
|
+
}
|
|
135
97
|
|
|
136
|
-
|
|
137
|
-
|
|
98
|
+
const sAffectedProperty = mMetaConfig.property;
|
|
99
|
+
let sAffectedAggregation;
|
|
100
|
+
|
|
101
|
+
return {
|
|
102
|
+
"changeHandler": {
|
|
103
|
+
applyChange: function(oChange, oControl, mPropertyBag) {
|
|
104
|
+
const sChangePersistenceIdentifier = oChange.getContent().persistenceIdentifier;
|
|
105
|
+
const oController = Engine.getInstance().getController(oControl, oChange.getChangeType(), sChangePersistenceIdentifier);
|
|
106
|
+
if (sChangePersistenceIdentifier && oController.getPersistenceIdentifier() !== sChangePersistenceIdentifier) {
|
|
107
|
+
return Promise.resolve(false);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
return fnQueueChange(oControl, () => {
|
|
111
|
+
return Engine.getInstance().readXConfig(oControl, {
|
|
112
|
+
propertyBag: mPropertyBag
|
|
113
|
+
})
|
|
114
|
+
.then((oPriorAggregationConfig) => {
|
|
115
|
+
const sOperation = getOperationType(oChange.getChangeType());
|
|
116
|
+
sAffectedAggregation = oChange.getContent().targetAggregation;
|
|
117
|
+
|
|
118
|
+
const oRevertData = {
|
|
119
|
+
key: oChange.getContent().key
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
if (sChangePersistenceIdentifier) {
|
|
123
|
+
oRevertData.persistenceIdentifier = sChangePersistenceIdentifier;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
if (sOperation !== "set") {
|
|
127
|
+
//In case there is a add/remove operation, flag the revert data as the opposite of the current action (add will be removed as revert and vice versa)
|
|
128
|
+
oRevertData.value = sOperation !== "add";
|
|
129
|
+
} else {
|
|
130
|
+
oRevertData.value = null;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
const oController = Engine.getInstance().getController(oControl, oChange.getChangeType());
|
|
134
|
+
const aCurrentState = oController?.getCurrentState();
|
|
135
|
+
let oStateItem;
|
|
136
|
+
if (aCurrentState && aCurrentState instanceof Array) {
|
|
137
|
+
oStateItem = aCurrentState.find((oItem, iIndex) => {
|
|
138
|
+
return oItem.key === oChange.getContent().key;
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
oRevertData.targetAggregation = oChange.getContent().targetAggregation;
|
|
143
|
+
|
|
144
|
+
if (oStateItem) {
|
|
145
|
+
oRevertData.index = aCurrentState.indexOf(oStateItem);
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
if (oPriorAggregationConfig &&
|
|
149
|
+
oPriorAggregationConfig.aggregations &&
|
|
150
|
+
oPriorAggregationConfig.aggregations[sAffectedAggregation] &&
|
|
151
|
+
oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().key] &&
|
|
152
|
+
oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().key][sAffectedProperty]
|
|
153
|
+
) {
|
|
154
|
+
oRevertData.value = oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().key][sAffectedProperty];
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
oChange.setRevertData(oRevertData);
|
|
158
|
+
|
|
159
|
+
const oConfig = {
|
|
160
|
+
property: sAffectedProperty,
|
|
161
|
+
key: oChange.getContent().key,
|
|
162
|
+
value: oChange.getContent(),
|
|
163
|
+
operation: sOperation,
|
|
164
|
+
changeType: oChange.getChangeType(),
|
|
165
|
+
propertyBag: mPropertyBag,
|
|
166
|
+
markAsModified: true
|
|
167
|
+
};
|
|
168
|
+
|
|
169
|
+
if (mMetaConfig.aggregationBased) {
|
|
170
|
+
oConfig.controlMeta = {
|
|
171
|
+
aggregation: sAffectedAggregation
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
return Engine.getInstance().enhanceXConfig(oControl, oConfig);
|
|
176
|
+
})
|
|
177
|
+
.then((bConfigModified) => {
|
|
178
|
+
if (!bConfigModified) {
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
fConfigModified(oControl, oChange);
|
|
182
|
+
});
|
|
183
|
+
});
|
|
184
|
+
|
|
185
|
+
},
|
|
186
|
+
completeChangeContent: function(oChange, mChangeSpecificInfo, mPropertyBag) {
|
|
187
|
+
// Not used, but needs to be there
|
|
188
|
+
},
|
|
189
|
+
revertChange: function(oChange, oControl, mPropertyBag) {
|
|
190
|
+
|
|
191
|
+
const sOperation = getRevertOperationType(oChange.getChangeType());
|
|
192
|
+
|
|
193
|
+
sAffectedAggregation = oChange.getContent().targetAggregation;
|
|
194
|
+
|
|
195
|
+
const oConfig = {
|
|
196
|
+
controlMeta: {
|
|
197
|
+
aggregation: sAffectedAggregation,
|
|
198
|
+
property: sAffectedProperty
|
|
199
|
+
},
|
|
200
|
+
property: sAffectedProperty,
|
|
201
|
+
operation: sOperation,
|
|
202
|
+
changeType: oChange.getChangeType(),
|
|
203
|
+
key: oChange.getRevertData().key,
|
|
204
|
+
value: oChange.getRevertData(),
|
|
205
|
+
propertyBag: mPropertyBag
|
|
206
|
+
};
|
|
207
|
+
|
|
208
|
+
if (mMetaConfig.aggregationBased) {
|
|
209
|
+
oConfig.controlMeta = {
|
|
210
|
+
aggregation: sAffectedAggregation
|
|
211
|
+
};
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
return Engine.getInstance().enhanceXConfig(oControl, oConfig)
|
|
215
|
+
.then((bConfigModified) => {
|
|
216
|
+
if (!bConfigModified) {
|
|
217
|
+
return;
|
|
138
218
|
}
|
|
219
|
+
oChange.resetRevertData();
|
|
220
|
+
fConfigModified(oControl, oChange);
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
},
|
|
224
|
+
"layers": {
|
|
225
|
+
"USER": true
|
|
226
|
+
}
|
|
227
|
+
};
|
|
228
|
+
};
|
|
229
|
+
|
|
230
|
+
return xConfigHandler;
|
|
139
231
|
|
|
140
|
-
|
|
141
|
-
&& oPriorAggregationConfig.aggregations
|
|
142
|
-
&& oPriorAggregationConfig.aggregations[sAffectedAggregation]
|
|
143
|
-
&& oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().key]
|
|
144
|
-
&& oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().key][sAffectedProperty]
|
|
145
|
-
){
|
|
146
|
-
oRevertData.value = oPriorAggregationConfig.aggregations[sAffectedAggregation][oChange.getContent().key][sAffectedProperty];
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
oChange.setRevertData(oRevertData);
|
|
150
|
-
|
|
151
|
-
var oConfig = {
|
|
152
|
-
property: sAffectedProperty,
|
|
153
|
-
key: oChange.getContent().key,
|
|
154
|
-
value: oChange.getContent(),
|
|
155
|
-
operation: sOperation,
|
|
156
|
-
changeType: oChange.getChangeType(),
|
|
157
|
-
propertyBag: mPropertyBag,
|
|
158
|
-
markAsModified: true
|
|
159
|
-
};
|
|
160
|
-
|
|
161
|
-
if (mMetaConfig.aggregationBased) {
|
|
162
|
-
oConfig.controlMeta = {
|
|
163
|
-
aggregation: sAffectedAggregation
|
|
164
|
-
};
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
return Engine.getInstance().enhanceXConfig(oControl, oConfig);
|
|
168
|
-
})
|
|
169
|
-
.then(function(){
|
|
170
|
-
fConfigModified(oControl, oChange);
|
|
171
|
-
});
|
|
172
|
-
});
|
|
173
|
-
|
|
174
|
-
},
|
|
175
|
-
completeChangeContent: function (oChange, mChangeSpecificInfo, mPropertyBag) {
|
|
176
|
-
// Not used, but needs to be there
|
|
177
|
-
},
|
|
178
|
-
revertChange: function (oChange, oControl, mPropertyBag) {
|
|
179
|
-
|
|
180
|
-
var sOperation = getRevertOperationType(oChange.getChangeType());
|
|
181
|
-
|
|
182
|
-
sAffectedAggregation = oChange.getContent().targetAggregation;
|
|
183
|
-
|
|
184
|
-
var oConfig = {
|
|
185
|
-
controlMeta: {
|
|
186
|
-
aggregation: sAffectedAggregation,
|
|
187
|
-
property: sAffectedProperty
|
|
188
|
-
},
|
|
189
|
-
property: sAffectedProperty,
|
|
190
|
-
operation: sOperation,
|
|
191
|
-
changeType: oChange.getChangeType(),
|
|
192
|
-
key: oChange.getRevertData().key,
|
|
193
|
-
value: oChange.getRevertData(),
|
|
194
|
-
propertyBag: mPropertyBag
|
|
195
|
-
};
|
|
196
|
-
|
|
197
|
-
if (mMetaConfig.aggregationBased) {
|
|
198
|
-
oConfig.controlMeta = {
|
|
199
|
-
aggregation: sAffectedAggregation
|
|
200
|
-
};
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
return Engine.getInstance().enhanceXConfig(oControl, oConfig)
|
|
204
|
-
.then(function() {
|
|
205
|
-
oChange.resetRevertData();
|
|
206
|
-
fConfigModified(oControl, oChange);
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
},
|
|
210
|
-
"layers": {
|
|
211
|
-
"USER": true
|
|
212
|
-
}
|
|
213
|
-
};
|
|
214
|
-
};
|
|
215
|
-
|
|
216
|
-
return xConfigHandler;
|
|
217
|
-
|
|
218
|
-
});
|
|
232
|
+
});
|