@openui5/sap.ui.core 1.107.0 → 1.108.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 (287) hide show
  1. package/.dtsgenrc +63 -0
  2. package/THIRDPARTY.txt +1 -1
  3. package/package.json +1 -1
  4. package/src/jquery.sap.global.js +1 -1
  5. package/src/jquery.sap.properties.js +1 -1
  6. package/src/jquery.sap.resources.js +1 -1
  7. package/src/jquery.sap.script.js +1 -1
  8. package/src/jquery.sap.storage.js +3 -3
  9. package/src/sap/base/i18n/ResourceBundle.js +10 -0
  10. package/src/sap/base/security/URLListValidator.js +36 -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 +3 -3
  53. package/src/sap/ui/Global.js +4 -4
  54. package/src/sap/ui/base/Event.js +1 -1
  55. package/src/sap/ui/base/EventProvider.js +1 -1
  56. package/src/sap/ui/base/Interface.js +1 -1
  57. package/src/sap/ui/base/ManagedObject.js +2 -2
  58. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  59. package/src/sap/ui/base/Metadata.js +1 -1
  60. package/src/sap/ui/base/Object.js +1 -1
  61. package/src/sap/ui/base/ObjectPool.js +1 -1
  62. package/src/sap/ui/core/.library +50 -50
  63. package/src/sap/ui/core/BusyIndicator.js +1 -1
  64. package/src/sap/ui/core/BusyIndicatorUtils.js +22 -8
  65. package/src/sap/ui/core/Component.js +21 -4
  66. package/src/sap/ui/core/ComponentContainer.js +5 -1
  67. package/src/sap/ui/core/ComponentMetadata.js +1 -1
  68. package/src/sap/ui/core/ComponentSupport.js +1 -1
  69. package/src/sap/ui/core/Configuration.js +2 -15
  70. package/src/sap/ui/core/Control.js +20 -2
  71. package/src/sap/ui/core/Core.js +311 -413
  72. package/src/sap/ui/core/CustomData.js +1 -1
  73. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  74. package/src/sap/ui/core/Element.js +1 -1
  75. package/src/sap/ui/core/ElementMetadata.js +1 -1
  76. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  77. package/src/sap/ui/core/EventBus.js +1 -1
  78. package/src/sap/ui/core/FocusHandler.js +12 -14
  79. package/src/sap/ui/core/Fragment.js +5 -2
  80. package/src/sap/ui/core/HTML.js +1 -1
  81. package/src/sap/ui/core/History.js +1 -1
  82. package/src/sap/ui/core/Icon.js +1 -1
  83. package/src/sap/ui/core/IconPool.js +7 -1
  84. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  85. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  86. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  87. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  88. package/src/sap/ui/core/InvisibleText.js +1 -1
  89. package/src/sap/ui/core/Item.js +1 -1
  90. package/src/sap/ui/core/LabelEnablement.js +1 -1
  91. package/src/sap/ui/core/LayoutData.js +1 -1
  92. package/src/sap/ui/core/ListItem.js +1 -1
  93. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  94. package/src/sap/ui/core/Locale.js +1 -1
  95. package/src/sap/ui/core/LocaleData.js +1 -1
  96. package/src/sap/ui/core/Manifest.js +16 -83
  97. package/src/sap/ui/core/Message.js +1 -1
  98. package/src/sap/ui/core/Popup.js +14 -4
  99. package/src/sap/ui/core/RenderManager.js +111 -109
  100. package/src/sap/ui/core/Renderer.js +1 -1
  101. package/src/sap/ui/core/ResizeHandler.js +1 -1
  102. package/src/sap/ui/core/ScrollBar.js +1 -1
  103. package/src/sap/ui/core/SeparatorItem.js +1 -1
  104. package/src/sap/ui/core/ShortcutHintsMixin.js +20 -0
  105. package/src/sap/ui/core/Title.js +1 -1
  106. package/src/sap/ui/core/TooltipBase.js +1 -1
  107. package/src/sap/ui/core/UIArea.js +4 -2
  108. package/src/sap/ui/core/UIComponent.js +1 -1
  109. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  110. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  111. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  112. package/src/sap/ui/core/XMLComposite.js +1 -1
  113. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  114. package/src/sap/ui/core/_IconRegistry.js +11 -7
  115. package/src/sap/ui/core/_UrlResolver.js +139 -0
  116. package/src/sap/ui/core/date/CalendarUtils.js +87 -0
  117. package/src/sap/ui/core/date/CalendarWeekNumbering.js +73 -0
  118. package/src/sap/ui/core/date/UniversalDate.js +198 -74
  119. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  120. package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
  121. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  122. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  123. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  124. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  125. package/src/sap/ui/core/format/DateFormat.js +187 -57
  126. package/src/sap/ui/core/format/NumberFormat.js +64 -23
  127. package/src/sap/ui/core/format/TimezoneUtil.js +3 -1
  128. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  129. package/src/sap/ui/core/library.js +19 -10
  130. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  131. package/src/sap/ui/core/message/Message.js +5 -3
  132. package/src/sap/ui/core/message/MessageManager.js +1 -1
  133. package/src/sap/ui/core/message/MessageParser.js +1 -1
  134. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  135. package/src/sap/ui/core/messagebundle_fr.properties +1 -1
  136. package/src/sap/ui/core/mvc/HTMLView.js +10 -2
  137. package/src/sap/ui/core/mvc/JSONView.js +1 -1
  138. package/src/sap/ui/core/mvc/JSView.js +1 -1
  139. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  140. package/src/sap/ui/core/mvc/View.js +1 -1
  141. package/src/sap/ui/core/mvc/XMLView.js +1 -1
  142. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  143. package/src/sap/ui/core/plugin/LessSupport.js +21 -20
  144. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  145. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  146. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  147. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  148. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  149. package/src/sap/ui/core/service/Service.js +1 -1
  150. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  151. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  152. package/src/sap/ui/core/support/Plugin.js +1 -1
  153. package/src/sap/ui/core/support/Support.js +1 -1
  154. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  155. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  156. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  157. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  158. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  159. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  160. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  161. package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
  162. package/src/sap/ui/core/themes/base/LocalBusyIndicator.less +3 -3
  163. package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
  164. package/src/sap/ui/core/theming/Parameters.js +31 -12
  165. package/src/sap/ui/core/theming/ThemeHelper.js +56 -1
  166. package/src/sap/ui/core/theming/ThemeManager.js +817 -0
  167. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  168. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  169. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  170. package/src/sap/ui/core/tmpl/Template.js +1 -1
  171. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  172. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  173. package/src/sap/ui/core/util/Export.js +1 -1
  174. package/src/sap/ui/core/util/ExportCell.js +1 -1
  175. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  176. package/src/sap/ui/core/util/ExportRow.js +1 -1
  177. package/src/sap/ui/core/util/ExportType.js +1 -1
  178. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  179. package/src/sap/ui/core/util/File.js +1 -1
  180. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  181. package/src/sap/ui/core/util/MockServer.js +1 -1
  182. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  183. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +2 -1
  184. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  185. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  186. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  187. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  188. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  189. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  190. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  191. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  192. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  193. package/src/sap/ui/debug/ControlTree.js +1 -1
  194. package/src/sap/ui/debug/DebugEnv.js +1 -1
  195. package/src/sap/ui/debug/PropertyList.js +1 -1
  196. package/src/sap/ui/dom/getFirstEditableInput.js +25 -6
  197. package/src/sap/ui/dom/includeStylesheet.js +2 -2
  198. package/src/sap/ui/model/ClientListBinding.js +11 -4
  199. package/src/sap/ui/model/ClientModel.js +1 -1
  200. package/src/sap/ui/model/ClientTreeBinding.js +60 -5
  201. package/src/sap/ui/model/CompositeDataState.js +1 -1
  202. package/src/sap/ui/model/CompositeType.js +1 -1
  203. package/src/sap/ui/model/DataState.js +1 -1
  204. package/src/sap/ui/model/Filter.js +6 -6
  205. package/src/sap/ui/model/MetaModel.js +1 -1
  206. package/src/sap/ui/model/Model.js +1 -1
  207. package/src/sap/ui/model/SelectionModel.js +1 -1
  208. package/src/sap/ui/model/SimpleType.js +1 -1
  209. package/src/sap/ui/model/Sorter.js +6 -4
  210. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  211. package/src/sap/ui/model/TreeBinding.js +18 -0
  212. package/src/sap/ui/model/TreeBindingCompatibilityAdapter.js +1 -1
  213. package/src/sap/ui/model/Type.js +1 -1
  214. package/src/sap/ui/model/analytics/AnalyticalTreeBindingAdapter.js +28 -34
  215. package/src/sap/ui/model/controlhelper/TreeBindingProxy.js +590 -0
  216. package/src/sap/ui/model/json/JSONModel.js +1 -1
  217. package/src/sap/ui/model/message/MessageModel.js +1 -1
  218. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  219. package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
  220. package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
  221. package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
  222. package/src/sap/ui/model/odata/ODataModel.js +1 -1
  223. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  224. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  225. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  226. package/src/sap/ui/model/odata/type/Date.js +1 -1
  227. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  228. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  229. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  230. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  231. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  232. package/src/sap/ui/model/odata/type/Double.js +1 -1
  233. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  234. package/src/sap/ui/model/odata/type/Int.js +1 -1
  235. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  236. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  237. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  238. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  239. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  240. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  241. package/src/sap/ui/model/odata/type/Single.js +1 -1
  242. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  243. package/src/sap/ui/model/odata/type/String.js +1 -1
  244. package/src/sap/ui/model/odata/type/Time.js +1 -1
  245. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  246. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  247. package/src/sap/ui/model/odata/v2/BatchMode.js +2 -2
  248. package/src/sap/ui/model/odata/v2/Context.js +169 -4
  249. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  250. package/src/sap/ui/model/odata/v2/ODataListBinding.js +39 -17
  251. package/src/sap/ui/model/odata/v2/ODataModel.js +219 -82
  252. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
  253. package/src/sap/ui/model/odata/v4/Context.js +35 -22
  254. package/src/sap/ui/model/odata/v4/ODataBinding.js +28 -22
  255. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +6 -6
  256. package/src/sap/ui/model/odata/v4/ODataListBinding.js +111 -89
  257. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +5 -4
  258. package/src/sap/ui/model/odata/v4/ODataModel.js +84 -46
  259. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +19 -20
  260. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +3 -3
  261. package/src/sap/ui/model/odata/v4/_AnnotationHelperExpression.js +1 -1
  262. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +12 -5
  263. package/src/sap/ui/model/odata/v4/lib/_Cache.js +130 -64
  264. package/src/sap/ui/model/odata/v4/lib/_Helper.js +1 -1
  265. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +56 -15
  266. package/src/sap/ui/model/resource/ResourceModel.js +1 -1
  267. package/src/sap/ui/model/type/Boolean.js +1 -1
  268. package/src/sap/ui/model/type/Currency.js +1 -1
  269. package/src/sap/ui/model/type/Date.js +1 -1
  270. package/src/sap/ui/model/type/DateInterval.js +1 -1
  271. package/src/sap/ui/model/type/DateTime.js +1 -1
  272. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  273. package/src/sap/ui/model/type/FileSize.js +1 -1
  274. package/src/sap/ui/model/type/Float.js +1 -1
  275. package/src/sap/ui/model/type/Integer.js +1 -1
  276. package/src/sap/ui/model/type/String.js +1 -1
  277. package/src/sap/ui/model/type/Time.js +1 -1
  278. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  279. package/src/sap/ui/model/type/Unit.js +1 -1
  280. package/src/sap/ui/model/xml/XMLModel.js +1 -1
  281. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  282. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  283. package/src/sap/ui/test/TestUtils.js +20 -0
  284. package/src/sap/ui/test/generic/TestBase.js +1 -1
  285. package/src/sap/ui/thirdparty/mobify-carousel.js +0 -4
  286. package/src/sap/ui/util/Storage.js +1 -1
  287. package/src/sap/ui/core/ThemeCheck.js +0 -389
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * in the documentation.
25
25
  *
