@openui5/sap.ui.core 1.102.12 → 1.102.14

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 (691) hide show
  1. package/package.json +1 -1
  2. package/src/jquery.sap.act.js +1 -1
  3. package/src/jquery.sap.dom.js +1 -1
  4. package/src/jquery.sap.encoder.js +1 -1
  5. package/src/jquery.sap.events.js +1 -1
  6. package/src/jquery.sap.global.js +2 -2
  7. package/src/jquery.sap.history.js +1 -1
  8. package/src/jquery.sap.keycodes.js +1 -1
  9. package/src/jquery.sap.mobile.js +1 -1
  10. package/src/jquery.sap.promise.js +1 -1
  11. package/src/jquery.sap.properties.js +2 -2
  12. package/src/jquery.sap.resources.js +2 -2
  13. package/src/jquery.sap.script.js +2 -2
  14. package/src/jquery.sap.sjax.js +1 -1
  15. package/src/jquery.sap.storage.js +4 -4
  16. package/src/jquery.sap.strings.js +1 -1
  17. package/src/jquery.sap.stubs.js +1 -1
  18. package/src/jquery.sap.trace.js +1 -1
  19. package/src/jquery.sap.ui.js +1 -1
  20. package/src/jquery.sap.xml.js +1 -1
  21. package/src/sap/base/Log.js +1 -1
  22. package/src/sap/base/assert.js +1 -1
  23. package/src/sap/base/i18n/ResourceBundle.js +1 -1
  24. package/src/sap/base/security/URLListValidator.js +1 -1
  25. package/src/sap/base/security/URLWhitelist.js +1 -1
  26. package/src/sap/base/security/encodeCSS.js +1 -1
  27. package/src/sap/base/security/encodeJS.js +1 -1
  28. package/src/sap/base/security/encodeURL.js +1 -1
  29. package/src/sap/base/security/encodeURLParameters.js +1 -1
  30. package/src/sap/base/security/encodeXML.js +1 -1
  31. package/src/sap/base/security/sanitizeHTML.js +1 -1
  32. package/src/sap/base/strings/camelize.js +1 -1
  33. package/src/sap/base/strings/capitalize.js +1 -1
  34. package/src/sap/base/strings/escapeRegExp.js +1 -1
  35. package/src/sap/base/strings/formatMessage.js +1 -1
  36. package/src/sap/base/strings/hash.js +1 -1
  37. package/src/sap/base/strings/hyphenate.js +1 -1
  38. package/src/sap/base/strings/toHex.js +1 -1
  39. package/src/sap/base/strings/whitespaceReplacer.js +1 -1
  40. package/src/sap/base/util/Deferred.js +1 -1
  41. package/src/sap/base/util/JSTokenizer.js +1 -1
  42. package/src/sap/base/util/LoaderExtensions.js +1 -1
  43. package/src/sap/base/util/ObjectPath.js +1 -1
  44. package/src/sap/base/util/Properties.js +1 -1
  45. package/src/sap/base/util/UriParameters.js +1 -1
  46. package/src/sap/base/util/Version.js +1 -1
  47. package/src/sap/base/util/_merge.js +1 -1
  48. package/src/sap/base/util/array/diff.js +1 -1
  49. package/src/sap/base/util/array/uniqueSort.js +1 -1
  50. package/src/sap/base/util/deepClone.js +1 -1
  51. package/src/sap/base/util/deepEqual.js +1 -1
  52. package/src/sap/base/util/deepExtend.js +1 -1
  53. package/src/sap/base/util/defineCoupledProperty.js +1 -1
  54. package/src/sap/base/util/defineLazyProperty.js +1 -1
  55. package/src/sap/base/util/each.js +1 -1
  56. package/src/sap/base/util/extend.js +1 -1
  57. package/src/sap/base/util/includes.js +1 -1
  58. package/src/sap/base/util/isEmptyObject.js +1 -1
  59. package/src/sap/base/util/isPlainObject.js +1 -1
  60. package/src/sap/base/util/merge.js +1 -1
  61. package/src/sap/base/util/now.js +1 -1
  62. package/src/sap/base/util/resolveReference.js +1 -1
  63. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  64. package/src/sap/base/util/restricted/_castArray.js +2 -2
  65. package/src/sap/base/util/restricted/_compact.js +2 -2
  66. package/src/sap/base/util/restricted/_curry.js +2 -2
  67. package/src/sap/base/util/restricted/_debounce.js +2 -2
  68. package/src/sap/base/util/restricted/_difference.js +2 -2
  69. package/src/sap/base/util/restricted/_differenceBy.js +2 -2
  70. package/src/sap/base/util/restricted/_differenceWith.js +2 -2
  71. package/src/sap/base/util/restricted/_flatMap.js +2 -2
  72. package/src/sap/base/util/restricted/_flatMapDeep.js +2 -2
  73. package/src/sap/base/util/restricted/_flatMapDepth.js +2 -2
  74. package/src/sap/base/util/restricted/_flatten.js +2 -2
  75. package/src/sap/base/util/restricted/_flattenDeep.js +2 -2
  76. package/src/sap/base/util/restricted/_flattenDepth.js +2 -2
  77. package/src/sap/base/util/restricted/_intersection.js +2 -2
  78. package/src/sap/base/util/restricted/_intersectionBy.js +2 -2
  79. package/src/sap/base/util/restricted/_intersectionWith.js +2 -2
  80. package/src/sap/base/util/restricted/_isEqual.js +2 -2
  81. package/src/sap/base/util/restricted/_isEqualWith.js +2 -2
  82. package/src/sap/base/util/restricted/_isNil.js +2 -2
  83. package/src/sap/base/util/restricted/_max.js +2 -2
  84. package/src/sap/base/util/restricted/_merge.js +2 -2
  85. package/src/sap/base/util/restricted/_mergeWith.js +2 -2
  86. package/src/sap/base/util/restricted/_min.js +2 -2
  87. package/src/sap/base/util/restricted/_omit.js +2 -2
  88. package/src/sap/base/util/restricted/_pick.js +2 -2
  89. package/src/sap/base/util/restricted/_pickBy.js +2 -2
  90. package/src/sap/base/util/restricted/_throttle.js +2 -2
  91. package/src/sap/base/util/restricted/_toArray.js +2 -2
  92. package/src/sap/base/util/restricted/_union.js +2 -2
  93. package/src/sap/base/util/restricted/_unionBy.js +2 -2
  94. package/src/sap/base/util/restricted/_unionWith.js +2 -2
  95. package/src/sap/base/util/restricted/_uniq.js +2 -2
  96. package/src/sap/base/util/restricted/_uniqBy.js +2 -2
  97. package/src/sap/base/util/restricted/_uniqWith.js +2 -2
  98. package/src/sap/base/util/restricted/_without.js +2 -2
  99. package/src/sap/base/util/restricted/_xor.js +2 -2
  100. package/src/sap/base/util/restricted/_xorBy.js +2 -2
  101. package/src/sap/base/util/restricted/_xorWith.js +2 -2
  102. package/src/sap/base/util/restricted/_zipObject.js +2 -2
  103. package/src/sap/base/util/restricted/_zipObjectDeep.js +2 -2
  104. package/src/sap/base/util/uid.js +1 -1
  105. package/src/sap/base/util/values.js +1 -1
  106. package/src/sap/ui/Device.js +4 -4
  107. package/src/sap/ui/Global.js +5 -5
  108. package/src/sap/ui/VersionInfo.js +1 -1
  109. package/src/sap/ui/base/BindingParser.js +1 -1
  110. package/src/sap/ui/base/DataType.js +1 -1
  111. package/src/sap/ui/base/Event.js +2 -2
  112. package/src/sap/ui/base/EventProvider.js +2 -2
  113. package/src/sap/ui/base/Exception.js +1 -1
  114. package/src/sap/ui/base/ExpressionParser.js +1 -1
  115. package/src/sap/ui/base/Interface.js +2 -2
  116. package/src/sap/ui/base/ManagedObject.js +2 -2
  117. package/src/sap/ui/base/ManagedObjectMetadata.js +2 -2
  118. package/src/sap/ui/base/ManagedObjectObserver.js +1 -1
  119. package/src/sap/ui/base/ManagedObjectRegistry.js +1 -1
  120. package/src/sap/ui/base/Metadata.js +2 -2
  121. package/src/sap/ui/base/Object.js +2 -2
  122. package/src/sap/ui/base/ObjectPool.js +2 -2
  123. package/src/sap/ui/base/SyncPromise.js +1 -1
  124. package/src/sap/ui/base/syncXHRFix.js +1 -1
  125. package/src/sap/ui/core/.library +2 -2
  126. package/src/sap/ui/core/AppCacheBuster.js +1 -1
  127. package/src/sap/ui/core/BlockLayerUtils.js +1 -1
  128. package/src/sap/ui/core/BusyIndicator.js +2 -2
  129. package/src/sap/ui/core/BusyIndicatorUtils.js +1 -1
  130. package/src/sap/ui/core/CalendarType.js +1 -1
  131. package/src/sap/ui/core/CommandExecution.js +1 -1
  132. package/src/sap/ui/core/Component.js +2 -2
  133. package/src/sap/ui/core/ComponentContainer.js +2 -2
  134. package/src/sap/ui/core/ComponentContainerRenderer.js +1 -1
  135. package/src/sap/ui/core/ComponentMetadata.js +2 -2
  136. package/src/sap/ui/core/ComponentSupport.js +2 -2
  137. package/src/sap/ui/core/Configuration.js +1 -1
  138. package/src/sap/ui/core/ContextMenuSupport.js +1 -1
  139. package/src/sap/ui/core/Control.js +2 -2
  140. package/src/sap/ui/core/Core.js +2 -2
  141. package/src/sap/ui/core/CustomData.js +2 -2
  142. package/src/sap/ui/core/CustomStyleClassSupport.js +1 -1
  143. package/src/sap/ui/core/DeclarativeSupport.js +2 -2
  144. package/src/sap/ui/core/Element.js +2 -2
  145. package/src/sap/ui/core/ElementMetadata.js +2 -2
  146. package/src/sap/ui/core/EnabledPropagator.js +2 -2
  147. package/src/sap/ui/core/EventBus.js +2 -2
  148. package/src/sap/ui/core/ExtensionPoint.js +1 -1
  149. package/src/sap/ui/core/FocusHandler.js +1 -1
  150. package/src/sap/ui/core/Fragment.js +2 -2
  151. package/src/sap/ui/core/HTML.js +2 -2
  152. package/src/sap/ui/core/HTMLRenderer.js +1 -1
  153. package/src/sap/ui/core/History.js +2 -2
  154. package/src/sap/ui/core/Icon.js +2 -2
  155. package/src/sap/ui/core/IconPool.js +1 -1
  156. package/src/sap/ui/core/IconRenderer.js +1 -1
  157. package/src/sap/ui/core/IndicationColorSupport.js +2 -2
  158. package/src/sap/ui/core/IntervalTrigger.js +2 -2
  159. package/src/sap/ui/core/InvisibleMessage.js +2 -2
  160. package/src/sap/ui/core/InvisibleRenderer.js +2 -2
  161. package/src/sap/ui/core/InvisibleText.js +2 -2
  162. package/src/sap/ui/core/Item.js +2 -2
  163. package/src/sap/ui/core/LabelEnablement.js +2 -2
  164. package/src/sap/ui/core/LayoutData.js +2 -2
  165. package/src/sap/ui/core/ListItem.js +2 -2
  166. package/src/sap/ui/core/LocalBusyIndicator.js +2 -2
  167. package/src/sap/ui/core/LocalBusyIndicatorRenderer.js +1 -1
  168. package/src/sap/ui/core/LocalBusyIndicatorSupport.js +1 -1
  169. package/src/sap/ui/core/Locale.js +2 -2
  170. package/src/sap/ui/core/LocaleData.js +2 -2
  171. package/src/sap/ui/core/Manifest.js +2 -2
  172. package/src/sap/ui/core/Message.js +2 -2
  173. package/src/sap/ui/core/Patcher.js +1 -1
  174. package/src/sap/ui/core/Placeholder.js +1 -1
  175. package/src/sap/ui/core/Popup.js +1 -1
  176. package/src/sap/ui/core/RenderManager.js +2 -2
  177. package/src/sap/ui/core/Renderer.js +2 -2
  178. package/src/sap/ui/core/ResizeHandler.js +2 -2
  179. package/src/sap/ui/core/ScrollBar.js +2 -2
  180. package/src/sap/ui/core/ScrollBarRenderer.js +1 -1
  181. package/src/sap/ui/core/SeparatorItem.js +2 -2
  182. package/src/sap/ui/core/Shortcut.js +1 -1
  183. package/src/sap/ui/core/ShortcutHint.js +1 -1
  184. package/src/sap/ui/core/ShortcutHintsMixin.js +1 -1
  185. package/src/sap/ui/core/StashedControlSupport.js +1 -1
  186. package/src/sap/ui/core/ThemeCheck.js +1 -1
  187. package/src/sap/ui/core/Title.js +2 -2
  188. package/src/sap/ui/core/TooltipBase.js +2 -2
  189. package/src/sap/ui/core/UIArea.js +2 -2
  190. package/src/sap/ui/core/UIComponent.js +2 -2
  191. package/src/sap/ui/core/UIComponentMetadata.js +2 -2
  192. package/src/sap/ui/core/ValueStateSupport.js +2 -2
  193. package/src/sap/ui/core/VariantLayoutData.js +2 -2
  194. package/src/sap/ui/core/XMLComposite.js +2 -2
  195. package/src/sap/ui/core/XMLCompositeMetadata.js +2 -2
  196. package/src/sap/ui/core/XMLTemplateProcessor.js +1 -1
  197. package/src/sap/ui/core/_IconRegistry.js +1 -1
  198. package/src/sap/ui/core/cache/CacheManager.js +1 -1
  199. package/src/sap/ui/core/cache/CacheManagerNOP.js +1 -1
  200. package/src/sap/ui/core/cache/LRUPersistentCache.js +1 -1
  201. package/src/sap/ui/core/date/Buddhist.js +1 -1
  202. package/src/sap/ui/core/date/CalendarUtils.js +1 -1
  203. package/src/sap/ui/core/date/CalendarWeekNumbering.js +1 -1
  204. package/src/sap/ui/core/date/Gregorian.js +1 -1
  205. package/src/sap/ui/core/date/Islamic.js +1 -1
  206. package/src/sap/ui/core/date/Japanese.js +1 -1
  207. package/src/sap/ui/core/date/Persian.js +1 -1
  208. package/src/sap/ui/core/date/UniversalDate.js +1 -1
  209. package/src/sap/ui/core/date/UniversalDateUtils.js +1 -1
  210. package/src/sap/ui/core/date/_Calendars.js +1 -1
  211. package/src/sap/ui/core/delegate/ItemNavigation.js +2 -2
  212. package/src/sap/ui/core/delegate/ScrollEnablement.js +2 -2
  213. package/src/sap/ui/core/designtime/ComponentContainer.designtime.js +1 -1
  214. package/src/sap/ui/core/designtime/CustomData.designtime.js +1 -1
  215. package/src/sap/ui/core/designtime/Icon.designtime.js +1 -1
  216. package/src/sap/ui/core/designtime/UIComponent.designtime.js +1 -1
  217. package/src/sap/ui/core/designtime/library.designtime.js +1 -1
  218. package/src/sap/ui/core/designtime/mvc/ControllerExtensionTemplate.js +1 -1
  219. package/src/sap/ui/core/designtime/mvc/View.designtime.js +1 -1
  220. package/src/sap/ui/core/designtime/mvc/XMLView.designtime.js +1 -1
  221. package/src/sap/ui/core/dnd/DragAndDrop.js +1 -1
  222. package/src/sap/ui/core/dnd/DragDropBase.js +2 -2
  223. package/src/sap/ui/core/dnd/DragDropInfo.js +2 -2
  224. package/src/sap/ui/core/dnd/DragInfo.js +2 -2
  225. package/src/sap/ui/core/dnd/DropInfo.js +2 -2
  226. package/src/sap/ui/core/format/DateFormat.js +310 -177
  227. package/src/sap/ui/core/format/DateFormatTimezoneDisplay.js +1 -1
  228. package/src/sap/ui/core/format/FileSizeFormat.js +1 -1
  229. package/src/sap/ui/core/format/ListFormat.js +1 -1
  230. package/src/sap/ui/core/format/NumberFormat.js +1 -1
  231. package/src/sap/ui/core/format/TimezoneUtil.js +2 -2
  232. package/src/sap/ui/core/hyphenation/Hyphenation.js +2 -2
  233. package/src/sap/ui/core/hyphenation/HyphenationTestingWords.js +1 -1
  234. package/src/sap/ui/core/library.js +4 -4
  235. package/src/sap/ui/core/library.support.js +1 -1
  236. package/src/sap/ui/core/message/ControlMessageProcessor.js +2 -2
  237. package/src/sap/ui/core/message/Message.js +2 -2
  238. package/src/sap/ui/core/message/MessageManager.js +2 -2
  239. package/src/sap/ui/core/message/MessageMixin.js +1 -1
  240. package/src/sap/ui/core/message/MessageParser.js +2 -2
  241. package/src/sap/ui/core/message/MessageProcessor.js +2 -2
  242. package/src/sap/ui/core/mvc/Controller.js +1 -1
  243. package/src/sap/ui/core/mvc/ControllerExtension.js +1 -1
  244. package/src/sap/ui/core/mvc/ControllerExtensionProvider.js +1 -1
  245. package/src/sap/ui/core/mvc/ControllerMetadata.js +1 -1
  246. package/src/sap/ui/core/mvc/EventHandlerResolver.js +1 -1
  247. package/src/sap/ui/core/mvc/HTMLView.js +2 -2
  248. package/src/sap/ui/core/mvc/HTMLViewRenderer.js +1 -1
  249. package/src/sap/ui/core/mvc/JSONView.js +2 -2
  250. package/src/sap/ui/core/mvc/JSONViewRenderer.js +1 -1
  251. package/src/sap/ui/core/mvc/JSView.js +2 -2
  252. package/src/sap/ui/core/mvc/JSViewRenderer.js +1 -1
  253. package/src/sap/ui/core/mvc/OverrideExecution.js +1 -1
  254. package/src/sap/ui/core/mvc/TemplateView.js +2 -2
  255. package/src/sap/ui/core/mvc/TemplateViewRenderer.js +1 -1
  256. package/src/sap/ui/core/mvc/View.js +2 -2
  257. package/src/sap/ui/core/mvc/ViewRenderer.js +1 -1
  258. package/src/sap/ui/core/mvc/ViewType.js +1 -1
  259. package/src/sap/ui/core/mvc/XMLProcessingMode.js +1 -1
  260. package/src/sap/ui/core/mvc/XMLView.js +2 -2
  261. package/src/sap/ui/core/mvc/XMLViewRenderer.js +1 -1
  262. package/src/sap/ui/core/plugin/DeclarativeSupport.js +2 -2
  263. package/src/sap/ui/core/plugin/LessSupport.js +2 -2
  264. package/src/sap/ui/core/plugin/TemplatingSupport.js +2 -2
  265. package/src/sap/ui/core/postmessage/Bus.js +2 -2
  266. package/src/sap/ui/core/postmessage/confirmationDialog.js +2 -2
  267. package/src/sap/ui/core/routing/HashChanger.js +1 -1
  268. package/src/sap/ui/core/routing/HashChangerBase.js +1 -1
  269. package/src/sap/ui/core/routing/History.js +1 -1
  270. package/src/sap/ui/core/routing/Route.js +1 -1
  271. package/src/sap/ui/core/routing/Router.js +1 -1
  272. package/src/sap/ui/core/routing/RouterHashChanger.js +1 -1
  273. package/src/sap/ui/core/routing/Target.js +1 -1
  274. package/src/sap/ui/core/routing/TargetCache.js +1 -1
  275. package/src/sap/ui/core/routing/Targets.js +1 -1
  276. package/src/sap/ui/core/routing/Views.js +1 -1
  277. package/src/sap/ui/core/routing/async/Route.js +1 -1
  278. package/src/sap/ui/core/routing/async/Target.js +1 -1
  279. package/src/sap/ui/core/routing/async/TargetCache.js +1 -1
  280. package/src/sap/ui/core/routing/async/Targets.js +1 -1
  281. package/src/sap/ui/core/routing/sync/Route.js +1 -1
  282. package/src/sap/ui/core/routing/sync/Target.js +1 -1
  283. package/src/sap/ui/core/routing/sync/TargetCache.js +1 -1
  284. package/src/sap/ui/core/routing/sync/Targets.js +1 -1
  285. package/src/sap/ui/core/rules/App.support.js +1 -1
  286. package/src/sap/ui/core/rules/Config.support.js +1 -1
  287. package/src/sap/ui/core/rules/CoreHelper.support.js +1 -1
  288. package/src/sap/ui/core/rules/Misc.support.js +1 -1
  289. package/src/sap/ui/core/rules/Model.support.js +1 -1
  290. package/src/sap/ui/core/rules/Rendering.support.js +1 -1
  291. package/src/sap/ui/core/rules/Theming.support.js +1 -1
  292. package/src/sap/ui/core/rules/View.support.js +1 -1
  293. package/src/sap/ui/core/search/OpenSearchProvider.js +2 -2
  294. package/src/sap/ui/core/search/SearchProvider.js +2 -2
  295. package/src/sap/ui/core/service/Service.js +2 -2
  296. package/src/sap/ui/core/service/ServiceFactory.js +2 -2
  297. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +2 -2
  298. package/src/sap/ui/core/support/BootSupportTool.js +1 -1
  299. package/src/sap/ui/core/support/Hotkeys.js +1 -1
  300. package/src/sap/ui/core/support/Plugin.js +2 -2
  301. package/src/sap/ui/core/support/RuleEngineOpaExtension.js +1 -1
  302. package/src/sap/ui/core/support/Support.js +2 -2
  303. package/src/sap/ui/core/support/ToolsAPI.js +1 -1
  304. package/src/sap/ui/core/support/bootstrapFallback.js +1 -1
  305. package/src/sap/ui/core/support/controls/InteractionSlider.js +1 -1
  306. package/src/sap/ui/core/support/controls/InteractionTree.js +1 -1
  307. package/src/sap/ui/core/support/controls/ObjectViewer.js +1 -1
  308. package/src/sap/ui/core/support/controls/TimelineOverview.js +1 -1
  309. package/src/sap/ui/core/support/controls/TreeViewer.js +1 -1
  310. package/src/sap/ui/core/support/debugReboot.js +1 -1
  311. package/src/sap/ui/core/support/plugins/Breakpoint.js +1 -1
  312. package/src/sap/ui/core/support/plugins/ControlTree.js +2 -2
  313. package/src/sap/ui/core/support/plugins/Debugging.js +1 -1
  314. package/src/sap/ui/core/support/plugins/Interaction.js +2 -2
  315. package/src/sap/ui/core/support/plugins/LocalStorage.js +2 -2
  316. package/src/sap/ui/core/support/plugins/Performance.js +2 -2
  317. package/src/sap/ui/core/support/plugins/Selector.js +2 -2
  318. package/src/sap/ui/core/support/plugins/TechInfo.js +2 -2
  319. package/src/sap/ui/core/support/plugins/Trace.js +2 -2
  320. package/src/sap/ui/core/support/plugins/ViewInfo.js +2 -2
  321. package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +1 -1
  322. package/src/sap/ui/core/support/techinfo/moduleTreeHelper.js +1 -1
  323. package/src/sap/ui/core/support/trace/E2eTraceLib.js +1 -1
  324. package/src/sap/ui/core/support/trace/EppLib.js +1 -1
  325. package/src/sap/ui/core/support/usage/EventBroadcaster.js +1 -1
  326. package/src/sap/ui/core/syncStyleClass.js +1 -1
  327. package/src/sap/ui/core/themes/base/library.source.less +1 -1
  328. package/src/sap/ui/core/themes/sap_hcb/library.source.less +1 -1
  329. package/src/sap/ui/core/theming/Parameters.js +1 -1
  330. package/src/sap/ui/core/theming/ThemeHelper.js +1 -1
  331. package/src/sap/ui/core/tmpl/DOMAttribute.js +2 -2
  332. package/src/sap/ui/core/tmpl/DOMElement.js +2 -2
  333. package/src/sap/ui/core/tmpl/DOMElementRenderer.js +1 -1
  334. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +2 -2
  335. package/src/sap/ui/core/tmpl/Template.js +2 -2
  336. package/src/sap/ui/core/tmpl/TemplateControl.js +2 -2
  337. package/src/sap/ui/core/tmpl/TemplateControlRenderer.js +1 -1
  338. package/src/sap/ui/core/tmpl/_parsePath.js +1 -1
  339. package/src/sap/ui/core/util/AsyncHintsHelper.js +2 -2
  340. package/src/sap/ui/core/util/DraftEnabledMockServer.js +1 -1
  341. package/src/sap/ui/core/util/Export.js +2 -2
  342. package/src/sap/ui/core/util/ExportCell.js +2 -2
  343. package/src/sap/ui/core/util/ExportColumn.js +2 -2
  344. package/src/sap/ui/core/util/ExportRow.js +2 -2
  345. package/src/sap/ui/core/util/ExportType.js +2 -2
  346. package/src/sap/ui/core/util/ExportTypeCSV.js +2 -2
  347. package/src/sap/ui/core/util/File.js +2 -2
  348. package/src/sap/ui/core/util/LibraryInfo.js +2 -2
  349. package/src/sap/ui/core/util/MockServer.js +2 -2
  350. package/src/sap/ui/core/util/MockServerAnnotationsHandler.js +1 -1
  351. package/src/sap/ui/core/util/PasteHelper.js +2 -2
  352. package/src/sap/ui/core/util/ResponsivePaddingsEnablement.js +1 -1
  353. package/src/sap/ui/core/util/ShortcutHelper.js +1 -1
  354. package/src/sap/ui/core/util/XMLPreprocessor.js +1 -1
  355. package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +1 -1
  356. package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +1 -1
  357. package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +1 -1
  358. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +2 -2
  359. package/src/sap/ui/core/util/serializer/Serializer.js +2 -2
  360. package/src/sap/ui/core/util/serializer/ViewSerializer.js +2 -2
  361. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +2 -2
  362. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +2 -2
  363. package/src/sap/ui/core/util/serializer/delegate/HTML.js +2 -2
  364. package/src/sap/ui/core/util/serializer/delegate/XML.js +2 -2
  365. package/src/sap/ui/core/ws/ReadyState.js +2 -2
  366. package/src/sap/ui/core/ws/SapPcpWebSocket.js +2 -2
  367. package/src/sap/ui/core/ws/WebSocket.js +2 -2
  368. package/src/sap/ui/debug/ControlTree.js +2 -2
  369. package/src/sap/ui/debug/DebugEnv.js +2 -2
  370. package/src/sap/ui/debug/Highlighter.js +1 -1
  371. package/src/sap/ui/debug/LogViewer.js +1 -1
  372. package/src/sap/ui/debug/PropertyList.js +2 -2
  373. package/src/sap/ui/dom/containsOrEquals.js +1 -1
  374. package/src/sap/ui/dom/denormalizeScrollBeginRTL.js +1 -1
  375. package/src/sap/ui/dom/denormalizeScrollLeftRTL.js +1 -1
  376. package/src/sap/ui/dom/getComputedStyleFix.js +1 -1
  377. package/src/sap/ui/dom/getFirstEditableInput.js +1 -1
  378. package/src/sap/ui/dom/getOwnerWindow.js +1 -1
  379. package/src/sap/ui/dom/getScrollbarSize.js +1 -1
  380. package/src/sap/ui/dom/includeScript.js +1 -1
  381. package/src/sap/ui/dom/includeStylesheet.js +1 -1
  382. package/src/sap/ui/dom/isHidden.js +1 -1
  383. package/src/sap/ui/dom/jquery/Aria.js +1 -1
  384. package/src/sap/ui/dom/jquery/Focusable.js +1 -1
  385. package/src/sap/ui/dom/jquery/Selection.js +1 -1
  386. package/src/sap/ui/dom/jquery/Selectors.js +1 -1
  387. package/src/sap/ui/dom/jquery/control.js +1 -1
  388. package/src/sap/ui/dom/jquery/cursorPos.js +1 -1
  389. package/src/sap/ui/dom/jquery/getSelectedText.js +1 -1
  390. package/src/sap/ui/dom/jquery/hasTabIndex.js +1 -1
  391. package/src/sap/ui/dom/jquery/parentByAttribute.js +1 -1
  392. package/src/sap/ui/dom/jquery/rect.js +1 -1
  393. package/src/sap/ui/dom/jquery/rectContains.js +1 -1
  394. package/src/sap/ui/dom/jquery/scrollLeftRTL.js +1 -1
  395. package/src/sap/ui/dom/jquery/scrollRightRTL.js +1 -1
  396. package/src/sap/ui/dom/jquery/selectText.js +1 -1
  397. package/src/sap/ui/dom/jquery/zIndex.js +1 -1
  398. package/src/sap/ui/dom/units/Rem.js +1 -1
  399. package/src/sap/ui/events/ControlEvents.js +1 -1
  400. package/src/sap/ui/events/F6Navigation.js +1 -1
  401. package/src/sap/ui/events/KeyCodes.js +1 -1
  402. package/src/sap/ui/events/PasteEventFix.js +1 -1
  403. package/src/sap/ui/events/PseudoEvents.js +1 -1
  404. package/src/sap/ui/events/TouchToMouseMapping.js +1 -1
  405. package/src/sap/ui/events/checkMouseEnterOrLeave.js +1 -1
  406. package/src/sap/ui/events/isMouseEventDelayed.js +1 -1
  407. package/src/sap/ui/events/isSpecialKey.js +1 -1
  408. package/src/sap/ui/events/jquery/EventExtension.js +1 -1
  409. package/src/sap/ui/events/jquery/EventSimulation.js +1 -1
  410. package/src/sap/ui/events/jquery/EventTriggerHook.js +1 -1
  411. package/src/sap/ui/model/Binding.js +1 -1
  412. package/src/sap/ui/model/BindingMode.js +1 -1
  413. package/src/sap/ui/model/ChangeReason.js +1 -1
  414. package/src/sap/ui/model/ClientContextBinding.js +1 -1
  415. package/src/sap/ui/model/ClientListBinding.js +1 -1
  416. package/src/sap/ui/model/ClientModel.js +2 -2
  417. package/src/sap/ui/model/ClientPropertyBinding.js +1 -1
  418. package/src/sap/ui/model/ClientTreeBinding.js +1 -1
  419. package/src/sap/ui/model/ClientTreeBindingAdapter.js +1 -1
  420. package/src/sap/ui/model/CompositeBinding.js +1 -1
  421. package/src/sap/ui/model/CompositeDataState.js +2 -2
  422. package/src/sap/ui/model/CompositeType.js +2 -2
  423. package/src/sap/ui/model/Context.js +1 -1
  424. package/src/sap/ui/model/ContextBinding.js +1 -1
  425. package/src/sap/ui/model/DataState.js +2 -2
  426. package/src/sap/ui/model/Filter.js +1 -1
  427. package/src/sap/ui/model/FilterOperator.js +1 -1
  428. package/src/sap/ui/model/FilterProcessor.js +1 -1
  429. package/src/sap/ui/model/FilterType.js +1 -1
  430. package/src/sap/ui/model/FormatException.js +1 -1
  431. package/src/sap/ui/model/ListBinding.js +1 -1
  432. package/src/sap/ui/model/MetaModel.js +2 -2
  433. package/src/sap/ui/model/Model.js +2 -2
  434. package/src/sap/ui/model/ParseException.js +1 -1
  435. package/src/sap/ui/model/PropertyBinding.js +1 -1
  436. package/src/sap/ui/model/SelectionModel.js +2 -2
  437. package/src/sap/ui/model/SimpleType.js +2 -2
  438. package/src/sap/ui/model/Sorter.js +1 -1
  439. package/src/sap/ui/model/SorterProcessor.js +1 -1
  440. package/src/sap/ui/model/StaticBinding.js +1 -1
  441. package/src/sap/ui/model/TreeAutoExpandMode.js +2 -2
  442. package/src/sap/ui/model/TreeBinding.js +1 -1
  443. package/src/sap/ui/model/TreeBindingAdapter.js +1 -1
  444. package/src/sap/ui/model/TreeBindingCompatibilityAdapter.js +1 -1
  445. package/src/sap/ui/model/TreeBindingUtils.js +1 -1
  446. package/src/sap/ui/model/Type.js +2 -2
  447. package/src/sap/ui/model/ValidateException.js +1 -1
  448. package/src/sap/ui/model/_Helper.js +1 -1
  449. package/src/sap/ui/model/analytics/AnalyticalBinding.js +1 -1
  450. package/src/sap/ui/model/analytics/AnalyticalTreeBindingAdapter.js +1 -1
  451. package/src/sap/ui/model/analytics/AnalyticalVersionInfo.js +1 -1
  452. package/src/sap/ui/model/analytics/BatchResponseCollector.js +1 -1
  453. package/src/sap/ui/model/analytics/ODataModelAdapter.js +1 -1
  454. package/src/sap/ui/model/analytics/odata4analytics.js +1 -1
  455. package/src/sap/ui/model/base/ManagedObjectModel.js +1 -1
  456. package/src/sap/ui/model/json/JSONListBinding.js +1 -1
  457. package/src/sap/ui/model/json/JSONModel.js +2 -2
  458. package/src/sap/ui/model/json/JSONPropertyBinding.js +1 -1
  459. package/src/sap/ui/model/json/JSONTreeBinding.js +1 -1
  460. package/src/sap/ui/model/message/MessageListBinding.js +1 -1
  461. package/src/sap/ui/model/message/MessageModel.js +2 -2
  462. package/src/sap/ui/model/message/MessagePropertyBinding.js +1 -1
  463. package/src/sap/ui/model/odata/AnnotationHelper.js +1 -1
  464. package/src/sap/ui/model/odata/AnnotationParser.js +1 -1
  465. package/src/sap/ui/model/odata/CountMode.js +1 -1
  466. package/src/sap/ui/model/odata/Filter.js +1 -1
  467. package/src/sap/ui/model/odata/MessageScope.js +1 -1
  468. package/src/sap/ui/model/odata/ODataAnnotations.js +2 -2
  469. package/src/sap/ui/model/odata/ODataContextBinding.js +1 -1
  470. package/src/sap/ui/model/odata/ODataListBinding.js +1 -1
  471. package/src/sap/ui/model/odata/ODataMessageParser.js +2 -2
  472. package/src/sap/ui/model/odata/ODataMetaModel.js +2 -2
  473. package/src/sap/ui/model/odata/ODataMetadata.js +2 -2
  474. package/src/sap/ui/model/odata/ODataModel.js +2 -2
  475. package/src/sap/ui/model/odata/ODataPropertyBinding.js +1 -1
  476. package/src/sap/ui/model/odata/ODataTreeBinding.js +1 -1
  477. package/src/sap/ui/model/odata/ODataTreeBindingAdapter.js +1 -1
  478. package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +1 -1
  479. package/src/sap/ui/model/odata/ODataUtils.js +1 -1
  480. package/src/sap/ui/model/odata/OperationMode.js +1 -1
  481. package/src/sap/ui/model/odata/UpdateMethod.js +1 -1
  482. package/src/sap/ui/model/odata/_AnnotationHelperBasics.js +1 -1
  483. package/src/sap/ui/model/odata/_AnnotationHelperExpression.js +1 -1
  484. package/src/sap/ui/model/odata/_ODataMetaModelUtils.js +1 -1
  485. package/src/sap/ui/model/odata/type/Boolean.js +2 -2
  486. package/src/sap/ui/model/odata/type/Byte.js +2 -2
  487. package/src/sap/ui/model/odata/type/Currency.js +2 -2
  488. package/src/sap/ui/model/odata/type/Date.js +2 -2
  489. package/src/sap/ui/model/odata/type/DateTime.js +2 -2
  490. package/src/sap/ui/model/odata/type/DateTimeBase.js +2 -2
  491. package/src/sap/ui/model/odata/type/DateTimeOffset.js +2 -2
  492. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +2 -2
  493. package/src/sap/ui/model/odata/type/Decimal.js +2 -2
  494. package/src/sap/ui/model/odata/type/Double.js +2 -2
  495. package/src/sap/ui/model/odata/type/Guid.js +2 -2
  496. package/src/sap/ui/model/odata/type/Int.js +2 -2
  497. package/src/sap/ui/model/odata/type/Int16.js +2 -2
  498. package/src/sap/ui/model/odata/type/Int32.js +2 -2
  499. package/src/sap/ui/model/odata/type/Int64.js +2 -2
  500. package/src/sap/ui/model/odata/type/ODataType.js +2 -2
  501. package/src/sap/ui/model/odata/type/Raw.js +2 -2
  502. package/src/sap/ui/model/odata/type/SByte.js +2 -2
  503. package/src/sap/ui/model/odata/type/Single.js +2 -2
  504. package/src/sap/ui/model/odata/type/Stream.js +2 -2
  505. package/src/sap/ui/model/odata/type/String.js +2 -2
  506. package/src/sap/ui/model/odata/type/Time.js +2 -2
  507. package/src/sap/ui/model/odata/type/TimeOfDay.js +2 -2
  508. package/src/sap/ui/model/odata/type/Unit.js +2 -2
  509. package/src/sap/ui/model/odata/type/UnitMixin.js +1 -1
  510. package/src/sap/ui/model/odata/v2/BatchMode.js +1 -1
  511. package/src/sap/ui/model/odata/v2/Context.js +2 -2
  512. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +2 -2
  513. package/src/sap/ui/model/odata/v2/ODataContextBinding.js +1 -1
  514. package/src/sap/ui/model/odata/v2/ODataListBinding.js +1 -1
  515. package/src/sap/ui/model/odata/v2/ODataModel.js +2 -2
  516. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +2 -2
  517. package/src/sap/ui/model/odata/v2/_CreatedContextsCache.js +1 -1
  518. package/src/sap/ui/model/odata/v4/AnnotationHelper.js +1 -1
  519. package/src/sap/ui/model/odata/v4/Context.js +2 -2
  520. package/src/sap/ui/model/odata/v4/ODataBinding.js +1 -1
  521. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +2 -2
  522. package/src/sap/ui/model/odata/v4/ODataListBinding.js +2 -2
  523. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +2 -2
  524. package/src/sap/ui/model/odata/v4/ODataModel.js +2 -2
  525. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +1 -1
  526. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +2 -2
  527. package/src/sap/ui/model/odata/v4/ODataUtils.js +1 -1
  528. package/src/sap/ui/model/odata/v4/SubmitMode.js +1 -1
  529. package/src/sap/ui/model/odata/v4/ValueListType.js +1 -1
  530. package/src/sap/ui/model/odata/v4/_AnnotationHelperExpression.js +1 -1
  531. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +1 -1
  532. package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +1 -1
  533. package/src/sap/ui/model/odata/v4/lib/_Batch.js +1 -1
  534. package/src/sap/ui/model/odata/v4/lib/_Cache.js +1 -1
  535. package/src/sap/ui/model/odata/v4/lib/_ConcatHelper.js +1 -1
  536. package/src/sap/ui/model/odata/v4/lib/_GroupLock.js +1 -1
  537. package/src/sap/ui/model/odata/v4/lib/_Helper.js +1 -1
  538. package/src/sap/ui/model/odata/v4/lib/_MetadataConverter.js +1 -1
  539. package/src/sap/ui/model/odata/v4/lib/_MetadataRequestor.js +1 -1
  540. package/src/sap/ui/model/odata/v4/lib/_MinMaxHelper.js +1 -1
  541. package/src/sap/ui/model/odata/v4/lib/_Parser.js +1 -1
  542. package/src/sap/ui/model/odata/v4/lib/_Requestor.js +1 -1
  543. package/src/sap/ui/model/odata/v4/lib/_V2MetadataConverter.js +1 -1
  544. package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +1 -1
  545. package/src/sap/ui/model/odata/v4/lib/_V4MetadataConverter.js +1 -1
  546. package/src/sap/ui/model/resource/ResourceModel.js +2 -2
  547. package/src/sap/ui/model/resource/ResourcePropertyBinding.js +1 -1
  548. package/src/sap/ui/model/type/Boolean.js +2 -2
  549. package/src/sap/ui/model/type/Currency.js +2 -2
  550. package/src/sap/ui/model/type/Date.js +2 -2
  551. package/src/sap/ui/model/type/DateInterval.js +2 -2
  552. package/src/sap/ui/model/type/DateTime.js +2 -2
  553. package/src/sap/ui/model/type/DateTimeInterval.js +2 -2
  554. package/src/sap/ui/model/type/FileSize.js +2 -2
  555. package/src/sap/ui/model/type/Float.js +2 -2
  556. package/src/sap/ui/model/type/Integer.js +2 -2
  557. package/src/sap/ui/model/type/String.js +2 -2
  558. package/src/sap/ui/model/type/Time.js +2 -2
  559. package/src/sap/ui/model/type/TimeInterval.js +2 -2
  560. package/src/sap/ui/model/type/Unit.js +2 -2
  561. package/src/sap/ui/model/xml/XMLListBinding.js +1 -1
  562. package/src/sap/ui/model/xml/XMLModel.js +2 -2
  563. package/src/sap/ui/model/xml/XMLPropertyBinding.js +1 -1
  564. package/src/sap/ui/model/xml/XMLTreeBinding.js +1 -1
  565. package/src/sap/ui/performance/BeaconRequest.js +1 -1
  566. package/src/sap/ui/performance/Measurement.js +1 -1
  567. package/src/sap/ui/performance/XHRInterceptor.js +1 -1
  568. package/src/sap/ui/performance/trace/FESR.js +1 -1
  569. package/src/sap/ui/performance/trace/FESRHelper.js +1 -1
  570. package/src/sap/ui/performance/trace/Interaction.js +1 -1
  571. package/src/sap/ui/performance/trace/Passport.js +1 -1
  572. package/src/sap/ui/performance/trace/initTraces.js +1 -1
  573. package/src/sap/ui/qunit/QUnitUtils.js +1 -1
  574. package/src/sap/ui/qunit/qunit-2-css.js +1 -1
  575. package/src/sap/ui/qunit/qunit-coverage.js +1 -1
  576. package/src/sap/ui/qunit/qunit-css.js +1 -1
  577. package/src/sap/ui/qunit/qunit-junit.js +1 -1
  578. package/src/sap/ui/qunit/qunit-redirect.js +1 -1
  579. package/src/sap/ui/qunit/sinon-qunit-bridge.js +1 -1
  580. package/src/sap/ui/qunit/utils/ControlIterator.js +2 -2
  581. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +2 -2
  582. package/src/sap/ui/qunit/utils/createAndAppendDiv.js +1 -1
  583. package/src/sap/ui/qunit/utils/waitForThemeApplied.js +1 -1
  584. package/src/sap/ui/security/FrameOptions.js +1 -1
  585. package/src/sap/ui/test/BlanketReporter.js +1 -1
  586. package/src/sap/ui/test/BranchTracking.js +1 -1
  587. package/src/sap/ui/test/Opa.js +1 -1
  588. package/src/sap/ui/test/Opa5.js +1 -1
  589. package/src/sap/ui/test/OpaBuilder.js +1 -1
  590. package/src/sap/ui/test/OpaExtension.js +1 -1
  591. package/src/sap/ui/test/OpaPlugin.js +1 -1
  592. package/src/sap/ui/test/PageObjectFactory.js +1 -1
  593. package/src/sap/ui/test/RecordReplay.js +1 -1
  594. package/src/sap/ui/test/RecorderHotkeyListener.js +1 -1
  595. package/src/sap/ui/test/TestUtils.js +1 -1
  596. package/src/sap/ui/test/_BrowserLogCollector.js +1 -1
  597. package/src/sap/ui/test/_ControlFinder.js +1 -1
  598. package/src/sap/ui/test/_LogCollector.js +1 -1
  599. package/src/sap/ui/test/_OpaLogger.js +1 -1
  600. package/src/sap/ui/test/_OpaUriParameterParser.js +1 -1
  601. package/src/sap/ui/test/_ParameterValidator.js +1 -1
  602. package/src/sap/ui/test/_UsageReport.js +1 -1
  603. package/src/sap/ui/test/_ValidationParameters.js +1 -1
  604. package/src/sap/ui/test/actions/Action.js +1 -1
  605. package/src/sap/ui/test/actions/Drag.js +1 -1
  606. package/src/sap/ui/test/actions/Drop.js +1 -1
  607. package/src/sap/ui/test/actions/EnterText.js +1 -1
  608. package/src/sap/ui/test/actions/Press.js +1 -1
  609. package/src/sap/ui/test/actions/Scroll.js +1 -1
  610. package/src/sap/ui/test/autowaiter/WaiterBase.js +1 -1
  611. package/src/sap/ui/test/autowaiter/_UIUpdatesWaiter.js +1 -1
  612. package/src/sap/ui/test/autowaiter/_XHRWaiter.js +1 -1
  613. package/src/sap/ui/test/autowaiter/_autoWaiter.js +1 -1
  614. package/src/sap/ui/test/autowaiter/_autoWaiterAsync.js +1 -1
  615. package/src/sap/ui/test/autowaiter/_moduleWaiter.js +1 -1
  616. package/src/sap/ui/test/autowaiter/_navigationContainerWaiter.js +1 -1
  617. package/src/sap/ui/test/autowaiter/_promiseWaiter.js +1 -1
  618. package/src/sap/ui/test/autowaiter/_resourceWaiter.js +1 -1
  619. package/src/sap/ui/test/autowaiter/_timeoutWaiter.js +1 -1
  620. package/src/sap/ui/test/autowaiter/_utils.js +1 -1
  621. package/src/sap/ui/test/generic/GenericTestCollection.js +1 -1
  622. package/src/sap/ui/test/generic/TestBase.js +2 -2
  623. package/src/sap/ui/test/generic/Utils.js +1 -1
  624. package/src/sap/ui/test/generic/_EnforceSemanticRendering.js +1 -1
  625. package/src/sap/ui/test/gherkin/GherkinTestGenerator.js +1 -1
  626. package/src/sap/ui/test/gherkin/StepDefinitions.js +1 -1
  627. package/src/sap/ui/test/gherkin/dataTableUtils.js +1 -1
  628. package/src/sap/ui/test/gherkin/opa5TestHarness.js +1 -1
  629. package/src/sap/ui/test/gherkin/qUnitTestHarness.js +1 -1
  630. package/src/sap/ui/test/gherkin/simpleGherkinParser.js +1 -1
  631. package/src/sap/ui/test/launchers/componentLauncher.js +1 -1
  632. package/src/sap/ui/test/launchers/iFrameLauncher.js +1 -1
  633. package/src/sap/ui/test/matchers/AggregationContainsPropertyEqual.js +1 -1
  634. package/src/sap/ui/test/matchers/AggregationEmpty.js +1 -1
  635. package/src/sap/ui/test/matchers/AggregationFilled.js +1 -1
  636. package/src/sap/ui/test/matchers/AggregationLengthEquals.js +1 -1
  637. package/src/sap/ui/test/matchers/Ancestor.js +1 -1
  638. package/src/sap/ui/test/matchers/BindingPath.js +1 -1
  639. package/src/sap/ui/test/matchers/Descendant.js +1 -1
  640. package/src/sap/ui/test/matchers/I18NText.js +1 -1
  641. package/src/sap/ui/test/matchers/Interactable.js +1 -1
  642. package/src/sap/ui/test/matchers/LabelFor.js +1 -1
  643. package/src/sap/ui/test/matchers/Matcher.js +1 -1
  644. package/src/sap/ui/test/matchers/MatcherFactory.js +1 -1
  645. package/src/sap/ui/test/matchers/Properties.js +1 -1
  646. package/src/sap/ui/test/matchers/PropertyStrictEquals.js +1 -1
  647. package/src/sap/ui/test/matchers/Sibling.js +1 -1
  648. package/src/sap/ui/test/matchers/Visible.js +1 -1
  649. package/src/sap/ui/test/matchers/_Busy.js +1 -1
  650. package/src/sap/ui/test/matchers/_Editable.js +1 -1
  651. package/src/sap/ui/test/matchers/_Enabled.js +1 -1
  652. package/src/sap/ui/test/matchers/_Visitor.js +1 -1
  653. package/src/sap/ui/test/matchers/matchers.js +1 -1
  654. package/src/sap/ui/test/opaQunit.js +1 -1
  655. package/src/sap/ui/test/pipelines/ActionPipeline.js +1 -1
  656. package/src/sap/ui/test/pipelines/MatcherPipeline.js +1 -1
  657. package/src/sap/ui/test/pipelines/PipelineFactory.js +1 -1
  658. package/src/sap/ui/test/qunitPause.js +1 -1
  659. package/src/sap/ui/test/selectors/_BindingPath.js +1 -1
  660. package/src/sap/ui/test/selectors/_ControlSelectorGenerator.js +1 -1
  661. package/src/sap/ui/test/selectors/_ControlSelectorValidator.js +1 -1
  662. package/src/sap/ui/test/selectors/_ControlType.js +1 -1
  663. package/src/sap/ui/test/selectors/_DropdownItem.js +1 -1
  664. package/src/sap/ui/test/selectors/_GlobalID.js +1 -1
  665. package/src/sap/ui/test/selectors/_LabelFor.js +1 -1
  666. package/src/sap/ui/test/selectors/_Properties.js +1 -1
  667. package/src/sap/ui/test/selectors/_Selector.js +1 -1
  668. package/src/sap/ui/test/selectors/_TableRowItem.js +1 -1
  669. package/src/sap/ui/test/selectors/_ViewID.js +1 -1
  670. package/src/sap/ui/test/selectors/_selectors.js +1 -1
  671. package/src/sap/ui/test/starter/_configureLoader.js +1 -1
  672. package/src/sap/ui/test/starter/_setupAndStart.js +1 -1
  673. package/src/sap/ui/test/starter/_utils.js +1 -1
  674. package/src/sap/ui/test/starter/createSuite.js +1 -1
  675. package/src/sap/ui/test/starter/runTest.js +1 -1
  676. package/src/sap/ui/thirdparty/RequestRecorder.js +1 -1
  677. package/src/sap/ui/thirdparty/caja-html-sanitizer.js +1 -1
  678. package/src/sap/ui/util/ActivityDetection.js +1 -1
  679. package/src/sap/ui/util/Mobile.js +1 -1
  680. package/src/sap/ui/util/Storage.js +2 -2
  681. package/src/sap/ui/util/XMLHelper.js +1 -1
  682. package/src/sap/ui/util/_FeatureDetection.js +1 -1
  683. package/src/sap/ui/util/defaultLinkTypes.js +1 -1
  684. package/src/sap/ui/util/isCrossOriginURL.js +1 -1
  685. package/src/sap/ui/util/openWindow.js +1 -1
  686. package/src/sap-ui-boot.js +1 -1
  687. package/src/sap-ui-core-nojQuery.js +1 -1
  688. package/src/sap-ui-core.js +1 -1
  689. package/src/sap-ui-debug.js +1 -1
  690. package/src/ui5loader-autoconfig.js +1 -1
  691. package/src/ui5loader.js +1 -1
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2022 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 2009-2023 SAP SE or an SAP affiliate company.
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
@@ -880,10 +880,105 @@ sap.ui.define([
880
880
  };
881
881
 
882
882
  /**
883
- * Pattern elements
883
+ * Creates a pattern symbol object containing all needed functions to be used for formatting and parsing.
884
+ * Functions which are not given in <code>mParameters</code> are provided with a default implementation.
885
+ *
886
+ * @param {Object<string,any>} mParameters
887
+ * A parameters map for creating a pattern symbol
888
+ * @param {string} mParameters.name
889
+ * An internal unique name describing this symbol
890
+ * @param {function(Object<string, any>, sap.ui.core.date.UniversalDate, boolean, sap.ui.core.format.DateFormat,
891
+ * string): string} [mParameters.format]
892
+ * A function to format the symbol part based on a given date object
893
+ * @param {function(string, Object<string, any>, sap.ui.core.format.DateFormat, object, string): object}
894
+ * [mParameters.parse]
895
+ * A function to parse the symbol part based on a given date string
896
+ * @param {boolean|function(int): boolean} [mParameters.isNumeric]
897
+ * A boolean to describe, or a function to evaluate, whether the pattern symbol expects a
898
+ * numeric representation. For example pattern "MM" results in "02" and is therefore numeric,
899
+ * but "MMM" results in "Feb" which is not numeric.
900
+ * @returns {{name: string, format: function, parse: function, isNumeric: function}}
901
+ * A pattern symbol object
902
+ *
903
+ * @private
904
+ */
905
+ DateFormat._createPatternSymbol = function (mParameters) {
906
+ var fnIsNumeric = typeof mParameters.isNumeric === "function" && mParameters.isNumeric
907
+ // Default: false
908
+ || function () { return mParameters.isNumeric || false; };
909
+
910
+ return {
911
+ name: mParameters.name,
912
+
913
+ /**
914
+ * Formatter for a pattern symbol.
915
+ *
916
+ * @param {Object<string, any>} oField
917
+ * The date pattern field as parsed by {@link DateFormat#parseCldrDatePattern}
918
+ * @param {sap.ui.core.date.UniversalDate} oDate
919
+ * The date object to format
920
+ * @param {boolean} bUTC
921
+ * Whether the UTC option is set
922
+ * @param {sap.ui.core.format.DateFormat} oFormat
923
+ * The <code>DateFormat</code> instance
924
+ * @returns {string}
925
+ * The formatted date information for this date pattern part
926
+ */
927
+ format: mParameters.format
928
+ // not supported, but reserved
929
+ || function () { return ""; },
930
+
931
+ /**
932
+ * Parser for a pattern symbol.
933
+ *
934
+ * @param {string} sValue
935
+ * The given input
936
+ * @param {Object<string, any>} oPart
937
+ * The date pattern field as parsed by {@link DateFormat#parseCldrDatePattern}
938
+ * @param {sap.ui.core.format.DateFormat} oFormat
939
+ * The <code>DateFormat</code> instance
940
+ * @param {object} oConfig
941
+ * The configuration object for parsing the value
942
+ * @param {object} oConfig.dateValue
943
+ * The already parsed date fields
944
+ * @param {boolean} oConfig.exactLength
945
+ * Whether parsing with the exact length specified by {@link DateFormat#parseCldrDatePattern} is needed
946
+ * @param {object[]} oConfig.formatArray
947
+ * The complete format array as parsed by {@link DateFormat#parseCldrDatePattern}
948
+ * @param {int} oConfig.index
949
+ * The current index in the format array
950
+ * @param {boolean} oConfig.strict
951
+ * Whether to disallow overflows for component values of a date (see
952
+ * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/Date).
953
+ * Note that the corresponding checks are just for number ranges which are possible <em>at max</em>
954
+ * without overflow; the check for day does not consider the month and year to compute the maximum
955
+ * number of days allowed.
956
+ * @param {string} sTimezone
957
+ * The IANA timezone ID
958
+ * @returns {object}
959
+ * The parsed date information for this date pattern part; could contain the property <code>valid</code>
960
+ * set to <code>false</code> if parsing was not successful
961
+ */
962
+ parse: mParameters.parse
963
+ // not supported, but reserved
964
+ || function () { return {}; },
965
+
966
+ /**
967
+ * Evaluates whether this symbol has a numeric representation.
968
+ *
969
+ * @param {int} [iDigits] The number of repetitions of the pattern symbol, e.g. <code>3</code> for "aaa"
970
+ * @returns {boolean} Whether this symbol has a numeric representation
971
+ */
972
+ isNumeric: fnIsNumeric
973
+ };
974
+ };
975
+
976
+ /**
977
+ * Provides functionality to format and parse a given pattern symbol.
978
+ * @see https://unicode.org/reports/tr35/tr35-dates.html#table-date-field-symbol-table
884
979
  */
885
980
  DateFormat.prototype.oSymbols = {
886
- "": {
981
+ "": DateFormat._createPatternSymbol({
887
982
  name: "text",
888
983
  format: function(oField, oDate) {
889
984
  return oField.value;
@@ -942,8 +1037,8 @@ sap.ui.define([
942
1037
  };
943
1038
  }
944
1039
  }
945
- },
946
- "G": {
1040
+ }),
1041
+ "G": DateFormat._createPatternSymbol({
947
1042
  name: "era",
948
1043
  format: function(oField, oDate, bUTC, oFormat) {
949
1044
  var iEra = oDate.getUTCEra();
@@ -973,8 +1068,8 @@ sap.ui.define([
973
1068
  valid: oParseHelper.checkValid(oPart.type, true, oFormat)
974
1069
  };
975
1070
  }
976
- },
977
- "y": {
1071
+ }),
1072
+ "y": DateFormat._createPatternSymbol({
978
1073
  name: "year",
979
1074
  format: function(oField, oDate, bUTC, oFormat) {
980
1075
  var iYear = oDate.getUTCFullYear();
@@ -992,15 +1087,19 @@ sap.ui.define([
992
1087
  return sYear.padStart(oField.digits, "0");
993
1088
  },
994
1089
  parse: function(sValue, oPart, oFormat, oConfig) {
995
- var sCalendarType = oFormat.oFormatOptions.calendarType;
996
- var sPart;
1090
+ var iExpectedDigits, sPart, bPartInvalid,
1091
+ sCalendarType = oFormat.oFormatOptions.calendarType;
1092
+
997
1093
  if (oPart.digits == 1) {
998
- sPart = oParseHelper.findNumbers(sValue, 4);
1094
+ iExpectedDigits = 4;
999
1095
  } else if (oPart.digits == 2) {
1000
- sPart = oParseHelper.findNumbers(sValue, 2);
1096
+ iExpectedDigits = 2;
1001
1097
  } else {
1002
- sPart = oParseHelper.findNumbers(sValue, oPart.digits);
1098
+ iExpectedDigits = oPart.digits;
1003
1099
  }
1100
+ sPart = oParseHelper.findNumbers(sValue, iExpectedDigits);
1101
+ bPartInvalid = sPart === ""
1102
+ || oConfig.exactLength && sPart.length !== iExpectedDigits;
1004
1103
 
1005
1104
  var iYear = parseInt(sPart);
1006
1105
  // Find the right century for two-digit years
@@ -1036,12 +1135,13 @@ sap.ui.define([
1036
1135
  }
1037
1136
  return {
1038
1137
  length: sPart.length,
1039
- valid: oParseHelper.checkValid(oPart.type, sPart === "", oFormat),
1138
+ valid: oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat),
1040
1139
  year: iYear
1041
1140
  };
1042
- }
1043
- },
1044
- "Y": {
1141
+ },
1142
+ isNumeric: true
1143
+ }),
1144
+ "Y": DateFormat._createPatternSymbol({
1045
1145
  name: "weekYear",
1046
1146
  format: function(oField, oDate, bUTC, oFormat) {
1047
1147
  var oWeek = oDate.getUTCWeek(oFormat.oLocale, oFormat.oFormatOptions.calendarWeekNumbering);
@@ -1060,15 +1160,20 @@ sap.ui.define([
1060
1160
  return sWeekYear.padStart(oField.digits, "0");
1061
1161
  },
1062
1162
  parse: function(sValue, oPart, oFormat, oConfig) {
1063
- var sCalendarType = oFormat.oFormatOptions.calendarType;
1064
- var sPart;
1163
+ var iExpectedDigits, sPart, bPartInvalid,
1164
+ sCalendarType = oFormat.oFormatOptions.calendarType;
1165
+
1065
1166
  if (oPart.digits == 1) {
1066
- sPart = oParseHelper.findNumbers(sValue, 4);
1167
+ iExpectedDigits = 4;
1067
1168
  } else if (oPart.digits == 2) {
1068
- sPart = oParseHelper.findNumbers(sValue, 2);
1169
+ iExpectedDigits = 2;
1069
1170
  } else {
1070
- sPart = oParseHelper.findNumbers(sValue, oPart.digits);
1171
+ iExpectedDigits = oPart.digits;
1071
1172
  }
1173
+ sPart = oParseHelper.findNumbers(sValue, iExpectedDigits);
1174
+ bPartInvalid = sPart === ""
1175
+ || oConfig.exactLength && sPart.length !== iExpectedDigits;
1176
+
1072
1177
  var iYear = parseInt(sPart);
1073
1178
  var iWeekYear = iYear;
1074
1179
  // Find the right century for two-digit years
@@ -1087,13 +1192,14 @@ sap.ui.define([
1087
1192
  }
1088
1193
  return {
1089
1194
  length: sPart.length,
1090
- valid: oParseHelper.checkValid(oPart.type, sPart === "", oFormat),
1195
+ valid: oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat),
1091
1196
  year: iYear,
1092
1197
  weekYear: iWeekYear
1093
1198
  };
1094
- }
1095
- },
1096
- "M": {
1199
+ },
1200
+ isNumeric: true
1201
+ }),
1202
+ "M": DateFormat._createPatternSymbol({
1097
1203
  name: "month",
1098
1204
  format: function(oField, oDate, bUTC, oFormat) {
1099
1205
  var iMonth = oDate.getUTCMonth();
@@ -1108,14 +1214,18 @@ sap.ui.define([
1108
1214
  }
1109
1215
  },
1110
1216
  parse: function(sValue, oPart, oFormat, oConfig) {
1111
- var aMonthsVariants = [oFormat.aMonthsWide, oFormat.aMonthsWideSt, oFormat.aMonthsAbbrev, oFormat.aMonthsAbbrevSt, oFormat.aMonthsNarrow, oFormat.aMonthsNarrowSt];
1112
- var bValid;
1113
- var iMonth;
1114
- var sPart;
1217
+ var iMonth, sPart, bPartInvalid, bValid,
1218
+ aMonthsVariants = [
1219
+ oFormat.aMonthsWide, oFormat.aMonthsWideSt,
1220
+ oFormat.aMonthsAbbrev, oFormat.aMonthsAbbrevSt,
1221
+ oFormat.aMonthsNarrow, oFormat.aMonthsNarrowSt
1222
+ ];
1115
1223
 
1116
1224
  if (oPart.digits < 3) {
1117
1225
  sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2));
1118
- bValid = oParseHelper.checkValid(oPart.type, sPart === "", oFormat);
1226
+ bPartInvalid = sPart === ""
1227
+ || oConfig.exactLength && sPart.length < 2;
1228
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat);
1119
1229
  iMonth = parseInt(sPart) - 1;
1120
1230
  if (oConfig.strict && (iMonth > 11 || iMonth < 0)) {
1121
1231
  bValid = false;
@@ -1138,9 +1248,12 @@ sap.ui.define([
1138
1248
  length: sPart ? sPart.length : 0,
1139
1249
  valid: bValid
1140
1250
  };
1251
+ },
1252
+ isNumeric: function (iDigits) {
1253
+ return iDigits < 3;
1141
1254
  }
1142
- },
1143
- "L": {
1255
+ }),
1256
+ "L": DateFormat._createPatternSymbol({
1144
1257
  name: "monthStandalone",
1145
1258
  format: function(oField, oDate, bUTC, oFormat) {
1146
1259
  var iMonth = oDate.getUTCMonth();
@@ -1155,14 +1268,18 @@ sap.ui.define([
1155
1268
  }
1156
1269
  },
1157
1270
  parse: function(sValue, oPart, oFormat, oConfig) {
1158
- var aMonthsVariants = [oFormat.aMonthsWide, oFormat.aMonthsWideSt, oFormat.aMonthsAbbrev, oFormat.aMonthsAbbrevSt, oFormat.aMonthsNarrow, oFormat.aMonthsNarrowSt];
1159
- var bValid;
1160
- var iMonth;
1161
- var sPart;
1271
+ var iMonth, sPart, bPartInvalid, bValid,
1272
+ aMonthsVariants = [
1273
+ oFormat.aMonthsWide, oFormat.aMonthsWideSt,
1274
+ oFormat.aMonthsAbbrev, oFormat.aMonthsAbbrevSt,
1275
+ oFormat.aMonthsNarrow, oFormat.aMonthsNarrowSt
1276
+ ];
1162
1277
 
1163
1278
  if (oPart.digits < 3) {
1164
1279
  sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2));
1165
- bValid = oParseHelper.checkValid(oPart.type, sPart === "", oFormat);
1280
+ bPartInvalid = sPart === ""
1281
+ || oConfig.exactLength && sPart.length < 2;
1282
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat);
1166
1283
  iMonth = parseInt(sPart) - 1;
1167
1284
  if (oConfig.strict && (iMonth > 11 || iMonth < 0)) {
1168
1285
  bValid = false;
@@ -1185,9 +1302,12 @@ sap.ui.define([
1185
1302
  length: sPart ? sPart.length : 0,
1186
1303
  valid: bValid
1187
1304
  };
1305
+ },
1306
+ isNumeric: function (iDigits) {
1307
+ return iDigits < 3;
1188
1308
  }
1189
- },
1190
- "w": {
1309
+ }),
1310
+ "w": DateFormat._createPatternSymbol({
1191
1311
  name: "weekInYear",
1192
1312
  format: function(oField, oDate, bUTC, oFormat) {
1193
1313
  var oWeek = oDate.getUTCWeek(oFormat.oLocale, oFormat.oFormatOptions.calendarWeekNumbering);
@@ -1201,16 +1321,16 @@ sap.ui.define([
1201
1321
  return sWeek;
1202
1322
  },
1203
1323
  parse: function(sValue, oPart, oFormat, oConfig) {
1204
- var bValid;
1205
- var sPart;
1206
- var iWeek;
1207
- var iLength = 0;
1324
+ var sPart, bPartInvalid, bValid, iWeek,
1325
+ iLength = 0;
1208
1326
 
1209
1327
  if (oPart.digits < 3) {
1210
1328
  sPart = oParseHelper.findNumbers(sValue, 2);
1211
1329
  iLength = sPart.length;
1212
1330
  iWeek = parseInt(sPart) - 1;
1213
- bValid = oParseHelper.checkValid(oPart.type, !sPart, oFormat);
1331
+ bPartInvalid = !sPart
1332
+ || oConfig.exactLength && iLength < 2;
1333
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat);
1214
1334
  } else {
1215
1335
  sPart = oFormat.oLocaleData.getCalendarWeek(oPart.digits === 3 ? "narrow" : "wide");
1216
1336
  sPart = sPart.replace("{0}", "([0-9]+)");
@@ -1231,37 +1351,30 @@ sap.ui.define([
1231
1351
  valid: bValid,
1232
1352
  week: iWeek
1233
1353
  };
1234
- }
1235
- },
1236
- "W": {
1237
- name: "weekInMonth",
1238
- format: function(oField, oDate) {
1239
- // not supported
1240
- return "";
1241
1354
  },
1242
- parse: function() {
1243
- return {};
1244
- }
1245
- },
1246
- "D": {
1247
- name: "dayInYear",
1248
- format: function(oField, oDate) {
1249
-
1250
- },
1251
- parse: function() {
1252
- return {};
1253
- }
1254
- },
1255
- "d": {
1355
+ isNumeric: function (iDigits) {
1356
+ return iDigits < 3;
1357
+ }
1358
+ }),
1359
+ "W": DateFormat._createPatternSymbol({
1360
+ name: "weekInMonth"
1361
+ }),
1362
+ "D": DateFormat._createPatternSymbol({
1363
+ name: "dayInYear"
1364
+ }),
1365
+ "d": DateFormat._createPatternSymbol({
1256
1366
  name: "day",
1257
1367
  format: function(oField, oDate) {
1258
1368
  var iDate = oDate.getUTCDate();
1259
1369
  return String(iDate).padStart(oField.digits, "0");
1260
1370
  },
1261
1371
  parse: function(sValue, oPart, oFormat, oConfig) {
1262
- var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2));
1263
- var bValid = oParseHelper.checkValid(oPart.type, sPart === "", oFormat);
1264
- var iDay = parseInt(sPart);
1372
+ var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2)),
1373
+ bPartInvalid = sPart === ""
1374
+ || oConfig.exactLength && sPart.length < 2,
1375
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat),
1376
+ iDay = parseInt(sPart);
1377
+
1265
1378
  if (oConfig.strict && (iDay > 31 || iDay < 1)) {
1266
1379
  bValid = false;
1267
1380
  }
@@ -1270,9 +1383,10 @@ sap.ui.define([
1270
1383
  length: sPart.length,
1271
1384
  valid: bValid
1272
1385
  };
1273
- }
1274
- },
1275
- "Q": {
1386
+ },
1387
+ isNumeric: true
1388
+ }),
1389
+ "Q": DateFormat._createPatternSymbol({
1276
1390
  name: "quarter",
1277
1391
  format: function(oField, oDate, bUTC, oFormat) {
1278
1392
  var iQuarter = oDate.getUTCQuarter();
@@ -1287,14 +1401,14 @@ sap.ui.define([
1287
1401
  }
1288
1402
  },
1289
1403
  parse: function(sValue, oPart, oFormat, oConfig) {
1290
- var bValid;
1291
- var iQuarter;
1292
- var sPart;
1404
+ var sPart, bPartInvalid, iQuarter, bValid;
1293
1405
  var aQuartersVariants = [oFormat.aQuartersWide, oFormat.aQuartersWideSt, oFormat.aQuartersAbbrev, oFormat.aQuartersAbbrevSt, oFormat.aQuartersNarrow, oFormat.aQuartersNarrowSt];
1294
1406
 
1295
1407
  if (oPart.digits < 3) {
1296
1408
  sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2));
1297
- bValid = oParseHelper.checkValid(oPart.type, sPart === "", oFormat);
1409
+ bPartInvalid = sPart === ""
1410
+ || oConfig.exactLength && sPart.length < 2;
1411
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat);
1298
1412
  iQuarter = parseInt(sPart) - 1;
1299
1413
  if (oConfig.strict && iQuarter > 3) {
1300
1414
  bValid = false;
@@ -1318,9 +1432,12 @@ sap.ui.define([
1318
1432
  quarter: iQuarter,
1319
1433
  valid: bValid
1320
1434
  };
1435
+ },
1436
+ isNumeric: function (iDigits) {
1437
+ return iDigits < 3;
1321
1438
  }
1322
- },
1323
- "q": {
1439
+ }),
1440
+ "q": DateFormat._createPatternSymbol({
1324
1441
  name: "quarterStandalone",
1325
1442
  format: function(oField, oDate, bUTC, oFormat) {
1326
1443
  var iQuarter = oDate.getUTCQuarter();
@@ -1335,14 +1452,14 @@ sap.ui.define([
1335
1452
  }
1336
1453
  },
1337
1454
  parse: function(sValue, oPart, oFormat, oConfig) {
1338
- var bValid;
1339
- var iQuarter;
1340
- var sPart;
1455
+ var sPart, bPartInvalid, iQuarter, bValid;
1341
1456
  var aQuartersVariants = [oFormat.aQuartersWide, oFormat.aQuartersWideSt, oFormat.aQuartersAbbrev, oFormat.aQuartersAbbrevSt, oFormat.aQuartersNarrow, oFormat.aQuartersNarrowSt];
1342
1457
 
1343
1458
  if (oPart.digits < 3) {
1344
1459
  sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2));
1345
- bValid = oParseHelper.checkValid(oPart.type, sPart === "", oFormat);
1460
+ bPartInvalid = sPart === ""
1461
+ || oConfig.exactLength && sPart.length < 2;
1462
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat);
1346
1463
  iQuarter = parseInt(sPart) - 1;
1347
1464
  if (oConfig.strict && iQuarter > 3) {
1348
1465
  bValid = false;
@@ -1366,19 +1483,15 @@ sap.ui.define([
1366
1483
  quarter: iQuarter,
1367
1484
  valid: bValid
1368
1485
  };
1369
- }
1370
- },
1371
- "F": {
1372
- name: "dayOfWeekInMonth",
1373
- format: function(oField, oDate, oFormat) {
1374
- // not supported
1375
- return "";
1376
1486
  },
1377
- parse: function() {
1378
- return {};
1379
- }
1380
- },
1381
- "E": {
1487
+ isNumeric: function (iDigits) {
1488
+ return iDigits < 3;
1489
+ }
1490
+ }),
1491
+ "F": DateFormat._createPatternSymbol({
1492
+ name: "dayOfWeekInMonth"
1493
+ }),
1494
+ "E": DateFormat._createPatternSymbol({
1382
1495
  name: "dayNameInWeek", //Day of week name, format style.
1383
1496
  format: function(oField, oDate, bUTC, oFormat) {
1384
1497
  var iDay = oDate.getUTCDay();
@@ -1407,8 +1520,8 @@ sap.ui.define([
1407
1520
  }
1408
1521
  }
1409
1522
  }
1410
- },
1411
- "c": {
1523
+ }),
1524
+ "c": DateFormat._createPatternSymbol({
1412
1525
  name: "dayNameInWeekStandalone",
1413
1526
  format: function(oField, oDate, bUTC, oFormat) {
1414
1527
  var iDay = oDate.getUTCDay();
@@ -1436,23 +1549,26 @@ sap.ui.define([
1436
1549
  }
1437
1550
  }
1438
1551
  }
1439
- },
1440
- "u": {
1552
+ }),
1553
+ "u": DateFormat._createPatternSymbol({
1441
1554
  name: "dayNumberOfWeek",
1442
1555
  format: function(oField, oDate, bUTC, oFormat) {
1443
1556
  var iDay = oDate.getUTCDay();
1444
1557
  return oFormat._adaptDayOfWeek(iDay);
1445
1558
  },
1446
1559
  parse: function(sValue, oPart, oFormat, oConfig) {
1447
- var sPart = oParseHelper.findNumbers(sValue, oPart.digits);
1560
+ var sPart = oParseHelper.findNumbers(sValue, oPart.digits),
1561
+ bPartInvalid = oConfig.exactLength && sPart.length !== oPart.digits;
1448
1562
 
1449
1563
  return {
1450
1564
  dayNumberOfWeek: parseInt(sPart),
1451
- length: sPart.length
1565
+ length: sPart.length,
1566
+ valid: oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat)
1452
1567
  };
1453
- }
1454
- },
1455
- "a": {
1568
+ },
1569
+ isNumeric: true
1570
+ }),
1571
+ "a": DateFormat._createPatternSymbol({
1456
1572
  name: "amPmMarker",
1457
1573
  format: function(oField, oDate, bUTC, oFormat) {
1458
1574
  var iDayPeriod = oDate.getUTCDayPeriod();
@@ -1498,19 +1614,19 @@ sap.ui.define([
1498
1614
  length: iLength
1499
1615
  };
1500
1616
  }
1501
- },
1502
- "H": {
1617
+ }),
1618
+ "H": DateFormat._createPatternSymbol({
1503
1619
  name: "hour0_23",
1504
1620
  format: function(oField, oDate) {
1505
1621
  var iHours = oDate.getUTCHours();
1506
1622
  return String(iHours).padStart(oField.digits, "0");
1507
1623
  },
1508
1624
  parse: function(sValue, oPart, oFormat, oConfig) {
1509
- var bValid;
1510
- var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2));
1511
- var iHours = parseInt(sPart);
1512
-
1513
- bValid = oParseHelper.checkValid(oPart.type, sPart === "", oFormat);
1625
+ var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2)),
1626
+ iHours = parseInt(sPart),
1627
+ bPartInvalid = sPart === ""
1628
+ || oConfig.exactLength && sPart.length < 2,
1629
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat);
1514
1630
 
1515
1631
  if (oConfig.strict && iHours > 23) {
1516
1632
  bValid = false;
@@ -1521,9 +1637,10 @@ sap.ui.define([
1521
1637
  length: sPart.length,
1522
1638
  valid: bValid
1523
1639
  };
1524
- }
1525
- },
1526
- "k": {
1640
+ },
1641
+ isNumeric: true
1642
+ }),
1643
+ "k": DateFormat._createPatternSymbol({
1527
1644
  name: "hour1_24",
1528
1645
  format: function(oField, oDate) {
1529
1646
  var iHours = oDate.getUTCHours();
@@ -1532,11 +1649,11 @@ sap.ui.define([
1532
1649
  return sHours.padStart(oField.digits, "0");
1533
1650
  },
1534
1651
  parse: function(sValue, oPart, oFormat, oConfig) {
1535
- var bValid;
1536
- var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2));
1537
- var iHours = parseInt(sPart);
1538
-
1539
- bValid = oParseHelper.checkValid(oPart.type, sPart === "", oFormat);
1652
+ var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2)),
1653
+ iHours = parseInt(sPart),
1654
+ bPartInvalid = sPart === ""
1655
+ || oConfig.exactLength && sPart.length < 2,
1656
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat);
1540
1657
 
1541
1658
  if (iHours == 24) {
1542
1659
  iHours = 0;
@@ -1550,9 +1667,10 @@ sap.ui.define([
1550
1667
  length: sPart.length,
1551
1668
  valid: bValid
1552
1669
  };
1553
- }
1554
- },
1555
- "K": {
1670
+ },
1671
+ isNumeric: true
1672
+ }),
1673
+ "K": DateFormat._createPatternSymbol({
1556
1674
  name: "hour0_11",
1557
1675
  format: function(oField, oDate) {
1558
1676
  var iHours = oDate.getUTCHours();
@@ -1561,11 +1679,11 @@ sap.ui.define([
1561
1679
  return sHours.padStart(oField.digits, "0");
1562
1680
  },
1563
1681
  parse: function(sValue, oPart, oFormat, oConfig) {
1564
- var bValid;
1565
- var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2));
1566
- var iHours = parseInt(sPart);
1567
-
1568
- bValid = oParseHelper.checkValid(oPart.type, sPart === "", oFormat);
1682
+ var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2)),
1683
+ iHours = parseInt(sPart),
1684
+ bPartInvalid = sPart === ""
1685
+ || oConfig.exactLength && sPart.length < 2,
1686
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat);
1569
1687
 
1570
1688
  if (oConfig.strict && iHours > 11) {
1571
1689
  bValid = false;
@@ -1576,9 +1694,10 @@ sap.ui.define([
1576
1694
  length: sPart.length,
1577
1695
  valid: bValid
1578
1696
  };
1579
- }
1580
- },
1581
- "h": {
1697
+ },
1698
+ isNumeric: true
1699
+ }),
1700
+ "h": DateFormat._createPatternSymbol({
1582
1701
  name: "hour1_12",
1583
1702
  format: function(oField, oDate) {
1584
1703
  var iHours = oDate.getUTCHours();
@@ -1594,11 +1713,13 @@ sap.ui.define([
1594
1713
  return sHours.padStart(oField.digits, "0");
1595
1714
  },
1596
1715
  parse: function(sValue, oPart, oFormat, oConfig) {
1597
- var bPM = oConfig.dateValue.pm;
1598
- var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2));
1599
- var iHours = parseInt(sPart);
1716
+ var bPM = oConfig.dateValue.pm,
1717
+ sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2)),
1718
+ iHours = parseInt(sPart),
1719
+ bPartInvalid = sPart === ""
1720
+ || oConfig.exactLength && sPart.length < 2,
1721
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat);
1600
1722
 
