@openui5/sap.ui.core 1.97.1 → 1.99.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) hide show
  1. package/.eslintrc.json +92 -2
  2. package/.reuse/dep5 +25 -30
  3. package/THIRDPARTY.txt +14 -21
  4. package/package.json +1 -1
  5. package/src/jquery.sap.global.js +1 -1
  6. package/src/jquery.sap.mobile.js +29 -19
  7. package/src/jquery.sap.properties.js +1 -1
  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 +3 -3
  11. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  12. package/src/sap/base/util/restricted/_castArray.js +1 -1
  13. package/src/sap/base/util/restricted/_compact.js +1 -1
  14. package/src/sap/base/util/restricted/_curry.js +1 -1
  15. package/src/sap/base/util/restricted/_debounce.js +1 -1
  16. package/src/sap/base/util/restricted/_difference.js +1 -1
  17. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  18. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  19. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  20. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  21. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  22. package/src/sap/base/util/restricted/_flatten.js +1 -1
  23. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  24. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  25. package/src/sap/base/util/restricted/_intersection.js +1 -1
  26. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  27. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  28. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  29. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  30. package/src/sap/base/util/restricted/_isNil.js +1 -1
  31. package/src/sap/base/util/restricted/_max.js +1 -1
  32. package/src/sap/base/util/restricted/_merge.js +1 -1
  33. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  34. package/src/sap/base/util/restricted/_min.js +1 -1
  35. package/src/sap/base/util/restricted/_omit.js +1 -1
  36. package/src/sap/base/util/restricted/_pick.js +1 -1
  37. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  38. package/src/sap/base/util/restricted/_throttle.js +1 -1
  39. package/src/sap/base/util/restricted/_toArray.js +1 -1
  40. package/src/sap/base/util/restricted/_union.js +1 -1
  41. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  42. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  43. package/src/sap/base/util/restricted/_uniq.js +1 -1
  44. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  45. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  46. package/src/sap/base/util/restricted/_without.js +1 -1
  47. package/src/sap/base/util/restricted/_xor.js +1 -1
  48. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  49. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  50. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  51. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  52. package/src/sap/ui/Device.js +80 -168
  53. package/src/sap/ui/Global.js +4 -4
  54. package/src/sap/ui/VersionInfo.js +13 -10
  55. package/src/sap/ui/base/BindingParser.js +34 -7
  56. package/src/sap/ui/base/Event.js +1 -1
  57. package/src/sap/ui/base/EventProvider.js +1 -1
  58. package/src/sap/ui/base/Interface.js +1 -1
  59. package/src/sap/ui/base/ManagedObject.js +48 -27
  60. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  61. package/src/sap/ui/base/Metadata.js +1 -1
  62. package/src/sap/ui/base/Object.js +1 -1
  63. package/src/sap/ui/base/ObjectPool.js +1 -1
  64. package/src/sap/ui/core/.library +2 -2
  65. package/src/sap/ui/core/BusyIndicator.js +1 -1
  66. package/src/sap/ui/core/BusyIndicatorUtils.js +1 -1
  67. package/src/sap/ui/core/Component.js +3 -3
  68. package/src/sap/ui/core/ComponentContainer.js +1 -1
  69. package/src/sap/ui/core/ComponentMetadata.js +1 -1
  70. package/src/sap/ui/core/ComponentSupport.js +1 -1
  71. package/src/sap/ui/core/Configuration.js +79 -14
  72. package/src/sap/ui/core/Control.js +3 -2
  73. package/src/sap/ui/core/Core.js +3 -6
  74. package/src/sap/ui/core/CustomData.js +1 -1
  75. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  76. package/src/sap/ui/core/Element.js +5 -7
  77. package/src/sap/ui/core/ElementMetadata.js +1 -1
  78. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  79. package/src/sap/ui/core/EventBus.js +1 -1
  80. package/src/sap/ui/core/ExtensionPoint.js +1 -1
  81. package/src/sap/ui/core/FocusHandler.js +1 -1
  82. package/src/sap/ui/core/Fragment.js +1 -1
  83. package/src/sap/ui/core/HTML.js +1 -1
  84. package/src/sap/ui/core/HTMLRenderer.js +1 -1
  85. package/src/sap/ui/core/History.js +1 -1
  86. package/src/sap/ui/core/Icon.js +2 -3
  87. package/src/sap/ui/core/IconRenderer.js +1 -1
  88. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  89. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  90. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  91. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  92. package/src/sap/ui/core/InvisibleText.js +1 -1
  93. package/src/sap/ui/core/Item.js +1 -1
  94. package/src/sap/ui/core/LabelEnablement.js +9 -2
  95. package/src/sap/ui/core/LayoutData.js +1 -1
  96. package/src/sap/ui/core/ListItem.js +1 -1
  97. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  98. package/src/sap/ui/core/LocalBusyIndicatorRenderer.js +2 -2
  99. package/src/sap/ui/core/LocalBusyIndicatorSupport.js +1 -1
  100. package/src/sap/ui/core/Locale.js +1 -1
  101. package/src/sap/ui/core/LocaleData.js +37 -2
  102. package/src/sap/ui/core/Manifest.js +1 -1
  103. package/src/sap/ui/core/Message.js +1 -1
  104. package/src/sap/ui/core/Placeholder.js +28 -28
  105. package/src/sap/ui/core/Popup.js +3 -3
  106. package/src/sap/ui/core/RenderManager.js +1 -1
  107. package/src/sap/ui/core/Renderer.js +1 -1
  108. package/src/sap/ui/core/ResizeHandler.js +1 -1
  109. package/src/sap/ui/core/ScrollBar.js +1 -1
  110. package/src/sap/ui/core/ScrollBarRenderer.js +1 -1
  111. package/src/sap/ui/core/SeparatorItem.js +1 -1
  112. package/src/sap/ui/core/Title.js +1 -1
  113. package/src/sap/ui/core/TooltipBase.js +2 -2
  114. package/src/sap/ui/core/UIArea.js +1 -1
  115. package/src/sap/ui/core/UIComponent.js +1 -1
  116. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  117. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  118. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  119. package/src/sap/ui/core/XMLComposite.js +1 -1
  120. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  121. package/src/sap/ui/core/_IconRegistry.js +10 -1
  122. package/src/sap/ui/core/date/Japanese.js +1 -1
  123. package/src/sap/ui/core/date/UniversalDateUtils.js +175 -5
  124. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  125. package/src/sap/ui/core/delegate/ScrollEnablement.js +9 -6
  126. package/src/sap/ui/core/dnd/DragAndDrop.js +2 -2
  127. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  128. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  129. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  130. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  131. package/src/sap/ui/core/format/DateFormat.js +562 -174
  132. package/src/sap/ui/core/format/DateFormatTimezoneDisplay.js +43 -0
  133. package/src/sap/ui/core/format/ListFormat.js +2 -2
  134. package/src/sap/ui/core/format/NumberFormat.js +190 -56
  135. package/src/sap/ui/core/format/TimezoneUtil.js +248 -0
  136. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  137. package/src/sap/ui/core/library.js +45 -8
  138. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  139. package/src/sap/ui/core/message/Message.js +1 -1
  140. package/src/sap/ui/core/message/MessageManager.js +1 -1
  141. package/src/sap/ui/core/message/MessageMixin.js +2 -1
  142. package/src/sap/ui/core/message/MessageParser.js +1 -1
  143. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  144. package/src/sap/ui/core/messagebundle.properties +4 -0
  145. package/src/sap/ui/core/messagebundle_ar.properties +2 -0
  146. package/src/sap/ui/core/messagebundle_bg.properties +7 -5
  147. package/src/sap/ui/core/messagebundle_ca.properties +2 -0
  148. package/src/sap/ui/core/messagebundle_cs.properties +2 -0
  149. package/src/sap/ui/core/messagebundle_cy.properties +2 -0
  150. package/src/sap/ui/core/messagebundle_da.properties +2 -0
  151. package/src/sap/ui/core/messagebundle_de.properties +3 -1
  152. package/src/sap/ui/core/messagebundle_el.properties +2 -0
  153. package/src/sap/ui/core/messagebundle_en.properties +2 -0
  154. package/src/sap/ui/core/messagebundle_en_GB.properties +2 -0
  155. package/src/sap/ui/core/messagebundle_en_US_sappsd.properties +2 -0
  156. package/src/sap/ui/core/messagebundle_en_US_saprigi.properties +1 -0
  157. package/src/sap/ui/core/messagebundle_en_US_saptrc.properties +2 -0
  158. package/src/sap/ui/core/messagebundle_es.properties +2 -0
  159. package/src/sap/ui/core/messagebundle_es_MX.properties +2 -0
  160. package/src/sap/ui/core/messagebundle_et.properties +2 -0
  161. package/src/sap/ui/core/messagebundle_fi.properties +2 -0
  162. package/src/sap/ui/core/messagebundle_fr.properties +2 -0
  163. package/src/sap/ui/core/messagebundle_fr_CA.properties +2 -0
  164. package/src/sap/ui/core/messagebundle_hi.properties +2 -0
  165. package/src/sap/ui/core/messagebundle_hr.properties +2 -0
  166. package/src/sap/ui/core/messagebundle_hu.properties +2 -0
  167. package/src/sap/ui/core/messagebundle_id.properties +4 -2
  168. package/src/sap/ui/core/messagebundle_it.properties +3 -1
  169. package/src/sap/ui/core/messagebundle_iw.properties +2 -0
  170. package/src/sap/ui/core/messagebundle_ja.properties +2 -0
  171. package/src/sap/ui/core/messagebundle_kk.properties +2 -0
  172. package/src/sap/ui/core/messagebundle_ko.properties +2 -0
  173. package/src/sap/ui/core/messagebundle_lt.properties +2 -0
  174. package/src/sap/ui/core/messagebundle_lv.properties +3 -1
  175. package/src/sap/ui/core/messagebundle_ms.properties +2 -0
  176. package/src/sap/ui/core/messagebundle_nl.properties +2 -0
  177. package/src/sap/ui/core/messagebundle_no.properties +6 -4
  178. package/src/sap/ui/core/messagebundle_pl.properties +2 -0
  179. package/src/sap/ui/core/messagebundle_pt.properties +2 -0
  180. package/src/sap/ui/core/messagebundle_pt_PT.properties +2 -0
  181. package/src/sap/ui/core/messagebundle_ro.properties +2 -0
  182. package/src/sap/ui/core/messagebundle_ru.properties +2 -0
  183. package/src/sap/ui/core/messagebundle_sh.properties +2 -0
  184. package/src/sap/ui/core/messagebundle_sk.properties +2 -0
  185. package/src/sap/ui/core/messagebundle_sl.properties +2 -0
  186. package/src/sap/ui/core/messagebundle_sv.properties +2 -0
  187. package/src/sap/ui/core/messagebundle_th.properties +2 -0
  188. package/src/sap/ui/core/messagebundle_tr.properties +2 -0
  189. package/src/sap/ui/core/messagebundle_uk.properties +2 -0
  190. package/src/sap/ui/core/messagebundle_vi.properties +2 -0
  191. package/src/sap/ui/core/messagebundle_zh_CN.properties +2 -0
  192. package/src/sap/ui/core/messagebundle_zh_TW.properties +2 -0
  193. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  194. package/src/sap/ui/core/mvc/HTMLViewRenderer.js +1 -1
  195. package/src/sap/ui/core/mvc/JSONView.js +2 -1
  196. package/src/sap/ui/core/mvc/JSONViewRenderer.js +1 -1
  197. package/src/sap/ui/core/mvc/JSView.js +1 -1
  198. package/src/sap/ui/core/mvc/JSViewRenderer.js +1 -1
  199. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  200. package/src/sap/ui/core/mvc/TemplateViewRenderer.js +1 -1
  201. package/src/sap/ui/core/mvc/View.js +2 -1
  202. package/src/sap/ui/core/mvc/ViewRenderer.js +1 -1
  203. package/src/sap/ui/core/mvc/XMLView.js +16 -3
  204. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  205. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  206. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  207. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  208. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  209. package/src/sap/ui/core/routing/Route.js +6 -6
  210. package/src/sap/ui/core/routing/Router.js +4 -3
  211. package/src/sap/ui/core/routing/Targets.js +17 -13
  212. package/src/sap/ui/core/rules/Model.support.js +95 -8
  213. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  214. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  215. package/src/sap/ui/core/service/Service.js +1 -1
  216. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  217. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  218. package/src/sap/ui/core/support/Plugin.js +1 -1
  219. package/src/sap/ui/core/support/Support.js +1 -1
  220. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  221. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  222. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  223. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  224. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  225. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  226. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  227. package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
  228. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +1 -5
  229. package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
  230. package/src/sap/ui/core/themes/base/parameterClasses.less +21 -21
  231. package/src/sap/ui/core/theming/Parameters.js +22 -142
  232. package/src/sap/ui/core/theming/ThemeHelper.js +26 -37
  233. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  234. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  235. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  236. package/src/sap/ui/core/tmpl/Template.js +1 -1
  237. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  238. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  239. package/src/sap/ui/core/util/DraftEnabledMockServer.js +21 -16
  240. package/src/sap/ui/core/util/Export.js +1 -1
  241. package/src/sap/ui/core/util/ExportCell.js +1 -1
  242. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  243. package/src/sap/ui/core/util/ExportRow.js +1 -1
  244. package/src/sap/ui/core/util/ExportType.js +1 -1
  245. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  246. package/src/sap/ui/core/util/File.js +1 -1
  247. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  248. package/src/sap/ui/core/util/MockServer.js +156 -57
  249. package/src/sap/ui/core/util/PasteHelper.js +4 -4
  250. package/src/sap/ui/core/util/XMLPreprocessor.js +16 -4
  251. package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +4 -0
  252. package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +26 -16
  253. package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +1 -1
  254. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  255. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  256. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  257. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  258. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  259. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  260. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  261. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  262. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  263. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  264. package/src/sap/ui/debug/ControlTree.js +1 -1
  265. package/src/sap/ui/debug/DebugEnv.js +1 -1
  266. package/src/sap/ui/debug/PropertyList.js +1 -1
  267. package/src/sap/ui/dom/includeStylesheet.js +8 -3
  268. package/src/sap/ui/events/jquery/EventExtension.js +1 -1
  269. package/src/sap/ui/events/jquery/EventSimulation.js +3 -13
  270. package/src/sap/ui/model/Binding.js +4 -3
  271. package/src/sap/ui/model/ClientModel.js +1 -1
  272. package/src/sap/ui/model/ClientTreeBinding.js +1 -1
  273. package/src/sap/ui/model/CompositeBinding.js +1 -1
  274. package/src/sap/ui/model/CompositeDataState.js +26 -4
  275. package/src/sap/ui/model/CompositeType.js +1 -1
  276. package/src/sap/ui/model/ContextBinding.js +1 -1
  277. package/src/sap/ui/model/DataState.js +27 -6
  278. package/src/sap/ui/model/ListBinding.js +2 -2
  279. package/src/sap/ui/model/MetaModel.js +2 -3
  280. package/src/sap/ui/model/Model.js +2 -2
  281. package/src/sap/ui/model/SelectionModel.js +1 -1
  282. package/src/sap/ui/model/SimpleType.js +1 -1
  283. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  284. package/src/sap/ui/model/Type.js +1 -1
  285. package/src/sap/ui/model/analytics/AnalyticalBinding.js +40 -30
  286. package/src/sap/ui/model/analytics/ODataModelAdapter.js +2 -15
  287. package/src/sap/ui/model/base/ManagedObjectModel.js +1 -1
  288. package/src/sap/ui/model/json/JSONListBinding.js +1 -1
  289. package/src/sap/ui/model/json/JSONModel.js +1 -1
  290. package/src/sap/ui/model/json/JSONPropertyBinding.js +1 -1
  291. package/src/sap/ui/model/message/MessageListBinding.js +1 -1
  292. package/src/sap/ui/model/message/MessageModel.js +1 -1
  293. package/src/sap/ui/model/message/MessagePropertyBinding.js +1 -1
  294. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  295. package/src/sap/ui/model/odata/ODataListBinding.js +1 -1
  296. package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
  297. package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
  298. package/src/sap/ui/model/odata/ODataMetadata.js +3 -3
  299. package/src/sap/ui/model/odata/ODataModel.js +2 -2
  300. package/src/sap/ui/model/odata/ODataTreeBinding.js +1 -1
  301. package/src/sap/ui/model/odata/_AnnotationHelperBasics.js +1 -1
  302. package/src/sap/ui/model/odata/_AnnotationHelperExpression.js +1 -1
  303. package/src/sap/ui/model/odata/_ODataMetaModelUtils.js +1 -1
  304. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  305. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  306. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  307. package/src/sap/ui/model/odata/type/Date.js +1 -1
  308. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  309. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  310. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  311. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +338 -0
  312. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  313. package/src/sap/ui/model/odata/type/Double.js +1 -1
  314. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  315. package/src/sap/ui/model/odata/type/Int.js +1 -1
  316. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  317. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  318. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  319. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  320. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  321. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  322. package/src/sap/ui/model/odata/type/Single.js +1 -1
  323. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  324. package/src/sap/ui/model/odata/type/String.js +1 -1
  325. package/src/sap/ui/model/odata/type/Time.js +1 -1
  326. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  327. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  328. package/src/sap/ui/model/odata/type/UnitMixin.js +1 -1
  329. package/src/sap/ui/model/odata/v2/Context.js +57 -4
  330. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  331. package/src/sap/ui/model/odata/v2/ODataContextBinding.js +8 -4
  332. package/src/sap/ui/model/odata/v2/ODataListBinding.js +216 -87
  333. package/src/sap/ui/model/odata/v2/ODataModel.js +89 -50
  334. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +6 -4
  335. package/src/sap/ui/model/odata/v2/_CreatedContextsCache.js +65 -5
  336. package/src/sap/ui/model/odata/v4/AnnotationHelper.js +21 -22
  337. package/src/sap/ui/model/odata/v4/Context.js +208 -83
  338. package/src/sap/ui/model/odata/v4/ODataBinding.js +53 -27
  339. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +252 -218
  340. package/src/sap/ui/model/odata/v4/ODataListBinding.js +395 -233
  341. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +131 -100
  342. package/src/sap/ui/model/odata/v4/ODataModel.js +341 -259
  343. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +85 -85
  344. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +85 -79
  345. package/src/sap/ui/model/odata/v4/ODataUtils.js +5 -5
  346. package/src/sap/ui/model/odata/v4/SubmitMode.js +0 -1
  347. package/src/sap/ui/model/odata/v4/ValueListType.js +0 -1
  348. package/src/sap/ui/model/odata/v4/_AnnotationHelperExpression.js +20 -20
  349. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +3 -5
  350. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +5 -4
  351. package/src/sap/ui/model/odata/v4/lib/_Batch.js +21 -20
  352. package/src/sap/ui/model/odata/v4/lib/_Cache.js +183 -103
  353. package/src/sap/ui/model/odata/v4/lib/_GroupLock.js +1 -1
  354. package/src/sap/ui/model/odata/v4/lib/_Helper.js +22 -18
  355. package/src/sap/ui/model/odata/v4/lib/_MetadataConverter.js +62 -61
  356. package/src/sap/ui/model/odata/v4/lib/_MetadataRequestor.js +1 -1
  357. package/src/sap/ui/model/odata/v4/lib/_Parser.js +52 -43
  358. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +54 -43
  359. package/src/sap/ui/model/odata/v4/lib/_V2MetadataConverter.js +147 -147
  360. package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +14 -13
  361. package/src/sap/ui/model/odata/v4/lib/_V4MetadataConverter.js +66 -67
  362. package/src/sap/ui/model/resource/ResourceModel.js +1 -1
  363. package/src/sap/ui/model/resource/ResourcePropertyBinding.js +1 -1
  364. package/src/sap/ui/model/type/Boolean.js +1 -1
  365. package/src/sap/ui/model/type/Currency.js +1 -1
  366. package/src/sap/ui/model/type/Date.js +1 -1
  367. package/src/sap/ui/model/type/DateInterval.js +1 -1
  368. package/src/sap/ui/model/type/DateTime.js +1 -1
  369. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  370. package/src/sap/ui/model/type/FileSize.js +1 -1
  371. package/src/sap/ui/model/type/Float.js +1 -1
  372. package/src/sap/ui/model/type/Integer.js +1 -1
  373. package/src/sap/ui/model/type/String.js +1 -1
  374. package/src/sap/ui/model/type/Time.js +1 -1
  375. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  376. package/src/sap/ui/model/type/Unit.js +1 -1
  377. package/src/sap/ui/model/xml/XMLListBinding.js +1 -1
  378. package/src/sap/ui/model/xml/XMLModel.js +1 -1
  379. package/src/sap/ui/model/xml/XMLPropertyBinding.js +1 -1
  380. package/src/sap/ui/performance/trace/Passport.js +3 -3
  381. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  382. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  383. package/src/sap/ui/test/BlanketReporter.js +1 -1
  384. package/src/sap/ui/test/Opa5.js +1 -1
  385. package/src/sap/ui/test/TestUtils.js +2 -2
  386. package/src/sap/ui/test/_LogCollector.js +1 -1
  387. package/src/sap/ui/test/actions/Action.js +4 -2
  388. package/src/sap/ui/test/actions/Press.js +51 -2
  389. package/src/sap/ui/test/autowaiter/_XHRWaiter.js +1 -1
  390. package/src/sap/ui/test/starter/createSuite.js +3 -3
  391. package/src/sap/ui/thirdparty/IPv6.js +1 -1
  392. package/src/sap/ui/thirdparty/SecondLevelDomains.js +1 -1
  393. package/src/sap/ui/thirdparty/URI.js +7 -3
  394. package/src/sap/ui/thirdparty/URITemplate.js +1 -1
  395. package/src/sap/ui/thirdparty/jquery-mobile-custom.js +3 -6
  396. package/src/sap/ui/thirdparty/jqueryui/jquery-ui-datepicker.js +143 -3
  397. package/src/sap/ui/thirdparty/jqueryui/jquery-ui-position.js +8 -1
  398. package/src/sap/ui/thirdparty/jszip.js +18 -7
  399. package/src/sap/ui/thirdparty/mobify-carousel.js +1 -1
  400. package/src/sap/ui/util/Mobile.js +17 -0
  401. package/src/sap/ui/util/Storage.js +1 -1
  402. package/src/sap/ui/util/XMLHelper.js +53 -30
  403. package/src/ui5loader.js +4 -4
