@openui5/sap.ui.core 1.117.0 → 1.118.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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/Localization.js +42 -39
- package/src/sap/base/i18n/date/TimezoneUtils.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 +4 -4
- package/src/sap/ui/base/BindingParser.js +2 -1
- 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 +7 -3
- 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 +9 -1
- package/src/sap/ui/core/AnimationMode.js +1 -1
- package/src/sap/ui/core/BlockLayerUtils.js +1 -1
- package/src/sap/ui/core/BusyIndicator.js +2 -2
- package/src/sap/ui/core/Component.js +22 -15
- package/src/sap/ui/core/ComponentContainer.js +2 -2
- 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 -13
- package/src/sap/ui/core/Control.js +21 -1
- package/src/sap/ui/core/Core.js +67 -41
- 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 +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 +2 -2
- package/src/sap/ui/core/IndicationColorSupport.js +2 -2
- 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 +3 -6
- 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 +9 -13
- 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 +1 -1
- package/src/sap/ui/core/Message.js +1 -1
- package/src/sap/ui/core/Messaging.js +472 -0
- package/src/sap/ui/core/RenderManager.js +1 -1
- package/src/sap/ui/core/Renderer.js +1 -1
- package/src/sap/ui/core/Rendering.js +3 -2
- package/src/sap/ui/core/ResizeHandler.js +1 -4
- package/src/sap/ui/core/ScrollBar.js +1 -1
- package/src/sap/ui/core/SeparatorItem.js +1 -1
- package/src/sap/ui/core/ShortcutHint.js +1 -1
- package/src/sap/ui/core/Theming.js +28 -31
- 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 +85 -17
- 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 +2 -2
- 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/_IconRegistry.js +1 -1
- package/src/sap/ui/core/boot.js +9 -0
- 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/DragAndDrop.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 +4 -0
- 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 +18 -47
- 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 +37 -459
- package/src/sap/ui/core/message/MessageMixin.js +3 -3
- package/src/sap/ui/core/message/MessageParser.js +1 -1
- package/src/sap/ui/core/message/MessageProcessor.js +9 -9
- package/src/sap/ui/core/message/MessageType.js +53 -0
- package/src/sap/ui/core/messagebundle.properties +3 -0
- package/src/sap/ui/core/messagebundle_ar.properties +1 -1
- package/src/sap/ui/core/messagebundle_bg.properties +1 -1
- package/src/sap/ui/core/messagebundle_ca.properties +1 -1
- package/src/sap/ui/core/messagebundle_cs.properties +1 -1
- package/src/sap/ui/core/messagebundle_cy.properties +1 -1
- package/src/sap/ui/core/messagebundle_da.properties +1 -1
- package/src/sap/ui/core/messagebundle_de.properties +1 -1
- package/src/sap/ui/core/messagebundle_el.properties +1 -1
- package/src/sap/ui/core/messagebundle_es.properties +1 -1
- package/src/sap/ui/core/messagebundle_es_MX.properties +1 -1
- package/src/sap/ui/core/messagebundle_et.properties +1 -1
- package/src/sap/ui/core/messagebundle_fi.properties +1 -1
- package/src/sap/ui/core/messagebundle_fr.properties +1 -1
- package/src/sap/ui/core/messagebundle_fr_CA.properties +1 -1
- package/src/sap/ui/core/messagebundle_hi.properties +1 -1
- package/src/sap/ui/core/messagebundle_hr.properties +1 -1
- package/src/sap/ui/core/messagebundle_hu.properties +1 -1
- package/src/sap/ui/core/messagebundle_id.properties +1 -1
- package/src/sap/ui/core/messagebundle_it.properties +1 -1
- package/src/sap/ui/core/messagebundle_iw.properties +1 -1
- package/src/sap/ui/core/messagebundle_ja.properties +1 -1
- package/src/sap/ui/core/messagebundle_kk.properties +1 -1
- package/src/sap/ui/core/messagebundle_ko.properties +1 -1
- package/src/sap/ui/core/messagebundle_lt.properties +1 -1
- package/src/sap/ui/core/messagebundle_lv.properties +1 -1
- package/src/sap/ui/core/messagebundle_ms.properties +1 -1
- package/src/sap/ui/core/messagebundle_nl.properties +1 -1
- package/src/sap/ui/core/messagebundle_no.properties +1 -1
- package/src/sap/ui/core/messagebundle_pl.properties +1 -1
- package/src/sap/ui/core/messagebundle_pt.properties +1 -1
- package/src/sap/ui/core/messagebundle_pt_PT.properties +1 -1
- package/src/sap/ui/core/messagebundle_ro.properties +1 -1
- package/src/sap/ui/core/messagebundle_ru.properties +1 -1
- package/src/sap/ui/core/messagebundle_sh.properties +1 -1
- package/src/sap/ui/core/messagebundle_sk.properties +1 -1
- package/src/sap/ui/core/messagebundle_sl.properties +1 -1
- package/src/sap/ui/core/messagebundle_sv.properties +9 -9
- package/src/sap/ui/core/messagebundle_th.properties +1 -1
- package/src/sap/ui/core/messagebundle_tr.properties +1 -1
- package/src/sap/ui/core/messagebundle_uk.properties +1 -1
- package/src/sap/ui/core/messagebundle_vi.properties +1 -1
- package/src/sap/ui/core/messagebundle_zh_CN.properties +1 -1
- package/src/sap/ui/core/messagebundle_zh_TW.properties +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 +1 -1
- package/src/sap/ui/core/mvc/XMLView.js +9 -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/Router.js +7 -1
- package/src/sap/ui/core/routing/async/Route.js +1 -0
- package/src/sap/ui/core/routing/sync/Route.js +1 -0
- 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 +25 -5
- package/src/sap/ui/core/support/Support.js +34 -4
- package/src/sap/ui/core/support/ToolsAPI.js +6 -16
- package/src/sap/ui/core/support/controls/InteractionTree.js +0 -4
- package/src/sap/ui/core/support/plugins/Breakpoint.js +0 -2
- package/src/sap/ui/core/support/plugins/ControlTree.js +10 -12
- package/src/sap/ui/core/support/plugins/Debugging.js +10 -9
- package/src/sap/ui/core/support/plugins/Interaction.js +12 -13
- package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -3
- package/src/sap/ui/core/support/plugins/Performance.js +1 -3
- package/src/sap/ui/core/support/plugins/Selector.js +1 -1
- package/src/sap/ui/core/support/plugins/TechInfo.js +32 -42
- package/src/sap/ui/core/support/plugins/Trace.js +1 -1
- package/src/sap/ui/core/support/plugins/ViewInfo.js +27 -13
- package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +4 -4
- package/src/sap/ui/core/theming/ThemeHelper.js +100 -0
- package/src/sap/ui/core/theming/ThemeManager.js +18 -18
- 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/XMLPreprocessor.js +53 -29
- 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 +659 -0
- package/src/sap/ui/core/webc/WebComponentMetadata.js +253 -0
- package/src/sap/ui/core/webc/WebComponentRenderer.js +323 -0
- 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 +4 -3
- package/src/sap/ui/debug/DebugEnv.js +4 -4
- package/src/sap/ui/debug/PropertyList.js +1 -1
- package/src/sap/ui/model/Binding.js +6 -6
- package/src/sap/ui/model/ClientModel.js +1 -1
- package/src/sap/ui/model/ClientPropertyBinding.js +3 -3
- package/src/sap/ui/model/CompositeDataState.js +1 -1
- package/src/sap/ui/model/CompositeType.js +1 -1
- package/src/sap/ui/model/Context.js +1 -1
- package/src/sap/ui/model/DataState.js +1 -1
- package/src/sap/ui/model/ManagedObjectBindingSupport.js +4 -4
- package/src/sap/ui/model/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +4 -4
- 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/controlhelper/TreeBindingProxy.js +27 -13
- 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/ODataListBinding.js +24 -0
- package/src/sap/ui/model/odata/ODataMessageParser.js +4 -4
- 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/ODataTreeBindingFlat.js +6 -0
- 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 +7 -2
- package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
- package/src/sap/ui/model/odata/type/Decimal.js +1 -1
- 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 +6 -2
- 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/ODataListBinding.js +23 -3
- package/src/sap/ui/model/odata/v2/ODataModel.js +6 -6
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +33 -6
- package/src/sap/ui/model/odata/v4/Context.js +26 -16
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +6 -2
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +62 -29
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +1 -1
- package/src/sap/ui/model/odata/v4/ODataModel.js +17 -10
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +5 -1
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +129 -6
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +102 -57
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +30 -4
- package/src/sap/ui/model/odata/v4/lib/_Parser.js +3 -0
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +14 -4
- package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +28 -35
- package/src/sap/ui/model/odata/v4/ts.js +44 -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 +1 -1
- package/src/sap/ui/model/type/DateInterval.js +5 -4
- 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/trace/Interaction.js +11 -2
- package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
- package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +10 -11
- package/src/sap/ui/qunit/utils/nextUIUpdate.js +51 -0
- package/src/sap/ui/test/ModuleTracking.js +326 -0
- package/src/sap/ui/test/TestUtils.js +7 -6
- package/src/sap/ui/test/autowaiter/_UIUpdatesWaiter.js +3 -2
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/test/selectors/_ControlSelectorGenerator.js +2 -0
- package/src/sap/ui/test/selectors/_DropdownItem.js +1 -0
- package/src/sap/ui/test/selectors/_TableRowItem.js +1 -0
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/ui5loader-autoconfig.js +14 -10
- package/src/ui5loader.js +2 -2
- package/test/sap/ui/core/ComponentCleanup.html +228 -225
- package/test/sap/ui/core/ComponentConfig.html +1 -1
- package/test/sap/ui/core/ComponentExtensibility_CustomizingDisabled.html +1 -1
- package/test/sap/ui/core/ComponentExtensibility_legacyAPIs.html +1 -1
- package/test/sap/ui/core/ComponentSimple.html +1 -1
- package/test/sap/ui/core/ComponentSimpleModel.html +1 -1
- package/test/sap/ui/core/ComponentSupport.html +1 -1
- package/test/sap/ui/core/DateFormat.js +3 -3
- package/test/sap/ui/core/EventBroadcaster.html +62 -62
- package/test/sap/ui/core/Formats.html +4 -2
- package/test/sap/ui/core/GenericEventBinding.html +53 -52
- package/test/sap/ui/core/ListFormat.js +3 -3
- package/test/sap/ui/core/NumberFormat.js +3 -3
- package/test/sap/ui/core/ODataAnnotationsPerformance.html +28 -28
- package/test/sap/ui/core/ODataV2CanonicalRequests.html +3 -2
- package/test/sap/ui/core/ODataV2Messages.html +4 -3
- package/test/sap/ui/core/PopupWithUserSelection.html +1 -1
- package/test/sap/ui/core/Strings.js +3 -3
- package/test/sap/ui/core/ValidateURL.html +143 -143
- package/test/sap/ui/core/demokit/sample/Commands/Commands.html +1 -1
- package/test/sap/ui/core/demokit/sample/MessageManager/BasicMessages/Controller.controller.js +10 -10
- package/test/sap/ui/core/demokit/sample/MessageManager/BasicODataMessages/Controller.controller.js +7 -7
- package/test/sap/ui/core/demokit/sample/MessageManager/ODataBackendMessagesComp/webapp/Component.js +3 -2
- package/test/sap/ui/core/demokit/sample/MessageManager/ODataBackendMessagesComp/webapp/controller/Employee.controller.js +3 -2
- package/test/sap/ui/core/demokit/sample/MessageManager/ODataBackendMessagesComp/webapp/index.html +7 -8
- package/test/sap/ui/core/demokit/sample/OpaGetStarted/applicationUnderTest/index.html +9 -6
- package/test/sap/ui/core/demokit/sample/OpaWithSupportAssistant/applicationUnderTest/index.html +13 -10
- package/test/sap/ui/core/demokit/sample/PatternMatching/Patterns.html +11 -8
- package/test/sap/ui/core/demokit/sample/RoutingFullscreen/RoutingFullscreen.html +11 -8
- package/test/sap/ui/core/demokit/sample/RoutingMasterDetail/RoutingMasterDetail.html +11 -8
- package/test/sap/ui/core/demokit/sample/RoutingNestedComponent/RoutingNestedComponent.html +1 -1
- package/test/sap/ui/core/demokit/sample/RoutingNestedComponent/test/integration/opaTests.qunit.html +1 -1
- package/test/sap/ui/core/demokit/sample/RoutingNestedComponent/test/integration/opaTests.qunit.js +5 -4
- package/test/sap/ui/core/demokit/sample/TargetsStandalone/TargetsStandalone.html +11 -8
- package/test/sap/ui/core/demokit/sample/ViewTemplate/scenario/Opa.qunit.js +9 -8
- package/test/sap/ui/core/demokit/sample/ViewTemplate/types/Opa.qunit.js +12 -11
- package/test/sap/ui/core/demokit/sample/common/Controller.js +6 -7
- package/test/sap/ui/core/demokit/sample/common/Helper.js +6 -2
- package/test/sap/ui/core/demokit/sample/common/init.js +25 -21
- package/test/sap/ui/core/demokit/sample/gherkin/GherkinWithOPA5/WebsiteCode.js +8 -7
- package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/Opa.qunit.js +9 -8
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/ObjectPage.controller.js +3 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Opa.qunit.js +12 -10
- package/test/sap/ui/core/demokit/sample/odata/v4/Draft/ListReport.controller.js +3 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/Draft/Opa.qunit.js +10 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/FieldGroups/Opa.qunit.js +10 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/FlatDataAggregation/Component.js +4 -4
- package/test/sap/ui/core/demokit/sample/odata/v4/FlexibleColumnLayout/Main.controller.js +3 -3
- package/test/sap/ui/core/demokit/sample/odata/v4/FlexibleColumnLayout/Opa.qunit.js +10 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Component.js +19 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.controller.js +93 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/Main.view.xml +85 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/SandboxModel.js +10 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/data/all.json +396 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/data/metadata.xml +423 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/HierarchyBindAction/manifest.json +70 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Opa.OptimisticBatch.qunit.js +11 -10
- package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Opa.qunit.js +9 -8
- package/test/sap/ui/core/demokit/sample/odata/v4/ListBinding/Opa.qunit.js +10 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/ListBindingTemplate/Opa.qunit.js +8 -7
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Main.controller.js +8 -10
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Opa.qunit.js +12 -11
- package/test/sap/ui/core/demokit/sample/odata/v4/Products/Main.controller.js +3 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/Products/Opa.qunit.js +11 -10
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/MIT.RecursiveHierarchy maintenance.html +408 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/Opa.qunit.js +26 -8
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.controller.js +54 -14
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.view.xml +24 -10
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/SandboxModel.js +352 -287
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/pages/Main.js +38 -5
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/tests/createEdit.js +128 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/tests/pageExpandCollapse.js +23 -22
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V2/Opa.qunit.js +10 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V4/Opa.qunit.js +9 -8
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Component.js +3 -2
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Opa.qunit.js +15 -14
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersRTATest/Opa.qunit.js +9 -8
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersTemplate/Opa.qunit.js +9 -8
- package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/Opa.qunit.js +10 -9
- package/test/sap/ui/core/demokit/sample/odata/v4/Sticky/Opa.qunit.js +10 -9
- package/test/sap/ui/core/demokit/tutorial/databinding/01/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/01/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/01/webapp/index.js +7 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/02/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/02/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/02/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/03/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/03/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/03/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/04/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/04/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/04/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/05/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/05/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/05/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/06/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/06/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/06/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/07/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/07/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/07/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/08/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/08/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/08/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/09/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/09/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/09/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/10/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/10/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/10/webapp/index.js +4 -3
- package/test/sap/ui/core/demokit/tutorial/databinding/11/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/11/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/11/webapp/index.js +6 -4
- package/test/sap/ui/core/demokit/tutorial/databinding/12/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/12/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/12/webapp/index.js +6 -4
- package/test/sap/ui/core/demokit/tutorial/databinding/13/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/13/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/13/webapp/index.js +6 -4
- package/test/sap/ui/core/demokit/tutorial/databinding/14/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/14/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/14/webapp/index.js +6 -4
- package/test/sap/ui/core/demokit/tutorial/databinding/15/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/databinding/15/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/databinding/15/webapp/index.js +6 -4
- package/test/sap/ui/core/demokit/tutorial/mockserver/01/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/mockserver/01/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/02/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/mockserver/02/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/03/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/mockserver/03/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/mockserver/04/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/mockserver/04/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/01/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/01/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/01/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/02/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/02/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/02/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/03/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/03/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/03/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/04/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/04/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/04/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/05/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/05/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/05/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/06/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/06/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/06/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/07/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/07/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/07/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/08/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/08/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/08/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/09/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/09/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/09/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/10/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/10/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/10/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/11/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/11/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/11/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/12/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/12/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/12/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/13/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/13/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/13/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/14/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/14/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/14/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/15/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/15/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/15/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/16/package.json +2 -4
- package/test/sap/ui/core/demokit/tutorial/navigation/16/ui5.yaml +7 -0
- package/test/sap/ui/core/demokit/tutorial/navigation/16/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/17/package.json +4 -6
- package/test/sap/ui/core/demokit/tutorial/navigation/17/ui5.yaml +8 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/17/webapp/index.html +1 -1
- package/test/sap/ui/core/demokit/tutorial/navigation/index.html +2 -2
- package/test/sap/ui/core/demokit/tutorial/odatav4/01/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/01/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/02/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/02/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/03/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/03/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/04/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/04/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/05/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/05/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/06/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/06/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/06/webapp/controller/App.controller.js +5 -5
- package/test/sap/ui/core/demokit/tutorial/odatav4/07/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/07/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/07/webapp/controller/App.controller.js +7 -7
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/controller/App.controller.js +7 -7
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/test/integration/opaTests.qunit.js +5 -5
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/test/integration/pages/Tutorial.js +1 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/09/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/09/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/09/webapp/controller/App.controller.js +7 -7
- package/test/sap/ui/core/demokit/tutorial/odatav4/10/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/10/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/10/webapp/controller/App.controller.js +7 -7
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/package.json +2 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/ui5.yaml +9 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/controller/App.controller.js +7 -7
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/test/integration/opaTests.qunit.js +5 -5
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/test/integration/pages/Tutorial.js +1 -1
- package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/package.json +2 -5
- package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/ui5.yaml +8 -0
- package/test/sap/ui/core/demokit/tutorial/troubleshooting/01/webapp/test/integration/opaTests.qunit.js +6 -6
- package/test/sap/ui/core/frameoptions/createcontent.js +7 -6
- package/test/sap/ui/core/internal/samples/client/MusicCollection/index.html +1 -1
- package/test/sap/ui/core/internal/samples/composite/xmlcomposite/exStringAndFloat/Test.controller.js +3 -2
- package/test/sap/ui/core/internal/samples/odata/twoFields/Opa.qunit.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/twoFields/Opa.qunit.js +8 -8
- package/test/sap/ui/core/internal/samples/odata/twoFields/index.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/v2/Products/Opa.qunit.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/v2/Products/Opa.qunit.js +7 -7
- package/test/sap/ui/core/internal/samples/odata/v2/Products/index.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Component.js +3 -2
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/MIT.SalesOrders(V2).ODLB.create.html +2 -0
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Main.controller.js +3 -3
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Opa.qunit.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/Opa.qunit.js +9 -6
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/SandboxModel.js +3 -0
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/data/ODLB.create/TC3/SalesOrderSet_desc_4-1.json +16 -0
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/index.html +1 -1
- package/test/sap/ui/core/internal/samples/odata/v2/SalesOrders/tests/ODataListBinding.create/TC3_SalesOrders_InlineCreationRow.js +9 -0
- package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/Component.js +3 -2
- package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/Main.controller.js +3 -3
- package/test/sap/ui/core/internal/samples/odata/v2/TreeTable/index.html +1 -1
- package/test/sap/ui/core/qunit/BlockLayerUtils.qunit.js +9 -7
- package/test/sap/ui/core/qunit/CalculatedFields.qunit.js +4 -2
- package/test/sap/ui/core/qunit/ContextMenuSupport.qunit.js +3 -2
- package/test/sap/ui/core/qunit/ControlDefinition.qunit.js +11 -10
- package/test/sap/ui/core/qunit/ControlRenderer.qunit.js +218 -223
- package/test/sap/ui/core/qunit/Core.qunit.js +35 -31
- package/test/sap/ui/core/qunit/CoreEvents.qunit.js +17 -15
- package/test/sap/ui/core/qunit/Core_repeatedExecution.qunit.js +3 -3
- package/test/sap/ui/core/qunit/CustomStyleClassSupport.qunit.js +4 -3
- package/test/sap/ui/core/qunit/Element_data.qunit.js +5 -5
- package/test/sap/ui/core/qunit/Element_destroy.qunit.js +6 -4
- package/test/sap/ui/core/qunit/Element_focus.qunit.js +25 -24
- package/test/sap/ui/core/qunit/Element_metadata_selector.qunit.js +3 -2
- package/test/sap/ui/core/qunit/EnabledPropagator.qunit.js +7 -6
- package/test/sap/ui/core/qunit/ExpressionParser.qunit.js +1 -1
- package/test/sap/ui/core/qunit/FastNavigationWithWebComponents.qunit.js +5 -5
- package/test/sap/ui/core/qunit/FieldGroup.qunit.js +9 -6
- package/test/sap/ui/core/qunit/FocusHandler.qunit.js +7 -6
- package/test/sap/ui/core/qunit/Fragment.qunit.js +35 -34
- package/test/sap/ui/core/qunit/Fragment_legacyAPIs.qunit.js +51 -50
- package/test/sap/ui/core/qunit/HTML.qunit.js +32 -32
- package/test/sap/ui/core/qunit/Icon.qunit.js +66 -65
- package/test/sap/ui/core/qunit/IconPool.qunit.js +2 -1
- package/test/sap/ui/core/qunit/InvisibleText.qunit.js +13 -12
- package/test/sap/ui/core/qunit/Lib.qunit.js +8 -8
- package/test/sap/ui/core/qunit/LocalBusyIndicator.qunit.js +24 -24
- package/test/sap/ui/core/qunit/RenderManager.qunit.js +54 -53
- package/test/sap/ui/core/qunit/ResizeHandler.qunit.js +8 -9
- package/test/sap/ui/core/qunit/ScrollBar.qunit.js +7 -6
- package/test/sap/ui/core/qunit/ShortcutHints.qunit.js +13 -11
- package/test/sap/ui/core/qunit/StashedControlSupport.qunit.js +6 -5
- package/test/sap/ui/core/qunit/ThemeParameters.qunit.js +5 -4
- package/test/sap/ui/core/qunit/Theming.qunit.js +88 -50
- package/test/sap/ui/core/qunit/Theming_default_and_fallback.qunit.js +130 -0
- package/test/sap/ui/core/qunit/TooltipBase.qunit.js +4 -3
- package/test/sap/ui/core/qunit/UIArea.qunit.js +248 -18
- package/test/sap/ui/core/qunit/analytics/testsuite4analytics.qunit.js +9 -8
- package/test/sap/ui/core/qunit/app/MessageListBinding.qunit.js +10 -10
- package/test/sap/ui/core/qunit/base/Config.qunit.js +12 -2
- package/test/sap/ui/core/qunit/base/Config_cascade.qunit.js +123 -52
- package/test/sap/ui/core/qunit/base/Config_meta.qunit.html +2 -0
- package/test/sap/ui/core/qunit/base/config/GlobalConfig.js +3 -1
- package/test/sap/ui/core/qunit/base/config/GlobalConfigForCascade.js +4 -1
- package/test/sap/ui/core/qunit/bootstrap/BootstrapMinimal.qunit.js +3 -3
- package/test/sap/ui/core/qunit/bootstrap/BootstrapMinimal_legacyAPIs.qunit.js +13 -11
- package/test/sap/ui/core/qunit/bootstrap/BootstrapPreload.qunit.js +1 -1
- package/test/sap/ui/core/qunit/bootstrap/BootstrapWithCustomScript_legacyAPIs.qunit.js +13 -11
- package/test/sap/ui/core/qunit/bootstrap/BootstrapWithNoJQuery_legacyAPIs.qunit.js +7 -5
- package/test/sap/ui/core/qunit/bootstrap/CalendarClassLoadingWithCustomBootTaskAndPreload.qunit.js +12 -14
- package/test/sap/ui/core/qunit/bootstrap/CfgDefaults.qunit.js +3 -2
- package/test/sap/ui/core/qunit/bootstrap/CfgFromTagAttributes.qunit.js +1 -1
- package/test/sap/ui/core/qunit/bootstrap/_checkCoreAndLibraryBooted.qunit.js +1 -1
- package/test/sap/ui/core/qunit/bootstrap/testsuite.bootstrap.qunit.js +12 -6
- package/test/sap/ui/core/qunit/component/Component.qunit.js +14 -15
- package/test/sap/ui/core/qunit/component/Component_unavoidablySync.qunit.js +4 -3
- package/test/sap/ui/core/qunit/component/Customizing.qunit.js +4 -5
- package/test/sap/ui/core/qunit/component/Customizing_async.qunit.js +4 -3
- package/test/sap/ui/core/qunit/component/Customizing_disabled.qunit.js +4 -6
- package/test/sap/ui/core/qunit/component/Customizing_legacyAPIs.qunit.js +3 -5
- package/test/sap/ui/core/qunit/component/Customizing_multi.qunit.js +3 -6
- package/test/sap/ui/core/qunit/component/Customizing_unavoidablySync.qunit.js +5 -8
- package/test/sap/ui/core/qunit/component/ExtensionPoint.qunit.js +4 -5
- package/test/sap/ui/core/qunit/component/ExtensionPoint_unavoidablySync.qunit.js +4 -3
- package/test/sap/ui/core/qunit/component/UIComponent.qunit.js +19 -19
- package/test/sap/ui/core/qunit/component/UIComponent_unavoidablySync.qunit.js +19 -19
- package/test/sap/ui/core/qunit/composite/XMLComposite.qunit.js +43 -43
- package/test/sap/ui/core/qunit/csp/ContentSecurityPolicy.qunit.js +18 -13
- package/test/sap/ui/core/qunit/dnd/DragAndDrop.qunit.js +19 -18
- package/test/sap/ui/core/qunit/dnd/DragInfo.qunit.js +13 -12
- package/test/sap/ui/core/qunit/dnd/DropInfo.qunit.js +5 -4
- package/test/sap/ui/core/qunit/generic/ControlMemoryLeaks.qunit.js +7 -6
- package/test/sap/ui/core/qunit/generic/DuplicateIdCheck.qunit.js +7 -6
- package/test/sap/ui/core/qunit/generic/legacy/ControlIterator.qunit.js +6 -6
- package/test/sap/ui/core/qunit/generic/legacy/ControlMemoryLeaks.qunit.js +20 -17
- package/test/sap/ui/core/qunit/generic/legacy/DuplicateIdCheck.qunit.js +8 -7
- package/test/sap/ui/core/qunit/i18n/LocaleData.qunit.js +1 -2
- package/test/sap/ui/core/qunit/internal/1Ring.qunit.html +14 -19
- package/test/sap/ui/core/qunit/internal/1Ring.qunit.js +34 -22
- package/test/sap/ui/core/qunit/internal/ODataV4.qunit.html +6 -6
- package/test/sap/ui/core/qunit/internal/testsuite.feature-odata-v4.qunit.js +4 -0
- package/test/sap/ui/core/qunit/isBehindOtherElement.qunit.js +7 -7
- package/test/sap/ui/core/qunit/jquery-mobile-custom.qunit.js +3 -3
- package/test/sap/ui/core/qunit/jquery.sap.events.qunit.js +3 -2
- package/test/sap/ui/core/qunit/jquery.sap.ui.qunit.js +16 -16
- package/test/sap/ui/core/qunit/messages/{MessageManager.qunit.js → Messaging.qunit.js} +46 -49
- package/test/sap/ui/core/qunit/messages/messagesDataBinding.qunit.js +3 -1
- package/test/sap/ui/core/qunit/messages/messagesEnd2End.qunit.js +10 -10
- package/test/sap/ui/core/qunit/messages/messagesGeneral.qunit.js +36 -46
- package/test/sap/ui/core/qunit/messages/messagesUsage.qunit.js +25 -36
- package/test/sap/ui/core/qunit/messages/testsuite.messaging.base.qunit.js +2 -2
- package/test/sap/ui/core/qunit/model/Binding.qunit.js +8 -8
- package/test/sap/ui/core/qunit/model/controlhelper/TreeBindingProxy.qunit.js +24 -14
- package/test/sap/ui/core/qunit/mvc/AnyView.qunit.js +7 -6
- package/test/sap/ui/core/qunit/mvc/AnyViewAsync.qunit.js +3 -2
- package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorAsync_unavoidablyUsingInlineStyle.qunit.js +5 -4
- package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorRequireXML.qunit.js +8 -9
- package/test/sap/ui/core/qunit/mvc/XMLView.qunit.js +45 -40
- package/test/sap/ui/core/qunit/mvc/testdata/stashed/OP.html +1 -1
- package/test/sap/ui/core/qunit/mvc/viewprocessing/ViewProcessing.qunit.js +15 -20
- package/test/sap/ui/core/qunit/mvc/viewprocessing/ViewProcessing_legacyAPIs.qunit.js +20 -25
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/AnyViewAsync_legacyAPIs.qunit.js +10 -11
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/AnyView_legacyAPIs.qunit.js +7 -6
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/HTMLView_legacyAPIs.qunit.js +8 -7
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/XMLTemplateProcessorRequireXML_legacyAPIs.qunit.js +7 -7
- package/test/sap/ui/core/qunit/mvc_legacyAPIs/XMLView_legacyAPIs.qunit.js +40 -47
- package/test/sap/ui/core/qunit/odata/ODataAnnotations.qunit.js +52 -20
- package/test/sap/ui/core/qunit/odata/{ODataListBinding.qunit.js → ODataListBinding_legacyAPIs.qunit.js} +27 -0
- package/test/sap/ui/core/qunit/odata/ODataMessageParser.qunit.js +44 -48
- package/test/sap/ui/core/qunit/odata/ODataMessageParserNoFakeService.qunit.js +8 -8
- package/test/sap/ui/core/qunit/odata/ODataMetaModel.qunit.js +66 -29
- package/test/sap/ui/core/qunit/odata/ODataMetadata.qunit.js +17 -7
- package/test/sap/ui/core/qunit/odata/ODataTreeBindingAdapter.qunit.js +147 -89
- package/test/sap/ui/core/qunit/odata/ODataUtils.qunit.js +1 -0
- package/test/sap/ui/core/qunit/odata/type/DateTimeBase.qunit.js +33 -12
- package/test/sap/ui/core/qunit/odata/type/TimeOfDay.qunit.js +33 -12
- package/test/sap/ui/core/qunit/odata/v2/CanonicalRequests.qunit.js +5 -4
- package/test/sap/ui/core/qunit/odata/v2/ODataListBindingNoFakeService.qunit.js +63 -13
- package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +281 -59
- package/test/sap/ui/core/qunit/odata/v2/ODataModelNoFakeService.qunit.js +28 -4
- package/test/sap/ui/core/qunit/odata/v2/ODataTreeBindingFlatNoFakeService.qunit.js +21 -0
- package/test/sap/ui/core/qunit/odata/v2/ODataTreeBindingNoFakeService.qunit.js +1 -2
- package/test/sap/ui/core/qunit/odata/v2/ODataV2ListBinding.qunit.js +7 -207
- package/test/sap/ui/core/qunit/odata/v2/ODataV2ListBinding_Filter_legacyAPIs.qunit.js +281 -0
- package/test/sap/ui/core/qunit/odata/v2/ODataV2Model.qunit.js +9 -8
- package/test/sap/ui/core/qunit/odata/v2/ODataV2TreeBinding.qunit.js +1 -0
- package/test/sap/ui/core/qunit/odata/v2/V2ODataModel.qunit.js +95 -85
- package/test/sap/ui/core/qunit/odata/v2/V2ODataModelB.qunit.js +70 -67
- package/test/sap/ui/core/qunit/odata/v2/V2ODataModelDataState.qunit.js +19 -20
- package/test/sap/ui/core/qunit/odata/v2/testsuite.odatav2.qunit.js +4 -0
- package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +50 -27
- package/test/sap/ui/core/qunit/odata/v4/ODataBinding.qunit.js +5 -0
- package/test/sap/ui/core/qunit/odata/v4/ODataContextBinding.qunit.js +4 -3
- package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +103 -14
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +1027 -31
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.qunit.js +18 -17
- package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +272 -36
- package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +115 -82
- package/test/sap/ui/core/qunit/odata/v4/lib/_Helper.qunit.js +10 -0
- package/test/sap/ui/core/qunit/odata/v4/lib/_Requestor.qunit.js +108 -10
- package/test/sap/ui/core/qunit/odata/v4/lib/_V2Requestor.qunit.js +1 -1
- package/test/sap/ui/core/qunit/opa/Opa5PageObject.qunit.js +5 -6
- package/test/sap/ui/core/qunit/opa/OpaPlugin.qunit.js +29 -42
- package/test/sap/ui/core/qunit/opa/RecordReplay.qunit.js +13 -14
- package/test/sap/ui/core/qunit/opa/_ControlFinder.qunit.js +5 -4
- package/test/sap/ui/core/qunit/opa/actions/Action.qunit.js +6 -5
- package/test/sap/ui/core/qunit/opa/actions/EnterText.qunit.js +22 -21
- package/test/sap/ui/core/qunit/opa/actions/Press.qunit.js +60 -56
- package/test/sap/ui/core/qunit/opa/autowaiter/_cssAnimationWaiter.js +5 -7
- package/test/sap/ui/core/qunit/opa/autowaiter/_cssTransitionWaiter.js +5 -9
- package/test/sap/ui/core/qunit/opa/autowaiter/_jsAnimationWaiter.js +5 -6
- package/test/sap/ui/core/qunit/opa/autowaiter/_navigationContainerWaiter.js +5 -4
- package/test/sap/ui/core/qunit/opa/autowaiter/_resourceWaiter.js +21 -20
- package/test/sap/ui/core/qunit/opa/fixture/bindingPath.js +6 -5
- package/test/sap/ui/core/qunit/opa/matchers/Interactable.qunit.js +7 -5
- package/test/sap/ui/core/qunit/opa/matchers/LabelFor.qunit.js +4 -3
- package/test/sap/ui/core/qunit/opa/matchers/Sibling.qunit.js +4 -3
- package/test/sap/ui/core/qunit/opa/matchers/Visible.qunit.js +6 -5
- package/test/sap/ui/core/qunit/opa/matchers/_Busy.qunit.js +28 -27
- package/test/sap/ui/core/qunit/opa/matchers/_Editable.qunit.js +11 -10
- package/test/sap/ui/core/qunit/opa/matchers/_Enabled.qunit.js +11 -10
- package/test/sap/ui/core/qunit/opa/matchers/_Visitor.qunit.js +5 -4
- package/test/sap/ui/core/qunit/opa/opa5/actions.qunit.js +8 -7
- package/test/sap/ui/core/qunit/opa/opa5/basics.qunit.js +12 -17
- package/test/sap/ui/core/qunit/opa/opa5/logging.qunit.js +5 -6
- package/test/sap/ui/core/qunit/opa/opa5/matchers.qunit.js +6 -5
- package/test/sap/ui/core/qunit/opa/selectors/_BindingPath.js +10 -9
- package/test/sap/ui/core/qunit/opa/selectors/_ControlSelectorGenerator.js +6 -7
- package/test/sap/ui/core/qunit/opa/selectors/_ControlSelectorValidator.js +4 -3
- package/test/sap/ui/core/qunit/opa/selectors/_DropdownItem.js +4 -3
- package/test/sap/ui/core/qunit/opa/selectors/_GlobalID.js +4 -3
- package/test/sap/ui/core/qunit/opa/selectors/_LabelFor.js +4 -3
- package/test/sap/ui/core/qunit/opa/selectors/_Properties.js +33 -27
- package/test/sap/ui/core/qunit/opa/selectors/_Selector.js +7 -10
- package/test/sap/ui/core/qunit/opa/selectors/_TableRowItem.js +5 -7
- package/test/sap/ui/core/qunit/opa/selectors/_ViewID.js +5 -7
- package/test/sap/ui/core/qunit/performance/trace/Interaction.qunit.js +35 -28
- package/test/sap/ui/core/qunit/routing/Placeholder.qunit.js +11 -9
- package/test/sap/ui/core/qunit/routing/PlaceholderOptOut.qunit.js +5 -3
- package/test/sap/ui/core/qunit/routing/async/Router.qunit.js +57 -0
- package/test/sap/ui/core/qunit/routing/fixture/historyIframe/iframe/index.html +1 -1
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Child/Component.js +30 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Child/manifest.json +25 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Parent/Component.js +14 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Parent/manifest.json +51 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Parent/view/NotFound.view.xml +3 -0
- package/test/sap/ui/core/qunit/routing/fixture/router/component/2LevelsMultiNavTo/Parent/view/RootView.view.xml +5 -0
- package/test/sap/ui/core/qunit/rule/app/syncXHR.qunit.js +24 -17
- package/test/sap/ui/core/qunit/rule/app/syncXHRBootstrap.qunit.js +3 -3
- package/test/sap/ui/core/qunit/rule/app/syncXHRBootstrapDebug.qunit.js +3 -3
- package/test/sap/ui/core/qunit/rule/config/asynchronousXMLViews.qunit.js +9 -18
- package/test/sap/ui/core/qunit/support/techinfo/TechnicalInfoTestbench.html +3 -1
- package/test/sap/ui/core/qunit/test/starter/find/index.html +1 -1
- package/test/sap/ui/core/qunit/test/starter/find/main.js +3 -2
- package/test/sap/ui/core/qunit/testsuite.core.framework.qunit.js +0 -6
- package/test/sap/ui/core/qunit/testsuites/testsuite.base.configuration.qunit.js +1 -1
- package/test/sap/ui/core/qunit/testsuites/testsuite.databinding.qunit.js +10 -6
- package/test/sap/ui/core/qunit/testsuites/testsuite.theming.qunit.js +27 -4
- package/test/sap/ui/core/qunit/tmpl/Template.qunit.js +36 -35
- package/test/sap/ui/core/qunit/types/DateFormat.qunit.js +13 -0
- package/test/sap/ui/core/qunit/types/DateInterval.qunit.js +2 -2
- package/test/sap/ui/core/qunit/util/BusyIndicatorNoCore.qunit.js +2 -2
- package/test/sap/ui/core/qunit/util/InvisibleMessage.qunit.js +4 -4
- package/test/sap/ui/core/qunit/util/LabelEnablement.qunit.js +27 -31
- package/test/sap/ui/core/qunit/util/Popup.qunit.js +27 -27
- package/test/sap/ui/core/qunit/util/ResponsivePaddingsEnablement.qunit.js +13 -9
- package/test/sap/ui/core/qunit/util/XMLPreprocessor.qunit.js +37 -6
- package/test/sap/ui/core/qunit/util/jQuery.sap.measure.qunit.js +1 -1
- package/test/sap/ui/core/qunit/util/jquery.sap.dom.qunit.js +3 -2
- package/test/sap/ui/core/qunit/util/reflection/JsControlTreeModifier.qunit.js +8 -8
- package/test/sap/ui/core/qunit/util/reflection/XmlTreeModifier.qunit.js +24 -24
- package/test/sap/ui/core/qunit/util/static/TechnicalInfoTestbenchInit.js +8 -2
- package/test/sap/ui/core/qunit/webc/WebComponent.qunit.js +188 -0
- package/test/sap/ui/core/qunit/webc/testsuite.webc.qunit.html +14 -0
- package/test/sap/ui/core/qunit/webc/testsuite.webc.qunit.js +22 -0
- package/test/sap/ui/core/relnotes/changes-1.117.json +1 -34
- package/test/sap/ui/core/relnotes/changes-1.118.json +143 -0
- package/test/sap/ui/core/samples/components/resourcesCSS/index.html +1 -1
- package/test/sap/ui/core/samples/databinding/DataBinding.html +3 -1
- package/test/sap/ui/core/samples/databinding/DataBindingAsyncType.html +3 -2
- package/test/sap/ui/core/samples/databinding/DataBindingCalculatedFields.html +3 -1
- package/test/sap/ui/core/samples/databinding/DataBindingList.html +3 -1
- package/test/sap/ui/core/samples/databinding/DataBindingListNamedModel.html +3 -1
- package/test/sap/ui/core/samples/databinding/DataBindingListXML.html +3 -1
- package/test/sap/ui/core/samples/databinding/DataBindingMultiModel.html +3 -1
- package/test/sap/ui/core/samples/databinding/DataBindingSortingFiltering.html +3 -1
- package/test/sap/ui/core/samples/databinding/DataBindingTreeLarge.html +102 -113
- package/test/sap/ui/core/samples/databinding/DataBindingTwoWay.html +3 -1
- package/test/sap/ui/core/samples/databinding/DataBindingTwoWayTable.html +90 -89
- package/test/sap/ui/core/samples/databinding/DataBindingValidation.html +149 -148
- package/test/sap/ui/core/samples/databinding/DataBindingXML.html +3 -2
- package/test/sap/ui/core/samples/databinding/DatabindingMessages.html +158 -153
- package/test/sap/ui/core/samples/databinding/ODatabindingMessages.html +4 -6
- package/test/sap/ui/core/samples/databinding/UnitTableMain.js +3 -4
- package/test/sap/ui/core/samples/extensions/index_legacyAPIs.html +15 -13
- package/test/sap/ui/core/samples/formatting/controller/ChooseFormatOptions.controller.js +3 -2
- package/test/sap/ui/core/samples/mvc/ExtendedXMLViewEventHandlerSyntax.html +5 -3
- package/test/sap/ui/core/samples/mvc/XMLViewBindableAggregation.html +1 -1
- package/test/testsuite/testframe.html +4 -4
- package/src/ui5-boot.js +0 -50
- package/test/sap/ui/core/qunit/CoreLock.qunit.js +0 -61
- package/test/sap/ui/core/qunit/internal/ODataV4.qunit.js +0 -30
- /package/test/sap/ui/core/qunit/{MasterDetail.qunit.js → MasterDetail_legacyAPIs.qunit.js} +0 -0
- /package/test/sap/ui/core/qunit/odata/{ODataModel.qunit.js → ODataModel_legacyAPIs.qunit.js} +0 -0
- /package/test/sap/ui/core/qunit/odata/{ODataSharedMetadata.qunit.js → ODataSharedMetadata_legacyAPIs.qunit.js} +0 -0
- /package/test/sap/ui/core/qunit/odata/{ODataTreeBinding.qunit.js → ODataTreeBinding_legacyAPIs.qunit.js} +0 -0
|
@@ -13,13 +13,12 @@ sap.ui.define([
|
|
|
13
13
|
"sap/ui/model/FilterType",
|
|
14
14
|
"sap/ui/model/Sorter",
|
|
15
15
|
"sap/ui/model/odata/CountMode",
|
|
16
|
-
"sap/ui/model/odata/Filter",
|
|
17
16
|
"sap/ui/model/odata/OperationMode",
|
|
18
17
|
"sap/ui/model/odata/v2/ODataModel",
|
|
19
18
|
"test-resources/sap/ui/core/qunit/odata/data/ODataModelFakeService"
|
|
20
19
|
], function(Log, each, extend, DisplayListItem, List, Panel, StandardListItem, Filter,
|
|
21
|
-
FilterOperator, FilterProcessor, FilterType, Sorter, CountMode,
|
|
22
|
-
|
|
20
|
+
FilterOperator, FilterProcessor, FilterType, Sorter, CountMode, OperationMode, ODataModel,
|
|
21
|
+
fakeService) {
|
|
23
22
|
"use strict";
|
|
24
23
|
|
|
25
24
|
var oModel;
|
|
@@ -1038,41 +1037,6 @@ sap.ui.define([
|
|
|
1038
1037
|
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Condiments", "startsWith, endsWith filtered content");
|
|
1039
1038
|
|
|
1040
1039
|
oBinding.detachChange(handler3);
|
|
1041
|
-
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.LE, value1: "Z"}, {operator:FilterOperator.GE, value1: "A"}, {operator:FilterOperator.NE, value1: "Beverages"}]);
|
|
1042
|
-
oBinding.filter([oFilter]);
|
|
1043
|
-
oBinding.attachChange(handler4);
|
|
1044
|
-
};
|
|
1045
|
-
var handler4 = function(oEvent){
|
|
1046
|
-
// contexts should be now loaded
|
|
1047
|
-
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
1048
|
-
assert.equal(aFilteredContexts.length, 7, "ODataFilter, ANDed");
|
|
1049
|
-
assert.ok(oModel.getProperty("CategoryName",aFilteredContexts[0]) != "Beverages" && oModel.getProperty("CategoryName",aFilteredContexts[0]) == "Condiments", "ODataFilter, ANDed");
|
|
1050
|
-
|
|
1051
|
-
oBinding.detachChange(handler4);
|
|
1052
|
-
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.EQ, value1: "Condiments"}, {operator:FilterOperator.EQ, value1: "Beverages"}], false);
|
|
1053
|
-
oBinding.filter([oFilter]);
|
|
1054
|
-
oBinding.attachChange(handler5);
|
|
1055
|
-
};
|
|
1056
|
-
var handler5 = function(oEvent){
|
|
1057
|
-
// contexts should be now loaded
|
|
1058
|
-
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
1059
|
-
assert.equal(aFilteredContexts.length, 2, "ODataFilter, ORed");
|
|
1060
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "ODataFilter, ORed");
|
|
1061
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[1]), "Condiments", "ODataFilter, ORed");
|
|
1062
|
-
|
|
1063
|
-
oBinding.detachChange(handler5);
|
|
1064
|
-
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.EQ, value1: "Condiments"}, {operator:FilterOperator.EQ, value1: "Beverages"}], false);
|
|
1065
|
-
oFilter2 = new Filter("Description", FilterOperator.EndsWith, "ings");
|
|
1066
|
-
oBinding.filter([oFilter, oFilter2]);
|
|
1067
|
-
oBinding.attachChange(handler6);
|
|
1068
|
-
};
|
|
1069
|
-
var handler6 = function(oEvent){
|
|
1070
|
-
// contexts should be now loaded
|
|
1071
|
-
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
1072
|
-
assert.equal(aFilteredContexts.length, 1, "ODataFilter + normal Filter");
|
|
1073
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Condiments", "ODataFilter + normal Filter");
|
|
1074
|
-
|
|
1075
|
-
oBinding.detachChange(handler6);
|
|
1076
1040
|
//check (ProductID=male AND (SupplierID = Green OR (CategoryName = Peter OR CategoryName = Frank OR CategoryName = Gina)))
|
|
1077
1041
|
var oFilter1 = new Filter("CategoryName", FilterOperator.EQ, "Beverages");
|
|
1078
1042
|
var oFilter2 = new Filter("CategoryName", FilterOperator.EQ, "Dairy Products");
|
|
@@ -1083,14 +1047,13 @@ sap.ui.define([
|
|
|
1083
1047
|
var oFilter5 = new Filter("Description", FilterOperator.EndsWith, "s");
|
|
1084
1048
|
var oMultiFilter3 = new Filter([oMultiFilter2, oFilter5], true);
|
|
1085
1049
|
oBinding.filter(oMultiFilter3);
|
|
1086
|
-
oBinding.attachChange(
|
|
1050
|
+
oBinding.attachChange(handler4);
|
|
1087
1051
|
};
|
|
1088
|
-
var
|
|
1052
|
+
var handler4 = function(oEvent){
|
|
1089
1053
|
// contexts should be now loaded
|
|
1090
1054
|
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
1091
|
-
assert.equal(aFilteredContexts.length, 3, "
|
|
1092
|
-
|
|
1093
|
-
oBinding.detachChange(handler7);
|
|
1055
|
+
assert.equal(aFilteredContexts.length, 3, "normal Filter");
|
|
1056
|
+
oBinding.detachChange(handler4);
|
|
1094
1057
|
done();
|
|
1095
1058
|
};
|
|
1096
1059
|
|
|
@@ -1346,33 +1309,6 @@ sap.ui.define([
|
|
|
1346
1309
|
assert.equal(oModel.getProperty("CategoryName", aFilteredContexts[3]), "Produce", "not startsWith and not endsWith filtered content");
|
|
1347
1310
|
assert.equal(oModel.getProperty("CategoryName", aFilteredContexts[4]), "Seafood", "not startsWith and not endsWith filtered content");
|
|
1348
1311
|
|
|
1349
|
-
|
|
1350
|
-
// ANDed filters
|
|
1351
|
-
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.LE, value1: "Z"}, {operator:FilterOperator.GE, value1: "A"}, {operator:FilterOperator.NE, value1: "Beverages"}]);
|
|
1352
|
-
oBinding.filter([oFilter]);
|
|
1353
|
-
|
|
1354
|
-
aFilteredContexts = oBinding.getContexts();
|
|
1355
|
-
assert.equal(aFilteredContexts.length, 7, "ODataFilter, ANDed");
|
|
1356
|
-
assert.ok(oModel.getProperty("CategoryName",aFilteredContexts[0]) != "Beverages" && oModel.getProperty("CategoryName",aFilteredContexts[0]) == "Condiments", "ODataFilter, ANDed");
|
|
1357
|
-
|
|
1358
|
-
// ORed filters
|
|
1359
|
-
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.EQ, value1: "Condiments"}, {operator:FilterOperator.EQ, value1: "Beverages"}], false);
|
|
1360
|
-
oBinding.filter([oFilter]);
|
|
1361
|
-
|
|
1362
|
-
aFilteredContexts = oBinding.getContexts();
|
|
1363
|
-
assert.equal(aFilteredContexts.length, 2, "ODataFilter, ORed");
|
|
1364
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "ODataFilter, ORed");
|
|
1365
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[1]), "Condiments", "ODataFilter, ORed");
|
|
1366
|
-
|
|
1367
|
-
// ORed + ANDed filters
|
|
1368
|
-
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.EQ, value1: "Condiments"}, {operator:FilterOperator.EQ, value1: "Beverages"}], false);
|
|
1369
|
-
oFilter2 = new Filter("Description", FilterOperator.EndsWith, "ings");
|
|
1370
|
-
oBinding.filter([oFilter, oFilter2]);
|
|
1371
|
-
|
|
1372
|
-
aFilteredContexts = oBinding.getContexts();
|
|
1373
|
-
assert.equal(aFilteredContexts.length, 1, "ODataFilter + normal Filter");
|
|
1374
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Condiments", "ODataFilter + normal Filter");
|
|
1375
|
-
|
|
1376
1312
|
//check (ProductID=male AND (SupplierID = Green OR (CategoryName = Peter OR CategoryName = Frank OR CategoryName = Gina)))
|
|
1377
1313
|
var oFilter1 = new Filter("CategoryName", FilterOperator.EQ, "Beverages");
|
|
1378
1314
|
var oFilter2 = new Filter("CategoryName", FilterOperator.EQ, "Dairy Products");
|
|
@@ -1385,7 +1321,7 @@ sap.ui.define([
|
|
|
1385
1321
|
oBinding.filter(oMultiFilter3);
|
|
1386
1322
|
|
|
1387
1323
|
aFilteredContexts = oBinding.getContexts();
|
|
1388
|
-
assert.equal(aFilteredContexts.length, 3, "
|
|
1324
|
+
assert.equal(aFilteredContexts.length, 3, "normal Filter");
|
|
1389
1325
|
|
|
1390
1326
|
done();
|
|
1391
1327
|
};
|
|
@@ -2230,141 +2166,6 @@ sap.ui.define([
|
|
|
2230
2166
|
oList.getBinding("items").attachChange(fnChangeHandler);
|
|
2231
2167
|
});
|
|
2232
2168
|
|
|
2233
|
-
|
|
2234
|
-
QUnit.test("ListBinding filter (ODataFilter.convert)", function(assert){
|
|
2235
|
-
var done = assert.async();
|
|
2236
|
-
var oFilter, oFilter2;
|
|
2237
|
-
var handler = function(oEvent){
|
|
2238
|
-
// contexts should be now loaded
|
|
2239
|
-
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
2240
|
-
assert.equal(aFilteredContexts.length, 1, "EQ filtered content length");
|
|
2241
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "EQ filtered content");
|
|
2242
|
-
|
|
2243
|
-
oBinding.detachChange(handler);
|
|
2244
|
-
// NE, contains
|
|
2245
|
-
oFilter = new ODataFilter("CategoryName", [{
|
|
2246
|
-
operator: FilterOperator.EQ,
|
|
2247
|
-
value1: "Condiments"
|
|
2248
|
-
}, {
|
|
2249
|
-
operator: FilterOperator.Contains,
|
|
2250
|
-
value1: "ons"
|
|
2251
|
-
}], false);
|
|
2252
|
-
oBinding.filter(oFilter.convert());
|
|
2253
|
-
oBinding.attachChange(handler1);
|
|
2254
|
-
};
|
|
2255
|
-
var handler1 = function(oEvent){
|
|
2256
|
-
// contexts should be now loaded
|
|
2257
|
-
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
2258
|
-
assert.equal(aFilteredContexts.length, 2, "NE, contains, filtered content length");
|
|
2259
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Condiments", "EQ, Contains, filtered content");
|
|
2260
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[1]), "Confections", "EQ, Contains, filtered content");
|
|
2261
|
-
|
|
2262
|
-
oBinding.detachChange(handler1);
|
|
2263
|
-
// between
|
|
2264
|
-
oFilter = new ODataFilter("CategoryName", [{
|
|
2265
|
-
operator: FilterOperator.BT,
|
|
2266
|
-
value1: "Beverages",
|
|
2267
|
-
value2: "D"
|
|
2268
|
-
}]);
|
|
2269
|
-
oBinding.filter(oFilter.convert());
|
|
2270
|
-
oBinding.attachChange(handler2);
|
|
2271
|
-
};
|
|
2272
|
-
var handler2 = function(oEvent){
|
|
2273
|
-
// contexts should be now loaded
|
|
2274
|
-
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
2275
|
-
assert.equal(aFilteredContexts.length, 3, "between filtered content length");
|
|
2276
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "between filtered content");
|
|
2277
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[1]), "Condiments", "between filtered content");
|
|
2278
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[2]), "Confections", "between filtered content");
|
|
2279
|
-
|
|
2280
|
-
oBinding.detachChange(handler2);
|
|
2281
|
-
// startsWith, endsWith
|
|
2282
|
-
oFilter = new ODataFilter("CategoryName", [{operator: FilterOperator.StartsWith, value1: "C"}]);
|
|
2283
|
-
oFilter2 = new ODataFilter("Description", [{operator: FilterOperator.EndsWith, value1: "ngs"}]);
|
|
2284
|
-
oBinding.filter([oFilter.convert(), oFilter2.convert()]);
|
|
2285
|
-
oBinding.attachChange(handler3);
|
|
2286
|
-
};
|
|
2287
|
-
var handler3 = function(oEvent){
|
|
2288
|
-
// contexts should be now loaded
|
|
2289
|
-
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
2290
|
-
assert.equal(aFilteredContexts.length, 1, "startsWith, endsWith filtered content length");
|
|
2291
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Condiments", "startsWith, endsWith filtered content");
|
|
2292
|
-
|
|
2293
|
-
oBinding.detachChange(handler3);
|
|
2294
|
-
oFilter = new ODataFilter("CategoryName", [{
|
|
2295
|
-
operator:FilterOperator.LE,
|
|
2296
|
-
value1: "Z"
|
|
2297
|
-
}, {
|
|
2298
|
-
operator:FilterOperator.GE,
|
|
2299
|
-
value1: "A"
|
|
2300
|
-
}, {
|
|
2301
|
-
operator:FilterOperator.NE,
|
|
2302
|
-
value1: "Beverages"
|
|
2303
|
-
}]);
|
|
2304
|
-
oBinding.filter(oFilter.convert());
|
|
2305
|
-
oBinding.attachChange(handler4);
|
|
2306
|
-
};
|
|
2307
|
-
var handler4 = function(oEvent){
|
|
2308
|
-
// contexts should be now loaded
|
|
2309
|
-
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
2310
|
-
assert.equal(aFilteredContexts.length, 7, "ODataFilter, ANDed");
|
|
2311
|
-
assert.ok(oModel.getProperty("CategoryName",aFilteredContexts[0]) != "Beverages" && oModel.getProperty("CategoryName",aFilteredContexts[0]) == "Condiments", "ODataFilter, ANDed");
|
|
2312
|
-
|
|
2313
|
-
oBinding.detachChange(handler4);
|
|
2314
|
-
oFilter = new ODataFilter("CategoryName", [{
|
|
2315
|
-
operator:FilterOperator.EQ,
|
|
2316
|
-
value1: "Condiments"
|
|
2317
|
-
}, {
|
|
2318
|
-
operator:FilterOperator.EQ,
|
|
2319
|
-
value1: "Beverages"
|
|
2320
|
-
}], false);
|
|
2321
|
-
oBinding.filter(oFilter.convert());
|
|
2322
|
-
oBinding.attachChange(handler5);
|
|
2323
|
-
};
|
|
2324
|
-
var handler5 = function(oEvent){
|
|
2325
|
-
// contexts should be now loaded
|
|
2326
|
-
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
2327
|
-
assert.equal(aFilteredContexts.length, 2, "ODataFilter, ORed");
|
|
2328
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "ODataFilter, ORed");
|
|
2329
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[1]), "Condiments", "ODataFilter, ORed");
|
|
2330
|
-
|
|
2331
|
-
oBinding.detachChange(handler5);
|
|
2332
|
-
oFilter = new ODataFilter("CategoryName", [{
|
|
2333
|
-
operator:FilterOperator.EQ, value1: "Condiments"
|
|
2334
|
-
}, {
|
|
2335
|
-
operator:FilterOperator.EQ, value1: "Beverages"
|
|
2336
|
-
}], false);
|
|
2337
|
-
oFilter2 = new ODataFilter("Description", [{
|
|
2338
|
-
operator: FilterOperator.EndsWith,
|
|
2339
|
-
value1: "ings"
|
|
2340
|
-
}]);
|
|
2341
|
-
oBinding.filter([oFilter.convert(), oFilter2.convert()]);
|
|
2342
|
-
oBinding.attachChange(handler6);
|
|
2343
|
-
};
|
|
2344
|
-
var handler6 = function(oEvent){
|
|
2345
|
-
// contexts should be now loaded
|
|
2346
|
-
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
2347
|
-
assert.equal(aFilteredContexts.length, 1, "ODataFilter + normal Filter");
|
|
2348
|
-
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Condiments", "ODataFilter + normal Filter");
|
|
2349
|
-
|
|
2350
|
-
oBinding.detachChange(handler6);
|
|
2351
|
-
done();
|
|
2352
|
-
};
|
|
2353
|
-
var oBinding = oModel.bindList("/Categories");
|
|
2354
|
-
//check EQ
|
|
2355
|
-
var oFilter = new ODataFilter("CategoryName", [{
|
|
2356
|
-
operator: FilterOperator.EQ,
|
|
2357
|
-
value1: "Beverages"
|
|
2358
|
-
}]);
|
|
2359
|
-
var fnFilter = function() {
|
|
2360
|
-
oBinding.detachRefresh(fnFilter);
|
|
2361
|
-
oBinding.attachRefresh(function() {oBinding.getContexts();});
|
|
2362
|
-
oBinding.filter(oFilter.convert());
|
|
2363
|
-
};
|
|
2364
|
-
oBinding.attachChange(handler);
|
|
2365
|
-
oBinding.attachRefresh(fnFilter);
|
|
2366
|
-
});
|
|
2367
|
-
|
|
2368
2169
|
QUnit.test("Error Case: Service returns partial data, Binding should keep data, length final", function(assert){
|
|
2369
2170
|
var done = assert.async();
|
|
2370
2171
|
var handler = function() {
|
|
@@ -3509,5 +3310,4 @@ sap.ui.define([
|
|
|
3509
3310
|
oBinding.initialize();
|
|
3510
3311
|
});
|
|
3511
3312
|
});
|
|
3512
|
-
|
|
3513
3313
|
});
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
/*global QUnit*/
|
|
2
|
+
sap.ui.define([
|
|
3
|
+
"sap/ui/model/Filter",
|
|
4
|
+
"sap/ui/model/FilterOperator",
|
|
5
|
+
"sap/ui/model/odata/Filter",
|
|
6
|
+
"sap/ui/model/odata/OperationMode",
|
|
7
|
+
"sap/ui/model/odata/v2/ODataModel",
|
|
8
|
+
"test-resources/sap/ui/core/qunit/odata/data/ODataModelFakeService"
|
|
9
|
+
], function(Filter, FilterOperator, ODataFilter, OperationMode, ODataModel, fakeService) {
|
|
10
|
+
"use strict";
|
|
11
|
+
|
|
12
|
+
var oModel;
|
|
13
|
+
|
|
14
|
+
function initModel() {
|
|
15
|
+
var sURI = "http://services.odata.org/V3/Northwind/Northwind.svc/";
|
|
16
|
+
|
|
17
|
+
return new ODataModel("/proxy/http/" + sURI.replace("http://",""), {
|
|
18
|
+
json: false,
|
|
19
|
+
useBatch: true
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// Request security token to avoid later HEAD requests
|
|
24
|
+
initModel().refreshSecurityToken();
|
|
25
|
+
|
|
26
|
+
QUnit.module("sap.ui.model.odata.v2.ODataListBinding with sap.ui.model.odata.Filter", {
|
|
27
|
+
beforeEach : function() {
|
|
28
|
+
oModel = initModel();
|
|
29
|
+
},
|
|
30
|
+
afterEach : function() {
|
|
31
|
+
oModel.destroy();
|
|
32
|
+
oModel = undefined;
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
QUnit.test("ListBinding ODataFilter", function(assert){
|
|
37
|
+
var done = assert.async();
|
|
38
|
+
var oFilter, oFilter2, oBinding;
|
|
39
|
+
var handler = function(oEvent){
|
|
40
|
+
// contexts should be now loaded
|
|
41
|
+
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
42
|
+
assert.equal(aFilteredContexts.length, 1, "startsWith, endsWith filtered content length");
|
|
43
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "startsWith, endsWith filtered content");
|
|
44
|
+
|
|
45
|
+
oBinding.detachChange(handler);
|
|
46
|
+
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.LE, value1: "Z"}, {operator:FilterOperator.GE, value1: "A"}, {operator:FilterOperator.NE, value1: "Beverages"}]);
|
|
47
|
+
oBinding.filter([oFilter]);
|
|
48
|
+
oBinding.attachChange(handler1);
|
|
49
|
+
};
|
|
50
|
+
var handler1 = function(oEvent){
|
|
51
|
+
// contexts should be now loaded
|
|
52
|
+
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
53
|
+
assert.equal(aFilteredContexts.length, 7, "ODataFilter, ANDed");
|
|
54
|
+
assert.ok(oModel.getProperty("CategoryName",aFilteredContexts[0]) != "Beverages" && oModel.getProperty("CategoryName",aFilteredContexts[0]) == "Condiments", "ODataFilter, ANDed");
|
|
55
|
+
|
|
56
|
+
oBinding.detachChange(handler1);
|
|
57
|
+
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.EQ, value1: "Condiments"}, {operator:FilterOperator.EQ, value1: "Beverages"}], false);
|
|
58
|
+
oBinding.filter([oFilter]);
|
|
59
|
+
oBinding.attachChange(handler2);
|
|
60
|
+
};
|
|
61
|
+
var handler2 = function(oEvent){
|
|
62
|
+
// contexts should be now loaded
|
|
63
|
+
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
64
|
+
assert.equal(aFilteredContexts.length, 2, "ODataFilter, ORed");
|
|
65
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "ODataFilter, ORed");
|
|
66
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[1]), "Condiments", "ODataFilter, ORed");
|
|
67
|
+
|
|
68
|
+
oBinding.detachChange(handler2);
|
|
69
|
+
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.EQ, value1: "Condiments"}, {operator:FilterOperator.EQ, value1: "Beverages"}], false);
|
|
70
|
+
oFilter2 = new Filter("Description", FilterOperator.EndsWith, "ings");
|
|
71
|
+
oBinding.filter([oFilter, oFilter2]);
|
|
72
|
+
oBinding.attachChange(handler3);
|
|
73
|
+
};
|
|
74
|
+
var handler3 = function(oEvent){
|
|
75
|
+
// contexts should be now loaded
|
|
76
|
+
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
77
|
+
assert.equal(aFilteredContexts.length, 1, "ODataFilter + normal Filter");
|
|
78
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Condiments", "ODataFilter + normal Filter");
|
|
79
|
+
|
|
80
|
+
oBinding.detachChange(handler3);
|
|
81
|
+
done();
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
oBinding = oModel.bindList("/Categories");
|
|
85
|
+
//check EQ
|
|
86
|
+
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.EQ, value1: "Beverages"}]);
|
|
87
|
+
|
|
88
|
+
var fnFilter = function() {
|
|
89
|
+
oBinding.detachRefresh(fnFilter);
|
|
90
|
+
oBinding.attachRefresh(function() {oBinding.getContexts();});
|
|
91
|
+
oBinding.filter([oFilter]);
|
|
92
|
+
};
|
|
93
|
+
oBinding.attachChange(handler);
|
|
94
|
+
oBinding.attachRefresh(fnFilter);
|
|
95
|
+
});
|
|
96
|
+
|
|
97
|
+
QUnit.test("ListBinding clientside ODataFilter", function(assert){
|
|
98
|
+
var done = assert.async();
|
|
99
|
+
|
|
100
|
+
var oBinding = oModel.bindList("/Categories", null, null, null, {
|
|
101
|
+
operationMode: OperationMode.Client
|
|
102
|
+
});
|
|
103
|
+
|
|
104
|
+
var handler = function(oEvent) {
|
|
105
|
+
// contexts should be now loaded
|
|
106
|
+
var aFilteredContexts = oBinding.getContexts();
|
|
107
|
+
assert.equal(aFilteredContexts.length, 1, "EQ filtered content length");
|
|
108
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "EQ filtered content");
|
|
109
|
+
|
|
110
|
+
oBinding.detachChange(handler);
|
|
111
|
+
// ANDed filters
|
|
112
|
+
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.LE, value1: "Z"}, {operator:FilterOperator.GE, value1: "A"}, {operator:FilterOperator.NE, value1: "Beverages"}]);
|
|
113
|
+
oBinding.filter([oFilter]);
|
|
114
|
+
|
|
115
|
+
aFilteredContexts = oBinding.getContexts();
|
|
116
|
+
assert.equal(aFilteredContexts.length, 7, "ODataFilter, ANDed");
|
|
117
|
+
assert.ok(oModel.getProperty("CategoryName",aFilteredContexts[0]) != "Beverages" && oModel.getProperty("CategoryName",aFilteredContexts[0]) == "Condiments", "ODataFilter, ANDed");
|
|
118
|
+
|
|
119
|
+
// ORed filters
|
|
120
|
+
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.EQ, value1: "Condiments"}, {operator:FilterOperator.EQ, value1: "Beverages"}], false);
|
|
121
|
+
oBinding.filter([oFilter]);
|
|
122
|
+
|
|
123
|
+
aFilteredContexts = oBinding.getContexts();
|
|
124
|
+
assert.equal(aFilteredContexts.length, 2, "ODataFilter, ORed");
|
|
125
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "ODataFilter, ORed");
|
|
126
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[1]), "Condiments", "ODataFilter, ORed");
|
|
127
|
+
|
|
128
|
+
// ORed + ANDed filters
|
|
129
|
+
oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.EQ, value1: "Condiments"}, {operator:FilterOperator.EQ, value1: "Beverages"}], false);
|
|
130
|
+
var oFilter2 = new Filter("Description", FilterOperator.EndsWith, "ings");
|
|
131
|
+
oBinding.filter([oFilter, oFilter2]);
|
|
132
|
+
|
|
133
|
+
aFilteredContexts = oBinding.getContexts();
|
|
134
|
+
assert.equal(aFilteredContexts.length, 1, "ODataFilter + normal Filter");
|
|
135
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Condiments", "ODataFilter + normal Filter");
|
|
136
|
+
done();
|
|
137
|
+
};
|
|
138
|
+
//check EQ
|
|
139
|
+
var oFilter = new ODataFilter("CategoryName", [{operator:FilterOperator.EQ, value1: "Beverages"}]);
|
|
140
|
+
oBinding.filter([oFilter]);
|
|
141
|
+
|
|
142
|
+
oBinding.attachChange(handler);
|
|
143
|
+
oBinding.attachRefresh(function() {
|
|
144
|
+
oBinding.getContexts();
|
|
145
|
+
});
|
|
146
|
+
});
|
|
147
|
+
|
|
148
|
+
QUnit.test("ListBinding filter (ODataFilter.convert)", function(assert){
|
|
149
|
+
var done = assert.async();
|
|
150
|
+
var oFilter, oFilter2;
|
|
151
|
+
var handler = function(oEvent){
|
|
152
|
+
// contexts should be now loaded
|
|
153
|
+
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
154
|
+
assert.equal(aFilteredContexts.length, 1, "EQ filtered content length");
|
|
155
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "EQ filtered content");
|
|
156
|
+
|
|
157
|
+
oBinding.detachChange(handler);
|
|
158
|
+
// NE, contains
|
|
159
|
+
oFilter = new ODataFilter("CategoryName", [{
|
|
160
|
+
operator: FilterOperator.EQ,
|
|
161
|
+
value1: "Condiments"
|
|
162
|
+
}, {
|
|
163
|
+
operator: FilterOperator.Contains,
|
|
164
|
+
value1: "ons"
|
|
165
|
+
}], false);
|
|
166
|
+
oBinding.filter(oFilter.convert());
|
|
167
|
+
oBinding.attachChange(handler1);
|
|
168
|
+
};
|
|
169
|
+
var handler1 = function(oEvent){
|
|
170
|
+
// contexts should be now loaded
|
|
171
|
+
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
172
|
+
assert.equal(aFilteredContexts.length, 2, "NE, contains, filtered content length");
|
|
173
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Condiments", "EQ, Contains, filtered content");
|
|
174
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[1]), "Confections", "EQ, Contains, filtered content");
|
|
175
|
+
|
|
176
|
+
oBinding.detachChange(handler1);
|
|
177
|
+
// between
|
|
178
|
+
oFilter = new ODataFilter("CategoryName", [{
|
|
179
|
+
operator: FilterOperator.BT,
|
|
180
|
+
value1: "Beverages",
|
|
181
|
+
value2: "D"
|
|
182
|
+
}]);
|
|
183
|
+
oBinding.filter(oFilter.convert());
|
|
184
|
+
oBinding.attachChange(handler2);
|
|
185
|
+
};
|
|
186
|
+
var handler2 = function(oEvent){
|
|
187
|
+
// contexts should be now loaded
|
|
188
|
+
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
189
|
+
assert.equal(aFilteredContexts.length, 3, "between filtered content length");
|
|
190
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "between filtered content");
|
|
191
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[1]), "Condiments", "between filtered content");
|
|
192
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[2]), "Confections", "between filtered content");
|
|
193
|
+
|
|
194
|
+
oBinding.detachChange(handler2);
|
|
195
|
+
// startsWith, endsWith
|
|
196
|
+
oFilter = new ODataFilter("CategoryName", [{operator: FilterOperator.StartsWith, value1: "C"}]);
|
|
197
|
+
oFilter2 = new ODataFilter("Description", [{operator: FilterOperator.EndsWith, value1: "ngs"}]);
|
|
198
|
+
oBinding.filter([oFilter.convert(), oFilter2.convert()]);
|
|
199
|
+
oBinding.attachChange(handler3);
|
|
200
|
+
};
|
|
201
|
+
var handler3 = function(oEvent){
|
|
202
|
+
// contexts should be now loaded
|
|
203
|
+
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
204
|
+
assert.equal(aFilteredContexts.length, 1, "startsWith, endsWith filtered content length");
|
|
205
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Condiments", "startsWith, endsWith filtered content");
|
|
206
|
+
|
|
207
|
+
oBinding.detachChange(handler3);
|
|
208
|
+
oFilter = new ODataFilter("CategoryName", [{
|
|
209
|
+
operator:FilterOperator.LE,
|
|
210
|
+
value1: "Z"
|
|
211
|
+
}, {
|
|
212
|
+
operator:FilterOperator.GE,
|
|
213
|
+
value1: "A"
|
|
214
|
+
}, {
|
|
215
|
+
operator:FilterOperator.NE,
|
|
216
|
+
value1: "Beverages"
|
|
217
|
+
}]);
|
|
218
|
+
oBinding.filter(oFilter.convert());
|
|
219
|
+
oBinding.attachChange(handler4);
|
|
220
|
+
};
|
|
221
|
+
var handler4 = function(oEvent){
|
|
222
|
+
// contexts should be now loaded
|
|
223
|
+
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
224
|
+
assert.equal(aFilteredContexts.length, 7, "ODataFilter, ANDed");
|
|
225
|
+
assert.ok(oModel.getProperty("CategoryName",aFilteredContexts[0]) != "Beverages" && oModel.getProperty("CategoryName",aFilteredContexts[0]) == "Condiments", "ODataFilter, ANDed");
|
|
226
|
+
|
|
227
|
+
oBinding.detachChange(handler4);
|
|
228
|
+
oFilter = new ODataFilter("CategoryName", [{
|
|
229
|
+
operator:FilterOperator.EQ,
|
|
230
|
+
value1: "Condiments"
|
|
231
|
+
}, {
|
|
232
|
+
operator:FilterOperator.EQ,
|
|
233
|
+
value1: "Beverages"
|
|
234
|
+
}], false);
|
|
235
|
+
oBinding.filter(oFilter.convert());
|
|
236
|
+
oBinding.attachChange(handler5);
|
|
237
|
+
};
|
|
238
|
+
var handler5 = function(oEvent){
|
|
239
|
+
// contexts should be now loaded
|
|
240
|
+
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
241
|
+
assert.equal(aFilteredContexts.length, 2, "ODataFilter, ORed");
|
|
242
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Beverages", "ODataFilter, ORed");
|
|
243
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[1]), "Condiments", "ODataFilter, ORed");
|
|
244
|
+
|
|
245
|
+
oBinding.detachChange(handler5);
|
|
246
|
+
oFilter = new ODataFilter("CategoryName", [{
|
|
247
|
+
operator:FilterOperator.EQ, value1: "Condiments"
|
|
248
|
+
}, {
|
|
249
|
+
operator:FilterOperator.EQ, value1: "Beverages"
|
|
250
|
+
}], false);
|
|
251
|
+
oFilter2 = new ODataFilter("Description", [{
|
|
252
|
+
operator: FilterOperator.EndsWith,
|
|
253
|
+
value1: "ings"
|
|
254
|
+
}]);
|
|
255
|
+
oBinding.filter([oFilter.convert(), oFilter2.convert()]);
|
|
256
|
+
oBinding.attachChange(handler6);
|
|
257
|
+
};
|
|
258
|
+
var handler6 = function(oEvent){
|
|
259
|
+
// contexts should be now loaded
|
|
260
|
+
var aFilteredContexts = oEvent.oSource.getContexts();
|
|
261
|
+
assert.equal(aFilteredContexts.length, 1, "ODataFilter + normal Filter");
|
|
262
|
+
assert.equal(oModel.getProperty("CategoryName",aFilteredContexts[0]), "Condiments", "ODataFilter + normal Filter");
|
|
263
|
+
|
|
264
|
+
oBinding.detachChange(handler6);
|
|
265
|
+
done();
|
|
266
|
+
};
|
|
267
|
+
var oBinding = oModel.bindList("/Categories");
|
|
268
|
+
//check EQ
|
|
269
|
+
var oFilter = new ODataFilter("CategoryName", [{
|
|
270
|
+
operator: FilterOperator.EQ,
|
|
271
|
+
value1: "Beverages"
|
|
272
|
+
}]);
|
|
273
|
+
var fnFilter = function() {
|
|
274
|
+
oBinding.detachRefresh(fnFilter);
|
|
275
|
+
oBinding.attachRefresh(function() {oBinding.getContexts();});
|
|
276
|
+
oBinding.filter(oFilter.convert());
|
|
277
|
+
};
|
|
278
|
+
oBinding.attachChange(handler);
|
|
279
|
+
oBinding.attachRefresh(fnFilter);
|
|
280
|
+
});
|
|
281
|
+
});
|
|
@@ -14,6 +14,7 @@ sap.ui.define([
|
|
|
14
14
|
"sap/m/List",
|
|
15
15
|
"sap/m/Panel",
|
|
16
16
|
"sap/m/Text",
|
|
17
|
+
"sap/ui/core/Messaging",
|
|
17
18
|
"sap/ui/core/message/Message",
|
|
18
19
|
"sap/ui/core/mvc/XMLView",
|
|
19
20
|
"sap/ui/model/ChangeReason",
|
|
@@ -31,7 +32,7 @@ sap.ui.define([
|
|
|
31
32
|
"sap/ui/thirdparty/jquery",
|
|
32
33
|
"test-resources/sap/ui/core/qunit/odata/data/ODataModelFakeService"
|
|
33
34
|
], function(Log, encodeURL, each, isEmptyObject, isPlainObject, Button, ListItem, HBox, Input,
|
|
34
|
-
Label, List, Panel, Text, Message, XMLView, ChangeReason, ClientModel, Context, Filter,
|
|
35
|
+
Label, List, Panel, Text, Messaging, Message, XMLView, ChangeReason, ClientModel, Context, Filter,
|
|
35
36
|
FilterOperator, Sorter, JSONModel, MessageScope, ODataUtils, ODataModel, Column, Table,
|
|
36
37
|
jQuery, fakeService) {
|
|
37
38
|
"use strict";
|
|
@@ -290,15 +291,15 @@ sap.ui.define([
|
|
|
290
291
|
assert.strictEqual(oModel.getMessageScope(), MessageScope.RequestedObjects,
|
|
291
292
|
"Initial message scope is: RequestedObjects");
|
|
292
293
|
|
|
293
|
-
|
|
294
|
+
Messaging.registerMessageProcessor(oModel);
|
|
294
295
|
oModel.metadataLoaded().then(function() {
|
|
295
296
|
var oContext = oModel.createEntry("/Products");
|
|
296
297
|
oMessage.setTargets([oContext.getPath()]);
|
|
297
298
|
oMessage2.setTargets([oContext.getPath()]);
|
|
298
|
-
|
|
299
|
+
Messaging.addMessages([oMessage, oMessage2]);
|
|
299
300
|
assert.equal(oModel.getMessagesByEntity(oContext.getPath()).length, 2, "all messages returned");
|
|
300
301
|
assert.equal(oModel.getMessagesByEntity(oContext.getPath(), true).length, 1, "messages that are not persitent returned");
|
|
301
|
-
|
|
302
|
+
Messaging.unregisterMessageProcessor(oModel);
|
|
302
303
|
done();
|
|
303
304
|
});
|
|
304
305
|
});
|
|
@@ -3445,7 +3446,7 @@ sap.ui.define([
|
|
|
3445
3446
|
}, true);
|
|
3446
3447
|
|
|
3447
3448
|
var oBinding = oModel.bindList("/Categories");
|
|
3448
|
-
oModel.
|
|
3449
|
+
oModel.setDeferredGroups(["myId"]);
|
|
3449
3450
|
var handler = function() { // delay the following test
|
|
3450
3451
|
// detach so that checkUpdate called from v2.Context#delete does not again call this handler
|
|
3451
3452
|
oBinding.detachChange(handler);
|
|
@@ -3621,7 +3622,7 @@ sap.ui.define([
|
|
|
3621
3622
|
window.fakeResponded = function() {
|
|
3622
3623
|
iParallelCount--;
|
|
3623
3624
|
};
|
|
3624
|
-
oModel.
|
|
3625
|
+
oModel.setDeferredGroups(["1", "2"]);
|
|
3625
3626
|
oModel.read("/Categories(1)", {groupId: "1"});
|
|
3626
3627
|
oModel.read("/Categories(9999)", {groupId: "1"});
|
|
3627
3628
|
oModel.read("/Categories(3)", {groupId: "2"});
|
|
@@ -4205,7 +4206,7 @@ sap.ui.define([
|
|
|
4205
4206
|
function fnSuccess() { oInfo.success++; }
|
|
4206
4207
|
function fnError() { oInfo.error++; }
|
|
4207
4208
|
oModel.attachMetadataLoaded(function() {
|
|
4208
|
-
oModel.
|
|
4209
|
+
oModel.setDeferredGroups(["myId"]);
|
|
4209
4210
|
oRequest1 = oModel.read("/Categories(1)", {success: fnSuccess, error: fnError, batchGroupId : "myId"});
|
|
4210
4211
|
oRequest2 = oModel.read("/Categories(3)", {success: fnSuccess, error: fnError, batchGroupId : "myId"});
|
|
4211
4212
|
oModel.read("/Categories(4)", {success: fnSuccess, error: fnError, batchGroupId : "myId"});
|
|
@@ -4252,7 +4253,7 @@ sap.ui.define([
|
|
|
4252
4253
|
function fnSuccess() { oInfo.success++; }
|
|
4253
4254
|
function fnError() { oInfo.error++; }
|
|
4254
4255
|
oModel.attachMetadataLoaded(function() {
|
|
4255
|
-
oModel.
|
|
4256
|
+
oModel.setDeferredGroups(["myId"]);
|
|
4256
4257
|
oRequest1 = oModel.read("/Categories(1)", {success: fnSuccess, error: fnError, batchGroupId : "myId"});
|
|
4257
4258
|
oRequest2 = oModel.read("/Categories(3)", {success: fnSuccess, error: fnError, batchGroupId : "myId"});
|
|
4258
4259
|
oModel.read("/Categories(4)", {success: fnSuccess, error: fnError, batchGroupId : "myId"});
|
|
@@ -2407,6 +2407,7 @@ sap.ui.define([
|
|
|
2407
2407
|
}
|
|
2408
2408
|
});
|
|
2409
2409
|
|
|
2410
|
+
/** @deprecated As of version 1.102.0, reason OperationMode.Auto */
|
|
2410
2411
|
QUnit.test("OperationMode.Auto: Backend has fewer entries than the threshold.", function (assert) {
|
|
2411
2412
|
var done = assert.async();
|
|
2412
2413
|
createTreeBinding("/GLAccountHierarchyInChartOfAccountsSet(P_MANDT='902',P_VERSN='INT',P_KTOPL='INT')/Result", [], null, {
|