mirror of
https://github.com/comfyanonymous/ComfyUI.git
synced 2025-09-14 21:45:06 +00:00
Adding built in extensions + example
This commit is contained in:
54
web/extensions/logging.js.example
Normal file
54
web/extensions/logging.js.example
Normal file
@@ -0,0 +1,54 @@
|
||||
import { app } from "../scripts/app.js";
|
||||
|
||||
const ext = {
|
||||
name: "Example.LoggingExtension",
|
||||
async init(app) {
|
||||
// Any initial setup to run as soon as the page loads
|
||||
console.log("[logging]", "extension init");
|
||||
},
|
||||
async setup(app) {
|
||||
// Any setup to run after the app is created
|
||||
console.log("[logging]", "extension setup");
|
||||
},
|
||||
async addCustomNodeDefs(defs, app) {
|
||||
// Add custom node definitions
|
||||
// These definitions will be configured and registered automatically
|
||||
// defs is a lookup core nodes, add yours into this
|
||||
console.log("[logging]", "add custom node definitions", "current nodes:", Object.keys(defs));
|
||||
},
|
||||
async getCustomWidgets(app) {
|
||||
// Return custom widget types
|
||||
// See ComfyWidgets for widget examples
|
||||
console.log("[logging]", "provide custom widgets");
|
||||
},
|
||||
async beforeRegisterNodeDef(nodeType, nodeData, app) {
|
||||
// Run custom logic before a node definition is registered with the graph
|
||||
console.log("[logging]", "before register node: ", nodeType, nodeData);
|
||||
|
||||
// This fires for every node definition so only log once
|
||||
delete ext.beforeRegisterNodeDef;
|
||||
},
|
||||
async registerCustomNodes(app) {
|
||||
// Register any custom node implementations here allowing for more flexability than a custom node def
|
||||
console.log("[logging]", "register custom nodes");
|
||||
},
|
||||
loadedGraphNode(node, app) {
|
||||
// Fires for each node when loading/dragging/etc a workflow json or png
|
||||
// If you break something in the backend and want to patch workflows in the frontend
|
||||
// This is the place to do this
|
||||
console.log("[logging]", "loaded graph node: ", node);
|
||||
|
||||
// This fires for every node on each load so only log once
|
||||
delete ext.loadedGraphNode;
|
||||
},
|
||||
nodeCreated(node, app) {
|
||||
// Fires every time a node is constructed
|
||||
// You can modify widgets/add handlers/etc here
|
||||
console.log("[logging]", "node created: ", node);
|
||||
|
||||
// This fires for every node so only log once
|
||||
delete ext.nodeCreated;
|
||||
}
|
||||
};
|
||||
|
||||
app.registerExtension(ext);
|
Reference in New Issue
Block a user