@openui5/sap.ui.core 1.114.0 → 1.114.2

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.
Files changed (250) hide show
  1. package/package.json +1 -1
  2. package/src/jquery.sap.global.js +1 -1
  3. package/src/jquery.sap.properties.js +1 -1
  4. package/src/jquery.sap.resources.js +1 -1
  5. package/src/jquery.sap.script.js +1 -1
  6. package/src/jquery.sap.storage.js +3 -3
  7. package/src/sap/base/config.js +1 -1
  8. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  9. package/src/sap/base/util/restricted/_castArray.js +1 -1
  10. package/src/sap/base/util/restricted/_compact.js +1 -1
  11. package/src/sap/base/util/restricted/_curry.js +1 -1
  12. package/src/sap/base/util/restricted/_debounce.js +1 -1
  13. package/src/sap/base/util/restricted/_difference.js +1 -1
  14. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  15. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  16. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  17. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  18. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  19. package/src/sap/base/util/restricted/_flatten.js +1 -1
  20. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  21. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  22. package/src/sap/base/util/restricted/_intersection.js +1 -1
  23. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  24. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  25. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  26. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  27. package/src/sap/base/util/restricted/_isNil.js +1 -1
  28. package/src/sap/base/util/restricted/_max.js +1 -1
  29. package/src/sap/base/util/restricted/_merge.js +1 -1
  30. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  31. package/src/sap/base/util/restricted/_min.js +1 -1
  32. package/src/sap/base/util/restricted/_omit.js +1 -1
  33. package/src/sap/base/util/restricted/_pick.js +1 -1
  34. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  35. package/src/sap/base/util/restricted/_throttle.js +1 -1
  36. package/src/sap/base/util/restricted/_toArray.js +1 -1
  37. package/src/sap/base/util/restricted/_union.js +1 -1
  38. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  39. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  40. package/src/sap/base/util/restricted/_uniq.js +1 -1
  41. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  42. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  43. package/src/sap/base/util/restricted/_without.js +1 -1
  44. package/src/sap/base/util/restricted/_xor.js +1 -1
  45. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  46. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  47. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  48. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  49. package/src/sap/ui/Device.js +3 -3
  50. package/src/sap/ui/Global.js +4 -4
  51. package/src/sap/ui/base/Event.js +1 -1
  52. package/src/sap/ui/base/EventProvider.js +1 -1
  53. package/src/sap/ui/base/Interface.js +1 -1
  54. package/src/sap/ui/base/ManagedObject.js +1 -1
  55. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  56. package/src/sap/ui/base/Metadata.js +1 -1
  57. package/src/sap/ui/base/Object.js +1 -1
  58. package/src/sap/ui/base/ObjectPool.js +1 -1
  59. package/src/sap/ui/core/.library +1 -1
  60. package/src/sap/ui/core/BusyIndicator.js +1 -1
  61. package/src/sap/ui/core/Component.js +1 -1
  62. package/src/sap/ui/core/ComponentContainer.js +1 -1
  63. package/src/sap/ui/core/ComponentMetadata.js +1 -1
  64. package/src/sap/ui/core/ComponentSupport.js +1 -1
  65. package/src/sap/ui/core/Configuration.js +1 -1
  66. package/src/sap/ui/core/Control.js +1 -1
  67. package/src/sap/ui/core/Core.js +1 -1
  68. package/src/sap/ui/core/CustomData.js +1 -1
  69. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  70. package/src/sap/ui/core/Element.js +1 -1
  71. package/src/sap/ui/core/ElementMetadata.js +1 -1
  72. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  73. package/src/sap/ui/core/EventBus.js +1 -1
  74. package/src/sap/ui/core/Fragment.js +1 -1
  75. package/src/sap/ui/core/HTML.js +1 -1
  76. package/src/sap/ui/core/History.js +1 -1
  77. package/src/sap/ui/core/Icon.js +1 -1
  78. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  79. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  80. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  81. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  82. package/src/sap/ui/core/InvisibleText.js +1 -1
  83. package/src/sap/ui/core/Item.js +1 -1
  84. package/src/sap/ui/core/LabelEnablement.js +1 -1
  85. package/src/sap/ui/core/LayoutData.js +1 -1
  86. package/src/sap/ui/core/ListItem.js +1 -1
  87. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  88. package/src/sap/ui/core/Locale.js +1 -1
  89. package/src/sap/ui/core/LocaleData.js +1 -1
  90. package/src/sap/ui/core/Manifest.js +1 -1
  91. package/src/sap/ui/core/Message.js +1 -1
  92. package/src/sap/ui/core/RenderManager.js +1 -1
  93. package/src/sap/ui/core/Renderer.js +1 -1
  94. package/src/sap/ui/core/ResizeHandler.js +1 -1
  95. package/src/sap/ui/core/ScrollBar.js +1 -1
  96. package/src/sap/ui/core/SeparatorItem.js +1 -1
  97. package/src/sap/ui/core/Title.js +1 -1
  98. package/src/sap/ui/core/TooltipBase.js +1 -1
  99. package/src/sap/ui/core/UIArea.js +1 -1
  100. package/src/sap/ui/core/UIComponent.js +1 -1
  101. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  102. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  103. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  104. package/src/sap/ui/core/XMLComposite.js +1 -1
  105. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  106. package/src/sap/ui/core/date/UI5Date.js +1 -1
  107. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  108. package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
  109. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  110. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  111. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  112. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  113. package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
  114. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  115. package/src/sap/ui/core/library.js +3 -3
  116. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  117. package/src/sap/ui/core/message/Message.js +1 -1
  118. package/src/sap/ui/core/message/MessageManager.js +1 -1
  119. package/src/sap/ui/core/message/MessageParser.js +1 -1
  120. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  121. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  122. package/src/sap/ui/core/mvc/JSONView.js +1 -1
  123. package/src/sap/ui/core/mvc/JSView.js +1 -1
  124. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  125. package/src/sap/ui/core/mvc/View.js +1 -1
  126. package/src/sap/ui/core/mvc/XMLView.js +1 -1
  127. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  128. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  129. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  130. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  131. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  132. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  133. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  134. package/src/sap/ui/core/service/Service.js +1 -1
  135. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  136. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  137. package/src/sap/ui/core/support/Plugin.js +1 -1
  138. package/src/sap/ui/core/support/Support.js +1 -1
  139. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  140. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  141. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  142. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  143. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  144. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  145. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  146. package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
  147. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  148. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  149. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  150. package/src/sap/ui/core/tmpl/Template.js +1 -1
  151. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  152. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  153. package/src/sap/ui/core/util/Export.js +1 -1
  154. package/src/sap/ui/core/util/ExportCell.js +1 -1
  155. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  156. package/src/sap/ui/core/util/ExportRow.js +1 -1
  157. package/src/sap/ui/core/util/ExportType.js +1 -1
  158. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  159. package/src/sap/ui/core/util/File.js +1 -1
  160. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  161. package/src/sap/ui/core/util/MockServer.js +1 -1
  162. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  163. package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +3 -1
  164. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  165. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  166. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  167. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  168. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  169. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  170. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  171. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  172. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  173. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  174. package/src/sap/ui/debug/ControlTree.js +1 -1
  175. package/src/sap/ui/debug/DebugEnv.js +1 -1
  176. package/src/sap/ui/debug/PropertyList.js +1 -1
  177. package/src/sap/ui/model/ClientModel.js +1 -1
  178. package/src/sap/ui/model/CompositeDataState.js +1 -1
  179. package/src/sap/ui/model/CompositeType.js +1 -1
  180. package/src/sap/ui/model/DataState.js +1 -1
  181. package/src/sap/ui/model/MetaModel.js +1 -1
  182. package/src/sap/ui/model/Model.js +1 -1
  183. package/src/sap/ui/model/SelectionModel.js +1 -1
  184. package/src/sap/ui/model/SimpleType.js +1 -1
  185. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  186. package/src/sap/ui/model/Type.js +1 -1
  187. package/src/sap/ui/model/json/JSONModel.js +1 -1
  188. package/src/sap/ui/model/message/MessageModel.js +1 -1
  189. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  190. package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
  191. package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
  192. package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
  193. package/src/sap/ui/model/odata/ODataModel.js +1 -1
  194. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  195. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  196. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  197. package/src/sap/ui/model/odata/type/Date.js +1 -1
  198. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  199. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  200. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  201. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  202. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  203. package/src/sap/ui/model/odata/type/Double.js +1 -1
  204. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  205. package/src/sap/ui/model/odata/type/Int.js +1 -1
  206. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  207. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  208. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  209. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  210. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  211. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  212. package/src/sap/ui/model/odata/type/Single.js +1 -1
  213. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  214. package/src/sap/ui/model/odata/type/String.js +1 -1
  215. package/src/sap/ui/model/odata/type/Time.js +1 -1
  216. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  217. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  218. package/src/sap/ui/model/odata/v2/Context.js +1 -1
  219. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  220. package/src/sap/ui/model/odata/v2/ODataModel.js +1 -1
  221. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
  222. package/src/sap/ui/model/odata/v4/Context.js +3 -1
  223. package/src/sap/ui/model/odata/v4/ODataBinding.js +5 -3
  224. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +1 -1
  225. package/src/sap/ui/model/odata/v4/ODataListBinding.js +43 -9
  226. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +4 -1
  227. package/src/sap/ui/model/odata/v4/ODataModel.js +1 -1
  228. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +17 -12
  229. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +2 -0
  230. package/src/sap/ui/model/odata/v4/lib/_Cache.js +14 -0
  231. package/src/sap/ui/model/resource/ResourceModel.js +1 -1
  232. package/src/sap/ui/model/type/Boolean.js +1 -1
  233. package/src/sap/ui/model/type/Currency.js +1 -1
  234. package/src/sap/ui/model/type/Date.js +1 -1
  235. package/src/sap/ui/model/type/DateInterval.js +1 -1
  236. package/src/sap/ui/model/type/DateTime.js +1 -1
  237. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  238. package/src/sap/ui/model/type/FileSize.js +1 -1
  239. package/src/sap/ui/model/type/Float.js +1 -1
  240. package/src/sap/ui/model/type/Integer.js +1 -1
  241. package/src/sap/ui/model/type/String.js +1 -1
  242. package/src/sap/ui/model/type/Time.js +1 -1
  243. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  244. package/src/sap/ui/model/type/Unit.js +1 -1
  245. package/src/sap/ui/model/xml/XMLModel.js +1 -1
  246. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  247. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  248. package/src/sap/ui/test/generic/TestBase.js +1 -1
  249. package/src/sap/ui/util/Storage.js +1 -1
  250. package/src/ui5loader-autoconfig.js +1 -1
