@openui5/sap.ui.fl 1.112.2 → 1.113.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/THIRDPARTY.txt +1 -1
  2. package/package.json +3 -3
  3. package/src/sap/ui/fl/.library +1 -1
  4. package/src/sap/ui/fl/Cache.js +1 -1
  5. package/src/sap/ui/fl/ChangePersistence.js +42 -32
  6. package/src/sap/ui/fl/ChangePersistenceFactory.js +1 -1
  7. package/src/sap/ui/fl/FakeLrepConnectorLocalStorage.js +1 -1
  8. package/src/sap/ui/fl/FakeLrepConnectorSessionStorage.js +1 -1
  9. package/src/sap/ui/fl/FakeLrepLocalStorage.js +1 -1
  10. package/src/sap/ui/fl/FlexController.js +1 -1
  11. package/src/sap/ui/fl/FlexControllerFactory.js +22 -18
  12. package/src/sap/ui/fl/LayerUtils.js +1 -1
  13. package/src/sap/ui/fl/Utils.js +1 -1
  14. package/src/sap/ui/fl/apply/_internal/DelegateMediator.js +1 -1
  15. package/src/sap/ui/fl/apply/_internal/changes/FlexCustomData.js +1 -1
  16. package/src/sap/ui/fl/apply/_internal/changes/Utils.js +1 -1
  17. package/src/sap/ui/fl/apply/_internal/changes/descriptor/Preprocessor.js +1 -1
  18. package/src/sap/ui/fl/apply/_internal/changes/descriptor/Registration.js +1 -1
  19. package/src/sap/ui/fl/apply/_internal/changes/descriptor/RegistrationBuild.js +1 -1
  20. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/AddAnnotationsToOData.js +1 -1
  21. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/AddNewInbound.js +1 -1
  22. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/ChangeDataSource.js +1 -1
  23. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/ChangeInbound.js +1 -1
  24. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/RemoveAllInboundsExceptOne.js +1 -1
  25. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/SetTitle.js +1 -1
  26. package/src/sap/ui/fl/apply/_internal/changes/descriptor/fiori/SetAbstract.js +1 -1
  27. package/src/sap/ui/fl/apply/_internal/changes/descriptor/fiori/SetRegistrationIds.js +1 -1
  28. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ovp/AddNewCard.js +1 -1
  29. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ovp/ChangeCard.js +1 -1
  30. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ovp/DeleteCard.js +1 -1
  31. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddComponentUsages.js +1 -1
  32. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddLibrary.js +1 -1
  33. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddNewModel.js +1 -1
  34. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddNewModelEnhanceWith.js +1 -1
  35. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/SetFlexExtensionPointEnabled.js +1 -1
  36. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/SetMinUI5Version.js +1 -1
  37. package/src/sap/ui/fl/apply/_internal/connectors/ObjectStorageUtils.js +1 -1
  38. package/src/sap/ui/fl/apply/_internal/controlVariants/URLHandler.js +6 -6
  39. package/src/sap/ui/fl/apply/_internal/extensionPoint/Processor.js +2 -2
  40. package/src/sap/ui/fl/apply/_internal/flexObjects/AppDescriptorChange.js +1 -1
  41. package/src/sap/ui/fl/apply/_internal/flexObjects/CompVariant.js +1 -1
  42. package/src/sap/ui/fl/apply/_internal/flexObjects/ControllerExtensionChange.js +1 -1
  43. package/src/sap/ui/fl/apply/_internal/flexObjects/FlVariant.js +1 -1
  44. package/src/sap/ui/fl/apply/_internal/flexObjects/FlexObject.js +5 -1
  45. package/src/sap/ui/fl/apply/_internal/flexObjects/FlexObjectFactory.js +1 -1
  46. package/src/sap/ui/fl/apply/_internal/flexObjects/UIChange.js +1 -1
  47. package/src/sap/ui/fl/apply/_internal/flexObjects/Variant.js +1 -1
  48. package/src/sap/ui/fl/apply/_internal/flexState/FlexState.js +1 -1
  49. package/src/sap/ui/fl/apply/_internal/flexState/Loader.js +1 -1
  50. package/src/sap/ui/fl/apply/_internal/flexState/ManifestUtils.js +1 -1
  51. package/src/sap/ui/fl/apply/_internal/flexState/UI2Personalization/UI2PersonalizationState.js +1 -1
  52. package/src/sap/ui/fl/apply/_internal/flexState/changes/DependencyHandler.js +1 -1
  53. package/src/sap/ui/fl/apply/_internal/flexState/changes/ExtensionPointState.js +1 -1
  54. package/src/sap/ui/fl/apply/_internal/flexState/compVariants/CompVariantMerger.js +2 -2
  55. package/src/sap/ui/fl/apply/_internal/flexState/controlVariants/Switcher.js +1 -1
  56. package/src/sap/ui/fl/apply/_internal/flexState/controlVariants/VariantManagementState.js +1 -1
  57. package/src/sap/ui/fl/apply/_internal/preprocessors/ControllerExtension.js +1 -1
  58. package/src/sap/ui/fl/apply/_internal/preprocessors/EventHistory.js +1 -1
  59. package/src/sap/ui/fl/apply/_internal/preprocessors/RegistrationDelegator.js +1 -1
  60. package/src/sap/ui/fl/apply/_internal/preprocessors/XmlPreprocessor.js +1 -1
  61. package/src/sap/ui/fl/apply/api/ControlVariantApplyAPI.js +1 -1
  62. package/src/sap/ui/fl/changeHandler/AddIFrame.js +1 -1
  63. package/src/sap/ui/fl/changeHandler/AddXML.js +1 -1
  64. package/src/sap/ui/fl/changeHandler/AddXMLAtExtensionPoint.js +1 -1
  65. package/src/sap/ui/fl/changeHandler/Base.js +1 -1
  66. package/src/sap/ui/fl/changeHandler/BaseAddViaDelegate.js +1 -1
  67. package/src/sap/ui/fl/changeHandler/BaseAddXml.js +1 -1
  68. package/src/sap/ui/fl/changeHandler/BaseRename.js +1 -1
  69. package/src/sap/ui/fl/changeHandler/HideControl.js +1 -1
  70. package/src/sap/ui/fl/changeHandler/MoveControls.js +1 -1
  71. package/src/sap/ui/fl/changeHandler/MoveElements.js +1 -1
  72. package/src/sap/ui/fl/changeHandler/PropertyBindingChange.js +1 -1
  73. package/src/sap/ui/fl/changeHandler/PropertyChange.js +1 -1
  74. package/src/sap/ui/fl/changeHandler/StashControl.js +1 -1
  75. package/src/sap/ui/fl/changeHandler/UnhideControl.js +1 -1
  76. package/src/sap/ui/fl/changeHandler/UnstashControl.js +1 -1
  77. package/src/sap/ui/fl/changeHandler/UpdateIFrame.js +1 -1
  78. package/src/sap/ui/fl/descriptorRelated/api/DescriptorChangeFactory.js +4 -4
  79. package/src/sap/ui/fl/descriptorRelated/api/DescriptorInlineChangeFactory.js +1 -1
  80. package/src/sap/ui/fl/descriptorRelated/api/DescriptorVariantFactory.js +1 -1
  81. package/src/sap/ui/fl/descriptorRelated/internal/Utils.js +3 -3
  82. package/src/sap/ui/fl/designtime/util/IFrame.designtime.js +36 -31
  83. package/src/sap/ui/fl/initial/_internal/Storage.js +1 -1
  84. package/src/sap/ui/fl/initial/_internal/StorageUtils.js +2 -1
  85. package/src/sap/ui/fl/initial/_internal/changeHandlers/ChangeHandlerRegistration.js +1 -1
  86. package/src/sap/ui/fl/initial/_internal/changeHandlers/ChangeHandlerStorage.js +1 -1
  87. package/src/sap/ui/fl/initial/_internal/changeHandlers/ChangeRegistryItem.js +1 -1
  88. package/src/sap/ui/fl/initial/_internal/connectors/Utils.js +1 -1
  89. package/src/sap/ui/fl/initial/_internal/storageResultDisassemble.js +1 -1
  90. package/src/sap/ui/fl/interfaces/BaseLoadConnector.js +1 -1
  91. package/src/sap/ui/fl/interfaces/Delegate.js +1 -1
  92. package/src/sap/ui/fl/library.js +43 -43
  93. package/src/sap/ui/fl/messagebundle_sl.properties +2 -2
  94. package/src/sap/ui/fl/registry/Settings.js +1 -2
  95. package/src/sap/ui/fl/support/_internal/getChangeDependencies.js +1 -1
  96. package/src/sap/ui/fl/support/_internal/getFlexSettings.js +1 -1
  97. package/src/sap/ui/fl/support/api/SupportAPI.js +1 -1
  98. package/src/sap/ui/fl/support/apps/contentbrowser/controller/ContentDetails.controller.js +1 -1
  99. package/src/sap/ui/fl/support/apps/contentbrowser/controller/ContentDetailsEdit.controller.js +1 -1
  100. package/src/sap/ui/fl/support/apps/contentbrowser/controller/LayerContentMaster.controller.js +1 -1
  101. package/src/sap/ui/fl/support/apps/contentbrowser/controller/Layers.controller.js +1 -1
  102. package/src/sap/ui/fl/support/apps/contentbrowser/lrepConnector/LRepConnector.js +1 -1
  103. package/src/sap/ui/fl/support/apps/contentbrowser/utils/DataUtils.js +11 -13
  104. package/src/sap/ui/fl/support/apps/contentbrowser/utils/ErrorUtils.js +1 -1
  105. package/src/sap/ui/fl/transport/TransportSelection.js +1 -1
  106. package/src/sap/ui/fl/util/IFrame.js +2 -2
  107. package/src/sap/ui/fl/util/ManagedObjectModel.js +1 -1
  108. package/src/sap/ui/fl/util/resolveBinding.js +1 -1
  109. package/src/sap/ui/fl/variants/VariantModel.js +7 -2
  110. package/src/sap/ui/fl/write/_internal/Storage.js +2 -2
  111. package/src/sap/ui/fl/write/_internal/StorageFeaturesMerger.js +1 -1
  112. package/src/sap/ui/fl/write/_internal/Versions.js +7 -2
  113. package/src/sap/ui/fl/write/_internal/appVariant/AppVariant.js +1 -1
  114. package/src/sap/ui/fl/write/_internal/appVariant/AppVariantFactory.js +1 -1
  115. package/src/sap/ui/fl/write/_internal/appVariant/AppVariantInlineChange.js +1 -1
  116. package/src/sap/ui/fl/write/_internal/appVariant/AppVariantInlineChangeFactory.js +1 -1
  117. package/src/sap/ui/fl/write/_internal/condenser/Condenser.js +24 -9
  118. package/src/sap/ui/fl/write/_internal/condenser/UIReconstruction.js +36 -27
  119. package/src/sap/ui/fl/write/_internal/condenser/Utils.js +1 -1
  120. package/src/sap/ui/fl/write/_internal/condenser/classifications/Update.js +10 -1
  121. package/src/sap/ui/fl/write/_internal/connectors/BackendConnector.js +1 -1
  122. package/src/sap/ui/fl/write/_internal/connectors/KeyUserConnector.js +1 -1
  123. package/src/sap/ui/fl/write/_internal/connectors/LrepConnector.js +1 -1
  124. package/src/sap/ui/fl/write/_internal/connectors/NeoLrepConnector.js +1 -1
  125. package/src/sap/ui/fl/write/_internal/connectors/ObjectPathConnector.js +1 -1
  126. package/src/sap/ui/fl/write/_internal/connectors/PersonalizationConnector.js +1 -1
  127. package/src/sap/ui/fl/write/_internal/connectors/Utils.js +1 -1
  128. package/src/sap/ui/fl/write/_internal/extensionPoint/Processor.js +1 -1
  129. package/src/sap/ui/fl/write/_internal/extensionPoint/Registry.js +1 -1
  130. package/src/sap/ui/fl/write/_internal/fieldExtensibility/ABAPAccess.js +1 -1
  131. package/src/sap/ui/fl/write/_internal/fieldExtensibility/ABAPExtensibilityVariant.js +1 -1
  132. package/src/sap/ui/fl/write/_internal/fieldExtensibility/ABAPExtensibilityVariantFactory.js +1 -1
  133. package/src/sap/ui/fl/write/_internal/fieldExtensibility/MultiTenantABAPExtensibilityVariant.js +1 -1
  134. package/src/sap/ui/fl/write/_internal/fieldExtensibility/ServiceValidation.js +1 -1
  135. package/src/sap/ui/fl/write/_internal/fieldExtensibility/SingleTenantABAPExtensibilityVariant.js +1 -1
  136. package/src/sap/ui/fl/write/_internal/fieldExtensibility/UriParser.js +1 -1
  137. package/src/sap/ui/fl/write/_internal/fieldExtensibility/Utils.js +1 -1
  138. package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/CAPAccess.js +1 -1
  139. package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/dialog/CustomFieldCAPDialog.js +1 -1
  140. package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/editor/propertyEditor/booleanEditor/BooleanEditor.js +1 -1
  141. package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/editor/propertyEditor/rangeEditor/RangeEditor.js +1 -1
  142. package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/editor/propertyEditor/timeEditor/TimeEditor.js +1 -1
  143. package/src/sap/ui/fl/write/_internal/flexState/FlexObjectState.js +1 -1
  144. package/src/sap/ui/fl/write/_internal/flexState/compVariants/CompVariantState.js +18 -1
  145. package/src/sap/ui/fl/write/_internal/transport/TransportSelection.js +1 -1
  146. package/src/sap/ui/fl/write/_internal/transport/Transports.js +1 -1
  147. package/src/sap/ui/fl/write/api/ChangesWriteAPI.js +25 -5
  148. package/src/sap/ui/fl/write/api/ContextBasedAdaptationsAPI.js +118 -4
  149. package/src/sap/ui/fl/write/api/ControlPersonalizationWriteAPI.js +34 -14
  150. package/src/sap/ui/fl/write/api/FeaturesAPI.js +19 -9
  151. package/src/sap/ui/fl/write/api/FieldExtensibility.js +1 -1
  152. package/src/sap/ui/fl/write/api/VersionsAPI.js +5 -3
  153. package/src/sap/ui/fl/write/api/connectors/ObjectStorageConnector.js +2 -1
