@openui5/sap.ui.core 1.121.0 → 1.122.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 (605) hide show
  1. package/.eslintrc.json +22 -5
  2. package/THIRDPARTY.txt +1 -1
  3. package/package.json +1 -1
  4. package/src/jquery.sap.global.js +1 -1
  5. package/src/jquery.sap.properties.js +1 -1
  6. package/src/jquery.sap.resources.js +1 -1
  7. package/src/jquery.sap.script.js +1 -1
  8. package/src/jquery.sap.sjax.js +6 -5
  9. package/src/jquery.sap.storage.js +3 -3
  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/Formatting.js +1 -1
  14. package/src/sap/base/i18n/LanguageTag.js +1 -1
  15. package/src/sap/base/i18n/date/TimezoneUtils.js +1 -1
  16. package/src/sap/base/util/Deferred.js +4 -6
  17. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  18. package/src/sap/base/util/restricted/_castArray.js +1 -1
  19. package/src/sap/base/util/restricted/_compact.js +1 -1
  20. package/src/sap/base/util/restricted/_curry.js +1 -1
  21. package/src/sap/base/util/restricted/_debounce.js +1 -1
  22. package/src/sap/base/util/restricted/_difference.js +1 -1
  23. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  24. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  25. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  26. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  27. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  28. package/src/sap/base/util/restricted/_flatten.js +1 -1
  29. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  30. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  31. package/src/sap/base/util/restricted/_intersection.js +1 -1
  32. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  33. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  34. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  35. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  36. package/src/sap/base/util/restricted/_isNil.js +1 -1
  37. package/src/sap/base/util/restricted/_max.js +1 -1
  38. package/src/sap/base/util/restricted/_merge.js +1 -1
  39. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  40. package/src/sap/base/util/restricted/_min.js +1 -1
  41. package/src/sap/base/util/restricted/_omit.js +1 -1
  42. package/src/sap/base/util/restricted/_pick.js +1 -1
  43. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  44. package/src/sap/base/util/restricted/_throttle.js +1 -1
  45. package/src/sap/base/util/restricted/_toArray.js +1 -1
  46. package/src/sap/base/util/restricted/_union.js +1 -1
  47. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  48. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  49. package/src/sap/base/util/restricted/_uniq.js +1 -1
  50. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  51. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  52. package/src/sap/base/util/restricted/_without.js +1 -1
  53. package/src/sap/base/util/restricted/_xor.js +1 -1
  54. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  55. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  56. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  57. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  58. package/src/sap/ui/Device.js +3 -3
  59. package/src/sap/ui/Global.js +4 -4
  60. package/src/sap/ui/base/Event.js +1 -1
  61. package/src/sap/ui/base/EventProvider.js +11 -5
  62. package/src/sap/ui/base/Exception.js +1 -1
  63. package/src/sap/ui/base/Interface.js +1 -1
  64. package/src/sap/ui/base/ManagedObject.js +22 -3
  65. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  66. package/src/sap/ui/base/Metadata.js +1 -1
  67. package/src/sap/ui/base/Object.js +1 -1
  68. package/src/sap/ui/base/ObjectPool.js +1 -1
  69. package/src/sap/ui/core/.library +1 -1
  70. package/src/sap/ui/core/BusyIndicator.js +1 -1
  71. package/src/sap/ui/core/Component.js +33 -5
  72. package/src/sap/ui/core/ComponentContainer.js +1 -1
  73. package/src/sap/ui/core/ComponentMetadata.js +1 -1
  74. package/src/sap/ui/core/ComponentSupport.js +1 -1
  75. package/src/sap/ui/core/Configuration.js +1 -1
  76. package/src/sap/ui/core/Control.js +19 -3
  77. package/src/sap/ui/core/Core.js +1 -1
  78. package/src/sap/ui/core/CustomData.js +1 -1
  79. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  80. package/src/sap/ui/core/Element.js +28 -3
  81. package/src/sap/ui/core/ElementMetadata.js +1 -1
  82. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  83. package/src/sap/ui/core/EventBus.js +1 -1
  84. package/src/sap/ui/core/Fragment.js +1 -1
  85. package/src/sap/ui/core/HTML.js +1 -1
  86. package/src/sap/ui/core/History.js +1 -1
  87. package/src/sap/ui/core/Icon.js +1 -1
  88. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  89. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  90. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  91. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  92. package/src/sap/ui/core/InvisibleText.js +1 -1
  93. package/src/sap/ui/core/Item.js +1 -1
  94. package/src/sap/ui/core/LabelEnablement.js +1 -1
  95. package/src/sap/ui/core/LayoutData.js +1 -1
  96. package/src/sap/ui/core/ListItem.js +1 -1
  97. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  98. package/src/sap/ui/core/Locale.js +1 -1
  99. package/src/sap/ui/core/LocaleData.js +14 -6
  100. package/src/sap/ui/core/Manifest.js +1 -1
  101. package/src/sap/ui/core/Message.js +1 -1
  102. package/src/sap/ui/core/RenderManager.js +1 -1
  103. package/src/sap/ui/core/Renderer.js +1 -1
  104. package/src/sap/ui/core/ResizeHandler.js +1 -1
  105. package/src/sap/ui/core/ScrollBar.js +1 -1
  106. package/src/sap/ui/core/SeparatorItem.js +1 -1
  107. package/src/sap/ui/core/Title.js +1 -1
  108. package/src/sap/ui/core/TooltipBase.js +1 -1
  109. package/src/sap/ui/core/UIArea.js +1 -1
  110. package/src/sap/ui/core/UIComponent.js +1 -1
  111. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  112. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  113. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  114. package/src/sap/ui/core/XMLComposite.js +1 -1
  115. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  116. package/src/sap/ui/core/date/UI5Date.js +1 -1
  117. package/src/sap/ui/core/date/UniversalDateUtils.js +52 -52
  118. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  119. package/src/sap/ui/core/delegate/ScrollEnablement.js +4 -4
  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 +1 -1
  124. package/src/sap/ui/core/format/DateFormat.js +4 -4
  125. package/src/sap/ui/core/format/FormatUtils.js +1 -1
  126. package/src/sap/ui/core/format/NumberFormat.js +32 -13
  127. package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
  128. package/src/sap/ui/core/getCompatibilityVersion.js +1 -1
  129. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  130. package/src/sap/ui/core/library.js +3 -3
  131. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  132. package/src/sap/ui/core/message/Message.js +1 -1
  133. package/src/sap/ui/core/message/MessageManager.js +1 -1
  134. package/src/sap/ui/core/message/MessageParser.js +1 -1
  135. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  136. package/src/sap/ui/core/messagebundle_ar.properties +1 -1
  137. package/src/sap/ui/core/messagebundle_mk.properties +1 -1
  138. package/src/sap/ui/core/mvc/Controller.js +42 -7
  139. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  140. package/src/sap/ui/core/mvc/JSONView.js +1 -1
  141. package/src/sap/ui/core/mvc/JSView.js +1 -1
  142. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  143. package/src/sap/ui/core/mvc/View.js +1 -1
  144. package/src/sap/ui/core/mvc/XMLView.js +1 -1
  145. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  146. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  147. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  148. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  149. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  150. package/src/sap/ui/core/routing/Router.js +1 -1
  151. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  152. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  153. package/src/sap/ui/core/service/Service.js +1 -1
  154. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  155. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  156. package/src/sap/ui/core/support/Plugin.js +1 -1
  157. package/src/sap/ui/core/support/Support.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/themes/base/base.less +239 -8
  167. package/src/sap/ui/core/themes/base/global.less +20 -0
  168. package/src/sap/ui/core/themes/sap_hcb/global.less +20 -0
  169. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  170. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  171. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  172. package/src/sap/ui/core/tmpl/Template.js +1 -1
  173. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  174. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  175. package/src/sap/ui/core/util/Export.js +1 -1
  176. package/src/sap/ui/core/util/ExportCell.js +1 -1
  177. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  178. package/src/sap/ui/core/util/ExportRow.js +1 -1
  179. package/src/sap/ui/core/util/ExportType.js +1 -1
  180. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  181. package/src/sap/ui/core/util/File.js +1 -1
  182. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  183. package/src/sap/ui/core/util/MockServer.js +1 -1
  184. package/src/sap/ui/core/util/PasteHelper.js +2 -2
  185. package/src/sap/ui/core/util/ShortcutHelper.js +6 -0
  186. package/src/sap/ui/core/util/XMLPreprocessor.js +112 -94
  187. package/src/sap/ui/core/util/_LocalizationHelper.js +2 -1
  188. package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +0 -29
  189. package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +0 -26
  190. package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +0 -56
  191. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  192. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  193. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  194. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  195. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  196. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  197. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  198. package/src/sap/ui/core/webc/WebComponent.js +1 -1
  199. package/src/sap/ui/core/webc/WebComponentMetadata.js +1 -1
  200. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  201. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  202. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  203. package/src/sap/ui/debug/ControlTree.js +1 -1
  204. package/src/sap/ui/debug/DebugEnv.js +1 -1
  205. package/src/sap/ui/debug/PropertyList.js +1 -1
  206. package/src/sap/ui/model/ClientListBinding.js +13 -6
  207. package/src/sap/ui/model/ClientModel.js +1 -1
  208. package/src/sap/ui/model/ClientTreeBinding.js +16 -7
  209. package/src/sap/ui/model/CompositeBinding.js +11 -4
  210. package/src/sap/ui/model/CompositeDataState.js +1 -1
  211. package/src/sap/ui/model/CompositeType.js +17 -3
  212. package/src/sap/ui/model/DataState.js +1 -1
  213. package/src/sap/ui/model/ListBinding.js +14 -11
  214. package/src/sap/ui/model/MetaModel.js +1 -1
  215. package/src/sap/ui/model/Model.js +11 -9
  216. package/src/sap/ui/model/PropertyBinding.js +21 -4
  217. package/src/sap/ui/model/SelectionModel.js +1 -1
  218. package/src/sap/ui/model/SimpleType.js +1 -1
  219. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  220. package/src/sap/ui/model/TreeBinding.js +14 -7
  221. package/src/sap/ui/model/Type.js +1 -1
  222. package/src/sap/ui/model/analytics/AnalyticalBinding.js +12 -8
  223. package/src/sap/ui/model/analytics/BatchResponseCollector.js +1 -1
  224. package/src/sap/ui/model/analytics/odata4analytics.js +66 -52
  225. package/src/sap/ui/model/controlhelper/TreeBindingProxy.js +1 -4
  226. package/src/sap/ui/model/json/JSONListBinding.js +5 -2
  227. package/src/sap/ui/model/json/JSONModel.js +7 -5
  228. package/src/sap/ui/model/json/JSONTreeBinding.js +5 -2
  229. package/src/sap/ui/model/message/MessageListBinding.js +5 -2
  230. package/src/sap/ui/model/message/MessageModel.js +1 -1
  231. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  232. package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
  233. package/src/sap/ui/model/odata/ODataMetaModel.js +8 -9
  234. package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
  235. package/src/sap/ui/model/odata/ODataModel.js +1 -1
  236. package/src/sap/ui/model/odata/ODataUtils.js +1 -1
  237. package/src/sap/ui/model/odata/type/Boolean.js +2 -4
  238. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  239. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  240. package/src/sap/ui/model/odata/type/Date.js +1 -1
  241. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  242. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  243. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  244. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  245. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  246. package/src/sap/ui/model/odata/type/Double.js +1 -1
  247. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  248. package/src/sap/ui/model/odata/type/Int.js +1 -1
  249. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  250. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  251. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  252. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  253. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  254. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  255. package/src/sap/ui/model/odata/type/Single.js +1 -1
  256. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  257. package/src/sap/ui/model/odata/type/String.js +1 -1
  258. package/src/sap/ui/model/odata/type/Time.js +1 -1
  259. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  260. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  261. package/src/sap/ui/model/odata/v2/Context.js +1 -1
  262. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +2 -2
  263. package/src/sap/ui/model/odata/v2/ODataListBinding.js +14 -8
  264. package/src/sap/ui/model/odata/v2/ODataModel.js +25 -28
  265. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +15 -12
  266. package/src/sap/ui/model/odata/v4/Context.js +111 -30
  267. package/src/sap/ui/model/odata/v4/ODataBinding.js +9 -5
  268. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +1 -1
  269. package/src/sap/ui/model/odata/v4/ODataListBinding.js +14 -9
  270. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +4 -3
  271. package/src/sap/ui/model/odata/v4/ODataModel.js +27 -2
  272. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +19 -7
  273. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +240 -41
  274. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +88 -0
  275. package/src/sap/ui/model/odata/v4/lib/_Cache.js +13 -4
  276. package/src/sap/ui/model/odata/v4/lib/_Helper.js +15 -0
  277. package/src/sap/ui/model/odata/v4/lib/_TreeState.js +77 -15
  278. package/src/sap/ui/model/resource/ResourceModel.js +1 -1
  279. package/src/sap/ui/model/type/Boolean.js +1 -1
  280. package/src/sap/ui/model/type/Currency.js +1 -1
  281. package/src/sap/ui/model/type/Date.js +1 -1
  282. package/src/sap/ui/model/type/DateInterval.js +1 -1
  283. package/src/sap/ui/model/type/DateTime.js +1 -1
  284. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  285. package/src/sap/ui/model/type/FileSize.js +1 -1
  286. package/src/sap/ui/model/type/Float.js +1 -1
  287. package/src/sap/ui/model/type/Integer.js +1 -1
  288. package/src/sap/ui/model/type/String.js +1 -1
  289. package/src/sap/ui/model/type/Time.js +1 -1
  290. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  291. package/src/sap/ui/model/type/Unit.js +38 -1
  292. package/src/sap/ui/model/xml/XMLListBinding.js +5 -2
  293. package/src/sap/ui/model/xml/XMLModel.js +1 -1
  294. package/src/sap/ui/model/xml/XMLTreeBinding.js +5 -1
  295. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  296. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  297. package/src/sap/ui/test/RecordReplay.js +1 -0
  298. package/src/sap/ui/test/autowaiter/_autoWaiterAsync.js +8 -1
  299. package/src/sap/ui/test/generic/TestBase.js +1 -1
  300. package/src/sap/ui/test/gherkin/opa5TestHarness.js +0 -6
  301. package/src/sap/ui/test/gherkin/qUnitTestHarness.js +0 -6
  302. package/src/sap/ui/test/qunitPause.js +5 -1
  303. package/src/sap/ui/util/Storage.js +1 -1
  304. package/src/sap/ui/util/_enforceNoReturnValue.js +26 -0
  305. package/src/ui5loader.js +25 -2
  306. package/test/sap/ui/core/HyphenationPlayground.html +6 -292
  307. package/test/sap/ui/core/HyphenationPlayground.js +313 -0
  308. package/test/sap/ui/core/demokit/docuindex.json +1 -1
  309. package/test/sap/ui/core/demokit/sample/MessageManager/ODataBackendMessagesComp/ui5.yaml +1 -1
  310. package/test/sap/ui/core/demokit/sample/OpaAutoWaitParams/OpaAutoWaitParams.html +1 -1
  311. package/test/sap/ui/core/demokit/sample/OpaAutoWaitParams/applicationUnderTest/index.html +1 -2
  312. package/test/sap/ui/core/demokit/sample/OpaStartup/iStartMyAppInAFrame/README.js +31 -23
  313. package/test/sap/ui/core/demokit/sample/OpaStartup/iStartMyAppInAFrame/iStartMyAppInAFrame.js +103 -94
  314. package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithOPA5/GherkinTestRunner.html +3 -0
  315. package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithOPA5/GherkinTestRunner.js +1 -5
  316. package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithPageObjects/GherkinTestRunner.html +3 -0
  317. package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithPageObjects/GherkinTestRunner.js +1 -5
  318. package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithQUnit/GherkinTestRunner.html +3 -0
  319. package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithQUnit/GherkinTestRunner.js +1 -5
  320. package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithQUnit/Steps.js +5 -5
  321. package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithUIComponent/GherkinTestRunner.html +3 -0
  322. package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithUIComponent/GherkinTestRunner.js +1 -5
  323. package/test/sap/ui/core/demokit/sample/matcher/BindingPath/ui5.yaml +1 -1
  324. package/test/sap/ui/core/demokit/sample/matcher/Descendant/ui5.yaml +1 -1
  325. package/test/sap/ui/core/demokit/sample/matcher/I18NText/ui5.yaml +1 -1
  326. package/test/sap/ui/core/demokit/sample/matcher/LabelFor/ui5.yaml +1 -1
  327. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Main.controller.js +16 -9
  328. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Main.view.xml +9 -0
  329. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/SandboxModel.js +11 -0
  330. package/test/sap/ui/core/demokit/sample/odata/v4/Products/data/UnitsOfMeasure.json +1 -1
  331. package/test/sap/ui/core/demokit/tutorial/databinding/01/manifest.json +2 -1
  332. package/test/sap/ui/core/demokit/tutorial/databinding/01/package.json +4 -1
  333. package/test/sap/ui/core/demokit/tutorial/databinding/01/ui5.yaml +1 -1
  334. package/test/sap/ui/core/demokit/tutorial/databinding/01/webapp/Component.js +12 -0
  335. package/test/sap/ui/core/demokit/tutorial/databinding/01/webapp/index.html +8 -7
  336. package/test/sap/ui/core/demokit/tutorial/databinding/01/webapp/manifest.json +28 -1
  337. package/test/sap/ui/core/demokit/tutorial/databinding/01/webapp/view/App.view.xml +5 -0
  338. package/test/sap/ui/core/demokit/tutorial/databinding/02/manifest.json +3 -1
  339. package/test/sap/ui/core/demokit/tutorial/databinding/02/package.json +4 -1
  340. package/test/sap/ui/core/demokit/tutorial/databinding/02/ui5.yaml +1 -1
  341. package/test/sap/ui/core/demokit/tutorial/databinding/02/webapp/Component.js +12 -0
  342. package/test/sap/ui/core/demokit/tutorial/databinding/02/webapp/index.html +8 -7
  343. package/test/sap/ui/core/demokit/tutorial/databinding/02/webapp/manifest.json +34 -1
  344. package/test/sap/ui/core/demokit/tutorial/databinding/02/webapp/model/data.json +3 -0
  345. package/test/sap/ui/core/demokit/tutorial/databinding/02/webapp/view/App.view.xml +5 -0
  346. package/test/sap/ui/core/demokit/tutorial/databinding/03/manifest.json +3 -1
  347. package/test/sap/ui/core/demokit/tutorial/databinding/03/package.json +4 -1
  348. package/test/sap/ui/core/demokit/tutorial/databinding/03/ui5.yaml +1 -1
  349. package/test/sap/ui/core/demokit/tutorial/databinding/03/webapp/Component.js +12 -0
  350. package/test/sap/ui/core/demokit/tutorial/databinding/03/webapp/index.html +8 -7
  351. package/test/sap/ui/core/demokit/tutorial/databinding/03/webapp/manifest.json +34 -1
  352. package/test/sap/ui/core/demokit/tutorial/databinding/03/webapp/model/data.json +3 -0
  353. package/test/sap/ui/core/demokit/tutorial/databinding/03/webapp/view/App.view.xml +5 -0
  354. package/test/sap/ui/core/demokit/tutorial/databinding/04/manifest.json +3 -2
  355. package/test/sap/ui/core/demokit/tutorial/databinding/04/package.json +4 -1
  356. package/test/sap/ui/core/demokit/tutorial/databinding/04/ui5.yaml +1 -1
  357. package/test/sap/ui/core/demokit/tutorial/databinding/04/webapp/Component.js +12 -0
  358. package/test/sap/ui/core/demokit/tutorial/databinding/04/webapp/index.html +8 -10
  359. package/test/sap/ui/core/demokit/tutorial/databinding/04/webapp/manifest.json +35 -1
  360. package/test/sap/ui/core/demokit/tutorial/databinding/04/webapp/model/data.json +6 -0
  361. package/test/sap/ui/core/demokit/tutorial/databinding/05/manifest.json +3 -2
  362. package/test/sap/ui/core/demokit/tutorial/databinding/05/package.json +4 -1
  363. package/test/sap/ui/core/demokit/tutorial/databinding/05/ui5.yaml +1 -1
  364. package/test/sap/ui/core/demokit/tutorial/databinding/05/webapp/Component.js +20 -0
  365. package/test/sap/ui/core/demokit/tutorial/databinding/05/webapp/index.html +8 -10
  366. package/test/sap/ui/core/demokit/tutorial/databinding/05/webapp/manifest.json +35 -1
  367. package/test/sap/ui/core/demokit/tutorial/databinding/05/webapp/model/data.json +6 -0
  368. package/test/sap/ui/core/demokit/tutorial/databinding/06/manifest.json +4 -3
  369. package/test/sap/ui/core/demokit/tutorial/databinding/06/package.json +4 -1
  370. package/test/sap/ui/core/demokit/tutorial/databinding/06/ui5.yaml +1 -1
  371. package/test/sap/ui/core/demokit/tutorial/databinding/06/webapp/Component.js +12 -0
  372. package/test/sap/ui/core/demokit/tutorial/databinding/06/webapp/index.html +8 -10
  373. package/test/sap/ui/core/demokit/tutorial/databinding/06/webapp/manifest.json +46 -1
  374. package/test/sap/ui/core/demokit/tutorial/databinding/06/webapp/model/data.json +5 -0
  375. package/test/sap/ui/core/demokit/tutorial/databinding/07/manifest.json +4 -3
  376. package/test/sap/ui/core/demokit/tutorial/databinding/07/package.json +3 -0
  377. package/test/sap/ui/core/demokit/tutorial/databinding/07/ui5.yaml +1 -1
  378. package/test/sap/ui/core/demokit/tutorial/databinding/07/webapp/Component.js +12 -0
  379. package/test/sap/ui/core/demokit/tutorial/databinding/07/webapp/index.html +8 -10
  380. package/test/sap/ui/core/demokit/tutorial/databinding/07/webapp/manifest.json +46 -1
  381. package/test/sap/ui/core/demokit/tutorial/databinding/07/webapp/model/data.json +5 -0
  382. package/test/sap/ui/core/demokit/tutorial/databinding/08/manifest.json +4 -3
  383. package/test/sap/ui/core/demokit/tutorial/databinding/08/package.json +3 -0
  384. package/test/sap/ui/core/demokit/tutorial/databinding/08/ui5.yaml +1 -1
  385. package/test/sap/ui/core/demokit/tutorial/databinding/08/webapp/Component.js +12 -0
  386. package/test/sap/ui/core/demokit/tutorial/databinding/08/webapp/index.html +8 -10
  387. package/test/sap/ui/core/demokit/tutorial/databinding/08/webapp/manifest.json +46 -1
  388. package/test/sap/ui/core/demokit/tutorial/databinding/08/webapp/model/data.json +11 -0
  389. package/test/sap/ui/core/demokit/tutorial/databinding/08/webapp/view/App.view.xml +1 -1
  390. package/test/sap/ui/core/demokit/tutorial/databinding/09/manifest.json +4 -3
  391. package/test/sap/ui/core/demokit/tutorial/databinding/09/package.json +3 -0
  392. package/test/sap/ui/core/demokit/tutorial/databinding/09/ui5.yaml +1 -1
  393. package/test/sap/ui/core/demokit/tutorial/databinding/09/webapp/Component.js +12 -0
  394. package/test/sap/ui/core/demokit/tutorial/databinding/09/webapp/controller/App.controller.js +8 -7
  395. package/test/sap/ui/core/demokit/tutorial/databinding/09/webapp/index.html +8 -10
  396. package/test/sap/ui/core/demokit/tutorial/databinding/09/webapp/manifest.json +46 -1
  397. package/test/sap/ui/core/demokit/tutorial/databinding/09/webapp/model/data.json +11 -0
  398. package/test/sap/ui/core/demokit/tutorial/databinding/09/webapp/view/App.view.xml +2 -2
  399. package/test/sap/ui/core/demokit/tutorial/databinding/10/manifest.json +4 -3
  400. package/test/sap/ui/core/demokit/tutorial/databinding/10/package.json +3 -0
  401. package/test/sap/ui/core/demokit/tutorial/databinding/10/ui5.yaml +1 -1
  402. package/test/sap/ui/core/demokit/tutorial/databinding/10/webapp/Component.js +12 -0
  403. package/test/sap/ui/core/demokit/tutorial/databinding/10/webapp/controller/App.controller.js +8 -7
  404. package/test/sap/ui/core/demokit/tutorial/databinding/10/webapp/index.html +8 -10
  405. package/test/sap/ui/core/demokit/tutorial/databinding/10/webapp/manifest.json +46 -1
  406. package/test/sap/ui/core/demokit/tutorial/databinding/10/webapp/model/data.json +13 -0
  407. package/test/sap/ui/core/demokit/tutorial/databinding/10/webapp/view/App.view.xml +3 -3
  408. package/test/sap/ui/core/demokit/tutorial/databinding/11/manifest.json +4 -3
  409. package/test/sap/ui/core/demokit/tutorial/databinding/11/package.json +3 -0
  410. package/test/sap/ui/core/demokit/tutorial/databinding/11/ui5.yaml +1 -1
  411. package/test/sap/ui/core/demokit/tutorial/databinding/11/webapp/Component.js +12 -0
  412. package/test/sap/ui/core/demokit/tutorial/databinding/11/webapp/controller/App.controller.js +8 -7
  413. package/test/sap/ui/core/demokit/tutorial/databinding/11/webapp/index.html +8 -10
  414. package/test/sap/ui/core/demokit/tutorial/databinding/11/webapp/manifest.json +47 -1
  415. package/test/sap/ui/core/demokit/tutorial/databinding/11/webapp/model/data.json +13 -0
  416. package/test/sap/ui/core/demokit/tutorial/databinding/11/webapp/view/App.view.xml +3 -3
  417. package/test/sap/ui/core/demokit/tutorial/databinding/12/manifest.json +4 -3
  418. package/test/sap/ui/core/demokit/tutorial/databinding/12/package.json +3 -0
  419. package/test/sap/ui/core/demokit/tutorial/databinding/12/ui5.yaml +1 -1
  420. package/test/sap/ui/core/demokit/tutorial/databinding/12/webapp/Component.js +12 -0
  421. package/test/sap/ui/core/demokit/tutorial/databinding/12/webapp/controller/App.controller.js +10 -11
  422. package/test/sap/ui/core/demokit/tutorial/databinding/12/webapp/index.html +8 -10
  423. package/test/sap/ui/core/demokit/tutorial/databinding/12/webapp/manifest.json +51 -1
  424. package/test/sap/ui/core/demokit/tutorial/databinding/12/webapp/model/Products.json +64 -57
  425. package/test/sap/ui/core/demokit/tutorial/databinding/12/webapp/model/data.json +13 -0
  426. package/test/sap/ui/core/demokit/tutorial/databinding/12/webapp/view/App.view.xml +3 -3
  427. package/test/sap/ui/core/demokit/tutorial/databinding/13/manifest.json +4 -3
  428. package/test/sap/ui/core/demokit/tutorial/databinding/13/package.json +3 -0
  429. package/test/sap/ui/core/demokit/tutorial/databinding/13/ui5.yaml +1 -1
  430. package/test/sap/ui/core/demokit/tutorial/databinding/13/webapp/Component.js +12 -0
  431. package/test/sap/ui/core/demokit/tutorial/databinding/13/webapp/controller/App.controller.js +16 -16
  432. package/test/sap/ui/core/demokit/tutorial/databinding/13/webapp/index.html +8 -10
  433. package/test/sap/ui/core/demokit/tutorial/databinding/13/webapp/manifest.json +51 -1
  434. package/test/sap/ui/core/demokit/tutorial/databinding/13/webapp/model/Products.json +64 -57
  435. package/test/sap/ui/core/demokit/tutorial/databinding/13/webapp/model/data.json +13 -0
  436. package/test/sap/ui/core/demokit/tutorial/databinding/13/webapp/view/App.view.xml +3 -3
  437. package/test/sap/ui/core/demokit/tutorial/databinding/14/manifest.json +4 -3
  438. package/test/sap/ui/core/demokit/tutorial/databinding/14/package.json +3 -0
  439. package/test/sap/ui/core/demokit/tutorial/databinding/14/ui5.yaml +1 -1
  440. package/test/sap/ui/core/demokit/tutorial/databinding/14/webapp/Component.js +12 -0
  441. package/test/sap/ui/core/demokit/tutorial/databinding/14/webapp/controller/App.controller.js +16 -16
  442. package/test/sap/ui/core/demokit/tutorial/databinding/14/webapp/index.html +8 -10
  443. package/test/sap/ui/core/demokit/tutorial/databinding/14/webapp/manifest.json +51 -1
  444. package/test/sap/ui/core/demokit/tutorial/databinding/14/webapp/model/Products.json +64 -57
  445. package/test/sap/ui/core/demokit/tutorial/databinding/14/webapp/model/data.json +14 -0
  446. package/test/sap/ui/core/demokit/tutorial/databinding/14/webapp/view/App.view.xml +3 -3
  447. package/test/sap/ui/core/demokit/tutorial/databinding/15/manifest.json +4 -3
  448. package/test/sap/ui/core/demokit/tutorial/databinding/15/package.json +3 -0
  449. package/test/sap/ui/core/demokit/tutorial/databinding/15/ui5.yaml +1 -1
  450. package/test/sap/ui/core/demokit/tutorial/databinding/15/webapp/Component.js +12 -0
  451. package/test/sap/ui/core/demokit/tutorial/databinding/15/webapp/controller/App.controller.js +19 -22
  452. package/test/sap/ui/core/demokit/tutorial/databinding/15/webapp/index.html +8 -10
  453. package/test/sap/ui/core/demokit/tutorial/databinding/15/webapp/manifest.json +51 -1
  454. package/test/sap/ui/core/demokit/tutorial/databinding/15/webapp/model/Products.json +64 -57
  455. package/test/sap/ui/core/demokit/tutorial/databinding/15/webapp/model/data.json +14 -0
  456. package/test/sap/ui/core/demokit/tutorial/databinding/15/webapp/view/App.view.xml +5 -5
  457. package/test/sap/ui/core/demokit/tutorial/mockserver/01/ui5.yaml +1 -1
  458. package/test/sap/ui/core/demokit/tutorial/mockserver/02/ui5.yaml +1 -1
  459. package/test/sap/ui/core/demokit/tutorial/mockserver/03/ui5.yaml +1 -1
  460. package/test/sap/ui/core/demokit/tutorial/mockserver/04/ui5.yaml +1 -1
  461. package/test/sap/ui/core/demokit/tutorial/navigation/01/ui5.yaml +1 -1
  462. package/test/sap/ui/core/demokit/tutorial/navigation/02/ui5.yaml +1 -1
  463. package/test/sap/ui/core/demokit/tutorial/navigation/03/ui5.yaml +1 -1
  464. package/test/sap/ui/core/demokit/tutorial/navigation/04/ui5.yaml +1 -1
  465. package/test/sap/ui/core/demokit/tutorial/navigation/05/ui5.yaml +1 -1
  466. package/test/sap/ui/core/demokit/tutorial/navigation/06/ui5.yaml +1 -1
  467. package/test/sap/ui/core/demokit/tutorial/navigation/07/ui5.yaml +1 -1
  468. package/test/sap/ui/core/demokit/tutorial/navigation/08/ui5.yaml +1 -1
  469. package/test/sap/ui/core/demokit/tutorial/navigation/09/ui5.yaml +1 -1
  470. package/test/sap/ui/core/demokit/tutorial/navigation/10/ui5.yaml +1 -1
  471. package/test/sap/ui/core/demokit/tutorial/navigation/11/ui5.yaml +1 -1
  472. package/test/sap/ui/core/demokit/tutorial/navigation/12/ui5.yaml +1 -1
  473. package/test/sap/ui/core/demokit/tutorial/navigation/13/ui5.yaml +1 -1
  474. package/test/sap/ui/core/demokit/tutorial/navigation/14/ui5.yaml +1 -1
  475. package/test/sap/ui/core/demokit/tutorial/navigation/15/ui5.yaml +1 -1
  476. package/test/sap/ui/core/demokit/tutorial/navigation/16/ui5.yaml +1 -1
  477. package/test/sap/ui/core/demokit/tutorial/navigation/17/ui5.yaml +1 -1
  478. package/test/sap/ui/core/demokit/tutorial/odatav4/01/ui5.yaml +1 -1
  479. package/test/sap/ui/core/demokit/tutorial/odatav4/02/ui5.yaml +1 -1
  480. package/test/sap/ui/core/demokit/tutorial/odatav4/03/ui5.yaml +1 -1
  481. package/test/sap/ui/core/demokit/tutorial/odatav4/04/ui5.yaml +1 -1
  482. package/test/sap/ui/core/demokit/tutorial/odatav4/05/ui5.yaml +1 -1
  483. package/test/sap/ui/core/demokit/tutorial/odatav4/06/ui5.yaml +1 -1
  484. package/test/sap/ui/core/demokit/tutorial/odatav4/07/ui5.yaml +1 -1
  485. package/test/sap/ui/core/demokit/tutorial/odatav4/08/ui5.yaml +1 -1
  486. package/test/sap/ui/core/demokit/tutorial/odatav4/09/ui5.yaml +1 -1
  487. package/test/sap/ui/core/demokit/tutorial/odatav4/10/ui5.yaml +1 -1
  488. package/test/sap/ui/core/demokit/tutorial/odatav4/11/ui5.yaml +1 -1
  489. package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/ui5.yaml +1 -1
  490. package/test/sap/ui/core/qunit/CompositeBinding.qunit.js +67 -0
  491. package/test/sap/ui/core/qunit/EventProvider.qunit.js +30 -2
  492. package/test/sap/ui/core/qunit/{Core_libraryPreloadFiles.qunit.html → Lib_preloadFiles.qunit.html} +1 -1
  493. package/test/sap/ui/core/qunit/{Core_libraryPreloadFiles.qunit.js → Lib_preloadFiles.qunit.js} +5 -10
  494. package/test/sap/ui/core/qunit/ThemeHelper.qunit.js +1 -1
  495. package/test/sap/ui/core/qunit/ThemeParameters.qunit.js +4 -4
  496. package/test/sap/ui/core/qunit/ThemeParameters_legacyAPIs.qunit.js +12 -12
  497. package/test/sap/ui/core/qunit/analytics/odata4analytics.qunit.js +262 -12
  498. package/test/sap/ui/core/qunit/app/DesignMode_suppressedDeactivation.qunit.js +8 -4
  499. package/test/sap/ui/core/qunit/app/_createDesignModeTests_legacyAPIs.qunit.js +8 -4
  500. package/test/sap/ui/core/qunit/app/fixture/designmode/test01.controller.js +4 -4
  501. package/test/sap/ui/core/qunit/app/testsuite.app.qunit.js +3 -3
  502. package/test/sap/ui/core/qunit/base/Config_cascade.qunit.js +11 -0
  503. package/test/sap/ui/core/qunit/component/Component_keepAlive.qunit.js +30 -2
  504. package/test/sap/ui/core/qunit/component/UIComponent.qunit.js +82 -19
  505. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3/App.view.xml +3 -0
  506. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3/Component.js +20 -0
  507. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3/Home.view.xml +5 -0
  508. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3/Other.view.xml +5 -0
  509. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3/manifest.json +54 -0
  510. package/test/sap/ui/core/qunit/gherkin/fixture/testHarnessAmbiguous.html +4 -0
  511. package/test/sap/ui/core/qunit/gherkin/fixture/testHarnessDuplicate.html +4 -0
  512. package/test/sap/ui/core/qunit/gherkin/fixture/testHarnessFailing.html +4 -0
  513. package/test/sap/ui/core/qunit/gherkin/opa5TestHarness.qunit.html +4 -0
  514. package/test/sap/ui/core/qunit/gherkin/opa5TestHarness.qunit.js +1 -1
  515. package/test/sap/ui/core/qunit/gherkin/qUnitTestHarness.qunit.html +4 -0
  516. package/test/sap/ui/core/qunit/gherkin/qUnitTestHarness.qunit.js +1 -1
  517. package/test/sap/ui/core/qunit/internal/1RingModels.qunit.html +1 -1
  518. package/test/sap/ui/core/qunit/internal/1RingModels.qunit.js +5 -6
  519. package/test/sap/ui/core/qunit/internal/testsuite.models.qunit.js +43 -16
  520. package/test/sap/ui/core/qunit/messages/messagesGeneral.qunit.js +194 -180
  521. package/test/sap/ui/core/qunit/messages/messagesUsage.qunit.js +15 -33
  522. package/test/sap/ui/core/qunit/mockserver/MockServer.qunit.js +936 -1014
  523. package/test/sap/ui/core/qunit/mockserver/testsuite.mockserver.qunit.js +2 -4
  524. package/test/sap/ui/core/qunit/model/FAR_CUSTOMER_LINE_ITEMS.metadata.xml +2 -0
  525. package/test/sap/ui/core/qunit/model/PropertyBinding.qunit.js +50 -1
  526. package/test/sap/ui/core/qunit/model/controlhelper/TreeBindingProxy.qunit.js +18 -8
  527. package/test/sap/ui/core/qunit/mvc/Controller.qunit.js +107 -49
  528. package/test/sap/ui/core/qunit/mvc/testdata/asyncHooks.view.xml +7 -0
  529. package/test/sap/ui/core/qunit/odata/ODataMetaModel.qunit.js +0 -3
  530. package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +143 -2
  531. package/test/sap/ui/core/qunit/odata/v2/ODataModelNoFakeService.qunit.js +34 -0
  532. package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +230 -39
  533. package/test/sap/ui/core/qunit/odata/v4/ODataBinding.qunit.js +57 -18
  534. package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +40 -6
  535. package/test/sap/ui/core/qunit/odata/v4/ODataMetaModel.qunit.js +3 -0
  536. package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +1715 -106
  537. package/test/sap/ui/core/qunit/odata/v4/ODataModel.qunit.js +39 -0
  538. package/test/sap/ui/core/qunit/odata/v4/ODataPropertyBinding.qunit.js +88 -18
  539. package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +544 -50
  540. package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationHelper.qunit.js +175 -0
  541. package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +50 -9
  542. package/test/sap/ui/core/qunit/odata/v4/lib/_Helper.qunit.js +17 -0
  543. package/test/sap/ui/core/qunit/odata/v4/lib/_TreeState.qunit.js +140 -27
  544. package/test/sap/ui/core/qunit/opa/RecordReplay.qunit.js +12 -3
  545. package/test/sap/ui/core/qunit/resource/ResourceModel.qunit.js +1 -2
  546. package/test/sap/ui/core/qunit/routing/fixture/placeholder/component/NavContainerOptOut/Component.js +1 -0
  547. package/test/sap/ui/core/qunit/rule/model/bindingPathSyntaxValidation.qunit.js +37 -0
  548. package/test/sap/ui/core/qunit/rule/model/{modelSupport.qunit.js → selectUsedInBoundAggregation.qunit.js} +86 -154
  549. package/test/sap/ui/core/qunit/rule/testsuite.rule.qunit.js +5 -2
  550. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib12/themes/{sap_hcb → sap_horizon_hcb}/library.css +1 -1
  551. package/test/sap/ui/core/qunit/testsuite.core.framework.qunit.js +18 -18
  552. package/test/sap/ui/core/qunit/testsuites/testsuite.base.configuration.qunit.js +1 -1
  553. package/test/sap/ui/core/qunit/testsuites/testsuite.controls.qunit.js +2 -1
  554. package/test/sap/ui/core/qunit/testsuites/testsuite.theming.qunit.js +3 -3
  555. package/test/sap/ui/core/qunit/types/CompositeType.qunit.js +6 -0
  556. package/test/sap/ui/core/qunit/types/DateFormat.qunit.js +3 -6
  557. package/test/sap/ui/core/qunit/types/NumberFormat.qunit.js +1370 -1242
  558. package/test/sap/ui/core/qunit/types/Types.qunit.js +65 -0
  559. package/test/sap/ui/core/qunit/types/testsuite.types.qunit.js +0 -3
  560. package/test/sap/ui/core/qunit/ui5classes/ManagedObject.qunit.js +68 -3
  561. package/test/sap/ui/core/qunit/util/XMLPreprocessor.qunit.js +2757 -1920
  562. package/test/sap/ui/core/qunit/util/reflection/JsControlTreeModifier.qunit.js +0 -102
  563. package/test/sap/ui/core/qunit/util/reflection/XmlTreeModifier.qunit.js +0 -165
  564. package/test/sap/ui/core/relnotes/changes-1.121.json +0 -15
  565. package/test/sap/ui/core/relnotes/changes-1.122.json +80 -0
  566. package/test/sap/ui/core/visual/HyphenationPlayground.spec.js +5 -2
  567. package/test/sap/ui/core/demokit/tutorial/databinding/01/webapp/index.js +0 -15
  568. package/test/sap/ui/core/demokit/tutorial/databinding/02/webapp/index.js +0 -21
  569. package/test/sap/ui/core/demokit/tutorial/databinding/03/webapp/index.js +0 -21
  570. package/test/sap/ui/core/demokit/tutorial/databinding/04/webapp/index.js +0 -25
  571. package/test/sap/ui/core/demokit/tutorial/databinding/05/webapp/index.js +0 -29
  572. package/test/sap/ui/core/demokit/tutorial/databinding/06/webapp/index.js +0 -42
  573. package/test/sap/ui/core/demokit/tutorial/databinding/07/webapp/index.js +0 -44
  574. package/test/sap/ui/core/demokit/tutorial/databinding/08/webapp/index.js +0 -39
  575. package/test/sap/ui/core/demokit/tutorial/databinding/09/webapp/index.js +0 -39
  576. package/test/sap/ui/core/demokit/tutorial/databinding/10/webapp/index.js +0 -41
  577. package/test/sap/ui/core/demokit/tutorial/databinding/11/webapp/index.js +0 -48
  578. package/test/sap/ui/core/demokit/tutorial/databinding/12/webapp/index.js +0 -52
  579. package/test/sap/ui/core/demokit/tutorial/databinding/13/webapp/index.js +0 -52
  580. package/test/sap/ui/core/demokit/tutorial/databinding/14/webapp/index.js +0 -54
  581. package/test/sap/ui/core/demokit/tutorial/databinding/15/webapp/index.js +0 -54
  582. /package/test/sap/ui/core/qunit/testdata/legacy-uilib_legacyAPIs/themes/{sap_hcb → sap_horizon_hcb}/library-parameters.json +0 -0
  583. /package/test/sap/ui/core/qunit/testdata/legacy-uilib_legacyAPIs/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  584. /package/test/sap/ui/core/qunit/testdata/legacy-uilib_legacyAPIs/themes/{sap_hcb → sap_horizon_hcb}/library[legacy].css +0 -0
  585. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib1/themes/{sap_hcb → sap_horizon_hcb}/library-parameters.json +0 -0
  586. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib1/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  587. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib10/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  588. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib11/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  589. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib13/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  590. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib14/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  591. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib15/themes/{sap_hcb → sap_horizon_hcb}/library-parameters.json +0 -0
  592. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib15/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  593. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib16/themes/{sap_hcb → sap_horizon_hcb}/library-parameters.json +0 -0
  594. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib16/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  595. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib17/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  596. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib2/themes/{sap_hcb → sap_horizon_hcb}/library-parameters.json +0 -0
  597. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib2/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  598. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib3/themes/{sap_hcb → sap_horizon_hcb}/library-parameters.json +0 -0
  599. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib3/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  600. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib4/themes/{sap_hcb → sap_horizon_hcb}/library-parameters.json +0 -0
  601. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib5/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  602. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib6/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  603. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib7/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  604. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib8/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
  605. /package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib9/themes/{sap_hcb → sap_horizon_hcb}/library.css +0 -0