@@ -51,7 +51,7 @@ sap.ui.define([
51
51
  * @extends sap.ui.core.message.MessageProcessor
52
52
  *
53
53
  * @author SAP SE
54
- * @version 1.114.0
54
+ * @version 1.114.2
55
55
  *
56
56
  * @public
57
57
  * @alias sap.ui.model.Model
@@ -20,7 +20,7 @@ sap.ui.define(['sap/ui/base/EventProvider', "sap/base/assert"],
20
20
  * @extends sap.ui.base.EventProvider
21
21
  *
22
22
  * @author SAP SE
23
- * @version 1.114.0
23
+ * @version 1.114.2
24
24
  *
25
25
  * @param {int} iSelectionMode <code>sap.ui.model.SelectionModel.SINGLE_SELECTION</code> or <code>sap.ui.model.SelectionModel.MULTI_SELECTION</code>
26
26
  *
@@ -46,7 +46,7 @@ sap.ui.define([
46
46
  *
47
47
  * @extends sap.ui.model.Type
48
48
  * @public
49
- * @version 1.114.0
49
+ * @version 1.114.2
50
50
  */
51
51
  var SimpleType = Type.extend("sap.ui.model.SimpleType", /** @lends sap.ui.model.SimpleType.prototype */ {
52
52
 
@@ -12,7 +12,7 @@ sap.ui.define([],
12
12
  /**
13
13
  * Different modes for setting the auto expand mode on tree or analytical bindings.
14
14
  *
15
- * @version 1.114.0
15
+ * @version 1.114.2
16
16
  * @enum {string}
17
17
  * @alias sap.ui.model.TreeAutoExpandMode
18
18
  * @protected
@@ -19,7 +19,7 @@ sap.ui.define(['sap/ui/base/Object'],
19
19
  *
20
20
  * @extends sap.ui.base.Object
21
21
  * @public
22
- * @version 1.114.0
22
+ * @version 1.114.2
23
23
  */
24
24
  var Type = BaseObject.extend("sap.ui.model.Type", /** @lends sap.ui.model.Type.prototype */ {
25
25
 
@@ -44,7 +44,7 @@ sap.ui.define([
44
44
  * @extends sap.ui.model.ClientModel
45
45
  *
46
46
  * @author SAP SE
47
- * @version 1.114.0
47
+ * @version 1.114.2
48
48
  * @public
49
49
  * @alias sap.ui.model.json.JSONModel
50
50
  */
@@ -29,7 +29,7 @@ sap.ui.define(['sap/ui/model/BindingMode', 'sap/ui/model/ClientModel', 'sap/ui/m
29
29
  * @extends sap.ui.model.ClientModel
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.114.0
32
+ * @version 1.114.2
33
33
  *
34
34
  * @param {sap.ui.core.message.MessageManager} oMessageManager The MessageManager instance
35
35
  * @public
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  *
28
28
  * @author SAP SE
29
29
  * @version
30
- * 1.114.0
30
+ * 1.114.2
31
31
  *
32
32
  * @public
33
33
  * @deprecated As of version 1.66, please use {@link sap.ui.model.odata.v2.ODataAnnotations} instead.
@@ -84,7 +84,7 @@ var sClassName = "sap.ui.model.odata.ODataMessageParser",
84
84
  * @extends sap.ui.core.message.MessageParser
85
85
  *
86
86
  * @author SAP SE
87
- * @version 1.114.0
87
+ * @version 1.114.2
88
88
  * @public
89
89
  * @alias sap.ui.model.odata.ODataMessageParser
90
90
  */
@@ -209,7 +209,7 @@ sap.ui.define([
209
209
  * {@link #loaded loaded} has been resolved!
210
210
  *
211
211
  * @author SAP SE
212
- * @version 1.114.0
212
+ * @version 1.114.2
213
213
  * @alias sap.ui.model.odata.ODataMetaModel
214
214
  * @extends sap.ui.model.MetaModel
215
215
  * @public
@@ -45,7 +45,7 @@ sap.ui.define([
45
45
  * Implementation to access OData metadata
46
46
  *
47
47
  * @author SAP SE
48
- * @version 1.114.0
48
+ * @version 1.114.2
49
49
  *
50
50
  * @public
51
51
  * @alias sap.ui.model.odata.ODataMetadata
@@ -77,7 +77,7 @@ sap.ui.define([
77
77
  *
78
78
  *
79
79
  * @author SAP SE
80
- * @version 1.114.0
80
+ * @version 1.114.2
81
81
  *
82
82
  * @public
83
83
  * @deprecated As of version 1.48, please use {@link sap.ui.model.odata.v2.ODataModel} instead.
@@ -87,7 +87,7 @@ sap.ui.define([
87
87
  * @extends sap.ui.model.odata.type.ODataType
88
88
  *
89
89
  * @author SAP SE
90
- * @version 1.114.0
90
+ * @version 1.114.2
91
91
  *
92
92
  * @alias sap.ui.model.odata.type.Boolean
93
93
  * @param {object} [oFormatOptions]
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.ui.model.odata.type.Int
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.114.0
27
+ * @version 1.114.2
28
28
  *
29
29
  * @alias sap.ui.model.odata.type.Byte
30
30
  * @param {object} [oFormatOptions]
@@ -65,7 +65,7 @@ sap.ui.define([
65
65
  * @extends sap.ui.model.type.Currency
66
66
  * @public
67
67
  * @since 1.63.0
68
- * @version 1.114.0
68
+ * @version 1.114.2
69
69
  */
70
70
  var Currency = BaseCurrency.extend("sap.ui.model.odata.type.Currency", {
71
71
  constructor : function (oFormatOptions, oConstraints) {
@@ -75,7 +75,7 @@ sap.ui.define([
75
75
  * @extends sap.ui.model.odata.type.ODataType
76
76
  *
77
77
  * @author SAP SE
78
- * @version 1.114.0
78
+ * @version 1.114.2
79
79
  *
80
80
  * @alias sap.ui.model.odata.type.Date
81
81
  * @param {object} [oFormatOptions]
@@ -61,7 +61,7 @@ sap.ui.define([
61
61
  * @extends sap.ui.model.odata.type.DateTimeBase
62
62
  *
63
63
  * @author SAP SE
64
- * @version 1.114.0
64
+ * @version 1.114.2
65
65
  *
66
66
  * @alias sap.ui.model.odata.type.DateTime
67
67
  * @param {object} [oFormatOptions]
@@ -92,7 +92,7 @@ sap.ui.define([
92
92
  * @extends sap.ui.model.odata.type.ODataType
93
93
  * @public
94
94
  * @since 1.27.0
95
- * @version 1.114.0
95
+ * @version 1.114.2
96
96
  */
97
97
  var DateTimeBase = ODataType.extend("sap.ui.model.odata.type.DateTimeBase", {
98
98
  constructor : function (oFormatOptions, oConstraints) {
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @extends sap.ui.model.odata.type.DateTimeBase
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.114.0
32
+ * @version 1.114.2
33
33
  *
34
34
  * @alias sap.ui.model.odata.type.DateTimeOffset
35
35
  * @param {object} [oFormatOptions]
@@ -45,7 +45,7 @@ sap.ui.define([
45
45
  * @public
46
46
  * @see {sap.ui.model.odata.v2.ODataModel#bindProperty}
47
47
  * @since 1.99.0
48
- * @version 1.114.0
48
+ * @version 1.114.2
49
49
  */
50
50
  var DateTimeWithTimezone = CompositeType.extend("sap.ui.model.odata.type.DateTimeWithTimezone",
51
51
  {
@@ -171,7 +171,7 @@ sap.ui.define([
171
171
  * @extends sap.ui.model.odata.type.ODataType
172
172
  *
173
173
  * @author SAP SE
174
- * @version 1.114.0
174
+ * @version 1.114.2
175
175
  *
176
176
  * @alias sap.ui.model.odata.type.Decimal
177
177
  * @param {object} [oFormatOptions]
@@ -73,7 +73,7 @@ sap.ui.define([
73
73
  * @extends sap.ui.model.odata.type.ODataType
74
74
  *
75
75
  * @author SAP SE
76
- * @version 1.114.0
76
+ * @version 1.114.2
77
77
  *
78
78
  * @alias sap.ui.model.odata.type.Double
79
79
  * @param {object} [oFormatOptions]
@@ -62,7 +62,7 @@ sap.ui.define([
62
62
  * @extends sap.ui.model.odata.type.ODataType
63
63
  *
64
64
  * @author SAP SE
65
- * @version 1.114.0
65
+ * @version 1.114.2
66
66
  *
67
67
  * @alias sap.ui.model.odata.type.Guid
68
68
  * @param {object} [oFormatOptions]
@@ -63,7 +63,7 @@ sap.ui.define([
63
63
  * @extends sap.ui.model.odata.type.ODataType
64
64
  *
65
65
  * @author SAP SE
66
- * @version 1.114.0
66
+ * @version 1.114.2
67
67
  *
68
68
  * @abstract
69
69
  * @alias sap.ui.model.odata.type.Int
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.ui.model.odata.type.Int
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.114.0
27
+ * @version 1.114.2
28
28
  *
29
29
  * @alias sap.ui.model.odata.type.Int16
30
30
  * @param {object} [oFormatOptions]
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.ui.model.odata.type.Int
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.114.0
27
+ * @version 1.114.2
28
28
  *
29
29
  * @alias sap.ui.model.odata.type.Int32
30
30
  * @param {object} [oFormatOptions]
@@ -119,7 +119,7 @@ sap.ui.define([
119
119
  * @extends sap.ui.model.odata.type.ODataType
120
120
  *
121
121
  * @author SAP SE
122
- * @version 1.114.0
122
+ * @version 1.114.2
123
123
  *
124
124
  * @alias sap.ui.model.odata.type.Int64
125
125
  * @param {object} [oFormatOptions]
@@ -115,7 +115,7 @@ sap.ui.define([
115
115
  * @extends sap.ui.model.SimpleType
116
116
  *
117
117
  * @author SAP SE
118
- * @version 1.114.0
118
+ * @version 1.114.2
119
119
  *
120
120
  * @abstract
121
121
  * @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.114.0
33
+ * @version 1.114.2
34
34
  */
35
35
  var Raw = ODataType.extend("sap.ui.model.odata.type.Raw", {
36
36
  constructor : function (oFormatOptions, oConstraints) {
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.ui.model.odata.type.Int
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.114.0
27
+ * @version 1.114.2
28
28
  *
29
29
  * @alias sap.ui.model.odata.type.SByte
30
30
  * @param {object} [oFormatOptions]
@@ -73,7 +73,7 @@ sap.ui.define([
73
73
  * @extends sap.ui.model.odata.type.ODataType
74
74
  *
75
75
  * @author SAP SE
76
- * @version 1.114.0
76
+ * @version 1.114.2
77
77
  *
78
78
  * @alias sap.ui.model.odata.type.Single
79
79
  * @param {object} [oFormatOptions]
@@ -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.114.0
63
+ * @version 1.114.2
64
64
  */
65
65
  var Stream = ODataType.extend("sap.ui.model.odata.type.Stream", {
66
66
  constructor : function (oFormatOptions, oConstraints) {
@@ -84,7 +84,7 @@ sap.ui.define([
84
84
  * @extends sap.ui.model.odata.type.ODataType
85
85
  *
86
86
  * @author SAP SE
87
- * @version 1.114.0
87
+ * @version 1.114.2
88
88
  *
89
89
  * @alias sap.ui.model.odata.type.String
90
90
  * @param {object} [oFormatOptions]
@@ -138,7 +138,7 @@ sap.ui.define([
138
138
  * @extends sap.ui.model.odata.type.ODataType
139
139
  *
140
140
  * @author SAP SE
141
- * @version 1.114.0
141
+ * @version 1.114.2
142
142
  *
143
143
  * @alias sap.ui.model.odata.type.Time
144
144
  * @param {object} [oFormatOptions]
@@ -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.114.0
95
+ * @version 1.114.2
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.114.0
69
+ * @version 1.114.2
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.114.0
67
+ * @version 1.114.2
68
68
  */
69
69
  var Context = BaseContext.extend("sap.ui.model.odata.v2.Context", {
70
70
  constructor : function (oModel, sPath, sDeepPath, oCreatePromise, bInactive,
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @class Annotation loader for OData V2 services
37
37
  *
38
38
  * @author SAP SE
39
- * @version 1.114.0
39
+ * @version 1.114.2
40
40
  *
41
41
  * @public
42
42
  * @since 1.37.0
@@ -212,7 +212,7 @@ sap.ui.define([
212
212
  * This model is not prepared to be inherited from.
213
213
  *
214
214
  * @author SAP SE
215
- * @version 1.114.0
215
+ * @version 1.114.2
216
216
  *
217
217
  * @public
218
218
  * @alias sap.ui.model.odata.v2.ODataModel
@@ -93,7 +93,7 @@ sap.ui.define([
93
93
  * @extends sap.ui.model.TreeBinding
94
94
  * @hideconstructor
95
95
  * @public
96
- * @version 1.114.0
96
+ * @version 1.114.2
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.114.0
45
+ * @version 1.114.2
46
46
  */
47
47
  Context = BaseContext.extend("sap.ui.model.odata.v4.Context", {
48
48
  constructor : constructor
@@ -1817,6 +1817,7 @@ sap.ui.define([
1817
1817
 
1818
1818
  this.bKeepAlive = bKeepAlive;
1819
1819
  this.fnOnBeforeDestroy = bKeepAlive ? fnOnBeforeDestroy : undefined;
1820
+ this.oBinding.onKeepAliveChanged(this);
1820
1821
  };
1821
1822
 
1822
1823
  /**
@@ -1928,6 +1929,7 @@ sap.ui.define([
1928
1929
  throw new Error("Must not select a deleted entity: " + this);
1929
1930
  }
1930
1931
  this.bSelected = bSelected;
1932
+ this.oBinding.onKeepAliveChanged(this); // selected contexts are effectively kept alive
1931
1933
  };
1932
1934
 
1933
1935
  /**
@@ -471,8 +471,8 @@ sap.ui.define([
471
471
  * Hook method for {@link #fetchQueryOptionsForOwnCache} to determine the query options for this
472
472
  * binding.
473
473
  *
474
- * @param {sap.ui.model.Context} oContext
475
- * The context instance to be used
474
+ * @param {sap.ui.model.Context} [oContext]
475
+ * The context instance to be used for a relative binding
476
476
  * @returns {sap.ui.base.SyncPromise}
477
477
  * A promise resolving with the binding's query options
478
478
  *
@@ -543,7 +543,9 @@ sap.ui.define([
543
543
  var mQueryOptions = aResult[0].mQueryOptions,
544
544
  bPreparedDeepCreate = that.prepareDeepCreate(oContext, mQueryOptions);
545
545
 
546
- that.sReducedPath = aResult[0].sReducedPath;
546
+ if (aResult[0].sReducedPath) {
547
+ that.sReducedPath = aResult[0].sReducedPath;
548
+ }
547
549
 
548
550
  // If there are mQueryOptions, the binding must create a cache. Do not create a cache if
549
551
  // a deep create was prepared or for a virtual context
@@ -74,7 +74,7 @@ sap.ui.define([
74
74
  * @mixes sap.ui.model.odata.v4.ODataParentBinding
75
75
  * @public
76
76
  * @since 1.37.0
77
- * @version 1.114.0
77
+ * @version 1.114.2
78
78
  *
79
79
  * @borrows sap.ui.model.odata.v4.ODataBinding#getGroupId as #getGroupId
80
80
  * @borrows sap.ui.model.odata.v4.ODataBinding#getRootBinding as #getRootBinding
@@ -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.114.0
60
+ * @version 1.114.2
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
@@ -348,6 +348,7 @@ sap.ui.define([
348
348
  sApply = _AggregationHelper.buildApply(mParameters.$$aggregation).$apply;
349
349
  }
350
350
  this.mQueryOptions = this.oModel.buildQueryOptions(mParameters, true);
351
+ this.oQueryOptionsPromise = undefined; // @see #doFetchQueryOptions
351
352
  this.mParameters = mParameters; // store mParameters at binding after validation
352
353
  if (sApply) {
353
354
  this.mQueryOptions.$apply = sApply;
@@ -1132,6 +1133,7 @@ sap.ui.define([
1132
1133
  this.mPreviousContextsByPath = undefined;
1133
1134
  this.aPreviousData = undefined;
1134
1135
  this.mQueryOptions = undefined;
1136
+ this.oQueryOptionsPromise = undefined;
1135
1137
  this.aSorters = undefined;
1136
1138
 
1137
1139
  asODataParentBinding.prototype.destroy.call(this);
@@ -1168,7 +1170,8 @@ sap.ui.define([
1168
1170
  * @private
1169
1171
  */
1170
1172
  ODataListBinding.prototype.destroyPreviousContexts = function (aPathsToDelete) {
1171
- var mPreviousContextsByPath = this.mPreviousContextsByPath;
1173
+ var mPreviousContextsByPath = this.mPreviousContextsByPath,
1174
+ that = this;
1172
1175
 
1173
1176
  if (mPreviousContextsByPath) { // binding may have been destroyed already
1174
1177
  (aPathsToDelete || Object.keys(mPreviousContextsByPath)).forEach(function (sPath) {
@@ -1181,6 +1184,11 @@ sap.ui.define([
1181
1184
  } else {
1182
1185
  if (!oContext.isTransient()) {
1183
1186
  oContext.destroy();
1187
+ if (oContext.iIndex === undefined && that.oCache) {
1188
+ // was kept alive (or deleted)
1189
+ that.oCache.removeKeptElement(
1190
+ _Helper.getRelativePath(sPath, that.oHeaderContext.getPath()));
1191
+ }
1184
1192
  }
1185
1193
  delete mPreviousContextsByPath[sPath];
1186
1194
  }
@@ -1260,14 +1268,23 @@ sap.ui.define([
1260
1268
  * @see sap.ui.model.odata.v4.ODataBinding#doFetchQueryOptions
1261
1269
  */
1262
1270
  ODataListBinding.prototype.doFetchQueryOptions = function (oContext) {
1263
- var that = this;
1271
+ // Note: an absolute binding needs no parent context :-)
1272
+ var sMetaPath = oContext && _Helper.getMetaPath(oContext.getPath()),
1273
+ that = this;
1264
1274
 
1265
- return this.fetchResolvedQueryOptions(oContext).then(function (mQueryOptions) {
1266
- return that.fetchFilter(oContext, mQueryOptions.$filter).then(function (aFilters) {
1267
- return _Helper.mergeQueryOptions(mQueryOptions,
1268
- that.getOrderby(mQueryOptions.$orderby), aFilters);
1269
- });
1270
- });
1275
+ if (!(this.oQueryOptionsPromise && this.oQueryOptionsPromise.$metaPath === sMetaPath)) {
1276
+ this.oQueryOptionsPromise
1277
+ = this.fetchResolvedQueryOptions(oContext).then(function (mQueryOptions) {
1278
+ return that.fetchFilter(oContext, mQueryOptions.$filter)
1279
+ .then(function (aFilters) {
1280
+ return _Helper.mergeQueryOptions(mQueryOptions,
1281
+ that.getOrderby(mQueryOptions.$orderby), aFilters);
1282
+ });
1283
+ });
1284
+ this.oQueryOptionsPromise.$metaPath = sMetaPath;
1285
+ }
1286
+
1287
+ return this.oQueryOptionsPromise;
1271
1288
  };
1272
1289
 
1273
1290
  /**
@@ -1871,6 +1888,7 @@ sap.ui.define([
1871
1888
  } else {
1872
1889
  this.aApplicationFilters = aFilters;
1873
1890
  }
1891
+ this.oQueryOptionsPromise = undefined;
1874
1892
 
1875
1893
  if (this.isRootBindingSuspended()) {
1876
1894
  this.setResumeChangeReason(ChangeReason.Filter);
@@ -2935,6 +2953,21 @@ sap.ui.define([
2935
2953
  }
2936
2954
  };
2937
2955
 
2956
+ /**
2957
+ * Notification from a context that its effective keep-alive status changed.
2958
+ *
2959
+ * @param {sap.ui.model.odata.v4.Context} oContext - The context
2960
+ *
2961
+ * @private
2962
+ */
2963
+ ODataListBinding.prototype.onKeepAliveChanged = function (oContext) {
2964
+ if (!oContext.isDeleted() // data of a deleted context must remain for the exclusion filter
2965
+ && oContext.getPath() in this.mPreviousContextsByPath
2966
+ && !oContext.isKeepAlive()) {
2967
+ this.destroyPreviousContextsLater([oContext.getPath()]);
2968
+ }
2969
+ };
2970
+
2938
2971
  /**
2939
2972
  * Prepares the nested binding for a deep create if there is a transient parent context. Adds a
2940
2973
  * transient collection to the parent binding's cache. Creates contexts for nested entities in
@@ -4019,6 +4052,7 @@ sap.ui.define([
4019
4052
  }
4020
4053
 
4021
4054
  this.aSorters = aSorters;
4055
+ this.oQueryOptionsPromise = undefined;
4022
4056
 
4023
4057
  if (this.isRootBindingSuspended()) {
4024
4058
  this.setResumeChangeReason(ChangeReason.Sort);
@@ -157,7 +157,7 @@ sap.ui.define([
157
157
  * @hideconstructor
158
158
  * @public
159
159
  * @since 1.37.0
160
- * @version 1.114.0
160
+ * @version 1.114.2
161
161
  */
162
162
  ODataMetaModel = MetaModel.extend("sap.ui.model.odata.v4.ODataMetaModel", {
163
163
  constructor : constructor
@@ -2203,6 +2203,9 @@ sap.ui.define([
2203
2203
  if (oProperty.$Nullable === false) {
2204
2204
  setConstraint("nullable", false);
2205
2205
  }
2206
+ if (oProperty.$Type === "Edm.DateTimeOffset") {
2207
+ setConstraint("V4", true);
2208
+ }
2206
2209
  }
2207
2210
  return mConstraints;
2208
2211
  };
@@ -227,7 +227,7 @@ sap.ui.define([
227
227
  * @extends sap.ui.model.Model
228
228
  * @public
229
229
  * @since 1.37.0
230
- * @version 1.114.0
230
+ * @version 1.114.2
231
231
  */
232
232
  ODataModel = Model.extend("sap.ui.model.odata.v4.ODataModel",
233
233
  /** @lends sap.ui.model.odata.v4.ODataModel.prototype */{