@openui5/sap.ui.core 1.120.1 → 1.120.2

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 (476) hide show
  1. package/.reuse/dep5 +1 -1
  2. package/THIRDPARTY.txt +1 -1
  3. package/package.json +1 -1
  4. package/src/jquery.sap.global.js +1 -1
  5. package/src/jquery.sap.properties.js +1 -1
  6. package/src/jquery.sap.resources.js +1 -1
  7. package/src/jquery.sap.script.js +1 -1
  8. package/src/jquery.sap.storage.js +3 -3
  9. package/src/sap/base/Event.js +1 -1
  10. package/src/sap/base/Eventing.js +1 -1
  11. package/src/sap/base/config.js +1 -1
  12. package/src/sap/base/i18n/LanguageTag.js +1 -1
  13. package/src/sap/base/i18n/date/TimezoneUtils.js +1 -1
  14. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  15. package/src/sap/base/util/restricted/_castArray.js +1 -1
  16. package/src/sap/base/util/restricted/_compact.js +1 -1
  17. package/src/sap/base/util/restricted/_curry.js +1 -1
  18. package/src/sap/base/util/restricted/_debounce.js +1 -1
  19. package/src/sap/base/util/restricted/_difference.js +1 -1
  20. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  21. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  22. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  23. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  24. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  25. package/src/sap/base/util/restricted/_flatten.js +1 -1
  26. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  27. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  28. package/src/sap/base/util/restricted/_intersection.js +1 -1
  29. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  30. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  31. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  32. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  33. package/src/sap/base/util/restricted/_isNil.js +1 -1
  34. package/src/sap/base/util/restricted/_max.js +1 -1
  35. package/src/sap/base/util/restricted/_merge.js +1 -1
  36. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  37. package/src/sap/base/util/restricted/_min.js +1 -1
  38. package/src/sap/base/util/restricted/_omit.js +1 -1
  39. package/src/sap/base/util/restricted/_pick.js +1 -1
  40. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  41. package/src/sap/base/util/restricted/_throttle.js +1 -1
  42. package/src/sap/base/util/restricted/_toArray.js +1 -1
  43. package/src/sap/base/util/restricted/_union.js +1 -1
  44. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  45. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  46. package/src/sap/base/util/restricted/_uniq.js +1 -1
  47. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  48. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  49. package/src/sap/base/util/restricted/_without.js +1 -1
  50. package/src/sap/base/util/restricted/_xor.js +1 -1
  51. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  52. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  53. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  54. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  55. package/src/sap/ui/Device.js +3 -3
  56. package/src/sap/ui/Global.js +4 -4
  57. package/src/sap/ui/base/BindingParser.js +4 -4
  58. package/src/sap/ui/base/DataType.js +5 -5
  59. package/src/sap/ui/base/Event.js +1 -1
  60. package/src/sap/ui/base/EventProvider.js +1 -1
  61. package/src/sap/ui/base/Interface.js +1 -1
  62. package/src/sap/ui/base/ManagedObject.js +9 -9
  63. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  64. package/src/sap/ui/base/ManagedObjectRegistry.js +186 -169
  65. package/src/sap/ui/base/Metadata.js +1 -1
  66. package/src/sap/ui/base/Object.js +1 -1
  67. package/src/sap/ui/base/ObjectPool.js +1 -1
  68. package/src/sap/ui/core/.library +3 -3
  69. package/src/sap/ui/core/BusyIndicator.js +1 -1
  70. package/src/sap/ui/core/Component.js +30 -144
  71. package/src/sap/ui/core/ComponentContainer.js +3 -3
  72. package/src/sap/ui/core/ComponentMetadata.js +1 -1
  73. package/src/sap/ui/core/ComponentRegistry.js +153 -0
  74. package/src/sap/ui/core/ComponentSupport.js +3 -3
  75. package/src/sap/ui/core/Configuration.js +1 -1
  76. package/src/sap/ui/core/Control.js +6 -4
  77. package/src/sap/ui/core/Core.js +6 -4
  78. package/src/sap/ui/core/CustomData.js +1 -1
  79. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  80. package/src/sap/ui/core/Element.js +25 -141
  81. package/src/sap/ui/core/ElementMetadata.js +1 -1
  82. package/src/sap/ui/core/ElementRegistry.js +159 -0
  83. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  84. package/src/sap/ui/core/EventBus.js +1 -1
  85. package/src/sap/ui/core/ExtensionPoint.js +5 -5
  86. package/src/sap/ui/core/FocusHandler.js +3 -2
  87. package/src/sap/ui/core/Fragment.js +5 -5
  88. package/src/sap/ui/core/HTML.js +1 -1
  89. package/src/sap/ui/core/History.js +1 -1
  90. package/src/sap/ui/core/Icon.js +1 -1
  91. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  92. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  93. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  94. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  95. package/src/sap/ui/core/InvisibleText.js +1 -1
  96. package/src/sap/ui/core/Item.js +1 -1
  97. package/src/sap/ui/core/LabelEnablement.js +1 -1
  98. package/src/sap/ui/core/LayoutData.js +1 -1
  99. package/src/sap/ui/core/Lib.js +7 -7
  100. package/src/sap/ui/core/ListItem.js +1 -1
  101. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  102. package/src/sap/ui/core/Locale.js +1 -1
  103. package/src/sap/ui/core/LocaleData.js +55 -11
  104. package/src/sap/ui/core/Manifest.js +4 -5
  105. package/src/sap/ui/core/Message.js +2 -1
  106. package/src/sap/ui/core/Messaging.js +2 -2
  107. package/src/sap/ui/core/RenderManager.js +1 -1
  108. package/src/sap/ui/core/Renderer.js +1 -1
  109. package/src/sap/ui/core/ResizeHandler.js +1 -1
  110. package/src/sap/ui/core/ScrollBar.js +1 -1
  111. package/src/sap/ui/core/SeparatorItem.js +1 -1
  112. package/src/sap/ui/core/Shortcut.js +15 -9
  113. package/src/sap/ui/core/StaticArea.js +4 -1
  114. package/src/sap/ui/core/Theming.js +3 -3
  115. package/src/sap/ui/core/Title.js +1 -1
  116. package/src/sap/ui/core/TooltipBase.js +1 -1
  117. package/src/sap/ui/core/UIArea.js +51 -13
  118. package/src/sap/ui/core/UIAreaRegistry.js +150 -0
  119. package/src/sap/ui/core/UIComponent.js +3 -3
  120. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  121. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  122. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  123. package/src/sap/ui/core/XMLComposite.js +1 -1
  124. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  125. package/src/sap/ui/core/XMLTemplateProcessor.js +95 -76
  126. package/src/sap/ui/core/cldr/Unicode-Data-Files-LICENSE.txt +1 -1
  127. package/src/sap/ui/core/cldr/cy.json +12 -3
  128. package/src/sap/ui/core/cldr/en_AU.json +48 -12
  129. package/src/sap/ui/core/cldr/en_GB.json +24 -6
  130. package/src/sap/ui/core/cldr/en_HK.json +24 -6
  131. package/src/sap/ui/core/cldr/en_IE.json +24 -6
  132. package/src/sap/ui/core/cldr/en_IN.json +24 -6
  133. package/src/sap/ui/core/cldr/en_NZ.json +24 -6
  134. package/src/sap/ui/core/cldr/en_PG.json +24 -6
  135. package/src/sap/ui/core/cldr/en_SG.json +24 -6
  136. package/src/sap/ui/core/cldr/en_ZA.json +24 -6
  137. package/src/sap/ui/core/cldr/es.json +288 -72
  138. package/src/sap/ui/core/cldr/es_AR.json +288 -72
  139. package/src/sap/ui/core/cldr/es_BO.json +288 -72
  140. package/src/sap/ui/core/cldr/es_CL.json +144 -36
  141. package/src/sap/ui/core/cldr/es_CO.json +144 -36
  142. package/src/sap/ui/core/cldr/es_MX.json +288 -72
  143. package/src/sap/ui/core/cldr/fa.json +48 -12
  144. package/src/sap/ui/core/cldr/id.json +56 -14
  145. package/src/sap/ui/core/cldr/kk.json +184 -46
  146. package/src/sap/ui/core/cldr/ms.json +56 -14
  147. package/src/sap/ui/core/cldr/nb.json +36 -9
  148. package/src/sap/ui/core/cldr/nl.json +264 -66
  149. package/src/sap/ui/core/cldr/nl_BE.json +264 -66
  150. package/src/sap/ui/core/cldr/pt.json +288 -72
  151. package/src/sap/ui/core/cldr/pt_PT.json +288 -72
  152. package/src/sap/ui/core/cldr/sr.json +96 -24
  153. package/src/sap/ui/core/cldr/sr_Latn.json +72 -18
  154. package/src/sap/ui/core/date/UI5Date.js +1 -1
  155. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  156. package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
  157. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  158. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  159. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  160. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  161. package/src/sap/ui/core/format/DateFormat.js +25 -13
  162. package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
  163. package/src/sap/ui/core/getCompatibilityVersion.js +1 -1
  164. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  165. package/src/sap/ui/core/library.js +9 -3
  166. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  167. package/src/sap/ui/core/message/Message.js +7 -7
  168. package/src/sap/ui/core/message/MessageManager.js +1 -1
  169. package/src/sap/ui/core/message/MessageParser.js +1 -1
  170. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  171. package/src/sap/ui/core/message/MessageType.js +1 -1
  172. package/src/sap/ui/core/mvc/Controller.js +15 -13
  173. package/src/sap/ui/core/mvc/ControllerExtension.js +7 -5
  174. package/src/sap/ui/core/mvc/ControllerExtensionProvider.js +1 -1
  175. package/src/sap/ui/core/mvc/ControllerMetadata.js +1 -1
  176. package/src/sap/ui/core/mvc/EventHandlerResolver.js +4 -4
  177. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  178. package/src/sap/ui/core/mvc/JSONView.js +1 -1
  179. package/src/sap/ui/core/mvc/JSView.js +1 -1
  180. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  181. package/src/sap/ui/core/mvc/View.js +20 -9
  182. package/src/sap/ui/core/mvc/XMLView.js +8 -2
  183. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  184. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  185. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  186. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  187. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  188. package/src/sap/ui/core/routing/History.js +1 -1
  189. package/src/sap/ui/core/routing/Route.js +6 -6
  190. package/src/sap/ui/core/routing/Router.js +6 -6
  191. package/src/sap/ui/core/routing/Targets.js +3 -3
  192. package/src/sap/ui/core/routing/async/Target.js +2 -2
  193. package/src/sap/ui/core/routing/async/Targets.js +1 -1
  194. package/src/sap/ui/core/rules/Misc.support.js +3 -3
  195. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  196. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  197. package/src/sap/ui/core/service/Service.js +1 -1
  198. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  199. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  200. package/src/sap/ui/core/support/Plugin.js +1 -1
  201. package/src/sap/ui/core/support/Support.js +1 -1
  202. package/src/sap/ui/core/support/plugins/ControlTree.js +6 -4
  203. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  204. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  205. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  206. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  207. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  208. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  209. package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
  210. package/src/sap/ui/core/theming/Parameters.js +7 -7
  211. package/src/sap/ui/core/theming/ThemeHelper.js +2 -2
  212. package/src/sap/ui/core/theming/ThemeManager.js +2 -2
  213. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  214. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  215. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  216. package/src/sap/ui/core/tmpl/Template.js +1 -1
  217. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  218. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  219. package/src/sap/ui/core/util/Export.js +1 -1
  220. package/src/sap/ui/core/util/ExportCell.js +1 -1
  221. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  222. package/src/sap/ui/core/util/ExportRow.js +1 -1
  223. package/src/sap/ui/core/util/ExportType.js +1 -1
  224. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  225. package/src/sap/ui/core/util/File.js +1 -1
  226. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  227. package/src/sap/ui/core/util/MockServer.js +34 -3
  228. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  229. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  230. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  231. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  232. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  233. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  234. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  235. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  236. package/src/sap/ui/core/webc/WebComponent.js +1 -1
  237. package/src/sap/ui/core/webc/WebComponentMetadata.js +1 -1
  238. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  239. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  240. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  241. package/src/sap/ui/debug/ControlTree.js +1 -1
  242. package/src/sap/ui/debug/DebugEnv.js +1 -1
  243. package/src/sap/ui/debug/PropertyList.js +1 -1
  244. package/src/sap/ui/model/Binding.js +2 -2
  245. package/src/sap/ui/model/ClientModel.js +1 -1
  246. package/src/sap/ui/model/CompositeDataState.js +5 -5
  247. package/src/sap/ui/model/CompositeType.js +1 -1
  248. package/src/sap/ui/model/DataState.js +10 -10
  249. package/src/sap/ui/model/FilterProcessor.js +8 -5
  250. package/src/sap/ui/model/ManagedObjectBindingSupport.js +2 -2
  251. package/src/sap/ui/model/MetaModel.js +1 -1
  252. package/src/sap/ui/model/Model.js +1 -1
  253. package/src/sap/ui/model/SelectionModel.js +1 -1
  254. package/src/sap/ui/model/SimpleType.js +1 -1
  255. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  256. package/src/sap/ui/model/Type.js +1 -1
  257. package/src/sap/ui/model/analytics/odata4analytics.js +6 -6
  258. package/src/sap/ui/model/json/JSONModel.js +1 -1
  259. package/src/sap/ui/model/message/MessageModel.js +1 -1
  260. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  261. package/src/sap/ui/model/odata/ODataMessageParser.js +3 -3
  262. package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
  263. package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
  264. package/src/sap/ui/model/odata/ODataModel.js +1 -1
  265. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  266. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  267. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  268. package/src/sap/ui/model/odata/type/Date.js +1 -1
  269. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  270. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  271. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  272. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  273. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  274. package/src/sap/ui/model/odata/type/Double.js +1 -1
  275. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  276. package/src/sap/ui/model/odata/type/Int.js +1 -1
  277. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  278. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  279. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  280. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  281. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  282. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  283. package/src/sap/ui/model/odata/type/Single.js +1 -1
  284. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  285. package/src/sap/ui/model/odata/type/String.js +1 -1
  286. package/src/sap/ui/model/odata/type/Time.js +1 -1
  287. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  288. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  289. package/src/sap/ui/model/odata/v2/Context.js +1 -1
  290. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  291. package/src/sap/ui/model/odata/v2/ODataModel.js +4 -4
  292. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
  293. package/src/sap/ui/model/odata/v4/Context.js +32 -27
  294. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +1 -1
  295. package/src/sap/ui/model/odata/v4/ODataListBinding.js +198 -155
  296. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +1 -1
  297. package/src/sap/ui/model/odata/v4/ODataModel.js +9 -4
  298. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +9 -6
  299. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +1 -1
  300. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +220 -85
  301. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +33 -20
  302. package/src/sap/ui/model/odata/v4/lib/_Cache.js +70 -18
  303. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +9 -5
  304. package/src/sap/ui/model/resource/ResourceModel.js +1 -1
  305. package/src/sap/ui/model/type/Boolean.js +1 -1
  306. package/src/sap/ui/model/type/Currency.js +1 -1
  307. package/src/sap/ui/model/type/Date.js +1 -1
  308. package/src/sap/ui/model/type/DateInterval.js +1 -1
  309. package/src/sap/ui/model/type/DateTime.js +1 -1
  310. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  311. package/src/sap/ui/model/type/FileSize.js +1 -1
  312. package/src/sap/ui/model/type/Float.js +1 -1
  313. package/src/sap/ui/model/type/Integer.js +1 -1
  314. package/src/sap/ui/model/type/String.js +1 -1
  315. package/src/sap/ui/model/type/Time.js +1 -1
  316. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  317. package/src/sap/ui/model/type/Unit.js +1 -1
  318. package/src/sap/ui/model/xml/XMLModel.js +1 -1
  319. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  320. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +5 -5
  321. package/src/sap/ui/test/BranchTracking.js +4 -0
  322. package/src/sap/ui/test/actions/EnterText.js +1 -5
  323. package/src/sap/ui/test/generic/GenericTestCollection.js +1 -0
  324. package/src/sap/ui/test/generic/TestBase.js +4 -4
  325. package/src/sap/ui/test/generic/Utils.js +3 -2
  326. package/src/sap/ui/util/Storage.js +1 -1
  327. package/src/ui5loader-autoconfig.js +23 -15
  328. package/src/ui5loader.js +9 -4
  329. package/test/sap/ui/core/demokit/sample/MessageManager/ODataBackendMessagesComp/ui5.yaml +1 -1
  330. package/test/sap/ui/core/demokit/sample/ViewTemplate/types/Template.controller.js +3 -3
  331. package/test/sap/ui/core/demokit/sample/common/Controller.js +0 -1
  332. package/test/sap/ui/core/demokit/sample/matcher/BindingPath/ui5.yaml +1 -1
  333. package/test/sap/ui/core/demokit/sample/matcher/Descendant/ui5.yaml +1 -1
  334. package/test/sap/ui/core/demokit/sample/matcher/I18NText/ui5.yaml +1 -1
  335. package/test/sap/ui/core/demokit/sample/matcher/LabelFor/ui5.yaml +1 -1
  336. package/test/sap/ui/core/demokit/sample/odata/v4/Ancestry/Main.controller.js +1 -1
  337. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.controller.js +14 -1
  338. package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.view.xml +6 -0
  339. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/MIT.MultipleInlineCreationRowsGrid.html +5 -0
  340. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Main.view.xml +9 -2
  341. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Opa.qunit.js +23 -0
  342. package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/pages/Main.js +58 -1
  343. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.controller.js +75 -30
  344. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.view.xml +19 -1
  345. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/SandboxModel.js +84 -28
  346. package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/data/metadata.xml +3 -3
  347. package/test/sap/ui/core/demokit/tutorial/databinding/01/ui5.yaml +1 -1
  348. package/test/sap/ui/core/demokit/tutorial/databinding/02/ui5.yaml +1 -1
  349. package/test/sap/ui/core/demokit/tutorial/databinding/03/ui5.yaml +1 -1
  350. package/test/sap/ui/core/demokit/tutorial/databinding/04/ui5.yaml +1 -1
  351. package/test/sap/ui/core/demokit/tutorial/databinding/05/ui5.yaml +1 -1
  352. package/test/sap/ui/core/demokit/tutorial/databinding/06/ui5.yaml +1 -1
  353. package/test/sap/ui/core/demokit/tutorial/databinding/07/ui5.yaml +1 -1
  354. package/test/sap/ui/core/demokit/tutorial/databinding/08/ui5.yaml +1 -1
  355. package/test/sap/ui/core/demokit/tutorial/databinding/09/ui5.yaml +1 -1
  356. package/test/sap/ui/core/demokit/tutorial/databinding/10/ui5.yaml +1 -1
  357. package/test/sap/ui/core/demokit/tutorial/databinding/11/ui5.yaml +1 -1
  358. package/test/sap/ui/core/demokit/tutorial/databinding/12/ui5.yaml +1 -1
  359. package/test/sap/ui/core/demokit/tutorial/databinding/13/ui5.yaml +1 -1
  360. package/test/sap/ui/core/demokit/tutorial/databinding/14/ui5.yaml +1 -1
  361. package/test/sap/ui/core/demokit/tutorial/databinding/15/ui5.yaml +1 -1
  362. package/test/sap/ui/core/demokit/tutorial/mockserver/01/ui5.yaml +1 -1
  363. package/test/sap/ui/core/demokit/tutorial/mockserver/02/ui5.yaml +1 -1
  364. package/test/sap/ui/core/demokit/tutorial/mockserver/03/ui5.yaml +1 -1
  365. package/test/sap/ui/core/demokit/tutorial/mockserver/04/ui5.yaml +1 -1
  366. package/test/sap/ui/core/demokit/tutorial/navigation/01/ui5.yaml +1 -1
  367. package/test/sap/ui/core/demokit/tutorial/navigation/02/ui5.yaml +1 -1
  368. package/test/sap/ui/core/demokit/tutorial/navigation/03/ui5.yaml +1 -1
  369. package/test/sap/ui/core/demokit/tutorial/navigation/04/ui5.yaml +1 -1
  370. package/test/sap/ui/core/demokit/tutorial/navigation/05/ui5.yaml +1 -1
  371. package/test/sap/ui/core/demokit/tutorial/navigation/06/ui5.yaml +1 -1
  372. package/test/sap/ui/core/demokit/tutorial/navigation/07/ui5.yaml +1 -1
  373. package/test/sap/ui/core/demokit/tutorial/navigation/08/ui5.yaml +1 -1
  374. package/test/sap/ui/core/demokit/tutorial/navigation/09/ui5.yaml +1 -1
  375. package/test/sap/ui/core/demokit/tutorial/navigation/10/ui5.yaml +1 -1
  376. package/test/sap/ui/core/demokit/tutorial/navigation/11/ui5.yaml +1 -1
  377. package/test/sap/ui/core/demokit/tutorial/navigation/12/ui5.yaml +1 -1
  378. package/test/sap/ui/core/demokit/tutorial/navigation/13/ui5.yaml +1 -1
  379. package/test/sap/ui/core/demokit/tutorial/navigation/14/ui5.yaml +1 -1
  380. package/test/sap/ui/core/demokit/tutorial/navigation/15/ui5.yaml +1 -1
  381. package/test/sap/ui/core/demokit/tutorial/navigation/16/ui5.yaml +1 -1
  382. package/test/sap/ui/core/demokit/tutorial/navigation/17/ui5.yaml +1 -1
  383. package/test/sap/ui/core/demokit/tutorial/odatav4/01/ui5.yaml +1 -1
  384. package/test/sap/ui/core/demokit/tutorial/odatav4/02/ui5.yaml +1 -1
  385. package/test/sap/ui/core/demokit/tutorial/odatav4/03/ui5.yaml +1 -1
  386. package/test/sap/ui/core/demokit/tutorial/odatav4/04/ui5.yaml +1 -1
  387. package/test/sap/ui/core/demokit/tutorial/odatav4/05/ui5.yaml +1 -1
  388. package/test/sap/ui/core/demokit/tutorial/odatav4/06/ui5.yaml +1 -1
  389. package/test/sap/ui/core/demokit/tutorial/odatav4/07/ui5.yaml +1 -1
  390. package/test/sap/ui/core/demokit/tutorial/odatav4/08/ui5.yaml +1 -1
  391. package/test/sap/ui/core/demokit/tutorial/odatav4/09/ui5.yaml +1 -1
  392. package/test/sap/ui/core/demokit/tutorial/odatav4/10/ui5.yaml +1 -1
  393. package/test/sap/ui/core/demokit/tutorial/odatav4/11/ui5.yaml +1 -1
  394. package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/ui5.yaml +1 -1
  395. package/test/sap/ui/core/qunit/BindingParser.qunit.js +4 -4
  396. package/test/sap/ui/core/qunit/CommandExecution.qunit.js +3 -1
  397. package/test/sap/ui/core/qunit/Core.qunit.js +1 -1
  398. package/test/sap/ui/core/qunit/DataBinding.qunit.js +6 -6
  399. package/test/sap/ui/core/qunit/Declarative.qunit.js +6 -6
  400. package/test/sap/ui/core/qunit/Element_base.qunit.js +8 -7
  401. package/test/sap/ui/core/qunit/Element_base_legacyAPIs.qunit.js +48 -0
  402. package/test/sap/ui/core/qunit/Element_closestTo.qunit.js +1 -1
  403. package/test/sap/ui/core/qunit/Fragment.qunit.js +63 -13
  404. package/test/sap/ui/core/qunit/HTML.qunit.js +5 -5
  405. package/test/sap/ui/core/qunit/Lib.qunit.js +19 -2
  406. package/test/sap/ui/core/qunit/PlaceAt.qunit.js +6 -6
  407. package/test/sap/ui/core/qunit/Shortcut.qunit.js +9 -1
  408. package/test/sap/ui/core/qunit/UIArea.qunit.js +7 -6
  409. package/test/sap/ui/core/qunit/analytics/odata4analytics.qunit.js +41 -0
  410. package/test/sap/ui/core/qunit/base/Config_cascade.qunit.html +7 -5
  411. package/test/sap/ui/core/qunit/base/Config_cascade.qunit.js +46 -7
  412. package/test/sap/ui/core/qunit/base/config/GlobalConfigForCascade.js +24 -21
  413. package/test/sap/ui/core/qunit/component/Component.qunit.js +9 -8
  414. package/test/sap/ui/core/qunit/component/ComponentContainer.qunit.js +1 -1
  415. package/test/sap/ui/core/qunit/component/Models.qunit.js +29 -30
  416. package/test/sap/ui/core/qunit/component/UIComponent.qunit.js +3 -3
  417. package/test/sap/ui/core/qunit/generic/ControlMemoryLeaks.qunit.js +4 -3
  418. package/test/sap/ui/core/qunit/generic/legacy/ControlMemoryLeaks.qunit.js +6 -7
  419. package/test/sap/ui/core/qunit/generic/legacy/DuplicateIdCheck.qunit.js +3 -2
  420. package/test/sap/ui/core/qunit/generic/legacy/testsuite.generic.qunit.js +3 -0
  421. package/test/sap/ui/core/qunit/i18n/LocaleData.qunit.js +65 -0
  422. package/test/sap/ui/core/qunit/jquery.sap.ui.qunit.js +12 -12
  423. package/test/sap/ui/core/qunit/loader/syncMode_unavoidablySync.qunit.js +54 -1
  424. package/test/sap/ui/core/qunit/messages/messagesGeneral.qunit.js +3 -1
  425. package/test/sap/ui/core/qunit/mockserver/testdata/shopping/Products.json +1 -1
  426. package/test/sap/ui/core/qunit/model/FilterProcessor.qunit.js +22 -8
  427. package/test/sap/ui/core/qunit/mvc/AnyView.qunit.js +3 -0
  428. package/test/sap/ui/core/qunit/mvc/Controller.qunit.js +3 -2
  429. package/test/sap/ui/core/qunit/mvc/EventHandlerResolver.qunit.js +2 -2
  430. package/test/sap/ui/core/qunit/mvc/View.qunit.js +38 -35
  431. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessor.qunit.js +1 -1
  432. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorAsync.qunit.js +1 -1
  433. package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorRequireXML.qunit.js +5 -5
  434. package/test/sap/ui/core/qunit/mvc/XMLView.qunit.js +1 -1
  435. package/test/sap/ui/core/qunit/mvc/extensions/ControllerMetadata.qunit.js +6 -2
  436. package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions.qunit.js +12 -0
  437. package/test/sap/ui/core/qunit/mvc/extensions/Controllerextensions_legacy.qunit.js +12 -0
  438. package/test/sap/ui/core/qunit/mvc/extensions/testdata/AnotherMain.controller.js +3 -1
  439. package/test/sap/ui/core/qunit/mvc/testdata/XMLViewEmbeddingTypedViews.view.xml +1 -1
  440. package/test/sap/ui/core/qunit/mvc/viewprocessing/ViewProcessing.qunit.js +26 -7
  441. package/test/sap/ui/core/qunit/mvc_legacyAPIs/XMLTemplateProcessorRequireXML_legacyAPIs.qunit.js +5 -5
  442. package/test/sap/ui/core/qunit/mvc_legacyAPIs/XMLView_legacyAPIs.qunit.js +2 -2
  443. package/test/sap/ui/core/qunit/odata/ODataMessageParserNoFakeService.qunit.js +36 -34
  444. package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +69 -0
  445. package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +43 -22
  446. package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +318 -217
  447. package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +2111 -124
  448. package/test/sap/ui/core/qunit/odata/v4/ODataParentBinding.qunit.js +43 -35
  449. package/test/sap/ui/core/qunit/odata/v4/data/metadata_special_cases.xml +20 -2
  450. package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +453 -125
  451. package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationHelper.qunit.js +70 -33
  452. package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +256 -8
  453. package/test/sap/ui/core/qunit/odata/v4/lib/_Requestor.qunit.js +10 -2
  454. package/test/sap/ui/core/qunit/opa/actions/EnterText.qunit.js +38 -14
  455. package/test/sap/ui/core/qunit/routing/async/Router.qunit.js +102 -52
  456. package/test/sap/ui/core/qunit/routing/async/Target.qunit.js +1 -1
  457. package/test/sap/ui/core/qunit/routing/async/Targets.qunit.js +4 -5
  458. package/test/sap/ui/core/qunit/routing/async/TitleHistory.qunit.js +1 -1
  459. package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/Child/Component.js +1 -0
  460. package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/Child/manifest.json +1 -5
  461. package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/Parent/Component.js +1 -0
  462. package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/Parent/manifest.json +1 -5
  463. package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/ParentExtended/Component.js +15 -0
  464. package/test/sap/ui/core/qunit/routing/fixture/router/component/parentRoute/ParentExtended/manifest.json +8 -0
  465. package/test/sap/ui/core/qunit/routing/sync/Router.qunit.js +2 -2
  466. package/test/sap/ui/core/qunit/routing/sync/Targets.qunit.js +2 -3
  467. package/test/sap/ui/core/qunit/testdata/fragments/XMLTestFragmentWithXMLView.fragment.xml +5 -0
  468. package/test/sap/ui/core/qunit/testsuites/testsuite.base.configuration.qunit.js +1 -1
  469. package/test/sap/ui/core/qunit/testsuites/testsuite.control.framework.qunit.js +4 -0
  470. package/test/sap/ui/core/qunit/types/DateFormat.qunit.js +190 -0
  471. package/test/sap/ui/core/qunit/types/DateInterval.qunit.js +2 -2
  472. package/test/sap/ui/core/qunit/ui5classes/ManagedObjectRegistry.qunit.js +161 -0
  473. package/test/sap/ui/core/qunit/ui5classes/ManagedObjectRegistry_legacyAPIs.qunit.js +150 -0
  474. package/test/sap/ui/core/qunit/ui5classes/testsuite.ui5classes.qunit.js +84 -0
  475. package/test/sap/ui/core/qunit/util/ViewSerializer.qunit.js +4 -3
  476. package/test/sap/ui/core/relnotes/changes-1.120.json +225 -0
