@openui5/sap.ui.core 1.96.5 → 1.99.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 (426) hide show
  1. package/.eslintrc.json +93 -3
  2. package/.reuse/dep5 +26 -31
  3. package/THIRDPARTY.txt +15 -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 +2 -2
  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 +81 -169
  53. package/src/sap/ui/Global.js +11 -16
  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 +50 -29
  60. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  61. package/src/sap/ui/base/Metadata.js +1 -3
  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 +1 -27
  65. package/src/sap/ui/core/AppCacheBuster.js +4 -4
  66. package/src/sap/ui/core/BusyIndicator.js +1 -1
  67. package/src/sap/ui/core/BusyIndicatorUtils.js +1 -1
  68. package/src/sap/ui/core/Component.js +33 -11
  69. package/src/sap/ui/core/ComponentContainer.js +1 -1
  70. package/src/sap/ui/core/ComponentMetadata.js +1 -1
  71. package/src/sap/ui/core/ComponentSupport.js +1 -1
  72. package/src/sap/ui/core/Configuration.js +79 -13
  73. package/src/sap/ui/core/Control.js +4 -3
  74. package/src/sap/ui/core/Core.js +4 -7
  75. package/src/sap/ui/core/CustomData.js +1 -1
  76. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  77. package/src/sap/ui/core/Element.js +6 -12
  78. package/src/sap/ui/core/ElementMetadata.js +1 -1
  79. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  80. package/src/sap/ui/core/EventBus.js +1 -1
  81. package/src/sap/ui/core/ExtensionPoint.js +1 -1
  82. package/src/sap/ui/core/FocusHandler.js +1 -1
  83. package/src/sap/ui/core/Fragment.js +1 -1
  84. package/src/sap/ui/core/HTML.js +3 -3
  85. package/src/sap/ui/core/HTMLRenderer.js +1 -1
  86. package/src/sap/ui/core/History.js +1 -1
  87. package/src/sap/ui/core/Icon.js +2 -3
  88. package/src/sap/ui/core/IconRenderer.js +1 -1
  89. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  90. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  91. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  92. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  93. package/src/sap/ui/core/InvisibleText.js +1 -1
  94. package/src/sap/ui/core/Item.js +1 -1
  95. package/src/sap/ui/core/LabelEnablement.js +9 -2
  96. package/src/sap/ui/core/LayoutData.js +1 -1
  97. package/src/sap/ui/core/ListItem.js +1 -1
  98. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  99. package/src/sap/ui/core/LocalBusyIndicatorRenderer.js +2 -2
  100. package/src/sap/ui/core/LocalBusyIndicatorSupport.js +1 -1
  101. package/src/sap/ui/core/Locale.js +1 -1
  102. package/src/sap/ui/core/LocaleData.js +39 -4
  103. package/src/sap/ui/core/Manifest.js +1 -1
  104. package/src/sap/ui/core/Message.js +1 -1
  105. package/src/sap/ui/core/Placeholder.js +28 -28
  106. package/src/sap/ui/core/Popup.js +3 -3
  107. package/src/sap/ui/core/RenderManager.js +3 -3
  108. package/src/sap/ui/core/Renderer.js +1 -1
  109. package/src/sap/ui/core/ResizeHandler.js +1 -1
  110. package/src/sap/ui/core/ScrollBar.js +4 -3
  111. package/src/sap/ui/core/ScrollBarRenderer.js +1 -1
  112. package/src/sap/ui/core/SeparatorItem.js +1 -1
  113. package/src/sap/ui/core/ThemeCheck.js +2 -2
  114. package/src/sap/ui/core/Title.js +1 -1
  115. package/src/sap/ui/core/TooltipBase.js +2 -2
  116. package/src/sap/ui/core/UIArea.js +3 -3
  117. package/src/sap/ui/core/UIComponent.js +1 -1
  118. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  119. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  120. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  121. package/src/sap/ui/core/XMLComposite.js +1 -1
  122. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  123. package/src/sap/ui/core/XMLTemplateProcessor.js +26 -5
  124. package/src/sap/ui/core/_IconRegistry.js +10 -1
  125. package/src/sap/ui/core/cache/LRUPersistentCache.js +4 -2
  126. package/src/sap/ui/core/date/Japanese.js +1 -1
  127. package/src/sap/ui/core/date/UniversalDateUtils.js +205 -2
  128. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  129. package/src/sap/ui/core/delegate/ScrollEnablement.js +9 -6
  130. package/src/sap/ui/core/dnd/DragAndDrop.js +2 -2
  131. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  132. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  133. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  134. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  135. package/src/sap/ui/core/format/DateFormat.js +562 -174
  136. package/src/sap/ui/core/format/DateFormatTimezoneDisplay.js +43 -0
  137. package/src/sap/ui/core/format/ListFormat.js +2 -2
  138. package/src/sap/ui/core/format/NumberFormat.js +1 -1
  139. package/src/sap/ui/core/format/TimezoneUtil.js +248 -0
  140. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  141. package/src/sap/ui/core/library.js +47 -10
  142. package/src/sap/ui/core/message/ControlMessageProcessor.js +5 -5
  143. package/src/sap/ui/core/message/Message.js +1 -1
  144. package/src/sap/ui/core/message/MessageManager.js +1 -1
  145. package/src/sap/ui/core/message/MessageMixin.js +2 -1
  146. package/src/sap/ui/core/message/MessageParser.js +1 -1
  147. package/src/sap/ui/core/message/MessageProcessor.js +22 -12
  148. package/src/sap/ui/core/messagebundle.properties +4 -0
  149. package/src/sap/ui/core/messagebundle_ar.properties +2 -0
  150. package/src/sap/ui/core/messagebundle_bg.properties +7 -5
  151. package/src/sap/ui/core/messagebundle_ca.properties +2 -0
  152. package/src/sap/ui/core/messagebundle_cs.properties +2 -0
  153. package/src/sap/ui/core/messagebundle_cy.properties +2 -0
  154. package/src/sap/ui/core/messagebundle_da.properties +2 -0
  155. package/src/sap/ui/core/messagebundle_de.properties +3 -1
  156. package/src/sap/ui/core/messagebundle_el.properties +2 -0
  157. package/src/sap/ui/core/messagebundle_en.properties +2 -0
  158. package/src/sap/ui/core/messagebundle_en_GB.properties +2 -0
  159. package/src/sap/ui/core/messagebundle_en_US_sappsd.properties +2 -0
  160. package/src/sap/ui/core/messagebundle_en_US_saprigi.properties +1 -0
  161. package/src/sap/ui/core/messagebundle_en_US_saptrc.properties +2 -0
  162. package/src/sap/ui/core/messagebundle_es.properties +2 -0
  163. package/src/sap/ui/core/messagebundle_es_MX.properties +2 -0
  164. package/src/sap/ui/core/messagebundle_et.properties +2 -0
  165. package/src/sap/ui/core/messagebundle_fi.properties +2 -0
  166. package/src/sap/ui/core/messagebundle_fr.properties +9 -7
  167. package/src/sap/ui/core/messagebundle_fr_CA.properties +2 -0
  168. package/src/sap/ui/core/messagebundle_hi.properties +2 -0
  169. package/src/sap/ui/core/messagebundle_hr.properties +2 -0
  170. package/src/sap/ui/core/messagebundle_hu.properties +2 -0
  171. package/src/sap/ui/core/messagebundle_id.properties +4 -2
  172. package/src/sap/ui/core/messagebundle_it.properties +3 -1
  173. package/src/sap/ui/core/messagebundle_iw.properties +2 -0
  174. package/src/sap/ui/core/messagebundle_ja.properties +2 -0
  175. package/src/sap/ui/core/messagebundle_kk.properties +2 -0
  176. package/src/sap/ui/core/messagebundle_ko.properties +2 -0
  177. package/src/sap/ui/core/messagebundle_lt.properties +2 -0
  178. package/src/sap/ui/core/messagebundle_lv.properties +3 -1
  179. package/src/sap/ui/core/messagebundle_ms.properties +2 -0
  180. package/src/sap/ui/core/messagebundle_nl.properties +2 -0
  181. package/src/sap/ui/core/messagebundle_no.properties +6 -4
  182. package/src/sap/ui/core/messagebundle_pl.properties +2 -0
  183. package/src/sap/ui/core/messagebundle_pt.properties +2 -0
  184. package/src/sap/ui/core/messagebundle_pt_PT.properties +2 -0
  185. package/src/sap/ui/core/messagebundle_ro.properties +2 -0
  186. package/src/sap/ui/core/messagebundle_ru.properties +23 -21
  187. package/src/sap/ui/core/messagebundle_sh.properties +2 -0
  188. package/src/sap/ui/core/messagebundle_sk.properties +2 -0
  189. package/src/sap/ui/core/messagebundle_sl.properties +2 -0
  190. package/src/sap/ui/core/messagebundle_sv.properties +2 -0
  191. package/src/sap/ui/core/messagebundle_th.properties +2 -0
  192. package/src/sap/ui/core/messagebundle_tr.properties +2 -0
  193. package/src/sap/ui/core/messagebundle_uk.properties +2 -0
  194. package/src/sap/ui/core/messagebundle_vi.properties +2 -0
  195. package/src/sap/ui/core/messagebundle_zh_CN.properties +2 -0
  196. package/src/sap/ui/core/messagebundle_zh_TW.properties +2 -0
  197. package/src/sap/ui/core/mvc/Controller.js +4 -4
  198. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  199. package/src/sap/ui/core/mvc/HTMLViewRenderer.js +1 -1
  200. package/src/sap/ui/core/mvc/JSONView.js +2 -1
  201. package/src/sap/ui/core/mvc/JSONViewRenderer.js +1 -1
  202. package/src/sap/ui/core/mvc/JSView.js +1 -1
  203. package/src/sap/ui/core/mvc/JSViewRenderer.js +1 -1
  204. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  205. package/src/sap/ui/core/mvc/TemplateViewRenderer.js +1 -1
  206. package/src/sap/ui/core/mvc/View.js +2 -1
  207. package/src/sap/ui/core/mvc/ViewRenderer.js +1 -1
  208. package/src/sap/ui/core/mvc/XMLView.js +16 -3
  209. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  210. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  211. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  212. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  213. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  214. package/src/sap/ui/core/routing/Route.js +6 -6
  215. package/src/sap/ui/core/routing/Router.js +4 -3
  216. package/src/sap/ui/core/routing/Targets.js +17 -13
  217. package/src/sap/ui/core/rules/Misc.support.js +51 -1
  218. package/src/sap/ui/core/rules/Model.support.js +95 -8
  219. package/src/sap/ui/core/rules/Rendering.support.js +1 -4
  220. package/src/sap/ui/core/rules/View.support.js +14 -46
  221. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  222. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  223. package/src/sap/ui/core/service/Service.js +1 -1
  224. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  225. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  226. package/src/sap/ui/core/support/Plugin.js +2 -2
  227. package/src/sap/ui/core/support/RuleEngineOpaExtension.js +0 -1
  228. package/src/sap/ui/core/support/Support.js +1 -1
  229. package/src/sap/ui/core/support/controls/TreeViewer.js +1 -1
  230. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  231. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  232. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  233. package/src/sap/ui/core/support/plugins/Performance.js +1 -2
  234. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  235. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  236. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  237. package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
  238. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +2 -6
  239. package/src/sap/ui/core/support/trace/E2eTraceLib.js +3 -3
  240. package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
  241. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  242. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  243. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  244. package/src/sap/ui/core/tmpl/Template.js +1 -1
  245. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  246. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  247. package/src/sap/ui/core/util/DraftEnabledMockServer.js +21 -16
  248. package/src/sap/ui/core/util/Export.js +1 -1
  249. package/src/sap/ui/core/util/ExportCell.js +1 -1
  250. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  251. package/src/sap/ui/core/util/ExportRow.js +1 -1
  252. package/src/sap/ui/core/util/ExportType.js +1 -1
  253. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  254. package/src/sap/ui/core/util/File.js +1 -1
  255. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  256. package/src/sap/ui/core/util/MockServer.js +157 -58
  257. package/src/sap/ui/core/util/PasteHelper.js +4 -4
  258. package/src/sap/ui/core/util/XMLPreprocessor.js +16 -4
  259. package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +1 -1
  260. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  261. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  262. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  263. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  264. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  265. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  266. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  267. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  268. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  269. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  270. package/src/sap/ui/debug/ControlTree.js +1 -1
  271. package/src/sap/ui/debug/DebugEnv.js +1 -1
  272. package/src/sap/ui/debug/PropertyList.js +1 -1
  273. package/src/sap/ui/dom/includeStylesheet.js +8 -3
  274. package/src/sap/ui/events/jquery/EventExtension.js +1 -1
  275. package/src/sap/ui/events/jquery/EventSimulation.js +3 -13
  276. package/src/sap/ui/model/Binding.js +4 -3
  277. package/src/sap/ui/model/ChangeReason.js +1 -1
  278. package/src/sap/ui/model/ClientListBinding.js +7 -0
  279. package/src/sap/ui/model/ClientModel.js +6 -5
  280. package/src/sap/ui/model/ClientTreeBinding.js +1 -1
  281. package/src/sap/ui/model/ClientTreeBindingAdapter.js +1 -1
  282. package/src/sap/ui/model/CompositeBinding.js +1 -1
  283. package/src/sap/ui/model/CompositeDataState.js +26 -4
  284. package/src/sap/ui/model/CompositeType.js +1 -1
  285. package/src/sap/ui/model/ContextBinding.js +1 -1
  286. package/src/sap/ui/model/DataState.js +27 -6
  287. package/src/sap/ui/model/ListBinding.js +24 -5
  288. package/src/sap/ui/model/MetaModel.js +2 -3
  289. package/src/sap/ui/model/Model.js +6 -11
  290. package/src/sap/ui/model/SelectionModel.js +1 -1
  291. package/src/sap/ui/model/SimpleType.js +1 -1
  292. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  293. package/src/sap/ui/model/TreeBindingAdapter.js +0 -2
  294. package/src/sap/ui/model/TreeBindingUtils.js +2 -0
  295. package/src/sap/ui/model/Type.js +1 -1
  296. package/src/sap/ui/model/analytics/AnalyticalBinding.js +13 -8
  297. package/src/sap/ui/model/analytics/AnalyticalTreeBindingAdapter.js +16 -18
  298. package/src/sap/ui/model/analytics/ODataModelAdapter.js +2 -15
  299. package/src/sap/ui/model/base/ManagedObjectModel.js +1 -1
  300. package/src/sap/ui/model/json/JSONListBinding.js +1 -1
  301. package/src/sap/ui/model/json/JSONModel.js +7 -7
  302. package/src/sap/ui/model/json/JSONPropertyBinding.js +2 -2
  303. package/src/sap/ui/model/message/MessageListBinding.js +1 -1
  304. package/src/sap/ui/model/message/MessageModel.js +3 -3
  305. package/src/sap/ui/model/message/MessagePropertyBinding.js +2 -2
  306. package/src/sap/ui/model/odata/AnnotationHelper.js +2 -2
  307. package/src/sap/ui/model/odata/AnnotationParser.js +4 -2
  308. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  309. package/src/sap/ui/model/odata/ODataListBinding.js +62 -39
  310. package/src/sap/ui/model/odata/ODataMessageParser.js +2 -2
  311. package/src/sap/ui/model/odata/ODataMetaModel.js +3 -3
  312. package/src/sap/ui/model/odata/ODataMetadata.js +138 -87
  313. package/src/sap/ui/model/odata/ODataModel.js +443 -216
  314. package/src/sap/ui/model/odata/ODataPropertyBinding.js +7 -5
  315. package/src/sap/ui/model/odata/ODataTreeBinding.js +1 -1
  316. package/src/sap/ui/model/odata/ODataTreeBindingAdapter.js +27 -17
  317. package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +440 -260
  318. package/src/sap/ui/model/odata/ODataUtils.js +24 -9
  319. package/src/sap/ui/model/odata/_AnnotationHelperBasics.js +3 -2
  320. package/src/sap/ui/model/odata/_AnnotationHelperExpression.js +11 -9
  321. package/src/sap/ui/model/odata/_ODataMetaModelUtils.js +7 -5
  322. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  323. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  324. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  325. package/src/sap/ui/model/odata/type/Date.js +1 -1
  326. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  327. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  328. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  329. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +338 -0
  330. package/src/sap/ui/model/odata/type/Decimal.js +5 -1
  331. package/src/sap/ui/model/odata/type/Double.js +1 -1
  332. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  333. package/src/sap/ui/model/odata/type/Int.js +1 -1
  334. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  335. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  336. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  337. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  338. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  339. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  340. package/src/sap/ui/model/odata/type/Single.js +1 -1
  341. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  342. package/src/sap/ui/model/odata/type/String.js +1 -1
  343. package/src/sap/ui/model/odata/type/Time.js +1 -1
  344. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  345. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  346. package/src/sap/ui/model/odata/type/UnitMixin.js +1 -2
  347. package/src/sap/ui/model/odata/v2/Context.js +98 -14
  348. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  349. package/src/sap/ui/model/odata/v2/ODataContextBinding.js +8 -4
  350. package/src/sap/ui/model/odata/v2/ODataListBinding.js +418 -172
  351. package/src/sap/ui/model/odata/v2/ODataModel.js +242 -138
  352. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +164 -92
  353. package/src/sap/ui/model/odata/v2/_CreatedContextsCache.js +117 -7
  354. package/src/sap/ui/model/odata/v4/AnnotationHelper.js +21 -22
  355. package/src/sap/ui/model/odata/v4/Context.js +249 -83
  356. package/src/sap/ui/model/odata/v4/ODataBinding.js +100 -43
  357. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +309 -228
  358. package/src/sap/ui/model/odata/v4/ODataListBinding.js +573 -278
  359. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +131 -100
  360. package/src/sap/ui/model/odata/v4/ODataModel.js +342 -259
  361. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +113 -100
  362. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +87 -81
  363. package/src/sap/ui/model/odata/v4/ODataUtils.js +5 -5
  364. package/src/sap/ui/model/odata/v4/SubmitMode.js +0 -1
  365. package/src/sap/ui/model/odata/v4/ValueListType.js +0 -1
  366. package/src/sap/ui/model/odata/v4/_AnnotationHelperExpression.js +20 -20
  367. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +3 -5
  368. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +5 -4
  369. package/src/sap/ui/model/odata/v4/lib/_Batch.js +21 -20
  370. package/src/sap/ui/model/odata/v4/lib/_Cache.js +278 -103
  371. package/src/sap/ui/model/odata/v4/lib/_GroupLock.js +1 -1
  372. package/src/sap/ui/model/odata/v4/lib/_Helper.js +55 -21
  373. package/src/sap/ui/model/odata/v4/lib/_MetadataConverter.js +62 -61
  374. package/src/sap/ui/model/odata/v4/lib/_MetadataRequestor.js +1 -1
  375. package/src/sap/ui/model/odata/v4/lib/_Parser.js +52 -43
  376. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +61 -41
  377. package/src/sap/ui/model/odata/v4/lib/_V2MetadataConverter.js +147 -147
  378. package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +14 -13
  379. package/src/sap/ui/model/odata/v4/lib/_V4MetadataConverter.js +66 -67
  380. package/src/sap/ui/model/resource/ResourceModel.js +1 -1
  381. package/src/sap/ui/model/resource/ResourcePropertyBinding.js +1 -1
  382. package/src/sap/ui/model/type/Boolean.js +1 -1
  383. package/src/sap/ui/model/type/Currency.js +1 -1
  384. package/src/sap/ui/model/type/Date.js +1 -1
  385. package/src/sap/ui/model/type/DateInterval.js +1 -1
  386. package/src/sap/ui/model/type/DateTime.js +1 -1
  387. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  388. package/src/sap/ui/model/type/FileSize.js +1 -1
  389. package/src/sap/ui/model/type/Float.js +1 -1
  390. package/src/sap/ui/model/type/Integer.js +1 -1
  391. package/src/sap/ui/model/type/String.js +1 -1
  392. package/src/sap/ui/model/type/Time.js +1 -1
  393. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  394. package/src/sap/ui/model/type/Unit.js +1 -1
  395. package/src/sap/ui/model/xml/XMLListBinding.js +1 -1
  396. package/src/sap/ui/model/xml/XMLModel.js +5 -5
  397. package/src/sap/ui/model/xml/XMLPropertyBinding.js +2 -2
  398. package/src/sap/ui/performance/trace/Passport.js +3 -3
  399. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  400. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  401. package/src/sap/ui/test/BlanketReporter.js +1 -1
  402. package/src/sap/ui/test/Opa5.js +1 -1
  403. package/src/sap/ui/test/TestUtils.js +2 -2
  404. package/src/sap/ui/test/_LogCollector.js +1 -1
  405. package/src/sap/ui/test/actions/Action.js +11 -2
  406. package/src/sap/ui/test/actions/Press.js +79 -3
  407. package/src/sap/ui/test/autowaiter/_XHRWaiter.js +1 -1
  408. package/src/sap/ui/test/generic/_EnforceSemanticRendering.js +111 -0
  409. package/src/sap/ui/test/starter/createSuite.js +1 -2
  410. package/src/sap/ui/thirdparty/jquery-mobile-custom.js +3 -6
  411. package/src/sap/ui/thirdparty/jqueryui/jquery-ui-datepicker.js +143 -3
  412. package/src/sap/ui/thirdparty/jqueryui/jquery-ui-position.js +8 -1
  413. package/src/sap/ui/util/Mobile.js +28 -39
  414. package/src/sap/ui/util/Storage.js +1 -1
  415. package/src/sap/ui/util/XMLHelper.js +53 -30
  416. package/src/ui5loader.js +9 -9
  417. package/ui5.yaml +244 -1
  418. package/src/sap/ui/core/CustomizingConfiguration.js +0 -47
  419. package/src/sap/ui/thirdparty/baseuri.js +0 -1
  420. package/src/sap/ui/thirdparty/es6-object-assign.js +0 -1
  421. package/src/sap/ui/thirdparty/es6-promise.js +0 -1
  422. package/src/sap/ui/thirdparty/es6-shim-nopromise.js +0 -1
  423. package/src/sap/ui/thirdparty/es6-string-methods.js +0 -1
  424. package/src/sap/ui/thirdparty/flexie.js +0 -1
  425. package/src/sap/ui/thirdparty/unorm.js +0 -1
  426. package/src/sap/ui/thirdparty/unormdata.js +0 -1
