@openui5/sap.ui.core 1.94.0 → 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 (417) hide show
  1. package/.eslintrc.json +15 -4
  2. package/.reuse/dep5 +12 -12
  3. package/THIRDPARTY.txt +21 -17
  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/i18n/ResourceBundle.js +6 -2
  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 +15 -11
  53. package/src/sap/ui/Global.js +13 -17
  54. package/src/sap/ui/base/DataType.js +14 -8
  55. package/src/sap/ui/base/Event.js +1 -1
  56. package/src/sap/ui/base/EventProvider.js +1 -1
  57. package/src/sap/ui/base/Interface.js +1 -1
  58. package/src/sap/ui/base/ManagedObject.js +13 -8
  59. package/src/sap/ui/base/ManagedObjectMetadata.js +2 -2
  60. package/src/sap/ui/base/Metadata.js +1 -3
  61. package/src/sap/ui/base/Object.js +1 -1
  62. package/src/sap/ui/base/ObjectPool.js +1 -1
  63. package/src/sap/ui/core/.library +6 -32
  64. package/src/sap/ui/core/AppCacheBuster.js +8 -8
  65. package/src/sap/ui/core/BusyIndicator.js +1 -1
  66. package/src/sap/ui/core/Component.js +303 -135
  67. package/src/sap/ui/core/ComponentContainer.js +11 -7
  68. package/src/sap/ui/core/ComponentMetadata.js +1 -1
  69. package/src/sap/ui/core/ComponentSupport.js +1 -1
  70. package/src/sap/ui/core/Configuration.js +67 -31
  71. package/src/sap/ui/core/Control.js +2 -2
  72. package/src/sap/ui/core/Core.js +79 -15
  73. package/src/sap/ui/core/CustomData.js +1 -1
  74. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  75. package/src/sap/ui/core/Element.js +2 -6
  76. package/src/sap/ui/core/ElementMetadata.js +1 -1
  77. package/src/sap/ui/core/EnabledPropagator.js +1 -1
  78. package/src/sap/ui/core/EventBus.js +1 -1
  79. package/src/sap/ui/core/ExtensionPoint.js +6 -13
  80. package/src/sap/ui/core/Fragment.js +30 -32
  81. package/src/sap/ui/core/HTML.js +3 -3
  82. package/src/sap/ui/core/History.js +1 -1
  83. package/src/sap/ui/core/Icon.js +7 -8
  84. package/src/sap/ui/core/IconPool.js +26 -1097
  85. package/src/sap/ui/core/IconRenderer.js +6 -6
  86. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  87. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  88. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  89. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  90. package/src/sap/ui/core/InvisibleText.js +1 -1
  91. package/src/sap/ui/core/Item.js +1 -1
  92. package/src/sap/ui/core/LabelEnablement.js +1 -1
  93. package/src/sap/ui/core/LayoutData.js +1 -1
  94. package/src/sap/ui/core/ListItem.js +1 -1
  95. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  96. package/src/sap/ui/core/Locale.js +26 -4
  97. package/src/sap/ui/core/LocaleData.js +3 -3
  98. package/src/sap/ui/core/Manifest.js +2 -60
  99. package/src/sap/ui/core/Message.js +1 -1
  100. package/src/sap/ui/core/Patcher.js +27 -3
  101. package/src/sap/ui/core/Placeholder.js +4 -4
  102. package/src/sap/ui/core/RenderManager.js +38 -8
  103. package/src/sap/ui/core/Renderer.js +13 -3
  104. package/src/sap/ui/core/ResizeHandler.js +1 -1
  105. package/src/sap/ui/core/ScrollBar.js +4 -3
  106. package/src/sap/ui/core/SeparatorItem.js +1 -1
  107. package/src/sap/ui/core/ShortcutHintsMixin.js +14 -7
  108. package/src/sap/ui/core/ThemeCheck.js +2 -2
  109. package/src/sap/ui/core/Title.js +1 -1
  110. package/src/sap/ui/core/TooltipBase.js +1 -1
  111. package/src/sap/ui/core/UIArea.js +3 -3
  112. package/src/sap/ui/core/UIComponent.js +19 -11
  113. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  114. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  115. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  116. package/src/sap/ui/core/XMLComposite.js +2 -2
  117. package/src/sap/ui/core/XMLCompositeMetadata.js +2 -2
  118. package/src/sap/ui/core/XMLTemplateProcessor.js +132 -43
  119. package/src/sap/ui/core/_IconRegistry.js +1148 -0
  120. package/src/sap/ui/core/cache/LRUPersistentCache.js +4 -2
  121. package/src/sap/ui/core/date/UniversalDateUtils.js +33 -0
  122. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  123. package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
  124. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  125. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  126. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  127. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  128. package/src/sap/ui/core/format/NumberFormat.js +16 -1
  129. package/src/sap/ui/core/hyphenation/Hyphenation.js +61 -80
  130. package/src/sap/ui/core/library.js +5 -5
  131. package/src/sap/ui/core/message/ControlMessageProcessor.js +5 -5
  132. package/src/sap/ui/core/message/Message.js +1 -1
  133. package/src/sap/ui/core/message/MessageManager.js +13 -15
  134. package/src/sap/ui/core/message/MessageParser.js +1 -1
  135. package/src/sap/ui/core/message/MessageProcessor.js +22 -12
  136. package/src/sap/ui/core/messagebundle_de.properties +1 -1
  137. package/src/sap/ui/core/messagebundle_fr.properties +8 -8
  138. package/src/sap/ui/core/messagebundle_it.properties +1 -1
  139. package/src/sap/ui/core/messagebundle_pl.properties +1 -1
  140. package/src/sap/ui/core/messagebundle_ru.properties +21 -21
  141. package/src/sap/ui/core/messagebundle_th.properties +2 -2
  142. package/src/sap/ui/core/mvc/Controller.js +5 -5
  143. package/src/sap/ui/core/mvc/ControllerExtensionProvider.js +30 -32
  144. package/src/sap/ui/core/mvc/ControllerMetadata.js +18 -18
  145. package/src/sap/ui/core/mvc/HTMLView.js +2 -2
  146. package/src/sap/ui/core/mvc/JSONView.js +2 -2
  147. package/src/sap/ui/core/mvc/JSView.js +2 -2
  148. package/src/sap/ui/core/mvc/TemplateView.js +2 -2
  149. package/src/sap/ui/core/mvc/View.js +58 -85
  150. package/src/sap/ui/core/mvc/XMLView.js +2 -2
  151. package/src/sap/ui/core/mvc/XMLViewRenderer.js +17 -20
  152. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  153. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  154. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  155. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  156. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  157. package/src/sap/ui/core/routing/Route.js +10 -1
  158. package/src/sap/ui/core/routing/Router.js +16 -6
  159. package/src/sap/ui/core/routing/Targets.js +26 -0
  160. package/src/sap/ui/core/routing/async/Route.js +6 -3
  161. package/src/sap/ui/core/routing/async/Target.js +28 -4
  162. package/src/sap/ui/core/routing/sync/Target.js +15 -0
  163. package/src/sap/ui/core/rules/Misc.support.js +51 -1
  164. package/src/sap/ui/core/rules/Rendering.support.js +1 -4
  165. package/src/sap/ui/core/rules/View.support.js +14 -46
  166. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  167. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  168. package/src/sap/ui/core/service/Service.js +1 -1
  169. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  170. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  171. package/src/sap/ui/core/support/Plugin.js +2 -2
  172. package/src/sap/ui/core/support/RuleEngineOpaExtension.js +0 -1
  173. package/src/sap/ui/core/support/Support.js +1 -1
  174. package/src/sap/ui/core/support/controls/TreeViewer.js +1 -1
  175. package/src/sap/ui/core/support/plugins/ControlTree.js +37 -43
  176. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  177. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  178. package/src/sap/ui/core/support/plugins/Performance.js +1 -2
  179. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  180. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  181. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  182. package/src/sap/ui/core/support/plugins/ViewInfo.js +2 -2
  183. package/src/sap/ui/core/support/support.css +2 -8
  184. package/src/sap/ui/core/support/techinfo/TechnicalInfo.fragment.xml +1 -0
  185. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +150 -73
  186. package/src/sap/ui/core/support/trace/E2eTraceLib.js +3 -3
  187. package/src/sap/ui/core/themes/base/Icon.less +9 -0
  188. package/src/sap/ui/core/themes/base/SAP-icons.css +2 -0
  189. package/src/sap/ui/core/themes/base/SAP-icons.less +10 -0
  190. package/src/sap/ui/core/themes/base/base.less +543 -390
  191. package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
  192. package/src/sap/ui/core/themes/base/global.less +38 -0
  193. package/src/sap/ui/core/themes/base/library.source.less +1 -2
  194. package/src/sap/ui/core/themes/sap_hcb/global.less +34 -0
  195. package/src/sap/ui/core/theming/Parameters.js +21 -0
  196. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  197. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  198. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  199. package/src/sap/ui/core/tmpl/Template.js +1 -1
  200. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  201. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  202. package/src/sap/ui/core/util/Export.js +1 -1
  203. package/src/sap/ui/core/util/ExportCell.js +1 -1
  204. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  205. package/src/sap/ui/core/util/ExportRow.js +1 -1
  206. package/src/sap/ui/core/util/ExportType.js +1 -1
  207. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  208. package/src/sap/ui/core/util/File.js +1 -1
  209. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  210. package/src/sap/ui/core/util/MockServer.js +2 -2
  211. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  212. package/src/sap/ui/core/util/XMLPreprocessor.js +11 -12
  213. package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +10 -12
  214. package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +6 -3
  215. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  216. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  217. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  218. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  219. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  220. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  221. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  222. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  223. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  224. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  225. package/src/sap/ui/debug/ControlTree.js +1 -1
  226. package/src/sap/ui/debug/DebugEnv.js +1 -1
  227. package/src/sap/ui/debug/Highlighter.js +8 -2
  228. package/src/sap/ui/debug/PropertyList.js +1 -1
  229. package/src/sap/ui/model/Binding.js +174 -118
  230. package/src/sap/ui/model/ChangeReason.js +1 -1
  231. package/src/sap/ui/model/ClientContextBinding.js +1 -1
  232. package/src/sap/ui/model/ClientListBinding.js +8 -3
  233. package/src/sap/ui/model/ClientModel.js +9 -8
  234. package/src/sap/ui/model/ClientPropertyBinding.js +4 -2
  235. package/src/sap/ui/model/ClientTreeBinding.js +15 -9
  236. package/src/sap/ui/model/ClientTreeBindingAdapter.js +28 -23
  237. package/src/sap/ui/model/CompositeBinding.js +98 -77
  238. package/src/sap/ui/model/CompositeDataState.js +2 -2
  239. package/src/sap/ui/model/CompositeType.js +2 -2
  240. package/src/sap/ui/model/Context.js +4 -2
  241. package/src/sap/ui/model/ContextBinding.js +6 -14
  242. package/src/sap/ui/model/DataState.js +2 -2
  243. package/src/sap/ui/model/Filter.js +255 -53
  244. package/src/sap/ui/model/FilterOperator.js +1 -1
  245. package/src/sap/ui/model/FilterProcessor.js +27 -17
  246. package/src/sap/ui/model/FilterType.js +1 -1
  247. package/src/sap/ui/model/ListBinding.js +200 -118
  248. package/src/sap/ui/model/MetaModel.js +4 -9
  249. package/src/sap/ui/model/Model.js +349 -303
  250. package/src/sap/ui/model/PropertyBinding.js +92 -58
  251. package/src/sap/ui/model/SelectionModel.js +2 -2
  252. package/src/sap/ui/model/SimpleType.js +2 -2
  253. package/src/sap/ui/model/Sorter.js +1 -1
  254. package/src/sap/ui/model/SorterProcessor.js +1 -1
  255. package/src/sap/ui/model/StaticBinding.js +1 -1
  256. package/src/sap/ui/model/TreeAutoExpandMode.js +2 -2
  257. package/src/sap/ui/model/TreeBinding.js +1 -1
  258. package/src/sap/ui/model/TreeBindingAdapter.js +249 -100
  259. package/src/sap/ui/model/TreeBindingCompatibilityAdapter.js +16 -9
  260. package/src/sap/ui/model/TreeBindingUtils.js +3 -0
  261. package/src/sap/ui/model/Type.js +1 -1
  262. package/src/sap/ui/model/analytics/AnalyticalBinding.js +20 -10
  263. package/src/sap/ui/model/analytics/AnalyticalTreeBindingAdapter.js +17 -19
  264. package/src/sap/ui/model/analytics/AnalyticalVersionInfo.js +1 -1
  265. package/src/sap/ui/model/analytics/BatchResponseCollector.js +1 -1
  266. package/src/sap/ui/model/analytics/ODataModelAdapter.js +1 -1
  267. package/src/sap/ui/model/analytics/odata4analytics.js +3 -2
  268. package/src/sap/ui/model/base/ManagedObjectModel.js +4 -0
  269. package/src/sap/ui/model/json/JSONListBinding.js +8 -5
  270. package/src/sap/ui/model/json/JSONModel.js +29 -20
  271. package/src/sap/ui/model/json/JSONPropertyBinding.js +5 -4
  272. package/src/sap/ui/model/json/JSONTreeBinding.js +1 -1
  273. package/src/sap/ui/model/message/MessageListBinding.js +6 -3
  274. package/src/sap/ui/model/message/MessageModel.js +25 -17
  275. package/src/sap/ui/model/message/MessagePropertyBinding.js +3 -3
  276. package/src/sap/ui/model/odata/AnnotationHelper.js +3 -3
  277. package/src/sap/ui/model/odata/AnnotationParser.js +5 -3
  278. package/src/sap/ui/model/odata/CountMode.js +1 -1
  279. package/src/sap/ui/model/odata/Filter.js +1 -1
  280. package/src/sap/ui/model/odata/ODataAnnotations.js +2 -2
  281. package/src/sap/ui/model/odata/ODataContextBinding.js +1 -1
  282. package/src/sap/ui/model/odata/ODataListBinding.js +62 -39
  283. package/src/sap/ui/model/odata/ODataMessageParser.js +3 -3
  284. package/src/sap/ui/model/odata/ODataMetaModel.js +6 -4
  285. package/src/sap/ui/model/odata/ODataMetadata.js +137 -86
  286. package/src/sap/ui/model/odata/ODataModel.js +443 -216
  287. package/src/sap/ui/model/odata/ODataPropertyBinding.js +8 -6
  288. package/src/sap/ui/model/odata/ODataTreeBinding.js +65 -33
  289. package/src/sap/ui/model/odata/ODataTreeBindingAdapter.js +28 -18
  290. package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +442 -262
  291. package/src/sap/ui/model/odata/ODataUtils.js +36 -19
  292. package/src/sap/ui/model/odata/OperationMode.js +1 -1
  293. package/src/sap/ui/model/odata/_AnnotationHelperBasics.js +2 -1
  294. package/src/sap/ui/model/odata/_AnnotationHelperExpression.js +11 -9
  295. package/src/sap/ui/model/odata/_ODataMetaModelUtils.js +6 -4
  296. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  297. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  298. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  299. package/src/sap/ui/model/odata/type/Date.js +1 -1
  300. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  301. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  302. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  303. package/src/sap/ui/model/odata/type/Decimal.js +5 -1
  304. package/src/sap/ui/model/odata/type/Double.js +1 -1
  305. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  306. package/src/sap/ui/model/odata/type/Int.js +1 -1
  307. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  308. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  309. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  310. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  311. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  312. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  313. package/src/sap/ui/model/odata/type/Single.js +1 -1
  314. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  315. package/src/sap/ui/model/odata/type/String.js +1 -1
  316. package/src/sap/ui/model/odata/type/Time.js +1 -1
  317. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  318. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  319. package/src/sap/ui/model/odata/type/UnitMixin.js +0 -1
  320. package/src/sap/ui/model/odata/v2/Context.js +98 -17
  321. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +2 -2
  322. package/src/sap/ui/model/odata/v2/ODataContextBinding.js +1 -1
  323. package/src/sap/ui/model/odata/v2/ODataListBinding.js +416 -132
  324. package/src/sap/ui/model/odata/v2/ODataModel.js +465 -250
  325. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +191 -109
  326. package/src/sap/ui/model/odata/v2/_CreatedContextsCache.js +179 -0
  327. package/src/sap/ui/model/odata/v4/Context.js +48 -7
  328. package/src/sap/ui/model/odata/v4/ODataBinding.js +60 -30
  329. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +177 -53
  330. package/src/sap/ui/model/odata/v4/ODataListBinding.js +304 -91
  331. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +32 -20
  332. package/src/sap/ui/model/odata/v4/ODataModel.js +29 -15
  333. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +83 -51
  334. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +13 -9
  335. package/src/sap/ui/model/odata/v4/lib/_Cache.js +115 -19
  336. package/src/sap/ui/model/odata/v4/lib/_Helper.js +35 -5
  337. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +50 -5
  338. package/src/sap/ui/model/resource/ResourceModel.js +6 -2
  339. package/src/sap/ui/model/resource/ResourcePropertyBinding.js +1 -1
  340. package/src/sap/ui/model/type/Boolean.js +2 -2
  341. package/src/sap/ui/model/type/Currency.js +2 -2
  342. package/src/sap/ui/model/type/Date.js +9 -3
  343. package/src/sap/ui/model/type/DateInterval.js +4 -2
  344. package/src/sap/ui/model/type/DateTime.js +2 -2
  345. package/src/sap/ui/model/type/DateTimeInterval.js +2 -2
  346. package/src/sap/ui/model/type/FileSize.js +4 -2
  347. package/src/sap/ui/model/type/Float.js +4 -2
  348. package/src/sap/ui/model/type/Integer.js +4 -2
  349. package/src/sap/ui/model/type/String.js +2 -2
  350. package/src/sap/ui/model/type/Time.js +2 -2
  351. package/src/sap/ui/model/type/TimeInterval.js +2 -2
  352. package/src/sap/ui/model/type/Unit.js +14 -7
  353. package/src/sap/ui/model/xml/XMLListBinding.js +15 -9
  354. package/src/sap/ui/model/xml/XMLModel.js +74 -45
  355. package/src/sap/ui/model/xml/XMLPropertyBinding.js +5 -5
  356. package/src/sap/ui/model/xml/XMLTreeBinding.js +5 -4
  357. package/src/sap/ui/performance/trace/Interaction.js +30 -15
  358. package/src/sap/ui/qunit/QUnitUtils.js +3 -2
  359. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  360. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +9 -11
  361. package/src/sap/ui/test/TestUtils.js +11 -4
  362. package/src/sap/ui/test/actions/Action.js +9 -2
  363. package/src/sap/ui/test/actions/Press.js +28 -1
  364. package/src/sap/ui/test/generic/_EnforceSemanticRendering.js +111 -0
  365. package/src/sap/ui/test/matchers/I18NText.js +29 -11
  366. package/src/sap/ui/test/opaQunit.js +5 -0
  367. package/src/sap/ui/thirdparty/IPv6.js +2 -2
  368. package/src/sap/ui/thirdparty/SecondLevelDomains.js +2 -2
  369. package/src/sap/ui/thirdparty/URI.js +14 -5
  370. package/src/sap/ui/thirdparty/URITemplate.js +2 -2
  371. package/src/sap/ui/thirdparty/hyphenopoly/Hyphenopoly.js +1196 -0
  372. package/src/sap/ui/thirdparty/hyphenopoly/Hyphenopoly_Loader.js +797 -0
  373. package/src/sap/ui/thirdparty/hyphenopoly/hyphenEngine.asm.js +108 -127
  374. package/src/sap/ui/thirdparty/hyphenopoly/hyphenEngine.wasm +0 -0
  375. package/src/sap/ui/thirdparty/hyphenopoly/patterns/bg.hpb +0 -0
  376. package/src/sap/ui/thirdparty/hyphenopoly/patterns/ca.hpb +0 -0
  377. package/src/sap/ui/thirdparty/hyphenopoly/patterns/da.hpb +0 -0
  378. package/src/sap/ui/thirdparty/hyphenopoly/patterns/de.hpb +0 -0
  379. package/src/sap/ui/thirdparty/hyphenopoly/patterns/el-monoton.hpb +0 -0
  380. package/src/sap/ui/thirdparty/hyphenopoly/patterns/en-us.hpb +0 -0
  381. package/src/sap/ui/thirdparty/hyphenopoly/patterns/es.hpb +0 -0
  382. package/src/sap/ui/thirdparty/hyphenopoly/patterns/et.hpb +0 -0
  383. package/src/sap/ui/thirdparty/hyphenopoly/patterns/fi.hpb +0 -0
  384. package/src/sap/ui/thirdparty/hyphenopoly/patterns/fr.hpb +0 -0
  385. package/src/sap/ui/thirdparty/hyphenopoly/patterns/hi.hpb +0 -0
  386. package/src/sap/ui/thirdparty/hyphenopoly/patterns/hr.hpb +0 -0
  387. package/src/sap/ui/thirdparty/hyphenopoly/patterns/hu.hpb +0 -0
  388. package/src/sap/ui/thirdparty/hyphenopoly/patterns/it.hpb +0 -0
  389. package/src/sap/ui/thirdparty/hyphenopoly/patterns/lt.hpb +0 -0
  390. package/src/sap/ui/thirdparty/hyphenopoly/patterns/nb-no.hpb +0 -0
  391. package/src/sap/ui/thirdparty/hyphenopoly/patterns/nl.hpb +0 -0
  392. package/src/sap/ui/thirdparty/hyphenopoly/patterns/pt.hpb +0 -0
  393. package/src/sap/ui/thirdparty/hyphenopoly/patterns/ru.hpb +0 -0
  394. package/src/sap/ui/thirdparty/hyphenopoly/patterns/sl.hpb +0 -0
  395. package/src/sap/ui/thirdparty/hyphenopoly/patterns/sv.hpb +0 -0
  396. package/src/sap/ui/thirdparty/hyphenopoly/patterns/th.hpb +0 -0
  397. package/src/sap/ui/thirdparty/hyphenopoly/patterns/tr.hpb +0 -0
  398. package/src/sap/ui/thirdparty/hyphenopoly/patterns/uk.hpb +0 -0
  399. package/src/sap/ui/thirdparty/jquery.js +9 -1
  400. package/src/sap/ui/thirdparty/qunit-2.js +1 -1
  401. package/src/sap/ui/thirdparty/qunit.js +1 -1
  402. package/src/sap/ui/util/Mobile.js +30 -59
  403. package/src/sap/ui/util/Storage.js +1 -1
  404. package/src/sap/ui/util/isCrossOriginURL.js +16 -6
  405. package/src/ui5loader.js +6 -6
  406. package/ui5.yaml +248 -2
  407. package/src/sap/ui/core/CustomizingConfiguration.js +0 -272
  408. package/src/sap/ui/core/support/plugins/MessageTest.js +0 -96
  409. package/src/sap/ui/thirdparty/baseuri.js +0 -1
  410. package/src/sap/ui/thirdparty/es6-object-assign.js +0 -1
  411. package/src/sap/ui/thirdparty/es6-promise.js +0 -1
  412. package/src/sap/ui/thirdparty/es6-shim-nopromise.js +0 -1
  413. package/src/sap/ui/thirdparty/es6-string-methods.js +0 -1
  414. package/src/sap/ui/thirdparty/flexie.js +0 -1
  415. package/src/sap/ui/thirdparty/hyphenopoly/hyphenopoly.bundle.js +0 -860
  416. package/src/sap/ui/thirdparty/unorm.js +0 -1
  417. package/src/sap/ui/thirdparty/unormdata.js +0 -1