package/THIRDPARTY.txt CHANGED
@@ -478,7 +478,7 @@ License: Apache-2.0
478
478
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
479
479
  Contained in: lib/jsdoc/ui5/plugin.js
480
480
 
481
- Component: SAP Theming Base Content, version: 11.1.48
481
+ Component: SAP Theming Base Content, version: 11.2.1
482
482
  Copyright: SAP SE or an SAP affiliate company and Theming Base Content contributors
483
483
  License: Apache-2.0
484
484
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.ui.fl",
3
- "version": "1.112.2",
3
+ "version": "1.113.0",
4
4
  "description": "OpenUI5 UI Library sap.ui.fl",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -14,7 +14,7 @@
14
14
  "url": "https://github.com/SAP/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.m": "1.112.2",
18
- "@openui5/sap.ui.core": "1.112.2"
17
+ "@openui5/sap.m": "1.113.0",
18
+ "@openui5/sap.ui.core": "1.113.0"
19
19
  }
20
20
  }
@@ -6,7 +6,7 @@
6
6
  <copyright>OpenUI5
7
7
  * (c) Copyright 2009-2023 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.112.2</version>
9
+ <version>1.113.0</version>
10
10
 
11
11
  <documentation>SAPUI5 library with sap.ui.fl controls.</documentation>
