From 35c4ca26e05c98f8a0a070b47f27eac7c405c5c6 Mon Sep 17 00:00:00 2001 From: BlakeOne <30273164+BlakeOne@users.noreply.github.com> Date: Sat, 13 Apr 2024 17:44:02 -0700 Subject: [PATCH] Create extension.js --- js/extension.js | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 js/extension.js diff --git a/js/extension.js b/js/extension.js new file mode 100644 index 0000000..d049107 --- /dev/null +++ b/js/extension.js @@ -0,0 +1,26 @@ +import { app } from "../../scripts/app.js"; + +app.registerExtension({ + name: "ComfyUI.NodeDefaults", + setup() { + const defaultWidgets = {}; + const orig = LGraphCanvas.prototype.getNodeMenuOptions; + LGraphCanvas.prototype.getNodeMenuOptions = function(node) { + const options = orig.call(this, node); + options.push(null, { + content: "Restore default values", + callback: () => { + if (!defaultWidgets[node.type]) { + defaultWidgets[node.type] = LiteGraph.createNode(node.type, node.name, node.options).widgets; + } + defaultWidgets[node.type].forEach(defaultWidget => { + const widget = node.widgets.find(widget => widget.name === defaultWidget.name); + if (widget) widget.value = defaultWidget.value; + }); + node.setDirtyCanvas(true, false); + } + }); + return options; + }; + } +});