@@ -887,10 +887,12 @@ sap.ui.define(["sap/base/Log", "sap/ui/performance/Measurement"],
887
887
  }
888
888
 
889
889
  /**
890
- * Logs a debug message related to certain measurement if log level is debug or higher
890
+ * Logs a debug message related to a certain {@link module:sap/ui/performance/Measurement measurement}
891
+ * if log level is debug or higher.
892
+ *
891
893
  * @param {string} sMsg the message
892
894
  * @param {string} sKey the key to log message for
893
- * @param {string} sMsrId the measurementId to use for obtaining the jquery.sap.measure measurement
895
+ * @param {string} sMsrId the measurementId to use for obtaining the measurement
894
896
  */
895
897
  function debugMsr(sMsg, sKey, sMsrId) {
896
898
  //avoid redundant string concatenation & getMeasurement call
@@ -242,6 +242,26 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
242
242
  return UniversalDateUtils.resetStartTime(oUniversalDate);
243
243
  };
244
244
 
245
+ /**
246
+ * Returns the year's end date based on a given universal date.
247
+ *
248
+ * If no date is given, today is used, represented in the session's default calendar.
249
+ * 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).
251
+ *
252
+ * @param {sap.ui.core.date.UniversalDate} [oUniversalDate=now] Base date, defaults to now
253
+ * @returns {sap.ui.core.date.UniversalDate} The year's end date for the given universal date
254
+ * @private
255
+ * @ui5-restricted sap.ui.comp
256
+ */
257
+ UniversalDateUtils.getYearEndDate = function (oUniversalDate) {
258
+ oUniversalDate = oUniversalDate ? clone(oUniversalDate) : clone(UniversalDateUtils.createNewUniversalDate());
259
+ oUniversalDate.setFullYear(oUniversalDate.getFullYear() + 1);
260
+ oUniversalDate.setMonth(0);
261
+ oUniversalDate.setDate(0);
262
+ return UniversalDateUtils.resetEndTime(oUniversalDate);
263
+ };
264
+
245
265
  /**
246
266
  * Returns a copy of the given date with the time portion set to 00:00:00.000.
247
267
  *
@@ -527,6 +547,19 @@ sap.ui.define(['sap/ui/core/date/UniversalDate', 'sap/ui/core/Locale', 'sap/ui/c
527
547
  UniversalDateUtils.getYearStartDate(oToday),
528
548
  UniversalDateUtils.resetEndTime(oToday)
529
549
  ];
550
+ },
551
+
552
+ /**
553
+ * @returns {sap.ui.core.date.UniversalDate[]} Array with today and end of the current year
554
+ * @private
555
+ * @ui5-restricted sap.ui.comp
556
+ */
557
+ dateToYear: function () {
558
+ var oToday = UniversalDateUtils.createNewUniversalDate();
559
+ return [
560
+ UniversalDateUtils.resetStartTime(oToday),
561
+ UniversalDateUtils.getYearEndDate(oToday)
562
+ ];
530
563
  }
