Readded loading file
This commit is contained in:
parent
a5c5c97ded
commit
72cdd83c06
|
@ -12,28 +12,5 @@
|
||||||
window.graph = app.graph;
|
window.graph = app.graph;
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body></body>
|
||||||
<script>
|
|
||||||
return;
|
|
||||||
|
|
||||||
let runningNodeId = null;
|
|
||||||
let progress = null;
|
|
||||||
let clientId = null;
|
|
||||||
|
|
||||||
var input = document.createElement("input");
|
|
||||||
input.setAttribute("type", "file");
|
|
||||||
input.setAttribute("accept", ".json,image/png");
|
|
||||||
input.style.display = "none";
|
|
||||||
document.body.appendChild(input);
|
|
||||||
|
|
||||||
input.addEventListener("change", function () {
|
|
||||||
var file = input.files[0];
|
|
||||||
prompt_file_load(file);
|
|
||||||
});
|
|
||||||
|
|
||||||
function loadGraph() {
|
|
||||||
input.click();
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -300,19 +300,7 @@ class ComfyApp {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
const file = event.dataTransfer.files[0];
|
const file = event.dataTransfer.files[0];
|
||||||
|
await this.handleFile(file);
|
||||||
if (file.type === "image/png") {
|
|
||||||
const pngInfo = await getPngMetadata(file);
|
|
||||||
if (pngInfo && pngInfo.workflow) {
|
|
||||||
this.loadGraphData(JSON.parse(pngInfo.workflow));
|
|
||||||
}
|
|
||||||
} else if (file.type === "application/json" || file.name.endsWith(".json")) {
|
|
||||||
const reader = new FileReader();
|
|
||||||
reader.onload = () => {
|
|
||||||
this.loadGraphData(JSON.parse(reader.result));
|
|
||||||
};
|
|
||||||
reader.readAsText(file);
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -630,6 +618,21 @@ class ComfyApp {
|
||||||
this.canvas.draw(true, true);
|
this.canvas.draw(true, true);
|
||||||
await this.ui.queue.update();
|
await this.ui.queue.update();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async handleFile(file) {
|
||||||
|
if (file.type === "image/png") {
|
||||||
|
const pngInfo = await getPngMetadata(file);
|
||||||
|
if (pngInfo && pngInfo.workflow) {
|
||||||
|
this.loadGraphData(JSON.parse(pngInfo.workflow));
|
||||||
|
}
|
||||||
|
} else if (file.type === "application/json" || file.name.endsWith(".json")) {
|
||||||
|
const reader = new FileReader();
|
||||||
|
reader.onload = () => {
|
||||||
|
this.loadGraphData(JSON.parse(reader.result));
|
||||||
|
};
|
||||||
|
reader.readAsText(file);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export const app = new ComfyApp();
|
export const app = new ComfyApp();
|
||||||
|
|
|
@ -159,18 +159,16 @@ export class ComfyUI {
|
||||||
this.history.update();
|
this.history.update();
|
||||||
});
|
});
|
||||||
|
|
||||||
var input = document.createElement("input");
|
const fileInput = $el("input", {
|
||||||
input.setAttribute("type", "file");
|
type: "file",
|
||||||
input.setAttribute("accept", ".json,image/png");
|
accept: ".json,image/png",
|
||||||
input.style.display = "none";
|
style: "display: none",
|
||||||
document.body.appendChild(input);
|
parent: document.body,
|
||||||
|
onchange: () => {
|
||||||
input.addEventListener("change", function () {
|
app.handleFile(fileInput.files[0]);
|
||||||
var file = input.files[0];
|
},
|
||||||
prompt_file_load(file);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
this.menuContainer = $el("div.comfy-menu", { parent: document.body }, [
|
this.menuContainer = $el("div.comfy-menu", { parent: document.body }, [
|
||||||
$el("span", { $: (q) => (this.queueSize = q) }),
|
$el("span", { $: (q) => (this.queueSize = q) }),
|
||||||
$el("button.comfy-queue-btn", { textContent: "Queue Prompt", onclick: () => app.queuePrompt(0) }),
|
$el("button.comfy-queue-btn", { textContent: "Queue Prompt", onclick: () => app.queuePrompt(0) }),
|
||||||
|
@ -214,7 +212,7 @@ export class ComfyUI {
|
||||||
}, 0);
|
}, 0);
|
||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
$el("button", { textContent: "Load", onclick: () => {} }),
|
$el("button", { textContent: "Load", onclick: () => fileInput.click() }),
|
||||||
$el("button", { textContent: "Clear", onclick: () => app.graph.clear() }),
|
$el("button", { textContent: "Clear", onclick: () => app.graph.clear() }),
|
||||||
$el("button", { textContent: "Load Default", onclick: () => app.loadGraphData() }),
|
$el("button", { textContent: "Load Default", onclick: () => app.loadGraphData() }),
|
||||||
]);
|
]);
|
||||||
|
|
Loading…
Reference in New Issue