@openui5/sap.ui.core 1.130.1 → 1.131.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (313) hide show
  1. package/THIRDPARTY.txt +1 -1
  2. package/package.json +1 -1
  3. package/src/jquery.sap.global.js +1 -1
  4. package/src/jquery.sap.properties.js +1 -1
  5. package/src/jquery.sap.resources.js +1 -1
  6. package/src/jquery.sap.script.js +1 -1
  7. package/src/jquery.sap.storage.js +3 -3
  8. package/src/sap/base/Event.js +1 -1
  9. package/src/sap/base/Eventing.js +3 -2
  10. package/src/sap/base/config.js +1 -1
  11. package/src/sap/base/i18n/LanguageTag.js +1 -1
  12. package/src/sap/base/i18n/date/CalendarType.js +3 -1
  13. package/src/sap/base/i18n/date/CalendarWeekNumbering.js +3 -1
  14. package/src/sap/base/i18n/date/TimezoneUtils.js +1 -1
  15. package/src/sap/base/i18n/date/_EnumHelper.js +43 -0
  16. package/src/sap/base/util/clamp.js +26 -0
  17. package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
  18. package/src/sap/base/util/restricted/_castArray.js +1 -1
  19. package/src/sap/base/util/restricted/_compact.js +1 -1
  20. package/src/sap/base/util/restricted/_curry.js +1 -1
  21. package/src/sap/base/util/restricted/_debounce.js +1 -1
  22. package/src/sap/base/util/restricted/_difference.js +1 -1
  23. package/src/sap/base/util/restricted/_differenceBy.js +1 -1
  24. package/src/sap/base/util/restricted/_differenceWith.js +1 -1
  25. package/src/sap/base/util/restricted/_flatMap.js +1 -1
  26. package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
  27. package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
  28. package/src/sap/base/util/restricted/_flatten.js +1 -1
  29. package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
  30. package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
  31. package/src/sap/base/util/restricted/_intersection.js +1 -1
  32. package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
  33. package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
  34. package/src/sap/base/util/restricted/_isEqual.js +1 -1
  35. package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
  36. package/src/sap/base/util/restricted/_isNil.js +1 -1
  37. package/src/sap/base/util/restricted/_max.js +1 -1
  38. package/src/sap/base/util/restricted/_merge.js +1 -1
  39. package/src/sap/base/util/restricted/_mergeWith.js +1 -1
  40. package/src/sap/base/util/restricted/_min.js +1 -1
  41. package/src/sap/base/util/restricted/_omit.js +1 -1
  42. package/src/sap/base/util/restricted/_pick.js +1 -1
  43. package/src/sap/base/util/restricted/_pickBy.js +1 -1
  44. package/src/sap/base/util/restricted/_throttle.js +1 -1
  45. package/src/sap/base/util/restricted/_toArray.js +1 -1
  46. package/src/sap/base/util/restricted/_union.js +1 -1
  47. package/src/sap/base/util/restricted/_unionBy.js +1 -1
  48. package/src/sap/base/util/restricted/_unionWith.js +1 -1
  49. package/src/sap/base/util/restricted/_uniq.js +1 -1
  50. package/src/sap/base/util/restricted/_uniqBy.js +1 -1
  51. package/src/sap/base/util/restricted/_uniqWith.js +1 -1
  52. package/src/sap/base/util/restricted/_without.js +1 -1
  53. package/src/sap/base/util/restricted/_xor.js +1 -1
  54. package/src/sap/base/util/restricted/_xorBy.js +1 -1
  55. package/src/sap/base/util/restricted/_xorWith.js +1 -1
  56. package/src/sap/base/util/restricted/_zipObject.js +1 -1
  57. package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
  58. package/src/sap/ui/Device.js +11 -8
  59. package/src/sap/ui/Global.js +3 -3
  60. package/src/sap/ui/base/BindingInfo.js +4 -2
  61. package/src/sap/ui/base/DataType.js +7 -2
  62. package/src/sap/ui/base/Event.js +1 -1
  63. package/src/sap/ui/base/EventProvider.js +1 -1
  64. package/src/sap/ui/base/Interface.js +1 -1
  65. package/src/sap/ui/base/ManagedObject.js +1 -1
  66. package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
  67. package/src/sap/ui/base/Metadata.js +1 -1
  68. package/src/sap/ui/base/Object.js +1 -1
  69. package/src/sap/ui/base/ObjectPool.js +1 -1
  70. package/src/sap/ui/core/.library +3 -3
  71. package/src/sap/ui/core/BlockLayerUtils.js +17 -29
  72. package/src/sap/ui/core/BusyIndicator.js +2 -15
  73. package/src/sap/ui/core/BusyIndicatorUtils.js +34 -3
  74. package/src/sap/ui/core/Component.js +1 -1
  75. package/src/sap/ui/core/ComponentContainer.js +1 -1
  76. package/src/sap/ui/core/ComponentMetadata.js +1 -1
  77. package/src/sap/ui/core/ComponentSupport.js +1 -1
  78. package/src/sap/ui/core/Configuration.js +1 -1
  79. package/src/sap/ui/core/ContextMenuSupport.js +2 -1
  80. package/src/sap/ui/core/Control.js +46 -10
  81. package/src/sap/ui/core/ControlBehavior.js +14 -18
  82. package/src/sap/ui/core/Core.js +2 -2
  83. package/src/sap/ui/core/CustomData.js +1 -1
  84. package/src/sap/ui/core/DeclarativeSupport.js +1 -1
  85. package/src/sap/ui/core/Element.js +230 -32
  86. package/src/sap/ui/core/ElementMetadata.js +1 -1
  87. package/src/sap/ui/core/EnabledPropagator.js +4 -4
  88. package/src/sap/ui/core/EventBus.js +1 -1
  89. package/src/sap/ui/core/FocusMode.js +28 -0
  90. package/src/sap/ui/core/Fragment.js +1 -1
  91. package/src/sap/ui/core/HTML.js +1 -1
  92. package/src/sap/ui/core/History.js +1 -1
  93. package/src/sap/ui/core/Icon.js +1 -1
  94. package/src/sap/ui/core/IndicationColorSupport.js +1 -1
  95. package/src/sap/ui/core/IntervalTrigger.js +1 -1
  96. package/src/sap/ui/core/InvisibleMessage.js +1 -1
  97. package/src/sap/ui/core/InvisibleRenderer.js +1 -1
  98. package/src/sap/ui/core/InvisibleText.js +1 -1
  99. package/src/sap/ui/core/Item.js +1 -1
  100. package/src/sap/ui/core/LabelEnablement.js +1 -1
  101. package/src/sap/ui/core/LayoutData.js +1 -1
  102. package/src/sap/ui/core/ListItem.js +1 -1
  103. package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
  104. package/src/sap/ui/core/Locale.js +1 -1
  105. package/src/sap/ui/core/LocaleData.js +3 -3
  106. package/src/sap/ui/core/Manifest.js +2 -2
  107. package/src/sap/ui/core/Message.js +1 -1
  108. package/src/sap/ui/core/Popup.js +12 -0
  109. package/src/sap/ui/core/RenderManager.js +4 -1
  110. package/src/sap/ui/core/Renderer.js +1 -1
  111. package/src/sap/ui/core/ResizeHandler.js +1 -1
  112. package/src/sap/ui/core/ScrollBar.js +1 -1
  113. package/src/sap/ui/core/SeparatorItem.js +1 -1
  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 +1 -1
  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 +1 -1
  122. package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
  123. package/src/sap/ui/core/_IconRegistry.js +1 -0
  124. package/src/sap/ui/core/cldr/ca.json +1 -1
  125. package/src/sap/ui/core/cldr/cs.json +1 -1
  126. package/src/sap/ui/core/cldr/es.json +2 -2
  127. package/src/sap/ui/core/cldr/es_AR.json +2 -2
  128. package/src/sap/ui/core/cldr/es_BO.json +2 -2
  129. package/src/sap/ui/core/cldr/es_CL.json +2 -2
  130. package/src/sap/ui/core/cldr/es_CO.json +2 -2
  131. package/src/sap/ui/core/cldr/es_PE.json +2 -2
  132. package/src/sap/ui/core/cldr/es_UY.json +2 -2
  133. package/src/sap/ui/core/cldr/es_VE.json +2 -2
  134. package/src/sap/ui/core/cldr/fi.json +1 -1
  135. package/src/sap/ui/core/cldr/hu.json +1 -1
  136. package/src/sap/ui/core/cldr/id.json +2 -2
  137. package/src/sap/ui/core/cldr/mk.json +2 -2
  138. package/src/sap/ui/core/cldr/tr.json +1 -1
  139. package/src/sap/ui/core/cldr/vi.json +2 -2
  140. package/src/sap/ui/core/date/CalendarWeekNumbering.js +1 -1
  141. package/src/sap/ui/core/date/UI5Date.js +1 -1
  142. package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
  143. package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
  144. package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
  145. package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
  146. package/src/sap/ui/core/dnd/DragInfo.js +1 -1
  147. package/src/sap/ui/core/dnd/DropInfo.js +1 -1
  148. package/src/sap/ui/core/fieldhelp/FieldHelpCustomData.js +5 -1
  149. package/src/sap/ui/core/format/FormatUtils.js +1 -1
  150. package/src/sap/ui/core/format/NumberFormat.js +29 -8
  151. package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
  152. package/src/sap/ui/core/getCompatibilityVersion.js +1 -1
  153. package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
  154. package/src/sap/ui/core/library.js +23 -19
  155. package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
  156. package/src/sap/ui/core/message/Message.js +1 -1
  157. package/src/sap/ui/core/message/MessageManager.js +1 -1
  158. package/src/sap/ui/core/message/MessageMixin.js +5 -2
  159. package/src/sap/ui/core/message/MessageParser.js +1 -1
  160. package/src/sap/ui/core/message/MessageProcessor.js +1 -1
  161. package/src/sap/ui/core/messagebundle_no.properties +1 -1
  162. package/src/sap/ui/core/mvc/HTMLView.js +1 -1
  163. package/src/sap/ui/core/mvc/JSONView.js +1 -1
  164. package/src/sap/ui/core/mvc/JSView.js +1 -1
  165. package/src/sap/ui/core/mvc/TemplateView.js +1 -1
  166. package/src/sap/ui/core/mvc/View.js +1 -1
  167. package/src/sap/ui/core/mvc/XMLView.js +1 -1
  168. package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
  169. package/src/sap/ui/core/plugin/LessSupport.js +1 -1
  170. package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
  171. package/src/sap/ui/core/postmessage/Bus.js +1 -1
  172. package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
  173. package/src/sap/ui/core/routing/Target.js +5 -5
  174. package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
  175. package/src/sap/ui/core/search/SearchProvider.js +1 -1
  176. package/src/sap/ui/core/service/Service.js +1 -1
  177. package/src/sap/ui/core/service/ServiceFactory.js +1 -1
  178. package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
  179. package/src/sap/ui/core/support/Plugin.js +1 -1
  180. package/src/sap/ui/core/support/Support.js +1 -1
  181. package/src/sap/ui/core/support/bootstrapFallback.js +1 -0
  182. package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
  183. package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
  184. package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
  185. package/src/sap/ui/core/support/plugins/Performance.js +1 -1
  186. package/src/sap/ui/core/support/plugins/Selector.js +1 -1
  187. package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
  188. package/src/sap/ui/core/support/plugins/Trace.js +1 -1
  189. package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
  190. package/src/sap/ui/core/themes/base/LocalBusyIndicator.less +1 -0
  191. package/src/sap/ui/core/themes/base/base.less +1353 -247
  192. package/src/sap/ui/core/themes/base/fonts/SAP-icons.ttf +0 -0
  193. package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
  194. package/src/sap/ui/core/themes/base/global.less +32 -0
  195. package/src/sap/ui/core/themes/base/skeleton.less +93 -3
  196. package/src/sap/ui/core/theming/ThemeManager.js +2 -2
  197. package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
  198. package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
  199. package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
  200. package/src/sap/ui/core/tmpl/Template.js +1 -1
  201. package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
  202. package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
  203. package/src/sap/ui/core/util/Export.js +1 -1
  204. package/src/sap/ui/core/util/ExportCell.js +1 -1
  205. package/src/sap/ui/core/util/ExportColumn.js +1 -1
  206. package/src/sap/ui/core/util/ExportRow.js +1 -1
  207. package/src/sap/ui/core/util/ExportType.js +1 -1
  208. package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
  209. package/src/sap/ui/core/util/File.js +1 -1
  210. package/src/sap/ui/core/util/LibraryInfo.js +1 -1
  211. package/src/sap/ui/core/util/MockServer.js +1 -1
  212. package/src/sap/ui/core/util/PasteHelper.js +1 -1
  213. package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
  214. package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
  215. package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
  216. package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
  217. package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
  218. package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
  219. package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
  220. package/src/sap/ui/core/webc/WebComponent.js +1 -1
  221. package/src/sap/ui/core/webc/WebComponentMetadata.js +1 -1
  222. package/src/sap/ui/core/ws/ReadyState.js +1 -1
  223. package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
  224. package/src/sap/ui/core/ws/WebSocket.js +1 -1
  225. package/src/sap/ui/debug/ControlTree.js +1 -1
  226. package/src/sap/ui/debug/DebugEnv.js +1 -1
  227. package/src/sap/ui/debug/PropertyList.js +1 -1
  228. package/src/sap/ui/model/ClientModel.js +1 -1
  229. package/src/sap/ui/model/CompositeDataState.js +1 -1
  230. package/src/sap/ui/model/CompositeType.js +1 -1
  231. package/src/sap/ui/model/DataState.js +1 -1
  232. package/src/sap/ui/model/Filter.js +2 -1
  233. package/src/sap/ui/model/MetaModel.js +1 -1
  234. package/src/sap/ui/model/Model.js +1 -1
  235. package/src/sap/ui/model/SelectionModel.js +1 -1
  236. package/src/sap/ui/model/SimpleType.js +1 -1
  237. package/src/sap/ui/model/Sorter.js +61 -31
  238. package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
  239. package/src/sap/ui/model/Type.js +1 -1
  240. package/src/sap/ui/model/analytics/AnalyticalBinding.js +9 -3
  241. package/src/sap/ui/model/base/ManagedObjectModel.js +1 -1
  242. package/src/sap/ui/model/json/JSONModel.js +1 -1
  243. package/src/sap/ui/model/message/MessageModel.js +1 -1
  244. package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
  245. package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
  246. package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
  247. package/src/sap/ui/model/odata/ODataMetadata.js +16 -6
  248. package/src/sap/ui/model/odata/ODataModel.js +1 -1
  249. package/src/sap/ui/model/odata/type/Boolean.js +1 -1
  250. package/src/sap/ui/model/odata/type/Byte.js +1 -1
  251. package/src/sap/ui/model/odata/type/Currency.js +1 -1
  252. package/src/sap/ui/model/odata/type/Date.js +1 -1
  253. package/src/sap/ui/model/odata/type/DateTime.js +1 -1
  254. package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
  255. package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
  256. package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
  257. package/src/sap/ui/model/odata/type/Decimal.js +1 -1
  258. package/src/sap/ui/model/odata/type/Double.js +1 -1
  259. package/src/sap/ui/model/odata/type/Guid.js +1 -1
  260. package/src/sap/ui/model/odata/type/Int.js +1 -1
  261. package/src/sap/ui/model/odata/type/Int16.js +1 -1
  262. package/src/sap/ui/model/odata/type/Int32.js +1 -1
  263. package/src/sap/ui/model/odata/type/Int64.js +1 -1
  264. package/src/sap/ui/model/odata/type/ODataType.js +1 -1
  265. package/src/sap/ui/model/odata/type/Raw.js +1 -1
  266. package/src/sap/ui/model/odata/type/SByte.js +1 -1
  267. package/src/sap/ui/model/odata/type/Single.js +1 -1
  268. package/src/sap/ui/model/odata/type/Stream.js +1 -1
  269. package/src/sap/ui/model/odata/type/String.js +1 -1
  270. package/src/sap/ui/model/odata/type/Time.js +1 -1
  271. package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
  272. package/src/sap/ui/model/odata/type/Unit.js +1 -1
  273. package/src/sap/ui/model/odata/v2/Context.js +1 -1
  274. package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
  275. package/src/sap/ui/model/odata/v2/ODataListBinding.js +7 -4
  276. package/src/sap/ui/model/odata/v2/ODataModel.js +14 -10
  277. package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
  278. package/src/sap/ui/model/odata/v4/Context.js +1 -1
  279. package/src/sap/ui/model/odata/v4/ODataBinding.js +1 -0
  280. package/src/sap/ui/model/odata/v4/ODataContextBinding.js +6 -1
  281. package/src/sap/ui/model/odata/v4/ODataListBinding.js +66 -6
  282. package/src/sap/ui/model/odata/v4/ODataMetaModel.js +93 -19
  283. package/src/sap/ui/model/odata/v4/ODataModel.js +14 -4
  284. package/src/sap/ui/model/odata/v4/ODataParentBinding.js +3 -1
  285. package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +2 -1
  286. package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +12 -1
  287. package/src/sap/ui/model/odata/v4/lib/_Cache.js +51 -30
  288. package/src/sap/ui/model/resource/ResourceModel.js +1 -1
  289. package/src/sap/ui/model/type/Boolean.js +1 -1
  290. package/src/sap/ui/model/type/Currency.js +1 -1
  291. package/src/sap/ui/model/type/Date.js +1 -1
  292. package/src/sap/ui/model/type/DateInterval.js +1 -1
  293. package/src/sap/ui/model/type/DateTime.js +1 -1
  294. package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
  295. package/src/sap/ui/model/type/FileSize.js +1 -1
  296. package/src/sap/ui/model/type/Float.js +1 -1
  297. package/src/sap/ui/model/type/Integer.js +1 -1
  298. package/src/sap/ui/model/type/String.js +1 -1
  299. package/src/sap/ui/model/type/Time.js +1 -1
  300. package/src/sap/ui/model/type/TimeInterval.js +1 -1
  301. package/src/sap/ui/model/type/Unit.js +1 -1
  302. package/src/sap/ui/model/xml/XMLModel.js +1 -1
  303. package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
  304. package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
  305. package/src/sap/ui/test/OpaBuilder.js +1 -1
  306. package/src/sap/ui/test/autowaiter/_promiseWaiter.js +21 -0
  307. package/src/sap/ui/test/generic/TestBase.js +1 -1
  308. package/src/sap/ui/test/starter/_utils.js +8 -1
  309. package/src/sap/ui/test/starter/createSuite.js +1 -1
  310. package/src/sap/ui/thirdparty/less.js +23 -72
  311. package/src/sap/ui/util/Storage.js +1 -1
  312. package/src/ui5loader.js +9 -4
  313. package/test/sap/ui/qunit/TestRunner.js +2 -0
