mirror of
https://github.com/node-red/node-red.git
synced 2025-03-01 10:36:34 +00:00
Use absolute flow file path in project settings
This ensures the diff logic can recognise the project flow file and apply merge resolution to paths that git knows
This commit is contained in:
@@ -766,8 +766,7 @@ RED.projects.settings = (function() {
|
||||
row = $('<div class="user-settings-row"></div>').appendTo(filesContainer);
|
||||
$('<label for=""></label>').text(RED._("sidebar.project.projectSettings.package")).appendTo(row);
|
||||
var packageFileLabel = $('<div class="uneditable-input" style="padding:0">').appendTo(row);
|
||||
var packageFileLabelPrefixText = $('<span style="display:inline-block; padding: 6px 0 6px 6px">').text("/").appendTo(packageFileLabel);
|
||||
var packageFileLabelText = $('<span style="display:inline-block; padding: 6px 6px 6px 0">').text(activeProject.files.package||"package.json").appendTo(packageFileLabel);
|
||||
var packageFileLabelText = $('<span style="display:inline-block; padding: 6px">').text(activeProject.files.package||"package.json").appendTo(packageFileLabel);
|
||||
var packageFileInput = $('<input type="hidden">').val(activeProject.files.package||"package.json").appendTo(packageFileLabel);
|
||||
|
||||
var packageFileInputSearch = $('<button type="button" class="editor-button toggle single" style="border-top-right-radius: 4px; border-bottom-right-radius: 4px; width: 36px; height: 34px; position: absolute; top: -1px; right: -1px;"><i class="fa fa-folder-open-o"></i></button>')
|
||||
@@ -791,8 +790,8 @@ RED.projects.settings = (function() {
|
||||
packageFileInput.val(result);
|
||||
packageFileLabelText.text(result);
|
||||
var rootDir = result.substring(0,result.length - 12);
|
||||
flowFileLabelPrefixText.text("/"+rootDir);
|
||||
credFileLabelPrefixText.text("/"+rootDir);
|
||||
flowFileLabelPrefixText.text(rootDir);
|
||||
credFileLabelPrefixText.text(rootDir);
|
||||
flowFileInputResize();
|
||||
packageFileSubLabel.hide();
|
||||
}
|
||||
@@ -816,7 +815,7 @@ RED.projects.settings = (function() {
|
||||
}
|
||||
|
||||
|
||||
var projectPackage = "/"+(activeProject.files.package||"package.json");
|
||||
var projectPackage = activeProject.files.package||"package.json";
|
||||
var projectRoot = projectPackage.substring(0,projectPackage.length - 12);
|
||||
|
||||
// Flow files
|
||||
@@ -824,13 +823,21 @@ RED.projects.settings = (function() {
|
||||
$('<label for=""></label>').text(RED._("sidebar.project.projectSettings.flow")).appendTo(row);
|
||||
var flowFileLabel = $('<div class="uneditable-input" style="padding:0">').appendTo(row);
|
||||
var flowFileLabelPrefixText = $('<span style="display:inline-block; padding: 6px 0 6px 6px">').text(projectRoot).appendTo(flowFileLabel);
|
||||
var flowFileLabelText = $('<span style="display:inline-block; padding: 6px 6px 6px 0">').text(activeProject.files.flow||"flows.json").appendTo(flowFileLabel);
|
||||
var flowFileName = "flows.json";
|
||||
if (activeProject.files.flow) {
|
||||
if (activeProject.files.flow.indexOf(projectRoot) === 0) {
|
||||
flowFileName = activeProject.files.flow.substring(projectRoot.length);
|
||||
} else {
|
||||
flowFileName = activeProject.files.flow;
|
||||
}
|
||||
}
|
||||
var flowFileLabelText = $('<span style="display:inline-block; padding: 6px 6px 6px 0">').text(flowFileName).appendTo(flowFileLabel);
|
||||
var flowFileInputResize = function() {
|
||||
flowFileInput.css({
|
||||
"width": "calc(100% - "+(flowFileInputSearch.width() + flowFileLabelPrefixText.width())+"px)"
|
||||
});
|
||||
}
|
||||
var flowFileInput = $('<input type="text" style="padding-left:1px; margin-top: -2px; margin-bottom: 0;border: none;">').val(activeProject.files.flow||"flows.json").hide().appendTo(flowFileLabel);
|
||||
var flowFileInput = $('<input type="text" style="padding-left:1px; margin-top: -2px; margin-bottom: 0;border: none;">').val(flowFileName).hide().appendTo(flowFileLabel);
|
||||
var flowFileInputSearch = $('<button type="button" class="editor-button toggle single" style="border-top-right-radius: 4px; border-bottom-right-radius: 4px; width: 36px; height: 34px; position: absolute; top: -1px; right: -1px;"><i class="fa fa-folder-open-o"></i></button>')
|
||||
.hide()
|
||||
.appendTo(flowFileLabel)
|
||||
@@ -875,11 +882,20 @@ RED.projects.settings = (function() {
|
||||
row = $('<div class="user-settings-row"></div>').appendTo(filesContainer);
|
||||
$('<label for=""></label>').text(RED._("sidebar.project.projectSettings.credentials")).appendTo(row);
|
||||
|
||||
var credFileName = "flows_cred.json";
|
||||
if (activeProject.files.credentials) {
|
||||
if (activeProject.files.flow.indexOf(projectRoot) === 0) {
|
||||
credFileName = activeProject.files.credentials.substring(projectRoot.length);
|
||||
} else {
|
||||
credFileName = activeProject.files.credentials;
|
||||
}
|
||||
}
|
||||
|
||||
var credFileLabel = $('<div class="uneditable-input" style="padding:0">').appendTo(row);
|
||||
var credFileLabelPrefixText = $('<span style="display:inline-block;padding: 6px 0 6px 6px">').text(projectRoot).appendTo(credFileLabel);
|
||||
var credFileLabelText = $('<span style="display:inline-block; padding: 6px 6px 6px 0">').text(activeProject.files.credentials||"flows_cred.json").appendTo(credFileLabel);
|
||||
var credFileLabelText = $('<span style="display:inline-block; padding: 6px 6px 6px 0">').text(credFileName).appendTo(credFileLabel);
|
||||
|
||||
var credFileInput = $('<input type="hidden">').val(activeProject.files.credentials||"flows_cred.json").insertAfter(credFileLabel);
|
||||
var credFileInput = $('<input type="hidden">').val(credFileName).insertAfter(credFileLabel);
|
||||
|
||||
var checkFiles = function() {
|
||||
var saveDisabled;
|
||||
@@ -1053,7 +1069,7 @@ RED.projects.settings = (function() {
|
||||
.appendTo(formButtons)
|
||||
.click(function(evt) {
|
||||
evt.preventDefault();
|
||||
var projectPackage = "/"+(activeProject.files.package||"package.json");
|
||||
var projectPackage = activeProject.files.package||"package.json";
|
||||
var projectRoot = projectPackage.substring(0,projectPackage.length - 12);
|
||||
flowFileLabelPrefixText.text(projectRoot);
|
||||
credFileLabelPrefixText.text(projectRoot);
|
||||
@@ -1065,7 +1081,7 @@ RED.projects.settings = (function() {
|
||||
packageFileSubLabel.hide();
|
||||
}
|
||||
flowFileInput.val(flowFileLabelText.text());
|
||||
credFileLabelText.text(activeProject.files.credentials||"flows_cred.json");
|
||||
credFileLabelText.text(credFileName);
|
||||
hideEditForm();
|
||||
});
|
||||
var saveButton = $('<button type="button" class="editor-button">' + RED._("common.label.save") + '</button>')
|
||||
@@ -1084,11 +1100,13 @@ RED.projects.settings = (function() {
|
||||
packageFileSubLabel.hide();
|
||||
hideEditForm();
|
||||
}
|
||||
var rootPath = packageFileInput.val();
|
||||
rootPath = rootPath.substring(0,rootPath.length-12);
|
||||
var payload = {
|
||||
files: {
|
||||
flow: flowFileInput.val(),
|
||||
credentials: credFileInput.val(),
|
||||
package: packageFileInput.val()
|
||||
package: packageFileInput.val(),
|
||||
flow: rootPath+flowFileInput.val(),
|
||||
credentials: rootPath+credFileInput.val()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1101,9 +1119,6 @@ RED.projects.settings = (function() {
|
||||
payload.currentCredentialSecret = credentialSecretExistingInput.val();
|
||||
}
|
||||
}
|
||||
|
||||
console.log(payload);
|
||||
return;
|
||||
RED.deploy.setDeployInflight(true);
|
||||
utils.sendRequest({
|
||||
url: "projects/"+activeProject.name,
|
||||
|
Reference in New Issue
Block a user