@openui5/sap.ui.core 1.96.2 → 1.97.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 (302) hide show
  1. package/.eslintrc.json +2 -2
  2. package/.reuse/dep5 +1 -1
  3. package/THIRDPARTY.txt +2 -1
  4. package/package.json +1 -1
  5. package/src/jquery.sap.global.js +1 -1
  6. package/src/jquery.sap.properties.js +1 -1
  7. package/src/jquery.sap.resources.js +2 -2
  8. package/src/jquery.sap.script.js +1 -1
  9. package/src/jquery.sap.storage.js +3 -3
  10. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  11. package/src/sap/base/util/restricted/_castArray.js +1 -1
  12. package/src/sap/base/util/restricted/_compact.js +1 -1
  13. package/src/sap/base/util/restricted/_curry.js +1 -1
  14. package/src/sap/base/util/restricted/_debounce.js +1 -1
  15. package/src/sap/base/util/restricted/_difference.js +1 -1
  16. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  17. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  18. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  19. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  20. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  21. package/src/sap/base/util/restricted/_flatten.js +1 -1
  22. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  23. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  24. package/src/sap/base/util/restricted/_intersection.js +1 -1
  25. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  26. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  27. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  28. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  29. package/src/sap/base/util/restricted/_isNil.js +1 -1
  30. package/src/sap/base/util/restricted/_max.js +1 -1
  31. package/src/sap/base/util/restricted/_merge.js +1 -1
  32. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  33. package/src/sap/base/util/restricted/_min.js +1 -1
  34. package/src/sap/base/util/restricted/_omit.js +1 -1
  35. package/src/sap/base/util/restricted/_pick.js +1 -1
  36. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  37. package/src/sap/base/util/restricted/_throttle.js +1 -1
  38. package/src/sap/base/util/restricted/_toArray.js +1 -1
  39. package/src/sap/base/util/restricted/_union.js +1 -1
  40. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  41. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  42. package/src/sap/base/util/restricted/_uniq.js +1 -1
  43. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  44. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  45. package/src/sap/base/util/restricted/_without.js +1 -1
  46. package/src/sap/base/util/restricted/_xor.js +1 -1
  47. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  48. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  49. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  50. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  51. package/src/sap/ui/Device.js +4 -4
  52. package/src/sap/ui/Global.js +11 -16
  53. package/src/sap/ui/base/Event.js +1 -1
  54. package/src/sap/ui/base/EventProvider.js +1 -1
  55. package/src/sap/ui/base/Interface.js +1 -1
  56. package/src/sap/ui/base/ManagedObject.js +3 -3
  57. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  58. package/src/sap/ui/base/Metadata.js +1 -3
  59. package/src/sap/ui/base/Object.js +1 -1
  60. package/src/sap/ui/base/ObjectPool.js +1 -1
  61. package/src/sap/ui/core/.library +1 -27
  62. package/src/sap/ui/core/AppCacheBuster.js +4 -4
  63. package/src/sap/ui/core/BusyIndicator.js +1 -1
  64. package/src/sap/ui/core/Component.js +31 -9
  65. package/src/sap/ui/core/ComponentContainer.js +1 -1
  66. package/src/sap/ui/core/ComponentMetadata.js +1 -1
  67. package/src/sap/ui/core/ComponentSupport.js +1 -1
  68. package/src/sap/ui/core/Control.js +2 -2
  69. package/src/sap/ui/core/Core.js +2 -2
  70. package/src/sap/ui/core/CustomData.js +1 -1
  71. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  72. package/src/sap/ui/core/Element.js +2 -6
  73. package/src/sap/ui/core/ElementMetadata.js +1 -1
  74. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  75. package/src/sap/ui/core/EventBus.js +1 -1
  76. package/src/sap/ui/core/Fragment.js +1 -1
  77. package/src/sap/ui/core/HTML.js +3 -3
  78. package/src/sap/ui/core/History.js +1 -1
  79. package/src/sap/ui/core/Icon.js +1 -1
  80. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  81. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  82. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  83. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  84. package/src/sap/ui/core/InvisibleText.js +1 -1
  85. package/src/sap/ui/core/Item.js +1 -1
  86. package/src/sap/ui/core/LabelEnablement.js +1 -1
  87. package/src/sap/ui/core/LayoutData.js +1 -1
  88. package/src/sap/ui/core/ListItem.js +1 -1
  89. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  90. package/src/sap/ui/core/Locale.js +1 -1
  91. package/src/sap/ui/core/LocaleData.js +3 -3
  92. package/src/sap/ui/core/Manifest.js +1 -1
  93. package/src/sap/ui/core/Message.js +1 -1
  94. package/src/sap/ui/core/RenderManager.js +3 -3
  95. package/src/sap/ui/core/Renderer.js +1 -1
  96. package/src/sap/ui/core/ResizeHandler.js +1 -1
  97. package/src/sap/ui/core/ScrollBar.js +4 -3
  98. package/src/sap/ui/core/SeparatorItem.js +1 -1
  99. package/src/sap/ui/core/ThemeCheck.js +2 -2
  100. package/src/sap/ui/core/Title.js +1 -1
  101. package/src/sap/ui/core/TooltipBase.js +1 -1
  102. package/src/sap/ui/core/UIArea.js +3 -3
  103. package/src/sap/ui/core/UIComponent.js +1 -1
  104. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  105. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  106. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  107. package/src/sap/ui/core/XMLComposite.js +1 -1
  108. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  109. package/src/sap/ui/core/XMLTemplateProcessor.js +19 -5
  110. package/src/sap/ui/core/cache/LRUPersistentCache.js +4 -2
  111. package/src/sap/ui/core/date/UniversalDateUtils.js +33 -0
  112. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  113. package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
  114. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  115. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  116. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  117. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  118. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  119. package/src/sap/ui/core/library.js +5 -5
  120. package/src/sap/ui/core/message/ControlMessageProcessor.js +5 -5
  121. package/src/sap/ui/core/message/Message.js +1 -1
  122. package/src/sap/ui/core/message/MessageManager.js +1 -1
  123. package/src/sap/ui/core/message/MessageParser.js +1 -1
  124. package/src/sap/ui/core/message/MessageProcessor.js +22 -12
  125. package/src/sap/ui/core/messagebundle_fr.properties +7 -7
  126. package/src/sap/ui/core/messagebundle_ru.properties +21 -21
  127. package/src/sap/ui/core/mvc/Controller.js +4 -4
  128. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  129. package/src/sap/ui/core/mvc/JSONView.js +1 -1
  130. package/src/sap/ui/core/mvc/JSView.js +1 -1
  131. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  132. package/src/sap/ui/core/mvc/View.js +1 -1
  133. package/src/sap/ui/core/mvc/XMLView.js +1 -1
  134. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  135. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  136. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  137. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  138. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  139. package/src/sap/ui/core/rules/Misc.support.js +51 -1
  140. package/src/sap/ui/core/rules/Rendering.support.js +1 -4
  141. package/src/sap/ui/core/rules/View.support.js +14 -46
  142. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  143. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  144. package/src/sap/ui/core/service/Service.js +1 -1
  145. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  146. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  147. package/src/sap/ui/core/support/Plugin.js +2 -2
  148. package/src/sap/ui/core/support/RuleEngineOpaExtension.js +0 -1
  149. package/src/sap/ui/core/support/Support.js +1 -1
  150. package/src/sap/ui/core/support/controls/TreeViewer.js +1 -1
  151. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  152. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  153. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  154. package/src/sap/ui/core/support/plugins/Performance.js +1 -2
  155. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  156. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  157. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  158. package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
  159. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +1 -1
  160. package/src/sap/ui/core/support/trace/E2eTraceLib.js +3 -3
  161. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  162. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  163. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  164. package/src/sap/ui/core/tmpl/Template.js +1 -1
  165. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  166. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  167. package/src/sap/ui/core/util/Export.js +1 -1
  168. package/src/sap/ui/core/util/ExportCell.js +1 -1
  169. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  170. package/src/sap/ui/core/util/ExportRow.js +1 -1
  171. package/src/sap/ui/core/util/ExportType.js +1 -1
  172. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  173. package/src/sap/ui/core/util/File.js +1 -1
  174. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  175. package/src/sap/ui/core/util/MockServer.js +2 -2
  176. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  177. package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +4 -4
  178. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  179. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  180. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  181. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  182. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  183. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  184. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  185. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  186. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  187. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  188. package/src/sap/ui/debug/ControlTree.js +1 -1
  189. package/src/sap/ui/debug/DebugEnv.js +1 -1
  190. package/src/sap/ui/debug/PropertyList.js +1 -1
  191. package/src/sap/ui/model/ChangeReason.js +1 -1
  192. package/src/sap/ui/model/ClientListBinding.js +7 -0
  193. package/src/sap/ui/model/ClientModel.js +6 -5
  194. package/src/sap/ui/model/ClientTreeBindingAdapter.js +1 -1
  195. package/src/sap/ui/model/CompositeDataState.js +1 -1
  196. package/src/sap/ui/model/CompositeType.js +1 -1
  197. package/src/sap/ui/model/DataState.js +1 -1
  198. package/src/sap/ui/model/ListBinding.js +24 -5
  199. package/src/sap/ui/model/MetaModel.js +1 -1
  200. package/src/sap/ui/model/Model.js +5 -10
  201. package/src/sap/ui/model/SelectionModel.js +1 -1
  202. package/src/sap/ui/model/SimpleType.js +1 -1
  203. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  204. package/src/sap/ui/model/TreeBindingAdapter.js +0 -2
  205. package/src/sap/ui/model/TreeBindingUtils.js +2 -0
  206. package/src/sap/ui/model/Type.js +1 -1
  207. package/src/sap/ui/model/analytics/AnalyticalBinding.js +12 -6
  208. package/src/sap/ui/model/analytics/AnalyticalTreeBindingAdapter.js +16 -18
  209. package/src/sap/ui/model/json/JSONModel.js +7 -7
  210. package/src/sap/ui/model/json/JSONPropertyBinding.js +1 -1
  211. package/src/sap/ui/model/message/MessageModel.js +3 -3
  212. package/src/sap/ui/model/message/MessagePropertyBinding.js +1 -1
  213. package/src/sap/ui/model/odata/AnnotationHelper.js +2 -2
  214. package/src/sap/ui/model/odata/AnnotationParser.js +4 -2
  215. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  216. package/src/sap/ui/model/odata/ODataListBinding.js +61 -38
  217. package/src/sap/ui/model/odata/ODataMessageParser.js +2 -2
  218. package/src/sap/ui/model/odata/ODataMetaModel.js +3 -3
  219. package/src/sap/ui/model/odata/ODataMetadata.js +136 -85
  220. package/src/sap/ui/model/odata/ODataModel.js +442 -215
  221. package/src/sap/ui/model/odata/ODataPropertyBinding.js +7 -5
  222. package/src/sap/ui/model/odata/ODataTreeBindingAdapter.js +27 -17
  223. package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +440 -260
  224. package/src/sap/ui/model/odata/ODataUtils.js +24 -9
  225. package/src/sap/ui/model/odata/_AnnotationHelperBasics.js +2 -1
  226. package/src/sap/ui/model/odata/_AnnotationHelperExpression.js +10 -8
  227. package/src/sap/ui/model/odata/_ODataMetaModelUtils.js +6 -4
  228. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  229. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  230. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  231. package/src/sap/ui/model/odata/type/Date.js +1 -1
  232. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  233. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  234. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  235. package/src/sap/ui/model/odata/type/Decimal.js +5 -1
  236. package/src/sap/ui/model/odata/type/Double.js +1 -1
  237. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  238. package/src/sap/ui/model/odata/type/Int.js +1 -1
  239. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  240. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  241. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  242. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  243. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  244. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  245. package/src/sap/ui/model/odata/type/Single.js +1 -1
  246. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  247. package/src/sap/ui/model/odata/type/String.js +1 -1
  248. package/src/sap/ui/model/odata/type/Time.js +1 -1
  249. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  250. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  251. package/src/sap/ui/model/odata/type/UnitMixin.js +0 -1
  252. package/src/sap/ui/model/odata/v2/Context.js +42 -11
  253. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  254. package/src/sap/ui/model/odata/v2/ODataListBinding.js +205 -88
  255. package/src/sap/ui/model/odata/v2/ODataModel.js +154 -89
  256. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +162 -89
  257. package/src/sap/ui/model/odata/v2/_CreatedContextsCache.js +52 -2
  258. package/src/sap/ui/model/odata/v4/Context.js +48 -7
  259. package/src/sap/ui/model/odata/v4/ODataBinding.js +55 -24
  260. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +67 -19
  261. package/src/sap/ui/model/odata/v4/ODataListBinding.js +211 -78
  262. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +1 -1
  263. package/src/sap/ui/model/odata/v4/ODataModel.js +2 -1
  264. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +36 -23
  265. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +3 -3
  266. package/src/sap/ui/model/odata/v4/lib/_Cache.js +106 -11
  267. package/src/sap/ui/model/odata/v4/lib/_Helper.js +33 -3
  268. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +11 -2
  269. package/src/sap/ui/model/resource/ResourceModel.js +1 -1
  270. package/src/sap/ui/model/type/Boolean.js +1 -1
  271. package/src/sap/ui/model/type/Currency.js +1 -1
  272. package/src/sap/ui/model/type/Date.js +1 -1
  273. package/src/sap/ui/model/type/DateInterval.js +1 -1
  274. package/src/sap/ui/model/type/DateTime.js +1 -1
  275. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  276. package/src/sap/ui/model/type/FileSize.js +1 -1
  277. package/src/sap/ui/model/type/Float.js +1 -1
  278. package/src/sap/ui/model/type/Integer.js +1 -1
  279. package/src/sap/ui/model/type/String.js +1 -1
  280. package/src/sap/ui/model/type/Time.js +1 -1
  281. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  282. package/src/sap/ui/model/type/Unit.js +1 -1
  283. package/src/sap/ui/model/xml/XMLModel.js +5 -5
  284. package/src/sap/ui/model/xml/XMLPropertyBinding.js +1 -1
  285. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  286. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  287. package/src/sap/ui/test/actions/Action.js +9 -2
  288. package/src/sap/ui/test/actions/Press.js +28 -1
  289. package/src/sap/ui/test/generic/_EnforceSemanticRendering.js +111 -0
  290. package/src/sap/ui/util/Mobile.js +28 -39
  291. package/src/sap/ui/util/Storage.js +1 -1
  292. package/src/ui5loader.js +6 -6
  293. package/ui5.yaml +244 -1
  294. package/src/sap/ui/core/CustomizingConfiguration.js +0 -47
  295. package/src/sap/ui/thirdparty/baseuri.js +0 -1
  296. package/src/sap/ui/thirdparty/es6-object-assign.js +0 -1
  297. package/src/sap/ui/thirdparty/es6-promise.js +0 -1
  298. package/src/sap/ui/thirdparty/es6-shim-nopromise.js +0 -1
  299. package/src/sap/ui/thirdparty/es6-string-methods.js +0 -1
  300. package/src/sap/ui/thirdparty/flexie.js +0 -1
  301. package/src/sap/ui/thirdparty/unorm.js +0 -1
  302. package/src/sap/ui/thirdparty/unormdata.js +0 -1