@@ -115,7 +115,7 @@ sap.ui.define([
115
115
  * @extends sap.ui.model.SimpleType
116
116
  *
117
117
  * @author SAP SE
118
- * @version 1.96.5
118
+ * @version 1.99.0
119
119
  *
120
120
  * @abstract
121
121
  * @alias sap.ui.model.odata.type.ODataType
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @extends sap.ui.model.odata.type.ODataType
31
31
  * @public
32
32
  * @since 1.37.0
33
- * @version 1.96.5
33
+ * @version 1.99.0
34
34
  */
35
35
  var Raw = ODataType.extend("sap.ui.model.odata.type.Raw", {
36
36
  constructor : function (oFormatOptions, oConstraints) {
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.ui.model.odata.type.Int
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.96.5
27
+ * @version 1.99.0
28
28
  *
29
29
  * @alias sap.ui.model.odata.type.SByte
30
30
  * @param {object} [oFormatOptions]
@@ -95,7 +95,7 @@ sap.ui.define([
95
95
  * @extends sap.ui.model.odata.type.ODataType
96
96
  *
97
97
  * @author SAP SE
98
- * @version 1.96.5
98
+ * @version 1.99.0
99
99
  *
100
100
  * @alias sap.ui.model.odata.type.Single
101
101
  * @param {object} [oFormatOptions]
@@ -60,7 +60,7 @@ sap.ui.define([
60
60
  * @extends sap.ui.model.odata.type.ODataType
61
61
  * @public
62
62
  * @since 1.51.0
63
- * @version 1.96.5
63
+ * @version 1.99.0
64
64
  */
65
65
  var Stream = ODataType.extend("sap.ui.model.odata.type.Stream", {
66
66
  constructor : function (oFormatOptions, oConstraints) {
@@ -84,7 +84,7 @@ sap.ui.define([
84
84
  * @extends sap.ui.model.odata.type.ODataType
85
85
  *
86
86
  * @author SAP SE
87
- * @version 1.96.5
87
+ * @version 1.99.0
88
88
  *
89
89
  * @alias sap.ui.model.odata.type.String
90
90
  * @param {object} [oFormatOptions]
@@ -154,7 +154,7 @@ sap.ui.define([
154
154
  * @extends sap.ui.model.odata.type.ODataType
155
155
  *
156
156
  * @author SAP SE
157
- * @version 1.96.5
157
+ * @version 1.99.0
158
158
  *
159
159
  * @alias sap.ui.model.odata.type.Time
160
160
  * @param {object} [oFormatOptions]
@@ -110,7 +110,7 @@ sap.ui.define([
110
110
  * @extends sap.ui.model.odata.type.ODataType
111
111
  * @public
112
112
  * @since 1.37.0
113
- * @version 1.96.5
113
+ * @version 1.99.0
114
114
  */
115
115
  var TimeOfDay = ODataType.extend("sap.ui.model.odata.type.TimeOfDay", {
116
116
  constructor : function (oFormatOptions, oConstraints) {
@@ -63,7 +63,7 @@ sap.ui.define([
63
63
  * @extends sap.ui.model.type.Unit
64
64
  * @public
65
65
  * @since 1.63.0
66
- * @version 1.96.5
66
+ * @version 1.99.0
67
67
  */
68
68
  var Unit = BaseUnit.extend("sap.ui.model.odata.type.Unit", {
69
69
  constructor : function (oFormatOptions, oConstraints, aDynamicFormatOptionNames) {
@@ -11,7 +11,6 @@ sap.ui.define([
11
11
  "sap/ui/model/ValidateException"
12
12
  ], function (ParseException, ValidateException) {
13
13
  "use strict";
14
- /*global Map */
15
14
 
16
15
  var mCodeList2CustomUnits = new Map(),
17
16
  rDecimals = /\.(\d+)$/,
@@ -358,4 +357,4 @@ sap.ui.define([
358
357
  oPrototype.parseValue = parseValue;
359
358
  oPrototype.validateValue = validateValue;
360
359
  };
361
- }, /* bExport= */ false);
360
+ });
@@ -6,8 +6,9 @@
6
6
 
7
7
  //Provides class sap.ui.model.odata.v2.Context
8
8
  sap.ui.define([
9
+ "sap/ui/base/SyncPromise",
9
10
  "sap/ui/model/Context"
10
- ], function (BaseContext) {
11
+ ], function (SyncPromise, BaseContext) {
11
12
  "use strict";
12
13
 
13
14
  /**
@@ -21,7 +22,8 @@ sap.ui.define([
21
22
  * The absolute deep path including all intermediate paths of the binding hierarchy
22
23
  * @param {sap.ui.base.SyncPromise} [oCreatePromise]
23
24
  * A sync promise that is given when this context has been created by
24
- * {@link sap.ui.model.odata.v2.ODataModel#createEntry}.
25
+ * {@link sap.ui.model.odata.v2.ODataModel#createEntry} or
26
+ * {@link sap.ui.model.odata.v2.ODataListBinding#create}.
25
27
  *
26
28
  * When the entity represented by this context has been successfully persisted in the back
27
29
  * end, the given promise resolves.
@@ -31,6 +33,8 @@ sap.ui.define([
31
33
  * <code>bDeleteCreatedEntities</code> parameter set to <code>true</code>, the given promise
32
34
  * rejects with an object <code>oError</code> containing the error information, where
33
35
  * <code>oError.aborted === true</code>.
36
+ * @param {boolean} [bInactive]
37
+ * Whether the created context is inactive
34
38
  * @alias sap.ui.model.odata.v2.Context
35
39
  * @author SAP SE
36
40
  * @class Implementation of an OData V2 model's context.
@@ -43,6 +47,7 @@ sap.ui.define([
43
47
  * <ul>
44
48
  * <li>an OData binding</li>
45
49
  * <li>a view element</li>
50
+ * <li>{@link sap.ui.model.odata.v2.ODataListBinding#create}</li>
46
51
  * <li>{@link sap.ui.model.odata.v2.ODataModel#callFunction}</li>
47
52
  * <li>{@link sap.ui.model.odata.v2.ODataModel#createBindingContext}</li>
48
53
  * <li>{@link sap.ui.model.odata.v2.ODataModel#createEntry}</li>
@@ -52,10 +57,12 @@ sap.ui.define([
52
57
  * @hideconstructor
53
58
  * @public
54
59
  * @since 1.93.0
55
- * @version 1.96.5
60
+ * @version 1.99.0
56
61
  */
57
62
  var Context = BaseContext.extend("sap.ui.model.odata.v2.Context", {
58
- constructor : function (oModel, sPath, sDeepPath, oCreatePromise) {
63
+ constructor : function (oModel, sPath, sDeepPath, oCreatePromise, bInactive) {
64
+ var that = this;
65
+
59
66
  BaseContext.call(this, oModel, sPath);
60
67
  // Promise returned by #created for a context of a newly created entity which
61
68
  // resolves when the entity is persisted or rejects if the creation is aborted; set
@@ -76,12 +83,33 @@ sap.ui.define([
76
83
  // whether the context is updated, e.g. path changed from a preliminary path to the
77
84
  // canonical one
78
85
  this.bUpdated = false;
86
+ // whether the context is inactive
87
+ this.bInactive = !!bInactive;
88
+ // the function to activate this context
89
+ this.fnActivate = undefined;
90
+ // the promise on activation of this context
91
+ this.oActivatedPromise = bInactive
92
+ ? new SyncPromise(function (resolve) { that.fnActivate = resolve; })
93
+ : SyncPromise.resolve();
79
94
  }
80
95
  });
81
96
 
97
+ /**
98
+ * Activates this context.
99
+ *
100
+ * @private
101
+ */
102
+ Context.prototype.activate = function () {
103
+ this.bInactive = false;
104
+ if (this.fnActivate) {
105
+ this.fnActivate();
106
+ }
107
+ };
108
+
82
109
  /**
83
110
  * Returns a promise on the creation state of this context if it has been created via
84
- * {@link sap.ui.model.odata.v2.ODataModel#createEntry}; otherwise returns
111
+ * {@link sap.ui.model.odata.v2.ODataModel#createEntry} or
112
+ * {@link sap.ui.model.odata.v2.ODataListBinding#create}; otherwise returns
85
113
  * <code>undefined</code>.
86
114
  *
87
115
  * As long as the promise is not yet resolved or rejected, the entity represented by this
@@ -90,9 +118,18 @@ sap.ui.define([
90
118
  * Once the promise is resolved, the entity for this context is stored in the back end and
91
119
  * {@link #getPath} returns a path including the key predicate of the new entity.
92
120
  *
121
+ * If the context has been created via {@link sap.ui.model.odata.v2.ODataListBinding#create} and
122
+ * the entity for this context has been stored in the back end, {@link #created} returns
123
+ * <code>undefined</code> after the data has been re-read from the back end and inserted at the
124
+ * right position based on the list binding's filters and sorters.
125
+ * If the context has been created via {@link sap.ui.model.odata.v2.ODataModel#createEntry} and
126
+ * the entity for this context has been stored in the back end, {@link #created} returns
127
+ * <code>undefined</code>.
128
+ *
93
129
  * @returns {Promise}
94
130
  * A promise for a context which has been created via
95
- * {@link sap.ui.model.odata.v2.ODataModel#createEntry}, otherwise <code>undefined</code>.
131
+ * {@link sap.ui.model.odata.v2.ODataModel#createEntry} or
132
+ * {@link sap.ui.model.odata.v2.ODataListBinding#create}, otherwise <code>undefined</code>.
96
133
  *
97
134
  * When the entity represented by this context has been persisted in the back end, the promise
98
135
  * resolves without data.
@@ -115,6 +152,18 @@ sap.ui.define([
115
152
  return this.oCreatePromise;
116
153
  };
117
154
 
155
+ /**
156
+ * Returns the promise which resolves with <code>undefined</code> on activation of this context
157
+ * or if this context is already active; the promise never rejects.
158
+ *
159
+ * @return {sap.ui.base.SyncPromise} The promise on activation of this context
160
+ *
161
+ * @private
162
+ */
163
+ Context.prototype.fetchActivated = function () {
164
+ return this.oActivatedPromise;
165
+ };
166
+
118
167
  /**
119
168
  * Gets the absolute deep path including all intermediate paths of the binding hierarchy. This
120
169
  * path is used to compute the full target of messages.
@@ -139,6 +188,22 @@ sap.ui.define([
139
188
  return this.bUpdated || this.bForceRefresh;
140
189
  };
141
190
 
191
+ /**
192
+ * Returns whether this context is inactive. An inactive context will only be sent to the
193
+ * server after the first property update. From then on it behaves like any other created
194
+ * context.
195
+ *
196
+ * @return {boolean} Whether this context is inactive
197
+ *
198
+ * @public
199
+ * @see sap.ui.model.odata.v2.ODataListBinding#create
200
+ * @see sap.ui.model.odata.v2.ODataModel#createEntry
201
+ * @since 1.98.0
202
+ */
203
+ Context.prototype.isInactive = function () {
204
+ return this.bInactive;
205
+ };
206
+
142
207
  /**
143
208
  * Whether this context's path may be used to create the request URL for dependent bindings even
144
209
  * if no data has been loaded for the context's entity. This can be used by dependent bindings
@@ -164,15 +229,24 @@ sap.ui.define([
164
229
  };
165
230
 
166
231
  /**
167
- * For a context created using {@link sap.ui.model.odata.v2.ODataModel#createEntry}, the method
168
- * returns <code>true</code> if the context is transient or <code>false</code> if the context is
169
- * not transient. A transient context represents an entity created on the client which has not
170
- * been persisted in the back end.
232
+ * For a context created using {@link sap.ui.model.odata.v2.ODataModel#createEntry} or
233
+ * {@link sap.ui.model.odata.v2.ODataListBinding#create}, the method returns <code>true</code>
234
+ * if the context is transient or <code>false</code> if the context is not transient. A
235
+ * transient context represents an entity created on the client which has not been persisted in
236
+ * the back end.
171
237
  *
172
238
  * @returns {boolean}
173
- * Whether this context is transient if it has been created using
174
- * {@link sap.ui.model.odata.v2.ODataModel#createEntry}; returns <code>undefined</code> if the
175
- * context has not been created using {@link sap.ui.model.odata.v2.ODataModel#createEntry}
239
+ * <ul>
240
+ * <li><code>true</code>: if the context has been created via
241
+ * {@link sap.ui.model.odata.v2.ODataModel#createEntry} or
242
+ * {@link sap.ui.model.odata.v2.ODataListBinding#create} and is not yet persisted in the
243
+ * back end,</li>
244
+ * <li><code>false</code>: if the context has been created via
245
+ * {@link sap.ui.model.odata.v2.ODataListBinding#create}, data has been successfully
246
+ * persisted in the back end and the data is still displayed in the area of the inline
247
+ * creation rows, and</li>
248
+ * <li><code>undefined</code>: otherwise</li>
249
+ * </ul>
176
250
  *
177
251
  * @public
178
252
  * @since 1.94.0
@@ -192,6 +266,16 @@ sap.ui.define([
192
266
  return this.bUpdated;
193
267
  };
194
268
 
269
+ /**
270
+ * Resets the created promise to indicate that the entity has been re-read from the back end.
271
+ *
272
+ * @private
273
+ */
274
+ Context.prototype.resetCreatedPromise = function () {
275
+ this.oCreatePromise = undefined;
276
+ this.oSyncCreatePromise = undefined;
277
+ };
278
+
195
279
  /**
196
280
  * Sets the absolute deep path; see {@link #getDeepPath} for details.
197
281
  *
@@ -234,4 +318,4 @@ sap.ui.define([
234
318
  };
235
319
 
236
320
  return Context;
237
- }, /* bExport= */ false);
321
+ });
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @class Annotation loader for OData V2 services
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.96.5
38
+ * @version 1.99.0
39
39
  *
40
40
  * @public
41
41
  * @since 1.37.0
@@ -145,7 +145,7 @@ sap.ui.define([
145
145
  /**
146
146
  * @see sap.ui.model.ContextBinding.prototype.checkUpdate
147
147
  *
148
- * @param {boolean} bForceUpdate unused
148
+ * @param {boolean} [bForceUpdate] unused
149
149
  */
150
150
  ODataContextBinding.prototype.checkUpdate = function(/*bForceUpdate*/) {
151
151
  var oContext,
@@ -280,7 +280,7 @@ sap.ui.define([
280
280
  * @private
281
281
  */
282
282
  ODataContextBinding.prototype.setContext = function(oContext) {
283
- var oBindingContext, sContextPath, oData, bReloadNeeded, sResolvedPath,
283
+ var oBindingContext, sContextPath, oData, sNavigationProperty, bReloadNeeded, sResolvedPath,
284
284
  bForceUpdate = oContext && oContext.isRefreshForced(),
285
285
  bPreliminary = oContext && oContext.isPreliminary(),
286
286
  bTransient = oContext && oContext.isTransient && oContext.isTransient(),
@@ -303,8 +303,12 @@ sap.ui.define([
303
303
  if (Context.hasChanged(this.oContext, oContext)) {
304
304
  this.oContext = oContext;
305
305
  sResolvedPath = this.getResolvedPath();
306
- // If path doesn't resolve or parent context is created, reset current context
307
- if (!sResolvedPath || bTransient) {
306
+ if (sResolvedPath && bTransient) {
307
+ // prevent propagation of transient context if it refers to a navigation property
308
+ sNavigationProperty = this.oModel.oMetadata
309
+ ._splitByLastNavigationProperty(sResolvedPath).lastNavigationProperty;
310
+ }
311
+ if (!sResolvedPath || sNavigationProperty) {
308
312
  if (this.oElementContext !== null) {
309
313
  this.oElementContext = null;
310
314
  this._fireChange({ reason: ChangeReason.Context });