@@ -266,7 +266,7 @@ sap.ui.define([
266
266
  *
267
267
  * @extends sap.ui.base.EventProvider
268
268
  * @author SAP SE
269
- * @version 1.97.1
269
+ * @version 1.99.1
270
270
  * @public
271
271
  * @alias sap.ui.base.ManagedObject
272
272
  */
@@ -556,6 +556,9 @@ sap.ui.define([
556
556
 
557
557
  }, /* Metadata constructor */ ManagedObjectMetadata);
558
558
 
559
+ // Marker to not 'forget' ui5Objects
560
+ var sUI5ObjectMarker = Symbol("ui5object");
561
+
559
562
  /**
560
563
  * Returns the metadata for the ManagedObject class.
561
564
  *
@@ -657,14 +660,13 @@ sap.ui.define([
657
660
  * <li><code>byValue: <i>boolean</i></code> (either can be omitted or set to the boolean value <code>true</code>)
658
661
  * If set to <code>true</code>, the property value will be {@link module:sap/base/util/deepClone deep cloned}
659
662
  * on write and read operations to ensure that the internal value can't be modified by the outside. The property
660
- * <code>byValue</code> is currently limited to a <code>boolean</code> value. Other types are reserved for future
663
+ * <code>byValue</code> is currently restricted to a <code>boolean</code> value. Other types are reserved for future
661
664
  * use. Class definitions must only use boolean values for the flag (or omit it), but readers of ManagedObject
662
665
  * metadata should handle any truthy value as <code>true</code> to be future safe.
663
666
  * Note that using <code>byValue:true</code> has a performance impact on property access and therefore should be
664
667
  * used carefully. It also doesn't make sense to set this option for properties with a primitive type (they have
665
- * value semantic anyhow) or for properties with arrays of primitive types (they have been cloned already in the
666
- * past with a cheaper implementation). Future versions of UI5 might encourage this as a limitation during class
667
- * definition.
668
+ * value semantic anyhow) or for properties with arrays of primitive types (they are already cloned
669
+ * with a less expensive implementation).
668
670
  * <li><code>group:<i>string</i></code> a semantic grouping of the properties, intended to be used in design time tools.
669
671
  * Allowed values are (case sensitive): Accessibility, Appearance, Behavior, Data, Designtime, Dimension, Identification, Misc</li>
670
672
  * <li><code>defaultValue: <i>any</i></code> the default value for the property or null if there is no defaultValue.</li>
@@ -2934,6 +2936,9 @@ sap.ui.define([
2934
2936
  if (oValue.Type) {
2935
2937
  // if value contains the 'Type' property (capital 'T'), this is not a binding info.
2936
2938
  return undefined;
2939
+ } else if (oValue[sUI5ObjectMarker]) {
2940
+ // no bindingInfo, delete marker
2941
+ delete oValue[sUI5ObjectMarker];
2937
2942
  } else if (oValue.ui5object) {
2938
2943
  // if value contains ui5object property, this is not a binding info,
2939
2944
  // remove it and not check for path or parts property
@@ -2977,6 +2982,32 @@ sap.ui.define([
2977
2982
  return this.mBindingInfos[sName];
2978
2983
  };
2979
2984
 
2985
+ /**
2986
+ * Configuration for the binding of a managed object
2987
+ *
2988
+ * <code>path</code> is the only mandatory property, all others are optional.
2989
+ *
2990
+ * @typedef {object} sap.ui.base.ManagedObject.ObjectBindingInfo
2991
+ *
2992
+ * @property {string} path
2993
+ * Path in the model to bind to, either an absolute path or relative to the binding context for the
2994
+ * corresponding model. If the path contains a '&gt;' sign, the string preceding it will override
2995
+ * the <code>model</code> property, and the remainder after the '&gt;' sign will be used as binding path
2996
+ * @property {string} [model]
2997
+ * Name of the model to bind against; when <code>undefined</code> or omitted, the default model is used
2998
+ * @property {boolean} [suspended]
2999
+ * Whether the binding is initially suspended
3000
+ * @property {object} [parameters]
3001
+ * Map of additional parameters for this binding; the names and value ranges of the supported
3002
+ * parameters depend on the model implementation and should be documented with the
3003
+ * <code>bindContext</code> method of the corresponding model class or with the model-specific
3004
+ * subclass of <code>sap.ui.model.ContextBinding</code>
3005
+ * @property {Object<string,function>} [events]
3006
+ * Map of event handler functions keyed by the name of the binding events that they are attached to
3007
+ *
3008
+ * @public
3009
+ */
3010
+
2980
3011
  /**
2981
3012
  * Bind the object to the referenced entity in the model.
2982
3013
  *
@@ -2997,23 +3028,8 @@ sap.ui.define([
2997
3028
  *
2998
3029
  * Also see {@link topic:91f05e8b6f4d1014b6dd926db0e91070 Context Binding} in the documentation.
2999
3030
  *
3000
- * @param {object} oBindingInfo
3001
- * An object describing the binding
3002
- * @param {string} oBindingInfo.path
3003
- * Path in the model to bind to, either an absolute path or relative to the binding context for the
3004
- * corresponding model; when the path contains a '&gt;' sign, the string preceding it will override
3005
- * the <code>model</code> property and the remainder after the '&gt;' will be used as binding path
3006
- * @param {string} [oBindingInfo.model]
3007
- * Name of the model to bind against; when <code>undefined</code> or omitted, the default model is used
3008
- * @param {object} [oBindingInfo.parameters=null]
3009
- * Map of additional parameters for this binding; the names and value ranges of the supported parameters
3010
- * depend on the model implementation, they should be documented with the <code>bindContext</code>
3011
- * method of the corresponding model class or with the model specific subclass of
3012
- * <code>sap.ui.model.ContextBinding</code>
3013
- * @param {boolean} [oBindingInfo.suspended=false]
3014
- * Whether the binding should be suspended initially
3015
- * @param {object} [oBindingInfo.events=null]
3016
- * Map of event handler functions keyed by the name of the binding events that they should be attached to
3031
+ * @param {sap.ui.base.ManagedObject.ObjectBindingInfo} oBindingInfo
3032
+ * Binding info
3017
3033
  * @returns {this}
3018
3034
  * Returns <code>this</code> to allow method chaining
3019
3035
  * @public
@@ -3064,7 +3080,7 @@ sap.ui.define([
3064
3080
  /**
3065
3081
  * Create object binding.
3066
3082
  *
3067
- * @param {object} oBindingInfo The bindingInfo object
3083
+ * @param {sap.ui.base.ManagedObject.ObjectBindingInfo} oBindingInfo The bindingInfo object
3068
3084
  * @private
3069
3085
  */
3070
3086
  ManagedObject.prototype._bindObject = function(oBindingInfo) {
@@ -4242,7 +4258,6 @@ sap.ui.define([
4242
4258
  * is called and the method implementation might rely on those conditions.
4243
4259
  *
4244
4260
  * @param {string} sName name of the aggregation to refresh
4245
- * @param {sap.ui.model.ChangeReason} sChangeReason the change reason
4246
4261
  * @protected
4247
4262
  */
4248
4263
  ManagedObject.prototype.refreshAggregation = function(sName) {
@@ -4811,8 +4826,8 @@ sap.ui.define([
4811
4826
  /**
4812
4827
  * Calls a registered listener during propagation
4813
4828
  *
4814
- * @param {string|boolean} sName If set true all listeners will be called.
4815
- * If a name is specified only the listener for this name is called
4829
+ * @param {function} listener
4830
+ * If given, the given function will be called, other wise all propagation listeners will be called.
4816
4831
  * @returns {this} Returns <code>this</code> to allow method chaining
4817
4832
  * @private
4818
4833
  */
@@ -5082,6 +5097,7 @@ sap.ui.define([
5082
5097
 
5083
5098
  // Clone properties (only those with non-default value)
5084
5099
  var aKeys = Object.keys(mProps);
5100
+ var vValue;
5085
5101
  i = aKeys.length;
5086
5102
  while ( i > 0 ) {
5087
5103
  sKey = aKeys[--i];
@@ -5092,7 +5108,12 @@ sap.ui.define([
5092
5108
  if (typeof mProps[sKey] === "string") {
5093
5109
  mSettings[sKey] = escape(mProps[sKey]);
5094
5110
  } else {
5095
- mSettings[sKey] = oProperty.byValue ? deepClone(mProps[sKey]) : mProps[sKey];
5111
+ vValue = oProperty.byValue ? deepClone(mProps[sKey]) : mProps[sKey];
5112
+ if (vValue && typeof vValue === "object" && !Object.isFrozen(vValue)) {
5113
+ //mark objects to not interpret it as bindingInfos
5114
+ vValue[sUI5ObjectMarker] = true;
5115
+ }
5116
+ mSettings[sKey] = vValue;
5096
5117
  }
5097
5118
  }
5098
5119
  }
@@ -73,7 +73,7 @@ function(
73
73
  *
74
74
  *
75
75
  * @author Frank Weigel
76
- * @version 1.97.1
76
+ * @version 1.99.1
77
77
  * @since 0.8.6
78
78
  * @alias sap.ui.base.ManagedObjectMetadata
79
79
  * @extends sap.ui.base.Metadata
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  *
27
27
  * @class Metadata for a class.
28
28
  * @author Frank Weigel
29
- * @version 1.97.1
29
+ * @version 1.99.1
30
30
  * @since 0.8.6
31
31
  * @public
32
32
  * @alias sap.ui.base.Metadata
@@ -26,7 +26,7 @@ sap.ui.define(['./Metadata', "sap/base/Log"],
26
26
  * @class Base class for all SAPUI5 Objects.
27
27
  * @abstract
28
28
  * @author Malte Wedel
29
- * @version 1.97.1
29
+ * @version 1.99.1
30
30
  * @public
31
31
  * @alias sap.ui.base.Object
32
32
  * @throws {Error} When an instance of the class or its subclasses is created without the <code>new</code> operator.
@@ -59,7 +59,7 @@ sap.ui.define(['./Object'],
59
59
  *
60
60
  * @extends sap.ui.base.Object
61
61
  * @author SAP SE
62
- * @version 1.97.1
62
+ * @version 1.99.1
63
63
  * @alias sap.ui.base.ObjectPool
64
64
  * @public
65
65
  */
@@ -6,7 +6,7 @@
6
6
  <copyright>OpenUI5
7
7
  * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.97.1</version>
9
+ <version>1.99.1</version>
10
10
 
11
11
  <documentation>The SAPUI5 Core Runtime.
12
12
 
@@ -381,7 +381,7 @@
381
381
  <copyright>2010-2011, Christian Johansen</copyright>
382
382
  <pattern>sap/ui/thirdparty/sinon-qunit.js</pattern>
383
383
  </lib>
384
- <lib name="urijs" displayName="URI.js" version="1.19.7" homepage="http://medialize.github.com/URI.js/">
384
+ <lib name="urijs" displayName="URI.js" version="1.19.10" homepage="http://medialize.github.com/URI.js/">
385
385
  <license url="http://opensource.org/licenses/mit-license" type="MIT" />
386
386
  <copyright>Rodney Rehm</copyright>
387
387
  <pattern>sap/ui/thirdparty/URI.js</pattern>
@@ -38,7 +38,7 @@ sap.ui.define([
38
38
  * Provides methods to show or hide a waiting animation covering the whole
39
39
  * page and blocking user interaction.
40
40
  * @namespace
41
- * @version 1.97.1
41
+ * @version 1.99.1
42
42
  * @public
43
43
  * @alias sap.ui.core.BusyIndicator
44
44
  */
@@ -24,7 +24,7 @@ sap.ui.define(['./BlockLayerUtils'], //require of sap/ui/core/library not possib
24
24
  * styling + animation: LocalBusyIndicator.less
25
25
  *
26
26
  * @param {string} sSize either "Large" or "Medium". Other sizes will be mapped to "Medium"
27
- * @returns {DOM.element} the element for the busy indicator
27
+ * @returns {Element} the element for the busy indicator
28
28
  * @private
29
29
  * @ui5-restricted sap.ui.core, sap.chart
30
30
  */
@@ -228,7 +228,7 @@ sap.ui.define([
228
228
  * @extends sap.ui.base.ManagedObject
229
229
  * @abstract
230
230
  * @author SAP SE
231
- * @version 1.97.1
231
+ * @version 1.99.1
232
232
  * @alias sap.ui.core.Component
233
233
  * @since 1.9.2
234
234
  */
@@ -423,11 +423,11 @@ sap.ui.define([
423
423
  * @param {object} mOptions.type Either <code>sap.ui.viewExtension</code>, <code>sap.ui.controllerReplacement</code>, <code>sap.ui.viewReplacement</code>, <code>sap.ui.viewModification</code> or <code>sap.ui.controllerExtension</code>
424
424
  * @param {object} mOptions.name Name of the customizing configuration
425
425
  * @param {object} [mOptions.extensionName] If type <code>sap.ui.viewExtension</code>, the extension name must be provided
426
- * @param {object} oExtInfo Config object containing the view/fragment and extension name
427
426
  * @throws {Error} If 'getExtensionComponent' function is given, but does not return an instance.
428
427
  * @returns {object|undefined} Object containing the customizing config or <code>undefined</code>
429
428
  * @static
430
- * @private ui5-restricted sap.ui.core
429
+ * @private
430
+ * @ui5-restricted sap.ui.core
431
431
  */
432
432
  Component.getCustomizing = function(vObject, mOptions) {
433
433
  var sType = mOptions.type,
@@ -59,7 +59,7 @@ sap.ui.define([
59
59
  * See also {@link module:sap/ui/core/ComponentSupport}.
60
60
  *
61
61
  * @extends sap.ui.core.Control
62
- * @version 1.97.1
62
+ * @version 1.99.1
63
63
  *
64
64
  * @public
65
65
  * @alias sap.ui.core.ComponentContainer
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @public
37
37
  * @class
38
38
  * @author SAP SE
39
- * @version 1.97.1
39
+ * @version 1.99.1
40
40
  * @since 1.9.2
41
41
  * @alias sap.ui.core.ComponentMetadata
42
42
  * @extends sap.ui.base.ManagedObjectMetadata
@@ -97,7 +97,7 @@ sap.ui.define([
97
97
  * @author SAP SE
98
98
  * @public
99
99
  * @since 1.58.0
100
- * @version 1.97.1
100
+ * @version 1.99.1
101
101
  * @namespace
102
102
  * @alias module:sap/ui/core/ComponentSupport
103
103
  */
@@ -11,6 +11,7 @@ sap.ui.define([
11
11
  '../base/Object',
12
12
  './CalendarType',
13
13
  './Locale',
14
+ "./format/TimezoneUtil",
14
15
  'sap/ui/thirdparty/URI',
15
16
  "sap/base/util/UriParameters",
16
17
  "sap/base/util/deepEqual",
@@ -26,6 +27,7 @@ sap.ui.define([
26
27
  BaseObject,
27
28
  CalendarType,
28
29
  Locale,
30
+ TimezoneUtil,
29
31
  URI,
30
32
  UriParameters,
31
33
  deepEqual,
@@ -101,12 +103,12 @@ sap.ui.define([
101
103
  var M_SETTINGS = {
102
104
  "theme" : { type : "string", defaultValue : "base" },
103
105
  "language" : { type : "Locale", defaultValue : detectLanguage() },
106
+ "timezone" : { type : "string", defaultValue : TimezoneUtil.getLocalTimezone() },
104
107
  "formatLocale" : { type : "Locale", defaultValue : null },
105
108
  "calendarType" : { type : "string", defaultValue : null },
106
109
  "trailingCurrencyCode" : { type : "boolean", defaultValue : true },
107
- // "timezone" : "UTC",
108
110
  "accessibility" : { type : "boolean", defaultValue : true },
109
- "autoAriaBodyRole" : { type : "boolean", defaultValue : false, noUrl:true }, //whether the framework automatically adds automatically the ARIA role 'application' to the html body
111
+ "autoAriaBodyRole" : { type : "boolean", defaultValue : false, noUrl:true }, //whether the framework automatically adds the ARIA role 'application' to the html body
110
112
  "animation" : { type : "boolean", defaultValue : true }, // deprecated, please use animationMode
111
113
  "animationMode" : { type : Configuration.AnimationMode, defaultValue : undefined }, // If no value is provided, animationMode will be set on instantiation depending on the animation setting.
112
114
  "rtl" : { type : "boolean", defaultValue : null },
@@ -145,7 +147,6 @@ sap.ui.define([
145
147
  "xx-appCacheBusterHooks": { type : "object", defaultValue : undefined, noUrl:true }, // e.g.: { handleURL: fn, onIndexLoad: fn, onIndexLoaded: fn }
146
148
  "xx-disableCustomizing" : { type : "boolean", defaultValue : false, noUrl:true },
147
149
  "xx-viewCache" : { type : "boolean", defaultValue : true },
148
- "xx-test-mobile" : { type : "boolean", defaultValue : false },
149
150
  "xx-depCache" : { type : "boolean", defaultValue : false },
150
151
  "xx-libraryPreloadFiles": { type : "string[]", defaultValue : [] },
151
152
  "xx-componentPreload" : { type : "string", defaultValue : "" },
@@ -163,7 +164,6 @@ sap.ui.define([
163
164
  "xx-waitForTheme" : { type : "string", defaultValue : ""}, // rendering|init
164
165
  "xx-hyphenation" : { type : "string", defaultValue : ""}, // (empty string)|native|thirdparty|disable
165
166
  "xx-flexBundleRequestForced" : { type : "boolean", defaultValue : false },
166
- // TODO: check and remove "xx-cssVariables" value after tooling also support CSS variables if possible
167
167
  "xx-cssVariables" : { type : "string", defaultValue : "false" }, // false|true|additional (additional just includes the css_variables.css in addition)
168
168
  "statistics" : { type : "boolean", defaultValue : false }
169
169
  };
@@ -373,6 +373,15 @@ sap.ui.define([
373
373
  }
374
374
  }
375
375
 
376
+ if (oUriParams.has('sap-timezone')) {
377
+ // validate the IANA timezone ID, but do not trigger a localizationChanged event
378
+ // because the initialization should not trigger a "*Changed" event
379
+ var sTimezone = oUriParams.get('sap-timezone');
380
+ if (checkTimezone(sTimezone)) {
381
+ this.timezone = sTimezone;
382
+ }
383
+ }
384
+
376
385
  if (oUriParams.has('sap-theme')) {
377
386
  var sValue = oUriParams.get('sap-theme');
378
387
  if (sValue === "") {
@@ -634,7 +643,7 @@ sap.ui.define([
634
643
  /**
635
644
  * Returns a string that identifies the current language.
636
645
  *
637
- * The value returned by this methods in most cases corresponds to the exact value that has been
646
+ * The value returned by this method in most cases corresponds to the exact value that has been
638
647
  * configured by the user or application or that has been determined from the user agent settings.
639
648
  * It has not been normalized, but has been validated against a relaxed version of
640
649
  * {@link http://www.ietf.org/rfc/bcp/bcp47.txt BCP47}, allowing underscores ('_') instead of the
@@ -694,6 +703,18 @@ sap.ui.define([
694
703
  return (this.sapLogonLanguage && this.sapLogonLanguage.toUpperCase()) || this.language.getSAPLogonLanguage();
695
704
  },
696
705
 
706
+ /**
707
+ * Retrieves the configured IANA timezone ID
708
+ *
709
+ * @returns {string} The configured IANA timezone ID, e.g. "America/New_York"
710
+ * @public
711
+ * @since 1.99.0
712
+ * @experimental As of version 1.99.0, time zones are currently not supported by all controls.
713
+ */
714
+ getTimezone : function () {
715
+ return this.timezone;
716
+ },
717
+
697
718
  /**
698
719
  * Sets a new language to be used from now on for language/region dependent
699
720
  * functionality (e.g. formatting, data types, translated texts, ...).
@@ -780,6 +801,36 @@ sap.ui.define([
780
801
  return this;
781
802
  },
782
803
 
804
+ /**
805
+ * Sets the timezone such that all date and time based calculations use this timezone.
806
+ *
807
+ * When the timezone has changed, the Core will fire its
808
+ * {@link sap.ui.core.Core#event:localizationChanged localizationChanged} event.
809
+ *
810
+ * @param {string|null} [sTimezone] IANA timezone ID, e.g. "America/New_York". Use <code>null</code> to reset the timezone to the browser's local timezone.
811
+ * An invalid IANA timezone ID will fall back to the browser's timezone.
812
+ * @public
813
+ * @return {this} <code>this</code> to allow method chaining
814
+ * @since 1.99.0
815
+ * @experimental As of version 1.99.0, time zones are currently not supported by all controls.
816
+ */
817
+ setTimezone : function (sTimezone) {
818
+ check(sTimezone == null || typeof sTimezone === 'string',
819
+ "Configuration.setTimezone: sTimezone must be null or be a string", /* warn= */ true);
820
+
821
+ if (sTimezone == null || !checkTimezone(sTimezone)) {
822
+ sTimezone = TimezoneUtil.getLocalTimezone();
823
+ }
824
+ if (this.timezone !== sTimezone) {
825
+ this.timezone = sTimezone;
826
+
827
+ var mChanges = this._collect();
828
+ mChanges.timezone = sTimezone;
829
+ this._endCollect();
830
+ }
831
+ return this;
832
+ },
833
+
783
834
  /**
784
835
  * Returns a Locale object for the current language.
785
836
  *
@@ -1007,7 +1058,7 @@ sap.ui.define([
1007
1058
  },
1008
1059
 
1009
1060
  /**
1010
- * Returns whether the framework automatically adds automatically
1061
+ * Returns whether the framework automatically adds
1011
1062
  * the ARIA role 'application' to the HTML body or not.
1012
1063
  * @return {boolean}
1013
1064
  * @since 1.27.0
@@ -1539,9 +1590,8 @@ sap.ui.define([
1539
1590
  },
1540
1591
 
1541
1592
  /**
1542
- * Sets the security token handlers for an OData V4 model. See chapter "Security Token
1543
- * Handling" in
1544
- * {@link topic:9613f1f2d88747cab21896f7216afdac Model Instantiation and Data Access}.
1593
+ * Sets the security token handlers for an OData V4 model. See chapter
1594
+ * {@link topic:9613f1f2d88747cab21896f7216afdac/section_STH Security Token Handling}.
1545
1595
  *
1546
1596
  * @param {function[]} aSecurityTokenHandlers - The security token handlers
1547
1597
  * @public
@@ -1733,6 +1783,21 @@ sap.ui.define([
1733
1783
  throw new Error("Unsupported Enumeration value for " + sPropertyName + ", valid values are: " + aValidValues.join(", "));
1734
1784
  }
1735
1785
 
1786
+ /**
1787
+ * Checks if the provided timezone is valid and logs an error if not.
1788
+ *
1789
+ * @param {string} sTimezone The IANA timezone ID
1790
+ * @returns {boolean} Returns true if the timezone is valid
1791
+ */
1792
+ function checkTimezone(sTimezone) {
1793
+ var bIsValidTimezone = TimezoneUtil.isValidTimezone(sTimezone);
1794
+ if (!bIsValidTimezone) {
1795
+ Log.error("The provided timezone '" + sTimezone + "' is not a valid IANA timezone ID." +
1796
+ " Falling back to browser's local timezone '" + TimezoneUtil.getLocalTimezone() + "'.");
1797
+ }
1798
+ return bIsValidTimezone;
1799
+ }
1800
+
1736
1801
  /**
1737
1802
  * @class Encapsulates configuration settings that are related to data formatting/parsing.
1738
1803
  *
@@ -1844,7 +1909,7 @@ sap.ui.define([
1844
1909
  * * In the patterns <code>{0}</code> is replaced by the number
1845
1910
  *
1846
1911
  * E.g. In locale 'en' value <code>1</code> would result in <code>1 Bag</code>, while <code>2</code> would result in <code>2 Bags</code>
1847
- * @param mUnits {object} custom unit object which replaces the current custom unit definition. Call with <code>null</code> to delete custom units.
1912
+ * @param {object} mUnits custom unit object which replaces the current custom unit definition. Call with <code>null</code> to delete custom units.
1848
1913
  * @returns {this}
1849
1914
  */
1850
1915
  setCustomUnits: function (mUnits) {
@@ -1862,7 +1927,7 @@ sap.ui.define([
1862
1927
  /**
1863
1928
  * Adds custom units.
1864
1929
  * Similar to {@link sap.ui.core.Configuration#setCustomUnits} but instead of setting the custom units, it will add additional ones.
1865
- * @param mUnits {object} custom unit object which replaces the current custom unit definition. Call with <code>null</code> to delete custom units.
1930
+ * @param {object} mUnits custom unit object which replaces the current custom unit definition. Call with <code>null</code> to delete custom units.
1866
1931
  * @returns {this}
1867
1932
  * @see sap.ui.core.Configuration#setCustomUnits
1868
1933
  */
@@ -1891,7 +1956,7 @@ sap.ui.define([
1891
1956
  * </code>
1892
1957
  * Note: It is possible to create multiple entries per unit key.
1893
1958
  * Call with <code>null</code> to delete unit mappings.
1894
- * @param mUnitMappings {object} unit mappings
1959
+ * @param {object} mUnitMappings unit mappings
1895
1960
  * @returns {this} Returns <code>this</code> to allow method chaining
1896
1961
  */
1897
1962
  setUnitMappings: function (mUnitMappings) {
@@ -1902,7 +1967,7 @@ sap.ui.define([
1902
1967
  /**
1903
1968
  * Adds unit mappings.
1904
1969
  * Similar to {@link sap.ui.core.Configuration#setUnitMappings} but instead of setting the unit mappings, it will add additional ones.
1905
- * @param mUnitMappings {object} unit mappings
1970
+ * @param {object} mUnitMappings unit mappings
1906
1971
  * @returns {this}
1907
1972
  * @see sap.ui.core.Configuration#setUnitMappings
1908
1973
  */
@@ -2016,7 +2081,7 @@ sap.ui.define([
2016
2081
  * specific parts of the UI. See the documentation of {@link sap.ui.core.Configuration#setLanguage}
2017
2082
  * for details and restrictions.
2018
2083
  *
2019
- * @param {string} sStyle must be one of decimal, group, plusSign, minusSign.
2084
+ * @param {string} sType must be one of decimal, group, plusSign, minusSign.
2020
2085
  * @param {string} sSymbol will be used to represent the given symbol type
2021
2086
  * @returns {this} Returns <code>this</code> to allow method chaining
2022
2087
  * @public
@@ -77,7 +77,7 @@ sap.ui.define([
77
77
  * @extends sap.ui.core.Element
78
78
  * @abstract
79
79
  * @author SAP SE
80
- * @version 1.97.1
80
+ * @version 1.99.1
81
81
  * @alias sap.ui.core.Control
82
82
  * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
83
83
  */
@@ -275,6 +275,7 @@ sap.ui.define([
275
275
  * @param {string} [sIdSuffix] a suffix to be appended to the cloned element id
276
276
  * @param {string[]} [aLocalIds] an array of local IDs within the cloned hierarchy (internally used)
277
277
  * @returns {this} reference to the newly created clone
278
+ * @override
278
279
  * @public
279
280
  */
280
281
  Control.prototype.clone = function() {
@@ -683,7 +684,7 @@ sap.ui.define([
683
684
  } else {
684
685
  // core not yet initialized, defer execution
685
686
  var that = this;
686
- oCore.attachInitEvent(function () {
687
+ oCore.attachInit(function () {
687
688
  that.placeAt(oRef, vPosition);
688
689
  });
689
690
  }
@@ -210,7 +210,7 @@ sap.ui.define([
210
210
  * @extends sap.ui.base.Object
211
211
  * @final
212
212
  * @author SAP SE
213
- * @version 1.97.1
213
+ * @version 1.99.1
214
214
  * @alias sap.ui.core.Core
215
215
  * @public
216
216
  * @hideconstructor
@@ -809,9 +809,6 @@ sap.ui.define([
809
809
  case Device.os.OS.ANDROID:
810
810
  osCSS = "sap-android";
811
811
  break;
812
- case Device.os.OS.BLACKBERRY:
813
- osCSS = "sap-bb";
814
- break;
815
812
  }
816
813
  if (osCSS) {
817
814
  html.classList.add(osCSS);
@@ -3553,13 +3550,13 @@ sap.ui.define([
3553
3550
  * @param {string} sUIAreaId id of the UIArea that received the event
3554
3551
  * @private
3555
3552
  */
3556
- Core.prototype._handleControlEvent = function(/**event*/oEvent, sUiAreaId) {
3553
+ Core.prototype._handleControlEvent = function(/**event*/oEvent, sUIAreaId) {
3557
3554
  // Create a copy of the event
3558
3555
  var oEventClone = jQuery.Event(oEvent.type);
3559
3556
  Object.assign(oEventClone, oEvent);
3560
3557
  oEventClone.originalEvent = undefined;
3561
3558
 
3562
- this.fireControlEvent({"browserEvent": oEventClone, "uiArea": sUiAreaId});
3559
+ this.fireControlEvent({"browserEvent": oEventClone, "uiArea": sUIAreaId});
3563
3560
  };
3564
3561
 
3565
3562
 
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * in the documentation.
25
25
  *
26
26
  * @extends sap.ui.core.Element
27
- * @version 1.97.1
27
+ * @version 1.99.1
28
28
  *
29
29
  * @public
30
30
  * @alias sap.ui.core.CustomData
@@ -40,7 +40,7 @@ sap.ui.define([
40
40
  * @class Static class for enabling declarative UI support.
41
41
  *
42
42
  * @author Peter Muessig, Tino Butz
43
- * @version 1.97.1
43
+ * @version 1.99.1
44
44
  * @since 1.7.0
45
45
  * @public
46
46
  * @alias sap.ui.core.DeclarativeSupport
@@ -126,7 +126,7 @@ sap.ui.define([
126
126
  *
127
127
  * @extends sap.ui.base.ManagedObject
128
128
  * @author SAP SE
129
- * @version 1.97.1
129
+ * @version 1.99.1
130
130
  * @public
131
131
  * @alias sap.ui.core.Element
132
132
  * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
@@ -837,6 +837,7 @@ sap.ui.define([
837
837
  * @param {object} [oFocusInfo={}] Options for setting the focus
838
838
  * @param {boolean} [oFocusInfo.preventScroll=false] @since 1.60 if it's set to true, the focused
839
839
  * element won't be shifted into the viewport if it's not completely visible before the focus is set
840
+ * @param {any} [oFocusInfo.targetInfo] Further control-specific setting of the focus target within the control @since 1.98
840
841
  * @public
841
842
  */
842
843
  Element.prototype.focus = function (oFocusInfo) {
@@ -1418,12 +1419,9 @@ sap.ui.define([
1418
1419
  *
1419
1420
  * There's no difference between <code>bindElement</code> and {@link sap.ui.base.ManagedObject#bindObject}.
1420
1421
  *
1421
- * @param {string|object} vPath the binding path or an object with more detailed binding options
1422
- * @param {string} vPath.path the binding path
1423
- * @param {object} [vPath.parameters] map of additional parameters for this binding
1424
- * @param {string} [vPath.model] name of the model
1425
- * @param {object} [vPath.events] map of event listeners for the binding events
1426
- * @param {object} [mParameters] map of additional parameters for this binding (only taken into account when vPath is a string in that case it corresponds to vPath.parameters).
1422
+ * @param {string|sap.ui.base.ManagedObject.ObjectBindingInfo} vPath the binding path or an object with more detailed binding options
1423
+ * @param {object} [mParameters] map of additional parameters for this binding.
1424
+ * Only taken into account when <code>vPath</code> is a string. In that case it corresponds to <code>mParameters</code> of {@link sap.ui.base.ManagedObject.ObjectBindingInfo}.
1427
1425
  * The supported parameters are listed in the corresponding model-specific implementation of <code>sap.ui.model.ContextBinding</code>.
1428
1426
  *
1429
1427
  * @returns {this} reference to the instance itself
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  *
24
24
  * @class
25
25
  * @author SAP SE
26
- * @version 1.97.1
26
+ * @version 1.99.1
27
27
  * @since 0.8.6
28
28
  * @alias sap.ui.core.ElementMetadata
29
29
  * @extends sap.ui.base.ManagedObjectMetadata
@@ -41,7 +41,7 @@ sap.ui.define([], function() {
41
41
  *
42
42
  * @param {boolean} [bDefault=true] Value that should be used as default value for the enhancement of the control.
43
43
  * @param {boolean} [bLegacy=false] Whether the introduced property should use the old name <code>Enabled</code>.
44
- * @version 1.97.1
44
+ * @version 1.99.1
45
45
  * @public
46
46
  * @class
47
47
  * @alias sap.ui.core.EnabledPropagator
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  *
31
31
  * @extends sap.ui.base.Object
32
32
  * @author SAP SE
33
- * @version 1.97.1
33
+ * @version 1.99.1
34
34
  * @public
35
35
  * @since 1.8.0
36
36
  * @alias sap.ui.core.EventBus
@@ -113,7 +113,7 @@ sap.ui.define(["sap/base/Log", "sap/base/util/ObjectPath", "sap/ui/core/mvc/View
113
113
  // We cannot model the Fragment class as a dependency of the ExtensionPoint class,
114
114
  // since the XML Fragments rely on the XMLTP for parsing and thus create a cyclic dependency:
115
115
  // XMLTP -> ExtensionPoint -> Fragment -> XMLTP
116
- var Fragment = sap.ui.require("sap.ui.core.Fragment");
116
+ var Fragment = sap.ui.require("sap/ui/core/Fragment");
117
117
 
118
118
  oFactoryConfig.fragmentName = oExtensionConfig.fragmentName;
119
119
  oFactoryConfig.containingView = oView;