@openui5/sap.ui.core 1.93.3 → 1.96.2

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 (416) hide show
  1. package/.eslintrc.json +13 -2
  2. package/.reuse/dep5 +6 -11
  3. package/THIRDPARTY.txt +10 -16
  4. package/package.json +1 -1
  5. package/src/jquery.sap.global.js +5 -2
  6. package/src/jquery.sap.properties.js +1 -1
  7. package/src/jquery.sap.resources.js +1 -1
  8. package/src/jquery.sap.script.js +1 -1
  9. package/src/jquery.sap.storage.js +3 -3
  10. package/src/jquery.sap.stubs.js +2 -1
  11. package/src/jquery.sap.trace.js +2 -1
  12. package/src/sap/base/i18n/ResourceBundle.js +6 -2
  13. package/src/sap/base/strings/whitespaceReplacer.js +52 -0
  14. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  15. package/src/sap/base/util/restricted/_castArray.js +1 -1
  16. package/src/sap/base/util/restricted/_compact.js +1 -1
  17. package/src/sap/base/util/restricted/_curry.js +1 -1
  18. package/src/sap/base/util/restricted/_debounce.js +1 -1
  19. package/src/sap/base/util/restricted/_difference.js +1 -1
  20. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  21. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  22. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  23. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  24. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  25. package/src/sap/base/util/restricted/_flatten.js +1 -1
  26. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  27. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  28. package/src/sap/base/util/restricted/_intersection.js +1 -1
  29. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  30. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  31. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  32. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  33. package/src/sap/base/util/restricted/_isNil.js +1 -1
  34. package/src/sap/base/util/restricted/_max.js +1 -1
  35. package/src/sap/base/util/restricted/_merge.js +1 -1
  36. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  37. package/src/sap/base/util/restricted/_min.js +1 -1
  38. package/src/sap/base/util/restricted/_omit.js +1 -1
  39. package/src/sap/base/util/restricted/_pick.js +1 -1
  40. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  41. package/src/sap/base/util/restricted/_throttle.js +1 -1
  42. package/src/sap/base/util/restricted/_toArray.js +1 -1
  43. package/src/sap/base/util/restricted/_union.js +1 -1
  44. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  45. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  46. package/src/sap/base/util/restricted/_uniq.js +1 -1
  47. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  48. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  49. package/src/sap/base/util/restricted/_without.js +1 -1
  50. package/src/sap/base/util/restricted/_xor.js +1 -1
  51. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  52. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  53. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  54. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  55. package/src/sap/ui/Device.js +37 -42
  56. package/src/sap/ui/Global.js +8 -7
  57. package/src/sap/ui/base/DataType.js +14 -8
  58. package/src/sap/ui/base/Event.js +1 -1
  59. package/src/sap/ui/base/EventProvider.js +1 -1
  60. package/src/sap/ui/base/ExpressionParser.js +9 -6
  61. package/src/sap/ui/base/Interface.js +3 -49
  62. package/src/sap/ui/base/ManagedObject.js +12 -7
  63. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  64. package/src/sap/ui/base/Metadata.js +1 -1
  65. package/src/sap/ui/base/Object.js +49 -4
  66. package/src/sap/ui/base/ObjectPool.js +1 -1
  67. package/src/sap/ui/base/syncXHRFix.js +2 -1
  68. package/src/sap/ui/core/.library +5 -5
  69. package/src/sap/ui/core/AppCacheBuster.js +4 -4
  70. package/src/sap/ui/core/BusyIndicator.js +1 -11
  71. package/src/sap/ui/core/Component.js +300 -140
  72. package/src/sap/ui/core/ComponentContainer.js +24 -8
  73. package/src/sap/ui/core/ComponentMetadata.js +14 -3
  74. package/src/sap/ui/core/ComponentSupport.js +1 -1
  75. package/src/sap/ui/core/Configuration.js +67 -31
  76. package/src/sap/ui/core/Control.js +1 -1
  77. package/src/sap/ui/core/Core.js +103 -25
  78. package/src/sap/ui/core/CustomData.js +1 -1
  79. package/src/sap/ui/core/CustomizingConfiguration.js +35 -260
  80. package/src/sap/ui/core/DeclarativeSupport.js +3 -2
  81. package/src/sap/ui/core/Element.js +1 -1
  82. package/src/sap/ui/core/ElementMetadata.js +4 -2
  83. package/src/sap/ui/core/EnabledPropagator.js +91 -73
  84. package/src/sap/ui/core/EventBus.js +1 -1
  85. package/src/sap/ui/core/ExtensionPoint.js +7 -14
  86. package/src/sap/ui/core/Fragment.js +30 -32
  87. package/src/sap/ui/core/HTML.js +1 -1
  88. package/src/sap/ui/core/History.js +1 -1
  89. package/src/sap/ui/core/Icon.js +7 -8
  90. package/src/sap/ui/core/IconPool.js +26 -1097
  91. package/src/sap/ui/core/IconRenderer.js +6 -6
  92. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  93. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  94. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  95. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  96. package/src/sap/ui/core/InvisibleText.js +1 -1
  97. package/src/sap/ui/core/Item.js +1 -1
  98. package/src/sap/ui/core/LabelEnablement.js +1 -1
  99. package/src/sap/ui/core/LayoutData.js +1 -1
  100. package/src/sap/ui/core/ListItem.js +1 -1
  101. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  102. package/src/sap/ui/core/Locale.js +26 -4
  103. package/src/sap/ui/core/LocaleData.js +1 -1
  104. package/src/sap/ui/core/Manifest.js +4 -61
  105. package/src/sap/ui/core/Message.js +1 -1
  106. package/src/sap/ui/core/Patcher.js +27 -3
  107. package/src/sap/ui/core/Placeholder.js +28 -15
  108. package/src/sap/ui/core/RenderManager.js +36 -6
  109. package/src/sap/ui/core/Renderer.js +13 -3
  110. package/src/sap/ui/core/ResizeHandler.js +1 -1
  111. package/src/sap/ui/core/ScrollBar.js +2 -2
  112. package/src/sap/ui/core/SeparatorItem.js +1 -1
  113. package/src/sap/ui/core/ShortcutHintsMixin.js +14 -7
  114. package/src/sap/ui/core/Title.js +1 -1
  115. package/src/sap/ui/core/TooltipBase.js +1 -1
  116. package/src/sap/ui/core/UIArea.js +1 -1
  117. package/src/sap/ui/core/UIComponent.js +42 -16
  118. package/src/sap/ui/core/UIComponentMetadata.js +1 -1
  119. package/src/sap/ui/core/ValueStateSupport.js +1 -1
  120. package/src/sap/ui/core/VariantLayoutData.js +1 -1
  121. package/src/sap/ui/core/XMLComposite.js +2 -2
  122. package/src/sap/ui/core/XMLCompositeMetadata.js +2 -2
  123. package/src/sap/ui/core/XMLTemplateProcessor.js +116 -41
  124. package/src/sap/ui/core/_IconRegistry.js +1148 -0
  125. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  126. package/src/sap/ui/core/delegate/ScrollEnablement.js +6 -3
  127. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  128. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  129. package/src/sap/ui/core/dnd/DragInfo.js +2 -2
  130. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  131. package/src/sap/ui/core/format/NumberFormat.js +16 -1
  132. package/src/sap/ui/core/hyphenation/Hyphenation.js +73 -221
  133. package/src/sap/ui/core/hyphenation/HyphenationTestingWords.js +11 -10
  134. package/src/sap/ui/core/library.js +3 -3
  135. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  136. package/src/sap/ui/core/message/Message.js +1 -1
  137. package/src/sap/ui/core/message/MessageManager.js +13 -15
  138. package/src/sap/ui/core/message/MessageParser.js +1 -1
  139. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  140. package/src/sap/ui/core/messagebundle_de.properties +1 -1
  141. package/src/sap/ui/core/messagebundle_fr.properties +1 -1
  142. package/src/sap/ui/core/messagebundle_it.properties +1 -1
  143. package/src/sap/ui/core/messagebundle_pl.properties +1 -1
  144. package/src/sap/ui/core/messagebundle_th.properties +2 -2
  145. package/src/sap/ui/core/mvc/Controller.js +38 -19
  146. package/src/sap/ui/core/mvc/ControllerExtensionProvider.js +30 -32
  147. package/src/sap/ui/core/mvc/ControllerMetadata.js +18 -18
  148. package/src/sap/ui/core/mvc/HTMLView.js +2 -2
  149. package/src/sap/ui/core/mvc/JSONView.js +2 -2
  150. package/src/sap/ui/core/mvc/JSView.js +2 -2
  151. package/src/sap/ui/core/mvc/TemplateView.js +2 -2
  152. package/src/sap/ui/core/mvc/View.js +58 -85
  153. package/src/sap/ui/core/mvc/XMLView.js +2 -2
  154. package/src/sap/ui/core/mvc/XMLViewRenderer.js +17 -20
  155. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  156. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  157. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  158. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  159. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  160. package/src/sap/ui/core/routing/History.js +10 -2
  161. package/src/sap/ui/core/routing/Router.js +8 -1
  162. package/src/sap/ui/core/routing/Target.js +13 -0
  163. package/src/sap/ui/core/routing/Targets.js +13 -2
  164. package/src/sap/ui/core/routing/async/Route.js +1 -1
  165. package/src/sap/ui/core/routing/async/Target.js +353 -259
  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/BootSupportTool.js +11 -0
  172. package/src/sap/ui/core/support/InteractionTree.css +4 -0
  173. package/src/sap/ui/core/support/Plugin.js +1 -1
  174. package/src/sap/ui/core/support/Support.js +1 -1
  175. package/src/sap/ui/core/support/ViewInfo.css +599 -0
  176. package/src/sap/ui/core/support/controls/InteractionTree.js +352 -222
  177. package/src/sap/ui/core/support/controls/ObjectViewer.js +3 -41
  178. package/src/sap/ui/core/support/controls/TimelineOverview.js +49 -24
  179. package/src/sap/ui/core/support/controls/TreeViewer.js +12 -58
  180. package/src/sap/ui/core/support/plugins/ControlTree.js +59 -68
  181. package/src/sap/ui/core/support/plugins/Debugging.js +9 -11
  182. package/src/sap/ui/core/support/plugins/Interaction.js +2 -2
  183. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  184. package/src/sap/ui/core/support/plugins/Performance.js +147 -75
  185. package/src/sap/ui/core/support/plugins/Selector.js +19 -24
  186. package/src/sap/ui/core/support/plugins/TechInfo.js +5 -5
  187. package/src/sap/ui/core/support/plugins/Trace.js +95 -32
  188. package/src/sap/ui/core/support/plugins/ViewInfo.js +9 -73
  189. package/src/sap/ui/core/support/support.css +109 -14
  190. package/src/sap/ui/core/support/support.html +6 -2
  191. package/src/sap/ui/core/support/techinfo/TechnicalInfo.fragment.xml +1 -0
  192. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +149 -72
  193. package/src/sap/ui/core/themes/base/Icon.less +9 -0
  194. package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
  195. package/src/sap/ui/core/theming/Parameters.js +6 -4
  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 +10 -28
  200. package/src/sap/ui/core/tmpl/TemplateControl.js +4 -4
  201. package/src/sap/ui/core/tmpl/_parsePath.js +35 -0
  202. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  203. package/src/sap/ui/core/util/DraftEnabledMockServer.js +9 -4
  204. package/src/sap/ui/core/util/Export.js +1 -1
  205. package/src/sap/ui/core/util/ExportCell.js +1 -1
  206. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  207. package/src/sap/ui/core/util/ExportRow.js +1 -1
  208. package/src/sap/ui/core/util/ExportType.js +1 -1
  209. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  210. package/src/sap/ui/core/util/File.js +1 -1
  211. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  212. package/src/sap/ui/core/util/MockServer.js +5 -5
  213. package/src/sap/ui/core/util/MockServerAnnotationsHandler.js +3 -2
  214. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  215. package/src/sap/ui/core/util/XMLPreprocessor.js +11 -12
  216. package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +136 -63
  217. package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +170 -153
  218. package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +424 -293
  219. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  220. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  221. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  222. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  223. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  224. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  225. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  226. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  227. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  228. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  229. package/src/sap/ui/debug/ControlTree.js +10 -4
  230. package/src/sap/ui/debug/DebugEnv.js +3 -4
  231. package/src/sap/ui/debug/Highlighter.js +8 -2
  232. package/src/sap/ui/debug/PropertyList.css +55 -0
  233. package/src/sap/ui/debug/PropertyList.js +111 -182
  234. package/src/sap/ui/model/Binding.js +174 -118
  235. package/src/sap/ui/model/ClientContextBinding.js +1 -1
  236. package/src/sap/ui/model/ClientListBinding.js +1 -3
  237. package/src/sap/ui/model/ClientModel.js +4 -4
  238. package/src/sap/ui/model/ClientPropertyBinding.js +4 -2
  239. package/src/sap/ui/model/ClientTreeBinding.js +15 -9
  240. package/src/sap/ui/model/ClientTreeBindingAdapter.js +28 -23
  241. package/src/sap/ui/model/CompositeBinding.js +98 -77
  242. package/src/sap/ui/model/CompositeDataState.js +2 -2
  243. package/src/sap/ui/model/CompositeType.js +2 -2
  244. package/src/sap/ui/model/Context.js +4 -2
  245. package/src/sap/ui/model/ContextBinding.js +6 -14
  246. package/src/sap/ui/model/DataState.js +2 -2
  247. package/src/sap/ui/model/Filter.js +255 -53
  248. package/src/sap/ui/model/FilterOperator.js +1 -1
  249. package/src/sap/ui/model/FilterProcessor.js +27 -17
  250. package/src/sap/ui/model/FilterType.js +1 -1
  251. package/src/sap/ui/model/ListBinding.js +180 -117
  252. package/src/sap/ui/model/MetaModel.js +4 -9
  253. package/src/sap/ui/model/Model.js +345 -294
  254. package/src/sap/ui/model/PropertyBinding.js +92 -58
  255. package/src/sap/ui/model/SelectionModel.js +2 -2
  256. package/src/sap/ui/model/SimpleType.js +2 -2
  257. package/src/sap/ui/model/Sorter.js +1 -1
  258. package/src/sap/ui/model/SorterProcessor.js +1 -1
  259. package/src/sap/ui/model/StaticBinding.js +1 -1
  260. package/src/sap/ui/model/TreeAutoExpandMode.js +2 -2
  261. package/src/sap/ui/model/TreeBinding.js +1 -1
  262. package/src/sap/ui/model/TreeBindingAdapter.js +251 -100
  263. package/src/sap/ui/model/TreeBindingCompatibilityAdapter.js +16 -9
  264. package/src/sap/ui/model/TreeBindingUtils.js +1 -0
  265. package/src/sap/ui/model/Type.js +1 -1
  266. package/src/sap/ui/model/analytics/AnalyticalBinding.js +8 -4
  267. package/src/sap/ui/model/analytics/AnalyticalTreeBindingAdapter.js +1 -1
  268. package/src/sap/ui/model/analytics/AnalyticalVersionInfo.js +1 -1
  269. package/src/sap/ui/model/analytics/BatchResponseCollector.js +1 -1
  270. package/src/sap/ui/model/analytics/ODataModelAdapter.js +1 -1
  271. package/src/sap/ui/model/analytics/odata4analytics.js +34 -25
  272. package/src/sap/ui/model/base/ManagedObjectModel.js +4 -0
  273. package/src/sap/ui/model/json/JSONListBinding.js +8 -5
  274. package/src/sap/ui/model/json/JSONModel.js +24 -15
  275. package/src/sap/ui/model/json/JSONPropertyBinding.js +4 -3
  276. package/src/sap/ui/model/json/JSONTreeBinding.js +1 -1
  277. package/src/sap/ui/model/message/MessageListBinding.js +6 -3
  278. package/src/sap/ui/model/message/MessageModel.js +23 -15
  279. package/src/sap/ui/model/message/MessagePropertyBinding.js +2 -2
  280. package/src/sap/ui/model/odata/AnnotationHelper.js +1 -1
  281. package/src/sap/ui/model/odata/AnnotationParser.js +1 -1
  282. package/src/sap/ui/model/odata/CountMode.js +1 -1
  283. package/src/sap/ui/model/odata/Filter.js +1 -1
  284. package/src/sap/ui/model/odata/ODataAnnotations.js +2 -2
  285. package/src/sap/ui/model/odata/ODataContextBinding.js +1 -1
  286. package/src/sap/ui/model/odata/ODataListBinding.js +1 -1
  287. package/src/sap/ui/model/odata/ODataMessageParser.js +2 -2
  288. package/src/sap/ui/model/odata/ODataMetaModel.js +5 -3
  289. package/src/sap/ui/model/odata/ODataMetadata.js +2 -2
  290. package/src/sap/ui/model/odata/ODataModel.js +8 -7
  291. package/src/sap/ui/model/odata/ODataPropertyBinding.js +1 -1
  292. package/src/sap/ui/model/odata/ODataTreeBinding.js +65 -33
  293. package/src/sap/ui/model/odata/ODataTreeBindingAdapter.js +1 -1
  294. package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +2 -2
  295. package/src/sap/ui/model/odata/ODataUtils.js +13 -11
  296. package/src/sap/ui/model/odata/OperationMode.js +1 -1
  297. package/src/sap/ui/model/odata/_AnnotationHelperExpression.js +1 -1
  298. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  299. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  300. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  301. package/src/sap/ui/model/odata/type/Date.js +1 -1
  302. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  303. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  304. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  305. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  306. package/src/sap/ui/model/odata/type/Double.js +1 -1
  307. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  308. package/src/sap/ui/model/odata/type/Int.js +1 -1
  309. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  310. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  311. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  312. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  313. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  314. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  315. package/src/sap/ui/model/odata/type/Single.js +1 -1
  316. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  317. package/src/sap/ui/model/odata/type/String.js +1 -1
  318. package/src/sap/ui/model/odata/type/Time.js +1 -1
  319. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  320. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  321. package/src/sap/ui/model/odata/v2/Context.js +81 -9
  322. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +3 -3
  323. package/src/sap/ui/model/odata/v2/ODataContextBinding.js +39 -49
  324. package/src/sap/ui/model/odata/v2/ODataListBinding.js +236 -73
  325. package/src/sap/ui/model/odata/v2/ODataModel.js +314 -164
  326. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +110 -97
  327. package/src/sap/ui/model/odata/v2/_CreatedContextsCache.js +129 -0
  328. package/src/sap/ui/model/odata/v4/Context.js +6 -3
  329. package/src/sap/ui/model/odata/v4/ODataBinding.js +5 -6
  330. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +117 -40
  331. package/src/sap/ui/model/odata/v4/ODataListBinding.js +95 -15
  332. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +44 -31
  333. package/src/sap/ui/model/odata/v4/ODataModel.js +86 -78
  334. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +47 -28
  335. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +11 -7
  336. package/src/sap/ui/model/odata/v4/_AnnotationHelperExpression.js +10 -3
  337. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +8 -1
  338. package/src/sap/ui/model/odata/v4/lib/_Cache.js +24 -16
  339. package/src/sap/ui/model/odata/v4/lib/_Helper.js +32 -30
  340. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +52 -17
  341. package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +2 -2
  342. package/src/sap/ui/model/resource/ResourceModel.js +6 -2
  343. package/src/sap/ui/model/resource/ResourcePropertyBinding.js +1 -1
  344. package/src/sap/ui/model/type/Boolean.js +2 -2
  345. package/src/sap/ui/model/type/Currency.js +2 -2
  346. package/src/sap/ui/model/type/Date.js +9 -3
  347. package/src/sap/ui/model/type/DateInterval.js +4 -2
  348. package/src/sap/ui/model/type/DateTime.js +2 -2
  349. package/src/sap/ui/model/type/DateTimeInterval.js +2 -2
  350. package/src/sap/ui/model/type/FileSize.js +4 -2
  351. package/src/sap/ui/model/type/Float.js +4 -2
  352. package/src/sap/ui/model/type/Integer.js +4 -2
  353. package/src/sap/ui/model/type/String.js +2 -2
  354. package/src/sap/ui/model/type/Time.js +2 -2
  355. package/src/sap/ui/model/type/TimeInterval.js +2 -2
  356. package/src/sap/ui/model/type/Unit.js +14 -7
  357. package/src/sap/ui/model/xml/XMLListBinding.js +15 -9
  358. package/src/sap/ui/model/xml/XMLModel.js +70 -41
  359. package/src/sap/ui/model/xml/XMLPropertyBinding.js +4 -4
  360. package/src/sap/ui/model/xml/XMLTreeBinding.js +5 -4
  361. package/src/sap/ui/performance/trace/Interaction.js +30 -15
  362. package/src/sap/ui/performance/trace/initTraces.js +1 -1
  363. package/src/sap/ui/qunit/QUnitUtils.js +3 -2
  364. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  365. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +9 -11
  366. package/src/sap/ui/test/TestUtils.js +11 -4
  367. package/src/sap/ui/test/actions/Drag.js +6 -2
  368. package/src/sap/ui/test/actions/Drop.js +6 -2
  369. package/src/sap/ui/test/actions/EnterText.js +6 -0
  370. package/src/sap/ui/test/actions/Press.js +6 -0
  371. package/src/sap/ui/test/actions/Scroll.js +6 -0
  372. package/src/sap/ui/test/autowaiter/_resourceWaiter.js +4 -4
  373. package/src/sap/ui/test/launchers/componentLauncher.js +0 -4
  374. package/src/sap/ui/test/matchers/I18NText.js +29 -11
  375. package/src/sap/ui/test/opaQunit.js +5 -0
  376. package/src/sap/ui/thirdparty/crossroads.js +6 -4
  377. package/src/sap/ui/thirdparty/hyphenopoly/Hyphenopoly.js +1196 -0
  378. package/src/sap/ui/thirdparty/hyphenopoly/Hyphenopoly_Loader.js +797 -0
  379. package/src/sap/ui/thirdparty/hyphenopoly/hyphenEngine.asm.js +108 -127
  380. package/src/sap/ui/thirdparty/hyphenopoly/hyphenEngine.wasm +0 -0
  381. package/src/sap/ui/thirdparty/hyphenopoly/patterns/bg.hpb +0 -0
  382. package/src/sap/ui/thirdparty/hyphenopoly/patterns/ca.hpb +0 -0
  383. package/src/sap/ui/thirdparty/hyphenopoly/patterns/da.hpb +0 -0
  384. package/src/sap/ui/thirdparty/hyphenopoly/patterns/de.hpb +0 -0
  385. package/src/sap/ui/thirdparty/hyphenopoly/patterns/el-monoton.hpb +0 -0
  386. package/src/sap/ui/thirdparty/hyphenopoly/patterns/en-us.hpb +0 -0
  387. package/src/sap/ui/thirdparty/hyphenopoly/patterns/es.hpb +0 -0
  388. package/src/sap/ui/thirdparty/hyphenopoly/patterns/et.hpb +0 -0
  389. package/src/sap/ui/thirdparty/hyphenopoly/patterns/fi.hpb +0 -0
  390. package/src/sap/ui/thirdparty/hyphenopoly/patterns/fr.hpb +0 -0
  391. package/src/sap/ui/thirdparty/hyphenopoly/patterns/hi.hpb +0 -0
  392. package/src/sap/ui/thirdparty/hyphenopoly/patterns/hr.hpb +0 -0
  393. package/src/sap/ui/thirdparty/hyphenopoly/patterns/hu.hpb +0 -0
  394. package/src/sap/ui/thirdparty/hyphenopoly/patterns/it.hpb +0 -0
  395. package/src/sap/ui/thirdparty/hyphenopoly/patterns/lt.hpb +0 -0
  396. package/src/sap/ui/thirdparty/hyphenopoly/patterns/nb-no.hpb +0 -0
  397. package/src/sap/ui/thirdparty/hyphenopoly/patterns/nl.hpb +0 -0
  398. package/src/sap/ui/thirdparty/hyphenopoly/patterns/pt.hpb +0 -0
  399. package/src/sap/ui/thirdparty/hyphenopoly/patterns/ru.hpb +0 -0
  400. package/src/sap/ui/thirdparty/hyphenopoly/patterns/sl.hpb +0 -0
  401. package/src/sap/ui/thirdparty/hyphenopoly/patterns/sv.hpb +0 -0
  402. package/src/sap/ui/thirdparty/hyphenopoly/patterns/th.hpb +0 -0
  403. package/src/sap/ui/thirdparty/hyphenopoly/patterns/tr.hpb +0 -0
  404. package/src/sap/ui/thirdparty/hyphenopoly/patterns/uk.hpb +0 -0
  405. package/src/sap/ui/thirdparty/jquery.js +9 -1
  406. package/src/sap/ui/thirdparty/qunit-2.js +1 -1
  407. package/src/sap/ui/thirdparty/qunit.js +1 -1
  408. package/src/sap/ui/util/Mobile.js +2 -20
  409. package/src/sap/ui/util/Storage.js +1 -1
  410. package/src/sap/ui/util/isCrossOriginURL.js +16 -6
  411. package/src/sap-ui-core-nojQuery.js +1 -1
  412. package/src/sap-ui-core.js +1 -1
  413. package/src/sap-ui-debug.js +3 -17
  414. package/ui5.yaml +5 -2
  415. package/src/sap/ui/core/support/plugins/MessageTest.js +0 -96
  416. package/src/sap/ui/thirdparty/hyphenopoly/hyphenopoly.bundle.js +0 -860
