@openui5/sap.ui.core 1.116.0 → 1.117.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/.eslintrc.json +1 -22
- 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 +4 -4
- package/src/sap/base/Eventing.js +5 -6
- package/src/sap/base/config/MemoryConfigurationProvider.js +10 -1
- package/src/sap/base/config.js +3 -2
- package/src/sap/base/i18n/Formatting.js +30 -32
- package/src/sap/base/i18n/LanguageTag.js +2 -2
- package/src/sap/base/i18n/Localization.js +19 -20
- package/src/sap/base/i18n/date/CalendarType.js +1 -1
- package/src/sap/base/i18n/date/CalendarWeekNumbering.js +1 -1
- package/src/sap/base/i18n/date/TimezoneUtils.js +1 -1
- package/src/sap/base/util/JSTokenizer.js +1 -1
- package/src/sap/base/util/fetch.js +4 -4
- package/src/sap/base/util/mixedFetch.js +2 -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/base/util/syncFetch.js +2 -2
- package/src/sap/ui/Device.js +3 -3
- package/src/sap/ui/Global.js +4 -4
- package/src/sap/ui/base/Event.js +6 -4
- 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 +2 -4
- package/src/sap/ui/base/ManagedObjectMetadata.js +4 -6
- 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 +2 -2
- package/src/sap/ui/core/AnimationMode.js +1 -1
- package/src/sap/ui/core/BusyIndicator.js +1 -1
- package/src/sap/ui/core/Component.js +1 -1
- package/src/sap/ui/core/ComponentContainer.js +1 -1
- package/src/sap/ui/core/ComponentMetadata.js +1 -1
- package/src/sap/ui/core/ComponentSupport.js +1 -1
- package/src/sap/ui/core/ConfigTest.js +17 -0
- package/src/sap/ui/core/Configuration.js +2 -14
- package/src/sap/ui/core/Control.js +4 -1
- package/src/sap/ui/core/ControlBehavior.js +2 -2
- package/src/sap/ui/core/Core.js +3 -1
- 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 +2 -4
- package/src/sap/ui/core/EnabledPropagator.js +1 -1
- package/src/sap/ui/core/EventBus.js +1 -1
- package/src/sap/ui/core/Fragment.js +1 -1
- package/src/sap/ui/core/HTML.js +1 -1
- package/src/sap/ui/core/History.js +1 -1
- package/src/sap/ui/core/Icon.js +1 -1
- package/src/sap/ui/core/IconPool.js +1 -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 +17 -16
- 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 +5 -2
- package/src/sap/ui/core/LocaleData.js +12 -4
- package/src/sap/ui/core/Manifest.js +5 -5
- package/src/sap/ui/core/Message.js +1 -1
- package/src/sap/ui/core/Popup.js +37 -50
- 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 +1 -1
- package/src/sap/ui/core/ResizeHandler.js +1 -1
- package/src/sap/ui/core/ScrollBar.js +1 -1
- package/src/sap/ui/core/SeparatorItem.js +1 -1
- package/src/sap/ui/core/Shortcut.js +11 -9
- package/src/sap/ui/core/StaticArea.js +1 -1
- package/src/sap/ui/core/Theming.js +16 -9
- package/src/sap/ui/core/Title.js +1 -1
- package/src/sap/ui/core/TooltipBase.js +1 -1
- package/src/sap/ui/core/UIArea.js +1 -1
- package/src/sap/ui/core/UIComponent.js +1 -1
- package/src/sap/ui/core/UIComponentMetadata.js +1 -1
- package/src/sap/ui/core/ValueStateSupport.js +1 -1
- package/src/sap/ui/core/VariantLayoutData.js +1 -1
- package/src/sap/ui/core/XMLComposite.js +1 -1
- package/src/sap/ui/core/XMLCompositeMetadata.js +1 -1
- package/src/sap/ui/core/XMLTemplateProcessor.js +27 -5
- package/src/sap/ui/core/_IconRegistry.js +82 -11
- package/src/sap/ui/core/boot/_bootConfig.js +137 -0
- package/src/sap/ui/core/boot/_runBoot.js +16 -0
- package/src/sap/ui/core/boot/initDOM.js +96 -0
- package/src/sap/ui/core/boot/loadCalendar.js +50 -0
- package/src/sap/ui/core/boot/loadManifest.js +55 -0
- package/src/sap/ui/core/boot/loadModules.js +80 -0
- package/src/sap/ui/core/boot/manifest.json +11 -0
- package/src/sap/ui/core/boot/onInit.js +44 -0
- package/src/sap/ui/core/boot.js +107 -0
- package/src/sap/ui/core/date/UI5Date.js +9 -3
- 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 +13 -12
- 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 +32 -6
- 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/MessageMixin.js +6 -5
- 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_ar.properties +57 -55
- package/src/sap/ui/core/messagebundle_bg.properties +57 -55
- package/src/sap/ui/core/messagebundle_ca.properties +30 -28
- package/src/sap/ui/core/messagebundle_cs.properties +43 -41
- package/src/sap/ui/core/messagebundle_cy.properties +58 -56
- package/src/sap/ui/core/messagebundle_da.properties +56 -54
- package/src/sap/ui/core/messagebundle_de.properties +58 -56
- package/src/sap/ui/core/messagebundle_el.properties +47 -45
- package/src/sap/ui/core/messagebundle_en.properties +58 -56
- package/src/sap/ui/core/messagebundle_en_GB.properties +58 -56
- package/src/sap/ui/core/messagebundle_en_US_sappsd.properties +2 -0
- package/src/sap/ui/core/messagebundle_en_US_saprigi.properties +2 -0
- package/src/sap/ui/core/messagebundle_en_US_saptrc.properties +3 -0
- package/src/sap/ui/core/messagebundle_es.properties +47 -45
- package/src/sap/ui/core/messagebundle_es_MX.properties +57 -55
- package/src/sap/ui/core/messagebundle_et.properties +54 -52
- package/src/sap/ui/core/messagebundle_fi.properties +51 -49
- package/src/sap/ui/core/messagebundle_fr.properties +36 -34
- package/src/sap/ui/core/messagebundle_fr_CA.properties +21 -19
- package/src/sap/ui/core/messagebundle_hi.properties +42 -40
- package/src/sap/ui/core/messagebundle_hr.properties +57 -55
- package/src/sap/ui/core/messagebundle_hu.properties +58 -56
- package/src/sap/ui/core/messagebundle_id.properties +58 -56
- package/src/sap/ui/core/messagebundle_it.properties +59 -57
- package/src/sap/ui/core/messagebundle_iw.properties +58 -56
- package/src/sap/ui/core/messagebundle_ja.properties +50 -48
- package/src/sap/ui/core/messagebundle_kk.properties +43 -41
- package/src/sap/ui/core/messagebundle_ko.properties +19 -17
- package/src/sap/ui/core/messagebundle_lt.properties +58 -56
- package/src/sap/ui/core/messagebundle_lv.properties +58 -56
- package/src/sap/ui/core/messagebundle_ms.properties +58 -56
- package/src/sap/ui/core/messagebundle_nl.properties +57 -55
- package/src/sap/ui/core/messagebundle_no.properties +55 -53
- package/src/sap/ui/core/messagebundle_pl.properties +55 -53
- package/src/sap/ui/core/messagebundle_pt.properties +57 -55
- package/src/sap/ui/core/messagebundle_pt_PT.properties +57 -55
- package/src/sap/ui/core/messagebundle_ro.properties +58 -56
- package/src/sap/ui/core/messagebundle_ru.properties +57 -55
- package/src/sap/ui/core/messagebundle_sh.properties +58 -56
- package/src/sap/ui/core/messagebundle_sk.properties +57 -55
- package/src/sap/ui/core/messagebundle_sl.properties +58 -56
- package/src/sap/ui/core/messagebundle_sv.properties +54 -52
- package/src/sap/ui/core/messagebundle_th.properties +17 -15
- package/src/sap/ui/core/messagebundle_tr.properties +58 -56
- package/src/sap/ui/core/messagebundle_uk.properties +58 -56
- package/src/sap/ui/core/messagebundle_vi.properties +58 -56
- package/src/sap/ui/core/messagebundle_zh_CN.properties +58 -56
- package/src/sap/ui/core/messagebundle_zh_TW.properties +58 -56
- 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 +14 -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/rules/Misc.support.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 +7 -4
- package/src/sap/ui/core/support/plugins/ControlTree.js +1 -1
- package/src/sap/ui/core/support/plugins/Interaction.js +1 -1
- package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
- package/src/sap/ui/core/support/plugins/Performance.js +1 -1
- package/src/sap/ui/core/support/plugins/Selector.js +1 -1
- package/src/sap/ui/core/support/plugins/TechInfo.js +1 -1
- package/src/sap/ui/core/support/plugins/Trace.js +1 -1
- package/src/sap/ui/core/support/plugins/ViewInfo.js +1 -1
- package/src/sap/ui/core/themes/base/Icon.less +2 -2
- package/src/sap/ui/core/theming/Parameters.js +0 -5
- package/src/sap/ui/core/theming/ThemeManager.js +3 -4
- 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 +4 -5
- package/src/sap/ui/core/util/PasteHelper.js +1 -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/model/ClientModel.js +1 -1
- package/src/sap/ui/model/CompositeDataState.js +1 -1
- package/src/sap/ui/model/CompositeType.js +1 -1
- package/src/sap/ui/model/DataState.js +1 -1
- package/src/sap/ui/model/MetaModel.js +1 -1
- package/src/sap/ui/model/Model.js +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/analytics/AnalyticalBinding.js +166 -79
- package/src/sap/ui/model/analytics/AnalyticalVersionInfo.js +4 -3
- package/src/sap/ui/model/analytics/BatchResponseCollector.js +2 -2
- package/src/sap/ui/model/analytics/ODataModelAdapter.js +14 -27
- package/src/sap/ui/model/analytics/odata4analytics.js +6 -12
- package/src/sap/ui/model/base/ManagedObjectModel.js +2 -1
- package/src/sap/ui/model/json/JSONModel.js +6 -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 +191 -5
- package/src/sap/ui/model/odata/ODataMetadata.js +38 -4
- package/src/sap/ui/model/odata/ODataModel.js +1 -1
- package/src/sap/ui/model/odata/type/Boolean.js +1 -1
- package/src/sap/ui/model/odata/type/Byte.js +1 -1
- package/src/sap/ui/model/odata/type/Currency.js +1 -1
- package/src/sap/ui/model/odata/type/Date.js +1 -1
- package/src/sap/ui/model/odata/type/DateTime.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeBase.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeOffset.js +1 -1
- package/src/sap/ui/model/odata/type/DateTimeWithTimezone.js +1 -1
- package/src/sap/ui/model/odata/type/Decimal.js +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 +1 -1
- package/src/sap/ui/model/odata/type/Unit.js +1 -1
- package/src/sap/ui/model/odata/v2/Context.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataModel.js +2 -2
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +1 -1
- package/src/sap/ui/model/odata/v4/AnnotationHelper.js +4 -4
- package/src/sap/ui/model/odata/v4/Context.js +33 -30
- package/src/sap/ui/model/odata/v4/ODataBinding.js +18 -14
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +12 -12
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +110 -43
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +20 -28
- package/src/sap/ui/model/odata/v4/ODataModel.js +40 -31
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +8 -6
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +14 -14
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +93 -9
- package/src/sap/ui/model/odata/v4/lib/_AggregationHelper.js +25 -27
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +58 -195
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +157 -0
- package/src/sap/ui/model/odata/v4/lib/_MetadataRequestor.js +14 -5
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +27 -15
- package/src/sap/ui/model/resource/ResourceModel.js +1 -1
- package/src/sap/ui/model/type/Boolean.js +1 -1
- package/src/sap/ui/model/type/Currency.js +1 -1
- package/src/sap/ui/model/type/Date.js +1 -1
- package/src/sap/ui/model/type/DateInterval.js +1 -1
- package/src/sap/ui/model/type/DateTime.js +1 -1
- package/src/sap/ui/model/type/DateTimeInterval.js +1 -1
- package/src/sap/ui/model/type/FileSize.js +1 -1
- package/src/sap/ui/model/type/Float.js +1 -1
- package/src/sap/ui/model/type/Integer.js +1 -1
- package/src/sap/ui/model/type/String.js +1 -1
- package/src/sap/ui/model/type/Time.js +1 -1
- package/src/sap/ui/model/type/TimeInterval.js +1 -1
- package/src/sap/ui/model/type/Unit.js +1 -1
- package/src/sap/ui/model/xml/XMLModel.js +1 -1
- package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
- package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +1 -1
- package/src/sap/ui/test/TestUtils.js +1 -1
- package/src/sap/ui/test/generic/TestBase.js +1 -1
- package/src/sap/ui/test/generic/_EnforceSemanticRendering.js +1 -3
- package/src/sap/ui/test/matchers/_Visitor.js +6 -1
- package/src/sap/ui/test/starter/_setupAndStart.js +2 -5
- package/src/sap/ui/thirdparty/qunit-2.js +9 -3
- package/src/sap/ui/util/Mobile.js +10 -6
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/sap-ui-boot.js +23 -6
- package/src/ui5-boot.js +50 -0
- package/src/ui5loader-autoconfig.js +147 -75
- package/src/ui5loader.js +320 -360
- package/test/sap/ui/core/Device.js +1 -1
- package/test/sap/ui/core/demokit/sample/OpaAction/applicationUnderTest/view/Main.view.xml +1 -0
- package/test/sap/ui/core/demokit/sample/ViewTemplate/types/Template.controller.js +2 -2
- package/test/sap/ui/core/demokit/sample/odata/v2/AutoExpand/AutoExpand.view.xml +24 -5
- package/test/sap/ui/core/demokit/sample/odata/v4/Ancestry/Main.view.xml +24 -6
- package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/DataAggregation.view.xml +20 -5
- package/test/sap/ui/core/demokit/sample/odata/v4/DataAggregation/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/DeepCreate/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/Draft/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/FieldGroups/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/FlatDataAggregation/FlatDataAggregation.view.xml +4 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/FlexibleColumnLayout/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/GridTable/GridTable.view.xml +12 -3
- package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Main.controller.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Opa.OptimisticBatch.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/LateProperties/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/ListBinding/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/ListBindingTemplate/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/MultipleInlineCreationRowsGrid/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/Products/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/RecursiveHierarchy.view.xml +26 -8
- package/test/sap/ui/core/demokit/sample/odata/v4/RecursiveHierarchy/data/metadata.xml +4 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V2/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrderTP100_V4/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/pages/Main.js +18 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrders/tests/Create.js +10 -6
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersRTATest/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersRTATest/manifest.json +18 -0
- package/test/sap/ui/core/demokit/sample/odata/v4/SalesOrdersTemplate/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/ServerDrivenPaging/pages/Main.js +4 -1
- package/test/sap/ui/core/demokit/sample/odata/v4/Sticky/Opa.qunit.js +2 -1
- package/test/sap/ui/core/demokit/tutorial/odatav4/06/webapp/controller/App.controller.js +1 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/06/webapp/localService/mockserver.js +1 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/07/webapp/controller/App.controller.js +1 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/07/webapp/localService/mockserver.js +1 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/controller/App.controller.js +1 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/08/webapp/localService/mockserver.js +1 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/09/webapp/controller/App.controller.js +1 -6
- package/test/sap/ui/core/demokit/tutorial/odatav4/09/webapp/localService/mockserver.js +1 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/10/webapp/controller/App.controller.js +3 -8
- package/test/sap/ui/core/demokit/tutorial/odatav4/10/webapp/localService/mockserver.js +1 -0
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/controller/App.controller.js +3 -8
- package/test/sap/ui/core/demokit/tutorial/odatav4/11/webapp/localService/mockserver.js +1 -0
- package/test/sap/ui/core/qunit/IconPool.qunit.js +53 -4
- package/test/sap/ui/core/qunit/ManagedObjectModel.qunit.js +43 -5
- package/test/sap/ui/core/qunit/Theming.qunit.js +19 -1
- package/test/sap/ui/core/qunit/analytics/AnalyticalBinding.qunit.js +510 -185
- package/test/sap/ui/core/qunit/analytics/ODataModelAdapter.qunit.js +80 -10
- package/test/sap/ui/core/qunit/analytics/odata4analytics.qunit.js +20 -29
- package/test/sap/ui/core/qunit/base/Config_cascade.qunit.js +18 -1
- package/test/sap/ui/core/qunit/base/i18n/Formatting.qunit.js +15 -13
- package/test/sap/ui/core/qunit/base/i18n/Localization.qunit.js +35 -12
- package/test/sap/ui/core/qunit/bootstrap/Configuration.main.qunit.js +11 -0
- package/test/sap/ui/core/qunit/bootstrap/Configuration.qunit.html +4 -3
- package/test/sap/ui/core/qunit/bootstrap/Configuration.qunit.js +71 -35
- package/test/sap/ui/core/qunit/bootstrap/_checkCoreAndLibraryBooted.qunit.js +1 -1
- package/test/sap/ui/core/qunit/component/Models.qunit.js +5 -2
- package/test/sap/ui/core/qunit/generic/EnforceSemanticRendering.qunit.js +2 -2
- package/test/sap/ui/core/qunit/generic/SettersContextReturn.qunit.js +2 -2
- package/test/sap/ui/core/qunit/generic/legacy/SettersContextReturn.qunit.js +2 -2
- package/test/sap/ui/core/qunit/i18n/LocaleData.qunit.js +48 -13
- package/test/sap/ui/core/qunit/i18n/UI5Date.qunit.js +16 -4
- package/test/sap/ui/core/qunit/i18n/UniversalDate.qunit.js +73 -103
- package/test/sap/ui/core/qunit/i18n/UniversalDateUtils.qunit.js +34 -39
- package/test/sap/ui/core/qunit/internal/BeforePush.ODataV4.js +28 -0
- package/test/sap/ui/core/qunit/internal/BeforePush.html +1 -0
- package/test/sap/ui/core/qunit/internal/BeforePush.js +15 -0
- package/test/sap/ui/core/qunit/internal/performance/ExpressionParser.performance.qunit.js +1 -0
- package/test/sap/ui/core/qunit/loader/asyncMode.qunit.js +2 -2
- package/test/sap/ui/core/qunit/loader/asyncMode_unavoidablySync.qunit.js +1 -1
- package/test/sap/ui/core/qunit/loader/testsuite.loader.qunit.js +0 -3
- package/test/sap/ui/core/qunit/model/FAR_CUSTOMER_LINE_ITEMS.metadata.xml +2 -0
- package/test/sap/ui/core/qunit/mvc/XMLTemplateProcessorRequireXML.qunit.js +51 -0
- package/test/sap/ui/core/qunit/mvc/testdata/Async.view.xml +1 -1
- package/test/sap/ui/core/qunit/mvc/testdata/AsyncTypedView.js +5 -1
- package/test/sap/ui/core/qunit/odata/ODataMetadataNoFakeService.qunit.js +68 -4
- package/test/sap/ui/core/qunit/odata/v2/ODataModel.integration.qunit.js +232 -37
- package/test/sap/ui/core/qunit/odata/v2/V2ODataModel.qunit.js +1 -1
- package/test/sap/ui/core/qunit/odata/v4/Context.qunit.js +10 -5
- package/test/sap/ui/core/qunit/odata/v4/ODataBinding.qunit.js +33 -1
- package/test/sap/ui/core/qunit/odata/v4/ODataContextBinding.qunit.js +5 -3
- package/test/sap/ui/core/qunit/odata/v4/ODataListBinding.qunit.js +186 -65
- package/test/sap/ui/core/qunit/odata/v4/ODataMetaModel.qunit.js +17 -66
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.integration.qunit.js +528 -60
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.qunit.js +48 -8
- package/test/sap/ui/core/qunit/odata/v4/ODataModel.realOData.qunit.js +0 -3
- package/test/sap/ui/core/qunit/odata/v4/data/metadata.json +2 -1
- package/test/sap/ui/core/qunit/odata/v4/data/metadata.xml +4 -0
- package/test/sap/ui/core/qunit/odata/v4/data/metadata_special_cases.xml +2 -0
- package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationCache.qunit.js +148 -1
- package/test/sap/ui/core/qunit/odata/v4/lib/_AggregationHelper.qunit.js +24 -11
- package/test/sap/ui/core/qunit/odata/v4/lib/_Cache.qunit.js +196 -404
- package/test/sap/ui/core/qunit/odata/v4/lib/_Helper.qunit.js +201 -2
- package/test/sap/ui/core/qunit/odata/v4/lib/_MetadataRequestor.qunit.js +7 -3
- package/test/sap/ui/core/qunit/odata/v4/lib/_Requestor.qunit.js +21 -4
- package/test/sap/ui/core/qunit/opa/matchers/LabelFor.qunit.js +4 -2
- package/test/sap/ui/core/qunit/opa/matchers/_Busy.qunit.js +129 -2
- package/test/sap/ui/core/qunit/opa/matchers/_Editable.qunit.js +5 -1
- package/test/sap/ui/core/qunit/routing/fixture/Async1.view.xml +1 -1
- package/test/sap/ui/core/qunit/testdata/xml-require/helper/Formatter.js +7 -4
- package/test/sap/ui/core/qunit/testdata/xml-require/view/XMLTemplateProcessorAsync_require_in_html.view.xml +36 -0
- package/test/sap/ui/core/qunit/testsuites/testsuite.theming.qunit.js +2 -2
- package/test/sap/ui/core/qunit/types/DateFormatTimezones.qunit.js +1222 -1201
- package/test/sap/ui/core/qunit/util/Popup.qunit.js +7 -11
- package/test/sap/ui/core/qunit/util/XMLPreprocessor.qunit.js +3 -1
- package/test/sap/ui/core/qunit/util/jQuery.sap.Version.qunit.js +3 -0
- package/test/sap/ui/core/qunit/util/reflection/BaseTreeModifier.qunit.js +1 -1
- package/test/sap/ui/core/relnotes/changes-1.116.json +1 -12
- package/test/sap/ui/core/relnotes/changes-1.117.json +127 -0
- package/test/sap/ui/core/visual/images/HyphenationPlayground/windows/1600x1200/chrome/horizon/ltr/cozy/19_thirdParty_language_sl.ref.lnk +1 -1
- package/ui5.yaml +165 -0
- package/src/sap/ui/core/util/MockServerAnnotationsHandler.js +0 -45
- /package/test/sap/ui/core/qunit/bootstrap/{GlobalConfigurationSettings.js → Configuration.beforeBootstrap.qunit.js} +0 -0
|
@@ -606,6 +606,7 @@ sap.ui.define([
|
|
|
606
606
|
|
|
607
607
|
sResponseBody = '{"@odata.context": "' + getBaseUrl(oXhr.url)
|
|
608
608
|
+ '$metadata#People/$entity",';
|
|
609
|
+
oUser.HomeAddress = oUser.HomeAddress || null; // prevents drillDown errors
|
|
609
610
|
sResponseBody += JSON.stringify(oUser).slice(1);
|
|
610
611
|
|
|
611
612
|
// The response to POST requests is http 201 (Created)
|
|
@@ -46,12 +46,7 @@ sap.ui.define([
|
|
|
46
46
|
var oList = this.byId("peopleList"),
|
|
47
47
|
oBinding = oList.getBinding("items"),
|
|
48
48
|
// Create a new entry through the table's list binding
|
|
49
|
-
oContext = oBinding.create({
|
|
50
|
-
UserName : "",
|
|
51
|
-
FirstName : "",
|
|
52
|
-
LastName : "",
|
|
53
|
-
Age : "18"
|
|
54
|
-
});
|
|
49
|
+
oContext = oBinding.create({Age : "18"});
|
|
55
50
|
|
|
56
51
|
this._setUIChanges(true);
|
|
57
52
|
this.getView().getModel("appView").setProperty("/usernameEmpty", true);
|
|
@@ -606,6 +606,7 @@ sap.ui.define([
|
|
|
606
606
|
|
|
607
607
|
sResponseBody = '{"@odata.context": "' + getBaseUrl(oXhr.url)
|
|
608
608
|
+ '$metadata#People/$entity",';
|
|
609
|
+
oUser.HomeAddress = oUser.HomeAddress || null; // prevents drillDown errors
|
|
609
610
|
sResponseBody += JSON.stringify(oUser).slice(1);
|
|
610
611
|
|
|
611
612
|
// The response to POST requests is http 201 (Created)
|
|
@@ -46,12 +46,7 @@ sap.ui.define([
|
|
|
46
46
|
var oList = this.byId("peopleList"),
|
|
47
47
|
oBinding = oList.getBinding("items"),
|
|
48
48
|
// Create a new entry through the table's list binding
|
|
49
|
-
oContext = oBinding.create({
|
|
50
|
-
UserName : "",
|
|
51
|
-
FirstName : "",
|
|
52
|
-
LastName : "",
|
|
53
|
-
Age : "18"
|
|
54
|
-
});
|
|
49
|
+
oContext = oBinding.create({Age : "18"});
|
|
55
50
|
|
|
56
51
|
this._setUIChanges(true);
|
|
57
52
|
this.getView().getModel("appView").setProperty("/usernameEmpty", true);
|
|
@@ -606,6 +606,7 @@ sap.ui.define([
|
|
|
606
606
|
|
|
607
607
|
sResponseBody = '{"@odata.context": "' + getBaseUrl(oXhr.url)
|
|
608
608
|
+ '$metadata#People/$entity",';
|
|
609
|
+
oUser.HomeAddress = oUser.HomeAddress || null; // prevents drillDown errors
|
|
609
610
|
sResponseBody += JSON.stringify(oUser).slice(1);
|
|
610
611
|
|
|
611
612
|
// The response to POST requests is http 201 (Created)
|
|
@@ -46,12 +46,7 @@ sap.ui.define([
|
|
|
46
46
|
var oList = this.byId("peopleList"),
|
|
47
47
|
oBinding = oList.getBinding("items"),
|
|
48
48
|
// Create a new entry through the table's list binding
|
|
49
|
-
oContext = oBinding.create({
|
|
50
|
-
UserName : "",
|
|
51
|
-
FirstName : "",
|
|
52
|
-
LastName : "",
|
|
53
|
-
Age : "18"
|
|
54
|
-
});
|
|
49
|
+
oContext = oBinding.create({Age : "18"});
|
|
55
50
|
|
|
56
51
|
this._setUIChanges(true);
|
|
57
52
|
this.getView().getModel("appView").setProperty("/usernameEmpty", true);
|
|
@@ -606,6 +606,7 @@ sap.ui.define([
|
|
|
606
606
|
|
|
607
607
|
sResponseBody = '{"@odata.context": "' + getBaseUrl(oXhr.url)
|
|
608
608
|
+ '$metadata#People/$entity",';
|
|
609
|
+
oUser.HomeAddress = oUser.HomeAddress || null; // prevents drillDown errors
|
|
609
610
|
sResponseBody += JSON.stringify(oUser).slice(1);
|
|
610
611
|
|
|
611
612
|
// The response to POST requests is http 201 (Created)
|
|
@@ -46,12 +46,7 @@ sap.ui.define([
|
|
|
46
46
|
var oList = this.byId("peopleList"),
|
|
47
47
|
oBinding = oList.getBinding("items"),
|
|
48
48
|
// Create a new entry through the table's list binding
|
|
49
|
-
oContext = oBinding.create({
|
|
50
|
-
UserName : "",
|
|
51
|
-
FirstName : "",
|
|
52
|
-
LastName : "",
|
|
53
|
-
Age : "18"
|
|
54
|
-
});
|
|
49
|
+
oContext = oBinding.create({Age : "18"});
|
|
55
50
|
|
|
56
51
|
this._setUIChanges(true);
|
|
57
52
|
this.getView().getModel("appView").setProperty("/usernameEmpty", true);
|
|
@@ -299,10 +294,10 @@ sap.ui.define([
|
|
|
299
294
|
}
|
|
300
295
|
|
|
301
296
|
oOldContext = oDetailArea.getBindingContext();
|
|
302
|
-
if (oOldContext) {
|
|
297
|
+
if (oOldContext && !oOldContext.isTransient()) {
|
|
303
298
|
oOldContext.setKeepAlive(false);
|
|
304
299
|
}
|
|
305
|
-
if (oUserContext) {
|
|
300
|
+
if (oUserContext && !oUserContext.isTransient()) {
|
|
306
301
|
oUserContext.setKeepAlive(true,
|
|
307
302
|
// hide details if kept entity was refreshed but does not exist any more
|
|
308
303
|
this._setDetailArea.bind(this));
|
|
@@ -607,6 +607,7 @@ sap.ui.define([
|
|
|
607
607
|
|
|
608
608
|
sResponseBody = '{"@odata.context": "' + getBaseUrl(oXhr.url)
|
|
609
609
|
+ '$metadata#People/$entity",';
|
|
610
|
+
oUser.HomeAddress = oUser.HomeAddress || null; // prevents drillDown errors
|
|
610
611
|
sResponseBody += JSON.stringify(oUser).slice(1);
|
|
611
612
|
|
|
612
613
|
// The response to POST requests is http 201 (Created)
|
|
@@ -46,12 +46,7 @@ sap.ui.define([
|
|
|
46
46
|
var oList = this.byId("peopleList"),
|
|
47
47
|
oBinding = oList.getBinding("items"),
|
|
48
48
|
// Create a new entry through the table's list binding
|
|
49
|
-
oContext = oBinding.create({
|
|
50
|
-
UserName : "",
|
|
51
|
-
FirstName : "",
|
|
52
|
-
LastName : "",
|
|
53
|
-
Age : "18"
|
|
54
|
-
});
|
|
49
|
+
oContext = oBinding.create({Age : "18"});
|
|
55
50
|
|
|
56
51
|
this._setUIChanges(true);
|
|
57
52
|
this.getView().getModel("appView").setProperty("/usernameEmpty", true);
|
|
@@ -299,10 +294,10 @@ sap.ui.define([
|
|
|
299
294
|
}
|
|
300
295
|
|
|
301
296
|
oOldContext = oDetailArea.getBindingContext();
|
|
302
|
-
if (oOldContext) {
|
|
297
|
+
if (oOldContext && !oOldContext.isTransient()) {
|
|
303
298
|
oOldContext.setKeepAlive(false);
|
|
304
299
|
}
|
|
305
|
-
if (oUserContext) {
|
|
300
|
+
if (oUserContext && !oUserContext.isTransient()) {
|
|
306
301
|
oUserContext.setKeepAlive(true,
|
|
307
302
|
// hide details if kept entity was refreshed but does not exist any more
|
|
308
303
|
this._setDetailArea.bind(this));
|
|
@@ -606,6 +606,7 @@ sap.ui.define([
|
|
|
606
606
|
|
|
607
607
|
sResponseBody = '{"@odata.context": "' + getBaseUrl(oXhr.url)
|
|
608
608
|
+ '$metadata#People/$entity",';
|
|
609
|
+
oUser.HomeAddress = oUser.HomeAddress || null; // prevents drillDown errors
|
|
609
610
|
sResponseBody += JSON.stringify(oUser).slice(1);
|
|
610
611
|
|
|
611
612
|
// The response to POST requests is http 201 (Created)
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
|
|
2
|
-
/* global QUnit */
|
|
2
|
+
/* global sinon QUnit */
|
|
3
3
|
sap.ui.define([
|
|
4
4
|
"sap/ui/core/IconPool",
|
|
5
|
+
"sap/ui/core/_IconRegistry",
|
|
5
6
|
"sap/ui/core/Icon",
|
|
7
|
+
"sap/ui/core/Theming",
|
|
6
8
|
"sap/m/Image",
|
|
7
9
|
"sap/base/Log",
|
|
8
10
|
"sap/ui/test/TestUtils",
|
|
9
11
|
"sap/ui/thirdparty/jquery"
|
|
10
|
-
], function(IconPool, Icon, Image, Log, TestUtils, jQuery) {
|
|
12
|
+
], function(IconPool, _IconRegistry, Icon, Theming, Image, Log, TestUtils, jQuery) {
|
|
11
13
|
"use strict";
|
|
12
14
|
|
|
13
15
|
QUnit.config.reorder = false;
|
|
@@ -185,7 +187,7 @@ sap.ui.define([
|
|
|
185
187
|
|
|
186
188
|
IconPool.registerFont({
|
|
187
189
|
fontFamily: sFontFamily,
|
|
188
|
-
fontURI: sap.ui.require.toUrl("sap/tnt/themes/base/fonts")
|
|
190
|
+
fontURI: sap.ui.require.toUrl("sap/tnt/themes/base/fonts/")
|
|
189
191
|
});
|
|
190
192
|
|
|
191
193
|
// insert sap-icons-TNT font
|
|
@@ -200,7 +202,7 @@ sap.ui.define([
|
|
|
200
202
|
|
|
201
203
|
iFontFaceCount = document.fonts.size;
|
|
202
204
|
// insert font again
|
|
203
|
-
IconPool.insertFontFaceStyle(sFontFamily, sap.ui.require.toUrl("sap/tnt/themes/base/fonts"));
|
|
205
|
+
IconPool.insertFontFaceStyle(sFontFamily, sap.ui.require.toUrl("sap/tnt/themes/base/fonts/"));
|
|
204
206
|
assert.equal(document.fonts.size, iFontFaceCount, "No new FontFace is created");
|
|
205
207
|
});
|
|
206
208
|
|
|
@@ -420,6 +422,53 @@ sap.ui.define([
|
|
|
420
422
|
assert.strictEqual(IconPool.fontLoaded("invalid"), undefined, "fontLoaded returns undefined");
|
|
421
423
|
});
|
|
422
424
|
|
|
425
|
+
QUnit.module("Theme dependent Icons", {});
|
|
426
|
+
|
|
427
|
+
QUnit.test("registerFont with SAP-icons-TNT (Horizon Theme)", function(assert) {
|
|
428
|
+
const oInsertFontFaceStyleSpy = sinon.spy(_IconRegistry, "insertFontFaceStyle");
|
|
429
|
+
const oGetThemeStub = sinon.stub(Theming, "getTheme").returns("sap_horizon");
|
|
430
|
+
|
|
431
|
+
IconPool.registerFont({
|
|
432
|
+
collectionName: "my-tnt-icons-horizon",
|
|
433
|
+
fontFamily: "SAP-icons-TNT",
|
|
434
|
+
fontURI: sap.ui.require.toUrl("sap/tnt/themes/base/fonts/")
|
|
435
|
+
});
|
|
436
|
+
|
|
437
|
+
return IconPool.fontLoaded("my-tnt-icons-horizon").then(function() {
|
|
438
|
+
const sExpectedFontURI = sap.ui.require.toUrl("sap/tnt/themes/base/fonts/horizon/");
|
|
439
|
+
assert.ok(oInsertFontFaceStyleSpy.calledWith("SAP-icons-TNT", sExpectedFontURI, "my-tnt-icons-horizon"), "Correct font face inserted.");
|
|
440
|
+
|
|
441
|
+
// restore stubs
|
|
442
|
+
oGetThemeStub.restore();
|
|
443
|
+
oInsertFontFaceStyleSpy.restore();
|
|
444
|
+
});
|
|
445
|
+
});
|
|
446
|
+
|
|
447
|
+
QUnit.test("registerFont with SAP-icons-TNT (switching themes) ", function(assert) {
|
|
448
|
+
// set initial theme so that we enforce a theme change event
|
|
449
|
+
Theming.setTheme("sap_belize");
|
|
450
|
+
|
|
451
|
+
IconPool.registerFont({
|
|
452
|
+
collectionName: "sap-tnt-icons-horizon-2",
|
|
453
|
+
fontFamily: "SAP-icons-TNT",
|
|
454
|
+
fontURI: sap.ui.require.toUrl("sap/tnt/themes/base/fonts/")
|
|
455
|
+
});
|
|
456
|
+
|
|
457
|
+
return new Promise((res, rej) => {
|
|
458
|
+
IconPool.fontLoaded("sap-tnt-icons-horizon-2").then(function() {
|
|
459
|
+
const oInsertFontFaceStyleSpy = sinon.spy(_IconRegistry, "insertFontFaceStyle");
|
|
460
|
+
const sExpectedFontURI = sap.ui.require.toUrl("sap/tnt/themes/base/fonts/horizon/");
|
|
461
|
+
|
|
462
|
+
Theming.attachApplied(() => {
|
|
463
|
+
assert.ok(oInsertFontFaceStyleSpy.calledWith("SAP-icons-TNT", sExpectedFontURI, "sap-tnt-icons-horizon-2"));
|
|
464
|
+
res();
|
|
465
|
+
});
|
|
466
|
+
|
|
467
|
+
Theming.setTheme("sap_horizon");
|
|
468
|
+
});
|
|
469
|
+
});
|
|
470
|
+
});
|
|
471
|
+
|
|
423
472
|
QUnit.module("Sync getIconInfo");
|
|
424
473
|
|
|
425
474
|
QUnit.test("Calling getIconInfo with 'sync' mode on the default icon font returns the result immediately", function(assert) {
|
|
@@ -1002,18 +1002,56 @@ sap.ui.define([
|
|
|
1002
1002
|
this.spy(oBinding3, "checkUpdate");
|
|
1003
1003
|
var fnDone = assert.async();
|
|
1004
1004
|
oModel.checkUpdate(true, true, fnFilter);
|
|
1005
|
-
oModel.checkUpdate(false, true, fnFilter); // to test
|
|
1005
|
+
oModel.checkUpdate(false, true, fnFilter); // to test forceUpdate wins
|
|
1006
1006
|
setTimeout(function() { // wait for Model update
|
|
1007
1007
|
assert.equal(aTrueBindings.length, 1, "The test is called an delivers true for one binding");
|
|
1008
1008
|
assert.deepEqual(aTrueBindings[0], oBinding1, "And this is exactly the first binding");
|
|
1009
|
-
assert.ok(oBinding1.checkUpdate.calledWith(true), "
|
|
1010
|
-
assert.ok(oBinding1.checkUpdate.calledOnce, "
|
|
1011
|
-
assert.notOk(oBinding2.checkUpdate.called, "
|
|
1012
|
-
assert.notOk(oBinding3.checkUpdate.called, "
|
|
1009
|
+
assert.ok(oBinding1.checkUpdate.calledWith(true), "checkUpdate called as forced");
|
|
1010
|
+
assert.ok(oBinding1.checkUpdate.calledOnce, "checkUpdate called only once");
|
|
1011
|
+
assert.notOk(oBinding2.checkUpdate.called, "checkUpdate not called on other Binding");
|
|
1012
|
+
assert.notOk(oBinding3.checkUpdate.called, "checkUpdate not called on other Binding");
|
|
1013
1013
|
fnDone();
|
|
1014
1014
|
}, 0);
|
|
1015
1015
|
});
|
|
1016
1016
|
|
|
1017
|
+
QUnit.test("Check Update with different binding test function async", function (assert) {
|
|
1018
|
+
var aTrueBindings = [];
|
|
1019
|
+
var oModel = this.oManagedObjectModel;
|
|
1020
|
+
var oBinding1 = oModel.bindProperty("/value");
|
|
1021
|
+
var oBinding2 = oModel.bindProperty("/stringValue");
|
|
1022
|
+
var oBinding3 = oModel.bindProperty("/floatValue");
|
|
1023
|
+
oModel.addBinding(oBinding1);
|
|
1024
|
+
oModel.addBinding(oBinding2);
|
|
1025
|
+
oModel.addBinding(oBinding3);
|
|
1026
|
+
|
|
1027
|
+
assert.equal(oModel.getBindings().length, 3, "There are three bindings");
|
|
1028
|
+
|
|
1029
|
+
var fnFilter1 = function (oBinding) {
|
|
1030
|
+
if (oBinding == oBinding1) {
|
|
1031
|
+
aTrueBindings.push(oBinding);
|
|
1032
|
+
return true;
|
|
1033
|
+
}
|
|
1034
|
+
return false;
|
|
1035
|
+
};
|
|
1036
|
+
var fnFilter2 = function (oBinding) {
|
|
1037
|
+
if (oBinding == oBinding2) {
|
|
1038
|
+
aTrueBindings.push(oBinding);
|
|
1039
|
+
return true;
|
|
1040
|
+
}
|
|
1041
|
+
return false;
|
|
1042
|
+
};
|
|
1043
|
+
|
|
1044
|
+
this.spy(oBinding1, "checkUpdate");
|
|
1045
|
+
this.spy(oBinding2, "checkUpdate");
|
|
1046
|
+
this.spy(oBinding3, "checkUpdate");
|
|
1047
|
+
oModel.checkUpdate(true, true, fnFilter1);
|
|
1048
|
+
oModel.checkUpdate(true, true, fnFilter2);
|
|
1049
|
+
oModel.checkUpdate(false, false, fnFilter2);
|
|
1050
|
+
assert.ok(oBinding1.checkUpdate.calledOnce, "checkUpdate called only once");
|
|
1051
|
+
assert.ok(oBinding2.checkUpdate.calledOnce, "checkUpdate called only once");
|
|
1052
|
+
assert.ok(oBinding3.checkUpdate.calledOnce, "checkUpdate called only once");
|
|
1053
|
+
});
|
|
1054
|
+
|
|
1017
1055
|
QUnit.test("ManagedObject Model - handle object properties", function(assert) {
|
|
1018
1056
|
var oData = {value: "A string", text: "A text"};
|
|
1019
1057
|
var oModel = new JSONModel({
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
/* global QUnit, sinon, globalThis */
|
|
2
2
|
|
|
3
3
|
sap.ui.define([
|
|
4
|
+
"sap/base/config",
|
|
4
5
|
"sap/base/Event",
|
|
5
6
|
"sap/ui/base/config/URLConfigurationProvider",
|
|
6
7
|
"sap/ui/core/Theming",
|
|
7
8
|
"sap/ui/qunit/utils/waitForThemeApplied"
|
|
8
9
|
], function (
|
|
10
|
+
BaseConfig,
|
|
9
11
|
BaseEvent,
|
|
10
12
|
URLConfigurationProvider,
|
|
11
13
|
Theming,
|
|
@@ -74,23 +76,36 @@ sap.ui.define([
|
|
|
74
76
|
}
|
|
75
77
|
});
|
|
76
78
|
|
|
79
|
+
/**
|
|
80
|
+
* This is regression test for when the initial theme is an empty string ("").
|
|
81
|
+
* The empty string is given in the "testsuite.theming.qunit.js" as a bootstrap parameter.
|
|
82
|
+
*
|
|
83
|
+
* Before fixing this regression, an empty string lead to a "Maximum call stack size exceeded" error.
|
|
84
|
+
*/
|
|
85
|
+
QUnit.test("Initial Theme - empty string fallback", function(assert) {
|
|
86
|
+
assert.equal(Theming.getTheme(), "base", "Initial Theme after bootstrapping should be 'base'");
|
|
87
|
+
});
|
|
88
|
+
|
|
77
89
|
QUnit.test("getTheme", function (assert) {
|
|
78
90
|
assert.expect(bThemeManagerNotActive ? 28 : 27);
|
|
79
|
-
|
|
91
|
+
BaseConfig._.invalidate();
|
|
80
92
|
mConfigStubValues = {
|
|
81
93
|
"sapTheme": "sap_test_theme_1",
|
|
82
94
|
"sapUiTheme": "sap_test_theme_2"
|
|
83
95
|
};
|
|
84
96
|
// sapTheme should be first
|
|
85
97
|
return fnAssert("sap_test_theme_1").then(function() {
|
|
98
|
+
BaseConfig._.invalidate();
|
|
86
99
|
mConfigStubValues["sapTheme"] = undefined;
|
|
87
100
|
// if there is no sapTheme sapUiTheme should be used
|
|
88
101
|
return fnAssert("sap_test_theme_2");
|
|
89
102
|
}).then(function() {
|
|
103
|
+
BaseConfig._.invalidate();
|
|
90
104
|
mConfigStubValues["sapUiTheme"] = undefined;
|
|
91
105
|
// use default value 'base' in case there is no theming parameter at all
|
|
92
106
|
return fnAssert("base");
|
|
93
107
|
}).then(function() {
|
|
108
|
+
BaseConfig._.invalidate();
|
|
94
109
|
mConfigStubValues["sapTheme"] = "sap_test_theme_3@/sap/test/themeroot";
|
|
95
110
|
// first call with themeroot should trigger a change event for the implicit setThemeRoot call
|
|
96
111
|
return fnAssert("sap_test_theme_3", [{
|
|
@@ -105,6 +120,7 @@ sap.ui.define([
|
|
|
105
120
|
return fnAssert("sap_test_theme_3");
|
|
106
121
|
}).then(function() {
|
|
107
122
|
// third call with identical theme but different themeroot should trigger a change event for the implicit setThemeRoot call
|
|
123
|
+
BaseConfig._.invalidate();
|
|
108
124
|
mConfigStubValues["sapTheme"] = "sap_test_theme_3@/sap/different/test/themeroot";
|
|
109
125
|
return fnAssert("sap_test_theme_3", [{
|
|
110
126
|
themeRoots: {
|
|
@@ -115,10 +131,12 @@ sap.ui.define([
|
|
|
115
131
|
}]);
|
|
116
132
|
}).then(function() {
|
|
117
133
|
// sap_corbu theme should be normalized to sap_fiori_3 theme
|
|
134
|
+
BaseConfig._.invalidate();
|
|
118
135
|
mConfigStubValues["sapTheme"] = "sap_corbu";
|
|
119
136
|
return fnAssert("sap_fiori_3");
|
|
120
137
|
}).then(function() {
|
|
121
138
|
// sap_corbu theme with specific themeroots should not be normalized and themeroots for sap_corbu should trigger a change event
|
|
139
|
+
BaseConfig._.invalidate();
|
|
122
140
|
mConfigStubValues["sapTheme"] = "sap_corbu@/sap/test/themeroot";
|
|
123
141
|
return fnAssert("sap_corbu", [{
|
|
124
142
|
themeRoots: {
|