12
12
 
@@ -24,7 +24,7 @@ function(
24
24
  * @alias sap.ui.fl.Cache
25
25
  * @experimental Since 1.25.0
26
26
  * @author SAP SE
27
- * @version 1.112.2
27
+ * @version 1.113.0
28
28
  *
29
29
  * @private
30
30
  * @ui5-restricted sap.ui.fl
@@ -66,7 +66,7 @@ sap.ui.define([
66
66
  *
67
67
  * @constructor
68
68
  * @author SAP SE
69
- * @version 1.112.2
69
+ * @version 1.113.0
70
70
  * @experimental Since 1.25.0
71
71
  * @param {object} mComponent - Component data to initiate <code>ChangePersistence</code> instance
72
72
  * @param {string} mComponent.name - Name of the component this instance is responsible for
@@ -606,10 +606,9 @@ sap.ui.define([
606
606
  return aPersistedAndSameLayerChanges.concat(aDirtyChanges);
607
607
  }
608
608
 
609
- function canSingleRequestBeUsed(aDirtyChanges) {
609
+ function checkLayerAndSingleTransportRequest(aDirtyChanges) {
610
610
  if (aDirtyChanges.length) {
611
611
  var aRequests = getRequests(aDirtyChanges);
612
- var aStates = getStates(aDirtyChanges);
613
612
  var bCheckLayer = true;
614
613
  if (Settings.getInstanceOrUndef() && Settings.getInstanceOrUndef().hasPersoConnector()) {
615
614
  // Created public fl-Variant as default variant will created public and user changes
@@ -617,11 +616,45 @@ sap.ui.define([
617
616
  var aLayers = getLayers(aDirtyChanges);
618
617
  bCheckLayer = aLayers.length === 1;
619
618
  }
620
- return aStates.length === 1 && aRequests.length === 1 && aStates[0] === States.LifecycleState.NEW && bCheckLayer;
619
+ return aRequests.length === 1 && bCheckLayer;
621
620
  }
622
621
  return true;
623
622
  }
624
623
 
624
+ function executeWriteAndRemoveCalls(sCurrentLayer, sRequest, sParentVersion, bSkipUpdateCache, aAllChanges, aCondensedChanges) {
625
+ var aCondensedDeleteChanges = [];
626
+ var pRemoveCallsPromise = Promise.resolve();
627
+ var aNewChanges = aCondensedChanges.filter(function(oCondensedChange) {
628
+ if (oCondensedChange.getState() === States.LifecycleState.DELETED) {
629
+ aCondensedDeleteChanges.push(oCondensedChange);
630
+ return false;
631
+ }
632
+ return true;
633
+ });
634
+
635
+ // "remove" only supports a single change; multiple calls are required
636
+ if (aCondensedDeleteChanges.length) {
637
+ pRemoveCallsPromise = this.saveSequenceOfDirtyChanges(aCondensedDeleteChanges, bSkipUpdateCache, sParentVersion);
638
+ }
639
+
640
+ // "write" supports multiple changes at once
641
+ return pRemoveCallsPromise.then(function() {
642
+ if (aNewChanges.length) {
643
+ return Storage.write({
644
+ layer: sCurrentLayer,
645
+ flexObjects: prepareDirtyChanges(aNewChanges),
646
+ transport: sRequest,
647
+ isLegacyVariant: false,
648
+ parentVersion: sParentVersion
649
+ }).then(function(oResponse) {
650
+ updateCacheAndDeleteUnsavedChanges.call(this, aAllChanges, aNewChanges, bSkipUpdateCache);
651
+ return oResponse;
652
+ }.bind(this));
653
+ }
654
+ return this._deleteNotSavedChanges(aAllChanges, aCondensedChanges);
655
+ }.bind(this));
656
+ }
657
+
625
658
  /**
626
659
  * Saves the passed or all dirty changes by calling the appropriate back-end method (create for new changes, deleteChange for deleted changes);
627
660
  * to ensure the correct order, the methods are called sequentially;
@@ -651,7 +684,8 @@ sap.ui.define([
651
684
  var aChangesClone = aAllChanges.slice(0);
652
685
  var aRequests = getRequests(aDirtyChanges);
653
686
 
654
- if (canSingleRequestBeUsed(aDirtyChanges)) {
687
+ // Condensing is only allowed if all dirty changes belong to the same Transport Request
688
+ if (checkLayerAndSingleTransportRequest(aDirtyChanges)) {
655
689
  var oCondensedChangesPromise = Promise.resolve(aChangesClone);
656
690
  if (canGivenChangesBeCondensed(oAppComponent, aChangesClone, bCondenseAnyLayer)) {
657
691
  oCondensedChangesPromise = Condenser.condense(oAppComponent, aChangesClone);
@@ -671,22 +705,10 @@ sap.ui.define([
671
705
  return oResponse;
672
706
  }.bind(this));
673
707
  }
674
- if (aCondensedChanges.length) {
675
- return Storage.write({
676
- layer: sCurrentLayer,
677
- flexObjects: prepareDirtyChanges(aCondensedChanges),
678
- transport: sRequest,
679
- isLegacyVariant: false,
680
- parentVersion: sParentVersion
681
- }).then(function(oResponse) {
682
- updateCacheAndDeleteUnsavedChanges.call(this, aAllChanges, aCondensedChanges, bSkipUpdateCache);
683
- return oResponse;
684
- }.bind(this));
685
- }
686
- this._deleteNotSavedChanges(aAllChanges, aCondensedChanges);
708
+ // Non-condensing route
709
+ return executeWriteAndRemoveCalls.call(this, sCurrentLayer, sRequest, sParentVersion, bSkipUpdateCache, aAllChanges, aCondensedChanges);
687
710
  }.bind(this));
688
711
  }
689
-
690
712
  return this.saveSequenceOfDirtyChanges(aDirtyChanges, bSkipUpdateCache, sParentVersion);
691
713
  };
692
714
 
@@ -739,6 +761,7 @@ sap.ui.define([
739
761
  parentVersion: sParentVersion
740
762
  });
741
763
  default:
764
+ return Promise.resolve();
742
765
  }
743
766
  }
744
767
 
@@ -802,19 +825,6 @@ sap.ui.define([
802
825
  return aRequests;
803
826
  }
804
827
 
805
- function getStates(aDirtyChanges) {
806
- var aStates = [];
807
-
808
- aDirtyChanges.forEach(function(oChange) {
809
- var sState = oChange.getState();
810
- if (aStates.indexOf(sState) === -1) {
811
- aStates.push(sState);
812
- }
813
- });
814
-
815
- return aStates;
816
- }
817
-
818
828
  function getLayers(aDirtyChanges) {
819
829
  var aLayers = [];
820
830
 
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @alias sap.ui.fl.ChangePersistenceFactory
31
31
  * @experimental Since 1.27.0
32
32
  * @author SAP SE
33
- * @version 1.112.2
33
+ * @version 1.113.0
34
34
  * @private
35
35
  * @ui5-restricted sap.ui.fl
36
36
  */
@@ -20,7 +20,7 @@ function(
20
20
  * @namespace
21
21
  *
22
22
  * @author SAP SE
23
- * @version 1.112.2
23
+ * @version 1.113.0
24
24
  *
25
25
  * @private
26
26
  * @since 1.48
@@ -20,7 +20,7 @@ function(
20
20
  * @namespace
21
21
  *
22
22
  * @author SAP SE
23
- * @version 1.112.2
23
+ * @version 1.113.0
24
24
  *
25
25
  * @private
26
26
  * @since 1.58
@@ -17,7 +17,7 @@ sap.ui.define([
17
17
  * @namespace
18
18
  *
19
19
  * @author SAP SE
20
- * @version 1.112.2
20
+ * @version 1.113.0
21
21
  *
22
22
  * @private
23
23
  * @since 1.48
@@ -88,7 +88,7 @@ sap.ui.define([
88
88
  * @alias sap.ui.fl.FlexController
89
89
  * @experimental Since 1.27.0
90
90
  * @author SAP SE
91
- * @version 1.112.2
91
+ * @version 1.113.0
92
92
  */
93
93
  var FlexController = function(sComponentName) {
94
94
  this._oChangePersistence = undefined;
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  * @alias sap.ui.fl.FlexControllerFactory
35
35
  * @experimental Since 1.27.0
36
36
  * @author SAP SE
37
- * @version 1.112.2
37
+ * @version 1.113.0
38
38
  *
39
39
  * @private
40
40
  * @ui5-restricted sap.ui.fl
@@ -46,6 +46,7 @@ sap.ui.define([
46
46
  // in this object a promise is stored for every application component instance
47
47
  // if the same instance is initialized twice the promise is replaced
48
48
  FlexControllerFactory._componentInstantiationPromises = new WeakMap();
49
+ var oEmbeddedComponentsPromises = {};
49
50
 
50
51
  /**
51
52
  * Creates or returns an instance of the FlexController
@@ -151,31 +152,34 @@ sap.ui.define([
151
152
  var oReturnPromise = FlexState.initialize({
152
153
  componentId: sComponentId,
153
154
  asyncHints: vConfig.asyncHints
154
- }).then(_propagateChangesForAppComponent.bind(this, oComponent));
155
+ })
156
+ .then(_propagateChangesForAppComponent.bind(this, oComponent))
157
+ .then(function() {
158
+ // update any potential embedded component waiting for this app component
159
+ if (oEmbeddedComponentsPromises[sComponentId]) {
160
+ oEmbeddedComponentsPromises[sComponentId].forEach(function(oEmbeddedComponent) {
161
+ var oVariantModel = oComponent.getModel(ControlVariantApplyAPI.getVariantModelName());
162
+ oEmbeddedComponent.setModel(oVariantModel, ControlVariantApplyAPI.getVariantModelName());
163
+ });
164
+ delete oEmbeddedComponentsPromises[sComponentId];
165
+ }
166
+ });
155
167
  FlexControllerFactory._componentInstantiationPromises.set(oComponent, oReturnPromise);
168
+
156
169
  return oReturnPromise;
157
170
  } else if (Utils.isEmbeddedComponent(oComponent)) {
158
171
  var oAppComponent = Utils.getAppComponentForControl(oComponent);
159
172
  // Some embedded components might not have an app component, e.g. sap.ushell.plugins.rta, sap.ushell.plugins.rta-personalize
160
173
  if (oAppComponent && Utils.isApplicationComponent(oAppComponent)) {
161
- var oInitialPromise = Promise.resolve();
174
+ // once the VModel is set to the outer component it also has to be set to any embedded component
162
175
  if (FlexControllerFactory._componentInstantiationPromises.has(oAppComponent)) {
163
- oInitialPromise = FlexControllerFactory._componentInstantiationPromises.get(oAppComponent);
176
+ return FlexControllerFactory._componentInstantiationPromises.get(oAppComponent).then(function() {
177
+ var oVariantModel = oAppComponent.getModel(ControlVariantApplyAPI.getVariantModelName());
178
+ oComponent.setModel(oVariantModel, ControlVariantApplyAPI.getVariantModelName());
179
+ });
164
180
  }
165
- return oInitialPromise.then(function() {
166
- var oExistingVariantModel = oAppComponent.getModel(ControlVariantApplyAPI.getVariantModelName());
167
- if (!oExistingVariantModel) {
168
- // If variant model is not present on the app component
169
- // then a new variant model should be set on it.
170
- // Setting a variant model will ensure that at least a standard variant will exist
171
- // for all variant management controls.
172
- return _propagateChangesForAppComponent(oAppComponent);
173
- }
174
- return oExistingVariantModel;
175
- }).then(function (oVariantModel) {
176
- // set app component's variant model on the embedded component
177
- oComponent.setModel(oVariantModel, ControlVariantApplyAPI.getVariantModelName());
178
- });
181
+ oEmbeddedComponentsPromises[oAppComponent.getId()] = oEmbeddedComponentsPromises[oAppComponent.getId()] || [];
182
+ oEmbeddedComponentsPromises[oAppComponent.getId()].push(oComponent);
179
183
  }
180
184
  return Promise.resolve();
181
185
  }
@@ -41,7 +41,7 @@ sap.ui.define([
41
41
  *
42
42
  * @namespace sap.ui.fl.LayerUtils
43
43
  * @author SAP SE
44
- * @version 1.112.2
44
+ * @version 1.113.0
45
45
  */
46
46
  var LayerUtils = {
47
47
  _mLayersIndex: mLayersIndex,
@@ -67,7 +67,7 @@ sap.ui.define([
67
67
  * @namespace
68
68
  * @alias sap.ui.fl.Utils
69
69
  * @author SAP SE
70
- * @version 1.112.2
70
+ * @version 1.113.0
71
71
  *
72
72
  * @private
73
73
  * @ui5-restricted sap.ui.fl, sap.ui.rta
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  *
26
26
  * @private
27
27
  * @author SAP SE
28
- * @version 1.112.2
28
+ * @version 1.113.0
29
29
  *
30
30
  * @experimental Since 1.80 This class is experimental and provides only limited functionality. Also the API might be
31
31
  * changed in future.
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @alias sap.ui.fl.FlexCustomData
31
31
  * @experimental Since 1.61.0
32
32
  * @author SAP SE
33
- * @version 1.112.2
33
+ * @version 1.113.0
34
34
  */
35
35
  var FlexCustomData = {};
36
36
 
@@ -22,7 +22,7 @@ sap.ui.define([
22
22
  *
23
23
  * @namespace sap.ui.fl.apply._internal.changes.Utils
24
24
  * @since 1.70
25
- * @version 1.112.2
25
+ * @version 1.113.0
26
26
  * @private
27
27
  * @ui5-restricted sap.ui.fl.apply._internal, sap.ui.fl.write._internal
28
28
  */
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  *
28
28
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.Preprocessor
29
29
  * @since 1.74
30
- * @version 1.112.2
30
+ * @version 1.113.0
31
31
  * @private
32
32
  * @ui5-restricted sap.ui.fl.apply._internal
33
33
  */
@@ -17,7 +17,7 @@ sap.ui.define([
17
17
  *
18
18
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.Registration
19
19
  * @since 1.74
20
- * @version 1.112.2
20
+ * @version 1.113.0
21
21
  * @private
22
22
  * @ui5-restricted sap.ui.fl.apply._internal
23
23
  */
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  *
21
21
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.RegistrationBuild
22
22
  * @since 1.77
23
- * @version 1.112.2
23
+ * @version 1.113.0
24
24
  * @private
25
25
  * @ui5-restricted sap.ui.fl.apply._internal
26
26
  */
@@ -138,7 +138,7 @@ sap.ui.define([
138
138
  *
139
139
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.app.AddAnnotationsToOData
140
140
  * @since 1.87
141
- * @version 1.112.2
141
+ * @version 1.113.0
142
142
  * @private
143
143
  * @ui5-restricted sap.ui.fl.apply._internal
144
144
  */
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * Available for build {@link sap.ui.fl.apply._internal.changes.descriptor.RegistrationBuild}.
34
34
  *
35
35
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.app.AddNewInbound
36
- * @version 1.112.2
36
+ * @version 1.113.0
37
37
  * @private
38
38
  * @ui5-restricted sap.ui.fl.apply._internal
39
39
  */
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  *
27
27
  * @namespace
28
28
  * @alias sap.ui.fl.apply._internal.changes.descriptor.app.ChangeDataSource
29
- * @version 1.112.2
29
+ * @version 1.113.0
30
30
  * @private
31
31
  * @ui5-restricted sap.ui.fl.apply._internal
32
32
  */
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * Available for both runtime and build {@link sap.ui.fl.apply._internal.changes.descriptor.RegistrationBuild}.
25
25
  *
26
26
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.app.ChangeInbound
27
- * @version 1.112.2
27
+ * @version 1.113.0
28
28
  * @private
29
29
  * @ui5-restricted sap.ui.fl.apply._internal
30
30
  */
@@ -43,7 +43,7 @@ sap.ui.define([
43
43
  * Available for build {@link sap.ui.fl.apply._internal.changes.descriptor.RegistrationBuild}.
44
44
  *
45
45
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.app.RemoveAllInboundsExceptOne
46
- * @version 1.112.2
46
+ * @version 1.113.0
47
47
  * @private
48
48
  * @ui5-restricted sap.ui.fl.apply._internal
49
49
  */
@@ -19,7 +19,7 @@ sap.ui.define([
19
19
  * Available for both runtime and build {@link sap.ui.fl.apply._internal.changes.descriptor.Registration}.
20
20
  *
21
21
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.app.SetTitle
22
- * @version 1.112.2
22
+ * @version 1.113.0
23
23
  * @private
24
24
  * @ui5-restricted sap.ui.fl.apply._internal
25
25
  */
@@ -19,7 +19,7 @@ sap.ui.define([
19
19
  * Only available during build time {@link sap.ui.fl.apply._internal.changes.descriptor.RegistrationBuild}.
20
20
  *
21
21
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.fiori.SetAbstract
22
- * @version 1.112.2
22
+ * @version 1.113.0
23
23
  * @private
24
24
  * @ui5-restricted sap.ui.fl.apply._internal
25
25
  */
@@ -19,7 +19,7 @@ sap.ui.define([
19
19
  * Only available during build time {@link sap.ui.fl.apply._internal.changes.descriptor.RegistrationBuild}.
20
20
  *
21
21
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.fiori.SetRegistrationIds
22
- * @version 1.112.2
22
+ * @version 1.113.0
23
23
  * @private
24
24
  * @ui5-restricted sap.ui.fl.apply._internal
25
25
  */
@@ -18,7 +18,7 @@ sap.ui.define([
18
18
  * Available for both runtime and build {@link sap.ui.fl.apply._internal.changes.descriptor.Registration}.
19
19
  *
20
20
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.ovp.AddNewCard
21
- * @version 1.112.2
21
+ * @version 1.113.0
22
22
  * @private
23
23
  * @ui5-restricted sap.ui.fl.apply._internal
24
24
  */
@@ -18,7 +18,7 @@ sap.ui.define([
18
18
  * Available for both runtime and build {@link sap.ui.fl.apply._internal.changes.descriptor.Registration}.
19
19
  *
20
20
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.ovp.ChangeCard
21
- * @version 1.112.2
21
+ * @version 1.113.0
22
22
  * @private
23
23
  * @ui5-restricted sap.ui.fl.apply._internal
24
24
  */
@@ -18,7 +18,7 @@ sap.ui.define([
18
18
  * Available for both runtime and build {@link sap.ui.fl.apply._internal.changes.descriptor.Registration}.
19
19
  *
20
20
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.ovp.DeleteCard
21
- * @version 1.112.2
21
+ * @version 1.113.0
22
22
  * @private
23
23
  * @ui5-restricted sap.ui.fl.apply._internal
24
24
  */
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  *
21
21
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.ui5.AddComponentUsages
22
22
  * @since 1.86
23
- * @version 1.112.2
23
+ * @version 1.113.0
24
24
  * @private
25
25
  * @ui5-restricted sap.ui.fl.apply._internal
26
26
  */
@@ -48,7 +48,7 @@ sap.ui.define([
48
48
  *
49
49
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.ui5.AddLibrary
50
50
  * @since 1.74
51
- * @version 1.112.2
51
+ * @version 1.113.0
52
52
  * @private
53
53
  * @ui5-restricted sap.ui.fl.apply._internal
54
54
  */
@@ -96,7 +96,7 @@ sap.ui.define([
96
96
  *
97
97
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.ui5.AddNewModel
98
98
  * @since 1.87
99
- * @version 1.112.2
99
+ * @version 1.113.0
100
100
  * @private
101
101
  * @ui5-restricted sap.ui.fl.apply._internal
102
102
  */
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * Only available during build time {@link sap.ui.fl.apply._internal.changes.descriptor.RegistrationBuild}.
24
24
  *
25
25
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.ui5.AddNewModelEnhanceWith
26
- * @version 1.112.2
26
+ * @version 1.113.0
27
27
  * @private
28
28
  * @ui5-restricted sap.ui.fl.apply._internal
29
29
  */
@@ -19,7 +19,7 @@ sap.ui.define([
19
19
  * Only available during build time {@link sap.ui.fl.apply._internal.changes.descriptor.RegistrationBuild}.
20
20
  *
21
21
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.ui5.SetFlexExtensionPointEnabled
22
- * @version 1.112.2
22
+ * @version 1.113.0
23
23
  * @private
24
24
  * @ui5-restricted sap.ui.fl.apply._internal
25
25
  */
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  * Only available during build time {@link sap.ui.fl.apply._internal.changes.descriptor.RegistrationBuild}.
22
22
  *
23
23
  * @namespace sap.ui.fl.apply._internal.changes.descriptor.ui5.SetMinUI5Version
24
- * @version 1.112.2
24
+ * @version 1.113.0
25
25
  * @private
26
26
  * @ui5-restricted sap.ui.fl.apply._internal
27
27
  */
@@ -12,7 +12,7 @@ sap.ui.define([], function () {
12
12
  *
13
13
  * @namespace sap.ui.fl.initial._internal.connectors.Utils
14
14
  * @since 1.70
15
- * @version 1.112.2
15
+ * @version 1.113.0
16
16
  * @private
17
17
  * @ui5-restricted sap.ui.fl.initial._internal, sap.ui.fl.write._internal
18
18
  */
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  var _mVariantIdChangeHandlers = {};
37
37
 
38
38
  /**
39
- * URL handler utility for <code>sap.ui.fl variants</code> (@see sap.ui.fl.variants.VariantManagement}
39
+ * URL handler utility for <code>sap.ui.fl variants</code> (see {@link sap.ui.fl.variants.VariantManagement})
40
40
  *
41
41
  * @namespace
42
42
  * @alias sap.ui.fl.apply._internal.controlVariants.URLHandler
@@ -109,7 +109,7 @@ sap.ui.define([
109
109
  * @param {string} sNewHash - New hash
110
110
  *
111
111
  * @returns {string} Value that signifies "Continue" navigation in the "ShellNavigation" service of ushell
112
- * {@see sap.ushell.services.ShellNavigation}
112
+ * (see {@link sap.ushell.services.ShellNavigation})
113
113
  *
114
114
  * @private
115
115
  */
@@ -275,8 +275,8 @@ sap.ui.define([
275
275
  URLHandler.variantTechnicalParameterName = "sap-ui-fl-control-variant-id";
276
276
 
277
277
  /**
278
- * Initializes hash data for the passed variant model.
279
- * {@see sap.ui.fl.variants.VariantModel}
278
+ * Initializes hash data for the passed variant model
279
+ * (see {@link sap.ui.fl.variants.VariantModel}).
280
280
  *
281
281
  * @param {object} mPropertyBag - Property bag
282
282
  * @param {sap.ui.fl.variants.VariantModel} mPropertyBag.model - Variant model
@@ -461,8 +461,8 @@ sap.ui.define([
461
461
  };
462
462
 
463
463
  /**
464
- * Returns the current hash parameters from the variant model's hash data.
465
- * {@see sap.ui.fl.variants.VariantModel}
464
+ * Returns the current hash parameters from the variant model's hash data
465
+ * (see {@link sap.ui.fl.variants.VariantModel}).
466
466
  *
467
467
  * @param {object} mPropertyBag - Property bag
468
468
  * @param {sap.ui.fl.variants.VariantModel} mPropertyBag.model - Variant model
@@ -34,7 +34,7 @@ function(
34
34
  * @class
35
35
  * @constructor
36
36
  * @author SAP SE
37
- * @version 1.112.2
37
+ * @version 1.113.0
38
38
  */
39
39
  var Processor;
40
40
 
@@ -45,7 +45,7 @@ function(
45
45
  aResolvedControls.splice(iControlIndex + iNestedControlIndex + iNestedEPAdditionalContentCounter, 0, oNestedControl);
46
46
  });
47
47
  oControl.index += iNestedEPAdditionalContentCounter;
48
- // the iControlIndex counts the extensionpoint as 1 control. when the EP is replaced by content with more then one control
48
+ // the iControlIndex counts the extensionpoint as 1 control. when the EP is replaced by content with more than one control
49
49
  // then we need to have an additional content counter for correct index calculations for the following extension points
50
50
  return aNestedControls.length - 1;
51
51
  });
@@ -18,7 +18,7 @@ sap.ui.define([
18
18
  * @extends sap.ui.fl.apply._internal.flexObjects.FlexObject
19
19
  * @alias sap.ui.fl.apply._internal.flexObjects.AppDescriptorChange
20
20
  * @since 1.105
21
- * @version 1.112.2
21
+ * @version 1.113.0
22
22
  * @private
23
23
  * @ui5-restricted
24
24
  */
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @extends sap.ui.fl.apply._internal.flexObjects.Variant
33
33
  * @alias sap.ui.fl.apply._internal.flexObjects.CompVariant
34
34
  * @since 1.103
35
- * @version 1.112.2
35
+ * @version 1.113.0
36
36
  * @private
37
37
  * @ui5-restricted sap.ui.fl, sap.ui.comp
38
38
  */
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  * @extends sap.ui.fl.apply._internal.flexObjects.FlexObject
21
21
  * @alias sap.ui.fl.apply._internal.flexObjects.ControllerExtensionChange
22
22
  * @since 1.105
23
- * @version 1.112.2
23
+ * @version 1.113.0
24
24
  * @private
25
25
  * @ui5-restricted sap.ui.fl
26
26
  */