@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
@@ -49,7 +49,6 @@ sap.ui.define([
49
49
  EdmDate, DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Raw, SByte, Single,
50
50
  Stream, String, TimeOfDay, URI) {
51
51
  "use strict";
52
- /*global Map */
53
52
  /*eslint max-nested-callbacks: 0 */
54
53
 
55
54
  var Any = ManagedObject.extend("sap.ui.model.odata.v4._any", {
@@ -64,10 +63,7 @@ sap.ui.define([
64
63
  DEBUG = Log.Level.DEBUG,
65
64
  rLeftBraces = /\$\(/g,
66
65
  rNumber = /^-?\d+$/,
67
- ODataMetaContextBinding,
68
- ODataMetaListBinding,
69
66
  sODataMetaModel = "sap.ui.model.odata.v4.ODataMetaModel",
70
- ODataMetaPropertyBinding,
71
67
  rPredicate = /\(.*\)$/,
72
68
  oRawType = new Raw(),
73
69
  rRightBraces = /\$\)/g,
@@ -81,7 +77,7 @@ sap.ui.define([
81
77
  "Edm.Date" : {Type : EdmDate},
82
78
  "Edm.DateTimeOffset" : {
83
79
  constraints : {
84
- "$Precision" : "precision"
80
+ $Precision : "precision"
85
81
  },
86
82
  Type : DateTimeOffset
87
83
  },
@@ -93,8 +89,8 @@ sap.ui.define([
93
89
  "@Org.OData.Validation.V1.Maximum/$Decimal" : "maximum",
94
90
  "@Org.OData.Validation.V1.Maximum@Org.OData.Validation.V1.Exclusive" :
95
91
  "maximumExclusive",
96
- "$Precision" : "precision",
97
- "$Scale" : "scale"
92
+ $Precision : "precision",
93
+ $Scale : "scale"
98
94
  },
99
95
  Type : Decimal
100
96
  },
@@ -109,13 +105,13 @@ sap.ui.define([
109
105
  "Edm.String" : {
110
106
  constraints : {
111
107
  "@com.sap.vocabularies.Common.v1.IsDigitSequence" : "isDigitSequence",
112
- "$MaxLength" : "maxLength"
108
+ $MaxLength : "maxLength"
113
109
  },
114
110
  Type : String
115
111
  },
116
112
  "Edm.TimeOfDay" : {
117
113
  constraints : {
118
- "$Precision" : "precision"
114
+ $Precision : "precision"
119
115
  },
120
116
  Type : TimeOfDay
121
117
  }
@@ -127,7 +123,47 @@ sap.ui.define([
127
123
  sValueListRelevantQualifiers
128
124
  = "@com.sap.vocabularies.Common.v1.ValueListRelevantQualifiers",
129
125
  sValueListWithFixedValues = "@com.sap.vocabularies.Common.v1.ValueListWithFixedValues",
130
- WARNING = Log.Level.WARNING;
126
+ WARNING = Log.Level.WARNING,
127
+ ODataMetaContextBinding,
128
+ /**
129
+ * Do <strong>NOT</strong> call this private constructor, but rather use
130
+ * {@link sap.ui.model.odata.v4.ODataModel#getMetaModel} instead.
131
+ *
132
+ * @param {object} oRequestor
133
+ * The metadata requestor
134
+ * @param {string} sUrl
135
+ * The URL to the $metadata document of the service
136
+ * @param {string|string[]} [vAnnotationUri]
137
+ * The URL (or an array of URLs) from which the annotation metadata are loaded
138
+ * Supported since 1.41.0
139
+ * @param {sap.ui.model.odata.v4.ODataModel} oModel
140
+ * The model this meta model is related to
141
+ * @param {boolean} [bSupportReferences=true]
142
+ * Whether <code>&lt;edmx:Reference></code> and <code>&lt;edmx:Include></code> directives
143
+ * are supported in order to load schemas on demand from other $metadata documents and
144
+ * include them into the current service ("cross-service references").
145
+ *
146
+ * @alias sap.ui.model.odata.v4.ODataMetaModel
147
+ * @author SAP SE
148
+ * @class Implementation of an OData metadata model which offers access to OData V4
149
+ * metadata. The meta model does not support any public events; attaching an event handler
150
+ * leads to an error.
151
+ *
152
+ * This model is read-only.
153
+ *
154
+ * This model is not prepared to be inherited from.
155
+ *
156
+ * @extends sap.ui.model.MetaModel
157
+ * @hideconstructor
158
+ * @public
159
+ * @since 1.37.0
160
+ * @version 1.99.1
161
+ */
162
+ ODataMetaModel = MetaModel.extend("sap.ui.model.odata.v4.ODataMetaModel", {
163
+ constructor : constructor
164
+ }),
165
+ ODataMetaListBinding,
166
+ ODataMetaPropertyBinding;
131
167
 
132
168
  /**
133
169
  * Adds the given reference URI to the map of reference URIs for schemas.
@@ -250,8 +286,8 @@ sap.ui.define([
250
286
  * The term
251
287
  * @param {string} sExpectedTerm
252
288
  * The expected term
253
- * @returns {string}
254
- * The qualifier or undefined, if the term is not the expected term
289
+ * @returns {string|undefined}
290
+ * The qualifier or <code>undefined</code>, if the term is not the expected term
255
291
  */
256
292
  function getQualifier(sTerm, sExpectedTerm) {
257
293
  if (sTerm === sExpectedTerm) {
@@ -268,8 +304,8 @@ sap.ui.define([
268
304
  *
269
305
  * @param {string} sTerm
270
306
  * The term
271
- * @returns {string}
272
- * The qualifier or undefined, if the term is not as expected
307
+ * @returns {string|undefined}
308
+ * The qualifier or <code>undefined</code>, if the term is not as expected
273
309
  */
274
310
  function getValueListQualifier(sTerm) {
275
311
  var sQualifier = getQualifier(sTerm, sValueListMapping);
@@ -370,6 +406,10 @@ sap.ui.define([
370
406
  return sQualifiedName.slice(0, sQualifiedName.lastIndexOf(".") + 1);
371
407
  }
372
408
 
409
+ //*********************************************************************************************
410
+ // ODataMetaContextBinding
411
+ //*********************************************************************************************
412
+
373
413
  /**
374
414
  * @class Context binding implementation for the OData metadata model.
375
415
  *
@@ -387,6 +427,7 @@ sap.ui.define([
387
427
  // @see sap.ui.model.Binding#initialize
388
428
  initialize : function () {
389
429
  var oElementContext = this.oModel.createBindingContext(this.sPath, this.oContext);
430
+
390
431
  this.bInitial = false; // initialize() has been called
391
432
  if (oElementContext !== this.oElementContext) {
392
433
  this.oElementContext = oElementContext;
@@ -407,6 +448,10 @@ sap.ui.define([
407
448
  }
408
449
  });
409
450
 
451
+ //*********************************************************************************************
452
+ // ODataMetaListBinding
453
+ //*********************************************************************************************
454
+
410
455
  /**
411
456
  * @class List binding implementation for the OData metadata model which supports filtering on
412
457
  * the virtual property "@sapui.name" (which refers back to the name of the object in
@@ -481,7 +526,7 @@ sap.ui.define([
481
526
  return Object.keys(oResult).filter(function (sKey) {
482
527
  // always filter technical properties;
483
528
  // filter annotations iff not iterating them
484
- return sKey[0] !== "$" && bIterateAnnotations !== (sKey[0] !== "@");
529
+ return sKey[0] !== "$" && bIterateAnnotations !== (sKey[0] !== "@");
485
530
  }).map(function (sKey) {
486
531
  return new BaseContext(that.oModel, sResolvedPath + sKey);
487
532
  });
@@ -551,6 +596,10 @@ sap.ui.define([
551
596
  }
552
597
  });
553
598
 
599
+ //*********************************************************************************************
600
+ // ODataMetaPropertyBinding
601
+ //*********************************************************************************************
602
+
554
603
  /**
555
604
  * @class Property binding implementation for the OData metadata model.
556
605
  *
@@ -626,11 +675,15 @@ sap.ui.define([
626
675
  }
627
676
  });
628
677
 
678
+ //*********************************************************************************************
679
+ // ODataMetaModel
680
+ //*********************************************************************************************
681
+
629
682
  /**
630
683
  * Do <strong>NOT</strong> call this private constructor, but rather use
631
684
  * {@link sap.ui.model.odata.v4.ODataModel#getMetaModel} instead.
632
685
  *
633
- * @param {object} oRequestor
686
+ * @param {sap.ui.model.odata.v4.lib._MetadataRequestor} oRequestor
634
687
  * The metadata requestor
635
688
  * @param {string} sUrl
636
689
  * The URL to the $metadata document of the service
@@ -643,57 +696,36 @@ sap.ui.define([
643
696
  * Whether <code>&lt;edmx:Reference></code> and <code>&lt;edmx:Include></code> directives are
644
697
  * supported in order to load schemas on demand from other $metadata documents and include
645
698
  * them into the current service ("cross-service references").
646
- *
647
- * @alias sap.ui.model.odata.v4.ODataMetaModel
648
- * @author SAP SE
649
- * @class Implementation of an OData metadata model which offers access to OData V4 metadata.
650
- * The meta model does not support any public events; attaching an event handler leads to an
651
- * error.
652
- *
653
- * This model is read-only.
654
- *
655
- * This model is not prepared to be inherited from.
656
- *
657
- * @extends sap.ui.model.MetaModel
658
- * @hideconstructor
659
- * @public
660
- * @since 1.37.0
661
- * @version 1.97.1
662
699
  */
663
- var ODataMetaModel = MetaModel.extend("sap.ui.model.odata.v4.ODataMetaModel", {
664
- /*
665
- * @param {sap.ui.model.odata.v4.lib._MetadataRequestor} oRequestor
666
- */
667
- constructor : function (oRequestor, sUrl, vAnnotationUri, oModel, bSupportReferences) {
668
- MetaModel.call(this);
669
- this.aAnnotationUris = vAnnotationUri && !Array.isArray(vAnnotationUri)
670
- ? [vAnnotationUri] : vAnnotationUri;
671
- this.sDefaultBindingMode = BindingMode.OneTime;
672
- this.mETags = {};
673
- this.oLastModified = new Date(0);
674
- this.oMetadataPromise = null;
675
- this.oModel = oModel;
676
- this.mMetadataUrl2Promise = {};
677
- this.oRequestor = oRequestor;
678
- // maps the schema name to a map containing the URL references for the schema as key
679
- // and a boolean value whether the schema has been read already as value; the URL
680
- // reference is used by _MetadataRequestor#read()
681
- // Example:
682
- // mSchema2MetadataUrl = {
683
- // "A." : {"/A/$metadata" : false}, // namespace not yet read
684
- // // multiple references are ok as long as they are not read
685
- // "A.A." : {"/A/$metadata" : false, "/A/V2/$metadata" : false},
686
- // "B." : {"/B/$metadata" : true} // namespace already read
687
- // }
688
- this.mSchema2MetadataUrl = {};
689
- this.mSupportedBindingModes = {"OneTime" : true, "OneWay" : true};
690
- this.bSupportReferences = bSupportReferences !== false; // default is true
691
- // ClientListBinding#filter calls checkFilterOperation on the model; ClientModel does
692
- // not support "All" and "Any" filters
693
- this.mUnsupportedFilterOperators = {"All" : true, "Any" : true};
694
- this.sUrl = sUrl;
695
- }
696
- });
700
+ function constructor(oRequestor, sUrl, vAnnotationUri, oModel, bSupportReferences) {
701
+ MetaModel.call(this);
702
+ this.aAnnotationUris = vAnnotationUri && !Array.isArray(vAnnotationUri)
703
+ ? [vAnnotationUri] : vAnnotationUri;
704
+ this.sDefaultBindingMode = BindingMode.OneTime;
705
+ this.mETags = {};
706
+ this.oLastModified = new Date(0);
707
+ this.oMetadataPromise = null;
708
+ this.oModel = oModel;
709
+ this.mMetadataUrl2Promise = {};
710
+ this.oRequestor = oRequestor;
711
+ // maps the schema name to a map containing the URL references for the schema as key
712
+ // and a boolean value whether the schema has been read already as value; the URL
713
+ // reference is used by _MetadataRequestor#read()
714
+ // Example:
715
+ // mSchema2MetadataUrl = {
716
+ // "A." : {"/A/$metadata" : false}, // namespace not yet read
717
+ // // multiple references are ok as long as they are not read
718
+ // "A.A." : {"/A/$metadata" : false, "/A/V2/$metadata" : false},
719
+ // "B." : {"/B/$metadata" : true} // namespace already read
720
+ // }
721
+ this.mSchema2MetadataUrl = {};
722
+ this.mSupportedBindingModes = {OneTime : true, OneWay : true};
723
+ this.bSupportReferences = bSupportReferences !== false; // default is true
724
+ // ClientListBinding#filter calls checkFilterOperation on the model; ClientModel does
725
+ // not support "All" and "Any" filters
726
+ this.mUnsupportedFilterOperators = {All : true, Any : true};
727
+ this.sUrl = sUrl;
728
+ }
697
729
 
698
730
  /**
699
731
  * Indicates that the property bindings of this model support the binding parameter
@@ -1661,30 +1693,32 @@ sap.ui.define([
1661
1693
  throw oError;
1662
1694
  }
1663
1695
 
1664
- // First fetch the complete metapath to ensure that everything is in mScope
1696
+ // First fetch the complete meta path to ensure that everything is in mScope
1665
1697
  // This also ensures that the metadata is valid
1666
1698
  return this.fetchObject(_Helper.getMetaPath(sResolvedPath)).then(function () {
1667
1699
  // Then fetch mScope
1668
1700
  return that.fetchEntityContainer();
1669
1701
  }).then(function (mScope) {
1670
- var aEditUrl, // The edit URL as array of segments (encoded)
1702
+ var aEditUrl, // The edit URL as array of segments (encoded)
1671
1703
  oEntityContainer = mScope[mScope.$EntityContainer],
1672
- sEntityPath, // The absolute path to the entity for the PATCH (encoded)
1673
- oEntitySet, // The entity set that starts the edit URL
1674
- sEntitySetName, // The name of this entity set (decoded)
1704
+ sEntityPath, // The absolute path to the entity for the PATCH (encoded)
1705
+ oEntitySet, // The entity set that starts the edit URL
1706
+ sEntitySetName, // The name of this entity set (decoded)
1675
1707
  sFirstSegment,
1676
1708
  bInsideAnnotation = false,
1677
- sInstancePath, // The absolute path to the instance currently in evaluation
1678
- // (encoded; re-builds sResolvedPath)
1709
+ // The absolute path to the instance currently in evaluation (encoded; re-builds
1710
+ // sResolvedPath)
1711
+ sInstancePath,
1679
1712
  sNavigationPath, // The relative meta path starting from oEntitySet (decoded)
1680
- //sPropertyPath, // The relative path following sEntityPath (parameter re-used -
1681
- // encoded)
1682
- aSegments, // The resource path split in segments (encoded)
1683
- oType; // The type of the data at sInstancePath
1713
+ // The relative path following sEntityPath (parameter re-used - encoded)
1714
+ //sPropertyPath,
1715
+ aSegments, // The resource path split in segments (encoded)
1716
+ oType; // The type of the data at sInstancePath
1684
1717
 
1685
1718
  // Determines the predicate from a segment (empty string if there is none)
1686
1719
  function predicate(sSegment) {
1687
1720
  var i = sSegment.indexOf("(");
1721
+
1688
1722
  return i >= 0 ? sSegment.slice(i) : "";
1689
1723
  }
1690
1724
 
@@ -1697,6 +1731,7 @@ sap.ui.define([
1697
1731
  // Strips off the predicate from a segment
1698
1732
  function stripPredicate(sSegment) {
1699
1733
  var i = sSegment.indexOf("(");
1734
+
1700
1735
  return i >= 0 ? sSegment.slice(0, i) : sSegment;
1701
1736
  }
1702
1737
 
@@ -1850,7 +1885,7 @@ sap.ui.define([
1850
1885
  *
1851
1886
  * @returns {string} The annotation target
1852
1887
  */
1853
- function getOverloadTarget () {
1888
+ function getOverloadTarget() {
1854
1889
  var oOverload = aOverloads[0],
1855
1890
  sSignature = "";
1856
1891
 
@@ -1909,8 +1944,8 @@ sap.ui.define([
1909
1944
  });
1910
1945
 
1911
1946
  if (!aTargets.length) {
1912
- throw new Error("No annotation '" + sValueList.slice(1) + "' in " +
1913
- oValueListModel.sServiceUrl);
1947
+ throw new Error("No annotation '" + sValueList.slice(1) + "' in "
1948
+ + oValueListModel.sServiceUrl);
1914
1949
  }
1915
1950
 
1916
1951
  if (aTargets.length === 1) {
@@ -1934,8 +1969,8 @@ sap.ui.define([
1934
1969
  }
1935
1970
  });
1936
1971
  } else if (!bValueListOnValueList) {
1937
- throw new Error("Unexpected annotation '" + sTerm.slice(1) +
1938
- "' for target '" + aTargets[0] + "' with namespace of data service in "
1972
+ throw new Error("Unexpected annotation '" + sTerm.slice(1)
1973
+ + "' for target '" + aTargets[0] + "' with namespace of data service in "
1939
1974
  + oValueListModel.sServiceUrl);
1940
1975
  }
1941
1976
  });
@@ -2119,7 +2154,7 @@ sap.ui.define([
2119
2154
  * The property
2120
2155
  * @param {string} sMetaPath
2121
2156
  * The OData metadata model path corresponding to the given property
2122
- * @returns {object}
2157
+ * @returns {object|undefined}
2123
2158
  * The type constraints for the property or <code>undefined</code> if the property's type is
2124
2159
  * not supported
2125
2160
  *
@@ -2165,7 +2200,7 @@ sap.ui.define([
2165
2200
  * Returns a snapshot of each $metadata or annotation file loaded so far, combined into a
2166
2201
  * single "JSON" object according to the streamlined OData V4 Metadata JSON Format.
2167
2202
  *
2168
- * @returns {object}
2203
+ * @returns {object|undefined}
2169
2204
  * The OData metadata as a "JSON" object, if it is already available, or
2170
2205
  * <code>undefined</code>.
2171
2206
  *
@@ -2399,7 +2434,7 @@ sap.ui.define([
2399
2434
  *
2400
2435
  * @param {string} sPropertyPath
2401
2436
  * An absolute path to an OData property within the OData data model
2402
- * @returns {string}
2437
+ * @returns {string|undefined}
2403
2438
  * The path of the property's unit or currency relative to the property's entity, or
2404
2439
  * <code>undefined</code> in case the property has no associated unit or currency
2405
2440
  *
@@ -2871,9 +2906,9 @@ sap.ui.define([
2871
2906
  * This way, "/EMPLOYEES" addresses the same object as "/$EntityContainer/EMPLOYEES", namely
2872
2907
  * the "EMPLOYEES" child of the entity container.
2873
2908
  * <li> Afterwards, if the current object is an array, it represents overloads for an
2874
- * operation. Annotations of an operation (since 1.71.0) or a parameter (since 1.66.0) can be
2875
- * immediately addressed, no matter if they apply for a single overload or for all overloads
2876
- * at the same time, for example "/TEAMS/acme.NewAction@" or
2909
+ * operation. Annotations of an operation (since 1.71.0) or a parameter (since 1.66.0) can
2910
+ * be immediately addressed, no matter if they apply for a single overload or for all
2911
+ * overloads at the same time, for example "/TEAMS/acme.NewAction@" or
2877
2912
  * "/TEAMS/acme.NewAction/Team_ID@". Annotations of an unbound operation overload can be
2878
2913
  * addressed like "/OperationImport/@$ui5.overload@", while "/OperationImport/@" addresses
2879
2914
  * annotations of the operation import itself. The special name "$ReturnType" can be used
@@ -3094,6 +3129,10 @@ sap.ui.define([
3094
3129
  * information exists. It is also rejected with an error if the value list metadata is
3095
3130
  * inconsistent.
3096
3131
  *
3132
+ * Since 1.99.0, the <code>com.sap.vocabularies.Common.v1.ValueListWithFixedValues</code>
3133
+ * annotation wins, even if a <code>com.sap.vocabularies.Common.v1.ValueList</code> annotation
3134
+ * in the service itself has the <code>SearchSupported</code> property.
3135
+ *
3097
3136
  * An inconsistency can result from one of the following reasons:
3098
3137
  * <ul>
3099
3138
  * <li> There is a reference, but the referenced service does not contain mappings for the
@@ -3105,9 +3144,6 @@ sap.ui.define([
3105
3144
  * <li> There are multiple mappings for a fixed value list.
3106
3145
  * <li> A <code>com.sap.vocabularies.Common.v1.ValueList</code> annotation in a referenced
3107
3146
  * service has the property <code>CollectionRoot</code> or <code>SearchSupported</code>.
3108
- * <li> A <code>com.sap.vocabularies.Common.v1.ValueList</code> annotation in the service
3109
- * itself has the property <code>SearchSupported</code> and additionally the annotation
3110
- * <code>com.sap.vocabularies.Common.v1.ValueListWithFixedValues</code> is defined.
3111
3147
  * </ul>
3112
3148
  *
3113
3149
  * @public
@@ -3150,11 +3186,6 @@ sap.ui.define([
3150
3186
  * @throws {Error} If there is already a mapping for the given qualifier
3151
3187
  */
3152
3188
  function addMapping(mValueListMapping, sQualifier, sMappingUrl, oModel) {
3153
- if (bFixedValues !== undefined && "SearchSupported" in mValueListMapping) {
3154
- throw new Error("Must not set 'SearchSupported' in annotation "
3155
- + "'com.sap.vocabularies.Common.v1.ValueList' and annotation "
3156
- + "'com.sap.vocabularies.Common.v1.ValueListWithFixedValues'");
3157
- }
3158
3189
  if ("CollectionRoot" in mValueListMapping) {
3159
3190
  oModel = that.getOrCreateSharedModel(mValueListMapping.CollectionRoot,
3160
3191
  undefined, bAutoExpandSelect);
@@ -3208,6 +3239,7 @@ sap.ui.define([
3208
3239
  // insert the returned mappings into oValueListInfo in the order of aMappingUrls
3209
3240
  aMappingUrls.forEach(function (sMappingUrl, i) {
3210
3241
  var mvalueListMappingByQualifier = aResults[i].valueListMappingByQualifier;
3242
+
3211
3243
  Object.keys(mvalueListMappingByQualifier).forEach(function (sQualifier) {
3212
3244
  addMapping(mvalueListMappingByQualifier[sQualifier], sQualifier,
3213
3245
  sMappingUrl, aResults[i].$model);
@@ -3228,8 +3260,8 @@ sap.ui.define([
3228
3260
  // Each reference must have contributed at least one qualifier. So if oValueListInfo
3229
3261
  // is empty, there cannot have been a reference.
3230
3262
  if (isEmptyObject(oValueListInfo)) {
3231
- throw new Error("No annotation '" + sValueListReferences.slice(1) + "' for " +
3232
- sPropertyPath);
3263
+ throw new Error("No annotation '" + sValueListReferences.slice(1) + "' for "
3264
+ + sPropertyPath);
3233
3265
  }
3234
3266
 
3235
3267
  return aRelevantQualifiers && oContext && oContext.getBinding
@@ -3279,7 +3311,6 @@ sap.ui.define([
3279
3311
  */
3280
3312
  ODataMetaModel.prototype.filterValueListRelevantQualifiers = function (mValueListByQualifier,
3281
3313
  aRawRelevantQualifiers, sMetaPath, oContext) {
3282
-
3283
3314
  return this.requestValue4Annotation(aRawRelevantQualifiers, sMetaPath, oContext)
3284
3315
  .then(function (aRelevantQualifiers) {
3285
3316
  var mValueListByRelevantQualifier = {};
@@ -3334,7 +3365,7 @@ sap.ui.define([
3334
3365
  * A relative or absolute path within the metadata model
3335
3366
  * @param {sap.ui.model.Context} [oContext]
3336
3367
  * The context to be used as a starting point in case of a relative path
3337
- * @returns {string}
3368
+ * @returns {string|undefined}
3338
3369
  * Resolved path or <code>undefined</code>
3339
3370
  * @throws {Error}
3340
3371
  * If relative path starts with a dot which is not followed by a forward slash