@openui5/sap.ui.rta 1.135.0 → 1.136.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 (213) hide show
  1. package/REUSE.toml +649 -0
  2. package/THIRDPARTY.txt +22 -22
  3. package/package.json +6 -6
  4. package/src/sap/ui/rta/.library +2 -2
  5. package/src/sap/ui/rta/Client.js +2 -2
  6. package/src/sap/ui/rta/RuntimeAuthoring.js +92 -19
  7. package/src/sap/ui/rta/Utils.js +19 -2
  8. package/src/sap/ui/rta/api/startAdaptation.js +1 -1
  9. package/src/sap/ui/rta/api/startKeyUserAdaptation.js +1 -1
  10. package/src/sap/ui/rta/appVariant/AppVariantDialog.js +1 -1
  11. package/src/sap/ui/rta/appVariant/AppVariantManager.js +2 -2
  12. package/src/sap/ui/rta/appVariant/AppVariantOverviewDialog.js +1 -1
  13. package/src/sap/ui/rta/appVariant/AppVariantUtils.js +1 -1
  14. package/src/sap/ui/rta/appVariant/Feature.js +1 -1
  15. package/src/sap/ui/rta/appVariant/S4HanaCloudBackend.js +1 -1
  16. package/src/sap/ui/rta/appVariant/Utils.js +8 -15
  17. package/src/sap/ui/rta/appVariant/manageApps/webapp/Component.js +1 -1
  18. package/src/sap/ui/rta/appVariant/manageApps/webapp/controller/ManageApps.controller.js +30 -44
  19. package/src/sap/ui/rta/appVariant/manageApps/webapp/index.js +1 -1
  20. package/src/sap/ui/rta/appVariant/manageApps/webapp/model/models.js +1 -1
  21. package/src/sap/ui/rta/command/AddIFrame.js +2 -2
  22. package/src/sap/ui/rta/command/AddProperty.js +2 -2
  23. package/src/sap/ui/rta/command/AddXML.js +2 -2
  24. package/src/sap/ui/rta/command/AddXMLAtExtensionPoint.js +2 -2
  25. package/src/sap/ui/rta/command/AnnotationCommand.js +2 -2
  26. package/src/sap/ui/rta/command/BaseCommand.js +2 -2
  27. package/src/sap/ui/rta/command/BindProperty.js +2 -2
  28. package/src/sap/ui/rta/command/Combine.js +2 -2
  29. package/src/sap/ui/rta/command/CommandFactory.js +2 -2
  30. package/src/sap/ui/rta/command/CompositeCommand.js +2 -2
  31. package/src/sap/ui/rta/command/ControlVariantConfigure.js +2 -2
  32. package/src/sap/ui/rta/command/ControlVariantSave.js +2 -2
  33. package/src/sap/ui/rta/command/ControlVariantSaveAs.js +2 -2
  34. package/src/sap/ui/rta/command/ControlVariantSetTitle.js +2 -2
  35. package/src/sap/ui/rta/command/ControlVariantSwitch.js +2 -2
  36. package/src/sap/ui/rta/command/CreateContainer.js +2 -2
  37. package/src/sap/ui/rta/command/CustomAdd.js +2 -2
  38. package/src/sap/ui/rta/command/ExtendControllerCommand.js +4 -3
  39. package/src/sap/ui/rta/command/FlexCommand.js +2 -2
  40. package/src/sap/ui/rta/command/LREPSerializer.js +2 -2
  41. package/src/sap/ui/rta/command/LocalReset.js +2 -2
  42. package/src/sap/ui/rta/command/ManifestCommand.js +2 -2
  43. package/src/sap/ui/rta/command/Move.js +2 -2
  44. package/src/sap/ui/rta/command/Property.js +2 -2
  45. package/src/sap/ui/rta/command/Remove.js +2 -2
  46. package/src/sap/ui/rta/command/Rename.js +2 -2
  47. package/src/sap/ui/rta/command/Resize.js +2 -2
  48. package/src/sap/ui/rta/command/Reveal.js +2 -2
  49. package/src/sap/ui/rta/command/Settings.js +2 -2
  50. package/src/sap/ui/rta/command/Split.js +2 -2
  51. package/src/sap/ui/rta/command/Stack.js +20 -5
  52. package/src/sap/ui/rta/command/compVariant/CompVariantContent.js +2 -2
  53. package/src/sap/ui/rta/command/compVariant/CompVariantSaveAs.js +2 -2
  54. package/src/sap/ui/rta/command/compVariant/CompVariantSwitch.js +2 -2
  55. package/src/sap/ui/rta/command/compVariant/CompVariantUpdate.js +2 -2
  56. package/src/sap/ui/rta/command/manifest/AddLibrary.js +2 -2
  57. package/src/sap/ui/rta/enablement/TestDelegate.js +1 -1
  58. package/src/sap/ui/rta/enablement/elementActionTest.js +2 -2
  59. package/src/sap/ui/rta/library.js +3 -3
  60. package/src/sap/ui/rta/messagebundle.properties +168 -9
  61. package/src/sap/ui/rta/messagebundle_ar.properties +104 -6
  62. package/src/sap/ui/rta/messagebundle_bg.properties +104 -6
  63. package/src/sap/ui/rta/messagebundle_ca.properties +107 -9
  64. package/src/sap/ui/rta/messagebundle_cnr.properties +105 -7
  65. package/src/sap/ui/rta/messagebundle_cs.properties +102 -4
  66. package/src/sap/ui/rta/messagebundle_cy.properties +104 -6
  67. package/src/sap/ui/rta/messagebundle_da.properties +103 -5
  68. package/src/sap/ui/rta/messagebundle_de.properties +113 -15
  69. package/src/sap/ui/rta/messagebundle_el.properties +101 -3
  70. package/src/sap/ui/rta/messagebundle_en.properties +104 -6
  71. package/src/sap/ui/rta/messagebundle_en_GB.properties +104 -6
  72. package/src/sap/ui/rta/messagebundle_en_US_saprigi.properties +2 -0
  73. package/src/sap/ui/rta/messagebundle_es.properties +108 -10
  74. package/src/sap/ui/rta/messagebundle_es_MX.properties +112 -14
  75. package/src/sap/ui/rta/messagebundle_et.properties +102 -4
  76. package/src/sap/ui/rta/messagebundle_fi.properties +105 -7
  77. package/src/sap/ui/rta/messagebundle_fr.properties +113 -15
  78. package/src/sap/ui/rta/messagebundle_fr_CA.properties +105 -7
  79. package/src/sap/ui/rta/messagebundle_hi.properties +104 -6
  80. package/src/sap/ui/rta/messagebundle_hr.properties +114 -16
  81. package/src/sap/ui/rta/messagebundle_hu.properties +103 -5
  82. package/src/sap/ui/rta/messagebundle_id.properties +112 -14
  83. package/src/sap/ui/rta/messagebundle_it.properties +102 -4
  84. package/src/sap/ui/rta/messagebundle_iw.properties +104 -6
  85. package/src/sap/ui/rta/messagebundle_ja.properties +116 -18
  86. package/src/sap/ui/rta/messagebundle_kk.properties +103 -5
  87. package/src/sap/ui/rta/messagebundle_ko.properties +104 -6
  88. package/src/sap/ui/rta/messagebundle_lt.properties +104 -6
  89. package/src/sap/ui/rta/messagebundle_lv.properties +103 -5
  90. package/src/sap/ui/rta/messagebundle_mk.properties +107 -9
  91. package/src/sap/ui/rta/messagebundle_ms.properties +114 -16
  92. package/src/sap/ui/rta/messagebundle_nl.properties +103 -5
  93. package/src/sap/ui/rta/messagebundle_no.properties +107 -9
  94. package/src/sap/ui/rta/messagebundle_pl.properties +103 -5
  95. package/src/sap/ui/rta/messagebundle_pt.properties +102 -4
  96. package/src/sap/ui/rta/messagebundle_pt_PT.properties +102 -4
  97. package/src/sap/ui/rta/messagebundle_ro.properties +102 -4
  98. package/src/sap/ui/rta/messagebundle_ru.properties +106 -8
  99. package/src/sap/ui/rta/messagebundle_sh.properties +105 -7
  100. package/src/sap/ui/rta/messagebundle_sk.properties +102 -4
  101. package/src/sap/ui/rta/messagebundle_sl.properties +102 -4
  102. package/src/sap/ui/rta/messagebundle_sr.properties +105 -7
  103. package/src/sap/ui/rta/messagebundle_sv.properties +103 -5
  104. package/src/sap/ui/rta/messagebundle_th.properties +103 -5
  105. package/src/sap/ui/rta/messagebundle_tr.properties +102 -4
  106. package/src/sap/ui/rta/messagebundle_uk.properties +104 -6
  107. package/src/sap/ui/rta/messagebundle_vi.properties +104 -6
  108. package/src/sap/ui/rta/messagebundle_zh_CN.properties +103 -5
  109. package/src/sap/ui/rta/messagebundle_zh_TW.properties +104 -6
  110. package/src/sap/ui/rta/plugin/AddXMLAtExtensionPoint.js +2 -2
  111. package/src/sap/ui/rta/plugin/AddXMLPlugin.js +54 -32
  112. package/src/sap/ui/rta/plugin/BaseCreate.js +2 -2
  113. package/src/sap/ui/rta/plugin/Combine.js +2 -2
  114. package/src/sap/ui/rta/plugin/CompVariant.js +114 -114
  115. package/src/sap/ui/rta/plugin/ControlVariant.js +37 -54
  116. package/src/sap/ui/rta/plugin/CreateContainer.js +2 -2
  117. package/src/sap/ui/rta/plugin/CutPaste.js +2 -2
  118. package/src/sap/ui/rta/plugin/DragDrop.js +2 -2
  119. package/src/sap/ui/rta/plugin/ExtendControllerPlugin.js +49 -38
  120. package/src/sap/ui/rta/plugin/LocalReset.js +4 -3
  121. package/src/sap/ui/rta/plugin/Plugin.js +30 -12
  122. package/src/sap/ui/rta/plugin/RTAElementMover.js +2 -2
  123. package/src/sap/ui/rta/plugin/Remove.js +2 -2
  124. package/src/sap/ui/rta/plugin/Resize.js +2 -2
  125. package/src/sap/ui/rta/plugin/Selection.js +2 -2
  126. package/src/sap/ui/rta/plugin/Settings.js +5 -2
  127. package/src/sap/ui/rta/plugin/Split.js +2 -2
  128. package/src/sap/ui/rta/plugin/Stretch.js +2 -2
  129. package/src/sap/ui/rta/plugin/additionalElements/ActionExtractor.js +2 -2
  130. package/src/sap/ui/rta/plugin/additionalElements/AddElementsDialog.js +2 -2
  131. package/src/sap/ui/rta/plugin/additionalElements/AdditionalElementsAnalyzer.js +1 -1
  132. package/src/sap/ui/rta/plugin/additionalElements/AdditionalElementsPlugin.js +2 -2
  133. package/src/sap/ui/rta/plugin/additionalElements/AdditionalElementsUtils.js +2 -2
  134. package/src/sap/ui/rta/plugin/additionalElements/CommandBuilder.js +2 -2
  135. package/src/sap/ui/rta/plugin/annotations/AnnotationChangeDialog.fragment.xml +4 -4
  136. package/src/sap/ui/rta/plugin/annotations/AnnotationChangeDialog.js +26 -13
  137. package/src/sap/ui/rta/plugin/annotations/AnnotationChangeDialogController.js +30 -31
  138. package/src/sap/ui/rta/plugin/annotations/AnnotationPlugin.js +8 -5
  139. package/src/sap/ui/rta/plugin/annotations/AnnotationTypes.js +1 -1
  140. package/src/sap/ui/rta/plugin/iframe/AddIFrame.js +8 -2
  141. package/src/sap/ui/rta/plugin/iframe/AddIFrameDialog.js +2 -2
  142. package/src/sap/ui/rta/plugin/iframe/AddIFrameDialogController.js +1 -1
  143. package/src/sap/ui/rta/plugin/iframe/urlCleaner.js +1 -1
  144. package/src/sap/ui/rta/plugin/{Rename.js → rename/Rename.js} +29 -67
  145. package/src/sap/ui/rta/plugin/rename/RenameDialog.fragment.xml +63 -0
  146. package/src/sap/ui/rta/plugin/rename/RenameDialog.js +140 -0
  147. package/src/sap/ui/rta/service/Action.js +2 -2
  148. package/src/sap/ui/rta/service/ControllerExtension.js +2 -2
  149. package/src/sap/ui/rta/service/Outline.js +2 -2
  150. package/src/sap/ui/rta/service/Property.js +2 -2
  151. package/src/sap/ui/rta/service/Receiver.js +1 -1
  152. package/src/sap/ui/rta/service/Selection.js +2 -2
  153. package/src/sap/ui/rta/service/SupportTools.js +2 -2
  154. package/src/sap/ui/rta/service/index.js +1 -1
  155. package/src/sap/ui/rta/themes/base/library.source.less +1 -1
  156. package/src/sap/ui/rta/themes/sap_hcb/library.source.less +1 -1
  157. package/src/sap/ui/rta/toolbar/ActionsMenu.fragment.xml +6 -0
  158. package/src/sap/ui/rta/toolbar/Adaptation.fragment.xml +1 -6
  159. package/src/sap/ui/rta/toolbar/Adaptation.js +12 -3
  160. package/src/sap/ui/rta/toolbar/AdaptationRenderer.js +1 -1
  161. package/src/sap/ui/rta/toolbar/Base.js +2 -2
  162. package/src/sap/ui/rta/toolbar/BaseRenderer.js +1 -1
  163. package/src/sap/ui/rta/toolbar/Fiori.js +16 -8
  164. package/src/sap/ui/rta/toolbar/FioriLike.js +7 -5
  165. package/src/sap/ui/rta/toolbar/OverflowToolbarButton.js +2 -2
  166. package/src/sap/ui/rta/toolbar/Standalone.js +2 -2
  167. package/src/sap/ui/rta/toolbar/contextBased/ManageAdaptations.js +1 -1
  168. package/src/sap/ui/rta/toolbar/contextBased/SaveAsAdaptation.js +2 -2
  169. package/src/sap/ui/rta/toolbar/translation/Translation.js +2 -2
  170. package/src/sap/ui/rta/toolbar/versioning/Versioning.js +2 -2
  171. package/src/sap/ui/rta/util/Animation.js +1 -1
  172. package/src/sap/ui/rta/util/BindingsExtractor.js +1 -1
  173. package/src/sap/ui/rta/util/PluginManager.js +8 -6
  174. package/src/sap/ui/rta/util/PopupManager.js +2 -2
  175. package/src/sap/ui/rta/util/ReloadManager.js +2 -2
  176. package/src/sap/ui/rta/util/ServiceEventBus.js +2 -2
  177. package/src/sap/ui/rta/util/ServiceManager.js +2 -2
  178. package/src/sap/ui/rta/util/adaptationStarter.js +1 -1
  179. package/src/sap/ui/rta/util/changeVisualization/ChangeCategories.js +1 -1
  180. package/src/sap/ui/rta/util/changeVisualization/ChangeIndicator.js +2 -2
  181. package/src/sap/ui/rta/util/changeVisualization/ChangeIndicatorRegistry.js +2 -2
  182. package/src/sap/ui/rta/util/changeVisualization/ChangeStates.js +1 -1
  183. package/src/sap/ui/rta/util/changeVisualization/ChangeVisualization.js +3 -3
  184. package/src/sap/ui/rta/util/changeVisualization/ChangeVisualizationUtils.js +1 -1
  185. package/src/sap/ui/rta/util/changeVisualization/commands/CombineVisualization.js +1 -1
  186. package/src/sap/ui/rta/util/changeVisualization/commands/CreateContainerVisualization.js +1 -1
  187. package/src/sap/ui/rta/util/changeVisualization/commands/MoveVisualization.js +1 -1
  188. package/src/sap/ui/rta/util/changeVisualization/commands/RenameVisualization.js +1 -1
  189. package/src/sap/ui/rta/util/changeVisualization/commands/SplitVisualization.js +1 -1
  190. package/src/sap/ui/rta/util/changeVisualization/commands/getCommandVisualization.js +1 -1
  191. package/src/sap/ui/rta/util/guidedTour/GuidedTour.js +242 -0
  192. package/src/sap/ui/rta/util/guidedTour/TourMarker.fragment.xml +50 -0
  193. package/src/sap/ui/rta/util/guidedTour/content/GeneralTour.js +205 -0
  194. package/src/sap/ui/rta/util/hasStableId.js +1 -1
  195. package/src/sap/ui/rta/util/isReuseComponent.js +1 -1
  196. package/src/sap/ui/rta/util/showMessageBox.js +1 -1
  197. package/src/sap/ui/rta/util/validateFlexEnabled.js +1 -1
  198. package/src/sap/ui/rta/util/validateStableIds.js +1 -1
  199. package/src/sap/ui/rta/util/validateText.js +1 -1
  200. package/src/sap/ui/rta/util/whatsNew/WhatsNew.js +8 -4
  201. package/src/sap/ui/rta/util/whatsNew/WhatsNewDialog.fragment.xml +1 -1
  202. package/src/sap/ui/rta/util/whatsNew/WhatsNewOverview.js +1 -1
  203. package/src/sap/ui/rta/util/whatsNew/WhatsNewUtils.js +1 -1
  204. package/src/sap/ui/rta/util/whatsNew/whatsNewContent/WhatsNewFeatures.js +85 -1
  205. package/src/sap/ui/rta/util/whatsNew/whatsNewContent/whatsNewImages/ChangeLabelsAction.png +0 -0
  206. package/src/sap/ui/rta/util/whatsNew/whatsNewContent/whatsNewImages/DisplayBehavior.png +0 -0
  207. package/src/sap/ui/rta/util/whatsNew/whatsNewContent/whatsNewImages/ExtendedActions.png +0 -0
  208. package/src/sap/ui/rta/util/whatsNew/whatsNewContent/whatsNewImages/GuidedTour.png +0 -0
  209. package/src/sap/ui/rta/util/whatsNew/whatsNewContent/whatsNewImages/ReloadButtonToolbar.png +0 -0
  210. package/src/sap/ui/rta/util/whatsNew/whatsNewContent/whatsNewImages/RenameDialog.png +0 -0
  211. package/ui5.yaml +1 -1
  212. package/.reuse/dep5 +0 -471
  213. package/src/sap/ui/rta/plugin/RenameHandler.js +0 -477
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -41,7 +41,7 @@ sap.ui.define([
41
41
  * @class
42
42
  * @extends sap.ui.rta.plugin.Plugin
43
43
  * @author SAP SE
44
- * @version 1.135.0
44
+ * @version 1.136.0
45
45
  * @constructor
46
46
  * @private
47
47
  * @since 1.90
@@ -115,7 +115,8 @@ sap.ui.define([
115
115
  LocalReset.prototype.getMenuItems = function(vElementOverlays) {
116
116
  return this._getMenuItems(vElementOverlays, {
117
117
  pluginId: "CTX_LOCAL_RESET",
118
- icon: "sap-icon://reset"
118
+ icon: "sap-icon://reset",
119
+ additionalInfoKey: "LOCALRESET_RTA_CONTEXT_MENU_INFO"
119
120
  });
120
121
  };
121
122
 
@@ -1,31 +1,39 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
7
7
  // Provides class sap.ui.rta.plugin.Plugin.
8
8
  sap.ui.define([
9
9
  "sap/base/util/restricted/_debounce",
10
- "sap/ui/dt/Plugin",
11
- "sap/ui/fl/write/api/ChangesWriteAPI",
10
+ "sap/ui/core/util/reflection/JsControlTreeModifier",
12
11
  "sap/ui/dt/OverlayRegistry",
13
12
  "sap/ui/dt/OverlayUtil",
14
- "sap/ui/core/util/reflection/JsControlTreeModifier",
15
- "sap/ui/rta/util/hasStableId"
13
+ "sap/ui/dt/Plugin",
14
+ "sap/ui/fl/write/api/ChangesWriteAPI",
15
+ "sap/ui/fl/Utils",
16
+ "sap/ui/rta/util/hasStableId",
17
+ "sap/ui/rta/util/isReuseComponent",
18
+ "sap/ui/rta/Utils"
16
19
  ], function(
17
20
  debounce,
18
- Plugin,
19
- ChangesWriteAPI,
21
+ JsControlTreeModifier,
20
22
  OverlayRegistry,
21
23
  OverlayUtil,
22
- JsControlTreeModifier,
23
- hasStableId
24
+ Plugin,
25
+ ChangesWriteAPI,
26
+ Utils,
27
+ hasStableId,
28
+ isReuseComponent,
29
+ RtaUtils
24
30
  ) {
25
31
  "use strict";
26
32
 
27
33
  // The ranks define the order of the plugin actions in the context menu
28
34
  const CONTEXT_MENU_RANKS = {
35
+ CTX_ADDXML: 3,
36
+ CTX_EXTEND_CONTROLLER: 5,
29
37
  CTX_RENAME: 10,
30
38
  CTX_ANNOTATION_CHANGE_SINGLE_LABEL: 12,
31
39
  CTX_ADD_ELEMENTS_AS_SIBLING: 20,
@@ -40,8 +48,6 @@ sap.ui.define([
40
48
  CTX_GROUP_FIELDS: 90,
41
49
  CTX_UNGROUP_FIELDS: 100,
42
50
  CTX_ADDXML_AT_EXTENSIONPOINT: 105,
43
- CTX_ADDXML: 106,
44
- CTX_EXTEND_CONTROLLER: 107,
45
51
  // Settings ranks go up 1 by 1 for each setting
46
52
  CTX_SETTINGS: 110,
47
53
  // IFrame ranks go up 1 by 1 for each possible child target
@@ -108,7 +114,7 @@ sap.ui.define([
108
114
  * @extends sap.ui.dt.Plugin
109
115
  *
110
116
  * @author SAP SE
111
- * @version 1.135.0
117
+ * @version 1.136.0
112
118
  *
113
119
  * @constructor
114
120
  * @private
@@ -508,5 +514,17 @@ sap.ui.define([
508
514
  return Plugin.prototype._getMenuItems.apply(this, [aElementOverlays, mPropertyBag]);
509
515
  };
510
516
 
517
+ /**
518
+ * Checks if the control is a reuse component on S4HanaCloud. This is used to disable
519
+ * certain plugins under these circumstancces, e.g. AddXMLPlugin.
520
+ * @param {sap.ui.dt.ElementOverlay} oOverlay Overlay for the control to be checked
521
+ * @return {boolean} Whether the control is in a reuse component on S4HanaCloud
522
+ */
523
+ BasePlugin.prototype.isInReuseComponentOnS4HanaCloud = function(oOverlay) {
524
+ const oComponent = Utils.getComponentForControl(oOverlay.getElement());
525
+ const bIsS4HanaCloud = RtaUtils.isS4HanaCloud();
526
+ return isReuseComponent(oComponent) && bIsS4HanaCloud;
527
+ };
528
+
511
529
  return BasePlugin;
512
530
  });
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -35,7 +35,7 @@ function(
35
35
  * The RTAElementMover is responsible for the RTA specific adaptation of element movements.
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.135.0
38
+ * @version 1.136.0
39
39
  *
40
40
  * @constructor
41
41
  * @private
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @class The Remove allows trigger remove operations on the overlay
30
30
  * @extends sap.ui.rta.plugin.Plugin
31
31
  * @author SAP SE
32
- * @version 1.135.0
32
+ * @version 1.136.0
33
33
  * @constructor
34
34
  * @private
35
35
  * @since 1.34
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @class
28
28
  * @extends sap.ui.rta.plugin.Plugin
29
29
  * @author SAP SE
30
- * @version 1.135.0
30
+ * @version 1.136.0
31
31
  * @constructor
32
32
  * @private
33
33
  * @since 1.101
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -31,7 +31,7 @@ sap.ui.define([
31
31
  * @class The Selection plugin allows you to select or focus overlays with mouse or keyboard and navigate to others.
32
32
  * @extends sap.ui.rta.plugin.Plugin
33
33
  * @author SAP SE
34
- * @version 1.135.0
34
+ * @version 1.136.0
35
35
  * @constructor
36
36
  * @private
37
37
  * @since 1.34
@@ -1,11 +1,12 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
7
7
  sap.ui.define([
8
8
  "sap/base/Log",
9
+ "sap/ui/dt/OverlayRegistry",
9
10
  "sap/ui/dt/Util",
10
11
  "sap/ui/fl/Utils",
11
12
  "sap/ui/rta/plugin/Plugin",
@@ -13,6 +14,7 @@ sap.ui.define([
13
14
 
14
15
  ], function(
15
16
  BaseLog,
17
+ OverlayRegistry,
16
18
  DtUtil,
17
19
  FlUtils,
18
20
  Plugin,
@@ -28,7 +30,7 @@ sap.ui.define([
28
30
  * @class The Settings allows trigger change of settings operations on the overlay
29
31
  * @extends sap.ui.rta.plugin.Plugin
30
32
  * @author SAP SE
31
- * @version 1.135.0
33
+ * @version 1.136.0
32
34
  * @constructor
33
35
  * @private
34
36
  * @since 1.44
@@ -289,6 +291,7 @@ sap.ui.define([
289
291
 
290
292
  aMenuItems.push({
291
293
  id: bSingleAction ? sPluginId : sPluginId + iIndex,
294
+ additionalInfo: this._getAdditionalInfo(oResponsibleElementOverlay, oSettingsAction),
292
295
  rank: bSingleAction ? iRank : iRank + iIndex,
293
296
  text: this.getActionText(oResponsibleElementOverlay, oSettingsAction, sPluginId),
294
297
  icon: getActionIcon(oSettingsAction),
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @class
24
24
  * @extends sap.ui.rta.plugin.Plugin
25
25
  * @author SAP SE
26
- * @version 1.135.0
26
+ * @version 1.136.0
27
27
  * @constructor
28
28
  * @private
29
29
  * @since 1.46
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @extends sap.ui.rta.plugin.Plugin
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.135.0
32
+ * @version 1.136.0
33
33
  *
34
34
  * @constructor
35
35
  * @private
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * handled by the AdditionalElements Plugin (Reveal, Add Via Delegate, Add Custom)
33
33
  *
34
34
  * @author SAP SE
35
- * @version 1.135.0
35
+ * @version 1.136.0
36
36
  * @private
37
37
  * @since 1.94
38
38
  */
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
  sap.ui.define([
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @class Context - Dialog for available Fields in Runtime Authoring
33
33
  * @extends sap.ui.base.ManagedObject
34
34
  * @author SAP SE
35
- * @version 1.135.0
35
+ * @version 1.136.0
36
36
  * @constructor
37
37
  * @private
38
38
  * @since 1.44
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -119,7 +119,7 @@ sap.ui.define([
119
119
  * @class The plugin allows to add additional elements that exist either hidden in the UI or in the OData service
120
120
  * @extends sap.ui.rta.plugin.Plugin
121
121
  * @author SAP SE
122
- * @version 1.135.0
122
+ * @version 1.136.0
123
123
  * @constructor
124
124
  * @private
125
125
  * @since 1.44
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -17,7 +17,7 @@ sap.ui.define([
17
17
  * Helper object containing methods for the AdditionalElements plugin
18
18
  *
19
19
  * @author SAP SE
20
- * @version 1.135.0
20
+ * @version 1.136.0
21
21
  * @private
22
22
  * @since 1.94
23
23
  */
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * Helper object to build the RTA commands resulting from the AdditionalElements Plugin
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.135.0
28
+ * @version 1.136.0
29
29
  * @private
30
30
  * @since 1.94
31
31
  */
@@ -12,6 +12,7 @@
12
12
  contentHeight="{= ${/singleRename} === true ? 'auto' : '25rem'}"
13
13
  title="{/title}"
14
14
  class="sapUiContentPadding"
15
+ escapeHandler=".onCancel"
15
16
  >
16
17
  <content>
17
18
  <VBox>
@@ -81,10 +82,9 @@
81
82
  <beginButton>
82
83
  <Button
83
84
  id="sapUiRtaChangeAnnotationDialog_saveButton"
84
- enabled="{= ${path: '/properties', formatter: '.hasChangesFormatter'}}"
85
85
  type="Emphasized"
86
- text="{i18n>ANNOTATION_CHANGE_DIALOG_SAVE}"
87
- press="onSavePress"
86
+ text="{i18n>ANNOTATION_CHANGE_DIALOG_CONFIRM}"
87
+ press="onSave"
88
88
  />
89
89
  </beginButton>
90
90
  <endButton>
@@ -92,7 +92,7 @@
92
92
  id="sapUiRtaChangeAnnotationDialog_cancelButton"
93
93
  type="Transparent"
94
94
  text="{i18n>ANNOTATION_CHANGE_DIALOG_CANCEL}"
95
- press="onCancelPress"
95
+ press="onCancel"
96
96
  />
97
97
  </endButton>
98
98
  </Dialog>
@@ -1,7 +1,7 @@
1
1
 
2
2
  /*!
3
3
  * OpenUI5
4
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
4
+ * (c) Copyright 2025 SAP SE or an SAP affiliate company.
5
5
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
6
6
  */
7
7
  sap.ui.define([
@@ -12,7 +12,6 @@ sap.ui.define([
12
12
  "sap/ui/model/json/JSONModel",
13
13
  "sap/ui/model/resource/ResourceModel",
14
14
  "sap/ui/rta/plugin/annotations/AnnotationChangeDialogController",
15
- "sap/ui/rta/plugin/annotations/AnnotationTypes",
16
15
  "sap/ui/rta/Utils"
17
16
  ], function(
18
17
  ManagedObject,
@@ -22,7 +21,6 @@ sap.ui.define([
22
21
  JSONModel,
23
22
  ResourceModel,
24
23
  AnnotationChangeDialogController,
25
- AnnotationTypes,
26
24
  RtaUtils
27
25
  ) {
28
26
  "use strict";
@@ -31,7 +29,7 @@ sap.ui.define([
31
29
  * @class Constructor for a new sap.ui.rta.plugin.annotations.AnnotationChangeDialog.
32
30
  * @extends sap.ui.base.ManagedObject
33
31
  * @author SAP SE
34
- * @version 1.135.0
32
+ * @version 1.136.0
35
33
  * @constructor
36
34
  * @since 1.132
37
35
  * @private
@@ -39,13 +37,24 @@ sap.ui.define([
39
37
  */
40
38
  const AnnotationChangeDialog = ManagedObject.extend("sap.ui.rta.plugin.annotations.AnnotationChangeDialog");
41
39
 
40
+ function replaceValue(aProperties, sAnnotationPath, sValue) {
41
+ const oProperty = aProperties.find((oProperty) => oProperty.annotationPath === sAnnotationPath);
42
+ if (oProperty) {
43
+ oProperty.currentValue = sValue;
44
+ oProperty.originalValue = sValue;
45
+ }
46
+ }
47
+
42
48
  function replaceCurrentValueWithTextFromControl(aProperties, sPreSelectedProperty, oControl) {
43
- const oProperty = aProperties.find((oProperty) => oProperty.annotationPath === sPreSelectedProperty);
44
49
  const aNewLabel = ElementUtil.getLabelForElement(oControl);
45
- if (oProperty && aNewLabel) {
46
- oProperty.currentValue = aNewLabel;
47
- oProperty.originalValue = aNewLabel;
48
- }
50
+ replaceValue(aProperties, sPreSelectedProperty, aNewLabel);
51
+ }
52
+
53
+ function replaceValuesWithValuesFromPendingChanges(aAnnotationChanges, aProperties, bObjectAsKey) {
54
+ aAnnotationChanges.forEach((oChange) => {
55
+ const sAnnotationPath = oChange.getContent().annotationPath;
56
+ replaceValue(aProperties, sAnnotationPath, bObjectAsKey ? JSON.stringify(oChange.getValue()) : oChange.getValue());
57
+ });
49
58
  }
50
59
 
51
60
  AnnotationChangeDialog.prototype._createDialog = async function() {
@@ -166,9 +175,10 @@ sap.ui.define([
166
175
 
167
176
  this._oDialog ||= await this._createDialog();
168
177
 
169
- const sFilterText = sPreSelectedPropertyKey
170
- ? aProperties.find((oProperty) => oProperty.annotationPath === sPreSelectedPropertyKey).label
171
- : "";
178
+ const sFilterText = (
179
+ sPreSelectedPropertyKey && aProperties.find((oProperty) => oProperty.annotationPath === sPreSelectedPropertyKey)?.label
180
+ ) || "";
181
+
172
182
  // default size limit is 100, but we need to display all properties.
173
183
  // As the list size is not dynamic, we can set the size limit to the number of properties
174
184
  // the size influences all binding sizes, so we only set it if the number of properties is greater than 100
@@ -180,6 +190,9 @@ sap.ui.define([
180
190
  replaceCurrentValueWithTextFromControl(aProperties, sPreSelectedPropertyKey, oControl);
181
191
  }
182
192
 
193
+ // Once a change gets passed to the model during initialization, the property _appliedOnModel is set to true
194
+ replaceValuesWithValuesFromPendingChanges(aExistingChanges.filter((oChange) => !oChange._appliedOnModel), aProperties, bObjectAsKey);
195
+
183
196
  this.oChangeAnnotationModel.setData({
184
197
  objectAsKey: bObjectAsKey,
185
198
  control: oControl,
@@ -196,7 +209,7 @@ sap.ui.define([
196
209
  serviceUrl: sServiceUrl
197
210
  });
198
211
  if (sFilterText) {
199
- this._oController.filterProperties(sFilterText);
212
+ this._oController.filterProperties(sFilterText, !!bSingleRename);
200
213
  }
201
214
  // Ensure that the model is fully refreshed before opening the dialog
202
215
  this.oChangeAnnotationModel.refresh(true);
@@ -1,7 +1,7 @@
1
1
 
2
2
  /*!
3
3
  * OpenUI5
4
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
4
+ * (c) Copyright 2025 SAP SE or an SAP affiliate company.
5
5
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
6
6
  */
7
7
  sap.ui.define([
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @class Controller for the AnnotationChangeDialog.
36
36
  * @extends sap.ui.core.mvc.Controller
37
37
  * @author SAP SE
38
- * @version 1.135.0
38
+ * @version 1.136.0
39
39
  * @constructor
40
40
  * @since 1.132
41
41
  * @private
@@ -49,10 +49,10 @@ sap.ui.define([
49
49
  });
50
50
  };
51
51
 
52
- AnnotationChangeDialogController.prototype.filterProperties = function(sQuery) {
52
+ AnnotationChangeDialogController.prototype.filterProperties = function(sQuery, bEquals) {
53
53
  const aFilters = [];
54
54
  if (sQuery && sQuery.length > 0) {
55
- const filter = new Filter("label", FilterOperator.Contains, sQuery);
55
+ const filter = new Filter("label", bEquals ? FilterOperator.EQ : FilterOperator.Contains, sQuery);
56
56
  aFilters.push(filter);
57
57
  }
58
58
 
@@ -69,16 +69,24 @@ sap.ui.define([
69
69
  AnnotationChangeDialogController.prototype.switchDisplayMode = function(oEvent) {
70
70
  const bShowChangedPropertiesOnly = oEvent.getParameter("state");
71
71
  const oList = Element.getElementById("sapUiRtaChangeAnnotationDialog_propertyList");
72
- oList.getModel().setProperty("/showChangedPropertiesOnly", bShowChangedPropertiesOnly);
73
- oList.getModel().setProperty(
74
- "/propertiesToDisplay",
75
- bShowChangedPropertiesOnly
76
- ? oList.getModel().getProperty("/changedProperties")
77
- : oList.getModel().getProperty("/properties")
78
- );
72
+ const oModel = oList.getModel();
73
+ oModel.setProperty("/showChangedPropertiesOnly", bShowChangedPropertiesOnly);
74
+
75
+ if (bShowChangedPropertiesOnly) {
76
+ const aOriginallyChangedProperties = oModel.getProperty("/changedProperties");
77
+ const aAllChangedProperties = oModel.getProperty("/properties").filter((oProperty) => (
78
+ aOriginallyChangedProperties.some((oOriginallyChangedProperty) => (
79
+ oOriginallyChangedProperty.annotationPath === oProperty.annotationPath
80
+ ))
81
+ || oProperty.originalValue !== oProperty.currentValue
82
+ ));
83
+ oModel.setProperty("/propertiesToDisplay", aAllChangedProperties);
84
+ } else {
85
+ oModel.setProperty("/propertiesToDisplay", oModel.getProperty("/properties"));
86
+ }
79
87
  };
80
88
 
81
- AnnotationChangeDialogController.prototype.onSavePress = function(oEvent) {
89
+ AnnotationChangeDialogController.prototype.onSave = function(oEvent) {
82
90
  const oModelData = oEvent.getSource().getModel().getData();
83
91
  const aChanges = oModelData.properties
84
92
  .map((oProperty) => {
@@ -100,23 +108,14 @@ sap.ui.define([
100
108
  this._fnResolveAfterClose(aChanges);
101
109
  };
102
110
 
103
- AnnotationChangeDialogController.prototype.onCancelPress = function() {
111
+ AnnotationChangeDialogController.prototype.onCancel = function() {
104
112
  this._fnResolveAfterClose([]);
105
113
  };
106
114
 
107
115
  function createEditorField(sValueType) {
108
- const onChange = () => {
109
- // Property updates are handled via two-way binding
110
- // However, the binding of the save button doesn't detect changes
111
- // within nested object properties, so it has to be refreshed explicitly
112
- const oSaveButton = Element.getElementById("sapUiRtaChangeAnnotationDialog_saveButton");
113
- oSaveButton.getBinding("enabled").refresh(true);
114
- };
115
-
116
116
  if (sValueType === AnnotationTypes.ValueListType) {
117
117
  const oSelect = new Select({
118
- selectedKey: "{currentValue}",
119
- change: onChange
118
+ selectedKey: "{currentValue}"
120
119
  });
121
120
 
122
121
  const oItemTemplate = new Item({
@@ -136,14 +135,17 @@ sap.ui.define([
136
135
  if (sValueType === AnnotationTypes.StringType) {
137
136
  return new Input({
138
137
  value: "{currentValue}",
139
- change: onChange
138
+ liveChange: (oEvent) => {
139
+ const sValue = oEvent.getParameter("newValue");
140
+ const oContext = oEvent.getSource().getBindingContext();
141
+ oEvent.getSource().getModel().setProperty("currentValue", sValue, oContext);
142
+ }
140
143
  });
141
144
  }
142
145
 
143
146
  if (sValueType === AnnotationTypes.BooleanType) {
144
147
  return new Switch({
145
- state: "{currentValue}",
146
- change: onChange
148
+ state: "{currentValue}"
147
149
  });
148
150
  }
149
151
 
@@ -152,11 +154,12 @@ sap.ui.define([
152
154
 
153
155
  AnnotationChangeDialogController.prototype.editorFactory = function(sId, oContext) {
154
156
  const sValueType = oContext.getProperty("/valueType");
157
+ const bSingleRename = oContext.getProperty("/singleRename");
155
158
 
156
159
  return new FormElement({
157
160
  id: sId,
158
161
  label: new Label({
159
- text: "{= ${label} || ${propertyName}}",
162
+ text: bSingleRename ? "{i18n>ANNOTATION_CHANGE_DIALOG_SINGLE_RENAME_LABEL}" : "{= ${label} || ${propertyName}}",
160
163
  tooltip: "{tooltip}"
161
164
  }),
162
165
  fields: [
@@ -165,9 +168,5 @@ sap.ui.define([
165
168
  });
166
169
  };
167
170
 
168
- AnnotationChangeDialogController.prototype.hasChangesFormatter = function(aProperties) {
169
- return aProperties?.some((oProperty) => oProperty.originalValue !== oProperty.currentValue);
170
- };
171
-
172
171
  return AnnotationChangeDialogController;
173
172
  });
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * OpenUI5
3
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
3
+ * (c) Copyright 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
 
@@ -8,6 +8,7 @@ sap.ui.define([
8
8
  "sap/base/Log",
9
9
  "sap/ui/base/DesignTime",
10
10
  "sap/ui/core/util/reflection/JsControlTreeModifier",
11
+ "sap/ui/dt/OverlayRegistry",
11
12
  "sap/ui/dt/Util",
12
13
  "sap/ui/fl/write/api/PersistenceWriteAPI",
13
14
  "sap/ui/fl/Utils",
@@ -18,6 +19,7 @@ sap.ui.define([
18
19
  BaseLog,
19
20
  DesignTime,
20
21
  JsControlTreeModifier,
22
+ OverlayRegistry,
21
23
  DtUtil,
22
24
  PersistenceWriteAPI,
23
25
  Utils,
@@ -52,9 +54,9 @@ sap.ui.define([
52
54
  }
53
55
  }
54
56
 
55
- function getActionText(oElementOverlay, oAction) {
57
+ function getActionText(oElementOverlay, oAction, oPropagatingControl) {
56
58
  const vName = oAction.title;
57
- const oElement = oElementOverlay.getElement();
59
+ const oElement = oPropagatingControl || oElementOverlay.getElement();
58
60
  if (vName) {
59
61
  if (typeof vName === "function") {
60
62
  return vName(oElement);
@@ -100,7 +102,7 @@ sap.ui.define([
100
102
  * @class
101
103
  * @extends sap.ui.rta.plugin.Plugin
102
104
  * @author SAP SE
103
- * @version 1.135.0
105
+ * @version 1.136.0
104
106
  * @constructor
105
107
  * @private
106
108
  * @since 1.132
@@ -267,7 +269,8 @@ sap.ui.define([
267
269
  typeof oAction.isEnabled === "function" && oAction.isEnabled(aElementOverlays[0].getElement())
268
270
  || (oAction.isEnabled !== false) && this.isEnabled(aElementOverlays)
269
271
  ),
270
- handler: this.handler.bind(this, aElementOverlays, oAction)
272
+ handler: this.handler.bind(this, aElementOverlays, oAction),
273
+ additionalInfo: this._getAdditionalInfo(oResponsibleElementOverlay, oAction)
271
274
  });
272
275
  }
273
276
  }, this);
@@ -1,7 +1,7 @@
1
1
 
2
2
  /*!
3
3
  * OpenUI5
4
- * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
4
+ * (c) Copyright 2025 SAP SE or an SAP affiliate company.
5
5
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
6
6
  */
7
7
  sap.ui.define([], function() {