@openui5/sap.ui.core 1.124.1 → 1.125.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 (641) hide show
  1. package/.reuse/dep5 +5 -0
  2. package/THIRDPARTY.txt +7 -0
  3. package/package.json +1 -1
  4. package/src/jquery.sap.global.js +4 -4
  5. package/src/jquery.sap.properties.js +2 -2
  6. package/src/jquery.sap.resources.js +1 -1
  7. package/src/jquery.sap.script.js +1 -1
  8. package/src/jquery.sap.storage.js +3 -3
  9. package/src/jquery.sap.ui.js +6 -2
  10. package/src/sap/base/Event.js +1 -1
  11. package/src/sap/base/Eventing.js +1 -1
  12. package/src/sap/base/config.js +1 -1
  13. package/src/sap/base/i18n/LanguageTag.js +1 -1
  14. package/src/sap/base/i18n/date/TimezoneUtils.js +1 -1
  15. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  16. package/src/sap/base/util/restricted/_castArray.js +1 -1
  17. package/src/sap/base/util/restricted/_compact.js +1 -1
  18. package/src/sap/base/util/restricted/_curry.js +1 -1
  19. package/src/sap/base/util/restricted/_debounce.js +1 -1
  20. package/src/sap/base/util/restricted/_difference.js +1 -1
  21. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  22. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  23. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  24. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  25. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  26. package/src/sap/base/util/restricted/_flatten.js +1 -1
  27. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  28. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  29. package/src/sap/base/util/restricted/_intersection.js +1 -1
  30. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  31. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  32. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  33. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  34. package/src/sap/base/util/restricted/_isNil.js +1 -1
  35. package/src/sap/base/util/restricted/_max.js +1 -1
  36. package/src/sap/base/util/restricted/_merge.js +1 -1
  37. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  38. package/src/sap/base/util/restricted/_min.js +1 -1
  39. package/src/sap/base/util/restricted/_omit.js +1 -1
  40. package/src/sap/base/util/restricted/_pick.js +1 -1
  41. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  42. package/src/sap/base/util/restricted/_throttle.js +1 -1
  43. package/src/sap/base/util/restricted/_toArray.js +1 -1
  44. package/src/sap/base/util/restricted/_union.js +1 -1
  45. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  46. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  47. package/src/sap/base/util/restricted/_uniq.js +1 -1
  48. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  49. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  50. package/src/sap/base/util/restricted/_without.js +1 -1
  51. package/src/sap/base/util/restricted/_xor.js +1 -1
  52. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  53. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  54. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  55. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  56. package/src/sap/ui/Device.js +3 -3
  57. package/src/sap/ui/Global.js +4 -4
  58. package/src/sap/ui/base/Event.js +1 -1
  59. package/src/sap/ui/base/EventProvider.js +1 -1
  60. package/src/sap/ui/base/Interface.js +1 -1
  61. package/src/sap/ui/base/ManagedObject.js +1 -1
  62. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  63. package/src/sap/ui/base/Metadata.js +1 -1
  64. package/src/sap/ui/base/Object.js +1 -1
  65. package/src/sap/ui/base/ObjectPool.js +1 -1
  66. package/src/sap/ui/core/.library +3 -3
  67. package/src/sap/ui/core/BusyIndicator.js +1 -1
  68. package/src/sap/ui/core/Component.js +6 -3
  69. package/src/sap/ui/core/ComponentContainer.js +1 -1
  70. package/src/sap/ui/core/ComponentMetadata.js +1 -1
  71. package/src/sap/ui/core/ComponentSupport.js +1 -1
  72. package/src/sap/ui/core/Configuration.js +1 -1
  73. package/src/sap/ui/core/Control.js +1 -1
  74. package/src/sap/ui/core/Core.js +18 -25
  75. package/src/sap/ui/core/CustomData.js +1 -1
  76. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  77. package/src/sap/ui/core/Element.js +1 -1
  78. package/src/sap/ui/core/ElementMetadata.js +4 -3
  79. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  80. package/src/sap/ui/core/EventBus.js +1 -1
  81. package/src/sap/ui/core/ExtensionPoint.js +23 -9
  82. package/src/sap/ui/core/Fragment.js +15 -1
  83. package/src/sap/ui/core/HTML.js +1 -1
  84. package/src/sap/ui/core/History.js +1 -1
  85. package/src/sap/ui/core/Icon.js +84 -50
  86. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  87. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  88. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  89. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  90. package/src/sap/ui/core/InvisibleText.js +1 -1
  91. package/src/sap/ui/core/Item.js +1 -1
  92. package/src/sap/ui/core/LabelEnablement.js +66 -1
  93. package/src/sap/ui/core/LayoutData.js +1 -1
  94. package/src/sap/ui/core/ListItem.js +1 -1
  95. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  96. package/src/sap/ui/core/Locale.js +1 -1
  97. package/src/sap/ui/core/LocaleData.js +1 -1
  98. package/src/sap/ui/core/Manifest.js +1 -1
  99. package/src/sap/ui/core/Message.js +1 -1
  100. package/src/sap/ui/core/RenderManager.js +1 -1
  101. package/src/sap/ui/core/Renderer.js +1 -1
  102. package/src/sap/ui/core/ResizeHandler.js +1 -1
  103. package/src/sap/ui/core/ScrollBar.js +1 -1
  104. package/src/sap/ui/core/SeparatorItem.js +1 -1
  105. package/src/sap/ui/core/Title.js +1 -1
  106. package/src/sap/ui/core/TooltipBase.js +1 -1
  107. package/src/sap/ui/core/UIArea.js +5 -5
  108. package/src/sap/ui/core/UIComponent.js +23 -16
  109. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  110. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  111. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  112. package/src/sap/ui/core/XMLComposite.js +1 -1
  113. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  114. package/src/sap/ui/core/XMLTemplateProcessor.js +110 -74
  115. package/src/sap/ui/core/cldr/zh_TW.json +20 -20
  116. package/src/sap/ui/core/date/UI5Date.js +1 -1
  117. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  118. package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
  119. package/src/sap/ui/core/dnd/DragAndDrop.js +29 -23
  120. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  121. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  122. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  123. package/src/sap/ui/core/dnd/DropInfo.js +6 -3
  124. package/src/sap/ui/core/format/DateFormat.js +3 -3
  125. package/src/sap/ui/core/format/FormatUtils.js +1 -1
  126. package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
  127. package/src/sap/ui/core/getCompatibilityVersion.js +1 -1
  128. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  129. package/src/sap/ui/core/library.js +3 -3
  130. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  131. package/src/sap/ui/core/message/Message.js +1 -1
  132. package/src/sap/ui/core/message/MessageManager.js +1 -1
  133. package/src/sap/ui/core/message/MessageParser.js +1 -1
  134. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  135. package/src/sap/ui/core/mvc/Controller.js +77 -77
  136. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  137. package/src/sap/ui/core/mvc/JSONView.js +1 -1
  138. package/src/sap/ui/core/mvc/JSView.js +1 -1
  139. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  140. package/src/sap/ui/core/mvc/View.js +10 -2
  141. package/src/sap/ui/core/mvc/XMLProcessingMode.js +4 -1
  142. package/src/sap/ui/core/mvc/XMLView.js +33 -5
  143. package/src/sap/ui/core/mvc/XMLViewRenderer.js +40 -7
  144. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  145. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  146. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  147. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  148. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  149. package/src/sap/ui/core/routing/async/TargetCache.js +12 -1
  150. package/src/sap/ui/core/search/OpenSearchProvider.js +2 -2
  151. package/src/sap/ui/core/search/SearchProvider.js +2 -2
  152. package/src/sap/ui/core/service/Service.js +1 -1
  153. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  154. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  155. package/src/sap/ui/core/support/Plugin.js +1 -1
  156. package/src/sap/ui/core/support/Support.js +1 -1
  157. package/src/sap/ui/core/support/bootstrapFallback.js +1 -1
  158. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  159. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  160. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  161. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  162. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  163. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  164. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  165. package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
  166. package/src/sap/ui/core/theming/Parameters.js +2 -2
  167. package/src/sap/ui/core/tmpl/DOMAttribute.js +2 -2
  168. package/src/sap/ui/core/tmpl/DOMElement.js +2 -2
  169. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +2 -2
  170. package/src/sap/ui/core/tmpl/Template.js +1 -1
  171. package/src/sap/ui/core/tmpl/TemplateControl.js +2 -2
  172. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  173. package/src/sap/ui/core/util/Export.js +1 -1
  174. package/src/sap/ui/core/util/ExportCell.js +1 -1
  175. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  176. package/src/sap/ui/core/util/ExportRow.js +1 -1
  177. package/src/sap/ui/core/util/ExportType.js +1 -1
  178. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  179. package/src/sap/ui/core/util/File.js +1 -1
  180. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  181. package/src/sap/ui/core/util/MockServer.js +1 -1
  182. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  183. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  184. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  185. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  186. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  187. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  188. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  189. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  190. package/src/sap/ui/core/webc/WebComponent.js +1 -1
  191. package/src/sap/ui/core/webc/WebComponentMetadata.js +1 -1
  192. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  193. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  194. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  195. package/src/sap/ui/debug/ControlTree.js +1 -1
  196. package/src/sap/ui/debug/DebugEnv.js +1 -1
  197. package/src/sap/ui/debug/PropertyList.js +1 -1
  198. package/src/sap/ui/dom/jquery/control.js +6 -3
  199. package/src/sap/ui/model/Binding.js +10 -0
  200. package/src/sap/ui/model/ClientModel.js +1 -1
  201. package/src/sap/ui/model/CompositeDataState.js +1 -1
  202. package/src/sap/ui/model/CompositeType.js +1 -1
  203. package/src/sap/ui/model/DataState.js +1 -1
  204. package/src/sap/ui/model/FieldHelp.js +362 -0
  205. package/src/sap/ui/model/MetaModel.js +1 -1
  206. package/src/sap/ui/model/Model.js +1 -1
  207. package/src/sap/ui/model/SelectionModel.js +1 -1
  208. package/src/sap/ui/model/SimpleType.js +1 -1
  209. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  210. package/src/sap/ui/model/Type.js +1 -1
  211. package/src/sap/ui/model/analytics/AnalyticalBinding.js +8 -12
  212. package/src/sap/ui/model/json/JSONModel.js +6 -5
  213. package/src/sap/ui/model/message/MessageModel.js +1 -1
  214. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  215. package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
  216. package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
  217. package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
  218. package/src/sap/ui/model/odata/ODataModel.js +1 -1
  219. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  220. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  221. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  222. package/src/sap/ui/model/odata/type/Date.js +1 -1
  223. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  224. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  225. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  226. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  227. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  228. package/src/sap/ui/model/odata/type/Double.js +1 -1
  229. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  230. package/src/sap/ui/model/odata/type/Int.js +1 -1
  231. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  232. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  233. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  234. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  235. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  236. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  237. package/src/sap/ui/model/odata/type/Single.js +1 -1
  238. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  239. package/src/sap/ui/model/odata/type/String.js +1 -1
  240. package/src/sap/ui/model/odata/type/Time.js +1 -1
  241. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  242. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  243. package/src/sap/ui/model/odata/v2/Context.js +1 -1
  244. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  245. package/src/sap/ui/model/odata/v2/ODataModel.js +50 -6
  246. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
  247. package/src/sap/ui/model/odata/v4/Context.js +45 -13
  248. package/src/sap/ui/model/odata/v4/ODataBinding.js +20 -20
  249. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +68 -68
  250. package/src/sap/ui/model/odata/v4/ODataListBinding.js +283 -212
  251. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +41 -39
  252. package/src/sap/ui/model/odata/v4/ODataModel.js +236 -209
  253. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +202 -202
  254. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +1 -1
  255. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +90 -20
  256. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +5 -0
  257. package/src/sap/ui/model/odata/v4/lib/_Cache.js +38 -42
  258. package/src/sap/ui/model/odata/v4/lib/_Helper.js +93 -68
  259. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +78 -78
  260. package/src/sap/ui/model/odata/v4/lib/_TreeState.js +1 -1
  261. package/src/sap/ui/model/odata/v4/lib/_V2MetadataConverter.js +20 -20
  262. package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +60 -60
  263. package/src/sap/ui/model/resource/ResourceModel.js +7 -2
  264. package/src/sap/ui/model/type/Boolean.js +1 -1
  265. package/src/sap/ui/model/type/Currency.js +1 -1
  266. package/src/sap/ui/model/type/Date.js +1 -1
  267. package/src/sap/ui/model/type/DateInterval.js +1 -1
  268. package/src/sap/ui/model/type/DateTime.js +1 -1
  269. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  270. package/src/sap/ui/model/type/FileSize.js +1 -1
  271. package/src/sap/ui/model/type/Float.js +1 -1
  272. package/src/sap/ui/model/type/Integer.js +1 -1
  273. package/src/sap/ui/model/type/String.js +1 -1
  274. package/src/sap/ui/model/type/Time.js +1 -1
  275. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  276. package/src/sap/ui/model/type/Unit.js +1 -1
  277. package/src/sap/ui/model/xml/XMLModel.js +1 -1
  278. package/src/sap/ui/qunit/qunit-coverage-istanbul.js +1 -1
  279. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  280. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  281. package/src/sap/ui/test/OpaPlugin.js +36 -12
  282. package/src/sap/ui/test/generic/TestBase.js +1 -1
  283. package/src/sap/ui/util/Storage.js +1 -1
  284. package/test/sap/ui/core/BindableResponseHeaders.html +4 -4
  285. package/test/sap/ui/core/ComponentCleanup.html +46 -46
  286. package/test/sap/ui/core/ComponentManifestFirst.html +26 -20
  287. package/test/sap/ui/core/ContextMenuSupport.html +9 -10
  288. package/test/sap/ui/core/DesigntimeOverview.html +1 -1
  289. package/test/sap/ui/core/EventBroadcaster.html +2 -2
  290. package/test/sap/ui/core/FieldGroup.html +70 -61
  291. package/test/sap/ui/core/GenericEventBinding.html +26 -23
  292. package/test/sap/ui/core/HTMLControl.html +46 -38
  293. package/test/sap/ui/core/HTMLSanitizer.html +70 -45
  294. package/test/sap/ui/core/IntervalTrigger.html +22 -21
  295. package/test/sap/ui/core/InvisibleControls.html +72 -72
  296. package/test/sap/ui/core/InvisibleText.html +2 -2
  297. package/test/sap/ui/core/LRUPersistentCache.html +19 -18
  298. package/test/sap/ui/core/LabelEnablement.html +18 -29
  299. package/test/sap/ui/core/Localization.html +40 -65
  300. package/test/sap/ui/core/Localization_HeapUsage.html +11 -12
  301. package/test/sap/ui/core/ManagedObjectModel.html +6 -7
  302. package/test/sap/ui/core/ODataAnnotationsPerformance.html +592 -602
  303. package/test/sap/ui/core/ODataV2CanonicalRequests.html +8 -8
  304. package/test/sap/ui/core/ODataV2Messages.html +1 -1
  305. package/test/sap/ui/core/ODataV2MessagesPerf.html +131 -132
  306. package/test/sap/ui/core/Popup.html +18 -14
  307. package/test/sap/ui/core/PopupWithUserSelection.html +4 -4
  308. package/test/sap/ui/core/StashedControlSupport.html +1 -1
  309. package/test/sap/ui/core/ThemeParameters.html +32 -20
  310. package/test/sap/ui/core/ValidateURL.html +109 -75
  311. package/test/sap/ui/core/demokit/sample/Messaging/ODataBackendMessagesComp/ui5.yaml +1 -1
  312. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/Component.js +1 -4
  313. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/Detail.controller.js +0 -1
  314. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/Main.controller.js +0 -1
  315. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/Opa.qunit.html +0 -1
  316. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/extension/Component.js +1 -5
  317. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/manifest.json +2 -10
  318. package/test/sap/ui/core/demokit/sample/ViewTemplate/tiny/Component.js +4 -1
  319. package/test/sap/ui/core/demokit/sample/ViewTemplate/tiny/manifest.json +37 -0
  320. package/test/sap/ui/core/demokit/sample/ViewTemplate/types/Component.js +5 -1
  321. package/test/sap/ui/core/demokit/sample/ViewTemplate/types/manifest.json +42 -0
  322. package/test/sap/ui/core/demokit/sample/ViewTemplate/valuelist/Component.js +6 -3
  323. package/test/sap/ui/core/demokit/sample/ViewTemplate/valuelist/Main.view.xml +4 -1
  324. package/test/sap/ui/core/demokit/sample/ViewTemplate/valuelist/manifest.json +49 -0
  325. package/test/sap/ui/core/demokit/sample/matcher/BindingPath/ui5.yaml +1 -1
  326. package/test/sap/ui/core/demokit/sample/matcher/Descendant/ui5.yaml +1 -1
  327. package/test/sap/ui/core/demokit/sample/matcher/I18NText/ui5.yaml +1 -1
  328. package/test/sap/ui/core/demokit/sample/matcher/LabelFor/ui5.yaml +1 -1
  329. package/test/sap/ui/core/demokit/sample/odata/types/v2/DateTime/Component.js +1 -0
  330. package/test/sap/ui/core/demokit/sample/odata/types/v2/DateTime/manifest.json +1 -2
  331. package/test/sap/ui/core/demokit/sample/odata/types/v2/DateTimeOffset/Component.js +1 -0
  332. package/test/sap/ui/core/demokit/sample/odata/types/v2/DateTimeOffset/manifest.json +1 -2
  333. package/test/sap/ui/core/demokit/sample/odata/types/v2/Time/Component.js +1 -0
  334. package/test/sap/ui/core/demokit/sample/odata/types/v2/Time/manifest.json +1 -2
  335. package/test/sap/ui/core/demokit/sample/odata/types/v4/Date/Component.js +1 -0
  336. package/test/sap/ui/core/demokit/sample/odata/types/v4/Date/manifest.json +1 -2
  337. package/test/sap/ui/core/demokit/sample/odata/types/v4/DateTimeOffset/Component.js +1 -0
  338. package/test/sap/ui/core/demokit/sample/odata/types/v4/DateTimeOffset/manifest.json +1 -2
  339. package/test/sap/ui/core/demokit/sample/odata/types/v4/TimeOfDay/Component.js +1 -0
  340. package/test/sap/ui/core/demokit/sample/odata/types/v4/TimeOfDay/manifest.json +1 -2
  341. package/test/sap/ui/core/demokit/sample/odata/v4/Ancestry/Component.js +1 -0
  342. package/test/sap/ui/core/demokit/sample/odata/v4/Ancestry/Main.controller.js +35 -31
  343. package/test/sap/ui/core/demokit/sample/odata/v4/Ancestry/manifest.json +1 -10
  344. package/test/sap/ui/core/demokit/sample/odata/v4/ConsumeV2Service/Component.js +1 -0
  345. package/test/sap/ui/core/demokit/sample/odata/v4/ConsumeV2Service/manifest.json +2 -11
  346. package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/Component.js +1 -0
  347. package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/DataAggregation.controller.js +71 -68
  348. package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/Opa.qunit.html +0 -1
  349. package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/manifest.json +3 -11
  350. package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Component.js +1 -0
  351. package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Opa.qunit.html +0 -1
  352. package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/manifest.json +7 -16
  353. package/test/sap/ui/core/demokit/sample/odata/v4/Draft/Component.js +1 -0
  354. package/test/sap/ui/core/demokit/sample/odata/v4/Draft/Main.controller.js +3 -3
  355. package/test/sap/ui/core/demokit/sample/odata/v4/Draft/Opa.qunit.html +0 -1
  356. package/test/sap/ui/core/demokit/sample/odata/v4/Draft/manifest.json +1 -10
  357. package/test/sap/ui/core/demokit/sample/odata/v4/FieldGroups/Component.js +1 -0
  358. package/test/sap/ui/core/demokit/sample/odata/v4/FieldGroups/FieldGroups.view.xml +0 -1
  359. package/test/sap/ui/core/demokit/sample/odata/v4/FieldGroups/Opa.qunit.html +0 -1
  360. package/test/sap/ui/core/demokit/sample/odata/v4/FieldGroups/manifest.json +3 -11
  361. package/test/sap/ui/core/demokit/sample/odata/v4/FlatDataAggregation/Component.js +1 -0
  362. package/test/sap/ui/core/demokit/sample/odata/v4/FlatDataAggregation/FlatDataAggregation.controller.js +46 -43
  363. package/test/sap/ui/core/demokit/sample/odata/v4/FlatDataAggregation/FlatDataAggregation.view.xml +12 -10
  364. package/test/sap/ui/core/demokit/sample/odata/v4/FlatDataAggregation/manifest.json +3 -11
  365. package/test/sap/ui/core/demokit/sample/odata/v4/FlexibleColumnLayout/Component.js +1 -0
  366. package/test/sap/ui/core/demokit/sample/odata/v4/FlexibleColumnLayout/Main.controller.js +21 -18
  367. package/test/sap/ui/core/demokit/sample/odata/v4/FlexibleColumnLayout/Opa.qunit.html +0 -1
  368. package/test/sap/ui/core/demokit/sample/odata/v4/FlexibleColumnLayout/manifest.json +4 -7
  369. package/test/sap/ui/core/demokit/sample/odata/v4/GridTable/Component.js +1 -0
  370. package/test/sap/ui/core/demokit/sample/odata/v4/GridTable/manifest.json +1 -10
  371. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Component.js +1 -0
  372. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.controller.js +21 -18
  373. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/manifest.json +1 -10
  374. package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Component.js +1 -0
  375. package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Main.controller.js +25 -22
  376. package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Opa.OptimisticBatch.qunit.html +0 -1
  377. package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Opa.OptimisticBatch.qunit.js +5 -4
  378. package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Opa.qunit.html +0 -1
  379. package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/manifest.json +3 -7
  380. package/test/sap/ui/core/demokit/sample/odata/v4/ListBinding/Component.js +1 -0
  381. package/test/sap/ui/core/demokit/sample/odata/v4/ListBinding/Opa.qunit.html +0 -1
  382. package/test/sap/ui/core/demokit/sample/odata/v4/ListBinding/manifest.json +3 -11
  383. package/test/sap/ui/core/demokit/sample/odata/v4/ListBindingTemplate/Component.js +1 -0
  384. package/test/sap/ui/core/demokit/sample/odata/v4/ListBindingTemplate/Opa.qunit.html +0 -1
  385. package/test/sap/ui/core/demokit/sample/odata/v4/ListBindingTemplate/manifest.json +2 -10
  386. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Component.js +1 -0
  387. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Main.controller.js +60 -57
  388. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Opa.qunit.html +0 -1
  389. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/manifest.json +4 -6
  390. package/test/sap/ui/core/demokit/sample/odata/v4/MusicArtists/Component.js +1 -0
  391. package/test/sap/ui/core/demokit/sample/odata/v4/MusicArtists/manifest.json +3 -11
  392. package/test/sap/ui/core/demokit/sample/odata/v4/Products/Component.js +1 -0
  393. package/test/sap/ui/core/demokit/sample/odata/v4/Products/Main.view.xml +0 -1
  394. package/test/sap/ui/core/demokit/sample/odata/v4/Products/Opa.qunit.html +0 -1
  395. package/test/sap/ui/core/demokit/sample/odata/v4/Products/manifest.json +3 -10
  396. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/Component.js +1 -0
  397. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/Opa.qunit.html +0 -1
  398. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.controller.js +81 -69
  399. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.view.xml +44 -9
  400. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/SandboxModel.js +49 -0
  401. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/data/metadata.xml +14 -0
  402. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/manifest.json +1 -10
  403. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V2/Component.js +1 -0
  404. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V2/Opa.qunit.html +0 -1
  405. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V2/manifest.json +2 -11
  406. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V4/Component.js +1 -0
  407. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V4/Opa.qunit.html +0 -1
  408. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V4/manifest.json +2 -11
  409. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Component.js +1 -2
  410. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Opa.qunit.html +0 -1
  411. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/manifest.json +3 -10
  412. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersRTATest/Component.js +1 -0
  413. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersRTATest/Opa.qunit.html +0 -1
  414. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersRTATest/manifest.json +6 -5
  415. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersTemplate/Component.js +1 -0
  416. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersTemplate/Opa.qunit.html +0 -1
  417. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersTemplate/manifest.json +2 -10
  418. package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/Component.js +1 -0
  419. package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/Opa.qunit.html +0 -1
  420. package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/manifest.json +3 -10
  421. package/test/sap/ui/core/demokit/sample/odata/v4/Sticky/Opa.qunit.html +0 -1
  422. package/test/sap/ui/core/demokit/sample/odata/v4/Sticky/manifest.json +3 -11
  423. package/test/sap/ui/core/demokit/tutorial/databinding/01/ui5.yaml +1 -1
  424. package/test/sap/ui/core/demokit/tutorial/databinding/02/ui5.yaml +1 -1
  425. package/test/sap/ui/core/demokit/tutorial/databinding/03/ui5.yaml +1 -1
  426. package/test/sap/ui/core/demokit/tutorial/databinding/04/ui5.yaml +1 -1
  427. package/test/sap/ui/core/demokit/tutorial/databinding/05/ui5.yaml +1 -1
  428. package/test/sap/ui/core/demokit/tutorial/databinding/06/ui5.yaml +1 -1
  429. package/test/sap/ui/core/demokit/tutorial/databinding/07/ui5.yaml +1 -1
  430. package/test/sap/ui/core/demokit/tutorial/databinding/08/ui5.yaml +1 -1
  431. package/test/sap/ui/core/demokit/tutorial/databinding/09/ui5.yaml +1 -1
  432. package/test/sap/ui/core/demokit/tutorial/databinding/10/ui5.yaml +1 -1
  433. package/test/sap/ui/core/demokit/tutorial/databinding/11/ui5.yaml +1 -1
  434. package/test/sap/ui/core/demokit/tutorial/databinding/12/ui5.yaml +1 -1
  435. package/test/sap/ui/core/demokit/tutorial/databinding/13/ui5.yaml +1 -1
  436. package/test/sap/ui/core/demokit/tutorial/databinding/14/ui5.yaml +1 -1
  437. package/test/sap/ui/core/demokit/tutorial/databinding/15/ui5.yaml +1 -1
  438. package/test/sap/ui/core/demokit/tutorial/mockserver/01/ui5.yaml +1 -1
  439. package/test/sap/ui/core/demokit/tutorial/mockserver/02/ui5.yaml +1 -1
  440. package/test/sap/ui/core/demokit/tutorial/mockserver/03/ui5.yaml +1 -1
  441. package/test/sap/ui/core/demokit/tutorial/mockserver/04/ui5.yaml +1 -1
  442. package/test/sap/ui/core/demokit/tutorial/navigation/01/ui5.yaml +1 -1
  443. package/test/sap/ui/core/demokit/tutorial/navigation/02/ui5.yaml +1 -1
  444. package/test/sap/ui/core/demokit/tutorial/navigation/03/ui5.yaml +1 -1
  445. package/test/sap/ui/core/demokit/tutorial/navigation/04/ui5.yaml +1 -1
  446. package/test/sap/ui/core/demokit/tutorial/navigation/05/ui5.yaml +1 -1
  447. package/test/sap/ui/core/demokit/tutorial/navigation/06/ui5.yaml +1 -1
  448. package/test/sap/ui/core/demokit/tutorial/navigation/07/ui5.yaml +1 -1
  449. package/test/sap/ui/core/demokit/tutorial/navigation/08/ui5.yaml +1 -1
  450. package/test/sap/ui/core/demokit/tutorial/navigation/09/ui5.yaml +1 -1
  451. package/test/sap/ui/core/demokit/tutorial/navigation/10/ui5.yaml +1 -1
  452. package/test/sap/ui/core/demokit/tutorial/navigation/11/ui5.yaml +1 -1
  453. package/test/sap/ui/core/demokit/tutorial/navigation/12/ui5.yaml +1 -1
  454. package/test/sap/ui/core/demokit/tutorial/navigation/13/ui5.yaml +1 -1
  455. package/test/sap/ui/core/demokit/tutorial/navigation/14/ui5.yaml +1 -1
  456. package/test/sap/ui/core/demokit/tutorial/navigation/15/ui5.yaml +1 -1
  457. package/test/sap/ui/core/demokit/tutorial/navigation/16/ui5.yaml +1 -1
  458. package/test/sap/ui/core/demokit/tutorial/navigation/17/ui5.yaml +1 -1
  459. package/test/sap/ui/core/demokit/tutorial/odatav4/01/Component.js +1 -0
  460. package/test/sap/ui/core/demokit/tutorial/odatav4/01/ui5.yaml +1 -1
  461. package/test/sap/ui/core/demokit/tutorial/odatav4/01/webapp/Component.js +1 -0
  462. package/test/sap/ui/core/demokit/tutorial/odatav4/01/webapp/index.html +0 -1
  463. package/test/sap/ui/core/demokit/tutorial/odatav4/01/webapp/manifest.json +2 -13
  464. package/test/sap/ui/core/demokit/tutorial/odatav4/02/Component.js +1 -0
  465. package/test/sap/ui/core/demokit/tutorial/odatav4/02/ui5.yaml +1 -1
  466. package/test/sap/ui/core/demokit/tutorial/odatav4/02/webapp/Component.js +1 -0
  467. package/test/sap/ui/core/demokit/tutorial/odatav4/02/webapp/index.html +0 -1
  468. package/test/sap/ui/core/demokit/tutorial/odatav4/02/webapp/manifest.json +2 -13
  469. package/test/sap/ui/core/demokit/tutorial/odatav4/03/Component.js +1 -0
  470. package/test/sap/ui/core/demokit/tutorial/odatav4/03/ui5.yaml +1 -1
  471. package/test/sap/ui/core/demokit/tutorial/odatav4/03/webapp/Component.js +1 -0
  472. package/test/sap/ui/core/demokit/tutorial/odatav4/03/webapp/index.html +0 -1
  473. package/test/sap/ui/core/demokit/tutorial/odatav4/03/webapp/manifest.json +2 -13
  474. package/test/sap/ui/core/demokit/tutorial/odatav4/04/Component.js +1 -0
  475. package/test/sap/ui/core/demokit/tutorial/odatav4/04/ui5.yaml +1 -1
  476. package/test/sap/ui/core/demokit/tutorial/odatav4/04/webapp/Component.js +1 -0
  477. package/test/sap/ui/core/demokit/tutorial/odatav4/04/webapp/index.html +0 -1
  478. package/test/sap/ui/core/demokit/tutorial/odatav4/04/webapp/manifest.json +2 -13
  479. package/test/sap/ui/core/demokit/tutorial/odatav4/05/Component.js +1 -0
  480. package/test/sap/ui/core/demokit/tutorial/odatav4/05/ui5.yaml +1 -1
  481. package/test/sap/ui/core/demokit/tutorial/odatav4/05/webapp/Component.js +1 -0
  482. package/test/sap/ui/core/demokit/tutorial/odatav4/05/webapp/index.html +0 -1
  483. package/test/sap/ui/core/demokit/tutorial/odatav4/05/webapp/manifest.json +2 -13
  484. package/test/sap/ui/core/demokit/tutorial/odatav4/06/Component.js +1 -0
  485. package/test/sap/ui/core/demokit/tutorial/odatav4/06/ui5.yaml +1 -1
  486. package/test/sap/ui/core/demokit/tutorial/odatav4/06/webapp/Component.js +1 -0
  487. package/test/sap/ui/core/demokit/tutorial/odatav4/06/webapp/index.html +0 -1
  488. package/test/sap/ui/core/demokit/tutorial/odatav4/06/webapp/manifest.json +2 -13
  489. package/test/sap/ui/core/demokit/tutorial/odatav4/07/Component.js +1 -0
  490. package/test/sap/ui/core/demokit/tutorial/odatav4/07/ui5.yaml +1 -1
  491. package/test/sap/ui/core/demokit/tutorial/odatav4/07/webapp/Component.js +1 -0
  492. package/test/sap/ui/core/demokit/tutorial/odatav4/07/webapp/index.html +0 -1
  493. package/test/sap/ui/core/demokit/tutorial/odatav4/07/webapp/manifest.json +2 -13
  494. package/test/sap/ui/core/demokit/tutorial/odatav4/08/Component.js +1 -0
  495. package/test/sap/ui/core/demokit/tutorial/odatav4/08/ui5.yaml +1 -1
  496. package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/Component.js +1 -0
  497. package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/index.html +0 -1
  498. package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/manifest.json +2 -13
  499. package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/test/integration/opaTests.qunit.html +0 -1
  500. package/test/sap/ui/core/demokit/tutorial/odatav4/09/Component.js +1 -0
  501. package/test/sap/ui/core/demokit/tutorial/odatav4/09/ui5.yaml +1 -1
  502. package/test/sap/ui/core/demokit/tutorial/odatav4/09/webapp/Component.js +1 -0
  503. package/test/sap/ui/core/demokit/tutorial/odatav4/09/webapp/index.html +0 -1
  504. package/test/sap/ui/core/demokit/tutorial/odatav4/09/webapp/manifest.json +2 -11
  505. package/test/sap/ui/core/demokit/tutorial/odatav4/10/Component.js +1 -0
  506. package/test/sap/ui/core/demokit/tutorial/odatav4/10/ui5.yaml +1 -1
  507. package/test/sap/ui/core/demokit/tutorial/odatav4/10/webapp/Component.js +1 -0
  508. package/test/sap/ui/core/demokit/tutorial/odatav4/10/webapp/index.html +0 -1
  509. package/test/sap/ui/core/demokit/tutorial/odatav4/10/webapp/manifest.json +2 -11
  510. package/test/sap/ui/core/demokit/tutorial/odatav4/11/Component.js +1 -0
  511. package/test/sap/ui/core/demokit/tutorial/odatav4/11/ui5.yaml +1 -1
  512. package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/Component.js +1 -0
  513. package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/index.html +0 -1
  514. package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/manifest.json +2 -11
  515. package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/test/integration/opaTests.qunit.html +0 -1
  516. package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/ui5.yaml +1 -1
  517. package/test/sap/ui/core/getComputedStyle.html +2 -1
  518. package/test/sap/ui/core/getComputedStyleFF.html +1 -1
  519. package/test/sap/ui/core/internal/samples/client/MusicCollection/Component.js +5 -8
  520. package/test/sap/ui/core/internal/samples/client/MusicCollection/Main.controller.js +6 -2
  521. package/test/sap/ui/core/internal/samples/client/MusicCollection/Main.view.xml +7 -3
  522. package/test/sap/ui/core/internal/samples/client/MusicCollection/index.html +1 -3
  523. package/test/sap/ui/core/internal/samples/client/MusicCollection/manifest.json +1 -13
  524. package/test/sap/ui/core/internal/samples/odata/twoFields/Component.js +3 -45
  525. package/test/sap/ui/core/internal/samples/odata/twoFields/Main.controller.js +37 -1
  526. package/test/sap/ui/core/internal/samples/odata/twoFields/Main.view.xml +5 -5
  527. package/test/sap/ui/core/internal/samples/odata/twoFields/Opa.qunit.html +1 -3
  528. package/test/sap/ui/core/internal/samples/odata/twoFields/index.html +1 -3
  529. package/test/sap/ui/core/internal/samples/odata/twoFields/manifest.json +1 -11
  530. package/test/sap/ui/core/internal/samples/odata/v2/Products/Component.js +3 -22
  531. package/test/sap/ui/core/internal/samples/odata/v2/Products/Main.controller.js +16 -22
  532. package/test/sap/ui/core/internal/samples/odata/v2/Products/Main.view.xml +3 -2
  533. package/test/sap/ui/core/internal/samples/odata/v2/Products/SandboxModel.js +1 -1
  534. package/test/sap/ui/core/internal/samples/odata/v2/Products/index.html +1 -3
  535. package/test/sap/ui/core/internal/samples/odata/v2/Products/manifest.json +2 -13
  536. package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Component.js +1 -0
  537. package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Main.controller.js +49 -41
  538. package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Main.view.xml +6 -4
  539. package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/manifest.json +3 -12
  540. package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/Component.js +1 -0
  541. package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/Main.controller.js +2 -2
  542. package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/Main.view.xml +4 -3
  543. package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/index.html +1 -3
  544. package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/manifest.json +1 -11
  545. package/test/sap/ui/core/qunit/Fragment.qunit.js +20 -20
  546. package/test/sap/ui/core/qunit/Fragment_legacyAPIs.qunit.js +4 -4
  547. package/test/sap/ui/core/qunit/Icon.qunit.js +217 -1
  548. package/test/sap/ui/core/qunit/RenderManager.qunit.js +18 -5
  549. package/test/sap/ui/core/qunit/ScrollBar.qunit.js +15 -18
  550. package/test/sap/ui/core/qunit/analytics/AnalyticalBinding.qunit.js +5 -13
  551. package/test/sap/ui/core/qunit/component/Customizing.qunit.js +2 -2
  552. package/test/sap/ui/core/qunit/component/Customizing_async.qunit.js +36 -1
  553. package/test/sap/ui/core/qunit/component/ExtensionPoint.qunit.js +475 -290
  554. package/test/sap/ui/core/qunit/component/Models.qunit.js +0 -70
  555. package/test/sap/ui/core/qunit/component/Models_unavoidablySync.qunit.js +86 -0
  556. package/test/sap/ui/core/qunit/component/UIComponent.qunit.js +86 -1
  557. package/test/sap/ui/core/qunit/component/testdata/customizing/customer/ext/EP_In_Product_Table_Cell_Found.fragment.xml +5 -0
  558. package/test/sap/ui/core/qunit/component/testdata/customizing/customer/ext/EP_In_Product_Table_Column.fragment.xml +5 -0
  559. package/test/sap/ui/core/qunit/component/testdata/customizing/customer/ext/EPinNestedView.view.xml +51 -0
  560. package/test/sap/ui/core/qunit/component/testdata/customizing/customer/ext/ExtensionPointProvider.js +27 -4
  561. package/test/sap/ui/core/qunit/component/testdata/customizing/customer/ext/Main.view.xml +5 -0
  562. package/test/sap/ui/core/qunit/component/testdata/customizing/sap/Main.view.xml +0 -1
  563. package/test/sap/ui/core/qunit/component/testdata/customizing/sap/Sub2.view.xml +1 -3
  564. package/test/sap/ui/core/qunit/dnd/DragAndDrop.qunit.js +72 -2
  565. package/test/sap/ui/core/qunit/dnd/DropInfo.qunit.js +14 -2
  566. package/test/sap/ui/core/qunit/generic/ControlRenderer.qunit.js +4 -1
  567. package/test/sap/ui/core/qunit/generic/legacy/ControlRenderer.qunit.js +4 -0
  568. package/test/sap/ui/core/qunit/internal/1RingModels.qunit.js +1 -0
  569. package/test/sap/ui/core/qunit/loader/amd/base_tag/_launchTest.js +2 -4
  570. package/test/sap/ui/core/qunit/loader/amd/config_paths/_launchTest.js +2 -4
  571. package/test/sap/ui/core/qunit/loader/amd/config_paths_relative/_launchTest.js +2 -4
  572. package/test/sap/ui/core/qunit/loader/amdAPIs.qunit.js +3 -0
  573. package/test/sap/ui/core/qunit/model/Binding.qunit.js +13 -0
  574. package/test/sap/ui/core/qunit/model/FieldHelp.qunit.js +864 -0
  575. package/test/sap/ui/core/qunit/mvc/Controller.qunit.js +2 -2
  576. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorAsync.qunit.js +8 -6
  577. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorRequireXML.qunit.js +7 -7
  578. package/test/sap/ui/core/qunit/mvc/XMLView.qunit.js +131 -22
  579. package/test/sap/ui/core/qunit/mvc/testdata/Async.view.xml +1 -2
  580. package/test/sap/ui/core/qunit/mvc/testdata/asyncHooks.view.xml +1 -3
  581. package/test/sap/ui/core/qunit/mvc/testdata/cache.view.xml +1 -1
  582. package/test/sap/ui/core/qunit/mvc/testdata/legacy/test.view.xml +32 -0
  583. package/test/sap/ui/core/qunit/mvc/testdata/test.view.xml +2 -15
  584. package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +148 -1
  585. package/test/sap/ui/core/qunit/odata/v2/ODataModelNoFakeService.qunit.js +55 -6
  586. package/test/sap/ui/core/qunit/odata/v2/data/ZUI5_GWSAMPLE_BASIC.metadata.xml +14 -0
  587. package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +54 -0
  588. package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +277 -15
  589. package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +580 -13
  590. package/test/sap/ui/core/qunit/odata/v4/ODataModel.qunit.js +86 -5
  591. package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +268 -5
  592. package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationHelper.qunit.js +20 -0
  593. package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +4 -10
  594. package/test/sap/ui/core/qunit/odata/v4/lib/_Helper.qunit.js +61 -13
  595. package/test/sap/ui/core/qunit/resource/ResourceBinding.qunit.js +17 -14
  596. package/test/sap/ui/core/qunit/routing/async/Views.qunit.js +3 -0
  597. package/test/sap/ui/core/qunit/test/starter/find/main.js +6 -4
  598. package/test/sap/ui/core/qunit/testdata/routing/HistoryIFrame.html +2 -1
  599. package/test/sap/ui/core/qunit/testsuites/testsuite.databinding.qunit.js +3 -0
  600. package/test/sap/ui/core/qunit/types/DateFormat.qunit.js +51 -22
  601. package/test/sap/ui/core/qunit/ui/Device.qunit.js +24 -0
  602. package/test/sap/ui/core/qunit/util/LabelEnablement.qunit.js +47 -1
  603. package/test/sap/ui/core/relnotes/changes-1.124.json +1 -21
  604. package/test/sap/ui/core/relnotes/changes-1.125.json +37 -0
  605. package/test/sap/ui/core/samples/ResponsiveDemo.html +97 -103
  606. package/test/sap/ui/core/samples/databinding/UnitTable/ui5.yaml +1 -1
  607. package/test/sap/ui/core/samples/draganddrop/DragAndDrop.html +2 -2
  608. package/test/sap/ui/core/samples/mvc/Product.html +1 -7
  609. package/test/sap/ui/core/samples/mvc/ViewPreprocessor.html +20 -12
  610. package/test/sap/ui/core/samples/mvc/XMLView.html +77 -24
  611. package/test/sap/ui/core/samples/mvc/XMLViewAsync.html +13 -19
  612. package/test/sap/ui/core/samples/mvc/controller/Async.controller.js +0 -1
  613. package/test/sap/ui/core/samples/mvc/controller/Product.controller.js +0 -1
  614. package/test/sap/ui/core/samples/mvc/views/Async.view.xml +16 -57
  615. package/test/sap/ui/core/samples/mvc/views/Dummy.fragment.xml +2 -2
  616. package/test/sap/ui/core/samples/mvc/views/Dummy.view.xml +2 -2
  617. package/test/sap/ui/core/samples/mvc/views/Product.view.xml +16 -57
  618. package/test/sap/ui/core/util/PasteHelper.html +148 -147
  619. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/firstItem-contextMenu.ref.lnk +1 -1
  620. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/initial.ref.lnk +1 -1
  621. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/lastItem-contextMenu.ref.lnk +1 -1
  622. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/leftDownBtn-contextMenu.ref.lnk +1 -1
  623. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/myButtonSample-contextMenu.ref.lnk +1 -1
  624. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/rightDownBtn-contextMenu.ref.lnk +1 -1
  625. package/test/testsuite/js/settings.js +5 -4
  626. package/test/testsuite/styles/main.css +5 -0
  627. package/test/sap/ui/core/ResourceRoots.html +0 -28
  628. package/test/sap/ui/core/demokit/sample/ViewTemplate/tiny/component.json +0 -17
  629. package/test/sap/ui/core/demokit/sample/ViewTemplate/types/component.json +0 -18
  630. package/test/sap/ui/core/demokit/sample/ViewTemplate/valuelist/component.json +0 -30
  631. package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/AutoExpand.view.xml +0 -52
  632. package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/Component.js +0 -30
  633. package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/Sandbox.js +0 -51
  634. package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/data/Items_L0_top5.json +0 -32
  635. package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/data/Items_L1_A_skip8.json +0 -138
  636. package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/data/Items_L1_B.json +0 -17
  637. package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/data/Items_L1_C.json +0 -17
  638. package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/data/Items_L1_top8.json +0 -93
  639. package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/data/metadata.xml +0 -2322
  640. package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/i18n/i18n.properties +0 -3
  641. package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/manifest.json +0 -69
