Spaces:
Paused
Paused
Download web/extensions/core/saveImageExtraOutput.js from visionMaze/Magic-Me: direct link, hf CLI and curl.
- Browser
- Download file 1.28 kB
-
https://huggingface.co/spaces/visionMaze/Magic-Me/resolve/refs%2Fpr%2F2/web/extensions/core/saveImageExtraOutput.js
- Command line
-
hf download hf://spaces/visionMaze/Magic-Me@refs/pr/2/web/extensions/core/saveImageExtraOutput.js
-
curl -L -o saveImageExtraOutput.js https://huggingface.co/spaces/visionMaze/Magic-Me/resolve/refs%2Fpr%2F2/web/extensions/core/saveImageExtraOutput.js
1.28 kB
| import { app } from "../../scripts/app.js"; | |
| import { applyTextReplacements } from "../../scripts/utils.js"; | |
| // Use widget values and dates in output filenames | |
| app.registerExtension({ | |
| name: "Comfy.SaveImageExtraOutput", | |
| async beforeRegisterNodeDef(nodeType, nodeData, app) { | |
| if (nodeData.name === "SaveImage") { | |
| const onNodeCreated = nodeType.prototype.onNodeCreated; | |
| // When the SaveImage node is created we want to override the serialization of the output name widget to run our S&R | |
| nodeType.prototype.onNodeCreated = function () { | |
| const r = onNodeCreated ? onNodeCreated.apply(this, arguments) : undefined; | |
| const widget = this.widgets.find((w) => w.name === "filename_prefix"); | |
| widget.serializeValue = () => { | |
| return applyTextReplacements(app, widget.value); | |
| }; | |
| return r; | |
| }; | |
| } else { | |
| // When any other node is created add a property to alias the node | |
| const onNodeCreated = nodeType.prototype.onNodeCreated; | |
| nodeType.prototype.onNodeCreated = function () { | |
| const r = onNodeCreated ? onNodeCreated.apply(this, arguments) : undefined; | |
| if (!this.properties || !("Node name for S&R" in this.properties)) { | |
| this.addProperty("Node name for S&R", this.constructor.type, "string"); | |
| } | |
| return r; | |
| }; | |
| } | |
| }, | |
| }); | |