refactored state
This commit is contained in:
@@ -212,17 +212,17 @@ module.exports = {
|
|||||||
if (!this.state.folder || this.state.folder == "") {
|
if (!this.state.folder || this.state.folder == "") {
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
if (this.state.folder == "default") {
|
// if (this.state.folder == "default") {
|
||||||
const files = this.state.gcode_list
|
// const files = this.state.gcode_list
|
||||||
.filter(item => item.type == "file" && this.state.includes(item.name))
|
// .filter(item => item.type == "file" && this.state.files.includes(item.name))
|
||||||
.map(item => item.name)
|
// .map(item => item.name)
|
||||||
.sort();
|
// .sort();
|
||||||
return files;
|
// return files;
|
||||||
}
|
// }
|
||||||
const folder = this.state.gcode_list.find(item => item.name == this.state.folder);
|
const folder = this.state.gcode_list.find(item => item.name == this.state.folder);
|
||||||
if (folder) {
|
if (folder) {
|
||||||
return folder.files
|
return this.state.gcode_list.files
|
||||||
.filter(item => this.state.includes(item.file_name))
|
.filter(item => this.state.files.includes(item.file_name))
|
||||||
.map(item => item.file_name)
|
.map(item => item.file_name)
|
||||||
.sort();
|
.sort();
|
||||||
} else {
|
} else {
|
||||||
@@ -230,13 +230,7 @@ module.exports = {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
gcode_folders: function () {
|
gcode_folders: function () {
|
||||||
let folders = [];
|
return this.state.gcode_list.map(item => item.name).sort();
|
||||||
for (let item of this.state.gcode_list) {
|
|
||||||
if (item.type == "folder") {
|
|
||||||
folders.push(item.name);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return folders.sort();
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -443,18 +437,18 @@ module.exports = {
|
|||||||
this.config.non_macros_list.push({ file_name: file.name });
|
this.config.non_macros_list.push({ file_name: file.name });
|
||||||
}
|
}
|
||||||
this.config.gcode_list = [...this.state.gcode_list];
|
this.config.gcode_list = [...this.state.gcode_list];
|
||||||
if (
|
// if (
|
||||||
this.state.folder == "default" &&
|
// this.state.folder == "default" &&
|
||||||
!this.state.gcode_list.find(item => item.name == file.name && item.type == "file")
|
// !this.state.gcode_list.find(item => item.name == file.name && item.type == "file")
|
||||||
) {
|
// ) {
|
||||||
this.config.gcode_list.push({ name: file.name, type: "file", files: [] });
|
// this.config.gcode_list.push({ name: file.name, type: "file", files: [] });
|
||||||
} else {
|
// } else {
|
||||||
const folder_to_add = this.config.gcode_list.find(
|
const folder_to_add = this.config.gcode_list.find(
|
||||||
item => item.type == "folder" && item.name == this.state.folder,
|
item => item.type == "folder" && item.name == this.state.folder,
|
||||||
);
|
);
|
||||||
if (!folder_to_add.files.find(item => item.file_name == file.name)) {
|
if (!folder_to_add.files.find(item => item.file_name == file.name)) {
|
||||||
folder_to_add.files.push({ file_name: file.name });
|
folder_to_add.files.push({ file_name: file.name });
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
this.save_config(this.config);
|
this.save_config(this.config);
|
||||||
|
|
||||||
@@ -584,16 +578,16 @@ module.exports = {
|
|||||||
this.config.non_macros_list = this.config.non_macros_list.filter(item => item.file_name != this.state.selected);
|
this.config.non_macros_list = this.config.non_macros_list.filter(item => item.file_name != this.state.selected);
|
||||||
|
|
||||||
this.config.gcode_list = [...this.state.gcode_list];
|
this.config.gcode_list = [...this.state.gcode_list];
|
||||||
if (this.state.folder == "default") {
|
// if (this.state.folder == "default") {
|
||||||
this.config.gcode_list = this.config.gcode_list.filter(
|
// this.config.gcode_list = this.config.gcode_list.filter(
|
||||||
item => (item.type == "file" || item.type == "folder") && item.name != this.state.selected,
|
// item => (item.type == "file" || item.type == "folder") && item.name != this.state.selected,
|
||||||
);
|
// );
|
||||||
} else {
|
// } else {
|
||||||
const file_to_delete = this.config.gcode_list.find(
|
const file_to_delete = this.config.gcode_list.find(
|
||||||
item => item.name == this.state.folder && item.type == "folder",
|
item => item.name == this.state.folder && item.type == "folder",
|
||||||
);
|
);
|
||||||
file_to_delete.files = file_to_delete.files.filter(item => item.file_name != this.state.selected);
|
file_to_delete.files = file_to_delete.files.filter(item => item.file_name != this.state.selected);
|
||||||
}
|
// }
|
||||||
if (!this.state.macros_list.find(item => item.file_name == this.state.selected)) {
|
if (!this.state.macros_list.find(item => item.file_name == this.state.selected)) {
|
||||||
api.delete(`file/${this.state.selected}`);
|
api.delete(`file/${this.state.selected}`);
|
||||||
}
|
}
|
||||||
@@ -611,15 +605,15 @@ module.exports = {
|
|||||||
api.delete(`file/EgZjaHJvbWUqCggBEAAYsQMYgAQyBggAEEUYOTIKCAE${macrosList}`);
|
api.delete(`file/EgZjaHJvbWUqCggBEAAYsQMYgAQyBggAEEUYOTIKCAE${macrosList}`);
|
||||||
this.config.non_macros_list = [];
|
this.config.non_macros_list = [];
|
||||||
this.config.gcode_list = [...this.state.gcode_list];
|
this.config.gcode_list = [...this.state.gcode_list];
|
||||||
if (this.state.folder == "default") {
|
// if (this.state.folder == "default") {
|
||||||
this.config.gcode_list = this.config.gcode_list.filter(item => item.type != "file");
|
// this.config.gcode_list = this.config.gcode_list.filter(item => item.type != "file");
|
||||||
} else {
|
// } else {
|
||||||
this.config.gcode_list
|
this.config.gcode_list
|
||||||
.filter(item => item.type == "folder")
|
.filter(item => item.type == "folder")
|
||||||
.forEach(item => {
|
.forEach(item => {
|
||||||
item.files = [];
|
item.files = [];
|
||||||
});
|
});
|
||||||
}
|
// }
|
||||||
this.save_config(this.config);
|
this.save_config(this.config);
|
||||||
this.deleteGCode = false;
|
this.deleteGCode = false;
|
||||||
},
|
},
|
||||||
@@ -631,19 +625,22 @@ module.exports = {
|
|||||||
item => item.type == "folder" && item.name == this.state.folder,
|
item => item.type == "folder" && item.name == this.state.folder,
|
||||||
);
|
);
|
||||||
if (files_to_move) {
|
if (files_to_move) {
|
||||||
files_to_move.files.forEach(item => {
|
const default_folder = this.config.gcode_list.find(item => item.name == "default");
|
||||||
this.config.gcode_list.push({
|
default_folder.files = [...default_folder.files, ...files_to_move.files].sort();
|
||||||
name: item.file_name,
|
this.config.gcode_list = this.config.gcode_list.filter(item => item.name != this.state.folder);
|
||||||
type: "file",
|
// files_to_move.files.forEach(item => {
|
||||||
files: [],
|
// this.config.gcode_list.push({
|
||||||
});
|
// name: item.file_name,
|
||||||
});
|
// type: "file",
|
||||||
this.config.gcode_list = this.config.gcode_list.filter(item => {
|
// files: [],
|
||||||
if (item.type == "folder" && item.name == this.state.folder) {
|
// });
|
||||||
return false;
|
// });
|
||||||
}
|
// this.config.gcode_list = this.config.gcode_list.filter(item => {
|
||||||
return true;
|
// if (item.type == "folder" && item.name == this.state.folder) {
|
||||||
});
|
// return false;
|
||||||
|
// }
|
||||||
|
// return true;
|
||||||
|
// });
|
||||||
this.save_config(this.config);
|
this.save_config(this.config);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -659,21 +656,34 @@ module.exports = {
|
|||||||
this.config.gcode_list = [...this.state.gcode_list];
|
this.config.gcode_list = [...this.state.gcode_list];
|
||||||
this.config.non_macros_list = [...this.state.non_macros_list];
|
this.config.non_macros_list = [...this.state.non_macros_list];
|
||||||
|
|
||||||
if (this.state.folder != "default") {
|
const selected_folder = this.config.gcode_list.find(
|
||||||
const selected_folder = this.config.gcode_list.find(
|
item => item.type == "folder" && item.name == this.state.folder,
|
||||||
item => item.type == "folder" && item.name == this.state.folder,
|
);
|
||||||
).files;
|
if (!selected_folder) {
|
||||||
if (selected_folder) {
|
return;
|
||||||
var files_to_delete = selected_folder.map(item => item.file_name);
|
|
||||||
this.config.gcode_list = this.config.gcode_list.filter(item => item.name != this.state.folder);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
const selected_folder = this.config.gcode_list.filter(item => item.type == "file");
|
|
||||||
if (selected_folder) {
|
|
||||||
var files_to_delete = selected_folder.map(item => item.name);
|
|
||||||
this.config.gcode_list = this.config.gcode_list.filter(item => item.type != "file");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
var files_to_delete = selected_folder.files.map(item => item.file_name);
|
||||||
|
if (selected_folder.name != "default") {
|
||||||
|
this.config.gcode_list = this.config.gcode_list.filter(item => item.name != this.state.folder);
|
||||||
|
} else {
|
||||||
|
selected_folder.files = [];
|
||||||
|
}
|
||||||
|
|
||||||
|
// if (this.state.folder != "default") {
|
||||||
|
// const selected_folder = this.config.gcode_list.find(
|
||||||
|
// item => item.type == "folder" && item.name == this.state.folder,
|
||||||
|
// ).files;
|
||||||
|
// if (selected_folder) {
|
||||||
|
// var files_to_delete = selected_folder.map(item => item.file_name);
|
||||||
|
// this.config.gcode_list = this.config.gcode_list.filter(item => item.name != this.state.folder);
|
||||||
|
// }
|
||||||
|
// } else {
|
||||||
|
// const selected_folder = this.config.gcode_list.filter(item => item.type == "file");
|
||||||
|
// if (selected_folder) {
|
||||||
|
// var files_to_delete = selected_folder.map(item => item.name);
|
||||||
|
// this.config.gcode_list = this.config.gcode_list.filter(item => item.type != "file");
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
await api.delete(`file/DINCAIQABiDARixAxiABDIHCAMQABiABDIHCAQQABiABDIH${files_to_delete.toString()}`);
|
await api.delete(`file/DINCAIQABiDARixAxiABDIHCAMQABiABDIHCAQQABiABDIH${files_to_delete.toString()}`);
|
||||||
this.config.non_macros_list = this.config.non_macros_list.filter(
|
this.config.non_macros_list = this.config.non_macros_list.filter(
|
||||||
|
|||||||
Reference in New Issue
Block a user