@openui5/sap.ui.core 1.108.0 → 1.109.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/THIRDPARTY.txt +1 -1
- 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.storage.js +3 -3
- package/src/sap/base/Log.js +125 -84
- package/src/sap/base/i18n/ResourceBundle.js +41 -11
- package/src/sap/base/util/includes.js +1 -1
- 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/base/util/values.js +2 -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 +1 -1
- package/src/sap/ui/base/Interface.js +1 -1
- package/src/sap/ui/base/ManagedObject.js +1 -1
- package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
- package/src/sap/ui/base/ManagedObjectObserver.js +33 -11
- 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 +3 -3
- package/src/sap/ui/core/BusyIndicator.js +1 -1
- package/src/sap/ui/core/Component.js +1 -1
- package/src/sap/ui/core/ComponentContainer.js +1 -1
- package/src/sap/ui/core/ComponentMetadata.js +1 -1
- package/src/sap/ui/core/ComponentSupport.js +1 -1
- package/src/sap/ui/core/Configuration.js +1 -1
- package/src/sap/ui/core/Control.js +1 -1
- package/src/sap/ui/core/Core.js +4 -4
- 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 +1 -1
- 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 +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 +1 -1
- 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/Locale.js +1 -1
- package/src/sap/ui/core/LocaleData.js +133 -1
- 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 +82 -50
- package/src/sap/ui/core/Renderer.js +1 -1
- package/src/sap/ui/core/Rendering.js +29 -9
- 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/Title.js +1 -1
- package/src/sap/ui/core/TooltipBase.js +1 -1
- package/src/sap/ui/core/UIArea.js +7 -5
- 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 -3
- package/src/sap/ui/core/cldr/ar.json +330 -0
- package/src/sap/ui/core/cldr/ar_EG.json +330 -0
- package/src/sap/ui/core/cldr/ar_SA.json +330 -0
- package/src/sap/ui/core/cldr/bg.json +295 -0
- package/src/sap/ui/core/cldr/ca.json +329 -0
- package/src/sap/ui/core/cldr/cs.json +328 -0
- package/src/sap/ui/core/cldr/cy.json +260 -0
- package/src/sap/ui/core/cldr/da.json +295 -0
- package/src/sap/ui/core/cldr/de.json +329 -0
- package/src/sap/ui/core/cldr/de_AT.json +329 -0
- package/src/sap/ui/core/cldr/de_CH.json +329 -0
- package/src/sap/ui/core/cldr/el.json +228 -0
- package/src/sap/ui/core/cldr/el_CY.json +228 -0
- package/src/sap/ui/core/cldr/en.json +294 -0
- package/src/sap/ui/core/cldr/en_AU.json +294 -0
- package/src/sap/ui/core/cldr/en_GB.json +294 -0
- package/src/sap/ui/core/cldr/en_HK.json +294 -0
- package/src/sap/ui/core/cldr/en_IE.json +294 -0
- package/src/sap/ui/core/cldr/en_IN.json +294 -0
- package/src/sap/ui/core/cldr/en_NZ.json +294 -0
- package/src/sap/ui/core/cldr/en_PG.json +294 -0
- package/src/sap/ui/core/cldr/en_SG.json +294 -0
- package/src/sap/ui/core/cldr/en_ZA.json +294 -0
- package/src/sap/ui/core/cldr/es.json +261 -0
- package/src/sap/ui/core/cldr/es_AR.json +261 -0
- package/src/sap/ui/core/cldr/es_BO.json +261 -0
- package/src/sap/ui/core/cldr/es_CL.json +261 -0
- package/src/sap/ui/core/cldr/es_CO.json +261 -0
- package/src/sap/ui/core/cldr/es_MX.json +261 -0
- package/src/sap/ui/core/cldr/es_PE.json +261 -0
- package/src/sap/ui/core/cldr/es_UY.json +261 -0
- package/src/sap/ui/core/cldr/es_VE.json +261 -0
- package/src/sap/ui/core/cldr/et.json +294 -0
- package/src/sap/ui/core/cldr/fa.json +296 -0
- package/src/sap/ui/core/cldr/fi.json +328 -0
- package/src/sap/ui/core/cldr/fr.json +294 -0
- package/src/sap/ui/core/cldr/fr_BE.json +294 -0
- package/src/sap/ui/core/cldr/fr_CA.json +294 -0
- package/src/sap/ui/core/cldr/fr_CH.json +294 -0
- package/src/sap/ui/core/cldr/fr_LU.json +294 -0
- package/src/sap/ui/core/cldr/he.json +329 -0
- package/src/sap/ui/core/cldr/hi.json +261 -0
- package/src/sap/ui/core/cldr/hr.json +294 -0
- package/src/sap/ui/core/cldr/hu.json +362 -0
- package/src/sap/ui/core/cldr/id.json +294 -0
- package/src/sap/ui/core/cldr/it.json +294 -0
- package/src/sap/ui/core/cldr/it_CH.json +294 -0
- package/src/sap/ui/core/cldr/ja.json +328 -0
- package/src/sap/ui/core/cldr/kk.json +294 -0
- package/src/sap/ui/core/cldr/ko.json +328 -0
- package/src/sap/ui/core/cldr/lt.json +294 -0
- package/src/sap/ui/core/cldr/lv.json +294 -0
- package/src/sap/ui/core/cldr/ms.json +262 -0
- package/src/sap/ui/core/cldr/nb.json +295 -0
- package/src/sap/ui/core/cldr/nl.json +261 -0
- package/src/sap/ui/core/cldr/nl_BE.json +261 -0
- package/src/sap/ui/core/cldr/pl.json +328 -0
- package/src/sap/ui/core/cldr/pt.json +294 -0
- package/src/sap/ui/core/cldr/pt_PT.json +294 -0
- package/src/sap/ui/core/cldr/ro.json +294 -0
- package/src/sap/ui/core/cldr/ru.json +294 -0
- package/src/sap/ui/core/cldr/ru_UA.json +294 -0
- package/src/sap/ui/core/cldr/sk.json +328 -0
- package/src/sap/ui/core/cldr/sl.json +328 -0
- package/src/sap/ui/core/cldr/sr.json +294 -0
- package/src/sap/ui/core/cldr/sr_Latn.json +294 -0
- package/src/sap/ui/core/cldr/sv.json +295 -0
- package/src/sap/ui/core/cldr/th.json +362 -0
- package/src/sap/ui/core/cldr/tr.json +362 -0
- package/src/sap/ui/core/cldr/uk.json +294 -0
- package/src/sap/ui/core/cldr/vi.json +294 -0
- package/src/sap/ui/core/cldr/zh_CN.json +329 -0
- package/src/sap/ui/core/cldr/zh_HK.json +329 -0
- package/src/sap/ui/core/cldr/zh_SG.json +329 -0
- package/src/sap/ui/core/cldr/zh_TW.json +329 -0
- package/src/sap/ui/core/date/Japanese.js +30 -0
- package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
- package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
- package/src/sap/ui/core/dnd/DragAndDrop.js +2 -2
- 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 +122 -2
- package/src/sap/ui/core/format/NumberFormat.js +111 -70
- package/src/sap/ui/core/format/TimezoneUtil.js +2 -2
- 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/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 +3 -3
- package/src/sap/ui/core/mvc/ViewType.js +4 -0
- 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 +1 -1
- package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
- package/src/sap/ui/core/postmessage/Bus.js +12 -17
- package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -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/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/themes/base/Icon.less +17 -4
- package/src/sap/ui/core/themes/base/LocalBusyIndicator.less +1 -1
- package/src/sap/ui/core/themes/base/base.less +599 -90
- package/src/sap/ui/core/themes/base/global.less +64 -0
- package/src/sap/ui/core/themes/sap_hcb/global.less +65 -0
- 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/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/XmlTreeModifier.js +1 -3
- 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/model/ClientModel.js +1 -1
- 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/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +1 -1
- 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/controlhelper/TreeBindingProxy.js +11 -3
- 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 +1 -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 +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/v2/Context.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataListBinding.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataModel.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +3 -4
- package/src/sap/ui/model/odata/v4/Context.js +82 -29
- package/src/sap/ui/model/odata/v4/ODataBinding.js +3 -0
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +3 -2
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +77 -23
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataModel.js +2 -2
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +334 -142
- package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +109 -16
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +82 -42
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +26 -0
- 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/QUnitUtils.js +14 -2
- 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/OpaExtension.js +1 -1
- package/src/sap/ui/test/OpaPlugin.js +6 -4
- package/src/sap/ui/test/PageObjectFactory.js +11 -9
- package/src/sap/ui/test/RecordReplay.js +1 -1
- package/src/sap/ui/test/_OpaLogger.js +1 -1
- package/src/sap/ui/test/autowaiter/_promiseWaiter.js +4 -1
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/util/Mobile.js +17 -18
- package/src/sap/ui/util/Storage.js +90 -63
|
@@ -57,7 +57,7 @@ sap.ui.define([
|
|
|
57
57
|
* @mixes sap.ui.model.odata.v4.ODataParentBinding
|
|
58
58
|
* @public
|
|
59
59
|
* @since 1.37.0
|
|
60
|
-
* @version 1.
|
|
60
|
+
* @version 1.109.0
|
|
61
61
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getGroupId as #getGroupId
|
|
62
62
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getRootBinding as #getRootBinding
|
|
63
63
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getUpdateGroupId as #getUpdateGroupId
|
|
@@ -353,8 +353,7 @@ sap.ui.define([
|
|
|
353
353
|
}
|
|
354
354
|
oContext.resetKeepAlive();
|
|
355
355
|
oContext.iIndex = Context.VIRTUAL; // prevent further cache access via this context
|
|
356
|
-
that.
|
|
357
|
-
that.destroyPreviousContexts.bind(that, [oContext.getPath()]));
|
|
356
|
+
that.destroyPreviousContextsLater([oContext.getPath()]);
|
|
358
357
|
}, function (oError) {
|
|
359
358
|
that.iDeletedContexts -= 1;
|
|
360
359
|
if (bReset) {
|
|
@@ -505,10 +504,15 @@ sap.ui.define([
|
|
|
505
504
|
|
|
506
505
|
/**
|
|
507
506
|
* The 'createActivate' event is fired when a property is changed on a context in an 'inactive'
|
|
508
|
-
* state (see {@link #create}). The context then changes its state to 'transient'.
|
|
507
|
+
* state (see {@link #create}). The context then changes its state to 'transient'. Since
|
|
508
|
+
* 1.109.0, this default behavior can be prevented by calling
|
|
509
|
+
* {@link sap.ui.base.Event#preventDefault}. The context will then remain in the 'inactive'
|
|
510
|
+
* state.
|
|
511
|
+
*
|
|
509
512
|
*
|
|
510
513
|
* @param {sap.ui.base.Event} oEvent The event object
|
|
511
514
|
* @param {sap.ui.model.odata.v4.ODataListBinding} oEvent.getSource() This binding
|
|
515
|
+
* @param {sap.ui.model.odata.v4.Context} oEvent.getParameters().context The affected context
|
|
512
516
|
*
|
|
513
517
|
* @event sap.ui.model.odata.v4.ODataListBinding#createActivate
|
|
514
518
|
* @public
|
|
@@ -659,7 +663,8 @@ sap.ui.define([
|
|
|
659
663
|
* {@link #changeParameters} leads to {@link sap.ui.model.ChangeReason.Filter Filter} if one
|
|
660
664
|
* of the parameters '$filter' and '$search' is changed, otherwise it leads to
|
|
661
665
|
* {@link sap.ui.model.ChangeReason.Sort Sort} if the parameter '$orderby' is
|
|
662
|
-
* changed; in other cases, it leads to {@link sap.ui.model.ChangeReason.Change Change}
|
|
666
|
+
* changed; in other cases, it leads to {@link sap.ui.model.ChangeReason.Change Change}.
|
|
667
|
+
* <br>
|
|
663
668
|
* If APIs that would normally fire change events have been called while the binding is
|
|
664
669
|
* suspended, {@link #resume} leads to the "strongest" change reason in the order
|
|
665
670
|
* {@link sap.ui.model.ChangeReason.Filter Filter},
|
|
@@ -820,7 +825,7 @@ sap.ui.define([
|
|
|
820
825
|
* Create an inactive context. Such a context will only be sent to the server after the first
|
|
821
826
|
* property update. From then on it behaves like any other created context.
|
|
822
827
|
* Supported since 1.97.0
|
|
823
|
-
* <
|
|
828
|
+
* <br>
|
|
824
829
|
* Since 1.98.0, when the first property updates happens, the context is no longer
|
|
825
830
|
* {@link sap.ui.model.odata.v4.Context#isInactive inactive} and the
|
|
826
831
|
* {@link sap.ui.model.odata.v4.ODataListBinding#event:createActivate createActivate} event
|
|
@@ -886,7 +891,8 @@ sap.ui.define([
|
|
|
886
891
|
// only for createInCache
|
|
887
892
|
oGroupLock = this.lockGroup(sGroupId, true, true, function () {
|
|
888
893
|
if (!that.aContexts.includes(oContext)) { // #setContext changed the parent context
|
|
889
|
-
oContext.
|
|
894
|
+
that.mPreviousContextsByPath[oContext.getPath()] = oContext;
|
|
895
|
+
that.destroyPreviousContextsLater([oContext.getPath()]);
|
|
890
896
|
return;
|
|
891
897
|
}
|
|
892
898
|
|
|
@@ -984,7 +990,6 @@ sap.ui.define([
|
|
|
984
990
|
oModel = this.oModel,
|
|
985
991
|
sPath = this.getResolvedPath(),
|
|
986
992
|
sPredicate,
|
|
987
|
-
aPreviousPaths,
|
|
988
993
|
bStartBeyondRange = iStart > this.aContexts.length,
|
|
989
994
|
i,
|
|
990
995
|
that = this;
|
|
@@ -1032,10 +1037,7 @@ sap.ui.define([
|
|
|
1032
1037
|
}
|
|
1033
1038
|
}
|
|
1034
1039
|
// destroy previous contexts which are not reused or kept-alive
|
|
1035
|
-
|
|
1036
|
-
if (aPreviousPaths.length) {
|
|
1037
|
-
oModel.addPrerenderingTask(this.destroyPreviousContexts.bind(this, aPreviousPaths));
|
|
1038
|
-
}
|
|
1040
|
+
this.destroyPreviousContextsLater(Object.keys(this.mPreviousContextsByPath));
|
|
1039
1041
|
if (iCount !== undefined) { // server count is available or "non-empty short read"
|
|
1040
1042
|
this.bLengthFinal = true;
|
|
1041
1043
|
this.iMaxLength = iCount - this.iActiveContexts;
|
|
@@ -1121,7 +1123,7 @@ sap.ui.define([
|
|
|
1121
1123
|
* Removes and destroys contexts from mPreviousContextsByPath.
|
|
1122
1124
|
*
|
|
1123
1125
|
* @param {string[]} [aPathsToDelete]
|
|
1124
|
-
* If given, only contexts with paths in this list except kept-alive and
|
|
1126
|
+
* If given, only contexts with paths in this list except kept-alive and pending deletes are
|
|
1125
1127
|
* removed and destroyed (transient contexts are removed only); otherwise all contexts in the
|
|
1126
1128
|
* list are removed and destroyed
|
|
1127
1129
|
*
|
|
@@ -1135,7 +1137,8 @@ sap.ui.define([
|
|
|
1135
1137
|
var oContext = mPreviousContextsByPath[sPath];
|
|
1136
1138
|
|
|
1137
1139
|
if (oContext) {
|
|
1138
|
-
if (aPathsToDelete && (oContext.isKeepAlive()
|
|
1140
|
+
if (aPathsToDelete && (oContext.isKeepAlive()
|
|
1141
|
+
|| oContext.oDeletePromise && oContext.oDeletePromise.isPending())) {
|
|
1139
1142
|
oContext.iIndex = undefined;
|
|
1140
1143
|
} else {
|
|
1141
1144
|
if (!oContext.isTransient()) {
|
|
@@ -1148,6 +1151,23 @@ sap.ui.define([
|
|
|
1148
1151
|
}
|
|
1149
1152
|
};
|
|
1150
1153
|
|
|
1154
|
+
/**
|
|
1155
|
+
* Removes and destroys the contexts with the given paths from mPreviousContextsByPaths in a
|
|
1156
|
+
* prerendering task.
|
|
1157
|
+
*
|
|
1158
|
+
* @param {string[]} aPathsToDelete
|
|
1159
|
+
* Only contexts with paths in this list except kept-alive and pending deletes are removed and
|
|
1160
|
+
* destroyed (transient contexts are removed only)
|
|
1161
|
+
*
|
|
1162
|
+
* @private
|
|
1163
|
+
*/
|
|
1164
|
+
ODataListBinding.prototype.destroyPreviousContextsLater = function (aPathsToDelete) {
|
|
1165
|
+
if (aPathsToDelete.length) {
|
|
1166
|
+
this.oModel.addPrerenderingTask(
|
|
1167
|
+
this.destroyPreviousContexts.bind(this, aPathsToDelete));
|
|
1168
|
+
}
|
|
1169
|
+
};
|
|
1170
|
+
|
|
1151
1171
|
/**
|
|
1152
1172
|
* @override
|
|
1153
1173
|
* @see sap.ui.model.odata.v4.ODataBinding#doCreateCache
|
|
@@ -1813,14 +1833,37 @@ sap.ui.define([
|
|
|
1813
1833
|
/**
|
|
1814
1834
|
* Fires the 'createActivate' event.
|
|
1815
1835
|
*
|
|
1816
|
-
* @param {sap.ui.model.odata.v4.Context}
|
|
1836
|
+
* @param {sap.ui.model.odata.v4.Context} oContext
|
|
1817
1837
|
* The context being activated
|
|
1838
|
+
* @returns {boolean}
|
|
1839
|
+
* Whether the context should become active
|
|
1818
1840
|
*
|
|
1819
1841
|
* @private
|
|
1820
1842
|
*/
|
|
1821
|
-
ODataListBinding.prototype.fireCreateActivate = function (
|
|
1822
|
-
this.
|
|
1823
|
-
|
|
1843
|
+
ODataListBinding.prototype.fireCreateActivate = function (oContext) {
|
|
1844
|
+
if (this.fireEvent("createActivate", {context : oContext}, true)) {
|
|
1845
|
+
this.iActiveContexts += 1;
|
|
1846
|
+
|
|
1847
|
+
return true;
|
|
1848
|
+
}
|
|
1849
|
+
|
|
1850
|
+
return false;
|
|
1851
|
+
};
|
|
1852
|
+
|
|
1853
|
+
/**
|
|
1854
|
+
* Returns the current object holding the information needed for data aggregation, see
|
|
1855
|
+
* {@link #setAggregation}.
|
|
1856
|
+
*
|
|
1857
|
+
* @returns {object}
|
|
1858
|
+
* The current data aggregation object, incl. some default values
|
|
1859
|
+
*
|
|
1860
|
+
* @public
|
|
1861
|
+
* @since 1.109.0
|
|
1862
|
+
*/
|
|
1863
|
+
ODataListBinding.prototype.getAggregation = function () {
|
|
1864
|
+
return _Helper.clone(this.mParameters.$$aggregation, function (sKey, vValue) {
|
|
1865
|
+
return sKey[0] === "$" ? undefined : vValue;
|
|
1866
|
+
});
|
|
1824
1867
|
};
|
|
1825
1868
|
|
|
1826
1869
|
/**
|
|
@@ -3230,7 +3273,7 @@ sap.ui.define([
|
|
|
3230
3273
|
});
|
|
3231
3274
|
}
|
|
3232
3275
|
|
|
3233
|
-
if (this.mParameters.$$aggregation) {
|
|
3276
|
+
if (this.mParameters.$$aggregation && !this.mParameters.$$aggregation.hierarchyQualifier) {
|
|
3234
3277
|
if (bSingle) {
|
|
3235
3278
|
throw new Error(
|
|
3236
3279
|
"Must not request side effects for a context of a binding with $$aggregation");
|
|
@@ -3474,12 +3517,14 @@ sap.ui.define([
|
|
|
3474
3517
|
* <a href="https://docs.oasis-open.org/odata/odata-data-aggregation-ext/v4.0/">OData
|
|
3475
3518
|
* Extension for Data Aggregation Version 4.0</a>. Since 1.76.0, <code>undefined</code> can be
|
|
3476
3519
|
* used to remove the data aggregation object, which allows to set <code>$apply</code>
|
|
3477
|
-
* explicitly afterwards. <code>null</code> is not supported
|
|
3520
|
+
* explicitly afterwards. <code>null</code> is not supported.
|
|
3521
|
+
* <br>
|
|
3478
3522
|
* Since 1.89.0, the deprecated property <code>"grandTotal like 1.84" : true</code> can be
|
|
3479
3523
|
* used to turn on the handling of grand totals like in 1.84.0, using aggregates of aggregates
|
|
3480
3524
|
* and thus allowing to filter by aggregated properties while grand totals are needed. Beware
|
|
3481
3525
|
* that methods like "average" or "countdistinct" are not compatible with this approach, and
|
|
3482
|
-
* it cannot be combined with group levels
|
|
3526
|
+
* it cannot be combined with group levels.
|
|
3527
|
+
* <br>
|
|
3483
3528
|
* Since 1.105.0, either a recursive hierarchy or pure data aggregation is supported, but no
|
|
3484
3529
|
* mix; <code>hierarchyQualifier</code> is the leading property that decides between those two
|
|
3485
3530
|
* use cases - this is an <b>experimental API</b> and is only supported if the model uses the
|
|
@@ -3512,8 +3557,10 @@ sap.ui.define([
|
|
|
3512
3557
|
* suggestion: <code>CASE WHEN MIN(Unit) = MAX(Unit) THEN MIN(Unit) END</code>)
|
|
3513
3558
|
* </ul>
|
|
3514
3559
|
* @param {number} [oAggregation.expandTo=1]
|
|
3515
|
-
* The number
|
|
3516
|
-
*
|
|
3560
|
+
* The number (as a positive integer) of different levels initially available without calling
|
|
3561
|
+
* {@link sap.ui.model.odata.v4.Context#expand} (@experimental as of version 1.105.0),
|
|
3562
|
+
* supported only if a <code>hierarchyQualifier</code> is given. Root nodes are on the first
|
|
3563
|
+
* level. By default, only root nodes are available; they are not yet expanded.
|
|
3517
3564
|
* @param {boolean} [oAggregation.grandTotalAtBottomOnly]
|
|
3518
3565
|
* Tells whether the grand totals for aggregatable properties are displayed at the bottom only
|
|
3519
3566
|
* (since 1.86.0); <code>true</code> for bottom only, <code>false</code> for top and bottom,
|
|
@@ -3573,6 +3620,7 @@ sap.ui.define([
|
|
|
3573
3620
|
* <li> a recursive hierarchy is requested, but the model does not use the
|
|
3574
3621
|
* <code>autoExpandSelect</code> parameter.
|
|
3575
3622
|
* </ul>
|
|
3623
|
+
*
|
|
3576
3624
|
* @example <caption>First group level is product category including subtotals for the net
|
|
3577
3625
|
* amount in display currency. On leaf level, transaction currency is used as an additional
|
|
3578
3626
|
* dimension and the net amount is averaged.</caption>
|
|
@@ -3593,6 +3641,7 @@ sap.ui.define([
|
|
|
3593
3641
|
* groupLevels : ['ProductCategory']
|
|
3594
3642
|
* });
|
|
3595
3643
|
* @public
|
|
3644
|
+
* @see #getAggregation
|
|
3596
3645
|
* @since 1.55.0
|
|
3597
3646
|
*/
|
|
3598
3647
|
ODataListBinding.prototype.setAggregation = function (oAggregation) {
|
|
@@ -3690,6 +3739,11 @@ sap.ui.define([
|
|
|
3690
3739
|
* request. Since 1.97.0, if sorters are unchanged, no request is sent, regardless of pending
|
|
3691
3740
|
* changes.
|
|
3692
3741
|
*
|
|
3742
|
+
* <b>Note:</b> To allow proper detection whether sorters are unchanged, care must be taken if a
|
|
3743
|
+
* sorter uses a function (for example via the <code>vGroup</code> parameter): it must be the
|
|
3744
|
+
* exact same function instance which was given before, and not a newly created one, for example
|
|
3745
|
+
* because <code>Function.prototype.bind</code> is called repeatedly.
|
|
3746
|
+
*
|
|
3693
3747
|
* If there are pending changes that cannot be ignored, an error is thrown. Use
|
|
3694
3748
|
* {@link #hasPendingChanges} to check if there are such pending changes. If there are, call
|
|
3695
3749
|
* {@link sap.ui.model.odata.v4.ODataModel#submitBatch} to submit the changes or
|
|
@@ -218,7 +218,7 @@ sap.ui.define([
|
|
|
218
218
|
* @extends sap.ui.model.Model
|
|
219
219
|
* @public
|
|
220
220
|
* @since 1.37.0
|
|
221
|
-
* @version 1.
|
|
221
|
+
* @version 1.109.0
|
|
222
222
|
*/
|
|
223
223
|
ODataModel = Model.extend("sap.ui.model.odata.v4.ODataModel",
|
|
224
224
|
/** @lends sap.ui.model.odata.v4.ODataModel.prototype */{
|
|
@@ -2489,7 +2489,7 @@ sap.ui.define([
|
|
|
2489
2489
|
* given group ID are running.
|
|
2490
2490
|
*
|
|
2491
2491
|
* @public
|
|
2492
|
-
* @see sap.ui.model.odata.v4.ODataModel#constructor
|
|
2492
|
+
* @see sap.ui.model.odata.v4.ODataModel#constructor
|
|
2493
2493
|
* @since 1.39.0
|
|
2494
2494
|
*/
|
|
2495
2495
|
ODataModel.prototype.resetChanges = function (sGroupId) {
|
|
@@ -42,7 +42,7 @@ sap.ui.define([
|
|
|
42
42
|
* @mixes sap.ui.model.odata.v4.ODataBinding
|
|
43
43
|
* @public
|
|
44
44
|
* @since 1.37.0
|
|
45
|
-
* @version 1.
|
|
45
|
+
* @version 1.109.0
|
|
46
46
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getGroupId as #getGroupId
|
|
47
47
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getRootBinding as #getRootBinding
|
|
48
48
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getUpdateGroupId as #getUpdateGroupId
|