@@ -1,40 +1,37 @@
1
1
  /**
2
- * @license hyphenEngine.asm.js 2.4.0-devel - client side hyphenation for webbrowsers
3
- * ©2018 Mathias Nater, Zürich (mathiasnater at gmail dot com)
2
+ * @license hyphenEngine.asm.js 3.4.0 - client side hyphenation for webbrowsers
3
+ * ©2019 Mathias Nater, Zürich (mathiasnater at gmail dot com)
4
4
  * https://github.com/mnater/Hyphenopoly
5
5
  *
6
6
  * Released under the MIT license
7
7
  * http://mnater.github.io/Hyphenopoly/LICENSE
8
8
  */
9
-
10
- function asmHyphenEngine(std, ext, heap) {
9
+ /* eslint-disable */
10
+ function asmHyphenEngine(std, x, heap) {
11
11
  "use asm";
12
12
  var ui8 = new std.Uint8Array(heap);
13
13
  var ui16 = new std.Uint16Array(heap);
14
14
  var i32 = new std.Int32Array(heap);
15
15
  var imul = std.Math.imul;
16
16
 
17
- var hpbTranslateOffset = ext.hpbTranslateOffset | 0;
18
- var hpbPatternsOffset = ext.hpbPatternsOffset | 0;
19
- var patternsLength = ext.patternsLength | 0;
20
- var valueStoreOffset = ext.valueStoreOffset | 0;
21
- var patternTrieOffset = ext.patternTrieOffset | 0;
22
- var wordOffset = ext.wordOffset | 0;
23
- var translatedWordOffset = ext.translatedWordOffset | 0;
24
- var hyphenPointsOffset = ext.hyphenPointsOffset | 0;
25
- var hyphenatedWordOffset = ext.hyphenatedWordOffset | 0;
26
-
27
- var trieRowLength = 0;
28
- var alphabetCount = 0;
17
+ var to = x.to | 0;
18
+ var po = x.po | 0;
19
+ var pl = x.pl | 0;
20
+ var vs = x.vs | 0;
21
+ var pt = x.pt | 0;
22
+ var wo = x.wo | 0;
23
+ var tw = x.tw | 0;
24
+ var hp = x.hp | 0;
25
+ var hw = x.hw | 0;
29
26
 
30
27
  function hashCharCode(cc) {
31
- //maps BMP-charCode (16bit) to 9bit adresses
32
- //{0, 1, 2, ..., 2^16 - 1} -> {0, 1, 2, ..., 2^9 - 1}
28
+ //maps BMP-charCode (16bit) to 8bit adresses
29
+ //{0, 1, 2, ..., 2^16 - 1} -> {0, 1, 2, ..., 2^8 - 1}
33
30
  //collisions will occur!
34
31
  cc = cc | 0;
35
32
  var h = 0;
36
33
  h = imul(cc, 40503); // 2^16 (-1 + sqrt(5)) / 2 = 40’503.475...
37
- h = (h >> 8) + 1 & 255; //shift and mask 8bits
34
+ h = h & 255; //mask 8bits
38
35
  return h << 1;
39
36
  }
40
37
 
@@ -53,9 +50,6 @@ function asmHyphenEngine(std, ext, heap) {
53
50
  function pullFromTranslateMap(cc) {
54
51
  cc = cc | 0;
55
52
  var addr = 0;
56
- if ((cc | 0) == 0) {
57
- return 255;
58
- }
59
53
  addr = hashCharCode(cc) | 0;
60
54
  while ((ui16[addr >> 1] | 0) != (cc | 0)) {
61
55
  addr = (addr + 2) | 0;
@@ -73,13 +67,16 @@ function asmHyphenEngine(std, ext, heap) {
73
67
  var first = 0;
74
68
  var second = 0;
75
69
  var secondInt = 0;
76
- i = (hpbTranslateOffset + 2) | 0;
77
- k = 12 | 0;
78
- trieRowLength = ui16[hpbTranslateOffset >> 1] << 1;
79
- while ((i | 0) < (hpbPatternsOffset | 0)) {
70
+ var alphabetCount = 0;
71
+ i = (to + 2) | 0;
72
+ while ((i | 0) < (po | 0)) {
80
73
  first = ui16[i >> 1] | 0;
81
74
  second = ui16[(i + 2) >> 1] | 0;
82
- secondInt = pullFromTranslateMap(second) | 0;
75
+ if ((second | 0) == 0) {
76
+ secondInt = 255;
77
+ } else {
78
+ secondInt = pullFromTranslateMap(second) | 0;
79
+ }
83
80
  if ((secondInt | 0) == 255) {
84
81
  //there's no such char yet in the TranslateMap
85
82
  pushToTranslateMap(first, k);
@@ -97,26 +94,14 @@ function asmHyphenEngine(std, ext, heap) {
97
94
  alphabetCount = (alphabetCount + 1) | 0;
98
95
  i = (i + 4) | 0;
99
96
  }
100
- }
101
-
102
- function translateCharCode(cc) {
103
- cc = cc | 0;
104
- var charIdx = 0;
105
- charIdx = pullFromTranslateMap(cc | 0) | 0;
106
- if ((charIdx | 0) == 255) {
107
- return 255;
108
- }
109
- return (charIdx - 12) << 3;
97
+ return alphabetCount | 0;
110
98
  }
111
99
 
112
100
  function convert() {
113
101
  var i = 0;
114
- var last_i = 0;
115
102
  var charAti = 0;
116
- var mode = 0; //0: init/collect patterns, 1: get patlen
117
103
  var plen = 0;
118
104
  var count = 0;
119
- var prevWasDigit = 0;
120
105
  var nextRowStart = 0;
121
106
  var trieNextEmptyRow = 0;
122
107
  var rowStart = 0;
@@ -124,125 +109,118 @@ function asmHyphenEngine(std, ext, heap) {
124
109
  var valueStoreStartIndex = 0;
125
110
  var valueStoreCurrentIdx = 0;
126
111
  var valueStorePrevIdx = 0;
127
- valueStoreStartIndex = (valueStoreOffset + 1) | 0;
128
- valueStoreCurrentIdx = (valueStoreOffset + 1) | 0;
129
- valueStorePrevIdx = (valueStoreOffset + 1) | 0;
130
-
131
- createTranslateMap();
112
+ var alphabetlength = 0;
113
+ var first = 0;
114
+ var second = 0;
115
+ var trieRowLength = 0;
116
+ trieRowLength = ((ui16[to >> 1] << 1) + 1) << 2;
117
+ nextRowStart = pt;
118
+ trieNextEmptyRow = pt;
119
+ rowStart = pt;
120
+ valueStoreStartIndex = vs;
121
+ valueStoreCurrentIdx = vs;
122
+ valueStorePrevIdx = vs;
132
123
 
133
- i = hpbPatternsOffset | 0;
134
- last_i = hpbPatternsOffset + patternsLength | 0;
135
- while ((i | 0) < (last_i | 0)) {
136
- charAti = ui8[i | 0] | 0;
137
- if ((charAti | 0) == 58) { //58 === ":"
138
- mode = !mode;
124
+ alphabetlength = createTranslateMap() | 0;
125
+ i = po | 0;
126
+ while ((i | 0) < (po + pl | 0)) {
127
+ if ((ui8[i | 0] | 0) == 0) {
128
+ plen = ui8[(i + 1) | 0] | 0;
129
+ i = (i + 2) | 0;
139
130
  } else {
140
- if ((mode | 0) == 1) {
141
- plen = charAti | 0;
142
- } else {
143
- count = (count + 1) | 0;
144
- //add to trie
131
+ if ((ui8[i | 0] | 0) == 255) {
132
+ first = ui8[(i + 1) | 0] | 0;
133
+ second = ui8[(i + 2) | 0] | 0;
134
+ i = (i + 3) | 0;
135
+ }
136
+ while ((count | 0) < (plen | 0)) {
137
+ if ((count | 0) == 0) {
138
+ charAti = first;
139
+ } else if ((count | 0) == 1) {
140
+ charAti = second;
141
+ } else {
142
+ charAti = ui8[i | 0] | 0;
143
+ i = (i + 1) | 0;
144
+ }
145
145
  if ((charAti | 0) > 11) {
146
- if ((prevWasDigit | 0) == 0) {
147
- valueStoreCurrentIdx = (valueStoreCurrentIdx + 1) | 0;
148
- }
149
- prevWasDigit = 0;
150
- if ((nextRowStart | 0) == -1) {
146
+ valueStoreCurrentIdx = (valueStoreCurrentIdx + 1) | 0;
147
+ if ((nextRowStart | 0) == 0) {
151
148
  //start a new row
152
- trieNextEmptyRow = (trieNextEmptyRow + (((trieRowLength + 1) | 0) << 2)) | 0;
149
+ trieNextEmptyRow = trieNextEmptyRow + trieRowLength | 0;
153
150
  nextRowStart = trieNextEmptyRow;
154
- i32[(patternTrieOffset + rowStart + rowOffset) >> 2] = nextRowStart;
151
+ i32[(rowStart + rowOffset) >> 2] = nextRowStart;
155
152
  }
156
153
  rowOffset = ((charAti - 12) | 0) << 3;
157
154
  rowStart = nextRowStart;
158
- nextRowStart = i32[(patternTrieOffset + rowStart + rowOffset) >> 2] | 0;
159
- if ((nextRowStart | 0) == 0) {
160
- i32[(patternTrieOffset + rowStart + rowOffset) >> 2] = -1;
161
- nextRowStart = -1;
162
- }
155
+ nextRowStart = i32[(rowStart + rowOffset) >> 2] | 0;
163
156
  } else {
164
157
  ui8[valueStoreCurrentIdx | 0] = charAti | 0;
165
158
  valueStorePrevIdx = valueStoreCurrentIdx;
166
- valueStoreCurrentIdx = (valueStoreCurrentIdx + 1) | 0;
167
- prevWasDigit = 1;
168
159
  }
169
- if ((count | 0) == (plen | 0)) {
160
+ count = (count + 1) | 0;
161
+ }
170
162
  //terminate valueStore and save link to valueStoreStartIndex
171
- ui8[(valueStorePrevIdx + 1) | 0] = 255; //mark end of pattern
172
- i32[(patternTrieOffset + rowStart + rowOffset + 4) >> 2] = (valueStoreStartIndex - valueStoreOffset) | 0;
163
+ ui8[(valueStorePrevIdx + 1) | 0] = 255; //mark end of pattern
164
+ i32[(rowStart + rowOffset + 4) >> 2] = valueStoreStartIndex | 0;
173
165
  //reset indizes
174
- valueStoreStartIndex = (valueStorePrevIdx + 2) | 0;
175
- valueStoreCurrentIdx = valueStoreStartIndex;
176
- count = 0;
177
- rowStart = 0;
178
- nextRowStart = 0;
179
- prevWasDigit = 0;
180
- }
181
- }
166
+ valueStoreStartIndex = (valueStorePrevIdx + 2) | 0;
167
+ valueStoreCurrentIdx = valueStoreStartIndex;
168
+ count = 0;
169
+ rowStart = pt;
170
+ nextRowStart = pt;
182
171
  }
183
- i = (i + 1) | 0;
184
172
  }
173
+ return alphabetlength | 0;
185
174
  }
186
175
 
187
- function hyphenate(lm, rm) {
176
+ function hyphenate(lm, rm, hc) {
188
177
  lm = lm | 0;
189
178
  rm = rm | 0;
179
+ hc = hc | 0;
190
180
  var patternStartPos = 0;
191
181
  var wordLength = 0;
192
182
  var charOffset = 0;
183
+ var cc = 0;
193
184
  var row = 0;
194
- var wordStartOffset = 0;
195
185
  var rowOffset2 = 0;
196
186
  var link = 0;
197
187
  var value = 0;
198
188
  var hyphenPointsCount = 0;
199
189
  var hyphenPoint = 0;
200
190
  var hpPos = 0;
201
- var unknownChar = 0;
202
191
  var translatedChar = 0;
203
- wordLength = (ui8[wordOffset | 0] << 1) | 0;
204
- wordStartOffset = (wordOffset + 2) | 0;
205
192
 
206
- //translate UTF16 word to internal ints
207
- while ((charOffset | 0) < (wordLength | 0)) {
208
- translatedChar = translateCharCode(ui16[(wordStartOffset + charOffset) >> 1] | 0) | 0;
193
+ //translate UTF16 word to internal ints and clear hpPos-Array
194
+ cc = ui16[wo >> 1] | 0;
195
+ while ((cc | 0) != 0) {
196
+ translatedChar = pullFromTranslateMap(cc | 0) | 0;
209
197
  if ((translatedChar | 0) == 255) {
210
- unknownChar = 1;
211
- break;
198
+ return 0;
212
199
  }
213
- ui16[(translatedWordOffset + charOffset) >> 1] = translatedChar | 0;
214
- charOffset = (charOffset + 2) | 0;
200
+ ui8[(tw + charOffset) | 0] = translatedChar | 0;
201
+ charOffset = (charOffset + 1) | 0;
202
+ ui8[(hp + charOffset) | 0] = 0;
203
+ cc = ui16[(wo + (charOffset << 1)) >> 1] | 0;
215
204
  }
216
-
217
- while ((hpPos | 0) < ((wordLength + 1) | 0)) {
218
- ui8[(hyphenPointsOffset + hpPos) | 0] = 0;
219
- hpPos = (hpPos + 1) | 0;
220
- }
221
-
222
- if ((unknownChar | 0) == 1) {
223
- return 0;
224
- }
225
-
226
- hpPos = 0;
227
-
228
-
205
+ //find patterns and collect hyphenPoints
206
+ wordLength = charOffset;
229
207
  while ((patternStartPos | 0) < (wordLength | 0)) {
230
- row = 0;
208
+ row = pt;
231
209
  charOffset = patternStartPos | 0;
232
210
  while ((charOffset | 0) < (wordLength | 0)) {
233
- rowOffset2 = ui16[(translatedWordOffset + charOffset) >> 1] | 0;
234
- link = i32[(patternTrieOffset + row + rowOffset2) >> 2] | 0;
235
- value = i32[(patternTrieOffset + row + rowOffset2 + 4) >> 2] | 0;
211
+ rowOffset2 = ui8[(tw + charOffset) | 0] << 3;
212
+ link = i32[(row + rowOffset2) >> 2] | 0;
213
+ value = i32[(row + rowOffset2 + 4) >> 2] | 0;
236
214
  if ((value | 0) > 0) {
237
215
  hyphenPointsCount = 0;
238
- hyphenPoint = ui8[(valueStoreOffset + value) | 0] | 0;
216
+ hyphenPoint = ui8[value | 0] | 0;
239
217
  while ((hyphenPoint | 0) != 255) {
240
- hpPos = (hyphenPointsOffset + (patternStartPos >> 1) + hyphenPointsCount) | 0;
218
+ hpPos = (hp + patternStartPos + hyphenPointsCount) | 0;
241
219
  if ((hyphenPoint | 0) > (ui8[hpPos | 0] | 0)) {
242
220
  ui8[hpPos | 0] = hyphenPoint | 0;
243
221
  }
244
222
  hyphenPointsCount = (hyphenPointsCount + 1) | 0;
245
- hyphenPoint = ui8[(valueStoreOffset + value + hyphenPointsCount) | 0] | 0;
223
+ hyphenPoint = ui8[(value + hyphenPointsCount) | 0] | 0;
246
224
  }
247
225
  }
248
226
  if ((link | 0) > 0) {
@@ -250,26 +228,29 @@ function asmHyphenEngine(std, ext, heap) {
250
228
  } else {
251
229
  break;
252
230
  }
253
- charOffset = (charOffset + 2) | 0;
231
+ charOffset = (charOffset + 1) | 0;
254
232
  }
255
- patternStartPos = (patternStartPos + 2) | 0;
233
+ patternStartPos = (patternStartPos + 1) | 0;
256
234
  }
257
235
 
258
- charOffset = 0;
236
+ //get chars of original word and insert hyphenPoints
237
+ charOffset = 1;
259
238
  hyphenPointsCount = 0;
239
+ wordLength = (wordLength - 2) | 0;
260
240
  while ((charOffset | 0) <= (wordLength | 0)) {
261
- ui16[(hyphenatedWordOffset + charOffset + hyphenPointsCount) >> 1] = ui16[(wordStartOffset + charOffset) >> 1] | 0;
262
- if ((charOffset >> 1) >= (lm | 0)) {
263
- if ((charOffset >> 1) <= (((wordLength >> 1) - rm - 2) | 0)) {
264
- if (ui8[(hyphenPointsOffset + (charOffset >> 1) + 1) | 0] & 1 == 1) {
265
- ui16[(hyphenatedWordOffset + charOffset + hyphenPointsCount + 2) >> 1] = 173;
266
- hyphenPointsCount = (hyphenPointsCount + 2) | 0
267
- }
241
+ ui16[(hw + (charOffset << 1) + hyphenPointsCount) >> 1] = ui16[(wo + (charOffset << 1)) >> 1] | 0;
242
+ if (
243
+ (((charOffset | 0) >= (lm | 0)) | 0) &
244
+ (((charOffset | 0) <= ((wordLength - rm) | 0)) | 0)
245
+ ) {
246
+ if (ui8[(hp + charOffset + 1) | 0] & 1) {
247
+ hyphenPointsCount = (hyphenPointsCount + 2) | 0;
248
+ ui16[(hw + (charOffset << 1) + hyphenPointsCount) >> 1] = hc;
268
249
  }
269
250
  }
270
- charOffset = (charOffset + 2) | 0;
251
+ charOffset = (charOffset + 1) | 0;
271
252
  }
272
- ui16[hyphenatedWordOffset >> 1] = ((wordLength >> 1) + (hyphenPointsCount >> 1) - 2) | 0;
253
+ ui16[hw >> 1] = (wordLength + (hyphenPointsCount >> 1)) | 0;
273
254
  return 1;
274
255
  }
275
256
 
@@ -277,4 +258,4 @@ function asmHyphenEngine(std, ext, heap) {
277
258
  convert: convert,
278
259
  hyphenate: hyphenate
279
260
  };
280
- }
261
+ }
@@ -8156,7 +8156,15 @@ jQuery.extend( {
8156
8156
 
8157
8157
  if ( attrNames && elem.nodeType === 1 ) {
8158
8158
  while ( ( name = attrNames[ i++ ] ) ) {
8159
- elem.removeAttribute( name );
8159
+ // ##### BEGIN: MODIFIED BY SAP
8160
+ // Avoid CSP violation in Safari 14ff (https://bugs.webkit.org/show_bug.cgi?id=227349)
8161
+ // elem.removeAttribute( name );
8162
+ if ( name === "style" ) {
8163
+ elem.style = "";
8164
+ } else {
8165
+ elem.removeAttribute( name );
8166
+ }
8167
+ // ##### END: MODIFIED BY SAP
8160
8168
  }
8161
8169
  }
8162
8170
  }
@@ -22,7 +22,7 @@
22
22
  // the goal is to prevent QUnit timeouts while test is already paused.
23
23
  if (window && window.sap && window.sap.ui && window.sap.ui.require) {
24
24
  try {
25
- var QUnitPause = window.sap.ui.require("sap/ui/test/qunitPause") || window.sap.ui.requireSync("sap/ui/test/qunitPause");
25
+ var QUnitPause = window.sap.ui.require("sap/ui/test/qunitPause") || window.sap.ui.requireSync("sap/ui/test/qunitPause"); // legacy-relevant
26
26
  QUnitPause.setupBeforeQUnit();
27
27
  } catch (e) {
28
28
  console.warn("Could not find module sap/ui/test/qunitPause. Details: " + e);
@@ -16,7 +16,7 @@
16
16
  // the goal is to prevent QUnit timeouts while test is already paused.
17
17
  if (window && window.sap && window.sap.ui && window.sap.ui.require) {
18
18
  try {
19
- var QUnitPause = window.sap.ui.require("sap/ui/test/qunitPause") || window.sap.ui.requireSync("sap/ui/test/qunitPause");
19
+ var QUnitPause = window.sap.ui.require("sap/ui/test/qunitPause") || window.sap.ui.requireSync("sap/ui/test/qunitPause"); // legacy-relevant
20
20
  QUnitPause.setupBeforeQUnit();
21
21
  } catch (e) {
22
22
  window.console.warn("Could not find module sap/ui/test/qunitPause. Details: " + e);
@@ -96,31 +96,13 @@ sap.ui.define(['sap/ui/Device', 'sap/base/Log', "sap/ui/thirdparty/jquery"], fun
96
96
  // afterwards
97
97
  }
98
98
 
99
- var bIsIOS7Safari = Device.os.ios && Device.os.version >= 7 && Device.os.version < 8 && Device.browser.name === "sf";
100
99
  // initialize viewport
101
100
  if (options.viewport) {
102
101
  var sMeta;
103
102
  var iInnerHeightBefore = Device.resize.height;
104
103
  var iInnerWidthBefore = Device.resize.width;
105
- if (bIsIOS7Safari && Device.system.phone) {
106
- //if the softkeyboard is open in orientation change, we have to do this to solve the zoom bug
107
- // on the phone - the phone zooms into the view although it shouldn't so these two lines will
108
- // zoom out again see orientation change below the important part seems to be removing the
109
- // device width
110
- sMeta = 'minimal-ui, initial-scale=1.0, maximum-scale=1.0, user-scalable=0';
111
- } else if (bIsIOS7Safari && Device.system.tablet) {
112
- //remove the width = device width since it will not work correctly if the webside is embedded
113
- // in a webview
114
- sMeta = 'initial-scale=1.0, maximum-scale=1.0, user-scalable=no';
115
- } else if ((Device.os.ios && Device.system.phone) && (Math.max(window.screen.height, window.screen.width) === 568)) {
116
- // iPhone 5
117
- sMeta = "user-scalable=0, initial-scale=1.0";
118
- } else if (Device.os.android && Device.os.version < 3) {
119
- sMeta = "width=device-width, height=device-height, initial-scale=1.0, maximum-scale=1.0, user-scalable=no";
120
- } else {
121
- // all other devices
122
- sMeta = "width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no";
123
- }
104
+
105
+ sMeta = "width=device-width, initial-scale=1.0";
124
106
  $head.append(jQuery('<meta name="viewport" content="' + sMeta + '">'));
125
107
 
126
108
  // Update Device API resize info, which is necessary in some scenarios after setting the viewport info
@@ -250,7 +250,7 @@ sap.ui.define(["sap/base/assert"], function (assert) {
250
250
  *
251
251
  * @enum {string}
252
252
  * @public
253
- * @version 1.93.3
253
+ * @version 1.96.2
254
254
  */
255
255
  Storage.Type = {
256
256
  /**
@@ -8,21 +8,31 @@ sap.ui.define([], function() {
8
8
  "use strict";
9
9
 
10
10
  /**
11
- * If the given URL is cross-origin, checks whether its origin is different from
12
- * the origin of the current document.
11
+ * Checks whether the given URL is cross-origin, compared to the origin of
12
+ * the current page (<code>window.location</code>).
13
+ *
14
+ * <b>Note</b>: for opaque origins ('null'), the check is quite conservative
15
+ * and always reports a cross-origin URL, although the real origins might be
16
+ * the same. The serialized representation of origins does not allow a more
17
+ * accurate check.
18
+ *
19
+ * @see https://html.spec.whatwg.org/multipage/origin.html#origin
13
20
  *
14
21
  * @param {sap.ui.core.URI} sHref The URL to check
15
22
  * @returns {boolean} Whether the URL is a cross-origin URL
16
23
  * @private
17
- * @ui5-restricted
24
+ * @ui5-restricted sap.ui.model.odata.v2.ODataModel,sap.ushell
18
25
  * @alias module:sap/ui/util/isCrossOriginURL
19
26
  * @since 1.84
20
27
  */
21
28
  function isCrossOriginURL(sHref) {
22
- var oURL = new URL(sHref, document.baseURI),
23
- sOrigin = window.location.origin || new URL(document.baseURI);
29
+ var oURL = new URL(sHref, document.baseURI);
24
30
 
25
- return oURL.origin !== sOrigin;
31
+ return (
32
+ oURL.origin === 'null'
33
+ || window.location.origin === 'null'
34
+ || oURL.origin !== window.location.origin
35
+ );
26
36
  }
27
37
 
28
38
  return isCrossOriginURL;
@@ -47,7 +47,7 @@
47
47
  } else if ( sSrc.indexOf("require:") === 0 ) {
48
48
  sSrc = sSrc.slice(8);
49
49
  bCoreRequired = bCoreRequired || sSrc === "sap/ui/core/Core";
50
- document.write("<script>sap.ui.requireSync(\"" + sSrc + "\");</script>");
50
+ document.write("<script>sap.ui.requireSync(\"" + sSrc + "\");</script>"); // legacy-relevant
51
51
  }
52
52
  }
53
53
  if ( bCoreRequired ) {
@@ -47,7 +47,7 @@
47
47
  } else if ( sSrc.indexOf("require:") === 0 ) {
48
48
  sSrc = sSrc.slice(8);
49
49
  bCoreRequired = bCoreRequired || sSrc === "sap/ui/core/Core";
50
- document.write("<script>sap.ui.requireSync(\"" + sSrc + "\");</script>");
50
+ document.write("<script>sap.ui.requireSync(\"" + sSrc + "\");</script>"); // legacy-relevant
51
51
  }
52
52
  }
53
53
  if ( bCoreRequired ) {
@@ -11,8 +11,7 @@ jQuery.sap.declare('sap-ui-debug');
11
11
  "use strict";
12
12
 
13
13
  //extract base URL from script tag
14
- var aScripts, i, sSrc, mMatch, sBaseUrl, oScriptTag,
15
- bCoreRequired = false;
14
+ var aScripts, i, sSrc, mMatch, sBaseUrl, oScriptTag;
16
15
 
17
16
  oScriptTag = document.getElementById("sap-ui-bootstrap");
18
17
  if (oScriptTag) {
@@ -44,22 +43,9 @@ jQuery.sap.declare('sap-ui-debug');
44
43
 
45
44
  for (i = 0; i < aScriptIncludes.length; i++) {
46
45
  sSrc = aScriptIncludes[i];
47
- if ( sSrc.indexOf("raw:") === 0 ) {
48
- sSrc = sBaseUrl + sSrc.slice(4);
49
- document.write("<script src=\"" + sSrc + "\"></script>");
50
- } else if ( sSrc.indexOf("require:") === 0 ) {
51
- sSrc = sSrc.slice(8);
52
- bCoreRequired = bCoreRequired || sSrc === "sap.ui.core.Core";
53
- document.write("<script>jQuery.sap.require(\"" + sSrc + "\");</script>");
54
- }
55
- }
56
- if ( bCoreRequired ) {
57
- document.write("<script>sap.ui.getCore().boot && sap.ui.getCore().boot();</script>");
46
+ sSrc = sBaseUrl + sSrc.slice(4);
47
+ document.write("<script src=\"" + sSrc + "\"></script>");
58
48
  }
59
49
  }([
60
- "raw:sap/ui/debug/ControlTree.js",
61
- "raw:sap/ui/debug/Highlighter.js",
62
- "raw:sap/ui/debug/LogViewer.js",
63
- "raw:sap/ui/debug/PropertyList.js",
64
50
  "raw:sap/ui/debug/DebugEnv.js"
65
51
  ]));
package/ui5.yaml CHANGED
@@ -1,5 +1,5 @@
1
1
  ---
2
- specVersion: "1.1"
2
+ specVersion: "2.0"
3
3
  type: library
4
4
  metadata:
5
5
  name: sap.ui.core
@@ -7,6 +7,9 @@ metadata:
7
7
  OpenUI5
8
8
  * (c) Copyright 2009-${currentYear} SAP SE or an SAP affiliate company.
9
9
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
10
+ resources:
11
+ configuration:
12
+ propertiesFileSourceEncoding: ISO-8859-1
10
13
  builder:
11
14
  jsdoc:
12
15
  excludes:
@@ -14,4 +17,4 @@ builder:
14
17
  - "sap-ui-*"
15
18
  - "sap/ui/debug/**"
16
19
  - "sap/ui/qunit/**"
17
- - "sap/ui/thirdparty/**"
20
+ - "sap/ui/thirdparty/**"