@openui5/sap.ui.fl 1.111.2 → 1.112.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/package.json +3 -3
  2. package/src/sap/ui/fl/.library +1 -1
  3. package/src/sap/ui/fl/Cache.js +1 -1
  4. package/src/sap/ui/fl/ChangePersistence.js +1 -1
  5. package/src/sap/ui/fl/ChangePersistenceFactory.js +1 -1
  6. package/src/sap/ui/fl/FakeLrepConnector.js +3 -13
  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 +7 -2
  11. package/src/sap/ui/fl/FlexControllerFactory.js +1 -1
  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/ChangesController.js +3 -28
  15. package/src/sap/ui/fl/apply/_internal/DelegateMediator.js +1 -1
  16. package/src/sap/ui/fl/apply/_internal/changes/FlexCustomData.js +1 -1
  17. package/src/sap/ui/fl/apply/_internal/changes/Utils.js +1 -1
  18. package/src/sap/ui/fl/apply/_internal/changes/descriptor/Preprocessor.js +1 -2
  19. package/src/sap/ui/fl/apply/_internal/changes/descriptor/Registration.js +1 -2
  20. package/src/sap/ui/fl/apply/_internal/changes/descriptor/RegistrationBuild.js +3 -2
  21. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/AddAnnotationsToOData.js +2 -3
  22. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/AddNewInbound.js +76 -0
  23. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/ChangeDataSource.js +2 -3
  24. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/ChangeInbound.js +12 -13
  25. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/RemoveAllInboundsExceptOne.js +76 -0
  26. package/src/sap/ui/fl/apply/_internal/changes/descriptor/app/SetTitle.js +2 -3
  27. package/src/sap/ui/fl/apply/_internal/changes/descriptor/fiori/SetAbstract.js +2 -3
  28. package/src/sap/ui/fl/apply/_internal/changes/descriptor/fiori/SetRegistrationIds.js +4 -5
  29. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ovp/AddNewCard.js +4 -5
  30. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ovp/ChangeCard.js +8 -9
  31. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ovp/DeleteCard.js +4 -5
  32. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddComponentUsages.js +3 -4
  33. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddLibrary.js +4 -5
  34. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddNewModel.js +2 -3
  35. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/AddNewModelEnhanceWith.js +5 -6
  36. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/SetFlexExtensionPointEnabled.js +4 -5
  37. package/src/sap/ui/fl/apply/_internal/changes/descriptor/ui5/SetMinUI5Version.js +4 -5
  38. package/src/sap/ui/fl/apply/_internal/connectors/ObjectStorageUtils.js +18 -5
  39. package/src/sap/ui/fl/apply/_internal/extensionPoint/Processor.js +1 -1
  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 -11
  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 -23
  49. package/src/sap/ui/fl/apply/_internal/flexState/Loader.js +1 -1
  50. package/src/sap/ui/fl/apply/_internal/flexState/ManifestUtils.js +3 -10
  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 +2 -2
  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 +3 -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/changeHandler/common/createIFrame.js +7 -1
  79. package/src/sap/ui/fl/changeHandler/common/revertAddedControls.js +21 -31
  80. package/src/sap/ui/fl/descriptorRelated/api/DescriptorChangeFactory.js +4 -4
  81. package/src/sap/ui/fl/descriptorRelated/api/DescriptorInlineChangeFactory.js +1 -1
  82. package/src/sap/ui/fl/descriptorRelated/api/DescriptorVariantFactory.js +1 -1
  83. package/src/sap/ui/fl/designtime/util/IFrame.designtime.js +34 -3
  84. package/src/sap/ui/fl/designtime/variants/VariantManagement.designtime.js +2 -0
  85. package/src/sap/ui/fl/initial/_internal/Storage.js +1 -1
  86. package/src/sap/ui/fl/initial/_internal/StorageUtils.js +1 -1
  87. package/src/sap/ui/fl/initial/_internal/changeHandlers/ChangeHandlerRegistration.js +1 -1
  88. package/src/sap/ui/fl/initial/_internal/changeHandlers/ChangeHandlerStorage.js +1 -1
  89. package/src/sap/ui/fl/initial/_internal/changeHandlers/ChangeRegistryItem.js +1 -1
  90. package/src/sap/ui/fl/initial/_internal/connectors/Utils.js +1 -1
  91. package/src/sap/ui/fl/initial/_internal/storageResultDisassemble.js +1 -1
  92. package/src/sap/ui/fl/interfaces/BaseLoadConnector.js +1 -1
  93. package/src/sap/ui/fl/interfaces/Delegate.js +1 -1
  94. package/src/sap/ui/fl/library.js +43 -43
  95. package/src/sap/ui/fl/messagebundle_bg.properties +2 -2
  96. package/src/sap/ui/fl/support/_internal/extractChangeDependencies.js +1 -0
  97. package/src/sap/ui/fl/support/_internal/getChangeDependencies.js +1 -1
  98. package/src/sap/ui/fl/support/_internal/getFlexSettings.js +1 -1
  99. package/src/sap/ui/fl/support/api/SupportAPI.js +1 -1
  100. package/src/sap/ui/fl/support/apps/contentbrowser/controller/ContentDetails.controller.js +1 -1
  101. package/src/sap/ui/fl/support/apps/contentbrowser/controller/ContentDetailsEdit.controller.js +1 -1
  102. package/src/sap/ui/fl/support/apps/contentbrowser/controller/LayerContentMaster.controller.js +1 -1
  103. package/src/sap/ui/fl/support/apps/contentbrowser/controller/Layers.controller.js +1 -1
  104. package/src/sap/ui/fl/support/apps/contentbrowser/lrepConnector/LRepConnector.js +1 -1
  105. package/src/sap/ui/fl/support/apps/contentbrowser/utils/DataUtils.js +1 -1
  106. package/src/sap/ui/fl/support/apps/contentbrowser/utils/ErrorUtils.js +1 -1
  107. package/src/sap/ui/fl/transport/TransportSelection.js +1 -1
  108. package/src/sap/ui/fl/util/DescriptorChangeCheck.js +45 -4
  109. package/src/sap/ui/fl/util/IFrame.js +12 -2
  110. package/src/sap/ui/fl/util/ManagedObjectModel.js +1 -1
  111. package/src/sap/ui/fl/util/resolveBinding.js +1 -1
  112. package/src/sap/ui/fl/variants/VariantManagement.js +17 -0
  113. package/src/sap/ui/fl/variants/VariantModel.js +63 -42
  114. package/src/sap/ui/fl/write/_internal/SaveAs.js +25 -61
  115. package/src/sap/ui/fl/write/_internal/Storage.js +1 -1
  116. package/src/sap/ui/fl/write/_internal/StorageFeaturesMerger.js +1 -1
  117. package/src/sap/ui/fl/write/_internal/Versions.js +4 -1
  118. package/src/sap/ui/fl/write/_internal/appVariant/AppVariant.js +1 -1
  119. package/src/sap/ui/fl/write/_internal/appVariant/AppVariantFactory.js +1 -1
  120. package/src/sap/ui/fl/write/_internal/appVariant/AppVariantInlineChange.js +1 -1
  121. package/src/sap/ui/fl/write/_internal/appVariant/AppVariantInlineChangeFactory.js +1 -1
  122. package/src/sap/ui/fl/write/_internal/condenser/Condenser.js +29 -22
  123. package/src/sap/ui/fl/write/_internal/condenser/UIReconstruction.js +1 -1
  124. package/src/sap/ui/fl/write/_internal/connectors/BackendConnector.js +1 -1
  125. package/src/sap/ui/fl/write/_internal/connectors/KeyUserConnector.js +1 -1
  126. package/src/sap/ui/fl/write/_internal/connectors/LrepConnector.js +1 -1
  127. package/src/sap/ui/fl/write/_internal/connectors/NeoLrepConnector.js +1 -1
  128. package/src/sap/ui/fl/write/_internal/connectors/ObjectPathConnector.js +1 -1
  129. package/src/sap/ui/fl/write/_internal/connectors/PersonalizationConnector.js +1 -1
  130. package/src/sap/ui/fl/write/_internal/connectors/Utils.js +1 -1
  131. package/src/sap/ui/fl/write/_internal/extensionPoint/Processor.js +1 -1
  132. package/src/sap/ui/fl/write/_internal/extensionPoint/Registry.js +1 -1
  133. package/src/sap/ui/fl/write/_internal/fieldExtensibility/ABAPAccess.js +15 -11
  134. package/src/sap/ui/fl/write/_internal/fieldExtensibility/ABAPExtensibilityVariant.js +1 -1
  135. package/src/sap/ui/fl/write/_internal/fieldExtensibility/ABAPExtensibilityVariantFactory.js +1 -1
  136. package/src/sap/ui/fl/write/_internal/fieldExtensibility/MultiTenantABAPExtensibilityVariant.js +1 -1
  137. package/src/sap/ui/fl/write/_internal/fieldExtensibility/ServiceValidation.js +1 -1
  138. package/src/sap/ui/fl/write/_internal/fieldExtensibility/SingleTenantABAPExtensibilityVariant.js +1 -1
  139. package/src/sap/ui/fl/write/_internal/fieldExtensibility/UriParser.js +1 -1
  140. package/src/sap/ui/fl/write/_internal/fieldExtensibility/Utils.js +1 -1
  141. package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/CAPAccess.js +1 -1
  142. package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/dialog/CustomFieldCAPDialog.js +1 -1
  143. package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/editor/propertyEditor/booleanEditor/BooleanEditor.js +1 -1
  144. package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/editor/propertyEditor/rangeEditor/RangeEditor.js +1 -1
  145. package/src/sap/ui/fl/write/_internal/fieldExtensibility/cap/editor/propertyEditor/timeEditor/TimeEditor.js +1 -1
  146. package/src/sap/ui/fl/write/_internal/flexState/FlexObjectState.js +15 -21
  147. package/src/sap/ui/fl/write/_internal/flexState/compVariants/CompVariantState.js +5 -3
  148. package/src/sap/ui/fl/write/_internal/transport/TransportSelection.js +1 -1
  149. package/src/sap/ui/fl/write/_internal/transport/Transports.js +1 -1
  150. package/src/sap/ui/fl/write/api/AppVariantWriteAPI.js +3 -3
  151. package/src/sap/ui/fl/write/api/ChangesWriteAPI.js +1 -1
  152. package/src/sap/ui/fl/write/api/FieldExtensibility.js +1 -1
  153. package/src/sap/ui/fl/write/api/PersistenceWriteAPI.js +13 -4
  154. package/src/sap/ui/fl/write/api/SmartBusinessWriteAPI.js +2 -2
