From 3bc317976369e4cb06467979d5edafaf11e94041 Mon Sep 17 00:00:00 2001 From: Christian Byrne Date: Mon, 21 Apr 2025 00:12:28 +0800 Subject: [PATCH] Apply filename text replacements (e.g., `%date:hh:mm:ss%`) in all save nodes (#3523) --- src/extensions/core/saveImageExtraOutput.ts | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/extensions/core/saveImageExtraOutput.ts b/src/extensions/core/saveImageExtraOutput.ts index 971d409e2..3ea312997 100644 --- a/src/extensions/core/saveImageExtraOutput.ts +++ b/src/extensions/core/saveImageExtraOutput.ts @@ -2,16 +2,26 @@ import { applyTextReplacements } from '@/utils/searchAndReplace' import { app } from '../../scripts/app' +const saveNodeTypes = new Set([ + 'SaveImage', + 'SaveAnimatedWEBP', + 'SaveWEBM', + 'SaveAudio', + 'SaveGLB', + 'SaveAnimatedPNG', + 'CLIPSave', + 'VAESave', + 'ModelSave', + 'LoraSave', + 'SaveLatent' +]) + // Use widget values and dates in output filenames app.registerExtension({ name: 'Comfy.SaveImageExtraOutput', async beforeRegisterNodeDef(nodeType, nodeData, app) { - if ( - nodeData.name === 'SaveImage' || - nodeData.name === 'SaveAnimatedWEBP' || - nodeData.name === 'SaveWEBM' - ) { + if (saveNodeTypes.has(nodeData.name)) { 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 () {