@@ -140,7 +140,7 @@ sap.ui.define(['../base/ManagedObject', "sap/base/assert"],
140
140
  * @see sap.ui.core.LabelEnablement#enrich
141
141
  *
142
142
  * @author SAP SE
143
- * @version 1.120.1
143
+ * @version 1.120.2
144
144
  * @protected
145
145
  * @alias sap.ui.core.LabelEnablement
146
146
  * @namespace
@@ -23,7 +23,7 @@ sap.ui.define(['./Element', "sap/ui/thirdparty/jquery", './library'],
23
23
  * @extends sap.ui.core.Element
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.120.1
26
+ * @version 1.120.2
27
27
  *
28
28
  * @public
29
29
  * @alias sap.ui.core.LayoutData
@@ -411,7 +411,7 @@ sap.ui.define([
411
411
  vValueToSet = vValue;
412
412
  } else if ( sKey != "name" ) {
413
413
  // ignore other values (silently ignore "name")
414
- Log.warning("library info setting ignored: " + sKey + "=" + vValue);
414
+ Log.warning("[FUTURE FATAL] library info setting ignored: " + sKey + "=" + vValue);
415
415
  }
416
416
 
417
417
  if (vValueToSet !== undefined) {
@@ -479,10 +479,10 @@ sap.ui.define([
479
479
  */
480
480
  preload: function(mOptions) {
481
481
  if (mOptions && (mOptions.hasOwnProperty("async") || mOptions.hasOwnProperty("sync"))) {
482
- Log.error("The 'preload' function of class sap/ui/core/Lib only support preloading a library asynchronously. The given 'async' or 'sync' setting is ignored.");
482
+ Log.error("[FUTURE FATAL] The 'preload' function of class sap/ui/core/Lib only support preloading a library asynchronously. The given 'async' or 'sync' setting is ignored.");
483
483
  }
484
484
  if (mOptions && mOptions.hasOwnProperty("json")) {
485
- Log.error("The 'preload' function of class sap/ui/core/Lib only support preloading in JS Format. The given 'json' setting is ignored.");
485
+ Log.error("[FUTURE FATAL] The 'preload' function of class sap/ui/core/Lib only support preloading in JS Format. The given 'json' setting is ignored.");
486
486
  }
487
487
 
488
488
  return this._preload(["url", "lazy"].reduce(function(acc, sProperty) {
@@ -1229,6 +1229,8 @@ sap.ui.define([
1229
1229
  // note: namespace already contains a trailing dot '.'
1230
1230
  const sNamespacePrefix = mSubNamespaces.get(target);
1231
1231
  DataType.registerEnum(`${sNamespacePrefix}${prop}`, value);
1232
+
1233
+ Log.debug(`[Library API-Version 2] If you intend to use API-Version 2 in your library, make sure to call 'sap/ui/base/DataType.registerEnum' for ${sNamespacePrefix}${prop}.`);
1232
1234
  } else {
1233
1235
  const firstChar = prop.charAt(0);
1234
1236
  if (firstChar === firstChar.toLowerCase() && firstChar !== firstChar.toUpperCase()) {
@@ -1422,10 +1424,8 @@ sap.ui.define([
1422
1424
  if ( !/^(any|boolean|float|int|string|object|void)$/.test(oLib.types[i]) ) {
1423
1425
  // register a wrapper module that logs a deprecation warning
1424
1426
  const sTypeName = oLib.types[i];
1425
- sap.ui.predefine(sTypeName.replace(/\./g, "/"), [], function(sTypeName) {
1426
- Log.error(`Deprecation: Import the type '${sTypeName}' as a module is deprecated. Please require the corresponding 'library.js' containing the type directly. You can then reference the type via the library's module export.`);
1427
- return ObjectPath.get(sTypeName);
1428
- }.bind(null, sTypeName));
1427
+ sap.ui.loader._.declareModule(sTypeName.replace(/\./g, "/") + ".js",
1428
+ `Deprecation: Importing the type '${sTypeName}' as a module is deprecated. Please require the corresponding 'library.js' containing the type directly. You can then reference the type via the library's module export.`);
1429
1429
 
1430
1430
  // ensure parent namespace of the type
1431
1431
  var sNamespacePrefix = sTypeName.substring(0, sTypeName.lastIndexOf("."));
@@ -23,7 +23,7 @@ sap.ui.define(['./Item', './library'],
23
23
  * @extends sap.ui.core.Item
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.120.1
26
+ * @version 1.120.2
27
27
  *
28
28
  * @public
29
29
  * @alias sap.ui.core.ListItem
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @extends sap.ui.core.Control
33
33
  *
34
34
  * @author SAP SE
35
- * @version 1.120.1
35
+ * @version 1.120.2
36
36
  *
37
37
  * @public
38
38
  * @since 1.11.0
@@ -20,7 +20,7 @@ sap.ui.define(['sap/base/assert', 'sap/ui/base/Object', "sap/base/i18n/Localizat
20
20
  *
21
21
  * @extends sap.ui.base.Object
22
22
  * @author SAP SE
23
- * @version 1.120.1
23
+ * @version 1.120.2
24
24
  * @public
25
25
  * @alias sap.ui.core.Locale
26
26
  */
@@ -41,6 +41,7 @@ sap.ui.define([
41
41
  rNumberInScientificNotation = /^([+-]?)((\d+)(?:\.(\d+))?)[eE]([+-]?\d+)$/,
42
42
  rTrailingZeroes = /0+$/;
43
43
  const rFallbackPatternTextParts = /(.*)?\{[0|1]}(.*)?\{[0|1]}(.*)?/;
44
+ const aSupportedWidths = ["narrow", "abbreviated", "wide"];
44
45
 
45
46
  /**
46
47
  * Creates an instance of LocaleData for the given locale.
@@ -51,7 +52,7 @@ sap.ui.define([
51
52
  *
52
53
  * @extends sap.ui.base.Object
53
54
  * @author SAP SE
54
- * @version 1.120.1
55
+ * @version 1.120.2
55
56
  * @public
56
57
  * @alias sap.ui.core.LocaleData
57
58
  */
@@ -82,6 +83,39 @@ sap.ui.define([
82
83
  return this._get.apply(this, arguments);
83
84
  },
84
85
 
86
+ /**
87
+ * Get month names in width "narrow", "abbreviated" or "wide". Result may contain alternative month names.
88
+ *
89
+ * @param {"narrow"|"abbreviated"|"wide"} sWidth
90
+ * The required width for the month names
91
+ * @param {sap.ui.core.CalendarType} [sCalendarType]
92
+ * The type of calendar; defaults to the calendar type either set in configuration or calculated from locale
93
+ * @returns {array}
94
+ * The array of month names; if no alternative exists the entry for the month is its name as a string; if
95
+ * there are alternative month names the entry for the month is an array of strings with the alternative names
96
+ * @private
97
+ */
98
+ _getMonthsWithAlternatives: function(sWidth, sCalendarType) {
99
+ return this._get(getCLDRCalendarName(sCalendarType), "months", "format", sWidth);
100
+ },
101
+
102
+ /**
103
+ * Get standalone month names in width "narrow", "abbreviated" or "wide". Result may contain alternative month
104
+ * names.
105
+ *
106
+ * @param {"narrow"|"abbreviated"|"wide"} sWidth
107
+ * The required width for the month names
108
+ * @param {sap.ui.core.CalendarType} [sCalendarType]
109
+ * The type of calendar; defaults to the calendar type either set in configuration or calculated from locale
110
+ * @returns {array}
111
+ * The array of month names; if no alternative exists the entry for the month is its name as a string; if
112
+ * there are alternative month names the entry for the month is an array of strings with the alternative names
113
+ * @private
114
+ */
115
+ _getMonthsStandAloneWithAlternatives: function(sWidth, sCalendarType) {
116
+ return this._get(getCLDRCalendarName(sCalendarType), "months", "stand-alone", sWidth);
117
+ },
118
+
85
119
  _getDeep: function(oObject, aPropertyNames) {
86
120
  var oResult = oObject;
87
121
  for (var i = 0; i < aPropertyNames.length; i++) {
@@ -235,27 +269,37 @@ sap.ui.define([
235
269
  /**
236
270
  * Get month names in width "narrow", "abbreviated" or "wide".
237
271
  *
238
- * @param {string} sWidth the required width for the month names
239
- * @param {sap.ui.core.CalendarType} [sCalendarType] the type of calendar. If it's not set, it falls back to the calendar type either set in configuration or calculated from locale.
240
- * @returns {array} array of month names (starting with January)
272
+ * @param {"narrow"|"abbreviated"|"wide"} sWidth
273
+ * The required width for the month names
274
+ * @param {sap.ui.core.CalendarType} [sCalendarType]
275
+ * The type of calendar; defaults to the calendar type either set in configuration or calculated from locale
276
+ * @returns {string[]}
277
+ * The array of month names
241
278
  * @public
242
279
  */
243
280
  getMonths: function(sWidth, sCalendarType) {
244
- assert(sWidth == "narrow" || sWidth == "abbreviated" || sWidth == "wide", "sWidth must be narrow, abbreviated or wide");
245
- return this._get(getCLDRCalendarName(sCalendarType), "months", "format", sWidth);
281
+ assert(aSupportedWidths.includes(sWidth), "sWidth must be narrow, abbreviated or wide");
282
+ return this._get(getCLDRCalendarName(sCalendarType), "months", "format", sWidth).map((vMonthName) => {
283
+ return Array.isArray(vMonthName) ? vMonthName[0] : vMonthName;
284
+ });
246
285
  },
247
286
 
248
287
  /**
249
288
  * Get standalone month names in width "narrow", "abbreviated" or "wide".
250
289
  *
251
- * @param {string} sWidth the required width for the month names
252
- * @param {sap.ui.core.CalendarType} [sCalendarType] the type of calendar. If it's not set, it falls back to the calendar type either set in configuration or calculated from locale.
253
- * @returns {array} array of month names (starting with January)
290
+ * @param {"narrow"|"abbreviated"|"wide"} sWidth
291
+ * The required width for the month names
292
+ * @param {sap.ui.core.CalendarType} [sCalendarType]
293
+ * The type of calendar; defaults to the calendar type either set in configuration or calculated from locale
294
+ * @returns {string[]}
295
+ * The array of standalone month names
254
296
  * @public
255
297
  */
256
298
  getMonthsStandAlone: function(sWidth, sCalendarType) {
257
- assert(sWidth == "narrow" || sWidth == "abbreviated" || sWidth == "wide", "sWidth must be narrow, abbreviated or wide");
258
- return this._get(getCLDRCalendarName(sCalendarType), "months", "stand-alone", sWidth);
299
+ assert(aSupportedWidths.includes(sWidth), "sWidth must be narrow, abbreviated or wide");
300
+ return this._get(getCLDRCalendarName(sCalendarType), "months", "stand-alone", sWidth).map((vMonthName) => {
301
+ return Array.isArray(vMonthName) ? vMonthName[0] : vMonthName;
302
+ });
259
303
  },
260
304
 
261
305
  /**
@@ -147,7 +147,7 @@ sap.ui.define([
147
147
  * @class The Manifest class.
148
148
  * @extends sap.ui.base.Object
149
149
  * @author SAP SE
150
- * @version 1.120.1
150
+ * @version 1.120.2
151
151
  * @alias sap.ui.core.Manifest
152
152
  * @since 1.33.0
153
153
  */
@@ -361,7 +361,7 @@ sap.ui.define([
361
361
  */
362
362
  getEntry: function(sPath) {
363
363
  if (!sPath || sPath.indexOf(".") <= 0) {
364
- Log.warning("Manifest entries with keys without namespace prefix can not be read via getEntry. Key: " + sPath + ", Component: " + this.getComponentName());
364
+ Log.warning("[FUTURE FATAL] Manifest entries with keys without namespace prefix can not be read via getEntry. Key: " + sPath + ", Component: " + this.getComponentName());
365
365
  return null;
366
366
  }
367
367
 
@@ -370,7 +370,7 @@ sap.ui.define([
370
370
 
371
371
  // top-level manifest section must be an object (e.g. sap.ui5)
372
372
  if (sPath && sPath[0] !== "/" && !isPlainObject(oEntry)) {
373
- Log.warning("Manifest entry with key '" + sPath + "' must be an object. Component: " + this.getComponentName());
373
+ Log.warning("[FUTURE FATAL] Manifest entry with key '" + sPath + "' must be an object. Component: " + this.getComponentName());
374
374
  return null;
375
375
  }
376
376
 
@@ -403,7 +403,6 @@ sap.ui.define([
403
403
  Log.warning("The validation of the version for Component \"" + this.getComponentName() + "\" failed! Reason: " + e);
404
404
  }.bind(this));
405
405
  }
406
-
407
406
  },
408
407
 
409
408
 
@@ -610,7 +609,7 @@ sap.ui.define([
610
609
  var sResourceRootPath = mResourceRoots[sResourceRoot];
611
610
  var oResourceRootURI = new URI(sResourceRootPath);
612
611
  if (oResourceRootURI.is("absolute") || (oResourceRootURI.path() && oResourceRootURI.path()[0] === "/")) {
613
- Log.error("Resource root for \"" + sResourceRoot + "\" is absolute and therefore won't be registered! \"" + sResourceRootPath + "\"", this.getComponentName());
612
+ Log.error("[FUTURE FATAL] Resource root for \"" + sResourceRoot + "\" is absolute and therefore won't be registered! \"" + sResourceRootPath + "\"", this.getComponentName());
614
613
  continue;
615
614
  }
616
615
  sResourceRootPath = this.resolveUri(sResourceRootPath);
@@ -26,10 +26,11 @@ sap.ui.define(['./Element', './library', "./Theming", "sap/base/Log"],
26
26
  * @extends sap.ui.core.Element
27
27
  *
28
28
  * @author SAP SE
29
- * @version 1.120.1
29
+ * @version 1.120.2
30
30
  *
31
31
  * @public
32
32
  * @alias sap.ui.core.Message
33
+ * @deprecated As of version 1.120. Please use {@link sap.ui.core.message.Message} instead.
33
34
  */
34
35
  var Message = Element.extend("sap.ui.core.Message", /** @lends sap.ui.core.Message.prototype */ { metadata : {
35
36
 
@@ -166,7 +166,7 @@ sap.ui.define([
166
166
  */
167
167
  registerObject: function(oObject, bHandleValidation) {
168
168
  if (!(oObject && oObject.isA && (oObject.isA(["sap.ui.base.ManagedObject", "sap.ui.core.Core"])))) {
169
- Log.error("Messaging: " + oObject.toString() + " is not an instance of sap.ui.base.ManagedObject");
169
+ Log.error("[FUTURE FATAL] Messaging: " + oObject.toString() + " is not an instance of sap.ui.base.ManagedObject");
170
170
  } else {
171
171
  oObject.attachValidationSuccess(bHandleValidation, _handleSuccess);
172
172
  oObject.attachValidationError(bHandleValidation, _handleError);
@@ -183,7 +183,7 @@ sap.ui.define([
183
183
  */
184
184
  unregisterObject: function(oObject) {
185
185
  if (!(oObject && oObject.isA && oObject.isA("sap.ui.base.ManagedObject"))) {
186
- Log.error("Messaging: " + oObject.toString() + " is not an instance of sap.ui.base.ManagedObject");
186
+ Log.error("[FUTURE FATAL] Messaging: " + oObject.toString() + " is not an instance of sap.ui.base.ManagedObject");
187
187
  } else {
188
188
  oObject.detachValidationSuccess(_handleSuccess);
189
189
  oObject.detachValidationError(_handleError);
@@ -236,7 +236,7 @@ sap.ui.define([
236
236
  *
237
237
  * @extends Object
238
238
  * @author SAP SE
239
- * @version 1.120.1
239
+ * @version 1.120.2
240
240
  * @alias sap.ui.core.RenderManager
241
241
  * @hideconstructor
242
242
  * @public
@@ -19,7 +19,7 @@ sap.ui.define([
19
19
  * @classdesc Base Class for a Renderer.
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.120.1
22
+ * @version 1.120.2
23
23
  * @namespace
24
24
  * @public
25
25
  * @alias sap.ui.core.Renderer
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @alias sap.ui.core.ResizeHandler
37
37
  * @extends sap.ui.base.Object
38
38
  * @author SAP SE
39
- * @version 1.120.1
39
+ * @version 1.120.2
40
40
  * @public
41
41
  */
42
42
 
@@ -44,7 +44,7 @@ sap.ui.define([
44
44
  * The ScrollBar control can be used for virtual scrolling of a certain area.
45
45
  * This means: to simulate a very large scrollable area when technically the area is small and the control takes care of displaying the respective part only. E.g. a Table control can take care of only rendering the currently visible rows and use this ScrollBar control to make the user think he actually scrolls through a long list.
46
46
  * @extends sap.ui.core.Control
47
- * @version 1.120.1
47
+ * @version 1.120.2
48
48
  *
49
49
  * @public
50
50
  * @deprecated as of version 1.56
@@ -23,7 +23,7 @@ sap.ui.define(['./Item', './library'],
23
23
  * @extends sap.ui.core.Item
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.120.1
26
+ * @version 1.120.2
27
27
  *
28
28
  * @public
29
29
  * @alias sap.ui.core.SeparatorItem
@@ -110,18 +110,24 @@ sap.ui.define([
110
110
  // add span to static-ui-area
111
111
  oStaticAreaDomRef.appendChild(oSpan);
112
112
 
113
- // set focus on span to enforce blur - e.g. data of input field needs to get peristed
114
- oSpan.focus();
115
- // setting back the focus async ensures that also a fieldGroupChange happens
113
+ // switch the focus after the current call stack because some input device (e.g. Barcode scanner) fires
114
+ // the "keyup" event in a 0 timeout after the 'keydown' event. We need to make sure that the element can
115
+ // receive both of the events before we switch the focus to the "span"
116
116
  setTimeout(function() {
117
- // restore old focus
118
- oFocusedElement.focus();
117
+ // set focus on span to enforce blur - e.g. data of input field needs to get persisted
118
+ oSpan.focus();
119
119
 
120
- // cleanup DOM
121
- oStaticAreaDomRef.removeChild(oSpan);
120
+ // setting back the focus async ensures that also a fieldGroupChange happens
121
+ setTimeout(function() {
122
+ // restore old focus
123
+ oFocusedElement.focus();
122
124
 
123
- // trigger callback
124
- fnCallback.apply(null, args);
125
+ // cleanup DOM
126
+ oStaticAreaDomRef.removeChild(oSpan);
127
+
128
+ // trigger callback
129
+ fnCallback.apply(null, args);
130
+ });
125
131
  });
126
132
  }
127
133
 
@@ -6,10 +6,12 @@
6
6
  sap.ui.define([
7
7
  "sap/base/i18n/Localization",
8
8
  "./UIArea",
9
+ "./UIAreaRegistry",
9
10
  "sap/ui/dom/_ready"
10
11
  ], (
11
12
  Localization,
12
13
  UIArea,
14
+ UIAreaRegistry,
13
15
  _ready
14
16
  ) => {
15
17
  "use strict";
@@ -58,7 +60,7 @@ sap.ui.define([
58
60
  */
59
61
  getUIArea: () => {
60
62
  if (!oStaticArea) {
61
- oStaticArea = UIArea.registry.get(StaticArea.STATIC_UIAREA_ID) || UIArea.create(_createStaticAreaRef());
63
+ oStaticArea = UIAreaRegistry.get(StaticArea.STATIC_UIAREA_ID) || UIArea.create(_createStaticAreaRef());
62
64
  oStaticArea.bInitial = false;
63
65
  }
64
66
  return oStaticArea;
@@ -120,6 +122,7 @@ sap.ui.define([
120
122
 
121
123
  oFirstFocusElement.setAttribute("id", StaticArea.STATIC_UIAREA_ID + "-firstfe");
122
124
  oFirstFocusElement.setAttribute("tabindex", -1);
125
+ oFirstFocusElement.setAttribute("aria-hidden", true);
123
126
  oFirstFocusElement.style.fontSize = 0;
124
127
 
125
128
  oStaticArea.appendChild(oFirstFocusElement);
@@ -130,7 +130,7 @@ sap.ui.define([
130
130
  getThemeRoot: (sTheme, sLib) => {
131
131
  const oThemeRoots = oWritableConfig.get({
132
132
  name: "sapUiThemeRoots",
133
- type: oWritableConfig.Type.Object
133
+ type: oWritableConfig.Type.MergedObject
134
134
  });
135
135
  let sThemeRoot;
136
136
 
@@ -202,7 +202,7 @@ sap.ui.define([
202
202
 
203
203
  const oThemeRootConfigParam = {
204
204
  name: "sapUiThemeRoots",
205
- type: oWritableConfig.Type.Object
205
+ type: oWritableConfig.Type.MergedObject
206
206
  };
207
207
 
208
208
  // Use get twice, for a deep copy of themeRoots object
@@ -519,7 +519,7 @@ sap.ui.define([
519
519
  sAllowedOrigin = bNoProtocol && !sAllowedOrigin.startsWith("//") ? "//" + sAllowedOrigin : sAllowedOrigin;
520
520
  return sAllowedOrigin === "*" || sOrigin === new URL(sAllowedOrigin.trim(), globalThis.location.href).origin;
521
521
  } catch (error) {
522
- Log.error("sapAllowedThemeOrigin provides invalid theme origin: " + sAllowedOrigin);
522
+ Log.error("[FUTURE FATAL] sapAllowedThemeOrigin provides invalid theme origin: " + sAllowedOrigin);
523
523
  return false;
524
524
  }
525
525
  });
@@ -25,7 +25,7 @@ sap.ui.define(['./Element', './library'],
25
25
  * @extends sap.ui.core.Element
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.120.1
28
+ * @version 1.120.2
29
29
  *
30
30
  * @public
31
31
  * @since 1.16.0
@@ -31,7 +31,7 @@ sap.ui.define([
31
31
  * @class
32
32
  * Abstract class that can be extended in order to implement any extended tooltip. For example, RichTooltip Control is based on it. It provides the opening/closing behavior and the main "text" property.
33
33
  * @extends sap.ui.core.Control
34
- * @version 1.120.1
34
+ * @version 1.120.2
35
35
  *
36
36
  * @public
37
37
  * @alias sap.ui.core.TooltipBase
@@ -7,9 +7,9 @@
7
7
  // Provides class sap.ui.core.UIArea
8
8
  sap.ui.define([
9
9
  'sap/ui/base/ManagedObject',
10
- 'sap/ui/base/ManagedObjectRegistry',
11
10
  './Element',
12
11
  './RenderManager',
12
+ './UIAreaRegistry',
13
13
  './FocusHandler',
14
14
  'sap/ui/performance/trace/Interaction',
15
15
  "sap/ui/util/ActivityDetection",
@@ -29,9 +29,9 @@ sap.ui.define([
29
29
  ],
30
30
  function(
31
31
  ManagedObject,
32
- ManagedObjectRegistry,
33
32
  Element,
34
33
  RenderManager,
34
+ UIAreaRegistry,
35
35
  FocusHandler,
36
36
  Interaction,
37
37
  ActivityDetection,
@@ -170,7 +170,7 @@ sap.ui.define([
170
170
  *
171
171
  * @extends sap.ui.base.ManagedObject
172
172
  * @author SAP SE
173
- * @version 1.120.1
173
+ * @version 1.120.2
174
174
  * @param {object} [oRootNode] reference to the DOM element that should be 'hosting' the UI Area.
175
175
  * @public
176
176
  * @alias sap.ui.core.UIArea
@@ -1317,14 +1317,7 @@ sap.ui.define([
1317
1317
  return null;
1318
1318
  };
1319
1319
 
1320
- // apply the registry mixin
1321
- ManagedObjectRegistry.apply(UIArea, {
1322
- onDuplicate: function(sId, oldUIArea, newUIArea) {
1323
- var sMsg = "adding UIArea with duplicate id '" + sId + "'";
1324
- Log.error(sMsg);
1325
- throw new Error("Error: " + sMsg);
1326
- }
1327
- });
1320
+ UIAreaRegistry.init(UIArea);
1328
1321
 
1329
1322
  // field group static members
1330
1323
 
@@ -1390,7 +1383,7 @@ sap.ui.define([
1390
1383
 
1391
1384
  // create a new or fetch an existing UIArea
1392
1385
  var sId = oDomRef.id;
1393
- var oUIArea = UIArea.registry.get(sId);
1386
+ var oUIArea = UIAreaRegistry.get(sId);
1394
1387
  if (!oUIArea) {
1395
1388
  oUIArea = new UIArea(oDomRef);
1396
1389
  if (oCore && !isEmptyObject(oCore.oModels)) {
@@ -1437,7 +1430,9 @@ sap.ui.define([
1437
1430
  * @namespace sap.ui.core.UIArea.registry
1438
1431
  * @public
1439
1432
  * @since 1.107
1433
+ * @deprecated As of version 1.120
1440
1434
  */
1435
+ UIArea.registry = UIAreaRegistry;
1441
1436
 
1442
1437
  /**
1443
1438
  * Number of existing UIAreas.
@@ -1446,6 +1441,45 @@ sap.ui.define([
1446
1441
  * @readonly
1447
1442
  * @name sap.ui.core.UIArea.registry.size
1448
1443
  * @public
1444
+ * @deprecated As of version 1.120
1445
+ */
1446
+
1447
+ /**
1448
+ * Return an object with all instances of <code>sap.ui.core.UIArea</code>,
1449
+ * keyed by their ID.
1450
+ *
1451
+ * Each call creates a new snapshot object. Depending on the size of the UI,
1452
+ * this operation therefore might be expensive. Consider to use the <code>forEach</code>
1453
+ * or <code>filter</code> method instead of executing similar operations on the returned
1454
+ * object.
1455
+ *
1456
+ * <b>Note</b>: The returned object is created by a call to <code>Object.create(null)</code>,
1457
+ * and therefore lacks all methods of <code>Object.prototype</code>, e.g. <code>toString</code> etc.
1458
+ *
1459
+ * @returns {Object<sap.ui.core.ID,sap.ui.core.UIArea>} Object with all UIAreas, keyed by their ID
1460
+ * @name sap.ui.core.UIArea.registry.all
1461
+ * @function
1462
+ * @public
1463
+ * @deprecated As of version 1.120
1464
+ */
1465
+
1466
+ /**
1467
+ * Return an object with all instances of <code>sap.ui.core.UIArea</code>,
1468
+ * keyed by their ID.
1469
+ *
1470
+ * Each call creates a new snapshot object. Depending on the size of the UI,
1471
+ * this operation therefore might be expensive. Consider to use the <code>forEach</code>
1472
+ * or <code>filter</code> method instead of executing similar operations on the returned
1473
+ * object.
1474
+ *
1475
+ * <b>Note</b>: The returned object is created by a call to <code>Object.create(null)</code>,
1476
+ * and therefore lacks all methods of <code>Object.prototype</code>, e.g. <code>toString</code> etc.
1477
+ *
1478
+ * @returns {Object<sap.ui.core.ID,sap.ui.core.UIArea>} Object with all UIAreas, keyed by their ID
1479
+ * @name sap.ui.core.UIArea.registry.all
1480
+ * @function
1481
+ * @public
1482
+ * @deprecated As of version 1.120
1449
1483
  */
1450
1484
 
1451
1485
  /**
@@ -1464,6 +1498,7 @@ sap.ui.define([
1464
1498
  * @name sap.ui.core.UIArea.registry.all
1465
1499
  * @function
1466
1500
  * @public
1501
+ * @deprecated As of version 1.120
1467
1502
  */
1468
1503
 
1469
1504
  /**
@@ -1477,6 +1512,7 @@ sap.ui.define([
1477
1512
  * @name sap.ui.core.UIArea.registry.get
1478
1513
  * @function
1479
1514
  * @public
1515
+ * @deprecated As of version 1.120
1480
1516
  */
1481
1517
 
1482
1518
  /**
@@ -1511,6 +1547,7 @@ sap.ui.define([
1511
1547
  * @name sap.ui.core.UIArea.registry.forEach
1512
1548
  * @function
1513
1549
  * @public
1550
+ * @deprecated As of version 1.120
1514
1551
  */
1515
1552
 
1516
1553
  /**
@@ -1549,9 +1586,10 @@ sap.ui.define([
1549
1586
  * @name sap.ui.core.UIArea.registry.filter
1550
1587
  * @function
1551
1588
  * @public
1589
+ * @deprecated As of version 1.120
1552
1590
  */
1553
1591
 
1554
- _LocalizationHelper.registerForUpdate("UIAreas", UIArea.registry.all);
1592
+ _LocalizationHelper.registerForUpdate("UIAreas", UIAreaRegistry.all);
1555
1593
 
1556
1594
  return UIArea;
1557
1595
  });