@@ -14,8 +14,9 @@ sap.ui.define([
14
14
  "sap/base/security/encodeURL",
15
15
  "sap/ui/model/Filter",
16
16
  "sap/ui/model/FilterOperator",
17
- "sap/ui/model/Sorter"
18
- ], function(encodeURL, Filter, FilterOperator, Sorter) {
17
+ "sap/ui/model/Sorter",
18
+ "sap/ui/model/odata/ODataUtils"
19
+ ], function(encodeURL, Filter, FilterOperator, Sorter, ODataUtils) {
19
20
  "use strict";
20
21
 
21
22
  /**
@@ -3093,16 +3094,12 @@ sap.ui.define([
3093
3094
  /**
3094
3095
  * @private
3095
3096
  */
3096
- _renderPropertyFilterValue : function(sFilterValue, sPropertyEDMTypeName) {
3097
+ _renderPropertyFilterValue : function (sFilterValue, sPropertyEDMTypeName, sFractionalSeconds) {
3097
3098
  if (sPropertyEDMTypeName === "Edm.Time" && rOnlyDigits.test(sFilterValue)) {
3098
3099
  sFilterValue = {ms : parseInt(sFilterValue), __edmType : "Edm.Time"};
3099
3100
  }
3100
3101
 
3101
- // initial implementation called odata4analytics.helper.renderPropertyFilterValue,
3102
- // which had problems with locale-specific input values
3103
- // this is handled in the ODataModel
3104
- return encodeURL(
3105
- this._oModel.getODataModel().formatValue(sFilterValue, sPropertyEDMTypeName));
3102
+ return encodeURL(ODataUtils._formatValue(sFilterValue, sPropertyEDMTypeName, true, sFractionalSeconds));
3106
3103
  },
3107
3104
 
3108
3105
  /**
@@ -3118,17 +3115,26 @@ sap.ui.define([
3118
3115
  },
3119
3116
 
3120
3117
  /**
3118
+ * Adds the given filter to <code>this._aConditionUI5Filter</code> if it is not yet contained.
3119
+ *
3120
+ * @param {sap.ui.model.Filter} oFilter The filter to add
3121
3121
  * @private
3122
3122
  */
3123
- _addCondition : function(sProperty, sOperator, oValue1, oValue2) {
3123
+ _addCondition : function (oFilter) {
3124
+ const {sPath, sOperator, oValue1, oValue2, sFractionalSeconds1, sFractionalSeconds2} = oFilter;
3124
3125
  // make sure that the condition is new
3125
- for ( var i = -1, oUI5Filter; (oUI5Filter = this._aConditionUI5Filter[++i]) !== undefined;) {
3126
- if (oUI5Filter.sPath == sProperty && oUI5Filter.sOperator == sOperator && oUI5Filter.oValue1 == oValue1
3127
- && oUI5Filter.oValue2 == oValue2) {
3128
- return;
3129
- }
3126
+ const bExists = this._aConditionUI5Filter.some((oFilter0) =>
3127
+ oFilter0.sPath === sPath
3128
+ && oFilter0.sOperator === sOperator
3129
+ // coercion really necessary? For dates and Edm.Time objects the equality operator
3130
+ // does not prevent duplicates
3131
+ && oFilter0.oValue1 == oValue1
3132
+ && oFilter0.oValue2 == oValue2
3133
+ && oFilter0.sFractionalSeconds1 === sFractionalSeconds1
3134
+ && oFilter0.sFractionalSeconds2 === sFractionalSeconds2);
3135
+ if (!bExists) {
3136
+ this._aConditionUI5Filter.push(oFilter);
3130
3137
  }
3131
- this._aConditionUI5Filter.push(new Filter(sProperty, sOperator, oValue1, oValue2));
3132
3138
  },
3133
3139
 
3134
3140
  /**
@@ -3144,22 +3150,28 @@ sap.ui.define([
3144
3150
  * Multiple conditions on the same property are combined with a logical OR first, and in a second step conditions for
3145
3151
  * different properties are combined with a logical AND.
3146
3152
  *
3147
- * @param {string}
3148
- * sPropertyName The name of the property bound in the condition
3149
- * @param {sap.ui.model.FilterOperator}
3150
- * sOperator operator used for the condition
3151
- * @param {object}
3152
- * oValue value to be used for this condition
3153
- * @param {object}
3154
- * oValue2 (optional) as second value to be used for this condition
3155
- * @throws Exception
3156
- * if the property is unknown or not filterable
3153
+ * @param {string|sap.ui.model.Filter} vPropertyNameOrFilter
3154
+ * The name of the property or a {@link sap.ui.model.Filter} instance
3155
+ * @param {sap.ui.model.FilterOperator} [sOperator]
3156
+ * The operator of the condition, only used if <code>vPropertyNameOrFilter</code> is a string
3157
+ * @param {object} [oValue]
3158
+ * The value of the condition, only used if <code>vPropertyNameOrFilter</code> is a string
3159
+ * @param {object} [oValue2]
3160
+ * The second value of the condition, only used if <code>vPropertyNameOrFilter</code> is a string
3157
3161
  * @returns {sap.ui.model.analytics.odata4analytics.FilterExpression} This object for method chaining
3162
+ * @throws Exception
3163
+ * If the property is unknown or not filterable
3158
3164
  * @public
3159
3165
  * @function
3160
3166
  * @name sap.ui.model.analytics.odata4analytics.FilterExpression#addCondition
3161
3167
  */
3162
- addCondition : function(sPropertyName, sOperator, oValue, oValue2) {
3168
+ addCondition : function (vPropertyNameOrFilter, sOperator, oValue, oValue2) {
3169
+ let sPropertyName = vPropertyNameOrFilter;
3170
+ let oFilter;
3171
+ if (typeof vPropertyNameOrFilter === "object") {
3172
+ sPropertyName = vPropertyNameOrFilter.sPath;
3173
+ oFilter = vPropertyNameOrFilter;
3174
+ }
3163
3175
  var oProperty = this._oEntityType.findPropertyByName(sPropertyName);
3164
3176
  if (oProperty == null) {
3165
3177
  throw "Cannot add filter condition for unknown property name " + sPropertyName; // TODO
@@ -3168,7 +3180,7 @@ sap.ui.define([
3168
3180
  if (((aFilterablePropertyNames ? Array.prototype.indexOf.call(aFilterablePropertyNames, sPropertyName) : -1)) === -1) {
3169
3181
  throw "Cannot add filter condition for not filterable property name " + sPropertyName; // TODO
3170
3182
  }
3171
- this._addCondition(sPropertyName, sOperator, oValue, oValue2);
3183
+ this._addCondition(oFilter || new Filter(sPropertyName, sOperator, oValue, oValue2));
3172
3184
  return this;
3173
3185
  },
3174
3186
 
@@ -3227,20 +3239,20 @@ sap.ui.define([
3227
3239
  throw "Cannot add filter condition for not filterable property name " + sPropertyName; // TODO
3228
3240
  }
3229
3241
  for ( var i = -1, oValue; (oValue = aValues[++i]) !== undefined;) {
3230
- this._addCondition(sPropertyName, FilterOperator.EQ, oValue);
3242
+ this._addCondition(new Filter(sPropertyName, FilterOperator.EQ, oValue));
3231
3243
  }
3232
3244
  return this;
3233
3245
  },
3234
3246
 
3235
3247
  /**
3236
- * Add an array of UI5 filter conditions to the filter expression.
3248
+ * Adds an array of UI5 filter conditions to the filter expression.
3237
3249
  *
3238
3250
  * The UI5 filter condition is combined with the other given conditions using a logical AND. This method
3239
3251
  * is particularly useful for passing forward already created UI5 filter arrays.
3240
3252
  *
3241
- * @param {sap.ui.model.Filter[]}
3242
- * aUI5Filter Array of UI5 filter objects
3253
+ * @param {sap.ui.model.Filter[]} aUI5Filter Array of UI5 filter objects
3243
3254
  * @returns {sap.ui.model.analytics.odata4analytics.FilterExpression} This object for method chaining
3255
+ * @throws Exception If the given aUI5Filter is not an array
3244
3256
  * @public
3245
3257
  * @function
3246
3258
  * @name sap.ui.model.analytics.odata4analytics.FilterExpression#addUI5FilterConditions
@@ -3265,7 +3277,7 @@ sap.ui.define([
3265
3277
  this._addUI5FilterArray(aUI5Filter);
3266
3278
  } else {
3267
3279
  for (var j = 0; j < aUI5Filter.length; j++) {
3268
- this.addCondition(aUI5Filter[j].sPath, aUI5Filter[j].sOperator, aUI5Filter[j].oValue1, aUI5Filter[j].oValue2);
3280
+ this.addCondition(aUI5Filter[j]);
3269
3281
  }
3270
3282
  }
3271
3283
  return this;
@@ -3337,48 +3349,50 @@ sap.ui.define([
3337
3349
  *
3338
3350
  * @param {string} oUI5Filter The filter object to render (must not be a multi filter)
3339
3351
  * @returns {string} The $filter value for the given UI5 filter
3352
+ * @throws Exception If the given <code>oUI5Filter.sPath</code> is not the name of a property of this
3353
+ * filter's expression entity type
3340
3354
  * @private
3341
3355
  */
3342
3356
  renderUI5Filter : function(oUI5Filter) {
3343
- var sFilterExpression = null,
3344
- oProperty = this._oEntityType.findPropertyByName(oUI5Filter.sPath);
3357
+ const {sPath, sOperator, oValue1, oValue2, sFractionalSeconds1, sFractionalSeconds2} = oUI5Filter;
3358
+ let sFilterExpression = null;
3359
+ const oProperty = this._oEntityType.findPropertyByName(sPath);
3345
3360
 
3346
3361
  if (oProperty == null) {
3347
- throw "Cannot add filter condition for unknown property name " + oUI5Filter.sPath; // TODO
3362
+ throw "Cannot add filter condition for unknown property name " + sPath; // TODO
3348
3363
  }
3349
3364
 
3350
- switch (oUI5Filter.sOperator) {
3365
+ switch (sOperator) {
3351
3366
  case FilterOperator.BT:
3352
- sFilterExpression = "(" + oUI5Filter.sPath + " ge "
3353
- + this._renderPropertyFilterValue(oUI5Filter.oValue1, oProperty.type)
3354
- + " and " + oUI5Filter.sPath + " le "
3355
- + this._renderPropertyFilterValue(oUI5Filter.oValue2, oProperty.type)
3367
+ sFilterExpression = "(" + sPath + " ge "
3368
+ + this._renderPropertyFilterValue(oValue1, oProperty.type, sFractionalSeconds1)
3369
+ + " and " + sPath + " le "
3370
+ + this._renderPropertyFilterValue(oValue2, oProperty.type, sFractionalSeconds2)
3356
3371
  + ")";
3357
3372
  break;
3358
3373
  case FilterOperator.NB:
3359
- sFilterExpression = "(" + oUI5Filter.sPath + " lt "
3360
- + this._renderPropertyFilterValue(oUI5Filter.oValue1, oProperty.type)
3361
- + " or " + oUI5Filter.sPath + " gt "
3362
- + this._renderPropertyFilterValue(oUI5Filter.oValue2, oProperty.type)
3374
+ sFilterExpression = "(" + sPath + " lt "
3375
+ + this._renderPropertyFilterValue(oValue1, oProperty.type, sFractionalSeconds1)
3376
+ + " or " + sPath + " gt "
3377
+ + this._renderPropertyFilterValue(oValue2, oProperty.type, sFractionalSeconds2)
3363
3378
  + ")";
3364
3379
  break;
3365
3380
  case FilterOperator.Contains:
3366
3381
  case FilterOperator.NotContains:
3367
- sFilterExpression = (oUI5Filter.sOperator[0] === "N" ? "not " : "") + "substringof("
3368
- + this._renderPropertyFilterValue(oUI5Filter.oValue1, "Edm.String")
3369
- + "," + oUI5Filter.sPath + ")";
3382
+ sFilterExpression = (sOperator[0] === "N" ? "not " : "") + "substringof("
3383
+ + this._renderPropertyFilterValue(oValue1, "Edm.String")
3384
+ + "," + sPath + ")";
3370
3385
  break;
3371
3386
  case FilterOperator.StartsWith:
3372
3387
  case FilterOperator.EndsWith:
3373
3388
  case FilterOperator.NotStartsWith:
3374
3389
  case FilterOperator.NotEndsWith:
3375
- sFilterExpression = oUI5Filter.sOperator.toLowerCase().replace("not", "not ") + "("
3376
- + oUI5Filter.sPath + ","
3377
- + this._renderPropertyFilterValue(oUI5Filter.oValue1, "Edm.String") + ")";
3390
+ sFilterExpression = sOperator.toLowerCase().replace("not", "not ") + "(" + sPath + ","
3391
+ + this._renderPropertyFilterValue(oValue1, "Edm.String") + ")";
3378
3392
  break;
3379
3393
  default:
3380
- sFilterExpression = oUI5Filter.sPath + " " + oUI5Filter.sOperator.toLowerCase()
3381
- + " " + this._renderPropertyFilterValue(oUI5Filter.oValue1, oProperty.type);
3394
+ sFilterExpression = sPath + " " + sOperator.toLowerCase()
3395
+ + " " + this._renderPropertyFilterValue(oValue1, oProperty.type, sFractionalSeconds1);
3382
3396
  }
3383
3397
 
3384
3398
  return sFilterExpression;
@@ -391,10 +391,7 @@ sap.ui.define(["sap/base/assert", "sap/base/Log"], function (assert, Log) {
391
391
  }
392
392
 
393
393
  function expandToV4(oBinding, iLevel) {
394
- var oAggregation = Object.assign(oBinding.getAggregation(), {
395
- expandTo: iLevel
396
- });
397
- oBinding.setAggregation(oAggregation);
394
+ oBinding.setAggregation({...oBinding.getAggregation(), ...{expandTo: iLevel}});
398
395
  }
399
396
 
400
397
  /**
@@ -25,8 +25,11 @@ sap.ui.define([
25
25
  * @param {sap.ui.model.json.JSONModel} oModel Model instance that this binding is created for and that it belongs to
26
26
  * @param {string} sPath Binding path to be used for this binding
27
27
  * @param {sap.ui.model.Context} oContext Binding context relative to which a relative binding path will be resolved
28
- * @param {sap.ui.model.Sorter|sap.ui.model.Sorter[]} [aSorters] Initial sort order (can be either a sorter or an array of sorters)
29
- * @param {sap.ui.model.Filter|sap.ui.model.Filter[]} [aFilters] Predefined filter/s (can be either a filter or an array of filters)
28
+ * @param {sap.ui.model.Sorter[]|sap.ui.model.Sorter} [aSorters=[]]
29
+ * The sorters used initially; call {@link #sort} to replace them
30
+ * @param {sap.ui.model.Filter[]|sap.ui.model.Filter} [aFilters=[]]
31
+ * The filters to be used initially with type {@link sap.ui.model.FilterType.Application}; call {@link #filter} to
32
+ * replace them
30
33
  * @param {object} [mParameters] Map of optional parameters as defined by subclasses; this class does not introduce any own parameters
31
34
  * @throws {Error} If one of the filters uses an operator that is not supported by the underlying model
32
35
  * implementation or if the {@link sap.ui.model.Filter.NONE} filter instance is contained in <code>aFilters</code>
@@ -48,7 +48,7 @@ sap.ui.define([
48
48
  * @extends sap.ui.model.ClientModel
49
49
  *
50
50
  * @author SAP SE
51
- * @version 1.121.0
51
+ * @version 1.122.0
52
52
  * @public
53
53
  * @alias sap.ui.model.json.JSONModel
54
54
  */
@@ -177,10 +177,12 @@ sap.ui.define([
177
177
  * the request can not successfully retrieve data from a different domain, subdomain, or protocol.
178
178
  *
179
179
  * @param {string} sURL A string containing the URL to which the request is sent.
180
- * @param {object | string} [oParameters] A map or string that is sent to the server with the request.
181
- * Data that is sent to the server is appended to the URL as a query string.
182
- * If the value of the data parameter is an object (map), it is converted to a string and
183
- * url-encoded before it is appended to the URL.
180
+ * @param {object | string} [oParameters]
181
+ * A map or string that is sent to the server with the request. If the value of this parameter is a string, it
182
+ * must already be url-encoded.
183
+ * If the value of this parameter is an object (map), it is converted to a string and then url-encoded.
184
+ * The resulting string is appended to the URL if the HTTP request method cannot have a request body,
185
+ * e.g. for a GET request. Otherwise, the resulting string is added to the request body.
184
186
  * @param {boolean} [bAsync=true] <b>Deprecated as of Version 1.107</b>; always use asynchronous
185
187
  * loading for performance reasons. By default, all requests are sent asynchronously.
186
188
  * Synchronous requests may temporarily lock the browser, disabling any actions while
@@ -22,14 +22,17 @@ sap.ui.define(['sap/ui/model/ClientTreeBinding'],
22
22
  * sPath Path pointing to the tree or array that should be bound
23
23
  * @param {object}
24
24
  * [oContext=null] Context object for this binding, mandatory when a relative binding path is given
25
- * @param {sap.ui.model.Filter|sap.ui.model.Filter[]}
26
- * [aFilters=null] Predefined filters contained in an array
25
+ * @param {sap.ui.model.Filter[]|sap.ui.model.Filter} [aFilters=[]]
26
+ * The filters to be used initially with type {@link sap.ui.model.FilterType.Application}; call {@link #filter} to
27
+ * replace them
27
28
  * @param {object}
28
29
  * [mParameters=null] Additional model-specific parameters
29
30
  * @param {string[]} [mParameters.arrayNames]
30
31
  * Keys of arrays to be used for building the tree structure. If not specified, all arrays and objects in the bound data will be used.
31
32
  * Note that for arrays nested inside differently named arrays, you need to add both to <code>arrayNames</code>. You always have to add the complete parent chain.
32
33
  * If any array is ignored, its child arrays will be ignored as well even if they have been added to <code>arrayNames</code>.
34
+ * @param {sap.ui.model.Sorter[]|sap.ui.model.Sorter} [aSorters=[]]
35
+ * The sorters used initially; call {@link #sort} to replace them
33
36
  * @throws {Error} If one of the filters uses an operator that is not supported by the underlying model
34
37
  * implementation or if the {@link sap.ui.model.Filter.NONE} filter instance is contained in <code>aFilters</code>
35
38
  * together with other filters
@@ -23,8 +23,11 @@ sap.ui.define([
23
23
  * @param {sap.ui.model.message.MessageModel} oModel
24
24
  * @param {string} sPath
25
25
  * @param {sap.ui.model.Context} oContext
26
- * @param {sap.ui.model.Sorter|sap.ui.model.Sorter[]} [aSorters] initial sort order (can be either a sorter or an array of sorters).
27
- * @param {sap.ui.model.Filter|sap.ui.model.Filter[]} [aFilters] predefined filter/s (can be either a filter or an array of filters).
26
+ * @param {sap.ui.model.Sorter[]|sap.ui.model.Sorter} [aSorters=[]]
27
+ * The sorters used initially; call {@link #sort} to replace them
28
+ * @param {sap.ui.model.Filter[]|sap.ui.model.Filter} [aFilters=[]]
29
+ * The filters to be used initially with type {@link sap.ui.model.FilterType.Application}; call {@link #filter} to
30
+ * replace them
28
31
  * @param {object} [mParameters]
29
32
  * @throws {Error} If one of the filters uses an operator that is not supported by the underlying model
30
33
  * implementation or if the {@link sap.ui.model.Filter.NONE} filter instance is contained in <code>aFilters</code>
@@ -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.121.0
32
+ * @version 1.122.0
33
33
  *
34
34
  * @public
35
35
  * @alias sap.ui.model.message.MessageModel
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  *
28
28
  * @author SAP SE
29
29
  * @version
30
- * 1.121.0
30
+ * 1.122.0
31
31
  *
32
32
  * @public
33
33
  * @deprecated As of version 1.66, please use {@link sap.ui.model.odata.v2.ODataAnnotations} instead.
@@ -86,7 +86,7 @@ var sClassName = "sap.ui.model.odata.ODataMessageParser",
86
86
  * @extends sap.ui.core.message.MessageParser
87
87
  *
88
88
  * @author SAP SE
89
- * @version 1.121.0
89
+ * @version 1.122.0
90
90
  * @public
91
91
  * @alias sap.ui.model.odata.ODataMessageParser
92
92
  */
@@ -9,7 +9,6 @@ sap.ui.define([
9
9
  "sap/base/Log",
10
10
  "sap/base/util/extend",
11
11
  "sap/base/util/isEmptyObject",
12
- "sap/base/util/UriParameters",
13
12
  "sap/ui/base/BindingParser",
14
13
  "sap/ui/base/ManagedObject",
15
14
  "sap/ui/base/SyncPromise",
@@ -24,9 +23,9 @@ sap.ui.define([
24
23
  "sap/ui/model/json/JSONPropertyBinding",
25
24
  "sap/ui/model/json/JSONTreeBinding",
26
25
  "sap/ui/performance/Measurement"
27
- ], function (Utils, Log, extend, isEmptyObject, UriParameters, BindingParser, ManagedObject,
28
- SyncPromise, _Helper, BindingMode, ClientContextBinding, Context, FilterProcessor, MetaModel,
29
- JSONListBinding, JSONModel, JSONPropertyBinding, JSONTreeBinding, Measurement) {
26
+ ], function (Utils, Log, extend, isEmptyObject, BindingParser, ManagedObject, SyncPromise, _Helper, BindingMode,
27
+ ClientContextBinding, Context, FilterProcessor, MetaModel, JSONListBinding, JSONModel, JSONPropertyBinding,
28
+ JSONTreeBinding, Measurement) {
30
29
  "use strict";
31
30
 
32
31
  /**
@@ -881,7 +880,7 @@ sap.ui.define([
881
880
  * {@link #loaded loaded} has been resolved!
882
881
  *
883
882
  * @author SAP SE
884
- * @version 1.121.0
883
+ * @version 1.122.0
885
884
  * @alias sap.ui.model.odata.ODataMetaModel
886
885
  * @extends sap.ui.model.MetaModel
887
886
  * @public
@@ -1270,10 +1269,10 @@ sap.ui.define([
1270
1269
  oCodeListModel = oCodeListModelCache.oModel;
1271
1270
 
1272
1271
  oReadPromise = new SyncPromise(function (fnResolve, fnReject) {
1273
- var oUriParams = UriParameters.fromURL(sMetaDataUrl),
1274
- sClient = oUriParams.get("sap-client"),
1275
- sLanguage = oUriParams.get("sap-language"),
1276
- mUrlParameters = {$skip : 0, $top : 5000}; // avoid server-driven paging
1272
+ const oURLSearchParams = new URL(sMetaDataUrl, "https://localhost").searchParams;
1273
+ const sClient = oURLSearchParams.get("sap-client");
1274
+ const sLanguage = oURLSearchParams.get("sap-language");
1275
+ const mUrlParameters = {$skip : 0, $top : 5000}; // avoid server-driven paging
1277
1276
 
1278
1277
  if (sClient) {
1279
1278
  mUrlParameters["sap-client"] = sClient;
@@ -49,7 +49,7 @@ sap.ui.define([
49
49
  * Implementation to access OData metadata
50
50
  *
51
51
  * @author SAP SE
52
- * @version 1.121.0
52
+ * @version 1.122.0
53
53
  *
54
54
  * @public
55
55
  * @alias sap.ui.model.odata.ODataMetadata
@@ -78,7 +78,7 @@ sap.ui.define([
78
78
  *
79
79
  *
80
80
  * @author SAP SE
81
- * @version 1.121.0
81
+ * @version 1.122.0
82
82
  *
83
83
  * @public
84
84
  * @deprecated As of version 1.48, please use {@link sap.ui.model.odata.v2.ODataModel} instead.
@@ -523,7 +523,7 @@ sap.ui.define([
523
523
  *
524
524
  * @param {any} vValue The value to format
525
525
  * @param {string} sType The EDM type (e.g. Edm.Decimal)
526
- * @param {boolean} bCaseSensitive Whether strings gets compared case sensitive or not
526
+ * @param {boolean} [bCaseSensitive=true] Whether strings gets compared case sensitive or not
527
527
  * @param {string} [sFractionalSeconds] The fractional seconds to be appended to the given value in case it is a
528
528
  * <code>Date<code>
529
529
  * @return {string} The formatted value
@@ -10,9 +10,7 @@ sap.ui.define([
10
10
  "sap/ui/model/FormatException",
11
11
  "sap/ui/model/ParseException",
12
12
  "sap/ui/model/ValidateException",
13
- "sap/ui/model/odata/type/ODataType",
14
- // provides sap.ui.getCore()
15
- "sap/ui/core/Core"
13
+ "sap/ui/model/odata/type/ODataType"
16
14
  ], function(Log, Library, FormatException, ParseException, ValidateException, ODataType) {
17
15
  "use strict";
18
16
 
@@ -89,7 +87,7 @@ sap.ui.define([
89
87
  * @extends sap.ui.model.odata.type.ODataType
90
88
  *
91
89
  * @author SAP SE
92
- * @version 1.121.0
90
+ * @version 1.122.0
93
91
  *
94
92
  * @alias sap.ui.model.odata.type.Boolean
95
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.121.0
27
+ * @version 1.122.0
28
28
  *
29
29
  * @alias sap.ui.model.odata.type.Byte
30
30
  * @param {object} [oFormatOptions]
@@ -65,7 +65,7 @@ sap.ui.define([
65
65
  * @extends sap.ui.model.type.Currency
66
66
  * @public
67
67
  * @since 1.63.0
68
- * @version 1.121.0
68
+ * @version 1.122.0
69
69
  */
70
70
  var Currency = BaseCurrency.extend("sap.ui.model.odata.type.Currency", {
71
71
  constructor : function (oFormatOptions, oConstraints) {
@@ -76,7 +76,7 @@ sap.ui.define([
76
76
  * @extends sap.ui.model.odata.type.ODataType
77
77
  *
78
78
  * @author SAP SE
79
- * @version 1.121.0
79
+ * @version 1.122.0
80
80
  *
81
81
  * @alias sap.ui.model.odata.type.Date
82
82
  * @param {object} [oFormatOptions]
@@ -61,7 +61,7 @@ sap.ui.define([
61
61
  * @extends sap.ui.model.odata.type.DateTimeBase
62
62
  *
63
63
  * @author SAP SE
64
- * @version 1.121.0
64
+ * @version 1.122.0
65
65
  *
66
66
  * @alias sap.ui.model.odata.type.DateTime
67
67
  * @param {object} [oFormatOptions]
@@ -92,7 +92,7 @@ sap.ui.define([
92
92
  * @extends sap.ui.model.odata.type.ODataType
93
93
  * @public
94
94
  * @since 1.27.0
95
- * @version 1.121.0
95
+ * @version 1.122.0
96
96
  */
97
97
  var DateTimeBase = ODataType.extend("sap.ui.model.odata.type.DateTimeBase", {
98
98
  constructor : function (oFormatOptions, oConstraints) {
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @extends sap.ui.model.odata.type.DateTimeBase
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.121.0
32
+ * @version 1.122.0
33
33
  *
34
34
  * @alias sap.ui.model.odata.type.DateTimeOffset
35
35
  * @param {object} [oFormatOptions]
@@ -46,7 +46,7 @@ sap.ui.define([
46
46
  * @public
47
47
  * @see {sap.ui.model.odata.v2.ODataModel#bindProperty}
48
48
  * @since 1.99.0
49
- * @version 1.121.0
49
+ * @version 1.122.0
50
50
  */
51
51
  var DateTimeWithTimezone = CompositeType.extend("sap.ui.model.odata.type.DateTimeWithTimezone",
52
52
  {
@@ -171,7 +171,7 @@ sap.ui.define([
171
171
  * @extends sap.ui.model.odata.type.ODataType
172
172
  *
173
173
  * @author SAP SE
174
- * @version 1.121.0
174
+ * @version 1.122.0
175
175
  *
176
176
  * @alias sap.ui.model.odata.type.Decimal
177
177
  * @param {object} [oFormatOptions]
@@ -74,7 +74,7 @@ sap.ui.define([
74
74
  * @extends sap.ui.model.odata.type.ODataType
75
75
  *
76
76
  * @author SAP SE
77
- * @version 1.121.0
77
+ * @version 1.122.0
78
78
  *
79
79
  * @alias sap.ui.model.odata.type.Double
80
80
  * @param {object} [oFormatOptions]
@@ -63,7 +63,7 @@ sap.ui.define([
63
63
  * @extends sap.ui.model.odata.type.ODataType
64
64
  *
65
65
  * @author SAP SE
66
- * @version 1.121.0
66
+ * @version 1.122.0
67
67
  *
68
68
  * @alias sap.ui.model.odata.type.Guid
69
69
  * @param {object} [oFormatOptions]
@@ -63,7 +63,7 @@ sap.ui.define([
63
63
  * @extends sap.ui.model.odata.type.ODataType
64
64
  *
65
65
  * @author SAP SE
66
- * @version 1.121.0
66
+ * @version 1.122.0
67
67
  *
68
68
  * @abstract
69
69
  * @alias sap.ui.model.odata.type.Int
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.ui.model.odata.type.Int
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.121.0
27
+ * @version 1.122.0
28
28
  *
29
29
  * @alias sap.ui.model.odata.type.Int16
30
30
  * @param {object} [oFormatOptions]
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.ui.model.odata.type.Int
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.121.0
27
+ * @version 1.122.0
28
28
  *
29
29
  * @alias sap.ui.model.odata.type.Int32
30
30
  * @param {object} [oFormatOptions]
@@ -119,7 +119,7 @@ sap.ui.define([
119
119
  * @extends sap.ui.model.odata.type.ODataType
120
120
  *
121
121
  * @author SAP SE
122
- * @version 1.121.0
122
+ * @version 1.122.0
123
123
  *
124
124
  * @alias sap.ui.model.odata.type.Int64
125
125
  * @param {object} [oFormatOptions]
@@ -116,7 +116,7 @@ sap.ui.define([
116
116
  * @extends sap.ui.model.SimpleType
117
117
  *
118
118
  * @author SAP SE
119
- * @version 1.121.0
119
+ * @version 1.122.0
120
120
  *
121
121
  * @abstract
122
122
  * @alias sap.ui.model.odata.type.ODataType
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @extends sap.ui.model.odata.type.ODataType
31
31
  * @public
32
32
  * @since 1.37.0
33
- * @version 1.121.0
33
+ * @version 1.122.0
34
34
  */
35
35
  var Raw = ODataType.extend("sap.ui.model.odata.type.Raw", {
36
36
  constructor : function (oFormatOptions, oConstraints) {
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.ui.model.odata.type.Int
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.121.0
27
+ * @version 1.122.0
28
28
  *
29
29
  * @alias sap.ui.model.odata.type.SByte
30
30
  * @param {object} [oFormatOptions]
@@ -74,7 +74,7 @@ sap.ui.define([
74
74
  * @extends sap.ui.model.odata.type.ODataType
75
75
  *
76
76
  * @author SAP SE
77
- * @version 1.121.0
77
+ * @version 1.122.0
78
78
  *
79
79
  * @alias sap.ui.model.odata.type.Single
80
80
  * @param {object} [oFormatOptions]
@@ -60,7 +60,7 @@ sap.ui.define([
60
60
  * @extends sap.ui.model.odata.type.ODataType
61
61
  * @public
62
62
  * @since 1.51.0
63
- * @version 1.121.0
63
+ * @version 1.122.0
64
64
  */
65
65
  var Stream = ODataType.extend("sap.ui.model.odata.type.Stream", {
66
66
  constructor : function (oFormatOptions, oConstraints) {
@@ -85,7 +85,7 @@ sap.ui.define([
85
85
  * @extends sap.ui.model.odata.type.ODataType
86
86
  *
87
87
  * @author SAP SE
88
- * @version 1.121.0
88
+ * @version 1.122.0
89
89
  *
90
90
  * @alias sap.ui.model.odata.type.String
91
91
  * @param {object} [oFormatOptions]