@openui5/sap.ui.rta 1.131.1 → 1.132.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +1 -2
- package/THIRDPARTY.txt +1 -1
- package/package.json +6 -6
- package/src/sap/ui/rta/.library +2 -2
- package/src/sap/ui/rta/Client.js +2 -2
- package/src/sap/ui/rta/RuntimeAuthoring.js +26 -10
- package/src/sap/ui/rta/Utils.js +2 -2
- package/src/sap/ui/rta/api/startAdaptation.js +1 -1
- package/src/sap/ui/rta/api/startKeyUserAdaptation.js +1 -1
- package/src/sap/ui/rta/appVariant/AppVariantDialog.js +1 -1
- package/src/sap/ui/rta/appVariant/AppVariantManager.js +2 -2
- package/src/sap/ui/rta/appVariant/AppVariantOverviewDialog.js +1 -1
- package/src/sap/ui/rta/appVariant/AppVariantUtils.js +1 -1
- package/src/sap/ui/rta/appVariant/Feature.js +1 -1
- package/src/sap/ui/rta/appVariant/S4HanaCloudBackend.js +1 -1
- package/src/sap/ui/rta/appVariant/Utils.js +1 -1
- package/src/sap/ui/rta/appVariant/manageApps/webapp/Component.js +1 -1
- package/src/sap/ui/rta/appVariant/manageApps/webapp/controller/ManageApps.controller.js +1 -1
- package/src/sap/ui/rta/appVariant/manageApps/webapp/i18n/i18n_en_US_saptrc.properties +27 -27
- package/src/sap/ui/rta/appVariant/manageApps/webapp/index.html +3 -3
- package/src/sap/ui/rta/appVariant/manageApps/webapp/index.js +1 -1
- package/src/sap/ui/rta/appVariant/manageApps/webapp/model/models.js +1 -1
- package/src/sap/ui/rta/command/AddIFrame.js +2 -2
- package/src/sap/ui/rta/command/AddProperty.js +2 -2
- package/src/sap/ui/rta/command/AddXML.js +2 -2
- package/src/sap/ui/rta/command/AddXMLAtExtensionPoint.js +2 -2
- package/src/sap/ui/rta/command/AnnotationCommand.js +79 -0
- package/src/sap/ui/rta/command/AppDescriptorCommand.js +2 -2
- package/src/sap/ui/rta/command/BaseCommand.js +2 -2
- package/src/sap/ui/rta/command/BindProperty.js +6 -8
- package/src/sap/ui/rta/command/Combine.js +2 -2
- package/src/sap/ui/rta/command/CommandFactory.js +3 -3
- package/src/sap/ui/rta/command/CompositeCommand.js +2 -2
- package/src/sap/ui/rta/command/ControlVariantConfigure.js +9 -5
- package/src/sap/ui/rta/command/ControlVariantSave.js +2 -2
- package/src/sap/ui/rta/command/ControlVariantSaveAs.js +8 -6
- package/src/sap/ui/rta/command/ControlVariantSetTitle.js +14 -11
- package/src/sap/ui/rta/command/ControlVariantSwitch.js +6 -4
- package/src/sap/ui/rta/command/CreateContainer.js +2 -2
- package/src/sap/ui/rta/command/CustomAdd.js +2 -2
- package/src/sap/ui/rta/command/FlexCommand.js +2 -2
- package/src/sap/ui/rta/command/LREPSerializer.js +2 -2
- package/src/sap/ui/rta/command/LocalReset.js +2 -2
- package/src/sap/ui/rta/command/Move.js +2 -2
- package/src/sap/ui/rta/command/Property.js +2 -2
- package/src/sap/ui/rta/command/Remove.js +2 -2
- package/src/sap/ui/rta/command/Rename.js +2 -2
- package/src/sap/ui/rta/command/Resize.js +2 -2
- package/src/sap/ui/rta/command/Reveal.js +2 -2
- package/src/sap/ui/rta/command/Settings.js +2 -2
- package/src/sap/ui/rta/command/Split.js +2 -2
- package/src/sap/ui/rta/command/Stack.js +2 -2
- package/src/sap/ui/rta/command/appDescriptor/AddLibrary.js +2 -2
- package/src/sap/ui/rta/command/compVariant/CompVariantContent.js +2 -2
- package/src/sap/ui/rta/command/compVariant/CompVariantSaveAs.js +2 -2
- package/src/sap/ui/rta/command/compVariant/CompVariantSwitch.js +2 -2
- package/src/sap/ui/rta/command/compVariant/CompVariantUpdate.js +14 -2
- package/src/sap/ui/rta/enablement/TestDelegate.js +1 -1
- package/src/sap/ui/rta/enablement/elementActionTest.js +15 -16
- package/src/sap/ui/rta/library.js +3 -3
- package/src/sap/ui/rta/messagebundle.properties +18 -0
- package/src/sap/ui/rta/messagebundle_ar.properties +10 -0
- package/src/sap/ui/rta/messagebundle_bg.properties +13 -3
- package/src/sap/ui/rta/messagebundle_ca.properties +10 -0
- package/src/sap/ui/rta/messagebundle_cnr.properties +10 -0
- package/src/sap/ui/rta/messagebundle_cs.properties +10 -0
- package/src/sap/ui/rta/messagebundle_cy.properties +10 -0
- package/src/sap/ui/rta/messagebundle_da.properties +10 -0
- package/src/sap/ui/rta/messagebundle_de.properties +10 -0
- package/src/sap/ui/rta/messagebundle_el.properties +10 -0
- package/src/sap/ui/rta/messagebundle_en.properties +10 -0
- package/src/sap/ui/rta/messagebundle_en_GB.properties +10 -0
- package/src/sap/ui/rta/messagebundle_en_US_saprigi.properties +10 -0
- package/src/sap/ui/rta/messagebundle_en_US_saptrc.properties +347 -325
- package/src/sap/ui/rta/messagebundle_es.properties +10 -0
- package/src/sap/ui/rta/messagebundle_es_MX.properties +18 -8
- package/src/sap/ui/rta/messagebundle_et.properties +10 -0
- package/src/sap/ui/rta/messagebundle_fi.properties +10 -0
- package/src/sap/ui/rta/messagebundle_fr.properties +10 -0
- package/src/sap/ui/rta/messagebundle_fr_CA.properties +10 -0
- package/src/sap/ui/rta/messagebundle_hi.properties +10 -0
- package/src/sap/ui/rta/messagebundle_hr.properties +10 -0
- package/src/sap/ui/rta/messagebundle_hu.properties +10 -0
- package/src/sap/ui/rta/messagebundle_id.properties +10 -0
- package/src/sap/ui/rta/messagebundle_it.properties +10 -0
- package/src/sap/ui/rta/messagebundle_iw.properties +10 -0
- package/src/sap/ui/rta/messagebundle_ja.properties +10 -0
- package/src/sap/ui/rta/messagebundle_kk.properties +10 -0
- package/src/sap/ui/rta/messagebundle_ko.properties +10 -0
- package/src/sap/ui/rta/messagebundle_lt.properties +10 -0
- package/src/sap/ui/rta/messagebundle_lv.properties +10 -0
- package/src/sap/ui/rta/messagebundle_mk.properties +10 -0
- package/src/sap/ui/rta/messagebundle_ms.properties +14 -4
- package/src/sap/ui/rta/messagebundle_nl.properties +10 -0
- package/src/sap/ui/rta/messagebundle_no.properties +10 -0
- package/src/sap/ui/rta/messagebundle_pl.properties +10 -0
- package/src/sap/ui/rta/messagebundle_pt.properties +10 -0
- package/src/sap/ui/rta/messagebundle_pt_PT.properties +10 -0
- package/src/sap/ui/rta/messagebundle_ro.properties +10 -0
- package/src/sap/ui/rta/messagebundle_ru.properties +10 -0
- package/src/sap/ui/rta/messagebundle_sh.properties +10 -0
- package/src/sap/ui/rta/messagebundle_sk.properties +10 -0
- package/src/sap/ui/rta/messagebundle_sl.properties +10 -0
- package/src/sap/ui/rta/messagebundle_sr.properties +10 -0
- package/src/sap/ui/rta/messagebundle_sv.properties +10 -0
- package/src/sap/ui/rta/messagebundle_th.properties +10 -0
- package/src/sap/ui/rta/messagebundle_tr.properties +10 -0
- package/src/sap/ui/rta/messagebundle_uk.properties +11 -1
- package/src/sap/ui/rta/messagebundle_vi.properties +10 -0
- package/src/sap/ui/rta/messagebundle_zh_CN.properties +10 -0
- package/src/sap/ui/rta/messagebundle_zh_TW.properties +10 -0
- package/src/sap/ui/rta/plugin/AddXMLAtExtensionPoint.js +2 -2
- package/src/sap/ui/rta/plugin/BaseCreate.js +2 -2
- package/src/sap/ui/rta/plugin/Combine.js +2 -2
- package/src/sap/ui/rta/plugin/CompVariant.js +4 -2
- package/src/sap/ui/rta/plugin/ControlVariant.js +5 -23
- package/src/sap/ui/rta/plugin/CreateContainer.js +2 -2
- package/src/sap/ui/rta/plugin/CutPaste.js +2 -2
- package/src/sap/ui/rta/plugin/DragDrop.js +2 -2
- package/src/sap/ui/rta/plugin/LocalReset.js +2 -2
- package/src/sap/ui/rta/plugin/Plugin.js +15 -13
- package/src/sap/ui/rta/plugin/RTAElementMover.js +2 -2
- package/src/sap/ui/rta/plugin/Remove.js +2 -2
- package/src/sap/ui/rta/plugin/Rename.js +3 -3
- package/src/sap/ui/rta/plugin/RenameHandler.js +5 -9
- package/src/sap/ui/rta/plugin/Resize.js +3 -3
- package/src/sap/ui/rta/plugin/Selection.js +2 -2
- package/src/sap/ui/rta/plugin/Settings.js +2 -21
- package/src/sap/ui/rta/plugin/Split.js +2 -2
- package/src/sap/ui/rta/plugin/Stretch.js +7 -5
- package/src/sap/ui/rta/plugin/additionalElements/ActionExtractor.js +94 -126
- package/src/sap/ui/rta/plugin/additionalElements/AddElementsDialog.js +28 -31
- package/src/sap/ui/rta/plugin/additionalElements/AdditionalElementsAnalyzer.js +141 -172
- package/src/sap/ui/rta/plugin/additionalElements/AdditionalElementsPlugin.js +108 -137
- package/src/sap/ui/rta/plugin/additionalElements/AdditionalElementsUtils.js +2 -2
- package/src/sap/ui/rta/plugin/additionalElements/CommandBuilder.js +96 -141
- package/src/sap/ui/rta/plugin/annotations/AnnotationChangeDialog.fragment.xml +112 -0
- package/src/sap/ui/rta/plugin/annotations/AnnotationChangeDialog.js +183 -0
- package/src/sap/ui/rta/plugin/annotations/AnnotationChangeDialogController.js +109 -0
- package/src/sap/ui/rta/plugin/annotations/AnnotationPlugin.js +239 -0
- package/src/sap/ui/rta/plugin/annotations/AnnotationTypes.js +15 -0
- package/src/sap/ui/rta/plugin/iframe/AddIFrame.js +2 -2
- package/src/sap/ui/rta/plugin/iframe/AddIFrameDialog.js +3 -3
- package/src/sap/ui/rta/plugin/iframe/AddIFrameDialogController.js +1 -1
- package/src/sap/ui/rta/plugin/iframe/urlCleaner.js +1 -1
- package/src/sap/ui/rta/service/Action.js +2 -2
- package/src/sap/ui/rta/service/ControllerExtension.js +2 -2
- package/src/sap/ui/rta/service/Outline.js +2 -2
- package/src/sap/ui/rta/service/Property.js +2 -2
- package/src/sap/ui/rta/service/Receiver.js +1 -1
- package/src/sap/ui/rta/service/Selection.js +2 -2
- package/src/sap/ui/rta/service/SupportTools.js +2 -2
- package/src/sap/ui/rta/service/index.js +1 -1
- package/src/sap/ui/rta/themes/base/WhatsNew.less +5 -0
- package/src/sap/ui/rta/themes/base/library.source.less +1 -1
- package/src/sap/ui/rta/themes/sap_hcb/library.source.less +1 -1
- package/src/sap/ui/rta/toolbar/Adaptation.js +2 -2
- package/src/sap/ui/rta/toolbar/AdaptationRenderer.js +1 -1
- package/src/sap/ui/rta/toolbar/Base.js +2 -2
- package/src/sap/ui/rta/toolbar/BaseRenderer.js +1 -1
- package/src/sap/ui/rta/toolbar/Fiori.js +3 -4
- package/src/sap/ui/rta/toolbar/FioriLike.js +2 -2
- package/src/sap/ui/rta/toolbar/OverflowToolbarButton.js +2 -2
- package/src/sap/ui/rta/toolbar/Standalone.js +2 -2
- package/src/sap/ui/rta/toolbar/contextBased/ManageAdaptations.js +1 -1
- package/src/sap/ui/rta/toolbar/contextBased/SaveAsAdaptation.js +2 -2
- package/src/sap/ui/rta/toolbar/translation/Translation.js +3 -3
- package/src/sap/ui/rta/toolbar/versioning/Versioning.js +2 -2
- package/src/sap/ui/rta/util/Animation.js +1 -1
- package/src/sap/ui/rta/util/BindingsExtractor.js +1 -1
- package/src/sap/ui/rta/util/PluginManager.js +16 -10
- package/src/sap/ui/rta/util/PopupManager.js +3 -3
- package/src/sap/ui/rta/util/ReloadManager.js +9 -9
- package/src/sap/ui/rta/util/ServiceEventBus.js +2 -2
- package/src/sap/ui/rta/util/ServiceManager.js +2 -2
- package/src/sap/ui/rta/util/adaptationStarter.js +17 -2
- package/src/sap/ui/rta/util/changeVisualization/ChangeCategories.js +1 -1
- package/src/sap/ui/rta/util/changeVisualization/ChangeIndicator.js +2 -2
- package/src/sap/ui/rta/util/changeVisualization/ChangeIndicatorRegistry.js +2 -2
- package/src/sap/ui/rta/util/changeVisualization/ChangeStates.js +1 -1
- package/src/sap/ui/rta/util/changeVisualization/ChangeVisualization.js +5 -3
- package/src/sap/ui/rta/util/changeVisualization/ChangeVisualizationUtils.js +1 -1
- package/src/sap/ui/rta/util/changeVisualization/commands/CombineVisualization.js +1 -1
- package/src/sap/ui/rta/util/changeVisualization/commands/CreateContainerVisualization.js +1 -1
- package/src/sap/ui/rta/util/changeVisualization/commands/MoveVisualization.js +1 -1
- package/src/sap/ui/rta/util/changeVisualization/commands/RenameVisualization.js +1 -1
- package/src/sap/ui/rta/util/changeVisualization/commands/SplitVisualization.js +1 -1
- package/src/sap/ui/rta/util/changeVisualization/commands/getCommandVisualization.js +1 -1
- package/src/sap/ui/rta/util/hasStableId.js +1 -1
- package/src/sap/ui/rta/util/showMessageBox.js +1 -1
- package/src/sap/ui/rta/util/validateFlexEnabled.js +1 -1
- package/src/sap/ui/rta/util/validateStableIds.js +1 -1
- package/src/sap/ui/rta/util/validateText.js +1 -1
- package/src/sap/ui/rta/util/whatsNew/WhatsNew.js +2 -2
- package/src/sap/ui/rta/util/whatsNew/WhatsNewDialog.fragment.xml +5 -4
- package/src/sap/ui/rta/util/whatsNew/WhatsNewOverview.js +1 -1
- package/src/sap/ui/rta/util/whatsNew/WhatsNewOverviewDialog.fragment.xml +8 -2
- package/src/sap/ui/rta/util/whatsNew/WhatsNewUtils.js +1 -1
- package/src/sap/ui/rta/util/whatsNew/whatsNewContent/WhatsNewFeatures.js +1 -1
- package/src/sap/ui/rta/command/Annotation.js +0 -45
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
|
|
2
|
+
/*!
|
|
3
|
+
* OpenUI5
|
|
4
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
6
|
+
*/
|
|
7
|
+
sap.ui.define([
|
|
8
|
+
"sap/ui/core/mvc/Controller",
|
|
9
|
+
"sap/ui/core/Element",
|
|
10
|
+
"sap/ui/model/Filter",
|
|
11
|
+
"sap/ui/model/FilterOperator",
|
|
12
|
+
"sap/ui/rta/plugin/annotations/AnnotationTypes"
|
|
13
|
+
], function(
|
|
14
|
+
Controller,
|
|
15
|
+
Element,
|
|
16
|
+
Filter,
|
|
17
|
+
FilterOperator,
|
|
18
|
+
AnnotationTypes
|
|
19
|
+
) {
|
|
20
|
+
"use strict";
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* @class Controller for the AnnotationChangeDialog.
|
|
24
|
+
* @extends sap.ui.core.mvc.Controller
|
|
25
|
+
* @author SAP SE
|
|
26
|
+
* @version 1.132.1
|
|
27
|
+
* @constructor
|
|
28
|
+
* @since 1.132
|
|
29
|
+
* @private
|
|
30
|
+
* @ui5-restricted sap.ui.rta
|
|
31
|
+
*/
|
|
32
|
+
const AnnotationChangeDialogController = Controller.extend("sap.ui.rta.plugin.annotations.AnnotationChangeDialogController");
|
|
33
|
+
|
|
34
|
+
AnnotationChangeDialogController.prototype.initialize = function() {
|
|
35
|
+
this._oChangedProperties = {};
|
|
36
|
+
return new Promise((resolve) => {
|
|
37
|
+
this._fnResolveAfterClose = resolve;
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
AnnotationChangeDialogController.prototype.filterProperties = function(sQuery) {
|
|
42
|
+
const aFilters = [];
|
|
43
|
+
if (sQuery && sQuery.length > 0) {
|
|
44
|
+
const filter = new Filter("propertyName", FilterOperator.Contains, sQuery);
|
|
45
|
+
aFilters.push(filter);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
const oList = Element.getElementById("sapUiRtaChangeAnnotationDialog_propertyList");
|
|
49
|
+
const oBinding = oList.getBinding("formElements");
|
|
50
|
+
oBinding.filter(aFilters);
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
AnnotationChangeDialogController.prototype.onFilterProperties = function(oEvent) {
|
|
54
|
+
const sQuery = oEvent.getSource().getValue();
|
|
55
|
+
this.filterProperties(sQuery);
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
AnnotationChangeDialogController.prototype.switchDisplayMode = function() {
|
|
59
|
+
const oList = Element.getElementById("sapUiRtaChangeAnnotationDialog_propertyList");
|
|
60
|
+
const bShowChangedPropertiesOnly = !oList.getModel().getProperty("/showChangedPropertiesOnly");
|
|
61
|
+
oList.getModel().setProperty("/showChangedPropertiesOnly", bShowChangedPropertiesOnly);
|
|
62
|
+
oList.getModel().setProperty(
|
|
63
|
+
"/propertiesToDisplay",
|
|
64
|
+
bShowChangedPropertiesOnly
|
|
65
|
+
? oList.getModel().getProperty("/changedProperties")
|
|
66
|
+
: oList.getModel().getProperty("/properties")
|
|
67
|
+
);
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
AnnotationChangeDialogController.prototype.onValueListChange = function(oEvent) {
|
|
71
|
+
const sPath = oEvent.getSource().getBindingContext().getObject().annotationPath;
|
|
72
|
+
const sSelectedKey = oEvent.getParameters().selectedItem.getKey();
|
|
73
|
+
this._oChangedProperties[sPath] = sSelectedKey;
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
AnnotationChangeDialogController.prototype.onBooleanChange = function(oEvent) {
|
|
77
|
+
const sPath = oEvent.getSource().getBindingContext().getObject().annotationPath;
|
|
78
|
+
const bSelected = oEvent.getParameters().selected;
|
|
79
|
+
this._oChangedProperties[sPath] = bSelected;
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
AnnotationChangeDialogController.prototype.onStringChange = function(oEvent) {
|
|
83
|
+
const sPath = oEvent.getSource().getBindingContext().getObject().annotationPath;
|
|
84
|
+
const sValue = oEvent.getParameters().value;
|
|
85
|
+
this._oChangedProperties[sPath] = sValue;
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
AnnotationChangeDialogController.prototype.onSavePress = function() {
|
|
89
|
+
this._fnResolveAfterClose(this._oChangedProperties);
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
AnnotationChangeDialogController.prototype.onCancelPress = function() {
|
|
93
|
+
this._fnResolveAfterClose({});
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
AnnotationChangeDialogController.prototype.formatters = {
|
|
97
|
+
isValueList(sType) {
|
|
98
|
+
return sType === AnnotationTypes.ValueListType;
|
|
99
|
+
},
|
|
100
|
+
isBoolean(sType) {
|
|
101
|
+
return sType === AnnotationTypes.BooleanType;
|
|
102
|
+
},
|
|
103
|
+
isString(sType) {
|
|
104
|
+
return sType === AnnotationTypes.StringType;
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
return AnnotationChangeDialogController;
|
|
109
|
+
});
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* OpenUI5
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
sap.ui.define([
|
|
8
|
+
"sap/base/Log",
|
|
9
|
+
"sap/ui/dt/Util",
|
|
10
|
+
"sap/ui/rta/plugin/annotations/AnnotationChangeDialog",
|
|
11
|
+
"sap/ui/rta/plugin/Plugin"
|
|
12
|
+
], function(
|
|
13
|
+
BaseLog,
|
|
14
|
+
DtUtil,
|
|
15
|
+
AnnotationChangeDialog,
|
|
16
|
+
Plugin
|
|
17
|
+
) {
|
|
18
|
+
"use strict";
|
|
19
|
+
|
|
20
|
+
async function handleCompositeCommand(oElement, oAction, aChanges) {
|
|
21
|
+
const oCompositeCommand = await this.getCommandFactory().getCommandFor(oElement, "composite");
|
|
22
|
+
for (const oChange of aChanges) {
|
|
23
|
+
const oAnnotationCommand = await this.getCommandFactory().getCommandFor(
|
|
24
|
+
oElement,
|
|
25
|
+
"annotation",
|
|
26
|
+
{
|
|
27
|
+
changeType: oAction.changeType,
|
|
28
|
+
serviceUrl: oChange.serviceUrl,
|
|
29
|
+
content: oChange.content
|
|
30
|
+
}
|
|
31
|
+
);
|
|
32
|
+
oCompositeCommand.addCommand(oAnnotationCommand);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
if (oCompositeCommand.getCommands().length > 0) {
|
|
36
|
+
this.fireElementModified({
|
|
37
|
+
command: oCompositeCommand,
|
|
38
|
+
hasAnnotationCommand: true
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
function getActionText(oElementOverlay, oAction) {
|
|
44
|
+
const vName = oAction.title;
|
|
45
|
+
const oElement = oElementOverlay.getElement();
|
|
46
|
+
if (vName) {
|
|
47
|
+
if (typeof vName === "function") {
|
|
48
|
+
return vName(oElement);
|
|
49
|
+
}
|
|
50
|
+
const sText = oElementOverlay.getDesignTimeMetadata()?.getLibraryText(oElement, vName);
|
|
51
|
+
if (sText) {
|
|
52
|
+
return sText;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
BaseLog.error("Annotation action title is not properly defined in the designtime metadata");
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
function getActionIcon(oAnnotationAction) {
|
|
60
|
+
const sDefaultIcon = "sap-icon://request";
|
|
61
|
+
const sActionIcon = oAnnotationAction.icon;
|
|
62
|
+
if (!sActionIcon) {
|
|
63
|
+
return sDefaultIcon;
|
|
64
|
+
}
|
|
65
|
+
if (typeof sActionIcon !== "string") {
|
|
66
|
+
BaseLog.error("Icon setting for annotation action should be a string");
|
|
67
|
+
return sDefaultIcon;
|
|
68
|
+
}
|
|
69
|
+
return sActionIcon;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Constructor for a new Annotation Plugin.
|
|
74
|
+
* Multiple annotation actions can be defined for the same overlay. Each action is represented by a menu item.
|
|
75
|
+
* The Annotation change specific data are entered in a dialog which returns the change data.
|
|
76
|
+
* One action/dialog can also create multiple changes.
|
|
77
|
+
*
|
|
78
|
+
* @param {string} [sId] id for the new object, generated automatically if no id is given
|
|
79
|
+
* @param {object} [mSettings] initial settings for the new object
|
|
80
|
+
* @class
|
|
81
|
+
* @extends sap.ui.rta.plugin.Plugin
|
|
82
|
+
* @author SAP SE
|
|
83
|
+
* @version 1.132.1
|
|
84
|
+
* @constructor
|
|
85
|
+
* @private
|
|
86
|
+
* @since 1.132
|
|
87
|
+
* @alias sap.ui.rta.plugin.AnnotationPlugin
|
|
88
|
+
*/
|
|
89
|
+
const AnnotationPlugin =
|
|
90
|
+
Plugin.extend("sap.ui.rta.plugin.annotations.AnnotationPlugin", /** @lends sap.ui.rta.plugin.annotations.AnnotationPlugin.prototype */ {
|
|
91
|
+
metadata: {
|
|
92
|
+
library: "sap.ui.rta",
|
|
93
|
+
associations: {},
|
|
94
|
+
events: {}
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
const sPluginId = "CTX_ANNOTATION";
|
|
99
|
+
|
|
100
|
+
AnnotationPlugin.prototype.init = function(...aArgs) {
|
|
101
|
+
Plugin.prototype.init.apply(this, aArgs);
|
|
102
|
+
this._oDialog = new AnnotationChangeDialog();
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* @param {sap.ui.dt.ElementOverlay} oElementOverlay - Overlay to be checked for editable
|
|
107
|
+
* @returns {boolean} True if it's editable
|
|
108
|
+
* @private
|
|
109
|
+
*/
|
|
110
|
+
AnnotationPlugin.prototype._isEditable = function(oElementOverlay) {
|
|
111
|
+
const oActions = this.getAction(oElementOverlay);
|
|
112
|
+
|
|
113
|
+
if (oActions) {
|
|
114
|
+
return Object.values(oActions).some((oAction) => {
|
|
115
|
+
return oAction.changeType;
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
return false;
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
/**
|
|
123
|
+
* Checks if Annotation actions are enabled for oOverlay
|
|
124
|
+
*
|
|
125
|
+
* @param {sap.ui.dt.ElementOverlay[]} aElementOverlays - Target overlays
|
|
126
|
+
* @returns {boolean} True if it's enabled
|
|
127
|
+
* @public
|
|
128
|
+
*/
|
|
129
|
+
AnnotationPlugin.prototype.isEnabled = function(aElementOverlays) {
|
|
130
|
+
const oElementOverlay = aElementOverlays[0];
|
|
131
|
+
const oResponsibleElementOverlay = this.getResponsibleElementOverlay(oElementOverlay);
|
|
132
|
+
const oActions = this.getAction(oResponsibleElementOverlay);
|
|
133
|
+
|
|
134
|
+
if (oActions) {
|
|
135
|
+
return Object.values(oActions).some((oAction) => {
|
|
136
|
+
if (typeof oAction.isEnabled !== "undefined") {
|
|
137
|
+
if (typeof oAction.isEnabled === "function") {
|
|
138
|
+
return oAction.isEnabled(oResponsibleElementOverlay.getElement());
|
|
139
|
+
}
|
|
140
|
+
return oAction.isEnabled;
|
|
141
|
+
}
|
|
142
|
+
return true;
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
return false;
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* Opens the annotation dialog and creates the commands for the returned changes.
|
|
150
|
+
*
|
|
151
|
+
* @param {sap.ui.dt.ElementOverlay[]} aElementOverlays - Target Overlays of the action
|
|
152
|
+
* @param {object} oAction - The action object defined in the designtime
|
|
153
|
+
* @return {Promise} Resolves with the creation of the commands
|
|
154
|
+
*/
|
|
155
|
+
AnnotationPlugin.prototype.handler = async function(aElementOverlays, oAction) {
|
|
156
|
+
const oElementOverlay = aElementOverlays[0];
|
|
157
|
+
const oElement = oElementOverlay.getElement();
|
|
158
|
+
|
|
159
|
+
try {
|
|
160
|
+
const aChanges = await this._oDialog.openDialogAndHandleChanges({
|
|
161
|
+
title: getActionText(oElementOverlay, oAction),
|
|
162
|
+
type: oAction.type,
|
|
163
|
+
control: oElement,
|
|
164
|
+
delegate: oAction.delegate,
|
|
165
|
+
annotation: oAction.annotation,
|
|
166
|
+
description: oAction.description
|
|
167
|
+
});
|
|
168
|
+
|
|
169
|
+
if (aChanges.length > 0) {
|
|
170
|
+
return handleCompositeCommand.call(this, oElement, oAction, aChanges);
|
|
171
|
+
}
|
|
172
|
+
return undefined;
|
|
173
|
+
} catch (vError) {
|
|
174
|
+
throw DtUtil.propagateError(
|
|
175
|
+
vError,
|
|
176
|
+
"AnnotationPlugin#handler",
|
|
177
|
+
"Error occurred during handler execution",
|
|
178
|
+
"sap.ui.rta.plugin.annotations.annotationplugin"
|
|
179
|
+
);
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* Retrieves the context menu item for the actions.
|
|
185
|
+
* If multiple annotation actions are defined, it returns multiple menu items.
|
|
186
|
+
* @param {sap.ui.dt.ElementOverlay[]} aElementOverlays - Target overlays
|
|
187
|
+
* @return {object[]} Array of the items with required data
|
|
188
|
+
*/
|
|
189
|
+
AnnotationPlugin.prototype.getMenuItems = async function(aElementOverlays) {
|
|
190
|
+
const oElementOverlay = aElementOverlays[0];
|
|
191
|
+
const oResponsibleElementOverlay = this.getResponsibleElementOverlay(oElementOverlay);
|
|
192
|
+
const oAnnotationActionMap = this.getAction(oResponsibleElementOverlay);
|
|
193
|
+
|
|
194
|
+
const aMenuItems = [];
|
|
195
|
+
if (oAnnotationActionMap) {
|
|
196
|
+
const iRank = this.getRank(sPluginId);
|
|
197
|
+
|
|
198
|
+
if (this._isEditableByPlugin(oResponsibleElementOverlay) === undefined) {
|
|
199
|
+
// The responsibleElement editableByPlugin state was not evaluated yet e.g. because it
|
|
200
|
+
// has no visible geometry, thus evaluateEditable now
|
|
201
|
+
await this.evaluateEditable([oResponsibleElementOverlay], { onRegistration: false });
|
|
202
|
+
}
|
|
203
|
+
Object.values(oAnnotationActionMap).forEach(function(oAction, iIndex) {
|
|
204
|
+
if (
|
|
205
|
+
this.isAvailable([oResponsibleElementOverlay])
|
|
206
|
+
) {
|
|
207
|
+
const sActionText = getActionText(oResponsibleElementOverlay, oAction);
|
|
208
|
+
if (!sActionText) {
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
aMenuItems.push({
|
|
213
|
+
id: sPluginId + iIndex,
|
|
214
|
+
rank: iRank + iIndex,
|
|
215
|
+
text: sActionText,
|
|
216
|
+
icon: getActionIcon(oAction),
|
|
217
|
+
enabled: (
|
|
218
|
+
typeof oAction.isEnabled === "function" && oAction.isEnabled(aElementOverlays[0].getElement())
|
|
219
|
+
|| (oAction.isEnabled !== false) && this.isEnabled(aElementOverlays)
|
|
220
|
+
),
|
|
221
|
+
handler: this.handler.bind(this, aElementOverlays, oAction)
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
}, this);
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
return aMenuItems;
|
|
228
|
+
};
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* Get the name of the action related to this plugin.
|
|
232
|
+
* @return {string} Returns the action name
|
|
233
|
+
*/
|
|
234
|
+
AnnotationPlugin.prototype.getActionName = function() {
|
|
235
|
+
return "annotation";
|
|
236
|
+
};
|
|
237
|
+
|
|
238
|
+
return AnnotationPlugin;
|
|
239
|
+
});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
|
|
2
|
+
/*!
|
|
3
|
+
* OpenUI5
|
|
4
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
6
|
+
*/
|
|
7
|
+
sap.ui.define([], function() {
|
|
8
|
+
"use strict";
|
|
9
|
+
|
|
10
|
+
return {
|
|
11
|
+
ValueListType: "ValueList",
|
|
12
|
+
BooleanType: "Boolean",
|
|
13
|
+
StringType: "String"
|
|
14
|
+
};
|
|
15
|
+
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -119,7 +119,7 @@ sap.ui.define([
|
|
|
119
119
|
* @class The AddIFrame allows trigger AddIFrame operations on the overlay.
|
|
120
120
|
* @extends sap.ui.rta.plugin.BaseCreate
|
|
121
121
|
* @author SAP SE
|
|
122
|
-
* @version 1.
|
|
122
|
+
* @version 1.132.1
|
|
123
123
|
* @constructor
|
|
124
124
|
* @private
|
|
125
125
|
* @since 1.75
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
sap.ui.define([
|
|
@@ -32,7 +32,7 @@ sap.ui.define([
|
|
|
32
32
|
var {ValueState} = coreLibrary;
|
|
33
33
|
var _oTextResources = Lib.getResourceBundleFor("sap.ui.rta");
|
|
34
34
|
var _sDocumentationURL = "https://help.sap.com/docs/search?q=Embedding%20Content%20%28Object%20Pages%29";
|
|
35
|
-
var _sDocumentationHTML = `${_oTextResources.getText("IFRAME_ADDIFRAME_DIALOG_URL_WARNING_TEXT")} (` + `<a href=${_sDocumentationURL}>${_oTextResources.getText("IFRAME_ADDIFRAME_DIALOG_URL_WARNING_LINKTEXT")}</a
|
|
35
|
+
var _sDocumentationHTML = `${_oTextResources.getText("IFRAME_ADDIFRAME_DIALOG_URL_WARNING_TEXT")} (` + `<a href=${_sDocumentationURL}>${_oTextResources.getText("IFRAME_ADDIFRAME_DIALOG_URL_WARNING_LINKTEXT")}</a>)`;
|
|
36
36
|
var _mText = {
|
|
37
37
|
dialogTitle: _oTextResources.getText("IFRAME_ADDIFRAME_DIALOG_TITLE"),
|
|
38
38
|
dialogCreateTitle: _oTextResources.getText("IFRAME_ADDIFRAME_DIALOG_TITLE"),
|
|
@@ -159,7 +159,7 @@ sap.ui.define([
|
|
|
159
159
|
* @class Context - Dialog for IFrame settings in Runtime Authoring
|
|
160
160
|
* @extends sap.ui.base.ManagedObject
|
|
161
161
|
* @author SAP SE
|
|
162
|
-
* @version 1.
|
|
162
|
+
* @version 1.132.1
|
|
163
163
|
* @constructor
|
|
164
164
|
* @private
|
|
165
165
|
* @since 1.78
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -24,7 +24,7 @@ sap.ui.define([
|
|
|
24
24
|
* @name sap.ui.rta.service.Action
|
|
25
25
|
* @author SAP SE
|
|
26
26
|
* @since 1.58
|
|
27
|
-
* @version 1.
|
|
27
|
+
* @version 1.132.1
|
|
28
28
|
* @private
|
|
29
29
|
* @ui5-restricted
|
|
30
30
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -30,7 +30,7 @@ sap.ui.define([
|
|
|
30
30
|
* @name sap.ui.rta.service.ControllerExtension
|
|
31
31
|
* @author SAP SE
|
|
32
32
|
* @since 1.58
|
|
33
|
-
* @version 1.
|
|
33
|
+
* @version 1.132.1
|
|
34
34
|
* @private
|
|
35
35
|
* @ui5-restricted
|
|
36
36
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -43,7 +43,7 @@ sap.ui.define([
|
|
|
43
43
|
* @name sap.ui.rta.service.Outline
|
|
44
44
|
* @author SAP SE
|
|
45
45
|
* @since 1.56
|
|
46
|
-
* @version 1.
|
|
46
|
+
* @version 1.132.1
|
|
47
47
|
* @private
|
|
48
48
|
* @ui5-restricted
|
|
49
49
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -27,7 +27,7 @@ sap.ui.define([
|
|
|
27
27
|
* @name sap.ui.rta.service.Property
|
|
28
28
|
* @author SAP SE
|
|
29
29
|
* @since 1.58
|
|
30
|
-
* @version 1.
|
|
30
|
+
* @version 1.132.1
|
|
31
31
|
* @private
|
|
32
32
|
* @ui5-restricted
|
|
33
33
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -14,7 +14,7 @@ sap.ui.define(function() {
|
|
|
14
14
|
* @name sap.ui.rta.service.Selection
|
|
15
15
|
* @author SAP SE
|
|
16
16
|
* @since 1.58
|
|
17
|
-
* @version 1.
|
|
17
|
+
* @version 1.132.1
|
|
18
18
|
* @private
|
|
19
19
|
* @ui5-restricted
|
|
20
20
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -30,7 +30,7 @@ sap.ui.define([
|
|
|
30
30
|
* @name sap.ui.rta.service.SupportTools
|
|
31
31
|
* @author SAP SE
|
|
32
32
|
* @since 1.106
|
|
33
|
-
* @version 1.
|
|
33
|
+
* @version 1.132.1
|
|
34
34
|
* @private
|
|
35
35
|
* @ui5-restricted
|
|
36
36
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
@import "../../../../../sap/ui/core/themes/base/base.less";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
/* ============================================================================== */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -57,7 +57,7 @@ sap.ui.define([
|
|
|
57
57
|
* @extends sap.ui.rta.toolbar.Base
|
|
58
58
|
*
|
|
59
59
|
* @author SAP SE
|
|
60
|
-
* @version 1.
|
|
60
|
+
* @version 1.132.1
|
|
61
61
|
*
|
|
62
62
|
* @constructor
|
|
63
63
|
* @private
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -33,7 +33,7 @@ sap.ui.define([
|
|
|
33
33
|
* @extends sap.m.HBox
|
|
34
34
|
*
|
|
35
35
|
* @author SAP SE
|
|
36
|
-
* @version 1.
|
|
36
|
+
* @version 1.132.1
|
|
37
37
|
*
|
|
38
38
|
* @constructor
|
|
39
39
|
* @private
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -32,7 +32,7 @@ function(
|
|
|
32
32
|
* @extends sap.ui.rta.toolbar.Adaptation
|
|
33
33
|
*
|
|
34
34
|
* @author SAP SE
|
|
35
|
-
* @version 1.
|
|
35
|
+
* @version 1.132.1
|
|
36
36
|
*
|
|
37
37
|
* @constructor
|
|
38
38
|
* @private
|
|
@@ -64,8 +64,7 @@ function(
|
|
|
64
64
|
|
|
65
65
|
if (this._oFioriHeader.getShowLogo() && sLogoPath) {
|
|
66
66
|
// Unstable: if FLP changes ID of <img> element, logo could be not found
|
|
67
|
-
|
|
68
|
-
const oLogo = this._oFioriHeader.$().find("#shell-header-icon").get(0);
|
|
67
|
+
const oLogo = this._oFioriHeader.getDomRef().querySelector("#shell-header-icon");
|
|
69
68
|
let iWidth;
|
|
70
69
|
let iHeight;
|
|
71
70
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* OpenUI5
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
|
|
4
4
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
|
|
5
5
|
*/
|
|
6
6
|
|
|
@@ -20,7 +20,7 @@ function(
|
|
|
20
20
|
* @extends sap.ui.rta.toolbar.Adaptation
|
|
21
21
|
*
|
|
22
22
|
* @author SAP SE
|
|
23
|
-
* @version 1.
|
|
23
|
+
* @version 1.132.1
|
|
24
24
|
*
|
|
25
25
|
* @constructor
|
|
26
26
|
* @private
|