@openui5/sap.ui.core 1.119.0 → 1.120.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 (828) hide show
  1. package/THIRDPARTY.txt +6 -6
  2. package/package.json +1 -1
  3. package/src/jquery.sap.global.js +40 -111
  4. package/src/jquery.sap.properties.js +7 -1
  5. package/src/jquery.sap.resources.js +1 -1
  6. package/src/jquery.sap.script.js +5 -3
  7. package/src/jquery.sap.storage.js +6 -3
  8. package/src/sap/base/Event.js +32 -78
  9. package/src/sap/base/Eventing.js +114 -271
  10. package/src/sap/base/Log.js +21 -1
  11. package/src/sap/base/config.js +14 -9
  12. package/src/sap/base/i18n/Formatting.js +378 -250
  13. package/src/sap/base/i18n/LanguageTag.js +64 -66
  14. package/src/sap/base/i18n/Localization.js +124 -85
  15. package/src/sap/base/i18n/ResourceBundle.js +1 -1
  16. package/src/sap/base/i18n/date/CalendarType.js +2 -2
  17. package/src/sap/base/i18n/date/CalendarWeekNumbering.js +2 -2
  18. package/src/sap/base/i18n/date/TimezoneUtils.js +43 -6
  19. package/src/sap/base/util/LoaderExtensions.js +8 -2
  20. package/src/sap/base/util/mixedFetch.js +1 -0
  21. package/src/sap/base/util/resolveReference.js +31 -13
  22. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  23. package/src/sap/base/util/restricted/_castArray.js +1 -1
  24. package/src/sap/base/util/restricted/_compact.js +1 -1
  25. package/src/sap/base/util/restricted/_curry.js +1 -1
  26. package/src/sap/base/util/restricted/_debounce.js +1 -1
  27. package/src/sap/base/util/restricted/_difference.js +1 -1
  28. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  29. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  30. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  31. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  32. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  33. package/src/sap/base/util/restricted/_flatten.js +1 -1
  34. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  35. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  36. package/src/sap/base/util/restricted/_intersection.js +1 -1
  37. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  38. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  39. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  40. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  41. package/src/sap/base/util/restricted/_isNil.js +1 -1
  42. package/src/sap/base/util/restricted/_max.js +1 -1
  43. package/src/sap/base/util/restricted/_merge.js +1 -1
  44. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  45. package/src/sap/base/util/restricted/_min.js +1 -1
  46. package/src/sap/base/util/restricted/_omit.js +1 -1
  47. package/src/sap/base/util/restricted/_pick.js +1 -1
  48. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  49. package/src/sap/base/util/restricted/_throttle.js +1 -1
  50. package/src/sap/base/util/restricted/_toArray.js +1 -1
  51. package/src/sap/base/util/restricted/_union.js +1 -1
  52. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  53. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  54. package/src/sap/base/util/restricted/_uniq.js +1 -1
  55. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  56. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  57. package/src/sap/base/util/restricted/_without.js +1 -1
  58. package/src/sap/base/util/restricted/_xor.js +1 -1
  59. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  60. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  61. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  62. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  63. package/src/sap/base/util/syncFetch.js +1 -0
  64. package/src/sap/ui/Device.js +3 -3
  65. package/src/sap/ui/Global.js +6 -7
  66. package/src/sap/ui/base/BindingInfo.js +3 -3
  67. package/src/sap/ui/base/BindingParser.js +5 -2
  68. package/src/sap/ui/base/DataType.js +57 -1
  69. package/src/sap/ui/base/DesignTime.js +69 -0
  70. package/src/sap/ui/base/Event.js +2 -2
  71. package/src/sap/ui/base/EventProvider.js +1 -1
  72. package/src/sap/ui/base/ExpressionParser.js +25 -4
  73. package/src/sap/ui/base/Interface.js +1 -1
  74. package/src/sap/ui/base/ManagedObject.js +102 -29
  75. package/src/sap/ui/base/ManagedObjectMetadata.js +29 -31
  76. package/src/sap/ui/base/ManagedObjectObserver.js +1 -0
  77. package/src/sap/ui/base/Metadata.js +3 -3
  78. package/src/sap/ui/base/Object.js +19 -1
  79. package/src/sap/ui/base/ObjectPool.js +1 -1
  80. package/src/sap/ui/core/.library +3 -3
  81. package/src/sap/ui/core/AnimationMode.js +2 -2
  82. package/src/sap/ui/core/AppCacheBuster.js +30 -18
  83. package/src/sap/ui/core/BusyIndicator.js +1 -1
  84. package/src/sap/ui/core/CalendarType.js +6 -0
  85. package/src/sap/ui/core/Component.js +150 -80
  86. package/src/sap/ui/core/ComponentContainer.js +4 -3
  87. package/src/sap/ui/core/ComponentMetadata.js +3 -4
  88. package/src/sap/ui/core/ComponentSupport.js +1 -1
  89. package/src/sap/ui/core/Configuration.js +390 -706
  90. package/src/sap/ui/core/Control.js +1 -1
  91. package/src/sap/ui/core/ControlBehavior.js +37 -28
  92. package/src/sap/ui/core/Core.js +327 -151
  93. package/src/sap/ui/core/CustomData.js +1 -1
  94. package/src/sap/ui/core/DeclarativeSupport.js +3 -1
  95. package/src/sap/ui/core/Element.js +18 -8
  96. package/src/sap/ui/core/ElementMetadata.js +1 -1
  97. package/src/sap/ui/core/EnabledPropagator.js +3 -2
  98. package/src/sap/ui/core/EventBus.js +1 -1
  99. package/src/sap/ui/core/Fragment.js +1 -1
  100. package/src/sap/ui/core/HTML.js +1 -1
  101. package/src/sap/ui/core/History.js +1 -1
  102. package/src/sap/ui/core/Icon.js +1 -1
  103. package/src/sap/ui/core/IndicationColorSupport.js +13 -1
  104. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  105. package/src/sap/ui/core/InvisibleMessage.js +2 -3
  106. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  107. package/src/sap/ui/core/InvisibleText.js +17 -1
  108. package/src/sap/ui/core/Item.js +1 -1
  109. package/src/sap/ui/core/LabelEnablement.js +8 -1
  110. package/src/sap/ui/core/LayoutData.js +1 -1
  111. package/src/sap/ui/core/Lib.js +195 -29
  112. package/src/sap/ui/core/ListItem.js +1 -1
  113. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  114. package/src/sap/ui/core/Locale.js +1 -1
  115. package/src/sap/ui/core/LocaleData.js +118 -32
  116. package/src/sap/ui/core/Manifest.js +4 -2
  117. package/src/sap/ui/core/Message.js +1 -1
  118. package/src/sap/ui/core/Placeholder.js +18 -0
  119. package/src/sap/ui/core/Popup.js +5 -0
  120. package/src/sap/ui/core/RenderManager.js +21 -17
  121. package/src/sap/ui/core/Renderer.js +1 -1
  122. package/src/sap/ui/core/Rendering.js +51 -47
  123. package/src/sap/ui/core/ResizeHandler.js +2 -2
  124. package/src/sap/ui/core/ScrollBar.js +1 -1
  125. package/src/sap/ui/core/SeparatorItem.js +1 -1
  126. package/src/sap/ui/core/Shortcut.js +5 -3
  127. package/src/sap/ui/core/Supportability.js +146 -0
  128. package/src/sap/ui/core/Theming.js +130 -88
  129. package/src/sap/ui/core/Title.js +1 -1
  130. package/src/sap/ui/core/TooltipBase.js +4 -3
  131. package/src/sap/ui/core/UIArea.js +1 -4
  132. package/src/sap/ui/core/UIComponent.js +38 -12
  133. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  134. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  135. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  136. package/src/sap/ui/core/XMLComposite.js +1 -1
  137. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  138. package/src/sap/ui/core/XMLTemplateProcessor.js +3 -3
  139. package/src/sap/ui/core/_IconRegistry.js +13 -6
  140. package/src/sap/ui/core/cldr/ar.json +143 -137
  141. package/src/sap/ui/core/cldr/ar_EG.json +143 -137
  142. package/src/sap/ui/core/cldr/ar_SA.json +143 -137
  143. package/src/sap/ui/core/cldr/bg.json +423 -423
  144. package/src/sap/ui/core/cldr/ca.json +541 -494
  145. package/src/sap/ui/core/cldr/cs.json +475 -364
  146. package/src/sap/ui/core/cldr/cy.json +656 -477
  147. package/src/sap/ui/core/cldr/da.json +334 -275
  148. package/src/sap/ui/core/cldr/de.json +388 -291
  149. package/src/sap/ui/core/cldr/de_AT.json +388 -291
  150. package/src/sap/ui/core/cldr/de_CH.json +394 -297
  151. package/src/sap/ui/core/cldr/el.json +169 -166
  152. package/src/sap/ui/core/cldr/el_CY.json +169 -166
  153. package/src/sap/ui/core/cldr/en.json +558 -521
  154. package/src/sap/ui/core/cldr/en_AU.json +558 -520
  155. package/src/sap/ui/core/cldr/en_GB.json +476 -439
  156. package/src/sap/ui/core/cldr/en_HK.json +520 -482
  157. package/src/sap/ui/core/cldr/en_IE.json +486 -448
  158. package/src/sap/ui/core/cldr/en_IN.json +466 -428
  159. package/src/sap/ui/core/cldr/en_NZ.json +506 -468
  160. package/src/sap/ui/core/cldr/en_PG.json +506 -468
  161. package/src/sap/ui/core/cldr/en_SG.json +506 -468
  162. package/src/sap/ui/core/cldr/en_ZA.json +486 -448
  163. package/src/sap/ui/core/cldr/es.json +473 -468
  164. package/src/sap/ui/core/cldr/es_AR.json +445 -440
  165. package/src/sap/ui/core/cldr/es_BO.json +479 -474
  166. package/src/sap/ui/core/cldr/es_CL.json +469 -464
  167. package/src/sap/ui/core/cldr/es_CO.json +387 -381
  168. package/src/sap/ui/core/cldr/es_MX.json +502 -497
  169. package/src/sap/ui/core/cldr/es_PE.json +455 -450
  170. package/src/sap/ui/core/cldr/es_UY.json +479 -474
  171. package/src/sap/ui/core/cldr/es_VE.json +499 -494
  172. package/src/sap/ui/core/cldr/et.json +378 -320
  173. package/src/sap/ui/core/cldr/fa.json +104 -104
  174. package/src/sap/ui/core/cldr/fi.json +401 -315
  175. package/src/sap/ui/core/cldr/fr.json +391 -385
  176. package/src/sap/ui/core/cldr/fr_BE.json +391 -385
  177. package/src/sap/ui/core/cldr/fr_CA.json +499 -493
  178. package/src/sap/ui/core/cldr/fr_CH.json +334 -328
  179. package/src/sap/ui/core/cldr/fr_LU.json +391 -385
  180. package/src/sap/ui/core/cldr/he.json +291 -159
  181. package/src/sap/ui/core/cldr/hi.json +157 -128
  182. package/src/sap/ui/core/cldr/hr.json +514 -461
  183. package/src/sap/ui/core/cldr/hu.json +287 -257
  184. package/src/sap/ui/core/cldr/id.json +463 -416
  185. package/src/sap/ui/core/cldr/it.json +468 -413
  186. package/src/sap/ui/core/cldr/it_CH.json +468 -413
  187. package/src/sap/ui/core/cldr/ja.json +98 -61
  188. package/src/sap/ui/core/cldr/kk.json +631 -571
  189. package/src/sap/ui/core/cldr/ko.json +79 -71
  190. package/src/sap/ui/core/cldr/lt.json +361 -270
  191. package/src/sap/ui/core/cldr/lv.json +234 -242
  192. package/src/sap/ui/core/cldr/ms.json +463 -408
  193. package/src/sap/ui/core/cldr/nb.json +176 -143
  194. package/src/sap/ui/core/cldr/nl.json +463 -393
  195. package/src/sap/ui/core/cldr/nl_BE.json +463 -393
  196. package/src/sap/ui/core/cldr/pl.json +633 -344
  197. package/src/sap/ui/core/cldr/pt.json +447 -336
  198. package/src/sap/ui/core/cldr/pt_PT.json +488 -449
  199. package/src/sap/ui/core/cldr/ro.json +477 -383
  200. package/src/sap/ui/core/cldr/ru.json +367 -332
  201. package/src/sap/ui/core/cldr/ru_UA.json +361 -326
  202. package/src/sap/ui/core/cldr/sk.json +502 -537
  203. package/src/sap/ui/core/cldr/sl.json +168 -161
  204. package/src/sap/ui/core/cldr/sr.json +276 -225
  205. package/src/sap/ui/core/cldr/sr_Latn.json +972 -907
  206. package/src/sap/ui/core/cldr/sv.json +420 -346
  207. package/src/sap/ui/core/cldr/th.json +117 -94
  208. package/src/sap/ui/core/cldr/tr.json +413 -359
  209. package/src/sap/ui/core/cldr/uk.json +395 -368
  210. package/src/sap/ui/core/cldr/vi.json +392 -379
  211. package/src/sap/ui/core/cldr/zh_CN.json +91 -33
  212. package/src/sap/ui/core/cldr/zh_HK.json +90 -32
  213. package/src/sap/ui/core/cldr/zh_SG.json +90 -32
  214. package/src/sap/ui/core/cldr/zh_TW.json +75 -51
  215. package/src/sap/ui/core/date/CalendarWeekNumbering.js +6 -0
  216. package/src/sap/ui/core/date/UI5Date.js +1 -1
  217. package/src/sap/ui/core/date/_Calendars.js +5 -2
  218. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  219. package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
  220. package/src/sap/ui/core/dnd/DragAndDrop.js +3 -2
  221. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  222. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  223. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  224. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  225. package/src/sap/ui/core/format/DateFormat.js +33 -21
  226. package/src/sap/ui/core/format/NumberFormat.js +3 -2
  227. package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
  228. package/src/sap/ui/core/getCompatibilityVersion.js +2 -2
  229. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  230. package/src/sap/ui/core/library.js +128 -8
  231. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  232. package/src/sap/ui/core/message/Message.js +2 -2
  233. package/src/sap/ui/core/message/MessageManager.js +1 -1
  234. package/src/sap/ui/core/message/MessageParser.js +1 -1
  235. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  236. package/src/sap/ui/core/message/MessageType.js +2 -1
  237. package/src/sap/ui/core/messagebundle.properties +24 -0
  238. package/src/sap/ui/core/messagebundle_ar.properties +15 -3
  239. package/src/sap/ui/core/messagebundle_bg.properties +14 -2
  240. package/src/sap/ui/core/messagebundle_ca.properties +13 -1
  241. package/src/sap/ui/core/messagebundle_cs.properties +15 -3
  242. package/src/sap/ui/core/messagebundle_cy.properties +16 -4
  243. package/src/sap/ui/core/messagebundle_da.properties +15 -3
  244. package/src/sap/ui/core/messagebundle_de.properties +15 -3
  245. package/src/sap/ui/core/messagebundle_el.properties +16 -4
  246. package/src/sap/ui/core/messagebundle_en.properties +12 -0
  247. package/src/sap/ui/core/messagebundle_en_GB.properties +16 -4
  248. package/src/sap/ui/core/messagebundle_es.properties +15 -3
  249. package/src/sap/ui/core/messagebundle_es_MX.properties +15 -3
  250. package/src/sap/ui/core/messagebundle_et.properties +15 -3
  251. package/src/sap/ui/core/messagebundle_fi.properties +15 -3
  252. package/src/sap/ui/core/messagebundle_fr.properties +15 -3
  253. package/src/sap/ui/core/messagebundle_fr_CA.properties +14 -2
  254. package/src/sap/ui/core/messagebundle_hi.properties +16 -4
  255. package/src/sap/ui/core/messagebundle_hr.properties +14 -2
  256. package/src/sap/ui/core/messagebundle_hu.properties +16 -4
  257. package/src/sap/ui/core/messagebundle_id.properties +15 -3
  258. package/src/sap/ui/core/messagebundle_it.properties +17 -5
  259. package/src/sap/ui/core/messagebundle_iw.properties +15 -3
  260. package/src/sap/ui/core/messagebundle_ja.properties +25 -13
  261. package/src/sap/ui/core/messagebundle_kk.properties +15 -3
  262. package/src/sap/ui/core/messagebundle_ko.properties +14 -2
  263. package/src/sap/ui/core/messagebundle_lt.properties +15 -3
  264. package/src/sap/ui/core/messagebundle_lv.properties +15 -3
  265. package/src/sap/ui/core/messagebundle_mk.properties +352 -0
  266. package/src/sap/ui/core/messagebundle_ms.properties +15 -3
  267. package/src/sap/ui/core/messagebundle_nl.properties +15 -3
  268. package/src/sap/ui/core/messagebundle_no.properties +14 -2
  269. package/src/sap/ui/core/messagebundle_pl.properties +15 -3
  270. package/src/sap/ui/core/messagebundle_pt.properties +15 -3
  271. package/src/sap/ui/core/messagebundle_pt_PT.properties +14 -2
  272. package/src/sap/ui/core/messagebundle_ro.properties +15 -3
  273. package/src/sap/ui/core/messagebundle_ru.properties +15 -3
  274. package/src/sap/ui/core/messagebundle_sh.properties +43 -31
  275. package/src/sap/ui/core/messagebundle_sk.properties +16 -4
  276. package/src/sap/ui/core/messagebundle_sl.properties +15 -3
  277. package/src/sap/ui/core/messagebundle_sv.properties +22 -10
  278. package/src/sap/ui/core/messagebundle_th.properties +15 -3
  279. package/src/sap/ui/core/messagebundle_tr.properties +15 -3
  280. package/src/sap/ui/core/messagebundle_uk.properties +18 -6
  281. package/src/sap/ui/core/messagebundle_vi.properties +18 -6
  282. package/src/sap/ui/core/messagebundle_zh_CN.properties +15 -3
  283. package/src/sap/ui/core/messagebundle_zh_TW.properties +15 -3
  284. package/src/sap/ui/core/mvc/Controller.js +22 -16
  285. package/src/sap/ui/core/mvc/EventHandlerResolver.js +5 -15
  286. package/src/sap/ui/core/mvc/HTMLView.js +2 -2
  287. package/src/sap/ui/core/mvc/JSONView.js +4 -1
  288. package/src/sap/ui/core/mvc/JSONViewRenderer.js +1 -0
  289. package/src/sap/ui/core/mvc/JSView.js +1 -1
  290. package/src/sap/ui/core/mvc/OverrideExecution.js +4 -4
  291. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  292. package/src/sap/ui/core/mvc/View.js +24 -14
  293. package/src/sap/ui/core/mvc/ViewType.js +2 -0
  294. package/src/sap/ui/core/mvc/XMLView.js +1 -1
  295. package/src/sap/ui/core/plugin/DeclarativeSupport.js +2 -1
  296. package/src/sap/ui/core/plugin/LessSupport.js +3 -1
  297. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  298. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  299. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  300. package/src/sap/ui/core/routing/Router.js +2 -4
  301. package/src/sap/ui/core/routing/Target.js +1 -3
  302. package/src/sap/ui/core/routing/Targets.js +2 -3
  303. package/src/sap/ui/core/routing/Views.js +2 -3
  304. package/src/sap/ui/core/routing/async/Target.js +1 -1
  305. package/src/sap/ui/core/rules/Config.support.js +11 -17
  306. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  307. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  308. package/src/sap/ui/core/service/Service.js +1 -1
  309. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  310. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  311. package/src/sap/ui/core/support/Hotkeys.js +5 -3
  312. package/src/sap/ui/core/support/Plugin.js +1 -1
  313. package/src/sap/ui/core/support/RuleEngineOpaExtension.js +1 -3
  314. package/src/sap/ui/core/support/Support.js +3 -5
  315. package/src/sap/ui/core/support/ToolsAPI.js +15 -11
  316. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  317. package/src/sap/ui/core/support/plugins/Interaction.js +4 -4
  318. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  319. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  320. package/src/sap/ui/core/support/plugins/Selector.js +7 -5
  321. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  322. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  323. package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
  324. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +3 -1
  325. package/src/sap/ui/core/syncStyleClass.js +2 -2
  326. package/src/sap/ui/core/themes/base/fonts/SAP-icons.ttf +0 -0
  327. package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
  328. package/src/sap/ui/core/themes/base/global.less +9 -9
  329. package/src/sap/ui/core/theming/Parameters.js +18 -19
  330. package/src/sap/ui/core/theming/ThemeManager.js +23 -4
  331. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  332. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  333. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  334. package/src/sap/ui/core/tmpl/Template.js +1 -1
  335. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  336. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  337. package/src/sap/ui/core/util/Export.js +1 -1
  338. package/src/sap/ui/core/util/ExportCell.js +1 -1
  339. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  340. package/src/sap/ui/core/util/ExportRow.js +1 -1
  341. package/src/sap/ui/core/util/ExportType.js +1 -1
  342. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  343. package/src/sap/ui/core/util/File.js +1 -1
  344. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  345. package/src/sap/ui/core/util/MockServer.js +1 -1
  346. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  347. package/src/sap/ui/core/util/XMLPreprocessor.js +3 -0
  348. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  349. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  350. package/src/sap/ui/core/util/serializer/ViewSerializer.js +4 -4
  351. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  352. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  353. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  354. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  355. package/src/sap/ui/core/webc/WebComponent.js +1 -1
  356. package/src/sap/ui/core/webc/WebComponentMetadata.js +1 -1
  357. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  358. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  359. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  360. package/src/sap/ui/debug/ControlTree.js +1 -1
  361. package/src/sap/ui/debug/DebugEnv.js +29 -7
  362. package/src/sap/ui/debug/PropertyList.js +1 -1
  363. package/src/sap/ui/model/ClientListBinding.js +3 -1
  364. package/src/sap/ui/model/ClientModel.js +1 -1
  365. package/src/sap/ui/model/ClientTreeBinding.js +3 -1
  366. package/src/sap/ui/model/CompositeDataState.js +1 -1
  367. package/src/sap/ui/model/CompositeType.js +1 -1
  368. package/src/sap/ui/model/DataState.js +2 -2
  369. package/src/sap/ui/model/Filter.js +39 -1
  370. package/src/sap/ui/model/FilterProcessor.js +12 -2
  371. package/src/sap/ui/model/ListBinding.js +5 -0
  372. package/src/sap/ui/model/ManagedObjectBindingSupport.js +4 -4
  373. package/src/sap/ui/model/MetaModel.js +1 -1
  374. package/src/sap/ui/model/Model.js +5 -1
  375. package/src/sap/ui/model/SelectionModel.js +1 -1
  376. package/src/sap/ui/model/SimpleType.js +1 -1
  377. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  378. package/src/sap/ui/model/TreeBinding.js +3 -0
  379. package/src/sap/ui/model/Type.js +1 -1
  380. package/src/sap/ui/model/analytics/AnalyticalBinding.js +3 -1
  381. package/src/sap/ui/model/json/JSONListBinding.js +3 -1
  382. package/src/sap/ui/model/json/JSONModel.js +1 -1
  383. package/src/sap/ui/model/json/JSONTreeBinding.js +3 -2
  384. package/src/sap/ui/model/message/MessageListBinding.js +3 -0
  385. package/src/sap/ui/model/message/MessageModel.js +1 -1
  386. package/src/sap/ui/model/odata/AnnotationHelper.js +9 -3
  387. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  388. package/src/sap/ui/model/odata/ODataListBinding.js +3 -0
  389. package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
  390. package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
  391. package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
  392. package/src/sap/ui/model/odata/ODataModel.js +9 -5
  393. package/src/sap/ui/model/odata/ODataPropertyBinding.js +1 -2
  394. package/src/sap/ui/model/odata/ODataTreeBinding.js +2 -0
  395. package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +9 -14
  396. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  397. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  398. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  399. package/src/sap/ui/model/odata/type/Date.js +1 -1
  400. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  401. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  402. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  403. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  404. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  405. package/src/sap/ui/model/odata/type/Double.js +1 -1
  406. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  407. package/src/sap/ui/model/odata/type/Int.js +1 -1
  408. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  409. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  410. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  411. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  412. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  413. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  414. package/src/sap/ui/model/odata/type/Single.js +1 -1
  415. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  416. package/src/sap/ui/model/odata/type/String.js +1 -1
  417. package/src/sap/ui/model/odata/type/Time.js +1 -1
  418. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  419. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  420. package/src/sap/ui/model/odata/v2/Context.js +1 -1
  421. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  422. package/src/sap/ui/model/odata/v2/ODataListBinding.js +35 -13
  423. package/src/sap/ui/model/odata/v2/ODataModel.js +21 -8
  424. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +33 -2
  425. package/src/sap/ui/model/odata/v4/Context.js +81 -7
  426. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +1 -1
  427. package/src/sap/ui/model/odata/v4/ODataListBinding.js +217 -75
  428. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +1 -1
  429. package/src/sap/ui/model/odata/v4/ODataModel.js +6 -6
  430. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +1 -1
  431. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +406 -199
  432. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +12 -7
  433. package/src/sap/ui/model/odata/v4/lib/_Cache.js +53 -30
  434. package/src/sap/ui/model/odata/v4/lib/_Helper.js +6 -4
  435. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +6 -6
  436. package/src/sap/ui/model/resource/ResourceModel.js +5 -6
  437. package/src/sap/ui/model/type/Boolean.js +1 -1
  438. package/src/sap/ui/model/type/Currency.js +1 -1
  439. package/src/sap/ui/model/type/Date.js +1 -1
  440. package/src/sap/ui/model/type/DateInterval.js +1 -1
  441. package/src/sap/ui/model/type/DateTime.js +1 -1
  442. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  443. package/src/sap/ui/model/type/FileSize.js +1 -1
  444. package/src/sap/ui/model/type/Float.js +1 -1
  445. package/src/sap/ui/model/type/Integer.js +1 -1
  446. package/src/sap/ui/model/type/String.js +1 -1
  447. package/src/sap/ui/model/type/Time.js +1 -1
  448. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  449. package/src/sap/ui/model/type/Unit.js +1 -1
  450. package/src/sap/ui/model/xml/XMLListBinding.js +3 -0
  451. package/src/sap/ui/model/xml/XMLModel.js +1 -1
  452. package/src/sap/ui/model/xml/XMLTreeBinding.js +3 -0
  453. package/src/sap/ui/performance/BeaconRequest.js +2 -2
  454. package/src/sap/ui/qunit/QUnitUtils.js +64 -45
  455. package/src/sap/ui/qunit/qunit-coverage.js +6 -0
  456. package/src/sap/ui/qunit/utils/ControlIterator.js +31 -1
  457. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  458. package/src/sap/ui/security/Security.js +128 -0
  459. package/src/sap/ui/test/BlanketReporter.js +2 -3
  460. package/src/sap/ui/test/BlanketReporterUI.view.xml +1 -1
  461. package/src/sap/ui/test/BranchTracking.js +2 -3
  462. package/src/sap/ui/test/ModuleTracking.js +48 -20
  463. package/src/sap/ui/test/OpaExtension.js +3 -3
  464. package/src/sap/ui/test/OpaPlugin.js +16 -6
  465. package/src/sap/ui/test/TestUtils.js +7 -4
  466. package/src/sap/ui/test/_BrowserLogCollector.js +1 -0
  467. package/src/sap/ui/test/_ControlFinder.js +3 -2
  468. package/src/sap/ui/test/_LogCollector.js +1 -0
  469. package/src/sap/ui/test/_UsageReport.js +115 -114
  470. package/src/sap/ui/test/actions/EnterText.js +20 -2
  471. package/src/sap/ui/test/autowaiter/WaiterBase.js +1 -0
  472. package/src/sap/ui/test/autowaiter/_moduleWaiter.js +1 -2
  473. package/src/sap/ui/test/autowaiter/_timeoutWaiter.js +1 -1
  474. package/src/sap/ui/test/generic/GenericTestCollection.js +5 -0
  475. package/src/sap/ui/test/generic/TestBase.js +1 -1
  476. package/src/sap/ui/test/generic/Utils.js +1 -1
  477. package/src/sap/ui/test/matchers/LabelFor.js +2 -12
  478. package/src/sap/ui/test/matchers/Matcher.js +1 -1
  479. package/src/sap/ui/test/pipelines/PipelineFactory.js +1 -0
  480. package/src/sap/ui/test/selectors/_Selector.js +1 -1
  481. package/src/sap/ui/util/Storage.js +1 -1
  482. package/src/ui5loader-autoconfig.js +84 -11
  483. package/test/sap/ui/core/demokit/sample/RoutingNestedComponent/localService/mockserver.js +3 -4
  484. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/ChartAnnotation.fragment.xml +7 -7
  485. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/Component.js +2 -3
  486. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/Detail.view.xml +12 -13
  487. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/Facets.fragment.xml +4 -4
  488. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/Field.fragment.xml +8 -8
  489. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/FormFacet.fragment.xml +3 -5
  490. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/LabeledField.fragment.xml +3 -3
  491. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/Table.fragment.xml +10 -10
  492. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/TableFacet.fragment.xml +3 -3
  493. package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/extension/HeaderInfo.fragment.xml +1 -1
  494. package/test/sap/ui/core/demokit/sample/ViewTemplate/tiny/Field.fragment.xml +2 -2
  495. package/test/sap/ui/core/demokit/sample/ViewTemplate/tiny/Template.view.xml +19 -21
  496. package/test/sap/ui/core/demokit/sample/ViewTemplate/types/TemplateV4.view.xml +2 -2
  497. package/test/sap/ui/core/demokit/sample/ViewTemplate/valuelist/Component.js +2 -3
  498. package/test/sap/ui/core/demokit/sample/common/SandboxModelHelper.js +2 -3
  499. package/test/sap/ui/core/demokit/sample/common/ValueHelp.js +2 -3
  500. package/test/sap/ui/core/demokit/sample/common/pages/Any.js +7 -8
  501. package/test/sap/ui/core/demokit/sample/odata/v4/Ancestry/Main.controller.js +15 -6
  502. package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/DataAggregation.controller.js +2 -3
  503. package/test/sap/ui/core/demokit/sample/odata/v4/FlatDataAggregation/FlatDataAggregation.controller.js +3 -4
  504. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.controller.js +39 -16
  505. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.view.xml +18 -21
  506. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/data/all.json +509 -395
  507. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/data/metadata.xml +586 -422
  508. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/manifest.json +1 -1
  509. package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Main.controller.js +2 -3
  510. package/test/sap/ui/core/demokit/sample/odata/v4/ListBindingTemplate/Facets.fragment.xml +22 -23
  511. package/test/sap/ui/core/demokit/sample/odata/v4/ListBindingTemplate/FormattedText.fragment.xml +2 -3
  512. package/test/sap/ui/core/demokit/sample/odata/v4/ListBindingTemplate/Main.view.xml +7 -7
  513. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Main.controller.js +0 -3
  514. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.controller.js +54 -9
  515. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.view.xml +34 -9
  516. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/SandboxModel.js +156 -23
  517. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Main.view.xml +3 -2
  518. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersTemplate/Facets.fragment.xml +22 -23
  519. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersTemplate/FormattedText.fragment.xml +2 -3
  520. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersTemplate/Main.view.xml +5 -5
  521. package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/Main.controller.js +2 -3
  522. package/test/sap/ui/core/demokit/tutorial/databinding/01/ui5.yaml +2 -2
  523. package/test/sap/ui/core/demokit/tutorial/databinding/02/ui5.yaml +2 -2
  524. package/test/sap/ui/core/demokit/tutorial/databinding/03/ui5.yaml +2 -2
  525. package/test/sap/ui/core/demokit/tutorial/databinding/04/ui5.yaml +2 -2
  526. package/test/sap/ui/core/demokit/tutorial/databinding/05/ui5.yaml +2 -2
  527. package/test/sap/ui/core/demokit/tutorial/databinding/06/ui5.yaml +2 -2
  528. package/test/sap/ui/core/demokit/tutorial/databinding/07/ui5.yaml +2 -2
  529. package/test/sap/ui/core/demokit/tutorial/databinding/08/ui5.yaml +2 -2
  530. package/test/sap/ui/core/demokit/tutorial/databinding/09/ui5.yaml +2 -2
  531. package/test/sap/ui/core/demokit/tutorial/databinding/10/ui5.yaml +2 -2
  532. package/test/sap/ui/core/demokit/tutorial/databinding/11/ui5.yaml +2 -2
  533. package/test/sap/ui/core/demokit/tutorial/databinding/12/ui5.yaml +2 -2
  534. package/test/sap/ui/core/demokit/tutorial/databinding/13/ui5.yaml +2 -2
  535. package/test/sap/ui/core/demokit/tutorial/databinding/14/ui5.yaml +2 -2
  536. package/test/sap/ui/core/demokit/tutorial/databinding/15/ui5.yaml +2 -2
  537. package/test/sap/ui/core/demokit/tutorial/mockserver/01/ui5.yaml +2 -2
  538. package/test/sap/ui/core/demokit/tutorial/mockserver/02/ui5.yaml +2 -2
  539. package/test/sap/ui/core/demokit/tutorial/mockserver/03/ui5.yaml +2 -2
  540. package/test/sap/ui/core/demokit/tutorial/mockserver/04/ui5.yaml +2 -2
  541. package/test/sap/ui/core/demokit/tutorial/navigation/01/ui5.yaml +2 -2
  542. package/test/sap/ui/core/demokit/tutorial/navigation/02/ui5.yaml +2 -2
  543. package/test/sap/ui/core/demokit/tutorial/navigation/03/ui5.yaml +2 -2
  544. package/test/sap/ui/core/demokit/tutorial/navigation/04/ui5.yaml +2 -2
  545. package/test/sap/ui/core/demokit/tutorial/navigation/05/ui5.yaml +2 -2
  546. package/test/sap/ui/core/demokit/tutorial/navigation/06/ui5.yaml +2 -2
  547. package/test/sap/ui/core/demokit/tutorial/navigation/07/ui5.yaml +2 -2
  548. package/test/sap/ui/core/demokit/tutorial/navigation/08/ui5.yaml +2 -2
  549. package/test/sap/ui/core/demokit/tutorial/navigation/09/ui5.yaml +2 -2
  550. package/test/sap/ui/core/demokit/tutorial/navigation/10/ui5.yaml +2 -2
  551. package/test/sap/ui/core/demokit/tutorial/navigation/11/ui5.yaml +2 -2
  552. package/test/sap/ui/core/demokit/tutorial/navigation/12/ui5.yaml +2 -2
  553. package/test/sap/ui/core/demokit/tutorial/navigation/13/ui5.yaml +2 -2
  554. package/test/sap/ui/core/demokit/tutorial/navigation/14/ui5.yaml +2 -2
  555. package/test/sap/ui/core/demokit/tutorial/navigation/15/ui5.yaml +2 -2
  556. package/test/sap/ui/core/demokit/tutorial/navigation/16/ui5.yaml +2 -2
  557. package/test/sap/ui/core/demokit/tutorial/navigation/17/ui5.yaml +2 -2
  558. package/test/sap/ui/core/demokit/tutorial/odatav4/01/ui5.yaml +2 -2
  559. package/test/sap/ui/core/demokit/tutorial/odatav4/02/ui5.yaml +2 -2
  560. package/test/sap/ui/core/demokit/tutorial/odatav4/03/ui5.yaml +2 -2
  561. package/test/sap/ui/core/demokit/tutorial/odatav4/04/ui5.yaml +2 -2
  562. package/test/sap/ui/core/demokit/tutorial/odatav4/05/ui5.yaml +2 -2
  563. package/test/sap/ui/core/demokit/tutorial/odatav4/06/ui5.yaml +2 -2
  564. package/test/sap/ui/core/demokit/tutorial/odatav4/07/ui5.yaml +2 -2
  565. package/test/sap/ui/core/demokit/tutorial/odatav4/08/ui5.yaml +2 -2
  566. package/test/sap/ui/core/demokit/tutorial/odatav4/09/ui5.yaml +2 -2
  567. package/test/sap/ui/core/demokit/tutorial/odatav4/10/ui5.yaml +2 -2
  568. package/test/sap/ui/core/demokit/tutorial/odatav4/11/ui5.yaml +2 -2
  569. package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/ui5.yaml +2 -2
  570. package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Component.js +2 -3
  571. package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Main.view.xml +1 -1
  572. package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/SandboxModel.js +2 -3
  573. package/test/sap/ui/core/qunit/CompositeBinding.qunit.js +18 -0
  574. package/test/sap/ui/core/qunit/ControlRenderer.qunit.js +4 -3
  575. package/test/sap/ui/core/qunit/Core.qunit.js +5 -14
  576. package/test/sap/ui/core/qunit/Core_libraryPreloadFiles.qunit.js +4 -4
  577. package/test/sap/ui/core/qunit/Core_libraryPreloadFiles_unavoidablyUsingEval.qunit.js +6 -6
  578. package/test/sap/ui/core/qunit/Core_unavoidablyUsingEval.qunit.js +31 -30
  579. package/test/sap/ui/core/qunit/DataState.qunit.js +7 -4
  580. package/test/sap/ui/core/qunit/DuplicateIds.qunit.js +3 -0
  581. package/test/sap/ui/core/qunit/DuplicateIds_noError.qunit.js +4 -0
  582. package/test/sap/ui/core/qunit/Element_metadata_renderer.qunit.js +6 -0
  583. package/test/sap/ui/core/qunit/ExpressionParser.qunit.js +144 -85
  584. package/test/sap/ui/core/qunit/HTML.qunit.js +87 -84
  585. package/test/sap/ui/core/qunit/InvisibleText.qunit.js +22 -1
  586. package/test/sap/ui/core/qunit/LRUPersistentCache.qunit.js +4 -4
  587. package/test/sap/ui/core/qunit/Lib.qunit.js +22 -1
  588. package/test/sap/ui/core/qunit/ListBinding.qunit.js +14 -1
  589. package/test/sap/ui/core/qunit/ManagedObject.qunit.js +5 -2
  590. package/test/sap/ui/core/qunit/ManagedObjectMetadata.qunit.js +41 -40
  591. package/test/sap/ui/core/qunit/ManagedObjectModel.qunit.js +2 -1
  592. package/test/sap/ui/core/qunit/{ManagedObject_noBoot.qunit.js → ManagedObject_BindingParser.qunit.js} +10 -9
  593. package/test/sap/ui/core/qunit/Object.qunit.js +36 -0
  594. package/test/sap/ui/core/qunit/RenderManager.qunit.js +86 -94
  595. package/test/sap/ui/core/qunit/ShortcutHints.qunit.js +11 -97
  596. package/test/sap/ui/core/qunit/StaticBinding.qunit.js +3 -0
  597. package/test/sap/ui/core/qunit/UIArea.qunit.js +34 -35
  598. package/test/sap/ui/core/qunit/analytics/AnalyticalTreeBindingAdapter.qunit.js +3 -0
  599. package/test/sap/ui/core/qunit/analytics/ODataModelAdapter.qunit.js +3 -0
  600. package/test/sap/ui/core/qunit/analytics/odata4analytics.qunit.js +3 -0
  601. package/test/sap/ui/core/qunit/app/DesignMode_controllerDeactivated.qunit.js +5 -6
  602. package/test/sap/ui/core/qunit/app/DesignMode_suppressedDeactivation.qunit.js +5 -6
  603. package/test/sap/ui/core/qunit/app/MessageListBinding.qunit.js +3 -0
  604. package/test/sap/ui/core/qunit/app/_createDesignModeTests_legacyAPIs.qunit.js +8 -10
  605. package/test/sap/ui/core/qunit/base/Config_cascade.qunit.js +2 -2
  606. package/test/sap/ui/core/qunit/base/i18n/Formatting.qunit.js +30 -30
  607. package/test/sap/ui/core/qunit/base/i18n/ResourceBundle.qunit.js +123 -10
  608. package/test/sap/ui/core/qunit/base/util/resolveReference.qunit.js +9 -0
  609. package/test/sap/ui/core/qunit/base/util/testdata/MyModule.js +5 -0
  610. package/test/sap/ui/core/qunit/bootstrap/BootstrapCustomBootTaskPreloadCss.beforeBootstrap.qunit.js +4 -2
  611. package/test/sap/ui/core/qunit/bootstrap/BootstrapMinimal.qunit.html +1 -0
  612. package/test/sap/ui/core/qunit/bootstrap/BootstrapPreload.qunit.js +9 -10
  613. package/test/sap/ui/core/qunit/bootstrap/BootstrapPreload_legacyAPIs.qunit.js +0 -2
  614. package/test/sap/ui/core/qunit/bootstrap/BootstrapWithinBody.qunit.html +2 -1
  615. package/test/sap/ui/core/qunit/bootstrap/BootstrapWithinHead.qunit.html +2 -1
  616. package/test/sap/ui/core/qunit/bootstrap/Configuration.qunit.js +122 -266
  617. package/test/sap/ui/core/qunit/bootstrap/ConfigurationFlexibility_LibConfigured.qunit.html +22 -0
  618. package/test/sap/ui/core/qunit/bootstrap/ConfigurationFlexibility_LibConfigured.qunit.js +22 -0
  619. package/test/sap/ui/core/qunit/bootstrap/ConfigurationFlexibility_LibLoaded.qunit.html +22 -0
  620. package/test/sap/ui/core/qunit/bootstrap/ConfigurationFlexibility_LibLoaded.qunit.js +16 -0
  621. package/test/sap/ui/core/qunit/bootstrap/ConfigurationFlexibility_LibNotLoaded.qunit.html +22 -0
  622. package/test/sap/ui/core/qunit/bootstrap/ConfigurationFlexibility_LibNotLoaded.qunit.js +14 -0
  623. package/test/sap/ui/core/qunit/bootstrap/ControlBehavior.qunit.js +110 -0
  624. package/test/sap/ui/core/qunit/bootstrap/PreloadCfg.qunit.js +4 -3
  625. package/test/sap/ui/core/qunit/bootstrap/ResourceRoot_ResourcesURL_Standard.qunit.html +1 -1
  626. package/test/sap/ui/core/qunit/bootstrap/ThemeVersion.beforeBootstrap.qunit.js +2 -3
  627. package/test/sap/ui/core/qunit/bootstrap/_checkCoreAndLibraryBooted.qunit.js +39 -34
  628. package/test/sap/ui/core/qunit/bootstrap/_checkCoreAndLibraryBooted_legacyAPIs.qunit.js +5 -1
  629. package/test/sap/ui/core/qunit/bootstrap/testsuite.bootstrap.qunit.js +51 -15
  630. package/test/sap/ui/core/qunit/compat_legacyAPIs/jquery-compat.qunit.html +23 -0
  631. package/test/sap/ui/core/qunit/compat_legacyAPIs/jquery-compat.qunit.js +1 -1
  632. package/test/sap/ui/core/qunit/compat_legacyAPIs/jquery.sap.stubs.qunit.js +16 -20
  633. package/test/sap/ui/core/qunit/compat_legacyAPIs/testsuite.compat.qunit.js +1 -4
  634. package/test/sap/ui/core/qunit/component/Component.qunit.js +74 -4
  635. package/test/sap/ui/core/qunit/component/Models.qunit.js +3 -1
  636. package/test/sap/ui/core/qunit/component/Preloading.qunit.js +8 -12
  637. package/test/sap/ui/core/qunit/component/UIComponent.qunit.js +8 -2
  638. package/test/sap/ui/core/qunit/component/testdata/routerPreloading/Component.js +23 -0
  639. package/test/sap/ui/core/qunit/component/testdata/routerPreloading/Main.view.xml +8 -0
  640. package/test/sap/ui/core/qunit/component/testdata/routerPreloading/manifest.json +34 -0
  641. package/test/sap/ui/core/qunit/component/testdata/targetsPreloading/Component.js +23 -0
  642. package/test/sap/ui/core/qunit/component/testdata/targetsPreloading/Main.view.xml +8 -0
  643. package/test/sap/ui/core/qunit/component/testdata/targetsPreloading/manifest.json +28 -0
  644. package/test/sap/ui/core/qunit/date/_Calendars.qunit.js +52 -0
  645. package/test/sap/ui/core/qunit/generic/legacy/ControlMemoryLeaks.qunit.js +18 -0
  646. package/test/sap/ui/core/qunit/generic/legacy/ControlMemoryLeaksUsingIterator.qunit.js +3 -4
  647. package/test/sap/ui/core/qunit/generic/legacy/DuplicateIdCheck.qunit.js +18 -0
  648. package/test/sap/ui/core/qunit/generic/legacy/SettersContextReturn.qunit.js +15 -0
  649. package/test/sap/ui/core/qunit/generic/testsuite.generic.qunit.js +21 -0
  650. package/test/sap/ui/core/qunit/gherkin/fixture/testHarnessAmbiguous.js +2 -3
  651. package/test/sap/ui/core/qunit/gherkin/fixture/testHarnessDuplicate.js +2 -3
  652. package/test/sap/ui/core/qunit/gherkin/fixture/testHarnessFailing.js +2 -3
  653. package/test/sap/ui/core/qunit/gherkin/opa5TestHarness.qunit.html +16 -0
  654. package/test/sap/ui/core/qunit/gherkin/opa5TestHarness.qunit.js +1 -1
  655. package/test/sap/ui/core/qunit/gherkin/qUnitTestHarness.qunit.html +16 -0
  656. package/test/sap/ui/core/qunit/gherkin/qUnitTestHarness.qunit.js +1 -1
  657. package/test/sap/ui/core/qunit/gherkin/testsuite.gherkin.qunit.js +3 -2
  658. package/test/sap/ui/core/qunit/i18n/Buddhist.qunit.js +3 -0
  659. package/test/sap/ui/core/qunit/i18n/GenericLocaleData.qunit.js +217 -114
  660. package/test/sap/ui/core/qunit/i18n/Islamic.qunit.js +3 -0
  661. package/test/sap/ui/core/qunit/i18n/Japanese.qunit.js +3 -0
  662. package/test/sap/ui/core/qunit/i18n/LocaleData.qunit.js +341 -7
  663. package/test/sap/ui/core/qunit/i18n/Persian.qunit.js +3 -0
  664. package/test/sap/ui/core/qunit/i18n/UniversalDate.qunit.js +3 -0
  665. package/test/sap/ui/core/qunit/i18n/UniversalDateUtils.qunit.js +10 -1
  666. package/test/sap/ui/core/qunit/i18n/helper/_timezones.js +17 -11
  667. package/test/sap/ui/core/qunit/i18n/testsuite.i18n.qunit.js +7 -1
  668. package/test/sap/ui/core/qunit/internal/1Ring.qunit.html +5 -1
  669. package/test/sap/ui/core/qunit/internal/1RingModels.qunit.html +2 -2
  670. package/test/sap/ui/core/qunit/internal/1RingModels.qunit.js +1 -0
  671. package/test/sap/ui/core/qunit/internal/AnnotationParser.qunit.html +1 -2
  672. package/test/sap/ui/core/qunit/internal/ODataV4.qunit.html +6 -1
  673. package/test/sap/ui/core/qunit/internal/testsuite.feature-odata-v4.qunit.js +2 -1
  674. package/test/sap/ui/core/qunit/jquery.sap.global-config.qunit.html +24 -0
  675. package/test/sap/ui/core/qunit/jquery.sap.global-config.qunit.js +12 -6
  676. package/test/sap/ui/core/qunit/jquery.sap.global-config_beforeBootstrap.qunit.js +1 -1
  677. package/test/sap/ui/core/qunit/json/JSONListBinding.qunit.js +30 -0
  678. package/test/sap/ui/core/qunit/loader/exposeAsAMDLoader.qunit.html +1 -0
  679. package/test/sap/ui/core/qunit/model/Binding.qunit.js +3 -0
  680. package/test/sap/ui/core/qunit/model/ClientListBinding.qunit.js +3 -0
  681. package/test/sap/ui/core/qunit/model/ClientPropertyBinding.qunit.js +3 -0
  682. package/test/sap/ui/core/qunit/model/ClientTreeBinding.qunit.js +3 -0
  683. package/test/sap/ui/core/qunit/model/ClientTreeBindingAdapter.qunit.js +6 -0
  684. package/test/sap/ui/core/qunit/model/CompositeDataState.qunit.js +3 -0
  685. package/test/sap/ui/core/qunit/model/Context.qunit.js +3 -0
  686. package/test/sap/ui/core/qunit/model/ContextBinding.qunit.js +3 -0
  687. package/test/sap/ui/core/qunit/model/Filter.qunit.js +49 -0
  688. package/test/sap/ui/core/qunit/model/FilterProcessor.qunit.js +40 -1
  689. package/test/sap/ui/core/qunit/model/ListBinding.qunit.js +23 -5
  690. package/test/sap/ui/core/qunit/model/Model.qunit.js +3 -0
  691. package/test/sap/ui/core/qunit/model/PropertyBinding.qunit.js +3 -0
  692. package/test/sap/ui/core/qunit/model/Sorter.qunit.js +3 -0
  693. package/test/sap/ui/core/qunit/model/TreeBinding.qunit.js +43 -3
  694. package/test/sap/ui/core/qunit/model/TreeBindingAdapter.qunit.js +3 -0
  695. package/test/sap/ui/core/qunit/mvc/Controller.qunit.js +107 -93
  696. package/test/sap/ui/core/qunit/mvc/View.qunit.js +3 -0
  697. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessor.qunit.js +17 -14
  698. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorAsync.qunit.js +23 -12
  699. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorRequireXML.qunit.js +29 -82
  700. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorRequireXML_unavoidablySync.qunit.js +123 -0
  701. package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions.qunit.js +4 -0
  702. package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions_legacy.qunit.js +4 -0
  703. package/test/sap/ui/core/qunit/mvc/testsuite.mvc.qunit.js +16 -0
  704. package/test/sap/ui/core/qunit/mvc/viewprocessing/ViewProcessing.qunit.js +408 -419
  705. package/test/sap/ui/core/qunit/odata/AnnotationHelper.qunit.js +6 -4
  706. package/test/sap/ui/core/qunit/odata/ODataAnnotations.qunit.js +16 -0
  707. package/test/sap/ui/core/qunit/odata/ODataMetaModel.qunit.js +8 -1
  708. package/test/sap/ui/core/qunit/odata/ODataUtils.qunit.js +5 -1
  709. package/test/sap/ui/core/qunit/odata/type/DateTimeBase.qunit.js +4 -4
  710. package/test/sap/ui/core/qunit/odata/type/DateTimeWithTimezone.qunit.js +6 -6
  711. package/test/sap/ui/core/qunit/odata/type/Time.qunit.js +3 -4
  712. package/test/sap/ui/core/qunit/odata/type/TimeOfDay.qunit.js +4 -4
  713. package/test/sap/ui/core/qunit/odata/v2/ODataListBindingNoFakeService.qunit.js +36 -13
  714. package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +952 -292
  715. package/test/sap/ui/core/qunit/odata/v2/ODataModelNoFakeService.qunit.js +6 -4
  716. package/test/sap/ui/core/qunit/odata/v2/ODataPropertyBindingNoFakeService.qunit.js +6 -7
  717. package/test/sap/ui/core/qunit/odata/v2/ODataTreeBindingFlatNoFakeService.qunit.js +215 -1
  718. package/test/sap/ui/core/qunit/odata/v2/ODataTreeBindingNoFakeService.qunit.js +194 -3
  719. package/test/sap/ui/core/qunit/odata/v2/V2ODataModelDataState.qunit.js +3 -2
  720. package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +69 -2
  721. package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +601 -99
  722. package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +1859 -407
  723. package/test/sap/ui/core/qunit/odata/v4/ODataModel.qunit.js +7 -5
  724. package/test/sap/ui/core/qunit/odata/v4/ODataModel.realOData.qunit.js +4 -4
  725. package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +909 -422
  726. package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationHelper.qunit.js +21 -6
  727. package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +104 -33
  728. package/test/sap/ui/core/qunit/odata/v4/lib/_Helper.qunit.js +8 -0
  729. package/test/sap/ui/core/qunit/odata/v4/lib/_MetadataRequestor.qunit.js +4 -4
  730. package/test/sap/ui/core/qunit/odata/v4/lib/_Requestor.qunit.js +9 -9
  731. package/test/sap/ui/core/qunit/odata/v4/lib/_V2MetadataConverter.qunit.js +3 -3
  732. package/test/sap/ui/core/qunit/odata/v4/lib/_V4MetadataConverter.qunit.js +3 -3
  733. package/test/sap/ui/core/qunit/opa/OpaPlugin.qunit.js +16 -0
  734. package/test/sap/ui/core/qunit/opa/_LogCollector.qunit.js +17 -9
  735. package/test/sap/ui/core/qunit/opa/actions/EnterText.qunit.js +51 -3
  736. package/test/sap/ui/core/qunit/opa/autowaiter/_cssAnimationWaiter.js +3 -3
  737. package/test/sap/ui/core/qunit/opa/autowaiter/_cssTransitionWaiter.js +3 -3
  738. package/test/sap/ui/core/qunit/opa/autowaiter/_jsAnimationWaiter.js +3 -3
  739. package/test/sap/ui/core/qunit/opa/autowaiter/_timeoutWaiter.js +11 -0
  740. package/test/sap/ui/core/qunit/opa/fixture/miniUI5Site.js +14 -8
  741. package/test/sap/ui/core/qunit/opa/fixture/uncaughtError.js +18 -12
  742. package/test/sap/ui/core/qunit/performance/BeaconRequest.qunit.js +18 -2
  743. package/test/sap/ui/core/qunit/resource/ResourceBinding.qunit.js +1 -0
  744. package/test/sap/ui/core/qunit/resource/ResourceModel.qunit.js +5 -4
  745. package/test/sap/ui/core/qunit/routing/async/Target.qunit.js +20 -18
  746. package/test/sap/ui/core/qunit/routing/async/Targets.qunit.js +1 -4
  747. package/test/sap/ui/core/qunit/routing/fixture/routingConfig/Component.js +2 -25
  748. package/test/sap/ui/core/qunit/routing/fixture/routingConfig/manifest.json +28 -0
  749. package/test/sap/ui/core/qunit/rule/misc/silentEventBus.qunit.js +1 -2
  750. package/test/sap/ui/core/qunit/testdata/libraries/scenario11/lib1/library.js +11 -0
  751. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib1/library-preload.js +3 -1
  752. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib1/library.js +3 -1
  753. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib2/library-preload.js +3 -1
  754. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib2/library.js +3 -1
  755. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib3/library-preload.js +2 -1
  756. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib3/library.js +2 -1
  757. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib5/library-preload.js +2 -1
  758. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib5/library.js +2 -1
  759. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib6/library-preload.js +2 -1
  760. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib6/library.js +2 -1
  761. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib8/library-preload.js +2 -1
  762. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib8/library.js +2 -1
  763. package/test/sap/ui/core/qunit/testdata/libraries/terminologies/integration/lib/library-preload.js +1 -1
  764. package/test/sap/ui/core/qunit/testdata/shortcutHints/Component.js +9 -0
  765. package/test/sap/ui/core/qunit/testdata/shortcutHints/RootView.controller.js +8 -0
  766. package/test/sap/ui/core/qunit/testdata/shortcutHints/RootView.view.xml +16 -0
  767. package/test/sap/ui/core/qunit/testdata/shortcutHints/lib/MyControl.js +27 -0
  768. package/test/sap/ui/core/qunit/testdata/shortcutHints/manifest.json +26 -0
  769. package/test/sap/ui/core/qunit/testdata/uilib-custom-theme-fallback/library.js +4 -5
  770. package/test/sap/ui/core/qunit/testdata/uilib-failing-css-import/library.js +5 -6
  771. package/test/sap/ui/core/qunit/testdata/xml-require/view/XMLTemplateProcessorAsync_require_expression.controller.js +2 -1
  772. package/test/sap/ui/core/qunit/testdata/xml-require/view/XMLTemplateProcessorAsync_require_expression.view.xml +18 -1
  773. package/test/sap/ui/core/qunit/testsuite.core.framework.qunit.js +3 -0
  774. package/test/sap/ui/core/qunit/testsuites/testsuite.control.framework.qunit.js +0 -4
  775. package/test/sap/ui/core/qunit/testsuites/testsuite.foundation.enablement.qunit.js +6 -1
  776. package/test/sap/ui/core/qunit/testsuites/testsuite.managed.object.qunit.js +4 -1
  777. package/test/sap/ui/core/qunit/testsuites/testsuite.modular.core.qunit.js +1 -1
  778. package/test/sap/ui/core/qunit/testsuites/testsuite.security.qunit.js +3 -9
  779. package/test/sap/ui/core/qunit/types/DataType.qunit.js +14 -3
  780. package/test/sap/ui/core/qunit/types/Date.qunit.js +3 -0
  781. package/test/sap/ui/core/qunit/types/DateFormat.qunit.js +391 -147
  782. package/test/sap/ui/core/qunit/types/DateFormatTimezones.qunit.js +32 -29
  783. package/test/sap/ui/core/qunit/types/DateInterval.qunit.js +7 -4
  784. package/test/sap/ui/core/qunit/types/FileSizeFormat.qunit.js +5 -1
  785. package/test/sap/ui/core/qunit/types/ListFormat.qunit.js +3 -0
  786. package/test/sap/ui/core/qunit/types/NumberFormat.qunit.js +4 -3
  787. package/test/sap/ui/core/qunit/types/NumberFormatCurrencies.qunit.js +5 -4
  788. package/test/sap/ui/core/qunit/types/NumberFormatCurrenciesTrailing.qunit.js +4 -3
  789. package/test/sap/ui/core/qunit/types/SimpleType.qunit.js +3 -0
  790. package/test/sap/ui/core/qunit/types/TimezoneUtil.qunit.js +23 -0
  791. package/test/sap/ui/core/qunit/types/Types.qunit.js +44 -10
  792. package/test/sap/ui/core/qunit/types/testsuite.types.qunit.js +3 -0
  793. package/test/sap/ui/core/qunit/util/InvisibleMessage.qunit.js +4 -4
  794. package/test/sap/ui/core/qunit/util/XMLPreprocessor.qunit.js +592 -83
  795. package/test/sap/ui/core/qunit/util/beforeBootstrap/jQuery.sap.FrameOptions-allowlist.js +7 -0
  796. package/test/sap/ui/core/qunit/util/beforeBootstrap/jQuery.sap.FrameOptions-frameOptions.js +7 -0
  797. package/test/sap/ui/core/qunit/{bootstrap/CfgFromGlobalObject.qunit.html → util/jQuery.sap.FrameOptions-meta-tag-override-mode.qunit.html} +7 -11
  798. package/test/sap/ui/core/qunit/util/jQuery.sap.FrameOptions-meta-tag-override-mode.qunit.js +3 -4
  799. package/test/sap/ui/core/qunit/util/jQuery.sap.FrameOptions-meta-tag-override-service.qunit.html +26 -0
  800. package/test/sap/ui/core/qunit/util/jQuery.sap.FrameOptions-meta-tag-override-service.qunit.js +3 -4
  801. package/test/sap/ui/core/qunit/{bootstrap/CfgDefaults.qunit.html → util/jQuery.sap.FrameOptions-meta-tag.qunit.html} +5 -8
  802. package/test/sap/ui/core/qunit/util/jQuery.sap.FrameOptions-meta-tag.qunit.js +3 -4
  803. package/test/sap/ui/core/qunit/util/jQuery.sap.Version.qunit.js +10 -10
  804. package/test/sap/ui/core/qunit/util/jquery.sap.logger.qunit.html +18 -0
  805. package/test/sap/ui/core/qunit/util/jquery.sap.resources.qunit.js +1 -1
  806. package/test/sap/ui/core/qunit/util/testsuite.util.qunit.js +1 -3
  807. package/test/sap/ui/core/qunit/xml/XMLListBinding.qunit.js +3 -0
  808. package/test/sap/ui/core/qunit/xml/XMLModel.qunit.js +3 -0
  809. package/test/sap/ui/core/qunit/xml/XMLPropertyBinding.qunit.js +3 -0
  810. package/test/sap/ui/core/qunit/xml/XMLTreeBinding.qunit.js +3 -0
  811. package/test/sap/ui/core/relnotes/changes-1.119.json +1 -12
  812. package/test/sap/ui/core/relnotes/changes-1.120.json +360 -0
  813. package/test/sap/ui/core/terminologies/App.controller.js +2 -3
  814. package/test/sap/ui/core/terminologies/main.js +2 -3
  815. package/test/sap/ui/test/qunit/TestUtils.qunit.js +3 -3
  816. package/src/sap/ui/core/ConfigTest.js +0 -17
  817. package/src/sap/ui/core/_ConfigurationProvider.js +0 -187
  818. package/test/sap/ui/core/ComponentExtensibility_CustomizingDisabled.html +0 -57
  819. package/test/sap/ui/core/qunit/bootstrap/CfgDefaults.qunit.js +0 -71
  820. package/test/sap/ui/core/qunit/bootstrap/CfgFromConfigAttribute.qunit.html +0 -29
  821. package/test/sap/ui/core/qunit/bootstrap/CfgFromConfigAttribute.qunit.js +0 -40
  822. package/test/sap/ui/core/qunit/bootstrap/CfgFromGlobalObject.beforeBootstrap.qunit.js +0 -20
  823. package/test/sap/ui/core/qunit/bootstrap/CfgFromGlobalObject.qunit.js +0 -40
  824. package/test/sap/ui/core/qunit/bootstrap/CfgFromTagAttributes.qunit.html +0 -42
  825. package/test/sap/ui/core/qunit/bootstrap/CfgFromTagAttributes.qunit.js +0 -49
  826. package/test/sap/ui/core/qunit/util/BusyIndicatorNoCore.qunit.js +0 -96
  827. package/test/sap/ui/core/qunit/util/beforeBootstrap/jQuery.sap.FrameOptions-meta-tag.js +0 -10
  828. package/test/sap/ui/core/samples/mvc/JSONView.html +0 -65
