@openui5/sap.ui.core 1.105.1 → 1.107.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.
Files changed (351) hide show
  1. package/.reuse/dep5 +20 -17
  2. package/THIRDPARTY.txt +31 -21
  3. package/package.json +1 -1
  4. package/src/jquery.sap.dom.js +10 -10
  5. package/src/jquery.sap.global.js +24 -216
  6. package/src/jquery.sap.history.js +1 -1
  7. package/src/jquery.sap.properties.js +2 -2
  8. package/src/jquery.sap.resources.js +1 -1
  9. package/src/jquery.sap.script.js +1 -1
  10. package/src/jquery.sap.storage.js +4 -4
  11. package/src/jquery.sap.ui.js +5 -7
  12. package/src/sap/base/i18n/ResourceBundle.js +7 -11
  13. package/src/sap/base/util/LoaderExtensions.js +6 -6
  14. package/src/sap/base/util/ObjectPath.js +1 -1
  15. package/src/sap/base/util/Properties.js +1 -1
  16. package/src/sap/base/util/fetch.js +8 -10
  17. package/src/sap/base/util/mixedFetch.js +1 -1
  18. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  19. package/src/sap/base/util/restricted/_castArray.js +1 -1
  20. package/src/sap/base/util/restricted/_compact.js +1 -1
  21. package/src/sap/base/util/restricted/_curry.js +1 -1
  22. package/src/sap/base/util/restricted/_debounce.js +1 -1
  23. package/src/sap/base/util/restricted/_difference.js +1 -1
  24. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  25. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  26. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  27. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  28. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  29. package/src/sap/base/util/restricted/_flatten.js +1 -1
  30. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  31. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  32. package/src/sap/base/util/restricted/_intersection.js +1 -1
  33. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  34. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  35. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  36. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  37. package/src/sap/base/util/restricted/_isNil.js +1 -1
  38. package/src/sap/base/util/restricted/_max.js +1 -1
  39. package/src/sap/base/util/restricted/_merge.js +1 -1
  40. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  41. package/src/sap/base/util/restricted/_min.js +1 -1
  42. package/src/sap/base/util/restricted/_omit.js +1 -1
  43. package/src/sap/base/util/restricted/_pick.js +1 -1
  44. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  45. package/src/sap/base/util/restricted/_throttle.js +1 -1
  46. package/src/sap/base/util/restricted/_toArray.js +1 -1
  47. package/src/sap/base/util/restricted/_union.js +1 -1
  48. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  49. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  50. package/src/sap/base/util/restricted/_uniq.js +1 -1
  51. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  52. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  53. package/src/sap/base/util/restricted/_without.js +1 -1
  54. package/src/sap/base/util/restricted/_xor.js +1 -1
  55. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  56. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  57. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  58. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  59. package/src/sap/base/util/syncFetch.js +9 -16
  60. package/src/sap/ui/Device.js +3 -3
  61. package/src/sap/ui/Global.js +7 -14
  62. package/src/sap/ui/VersionInfo.js +57 -54
  63. package/src/sap/ui/base/BindingInfo.js +198 -0
  64. package/src/sap/ui/base/DataType.js +5 -5
  65. package/src/sap/ui/base/Event.js +2 -2
  66. package/src/sap/ui/base/EventProvider.js +2 -2
  67. package/src/sap/ui/base/Interface.js +1 -1
  68. package/src/sap/ui/base/ManagedObject.js +209 -979
  69. package/src/sap/ui/base/ManagedObjectMetadata.js +6 -6
  70. package/src/sap/ui/base/ManagedObjectRegistry.js +4 -3
  71. package/src/sap/ui/base/Metadata.js +1 -1
  72. package/src/sap/ui/base/Object.js +1 -1
  73. package/src/sap/ui/base/ObjectPool.js +1 -1
  74. package/src/sap/ui/core/.library +13 -9
  75. package/src/sap/ui/core/AppCacheBuster.js +3 -4
  76. package/src/sap/ui/core/BusyIndicator.js +1 -1
  77. package/src/sap/ui/core/BusyIndicatorUtils.js +5 -6
  78. package/src/sap/ui/core/CalendarType.js +0 -1
  79. package/src/sap/ui/core/Component.js +16 -14
  80. package/src/sap/ui/core/ComponentContainer.js +6 -5
  81. package/src/sap/ui/core/ComponentMetadata.js +5 -12
  82. package/src/sap/ui/core/ComponentSupport.js +1 -1
  83. package/src/sap/ui/core/Configuration.js +525 -336
  84. package/src/sap/ui/core/Control.js +7 -7
  85. package/src/sap/ui/core/Core.js +102 -422
  86. package/src/sap/ui/core/CustomData.js +1 -1
  87. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  88. package/src/sap/ui/core/Element.js +65 -9
  89. package/src/sap/ui/core/ElementMetadata.js +1 -1
  90. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  91. package/src/sap/ui/core/EventBus.js +1 -1
  92. package/src/sap/ui/core/FocusHandler.js +79 -9
  93. package/src/sap/ui/core/Fragment.js +1 -1
  94. package/src/sap/ui/core/HTML.js +1 -2
  95. package/src/sap/ui/core/History.js +1 -1
  96. package/src/sap/ui/core/Icon.js +1 -2
  97. package/src/sap/ui/core/IconPool.js +8 -8
  98. package/src/sap/ui/core/IndicationColorSupport.js +2 -2
  99. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  100. package/src/sap/ui/core/InvisibleMessage.js +1 -2
  101. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  102. package/src/sap/ui/core/InvisibleText.js +5 -5
  103. package/src/sap/ui/core/Item.js +1 -2
  104. package/src/sap/ui/core/LabelEnablement.js +1 -1
  105. package/src/sap/ui/core/LayoutData.js +1 -2
  106. package/src/sap/ui/core/ListItem.js +1 -2
  107. package/src/sap/ui/core/LocalBusyIndicator.js +1 -2
  108. package/src/sap/ui/core/Locale.js +1 -1
  109. package/src/sap/ui/core/LocaleData.js +15 -13
  110. package/src/sap/ui/core/Manifest.js +8 -6
  111. package/src/sap/ui/core/Message.js +4 -6
  112. package/src/sap/ui/core/Popup.js +63 -6
  113. package/src/sap/ui/core/RenderManager.js +13 -5
  114. package/src/sap/ui/core/Renderer.js +5 -4
  115. package/src/sap/ui/core/Rendering.js +251 -0
  116. package/src/sap/ui/core/ResizeHandler.js +7 -7
  117. package/src/sap/ui/core/ScrollBar.js +6 -9
  118. package/src/sap/ui/core/ScrollBarRenderer.js +3 -3
  119. package/src/sap/ui/core/SeparatorItem.js +1 -2
  120. package/src/sap/ui/core/Title.js +1 -2
  121. package/src/sap/ui/core/TooltipBase.js +12 -14
  122. package/src/sap/ui/core/UIArea.js +396 -129
  123. package/src/sap/ui/core/UIComponent.js +3 -4
  124. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  125. package/src/sap/ui/core/ValueStateSupport.js +2 -2
  126. package/src/sap/ui/core/VariantLayoutData.js +1 -2
  127. package/src/sap/ui/core/XMLComposite.js +2 -2
  128. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  129. package/src/sap/ui/core/XMLTemplateProcessor.js +12 -10
  130. package/src/sap/ui/core/_ConfigurationProvider.js +187 -0
  131. package/src/sap/ui/core/cache/CacheManager.js +9 -8
  132. package/src/sap/ui/core/cache/LRUPersistentCache.js +4 -4
  133. package/src/sap/ui/core/cldr/es_BO.json +3 -3
  134. package/src/sap/ui/core/cldr/es_CL.json +3 -3
  135. package/src/sap/ui/core/cldr/es_MX.json +3 -3
  136. package/src/sap/ui/core/cldr/es_PE.json +3 -3
  137. package/src/sap/ui/core/cldr/es_UY.json +3 -3
  138. package/src/sap/ui/core/cldr/es_VE.json +2 -2
  139. package/src/sap/ui/core/date/Islamic.js +4 -4
  140. package/src/sap/ui/core/date/UniversalDate.js +8 -8
  141. package/src/sap/ui/core/date/UniversalDateUtils.js +3 -3
  142. package/src/sap/ui/core/delegate/ItemNavigation.js +5 -5
  143. package/src/sap/ui/core/delegate/ScrollEnablement.js +7 -6
  144. package/src/sap/ui/core/dnd/DragAndDrop.js +14 -9
  145. package/src/sap/ui/core/dnd/DragDropBase.js +1 -2
  146. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -2
  147. package/src/sap/ui/core/dnd/DragInfo.js +1 -2
  148. package/src/sap/ui/core/dnd/DropInfo.js +1 -2
  149. package/src/sap/ui/core/format/DateFormat.js +14 -7
  150. package/src/sap/ui/core/format/DateFormatTimezoneDisplay.js +0 -1
  151. package/src/sap/ui/core/format/FileSizeFormat.js +4 -3
  152. package/src/sap/ui/core/format/ListFormat.js +4 -3
  153. package/src/sap/ui/core/format/NumberFormat.js +7 -6
  154. package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
  155. package/src/sap/ui/core/hyphenation/Hyphenation.js +7 -6
  156. package/src/sap/ui/core/library.js +3 -55
  157. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  158. package/src/sap/ui/core/message/Message.js +1 -1
  159. package/src/sap/ui/core/message/MessageManager.js +13 -23
  160. package/src/sap/ui/core/message/MessageParser.js +1 -1
  161. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  162. package/src/sap/ui/core/messagebundle_fr.properties +1 -1
  163. package/src/sap/ui/core/mvc/Controller.js +8 -3
  164. package/src/sap/ui/core/mvc/EventHandlerResolver.js +5 -3
  165. package/src/sap/ui/core/mvc/HTMLView.js +1 -2
  166. package/src/sap/ui/core/mvc/JSONView.js +1 -2
  167. package/src/sap/ui/core/mvc/JSView.js +2 -3
  168. package/src/sap/ui/core/mvc/TemplateView.js +1 -2
  169. package/src/sap/ui/core/mvc/View.js +21 -20
  170. package/src/sap/ui/core/mvc/ViewType.js +0 -1
  171. package/src/sap/ui/core/mvc/XMLView.js +18 -18
  172. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  173. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  174. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  175. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  176. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  177. package/src/sap/ui/core/routing/Router.js +1 -1
  178. package/src/sap/ui/core/routing/async/Target.js +4 -3
  179. package/src/sap/ui/core/rules/App.support.js +11 -13
  180. package/src/sap/ui/core/rules/Config.support.js +19 -17
  181. package/src/sap/ui/core/rules/CoreHelper.support.js +4 -4
  182. package/src/sap/ui/core/rules/Model.support.js +8 -8
  183. package/src/sap/ui/core/rules/Rendering.support.js +1 -1
  184. package/src/sap/ui/core/rules/Theming.support.js +8 -8
  185. package/src/sap/ui/core/rules/View.support.js +9 -9
  186. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -2
  187. package/src/sap/ui/core/search/SearchProvider.js +1 -3
  188. package/src/sap/ui/core/service/Service.js +1 -1
  189. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  190. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  191. package/src/sap/ui/core/support/Hotkeys.js +2 -3
  192. package/src/sap/ui/core/support/Plugin.js +1 -1
  193. package/src/sap/ui/core/support/Support.js +1 -1
  194. package/src/sap/ui/core/support/ToolsAPI.js +11 -13
  195. package/src/sap/ui/core/support/plugins/ControlTree.js +4 -4
  196. package/src/sap/ui/core/support/plugins/Debugging.js +3 -3
  197. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  198. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  199. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  200. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  201. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  202. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  203. package/src/sap/ui/core/support/plugins/ViewInfo.js +2 -2
  204. package/src/sap/ui/core/support/support.html +1 -1
  205. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +10 -8
  206. package/src/sap/ui/core/theming/Parameters.js +8 -15
  207. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -2
  208. package/src/sap/ui/core/tmpl/DOMElement.js +1 -4
  209. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  210. package/src/sap/ui/core/tmpl/Template.js +6 -5
  211. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -2
  212. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  213. package/src/sap/ui/core/util/Export.js +1 -1
  214. package/src/sap/ui/core/util/ExportCell.js +1 -1
  215. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  216. package/src/sap/ui/core/util/ExportRow.js +1 -1
  217. package/src/sap/ui/core/util/ExportType.js +1 -1
  218. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  219. package/src/sap/ui/core/util/File.js +1 -1
  220. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  221. package/src/sap/ui/core/util/MockServer.js +48 -72
  222. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  223. package/src/sap/ui/core/util/ResponsivePaddingsEnablement.js +4 -3
  224. package/src/sap/ui/core/util/XMLPreprocessor.js +2 -2
  225. package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +1 -1
  226. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  227. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  228. package/src/sap/ui/core/util/serializer/ViewSerializer.js +4 -4
  229. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  230. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  231. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  232. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  233. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  234. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  235. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  236. package/src/sap/ui/debug/ControlTree.js +3 -3
  237. package/src/sap/ui/debug/DebugEnv.js +4 -4
  238. package/src/sap/ui/debug/PropertyList.css +1 -31
  239. package/src/sap/ui/debug/PropertyList.js +6 -250
  240. package/src/sap/ui/dom/getScrollbarSize.js +1 -1
  241. package/src/sap/ui/dom/jquery/control.js +1 -0
  242. package/src/sap/ui/events/jquery/EventSimulation.js +4 -4
  243. package/src/sap/ui/model/ClientModel.js +1 -1
  244. package/src/sap/ui/model/ClientTreeBinding.js +3 -1
  245. package/src/sap/ui/model/CompositeDataState.js +1 -1
  246. package/src/sap/ui/model/CompositeType.js +1 -1
  247. package/src/sap/ui/model/Context.js +3 -0
  248. package/src/sap/ui/model/ContextBinding.js +1 -1
  249. package/src/sap/ui/model/DataState.js +2 -2
  250. package/src/sap/ui/model/ListBinding.js +2 -2
  251. package/src/sap/ui/model/ManagedObjectBindingSupport.js +871 -0
  252. package/src/sap/ui/model/MetaModel.js +1 -1
  253. package/src/sap/ui/model/Model.js +16 -5
  254. package/src/sap/ui/model/SelectionModel.js +1 -1
  255. package/src/sap/ui/model/SimpleType.js +2 -2
  256. package/src/sap/ui/model/Sorter.js +24 -19
  257. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  258. package/src/sap/ui/model/TreeBindingAdapter.js +3 -7
  259. package/src/sap/ui/model/Type.js +1 -1
  260. package/src/sap/ui/model/analytics/AnalyticalBinding.js +2 -0
  261. package/src/sap/ui/model/analytics/AnalyticalTreeBindingAdapter.js +5 -7
  262. package/src/sap/ui/model/json/JSONModel.js +9 -7
  263. package/src/sap/ui/model/message/MessageModel.js +1 -1
  264. package/src/sap/ui/model/odata/AnnotationHelper.js +4 -4
  265. package/src/sap/ui/model/odata/ODataAnnotations.js +5 -3
  266. package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
  267. package/src/sap/ui/model/odata/ODataMetaModel.js +10 -10
  268. package/src/sap/ui/model/odata/ODataMetadata.js +5 -4
  269. package/src/sap/ui/model/odata/ODataModel.js +6 -5
  270. package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +0 -1
  271. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  272. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  273. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  274. package/src/sap/ui/model/odata/type/Date.js +1 -1
  275. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  276. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  277. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  278. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  279. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  280. package/src/sap/ui/model/odata/type/Double.js +1 -1
  281. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  282. package/src/sap/ui/model/odata/type/Int.js +1 -1
  283. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  284. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  285. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  286. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  287. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  288. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  289. package/src/sap/ui/model/odata/type/Single.js +1 -1
  290. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  291. package/src/sap/ui/model/odata/type/String.js +1 -1
  292. package/src/sap/ui/model/odata/type/Time.js +1 -1
  293. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  294. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  295. package/src/sap/ui/model/odata/v2/Context.js +5 -5
  296. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +4 -3
  297. package/src/sap/ui/model/odata/v2/ODataContextBinding.js +25 -16
  298. package/src/sap/ui/model/odata/v2/ODataListBinding.js +46 -28
  299. package/src/sap/ui/model/odata/v2/ODataModel.js +97 -39
  300. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +5 -5
  301. package/src/sap/ui/model/odata/v4/AnnotationHelper.js +3 -3
  302. package/src/sap/ui/model/odata/v4/Context.js +109 -71
  303. package/src/sap/ui/model/odata/v4/ODataBinding.js +50 -7
  304. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +88 -68
  305. package/src/sap/ui/model/odata/v4/ODataListBinding.js +116 -81
  306. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +23 -20
  307. package/src/sap/ui/model/odata/v4/ODataModel.js +350 -88
  308. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +35 -9
  309. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +15 -9
  310. package/src/sap/ui/model/odata/v4/ODataUtils.js +8 -5
  311. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +45 -33
  312. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +40 -6
  313. package/src/sap/ui/model/odata/v4/lib/_Cache.js +135 -81
  314. package/src/sap/ui/model/odata/v4/lib/_ConcatHelper.js +2 -3
  315. package/src/sap/ui/model/odata/v4/lib/_Helper.js +179 -36
  316. package/src/sap/ui/model/odata/v4/lib/_MinMaxHelper.js +2 -3
  317. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +26 -7
  318. package/src/sap/ui/model/resource/ResourceModel.js +8 -7
  319. package/src/sap/ui/model/type/Boolean.js +1 -1
  320. package/src/sap/ui/model/type/Currency.js +2 -2
  321. package/src/sap/ui/model/type/Date.js +1 -1
  322. package/src/sap/ui/model/type/DateInterval.js +1 -1
  323. package/src/sap/ui/model/type/DateTime.js +1 -1
  324. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  325. package/src/sap/ui/model/type/FileSize.js +1 -1
  326. package/src/sap/ui/model/type/Float.js +1 -1
  327. package/src/sap/ui/model/type/Integer.js +1 -1
  328. package/src/sap/ui/model/type/String.js +2 -2
  329. package/src/sap/ui/model/type/Time.js +1 -1
  330. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  331. package/src/sap/ui/model/type/Unit.js +5 -4
  332. package/src/sap/ui/model/xml/XMLModel.js +8 -6
  333. package/src/sap/ui/performance/trace/Interaction.js +1 -1
  334. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  335. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  336. package/src/sap/ui/test/Opa.js +7 -5
  337. package/src/sap/ui/test/Opa5.js +9 -15
  338. package/src/sap/ui/test/OpaBuilder.js +1 -1
  339. package/src/sap/ui/test/RecorderHotkeyListener.js +1 -1
  340. package/src/sap/ui/test/TestUtils.js +83 -1
  341. package/src/sap/ui/test/autowaiter/_autoWaiter.js +9 -0
  342. package/src/sap/ui/test/autowaiter/_cssAnimationWaiter.js +114 -0
  343. package/src/sap/ui/test/autowaiter/_cssTransitionWaiter.js +99 -0
  344. package/src/sap/ui/test/autowaiter/_jsAnimationWaiter.js +70 -0
  345. package/src/sap/ui/test/autowaiter/_resourceWaiter.js +3 -12
  346. package/src/sap/ui/test/autowaiter/_utils.js +13 -1
  347. package/src/sap/ui/test/generic/TestBase.js +1 -1
  348. package/src/sap/ui/test/matchers/Ancestor.js +1 -0
  349. package/src/sap/ui/test/matchers/Descendant.js +1 -0
  350. package/src/sap/ui/test/matchers/Sibling.js +1 -0
  351. package/src/sap/ui/util/Storage.js +1 -1
