@openui5/sap.ui.core 1.97.1 → 1.100.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 +92 -2
- package/.reuse/dep5 +25 -30
- package/THIRDPARTY.txt +15 -22
- package/package.json +1 -1
- package/src/jquery.sap.global.js +6 -3
- package/src/jquery.sap.mobile.js +29 -19
- package/src/jquery.sap.properties.js +1 -1
- package/src/jquery.sap.resources.js +1 -1
- package/src/jquery.sap.script.js +1 -1
- package/src/jquery.sap.storage.js +3 -3
- package/src/sap/base/Log.js +1 -1
- package/src/sap/base/strings/whitespaceReplacer.js +1 -1
- package/src/sap/base/util/LoaderExtensions.js +1 -10
- package/src/sap/base/util/UriParameters.js +2 -2
- package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
- package/src/sap/base/util/restricted/_castArray.js +1 -1
- package/src/sap/base/util/restricted/_compact.js +1 -1
- package/src/sap/base/util/restricted/_curry.js +1 -1
- package/src/sap/base/util/restricted/_debounce.js +1 -1
- package/src/sap/base/util/restricted/_difference.js +1 -1
- package/src/sap/base/util/restricted/_differenceBy.js +1 -1
- package/src/sap/base/util/restricted/_differenceWith.js +1 -1
- package/src/sap/base/util/restricted/_flatMap.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
- package/src/sap/base/util/restricted/_flatten.js +1 -1
- package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
- package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
- package/src/sap/base/util/restricted/_intersection.js +1 -1
- package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
- package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
- package/src/sap/base/util/restricted/_isEqual.js +1 -1
- package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
- package/src/sap/base/util/restricted/_isNil.js +1 -1
- package/src/sap/base/util/restricted/_max.js +1 -1
- package/src/sap/base/util/restricted/_merge.js +1 -1
- package/src/sap/base/util/restricted/_mergeWith.js +1 -1
- package/src/sap/base/util/restricted/_min.js +1 -1
- package/src/sap/base/util/restricted/_omit.js +1 -1
- package/src/sap/base/util/restricted/_pick.js +1 -1
- package/src/sap/base/util/restricted/_pickBy.js +1 -1
- package/src/sap/base/util/restricted/_throttle.js +1 -1
- package/src/sap/base/util/restricted/_toArray.js +1 -1
- package/src/sap/base/util/restricted/_union.js +1 -1
- package/src/sap/base/util/restricted/_unionBy.js +1 -1
- package/src/sap/base/util/restricted/_unionWith.js +1 -1
- package/src/sap/base/util/restricted/_uniq.js +1 -1
- package/src/sap/base/util/restricted/_uniqBy.js +1 -1
- package/src/sap/base/util/restricted/_uniqWith.js +1 -1
- package/src/sap/base/util/restricted/_without.js +1 -1
- package/src/sap/base/util/restricted/_xor.js +1 -1
- package/src/sap/base/util/restricted/_xorBy.js +1 -1
- package/src/sap/base/util/restricted/_xorWith.js +1 -1
- package/src/sap/base/util/restricted/_zipObject.js +1 -1
- package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
- package/src/sap/ui/Device.js +80 -168
- package/src/sap/ui/Global.js +4 -4
- package/src/sap/ui/VersionInfo.js +13 -10
- package/src/sap/ui/base/BindingParser.js +34 -7
- package/src/sap/ui/base/Event.js +1 -1
- package/src/sap/ui/base/EventProvider.js +1 -1
- package/src/sap/ui/base/ExpressionParser.js +1 -1
- package/src/sap/ui/base/Interface.js +1 -1
- package/src/sap/ui/base/ManagedObject.js +48 -27
- package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
- package/src/sap/ui/base/ManagedObjectObserver.js +2 -0
- package/src/sap/ui/base/Metadata.js +1 -1
- package/src/sap/ui/base/Object.js +1 -1
- package/src/sap/ui/base/ObjectPool.js +1 -1
- package/src/sap/ui/core/.library +2 -2
- package/src/sap/ui/core/BusyIndicator.js +1 -1
- package/src/sap/ui/core/BusyIndicatorUtils.js +1 -1
- package/src/sap/ui/core/Component.js +3 -3
- package/src/sap/ui/core/ComponentContainer.js +1 -1
- package/src/sap/ui/core/ComponentMetadata.js +2 -2
- package/src/sap/ui/core/ComponentSupport.js +1 -1
- package/src/sap/ui/core/Configuration.js +82 -15
- package/src/sap/ui/core/Control.js +3 -2
- package/src/sap/ui/core/Core.js +5 -6
- package/src/sap/ui/core/CustomData.js +1 -1
- package/src/sap/ui/core/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/Element.js +5 -7
- package/src/sap/ui/core/ElementMetadata.js +1 -1
- package/src/sap/ui/core/EnabledPropagator.js +1 -1
- package/src/sap/ui/core/EventBus.js +1 -1
- package/src/sap/ui/core/ExtensionPoint.js +1 -1
- package/src/sap/ui/core/FocusHandler.js +1 -1
- package/src/sap/ui/core/Fragment.js +1 -1
- package/src/sap/ui/core/HTML.js +1 -1
- package/src/sap/ui/core/HTMLRenderer.js +1 -1
- package/src/sap/ui/core/History.js +1 -1
- package/src/sap/ui/core/Icon.js +18 -5
- package/src/sap/ui/core/IconRenderer.js +1 -1
- package/src/sap/ui/core/IndicationColorSupport.js +1 -1
- package/src/sap/ui/core/IntervalTrigger.js +1 -1
- package/src/sap/ui/core/InvisibleMessage.js +1 -1
- package/src/sap/ui/core/InvisibleRenderer.js +1 -1
- package/src/sap/ui/core/InvisibleText.js +1 -1
- package/src/sap/ui/core/Item.js +1 -1
- package/src/sap/ui/core/LabelEnablement.js +9 -2
- package/src/sap/ui/core/LayoutData.js +1 -1
- package/src/sap/ui/core/ListItem.js +1 -1
- package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
- package/src/sap/ui/core/LocalBusyIndicatorRenderer.js +2 -2
- package/src/sap/ui/core/LocalBusyIndicatorSupport.js +1 -1
- package/src/sap/ui/core/Locale.js +1 -1
- package/src/sap/ui/core/LocaleData.js +60 -6
- package/src/sap/ui/core/Manifest.js +1 -1
- package/src/sap/ui/core/Message.js +1 -1
- package/src/sap/ui/core/Patcher.js +3 -3
- package/src/sap/ui/core/Placeholder.js +28 -28
- package/src/sap/ui/core/Popup.js +12 -9
- package/src/sap/ui/core/RenderManager.js +1 -1
- package/src/sap/ui/core/Renderer.js +1 -1
- package/src/sap/ui/core/ResizeHandler.js +1 -1
- package/src/sap/ui/core/ScrollBar.js +1 -1
- package/src/sap/ui/core/ScrollBarRenderer.js +1 -1
- package/src/sap/ui/core/SeparatorItem.js +1 -1
- package/src/sap/ui/core/Title.js +1 -1
- package/src/sap/ui/core/TooltipBase.js +2 -2
- package/src/sap/ui/core/UIArea.js +1 -1
- package/src/sap/ui/core/UIComponent.js +1 -1
- package/src/sap/ui/core/UIComponentMetadata.js +1 -1
- package/src/sap/ui/core/ValueStateSupport.js +1 -1
- package/src/sap/ui/core/VariantLayoutData.js +1 -1
- package/src/sap/ui/core/XMLComposite.js +1 -1
- package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
- package/src/sap/ui/core/XMLTemplateProcessor.js +7 -6
- package/src/sap/ui/core/_IconRegistry.js +13 -3
- package/src/sap/ui/core/cache/CacheManager.js +1 -1
- package/src/sap/ui/core/cache/LRUPersistentCache.js +2 -1
- package/src/sap/ui/core/cldr/en_AU.json +1 -1
- package/src/sap/ui/core/date/Buddhist.js +3 -3
- package/src/sap/ui/core/date/Japanese.js +4 -4
- package/src/sap/ui/core/date/UniversalDate.js +10 -0
- package/src/sap/ui/core/date/UniversalDateUtils.js +175 -5
- package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
- package/src/sap/ui/core/delegate/ScrollEnablement.js +9 -6
- package/src/sap/ui/core/dnd/DragAndDrop.js +21 -18
- package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
- package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
- package/src/sap/ui/core/dnd/DragInfo.js +1 -1
- package/src/sap/ui/core/dnd/DropInfo.js +3 -3
- package/src/sap/ui/core/format/DateFormat.js +654 -202
- package/src/sap/ui/core/format/DateFormatTimezoneDisplay.js +44 -0
- package/src/sap/ui/core/format/ListFormat.js +2 -2
- package/src/sap/ui/core/format/NumberFormat.js +502 -216
- package/src/sap/ui/core/format/TimezoneUtil.js +248 -0
- package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
- package/src/sap/ui/core/library.js +126 -53
- package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
- package/src/sap/ui/core/message/Message.js +1 -1
- package/src/sap/ui/core/message/MessageManager.js +1 -1
- package/src/sap/ui/core/message/MessageMixin.js +2 -1
- package/src/sap/ui/core/message/MessageParser.js +1 -1
- package/src/sap/ui/core/message/MessageProcessor.js +1 -1
- package/src/sap/ui/core/messagebundle.properties +2 -0
- package/src/sap/ui/core/messagebundle_ar.properties +1 -0
- package/src/sap/ui/core/messagebundle_bg.properties +6 -5
- package/src/sap/ui/core/messagebundle_ca.properties +1 -0
- package/src/sap/ui/core/messagebundle_cs.properties +1 -0
- package/src/sap/ui/core/messagebundle_cy.properties +1 -0
- package/src/sap/ui/core/messagebundle_da.properties +1 -0
- package/src/sap/ui/core/messagebundle_de.properties +2 -1
- package/src/sap/ui/core/messagebundle_el.properties +1 -0
- package/src/sap/ui/core/messagebundle_en.properties +1 -0
- package/src/sap/ui/core/messagebundle_en_GB.properties +1 -0
- package/src/sap/ui/core/messagebundle_en_US_sappsd.properties +1 -0
- package/src/sap/ui/core/messagebundle_en_US_saprigi.properties +1 -0
- package/src/sap/ui/core/messagebundle_en_US_saptrc.properties +1 -0
- package/src/sap/ui/core/messagebundle_es.properties +1 -0
- package/src/sap/ui/core/messagebundle_es_MX.properties +1 -0
- package/src/sap/ui/core/messagebundle_et.properties +1 -0
- package/src/sap/ui/core/messagebundle_fi.properties +1 -0
- package/src/sap/ui/core/messagebundle_fr.properties +1 -0
- package/src/sap/ui/core/messagebundle_fr_CA.properties +1 -0
- package/src/sap/ui/core/messagebundle_hi.properties +1 -0
- package/src/sap/ui/core/messagebundle_hr.properties +1 -0
- package/src/sap/ui/core/messagebundle_hu.properties +1 -0
- package/src/sap/ui/core/messagebundle_id.properties +3 -2
- package/src/sap/ui/core/messagebundle_it.properties +2 -1
- package/src/sap/ui/core/messagebundle_iw.properties +1 -0
- package/src/sap/ui/core/messagebundle_ja.properties +1 -0
- package/src/sap/ui/core/messagebundle_kk.properties +1 -0
- package/src/sap/ui/core/messagebundle_ko.properties +2 -1
- package/src/sap/ui/core/messagebundle_lt.properties +1 -0
- package/src/sap/ui/core/messagebundle_lv.properties +2 -1
- package/src/sap/ui/core/messagebundle_ms.properties +1 -0
- package/src/sap/ui/core/messagebundle_nl.properties +1 -0
- package/src/sap/ui/core/messagebundle_no.properties +5 -4
- package/src/sap/ui/core/messagebundle_pl.properties +1 -0
- package/src/sap/ui/core/messagebundle_pt.properties +1 -0
- package/src/sap/ui/core/messagebundle_pt_PT.properties +1 -0
- package/src/sap/ui/core/messagebundle_ro.properties +1 -0
- package/src/sap/ui/core/messagebundle_ru.properties +1 -0
- package/src/sap/ui/core/messagebundle_sh.properties +1 -0
- package/src/sap/ui/core/messagebundle_sk.properties +1 -0
- package/src/sap/ui/core/messagebundle_sl.properties +1 -0
- package/src/sap/ui/core/messagebundle_sv.properties +1 -0
- package/src/sap/ui/core/messagebundle_th.properties +1 -0
- package/src/sap/ui/core/messagebundle_tr.properties +1 -0
- package/src/sap/ui/core/messagebundle_uk.properties +1 -0
- package/src/sap/ui/core/messagebundle_vi.properties +1 -0
- package/src/sap/ui/core/messagebundle_zh_CN.properties +1 -0
- package/src/sap/ui/core/messagebundle_zh_TW.properties +1 -0
- package/src/sap/ui/core/mvc/Controller.js +1 -1
- package/src/sap/ui/core/mvc/ControllerExtensionProvider.js +1 -1
- package/src/sap/ui/core/mvc/HTMLView.js +1 -1
- package/src/sap/ui/core/mvc/HTMLViewRenderer.js +1 -1
- package/src/sap/ui/core/mvc/JSONView.js +2 -1
- package/src/sap/ui/core/mvc/JSONViewRenderer.js +1 -1
- package/src/sap/ui/core/mvc/JSView.js +1 -1
- package/src/sap/ui/core/mvc/JSViewRenderer.js +1 -1
- package/src/sap/ui/core/mvc/TemplateView.js +1 -1
- package/src/sap/ui/core/mvc/TemplateViewRenderer.js +1 -1
- package/src/sap/ui/core/mvc/View.js +2 -1
- package/src/sap/ui/core/mvc/ViewRenderer.js +1 -1
- package/src/sap/ui/core/mvc/XMLView.js +24 -3
- package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/plugin/LessSupport.js +1 -1
- package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
- package/src/sap/ui/core/postmessage/Bus.js +1 -1
- package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
- package/src/sap/ui/core/routing/Route.js +6 -6
- package/src/sap/ui/core/routing/Router.js +4 -3
- package/src/sap/ui/core/routing/Targets.js +17 -13
- package/src/sap/ui/core/rules/Misc.support.js +8 -3
- package/src/sap/ui/core/rules/Model.support.js +95 -8
- package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
- package/src/sap/ui/core/search/SearchProvider.js +1 -1
- package/src/sap/ui/core/service/Service.js +1 -1
- package/src/sap/ui/core/service/ServiceFactory.js +1 -1
- package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
- package/src/sap/ui/core/support/Plugin.js +1 -1
- package/src/sap/ui/core/support/Support.js +3 -3
- package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
- package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
- package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
- package/src/sap/ui/core/support/plugins/Performance.js +1 -1
- package/src/sap/ui/core/support/plugins/Selector.js +1 -1
- package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
- package/src/sap/ui/core/support/plugins/Trace.js +1 -1
- package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
- package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +1 -5
- package/src/sap/ui/core/themes/base/CommandShortcutHints.less +1 -1
- package/src/sap/ui/core/themes/base/base.less +1108 -35
- package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
- package/src/sap/ui/core/themes/base/global.less +158 -4
- package/src/sap/ui/core/themes/base/parameterClasses.less +21 -21
- package/src/sap/ui/core/themes/sap_hcb/global.less +157 -2
- package/src/sap/ui/core/theming/Parameters.js +22 -142
- package/src/sap/ui/core/theming/ThemeHelper.js +26 -37
- package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
- package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
- package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
- package/src/sap/ui/core/tmpl/Template.js +1 -1
- package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
- package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
- package/src/sap/ui/core/util/DraftEnabledMockServer.js +21 -16
- package/src/sap/ui/core/util/Export.js +1 -1
- package/src/sap/ui/core/util/ExportCell.js +1 -1
- package/src/sap/ui/core/util/ExportColumn.js +1 -1
- package/src/sap/ui/core/util/ExportRow.js +1 -1
- package/src/sap/ui/core/util/ExportType.js +1 -1
- package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
- package/src/sap/ui/core/util/File.js +1 -1
- package/src/sap/ui/core/util/LibraryInfo.js +1 -1
- package/src/sap/ui/core/util/MockServer.js +157 -57
- package/src/sap/ui/core/util/PasteHelper.js +5 -5
- package/src/sap/ui/core/util/XMLPreprocessor.js +17 -4
- package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +4 -0
- package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +26 -16
- package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +1 -1
- package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
- package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
- package/src/sap/ui/core/ws/ReadyState.js +1 -1
- package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
- package/src/sap/ui/core/ws/WebSocket.js +1 -1
- package/src/sap/ui/debug/ControlTree.js +1 -1
- package/src/sap/ui/debug/DebugEnv.js +1 -1
- package/src/sap/ui/debug/LogViewer.js +2 -2
- package/src/sap/ui/debug/PropertyList.js +1 -1
- package/src/sap/ui/dom/includeStylesheet.js +8 -3
- package/src/sap/ui/events/jquery/EventExtension.js +1 -1
- package/src/sap/ui/events/jquery/EventSimulation.js +3 -13
- package/src/sap/ui/model/Binding.js +4 -3
- package/src/sap/ui/model/ClientModel.js +1 -1
- package/src/sap/ui/model/ClientTreeBinding.js +1 -1
- package/src/sap/ui/model/CompositeBinding.js +4 -1
- package/src/sap/ui/model/CompositeDataState.js +26 -4
- package/src/sap/ui/model/CompositeType.js +13 -1
- package/src/sap/ui/model/ContextBinding.js +1 -1
- package/src/sap/ui/model/DataState.js +27 -6
- package/src/sap/ui/model/ListBinding.js +2 -2
- package/src/sap/ui/model/MetaModel.js +2 -3
- package/src/sap/ui/model/Model.js +2 -2
- package/src/sap/ui/model/SelectionModel.js +1 -1
- package/src/sap/ui/model/SimpleType.js +1 -1
- package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
- package/src/sap/ui/model/Type.js +1 -1
- package/src/sap/ui/model/_Helper.js +22 -0
- package/src/sap/ui/model/analytics/AnalyticalBinding.js +68 -42
- package/src/sap/ui/model/analytics/ODataModelAdapter.js +2 -15
- package/src/sap/ui/model/base/ManagedObjectModel.js +9 -7
- package/src/sap/ui/model/json/JSONListBinding.js +1 -1
- package/src/sap/ui/model/json/JSONModel.js +15 -8
- package/src/sap/ui/model/json/JSONPropertyBinding.js +1 -1
- package/src/sap/ui/model/message/MessageListBinding.js +1 -1
- package/src/sap/ui/model/message/MessageModel.js +1 -1
- package/src/sap/ui/model/message/MessagePropertyBinding.js +1 -1
- package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/ODataListBinding.js +1 -1
- package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
- package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/ODataMetadata.js +3 -3
- package/src/sap/ui/model/odata/ODataModel.js +2 -2
- package/src/sap/ui/model/odata/ODataPropertyBinding.js +3 -1
- package/src/sap/ui/model/odata/ODataTreeBinding.js +1 -1
- package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +1 -1
- package/src/sap/ui/model/odata/_AnnotationHelperBasics.js +1 -1
- package/src/sap/ui/model/odata/_AnnotationHelperExpression.js +1 -1
- package/src/sap/ui/model/odata/_ODataMetaModelUtils.js +1 -1
- package/src/sap/ui/model/odata/type/Boolean.js +1 -1
- package/src/sap/ui/model/odata/type/Byte.js +1 -1
- package/src/sap/ui/model/odata/type/Currency.js +1 -1
- package/src/sap/ui/model/odata/type/Date.js +1 -1
- package/src/sap/ui/model/odata/type/DateTime.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +346 -0
- package/src/sap/ui/model/odata/type/Decimal.js +1 -1
- package/src/sap/ui/model/odata/type/Double.js +1 -1
- package/src/sap/ui/model/odata/type/Guid.js +1 -1
- package/src/sap/ui/model/odata/type/Int.js +1 -1
- package/src/sap/ui/model/odata/type/Int16.js +1 -1
- package/src/sap/ui/model/odata/type/Int32.js +1 -1
- package/src/sap/ui/model/odata/type/Int64.js +1 -1
- package/src/sap/ui/model/odata/type/ODataType.js +1 -1
- package/src/sap/ui/model/odata/type/Raw.js +1 -1
- package/src/sap/ui/model/odata/type/SByte.js +1 -1
- package/src/sap/ui/model/odata/type/Single.js +1 -1
- package/src/sap/ui/model/odata/type/Stream.js +1 -1
- package/src/sap/ui/model/odata/type/String.js +1 -1
- package/src/sap/ui/model/odata/type/Time.js +1 -1
- package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
- package/src/sap/ui/model/odata/type/Unit.js +1 -1
- package/src/sap/ui/model/odata/type/UnitMixin.js +1 -1
- package/src/sap/ui/model/odata/v2/Context.js +62 -5
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataContextBinding.js +8 -4
- package/src/sap/ui/model/odata/v2/ODataListBinding.js +324 -112
- package/src/sap/ui/model/odata/v2/ODataModel.js +324 -94
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +3 -4
- package/src/sap/ui/model/odata/v2/_CreatedContextsCache.js +65 -5
- package/src/sap/ui/model/odata/v4/AnnotationHelper.js +21 -22
- package/src/sap/ui/model/odata/v4/Context.js +224 -101
- package/src/sap/ui/model/odata/v4/ODataBinding.js +99 -55
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +272 -210
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +557 -258
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +131 -100
- package/src/sap/ui/model/odata/v4/ODataModel.js +503 -260
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +106 -138
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +87 -80
- package/src/sap/ui/model/odata/v4/ODataUtils.js +5 -5
- package/src/sap/ui/model/odata/v4/SubmitMode.js +0 -1
- package/src/sap/ui/model/odata/v4/ValueListType.js +0 -1
- package/src/sap/ui/model/odata/v4/_AnnotationHelperExpression.js +20 -20
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +3 -5
- package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +5 -4
- package/src/sap/ui/model/odata/v4/lib/_Batch.js +21 -20
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +322 -127
- package/src/sap/ui/model/odata/v4/lib/_GroupLock.js +5 -1
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +28 -21
- package/src/sap/ui/model/odata/v4/lib/_MetadataConverter.js +62 -61
- package/src/sap/ui/model/odata/v4/lib/_MetadataRequestor.js +1 -1
- package/src/sap/ui/model/odata/v4/lib/_Parser.js +52 -43
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +216 -51
- package/src/sap/ui/model/odata/v4/lib/_V2MetadataConverter.js +147 -147
- package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +14 -13
- package/src/sap/ui/model/odata/v4/lib/_V4MetadataConverter.js +66 -67
- package/src/sap/ui/model/resource/ResourceModel.js +1 -1
- package/src/sap/ui/model/resource/ResourcePropertyBinding.js +1 -1
- package/src/sap/ui/model/type/Boolean.js +1 -1
- package/src/sap/ui/model/type/Currency.js +1 -1
- package/src/sap/ui/model/type/Date.js +1 -1
- package/src/sap/ui/model/type/DateInterval.js +1 -1
- package/src/sap/ui/model/type/DateTime.js +1 -1
- package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
- package/src/sap/ui/model/type/FileSize.js +1 -1
- package/src/sap/ui/model/type/Float.js +1 -1
- package/src/sap/ui/model/type/Integer.js +1 -1
- package/src/sap/ui/model/type/String.js +1 -1
- package/src/sap/ui/model/type/Time.js +1 -1
- package/src/sap/ui/model/type/TimeInterval.js +1 -1
- package/src/sap/ui/model/type/Unit.js +1 -1
- package/src/sap/ui/model/xml/XMLListBinding.js +1 -1
- package/src/sap/ui/model/xml/XMLModel.js +1 -1
- package/src/sap/ui/model/xml/XMLPropertyBinding.js +1 -1
- package/src/sap/ui/performance/trace/FESR.js +1 -1
- package/src/sap/ui/performance/trace/FESRHelper.js +72 -0
- package/src/sap/ui/performance/trace/Interaction.js +6 -2
- package/src/sap/ui/performance/trace/Passport.js +3 -3
- package/src/sap/ui/qunit/qunit-2-css.js +4 -4
- package/src/sap/ui/qunit/qunit-css.js +4 -4
- package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
- package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
- package/src/sap/ui/test/BlanketReporter.js +1 -1
- package/src/sap/ui/test/BranchTracking.js +1 -0
- package/src/sap/ui/test/Opa5.js +1 -1
- package/src/sap/ui/test/OpaBuilder.js +7 -7
- package/src/sap/ui/test/TestUtils.js +12 -2
- package/src/sap/ui/test/_LogCollector.js +1 -1
- package/src/sap/ui/test/_UsageReport.js +1 -1
- package/src/sap/ui/test/actions/Action.js +4 -2
- package/src/sap/ui/test/actions/Press.js +51 -2
- package/src/sap/ui/test/autowaiter/_XHRWaiter.js +1 -1
- package/src/sap/ui/test/generic/GenericTestCollection.js +176 -0
- package/src/sap/ui/test/generic/TestBase.js +151 -0
- package/src/sap/ui/test/generic/Utils.js +284 -0
- package/src/sap/ui/test/selectors/_ControlSelectorGenerator.js +9 -8
- package/src/sap/ui/test/selectors/_ControlSelectorValidator.js +1 -1
- package/src/sap/ui/test/starter/_setupAndStart.js +4 -0
- package/src/sap/ui/test/starter/createSuite.js +3 -3
- package/src/sap/ui/thirdparty/IPv6.js +1 -1
- package/src/sap/ui/thirdparty/SecondLevelDomains.js +1 -1
- package/src/sap/ui/thirdparty/URI.js +7 -3
- package/src/sap/ui/thirdparty/URITemplate.js +1 -1
- package/src/sap/ui/thirdparty/jquery-mobile-custom.js +3 -6
- package/src/sap/ui/thirdparty/jqueryui/jquery-ui-datepicker.js +143 -3
- package/src/sap/ui/thirdparty/jqueryui/jquery-ui-position.js +8 -1
- package/src/sap/ui/thirdparty/jszip.js +17 -7
- package/src/sap/ui/thirdparty/mobify-carousel.js +1 -1
- package/src/sap/ui/util/Mobile.js +17 -0
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/sap/ui/util/XMLHelper.js +53 -30
- package/src/ui5loader.js +4 -4
|
@@ -165,6 +165,19 @@ sap.ui.define([
|
|
|
165
165
|
throw new Error("Unsupported operation mode: " + vValue);
|
|
166
166
|
}
|
|
167
167
|
break;
|
|
168
|
+
case "$$getKeepAliveContext":
|
|
169
|
+
if (that.isRelative() && !mParameters.$$ownRequest) {
|
|
170
|
+
throw new Error(
|
|
171
|
+
"$$getKeepAliveContext requires $$ownRequest in a relative binding");
|
|
172
|
+
}
|
|
173
|
+
["$$aggregation", "$$canonicalPath", "$$sharedRequest"]
|
|
174
|
+
.forEach(function (sForbidden) {
|
|
175
|
+
if (sForbidden in mParameters) {
|
|
176
|
+
throw new Error("Cannot combine $$getKeepAliveContext and "
|
|
177
|
+
+ sForbidden);
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
// falls through
|
|
168
181
|
case "$$canonicalPath":
|
|
169
182
|
case "$$noPatch":
|
|
170
183
|
case "$$ownRequest":
|
|
@@ -214,15 +227,13 @@ sap.ui.define([
|
|
|
214
227
|
*/
|
|
215
228
|
// @override sap.ui.model.Binding#checkUpdate
|
|
216
229
|
ODataBinding.prototype.checkUpdate = function (bForceUpdate) {
|
|
217
|
-
var that = this;
|
|
218
|
-
|
|
219
230
|
if (arguments.length > 1) {
|
|
220
231
|
throw new Error("Only the parameter bForceUpdate is supported");
|
|
221
232
|
}
|
|
222
233
|
|
|
223
|
-
this.checkUpdateInternal(bForceUpdate).catch(
|
|
224
|
-
|
|
225
|
-
|
|
234
|
+
this.checkUpdateInternal(bForceUpdate).catch(this.oModel.getReporter());
|
|
235
|
+
// do not rethrow, ManagedObject doesn't react on this either
|
|
236
|
+
// throwing an error would cause "Uncaught (in promise)" in Chrome
|
|
226
237
|
};
|
|
227
238
|
|
|
228
239
|
/**
|
|
@@ -234,7 +245,7 @@ sap.ui.define([
|
|
|
234
245
|
* Whether the change event is fired in any case (only allowed for property bindings)
|
|
235
246
|
* @returns {sap.ui.base.SyncPromise}
|
|
236
247
|
* A promise resolving without a defined result when the check is finished, or rejecting in
|
|
237
|
-
* case of an error
|
|
248
|
+
* case of an error
|
|
238
249
|
* @throws {Error} If called with illegal parameters
|
|
239
250
|
*
|
|
240
251
|
* @abstract
|
|
@@ -255,17 +266,18 @@ sap.ui.define([
|
|
|
255
266
|
* The resource path
|
|
256
267
|
* @param {sap.ui.model.Context} [oContext]
|
|
257
268
|
* The context instance to be used, undefined for absolute bindings
|
|
258
|
-
* @param {boolean} [
|
|
259
|
-
* Whether
|
|
269
|
+
* @param {boolean} [bKeepCreated]
|
|
270
|
+
* Whether created persisted elements shall be kept in place
|
|
260
271
|
* @param {sap.ui.model.odata.v4.lib._Cache} [oOldCache]
|
|
261
272
|
* The old cache, in case it may be reused
|
|
262
273
|
* @returns {sap.ui.model.odata.v4.lib._Cache}
|
|
263
|
-
* The cache
|
|
274
|
+
* The cache or <code>null</code> if the binding is relative and the given context is
|
|
275
|
+
* transient
|
|
264
276
|
*
|
|
265
277
|
* @private
|
|
266
278
|
*/
|
|
267
279
|
ODataBinding.prototype.createAndSetCache = function (mQueryOptions, sResourcePath, oContext,
|
|
268
|
-
|
|
280
|
+
bKeepCreated, oOldCache) {
|
|
269
281
|
var oCache, sDeepResourcePath, iGeneration;
|
|
270
282
|
|
|
271
283
|
this.mCacheQueryOptions = Object.assign({}, this.oModel.mUriParameters, mQueryOptions);
|
|
@@ -287,9 +299,9 @@ sap.ui.define([
|
|
|
287
299
|
if (oCache && oCache.$generation >= iGeneration) {
|
|
288
300
|
oCache.setActive(true);
|
|
289
301
|
} else {
|
|
290
|
-
sDeepResourcePath =
|
|
302
|
+
sDeepResourcePath = this.oModel.resolve(this.sPath, oContext).slice(1);
|
|
291
303
|
oCache = this.doCreateCache(sResourcePath, this.mCacheQueryOptions, oContext,
|
|
292
|
-
sDeepResourcePath,
|
|
304
|
+
sDeepResourcePath, bKeepCreated, oOldCache);
|
|
293
305
|
if (!(this.mParameters && this.mParameters.$$sharedRequest)) {
|
|
294
306
|
this.mCacheByResourcePath = this.mCacheByResourcePath || {};
|
|
295
307
|
this.mCacheByResourcePath[sResourcePath] = oCache;
|
|
@@ -299,15 +311,13 @@ sap.ui.define([
|
|
|
299
311
|
}
|
|
300
312
|
} else { // absolute binding
|
|
301
313
|
oCache = this.doCreateCache(sResourcePath, this.mCacheQueryOptions, undefined,
|
|
302
|
-
undefined,
|
|
314
|
+
undefined, bKeepCreated, oOldCache);
|
|
303
315
|
}
|
|
304
|
-
if (oOldCache !== oCache) {
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
oCache.setLateQueryOptions(this.mLateQueryOptions);
|
|
310
|
-
}
|
|
316
|
+
if (oOldCache && oOldCache !== oCache) {
|
|
317
|
+
oOldCache.setActive(false);
|
|
318
|
+
}
|
|
319
|
+
if (this.mLateQueryOptions) {
|
|
320
|
+
oCache.setLateQueryOptions(this.mLateQueryOptions);
|
|
311
321
|
}
|
|
312
322
|
this.oCache = oCache;
|
|
313
323
|
|
|
@@ -348,8 +358,8 @@ sap.ui.define([
|
|
|
348
358
|
* The context instance to be used, must be <code>undefined</code> for absolute bindings
|
|
349
359
|
* @param {string} [sDeepResourcePath=sResourcePath]
|
|
350
360
|
* The deep resource path to be used to build the target path for bound messages
|
|
351
|
-
* @param {boolean} [
|
|
352
|
-
* Whether
|
|
361
|
+
* @param {boolean} [bKeepCreated]
|
|
362
|
+
* Whether created persisted elements shall be kept in place
|
|
353
363
|
* @param {sap.ui.model.odata.v4.lib._Cache} [oOldCache]
|
|
354
364
|
* The old cache, in case it may be reused
|
|
355
365
|
* @returns {sap.ui.model.odata.v4.lib._Cache}
|
|
@@ -402,9 +412,8 @@ sap.ui.define([
|
|
|
402
412
|
* @param {boolean} [bKeepQueryOptions]
|
|
403
413
|
* Whether to keep existing (late) query options and not to run auto-$expand/$select again
|
|
404
414
|
* (cannot be combined with <code>bIgnoreParentCache</code>!)
|
|
405
|
-
* @param {boolean} [
|
|
406
|
-
*
|
|
407
|
-
* that the old cache must be kept intact - not reset and reused!
|
|
415
|
+
* @param {boolean} [bKeepCreated]
|
|
416
|
+
* Whether created persisted elements shall be kept in place
|
|
408
417
|
* @throws {Error}
|
|
409
418
|
* If auto-$expand/$select is still running and query options shall be kept (this case is just
|
|
410
419
|
* not yet implemented and should not be needed)
|
|
@@ -412,7 +421,7 @@ sap.ui.define([
|
|
|
412
421
|
* @private
|
|
413
422
|
*/
|
|
414
423
|
ODataBinding.prototype.fetchCache = function (oContext, bIgnoreParentCache, bKeepQueryOptions,
|
|
415
|
-
|
|
424
|
+
bKeepCreated) {
|
|
416
425
|
var oCache = this.oCache,
|
|
417
426
|
oCallToken = {
|
|
418
427
|
// propagate old cache from first call of fetchCache to the latest call
|
|
@@ -435,10 +444,10 @@ sap.ui.define([
|
|
|
435
444
|
this.oCache = undefined;
|
|
436
445
|
this.oFetchCacheCallToken = oCallToken;
|
|
437
446
|
if (bKeepQueryOptions) {
|
|
438
|
-
// asynchronously re-create an equivalent cache
|
|
447
|
+
// asynchronously re-create an equivalent cache, but skip auto-$expand/$select
|
|
439
448
|
this.oCachePromise = SyncPromise.resolve(Promise.resolve()).then(function () {
|
|
440
449
|
return that.createAndSetCache(that.mCacheQueryOptions, oCache.getResourcePath(),
|
|
441
|
-
oContext,
|
|
450
|
+
oContext, bKeepCreated, oCache);
|
|
442
451
|
});
|
|
443
452
|
return;
|
|
444
453
|
}
|
|
@@ -465,7 +474,7 @@ sap.ui.define([
|
|
|
465
474
|
throw oError;
|
|
466
475
|
}
|
|
467
476
|
return that.createAndSetCache(mQueryOptions, sResourcePath, oContext,
|
|
468
|
-
|
|
477
|
+
bKeepCreated, oCallToken.oOldCache);
|
|
469
478
|
});
|
|
470
479
|
}
|
|
471
480
|
that.oCache = null;
|
|
@@ -534,7 +543,7 @@ sap.ui.define([
|
|
|
534
543
|
// With $$aggregation, no auto-$expand/$select is needed
|
|
535
544
|
oQueryOptionsPromise = this.doFetchQueryOptions(oContext);
|
|
536
545
|
if (this.oModel.bAutoExpandSelect && this.aChildCanUseCachePromises
|
|
537
|
-
&& !
|
|
546
|
+
&& !this.mParameters.$$aggregation) {
|
|
538
547
|
// For auto-$expand/$select, wait for query options of dependent bindings:
|
|
539
548
|
// Promise.resolve() ensures all dependent bindings are created and have sent their
|
|
540
549
|
// query options promise to this binding via fetchIfChildCanUseCache.
|
|
@@ -553,7 +562,7 @@ sap.ui.define([
|
|
|
553
562
|
}
|
|
554
563
|
|
|
555
564
|
// parent cache is ignored or (quasi-)absolute binding
|
|
556
|
-
if (bIgnoreParentCache || !this.bRelative || !oContext.fetchValue)
|
|
565
|
+
if (bIgnoreParentCache || !this.bRelative || !oContext.fetchValue) {
|
|
557
566
|
// the binding shall create its own cache
|
|
558
567
|
return wrapQueryOptions(oQueryOptionsPromise);
|
|
559
568
|
}
|
|
@@ -568,7 +577,8 @@ sap.ui.define([
|
|
|
568
577
|
return wrapQueryOptions(oQueryOptionsPromise);
|
|
569
578
|
}
|
|
570
579
|
return oContext.getBinding()
|
|
571
|
-
.fetchIfChildCanUseCache(oContext, that.sPath, oQueryOptionsPromise
|
|
580
|
+
.fetchIfChildCanUseCache(oContext, that.sPath, oQueryOptionsPromise,
|
|
581
|
+
!this.mParameters) // duck typing for property binding
|
|
572
582
|
.then(function (sReducedPath) {
|
|
573
583
|
return wrapQueryOptions(sReducedPath ? undefined : oQueryOptionsPromise,
|
|
574
584
|
sReducedPath);
|
|
@@ -679,7 +689,7 @@ sap.ui.define([
|
|
|
679
689
|
*
|
|
680
690
|
* @param {string} sPath
|
|
681
691
|
* A path (absolute or relative to this binding)
|
|
682
|
-
* @returns {string}
|
|
692
|
+
* @returns {string|undefined}
|
|
683
693
|
* The given path, if it is already relative; otherwise the path relative to the binding's
|
|
684
694
|
* resolved path or return value context path; <code>undefined</code> if the path does not
|
|
685
695
|
* start with either of these paths.
|
|
@@ -707,7 +717,7 @@ sap.ui.define([
|
|
|
707
717
|
* Returns the "strongest" change reason that {@link #resume} would fire for this binding or any
|
|
708
718
|
* of its dependents.
|
|
709
719
|
*
|
|
710
|
-
* @returns {sap.ui.model.ChangeReason}
|
|
720
|
+
* @returns {sap.ui.model.ChangeReason|undefined}
|
|
711
721
|
* The "strongest" change reason, or <code>undefined</code>
|
|
712
722
|
*
|
|
713
723
|
* @private
|
|
@@ -732,7 +742,7 @@ sap.ui.define([
|
|
|
732
742
|
/**
|
|
733
743
|
* Returns a promise which resolves as soon as this binding is resumed.
|
|
734
744
|
*
|
|
735
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
745
|
+
* @returns {sap.ui.base.SyncPromise|undefined}
|
|
736
746
|
* This binding's current promise for {@link sap.ui.model.odata.v4.ODataParentBinding#resume},
|
|
737
747
|
* or <code>undefined</code> in case it is not currently suspended.
|
|
738
748
|
*
|
|
@@ -747,7 +757,8 @@ sap.ui.define([
|
|
|
747
757
|
* Returns the root binding of this binding's hierarchy, see binding
|
|
748
758
|
* {@link topic:54e0ddf695af4a6c978472cecb01c64d Initialization and Read Requests}.
|
|
749
759
|
*
|
|
750
|
-
* @returns {sap.ui.model.odata.v4.ODataContextBinding|sap.ui.model.odata.v4.ODataListBinding|
|
|
760
|
+
* @returns {sap.ui.model.odata.v4.ODataContextBinding|sap.ui.model.odata.v4.ODataListBinding|
|
|
761
|
+
* sap.ui.model.odata.v4.ODataPropertyBinding|undefined}
|
|
751
762
|
* The root binding or <code>undefined</code> if this binding is unresolved (see
|
|
752
763
|
* {@link sap.ui.model.Binding#isResolved}).
|
|
753
764
|
*
|
|
@@ -814,7 +825,8 @@ sap.ui.define([
|
|
|
814
825
|
* changes or created entities which have not been sent successfully to the server. This
|
|
815
826
|
* function does not take into account the deletion of entities (see
|
|
816
827
|
* {@link sap.ui.model.odata.v4.Context#delete}) and the execution of OData operations
|
|
817
|
-
* (see {@link sap.ui.model.odata.v4.ODataContextBinding#execute}).
|
|
828
|
+
* (see {@link sap.ui.model.odata.v4.ODataContextBinding#execute}). Since 1.98.0,
|
|
829
|
+
* {@link sap.ui.model.odata.v4.Context#isInactive inactive} contexts are ignored.
|
|
818
830
|
*
|
|
819
831
|
* Note: If this binding is relative, its data is cached separately for each parent context
|
|
820
832
|
* path. This method returns <code>true</code> if there are pending changes for the current
|
|
@@ -823,11 +835,16 @@ sap.ui.define([
|
|
|
823
835
|
*
|
|
824
836
|
* @param {boolean} [bIgnoreKeptAlive]
|
|
825
837
|
* Whether to ignore changes which will not be lost by APIs like
|
|
826
|
-
*
|
|
827
|
-
*
|
|
828
|
-
*
|
|
829
|
-
*
|
|
830
|
-
*
|
|
838
|
+
* {@link sap.ui.model.odata.v4.ODataListBinding#changeParameters changeParameters},
|
|
839
|
+
* {@link sap.ui.model.odata.v4.ODataListBinding#filter filter},
|
|
840
|
+
* {@link sap.ui.model.odata.v4.ODataListBinding#refresh refresh} (since 1.100.0),
|
|
841
|
+
* {@link sap.ui.model.odata.v4.ODataListBinding#sort sort}, or
|
|
842
|
+
* {@link sap.ui.model.odata.v4.ODataListBinding#suspend suspend} because they relate to a
|
|
843
|
+
* {@link sap.ui.model.odata.v4.Context#setKeepAlive kept-alive} context of this binding
|
|
844
|
+
* (since 1.97.0). Since 1.98.0, {@link sap.ui.model.odata.v4.Context#isTransient transient}
|
|
845
|
+
* contexts of a {@link #getRootBinding root binding} are treated as kept-alive by this flag.
|
|
846
|
+
* Since 1.99.0, the same happens for bindings using the <code>$$ownRequest</code> parameter
|
|
847
|
+
* (see {@link sap.ui.model.odata.v4.ODataModel#bindList}).
|
|
831
848
|
* @returns {boolean}
|
|
832
849
|
* <code>true</code> if the binding is resolved and has pending changes
|
|
833
850
|
*
|
|
@@ -855,8 +872,9 @@ sap.ui.define([
|
|
|
855
872
|
* @private
|
|
856
873
|
*/
|
|
857
874
|
ODataBinding.prototype.hasPendingChangesForPath = function (sPath, bIgnoreKeptAlive) {
|
|
858
|
-
return this.withCache(function (oCache, sCachePath) {
|
|
859
|
-
return oCache.hasPendingChangesForPath(sCachePath, bIgnoreKeptAlive
|
|
875
|
+
return this.withCache(function (oCache, sCachePath, oBinding) {
|
|
876
|
+
return oCache.hasPendingChangesForPath(sCachePath, bIgnoreKeptAlive,
|
|
877
|
+
bIgnoreKeptAlive && (oBinding.isRoot() || oBinding.mParameters.$$ownRequest));
|
|
860
878
|
}, sPath, true).unwrap();
|
|
861
879
|
};
|
|
862
880
|
|
|
@@ -888,11 +906,11 @@ sap.ui.define([
|
|
|
888
906
|
/**
|
|
889
907
|
* Returns whether any dependent binding of this binding has pending changes
|
|
890
908
|
*
|
|
891
|
-
* @returns {boolean}
|
|
892
|
-
* <code>true</code> if this binding has pending changes
|
|
893
909
|
* @param {boolean} [bIgnoreKeptAlive]
|
|
894
910
|
* Whether to ignore changes which will not be lost by APIs like sort or filter because they
|
|
895
911
|
* relate to a context which is kept alive.
|
|
912
|
+
* @returns {boolean}
|
|
913
|
+
* <code>true</code> if this binding has pending changes
|
|
896
914
|
*
|
|
897
915
|
* @abstract
|
|
898
916
|
* @function
|
|
@@ -982,8 +1000,8 @@ sap.ui.define([
|
|
|
982
1000
|
* the last call determines the binding's data; it is <b>independent</b> of the order of calls
|
|
983
1001
|
* to {@link sap.ui.model.odata.v4.ODataModel#submitBatch} with the given group ID.
|
|
984
1002
|
*
|
|
985
|
-
* If there are pending changes, an error is thrown. Use
|
|
986
|
-
* there are pending changes. If there are
|
|
1003
|
+
* If there are pending changes that cannot be ignored, an error is thrown. Use
|
|
1004
|
+
* {@link #hasPendingChanges} to check if there are such pending changes. If there are, call
|
|
987
1005
|
* {@link sap.ui.model.odata.v4.ODataModel#submitBatch} to submit the changes or
|
|
988
1006
|
* {@link sap.ui.model.odata.v4.ODataModel#resetChanges} to reset the changes before calling
|
|
989
1007
|
* {@link #refresh}.
|
|
@@ -998,10 +1016,18 @@ sap.ui.define([
|
|
|
998
1016
|
*
|
|
999
1017
|
* Valid values are <code>undefined</code>, '$auto', '$auto.*', '$direct' or application group
|
|
1000
1018
|
* IDs as specified in {@link sap.ui.model.odata.v4.ODataModel}.
|
|
1001
|
-
* @throws {Error}
|
|
1002
|
-
*
|
|
1003
|
-
*
|
|
1004
|
-
*
|
|
1019
|
+
* @throws {Error} If
|
|
1020
|
+
* <ul>
|
|
1021
|
+
* <li> the given group ID is invalid,
|
|
1022
|
+
* <li> there are pending changes that cannot be ignored,
|
|
1023
|
+
* <li> refresh on this binding is not supported,
|
|
1024
|
+
* <li> a group ID different from the binding's group ID is specified for a suspended
|
|
1025
|
+
* binding,
|
|
1026
|
+
* <li> or a value of type boolean is given.
|
|
1027
|
+
* </ul> Since 1.100.0, pending changes are ignored if they relate to a
|
|
1028
|
+
* {@link sap.ui.model.odata.v4.Context#setKeepAlive kept-alive} context of this binding, and
|
|
1029
|
+
* {@link sap.ui.model.odata.v4.Context#isTransient transient} contexts of a
|
|
1030
|
+
* {@link #getRootBinding root binding} do not count as pending changes.
|
|
1005
1031
|
*
|
|
1006
1032
|
* @public
|
|
1007
1033
|
* @see sap.ui.model.Binding#refresh
|
|
@@ -1044,6 +1070,24 @@ sap.ui.define([
|
|
|
1044
1070
|
* @private
|
|
1045
1071
|
*/
|
|
1046
1072
|
|
|
1073
|
+
/**
|
|
1074
|
+
* Refreshes the binding; expects it to be suspended.
|
|
1075
|
+
*
|
|
1076
|
+
* @param {string} sGroupId
|
|
1077
|
+
* The group ID to be used for the refresh
|
|
1078
|
+
* @throws {Error}
|
|
1079
|
+
* If a group ID different from the binding's group ID is given
|
|
1080
|
+
|
|
1081
|
+
* @private
|
|
1082
|
+
*/
|
|
1083
|
+
ODataBinding.prototype.refreshSuspended = function (sGroupId) {
|
|
1084
|
+
if (sGroupId && sGroupId !== this.getGroupId()) {
|
|
1085
|
+
throw new Error(this + ": Cannot refresh a suspended binding with group ID '"
|
|
1086
|
+
+ sGroupId + "' (own group ID is '" + this.getGroupId() + "')");
|
|
1087
|
+
}
|
|
1088
|
+
this.setResumeChangeReason(ChangeReason.Refresh);
|
|
1089
|
+
};
|
|
1090
|
+
|
|
1047
1091
|
/**
|
|
1048
1092
|
* Remove this binding's caches and non-persistent messages. The binding's active cache removes
|
|
1049
1093
|
* only its own messages. Inactive caches with a deep resource path starting with the given
|
|
@@ -1084,7 +1128,7 @@ sap.ui.define([
|
|
|
1084
1128
|
* The effective group ID
|
|
1085
1129
|
* @param {string[]} aAbsolutePaths
|
|
1086
1130
|
* The absolute paths to request side effects for
|
|
1087
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
1131
|
+
* @returns {sap.ui.base.SyncPromise|undefined}
|
|
1088
1132
|
* A promise resolving without a defined result, or rejecting with an error if loading of side
|
|
1089
1133
|
* effects fails, or <code>undefined</code> if there is nothing to do
|
|
1090
1134
|
*
|
|
@@ -1133,7 +1177,7 @@ sap.ui.define([
|
|
|
1133
1177
|
if (!this.isRoot()) {
|
|
1134
1178
|
throw new Error("Refresh on this binding is not supported");
|
|
1135
1179
|
}
|
|
1136
|
-
if (this.hasPendingChanges()) {
|
|
1180
|
+
if (this.hasPendingChanges(true)) {
|
|
1137
1181
|
throw new Error("Cannot refresh due to pending changes");
|
|
1138
1182
|
}
|
|
1139
1183
|
this.oModel.checkGroupId(sGroupId);
|
|
@@ -1235,7 +1279,7 @@ sap.ui.define([
|
|
|
1235
1279
|
* @since 1.37.0
|
|
1236
1280
|
*/
|
|
1237
1281
|
ODataBinding.prototype.toString = function () {
|
|
1238
|
-
return this.getMetadata().getName() + ": " + (this.bRelative
|
|
1282
|
+
return this.getMetadata().getName() + ": " + (this.bRelative ? this.oContext + "|" : "")
|
|
1239
1283
|
+ this.sPath;
|
|
1240
1284
|
};
|
|
1241
1285
|
|