@openui5/sap.ui.core 1.105.1 → 1.107.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (351) hide show
  1. package/.reuse/dep5 +20 -17
  2. package/THIRDPARTY.txt +31 -21
  3. package/package.json +1 -1
  4. package/src/jquery.sap.dom.js +10 -10
  5. package/src/jquery.sap.global.js +24 -216
  6. package/src/jquery.sap.history.js +1 -1
  7. package/src/jquery.sap.properties.js +2 -2
  8. package/src/jquery.sap.resources.js +1 -1
  9. package/src/jquery.sap.script.js +1 -1
  10. package/src/jquery.sap.storage.js +4 -4
  11. package/src/jquery.sap.ui.js +5 -7
  12. package/src/sap/base/i18n/ResourceBundle.js +7 -11
  13. package/src/sap/base/util/LoaderExtensions.js +6 -6
  14. package/src/sap/base/util/ObjectPath.js +1 -1
  15. package/src/sap/base/util/Properties.js +1 -1
  16. package/src/sap/base/util/fetch.js +8 -10
  17. package/src/sap/base/util/mixedFetch.js +1 -1
  18. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  19. package/src/sap/base/util/restricted/_castArray.js +1 -1
  20. package/src/sap/base/util/restricted/_compact.js +1 -1
  21. package/src/sap/base/util/restricted/_curry.js +1 -1
  22. package/src/sap/base/util/restricted/_debounce.js +1 -1
  23. package/src/sap/base/util/restricted/_difference.js +1 -1
  24. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  25. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  26. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  27. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  28. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  29. package/src/sap/base/util/restricted/_flatten.js +1 -1
  30. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  31. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  32. package/src/sap/base/util/restricted/_intersection.js +1 -1
  33. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  34. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  35. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  36. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  37. package/src/sap/base/util/restricted/_isNil.js +1 -1
  38. package/src/sap/base/util/restricted/_max.js +1 -1
  39. package/src/sap/base/util/restricted/_merge.js +1 -1
  40. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  41. package/src/sap/base/util/restricted/_min.js +1 -1
  42. package/src/sap/base/util/restricted/_omit.js +1 -1
  43. package/src/sap/base/util/restricted/_pick.js +1 -1
  44. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  45. package/src/sap/base/util/restricted/_throttle.js +1 -1
  46. package/src/sap/base/util/restricted/_toArray.js +1 -1
  47. package/src/sap/base/util/restricted/_union.js +1 -1
  48. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  49. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  50. package/src/sap/base/util/restricted/_uniq.js +1 -1
  51. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  52. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  53. package/src/sap/base/util/restricted/_without.js +1 -1
  54. package/src/sap/base/util/restricted/_xor.js +1 -1
  55. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  56. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  57. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  58. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  59. package/src/sap/base/util/syncFetch.js +9 -16
  60. package/src/sap/ui/Device.js +3 -3
  61. package/src/sap/ui/Global.js +7 -14
  62. package/src/sap/ui/VersionInfo.js +57 -54
  63. package/src/sap/ui/base/BindingInfo.js +198 -0
  64. package/src/sap/ui/base/DataType.js +5 -5
  65. package/src/sap/ui/base/Event.js +2 -2
  66. package/src/sap/ui/base/EventProvider.js +2 -2
  67. package/src/sap/ui/base/Interface.js +1 -1
  68. package/src/sap/ui/base/ManagedObject.js +209 -979
  69. package/src/sap/ui/base/ManagedObjectMetadata.js +6 -6
  70. package/src/sap/ui/base/ManagedObjectRegistry.js +4 -3
  71. package/src/sap/ui/base/Metadata.js +1 -1
  72. package/src/sap/ui/base/Object.js +1 -1
  73. package/src/sap/ui/base/ObjectPool.js +1 -1
  74. package/src/sap/ui/core/.library +13 -9
  75. package/src/sap/ui/core/AppCacheBuster.js +3 -4
  76. package/src/sap/ui/core/BusyIndicator.js +1 -1
  77. package/src/sap/ui/core/BusyIndicatorUtils.js +5 -6
  78. package/src/sap/ui/core/CalendarType.js +0 -1
  79. package/src/sap/ui/core/Component.js +16 -14
  80. package/src/sap/ui/core/ComponentContainer.js +6 -5
  81. package/src/sap/ui/core/ComponentMetadata.js +5 -12
  82. package/src/sap/ui/core/ComponentSupport.js +1 -1
  83. package/src/sap/ui/core/Configuration.js +525 -336
  84. package/src/sap/ui/core/Control.js +7 -7
  85. package/src/sap/ui/core/Core.js +102 -422
  86. package/src/sap/ui/core/CustomData.js +1 -1
  87. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  88. package/src/sap/ui/core/Element.js +65 -9
  89. package/src/sap/ui/core/ElementMetadata.js +1 -1
  90. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  91. package/src/sap/ui/core/EventBus.js +1 -1
  92. package/src/sap/ui/core/FocusHandler.js +79 -9
  93. package/src/sap/ui/core/Fragment.js +1 -1
  94. package/src/sap/ui/core/HTML.js +1 -2
  95. package/src/sap/ui/core/History.js +1 -1
  96. package/src/sap/ui/core/Icon.js +1 -2
  97. package/src/sap/ui/core/IconPool.js +8 -8
  98. package/src/sap/ui/core/IndicationColorSupport.js +2 -2
  99. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  100. package/src/sap/ui/core/InvisibleMessage.js +1 -2
  101. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  102. package/src/sap/ui/core/InvisibleText.js +5 -5
  103. package/src/sap/ui/core/Item.js +1 -2
  104. package/src/sap/ui/core/LabelEnablement.js +1 -1
  105. package/src/sap/ui/core/LayoutData.js +1 -2
  106. package/src/sap/ui/core/ListItem.js +1 -2
  107. package/src/sap/ui/core/LocalBusyIndicator.js +1 -2
  108. package/src/sap/ui/core/Locale.js +1 -1
  109. package/src/sap/ui/core/LocaleData.js +15 -13
  110. package/src/sap/ui/core/Manifest.js +8 -6
  111. package/src/sap/ui/core/Message.js +4 -6
  112. package/src/sap/ui/core/Popup.js +63 -6
  113. package/src/sap/ui/core/RenderManager.js +13 -5
  114. package/src/sap/ui/core/Renderer.js +5 -4
  115. package/src/sap/ui/core/Rendering.js +251 -0
  116. package/src/sap/ui/core/ResizeHandler.js +7 -7
  117. package/src/sap/ui/core/ScrollBar.js +6 -9
  118. package/src/sap/ui/core/ScrollBarRenderer.js +3 -3
  119. package/src/sap/ui/core/SeparatorItem.js +1 -2
  120. package/src/sap/ui/core/Title.js +1 -2
  121. package/src/sap/ui/core/TooltipBase.js +12 -14
  122. package/src/sap/ui/core/UIArea.js +396 -129
  123. package/src/sap/ui/core/UIComponent.js +3 -4
  124. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  125. package/src/sap/ui/core/ValueStateSupport.js +2 -2
  126. package/src/sap/ui/core/VariantLayoutData.js +1 -2
  127. package/src/sap/ui/core/XMLComposite.js +2 -2
  128. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  129. package/src/sap/ui/core/XMLTemplateProcessor.js +12 -10
  130. package/src/sap/ui/core/_ConfigurationProvider.js +187 -0
  131. package/src/sap/ui/core/cache/CacheManager.js +9 -8
  132. package/src/sap/ui/core/cache/LRUPersistentCache.js +4 -4
  133. package/src/sap/ui/core/cldr/es_BO.json +3 -3
  134. package/src/sap/ui/core/cldr/es_CL.json +3 -3
  135. package/src/sap/ui/core/cldr/es_MX.json +3 -3
  136. package/src/sap/ui/core/cldr/es_PE.json +3 -3
  137. package/src/sap/ui/core/cldr/es_UY.json +3 -3
  138. package/src/sap/ui/core/cldr/es_VE.json +2 -2
  139. package/src/sap/ui/core/date/Islamic.js +4 -4
  140. package/src/sap/ui/core/date/UniversalDate.js +8 -8
  141. package/src/sap/ui/core/date/UniversalDateUtils.js +3 -3
  142. package/src/sap/ui/core/delegate/ItemNavigation.js +5 -5
  143. package/src/sap/ui/core/delegate/ScrollEnablement.js +7 -6
  144. package/src/sap/ui/core/dnd/DragAndDrop.js +14 -9
  145. package/src/sap/ui/core/dnd/DragDropBase.js +1 -2
  146. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -2
  147. package/src/sap/ui/core/dnd/DragInfo.js +1 -2
  148. package/src/sap/ui/core/dnd/DropInfo.js +1 -2
  149. package/src/sap/ui/core/format/DateFormat.js +14 -7
  150. package/src/sap/ui/core/format/DateFormatTimezoneDisplay.js +0 -1
  151. package/src/sap/ui/core/format/FileSizeFormat.js +4 -3
  152. package/src/sap/ui/core/format/ListFormat.js +4 -3
  153. package/src/sap/ui/core/format/NumberFormat.js +7 -6
  154. package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
  155. package/src/sap/ui/core/hyphenation/Hyphenation.js +7 -6
  156. package/src/sap/ui/core/library.js +3 -55
  157. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  158. package/src/sap/ui/core/message/Message.js +1 -1
  159. package/src/sap/ui/core/message/MessageManager.js +13 -23
  160. package/src/sap/ui/core/message/MessageParser.js +1 -1
  161. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  162. package/src/sap/ui/core/messagebundle_fr.properties +1 -1
  163. package/src/sap/ui/core/mvc/Controller.js +8 -3
  164. package/src/sap/ui/core/mvc/EventHandlerResolver.js +5 -3
  165. package/src/sap/ui/core/mvc/HTMLView.js +1 -2
  166. package/src/sap/ui/core/mvc/JSONView.js +1 -2
  167. package/src/sap/ui/core/mvc/JSView.js +2 -3
  168. package/src/sap/ui/core/mvc/TemplateView.js +1 -2
  169. package/src/sap/ui/core/mvc/View.js +21 -20
  170. package/src/sap/ui/core/mvc/ViewType.js +0 -1
  171. package/src/sap/ui/core/mvc/XMLView.js +18 -18
  172. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  173. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  174. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  175. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  176. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  177. package/src/sap/ui/core/routing/Router.js +1 -1
  178. package/src/sap/ui/core/routing/async/Target.js +4 -3
  179. package/src/sap/ui/core/rules/App.support.js +11 -13
  180. package/src/sap/ui/core/rules/Config.support.js +19 -17
  181. package/src/sap/ui/core/rules/CoreHelper.support.js +4 -4
  182. package/src/sap/ui/core/rules/Model.support.js +8 -8
  183. package/src/sap/ui/core/rules/Rendering.support.js +1 -1
  184. package/src/sap/ui/core/rules/Theming.support.js +8 -8
  185. package/src/sap/ui/core/rules/View.support.js +9 -9
  186. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -2
  187. package/src/sap/ui/core/search/SearchProvider.js +1 -3
  188. package/src/sap/ui/core/service/Service.js +1 -1
  189. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  190. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  191. package/src/sap/ui/core/support/Hotkeys.js +2 -3
  192. package/src/sap/ui/core/support/Plugin.js +1 -1
  193. package/src/sap/ui/core/support/Support.js +1 -1
  194. package/src/sap/ui/core/support/ToolsAPI.js +11 -13
  195. package/src/sap/ui/core/support/plugins/ControlTree.js +4 -4
  196. package/src/sap/ui/core/support/plugins/Debugging.js +3 -3
  197. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  198. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  199. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  200. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  201. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  202. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  203. package/src/sap/ui/core/support/plugins/ViewInfo.js +2 -2
  204. package/src/sap/ui/core/support/support.html +1 -1
  205. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +10 -8
  206. package/src/sap/ui/core/theming/Parameters.js +8 -15
  207. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -2
  208. package/src/sap/ui/core/tmpl/DOMElement.js +1 -4
  209. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  210. package/src/sap/ui/core/tmpl/Template.js +6 -5
  211. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -2
  212. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  213. package/src/sap/ui/core/util/Export.js +1 -1
  214. package/src/sap/ui/core/util/ExportCell.js +1 -1
  215. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  216. package/src/sap/ui/core/util/ExportRow.js +1 -1
  217. package/src/sap/ui/core/util/ExportType.js +1 -1
  218. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  219. package/src/sap/ui/core/util/File.js +1 -1
  220. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  221. package/src/sap/ui/core/util/MockServer.js +48 -72
  222. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  223. package/src/sap/ui/core/util/ResponsivePaddingsEnablement.js +4 -3
  224. package/src/sap/ui/core/util/XMLPreprocessor.js +2 -2
  225. package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +1 -1
  226. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  227. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  228. package/src/sap/ui/core/util/serializer/ViewSerializer.js +4 -4
  229. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  230. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  231. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  232. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  233. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  234. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  235. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  236. package/src/sap/ui/debug/ControlTree.js +3 -3
  237. package/src/sap/ui/debug/DebugEnv.js +4 -4
  238. package/src/sap/ui/debug/PropertyList.css +1 -31
  239. package/src/sap/ui/debug/PropertyList.js +6 -250
  240. package/src/sap/ui/dom/getScrollbarSize.js +1 -1
  241. package/src/sap/ui/dom/jquery/control.js +1 -0
  242. package/src/sap/ui/events/jquery/EventSimulation.js +4 -4
  243. package/src/sap/ui/model/ClientModel.js +1 -1
  244. package/src/sap/ui/model/ClientTreeBinding.js +3 -1
  245. package/src/sap/ui/model/CompositeDataState.js +1 -1
  246. package/src/sap/ui/model/CompositeType.js +1 -1
  247. package/src/sap/ui/model/Context.js +3 -0
  248. package/src/sap/ui/model/ContextBinding.js +1 -1
  249. package/src/sap/ui/model/DataState.js +2 -2
  250. package/src/sap/ui/model/ListBinding.js +2 -2
  251. package/src/sap/ui/model/ManagedObjectBindingSupport.js +871 -0
  252. package/src/sap/ui/model/MetaModel.js +1 -1
  253. package/src/sap/ui/model/Model.js +16 -5
  254. package/src/sap/ui/model/SelectionModel.js +1 -1
  255. package/src/sap/ui/model/SimpleType.js +2 -2
  256. package/src/sap/ui/model/Sorter.js +24 -19
  257. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  258. package/src/sap/ui/model/TreeBindingAdapter.js +3 -7
  259. package/src/sap/ui/model/Type.js +1 -1
  260. package/src/sap/ui/model/analytics/AnalyticalBinding.js +2 -0
  261. package/src/sap/ui/model/analytics/AnalyticalTreeBindingAdapter.js +5 -7
  262. package/src/sap/ui/model/json/JSONModel.js +9 -7
  263. package/src/sap/ui/model/message/MessageModel.js +1 -1
  264. package/src/sap/ui/model/odata/AnnotationHelper.js +4 -4
  265. package/src/sap/ui/model/odata/ODataAnnotations.js +5 -3
  266. package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
  267. package/src/sap/ui/model/odata/ODataMetaModel.js +10 -10
  268. package/src/sap/ui/model/odata/ODataMetadata.js +5 -4
  269. package/src/sap/ui/model/odata/ODataModel.js +6 -5
  270. package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +0 -1
  271. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  272. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  273. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  274. package/src/sap/ui/model/odata/type/Date.js +1 -1
  275. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  276. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  277. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  278. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  279. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  280. package/src/sap/ui/model/odata/type/Double.js +1 -1
  281. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  282. package/src/sap/ui/model/odata/type/Int.js +1 -1
  283. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  284. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  285. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  286. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  287. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  288. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  289. package/src/sap/ui/model/odata/type/Single.js +1 -1
  290. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  291. package/src/sap/ui/model/odata/type/String.js +1 -1
  292. package/src/sap/ui/model/odata/type/Time.js +1 -1
  293. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  294. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  295. package/src/sap/ui/model/odata/v2/Context.js +5 -5
  296. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +4 -3
  297. package/src/sap/ui/model/odata/v2/ODataContextBinding.js +25 -16
  298. package/src/sap/ui/model/odata/v2/ODataListBinding.js +46 -28
  299. package/src/sap/ui/model/odata/v2/ODataModel.js +97 -39
  300. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +5 -5
  301. package/src/sap/ui/model/odata/v4/AnnotationHelper.js +3 -3
  302. package/src/sap/ui/model/odata/v4/Context.js +109 -71
  303. package/src/sap/ui/model/odata/v4/ODataBinding.js +50 -7
  304. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +88 -68
  305. package/src/sap/ui/model/odata/v4/ODataListBinding.js +116 -81
  306. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +23 -20
  307. package/src/sap/ui/model/odata/v4/ODataModel.js +350 -88
  308. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +35 -9
  309. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +15 -9
  310. package/src/sap/ui/model/odata/v4/ODataUtils.js +8 -5
  311. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +45 -33
  312. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +40 -6
  313. package/src/sap/ui/model/odata/v4/lib/_Cache.js +135 -81
  314. package/src/sap/ui/model/odata/v4/lib/_ConcatHelper.js +2 -3
  315. package/src/sap/ui/model/odata/v4/lib/_Helper.js +179 -36
  316. package/src/sap/ui/model/odata/v4/lib/_MinMaxHelper.js +2 -3
  317. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +26 -7
  318. package/src/sap/ui/model/resource/ResourceModel.js +8 -7
  319. package/src/sap/ui/model/type/Boolean.js +1 -1
  320. package/src/sap/ui/model/type/Currency.js +2 -2
  321. package/src/sap/ui/model/type/Date.js +1 -1
  322. package/src/sap/ui/model/type/DateInterval.js +1 -1
  323. package/src/sap/ui/model/type/DateTime.js +1 -1
  324. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  325. package/src/sap/ui/model/type/FileSize.js +1 -1
  326. package/src/sap/ui/model/type/Float.js +1 -1
  327. package/src/sap/ui/model/type/Integer.js +1 -1
  328. package/src/sap/ui/model/type/String.js +2 -2
  329. package/src/sap/ui/model/type/Time.js +1 -1
  330. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  331. package/src/sap/ui/model/type/Unit.js +5 -4
  332. package/src/sap/ui/model/xml/XMLModel.js +8 -6
  333. package/src/sap/ui/performance/trace/Interaction.js +1 -1
  334. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  335. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  336. package/src/sap/ui/test/Opa.js +7 -5
  337. package/src/sap/ui/test/Opa5.js +9 -15
  338. package/src/sap/ui/test/OpaBuilder.js +1 -1
  339. package/src/sap/ui/test/RecorderHotkeyListener.js +1 -1
  340. package/src/sap/ui/test/TestUtils.js +83 -1
  341. package/src/sap/ui/test/autowaiter/_autoWaiter.js +9 -0
  342. package/src/sap/ui/test/autowaiter/_cssAnimationWaiter.js +114 -0
  343. package/src/sap/ui/test/autowaiter/_cssTransitionWaiter.js +99 -0
  344. package/src/sap/ui/test/autowaiter/_jsAnimationWaiter.js +70 -0
  345. package/src/sap/ui/test/autowaiter/_resourceWaiter.js +3 -12
  346. package/src/sap/ui/test/autowaiter/_utils.js +13 -1
  347. package/src/sap/ui/test/generic/TestBase.js +1 -1
  348. package/src/sap/ui/test/matchers/Ancestor.js +1 -0
  349. package/src/sap/ui/test/matchers/Descendant.js +1 -0
  350. package/src/sap/ui/test/matchers/Sibling.js +1 -0
  351. package/src/sap/ui/util/Storage.js +1 -1
