From 6fa1575d079d6aa2280d4cdc9ace44c80cd7a49f Mon Sep 17 00:00:00 2001 From: kk8bit Date: Sat, 26 Apr 2025 19:08:55 +0800 Subject: [PATCH] v0.70.10 --- api/clean_vram.py | 2 +- api/resources.py | 6 +++--- nodes/ab_images.py | 2 +- pyproject.toml | 4 ++-- web/ab_images.js | 2 +- web/cleanvram.js | 12 ++++++------ web/gululu.js | 2 +- web/layoutOptimizer.js | 12 ++++++------ web/resourcemonitor.js | 4 ++-- web/startome.js | 12 ++++++------ web/workflowpng.js | 10 +++++----- 11 files changed, 34 insertions(+), 34 deletions(-) diff --git a/api/clean_vram.py b/api/clean_vram.py index fed21f2..30091af 100644 --- a/api/clean_vram.py +++ b/api/clean_vram.py @@ -43,4 +43,4 @@ async def clean_vram(request): except Exception as e: return web.Response(text=f"Error cleaning VRAM: {str(e)}", status=500) -PromptServer.instance.routes.post("/KayTool/clean_vram")(clean_vram) \ No newline at end of file +PromptServer.instance.routes.post("/kaytool/clean_vram")(clean_vram) \ No newline at end of file diff --git a/api/resources.py b/api/resources.py index 94d0082..dd3a17a 100644 --- a/api/resources.py +++ b/api/resources.py @@ -104,7 +104,7 @@ class KayResourceMonitor: async def send_message(self, data): try: - await PromptServer.instance.send("KayTool.resources", data) + await PromptServer.instance.send("kaytool.resources", data) except Exception: pass @@ -135,12 +135,12 @@ class KayResourceMonitor: monitor = KayResourceMonitor(initial_rate=1.0) routes = PromptServer.instance.routes -@routes.post("/KayTool/start_monitor") +@routes.post("/kaytool/start_monitor") async def start_monitor_endpoint(request): monitor.start() return web.Response(text="Monitor started") -@routes.post("/KayTool/stop_monitor") +@routes.post("/kaytool/stop_monitor") async def stop_monitor_endpoint(request): monitor.stop() return web.Response(text="Monitor stopped") \ No newline at end of file diff --git a/nodes/ab_images.py b/nodes/ab_images.py index 551c809..3cb07af 100644 --- a/nodes/ab_images.py +++ b/nodes/ab_images.py @@ -25,7 +25,7 @@ class ABImages(PreviewImage): def compare_images(self, a=None, b=None, - filename_prefix="KayTool.ab_images.", + filename_prefix="kaytool.ab_images.", prompt=None, extra_pnginfo=None): result = {"ui": {"a": [], "b": []}} diff --git a/pyproject.toml b/pyproject.toml index 25551b5..1ac7759 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,12 +1,12 @@ [project] name = "kaytool" description ="KayTool boosts ComfyUI workflow efficiency with powerful tools like: image processing (resize, color, blur, expand, merge, crop), background/mask tasks via BiRefNet/RemBG, wireless data transfer (Set&Get), AI translation (Tencent/Baidu), Professional high-precision resource monitoring, dynamic math operations, flexible text handling, precision sliders, metadata/color profile-supported image saving, batch processing via folder loading, canvas node map export as PNG with metadata, quick Run options via right-click, node alignment toolbar with custom styles, and custom ComfyUI logo integration." -version = "0.70.9" +version = "0.70.10" license = {file = "LICENSE"} dependencies = ["rembg, timm, opencv-python, py-cpuinfo, pynvml"] [project.urls] -Repository = "https://github.com/kk8bit/KayTool" +Repository = "https://github.com/kk8bit/kaytool" # Used by Comfy Registry https://comfyregistry.org [tool.comfy] diff --git a/web/ab_images.js b/web/ab_images.js index 77f78f9..c0dcfb6 100644 --- a/web/ab_images.js +++ b/web/ab_images.js @@ -8,7 +8,7 @@ function imageDataToUrl(data) { } app.registerExtension({ - name: "KayTool.ABImages", + name: "kaytool.ABImages", async beforeRegisterNodeDef(nodeType, nodeData) { if (nodeData.name !== "AB_Images") return; diff --git a/web/cleanvram.js b/web/cleanvram.js index 6dee75f..a875476 100644 --- a/web/cleanvram.js +++ b/web/cleanvram.js @@ -13,7 +13,7 @@ async function cleanVRAM() { }); try { - const response = await fetch("/KayTool/clean_vram", { method: "POST" }); + const response = await fetch("/kaytool/clean_vram", { method: "POST" }); const message = await response.text(); hideNotification(notifyElement); @@ -72,17 +72,17 @@ app.registerExtension({ const showCleanVRAM = app.ui.settings.getSettingValue("KayTool.ShowCleanVRAM") ?? true; if (showCleanVRAM) { - let KayToolMenu = newOptions.find(opt => opt?.content === "KayTool") || { + let kaytoolMenu = newOptions.find(opt => opt?.content === "KayTool") || { content: "KayTool", submenu: { options: [] } }; - if (!newOptions.includes(KayToolMenu)) { - newOptions.push(null, KayToolMenu); + if (!newOptions.includes(kaytoolMenu)) { + newOptions.push(null, kaytoolMenu); } - if (!KayToolMenu.submenu.options.some(opt => opt?.content === "🧹 Clean VRAM")) { - KayToolMenu.submenu.options.push({ + if (!kaytoolMenu.submenu.options.some(opt => opt?.content === "🧹 Clean VRAM")) { + kaytoolMenu.submenu.options.push({ content: "🧹 Clean VRAM", callback: cleanVRAM }); diff --git a/web/gululu.js b/web/gululu.js index 8be7a5c..585d300 100644 --- a/web/gululu.js +++ b/web/gululu.js @@ -13,7 +13,7 @@ const KayGuLuLuManager = { pixelCanvas: null, pixelCtx: null, pixelDataCache: null, - imgSrc: "/extensions/KayTool/resources/GuLuLu.gif", + imgSrc: "/extensions/kaytool/resources/GuLuLu.gif", effectiveBounds: null, isAnimating: false, animationTimer: null, diff --git a/web/layoutOptimizer.js b/web/layoutOptimizer.js index 6c3bc2b..fcc8ea1 100644 --- a/web/layoutOptimizer.js +++ b/web/layoutOptimizer.js @@ -227,17 +227,17 @@ // const showWorkflowPNG = app.ui.settings.getSettingValue("KayTool.ShowWorkflowPNG"); // if (showWorkflowPNG) { // const newOptions = [...options]; -// let KayToolMenu = newOptions.find(opt => opt && opt.content === "KayTool"); -// if (!KayToolMenu) { -// KayToolMenu = { +// let kaytoolMenu = newOptions.find(opt => opt && opt.content === "KayTool"); +// if (!kaytoolMenu) { +// kaytoolMenu = { // content: "KayTool", // submenu: { options: [] } // }; -// newOptions.push(null, KayToolMenu); +// newOptions.push(null, kaytoolMenu); // } -// KayToolMenu.submenu.options = KayToolMenu.submenu.options || []; +// kaytoolMenu.submenu.options = kaytoolMenu.submenu.options || []; -// KayToolMenu.submenu.options.push({ +// kaytoolMenu.submenu.options.push({ // content: "Layout Tools", // submenu: { // options: [ diff --git a/web/resourcemonitor.js b/web/resourcemonitor.js index b464c22..78943f0 100644 --- a/web/resourcemonitor.js +++ b/web/resourcemonitor.js @@ -219,7 +219,7 @@ const KayResourceMonitor = { } }, setupWebSocketListener() { - api.addEventListener("KayTool.resources", (event) => { + api.addEventListener("kaytool.resources", (event) => { const data = event.detail; this.updateTarget(data); this.updateDisplay(); @@ -856,7 +856,7 @@ app.registerExtension({ name: "KayTool.ResourceMonitor", async setup() { await KayResourceMonitor.init(); - api.fetchApi("/KayTool/start_monitor", { method: "POST" }); + api.fetchApi("/kaytool/start_monitor", { method: "POST" }); const showMenuButton = new (await import("/scripts/ui/components/button.js")).ComfyButton({ content: "𝙆 Monitor", action: () => { diff --git a/web/startome.js b/web/startome.js index cd5d6ee..946a63c 100644 --- a/web/startome.js +++ b/web/startome.js @@ -5,7 +5,7 @@ const KayToolActions = window.KayToolActions || {}; window.KayToolActions = KayToolActions; function starToMe() { - window.open("https://github.com/kk8bit/KayTool", "_blank"); + window.open("https://github.com/kk8bit/kaytool", "_blank"); } // 注册 StarToMe 动作 @@ -21,17 +21,17 @@ app.registerExtension({ const showStarToMe = app.ui.settings.getSettingValue("KayTool.ShowStarToMe") ?? true; if (showStarToMe) { - let KayToolMenu = newOptions.find(opt => opt?.content === "KayTool") || { + let kaytoolMenu = newOptions.find(opt => opt?.content === "KayTool") || { content: "KayTool", submenu: { options: [] } }; - if (!newOptions.includes(KayToolMenu)) { - newOptions.push(null, KayToolMenu); + if (!newOptions.includes(kaytoolMenu)) { + newOptions.push(null, kaytoolMenu); } - if (!KayToolMenu.submenu.options.some(opt => opt?.content === "⭐ Star to me")) { - KayToolMenu.submenu.options.push({ + if (!kaytoolMenu.submenu.options.some(opt => opt?.content === "⭐ Star to me")) { + kaytoolMenu.submenu.options.push({ content: "⭐ Star to me", callback: starToMe }); diff --git a/web/workflowpng.js b/web/workflowpng.js index 53fa5fa..b07c30d 100644 --- a/web/workflowpng.js +++ b/web/workflowpng.js @@ -259,17 +259,17 @@ app.registerExtension({ const showWorkflowPNG = app.ui.settings.getSettingValue("KayTool.ShowWorkflowPNG") ?? true; if (showWorkflowPNG) { - let KayToolMenu = newOptions.find(opt => opt?.content === "KayTool") || { + let kaytoolMenu = newOptions.find(opt => opt?.content === "KayTool") || { content: "KayTool", submenu: { options: [] } }; - if (!newOptions.includes(KayToolMenu)) { - newOptions.push(null, KayToolMenu); + if (!newOptions.includes(kaytoolMenu)) { + newOptions.push(null, kaytoolMenu); } - if (!KayToolMenu.submenu.options.some(opt => opt?.content === "📦 Workflow PNG")) { - KayToolMenu.submenu.options.push({ + if (!kaytoolMenu.submenu.options.some(opt => opt?.content === "📦 Workflow PNG")) { + kaytoolMenu.submenu.options.push({ content: "📦 Workflow PNG", callback: exportWorkflowPNG });