@@ -78,8 +78,6 @@ sap.ui.define([
78
78
 
79
79
  /**
80
80
  * Returns a tree state handle to encapsulate the actual tree state.
81
- * TODO: Encode the list to avoid conflicts with delimiters in the flat expanded list?
82
- * Re-Check this when back-end support is implemented.
83
81
  *
84
82
  * This function is exposed in the sub-classes/adapters (e.g. ODataTreeBindingAdapter) if
85
83
  * necessary/possible.
@@ -110,6 +110,8 @@ sap.ui.define(function() {
110
110
  } else if (iNewSectionEndIndex <= oPendingRequest.iSkip || oNewRequest.iSkip >= iPendingSectionEndIndex) {
111
111
  //old and new sections do not overlap, either the new section is completely left or right from the old one
112
112
  }
113
+
114
+ return undefined;
113
115
  };
114
116
 
115
117
  return TreeBindingUtils;
@@ -19,7 +19,7 @@ sap.ui.define(['sap/ui/base/Object'],
19
19
  *
20
20
  * @extends sap.ui.base.Object
21
21
  * @public
22
- * @version 1.96.2
22
+ * @version 1.97.0
23
23
  */
24
24
  var Type = BaseObject.extend("sap.ui.model.Type", /** @lends sap.ui.model.Type.prototype */ {
25
25
 
@@ -4,7 +4,7 @@
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
7
- // Disable some ESLint rules. camelcase (some "_" in names to indicate indexed variables (like in math)), valid-jsdoc (not completed yet), no-warning-comments (some TODOs are left)
7
+ // Disable some ESLint rules. camelcase (some "_" in names to indicate indexed variables (like in math)), valid-jsdoc (not completed yet)
8
8
  // All other warnings, errors should be resolved
9
9
  /*eslint camelcase:0, valid-jsdoc:0, no-warning-comments:0, max-len:0 */
10
10
 
@@ -1476,7 +1476,6 @@ sap.ui.define([
1476
1476
  oGroupIdRange.threshold);
1477
1477
  }
1478
1478
 
1479
- // TODO check current code works, but it would be more natural if this _considerRequestGrouping would be outside of this loop
1480
1479
  var aRequestId = [];
1481
1480
  for (var j = -1, sGroupId2; (sGroupId2 = aGroupId[++j]) !== undefined; ) {
1482
1481
  aRequestId.push(this._getRequestId(AnalyticalBinding._requestType.groupMembersQuery, {groupId: sGroupId2}));
@@ -2425,7 +2424,7 @@ sap.ui.define([
2425
2424
  aGroupMembersAutoExpansionRequestDetails.push(oLevelMembersRequestDetails);
2426
2425
  aRequestId.push(oLevelMembersRequestDetails.sRequestId);
2427
2426
  } else if (oLevelFilter && oLevelFilter.aFilters.length > 0) {
2428
- if (!oLevelFilter._bMultiFilter || oLevelFilter.bAnd) { // TODO remove this test once impl got mature to get rid of access to internal member; it is a consistency check if break-up will deliver expected results...
2427
+ if (!oLevelFilter._bMultiFilter || oLevelFilter.bAnd) {
2429
2428
  oLogger.fatal("level filter in wrong shape; cannot break it up");
2430
2429
  }
2431
2430
  for (var i = 0; i < oLevelFilter.aFilters.length; i++) { // break up level filter into its tuple filters combined with logical OR
@@ -2941,7 +2940,7 @@ sap.ui.define([
2941
2940
  this.mServiceFinalLength[sGroupId] = true;
2942
2941
  this._setServiceKey(this._getKeyIndexMapping(sGroupId, 0), AnalyticalBinding._artificialRootContextGroupId);
2943
2942
  this.bNeedsUpdate = true;
2944
- // simulate the async behavior for the root context in case of having no sums (TODO: reconsider!)
2943
+ // simulate the async behavior for the root context in case of having no sums
2945
2944
  setTimeout(function() {
2946
2945
  if (that._cleanupGroupingForCompletedRequest(oRequestDetails.sRequestId)) {
2947
2946
  that.fireDataReceived({__simulateAsyncAnalyticalBinding: true});
@@ -4215,8 +4214,6 @@ sap.ui.define([
4215
4214
 
4216
4215
  // substitute for indexOf in the key array for some group
4217
4216
  AnalyticalBinding.prototype._findKeyIndex = function(sGroupId, sKey) {
4218
- // TODO optimize by first looking into mMultiUnitKey; if not found, search in mServiceKey; if not found, return -1
4219
-
4220
4217
  // naive implementation follows
4221
4218
  var aKeyIndex = this.mKeyIndex[sGroupId];
4222
4219
  var aServiceKey = this.mServiceKey[sGroupId];
@@ -4601,10 +4598,14 @@ sap.ui.define([
4601
4598
  bChangeDetected = true;
4602
4599
  return false;
4603
4600
  }
4601
+
4602
+ return true;
4604
4603
  });
4605
4604
  if (bChangeDetected) {
4606
4605
  return false;
4607
4606
  }
4607
+
4608
+ return true;
4608
4609
  });
4609
4610
  }
4610
4611
  if (!mChangedEntities && !mEntityTypes) { // default
@@ -4640,10 +4641,14 @@ sap.ui.define([
4640
4641
  bChangeDetected = true;
4641
4642
  return false;
4642
4643
  }
4644
+
4645
+ return true;
4643
4646
  });
4644
4647
  if (bChangeDetected) {
4645
4648
  return false;
4646
4649
  }
4650
+
4651
+ return true;
4647
4652
  });
4648
4653
  }
4649
4654
  }
@@ -4782,6 +4787,7 @@ sap.ui.define([
4782
4787
  return this.oModel._createRequestUrl(sPath, null, aParam).replace(/ /g, "%20");
4783
4788
  }
4784
4789
 
4790
+ return undefined;
4785
4791
  };
4786
4792
 
4787
4793
  //**********************************
@@ -54,9 +54,7 @@ sap.ui.define([
54
54
  * Used by the AnalyticalTable to display the sum row.
55
55
  */
56
56
  AnalyticalTreeBindingAdapter.prototype.getGrandTotalContext = function () {
57
- if (this._oRootNode) {
58
- return this._oRootNode.context;
59
- }
57
+ return this._oRootNode && this._oRootNode.context;
60
58
  };
61
59
 
62
60
  /*
@@ -64,9 +62,7 @@ sap.ui.define([
64
62
  * Used by the AnalyticalTable to display the sum row.
65
63
  */
66
64
  AnalyticalTreeBindingAdapter.prototype.getGrandTotalNode = function () {
67
- if (this._oRootNode) {
68
- return this._oRootNode;
69
- }
65
+ return this._oRootNode;
70
66
  };
71
67
 
72
68
  /*
@@ -109,7 +105,6 @@ sap.ui.define([
109
105
 
110
106
  // if the node was not found in the current tree snapshot -> rebuild the tree, and if necessary request the node
111
107
  if (!oNode || !oNode.context) {
112
- //@TODO: Maybe preserve the Row Index Cache, before calling getContexts, and restore it afterwards
113
108
  //Beware: getContexts might return nothing, if the context was not yet loaded!
114
109
  oNode = {context: this.getContexts(iIndex, 1, 0)[0]};
115
110
  }
@@ -192,8 +187,9 @@ sap.ui.define([
192
187
  var aContexts = [];
193
188
  //find missing spots in our visible section
194
189
  var mMissingSections;
190
+ var oNode;
195
191
  for (var i = 0; i < aNodes.length; i++) {
196
- var oNode = aNodes[i];
192
+ oNode = aNodes[i];
197
193
 
198
194
  //user scrolled into the water mark node, which is the last of the guaranteed loaded page (length + threshold)
199
195
  if (this._isRunningInAutoExpand(TreeAutoExpandMode.Bundled) && this._oWatermark) {
@@ -233,7 +229,7 @@ sap.ui.define([
233
229
  // try to fill gaps in our return array if we already have new data (thanks to thresholding)
234
230
  aContexts = [];
235
231
  for (var j = 0; j < aNodes.length; j++) {
236
- var oNode = aNodes[j];
232
+ oNode = aNodes[j];
237
233
  aContexts.push(oNode.context);
238
234
  }
239
235
  }
@@ -281,6 +277,8 @@ sap.ui.define([
281
277
  aResults.push(oNode.sumNode);
282
278
  }
283
279
  }
280
+
281
+ return undefined;
284
282
  };
285
283
 
286
284
  /*
@@ -589,17 +587,15 @@ sap.ui.define([
589
587
  // in case we have no grouping at all, the "groupID" for each node is based on its position as the roots child
590
588
  if (!this.isGrouped() && oNode && oNode.positionInParent) {
591
589
  sGroupID = "/" + oNode.positionInParent + "/";
592
- } else {
590
+ } else if (oNode.level > iMaxLevel) {
593
591
  // if the level of the node exceeds the maximum level (in the analytical case, this is the aggregation level),
594
592
  // the group id is also appended with the relative parent position
595
- if (oNode.level > iMaxLevel) {
596
- sGroupID = this._getGroupIdFromContext(oNode.context, iMaxLevel);
597
- assert(oNode.positionInParent != undefined, "If the node level is greater than the number of grouped columns, the position of the node to its parent must be defined!");
598
- sGroupID += oNode.positionInParent + "/";
599
- } else {
600
- //this is the best case, the node sits on a higher level than the aggregation level
601
- sGroupID = this._getGroupIdFromContext(oNode.context, oNode.level);
602
- }
593
+ sGroupID = this._getGroupIdFromContext(oNode.context, iMaxLevel);
594
+ assert(oNode.positionInParent != undefined, "If the node level is greater than the number of grouped columns, the position of the node to its parent must be defined!");
595
+ sGroupID += oNode.positionInParent + "/";
596
+ } else {
597
+ //this is the best case, the node sits on a higher level than the aggregation level
598
+ sGroupID = this._getGroupIdFromContext(oNode.context, oNode.level);
603
599
  }
604
600
  return sGroupID;
605
601
  };
@@ -779,6 +775,8 @@ sap.ui.define([
779
775
  bHasMeasures = true;
780
776
  return false;
781
777
  }
778
+
779
+ return true;
782
780
  });
783
781
  return bHasMeasures;
784
782
  };
@@ -44,7 +44,7 @@ sap.ui.define([
44
44
  * @extends sap.ui.model.ClientModel
45
45
  *
46
46
  * @author SAP SE
47
- * @version 1.96.2
47
+ * @version 1.97.0
48
48
  * @public
49
49
  * @alias sap.ui.model.json.JSONModel
50
50
  */
@@ -294,7 +294,7 @@ sap.ui.define([
294
294
  return this.pSequentialImportCompleted;
295
295
  };
296
296
 
297
- /**
297
+ /*
298
298
  * @see sap.ui.model.Model.prototype.bindProperty
299
299
  *
300
300
  */
@@ -303,7 +303,7 @@ sap.ui.define([
303
303
  return oBinding;
304
304
  };
305
305
 
306
- /**
306
+ /*
307
307
  * @see sap.ui.model.Model.prototype.bindList
308
308
  *
309
309
  */
@@ -312,10 +312,10 @@ sap.ui.define([
312
312
  return oBinding;
313
313
  };
314
314
 
315
- /**
315
+ /*
316
316
  * @see sap.ui.model.Model.prototype.bindTree
317
317
  *
318
- * @param {object} [mParameters=null]
318
+ * @param {object} [mParameters]
319
319
  * Additional model specific parameters; if the mParameter <code>arrayNames</code> is
320
320
  * specified with an array of string names these names will be checked against the tree data
321
321
  * structure and the found data in this array is included in the tree, but only if the parent
@@ -335,7 +335,7 @@ sap.ui.define([
335
335
  *
336
336
  * @param {string} sPath path of the property to set
337
337
  * @param {any} oValue value to set the property to
338
- * @param {object} [oContext=null] the context which will be used to set the property
338
+ * @param {object} [oContext] the context which will be used to set the property
339
339
  * @param {boolean} [bAsyncUpdate] whether to update other bindings dependent on this property asynchronously
340
340
  * @return {boolean} true if the value was set correctly and false if errors occurred like the entry was not found.
341
341
  * @public
@@ -374,7 +374,7 @@ sap.ui.define([
374
374
  *
375
375
  * @param {string} sPath
376
376
  * The path to the property
377
- * @param {sap.ui.model.Context} [oContext=null]
377
+ * @param {sap.ui.model.Context} [oContext]
378
378
  * The context which will be used to retrieve the property
379
379
  * @return {any}
380
380
  * The value of the property. If the property is not found, <code>null</code> or
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  */
35
35
  var JSONPropertyBinding = ClientPropertyBinding.extend("sap.ui.model.json.JSONPropertyBinding");
36
36
 
37
- /**
37
+ /*
38
38
  * @see sap.ui.model.PropertyBinding.prototype.setValue
39
39
  */
40
40
  JSONPropertyBinding.prototype.setValue = function(oValue){
@@ -29,7 +29,7 @@ sap.ui.define(['sap/ui/model/BindingMode', 'sap/ui/model/ClientModel', 'sap/ui/m
29
29
  * @extends sap.ui.model.ClientModel
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.96.2
32
+ * @version 1.97.0
33
33
  *
34
34
  * @param {sap.ui.core.message.MessageManager} oMessageManager The MessageManager instance
35
35
  * @public
@@ -68,7 +68,7 @@ sap.ui.define(['sap/ui/model/BindingMode', 'sap/ui/model/ClientModel', 'sap/ui/m
68
68
  return this;
69
69
  };
70
70
 
71
- /**
71
+ /*
72
72
  * @see sap.ui.model.Model.prototype.bindProperty
73
73
  *
74
74
  */
@@ -77,7 +77,7 @@ sap.ui.define(['sap/ui/model/BindingMode', 'sap/ui/model/ClientModel', 'sap/ui/m
77
77
  return oBinding;
78
78
  };
79
79
 
80
- /**
80
+ /*
81
81
  * @see sap.ui.model.Model.prototype.bindList
82
82
  *
83
83
  */
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  */
29
29
  var MessagePropertyBinding = ClientPropertyBinding.extend("sap.ui.model.message.MessagePropertyBinding");
30
30
 
31
- /**
31
+ /*
32
32
  * @see sap.ui.model.PropertyBinding.prototype.setValue
33
33
  */
34
34
  MessagePropertyBinding.prototype.setValue = function(oValue){
@@ -46,7 +46,7 @@ sap.ui.define([
46
46
  * instructions in XML template views, e.g. <code>&lt;template:with path="meta>Value"
47
47
  * helper="sap.ui.model.odata.AnnotationHelper.resolvePath" var="target"></code>.
48
48
  *
49
- * Since 1.31.0, you DO NOT need to {@link jQuery.sap.require} this module before use.
49
+ * Since 1.31.0, you DO NOT need to {@link sap.ui.require} this module before use.
50
50
  *
51
51
  * @public
52
52
  * @since 1.27.0
@@ -90,7 +90,7 @@ sap.ui.define([
90
90
  * Example:
91
91
  * <pre>
92
92
  * function myRootFormatter(oValue1, oValue2, sFullName, sGreeting, iAnswer) {
93
- * return ...; //TODO compute something useful from the given values
93
+ * return ...;
94
94
  * }
95
95
  *
96
96
  * oSupplierContext = oMetaModel.getMetaContext("/ProductSet('HT-1021')/ToSupplier");
@@ -895,8 +895,10 @@ var AnnotationParser = {
895
895
  var oNode = xPath.nextNode(oNodeList, i);
896
896
  var oValue = {};
897
897
  var sText = xPath.getNodeText(oNode);
898
- // TODO: Is nodeName correct or should we remove the namespace?
899
- oValue[oNode.nodeName] = AnnotationParser._parserData.aliases ? AnnotationParser.replaceWithAlias(sText) : sText;
898
+
899
+ oValue[oNode.nodeName] = AnnotationParser._parserData.aliases
900
+ ? AnnotationParser.replaceWithAlias(sText)
901
+ : sText;
900
902
  aNodeValues.push(oValue);
901
903
  }
902
904
 
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  *
26
26
  * @author SAP SE
27
27
  * @version
28
- * 1.96.2
28
+ * 1.97.0
29
29
  *
30
30
  * @public
31
31
  * @deprecated As of version 1.66, please use {@link sap.ui.model.odata.v2.ODataAnnotations} instead.
@@ -84,7 +84,6 @@ sap.ui.define([
84
84
 
85
85
  // if nested list is already available and no filters or sorters are set,
86
86
  // use the data and don't send additional requests
87
- // TODO: what if nested list is not complete, because it was too large?
88
87
  var oRef = this.oModel._getObject(this.sPath, this.oContext);
89
88
  this.aExpandRefs = oRef;
90
89
  if (Array.isArray(oRef) && !aSorters && !aFilters) {
@@ -97,25 +96,27 @@ sap.ui.define([
97
96
  this.iLength = 0;
98
97
  this.bLengthFinal = true;
99
98
  this.bDataAvailable = true;
100
- } else {
99
+ } else if (this.oModel.getServiceMetadata()) {
101
100
  // call getLength when metadata is already loaded or don't do anything
102
101
  // if the metadata gets loaded it will call a refresh on all bindings
103
- if (this.oModel.getServiceMetadata()) {
104
- this.resetData();
105
- }
102
+ this.resetData();
106
103
  }
107
-
108
104
  }
109
-
110
105
  });
111
106
 
112
107
  /**
113
108
  * Return contexts for the list
114
109
  *
115
- * @param {int} [iStartIndex=0] the start index of the requested contexts
116
- * @param {int} [iLength] the requested amount of contexts
110
+ * @param {int} [iStartIndex=0]
111
+ * The start index of the requested contexts
112
+ * @param {int} [iLength]
113
+ * The requested amount of contexts
117
114
  * @param {int} [iThreshold=0]
118
- * @return {sap.ui.model.Context[]} the array of contexts for each row of the bound list
115
+ * The maximum number of contexts to read before and after the given range; with this,
116
+ * controls can prefetch data that is likely to be needed soon, e.g. when scrolling down in a
117
+ * table
118
+ * @return {sap.ui.model.Context[]}
119
+ * The array of contexts for each row of the bound list
119
120
  * @protected
120
121
  */
121
122
  ODataListBinding.prototype.getContexts = function(iStartIndex, iLength, iThreshold) {
@@ -333,7 +334,6 @@ sap.ui.define([
333
334
 
334
335
  if (!this.bInitial) {
335
336
  // if nested list is already available, use the data and don't send additional requests
336
- // TODO: what if nested list is not complete, because it was too large?
337
337
  var oRef = this.oModel._getObject(this.sPath, this.oContext);
338
338
  this.aExpandRefs = oRef;
339
339
  // eslint-disable-next-line no-unsafe-negation
@@ -384,13 +384,15 @@ sap.ui.define([
384
384
 
385
385
  sPath = this.oModel.resolve(this.sPath,this.oContext);
386
386
 
387
- if (sPath) {
388
- return this.oModel._createRequestUrl(sPath, null, aParams);
389
- }
387
+ return sPath && this.oModel._createRequestUrl(sPath, null, aParams);
390
388
  };
391
389
 
392
390
  /**
393
- * Load list data from the server
391
+ * Load list data from the server.
392
+ *
393
+ * @param {number} iStartIndex The first index to load
394
+ * @param {number} iLength The number of entries to load
395
+ * @param {boolean} bPretend Whether the request should be pretended
394
396
  */
395
397
  ODataListBinding.prototype.loadData = function(iStartIndex, iLength, bPretend) {
396
398
 
@@ -536,9 +538,7 @@ sap.ui.define([
536
538
  };
537
539
 
538
540
  /**
539
- * Return the length of the list
540
- *
541
- * @return {int} the length
541
+ * Request the length of the list from the backend and cache it.
542
542
  */
543
543
  ODataListBinding.prototype._getLength = function() {
544
544
 
@@ -589,12 +589,14 @@ sap.ui.define([
589
589
  };
590
590
 
591
591
  /**
592
- * Refreshes the binding, checks whether the model data has been changed and fires a change event
593
- * if this is the case. For server side models this should refetch the data from the server.
594
- * To update a control, even if no data has been changed, e.g. to reset a control after failed
595
- * validation, use the parameter <code>bForceUpdate</code>.
592
+ * Refreshes the binding, checks whether the model data has been changed and fires a change
593
+ * event if this is the case. For server side models this should refetch the data from the
594
+ * server. To update a control, even if no data has been changed, e.g. to reset a control after
595
+ * failed validation, use the parameter <code>bForceUpdate</code>.
596
596
  *
597
597
  * @param {boolean} [bForceUpdate] Update the bound control even if no data has been changed
598
+ * @param {object} [mChangedEntities] A map of changed entities
599
+ * @param {object} [mEntityTypes] A map of entity types
598
600
  * @public
599
601
  */
600
602
  ODataListBinding.prototype.refresh = function(bForceUpdate, mChangedEntities, mEntityTypes) {
@@ -614,6 +616,8 @@ sap.ui.define([
614
616
  bChangeDetected = true;
615
617
  return false;
616
618
  }
619
+
620
+ return true;
617
621
  });
618
622
  }
619
623
  if (!mChangedEntities && !mEntityTypes) { // default
@@ -628,7 +632,9 @@ sap.ui.define([
628
632
  };
629
633
 
630
634
  /**
631
- * fireRefresh
635
+ * Fires a <code>refresh</code> event.
636
+ *
637
+ * @param {object} oParameters Parameters for the event
632
638
  */
633
639
  ODataListBinding.prototype._fireRefresh = function(oParameters) {
634
640
  if (this.oModel.resolve(this.sPath, this.oContext)) {
@@ -655,14 +661,16 @@ sap.ui.define([
655
661
  };
656
662
 
657
663
  /**
658
- * Check whether this Binding would provide new values and in case it changed,
659
- * inform interested parties about this.
664
+ * Checks whether this Binding would provide new values and in case it changed, fires a change
665
+ * event.
660
666
  *
661
667
  * @param {boolean} bForceUpdate
668
+ * Whether the event should be fired regardless of the bindings state
662
669
  * @param {object} mChangedEntities
670
+ * A map of changed entities
663
671
  */
664
672
  ODataListBinding.prototype.checkUpdate = function(bForceUpdate, mChangedEntities) {
665
- var bChangeReason = this.sChangeReason ? this.sChangeReason : ChangeReason.Change,
673
+ var sChangeReason = this.sChangeReason ? this.sChangeReason : ChangeReason.Change,
666
674
  bChangeDetected = false,
667
675
  oLastData, oCurrentData,
668
676
  that = this,
@@ -698,6 +706,8 @@ sap.ui.define([
698
706
  bChangeDetected = true;
699
707
  return false;
700
708
  }
709
+
710
+ return true;
701
711
  });
702
712
  } else {
703
713
  bChangeDetected = true;
@@ -719,13 +729,15 @@ sap.ui.define([
719
729
  bChangeDetected = true;
720
730
  return false;
721
731
  }
732
+
733
+ return true;
722
734
  });
723
735
  }
724
736
  }
725
737
  }
726
738
  if (bForceUpdate || bChangeDetected || this.bNeedsUpdate) {
727
739
  this.bNeedsUpdate = false;
728
- this._fireChange({reason: bChangeReason});
740
+ this._fireChange({reason: sChangeReason});
729
741
  }
730
742
  this.sChangeReason = undefined;
731
743
  this.bIgnoreSuspend = false;
@@ -768,8 +780,14 @@ sap.ui.define([
768
780
  /**
769
781
  * Sorts the list.
770
782
  *
771
- * @param {sap.ui.model.Sorter|Array} aSorters the Sorter or an array of sorter objects object which define the sort order
772
- * @return {this} returns <code>this</code> to facilitate method chaining
783
+ * @param {sap.ui.model.Sorter|sap.ui.model.Sorter[]} aSorters
784
+ * The Sorter or an array of sorter objects which define the sort order
785
+ * @param {boolean} [bReturnSuccess=false]
786
+ * Whether to return <code>true</code> or <code>false</code>, instead of <code>this</code>,
787
+ * depending on whether the sorting has been done
788
+ * @return {this}
789
+ * Returns <code>this</code> to facilitate method chaining or the success state
790
+ *
773
791
  * @public
774
792
  */
775
793
  ODataListBinding.prototype.sort = function(aSorters, bReturnSuccess) {
@@ -793,7 +811,6 @@ sap.ui.define([
793
811
  this.abortPendingRequest();
794
812
  this.sChangeReason = ChangeReason.Sort;
795
813
  this._fireRefresh({reason : this.sChangeReason});
796
- // TODO remove this if the sort event gets removed which is now deprecated
797
814
  this._fireSort({sorter: aSorters});
798
815
  bSuccess = true;
799
816
  }
@@ -812,16 +829,23 @@ sap.ui.define([
812
829
  *
813
830
  * Filters the list.
814
831
  *
815
- * When using sap.ui.model.Filter the filters are first grouped according to their binding path.
816
- * All filters belonging to a group are combined with OR and after that the
832
+ * When using <code>sap.ui.model.Filter</code> the filters are first grouped according to their
833
+ * binding path. All filters belonging to a group are combined with OR and after that the
817
834
  * results of all groups are combined with AND.
818
- * Usually this means, all filters applied to a single table column
819
- * are combined with OR, while filters on different table columns are combined with AND.
835
+ * Usually this means, all filters applied to a single table column are combined with OR, while
836
+ * filters on different table columns are combined with AND.
820
837
  * Please note that a custom filter function is not supported.
821
838
  *
822
- * @param {sap.ui.model.Filter|sap.ui.model.Filter[]} aFilters Single filter object or an array of filter objects
823
- * @param {sap.ui.model.FilterType} sFilterType Type of the filter which should be adjusted, if it is not given, the standard behaviour applies
824
- * @return {this} returns <code>this</code> to facilitate method chaining
839
+ * @param {sap.ui.model.Filter|sap.ui.model.Filter[]} aFilters
840
+ * Single filter object or an array of filter objects
841
+ * @param {sap.ui.model.FilterType} sFilterType
842
+ * Type of the filter which should be adjusted, if it is not given, the standard behaviour
843
+ * applies
844
+ * @param {boolean} [bReturnSuccess=false]
845
+ * Whether to return <code>true</code> or <code>false</code>, instead of <code>this</code>,
846
+ * depending on whether the filtering has been done
847
+ * @return {this}
848
+ * Returns <code>this</code> to facilitate method chaining or the success state
825
849
  *
826
850
  * @public
827
851
  */
@@ -864,7 +888,6 @@ sap.ui.define([
864
888
  this.abortPendingRequest();
865
889
  this.sChangeReason = ChangeReason.Filter;
866
890
  this._fireRefresh({reason : this.sChangeReason});
867
- // TODO remove this if the filter event gets removed which is now deprecated
868
891
  if (sFilterType == FilterType.Application) {
869
892
  this._fireFilter({filters: this.aApplicationFilters});
870
893
  } else {
@@ -84,7 +84,7 @@ var sClassName = "sap.ui.model.odata.ODataMessageParser",
84
84
  * @extends sap.ui.core.message.MessageParser
85
85
  *
86
86
  * @author SAP SE
87
- * @version 1.96.2
87
+ * @version 1.97.0
88
88
  * @public
89
89
  * @alias sap.ui.model.odata.ODataMessageParser
90
90
  */
@@ -435,7 +435,7 @@ ODataMessageParser._isResponseForCreate = function (mRequestInfo) {
435
435
  if (oRequest.key && oRequest.created && oResponse.statusCode >= 400) {
436
436
  return false;
437
437
  }
438
- // return undefined; otherwise
438
+ return undefined;
439
439
  };
440
440
 
441
441
  /**
@@ -26,7 +26,6 @@ sap.ui.define([
26
26
  BindingMode, ClientContextBinding, Context, FilterProcessor, MetaModel, JSONListBinding,
27
27
  JSONModel, JSONPropertyBinding, JSONTreeBinding, Measurement) {
28
28
  "use strict";
29
- /*global Map */
30
29
 
31
30
  var // maps the metadata URL with query parameters concatenated with the code list collection
32
31
  // path (e.g. /foo/bar/$metadata#SAP__Currencies) to a SyncPromise resolving with the code
@@ -208,7 +207,7 @@ sap.ui.define([
208
207
  * {@link #loaded loaded} has been resolved!
209
208
  *
210
209
  * @author SAP SE
211
- * @version 1.96.2
210
+ * @version 1.97.0
212
211
  * @alias sap.ui.model.odata.ODataMetaModel
213
212
  * @extends sap.ui.model.MetaModel
214
213
  * @public
@@ -855,7 +854,6 @@ sap.ui.define([
855
854
  vResult = bAsPath
856
855
  ? "/dataServices/schema/" + i + "/entityContainer/" + j
857
856
  : oSchema.entityContainer[j];
858
- return false; //break
859
857
  }
860
858
  });
861
859
 
@@ -1298,6 +1296,8 @@ sap.ui.define([
1298
1296
  } else if (sDataPath === "/##@@requestUnitsOfMeasure") {
1299
1297
  return "UnitsOfMeasure";
1300
1298
  }
1299
+
1300
+ return undefined;
1301
1301
  };
1302
1302
 
1303
1303
  return ODataMetaModel;