@openui5/sap.ui.rta 1.96.39 → 1.96.40

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 (87) hide show
  1. package/package.json +6 -6
  2. package/src/sap/ui/rta/.library +1 -1
  3. package/src/sap/ui/rta/Client.js +1 -1
  4. package/src/sap/ui/rta/RuntimeAuthoring.js +1 -1
  5. package/src/sap/ui/rta/Utils.js +1 -1
  6. package/src/sap/ui/rta/appVariant/AppVariantManager.js +1 -1
  7. package/src/sap/ui/rta/command/AddIFrame.js +1 -1
  8. package/src/sap/ui/rta/command/AddProperty.js +1 -1
  9. package/src/sap/ui/rta/command/AddXML.js +1 -1
  10. package/src/sap/ui/rta/command/AddXMLAtExtensionPoint.js +1 -1
  11. package/src/sap/ui/rta/command/AppDescriptorCommand.js +1 -1
  12. package/src/sap/ui/rta/command/BaseCommand.js +1 -1
  13. package/src/sap/ui/rta/command/BindProperty.js +1 -1
  14. package/src/sap/ui/rta/command/Combine.js +1 -1
  15. package/src/sap/ui/rta/command/CommandFactory.js +1 -1
  16. package/src/sap/ui/rta/command/CompositeCommand.js +1 -1
  17. package/src/sap/ui/rta/command/ControlVariantConfigure.js +1 -1
  18. package/src/sap/ui/rta/command/ControlVariantSave.js +1 -1
  19. package/src/sap/ui/rta/command/ControlVariantSaveAs.js +1 -1
  20. package/src/sap/ui/rta/command/ControlVariantSetTitle.js +1 -1
  21. package/src/sap/ui/rta/command/ControlVariantSwitch.js +1 -1
  22. package/src/sap/ui/rta/command/CreateContainer.js +1 -1
  23. package/src/sap/ui/rta/command/CustomAdd.js +1 -1
  24. package/src/sap/ui/rta/command/FlexCommand.js +1 -1
  25. package/src/sap/ui/rta/command/LREPSerializer.js +1 -1
  26. package/src/sap/ui/rta/command/LocalReset.js +1 -1
  27. package/src/sap/ui/rta/command/Move.js +1 -1
  28. package/src/sap/ui/rta/command/Property.js +1 -1
  29. package/src/sap/ui/rta/command/Remove.js +1 -1
  30. package/src/sap/ui/rta/command/Rename.js +1 -1
  31. package/src/sap/ui/rta/command/Reveal.js +1 -1
  32. package/src/sap/ui/rta/command/Settings.js +1 -1
  33. package/src/sap/ui/rta/command/Split.js +1 -1
  34. package/src/sap/ui/rta/command/Stack.js +1 -1
  35. package/src/sap/ui/rta/command/appDescriptor/AddLibrary.js +1 -1
  36. package/src/sap/ui/rta/command/compVariant/CompVariantSaveAs.js +1 -1
  37. package/src/sap/ui/rta/command/compVariant/CompVariantSwitch.js +1 -1
  38. package/src/sap/ui/rta/command/compVariant/CompVariantUpdate.js +1 -1
  39. package/src/sap/ui/rta/enablement/elementActionTest.js +1 -1
  40. package/src/sap/ui/rta/library.js +2 -2
  41. package/src/sap/ui/rta/messagebundle_iw.properties +1 -1
  42. package/src/sap/ui/rta/messagebundle_kk.properties +7 -7
  43. package/src/sap/ui/rta/plugin/AddXMLAtExtensionPoint.js +1 -1
  44. package/src/sap/ui/rta/plugin/BaseCreate.js +1 -1
  45. package/src/sap/ui/rta/plugin/Combine.js +1 -1
  46. package/src/sap/ui/rta/plugin/ControlVariant.js +1 -1
  47. package/src/sap/ui/rta/plugin/CreateContainer.js +1 -1
  48. package/src/sap/ui/rta/plugin/CutPaste.js +1 -1
  49. package/src/sap/ui/rta/plugin/DragDrop.js +1 -1
  50. package/src/sap/ui/rta/plugin/EasyAdd.js +1 -1
  51. package/src/sap/ui/rta/plugin/EasyRemove.js +1 -1
  52. package/src/sap/ui/rta/plugin/LocalReset.js +1 -1
  53. package/src/sap/ui/rta/plugin/Plugin.js +15 -11
  54. package/src/sap/ui/rta/plugin/RTAElementMover.js +1 -1
  55. package/src/sap/ui/rta/plugin/Remove.js +1 -1
  56. package/src/sap/ui/rta/plugin/Rename.js +1 -1
  57. package/src/sap/ui/rta/plugin/RenameHandler.js +1 -1
  58. package/src/sap/ui/rta/plugin/Selection.js +1 -1
  59. package/src/sap/ui/rta/plugin/Settings.js +1 -1
  60. package/src/sap/ui/rta/plugin/Split.js +1 -1
  61. package/src/sap/ui/rta/plugin/Stretch.js +1 -1
  62. package/src/sap/ui/rta/plugin/additionalElements/ActionExtractor.js +1 -1
  63. package/src/sap/ui/rta/plugin/additionalElements/AddElementsDialog.js +1 -1
  64. package/src/sap/ui/rta/plugin/additionalElements/AdditionalElementsPlugin.js +1 -1
  65. package/src/sap/ui/rta/plugin/additionalElements/AdditionalElementsUtils.js +1 -1
  66. package/src/sap/ui/rta/plugin/additionalElements/CommandBuilder.js +1 -1
  67. package/src/sap/ui/rta/plugin/iframe/AddIFrame.js +1 -1
  68. package/src/sap/ui/rta/plugin/iframe/AddIFrameDialog.js +1 -1
  69. package/src/sap/ui/rta/service/Action.js +1 -1
  70. package/src/sap/ui/rta/service/ControllerExtension.js +1 -1
  71. package/src/sap/ui/rta/service/Outline.js +78 -28
  72. package/src/sap/ui/rta/service/Property.js +1 -1
  73. package/src/sap/ui/rta/service/Selection.js +1 -1
  74. package/src/sap/ui/rta/toolbar/Adaptation.js +1 -1
  75. package/src/sap/ui/rta/toolbar/Base.js +1 -1
  76. package/src/sap/ui/rta/toolbar/Fiori.js +1 -1
  77. package/src/sap/ui/rta/toolbar/FioriLike.js +1 -1
  78. package/src/sap/ui/rta/toolbar/OverflowToolbarButton.js +1 -1
  79. package/src/sap/ui/rta/toolbar/Personalization.js +1 -1
  80. package/src/sap/ui/rta/toolbar/Standalone.js +1 -1
  81. package/src/sap/ui/rta/toolbar/translation/Translation.js +1 -1
  82. package/src/sap/ui/rta/util/PluginManager.js +1 -1
  83. package/src/sap/ui/rta/util/PopupManager.js +1 -1
  84. package/src/sap/ui/rta/util/ServiceEventBus.js +1 -1
  85. package/src/sap/ui/rta/util/changeVisualization/ChangeIndicator.js +1 -1
  86. package/src/sap/ui/rta/util/changeVisualization/ChangeIndicatorRegistry.js +1 -1
  87. package/src/sap/ui/rta/util/changeVisualization/ChangeVisualization.js +1 -1