531
564
  };
532
565
  return UniversalDateUtils;
@@ -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.94.0
85
+ * @version 1.97.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.94.0
61
+ * @version 1.97.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 */ {
@@ -38,7 +38,7 @@ sap.ui.define([
38
38
  *
39
39
  * @extends sap.ui.core.Element
40
40
  * @author SAP SE
41
- * @version 1.94.0
41
+ * @version 1.97.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.94.0
25
+ * @version 1.97.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.94.0
25
+ * @version 1.97.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.94.0
24
+ * @version 1.97.0
25
25
  *
26
26
  * @public
27
27
  * @since 1.56
@@ -1082,6 +1082,20 @@ sap.ui.define([
1082
1082
  }
1083
1083
 
1084
1084
  if (oOptions.type == mNumberType.CURRENCY) {
1085
+ // Make sure the "trailingCurrencyCode" mode is only used on currency codes:
1086
+ // The "customCurrencies" format option takes precedence over CLDR and global configuration. If the given measure isn't found
1087
+ // there, we already return an empty string in the check above (look for error log 'Currency "xy" is unknown').
1088
+ // "mKnownCurrencyCodes" either contains the keys of the "customCurrencies" format option or the accumulated currency codes
1089
+ // from CLDR and global configuration. If the given measure isn't found there and does not have the three letter ISO code format,
1090
+ // it shouldn't be formatted with the "trailingCurrencyCode" pattern.
1091
+ if (sMeasure && oOptions.trailingCurrencyCode) {
1092
+ if (!this.mKnownCurrencyCodes[sMeasure] && !/(^[A-Z]{3}$)/.test(sMeasure)) {
1093
+ oOptions.trailingCurrencyCode = false;
1094
+ // Revert to non-"sap-" prefixed (trailing-currency-code) pattern. Also see code in getCurrencyInstance()
1095
+ oOptions.pattern = this.oLocaleData.getCurrencyPattern(oOptions.currencyContext);
1096
+ }
1097
+ }
1098
+
1085
1099
  if (!oOptions.showNumber) {
1086
1100
  // if the number should not be shown, return the sMeasure part standalone, without anything number specific
1087
1101
  if (!oOptions.currencyCode) {
@@ -1336,7 +1350,8 @@ sap.ui.define([
1336
1350
 
1337
1351
  if (oShortFormat && oShortFormat.formatString && oOptions.showScale) {
1338
1352
  var sStyle;
1339
- // Currency formatting only supports short style (no long)
1353
+
1354
+ // Currency formatting has only short style (no long)
1340
1355
  if (oOptions.trailingCurrencyCode) {
1341
1356
  sStyle = "sap-short";
1342
1357
  } else {
@@ -94,70 +94,59 @@ sap.ui.define([
94
94
  var oHyphenationInstance = null;
95
95
  var fakeBody = null;
96
96
  var oHyphenateMethods = {};
97
- var oPromisesForLang = {};
98
- var aLanguagesQueue = [];
99
97
 
100
98
  /**
101
99
  * Calls Hyphenopoly to initialize a language.
102
100
  * Loads language-specific resources.
103
101
  *
104
102
  * @param {string} sLanguage What language to initialize
105
- * @param {object} oConfig What config to sent to Hyphenopoly
106
- * @param {function} resolve Callback to resolve the promise created on initialize
103
+ * @returns {Promise} Promise that resolves with the hyphenator function for that language
107
104
  * @private
108
105
  */
109
- function initializeLanguage(sLanguage, oConfig, resolve) {
106
+ function initializeLanguage(sLanguage) {
110
107
  Log.info(
111
108
  "[UI5 Hyphenation] Initializing third-party module for language " + getLanguageDisplayName(sLanguage),
112
109
  "sap.ui.core.hyphenation.Hyphenation.initialize()"
113
110
  );
114
111
 
115
- window.hyphenopoly.initializeLanguage(oConfig)
116
- .then(onLanguageInitialized.bind(this, sLanguage, resolve));
117
- }
112
+ var oHyphenopolyConfig = createHyphenopolyConfig();
113
+ oHyphenopolyConfig.require[sLanguage] = "FORCEHYPHENOPOLY"; // force loading of the engine for this language
118
114
 
119
- /**
120
- * A callback for when language initialization is ready.
121
- *
122
- * @param {string} sLanguage What language was initialized
123
- * @param {function} resolve Callback to resolve the promise created on initialize
124
- * @param {string} hyphenateMethod Is it asm or wasm
125
- * @private
126
- */
127
- function onLanguageInitialized(sLanguage, resolve, hyphenateMethod) {
128
- oHyphenateMethods[sLanguage] = hyphenateMethod;
129
- oHyphenationInstance.bIsInitialized = true;
130
- if (aLanguagesQueue.length > 0) {
131
- aLanguagesQueue.forEach(function (oElement) {
132
- initializeLanguage(oElement.sLanguage, oElement.oConfig, oElement.resolve);
115
+ return loadScript(sap.ui.require.toUrl("sap/ui/thirdparty/hyphenopoly/"), "Hyphenopoly_Loader.js")
116
+ .then(function () {
117
+ delete oHyphenopolyConfig.require[sLanguage];
118
+ return window.Hyphenopoly.hyphenators[sLanguage];
133
119
  });
134
- aLanguagesQueue = [];
135
- }
136
- oHyphenationInstance.bLoading = false;
137
- resolve(
138
- getLanguageFromPattern(sLanguage)
139
- );
140
120
  }
141
121
 
142
- /**
143
- * Transforms the given config so it can be sent to Hyphenopoly.
144
- *
145
- * @param {string} sLanguage The language for which a config is prepared.
146
- * @returns {Object} {{require: [*], hyphen: string, path: (string|*)}}
147
- * @private
148
- */
149
- function prepareConfig(sLanguage) {
150
- //Creating default configuration
151
- var oConfigurationForLanguage = {
152
- "require": [sLanguage],
153
- "hyphen": "\u00AD",
154
- "leftmin": 3, // The minimum of chars to remain on the old line.
155
- "rightmin": 3,// The minimum of chars to go on the new line
156
- "compound": "all", // factory-made -> fac-tory-[ZWSP]made
157
- "path": sap.ui.require.toUrl("sap/ui/thirdparty/hyphenopoly")
158
- };
159
-
160
- return oConfigurationForLanguage;
122
+ function createHyphenopolyConfig() {
123
+ if (!window.Hyphenopoly) {
124
+ window.Hyphenopoly = {
125
+ require: {},
126
+ setup: {
127
+ selectors: {
128
+ ".hyphenate": { // .hyphenate is the default CSS class (hence this is the default configuration for all words and langs)
129
+ hyphen: "\u00AD",
130
+ leftmin: 3,
131
+ rightmin: 3,
132
+ compound: "all" // hyphenate the parts and insert a zero-width space after the hyphen
133
+ }
134
+ },
135
+ hide: "DONT_HIDE" // prevent visiblity: hidden; of html tag while the engine is loading
136
+ },
137
+ handleEvent: {
138
+ error: function (e) {
139
+ // Hyphenopoly will try to find DOM elements and hyphenate them,
140
+ // but since we use only the hyphenators, prevent the warning
141
+ if (e.msg.match(/engine for language .* loaded, but no elements found./)) {
142
+ e.preventDefault(); //don't show error message in console
143
+ }
144
+ }
145
+ }
146
+ };
147
+ }
148
+
149
+ return window.Hyphenopoly;
161
150
  }
162
151
 
163
152
  /**
@@ -193,7 +182,6 @@ sap.ui.define([
193
182
  "visibility:hidden;",
194
183
  "-moz-hyphens:auto;",
195
184
  "-webkit-hyphens:auto;",
196
- "-ms-hyphens:auto;",
197
185
  "hyphens:auto;",
198
186
  "width:48px;",
199
187
  "font-size:12px;",
@@ -298,6 +286,8 @@ sap.ui.define([
298
286
  case "el":
299
287
  sLanguage = "el-monoton";
300
288
  break;
289
+ default:
290
+ break;
301
291
  }
302
292
 
303
293
  return sLanguage;
@@ -408,7 +398,7 @@ sap.ui.define([
408
398
  * @see {@link topic:6322164936f047de941ec522b95d7b70 Hyphenation for Text Controls}
409
399
  * @extends sap.ui.base.ManagedObject
410
400
  * @author SAP SE
411
- * @version 1.94.0
401
+ * @version 1.97.0
412
402
  * @hideconstructor
413
403
  * @public
414
404
  * @since 1.60
@@ -569,6 +559,7 @@ sap.ui.define([
569
559
  fireError("Language " + getLanguageDisplayName(sLanguage) + " is not initialized. You have to initialize it first with method 'initialize()'");
570
560
  return sText;
571
561
  }
562
+
572
563
  return oHyphenateMethods[sLanguage](sText);
573
564
  };
574
565
 
@@ -612,41 +603,33 @@ sap.ui.define([
612
603
  */
613
604
  Hyphenation.prototype.initialize = function (sLang) {
614
605
  var sLanguage = getLanguage(sLang);
615
- var oConfig = prepareConfig(sLanguage);
616
-
617
- if (oThirdPartySupportedLanguages[sLanguage]) {
618
- if (!oHyphenationInstance.bIsInitialized && !oHyphenationInstance.bLoading) {
619
-
620
- oHyphenationInstance.bLoading = true;
621
- oPromisesForLang[sLanguage] = new Promise(function (resolve, reject) {
622
- loadScript(oConfig.path, "/hyphenopoly.bundle.js")
623
- .then(initializeLanguage.bind(this, sLanguage, oConfig, resolve));
624
- });
625
606
 
626
- return oPromisesForLang[sLanguage];
607
+ if (!oThirdPartySupportedLanguages[sLanguage]) {
608
+ var sMessage = "Language " + getLanguageDisplayName(sLang) + " can not be initialized. It is either not supported by the third-party module or an error occurred";
609
+ fireError(sMessage);
610
+ return Promise.reject(sMessage);
611
+ }
627
612
 
628
- } else if (oHyphenationInstance.bLoading && !oHyphenateMethods[sLanguage] && oPromisesForLang[sLanguage]) {
629
- return oPromisesForLang[sLanguage];
613
+ if (oHyphenateMethods[sLanguage]) {
614
+ return Promise.resolve();
615
+ }
630
616
 
631
- } else if (!this.isLanguageInitialized(sLanguage)) {
632
- oPromisesForLang[sLanguage] = new Promise(function (resolve, reject) {
633
- if (!oHyphenationInstance.bIsInitialized) {
634
- aLanguagesQueue.push({sLanguage:sLanguage, oConfig:oConfig, resolve:resolve });
635
- } else {
636
- initializeLanguage(sLanguage, oConfig, resolve);
637
- }
617
+ var pInitLanguage;
638
618
 
639
- });
640
- }
641
- oHyphenationInstance.bLoading = true;
642
- return oPromisesForLang[sLanguage];
619
+ if (!this._pInitLanguage) {
620
+ pInitLanguage = this._pInitLanguage = initializeLanguage(sLanguage)
621
+ .then(function (fnHyphenator) {
622
+ oHyphenateMethods[sLanguage] = fnHyphenator;
623
+ this._pInitLanguage = null;
624
+ }.bind(this));
643
625
  } else {
644
- var sMessage = "Language " + getLanguageDisplayName(sLang) + " can not be initialized. It is either not supported by the third-party module or an error occurred";
645
- fireError(sMessage);
646
- return new Promise(function (resolve, reject) {
647
- reject(sMessage);
648
- });
626
+ // await the loading of the previous language, then initialize the current
627
+ pInitLanguage = this._pInitLanguage.then(function () {
628
+ return this.initialize(sLang);
629
+ }.bind(this));
649
630
  }
631
+
632
+ return pInitLanguage;
650
633
  };
651
634
 
652
635
  /**
@@ -660,8 +643,6 @@ sap.ui.define([
660
643
  Hyphenation.getInstance = function () {
661
644
  if (!oHyphenationInstance) {
662
645
  oHyphenationInstance = new Hyphenation();
663
- oHyphenationInstance.bIsInitialized = false;
664
- oHyphenationInstance.bLoading = false;
665
646
  }
666
647
 
667
648
  return oHyphenationInstance;
@@ -19,7 +19,7 @@ sap.ui.define([
19
19
  // delegate further initialization of this library to the Core
20
20
  sap.ui.getCore().initLibrary({
21
21
  name : "sap.ui.core",
22
- version: "1.94.0",
22
+ version: "1.97.0",
23
23
  designtime: "sap/ui/core/designtime/library.designtime",
24
24
  types: [
25
25
 
@@ -153,13 +153,13 @@ sap.ui.define([
153
153
  /**
154
154
  * The SAPUI5 Core Runtime.
155
155
  *
156
- * Contains the UI5 jQuery plugins (jQuery.sap.*), the Core and all its components,
157
- * base classes for Controls, Components and the Model View Controller classes.
156
+ * Contains the UI5 Core and all its components, base classes for Controls,
157
+ * Components and the Model View Controller classes.
158
158
  *
159
159
  * @namespace
160
160
  * @alias sap.ui.core
161
161
  * @author SAP SE
162
- * @version 1.94.0
162
+ * @version 1.97.0
163
163
  * @since 0.8
164
164
  * @public
165
165
  */
@@ -1511,7 +1511,7 @@ sap.ui.define([
1511
1511
  /**
1512
1512
  * Sort order of a column.
1513
1513
  *
1514
- * @version 1.94.0
1514
+ * @version 1.97.0
1515
1515
  * @enum {string}
1516
1516
  * @public
1517
1517
  * @since 1.61.0
@@ -29,7 +29,7 @@ sap.ui.define(['sap/ui/core/message/MessageProcessor'],
29
29
  * @extends sap.ui.core.message.MessageProcessor
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.94.0
32
+ * @version 1.97.0
33
33
  *
34
34
  * @public
35
35
  * @alias sap.ui.core.message.ControlMessageProcessor
@@ -51,13 +51,13 @@ sap.ui.define(['sap/ui/core/message/MessageProcessor'],
51
51
 
52
52
  /**
53
53
  * Set Messages to check
54
- * @param {Object<string,array>}
55
- * vMessages map of messages: {'target': [array of messages],...}
54
+ * @param {Object<string,sap.ui.core.message.Message[]>}
55
+ * mMessages map of messages: {'target': [sap.ui.core.message.Message],...}
56
56
  * @protected
57
57
  */
58
- ControlMessageProcessor.prototype.setMessages = function(vMessages) {
58
+ ControlMessageProcessor.prototype.setMessages = function(mMessages) {
59
59
  this.mOldMessages = this.mMessages === null ? {} : this.mMessages;
60
- this.mMessages = vMessages || {};
60
+ this.mMessages = mMessages || {};
61
61
  this.checkMessages();
62
62
  delete this.mOldMessages;
63
63
  };
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @extends sap.ui.base.Object
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.94.0
38
+ * @version 1.97.0
39
39
  *
40
40
  * @param {object} [mParameters] a map which contains the following parameter properties:
41
41
  * @param {string} [mParameters.id] The message id: will be generated if no id is set
@@ -46,7 +46,7 @@ sap.ui.define([
46
46
  * @extends sap.ui.base.EventProvider
47
47
  *
48
48
  * @author SAP SE
49
- * @version 1.94.0
49
+ * @version 1.97.0
50
50
  *
51
51
  * @public
52
52
  * @alias sap.ui.core.message.MessageManager
@@ -404,15 +404,14 @@ sap.ui.define([
404
404
  * @public
405
405
  */
406
406
  MessageManager.prototype.registerObject = function(oObject, bHandleValidation) {
407
- // eslint-disable-next-line no-unsafe-negation
408
- if (!oObject instanceof ManagedObject) {
407
+ if (!(oObject instanceof ManagedObject)) {
409
408
  Log.error(this + " : " + oObject.toString() + " is not an instance of sap.ui.base.ManagedObject");
410
- return;
409
+ } else {
410
+ oObject.attachValidationSuccess(bHandleValidation, this._handleSuccess, this);
411
+ oObject.attachValidationError(bHandleValidation, this._handleError, this);
412
+ oObject.attachParseError(bHandleValidation, this._handleError, this);
413
+ oObject.attachFormatError(bHandleValidation, this._handleError, this);
411
414
  }
412
- oObject.attachValidationSuccess(bHandleValidation, this._handleSuccess, this);
413
- oObject.attachValidationError(bHandleValidation, this._handleError, this);
414
- oObject.attachParseError(bHandleValidation, this._handleError, this);
415
- oObject.attachFormatError(bHandleValidation, this._handleError, this);
416
415
  };
417
416
 
418
417
  /**
@@ -422,15 +421,14 @@ sap.ui.define([
422
421
  * @public
423
422
  */
424
423
  MessageManager.prototype.unregisterObject = function(oObject) {
425
- // eslint-disable-next-line no-unsafe-negation
426
- if (!oObject instanceof ManagedObject) {
424
+ if (!(oObject instanceof ManagedObject)) {
427
425
  Log.error(this + " : " + oObject.toString() + " is not an instance of sap.ui.base.ManagedObject");
428
- return;
426
+ } else {
427
+ oObject.detachValidationSuccess(this._handleSuccess, this);
428
+ oObject.detachValidationError(this._handleError, this);
429
+ oObject.detachParseError(this._handleError, this);
430
+ oObject.detachFormatError(this._handleError, this);
429
431
  }
430
- oObject.detachValidationSuccess(this._handleSuccess, this);
431
- oObject.detachValidationError(this._handleError, this);
432
- oObject.detachParseError(this._handleError, this);
433
- oObject.detachFormatError(this._handleError, this);
434
432
  };
435
433
 
436
434
  /**
@@ -24,7 +24,7 @@ sap.ui.define(["sap/ui/base/Object", "sap/base/Log"],
24
24
  * @extends sap.ui.base.Object
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.94.0
27
+ * @version 1.97.0
28
28
  * @public
29
29
  * @abstract
30
30
  * @alias sap.ui.core.message.MessageParser
@@ -27,7 +27,7 @@ sap.ui.define(['sap/ui/base/EventProvider', "sap/base/util/uid"],
27
27
  * @extends sap.ui.base.EventProvider
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.94.0
30
+ * @version 1.97.0
31
31
  *
32
32
  * @public
33
33
  * @alias sap.ui.core.message.MessageProcessor
@@ -43,17 +43,13 @@ sap.ui.define(['sap/ui/base/EventProvider', "sap/base/util/uid"],
43
43
  },
44
44
 
45
45
  metadata : {
46
-
47
46
  "abstract" : true,
48
47
  publicMethods : [
49
- // methods
50
48
  "getId", "setMessages", "attachMessageChange", "detachMessageChange"
51
- ]
49
+ ]
52
50
  }
53
-
54
51
  });
55
52
 
56
-
57
53
  /**
58
54
  * Map of event names, that are provided by the MessageProcessor.
59
55
  */
@@ -66,11 +62,20 @@ sap.ui.define(['sap/ui/base/EventProvider', "sap/base/util/uid"],
66
62
  };
67
63
 
68
64
  /**
69
- * The <code>messageChange</code> event is fired when the messages are changed.
65
+ * The inheriting class is responsible to fire a <code>messageChange</code> event when
66
+ * {@link sap.ui.core.message.Message} instances are changed. For more information, see
67
+ * {@link topic:62b1481d3e084cb49dd30956d183c6a0 Error, Warning, and Info Messages} or check
68
+ * the implementing subclasses.
70
69
  *
71
70
  * @name sap.ui.core.message.MessageProcessor#messageChange
72
71
  * @event
73
72
  * @param {sap.ui.base.Event} oEvent
73
+ * @param {sap.ui.base.EventProvider} oEvent.getSource
74
+ * @param {object} oEvent.getParameters
75
+ * @param {sap.ui.core.message.Message} oEvent.getParameters.oldMessages
76
+ * Messages already existing before the <code>messageChange</code> event was fired.
77
+ * @param {sap.ui.core.message.Message} oEvent.getParameters.newMessages
78
+ * New messages added by the trigger of the <code>messageChange</code> event.
74
79
  * @public
75
80
  */
76
81
 
@@ -119,13 +124,18 @@ sap.ui.define(['sap/ui/base/EventProvider', "sap/base/util/uid"],
119
124
  /**
120
125
  * Fires event {@link #event:messageChange messageChange} to attached listeners.
121
126
  *
122
- * @param {object} [oParameters] Parameters to pass along with the event
127
+ * @param {object} mParameters
128
+ * Parameters to pass along with the event
129
+ * @param {sap.ui.core.message.Message} mParameters.oldMessages
130
+ * Messages already existing before the <code>messageChange</code> event was fired.
131
+ * @param {sap.ui.core.message.Message} mParameters.newMessages
132
+ * New messages added by the trigger of the <code>messageChange</code> event.
123
133
  *
124
134
  * @returns {this} Reference to <code>this</code> in order to allow method chaining
125
135
  * @protected
126
136
  */
127
- MessageProcessor.prototype.fireMessageChange = function(oParameters) {
128
- this.fireEvent("messageChange", oParameters);
137
+ MessageProcessor.prototype.fireMessageChange = function(mParameters) {
138
+ this.fireEvent("messageChange", mParameters);
129
139
  return this;
130
140
  };
131
141
  // the 'abstract methods' to be implemented by child classes
@@ -145,8 +155,8 @@ sap.ui.define(['sap/ui/base/EventProvider', "sap/base/util/uid"],
145
155
  *
146
156
  * @name sap.ui.core.message.MessageProcessor.prototype.setMessages
147
157
  * @function
148
- * @param {Object<string,array>}
149
- * vMessages map of messages: {'target': [array of messages],...}
158
+ * @param {Object<string,sap.ui.core.message.Message[]>}
159
+ * mMessages map of messages: {'target': [sap.ui.core.message.Message],...}
150
160
  * @public
151
161
  */
152
162
 
@@ -176,7 +176,7 @@ Icon.move=Verschieben
176
176
  Icon.multi-select=Mehrfachauswahl
177
177
  Icon.nav-back=Zur\u00FCck navigieren
178
178
  Icon.overflow=Mehr
179
- Icon.redo=Wiederholen
179
+ Icon.redo=Wiederherstellen
180
180
  Icon.refresh=Aktualisieren
181
181
  Icon.resize=Gr\u00F6\u00DFe \u00E4ndern
182
182
  Icon.resize-horizontal=Gr\u00F6\u00DFe horizontal \u00E4ndern
@@ -3,7 +3,7 @@ SAPUI5_FRIDAY=Friday
3
3
  SAPUI5_GM_ZSTEP=Zoom step {0}
4
4
 
5
5
  VALUE_STATE_ERROR=Entr\u00E9e non valide
6
- VALUE_STATE_WARNING=Avertissement \u00E9dit\u00E9
6
+ VALUE_STATE_WARNING=Avertissement \u00E9mis
7
7
  VALUE_STATE_SUCCESS=Entr\u00E9e correctement valid\u00E9e
8
8
  VALUE_STATE_INFORMATION=Entr\u00E9e pour information
9
9
 
@@ -69,8 +69,8 @@ EnterNumberMin=Entrez un nombre sup\u00E9rieur ou \u00E9gal \u00E0 {0}.
69
69
  EnterNumberMinExclusive=Entrez un nombre sup\u00E9rieur \u00E0 {0}.
70
70
  EnterNumberMax=Entrez un nombre inf\u00E9rieur ou \u00E9gal \u00E0 {0}.
71
71
  EnterNumberMaxExclusive=Entrez un nombre inf\u00E9rieur \u00E0 {0}.
72
- EnterText=Saisissez un nom.
73
- EnterTextMaxLength=Saisissez un texte comportant au maximum {0} caract\u00E8res, espaces compris.
72
+ EnterText=Entrez un texte.
73
+ EnterTextMaxLength=Entrez un texte comportant au maximum {0} caract\u00E8res, espaces compris.
74
74
  EnterInt=Entrez un nombre sans d\u00E9cimales.
75
75
  EnterDateTime=Entrez une date et une heure valides au format suivant\u00A0\: {0}
76
76
  EnterDate=Entrez une date valide au format suivant\u00A0\: {0}
@@ -121,12 +121,12 @@ DateTime.Maximum=Entrez une date et une heure ant\u00E9rieures au/\u00E0 {0}.
121
121
 
122
122
  DateInterval.Invalid=Saisissez un intervalle de dates valide.
123
123
 
124
- String.MinLength=Entrez une valeur comportant au moins {0} caract\u00E8res.
124
+ String.MinLength=Saisissez une valeur comportant au moins {0} caract\u00E8re(s).
125
125
  String.MaxLength=Entrez une valeur comportant au maximum {0} caract\u00E8res.
126
- String.StartsWith=Saisissez une valeur commen\u00E7ant par "{0}".
127
- String.EndsWith=Saisissez une valeur se terminant par "{0}".
128
- String.Contains=Saisissez une valeur comportant "{0}".
129
- String.Equals=Saisissez la valeur "{0}".
126
+ String.StartsWith=Entrez une valeur commen\u00E7ant par "{0}".
127
+ String.EndsWith=Entrez une valeur se terminant par "{0}".
128
+ String.Contains=Entrez une valeur comtenant "{0}".
129
+ String.Equals=Entrez la valeur "{0}".
130
130
  String.Search=Entrez une valeur valide.
131
131
 
132
132
  ACC_CTR_TYPE_IMAGE=Image
@@ -16,7 +16,7 @@ INDICATION_STATE_INDICATION06=Colore indicazione 6
16
16
  INDICATION_STATE_INDICATION07=Colore indicazione 7
17
17
  INDICATION_STATE_INDICATION08=Colore indicazione 8
18
18
 
19
- BUSY_TEXT=Attendi
19
+ BUSY_TEXT=Attendere
20
20
  BUSY_VALUE_TEXT=Occupato
21
21
 
22
22
 
@@ -174,7 +174,7 @@ Icon.message-success=Pomy\u015Blnie
174
174
  Icon.message-warning=Ostrze\u017Cenie
175
175
  Icon.move=Przesuwanie
176
176
  Icon.multi-select=Wyb\u00F3r wielokrotny
177
- Icon.nav-back=Powr\u00F3t
177
+ Icon.nav-back=Cofnij
178
178
  Icon.overflow=Wi\u0119cej
179
179
  Icon.redo=Powt\u00F3rz
180
180
  Icon.refresh=Od\u015Bwie\u017C