@@ -230,13 +230,22 @@ sap.ui.define([
230
230
  }
231
231
 
232
232
  function updatePersonalVariantPropertiesWithFlpSettings(oVariant) {
233
- Settings.getInstance().then(function (oSettings) {
234
- if (!oSettings.isVariantPersonalizationEnabled()) {
235
- oVariant.remove = false;
236
- oVariant.rename = false;
237
- oVariant.change = false;
238
- }
239
- });
233
+ var oSettings = Settings.getInstanceOrUndef();
234
+ if (oSettings && !oSettings.isVariantPersonalizationEnabled()) {
235
+ oVariant.remove = false;
236
+ oVariant.rename = false;
237
+ oVariant.change = false;
238
+ }
239
+ }
240
+
241
+ function updatePublicVariantPropertiesWithSettings(oVariant) {
242
+ var oSettings = Settings.getInstanceOrUndef();
243
+ var bUserIsAuthorized = oSettings &&
244
+ (oSettings.isKeyUser() || !oSettings.getUserId() ||
245
+ (oSettings.isPublicFlVariantEnabled() && oSettings.getUserId().toUpperCase() === oVariant.author.toUpperCase()));
246
+ oVariant.remove = bUserIsAuthorized;
247
+ oVariant.rename = bUserIsAuthorized;
248
+ oVariant.change = bUserIsAuthorized;
240
249
  }
241
250
 
242
251
  function isVariantValidForRemove(oVariant, sVariantManagementReference, bDesignTimeModeToBeSet) {
@@ -261,22 +270,43 @@ sap.ui.define([
261
270
  });
262
271
  }
263
272
 
273
+ function initUshellServices() {
274
+ var oUShellContainer = Utils.getUshellContainer();
275
+ if (oUShellContainer) {
276
+ var aServicePromises = [
277
+ Utils.getUShellService("UserInfo"),
278
+ Utils.getUShellService("URLParsing"),
279
+ Utils.getUShellService("CrossApplicationNavigation"),
280
+ Utils.getUShellService("ShellNavigation")
281
+ ];
282
+ return Promise.all(aServicePromises)
283
+ .then(function(aServices) {
284
+ setUShellService("UserInfo", aServices[0]);
285
+ setUShellService("URLParsing", aServices[1]);
286
+ setUShellService("CrossApplicationNavigation", aServices[2]);
287
+ setUShellService("ShellNavigation", aServices[3]);
288
+ })
289
+ .catch(function(vError) {
290
+ throw new Error("Error getting service from Unified Shell: " + vError);
291
+ });
292
+ }
293
+ }
294
+
264
295
  /**
265
296
  * Constructor for a new sap.ui.fl.variants.VariantModel model.
266
297
  * @class Variant model implementation for JSON format.
267
298
  * @extends sap.ui.model.json.JSONModel
268
299
  * @author SAP SE
269
- * @version 1.111.2
300
+ * @version 1.112.2
270
301
  * @param {object} oData - Either the URL where to load the JSON from or a JS object
271
302
  * @param {object} mPropertyBag - Map of properties required for the constructor
272
303
  * @param {sap.ui.fl.FlexController} mPropertyBag.flexController - <code>FlexController</code> instance for the component which uses the variant model
273
304
  * @param {sap.ui.core.Component} mPropertyBag.appComponent - Application component instance that is currently loading
274
305
  * @constructor
275
306
  * @private
276
- * @ui5-restricted
307
+ * @ui5-restricted sap.ui.fl
277
308
  * @since 1.50
278
309
  * @alias sap.ui.fl.variants.VariantModel
279
- * @experimental Since 1.50. This class is experimental and provides only limited functionality. Also the API might be changed in future.
280
310
  */
281
311
 
282
312
  var VariantModel = JSONModel.extend("sap.ui.fl.variants.VariantModel", /** @lends sap.ui.fl.variants.VariantModel.prototype */ {
@@ -348,29 +378,7 @@ sap.ui.define([
348
378
  * @returns {Promise} Promise resolving when the VariantModel is initialized
349
379
  */
350
380
  VariantModel.prototype.initialize = function() {
351
- return Promise.resolve()
352
- .then(function() {
353
- var oUShellContainer = Utils.getUshellContainer();
354
- if (oUShellContainer) {
355
- var aServicePromises = [
356
- Utils.getUShellService("UserInfo"),
357
- Utils.getUShellService("URLParsing"),
358
- Utils.getUShellService("CrossApplicationNavigation"),
359
- Utils.getUShellService("ShellNavigation")
360
- ];
361
- return Promise.all(aServicePromises)
362
- .then(function(aServices) {
363
- setUShellService("UserInfo", aServices[0]);
364
- setUShellService("URLParsing", aServices[1]);
365
- setUShellService("CrossApplicationNavigation", aServices[2]);
366
- setUShellService("ShellNavigation", aServices[3]);
367
- })
368
- .catch(function(vError) {
369
- throw new Error("Error getting service from Unified Shell: " + vError);
370
- });
371
- }
372
- return undefined;
373
- })
381
+ return Promise.all([Settings.getInstance(), initUshellServices()])
374
382
  .then(function() {
375
383
  //initialize hash data - variants map & model should exist at this point (set on constructor)
376
384
  URLHandler.initialize({ model: this });
@@ -767,9 +775,23 @@ sap.ui.define([
767
775
  originalContexts: oDuplicateVariantData.instance.getContexts(),
768
776
  contexts: oDuplicateVariantData.instance.getContexts()
769
777
  };
778
+ var aChanges = [];
779
+
780
+ // when created a new public variant other users do not see the new public variant
781
+ if (mPropertyBag.layer === Layer.PUBLIC) {
782
+ oDuplicateVariantData.instance.setFavorite(false);
783
+ var oChangeProperties = {
784
+ selector: JsControlTreeModifier.getSelector(mPropertyBag.newVariantReference, mPropertyBag.appComponent),
785
+ changeType: "setFavorite",
786
+ fileType: "ctrl_variant_change",
787
+ generator: mPropertyBag.generator,
788
+ layer: Layer.USER,
789
+ content: {favorite: true}
790
+ };
791
+ aChanges.push(this.oFlexController.createBaseChange(oChangeProperties, mPropertyBag.appComponent));
792
+ }
770
793
 
771
794
  // sets copied variant and associated changes as dirty
772
- var aChanges = [];
773
795
  [oDuplicateVariantData.instance].concat(oDuplicateVariantData.controlChanges).forEach(function(oChange) {
774
796
  aChanges.push(this.oChangePersistence.addDirtyChange(oChange));
775
797
  }.bind(this));
@@ -827,15 +849,18 @@ sap.ui.define([
827
849
  var aModelVariants = oData.variants;
828
850
  var aChanges = [];
829
851
  var mPropertyBag = {};
852
+ var oSettings = Settings.getInstanceOrUndef();
830
853
 
831
854
  aModelVariants.forEach(function(oVariant) {
855
+ // layer can be PUBLIC for setTitle, setExecuteOnSelect or setVisible, but never for setFavorite, setDefault or setContexts
856
+ var sLayerOfChange = oSettings && oSettings.isPublicFlVariantEnabled() && oVariant.layer === Layer.PUBLIC ? Layer.PUBLIC : sLayer;
832
857
  if (oVariant.originalTitle !== oVariant.title) {
833
858
  mPropertyBag = {
834
859
  variantReference: oVariant.key,
835
860
  changeType: "setTitle",
836
861
  title: oVariant.title,
837
862
  originalTitle: oVariant.originalTitle,
838
- layer: sLayer
863
+ layer: sLayerOfChange
839
864
  };
840
865
  aChanges.push(mPropertyBag);
841
866
  }
@@ -855,7 +880,7 @@ sap.ui.define([
855
880
  changeType: "setExecuteOnSelect",
856
881
  executeOnSelect: oVariant.executeOnSelect,
857
882
  originalExecuteOnSelect: oVariant.originalExecuteOnSelect,
858
- layer: sLayer
883
+ layer: sLayerOfChange
859
884
  };
860
885
  aChanges.push(mPropertyBag);
861
886
  }
@@ -864,7 +889,7 @@ sap.ui.define([
864
889
  variantReference: oVariant.key,
865
890
  changeType: "setVisible",
866
891
  visible: false,
867
- layer: sLayer
892
+ layer: sLayerOfChange
868
893
  };
869
894
  aChanges.push(mPropertyBag);
870
895
  }
@@ -1242,12 +1267,8 @@ sap.ui.define([
1242
1267
  updatePersonalVariantPropertiesWithFlpSettings(oVariant);
1243
1268
  break;
1244
1269
  case Layer.PUBLIC:
1245
- var oUser = this._oUserInfoService && this._oUserInfoService.getUser();
1246
- var bUserIsAuthorized = !oUser || oUser.getId().toUpperCase() === oVariant.author.toUpperCase() || Settings.getInstanceOrUndef().isKeyUser();
1247
- oVariant.remove = bUserIsAuthorized;
1248
- oVariant.rename = bUserIsAuthorized;
1249
- oVariant.change = bUserIsAuthorized;
1250
1270
  oVariant.sharing = this.sharing.PUBLIC;
1271
+ updatePublicVariantPropertiesWithSettings(oVariant);
1251
1272
  break;
1252
1273
  default:
1253
1274
  oVariant.rename = false;
@@ -12,7 +12,6 @@ sap.ui.define([
12
12
  "sap/ui/fl/Utils",
13
13
  "sap/base/Log",
14
14
  "sap/ui/fl/Layer",
15
- "sap/base/util/includes",
16
15
  "sap/base/util/merge",
17
16
  "sap/base/util/restricted/_omit",
18
17
  "sap/ui/fl/registry/Settings"
@@ -24,7 +23,6 @@ sap.ui.define([
24
23
  Utils,
25
24
  Log,
26
25
  Layer,
27
- includes,
28
26
  merge,
29
27
  _omit,
30
28
  Settings
@@ -137,60 +135,31 @@ sap.ui.define([
137
135
  }
138
136
 
139
137
  function _getDirtyDescrChanges(vSelector) {
140
- var oDescriptorFlexControllerPersistence = ChangesController.getDescriptorFlexControllerInstance(vSelector)._oChangePersistence;
141
- if (oDescriptorFlexControllerPersistence) {
142
- var aDescrChanges = oDescriptorFlexControllerPersistence.getDirtyChanges();
143
- aDescrChanges = aDescrChanges.slice();
144
- return aDescrChanges;
145
- }
146
- return [];
147
- }
148
-
149
- function _getDirtyUIChanges(vSelector) {
150
138
  var oFlexControllerPersistence = ChangesController.getFlexControllerInstance(vSelector)._oChangePersistence;
151
- if (oFlexControllerPersistence) {
152
- var aUIChanges = oFlexControllerPersistence.getDirtyChanges();
153
- aUIChanges = aUIChanges.slice();
154
- return aUIChanges;
139
+ if (!oFlexControllerPersistence) {
140
+ return [];
155
141
  }
156
- return [];
142
+ return oFlexControllerPersistence.getDirtyChanges().filter(function(oChange) {
143
+ return DescriptorChangeTypes.getChangeTypes().includes(oChange.getChangeType());
144
+ });
157
145
  }
158
146
 
159
- function _arePersistenciesTheSame(vSelector) {
147
+ function _getDirtyChanges(vSelector) {
160
148
  var oFlexControllerPersistence = ChangesController.getFlexControllerInstance(vSelector)._oChangePersistence;
161
- var oDescriptorFlexControllerPersistence = ChangesController.getDescriptorFlexControllerInstance(vSelector)._oChangePersistence;
162
- // If the base application is already an app variant, the references and both persistences are same
163
- return oFlexControllerPersistence === oDescriptorFlexControllerPersistence;
164
- }
165
-
166
- function _reactOnChangesBasedOnPersistences(vSelector, bArePersistencesEqual, oAppVariant) {
167
- var aDescrChanges = [];
168
- if (bArePersistencesEqual) {
169
- _getDirtyDescrChanges(vSelector).forEach(function(oChange) {
170
- // UI and Descriptor changes need to be separated here so as to perform different operations on changes
171
- if (includes(DescriptorChangeTypes.getChangeTypes(), oChange.getChangeType())) {
172
- aDescrChanges.push(oChange);
173
- } else {
174
- _moveChangesToNewFlexReference(oChange, oAppVariant);
175
- }
176
- });
177
- } else {
178
- _getDirtyUIChanges(vSelector).forEach(function(oChange) {
179
- _moveChangesToNewFlexReference(oChange, oAppVariant);
180
- });
181
-
182
- aDescrChanges = _getDirtyDescrChanges(vSelector);
149
+ if (!oFlexControllerPersistence) {
150
+ return [];
183
151
  }
184
-
185
- return aDescrChanges;
152
+ var aChanges = oFlexControllerPersistence.getDirtyChanges();
153
+ aChanges = aChanges.slice();
154
+ return aChanges;
186
155
  }
187
156
 
188
157
  function _deleteDescrChangesFromPersistence(vSelector) {
189
158
  // In case of app variant, both persistences hold descriptor changes and have to be removed from one of the persistences
190
159
  _getDirtyDescrChanges(vSelector).forEach(function(oChange) {
191
- if (includes(DescriptorChangeTypes.getChangeTypes(), oChange.getChangeType())) {
160
+ if (DescriptorChangeTypes.getChangeTypes().includes(oChange.getChangeType())) {
192
161
  // In case there are UI changes, they will be sent to the backend in the last resolved promise and will be removed from the persistence
193
- ChangesController.getDescriptorFlexControllerInstance(vSelector)._oChangePersistence.deleteChange(oChange);
162
+ ChangesController.getFlexControllerInstance(vSelector)._oChangePersistence.deleteChange(oChange);
194
163
  }
195
164
  });
196
165
  }
@@ -215,7 +184,6 @@ sap.ui.define([
215
184
  saveAs: function(mPropertyBag) {
216
185
  var oAppVariantClosure;
217
186
  var oAppVariantResultClosure;
218
- var bArePersistencesEqual = false;
219
187
 
220
188
  return AppVariantFactory.prepareCreate(mPropertyBag)
221
189
  .then(function(oAppVariant) {
@@ -226,8 +194,15 @@ sap.ui.define([
226
194
  return _setTransportAndPackageInfoForAppVariant(oAppVariantClosure, oTransportInfo);
227
195
  })
228
196
  .then(function() {
229
- bArePersistencesEqual = _arePersistenciesTheSame(mPropertyBag.selector);
230
- var aDescrChanges = _reactOnChangesBasedOnPersistences(mPropertyBag.selector, bArePersistencesEqual, oAppVariantClosure);
197
+ var aDescrChanges = [];
198
+ _getDirtyChanges(mPropertyBag.selector).forEach(function(oChange) {
199
+ // UI and Descriptor changes need to be separated here so as to perform different operations on changes
200
+ if (DescriptorChangeTypes.getChangeTypes().includes(oChange.getChangeType())) {
201
+ aDescrChanges.push(oChange);
202
+ } else {
203
+ _moveChangesToNewFlexReference(oChange, oAppVariantClosure);
204
+ }
205
+ });
231
206
  return _getInlineChangesFromDescrChanges(aDescrChanges);
232
207
  })
233
208
  .then(function(aAllInlineChanges) {
@@ -243,22 +218,15 @@ sap.ui.define([
243
218
  })
244
219
  .then(function(oResult) {
245
220
  oAppVariantResultClosure = merge({}, oResult);
246
-
247
- if (bArePersistencesEqual) {
248
- _deleteDescrChangesFromPersistence(mPropertyBag.selector);
249
- }
221
+ _deleteDescrChangesFromPersistence(mPropertyBag.selector);
250
222
 
251
223
  var oFlexController = ChangesController.getFlexControllerInstance(mPropertyBag.selector);
252
224
 
253
- var aUIChanges = _getDirtyUIChanges(mPropertyBag.selector);
225
+ var aUIChanges = _getDirtyChanges(mPropertyBag.selector); //after removing descr changes, all remaining dirty changes are UI changes
254
226
  if (aUIChanges.length) {
255
227
  // Save the dirty UI changes to backend => firing PersistenceWriteApi.save
256
228
  return oFlexController.saveAll(ChangesController.getAppComponentForSelector(mPropertyBag.selector), true)
257
229
  .catch(function(oError) {
258
- if (bArePersistencesEqual) {
259
- _deleteDescrChangesFromPersistence(mPropertyBag.selector);
260
- }
261
-
262
230
  // Delete the inconsistent app variant if the UI changes failed to save
263
231
  return this.deleteAppVariant({
264
232
  id: mPropertyBag.id
@@ -273,10 +241,6 @@ sap.ui.define([
273
241
  return Promise.resolve();
274
242
  }.bind(this))
275
243
  .then(function() {
276
- //Reference Application Usecase: Since the UI changes have been successfully saved, the descriptor inline changes will now be removed from persistence
277
- if (!bArePersistencesEqual) {
278
- _deleteDescrChangesFromPersistence(mPropertyBag.selector);
279
- }
280
244
  return oAppVariantResultClosure;
281
245
  })
282
246
  .catch(function(oError) {
@@ -317,7 +281,7 @@ sap.ui.define([
317
281
  .then(function() {
318
282
  var aDescrChanges = [];
319
283
  _getDirtyDescrChanges(mPropertyBag.selector).forEach(function(oChange) {
320
- if (includes(DescriptorChangeTypes.getChangeTypes(), oChange.getChangeType())) {
284
+ if (DescriptorChangeTypes.getChangeTypes().includes(oChange.getChangeType())) {
321
285
  aDescrChanges.push(oChange);
322
286
  }
323
287
  });
@@ -22,7 +22,7 @@ sap.ui.define([
22
22
  *
23
23
  * @namespace sap.ui.fl.write._internal.Storage
24
24
  * @since 1.67
25
- * @version 1.111.2
25
+ * @version 1.112.2
26
26
  * @private
27
27
  * @ui5-restricted sap.ui.fl
28
28
  */
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  *
17
17
  * @namespace sap.ui.fl.write._internal.StorageFeaturesMerger
18
18
  * @since 1.70
19
- * @version 1.111.2
19
+ * @version 1.112.2
20
20
  * @private
21
21
  * @ui5-restricted sap.ui.fl.write._internal.Storage
22
22
  */
@@ -174,7 +174,7 @@ sap.ui.define([
174
174
  *
175
175
  * @namespace sap.ui.fl.write._internal.Versions
176
176
  * @since 1.74
177
- * @version 1.111.2
177
+ * @version 1.112.2
178
178
  * @private
179
179
  * @ui5-restricted sap.ui.fl
180
180
  */
@@ -250,12 +250,15 @@ sap.ui.define([
250
250
  * @param {string} mPropertyBag.reference - ID of the application for which the versions are requested (this reference must not contain the ".Component" suffix)
251
251
  * @param {string} mPropertyBag.layer - Layer for which the versions should be retrieved
252
252
  * @param {boolean} [mPropertyBag.contextBasedAdaptation] - Parameter that indicates whether or not a new backend draft was triggered via contextBasedAdaptationsAPI
253
+ * @param {array} [mPropertyBag.draftFilenames] - Array with filesnames which was saved as draft
253
254
  */
254
255
  Versions.onAllChangesSaved = function (mPropertyBag) {
255
256
  mPropertyBag.reference = Utils.normalizeReference(mPropertyBag.reference);
256
257
  var oModel = Versions.getVersionsModel(mPropertyBag);
257
258
  var bVersioningEnabled = oModel.getProperty("/versioningEnabled");
258
259
  var bDirtyChanges = oModel.getProperty("/dirtyChanges");
260
+ var aDraftFilenames = oModel.getProperty("/draftFilenames");
261
+ oModel.setProperty("/draftFilenames", aDraftFilenames.concat(mPropertyBag.draftFilenames));
259
262
  oModel.setProperty("/dirtyChanges", true);
260
263
  oModel.setProperty("/backendDraft", bVersioningEnabled && bDirtyChanges || !!mPropertyBag.contextBasedAdaptation);
261
264
  oModel.updateDraftVersion();
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @constructor
36
36
  * @alias sap.ui.fl.write._internal.appVariant.AppVariant
37
37
  * @author SAP SE
38
- * @version 1.111.2
38
+ * @version 1.112.2
39
39
  * @private
40
40
  * @ui5-restricted sap.ui.rta, smart business
41
41
  */
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  * @namespace
35
35
  * @alias sap.ui.fl.write._internal.appVariant.AppVariantFactory
36
36
  * @author SAP SE
37
- * @version 1.111.2
37
+ * @version 1.112.2
38
38
  * @private
39
39
  * @ui5-restricted sap.ui.rta, smart business
40
40
  */
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @constructor
29
29
  * @alias sap.ui.fl.write._internal.appVariant.AppVariantInlineChange
30
30
  * @author SAP SE
31
- * @version 1.111.2
31
+ * @version 1.112.2
32
32
  * @private
33
33
  * @ui5-restricted sap.ui.rta, smart business
34
34
  */
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @namespace
34
34
  * @alias sap.ui.fl.write._internal.appVariant.AppVariantInlineChangeFactory
35
35
  * @author SAP SE
36
- * @version 1.111.2
36
+ * @version 1.112.2
37
37
  * @private
38
38
  * @ui5-restricted sap.ui.rta, smart business
39
39
  */
@@ -51,7 +51,7 @@ sap.ui.define([
51
51
  * @namespace
52
52
  * @alias sap.ui.fl.write._internal.condenser.Condenser
53
53
  * @author SAP SE
54
- * @version 1.111.2
54
+ * @version 1.112.2
55
55
  */
56
56
  var Condenser = {};
57
57
 
@@ -73,7 +73,7 @@ sap.ui.define([
73
73
  /**
74
74
  * Verify 'move' subtype has already been added to the data structure before 'create' subtype and they both belong to the same targetContainer
75
75
  *
76
- * @param {Map} mSubtypes - Map of properties that holds key-value pairs. A key is a unique identifier. A value is an array object that contains changes
76
+ * @param {object} mSubtypes - Map of properties that holds key-value pairs. A key is a unique identifier. A value is an array object that contains changes
77
77
  * @param {object} oCondenserInfo - Condenser specific information that is delivered by the change handler
78
78
  * @returns {boolean} <code>true</code> if the 'move' subtype has been added to the data structure before 'create' subtype
79
79
  */
@@ -87,7 +87,7 @@ sap.ui.define([
87
87
  /**
88
88
  * Verify 'destroy' subtype has already been added to the data structure before 'move' subtype
89
89
  *
90
- * @param {Map} mSubtypes - Map of properties that holds key-value pairs. A key is a unique identifier. A value is an array object that contains changes
90
+ * @param {object} mSubtypes - Map of properties that holds key-value pairs. A key is a unique identifier. A value is an array object that contains changes
91
91
  * @param {object} oCondenserInfo - Condenser specific information that is delivered by the change handler
92
92
  * @returns {boolean} <code>true</code> if the 'destroy' subtype has been added to the data structure before 'move' subtype
93
93
  */
@@ -98,7 +98,7 @@ sap.ui.define([
98
98
  /**
99
99
  * Verify 'destroy' subtype has already been added to the data structure before 'create' subtype
100
100
  *
101
- * @param {Map} mClassifications - Map of properties that holds key-value pairs. A key is a unique identifier. A value is an array object that contains changes
101
+ * @param {object} mClassifications - Map of properties that holds key-value pairs. A key is a unique identifier. A value is an array object that contains changes
102
102
  * @param {object} oCondenserInfo - Condenser specific information that is delivered by the change handler
103
103
  * @returns {boolean} <code>true</code> if the 'move' subtype has been added to the data structure before 'create' subtype
104
104
  */
@@ -109,8 +109,8 @@ sap.ui.define([
109
109
  /**
110
110
  * Adds an index-related change to the data structures.
111
111
  *
112
- * @param {Map} mClassifications - Map of properties that holds key-value pairs. A key is a unique identifier. A value is an array object that contains changes
113
- * @param {Map} mUIReconstructions - Map of UI reconstructions that holds key-value pairs. A key is a selector ID of the container. A value is a nested map which contains initial and target UI reconstructions
112
+ * @param {object} mClassifications - Map of properties that holds key-value pairs. A key is a unique identifier. A value is an array object that contains changes
113
+ * @param {object} mUIReconstructions - Map of UI reconstructions that holds key-value pairs. A key is a selector ID of the container. A value is a nested map which contains initial and target UI reconstructions
114
114
  * @param {object} oCondenserInfo - Condenser specific information that is delivered by the change handler
115
115
  * @param {sap.ui.fl.apply._internal.flexObjects.FlexObject} oChange - Change instance that will be added to the array
116
116
  * @returns {Promise} resolves when the change is added to the data structure
@@ -155,7 +155,7 @@ sap.ui.define([
155
155
 
156
156
  /**
157
157
  * Adds a non-index related change to the map.
158
- * @param {Map} mClassifications - Map of properties that holds key-value pairs. A key is a unique identifier. A value is an array object that contains changes
158
+ * @param {object} mClassifications - Map of properties that holds key-value pairs. A key is a unique identifier. A value is an array object that contains changes
159
159
  * @param {object} oCondenserInfo - Condenser specific information that is delivered by the change handler
160
160
  * @param {sap.ui.fl.apply._internal.flexObjects.FlexObject} oChange - Change instance that will be added to the array
161
161
  * @returns {Promise} returns when change is added to the map
@@ -172,10 +172,10 @@ sap.ui.define([
172
172
  /**
173
173
  * Adds a classified change to the data structures.
174
174
  *
175
- * @param {Map} mTypes - Map of classification types that holds key-value pairs. A key is a unique identifier. A value is a nested map which contains non-index-related and index-related reduced changes
176
- * @param {Map} mUIReconstructions - Map of UI reconstructions that holds key-value pairs. A key is a selector ID of the container. A value is a nested map which contains initial and target UI reconstructions
175
+ * @param {object} mTypes - Map of classification types that holds key-value pairs. A key is a unique identifier. A value is a nested map which contains non-index-related and index-related reduced changes
176
+ * @param {object} mUIReconstructions - Map of UI reconstructions that holds key-value pairs. A key is a selector ID of the container. A value is a nested map which contains initial and target UI reconstructions
177
177
  * @param {sap.ui.fl.apply._internal.flexObjects.FlexObject[]} aIndexRelatedChanges - Array of all index related changes
178
- * @param {Object} oCondenserInfo - Condenser-specific information that is delivered by the change handler
178
+ * @param {object} oCondenserInfo - Condenser-specific information that is delivered by the change handler
179
179
  * @param {sap.ui.fl.apply._internal.flexObjects.FlexObject} oChange - Change instance that will be added to the array
180
180
  * @returns {Promise} returns when change is added to the data structures
181
181
  */
@@ -196,7 +196,7 @@ sap.ui.define([
196
196
  /**
197
197
  * Adds an unclassified change to the data structure.
198
198
  *
199
- * @param {Map} mTypes - Map of change types that holds key-value pairs. A key is a unique identifier. A value is an array object that contains all unclassified changes
199
+ * @param {object} mTypes - Map of change types that holds key-value pairs. A key is a unique identifier. A value is an array object that contains all unclassified changes
200
200
  * @param {string} sKey - Key of the "unclassified" map that reflects the fact that the delivered change is not classified
201
201
  * @param {sap.ui.fl.apply._internal.flexObjects.FlexObject} oChange - Change instance
202
202
  */
@@ -262,14 +262,16 @@ sap.ui.define([
262
262
  /**
263
263
  * Retrieves the classification types map.
264
264
  *
265
- * @param {Map} mReducedChanges - Map of reduced changes
265
+ * @param {object} mReducedChanges - Map of reduced changes
266
266
  * @param {object} oCondenserInfo - Condenser-specific information that is delivered by the change handler
267
267
  * @param {sap.ui.fl.apply._internal.flexObjects.FlexObject} oChange - Change instance
268
268
  * @param {sap.ui.core.Component} oAppComponent - Application component of the control at runtime
269
- * @returns {Map} Classification types map
269
+ * @returns {object} Classification types map
270
270
  */
271
271
  function getTypesMap(mReducedChanges, oCondenserInfo, oChange, oAppComponent) {
272
- var sAffectedControlId = oCondenserInfo !== undefined ? oCondenserInfo.affectedControl : JsControlTreeModifier.getControlIdBySelector(oChange.getSelector(), oAppComponent);
272
+ var sAffectedControlId = oCondenserInfo !== undefined
273
+ ? oCondenserInfo.affectedControl
274
+ : JsControlTreeModifier.getControlIdBySelector(oChange.getSelector(), oAppComponent);
273
275
  if (!mReducedChanges[sAffectedControlId]) {
274
276
  mReducedChanges[sAffectedControlId] = {};
275
277
  }
@@ -277,8 +279,13 @@ sap.ui.define([
277
279
  // (e.g. iFrame added as Section) and the changes must be brought to the same group (= same affected control)
278
280
  if (oCondenserInfo && oCondenserInfo.updateControl) {
279
281
  var sUpdateControlId = oCondenserInfo.updateControl;
280
- mReducedChanges[sAffectedControlId] = Object.assign(mReducedChanges[sAffectedControlId], mReducedChanges[sUpdateControlId]);
281
- delete mReducedChanges[sUpdateControlId];
282
+ var aPath = [CondenserUtils.NOT_INDEX_RELEVANT, CondenserClassification.Update, oCondenserInfo.uniqueKey];
283
+ var oUpdateCondenserInfo = ObjectPath.get(aPath, mReducedChanges[sUpdateControlId]);
284
+ if (oUpdateCondenserInfo) {
285
+ ObjectPath.set(aPath, oUpdateCondenserInfo, mReducedChanges[sAffectedControlId]);
286
+ delete mReducedChanges[sUpdateControlId][CondenserUtils.NOT_INDEX_RELEVANT]
287
+ [CondenserClassification.Update][oCondenserInfo.uniqueKey];
288
+ }
282
289
  }
283
290
  return mReducedChanges[sAffectedControlId];
284
291
  }
@@ -322,8 +329,8 @@ sap.ui.define([
322
329
  * }
323
330
  *
324
331
  * @param {sap.ui.core.Component} oAppComponent - Application component of the control at runtime
325
- * @param {Map} mReducedChanges - Map of reduced changes
326
- * @param {Map} mUIReconstructions - Map of UI reconstructions
332
+ * @param {object} mReducedChanges - Map of reduced changes
333
+ * @param {object} mUIReconstructions - Map of UI reconstructions
327
334
  * @param {sap.ui.fl.apply._internal.flexObjects.FlexObject[]} aIndexRelatedChanges - Array of all index related changes
328
335
  * @param {sap.ui.fl.apply._internal.flexObjects.FlexObject[]} aChanges - All Change instances
329
336
  * @returns {Promise} Resolves when all changes were added to the maps
@@ -375,7 +382,7 @@ sap.ui.define([
375
382
  * If the original change is marked for deletion, the update can be skipped
376
383
  * If the original change is already persisted, the new content is an update
377
384
  *
378
- * @param {Map} mTypes - Map with the changes
385
+ * @param {object} mTypes - Map with the changes
379
386
  * @param {object} oCondenserInfo - Condenser-specific information that is delivered by the change handler
380
387
  * @param {sap.ui.fl.apply._internal.flexObjects.FlexObject} oChange - The change that is getting updated
381
388
  */
@@ -396,7 +403,7 @@ sap.ui.define([
396
403
  /**
397
404
  * Retrieves an array of changes from the delivered data structure.
398
405
  *
399
- * @param {Map} mObjects - Delivered data structure
406
+ * @param {object} mObjects - Delivered data structure
400
407
  * @param {sap.ui.fl.apply._internal.flexObjects.FlexObject[]} aChanges - Array of changes
401
408
  * @returns {sap.ui.fl.apply._internal.flexObjects.FlexObject[]} All necessary changes in the map of reduced changes
402
409
  */
@@ -424,7 +431,7 @@ sap.ui.define([
424
431
  /**
425
432
  * Retrieves an array of changes from the reduced changes map.
426
433
  *
427
- * @param {Map} mReducedChanges - Map of reduced changes
434
+ * @param {object} mReducedChanges - Map of reduced changes
428
435
  * @returns {sap.ui.fl.apply._internal.flexObjects.FlexObject[]} Array of the reduced changes
429
436
  */
430
437
  function getAllReducedChanges(mReducedChanges) {
@@ -434,7 +441,7 @@ sap.ui.define([
434
441
  /**
435
442
  * Retrieves an array of index-related changes from the array of reduced changes.
436
443
  *
437
- * @param {Map} mReducedChanges - Map of reduced changes
444
+ * @param {object} mReducedChanges - Map of reduced changes
438
445
  * @param {object[]} aCondenserInfos - Empty array object that will be filled with condenser info objects
439
446
  * @returns {object[]} Array of objects that contain condenser-specific information and change instance
440
447
  */
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @namespace
30
30
  * @alias sap.ui.fl.write._internal.condenser.UIReconstruction
31
31
  * @author SAP SE
32
- * @version 1.111.2
32
+ * @version 1.112.2
33
33
  */
34
34
  var UIReconstruction = {};
35
35
 
@@ -74,7 +74,7 @@ sap.ui.define([
74
74
  *
75
75
  * @namespace sap.ui.fl.write._internal.connectors.BackendConnector
76
76
  * @since 1.72
77
- * @version 1.111.2
77
+ * @version 1.112.2
78
78
  * @private
79
79
  * @ui5-restricted sap.ui.fl.write._internal.connectors
80
80
  */
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  *
33
33
  * @namespace sap.ui.fl.write._internal.connectors.KeyUserConnector
34
34
  * @since 1.70
35
- * @version 1.111.2
35
+ * @version 1.112.2
36
36
  * @private
37
37
  * @ui5-restricted sap.ui.fl.write._internal.Storage
38
38
  */
@@ -166,7 +166,7 @@ sap.ui.define([
166
166
  *
167
167
  * @namespace sap.ui.fl.write._internal.connectors.LrepConnector
168
168
  * @since 1.67
169
- * @version 1.111.2
169
+ * @version 1.112.2
170
170
  * @private
171
171
  * @ui5-restricted sap.ui.fl.write._internal.Storage
172
172
  */
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  *
26
26
  * @namespace sap.ui.fl.write._internal.connectors.NeoLrepConnector
27
27
  * @since 1.81
28
- * @version 1.111.2
28
+ * @version 1.112.2
29
29
  * @private
30
30
  * @ui5-restricted sap.ui.fl.write._internal.Storage
31
31
  */
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  *
25
25
  * @namespace sap.ui.fl.write._internal.connectors.ObjectPathConnector
26
26
  * @since 1.73
27
- * @version 1.111.2
27
+ * @version 1.112.2
28
28
  * @private
29
29
  * @ui5-restricted sap.ui.fl.write._internal.Storage
30
30
  */
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  *
29
29
  * @namespace sap.ui.fl.write._internal.connectors.PersonalizationConnector
30
30
  * @since 1.70
31
- * @version 1.111.2
31
+ * @version 1.112.2
32
32
  * @private
33
33
  * @ui5-restricted sap.ui.fl.write._internal.Storage
34
34
  */