@openui5/sap.ui.core 1.103.1 → 1.106.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 (405) hide show
  1. package/.reuse/dep5 +35 -15
  2. package/LICENSES/LicenseRef-tzdata-PublicDomain.txt +5 -0
  3. package/THIRDPARTY.txt +64 -21
  4. package/package.json +1 -1
  5. package/src/jquery.sap.dom.js +10 -10
  6. package/src/jquery.sap.global.js +24 -216
  7. package/src/jquery.sap.history.js +1 -1
  8. package/src/jquery.sap.properties.js +2 -2
  9. package/src/jquery.sap.resources.js +1 -1
  10. package/src/jquery.sap.script.js +1 -1
  11. package/src/jquery.sap.storage.js +4 -4
  12. package/src/sap/base/i18n/ResourceBundle.js +7 -11
  13. package/src/sap/base/util/LoaderExtensions.js +69 -61
  14. package/src/sap/base/util/ObjectPath.js +1 -1
  15. package/src/sap/base/util/Properties.js +1 -1
  16. package/src/sap/base/util/fetch.js +228 -0
  17. package/src/sap/base/util/mixedFetch.js +69 -0
  18. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  19. package/src/sap/base/util/restricted/_castArray.js +1 -1
  20. package/src/sap/base/util/restricted/_compact.js +1 -1
  21. package/src/sap/base/util/restricted/_curry.js +1 -1
  22. package/src/sap/base/util/restricted/_debounce.js +1 -1
  23. package/src/sap/base/util/restricted/_difference.js +1 -1
  24. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  25. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  26. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  27. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  28. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  29. package/src/sap/base/util/restricted/_flatten.js +1 -1
  30. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  31. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  32. package/src/sap/base/util/restricted/_intersection.js +1 -1
  33. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  34. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  35. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  36. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  37. package/src/sap/base/util/restricted/_isNil.js +1 -1
  38. package/src/sap/base/util/restricted/_max.js +1 -1
  39. package/src/sap/base/util/restricted/_merge.js +1 -1
  40. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  41. package/src/sap/base/util/restricted/_min.js +1 -1
  42. package/src/sap/base/util/restricted/_omit.js +1 -1
  43. package/src/sap/base/util/restricted/_pick.js +1 -1
  44. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  45. package/src/sap/base/util/restricted/_throttle.js +1 -1
  46. package/src/sap/base/util/restricted/_toArray.js +1 -1
  47. package/src/sap/base/util/restricted/_union.js +1 -1
  48. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  49. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  50. package/src/sap/base/util/restricted/_uniq.js +1 -1
  51. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  52. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  53. package/src/sap/base/util/restricted/_without.js +1 -1
  54. package/src/sap/base/util/restricted/_xor.js +1 -1
  55. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  56. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  57. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  58. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  59. package/src/sap/base/util/syncFetch.js +66 -0
  60. package/src/sap/ui/Device.js +5 -5
  61. package/src/sap/ui/Global.js +7 -14
  62. package/src/sap/ui/VersionInfo.js +57 -54
  63. package/src/sap/ui/base/BindingInfo.js +198 -0
  64. package/src/sap/ui/base/DataType.js +1 -1
  65. package/src/sap/ui/base/Event.js +2 -2
  66. package/src/sap/ui/base/EventProvider.js +2 -2
  67. package/src/sap/ui/base/Interface.js +1 -1
  68. package/src/sap/ui/base/ManagedObject.js +209 -979
  69. package/src/sap/ui/base/ManagedObjectMetadata.js +6 -6
  70. package/src/sap/ui/base/ManagedObjectObserver.js +2 -2
  71. package/src/sap/ui/base/Metadata.js +1 -1
  72. package/src/sap/ui/base/Object.js +1 -1
  73. package/src/sap/ui/base/ObjectPool.js +1 -1
  74. package/src/sap/ui/core/.library +72 -50
  75. package/src/sap/ui/core/AccessKeysEnablement.js +173 -0
  76. package/src/sap/ui/core/AppCacheBuster.js +65 -51
  77. package/src/sap/ui/core/BusyIndicator.js +1 -1
  78. package/src/sap/ui/core/Component.js +52 -25
  79. package/src/sap/ui/core/ComponentContainer.js +1 -1
  80. package/src/sap/ui/core/ComponentMetadata.js +16 -23
  81. package/src/sap/ui/core/ComponentSupport.js +1 -1
  82. package/src/sap/ui/core/Configuration.js +598 -358
  83. package/src/sap/ui/core/Control.js +1 -1
  84. package/src/sap/ui/core/Core.js +126 -185
  85. package/src/sap/ui/core/CustomData.js +1 -1
  86. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  87. package/src/sap/ui/core/Element.js +68 -4
  88. package/src/sap/ui/core/ElementMetadata.js +6 -4
  89. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  90. package/src/sap/ui/core/EventBus.js +1 -1
  91. package/src/sap/ui/core/ExtensionPoint.js +2 -2
  92. package/src/sap/ui/core/FocusHandler.js +84 -39
  93. package/src/sap/ui/core/Fragment.js +1 -1
  94. package/src/sap/ui/core/HTML.js +1 -1
  95. package/src/sap/ui/core/History.js +1 -1
  96. package/src/sap/ui/core/Icon.js +1 -1
  97. package/src/sap/ui/core/IconPool.js +8 -8
  98. package/src/sap/ui/core/IndicationColorSupport.js +2 -2
  99. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  100. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  101. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  102. package/src/sap/ui/core/InvisibleText.js +4 -1
  103. package/src/sap/ui/core/Item.js +1 -1
  104. package/src/sap/ui/core/LabelEnablement.js +1 -1
  105. package/src/sap/ui/core/LayoutData.js +1 -1
  106. package/src/sap/ui/core/ListItem.js +1 -1
  107. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  108. package/src/sap/ui/core/Locale.js +1 -1
  109. package/src/sap/ui/core/LocaleData.js +8 -51
  110. package/src/sap/ui/core/Manifest.js +3 -5
  111. package/src/sap/ui/core/Message.js +1 -1
  112. package/src/sap/ui/core/Popup.js +13 -8
  113. package/src/sap/ui/core/RenderManager.js +17 -21
  114. package/src/sap/ui/core/Renderer.js +1 -1
  115. package/src/sap/ui/core/ResizeHandler.js +28 -49
  116. package/src/sap/ui/core/ScrollBar.js +1 -1
  117. package/src/sap/ui/core/SeparatorItem.js +1 -1
  118. package/src/sap/ui/core/Title.js +1 -1
  119. package/src/sap/ui/core/TooltipBase.js +12 -13
  120. package/src/sap/ui/core/UIArea.js +13 -12
  121. package/src/sap/ui/core/UIComponent.js +3 -3
  122. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  123. package/src/sap/ui/core/ValueStateSupport.js +2 -2
  124. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  125. package/src/sap/ui/core/XMLComposite.js +5 -2
  126. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  127. package/src/sap/ui/core/XMLTemplateProcessor.js +7 -7
  128. package/src/sap/ui/core/_ConfigurationProvider.js +187 -0
  129. package/src/sap/ui/core/_IconRegistry.js +66 -55
  130. package/src/sap/ui/core/cache/CacheManager.js +20 -16
  131. package/src/sap/ui/core/cache/CacheManagerNOP.js +5 -2
  132. package/src/sap/ui/core/cache/LRUPersistentCache.js +15 -8
  133. package/src/sap/ui/core/cldr/en.json +0 -1
  134. package/src/sap/ui/core/cldr/es_BO.json +3 -3
  135. package/src/sap/ui/core/cldr/es_CL.json +3 -3
  136. package/src/sap/ui/core/cldr/es_MX.json +3 -3
  137. package/src/sap/ui/core/cldr/es_PE.json +3 -3
  138. package/src/sap/ui/core/cldr/es_UY.json +3 -3
  139. package/src/sap/ui/core/cldr/es_VE.json +2 -2
  140. package/src/sap/ui/core/date/Buddhist.js +15 -13
  141. package/src/sap/ui/core/date/Japanese.js +0 -6
  142. package/src/sap/ui/core/date/UniversalDate.js +144 -34
  143. package/src/sap/ui/core/delegate/ItemNavigation.js +2 -2
  144. package/src/sap/ui/core/delegate/ScrollEnablement.js +7 -6
  145. package/src/sap/ui/core/dnd/DragAndDrop.js +13 -9
  146. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  147. package/src/sap/ui/core/dnd/DragDropInfo.js +3 -3
  148. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  149. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  150. package/src/sap/ui/core/format/DateFormat.js +36 -9
  151. package/src/sap/ui/core/format/NumberFormat.js +92 -26
  152. package/src/sap/ui/core/format/TimezoneUtil.js +2 -2
  153. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  154. package/src/sap/ui/core/library.js +44 -3
  155. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  156. package/src/sap/ui/core/message/Message.js +1 -1
  157. package/src/sap/ui/core/message/MessageManager.js +1 -1
  158. package/src/sap/ui/core/message/MessageParser.js +1 -1
  159. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  160. package/src/sap/ui/core/messagebundle.properties +2 -0
  161. package/src/sap/ui/core/messagebundle_ar.properties +54 -53
  162. package/src/sap/ui/core/messagebundle_bg.properties +54 -53
  163. package/src/sap/ui/core/messagebundle_ca.properties +28 -27
  164. package/src/sap/ui/core/messagebundle_cs.properties +37 -36
  165. package/src/sap/ui/core/messagebundle_cy.properties +57 -56
  166. package/src/sap/ui/core/messagebundle_da.properties +53 -52
  167. package/src/sap/ui/core/messagebundle_de.properties +54 -53
  168. package/src/sap/ui/core/messagebundle_el.properties +46 -45
  169. package/src/sap/ui/core/messagebundle_en.properties +57 -56
  170. package/src/sap/ui/core/messagebundle_en_GB.properties +57 -56
  171. package/src/sap/ui/core/messagebundle_en_US_sappsd.properties +1 -0
  172. package/src/sap/ui/core/messagebundle_en_US_saprigi.properties +1 -0
  173. package/src/sap/ui/core/messagebundle_en_US_saptrc.properties +1 -0
  174. package/src/sap/ui/core/messagebundle_es.properties +42 -41
  175. package/src/sap/ui/core/messagebundle_es_MX.properties +54 -53
  176. package/src/sap/ui/core/messagebundle_et.properties +51 -50
  177. package/src/sap/ui/core/messagebundle_fi.properties +48 -47
  178. package/src/sap/ui/core/messagebundle_fr.properties +37 -36
  179. package/src/sap/ui/core/messagebundle_fr_CA.properties +22 -21
  180. package/src/sap/ui/core/messagebundle_hi.properties +42 -41
  181. package/src/sap/ui/core/messagebundle_hr.properties +55 -54
  182. package/src/sap/ui/core/messagebundle_hu.properties +56 -55
  183. package/src/sap/ui/core/messagebundle_id.properties +55 -54
  184. package/src/sap/ui/core/messagebundle_it.properties +55 -54
  185. package/src/sap/ui/core/messagebundle_iw.properties +55 -54
  186. package/src/sap/ui/core/messagebundle_ja.properties +48 -47
  187. package/src/sap/ui/core/messagebundle_kk.properties +41 -40
  188. package/src/sap/ui/core/messagebundle_ko.properties +21 -20
  189. package/src/sap/ui/core/messagebundle_lt.properties +55 -54
  190. package/src/sap/ui/core/messagebundle_lv.properties +55 -54
  191. package/src/sap/ui/core/messagebundle_ms.properties +52 -51
  192. package/src/sap/ui/core/messagebundle_nl.properties +53 -52
  193. package/src/sap/ui/core/messagebundle_no.properties +53 -52
  194. package/src/sap/ui/core/messagebundle_pl.properties +52 -51
  195. package/src/sap/ui/core/messagebundle_pt.properties +54 -53
  196. package/src/sap/ui/core/messagebundle_pt_PT.properties +55 -54
  197. package/src/sap/ui/core/messagebundle_ro.properties +56 -55
  198. package/src/sap/ui/core/messagebundle_ru.properties +52 -51
  199. package/src/sap/ui/core/messagebundle_sh.properties +57 -56
  200. package/src/sap/ui/core/messagebundle_sk.properties +54 -53
  201. package/src/sap/ui/core/messagebundle_sl.properties +56 -55
  202. package/src/sap/ui/core/messagebundle_sv.properties +52 -51
  203. package/src/sap/ui/core/messagebundle_th.properties +25 -24
  204. package/src/sap/ui/core/messagebundle_tr.properties +56 -55
  205. package/src/sap/ui/core/messagebundle_uk.properties +55 -54
  206. package/src/sap/ui/core/messagebundle_vi.properties +56 -55
  207. package/src/sap/ui/core/messagebundle_zh_CN.properties +55 -54
  208. package/src/sap/ui/core/messagebundle_zh_TW.properties +55 -54
  209. package/src/sap/ui/core/mvc/Controller.js +17 -12
  210. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  211. package/src/sap/ui/core/mvc/JSONView.js +1 -1
  212. package/src/sap/ui/core/mvc/JSView.js +2 -2
  213. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  214. package/src/sap/ui/core/mvc/View.js +7 -7
  215. package/src/sap/ui/core/mvc/XMLView.js +1 -2
  216. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  217. package/src/sap/ui/core/plugin/LessSupport.js +16 -14
  218. package/src/sap/ui/core/plugin/TemplatingSupport.js +2 -1
  219. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  220. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  221. package/src/sap/ui/core/routing/Router.js +4 -4
  222. package/src/sap/ui/core/routing/async/TargetCache.js +4 -0
  223. package/src/sap/ui/core/rules/App.support.js +11 -13
  224. package/src/sap/ui/core/rules/Config.support.js +14 -14
  225. package/src/sap/ui/core/rules/CoreHelper.support.js +3 -3
  226. package/src/sap/ui/core/rules/Model.support.js +8 -8
  227. package/src/sap/ui/core/rules/Rendering.support.js +1 -1
  228. package/src/sap/ui/core/rules/Theming.support.js +8 -8
  229. package/src/sap/ui/core/rules/View.support.js +20 -13
  230. package/src/sap/ui/core/search/OpenSearchProvider.js +25 -12
  231. package/src/sap/ui/core/search/SearchProvider.js +2 -2
  232. package/src/sap/ui/core/service/Service.js +1 -1
  233. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  234. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  235. package/src/sap/ui/core/support/Hotkeys.js +2 -3
  236. package/src/sap/ui/core/support/Plugin.js +1 -1
  237. package/src/sap/ui/core/support/Support.js +3 -4
  238. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  239. package/src/sap/ui/core/support/plugins/Debugging.js +4 -4
  240. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  241. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  242. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  243. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  244. package/src/sap/ui/core/support/plugins/TechInfo.js +46 -33
  245. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  246. package/src/sap/ui/core/support/plugins/ViewInfo.js +3 -4
  247. package/src/sap/ui/core/support/support.html +1 -1
  248. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +3 -3
  249. package/src/sap/ui/core/themes/base/Icon.less +4 -0
  250. package/src/sap/ui/core/themes/base/LocalBusyIndicator.less +1 -1
  251. package/src/sap/ui/core/themes/base/base.less +26 -26
  252. package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
  253. package/src/sap/ui/core/themes/base/global.less +5 -1
  254. package/src/sap/ui/core/themes/base/shared.less +6 -0
  255. package/src/sap/ui/core/theming/Parameters.js +52 -53
  256. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  257. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  258. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  259. package/src/sap/ui/core/tmpl/Template.js +7 -5
  260. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  261. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  262. package/src/sap/ui/core/util/Export.js +1 -1
  263. package/src/sap/ui/core/util/ExportCell.js +1 -1
  264. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  265. package/src/sap/ui/core/util/ExportRow.js +1 -1
  266. package/src/sap/ui/core/util/ExportType.js +1 -1
  267. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  268. package/src/sap/ui/core/util/File.js +1 -1
  269. package/src/sap/ui/core/util/LibraryInfo.js +61 -42
  270. package/src/sap/ui/core/util/MockServer.js +45 -71
  271. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  272. package/src/sap/ui/core/util/ResponsivePaddingsEnablement.js +4 -3
  273. package/src/sap/ui/core/util/XMLPreprocessor.js +3 -3
  274. package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +1 -4
  275. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  276. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  277. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  278. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  279. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  280. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  281. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  282. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  283. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  284. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  285. package/src/sap/ui/debug/ControlTree.js +1 -1
  286. package/src/sap/ui/debug/DebugEnv.js +1 -1
  287. package/src/sap/ui/debug/PropertyList.css +1 -31
  288. package/src/sap/ui/debug/PropertyList.js +6 -240
  289. package/src/sap/ui/dom/getScrollbarSize.js +1 -1
  290. package/src/sap/ui/dom/jquery/control.js +1 -0
  291. package/src/sap/ui/events/jquery/EventSimulation.js +4 -4
  292. package/src/sap/ui/model/ClientModel.js +1 -1
  293. package/src/sap/ui/model/CompositeDataState.js +1 -1
  294. package/src/sap/ui/model/CompositeType.js +1 -1
  295. package/src/sap/ui/model/Context.js +3 -0
  296. package/src/sap/ui/model/ContextBinding.js +1 -1
  297. package/src/sap/ui/model/DataState.js +3 -3
  298. package/src/sap/ui/model/ListBinding.js +2 -2
  299. package/src/sap/ui/model/ManagedObjectBindingSupport.js +871 -0
  300. package/src/sap/ui/model/MetaModel.js +1 -1
  301. package/src/sap/ui/model/Model.js +16 -5
  302. package/src/sap/ui/model/SelectionModel.js +1 -1
  303. package/src/sap/ui/model/SimpleType.js +2 -2
  304. package/src/sap/ui/model/Sorter.js +2 -2
  305. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  306. package/src/sap/ui/model/Type.js +1 -1
  307. package/src/sap/ui/model/_Helper.js +3 -1
  308. package/src/sap/ui/model/analytics/odata4analytics.js +2 -2
  309. package/src/sap/ui/model/base/ManagedObjectModel.js +2 -2
  310. package/src/sap/ui/model/json/JSONModel.js +2 -2
  311. package/src/sap/ui/model/message/MessageModel.js +1 -1
  312. package/src/sap/ui/model/odata/AnnotationHelper.js +4 -4
  313. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  314. package/src/sap/ui/model/odata/ODataMessageParser.js +4 -4
  315. package/src/sap/ui/model/odata/ODataMetaModel.js +10 -10
  316. package/src/sap/ui/model/odata/ODataMetadata.js +6 -3
  317. package/src/sap/ui/model/odata/ODataModel.js +1 -1
  318. package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +459 -268
  319. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  320. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  321. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  322. package/src/sap/ui/model/odata/type/Date.js +1 -1
  323. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  324. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  325. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  326. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  327. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  328. package/src/sap/ui/model/odata/type/Double.js +1 -1
  329. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  330. package/src/sap/ui/model/odata/type/Int.js +1 -1
  331. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  332. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  333. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  334. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  335. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  336. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  337. package/src/sap/ui/model/odata/type/Single.js +1 -1
  338. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  339. package/src/sap/ui/model/odata/type/String.js +1 -1
  340. package/src/sap/ui/model/odata/type/Time.js +1 -1
  341. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  342. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  343. package/src/sap/ui/model/odata/v2/Context.js +5 -5
  344. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  345. package/src/sap/ui/model/odata/v2/ODataContextBinding.js +5 -2
  346. package/src/sap/ui/model/odata/v2/ODataListBinding.js +26 -1
  347. package/src/sap/ui/model/odata/v2/ODataModel.js +164 -125
  348. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +18 -2
  349. package/src/sap/ui/model/odata/v4/AnnotationHelper.js +3 -3
  350. package/src/sap/ui/model/odata/v4/Context.js +169 -79
  351. package/src/sap/ui/model/odata/v4/ODataBinding.js +51 -12
  352. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +111 -92
  353. package/src/sap/ui/model/odata/v4/ODataListBinding.js +206 -150
  354. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +13 -10
  355. package/src/sap/ui/model/odata/v4/ODataModel.js +249 -28
  356. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +33 -18
  357. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +17 -11
  358. package/src/sap/ui/model/odata/v4/ODataUtils.js +7 -4
  359. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +142 -35
  360. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +167 -16
  361. package/src/sap/ui/model/odata/v4/lib/_Cache.js +388 -188
  362. package/src/sap/ui/model/odata/v4/lib/_ConcatHelper.js +2 -3
  363. package/src/sap/ui/model/odata/v4/lib/_Helper.js +119 -43
  364. package/src/sap/ui/model/odata/v4/lib/_MinMaxHelper.js +2 -3
  365. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +13 -6
  366. package/src/sap/ui/model/resource/ResourceModel.js +2 -2
  367. package/src/sap/ui/model/type/Boolean.js +1 -1
  368. package/src/sap/ui/model/type/Currency.js +2 -2
  369. package/src/sap/ui/model/type/Date.js +1 -1
  370. package/src/sap/ui/model/type/DateInterval.js +1 -1
  371. package/src/sap/ui/model/type/DateTime.js +1 -1
  372. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  373. package/src/sap/ui/model/type/FileSize.js +1 -1
  374. package/src/sap/ui/model/type/Float.js +1 -1
  375. package/src/sap/ui/model/type/Integer.js +1 -1
  376. package/src/sap/ui/model/type/String.js +2 -2
  377. package/src/sap/ui/model/type/Time.js +1 -1
  378. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  379. package/src/sap/ui/model/type/Unit.js +1 -1
  380. package/src/sap/ui/model/xml/XMLModel.js +4 -2
  381. package/src/sap/ui/performance/trace/FESR.js +27 -24
  382. package/src/sap/ui/performance/trace/Interaction.js +66 -16
  383. package/src/sap/ui/qunit/QUnitUtils.js +1 -2
  384. package/src/sap/ui/qunit/sinon-qunit-bridge.js +1 -1
  385. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  386. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  387. package/src/sap/ui/test/Opa5.js +1 -1
  388. package/src/sap/ui/test/OpaBuilder.js +1 -1
  389. package/src/sap/ui/test/TestUtils.js +35 -2
  390. package/src/sap/ui/test/actions/Press.js +7 -0
  391. package/src/sap/ui/test/generic/TestBase.js +1 -1
  392. package/src/sap/ui/test/matchers/AggregationContainsPropertyEqual.js +2 -3
  393. package/src/sap/ui/test/matchers/AggregationFilled.js +2 -3
  394. package/src/sap/ui/test/matchers/AggregationLengthEquals.js +2 -3
  395. package/src/sap/ui/test/matchers/Matcher.js +9 -11
  396. package/src/sap/ui/test/opaQunit.js +15 -9
  397. package/src/sap/ui/test/pipelines/ActionPipeline.js +2 -3
  398. package/src/sap/ui/test/pipelines/MatcherPipeline.js +2 -3
  399. package/src/sap/ui/test/pipelines/PipelineFactory.js +2 -3
  400. package/src/sap/ui/thirdparty/IPv6.js +1 -1
  401. package/src/sap/ui/thirdparty/SecondLevelDomains.js +1 -1
  402. package/src/sap/ui/thirdparty/URI.js +8 -2
  403. package/src/sap/ui/thirdparty/URITemplate.js +1 -1
  404. package/src/sap/ui/util/Storage.js +1 -1
  405. package/src/sap/ui/util/XMLHelper.js +1 -1
