@openui5/sap.ui.core 1.113.0 → 1.114.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 +86 -0
- package/THIRDPARTY.txt +1 -1
- package/package.json +1 -1
- package/src/jquery.sap.global.js +10 -4
- 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/jquery.sap.trace.js +14 -14
- package/src/sap/base/Log.js +92 -8
- package/src/sap/base/assert.js +1 -1
- package/src/sap/base/config/MemoryConfigurationProvider.js +22 -0
- package/src/sap/base/config.js +54 -0
- package/src/sap/base/util/Deferred.js +3 -2
- 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 +8 -3
- package/src/sap/ui/Global.js +4 -4
- package/src/sap/ui/base/BindingParser.js +79 -18
- 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 +13 -12
- package/src/sap/ui/base/ManagedObjectMetadata.js +26 -24
- 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 +1 -1
- package/src/sap/ui/core/BusyIndicator.js +4 -4
- package/src/sap/ui/core/Component.js +3 -3
- package/src/sap/ui/core/ComponentContainer.js +1 -1
- package/src/sap/ui/core/ComponentMetadata.js +3 -1
- package/src/sap/ui/core/ComponentSupport.js +1 -1
- package/src/sap/ui/core/Configuration.js +47 -37
- package/src/sap/ui/core/Control.js +2 -2
- package/src/sap/ui/core/Core.js +36 -15
- 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 +1 -1
- package/src/sap/ui/core/ElementMetadata.js +17 -3
- package/src/sap/ui/core/EnabledPropagator.js +1 -1
- package/src/sap/ui/core/EventBus.js +4 -4
- 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/IconPool.js +17 -2
- 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 +27 -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 +2 -2
- package/src/sap/ui/core/Manifest.js +2 -2
- package/src/sap/ui/core/Message.js +1 -1
- package/src/sap/ui/core/Popup.js +15 -9
- package/src/sap/ui/core/RenderManager.js +2 -2
- package/src/sap/ui/core/Renderer.js +1 -1
- package/src/sap/ui/core/Rendering.js +2 -3
- package/src/sap/ui/core/ResizeHandler.js +2 -2
- package/src/sap/ui/core/ScrollBar.js +1 -1
- package/src/sap/ui/core/SeparatorItem.js +1 -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 +9 -2
- package/src/sap/ui/core/UIComponent.js +14 -12
- 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/XMLTemplateProcessor.js +30 -6
- package/src/sap/ui/core/date/UI5Date.js +14 -8
- package/src/sap/ui/core/date/UniversalDate.js +15 -53
- 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/DateFormat.js +63 -29
- package/src/sap/ui/core/format/TimezoneUtil.js +1 -1
- package/src/sap/ui/core/hyphenation/Hyphenation.js +1 -1
- 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_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_sappsd.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 +1 -0
- package/src/sap/ui/core/messagebundle_fi.properties +1 -0
- 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 +1 -0
- 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 +1 -0
- package/src/sap/ui/core/messagebundle_ko.properties +2 -1
- 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_ms.properties +2 -1
- 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 +2 -1
- 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_sv.properties +1 -0
- package/src/sap/ui/core/messagebundle_th.properties +1 -0
- package/src/sap/ui/core/messagebundle_tr.properties +1 -0
- package/src/sap/ui/core/messagebundle_uk.properties +1 -0
- 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/Controller.js +2 -3
- package/src/sap/ui/core/mvc/ControllerExtension.js +1 -1
- 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 +22 -15
- package/src/sap/ui/core/mvc/XMLView.js +2 -2
- package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/plugin/LessSupport.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/Route.js +30 -22
- package/src/sap/ui/core/routing/Router.js +5 -3
- package/src/sap/ui/core/routing/Target.js +169 -2
- package/src/sap/ui/core/routing/Targets.js +4 -213
- package/src/sap/ui/core/routing/Views.js +1 -1
- 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/controls/InteractionTree.js +5 -3
- package/src/sap/ui/core/support/plugins/Breakpoint.js +2 -2
- package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
- package/src/sap/ui/core/support/plugins/Interaction.js +6 -4
- 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 +4 -3
- package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
- package/src/sap/ui/core/themes/base/base.less +1133 -90
- package/src/sap/ui/core/themes/base/global.less +114 -8
- package/src/sap/ui/core/themes/sap_hcb/global.less +114 -8
- package/src/sap/ui/core/theming/Parameters.js +10 -2
- package/src/sap/ui/core/theming/ThemeManager.js +10 -9
- 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/reflection/BaseTreeModifier.js +3 -1
- 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/ws/ReadyState.js +1 -1
- package/src/sap/ui/core/ws/SapPcpWebSocket.js +1 -1
- package/src/sap/ui/core/ws/WebSocket.js +1 -1
- 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/dom/includeScript.js +3 -3
- package/src/sap/ui/dom/includeStylesheet.js +3 -3
- package/src/sap/ui/events/ControlEvents.js +2 -2
- package/src/sap/ui/events/PseudoEvents.js +4 -2
- 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/ManagedObjectBindingSupport.js +19 -2
- package/src/sap/ui/model/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +1 -1
- 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 +12 -4
- package/src/sap/ui/model/controlhelper/TreeBindingProxy.js +2 -0
- package/src/sap/ui/model/json/JSONModel.js +1 -1
- 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 +49 -21
- package/src/sap/ui/model/odata/type/DateTime.js +51 -8
- package/src/sap/ui/model/odata/type/DateTimeBase.js +20 -26
- package/src/sap/ui/model/odata/type/DateTimeOffset.js +42 -1
- package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +34 -21
- package/src/sap/ui/model/odata/type/Decimal.js +28 -33
- package/src/sap/ui/model/odata/type/Double.js +21 -26
- package/src/sap/ui/model/odata/type/Guid.js +1 -1
- package/src/sap/ui/model/odata/type/Int.js +15 -20
- 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 +16 -21
- package/src/sap/ui/model/odata/type/ODataType.js +33 -6
- 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 +20 -25
- 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 +60 -21
- package/src/sap/ui/model/odata/type/TimeOfDay.js +52 -24
- 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 +65 -21
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/Context.js +6 -2
- package/src/sap/ui/model/odata/v4/ODataBinding.js +5 -3
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +7 -25
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +90 -24
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +4 -1
- package/src/sap/ui/model/odata/v4/ODataModel.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +7 -3
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +17 -12
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +15 -3
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +14 -0
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +18 -0
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +6 -0
- 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 +15 -1
- package/src/sap/ui/model/type/DateInterval.js +15 -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 +9 -9
- package/src/sap/ui/performance/trace/Interaction.js +50 -4
- package/src/sap/ui/performance/trace/initTraces.js +20 -14
- 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/OpaPlugin.js +19 -25
- package/src/sap/ui/test/PageObjectFactory.js +17 -7
- package/src/sap/ui/test/_ParameterValidator.js +3 -3
- package/src/sap/ui/test/_UsageReport.js +3 -3
- package/src/sap/ui/test/_ValidationParameters.js +8 -10
- package/src/sap/ui/test/actions/Action.js +3 -3
- package/src/sap/ui/test/actions/Press.js +4 -4
- package/src/sap/ui/test/autowaiter/WaiterBase.js +5 -3
- package/src/sap/ui/test/autowaiter/_autoWaiter.js +6 -3
- package/src/sap/ui/test/autowaiter/_cssAnimationWaiter.js +3 -3
- package/src/sap/ui/test/autowaiter/_cssTransitionWaiter.js +3 -3
- package/src/sap/ui/test/autowaiter/_fetchWaiter.js +73 -0
- package/src/sap/ui/test/autowaiter/_moduleWaiter.js +2 -2
- package/src/sap/ui/test/autowaiter/_promiseWaiter.js +4 -4
- package/src/sap/ui/test/autowaiter/_resourceWaiter.js +2 -2
- package/src/sap/ui/test/autowaiter/_timeoutWaiter.js +4 -4
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/test/gherkin/GherkinTestGenerator.js +424 -423
- package/src/sap/ui/test/gherkin/StepDefinitions.js +160 -158
- package/src/sap/ui/test/gherkin/dataTableUtils.js +387 -385
- package/src/sap/ui/test/gherkin/opa5TestHarness.js +188 -189
- package/src/sap/ui/test/gherkin/qUnitTestHarness.js +74 -71
- package/src/sap/ui/test/gherkin/simpleGherkinParser.js +195 -193
- package/src/sap/ui/test/launchers/componentLauncher.js +11 -9
- package/src/sap/ui/test/launchers/iFrameLauncher.js +34 -20
- package/src/sap/ui/test/matchers/Descendant.js +1 -1
- package/src/sap/ui/test/matchers/Interactable.js +2 -2
- package/src/sap/ui/test/matchers/LabelFor.js +2 -2
- package/src/sap/ui/test/matchers/MatcherFactory.js +10 -9
- package/src/sap/ui/test/matchers/Properties.js +5 -4
- package/src/sap/ui/test/matchers/Sibling.js +1 -1
- package/src/sap/ui/test/matchers/matchers.js +35 -3
- package/src/sap/ui/test/qunitPause.js +3 -2
- package/src/sap/ui/test/starter/_utils.js +3 -3
- package/src/sap/ui/util/Mobile.js +8 -1
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/ui5loader-autoconfig.js +661 -51
- package/src/ui5loader.js +18 -5
|
@@ -227,7 +227,7 @@ sap.ui.define([
|
|
|
227
227
|
* @extends sap.ui.model.Model
|
|
228
228
|
* @public
|
|
229
229
|
* @since 1.37.0
|
|
230
|
-
* @version 1.
|
|
230
|
+
* @version 1.114.1
|
|
231
231
|
*/
|
|
232
232
|
ODataModel = Model.extend("sap.ui.model.odata.v4.ODataModel",
|
|
233
233
|
/** @lends sap.ui.model.odata.v4.ODataModel.prototype */{
|
|
@@ -428,11 +428,15 @@ sap.ui.define([
|
|
|
428
428
|
};
|
|
429
429
|
|
|
430
430
|
/**
|
|
431
|
-
* Checks whether the given context may be kept alive.
|
|
431
|
+
* Checks whether the given context (or any context of this binding) may be kept alive.
|
|
432
432
|
*
|
|
433
|
-
* @param {sap.ui.model.odata.v4.Context} oContext
|
|
433
|
+
* @param {sap.ui.model.odata.v4.Context} [oContext]
|
|
434
434
|
* A context of this binding
|
|
435
|
-
* @
|
|
435
|
+
* @param {boolean} [bKeepAlive]
|
|
436
|
+
* Whether to keep the given context alive
|
|
437
|
+
* @throws {Error}
|
|
438
|
+
* If <code>oContext.setKeepAlive(bKeepAlive)</code> is not allowed for the given (or any)
|
|
439
|
+
* context
|
|
436
440
|
*
|
|
437
441
|
* @abstract
|
|
438
442
|
* @function
|
|
@@ -42,7 +42,7 @@ sap.ui.define([
|
|
|
42
42
|
* @mixes sap.ui.model.odata.v4.ODataBinding
|
|
43
43
|
* @public
|
|
44
44
|
* @since 1.37.0
|
|
45
|
-
* @version 1.
|
|
45
|
+
* @version 1.114.1
|
|
46
46
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getGroupId as #getGroupId
|
|
47
47
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getRootBinding as #getRootBinding
|
|
48
48
|
* @borrows sap.ui.model.odata.v4.ODataBinding#getUpdateGroupId as #getUpdateGroupId
|
|
@@ -265,12 +265,9 @@ sap.ui.define([
|
|
|
265
265
|
that = this;
|
|
266
266
|
|
|
267
267
|
this.oCheckUpdateCallToken = oCallToken;
|
|
268
|
-
if (this.
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
if (sResolvedPath && !this.bHasDeclaredType && this.sInternalType !== "any"
|
|
272
|
-
&& !bIsMeta) {
|
|
273
|
-
vType = oMetaModel.fetchUI5Type(sResolvedPath);
|
|
268
|
+
if (!vType && sResolvedPath && this.sInternalType !== "any" && !bIsMeta
|
|
269
|
+
&& !sResolvedPath.includes(sVirtualPath)) {
|
|
270
|
+
vType = oMetaModel.fetchUI5Type(this.sReducedPath || sResolvedPath);
|
|
274
271
|
}
|
|
275
272
|
if (vValue === undefined) {
|
|
276
273
|
// if called via #onChange, we need to fetch implicit values
|
|
@@ -289,9 +286,7 @@ sap.ui.define([
|
|
|
289
286
|
return vResult;
|
|
290
287
|
});
|
|
291
288
|
}
|
|
292
|
-
if (!that.
|
|
293
|
-
// binding is unresolved or context was reset by another call to
|
|
294
|
-
// checkUpdateInternal
|
|
289
|
+
if (!that.isResolved()) {
|
|
295
290
|
return undefined;
|
|
296
291
|
}
|
|
297
292
|
if (sResolvedPath.includes(sVirtualPath)) {
|
|
@@ -332,7 +327,7 @@ sap.ui.define([
|
|
|
332
327
|
});
|
|
333
328
|
if (bForceUpdate && vValue.isFulfilled()) {
|
|
334
329
|
if (vType && vType.isFulfilled && vType.isFulfilled()) {
|
|
335
|
-
this.
|
|
330
|
+
this.oType = vType.getResult();
|
|
336
331
|
}
|
|
337
332
|
this.vValue = vValue.getResult();
|
|
338
333
|
}
|
|
@@ -346,7 +341,7 @@ sap.ui.define([
|
|
|
346
341
|
|
|
347
342
|
if (oCallToken === that.oCheckUpdateCallToken) { // latest call to checkUpdateInternal
|
|
348
343
|
that.oCheckUpdateCallToken = undefined;
|
|
349
|
-
that.
|
|
344
|
+
that.oType = oType;
|
|
350
345
|
if (oCallToken.forceUpdate || that.vValue !== vValue) {
|
|
351
346
|
that.bInitial = false;
|
|
352
347
|
that.vValue = vValue;
|
|
@@ -679,6 +674,15 @@ sap.ui.define([
|
|
|
679
674
|
if (this.bRelative) {
|
|
680
675
|
this.checkSuspended(true);
|
|
681
676
|
this.deregisterChangeListener();
|
|
677
|
+
if (oContext) {
|
|
678
|
+
if (this.oType && !this.bHasDeclaredType
|
|
679
|
+
// Note: this.oType => this.sReducedPath
|
|
680
|
+
&& _Helper.getMetaPath(this.oModel.resolve(this.sPath, oContext))
|
|
681
|
+
!== _Helper.getMetaPath(this.sReducedPath)) {
|
|
682
|
+
this.oType = undefined;
|
|
683
|
+
}
|
|
684
|
+
this.sReducedPath = undefined;
|
|
685
|
+
}
|
|
682
686
|
}
|
|
683
687
|
this.oContext = oContext;
|
|
684
688
|
this.sResumeChangeReason = undefined;
|
|
@@ -709,6 +713,7 @@ sap.ui.define([
|
|
|
709
713
|
ODataPropertyBinding.prototype.setType = function (oType, _sInternalType) {
|
|
710
714
|
var oOldType = this.oType;
|
|
711
715
|
|
|
716
|
+
this.bHasDeclaredType = !!oType;
|
|
712
717
|
if (oType && oType.getName() === "sap.ui.model.odata.type.DateTimeOffset") {
|
|
713
718
|
oType.setV4();
|
|
714
719
|
}
|
|
@@ -42,6 +42,7 @@ sap.ui.define([
|
|
|
42
42
|
*
|
|
43
43
|
* @alias sap.ui.model.odata.v4.lib._AggregationCache
|
|
44
44
|
* @borrows sap.ui.model.odata.v4.lib._CollectionCache#addKeptElement as #addKeptElement
|
|
45
|
+
* @borrows sap.ui.model.odata.v4.lib._CollectionCache#removeKeptElement as #removeKeptElement
|
|
45
46
|
* @borrows sap.ui.model.odata.v4.lib._CollectionCache#requestSideEffects as #requestSideEffects
|
|
46
47
|
* @constructor
|
|
47
48
|
* @extends sap.ui.model.odata.v4.lib._Cache
|
|
@@ -82,6 +83,7 @@ sap.ui.define([
|
|
|
82
83
|
}
|
|
83
84
|
this.oFirstLevel = this.createGroupLevelCache(null, bHasGrandTotal || !!fnLeaves);
|
|
84
85
|
this.addKeptElement = this.oFirstLevel.addKeptElement; // @borrows ...
|
|
86
|
+
this.removeKeptElement = this.oFirstLevel.removeKeptElement; // @borrows ...
|
|
85
87
|
this.requestSideEffects = this.oFirstLevel.requestSideEffects; // @borrows ...
|
|
86
88
|
this.oGrandTotalPromise = undefined;
|
|
87
89
|
if (bHasGrandTotal) {
|
|
@@ -357,13 +359,16 @@ sap.ui.define([
|
|
|
357
359
|
* @param {object|string} vGroupNodeOrPath
|
|
358
360
|
* The group node or its path relative to the cache; a group node instance (instead of a path)
|
|
359
361
|
* MUST only be given in case of "expanding" continued
|
|
362
|
+
* @param {function} [fnDataRequested]
|
|
363
|
+
* The function is called just before the back-end request is sent.
|
|
364
|
+
* If no back-end request is needed, the function is not called.
|
|
360
365
|
* @returns {sap.ui.base.SyncPromise<number>}
|
|
361
366
|
* A promise that is resolved with the number of nodes at the next level
|
|
362
367
|
*
|
|
363
368
|
* @public
|
|
364
369
|
* @see #collapse
|
|
365
370
|
*/
|
|
366
|
-
_AggregationCache.prototype.expand = function (oGroupLock, vGroupNodeOrPath) {
|
|
371
|
+
_AggregationCache.prototype.expand = function (oGroupLock, vGroupNodeOrPath, fnDataRequested) {
|
|
367
372
|
var oCache,
|
|
368
373
|
iCount,
|
|
369
374
|
aElements = this.aElements,
|
|
@@ -417,7 +422,9 @@ sap.ui.define([
|
|
|
417
422
|
}
|
|
418
423
|
|
|
419
424
|
// prefetch from the group level cache
|
|
420
|
-
return oCache.read(
|
|
425
|
+
return oCache.read(
|
|
426
|
+
0, this.iReadLength, 0, oGroupLock, fnDataRequested
|
|
427
|
+
).then(function (oResult) {
|
|
421
428
|
var iIndex = that.aElements.indexOf(oGroupNode) + 1,
|
|
422
429
|
iLevel = oGroupNode["@$ui5.node.level"],
|
|
423
430
|
oSubtotals = _AggregationHelper.getCollapsedObject(oGroupNode),
|
|
@@ -768,7 +775,12 @@ sap.ui.define([
|
|
|
768
775
|
}
|
|
769
776
|
|
|
770
777
|
return SyncPromise.all(aReadPromises).then(function () {
|
|
771
|
-
var aElements = that.aElements.slice(iIndex, iIndex + iLength)
|
|
778
|
+
var aElements = that.aElements.slice(iIndex, iIndex + iLength)
|
|
779
|
+
.map(function (oElement) {
|
|
780
|
+
return _Helper.hasPrivateAnnotation(oElement, "placeholder")
|
|
781
|
+
? undefined
|
|
782
|
+
: oElement;
|
|
783
|
+
});
|
|
772
784
|
|
|
773
785
|
aElements.$count = that.aElements.$count;
|
|
774
786
|
|
|
@@ -3366,6 +3366,20 @@ sap.ui.define([
|
|
|
3366
3366
|
});
|
|
3367
3367
|
};
|
|
3368
3368
|
|
|
3369
|
+
/**
|
|
3370
|
+
* Removes the element with the given predicate from $byPredicate of the cache's element list.
|
|
3371
|
+
*
|
|
3372
|
+
* @param {string} sPredicate - The predicate
|
|
3373
|
+
* @throws {Error}
|
|
3374
|
+
* If the cache is shared
|
|
3375
|
+
*
|
|
3376
|
+
* @public
|
|
3377
|
+
*/
|
|
3378
|
+
_CollectionCache.prototype.removeKeptElement = function (sPredicate) {
|
|
3379
|
+
this.checkSharedRequest();
|
|
3380
|
+
delete this.aElements.$byPredicate[sPredicate];
|
|
3381
|
+
};
|
|
3382
|
+
|
|
3369
3383
|
/**
|
|
3370
3384
|
* Requests the elements in the given range and places them into the aElements list. Calculates
|
|
3371
3385
|
* the key predicates for all entities in the result before the promise is resolved. While the
|
|
@@ -1553,6 +1553,24 @@ sap.ui.define([
|
|
|
1553
1553
|
return sPath;
|
|
1554
1554
|
},
|
|
1555
1555
|
|
|
1556
|
+
/**
|
|
1557
|
+
* Returns the path for the return value context. Supports bound operations on an entity or
|
|
1558
|
+
* a collection.
|
|
1559
|
+
*
|
|
1560
|
+
* @param {string} sPath
|
|
1561
|
+
* The bindings's path; either a resolved model path or a resource path; for example:
|
|
1562
|
+
* "/Artists(ArtistID='42',IsActiveEntity=true)/special.cases.EditAction(...)" or
|
|
1563
|
+
* "/Artists/special.cases.Create(...)", the leading "/" can be omitted.
|
|
1564
|
+
* @param {string} sResponsePredicate The key predicate of the response entity
|
|
1565
|
+
* @returns {string} The path for the return value context.
|
|
1566
|
+
*/
|
|
1567
|
+
getReturnValueContextPath : function (sPath, sResponsePredicate) {
|
|
1568
|
+
var sBoundParameterPath = sPath.slice(0, sPath.lastIndexOf("/")),
|
|
1569
|
+
i = sBoundParameterPath.indexOf("(");
|
|
1570
|
+
|
|
1571
|
+
return (i < 0 ? sBoundParameterPath : sPath.slice(0, i)) + sResponsePredicate;
|
|
1572
|
+
},
|
|
1573
|
+
|
|
1556
1574
|
/**
|
|
1557
1575
|
* Tells whether <code>sPath</code> has <code>sBasePath</code> as path prefix. It returns
|
|
1558
1576
|
* <code>true</code> iff {@link .getRelativePath} does not return <code>undefined</code>.
|
|
@@ -429,6 +429,8 @@ sap.ui.define([
|
|
|
429
429
|
* @param {string} [sGroupId]
|
|
430
430
|
* The ID of the group from which the locks shall be canceled; if not given all groups are
|
|
431
431
|
* processed
|
|
432
|
+
*
|
|
433
|
+
* @private
|
|
432
434
|
*/
|
|
433
435
|
_Requestor.prototype.cancelGroupLocks = function (sGroupId) {
|
|
434
436
|
this.aLockedGroupLocks.forEach(function (oGroupLock) {
|
|
@@ -836,6 +838,8 @@ sap.ui.define([
|
|
|
836
838
|
* complex type)
|
|
837
839
|
* @returns {sap.ui.base.SyncPromise<object>}
|
|
838
840
|
* A promise resolving with the type
|
|
841
|
+
*
|
|
842
|
+
* @public
|
|
839
843
|
*/
|
|
840
844
|
_Requestor.prototype.fetchType = function (mTypeForMetaPath, sMetaPath) {
|
|
841
845
|
var that = this;
|
|
@@ -1901,6 +1905,8 @@ sap.ui.define([
|
|
|
1901
1905
|
/**
|
|
1902
1906
|
* Checks whether a first batch from an earlier app start was recorded and sends it immediately
|
|
1903
1907
|
* out as optimistic batch in order to have its response at the earliest point in time.
|
|
1908
|
+
*
|
|
1909
|
+
* @public
|
|
1904
1910
|
*/
|
|
1905
1911
|
_Requestor.prototype.sendOptimisticBatch = function () {
|
|
1906
1912
|
var sKey = window.location.href,
|
|
@@ -229,7 +229,7 @@ sap.ui.define([
|
|
|
229
229
|
*
|
|
230
230
|
* @extends sap.ui.model.Model
|
|
231
231
|
* @public
|
|
232
|
-
* @version 1.
|
|
232
|
+
* @version 1.114.1
|
|
233
233
|
*/
|
|
234
234
|
var ResourceModel = Model.extend("sap.ui.model.resource.ResourceModel", /** @lends sap.ui.model.resource.ResourceModel.prototype */ {
|
|
235
235
|
|
|
@@ -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.114.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}.
|
|
@@ -215,6 +215,20 @@ sap.ui.define([
|
|
|
215
215
|
}
|
|
216
216
|
};
|
|
217
217
|
|
|
218
|
+
/**
|
|
219
|
+
* Returns a language-dependent placeholder text such as "e.g. <sample value>" where <sample value> is formatted
|
|
220
|
+
* using this type.
|
|
221
|
+
*
|
|
222
|
+
* @returns {string|undefined}
|
|
223
|
+
* The language-dependent placeholder text or <code>undefined</code> if the type does not offer a placeholder
|
|
224
|
+
*
|
|
225
|
+
* @experimental As of version 1.114.0
|
|
226
|
+
* @public
|
|
227
|
+
*/
|
|
228
|
+
Date1.prototype.getPlaceholderText = function () {
|
|
229
|
+
return this.oOutputFormat.getPlaceholderText();
|
|
230
|
+
};
|
|
231
|
+
|
|
218
232
|
return Date1;
|
|
219
233
|
|
|
220
234
|
});
|
|
@@ -24,7 +24,7 @@ sap.ui.define([
|
|
|
24
24
|
* @extends sap.ui.model.CompositeType
|
|
25
25
|
*
|
|
26
26
|
* @author SAP SE
|
|
27
|
-
* @version 1.
|
|
27
|
+
* @version 1.114.1
|
|
28
28
|
*
|
|
29
29
|
* @alias sap.ui.model.type.DateInterval
|
|
30
30
|
* @param {object} [oFormatOptions]
|
|
@@ -296,5 +296,19 @@ sap.ui.define([
|
|
|
296
296
|
}
|
|
297
297
|
};
|
|
298
298
|
|
|
299
|
+
/**
|
|
300
|
+
* Returns a language-dependent placeholder text such as "e.g. <sample value>" where <sample value> is formatted
|
|
301
|
+
* using this type.
|
|
302
|
+
*
|
|
303
|
+
* @returns {string|undefined}
|
|
304
|
+
* The language-dependent placeholder text or <code>undefined</code> if the type does not offer a placeholder
|
|
305
|
+
*
|
|
306
|
+
* @experimental As of version 1.114.0
|
|
307
|
+
* @public
|
|
308
|
+
*/
|
|
309
|
+
DateInterval.prototype.getPlaceholderText = function () {
|
|
310
|
+
return this.oOutputFormat.getPlaceholderText();
|
|
311
|
+
};
|
|
312
|
+
|
|
299
313
|
return DateInterval;
|
|
300
314
|
});
|
|
@@ -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.114.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.114.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.114.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.114.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}.
|
|
@@ -178,7 +178,7 @@ sap.ui.define(['sap/base/Log', 'sap/ui/thirdparty/URI', 'sap/base/util/now'
|
|
|
178
178
|
* @param {string} sId ID of the measurement
|
|
179
179
|
* @param {string} sInfo Info for the measurement
|
|
180
180
|
* @param {string | string[]} [aCategories="javascript"] An optional list of categories for the measure
|
|
181
|
-
* @return {
|
|
181
|
+
* @return {module:sap/ui/performance/Measurement.Entry|boolean|undefined} current measurement containing id, info and start-timestamp (false if error)
|
|
182
182
|
* @public
|
|
183
183
|
* @name module:sap/ui/performance/Measurement.start
|
|
184
184
|
* @function
|
|
@@ -216,7 +216,7 @@ sap.ui.define(['sap/base/Log', 'sap/ui/thirdparty/URI', 'sap/base/util/now'
|
|
|
216
216
|
* Pauses a performance measure.
|
|
217
217
|
*
|
|
218
218
|
* @param {string} sId ID of the measurement
|
|
219
|
-
* @return {
|
|
219
|
+
* @return {module:sap/ui/performance/Measurement.Entry|boolean|undefined} current measurement containing id, info and start-timestamp, pause-timestamp (false if error)
|
|
220
220
|
* @public
|
|
221
221
|
* @name module:sap/ui/performance/Measurement.pause
|
|
222
222
|
* @function
|
|
@@ -256,7 +256,7 @@ sap.ui.define(['sap/base/Log', 'sap/ui/thirdparty/URI', 'sap/base/util/now'
|
|
|
256
256
|
* Resumes a performance measure.
|
|
257
257
|
*
|
|
258
258
|
* @param {string} sId ID of the measurement
|
|
259
|
-
* @return {
|
|
259
|
+
* @return {module:sap/ui/performance/Measurement.Entry|boolean|undefined} current measurement containing id, info and start-timestamp, resume-timestamp (false if error)
|
|
260
260
|
* @public
|
|
261
261
|
* @name module:sap/ui/performance/Measurement.resume
|
|
262
262
|
* @function
|
|
@@ -287,7 +287,7 @@ sap.ui.define(['sap/base/Log', 'sap/ui/thirdparty/URI', 'sap/base/util/now'
|
|
|
287
287
|
* Ends a performance measure.
|
|
288
288
|
*
|
|
289
289
|
* @param {string} sId ID of the measurement
|
|
290
|
-
* @return {
|
|
290
|
+
* @return {module:sap/ui/performance/Measurement.Entry|boolean|undefined} current measurement containing id, info and start-timestamp, end-timestamp, time, duration (false if error)
|
|
291
291
|
* @public
|
|
292
292
|
* @name module:sap/ui/performance/Measurement.end
|
|
293
293
|
* @function
|
|
@@ -372,7 +372,7 @@ sap.ui.define(['sap/base/Log', 'sap/ui/thirdparty/URI', 'sap/base/util/now'
|
|
|
372
372
|
* @param {int} iTime time in milliseconds
|
|
373
373
|
* @param {int} iDuration effective time in milliseconds
|
|
374
374
|
* @param {string | string[]} [aCategories="javascript"] An optional list of categories for the measure
|
|
375
|
-
* @return {
|
|
375
|
+
* @return {module:sap/ui/performance/Measurement.Entry|boolean|undefined} current measurement containing id, info and start-timestamp, end-timestamp, time, duration, categories (false if error)
|
|
376
376
|
* @public
|
|
377
377
|
* @name module:sap/ui/performance/Measurement.add
|
|
378
378
|
* @function
|
|
@@ -406,7 +406,7 @@ sap.ui.define(['sap/base/Log', 'sap/ui/thirdparty/URI', 'sap/base/util/now'
|
|
|
406
406
|
* @param {string} sId ID of the measurement
|
|
407
407
|
* @param {string} sInfo Info for the measurement
|
|
408
408
|
* @param {string | string[]} [aCategories="javascript"] An optional list of categories for the measure
|
|
409
|
-
* @return {
|
|
409
|
+
* @return {module:sap/ui/performance/Measurement.Entry|boolean|undefined} current measurement containing id, info and start-timestamp (false if error)
|
|
410
410
|
* @public
|
|
411
411
|
* @name module:sap/ui/performance/Measurement.average
|
|
412
412
|
* @function
|
|
@@ -441,7 +441,7 @@ sap.ui.define(['sap/base/Log', 'sap/ui/thirdparty/URI', 'sap/base/util/now'
|
|
|
441
441
|
* Gets a performance measure.
|
|
442
442
|
*
|
|
443
443
|
* @param {string} sId ID of the measurement
|
|
444
|
-
* @return {module:sap/ui/performance/Measurement.Entry} current measurement containing id, info and start-timestamp, end-timestamp, time, duration (false if error)
|
|
444
|
+
* @return {module:sap/ui/performance/Measurement.Entry|boolean} current measurement containing id, info and start-timestamp, end-timestamp, time, duration (false if error)
|
|
445
445
|
* @public
|
|
446
446
|
* @name module:sap/ui/performance/Measurement.getMeasurement
|
|
447
447
|
* @function
|
|
@@ -466,7 +466,7 @@ sap.ui.define(['sap/base/Log', 'sap/ui/thirdparty/URI', 'sap/base/util/now'
|
|
|
466
466
|
* Gets all performance measurements.
|
|
467
467
|
*
|
|
468
468
|
* @param {boolean} [bCompleted] Whether only completed measurements should be returned, if explicitly set to false only incomplete measurements are returned
|
|
469
|
-
* @return {module:sap/ui/performance/Measurement.Entry} current array with measurements containing id, info and start-timestamp, end-timestamp, time, duration, categories
|
|
469
|
+
* @return {module:sap/ui/performance/Measurement.Entry[]} current array with measurements containing id, info and start-timestamp, end-timestamp, time, duration, categories
|
|
470
470
|
* @public
|
|
471
471
|
* @name module:sap/ui/performance/Measurement.getAllMeasurements
|
|
472
472
|
* @function
|
|
@@ -487,7 +487,7 @@ sap.ui.define(['sap/base/Log', 'sap/ui/thirdparty/URI', 'sap/base/util/now'
|
|
|
487
487
|
* return oMeasurement.duration > 50;
|
|
488
488
|
* }</code>
|
|
489
489
|
*
|
|
490
|
-
* @param {function} [fnFilter] a filter function that returns true if the passed measurement should be added to the result
|
|
490
|
+
* @param {function(module:sap/ui/performance/Measurement.Entry)} [fnFilter] a filter function that returns true if the passed measurement should be added to the result
|
|
491
491
|
* @param {boolean} [bCompleted] Optional parameter to determine if either completed or incomplete measurements should be returned (both if not set or undefined)
|
|
492
492
|
* @param {string[]} [aCategories] The function returns only measurements which match these specified categories
|
|
493
493
|
*
|
|
@@ -50,6 +50,52 @@ sap.ui.define([
|
|
|
50
50
|
return str.trim();
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
+
/**
|
|
54
|
+
* The SAP Statistics for OData
|
|
55
|
+
*
|
|
56
|
+
* @typedef {object} module:sap/ui/performance/trace/Interaction.SAPStatistics
|
|
57
|
+
* @public
|
|
58
|
+
*
|
|
59
|
+
* @property {string} url The url of the response
|
|
60
|
+
* @property {string} statistics The response header under the key "sap-statistics"
|
|
61
|
+
* @property {PerformanceResourceTiming} timing The last performance resource timing
|
|
62
|
+
*/
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Interaction Entry
|
|
66
|
+
*
|
|
67
|
+
* @typedef {object} module:sap/ui/performance/trace/Interaction.Entry
|
|
68
|
+
* @public
|
|
69
|
+
*
|
|
70
|
+
* @property {string} event The event which triggered the interaction. The default value is "startup".
|
|
71
|
+
* @property {string} trigger The control which triggered the interaction.
|
|
72
|
+
* @property {string} component The identifier of the component or app that is associated with the
|
|
73
|
+
* interaction.
|
|
74
|
+
* @property {string} appVersion The application version as from app descriptor
|
|
75
|
+
* @property {float} start The start timestamp of the interaction which is initially set to the
|
|
76
|
+
* <code>fetchStart</code>
|
|
77
|
+
* @property {float} end The end timestamp of the interaction
|
|
78
|
+
* @property {float} navigation The sum over all navigation times
|
|
79
|
+
* @property {float} roundtrip The time from first request sent to last received response end - without
|
|
80
|
+
* gaps and ignored overlap
|
|
81
|
+
* @property {float} processing The client processing time
|
|
82
|
+
* @property {float} duration The interaction duration
|
|
83
|
+
* @property {Array<PerformanceResourceTiming>} requests The Performance API requests during interaction
|
|
84
|
+
* @property {Array<module:sap/ui/performance/Measurement.Entry>} measurements The Performance
|
|
85
|
+
* measurements
|
|
86
|
+
* @property {Array<module:sap/ui/performance/trace/Interaction.SAPStatistics>} sapStatistics The SAP
|
|
87
|
+
* Statistics for OData
|
|
88
|
+
* @property {float} requestTime The sum over all requests in the interaction
|
|
89
|
+
* @property {float} networkTime The request time minus server time from the header
|
|
90
|
+
* @property {int} bytesSent The sum over all requests bytes
|
|
91
|
+
* @property {int} bytesReceived The sum over all responses bytes
|
|
92
|
+
* @property {"X"|""} requestCompression It's set with value "X" by default When compression does not
|
|
93
|
+
* match SAP rules, we report an empty string.
|
|
94
|
+
* @property {float} busyDuration The sum of the global busy indicator duration during the interaction
|
|
95
|
+
* @property {string} id The ID of the interaction
|
|
96
|
+
* @property {string} passportAction The default PassportAction for startup
|
|
97
|
+
*/
|
|
98
|
+
|
|
53
99
|
function createMeasurement(iTime) {
|
|
54
100
|
return {
|
|
55
101
|
event: "startup", // event which triggered interaction - default is startup interaction
|
|
@@ -65,13 +111,13 @@ sap.ui.define([
|
|
|
65
111
|
requests: [], // Performance API requests during interaction
|
|
66
112
|
measurements: [], // Measurements
|
|
67
113
|
sapStatistics: [], // SAP Statistics for OData
|
|
68
|
-
requestTime: 0, //
|
|
114
|
+
requestTime: 0, // sum over all requests in the interaction (oPendingInteraction.requests[0].responseEnd-oPendingInteraction.requests[0].requestStart)
|
|
69
115
|
networkTime: 0, // request time minus server time from the header
|
|
70
116
|
bytesSent: 0, // sum over all requests bytes
|
|
71
117
|
bytesReceived: 0, // sum over all response bytes
|
|
72
118
|
requestCompression: "X", // ok per default, if compression does not match SAP rules we report an empty string
|
|
73
119
|
busyDuration: 0, // summed GlobalBusyIndicator duration during this interaction
|
|
74
|
-
id: uid(), //Interaction
|
|
120
|
+
id: uid(), //Interaction ID
|
|
75
121
|
passportAction: "undetermined_startup_0" //default PassportAction for startup
|
|
76
122
|
};
|
|
77
123
|
}
|
|
@@ -392,7 +438,7 @@ sap.ui.define([
|
|
|
392
438
|
* Gets all interaction measurements.
|
|
393
439
|
*
|
|
394
440
|
* @param {boolean} bFinalize finalize the current pending interaction so that it is contained in the returned array
|
|
395
|
-
* @return {
|
|
441
|
+
* @return {Array<module:sap/ui/performance/trace/Interaction.Entry>} all interaction measurements
|
|
396
442
|
*
|
|
397
443
|
* @static
|
|
398
444
|
* @public
|
|
@@ -415,7 +461,7 @@ sap.ui.define([
|
|
|
415
461
|
* return InteractionMeasurement.duration > 0
|
|
416
462
|
* }</code>
|
|
417
463
|
* @param {function} fnFilter a filter function that returns true if the passed measurement should be added to the result
|
|
418
|
-
* @return {
|
|
464
|
+
* @return {Array<module:sap/ui/performance/trace/Interaction.Entry>} all interaction measurements passing the filter function successfully
|
|
419
465
|
*
|
|
420
466
|
* @static
|
|
421
467
|
* @public
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
sap.ui.define([
|
|
11
11
|
"sap/ui/performance/trace/FESR",
|
|
12
12
|
"sap/base/Log",
|
|
13
|
-
"sap/base/
|
|
14
|
-
], function(FESR, Log,
|
|
13
|
+
"sap/base/config"
|
|
14
|
+
], function(FESR, Log, BaseConfig) {
|
|
15
15
|
|
|
16
16
|
"use strict";
|
|
17
17
|
|
|
@@ -25,16 +25,18 @@ sap.ui.define([
|
|
|
25
25
|
* @ui5-restricted sap.ui.core
|
|
26
26
|
*/
|
|
27
27
|
return function() {
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
28
|
+
var sUrl,
|
|
29
|
+
bActive = false,
|
|
30
|
+
sFesr = BaseConfig.get({
|
|
31
|
+
name: "sapUiFesr",
|
|
32
|
+
type: BaseConfig.Type.String,
|
|
33
|
+
external: true,
|
|
34
|
+
freeze: true
|
|
35
|
+
});
|
|
33
36
|
|
|
34
|
-
if (
|
|
35
|
-
bActive =
|
|
36
|
-
|
|
37
|
-
sUrl = ["true", "false", "x", "X", undefined].indexOf(sUriParam) === -1 ? sUriParam : sUrl;
|
|
37
|
+
if (sFesr) {
|
|
38
|
+
bActive = sFesr != "false";
|
|
39
|
+
sUrl = ["true", "false", "x", "X", undefined].indexOf(sFesr) === -1 ? sFesr : undefined;
|
|
38
40
|
}
|
|
39
41
|
|
|
40
42
|
if (typeof window.performance.getEntriesByType === "function") {
|
|
@@ -43,10 +45,14 @@ sap.ui.define([
|
|
|
43
45
|
Log.debug("FESR is not supported in clients without support of window.Performance extensions.");
|
|
44
46
|
}
|
|
45
47
|
|
|
46
|
-
// TODO this should be part of a Configuration
|
|
47
48
|
// *********** Include E2E-Trace Scripts *************
|
|
48
|
-
if (
|
|
49
|
+
if (BaseConfig.get({
|
|
50
|
+
name: "sapUiXxE2eTrace",
|
|
51
|
+
type: BaseConfig.Type.Boolean,
|
|
52
|
+
external: true,
|
|
53
|
+
freeze: true
|
|
54
|
+
})) {
|
|
49
55
|
sap.ui.require(["sap/ui/core/support/trace/E2eTraceLib"]);
|
|
50
56
|
}
|
|
51
57
|
};
|
|
52
|
-
});
|
|
58
|
+
});
|