1601
- var bValid = oParseHelper.checkValid(oPart.type, sPart === "", oFormat);
1602
1723
 
1603
1724
  if (iHours == 12) {
1604
1725
  iHours = 0;
@@ -1617,20 +1738,21 @@ sap.ui.define([
1617
1738
  pm: bPM,
1618
1739
  valid: bValid
1619
1740
  };
1620
- }
1621
- },
1622
- "m": {
1741
+ },
1742
+ isNumeric: true
1743
+ }),
1744
+ "m": DateFormat._createPatternSymbol({
1623
1745
  name: "minute",
1624
1746
  format: function(oField, oDate) {
1625
1747
  var iMinutes = oDate.getUTCMinutes();
1626
1748
  return String(iMinutes).padStart(oField.digits, "0");
1627
1749
  },
1628
1750
  parse: function(sValue, oPart, oFormat, oConfig) {
1629
- var bValid;
1630
- var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2));
1631
- var iMinutes = parseInt(sPart);
1632
-
1633
- bValid = oParseHelper.checkValid(oPart.type, sPart === "", oFormat);
1751
+ var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2)),
1752
+ iMinutes = parseInt(sPart),
1753
+ bPartInvalid = sPart === ""
1754
+ || oConfig.exactLength && sPart.length < 2,
1755
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat);
1634
1756
 