@@ -74,7 +74,7 @@ sap.ui.define([
74
74
  * @mixes sap.ui.model.odata.v4.ODataParentBinding
75
75
  * @public
76
76
  * @since 1.37.0
77
- * @version 1.103.1
77
+ * @version 1.106.0
78
78
  *
79
79
  * @borrows sap.ui.model.odata.v4.ODataBinding#getGroupId as #getGroupId
80
80
  * @borrows sap.ui.model.odata.v4.ODataBinding#getRootBinding as #getRootBinding
@@ -235,7 +235,10 @@ sap.ui.define([
235
235
  // the context(s) in that uppermost binding. Note that no data may be available in the
236
236
  // uppermost context binding and hence the deletion would not work there, BCP 1980308439.
237
237
  var oEmptyPathParentContext = this._findEmptyPathParentContext(this.oElementContext),
238
- oEmptyPathParentBinding = oEmptyPathParentContext.getBinding();
238
+ oEmptyPathParentBinding = oEmptyPathParentContext.getBinding(),
239
+ oDeleteParentContext = oEmptyPathParentBinding.getContext(),
240
+ oReturnValueContext = oEmptyPathParentBinding.oReturnValueContext,
241
+ that = this;
239
242
 
240
243
  // In case the uppermost parent reached with empty paths is a list binding, delete there.
241
244
  if (!oEmptyPathParentBinding.execute) {
@@ -249,27 +252,27 @@ sap.ui.define([
249
252
  // deleteFromCache call below. In Context#delete the error is reported.
250
253
  }
251
254
 
252
- return this.deleteFromCache(oGroupLock, sEditUrl, "", null, bDoNotRequestCount,
253
- function () {
254
- oEmptyPathParentBinding._destroyContextAfterDelete();
255
- });
256
- };
257
-
258
- /**
259
- * Destroys the element context and, if available, the return value context, and fires a
260
- * change. The method is called by #_delete, possibly at another context binding for the same
261
- * entity, after the successful deletion in the back end.
262
- *
263
- * @private
264
- */
265
- ODataContextBinding.prototype._destroyContextAfterDelete = function () {
266
- this.oElementContext.destroy();
267
- this.oElementContext = null;
268
- if (this.oReturnValueContext) {
269
- this.oReturnValueContext.destroy();
270
- this.oReturnValueContext = null;
255
+ oEmptyPathParentBinding.oElementContext = null;
256
+ if (oReturnValueContext) {
257
+ oEmptyPathParentBinding.oReturnValueContext = null;
271
258
  }
272
259
  this._fireChange({reason : ChangeReason.Remove});
260
+ return this.deleteFromCache(oGroupLock, sEditUrl, "", null).then(function () {
261
+ oEmptyPathParentContext.destroy();
262
+ if (oReturnValueContext) {
263
+ oReturnValueContext.destroy();
264
+ }
265
+ }, function (oError) {
266
+ if (!oEmptyPathParentBinding.isRelative()
267
+ || oDeleteParentContext === oEmptyPathParentBinding.getContext()) {
268
+ oEmptyPathParentBinding.oElementContext = oEmptyPathParentContext;
269
+ if (oReturnValueContext) {
270
+ oEmptyPathParentBinding.oReturnValueContext = oReturnValueContext;
271
+ }
272
+ that._fireChange({reason : ChangeReason.Insert});
273
+ }
274
+ throw oError;
275
+ });
273
276
  };
274
277
 
275
278
  /**
@@ -343,39 +346,43 @@ sap.ui.define([
343
346
 
344
347
  if (that.isReturnValueLikeBindingParameter(oOperationMetadata)) {
345
348
  oOldValue = that.oContext.getValue();
349
+ // Note: sContextPredicate missing e.g. when collection-bound
346
350
  sContextPredicate = oOldValue
347
351
  && _Helper.getPrivateAnnotation(oOldValue, "predicate");
348
352
  sResponsePredicate = _Helper.getPrivateAnnotation(
349
353
  oResponseEntity, "predicate");
350
- if (sContextPredicate === sResponsePredicate) {
351
- // this is synchronous, because the entity to be patched is available in
352
- // the context (we already read its predicate)
353
- that.oContext.patch(oResponseEntity);
354
- }
355
- }
356
-
357
- if (that.hasReturnValueContext(oOperationMetadata)) {
358
- if (that.oReturnValueContext) {
359
- that.oReturnValueContext.destroy();
360
- }
361
-
362
- if (bReplaceWithRVC) {
363
- that.oCache = null;
364
- that.oCachePromise = SyncPromise.resolve(null);
365
- oResult = that.oContext.getBinding().doReplaceWith(that.oContext,
366
- oResponseEntity, sResponsePredicate);
367
- oResult.setNewGeneration();
368
354
 
369
- return oResult;
355
+ if (sResponsePredicate) {
356
+ if (sContextPredicate === sResponsePredicate) {
357
+ // this is sync, because the entity to be patched is available in
358
+ // the context (we already read its predicate)
359
+ that.oContext.patch(oResponseEntity);
360
+ }
361
+ if (that.hasReturnValueContext()) {
362
+ if (bReplaceWithRVC) {
363
+ that.oCache = null;
364
+ that.oCachePromise = SyncPromise.resolve(null);
365
+ oResult = that.oContext.getBinding()
366
+ .doReplaceWith(that.oContext, oResponseEntity,
367
+ sResponsePredicate);
368
+ oResult.setNewGeneration();
369
+
370
+ return oResult;
371
+ }
372
+
373
+ that.oReturnValueContext = Context.createNewContext(that.oModel,
374
+ that,
375
+ getReturnValueContextPath(sResolvedPath, sResponsePredicate));
376
+ // set the resource path for late property requests
377
+ that.oCache.setResourcePath(
378
+ that.oReturnValueContext.getPath().slice(1));
379
+
380
+ return that.oReturnValueContext;
381
+ }
370
382
  }
383
+ }
371
384
 
372
- that.oReturnValueContext = Context.createNewContext(that.oModel,
373
- that, getReturnValueContextPath(sResolvedPath, sResponsePredicate));
374
- // set the resource path for late property requests
375
- that.oCache.setResourcePath(that.oReturnValueContext.getPath().slice(1));
376
-
377
- return that.oReturnValueContext;
378
- } else if (bReplaceWithRVC) {
385
+ if (bReplaceWithRVC) {
379
386
  throw new Error("Cannot replace w/o return value context");
380
387
  }
381
388
  });
@@ -393,10 +400,6 @@ sap.ui.define([
393
400
  });
394
401
  }).catch(function (oError) {
395
402
  oGroupLock.unlock(true);
396
- if (that.oReturnValueContext) {
397
- that.oReturnValueContext.destroy();
398
- that.oReturnValueContext = null;
399
- }
400
403
  that.oModel.reportError("Failed to execute " + sResolvedPath, sClassName, oError);
401
404
  throw oError;
402
405
  });
@@ -497,7 +500,12 @@ sap.ui.define([
497
500
  * If a back-end request fails, the 'dataReceived' event provides an <code>Error</code> in the
498
501
  * 'error' event parameter.
499
502
  *
503
+ * Since 1.106 this event is bubbled up to the model, unless a listener calls
504
+ * {@link sap.ui.base.Event#cancelBubble oEvent.cancelBubble()}.
505
+ *
500
506
  * @param {sap.ui.base.Event} oEvent
507
+ * @param {function} oEvent.cancelBubble
508
+ * A callback function to prevent that the event is bubbled up to the model
501
509
  * @param {object} oEvent.getParameters()
502
510
  * @param {object} [oEvent.getParameters().data]
503
511
  * An empty data object if a back-end request succeeds
@@ -506,6 +514,7 @@ sap.ui.define([
506
514
  *
507
515
  * @event sap.ui.model.odata.v4.ODataContextBinding#dataReceived
508
516
  * @public
517
+ * @see sap.ui.model.odata.v4.ODataModel#event:dataReceived
509
518
  * @since 1.37.0
510
519
  */
511
520
 
@@ -517,10 +526,16 @@ sap.ui.define([
517
526
  * fired: Whatever should happen in the event handler attached to that event, can instead be
518
527
  * done before calling {@link #execute}.
519
528
  *
529
+ * Since 1.106 this event is bubbled up to the model, unless a listener calls
530
+ * {@link sap.ui.base.Event#cancelBubble oEvent.cancelBubble()}.
531
+ *
520
532
  * @param {sap.ui.base.Event} oEvent
533
+ * @param {function} oEvent.cancelBubble
534
+ * A callback function to prevent that the event is bubbled up to the model
521
535
  *
522
536
  * @event sap.ui.model.odata.v4.ODataContextBinding#dataRequested
523
537
  * @public
538
+ * @see sap.ui.model.odata.v4.ODataModel#event:dataRequested
524
539
  * @since 1.37.0
525
540
  */
526
541
 
@@ -650,15 +665,16 @@ sap.ui.define([
650
665
  * @returns {string} The original resource path
651
666
  */
652
667
  function getOriginalResourcePath(oResponseEntity) {
653
- if (that.hasReturnValueContext(oOperationMetadata)) {
654
- return getReturnValueContextPath(sOriginalResourcePath,
655
- _Helper.getPrivateAnnotation(oResponseEntity, "predicate"));
656
- }
657
- if (that.isReturnValueLikeBindingParameter(oOperationMetadata)
658
- && _Helper.getPrivateAnnotation(vEntity, "predicate")
659
- === _Helper.getPrivateAnnotation(oResponseEntity, "predicate")) {
660
- // return value is *same* as binding parameter: attach messages to the latter
661
- return sOriginalResourcePath.slice(0, sOriginalResourcePath.lastIndexOf("/"));
668
+ if (that.isReturnValueLikeBindingParameter(oOperationMetadata)) {
669
+ if (that.hasReturnValueContext()) {
670
+ return getReturnValueContextPath(sOriginalResourcePath,
671
+ _Helper.getPrivateAnnotation(oResponseEntity, "predicate"));
672
+ }
673
+ if (_Helper.getPrivateAnnotation(vEntity, "predicate")
674
+ === _Helper.getPrivateAnnotation(oResponseEntity, "predicate")) {
675
+ // return value is *same* as binding parameter: attach messages to the latter
676
+ return sOriginalResourcePath.slice(0, sOriginalResourcePath.lastIndexOf("/"));
677
+ }
662
678
  }
663
679
 
664
680
  return sOriginalResourcePath;
@@ -717,6 +733,10 @@ sap.ui.define([
717
733
  throw new Error("Unsupported parameters for navigation property");
718
734
  }
719
735
 
736
+ if (that.oReturnValueContext) {
737
+ that.oReturnValueContext.destroy();
738
+ that.oReturnValueContext = null;
739
+ }
720
740
  this.oOperation.bAction = bAction;
721
741
  this.oOperation.mRefreshParameters = mParameters;
722
742
  mParameters = Object.assign({}, mParameters);
@@ -869,16 +889,17 @@ sap.ui.define([
869
889
  * @param {boolean} [bReplaceWithRVC]
870
890
  * Whether this operation binding's parent context, which must belong to a list binding, is
871
891
  * replaced with the operation's return value context (see below) and that list context is
872
- * returned instead. The list context may be a newly created context or an existing context.
892
+ * returned instead. That list context may be a newly created context or an existing context.
873
893
  * A newly created context has the same <code>keepAlive</code> attribute and
874
894
  * <code>fnOnBeforeDestroy</code> function as the parent context, see
875
895
  * {@link sap.ui.model.odata.v4.Context#setKeepAlive}; <code>fnOnBeforeDestroy</code> will be
876
896
  * called with the new context instance as the only argument in this case. An existing context
877
897
  * does not change its <code>keepAlive</code> attribute. In any case, the resulting context
878
- * takes the place (index, position) of the parent context
879
- * {@link sap.ui.model.odata.v4.Context#getIndex}. If the parent context has requested
880
- * messages when it was kept alive, they will be inherited if the $$inheritExpandSelect
881
- * binding parameter is set to <code>true</code>. Since 1.97.0.
898
+ * takes the place (index, position) of the parent context (see
899
+ * {@link sap.ui.model.odata.v4.Context#getIndex}), which need not be in the collection
900
+ * currently if it is {@link sap.ui.model.odata.v4.Context#isKeepAlive kept alive}. If the
901
+ * parent context has requested messages when it was kept alive, they will be inherited if the
902
+ * $$inheritExpandSelect binding parameter is set to <code>true</code>. Since 1.97.0.
882
903
  * @returns {Promise}
883
904
  * A promise that is resolved without data or with a return value context when the operation
884
905
  * call succeeded, or rejected with an <code>Error</code> instance <code>oError</code> in case
@@ -901,7 +922,8 @@ sap.ui.define([
901
922
  * operation response. It is created only if the operation is bound and has a single entity
902
923
  * return value from the same entity set as the operation's binding parameter and has a
903
924
  * parent context which is a {@link sap.ui.model.odata.v4.Context} and points to an entity
904
- * from an entity set.<br>
925
+ * from an entity set. It is destroyed the next time this operation binding is executed again!
926
+ * <br>
905
927
  * If a return value context is created, it must be used instead of
906
928
  * <code>this.getBoundContext()</code>. All bound messages will be related to the return value
907
929
  * context only. Such a message can only be connected to a corresponding control if the
@@ -950,7 +972,7 @@ sap.ui.define([
950
972
  if (bReplaceWithRVC) {
951
973
  if (!this.oContext.getBinding) {
952
974
  throw new Error("Cannot replace this parent context: " + this.oContext);
953
- }
975
+ } // Note: parent context need not have a key predicate!
954
976
  this.oContext.getBinding().checkKeepAlive(this.oContext);
955
977
  }
956
978
  } else if (bReplaceWithRVC) {
@@ -996,7 +1018,8 @@ sap.ui.define([
996
1018
  throw oError;
997
1019
  }
998
1020
  return oCachePromise.then(function (oCache) {
999
- var bDataRequested = false,
1021
+ var bPreventBubbling,
1022
+ bDataRequested = false,
1000
1023
  oGroupLock,
1001
1024
  sResolvedPath = that.getResolvedPath(),
1002
1025
  sRelativePath = oCache || that.oOperation
@@ -1031,11 +1054,12 @@ sap.ui.define([
1031
1054
  oGroupLock = that.oReadGroupLock || that.lockGroup();
1032
1055
  that.oReadGroupLock = undefined;
1033
1056
  }
1057
+ bPreventBubbling = that.isRefreshWithoutBubbling();
1034
1058
 
1035
1059
  return that.resolveRefreshPromise(
1036
1060
  oCache.fetchValue(oGroupLock, sRelativePath, function () {
1037
1061
  bDataRequested = true;
1038
- that.fireDataRequested();
1062
+ that.fireDataRequested(bPreventBubbling);
1039
1063
  }, oListener)
1040
1064
  ).then(function (vValue) {
1041
1065
  that.assertSameCache(oCache);
@@ -1043,7 +1067,7 @@ sap.ui.define([
1043
1067
  return vValue;
1044
1068
  }).then(function (vValue) {
1045
1069
  if (bDataRequested) {
1046
- that.fireDataReceived({data : {}});
1070
+ that.fireDataReceived({data : {}}, bPreventBubbling);
1047
1071
  }
1048
1072
  return vValue;
1049
1073
  }, function (oError) {
@@ -1051,7 +1075,8 @@ sap.ui.define([
1051
1075
  if (bDataRequested) {
1052
1076
  that.oModel.reportError("Failed to read path " + sResolvedPath, sClassName,
1053
1077
  oError);
1054
- that.fireDataReceived(oError.canceled ? {data : {}} : {error : oError});
1078
+ that.fireDataReceived(oError.canceled ? {data : {}} : {error : oError},
1079
+ bPreventBubbling);
1055
1080
  }
1056
1081
  throw oError;
1057
1082
  });
@@ -1202,19 +1227,15 @@ sap.ui.define([
1202
1227
  * (a) a V4 parent context which
1203
1228
  * (b) points to an entity from an entity set w/o navigation properties.
1204
1229
  *
1205
- * @param {object} oMetadata The operation metadata
1230
+ * BEWARE: It is the caller's duty to check 1. through 4.(a) via
1231
+ * {@link #isReturnValueLikeBindingParameter}!
1232
+ *
1206
1233
  * @returns {boolean} Whether a return value context is created
1207
1234
  *
1208
1235
  * @private
1209
1236
  */
1210
- ODataContextBinding.prototype.hasReturnValueContext = function (oMetadata) {
1211
- var aMetaSegments;
1212
-
1213
- if (!this.isReturnValueLikeBindingParameter(oMetadata)) {
1214
- return false;
1215
- }
1216
-
1217
- aMetaSegments = _Helper.getMetaPath(this.getResolvedPath()).split("/");
1237
+ ODataContextBinding.prototype.hasReturnValueContext = function () {
1238
+ var aMetaSegments = _Helper.getMetaPath(this.getResolvedPath()).split("/");
1218
1239
 
1219
1240
  // case 4b
1220
1241
  return aMetaSegments.length === 3
@@ -1256,6 +1277,7 @@ sap.ui.define([
1256
1277
  * @returns {boolean} Whether operation's return value is like its binding parameter
1257
1278
  *
1258
1279
  * @private
1280
+ * @see #hasReturnValueContext
1259
1281
  */
1260
1282
  ODataContextBinding.prototype.isReturnValueLikeBindingParameter = function (oMetadata) {
1261
1283
  var oParentMetaData, sParentMetaPath;
@@ -1362,7 +1384,9 @@ sap.ui.define([
1362
1384
  bKeepCacheOnError ? sGroupId : undefined);
1363
1385
  // Do not fire a change event, or else ManagedObject destroys and recreates the
1364
1386
  // binding hierarchy causing a flood of events.
1365
- oPromise = bHasChangeListeners ? that.createRefreshPromise() : undefined;
1387
+ oPromise = bHasChangeListeners
1388
+ ? that.createRefreshPromise(/*bPreventBubbling*/bKeepCacheOnError)
1389
+ : undefined;
1366
1390
  if (bKeepCacheOnError && oPromise) {
1367
1391
  oPromise = oPromise.catch(function (oError) {
1368
1392
  return that.fetchResourcePath(that.oContext).then(function (sResourcePath) {
@@ -1450,9 +1474,6 @@ sap.ui.define([
1450
1474
  */
1451
1475
  ODataContextBinding.prototype.requestSideEffects = function (sGroupId, aPaths, oContext) {
1452
1476
  var oModel = this.oModel,
1453
- // Hash set of collection-valued navigation property meta paths (relative to the cache's
1454
- // root) which need to be refreshed, maps string to <code>true</code>
1455
- mNavigationPropertyPaths = {},
1456
1477
  aPromises = [],
1457
1478
  that = this;
1458
1479
 
@@ -1476,10 +1497,9 @@ sap.ui.define([
1476
1497
  try {
1477
1498
  aPromises.push(
1478
1499
  this.oCache.requestSideEffects(this.lockGroup(sGroupId), aPaths,
1479
- mNavigationPropertyPaths, oContext && oContext.getPath().slice(1)));
1500
+ oContext && oContext.getPath().slice(1)));
1480
1501
 
1481
- this.visitSideEffects(sGroupId, aPaths, oContext, mNavigationPropertyPaths,
1482
- aPromises);
1502
+ this.visitSideEffects(sGroupId, aPaths, oContext, aPromises);
1483
1503
 
1484
1504
  return SyncPromise.all(aPromises.map(reportError)).then(function () {
1485
1505
  return that.refreshDependentListBindingsWithoutCache();
@@ -1498,10 +1518,9 @@ sap.ui.define([
1498
1518
  /**
1499
1519
  * Returns a promise on the value for the given path relative to this binding. The function
1500
1520
  * allows access to the complete data the binding points to (if <code>sPath</code> is "") or
1501
- * any part thereof. The data is a JSON structure as described in
1502
- * <a
1503
- * href="http://docs.oasis-open.org/odata/odata-json-format/v4.0/odata-json-format-v4.0.html">
1504
- * "OData JSON Format Version 4.0"</a>.
1521
+ * any part thereof. The data is a JSON structure as described in <a href=
1522
+ * "https://docs.oasis-open.org/odata/odata-json-format/v4.0/odata-json-format-v4.0.html"
1523
+ * >"OData JSON Format Version 4.0"</a>.
1505
1524
  * Note that the function clones the result. Modify values via
1506
1525
  * {@link sap.ui.model.odata.v4.Context#setProperty}.
1507
1526
  *
@@ -1510,7 +1529,7 @@ sap.ui.define([
1510
1529
  *
1511
1530
  * @param {string} [sPath=""]
1512
1531
  * A path relative to this context binding
1513
- * @returns {Promise}
1532
+ * @returns {Promise<any|undefined>}
1514
1533
  * A promise on the requested value; in case there is no bound context this promise resolves
1515
1534
  * with <code>undefined</code>
1516
1535
  * @throws {Error}