@openui5/sap.ui.core 1.97.1 → 1.100.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 (441) hide show
  1. package/.eslintrc.json +92 -2
  2. package/.reuse/dep5 +25 -30
  3. package/THIRDPARTY.txt +15 -22
  4. package/package.json +1 -1
  5. package/src/jquery.sap.global.js +6 -3
  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/Log.js +1 -1
  12. package/src/sap/base/strings/whitespaceReplacer.js +1 -1
  13. package/src/sap/base/util/LoaderExtensions.js +1 -10
  14. package/src/sap/base/util/UriParameters.js +2 -2
  15. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  16. package/src/sap/base/util/restricted/_castArray.js +1 -1
  17. package/src/sap/base/util/restricted/_compact.js +1 -1
  18. package/src/sap/base/util/restricted/_curry.js +1 -1
  19. package/src/sap/base/util/restricted/_debounce.js +1 -1
  20. package/src/sap/base/util/restricted/_difference.js +1 -1
  21. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  22. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  23. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  24. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  25. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  26. package/src/sap/base/util/restricted/_flatten.js +1 -1
  27. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  28. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  29. package/src/sap/base/util/restricted/_intersection.js +1 -1
  30. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  31. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  32. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  33. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  34. package/src/sap/base/util/restricted/_isNil.js +1 -1
  35. package/src/sap/base/util/restricted/_max.js +1 -1
  36. package/src/sap/base/util/restricted/_merge.js +1 -1
  37. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  38. package/src/sap/base/util/restricted/_min.js +1 -1
  39. package/src/sap/base/util/restricted/_omit.js +1 -1
  40. package/src/sap/base/util/restricted/_pick.js +1 -1
  41. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  42. package/src/sap/base/util/restricted/_throttle.js +1 -1
  43. package/src/sap/base/util/restricted/_toArray.js +1 -1
  44. package/src/sap/base/util/restricted/_union.js +1 -1
  45. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  46. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  47. package/src/sap/base/util/restricted/_uniq.js +1 -1
  48. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  49. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  50. package/src/sap/base/util/restricted/_without.js +1 -1
  51. package/src/sap/base/util/restricted/_xor.js +1 -1
  52. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  53. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  54. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  55. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  56. package/src/sap/ui/Device.js +80 -168
  57. package/src/sap/ui/Global.js +4 -4
  58. package/src/sap/ui/VersionInfo.js +13 -10
  59. package/src/sap/ui/base/BindingParser.js +34 -7
  60. package/src/sap/ui/base/Event.js +1 -1
  61. package/src/sap/ui/base/EventProvider.js +1 -1
  62. package/src/sap/ui/base/ExpressionParser.js +1 -1
  63. package/src/sap/ui/base/Interface.js +1 -1
  64. package/src/sap/ui/base/ManagedObject.js +48 -27
  65. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  66. package/src/sap/ui/base/ManagedObjectObserver.js +2 -0
  67. package/src/sap/ui/base/Metadata.js +1 -1
  68. package/src/sap/ui/base/Object.js +1 -1
  69. package/src/sap/ui/base/ObjectPool.js +1 -1
  70. package/src/sap/ui/core/.library +2 -2
  71. package/src/sap/ui/core/BusyIndicator.js +1 -1
  72. package/src/sap/ui/core/BusyIndicatorUtils.js +1 -1
  73. package/src/sap/ui/core/Component.js +3 -3
  74. package/src/sap/ui/core/ComponentContainer.js +1 -1
  75. package/src/sap/ui/core/ComponentMetadata.js +2 -2
  76. package/src/sap/ui/core/ComponentSupport.js +1 -1
  77. package/src/sap/ui/core/Configuration.js +82 -15
  78. package/src/sap/ui/core/Control.js +3 -2
  79. package/src/sap/ui/core/Core.js +5 -6
  80. package/src/sap/ui/core/CustomData.js +1 -1
  81. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  82. package/src/sap/ui/core/Element.js +5 -7
  83. package/src/sap/ui/core/ElementMetadata.js +1 -1
  84. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  85. package/src/sap/ui/core/EventBus.js +1 -1
  86. package/src/sap/ui/core/ExtensionPoint.js +1 -1
  87. package/src/sap/ui/core/FocusHandler.js +1 -1
  88. package/src/sap/ui/core/Fragment.js +1 -1
  89. package/src/sap/ui/core/HTML.js +1 -1
  90. package/src/sap/ui/core/HTMLRenderer.js +1 -1
  91. package/src/sap/ui/core/History.js +1 -1
  92. package/src/sap/ui/core/Icon.js +18 -5
  93. package/src/sap/ui/core/IconRenderer.js +1 -1
  94. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  95. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  96. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  97. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  98. package/src/sap/ui/core/InvisibleText.js +1 -1
  99. package/src/sap/ui/core/Item.js +1 -1
  100. package/src/sap/ui/core/LabelEnablement.js +9 -2
  101. package/src/sap/ui/core/LayoutData.js +1 -1
  102. package/src/sap/ui/core/ListItem.js +1 -1
  103. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  104. package/src/sap/ui/core/LocalBusyIndicatorRenderer.js +2 -2
  105. package/src/sap/ui/core/LocalBusyIndicatorSupport.js +1 -1
  106. package/src/sap/ui/core/Locale.js +1 -1
  107. package/src/sap/ui/core/LocaleData.js +60 -6
  108. package/src/sap/ui/core/Manifest.js +1 -1
  109. package/src/sap/ui/core/Message.js +1 -1
  110. package/src/sap/ui/core/Patcher.js +3 -3
  111. package/src/sap/ui/core/Placeholder.js +28 -28
  112. package/src/sap/ui/core/Popup.js +12 -9
  113. package/src/sap/ui/core/RenderManager.js +1 -1
  114. package/src/sap/ui/core/Renderer.js +1 -1
  115. package/src/sap/ui/core/ResizeHandler.js +1 -1
  116. package/src/sap/ui/core/ScrollBar.js +1 -1
  117. package/src/sap/ui/core/ScrollBarRenderer.js +1 -1
  118. package/src/sap/ui/core/SeparatorItem.js +1 -1
  119. package/src/sap/ui/core/Title.js +1 -1
  120. package/src/sap/ui/core/TooltipBase.js +2 -2
  121. package/src/sap/ui/core/UIArea.js +1 -1
  122. package/src/sap/ui/core/UIComponent.js +1 -1
  123. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  124. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  125. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  126. package/src/sap/ui/core/XMLComposite.js +1 -1
  127. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  128. package/src/sap/ui/core/XMLTemplateProcessor.js +7 -6
  129. package/src/sap/ui/core/_IconRegistry.js +13 -3
  130. package/src/sap/ui/core/cache/CacheManager.js +1 -1
  131. package/src/sap/ui/core/cache/LRUPersistentCache.js +2 -1
  132. package/src/sap/ui/core/cldr/en_AU.json +1 -1
  133. package/src/sap/ui/core/date/Buddhist.js +3 -3
  134. package/src/sap/ui/core/date/Japanese.js +4 -4
  135. package/src/sap/ui/core/date/UniversalDate.js +10 -0
  136. package/src/sap/ui/core/date/UniversalDateUtils.js +175 -5
  137. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  138. package/src/sap/ui/core/delegate/ScrollEnablement.js +9 -6
  139. package/src/sap/ui/core/dnd/DragAndDrop.js +21 -18
  140. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  141. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  142. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  143. package/src/sap/ui/core/dnd/DropInfo.js +3 -3
  144. package/src/sap/ui/core/format/DateFormat.js +654 -202
  145. package/src/sap/ui/core/format/DateFormatTimezoneDisplay.js +44 -0
  146. package/src/sap/ui/core/format/ListFormat.js +2 -2
  147. package/src/sap/ui/core/format/NumberFormat.js +502 -216
  148. package/src/sap/ui/core/format/TimezoneUtil.js +248 -0
  149. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  150. package/src/sap/ui/core/library.js +126 -53
  151. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  152. package/src/sap/ui/core/message/Message.js +1 -1
  153. package/src/sap/ui/core/message/MessageManager.js +1 -1
  154. package/src/sap/ui/core/message/MessageMixin.js +2 -1
  155. package/src/sap/ui/core/message/MessageParser.js +1 -1
  156. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  157. package/src/sap/ui/core/messagebundle.properties +2 -0
  158. package/src/sap/ui/core/messagebundle_ar.properties +1 -0
  159. package/src/sap/ui/core/messagebundle_bg.properties +6 -5
  160. package/src/sap/ui/core/messagebundle_ca.properties +1 -0
  161. package/src/sap/ui/core/messagebundle_cs.properties +1 -0
  162. package/src/sap/ui/core/messagebundle_cy.properties +1 -0
  163. package/src/sap/ui/core/messagebundle_da.properties +1 -0
  164. package/src/sap/ui/core/messagebundle_de.properties +2 -1
  165. package/src/sap/ui/core/messagebundle_el.properties +1 -0
  166. package/src/sap/ui/core/messagebundle_en.properties +1 -0
  167. package/src/sap/ui/core/messagebundle_en_GB.properties +1 -0
  168. package/src/sap/ui/core/messagebundle_en_US_sappsd.properties +1 -0
  169. package/src/sap/ui/core/messagebundle_en_US_saprigi.properties +1 -0
  170. package/src/sap/ui/core/messagebundle_en_US_saptrc.properties +1 -0
  171. package/src/sap/ui/core/messagebundle_es.properties +1 -0
  172. package/src/sap/ui/core/messagebundle_es_MX.properties +1 -0
  173. package/src/sap/ui/core/messagebundle_et.properties +1 -0
  174. package/src/sap/ui/core/messagebundle_fi.properties +1 -0
  175. package/src/sap/ui/core/messagebundle_fr.properties +1 -0
  176. package/src/sap/ui/core/messagebundle_fr_CA.properties +1 -0
  177. package/src/sap/ui/core/messagebundle_hi.properties +1 -0
  178. package/src/sap/ui/core/messagebundle_hr.properties +1 -0
  179. package/src/sap/ui/core/messagebundle_hu.properties +1 -0
  180. package/src/sap/ui/core/messagebundle_id.properties +3 -2
  181. package/src/sap/ui/core/messagebundle_it.properties +2 -1
  182. package/src/sap/ui/core/messagebundle_iw.properties +1 -0
  183. package/src/sap/ui/core/messagebundle_ja.properties +1 -0
  184. package/src/sap/ui/core/messagebundle_kk.properties +1 -0
  185. package/src/sap/ui/core/messagebundle_ko.properties +2 -1
  186. package/src/sap/ui/core/messagebundle_lt.properties +1 -0
  187. package/src/sap/ui/core/messagebundle_lv.properties +2 -1
  188. package/src/sap/ui/core/messagebundle_ms.properties +1 -0
  189. package/src/sap/ui/core/messagebundle_nl.properties +1 -0
  190. package/src/sap/ui/core/messagebundle_no.properties +5 -4
  191. package/src/sap/ui/core/messagebundle_pl.properties +1 -0
  192. package/src/sap/ui/core/messagebundle_pt.properties +1 -0
  193. package/src/sap/ui/core/messagebundle_pt_PT.properties +1 -0
  194. package/src/sap/ui/core/messagebundle_ro.properties +1 -0
  195. package/src/sap/ui/core/messagebundle_ru.properties +1 -0
  196. package/src/sap/ui/core/messagebundle_sh.properties +1 -0
  197. package/src/sap/ui/core/messagebundle_sk.properties +1 -0
  198. package/src/sap/ui/core/messagebundle_sl.properties +1 -0
  199. package/src/sap/ui/core/messagebundle_sv.properties +1 -0
  200. package/src/sap/ui/core/messagebundle_th.properties +1 -0
  201. package/src/sap/ui/core/messagebundle_tr.properties +1 -0
  202. package/src/sap/ui/core/messagebundle_uk.properties +1 -0
  203. package/src/sap/ui/core/messagebundle_vi.properties +1 -0
  204. package/src/sap/ui/core/messagebundle_zh_CN.properties +1 -0
  205. package/src/sap/ui/core/messagebundle_zh_TW.properties +1 -0
  206. package/src/sap/ui/core/mvc/Controller.js +1 -1
  207. package/src/sap/ui/core/mvc/ControllerExtensionProvider.js +1 -1
  208. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  209. package/src/sap/ui/core/mvc/HTMLViewRenderer.js +1 -1
  210. package/src/sap/ui/core/mvc/JSONView.js +2 -1
  211. package/src/sap/ui/core/mvc/JSONViewRenderer.js +1 -1
  212. package/src/sap/ui/core/mvc/JSView.js +1 -1
  213. package/src/sap/ui/core/mvc/JSViewRenderer.js +1 -1
  214. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  215. package/src/sap/ui/core/mvc/TemplateViewRenderer.js +1 -1
  216. package/src/sap/ui/core/mvc/View.js +2 -1
  217. package/src/sap/ui/core/mvc/ViewRenderer.js +1 -1
  218. package/src/sap/ui/core/mvc/XMLView.js +24 -3
  219. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  220. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  221. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  222. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  223. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  224. package/src/sap/ui/core/routing/Route.js +6 -6
  225. package/src/sap/ui/core/routing/Router.js +4 -3
  226. package/src/sap/ui/core/routing/Targets.js +17 -13
  227. package/src/sap/ui/core/rules/Misc.support.js +8 -3
  228. package/src/sap/ui/core/rules/Model.support.js +95 -8
  229. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  230. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  231. package/src/sap/ui/core/service/Service.js +1 -1
  232. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  233. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  234. package/src/sap/ui/core/support/Plugin.js +1 -1
  235. package/src/sap/ui/core/support/Support.js +3 -3
  236. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  237. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  238. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  239. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  240. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  241. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  242. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  243. package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
  244. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +1 -5
  245. package/src/sap/ui/core/themes/base/CommandShortcutHints.less +1 -1
  246. package/src/sap/ui/core/themes/base/base.less +1108 -35
  247. package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
  248. package/src/sap/ui/core/themes/base/global.less +158 -4
  249. package/src/sap/ui/core/themes/base/parameterClasses.less +21 -21
  250. package/src/sap/ui/core/themes/sap_hcb/global.less +157 -2
  251. package/src/sap/ui/core/theming/Parameters.js +22 -142
  252. package/src/sap/ui/core/theming/ThemeHelper.js +26 -37
  253. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  254. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  255. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  256. package/src/sap/ui/core/tmpl/Template.js +1 -1
  257. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  258. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  259. package/src/sap/ui/core/util/DraftEnabledMockServer.js +21 -16
  260. package/src/sap/ui/core/util/Export.js +1 -1
  261. package/src/sap/ui/core/util/ExportCell.js +1 -1
  262. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  263. package/src/sap/ui/core/util/ExportRow.js +1 -1
  264. package/src/sap/ui/core/util/ExportType.js +1 -1
  265. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  266. package/src/sap/ui/core/util/File.js +1 -1
  267. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  268. package/src/sap/ui/core/util/MockServer.js +157 -57
  269. package/src/sap/ui/core/util/PasteHelper.js +5 -5
  270. package/src/sap/ui/core/util/XMLPreprocessor.js +17 -4
  271. package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +4 -0
  272. package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +26 -16
  273. package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +1 -1
  274. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  275. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  276. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  277. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  278. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  279. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  280. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  281. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  282. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  283. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  284. package/src/sap/ui/debug/ControlTree.js +1 -1
  285. package/src/sap/ui/debug/DebugEnv.js +1 -1
  286. package/src/sap/ui/debug/LogViewer.js +2 -2
  287. package/src/sap/ui/debug/PropertyList.js +1 -1
  288. package/src/sap/ui/dom/includeStylesheet.js +8 -3
  289. package/src/sap/ui/events/jquery/EventExtension.js +1 -1
  290. package/src/sap/ui/events/jquery/EventSimulation.js +3 -13
  291. package/src/sap/ui/model/Binding.js +4 -3
  292. package/src/sap/ui/model/ClientModel.js +1 -1
  293. package/src/sap/ui/model/ClientTreeBinding.js +1 -1
  294. package/src/sap/ui/model/CompositeBinding.js +4 -1
  295. package/src/sap/ui/model/CompositeDataState.js +26 -4
  296. package/src/sap/ui/model/CompositeType.js +13 -1
  297. package/src/sap/ui/model/ContextBinding.js +1 -1
  298. package/src/sap/ui/model/DataState.js +27 -6
  299. package/src/sap/ui/model/ListBinding.js +2 -2
  300. package/src/sap/ui/model/MetaModel.js +2 -3
  301. package/src/sap/ui/model/Model.js +2 -2
  302. package/src/sap/ui/model/SelectionModel.js +1 -1
  303. package/src/sap/ui/model/SimpleType.js +1 -1
  304. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  305. package/src/sap/ui/model/Type.js +1 -1
  306. package/src/sap/ui/model/_Helper.js +22 -0
  307. package/src/sap/ui/model/analytics/AnalyticalBinding.js +68 -42
  308. package/src/sap/ui/model/analytics/ODataModelAdapter.js +2 -15
  309. package/src/sap/ui/model/base/ManagedObjectModel.js +9 -7
  310. package/src/sap/ui/model/json/JSONListBinding.js +1 -1
  311. package/src/sap/ui/model/json/JSONModel.js +15 -8
  312. package/src/sap/ui/model/json/JSONPropertyBinding.js +1 -1
  313. package/src/sap/ui/model/message/MessageListBinding.js +1 -1
  314. package/src/sap/ui/model/message/MessageModel.js +1 -1
  315. package/src/sap/ui/model/message/MessagePropertyBinding.js +1 -1
  316. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  317. package/src/sap/ui/model/odata/ODataListBinding.js +1 -1
  318. package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
  319. package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
  320. package/src/sap/ui/model/odata/ODataMetadata.js +3 -3
  321. package/src/sap/ui/model/odata/ODataModel.js +2 -2
  322. package/src/sap/ui/model/odata/ODataPropertyBinding.js +3 -1
  323. package/src/sap/ui/model/odata/ODataTreeBinding.js +1 -1
  324. package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +1 -1
  325. package/src/sap/ui/model/odata/_AnnotationHelperBasics.js +1 -1
  326. package/src/sap/ui/model/odata/_AnnotationHelperExpression.js +1 -1
  327. package/src/sap/ui/model/odata/_ODataMetaModelUtils.js +1 -1
  328. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  329. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  330. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  331. package/src/sap/ui/model/odata/type/Date.js +1 -1
  332. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  333. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  334. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  335. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +346 -0
  336. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  337. package/src/sap/ui/model/odata/type/Double.js +1 -1
  338. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  339. package/src/sap/ui/model/odata/type/Int.js +1 -1
  340. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  341. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  342. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  343. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  344. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  345. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  346. package/src/sap/ui/model/odata/type/Single.js +1 -1
  347. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  348. package/src/sap/ui/model/odata/type/String.js +1 -1
  349. package/src/sap/ui/model/odata/type/Time.js +1 -1
  350. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  351. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  352. package/src/sap/ui/model/odata/type/UnitMixin.js +1 -1
  353. package/src/sap/ui/model/odata/v2/Context.js +62 -5
  354. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  355. package/src/sap/ui/model/odata/v2/ODataContextBinding.js +8 -4
  356. package/src/sap/ui/model/odata/v2/ODataListBinding.js +324 -112
  357. package/src/sap/ui/model/odata/v2/ODataModel.js +324 -94
  358. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +3 -4
  359. package/src/sap/ui/model/odata/v2/_CreatedContextsCache.js +65 -5
  360. package/src/sap/ui/model/odata/v4/AnnotationHelper.js +21 -22
  361. package/src/sap/ui/model/odata/v4/Context.js +224 -101
  362. package/src/sap/ui/model/odata/v4/ODataBinding.js +99 -55
  363. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +272 -210
  364. package/src/sap/ui/model/odata/v4/ODataListBinding.js +557 -258
  365. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +131 -100
  366. package/src/sap/ui/model/odata/v4/ODataModel.js +503 -260
  367. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +106 -138
  368. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +87 -80
  369. package/src/sap/ui/model/odata/v4/ODataUtils.js +5 -5
  370. package/src/sap/ui/model/odata/v4/SubmitMode.js +0 -1
  371. package/src/sap/ui/model/odata/v4/ValueListType.js +0 -1
  372. package/src/sap/ui/model/odata/v4/_AnnotationHelperExpression.js +20 -20
  373. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +3 -5
  374. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +5 -4
  375. package/src/sap/ui/model/odata/v4/lib/_Batch.js +21 -20
  376. package/src/sap/ui/model/odata/v4/lib/_Cache.js +322 -127
  377. package/src/sap/ui/model/odata/v4/lib/_GroupLock.js +5 -1
  378. package/src/sap/ui/model/odata/v4/lib/_Helper.js +28 -21
  379. package/src/sap/ui/model/odata/v4/lib/_MetadataConverter.js +62 -61
  380. package/src/sap/ui/model/odata/v4/lib/_MetadataRequestor.js +1 -1
  381. package/src/sap/ui/model/odata/v4/lib/_Parser.js +52 -43
  382. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +216 -51
  383. package/src/sap/ui/model/odata/v4/lib/_V2MetadataConverter.js +147 -147
  384. package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +14 -13
  385. package/src/sap/ui/model/odata/v4/lib/_V4MetadataConverter.js +66 -67
  386. package/src/sap/ui/model/resource/ResourceModel.js +1 -1
  387. package/src/sap/ui/model/resource/ResourcePropertyBinding.js +1 -1
  388. package/src/sap/ui/model/type/Boolean.js +1 -1
  389. package/src/sap/ui/model/type/Currency.js +1 -1
  390. package/src/sap/ui/model/type/Date.js +1 -1
  391. package/src/sap/ui/model/type/DateInterval.js +1 -1
  392. package/src/sap/ui/model/type/DateTime.js +1 -1
  393. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  394. package/src/sap/ui/model/type/FileSize.js +1 -1
  395. package/src/sap/ui/model/type/Float.js +1 -1
  396. package/src/sap/ui/model/type/Integer.js +1 -1
  397. package/src/sap/ui/model/type/String.js +1 -1
  398. package/src/sap/ui/model/type/Time.js +1 -1
  399. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  400. package/src/sap/ui/model/type/Unit.js +1 -1
  401. package/src/sap/ui/model/xml/XMLListBinding.js +1 -1
  402. package/src/sap/ui/model/xml/XMLModel.js +1 -1
  403. package/src/sap/ui/model/xml/XMLPropertyBinding.js +1 -1
  404. package/src/sap/ui/performance/trace/FESR.js +1 -1
  405. package/src/sap/ui/performance/trace/FESRHelper.js +72 -0
  406. package/src/sap/ui/performance/trace/Interaction.js +6 -2
  407. package/src/sap/ui/performance/trace/Passport.js +3 -3
  408. package/src/sap/ui/qunit/qunit-2-css.js +4 -4
  409. package/src/sap/ui/qunit/qunit-css.js +4 -4
  410. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  411. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  412. package/src/sap/ui/test/BlanketReporter.js +1 -1
  413. package/src/sap/ui/test/BranchTracking.js +1 -0
  414. package/src/sap/ui/test/Opa5.js +1 -1
  415. package/src/sap/ui/test/OpaBuilder.js +7 -7
  416. package/src/sap/ui/test/TestUtils.js +12 -2
  417. package/src/sap/ui/test/_LogCollector.js +1 -1
  418. package/src/sap/ui/test/_UsageReport.js +1 -1
  419. package/src/sap/ui/test/actions/Action.js +4 -2
  420. package/src/sap/ui/test/actions/Press.js +51 -2
  421. package/src/sap/ui/test/autowaiter/_XHRWaiter.js +1 -1
  422. package/src/sap/ui/test/generic/GenericTestCollection.js +176 -0
  423. package/src/sap/ui/test/generic/TestBase.js +151 -0
  424. package/src/sap/ui/test/generic/Utils.js +284 -0
  425. package/src/sap/ui/test/selectors/_ControlSelectorGenerator.js +9 -8
  426. package/src/sap/ui/test/selectors/_ControlSelectorValidator.js +1 -1
  427. package/src/sap/ui/test/starter/_setupAndStart.js +4 -0
  428. package/src/sap/ui/test/starter/createSuite.js +3 -3
  429. package/src/sap/ui/thirdparty/IPv6.js +1 -1
  430. package/src/sap/ui/thirdparty/SecondLevelDomains.js +1 -1
  431. package/src/sap/ui/thirdparty/URI.js +7 -3
  432. package/src/sap/ui/thirdparty/URITemplate.js +1 -1
  433. package/src/sap/ui/thirdparty/jquery-mobile-custom.js +3 -6
  434. package/src/sap/ui/thirdparty/jqueryui/jquery-ui-datepicker.js +143 -3
  435. package/src/sap/ui/thirdparty/jqueryui/jquery-ui-position.js +8 -1
  436. package/src/sap/ui/thirdparty/jszip.js +17 -7
  437. package/src/sap/ui/thirdparty/mobify-carousel.js +1 -1
  438. package/src/sap/ui/util/Mobile.js +17 -0
  439. package/src/sap/ui/util/Storage.js +1 -1
  440. package/src/sap/ui/util/XMLHelper.js +53 -30
  441. package/src/ui5loader.js +4 -4
