@openui5/sap.ui.core 1.94.0 → 1.97.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/.eslintrc.json +15 -4
- package/.reuse/dep5 +12 -12
- package/THIRDPARTY.txt +21 -17
- 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 +2 -2
- package/src/jquery.sap.script.js +1 -1
- package/src/jquery.sap.storage.js +3 -3
- package/src/sap/base/i18n/ResourceBundle.js +6 -2
- package/src/sap/base/util/restricted/_CancelablePromise.js +1 -1
- package/src/sap/base/util/restricted/_castArray.js +1 -1
- package/src/sap/base/util/restricted/_compact.js +1 -1
- package/src/sap/base/util/restricted/_curry.js +1 -1
- package/src/sap/base/util/restricted/_debounce.js +1 -1
- package/src/sap/base/util/restricted/_difference.js +1 -1
- package/src/sap/base/util/restricted/_differenceBy.js +1 -1
- package/src/sap/base/util/restricted/_differenceWith.js +1 -1
- package/src/sap/base/util/restricted/_flatMap.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDeep.js +1 -1
- package/src/sap/base/util/restricted/_flatMapDepth.js +1 -1
- package/src/sap/base/util/restricted/_flatten.js +1 -1
- package/src/sap/base/util/restricted/_flattenDeep.js +1 -1
- package/src/sap/base/util/restricted/_flattenDepth.js +1 -1
- package/src/sap/base/util/restricted/_intersection.js +1 -1
- package/src/sap/base/util/restricted/_intersectionBy.js +1 -1
- package/src/sap/base/util/restricted/_intersectionWith.js +1 -1
- package/src/sap/base/util/restricted/_isEqual.js +1 -1
- package/src/sap/base/util/restricted/_isEqualWith.js +1 -1
- package/src/sap/base/util/restricted/_isNil.js +1 -1
- package/src/sap/base/util/restricted/_max.js +1 -1
- package/src/sap/base/util/restricted/_merge.js +1 -1
- package/src/sap/base/util/restricted/_mergeWith.js +1 -1
- package/src/sap/base/util/restricted/_min.js +1 -1
- package/src/sap/base/util/restricted/_omit.js +1 -1
- package/src/sap/base/util/restricted/_pick.js +1 -1
- package/src/sap/base/util/restricted/_pickBy.js +1 -1
- package/src/sap/base/util/restricted/_throttle.js +1 -1
- package/src/sap/base/util/restricted/_toArray.js +1 -1
- package/src/sap/base/util/restricted/_union.js +1 -1
- package/src/sap/base/util/restricted/_unionBy.js +1 -1
- package/src/sap/base/util/restricted/_unionWith.js +1 -1
- package/src/sap/base/util/restricted/_uniq.js +1 -1
- package/src/sap/base/util/restricted/_uniqBy.js +1 -1
- package/src/sap/base/util/restricted/_uniqWith.js +1 -1
- package/src/sap/base/util/restricted/_without.js +1 -1
- package/src/sap/base/util/restricted/_xor.js +1 -1
- package/src/sap/base/util/restricted/_xorBy.js +1 -1
- package/src/sap/base/util/restricted/_xorWith.js +1 -1
- package/src/sap/base/util/restricted/_zipObject.js +1 -1
- package/src/sap/base/util/restricted/_zipObjectDeep.js +1 -1
- package/src/sap/ui/Device.js +15 -11
- package/src/sap/ui/Global.js +13 -17
- package/src/sap/ui/base/DataType.js +14 -8
- package/src/sap/ui/base/Event.js +1 -1
- package/src/sap/ui/base/EventProvider.js +1 -1
- package/src/sap/ui/base/Interface.js +1 -1
- package/src/sap/ui/base/ManagedObject.js +13 -8
- package/src/sap/ui/base/ManagedObjectMetadata.js +2 -2
- package/src/sap/ui/base/Metadata.js +1 -3
- package/src/sap/ui/base/Object.js +1 -1
- package/src/sap/ui/base/ObjectPool.js +1 -1
- package/src/sap/ui/core/.library +6 -32
- package/src/sap/ui/core/AppCacheBuster.js +8 -8
- package/src/sap/ui/core/BusyIndicator.js +1 -1
- package/src/sap/ui/core/Component.js +303 -135
- package/src/sap/ui/core/ComponentContainer.js +11 -7
- 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 +67 -31
- package/src/sap/ui/core/Control.js +2 -2
- package/src/sap/ui/core/Core.js +79 -15
- package/src/sap/ui/core/CustomData.js +1 -1
- package/src/sap/ui/core/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/Element.js +2 -6
- 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/ExtensionPoint.js +6 -13
- package/src/sap/ui/core/Fragment.js +30 -32
- package/src/sap/ui/core/HTML.js +3 -3
- package/src/sap/ui/core/History.js +1 -1
- package/src/sap/ui/core/Icon.js +7 -8
- package/src/sap/ui/core/IconPool.js +26 -1097
- package/src/sap/ui/core/IconRenderer.js +6 -6
- 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/ListItem.js +1 -1
- package/src/sap/ui/core/LocalBusyIndicator.js +1 -1
- package/src/sap/ui/core/Locale.js +26 -4
- package/src/sap/ui/core/LocaleData.js +3 -3
- package/src/sap/ui/core/Manifest.js +2 -60
- package/src/sap/ui/core/Message.js +1 -1
- package/src/sap/ui/core/Patcher.js +27 -3
- package/src/sap/ui/core/Placeholder.js +4 -4
- package/src/sap/ui/core/RenderManager.js +38 -8
- package/src/sap/ui/core/Renderer.js +13 -3
- package/src/sap/ui/core/ResizeHandler.js +1 -1
- package/src/sap/ui/core/ScrollBar.js +4 -3
- package/src/sap/ui/core/SeparatorItem.js +1 -1
- package/src/sap/ui/core/ShortcutHintsMixin.js +14 -7
- package/src/sap/ui/core/ThemeCheck.js +2 -2
- 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 +3 -3
- package/src/sap/ui/core/UIComponent.js +19 -11
- 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 +2 -2
- package/src/sap/ui/core/XMLCompositeMetadata.js +2 -2
- package/src/sap/ui/core/XMLTemplateProcessor.js +132 -43
- package/src/sap/ui/core/_IconRegistry.js +1148 -0
- package/src/sap/ui/core/cache/LRUPersistentCache.js +4 -2
- package/src/sap/ui/core/date/UniversalDateUtils.js +33 -0
- 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/NumberFormat.js +16 -1
- package/src/sap/ui/core/hyphenation/Hyphenation.js +61 -80
- package/src/sap/ui/core/library.js +5 -5
- package/src/sap/ui/core/message/ControlMessageProcessor.js +5 -5
- package/src/sap/ui/core/message/Message.js +1 -1
- package/src/sap/ui/core/message/MessageManager.js +13 -15
- package/src/sap/ui/core/message/MessageParser.js +1 -1
- package/src/sap/ui/core/message/MessageProcessor.js +22 -12
- package/src/sap/ui/core/messagebundle_de.properties +1 -1
- package/src/sap/ui/core/messagebundle_fr.properties +8 -8
- package/src/sap/ui/core/messagebundle_it.properties +1 -1
- package/src/sap/ui/core/messagebundle_pl.properties +1 -1
- package/src/sap/ui/core/messagebundle_ru.properties +21 -21
- package/src/sap/ui/core/messagebundle_th.properties +2 -2
- package/src/sap/ui/core/mvc/Controller.js +5 -5
- package/src/sap/ui/core/mvc/ControllerExtensionProvider.js +30 -32
- package/src/sap/ui/core/mvc/ControllerMetadata.js +18 -18
- package/src/sap/ui/core/mvc/HTMLView.js +2 -2
- package/src/sap/ui/core/mvc/JSONView.js +2 -2
- package/src/sap/ui/core/mvc/JSView.js +2 -2
- package/src/sap/ui/core/mvc/TemplateView.js +2 -2
- package/src/sap/ui/core/mvc/View.js +58 -85
- package/src/sap/ui/core/mvc/XMLView.js +2 -2
- package/src/sap/ui/core/mvc/XMLViewRenderer.js +17 -20
- package/src/sap/ui/core/plugin/DeclarativeSupport.js +1 -1
- package/src/sap/ui/core/plugin/LessSupport.js +1 -1
- package/src/sap/ui/core/plugin/TemplatingSupport.js +1 -1
- package/src/sap/ui/core/postmessage/Bus.js +1 -1
- package/src/sap/ui/core/postmessage/confirmationDialog.js +1 -1
- package/src/sap/ui/core/routing/Route.js +10 -1
- package/src/sap/ui/core/routing/Router.js +16 -6
- package/src/sap/ui/core/routing/Targets.js +26 -0
- package/src/sap/ui/core/routing/async/Route.js +6 -3
- package/src/sap/ui/core/routing/async/Target.js +28 -4
- package/src/sap/ui/core/routing/sync/Target.js +15 -0
- package/src/sap/ui/core/rules/Misc.support.js +51 -1
- package/src/sap/ui/core/rules/Rendering.support.js +1 -4
- package/src/sap/ui/core/rules/View.support.js +14 -46
- 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 +2 -2
- package/src/sap/ui/core/support/RuleEngineOpaExtension.js +0 -1
- package/src/sap/ui/core/support/Support.js +1 -1
- package/src/sap/ui/core/support/controls/TreeViewer.js +1 -1
- package/src/sap/ui/core/support/plugins/ControlTree.js +37 -43
- 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 -2
- 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 +2 -2
- package/src/sap/ui/core/support/support.css +2 -8
- package/src/sap/ui/core/support/techinfo/TechnicalInfo.fragment.xml +1 -0
- package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +150 -73
- package/src/sap/ui/core/support/trace/E2eTraceLib.js +3 -3
- package/src/sap/ui/core/themes/base/Icon.less +9 -0
- package/src/sap/ui/core/themes/base/SAP-icons.css +2 -0
- package/src/sap/ui/core/themes/base/SAP-icons.less +10 -0
- package/src/sap/ui/core/themes/base/base.less +543 -390
- package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
- package/src/sap/ui/core/themes/base/global.less +38 -0
- package/src/sap/ui/core/themes/base/library.source.less +1 -2
- package/src/sap/ui/core/themes/sap_hcb/global.less +34 -0
- package/src/sap/ui/core/theming/Parameters.js +21 -0
- 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 +2 -2
- package/src/sap/ui/core/util/PasteHelper.js +1 -1
- package/src/sap/ui/core/util/XMLPreprocessor.js +11 -12
- package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +10 -12
- package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +6 -3
- 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/Highlighter.js +8 -2
- package/src/sap/ui/debug/PropertyList.js +1 -1
- package/src/sap/ui/model/Binding.js +174 -118
- package/src/sap/ui/model/ChangeReason.js +1 -1
- package/src/sap/ui/model/ClientContextBinding.js +1 -1
- package/src/sap/ui/model/ClientListBinding.js +8 -3
- package/src/sap/ui/model/ClientModel.js +9 -8
- package/src/sap/ui/model/ClientPropertyBinding.js +4 -2
- package/src/sap/ui/model/ClientTreeBinding.js +15 -9
- package/src/sap/ui/model/ClientTreeBindingAdapter.js +28 -23
- package/src/sap/ui/model/CompositeBinding.js +98 -77
- package/src/sap/ui/model/CompositeDataState.js +2 -2
- package/src/sap/ui/model/CompositeType.js +2 -2
- package/src/sap/ui/model/Context.js +4 -2
- package/src/sap/ui/model/ContextBinding.js +6 -14
- package/src/sap/ui/model/DataState.js +2 -2
- package/src/sap/ui/model/Filter.js +255 -53
- package/src/sap/ui/model/FilterOperator.js +1 -1
- package/src/sap/ui/model/FilterProcessor.js +27 -17
- package/src/sap/ui/model/FilterType.js +1 -1
- package/src/sap/ui/model/ListBinding.js +200 -118
- package/src/sap/ui/model/MetaModel.js +4 -9
- package/src/sap/ui/model/Model.js +349 -303
- package/src/sap/ui/model/PropertyBinding.js +92 -58
- package/src/sap/ui/model/SelectionModel.js +2 -2
- package/src/sap/ui/model/SimpleType.js +2 -2
- package/src/sap/ui/model/Sorter.js +1 -1
- package/src/sap/ui/model/SorterProcessor.js +1 -1
- package/src/sap/ui/model/StaticBinding.js +1 -1
- package/src/sap/ui/model/TreeAutoExpandMode.js +2 -2
- package/src/sap/ui/model/TreeBinding.js +1 -1
- package/src/sap/ui/model/TreeBindingAdapter.js +249 -100
- package/src/sap/ui/model/TreeBindingCompatibilityAdapter.js +16 -9
- package/src/sap/ui/model/TreeBindingUtils.js +3 -0
- package/src/sap/ui/model/Type.js +1 -1
- package/src/sap/ui/model/analytics/AnalyticalBinding.js +20 -10
- package/src/sap/ui/model/analytics/AnalyticalTreeBindingAdapter.js +17 -19
- package/src/sap/ui/model/analytics/AnalyticalVersionInfo.js +1 -1
- package/src/sap/ui/model/analytics/BatchResponseCollector.js +1 -1
- package/src/sap/ui/model/analytics/ODataModelAdapter.js +1 -1
- package/src/sap/ui/model/analytics/odata4analytics.js +3 -2
- package/src/sap/ui/model/base/ManagedObjectModel.js +4 -0
- package/src/sap/ui/model/json/JSONListBinding.js +8 -5
- package/src/sap/ui/model/json/JSONModel.js +29 -20
- package/src/sap/ui/model/json/JSONPropertyBinding.js +5 -4
- package/src/sap/ui/model/json/JSONTreeBinding.js +1 -1
- package/src/sap/ui/model/message/MessageListBinding.js +6 -3
- package/src/sap/ui/model/message/MessageModel.js +25 -17
- package/src/sap/ui/model/message/MessagePropertyBinding.js +3 -3
- package/src/sap/ui/model/odata/AnnotationHelper.js +3 -3
- package/src/sap/ui/model/odata/AnnotationParser.js +5 -3
- package/src/sap/ui/model/odata/CountMode.js +1 -1
- package/src/sap/ui/model/odata/Filter.js +1 -1
- package/src/sap/ui/model/odata/ODataAnnotations.js +2 -2
- package/src/sap/ui/model/odata/ODataContextBinding.js +1 -1
- package/src/sap/ui/model/odata/ODataListBinding.js +62 -39
- package/src/sap/ui/model/odata/ODataMessageParser.js +3 -3
- package/src/sap/ui/model/odata/ODataMetaModel.js +6 -4
- package/src/sap/ui/model/odata/ODataMetadata.js +137 -86
- package/src/sap/ui/model/odata/ODataModel.js +443 -216
- package/src/sap/ui/model/odata/ODataPropertyBinding.js +8 -6
- package/src/sap/ui/model/odata/ODataTreeBinding.js +65 -33
- package/src/sap/ui/model/odata/ODataTreeBindingAdapter.js +28 -18
- package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +442 -262
- package/src/sap/ui/model/odata/ODataUtils.js +36 -19
- package/src/sap/ui/model/odata/OperationMode.js +1 -1
- package/src/sap/ui/model/odata/_AnnotationHelperBasics.js +2 -1
- package/src/sap/ui/model/odata/_AnnotationHelperExpression.js +11 -9
- package/src/sap/ui/model/odata/_ODataMetaModelUtils.js +6 -4
- 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/Decimal.js +5 -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/type/UnitMixin.js +0 -1
- package/src/sap/ui/model/odata/v2/Context.js +98 -17
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +2 -2
- package/src/sap/ui/model/odata/v2/ODataContextBinding.js +1 -1
- package/src/sap/ui/model/odata/v2/ODataListBinding.js +416 -132
- package/src/sap/ui/model/odata/v2/ODataModel.js +465 -250
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +191 -109
- package/src/sap/ui/model/odata/v2/_CreatedContextsCache.js +179 -0
- package/src/sap/ui/model/odata/v4/Context.js +48 -7
- package/src/sap/ui/model/odata/v4/ODataBinding.js +60 -30
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +177 -53
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +304 -91
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +32 -20
- package/src/sap/ui/model/odata/v4/ODataModel.js +29 -15
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +83 -51
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +13 -9
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +115 -19
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +35 -5
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +50 -5
- package/src/sap/ui/model/resource/ResourceModel.js +6 -2
- package/src/sap/ui/model/resource/ResourcePropertyBinding.js +1 -1
- package/src/sap/ui/model/type/Boolean.js +2 -2
- package/src/sap/ui/model/type/Currency.js +2 -2
- package/src/sap/ui/model/type/Date.js +9 -3
- package/src/sap/ui/model/type/DateInterval.js +4 -2
- package/src/sap/ui/model/type/DateTime.js +2 -2
- package/src/sap/ui/model/type/DateTimeInterval.js +2 -2
- package/src/sap/ui/model/type/FileSize.js +4 -2
- package/src/sap/ui/model/type/Float.js +4 -2
- package/src/sap/ui/model/type/Integer.js +4 -2
- package/src/sap/ui/model/type/String.js +2 -2
- package/src/sap/ui/model/type/Time.js +2 -2
- package/src/sap/ui/model/type/TimeInterval.js +2 -2
- package/src/sap/ui/model/type/Unit.js +14 -7
- package/src/sap/ui/model/xml/XMLListBinding.js +15 -9
- package/src/sap/ui/model/xml/XMLModel.js +74 -45
- package/src/sap/ui/model/xml/XMLPropertyBinding.js +5 -5
- package/src/sap/ui/model/xml/XMLTreeBinding.js +5 -4
- package/src/sap/ui/performance/trace/Interaction.js +30 -15
- package/src/sap/ui/qunit/QUnitUtils.js +3 -2
- package/src/sap/ui/qunit/utils/ControlIterator.js +1 -1
- package/src/sap/ui/qunit/utils/MemoryLeakCheck.js +9 -11
- package/src/sap/ui/test/TestUtils.js +11 -4
- package/src/sap/ui/test/actions/Action.js +9 -2
- package/src/sap/ui/test/actions/Press.js +28 -1
- package/src/sap/ui/test/generic/_EnforceSemanticRendering.js +111 -0
- package/src/sap/ui/test/matchers/I18NText.js +29 -11
- package/src/sap/ui/test/opaQunit.js +5 -0
- package/src/sap/ui/thirdparty/IPv6.js +2 -2
- package/src/sap/ui/thirdparty/SecondLevelDomains.js +2 -2
- package/src/sap/ui/thirdparty/URI.js +14 -5
- package/src/sap/ui/thirdparty/URITemplate.js +2 -2
- package/src/sap/ui/thirdparty/hyphenopoly/Hyphenopoly.js +1196 -0
- package/src/sap/ui/thirdparty/hyphenopoly/Hyphenopoly_Loader.js +797 -0
- package/src/sap/ui/thirdparty/hyphenopoly/hyphenEngine.asm.js +108 -127
- package/src/sap/ui/thirdparty/hyphenopoly/hyphenEngine.wasm +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/bg.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/ca.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/da.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/de.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/el-monoton.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/en-us.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/es.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/et.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/fi.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/fr.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/hi.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/hr.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/hu.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/it.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/lt.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/nb-no.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/nl.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/pt.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/ru.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/sl.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/sv.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/th.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/tr.hpb +0 -0
- package/src/sap/ui/thirdparty/hyphenopoly/patterns/uk.hpb +0 -0
- package/src/sap/ui/thirdparty/jquery.js +9 -1
- package/src/sap/ui/thirdparty/qunit-2.js +1 -1
- package/src/sap/ui/thirdparty/qunit.js +1 -1
- package/src/sap/ui/util/Mobile.js +30 -59
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/sap/ui/util/isCrossOriginURL.js +16 -6
- package/src/ui5loader.js +6 -6
- package/ui5.yaml +248 -2
- package/src/sap/ui/core/CustomizingConfiguration.js +0 -272
- package/src/sap/ui/core/support/plugins/MessageTest.js +0 -96
- package/src/sap/ui/thirdparty/baseuri.js +0 -1
- package/src/sap/ui/thirdparty/es6-object-assign.js +0 -1
- package/src/sap/ui/thirdparty/es6-promise.js +0 -1
- package/src/sap/ui/thirdparty/es6-shim-nopromise.js +0 -1
- package/src/sap/ui/thirdparty/es6-string-methods.js +0 -1
- package/src/sap/ui/thirdparty/flexie.js +0 -1
- package/src/sap/ui/thirdparty/hyphenopoly/hyphenopoly.bundle.js +0 -860
- package/src/sap/ui/thirdparty/unorm.js +0 -1
- package/src/sap/ui/thirdparty/unormdata.js +0 -1
|
@@ -60,7 +60,7 @@ sap.ui.define([
|
|
|
60
60
|
* @private
|
|
61
61
|
*/
|
|
62
62
|
var XMLViewRenderer = {
|
|
63
|
-
apiVersion:
|
|
63
|
+
apiVersion: 2
|
|
64
64
|
};
|
|
65
65
|
|
|
66
66
|
|
|
@@ -72,9 +72,8 @@ sap.ui.define([
|
|
|
72
72
|
*/
|
|
73
73
|
XMLViewRenderer.render = function(rm, oControl) {
|
|
74
74
|
// write the HTML into the render manager
|
|
75
|
-
var
|
|
76
|
-
|
|
77
|
-
|
|
75
|
+
var aParsedContent = oControl._aParsedContent;
|
|
76
|
+
var $oldContent = oControl._$oldContent = RenderManager.findPreservedContent(oControl.getId());
|
|
78
77
|
if ( $oldContent.length === 0) {
|
|
79
78
|
// Log.debug("rendering " + oControl + " anew");
|
|
80
79
|
var bSubView = oControl.isSubView();
|
|
@@ -91,19 +90,17 @@ sap.ui.define([
|
|
|
91
90
|
rm.style("height", oControl.getHeight());
|
|
92
91
|
rm.openEnd();
|
|
93
92
|
}
|
|
94
|
-
if (
|
|
95
|
-
for (var i = 0; i <
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
// Here we need to pass the raw strings to the RenderManager as it was written in the *.view.xml.
|
|
101
|
-
rm.write(vFragment);
|
|
93
|
+
if (aParsedContent) {
|
|
94
|
+
for (var i = 0; i < aParsedContent.length; i++) {
|
|
95
|
+
var vRmInfo = aParsedContent[i];
|
|
96
|
+
// apply RenderManagerAPI calls which might have been recorded during XML processing for all encountered HTML elements in an XMLView
|
|
97
|
+
if (Array.isArray(vRmInfo)) {
|
|
98
|
+
rm[vRmInfo[0]].apply(rm, vRmInfo[1]);
|
|
102
99
|
} else {
|
|
103
|
-
rm.renderControl(
|
|
104
|
-
// when the child control did not render anything
|
|
105
|
-
if ( !
|
|
106
|
-
rm.openStart("div", PREFIX_DUMMY +
|
|
100
|
+
rm.renderControl(vRmInfo);
|
|
101
|
+
// when the child control did not render anything, we add a placeholder to know where to render the child later
|
|
102
|
+
if ( !vRmInfo.bOutput ) {
|
|
103
|
+
rm.openStart("div", PREFIX_DUMMY + vRmInfo.getId());
|
|
107
104
|
rm.class("sapUiHidden");
|
|
108
105
|
rm.openEnd();
|
|
109
106
|
rm.close("div");
|
|
@@ -124,10 +121,10 @@ sap.ui.define([
|
|
|
124
121
|
rm.openStart("div", PREFIX_TEMPORARY + oControl.getId());
|
|
125
122
|
rm.class("sapUiHidden");
|
|
126
123
|
rm.openEnd();
|
|
127
|
-
for (var
|
|
128
|
-
vFragment =
|
|
129
|
-
if
|
|
130
|
-
|
|
124
|
+
for (var i = 0; i < aParsedContent.length; i++) {
|
|
125
|
+
var vFragment = aParsedContent[i];
|
|
126
|
+
// if the parsed content does not have a corresponding _renderManagerAPICall, it's a control
|
|
127
|
+
if (!Array.isArray(vFragment)) {
|
|
131
128
|
// render DOM string for child control
|
|
132
129
|
rm.renderControl(vFragment);
|
|
133
130
|
|
|
@@ -234,7 +234,16 @@ sap.ui.define([
|
|
|
234
234
|
// suspend the dynamic targets
|
|
235
235
|
if (this._oConfig.dynamicTarget) {
|
|
236
236
|
this._oRouter._oTargets.suspend(this._oConfig.dynamicTarget);
|
|
237
|
-
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
},
|
|
240
|
+
|
|
241
|
+
_resume: function() {
|
|
242
|
+
if (this._oRouter._oTargets) {
|
|
243
|
+
this._oRouter._oTargets.resume(this._oConfig.target);
|
|
244
|
+
|
|
245
|
+
if (this._oConfig.dynamicTarget) {
|
|
246
|
+
this._oRouter._oTargets.resume(this._oConfig.dynamicTarget);
|
|
238
247
|
}
|
|
239
248
|
}
|
|
240
249
|
},
|
|
@@ -435,10 +435,14 @@ sap.ui.define([
|
|
|
435
435
|
// shouldn't be processed.
|
|
436
436
|
this.oHashChanger.attachEvent("hashChanged", this.fnHashChanged);
|
|
437
437
|
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
438
|
+
if (bIgnoreInitialHash) {
|
|
439
|
+
if (this._oMatchedRoute) {
|
|
440
|
+
this._oMatchedRoute._resume();
|
|
441
|
+
}
|
|
442
|
+
} else if (sHash !== RouterHashChanger.InvalidHash) {
|
|
443
|
+
// The HashChanger returns an InvalidHash when one of its ancestors is currently in
|
|
444
|
+
// the collect mode of preparing the next hash change. In this case, the Router should
|
|
445
|
+
// not parse the current hash and wait for the next 'hashChanged' event.
|
|
442
446
|
this.parse(sHash);
|
|
443
447
|
}
|
|
444
448
|
|
|
@@ -490,7 +494,6 @@ sap.ui.define([
|
|
|
490
494
|
|
|
491
495
|
if (this._oMatchedRoute) {
|
|
492
496
|
this._oMatchedRoute._routeSwitched();
|
|
493
|
-
this._oMatchedRoute = null;
|
|
494
497
|
}
|
|
495
498
|
|
|
496
499
|
this._bIsInitialized = false;
|
|
@@ -655,12 +658,19 @@ sap.ui.define([
|
|
|
655
658
|
}
|
|
656
659
|
},
|
|
657
660
|
|
|
661
|
+
/**
|
|
662
|
+
* @typedef {Object} sap.ui.core.routing.RouteInfo
|
|
663
|
+
* @property {string} name The route name
|
|
664
|
+
* @property {Object.<string, string>} arguments The route data
|
|
665
|
+
* @public
|
|
666
|
+
*/
|
|
667
|
+
|
|
658
668
|
/**
|
|
659
669
|
* Returns a route info object containing the name and arguments of the route
|
|
660
670
|
* which matches the given hash or <code>undefined</code>.
|
|
661
671
|
*
|
|
662
672
|
* @param {string} sHash The hash to be matched
|
|
663
|
-
* @returns {
|
|
673
|
+
* @returns {sap.ui.core.routing.RouteInfo|undefined} An object containing the route <code>name</code> and the <code>arguments</code> or <code>undefined</code>
|
|
664
674
|
* @public
|
|
665
675
|
* @since 1.75
|
|
666
676
|
*/
|
|
@@ -511,6 +511,32 @@ sap.ui.define([
|
|
|
511
511
|
return this;
|
|
512
512
|
},
|
|
513
513
|
|
|
514
|
+
/**
|
|
515
|
+
* Resumes the targets which are specified by the parameter
|
|
516
|
+
*
|
|
517
|
+
* @param {string|string[]|object|object[]} vTargets The key of the target
|
|
518
|
+
* or an object which has the key of the target under property 'name' as
|
|
519
|
+
* specified in the {@link #constructor}. To suspend multiple targets you
|
|
520
|
+
* may also pass an array of keys or objects which have the key saved
|
|
521
|
+
* under the 'name' property
|
|
522
|
+
* @return {sap.ui.core.routing.Targets} The 'this' for call chaining
|
|
523
|
+
* @private
|
|
524
|
+
*/
|
|
525
|
+
resume : function (vTargets) {
|
|
526
|
+
var aTargetsInfo = this._alignTargetsInfo(vTargets);
|
|
527
|
+
|
|
528
|
+
aTargetsInfo.forEach(function(oTargetInfo) {
|
|
529
|
+
var sTargetName = oTargetInfo.name;
|
|
530
|
+
var oTarget = this.getTarget(sTargetName);
|
|
531
|
+
|
|
532
|
+
if (oTarget) {
|
|
533
|
+
oTarget.resume();
|
|
534
|
+
}
|
|
535
|
+
}.bind(this));
|
|
536
|
+
|
|
537
|
+
return this;
|
|
538
|
+
},
|
|
539
|
+
|
|
514
540
|
/**
|
|
515
541
|
* Will be fired when a target is displayed.
|
|
516
542
|
*
|
|
@@ -35,12 +35,15 @@ sap.ui.define(["sap/base/Log", "sap/base/util/extend", "sap/ui/core/Component"],
|
|
|
35
35
|
oTargetData,
|
|
36
36
|
oCurrentPromise,
|
|
37
37
|
aAlignedTargets,
|
|
38
|
-
bRepeated =
|
|
38
|
+
bRepeated = (oRouter._oMatchedRoute === this);
|
|
39
39
|
|
|
40
40
|
oRouter._stopWaitingTitleChangedFromChild();
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
|
|
42
|
+
if (oRouter._oMatchedRoute) {
|
|
43
|
+
// clear the dynamicTarget of the previous matched route
|
|
44
|
+
delete oRouter._oMatchedRoute._oConfig.dynamicTarget;
|
|
43
45
|
}
|
|
46
|
+
|
|
44
47
|
oRouter._oMatchedRoute = this;
|
|
45
48
|
oRouter._bMatchingProcessStarted = true;
|
|
46
49
|
|
|
@@ -82,6 +82,32 @@ sap.ui.define([
|
|
|
82
82
|
Log.warning("The target with name '" + this._oOptions._name + "' can't be suspended because it's being loaded or not loaded yet");
|
|
83
83
|
}
|
|
84
84
|
|
|
85
|
+
return this;
|
|
86
|
+
},
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Resumes the object which is loaded by the target.
|
|
90
|
+
*
|
|
91
|
+
* Currently this function initializes the router of the component without parsing the current hash when
|
|
92
|
+
* the object which is loaded by this target is an instance of
|
|
93
|
+
* UIComponent.
|
|
94
|
+
*
|
|
95
|
+
* @return {sap.ui.core.routing.Target} The 'this' to chain the call
|
|
96
|
+
* @private
|
|
97
|
+
*/
|
|
98
|
+
resume: function() {
|
|
99
|
+
if (this._oParent) {
|
|
100
|
+
this._oParent.resume();
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
if (this._isLoaded()) {
|
|
104
|
+
var oObject = this._get(),
|
|
105
|
+
oRouter;
|
|
106
|
+
|
|
107
|
+
if (oObject.isA("sap.ui.core.UIComponent") && (oRouter = oObject.getRouter()) && oObject.hasNativeRouter()) {
|
|
108
|
+
oRouter.initialize(true);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
85
111
|
|
|
86
112
|
return this;
|
|
87
113
|
},
|
|
@@ -380,7 +406,7 @@ sap.ui.define([
|
|
|
380
406
|
bIsComponentTarget = oOptions.type === "Component",
|
|
381
407
|
bHasPlaceholderConfig = false,
|
|
382
408
|
oPlaceholderConfig = oTargetCreateInfo.placeholder || oOptions.placeholder || {},
|
|
383
|
-
pPlaceholder;
|
|
409
|
+
pPlaceholder = Promise.resolve();
|
|
384
410
|
|
|
385
411
|
if (Placeholder.hasProviders()) {
|
|
386
412
|
Object.assign(oPlaceholderConfig, Placeholder.getPlaceholderFromProviders({
|
|
@@ -452,13 +478,11 @@ sap.ui.define([
|
|
|
452
478
|
});
|
|
453
479
|
}
|
|
454
480
|
|
|
455
|
-
if (oPlaceholderConfig.placeholder) {
|
|
481
|
+
if (oPlaceholderConfig.placeholder && sap.ui.getCore().getConfiguration().getPlaceholder()) {
|
|
456
482
|
pPlaceholder = this.showPlaceholder(oPlaceholderConfig);
|
|
457
483
|
}
|
|
458
484
|
}
|
|
459
485
|
|
|
460
|
-
pPlaceholder = pPlaceholder || Promise.resolve();
|
|
461
|
-
|
|
462
486
|
// wait for placeholder to load
|
|
463
487
|
return pPlaceholder.then(function(sPlaceholderContent) {
|
|
464
488
|
// returning view info object
|
|
@@ -50,6 +50,21 @@ sap.ui.define(["sap/base/Log"], function(Log) {
|
|
|
50
50
|
return this;
|
|
51
51
|
},
|
|
52
52
|
|
|
53
|
+
/**
|
|
54
|
+
* Resumes the object which is loaded by the target.
|
|
55
|
+
*
|
|
56
|
+
* Currently this function doesn't do anything because the sync
|
|
57
|
+
* version of the Target can only load Views but no Components.
|
|
58
|
+
*
|
|
59
|
+
* @return {sap.ui.core.routing.Target} The 'this' to chain the call
|
|
60
|
+
* @private
|
|
61
|
+
*/
|
|
62
|
+
resume : function () {
|
|
63
|
+
// the sync target can only load view and not component
|
|
64
|
+
// therefore it's not needed to do anything in this function
|
|
65
|
+
return this;
|
|
66
|
+
},
|
|
67
|
+
|
|
53
68
|
/**
|
|
54
69
|
* Places the target on the screen
|
|
55
70
|
*
|
|
@@ -106,8 +106,58 @@ sap.ui.define(["sap/ui/support/library", "./CoreHelper.support", "sap/ui/thirdpa
|
|
|
106
106
|
}
|
|
107
107
|
};
|
|
108
108
|
|
|
109
|
+
/**
|
|
110
|
+
* Checks if the corresponding Component or Library of a Component is already loaded in case the Component is embeddedBy a resource.
|
|
111
|
+
*/
|
|
112
|
+
var oMissingEmbeddedByLibrary = {
|
|
113
|
+
id: "embeddedByLibNotLoaded",
|
|
114
|
+
audiences: [Audiences.Application],
|
|
115
|
+
categories: [Categories.Performance],
|
|
116
|
+
enabled: true,
|
|
117
|
+
minversion: "1.97",
|
|
118
|
+
title: "Embedding Component or Library not loaded",
|
|
119
|
+
description: "Checks if the corresponding Component or Library of a Component is already loaded in case the Component is embedded by a resource.",
|
|
120
|
+
resolution: "Before using a Component embedded by a Library or another Component, it's necessary to load the embedding Library or Component in advance. " +
|
|
121
|
+
"The 'sap.app/embeddedBy' property must be relative path inside the deployment unit (library or component).",
|
|
122
|
+
resolutionurls: [],
|
|
123
|
+
check: function(oIssueManager) {
|
|
124
|
+
var oRegisteredComponents = {}, sComponentName;
|
|
125
|
+
var filterComponents = function (sComponentName) {
|
|
126
|
+
return function (oComponent) {
|
|
127
|
+
return oComponent.getManifestObject().getEntry("/sap.app/id") === sComponentName;
|
|
128
|
+
};
|
|
129
|
+
};
|
|
130
|
+
var createIssue = function (oComponentWithMissingEmbeddedBy) {
|
|
131
|
+
return function (oComponent) {
|
|
132
|
+
oIssueManager.addIssue({
|
|
133
|
+
severity: Severity.High,
|
|
134
|
+
details: oComponentWithMissingEmbeddedBy.message,
|
|
135
|
+
context: {
|
|
136
|
+
id: oComponent.getId()
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
};
|
|
140
|
+
};
|
|
141
|
+
|
|
142
|
+
Log.getLogEntries().forEach(function(oLogEntry) {
|
|
143
|
+
var oRegexGetComponentName = /^Component '([a-zA-Z0-9\.]*)'.*$/;
|
|
144
|
+
if (oLogEntry.component === "sap.ui.core.Component#embeddedBy") {
|
|
145
|
+
oRegisteredComponents[oRegexGetComponentName.exec(oLogEntry.message)[1]] = oLogEntry;
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
|
|
149
|
+
for (sComponentName in oRegisteredComponents) {
|
|
150
|
+
if (Object.hasOwnProperty.call(oRegisteredComponents, sComponentName)) {
|
|
151
|
+
var aComponents = sap.ui.core.Component.registry.filter(filterComponents(sComponentName));
|
|
152
|
+
aComponents.forEach(createIssue(oRegisteredComponents[sComponentName]));
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
|
|
109
158
|
return [
|
|
110
159
|
oEventBusLogs,
|
|
111
|
-
oErrorLogs
|
|
160
|
+
oErrorLogs,
|
|
161
|
+
oMissingEmbeddedByLibrary
|
|
112
162
|
];
|
|
113
163
|
}, true);
|
|
@@ -42,10 +42,7 @@ sap.ui.define([
|
|
|
42
42
|
var aControls = oScope.getElements().filter(function (oElement) { return oElement.isA("sap.ui.core.Control"); });
|
|
43
43
|
|
|
44
44
|
aControls.forEach(function (oControl) {
|
|
45
|
-
|
|
46
|
-
// Due to the possibility of mixing XHTML and UI5 content in the XML content,
|
|
47
|
-
// the XMLViewRenderer cannot be migrated fully to API version 2 yet.
|
|
48
|
-
if (RenderManager.getApiVersion(oControl.getRenderer()) < 2 && !oControl.isA("sap.ui.core.mvc.XMLView")) {
|
|
45
|
+
if (RenderManager.getApiVersion(oControl.getRenderer()) < 2) {
|
|
49
46
|
var sControlName = oControl.getMetadata().getName();
|
|
50
47
|
|
|
51
48
|
oIssueManager.addIssue({
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
/**
|
|
7
7
|
* Defines support rules related to the view.
|
|
8
8
|
*/
|
|
9
|
-
sap.ui.define(["sap/ui/support/library", "sap/ui/core/Element", "sap/ui/thirdparty/jquery", "sap/base/util/isEmptyObject", "sap/ui/base/DataType"],
|
|
10
|
-
function(SupportLib, Element, jQuery, isEmptyObject, DataType) {
|
|
9
|
+
sap.ui.define(["sap/base/Log", "sap/ui/support/library", "sap/ui/core/Element", "sap/ui/thirdparty/jquery", "sap/base/util/isEmptyObject", "sap/ui/base/DataType"],
|
|
10
|
+
function(Log, SupportLib, Element, jQuery, isEmptyObject, DataType) {
|
|
11
11
|
"use strict";
|
|
12
12
|
|
|
13
13
|
// shortcuts
|
|
@@ -103,52 +103,20 @@ sap.ui.define(["sap/ui/support/library", "sap/ui/core/Element", "sap/ui/thirdpar
|
|
|
103
103
|
title: "Control tag in XML view starts with lower case",
|
|
104
104
|
description: "Control tags with lower case cannot be loaded in Linux-based systems",
|
|
105
105
|
resolution: "Start the Control tag with upper case",
|
|
106
|
-
resolutionurls: [
|
|
106
|
+
resolutionurls: [{
|
|
107
|
+
text: "Documentation: SAPUI5 Control Development Guidelines",
|
|
108
|
+
href: "https://sapui5.hana.ondemand.com/#/topic/4549da61e2d949d6a3d20ad8a9d17a6f"
|
|
109
|
+
}],
|
|
107
110
|
check: function (oIssueManager, oCoreFacade, oScope) {
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
var aAggregationsOfElements = oScope.getElements().map(
|
|
111
|
-
function (oElement) {
|
|
112
|
-
return Object.keys(oElement.getMetadata().getAllAggregations());
|
|
113
|
-
}
|
|
114
|
-
);
|
|
115
|
-
//flatten array of arrays and filter duplicates
|
|
116
|
-
var aAggregations = aAggregationsOfElements.reduce(
|
|
117
|
-
function(a, b) {
|
|
118
|
-
return a.concat(b);
|
|
119
|
-
}).filter(
|
|
120
|
-
function (x, i, a) {
|
|
121
|
-
return a.indexOf(x) === i;
|
|
122
|
-
});
|
|
123
|
-
|
|
124
|
-
var aXMLViews = oScope.getElements().filter(function (oControl) {
|
|
125
|
-
return oControl.getMetadata().getName() === "sap.ui.core.mvc.XMLView";
|
|
111
|
+
var aRelevantLogMessages = Log.getLogEntries().filter(function(oEntry) {
|
|
112
|
+
return oEntry.component === "sap.ui.core.XMLTemplateProcessor#lowerCase";
|
|
126
113
|
});
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
_getTags(oXcontent.children[i]);
|
|
134
|
-
}
|
|
135
|
-
};
|
|
136
|
-
|
|
137
|
-
_getTags(oXMLView._xContent);
|
|
138
|
-
aLocalName = jQuery.uniqueSort(aLocalName);
|
|
139
|
-
|
|
140
|
-
aLocalName.forEach(function (sTag) {
|
|
141
|
-
var sFirstLetter = sTag.charAt(0);
|
|
142
|
-
// check for lowercase, aggregations are excluded
|
|
143
|
-
if ((sFirstLetter.toLowerCase() === sFirstLetter) && !aAggregations.includes(sTag)) {
|
|
144
|
-
var sViewName = oXMLView.getViewName().split("\.").pop();
|
|
145
|
-
oIssueManager.addIssue({
|
|
146
|
-
severity: Severity.High,
|
|
147
|
-
details: "View '" + sViewName + "' (" + oXMLView.getId() + ") contains a Control tag that starts with lower case '" + sTag + "'",
|
|
148
|
-
context: {
|
|
149
|
-
id: oXMLView.getId()
|
|
150
|
-
}
|
|
151
|
-
});
|
|
114
|
+
aRelevantLogMessages.forEach(function(oMessage) {
|
|
115
|
+
oIssueManager.addIssue({
|
|
116
|
+
severity: Severity.High,
|
|
117
|
+
details: oMessage.message,
|
|
118
|
+
context: {
|
|
119
|
+
id: oMessage.details
|
|
152
120
|
}
|
|
153
121
|
});
|
|
154
122
|
});
|
|
@@ -26,7 +26,7 @@ sap.ui.define([
|
|
|
26
26
|
* @class
|
|
27
27
|
* A SearchProvider which uses the OpenSearch protocol (either JSON or XML).
|
|
28
28
|
* @extends sap.ui.core.search.SearchProvider
|
|
29
|
-
* @version 1.
|
|
29
|
+
* @version 1.97.0
|
|
30
30
|
*
|
|
31
31
|
* @public
|
|
32
32
|
* @alias sap.ui.core.search.OpenSearchProvider
|
|
@@ -23,7 +23,7 @@ sap.ui.define(['sap/ui/core/Element', "sap/base/Log", 'sap/ui/core/library'],
|
|
|
23
23
|
*
|
|
24
24
|
* Do not create instances of this class, but use a concrete subclass instead.
|
|
25
25
|
* @extends sap.ui.core.Element
|
|
26
|
-
* @version 1.
|
|
26
|
+
* @version 1.97.0
|
|
27
27
|
*
|
|
28
28
|
* @public
|
|
29
29
|
* @alias sap.ui.core.search.SearchProvider
|
|
@@ -83,7 +83,7 @@ sap.ui.define(['sap/ui/base/Object', 'sap/ui/core/service/Service', "sap/base/as
|
|
|
83
83
|
*
|
|
84
84
|
* @extends sap.ui.base.Object
|
|
85
85
|
* @author SAP SE
|
|
86
|
-
* @version 1.
|
|
86
|
+
* @version 1.97.0
|
|
87
87
|
* @alias sap.ui.core.service.ServiceFactory
|
|
88
88
|
* @private
|
|
89
89
|
* @ui5-restricted sap.ushell
|
|
@@ -17,7 +17,7 @@ sap.ui.define(['sap/ui/base/Object', "sap/ui/thirdparty/jquery", "sap/base/util/
|
|
|
17
17
|
*
|
|
18
18
|
* @abstract
|
|
19
19
|
* @extends sap.ui.base.Object
|
|
20
|
-
* @version 1.
|
|
20
|
+
* @version 1.97.0
|
|
21
21
|
* @private
|
|
22
22
|
* @ui5-restricted
|
|
23
23
|
* @alias sap.ui.core.support.Plugin
|
|
@@ -183,7 +183,7 @@ sap.ui.define(['sap/ui/base/Object', "sap/ui/thirdparty/jquery", "sap/base/util/
|
|
|
183
183
|
*
|
|
184
184
|
* A <link> tag will be added to the head of the HTML page, referring to the given
|
|
185
185
|
* CSS resource. The URL of the resource is determined from the given resource name
|
|
186
|
-
* by calling {@link
|
|
186
|
+
* by calling {@link sap.ui.require.toUrl}.
|
|
187
187
|
*
|
|
188
188
|
* A plugin should call this method only when it is {@link #runsAsToolPlugin running inside the tool window}.
|
|
189
189
|
*
|
|
@@ -120,7 +120,6 @@ sap.ui.define([
|
|
|
120
120
|
metadata = options.metadata,
|
|
121
121
|
executionScope = options.executionScope;
|
|
122
122
|
|
|
123
|
-
// private API provided by jquery.sap.global
|
|
124
123
|
RuleAnalyzer.analyze(executionScope, rules || preset, metadata).then(function () {
|
|
125
124
|
var analysisHistory = RuleAnalyzer.getAnalysisHistory(),
|
|
126
125
|
lastAnalysis = { issues: [] };
|
|
@@ -26,7 +26,7 @@ sap.ui.define(['sap/ui/base/EventProvider', './Plugin', "sap/base/util/UriParame
|
|
|
26
26
|
* @class This class provides the support tool functionality of UI5. This class is internal and all its functions must not be used by an application.
|
|
27
27
|
*
|
|
28
28
|
* @extends sap.ui.base.EventProvider
|
|
29
|
-
* @version 1.
|
|
29
|
+
* @version 1.97.0
|
|
30
30
|
* @private
|
|
31
31
|
* @alias sap.ui.core.support.Support
|
|
32
32
|
*/
|