@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
|
@@ -10,7 +10,6 @@ sap.ui.define([
|
|
|
10
10
|
'./InputBase',
|
|
11
11
|
'./DatePicker',
|
|
12
12
|
'sap/ui/model/type/Date',
|
|
13
|
-
'sap/ui/unified/DateRange',
|
|
14
13
|
'./library',
|
|
15
14
|
'sap/ui/core/library',
|
|
16
15
|
'sap/ui/core/Control',
|
|
@@ -25,15 +24,14 @@ sap.ui.define([
|
|
|
25
24
|
'./SegmentedButtonItem',
|
|
26
25
|
'./ResponsivePopover',
|
|
27
26
|
'./Button',
|
|
28
|
-
"sap/ui/events/KeyCodes",
|
|
29
27
|
"sap/ui/core/IconPool",
|
|
30
|
-
"sap/ui/qunit/utils/waitForThemeApplied"
|
|
28
|
+
"sap/ui/qunit/utils/waitForThemeApplied",
|
|
29
|
+
"sap/ui/dom/jquery/cursorPos" // provides jQuery.fn.cursorPos
|
|
31
30
|
], function(
|
|
32
31
|
jQuery,
|
|
33
32
|
InputBase,
|
|
34
33
|
DatePicker,
|
|
35
34
|
Date1,
|
|
36
|
-
DateRange,
|
|
37
35
|
library,
|
|
38
36
|
coreLibrary,
|
|
39
37
|
Control,
|
|
@@ -48,7 +46,6 @@ sap.ui.define([
|
|
|
48
46
|
SegmentedButtonItem,
|
|
49
47
|
ResponsivePopover,
|
|
50
48
|
Button,
|
|
51
|
-
KeyCodes,
|
|
52
49
|
IconPool,
|
|
53
50
|
waitForThemeApplied
|
|
54
51
|
) {
|
|
@@ -58,8 +55,7 @@ sap.ui.define([
|
|
|
58
55
|
var PlacementType = library.PlacementType,
|
|
59
56
|
ButtonType = library.ButtonType,
|
|
60
57
|
// From Device.media.RANGESETS.SAP_STANDARD - "Phone": For screens smaller than 600 pixels.
|
|
61
|
-
STANDART_PHONE_RANGESET = "Phone"
|
|
62
|
-
CalendarType = coreLibrary.CalendarType;
|
|
58
|
+
STANDART_PHONE_RANGESET = "Phone";
|
|
63
59
|
|
|
64
60
|
/**
|
|
65
61
|
* Constructor for a new <code>DateTimePicker</code>.
|
|
@@ -145,7 +141,7 @@ sap.ui.define([
|
|
|
145
141
|
* mobile devices, it opens in full screen.
|
|
146
142
|
*
|
|
147
143
|
* @extends sap.m.DatePicker
|
|
148
|
-
* @version 1.
|
|
144
|
+
* @version 1.106.0
|
|
149
145
|
*
|
|
150
146
|
* @constructor
|
|
151
147
|
* @public
|
|
@@ -188,9 +184,7 @@ sap.ui.define([
|
|
|
188
184
|
/**
|
|
189
185
|
* The IANA timezone ID, e.g <code>"Europe/Berlin"</code>. Date and time are displayed in this timezone.
|
|
190
186
|
* The <code>value</code> property string is treated as if it is formatted in this timezone.
|
|
191
|
-
*
|
|
192
|
-
* as the <code>value</code>, but in the local timezone. Thus, it is adjusted when the
|
|
193
|
-
* <code>timezone</code> changes.
|
|
187
|
+
* The <code>dateValue</code> property should not be used as this could lead to an unpredictable results. Use <code>getValue()</code> instead.
|
|
194
188
|
* @since 1.99
|
|
195
189
|
*/
|
|
196
190
|
timezone: { type: "string", group: "Data" }
|
|
@@ -313,16 +307,27 @@ sap.ui.define([
|
|
|
313
307
|
if (Device.system.phone || jQuery('html').hasClass("sapUiMedia-Std-Phone") || this.getForcePhoneView()) {
|
|
314
308
|
oSwitcher.setVisible(true);
|
|
315
309
|
oSwitcher.setSelectedKey("Cal");
|
|
316
|
-
this.getCalendar().
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
});
|
|
310
|
+
this.getCalendar().attachSelect(function () {
|
|
311
|
+
this._addCalendarDelegate();
|
|
312
|
+
}.bind(this));
|
|
313
|
+
this._addCalendarDelegate();
|
|
321
314
|
} else {
|
|
322
315
|
oSwitcher.setVisible(false);
|
|
323
316
|
}
|
|
324
317
|
},
|
|
325
318
|
|
|
319
|
+
_addCalendarDelegate: function () {
|
|
320
|
+
var oSwitcher = this.getAggregation("_switcher"),
|
|
321
|
+
oOnAfterRenderingDelegate = {
|
|
322
|
+
onAfterRendering: function() {
|
|
323
|
+
this._switchVisibility(oSwitcher.getSelectedKey());
|
|
324
|
+
this.getCalendar().removeDelegate(oOnAfterRenderingDelegate);
|
|
325
|
+
}.bind(this)
|
|
326
|
+
};
|
|
327
|
+
|
|
328
|
+
this.getCalendar().addDelegate(oOnAfterRenderingDelegate);
|
|
329
|
+
},
|
|
330
|
+
|
|
326
331
|
_handleSelect: function(oEvent) {
|
|
327
332
|
|
|
328
333
|
var sKey = oEvent.getParameter("key");
|
|
@@ -377,29 +382,34 @@ sap.ui.define([
|
|
|
377
382
|
this._bOnlyCalendar = false;
|
|
378
383
|
};
|
|
379
384
|
|
|
380
|
-
DateTimePicker.prototype.
|
|
381
|
-
var sFallbackValue;
|
|
382
|
-
|
|
383
|
-
DatePicker.prototype.setValue.apply(this, arguments);
|
|
384
|
-
|
|
385
|
+
DateTimePicker.prototype._formatValueAndUpdateOutput = function(oDate, sValue) {
|
|
385
386
|
delete this._prefferedValue;
|
|
386
387
|
|
|
387
|
-
if (!this.
|
|
388
|
-
|
|
388
|
+
if (!this.getDomRef()) {
|
|
389
|
+
return;
|
|
390
|
+
}
|
|
389
391
|
|
|
392
|
+
// convert to output
|
|
393
|
+
var sOutputValue = oDate ? this._formatValue(oDate) : sValue;
|
|
394
|
+
if (!oDate) {
|
|
395
|
+
var sFallbackValue = this._fallbackParse(sValue);
|
|
390
396
|
if (typeof sFallbackValue === "string") {
|
|
391
397
|
this._bValid = true;
|
|
392
398
|
this._prefferedValue = sFallbackValue;
|
|
393
|
-
|
|
394
|
-
// there is a re-render comming, but this updates the dom immediately to avoid flickering
|
|
395
|
-
if (this.getDomRef() && this._$input.val() !== sFallbackValue) {
|
|
396
|
-
this._$input.val(sFallbackValue);
|
|
397
|
-
this._curpos = this._$input.cursorPos();
|
|
398
|
-
}
|
|
399
|
+
sOutputValue = sFallbackValue;
|
|
399
400
|
}
|
|
400
401
|
}
|
|
401
402
|
|
|
402
|
-
|
|
403
|
+
if (this._bPreferUserInteraction) {
|
|
404
|
+
// Handle the value concurrency before setting the value property of the control,
|
|
405
|
+
// in order to distinguish whether the user only focused the input field or typed in it
|
|
406
|
+
this.handleInputValueConcurrency(sOutputValue);
|
|
407
|
+
} else if (this._$input.val() !== sOutputValue) {
|
|
408
|
+
// update the DOM value when necessary
|
|
409
|
+
// otherwise cursor can go to the end of text unnecessarily
|
|
410
|
+
this._$input.val(sOutputValue);
|
|
411
|
+
this._curpos = this._$input.cursorPos();
|
|
412
|
+
}
|
|
403
413
|
};
|
|
404
414
|
|
|
405
415
|
DateTimePicker.prototype.setTimezone = function(sTimezone) {
|
|
@@ -445,6 +455,8 @@ sap.ui.define([
|
|
|
445
455
|
};
|
|
446
456
|
|
|
447
457
|
DateTimePicker.prototype.onAfterRendering = function() {
|
|
458
|
+
DatePicker.prototype.onAfterRendering.apply(this, arguments);
|
|
459
|
+
|
|
448
460
|
if (this._getShowTimezone()) {
|
|
449
461
|
waitForThemeApplied().then(function() {
|
|
450
462
|
var oDummyContentDomRef = this.$().find(".sapMDummyContent"),
|
|
@@ -650,7 +662,7 @@ sap.ui.define([
|
|
|
650
662
|
if (oFormatOptions.calendarType === undefined) {
|
|
651
663
|
oFormatOptions.calendarType = bDisplayFormat
|
|
652
664
|
? this.getDisplayFormatType()
|
|
653
|
-
:
|
|
665
|
+
: sap.ui.getCore().getConfiguration().getCalendarType();
|
|
654
666
|
}
|
|
655
667
|
|
|
656
668
|
if (oFormatOptions.strictParsing === undefined) {
|
|
@@ -808,7 +820,10 @@ sap.ui.define([
|
|
|
808
820
|
|
|
809
821
|
DateTimePicker.prototype._getPickerParser = function() {
|
|
810
822
|
if (!this._clocksParser) {
|
|
811
|
-
this._clocksParser = DateFormat.getDateTimeWithTimezoneInstance({
|
|
823
|
+
this._clocksParser = DateFormat.getDateTimeWithTimezoneInstance({
|
|
824
|
+
showTimezone: false,
|
|
825
|
+
calendarType: this.getDisplayFormatType()
|
|
826
|
+
});
|
|
812
827
|
}
|
|
813
828
|
|
|
814
829
|
return this._clocksParser;
|
|
@@ -1014,6 +1029,17 @@ sap.ui.define([
|
|
|
1014
1029
|
return oDate;
|
|
1015
1030
|
};
|
|
1016
1031
|
|
|
1032
|
+
/**
|
|
1033
|
+
* This method should not be used because it could produce unpredictable results. Use <code>getValue()</code> instead.
|
|
1034
|
+
*
|
|
1035
|
+
* @name sap.m.DateTimePicker#getDateValue
|
|
1036
|
+
* @function
|
|
1037
|
+
* @public
|
|
1038
|
+
* @returns {object}
|
|
1039
|
+
* @since 1.102
|
|
1040
|
+
* @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
|
|
1041
|
+
*/
|
|
1042
|
+
|
|
1017
1043
|
DateTimePicker.prototype.getLocaleId = function(){
|
|
1018
1044
|
|
|
1019
1045
|
return Core.getConfiguration().getFormatSettings().getFormatLocale().toString();
|
|
@@ -39,7 +39,7 @@ sap.ui.define(['sap/ui/core/Renderer', './DatePickerRenderer', './InputBaseRende
|
|
|
39
39
|
};
|
|
40
40
|
|
|
41
41
|
DateTimePickerRenderer.writeAdditionalContent = function(oRm, oControl) {
|
|
42
|
-
var sTimezone = oControl._getTranslatedTimezone(true);
|
|
42
|
+
var sTimezone = oControl._getTranslatedTimezone(true) || oControl._getTimezone(true);
|
|
43
43
|
|
|
44
44
|
if (!oControl._getShowTimezone()) {
|
|
45
45
|
return;
|
package/src/sap/m/Dialog.js
CHANGED
|
@@ -70,6 +70,9 @@ function(
|
|
|
70
70
|
// shortcut for sap.ui.core.OpenState
|
|
71
71
|
var OpenState = coreLibrary.OpenState;
|
|
72
72
|
|
|
73
|
+
// shortcut for sap.m.ButtonType
|
|
74
|
+
var ButtonType = library.ButtonType;
|
|
75
|
+
|
|
73
76
|
// shortcut for sap.m.DialogType
|
|
74
77
|
var DialogType = library.DialogType;
|
|
75
78
|
|
|
@@ -175,7 +178,7 @@ function(
|
|
|
175
178
|
*
|
|
176
179
|
* @implements sap.ui.core.PopupInterface
|
|
177
180
|
* @author SAP SE
|
|
178
|
-
* @version 1.
|
|
181
|
+
* @version 1.106.0
|
|
179
182
|
*
|
|
180
183
|
* @constructor
|
|
181
184
|
* @public
|
|
@@ -638,6 +641,7 @@ function(
|
|
|
638
641
|
/**
|
|
639
642
|
* Open the dialog.
|
|
640
643
|
*
|
|
644
|
+
* @return {this} <code>this</code> to allow method chaining
|
|
641
645
|
* @public
|
|
642
646
|
* @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
|
|
643
647
|
*/
|
|
@@ -687,6 +691,7 @@ function(
|
|
|
687
691
|
/**
|
|
688
692
|
* Close the dialog.
|
|
689
693
|
*
|
|
694
|
+
* @return {this} <code>this</code> to allow method chaining
|
|
690
695
|
* @public
|
|
691
696
|
* @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
|
|
692
697
|
*/
|
|
@@ -927,9 +932,41 @@ function(
|
|
|
927
932
|
this._isSpaceOrEnterPressed = true;
|
|
928
933
|
}
|
|
929
934
|
|
|
935
|
+
var iKeyCode = oEvent.which || oEvent.keyCode;
|
|
936
|
+
|
|
937
|
+
if ((oEvent.ctrlKey || oEvent.metaKey) && iKeyCode === KeyCodes.ENTER) {
|
|
938
|
+
|
|
939
|
+
var oPositiveButton = this._findFirstPositiveButton();
|
|
940
|
+
|
|
941
|
+
if (oPositiveButton) {
|
|
942
|
+
|
|
943
|
+
oPositiveButton.firePress();
|
|
944
|
+
oEvent.stopPropagation();
|
|
945
|
+
oEvent.preventDefault();
|
|
946
|
+
return;
|
|
947
|
+
}
|
|
948
|
+
}
|
|
949
|
+
|
|
930
950
|
this._handleKeyboardDragResize(oEvent);
|
|
931
951
|
};
|
|
932
952
|
|
|
953
|
+
/**
|
|
954
|
+
* Finds first positive button
|
|
955
|
+
* We call positive the buttons with type "Accept" or "Emphasized"
|
|
956
|
+
*
|
|
957
|
+
* @private
|
|
958
|
+
*/
|
|
959
|
+
Dialog.prototype._findFirstPositiveButton = function () {
|
|
960
|
+
var aButtons = this.getButtons();
|
|
961
|
+
|
|
962
|
+
for (var i = 0; i < aButtons.length; i++) {
|
|
963
|
+
var oButton = aButtons[i];
|
|
964
|
+
if (oButton.getType() === ButtonType.Accept || oButton.getType() === ButtonType.Emphasized) {
|
|
965
|
+
return oButton;
|
|
966
|
+
}
|
|
967
|
+
}
|
|
968
|
+
};
|
|
969
|
+
|
|
933
970
|
/**
|
|
934
971
|
* Handles the keyboard drag/resize functionality
|
|
935
972
|
*
|
|
@@ -1230,7 +1267,12 @@ function(
|
|
|
1230
1267
|
oPosition = {
|
|
1231
1268
|
top: Math.round(oAreaDimensions.top + iTop)
|
|
1232
1269
|
};
|
|
1233
|
-
|
|
1270
|
+
|
|
1271
|
+
if (this._bRTL) {
|
|
1272
|
+
oPosition.right = Math.round(window.innerWidth - oAreaDimensions.right + iLeft);
|
|
1273
|
+
} else {
|
|
1274
|
+
oPosition.left = Math.round(oAreaDimensions.left + iLeft);
|
|
1275
|
+
}
|
|
1234
1276
|
|
|
1235
1277
|
return oPosition;
|
|
1236
1278
|
};
|
package/src/sap/m/DynamicDate.js
CHANGED
|
@@ -10,14 +10,11 @@ sap.ui.define([
|
|
|
10
10
|
'sap/ui/core/format/NumberFormat',
|
|
11
11
|
'sap/ui/core/Locale',
|
|
12
12
|
'sap/ui/core/LocaleData',
|
|
13
|
-
"sap/base/Log",
|
|
14
13
|
"sap/base/util/deepExtend",
|
|
15
|
-
"sap/base/util/isEmptyObject",
|
|
16
|
-
"sap/ui/core/date/UniversalDateUtils",
|
|
17
14
|
"sap/ui/unified/calendar/CalendarUtils",
|
|
18
15
|
"./library"
|
|
19
16
|
],
|
|
20
|
-
function(DateFormat, NumberFormat, Locale, LocaleData,
|
|
17
|
+
function(DateFormat, NumberFormat, Locale, LocaleData, deepExtend, CalendarUtils, library) {
|
|
21
18
|
"use strict";
|
|
22
19
|
|
|
23
20
|
/**
|
|
@@ -332,7 +329,7 @@ sap.ui.define([
|
|
|
332
329
|
DynamicDateFormat.prototype._checkFormatterUTCTimezone = function(sOption) {
|
|
333
330
|
var sType = "";
|
|
334
331
|
if (aParameterTypesByStandardOptionKey[sOption]) {
|
|
335
|
-
sType = aParameterTypesByStandardOptionKey[sOption];
|
|
332
|
+
sType = aParameterTypesByStandardOptionKey[sOption][0];
|
|
336
333
|
}
|
|
337
334
|
|
|
338
335
|
// ensure that in options like last/next days or +/- days we still use correct timezone when formatting the dates.
|
|
@@ -13,7 +13,8 @@ sap.ui.define([
|
|
|
13
13
|
'sap/ui/unified/Calendar',
|
|
14
14
|
'sap/ui/unified/DateRange',
|
|
15
15
|
'sap/ui/unified/calendar/MonthPicker',
|
|
16
|
-
'sap/ui/unified/calendar/CustomMonthPicker'
|
|
16
|
+
'sap/ui/unified/calendar/CustomMonthPicker',
|
|
17
|
+
'sap/ui/core/format/TimezoneUtil'],
|
|
17
18
|
function(
|
|
18
19
|
Element,
|
|
19
20
|
Label,
|
|
@@ -22,7 +23,8 @@ sap.ui.define([
|
|
|
22
23
|
Calendar,
|
|
23
24
|
DateRange,
|
|
24
25
|
MonthPicker,
|
|
25
|
-
CustomMonthPicker
|
|
26
|
+
CustomMonthPicker,
|
|
27
|
+
TimezoneUtil) {
|
|
26
28
|
"use strict";
|
|
27
29
|
|
|
28
30
|
/**
|
|
@@ -36,7 +38,7 @@ sap.ui.define([
|
|
|
36
38
|
* @extends sap.ui.core.Element
|
|
37
39
|
*
|
|
38
40
|
* @author SAP SE
|
|
39
|
-
* @version 1.
|
|
41
|
+
* @version 1.106.0
|
|
40
42
|
*
|
|
41
43
|
* @public
|
|
42
44
|
* @since 1.92
|
|
@@ -131,7 +133,12 @@ sap.ui.define([
|
|
|
131
133
|
);
|
|
132
134
|
}
|
|
133
135
|
|
|
134
|
-
|
|
136
|
+
var bUTC = false;
|
|
137
|
+
if (oControl && oValue) {
|
|
138
|
+
bUTC = oControl._checkFormatterUTCTimezone(oValue.operator);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
oInputControl = this._createControl(i, aParams[i].getType(), oValue, fnControlsUpdated, valueHelpUiTypesCount, bUTC);
|
|
135
142
|
|
|
136
143
|
aControls.push(oInputControl);
|
|
137
144
|
oControl.aControlsByParameters[this.getKey()].push(oInputControl);
|
|
@@ -318,7 +325,7 @@ sap.ui.define([
|
|
|
318
325
|
|
|
319
326
|
// PRIVATE
|
|
320
327
|
|
|
321
|
-
DynamicDateOption.prototype._createControl = function(iIndex, sUIType, oValue, fnControlsUpdated, valueHelpUiTypesCount) {
|
|
328
|
+
DynamicDateOption.prototype._createControl = function(iIndex, sUIType, oValue, fnControlsUpdated, valueHelpUiTypesCount, bUTC) {
|
|
322
329
|
var oInputControl;
|
|
323
330
|
|
|
324
331
|
switch (sUIType) {
|
|
@@ -326,18 +333,18 @@ sap.ui.define([
|
|
|
326
333
|
oInputControl = this._createIntegerControl(oValue, iIndex, fnControlsUpdated);
|
|
327
334
|
break;
|
|
328
335
|
case "date":
|
|
329
|
-
oInputControl = this._createDateControl(oValue, iIndex, fnControlsUpdated);
|
|
336
|
+
oInputControl = this._createDateControl(oValue, iIndex, fnControlsUpdated, bUTC);
|
|
330
337
|
break;
|
|
331
338
|
case "datetime":
|
|
332
339
|
if (valueHelpUiTypesCount === 1) {
|
|
333
340
|
// Returns DateTimePicker PopupContent control (single "datetime" option)
|
|
334
|
-
oInputControl = this._createDateTimeInnerControl(oValue, iIndex, fnControlsUpdated);
|
|
341
|
+
oInputControl = this._createDateTimeInnerControl(oValue, iIndex, fnControlsUpdated, bUTC);
|
|
335
342
|
} else if (valueHelpUiTypesCount === 2) {
|
|
336
|
-
oInputControl = this._createDateTimeControl(oValue, iIndex, fnControlsUpdated);
|
|
343
|
+
oInputControl = this._createDateTimeControl(oValue, iIndex, fnControlsUpdated, bUTC);
|
|
337
344
|
}
|
|
338
345
|
break;
|
|
339
346
|
case "daterange":
|
|
340
|
-
oInputControl = this._createDateRangeControl(oValue, iIndex, fnControlsUpdated);
|
|
347
|
+
oInputControl = this._createDateRangeControl(oValue, iIndex, fnControlsUpdated, bUTC);
|
|
341
348
|
break;
|
|
342
349
|
case "month":
|
|
343
350
|
oInputControl = this._createMonthControl(oValue, iIndex, fnControlsUpdated);
|
|
@@ -371,7 +378,7 @@ sap.ui.define([
|
|
|
371
378
|
};
|
|
372
379
|
|
|
373
380
|
DynamicDateOption.prototype._createDateTimeControl = function(oValue, iIndex, fnControlsUpdated) {
|
|
374
|
-
var oControl = new DateTimePicker();
|
|
381
|
+
var oControl = new DateTimePicker({timezone: TimezoneUtil.getLocalTimezone()});
|
|
375
382
|
|
|
376
383
|
if (oValue && this.getKey() === oValue.operator) {
|
|
377
384
|
oControl.setDateValue(oValue.values[iIndex]);
|
|
@@ -386,14 +393,21 @@ sap.ui.define([
|
|
|
386
393
|
return oControl;
|
|
387
394
|
};
|
|
388
395
|
|
|
389
|
-
DynamicDateOption.prototype._createDateControl = function(oValue, iIndex, fnControlsUpdated) {
|
|
396
|
+
DynamicDateOption.prototype._createDateControl = function(oValue, iIndex, fnControlsUpdated, bUTC) {
|
|
390
397
|
var oControl = new Calendar({
|
|
391
398
|
width: "100%"
|
|
392
399
|
});
|
|
400
|
+
var oInputControlValue;
|
|
393
401
|
|
|
394
402
|
if (oValue && this.getKey() === oValue.operator) {
|
|
403
|
+
oInputControlValue = new Date(oValue.values[iIndex].getTime());
|
|
404
|
+
|
|
405
|
+
if (bUTC) {
|
|
406
|
+
oInputControlValue.setMinutes(oInputControlValue.getMinutes() + new Date().getTimezoneOffset());
|
|
407
|
+
}
|
|
408
|
+
|
|
395
409
|
oControl.addSelectedDate(new DateRange({
|
|
396
|
-
startDate:
|
|
410
|
+
startDate: oInputControlValue
|
|
397
411
|
}));
|
|
398
412
|
}
|
|
399
413
|
|
|
@@ -409,7 +423,7 @@ sap.ui.define([
|
|
|
409
423
|
/**
|
|
410
424
|
* Returns DateTimePicker PopupContent control (single "datetime" option)
|
|
411
425
|
*/
|
|
412
|
-
DynamicDateOption.prototype._createDateTimeInnerControl = function(oValue, iIndex, fnControlsUpdated) {
|
|
426
|
+
DynamicDateOption.prototype._createDateTimeInnerControl = function(oValue, iIndex, fnControlsUpdated, bUTC) {
|
|
413
427
|
var oControl = new DateTimePicker({
|
|
414
428
|
width: "100%"
|
|
415
429
|
}),
|
|
@@ -424,6 +438,11 @@ sap.ui.define([
|
|
|
424
438
|
|
|
425
439
|
if (oValue && this.getKey() === oValue.operator) {
|
|
426
440
|
var oValueCopy = new Date(oValue.values[iIndex]); // a copy is used to prevent time setting on pressing Cancel button
|
|
441
|
+
|
|
442
|
+
if (bUTC) {
|
|
443
|
+
oValueCopy.setMinutes(oValueCopy.getMinutes() + new Date().getTimezoneOffset());
|
|
444
|
+
}
|
|
445
|
+
|
|
427
446
|
oPopupContent.getCalendar().addSelectedDate(new DateRange({
|
|
428
447
|
startDate: oValueCopy
|
|
429
448
|
}));
|
|
@@ -453,7 +472,7 @@ sap.ui.define([
|
|
|
453
472
|
return oPopupContent;
|
|
454
473
|
};
|
|
455
474
|
|
|
456
|
-
DynamicDateOption.prototype._createDateRangeControl = function(oValue, iIndex, fnControlsUpdated) {
|
|
475
|
+
DynamicDateOption.prototype._createDateRangeControl = function(oValue, iIndex, fnControlsUpdated, bUTC) {
|
|
457
476
|
var oControl = new Calendar({
|
|
458
477
|
intervalSelection: true,
|
|
459
478
|
width: "100%"
|
|
@@ -461,9 +480,17 @@ sap.ui.define([
|
|
|
461
480
|
if (oValue && this.getKey() === oValue.operator) {
|
|
462
481
|
// a date range UI type maps to 2 consecutive date parameters from the value
|
|
463
482
|
// they also should be the last 2 parameters
|
|
483
|
+
var oInputControlStartValue = new Date(oValue.values[iIndex].getTime());
|
|
484
|
+
var oInputControlEndValue = new Date(oValue.values[iIndex + 1].getTime());
|
|
485
|
+
|
|
486
|
+
if (bUTC) {
|
|
487
|
+
oInputControlStartValue.setMinutes(oInputControlStartValue.getMinutes() + new Date().getTimezoneOffset());
|
|
488
|
+
oInputControlEndValue.setMinutes(oInputControlEndValue.getMinutes() + new Date().getTimezoneOffset());
|
|
489
|
+
}
|
|
490
|
+
|
|
464
491
|
oControl.addSelectedDate(new DateRange({
|
|
465
|
-
startDate:
|
|
466
|
-
endDate:
|
|
492
|
+
startDate: oInputControlStartValue,
|
|
493
|
+
endDate: oInputControlEndValue
|
|
467
494
|
}));
|
|
468
495
|
}
|
|
469
496
|
|
|
@@ -121,7 +121,7 @@ sap.ui.define([
|
|
|
121
121
|
* is opened. The dialog is closed via a date time period value selection or by pressing the "Cancel" button.
|
|
122
122
|
*
|
|
123
123
|
* @author SAP SE
|
|
124
|
-
* @version 1.
|
|
124
|
+
* @version 1.106.0
|
|
125
125
|
*
|
|
126
126
|
* @constructor
|
|
127
127
|
* @public
|
|
@@ -280,7 +280,23 @@ sap.ui.define([
|
|
|
280
280
|
"NEXTYEAR",
|
|
281
281
|
"DATETIME"
|
|
282
282
|
]
|
|
283
|
-
}
|
|
283
|
+
},
|
|
284
|
+
|
|
285
|
+
/**
|
|
286
|
+
* Determines whether the input field of the control is hidden or visible.
|
|
287
|
+
* When set to <code>true</code>, the input field becomes invisible and there is no way to open the value help popover.
|
|
288
|
+
* In that case it can be opened by another control through calling of control's <code>openBy</code> method, and
|
|
289
|
+
* the opening control's DOM reference must be provided as parameter.
|
|
290
|
+
*
|
|
291
|
+
* Note: Since the Dynamic Date Range is not responsible for accessibility attributes of the control which opens its popover,
|
|
292
|
+
* those attributes should be added by the application developer. The following is recommended to be added to the
|
|
293
|
+
* opening control: a text or tooltip that describes the action (example: "Open Dynamic Date Range"), and also aria-haspopup
|
|
294
|
+
* attribute with value of <code>true</code>.
|
|
295
|
+
*
|
|
296
|
+
* @since 1.105
|
|
297
|
+
*/
|
|
298
|
+
hideInput: { type: "boolean", group: "Misc", defaultValue: false }
|
|
299
|
+
|
|
284
300
|
},
|
|
285
301
|
aggregations: {
|
|
286
302
|
_input: { type: "sap.m.Input", multiple: false, visibility: "hidden" },
|
|
@@ -413,11 +429,12 @@ sap.ui.define([
|
|
|
413
429
|
/**
|
|
414
430
|
* Opens the value help dialog.
|
|
415
431
|
*
|
|
432
|
+
* @param {HTMLElement} oDomRef DOM reference of the opening control. On tablet or desktop, the popover is positioned relatively to this control.
|
|
416
433
|
* @returns {void}
|
|
417
434
|
* @since 1.92
|
|
418
435
|
* @public
|
|
419
436
|
*/
|
|
420
|
-
DynamicDateRange.prototype.open = function() {
|
|
437
|
+
DynamicDateRange.prototype.open = function(oDomRef) {
|
|
421
438
|
if (this.getEditable() && this.getEnabled()) {
|
|
422
439
|
this._createPopup();
|
|
423
440
|
this._createPopupContent();
|
|
@@ -456,7 +473,7 @@ sap.ui.define([
|
|
|
456
473
|
//reset value help page
|
|
457
474
|
this._oNavContainer.to(this._oNavContainer.getPages()[0]);
|
|
458
475
|
|
|
459
|
-
this._openPopup();
|
|
476
|
+
this._openPopup(oDomRef);
|
|
460
477
|
}
|
|
461
478
|
};
|
|
462
479
|
|
|
@@ -1177,13 +1194,37 @@ sap.ui.define([
|
|
|
1177
1194
|
oControl.isA("sap.ui.unified.calendar.Month");
|
|
1178
1195
|
};
|
|
1179
1196
|
|
|
1180
|
-
|
|
1197
|
+
/**
|
|
1198
|
+
* Opens the value help popover. The popover is positioned relatively to the control given as <code>oDomRef</code> parameter on tablet or desktop
|
|
1199
|
+
* and is full screen on phone. Therefore the control parameter is only used on tablet or desktop and is ignored on phone.
|
|
1200
|
+
*
|
|
1201
|
+
* Note: use this method to open the value help popover only when the <code>hideInput</code> property is set to <code>true</code>. Please consider
|
|
1202
|
+
* opening of the value help popover by another control only in scenarios that comply with Fiori guidelines. For example, opening the value help
|
|
1203
|
+
* popover by another popover is not recommended.
|
|
1204
|
+
* The application developer should implement the following accessibility attributes to the opening control: a text or tooltip that describes
|
|
1205
|
+
* the action (example: "Open Dynamic Date Range"), and aria-haspopup attribute with value of <code>true</code>.
|
|
1206
|
+
*
|
|
1207
|
+
* @since 1.105
|
|
1208
|
+
* @param {HTMLElement} oDomRef DOM reference of the opening control. On tablet or desktop, the popover is positioned relatively to this control.
|
|
1209
|
+
* @public
|
|
1210
|
+
*/
|
|
1211
|
+
DynamicDateRange.prototype.openBy = function(oDomRef) {
|
|
1212
|
+
this.open(oDomRef);
|
|
1213
|
+
};
|
|
1214
|
+
|
|
1215
|
+
/**
|
|
1216
|
+
* Opens the value help popup.
|
|
1217
|
+
*
|
|
1218
|
+
* @param {HTMLElement} oDomRef DOM reference of the opening control. On tablet or desktop, the value help popover is positioned relative to this control.
|
|
1219
|
+
* @private
|
|
1220
|
+
*/
|
|
1221
|
+
DynamicDateRange.prototype._openPopup = function(oDomRef) {
|
|
1181
1222
|
if (!this._oPopup) {
|
|
1182
1223
|
return;
|
|
1183
1224
|
}
|
|
1184
1225
|
|
|
1185
1226
|
this._oPopup._getPopup().setExtraContent([this._oInput.getDomRef()]);
|
|
1186
|
-
this._oPopup.openBy(this._oInput);
|
|
1227
|
+
this._oPopup.openBy(oDomRef || this._oInput);
|
|
1187
1228
|
};
|
|
1188
1229
|
|
|
1189
1230
|
DynamicDateRange.prototype._applyValue = function() {
|
|
@@ -1428,8 +1469,9 @@ sap.ui.define([
|
|
|
1428
1469
|
};
|
|
1429
1470
|
|
|
1430
1471
|
DynamicDateRangeInput.prototype.onfocusin = function (oEvent) {
|
|
1472
|
+
var oPopup = this._getControlOrigin()._oPopup;
|
|
1431
1473
|
Input.prototype.onfocusin.apply(this, arguments);
|
|
1432
|
-
if (
|
|
1474
|
+
if (oPopup && oPopup.isOpen() && (Device.system.desktop || Device.system.combi)) {
|
|
1433
1475
|
this._getControlOrigin()._closePopup();
|
|
1434
1476
|
}
|
|
1435
1477
|
};
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
|
-
sap.ui.define([
|
|
7
|
-
function(
|
|
6
|
+
sap.ui.define([],
|
|
7
|
+
function() {
|
|
8
8
|
"use strict";
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -25,6 +25,9 @@ sap.ui.define(["sap/m/InputBaseRenderer", 'sap/ui/core/Renderer'],
|
|
|
25
25
|
|
|
26
26
|
oRm.openStart("div", oControl);
|
|
27
27
|
oRm.class("sapMDynamicDateRange");
|
|
28
|
+
if (oControl.getHideInput()) {
|
|
29
|
+
oRm.class("sapMDDRHiddenInput");
|
|
30
|
+
}
|
|
28
31
|
oRm.openEnd();
|
|
29
32
|
|
|
30
33
|
oRm.renderControl(oControl._oInput);
|
|
@@ -8,9 +8,11 @@
|
|
|
8
8
|
sap.ui.define([
|
|
9
9
|
"./StandardDynamicDateOption",
|
|
10
10
|
"sap/base/Log",
|
|
11
|
-
"./library"
|
|
11
|
+
"./library",
|
|
12
|
+
'sap/ui/core/format/TimezoneUtil',
|
|
13
|
+
'sap/ui/core/Core'
|
|
12
14
|
], function(
|
|
13
|
-
StandardDynamicDateOption, Log, library) {
|
|
15
|
+
StandardDynamicDateOption, Log, library, TimezoneUtil, Core) {
|
|
14
16
|
"use strict";
|
|
15
17
|
|
|
16
18
|
var STANDARD_KEYS_ARRAY = [
|
|
@@ -242,6 +244,25 @@ sap.ui.define([
|
|
|
242
244
|
return DynamicDateUtil._options[sKey].toDates(oValue);
|
|
243
245
|
};
|
|
244
246
|
|
|
247
|
+
|
|
248
|
+
/**
|
|
249
|
+
* Returns a date in machine timezone setting, removing the offset added by the application configuration.
|
|
250
|
+
*
|
|
251
|
+
* @param {Date} oDate A local JS date with added offset
|
|
252
|
+
* @returns {Date} A local JS date with removed offset
|
|
253
|
+
* @static
|
|
254
|
+
* @public
|
|
255
|
+
*/
|
|
256
|
+
DynamicDateUtil.removeTimezoneOffset = function(oDate) {
|
|
257
|
+
var oNewDate = new Date(oDate);
|
|
258
|
+
var sTimezone = Core.getConfiguration().getTimezone();
|
|
259
|
+
var iOffsetInSeconds = TimezoneUtil.calculateOffset(oNewDate, sTimezone) - oNewDate.getTimezoneOffset() * 60;
|
|
260
|
+
|
|
261
|
+
oNewDate.setSeconds(oNewDate.getSeconds() - iOffsetInSeconds);
|
|
262
|
+
|
|
263
|
+
return oNewDate;
|
|
264
|
+
};
|
|
265
|
+
|
|
245
266
|
return DynamicDateUtil;
|
|
246
267
|
|
|
247
268
|
}, true);
|