@openui5/sap.ui.core 1.123.1 → 1.124.1

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 (817) hide show
  1. package/package.json +1 -1
  2. package/src/jquery.sap.global.js +1 -1
  3. package/src/jquery.sap.properties.js +1 -1
  4. package/src/jquery.sap.resources.js +1 -1
  5. package/src/jquery.sap.script.js +1 -1
  6. package/src/jquery.sap.storage.js +3 -3
  7. package/src/sap/base/Event.js +1 -1
  8. package/src/sap/base/Eventing.js +1 -1
  9. package/src/sap/base/config.js +1 -1
  10. package/src/sap/base/future.js +66 -6
  11. package/src/sap/base/i18n/LanguageTag.js +1 -1
  12. package/src/sap/base/i18n/date/TimezoneUtils.js +11 -5
  13. package/src/sap/base/util/LoaderExtensions.js +1 -5
  14. package/src/sap/base/util/Version.js +18 -12
  15. package/src/sap/base/util/defineCoupledProperty.js +4 -1
  16. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  17. package/src/sap/base/util/restricted/_castArray.js +1 -1
  18. package/src/sap/base/util/restricted/_compact.js +1 -1
  19. package/src/sap/base/util/restricted/_curry.js +1 -1
  20. package/src/sap/base/util/restricted/_debounce.js +1 -1
  21. package/src/sap/base/util/restricted/_difference.js +1 -1
  22. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  23. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  24. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  25. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  26. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  27. package/src/sap/base/util/restricted/_flatten.js +1 -1
  28. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  29. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  30. package/src/sap/base/util/restricted/_intersection.js +1 -1
  31. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  32. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  33. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  34. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  35. package/src/sap/base/util/restricted/_isNil.js +1 -1
  36. package/src/sap/base/util/restricted/_max.js +1 -1
  37. package/src/sap/base/util/restricted/_merge.js +1 -1
  38. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  39. package/src/sap/base/util/restricted/_min.js +1 -1
  40. package/src/sap/base/util/restricted/_omit.js +1 -1
  41. package/src/sap/base/util/restricted/_pick.js +1 -1
  42. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  43. package/src/sap/base/util/restricted/_throttle.js +1 -1
  44. package/src/sap/base/util/restricted/_toArray.js +1 -1
  45. package/src/sap/base/util/restricted/_union.js +1 -1
  46. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  47. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  48. package/src/sap/base/util/restricted/_uniq.js +1 -1
  49. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  50. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  51. package/src/sap/base/util/restricted/_without.js +1 -1
  52. package/src/sap/base/util/restricted/_xor.js +1 -1
  53. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  54. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  55. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  56. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  57. package/src/sap/ui/Device.js +3 -3
  58. package/src/sap/ui/Global.js +4 -4
  59. package/src/sap/ui/base/Event.js +1 -1
  60. package/src/sap/ui/base/EventProvider.js +1 -2
  61. package/src/sap/ui/base/Interface.js +1 -1
  62. package/src/sap/ui/base/ManagedObject.js +2 -2
  63. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  64. package/src/sap/ui/base/Metadata.js +26 -2
  65. package/src/sap/ui/base/Object.js +1 -1
  66. package/src/sap/ui/base/ObjectPool.js +1 -1
  67. package/src/sap/ui/core/.library +3 -3
  68. package/src/sap/ui/core/BusyIndicator.js +1 -1
  69. package/src/sap/ui/core/Component.js +54 -75
  70. package/src/sap/ui/core/ComponentContainer.js +1 -1
  71. package/src/sap/ui/core/ComponentMetadata.js +33 -21
  72. package/src/sap/ui/core/ComponentSupport.js +4 -4
  73. package/src/sap/ui/core/Configuration.js +1 -1
  74. package/src/sap/ui/core/Control.js +1 -1
  75. package/src/sap/ui/core/Core.js +1 -1
  76. package/src/sap/ui/core/CustomData.js +1 -1
  77. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  78. package/src/sap/ui/core/Element.js +37 -12
  79. package/src/sap/ui/core/ElementMetadata.js +1 -1
  80. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  81. package/src/sap/ui/core/EventBus.js +1 -1
  82. package/src/sap/ui/core/ExtensionPoint.js +4 -2
  83. package/src/sap/ui/core/Fragment.js +2 -2
  84. package/src/sap/ui/core/HTML.js +1 -1
  85. package/src/sap/ui/core/History.js +1 -1
  86. package/src/sap/ui/core/Icon.js +1 -1
  87. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  88. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  89. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  90. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  91. package/src/sap/ui/core/InvisibleText.js +1 -1
  92. package/src/sap/ui/core/Item.js +1 -1
  93. package/src/sap/ui/core/LabelEnablement.js +88 -28
  94. package/src/sap/ui/core/LayoutData.js +1 -1
  95. package/src/sap/ui/core/Lib.js +36 -11
  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 +1 -1
  100. package/src/sap/ui/core/Manifest.js +44 -21
  101. package/src/sap/ui/core/Message.js +1 -1
  102. package/src/sap/ui/core/Popup.js +5 -1
  103. package/src/sap/ui/core/RenderManager.js +1 -1
  104. package/src/sap/ui/core/Renderer.js +1 -1
  105. package/src/sap/ui/core/ResizeHandler.js +1 -1
  106. package/src/sap/ui/core/ScrollBar.js +1 -1
  107. package/src/sap/ui/core/SeparatorItem.js +1 -1
  108. package/src/sap/ui/core/Title.js +1 -1
  109. package/src/sap/ui/core/TooltipBase.js +1 -1
  110. package/src/sap/ui/core/UIArea.js +1 -1
  111. package/src/sap/ui/core/UIComponent.js +94 -42
  112. package/src/sap/ui/core/UIComponentMetadata.js +5 -1
  113. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  114. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  115. package/src/sap/ui/core/XMLComposite.js +1 -1
  116. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  117. package/src/sap/ui/core/XMLTemplateProcessor.js +23 -12
  118. package/src/sap/ui/core/date/UI5Date.js +1 -1
  119. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  120. package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
  121. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  122. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  123. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  124. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  125. package/src/sap/ui/core/format/FormatUtils.js +1 -1
  126. package/src/sap/ui/core/format/NumberFormat.js +1 -1
  127. package/src/sap/ui/core/format/TimezoneUtil.js +86 -10
  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_sh.properties +65 -65
  137. package/src/sap/ui/core/mvc/Controller.js +2 -2
  138. package/src/sap/ui/core/mvc/ControllerExtensionProvider.js +2 -0
  139. package/src/sap/ui/core/mvc/EventHandlerResolver.js +1 -1
  140. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  141. package/src/sap/ui/core/mvc/JSONView.js +1 -1
  142. package/src/sap/ui/core/mvc/JSView.js +1 -1
  143. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  144. package/src/sap/ui/core/mvc/View.js +12 -3
  145. package/src/sap/ui/core/mvc/XMLView.js +7 -2
  146. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  147. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  148. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  149. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  150. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  151. package/src/sap/ui/core/routing/Targets.js +1 -1
  152. package/src/sap/ui/core/rules/App.support.js +11 -11
  153. package/src/sap/ui/core/rules/CoreHelper.support.js +3 -3
  154. package/src/sap/ui/core/rules/Theming.support.js +3 -3
  155. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  156. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  157. package/src/sap/ui/core/service/Service.js +1 -1
  158. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  159. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  160. package/src/sap/ui/core/support/Plugin.js +1 -1
  161. package/src/sap/ui/core/support/Support.js +1 -1
  162. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  163. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  164. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  165. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  166. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  167. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  168. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  169. package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
  170. package/src/sap/ui/core/support/techinfo/moduleTreeHelper.js +1 -1
  171. package/src/sap/ui/core/theming/Parameters.js +23 -27
  172. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  173. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  174. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  175. package/src/sap/ui/core/tmpl/Template.js +1 -1
  176. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  177. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  178. package/src/sap/ui/core/util/Export.js +1 -1
  179. package/src/sap/ui/core/util/ExportCell.js +1 -1
  180. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  181. package/src/sap/ui/core/util/ExportRow.js +1 -1
  182. package/src/sap/ui/core/util/ExportType.js +1 -1
  183. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  184. package/src/sap/ui/core/util/File.js +1 -1
  185. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  186. package/src/sap/ui/core/util/MockServer.js +1 -1
  187. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  188. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  189. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  190. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  191. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  192. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  193. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  194. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  195. package/src/sap/ui/core/webc/WebComponent.js +1 -1
  196. package/src/sap/ui/core/webc/WebComponentMetadata.js +1 -1
  197. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  198. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  199. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  200. package/src/sap/ui/debug/ControlTree.js +1 -1
  201. package/src/sap/ui/debug/DebugEnv.js +1 -1
  202. package/src/sap/ui/debug/PropertyList.js +1 -1
  203. package/src/sap/ui/model/ClientModel.js +1 -1
  204. package/src/sap/ui/model/ClientTreeBindingAdapter.js +7 -5
  205. package/src/sap/ui/model/CompositeBinding.js +9 -3
  206. package/src/sap/ui/model/CompositeDataState.js +1 -1
  207. package/src/sap/ui/model/CompositeType.js +1 -1
  208. package/src/sap/ui/model/Context.js +26 -2
  209. package/src/sap/ui/model/DataState.js +1 -1
  210. package/src/sap/ui/model/MetaModel.js +1 -1
  211. package/src/sap/ui/model/Model.js +1 -1
  212. package/src/sap/ui/model/PropertyBinding.js +113 -35
  213. package/src/sap/ui/model/SelectionModel.js +1 -1
  214. package/src/sap/ui/model/SimpleType.js +1 -1
  215. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  216. package/src/sap/ui/model/TreeBindingAdapter.js +5 -5
  217. package/src/sap/ui/model/TreeBindingCompatibilityAdapter.js +6 -6
  218. package/src/sap/ui/model/Type.js +1 -1
  219. package/src/sap/ui/model/analytics/AnalyticalBinding.js +2 -0
  220. package/src/sap/ui/model/json/JSONModel.js +1 -1
  221. package/src/sap/ui/model/message/MessageModel.js +1 -1
  222. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  223. package/src/sap/ui/model/odata/ODataMessageParser.js +3 -5
  224. package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
  225. package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
  226. package/src/sap/ui/model/odata/ODataModel.js +1 -1
  227. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  228. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  229. package/src/sap/ui/model/odata/type/Currency.js +24 -1
  230. package/src/sap/ui/model/odata/type/Date.js +1 -1
  231. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  232. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  233. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  234. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  235. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  236. package/src/sap/ui/model/odata/type/Double.js +1 -1
  237. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  238. package/src/sap/ui/model/odata/type/Int.js +1 -1
  239. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  240. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  241. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  242. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  243. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  244. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  245. package/src/sap/ui/model/odata/type/Single.js +1 -1
  246. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  247. package/src/sap/ui/model/odata/type/String.js +1 -1
  248. package/src/sap/ui/model/odata/type/Time.js +1 -1
  249. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  250. package/src/sap/ui/model/odata/type/Unit.js +24 -1
  251. package/src/sap/ui/model/odata/v2/Context.js +1 -1
  252. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  253. package/src/sap/ui/model/odata/v2/ODataModel.js +6 -9
  254. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
  255. package/src/sap/ui/model/odata/v4/Context.js +74 -67
  256. package/src/sap/ui/model/odata/v4/ODataBinding.js +31 -39
  257. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +8 -20
  258. package/src/sap/ui/model/odata/v4/ODataListBinding.js +162 -95
  259. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +1 -1
  260. package/src/sap/ui/model/odata/v4/ODataModel.js +8 -5
  261. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +5 -3
  262. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +1 -17
  263. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +204 -177
  264. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +9 -3
  265. package/src/sap/ui/model/odata/v4/lib/_Cache.js +10 -32
  266. package/src/sap/ui/model/odata/v4/lib/_Helper.js +18 -0
  267. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +6 -3
  268. package/src/sap/ui/model/odata/v4/lib/_TreeState.js +35 -1
  269. package/src/sap/ui/model/resource/ResourceModel.js +1 -1
  270. package/src/sap/ui/model/type/Boolean.js +1 -1
  271. package/src/sap/ui/model/type/Currency.js +6 -3
  272. package/src/sap/ui/model/type/Date.js +1 -1
  273. package/src/sap/ui/model/type/DateInterval.js +1 -1
  274. package/src/sap/ui/model/type/DateTime.js +1 -1
  275. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  276. package/src/sap/ui/model/type/FileSize.js +1 -1
  277. package/src/sap/ui/model/type/Float.js +1 -1
  278. package/src/sap/ui/model/type/Integer.js +1 -1
  279. package/src/sap/ui/model/type/String.js +1 -1
  280. package/src/sap/ui/model/type/Time.js +1 -1
  281. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  282. package/src/sap/ui/model/type/Unit.js +6 -3
  283. package/src/sap/ui/model/xml/XMLModel.js +1 -1
  284. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  285. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  286. package/src/sap/ui/test/ModuleTracking.js +1 -2
  287. package/src/sap/ui/test/autowaiter/_navigationContainerWaiter.js +96 -7
  288. package/src/sap/ui/test/generic/TestBase.js +1 -1
  289. package/src/sap/ui/test/gherkin/opa5TestHarness.js +0 -1
  290. package/src/sap/ui/test/gherkin/qUnitTestHarness.js +0 -1
  291. package/src/sap/ui/test/starter/_utils.js +27 -1
  292. package/src/sap/ui/test/starter/createSuite.js +2 -5
  293. package/src/sap/ui/thirdparty/caja-html-sanitizer.js +1 -1
  294. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-blind.js +4 -0
  295. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-bounce.js +4 -0
  296. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-clip.js +4 -0
  297. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-core.js +4 -0
  298. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-drop.js +4 -0
  299. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-explode.js +4 -0
  300. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-fade.js +4 -0
  301. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-fold.js +4 -0
  302. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-highlight.js +4 -0
  303. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-pulsate.js +4 -0
  304. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-scale.js +4 -0
  305. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-shake.js +4 -0
  306. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-slide.js +4 -0
  307. package/src/sap/ui/thirdparty/jqueryui/jquery-effects-transfer.js +4 -0
  308. package/src/sap/ui/util/Storage.js +1 -1
  309. package/src/ui5loader.js +11 -5
  310. package/test/sap/ui/core/demokit/sample/FieldGroup/Page.view.xml +1 -1
  311. package/test/sap/ui/core/demokit/sample/Messaging/ODataBackendMessagesComp/ui5.yaml +1 -1
  312. package/test/sap/ui/core/demokit/sample/Messaging/ODataBackendMessagesComp/webapp/view/Employee.view.xml +0 -1
  313. package/test/sap/ui/core/demokit/sample/TypeCurrency/Component.js +1 -0
  314. package/test/sap/ui/core/demokit/sample/TypeCurrency/manifest.json +1 -2
  315. package/test/sap/ui/core/demokit/sample/TypeDateAsDate/Component.js +1 -0
  316. package/test/sap/ui/core/demokit/sample/TypeDateAsDate/manifest.json +1 -2
  317. package/test/sap/ui/core/demokit/sample/TypeDateAsString/Component.js +1 -0
  318. package/test/sap/ui/core/demokit/sample/TypeDateAsString/manifest.json +1 -2
  319. package/test/sap/ui/core/demokit/sample/TypeDateTime/Component.js +1 -0
  320. package/test/sap/ui/core/demokit/sample/TypeDateTime/manifest.json +1 -2
  321. package/test/sap/ui/core/demokit/sample/TypeFileSize/Component.js +1 -0
  322. package/test/sap/ui/core/demokit/sample/TypeFileSize/manifest.json +1 -2
  323. package/test/sap/ui/core/demokit/sample/TypeFloat/Component.js +1 -0
  324. package/test/sap/ui/core/demokit/sample/TypeFloat/manifest.json +1 -2
  325. package/test/sap/ui/core/demokit/sample/TypeInteger/Component.js +1 -0
  326. package/test/sap/ui/core/demokit/sample/TypeInteger/manifest.json +1 -2
  327. package/test/sap/ui/core/demokit/sample/TypeTimeAsTime/Component.js +1 -0
  328. package/test/sap/ui/core/demokit/sample/TypeTimeAsTime/manifest.json +1 -2
  329. package/test/sap/ui/core/demokit/sample/ViewTemplate/types/Opa.qunit.js +3 -3
  330. package/test/sap/ui/core/demokit/sample/ViewTemplate/types/TemplateV2.view.xml +3 -2
  331. package/test/sap/ui/core/demokit/sample/matcher/BindingPath/ui5.yaml +1 -1
  332. package/test/sap/ui/core/demokit/sample/matcher/Descendant/ui5.yaml +1 -1
  333. package/test/sap/ui/core/demokit/sample/matcher/I18NText/ui5.yaml +1 -1
  334. package/test/sap/ui/core/demokit/sample/matcher/LabelFor/ui5.yaml +1 -1
  335. package/test/sap/ui/core/demokit/sample/matcher/LabelFor/webapp/view/Main.view.xml +0 -1
  336. package/test/sap/ui/core/demokit/sample/odata/v4/Draft/Error.view.xml +1 -1
  337. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.controller.js +30 -7
  338. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.view.xml +28 -4
  339. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/data/metadata.xml +38 -52
  340. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Main.controller.js +13 -13
  341. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Opa.qunit.js +2 -4
  342. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Component.js +3 -3
  343. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Main.controller.js +2 -3
  344. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/MessageHandling.js +3 -3
  345. package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/additionalTargets.js +3 -3
  346. package/test/sap/ui/core/demokit/tutorial/databinding/01/ui5.yaml +1 -1
  347. package/test/sap/ui/core/demokit/tutorial/databinding/02/ui5.yaml +1 -1
  348. package/test/sap/ui/core/demokit/tutorial/databinding/03/ui5.yaml +1 -1
  349. package/test/sap/ui/core/demokit/tutorial/databinding/04/ui5.yaml +1 -1
  350. package/test/sap/ui/core/demokit/tutorial/databinding/05/ui5.yaml +1 -1
  351. package/test/sap/ui/core/demokit/tutorial/databinding/06/ui5.yaml +1 -1
  352. package/test/sap/ui/core/demokit/tutorial/databinding/07/ui5.yaml +1 -1
  353. package/test/sap/ui/core/demokit/tutorial/databinding/08/ui5.yaml +1 -1
  354. package/test/sap/ui/core/demokit/tutorial/databinding/09/ui5.yaml +1 -1
  355. package/test/sap/ui/core/demokit/tutorial/databinding/10/ui5.yaml +1 -1
  356. package/test/sap/ui/core/demokit/tutorial/databinding/11/ui5.yaml +1 -1
  357. package/test/sap/ui/core/demokit/tutorial/databinding/12/ui5.yaml +1 -1
  358. package/test/sap/ui/core/demokit/tutorial/databinding/13/ui5.yaml +1 -1
  359. package/test/sap/ui/core/demokit/tutorial/databinding/14/ui5.yaml +1 -1
  360. package/test/sap/ui/core/demokit/tutorial/databinding/15/ui5.yaml +1 -1
  361. package/test/sap/ui/core/demokit/tutorial/mockserver/01/package.json +3 -0
  362. package/test/sap/ui/core/demokit/tutorial/mockserver/01/ui5.yaml +1 -1
  363. package/test/sap/ui/core/demokit/tutorial/mockserver/01/webapp/Component.js +1 -0
  364. package/test/sap/ui/core/demokit/tutorial/mockserver/01/webapp/test/mockServer.html +1 -1
  365. package/test/sap/ui/core/demokit/tutorial/mockserver/02/package.json +3 -0
  366. package/test/sap/ui/core/demokit/tutorial/mockserver/02/ui5.yaml +1 -1
  367. package/test/sap/ui/core/demokit/tutorial/mockserver/02/webapp/Component.js +1 -0
  368. package/test/sap/ui/core/demokit/tutorial/mockserver/02/webapp/test/mockServer.html +1 -1
  369. package/test/sap/ui/core/demokit/tutorial/mockserver/03/package.json +3 -0
  370. package/test/sap/ui/core/demokit/tutorial/mockserver/03/ui5.yaml +1 -1
  371. package/test/sap/ui/core/demokit/tutorial/mockserver/03/webapp/Component.js +1 -0
  372. package/test/sap/ui/core/demokit/tutorial/mockserver/03/webapp/test/mockServer.html +1 -1
  373. package/test/sap/ui/core/demokit/tutorial/mockserver/04/package.json +3 -0
  374. package/test/sap/ui/core/demokit/tutorial/mockserver/04/ui5.yaml +1 -1
  375. package/test/sap/ui/core/demokit/tutorial/mockserver/04/webapp/Component.js +1 -0
  376. package/test/sap/ui/core/demokit/tutorial/mockserver/04/webapp/test/mockServer.html +1 -1
  377. package/test/sap/ui/core/demokit/tutorial/navigation/01/ui5.yaml +1 -1
  378. package/test/sap/ui/core/demokit/tutorial/navigation/02/ui5.yaml +1 -1
  379. package/test/sap/ui/core/demokit/tutorial/navigation/03/ui5.yaml +1 -1
  380. package/test/sap/ui/core/demokit/tutorial/navigation/04/ui5.yaml +1 -1
  381. package/test/sap/ui/core/demokit/tutorial/navigation/05/ui5.yaml +1 -1
  382. package/test/sap/ui/core/demokit/tutorial/navigation/06/ui5.yaml +1 -1
  383. package/test/sap/ui/core/demokit/tutorial/navigation/07/ui5.yaml +1 -1
  384. package/test/sap/ui/core/demokit/tutorial/navigation/08/ui5.yaml +1 -1
  385. package/test/sap/ui/core/demokit/tutorial/navigation/09/ui5.yaml +1 -1
  386. package/test/sap/ui/core/demokit/tutorial/navigation/10/ui5.yaml +1 -1
  387. package/test/sap/ui/core/demokit/tutorial/navigation/11/ui5.yaml +1 -1
  388. package/test/sap/ui/core/demokit/tutorial/navigation/12/ui5.yaml +1 -1
  389. package/test/sap/ui/core/demokit/tutorial/navigation/13/ui5.yaml +1 -1
  390. package/test/sap/ui/core/demokit/tutorial/navigation/14/ui5.yaml +1 -1
  391. package/test/sap/ui/core/demokit/tutorial/navigation/15/ui5.yaml +1 -1
  392. package/test/sap/ui/core/demokit/tutorial/navigation/16/ui5.yaml +1 -1
  393. package/test/sap/ui/core/demokit/tutorial/navigation/17/ui5.yaml +1 -1
  394. package/test/sap/ui/core/demokit/tutorial/odatav4/01/ui5.yaml +1 -1
  395. package/test/sap/ui/core/demokit/tutorial/odatav4/02/ui5.yaml +1 -1
  396. package/test/sap/ui/core/demokit/tutorial/odatav4/03/ui5.yaml +1 -1
  397. package/test/sap/ui/core/demokit/tutorial/odatav4/04/ui5.yaml +1 -1
  398. package/test/sap/ui/core/demokit/tutorial/odatav4/05/ui5.yaml +1 -1
  399. package/test/sap/ui/core/demokit/tutorial/odatav4/06/ui5.yaml +1 -1
  400. package/test/sap/ui/core/demokit/tutorial/odatav4/07/ui5.yaml +1 -1
  401. package/test/sap/ui/core/demokit/tutorial/odatav4/08/ui5.yaml +1 -1
  402. package/test/sap/ui/core/demokit/tutorial/odatav4/09/ui5.yaml +1 -1
  403. package/test/sap/ui/core/demokit/tutorial/odatav4/10/ui5.yaml +1 -1
  404. package/test/sap/ui/core/demokit/tutorial/odatav4/11/ui5.yaml +1 -1
  405. package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/ui5.yaml +1 -1
  406. package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/webapp/controller/App.controller.js +2 -3
  407. package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Component.js +3 -4
  408. package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Main.controller.js +4 -5
  409. package/test/sap/ui/core/qunit/BindingParser.qunit.js +68 -5
  410. package/test/sap/ui/core/qunit/CacheManager.qunit.js +2 -2
  411. package/test/sap/ui/core/qunit/CommandExecution.qunit.js +1 -1
  412. package/test/sap/ui/core/qunit/CompositeBinding.qunit.js +173 -7
  413. package/test/sap/ui/core/qunit/Core.qunit.js +92 -65
  414. package/test/sap/ui/core/qunit/CustomStyleClassSupport.qunit.js +8 -6
  415. package/test/sap/ui/core/qunit/Element_closestTo.qunit.js +26 -5
  416. package/test/sap/ui/core/qunit/Element_data.qunit.js +86 -3
  417. package/test/sap/ui/core/qunit/Fragment.qunit.js +1 -1
  418. package/test/sap/ui/core/qunit/HTML.qunit.js +13 -0
  419. package/test/sap/ui/core/qunit/Lib.qunit.js +160 -42
  420. package/test/sap/ui/core/qunit/ManagedObjectModel.qunit.js +2 -2
  421. package/test/sap/ui/core/qunit/ThemeManager.qunit.js +1 -0
  422. package/test/sap/ui/core/qunit/ThemeParameters.qunit.js +63 -4
  423. package/test/sap/ui/core/qunit/analytics/AnalyticalBinding.qunit.js +1 -0
  424. package/test/sap/ui/core/qunit/bootstrap/Configuration.qunit.js +4 -4
  425. package/test/sap/ui/core/qunit/bootstrap/ThemeVersion.qunit.js +3 -0
  426. package/test/sap/ui/core/qunit/component/Component.qunit.js +88 -16
  427. package/test/sap/ui/core/qunit/component/ComponentContainer.qunit.js +26 -2
  428. package/test/sap/ui/core/qunit/component/ComponentSupport.qunit.js +62 -59
  429. package/test/sap/ui/core/qunit/component/Component_keepAlive.qunit.js +75 -7
  430. package/test/sap/ui/core/qunit/component/ExtensionPoint.qunit.js +128 -117
  431. package/test/sap/ui/core/qunit/component/Manifest.qunit.js +57 -5
  432. package/test/sap/ui/core/qunit/component/Metadata.qunit.js +72 -7
  433. package/test/sap/ui/core/qunit/component/Metadata_unavoidablySync.qunit.js +62 -17
  434. package/test/sap/ui/core/qunit/component/Models.qunit.js +670 -237
  435. package/test/sap/ui/core/qunit/component/UIComponent.qunit.js +211 -33
  436. package/test/sap/ui/core/qunit/component/testdata/async/lib2/library-preload.js +2 -0
  437. package/test/sap/ui/core/qunit/component/testdata/async/lib2/library-preload.json +1 -1
  438. package/test/sap/ui/core/qunit/component/testdata/async/lib2/library.js +1 -0
  439. package/test/sap/ui/core/qunit/component/testdata/async/lib3/library-preload.js +2 -0
  440. package/test/sap/ui/core/qunit/component/testdata/async/lib3/library-preload.json +1 -1
  441. package/test/sap/ui/core/qunit/component/testdata/async/lib3/library.js +1 -0
  442. package/test/sap/ui/core/qunit/component/testdata/async/lib4/library-preload.js +2 -0
  443. package/test/sap/ui/core/qunit/component/testdata/async/lib4/library-preload.json +1 -1
  444. package/test/sap/ui/core/qunit/component/testdata/async/lib4/library.js +1 -0
  445. package/test/sap/ui/core/qunit/component/testdata/async/manifestcomp/Component-preload.js +1 -0
  446. package/test/sap/ui/core/qunit/component/testdata/async/mycomp/Component-preload.js +1 -0
  447. package/test/sap/ui/core/qunit/component/testdata/async/mysubcomp/Component-preload.js +1 -0
  448. package/test/sap/ui/core/qunit/component/testdata/customizing/customer/Component.js +1 -2
  449. package/test/sap/ui/core/qunit/component/testdata/customizing_legacyAPIs/customer/Component.js +1 -2
  450. package/test/sap/ui/core/qunit/component/testdata/inherit/manifest.json +3 -5
  451. package/test/sap/ui/core/qunit/component/testdata/inherit/parent/manifest.json +2 -2
  452. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnActivateReturns/App.view.xml +3 -0
  453. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnActivateReturns/Component.js +15 -0
  454. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnActivateReturns/Home.view.xml +5 -0
  455. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnActivateReturns/Other.view.xml +5 -0
  456. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnActivateReturns/manifest.json +54 -0
  457. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnDeactivateReturns/App.view.xml +3 -0
  458. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnDeactivateReturns/Component.js +17 -0
  459. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnDeactivateReturns/Home.view.xml +5 -0
  460. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnDeactivateReturns/Other.view.xml +5 -0
  461. package/test/sap/ui/core/qunit/component/testdata/keepAlive/child3OnDeactivateReturns/manifest.json +54 -0
  462. package/test/sap/ui/core/qunit/component/testdata/minUI5Version/Component.js +18 -0
  463. package/test/sap/ui/core/qunit/component/testdata/minUI5Version/Main.controller.js +6 -0
  464. package/test/sap/ui/core/qunit/component/testdata/minUI5Version/Main.view.xml +6 -0
  465. package/test/sap/ui/core/qunit/component/testdata/minUI5Version/manifest.json +12 -0
  466. package/test/sap/ui/core/qunit/component/testdata/mixed/Component.js +3 -1
  467. package/test/sap/ui/core/qunit/component/testdata/mixed/manifest.json +3 -11
  468. package/test/sap/ui/core/qunit/component/testdata/mixed_legacyAPIs/Component.js +16 -0
  469. package/test/sap/ui/core/qunit/component/testdata/{mixed → mixed_legacyAPIs}/component.json +3 -3
  470. package/test/sap/ui/core/qunit/component/testdata/mixed_legacyAPIs/i18n/i18n.properties +3 -0
  471. package/test/sap/ui/core/qunit/component/testdata/mixed_legacyAPIs/manifest.json +139 -0
  472. package/test/sap/ui/core/qunit/component/testdata/mixed_legacyAPIs/style.css +0 -0
  473. package/test/sap/ui/core/qunit/component/testdata/routerClass/Component.js +33 -0
  474. package/test/sap/ui/core/qunit/component/testdata/routerClass/Main.view.xml +8 -0
  475. package/test/sap/ui/core/qunit/component/testdata/routerClass/manifest.json +38 -0
  476. package/test/sap/ui/core/qunit/component/testdata/v1/component.json +2 -2
  477. package/test/sap/ui/core/qunit/component/testdata/v1inline/Component.js +2 -2
  478. package/test/sap/ui/core/qunit/component/testdata/v2/manifest.json +3 -5
  479. package/test/sap/ui/core/qunit/component/testdata/v2asyncRootView/manifest.json +2 -4
  480. package/test/sap/ui/core/qunit/component/testdata/v2inline/Component.js +2 -4
  481. package/test/sap/ui/core/qunit/component/testdata/v2models/empty/Component.js +1 -1
  482. package/test/sap/ui/core/qunit/component/testdata/v2models/extension/Component.js +1 -1
  483. package/test/sap/ui/core/qunit/component/testdata/v2models/parentValid/Component.js +286 -0
  484. package/test/sap/ui/core/qunit/component/testdata/v2models/parentValid/i18n.properties +2 -0
  485. package/test/sap/ui/core/qunit/component/testdata/v2models/parentValid/i18n_de.properties +2 -0
  486. package/test/sap/ui/core/qunit/component/testdata/v4models/sapSystem/Component.js +16 -0
  487. package/test/sap/ui/core/qunit/component/testdata/v4models/sapSystem/manifest.json +102 -0
  488. package/test/sap/ui/core/qunit/i18n/LocaleData.qunit.js +5 -5
  489. package/test/sap/ui/core/qunit/{types/TimezoneUtil.qunit.js → i18n/TimezoneUtils.qunit.js} +85 -87
  490. package/test/sap/ui/core/qunit/i18n/testsuite.i18n.qunit.js +6 -0
  491. package/test/sap/ui/core/qunit/internal/1RingModels.qunit.js +2 -2
  492. package/test/sap/ui/core/qunit/json/JSONModel.qunit.js +117 -85
  493. package/test/sap/ui/core/qunit/messages/Message.qunit.js +7 -5
  494. package/test/sap/ui/core/qunit/messages/messagesDataBinding.qunit.js +3 -5
  495. package/test/sap/ui/core/qunit/messages/messagesGeneral.qunit.js +41 -4
  496. package/test/sap/ui/core/qunit/messages/messagesUsage.qunit.js +3 -2
  497. package/test/sap/ui/core/qunit/model/Context.qunit.js +29 -0
  498. package/test/sap/ui/core/qunit/model/PropertyBinding.qunit.js +490 -5
  499. package/test/sap/ui/core/qunit/mvc/Controller.qunit.js +164 -12
  500. package/test/sap/ui/core/qunit/mvc/EventHandlerResolver.qunit.js +144 -6
  501. package/test/sap/ui/core/qunit/mvc/View.qunit.js +2 -2
  502. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessor.qunit.js +60 -5
  503. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorAsync.qunit.js +58 -3
  504. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorRequireXML.qunit.js +127 -10
  505. package/test/sap/ui/core/qunit/mvc/XMLView.qunit.js +108 -10
  506. package/test/sap/ui/core/qunit/mvc/extensions/ControllerMetadata.qunit.js +74 -7
  507. package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions.qunit.js +0 -6
  508. package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions_legacy.qunit.js +0 -6
  509. package/test/sap/ui/core/qunit/mvc/extensions/testdata/ExtendMainLegacy.controller.js +15 -0
  510. package/test/sap/ui/core/qunit/mvc/extensions/testdata/MainContext.controller.js +0 -3
  511. package/test/sap/ui/core/qunit/mvc/extensions/testdata/MainMemberExtLegacyFinal.controller.js +38 -0
  512. package/test/sap/ui/core/qunit/mvc/extensions/testdata/ReuseExtension.js +0 -3
  513. package/test/sap/ui/core/qunit/mvc/extensions/testdata/ReuseExtensionContext.js +0 -3
  514. package/test/sap/ui/core/qunit/mvc/extensions/testdata/ReuseExtensionFinal.js +47 -0
  515. package/test/sap/ui/core/qunit/mvc/testdata/HtmlOnRoot.view.xml +8 -0
  516. package/test/sap/ui/core/qunit/mvc/testdata/XMLViewWithTypes.view.xml +1 -1
  517. package/test/sap/ui/core/qunit/mvc/testdata/XMLViewWithTypesFailure.view.xml +41 -0
  518. package/test/sap/ui/core/qunit/mvc/testdata/asyncHooks.view.xml +1 -1
  519. package/test/sap/ui/core/qunit/mvc/testdata/test.controller.js +4 -0
  520. package/test/sap/ui/core/qunit/mvc/testdata/test.view.xml +1 -1
  521. package/test/sap/ui/core/qunit/mvc/testsuite.mvc.qunit.js +12 -2
  522. package/test/sap/ui/core/qunit/mvc/viewprocessing/ViewProcessing.qunit.js +23 -4
  523. package/test/sap/ui/core/qunit/mvc_legacyAPIs/XMLTemplateProcessorRequireXML_legacyAPIs.qunit.js +1 -1
  524. package/test/sap/ui/core/qunit/odata/ODataMessageParser.qunit.js +3 -5
  525. package/test/sap/ui/core/qunit/odata/ODataMessageParserNoFakeService.qunit.js +3 -5
  526. package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +180 -12
  527. package/test/sap/ui/core/qunit/odata/v2/V2ODataModel.qunit.js +3 -5
  528. package/test/sap/ui/core/qunit/odata/v2/V2ODataModelDataState.qunit.js +3 -6
  529. package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +149 -122
  530. package/test/sap/ui/core/qunit/odata/v4/ODataBinding.qunit.js +22 -71
  531. package/test/sap/ui/core/qunit/odata/v4/ODataContextBinding.qunit.js +19 -42
  532. package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +351 -174
  533. package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +6094 -2827
  534. package/test/sap/ui/core/qunit/odata/v4/ODataModel.qunit.js +2 -4
  535. package/test/sap/ui/core/qunit/odata/v4/ODataParentBinding.qunit.js +11 -5
  536. package/test/sap/ui/core/qunit/odata/v4/ODataPropertyBinding.qunit.js +0 -49
  537. package/test/sap/ui/core/qunit/odata/v4/data/metadata.json +24 -0
  538. package/test/sap/ui/core/qunit/odata/v4/data/metadata.xml +14 -2
  539. package/test/sap/ui/core/qunit/odata/v4/data/metadata_special_cases.xml +16 -0
  540. package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +408 -403
  541. package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationHelper.qunit.js +11 -1
  542. package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +56 -51
  543. package/test/sap/ui/core/qunit/odata/v4/lib/_Helper.qunit.js +30 -0
  544. package/test/sap/ui/core/qunit/odata/v4/lib/_Requestor.qunit.js +68 -59
  545. package/test/sap/ui/core/qunit/odata/v4/lib/_TreeState.qunit.js +91 -2
  546. package/test/sap/ui/core/qunit/opa/autowaiter/_navigationContainerWaiter.js +62 -15
  547. package/test/sap/ui/core/qunit/routing/async/Router.qunit.js +91 -19
  548. package/test/sap/ui/core/qunit/routing/async/Target.qunit.js +1 -1
  549. package/test/sap/ui/core/qunit/routing/async/Targets.qunit.js +131 -16
  550. package/test/sap/ui/core/qunit/routing/async/TitleHistory.qunit.js +111 -3
  551. package/test/sap/ui/core/qunit/routing/async/Views.qunit.js +3 -0
  552. package/test/sap/ui/core/qunit/routing/fixture/Async1.view.xml +2 -2
  553. package/test/sap/ui/core/qunit/routing/fixture/Async2.view.xml +2 -2
  554. package/test/sap/ui/core/qunit/routing/fixture/Async3.view.xml +2 -2
  555. package/test/sap/ui/core/qunit/routing/fixture/router/component/titleChanged/Parent/manifest.json +2 -1
  556. package/test/sap/ui/core/qunit/rule/testsuite.rule.qunit.js +3 -0
  557. package/test/sap/ui/core/qunit/testdata/fragments/XMLTestFragmentWithXMLView.fragment.xml +1 -1
  558. package/test/sap/ui/core/qunit/testdata/libraries/customCss/lib1/library.js +4 -11
  559. package/test/sap/ui/core/qunit/testdata/libraries/make.js +8 -1
  560. package/test/sap/ui/core/qunit/testdata/libraries/myGlobalLib/library.js +1 -0
  561. package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib1/library.js +1 -0
  562. package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib2/intentionally_no_manifest_here.txt +7 -0
  563. package/test/sap/ui/core/qunit/testdata/libraries/resourcebundle/lib2/library.js +1 -0
  564. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib1/library-preload.js +2 -0
  565. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib1/library.js +1 -0
  566. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib2/library-preload.json +1 -1
  567. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib2/library.js +1 -0
  568. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib3/library-preload.js +2 -0
  569. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib3/library.js +1 -0
  570. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib4/library-preload.js +2 -0
  571. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib4/library-preload.json +1 -1
  572. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib4/library.js +1 -0
  573. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib5/library-preload.json +1 -1
  574. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib5/library.js +1 -0
  575. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib6/library-preload.js +2 -0
  576. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib6/library.js +1 -0
  577. package/test/sap/ui/core/qunit/testdata/libraries/scenario1/lib7/library.js +1 -0
  578. package/test/sap/ui/core/qunit/testdata/libraries/scenario11/lib1/library.js +6 -4
  579. package/test/sap/ui/core/qunit/testdata/libraries/scenario11/lib1/manifest.json +7 -0
  580. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib1/library-preload.js +2 -0
  581. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib1/library.js +1 -0
  582. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib2/library-preload.json +1 -1
  583. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib2/library.js +1 -0
  584. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib3/library-preload.js +2 -0
  585. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib3/library.js +1 -0
  586. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib4/library-preload.js +2 -0
  587. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib4/library-preload.json +1 -1
  588. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib4/library.js +1 -0
  589. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib5/library-preload.json +1 -1
  590. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib5/library.js +1 -0
  591. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib6/library-preload.js +2 -0
  592. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib6/library.js +1 -0
  593. package/test/sap/ui/core/qunit/testdata/libraries/scenario13/lib7/library.js +1 -0
  594. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib1/library-preload.js +2 -0
  595. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib1/library.js +1 -0
  596. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib2/library-preload.js +2 -0
  597. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib2/library.js +1 -0
  598. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib3/library-preload.js +2 -0
  599. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib3/library.js +1 -0
  600. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib4/library-preload.js +2 -0
  601. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib4/library.js +1 -0
  602. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib5/library-preload.js +2 -0
  603. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib5/library.js +1 -0
  604. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib6/library-preload.js +2 -0
  605. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib6/library.js +1 -0
  606. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib7/library-preload.js +2 -0
  607. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib7/library.js +1 -0
  608. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib8/library-preload.js +2 -0
  609. package/test/sap/ui/core/qunit/testdata/libraries/scenario14/lib8/library.js +1 -0
  610. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib1/library-preload.js +2 -0
  611. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib1/library.js +1 -0
  612. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib10/library-preload.js +2 -0
  613. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib10/library.js +1 -0
  614. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib2/library-preload.json +1 -1
  615. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib2/library.js +1 -0
  616. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib3/library-preload.js +2 -0
  617. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib3/library.js +1 -0
  618. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib4/library-preload.js +2 -0
  619. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib4/library-preload.json +1 -1
  620. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib4/library.js +1 -0
  621. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib5/library-preload.json +1 -1
  622. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib5/library.js +1 -0
  623. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib6/library-preload.js +2 -0
  624. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib6/library.js +1 -0
  625. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib7/library-preload.js +2 -0
  626. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib7/library.js +1 -0
  627. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib8/library-preload.js +2 -0
  628. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib8/library.js +1 -0
  629. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib9/library-preload.js +2 -0
  630. package/test/sap/ui/core/qunit/testdata/libraries/scenario15/lib9/library.js +1 -0
  631. package/test/sap/ui/core/qunit/testdata/libraries/scenario16/embeddingLib/library-preload.js +2 -0
  632. package/test/sap/ui/core/qunit/testdata/libraries/scenario16/embeddingLib/library.js +1 -0
  633. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib1/library-preload.js +2 -0
  634. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib1/library.js +1 -0
  635. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib2/library-preload.json +1 -1
  636. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib2/library.js +1 -0
  637. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib3/library-preload.js +2 -0
  638. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib3/library.js +1 -0
  639. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib4/library-preload.js +2 -0
  640. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib4/library-preload.json +1 -1
  641. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib4/library.js +1 -0
  642. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib5/library-preload.json +1 -1
  643. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib5/library.js +1 -0
  644. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib6/library-preload.js +2 -0
  645. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib6/library.js +1 -0
  646. package/test/sap/ui/core/qunit/testdata/libraries/scenario2/lib7/library.js +1 -0
  647. package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib1/library-preload.js +2 -0
  648. package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib1/library.js +1 -0
  649. package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib2/library-preload.json +1 -1
  650. package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib2/library.js +1 -0
  651. package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib3/library-preload.js +2 -0
  652. package/test/sap/ui/core/qunit/testdata/libraries/scenario3/lib3/library.js +1 -0
  653. package/test/sap/ui/core/qunit/testdata/libraries/scenario4/lib1/library-preload.js +2 -0
  654. package/test/sap/ui/core/qunit/testdata/libraries/scenario4/lib1/library.js +1 -0
  655. package/test/sap/ui/core/qunit/testdata/libraries/scenario4/lib2/library-preload.json +1 -1
  656. package/test/sap/ui/core/qunit/testdata/libraries/scenario4/lib2/library.js +1 -0
  657. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib1/library-preload.js +2 -0
  658. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib1/library.js +1 -0
  659. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib2/library-preload.js +2 -0
  660. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib2/library.js +1 -0
  661. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib3/library-preload.js +2 -0
  662. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib3/library.js +1 -0
  663. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib4/library-preload.js +2 -0
  664. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib4/library-preload.json +1 -1
  665. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib4/library.js +1 -0
  666. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib5/library-preload.json +1 -1
  667. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib5/library.js +1 -0
  668. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib6/library-preload.js +2 -0
  669. package/test/sap/ui/core/qunit/testdata/libraries/scenario5/lib6/library.js +1 -0
  670. package/test/sap/ui/core/qunit/testdata/libraries/scenario6/lib1/library-preload.json +1 -1
  671. package/test/sap/ui/core/qunit/testdata/libraries/scenario6/lib1/library.js +1 -0
  672. package/test/sap/ui/core/qunit/testdata/libraries/scenario6/lib2/library-preload.json +1 -1
  673. package/test/sap/ui/core/qunit/testdata/libraries/scenario6/lib2/library.js +1 -0
  674. package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib1/library-preload.js +2 -0
  675. package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib1/library-preload.json +1 -1
  676. package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib1/library.js +1 -0
  677. package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib2/library-preload.json +1 -1
  678. package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib2/library.js +1 -0
  679. package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib3/library-preload.js +2 -0
  680. package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib3/library.js +1 -0
  681. package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib4/library-preload.json +1 -1
  682. package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib4/library.js +1 -0
  683. package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib5/library-preload.js +2 -0
  684. package/test/sap/ui/core/qunit/testdata/libraries/scenario7/lib5/library.js +1 -0
  685. package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib1/library-preload.js +2 -0
  686. package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib1/library-preload.json +1 -1
  687. package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib1/library.js +1 -0
  688. package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib2/library-preload.json +1 -1
  689. package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib2/library.js +1 -0
  690. package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib3/library-preload.js +2 -0
  691. package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib3/library.js +1 -0
  692. package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib4/library-preload.json +1 -1
  693. package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib4/library.js +1 -0
  694. package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib5/library-preload.js +2 -0
  695. package/test/sap/ui/core/qunit/testdata/libraries/scenario8/lib5/library.js +1 -0
  696. package/test/sap/ui/core/qunit/testdata/libraries/scenario9/lib1/library-preload.js +2 -0
  697. package/test/sap/ui/core/qunit/testdata/libraries/scenario9/lib1/library.js +1 -0
  698. package/test/sap/ui/core/qunit/testdata/libraries/terminologies/absoluteBundleUrl/library-preload.js +2 -0
  699. package/test/sap/ui/core/qunit/testdata/libraries/terminologies/integration/application/Component-preload.js +1 -1
  700. package/test/sap/ui/core/qunit/testdata/libraries/terminologies/integration/lib/library-preload.js +2 -2
  701. package/test/sap/ui/core/qunit/testdata/libraries/terminologies/notLoadedYet/library-preload.js +2 -0
  702. package/test/sap/ui/core/qunit/testdata/libraries/terminologies/simple/library-preload.js +2 -0
  703. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib1/library.js +1 -0
  704. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib10/library.js +1 -0
  705. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib11/library.js +1 -0
  706. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib12/library.js +1 -0
  707. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib13/library.js +1 -0
  708. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib14/library.js +1 -0
  709. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib15/library.js +1 -0
  710. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib16/library.js +1 -0
  711. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib17/library.js +1 -0
  712. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib2/library.js +1 -0
  713. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib3/library.js +1 -0
  714. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib4/library.js +1 -0
  715. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib5/library.js +1 -0
  716. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib6/library.js +1 -0
  717. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib7/library.js +1 -0
  718. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib8/library.js +1 -0
  719. package/test/sap/ui/core/qunit/testdata/libraries/themeParameters/lib9/library.js +1 -0
  720. package/test/sap/ui/core/qunit/testdata/routing/scenario1/RootView.view.xml +1 -2
  721. package/test/sap/ui/core/qunit/testdata/uilib/library.js +1 -0
  722. package/test/sap/ui/core/qunit/testdata/uilib/themes/test_theme_scoped/library-parameters.json +25 -0
  723. package/test/sap/ui/core/qunit/testdata/uilib/themes/test_theme_scoped/library.css +28 -0
  724. package/test/sap/ui/core/qunit/testdata/uilib-custom-theme-fallback/library.js +1 -0
  725. package/test/sap/ui/core/qunit/testdata/uilib-failing-css-import/library.js +1 -0
  726. package/test/sap/ui/core/qunit/testdata/xml-require/view/XMLTemplateProcessorAsync_require_expression.view.xml +0 -1
  727. package/test/sap/ui/core/qunit/testdata/xml-require/view/XMLTemplateProcessorAsync_require_expressionFaulty.view.xml +40 -0
  728. package/test/sap/ui/core/qunit/testsuites/testsuite.control.framework.qunit.js +11 -1
  729. package/test/sap/ui/core/qunit/testsuites/testsuite.eventing.qunit.js +3 -0
  730. package/test/sap/ui/core/qunit/testsuites/testsuite.foundation.enablement.qunit.js +3 -0
  731. package/test/sap/ui/core/qunit/types/Date.qunit.js +62 -25
  732. package/test/sap/ui/core/qunit/types/DateInterval.qunit.js +79 -12
  733. package/test/sap/ui/core/qunit/types/Types.qunit.js +135 -38
  734. package/test/sap/ui/core/qunit/types/testsuite.types.qunit.js +0 -6
  735. package/test/sap/ui/core/qunit/ui5classes/DataType.qunit.js +10 -1
  736. package/test/sap/ui/core/qunit/ui5classes/ManagedObject.qunit.js +102 -19
  737. package/test/sap/ui/core/qunit/ui5classes/Object.qunit.js +116 -124
  738. package/test/sap/ui/core/qunit/util/LabelEnablement.qunit.js +122 -3
  739. package/test/sap/ui/core/qunit/util/reflection/JsControlTreeModifier.qunit.js +79 -4
  740. package/test/sap/ui/core/qunit/util/reflection/XmlTreeModifier.qunit.js +0 -1
  741. package/test/sap/ui/core/relnotes/changes-1.124.json +52 -0
  742. package/test/sap/ui/core/samples/databinding/UnitTable/README.md +18 -0
  743. package/test/sap/ui/core/samples/databinding/UnitTable/package.json +13 -0
  744. package/test/sap/ui/core/samples/databinding/UnitTable/ui5.yaml +12 -0
  745. package/test/sap/ui/core/samples/databinding/UnitTable/webapp/Component.js +29 -0
  746. package/test/sap/ui/core/samples/databinding/UnitTable/webapp/controller/UnitTable.controller.js +58 -0
  747. package/test/sap/ui/core/samples/databinding/{UnitTable.meters.json → UnitTable/webapp/data/UnitTable.meters.json} +42 -42
  748. package/test/sap/ui/core/samples/databinding/UnitTable/webapp/index.html +28 -0
  749. package/test/sap/ui/core/samples/databinding/UnitTable/webapp/manifest.json +40 -0
  750. package/test/sap/ui/core/samples/databinding/UnitTable/webapp/view/UnitTable.view.xml +206 -0
  751. package/test/sap/ui/core/samples/draganddrop/DragAndDrop.html +2 -2
  752. package/test/sap/ui/core/samples/draganddrop/dragBetweenLists.html +10 -5
  753. package/test/sap/ui/core/samples/draganddrop/dragWithinList.html +0 -2
  754. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/firstItem-contextMenu.ref.lnk +1 -1
  755. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/initial.ref.lnk +1 -1
  756. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/lastItem-contextMenu.ref.lnk +1 -1
  757. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/leftDownBtn-contextMenu.ref.lnk +1 -1
  758. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/myButtonSample-contextMenu.ref.lnk +1 -1
  759. package/test/sap/ui/core/visual/images/ContextMenuSupport/windows/1600x1200/chrome/horizon/ltr/cozy/rightDownBtn-contextMenu.ref.lnk +1 -1
  760. package/test/sap/ui/core/CurrenciesIndia.html +0 -182
  761. package/test/sap/ui/core/CurrenciesRTL.html +0 -312
  762. package/test/sap/ui/core/CustomData.html +0 -161
  763. package/test/sap/ui/core/DataTypeNormalizer.html +0 -44
  764. package/test/sap/ui/core/Formats.html +0 -384
  765. package/test/sap/ui/core/Strings.controller.js +0 -90
  766. package/test/sap/ui/core/Strings.css +0 -8
  767. package/test/sap/ui/core/Strings.html +0 -25
  768. package/test/sap/ui/core/Strings.js +0 -20
  769. package/test/sap/ui/core/Strings.view.xml +0 -86
  770. package/test/sap/ui/core/Timezones.html +0 -23
  771. package/test/sap/ui/core/qunit/ODataModelRefresh.qunit.html +0 -236
  772. package/test/sap/ui/core/qunit/ODataModelThreshold.qunit.html +0 -164
  773. package/test/sap/ui/core/samples/databinding/DataBindingAsyncType.html +0 -85
  774. package/test/sap/ui/core/samples/databinding/DataBindingDeclarativeSyntax.js +0 -65
  775. package/test/sap/ui/core/samples/databinding/DataBindingFragment.html +0 -21
  776. package/test/sap/ui/core/samples/databinding/DatabindingDeclarativeSyntax.html +0 -38
  777. package/test/sap/ui/core/samples/databinding/DatabindingMessages.html +0 -193
  778. package/test/sap/ui/core/samples/databinding/ODatabindingMessages.html +0 -305
  779. package/test/sap/ui/core/samples/databinding/UnitTable.controller.js +0 -202
  780. package/test/sap/ui/core/samples/databinding/UnitTable.html +0 -25
  781. package/test/sap/ui/core/samples/databinding/UnitTable.view.xml +0 -337
  782. package/test/sap/ui/core/samples/databinding/UnitTableMain.js +0 -21
  783. package/test/sap/ui/core/samples/databinding/fragment/Fragment.fragment.xml +0 -6
  784. package/test/sap/ui/core/samples/databinding/fragment/NamedFragment.fragment.xml +0 -6
  785. package/test/sap/ui/core/samples/databinding/fragment/View.controller.js +0 -36
  786. package/test/sap/ui/core/samples/databinding/fragment/View.view.xml +0 -12
  787. package/test/sap/ui/core/samples/databinding/message/Component.js +0 -185
  788. package/test/sap/ui/core/samples/databinding/message/component.json +0 -12
  789. package/test/sap/ui/core/samples/databinding/message/comptree/Component.js +0 -186
  790. package/test/sap/ui/core/samples/databinding/message/comptree/component.json +0 -12
  791. package/test/sap/ui/core/samples/databinding/message/disabled/Component.js +0 -186
  792. package/test/sap/ui/core/samples/databinding/message/disabled/component.json +0 -12
  793. package/test/sap/ui/core/samples/databinding/message/enabled/Component.js +0 -186
  794. package/test/sap/ui/core/samples/databinding/message/enabled/component.json +0 -12
  795. package/test/sap/ui/core/samples/databinding/testdata/ComplexSyntax.js +0 -38
  796. package/test/sap/ui/core/samples/databinding/testdata/complexsyntax.controller.js +0 -26
  797. package/test/sap/ui/core/samples/databinding/testdata/complexsyntax.view.xml +0 -26
  798. package/test/sap/ui/core/samples/databinding/testdata/team.xml +0 -12
  799. package/test/sap/ui/core/samples/databinding/testdata/test.controller.js +0 -39
  800. package/test/sap/ui/core/samples/databinding/testdata/text.properties +0 -5
  801. package/test/sap/ui/core/samples/databinding/testdata/text_de.properties +0 -5
  802. package/test/sap/ui/core/samples/formatting/Component.js +0 -21
  803. package/test/sap/ui/core/samples/formatting/controller/ChooseFormatOptions.controller.js +0 -96
  804. package/test/sap/ui/core/samples/formatting/controller/Main.controller.js +0 -9
  805. package/test/sap/ui/core/samples/formatting/index.html +0 -28
  806. package/test/sap/ui/core/samples/formatting/manifest.json +0 -68
  807. package/test/sap/ui/core/samples/formatting/model/Customizing.js +0 -35
  808. package/test/sap/ui/core/samples/formatting/model/data.json +0 -17
  809. package/test/sap/ui/core/samples/formatting/types/CustomCurrency.js +0 -14
  810. package/test/sap/ui/core/samples/formatting/types/CustomUnit.js +0 -14
  811. package/test/sap/ui/core/samples/formatting/view/App.view.xml +0 -6
  812. package/test/sap/ui/core/samples/formatting/view/ChooseFormatOptions.view.xml +0 -71
  813. package/test/sap/ui/core/samples/formatting/view/InputFields.fragment.xml +0 -118
  814. package/test/sap/ui/core/samples/formatting/view/Main.view.xml +0 -15
  815. package/test/sap/ui/core/timezones.js +0 -92
  816. package/test/sap/ui/core/timezones.view.xml +0 -23
  817. /package/test/sap/ui/core/qunit/component/testdata/{mixed → mixed_legacyAPIs}/script.js +0 -0