@@ -3240,6 +3240,9 @@ sap.ui.define([
3240
3240
  * If no back-end request is needed, the function is not called.
3241
3241
  * @param {boolean} [bIndexIsSkip]
3242
3242
  * Whether <code>iIndex</code> is a raw $skip index
3243
+ * @param {function} [fnSeparateReceived]
3244
+ * The function is called for each completed separate property request; may be omitted only if
3245
+ * there are no separate properties
3243
3246
  * @returns {sap.ui.base.SyncPromise}
3244
3247
  * A promise to be resolved with the requested range given as an OData response object (with
3245
3248
  * "@odata.context" and the rows as an array in the property <code>value</code>, enhanced
@@ -3254,7 +3257,7 @@ sap.ui.define([
3254
3257
  * @see sap.ui.model.odata.v4.lib._Requestor#request
3255
3258
  */
3256
3259
  _CollectionCache.prototype.read = function (iIndex, iLength, iPrefetchLength, oGroupLock,
3257
- fnDataRequested, bIndexIsSkip) {
3260
+ fnDataRequested, bIndexIsSkip, fnSeparateReceived) {
3258
3261
  var iCreatedPersisted = 0,
3259
3262
  oElement,
3260
3263
  aElementsRange,
@@ -3275,7 +3278,7 @@ sap.ui.define([
3275
3278
  if (oPromise) {
3276
3279
  return oPromise.then(function () {
3277
3280
  return that.read(iIndex, iLength, iPrefetchLength, oGroupLock, fnDataRequested,
3278
- bIndexIsSkip);
3281
+ bIndexIsSkip, fnSeparateReceived);
3279
3282
  });
3280
3283
  }
3281
3284
 
@@ -3316,7 +3319,7 @@ sap.ui.define([
3316
3319
 
3317
3320
  aReadIntervals.forEach(function (oInterval) {
3318
3321
  that.requestElements(oInterval.start, oInterval.end, oGroupLock.getUnlockedCopy(),
3319
- iTransientElements, fnDataRequested);
3322
+ iTransientElements, fnDataRequested, fnSeparateReceived);
3320
3323
  fnDataRequested = undefined;
3321
3324
  });
3322
3325
 
@@ -3484,6 +3487,9 @@ sap.ui.define([
3484
3487
  * The number of transient elements within the given group
3485
3488
  * @param {function} [fnDataRequested]
3486
3489
  * The function is called when the back-end requests have been sent.
3490
+ * @param {function} [fnSeparateReceived]
3491
+ * The function is called for each completed separate property request; may be omitted only if
3492
+ * there are no separate properties
3487
3493
  * @returns {sap.ui.base.SyncPromise}
3488
3494
  * A promise which is resolved without a defined result when the request is finished and
3489
3495
  * rejected in case of error; if the request has been obsoleted by a {@link #reset} the error
@@ -3494,7 +3500,7 @@ sap.ui.define([
3494
3500
  * @private
3495
3501
  */
3496
3502
  _CollectionCache.prototype.requestElements = function (iStart, iEnd, oGroupLock,
3497
- iTransientElements, fnDataRequested) {
3503
+ iTransientElements, fnDataRequested, fnSeparateReceived) {
3498
3504
  var oPromise,
3499
3505
  oReadRequest = {
3500
3506
  iEnd : iEnd,
@@ -3544,7 +3550,7 @@ sap.ui.define([
3544
3550
  that.aReadRequests.splice(that.aReadRequests.indexOf(oReadRequest), 1);
3545
3551
  });
3546
3552
 
3547
- this.requestSeparateProperties(iStart, iEnd, oPromise);
3553
+ this.requestSeparateProperties(iStart, iEnd, oPromise, fnSeparateReceived);
3548
3554
 
3549
3555
  // Note: oPromise MUST be a SyncPromise for performance reasons, see SyncPromise#all
3550
3556
  this.fill(oPromise, iStart, iEnd);
@@ -3560,46 +3566,61 @@ sap.ui.define([
3560
3566
  * @param {number} iEnd
3561
3567
  * The index after the last element
3562
3568
  * @param {sap.ui.base.SyncPromise} oMainPromise
3563
- * A promise which is resolved when the main request is finished
3569
+ * A promise which is resolved when the main request is finished; the caller must take care of
3570
+ * error handling
3571
+ * @param {function} [fnSeparateReceived]
3572
+ * The function is called for each completed separate property request; may be omitted only if
3573
+ * there are no separate properties
3564
3574
  * @returns {Promise<void>}
3565
3575
  * A promise which is resolved without a defined result at no defined point in time
3566
3576
  *
3567
3577
  * @private
3568
3578
  */
3569
3579
  _CollectionCache.prototype.requestSeparateProperties = async function (iStart, iEnd,
3570
- oMainPromise) {
3580
+ oMainPromise, fnSeparateReceived) {
3571
3581
  if (!this.aSeparateProperties.length) {
3572
3582
  return;
3573
3583
  }
3574
3584
 
3575
3585
  // types are needed for selecting the key properties, see #getQueryString called by
3576
3586
  // #getResourcePathWithQuery
3577
- const oTypes = await this.fetchTypes();
3587
+ const mTypeForMetaPath = await this.fetchTypes();
3578
3588
  const oReadRange = {start : iStart, end : iEnd};
3579
- const aRequestPromises = this.aSeparateProperties.map((sProperty) => {
3580
- this.mSeparateProperty2ReadRequest[sProperty].push(oReadRange);
3581
- return this.oRequestor.request("GET",
3582
- this.getResourcePathWithQuery(iStart, iEnd, sProperty),
3583
- this.oRequestor.lockGroup("$single", this));
3584
- });
3589
+ this.aSeparateProperties.forEach(async (sProperty) => {
3590
+ try {
3591
+ this.mSeparateProperty2ReadRequest[sProperty].push(oReadRange);
3592
+ const oResult = await this.oRequestor.request("GET",
3593
+ this.getResourcePathWithQuery(iStart, iEnd, sProperty),
3594
+ this.oRequestor.lockGroup("$single", this));
3595
+
3596
+ let bMainFailed;
3597
+ await oMainPromise.catch(() => { /* handled by caller */
3598
+ bMainFailed = true;
3599
+ });
3585
3600
 
3586
- await oMainPromise;
3587
- aRequestPromises.forEach(async (oRequestPromise, i) => {
3588
- const oResult = await oRequestPromise;
3589
- const sProperty = this.aSeparateProperties[i];
3590
- const iRangeIndex = this.mSeparateProperty2ReadRequest[sProperty].indexOf(oReadRange);
3591
- if (iRangeIndex < 0) { // stop import after #reset
3592
- return;
3593
- }
3594
- this.mSeparateProperty2ReadRequest[sProperty].splice(iRangeIndex, 1);
3595
- this.visitResponse(oResult, oTypes, undefined, undefined, iStart);
3596
- for (const oSeparateData of oResult.value) {
3597
- const sPredicate = _Helper.getPrivateAnnotation(oSeparateData, "predicate");
3598
- const oElement = this.aElements.$byPredicate[sPredicate];
3599
- if (oElement) {
3600
- _Helper.updateSelected(this.mChangeListeners, sPredicate, oElement,
3601
- oSeparateData, [sProperty]);
3601
+ const iIndex = this.mSeparateProperty2ReadRequest[sProperty].indexOf(oReadRange);
3602
+ if (iIndex < 0) { // stop import after #reset
3603
+ return;
3604
+ }
3605
+
3606
+ this.mSeparateProperty2ReadRequest[sProperty].splice(iIndex, 1);
3607
+ if (bMainFailed) {
3608
+ return;
3609
+ }
3610
+
3611
+ this.visitResponse(oResult, mTypeForMetaPath, undefined, undefined, iStart);
3612
+ for (const oSeparateData of oResult.value) {
3613
+ const sPredicate = _Helper.getPrivateAnnotation(oSeparateData, "predicate");
3614
+ const oElement = this.aElements.$byPredicate[sPredicate];
3615
+ if (oElement) {
3616
+ _Helper.updateSelected(this.mChangeListeners, sPredicate, oElement,
3617
+ oSeparateData, [sProperty]);
3618
+ }
3602
3619
  }
3620
+ fnSeparateReceived(sProperty, iStart, iEnd);
3621
+ } catch (oError) {
3622
+ // do not clean up mSeparateProperty2ReadRequest to avoid late property requests
3623
+ fnSeparateReceived(sProperty, iStart, iEnd, oError);
3603
3624
  }
3604
3625
  });
3605
3626
  };
@@ -227,7 +227,7 @@ sap.ui.define([
227
227
  *
228
228
  * @extends sap.ui.model.Model
229
229
  * @public
230
- * @version 1.130.1
230
+ * @version 1.131.0
231
231
  */
232
232
  var ResourceModel = Model.extend("sap.ui.model.resource.ResourceModel", /** @lends sap.ui.model.resource.ResourceModel.prototype */ {
233
233
 
@@ -19,7 +19,7 @@ sap.ui.define(["sap/ui/core/Lib", 'sap/ui/model/SimpleType', 'sap/ui/model/Forma
19
19
  * @extends sap.ui.model.SimpleType
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.130.1
22
+ * @version 1.131.0
23
23
  *
24
24
  * @public
25
25
  * @param {object} [oFormatOptions]
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  * @extends sap.ui.model.CompositeType
35
35
  *
36
36
  * @author SAP SE
37
- * @version 1.130.1
37
+ * @version 1.131.0
38
38
  *
39
39
  * @public
40
40
  * @param {object} [oFormatOptions]
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @extends sap.ui.model.SimpleType
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.130.1
30
+ * @version 1.131.0
31
31
  *
32
32
  * @public
33
33
  * @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getDateInstance DateFormat}.
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @extends sap.ui.model.CompositeType
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.130.1
28
+ * @version 1.131.0
29
29
  *
30
30
  * @alias sap.ui.model.type.DateInterval
31
31
  * @param {object} [oFormatOptions]
@@ -19,7 +19,7 @@ sap.ui.define(['./Date', 'sap/ui/core/format/DateFormat'],
19
19
  * @extends sap.ui.model.type.Date
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.130.1
22
+ * @version 1.131.0
23
23
  *
24
24
  * @public
25
25
  * @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getDateTimeInstance DateFormat}.
@@ -19,7 +19,7 @@ sap.ui.define(['./DateInterval', 'sap/ui/core/format/DateFormat'],
19
19
  * @extends sap.ui.model.type.DateInterval
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.130.1
22
+ * @version 1.131.0
23
23
  *
24
24
  * @public
25
25
  * @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getDateTimeInstance DateFormat}.
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @extends sap.ui.model.SimpleType
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.130.1
28
+ * @version 1.131.0
29
29
  *
30
30
  * @public
31
31
  * @param {object} [oFormatOptions]
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @extends sap.ui.model.SimpleType
27
27
  *
28
28
  * @author SAP SE
29
- * @version 1.130.1
29
+ * @version 1.131.0
30
30
  *
31
31
  * @public
32
32
  * @param {object} [oFormatOptions]
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @extends sap.ui.model.SimpleType
27
27
  *
28
28
  * @author SAP SE
29
- * @version 1.130.1
29
+ * @version 1.131.0
30
30
  *
31
31
  * @public
32
32
  * @param {object} [oFormatOptions]
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @extends sap.ui.model.SimpleType
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.130.1
28
+ * @version 1.131.0
29
29
  *
30
30
  * @alias sap.ui.model.type.String
31
31
  * @param {object} [oFormatOptions]
@@ -19,7 +19,7 @@ sap.ui.define(['./Date', 'sap/ui/core/format/DateFormat'],
19
19
  * @extends sap.ui.model.type.Date
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.130.1
22
+ * @version 1.131.0
23
23
  *
24
24
  * @public
25
25
  * @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getTimeInstance DateFormat}.
@@ -19,7 +19,7 @@ sap.ui.define(['./DateInterval', 'sap/ui/core/format/DateFormat'],
19
19
  * @extends sap.ui.model.type.DateInterval
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.130.1
22
+ * @version 1.131.0
23
23
  *
24
24
  * @public
25
25
  * @param {object} [oFormatOptions] Formatting options. For a list of all available options, see {@link sap.ui.core.format.DateFormat.getTimeInstance DateFormat}.
@@ -49,7 +49,7 @@ sap.ui.define([
49
49
  *
50
50
  *
51
51
  * @author SAP SE
52
- * @version 1.130.1
52
+ * @version 1.131.0
53
53
  *
54
54
  * @public
55
55
  * @param {object} [oFormatOptions]
@@ -47,7 +47,7 @@ sap.ui.define([
47
47
  * @extends sap.ui.model.ClientModel
48
48
  *
49
49
  * @author SAP SE
50
- * @version 1.130.1
50
+ * @version 1.131.0
51
51
  *
52
52
  * @param {XMLDocument|string} oData
53
53
  * Either the URL where to load the XML from or an XML document
@@ -53,7 +53,7 @@ sap.ui.define(['sap/ui/core/Core', "sap/ui/VersionInfo", "sap/ui/core/Lib"],
53
53
  * @namespace
54
54
  *
55
55
  * @author SAP SE
56
- * @version 1.130.1
56
+ * @version 1.131.0
57
57
  *
58
58
  * @public
59
59
  * @since 1.48.0
@@ -30,7 +30,7 @@ sap.ui.define([ 'sap/ui/core/ElementRegistry', 'sap/ui/core/Control', "sap/ui/qu
30
30
  * @namespace
31
31
  *
32
32
  * @author SAP SE
33
- * @version 1.130.1
33
+ * @version 1.131.0
34
34
  *
35
35
  * @public
36
36
  * @since 1.48.0
@@ -785,7 +785,7 @@ sap.ui.define(
785
785
  * Executes the definition on the given or previously defined Opa5 instance.
786
786
  *
787
787
  * @param {sap.ui.test.Opa5} [oOpaInstance] the Opa5 instance to call {@link sap.ui.test.Opa5#waitFor} on
788
- * @returns {sap.ui.test.Opa5.Chain} an object extending a jQuery promise, corresponding to the result of {@link sap.ui.test.Opa5#waitFor}
788
+ * @returns {sap.ui.test.Opa5} an object extending a jQuery promise, corresponding to the result of {@link sap.ui.test.Opa5#waitFor}
789
789
  * @public
790
790
  */
791
791
  OpaBuilder.prototype.execute = function (oOpaInstance) {
@@ -193,6 +193,27 @@ sap.ui.define([
193
193
  }
194
194
  });
195
195
 
196
+ const fnOriginalWithResolvers = OriginalPromise.withResolvers;
197
+ WrappedPromise.withResolvers = function () {
198
+ const { promise, resolve, reject, ...rest } = fnOriginalWithResolvers.apply(this, arguments);
199
+ const mPendingPromise = _trackPromise(""); // withResolvers API does not take any arguments
200
+ const fnWrappedResolve = function wrappedResolve () {
201
+ _untrackPromise(mPendingPromise);
202
+ resolve.apply(this, arguments);
203
+ };
204
+ const fnWrappedReject = function wrappedReject() {
205
+ _untrackPromise(mPendingPromise);
206
+ reject.apply(this, arguments);
207
+ };
208
+
209
+ return {
210
+ promise,
211
+ resolve: fnWrappedResolve,
212
+ reject: fnWrappedReject,
213
+ ...rest
214
+ };
215
+ };
216
+
196
217
  // overwrite the global Promise object
197
218
  window.Promise = WrappedPromise;
198
219
 
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @extends sap.ui.base.Object
27
27
  * @abstract
28
28
  * @author SAP SE
29
- * @version 1.130.1
29
+ * @version 1.131.0
30
30
  * @since 1.100
31
31
  */
32
32
  return BaseObject.extend("sap.ui.test.generic.TestBase", {
@@ -32,7 +32,14 @@ sap.ui.define([
32
32
  }
33
33
 
34
34
  function getDefaultSuiteName() {
35
- var sName = sap.ui.loader._.guessResourceName(location.href);
35
+ var sName = sap.ui.loader._.guessResourceName(window.location.href);
36
+
37
+ // special handling for karma runner: paths starting with /base/test/ should be /base/test-resources/
38
+ if ( sName == null && window.location.pathname.startsWith("/base/test/") ) {
39
+ const altPath = window.location.origin + window.location.pathname.replace("/base/test/", "/base/test-resources/");
40
+ sName = sap.ui.loader._.guessResourceName(altPath);
41
+ }
42
+
36
43
  return sName ? sName.replace(/\.html$/, "") : null;
37
44
  }
38
45
 
@@ -134,7 +134,7 @@
134
134
 
135
135
  render(sLinkHTML).then(function() {
136
136
  // Note: we use a 0.1 second timer resolution so that the blocking div disappears quickly
137
- var count = 10 * (parseInt(utils.getAttribute("data-sap-ui-delay")) || 2) + 9;
137
+ var count = 10 * (parseInt(utils.getAttribute("data-sap-ui-delay")) || -1) + 9;
138
138
 
139
139
  function countDown() {
140
140
  if ( count === 6 ) {
@@ -1020,27 +1020,22 @@ less.Parser = function Parser(env) {
1020
1020
  }
1021
1021
  },
1022
1022
 
1023
+ // ##### BEGIN: MODIFIED BY SAP
1024
+ // Removed support for javascript
1025
+
1023
1026
  //
1024
1027
  // JavaScript code to be evaluated
1025
1028
  //
1026
1029
  // `window.location.href`
1027
1030
  //
1028
1031
  javascript: function () {
1029
- var str, j = i, e;
1032
+ var j = i, e;
1030
1033
 
1031
1034
  if (input.charAt(j) === '~') { j++; e = true; } // Escaped strings
1032
1035
  if (input.charAt(j) !== '`') { return; }
1033
- if (env.javascriptEnabled !== undefined && !env.javascriptEnabled) {
1034
- error("You are using JavaScript, which has been disabled.");
1035
- }
1036
-
1037
- if (e) { $char('~'); }
1038
-
1039
- str = $re(/^`([^`]*)`/);
1040
- if (str) {
1041
- return new(tree.JavaScript)(str[1], i, e);
1042
- }
1036
+ error("You are using JavaScript, which has been disabled.");
1043
1037
  }
1038
+ // ##### END: MODIFIED BY SAP
1044
1039
  },
1045
1040
 
1046
1041
  //
@@ -2222,7 +2217,10 @@ tree.functions = {
2222
2217
  }
2223
2218
  },
2224
2219
  e: function (str) {
2225
- return new(tree.Anonymous)(str instanceof tree.JavaScript ? str.evaluated : str);
2220
+ // ##### BEGIN: MODIFIED BY SAP
2221
+ // Removed handling of tree.JavaScript
2222
+ return new(tree.Anonymous)(str);
2223
+ // ##### END: MODIFIED BY SAP
2226
2224
  },
2227
2225
  escape: function (str) {
2228
2226
  return new(tree.Anonymous)(encodeURI(str.value).replace(/=/g, "%3D").replace(/:/g, "%3A").replace(/#/g, "%23").replace(/;/g, "%3B").replace(/\(/g, "%28").replace(/\)/g, "%29"));
@@ -4137,64 +4135,9 @@ tree.Import.prototype = {
4137
4135
 
4138
4136
  })(require('../tree'));
4139
4137
 
4140
- (function (tree) {
4141
-
4142
- tree.JavaScript = function (string, index, escaped) {
4143
- this.escaped = escaped;
4144
- this.expression = string;
4145
- this.index = index;
4146
- };
4147
- tree.JavaScript.prototype = {
4148
- type: "JavaScript",
4149
- eval: function (env) {
4150
- var result,
4151
- that = this,
4152
- context = {};
4153
-
4154
- var expression = this.expression.replace(/@\{([\w-]+)\}/g, function (_, name) {
4155
- return tree.jsify(new(tree.Variable)('@' + name, that.index).eval(env));
4156
- });
4157
-
4158
- try {
4159
- expression = new(Function)('return (' + expression + ')');
4160
- } catch (e) {
4161
- throw { message: "JavaScript evaluation error: " + e.message + " from `" + expression + "`" ,
4162
- index: this.index };
4163
- }
4164
-
4165
- var variables = env.frames[0].variables();
4166
- for (var k in variables) {
4167
- if (variables.hasOwnProperty(k)) {
4168
- /*jshint loopfunc:true */
4169
- context[k.slice(1)] = {
4170
- value: variables[k].value,
4171
- toJS: function () {
4172
- return this.value.eval(env).toCSS();
4173
- }
4174
- };
4175
- }
4176
- }
4177
-
4178
- try {
4179
- result = expression.call(context);
4180
- } catch (e) {
4181
- throw { message: "JavaScript evaluation error: '" + e.name + ': ' + e.message.replace(/["]/g, "'") + "'" ,
4182
- index: this.index };
4183
- }
4184
- if (typeof(result) === 'number') {
4185
- return new(tree.Dimension)(result);
4186
- } else if (typeof(result) === 'string') {
4187
- return new(tree.Quoted)('"' + result + '"', result, this.escaped, this.index);
4188
- } else if (Array.isArray(result)) {
4189
- return new(tree.Anonymous)(result.join(', '));
4190
- } else {
4191
- return new(tree.Anonymous)(result);
4192
- }
4193
- }
4194
- };
4195
-
4196
- })(require('../tree'));
4197
-
4138
+ // ##### BEGIN: MODIFIED BY SAP
4139
+ // Removed definition of tree.JavaScript
4140
+ // ##### END: MODIFIED BY SAP
4198
4141
 
4199
4142
  (function (tree) {
4200
4143
 
@@ -4818,7 +4761,13 @@ tree.Quoted.prototype = {
4818
4761
  eval: function (env) {
4819
4762
  var that = this;
4820
4763
  var value = this.value.replace(/`([^`]+)`/g, function (_, exp) {
4821
- return new(tree.JavaScript)(exp, that.index, true).eval(env).value;
4764
+ // ##### BEGIN: MODIFIED BY SAP
4765
+ // Removed support for javascript
4766
+ const error = new Error("You are using JavaScript, which has been disabled.");
4767
+ error.index = that.index;
4768
+ error.type = "Syntax";
4769
+ throw error;
4770
+ // ##### END: MODIFIED BY SAP
4822
4771
  }).replace(/@\{([\w-]+)\}/g, function (_, name) {
4823
4772
  var v = new(tree.Variable)('@' + name, that.index, that.currentFileInfo).eval(env, true);
4824
4773
  return (v instanceof tree.Quoted) ? v.value : v.toCSS();
@@ -5746,7 +5695,9 @@ tree.Variable.prototype = {
5746
5695
  'compress', // option - whether to compress
5747
5696
  'processImports', // option - whether to process imports. if false then imports will not be imported
5748
5697
  'syncImport', // option - whether to import synchronously
5749
- 'javascriptEnabled',// option - whether JavaScript is enabled. if undefined, defaults to true
5698
+ // ##### BEGIN: MODIFIED BY SAP
5699
+ // Removed 'javascriptEnabled'
5700
+ // ##### END: MODIFIED BY SAP
5750
5701
  'mime', // browser only - mime type for sheet import
5751
5702
  'useFileCache', // browser only - whether to use the per file session cache
5752
5703
  'currentFileInfo' // information about the current file - for error reporting and importing and making urls relative etc.
@@ -277,7 +277,7 @@ sap.ui.define(["sap/base/assert"], function (assert) {
277
277
  *
278
278
  * @enum {string}
279
279
  * @public
280
- * @version 1.130.1
280
+ * @version 1.131.0
281
281
  */
282
282
  Storage.Type = {
283
283
  /**
package/src/ui5loader.js CHANGED
@@ -13,7 +13,7 @@
13
13
  * might break in future releases.
14
14
  */
15
15
 
16
- /*global sap:true, Blob, console, document, Promise, URL, XMLHttpRequest */
16
+ /*global Blob, console, document, Promise, URL, XMLHttpRequest */
17
17
 
18
18
  (function(__global) {
19
19
  "use strict";
@@ -2680,13 +2680,13 @@
2680
2680
  /**
2681
2681
  * Root namespace for JavaScript functionality provided by SAP SE.
2682
2682
  *
2683
- * @version 1.130.1
2683
+ * @version 1.131.0
2684
2684
  * @namespace
2685
2685
  * @public
2686
2686
  * @name sap
2687
2687
  */
2688
-
2689
- __global.sap = __global.sap || {};
2688
+ // ui5lint-disable-next-line no-globals
2689
+ const sap = __global.sap = __global.sap || {};
2690
2690
  sap.ui = sap.ui || {};
2691
2691
 
2692
2692
  /**
@@ -2697,6 +2697,7 @@
2697
2697
  * @public
2698
2698
  * @namespace
2699
2699
  * @ui5-global-only
2700
+ * @name sap.ui.loader
2700
2701
  */
2701
2702
  sap.ui.loader = {
2702
2703
 
@@ -3223,6 +3224,7 @@
3223
3224
  * @see https://github.com/amdjs/amdjs-api
3224
3225
  * @function
3225
3226
  * @ui5-global-only
3227
+ * @name sap.ui.define
3226
3228
  */
3227
3229
  sap.ui.define = ui5Define;
3228
3230
 
@@ -3231,6 +3233,7 @@
3231
3233
  * @ui5-restricted bundles created with UI5 tooling
3232
3234
  * @function
3233
3235
  * @ui5-global-only
3236
+ * @name sap.ui.predefine
3234
3237
  */
3235
3238
  sap.ui.predefine = predefine;
3236
3239
 
@@ -3290,6 +3293,7 @@
3290
3293
  * @public
3291
3294
  * @function
3292
3295
  * @ui5-global-only
3296
+ * @name sap.ui.require
3293
3297
  */
3294
3298
  sap.ui.require = ui5Require;
3295
3299
 
@@ -3357,6 +3361,7 @@
3357
3361
  * @ui5-restricted sap.ui.core
3358
3362
  * @function
3359
3363
  * @ui5-global-only
3364
+ * @name sap.ui.requireSync
3360
3365
  * @deprecated As of version 1.120, sync loading is deprecated without replacement due to the deprecation
3361
3366
  * of sync XMLHttpRequests in the web standard.
3362
3367
  */
@@ -629,10 +629,12 @@
629
629
  * a testsuite or a QUnit testpage - also it returns the coverage
630
630
  * results.
631
631
  */
632
+ // ui5lint-disable no-globals
632
633
  globalThis.sap = globalThis.sap || {};
633
634
  globalThis.sap.ui = globalThis.sap.ui || {};
634
635
  globalThis.sap.ui.qunit = globalThis.sap.ui.qunit || {};
635
636
  globalThis.sap.ui.qunit.TestRunner = testRunner;
637
+ // ui5lint-enable no-globals
636
638
  const ready = () => {
637
639
  return new Promise(function(resolve, reject) {
638
640
  if (document.readyState !== "loading") {