26
26
  * @extends sap.ui.core.Element
27
- * @version 1.107.0
27
+ * @version 1.108.0
28
28
  *
29
29
  * @public
30
30
  * @alias sap.ui.core.CustomData
@@ -40,7 +40,7 @@ sap.ui.define([
40
40
  * @class Static class for enabling declarative UI support.
41
41
  *
42
42
  * @author Peter Muessig, Tino Butz
43
- * @version 1.107.0
43
+ * @version 1.108.0
44
44
  * @since 1.7.0
45
45
  * @public
46
46
  * @alias sap.ui.core.DeclarativeSupport
@@ -128,7 +128,7 @@ sap.ui.define([
128
128
  *
129
129
  * @extends sap.ui.base.ManagedObject
130
130
  * @author SAP SE
131
- * @version 1.107.0
131
+ * @version 1.108.0
132
132
  * @public
133
133
  * @alias sap.ui.core.Element
134
134
  */
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  *
24
24
  * @class
25
25
  * @author SAP SE
26
- * @version 1.107.0
26
+ * @version 1.108.0
27
27
  * @since 0.8.6
28
28
  * @alias sap.ui.core.ElementMetadata
29
29
  * @extends sap.ui.base.ManagedObjectMetadata
@@ -43,7 +43,7 @@ sap.ui.define([
43
43
  *
44
44
  * @param {boolean} [bDefault=true] Value that should be used as default value for the enhancement of the control.
45
45
  * @param {boolean} [bLegacy=false] Whether the introduced property should use the old name <code>Enabled</code>.
46
- * @version 1.107.0
46
+ * @version 1.108.0
47
47
  * @public
48
48
  * @class
49
49
  * @alias sap.ui.core.EnabledPropagator
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  *
31
31
  * @extends sap.ui.base.Object
32
32
  * @author SAP SE
33
- * @version 1.107.0
33
+ * @version 1.108.0
34
34
  * @public
35
35
  * @since 1.8.0
36
36
  * @alias sap.ui.core.EventBus
@@ -15,9 +15,9 @@ sap.ui.define([
15
15
  function(EventProvider, BaseObject, Log, jQuery, _ready) {
16
16
  "use strict";
17
17
 
18
- // Element, Core module references, lazily probed when needed
18
+ // Element, UIArea module references, lazily probed when needed
19
19
  var Element;
20
- var Core;
20
+ var UIArea;
21
21
 
22
22
  var oFocusInfoEventProvider = new EventProvider();
23
23
  var FOCUS_INFO_EVENT = "focusInfo";
@@ -410,24 +410,22 @@ sap.ui.define([
410
410
  var oRelatedControl = getControlById(sRelatedControlId);
411
411
  oEvent.relatedControlId = oRelatedControl ? oRelatedControl.getId() : null;
412
412
  oEvent.relatedControlFocusInfo = oRelatedControl ? oRelatedControl.getFocusInfo() : null;
413
- // TODO: Recheck how focus handling works together with the Popup and different UIAreas
414
- // soft dependency to Core to prevent cyclic dependencies
415
- Core = Core || sap.ui.require("sap/ui/core/Core");
416
- if (Core) {
413
+ // TODO: Re-check how focus handling works together with the Popup and different UIAreas
414
+ // soft dependency to UIArea to prevent cyclic dependencies (FocusHandler -> UIArea -> FocusHandler)
415
+ UIArea = UIArea || sap.ui.require("sap/ui/core/UIArea");
416
+ if (UIArea) {
417
417
  var oControlUIArea = oControl.getUIArea();
418
- var oUiArea = null;
418
+ var oUIArea = null;
419
419
  if (oControlUIArea) {
420
- oUiArea = Core.getUIArea(oControlUIArea.getId());
420
+ oUIArea = UIArea.registry.get(oControlUIArea.getId());
421
421
  } else {
422
- var oPopupUIAreaDomRef = Core.getStaticAreaRef();
422
+ var oPopupUIAreaDomRef = UIArea.getStaticAreaRef();
423
423
  if (oPopupUIAreaDomRef.contains(oEvent.target)) {
424
- oUiArea = Core.getUIArea(oPopupUIAreaDomRef.id);
424
+ oUIArea = UIArea.registry.get(oPopupUIAreaDomRef.id);
425
425
  }
426
426
  }
427
- if (oUiArea) {
428
- // if rendering moves to the UIArea and the UIArea will have a ManagedObjectRegistry
429
- // the _handleElement does not need to be "public" on the UIArea's interface
430
- oUiArea._handleEvent(oEvent);
427
+ if (oUIArea) {
428
+ oUIArea._handleEvent(oEvent);
431
429
  }
432
430
  }
433
431
  }
@@ -60,7 +60,7 @@ function(
60
60
  * @class
61
61
  * @extends sap.ui.base.ManagedObject
62
62
  * @author SAP SE
63
- * @version 1.107.0
63
+ * @version 1.108.0
64
64
  * @public
65
65
  * @alias sap.ui.core.Fragment
66
66
  */
@@ -906,7 +906,10 @@ function(
906
906
 
907
907
 
908
908
  // ### HTML Fragments ###
909
-
909
+ /**
910
+ * @deprecated As of version 1.108, together with the HTMLView. If you need declarative fragments,
911
+ * use XML fragments instead.
912
+ */
910
913
  (function() {
911
914
 
912
915
  /**
@@ -44,7 +44,7 @@ sap.ui.define([
44
44
  * @extends sap.ui.core.Control
45
45
  *
46
46
  * @author SAP SE
47
- * @version 1.107.0
47
+ * @version 1.108.0
48
48
  *
49
49
  * @public
50
50
  * @alias sap.ui.core.HTML
@@ -22,7 +22,7 @@ sap.ui.define(['sap/ui/base/Object', "sap/ui/util/Storage"],
22
22
  *
23
23
  * @extends sap.ui.base.Object
24
24
  * @author SAP SE
25
- * @version 1.107.0
25
+ * @version 1.108.0
26
26
  * @alias sap.ui.core.History
27
27
  * @protected
28
28
  */
@@ -73,7 +73,7 @@ sap.ui.define([
73
73
  * @implements sap.ui.core.IFormContent
74
74
  *
75
75
  * @author SAP SE
76
- * @version 1.107.0
76
+ * @version 1.108.0
77
77
  *
78
78
  * @public
79
79
  * @since 1.11.1
@@ -257,13 +257,16 @@ sap.ui.define([
257
257
 
258
258
  var mIconForMimeType = {
259
259
  "application/msword": "sap-icon://doc-attachment",
260
+ "application/vnd.google-apps.document": "sap-icon://doc-attachment",
260
261
  "application/vnd.openxmlformats-officedocument.wordprocessingml.document": "sap-icon://doc-attachment",
261
262
  "application/rtf": "sap-icon://doc-attachment",
262
263
  "application/pdf": "sap-icon://pdf-attachment",
264
+ "application/vnd.google-apps.spreadsheet": "sap-icon://excel-attachment",
263
265
  "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": "sap-icon://excel-attachment",
264
266
  "application/vnd.ms-excel": "sap-icon://excel-attachment",
265
267
  "application/msexcel": "sap-icon://excel-attachment",
266
268
  "application/vnd.ms-powerpoint": "sap-icon://ppt-attachment",
269
+ "application/vnd.google-apps.presentation": "sap-icon://ppt-attachment",
267
270
  "application/vnd.openxmlformats-officedocument.presentationml.presentation": "sap-icon://ppt-attachment",
268
271
  "application/vnd.openxmlformats-officedocument.presentationml.slideshow": "sap-icon://ppt-attachment",
269
272
  "application/mspowerpoint": "sap-icon://ppt-attachment",
@@ -275,10 +278,12 @@ sap.ui.define([
275
278
  "application/x-rar-compressed": "sap-icon://attachment-zip-file",
276
279
  "application/x-tar": "sap-icon://attachment-zip-file",
277
280
  "application/zip": "sap-icon://attachment-zip-file",
281
+ "audio/mpeg": "sap-icon://attachment-audio",
278
282
  "audio/voxware": "sap-icon://attachment-audio",
279
283
  "audio/x-aiff": "sap-icon://attachment-audio",
280
284
  "audio/x-midi": "sap-icon://attachment-audio",
281
285
  "audio/x-mpeg": "sap-icon://attachment-audio",
286
+ "audio/x-m4a": "sap-icon://attachment-audio",
282
287
  "audio/x-pn-realaudio": "sap-icon://attachment-audio",
283
288
  "audio/x-pn-realaudio-plugin": "sap-icon://attachment-audio",
284
289
  "audio/x-qt-stream": "sap-icon://attachment-audio",
@@ -291,13 +296,14 @@ sap.ui.define([
291
296
  "text/plain": "sap-icon://attachment-text-file",
292
297
  "text/comma-separated-values": "sap-icon://attachment-text-file",
293
298
  "text/css": "sap-icon://attachment-text-file",
294
- "text/html": "sap-icon://attachment-text-file",
295
299
  "text/javascript": "sap-icon://attachment-text-file",
296
300
  "text/richtext": "sap-icon://attachment-text-file",
297
301
  "text/rtf": "sap-icon://attachment-text-file",
298
302
  "text/tab-separated-values": "sap-icon://attachment-text-file",
299
303
  "text/xml": "sap-icon://attachment-text-file",
304
+ "text/html": "sap-icon://attachment-html",
300
305
  "video/mpeg": "sap-icon://attachment-video",
306
+ "video/mp4": "sap-icon://attachment-video",
301
307
  "video/quicktime": "sap-icon://attachment-video",
302
308
  "video/x-msvideo": "sap-icon://attachment-video",
303
309
  "application/x-shockwave-flash": "sap-icon://attachment-video"
@@ -16,7 +16,7 @@ sap.ui.define(['./library'],
16
16
  * Helper functionality for indication color support.
17
17
  *
18
18
  * @author SAP SE
19
- * @version 1.107.0
19
+ * @version 1.108.0
20
20
  * @public
21
21
  * @namespace sap.ui.core.IndicationColorSupport
22
22
  * @since 1.66
@@ -23,7 +23,7 @@ sap.ui.define(['../base/Object', './EventBus', "sap/base/assert"],
23
23
  *
24
24
  * @extends sap.ui.base.Object
25
25
  * @author SAP SE
26
- * @version 1.107.0
26
+ * @version 1.108.0
27
27
  * @public
28
28
  * @since 1.11.0
29
29
  * @alias sap.ui.core.IntervalTrigger
@@ -32,7 +32,7 @@ function (coreLibrary, ManagedObject, Log) {
32
32
  * @extends sap.ui.base.ManagedObject
33
33
  *
34
34
  * @author SAP SE
35
- * @version 1.107.0
35
+ * @version 1.108.0
36
36
  * @hideconstructor
37
37
  * @public
38
38
  * @since 1.78
@@ -12,7 +12,7 @@ sap.ui.define([], function() {
12
12
  * Provides the default renderer for the controls that have set their <code>visible</code> property to <code>false</code>.
13
13
  *
14
14
  * @author SAP SE
15
- * @version 1.107.0
15
+ * @version 1.108.0
16
16
  * @alias module:sap/ui/core/InvisibleRenderer
17
17
  * @since 1.66.0
18
18
  * @protected
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @extends sap.ui.core.Control
31
31
  *
32
32
  * @author SAP SE
33
- * @version 1.107.0
33
+ * @version 1.108.0
34
34
  *
35
35
  * @public
36
36
  * @since 1.27.0
@@ -24,7 +24,7 @@ sap.ui.define(['./Element', './library'],
24
24
  * @extends sap.ui.core.Element
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.107.0
27
+ * @version 1.108.0
28
28
  *
29
29
  * @public
30
30
  * @alias sap.ui.core.Item
@@ -136,7 +136,7 @@ sap.ui.define(['../base/ManagedObject', "sap/base/assert"],
136
136
  * @see sap.ui.core.LabelEnablement#enrich
137
137
  *
138
138
  * @author SAP SE
139
- * @version 1.107.0
139
+ * @version 1.108.0
140
140
  * @protected
141
141
  * @alias sap.ui.core.LabelEnablement
142
142
  * @namespace
@@ -23,7 +23,7 @@ sap.ui.define(['./Element', "sap/ui/thirdparty/jquery", './library'],
23
23
  * @extends sap.ui.core.Element
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.107.0
26
+ * @version 1.108.0
27
27
  *
28
28
  * @public
29
29
  * @alias sap.ui.core.LayoutData
@@ -23,7 +23,7 @@ sap.ui.define(['./Item', './library'],
23
23
  * @extends sap.ui.core.Item
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.107.0
26
+ * @version 1.108.0
27
27
  *
28
28
  * @public
29
29
  * @alias sap.ui.core.ListItem
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @extends sap.ui.core.Control
33
33
  *
34
34
  * @author SAP SE
35
- * @version 1.107.0
35
+ * @version 1.108.0
36
36
  *
37
37
  * @public
38
38
  * @since 1.11.0
@@ -38,7 +38,7 @@ sap.ui.define(['sap/ui/base/Object', 'sap/base/assert', './CalendarType'],
38
38
  *
39
39
  * @extends sap.ui.base.Object
40
40
  * @author SAP SE
41
- * @version 1.107.0
41
+ * @version 1.108.0
42
42
  * @public
43
43
  * @alias sap.ui.core.Locale
44
44
  */
@@ -18,7 +18,7 @@ sap.ui.define(['sap/base/util/extend', 'sap/ui/base/Object', './CalendarType', '
18
18
  *
19
19
  * @extends sap.ui.base.Object
20
20
  * @author SAP SE
21
- * @version 1.107.0
21
+ * @version 1.108.0
22
22
  * @public
23
23
  * @alias sap.ui.core.LocaleData
24
24
  */
@@ -17,7 +17,8 @@ sap.ui.define([
17
17
  'sap/base/util/merge',
18
18
  'sap/base/util/isPlainObject',
19
19
  'sap/base/util/LoaderExtensions',
20
- 'sap/ui/core/Configuration'
20
+ 'sap/ui/core/Configuration',
21
+ './_UrlResolver'
21
22
  ],
22
23
  function(
23
24
  BaseObject,
@@ -31,7 +32,8 @@ sap.ui.define([
31
32
  merge,
32
33
  isPlainObject,
33
34
  LoaderExtensions,
34
- Configuration
35
+ Configuration,
36
+ _UrlResolver
35
37
  ) {
36
38
  "use strict";
37
39
 
@@ -139,7 +141,7 @@ sap.ui.define([
139
141
  * @class The Manifest class.
140
142
  * @extends sap.ui.base.Object
141
143
  * @author SAP SE
142
- * @version 1.107.0
144
+ * @version 1.108.0
143
145
  * @alias sap.ui.core.Manifest
144
146
  * @since 1.33.0
145
147
  */
@@ -275,8 +277,13 @@ sap.ui.define([
275
277
  vI18n = JSON.parse(JSON.stringify(vI18n));
276
278
  sBaseBundleUrlRelativeTo = vI18n.bundleUrlRelativeTo || sBaseBundleUrlRelativeTo;
277
279
 
278
- // resolve bundleUrls of terminologies
279
- this._processResourceConfiguration(vI18n, sBaseBundleUrlRelativeTo);
280
+ // resolve bundleUrls including terminology bundles
281
+ _UrlResolver._processResourceConfiguration(vI18n, {
282
+ alreadyResolvedOnRoot: false,
283
+ baseURI: this._oBaseUri,
284
+ manifestBaseURI: this._oManifestBaseUri,
285
+ relativeTo: sBaseBundleUrlRelativeTo
286
+ });
280
287
 
281
288
  // merge activeTerminologies and settings object into mParams
282
289
  var mParams = Object.assign({
@@ -600,7 +607,7 @@ sap.ui.define([
600
607
  Log.error("Resource root for \"" + sResourceRoot + "\" is absolute and therefore won't be registered! \"" + sResourceRootPath + "\"", this.getComponentName());
601
608
  continue;
602
609
  }
603
- sResourceRootPath = this._resolveUri(oResourceRootURI).toString();
610
+ sResourceRootPath = this.resolveUri(sResourceRootPath);
604
611
  var mPaths = {};
605
612
  mPaths[sResourceRoot.replace(/\./g, "/")] = sResourceRootPath;
606
613
  sap.ui.loader.config({paths:mPaths});
@@ -635,23 +642,9 @@ sap.ui.define([
635
642
  * @since 1.60.1
636
643
  */
637
644
  resolveUri: function(sUri, sRelativeTo) {
638
- var oUri = this._resolveUri(new URI(sUri), sRelativeTo);
639
- return oUri && oUri.toString();
640
- },
641
-
642
-
643
- /**
644
- * Resolves the given URI relative to the Component by default
645
- * or optional relative to the manifest when passing 'manifest'
646
- * as second parameter.
647
- *
648
- * @param {URI} oUri URI to resolve
649
- * @param {string} [sRelativeTo] defines to which base URI the given URI will be resolved to; one of ‘component' (default) or 'manifest'
650
- * @return {URI} resolved URI
651
- * @private
652
- */
653
- _resolveUri: function(oUri, sRelativeTo) {
654
- return Manifest._resolveUriRelativeTo(oUri, sRelativeTo === "manifest" ? this._oManifestBaseUri : this._oBaseUri);
645
+ var oRelativeToBaseUri = sRelativeTo === "manifest" ? this._oManifestBaseUri : this._oBaseUri;
646
+ var oResultUri = _UrlResolver._resolveUri(sUri, oRelativeToBaseUri);
647
+ return oResultUri && oResultUri.toString();
655
648
  },
656
649
 
657
650
  /**
@@ -758,66 +751,6 @@ sap.ui.define([
758
751
  // Manifest Template RegExp: {{foo}}
759
752
  Manifest._rManifestTemplate = /\{\{([^\}\}]+)\}\}/g;
760
753
 
761
- /**
762
- * Resolves the given URI relative to the given base URI.
763
- *
764
- * @param {URI} oUri URI to resolve
765
- * @param {URI} oBase Base URI
766
- * @return {URI} resolved URI
767
- * @static
768
- * @private
769
- */
770
- Manifest._resolveUriRelativeTo = function(oUri, oBase) {
771
- if (oUri.is("absolute") || (oUri.path() && oUri.path()[0] === "/")) {
772
- return oUri;
773
- }
774
- var oPageBase = new URI(document.baseURI).search("");
775
- oBase = oBase.absoluteTo(oPageBase);
776
- return oUri.absoluteTo(oBase).relativeTo(oPageBase);
777
- };
778
-
779
- /**
780
- * Function that loops through the model config and resolves the bundle urls
781
- * of terminologies relative to the component or relative to the manifest
782
- *
783
- * @example
784
- * {
785
- * "oil": {
786
- * "bundleUrl": "i18n/terminologies/oil.i18n.properties"
787
- * },
788
- * "retail": {
789
- * "bundleName": "i18n.terminologies.retail.i18n.properties"
790
- * }
791
- * }
792
- *
793
- * @param {object} mSettings Map with model config settings
794
- * @param {string} sBaseBundleUrlRelativeTo BundleUrlRelativeTo info from base config
795
- * @param {boolean} [bAlreadyResolvedOnRoot] Whether the bundleUrl was already resolved (usually by the sap.ui.core.Component)
796
- * @private
797
- * @ui5-restricted sap.ui.core.Component
798
- */
799
- Manifest.prototype._processResourceConfiguration = function (mSettings, sBaseBundleUrlRelativeTo, bAlreadyResolvedOnRoot) {
800
- var that = this;
801
- Object.keys(mSettings).forEach(function(sKey) {
802
- if (sKey === "bundleUrl" && !bAlreadyResolvedOnRoot) {
803
- var sBundleUrl = mSettings[sKey];
804
- mSettings[sKey] = that.resolveUri(sBundleUrl, mSettings["bundleUrlRelativeTo"] || sBaseBundleUrlRelativeTo);
805
- }
806
- if (sKey === "terminologies") {
807
- var mTerminologies = mSettings[sKey];
808
- for (var sTerminology in mSettings[sKey]) {
809
- that._processResourceConfiguration(mTerminologies[sTerminology], sBaseBundleUrlRelativeTo);
810
- }
811
- }
812
- if (sKey === "enhanceWith") {
813
- var aEnhanceWith = mSettings[sKey];
814
- for (var i = 0; i < aEnhanceWith.length; i++) {
815
- that._processResourceConfiguration(aEnhanceWith[i], sBaseBundleUrlRelativeTo);
816
- }
817
- }
818
- });
819
- };
820
-
821
754
  /**
822
755
  * Function to load the manifest by URL
823
756
  *
@@ -26,7 +26,7 @@ sap.ui.define(['./Element', './library', "sap/base/Log", "sap/ui/core/Configurat
26
26
  * @extends sap.ui.core.Element
27
27
  *
28
28
  * @author SAP SE
29
- * @version 1.107.0
29
+ * @version 1.108.0
30
30
  *
31
31
  * @public
32
32
  * @alias sap.ui.core.Message
@@ -19,6 +19,7 @@ sap.ui.define([
19
19
  './IntervalTrigger',
20
20
  './RenderManager',
21
21
  './ResizeHandler',
22
+ './UIArea',
22
23
  './library',
23
24
  "sap/base/assert",
24
25
  "sap/base/Log",
@@ -47,6 +48,7 @@ sap.ui.define([
47
48
  IntervalTrigger,
48
49
  RenderManager,
49
50
  ResizeHandler,
51
+ UIArea,
50
52
  library,
51
53
  assert,
52
54
  Log,
@@ -114,9 +116,9 @@ sap.ui.define([
114
116
 
115
117
  var oStaticAreaRef, oControl;
116
118
  try {
117
- oStaticAreaRef = sap.ui.getCore().getStaticAreaRef();
119
+ oStaticAreaRef = UIArea.getStaticAreaRef();
118
120
  // only a facade of the static UIArea is returned that contains only the public methods
119
- oStaticUIArea = sap.ui.getCore().getUIArea(oStaticAreaRef);
121
+ oStaticUIArea = UIArea.registry.get(oStaticAreaRef.id);
120
122
  } catch (e) {
121
123
  Log.error(e);
122
124
  throw new Error("Popup cannot be opened because static UIArea cannot be determined.");
@@ -1334,8 +1336,8 @@ sap.ui.define([
1334
1336
  if (this._bContentAddedToStatic ) {
1335
1337
  //Fix for RTE in PopUp
1336
1338
  sap.ui.getCore().getEventBus().publish("sap.ui","__beforePopupClose", { domNode : this._$().get(0) });
1337
- var oStatic = sap.ui.getCore().getStaticAreaRef();
1338
- oStatic = sap.ui.getCore().getUIArea(oStatic);
1339
+ var oStatic = UIArea.getStaticAreaRef();
1340
+ oStatic = UIArea.registry.get(oStatic.id);
1339
1341
  oStatic.removeContent(oStatic.indexOfContent(this.oContent), true);
1340
1342
  } else if (this._bUIAreaPatched) { // if the getUIArea function is patched, delete it
1341
1343
  delete this.oContent.getUIArea;
@@ -2134,12 +2136,20 @@ sap.ui.define([
2134
2136
 
2135
2137
  var createDelegate = function (oElement) {
2136
2138
  return {
2139
+ /**
2140
+ * @this {sap.ui.core.Popup}
2141
+ * @private
2142
+ */
2137
2143
  onBeforeRendering: function() {
2138
2144
  var oDomRef = oElement.getDomRef();
2139
2145
  if (oDomRef && this.isOpen()) {
2140
2146
  oDomRef.removeEventListener("blur", this.fnEventHandler, true);
2141
2147
  }
2142
2148
  },
2149
+ /**
2150
+ * @this {sap.ui.core.Popup}
2151
+ * @private
2152
+ */
2143
2153
  onAfterRendering: function() {
2144
2154
  var oDomRef = oElement.getDomRef();
2145
2155
  if (oDomRef && this.isOpen()) {