@@ -171,7 +171,7 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
171
171
  *
172
172
  * @param {sap.ui.core.date.UniversalDate} [oUniversalDate=now] Base date, defaults to now
173
173
  * @param {string} [sLocale=format locale] An optional locale identifier, as BCP language tag;
174
- * defaults to the current format local of UI5
174
+ * defaults to the current format localе of UI5
175
175
  * @returns {sap.ui.core.date.UniversalDate} First day of the week
176
176
  * @private
177
177
  * @ui5-restricted sap.ui.comp
@@ -186,6 +186,29 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
186
186
  return UniversalDateUtils.resetStartTime(oUniversalDate);
187
187
  };
188
188
 
189
+ /**
190
+ * Returns the last day of the week for the given date.
191
+ *
192
+ * The interpretation of 'last day of the week' depends on the given locale or, if none is given,
193
+ * on the current {@link sap.ui.core.Configuration.FormatSettings#getFormatLocale UI5 format locale}.
194
+ *
195
+ * If no date is given, today is used, represented in the session's default calendar.
196
+ * If a date is given, the returned date will use the same calendar.
197
+ * The time portion of the returned date will be set to the start of the day (00:00:00:000).
198
+ *
199
+ * @param {sap.ui.core.date.UniversalDate} [oUniversalDate=now] Base date, defaults to now
200
+ * @param {string} [sLocale=format locale] An optional locale identifier, as BCP language tag;
201
+ * defaults to the current format localе of UI5
202
+ * @returns {sap.ui.core.date.UniversalDate} Last day of the week
203
+ * @private
204
+ * @ui5-restricted sap.ui.comp
205
+ */
206
+ UniversalDateUtils.getWeekLastDate = function (oUniversalDate, sLocale) {
207
+ var oEndDate = UniversalDateUtils.getWeekStartDate(oUniversalDate, sLocale);
208
+ oEndDate.setDate(oEndDate.getDate() + 6);
209
+ return UniversalDateUtils.resetStartTime(oEndDate);
210
+ };
211
+
189
212
  /**
190
213
  * Returns the first day of the month of the given date.
191
214
  *
@@ -204,6 +227,25 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
204
227
  return UniversalDateUtils.resetStartTime(oUniversalDate);
205
228
  };
206
229
 
230
+ /**
231
+ * Returns the last day of the month for the given date.
232
+ *
233
+ * If no date is given, today is used, represented in the session's default calendar.
234
+ * If a date is given, the returned date will use the same calendar.
235
+ * The time portion of the returned date will be set to the start of the day (00:00:00:000).
236
+ *
237
+ * @param {sap.ui.core.date.UniversalDate} [oUniversalDate=now] Base date, defaults to now
238
+ * @returns {sap.ui.core.date.UniversalDate} Last day of the month
239
+ * @private
240
+ * @ui5-restricted sap.ui.comp
241
+ */
242
+ UniversalDateUtils.getMonthEndDate = function (oUniversalDate) {
243
+ var oEndDate = UniversalDateUtils.getMonthStartDate(oUniversalDate);
244
+ oEndDate.setMonth(oEndDate.getMonth() + 1);
245
+ oEndDate.setDate(0);
246
+ return UniversalDateUtils.resetStartTime(oEndDate);
247
+ };
248
+
207
249
  /**
208
250
  * Returns the first day of the quarter of the year of the given date.
209
251
  *
@@ -223,6 +265,25 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
223
265
  return UniversalDateUtils.resetStartTime(oUniversalDate);
224
266
  };
225
267
 
268
+ /**
269
+ * Returns the last day of the quarter of the year for the given date.
270
+ *
271
+ * If no date is given, today is used, represented in the session's default calendar.
272
+ * If a date is given, the returned date will use the same calendar.
273
+ * The time portion of the returned date will be set to the start of the day (00:00:00:000).
274
+ *
275
+ * @param {sap.ui.core.date.UniversalDate} [oUniversalDate=now] Base date, defaults to now
276
+ * @returns {sap.ui.core.date.UniversalDate} Last day of the quarter of the year
277
+ * @private
278
+ * @ui5-restricted sap.ui.comp
279
+ */
280
+ UniversalDateUtils.getQuarterEndDate = function (oUniversalDate) {
281
+ var oEndDate = UniversalDateUtils.getQuarterStartDate(oUniversalDate);
282
+ oEndDate.setMonth(oEndDate.getMonth() + 3);
283
+ oEndDate.setDate(0);
284
+ return UniversalDateUtils.resetStartTime(oEndDate);
285
+ };
286
+
226
287
  /**
227
288
  * Returns the year's start date based on a given universal date.
228
289
  *
@@ -247,7 +308,7 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
247
308
  *
248
309
  * If no date is given, today is used, represented in the session's default calendar.
249
310
  * If a date is given, the returned date will use the same calendar.
250
- * The time portion of the returned date will be set to the end of the day (23:59:59:999).
311
+ * The time portion of the returned date will be set to the start of the day (00:00:00:000).
251
312
  *
252
313
  * @param {sap.ui.core.date.UniversalDate} [oUniversalDate=now] Base date, defaults to now
253
314
  * @returns {sap.ui.core.date.UniversalDate} The year's end date for the given universal date
@@ -259,7 +320,7 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
259
320
  oUniversalDate.setFullYear(oUniversalDate.getFullYear() + 1);
260
321
  oUniversalDate.setMonth(0);
261
322
  oUniversalDate.setDate(0);
262
- return UniversalDateUtils.resetEndTime(oUniversalDate);
323
+ return UniversalDateUtils.resetStartTime(oUniversalDate);
263
324
  };
264
325
 
265
326
  /**
@@ -373,6 +434,33 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
373
434
  currentWeek: function () {
374
435
  return UniversalDateUtils.getRange(0, "WEEK");
375
436
  },
437
+
438
+ /**
439
+ * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of the first day of the current week
440
+ * @private
441
+ * @ui5-restricted sap.ui.comp
442
+ */
443
+ firstDayOfWeek: function () {
444
+ var oStartDate = UniversalDateUtils.getWeekStartDate();
445
+ return [
446
+ oStartDate,
447
+ UniversalDateUtils.resetEndTime(oStartDate)
448
+ ];
449
+ },
450
+
451
+ /**
452
+ * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of the last day of the current week
453
+ * @private
454
+ * @ui5-restricted sap.ui.comp
455
+ */
456
+ lastDayOfWeek: function () {
457
+ var oEndDate = UniversalDateUtils.getWeekLastDate();
458
+ return [
459
+ oEndDate,
460
+ UniversalDateUtils.resetEndTime(oEndDate)
461
+ ];
462
+ },
463
+
376
464
  /**
377
465
  * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of next week's
378
466
  * @private
@@ -409,13 +497,40 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
409
497
  return UniversalDateUtils.getRange(-1, "MONTH");
410
498
  },
411
499
  /**
412
- * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of current month's
500
+ * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of current month
413
501
  * @private
414
502
  * @ui5-restricted sap.ui.comp
415
503
  */