@@ -16,7 +16,7 @@ sap.ui.define(['./Model'],
16
16
  * @extends sap.ui.model.Model
17
17
  *
18
18
  * @author SAP SE
19
- * @version 1.105.1
19
+ * @version 1.107.0
20
20
  *
21
21
  * @public
22
22
  * @alias sap.ui.model.MetaModel
@@ -7,13 +7,15 @@
7
7
  // Provides the base implementation for all model implementations
8
8
  sap.ui.define([
9
9
  'sap/ui/core/message/MessageProcessor',
10
+ './ManagedObjectBindingSupport',
10
11
  './BindingMode',
11
12
  './Context',
12
13
  './Filter',
13
14
  "sap/base/util/deepEqual",
14
15
  "sap/base/util/each"
15
16
  ],
16
- function(MessageProcessor, BindingMode, Context, Filter, deepEqual, each) {
17
+ function(MessageProcessor, ManagedObjectBindingSupport, BindingMode, Context, Filter, deepEqual,
18
+ each) {
17
19
  "use strict";
18
20
 
19
21
 
@@ -49,7 +51,7 @@ sap.ui.define([
49
51
  * @extends sap.ui.core.message.MessageProcessor
50
52
  *
51
53
  * @author SAP SE
52
- * @version 1.105.1
54
+ * @version 1.107.0
53
55
  *
54
56
  * @public
55
57
  * @alias sap.ui.model.Model
@@ -102,7 +104,6 @@ sap.ui.define([
102
104
  }
103
105
  });
104
106
 
105
-
106
107
  /**
107
108
  * Map of event names, that are provided by the model.
108
109
  */
@@ -719,7 +720,7 @@ sap.ui.define([
719
720
  * @param {sap.ui.model.Context} [oContext] Context with which the path should be resolved
720
721
  * @param {object} [mParameters] Additional model-specific parameters
721
722
  *
722
- * @returns {any}
723
+ * @returns {any|undefined}
723
724
  * The value for the given path/context or <code>undefined</code> if data could not be found
724
725
  * @public
725
726
  */
@@ -1118,7 +1119,7 @@ sap.ui.define([
1118
1119
  * model type.
1119
1120
  * @abstract
1120
1121
  * @public
1121
- * @returns {sap.ui.model.MetaModel}
1122
+ * @returns {sap.ui.model.MetaModel|undefined}
1122
1123
  * The meta model or <code>undefined</code> if no meta model exists.
1123
1124
  */
1124
1125
  Model.prototype.getMetaModel = function() {
@@ -1229,6 +1230,16 @@ sap.ui.define([
1229
1230
  }
1230
1231
  }
1231
1232
 
1233
+ /**
1234
+ * Introduces data binding support on the ManagedObject prototype via mixin.
1235
+ * Called by the ManagedObject during property propagation.
1236
+ * @param {sap.ui.base.ManagedObject.prototype} ManagedObject
1237
+ * the sap.ui.base.ManagedObject.prototype
1238
+ */
1239
+ Model.prototype.mixinBindingSupport = function(ManagedObject) {
1240
+ Object.assign(ManagedObject, ManagedObjectBindingSupport);
1241
+ };
1242
+
1232
1243
  return Model;
1233
1244
 
1234
1245
  });
@@ -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.105.1
23
+ * @version 1.107.0
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.105.1
49
+ * @version 1.107.0
50
50
  */
51
51
  var SimpleType = Type.extend("sap.ui.model.SimpleType", /** @lends sap.ui.model.SimpleType.prototype */ {
52
52
 
@@ -109,7 +109,7 @@ sap.ui.define([
109
109
  *
110
110
  * @param {any} vValue
111
111
  * The value to be validated
112
- * @returns {void|Promise}
112
+ * @returns {void|Promise<undefined>}
113
113
  * <code>undefined</code> or a <code>Promise</code> resolving with an undefined value
114
114
  * @throws {sap.ui.model.ValidateException}
115
115
  * If at least one of the type constraints are not met; the message of the exception is
@@ -22,23 +22,28 @@ sap.ui.define(['sap/ui/base/Object', "sap/base/Log"],
22
22
  *
23
23
  * @param {string} sPath the binding path used for sorting
24
24
  * @param {boolean} [bDescending=false] whether the sort order should be descending
25
- * @param {boolean|function} [vGroup] configure grouping of the content, can either be true to enable grouping
26
- * based on the raw model property value, or a function which calculates the group value out of the
27
- * context (e.g. oContext.getProperty("date").getYear() for year grouping). The control needs to
28
- * implement the grouping behaviour for the aggregation which you want to group. In case a function
29
- * is provided it must either return a primitive type value as the group key or an object containing
30
- * a "key" property and additional properties needed for group visualization. This object
31
- * or the object with the primitive type return value as "key" property is passed to
32
- * the <code>groupHeaderFactory</code> function that has been specified to create the
33
- * group header for the control aggregation; see
34
- * {@link sap.ui.base.ManagedObject#bindAggregation}.
35
- * <b>Note:</b> Grouping is only possible (and only makes sense) for the primary sort property.
36
- * @param {function} [fnComparator] A custom comparator function, which is used for client-side sorting instead
37
- * of the default comparator method. Information about parameters and expected return values of such a
38
- * method can be found in the {@link #.defaultComparator default comparator} documentation.
39
- * <b>Note:</b> Custom comparator functions are meant to be used on the client. Models that implement
40
- * sorting in the backend usually don't support custom comparator functions. Consult the documentation
41
- * of the specific model implementation.
25
+ * @param {boolean|function} [vGroup] configure grouping of the content, can either be true to
26
+ * enable grouping based on the raw model property value, or a function which calculates the
27
+ * group value out of the context (e.g. oContext.getProperty("date").getYear() for year
28
+ * grouping). The control needs to implement the grouping behaviour for the aggregation which
29
+ * you want to group. In case a function is provided it must either return a primitive type
30
+ * value as the group key or an object containing a "key" property and additional properties
31
+ * needed for group visualization. This object or the object with the primitive type return
32
+ * value as "key" property is passed to the <code>groupHeaderFactory</code> function that has
33
+ * been specified to create the group header for the control aggregation; see
34
+ * {@link sap.ui.base.ManagedObject#bindAggregation}.
35
+ * <b>Note:</b> Grouping via <code>vGroup=true</code> is only possible (and only makes sense)
36
+ * for the primary sort property. A more complicated grouping is possible by providing a
37
+ * grouping function. The sort order needs to fit to the grouping also in this case. See also
38
+ * {@link topic:ec79a5d5918f4f7f9cbc2150e66778cc Sorting, Grouping, and Filtering for List
39
+ * Binding}.
40
+ * @param {function} [fnComparator] A custom comparator function, which is used for client-side
41
+ * sorting instead of the default comparator method. Information about parameters and expected
42
+ * return values of such a method can be found in the
43
+ * {@link #.defaultComparator default comparator} documentation.
44
+ * <b>Note:</b> Custom comparator functions are meant to be used on the client. Models that
45
+ * implement sorting in the backend usually don't support custom comparator functions. Consult
46
+ * the documentation of the specific model implementation.
42
47
  * @public
43
48
  * @alias sap.ui.model.Sorter
44
49
  * @extends sap.ui.base.Object
@@ -78,11 +83,11 @@ sap.ui.define(['sap/ui/base/Object', "sap/base/Log"],
78
83
  },
79
84
 
80
85
  /**
81
- * Returns a group object, at least containing a key property for group detection.
86
+ * Returns a group object, at least containing a "key" property for group detection.
82
87
  * May contain additional properties as provided by a custom group function.
83
88
  *
84
89
  * @param {sap.ui.model.Context} oContext the binding context
85
- * @return {object} An object containing a key property and optional custom properties
90
+ * @return {Object<string, any>} An object containing a key property and optional custom properties
86
91
  * @public
87
92
  */
88
93
  getGroup : function(oContext) {
@@ -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.105.1
15
+ * @version 1.107.0
16
16
  * @enum {string}
17
17
  * @alias sap.ui.model.TreeAutoExpandMode
18
18
  * @protected
@@ -520,13 +520,9 @@ sap.ui.define([
520
520
  return [];
521
521
  }
522
522
 
523
- if (!iLength) {
524
- iLength = this.oModel.iSizeLimit;
525
- }
526
-
527
- if (!iThreshold) {
528
- iThreshold = 0;
529
- }
523
+ iStartIndex = iStartIndex || 0;
524
+ iLength = iLength || this.oModel.iSizeLimit;
525
+ iThreshold = iThreshold || 0;
530
526
 
531
527
  // test if the pagesize has increased -> used to optimise "too small" node sections, see _loadChildContexts
532
528
  if (iLength > this._iPageSize) {
@@ -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.105.1
22
+ * @version 1.107.0
23
23
  */
24
24
  var Type = BaseObject.extend("sap.ui.model.Type", /** @lends sap.ui.model.Type.prototype */ {
25
25
 
@@ -3384,6 +3384,8 @@ sap.ui.define([
3384
3384
  oLogger.fatal("assertion failed: failed to determine position of " + oGroupMembersRequestDetails.sGroupId + " in group " + sParentGroupId);
3385
3385
  } else if (!iPositionInParentGroup) {
3386
3386
  that.mFinalLength[oRequestDetails.sGroupId_Missing_AtLevel] = true;
3387
+ // iStartIndex must be reset to 0, because a new group starts
3388
+ oGroupMembersRequestDetails.iStartIndex = 0;
3387
3389
  } else if (that._getKey(sParentGroupId, iPositionInParentGroup - 1) !== undefined) {
3388
3390
  var sPreviousGroupMemberKey = that._getKey(sParentGroupId, iPositionInParentGroup - 1);
3389
3391
  var sPreviousGroupId = that._getGroupIdFromContext(that.oModel.getContext('/' + sPreviousGroupMemberKey),
@@ -143,7 +143,7 @@ sap.ui.define([
143
143
  *
144
144
  * @param {boolean} bReturnNodes
145
145
  * Whether to return node objects or contexts
146
- * @param {number} iStartIndex
146
+ * @param {number} [iStartIndex=0]
147
147
  * The index of the first requested node or context
148
148
  * @param {number} [iLength]
149
149
  * The maximum number of returned nodes or contexts; if not given the model's size limit is
@@ -160,12 +160,10 @@ sap.ui.define([
160
160
  if (!this.isResolved()) {
161
161
  return [];
162
162
  }
163
- if (!iLength) {
164
- iLength = this.oModel.iSizeLimit;
165
- }
166
- if (!iThreshold) {
167
- iThreshold = 0;
168
- }
163
+
164
+ iStartIndex = iStartIndex || 0;
165
+ iLength = iLength || this.oModel.iSizeLimit;
166
+ iThreshold = iThreshold || 0;
169
167
 
170
168
  this._iPageSize = iLength;
171
169
  this._iThreshold = Math.max(this._iThreshold, iThreshold);
@@ -44,7 +44,7 @@ sap.ui.define([
44
44
  * @extends sap.ui.model.ClientModel
45
45
  *
46
46
  * @author SAP SE
47
- * @version 1.105.1
47
+ * @version 1.107.0
48
48
  * @public
49
49
  * @alias sap.ui.model.json.JSONModel
50
50
  */
@@ -176,15 +176,17 @@ sap.ui.define([
176
176
  * Data that is sent to the server is appended to the URL as a query string.
177
177
  * If the value of the data parameter is an object (map), it is converted to a string and
178
178
  * url-encoded before it is appended to the URL.
179
- * @param {boolean} [bAsync=true] By default, all requests are sent asynchronous.
180
- * <b>Do not use <code>bAsync=false</code></b> because synchronous requests may temporarily lock
181
- * the browser, disabling any actions while the request is active. Cross-domain requests do not
182
- * support synchronous operation.
179
+ * @param {boolean} [bAsync=true] <b>Deprecated as of Version 1.107</b>; always use asynchronous
180
+ * loading for performance reasons. By default, all requests are sent asynchronously.
181
+ * Synchronous requests may temporarily lock the browser, disabling any actions while
182
+ * the request is active. Cross-domain requests do not support synchronous operations.
183
183
  * @param {string} [sType=GET] The type of request to make ("POST" or "GET"), default is "GET".
184
184
  * Note: Other HTTP request methods, such as PUT and DELETE, can also be used here, but
185
185
  * they are not supported by all browsers.
186
186
  * @param {boolean} [bMerge=false] Whether the data should be merged instead of replaced
187
- * @param {boolean} [bCache=true] Disables caching if set to false. Default is true.
187
+ * @param {boolean} [bCache=true] <b>Deprecated as of Version 1.107</b>; always use the cache
188
+ * headers from the back-end system for performance reasons. Disables caching if set to
189
+ * <code>false</code>.
188
190
  * @param {object} [mHeaders] An object of additional header key/value pairs to send along with the request
189
191
  *
190
192
  * @return {Promise|undefined} in case bAsync is set to true a Promise is returned; this promise resolves/rejects based on the request status
@@ -383,7 +385,7 @@ sap.ui.define([
383
385
  * The path to the property
384
386
  * @param {sap.ui.model.Context} [oContext]
385
387
  * The context which will be used to retrieve the property
386
- * @return {any}
388
+ * @return {any|null|undefined}
387
389
  * The value of the property. If the property is not found, <code>null</code> or
388
390
  * <code>undefined</code> is returned.
389
391
  * @public
@@ -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.105.1
32
+ * @version 1.107.0
33
33
  *
34
34
  * @param {sap.ui.core.message.MessageManager} oMessageManager The MessageManager instance
35
35
  * @public
@@ -364,7 +364,7 @@ sap.ui.define([
364
364
  * <code>Edm.NavigationPropertyPath</code>, <code>Edm.Path</code>, or
365
365
  * <code>Edm.PropertyPath</code> embedded within an entity set or entity type;
366
366
  * the context's model must be an {@link sap.ui.model.odata.ODataMetaModel}
367
- * @returns {string}
367
+ * @returns {string|undefined}
368
368
  * the path to the entity set, or <code>undefined</code> if no such set is found. In
369
369
  * this case, a warning is logged to the console.
370
370
  * @public
@@ -412,7 +412,7 @@ sap.ui.define([
412
412
  * @param {sap.ui.model.Context} oContext
413
413
  * a context which must point to the qualified name of an entity type;
414
414
  * the context's model must be an {@link sap.ui.model.odata.ODataMetaModel}
415
- * @returns {string}
415
+ * @returns {string|undefined}
416
416
  * the path to the entity type with the given qualified name,
417
417
  * or <code>undefined</code> if no such type is found. In this case, a warning is
418
418
  * logged to the console.
@@ -449,7 +449,7 @@ sap.ui.define([
449
449
  * a context which must point to an object with a <code>String</code> property, which
450
450
  * holds the qualified name of the function import;
451
451
  * the context's model must be an {@link sap.ui.model.odata.ODataMetaModel}
452
- * @returns {string}
452
+ * @returns {string|undefined}
453
453
  * the path to the function import with the given qualified name,
454
454
  * or <code>undefined</code> if no function import is found. In this case, a warning
455
455
  * is logged to the console.
@@ -550,7 +550,7 @@ sap.ui.define([
550
550
  * <code>Edm.Path</code> or <code>Edm.PropertyPath</code>, embedded within an entity
551
551
  * set or entity type;
552
552
  * the context's model must be an {@link sap.ui.model.odata.ODataMetaModel}
553
- * @returns {string}
553
+ * @returns {string|undefined}
554
554
  * the path to the target, or <code>undefined</code> in case the path cannot be
555
555
  * resolved. In this case, a warning is logged to the console.
556
556
  * @public
@@ -12,8 +12,10 @@ sap.ui.define([
12
12
  "sap/base/util/extend",
13
13
  "sap/base/util/isEmptyObject",
14
14
  "sap/ui/base/EventProvider",
15
+ "sap/ui/core/Configuration",
15
16
  "sap/ui/thirdparty/jquery"
16
- ], function (AnnotationParser, assert, Log, extend, isEmptyObject, EventProvider, jQuery) {
17
+ ], function (AnnotationParser, assert, Log, extend, isEmptyObject, EventProvider, Configuration,
18
+ jQuery) {
17
19
  "use strict";
18
20
 
19
21
  /**
@@ -25,7 +27,7 @@ sap.ui.define([
25
27
  *
26
28
  * @author SAP SE
27
29
  * @version
28
- * 1.105.1
30
+ * 1.107.0
29
31
  *
30
32
  * @public
31
33
  * @deprecated As of version 1.66, please use {@link sap.ui.model.odata.v2.ODataAnnotations} instead.
@@ -493,7 +495,7 @@ sap.ui.define([
493
495
  url: sUrl,
494
496
  async: that.bAsync,
495
497
  headers: extend({}, that.mCustomHeaders, {
496
- "Accept-Language": sap.ui.getCore().getConfiguration().getLanguageTag() // Always overwrite
498
+ "Accept-Language": Configuration.getLanguageTag() // Always overwrite
497
499
  })
498
500
  };
499
501
 
@@ -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.105.1
87
+ * @version 1.107.0
88
88
  * @public
89
89
  * @alias sap.ui.model.odata.ODataMessageParser
90
90
  */
@@ -208,7 +208,7 @@ sap.ui.define([
208
208
  * {@link #loaded loaded} has been resolved!
209
209
  *
210
210
  * @author SAP SE
211
- * @version 1.105.1
211
+ * @version 1.107.0
212
212
  * @alias sap.ui.model.odata.ODataMetaModel
213
213
  * @extends sap.ui.model.MetaModel
214
214
  * @public
@@ -686,7 +686,7 @@ sap.ui.define([
686
686
  * "/ProductSet(1)/ToSupplier/BusinessPartnerID"; this equals the
687
687
  * <a href="http://www.odata.org/documentation/odata-version-2-0/uri-conventions#ResourcePath">
688
688
  * resource path</a> component of a URI according to OData V2 URI conventions
689
- * @returns {sap.ui.model.Context}
689
+ * @returns {sap.ui.model.Context|null}
690
690
  * the context for the corresponding metadata object, i.e. an entity type or its property,
691
691
  * or <code>null</code> in case no path is given
692
692
  * @throws {Error} in case no context can be determined
@@ -787,7 +787,7 @@ sap.ui.define([
787
787
  * an entity type as returned by {@link #getODataEntityType getODataEntityType}
788
788
  * @param {string} sName
789
789
  * the name of a navigation property within this entity type
790
- * @returns {object}
790
+ * @returns {object|null}
791
791
  * the OData association end or <code>null</code> if no such association end is found
792
792
  * @public
793
793
  */
@@ -813,7 +813,7 @@ sap.ui.define([
813
813
  * an entity type as returned by {@link #getODataEntityType getODataEntityType}
814
814
  * @param {string} sName
815
815
  * the name of a navigation property within this entity type
816
- * @returns {object}
816
+ * @returns {object|null}
817
817
  * the OData association set end or <code>null</code> if no such association set end is found
818
818
  * @public
819
819
  */
@@ -844,7 +844,7 @@ sap.ui.define([
844
844
  * a qualified name, e.g. "ACME.Address"
845
845
  * @param {boolean} [bAsPath=false]
846
846
  * determines whether the complex type is returned as a path or as an object
847
- * @returns {object|string}
847
+ * @returns {object|string|undefined|null}
848
848
  * (the path to) the complex type with the given qualified name; <code>undefined</code> (for
849
849
  * a path) or <code>null</code> (for an object) if no such type is found
850
850
  * @public
@@ -859,7 +859,7 @@ sap.ui.define([
859
859
  *
860
860
  * @param {boolean} [bAsPath=false]
861
861
  * determines whether the entity container is returned as a path or as an object
862
- * @returns {object|string}
862
+ * @returns {object|string|undefined|null}
863
863
  * (the path to) the default entity container; <code>undefined</code> (for a path) or
864
864
  * <code>null</code> (for an object) if no such container is found
865
865
  * @public
@@ -898,7 +898,7 @@ sap.ui.define([
898
898
  * a simple name, e.g. "ProductSet"
899
899
  * @param {boolean} [bAsPath=false]
900
900
  * determines whether the entity set is returned as a path or as an object
901
- * @returns {object|string}
901
+ * @returns {object|string|undefined|null}
902
902
  * (the path to) the entity set with the given simple name; <code>undefined</code> (for a
903
903
  * path) or <code>null</code> (for an object) if no such set is found
904
904
  * @public
@@ -915,7 +915,7 @@ sap.ui.define([
915
915
  * a qualified name, e.g. "ACME.Product"
916
916
  * @param {boolean} [bAsPath=false]
917
917
  * determines whether the entity type is returned as a path or as an object
918
- * @returns {object|string}
918
+ * @returns {object|string|undefined|null}
919
919
  * (the path to) the entity type with the given qualified name; <code>undefined</code> (for a
920
920
  * path) or <code>null</code> (for an object) if no such type is found
921
921
  * @public
@@ -932,7 +932,7 @@ sap.ui.define([
932
932
  * a simple or qualified name, e.g. "Save" or "MyService.Entities/Save"
933
933
  * @param {boolean} [bAsPath=false]
934
934
  * determines whether the function import is returned as a path or as an object
935
- * @returns {object|string}
935
+ * @returns {object|string|undefined|null}
936
936
  * (the path to) the function import with the given simple name; <code>undefined</code> (for
937
937
  * a path) or <code>null</code> (for an object) if no such function import is found
938
938
  * @public
@@ -1003,7 +1003,7 @@ sap.ui.define([
1003
1003
  * <b>BEWARE</b> that this array is modified by removing each part which is understood!
1004
1004
  * @param {boolean} [bAsPath=false]
1005
1005
  * determines whether the property is returned as a path or as an object
1006
- * @returns {object|string}
1006
+ * @returns {object|string|undefined|null}
1007
1007
  * (the path to) the last OData property found; <code>undefined</code> (for a path) or
1008
1008
  * <code>null</code> (for an object) if no property was found at all
1009
1009
  * @public
@@ -16,11 +16,12 @@ sap.ui.define([
16
16
  "sap/base/util/isEmptyObject",
17
17
  "sap/base/util/uid",
18
18
  "sap/ui/base/EventProvider",
19
+ "sap/ui/core/Configuration",
19
20
  "sap/ui/core/cache/CacheManager",
20
21
  "sap/ui/thirdparty/datajs"
21
22
  ],
22
- function(Utils, assert, Log, each, extend, isEmptyObject, uid, EventProvider, CacheManager,
23
- OData) {
23
+ function(Utils, assert, Log, each, extend, isEmptyObject, uid, EventProvider, Configuration,
24
+ CacheManager, OData) {
24
25
  "use strict";
25
26
  /*eslint max-nested-callbacks: 0*/
26
27
 
@@ -44,7 +45,7 @@ sap.ui.define([
44
45
  * Implementation to access OData metadata
45
46
  *
46
47
  * @author SAP SE
47
- * @version 1.105.1
48
+ * @version 1.107.0
48
49
  *
49
50
  * @public
50
51
  * @alias sap.ui.model.odata.ODataMetadata
@@ -1275,7 +1276,7 @@ sap.ui.define([
1275
1276
  "sap-cancel-on-close": true
1276
1277
  },
1277
1278
  oLangHeader = {
1278
- "Accept-Language": sap.ui.getCore().getConfiguration().getLanguageTag()
1279
+ "Accept-Language": Configuration.getLanguageTag()
1279
1280
  };
1280
1281
 
1281
1282
  extend(oDefaultHeaders, this.mHeaders, oLangHeader);
@@ -30,6 +30,7 @@ sap.ui.define([
30
30
  "sap/base/util/isPlainObject",
31
31
  "sap/base/util/merge",
32
32
  "sap/base/util/uid",
33
+ "sap/ui/core/Configuration",
33
34
  "sap/ui/model/BindingMode",
34
35
  "sap/ui/model/Context",
35
36
  "sap/ui/model/FilterProcessor",
@@ -40,8 +41,8 @@ sap.ui.define([
40
41
  "sap/ui/thirdparty/URI"
41
42
  ], function(CountMode, ODataContextBinding, ODataListBinding, ODataMetadata, ODataPropertyBinding,
42
43
  ODataTreeBinding, ODataUtils, assert, Log, encodeURL, each, extend, isEmptyObject,
43
- isPlainObject, merge, uid, BindingMode, Context, FilterProcessor, Model, ODataAnnotations,
44
- ODataMetaModel, OData, URI) {
44
+ isPlainObject, merge, uid, Configuration, BindingMode, Context, FilterProcessor, Model,
45
+ ODataAnnotations, ODataMetaModel, OData, URI) {
45
46
  "use strict";
46
47
 
47
48
  /**
@@ -76,7 +77,7 @@ sap.ui.define([
76
77
  *
77
78
  *
78
79
  * @author SAP SE
79
- * @version 1.105.1
80
+ * @version 1.107.0
80
81
  *
81
82
  * @public
82
83
  * @deprecated As of version 1.48, please use {@link sap.ui.model.odata.v2.ODataModel} instead.
@@ -168,7 +169,7 @@ sap.ui.define([
168
169
  }
169
170
  }
170
171
 
171
- if (sap.ui.getCore().getConfiguration().getStatistics()) {
172
+ if (Configuration.getStatisticsEnabled()) {
172
173
  // add statistics parameter to every request (supported only on Gateway servers)
173
174
  this.aUrlParams.push("sap-statistics=true");
174
175
  }
@@ -193,7 +194,7 @@ sap.ui.define([
193
194
  this.sUser = sUser;
194
195
  this.sPassword = sPassword;
195
196
 
196
- this.oHeaders["Accept-Language"] = sap.ui.getCore().getConfiguration().getLanguageTag();
197
+ this.oHeaders["Accept-Language"] = Configuration.getLanguageTag();
197
198
 
198
199
  if (!this.oServiceData.oMetadata) {
199
200
  //create Metadata object
@@ -156,7 +156,6 @@ sap.ui.define([
156
156
  return [];
157
157
  }
158
158
 
159
- // make sure the input parameters are not undefined
160
159
  iStartIndex = iStartIndex || 0;
161
160
  iLength = iLength || this.oModel.iSizeLimit;
162
161
  iThreshold = iThreshold || 0;
@@ -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.105.1
90
+ * @version 1.107.0
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.105.1
27
+ * @version 1.107.0
28
28
  *
29
29
  * @alias sap.ui.model.odata.type.Byte
30
30
  * @param {object} [oFormatOptions]
@@ -61,7 +61,7 @@ sap.ui.define([
61
61
  * @extends sap.ui.model.type.Currency
62
62
  * @public
63
63
  * @since 1.63.0
64
- * @version 1.105.1
64
+ * @version 1.107.0
65
65
  */
66
66
  var Currency = BaseCurrency.extend("sap.ui.model.odata.type.Currency", {
67
67
  constructor : function (oFormatOptions, oConstraints) {
@@ -106,7 +106,7 @@ sap.ui.define([
106
106
  * @extends sap.ui.model.odata.type.ODataType
107
107
  *
108
108
  * @author SAP SE
109
- * @version 1.105.1
109
+ * @version 1.107.0
110
110
  *
111
111
  * @alias sap.ui.model.odata.type.Date
112
112
  * @param {object} [oFormatOptions]
@@ -59,7 +59,7 @@ sap.ui.define([
59
59
  * @extends sap.ui.model.odata.type.DateTimeBase
60
60
  *
61
61
  * @author SAP SE
62
- * @version 1.105.1
62
+ * @version 1.107.0
63
63
  *
64
64
  * @alias sap.ui.model.odata.type.DateTime
65
65
  * @param {object} [oFormatOptions]
@@ -132,7 +132,7 @@ sap.ui.define([
132
132
  * @extends sap.ui.model.odata.type.ODataType
133
133
  * @public
134
134
  * @since 1.27.0
135
- * @version 1.105.1
135
+ * @version 1.107.0
136
136
  */
137
137
  var DateTimeBase = ODataType.extend("sap.ui.model.odata.type.DateTimeBase", {
138
138
  constructor : function (oFormatOptions, oConstraints) {
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @extends sap.ui.model.odata.type.DateTimeBase
29
29
  *
30
30
  * @author SAP SE
31
- * @version 1.105.1
31
+ * @version 1.107.0
32
32
  *
33
33
  * @alias sap.ui.model.odata.type.DateTimeOffset
34
34
  * @param {object} [oFormatOptions]
@@ -60,7 +60,7 @@ sap.ui.define([
60
60
  * @public
61
61
  * @see {sap.ui.model.odata.v2.ODataModel#bindProperty}
62
62
  * @since 1.99.0
63
- * @version 1.105.1
63
+ * @version 1.107.0
64
64
  */
65
65
  var DateTimeWithTimezone = CompositeType.extend("sap.ui.model.odata.type.DateTimeWithTimezone",
66
66
  {
@@ -201,7 +201,7 @@ sap.ui.define([
201
201
  * @extends sap.ui.model.odata.type.ODataType
202
202
  *
203
203
  * @author SAP SE
204
- * @version 1.105.1
204
+ * @version 1.107.0
205
205
  *
206
206
  * @alias sap.ui.model.odata.type.Decimal
207
207
  * @param {object} [oFormatOptions]
@@ -95,7 +95,7 @@ sap.ui.define([
95
95
  * @extends sap.ui.model.odata.type.ODataType
96
96
  *
97
97
  * @author SAP SE
98
- * @version 1.105.1
98
+ * @version 1.107.0
99
99
  *
100
100
  * @alias sap.ui.model.odata.type.Double
101
101
  * @param {object} [oFormatOptions]