@@ -5,8 +5,8 @@
5
5
  */
6
6
 
7
7
  //Provides the locale object sap.ui.core.LocaleData
8
- sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', './Locale', 'sap/base/assert', 'sap/base/util/LoaderExtensions'],
9
- function(extend, BaseObject, CalendarType, Locale, assert, LoaderExtensions) {
8
+ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', './Locale', 'sap/base/assert', 'sap/base/util/LoaderExtensions', "sap/ui/core/Configuration"],
9
+ function(extend, BaseObject, CalendarType, Locale, assert, LoaderExtensions, Configuration) {
10
10
  "use strict";
11
11
 
12
12
  /**
@@ -18,7 +18,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
18
18
  *
19
19
  * @extends sap.ui.base.Object
20
20
  * @author SAP SE
21
- * @version 1.105.1
21
+ * @version 1.107.0
22
22
  * @public
23
23
  * @alias sap.ui.core.LocaleData
24
24
  */
@@ -116,7 +116,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
116
116
  /**
117
117
  * Get locale specific language names.
118
118
  *
119
- * @returns {object} map of locale specific language names
119
+ * @returns {Object<string, string>} map of locale specific language names
120
120
  * @public
121
121
  */
122
122
  getLanguages: function() {
@@ -126,7 +126,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
126
126
  /**
127
127
  * Get locale specific script names.
128
128
  *
129
- * @returns {object} map of locale specific script names
129
+ * @returns {Object.<string, string>} map of locale specific script names
130
130
  * @public
131
131
  */
132
132
  getScripts: function() {
@@ -136,7 +136,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
136
136
  /**
137
137
  * Get locale specific territory names.
138
138
  *
139
- * @returns {object} map of locale specific territory names
139
+ * @returns {Object.<string, string>} map of locale specific territory names
140
140
  * @public
141
141
  */
142
142
  getTerritories: function() {
@@ -157,7 +157,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
157
157
  },
158
158
 
159
159
  /**
160
- * Get stand alone month names in width "narrow", "abbreviated" or "wide".
160
+ * Get standalone month names in width "narrow", "abbreviated" or "wide".
161
161
  *
162
162
  * @param {string} sWidth the required width for the month names
163
163
  * @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.
@@ -183,7 +183,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
183
183
  },
184
184
 
185
185
  /**
186
- * Get stand alone day names in width "narrow", "abbreviated" or "wide".
186
+ * Get standalone day names in width "narrow", "abbreviated" or "wide".
187
187
  *
188
188
  * @param {string} sWidth the required width for the day names
189
189
  * @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.
@@ -209,7 +209,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
209
209
  },
210
210
 
211
211
  /**
212
- * Get stand alone quarter names in width "narrow", "abbreviated" or "wide".
212
+ * Get standalone quarter names in width "narrow", "abbreviated" or "wide".
213
213
  *
214
214
  * @param {string} sWidth the required width for the quarter names
215
215
  * @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.
@@ -746,7 +746,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
746
746
  }
747
747
  }
748
748
  }
749
- // if neither symbol or group matched, add it to the missing tokens and add distance
749
+ // if neither symbol nor group matched, add it to the missing tokens and add distance
750
750
  aMissingTokens.push(oToken);
751
751
  iDistance += 50 - i;
752
752
  }
@@ -1161,7 +1161,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
1161
1161
  * Returns the currency symbols available for this locale.
1162
1162
  * Currency symbols get accumulated by custom currency symbols.
1163
1163
  *
1164
- * @returns {object} the map of all currency symbols available in this locale, e.g.
1164
+ * @returns {Object.<string, string>} the map of all currency symbols available in this locale, e.g.
1165
1165
  * {
1166
1166
  * "AUD": "A$",
1167
1167
  * "BRL": "R$",
@@ -1590,6 +1590,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
1590
1590
  *
1591
1591
  * Call:
1592
1592
  * <code>getUnitFromMapping("my")</code> would result in <code>"my-custom-unit"</code>
1593
+ * @param {string} sMapping mapping identifier
1593
1594
  * @return {string} unit from the mapping
1594
1595
  * @public
1595
1596
  * @since 1.54
@@ -2074,11 +2075,12 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
2074
2075
  * from the configuration, in case sCalendarType is undefined.
2075
2076
  *
2076
2077
  * @param {sap.ui.core.CalendarType} sCalendarType the type defined in {@link sap.ui.core.CalendarType}.
2078
+ * @returns {string} calendar name
2077
2079
  * @private
2078
2080
  */
2079
2081
  function getCLDRCalendarName(sCalendarType) {
2080
2082
  if (!sCalendarType) {
2081
- sCalendarType = sap.ui.getCore().getConfiguration().getCalendarType();
2083
+ sCalendarType = Configuration.getCalendarType();
2082
2084
  }
2083
2085
  return "ca-" + sCalendarType.toLowerCase();
2084
2086
  }
@@ -2214,7 +2216,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
2214
2216
  var CustomLocaleData = LocaleData.extend("sap.ui.core.CustomLocaleData", {
2215
2217
  constructor: function(oLocale) {
2216
2218
  LocaleData.apply(this, arguments);
2217
- this.mCustomData = sap.ui.getCore().getConfiguration().getFormatSettings().getCustomLocaleData();
2219
+ this.mCustomData = Configuration.getFormatSettings().getCustomLocaleData();
2218
2220
  },
2219
2221
 
2220
2222
  /**
@@ -16,7 +16,8 @@ sap.ui.define([
16
16
  'sap/base/util/uid',
17
17
  'sap/base/util/merge',
18
18
  'sap/base/util/isPlainObject',
19
- 'sap/base/util/LoaderExtensions'
19
+ 'sap/base/util/LoaderExtensions',
20
+ 'sap/ui/core/Configuration'
20
21
  ],
21
22
  function(
22
23
  BaseObject,
@@ -29,7 +30,8 @@ sap.ui.define([
29
30
  uid,
30
31
  merge,
31
32
  isPlainObject,
32
- LoaderExtensions
33
+ LoaderExtensions,
34
+ Configuration
33
35
  ) {
34
36
  "use strict";
35
37
 
@@ -137,7 +139,7 @@ sap.ui.define([
137
139
  * @class The Manifest class.
138
140
  * @extends sap.ui.base.Object
139
141
  * @author SAP SE
140
- * @version 1.105.1
142
+ * @version 1.107.0
141
143
  * @alias sap.ui.core.Manifest
142
144
  * @since 1.33.0
143
145
  */
@@ -377,7 +379,7 @@ sap.ui.define([
377
379
  var sMinUI5Version = this.getEntry("/sap.ui5/dependencies/minUI5Version");
378
380
  if (sMinUI5Version &&
379
381
  Log.isLoggable(Log.Level.WARNING) &&
380
- sap.ui.getCore().getConfiguration().getDebug()) {
382
+ Configuration.getDebug()) {
381
383
  VersionInfo.load().then(function(oVersionInfo) {
382
384
  var oMinVersion = getVersionWithoutSuffix(sMinUI5Version);
383
385
  var oVersion = getVersionWithoutSuffix(oVersionInfo && oVersionInfo.version);
@@ -852,7 +854,7 @@ sap.ui.define([
852
854
  var oManifestUrl = new URI(sManifestUrl);
853
855
  ["sap-language", "sap-client"].forEach(function(sName) {
854
856
  if (!oManifestUrl.hasQuery(sName)) {
855
- var sValue = sap.ui.getCore().getConfiguration().getSAPParam(sName);
857
+ var sValue = Configuration.getSAPParam(sName);
856
858
  if (sValue) {
857
859
  oManifestUrl.addQuery(sName, sValue);
858
860
  }
@@ -874,7 +876,7 @@ sap.ui.define([
874
876
  dataType: "json",
875
877
  async: typeof bAsync !== "undefined" ? bAsync : false,
876
878
  headers: {
877
- "Accept-Language": sap.ui.getCore().getConfiguration().getLanguageTag()
879
+ "Accept-Language": Configuration.getLanguageTag()
878
880
  },
879
881
  failOnError: typeof bFailOnError !== "undefined" ? bFailOnError : true
880
882
  });
@@ -5,8 +5,8 @@
5
5
  */
6
6
 
7
7
  // Provides control sap.ui.core.Message.
8
- sap.ui.define(['./Element', './library', "sap/base/Log"],
9
- function(Element, library, Log) {
8
+ sap.ui.define(['./Element', './library', "sap/base/Log", "sap/ui/core/Configuration"],
9
+ function(Element, library, Log, Configuration) {
10
10
  "use strict";
11
11
 
12
12
  // shortcut
@@ -26,11 +26,10 @@ sap.ui.define(['./Element', './library', "sap/base/Log"],
26
26
  * @extends sap.ui.core.Element
27
27
  *
28
28
  * @author SAP SE
29
- * @version 1.105.1
29
+ * @version 1.107.0
30
30
  *
31
31
  * @public
32
32
  * @alias sap.ui.core.Message
33
- * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
34
33
  */
35
34
  var Message = Element.extend("sap.ui.core.Message", /** @lends sap.ui.core.Message.prototype */ { metadata : {
36
35
 
@@ -72,10 +71,9 @@ sap.ui.define(['./Element', './library', "sap/base/Log"],
72
71
  * @param {string} [sSize="16x16"] Only the values "16x16" or "32x32" are allowed. Otherwise the default value is used.
73
72
  * @return {sap.ui.core.URI} URI of the default icon.
74
73
  * @public
75
- * @ui5-metamodel This method also will be described in the UI5 (legacy) designtime metamodel
76
74
  */
77
75
  Message.prototype.getDefaultIcon = function(sSize) {
78
- var sModulePath = sap.ui.require.toUrl("sap/ui/core/themes/" + sap.ui.getCore().getConfiguration().getTheme());
76
+ var sModulePath = sap.ui.require.toUrl("sap/ui/core/themes/" + Configuration.getTheme());
79
77
 
80
78
  var sImagesPath = sModulePath + "/img/message/";
81
79
  if (sSize && sSize == "32x32") {
@@ -9,13 +9,15 @@
9
9
  // Provides helper class sap.ui.core.Popup
10
10
  sap.ui.define([
11
11
  'sap/ui/Device',
12
+ 'sap/ui/base/Event',
12
13
  'sap/ui/base/ManagedObject',
13
14
  'sap/ui/base/Object',
14
15
  'sap/ui/base/ObjectPool',
15
16
  './Control',
17
+ './Element',
18
+ './FocusHandler',
16
19
  './IntervalTrigger',
17
20
  './RenderManager',
18
- './Element',
19
21
  './ResizeHandler',
20
22
  './library',
21
23
  "sap/base/assert",
@@ -29,18 +31,21 @@ sap.ui.define([
29
31
  "sap/ui/events/F6Navigation",
30
32
  "sap/ui/events/isMouseEventDelayed",
31
33
  "sap/ui/base/EventProvider",
34
+ "sap/ui/core/Configuration",
32
35
  "sap/ui/dom/jquery/control", // jQuery Plugin "control"
33
36
  "sap/ui/dom/jquery/Focusable", // jQuery Plugin "firstFocusableDomRef"
34
37
  "sap/ui/dom/jquery/rect" // jQuery Plugin "rect"
35
38
  ], function(
36
39
  Device,
40
+ Event,
37
41
  ManagedObject,
38
42
  BaseObject,
39
43
  ObjectPool,
40
44
  Control,
45
+ Element,
46
+ FocusHandler,
41
47
  IntervalTrigger,
42
48
  RenderManager,
43
- Element,
44
49
  ResizeHandler,
45
50
  library,
46
51
  assert,
@@ -53,7 +58,8 @@ sap.ui.define([
53
58
  jQuery,
54
59
  F6Navigation,
55
60
  isMouseEventDelayed,
56
- EventProvider
61
+ EventProvider,
62
+ Configuration
57
63
  //control
58
64
  //Focusable
59
65
  //rect
@@ -266,6 +272,7 @@ sap.ui.define([
266
272
  this._mEvents["sap.ui.core.Popup.onFocusEvent-" + this._popupUID] = this.onFocusEvent;
267
273
  this._mEvents["sap.ui.core.Popup.increaseZIndex-" + this._popupUID] = this._increaseMyZIndex;
268
274
  this._mEvents["sap.ui.core.Popup.contains-" + this._popupUID] = this._containsEventBusWrapper;
275
+ this._mEvents["sap.ui.core.Popup.extendFocusInfo-" + this._popupUID] = this._extendFocusInfoEventBusWrapper;
269
276
 
270
277
  if (oContent) {
271
278
  this.setContent(oContent);
@@ -1752,7 +1759,7 @@ sap.ui.define([
1752
1759
  * @private
1753
1760
  */
1754
1761
  Popup.prototype._applyPosition = function(oPosition) {
1755
- var bRtl = sap.ui.getCore().getConfiguration().getRTL();
1762
+ var bRtl = Configuration.getRTL();
1756
1763
  var $Ref = this._$();
1757
1764
 
1758
1765
  if ($Ref.length) {
@@ -2390,7 +2397,7 @@ sap.ui.define([
2390
2397
  var oElement;
2391
2398
  this._aExtraContent.forEach(function(oAreaRef) {
2392
2399
  if (oAreaRef.delegate) {
2393
- oElement = jQuery(document.getElementById(oAreaRef.id)).control(0);
2400
+ oElement = Element.closestTo(document.getElementById(oAreaRef.id));
2394
2401
  if (oElement) {
2395
2402
  oElement.removeEventDelegate(oAreaRef.delegate);
2396
2403
  }
@@ -2731,6 +2738,46 @@ sap.ui.define([
2731
2738
  }
2732
2739
  }
2733
2740
 
2741
+ Popup.prototype._extendFocusInfo = function(oEvent, oEventData) {
2742
+ var bExtended = false,
2743
+ sEventPrefix = "sap.ui.core.Popup.extendFocusInfo-",
2744
+ oData;
2745
+
2746
+ if (oEvent instanceof Event) {
2747
+ // the call is from event provider
2748
+ oData = {
2749
+ info: oEventData.info,
2750
+ element: oEvent.getParameter("domRef")
2751
+ };
2752
+ } else {
2753
+ // the call is from the event bus
2754
+ oData = oEvent;
2755
+ }
2756
+
2757
+ var oContent = this.getContent();
2758
+ var oContentDom = (oContent instanceof Element) ? oContent.getDomRef() : oContent;
2759
+
2760
+ if (oContentDom && oContentDom.contains(oData.element)) {
2761
+ oData.info.preventScroll = true;
2762
+ bExtended = true;
2763
+ } else {
2764
+ var aChildPopups = this.getChildPopups();
2765
+ bExtended = aChildPopups.some(function(sChildID) {
2766
+ var sEventId = sEventPrefix + sChildID;
2767
+ sap.ui.getCore().getEventBus().publish("sap.ui", sEventId, oData);
2768
+
2769
+ return oData.extended;
2770
+ });
2771
+ }
2772
+
2773
+ return bExtended;
2774
+ };
2775
+
2776
+ // Wrapper of _contains method for the event bus
2777
+ Popup.prototype._extendFocusInfoEventBusWrapper = function(sChannel, sEvent, oData) {
2778
+ oData.contains = this._extendFocusInfo(oData);
2779
+ };
2780
+
2734
2781
  /**
2735
2782
  * @private
2736
2783
  */
@@ -2767,6 +2814,11 @@ sap.ui.define([
2767
2814
  "visibility": "visible"
2768
2815
  }).show();
2769
2816
 
2817
+ if (!this.isInPopup(this._oLastPosition.of)) {
2818
+ this._bFocusExtenderAdded = true;
2819
+ FocusHandler.addFocusInfoExtender(this._extendFocusInfo, this);
2820
+ }
2821
+
2770
2822
  if (Popup.blStack.length === 1) {
2771
2823
  _fireBlockLayerStateChange({
2772
2824
  visible: true,
@@ -2786,10 +2838,14 @@ sap.ui.define([
2786
2838
  disconnectBlockLayerAndWithin(oWithinDOMRef);
2787
2839
 
2788
2840
  if ($BlockRef.length) {
2841
+ if (this._bFocusExtenderAdded) {
2842
+ this._bFocusExtenderAdded = false;
2843
+ FocusHandler.removeFocusInfoExtender(this._extendFocusInfo, this);
2844
+ }
2845
+
2789
2846
  // if there are more z-indices this means there are more dialogs stacked
2790
2847
  // up. So redisplay the block layer (with new z-index) under the new
2791
2848
  // current dialog which should be displayed.
2792
-
2793
2849
  if (Popup.blStack.length > 1) {
2794
2850
  Popup.blStack = Popup.blStack.filter(function(oPopupInfo) {
2795
2851
  return oPopupInfo.popup !== that;
@@ -2809,6 +2865,7 @@ sap.ui.define([
2809
2865
  oBlockLayerDomRef.style.visibility = "hidden";
2810
2866
  oBlockLayerDomRef.style.display = "none";
2811
2867
 
2868
+
2812
2869
  _fireBlockLayerStateChange({
2813
2870
  visible: false,
2814
2871
  zIndex: oLastPopupInfo.zIndex
@@ -20,7 +20,8 @@ sap.ui.define([
20
20
  "sap/base/util/extend",
21
21
  "./InvisibleRenderer",
22
22
  "./Patcher",
23
- "./FocusHandler"
23
+ "./FocusHandler",
24
+ "sap/ui/core/Configuration"
24
25
  ], function(
25
26
  LabelEnablement,
26
27
  BaseObject,
@@ -36,7 +37,8 @@ sap.ui.define([
36
37
  extend,
37
38
  InvisibleRenderer,
38
39
  Patcher,
39
- FocusHandler
40
+ FocusHandler,
41
+ Configuration
40
42
  ) {
41
43
 
42
44
  "use strict";
@@ -184,7 +186,7 @@ sap.ui.define([
184
186
  *
185
187
  * @extends Object
186
188
  * @author SAP SE
187
- * @version 1.105.1
189
+ * @version 1.107.0
188
190
  * @alias sap.ui.core.RenderManager
189
191
  * @public
190
192
  */
@@ -1621,7 +1623,7 @@ sap.ui.define([
1621
1623
  * @deprecated Since 1.92. Instead, use the {@link sap.ui.core.Core#getConfiguration} API.
1622
1624
  */
1623
1625
  RenderManager.prototype.getConfiguration = function() {
1624
- return sap.ui.getCore().getConfiguration();
1626
+ return Configuration;
1625
1627
  };
1626
1628
 
1627
1629
  /**
@@ -1756,7 +1758,7 @@ sap.ui.define([
1756
1758
  * @deprecated Since 1.92. Instead use {@link sap.ui.core.RenderManager#accessibilityState} of the {@link sap.ui.core.RenderManager Semantic Rendering API}.
1757
1759
  */
1758
1760
  RenderManager.prototype.writeAccessibilityState = function(oElement, mProps) {
1759
- if (!sap.ui.getCore().getConfiguration().getAccessibility()) {
1761
+ if (!Configuration.getAccessibility()) {
1760
1762
  return this;
1761
1763
  }
1762
1764
 
@@ -2254,8 +2256,14 @@ sap.ui.define([
2254
2256
  if ( candidate === oRootNode || needsPlaceholder(candidate) ) {
2255
2257
  makePlaceholder(candidate);
2256
2258
  }
2259
+
2260
+ FocusHandler.trackFocusForPreservedElement(candidate);
2261
+
2257
2262
  $preserve.append(candidate);
2258
2263
  } else if ( bPreserveNodesWithId && candidate.id ) {
2264
+
2265
+ FocusHandler.trackFocusForPreservedElement(candidate);
2266
+
2259
2267
  RenderManager.markPreservableContent(jQuery(candidate), candidate.id);
2260
2268
  $preserve.append(candidate);
2261
2269
  return;
@@ -10,15 +10,16 @@ sap.ui.define([
10
10
  "sap/base/util/isPlainObject",
11
11
  "sap/base/util/ObjectPath",
12
12
  "sap/base/assert",
13
- "sap/base/util/extend"
14
- ], function(Log, isPlainObject, ObjectPath, assert, extend) {
13
+ "sap/base/util/extend",
14
+ "sap/ui/core/Configuration"
15
+ ], function(Log, isPlainObject, ObjectPath, assert, extend, Configuration) {
15
16
  "use strict";
16
17
 
17
18
  /**
18
19
  * @classdesc Base Class for a Renderer.
19
20
  *
20
21
  * @author SAP SE
21
- * @version 1.105.1
22
+ * @version 1.107.0
22
23
  * @namespace
23
24
  * @public
24
25
  * @alias sap.ui.core.Renderer
@@ -237,7 +238,7 @@ sap.ui.define([
237
238
  var TextDirection = sapUiCore.TextDirection;
238
239
 
239
240
  var sTextAlign = "",
240
- bRTL = sap.ui.getCore().getConfiguration().getRTL();
241
+ bRTL = Configuration.getRTL();
241
242
 
242
243
  switch (oTextAlign) {
243
244
  case TextAlign.End: