@openui5/sap.ui.rta 1.115.1 → 1.117.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.
- package/.eslintrc.json +33 -2
- package/.reuse/dep5 +0 -5
- package/THIRDPARTY.txt +1 -7
- package/package.json +6 -6
- package/src/sap/ui/rta/.library +1 -1
- package/src/sap/ui/rta/Client.js +60 -59
- package/src/sap/ui/rta/RuntimeAuthoring.js +256 -254
- package/src/sap/ui/rta/Utils.js +42 -42
- package/src/sap/ui/rta/api/startAdaptation.js +2 -2
- package/src/sap/ui/rta/appVariant/AppVariantDialog.js +3 -3
- package/src/sap/ui/rta/appVariant/AppVariantManager.js +27 -27
- package/src/sap/ui/rta/appVariant/AppVariantUtils.js +100 -103
- package/src/sap/ui/rta/appVariant/Feature.js +75 -77
- package/src/sap/ui/rta/appVariant/S4HanaCloudBackend.js +6 -7
- package/src/sap/ui/rta/appVariant/Utils.js +17 -17
- package/src/sap/ui/rta/appVariant/manageApps/webapp/controller/ManageApps.controller.js +36 -36
- package/src/sap/ui/rta/command/AddIFrame.js +7 -7
- package/src/sap/ui/rta/command/AddProperty.js +7 -7
- package/src/sap/ui/rta/command/AddXML.js +1 -1
- package/src/sap/ui/rta/command/AddXMLAtExtensionPoint.js +7 -7
- package/src/sap/ui/rta/command/AppDescriptorCommand.js +18 -18
- package/src/sap/ui/rta/command/BaseCommand.js +1 -2
- package/src/sap/ui/rta/command/BindProperty.js +1 -1
- package/src/sap/ui/rta/command/Combine.js +1 -1
- package/src/sap/ui/rta/command/CommandFactory.js +11 -11
- package/src/sap/ui/rta/command/CompositeCommand.js +1 -1
- package/src/sap/ui/rta/command/ControlVariantConfigure.js +28 -3
- package/src/sap/ui/rta/command/ControlVariantSave.js +1 -1
- package/src/sap/ui/rta/command/ControlVariantSaveAs.js +26 -24
- package/src/sap/ui/rta/command/ControlVariantSetTitle.js +7 -7
- package/src/sap/ui/rta/command/ControlVariantSwitch.js +11 -11
- package/src/sap/ui/rta/command/CreateContainer.js +2 -2
- package/src/sap/ui/rta/command/CustomAdd.js +1 -1
- package/src/sap/ui/rta/command/FlexCommand.js +30 -30
- package/src/sap/ui/rta/command/LREPSerializer.js +20 -10
- package/src/sap/ui/rta/command/LocalReset.js +1 -1
- package/src/sap/ui/rta/command/Move.js +1 -1
- package/src/sap/ui/rta/command/Property.js +1 -1
- package/src/sap/ui/rta/command/Remove.js +1 -1
- package/src/sap/ui/rta/command/Rename.js +1 -1
- package/src/sap/ui/rta/command/Resize.js +1 -1
- package/src/sap/ui/rta/command/Reveal.js +1 -1
- package/src/sap/ui/rta/command/Settings.js +1 -1
- package/src/sap/ui/rta/command/Split.js +1 -1
- package/src/sap/ui/rta/command/Stack.js +4 -4
- package/src/sap/ui/rta/command/appDescriptor/AddLibrary.js +1 -1
- package/src/sap/ui/rta/command/compVariant/CompVariantContent.js +1 -1
- package/src/sap/ui/rta/command/compVariant/CompVariantSaveAs.js +1 -1
- package/src/sap/ui/rta/command/compVariant/CompVariantSwitch.js +1 -1
- package/src/sap/ui/rta/command/compVariant/CompVariantUpdate.js +1 -1
- package/src/sap/ui/rta/enablement/TestDelegate.js +92 -92
- package/src/sap/ui/rta/enablement/elementActionTest.js +230 -112
- package/src/sap/ui/rta/library.js +2 -2
- package/src/sap/ui/rta/messagebundle.properties +11 -1
- package/src/sap/ui/rta/messagebundle_ar.properties +5 -0
- package/src/sap/ui/rta/messagebundle_bg.properties +5 -0
- package/src/sap/ui/rta/messagebundle_ca.properties +5 -0
- package/src/sap/ui/rta/messagebundle_cs.properties +5 -0
- package/src/sap/ui/rta/messagebundle_cy.properties +5 -0
- package/src/sap/ui/rta/messagebundle_da.properties +5 -0
- package/src/sap/ui/rta/messagebundle_de.properties +6 -1
- package/src/sap/ui/rta/messagebundle_el.properties +5 -0
- package/src/sap/ui/rta/messagebundle_en.properties +5 -0
- package/src/sap/ui/rta/messagebundle_en_GB.properties +5 -0
- package/src/sap/ui/rta/messagebundle_en_US_sappsd.properties +5 -0
- package/src/sap/ui/rta/messagebundle_en_US_saprigi.properties +5 -0
- package/src/sap/ui/rta/messagebundle_en_US_saptrc.properties +6 -1
- package/src/sap/ui/rta/messagebundle_es.properties +5 -0
- package/src/sap/ui/rta/messagebundle_es_MX.properties +5 -0
- package/src/sap/ui/rta/messagebundle_et.properties +5 -0
- package/src/sap/ui/rta/messagebundle_fi.properties +5 -0
- package/src/sap/ui/rta/messagebundle_fr.properties +5 -0
- package/src/sap/ui/rta/messagebundle_fr_CA.properties +5 -0
- package/src/sap/ui/rta/messagebundle_hi.properties +5 -0
- package/src/sap/ui/rta/messagebundle_hr.properties +5 -0
- package/src/sap/ui/rta/messagebundle_hu.properties +5 -0
- package/src/sap/ui/rta/messagebundle_id.properties +5 -0
- package/src/sap/ui/rta/messagebundle_it.properties +5 -0
- package/src/sap/ui/rta/messagebundle_iw.properties +5 -0
- package/src/sap/ui/rta/messagebundle_ja.properties +5 -0
- package/src/sap/ui/rta/messagebundle_kk.properties +5 -0
- package/src/sap/ui/rta/messagebundle_ko.properties +5 -0
- package/src/sap/ui/rta/messagebundle_lt.properties +5 -0
- package/src/sap/ui/rta/messagebundle_lv.properties +5 -0
- package/src/sap/ui/rta/messagebundle_ms.properties +5 -0
- package/src/sap/ui/rta/messagebundle_nl.properties +5 -0
- package/src/sap/ui/rta/messagebundle_no.properties +5 -0
- package/src/sap/ui/rta/messagebundle_pl.properties +5 -0
- package/src/sap/ui/rta/messagebundle_pt.properties +5 -0
- package/src/sap/ui/rta/messagebundle_pt_PT.properties +5 -0
- package/src/sap/ui/rta/messagebundle_ro.properties +5 -0
- package/src/sap/ui/rta/messagebundle_ru.properties +5 -0
- package/src/sap/ui/rta/messagebundle_sh.properties +5 -0
- package/src/sap/ui/rta/messagebundle_sk.properties +5 -0
- package/src/sap/ui/rta/messagebundle_sl.properties +5 -0
- package/src/sap/ui/rta/messagebundle_sv.properties +5 -0
- package/src/sap/ui/rta/messagebundle_th.properties +5 -0
- package/src/sap/ui/rta/messagebundle_tr.properties +5 -0
- package/src/sap/ui/rta/messagebundle_uk.properties +5 -0
- package/src/sap/ui/rta/messagebundle_vi.properties +5 -0
- package/src/sap/ui/rta/messagebundle_zh_CN.properties +5 -0
- package/src/sap/ui/rta/messagebundle_zh_TW.properties +5 -0
- package/src/sap/ui/rta/plugin/AddXMLAtExtensionPoint.js +44 -44
- package/src/sap/ui/rta/plugin/BaseCreate.js +29 -29
- package/src/sap/ui/rta/plugin/Combine.js +9 -9
- package/src/sap/ui/rta/plugin/ControlVariant.js +21 -21
- package/src/sap/ui/rta/plugin/CreateContainer.js +6 -6
- package/src/sap/ui/rta/plugin/CutPaste.js +46 -46
- package/src/sap/ui/rta/plugin/DragDrop.js +2 -2
- package/src/sap/ui/rta/plugin/EasyAdd.js +4 -4
- package/src/sap/ui/rta/plugin/EasyRemove.js +5 -5
- package/src/sap/ui/rta/plugin/LocalReset.js +25 -25
- package/src/sap/ui/rta/plugin/Plugin.js +20 -20
- package/src/sap/ui/rta/plugin/RTAElementMover.js +42 -42
- package/src/sap/ui/rta/plugin/Remove.js +11 -11
- package/src/sap/ui/rta/plugin/Rename.js +7 -7
- package/src/sap/ui/rta/plugin/RenameHandler.js +17 -17
- package/src/sap/ui/rta/plugin/Resize.js +62 -62
- package/src/sap/ui/rta/plugin/Selection.js +14 -14
- package/src/sap/ui/rta/plugin/Settings.js +20 -20
- package/src/sap/ui/rta/plugin/Split.js +7 -7
- package/src/sap/ui/rta/plugin/Stretch.js +4 -4
- package/src/sap/ui/rta/plugin/additionalElements/ActionExtractor.js +94 -87
- package/src/sap/ui/rta/plugin/additionalElements/AddElementsDialog.js +18 -18
- package/src/sap/ui/rta/plugin/additionalElements/AdditionalElementsAnalyzer.js +98 -99
- package/src/sap/ui/rta/plugin/additionalElements/AdditionalElementsPlugin.js +144 -144
- package/src/sap/ui/rta/plugin/additionalElements/AdditionalElementsUtils.js +3 -4
- package/src/sap/ui/rta/plugin/additionalElements/CommandBuilder.js +67 -67
- package/src/sap/ui/rta/plugin/iframe/AddIFrame.js +38 -39
- package/src/sap/ui/rta/plugin/iframe/AddIFrameDialog.fragment.xml +1 -0
- package/src/sap/ui/rta/plugin/iframe/AddIFrameDialog.js +29 -29
- package/src/sap/ui/rta/plugin/iframe/AddIFrameDialogController.js +5 -5
- package/src/sap/ui/rta/plugin/iframe/urlCleaner.js +1 -1
- package/src/sap/ui/rta/service/Action.js +36 -37
- package/src/sap/ui/rta/service/ControllerExtension.js +4 -4
- package/src/sap/ui/rta/service/Outline.js +59 -59
- package/src/sap/ui/rta/service/Property.js +125 -125
- package/src/sap/ui/rta/service/Receiver.js +78 -77
- package/src/sap/ui/rta/service/Selection.js +6 -6
- package/src/sap/ui/rta/service/SupportTools.js +188 -37
- package/src/sap/ui/rta/service/index.js +1 -1
- package/src/sap/ui/rta/themes/base/FlexSupportExtension.less +14 -0
- package/src/sap/ui/rta/themes/base/library.source.less +2 -1
- package/src/sap/ui/rta/toolbar/Adaptation.js +81 -26
- package/src/sap/ui/rta/toolbar/AdaptationRenderer.js +1 -1
- package/src/sap/ui/rta/toolbar/Base.js +17 -15
- package/src/sap/ui/rta/toolbar/BaseRenderer.js +1 -2
- package/src/sap/ui/rta/toolbar/Fiori.js +8 -8
- package/src/sap/ui/rta/toolbar/FioriLike.js +1 -1
- package/src/sap/ui/rta/toolbar/OverflowToolbarButton.js +4 -4
- package/src/sap/ui/rta/toolbar/Personalization.js +2 -2
- package/src/sap/ui/rta/toolbar/Standalone.js +1 -1
- package/src/sap/ui/rta/toolbar/contextBased/ManageAdaptations.js +13 -6
- package/src/sap/ui/rta/toolbar/contextBased/ManageAdaptationsDialog.fragment.xml +2 -8
- package/src/sap/ui/rta/toolbar/contextBased/SaveAsAdaptation.js +2 -3
- package/src/sap/ui/rta/toolbar/contextBased/SaveAsAdaptationDialog.fragment.xml +0 -2
- package/src/sap/ui/rta/toolbar/translation/Translation.js +41 -41
- package/src/sap/ui/rta/toolbar/versioning/Versioning.js +9 -9
- package/src/sap/ui/rta/util/Animation.js +5 -5
- package/src/sap/ui/rta/util/BindingsExtractor.js +33 -33
- package/src/sap/ui/rta/util/PluginManager.js +25 -25
- package/src/sap/ui/rta/util/PopupManager.js +27 -27
- package/src/sap/ui/rta/util/ReloadManager.js +1 -1
- package/src/sap/ui/rta/util/ServiceEventBus.js +3 -4
- package/src/sap/ui/rta/util/StylesLoader.js +9 -9
- package/src/sap/ui/rta/util/UrlParser.js +19 -19
- package/src/sap/ui/rta/util/adaptationStarter.js +34 -31
- package/src/sap/ui/rta/util/changeVisualization/ChangeIndicator.js +23 -19
- package/src/sap/ui/rta/util/changeVisualization/ChangeIndicatorRegistry.js +61 -61
- package/src/sap/ui/rta/util/changeVisualization/ChangeVisualization.js +76 -63
- package/src/sap/ui/rta/util/changeVisualization/commands/CombineVisualization.js +6 -6
- package/src/sap/ui/rta/util/changeVisualization/commands/CreateContainerVisualization.js +1 -1
- package/src/sap/ui/rta/util/changeVisualization/commands/SplitVisualization.js +1 -1
- package/src/sap/ui/rta/util/hasStableId.js +2 -2
- package/src/sap/ui/rta/util/showMessageBox.js +4 -5
- package/src/sap/ui/rta/util/validateFlexEnabled.js +5 -5
- package/src/sap/ui/rta/util/validateStableIds.js +8 -8
- package/ui5.yaml +1 -1
|
@@ -23,7 +23,7 @@ sap.ui.define([
|
|
|
23
23
|
"sap/ui/fl/Cache",
|
|
24
24
|
"sap/ui/fl/Layer",
|
|
25
25
|
"sap/ui/thirdparty/sinon-4",
|
|
26
|
-
"sap/ui/fl/library" //we have to ensure to load fl, so that change handler gets registered
|
|
26
|
+
"sap/ui/fl/library" // we have to ensure to load fl, so that change handler gets registered
|
|
27
27
|
], function(
|
|
28
28
|
UIComponent,
|
|
29
29
|
ComponentContainer,
|
|
@@ -57,7 +57,7 @@ sap.ui.define([
|
|
|
57
57
|
* E.g. <code>elementActionTest.only("Remove");</code>
|
|
58
58
|
*
|
|
59
59
|
* @author SAP SE
|
|
60
|
-
* @version 1.
|
|
60
|
+
* @version 1.117.0
|
|
61
61
|
*
|
|
62
62
|
* @static
|
|
63
63
|
* @since 1.42
|
|
@@ -75,6 +75,7 @@ sap.ui.define([
|
|
|
75
75
|
* @param {string} mOptions.action.name - Name of the action - e.g. 'remove', 'move', 'rename'
|
|
76
76
|
* @param {string} [mOptions.action.controlId] - Id of the control the action is executed with - may be the parent of the control being 'touched'
|
|
77
77
|
* @param {function():sap.ui.core.Control} [mOptions.action.control] - Function returning the control instance on which the change is being applied
|
|
78
|
+
* @param {function():sap.ui.core.Control} [mOptions.action.designtimeActionControl] - Function returning the control where the designtime action is defined
|
|
78
79
|
* @param {string} [mOptions.action.label] - Check the result of "getLabel" function from the action in the control designtime metadata
|
|
79
80
|
* @param {function} mOptions.action.parameter - Function(oView) returning the parameter object of the action to be executed
|
|
80
81
|
* @param {function} [mOptions.before] - Function(assert) hook before test execution is started
|
|
@@ -109,21 +110,25 @@ sap.ui.define([
|
|
|
109
110
|
// Do QUnit tests
|
|
110
111
|
QUnit.module(sMsg, function() {
|
|
111
112
|
QUnit.test("When using the 'elementActionTest' function to test if your control is ready for UI adaptation at runtime", function(assert) {
|
|
112
|
-
assert.ok(mOptions.afterAction,
|
|
113
|
-
|
|
114
|
-
assert.ok(mOptions.
|
|
115
|
-
|
|
113
|
+
assert.ok(mOptions.afterAction,
|
|
114
|
+
"then you implement a function to check if your action has been successful: See the afterAction parameter.");
|
|
115
|
+
assert.ok(mOptions.afterUndo,
|
|
116
|
+
"then you implement a function to check if the undo has been successful: See the afterUndo parameter.");
|
|
117
|
+
assert.ok(mOptions.afterRedo,
|
|
118
|
+
"then you implement a function to check if the redo has been successful: See the afterRedo parameter.");
|
|
119
|
+
assert.ok(mOptions.xmlView,
|
|
120
|
+
"then you provide an XML view to test on: See the.xmlView parameter.");
|
|
116
121
|
|
|
117
122
|
var oXmlView = new DOMParser().parseFromString(mOptions.xmlView.viewContent, "application/xml").documentElement;
|
|
118
123
|
assert.ok(oXmlView.tagName.match("View$"), "then you use the sap.ui.core.mvc View tag as the first tag in your view");
|
|
119
124
|
|
|
120
125
|
assert.ok(mOptions.action, "then you provide an action: See the action parameter.");
|
|
121
126
|
assert.ok(mOptions.action.name, "then you provide an action name: See the action.name parameter.");
|
|
122
|
-
assert.ok(mOptions.action.controlId || mOptions.action.control,
|
|
127
|
+
assert.ok(mOptions.action.controlId || mOptions.action.control,
|
|
128
|
+
"then you provide the control or control's id to operate the action on: See the action.controlId.");
|
|
123
129
|
});
|
|
124
130
|
});
|
|
125
131
|
|
|
126
|
-
|
|
127
132
|
var UI_COMPONENT_NAME = "sap.ui.rta.control.enabling.comp";
|
|
128
133
|
var SYNC = false;
|
|
129
134
|
var ASYNC = true;
|
|
@@ -142,7 +147,8 @@ sap.ui.define([
|
|
|
142
147
|
mViewSettings.id = this.createId("view");
|
|
143
148
|
|
|
144
149
|
if (mViewSettings.async === undefined) {
|
|
145
|
-
// async = true will trigger the xml preprocessors on the xml view,
|
|
150
|
+
// async = true will trigger the xml preprocessors on the xml view,
|
|
151
|
+
// but if defined preprocessors need async, we will always trigger async
|
|
146
152
|
mViewSettings.async = this.getComponentData().async;
|
|
147
153
|
}
|
|
148
154
|
mViewSettings.definition = mViewSettings.viewContent;
|
|
@@ -188,107 +194,213 @@ sap.ui.define([
|
|
|
188
194
|
|
|
189
195
|
return aActions.reduce(function(oLastPromise, oAction) {
|
|
190
196
|
return oLastPromise
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
});
|
|
197
|
-
}.bind(this), Promise.resolve())
|
|
198
|
-
.then(function() {
|
|
199
|
-
return aCommands;
|
|
197
|
+
.then(buildCommand.bind(this, assert, oAction))
|
|
198
|
+
.then(function(oCommand) {
|
|
199
|
+
aCommands.push(oCommand);
|
|
200
|
+
// Execute commands one by one to allow change dependencies
|
|
201
|
+
return oCommand.execute();
|
|
200
202
|
});
|
|
203
|
+
}.bind(this), Promise.resolve())
|
|
204
|
+
.then(function() {
|
|
205
|
+
return aCommands;
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
function getControlFromActionMap(mAction) {
|
|
210
|
+
if (typeof mAction.control === "function") {
|
|
211
|
+
return mAction.control(this.oView);
|
|
212
|
+
}
|
|
213
|
+
return this.oView.byId(mAction.controlId);
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
function getDesigntimeActionControl(mAction) {
|
|
217
|
+
return mAction.designtimeActionControl
|
|
218
|
+
? mAction.designtimeActionControl(this.oView)
|
|
219
|
+
: undefined;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
function startDesigntime() {
|
|
223
|
+
this.oDesignTime = new DesignTime({
|
|
224
|
+
rootElements: [
|
|
225
|
+
this.oView
|
|
226
|
+
]
|
|
227
|
+
});
|
|
228
|
+
return new Promise(function(resolve) {
|
|
229
|
+
this.oDesignTime.attachEventOnce("synced", resolve);
|
|
230
|
+
}.bind(this));
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
function getParameterMap(vParameter) {
|
|
234
|
+
if (vParameter) {
|
|
235
|
+
return typeof vParameter === "function" ? vParameter(this.oView) : vParameter;
|
|
236
|
+
}
|
|
237
|
+
return {};
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
/**
|
|
241
|
+
* Checks if the provided action can be found in the calculated designtime metadata. According to the
|
|
242
|
+
* action.name sometimes the elementdesigntime metadata or the aggregationdesigntime metadata is required
|
|
243
|
+
* for the check.
|
|
244
|
+
*
|
|
245
|
+
* @param {object} assert - QUnit Assert
|
|
246
|
+
* @param {object} oAction - Test action parameters
|
|
247
|
+
* @param {sap.ui.core.Control} oControl - Targeting control
|
|
248
|
+
* @param {sap.ui.core.Control} oMovedElement - Moved element, only available with action.name move
|
|
249
|
+
* @param {object} oElementDesignTimeMetadata - Element designtime metadata
|
|
250
|
+
* @param {object} oAggregationDesignTimeMetadata - Aggregation designtime metadata
|
|
251
|
+
*/
|
|
252
|
+
function checkDesigntimeMetadata(
|
|
253
|
+
assert,
|
|
254
|
+
oAction,
|
|
255
|
+
oControl,
|
|
256
|
+
oMovedElement,
|
|
257
|
+
oElementDesignTimeMetadata,
|
|
258
|
+
oAggregationDesignTimeMetadata
|
|
259
|
+
) {
|
|
260
|
+
if (Array.isArray(oAction.name)) {
|
|
261
|
+
var oAddAction = oElementDesignTimeMetadata.getAction(
|
|
262
|
+
oAction.name[0],
|
|
263
|
+
oControl,
|
|
264
|
+
oAction.name[1]
|
|
265
|
+
);
|
|
266
|
+
assert.ok(oAddAction,
|
|
267
|
+
"the " + oAction[0] + " via " + oAction.name[1] + " action is available in the designtime"
|
|
268
|
+
);
|
|
269
|
+
} else if (oAction.name === "createContainer" || oAction.name === "addIFrame") {
|
|
270
|
+
assert.ok(oAggregationDesignTimeMetadata.getAction(oAction.name, oControl),
|
|
271
|
+
"the " + oAction.name + "action is available in the calculated designtime metadata during execution");
|
|
272
|
+
} else if (oAction.name === "move") {
|
|
273
|
+
assert.ok(oElementDesignTimeMetadata.getAction(oAction.name, oMovedElement),
|
|
274
|
+
"the " + oAction.name + "action is available in the calculated designtime metadata during execution");
|
|
275
|
+
} else {
|
|
276
|
+
assert.ok(oElementDesignTimeMetadata.getAction(oAction.name, oControl),
|
|
277
|
+
"the " + oAction.name + "action is available in the calculated designtime metadata during execution");
|
|
278
|
+
}
|
|
201
279
|
}
|
|
202
280
|
|
|
203
281
|
function buildCommand(assert, oAction) {
|
|
204
|
-
var
|
|
282
|
+
var oTargetControl;
|
|
283
|
+
var oControlWithDesigntimeActionDefinition;
|
|
205
284
|
var mParameter;
|
|
206
285
|
var oElementDesignTimeMetadata;
|
|
286
|
+
var oAggregationDesignTimeMetadata;
|
|
207
287
|
var sCommandName = oAction.name;
|
|
288
|
+
var oMovedElement;
|
|
208
289
|
return Promise.resolve()
|
|
209
|
-
.then(
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
290
|
+
.then(getControlFromActionMap.bind(this, oAction))
|
|
291
|
+
|
|
292
|
+
.then(function(oRetrievedControl) {
|
|
293
|
+
oTargetControl = oRetrievedControl;
|
|
294
|
+
mParameter = getParameterMap.call(this, oAction.parameter);
|
|
295
|
+
return getDesigntimeActionControl.call(this, oAction);
|
|
214
296
|
}.bind(this))
|
|
297
|
+
|
|
215
298
|
.then(function(oRetrievedControl) {
|
|
216
|
-
|
|
217
|
-
return
|
|
218
|
-
})
|
|
299
|
+
oControlWithDesigntimeActionDefinition = oRetrievedControl;
|
|
300
|
+
return startDesigntime.call(this);
|
|
301
|
+
}.bind(this))
|
|
302
|
+
|
|
303
|
+
// gather data for the designtime check and the command factory
|
|
219
304
|
.then(function() {
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
305
|
+
var oControlOverlay = OverlayRegistry.getOverlay(oControlWithDesigntimeActionDefinition || oTargetControl);
|
|
306
|
+
if (!oControlOverlay) {
|
|
307
|
+
throw new Error(
|
|
308
|
+
"The provided control " + oTargetControl.getId() + "does not have any overlay existing during test execution. "
|
|
309
|
+
+ "With this testsetup it is no possible to check for designtime action definition. In some cases it is not "
|
|
310
|
+
+ "possible to identify the control with the designtime metadata automatically just by the given 'action.control'. "
|
|
311
|
+
+ "In this case please provide the 'action.designtimeActionControl' property with a valid control containing "
|
|
312
|
+
+ "the designtime metadata definition for this check."
|
|
313
|
+
);
|
|
314
|
+
}
|
|
315
|
+
oElementDesignTimeMetadata = oControlOverlay.getDesignTimeMetadata();
|
|
316
|
+
var oResponsibleElement = oElementDesignTimeMetadata.getResponsibleElement(oTargetControl);
|
|
317
|
+
var oAggregationOverlay;
|
|
318
|
+
if (mOptions.label) {
|
|
319
|
+
assert.strictEqual(
|
|
320
|
+
oElementDesignTimeMetadata.getLabel(oTargetControl),
|
|
321
|
+
mOptions.label,
|
|
322
|
+
"then the control label is correct"
|
|
323
|
+
);
|
|
324
|
+
}
|
|
325
|
+
if (oAction.name === "move") {
|
|
326
|
+
oMovedElement = mParameter.movedElements[0].element || mParameter.movedElements[0].id;
|
|
327
|
+
var oElementOverlay = OverlayRegistry.getOverlay(oMovedElement);
|
|
328
|
+
var oRelevantContainer = oElementOverlay.getRelevantContainer();
|
|
329
|
+
oTargetControl = oRelevantContainer;
|
|
330
|
+
oElementDesignTimeMetadata = oElementOverlay.getParentAggregationOverlay().getDesignTimeMetadata();
|
|
331
|
+
} else if (Array.isArray(oAction.name)) {
|
|
332
|
+
var aAddActions = oElementDesignTimeMetadata.getActionDataFromAggregations(
|
|
333
|
+
oAction.name[0],
|
|
334
|
+
oTargetControl,
|
|
335
|
+
undefined,
|
|
336
|
+
oAction.name[1]
|
|
337
|
+
);
|
|
338
|
+
oAggregationOverlay = oControlOverlay.getAggregationOverlay(aAddActions[0].aggregation);
|
|
339
|
+
oElementDesignTimeMetadata = oAggregationOverlay.getDesignTimeMetadata();
|
|
340
|
+
sCommandName = "addDelegateProperty";
|
|
341
|
+
} else if (oAction.name === "createContainer" || oAction.name === "addIFrame") {
|
|
342
|
+
var aCreateContainerActions = oElementDesignTimeMetadata.getActionDataFromAggregations(
|
|
343
|
+
oAction.name,
|
|
344
|
+
oControlWithDesigntimeActionDefinition || oTargetControl
|
|
345
|
+
);
|
|
346
|
+
oAggregationOverlay = oControlOverlay.getAggregationOverlay(aCreateContainerActions[0].aggregation);
|
|
347
|
+
oAggregationDesignTimeMetadata = oAggregationOverlay.getDesignTimeMetadata();
|
|
348
|
+
} else if (oResponsibleElement) {
|
|
349
|
+
if (oAction.name === "reveal") {
|
|
350
|
+
oTargetControl = oAction.revealedElement(this.oView);
|
|
351
|
+
oControlOverlay = OverlayRegistry.getOverlay(oAction.revealedElement(this.oView));
|
|
352
|
+
oElementDesignTimeMetadata = oControlOverlay.getDesignTimeMetadata();
|
|
353
|
+
if (oAction.label) {
|
|
354
|
+
var oRevealAction = oElementDesignTimeMetadata.getAction("reveal");
|
|
355
|
+
assert.strictEqual(oRevealAction.getLabel(oTargetControl), oAction.label,
|
|
356
|
+
"then the control label is correct");
|
|
357
|
+
}
|
|
223
358
|
} else {
|
|
224
|
-
|
|
359
|
+
oTargetControl = oResponsibleElement;
|
|
360
|
+
oControlOverlay = OverlayRegistry.getOverlay(oTargetControl);
|
|
361
|
+
oElementDesignTimeMetadata = oControlOverlay.getDesignTimeMetadata();
|
|
362
|
+
oTargetControl.getMetadata().loadDesignTime(oTargetControl);
|
|
225
363
|
}
|
|
226
|
-
} else {
|
|
227
|
-
mParameter = {};
|
|
228
364
|
}
|
|
365
|
+
}.bind(this))
|
|
229
366
|
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
var oControlOverlay = OverlayRegistry.getOverlay(oControl);
|
|
243
|
-
oElementDesignTimeMetadata = oControlOverlay.getDesignTimeMetadata();
|
|
244
|
-
var oResponsibleElement = oElementDesignTimeMetadata.getAction("getResponsibleElement", oControl);
|
|
245
|
-
var oAggregationOverlay;
|
|
246
|
-
if (mOptions.label) {
|
|
247
|
-
assert.strictEqual(oElementDesignTimeMetadata.getLabel(oControl), mOptions.label, "then the control label is correct");
|
|
248
|
-
}
|
|
249
|
-
if (oAction.name === "move") {
|
|
250
|
-
var oElementOverlay = OverlayRegistry.getOverlay(mParameter.movedElements[0].element || mParameter.movedElements[0].id);
|
|
251
|
-
var oRelevantContainer = oElementOverlay.getRelevantContainer();
|
|
252
|
-
oControl = oRelevantContainer;
|
|
253
|
-
oElementDesignTimeMetadata = oElementOverlay.getParentAggregationOverlay().getDesignTimeMetadata();
|
|
254
|
-
} else if (Array.isArray(oAction.name)) {
|
|
255
|
-
var aAddActions = oElementDesignTimeMetadata.getActionDataFromAggregations(oAction.name[0], oControl, undefined, oAction.name[1]);
|
|
256
|
-
assert.equal(aAddActions.length, 1, "there should be only one aggregation with the possibility to do an add " + oAction.name[1] + " action");
|
|
257
|
-
oAggregationOverlay = oControlOverlay.getAggregationOverlay(aAddActions[0].aggregation);
|
|
258
|
-
oElementDesignTimeMetadata = oAggregationOverlay.getDesignTimeMetadata();
|
|
259
|
-
sCommandName = "addDelegateProperty";
|
|
260
|
-
} else if (oResponsibleElement) {
|
|
261
|
-
if (oAction.name === "reveal") {
|
|
262
|
-
oControl = oAction.revealedElement(this.oView);
|
|
263
|
-
oControlOverlay = OverlayRegistry.getOverlay(oAction.revealedElement(this.oView));
|
|
264
|
-
oElementDesignTimeMetadata = oControlOverlay.getDesignTimeMetadata();
|
|
265
|
-
if (oAction.label) {
|
|
266
|
-
var oRevealAction = oElementDesignTimeMetadata.getAction("reveal");
|
|
267
|
-
assert.strictEqual(oRevealAction.getLabel(oControl), oAction.label, "then the control label is correct");
|
|
268
|
-
}
|
|
269
|
-
} else {
|
|
270
|
-
oControl = oResponsibleElement;
|
|
271
|
-
oControlOverlay = OverlayRegistry.getOverlay(oControl);
|
|
272
|
-
oElementDesignTimeMetadata = oControlOverlay.getDesignTimeMetadata();
|
|
273
|
-
resolve(oControl.getMetadata().loadDesignTime(oControl));
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
resolve();
|
|
277
|
-
}.bind(this));
|
|
278
|
-
}.bind(this));
|
|
367
|
+
.then(function() {
|
|
368
|
+
// additional check if the required action definition exists
|
|
369
|
+
// into the responsible control designtime metadata
|
|
370
|
+
return checkDesigntimeMetadata.call(
|
|
371
|
+
this,
|
|
372
|
+
assert,
|
|
373
|
+
oAction,
|
|
374
|
+
oTargetControl,
|
|
375
|
+
oMovedElement,
|
|
376
|
+
oElementDesignTimeMetadata,
|
|
377
|
+
oAggregationDesignTimeMetadata
|
|
378
|
+
);
|
|
279
379
|
}.bind(this))
|
|
380
|
+
|
|
280
381
|
.then(function() {
|
|
281
382
|
var oCommandFactory = new CommandFactory({
|
|
282
383
|
flexSettings: {
|
|
283
384
|
layer: mOptions.layer || Layer.CUSTOMER
|
|
284
385
|
}
|
|
285
386
|
});
|
|
286
|
-
return oCommandFactory.getCommandFor(
|
|
387
|
+
return oCommandFactory.getCommandFor(
|
|
388
|
+
oTargetControl,
|
|
389
|
+
sCommandName,
|
|
390
|
+
mParameter,
|
|
391
|
+
oElementDesignTimeMetadata
|
|
392
|
+
);
|
|
287
393
|
})
|
|
394
|
+
|
|
288
395
|
.then(function(oCommand) {
|
|
289
|
-
assert.ok(
|
|
396
|
+
assert.ok(
|
|
397
|
+
oCommand,
|
|
398
|
+
"then the registration for action to change type, the registration for change and " +
|
|
399
|
+
"control type to change handler is available and " + mOptions.action.name + " is a valid action"
|
|
400
|
+
);
|
|
290
401
|
return oCommand;
|
|
291
402
|
})
|
|
403
|
+
|
|
292
404
|
.catch(function(oMessage) {
|
|
293
405
|
throw new Error(oMessage);
|
|
294
406
|
});
|
|
@@ -335,7 +447,11 @@ sap.ui.define([
|
|
|
335
447
|
changes: aChanges
|
|
336
448
|
}).then(function(aCondensedChanges) {
|
|
337
449
|
if (mOptions.changesAfterCondensing !== undefined) {
|
|
338
|
-
assert.equal(
|
|
450
|
+
assert.equal(
|
|
451
|
+
aCondensedChanges.length,
|
|
452
|
+
mOptions.changesAfterCondensing,
|
|
453
|
+
"after condensing the amount of changes is correct"
|
|
454
|
+
);
|
|
339
455
|
}
|
|
340
456
|
var aChangeIds = aCondensedChanges.map(function(oChange) {return oChange.getId();});
|
|
341
457
|
aCommands.forEach(function(oCommand) {
|
|
@@ -373,11 +489,9 @@ sap.ui.define([
|
|
|
373
489
|
sandbox.stub(oChangeVisualization, "_collectChanges").resolves(aChanges);
|
|
374
490
|
|
|
375
491
|
return oChangeVisualization._updateChangeRegistry()
|
|
376
|
-
|
|
377
492
|
.then(function() {
|
|
378
493
|
return oChangeVisualization._selectChangeCategory(ChangeCategories.ALL);
|
|
379
494
|
})
|
|
380
|
-
|
|
381
495
|
.then(function() {
|
|
382
496
|
var oChangeIndicatorRegistry = oChangeVisualization._oChangeIndicatorRegistry;
|
|
383
497
|
var oData = oChangeIndicatorRegistry.getSelectorsWithRegisteredChanges();
|
|
@@ -396,18 +510,22 @@ sap.ui.define([
|
|
|
396
510
|
if (mVisualizationInfo) {
|
|
397
511
|
if (mVisualizationInfo.affectedControls) {
|
|
398
512
|
var aAffectedControlIds = mapIds(mVisualizationInfo.affectedControls);
|
|
399
|
-
assert.deepEqual(aAffectedControlIds, oRegisteredChange.visualizationInfo.affectedElementIds,
|
|
513
|
+
assert.deepEqual(aAffectedControlIds, oRegisteredChange.visualizationInfo.affectedElementIds,
|
|
514
|
+
"then the affected control ids are correct");
|
|
400
515
|
}
|
|
401
516
|
if (mVisualizationInfo.dependentControls) {
|
|
402
517
|
var aDependentControlIds = mapIds(mVisualizationInfo.dependentControls);
|
|
403
|
-
assert.deepEqual(aDependentControlIds, oRegisteredChange.visualizationInfo.dependentElementIds,
|
|
518
|
+
assert.deepEqual(aDependentControlIds, oRegisteredChange.visualizationInfo.dependentElementIds,
|
|
519
|
+
"then the dependent control ids are correct");
|
|
404
520
|
}
|
|
405
521
|
if (mVisualizationInfo.displayControls) {
|
|
406
522
|
var aDisplayControlIds = mapIds(mVisualizationInfo.displayControls);
|
|
407
|
-
assert.deepEqual(aDisplayControlIds, oRegisteredChange.visualizationInfo.displayElementIds,
|
|
523
|
+
assert.deepEqual(aDisplayControlIds, oRegisteredChange.visualizationInfo.displayElementIds,
|
|
524
|
+
"then the display control ids are correct");
|
|
408
525
|
}
|
|
409
526
|
if (mVisualizationInfo.descriptionPayload) {
|
|
410
|
-
assert.deepEqual(mVisualizationInfo.descriptionPayload, oRegisteredChange.visualizationInfo.descriptionPayload,
|
|
527
|
+
assert.deepEqual(mVisualizationInfo.descriptionPayload, oRegisteredChange.visualizationInfo.descriptionPayload,
|
|
528
|
+
"then the descriptionPayload is correct");
|
|
411
529
|
}
|
|
412
530
|
}
|
|
413
531
|
});
|
|
@@ -439,7 +557,7 @@ sap.ui.define([
|
|
|
439
557
|
sandbox.stub(ChangePersistence.prototype, "getCacheKey").resolves("etag-123");
|
|
440
558
|
|
|
441
559
|
return createViewInComponent.call(this, SYNC)
|
|
442
|
-
|
|
560
|
+
.then(buildCommandsAndApplyChangesOnXML.bind(this, assert, aChanges));
|
|
443
561
|
}
|
|
444
562
|
|
|
445
563
|
function buildCommandsAndApplyChangesOnXML(assert, aChanges) {
|
|
@@ -451,21 +569,21 @@ sap.ui.define([
|
|
|
451
569
|
|
|
452
570
|
return aActions.reduce(function(oLastPromise, oAction) {
|
|
453
571
|
return oLastPromise
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
}.bind(this));
|
|
465
|
-
}.bind(this), Promise.resolve())
|
|
466
|
-
.then(function() {
|
|
467
|
-
this.aCommands = aCommands;
|
|
572
|
+
.then(buildCommand.bind(this, assert, oAction))
|
|
573
|
+
.then(function(oCommand) {
|
|
574
|
+
aCommands.push(oCommand);
|
|
575
|
+
aChanges.push(oCommand.getPreparedChange());
|
|
576
|
+
|
|
577
|
+
// Destroy and recreate component and view to get the changes applied
|
|
578
|
+
// Wait for each change to be applied individually to allow dependencies
|
|
579
|
+
// between changes of different actions
|
|
580
|
+
this.oUiComponentContainer.destroy();
|
|
581
|
+
return createViewInComponent.call(this, ASYNC);
|
|
468
582
|
}.bind(this));
|
|
583
|
+
}.bind(this), Promise.resolve())
|
|
584
|
+
.then(function() {
|
|
585
|
+
this.aCommands = aCommands;
|
|
586
|
+
}.bind(this));
|
|
469
587
|
}
|
|
470
588
|
|
|
471
589
|
// XML View checks
|
|
@@ -567,16 +685,16 @@ sap.ui.define([
|
|
|
567
685
|
return mOptions.after.call(this.hookContext, assert);
|
|
568
686
|
},
|
|
569
687
|
beforeEach: function(assert) {
|
|
570
|
-
//no LREP response needed
|
|
688
|
+
// no LREP response needed
|
|
571
689
|
sandbox.stub(ChangePersistence.prototype, "getChangesForComponent").returns(Promise.resolve([]));
|
|
572
|
-
sandbox.stub(ChangePersistence.prototype, "getCacheKey").returns(Cache.NOTAG); //no cache key => no xml view processing
|
|
690
|
+
sandbox.stub(ChangePersistence.prototype, "getCacheKey").returns(Cache.NOTAG); // no cache key => no xml view processing
|
|
573
691
|
sandbox.stub(Settings, "getInstance").returns(Promise.resolve({_oSettings: {}}));
|
|
574
692
|
|
|
575
693
|
return createViewInComponent.call(this, SYNC)
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
694
|
+
.then(buildAndExecuteCommands.bind(this, assert))
|
|
695
|
+
.then(function(aCommands) {
|
|
696
|
+
this.aCommands = aCommands;
|
|
697
|
+
}.bind(this));
|
|
580
698
|
},
|
|
581
699
|
afterEach: function() {
|
|
582
700
|
this.oDesignTime.destroy();
|
|
@@ -23,14 +23,14 @@ function() {
|
|
|
23
23
|
* @namespace
|
|
24
24
|
* @alias sap.ui.rta
|
|
25
25
|
* @author SAP SE
|
|
26
|
-
* @version 1.
|
|
26
|
+
* @version 1.117.0
|
|
27
27
|
* @since 1.50
|
|
28
28
|
* @private
|
|
29
29
|
* @experimental This class is experimental and provides only limited functionality. Also the API might be changed in future.
|
|
30
30
|
*/
|
|
31
31
|
var thisLib = sap.ui.getCore().initLibrary({
|
|
32
32
|
name: "sap.ui.rta",
|
|
33
|
-
version: "1.
|
|
33
|
+
version: "1.117.0",
|
|
34
34
|
dependencies: ["sap.ui.core", "sap.m", "sap.ui.fl", "sap.ui.dt"],
|
|
35
35
|
types: [],
|
|
36
36
|
interfaces: [],
|
|
@@ -568,8 +568,18 @@ SAC_DIALOG_HEADER=Save as New Adaptation
|
|
|
568
568
|
DAC_DIALOG_HEADER=Delete Adaptation
|
|
569
569
|
#XTIT: Context-Based Adaptation Delete Dialog description
|
|
570
570
|
DAC_DIALOG_DESCRIPTION=Do you really want to delete this adaptation?
|
|
571
|
-
#
|
|
571
|
+
#XMSG: Context-Based Adaptation dialog to delete but unsaved changes exist description
|
|
572
572
|
DAC_DATA_LOSS_DIALOG_DESCRIPTION=You have unsaved UI changes. Deleting this adaptation will also delete the UI changes. Do you really want to delete this adaptation?
|
|
573
|
+
#XTIT: Context-Based Adaptation Migration Dialog title
|
|
574
|
+
DAC_DIALOG_MIGRATION_HEADER=Migrate Views
|
|
575
|
+
#XMSG: Context-Based Adaptation Migration Dialog description
|
|
576
|
+
DAC_DIALOG_MIGRATION_DESCRIPTION=We noticed that you've already assigned roles to views in this application. If you want to create an adaptation, you need to migrate these views to adaptations.\n After the migration, every view that was assigned to a role will be included in an adaptation.
|
|
577
|
+
#XMSG: Context-Based Adaptation Migration Dialog description
|
|
578
|
+
DAC_DIALOG_MIGRATION_DIRTY_DESCRIPTION=We noticed that you've already assigned roles to views in this application. If you want to create an adaptation, you need to migrate these views to adaptations.\n After the migration, every view that was assigned to a role will be included in an adaptation.\n\n You have unsaved UI changes. These are saved before migration.
|
|
579
|
+
#XMSG: Context-Based Adaptation Migration Successful Dialog description
|
|
580
|
+
DAC_DIALOG_MIGRATION_SUCCESSFULL_DESCRIPTION=Views have been successfully migrated.\n You can now switch to the created adaptations and verify them.
|
|
581
|
+
#XMSG: Context-Based Adaptation Migration Error Dialog description
|
|
582
|
+
DAC_DIALOG_MIGRATION_ERROR_DESCRIPTION=An Error occurred during the migration. Please try again later or contact your administrator.
|
|
573
583
|
#XTITT: Context-Based Adaptation Manage Dialog title
|
|
574
584
|
MANAGE_ADAPTATIONS_DIALOG_HEADER=Manage Adaptations
|
|
575
585
|
#XTIT: Text for Manage Adaptations Button in RTA toolbar
|
|
@@ -288,6 +288,11 @@ SAC_DIALOG_HEADER=\u062D\u0641\u0638 \u0643\u062A\u0647\u064A\u0626\u0629 \u062C
|
|
|
288
288
|
DAC_DIALOG_HEADER=\u062D\u0630\u0641 \u0627\u0644\u062A\u0647\u064A\u0626\u0629
|
|
289
289
|
DAC_DIALOG_DESCRIPTION=\u0647\u0644 \u062A\u0631\u064A\u062F \u062D\u0630\u0641 \u0647\u0630\u0647 \u0627\u0644\u062A\u0647\u064A\u0626\u0629 \u0628\u0627\u0644\u0641\u0639\u0644\u061F
|
|
290
290
|
DAC_DATA_LOSS_DIALOG_DESCRIPTION=\u0644\u062F\u064A\u0643 \u062A\u063A\u064A\u064A\u0631\u0627\u062A \u063A\u064A\u0631 \u0645\u062D\u0641\u0648\u0638\u0629 \u0641\u064A \u0648\u0627\u062C\u0647\u0629 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645. \u0633\u064A\u0624\u062F\u064A \u062D\u0630\u0641 \u0647\u0630\u0647 \u0627\u0644\u062A\u0647\u064A\u0626\u0629 \u0623\u064A\u0636\u064B\u0627 \u0625\u0644\u0649 \u062D\u0630\u0641 \u062A\u063A\u064A\u064A\u0631\u0627\u062A \u0648\u0627\u062C\u0647\u0629 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645. \u0647\u0644 \u062A\u0631\u064A\u062F \u062D\u0630\u0641 \u0647\u0630\u0647 \u0627\u0644\u062A\u0647\u064A\u0626\u0629 \u0628\u0627\u0644\u062A\u0623\u0643\u064A\u062F\u061F
|
|
291
|
+
DAC_DIALOG_MIGRATION_HEADER=\u062A\u0631\u062D\u064A\u0644 \u0637\u0631\u0642 \u0627\u0644\u0639\u0631\u0636
|
|
292
|
+
DAC_DIALOG_MIGRATION_DESCRIPTION=\u0644\u0642\u062F \u0644\u0627\u062D\u0638\u0646\u0627 \u0623\u0646\u0643 \u0642\u0645\u062A \u0628\u0627\u0644\u0641\u0639\u0644 \u0628\u062A\u0639\u064A\u064A\u0646 \u0623\u062F\u0648\u0627\u0631 \u0644\u0637\u0631\u0642 \u0627\u0644\u0639\u0631\u0636 \u0641\u064A \u0647\u0630\u0627 \u0627\u0644\u062A\u0637\u0628\u064A\u0642. \u0625\u0630\u0627 \u0643\u0646\u062A \u062A\u0631\u063A\u0628 \u0641\u064A \u0625\u0646\u0634\u0627\u0621 \u062A\u0647\u064A\u0626\u0629\u060C \u0641\u0623\u0646\u062A \u0628\u062D\u0627\u062C\u0629 \u0625\u0644\u0649 \u062A\u0631\u062D\u064A\u0644 \u0637\u0631\u0642 \u0627\u0644\u0639\u0631\u0636 \u0647\u0630\u0647 \u0625\u0644\u0649 \u0639\u0645\u0644\u064A\u0627\u062A \u0627\u0644\u062A\u0647\u064A\u0626\u0629.\n\u0628\u0639\u062F \u0627\u0644\u062A\u0631\u062D\u064A\u0644\u060C \u0633\u064A\u062A\u0645 \u062A\u0639\u064A\u064A\u0646 \u0643\u0644 \u0637\u0631\u064A\u0642\u0629 \u0639\u0631\u0636 \u062A\u0645 \u062A\u0639\u064A\u064A\u0646\u0647\u0627 \u0644\u062F\u0648\u0631 \u0641\u064A \u0627\u0644\u062A\u0647\u064A\u0626\u0629.
|
|
293
|
+
DAC_DIALOG_MIGRATION_DIRTY_DESCRIPTION=\u0644\u0642\u062F \u0644\u0627\u062D\u0638\u0646\u0627 \u0623\u0646\u0643 \u0642\u0645\u062A \u0628\u0627\u0644\u0641\u0639\u0644 \u0628\u062A\u0639\u064A\u064A\u0646 \u0623\u062F\u0648\u0627\u0631 \u0644\u0637\u0631\u0642 \u0627\u0644\u0639\u0631\u0636 \u0641\u064A \u0647\u0630\u0627 \u0627\u0644\u062A\u0637\u0628\u064A\u0642. \u0625\u0630\u0627 \u0643\u0646\u062A \u062A\u0631\u063A\u0628 \u0641\u064A \u0625\u0646\u0634\u0627\u0621 \u062A\u0647\u064A\u0626\u0629\u060C \u0641\u0623\u0646\u062A \u0628\u062D\u0627\u062C\u0629 \u0625\u0644\u0649 \u062A\u0631\u062D\u064A\u0644 \u0637\u0631\u0642 \u0627\u0644\u0639\u0631\u0636 \u0647\u0630\u0647 \u0625\u0644\u0649 \u0639\u0645\u0644\u064A\u0627\u062A \u0627\u0644\u062A\u0647\u064A\u0626\u0629.\n\u0628\u0639\u062F \u0627\u0644\u062A\u0631\u062D\u064A\u0644\u060C \u0633\u064A\u062A\u0645 \u062A\u0639\u064A\u064A\u0646 \u0643\u0644 \u0637\u0631\u064A\u0642\u0629 \u0639\u0631\u0636 \u062A\u0645 \u062A\u0639\u064A\u064A\u0646\u0647\u0627 \u0644\u062F\u0648\u0631 \u0641\u064A \u0627\u0644\u062A\u0647\u064A\u0626\u0629.\n\n\u0644\u062F\u064A\u0643 \u062A\u063A\u064A\u064A\u0631\u0627\u062A \u063A\u064A\u0631 \u0645\u062D\u0641\u0648\u0638\u0629 \u0641\u064A \u0648\u0627\u062C\u0647\u0629 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645. \u0633\u064A\u062A\u0645 \u062A\u062C\u0627\u0647\u0644 \u0647\u0630\u0647 \u0642\u0628\u0644 \u0627\u0644\u062A\u0631\u062D\u064A\u0644.
|
|
294
|
+
DAC_DIALOG_MIGRATION_SUCCESSFULL_DESCRIPTION=\u062A\u0645 \u062A\u0631\u062D\u064A\u0644 \u0637\u0631\u0642 \u0627\u0644\u0639\u0631\u0636 \u0628\u0646\u062C\u0627\u062D.\n\u064A\u0645\u0643\u0646\u0643 \u0627\u0644\u0622\u0646 \u0627\u0644\u062A\u0628\u062F\u064A\u0644 \u0625\u0644\u0649 \u0639\u0645\u0644\u064A\u0627\u062A \u0627\u0644\u062A\u0647\u064A\u0626\u0629 \u0627\u0644\u062A\u064A \u062A\u0645 \u0625\u0646\u0634\u0627\u0624\u0647\u0627 \u0648\u0627\u0644\u062A\u062D\u0642\u0642 \u0645\u0646\u0647\u0627.
|
|
295
|
+
DAC_DIALOG_MIGRATION_ERROR_DESCRIPTION=\u062D\u062F\u062B \u062E\u0637\u0623 \u0623\u062B\u0646\u0627\u0621 \u0627\u0644\u062A\u0631\u062D\u064A\u0644. \u0627\u0644\u0631\u062C\u0627\u0621 \u0625\u0639\u0627\u062F\u0629 \u0627\u0644\u0645\u062D\u0627\u0648\u0644\u0629 \u0644\u0627\u062D\u0642\u064B\u0627 \u0623\u0648 \u0627\u0644\u0627\u062A\u0635\u0627\u0644 \u0628\u0627\u0644\u0645\u0633\u0624\u0648\u0644 \u0644\u062F\u064A\u0643.
|
|
291
296
|
MANAGE_ADAPTATIONS_DIALOG_HEADER=\u0625\u062F\u0627\u0631\u0629 \u0639\u0645\u0644\u064A\u0627\u062A \u0627\u0644\u062A\u0647\u064A\u0626\u0629
|
|
292
297
|
BTN_MANAGE_APP_CTX=\u0625\u062F\u0627\u0631\u0629 \u0639\u0645\u0644\u064A\u0627\u062A \u0627\u0644\u062A\u0647\u064A\u0626\u0629
|
|
293
298
|
TXT_MANAGE_APP_CTX=\u0639\u0631\u0636 \u0623\u0648 \u062A\u062D\u0631\u064A\u0631 \u0623\u0648 \u062D\u0630\u0641 \u0639\u0645\u0644\u064A\u0627\u062A \u0627\u0644\u062A\u0647\u064A\u0626\u0629
|
|
@@ -288,6 +288,11 @@ SAC_DIALOG_HEADER=\u0417\u0430\u043F\u0430\u0437\u0432\u0430\u043D\u0435 \u043A\
|
|
|
288
288
|
DAC_DIALOG_HEADER=\u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043D\u0435 \u043D\u0430 \u0430\u0434\u0430\u043F\u0442\u0438\u0440\u0430\u043D\u0435\u0442\u043E
|
|
289
289
|
DAC_DIALOG_DESCRIPTION=\u041D\u0430\u0438\u0441\u0442\u0438\u043D\u0430 \u043B\u0438 \u0436\u0435\u043B\u0430\u0435\u0442\u0435 \u0434\u0430 \u0438\u0437\u0442\u0440\u0438\u0435\u0442\u0435 \u0442\u043E\u0432\u0430 \u0430\u0434\u0430\u043F\u0442\u0438\u0440\u0430\u043D\u0435?
|
|
290
290
|
DAC_DATA_LOSS_DIALOG_DESCRIPTION=\u0418\u043C\u0430 \u043D\u0435\u0437\u0430\u043F\u0430\u0437\u0435\u043D\u0438 \u043F\u0440\u043E\u043C\u0435\u043D\u0438 \u043F\u043E UI. \u0410\u043A\u043E \u0438\u0437\u0442\u0440\u0438\u0435\u0442\u0435 \u0442\u043E\u0432\u0430 \u0430\u0434\u0430\u043F\u0442\u0438\u0440\u0430\u043D\u0435, \u043F\u0440\u043E\u043C\u0435\u043D\u0438\u0442\u0435 \u043F\u043E UI \u0441\u044A\u0449\u043E \u0449\u0435 \u0431\u044A\u0434\u0430\u0442 \u0438\u0437\u0442\u0440\u0438\u0442\u0438. \u041D\u0430\u0438\u0441\u0442\u0438\u043D\u0430 \u043B\u0438 \u0438\u0441\u043A\u0430\u0442\u0435 \u0434\u0430 \u0438\u0437\u0442\u0440\u0438\u0435\u0442\u0435 \u0430\u0434\u0430\u043F\u0442\u0438\u0440\u0430\u043D\u0435\u0442\u043E?
|
|
291
|
+
DAC_DIALOG_MIGRATION_HEADER=\u041C\u0438\u0433\u0440\u0438\u0440\u0430\u043D\u0435 \u043D\u0430 \u0438\u0437\u0433\u043B\u0435\u0434\u0438
|
|
292
|
+
DAC_DIALOG_MIGRATION_DESCRIPTION=\u0417\u0430\u0431\u0435\u043B\u044F\u0437\u0430\u0445\u043C\u0435, \u0447\u0435 \u0432\u0435\u0447\u0435 \u0441\u0442\u0435 \u043F\u0440\u0438\u0441\u044A\u0435\u0434\u0438\u043D\u0438\u043B\u0438 \u0440\u043E\u043B\u0438 \u043A\u044A\u043C \u0438\u0437\u0433\u043B\u0435\u0434\u0438\u0442\u0435 \u0432 \u0442\u043E\u0432\u0430 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435. \u0410\u043A\u043E \u0438\u0441\u043A\u0430\u0442\u0435 \u0434\u0430 \u0441\u044A\u0437\u0434\u0430\u0434\u0435\u0442\u0435 \u0430\u0434\u0430\u043F\u0442\u0430\u0446\u0438\u044F, \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u043C\u0438\u0433\u0440\u0438\u0440\u0430\u0442\u0435 \u0442\u0435\u0437\u0438 \u0438\u0437\u0433\u043B\u0435\u0434\u0438 \u043A\u044A\u043C \u0430\u0434\u0430\u043F\u0442\u0430\u0446\u0438\u0438\u0442\u0435.\n\u0421\u043B\u0435\u0434 \u043C\u0438\u0433\u0440\u0438\u0440\u0430\u043D\u0435\u0442\u043E, \u0432\u0441\u0435\u043A\u0438 \u0438\u0437\u0433\u043B\u0435\u0434, \u043F\u0440\u0438\u0441\u044A\u0435\u0434\u0438\u043D\u0435\u043D \u043A\u044A\u043C \u0440\u043E\u043B\u044F, \u0449\u0435 \u0431\u044A\u0434\u0435 \u0432\u043A\u043B\u044E\u0447\u0435\u043D \u0432 \u0430\u0434\u0430\u043F\u0442\u0430\u0446\u0438\u044F.
|
|
293
|
+
DAC_DIALOG_MIGRATION_DIRTY_DESCRIPTION=\u0417\u0430\u0431\u0435\u043B\u044F\u0437\u0430\u0445\u043C\u0435, \u0447\u0435 \u0432\u0435\u0447\u0435 \u0441\u0442\u0435 \u043F\u0440\u0438\u0441\u044A\u0435\u0434\u0438\u043D\u0438\u043B\u0438 \u0440\u043E\u043B\u0438 \u043A\u044A\u043C \u0438\u0437\u0433\u043B\u0435\u0434\u0438\u0442\u0435 \u0432 \u0442\u043E\u0432\u0430 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435. \u0410\u043A\u043E \u0438\u0441\u043A\u0430\u0442\u0435 \u0434\u0430 \u0441\u044A\u0437\u0434\u0430\u0434\u0435\u0442\u0435 \u0430\u0434\u0430\u043F\u0442\u0430\u0446\u0438\u044F, \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u043C\u0438\u0433\u0440\u0438\u0440\u0430\u0442\u0435 \u0442\u0435\u0437\u0438 \u0438\u0437\u0433\u043B\u0435\u0434\u0438 \u043A\u044A\u043C \u0430\u0434\u0430\u043F\u0442\u0430\u0446\u0438\u0438\u0442\u0435.\n\u0421\u043B\u0435\u0434 \u043C\u0438\u0433\u0440\u0438\u0440\u0430\u043D\u0435\u0442\u043E, \u0432\u0441\u0435\u043A\u0438 \u0438\u0437\u0433\u043B\u0435\u0434, \u043F\u0440\u0438\u0441\u044A\u0435\u0434\u0438\u043D\u0435\u043D \u043A\u044A\u043C \u0440\u043E\u043B\u044F, \u0449\u0435 \u0431\u044A\u0434\u0435 \u0432\u043A\u043B\u044E\u0447\u0435\u043D \u0432 \u0430\u0434\u0430\u043F\u0442\u0430\u0446\u0438\u044F.\n\n\u041E\u0442\u043C\u0435\u043D\u0438\u043B\u0438 \u0441\u0442\u0435 \u0437\u0430\u043F\u0430\u0437\u0432\u0430\u043D\u0435\u0442\u043E \u043D\u0430 \u043F\u0440\u043E\u043C\u0435\u043D\u0438\u0442\u0435 \u043D\u0430 \u043F\u043E\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043B\u0441\u043A\u0438\u044F \u0438\u043D\u0442\u0435\u0440\u0444\u0435\u0439\u0441. \u0422\u043E\u0432\u0430 \u0449\u0435 \u0431\u044A\u0434\u0435 \u043E\u0442\u0445\u0432\u044A\u0440\u043B\u0435\u043D\u043E \u043F\u0440\u0435\u0434\u0438 \u043C\u0438\u0433\u0440\u0438\u0440\u0430\u043D\u0435\u0442\u043E.
|
|
294
|
+
DAC_DIALOG_MIGRATION_SUCCESSFULL_DESCRIPTION=\u0418\u0437\u0433\u043B\u0435\u0434\u0438\u0442\u0435 \u0441\u0430 \u043C\u0438\u0433\u0440\u0438\u0440\u0430\u043D\u0438 \u0443\u0441\u043F\u0435\u0448\u043D\u043E.\n\u0412\u0435\u0447\u0435 \u043C\u043E\u0436\u0435\u0442\u0435 \u0434\u0430 \u043F\u0440\u0435\u0432\u043A\u043B\u044E\u0447\u0438\u0442\u0435 \u043A\u044A\u043C \u0441\u044A\u0437\u0434\u0430\u0434\u0435\u043D\u0438\u0442\u0435 \u0430\u0434\u0430\u043F\u0442\u0430\u0446\u0438\u0438 \u0438 \u0434\u0430 \u0433\u0438 \u043F\u043E\u0442\u0432\u044A\u0440\u0434\u0438\u0442\u0435.
|
|
295
|
+
DAC_DIALOG_MIGRATION_ERROR_DESCRIPTION=\u0412\u044A\u0437\u043D\u0438\u043A\u043D\u0430 \u0433\u0440\u0435\u0448\u043A\u0430 \u043F\u0440\u0438 \u043C\u0438\u0433\u0440\u0438\u0440\u0430\u043D\u0435. \u041C\u043E\u043B\u044F, \u043E\u043F\u0438\u0442\u0430\u0439\u0442\u0435 \u043E\u0442\u043D\u043E\u0432\u043E \u043F\u043E-\u043A\u044A\u0441\u043D\u043E, \u0438\u043B\u0438 \u0441\u0435 \u0441\u0432\u044A\u0440\u0436\u0435\u0442\u0435 \u0441 \u0432\u0430\u0448\u0438\u044F \u0430\u0434\u043C\u0438\u043D\u0438\u0441\u0442\u0440\u0430\u0442\u043E\u0440.
|
|
291
296
|
MANAGE_ADAPTATIONS_DIALOG_HEADER=\u0423\u043F\u0440\u0430\u0432\u043B\u044F\u0432\u0430\u043D\u0435 \u043D\u0430 \u0430\u0434\u0430\u043F\u0442\u0438\u0440\u0430\u043D\u0438\u044F
|
|
292
297
|
BTN_MANAGE_APP_CTX=\u0423\u043F\u0440\u0430\u0432\u043B\u044F\u0432\u0430\u043D\u0435 \u043D\u0430 \u0430\u0434\u0430\u043F\u0442\u0438\u0440\u0430\u043D\u0438\u044F
|
|
293
298
|
TXT_MANAGE_APP_CTX=\u041F\u0440\u0435\u0433\u043B\u0435\u0434, \u0440\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u0430\u043D\u0435 \u0438\u043B\u0438 \u0438\u0437\u0442\u0440\u0438\u0432\u0430\u043D\u0435 \u043D\u0430 \u0430\u0434\u0430\u043F\u0442\u0438\u0440\u0430\u043D\u0438\u044F
|
|
@@ -288,6 +288,11 @@ SAC_DIALOG_HEADER=Desar com a nova adaptaci\u00F3
|
|
|
288
288
|
DAC_DIALOG_HEADER=Suprimir adaptaci\u00F3
|
|
289
289
|
DAC_DIALOG_DESCRIPTION=Segur que voleu suprimir aquesta adaptaci\u00F3?
|
|
290
290
|
DAC_DATA_LOSS_DIALOG_DESCRIPTION=Teniu modificacions a la IU sense desar. Si suprimiu aquesta adaptaci\u00F3, tamb\u00E9 se suprimiran les modificacions de la IU. Segur que voleu suprimir aquesta adaptaci\u00F3?
|
|
291
|
+
DAC_DIALOG_MIGRATION_HEADER=Migrar vistes
|
|
292
|
+
DAC_DIALOG_MIGRATION_DESCRIPTION=Hem detectat que ja heu assignat rols a vistes en aquesta aplicaci\u00F3. Si voleu crear una adaptaci\u00F3, heu de migrar les vistes a adaptacions.\nDespr\u00E9s de la migraci\u00F3, cadascuna de les vistes que s'havia assignat a un rol s'inclour\u00E0 en una adaptaci\u00F3.
|
|
293
|
+
DAC_DIALOG_MIGRATION_DIRTY_DESCRIPTION=Hem detectat que ja heu assignat rols a vistes en aquesta aplicaci\u00F3. Si voleu crear una adaptaci\u00F3, heu de migrar les vistes a adaptacions.\nDespr\u00E9s de la migraci\u00F3, cadascuna de les vistes que s'havia assignat a un rol s'inclour\u00E0 en una adaptaci\u00F3.\n\nTeniu modificacions d'IU no desades. Es descartaran abans de la migraci\u00F3.
|
|
294
|
+
DAC_DIALOG_MIGRATION_SUCCESSFULL_DESCRIPTION=Les vistes s'han migrat correctament.\nAra podeu canviar a les adaptacions que s'han creat i verificar-les.
|
|
295
|
+
DAC_DIALOG_MIGRATION_ERROR_DESCRIPTION=S'ha produ\u00EFt un error durant la migraci\u00F3. Torneu a provar-ho m\u00E9s endavant o adreceu-vos a l'administrador.
|
|
291
296
|
MANAGE_ADAPTATIONS_DIALOG_HEADER=Gestionar adaptacions
|
|
292
297
|
BTN_MANAGE_APP_CTX=Gestionar adaptacions
|
|
293
298
|
TXT_MANAGE_APP_CTX=Visualitzar, editar o suprimir adaptacions
|
|
@@ -288,6 +288,11 @@ SAC_DIALOG_HEADER=Ulo\u017Eit jako novou \u00FApravu
|
|
|
288
288
|
DAC_DIALOG_HEADER=Odstranit \u00FApravu
|
|
289
289
|
DAC_DIALOG_DESCRIPTION=Chcete opravdu tuto \u00FApravu odstranit?
|
|
290
290
|
DAC_DATA_LOSS_DIALOG_DESCRIPTION=M\u00E1te neulo\u017Een\u00E9 zm\u011Bny u\u017Eivatelsk\u00E9ho rozhran\u00ED. Odstran\u011Bn\u00EDm t\u00E9to \u00FApravy se odstran\u00ED tak\u00E9 zm\u011Bny u\u017Eivatelsk\u00E9ho rozhran\u00ED. Opravdu chcete odstranit tuto \u00FApravu?
|
|
291
|
+
DAC_DIALOG_MIGRATION_HEADER=Migrovat pohledy
|
|
292
|
+
DAC_DIALOG_MIGRATION_DESCRIPTION=V\u0161imli jsme si, \u017Ee jste v t\u00E9to aplikaci ji\u017E p\u0159i\u0159adili role pohled\u016Fm. Chcete-li vytvo\u0159it p\u0159izp\u016Fsoben\u00ED, mus\u00EDte tyto pohledy migrovat na p\u0159izp\u016Fsoben\u00ED. Po migraci bude ka\u017Ed\u00FD pohled, kter\u00FD byl p\u0159i\u0159azen k roli, zahrnut do p\u0159izp\u016Fsoben\u00ED.
|
|
293
|
+
DAC_DIALOG_MIGRATION_DIRTY_DESCRIPTION=V\u0161imli jsme si, \u017Ee jste v t\u00E9to aplikaci ji\u017E p\u0159i\u0159adili role pohled\u016Fm. Chcete-li vytvo\u0159it p\u0159izp\u016Fsoben\u00ED, mus\u00EDte tyto pohledy migrovat na p\u0159izp\u016Fsoben\u00ED.\n Po migraci bude ka\u017Ed\u00FD pohled, kter\u00FD byl p\u0159i\u0159azen k roli, zahrnut do p\u0159izp\u016Fsoben\u00ED.\n\nM\u00E1te neulo\u017Een\u00E9 zm\u011Bny u\u017Eivatelsk\u00E9ho rozhran\u00ED. Ty budou p\u0159ed migrac\u00ED zahozeny.
|
|
294
|
+
DAC_DIALOG_MIGRATION_SUCCESSFULL_DESCRIPTION=Pohledy byly \u00FAsp\u011B\u0161n\u011B migrov\u00E1ny.\nNyn\u00ED m\u016F\u017Eete p\u0159epnout na p\u0159izp\u016Fsoben\u00ED, je\u017E byla vytvo\u0159ena, a ov\u011B\u0159it je.
|
|
295
|
+
DAC_DIALOG_MIGRATION_ERROR_DESCRIPTION=P\u0159i migraci do\u0161lo k chyb\u011B. Pokuste se znova pozd\u011Bji nebo kontaktujte spr\u00E1vce syst\u00E9mu.
|
|
291
296
|
MANAGE_ADAPTATIONS_DIALOG_HEADER=Spravovat \u00FApravy
|
|
292
297
|
BTN_MANAGE_APP_CTX=Spravovat \u00FApravy
|
|
293
298
|
TXT_MANAGE_APP_CTX=Zobrazit, upravit nebo odstranit \u00FApravy
|
|
@@ -288,6 +288,11 @@ SAC_DIALOG_HEADER=Cadw fel Addasiad Newydd
|
|
|
288
288
|
DAC_DIALOG_HEADER=Dileu Addasiad
|
|
289
289
|
DAC_DIALOG_DESCRIPTION=Ydych chi wir am ddileu\u2019r addasiad hwn?
|
|
290
290
|
DAC_DATA_LOSS_DIALOG_DESCRIPTION=Mae gennych newidiadau UI heb eu cadw. Bydd dileu'r addasiad hwn yn dileu'r newidiadau UI hefyd. Ydych chi wir am ddileu'r addasiad hwn?
|
|
291
|
+
DAC_DIALOG_MIGRATION_HEADER=Mudo Gweddau
|
|
292
|
+
DAC_DIALOG_MIGRATION_DESCRIPTION=Rydym wedi sylwi eich bod eisoes wedi neilltuo rolau i weddau yn y rhaglen hon. Os ydych chi eisiau creu addasiad, mae angen i chi symud y gweddau hyn i addasiadau.\nAr \u00F4l mudo, bydd pob gwedd a neilltuwyd i r\u00F4l yn cael ei gynnwys mewn addasiad.
|
|
293
|
+
DAC_DIALOG_MIGRATION_DIRTY_DESCRIPTION=Rydym wedi sylwi eich bod eisoes wedi neilltuo rolau i weddau yn y rhaglen hon. Os ydych chi eisiau creu addasiad, mae angen i chi symud y gweddau hyn i addasiadau.\nAr \u00F4l mudo, bydd pob gwedd a neilltuwyd i r\u00F4l yn cael ei gynnwys mewn addasiad.\n\nMae gennych newidiadau UI heb eu cadw. Bydd y rhain yn cael eu dileu cyn mudo.
|
|
294
|
+
DAC_DIALOG_MIGRATION_SUCCESSFULL_DESCRIPTION=Mae gweddau wedi'u mudo'n llwyddiannus.\nGallwch nawr newid i'r addasiadau sydd wedi'u creu a'u dilysu nhw.
|
|
295
|
+
DAC_DIALOG_MIGRATION_ERROR_DESCRIPTION=Roedd gwall wrth fudo. Rhowch gynnig arall arni rywbryd eto neu cysylltwch \u00E2'ch gweinyddwr.
|
|
291
296
|
MANAGE_ADAPTATIONS_DIALOG_HEADER=Rheoli Addasiadau
|
|
292
297
|
BTN_MANAGE_APP_CTX=Rheoli Addasiadau
|
|
293
298
|
TXT_MANAGE_APP_CTX=Gweld, golygu neu ddileu addasiadau
|
|
@@ -288,6 +288,11 @@ SAC_DIALOG_HEADER=Gem som ny tilpasning
|
|
|
288
288
|
DAC_DIALOG_HEADER=Slet tilpasning
|
|
289
289
|
DAC_DIALOG_DESCRIPTION=Er du sikker p\u00E5, at du vil slette denne tilpasning?
|
|
290
290
|
DAC_DATA_LOSS_DIALOG_DESCRIPTION=Du har ikkegemte UI-\u00E6ndringer. Hvis du sletter denne tilpasning, slettes UI-\u00E6ndringerne ogs\u00E5. Er du sikker p\u00E5, at du vil slette denne tilpasning?
|
|
291
|
+
DAC_DIALOG_MIGRATION_HEADER=Migrer views
|
|
292
|
+
DAC_DIALOG_MIGRATION_DESCRIPTION=Vi har bem\u00E6rket, at du allerede har allokeret roller til views i denne applikation. Hvis du vil oprette en tilpasning, skal du migrere disse views til tilpasninger.\nEfter migrering inkluderes ethvert view, der blev allokeret til en rolle, i en tilpasning.
|
|
293
|
+
DAC_DIALOG_MIGRATION_DIRTY_DESCRIPTION=Vi har bem\u00E6rket, at du allerede har allokeret roller til views i denne applikation. Hvis du vil oprette en tilpasning, skal du migrere disse views til tilpasninger.\nEfter migrering inkluderes ethvert view, der blev allokeret til en rolle, i en tilpasning.\n\nDu har ikkegemte UI-\u00E6ndringer. Disse forkastes f\u00F8r migrering.
|
|
294
|
+
DAC_DIALOG_MIGRATION_SUCCESSFULL_DESCRIPTION=Views er migreret uden fejl.\nDu kan nu skifte til de tilpasninger, der er oprettet, og bekr\u00E6fte dem.
|
|
295
|
+
DAC_DIALOG_MIGRATION_ERROR_DESCRIPTION=Der opstod en fejl under migrering. Pr\u00F8v igen senere, eller kontakt din administrator.
|
|
291
296
|
MANAGE_ADAPTATIONS_DIALOG_HEADER=Administrer tilpasninger
|
|
292
297
|
BTN_MANAGE_APP_CTX=Administrer tilpasninger
|
|
293
298
|
TXT_MANAGE_APP_CTX=Vis, rediger eller slet tilpasninger
|
|
@@ -288,6 +288,11 @@ SAC_DIALOG_HEADER=Als neue Anpassung sichern
|
|
|
288
288
|
DAC_DIALOG_HEADER=Anpassung l\u00F6schen
|
|
289
289
|
DAC_DIALOG_DESCRIPTION=M\u00F6chten Sie diese Anpassung wirklich l\u00F6schen?
|
|
290
290
|
DAC_DATA_LOSS_DIALOG_DESCRIPTION=Sie haben ungesicherte UI-\u00C4nderungen. Durch das L\u00F6schen dieser Anpassung werden auch die UI-\u00C4nderungen gel\u00F6scht. M\u00F6chten Sie diese Anpassung wirklich l\u00F6schen?
|
|
291
|
+
DAC_DIALOG_MIGRATION_HEADER=Ansichten migrieren
|
|
292
|
+
DAC_DIALOG_MIGRATION_DESCRIPTION=Wir haben festgestellt, dass Sie Ansichten in dieser Anwendung bereits Rollen zugeordnet haben. Wenn Sie eine Anpassung anlegen m\u00F6chten, m\u00FCssen Sie diese Ansichten in die Anpassung migrieren.\nNach der Migration ist jede Ansicht, die einer Rolle zugeordnet war, in einer Anpassung enthalten.
|
|
293
|
+
DAC_DIALOG_MIGRATION_DIRTY_DESCRIPTION=Wir haben festgestellt, dass Sie Ansichten in dieser Anwendung bereits Rollen zugeordnet haben. Wenn Sie eine Anpassung anlegen m\u00F6chten, m\u00FCssen Sie diese Ansichten in die Anpassung migrieren.\nNach der Migration ist jede Ansicht, die einer Rolle zugeordnet war, in einer Anpassung enthalten.\n\nSie haben ungesicherte UI-\u00C4nderungen. Diese werden vor der Migration verworfen.
|
|
294
|
+
DAC_DIALOG_MIGRATION_SUCCESSFULL_DESCRIPTION=Die Ansichten wurden erfolgreich migriert.\nSie k\u00F6nnen nun zu den angelegten Anpassungen wechseln und sie \u00FCberpr\u00FCfen.
|
|
295
|
+
DAC_DIALOG_MIGRATION_ERROR_DESCRIPTION=W\u00E4hrend der Migration ist ein Fehler aufgetreten. Bitte versuchen Sie es sp\u00E4ter erneut, oder wenden Sie sich an Ihren Administrator.
|
|
291
296
|
MANAGE_ADAPTATIONS_DIALOG_HEADER=Anpassungen verwalten
|
|
292
297
|
BTN_MANAGE_APP_CTX=Anpassungen verwalten
|
|
293
298
|
TXT_MANAGE_APP_CTX=Anpassungen anzeigen, bearbeiten oder l\u00F6schen
|
|
@@ -306,7 +311,7 @@ MENU_BTN_SHARE=Teilen
|
|
|
306
311
|
MENU_BTN_EDIT=Bearbeiten
|
|
307
312
|
MAA_DIALOG_DELETE=L\u00F6schen
|
|
308
313
|
TXT_SELECT_FIRST_PRIO=Vor allen einf\u00FCgen (Priorit\u00E4t '1')
|
|
309
|
-
TXT_SELECT_PRIO=Nach ''{0}'' einf\u00FCgen (Priorit\u00E4t''{1}'')
|
|
314
|
+
TXT_SELECT_PRIO=Nach ''{0}'' einf\u00FCgen (Priorit\u00E4t ''{1}'')
|
|
310
315
|
SAVE_AS_DIALOG_PLACEHOLDER_DESCRIPTION_TEXT=Beschreibung eingeben
|
|
311
316
|
TXT_TABLE_CONTEXT_CELL_ROLE=Rolle
|
|
312
317
|
TXT_TABLE_CONTEXT_CELL_ROLES=Rollen
|