416
504
  currentMonth: function () {
417
505
  return UniversalDateUtils.getRange(0, "MONTH");
418
506
  },
507
+
508
+ /**
509
+ * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of first day of the current month
510
+ * @private
511
+ * @ui5-restricted sap.ui.comp
512
+ */
513
+ firstDayOfMonth: function () {
514
+ var oStartDate = UniversalDateUtils.getMonthStartDate();
515
+ return [
516
+ oStartDate,
517
+ UniversalDateUtils.resetEndTime(oStartDate)
518
+ ];
519
+ },
520
+
521
+ /**
522
+ * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of last day of the current month
523
+ * @private
524
+ * @ui5-restricted sap.ui.comp
525
+ */
526
+ lastDayOfMonth: function () {
527
+ var oEndDate = UniversalDateUtils.getMonthEndDate();
528
+ return [
529
+ oEndDate,
530
+ UniversalDateUtils.resetEndTime(oEndDate)
531
+ ];
532
+ },
533
+
419
534
  /**
420
535
  * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of next month's
421
536
  * @private
@@ -451,6 +566,33 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
451
566
  lastQuarter: function () {
452
567
  return UniversalDateUtils.getRange(-1, "QUARTER");
453
568
  },
569
+
570
+ /**
571
+ * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of first day of the current quarter
572
+ * @private
573
+ * @ui5-restricted sap.ui.comp
574
+ */
575
+ firstDayOfQuarter: function () {
576
+ var oStartDate = UniversalDateUtils.getQuarterStartDate();
577
+ return [
578
+ oStartDate,
579
+ UniversalDateUtils.resetEndTime(oStartDate)
580
+ ];
581
+ },
582
+
583
+ /**
584
+ * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of last day of the current quarter
585
+ * @private
586
+ * @ui5-restricted sap.ui.comp
587
+ */
588
+ lastDayOfQuarter: function () {
589
+ var oEndDate = UniversalDateUtils.getQuarterEndDate();
590
+ return [
591
+ oEndDate,
592
+ UniversalDateUtils.resetEndTime(oEndDate)
593
+ ];
594
+ },
595
+
454
596
  /**
455
597
  * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of current quarter
456
598
  * @private
@@ -510,6 +652,34 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
510
652
  lastYear: function () {
511
653
  return UniversalDateUtils.getRange(-1, "YEAR");
512
654
  },
655
+
656
+ /**
657
+ * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of first day of the current year
658
+ * @private
659
+ * @ui5-restricted sap.ui.comp
660
+ */
661
+ firstDayOfYear: function () {
662
+ var oStartDate = UniversalDateUtils.getYearStartDate();
663
+ return [
664
+ oStartDate,
665
+ UniversalDateUtils.resetEndTime(oStartDate)
666
+ ];
667
+ },
668
+
669
+ /**
670
+ * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of last day of the current year
671
+ * @private
672
+ * @ui5-restricted sap.ui.comp
673
+ */
674
+ lastDayOfYear: function () {
675
+ var oEndDate = UniversalDateUtils.getYearEndDate();
676
+
677
+ return [
678
+ oEndDate,
679
+ UniversalDateUtils.resetEndTime(oEndDate)
680
+ ];
681
+ },
682
+
513
683
  /**
514
684
  * @returns {sap.ui.core.date.UniversalDate[]} Array with start and end date of current year
515
685
  * @private
@@ -558,7 +728,7 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
558
728
  var oToday = UniversalDateUtils.createNewUniversalDate();
559
729
  return [
560
730
  UniversalDateUtils.resetStartTime(oToday),
561
- UniversalDateUtils.getYearEndDate(oToday)
731
+ UniversalDateUtils.resetEndTime(UniversalDateUtils.getYearEndDate(oToday))
562
732
  ];
563
733
  }
564
734
  };
@@ -82,7 +82,7 @@ sap.ui.define([
82
82
  * @param {Element[]} aItemDomRefs Array of DOM references representing the items for the navigation
83
83
  * @param {boolean} [bNotInTabChain=false] Whether the selected element should be in the tab chain or not
84
84
  *
85
- * @version 1.97.1
85
+ * @version 1.100.0
86
86
  * @alias sap.ui.core.delegate.ItemNavigation
87
87
  * @public
88
88
  */
