@openui5/sap.ui.fl 1.131.1 → 1.132.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +1 -2
- package/THIRDPARTY.txt +1 -1
- package/package.json +3 -3
- package/src/sap/ui/fl/.library +2 -2
- package/src/sap/ui/fl/ChangePersistence.js +11 -5
- package/src/sap/ui/fl/ChangePersistenceFactory.js +2 -2
- package/src/sap/ui/fl/FakeLrepConnector.js +1 -1
- package/src/sap/ui/fl/FakeLrepConnectorLocalStorage.js +2 -2
- package/src/sap/ui/fl/FakeLrepConnectorSessionStorage.js +2 -2
- package/src/sap/ui/fl/FakeLrepLocalStorage.js +2 -2
- package/src/sap/ui/fl/FlexController.js +3 -2
- package/src/sap/ui/fl/FlexControllerFactory.js +2 -2
- package/src/sap/ui/fl/Layer.js +1 -1
- package/src/sap/ui/fl/LayerUtils.js +2 -2
- package/src/sap/ui/fl/Scenario.js +1 -1
- package/src/sap/ui/fl/Utils.js +2 -2
- package/src/sap/ui/fl/apply/_internal/DelegateMediator.js +2 -2
- package/src/sap/ui/fl/apply/_internal/appVariant/DescriptorChangeTypes.js +1 -1
- package/src/sap/ui/fl/apply/_internal/changes/Applier.js +13 -3
- package/src/sap/ui/fl/apply/_internal/changes/FlexCustomData.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/Reverter.js +7 -2
- package/src/sap/ui/fl/apply/_internal/changes/Utils.js +49 -23
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/Applier.js +20 -21
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ApplyStrategyFactory.js +1 -1
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ApplyUtil.js +1 -1
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/Preprocessor.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/Registration.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/RegistrationBuild.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/AddAnnotationsToOData.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/AddNewDataSource.js +4 -4
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/AddNewInbound.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/AddNewOutbound.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/AddTechnicalAttributes.js +3 -3
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/ChangeDataSource.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/ChangeInbound.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/ChangeOutbound.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/RemoveAllInboundsExceptOne.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/SetAch.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/SetDescription.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/SetTitle.js +16 -4
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/fiori/SetAbstract.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/fiori/SetCloudDevAdaptationStatus.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/fiori/SetRegistrationIds.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ovp/AddNewCard.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ovp/ChangeCard.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ovp/DeleteCard.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddComponentUsages.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddLibrary.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddNewModel.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddNewModelEnhanceWith.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/ChangeModel.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/SetFlexExtensionPointEnabled.js +2 -2
- package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/SetMinUI5Version.js +2 -2
- package/src/sap/ui/fl/apply/_internal/connectors/ObjectStorageConnector.js +1 -1
- package/src/sap/ui/fl/apply/_internal/connectors/ObjectStorageUtils.js +2 -2
- package/src/sap/ui/fl/apply/_internal/controlVariants/URLHandler.js +1 -1
- package/src/sap/ui/fl/apply/_internal/controlVariants/Utils.js +1 -1
- package/src/sap/ui/fl/apply/_internal/extensionPoint/Processor.js +2 -2
- package/src/sap/ui/fl/apply/_internal/extensionPoint/Registry.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexObjects/AnnotationChange.js +17 -10
- package/src/sap/ui/fl/apply/_internal/flexObjects/AppDescriptorChange.js +16 -2
- package/src/sap/ui/fl/apply/_internal/flexObjects/CompVariant.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexObjects/CompVariantRevertData.js +1 -1
- package/src/sap/ui/fl/apply/_internal/flexObjects/ControllerExtensionChange.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexObjects/FlVariant.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexObjects/FlexObject.js +21 -2
- package/src/sap/ui/fl/apply/_internal/flexObjects/FlexObjectFactory.js +19 -3
- package/src/sap/ui/fl/apply/_internal/flexObjects/RevertData.js +1 -1
- package/src/sap/ui/fl/apply/_internal/flexObjects/States.js +1 -1
- package/src/sap/ui/fl/apply/_internal/flexObjects/UIChange.js +21 -2
- package/src/sap/ui/fl/apply/_internal/flexObjects/UpdatableChange.js +5 -1
- package/src/sap/ui/fl/apply/_internal/flexObjects/Variant.js +7 -2
- package/src/sap/ui/fl/apply/_internal/flexObjects/getVariantAuthor.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexState/DataSelector.js +1 -1
- package/src/sap/ui/fl/apply/_internal/flexState/FlexObjectState.js +10 -4
- package/src/sap/ui/fl/apply/_internal/flexState/FlexState.js +14 -8
- package/src/sap/ui/fl/apply/_internal/flexState/InitialPrepareFunctions.js +1 -1
- package/src/sap/ui/fl/apply/_internal/flexState/Loader.js +21 -16
- package/src/sap/ui/fl/apply/_internal/flexState/ManifestUtils.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexState/UI2Personalization/UI2PersonalizationState.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexState/changes/DependencyHandler.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexState/changes/ExtensionPointState.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexState/changes/UIChangesState.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexState/communication/FLPAboutInfo.js +140 -0
- package/src/sap/ui/fl/apply/_internal/flexState/compVariants/CompVariantManagementState.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexState/compVariants/CompVariantMerger.js +3 -3
- package/src/sap/ui/fl/apply/_internal/flexState/compVariants/Utils.js +1 -1
- package/src/sap/ui/fl/apply/_internal/flexState/compVariants/prepareCompVariantsMap.js +1 -1
- package/src/sap/ui/fl/apply/_internal/flexState/controlVariants/Switcher.js +2 -2
- package/src/sap/ui/fl/apply/_internal/flexState/controlVariants/VariantManagementState.js +2 -2
- package/src/sap/ui/fl/apply/_internal/preprocessors/ComponentLifecycleHooks.js +60 -1
- package/src/sap/ui/fl/apply/_internal/preprocessors/ControllerExtension.js +2 -2
- package/src/sap/ui/fl/apply/_internal/preprocessors/RegistrationDelegator.js +20 -3
- package/src/sap/ui/fl/apply/_internal/preprocessors/XmlPreprocessor.js +2 -2
- package/src/sap/ui/fl/apply/api/AnnotationChangeHandlerAPI.js +11 -9
- package/src/sap/ui/fl/apply/api/ControlVariantApplyAPI.js +1 -1
- package/src/sap/ui/fl/apply/api/DelegateMediatorAPI.js +1 -1
- package/src/sap/ui/fl/apply/api/ExtensionPointRegistryAPI.js +1 -1
- package/src/sap/ui/fl/apply/api/FlexRuntimeInfoAPI.js +23 -1
- package/src/sap/ui/fl/apply/api/SmartVariantManagementApplyAPI.js +1 -1
- package/src/sap/ui/fl/apply/api/UI2PersonalizationApplyAPI.js +1 -1
- package/src/sap/ui/fl/changeHandler/AddIFrame.js +2 -2
- package/src/sap/ui/fl/changeHandler/AddXML.js +2 -2
- package/src/sap/ui/fl/changeHandler/AddXMLAtExtensionPoint.js +2 -2
- package/src/sap/ui/fl/changeHandler/Base.js +2 -2
- package/src/sap/ui/fl/changeHandler/BaseAddViaDelegate.js +2 -2
- package/src/sap/ui/fl/changeHandler/BaseAddXml.js +2 -2
- package/src/sap/ui/fl/changeHandler/BaseRename.js +2 -2
- package/src/sap/ui/fl/changeHandler/BaseTreeModifier.js +1 -1
- package/src/sap/ui/fl/changeHandler/ChangeAnnotation.js +78 -0
- package/src/sap/ui/fl/changeHandler/HideControl.js +2 -2
- package/src/sap/ui/fl/changeHandler/MoveControls.js +2 -2
- package/src/sap/ui/fl/changeHandler/MoveElements.js +2 -2
- package/src/sap/ui/fl/changeHandler/PropertyBindingChange.js +2 -2
- package/src/sap/ui/fl/changeHandler/PropertyChange.js +2 -2
- package/src/sap/ui/fl/changeHandler/StashControl.js +2 -2
- package/src/sap/ui/fl/changeHandler/UnhideControl.js +2 -2
- package/src/sap/ui/fl/changeHandler/UnstashControl.js +2 -2
- package/src/sap/ui/fl/changeHandler/UpdateIFrame.js +2 -2
- package/src/sap/ui/fl/changeHandler/common/ChangeCategories.js +1 -1
- package/src/sap/ui/fl/changeHandler/common/createIFrame.js +1 -1
- package/src/sap/ui/fl/changeHandler/common/getTargetAggregationIndex.js +1 -1
- package/src/sap/ui/fl/changeHandler/common/revertAddedControls.js +1 -1
- package/src/sap/ui/fl/changeHandler/condenser/Classification.js +1 -1
- package/src/sap/ui/fl/descriptorRelated/Utils.js +1 -1
- package/src/sap/ui/fl/descriptorRelated/api/DescriptorChangeFactory.js +9 -7
- package/src/sap/ui/fl/descriptorRelated/api/DescriptorInlineChangeFactory.js +2 -2
- package/src/sap/ui/fl/descriptorRelated/api/DescriptorVariantFactory.js +2 -2
- package/src/sap/ui/fl/designtime/library.designtime.js +1 -1
- package/src/sap/ui/fl/designtime/messagebundle_en_US_saptrc.properties +1 -1
- package/src/sap/ui/fl/designtime/util/IFrame.designtime.js +1 -1
- package/src/sap/ui/fl/designtime/util/editIFrame.js +1 -1
- package/src/sap/ui/fl/designtime/variants/VariantManagement.designtime.js +1 -1
- package/src/sap/ui/fl/initial/_internal/FlexConfiguration.js +2 -2
- package/src/sap/ui/fl/initial/_internal/FlexInfoSession.js +1 -1
- package/src/sap/ui/fl/initial/_internal/Storage.js +2 -2
- package/src/sap/ui/fl/initial/_internal/StorageFeaturesMerger.js +2 -2
- package/src/sap/ui/fl/initial/_internal/StorageResultMerger.js +1 -1
- package/src/sap/ui/fl/initial/_internal/StorageUtils.js +7 -4
- package/src/sap/ui/fl/initial/_internal/changeHandlers/ChangeHandlerRegistration.js +8 -7
- package/src/sap/ui/fl/initial/_internal/changeHandlers/ChangeHandlerStorage.js +14 -11
- package/src/sap/ui/fl/initial/_internal/connectors/BackendConnector.js +1 -1
- package/src/sap/ui/fl/initial/_internal/connectors/BtpServiceConnector.js +15 -1
- package/src/sap/ui/fl/initial/_internal/connectors/KeyUserConnector.js +1 -1
- package/src/sap/ui/fl/initial/_internal/connectors/LrepConnector.js +1 -1
- package/src/sap/ui/fl/initial/_internal/connectors/NeoLrepConnector.js +1 -1
- package/src/sap/ui/fl/initial/_internal/connectors/PersonalizationConnector.js +1 -1
- package/src/sap/ui/fl/initial/_internal/connectors/StaticFileConnector.js +1 -1
- package/src/sap/ui/fl/initial/_internal/connectors/Utils.js +2 -2
- package/src/sap/ui/fl/initial/_internal/storageResultDisassemble.js +2 -2
- package/src/sap/ui/fl/initial/api/InitialFlexAPI.js +57 -0
- package/src/sap/ui/fl/initial/api/Version.js +1 -1
- package/src/sap/ui/fl/interfaces/BaseLoadConnector.js +2 -2
- package/src/sap/ui/fl/interfaces/Delegate.js +2 -2
- package/src/sap/ui/fl/library.js +44 -44
- package/src/sap/ui/fl/library.support.js +3 -3
- package/src/sap/ui/fl/messagebundle.properties +4 -1
- package/src/sap/ui/fl/messagebundle_ar.properties +2 -0
- package/src/sap/ui/fl/messagebundle_bg.properties +2 -0
- package/src/sap/ui/fl/messagebundle_ca.properties +2 -0
- package/src/sap/ui/fl/messagebundle_cnr.properties +2 -0
- package/src/sap/ui/fl/messagebundle_cs.properties +2 -0
- package/src/sap/ui/fl/messagebundle_cy.properties +2 -0
- package/src/sap/ui/fl/messagebundle_da.properties +2 -0
- package/src/sap/ui/fl/messagebundle_de.properties +2 -0
- package/src/sap/ui/fl/messagebundle_el.properties +2 -0
- package/src/sap/ui/fl/messagebundle_en.properties +2 -0
- package/src/sap/ui/fl/messagebundle_en_GB.properties +2 -0
- package/src/sap/ui/fl/messagebundle_en_US_saprigi.properties +2 -0
- package/src/sap/ui/fl/messagebundle_en_US_saptrc.properties +45 -45
- package/src/sap/ui/fl/messagebundle_es.properties +2 -0
- package/src/sap/ui/fl/messagebundle_es_MX.properties +2 -0
- package/src/sap/ui/fl/messagebundle_et.properties +2 -0
- package/src/sap/ui/fl/messagebundle_fi.properties +2 -0
- package/src/sap/ui/fl/messagebundle_fr.properties +2 -0
- package/src/sap/ui/fl/messagebundle_fr_CA.properties +2 -0
- package/src/sap/ui/fl/messagebundle_hi.properties +2 -0
- package/src/sap/ui/fl/messagebundle_hr.properties +2 -0
- package/src/sap/ui/fl/messagebundle_hu.properties +2 -0
- package/src/sap/ui/fl/messagebundle_id.properties +2 -0
- package/src/sap/ui/fl/messagebundle_it.properties +2 -0
- package/src/sap/ui/fl/messagebundle_iw.properties +2 -0
- package/src/sap/ui/fl/messagebundle_ja.properties +2 -0
- package/src/sap/ui/fl/messagebundle_kk.properties +2 -0
- package/src/sap/ui/fl/messagebundle_ko.properties +2 -0
- package/src/sap/ui/fl/messagebundle_lt.properties +2 -0
- package/src/sap/ui/fl/messagebundle_lv.properties +2 -0
- package/src/sap/ui/fl/messagebundle_mk.properties +2 -0
- package/src/sap/ui/fl/messagebundle_ms.properties +2 -0
- package/src/sap/ui/fl/messagebundle_nl.properties +2 -0
- package/src/sap/ui/fl/messagebundle_no.properties +2 -0
- package/src/sap/ui/fl/messagebundle_pl.properties +2 -0
- package/src/sap/ui/fl/messagebundle_pt.properties +2 -0
- package/src/sap/ui/fl/messagebundle_pt_PT.properties +2 -0
- package/src/sap/ui/fl/messagebundle_ro.properties +2 -0
- package/src/sap/ui/fl/messagebundle_ru.properties +2 -0
- package/src/sap/ui/fl/messagebundle_sh.properties +2 -0
- package/src/sap/ui/fl/messagebundle_sk.properties +2 -0
- package/src/sap/ui/fl/messagebundle_sl.properties +2 -0
- package/src/sap/ui/fl/messagebundle_sr.properties +2 -0
- package/src/sap/ui/fl/messagebundle_sv.properties +2 -0
- package/src/sap/ui/fl/messagebundle_th.properties +2 -0
- package/src/sap/ui/fl/messagebundle_tr.properties +2 -0
- package/src/sap/ui/fl/messagebundle_uk.properties +2 -0
- package/src/sap/ui/fl/messagebundle_vi.properties +2 -0
- package/src/sap/ui/fl/messagebundle_zh_CN.properties +2 -0
- package/src/sap/ui/fl/messagebundle_zh_TW.properties +2 -0
- package/src/sap/ui/fl/registry/Settings.js +1 -1
- package/src/sap/ui/fl/requireAsync.js +1 -1
- package/src/sap/ui/fl/support/_internal/extractChangeDependencies.js +1 -1
- package/src/sap/ui/fl/support/_internal/getAllUIChanges.js +2 -2
- package/src/sap/ui/fl/support/_internal/getChangeDependencies.js +2 -2
- package/src/sap/ui/fl/support/_internal/getFlexObjectInfos.js +2 -2
- package/src/sap/ui/fl/support/_internal/getFlexSettings.js +2 -2
- package/src/sap/ui/fl/support/api/SupportAPI.js +2 -2
- package/src/sap/ui/fl/support/apps/contentbrowser/Component.js +1 -1
- package/src/sap/ui/fl/support/apps/contentbrowser/controller/ContentDetails.controller.js +2 -2
- package/src/sap/ui/fl/support/apps/contentbrowser/controller/ContentDetailsEdit.controller.js +2 -2
- package/src/sap/ui/fl/support/apps/contentbrowser/controller/LayerContentMaster.controller.js +2 -2
- package/src/sap/ui/fl/support/apps/contentbrowser/controller/Layers.controller.js +2 -2
- package/src/sap/ui/fl/support/apps/contentbrowser/lrepConnector/LRepConnector.js +2 -2
- package/src/sap/ui/fl/support/apps/contentbrowser/utils/DataUtils.js +2 -2
- package/src/sap/ui/fl/support/apps/contentbrowser/utils/ErrorUtils.js +2 -2
- package/src/sap/ui/fl/themes/base/library.source.less +1 -1
- package/src/sap/ui/fl/themes/sap_hcb/library.source.less +1 -1
- package/src/sap/ui/fl/transport/TransportDialog.js +1 -1
- package/src/sap/ui/fl/transport/TransportSelection.js +2 -2
- package/src/sap/ui/fl/util/DescriptorChangeCheck.js +3 -3
- package/src/sap/ui/fl/util/IFrame.flexibility.js +1 -1
- package/src/sap/ui/fl/util/IFrame.js +2 -2
- package/src/sap/ui/fl/util/IFrameRenderer.js +1 -1
- package/src/sap/ui/fl/util/ManagedObjectModel.js +3 -3
- package/src/sap/ui/fl/util/changePropertyValueByPath.js +1 -1
- package/src/sap/ui/fl/util/getContainerUserInfo.js +1 -1
- package/src/sap/ui/fl/util/resolveBinding.js +2 -2
- package/src/sap/ui/fl/variants/VariantManagement.js +1 -1
- package/src/sap/ui/fl/variants/VariantManager.js +604 -0
- package/src/sap/ui/fl/variants/VariantModel.js +27 -557
- package/src/sap/ui/fl/variants/context/Component.js +1 -1
- package/src/sap/ui/fl/variants/context/controller/ContextVisibility.controller.js +1 -1
- package/src/sap/ui/fl/variants/context/i18n/i18n_en_US_saptrc.properties +12 -12
- package/src/sap/ui/fl/write/_internal/SaveAs.js +1 -1
- package/src/sap/ui/fl/write/_internal/Storage.js +8 -3
- package/src/sap/ui/fl/write/_internal/Versions.js +2 -2
- package/src/sap/ui/fl/write/_internal/appVariant/AppVariant.js +2 -2
- package/src/sap/ui/fl/write/_internal/appVariant/AppVariantFactory.js +2 -2
- package/src/sap/ui/fl/write/_internal/appVariant/AppVariantInlineChange.js +2 -2
- package/src/sap/ui/fl/write/_internal/appVariant/AppVariantInlineChangeFactory.js +9 -3
- package/src/sap/ui/fl/write/_internal/condenser/Condenser.js +69 -48
- package/src/sap/ui/fl/write/_internal/condenser/UIReconstruction.js +2 -2
- package/src/sap/ui/fl/write/_internal/condenser/Utils.js +1 -1
- package/src/sap/ui/fl/write/_internal/condenser/classifications/Create.js +1 -1
- package/src/sap/ui/fl/write/_internal/condenser/classifications/Destroy.js +1 -1
- package/src/sap/ui/fl/write/_internal/condenser/classifications/LastOneWins.js +1 -1
- package/src/sap/ui/fl/write/_internal/condenser/classifications/Move.js +1 -1
- package/src/sap/ui/fl/write/_internal/condenser/classifications/Reverse.js +1 -1
- package/src/sap/ui/fl/write/_internal/condenser/classifications/Update.js +1 -1
- package/src/sap/ui/fl/write/_internal/connectors/BackendConnector.js +2 -2
- package/src/sap/ui/fl/write/_internal/connectors/BtpServiceConnector.js +32 -2
- package/src/sap/ui/fl/write/_internal/connectors/JsObjectConnector.js +1 -1
- package/src/sap/ui/fl/write/_internal/connectors/KeyUserConnector.js +2 -2
- package/src/sap/ui/fl/write/_internal/connectors/LocalStorageConnector.js +1 -1
- package/src/sap/ui/fl/write/_internal/connectors/LrepConnector.js +2 -2
- package/src/sap/ui/fl/write/_internal/connectors/NeoLrepConnector.js +2 -2
- package/src/sap/ui/fl/write/_internal/connectors/ObjectPathConnector.js +2 -2
- package/src/sap/ui/fl/write/_internal/connectors/ObjectStorageConnector.js +1 -1
- package/src/sap/ui/fl/write/_internal/connectors/PersonalizationConnector.js +2 -2
- package/src/sap/ui/fl/write/_internal/connectors/SessionStorageConnector.js +1 -1
- package/src/sap/ui/fl/write/_internal/connectors/Utils.js +2 -2
- package/src/sap/ui/fl/write/_internal/controlVariants/ControlVariantWriteUtils.js +1 -1
- package/src/sap/ui/fl/write/_internal/delegates/ODataV2ReadDelegate.js +1 -1
- package/src/sap/ui/fl/write/_internal/delegates/ODataV4ReadDelegate.js +1 -1
- package/src/sap/ui/fl/write/_internal/extensionPoint/Processor.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/ABAPAccess.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/ABAPExtensibilityVariant.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/ABAPExtensibilityVariantFactory.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/MultiTenantABAPExtensibilityVariant.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/ServiceValidation.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/SingleTenantABAPExtensibilityVariant.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/UriParser.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/Utils.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/CAPAccess.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/dialog/CustomFieldCAPDialog.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/editor/getEditorConfig.js +1 -1
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/editor/propertyEditor/booleanEditor/BooleanEditor.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/editor/propertyEditor/rangeEditor/RangeEditor.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/editor/propertyEditor/timeEditor/TimeEditor.js +2 -2
- package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/editor/validators/IsRequired.js +1 -1
- package/src/sap/ui/fl/write/_internal/flexState/FlexObjectManager.js +2 -2
- package/src/sap/ui/fl/write/_internal/flexState/UI2Personalization/UI2PersonalizationState.js +2 -2
- package/src/sap/ui/fl/write/_internal/flexState/changes/UIChangeManager.js +2 -2
- package/src/sap/ui/fl/write/_internal/flexState/compVariants/CompVariantState.js +9 -12
- package/src/sap/ui/fl/write/_internal/transport/TransportDialog.js +1 -1
- package/src/sap/ui/fl/write/_internal/transport/TransportSelection.js +2 -2
- package/src/sap/ui/fl/write/_internal/transport/Transports.js +2 -2
- package/src/sap/ui/fl/write/api/Adaptations.js +1 -1
- package/src/sap/ui/fl/write/api/AppVariantWriteAPI.js +1 -1
- package/src/sap/ui/fl/write/api/ChangesWriteAPI.js +33 -10
- package/src/sap/ui/fl/write/api/ContextBasedAdaptationsAPI.js +40 -27
- package/src/sap/ui/fl/write/api/ContextSharingAPI.js +1 -1
- package/src/sap/ui/fl/write/api/ControlPersonalizationWriteAPI.js +14 -2
- package/src/sap/ui/fl/write/api/FeaturesAPI.js +1 -1
- package/src/sap/ui/fl/write/api/FieldExtensibility.js +2 -2
- package/src/sap/ui/fl/write/api/LocalResetAPI.js +1 -1
- package/src/sap/ui/fl/write/api/PersistenceWriteAPI.js +43 -5
- package/src/sap/ui/fl/write/api/ReloadInfoAPI.js +1 -1
- package/src/sap/ui/fl/write/api/SACIntegrationUpdateVariant.js +1 -1
- package/src/sap/ui/fl/write/api/SmartBusinessWriteAPI.js +1 -1
- package/src/sap/ui/fl/write/api/SmartVariantManagementWriteAPI.js +1 -1
- package/src/sap/ui/fl/write/api/TranslationAPI.js +1 -1
- package/src/sap/ui/fl/write/api/UI2PersonalizationWriteAPI.js +1 -1
- package/src/sap/ui/fl/write/api/VersionsAPI.js +1 -1
- package/src/sap/ui/fl/write/api/connectors/FileListBaseConnector.js +1 -1
- package/src/sap/ui/fl/write/api/connectors/ObjectStorageConnector.js +1 -1
- package/src/sap/ui/fl/write/connectors/BaseConnector.js +1 -1
- package/ui5.yaml +2 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -11,14 +11,11 @@ sap.ui.define([
|
|
|
11
11
|
"sap/base/util/each",
|
|
12
12
|
"sap/base/util/isEmptyObject",
|
|
13
13
|
"sap/base/util/merge",
|
|
14
|
-
"sap/base/util/ObjectPath",
|
|
15
14
|
"sap/base/Log",
|
|
16
15
|
"sap/ui/core/util/reflection/JsControlTreeModifier",
|
|
17
16
|
"sap/ui/core/BusyIndicator",
|
|
18
17
|
"sap/ui/core/Element",
|
|
19
18
|
"sap/ui/core/Lib",
|
|
20
|
-
"sap/ui/fl/apply/_internal/changes/Applier",
|
|
21
|
-
"sap/ui/fl/apply/_internal/changes/Reverter",
|
|
22
19
|
"sap/ui/fl/apply/_internal/controlVariants/URLHandler",
|
|
23
20
|
"sap/ui/fl/apply/_internal/controlVariants/Utils",
|
|
24
21
|
"sap/ui/fl/apply/_internal/flexObjects/FlexObjectFactory",
|
|
@@ -29,10 +26,6 @@ sap.ui.define([
|
|
|
29
26
|
"sap/ui/fl/apply/_internal/flexState/FlexObjectState",
|
|
30
27
|
"sap/ui/fl/apply/_internal/flexState/ManifestUtils",
|
|
31
28
|
"sap/ui/fl/registry/Settings",
|
|
32
|
-
"sap/ui/fl/write/_internal/controlVariants/ControlVariantWriteUtils",
|
|
33
|
-
"sap/ui/fl/write/_internal/flexState/changes/UIChangeManager",
|
|
34
|
-
"sap/ui/fl/write/_internal/flexState/FlexObjectManager",
|
|
35
|
-
"sap/ui/fl/write/api/ContextBasedAdaptationsAPI",
|
|
36
29
|
"sap/ui/fl/Layer",
|
|
37
30
|
"sap/ui/fl/LayerUtils",
|
|
38
31
|
"sap/ui/fl/Utils",
|
|
@@ -45,14 +38,11 @@ sap.ui.define([
|
|
|
45
38
|
each,
|
|
46
39
|
isEmptyObject,
|
|
47
40
|
merge,
|
|
48
|
-
ObjectPath,
|
|
49
41
|
Log,
|
|
50
42
|
JsControlTreeModifier,
|
|
51
43
|
BusyIndicator,
|
|
52
44
|
Element,
|
|
53
45
|
Lib,
|
|
54
|
-
Applier,
|
|
55
|
-
Reverter,
|
|
56
46
|
URLHandler,
|
|
57
47
|
VariantUtil,
|
|
58
48
|
FlexObjectFactory,
|
|
@@ -63,10 +53,6 @@ sap.ui.define([
|
|
|
63
53
|
FlexObjectState,
|
|
64
54
|
ManifestUtils,
|
|
65
55
|
Settings,
|
|
66
|
-
ControlVariantWriteUtils,
|
|
67
|
-
UIChangeManager,
|
|
68
|
-
FlexObjectManager,
|
|
69
|
-
ContextBasedAdaptationsAPI,
|
|
70
56
|
Layer,
|
|
71
57
|
LayerUtils,
|
|
72
58
|
Utils,
|
|
@@ -77,102 +63,6 @@ sap.ui.define([
|
|
|
77
63
|
|
|
78
64
|
var _mUShellServices = {};
|
|
79
65
|
|
|
80
|
-
/**
|
|
81
|
-
* Handler for "select" event fired from a variant management control.
|
|
82
|
-
* Adds to the variant switch promise chain, resolving when new variant (if applicable) has been switched and all source variant dirty changes have been removed.
|
|
83
|
-
* @param {object} oEvent - Event object
|
|
84
|
-
* @param {object} mPropertyBag - Object with properties
|
|
85
|
-
* @param {string} mPropertyBag.vmReference - Variant management reference
|
|
86
|
-
* @param {sap.ui.fl.variants.VariantModel} mPropertyBag.model - Variant model instance
|
|
87
|
-
* @returns {Promise<undefined>} Resolves with undefined
|
|
88
|
-
*
|
|
89
|
-
* @private
|
|
90
|
-
*/
|
|
91
|
-
function variantSelectHandler(oEvent, mPropertyBag) {
|
|
92
|
-
return executeAfterSwitch(function(mParameters, mVariantProperties) {
|
|
93
|
-
var oModel = mVariantProperties.model;
|
|
94
|
-
var sVMReference = mVariantProperties.vmReference;
|
|
95
|
-
var bVariantSwitch = false;
|
|
96
|
-
var bOldVariantWasModified = ObjectPath.get([sVMReference, "modified"], oModel.oData);
|
|
97
|
-
var sTargetVReference = mParameters.key;
|
|
98
|
-
var sSourceVReference = mParameters.key;
|
|
99
|
-
return Promise.resolve().then(function() {
|
|
100
|
-
// for standard variants 'currentVariant' property is not set
|
|
101
|
-
// e.g. variants generated through _ensureStandardVariantExists()
|
|
102
|
-
if (
|
|
103
|
-
ObjectPath.get([sVMReference, "currentVariant"], oModel.oData)
|
|
104
|
-
&& oModel.oData[sVMReference].currentVariant !== sTargetVReference
|
|
105
|
-
) {
|
|
106
|
-
sSourceVReference = oModel.oData[sVMReference].currentVariant;
|
|
107
|
-
bVariantSwitch = true;
|
|
108
|
-
return oModel.updateCurrentVariant({
|
|
109
|
-
variantManagementReference: sVMReference,
|
|
110
|
-
newVariantReference: sTargetVReference,
|
|
111
|
-
appComponent: oModel.oAppComponent,
|
|
112
|
-
internallyCalled: true
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
})
|
|
116
|
-
.then(function() {
|
|
117
|
-
if (bOldVariantWasModified) {
|
|
118
|
-
var aControlChanges = VariantManagementState.getControlChangesForVariant({
|
|
119
|
-
reference: oModel.sFlexReference,
|
|
120
|
-
vmReference: sVMReference,
|
|
121
|
-
vReference: sSourceVReference
|
|
122
|
-
});
|
|
123
|
-
return eraseDirtyChanges({
|
|
124
|
-
changes: aControlChanges,
|
|
125
|
-
vmReference: sVMReference,
|
|
126
|
-
vReference: sSourceVReference,
|
|
127
|
-
revert: !bVariantSwitch,
|
|
128
|
-
model: oModel
|
|
129
|
-
});
|
|
130
|
-
}
|
|
131
|
-
return Promise.resolve();
|
|
132
|
-
})
|
|
133
|
-
.then(function() {
|
|
134
|
-
// the variant switch already calls the listeners
|
|
135
|
-
if (!bVariantSwitch) {
|
|
136
|
-
oModel.callVariantSwitchListeners(sVMReference, oModel.oData[sVMReference].currentVariant);
|
|
137
|
-
}
|
|
138
|
-
});
|
|
139
|
-
}.bind(null, oEvent.getParameters(), mPropertyBag), mPropertyBag.model);
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
/**
|
|
143
|
-
* Removes passed control changes which are in DIRTY state from the variant state and flex controller.
|
|
144
|
-
* @param {object} mPropertyBag - Object with properties
|
|
145
|
-
* @param {sap.ui.fl.apply._internal.flexObjects.FlexObject[]} mPropertyBag.changes - Array of control changes
|
|
146
|
-
* @param {string} mPropertyBag.vmReference - Variant management reference
|
|
147
|
-
* @param {string} mPropertyBag.vReference - Variant reference to remove dirty changes from
|
|
148
|
-
* @param {sap.ui.fl.variants.VariantModel} mPropertyBag.model - Variant model instance
|
|
149
|
-
* @param {boolean} [mPropertyBag.revert] - Revert change from control
|
|
150
|
-
*
|
|
151
|
-
* @returns {Promise} Resolves when changes have been erased
|
|
152
|
-
*/
|
|
153
|
-
function eraseDirtyChanges(mPropertyBag) {
|
|
154
|
-
var aVariantDirtyChanges = mPropertyBag.model._getDirtyChangesFromVariantChanges(mPropertyBag.changes);
|
|
155
|
-
aVariantDirtyChanges = aVariantDirtyChanges.reverse();
|
|
156
|
-
|
|
157
|
-
return Promise.resolve()
|
|
158
|
-
.then(function() {
|
|
159
|
-
if (mPropertyBag.revert) {
|
|
160
|
-
return Reverter.revertMultipleChanges(aVariantDirtyChanges, {
|
|
161
|
-
appComponent: mPropertyBag.model.oAppComponent,
|
|
162
|
-
modifier: JsControlTreeModifier,
|
|
163
|
-
reference: mPropertyBag.model.sFlexReference
|
|
164
|
-
});
|
|
165
|
-
}
|
|
166
|
-
return undefined;
|
|
167
|
-
})
|
|
168
|
-
.then(function() {
|
|
169
|
-
FlexObjectManager.deleteFlexObjects({
|
|
170
|
-
reference: mPropertyBag.model.sFlexReference,
|
|
171
|
-
flexObjects: aVariantDirtyChanges
|
|
172
|
-
});
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
|
|
176
66
|
/**
|
|
177
67
|
* Adds the passed function to the variant switch promise and returns the whole promise chain.
|
|
178
68
|
*
|
|
@@ -288,16 +178,6 @@ sap.ui.define([
|
|
|
288
178
|
}));
|
|
289
179
|
}
|
|
290
180
|
|
|
291
|
-
function getAdaptationId(sLayer, oControl, sReference) {
|
|
292
|
-
var mContextBasedAdaptationBag = {
|
|
293
|
-
layer: sLayer,
|
|
294
|
-
control: oControl,
|
|
295
|
-
reference: sReference
|
|
296
|
-
};
|
|
297
|
-
var bHasAdaptationsModel = ContextBasedAdaptationsAPI.hasAdaptationsModel(mContextBasedAdaptationBag);
|
|
298
|
-
return bHasAdaptationsModel && ContextBasedAdaptationsAPI.getDisplayedAdaptationId(mContextBasedAdaptationBag);
|
|
299
|
-
}
|
|
300
|
-
|
|
301
181
|
function waitForInitialVariantChanges(mPropertyBag) {
|
|
302
182
|
const aCurrentVariantChanges = VariantManagementState.getInitialUIChanges({
|
|
303
183
|
vmReference: mPropertyBag.vmReference,
|
|
@@ -319,7 +199,7 @@ sap.ui.define([
|
|
|
319
199
|
* @class Variant model implementation for JSON format.
|
|
320
200
|
* @extends sap.ui.model.json.JSONModel
|
|
321
201
|
* @author SAP SE
|
|
322
|
-
* @version 1.
|
|
202
|
+
* @version 1.132.1
|
|
323
203
|
* @param {object} oData - Either the URL where to load the JSON from or a JS object
|
|
324
204
|
* @param {object} mPropertyBag - Map of properties required for the constructor
|
|
325
205
|
* @param {sap.ui.fl.FlexController} mPropertyBag.flexController - <code>FlexController</code> instance for the component which uses the variant model
|
|
@@ -590,66 +470,6 @@ sap.ui.define([
|
|
|
590
470
|
}
|
|
591
471
|
};
|
|
592
472
|
|
|
593
|
-
/**
|
|
594
|
-
* Erases dirty changes on a given variant and returns the dirty changes.
|
|
595
|
-
*
|
|
596
|
-
* @param {string} sVariantManagementReference - Variant management reference
|
|
597
|
-
* @param {string} sVariantReference - Variant reference to remove dirty changes from
|
|
598
|
-
* @returns {Promise} Promise resolving to dirty changes which will be removed
|
|
599
|
-
*/
|
|
600
|
-
VariantModel.prototype.eraseDirtyChangesOnVariant = function(sVariantManagementReference, sVariantReference) {
|
|
601
|
-
var aSourceVariantChanges = VariantManagementState.getControlChangesForVariant({
|
|
602
|
-
reference: this.sFlexReference,
|
|
603
|
-
vmReference: sVariantManagementReference,
|
|
604
|
-
vReference: sVariantReference
|
|
605
|
-
});
|
|
606
|
-
|
|
607
|
-
var aSourceVariantDirtyChanges = this._getDirtyChangesFromVariantChanges(aSourceVariantChanges);
|
|
608
|
-
|
|
609
|
-
return eraseDirtyChanges({
|
|
610
|
-
changes: aSourceVariantChanges,
|
|
611
|
-
vmReference: sVariantManagementReference,
|
|
612
|
-
vReference: sVariantReference,
|
|
613
|
-
model: this,
|
|
614
|
-
revert: true
|
|
615
|
-
})
|
|
616
|
-
.then(function() {
|
|
617
|
-
return aSourceVariantDirtyChanges;
|
|
618
|
-
});
|
|
619
|
-
};
|
|
620
|
-
|
|
621
|
-
/**
|
|
622
|
-
* Adds and applies the given changes.
|
|
623
|
-
*
|
|
624
|
-
* @param {Array<sap.ui.fl.apply._internal.flexObjects.FlexObject>} aChanges Changes to be applied
|
|
625
|
-
* @returns {Promise} Promise resolving when all changes are applied
|
|
626
|
-
*/
|
|
627
|
-
VariantModel.prototype.addAndApplyChangesOnVariant = function(aChanges) {
|
|
628
|
-
const aAddedChanges = UIChangeManager.addDirtyChanges(this.sFlexReference, aChanges, this.oAppComponent);
|
|
629
|
-
return aAddedChanges.reduce(function(oPreviousPromise, oChange) {
|
|
630
|
-
return oPreviousPromise.then(function() {
|
|
631
|
-
const oControl = Element.getElementById(
|
|
632
|
-
JsControlTreeModifier.getControlIdBySelector(oChange.getSelector(), this.oAppComponent)
|
|
633
|
-
);
|
|
634
|
-
return Applier.applyChangeOnControl(oChange, oControl, {
|
|
635
|
-
modifier: JsControlTreeModifier,
|
|
636
|
-
appComponent: this.oAppComponent,
|
|
637
|
-
view: Utils.getViewForControl(oControl)
|
|
638
|
-
})
|
|
639
|
-
.then((oReturn) => {
|
|
640
|
-
if (!oReturn.success) {
|
|
641
|
-
var oException = oReturn.error || new Error("The change could not be applied.");
|
|
642
|
-
FlexObjectManager.deleteFlexObjects({
|
|
643
|
-
reference: this.sFlexReference,
|
|
644
|
-
flexObjects: [oChange]
|
|
645
|
-
});
|
|
646
|
-
throw oException;
|
|
647
|
-
}
|
|
648
|
-
});
|
|
649
|
-
}.bind(this));
|
|
650
|
-
}.bind(this), Promise.resolve());
|
|
651
|
-
};
|
|
652
|
-
|
|
653
473
|
VariantModel.prototype._getVariantTitleCount = function(sNewText, sVariantManagementReference) {
|
|
654
474
|
var oData = this.getData();
|
|
655
475
|
return oData[sVariantManagementReference].variants.reduce(function(iCount, oVariant) {
|
|
@@ -738,90 +558,6 @@ sap.ui.define([
|
|
|
738
558
|
return oDuplicateVariant;
|
|
739
559
|
};
|
|
740
560
|
|
|
741
|
-
/**
|
|
742
|
-
* Copies a variant.
|
|
743
|
-
* @param {object} mPropertyBag - Map of properties
|
|
744
|
-
* @param {string} mPropertyBag.variantManagementReference - Variant management reference
|
|
745
|
-
* @param {string} mPropertyBag.title - Title for the variant
|
|
746
|
-
* @param {sap.ui.core.Component} mPropertyBag.appComponent - Model's app component
|
|
747
|
-
* @param {string} mPropertyBag.layer - Layer on which the new variant should be created
|
|
748
|
-
* @param {string} mPropertyBag.newVariantReference - <code>variantReference</code> for the new variant
|
|
749
|
-
* @param {string} mPropertyBag.sourceVariantReference - <code>variantReference</code> of the source variant
|
|
750
|
-
* @param {string} mPropertyBag.generator - Information about who created the change
|
|
751
|
-
* @param {object} mPropertyBag.contexts - Context structure containing roles and countries
|
|
752
|
-
* @returns {Promise} Promise resolving to dirty changes created during variant copy
|
|
753
|
-
* @private
|
|
754
|
-
*/
|
|
755
|
-
VariantModel.prototype.copyVariant = function(mPropertyBag) {
|
|
756
|
-
var oDuplicateVariantData = this._duplicateVariant(mPropertyBag);
|
|
757
|
-
oDuplicateVariantData.generator = mPropertyBag.generator;
|
|
758
|
-
|
|
759
|
-
this.oData[mPropertyBag.variantManagementReference].variants.push({
|
|
760
|
-
key: oDuplicateVariantData.instance.getId(),
|
|
761
|
-
rename: true,
|
|
762
|
-
change: true,
|
|
763
|
-
remove: true,
|
|
764
|
-
sharing: mPropertyBag.layer === Layer.USER
|
|
765
|
-
? this.sharing.PRIVATE
|
|
766
|
-
: this.sharing.PUBLIC
|
|
767
|
-
});
|
|
768
|
-
|
|
769
|
-
var aChanges = [];
|
|
770
|
-
|
|
771
|
-
// when created a new public variant other users do not see the new public variant
|
|
772
|
-
if (mPropertyBag.layer === Layer.PUBLIC) {
|
|
773
|
-
oDuplicateVariantData.instance.setFavorite(false);
|
|
774
|
-
var oChangeProperties = {
|
|
775
|
-
selector: JsControlTreeModifier.getSelector(mPropertyBag.newVariantReference, mPropertyBag.appComponent),
|
|
776
|
-
changeType: "setFavorite",
|
|
777
|
-
fileType: "ctrl_variant_change",
|
|
778
|
-
generator: mPropertyBag.generator,
|
|
779
|
-
layer: Layer.USER,
|
|
780
|
-
reference: this.sFlexReference,
|
|
781
|
-
content: {favorite: true}
|
|
782
|
-
};
|
|
783
|
-
aChanges.push(FlexObjectFactory.createUIChange(oChangeProperties));
|
|
784
|
-
}
|
|
785
|
-
|
|
786
|
-
// sets copied variant and associated changes as dirty
|
|
787
|
-
aChanges = FlexObjectManager.addDirtyFlexObjects(
|
|
788
|
-
this.sFlexReference,
|
|
789
|
-
aChanges
|
|
790
|
-
.concat([oDuplicateVariantData.instance]
|
|
791
|
-
.concat(oDuplicateVariantData.controlChanges)
|
|
792
|
-
.concat(mPropertyBag.additionalVariantChanges))
|
|
793
|
-
);
|
|
794
|
-
|
|
795
|
-
return this.updateCurrentVariant({
|
|
796
|
-
variantManagementReference: mPropertyBag.variantManagementReference,
|
|
797
|
-
newVariantReference: oDuplicateVariantData.instance.getId(),
|
|
798
|
-
appComponent: mPropertyBag.appComponent,
|
|
799
|
-
internallyCalled: true,
|
|
800
|
-
scenario: "saveAs"
|
|
801
|
-
}).then(function() {
|
|
802
|
-
return aChanges;
|
|
803
|
-
});
|
|
804
|
-
};
|
|
805
|
-
|
|
806
|
-
VariantModel.prototype.removeVariant = function(mPropertyBag) {
|
|
807
|
-
var aChangesToBeDeleted = FlexObjectState.getDirtyFlexObjects(this.sFlexReference)
|
|
808
|
-
.filter(function(oChange) {
|
|
809
|
-
return (oChange.getVariantReference && oChange.getVariantReference() === mPropertyBag.variant.getId()) ||
|
|
810
|
-
oChange.getId() === mPropertyBag.variant.getId();
|
|
811
|
-
});
|
|
812
|
-
|
|
813
|
-
return this.updateCurrentVariant({
|
|
814
|
-
variantManagementReference: mPropertyBag.variantManagementReference,
|
|
815
|
-
newVariantReference: mPropertyBag.sourceVariantReference,
|
|
816
|
-
appComponent: mPropertyBag.component
|
|
817
|
-
}).then(function() {
|
|
818
|
-
FlexObjectManager.deleteFlexObjects({
|
|
819
|
-
reference: this.sFlexReference,
|
|
820
|
-
flexObjects: aChangesToBeDeleted
|
|
821
|
-
});
|
|
822
|
-
}.bind(this));
|
|
823
|
-
};
|
|
824
|
-
|
|
825
561
|
VariantModel.prototype._collectModelChanges = function(sVariantManagementReference, sLayer, oEvent) {
|
|
826
562
|
const oData = this.getData()[sVariantManagementReference];
|
|
827
563
|
const aModelVariants = oData.variants;
|
|
@@ -922,113 +658,6 @@ sap.ui.define([
|
|
|
922
658
|
};
|
|
923
659
|
};
|
|
924
660
|
|
|
925
|
-
/**
|
|
926
|
-
* Opens the <i>Manage Views</i> dialog.
|
|
927
|
-
* Returns a promise which resolves to changes made from the manage dialog, based on the parameters passed.
|
|
928
|
-
* @param {sap.ui.fl.variants.VariantManagement} oVariantManagementControl - Variant management control
|
|
929
|
-
* @param {string} sVariantManagementReference - Variant management reference
|
|
930
|
-
* @param {string} sLayer - Current layer
|
|
931
|
-
* @param {string} sClass - Style class assigned to the management dialog
|
|
932
|
-
* @param {Promise<sap.ui.core.ComponentContainer>} oContextSharingComponentPromise - Promise resolving with the ComponentContainer
|
|
933
|
-
* @returns {Promise<void>} Promise which resolves when "manage" event is fired from the variant management control
|
|
934
|
-
* @private
|
|
935
|
-
* @ui5-restricted
|
|
936
|
-
*/
|
|
937
|
-
VariantModel.prototype.manageVariants = function(oVariantManagementControl, sVariantManagementReference, sLayer, sClass, oContextSharingComponentPromise) {
|
|
938
|
-
// called from the ControlVariant plugin in Adaptation mode
|
|
939
|
-
return new Promise(function(resolve) {
|
|
940
|
-
oVariantManagementControl.attachEventOnce("manage", {
|
|
941
|
-
resolve,
|
|
942
|
-
variantManagementReference: sVariantManagementReference,
|
|
943
|
-
layer: sLayer
|
|
944
|
-
}, this.fnManageClickRta, this);
|
|
945
|
-
oVariantManagementControl.openManagementDialog(true, sClass, oContextSharingComponentPromise);
|
|
946
|
-
}.bind(this));
|
|
947
|
-
};
|
|
948
|
-
|
|
949
|
-
/**
|
|
950
|
-
* Sets the variant properties and creates a variant change
|
|
951
|
-
* @param {string} sVariantManagementReference - Variant management reference
|
|
952
|
-
* @param {object} mPropertyBag - Map of properties
|
|
953
|
-
* @param {string} [mPropertyBag.adaptationId] - Adaptation ID to set which overrules the currently display adaptation
|
|
954
|
-
* @returns {sap.ui.fl.apply._internal.flexObjects.FlexObject} Created Change object
|
|
955
|
-
*/
|
|
956
|
-
VariantModel.prototype.createVariantChange = function(sVariantManagementReference, mPropertyBag) {
|
|
957
|
-
var mAdditionalChangeContent = this.setVariantProperties(sVariantManagementReference, mPropertyBag);
|
|
958
|
-
|
|
959
|
-
var mNewChangeData = {
|
|
960
|
-
changeType: mPropertyBag.changeType,
|
|
961
|
-
layer: mPropertyBag.layer,
|
|
962
|
-
generator: mPropertyBag.generator,
|
|
963
|
-
reference: this.sFlexReference
|
|
964
|
-
};
|
|
965
|
-
|
|
966
|
-
if (mPropertyBag.adaptationId !== undefined) {
|
|
967
|
-
mNewChangeData.adaptationId = mPropertyBag.adaptationId;
|
|
968
|
-
} else {
|
|
969
|
-
mNewChangeData.adaptationId = getAdaptationId(mPropertyBag.layer, mPropertyBag.appComponent, this.sFlexReference);
|
|
970
|
-
}
|
|
971
|
-
|
|
972
|
-
if (mPropertyBag.changeType === "setDefault") {
|
|
973
|
-
mNewChangeData.fileType = "ctrl_variant_management_change";
|
|
974
|
-
mNewChangeData.selector = JsControlTreeModifier.getSelector(sVariantManagementReference, mPropertyBag.appComponent);
|
|
975
|
-
} else {
|
|
976
|
-
mNewChangeData.fileType = "ctrl_variant_change";
|
|
977
|
-
mNewChangeData.selector = JsControlTreeModifier.getSelector(mPropertyBag.variantReference, mPropertyBag.appComponent);
|
|
978
|
-
}
|
|
979
|
-
|
|
980
|
-
var oChange = FlexObjectFactory.createUIChange(mNewChangeData);
|
|
981
|
-
// update change with additional content
|
|
982
|
-
oChange.setContent(mAdditionalChangeContent);
|
|
983
|
-
if (mPropertyBag.changeType === "setTitle") {
|
|
984
|
-
oChange.setText("title", mPropertyBag.title, "XFLD");
|
|
985
|
-
}
|
|
986
|
-
|
|
987
|
-
return oChange;
|
|
988
|
-
};
|
|
989
|
-
|
|
990
|
-
/**
|
|
991
|
-
* Sets the variant properties and adds a variant change
|
|
992
|
-
* @param {string} sVariantManagementReference - Variant management reference
|
|
993
|
-
* @param {object} mPropertyBag - Map of properties
|
|
994
|
-
* @returns {sap.ui.fl.apply._internal.flexObjects.FlexObject} Created Change object
|
|
995
|
-
*/
|
|
996
|
-
VariantModel.prototype.addVariantChange = function(sVariantManagementReference, mPropertyBag) {
|
|
997
|
-
var oChange = this.createVariantChange(sVariantManagementReference, mPropertyBag);
|
|
998
|
-
FlexObjectManager.addDirtyFlexObjects(this.sFlexReference, [oChange]);
|
|
999
|
-
|
|
1000
|
-
return oChange;
|
|
1001
|
-
};
|
|
1002
|
-
|
|
1003
|
-
/**
|
|
1004
|
-
* Sets the variant properties and adds variant changes
|
|
1005
|
-
* @param {string} sVariantManagementReference - Variant management reference
|
|
1006
|
-
* @param {object[]} aChangePropertyMaps - Array of property maps optionally including the adaptation ID
|
|
1007
|
-
* @returns {sap.ui.fl.apply._internal.flexObjects.FlexObject[]} Created Change objects
|
|
1008
|
-
*/
|
|
1009
|
-
VariantModel.prototype.addVariantChanges = function(sVariantManagementReference, aChangePropertyMaps) {
|
|
1010
|
-
var aChanges = aChangePropertyMaps.map(function(mProperties) {
|
|
1011
|
-
return this.createVariantChange(sVariantManagementReference, mProperties);
|
|
1012
|
-
}.bind(this));
|
|
1013
|
-
FlexObjectManager.addDirtyFlexObjects(this.sFlexReference, aChanges);
|
|
1014
|
-
|
|
1015
|
-
return aChanges;
|
|
1016
|
-
};
|
|
1017
|
-
|
|
1018
|
-
/**
|
|
1019
|
-
* Sets the variant properties and deletes a variant change
|
|
1020
|
-
* @param {string} sVariantManagementReference - Variant management reference
|
|
1021
|
-
* @param {object} mPropertyBag - Property bag
|
|
1022
|
-
* @param {sap.ui.fl.apply._internal.flexObjects.FlexObject} oChange - Variant change to be deleted
|
|
1023
|
-
*/
|
|
1024
|
-
VariantModel.prototype.deleteVariantChange = function(sVariantManagementReference, mPropertyBag, oChange) {
|
|
1025
|
-
this.setVariantProperties(sVariantManagementReference, mPropertyBag);
|
|
1026
|
-
FlexObjectManager.deleteFlexObjects({
|
|
1027
|
-
reference: this.sFlexReference,
|
|
1028
|
-
flexObjects: [oChange]
|
|
1029
|
-
});
|
|
1030
|
-
};
|
|
1031
|
-
|
|
1032
661
|
/**
|
|
1033
662
|
* Sets the passed properties on a variant for the passed variant management reference and
|
|
1034
663
|
* returns the content for change creation
|
|
@@ -1213,6 +842,7 @@ sap.ui.define([
|
|
|
1213
842
|
}
|
|
1214
843
|
};
|
|
1215
844
|
|
|
845
|
+
// TODO refactor to use standard functions, not functions bound to the model instance that need to be initialized
|
|
1216
846
|
VariantModel.prototype._initializeManageVariantsEvents = function() {
|
|
1217
847
|
this.fnManageClickRta = function(oEvent, oData) {
|
|
1218
848
|
const oModelChanges = this._collectModelChanges(oData.variantManagementReference, oData.layer, oEvent);
|
|
@@ -1220,189 +850,27 @@ sap.ui.define([
|
|
|
1220
850
|
};
|
|
1221
851
|
|
|
1222
852
|
this.fnManageClick = function(oEvent, oData) {
|
|
1223
|
-
(
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
return;
|
|
1227
|
-
}
|
|
1228
|
-
const {
|
|
1229
|
-
changes: aConfigurationChangesContent,
|
|
1230
|
-
variantsToBeDeleted: aVariantsToBeDeleted
|
|
1231
|
-
} = this._collectModelChanges(sVMReference, Layer.USER, oEvent);
|
|
1232
|
-
|
|
1233
|
-
if (aConfigurationChangesContent.some((oChange) => {
|
|
1234
|
-
return oChange.visible === false
|
|
1235
|
-
&& oChange.variantReference === this.getCurrentVariantReference(sVMReference);
|
|
1236
|
-
})) {
|
|
1237
|
-
await this.updateCurrentVariant({
|
|
1238
|
-
variantManagementReference: sVMReference,
|
|
1239
|
-
newVariantReference: sVMReference
|
|
1240
|
-
});
|
|
1241
|
-
}
|
|
1242
|
-
|
|
1243
|
-
aConfigurationChangesContent.forEach(function(oChangeProperties) {
|
|
1244
|
-
oChangeProperties.appComponent = this.oAppComponent;
|
|
1245
|
-
}.bind(this));
|
|
1246
|
-
|
|
1247
|
-
const aNewVariantChanges = this.addVariantChanges(sVMReference, aConfigurationChangesContent);
|
|
1248
|
-
const aVariantDeletionChanges = aVariantsToBeDeleted
|
|
1249
|
-
.map((sVariantKey) => {
|
|
1250
|
-
const oVariant = VariantManagementState.getVariant({
|
|
1251
|
-
reference: this.sFlexReference,
|
|
1252
|
-
vmReference: sVMReference,
|
|
1253
|
-
vReference: sVariantKey
|
|
1254
|
-
});
|
|
1255
|
-
if (oVariant.layer === Layer.USER) {
|
|
1256
|
-
return ControlVariantWriteUtils.deleteVariant(this.sFlexReference, sVMReference, sVariantKey);
|
|
1257
|
-
}
|
|
1258
|
-
return [];
|
|
1259
|
-
})
|
|
1260
|
-
.flat();
|
|
1261
|
-
// Save all changes unless they were just added and then removed immediately
|
|
1262
|
-
// or are deleted and still dirty and were thus directly removed from the state
|
|
1263
|
-
const aChanges = [
|
|
1264
|
-
..._difference(aNewVariantChanges, aVariantDeletionChanges),
|
|
1265
|
-
...aVariantDeletionChanges.filter((oChange) => oChange.getState() !== States.LifecycleState.NEW)
|
|
1266
|
-
];
|
|
1267
|
-
// Always pass the pre-defined changes here to avoid that UI changes that are part of the FlexState
|
|
1268
|
-
// are also persisted during variant manage save
|
|
1269
|
-
this.oChangePersistence.saveDirtyChanges(this.oAppComponent, false, aChanges);
|
|
1270
|
-
})();
|
|
853
|
+
sap.ui.require(["sap/ui/fl/variants/VariantManager"], function(VariantManager) {
|
|
854
|
+
VariantManager.handleManageEvent(oEvent, oData, this);
|
|
855
|
+
}.bind(this));
|
|
1271
856
|
};
|
|
1272
857
|
};
|
|
1273
858
|
|
|
1274
|
-
function handleDirtyChanges(oFlexController, aCopiedVariantDirtyChanges, sVariantManagementReference, oAppComponent) {
|
|
1275
|
-
if (!this._bDesignTimeMode) {
|
|
1276
|
-
return oFlexController.saveSequenceOfDirtyChanges(aCopiedVariantDirtyChanges, oAppComponent)
|
|
1277
|
-
.then(function(oResponse) {
|
|
1278
|
-
if (oResponse) {
|
|
1279
|
-
const oVariantFlexObject = oResponse.response.find((oFlexObject) => oFlexObject.fileType === "ctrl_variant");
|
|
1280
|
-
const oAffectedVariant = this.oData[sVariantManagementReference].variants
|
|
1281
|
-
.find((oVariant) => oVariant.key === oVariantFlexObject.fileName);
|
|
1282
|
-
const oSupportInformation = oAffectedVariant.instance.getSupportInformation();
|
|
1283
|
-
oSupportInformation.user = oVariantFlexObject.support.user;
|
|
1284
|
-
oAffectedVariant.instance.setSupportInformation(oSupportInformation);
|
|
1285
|
-
}
|
|
1286
|
-
|
|
1287
|
-
// TODO: as soon as the invalidation is done automatically this can be removed
|
|
1288
|
-
this.invalidateMap();
|
|
1289
|
-
}.bind(this));
|
|
1290
|
-
}
|
|
1291
|
-
return Promise.resolve();
|
|
1292
|
-
}
|
|
1293
|
-
|
|
1294
859
|
VariantModel.prototype._handleSaveEvent = function(oEvent) {
|
|
1295
860
|
if (!this._bDesignTimeMode) {
|
|
1296
861
|
var oVariantManagementControl = oEvent.getSource();
|
|
1297
862
|
var mParameters = oEvent.getParameters();
|
|
1298
|
-
|
|
863
|
+
sap.ui.require(["sap/ui/fl/variants/VariantManager"], function(VariantManager) {
|
|
864
|
+
VariantManager.handleSaveEvent(oVariantManagementControl, mParameters, this);
|
|
865
|
+
}.bind(this));
|
|
1299
866
|
}
|
|
1300
|
-
return Promise.resolve();
|
|
1301
867
|
};
|
|
1302
868
|
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
var aNewVariantDirtyChanges;
|
|
1307
|
-
|
|
1308
|
-
return executeAfterSwitch(function(sVariantManagementReference, oAppComponent, mParameters) {
|
|
1309
|
-
var sSourceVariantReference = this.getCurrentVariantReference(sVariantManagementReference);
|
|
1310
|
-
var aSourceVariantChanges = VariantManagementState.getControlChangesForVariant({
|
|
1311
|
-
reference: this.sFlexReference,
|
|
1312
|
-
vmReference: sVariantManagementReference,
|
|
1313
|
-
vReference: sSourceVariantReference
|
|
1314
|
-
});
|
|
1315
|
-
|
|
1316
|
-
if (mParameters.overwrite) {
|
|
1317
|
-
// handle triggered "Save" button.
|
|
1318
|
-
// Include special handling for PUBLIC variant which requires changing of all the dirty changes to PUBLIC layer before saving.
|
|
1319
|
-
aNewVariantDirtyChanges = this._getDirtyChangesFromVariantChanges(aSourceVariantChanges);
|
|
1320
|
-
if (this.getVariant(sSourceVariantReference, sVariantManagementReference).layer === Layer.PUBLIC) {
|
|
1321
|
-
aNewVariantDirtyChanges.forEach((oChange) => oChange.setLayer(Layer.PUBLIC));
|
|
1322
|
-
}
|
|
1323
|
-
return this.oFlexController.saveSequenceOfDirtyChanges(
|
|
1324
|
-
aNewVariantDirtyChanges,
|
|
1325
|
-
oAppComponent
|
|
1326
|
-
)
|
|
1327
|
-
.then(function(oResponse) {
|
|
1328
|
-
// TODO: as soon as the invalidation is done automatically this can be removed
|
|
1329
|
-
this.invalidateMap();
|
|
1330
|
-
return oResponse;
|
|
1331
|
-
}.bind(this));
|
|
1332
|
-
}
|
|
1333
|
-
|
|
1334
|
-
var sVariantLayer = mParameters.layer || (mParameters.public ? Layer.PUBLIC : Layer.USER);
|
|
1335
|
-
var sVariantChangeLayer = mParameters.layer || Layer.USER;
|
|
1336
|
-
|
|
1337
|
-
// handle triggered "SaveAs" button
|
|
1338
|
-
var sNewVariantReference = mParameters.newVariantReference || Utils.createDefaultFileName("flVariant");
|
|
1339
|
-
var mPropertyBag = {
|
|
1340
|
-
variantManagementReference: sVariantManagementReference,
|
|
1341
|
-
appComponent: oAppComponent,
|
|
1342
|
-
layer: sVariantLayer,
|
|
1343
|
-
title: mParameters.name,
|
|
1344
|
-
contexts: mParameters.contexts,
|
|
1345
|
-
sourceVariantReference: sSourceVariantReference,
|
|
1346
|
-
newVariantReference: sNewVariantReference,
|
|
1347
|
-
generator: mParameters.generator,
|
|
1348
|
-
additionalVariantChanges: [],
|
|
1349
|
-
adaptationId: getAdaptationId(sVariantChangeLayer, oAppComponent, this.sFlexReference)
|
|
1350
|
-
};
|
|
1351
|
-
|
|
1352
|
-
var oBaseChangeProperties = {
|
|
1353
|
-
content: {},
|
|
1354
|
-
reference: this.sFlexReference,
|
|
1355
|
-
generator: mPropertyBag.generator,
|
|
1356
|
-
layer: sVariantChangeLayer,
|
|
1357
|
-
adaptationId: mPropertyBag.adaptationId
|
|
1358
|
-
};
|
|
1359
|
-
|
|
1360
|
-
if (mParameters.def) {
|
|
1361
|
-
var mPropertyBagSetDefault = merge({
|
|
1362
|
-
changeType: "setDefault",
|
|
1363
|
-
content: {
|
|
1364
|
-
defaultVariant: sNewVariantReference
|
|
1365
|
-
},
|
|
1366
|
-
fileType: "ctrl_variant_management_change",
|
|
1367
|
-
selector: JsControlTreeModifier.getSelector(sVariantManagementReference, mPropertyBag.appComponent)
|
|
1368
|
-
}, oBaseChangeProperties);
|
|
1369
|
-
mPropertyBag.additionalVariantChanges.push(FlexObjectFactory.createUIChange(mPropertyBagSetDefault));
|
|
1370
|
-
}
|
|
1371
|
-
if (mParameters.execute) {
|
|
1372
|
-
var mPropertyBagSetExecute = merge({
|
|
1373
|
-
changeType: "setExecuteOnSelect",
|
|
1374
|
-
content: {
|
|
1375
|
-
executeOnSelect: true
|
|
1376
|
-
},
|
|
1377
|
-
fileType: "ctrl_variant_change",
|
|
1378
|
-
selector: JsControlTreeModifier.getSelector(mPropertyBag.newVariantReference, mPropertyBag.appComponent)
|
|
1379
|
-
}, oBaseChangeProperties);
|
|
1380
|
-
mPropertyBag.additionalVariantChanges.push(FlexObjectFactory.createUIChange(mPropertyBagSetExecute));
|
|
1381
|
-
}
|
|
1382
|
-
|
|
1383
|
-
return this.copyVariant(mPropertyBag)
|
|
1384
|
-
.then(function(aCopiedVariantDirtyChanges) {
|
|
1385
|
-
aNewVariantDirtyChanges = aCopiedVariantDirtyChanges;
|
|
1386
|
-
// unsaved changes on the source variant are removed before copied variant changes are saved
|
|
1387
|
-
return eraseDirtyChanges({
|
|
1388
|
-
changes: aSourceVariantChanges,
|
|
1389
|
-
vmReference: sVariantManagementReference,
|
|
1390
|
-
vReference: sSourceVariantReference,
|
|
1391
|
-
model: this
|
|
1392
|
-
})
|
|
1393
|
-
.then(handleDirtyChanges.bind(
|
|
1394
|
-
this,
|
|
1395
|
-
this.oFlexController,
|
|
1396
|
-
aNewVariantDirtyChanges,
|
|
1397
|
-
sVariantManagementReference,
|
|
1398
|
-
oAppComponent
|
|
1399
|
-
));
|
|
1400
|
-
}.bind(this));
|
|
1401
|
-
}.bind(this, sVMReference, oAppComponent, mParameters), this)
|
|
1402
|
-
.then(function() {
|
|
1403
|
-
return aNewVariantDirtyChanges;
|
|
869
|
+
function variantSelectHandler(oEvent, mPropertyBag) {
|
|
870
|
+
sap.ui.require(["sap/ui/fl/variants/VariantManager"], function(VariantManager) {
|
|
871
|
+
VariantManager.handleSelectVariant(oEvent, mPropertyBag);
|
|
1404
872
|
});
|
|
1405
|
-
}
|
|
873
|
+
}
|
|
1406
874
|
|
|
1407
875
|
VariantModel.prototype.getLocalId = function(sId, oAppComponent) {
|
|
1408
876
|
return JsControlTreeModifier.getSelector(sId, oAppComponent).id;
|
|
@@ -1438,24 +906,26 @@ sap.ui.define([
|
|
|
1438
906
|
|
|
1439
907
|
function resolveTitleBindingsAndCreateVariantChanges(oVariantManagementControl, sVariantManagementReference) {
|
|
1440
908
|
this.oData[sVariantManagementReference].variants.forEach(function(oVariant) {
|
|
1441
|
-
// Find model and key from patterns like {i18n>TextKey} or {i18n>namespace.
|
|
1442
|
-
|
|
909
|
+
// Find model and key from patterns like {i18n>TextKey} or {i18n>namespace.TextKey} - only resource models are supported
|
|
910
|
+
const aMatches = oVariant.title && oVariant.title.match(/{(\w+)>(\w.+)}/);
|
|
1443
911
|
if (aMatches) {
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
var oModel = oVariantManagementControl.getModel(sModelName);
|
|
912
|
+
const [, sModelName, sKey] = aMatches;
|
|
913
|
+
const oModel = oVariantManagementControl.getModel(sModelName);
|
|
1447
914
|
if (oModel) {
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
915
|
+
const sResolvedTitle = oModel.getResourceBundle().getText(sKey);
|
|
916
|
+
const mChangeProperties = {
|
|
917
|
+
reference: this.sFlexReference,
|
|
1451
918
|
changeType: "setTitle",
|
|
1452
|
-
title: sResolvedTitle,
|
|
1453
919
|
layer: oVariant.layer,
|
|
1454
|
-
|
|
920
|
+
fileType: "ctrl_variant_change",
|
|
921
|
+
selector: JsControlTreeModifier.getSelector(oVariant.key, this.oAppComponent)
|
|
922
|
+
|
|
1455
923
|
};
|
|
1456
|
-
|
|
924
|
+
const oSetTitleChange = FlexObjectFactory.createUIChange(mChangeProperties);
|
|
925
|
+
oSetTitleChange.setText("title", sResolvedTitle, "XFLD");
|
|
926
|
+
oVariant.instance.setName(sResolvedTitle, true);
|
|
1457
927
|
// The change cannot be added as a dirty change but must survive a state invalidation
|
|
1458
|
-
VariantManagementState.addRuntimeSteadyObject(this.sFlexReference, this.oAppComponent.getId(),
|
|
928
|
+
VariantManagementState.addRuntimeSteadyObject(this.sFlexReference, this.oAppComponent.getId(), oSetTitleChange);
|
|
1459
929
|
} else {
|
|
1460
930
|
// Wait for model to be assigned and try again
|
|
1461
931
|
oVariantManagementControl.attachEventOnce(
|