@@ -2,6 +2,7 @@ sap.ui.define([
2
2
  'sap/ui/qunit/utils/createAndAppendDiv',
3
3
  "sap/ui/qunit/utils/nextUIUpdate",
4
4
  'sap/ui/core/Component',
5
+ 'sap/ui/core/Supportability',
5
6
  'sap/ui/core/ComponentContainer',
6
7
  'sap/ui/core/ComponentRegistry',
7
8
  'sap/ui/core/Messaging',
@@ -12,8 +13,9 @@ sap.ui.define([
12
13
  'sap/base/util/deepExtend',
13
14
  'sap/base/util/LoaderExtensions',
14
15
  'sap/ui/core/Manifest',
15
- 'sap/base/i18n/ResourceBundle'
16
- ], function (createAndAppendDiv, nextUIUpdate, Component, ComponentContainer, ComponentRegistry, Messaging, UIComponentMetadata, SamplesRoutingComponent, SamplesRouterExtension, Log, deepExtend, LoaderExtensions, Manifest, ResourceBundle) {
16
+ 'sap/base/i18n/ResourceBundle',
17
+ 'sap/ui/VersionInfo'
18
+ ], function (createAndAppendDiv, nextUIUpdate, Component, Supportability, ComponentContainer, ComponentRegistry, Messaging, UIComponentMetadata, SamplesRoutingComponent, SamplesRouterExtension, Log, deepExtend, LoaderExtensions, Manifest, ResourceBundle, VersionInfo) {
17
19
 
18
20
  "use strict";
19
21
  /*global sinon, QUnit, foo*/
@@ -1541,6 +1543,32 @@ sap.ui.define([
1541
1543
 
1542
1544
  });
1543
1545
 
1546
+ /**
1547
+ * Legacy tests with an already loaded manifest.json for a Component with metadata based on a "component.json".
1548
+ * @deprecated
1549
+ */
1550
+ QUnit.test("Component.create with loaded manifest content (legacy, component.json)", function(assert) {
1551
+ var oProcessI18nSpy = this.spy(Manifest.prototype, "_processI18n");
1552
+
1553
+ return LoaderExtensions.loadResource(
1554
+ "sap/ui/test/mixed_legacyAPIs/manifest.json",
1555
+ {async: true}
1556
+ ).then(function(oManifest) {
1557
+ return Component.create({
1558
+ manifest: oManifest
1559
+ });
1560
+ }).then(function(oComponent) {
1561
+ assert.ok(oComponent, "Component instance is created");
1562
+ var iSyncCall = oProcessI18nSpy.getCalls().reduce(function(acc, oCall) {
1563
+ if (oCall.args.length === 0 || !oCall.args[0]) {
1564
+ acc++;
1565
+ }
1566
+ return acc;
1567
+ }, 0);
1568
+ assert.equal(iSyncCall, 0, "No sync loading of i18n is done");
1569
+ });
1570
+ });
1571
+
1544
1572
  QUnit.test("Component.create with loaded manifest content", function(assert) {
1545
1573
  var oProcessI18nSpy = this.spy(Manifest.prototype, "_processI18n");
1546
1574
 
@@ -1563,8 +1591,11 @@ sap.ui.define([
1563
1591
  });
1564
1592
  });
1565
1593
 
1566
-
1567
- QUnit.test("Check the loading of i18n of a component and its inheriting parent", function(assert) {
1594
+ /**
1595
+ * Legacy tests with an inheritance chain that contains a "component.json" based parent.
1596
+ * @deprecated
1597
+ */
1598
+ QUnit.test("Check the loading of i18n of a component and its inheriting parent (legacy, component.json)", function(assert) {
1568
1599
  var oProcessI18nSpy = this.spy(Manifest.prototype, "_processI18n");
1569
1600
 
1570
1601
  return Component.create({
@@ -1575,7 +1606,7 @@ sap.ui.define([
1575
1606
  // _processI18n are called 3 times:
1576
1607
  // 1. for the oComponent instance itself
1577
1608
  // 2. for the sap.ui.test.inherit ComponentMetadata
1578
- // 3. for the inheriting parent sap.ui.test.inherit.parent ComponentMetadata
1609
+ // 3. for the inheriting parent sap.ui.test.inherit.parent ComponentMetadata (component.json based)
1579
1610
  assert.equal(oProcessI18nSpy.callCount, 3, "_processI18n is called for the expected times");
1580
1611
 
1581
1612
  var iSyncCall = oProcessI18nSpy.getCalls().reduce(function(acc, oCall) {
@@ -1589,6 +1620,32 @@ sap.ui.define([
1589
1620
  });
1590
1621
  });
1591
1622
 
1623
+ QUnit.test("Check the loading of i18n of a component and its inheriting parent", function(assert) {
1624
+ var oProcessI18nSpy = this.spy(Manifest.prototype, "_processI18n");
1625
+
1626
+ return Component.create({
1627
+ name: "sap.ui.test.inheritAsync"
1628
+ }).then(function(oComponent) {
1629
+ assert.ok(oComponent, "Component instance is created");
1630
+
1631
+ // _processI18n are called 4 times:
1632
+ // 1. for the oComponent instance itself
1633
+ // 2. for the sap.ui.test.inheritAsync ComponentMetadata
1634
+ // 3. for the inheriting parent sap.ui.test.inheritAsync.parentB ComponentMetadata
1635
+ // 4. for the inheriting parent sap.ui.test.inheritAsync.parentA ComponentMetadata
1636
+ assert.equal(oProcessI18nSpy.callCount, 4, "_processI18n is called for the expected times");
1637
+
1638
+ var iSyncCall = oProcessI18nSpy.getCalls().reduce(function(acc, oCall) {
1639
+ if (oCall.args.length === 0 || !oCall.args[0]) {
1640
+ acc++;
1641
+ }
1642
+ return acc;
1643
+ }, 0);
1644
+
1645
+ assert.equal(iSyncCall, 0, "No sync loading of i18n is done");
1646
+ });
1647
+ });
1648
+
1592
1649
  QUnit.module("Models", {
1593
1650
  beforeEach : function() {
1594
1651
 
@@ -2031,8 +2088,8 @@ sap.ui.define([
2031
2088
  },
2032
2089
  "models": {
2033
2090
  "myModel": {
2034
- "type": "sap.ui.model.odata.ODataModel",
2035
- "uri": "./some/odata/service"
2091
+ "type": "sap.ui.model.odata.v2.ODataModel",
2092
+ "uri": "./some/odata/service/"
2036
2093
  }
2037
2094
  }
2038
2095
  }
@@ -2040,8 +2097,8 @@ sap.ui.define([
2040
2097
 
2041
2098
  Component._fnPreprocessManifest = function(oManifestJSON) {
2042
2099
  // To test if the modification is correctly passed back to the
2043
- // Component's manifest processing, we just change the class of a given model v1 -> v2
2044
- oManifestJSON["sap.ui5"]["models"]["myModel"].type = "sap.ui.model.odata.v2.ODataModel";
2100
+ // Component's manifest processing, we just change the class of a given model v2 -> v4
2101
+ oManifestJSON["sap.ui5"]["models"]["myModel"].type = "sap.ui.model.odata.v4.ODataModel";
2045
2102
 
2046
2103
  return Promise.resolve(oManifestJSON);
2047
2104
  };
@@ -2052,7 +2109,7 @@ sap.ui.define([
2052
2109
  }).then(function(oComponent) {
2053
2110
  // check if the modification was correctly taken over
2054
2111
  var oModel = oComponent.getModel("myModel");
2055
- assert.ok(oModel.isA("sap.ui.model.odata.v2.ODataModel"), "Manifest was modified to use v2 instead of v1 ODataModel.");
2112
+ assert.ok(oModel.isA("sap.ui.model.odata.v4.ODataModel"), "Manifest was modified to use v4 instead of v2 ODataModel.");
2056
2113
  });
2057
2114
  });
2058
2115
 
@@ -2119,8 +2176,8 @@ sap.ui.define([
2119
2176
  // register hook and modify the manifest
2120
2177
  Component._fnPreprocessManifest = function(oManifestJSON) {
2121
2178
  // To test if the modification is correctly passed back to the
2122
- // Component's manifest processing, we just change the class of a given model v1 -> v2
2123
- oManifestJSON["sap.ui5"]["models"]["sfapi"].type = "sap.ui.model.odata.v2.ODataModel";
2179
+ // Component's manifest processing, we just change the class of a given model v2 -> v4
2180
+ oManifestJSON["sap.ui5"]["models"]["sfapi"].type = "sap.ui.model.odata.v4.ODataModel";
2124
2181
 
2125
2182
  return Promise.resolve(oManifestJSON);
2126
2183
  };
@@ -2131,7 +2188,7 @@ sap.ui.define([
2131
2188
  }).then(function(oComponent) {
2132
2189
  // check if the modification was correctly taken over
2133
2190
  var oModel = oComponent.getModel("sfapi");
2134
- assert.ok(oModel.isA("sap.ui.model.odata.v2.ODataModel"), "Manifest was modified to use v2 instead of v1 ODataModel.");
2191
+ assert.ok(oModel.isA("sap.ui.model.odata.v4.ODataModel"), "Manifest was modified to use v4 instead of v2 ODataModel.");
2135
2192
  });
2136
2193
  });
2137
2194
 
@@ -2178,8 +2235,8 @@ sap.ui.define([
2178
2235
  // register hook and modify the manifest
2179
2236
  Component._fnPreprocessManifest = function(oManifestJSON) {
2180
2237
  // To test if the modification is correctly passed back to the
2181
- // Component's manifest processing, we just change the class of a given model v1 -> v2
2182
- oManifestJSON["sap.ui5"]["models"]["sfapi"].type = "sap.ui.model.odata.v2.ODataModel";
2238
+ // Component's manifest processing, we just change the class of a given model v2 -> v4
2239
+ oManifestJSON["sap.ui5"]["models"]["sfapi"].type = "sap.ui.model.odata.v4.ODataModel";
2183
2240
 
2184
2241
  return Promise.resolve(oManifestJSON);
2185
2242
  };
@@ -2190,7 +2247,7 @@ sap.ui.define([
2190
2247
  }).then(function(oComponent) {
2191
2248
  // check if the modification was correctly taken over
2192
2249
  var oModel = oComponent.getModel("sfapi");
2193
- assert.ok(oModel.isA("sap.ui.model.odata.v2.ODataModel"), "Manifest was modified to use v2 instead of v1 ODataModel.");
2250
+ assert.ok(oModel.isA("sap.ui.model.odata.v4.ODataModel"), "Manifest was modified to use v4 instead of v2 ODataModel.");
2194
2251
  });
2195
2252
  });
2196
2253
 
@@ -2747,4 +2804,19 @@ sap.ui.define([
2747
2804
  }.bind(this));
2748
2805
  });
2749
2806
 
2807
+ QUnit.module("Multiple minUI5Version");
2808
+
2809
+ QUnit.test("Ensure that each major version can only be included once", async function (assert) {
2810
+ assert.expect(1);
2811
+ const oStub = sinon.stub(Supportability, "isDebugModeEnabled").callsFake(() => { return true; });
2812
+ const oLogStub = sinon.stub(Log, "isLoggable").callsFake(() => { return true; });
2813
+
2814
+ await Component.create({
2815
+ name: "testdata.minUI5Version"
2816
+ }).catch((error) => {
2817
+ assert.equal(error.message, "The minimal UI5 versions defined in the manifest must not include multiple versions with the same major version, Component: testdata.minUI5Version.", "Error thrown because manifest contains multiple minUI5Versions with the same major version");
2818
+ oStub.restore();
2819
+ oLogStub.restore();
2820
+ });
2821
+ });
2750
2822
  });
@@ -1,9 +1,10 @@
1
1
  sap.ui.define([
2
+ 'sap/base/future',
2
3
  'sap/base/Log',
3
4
  'sap/ui/core/library',
4
5
  'sap/ui/core/Component',
5
6
  'sap/ui/core/ComponentContainer'
6
- ], function(Log, sapUiCore, Component, ComponentContainer) {
7
+ ], function(future, Log, sapUiCore, Component, ComponentContainer) {
7
8
 
8
9
  "use strict";
9
10
  /*global QUnit, sinon */
@@ -67,7 +68,11 @@ sap.ui.define([
67
68
  oComponentContainer.onBeforeRendering();
68
69
  });
69
70
 
70
- QUnit.test("Create component async - componentFailed (default)", function (assert) {
71
+ /**
72
+ * @deprecated
73
+ */
74
+ QUnit.test("Create component async - componentFailed (default) (future=false)", function (assert) {
75
+ future.active = false;
71
76
  var done = assert.async();
72
77
  var oComponentContainer = new ComponentContainer({
73
78
  name: "samples.components.unkown",
@@ -81,6 +86,7 @@ sap.ui.define([
81
86
  Promise.resolve().then(function() {
82
87
  assert.ok(oLogErrorSpy.calledWith(sinon.match(/Failed to load component for container/)));
83
88
  assert.strictEqual(oLogErrorSpy.callCount, 1, "One error should have been logged");
89
+ future.active = undefined;
84
90
  done();
85
91
  });
86
92
  }.bind(this)
@@ -88,6 +94,24 @@ sap.ui.define([
88
94
  oComponentContainer.onBeforeRendering();
89
95
  });
90
96
 
97
+ QUnit.test("Create component async - componentFailed (default) (future=true)", async function (assert) {
98
+ future.active = true;
99
+ var oComponentContainer = new ComponentContainer({
100
+ name: "samples.components.unkown",
101
+ async: true,
102
+ componentFailed: function(oEvent) {
103
+ var oReason = oEvent.getParameter("reason");
104
+ assert.ok(true, "Was not able to create component, componentFailed fired");
105
+ assert.ok(oReason.message.indexOf("failed to load") === 0, "Error object is passed as reason");
106
+ }
107
+ });
108
+ oComponentContainer.onBeforeRendering();
109
+ await oComponentContainer._oComponentPromise.catch((err) => {
110
+ assert.ok(err.message.includes("failed to load 'samples/components/unkown/Component.js"), "Component creation fails with correct error");
111
+ future.active = undefined;
112
+ });
113
+ });
114
+
91
115
  QUnit.test("Create component async - componentFailed (prevent Default)", function (assert) {
92
116
  var done = assert.async();
93
117
  var oComponentContainer = new ComponentContainer({
@@ -1,4 +1,5 @@
1
1
  sap.ui.define([
2
+ 'sap/base/future',
2
3
  'sap/base/Log',
3
4
  'sap/base/strings/hyphenate',
4
5
  'sap/base/util/Deferred',
@@ -8,7 +9,7 @@ sap.ui.define([
8
9
  'sap/ui/core/ComponentSupport',
9
10
  "sap/ui/core/Element",
10
11
  'sap/ui/core/library'
11
- ], function(Log, hyphenate, Deferred, ObjectPath, UIComponent, ComponentContainer, ComponentSupport, Element, library) {
12
+ ], function(future, Log, hyphenate, Deferred, ObjectPath, UIComponent, ComponentContainer, ComponentSupport, Element, library) {
12
13
 
13
14
  "use strict";
14
15
  /*global QUnit, sinon*/
@@ -72,20 +73,22 @@ sap.ui.define([
72
73
  componentCreated: "myAppController.onComponentCreated",
73
74
  manifest: "true"
74
75
  },
76
+ /**
77
+ * @deprecated As of 1.120, manifest=false is no longer supported
78
+ */
75
79
  "div4": {
76
80
  id: "container4",
77
81
  name: "sap.ui.test.v2empty",
78
82
  settings: {
79
83
  id: "component4"
80
84
  },
81
- /**
82
- * @deprecated As of 1.120, the support for events is deprecated as it relies on global names
83
- */
84
85
  componentCreated: "myAppController.onComponentCreated",
85
86
  manifest: "false"
86
87
  }
87
88
  };
88
89
 
90
+ const iExpectedComponents = Object.keys(mSettings).length;
91
+
89
92
  // convert the settings and create the component container div elements
90
93
  var mContainers = {};
91
94
  Object.keys(mSettings).forEach(function(sId) {
@@ -107,7 +110,7 @@ sap.ui.define([
107
110
 
108
111
  // check the finder
109
112
  var aElements = ComponentSupport._find();
110
- assert.equal(aElements.length, 4, "Found 4 declarative components!");
113
+ assert.equal(aElements.length, iExpectedComponents, `Found ${iExpectedComponents} declarative components!`);
111
114
 
112
115
  for (var i = 0, l = aElements.length; i < l; i++) {
113
116
  var oElement = aElements[i];
@@ -141,16 +144,43 @@ sap.ui.define([
141
144
 
142
145
  });
143
146
 
144
- QUnit.test("Parser with unknown setting", function(assert) {
147
+ /**
148
+ * @deprecated As of 1.120
149
+ */
150
+ QUnit.test("Parser with unknown setting (future:false)", function(assert) {
151
+
152
+ future.active = false;
145
153
 
146
154
  this.spy(Log, "warning");
155
+
147
156
  var oElement = document.createElement("div");
148
157
  oElement.setAttribute("data-unknown", "foo");
158
+
159
+ const expectedMessage =
160
+ "Property or event \"unknown\" does not exist in sap.ui.core.ComponentContainer. It will be ignored";
161
+
149
162
  ComponentSupport._parse(oElement);
150
163
  assert.ok(
151
- Log.warning.calledWithMatch("Property or event \"unknown\" will be ignored as it does not exist in sap.ui.core.ComponentContainer"),
164
+ Log.warning.calledWithMatch(expectedMessage),
152
165
  "should log a warning with the expected message");
153
166
 
167
+ future.active = undefined; // restores configured default
168
+ });
169
+
170
+ QUnit.test("Parser with unknown setting (future:true)", function(assert) {
171
+ future.active = true;
172
+
173
+ var oElement = document.createElement("div");
174
+ oElement.setAttribute("data-unknown", "foo");
175
+
176
+ const expectedMessage =
177
+ "Property or event \"unknown\" does not exist in sap.ui.core.ComponentContainer.";
178
+
179
+ assert.throws(() => {
180
+ ComponentSupport._parse(oElement);
181
+ }, new Error(expectedMessage), "should throw an error with the expected message");
182
+
183
+ future.active = undefined; // restores configured default
154
184
  });
155
185
 
156
186
  /**
@@ -170,11 +200,10 @@ sap.ui.define([
170
200
 
171
201
  const aComponentElements = document.querySelectorAll("[data-sap-ui-component]");
172
202
 
173
- assert.equal(aComponentElements.length, 4, "There should be four declarative elements");
174
- assert.ok(aComponentElements[0].hasAttribute("data-sap-ui-component"), "First element should have the indicator attribute");
175
- assert.ok(aComponentElements[1].hasAttribute("data-sap-ui-component"), "Second element should have the indicator attribute");
176
- assert.ok(aComponentElements[2].hasAttribute("data-sap-ui-component"), "Third element should have the indicator attribute");
177
- assert.ok(aComponentElements[3].hasAttribute("data-sap-ui-component"), "Fourth element should have the indicator attribute");
203
+ assert.equal(aComponentElements.length, iExpectedComponents, `There should be ${iExpectedComponents} declarative elements`);
204
+ aComponentElements.forEach((oElement, idx) => {
205
+ assert.ok(oElement.hasAttribute("data-sap-ui-component"), `Element ${idx + 1} should have the indicator attribute`);
206
+ });
178
207
 
179
208
  const deferred = new Deferred();
180
209
  let iComponentCount = 0;
@@ -183,7 +212,7 @@ sap.ui.define([
183
212
  mSettings.componentCreated = function() {
184
213
  iComponentCount++;
185
214
  // continue the test once all component instances have been created
186
- if (iComponentCount == 4) {
215
+ if (iComponentCount == iExpectedComponents) {
187
216
  deferred.resolve();
188
217
  }
189
218
  };
@@ -194,16 +223,12 @@ sap.ui.define([
194
223
  ComponentSupport.run();
195
224
 
196
225
  // Four ComponentContainers should have been created
197
- sinon.assert.callCount(ComponentContainer.prototype.applySettings, 4);
226
+ sinon.assert.callCount(ComponentContainer.prototype.applySettings, iExpectedComponents);
198
227
 
199
- assert.notOk(aComponentElements[0].hasAttribute("data-sap-ui-component"), "First element should not have the indicator attribute anymore");
200
- assert.ok(aComponentElements[0].parentNode, "First element should still be part of the DOM");
201
- assert.notOk(aComponentElements[1].hasAttribute("data-sap-ui-component"), "Second element should not have the indicator attribute anymore");
202
- assert.ok(aComponentElements[1].parentNode, "Second element should still be part of the DOM");
203
- assert.notOk(aComponentElements[1].hasAttribute("data-sap-ui-component"), "Third element should not have the indicator attribute anymore");
204
- assert.ok(aComponentElements[1].parentNode, "Third element should still be part of the DOM");
205
- assert.notOk(aComponentElements[1].hasAttribute("data-sap-ui-component"), "Fourth element should not have the indicator attribute anymore");
206
- assert.ok(aComponentElements[1].parentNode, "Fourth element should still be part of the DOM");
228
+ aComponentElements.forEach((oElement, idx) => {
229
+ assert.notOk(oElement.hasAttribute("data-sap-ui-component"), `Element ${idx + 1} should not have the indicator attribute anymore`);
230
+ assert.ok(oElement.parentNode, `Element ${idx + 1} should still be part of the DOM`);
231
+ });
207
232
 
208
233
  assert.equal(document.querySelectorAll("[data-sap-ui-component]").length, 0, "There should not be any declarative elements anymore");
209
234
 
@@ -211,51 +236,29 @@ sap.ui.define([
211
236
  ComponentSupport.run();
212
237
 
213
238
  // Still, only four ComponentContainers should have been created
214
- sinon.assert.callCount(ComponentContainer.prototype.applySettings, 4);
239
+ sinon.assert.callCount(ComponentContainer.prototype.applySettings, iExpectedComponents);
215
240
 
216
241
  return deferred.promise.then(function() {
217
242
 
218
- assert.ok(document.getElementById("div1"), "Placeholder DIV for first Component found!");
219
- assert.ok(document.getElementById("div2"), "Placeholder DIV for second Component found!");
220
- assert.ok(document.getElementById("div3"), "Placeholder DIV for third Component found!");
221
- assert.ok(document.getElementById("div4"), "Placeholder DIV for fourth Component found!");
222
- assert.ok(document.getElementById("container1"), "ComponentContainer element for first Component found!");
223
- assert.ok(document.getElementById("container2"), "ComponentContainer element for second Component found!");
224
- assert.ok(document.getElementById("container3"), "ComponentContainer element for third Component found!");
225
- assert.ok(document.getElementById("container4"), "ComponentContainer element for fourth Component found!");
226
-
227
- var oContainer1 = Element.getElementById("container1");
228
- var oContainer2 = Element.getElementById("container2");
229
- var oContainer3 = Element.getElementById("container3");
230
- var oContainer4 = Element.getElementById("container4");
231
- assert.ok(oContainer1 instanceof ComponentContainer, "ComponentContainer for first Component found!");
232
- assert.ok(oContainer2 instanceof ComponentContainer, "ComponentContainer for second Component found!");
233
- assert.ok(oContainer3 instanceof ComponentContainer, "ComponentContainer for third Component found!");
234
- assert.ok(oContainer4 instanceof ComponentContainer, "ComponentContainer for fourth Component found!");
235
-
236
- var oComponent1 = oContainer1.getComponentInstance();
237
- var oComponent2 = oContainer2.getComponentInstance();
238
- var oComponent3 = oContainer3.getComponentInstance();
239
- var oComponent4 = oContainer4.getComponentInstance();
240
- assert.ok(oComponent1 instanceof UIComponent, "UIComponent instance for first Component found!");
241
- assert.ok(oComponent2 instanceof UIComponent, "UIComponent instance for second Component found!");
242
- assert.ok(oComponent3 instanceof UIComponent, "UIComponent instance for third Component found!");
243
- assert.ok(oComponent4 instanceof UIComponent, "UIComponent instance for fourth Component found!");
244
-
245
- assert.equal(oComponent1.getId(), oContainer1.getId() + "-component1", "The id of the first Component is correct!");
246
- assert.equal(oComponent1.getMetadata().getName(), "sap.ui.test.v2empty.Component", "The name of the first Component is correct!");
247
- assert.equal(oComponent2.getId(), oContainer2.getId() + "-component2", "The id of the second Component is correct!");
248
- assert.equal(oComponent2.getMetadata().getName(), "sap.ui.test.v2empty.Component", "The name of the second Component is correct!");
249
- assert.equal(oComponent3.getId(), oContainer3.getId() + "-component3", "The id of the third Component is correct!");
250
- assert.equal(oComponent3.getMetadata().getName(), "sap.ui.test.v2empty.Component", "The name of the third Component is correct!");
251
- assert.equal(oComponent4.getId(), oContainer4.getId() + "-component4", "The id of the fourth Component is correct!");
252
- assert.equal(oComponent4.getMetadata().getName(), "sap.ui.test.v2empty.Component", "The name of the fourth Component is correct!");
243
+ for (let i = 1; i <= iExpectedComponents; i++) {
244
+ assert.ok(document.getElementById(`div${i}`), `Placeholder DIV for Component ${i} found!`);
245
+ assert.ok(document.getElementById(`container${i}`), `ComponentContainer element for Component ${i} found!`);
246
+
247
+ const oContainer = Element.getElementById(`container${i}`);
248
+ assert.ok(oContainer instanceof ComponentContainer, `ComponentContainer for Component ${i} found!`);
249
+
250
+ const oComponent = oContainer.getComponentInstance();
251
+ assert.ok(oComponent instanceof UIComponent, `UIComponent instance for Component ${i} found!`);
252
+
253
+ assert.equal(oComponent.getId(), `${oContainer.getId()}-component${i}`, `The id of Component ${i} is correct!`);
254
+ assert.equal(oComponent.getMetadata().getName(), "sap.ui.test.v2empty.Component", `The name of the Component ${i} is correct!`);
255
+ }
253
256
 
254
257
  // Executing run again afterwards also shouldn't try to create the same containers again
255
258
  ComponentSupport.run();
256
259
 
257
260
  // Still, only four ComponentContainers should have been created
258
- sinon.assert.callCount(ComponentContainer.prototype.applySettings, 4);
261
+ sinon.assert.callCount(ComponentContainer.prototype.applySettings, iExpectedComponents);
259
262
 
260
263
  });
261
264
 
@@ -1,7 +1,8 @@
1
1
  sap.ui.define([
2
+ "sap/base/future",
2
3
  "sap/base/Log",
3
4
  "sap/ui/core/Component"
4
- ], function (Log, Component) {
5
+ ], function (future, Log, Component) {
5
6
  "use strict";
6
7
  /*global QUnit, sinon*/
7
8
 
@@ -602,11 +603,40 @@ sap.ui.define([
602
603
  });
603
604
  });
604
605
 
605
- QUnit.test("'onActivate/onDeactivate' should not return a value", async function(assert) {
606
+ /**
607
+ * @deprecated
608
+ */
609
+ QUnit.test("'onActivate' should not return a value (future=false)", async function(assert) {
610
+ future.active = false;
606
611
  window.aPromises = []; // see testdata.keepAlive.child3.Component.js
607
612
  const oComponent = await Component.create({
608
613
  id: "component",
609
- name: "testdata.keepAlive.child3"
614
+ name: "testdata.keepAlive.child3OnActivateReturns"
615
+ });
616
+
617
+ await fnWaitUntilHomeRouteMatched(oComponent);
618
+ assert.ok(oComponent.isActive(), "Component: Initially, the component is active");
619
+
620
+ const oFatalLogSpy = sinon.spy(Log, "fatal");
621
+ oComponent.deactivate();
622
+ oComponent.activate();
623
+ assert.ok(oComponent.isActive(), "Component: The component is active after activate()");
624
+ assert.ok(oFatalLogSpy.getCall(0).calledWith("[FUTURE FATAL] The registered Event Listener 'onActivate' must not have a return value."), "The 'onActivate' should not return a value.");
625
+
626
+ oFatalLogSpy.restore();
627
+ oComponent.destroy();
628
+ future.active = undefined;
629
+ });
630
+
631
+ /**
632
+ * @deprecated
633
+ */
634
+ QUnit.test("'onDeactivate' should not return a value (future=false)", async function(assert) {
635
+ future.active = false;
636
+ window.aPromises = []; // see testdata.keepAlive.child3.Component.js
637
+ const oComponent = await Component.create({
638
+ id: "component",
639
+ name: "testdata.keepAlive.child3OnDeactivateReturns"
610
640
  });
611
641
 
612
642
  await fnWaitUntilHomeRouteMatched(oComponent);
@@ -623,10 +653,6 @@ sap.ui.define([
623
653
  assert.notOk(oComponent.isActive(), "Component: The component is not active after deactivate()");
624
654
  assert.ok(oFatalLogSpy.getCall(0).calledWith("[FUTURE FATAL] The registered Event Listener 'onDeactivate' must not have a return value."), "The 'onDeactivate' should not return a value.");
625
655
 
626
- oComponent.activate();
627
- assert.ok(oComponent.isActive(), "Component: The component is active after activate()");
628
- assert.ok(oFatalLogSpy.getCall(1).calledWith("[FUTURE FATAL] The registered Event Listener 'onActivate' must not have a return value."), "The 'onActivate' should not return a value.");
629
-
630
656
  /**
631
657
  * @deprecated
632
658
  */
@@ -636,5 +662,47 @@ sap.ui.define([
636
662
  });
637
663
 
638
664
  oFatalLogSpy.restore();
665
+ oComponent.destroy();
666
+ future.active = undefined;
639
667
  });
668
+
669
+ QUnit.test("'onActivate' should not return a value (future=true)", async function(assert) {
670
+ future.active = true;
671
+ const oComponent = await Component.create({
672
+ id: "component",
673
+ name: "testdata.keepAlive.child3OnActivateReturns"
674
+ });
675
+
676
+ await fnWaitUntilHomeRouteMatched(oComponent);
677
+ assert.ok(oComponent.isActive(), "Component: Initially, the component is active");
678
+
679
+ oComponent.deactivate();
680
+ assert.throws(() => oComponent.activate(),
681
+ new Error("The registered Event Listener 'onActivate' must not have a return value."),
682
+ "The 'onActivate' should not return a value."
683
+ );
684
+
685
+ oComponent.destroy();
686
+ future.active = undefined;
687
+ });
688
+
689
+ QUnit.test("'onDeactivate' should not return a value (future=true)", async function(assert) {
690
+ future.active = true;
691
+ const oComponent = await Component.create({
692
+ id: "component",
693
+ name: "testdata.keepAlive.child3OnDeactivateReturns"
694
+ });
695
+
696
+ await fnWaitUntilHomeRouteMatched(oComponent);
697
+ assert.ok(oComponent.isActive(), "Component: Initially, the component is active");
698
+
699
+ assert.throws(() => oComponent.deactivate(),
700
+ new Error("The registered Event Listener 'onDeactivate' must not have a return value."),
701
+ "The 'onDeactivate' should not return a value."
702
+ );
703
+
704
+ oComponent.destroy();
705
+ future.active = undefined;
706
+ });
707
+
640
708
  });