@openui5/sap.ui.core 1.141.2 → 1.142.1
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.
- package/.dtsgenrc +22 -0
- package/README.md +2 -2
- package/REUSE.toml +39 -1
- package/THIRDPARTY.txt +36 -3
- package/package.json +1 -1
- package/src/jquery.sap.global.js +1 -1
- package/src/jquery.sap.properties.js +1 -1
- package/src/jquery.sap.resources.js +1 -1
- package/src/jquery.sap.script.js +1 -1
- package/src/jquery.sap.storage.js +3 -3
- package/src/sap/base/Event.js +1 -1
- package/src/sap/base/Eventing.js +1 -1
- package/src/sap/base/config.js +1 -1
- package/src/sap/base/i18n/LanguageTag.js +1 -1
- package/src/sap/base/i18n/date/TimezoneUtils.js +1 -1
- package/src/sap/base/util/resolveReference.js +1 -1
- package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
- package/src/sap/base/util/restricted/_castArray.js +1 -1
- package/src/sap/base/util/restricted/_compact.js +1 -1
- package/src/sap/base/util/restricted/_curry.js +1 -1
- package/src/sap/base/util/restricted/_debounce.js +1 -1
- package/src/sap/base/util/restricted/_difference.js +1 -1
- package/src/sap/base/util/restricted/_differenceBy.js +1 -1
- package/src/sap/base/util/restricted/_differenceWith.js +1 -1
- package/src/sap/base/util/restricted/_flatMap.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
- package/src/sap/base/util/restricted/_flatten.js +1 -1
- package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
- package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
- package/src/sap/base/util/restricted/_intersection.js +1 -1
- package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
- package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
- package/src/sap/base/util/restricted/_isEqual.js +1 -1
- package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
- package/src/sap/base/util/restricted/_isNil.js +1 -1
- package/src/sap/base/util/restricted/_max.js +1 -1
- package/src/sap/base/util/restricted/_merge.js +1 -1
- package/src/sap/base/util/restricted/_mergeWith.js +1 -1
- package/src/sap/base/util/restricted/_min.js +1 -1
- package/src/sap/base/util/restricted/_omit.js +1 -1
- package/src/sap/base/util/restricted/_pick.js +1 -1
- package/src/sap/base/util/restricted/_pickBy.js +1 -1
- package/src/sap/base/util/restricted/_throttle.js +1 -1
- package/src/sap/base/util/restricted/_toArray.js +1 -1
- package/src/sap/base/util/restricted/_union.js +1 -1
- package/src/sap/base/util/restricted/_unionBy.js +1 -1
- package/src/sap/base/util/restricted/_unionWith.js +1 -1
- package/src/sap/base/util/restricted/_uniq.js +1 -1
- package/src/sap/base/util/restricted/_uniqBy.js +1 -1
- package/src/sap/base/util/restricted/_uniqWith.js +1 -1
- package/src/sap/base/util/restricted/_without.js +1 -1
- package/src/sap/base/util/restricted/_xor.js +1 -1
- package/src/sap/base/util/restricted/_xorBy.js +1 -1
- package/src/sap/base/util/restricted/_xorWith.js +1 -1
- package/src/sap/base/util/restricted/_zipObject.js +1 -1
- package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
- package/src/sap/ui/Device.js +3 -3
- package/src/sap/ui/Global.js +3 -3
- package/src/sap/ui/base/Event.js +1 -1
- package/src/sap/ui/base/EventProvider.js +1 -1
- package/src/sap/ui/base/Interface.js +1 -1
- package/src/sap/ui/base/ManagedObject.js +1 -1
- package/src/sap/ui/base/ManagedObjectMetadata.js +1 -1
- package/src/sap/ui/base/Metadata.js +1 -1
- package/src/sap/ui/base/Object.js +1 -1
- package/src/sap/ui/base/ObjectPool.js +1 -1
- package/src/sap/ui/core/.library +6 -6
- package/src/sap/ui/core/AppCacheBuster.js +21 -19
- package/src/sap/ui/core/BusyIndicator.js +1 -1
- package/src/sap/ui/core/BusyIndicatorUtils.js +1 -1
- package/src/sap/ui/core/Component.js +46 -35
- package/src/sap/ui/core/ComponentContainer.js +1 -1
- package/src/sap/ui/core/ComponentMetadata.js +1 -1
- package/src/sap/ui/core/ComponentSupport.js +1 -1
- package/src/sap/ui/core/Configuration.js +1 -1
- package/src/sap/ui/core/Control.js +1 -1
- package/src/sap/ui/core/Core.js +2 -2
- package/src/sap/ui/core/CustomData.js +1 -1
- package/src/sap/ui/core/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/Element.js +3 -5
- package/src/sap/ui/core/ElementMetadata.js +1 -1
- package/src/sap/ui/core/EnabledPropagator.js +1 -1
- package/src/sap/ui/core/EventBus.js +1 -1
- package/src/sap/ui/core/Fragment.js +1 -1
- package/src/sap/ui/core/HTML.js +1 -1
- package/src/sap/ui/core/History.js +1 -1
- package/src/sap/ui/core/Icon.js +1 -1
- package/src/sap/ui/core/IndicationColorSupport.js +1 -1
- package/src/sap/ui/core/IntervalTrigger.js +1 -1
- package/src/sap/ui/core/InvisibleMessage.js +1 -1
- package/src/sap/ui/core/InvisibleRenderer.js +1 -1
- package/src/sap/ui/core/InvisibleText.js +1 -1
- package/src/sap/ui/core/Item.js +1 -1
- package/src/sap/ui/core/LabelEnablement.js +1 -1
- package/src/sap/ui/core/LayoutData.js +1 -1
- package/src/sap/ui/core/Lib.js +1 -1
- package/src/sap/ui/core/ListItem.js +1 -1
- package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
- package/src/sap/ui/core/Locale.js +1 -1
- package/src/sap/ui/core/LocaleData.js +1 -1
- package/src/sap/ui/core/Manifest.js +21 -20
- package/src/sap/ui/core/Message.js +1 -1
- package/src/sap/ui/core/Popup.js +13 -6
- package/src/sap/ui/core/RenderManager.js +13 -2
- package/src/sap/ui/core/Renderer.js +1 -1
- package/src/sap/ui/core/ResizeHandler.js +1 -1
- package/src/sap/ui/core/ScrollBar.js +1 -1
- package/src/sap/ui/core/SeparatorItem.js +1 -1
- package/src/sap/ui/core/ShortcutHintsMixin.js +13 -1
- package/src/sap/ui/core/Title.js +1 -1
- package/src/sap/ui/core/TooltipBase.js +1 -1
- package/src/sap/ui/core/UIArea.js +1 -1
- package/src/sap/ui/core/UIComponent.js +1 -1
- package/src/sap/ui/core/UIComponentMetadata.js +1 -1
- package/src/sap/ui/core/ValueStateSupport.js +1 -1
- package/src/sap/ui/core/VariantLayoutData.js +1 -1
- package/src/sap/ui/core/XMLComposite.js +1 -1
- package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
- package/src/sap/ui/core/_UrlResolver.js +31 -29
- package/src/sap/ui/core/date/UI5Date.js +1 -1
- package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
- package/src/sap/ui/core/delegate/ScrollEnablement.js +1 -1
- package/src/sap/ui/core/dnd/DragDropBase.js +1 -1
- package/src/sap/ui/core/dnd/DragDropInfo.js +1 -1
- package/src/sap/ui/core/dnd/DragInfo.js +1 -1
- package/src/sap/ui/core/dnd/DropInfo.js +1 -1
- package/src/sap/ui/core/format/FormatUtils.js +1 -1
- package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
- package/src/sap/ui/core/getCompatibilityVersion.js +1 -1
- package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
- package/src/sap/ui/core/interaction/KeyboardInteractionDisplay.js +21 -2
- package/src/sap/ui/core/library.js +3 -3
- package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
- package/src/sap/ui/core/message/Message.js +1 -1
- package/src/sap/ui/core/message/MessageManager.js +1 -1
- package/src/sap/ui/core/message/MessageParser.js +1 -1
- package/src/sap/ui/core/message/MessageProcessor.js +1 -1
- package/src/sap/ui/core/messagebundle.properties +2 -0
- package/src/sap/ui/core/messagebundle_ar.properties +1 -0
- package/src/sap/ui/core/messagebundle_bg.properties +1 -0
- package/src/sap/ui/core/messagebundle_ca.properties +1 -0
- package/src/sap/ui/core/messagebundle_cnr.properties +1 -0
- package/src/sap/ui/core/messagebundle_cs.properties +1 -0
- package/src/sap/ui/core/messagebundle_cy.properties +1 -0
- package/src/sap/ui/core/messagebundle_da.properties +1 -0
- package/src/sap/ui/core/messagebundle_de.properties +1 -0
- package/src/sap/ui/core/messagebundle_el.properties +1 -0
- package/src/sap/ui/core/messagebundle_en.properties +1 -0
- package/src/sap/ui/core/messagebundle_en_GB.properties +1 -0
- package/src/sap/ui/core/messagebundle_en_US_saprigi.properties +1 -0
- package/src/sap/ui/core/messagebundle_es.properties +1 -0
- package/src/sap/ui/core/messagebundle_es_MX.properties +1 -0
- package/src/sap/ui/core/messagebundle_et.properties +3 -2
- package/src/sap/ui/core/messagebundle_fi.properties +2 -1
- package/src/sap/ui/core/messagebundle_fr.properties +1 -0
- package/src/sap/ui/core/messagebundle_fr_CA.properties +1 -0
- package/src/sap/ui/core/messagebundle_hi.properties +1 -0
- package/src/sap/ui/core/messagebundle_hr.properties +1 -0
- package/src/sap/ui/core/messagebundle_hu.properties +1 -0
- package/src/sap/ui/core/messagebundle_id.properties +1 -0
- package/src/sap/ui/core/messagebundle_it.properties +2 -1
- package/src/sap/ui/core/messagebundle_iw.properties +1 -0
- package/src/sap/ui/core/messagebundle_ja.properties +1 -0
- package/src/sap/ui/core/messagebundle_kk.properties +9 -8
- package/src/sap/ui/core/messagebundle_ko.properties +1 -0
- package/src/sap/ui/core/messagebundle_lt.properties +1 -0
- package/src/sap/ui/core/messagebundle_lv.properties +1 -0
- package/src/sap/ui/core/messagebundle_mk.properties +1 -0
- package/src/sap/ui/core/messagebundle_ms.properties +1 -0
- package/src/sap/ui/core/messagebundle_nl.properties +1 -0
- package/src/sap/ui/core/messagebundle_no.properties +1 -0
- package/src/sap/ui/core/messagebundle_pl.properties +1 -0
- package/src/sap/ui/core/messagebundle_pt.properties +1 -0
- package/src/sap/ui/core/messagebundle_pt_PT.properties +1 -0
- package/src/sap/ui/core/messagebundle_ro.properties +1 -0
- package/src/sap/ui/core/messagebundle_ru.properties +1 -0
- package/src/sap/ui/core/messagebundle_sh.properties +1 -0
- package/src/sap/ui/core/messagebundle_sk.properties +1 -0
- package/src/sap/ui/core/messagebundle_sl.properties +1 -0
- package/src/sap/ui/core/messagebundle_sr.properties +1 -0
- package/src/sap/ui/core/messagebundle_sv.properties +1 -0
- package/src/sap/ui/core/messagebundle_th.properties +2 -1
- package/src/sap/ui/core/messagebundle_tr.properties +1 -0
- package/src/sap/ui/core/messagebundle_uk.properties +2 -1
- package/src/sap/ui/core/messagebundle_vi.properties +1 -0
- package/src/sap/ui/core/messagebundle_zh_CN.properties +1 -0
- package/src/sap/ui/core/messagebundle_zh_TW.properties +1 -0
- package/src/sap/ui/core/mvc/HTMLView.js +1 -1
- package/src/sap/ui/core/mvc/JSONView.js +1 -1
- package/src/sap/ui/core/mvc/JSView.js +1 -1
- package/src/sap/ui/core/mvc/TemplateView.js +1 -1
- package/src/sap/ui/core/mvc/View.js +1 -1
- package/src/sap/ui/core/mvc/XMLView.js +1 -1
- package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
- package/src/sap/ui/core/postmessage/Bus.js +1 -1
- package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
- package/src/sap/ui/core/routing/Router.js +31 -33
- package/src/sap/ui/core/search/OpenSearchProvider.js +1 -1
- package/src/sap/ui/core/search/SearchProvider.js +1 -1
- package/src/sap/ui/core/service/Service.js +1 -1
- package/src/sap/ui/core/service/ServiceFactory.js +1 -1
- package/src/sap/ui/core/service/ServiceFactoryRegistry.js +1 -1
- package/src/sap/ui/core/support/Plugin.js +1 -1
- package/src/sap/ui/core/support/Support.js +1 -1
- package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
- package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
- package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
- package/src/sap/ui/core/support/plugins/Performance.js +1 -1
- package/src/sap/ui/core/support/plugins/Selector.js +1 -1
- package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
- package/src/sap/ui/core/support/plugins/Trace.js +1 -1
- package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
- package/src/sap/ui/core/themes/base/BlindLayer.less +4 -9
- package/src/sap/ui/core/themes/base/BusyIndicator.less +322 -1
- package/src/sap/ui/core/themes/base/CommandShortcutHints.less +9 -9
- package/src/sap/ui/core/themes/base/Icon.less +36 -35
- package/src/sap/ui/core/themes/base/library.source.less +0 -3
- package/src/sap/ui/core/themes/base/parameterClasses.less +32 -20
- package/src/sap/ui/core/themes/base/shared.less +5 -0
- package/src/sap/ui/core/theming/Parameters.js +6 -12
- package/src/sap/ui/core/tmpl/DOMAttribute.js +1 -1
- package/src/sap/ui/core/tmpl/DOMElement.js +1 -1
- package/src/sap/ui/core/tmpl/HandlebarsTemplate.js +1 -1
- package/src/sap/ui/core/tmpl/Template.js +1 -1
- package/src/sap/ui/core/tmpl/TemplateControl.js +1 -1
- package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
- package/src/sap/ui/core/util/Export.js +1 -1
- package/src/sap/ui/core/util/ExportCell.js +1 -1
- package/src/sap/ui/core/util/ExportColumn.js +1 -1
- package/src/sap/ui/core/util/ExportRow.js +1 -1
- package/src/sap/ui/core/util/ExportType.js +1 -1
- package/src/sap/ui/core/util/ExportTypeCSV.js +1 -1
- package/src/sap/ui/core/util/File.js +1 -1
- package/src/sap/ui/core/util/LibraryInfo.js +1 -1
- package/src/sap/ui/core/util/MockServer.js +1 -1
- package/src/sap/ui/core/util/PasteHelper.js +1 -1
- package/src/sap/ui/core/util/_LocalizationHelper.js +1 -1
- package/src/sap/ui/core/util/reflection/BaseTreeModifier.js +2 -2
- package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +1 -1
- package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +2 -2
- package/src/sap/ui/core/util/serializer/HTMLViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/Serializer.js +1 -1
- package/src/sap/ui/core/util/serializer/ViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/XMLViewSerializer.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/Delegate.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/HTML.js +1 -1
- package/src/sap/ui/core/util/serializer/delegate/XML.js +1 -1
- package/src/sap/ui/core/webc/WebComponent.js +1 -1
- package/src/sap/ui/core/webc/WebComponentMetadata.js +1 -1
- package/src/sap/ui/core/ws/ReadyState.js +1 -1
- package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
- package/src/sap/ui/core/ws/WebSocket.js +7 -11
- package/src/sap/ui/debug/ControlTree.js +1 -1
- package/src/sap/ui/debug/DebugEnv.js +1 -1
- package/src/sap/ui/debug/PropertyList.js +1 -1
- package/src/sap/ui/events/FocusEventFix.js +36 -0
- package/src/sap/ui/model/ClientModel.js +1 -1
- package/src/sap/ui/model/CompositeDataState.js +1 -1
- package/src/sap/ui/model/CompositeType.js +1 -1
- package/src/sap/ui/model/DataState.js +1 -1
- package/src/sap/ui/model/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +52 -3
- package/src/sap/ui/model/SelectionModel.js +1 -1
- package/src/sap/ui/model/SimpleType.js +1 -1
- package/src/sap/ui/model/TreeAutoExpandMode.js +1 -1
- package/src/sap/ui/model/Type.js +1 -1
- package/src/sap/ui/model/base/ManagedObjectModel.js +7 -4
- package/src/sap/ui/model/json/JSONModel.js +8 -3
- package/src/sap/ui/model/message/MessageModel.js +1 -1
- package/src/sap/ui/model/odata/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/ODataMessageParser.js +1 -1
- package/src/sap/ui/model/odata/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/ODataMetadata.js +1 -1
- package/src/sap/ui/model/odata/ODataModel.js +1 -1
- package/src/sap/ui/model/odata/type/Boolean.js +1 -1
- package/src/sap/ui/model/odata/type/Byte.js +1 -1
- package/src/sap/ui/model/odata/type/Currency.js +1 -1
- package/src/sap/ui/model/odata/type/Date.js +1 -1
- package/src/sap/ui/model/odata/type/DateTime.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
- package/src/sap/ui/model/odata/type/Decimal.js +43 -15
- package/src/sap/ui/model/odata/type/Double.js +1 -1
- package/src/sap/ui/model/odata/type/Guid.js +1 -1
- package/src/sap/ui/model/odata/type/Int.js +1 -1
- package/src/sap/ui/model/odata/type/Int16.js +1 -1
- package/src/sap/ui/model/odata/type/Int32.js +1 -1
- package/src/sap/ui/model/odata/type/Int64.js +1 -1
- package/src/sap/ui/model/odata/type/ODataType.js +1 -1
- package/src/sap/ui/model/odata/type/Raw.js +1 -1
- package/src/sap/ui/model/odata/type/SByte.js +1 -1
- package/src/sap/ui/model/odata/type/Single.js +1 -1
- package/src/sap/ui/model/odata/type/Stream.js +1 -1
- package/src/sap/ui/model/odata/type/String.js +1 -1
- package/src/sap/ui/model/odata/type/Time.js +1 -1
- package/src/sap/ui/model/odata/type/TimeOfDay.js +1 -1
- package/src/sap/ui/model/odata/type/Unit.js +1 -1
- package/src/sap/ui/model/odata/v2/Context.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataModel.js +19 -6
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +20 -7
- package/src/sap/ui/model/odata/v4/AnnotationHelper.js +50 -50
- package/src/sap/ui/model/odata/v4/Context.js +43 -33
- package/src/sap/ui/model/odata/v4/ODataBinding.js +3 -3
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +6 -6
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +47 -24
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +31 -34
- package/src/sap/ui/model/odata/v4/ODataModel.js +42 -38
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +5 -5
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataUtils.js +6 -6
- package/src/sap/ui/model/odata/v4/_AnnotationHelperExpression.js +46 -46
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +10 -5
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +21 -24
- package/src/sap/ui/model/odata/v4/lib/_GroupLock.js +6 -7
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +7 -7
- package/src/sap/ui/model/odata/v4/lib/_MetadataConverter.js +2 -1
- package/src/sap/ui/model/odata/v4/lib/_MetadataRequestor.js +5 -5
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +105 -38
- package/src/sap/ui/model/odata/v4/lib/_V4MetadataConverter.js +10 -3
- package/src/sap/ui/model/odata/v4/ts.js +2 -2
- package/src/sap/ui/model/resource/ResourceModel.js +1 -1
- package/src/sap/ui/model/type/Boolean.js +1 -1
- package/src/sap/ui/model/type/Currency.js +1 -1
- package/src/sap/ui/model/type/Date.js +1 -1
- package/src/sap/ui/model/type/DateInterval.js +1 -1
- package/src/sap/ui/model/type/DateTime.js +1 -1
- package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
- package/src/sap/ui/model/type/FileSize.js +1 -1
- package/src/sap/ui/model/type/Float.js +1 -1
- package/src/sap/ui/model/type/Integer.js +1 -1
- package/src/sap/ui/model/type/String.js +1 -1
- package/src/sap/ui/model/type/Time.js +1 -1
- package/src/sap/ui/model/type/TimeInterval.js +1 -1
- package/src/sap/ui/model/type/Unit.js +1 -1
- package/src/sap/ui/model/xml/XMLModel.js +1 -1
- package/src/sap/ui/performance/Measurement.js +18 -24
- package/src/sap/ui/performance/trace/FESR.js +3 -2
- package/src/sap/ui/performance/trace/Interaction.js +35 -2
- package/src/sap/ui/performance/trace/_InteractionImpl.js +254 -166
- package/src/sap/ui/qunit/qunit-coverage.js +1 -1
- package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
- package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
- package/src/sap/ui/test/_BrowserLogCollector.js +1 -4
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/test/launchers/componentLauncher.js +3 -2
- package/src/sap/ui/test/launchers/iFrameLauncher.js +3 -1
- package/src/sap/ui/test/starter/_setupAndStart.js +3 -1
- package/src/sap/ui/test/starter/_utils.js +5 -59
- package/src/sap/ui/test/starter/config.js +555 -0
- package/src/sap/ui/thirdparty/require.js +255 -162
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/sap/ui/util/_URL.js +158 -0
- package/src/ui5loader.js +2 -2
- package/src/sap/ui/core/themes/base/LocalBusyIndicator.less +0 -293
- package/src/sap/ui/core/themes/base/Shadow.less +0 -3
- package/src/sap/ui/core/themes/base/TechnicalInfo.less +0 -157
|
@@ -76,6 +76,8 @@ sap.ui.define([
|
|
|
76
76
|
* {@link sap.ui.model.odata.v4.lib._Helper.buildQuery}; used only to request the CSRF token
|
|
77
77
|
* @param {object} oModelInterface
|
|
78
78
|
* An interface allowing to call back to the owning model (see {@link .create})
|
|
79
|
+
* @param {string} sODataVersion
|
|
80
|
+
* The version of the OData service. Supported values are "2.0", "4.0", and "4.01".
|
|
79
81
|
* @param {boolean} [bWithCredentials]
|
|
80
82
|
* Whether the XHR should be called with <code>withCredentials</code>
|
|
81
83
|
*
|
|
@@ -83,12 +85,14 @@ sap.ui.define([
|
|
|
83
85
|
* @constructor
|
|
84
86
|
* @private
|
|
85
87
|
*/
|
|
86
|
-
function _Requestor(sServiceUrl, mHeaders, mQueryParams, oModelInterface,
|
|
88
|
+
function _Requestor(sServiceUrl, mHeaders, mQueryParams, oModelInterface, sODataVersion,
|
|
89
|
+
bWithCredentials) {
|
|
87
90
|
this.mBatchQueue = {};
|
|
88
91
|
this.bBatchSent = false;
|
|
89
92
|
this.mHeaders = mHeaders || {};
|
|
90
93
|
this.aLockedGroupLocks = [];
|
|
91
94
|
this.oModelInterface = oModelInterface;
|
|
95
|
+
this.sODataVersion = sODataVersion;
|
|
92
96
|
this.oOptimisticBatch = null; // optimistic batch processing off
|
|
93
97
|
this.sQueryParams = _Helper.buildQuery(mQueryParams); // Used for $batch and CSRF token only
|
|
94
98
|
this.mRunningChangeRequests = {}; // map from group ID to a SyncPromise[]
|
|
@@ -98,36 +102,52 @@ sap.ui.define([
|
|
|
98
102
|
this.vStatistics = mQueryParams && mQueryParams["sap-statistics"];
|
|
99
103
|
this.bWithCredentials = bWithCredentials;
|
|
100
104
|
this.processSecurityTokenHandlers(); // sets this.oSecurityTokenPromise
|
|
105
|
+
|
|
106
|
+
if (sODataVersion === "4.01") {
|
|
107
|
+
this.mPredefinedRequestHeaders = Object.freeze({
|
|
108
|
+
...this.mPredefinedRequestHeaders,
|
|
109
|
+
"OData-MaxVersion" : "4.01",
|
|
110
|
+
"OData-Version" : "4.01"
|
|
111
|
+
});
|
|
112
|
+
}
|
|
101
113
|
}
|
|
102
114
|
|
|
103
115
|
/**
|
|
104
116
|
* Final (cannot be overridden) request headers for OData V4.
|
|
117
|
+
*
|
|
118
|
+
* @private
|
|
105
119
|
*/
|
|
106
|
-
_Requestor.prototype.mFinalHeaders = {
|
|
120
|
+
_Requestor.prototype.mFinalHeaders = Object.freeze({
|
|
107
121
|
"Content-Type" : "application/json;charset=UTF-8;IEEE754Compatible=true"
|
|
108
|
-
};
|
|
122
|
+
});
|
|
109
123
|
|
|
110
124
|
/**
|
|
111
125
|
* Predefined request headers in $batch parts for OData V4.
|
|
126
|
+
*
|
|
127
|
+
* @private
|
|
112
128
|
*/
|
|
113
|
-
_Requestor.prototype.mPredefinedPartHeaders = {
|
|
129
|
+
_Requestor.prototype.mPredefinedPartHeaders = Object.freeze({
|
|
114
130
|
Accept : "application/json;odata.metadata=minimal;IEEE754Compatible=true"
|
|
115
|
-
};
|
|
131
|
+
});
|
|
116
132
|
|
|
117
133
|
/**
|
|
118
134
|
* Predefined request headers for all requests for OData V4.
|
|
135
|
+
*
|
|
136
|
+
* @private
|
|
119
137
|
*/
|
|
120
|
-
_Requestor.prototype.mPredefinedRequestHeaders = {
|
|
138
|
+
_Requestor.prototype.mPredefinedRequestHeaders = Object.freeze({
|
|
121
139
|
Accept : "application/json;odata.metadata=minimal;IEEE754Compatible=true",
|
|
122
|
-
"OData-MaxVersion" : "4.0",
|
|
123
|
-
"OData-Version" : "4.0",
|
|
140
|
+
"OData-MaxVersion" : "4.0", // Note: may be "overridden" in c'tor
|
|
141
|
+
"OData-Version" : "4.0", // dito
|
|
124
142
|
"X-CSRF-Token" : "Fetch"
|
|
125
|
-
};
|
|
143
|
+
});
|
|
126
144
|
|
|
127
145
|
/**
|
|
128
146
|
* OData V4 request headers reserved for internal use.
|
|
147
|
+
*
|
|
148
|
+
* @private
|
|
129
149
|
*/
|
|
130
|
-
_Requestor.prototype.mReservedHeaders = {
|
|
150
|
+
_Requestor.prototype.mReservedHeaders = Object.freeze({
|
|
131
151
|
accept : true,
|
|
132
152
|
"accept-charset" : true,
|
|
133
153
|
"content-encoding" : true,
|
|
@@ -144,7 +164,7 @@ sap.ui.define([
|
|
|
144
164
|
"odata-version" : true,
|
|
145
165
|
prefer : true,
|
|
146
166
|
"sap-contextid" : true
|
|
147
|
-
};
|
|
167
|
+
});
|
|
148
168
|
|
|
149
169
|
/**
|
|
150
170
|
* Adds a change set to the batch queue for the given group. All modifying requests created
|
|
@@ -757,7 +777,7 @@ sap.ui.define([
|
|
|
757
777
|
};
|
|
758
778
|
|
|
759
779
|
/**
|
|
760
|
-
* Checks whether the "OData-Version" header is
|
|
780
|
+
* Checks whether the "OData-Version" header is as expected, otherwise an error is thrown.
|
|
761
781
|
*
|
|
762
782
|
* @param {function} fnGetHeader
|
|
763
783
|
* A callback function to get a header attribute for a given header name with case-insensitive
|
|
@@ -767,7 +787,8 @@ sap.ui.define([
|
|
|
767
787
|
* @param {boolean} [bVersionOptional]
|
|
768
788
|
* Indicates whether the OData service version is optional, which is the case for responses
|
|
769
789
|
* contained in a response for a $batch request
|
|
770
|
-
* @
|
|
790
|
+
* @returns {string} The response's "OData-Version" header value
|
|
791
|
+
* @throws {Error} If the "OData-Version" header is not as expected
|
|
771
792
|
*
|
|
772
793
|
* @private
|
|
773
794
|
*/
|
|
@@ -781,8 +802,9 @@ sap.ui.define([
|
|
|
781
802
|
+ " 'DataServiceVersion' header with value '" + vDataServiceVersion
|
|
782
803
|
+ "' in response for " + this.sServiceUrl + sResourcePath);
|
|
783
804
|
}
|
|
784
|
-
if (sODataVersion
|
|
785
|
-
|
|
805
|
+
if (!sODataVersion && bVersionOptional || sODataVersion === this.sODataVersion
|
|
806
|
+
|| sODataVersion === "4.0") {
|
|
807
|
+
return sODataVersion;
|
|
786
808
|
}
|
|
787
809
|
throw new Error("Expected 'OData-Version' header with value '4.0' but received value '"
|
|
788
810
|
+ sODataVersion + "' in response for " + this.sServiceUrl + sResourcePath);
|
|
@@ -932,12 +954,12 @@ sap.ui.define([
|
|
|
932
954
|
* Formats a given internal value into a literal suitable for usage in URLs.
|
|
933
955
|
*
|
|
934
956
|
* @param {any} vValue
|
|
935
|
-
* The value according to "OData JSON Format Version 4.
|
|
957
|
+
* The value according to "OData JSON Format Version 4.01" section "7.1 Primitive Value"
|
|
936
958
|
* @param {object} oProperty
|
|
937
959
|
* The OData property
|
|
938
960
|
* @returns {string}
|
|
939
|
-
* The literal according to "OData Version 4.
|
|
940
|
-
* "5.1.1.
|
|
961
|
+
* The literal according to "OData Version 4.01 Part 2: URL Conventions" section
|
|
962
|
+
* "5.1.1.14.1 Primitive Literals"
|
|
941
963
|
* @throws {Error}
|
|
942
964
|
* If the value is undefined or the type is not supported
|
|
943
965
|
*
|
|
@@ -1413,9 +1435,13 @@ sap.ui.define([
|
|
|
1413
1435
|
that.oModelInterface.onHttpResponse(vResponse.headers);
|
|
1414
1436
|
if (vResponse.responseText) {
|
|
1415
1437
|
try {
|
|
1416
|
-
that.doCheckVersionHeader(
|
|
1417
|
-
vRequest.url, true);
|
|
1418
|
-
|
|
1438
|
+
const sODataVersion = that.doCheckVersionHeader(
|
|
1439
|
+
getResponseHeader.bind(vResponse), vRequest.url, true);
|
|
1440
|
+
const fnReviver = sODataVersion === "4.01"
|
|
1441
|
+
? _Requestor.reviver
|
|
1442
|
+
: undefined;
|
|
1443
|
+
oResponse = that.doConvertResponse(
|
|
1444
|
+
JSON.parse(vResponse.responseText, fnReviver),
|
|
1419
1445
|
vRequest.$metaPath);
|
|
1420
1446
|
} catch (oErr) {
|
|
1421
1447
|
vRequest.$reject(oErr);
|
|
@@ -1427,7 +1453,7 @@ sap.ui.define([
|
|
|
1427
1453
|
oResponse = vRequest.method === "GET" ? null : {};
|
|
1428
1454
|
}
|
|
1429
1455
|
that.reportHeaderMessages(vRequest.$resourcePath,
|
|
1430
|
-
getResponseHeader.call(vResponse, "sap-messages"), oResponse);
|
|
1456
|
+
getResponseHeader.call(vResponse, "sap-messages"), oResponse, vRequest.url);
|
|
1431
1457
|
sETag = getResponseHeader.call(vResponse, "ETag");
|
|
1432
1458
|
if (sETag) {
|
|
1433
1459
|
oResponse["@odata.etag"] = sETag;
|
|
@@ -1781,7 +1807,8 @@ sap.ui.define([
|
|
|
1781
1807
|
|
|
1782
1808
|
/**
|
|
1783
1809
|
* Reports OData messages from the "sap-messages" response header (or forwards them via the
|
|
1784
|
-
* response object).
|
|
1810
|
+
* response object). When reporting, the longtext URL is already resolved w.r.t. the request URL
|
|
1811
|
+
* and the original message is preserved early on.
|
|
1785
1812
|
*
|
|
1786
1813
|
* @param {string} sResourcePath
|
|
1787
1814
|
* The resource path of the request whose response contained the messages, see also
|
|
@@ -1791,15 +1818,24 @@ sap.ui.define([
|
|
|
1791
1818
|
* @param {object} oResponse
|
|
1792
1819
|
* The response object, needed in case <code>sResourcePath === "R#V#C"</code> as described
|
|
1793
1820
|
* at {@link #request}
|
|
1821
|
+
* @param {string} [sRequestUrl]
|
|
1822
|
+
* A resource path relative to the service URL for which this requestor has been created
|
|
1794
1823
|
*
|
|
1795
1824
|
* @private
|
|
1796
1825
|
*/
|
|
1797
|
-
_Requestor.prototype.reportHeaderMessages = function (sResourcePath, sMessages, oResponse
|
|
1826
|
+
_Requestor.prototype.reportHeaderMessages = function (sResourcePath, sMessages, oResponse,
|
|
1827
|
+
sRequestUrl) {
|
|
1798
1828
|
if (sMessages) {
|
|
1799
1829
|
const aMessages = JSON.parse(sMessages);
|
|
1800
1830
|
if (sResourcePath === "R#V#C") {
|
|
1801
1831
|
_Helper.setPrivateAnnotation(oResponse, "headerMessages", aMessages);
|
|
1802
1832
|
} else {
|
|
1833
|
+
const sAbsoluteRequestUrl = this.sServiceUrl + sRequestUrl;
|
|
1834
|
+
aMessages.forEach((oMessage) => {
|
|
1835
|
+
oMessage["@$ui5.originalMessage"] = _Helper.clone(oMessage);
|
|
1836
|
+
oMessage.longtextUrl
|
|
1837
|
+
&&= _Helper.makeAbsolute(oMessage.longtextUrl, sAbsoluteRequestUrl);
|
|
1838
|
+
});
|
|
1803
1839
|
this.oModelInterface.reportTransitionMessages(aMessages, sResourcePath);
|
|
1804
1840
|
}
|
|
1805
1841
|
}
|
|
@@ -1823,8 +1859,8 @@ sap.ui.define([
|
|
|
1823
1859
|
* other group ID values, the request is added to the given group and you can use
|
|
1824
1860
|
* {@link #submitBatch} to send all requests in that group. This group lock will be unlocked
|
|
1825
1861
|
* immediately, even if the request itself is queued. The request is rejected if the lock is
|
|
1826
|
-
* already canceled. For a group lock
|
|
1827
|
-
* of its own (unless <code>bAtFront</code> is used).
|
|
1862
|
+
* already canceled. For a group lock with a negative serial number, a non-GET is put into a
|
|
1863
|
+
* change set of its own (unless <code>bAtFront</code> is used).
|
|
1828
1864
|
* @param {object} [mHeaders]
|
|
1829
1865
|
* Map of request-specific headers, overriding both the mandatory OData V4 headers and the
|
|
1830
1866
|
* default headers given to the factory. This map of headers must not contain
|
|
@@ -1881,6 +1917,7 @@ sap.ui.define([
|
|
|
1881
1917
|
* <li>the {@link #checkConflictingStrictRequest rules for strict handling} w.r.t. change
|
|
1882
1918
|
* sets are violated
|
|
1883
1919
|
* </ul>
|
|
1920
|
+
*
|
|
1884
1921
|
* @public
|
|
1885
1922
|
*/
|
|
1886
1923
|
_Requestor.prototype.request = function (sMethod, sResourcePath, oGroupLock, mHeaders, oPayload,
|
|
@@ -1946,18 +1983,19 @@ sap.ui.define([
|
|
|
1946
1983
|
} else if (bAtFront) { // add at front of first change set
|
|
1947
1984
|
aRequests[0].unshift(oRequest);
|
|
1948
1985
|
} else { // push into change set which was current when the request was initiated
|
|
1949
|
-
if (!iRequestSerialNumber && aRequests[aRequests.iChangeSet].length) {
|
|
1950
|
-
that.addChangeSet(sGroupId);
|
|
1951
|
-
}
|
|
1952
1986
|
iChangeSetNo = aRequests.iChangeSet;
|
|
1953
|
-
while (aRequests[iChangeSetNo].iSerialNumber > iRequestSerialNumber) {
|
|
1987
|
+
while (aRequests[iChangeSetNo].iSerialNumber > Math.abs(iRequestSerialNumber)) {
|
|
1954
1988
|
iChangeSetNo -= 1;
|
|
1955
1989
|
}
|
|
1990
|
+
if (iRequestSerialNumber < 0) {
|
|
1991
|
+
iChangeSetNo += 1; // insert own change set *afterwards*
|
|
1992
|
+
const aChangeSet = [];
|
|
1993
|
+
aChangeSet.iSerialNumber = -iRequestSerialNumber;
|
|
1994
|
+
aRequests.iChangeSet += 1;
|
|
1995
|
+
aRequests.splice(iChangeSetNo, 0, aChangeSet);
|
|
1996
|
+
}
|
|
1956
1997
|
that.checkConflictingStrictRequest(oRequest, aRequests, iChangeSetNo);
|
|
1957
1998
|
aRequests[iChangeSetNo].push(oRequest);
|
|
1958
|
-
if (!iRequestSerialNumber) {
|
|
1959
|
-
that.addChangeSet(sGroupId);
|
|
1960
|
-
}
|
|
1961
1999
|
}
|
|
1962
2000
|
if (sGroupId === "$single") {
|
|
1963
2001
|
that.submitBatch("$single").catch(that.oModelInterface.getReporter());
|
|
@@ -1989,7 +2027,8 @@ sap.ui.define([
|
|
|
1989
2027
|
// Note: "text/plain" used for $count
|
|
1990
2028
|
typeof oResponse.body === "string" ? JSON.parse(oResponse.body) : oResponse.body,
|
|
1991
2029
|
sMetaPath);
|
|
1992
|
-
that.reportHeaderMessages(sOriginalResourcePath, oResponse.messages, oResult
|
|
2030
|
+
that.reportHeaderMessages(sOriginalResourcePath, oResponse.messages, oResult,
|
|
2031
|
+
sResourcePath);
|
|
1993
2032
|
return oResult;
|
|
1994
2033
|
});
|
|
1995
2034
|
};
|
|
@@ -2012,7 +2051,7 @@ sap.ui.define([
|
|
|
2012
2051
|
this.oModelInterface.isIgnoreETag()
|
|
2013
2052
|
);
|
|
2014
2053
|
|
|
2015
|
-
return this.processOptimisticBatch(aRequests, sGroupId)
|
|
2054
|
+
return !bHasChanges && this.processOptimisticBatch(aRequests, sGroupId)
|
|
2016
2055
|
|| this.sendRequest("POST", "$batch" + this.sQueryParams,
|
|
2017
2056
|
Object.assign(oBatchRequest.headers, mBatchHeaders,
|
|
2018
2057
|
bHasChanges ? undefined : {"sap-cancel-on-close" : "true"},
|
|
@@ -2354,6 +2393,8 @@ sap.ui.define([
|
|
|
2354
2393
|
* @param {string} sOptimisticGroupId The group ID of the optimistic batch
|
|
2355
2394
|
* @returns {boolean}
|
|
2356
2395
|
* Whether the actual batch requests and group ID matches the optimistic one
|
|
2396
|
+
*
|
|
2397
|
+
* @private
|
|
2357
2398
|
*/
|
|
2358
2399
|
_Requestor.matchesOptimisticBatch = function (aActualRequests, sActualGroupId,
|
|
2359
2400
|
aOptimisticRequests, sOptimisticGroupId) {
|
|
@@ -2441,17 +2482,19 @@ sap.ui.define([
|
|
|
2441
2482
|
* A map of query parameters as described in
|
|
2442
2483
|
* {@link sap.ui.model.odata.v4.lib._Helper.buildQuery}; used only to request the CSRF
|
|
2443
2484
|
* token
|
|
2444
|
-
* @param {string}
|
|
2445
|
-
* The version of the OData service. Supported values are "2.0" and "4.
|
|
2485
|
+
* @param {string} sODataVersion
|
|
2486
|
+
* The version of the OData service. Supported values are "2.0", "4.0", and "4.01".
|
|
2446
2487
|
* @param {boolean} [bWithCredentials]
|
|
2447
2488
|
* Whether the XHR should be called with <code>withCredentials</code>
|
|
2448
2489
|
* @returns {object}
|
|
2449
2490
|
* A new <code>_Requestor</code> instance
|
|
2491
|
+
*
|
|
2492
|
+
* @public
|
|
2450
2493
|
*/
|
|
2451
2494
|
_Requestor.create = function (sServiceUrl, oModelInterface, mHeaders, mQueryParams,
|
|
2452
2495
|
sODataVersion, bWithCredentials) {
|
|
2453
2496
|
var oRequestor = new _Requestor(sServiceUrl, mHeaders, mQueryParams, oModelInterface,
|
|
2454
|
-
bWithCredentials);
|
|
2497
|
+
sODataVersion, bWithCredentials);
|
|
2455
2498
|
|
|
2456
2499
|
if (sODataVersion === "2.0") {
|
|
2457
2500
|
asV2Requestor(oRequestor);
|
|
@@ -2460,5 +2503,29 @@ sap.ui.define([
|
|
|
2460
2503
|
return oRequestor;
|
|
2461
2504
|
};
|
|
2462
2505
|
|
|
2506
|
+
/**
|
|
2507
|
+
* A "reviver" function to be used by JSON.parse in order to transform 4.01 control information
|
|
2508
|
+
* back to 4.0 format by adding missing "odata." infixes and missing hashes for "@odata.type".
|
|
2509
|
+
*
|
|
2510
|
+
* @param {string} sProperty - The current property's name
|
|
2511
|
+
* @param {any} vPropertyValue - The current property's value
|
|
2512
|
+
* @returns {any|undefined}
|
|
2513
|
+
* The current property's value or <code>undefined</code> in order to ignore delete it
|
|
2514
|
+
*
|
|
2515
|
+
* @private
|
|
2516
|
+
*/
|
|
2517
|
+
_Requestor.reviver = function (sProperty, vPropertyValue) {
|
|
2518
|
+
if (sProperty.includes("@") && !sProperty.includes(".")) {
|
|
2519
|
+
// control information w/o "odata."
|
|
2520
|
+
if (sProperty.endsWith("@type") && !vPropertyValue.includes("#")) {
|
|
2521
|
+
// "built-in primitive type value"
|
|
2522
|
+
vPropertyValue = "#" + vPropertyValue;
|
|
2523
|
+
}
|
|
2524
|
+
this[sProperty.replace("@", "@odata.")] = vPropertyValue;
|
|
2525
|
+
return undefined; // "delete this[sProperty]"
|
|
2526
|
+
}
|
|
2527
|
+
return vPropertyValue;
|
|
2528
|
+
};
|
|
2529
|
+
|
|
2463
2530
|
return _Requestor;
|
|
2464
2531
|
}, /* bExport= */false);
|
|
@@ -14,14 +14,19 @@ sap.ui.define([
|
|
|
14
14
|
/**
|
|
15
15
|
* Creates a converter for V4 metadata.
|
|
16
16
|
*
|
|
17
|
+
* @param {string} sODataVersion
|
|
18
|
+
* The version of the OData service. Supported values are "2.0" (in case an annotation file is
|
|
19
|
+
* converted), "4.0", and "4.01".
|
|
20
|
+
*
|
|
17
21
|
* @alias sap.ui.model.odata.v4.lib._V4MetadataConverter
|
|
18
22
|
* @constructor
|
|
19
23
|
* @extends sap.ui.model.odata.v4.lib._MetadataConverter
|
|
20
24
|
*/
|
|
21
|
-
function _V4MetadataConverter() {
|
|
25
|
+
function _V4MetadataConverter(sODataVersion) {
|
|
22
26
|
this.enumType = null; // the current EnumType
|
|
23
27
|
this.enumTypeMemberCounter = 0; // the current EnumType member value counter
|
|
24
28
|
this.navigationProperty = null; // the current NavigationProperty
|
|
29
|
+
this.odataVersion = sODataVersion;
|
|
25
30
|
|
|
26
31
|
_MetadataConverter.call(this);
|
|
27
32
|
}
|
|
@@ -33,7 +38,7 @@ sap.ui.define([
|
|
|
33
38
|
* @see sap.ui.model.odata.v4.lib._MetadataConverter#finalize
|
|
34
39
|
*/
|
|
35
40
|
_V4MetadataConverter.prototype.finalize = function () {
|
|
36
|
-
if (this.result.$Version !== "4.0") {
|
|
41
|
+
if (this.result.$Version !== this.odataVersion && this.result.$Version !== "4.0") {
|
|
37
42
|
throw new Error(this.url + ": Unsupported OData version " + this.result.$Version);
|
|
38
43
|
}
|
|
39
44
|
};
|
|
@@ -250,7 +255,9 @@ sap.ui.define([
|
|
|
250
255
|
},
|
|
251
256
|
Precision : this.setNumber,
|
|
252
257
|
Scale : function (sValue) {
|
|
253
|
-
return sValue === "
|
|
258
|
+
return sValue === "floating" || sValue === "variable"
|
|
259
|
+
? sValue
|
|
260
|
+
: that.setNumber(sValue);
|
|
254
261
|
},
|
|
255
262
|
SRID : this.setValue,
|
|
256
263
|
Unicode : this.setIfFalse
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
|
-
* An object representing a "14.5
|
|
17
|
+
* An object representing a "14.4.1.5 Expression edm:NavigationPropertyPath". Its shape corresponds
|
|
18
18
|
* exactly to the shape of such an expression in the
|
|
19
19
|
* {@link topic:87aac894a40640f89920d7b2a414499b OData V4 Metadata JSON Format} as returned by
|
|
20
20
|
* {@link sap.ui.model.odata.v4.ODataMetaModel#requestObject}.
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
*/
|
|
30
30
|
|
|
31
31
|
/**
|
|
32
|
-
* An object representing a "14.
|
|
32
|
+
* An object representing a "14.4.1.6 Expression edm:PropertyPath". Its shape corresponds exactly to
|
|
33
33
|
* the shape of such an expression in the
|
|
34
34
|
* {@link topic:87aac894a40640f89920d7b2a414499b OData V4 Metadata JSON Format} as returned by
|
|
35
35
|
* {@link sap.ui.model.odata.v4.ODataMetaModel#requestObject}.
|
|
@@ -227,7 +227,7 @@ sap.ui.define([
|
|
|
227
227
|
*
|
|
228
228
|
* @extends sap.ui.model.Model
|
|
229
229
|
* @public
|
|
230
|
-
* @version 1.
|
|
230
|
+
* @version 1.142.1
|
|
231
231
|
*/
|
|
232
232
|
var ResourceModel = Model.extend("sap.ui.model.resource.ResourceModel", /** @lends sap.ui.model.resource.ResourceModel.prototype */ {
|
|
233
233
|
|
|
@@ -27,7 +27,7 @@ sap.ui.define([
|
|
|
27
27
|
* @extends sap.ui.model.SimpleType
|
|
28
28
|
*
|
|
29
29
|
* @author SAP SE
|
|
30
|
-
* @version 1.
|
|
30
|
+
* @version 1.142.1
|
|
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}.
|
|
@@ -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.
|
|
22
|
+
* @version 1.142.1
|
|
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.
|
|
22
|
+
* @version 1.142.1
|
|
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(['./Date', 'sap/ui/core/format/DateFormat'],
|
|
|
19
19
|
* @extends sap.ui.model.type.Date
|
|
20
20
|
*
|
|
21
21
|
* @author SAP SE
|
|
22
|
-
* @version 1.
|
|
22
|
+
* @version 1.142.1
|
|
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.
|
|
22
|
+
* @version 1.142.1
|
|
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}.
|
|
@@ -7,9 +7,15 @@
|
|
|
7
7
|
* IMPORTANT: This is a private module, its API must not be used and is subject to change.
|
|
8
8
|
* Code other than the OpenUI5 libraries must not introduce dependencies to this module.
|
|
9
9
|
*/
|
|
10
|
-
sap.ui.define([
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
sap.ui.define([
|
|
11
|
+
'sap/base/Log',
|
|
12
|
+
'sap/base/util/now',
|
|
13
|
+
"sap/ui/performance/XHRInterceptor"
|
|
14
|
+
], function(
|
|
15
|
+
Log,
|
|
16
|
+
now,
|
|
17
|
+
XHRInterceptor
|
|
18
|
+
) {
|
|
13
19
|
"use strict";
|
|
14
20
|
|
|
15
21
|
/**
|
|
@@ -85,7 +91,6 @@ sap.ui.define(['sap/base/Log', 'sap/base/util/now'
|
|
|
85
91
|
}
|
|
86
92
|
|
|
87
93
|
var bActive = false,
|
|
88
|
-
fnXHR = XMLHttpRequest,
|
|
89
94
|
aRestrictedCategories = null,
|
|
90
95
|
aAverageMethods = [],
|
|
91
96
|
aOriginalMethods = [],
|
|
@@ -132,7 +137,7 @@ sap.ui.define(['sap/base/Log', 'sap/base/util/now'
|
|
|
132
137
|
return;
|
|
133
138
|
}
|
|
134
139
|
bActive = bOn;
|
|
135
|
-
if (bActive) {
|
|
140
|
+
if (bActive && !XHRInterceptor.isRegistered("MEASUREMENT", "open")) {
|
|
136
141
|
|
|
137
142
|
//activate method implementations once
|
|
138
143
|
for (var sName in mMethods) {
|
|
@@ -143,25 +148,14 @@ sap.ui.define(['sap/base/Log', 'sap/base/util/now'
|
|
|
143
148
|
fnStart = this.start;
|
|
144
149
|
|
|
145
150
|
// wrap and instrument XHR
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
fnStart(sMeasureId, "Request for " + sMeasureId, "xmlhttprequest");
|
|
155
|
-
oXHR.addEventListener("loadend", fnEnd.bind(null, sMeasureId));
|
|
156
|
-
|
|
157
|
-
fnOpen.apply(this, arguments);
|
|
158
|
-
};
|
|
159
|
-
|
|
160
|
-
return oXHR;
|
|
161
|
-
};
|
|
162
|
-
} else {
|
|
163
|
-
/* eslint-disable-next-line no-global-assign */
|
|
164
|
-
XMLHttpRequest = fnXHR;
|
|
151
|
+
XHRInterceptor.register("MEASUREMENT", "open", function (sMethod, sUrl, bAsync) {
|
|
152
|
+
const sMeasureId = new URL(sUrl, document.baseURI).href;
|
|
153
|
+
fnStart(sMeasureId, "Request for " + sMeasureId, "xmlhttprequest");
|
|
154
|
+
this.addEventListener("loadend", fnEnd.bind(null, sMeasureId));
|
|
155
|
+
|
|
156
|
+
});
|
|
157
|
+
} else if (XHRInterceptor.isRegistered("MEASUREMENT", "open")) {
|
|
158
|
+
XHRInterceptor.unregister("MEASUREMENT", "open");
|
|
165
159
|
}
|
|
166
160
|
|
|
167
161
|
return bActive;
|
|
@@ -142,7 +142,7 @@ sap.ui.define([
|
|
|
142
142
|
formatInt(oInteraction.busyDuration, 4), // extension_1 - busy duration
|
|
143
143
|
formatInt(oFESRHandle.interactionType || 0, 4), // extension_2 - type of interaction: 0 = not implemented, 1 = app start, 2 = follow up step, 3 = unknown
|
|
144
144
|
format(CLIENT_DEVICE, 1), // extension_3 - client device
|
|
145
|
-
|
|
145
|
+
formatInt(oInteraction.legacyDuration, 10), // extension_4
|
|
146
146
|
format(formatInteractionStartTimestamp(oInteraction.start), 20), // extension_5 - interaction start time
|
|
147
147
|
format(oFESRHandle.appNameLong, 70, true) // application_name with 70 characters, trimmed from left
|
|
148
148
|
].join(",");
|
|
@@ -302,8 +302,9 @@ sap.ui.define([
|
|
|
302
302
|
oBeaconRequest = sUrl ? BeaconRequest.isSupported() && new BeaconRequest({url: sUrl}) : null;
|
|
303
303
|
sBeaconURL = sUrl;
|
|
304
304
|
bFesrActive = true;
|
|
305
|
-
Passport.setActive(true);
|
|
306
305
|
await Interaction.setActive(true);
|
|
306
|
+
// activate passport after Interaction is ready to make the XHRInterceptor work properly. The Interceptor needs a pending interaction to work.
|
|
307
|
+
Passport.setActive(true);
|
|
307
308
|
XHRInterceptor.register("PASSPORT_HEADER", "open", passportHeaderOverride);
|
|
308
309
|
if (!oBeaconRequest) {
|
|
309
310
|
XHRInterceptor.register("FESR", "open" , fesrHeaderOverride);
|