@@ -1129,6 +1129,32 @@ sap.ui.define([
1129
1129
  * @public
1130
1130
  */
1131
1131
 
1132
+ /**
1133
+ * Returns an array containing all current elements of a collection or single cache for the
1134
+ * given relative path; the array is annotated with the collection's $count. If there are
1135
+ * pending requests, the corresponding promises will be ignored and set to
1136
+ * <code>undefined</code>.
1137
+ *
1138
+ * @param {string} [sPath]
1139
+ * Relative path to drill-down into, may be empty (only for collection cache)
1140
+ * @returns {object[]} The cache elements
1141
+ *
1142
+ * @public
1143
+ */
1144
+ _Cache.prototype.getAllElements = function (sPath) {
1145
+ var aAllElements;
1146
+
1147
+ if (sPath) {
1148
+ return this.getValue(sPath);
1149
+ }
1150
+ aAllElements = this.aElements.map(function (oElement) {
1151
+ return oElement instanceof SyncPromise ? undefined : oElement;
1152
+ });
1153
+ aAllElements.$count = this.aElements.$count;
1154
+
1155
+ return aAllElements;
1156
+ };
1157
+
1132
1158
  /**
1133
1159
  * Returns the collection at the given path and removes it from the cache if it is marked as
1134
1160
  * transferable.
@@ -1160,32 +1186,6 @@ sap.ui.define([
1160
1186
  return vValue;
1161
1187
  };
1162
1188
 
1163
- /**
1164
- * Returns an array containing all current elements of a collection or single cache for the
1165
- * given relative path; the array is annotated with the collection's $count. If there are
1166
- * pending requests, the corresponding promises will be ignored and set to
1167
- * <code>undefined</code>.
1168
- *
1169
- * @param {string} [sPath]
1170
- * Relative path to drill-down into, may be empty (only for collection cache)
1171
- * @returns {object[]} The cache elements
1172
- *
1173
- * @public
1174
- */
1175
- _Cache.prototype.getAllElements = function (sPath) {
1176
- var aAllElements;
1177
-
1178
- if (sPath) {
1179
- return this.getValue(sPath);
1180
- }
1181
- aAllElements = this.aElements.map(function (oElement) {
1182
- return oElement instanceof SyncPromise ? undefined : oElement;
1183
- });
1184
- aAllElements.$count = this.aElements.$count;
1185
-
1186
- return aAllElements;
1187
- };
1188
-
1189
1189
  /**
1190
1190
  * Returns all created elements for the given path.
1191
1191
  *
@@ -1281,6 +1281,17 @@ sap.ui.define([
1281
1281
  return this.mQueryOptions;
1282
1282
  };
1283
1283
 
1284
+ /**
1285
+ * Gets the cache's resource path.
1286
+ *
1287
+ * @returns {string} The resource path
1288
+ *
1289
+ * @public
1290
+ */
1291
+ _Cache.prototype.getResourcePath = function () {
1292
+ return this.sResourcePath;
1293
+ };
1294
+
1284
1295
  /**
1285
1296
  * Returns the existing map from meta path to type.
1286
1297
  *
@@ -1309,17 +1320,6 @@ sap.ui.define([
1309
1320
  throw new Error("Unsupported operation");
1310
1321
  };
1311
1322
 
1312
- /**
1313
- * Gets the cache's resource path.
1314
- *
1315
- * @returns {string} The resource path
1316
- *
1317
- * @public
1318
- */
1319
- _Cache.prototype.getResourcePath = function () {
1320
- return this.sResourcePath;
1321
- };
1322
-
1323
1323
  /**
1324
1324
  * Tells whether there are any registered change listeners.
1325
1325
  *
@@ -1929,11 +1929,7 @@ sap.ui.define([
1929
1929
  this.iLimit += 1; // this doesn't change Infinity
1930
1930
  }
1931
1931
  _Helper.addToCount(this.mChangeListeners, sPath, aElements, 1);
1932
- if (iIndex >= aElements.length) { // Note: #splice ignores iIndex then!
1933
- aElements[iIndex] = oElement;
1934
- } else {
1935
- aElements.splice(iIndex, 0, oElement);
1936
- }
1932
+ _Helper.insert(aElements, iIndex, oElement);
1937
1933
  aElements.$byPredicate[_Helper.getPrivateAnnotation(oElement, "predicate")] = oElement;
1938
1934
  };
1939
1935
 
@@ -163,8 +163,9 @@ sap.ui.define([
163
163
  * @param {object} oOperationMetadata
164
164
  * The operation metadata to determine whether a given message target is a parameter
165
165
  * of the operation
166
- * @param {string} sParameterContextPath
167
- * The parameter context path
166
+ * @param {string} [sParameterContextPath]
167
+ * The parameter context path, needed for adjusting a message target in case it is an
168
+ * operation parameter, except the binding parameter
168
169
  * @param {string} [sContextPath]
169
170
  * The context path for a bound operation
170
171
  *
@@ -172,7 +173,9 @@ sap.ui.define([
172
173
  */
173
174
  adjustTargets : function (oMessage, oOperationMetadata, sParameterContextPath,
174
175
  sContextPath) {
175
- var sAdditionalTargetsKey = _Helper.getAnnotationKey(oMessage, ".additionalTargets"),
176
+ var sAdditionalTargetsKey = "additionalTargets" in oMessage
177
+ ? "additionalTargets"
178
+ : _Helper.getAnnotationKey(oMessage, ".additionalTargets"),
176
179
  aTargets;
177
180
 
178
181
  aTargets = [oMessage.target].concat(oMessage[sAdditionalTargetsKey])
@@ -528,6 +531,21 @@ sap.ui.define([
528
531
  }
529
532
  },
530
533
 
534
+ /**
535
+ * Sets "@$ui5.context.isSelected" in <code>oTarget</code> to true if it is true in
536
+ * <code>oSource</code>.
537
+ *
538
+ * @param {object} oSource - The source object
539
+ * @param {object} oTarget - The target object
540
+ *
541
+ * @public
542
+ */
543
+ copySelected : function (oSource, oTarget) {
544
+ if (oSource["@$ui5.context.isSelected"] === true) {
545
+ oTarget["@$ui5.context.isSelected"] = true;
546
+ }
547
+ },
548
+
531
549
  /**
532
550
  * Returns an <code>Error</code> instance from a jQuery XHR wrapper.
533
551
  *
@@ -959,6 +977,32 @@ sap.ui.define([
959
977
  return _Helper.encode(sKey, true) + "=" + _Helper.encode(sValue, false);
960
978
  },
961
979
 
980
+ /**
981
+ * Extracts the mergeable query options "$expand" and "$select" from the given ones, returns
982
+ * them as a new map while replacing their value with "~" in the old map.
983
+ *
984
+ * @param {object} mQueryOptions
985
+ * The original query options, will be modified
986
+ * @returns {object}
987
+ * The extracted query options
988
+ *
989
+ * @public
990
+ */
991
+ extractMergeableQueryOptions : function (mQueryOptions) {
992
+ var mExtractedQueryOptions = {};
993
+
994
+ if ("$expand" in mQueryOptions) {
995
+ mExtractedQueryOptions.$expand = mQueryOptions.$expand;
996
+ mQueryOptions.$expand = "~";
997
+ }
998
+ if ("$select" in mQueryOptions) {
999
+ mExtractedQueryOptions.$select = mQueryOptions.$select;
1000
+ mQueryOptions.$select = "~";
1001
+ }
1002
+
1003
+ return mExtractedQueryOptions;
1004
+ },
1005
+
962
1006
  /**
963
1007
  * Extracts all (top and detail) messages from the given error instance.
964
1008
  *
@@ -1045,32 +1089,6 @@ sap.ui.define([
1045
1089
  return aMessages;
1046
1090
  },
1047
1091
 
1048
- /**
1049
- * Extracts the mergeable query options "$expand" and "$select" from the given ones, returns
1050
- * them as a new map while replacing their value with "~" in the old map.
1051
- *
1052
- * @param {object} mQueryOptions
1053
- * The original query options, will be modified
1054
- * @returns {object}
1055
- * The extracted query options
1056
- *
1057
- * @public
1058
- */
1059
- extractMergeableQueryOptions : function (mQueryOptions) {
1060
- var mExtractedQueryOptions = {};
1061
-
1062
- if ("$expand" in mQueryOptions) {
1063
- mExtractedQueryOptions.$expand = mQueryOptions.$expand;
1064
- mQueryOptions.$expand = "~";
1065
- }
1066
- if ("$select" in mQueryOptions) {
1067
- mExtractedQueryOptions.$select = mQueryOptions.$select;
1068
- mQueryOptions.$select = "~";
1069
- }
1070
-
1071
- return mExtractedQueryOptions;
1072
- },
1073
-
1074
1092
  /**
1075
1093
  * Fetches the property that is reached by the meta path and (if necessary) its type.
1076
1094
  *
@@ -1264,8 +1282,9 @@ sap.ui.define([
1264
1282
  * @param {object} oOperationMetadata
1265
1283
  * The operation metadata to determine whether a given message target is a parameter
1266
1284
  * of the operation
1267
- * @param {string} sParameterContextPath
1268
- * The parameter context path
1285
+ * @param {string} [sParameterContextPath]
1286
+ * The parameter context path, needed for adjusting a message target in case it is an
1287
+ * operation parameter, except the binding parameter
1269
1288
  * @param {string} [sContextPath]
1270
1289
  * The context path for a bound operation
1271
1290
  * @returns {string|undefined} The adjusted target, or <code>undefined</code> if the target
@@ -1274,7 +1293,7 @@ sap.ui.define([
1274
1293
  * @private
1275
1294
  */
1276
1295
  getAdjustedTarget : function (sTarget, oOperationMetadata, sParameterContextPath,
1277
- sContextPath) {
1296
+ sContextPath) {
1278
1297
  var bIsParameterName,
1279
1298
  sParameterName,
1280
1299
  aSegments;
@@ -1290,6 +1309,9 @@ sap.ui.define([
1290
1309
  sTarget = _Helper.buildPath(sContextPath, aSegments.join("/"));
1291
1310
  return sTarget;
1292
1311
  }
1312
+ if (!sParameterContextPath) {
1313
+ return sTarget;
1314
+ }
1293
1315
  bIsParameterName = oOperationMetadata.$Parameter.some(function (oParameter) {
1294
1316
  return sParameterName === oParameter.$Name;
1295
1317
  });
@@ -1570,6 +1592,27 @@ sap.ui.define([
1570
1592
  });
1571
1593
  },
1572
1594
 
1595
+ /**
1596
+ * Returns the index of the key predicate in the last segment of the given path.
1597
+ *
1598
+ * @param {string} sPath - The path
1599
+ * @returns {number} The index of the key predicate
1600
+ * @throws {Error} If no path is given or the last segment contains no key predicate
1601
+ *
1602
+ * @public
1603
+ */
1604
+ getPredicateIndex : function (sPath) {
1605
+ var iPredicateIndex = sPath
1606
+ ? sPath.indexOf("(", sPath.lastIndexOf("/"))
1607
+ : -1;
1608
+
1609
+ if (iPredicateIndex < 0 || !sPath.endsWith(")")) {
1610
+ throw new Error("Not a list context path to an entity: " + sPath);
1611
+ }
1612
+
1613
+ return iPredicateIndex;
1614
+ },
1615
+
1573
1616
  /**
1574
1617
  * Returns the list of predicates corresponding to the given list of contexts, or
1575
1618
  * <code>null</code if at least one predicate is missing.
@@ -1595,27 +1638,6 @@ sap.ui.define([
1595
1638
  return bMissingPredicate ? null : aPredicates;
1596
1639
  },
1597
1640
 
1598
- /**
1599
- * Returns the index of the key predicate in the last segment of the given path.
1600
- *
1601
- * @param {string} sPath - The path
1602
- * @returns {number} The index of the key predicate
1603
- * @throws {Error} If no path is given or the last segment contains no key predicate
1604
- *
1605
- * @public
1606
- */
1607
- getPredicateIndex : function (sPath) {
1608
- var iPredicateIndex = sPath
1609
- ? sPath.indexOf("(", sPath.lastIndexOf("/"))
1610
- : -1;
1611
-
1612
- if (iPredicateIndex < 0 || !sPath.endsWith(")")) {
1613
- throw new Error("Not a list context path to an entity: " + sPath);
1614
- }
1615
-
1616
- return iPredicateIndex;
1617
- },
1618
-
1619
1641
  /**
1620
1642
  * Returns the value of the private client-side instance annotation with the given
1621
1643
  * unqualified name at the given object.
@@ -1832,6 +1854,24 @@ sap.ui.define([
1832
1854
  });
1833
1855
  },
1834
1856
 
1857
+ /**
1858
+ * Inserts the given element into the given array at the given index, even it is beyond the
1859
+ * array's current length.
1860
+ *
1861
+ * @param {any[]} aElements - Some array
1862
+ * @param {number} iIndex - Some index
1863
+ * @param {any} vElement - Some element
1864
+ *
1865
+ * @public
1866
+ */
1867
+ insert : function (aElements, iIndex, vElement) {
1868
+ if (iIndex >= aElements.length) { // Note: #splice ignores iIndex then!
1869
+ aElements[iIndex] = vElement;
1870
+ } else {
1871
+ aElements.splice(iIndex, 0, vElement);
1872
+ }
1873
+ },
1874
+
1835
1875
  /**
1836
1876
  * Returns a copy of given query options where "$expand" and "$select" are replaced by the
1837
1877
  * intersection with the given (navigation) property paths.
@@ -3042,21 +3082,6 @@ sap.ui.define([
3042
3082
  }
3043
3083
  },
3044
3084
 
3045
- /**
3046
- * Sets "@$ui5.context.isSelected" in <code>oTarget</code> to true if it is true in
3047
- * <code>oSource</code>.
3048
- *
3049
- * @param {object} oSource - The source object
3050
- * @param {object} oTarget - The target object
3051
- *
3052
- * @public
3053
- */
3054
- copySelected : function (oSource, oTarget) {
3055
- if (oSource["@$ui5.context.isSelected"] === true) {
3056
- oTarget["@$ui5.context.isSelected"] = true;
3057
- }
3058
- },
3059
-
3060
3085
  /**
3061
3086
  * Creates the query options for a child binding with the meta path given by its base
3062
3087
  * meta path and relative meta path. Adds the key properties to $select of all expanded
@@ -1061,32 +1061,6 @@ sap.ui.define([
1061
1061
  return this.lockGroup("$auto", oGroupLock.getOwner());
1062
1062
  };
1063
1063
 
1064
- /**
1065
- * Tells whether there are only PATCH requests with the "Prefer" header set to "return=minimal"
1066
- * (results from using $$patchWithoutSideEffects=true) enqueued in the batch queue with the
1067
- * given group ID.
1068
- *
1069
- * @param {string} sGroupId
1070
- * The group ID
1071
- * @returns {boolean}
1072
- * Returns <code>true</code> if only PATCHes are enqueued in the batch queue with the given
1073
- * group ID
1074
- *
1075
- * @private
1076
- */
1077
- _Requestor.prototype.hasOnlyPatchesWithoutSideEffects = function (sGroupId) {
1078
- return this.getGroupSubmitMode(sGroupId) === "Auto"
1079
- && !!this.mBatchQueue[sGroupId]
1080
- && this.mBatchQueue[sGroupId].every(function (vChangeSetOrRequest) {
1081
- // PATCH requests must be in a change set which is modeled as an array
1082
- return Array.isArray(vChangeSetOrRequest)
1083
- && vChangeSetOrRequest.every(function (oRequest) {
1084
- return oRequest.method === "PATCH"
1085
- && oRequest.headers.Prefer === "return=minimal";
1086
- });
1087
- });
1088
- };
1089
-
1090
1064
  /**
1091
1065
  * Tells whether there are changes (that is, updates via PATCH or bound actions via POST) for
1092
1066
  * the given group ID and given entity.
@@ -1113,6 +1087,32 @@ sap.ui.define([
1113
1087
  return false;
1114
1088
  };
1115
1089
 
1090
+ /**
1091
+ * Tells whether there are only PATCH requests with the "Prefer" header set to "return=minimal"
1092
+ * (results from using $$patchWithoutSideEffects=true) enqueued in the batch queue with the
1093
+ * given group ID.
1094
+ *
1095
+ * @param {string} sGroupId
1096
+ * The group ID
1097
+ * @returns {boolean}
1098
+ * Returns <code>true</code> if only PATCHes are enqueued in the batch queue with the given
1099
+ * group ID
1100
+ *
1101
+ * @private
1102
+ */
1103
+ _Requestor.prototype.hasOnlyPatchesWithoutSideEffects = function (sGroupId) {
1104
+ return this.getGroupSubmitMode(sGroupId) === "Auto"
1105
+ && !!this.mBatchQueue[sGroupId]
1106
+ && this.mBatchQueue[sGroupId].every(function (vChangeSetOrRequest) {
1107
+ // PATCH requests must be in a change set which is modeled as an array
1108
+ return Array.isArray(vChangeSetOrRequest)
1109
+ && vChangeSetOrRequest.every(function (oRequest) {
1110
+ return oRequest.method === "PATCH"
1111
+ && oRequest.headers.Prefer === "return=minimal";
1112
+ });
1113
+ });
1114
+ };
1115
+
1116
1116
  /**
1117
1117
  * Returns <code>true</code> if there are pending changes for the given group ID.
1118
1118
  *
@@ -1190,6 +1190,46 @@ sap.ui.define([
1190
1190
  return true;
1191
1191
  };
1192
1192
 
1193
+ /**
1194
+ * Creates a group lock for the given group.
1195
+ *
1196
+ * A group lock is a hint that a request is expected which may be added asynchronously.
1197
+ * If the expected request must be part of the next batch request for that group,
1198
+ * <code>bLocked</code> needs to be set to <code>true</code>. {@link #submitBatch} waits until
1199
+ * all group locks for that group are unlocked again. A group lock is automatically unlocked if
1200
+ * {@link #request} is called with that group lock. If the caller of {@link #lockGroup}
1201
+ * recognizes that no request needs to be added, the caller must unlock the group lock. In case
1202
+ * of an error the caller of {@link #lockGroup} must call
1203
+ * {@link sap.ui.model.odata.v4.lib._GroupLock#unlock} with <code>bForce = true</code>.
1204
+ *
1205
+ * @param {string} sGroupId
1206
+ * The group ID
1207
+ * @param {object} oOwner
1208
+ * The lock's owner for debugging
1209
+ * @param {boolean} [bLocked]
1210
+ * Whether the created lock is locked
1211
+ * @param {boolean} [bModifying]
1212
+ * Whether the reason for the group lock is a modifying request
1213
+ * @param {function} [fnCancel]
1214
+ * Function that is called when the group lock is canceled
1215
+ * @returns {sap.ui.model.odata.v4.lib._GroupLock}
1216
+ * The group lock
1217
+ * @throws {Error}
1218
+ * If <code>bModifying</code> is set but <code>bLocked</code> is unset.
1219
+ *
1220
+ * @public
1221
+ */
1222
+ _Requestor.prototype.lockGroup = function (sGroupId, oOwner, bLocked, bModifying, fnCancel) {
1223
+ var oGroupLock;
1224
+
1225
+ oGroupLock = new _GroupLock(sGroupId, oOwner, bLocked, bModifying, this.getSerialNumber(),
1226
+ fnCancel);
1227
+ if (bLocked) {
1228
+ this.aLockedGroupLocks.push(oGroupLock);
1229
+ }
1230
+ return oGroupLock;
1231
+ };
1232
+
1193
1233
  /**
1194
1234
  * Merges all GET requests that are marked as mergeable (via parameter mQueryOptions of
1195
1235
  * {@link #request}) and have the same owner, resource path, and query options besides $expand
@@ -1381,58 +1421,6 @@ sap.ui.define([
1381
1421
  });
1382
1422
  };
1383
1423
 
1384
- /**
1385
- * Returns a sync promise that is resolved when the requestor is ready to be used. The V4
1386
- * requestor is ready immediately. Subclasses may behave differently.
1387
- *
1388
- * @returns {sap.ui.base.SyncPromise} A sync promise that is resolved immediately with no result
1389
- *
1390
- * @public
1391
- */
1392
- _Requestor.prototype.ready = function () {
1393
- return SyncPromise.resolve();
1394
- };
1395
-
1396
- /**
1397
- * Creates a group lock for the given group.
1398
- *
1399
- * A group lock is a hint that a request is expected which may be added asynchronously.
1400
- * If the expected request must be part of the next batch request for that group,
1401
- * <code>bLocked</code> needs to be set to <code>true</code>. {@link #submitBatch} waits until
1402
- * all group locks for that group are unlocked again. A group lock is automatically unlocked if
1403
- * {@link #request} is called with that group lock. If the caller of {@link #lockGroup}
1404
- * recognizes that no request needs to be added, the caller must unlock the group lock. In case
1405
- * of an error the caller of {@link #lockGroup} must call
1406
- * {@link sap.ui.model.odata.v4.lib._GroupLock#unlock} with <code>bForce = true</code>.
1407
- *
1408
- * @param {string} sGroupId
1409
- * The group ID
1410
- * @param {object} oOwner
1411
- * The lock's owner for debugging
1412
- * @param {boolean} [bLocked]
1413
- * Whether the created lock is locked
1414
- * @param {boolean} [bModifying]
1415
- * Whether the reason for the group lock is a modifying request
1416
- * @param {function} [fnCancel]
1417
- * Function that is called when the group lock is canceled
1418
- * @returns {sap.ui.model.odata.v4.lib._GroupLock}
1419
- * The group lock
1420
- * @throws {Error}
1421
- * If <code>bModifying</code> is set but <code>bLocked</code> is unset.
1422
- *
1423
- * @public
1424
- */
1425
- _Requestor.prototype.lockGroup = function (sGroupId, oOwner, bLocked, bModifying, fnCancel) {
1426
- var oGroupLock;
1427
-
1428
- oGroupLock = new _GroupLock(sGroupId, oOwner, bLocked, bModifying, this.getSerialNumber(),
1429
- fnCancel);
1430
- if (bLocked) {
1431
- this.aLockedGroupLocks.push(oGroupLock);
1432
- }
1433
- return oGroupLock;
1434
- };
1435
-
1436
1424
  /**
1437
1425
  * This function has two tasks:
1438
1426
  * <ul>
@@ -1554,6 +1542,18 @@ sap.ui.define([
1554
1542
  });
1555
1543
  };
1556
1544
 
1545
+ /**
1546
+ * Returns a sync promise that is resolved when the requestor is ready to be used. The V4
1547
+ * requestor is ready immediately. Subclasses may behave differently.
1548
+ *
1549
+ * @returns {sap.ui.base.SyncPromise} A sync promise that is resolved immediately with no result
1550
+ *
1551
+ * @public
1552
+ */
1553
+ _Requestor.prototype.ready = function () {
1554
+ return SyncPromise.resolve();
1555
+ };
1556
+
1557
1557
  /**
1558
1558
  * Returns a promise that will be resolved once the CSRF token has been refreshed, or rejected
1559
1559
  * if that fails. Makes sure that only one HEAD request is underway at any given time and
@@ -14,7 +14,7 @@ sap.ui.define([
14
14
  // _TreeState
15
15
  //*********************************************************************************************
16
16
  /**
17
- * A class holding the tree state for recursive hierarchies. It keeps track which nodes have
17
+ * A class holding the tree state for a recursive hierarchy. It keeps track which nodes have
18
18
  * been manually expanded resp. collapsed and is able to build the "ExpandLevels" parameter for
19
19
  * the "TopLevels" request (see {@link #getExpandLevels}).
20
20
  *
@@ -770,6 +770,26 @@ sap.ui.define([
770
770
  });
771
771
  };
772
772
 
773
+ /**
774
+ * Post-processing of all bound operations: key properties are removed from parameters.
775
+ */
776
+ _V2MetadataConverter.prototype.processBoundOperations = function () {
777
+ var that = this;
778
+
779
+ this.aBoundOperations.forEach(function (oOperation) {
780
+ var oEntityType = that.result[oOperation.$Parameter[0].$Type];
781
+
782
+ oEntityType.$Key.forEach(function (sKeyName) {
783
+ oOperation.$Parameter.some(function (oParameter, i) {
784
+ if (oParameter.$Name === sKeyName) {
785
+ oOperation.$Parameter.splice(i, 1);
786
+ return true;
787
+ }
788
+ });
789
+ });
790
+ });
791
+ };
792
+
773
793
  /**
774
794
  * Processes a ComplexType element.
775
795
  *
@@ -1302,26 +1322,6 @@ sap.ui.define([
1302
1322
  }
1303
1323
  };
1304
1324
 
1305
- /**
1306
- * Post-processing of all bound operations: key properties are removed from parameters.
1307
- */
1308
- _V2MetadataConverter.prototype.processBoundOperations = function () {
1309
- var that = this;
1310
-
1311
- this.aBoundOperations.forEach(function (oOperation) {
1312
- var oEntityType = that.result[oOperation.$Parameter[0].$Type];
1313
-
1314
- oEntityType.$Key.forEach(function (sKeyName) {
1315
- oOperation.$Parameter.some(function (oParameter, i) {
1316
- if (oParameter.$Name === sKeyName) {
1317
- oOperation.$Parameter.splice(i, 1);
1318
- return true;
1319
- }
1320
- });
1321
- });
1322
- });
1323
- };
1324
-
1325
1325
  /**
1326
1326
  * For each property with a "sap:unit" annotation a corresponding V4 annotation is created.
1327
1327
  * The annotation is "Org.OData.Measures.V1.Unit" if the unit has