@@ -8,7 +8,7 @@ sap.ui.define([
8
8
  "sap/ui/base/ManagedObject",
9
9
  "sap/ui/core/Element",
10
10
  "sap/ui/core/CustomData",
11
- "sap/ui/core/Configuration",
11
+ "sap/ui/core/Lib",
12
12
  "sap/ui/thirdparty/jquery"
13
13
  ],
14
14
  function(
@@ -16,7 +16,7 @@ function(
16
16
  ManagedObject,
17
17
  Element,
18
18
  CustomData,
19
- Configuration,
19
+ Library,
20
20
  jQuery
21
21
  ) {
22
22
  "use strict";
@@ -160,6 +160,9 @@ function(
160
160
  this.oRequireStub.withArgs(["sap/test/otherInstanceSpecific.designtime"]).callsArgWithAsync(1, this.oDTForOtherInstance);
161
161
  this.oRequireStub.withArgs(["sap/test/instanceSpecificFunction.designtime"]).callsArgWithAsync(1, this.oDTForInstanceFunction);
162
162
  this.oRequireStub.withArgs(["sap/ui/dt/defaultDesigntime/defaultDT.designtime"]).callsArgWithAsync(1, this.oDTForPredefinedDefaultDT);
163
+ // For some reason sinon v1 must be used for this test which does not support callThrough on stubs therefore implemented a stub for
164
+ // the sap.ui.require(["sap/ui/core/Lib"]) call
165
+ this.oRequireStub.withArgs(["sap/ui/core/Lib"]).callsArgWithAsync(1, Library);
163
166
 
164
167
  this.oInstanceWithoutSpecificDTMetadata = new Element();
165
168
  this.oInstanceWithSpecificDTMetadata = new Element({
@@ -427,7 +430,7 @@ function(
427
430
  ]).then(function(aDesignTimes) {
428
431
 
429
432
  // Only 3 require calls are expected, as one ManagedObject (NoDTManagedObjectChild2) does not have design time data
430
- sinon.assert.callCount(this.oRequireStub, 3);
433
+ sinon.assert.callCount(this.oRequireStub, 6);
431
434
 
432
435
  var oDTManagedObjectDesignTime = aDesignTimes[0];
433
436
  assert.strictEqual(oDTManagedObjectDesignTime.metaProp1, "1", "DesignTime data was passed");
@@ -471,7 +474,7 @@ function(
471
474
  QUnit.test("loadDesignTime - cache the results", function(assert) {
472
475
  var oDTManagedObjectMetadata = DTManagedObjectChild3.getMetadata();
473
476
  return oDTManagedObjectMetadata.loadDesignTime().then(function() {
474
- sinon.assert.callCount(this.oRequireStub, 3);
477
+ sinon.assert.callCount(this.oRequireStub, 6);
475
478
  this.oRequireStub.reset();
476
479
  return oDTManagedObjectMetadata.loadDesignTime().then(function() {
477
480
  assert.notOk(this.oRequireStub.called, "sap.ui.require was not called");
@@ -481,17 +484,17 @@ function(
481
484
 
482
485
  QUnit.test("loadDesignTime - cache the results implicitly (parent first)", function(assert) {
483
486
  return DTManagedObjectChild.getMetadata().loadDesignTime().then(function() {
484
- sinon.assert.callCount(this.oRequireStub, 2);
487
+ sinon.assert.callCount(this.oRequireStub, 4);
485
488
  this.oRequireStub.reset();
486
489
  return DTManagedObjectChild3.getMetadata().loadDesignTime().then(function() {
487
- sinon.assert.callCount(this.oRequireStub, 1);
490
+ sinon.assert.callCount(this.oRequireStub, 2);
488
491
  }.bind(this));
489
492
  }.bind(this));
490
493
  });
491
494
 
492
495
  QUnit.test("loadDesignTime - cache the results implicitly (child first)", function(assert) {
493
496
  return DTManagedObjectChild3.getMetadata().loadDesignTime().then(function() {
494
- sinon.assert.callCount(this.oRequireStub, 3);
497
+ sinon.assert.callCount(this.oRequireStub, 6);
495
498
  this.oRequireStub.reset();
496
499
  return DTManagedObjectChild.getMetadata().loadDesignTime().then(function() {
497
500
  assert.notOk(this.oRequireStub.called, "sap.ui.require was not called");
@@ -499,38 +502,33 @@ function(
499
502
  }.bind(this));
500
503
  });
501
504
 
502
- QUnit.test("loadDesignTime - cache the results implicitly (child with parent + other child with same parent)", function(assert) {
503
- return DTManagedObjectChild.getMetadata().loadDesignTime().then(function(oTestOuter) {
504
- sinon.assert.callCount(this.oRequireStub, 2);
505
- this.oRequireStub.reset();
506
- //previously the issue was that a derived control deleted the parents designtimeModule.
507
- //any other child did not set the correct designtimeModule path
508
-
509
- //load derived metadata DTManagedObjectChild3 that inherits DTManagedObject
510
- DTManagedObjectChild3.getMetadata().loadDesignTime().then(function(oTestOuter3) {
511
- sinon.assert.callCount(this.oRequireStub, 1);
512
- this.oRequireStub.reset();
513
- return DTManagedObject.getMetadata().loadDesignTime().then(function(oTestInner) {
514
- assert.strictEqual(oTestInner.designtimeModule, "DTManagedObject.designtime", "DesignTime module path defined DTManagedObjectChild");
515
- }.bind(this)).then(function() {
516
- assert.strictEqual(oTestOuter3.designtimeModule, "DTManagedObjectChild3.designtime", "DesignTime module path defined DTManagedObjectChild3");
517
- });
518
- }.bind(this));
519
- //load derived metadata DTManagedObjectChild3 that inherits DTManagedObjectChild
520
- DTManagedObjectChild.getMetadata().loadDesignTime().then(function(oTestInner) {
521
- return DTManagedObject.getMetadata().loadDesignTime().then(function(oTestInner2) {
522
- assert.strictEqual(oTestInner2.designtimeModule, "DTManagedObject.designtime", "DesignTime module path defined DTManagedObjectChild");
523
- }.bind(this)).then(function() {
524
- assert.strictEqual(oTestInner.designtimeModule, "DTManagedObjectChild.designtime", "DesignTime module path defined DTManagedObjectChild, parent still valid");
525
- });
526
- }.bind(this));
527
- }.bind(this));
505
+ QUnit.test("loadDesignTime - cache the results implicitly (child with parent + other child with same parent)", async function(assert) {
506
+ await DTManagedObjectChild.getMetadata().loadDesignTime();
507
+ sinon.assert.callCount(this.oRequireStub, 4);
508
+ this.oRequireStub.reset();
509
+
510
+ //previously the issue was that a derived control deleted the parents designtimeModule.
511
+ //any other child did not set the correct designtimeModule path
512
+
513
+ //load derived metadata DTManagedObjectChild3 that inherits DTManagedObject
514
+ const oTestOuter3 = await DTManagedObjectChild3.getMetadata().loadDesignTime();
515
+ sinon.assert.callCount(this.oRequireStub, 2);
516
+ this.oRequireStub.reset();
517
+
518
+ let oTestInner = await DTManagedObject.getMetadata().loadDesignTime();
519
+ assert.strictEqual(oTestInner.designtimeModule, "DTManagedObject.designtime", "DesignTime module path defined DTManagedObjectChild");
520
+ assert.strictEqual(oTestOuter3.designtimeModule, "DTManagedObjectChild3.designtime", "DesignTime module path defined DTManagedObjectChild3");
521
+
522
+ oTestInner = await DTManagedObjectChild.getMetadata().loadDesignTime();
523
+ const oTestInner2 = await DTManagedObject.getMetadata().loadDesignTime();
524
+ assert.strictEqual(oTestInner2.designtimeModule, "DTManagedObject.designtime", "DesignTime module path defined DTManagedObjectChild");
525
+ assert.strictEqual(oTestInner.designtimeModule, "DTManagedObjectChild.designtime", "DesignTime module path defined DTManagedObjectChild, parent still valid");
528
526
  });
529
527
 
530
528
  QUnit.test("loadDesignTime - cache the results with designtime only via inheritance", function(assert) {
531
529
  var oDTManagedObjectMetadataChild = NoDTManagedObjectChild2.getMetadata();
532
530
  return oDTManagedObjectMetadataChild.loadDesignTime().then(function(oDesignTime) {
533
- sinon.assert.callCount(this.oRequireStub, 2);
531
+ sinon.assert.callCount(this.oRequireStub, 4);
534
532
  this.oRequireStub.reset();
535
533
  return oDTManagedObjectMetadataChild.loadDesignTime().then(function() {
536
534
  assert.notOk(this.oRequireStub.called, "sap.ui.require was not called");
@@ -575,7 +573,7 @@ function(
575
573
  }
576
574
  }, function () {
577
575
  QUnit.test("loadDesignTime - from core for custom data no preload", function(assert) {
578
- this.oConfigurationGetPreloadStub = sinon.stub(Configuration, "getPreload").returns("");
576
+ this.oLibraryGetPreloadStub = sinon.stub(Library, "getPreloadMode").returns("");
579
577
  this.spy(sap.ui, 'require');
580
578
  this.spy(privateLoaderAPI, 'loadJSResourceAsync');
581
579
  return this.oMetadata.loadDesignTime().then(function(oDesignTime) {
@@ -586,13 +584,13 @@ function(
586
584
  assert.ok(sap.ui.require.calledWith(["sap/ui/core/designtime/CustomData.designtime"]), "CustomData.designtime.js was required");
587
585
  assert.ok(oDesignTime._oLib !== undefined, "sap/ui/core/designtime/library.designtime.js is available in designtime object");
588
586
  }.bind(this)).finally(function () {
589
- this.oConfigurationGetPreloadStub.restore();
587
+ this.oLibraryGetPreloadStub.restore();
590
588
  }.bind(this));
591
589
  });
592
590
 
593
591
  QUnit.test("loadDesignTime - from core for custom data with preload async", function(assert) {
594
592
  //async configuration simulation
595
- this.oConfigurationGetPreloadStub = sinon.stub(Configuration, "getPreload").returns("async");
593
+ this.oLibraryGetPreloadStub = sinon.stub(Library, "getPreloadMode").returns("async");
596
594
  this.spy(sap.ui, 'require');
597
595
  this.spy(privateLoaderAPI, 'loadJSResourceAsync');
598
596
 
@@ -608,13 +606,13 @@ function(
608
606
  assert.ok(sap.ui.require.calledWith(["sap/ui/core/designtime/CustomData.designtime"]), "CustomData.designtime.js was required");
609
607
  assert.ok(oDesignTime._oLib !== undefined, "sap/ui/core/designtime/library.designtime.js loaded");
610
608
  }.bind(this)).finally(function () {
611
- this.oConfigurationGetPreloadStub.restore();
609
+ this.oLibraryGetPreloadStub.restore();
612
610
  }.bind(this));
613
611
  });
614
612
 
615
613
  QUnit.test("loadDesignTime - from core for custom data with preload sync", function(assert) {
616
614
  //sync configuration simulation
617
- this.oConfigurationGetPreloadStub = sinon.stub(Configuration, "getPreload").returns("sync");
615
+ this.oLibraryGetPreloadStub = sinon.stub(Library, "getPreloadMode").returns("sync");
618
616
  this.spy(sap.ui, 'require');
619
617
  this.spy(privateLoaderAPI, 'loadJSResourceAsync');
620
618
 
@@ -630,7 +628,7 @@ function(
630
628
  assert.ok(sap.ui.require.calledWith(["sap/ui/core/designtime/CustomData.designtime"]), "CustomData.designtime.js was required");
631
629
  assert.ok(oDesignTime._oLib !== undefined, "sap/ui/core/designtime/library.designtime.js loaded");
632
630
  }.bind(this)).finally(function () {
633
- this.oConfigurationGetPreloadStub.restore();
631
+ this.oLibraryGetPreloadStub.restore();
634
632
  }.bind(this));
635
633
  });
636
634
  });
@@ -712,6 +710,9 @@ function(
712
710
  this.oRequireStub.withArgs(["DTManagedObjectChild.designtime"]).callsArgWithAsync(1, this.oDTForManagedObjectChild);
713
711
  this.oRequireStub.withArgs(["sap/test/instanceSpecific.designtime"]).callsArgWithAsync(1, this.oDTForInstance);
714
712
  this.oRequireStub.withArgs(["sap/test/otherInstanceSpecific.designtime"]).callsArgWithAsync(1, this.oDTForOtherInstance);
713
+ // For some reason sinon v1 must be used for this test which does not support callThrough on stubs therefore implemented a stub for
714
+ // the sap.ui.require(["sap/ui/core/Lib"]) call
715
+ this.oRequireStub.withArgs(["sap/ui/core/Lib"]).callsArgWithAsync(1, Library);
715
716
 
716
717
  this.oInstanceWithoutSpecificDTMetadata = new Element();
717
718
  this.oInstanceWithSpecificDTMetadata = new Element({
@@ -11,12 +11,13 @@ sap.ui.define([
11
11
  "sap/ui/core/mvc/XMLView",
12
12
  "sap/ui/model/base/ManagedObjectModel",
13
13
  "sap/ui/model/json/JSONModel",
14
+ "sap/ui/model/type/Boolean",
14
15
  "sap/ui/model/type/Date",
15
16
  "sap/ui/model/Context",
16
17
  "sap/ui/model/Filter",
17
18
  "sap/ui/model/FilterOperator"
18
19
  ], function (CustomListItem, DatePicker, Input, List, Select, Text, VBox, Element, Item, XMLView,
19
- ManagedObjectModel, JSONModel, DateType, Context, Filter, FilterOperator) {
20
+ ManagedObjectModel, JSONModel, BooleanType, DateType, Context, Filter, FilterOperator) {
20
21
  /*global QUnit */
21
22
  /*eslint no-warning-comments: 0 */
22
23
  "use strict";
@@ -1,26 +1,27 @@
1
1
  /* global QUnit */
2
2
  sap.ui.define([
3
- "sap/ui/core/Control"
4
- ], function(Control) {
3
+ "sap/ui/base/BindingInfo",
4
+ "sap/ui/base/BindingParser"
5
+ ], function(
6
+ BindingInfo,
7
+ BindingParser
8
+ ) {
5
9
  "use strict";
6
10
 
7
11
  QUnit.module("FLP Boot Scenario");
8
12
 
9
- QUnit.test("Check binding parser is set correctly after core is booted", function (assert) {
13
+ QUnit.test("Check binding parser is set correctly after core is booted and FLP changed the bindingSyntax configuration", function (assert) {
10
14
  assert.expect(1);
11
15
  var done = assert.async();
12
-
13
16
  // load config file as in FLP boot scenario with specific config before core is loaded
14
17
  sap.ui.require(["testdata/core/testdata/customboot/common.configure.ui5"], function () {
15
18
  // load core and check that bindingparser is correctly derived from config after core was loaded
16
19
  sap.ui.require(["sap/ui/core/Core"], function(Core) {
17
- var oControl = new Control({
18
- busy: "{ path: '/test'}"
19
- });
20
- assert.strictEqual(oControl.getBindingInfo("busy").parts[0].path, "/test", "Check that complex binding path was parsed corretly by complexparser");
20
+ assert.equal(BindingInfo.parse, BindingParser.complexParser, "compatversion set by 'FLP' results in a complexParser");
21
21
  done();
22
22
  }, function(oErr) {
23
- assert.strictEqual(oErr, {}, "requiring the Core must not fail");
23
+ assert.ok(false, "requiring the Core must not fail");
24
+ done();
24
25
  });
25
26
  });
26
27
  });
@@ -160,6 +160,9 @@ sap.ui.define([
160
160
 
161
161
  QUnit.module("Base Class Functions");
162
162
 
163
+ /**
164
+ * @deprecated As of version 1.120
165
+ */
163
166
  QUnit.test("isA static function", function(assert) {
164
167
  var oIcon = new Icon();
165
168
  assert.strictEqual(BaseObject.isA(oIcon, "sap.ui.core.Icon"), true, "self test: instance is a sap.ui.core.Icon");
@@ -192,4 +195,37 @@ sap.ui.define([
192
195
  assert.strictEqual(BaseObject.isA(NaN, "sap.ui.base.Object"), false, "NaN is not BaseObject");
193
196
  assert.strictEqual(BaseObject.isA("", "sap.ui.base.Object"), false, "Empty string is not BaseObject");
194
197
  });
198
+
199
+ QUnit.test("isObjectA static function", function(assert) {
200
+ var oIcon = new Icon();
201
+ assert.strictEqual(BaseObject.isObjectA(oIcon, "sap.ui.core.Icon"), true, "self test: instance is a sap.ui.core.Icon");
202
+ assert.strictEqual(BaseObject.isObjectA(oIcon, "sap.ui.base.ManagedObject"), true, "inheritance: instance is a ManagedObject");
203
+ assert.strictEqual(BaseObject.isObjectA(oIcon, "sap.ui.base.Object"), true, "inheritance: instance is a BaseObject");
204
+ assert.strictEqual(BaseObject.isObjectA(oIcon, [
205
+ "sap.ui.base.Object",
206
+ "sap.test.rainbow"
207
+ ]), true, "multiple: instance is a 'sap.test.rainbow' (doesn't exist) or BaseObject");
208
+
209
+ assert.strictEqual(BaseObject.isObjectA(oIcon, "sap.ui.core.HTML"), false, "Icon is not HTML");
210
+ assert.strictEqual(BaseObject.isObjectA(oIcon, null), false, "null check");
211
+ assert.strictEqual(BaseObject.isObjectA(oIcon, ""), false, "'' check");
212
+ assert.strictEqual(BaseObject.isObjectA(oIcon), false, "undefined check");
213
+ assert.strictEqual(BaseObject.isObjectA(oIcon), false, "undefined check");
214
+ assert.strictEqual(BaseObject.isObjectA(oIcon, [
215
+ "sap.test.pony",
216
+ "sap.test.rainbow"
217
+ ]), false, "multiple: instance is not 'sap.test.pony' or 'sap.test.rainbow'");
218
+
219
+ var MyClass = function() {};
220
+ MyClass.prototype.isA = function() {
221
+ assert.ok(false, "Custom 'isA' method should not be called");
222
+ };
223
+ var oMyObject = new MyClass();
224
+ assert.strictEqual(BaseObject.isObjectA(oMyObject, "sap.ui.base.Object"), false, "MyClass is not BaseObject");
225
+ assert.strictEqual(BaseObject.isObjectA({}, "sap.ui.base.Object"), false, "Plain Object is not BaseObject");
226
+ assert.strictEqual(BaseObject.isObjectA(null, "sap.ui.base.Object"), false, "null is not BaseObject");
227
+ assert.strictEqual(BaseObject.isObjectA(undefined, "sap.ui.base.Object"), false, "undefined is not BaseObject");
228
+ assert.strictEqual(BaseObject.isObjectA(NaN, "sap.ui.base.Object"), false, "NaN is not BaseObject");
229
+ assert.strictEqual(BaseObject.isObjectA("", "sap.ui.base.Object"), false, "Empty string is not BaseObject");
230
+ });
195
231
  });
@@ -1343,13 +1343,10 @@ sap.ui.define([
1343
1343
  assert.equal(iCounter, 0, "Number of rerenderings of Ctrl2");
1344
1344
  });
1345
1345
 
1346
- /**
1347
- * @deprecated As of 1.92
1348
- */
1349
- QUnit.test("RenderManager writeIcon with Icon URL", function(assert) {
1346
+ QUnit.test("RenderManager.prototype.icon with Icon URL", function(assert) {
1350
1347
  var rm = new RenderManager().getInterface();
1351
1348
  var oIconInfo = IconPool.getIconInfo("wrench");
1352
- rm.writeIcon(oIconInfo.uri, ["classA", "classB"], {
1349
+ rm.icon(oIconInfo.uri, ["classA", "classB"], {
1353
1350
  id: "icon1",
1354
1351
  propertyA: "valueA",
1355
1352
  propertyB: "valueB"
@@ -1357,24 +1354,25 @@ sap.ui.define([
1357
1354
  rm.flush(document.getElementById("area6"));
1358
1355
  rm.destroy();
1359
1356
 
1360
- var $icon1 = jQueryById("icon1");
1361
- assert.ok($icon1[0], "icon should be rendered");
1362
- assert.ok($icon1.is("span"), "Icon URI should be rendered as a span");
1363
- assert.equal($icon1.css("font-family").replace(/"|'/g, ""), oIconInfo.fontFamily, "Icon's font family is rendered");
1364
- assert.equal($icon1.attr("data-sap-ui-icon-content"), oIconInfo.content, "Icon content is rendered as attribute");
1365
- assert.ok($icon1.hasClass("classA"), "icon has classA as a CSS class");
1366
- assert.ok($icon1.hasClass("classB"), "icon has classB as a CSS class");
1367
- assert.ok($icon1.hasClass("sapUiIcon"), "icon has sapUiIcon as a CSS class");
1368
- assert.ok($icon1.hasClass("sapUiIconMirrorInRTL"), "icon has sapUiIconMirrorInRTL as a CSS class");
1369
- assert.equal($icon1.attr("propertyA"), "valueA", "Attribute should be set");
1370
- assert.equal($icon1.attr("propertyB"), "valueB", "Attribute should be set");
1371
- assert.notEqual($icon1.attr("aria-label"), undefined, "Attribute aria-label should be set");
1372
-
1373
- jQueryById("area6").empty();
1357
+ var icon1 = document.getElementById("icon1");
1358
+ assert.ok(icon1, "icon should be rendered");
1359
+ assert.equal(icon1.tagName.toLowerCase(), "span", "Icon URI should be rendered as a span");
1360
+ assert.equal(icon1.style["fontFamily"].replace(/"|'/g, ""), oIconInfo.fontFamily, "Icon's font family is rendered");
1361
+ assert.equal(icon1.getAttribute("data-sap-ui-icon-content"), oIconInfo.content, "Icon content is rendered as attribute");
1362
+ assert.ok(icon1.classList.contains("classA"), "icon has classA as a CSS class");
1363
+ assert.ok(icon1.classList.contains("classB"), "icon has classB as a CSS class");
1364
+ assert.ok(icon1.classList.contains("sapUiIcon"), "icon has sapUiIcon as a CSS class");
1365
+ assert.ok(icon1.classList.contains("sapUiIconMirrorInRTL"), "icon has sapUiIconMirrorInRTL as a CSS class");
1366
+ assert.equal(icon1.getAttribute("propertyA"), "valueA", "Attribute should be set");
1367
+ assert.equal(icon1.getAttribute("propertyB"), "valueB", "Attribute should be set");
1368
+ assert.equal(icon1.getAttribute("aria-hidden"), "true", "Attribute 'aria-hidden' should be set");
1369
+ assert.notEqual(icon1.getAttribute("aria-label"), undefined, "Attribute aria-label should be set");
1370
+
1371
+ document.getElementById("area6").innerHTML = "";
1374
1372
 
1375
1373
  rm = new RenderManager().getInterface();
1376
1374
  oIconInfo = IconPool.getIconInfo("calendar");
1377
- rm.writeIcon(oIconInfo.uri, ["classA", "classB"], {
1375
+ rm.icon(oIconInfo.uri, ["classA", "classB"], {
1378
1376
  id: "icon1",
1379
1377
  propertyA: "valueA",
1380
1378
  propertyB: "valueB"
@@ -1382,54 +1380,50 @@ sap.ui.define([
1382
1380
  rm.flush(document.getElementById("area6"));
1383
1381
  rm.destroy();
1384
1382
 
1385
- $icon1 = jQueryById("icon1");
1386
- assert.ok($icon1[0], "icon should be rendered");
1387
- assert.ok($icon1.is("span"), "Icon URI should be rendered as a span");
1388
- assert.equal($icon1.css("font-family").replace(/"|'/g, ""), oIconInfo.fontFamily, "Icon's font family is rendered");
1389
- assert.equal($icon1.attr("data-sap-ui-icon-content"), oIconInfo.content, "Icon content is rendered as attribute");
1390
- assert.ok($icon1.hasClass("classA"), "icon has classA as a CSS class");
1391
- assert.ok($icon1.hasClass("classB"), "icon has classB as a CSS class");
1392
- assert.ok($icon1.hasClass("sapUiIcon"), "icon has sapUiIcon as a CSS class");
1393
- assert.ok(!$icon1.hasClass("sapUiIconMirrorInRTL"), "icon doesn't have sapUiIconMirrorInRTL as a CSS class");
1394
- assert.equal($icon1.attr("propertyA"), "valueA", "Attribute should be set");
1395
- assert.equal($icon1.attr("propertyB"), "valueB", "Attribute should be set");
1396
- assert.notEqual($icon1.attr("aria-label"), undefined, "Attribute aria-label should be set");
1383
+ icon1 = document.getElementById("icon1");
1384
+ assert.ok(icon1, "icon should be rendered");
1385
+ assert.equal(icon1.tagName.toLowerCase(), "span", "Icon URI should be rendered as a span");
1386
+ assert.equal(icon1.style["fontFamily"].replace(/"|'/g, ""), oIconInfo.fontFamily, "Icon's font family is rendered");
1387
+ assert.equal(icon1.getAttribute("data-sap-ui-icon-content"), oIconInfo.content, "Icon content is rendered as attribute");
1388
+ assert.ok(icon1.classList.contains("classA"), "icon has classA as a CSS class");
1389
+ assert.ok(icon1.classList.contains("classB"), "icon has classB as a CSS class");
1390
+ assert.ok(icon1.classList.contains("sapUiIcon"), "icon has sapUiIcon as a CSS class");
1391
+ assert.ok(!icon1.classList.contains("sapUiIconMirrorInRTL"), "icon has sapUiIconMirrorInRTL as a CSS class");
1392
+ assert.equal(icon1.getAttribute("propertyA"), "valueA", "Attribute should be set");
1393
+ assert.equal(icon1.getAttribute("propertyB"), "valueB", "Attribute should be set");
1394
+ assert.notEqual(icon1.getAttribute("aria-label"), undefined, "Attribute aria-label should be set");
1397
1395
 
1398
- jQueryById("area6").empty();
1396
+ document.getElementById("area6").innerHTML = "";
1399
1397
  });
1400
1398
 
1401
- /**
1402
- * @deprecated As of 1.92
1403
- */
1404
- QUnit.test("RenderManager writeIcon with Icon URL. aria-label and aria-labelledby are set to null", function(assert) {
1399
+ QUnit.test("RenderManager.prototype.icon with Icon URL. aria-label and aria-labelledby are set to null", function(assert) {
1405
1400
  var rm = new RenderManager().getInterface();
1406
1401
  var oIconInfo = IconPool.getIconInfo("wrench");
1407
- rm.writeIcon(oIconInfo.uri, [], {
1402
+ rm.icon(oIconInfo.uri, [], {
1408
1403
  id: "icon1",
1409
1404
  "aria-label": null,
1410
- "aria-labelledby": null
1405
+ "aria-labelledby": null,
1406
+ "role": "button"
1411
1407
  });
1412
1408
  rm.flush(document.getElementById("area6"));
1413
1409
  rm.destroy();
1414
1410
 
1415
- var $icon1 = jQueryById("icon1"),
1416
- $invisibleText = jQueryById("icon1-label");
1411
+ var icon1 = document.getElementById("icon1"),
1412
+ invisibleText = document.getElementById("icon1-label");
1417
1413
 
1418
- assert.ok($icon1[0], "icon should be rendered");
1419
- assert.equal($icon1.attr("aria-label"), undefined, "Attribute aria-label should not be set");
1420
- assert.equal($icon1.attr("aria-labelledby"), undefined, "Attribute aria-labelledby should not be set");
1421
- assert.equal($invisibleText.length, 0, "No invisible text is rendered");
1414
+ assert.ok(icon1, "icon should be rendered");
1415
+ assert.equal(icon1.getAttribute("aria-label"), undefined, "Attribute aria-label should not be set");
1416
+ assert.equal(icon1.getAttribute("aria-labelledby"), undefined, "Attribute aria-labelledby should not be set");
1417
+ assert.notOk(icon1.hasAttribute("aria-hidden"), "'aria-hidden' should not be set when role isn't 'presentation'");
1418
+ assert.notOk(invisibleText, "No invisible text is rendered");
1422
1419
 
1423
- jQueryById("area6").empty();
1420
+ document.getElementById("area6").innerHTML = "";
1424
1421
  });
1425
1422
 
1426
- /**
1427
- * @deprecated As of 1.92
1428
- */
1429
- QUnit.test("RenderManager writeIcon with Icon URL and aria-labelledby", function(assert) {
1423
+ QUnit.test("RenderManager.prototype.icon with Icon URL and aria-labelledby", function(assert) {
1430
1424
  var rm = new RenderManager().getInterface();
1431
1425
  var oIconInfo = IconPool.getIconInfo("wrench");
1432
- rm.writeIcon(oIconInfo.uri, [], {
1426
+ rm.icon(oIconInfo.uri, [], {
1433
1427
  id: "icon1",
1434
1428
  "aria-labelledby": "foo",
1435
1429
  alt: "abc"
@@ -1437,22 +1431,19 @@ sap.ui.define([
1437
1431
  rm.flush(document.getElementById("area6"));
1438
1432
  rm.destroy();
1439
1433
 
1440
- var $icon1 = jQueryById("icon1"),
1441
- $invisibleText = jQueryById("icon1-label"),
1442
- sText = $invisibleText.text();
1443
- assert.ok($icon1[0], "icon should be rendered");
1434
+ var icon1 = document.getElementById("icon1"),
1435
+ invisibleText = document.getElementById("icon1-label"),
1436
+ sText = invisibleText.textContent;
1437
+ assert.ok(icon1, "icon should be rendered");
1444
1438
 
1445
- assert.equal($icon1.attr("aria-label"), undefined, "Attribute aria-label should not be set");
1446
- assert.equal($icon1.attr("aria-labelledby"), "foo icon1-label", "Attribute aria-labelledby should contain both the given id and the id of the invisible text");
1439
+ assert.equal(icon1.getAttribute("aria-label"), undefined, "Attribute aria-label should not be set");
1440
+ assert.equal(icon1.getAttribute("aria-labelledby"), "foo icon1-label", "Attribute aria-labelledby should contain both the given id and the id of the invisible text");
1447
1441
  assert.equal(sText, "abc", "The content of invisible text should be set");
1448
1442
 
1449
- jQueryById("area6").empty();
1443
+ document.getElementById("area6").innerHTML = "";
1450
1444
  });
1451
1445
 
1452
- /**
1453
- * @deprecated As of 1.92
1454
- */
1455
- QUnit.test("RenderManager writeIcon with font-family which has space inside", function(assert) {
1446
+ QUnit.test("RenderManager.prototype.icon with font-family which has space inside", function(assert) {
1456
1447
  var fnOrigGetIconInfo = IconPool.getIconInfo,
1457
1448
  sFontFamily = "fontfamily which has space inside";
1458
1449
 
@@ -1464,31 +1455,30 @@ sap.ui.define([
1464
1455
 
1465
1456
  var rm = new RenderManager().getInterface();
1466
1457
  var oIconInfo = IconPool.getIconInfo("wrench");
1467
- rm.writeIcon(oIconInfo.uri, [], {
1458
+ rm.icon(oIconInfo.uri, [], {
1468
1459
  id: "icon1"
1469
1460
  });
1470
1461
  rm.flush(document.getElementById("area6"));
1471
1462
  rm.destroy();
1472
1463
 
1473
- var $icon1 = jQueryById("icon1");
1474
- assert.ok($icon1[0], "icon should be rendered");
1475
- assert.ok($icon1.is("span"), "Icon URI should be rendered as a span");
1476
- assert.equal($icon1.css("font-family"), "\"" + sFontFamily + "\"", "Icon's font family is rendered");
1477
- assert.equal($icon1.attr("data-sap-ui-icon-content"), oIconInfo.content, "Icon content is rendered as attribute");
1478
- assert.ok($icon1.hasClass("sapUiIcon"), "icon has sapUiIcon as a CSS class");
1479
- assert.ok($icon1.hasClass("sapUiIconMirrorInRTL"), "icon has sapUiIconMirrorInRTL as a CSS class");
1480
- assert.notEqual($icon1.attr("aria-label"), undefined, "Attribute aria-label should be set");
1464
+ var icon1 = document.getElementById("icon1");
1481
1465
 
1482
- jQueryById("area6").empty();
1466
+ assert.ok(icon1, "icon should be rendered");
1467
+ assert.equal(icon1.tagName.toLowerCase(), "span", "Icon URI should be rendered as a span");
1468
+ assert.equal(icon1.style["fontFamily"], "\"" + sFontFamily + "\"", "Icon's font family is rendered");
1469
+ assert.equal(icon1.getAttribute("data-sap-ui-icon-content"), oIconInfo.content, "Icon content is rendered as attribute");
1470
+ assert.ok(icon1.classList.contains("sapUiIcon"), "icon has sapUiIcon as a CSS class");
1471
+ assert.ok(icon1.classList.contains("sapUiIconMirrorInRTL"), "icon has sapUiIconMirrorInRTL as a CSS class");
1472
+ assert.notEqual(icon1.getAttribute("aria-label"), undefined, "Attribute aria-label should be set");
1473
+
1474
+ document.getElementById("area6").innerHTML = "";
1483
1475
  });
1484
1476
 
1485
- /**
1486
- * @deprecated As of 1.92
1487
- */
1488
1477
  QUnit.test("RenderManager writeIcon with Image URL", function(assert) {
1489
1478
  var rm = new RenderManager().getInterface(),
1490
1479
  sImgURL = sap.ui.require.toUrl("sap/ui/core/themes/base/img/Busy.gif");
1491
- rm.writeIcon(sImgURL, ["classA", "classB"], {
1480
+
1481
+ rm.icon(sImgURL, ["classA", "classB"], {
1492
1482
  id: "img1",
1493
1483
  propertyA: "valueA",
1494
1484
  propertyB: "valueB"
@@ -1496,20 +1486,20 @@ sap.ui.define([
1496
1486
  rm.flush(document.getElementById("area7"));
1497
1487
  rm.destroy();
1498
1488
 
1499
- var $img1 = jQueryById("img1");
1500
- assert.ok($img1[0], "icon should be rendered");
1501
- assert.ok($img1.is("img"), "Image URI should be rendered as a img");
1502
- assert.ok($img1.hasClass("classA"), "img has classA as a CSS class");
1503
- assert.ok($img1.hasClass("classB"), "img has classB as a CSS class");
1504
- assert.equal($img1.attr("propertyA"), "valueA", "Attribute should be set");
1505
- assert.equal($img1.attr("propertyB"), "valueB", "Attribute should be set");
1506
- assert.equal($img1.attr("role"), "presentation", "Default attribute should be set");
1507
- assert.equal($img1.attr("alt"), "", "Default attribute should be set");
1489
+ var img1 = document.getElementById("img1");
1490
+ assert.ok(img1, "icon should be rendered");
1491
+ assert.equal(img1.tagName.toLowerCase(), "img", "Image URI should be rendered as a img");
1492
+ assert.ok(img1.classList.contains("classA"), "img has classA as a CSS class");
1493
+ assert.ok(img1.classList.contains("classB"), "img has classB as a CSS class");
1494
+ assert.equal(img1.getAttribute("propertyA"), "valueA", "Attribute should be set");
1495
+ assert.equal(img1.getAttribute("propertyB"), "valueB", "Attribute should be set");
1496
+ assert.equal(img1.getAttribute("role"), "presentation", "Default attribute should be set");
1497
+ assert.equal(img1.getAttribute("alt"), "", "Default attribute should be set");
1508
1498
 
1509
- jQueryById("area7").empty();
1499
+ document.getElementById("area7").innerHTML = "";
1510
1500
 
1511
1501
  rm = new RenderManager().getInterface();
1512
- rm.writeIcon(sImgURL, ["classA", "classB"], {
1502
+ rm.icon(sImgURL, ["classA", "classB"], {
1513
1503
  id: "img1",
1514
1504
  role: "",
1515
1505
  alt: "test alt message"
@@ -1517,13 +1507,15 @@ sap.ui.define([
1517
1507
  rm.flush(document.getElementById("area7"));
1518
1508
  rm.destroy();
1519
1509
 
1520
- $img1 = jQueryById("img1");
1521
- assert.ok($img1[0], "icon should be rendered");
1522
- assert.ok($img1.is("img"), "Image URI should be rendered as a img");
1523
- assert.ok($img1.hasClass("classA"), "img has classA as a CSS class");
1524
- assert.ok($img1.hasClass("classB"), "img has classB as a CSS class");
1525
- assert.equal($img1.attr("role"), "", "Attribute should be changed");
1526
- assert.equal($img1.attr("alt"), "test alt message", "Attribute should be changed");
1510
+ img1 = document.getElementById("img1");
1511
+ assert.ok(img1, "icon should be rendered");
1512
+ assert.equal(img1.tagName.toLowerCase(), "img", "Image URI should be rendered as a img");
1513
+ assert.ok(img1.classList.contains("classA"), "img has classA as a CSS class");
1514
+ assert.ok(img1.classList.contains("classB"), "img has classB as a CSS class");
1515
+ assert.equal(img1.getAttribute("role"), "", "Attribute should be changed");
1516
+ assert.equal(img1.getAttribute("alt"), "test alt message", "Attribute should be changed");
1517
+
1518
+ document.getElementById("area7").innerHTML = "";
1527
1519
  });
1528
1520
 
1529
1521
  QUnit.test("RenderManager should not break for controls with invalid renderer", async function(assert) {