@openui5/sap.ui.core 1.93.3 → 1.96.2
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 +13 -2
- package/.reuse/dep5 +6 -11
- package/THIRDPARTY.txt +10 -16
- package/package.json +1 -1
- package/src/jquery.sap.global.js +5 -2
- package/src/jquery.sap.properties.js +1 -1
- package/src/jquery.sap.resources.js +1 -1
- package/src/jquery.sap.script.js +1 -1
- package/src/jquery.sap.storage.js +3 -3
- package/src/jquery.sap.stubs.js +2 -1
- package/src/jquery.sap.trace.js +2 -1
- package/src/sap/base/i18n/ResourceBundle.js +6 -2
- package/src/sap/base/strings/whitespaceReplacer.js +52 -0
- 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 +37 -42
- package/src/sap/ui/Global.js +8 -7
- 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/ExpressionParser.js +9 -6
- package/src/sap/ui/base/Interface.js +3 -49
- package/src/sap/ui/base/ManagedObject.js +12 -7
- 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 +49 -4
- package/src/sap/ui/base/ObjectPool.js +1 -1
- package/src/sap/ui/base/syncXHRFix.js +2 -1
- package/src/sap/ui/core/.library +5 -5
- package/src/sap/ui/core/AppCacheBuster.js +4 -4
- package/src/sap/ui/core/BusyIndicator.js +1 -11
- package/src/sap/ui/core/Component.js +300 -140
- package/src/sap/ui/core/ComponentContainer.js +24 -8
- package/src/sap/ui/core/ComponentMetadata.js +14 -3
- 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 +1 -1
- package/src/sap/ui/core/Core.js +103 -25
- package/src/sap/ui/core/CustomData.js +1 -1
- package/src/sap/ui/core/CustomizingConfiguration.js +35 -260
- package/src/sap/ui/core/DeclarativeSupport.js +3 -2
- package/src/sap/ui/core/Element.js +1 -1
- package/src/sap/ui/core/ElementMetadata.js +4 -2
- package/src/sap/ui/core/EnabledPropagator.js +91 -73
- package/src/sap/ui/core/EventBus.js +1 -1
- package/src/sap/ui/core/ExtensionPoint.js +7 -14
- package/src/sap/ui/core/Fragment.js +30 -32
- 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 +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 +1 -1
- package/src/sap/ui/core/Manifest.js +4 -61
- 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 +28 -15
- package/src/sap/ui/core/RenderManager.js +36 -6
- 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 +2 -2
- package/src/sap/ui/core/SeparatorItem.js +1 -1
- package/src/sap/ui/core/ShortcutHintsMixin.js +14 -7
- 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 +42 -16
- 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 +116 -41
- package/src/sap/ui/core/_IconRegistry.js +1148 -0
- package/src/sap/ui/core/delegate/ItemNavigation.js +1 -1
- package/src/sap/ui/core/delegate/ScrollEnablement.js +6 -3
- 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 +2 -2
- 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 +73 -221
- package/src/sap/ui/core/hyphenation/HyphenationTestingWords.js +11 -10
- package/src/sap/ui/core/library.js +3 -3
- package/src/sap/ui/core/message/ControlMessageProcessor.js +1 -1
- package/src/sap/ui/core/message/Message.js +1 -1
- package/src/sap/ui/core/message/MessageManager.js +13 -15
- 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_de.properties +1 -1
- package/src/sap/ui/core/messagebundle_fr.properties +1 -1
- 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_th.properties +2 -2
- package/src/sap/ui/core/mvc/Controller.js +38 -19
- 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/History.js +10 -2
- package/src/sap/ui/core/routing/Router.js +8 -1
- package/src/sap/ui/core/routing/Target.js +13 -0
- package/src/sap/ui/core/routing/Targets.js +13 -2
- package/src/sap/ui/core/routing/async/Route.js +1 -1
- package/src/sap/ui/core/routing/async/Target.js +353 -259
- 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/BootSupportTool.js +11 -0
- package/src/sap/ui/core/support/InteractionTree.css +4 -0
- package/src/sap/ui/core/support/Plugin.js +1 -1
- package/src/sap/ui/core/support/Support.js +1 -1
- package/src/sap/ui/core/support/ViewInfo.css +599 -0
- package/src/sap/ui/core/support/controls/InteractionTree.js +352 -222
- package/src/sap/ui/core/support/controls/ObjectViewer.js +3 -41
- package/src/sap/ui/core/support/controls/TimelineOverview.js +49 -24
- package/src/sap/ui/core/support/controls/TreeViewer.js +12 -58
- package/src/sap/ui/core/support/plugins/ControlTree.js +59 -68
- package/src/sap/ui/core/support/plugins/Debugging.js +9 -11
- package/src/sap/ui/core/support/plugins/Interaction.js +2 -2
- package/src/sap/ui/core/support/plugins/LocalStorage.js +1 -1
- package/src/sap/ui/core/support/plugins/Performance.js +147 -75
- package/src/sap/ui/core/support/plugins/Selector.js +19 -24
- package/src/sap/ui/core/support/plugins/TechInfo.js +5 -5
- package/src/sap/ui/core/support/plugins/Trace.js +95 -32
- package/src/sap/ui/core/support/plugins/ViewInfo.js +9 -73
- package/src/sap/ui/core/support/support.css +109 -14
- package/src/sap/ui/core/support/support.html +6 -2
- package/src/sap/ui/core/support/techinfo/TechnicalInfo.fragment.xml +1 -0
- package/src/sap/ui/core/support/techinfo/TechnicalInfo.js +149 -72
- package/src/sap/ui/core/themes/base/Icon.less +9 -0
- package/src/sap/ui/core/themes/base/fonts/SAP-icons.woff2 +0 -0
- package/src/sap/ui/core/theming/Parameters.js +6 -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 +10 -28
- package/src/sap/ui/core/tmpl/TemplateControl.js +4 -4
- package/src/sap/ui/core/tmpl/_parsePath.js +35 -0
- package/src/sap/ui/core/util/AsyncHintsHelper.js +1 -1
- package/src/sap/ui/core/util/DraftEnabledMockServer.js +9 -4
- 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 +5 -5
- package/src/sap/ui/core/util/MockServerAnnotationsHandler.js +3 -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/BaseTreeModifier.js +136 -63
- package/src/sap/ui/core/util/reflection/JsControlTreeModifier.js +170 -153
- package/src/sap/ui/core/util/reflection/XmlTreeModifier.js +424 -293
- 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 +10 -4
- package/src/sap/ui/debug/DebugEnv.js +3 -4
- package/src/sap/ui/debug/Highlighter.js +8 -2
- package/src/sap/ui/debug/PropertyList.css +55 -0
- package/src/sap/ui/debug/PropertyList.js +111 -182
- package/src/sap/ui/model/Binding.js +174 -118
- package/src/sap/ui/model/ClientContextBinding.js +1 -1
- package/src/sap/ui/model/ClientListBinding.js +1 -3
- package/src/sap/ui/model/ClientModel.js +4 -4
- 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 +180 -117
- package/src/sap/ui/model/MetaModel.js +4 -9
- package/src/sap/ui/model/Model.js +345 -294
- 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 +251 -100
- package/src/sap/ui/model/TreeBindingCompatibilityAdapter.js +16 -9
- package/src/sap/ui/model/TreeBindingUtils.js +1 -0
- package/src/sap/ui/model/Type.js +1 -1
- package/src/sap/ui/model/analytics/AnalyticalBinding.js +8 -4
- package/src/sap/ui/model/analytics/AnalyticalTreeBindingAdapter.js +1 -1
- 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 +34 -25
- 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 +24 -15
- package/src/sap/ui/model/json/JSONPropertyBinding.js +4 -3
- 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 +23 -15
- package/src/sap/ui/model/message/MessagePropertyBinding.js +2 -2
- package/src/sap/ui/model/odata/AnnotationHelper.js +1 -1
- package/src/sap/ui/model/odata/AnnotationParser.js +1 -1
- 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 +1 -1
- package/src/sap/ui/model/odata/ODataMessageParser.js +2 -2
- package/src/sap/ui/model/odata/ODataMetaModel.js +5 -3
- package/src/sap/ui/model/odata/ODataMetadata.js +2 -2
- package/src/sap/ui/model/odata/ODataModel.js +8 -7
- package/src/sap/ui/model/odata/ODataPropertyBinding.js +1 -1
- package/src/sap/ui/model/odata/ODataTreeBinding.js +65 -33
- package/src/sap/ui/model/odata/ODataTreeBindingAdapter.js +1 -1
- package/src/sap/ui/model/odata/ODataTreeBindingFlat.js +2 -2
- package/src/sap/ui/model/odata/ODataUtils.js +13 -11
- package/src/sap/ui/model/odata/OperationMode.js +1 -1
- package/src/sap/ui/model/odata/_AnnotationHelperExpression.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/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 +81 -9
- package/src/sap/ui/model/odata/v2/ODataAnnotations.js +3 -3
- package/src/sap/ui/model/odata/v2/ODataContextBinding.js +39 -49
- package/src/sap/ui/model/odata/v2/ODataListBinding.js +236 -73
- package/src/sap/ui/model/odata/v2/ODataModel.js +314 -164
- package/src/sap/ui/model/odata/v2/ODataTreeBinding.js +110 -97
- package/src/sap/ui/model/odata/v2/_CreatedContextsCache.js +129 -0
- package/src/sap/ui/model/odata/v4/Context.js +6 -3
- package/src/sap/ui/model/odata/v4/ODataBinding.js +5 -6
- package/src/sap/ui/model/odata/v4/ODataContextBinding.js +117 -40
- package/src/sap/ui/model/odata/v4/ODataListBinding.js +95 -15
- package/src/sap/ui/model/odata/v4/ODataMetaModel.js +44 -31
- package/src/sap/ui/model/odata/v4/ODataModel.js +86 -78
- package/src/sap/ui/model/odata/v4/ODataParentBinding.js +47 -28
- package/src/sap/ui/model/odata/v4/ODataPropertyBinding.js +11 -7
- package/src/sap/ui/model/odata/v4/_AnnotationHelperExpression.js +10 -3
- package/src/sap/ui/model/odata/v4/lib/_AggregationCache.js +8 -1
- package/src/sap/ui/model/odata/v4/lib/_Cache.js +24 -16
- package/src/sap/ui/model/odata/v4/lib/_Helper.js +32 -30
- package/src/sap/ui/model/odata/v4/lib/_Requestor.js +52 -17
- package/src/sap/ui/model/odata/v4/lib/_V2Requestor.js +2 -2
- 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 +70 -41
- package/src/sap/ui/model/xml/XMLPropertyBinding.js +4 -4
- package/src/sap/ui/model/xml/XMLTreeBinding.js +5 -4
- package/src/sap/ui/performance/trace/Interaction.js +30 -15
- package/src/sap/ui/performance/trace/initTraces.js +1 -1
- 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/Drag.js +6 -2
- package/src/sap/ui/test/actions/Drop.js +6 -2
- package/src/sap/ui/test/actions/EnterText.js +6 -0
- package/src/sap/ui/test/actions/Press.js +6 -0
- package/src/sap/ui/test/actions/Scroll.js +6 -0
- package/src/sap/ui/test/autowaiter/_resourceWaiter.js +4 -4
- package/src/sap/ui/test/launchers/componentLauncher.js +0 -4
- package/src/sap/ui/test/matchers/I18NText.js +29 -11
- package/src/sap/ui/test/opaQunit.js +5 -0
- package/src/sap/ui/thirdparty/crossroads.js +6 -4
- 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 +2 -20
- package/src/sap/ui/util/Storage.js +1 -1
- package/src/sap/ui/util/isCrossOriginURL.js +16 -6
- package/src/sap-ui-core-nojQuery.js +1 -1
- package/src/sap-ui-core.js +1 -1
- package/src/sap-ui-debug.js +3 -17
- package/ui5.yaml +5 -2
- package/src/sap/ui/core/support/plugins/MessageTest.js +0 -96
- package/src/sap/ui/thirdparty/hyphenopoly/hyphenopoly.bundle.js +0 -860
|
@@ -46,7 +46,7 @@ sap.ui.define([
|
|
|
46
46
|
* @extends sap.ui.base.EventProvider
|
|
47
47
|
*
|
|
48
48
|
* @author SAP SE
|
|
49
|
-
* @version 1.
|
|
49
|
+
* @version 1.96.2
|
|
50
50
|
*
|
|
51
51
|
* @public
|
|
52
52
|
* @alias sap.ui.core.message.MessageManager
|
|
@@ -404,15 +404,14 @@ sap.ui.define([
|
|
|
404
404
|
* @public
|
|
405
405
|
*/
|
|
406
406
|
MessageManager.prototype.registerObject = function(oObject, bHandleValidation) {
|
|
407
|
-
|
|
408
|
-
if (!oObject instanceof ManagedObject) {
|
|
407
|
+
if (!(oObject instanceof ManagedObject)) {
|
|
409
408
|
Log.error(this + " : " + oObject.toString() + " is not an instance of sap.ui.base.ManagedObject");
|
|
410
|
-
|
|
409
|
+
} else {
|
|
410
|
+
oObject.attachValidationSuccess(bHandleValidation, this._handleSuccess, this);
|
|
411
|
+
oObject.attachValidationError(bHandleValidation, this._handleError, this);
|
|
412
|
+
oObject.attachParseError(bHandleValidation, this._handleError, this);
|
|
413
|
+
oObject.attachFormatError(bHandleValidation, this._handleError, this);
|
|
411
414
|
}
|
|
412
|
-
oObject.attachValidationSuccess(bHandleValidation, this._handleSuccess, this);
|
|
413
|
-
oObject.attachValidationError(bHandleValidation, this._handleError, this);
|
|
414
|
-
oObject.attachParseError(bHandleValidation, this._handleError, this);
|
|
415
|
-
oObject.attachFormatError(bHandleValidation, this._handleError, this);
|
|
416
415
|
};
|
|
417
416
|
|
|
418
417
|
/**
|
|
@@ -422,15 +421,14 @@ sap.ui.define([
|
|
|
422
421
|
* @public
|
|
423
422
|
*/
|
|
424
423
|
MessageManager.prototype.unregisterObject = function(oObject) {
|
|
425
|
-
|
|
426
|
-
if (!oObject instanceof ManagedObject) {
|
|
424
|
+
if (!(oObject instanceof ManagedObject)) {
|
|
427
425
|
Log.error(this + " : " + oObject.toString() + " is not an instance of sap.ui.base.ManagedObject");
|
|
428
|
-
|
|
426
|
+
} else {
|
|
427
|
+
oObject.detachValidationSuccess(this._handleSuccess, this);
|
|
428
|
+
oObject.detachValidationError(this._handleError, this);
|
|
429
|
+
oObject.detachParseError(this._handleError, this);
|
|
430
|
+
oObject.detachFormatError(this._handleError, this);
|
|
429
431
|
}
|
|
430
|
-
oObject.detachValidationSuccess(this._handleSuccess, this);
|
|
431
|
-
oObject.detachValidationError(this._handleError, this);
|
|
432
|
-
oObject.detachParseError(this._handleError, this);
|
|
433
|
-
oObject.detachFormatError(this._handleError, this);
|
|
434
432
|
};
|
|
435
433
|
|
|
436
434
|
/**
|
|
@@ -176,7 +176,7 @@ Icon.move=Verschieben
|
|
|
176
176
|
Icon.multi-select=Mehrfachauswahl
|
|
177
177
|
Icon.nav-back=Zur\u00FCck navigieren
|
|
178
178
|
Icon.overflow=Mehr
|
|
179
|
-
Icon.redo=
|
|
179
|
+
Icon.redo=Wiederherstellen
|
|
180
180
|
Icon.refresh=Aktualisieren
|
|
181
181
|
Icon.resize=Gr\u00F6\u00DFe \u00E4ndern
|
|
182
182
|
Icon.resize-horizontal=Gr\u00F6\u00DFe horizontal \u00E4ndern
|
|
@@ -3,7 +3,7 @@ SAPUI5_FRIDAY=Friday
|
|
|
3
3
|
SAPUI5_GM_ZSTEP=Zoom step {0}
|
|
4
4
|
|
|
5
5
|
VALUE_STATE_ERROR=Entr\u00E9e non valide
|
|
6
|
-
VALUE_STATE_WARNING=Avertissement \
|
|
6
|
+
VALUE_STATE_WARNING=Avertissement \u00E9mis
|
|
7
7
|
VALUE_STATE_SUCCESS=Entr\u00E9e correctement valid\u00E9e
|
|
8
8
|
VALUE_STATE_INFORMATION=Entr\u00E9e pour information
|
|
9
9
|
|
|
@@ -174,7 +174,7 @@ Icon.message-success=Pomy\u015Blnie
|
|
|
174
174
|
Icon.message-warning=Ostrze\u017Cenie
|
|
175
175
|
Icon.move=Przesuwanie
|
|
176
176
|
Icon.multi-select=Wyb\u00F3r wielokrotny
|
|
177
|
-
Icon.nav-back=
|
|
177
|
+
Icon.nav-back=Cofnij
|
|
178
178
|
Icon.overflow=Wi\u0119cej
|
|
179
179
|
Icon.redo=Powt\u00F3rz
|
|
180
180
|
Icon.refresh=Od\u015Bwie\u017C
|
|
@@ -187,8 +187,8 @@ Icon.search=\u0E04\u0E49\u0E19\u0E2B\u0E32
|
|
|
187
187
|
Icon.settings=\u0E01\u0E32\u0E23\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E04\u0E48\u0E32
|
|
188
188
|
Icon.show=\u0E41\u0E2A\u0E14\u0E07
|
|
189
189
|
Icon.sort=\u0E08\u0E31\u0E14\u0E40\u0E23\u0E35\u0E22\u0E07
|
|
190
|
-
Icon.sort-ascending=\u0E40\u0E23\u0E35\u0E22\u0E07\
|
|
191
|
-
Icon.sort-descending=\u0E40\u0E23\u0E35\u0E22\u0E07\
|
|
190
|
+
Icon.sort-ascending=\u0E08\u0E31\u0E14\u0E40\u0E23\u0E35\u0E22\u0E07\u0E08\u0E32\u0E01\u0E19\u0E49\u0E2D\u0E22\u0E44\u0E1B\u0E2B\u0E32\u0E21\u0E32\u0E01
|
|
191
|
+
Icon.sort-descending=\u0E08\u0E31\u0E14\u0E40\u0E23\u0E35\u0E22\u0E07\u0E08\u0E32\u0E01\u0E21\u0E32\u0E01\u0E44\u0E1B\u0E2B\u0E32\u0E19\u0E49\u0E2D\u0E22
|
|
192
192
|
Icon.synchronize=\u0E0B\u0E34\u0E07\u0E42\u0E04\u0E23\u0E44\u0E19\u0E0B\u0E4C
|
|
193
193
|
Icon.undo=\u0E40\u0E25\u0E34\u0E01\u0E17\u0E33
|
|
194
194
|
Icon.up=\u0E02\u0E36\u0E49\u0E19
|
|
@@ -294,7 +294,7 @@ sap.ui.define([
|
|
|
294
294
|
}
|
|
295
295
|
});
|
|
296
296
|
} else if (!ControllerClass) {
|
|
297
|
-
ControllerClass = sap.ui.requireSync(sControllerName);
|
|
297
|
+
ControllerClass = sap.ui.requireSync(sControllerName); // legacy-relevant: Sync path
|
|
298
298
|
return resolveClass(ControllerClass);
|
|
299
299
|
} else {
|
|
300
300
|
return ControllerClass;
|
|
@@ -736,30 +736,49 @@ sap.ui.define([
|
|
|
736
736
|
};
|
|
737
737
|
|
|
738
738
|
/**
|
|
739
|
-
* Loads a Fragment by {@link sap.ui.core.Fragment.load}.
|
|
740
|
-
* the fragment content creation is done, the controller takes care of an asynchronous destroy of the
|
|
741
|
-
* fragment content.
|
|
742
|
-
* Otherwise the content must be destroyed by the caller as usual.
|
|
743
|
-
* If the controller has an owner component, it is passed to the fragment content.
|
|
744
|
-
* The fragment content will be prefixed with the view ID to avoid duplicate ID issues.
|
|
745
|
-
* The prefixing is enabled by default and can be switched off by the <code>autoPrefixId</code> option.
|
|
739
|
+
* Loads a Fragment by {@link sap.ui.core.Fragment.load}.
|
|
746
740
|
*
|
|
747
|
-
*
|
|
741
|
+
* The fragment content will be added to the <code>dependents</code> aggregation of the view by default.
|
|
742
|
+
* This behavior can be suppressed by setting <code>mOptions.addToDependents</code> to false.
|
|
748
743
|
*
|
|
749
|
-
*
|
|
750
|
-
*
|
|
744
|
+
* The controller is passed to the Fragment by default, so the (event handler) methods referenced in the
|
|
745
|
+
* Fragment will be called on this Controller.
|
|
751
746
|
*
|
|
752
|
-
*
|
|
753
|
-
*
|
|
747
|
+
* If the controller has an owner component, it is passed to the fragment content.
|
|
748
|
+
* By default the fragment content will be prefixed with the view ID to avoid duplicate ID issues.
|
|
749
|
+
* The prefixing can be switched off with the <code>autoPrefixId</code> option.
|
|
754
750
|
*
|
|
755
|
-
*
|
|
756
|
-
*
|
|
751
|
+
* When <code>autoPrefixId</code> is enabled, the fragment content can be accessed by calling
|
|
752
|
+
* {@link sap.ui.core.mvc.Controller.byId}.
|
|
757
753
|
*
|
|
758
|
-
*
|
|
759
|
-
* the
|
|
754
|
+
* <b>Destroy behavior</b>:
|
|
755
|
+
* Different scenarios concerning the destruction of the fragment's content exist,
|
|
756
|
+
* of which some must be addressed by the caller, while others are handled automatically.
|
|
757
|
+
* <ul>
|
|
758
|
+
* <li>The controller instance is destroyed before the fragment content creation has finished:
|
|
759
|
+
* In this case, the controller instance takes care of asynchronously destroying the fragment content</li>
|
|
760
|
+
* <li>The fragment content is aggregated within a control (e.g. <code>dependents</code> aggregation by default):
|
|
761
|
+
* In this case, the content will be destroyed during the regular destroy lifecycle.</li>
|
|
762
|
+
* <li>The fragment content is not aggregated within a control:
|
|
763
|
+
* In this case, <em>it must be destroyed manually</em> in the exit hook of the controller.</li>
|
|
764
|
+
* </ul>
|
|
760
765
|
*
|
|
761
|
-
*
|
|
762
|
-
*
|
|
766
|
+
* @example <caption>Loading a fragment with no <code>mOptions.id</code> given</caption>
|
|
767
|
+
* // In the following, "this" is an instance of sap.ui.core.mvc.Controller
|
|
768
|
+
* var pFragment = this.loadFragment({
|
|
769
|
+
* name: "myFragment"
|
|
770
|
+
* }).then(function() {
|
|
771
|
+
* var myControl = this.byId("myFragment");
|
|
772
|
+
* }.bind(this));
|
|
773
|
+
*
|
|
774
|
+
* @example <caption>Loading a fragment with an <code>mOptions.id</code> given</caption>
|
|
775
|
+
* // In the following, "this" is an instance of sap.ui.core.mvc.Controller
|
|
776
|
+
* var pFragment = this.loadFragment({
|
|
777
|
+
* name: "myFragment",
|
|
778
|
+
* id: "somePrefix"
|
|
779
|
+
* }).then(function() {
|
|
780
|
+
* var myControl = this.byId("somePrefix--myFragment");
|
|
781
|
+
* }.bind(this));
|
|
763
782
|
*
|
|
764
783
|
* @param {object} mOptions Options regarding fragment loading
|
|
765
784
|
* @param {string} mOptions.name The Fragment name, which must correspond to a Fragment which can be loaded via the module system
|
|
@@ -118,42 +118,40 @@ sap.ui.define(["sap/base/Log", "sap/ui/core/Component"], function(Log, Component
|
|
|
118
118
|
|
|
119
119
|
var aControllerNames = [];
|
|
120
120
|
|
|
121
|
-
if (!sap.ui.getCore().getConfiguration().getDisableCustomizing()) {
|
|
122
|
-
if (oComponent) {
|
|
123
121
|
|
|
124
|
-
|
|
125
|
-
|
|
122
|
+
// lookup config of "sap.ui.controllerExtensions" in Manifest
|
|
123
|
+
var mInstanceSpecificConfig = Component.getCustomizing(oComponent, {
|
|
124
|
+
type: "sap.ui.controllerExtensions",
|
|
125
|
+
name: sControllerName + "#" + sViewId
|
|
126
|
+
});
|
|
126
127
|
|
|
127
|
-
|
|
128
|
-
|
|
128
|
+
// First check for instance-specific extension, if none exists look for base extension
|
|
129
|
+
var aControllerExtConfigs = [];
|
|
129
130
|
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
131
|
+
if (mInstanceSpecificConfig) {
|
|
132
|
+
aControllerExtConfigs.push(mInstanceSpecificConfig);
|
|
133
|
+
} else {
|
|
134
|
+
var mDefaultConfig = Component.getCustomizing(oComponent, {
|
|
135
|
+
type: "sap.ui.controllerExtensions",
|
|
136
|
+
name: sControllerName
|
|
137
|
+
});
|
|
138
|
+
if (mDefaultConfig) {
|
|
139
|
+
aControllerExtConfigs.push(mDefaultConfig);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
141
142
|
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
}
|
|
154
|
-
}
|
|
143
|
+
for (var i = 0; i < aControllerExtConfigs.length; i++) {
|
|
144
|
+
var vControllerExtensions = aControllerExtConfigs[i];
|
|
145
|
+
if (vControllerExtensions) {
|
|
146
|
+
// Normalize the different legacy extension definitions, either:
|
|
147
|
+
// - a string -> "my.ctrl.name"
|
|
148
|
+
// - an object containing a controllerName:string property and/or a controllerNames:string[] property, e.g.
|
|
149
|
+
// { controllerName: "my.ctrl.name0", controllerNames: ["my.ctrl.name1", "my.ctrl.name2"] }
|
|
150
|
+
var sExtControllerName = typeof vControllerExtensions === "string" ? vControllerExtensions : vControllerExtensions.controllerName;
|
|
151
|
+
aControllerNames = aControllerNames.concat(vControllerExtensions.controllerNames || []);
|
|
152
|
+
if (sExtControllerName) {
|
|
153
|
+
aControllerNames.unshift(sExtControllerName);
|
|
155
154
|
}
|
|
156
|
-
|
|
157
155
|
}
|
|
158
156
|
}
|
|
159
157
|
|
|
@@ -187,7 +185,7 @@ sap.ui.define(["sap/base/Log", "sap/ui/core/Component"], function(Log, Component
|
|
|
187
185
|
}, reject);
|
|
188
186
|
});
|
|
189
187
|
} else {
|
|
190
|
-
var ExtensionProviderClass = sap.ui.requireSync(sProviderName);
|
|
188
|
+
var ExtensionProviderClass = sap.ui.requireSync(sProviderName); // legacy-relevant: Sync path
|
|
191
189
|
oProvider = new ExtensionProviderClass();
|
|
192
190
|
mExtensionProvider[sProviderName] = oProvider;
|
|
193
191
|
return oProvider;
|
|
@@ -70,14 +70,14 @@ sap.ui.define([
|
|
|
70
70
|
* If not, we stay compatible and every method prefixed with '-' or 'on' gets private.
|
|
71
71
|
*/
|
|
72
72
|
if (bExtendsController && !bDefinesMethods) {
|
|
73
|
-
|
|
73
|
+
rPrivateCheck = /^_|^on|^init$|^exit$/;
|
|
74
74
|
}
|
|
75
75
|
|
|
76
76
|
/*
|
|
77
77
|
* extend method metadata: make lifecycle hooks public
|
|
78
78
|
*/
|
|
79
79
|
if (bExtendsController && bDefinesMethods) {
|
|
80
|
-
|
|
80
|
+
merge(oStaticInfo.methods, this._defaultLifecycleMethodMetadata);
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
|
|
@@ -107,7 +107,7 @@ sap.ui.define([
|
|
|
107
107
|
}
|
|
108
108
|
for (var m in this._mMethods) {
|
|
109
109
|
if (this.isMethodPublic(m)) {
|
|
110
|
-
|
|
110
|
+
this._aPublicMethods.push(m);
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
113
|
};
|
|
@@ -127,26 +127,26 @@ sap.ui.define([
|
|
|
127
127
|
var mParentMethods = this._oParent._mMethods ? this._oParent._mMethods : {};
|
|
128
128
|
//allow change of visibility but not the other attributes
|
|
129
129
|
for (var sMethod in mParentMethods) {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
130
|
+
if (this._mMethods[sMethod] && !bIsExtension) {
|
|
131
|
+
var bPublic = this._mMethods[sMethod].public;
|
|
132
|
+
//copy parent method definition as final/overrideExecution should not be overridden
|
|
133
|
+
this._mMethods[sMethod] = merge({}, mParentMethods[sMethod]);
|
|
134
|
+
if (bPublic !== undefined) {
|
|
135
|
+
this._mMethods[sMethod].public = bPublic;
|
|
136
|
+
}
|
|
137
|
+
if (!this.isMethodPublic(sMethod) && this._mMethods[sMethod].public !== mParentMethods[sMethod].public) {
|
|
138
|
+
//if visibility changed to private delete from public methods
|
|
139
|
+
this._aAllPublicMethods.splice(this._aAllPublicMethods.indexOf(sMethod), 1);
|
|
140
|
+
}
|
|
141
|
+
} else {
|
|
142
|
+
this._mMethods[sMethod] = mParentMethods[sMethod];
|
|
143
|
+
}
|
|
144
144
|
}
|
|
145
145
|
}
|
|
146
146
|
|
|
147
147
|
//flag each extension as final (but not the class ControllerExtension itself)
|
|
148
148
|
if (this._oParent && this._oParent.isA("sap.ui.core.mvc.ControllerExtension")) {
|
|
149
|
-
|
|
149
|
+
this._bFinal = true;
|
|
150
150
|
}
|
|
151
151
|
};
|
|
152
152
|
|
|
@@ -45,7 +45,7 @@ sap.ui.define([
|
|
|
45
45
|
* @extends sap.ui.core.mvc.View
|
|
46
46
|
*
|
|
47
47
|
* @author SAP SE
|
|
48
|
-
* @version 1.
|
|
48
|
+
* @version 1.96.2
|
|
49
49
|
*
|
|
50
50
|
* @public
|
|
51
51
|
* @since 1.9.2
|
|
@@ -107,7 +107,7 @@ sap.ui.define([
|
|
|
107
107
|
* @ui5-global-only
|
|
108
108
|
*/
|
|
109
109
|
sap.ui.htmlview = function(sId, vView) {
|
|
110
|
-
return sap.ui.view(sId, vView, ViewType.HTML);
|
|
110
|
+
return sap.ui.view(sId, vView, ViewType.HTML); // legacy-relevant
|
|
111
111
|
};
|
|
112
112
|
|
|
113
113
|
/**
|
|
@@ -43,7 +43,7 @@ sap.ui.define([
|
|
|
43
43
|
* @class
|
|
44
44
|
* A View defined using JSON.
|
|
45
45
|
* @extends sap.ui.core.mvc.View
|
|
46
|
-
* @version 1.
|
|
46
|
+
* @version 1.96.2
|
|
47
47
|
*
|
|
48
48
|
* @public
|
|
49
49
|
* @alias sap.ui.core.mvc.JSONView
|
|
@@ -120,7 +120,7 @@ sap.ui.define([
|
|
|
120
120
|
* @ui5-global-only
|
|
121
121
|
*/
|
|
122
122
|
sap.ui.jsonview = function(sId, vView) {
|
|
123
|
-
return sap.ui.view(sId, vView, ViewType.JSON);
|
|
123
|
+
return sap.ui.view(sId, vView, ViewType.JSON); // legacy-relevant
|
|
124
124
|
};
|
|
125
125
|
|
|
126
126
|
/**
|
|
@@ -27,7 +27,7 @@ sap.ui.define([
|
|
|
27
27
|
* @param {object} [mSettings] initial settings for the new control
|
|
28
28
|
*
|
|
29
29
|
* @extends sap.ui.core.mvc.View
|
|
30
|
-
* @version 1.
|
|
30
|
+
* @version 1.96.2
|
|
31
31
|
* @deprecated Since 1.90. Instead use {@link topic:e6bb33d076dc4f23be50c082c271b9f0 Typed Views}
|
|
32
32
|
* by defining the view class with {@link sap.ui.core.mvc.View.extend View.extend} and
|
|
33
33
|
* creating the view instances with {@link sap.ui.core.mvc.View.create View.create}.
|
|
@@ -226,7 +226,7 @@ sap.ui.define([
|
|
|
226
226
|
sap.ui.require([sModuleName], resolve, reject);
|
|
227
227
|
});
|
|
228
228
|
} else {
|
|
229
|
-
sap.ui.requireSync(sModuleName);
|
|
229
|
+
sap.ui.requireSync(sModuleName); // legacy-relevant: Sync path
|
|
230
230
|
}
|
|
231
231
|
}
|
|
232
232
|
// extend 'this' with view from registry which should now or then be available
|
|
@@ -29,7 +29,7 @@ function(View, TemplateViewRenderer, ViewType, Log) {
|
|
|
29
29
|
* @extends sap.ui.core.mvc.View
|
|
30
30
|
*
|
|
31
31
|
* @author SAP SE
|
|
32
|
-
* @version 1.
|
|
32
|
+
* @version 1.96.2
|
|
33
33
|
*
|
|
34
34
|
* @public
|
|
35
35
|
* @deprecated Since version 1.56.0, use {@link sap.ui.core.mvc.XMLView} in combination with
|
|
@@ -71,7 +71,7 @@ function(View, TemplateViewRenderer, ViewType, Log) {
|
|
|
71
71
|
*/
|
|
72
72
|
sap.ui.templateview = function(sId, vView) {
|
|
73
73
|
Log.warning("sap.ui.core.mvc.TemplateView is deprecated. Use XMLView or JSView instead.");
|
|
74
|
-
return sap.ui.view(sId, vView, ViewType.Template);
|
|
74
|
+
return sap.ui.view(sId, vView, ViewType.Template); // legacy-relevant
|
|
75
75
|
};
|
|
76
76
|
|
|
77
77
|
/**
|
|
@@ -61,6 +61,11 @@ sap.ui.define([
|
|
|
61
61
|
* With method {@link #byId}, elements or controls can be found with their view-local ID.
|
|
62
62
|
* Also see {@link topic:91f28be26f4d1014b6dd926db0e91070 "Support for Unique IDs"} in the documentation.
|
|
63
63
|
*
|
|
64
|
+
* <strong>Note: For Views defined using XML markup</strong>
|
|
65
|
+
* On root level, you can only define content for the default aggregation, e.g. without adding the <code><content></code> tag.
|
|
66
|
+
* If you want to specify content for another aggregation of a view like <code>dependents</code>, place it in a child
|
|
67
|
+
* control's dependents aggregation or add it by using {@link sap.ui.core.mvc.XMLView.addDependent}.
|
|
68
|
+
*
|
|
64
69
|
* <h3>View Definition</h3>
|
|
65
70
|
* A view can be defined by {@link sap.ui.core.mvc.View.extend extending} this class and implementing
|
|
66
71
|
* the {@link #createContent} method. The method must return one or many root controls that will be
|
|
@@ -140,7 +145,7 @@ sap.ui.define([
|
|
|
140
145
|
* The default implementation of this method returns <code>false</code>.
|
|
141
146
|
*
|
|
142
147
|
* @extends sap.ui.core.Control
|
|
143
|
-
* @version 1.
|
|
148
|
+
* @version 1.96.2
|
|
144
149
|
*
|
|
145
150
|
* @public
|
|
146
151
|
* @alias sap.ui.core.mvc.View
|
|
@@ -331,7 +336,7 @@ sap.ui.define([
|
|
|
331
336
|
}, reject);
|
|
332
337
|
});
|
|
333
338
|
} else {
|
|
334
|
-
return sap.ui.requireSync(sPreprocessorName);
|
|
339
|
+
return sap.ui.requireSync(sPreprocessorName); // legacy-relevant: Sync path
|
|
335
340
|
}
|
|
336
341
|
} else if (typeof oPreprocessor.preprocessor === "function" && !oPreprocessor.preprocessor.process) {
|
|
337
342
|
oPreprocessorImpl = {
|
|
@@ -448,30 +453,20 @@ sap.ui.define([
|
|
|
448
453
|
if (defaultController) {
|
|
449
454
|
// check for controller replacement
|
|
450
455
|
var Component = sap.ui.require("sap/ui/core/Component");
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
oControllerExtensionCarrier = oOwnerComponent.getExtensionComponent();
|
|
459
|
-
if (!oControllerExtensionCarrier) {
|
|
460
|
-
throw new Error("getExtensionComponent() must return an instance.");
|
|
461
|
-
}
|
|
462
|
-
}
|
|
463
|
-
|
|
464
|
-
var sControllerReplacement = oControllerExtensionCarrier._getManifestEntry("/sap.ui5/extends/extensions/sap.ui.controllerReplacements/" + defaultController, true);
|
|
465
|
-
if (sControllerReplacement) {
|
|
466
|
-
defaultController = typeof sControllerReplacement === "string" ? sControllerReplacement : sControllerReplacement.controllerName;
|
|
467
|
-
}
|
|
456
|
+
if (Component) {
|
|
457
|
+
var sControllerReplacement = Component.getCustomizing(oThis, {
|
|
458
|
+
type: "sap.ui.controllerReplacements",
|
|
459
|
+
name: defaultController
|
|
460
|
+
});
|
|
461
|
+
if (sControllerReplacement) {
|
|
462
|
+
defaultController = typeof sControllerReplacement === "string" ? sControllerReplacement : sControllerReplacement.controllerName;
|
|
468
463
|
}
|
|
469
464
|
}
|
|
470
465
|
// create controller
|
|
471
466
|
if (bAsync) {
|
|
472
467
|
oController = Controller.create({name: defaultController, _viewId: oThis.sId});
|
|
473
468
|
} else {
|
|
474
|
-
oController = sap.ui.controller(defaultController, true, false, oThis.sId);
|
|
469
|
+
oController = sap.ui.controller(defaultController, true, false, oThis.sId); // legacy-relevant: Sync path
|
|
475
470
|
}
|
|
476
471
|
}
|
|
477
472
|
} else if (oController) {
|
|
@@ -543,54 +538,45 @@ sap.ui.define([
|
|
|
543
538
|
initAsyncState(this);
|
|
544
539
|
}
|
|
545
540
|
|
|
546
|
-
var Component = sap.ui.require("sap/ui/core/Component");
|
|
547
|
-
var oOwnerComponent = Component && Component.getOwnerComponentFor(this);
|
|
548
|
-
|
|
549
541
|
// view modifications
|
|
550
542
|
// check if there are custom properties configured for this view, and only if there are, create a settings preprocessor applying these
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
throw new Error("getExtensionComponent() must return an instance.");
|
|
558
|
-
}
|
|
559
|
-
}
|
|
543
|
+
var Component = sap.ui.require("sap/ui/core/Component");
|
|
544
|
+
if (Component) {
|
|
545
|
+
var mCustomSettings = Component.getCustomizing(this, {
|
|
546
|
+
type: "sap.ui.viewModifications",
|
|
547
|
+
name: this.sViewName
|
|
548
|
+
});
|
|
560
549
|
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
Log.warning("Customizing: custom value for property '" + sProperty + "' of control '" + sId + "' in View '" + that.sViewName + "' ignored: only the 'visible' property can be customized.");
|
|
579
|
-
delete oCustomSetting[sProperty];
|
|
580
|
-
}
|
|
550
|
+
if (!isEmptyObject(mCustomSettings)) {
|
|
551
|
+
// NOTE:
|
|
552
|
+
// nested views do not inherit the preprocessor settings function from the parent
|
|
553
|
+
// controls within fragments however do inherit the settings function from the containing view (see Fragment#init)
|
|
554
|
+
this._fnSettingsPreprocessor = function(mSettings) {
|
|
555
|
+
var sId = this.getId();
|
|
556
|
+
if (sId) {
|
|
557
|
+
if (that.isPrefixedId(sId)) {
|
|
558
|
+
sId = sId.substring((that.getId() + "--").length);
|
|
559
|
+
}
|
|
560
|
+
var oCustomSetting = Object.assign({}, mCustomSettings[sId]);
|
|
561
|
+
if (oCustomSetting) {
|
|
562
|
+
// only 'visible' property can be customized
|
|
563
|
+
for (var sProperty in oCustomSetting) {
|
|
564
|
+
if (sProperty !== "visible") {
|
|
565
|
+
Log.warning("Customizing: custom value for property '" + sProperty + "' of control '" + sId + "' in View '" + that.sViewName + "' ignored: only the 'visible' property can be customized.");
|
|
566
|
+
delete oCustomSetting[sProperty];
|
|
581
567
|
}
|
|
582
|
-
Log.info("Customizing: custom value for property 'visible' of control '" + sId + "' in View '" + that.sViewName + "' applied: " + oCustomSetting.visible);
|
|
583
|
-
mSettings = extend(mSettings, oCustomSetting); // override original property initialization with customized property values
|
|
584
568
|
}
|
|
569
|
+
Log.info("Customizing: custom value for property 'visible' of control '" + sId + "' in View '" + that.sViewName + "' applied: " + oCustomSetting.visible);
|
|
570
|
+
mSettings = extend(mSettings, oCustomSetting); // override original property initialization with customized property values
|
|
585
571
|
}
|
|
586
|
-
}
|
|
587
|
-
}
|
|
572
|
+
}
|
|
573
|
+
};
|
|
588
574
|
}
|
|
589
575
|
}
|
|
590
576
|
|
|
591
577
|
var fnPropagateOwner = function(fnCallback, bAsync) {
|
|
592
578
|
assert(typeof fnCallback === "function", "fn must be a function");
|
|
593
|
-
|
|
579
|
+
var oOwnerComponent = Component && Component.getOwnerComponentFor(that);
|
|
594
580
|
if (oOwnerComponent) {
|
|
595
581
|
if (bAsync) {
|
|
596
582
|
// special treatment when component loading is async but instance creation is sync
|
|
@@ -1238,35 +1224,22 @@ sap.ui.define([
|
|
|
1238
1224
|
|
|
1239
1225
|
|
|
1240
1226
|
// view replacement
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
var Component = sap.ui.require("sap/ui/core/Component");
|
|
1244
|
-
var oOwnerComponent;
|
|
1245
|
-
|
|
1246
|
-
if (Component && ManagedObject._sOwnerId) {
|
|
1247
|
-
oOwnerComponent = Component.get(ManagedObject._sOwnerId);
|
|
1248
|
-
}
|
|
1249
|
-
|
|
1250
|
-
if (oOwnerComponent) {
|
|
1251
|
-
var oViewReplacementCarrier = oOwnerComponent;
|
|
1252
|
-
if (oOwnerComponent.getExtensionComponent) {
|
|
1253
|
-
var oViewReplacementCarrier = oOwnerComponent.getExtensionComponent();
|
|
1254
|
-
if (!oViewReplacementCarrier) {
|
|
1255
|
-
throw new Error("getExtensionComponent() must return an instance.");
|
|
1256
|
-
}
|
|
1257
|
-
}
|
|
1258
|
-
|
|
1259
|
-
var customViewConfig = oViewReplacementCarrier._getManifestEntry("/sap.ui5/extends/extensions/sap.ui.viewReplacements/" + oView.viewName, true);
|
|
1227
|
+
// get current owner component
|
|
1228
|
+
var Component = sap.ui.require("sap/ui/core/Component");
|
|
1260
1229
|
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1230
|
+
if (Component && ManagedObject._sOwnerId) {
|
|
1231
|
+
var customViewConfig = Component.getCustomizing(ManagedObject._sOwnerId, {
|
|
1232
|
+
type: "sap.ui.viewReplacements",
|
|
1233
|
+
name: oView.viewName
|
|
1234
|
+
});
|
|
1235
|
+
if (customViewConfig) {
|
|
1236
|
+
// make sure that "async=true" will not be overriden
|
|
1237
|
+
delete customViewConfig.async;
|
|
1264
1238
|
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
}
|
|
1239
|
+
Log.info("Customizing: View replacement for view '" + oView.viewName + "' found and applied: " + customViewConfig.viewName + " (type: " + customViewConfig.type + ")");
|
|
1240
|
+
extend(oView, customViewConfig);
|
|
1241
|
+
} else {
|
|
1242
|
+
Log.debug("Customizing: no View replacement found for view '" + oView.viewName + "'.");
|
|
1270
1243
|
}
|
|
1271
1244
|
}
|
|
1272
1245
|
|
|
@@ -1307,7 +1280,7 @@ sap.ui.define([
|
|
|
1307
1280
|
function createView(sViewClass, oViewSettings) {
|
|
1308
1281
|
var ViewClass = sap.ui.require(sViewClass);
|
|
1309
1282
|
if (!ViewClass) {
|
|
1310
|
-
ViewClass = sap.ui.requireSync(sViewClass)
|
|
1283
|
+
ViewClass = sap.ui.requireSync(sViewClass);// legacy-relevant: sync fallback for missing dependency
|
|
1311
1284
|
if (oViewSettings.async) {
|
|
1312
1285
|
//not supported
|
|
1313
1286
|
Log.warning("sap.ui.view was called without requiring the according view class.");
|