@openui5/sap.ui.core 1.115.0 → 1.116.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/.dtsgenrc +18 -0
- package/.eslintrc.json +11 -0
- package/.reuse/dep5 +0 -5
- package/THIRDPARTY.txt +1 -7
- package/package.json +1 -1
- package/src/jquery.sap.global.js +1 -1
- 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.sjax.js +2 -2
- package/src/jquery.sap.storage.js +3 -3
- package/src/sap/base/Event.js +106 -0
- package/src/sap/base/Eventing.js +320 -0
- package/src/sap/base/config.js +1 -1
- package/src/sap/base/i18n/Formatting.js +991 -0
- package/src/sap/base/i18n/LanguageTag.js +189 -0
- package/src/sap/base/i18n/Localization.js +711 -0
- package/src/sap/base/i18n/ResourceBundle.js +5 -20
- package/src/sap/base/i18n/date/CalendarType.js +54 -0
- package/src/sap/base/i18n/date/CalendarWeekNumbering.js +105 -0
- package/src/sap/base/i18n/date/TimezoneUtils.js +287 -0
- 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 +3 -3
- package/src/sap/ui/Global.js +4 -4
- package/src/sap/ui/base/Event.js +1 -1
- package/src/sap/ui/base/EventProvider.js +4 -12
- package/src/sap/ui/base/Interface.js +1 -1
- package/src/sap/ui/base/ManagedObject.js +8 -12
- package/src/sap/ui/base/ManagedObjectMetadata.js +30 -7
- 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/base/SyncPromise.js +10 -5
- package/src/sap/ui/core/.library +2 -2
- package/src/sap/ui/core/AccessKeysEnablement.js +10 -5
- package/src/sap/ui/core/AnimationMode.js +49 -0
- package/src/sap/ui/core/BusyIndicator.js +33 -42
- package/src/sap/ui/core/CalendarType.js +11 -37
- package/src/sap/ui/core/Component.js +4 -5
- 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 +409 -1270
- package/src/sap/ui/core/Control.js +4 -12
- package/src/sap/ui/core/ControlBehavior.js +157 -0
- package/src/sap/ui/core/Core.js +124 -132
- 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 +14 -3
- 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/Fragment.js +1 -1
- package/src/sap/ui/core/HTML.js +1 -1
- package/src/sap/ui/core/History.js +1 -1
- package/src/sap/ui/core/Icon.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 +5 -7
- package/src/sap/ui/core/InvisibleRenderer.js +1 -1
- package/src/sap/ui/core/InvisibleText.js +12 -12
- package/src/sap/ui/core/Item.js +1 -1
- package/src/sap/ui/core/LabelEnablement.js +1 -1
- package/src/sap/ui/core/LayoutData.js +1 -1
- package/src/sap/ui/core/Lib.js +109 -22
- package/src/sap/ui/core/ListItem.js +1 -1
- package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
- package/src/sap/ui/core/Locale.js +151 -430
- package/src/sap/ui/core/LocaleData.js +39 -11
- package/src/sap/ui/core/Manifest.js +1 -1
- package/src/sap/ui/core/Message.js +1 -1
- 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/SeparatorItem.js +1 -1
- package/src/sap/ui/core/StaticArea.js +31 -17
- package/src/sap/ui/core/Theming.js +451 -0
- package/src/sap/ui/core/Title.js +1 -1
- package/src/sap/ui/core/TooltipBase.js +1 -1
- 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 +1 -0
- package/src/sap/ui/core/_IconRegistry.js +7 -1
- package/src/sap/ui/core/date/CalendarWeekNumbering.js +12 -83
- package/src/sap/ui/core/date/UI5Date.js +2 -2
- package/src/sap/ui/core/delegate/ItemNavigation.js +8 -10
- package/src/sap/ui/core/delegate/ScrollEnablement.js +5 -5
- 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 +1 -1
- package/src/sap/ui/core/format/DateFormat.js +20 -15
- package/src/sap/ui/core/format/TimezoneUtil.js +15 -273
- package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
- package/src/sap/ui/core/library.js +3 -3
- 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/MessageParser.js +1 -1
- package/src/sap/ui/core/message/MessageProcessor.js +1 -1
- package/src/sap/ui/core/messagebundle_cs.properties +1 -1
- package/src/sap/ui/core/messagebundle_cy.properties +1 -1
- package/src/sap/ui/core/messagebundle_da.properties +1 -1
- package/src/sap/ui/core/messagebundle_de.properties +1 -1
- package/src/sap/ui/core/messagebundle_el.properties +1 -1
- package/src/sap/ui/core/messagebundle_en.properties +1 -1
- package/src/sap/ui/core/messagebundle_en_GB.properties +1 -1
- package/src/sap/ui/core/messagebundle_es.properties +1 -1
- package/src/sap/ui/core/messagebundle_es_MX.properties +1 -1
- package/src/sap/ui/core/messagebundle_et.properties +1 -1
- package/src/sap/ui/core/messagebundle_id.properties +1 -1
- package/src/sap/ui/core/messagebundle_it.properties +49 -49
- package/src/sap/ui/core/messagebundle_iw.properties +1 -1
- package/src/sap/ui/core/messagebundle_kk.properties +1 -1
- package/src/sap/ui/core/messagebundle_ko.properties +1 -1
- package/src/sap/ui/core/messagebundle_lt.properties +1 -1
- package/src/sap/ui/core/messagebundle_lv.properties +1 -1
- package/src/sap/ui/core/messagebundle_ms.properties +8 -8
- package/src/sap/ui/core/messagebundle_nl.properties +1 -1
- package/src/sap/ui/core/messagebundle_no.properties +1 -1
- package/src/sap/ui/core/messagebundle_pl.properties +1 -1
- package/src/sap/ui/core/messagebundle_pt.properties +1 -1
- package/src/sap/ui/core/messagebundle_pt_PT.properties +1 -1
- package/src/sap/ui/core/messagebundle_ro.properties +1 -1
- package/src/sap/ui/core/messagebundle_sh.properties +1 -1
- package/src/sap/ui/core/messagebundle_sv.properties +1 -1
- package/src/sap/ui/core/messagebundle_th.properties +1 -1
- package/src/sap/ui/core/messagebundle_uk.properties +21 -21
- package/src/sap/ui/core/messagebundle_vi.properties +1 -1
- package/src/sap/ui/core/mvc/HTMLView.js +1 -1
- package/src/sap/ui/core/mvc/JSONView.js +1 -1
- package/src/sap/ui/core/mvc/JSView.js +1 -1
- package/src/sap/ui/core/mvc/TemplateView.js +1 -1
- package/src/sap/ui/core/mvc/View.js +1 -1
- package/src/sap/ui/core/mvc/XMLView.js +1 -1
- package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/plugin/LessSupport.js +14 -16
- 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/HashChanger.js +1 -0
- package/src/sap/ui/core/routing/Route.js +1 -0
- package/src/sap/ui/core/routing/Router.js +3 -1
- package/src/sap/ui/core/rules/Config.support.js +2 -2
- package/src/sap/ui/core/rules/Model.support.js +3 -1
- 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 +1 -1
- package/src/sap/ui/core/support/controls/TimelineOverview.js +1 -1
- package/src/sap/ui/core/support/plugins/ControlTree.js +2 -2
- 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/themes/base/LocalBusyIndicator.less +4 -4
- package/src/sap/ui/core/themes/base/base.less +41 -20
- package/src/sap/ui/core/themes/base/fonts/SAP-icons.ttf +0 -0
- package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
- package/src/sap/ui/core/theming/Parameters.js +6 -5
- package/src/sap/ui/core/theming/ThemeManager.js +310 -447
- package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
- package/src/sap/ui/core/tmpl/DOMElement.js +5 -10
- 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/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 +1 -1
- package/src/sap/ui/core/util/PasteHelper.js +1 -1
- package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +3 -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/PropertyList.js +1 -1
- package/src/sap/ui/events/PseudoEvents.js +17 -9
- package/src/sap/ui/model/Binding.js +19 -15
- package/src/sap/ui/model/ClientModel.js +1 -1
- package/src/sap/ui/model/CompositeBinding.js +57 -19
- package/src/sap/ui/model/CompositeDataState.js +1 -1
- package/src/sap/ui/model/CompositeType.js +1 -1
- package/src/sap/ui/model/DataState.js +1 -1
- package/src/sap/ui/model/ListBinding.js +42 -1
- package/src/sap/ui/model/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +5 -4
- package/src/sap/ui/model/PropertyBinding.js +10 -0
- package/src/sap/ui/model/SelectionModel.js +1 -1
- package/src/sap/ui/model/SimpleType.js +4 -1
- package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
- package/src/sap/ui/model/Type.js +1 -1
- package/src/sap/ui/model/base/ManagedObjectModel.js +1 -1
- package/src/sap/ui/model/json/JSONModel.js +1 -1
- package/src/sap/ui/model/message/MessageModel.js +1 -1
- package/src/sap/ui/model/odata/ODataAnnotations.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 +1 -1
- package/src/sap/ui/model/odata/ODataModel.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 +8 -1
- package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
- 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 +3 -3
- 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/v2/Context.js +3 -2
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataListBinding.js +14 -3
- package/src/sap/ui/model/odata/v2/ODataModel.js +45 -31
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/Context.js +7 -3
- package/src/sap/ui/model/odata/v4/ODataBinding.js +68 -39
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +12 -8
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +30 -8
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +11 -9
- package/src/sap/ui/model/odata/v4/ODataModel.js +10 -14
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +64 -31
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +21 -16
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +2 -0
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +37 -14
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +11 -1
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +7 -4
- package/src/sap/ui/model/odata/v4/lib/_V2MetadataConverter.js +4 -4
- package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +1 -1
- package/src/sap/ui/model/resource/ResourceModel.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/XMLModel.js +1 -1
- 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/Opa5.js +1 -1
- package/src/sap/ui/test/autowaiter/_autoWaiter.js +1 -1
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/test/gherkin/simpleGherkinParser.js +10 -5
- package/src/sap/ui/test/matchers/LabelFor.js +1 -0
- package/src/sap/ui/thirdparty/caja-html-sanitizer.js +111 -96
- package/src/sap/ui/util/ActivityDetection.js +7 -1
- package/src/sap/ui/util/Mobile.js +11 -8
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/ui5loader-autoconfig.js +5 -2
- package/src/ui5loader.js +169 -185
- package/test/sap/ui/core/FormatHelper.js +3 -2
- package/test/sap/ui/core/demokit/docuindex.json +6 -0
- package/test/sap/ui/core/demokit/sample/OpaBusyIndicator/OpaBusyIndicator.js +1 -1
- package/test/sap/ui/core/demokit/sample/OpaMatchers/OpaMatchers.js +2 -2
- package/test/sap/ui/core/demokit/sample/ViewTemplate/types/MIT.ODataTypes.html +9 -14
- package/test/sap/ui/core/demokit/sample/ViewTemplate/types/Opa.qunit.js +7 -0
- package/test/sap/ui/core/demokit/sample/common/pages/Any.js +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/tests/filter.js +2 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Component.js +27 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/ListReport.controller.js +43 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/ListReport.view.xml +47 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Main.controller.js +27 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Main.view.xml +7 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/NotFound.view.xml +8 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/ObjectPage.controller.js +123 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/ObjectPage.view.xml +92 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Opa.qunit.html +27 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Opa.qunit.js +69 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/README.html +55 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/SandboxModel.js +56 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/POST-SalesOrderList.json +66 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/SalesOrderList('0500000000')-SO_2_SOITEM.json +57 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/SalesOrderList('0500000000').json +20 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/SalesOrderList('0500000001').json +9 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/SalesOrderList('0500000007')-SO_2_BP.json +12 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/SalesOrderList.json +62 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/VH_CurrencyCode.json +85 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/VH_CurrencyCode.xml +185 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/VH_ProductID.json +93 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/VH_ProductID.xml +262 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/data/metadata.xml +1779 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/manifest.json +134 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/pages/Main.js +119 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/pages/Main.js +0 -41
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V2/manifest.json +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V4/manifest.json +1 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Main.controller.js +5 -17
- package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/Main.view.xml +3 -3
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/test/integration/arrangements/Startup.js +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/test/integration/arrangements/Startup.js +1 -1
- package/test/sap/ui/core/qunit/CompositeBinding.qunit.js +25 -7
- package/test/sap/ui/core/qunit/ControlRenderer.qunit.js +86 -2
- package/test/sap/ui/core/qunit/DataState.qunit.js +2 -7
- package/test/sap/ui/core/qunit/HTML.qunit.js +31 -31
- package/test/sap/ui/core/qunit/Lib.qunit.js +55 -2
- package/test/sap/ui/core/qunit/LocalBusyIndicator.qunit.js +22 -15
- package/test/sap/ui/core/qunit/ManagedObject.qunit.js +5 -3
- package/test/sap/ui/core/qunit/Object.qunit.js +4 -1
- package/test/sap/ui/core/qunit/ThemeManager.qunit.js +2 -2
- package/test/sap/ui/core/qunit/ThemeParameters.qunit.js +9 -3
- package/test/sap/ui/core/qunit/Theming.beforeBootstrap.qunit.js +13 -0
- package/test/sap/ui/core/qunit/Theming.qunit.js +229 -0
- package/test/sap/ui/core/qunit/analytics/AnalyticalTreeBindingAdapter.qunit.js +2 -7
- package/test/sap/ui/core/qunit/analytics/ODataModelAdapter.qunit.js +2 -7
- package/test/sap/ui/core/qunit/app/MessageListBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/base/i18n/Formatting.qunit.html +24 -0
- package/test/sap/ui/core/qunit/base/i18n/Formatting.qunit.js +275 -0
- package/test/sap/ui/core/qunit/base/i18n/Localization.qunit.js +259 -0
- package/test/sap/ui/core/qunit/base/i18n/ResourceBundle.qunit.js +5 -6
- package/test/sap/ui/core/qunit/base/security/sanitizeHTML.qunit.js +17 -0
- package/test/sap/ui/core/qunit/bootstrap/BootstrapPreload.qunit.js +1 -2
- package/test/sap/ui/core/qunit/bootstrap/BootstrapWithCustomBootTask.beforeBootstrap.qunit.js +13 -12
- package/test/sap/ui/core/qunit/bootstrap/Configuration.qunit.js +388 -254
- package/test/sap/ui/core/qunit/bootstrap/ThemeVersion.qunit.js +19 -30
- package/test/sap/ui/core/qunit/component/Models.qunit.js +7 -28
- package/test/sap/ui/core/qunit/component/Models_unavoidablySync.qunit.js +8 -26
- package/test/sap/ui/core/qunit/component/testdata/async/lib2/library-preload.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/lib2/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/lib2/library.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/lib3/library-preload.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/lib3/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/lib3/library.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/lib4/library-preload.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/lib4/library-preload.json +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/lib4/library.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/manifestcomp/Component-preload.js +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/manifestcomp/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/mycomp/Component-preload.js +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/mycomp/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/async/mysubcomp/Component-preload.js +1 -1
- package/test/sap/ui/core/qunit/component/testdata/async/mysubcomp/Component.js +2 -3
- package/test/sap/ui/core/qunit/component/testdata/customizing/customer/ext/Component.js +0 -4
- package/test/sap/ui/core/qunit/component/testdata/customizing/customer/ext/sync/Component.js +2 -6
- package/test/sap/ui/core/qunit/component/testdata/customizing/customersub/Component.js +0 -4
- package/test/sap/ui/core/qunit/component/testdata/inherit/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/inherit/parent/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/inheritAsync/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/inheritAsync/parentA/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/inheritAsync/parentB/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/inheritAsyncError/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/inheritAsyncError/parentA/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/inheritAsyncError/parentB/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/other/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/terminologies/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/terminologies/component1/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/terminologies/component2/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/terminologies/component3/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/terminologies/component5/Component.js +2 -2
- package/test/sap/ui/core/qunit/component/testdata/terminologies/reuse/Component.js +2 -3
- package/test/sap/ui/core/qunit/component/testdata/v1/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/v1empty/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/v1inline/Component.js +2 -5
- package/test/sap/ui/core/qunit/component/testdata/v1missing/Component.js +2 -7
- package/test/sap/ui/core/qunit/component/testdata/v2/Component.js +2 -5
- package/test/sap/ui/core/qunit/component/testdata/v2asyncRootView/Component.js +2 -5
- package/test/sap/ui/core/qunit/component/testdata/v2empty/Component.js +2 -9
- package/test/sap/ui/core/qunit/component/testdata/v2inline/Component.js +2 -5
- package/test/sap/ui/core/qunit/component/testdata/v2missing/Component.js +2 -9
- package/test/sap/ui/core/qunit/component/testdata/v2version/Component.js +2 -2
- package/test/sap/ui/core/qunit/dnd/DragDropInfo.qunit.js +1 -2
- package/test/sap/ui/core/qunit/generic/legacy/ControlMemoryLeaks.qunit.js +2 -0
- package/test/sap/ui/core/qunit/generic/legacy/DuplicateIdCheck.qunit.js +2 -0
- package/test/sap/ui/core/qunit/gherkin/dataTableUtils.qunit.js +2 -2
- package/test/sap/ui/core/qunit/i18n/Locale.qunit.js +0 -52
- package/test/sap/ui/core/qunit/i18n/LocaleData.qunit.js +1 -1
- package/test/sap/ui/core/qunit/i18n/UniversalDate.qunit.js +14 -24
- package/test/sap/ui/core/qunit/i18n/testsuite.i18n.qunit.js +18 -0
- package/test/sap/ui/core/qunit/internal/1RingModels.qunit.js +1 -0
- package/test/sap/ui/core/qunit/json/JSONListBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/json/JSONPropertyBinding.qunit.js +7 -12
- package/test/sap/ui/core/qunit/json/JSONTwoWay.qunit.js +3 -8
- package/test/sap/ui/core/qunit/loader/fixture/amd-with-export-true/module1.js +2 -2
- package/test/sap/ui/core/qunit/messages/MessageMixin.qunit.js +2 -7
- package/test/sap/ui/core/qunit/messages/messagesUsage.qunit.js +1 -1
- package/test/sap/ui/core/qunit/model/Binding.qunit.js +36 -11
- package/test/sap/ui/core/qunit/model/ClientListBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/ClientTreeBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/CompositeDataState.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/Context.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/ContextBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/ListBinding.qunit.js +63 -6
- package/test/sap/ui/core/qunit/model/Model.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/PropertyBinding.qunit.js +40 -0
- package/test/sap/ui/core/qunit/model/TreeBinding.qunit.js +2 -7
- package/test/sap/ui/core/qunit/model/TreeBindingAdapter.qunit.js +2 -7
- package/test/sap/ui/core/qunit/mvc/XMLView.qunit.js +9 -8
- package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions.qunit.js +4 -4
- package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions_legacy.qunit.js +4 -4
- package/test/sap/ui/core/qunit/odata/AnnotationParserNoFakeService.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/ODataMessageParser.qunit.js +1 -1
- package/test/sap/ui/core/qunit/odata/ODataMessageParserNoFakeService.qunit.js +2 -8
- package/test/sap/ui/core/qunit/odata/ODataMetadataNoFakeService.qunit.js +1 -6
- package/test/sap/ui/core/qunit/odata/type/DateTimeBase.qunit.js +24 -0
- package/test/sap/ui/core/qunit/odata/v2/Context.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/v2/ODataContextBindingNoFakeService.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/v2/ODataListBindingNoFakeService.qunit.js +31 -17
- package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +28 -19
- package/test/sap/ui/core/qunit/odata/v2/ODataModelNoFakeService.qunit.js +70 -15
- package/test/sap/ui/core/qunit/odata/v2/ODataPropertyBindingNoFakeService.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/v2/ODataTreeBindingFlatNoFakeService.qunit.js +4 -9
- package/test/sap/ui/core/qunit/odata/v2/ODataTreeBindingNoFakeService.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/v2/_CreatedContextsCache.qunit.js +2 -7
- package/test/sap/ui/core/qunit/odata/v4/AnnotationHelper.qunit.js +1 -1
- package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +45 -17
- package/test/sap/ui/core/qunit/odata/v4/ODataBinding.qunit.js +152 -151
- package/test/sap/ui/core/qunit/odata/v4/ODataContextBinding.qunit.js +55 -27
- package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +119 -4
- package/test/sap/ui/core/qunit/odata/v4/ODataMetaModel.qunit.js +3 -3
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +754 -195
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.qunit.js +42 -53
- package/test/sap/ui/core/qunit/odata/v4/ODataParentBinding.qunit.js +283 -170
- package/test/sap/ui/core/qunit/odata/v4/ODataPropertyBinding.qunit.js +103 -78
- package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +3 -0
- package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +87 -58
- package/test/sap/ui/core/qunit/odata/v4/lib/_Helper.qunit.js +3 -1
- package/test/sap/ui/core/qunit/odata/v4/lib/_Requestor.qunit.js +124 -22
- package/test/sap/ui/core/qunit/odata/v4/testsuite.odatav4.qunit.js +4 -0
- package/test/sap/ui/core/qunit/opa/_LogCollector.qunit.js +1 -1
- package/test/sap/ui/core/qunit/performance/trace/FESR.qunit.js +5 -0
- package/test/sap/ui/core/qunit/resource/ResourceModel.qunit.js +17 -37
- package/test/sap/ui/core/qunit/routing/HashChanger.qunit.js +1 -6
- package/test/sap/ui/core/qunit/routing/RouterHashChanger.qunit.js +1 -10
- package/test/sap/ui/core/qunit/routing/async/Router.qunit.js +1 -22
- package/test/sap/ui/core/qunit/routing/async/Target.qunit.js +1 -4
- package/test/sap/ui/core/qunit/rule/model/modelSupport.qunit.js +34 -1
- package/test/sap/ui/core/qunit/testdata/fastnavigation/view/FastNavigation.view.xml +2 -2
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib1/i18n.properties +1 -0
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib1/library.js +10 -0
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib1/manifest.json +10 -0
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib2/library.js +10 -0
- package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib2/messagebundle.properties +1 -0
- package/test/sap/ui/core/qunit/testsuites/testsuite.databinding.qunit.js +3 -0
- package/test/sap/ui/core/qunit/testsuites/testsuite.theming.qunit.js +29 -0
- package/test/sap/ui/core/qunit/types/DateFormatTimezones.qunit.js +397 -607
- package/test/sap/ui/core/qunit/types/SimpleType.qunit.js +16 -2
- package/test/sap/ui/core/qunit/types/Types.qunit.js +2 -37
- package/test/sap/ui/core/qunit/types/testsuite.types.qunit.js +1 -1
- package/test/sap/ui/core/qunit/util/SyncPromise.qunit.js +4 -1
- package/test/sap/ui/core/qunit/util/jQuery.sap.measure.qunit.js +16 -11
- package/test/sap/ui/core/qunit/xml/XMLListBinding.qunit.js +1 -3
- package/test/sap/ui/core/qunit/xml/XMLModel.qunit.js +4 -14
- package/test/sap/ui/core/qunit/xml/XMLPropertyBinding.qunit.js +7 -11
- package/test/sap/ui/core/qunit/xml/XMLTreeBinding.qunit.js +1 -1
- package/test/sap/ui/core/qunit/xml/XMLTwoWay.qunit.js +3 -7
- package/test/sap/ui/core/relnotes/changes-1.115.json +1 -37
- package/test/sap/ui/core/relnotes/changes-1.116.json +82 -0
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/firstItem-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/initial.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/lastItem-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/leftDownBtn-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/myButtonSample-contextMenu.ref.lnk +1 -1
- package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/rightDownBtn-contextMenu.ref.lnk +1 -1
- package/test/testsuite/js/samples.js +2 -0
- package/ui5.yaml +1 -1
|
@@ -43,8 +43,8 @@
|
|
|
43
43
|
* <tr><td><code>float</code></td><td>The value is converted to a <code>number</code>. Supported by
|
|
44
44
|
* all numeric types.</td></tr>
|
|
45
45
|
* <tr><td><code>object</code></td><td>The value is converted to a <code>Date</code> so that it can
|
|
46
|
-
* be displayed in a date or time picker. Supported by {@link sap.ui.model.odata.type.Date}
|
|
47
|
-
* {@link sap.ui.model.odata.type.DateTimeOffset} since 1.69.0.
|
|
46
|
+
* be displayed in a date or time picker. Supported by {@link sap.ui.model.odata.type.Date},
|
|
47
|
+
* {@link sap.ui.model.odata.type.DateTime} and {@link sap.ui.model.odata.type.DateTimeOffset} since 1.69.0.
|
|
48
48
|
* </td></tr>
|
|
49
49
|
* <tr><td><code>any</code></td><td>A technical format. The value is simply passed through. Only
|
|
50
50
|
* supported by <code>format</code>, not by <code>parse</code>. Supported by all types.</td></tr>
|
|
@@ -116,7 +116,7 @@ sap.ui.define([
|
|
|
116
116
|
* @extends sap.ui.model.SimpleType
|
|
117
117
|
*
|
|
118
118
|
* @author SAP SE
|
|
119
|
-
* @version 1.
|
|
119
|
+
* @version 1.116.0
|
|
120
120
|
*
|
|
121
121
|
* @abstract
|
|
122
122
|
* @alias sap.ui.model.odata.type.ODataType
|
|
@@ -30,7 +30,7 @@ sap.ui.define([
|
|
|
30
30
|
* @extends sap.ui.model.odata.type.ODataType
|
|
31
31
|
* @public
|
|
32
32
|
* @since 1.37.0
|
|
33
|
-
* @version 1.
|
|
33
|
+
* @version 1.116.0
|
|
34
34
|
*/
|
|
35
35
|
var Raw = ODataType.extend("sap.ui.model.odata.type.Raw", {
|
|
36
36
|
constructor : function (oFormatOptions, oConstraints) {
|
|
@@ -60,7 +60,7 @@ sap.ui.define([
|
|
|
60
60
|
* @extends sap.ui.model.odata.type.ODataType
|
|
61
61
|
* @public
|
|
62
62
|
* @since 1.51.0
|
|
63
|
-
* @version 1.
|
|
63
|
+
* @version 1.116.0
|
|
64
64
|
*/
|
|
65
65
|
var Stream = ODataType.extend("sap.ui.model.odata.type.Stream", {
|
|
66
66
|
constructor : function (oFormatOptions, oConstraints) {
|
|
@@ -92,7 +92,7 @@ sap.ui.define([
|
|
|
92
92
|
* @extends sap.ui.model.odata.type.ODataType
|
|
93
93
|
* @public
|
|
94
94
|
* @since 1.37.0
|
|
95
|
-
* @version 1.
|
|
95
|
+
* @version 1.116.0
|
|
96
96
|
*/
|
|
97
97
|
var TimeOfDay = ODataType.extend("sap.ui.model.odata.type.TimeOfDay", {
|
|
98
98
|
constructor : function (oFormatOptions, oConstraints) {
|
|
@@ -66,7 +66,7 @@ sap.ui.define([
|
|
|
66
66
|
* @extends sap.ui.model.type.Unit
|
|
67
67
|
* @public
|
|
68
68
|
* @since 1.63.0
|
|
69
|
-
* @version 1.
|
|
69
|
+
* @version 1.116.0
|
|
70
70
|
*/
|
|
71
71
|
var Unit = BaseUnit.extend("sap.ui.model.odata.type.Unit", {
|
|
72
72
|
constructor : function (oFormatOptions, oConstraints, aDynamicFormatOptionNames) {
|
|
@@ -64,7 +64,7 @@ sap.ui.define([
|
|
|
64
64
|
* @hideconstructor
|
|
65
65
|
* @public
|
|
66
66
|
* @since 1.93.0
|
|
67
|
-
* @version 1.
|
|
67
|
+
* @version 1.116.0
|
|
68
68
|
*/
|
|
69
69
|
var Context = BaseContext.extend("sap.ui.model.odata.v2.Context", {
|
|
70
70
|
constructor : function (oModel, sPath, sDeepPath, oCreatePromise, bInactive,
|
|
@@ -217,7 +217,8 @@ sap.ui.define([
|
|
|
217
217
|
* see {@link #setRefreshAfterChange}. If given, this overrules the model-wide
|
|
218
218
|
* <code>refreshAfterChange</code> flag for this operation only.
|
|
219
219
|
* @returns {Promise<undefined>} A promise resolving with <code>undefined</code> in case of
|
|
220
|
-
* successful deletion or rejecting with an error in case the deletion failed
|
|
220
|
+
* successful deletion or rejecting with an error in case the deletion failed. If the <code>DELETE</code> request
|
|
221
|
+
* has been aborted, the error has an <code>aborted</code> flag set to <code>true</code>.
|
|
221
222
|
* @throws {Error}
|
|
222
223
|
* If the given parameter map contains any other parameter than those documented above in case
|
|
223
224
|
* of a persistent context
|
|
@@ -1935,8 +1935,14 @@ sap.ui.define([
|
|
|
1935
1935
|
* batch request
|
|
1936
1936
|
* @param {boolean} [mParameters.inactive]
|
|
1937
1937
|
* Whether the created context is inactive. An inactive context will only be sent to the
|
|
1938
|
-
* server after
|
|
1939
|
-
* context
|
|
1938
|
+
* server when it has become active after a property update. From then on it behaves like any
|
|
1939
|
+
* other created context.<br>
|
|
1940
|
+
* When a property update happens on an inactive context, the
|
|
1941
|
+
* {@link sap.ui.model.odata.v2.ODataListBinding#event:createActivate 'createActivate'} event
|
|
1942
|
+
* is fired, and the context becomes active, unless the event handler prevents this. While
|
|
1943
|
+
* inactive, the context does not count as a
|
|
1944
|
+
* {@link sap.ui.model.odata.v2.ODataModel#hasPendingChanges pending change} and does not
|
|
1945
|
+
* contribute to the {@link #getCount count}.
|
|
1940
1946
|
* @param {function} [mParameters.success]
|
|
1941
1947
|
* The success callback function
|
|
1942
1948
|
* @returns {sap.ui.model.odata.v2.Context}
|
|
@@ -2225,15 +2231,20 @@ sap.ui.define([
|
|
|
2225
2231
|
* Set of entity types that are affected by side-effects requests
|
|
2226
2232
|
* @param {string} [sGroupId]
|
|
2227
2233
|
* The ID of a request group
|
|
2234
|
+
* @returns {boolean}
|
|
2235
|
+
* Whether the list binding is affected by the side effect
|
|
2228
2236
|
*
|
|
2229
2237
|
* @private
|
|
2230
2238
|
*/
|
|
2231
2239
|
ODataListBinding.prototype._refreshForSideEffects = function (oAffectedEntityTypes, sGroupId) {
|
|
2232
|
-
|
|
2240
|
+
var bIsAffected = !this._hasTransientParentContext() && oAffectedEntityTypes.has(this.oEntityType);
|
|
2241
|
+
|
|
2242
|
+
if (bIsAffected && !this._isExpandedListUsable()) {
|
|
2233
2243
|
this.sRefreshGroupId = sGroupId;
|
|
2234
2244
|
this._refresh();
|
|
2235
2245
|
this.sRefreshGroupId = undefined;
|
|
2236
2246
|
}
|
|
2247
|
+
return bIsAffected;
|
|
2237
2248
|
};
|
|
2238
2249
|
|
|
2239
2250
|
/**
|
|
@@ -213,7 +213,7 @@ sap.ui.define([
|
|
|
213
213
|
* This model is not prepared to be inherited from.
|
|
214
214
|
*
|
|
215
215
|
* @author SAP SE
|
|
216
|
-
* @version 1.
|
|
216
|
+
* @version 1.116.0
|
|
217
217
|
*
|
|
218
218
|
* @public
|
|
219
219
|
* @alias sap.ui.model.odata.v2.ODataModel
|
|
@@ -5092,26 +5092,27 @@ sap.ui.define([
|
|
|
5092
5092
|
* supported and may not work. These should be done separately and directly on the corresponding entry.
|
|
5093
5093
|
*
|
|
5094
5094
|
* @param {string} sPath A string containing the path to the data that should be updated.
|
|
5095
|
-
*
|
|
5096
|
-
*
|
|
5095
|
+
* The path is concatenated to the sServiceUrl which was specified
|
|
5096
|
+
* in the model constructor.
|
|
5097
5097
|
* @param {object} oData Data of the entry that should be updated.
|
|
5098
5098
|
* @param {object} [mParameters] Optional, can contain the following attributes:
|
|
5099
5099
|
* @param {object} [mParameters.context] If specified the sPath has to be is relative to the path given with the context.
|
|
5100
5100
|
* @param {function} [mParameters.success] A callback function which is called when the data has been successfully updated.
|
|
5101
5101
|
* @param {function} [mParameters.error] A callback function which is called when the request failed.
|
|
5102
|
-
*
|
|
5102
|
+
* The handler can have the parameter <code>oError</code> which contains additional error information.
|
|
5103
|
+
* If the <code>PUT/MERGE</code> request has been aborted, the error has an <code>aborted</code> flag set to
|
|
5104
|
+
* <code>true</code>.
|
|
5103
5105
|
* @param {string} [mParameters.eTag] If specified, the <code>If-Match</code> header will be set to this ETag.
|
|
5104
|
-
*
|
|
5105
|
-
*
|
|
5106
|
-
*
|
|
5106
|
+
* Caution: This feature in not officially supported as using asynchronous requests can lead
|
|
5107
|
+
* to data inconsistencies. If you decide to use this feature nevertheless, you have to make
|
|
5108
|
+
* sure that the request is completed before the data is processed any further.
|
|
5107
5109
|
* @param {Object<string,string>} [mParameters.urlParameters] A map containing the parameters that will be passed as query strings
|
|
5108
5110
|
* @param {Object<string,string>} [mParameters.headers] A map of headers for this request
|
|
5109
5111
|
* @param {string} [mParameters.batchGroupId] Deprecated - use <code>groupId</code> instead
|
|
5110
5112
|
* @param {string} [mParameters.groupId] ID of a request group; requests belonging to the same group will be bundled in one batch request
|
|
5111
5113
|
* @param {string} [mParameters.changeSetId] ID of the <code>ChangeSet</code> that this request should belong to
|
|
5112
|
-
* @param {boolean} [mParameters.refreshAfterChange] Since 1.46; defines whether to update all bindings after submitting this change operation.
|
|
5113
|
-
|
|
5114
|
-
*
|
|
5114
|
+
* @param {boolean} [mParameters.refreshAfterChange] Since 1.46; defines whether to update all bindings after submitting this change operation.
|
|
5115
|
+
* See {@link #setRefreshAfterChange}. If given, this overrules the model-wide <code>refreshAfterChange</code> flag for this operation only.
|
|
5115
5116
|
* @return {object} An object which has an <code>abort</code> function to abort the current request.
|
|
5116
5117
|
*
|
|
5117
5118
|
* @public
|
|
@@ -5177,24 +5178,26 @@ sap.ui.define([
|
|
|
5177
5178
|
* {@link #createEntry} or {@link sap.ui.model.odata.v2.ODataListBinding#create} instead.
|
|
5178
5179
|
*
|
|
5179
5180
|
* @param {string} sPath A string containing the path to the collection where an entry
|
|
5180
|
-
*
|
|
5181
|
-
*
|
|
5181
|
+
* should be created. The path is concatenated to the service URL
|
|
5182
|
+
* which was specified in the model constructor.
|
|
5182
5183
|
* @param {object} oData Data of the entry that should be created.
|
|
5183
5184
|
* @param {object} [mParameters] Optional parameter map containing any of the following properties:
|
|
5184
5185
|
* @param {object} [mParameters.context] If specified , <code>sPath</code> has to be relative to the path given with the context.
|
|
5185
5186
|
* @param {function} [mParameters.success] A callback function which is called when the data has
|
|
5186
|
-
*
|
|
5187
|
-
*
|
|
5188
|
-
*
|
|
5187
|
+
* been successfully retrieved. The handler can have the
|
|
5188
|
+
* following parameters: <code>oData</code> and <code>response</code>. The <code>oData</code> parameter contains the data of the newly created entry if it is provided by the backend.
|
|
5189
|
+
* The <code>response</code> parameter contains information about the response of the request.
|
|
5189
5190
|
* @param {function} [mParameters.error] A callback function which is called when the request failed.
|
|
5190
|
-
*
|
|
5191
|
+
* The handler can have the parameter <code>oError</code> which contains additional error information.
|
|
5192
|
+
* If the <code>POST</code> request has been aborted, the error has an <code>aborted</code> flag set to
|
|
5193
|
+
* <code>true</code>.
|
|
5191
5194
|
* @param {Object<string,string>} [mParameters.urlParameters] A map containing the parameters that will be passed as query strings
|
|
5192
5195
|
* @param {Object<string,string>} [mParameters.headers] A map of headers for this request
|
|
5193
5196
|
* @param {string} [mParameters.batchGroupId] Deprecated - use <code>groupId</code> instead
|
|
5194
5197
|
* @param {string} [mParameters.groupId] ID of a request group; requests belonging to the same group will be bundled in one batch request
|
|
5195
5198
|
* @param {string} [mParameters.changeSetId] ID of the <code>ChangeSet</code> that this request should belong to
|
|
5196
|
-
* @param {boolean} [mParameters.refreshAfterChange] Since 1.46; defines whether to update all bindings after submitting this change operation.
|
|
5197
|
-
|
|
5199
|
+
* @param {boolean} [mParameters.refreshAfterChange] Since 1.46; defines whether to update all bindings after submitting this change operation.
|
|
5200
|
+
* See {@link #setRefreshAfterChange}. If given, this overrules the model-wide <code>refreshAfterChange</code> flag for this operation only.
|
|
5198
5201
|
* @return {object} An object which has an <code>abort</code> function to abort the current request.
|
|
5199
5202
|
*
|
|
5200
5203
|
* @public
|
|
@@ -5270,6 +5273,8 @@ sap.ui.define([
|
|
|
5270
5273
|
* @param {function} [mParameters.error]
|
|
5271
5274
|
* A callback function which is called when the request failed. The handler can have the
|
|
5272
5275
|
* parameter: <code>oError</code> which contains additional error information.
|
|
5276
|
+
* If the <code>DELETE</code> request has been aborted, the error has an <code>aborted</code> flag set to
|
|
5277
|
+
* <code>true</code>.
|
|
5273
5278
|
* @param {string} [mParameters.eTag]
|
|
5274
5279
|
* If specified, the <code>If-Match</code> header will be set to this ETag.
|
|
5275
5280
|
* @param {Object<string,string>} [mParameters.urlParameters]
|
|
@@ -5407,6 +5412,7 @@ sap.ui.define([
|
|
|
5407
5412
|
* @param {function} [mParameters.error]
|
|
5408
5413
|
* A callback function which is called when the request failed. The handler can have the
|
|
5409
5414
|
* parameter: <code>oError</code> which contains additional error information.
|
|
5415
|
+
* If the request has been aborted, the error has an <code>aborted</code> flag set to <code>true</code>.
|
|
5410
5416
|
* @param {string} [mParameters.eTag]
|
|
5411
5417
|
* If the function import changes an entity, the ETag for this entity can be passed with this
|
|
5412
5418
|
* parameter
|
|
@@ -5745,16 +5751,18 @@ sap.ui.define([
|
|
|
5745
5751
|
* ignored, use <code>mParameters.urlParameters</code> instead
|
|
5746
5752
|
* @param {object} [mParameters] Optional parameter map containing any of the following properties:
|
|
5747
5753
|
* @param {object} [mParameters.context] If specified, <code>sPath</code> has to be relative to the path
|
|
5748
|
-
*
|
|
5754
|
+
* given with the context.
|
|
5749
5755
|
* @param {Object<string,string>} [mParameters.urlParameters] A map containing the parameters that will be passed as query strings
|
|
5750
5756
|
* @param {sap.ui.model.Filter[]} [mParameters.filters] An array of filters to be included in the request URL
|
|
5751
5757
|
* @param {sap.ui.model.Sorter[]} [mParameters.sorters] An array of sorters to be included in the request URL
|
|
5752
5758
|
* @param {function} [mParameters.success] A callback function which is called when the data has
|
|
5753
|
-
*
|
|
5754
|
-
*
|
|
5755
|
-
*
|
|
5759
|
+
* been successfully retrieved. The handler can have the
|
|
5760
|
+
* following parameters: <code>oData</code> and <code>response</code>. The <code>oData</code> parameter contains the data of the retrieved data.
|
|
5761
|
+
* The <code>response</code> parameter contains further information about the response of the request.
|
|
5756
5762
|
* @param {function} [mParameters.error] A callback function which is called when the request
|
|
5757
|
-
*
|
|
5763
|
+
* failed. The handler can have the parameter: <code>oError</code> which contains additional error information.
|
|
5764
|
+
* If the <code>GET</code> request has been aborted, the error has an <code>aborted</code> flag set to
|
|
5765
|
+
* <code>true</code>.
|
|
5758
5766
|
* @param {string} [mParameters.batchGroupId] Deprecated - use <code>groupId</code> instead
|
|
5759
5767
|
* @param {string} [mParameters.groupId] ID of a request group; requests belonging to the same group will be bundled in one batch request
|
|
5760
5768
|
* @param {boolean} [mParameters.updateAggregatedMessages]
|
|
@@ -5889,10 +5897,10 @@ sap.ui.define([
|
|
|
5889
5897
|
* @param {Object<string,string>} [mParameters.urlParameters]
|
|
5890
5898
|
* URL parameters for the side-effects request as a map from a URL parameter name to its
|
|
5891
5899
|
* string value including <code>$expand</code> and <code>$select</code>
|
|
5892
|
-
* @returns {Promise}
|
|
5893
|
-
* The promise on the outcome of the side-effects request; resolves with
|
|
5894
|
-
*
|
|
5895
|
-
*
|
|
5900
|
+
* @returns {Promise<Array<sap.ui.model.odata.v2.ODataListBinding>>}
|
|
5901
|
+
* The promise on the outcome of the side-effects request; resolves with the array of affected
|
|
5902
|
+
* list bindings if the request is processed successfully, or rejects with an error object if
|
|
5903
|
+
* the request fails
|
|
5896
5904
|
* @throws {Error}
|
|
5897
5905
|
* If the given parameters map contains any other parameter than those documented above
|
|
5898
5906
|
*
|
|
@@ -5913,6 +5921,7 @@ sap.ui.define([
|
|
|
5913
5921
|
|
|
5914
5922
|
return new Promise(function (resolve, reject) {
|
|
5915
5923
|
var oAffectedEntityTypes = new Set(),
|
|
5924
|
+
aAffectedListBindings = [],
|
|
5916
5925
|
sExpands = mParameters.urlParameters && mParameters.urlParameters["$expand"];
|
|
5917
5926
|
|
|
5918
5927
|
that._read("", {
|
|
@@ -5921,7 +5930,7 @@ sap.ui.define([
|
|
|
5921
5930
|
error : reject,
|
|
5922
5931
|
groupId : mParameters.groupId,
|
|
5923
5932
|
success : function (/*oData, oResponse*/) {
|
|
5924
|
-
resolve();
|
|
5933
|
+
resolve(aAffectedListBindings);
|
|
5925
5934
|
},
|
|
5926
5935
|
updateAggregatedMessages : true,
|
|
5927
5936
|
urlParameters : mParameters.urlParameters
|
|
@@ -5936,7 +5945,9 @@ sap.ui.define([
|
|
|
5936
5945
|
});
|
|
5937
5946
|
that.getBindings().forEach(function (oBinding) {
|
|
5938
5947
|
if (oBinding.isA("sap.ui.model.odata.v2.ODataListBinding")) {
|
|
5939
|
-
oBinding._refreshForSideEffects(oAffectedEntityTypes, mParameters.groupId)
|
|
5948
|
+
if (oBinding._refreshForSideEffects(oAffectedEntityTypes, mParameters.groupId)) {
|
|
5949
|
+
aAffectedListBindings.push(oBinding);
|
|
5950
|
+
}
|
|
5940
5951
|
}
|
|
5941
5952
|
});
|
|
5942
5953
|
}
|
|
@@ -6180,7 +6191,10 @@ sap.ui.define([
|
|
|
6180
6191
|
* and change sets of the actual batch request which was sent to the backend.
|
|
6181
6192
|
* The changeResponses contain the actual response of that change set in the <code>response</code> property.
|
|
6182
6193
|
* For each change set there is also a <code>__changeResponse</code> property.
|
|
6183
|
-
* @param {function} [mParameters.error] A callback function which is called when the request failed.
|
|
6194
|
+
* @param {function} [mParameters.error] A callback function which is called when the request failed.
|
|
6195
|
+
* The handler can have the parameter: <code>oError</code> which contains additional error information.
|
|
6196
|
+
* If all contained requests have been aborted, the error has an <code>aborted</code> flag set to
|
|
6197
|
+
* <code>true</code>.
|
|
6184
6198
|
* @param {string} [mParameters.batchGroupId]
|
|
6185
6199
|
* <b>Deprecated</b>, use <code>groupId</code> instead
|
|
6186
6200
|
* @param {boolean} [mParameters.merge]
|
|
@@ -6442,7 +6456,7 @@ sap.ui.define([
|
|
|
6442
6456
|
* @param {array} [aPath]
|
|
6443
6457
|
* Paths to be reset; if no array is passed, all changes are reset
|
|
6444
6458
|
* @param {boolean} [bAll=false]
|
|
6445
|
-
* Whether also deferred requests are taken into account
|
|
6459
|
+
* Whether also deferred requests are taken into account so that they are aborted
|
|
6446
6460
|
* @param {boolean} [bDeleteCreatedEntities=false]
|
|
6447
6461
|
* Whether to delete the entities created via {@link #createEntry} or {@link #callFunction};
|
|
6448
6462
|
* since 1.95.0
|
|
@@ -93,7 +93,7 @@ sap.ui.define([
|
|
|
93
93
|
* @extends sap.ui.model.TreeBinding
|
|
94
94
|
* @hideconstructor
|
|
95
95
|
* @public
|
|
96
|
-
* @version 1.
|
|
96
|
+
* @version 1.116.0
|
|
97
97
|
*/
|
|
98
98
|
var ODataTreeBinding = TreeBinding.extend("sap.ui.model.odata.v2.ODataTreeBinding", /** @lends sap.ui.model.odata.v2.ODataTreeBinding.prototype */ {
|
|
99
99
|
|
|
@@ -42,7 +42,7 @@ sap.ui.define([
|
|
|
42
42
|
* @hideconstructor
|
|
43
43
|
* @public
|
|
44
44
|
* @since 1.39.0
|
|
45
|
-
* @version 1.
|
|
45
|
+
* @version 1.116.0
|
|
46
46
|
*/
|
|
47
47
|
Context = BaseContext.extend("sap.ui.model.odata.v4.Context", {
|
|
48
48
|
constructor : constructor
|
|
@@ -1333,7 +1333,7 @@ sap.ui.define([
|
|
|
1333
1333
|
this.oBinding.checkSuspended();
|
|
1334
1334
|
|
|
1335
1335
|
return Promise.all(aPaths.map(function (sPath) {
|
|
1336
|
-
return that.oBinding.fetchIfChildCanUseCache(that, sPath,
|
|
1336
|
+
return that.oBinding.fetchIfChildCanUseCache(that, sPath, undefined, true)
|
|
1337
1337
|
.then(function (sReducedPath) {
|
|
1338
1338
|
if (sReducedPath) {
|
|
1339
1339
|
return that.fetchPrimitiveValue(sReducedPath, bExternalFormat);
|
|
@@ -1836,7 +1836,7 @@ sap.ui.define([
|
|
|
1836
1836
|
if (!sMessagesPath) {
|
|
1837
1837
|
throw new Error("Missing @com.sap.vocabularies.Common.v1.Messages");
|
|
1838
1838
|
}
|
|
1839
|
-
return that.oBinding.fetchIfChildCanUseCache(that, sMessagesPath,
|
|
1839
|
+
return that.oBinding.fetchIfChildCanUseCache(that, sMessagesPath, undefined, true);
|
|
1840
1840
|
}).then(function (sReducedPath) {
|
|
1841
1841
|
return that.fetchValue(sReducedPath);
|
|
1842
1842
|
}).catch(this.oModel.getReporter());
|
|
@@ -1844,6 +1844,7 @@ sap.ui.define([
|
|
|
1844
1844
|
|
|
1845
1845
|
this.bKeepAlive = bKeepAlive;
|
|
1846
1846
|
this.fnOnBeforeDestroy = bKeepAlive ? fnOnBeforeDestroy : undefined;
|
|
1847
|
+
this.oBinding.onKeepAliveChanged(this);
|
|
1847
1848
|
};
|
|
1848
1849
|
|
|
1849
1850
|
/**
|
|
@@ -1961,6 +1962,9 @@ sap.ui.define([
|
|
|
1961
1962
|
throw new Error("Must not select a deleted entity: " + this);
|
|
1962
1963
|
}
|
|
1963
1964
|
this.bSelected = bSelected;
|
|
1965
|
+
if (this.oBinding) {
|
|
1966
|
+
this.oBinding.onKeepAliveChanged(this); // selected contexts are effectively kept alive
|
|
1967
|
+
}
|
|
1964
1968
|
};
|
|
1965
1969
|
|
|
1966
1970
|
/**
|
|
@@ -455,17 +455,17 @@ sap.ui.define([
|
|
|
455
455
|
};
|
|
456
456
|
|
|
457
457
|
/**
|
|
458
|
-
* Hook method for {@link #
|
|
459
|
-
* binding.
|
|
458
|
+
* Hook method for {@link #fetchOrGetQueryOptionsForOwnCache} to determine the query options for
|
|
459
|
+
* this binding.
|
|
460
460
|
*
|
|
461
461
|
* @param {sap.ui.model.Context} [oContext]
|
|
462
462
|
* The context instance to be used for a relative binding
|
|
463
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
464
|
-
*
|
|
463
|
+
* @returns {object|undefined|sap.ui.base.SyncPromise}
|
|
464
|
+
* The binding's query options (if any) or a promise resolving with them
|
|
465
465
|
*
|
|
466
466
|
* @abstract
|
|
467
467
|
* @function
|
|
468
|
-
* @name sap.ui.model.odata.v4.ODataBinding#
|
|
468
|
+
* @name sap.ui.model.odata.v4.ODataBinding#doFetchOrGetQueryOptions
|
|
469
469
|
* @private
|
|
470
470
|
*/
|
|
471
471
|
|
|
@@ -522,14 +522,16 @@ sap.ui.define([
|
|
|
522
522
|
}
|
|
523
523
|
|
|
524
524
|
aPromises = [
|
|
525
|
-
this.
|
|
525
|
+
this.fetchOrGetQueryOptionsForOwnCache(oContext, bIgnoreParentCache),
|
|
526
526
|
this.oModel.oRequestor.ready()
|
|
527
527
|
];
|
|
528
528
|
this.mCacheQueryOptions = undefined;
|
|
529
529
|
this.oCachePromise = SyncPromise.all(aPromises).then(function (aResult) {
|
|
530
530
|
var mQueryOptions = aResult[0].mQueryOptions;
|
|
531
531
|
|
|
532
|
-
|
|
532
|
+
if (aResult[0].sReducedPath) {
|
|
533
|
+
that.sReducedPath = aResult[0].sReducedPath;
|
|
534
|
+
}
|
|
533
535
|
|
|
534
536
|
// If there are mQueryOptions, the binding must create a cache. Do not create a cache
|
|
535
537
|
// for a virtual context or if below a transient context
|
|
@@ -568,51 +570,79 @@ sap.ui.define([
|
|
|
568
570
|
* @param {boolean} [bIgnoreParentCache]
|
|
569
571
|
* Whether the query options of the parent cache shall be ignored and own query options are
|
|
570
572
|
* determined (see {@link #fetchCache})
|
|
571
|
-
* @returns {sap.ui.base.SyncPromise}
|
|
572
|
-
*
|
|
573
|
+
* @returns {object|sap.ui.base.SyncPromise}
|
|
574
|
+
* An object having two properties (or a promise resolving with it):
|
|
573
575
|
* {object} mQueryOptions - The query options to create the cache for this binding or
|
|
574
576
|
* <code>undefined</code> if no cache is to be created
|
|
575
577
|
* {string} sReducedPath - The binding's absolute, reduced path in the cache hierarchy
|
|
576
578
|
*
|
|
577
579
|
* @private
|
|
578
580
|
*/
|
|
579
|
-
ODataBinding.prototype.
|
|
581
|
+
ODataBinding.prototype.fetchOrGetQueryOptionsForOwnCache = function (oContext,
|
|
582
|
+
bIgnoreParentCache) {
|
|
580
583
|
var bHasNonSystemQueryOptions,
|
|
581
|
-
|
|
584
|
+
vQueryOptions, // {object|undefined|sap.ui.base.SyncPromise}
|
|
582
585
|
sResolvedPath = this.oModel.resolve(this.sPath, oContext),
|
|
583
586
|
that = this;
|
|
584
587
|
|
|
585
588
|
/*
|
|
586
|
-
* Wraps the given query options
|
|
587
|
-
*
|
|
589
|
+
* Wraps the given query options and adds sReducedPath to create a result for
|
|
590
|
+
* #fetchOrGetQueryOptionsForOwnCache.
|
|
588
591
|
*
|
|
589
|
-
* @param {object
|
|
590
|
-
*
|
|
592
|
+
* @param {object} [mQueryOptions]
|
|
593
|
+
* Map of query options, or <code>undefined</code>
|
|
594
|
+
* @param {boolean} [bDropEmptyObject]
|
|
595
|
+
* Whether an empty query options object should be replaced by <code>undefined</code>
|
|
591
596
|
* @param {string} [sReducedPath=sResolvedPath]
|
|
592
597
|
* The reduced path
|
|
593
|
-
* @returns {
|
|
594
|
-
* A
|
|
598
|
+
* @returns {object}
|
|
599
|
+
* A result for #fetchOrGetQueryOptionsForOwnCache
|
|
595
600
|
*/
|
|
596
|
-
function
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
601
|
+
function _wrapQueryOptions(mQueryOptions, bDropEmptyObject, sReducedPath) {
|
|
602
|
+
if (bDropEmptyObject && mQueryOptions && _Helper.isEmptyObject(mQueryOptions)) {
|
|
603
|
+
mQueryOptions = undefined;
|
|
604
|
+
}
|
|
605
|
+
return {
|
|
606
|
+
mQueryOptions : mQueryOptions,
|
|
607
|
+
sReducedPath : sReducedPath || sResolvedPath
|
|
608
|
+
};
|
|
609
|
+
}
|
|
610
|
+
|
|
611
|
+
/*
|
|
612
|
+
* Waits for <code>vQueryOptions</code> (if needed) and then creates a result for
|
|
613
|
+
* #fetchOrGetQueryOptionsForOwnCache.
|
|
614
|
+
*
|
|
615
|
+
* @param {boolean} [bDropEmptyObject]
|
|
616
|
+
* Whether an empty query options object should be replaced by <code>undefined</code>
|
|
617
|
+
* @param {string} [sReducedPath=sResolvedPath]
|
|
618
|
+
* The reduced path
|
|
619
|
+
* @returns {object|sap.ui.base.SyncPromise}
|
|
620
|
+
* A result for #fetchOrGetQueryOptionsForOwnCache
|
|
621
|
+
*/
|
|
622
|
+
function wrapQueryOptions(bDropEmptyObject, sReducedPath) {
|
|
623
|
+
if (vQueryOptions instanceof SyncPromise) {
|
|
624
|
+
if (vQueryOptions.isPending()) {
|
|
625
|
+
return vQueryOptions.then(function (mQueryOptions) {
|
|
626
|
+
return _wrapQueryOptions(mQueryOptions, bDropEmptyObject, sReducedPath);
|
|
627
|
+
});
|
|
628
|
+
}
|
|
629
|
+
vQueryOptions = vQueryOptions.getResult();
|
|
630
|
+
}
|
|
631
|
+
|
|
632
|
+
return _wrapQueryOptions(vQueryOptions, bDropEmptyObject, sReducedPath);
|
|
603
633
|
}
|
|
604
634
|
|
|
605
635
|
if (this.oOperation // operation binding manages its cache on its own
|
|
606
636
|
|| !sResolvedPath // unresolved binding
|
|
607
637
|
|| this.isMeta()) {
|
|
608
|
-
return
|
|
638
|
+
return _wrapQueryOptions();
|
|
609
639
|
}
|
|
610
640
|
|
|
611
641
|
// auto-$expand/$select and binding is a parent binding, so that it needs to wait until all
|
|
612
642
|
// its child bindings know via the corresponding promise in this.aChildCanUseCachePromises
|
|
613
643
|
// if they can use the parent binding's cache
|
|
614
644
|
// With $$aggregation, no auto-$expand/$select is needed
|
|
615
|
-
|
|
645
|
+
vQueryOptions = this.doFetchOrGetQueryOptions(oContext);
|
|
616
646
|
if (this.oModel.bAutoExpandSelect && this.aChildCanUseCachePromises
|
|
617
647
|
&& !_Helper.isDataAggregation(this.mParameters)) {
|
|
618
648
|
// For auto-$expand/$select, wait for query options of dependent bindings:
|
|
@@ -620,8 +650,8 @@ sap.ui.define([
|
|
|
620
650
|
// query options promise to this binding via fetchIfChildCanUseCache.
|
|
621
651
|
// The aggregated query options of this binding and its dependent bindings are available
|
|
622
652
|
// in that.mAggregatedQueryOptions once all these promises are fulfilled.
|
|
623
|
-
|
|
624
|
-
|
|
653
|
+
vQueryOptions = SyncPromise.all([
|
|
654
|
+
vQueryOptions,
|
|
625
655
|
Promise.resolve().then(function () {
|
|
626
656
|
return SyncPromise.all(that.aChildCanUseCachePromises);
|
|
627
657
|
})
|
|
@@ -635,7 +665,7 @@ sap.ui.define([
|
|
|
635
665
|
// parent cache is ignored or (quasi-)absolute binding
|
|
636
666
|
if (bIgnoreParentCache || !this.bRelative || !oContext.fetchValue) {
|
|
637
667
|
// the binding shall create its own cache
|
|
638
|
-
return wrapQueryOptions(
|
|
668
|
+
return wrapQueryOptions();
|
|
639
669
|
}
|
|
640
670
|
|
|
641
671
|
// auto-$expand/$select: Use parent binding's cache if possible
|
|
@@ -645,28 +675,27 @@ sap.ui.define([
|
|
|
645
675
|
return sKey[0] !== "$" || sKey[1] === "$";
|
|
646
676
|
});
|
|
647
677
|
if (bHasNonSystemQueryOptions) {
|
|
648
|
-
return wrapQueryOptions(
|
|
678
|
+
return wrapQueryOptions();
|
|
649
679
|
}
|
|
650
680
|
return oContext.getBinding()
|
|
651
|
-
.fetchIfChildCanUseCache(oContext, that.sPath,
|
|
681
|
+
.fetchIfChildCanUseCache(oContext, that.sPath, vQueryOptions,
|
|
652
682
|
!this.mParameters) // duck typing for property binding
|
|
653
683
|
.then(function (sReducedPath) {
|
|
654
|
-
|
|
655
|
-
|
|
684
|
+
if (sReducedPath) {
|
|
685
|
+
vQueryOptions = undefined;
|
|
686
|
+
}
|
|
687
|
+
return wrapQueryOptions(false, sReducedPath);
|
|
656
688
|
});
|
|
657
689
|
}
|
|
658
690
|
|
|
659
691
|
// relative list or context binding with parameters which are not query options
|
|
660
692
|
// (such as $$groupId)
|
|
661
|
-
if (this.mParameters &&
|
|
662
|
-
return wrapQueryOptions(
|
|
693
|
+
if (this.mParameters && !_Helper.isEmptyObject(this.mParameters)) {
|
|
694
|
+
return wrapQueryOptions();
|
|
663
695
|
}
|
|
664
696
|
|
|
665
697
|
// relative binding which may have query options from UI5 filter or sorter objects
|
|
666
|
-
return
|
|
667
|
-
return wrapQueryOptions(
|
|
668
|
-
Object.keys(mQueryOptions).length ? mQueryOptions : undefined);
|
|
669
|
-
});
|
|
698
|
+
return wrapQueryOptions(true);
|
|
670
699
|
};
|
|
671
700
|
|
|
672
701
|
/**
|