@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
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
|
|
7
7
|
sap.ui.define([
|
|
8
8
|
"sap/ui/core/Control",
|
|
9
|
-
"sap/ui/core/Icon",
|
|
10
9
|
"sap/ui/events/KeyCodes",
|
|
11
10
|
"sap/base/Log",
|
|
12
11
|
"sap/base/util/deepEqual",
|
|
@@ -27,9 +26,14 @@ sap.ui.define([
|
|
|
27
26
|
"sap/ui/core/dnd/DragDropInfo",
|
|
28
27
|
"sap/ui/core/dnd/DropInfo",
|
|
29
28
|
"sap/m/library",
|
|
30
|
-
"sap/m/upload/UploadSetToolbarPlaceholder"
|
|
31
|
-
|
|
32
|
-
|
|
29
|
+
"sap/m/upload/UploadSetToolbarPlaceholder",
|
|
30
|
+
"sap/m/IllustratedMessage",
|
|
31
|
+
"sap/m/IllustratedMessageType",
|
|
32
|
+
"sap/m/IllustratedMessageSize",
|
|
33
|
+
"sap/ui/core/Core"
|
|
34
|
+
], function (Control, KeyCodes, Log, deepEqual, MobileLibrary, Button, Dialog, List, MessageBox, OverflowToolbar,
|
|
35
|
+
StandardListItem, Text, ToolbarSpacer, FileUploader, UploadSetItem, Uploader, Renderer, UploaderHttpRequestMethod,
|
|
36
|
+
DragDropInfo, DropInfo, Library, UploadSetToolbarPlaceholder, IllustratedMessage,IllustratedMessageType, IllustratedMessageSize, Core) {
|
|
33
37
|
"use strict";
|
|
34
38
|
|
|
35
39
|
/**
|
|
@@ -43,7 +47,7 @@ sap.ui.define([
|
|
|
43
47
|
* and requests, unified behavior of instant and deferred uploads, as well as improved progress indication.
|
|
44
48
|
* @extends sap.ui.core.Control
|
|
45
49
|
* @author SAP SE
|
|
46
|
-
* @version 1.
|
|
50
|
+
* @version 1.106.0
|
|
47
51
|
* @constructor
|
|
48
52
|
* @public
|
|
49
53
|
* @since 1.63
|
|
@@ -83,6 +87,14 @@ sap.ui.define([
|
|
|
83
87
|
* Defines custom text for the 'No data' description label.
|
|
84
88
|
*/
|
|
85
89
|
noDataDescription: {type: "string", defaultValue: null},
|
|
90
|
+
/**
|
|
91
|
+
* Defines custom text for the 'No data' text label.
|
|
92
|
+
*/
|
|
93
|
+
dragDropText: {type: "string", defaultValue: null},
|
|
94
|
+
/**
|
|
95
|
+
* Defines custom text for the 'No data' description label.
|
|
96
|
+
*/
|
|
97
|
+
dragDropDescription: {type: "string", defaultValue: null},
|
|
86
98
|
/**
|
|
87
99
|
* Defines whether the upload process should be triggered as soon as the file is added.<br>
|
|
88
100
|
* If set to <code>false</code>, no upload is triggered when a file is added.
|
|
@@ -133,7 +145,22 @@ sap.ui.define([
|
|
|
133
145
|
* In addition, if instant upload is set to false the mode sap.m.ListMode.MultiSelect is not supported and will be automatically set to sap.m.ListMode.None.
|
|
134
146
|
* @since 1.100.0
|
|
135
147
|
*/
|
|
136
|
-
mode: {type: "sap.m.ListMode", group: "Behavior", defaultValue: Library.ListMode.MultiSelect}
|
|
148
|
+
mode: {type: "sap.m.ListMode", group: "Behavior", defaultValue: Library.ListMode.MultiSelect},
|
|
149
|
+
/**
|
|
150
|
+
* Enables CloudFile picker feature to upload files from cloud.
|
|
151
|
+
* @experimental Since 1.106.
|
|
152
|
+
*/
|
|
153
|
+
cloudFilePickerEnabled: {type: "boolean", group: "Behavior", defaultValue: false},
|
|
154
|
+
/**
|
|
155
|
+
* Url of the FileShare OData V4 service supplied for CloudFile picker control.
|
|
156
|
+
* @experimental Since 1.106.
|
|
157
|
+
*/
|
|
158
|
+
cloudFilePickerServiceUrl: {type: "sap.ui.core.URI", group: "Data", defaultValue: ""},
|
|
159
|
+
/**
|
|
160
|
+
* The text of the CloudFile picker button. The default text is "Upload from cloud" (translated to the respective language).
|
|
161
|
+
* @experimental Since 1.106.
|
|
162
|
+
*/
|
|
163
|
+
cloudFilePickerButtonText: {type: 'string', defaultValue: ""}
|
|
137
164
|
},
|
|
138
165
|
defaultAggregation: "items",
|
|
139
166
|
aggregations: {
|
|
@@ -156,7 +183,12 @@ sap.ui.define([
|
|
|
156
183
|
/**
|
|
157
184
|
* Defines the uploader to be used. If not specified, the default implementation is used.
|
|
158
185
|
*/
|
|
159
|
-
uploader: {type: "sap.m.upload.Uploader", multiple: false}
|
|
186
|
+
uploader: {type: "sap.m.upload.Uploader", multiple: false},
|
|
187
|
+
/**
|
|
188
|
+
* An illustrated message is displayed when no data is loaded or provided
|
|
189
|
+
* @private
|
|
190
|
+
*/
|
|
191
|
+
_illustratedMessage: { type: "sap.m.IllustratedMessage", multiple: false, visibility: "hidden" }
|
|
160
192
|
},
|
|
161
193
|
events: {
|
|
162
194
|
/**
|
|
@@ -462,14 +494,12 @@ sap.ui.define([
|
|
|
462
494
|
this._oRb = sap.ui.getCore().getLibraryResourceBundle("sap.m");
|
|
463
495
|
|
|
464
496
|
this._oList = null;
|
|
465
|
-
this._oNoDataIcon = new Icon(this.getId() + "-no-data-icon", {
|
|
466
|
-
src: "sap-icon://document",
|
|
467
|
-
size: "6rem",
|
|
468
|
-
noTabStop: true
|
|
469
|
-
});
|
|
470
497
|
this._oEditedItem = null;
|
|
471
498
|
this._oItemToBeDeleted = null;
|
|
472
499
|
this._mListItemIdToItemMap = {};
|
|
500
|
+
this._oUploadButton = null;
|
|
501
|
+
this._oDragIndicator = false;
|
|
502
|
+
this._bAttachEventListener = false;
|
|
473
503
|
|
|
474
504
|
// Drag&drop
|
|
475
505
|
this._$Body = null;
|
|
@@ -479,11 +509,17 @@ sap.ui.define([
|
|
|
479
509
|
this._aGroupHeadersAdded = [];
|
|
480
510
|
this._iFileUploaderPH = null;
|
|
481
511
|
this._oItemToUpdate = null;
|
|
512
|
+
var illustratedMessage = new IllustratedMessage({
|
|
513
|
+
illustrationType: IllustratedMessageType.NoData,
|
|
514
|
+
illustrationSize: IllustratedMessageSize.Auto,
|
|
515
|
+
title: this.getNoDataText(),
|
|
516
|
+
description: this.getNoDataDescription()
|
|
517
|
+
});
|
|
518
|
+
this.setAggregation("_illustratedMessage", illustratedMessage);
|
|
519
|
+
this._cloudFilePickerControl = null;
|
|
482
520
|
};
|
|
483
521
|
|
|
484
522
|
UploadSet.prototype.exit = function () {
|
|
485
|
-
this._oNoDataIcon.destroy();
|
|
486
|
-
this._oNoDataIcon = null;
|
|
487
523
|
if (this._oList) {
|
|
488
524
|
this._oList.destroy();
|
|
489
525
|
this._oList = null;
|
|
@@ -522,6 +558,12 @@ sap.ui.define([
|
|
|
522
558
|
});
|
|
523
559
|
oInput.trigger("focus");
|
|
524
560
|
}
|
|
561
|
+
if (this._oEditedItem && this._oEditedItem.getEditState()) {
|
|
562
|
+
var oMarkerContainer = this._oEditedItem.getListItem().getDomRef().querySelector(".sapMUSObjectMarkerContainer");
|
|
563
|
+
if (oMarkerContainer) {
|
|
564
|
+
oMarkerContainer.setAttribute("style", "display: none");
|
|
565
|
+
}
|
|
566
|
+
}
|
|
525
567
|
}
|
|
526
568
|
};
|
|
527
569
|
|
|
@@ -577,7 +619,7 @@ sap.ui.define([
|
|
|
577
619
|
this._oToolbar = this.getAggregation("toolbar");
|
|
578
620
|
if (!this._oToolbar) {
|
|
579
621
|
this._oToolbar = new OverflowToolbar(this.getId() + "-toolbar", {
|
|
580
|
-
content: [this._oNumberOfAttachmentsTitle, new ToolbarSpacer(), this.getDefaultFileUploader()]
|
|
622
|
+
content: [this._oNumberOfAttachmentsTitle, new ToolbarSpacer(), this.getDefaultFileUploader(), this._getCloudFilePicker()]
|
|
581
623
|
});
|
|
582
624
|
this._iFileUploaderPH = 2;
|
|
583
625
|
this.addDependent(this._oToolbar);
|
|
@@ -586,8 +628,10 @@ sap.ui.define([
|
|
|
586
628
|
if (this._oToolbar && this._iFileUploaderPH > -1) {
|
|
587
629
|
this._setFileUploaderInToolbar(this.getDefaultFileUploader());
|
|
588
630
|
} else if (this._oToolbar) {
|
|
589
|
-
|
|
631
|
+
// fallback position to add file uploader control if UploadSetToolbarPlaceHolder instance not found
|
|
632
|
+
this._oToolbar.addContent(this.getDefaultFileUploader());
|
|
590
633
|
}
|
|
634
|
+
this._oToolbar.addContent(this._getCloudFilePicker());
|
|
591
635
|
}
|
|
592
636
|
}
|
|
593
637
|
|
|
@@ -606,6 +650,18 @@ sap.ui.define([
|
|
|
606
650
|
return sNoDataDescription;
|
|
607
651
|
};
|
|
608
652
|
|
|
653
|
+
UploadSet.prototype.getDragDropText = function () {
|
|
654
|
+
var sDragDropText = this.getProperty("dragDropText");
|
|
655
|
+
sDragDropText = sDragDropText || this._oRb.getText("IllustratedMessage_TITLE_UploadCollection");
|
|
656
|
+
return sDragDropText;
|
|
657
|
+
};
|
|
658
|
+
|
|
659
|
+
UploadSet.prototype.getDragDropDescription = function () {
|
|
660
|
+
var sDragDropDescription = this.getProperty("dragDropDescription");
|
|
661
|
+
sDragDropDescription = sDragDropDescription || this._oRb.getText("IllustratedMessage_DESCRIPTION_UploadCollection");
|
|
662
|
+
return sDragDropDescription;
|
|
663
|
+
};
|
|
664
|
+
|
|
609
665
|
UploadSet.prototype.setToolbar = function (oToolbar) {
|
|
610
666
|
this.setAggregation("toolbar", oToolbar);
|
|
611
667
|
this.getToolbar();
|
|
@@ -787,6 +843,50 @@ sap.ui.define([
|
|
|
787
843
|
return this;
|
|
788
844
|
};
|
|
789
845
|
|
|
846
|
+
UploadSet.prototype._getIllustratedMessage = function () {
|
|
847
|
+
var oAggregation = this.getAggregation("_illustratedMessage");
|
|
848
|
+
if (oAggregation) {
|
|
849
|
+
if (this._getDragIndicator()) {
|
|
850
|
+
oAggregation.setIllustrationType(IllustratedMessageType.UploadCollection);
|
|
851
|
+
oAggregation.setTitle(this.getDragDropText());
|
|
852
|
+
oAggregation.setDescription(this.getDragDropDescription());
|
|
853
|
+
oAggregation.removeAllAdditionalContent();
|
|
854
|
+
} else {
|
|
855
|
+
oAggregation.setIllustrationType(IllustratedMessageType.NoData);
|
|
856
|
+
oAggregation.setTitle(this.getNoDataText());
|
|
857
|
+
oAggregation.setDescription(this.getNoDataDescription());
|
|
858
|
+
oAggregation.addAdditionalContent(this.getUploadButtonForIllustratedMessage());
|
|
859
|
+
}
|
|
860
|
+
}
|
|
861
|
+
return oAggregation;
|
|
862
|
+
};
|
|
863
|
+
|
|
864
|
+
UploadSet.prototype.getUploadButtonForIllustratedMessage = function () {
|
|
865
|
+
if (!this._oUploadButton) {
|
|
866
|
+
this._oUploadButton = new Button({
|
|
867
|
+
id: this.getId() + "-uploadButton",
|
|
868
|
+
type: MobileLibrary.ButtonType.Standard,
|
|
869
|
+
visible: this.getUploadEnabled(),
|
|
870
|
+
text: this._oRb.getText("UPLOADCOLLECTION_UPLOAD"),
|
|
871
|
+
ariaDescribedBy: this.getAggregation("_illustratedMessage").getId(),
|
|
872
|
+
press: function () {
|
|
873
|
+
var FileUploader = this.getDefaultFileUploader();
|
|
874
|
+
FileUploader.$().find("input[type=file]").trigger("click");
|
|
875
|
+
}.bind(this)
|
|
876
|
+
});
|
|
877
|
+
}
|
|
878
|
+
|
|
879
|
+
return this._oUploadButton;
|
|
880
|
+
};
|
|
881
|
+
|
|
882
|
+
UploadSet.prototype.setUploadUrl = function (sUploadUrl) {
|
|
883
|
+
this.setProperty("uploadUrl", sUploadUrl);
|
|
884
|
+
if (this._oUploader) {
|
|
885
|
+
this._oUploader.setUploadUrl(sUploadUrl);
|
|
886
|
+
}
|
|
887
|
+
return this;
|
|
888
|
+
};
|
|
889
|
+
|
|
790
890
|
/* ============== */
|
|
791
891
|
/* Public methods */
|
|
792
892
|
/* ============== */
|
|
@@ -837,6 +937,15 @@ sap.ui.define([
|
|
|
837
937
|
UploadSet.prototype._onDragEnterFile = function (oEvent) {
|
|
838
938
|
var oDragSession = oEvent.getParameter("dragSession");
|
|
839
939
|
var oDraggedControl = oDragSession.getDragControl();
|
|
940
|
+
if (!this._bAttachEventListener) {
|
|
941
|
+
window.addEventListener("focus", function() {
|
|
942
|
+
this._oDragIndicator = false;
|
|
943
|
+
this._getIllustratedMessage();
|
|
944
|
+
}.bind(this), true);
|
|
945
|
+
this._bAttachEventListener = true;
|
|
946
|
+
}
|
|
947
|
+
this._oDragIndicator = true;
|
|
948
|
+
this._getIllustratedMessage();
|
|
840
949
|
if (oDraggedControl) {
|
|
841
950
|
oEvent.preventDefault();
|
|
842
951
|
}
|
|
@@ -844,6 +953,8 @@ sap.ui.define([
|
|
|
844
953
|
|
|
845
954
|
UploadSet.prototype._onDropFile = function (oEvent) {
|
|
846
955
|
var oFiles;
|
|
956
|
+
this._oDragIndicator = false;
|
|
957
|
+
this._getIllustratedMessage();
|
|
847
958
|
oEvent.preventDefault();
|
|
848
959
|
if (this.getUploadEnabled()) {
|
|
849
960
|
oFiles = oEvent.getParameter("browserEvent").dataTransfer.files;
|
|
@@ -858,6 +969,10 @@ sap.ui.define([
|
|
|
858
969
|
}
|
|
859
970
|
};
|
|
860
971
|
|
|
972
|
+
UploadSet.prototype._getDragIndicator = function () {
|
|
973
|
+
return this._oDragIndicator;
|
|
974
|
+
};
|
|
975
|
+
|
|
861
976
|
/**
|
|
862
977
|
* Starts uploading all files that comply with the restrictions defined in the <code>fileTypes</code>,
|
|
863
978
|
* <code>maxFileNameLength</code>, <code>maxFileSize</code>, and <code>mediaTypes</code> properties.
|
|
@@ -1009,7 +1124,7 @@ sap.ui.define([
|
|
|
1009
1124
|
|
|
1010
1125
|
/**
|
|
1011
1126
|
* Opens the FileUploader dialog. When an UploadSetItem is provided, this method can be used to update a file with a new version.
|
|
1012
|
-
* @param {sap.m.UploadSetItem} item The UploadSetItem to update with a new version. This parameter is mandatory.
|
|
1127
|
+
* @param {sap.m.upload.UploadSetItem} item The UploadSetItem to update with a new version. This parameter is mandatory.
|
|
1013
1128
|
* @returns {this} this to allow method chaining
|
|
1014
1129
|
* @since 1.103.0
|
|
1015
1130
|
* @public
|
|
@@ -1153,7 +1268,7 @@ sap.ui.define([
|
|
|
1153
1268
|
* Removes the error state from the list item. Used when the name of the file has been corrected.
|
|
1154
1269
|
* @private
|
|
1155
1270
|
* @param {object} oContext The UploadSet instance on which an attempt was made to save a new name of an existing List item.
|
|
1156
|
-
* @param {sap.m.UploadSetItem} oItem The List item on which the event was triggered.
|
|
1271
|
+
* @param {sap.m.upload.UploadSetItem} oItem The List item on which the event was triggered.
|
|
1157
1272
|
*/
|
|
1158
1273
|
UploadSet.prototype._removeErrorStateFromItem = function(oContext, oItem) {
|
|
1159
1274
|
oItem.errorState = null;
|
|
@@ -1518,7 +1633,7 @@ sap.ui.define([
|
|
|
1518
1633
|
/**
|
|
1519
1634
|
* Returns UploadSetItem based on the items aggregation
|
|
1520
1635
|
* @param {string} uploadSetItemId used for finding the UploadSetItem
|
|
1521
|
-
* @returns {sap.m.UploadSetItem} The matching UploadSetItem
|
|
1636
|
+
* @returns {sap.m.upload.UploadSetItem} The matching UploadSetItem
|
|
1522
1637
|
* @private
|
|
1523
1638
|
*/
|
|
1524
1639
|
UploadSet.prototype._getUploadSetItemById = function(uploadSetItemId) {
|
|
@@ -1534,7 +1649,7 @@ sap.ui.define([
|
|
|
1534
1649
|
/**
|
|
1535
1650
|
* Returns an array of UploadSet items based on the items aggregation
|
|
1536
1651
|
* @param {sap.m.ListItemBase[]} listItems The list items used for finding the UploadSetItems
|
|
1537
|
-
* @returns {sap.m.UploadSetItem[]} The matching UploadSetItems
|
|
1652
|
+
* @returns {sap.m.upload.UploadSetItem[]} The matching UploadSetItems
|
|
1538
1653
|
* @private
|
|
1539
1654
|
*/
|
|
1540
1655
|
UploadSet.prototype._getUploadSetItemsByListItems = function(listItems) {
|
|
@@ -1569,7 +1684,7 @@ sap.ui.define([
|
|
|
1569
1684
|
|
|
1570
1685
|
/**
|
|
1571
1686
|
* Map group for item.
|
|
1572
|
-
* @param {sap.m.UploadSetItem} item The UploadSetItem to map group
|
|
1687
|
+
* @param {sap.m.upload.UploadSetItem} item The UploadSetItem to map group
|
|
1573
1688
|
* @private
|
|
1574
1689
|
*/
|
|
1575
1690
|
UploadSet.prototype._mapGroupForItem = function(item) {
|
|
@@ -1598,7 +1713,7 @@ sap.ui.define([
|
|
|
1598
1713
|
|
|
1599
1714
|
/**
|
|
1600
1715
|
* Fills list with uploadSet items.
|
|
1601
|
-
* @param {sap.m.UploadSetItem[]} aItems The UploadSetItems the internal list is to be filled with
|
|
1716
|
+
* @param {sap.m.upload.UploadSetItem[]} aItems The UploadSetItems the internal list is to be filled with
|
|
1602
1717
|
* @private
|
|
1603
1718
|
*/
|
|
1604
1719
|
UploadSet.prototype._fillListWithUploadSetItems = function (aItems){
|
|
@@ -1634,5 +1749,167 @@ sap.ui.define([
|
|
|
1634
1749
|
this._oToolbar.getContent()[this._iFileUploaderPH].setVisible(false);
|
|
1635
1750
|
this._oToolbar.insertContent(fileUploader, this._iFileUploaderPH);
|
|
1636
1751
|
};
|
|
1752
|
+
|
|
1753
|
+
/**
|
|
1754
|
+
* Returns CloudFile picker button
|
|
1755
|
+
* @return {sap.m.Button} CloudPicker button
|
|
1756
|
+
* @private
|
|
1757
|
+
*/
|
|
1758
|
+
UploadSet.prototype._getCloudFilePicker = function() {
|
|
1759
|
+
if (this.getCloudFilePickerEnabled()) {
|
|
1760
|
+
return new Button({
|
|
1761
|
+
text: this.getCloudFilePickerButtonText() ? this.getCloudFilePickerButtonText() : this._oRb.getText("UPLOAD_SET_DEFAULT_CFP_BUTTON_TEXT"),
|
|
1762
|
+
press: [this._invokeCloudFilePicker, this]
|
|
1763
|
+
});
|
|
1764
|
+
}
|
|
1765
|
+
return null;
|
|
1766
|
+
};
|
|
1767
|
+
|
|
1768
|
+
/**
|
|
1769
|
+
* Creates and invokes CloudFilePicker control instance
|
|
1770
|
+
* @private
|
|
1771
|
+
* @returns {Object} cloudFile picker instance
|
|
1772
|
+
*/
|
|
1773
|
+
UploadSet.prototype._invokeCloudFilePicker = function() {
|
|
1774
|
+
var oCloudFilePickerInstance = null;
|
|
1775
|
+
if (this._cloudFilePickerControl) {
|
|
1776
|
+
oCloudFilePickerInstance = this._getCloudFilePickerInstance();
|
|
1777
|
+
oCloudFilePickerInstance.open();
|
|
1778
|
+
} else {
|
|
1779
|
+
// Dynamically load and cache CloudFilePicker control for first time
|
|
1780
|
+
this._loadCloudFilePickerDependency()
|
|
1781
|
+
.then(function(cloudFilePicker){
|
|
1782
|
+
this._cloudFilePickerControl = cloudFilePicker;
|
|
1783
|
+
oCloudFilePickerInstance = this._getCloudFilePickerInstance();
|
|
1784
|
+
oCloudFilePickerInstance.open();
|
|
1785
|
+
}.bind(this))
|
|
1786
|
+
.catch(function(error) {
|
|
1787
|
+
Log.error(error);
|
|
1788
|
+
});
|
|
1789
|
+
}
|
|
1790
|
+
return oCloudFilePickerInstance;
|
|
1791
|
+
};
|
|
1792
|
+
|
|
1793
|
+
/**
|
|
1794
|
+
* Event handler for CloudFile picker selector
|
|
1795
|
+
* @param {Object} oEvent CloudFile picker file selection DOM change event
|
|
1796
|
+
* @private
|
|
1797
|
+
*/
|
|
1798
|
+
UploadSet.prototype._onCloudPickerFileChange = function(oEvent) {
|
|
1799
|
+
|
|
1800
|
+
var mParameters = oEvent.getParameters();
|
|
1801
|
+
var aFiles = [];
|
|
1802
|
+
if (mParameters && mParameters.selectedFiles) {
|
|
1803
|
+
mParameters.selectedFiles.forEach(function (file) {
|
|
1804
|
+
aFiles.push(this._createFileFromCloudPickerFile(file));
|
|
1805
|
+
}.bind(this));
|
|
1806
|
+
}
|
|
1807
|
+
|
|
1808
|
+
// invoking this method to handle file uploads
|
|
1809
|
+
this._processNewCloudPickerFileObjects(aFiles);
|
|
1810
|
+
};
|
|
1811
|
+
|
|
1812
|
+
/**
|
|
1813
|
+
* Creates file object that is to be uploaded from the CloudFilePicker file object
|
|
1814
|
+
* @param {sap.suite.ui.commons.CloudFileInfo} oCloudFile CloudFilepicker file object
|
|
1815
|
+
* @returns {Object} file metadata with file object and fileshare properties
|
|
1816
|
+
* @private
|
|
1817
|
+
*/
|
|
1818
|
+
UploadSet.prototype._createFileFromCloudPickerFile = function(oCloudFile) {
|
|
1819
|
+
var parts = [new Blob([])];
|
|
1820
|
+
var oFileMetaData = {
|
|
1821
|
+
type: oCloudFile.getFileShareItemContentType(),
|
|
1822
|
+
size: oCloudFile.getFileShareItemContentSize(),
|
|
1823
|
+
webkitRelativePath: '',
|
|
1824
|
+
name: oCloudFile.getFileShareItemName()
|
|
1825
|
+
};
|
|
1826
|
+
var oFile = new File(parts, oCloudFile.getFileShareItemName(), oFileMetaData);
|
|
1827
|
+
return {
|
|
1828
|
+
file: oFile,
|
|
1829
|
+
fileShareProperties: oCloudFile.mProperties
|
|
1830
|
+
};
|
|
1831
|
+
};
|
|
1832
|
+
|
|
1833
|
+
/**
|
|
1834
|
+
* Maps the UploadSetItem with fileShare properties from the CloudFilePicker
|
|
1835
|
+
* @param {sap.m.UploadSetItem} oItem UploadSetItem to be mapped
|
|
1836
|
+
* @param {Object} oFileShareItem fileshare properties used for mapping
|
|
1837
|
+
* @private
|
|
1838
|
+
*/
|
|
1839
|
+
UploadSet.prototype._mapFileShareItemToUploadSetItem = function(oItem, oFileShareItem) {
|
|
1840
|
+
oItem.setFileName(oFileShareItem.fileShareItemName);
|
|
1841
|
+
oItem.setUrl(oFileShareItem.fileShareItemContentLink);
|
|
1842
|
+
};
|
|
1843
|
+
|
|
1844
|
+
/**
|
|
1845
|
+
* Processing and uploading of file objects selected from the CloudFilePicker
|
|
1846
|
+
* @param {Array} oFiles File metadata list containing file to be uploaded and fileshare properties used for mapping
|
|
1847
|
+
* @private
|
|
1848
|
+
*/
|
|
1849
|
+
UploadSet.prototype._processNewCloudPickerFileObjects = function (oFiles) {
|
|
1850
|
+
var oItem;
|
|
1851
|
+
|
|
1852
|
+
oFiles.forEach(function (oFileMetaData) {
|
|
1853
|
+
var oFile = oFileMetaData.file,
|
|
1854
|
+
oFileShareProperties = oFileMetaData.fileShareProperties;
|
|
1855
|
+
oItem = new UploadSetItem({
|
|
1856
|
+
uploadState: UploadState.Ready
|
|
1857
|
+
});
|
|
1858
|
+
if (oFileShareProperties && oFileShareProperties !== null) {
|
|
1859
|
+
// invoked and each selected file to map the fileshare properties to uploadsetItem to be uploaded
|
|
1860
|
+
this._mapFileShareItemToUploadSetItem(oItem, oFileShareProperties);
|
|
1861
|
+
}
|
|
1862
|
+
oItem._setFileObject(oFile);
|
|
1863
|
+
oItem.setFileName(oFile.name);//For handling curly braces in file name we have to use setter.Otherwise it will be treated as binding.
|
|
1864
|
+
|
|
1865
|
+
if (!this.fireBeforeItemAdded({item: oItem})) {
|
|
1866
|
+
return;
|
|
1867
|
+
}
|
|
1868
|
+
this.insertIncompleteItem(oItem);
|
|
1869
|
+
this.fireAfterItemAdded({item: oItem});
|
|
1870
|
+
|
|
1871
|
+
if (this.getInstantUpload()) {
|
|
1872
|
+
this._uploadItemIfGoodToGo(oItem);
|
|
1873
|
+
}
|
|
1874
|
+
}.bind(this));
|
|
1875
|
+
};
|
|
1876
|
+
|
|
1877
|
+
/**
|
|
1878
|
+
* Dynamically require CloudFilePicker Control
|
|
1879
|
+
* @returns {Promise} Promise that resolves on sucessful load of CloudFilePicker control
|
|
1880
|
+
* @private
|
|
1881
|
+
*/
|
|
1882
|
+
UploadSet.prototype._loadCloudFilePickerDependency = function() {
|
|
1883
|
+
return new Promise(function (resolve, reject) {
|
|
1884
|
+
Core.loadLibrary("sap.suite.ui.commons", { async: true })
|
|
1885
|
+
.then(function() {
|
|
1886
|
+
sap.ui.require(["sap/suite/ui/commons/CloudFilePicker"], function(cloudFilePicker) {
|
|
1887
|
+
resolve(cloudFilePicker);
|
|
1888
|
+
}, function (error) {
|
|
1889
|
+
reject(error);
|
|
1890
|
+
});
|
|
1891
|
+
})
|
|
1892
|
+
.catch(function () {
|
|
1893
|
+
reject("CloudFilePicker Control not available.");
|
|
1894
|
+
});
|
|
1895
|
+
});
|
|
1896
|
+
};
|
|
1897
|
+
|
|
1898
|
+
/**
|
|
1899
|
+
* Creates CloudFilePicker Instance
|
|
1900
|
+
* @returns {sap.suite.ui.commons.CloudFilePicker} CloudFilePicker instance
|
|
1901
|
+
* @private
|
|
1902
|
+
*/
|
|
1903
|
+
UploadSet.prototype._getCloudFilePickerInstance = function() {
|
|
1904
|
+
return new this._cloudFilePickerControl({
|
|
1905
|
+
serviceUrl: this.getCloudFilePickerServiceUrl(),
|
|
1906
|
+
confirmButtonText: this._oRb.getText("SELECT_PICKER_TITLE_TEXT"),
|
|
1907
|
+
title: this._oRb.getText("SELECT_PICKER_TITLE_TEXT"),
|
|
1908
|
+
fileNameMandatory: true,
|
|
1909
|
+
enableDuplicateCheck:this.getSameFilenameAllowed(),
|
|
1910
|
+
select: this._onCloudPickerFileChange.bind(this)
|
|
1911
|
+
});
|
|
1912
|
+
};
|
|
1913
|
+
|
|
1637
1914
|
return UploadSet;
|
|
1638
|
-
});
|
|
1915
|
+
});
|
|
@@ -11,9 +11,7 @@ sap.ui.define([
|
|
|
11
11
|
"sap/ui/core/Icon",
|
|
12
12
|
"sap/ui/core/IconPool",
|
|
13
13
|
"sap/ui/core/HTML",
|
|
14
|
-
"sap/ui/core/util/File",
|
|
15
14
|
"sap/m/library",
|
|
16
|
-
"sap/m/BusyIndicator",
|
|
17
15
|
"sap/m/Button",
|
|
18
16
|
"sap/m/CustomListItem",
|
|
19
17
|
"sap/m/Image",
|
|
@@ -23,8 +21,8 @@ sap.ui.define([
|
|
|
23
21
|
"sap/m/ProgressIndicator",
|
|
24
22
|
"sap/m/VBox",
|
|
25
23
|
"sap/m/HBox"
|
|
26
|
-
], function (Log, CoreLibrary, Element, Icon, IconPool, HTML,
|
|
27
|
-
MobileLibrary,
|
|
24
|
+
], function (Log, CoreLibrary, Element, Icon, IconPool, HTML,
|
|
25
|
+
MobileLibrary, Button, CustomListItem, Image, Input, Label, Link, ProgressIndicator, VBox,
|
|
28
26
|
HBox) {
|
|
29
27
|
"use strict";
|
|
30
28
|
|
|
@@ -36,7 +34,7 @@ sap.ui.define([
|
|
|
36
34
|
* @class Item that represents one file to be uploaded using the {@link sap.m.upload.UploadSet} control.
|
|
37
35
|
* @extends sap.ui.core.Element
|
|
38
36
|
* @author SAP SE
|
|
39
|
-
* @version 1.
|
|
37
|
+
* @version 1.106.0
|
|
40
38
|
* @constructor
|
|
41
39
|
* @public
|
|
42
40
|
* @since 1.63
|
|
@@ -452,7 +450,7 @@ sap.ui.define([
|
|
|
452
450
|
* Validates if the item is restricted, which means that it is restricted for the file type, media type, maximum file name length and maximum file size limit.
|
|
453
451
|
*
|
|
454
452
|
* @public
|
|
455
|
-
|
|
453
|
+
* @since 1.98
|
|
456
454
|
* @returns {boolean} <code>true</code> if item is restricted, <code>false</code> otherwise.
|
|
457
455
|
*
|
|
458
456
|
*/
|
|
@@ -460,6 +458,18 @@ sap.ui.define([
|
|
|
460
458
|
return this._isRestricted();
|
|
461
459
|
};
|
|
462
460
|
|
|
461
|
+
/**
|
|
462
|
+
* Returns edit state of the item.
|
|
463
|
+
*
|
|
464
|
+
* @public
|
|
465
|
+
* @since 1.104.0
|
|
466
|
+
* @returns {boolean} edit state of uploadSetItem
|
|
467
|
+
*
|
|
468
|
+
*/
|
|
469
|
+
UploadSetItem.prototype.getEditState = function () {
|
|
470
|
+
return this._bInEditMode;
|
|
471
|
+
};
|
|
472
|
+
|
|
463
473
|
/* ============== */
|
|
464
474
|
/* Event handlers */
|
|
465
475
|
/* ============== */
|
|
@@ -483,6 +493,7 @@ sap.ui.define([
|
|
|
483
493
|
]
|
|
484
494
|
});
|
|
485
495
|
this._oListItem.addStyleClass("sapMUCItem");
|
|
496
|
+
this._oListItem.setTooltip(this.getTooltip_Text());
|
|
486
497
|
}
|
|
487
498
|
|
|
488
499
|
return this._oListItem;
|
|
@@ -699,7 +710,7 @@ sap.ui.define([
|
|
|
699
710
|
* Retrieves the sap.m.ListItem from the internal sap.m.List based on the ID
|
|
700
711
|
* @param {string} listItemId The item ID used for finding the UploadSetItem
|
|
701
712
|
* @param {sap.m.ListItemBase[]} listItems The array of list items to search in
|
|
702
|
-
* @returns {sap.m.UploadSetItem|null} The matching UploadSetItem or null if none is found
|
|
713
|
+
* @returns {sap.m.upload.UploadSetItem|null} The matching UploadSetItem or null if none is found
|
|
703
714
|
* @private
|
|
704
715
|
*/
|
|
705
716
|
UploadSetItem._findById = function(listItemId, listItems) {
|
|
@@ -54,29 +54,21 @@ sap.ui.define([
|
|
|
54
54
|
|
|
55
55
|
UploadSetRenderer.renderNoData = function(oRm, oControl) {
|
|
56
56
|
var oUploadSet = oControl.getParent();
|
|
57
|
+
oUploadSet.fnOriginalRenderDummyArea = oUploadSet.getList().getRenderer().renderDummyArea;
|
|
58
|
+
oUploadSet.getList().getRenderer().renderDummyArea = oUploadSet.getRenderer().renderDummyArea;
|
|
57
59
|
oRm.openStart("li", oUploadSet.getList().getId("nodata"));
|
|
58
60
|
oRm.attr("tabindex", 0);
|
|
59
61
|
oRm.class("sapMLIB").class("sapMUCNoDataPage");
|
|
60
62
|
ListItemBaseRenderer.addFocusableClasses.call(ListItemBaseRenderer, oRm);
|
|
61
63
|
oRm.openEnd();
|
|
62
|
-
|
|
63
|
-
oRm.renderControl(oUploadSet._oNoDataIcon);
|
|
64
|
-
|
|
65
|
-
oRm.openStart("div", oUploadSet.getId() + "-no-data-text");
|
|
66
|
-
oRm.class("sapMUCNoDataText");
|
|
67
|
-
oRm.openEnd();
|
|
68
|
-
oRm.text(oUploadSet.getNoDataText());
|
|
69
|
-
oRm.close("div");
|
|
70
|
-
|
|
71
|
-
if (oUploadSet.getUploadEnabled()) {
|
|
72
|
-
oRm.openStart("div" , oUploadSet.getId() + "-no-data-description");
|
|
73
|
-
oRm.class("sapMUCNoDataDescription");
|
|
74
|
-
oRm.openEnd();
|
|
75
|
-
oRm.text(oUploadSet.getNoDataDescription());
|
|
76
|
-
oRm.close("div");
|
|
77
|
-
}
|
|
64
|
+
oRm.renderControl(oUploadSet._getIllustratedMessage());
|
|
78
65
|
oRm.close("li");
|
|
79
66
|
};
|
|
80
67
|
|
|
68
|
+
UploadSetRenderer.renderDummyArea = function(oRm, oControl, sAreaId, iTabIndex) {
|
|
69
|
+
var oUploadSet = oControl.getParent();
|
|
70
|
+
oUploadSet.getList().getRenderer().renderDummyArea = oUploadSet.fnOriginalRenderDummyArea;
|
|
71
|
+
};
|
|
72
|
+
|
|
81
73
|
return UploadSetRenderer;
|
|
82
74
|
});
|
|
@@ -10,10 +10,9 @@ sap.ui.define([
|
|
|
10
10
|
"sap/ui/core/Element",
|
|
11
11
|
"sap/ui/core/util/File",
|
|
12
12
|
"sap/ui/Device",
|
|
13
|
-
"sap/ui/core/Item",
|
|
14
13
|
"sap/m/upload/UploadSetItem",
|
|
15
14
|
"sap/m/upload/UploaderHttpRequestMethod"
|
|
16
|
-
], function (Log, MobileLibrary, Element, FileUtil, Device,
|
|
15
|
+
], function (Log, MobileLibrary, Element, FileUtil, Device, UploadSetItem, UploaderHttpRequestMethod) {
|
|
17
16
|
"use strict";
|
|
18
17
|
|
|
19
18
|
/**
|