@@ -69,7 +69,7 @@ function(
69
69
  * @extends sap.ui.dt.Plugin
70
70
  *
71
71
  * @author SAP SE
72
- * @version 1.96.39
72
+ * @version 1.96.40
73
73
  *
74
74
  * @constructor
75
75
  * @private
@@ -168,16 +168,20 @@ function(
168
168
  BasePlugin.prototype._getRelevantOverlays = function(oOverlay, sAggregationName) {
169
169
  var aAlreadyDefinedRelevantOverlays = oOverlay.getRelevantOverlays();
170
170
  if (aAlreadyDefinedRelevantOverlays.length === 0) {
171
- var aRelevantOverlays = OverlayUtil.findAllOverlaysInContainer(oOverlay);
172
-
173
- // if an aggregation name is given, those overlays are added without checking the relevant container
174
- if (sAggregationName) {
175
- var oAggregationOverlay = oOverlay.getAggregationOverlay(sAggregationName);
176
- var aAggregationChildren = oAggregationOverlay ? oAggregationOverlay.getChildren() : [];
177
- aAggregationChildren = aAggregationChildren.filter(function(oChildOverlay) {
178
- return aRelevantOverlays.indexOf(oChildOverlay) === -1;
179
- });
180
- aRelevantOverlays = aRelevantOverlays.concat(aAggregationChildren);
171
+ var aRelevantOverlays = [];
172
+ // Overlays in aggregation binding templates are not relevant
173
+ if (!oOverlay.getIsPartOfTemplate()) {
174
+ aRelevantOverlays = OverlayUtil.findAllOverlaysInContainer(oOverlay);
175
+
176
+ // if an aggregation name is given, those overlays are added without checking the relevant container
177
+ if (sAggregationName) {
178
+ var oAggregationOverlay = oOverlay.getAggregationOverlay(sAggregationName);
179
+ var aAggregationChildren = oAggregationOverlay ? oAggregationOverlay.getChildren() : [];
180
+ aAggregationChildren = aAggregationChildren.filter(function(oChildOverlay) {
181
+ return aRelevantOverlays.indexOf(oChildOverlay) === -1;
182
+ });
183
+ aRelevantOverlays = aRelevantOverlays.concat(aAggregationChildren);
184
+ }
181
185
  }
182
186
 
183
187
  oOverlay.setRelevantOverlays(aRelevantOverlays);
@@ -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.96.39
38
+ * @version 1.96.40
39
39
  *
40
40
  * @constructor
41
41
  * @private
@@ -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.96.39
32
+ * @version 1.96.40
33
33
  * @constructor
34
34
  * @private
35
35
  * @since 1.34
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @extends sap.ui.rta.plugin.Plugin
29
29
  *
30
30
  * @author SAP SE
31
- * @version 1.96.39
31
+ * @version 1.96.40
32
32
  *
33
33
  * @constructor
34
34
  * @private
@@ -55,7 +55,7 @@ sap.ui.define([
55
55
  * Provides Rename handling functionality
56
56
  *
57
57
  * @author SAP SE
58
- * @version 1.96.39
58
+ * @version 1.96.40
59
59
  *
60
60
  * @constructor
61
61
  * @private
@@ -34,7 +34,7 @@ function (
34
34
  * @class The Selection plugin allows you to select or focus overlays with mouse or keyboard and navigate to others.
35
35
  * @extends sap.ui.rta.plugin.Plugin
36
36
  * @author SAP SE
37
- * @version 1.96.39
37
+ * @version 1.96.40
38
38
  * @constructor
39
39
  * @private
40
40
  * @since 1.34
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @class The Settings allows trigger change of settings operations on the overlay
26
26
  * @extends sap.ui.rta.plugin.Plugin
27
27
  * @author SAP SE
28
- * @version 1.96.39
28
+ * @version 1.96.40
29
29
  * @constructor
30
30
  * @private
31
31
  * @since 1.44
@@ -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.96.39
26
+ * @version 1.96.40
27
27
  * @constructor
28
28
  * @private
29
29
  * @since 1.46
@@ -31,7 +31,7 @@ sap.ui.define([
31
31
  * @extends sap.ui.rta.plugin.Plugin
32
32
  *
33
33
  * @author SAP SE
34
- * @version 1.96.39
34
+ * @version 1.96.40
35
35
  *
36
36
  * @constructor
37
37
  * @private
@@ -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.96.39
35
+ * @version 1.96.40
36
36
  * @private
37
37
  * @since 1.94
38
38
  * @experimental Since 1.94. This class is experimental and provides only limited functionality. Also the API might be changed in future.
@@ -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.96.39
35
+ * @version 1.96.40
36
36
  * @constructor
37
37
  * @private
38
38
  * @since 1.44
@@ -75,7 +75,7 @@ sap.ui.define([
75
75
  * @class The plugin allows to add additional elements that exist either hidden in the UI or in the OData service
76
76
  * @extends sap.ui.rta.plugin.Plugin
77
77
  * @author SAP SE
78
- * @version 1.96.39
78
+ * @version 1.96.40
79
79
  * @constructor
80
80
  * @private
81
81
  * @since 1.44
@@ -15,7 +15,7 @@ sap.ui.define([
15
15
  * Helper object containing methods for the AdditionalElements plugin
16
16
  *
17
17
  * @author SAP SE
18
- * @version 1.96.39
18
+ * @version 1.96.40
19
19
  * @private
20
20
  * @since 1.94
21
21
  * @experimental Since 1.94. This class is experimental and provides only limited functionality. Also the API might be changed in future.
@@ -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.96.39
28
+ * @version 1.96.40
29
29
  * @private
30
30
  * @since 1.94
31
31
  * @experimental Since 1.94. This class is experimental and provides only limited functionality. Also the API might be changed in future.
@@ -110,7 +110,7 @@ sap.ui.define([
110
110
  * @class The AddIFrame allows trigger AddIFrame operations on the overlay.
111
111
  * @extends sap.ui.rta.plugin.BaseCreate
112
112
  * @author SAP SE
113
- * @version 1.96.39
113
+ * @version 1.96.40
114
114
  * @constructor
115
115
  * @private
116
116
  * @since 1.75
@@ -113,7 +113,7 @@ sap.ui.define([
113
113
  * @class Context - Dialog for IFrame settings in Runtime Authoring
114
114
  * @extends sap.ui.base.ManagedObject
115
115
  * @author SAP SE
116
- * @version 1.96.39
116
+ * @version 1.96.40
117
117
  * @constructor
118
118
  * @private
119
119
  * @since 1.78
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @author SAP SE
26
26
  * @experimental Since 1.58
27
27
  * @since 1.58
28
- * @version 1.96.39
28
+ * @version 1.96.40
29
29
  * @private
30
30
  * @ui5-restricted
31
31
  *
@@ -30,7 +30,7 @@ function (
30
30
  * @author SAP SE
31
31
  * @experimental Since 1.58
32
32
  * @since 1.58
33
- * @version 1.96.39
33
+ * @version 1.96.40
34
34
  * @private
35
35
  * @ui5-restricted
36
36
  */
@@ -42,7 +42,7 @@ sap.ui.define([
42
42
  * @author SAP SE
43
43
  * @experimental Since 1.56
44
44
  * @since 1.56
45
- * @version 1.96.39
45
+ * @version 1.96.40
46
46
  * @private
47
47
  * @ui5-restricted
48
48
  */
@@ -67,8 +67,9 @@ sap.ui.define([
67
67
  * @property {string} id - ID of the control
68
68
  * @property {string} [instanceName] - Text retrieved from node's design time metadata <code>getLabel()</code>
69
69
  * @property {string} [name] - Singular name from node's design time metadata
70
- * @property {string} technicalName - Class type for element nodes/aggregation name for aggregation nodes.
70
+ * @property {string} technicalName - Class type for element nodes/aggregation name for aggregation nodes
71
71
  * @property {boolean} editable - Indicates whether the node is editable
72
+ * @property {string} [templateReference] - Element ID referncing corresponding template
72
73
  * @property {string} [icon] - Icon path for the node
73
74
  * @property {string} type - Type of node
74
75
  * @property {boolean} [visible] - Visibility of node of type <code>element</code>
@@ -197,6 +198,55 @@ sap.ui.define([
197
198
  }
198
199
  };
199
200
 
201
+ function getTemplateData(oChildOverlay, mTemplateData, mInnerTemplateData) {
202
+ var sAggregationName = oChildOverlay.getAggregationName && oChildOverlay.getAggregationName();
203
+ if (sAggregationName) {
204
+ var sAggregationOverlayId = oChildOverlay.getParent().getId();
205
+ // Aggregation with root template
206
+ if (mInnerTemplateData[sAggregationName]) {
207
+ return Object.assign({
208
+ templateFor: sAggregationOverlayId
209
+ }, mInnerTemplateData[sAggregationName]);
210
+ }
211
+ return ((mTemplateData && mTemplateData.elements) || [])
212
+ .map(function(oElement) {
213
+ // Template
214
+ if (
215
+ oElement.type === "aggregationBindingTemplate"
216
+ || oElement.parentAggregationName === sAggregationName
217
+ ) {
218
+ return Object.assign({
219
+ templateFor: sAggregationOverlayId
220
+ }, oElement);
221
+ }
222
+ // Regular aggregation
223
+ return oElement.technicalName === sAggregationName && oElement;
224
+ })
225
+ .filter(Boolean)[0];
226
+ }
227
+ // Template root element
228
+ var aAggregationTemplateOverlays = (
229
+ oChildOverlay.getParentElementOverlay().getAggregationBindingTemplateOverlays
230
+ && oChildOverlay.getParentElementOverlay().getAggregationBindingTemplateOverlays()
231
+ .reduce(function (aAllRootElementOverlaysInsideTemplates, oAggregationOverlay) {
232
+ return aAllRootElementOverlaysInsideTemplates.concat(oAggregationOverlay.getChildren());
233
+ }, [])
234
+ ) || [];
235
+ if (aAggregationTemplateOverlays.includes(oChildOverlay)) {
236
+ return undefined;
237
+ }
238
+ if (!mTemplateData) {
239
+ return undefined;
240
+ }
241
+ // Element inside clone
242
+ var oParent = oChildOverlay.getParentElementOverlay();
243
+ if (oParent.getId() === mTemplateData.templateFor) {
244
+ return mTemplateData;
245
+ }
246
+ var iIndex = oChildOverlay.getParent().getChildren().indexOf(oChildOverlay);
247
+ return mTemplateData.elements[iIndex];
248
+ }
249
+
200
250
  /**
201
251
  * Returns outline model data including the children until max depth (<code>this.iDepth</code> or last child is reached).
202
252
  * During execution, the <code>fnFilter</code> is used to determine whether node data should be added.
@@ -205,17 +255,19 @@ sap.ui.define([
205
255
  * @param {sap.ui.dt.Overlay} oOverlay - Overlay for this node
206
256
  * @param {int} [iDepth] - Level of children to traverse
207
257
  * @param {sap.ui.dt.Overlay} [oParentOverlay] - Parent overlay (if present) for the passed overlay
258
+ * @param {object} [mTemplateData] - Propagates template data to the aggregation template clones
208
259
  * @returns {OutlineObject} Outline model data
209
260
  */
210
- oOutline._getChildrenNodes = function (oOverlay, iDepth, oParentOverlay) {
261
+ oOutline._getChildrenNodes = function (oOverlay, iDepth, oParentOverlay, mTemplateData) {
211
262
  var bValidDepth = DtUtil.isInteger(iDepth);
263
+ var mAggregationTemplates = {};
212
264
 
213
265
  if (oOverlay.getShouldBeDestroyed()) {
214
266
  return {};
215
267
  }
216
268
 
217
269
  //get necessary properties from overlay
218
- var oData = this._getNodeProperties(oOverlay, oParentOverlay) || {};
270
+ var oData = this._getNodeProperties(oOverlay, oParentOverlay, mTemplateData) || {};
219
271
 
220
272
  var aChildren = oOverlay.getChildren();
221
273
  //find aggregation binding template overlays
@@ -224,20 +276,12 @@ sap.ui.define([
224
276
  && oOverlay.getAggregationBindingTemplateOverlays()
225
277
  ) || [];
226
278
 
227
- //for binding template overlays, do not include children of the
228
- //corresponding aggregations on the outline (e.g. items)
229
279
  if (aAggregationTemplateOverlays.length > 0) {
230
- var aExcludedAggregations = [];
231
280
  aChildren = aAggregationTemplateOverlays.reduce(function(aCollectedChildren, oAggregationTemplateOverlay) {
232
- aExcludedAggregations.push(oAggregationTemplateOverlay.getAggregationName());
233
- return oAggregationTemplateOverlay.getChildren().concat(aCollectedChildren);
234
- }, aChildren)
235
- .filter(function(oChild) {
236
- if (oChild.getAggregationName && aExcludedAggregations.indexOf(oChild.getAggregationName()) > -1) {
237
- return false;
238
- }
239
- return true;
240
- });
281
+ var oTemplateOverlay = oAggregationTemplateOverlay.getChildren()[0];
282
+ mAggregationTemplates[oTemplateOverlay.getId()] = oAggregationTemplateOverlay.getAggregationName();
283
+ return [oTemplateOverlay].concat(aCollectedChildren);
284
+ }, aChildren);
241
285
  }
242
286
 
243
287
  //check if the tree should be traversed deeper and children overlays are present
@@ -248,9 +292,16 @@ sap.ui.define([
248
292
  //decrement depth for children nodes
249
293
  iDepth = bValidDepth ? iDepth - 1 : iDepth;
250
294
 
295
+ var mInnerTemplateData = {};
251
296
  oData.elements = aChildren
252
297
  .map(function (oChildOverlay) {
253
- return this._getChildrenNodes(oChildOverlay, iDepth, oChildOverlay.getParent());
298
+ var mNextTemplateData = getTemplateData(oChildOverlay, mTemplateData, mInnerTemplateData);
299
+ var oNextData = this._getChildrenNodes(oChildOverlay, iDepth, oChildOverlay.getParent(), mNextTemplateData);
300
+ if (oNextData.type === "aggregationBindingTemplate") {
301
+ var sAggregationName = mAggregationTemplates[oChildOverlay.getId()];
302
+ mInnerTemplateData[sAggregationName] = merge({}, oNextData);
303
+ }
304
+ return oNextData;
254
305
  }, this)
255
306
  .filter(function (oChildNode) {
256
307
  return !isEmptyObject(oChildNode);
@@ -270,10 +321,6 @@ sap.ui.define([
270
321
  && oParentElementOverlay.getAggregationOverlay(sParentAggregationName, "AggregationBindingTemplateOverlays") === oParentAggregationOverlay;
271
322
  }
272
323
 
273
- function getNumberOfTemplateChildrenOverlays(oParentAggregationOverlay, sParentAggregationName) {
274
- return oParentAggregationOverlay.getParent().getAggregationOverlay(sParentAggregationName).getChildren().length;
275
- }
276
-
277
324
  function getElementOverlayData(oOverlay, oElement, oDtMetadata) {
278
325
  var oData = {
279
326
  editable: oOverlay.getEditable(),
@@ -284,20 +331,18 @@ sap.ui.define([
284
331
  }
285
332
  var oParentAggregationOverlay = oOverlay.getParent() && oOverlay.getParentAggregationOverlay();
286
333
  var sParentAggregationName = (oParentAggregationOverlay && oParentAggregationOverlay.getAggregationName()) || "";
287
- var sDtNameSuffix = "";
288
334
  // Aggregation Binding Template
289
335
  if (isAggregationBindingTemplate(oOverlay, oParentAggregationOverlay, sParentAggregationName)) {
290
- var iNoOfChildren = getNumberOfTemplateChildrenOverlays(oParentAggregationOverlay, sParentAggregationName);
291
- sDtNameSuffix = " [" + iNoOfChildren + "]";
292
336
  oData.type = "aggregationBindingTemplate";
293
337
  oData.icon = "sap-icon://attachment-text-file";
338
+ oData.parentAggregationName = sParentAggregationName;
294
339
  } else {
295
340
  oData.type = "element";
296
341
  }
297
342
 
298
343
  var oDtName = oDtMetadata.getName(oElement);
299
344
  if (oDtName && oDtName.singular) {
300
- oData.name = (oDtName && oDtName.singular) + sDtNameSuffix;
345
+ oData.name = oDtName && oDtName.singular;
301
346
  }
302
347
  return oData;
303
348
  }
@@ -322,7 +367,7 @@ sap.ui.define([
322
367
  return oData;
323
368
  }
324
369
 
325
- function getDefaultData(oElement, oDtMetadata) {
370
+ function getDefaultData(oElement, oDtMetadata, mTemplateData) {
326
371
  var oData = {
327
372
  id: oElement.getId(),
328
373
  technicalName: oElement.getMetadata().getName(),
@@ -330,6 +375,10 @@ sap.ui.define([
330
375
  type: null
331
376
  };
332
377
 
378
+ if (mTemplateData) {
379
+ oData.templateReference = mTemplateData.id;
380
+ }
381
+
333
382
  var sDefaultIcon = getDefaultIcon(oDtMetadata);
334
383
  if (sDefaultIcon) {
335
384
  oData.icon = sDefaultIcon;
@@ -354,12 +403,13 @@ sap.ui.define([
354
403
  *
355
404
  * @param {sap.ui.dt.Overlay} oOverlay - Overlay of the node for which properties are calculated
356
405
  * @param {sap.ui.dt.Overlay} [oParentOverlay] - Parent overlay (if present) for the passed overlay
406
+ * @param {object} [mTemplateData] - Template data
357
407
  * @returns {object} Data containing applicable properties
358
408
  */
359
- oOutline._getNodeProperties = function (oOverlay, oParentOverlay) {
409
+ oOutline._getNodeProperties = function (oOverlay, oParentOverlay, mTemplateData) {
360
410
  var oElement = oOverlay.getElement();
361
411
  var oDtMetadata = oOverlay.getDesignTimeMetadata();
362
- var oData = getDefaultData(oElement, oDtMetadata);
412
+ var oData = getDefaultData(oElement, oDtMetadata, mTemplateData);
363
413
 
364
414
  if (oOverlay instanceof ElementOverlay) {
365
415
  return Object.assign(oData, getElementOverlayData(oOverlay, oElement, oDtMetadata));
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @author SAP SE
31
31
  * @experimental Since 1.58
32
32
  * @since 1.58
33
- * @version 1.96.39
33
+ * @version 1.96.40
34
34
  * @private
35
35
  * @ui5-restricted
36
36
  */
@@ -15,7 +15,7 @@ sap.ui.define(function () {
15
15
  * @author SAP SE
16
16
  * @experimental Since 1.58
17
17
  * @since 1.58
18
- * @version 1.96.39
18
+ * @version 1.96.40
19
19
  * @private
20
20
  * @ui5-restricted
21
21
  */
@@ -39,7 +39,7 @@ function(
39
39
  * @extends sap.ui.rta.toolbar.Base
40
40
  *
41
41
  * @author SAP SE
42
- * @version 1.96.39
42
+ * @version 1.96.40
43
43
  *
44
44
  * @constructor
45
45
  * @private
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @extends sap.m.HBox
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.96.39
28
+ * @version 1.96.40
29
29
  *
30
30
  * @constructor
31
31
  * @private
@@ -32,7 +32,7 @@ function(
32
32
  * @extends sap.ui.rta.toolbar.Adaptation
33
33
  *
34
34
  * @author SAP SE
35
- * @version 1.96.39
35
+ * @version 1.96.40
36
36
  *
37
37
  * @constructor
38
38
  * @private
@@ -20,7 +20,7 @@ function(
20
20
  * @extends sap.ui.rta.toolbar.Adaptation
21
21
  *
22
22
  * @author SAP SE
23
- * @version 1.96.39
23
+ * @version 1.96.40
24
24
  *
25
25
  * @constructor
26
26
  * @private
@@ -24,7 +24,7 @@ function(
24
24
  * @extends sap.m.OverflowToolbarButton
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.96.39
27
+ * @version 1.96.40
28
28
  *
29
29
  * @constructor
30
30
  * @private
@@ -22,7 +22,7 @@ function(
22
22
  * @extends sap.ui.rta.toolbar.Base
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.96.39
25
+ * @version 1.96.40
26
26
  *
27
27
  * @constructor
28
28
  * @private
@@ -20,7 +20,7 @@ function(
20
20
  * @extends sap.ui.rta.toolbar.Adaptation
21
21
  *
22
22
  * @author SAP SE
23
- * @version 1.96.39
23
+ * @version 1.96.40
24
24
  *
25
25
  * @constructor
26
26
  * @private
@@ -53,7 +53,7 @@ sap.ui.define([
53
53
  * @class
54
54
  *
55
55
  * @author SAP SE
56
- * @version 1.96.39
56
+ * @version 1.96.40
57
57
  *
58
58
  * @constructor
59
59
  * @private
@@ -66,7 +66,7 @@ sap.ui.define([
66
66
  * Constructor for a new sap.ui.rta.util.PluginManager
67
67
  * @extends sap.ui.base.ManagedObject
68
68
  * @author SAP SE
69
- * @version 1.96.39
69
+ * @version 1.96.40
70
70
  * @constructor
71
71
  * @private
72
72
  * @since 1.86
@@ -41,7 +41,7 @@ sap.ui.define([
41
41
  * Constructor for a new sap.ui.rta.util.PopupManager
42
42
  * @extends sap.ui.base.ManagedObject
43
43
  * @author SAP SE
44
- * @version 1.96.39
44
+ * @version 1.96.40
45
45
  * @constructor
46
46
  * @private
47
47
  * @since 1.48
@@ -19,7 +19,7 @@ function(
19
19
  *
20
20
  * @extends sap.ui.core.EventBus
21
21
  * @author SAP SE
22
- * @version 1.96.39
22
+ * @version 1.96.40
23
23
  * @private
24
24
  * @since 1.56.0
25
25
  * @alias sap.ui.rta.util.ServiceEventBus
@@ -39,7 +39,7 @@ sap.ui.define([
39
39
  * @alias sap.ui.rta.util.changeVisualization.ChangeIndicator
40
40
  * @author SAP SE
41
41
  * @since 1.84.0
42
- * @version 1.96.39
42
+ * @version 1.96.40
43
43
  * @private
44
44
  * @ui5-restricted
45
45
  */
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @alias sap.ui.rta.util.changeVisualization.ChangeIndicatorRegistry
26
26
  * @author SAP SE
27
27
  * @since 1.86.0
28
- * @version 1.96.39
28
+ * @version 1.96.40
29
29
  * @private
30
30
  * @ui5-restricted
31
31
  */
@@ -81,7 +81,7 @@ sap.ui.define([
81
81
  * @alias sap.ui.rta.util.changeVisualization.ChangeVisualization
82
82
  * @author SAP SE
83
83
  * @since 1.84.0
84
- * @version 1.96.39
84
+ * @version 1.96.40
85
85
  * @private
86
86
  * @ui5-restricted
87
87
  */