@@ -58,7 +58,7 @@ sap.ui.define([
58
58
  *
59
59
  * @protected
60
60
  * @alias sap.ui.core.delegate.ScrollEnablement
61
- * @version 1.97.1
61
+ * @version 1.100.0
62
62
  * @author SAP SE
63
63
  */
64
64
  var ScrollEnablement = BaseObject.extend("sap.ui.core.delegate.ScrollEnablement", /** @lends sap.ui.core.delegate.ScrollEnablement.prototype */ {
@@ -217,12 +217,12 @@ sap.ui.define([
217
217
  },
218
218
  /**
219
219
  * Scrolls to a specific position in scroll container.
220
- * @param {int} iHorizontalPosition Horizontal position of the scrollbar
221
- * @param {int} iVerticalPosition Vertical position of the scrollbar
222
- * @param {int} [iTime=0]
220
+ * @param {int} x Horizontal position of the scrollbar
221
+ * @param {int} y Vertical position of the scrollbar
222
+ * @param {int} [time=0]
223
223
  * The duration of animated scrolling in milliseconds. To scroll immediately without animation,
224
224
  * give 0 as value.
225
- * @param {function} fnCallback
225
+ * @param {function} fnScrollEndCallback
226
226
  * @returns {this}
227
227
  * @public
228
228
  */
@@ -246,7 +246,10 @@ sap.ui.define([
246
246
  $OffsetParent = $Element.offsetParent(),
247
247
  oAddUpPosition;
248
248
 
249
- while (!$OffsetParent.is(this._$Container)) {
249
+ // Not positioned elements (position = "unset" or "fixed") are skipped and not returned as offsetParent.
250
+ // If the this._$Container is not positioned this function ends in infinite loop.
251
+ // Last value returned from offsetParent is the root html element or null.
252
+ while (!$OffsetParent.is(this._$Container) && !$OffsetParent.is("html") && $OffsetParent.length) {
250
253
  oAddUpPosition = $OffsetParent.position();
251
254
  oElementPosition.top += oAddUpPosition.top;
252
255
  oElementPosition.left += oAddUpPosition.left;
@@ -4,15 +4,18 @@
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
  sap.ui.define([
7
+ "../library",
7
8
  "sap/ui/Device",
8
9
  "../UIArea",
9
10
  "sap/ui/thirdparty/jquery",
10
11
  // jQuery Plugin "control"
11
12
  "sap/ui/dom/jquery/control"
12
13
  ],
13
- function(Device, UIArea, jQuery) {
14
+ function(lib, Device, UIArea, jQuery) {
14
15
  "use strict";
15
16
 
17
+ var RelativeDropPosition = lib.dnd.RelativeDropPosition;
18
+
16
19
  /**
17
20
  * Contains classes and helpers related to drag & drop functionality.
18
21
  *
@@ -267,7 +270,7 @@ function(Device, UIArea, jQuery) {
267
270
  /**
268
271
  * Returns the calculated position of the drop action relative to the valid dropped control.
269
272
  *
270
- * @returns {string}
273
+ * @returns {sap.ui.core.dnd.RelativeDropPosition}
271
274
  * @protected
272
275
  */
273
276
  getDropPosition: function() {
@@ -323,7 +326,7 @@ function(Device, UIArea, jQuery) {
323
326
  };
324
327
 
325
328
  if (!sDropPosition || sDropPosition == "On") {
326
- sRelativePosition = "On";
329
+ sRelativePosition = RelativeDropPosition.On;
327
330
  sDropLayout = "";
328
331
  } else if (sDropLayout == "Horizontal") {
329
332
  var iCursorX = oEvent.pageX - mDropRect.left;
@@ -333,27 +336,27 @@ function(Device, UIArea, jQuery) {
333
336
  if (sDropPosition == "Between") {
334
337
  mStyle.width = "";
335
338
  if (iCursorX < mDropRect.width * 0.5) {
336
- sRelativePosition = "Before";
339
+ sRelativePosition = RelativeDropPosition.Before;
337
340
  mStyle.left = mDropRect.left;
338
341
  } else {
339
- sRelativePosition = "After";
342
+ sRelativePosition = RelativeDropPosition.After;
340
343
  mStyle.left = mDropRect.right;
341
344
  }
342
345
  } else if (sDropPosition == "OnOrBetween") {
343
346
  if (iCursorX < mDropRect.width * 0.25) {
344
- sRelativePosition = "Before";
347
+ sRelativePosition = RelativeDropPosition.Before;
345
348
  mStyle.left = mDropRect.left;
346
349
  mStyle.width = "";
347
350
  } else if (iCursorX > mDropRect.width * 0.75) {
348
- sRelativePosition = "After";
351
+ sRelativePosition = RelativeDropPosition.After;
349
352
  mStyle.left = mDropRect.right;
350
353
  mStyle.width = "";
351
354
  } else {
352
- sRelativePosition = "On";
355
+ sRelativePosition = RelativeDropPosition.On;
353
356
  }
354
357
  }
355
- if (sRelativePosition != "On" && sap.ui.getCore().getConfiguration().getRTL()) {
356
- sRelativePosition = (sRelativePosition == "After") ? "Before" : "After";
358
+ if (sRelativePosition != RelativeDropPosition.On && sap.ui.getCore().getConfiguration().getRTL()) {
359
+ sRelativePosition = (sRelativePosition == RelativeDropPosition.After) ? RelativeDropPosition.Before : RelativeDropPosition.After;
357
360
  }
358
361
  } else {
359
362
  var iCursorY = oEvent.pageY - mDropRect.top;
@@ -363,23 +366,23 @@ function(Device, UIArea, jQuery) {
363
366
  if (sDropPosition == "Between") {
364
367
  mStyle.height = "";
365
368
  if (iCursorY < mDropRect.height * 0.5) {
366
- sRelativePosition = "Before";
369
+ sRelativePosition = RelativeDropPosition.Before;
367
370
  mStyle.top = mDropRect.top;
368
371
  } else {
369
- sRelativePosition = "After";
372
+ sRelativePosition = RelativeDropPosition.After;
370
373
  mStyle.top = mDropRect.bottom;
371
374
  }
372
375
  } else if (sDropPosition == "OnOrBetween") {
373
376
  if (iCursorY < mDropRect.height * 0.25) {
374
- sRelativePosition = "Before";
377
+ sRelativePosition = RelativeDropPosition.Before;
375
378
  mStyle.top = mDropRect.top;
376
379
  mStyle.height = "";
377
380
  } else if (iCursorY > mDropRect.height * 0.75) {
378
- sRelativePosition = "After";
381
+ sRelativePosition = RelativeDropPosition.After;
379
382
  mStyle.top = mDropRect.bottom;
380
383
  mStyle.height = "";
381
384
  } else {
382
- sRelativePosition = "On";
385
+ sRelativePosition = RelativeDropPosition.On;
383
386
  }
384
387
  }
385
388
  }
@@ -388,7 +391,7 @@ function(Device, UIArea, jQuery) {
388
391
  return sRelativePosition;
389
392
  }
390
393
 
391
- if (sRelativePosition == "On") {
394
+ if (sRelativePosition == RelativeDropPosition.On) {
392
395
  mStyle.top = mDropRect.top;
393
396
  mStyle.left = mDropRect.left;
394
397
  mStyle.width = mDropRect.width;
@@ -595,8 +598,8 @@ function(Device, UIArea, jQuery) {
595
598
  var aDropInfos = [];
596
599
  oValidDropControl = oControl;
597
600
 
598
- // find the first valid drop control and corresponding valid DropInfos at the control hierarchy
599
- for (var i = 0; i < 20 && oValidDropControl; i++, oValidDropControl = oValidDropControl.getParent()) {
601
+ // find the first valid drop control and corresponding valid DropInfos from the dom-control hierarchy
602
+ for (var i = 0; i < 20 && oValidDropControl; i++, oValidDropControl = oValidDropControl.$ && oValidDropControl.$().parent().control(0, true)) {
600
603
  aDropInfos = getValidDropInfos(oValidDropControl, aValidDragInfos, oEvent);
601
604
  if (aDropInfos.length) {
602
605
  break;
@@ -38,7 +38,7 @@ sap.ui.define([
38
38
  *
39
39
  * @extends sap.ui.core.Element
40
40
  * @author SAP SE
41
- * @version 1.97.1
41
+ * @version 1.100.0
42
42
  *
43
43
  * @public
44
44
  * @since 1.52
@@ -22,7 +22,7 @@ sap.ui.define(["./DragInfo", "./DropInfo", "sap/ui/Device", "sap/base/Log"],
22
22
  * @extends sap.ui.core.dnd.DropInfo
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.97.1
25
+ * @version 1.100.0
26
26
  *
27
27
  * @public
28
28
  * @since 1.52
@@ -22,7 +22,7 @@ sap.ui.define(["./DragDropBase"],
22
22
  * @extends sap.ui.core.dnd.DragDropBase
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.97.1
25
+ * @version 1.100.0
26
26
  *
27
27
  * @public
28
28
  * @since 1.56
@@ -21,7 +21,7 @@ sap.ui.define(["./DragDropBase"],
21
21
  * @extends sap.ui.core.dnd.DragDropBase
22
22
  *
23
23
  * @author SAP SE
24
- * @version 1.97.1
24
+ * @version 1.100.0
25
25
  *
26
26
  * @public
27
27
  * @since 1.56
@@ -85,7 +85,7 @@ sap.ui.define(["./DragDropBase"],
85
85
  * @param {object} oControlEvent.getParameters
86
86
  * @param {sap.ui.core.Element} oControlEvent.getParameters.target The target element on which the dragged element will be dropped
87
87
  * @param {sap.ui.core.dnd.DragSession} oControlEvent.getParameters.dragSession The UI5 <code>dragSession</code> object that exists only during drag and drop
88
- * @param {string} oControlEvent.getParameters.dropPosition The calculated position of the drop action relative to the <code>target</code>, possible values are <code>Before</code>, <code>On</code>, <code>After</code>
88
+ * @param {sap.ui.core.dnd.RelativeDropPosition} oControlEvent.getParameters.dropPosition The calculated position of the drop action relative to the <code>target</code>.
89
89
  * @param {Event} oControlEvent.getParameters.browserEvent The underlying browser event
90
90
  * @public
91
91
  * @since 1.56
@@ -104,7 +104,7 @@ sap.ui.define(["./DragDropBase"],
104
104
  * @param {sap.ui.core.dnd.DragSession} oControlEvent.getParameters.dragSession The UI5 <code>dragSession</code> object that exists only during drag and drop
105
105
  * @param {sap.ui.core.Element} oControlEvent.getParameters.draggedControl The element being dragged
106
106
  * @param {sap.ui.core.Element} oControlEvent.getParameters.droppedControl The element being dropped
107
- * @param {string} oControlEvent.getParameters.dropPosition The calculated position of the drop action relative to the <code>droppedControl</code>, possible values are <code>Before</code>, <code>On</code>, <code>After</code>
107
+ * @param {sap.ui.core.dnd.RelativeDropPosition} oControlEvent.getParameters.dropPosition The calculated position of the drop action relative to the <code>droppedControl</code>.
108
108
  * @param {Event} oControlEvent.getParameters.browserEvent The underlying browser event
109
109
  * @public
110
110
  */