1635
1757
  if (oConfig.strict && iMinutes > 59) {
1636
1758
  bValid = false;
@@ -1641,20 +1763,22 @@ sap.ui.define([
1641
1763
  minute: iMinutes,
1642
1764
  valid: bValid
1643
1765
  };
1644
- }
1645
- },
1646
- "s": {
1766
+ },
1767
+ isNumeric: true
1768
+ }),
1769
+ "s": DateFormat._createPatternSymbol({
1647
1770
  name: "second",
1648
1771
  format: function(oField, oDate) {
1649
1772
  var iSeconds = oDate.getUTCSeconds();
1650
1773
  return String(iSeconds).padStart(oField.digits, "0");
1651
1774
  },
1652
1775
  parse: function(sValue, oPart, oFormat, oConfig) {
1653
- var bValid;
1654
- var sPart = oParseHelper.findNumbers(sValue, Math.max(oPart.digits, 2));
1655
- var iSeconds = parseInt(sPart);
1656
-
1657
- bValid = oParseHelper.checkValid(oPart.type, sPart === "", oFormat);
1776
+ var iExpectedDigits = Math.max(oPart.digits, 2),
1777
+ sPart = oParseHelper.findNumbers(sValue, iExpectedDigits),
1778
+ bPartInvalid = sPart === ""
1779
+ || oConfig.exactLength && sPart.length < iExpectedDigits,
1780
+ iSeconds = parseInt(sPart),
1781
+ bValid = oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat);
1658
1782
 
1659
1783
  if (oConfig.strict && iSeconds > 59) {
1660
1784
  bValid = false;
@@ -1665,9 +1789,10 @@ sap.ui.define([
1665
1789
  second: iSeconds,
1666
1790
  valid: bValid
1667
1791
  };
1668
- }
1669
- },
1670
- "S": {
1792
+ },
1793
+ isNumeric: true
1794
+ }),
1795
+ "S": DateFormat._createPatternSymbol({
1671
1796
  name: "fractionalsecond",
1672
1797
  format: function(oField, oDate) {
1673
1798
  var iMilliseconds = oDate.getUTCMilliseconds();
@@ -1678,8 +1803,9 @@ sap.ui.define([
1678
1803
  return sFractionalseconds;
1679
1804
  },
1680
1805
  parse: function(sValue, oPart, oFormat, oConfig) {
1681
- var sPart = oParseHelper.findNumbers(sValue, oPart.digits);
1682
- var iLength = sPart.length;
1806
+ var sPart = oParseHelper.findNumbers(sValue, oPart.digits),
1807
+ iLength = sPart.length,
1808
+ bPartInvalid = oConfig.exactLength && iLength < oPart.digits;
1683
1809
 
1684
1810
  sPart = sPart.substr(0, 3);
1685
1811
  sPart = sPart.padEnd(3, "0");
@@ -1688,11 +1814,13 @@ sap.ui.define([
1688
1814
 
1689
1815
  return {
1690
1816
  length: iLength,
1691
- millisecond: iMilliseconds
1817
+ millisecond: iMilliseconds,
1818
+ valid: oParseHelper.checkValid(oPart.type, bPartInvalid, oFormat)
1692
1819
  };
1693
- }
1694
- },
1695
- "z": {
1820
+ },
1821
+ isNumeric: true
1822
+ }),
1823
+ "z": DateFormat._createPatternSymbol({
1696
1824
  name: "timezoneGeneral",
1697
1825
  format: function(oField, oDate, bUTC, oFormat, sTimezone) {
1698
1826
  //TODO getTimezoneLong and getTimezoneShort does not exist on Date object
@@ -1752,8 +1880,8 @@ sap.ui.define([
1752
1880
  tzDiff: iTZDiff
1753
1881
  };
1754
1882
  }
1755
- },
1756
- "Z": {
1883
+ }),
1884
+ "Z": DateFormat._createPatternSymbol({
1757
1885
  name: "timezoneRFC822",
1758
1886
  format: function(oField, oDate, bUTC, oFormat, sTimezone) {
1759
1887
  var iTimezoneOffset = TimezoneUtil.calculateOffset(oDate, sTimezone);
@@ -1780,8 +1908,8 @@ sap.ui.define([
1780
1908
  parse: function(sValue, oPart, oFormat, oConfig) {
1781
1909
  return oParseHelper.parseTZ(sValue, false);
1782
1910
  }
1783
- },
1784
- "X": {
1911
+ }),
1912
+ "X": DateFormat._createPatternSymbol({
1785
1913
  name: "timezoneISO8601",
1786
1914
  format: function(oField, oDate, bUTC, oFormat, sTimezone) {
1787
1915
  /*
@@ -1845,8 +1973,8 @@ sap.ui.define([
1845
1973
  return oParseHelper.parseTZ(sValue, oPart.digits === 3 || oPart.digits === 5);
1846
1974
  }
1847
1975
  }
1848
- },
1849
- "V": {
1976
+ }),
1977
+ "V": DateFormat._createPatternSymbol({
1850
1978
  name: "timezoneID",
1851
1979
  format: function(oField, oDate, bUTC, oFormat, sTimezone) {
1852
1980
  // Only VV is supported
@@ -1903,7 +2031,7 @@ sap.ui.define([
1903
2031
 
1904
2032
  return oTimezoneParsed;
1905
2033
  }
1906
- }
2034
+ })
1907
2035
  };
1908
2036
 
1909
2037
  DateFormat.prototype._format = function(oJSDate, bUTC, sTimezone) {
@@ -2128,26 +2256,31 @@ sap.ui.define([
2128
2256
  };
2129
2257
 
2130
2258
  DateFormat.prototype._parse = function(sValue, aFormatArray, bUTC, bStrict, sTimezone) {
2131
- var iIndex = 0,
2132
- oPart, sSubValue, oResult;
2133
-
2134
- var oDateValue = {
2135
- valid: true,
2136
- lastTimezonePatternSymbol: ""
2137
- };
2259
+ var oNextPart, oPart, oPrevPart, oResult, sSubValue,
2260
+ oDateValue = {
2261
+ valid: true,
2262
+ lastTimezonePatternSymbol: ""
2263
+ },
2264
+ iIndex = 0,
2265
+ oParseConf = {
2266
+ formatArray: aFormatArray,
2267
+ dateValue: oDateValue,
2268
+ strict: bStrict
2269
+ },
2270
+ that = this;
2138
2271
 
2139
- var oParseConf = {
2140
- formatArray: aFormatArray,
2141
- dateValue: oDateValue,
2142
- strict: bStrict
2143
- };
2272
+ function getSymbol(oPart0) { return that.oSymbols[oPart0.symbol || ""]; }
2273
+ function isNumeric(oPart0) { return !!oPart0 && getSymbol(oPart0).isNumeric(oPart0.digits); }
2144
2274
 
2145
2275
  for (var i = 0; i < aFormatArray.length; i++) {
2146
2276
  sSubValue = sValue.substr(iIndex);
2147
2277
  oPart = aFormatArray[i];
2278
+ oPrevPart = aFormatArray[i - 1];
2279
+ oNextPart = aFormatArray[i + 1];
2148
2280
  oParseConf.index = i;
2281
+ oParseConf.exactLength = isNumeric(oPart) && (isNumeric(oPrevPart) || isNumeric(oNextPart));
2149
2282
 
2150
- oResult = this.oSymbols[oPart.symbol || ""].parse(sSubValue, oPart, this, oParseConf, sTimezone) || {};
2283
+ oResult = getSymbol(oPart).parse(sSubValue, oPart, this, oParseConf, sTimezone) || {};
2151
2284
  // Remember the last required timezone difference which needs to be calculated (V pattern) or applied (x and z pattern)
2152
2285
  if (oResult.tzDiff !== undefined || oResult.timezone) {
2153
2286
  oResult.lastTimezonePatternSymbol = oPart.symbol;