144 Commits
Author SHA1 Message Date
Dr.Lt.Data cc015e3223 Fix Switch reconnection and add Chrome regression coverage
Restore a valid selection after reconnecting the last Switch input and remove
the redundant loading check after the early return.

Add Chrome regressions for workflow loading, routing, reconnection, legacy
Switch names, and image, mask, SEGS, conditioning, and regional-prompt combine
nodes. Wait for imported nodes to replace the previous graph, and check
non-default selections and fresh outputs after editing.

Keep the different-size mask batch test as a documented pre-existing failure;
its backend implementation is outside this change.
2026-10-30 02:03:15 +09:00
Dr.Lt.Data 91cb1b2783 Merge #1247: Guard Switch slots during workflow loading
Use the frontend configuration state when stack traces omit loadGraphData, preserving dynamic Switch and Combine slots.
2026-10-30 02:02:56 +09:00
gontzandClaude Opus 5.5 207c011549 fix: use app.configuringGraph for switch-node load guards
The Switch/Combine onConnectionsChange handlers detect workflow loading
with `new Error().stack.includes('loadGraphData')`. V8 keeps only 10
stack frames, so on deep load paths (tab reload, workflow re-open)
`loadGraphData` falls out of the trace, the guard fails, and the
handler runs its interactive-edit logic during configure: addInput
per connected link, removeInput/removeOutput, and the slot-0 connect()
that throws `t.findInputSlot is not a function` (#1223, #1244).

Also check `app.configuringGraph`, which the frontend sets for the
whole of graph configure, independent of stack depth.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-19 06:47:31 +02:00
2322160389 dcec1b875a Fix ImpactSwitch frontend reload 2026-08-12 22:01:58 +08:00
Terry Jia 762fecd970 Frontend vueNode (node 2.0) support for mask rect area nodes (#1167) 2026-01-02 20:46:59 +09:00
Dr.Lt.Data 51b7dcdffa refactor(js): extract shared utilities from MaskRectArea modules
- Move readLinkedNumber, getDrawColor, computeCanvasSize to common.js
- Import shared functions in mask-rect-area.js and mask-rect-area-advanced.js
- Remove duplicate implementations from both MaskRectArea modules
- Clean up unused debug parameter in syncLinkedInputsToProperties
2025-12-30 18:30:53 +09:00
Andrés Zsögön 4c864fafb0 Enable INT node inputs and fix live preview sync for MaskRectArea nodes (#1168)
## Overview

This PR improves both MaskRectArea and MaskRectAreaAdvanced nodes by allowing them to accept values from connected INT nodes, while preserving backward compatibility with existing workflows.

It also fixes several UI and preview issues that prevented the canvas from updating correctly when values were driven by links.

Fixes #1126

## Key changes

### 1. Typed INT inputs support (backend)

- Both MaskRectArea and MaskRectAreaAdvanced now declare proper INT inputs in INPUT_TYPES.
- This allows parameters such as x, y, width, height, and blur_radius to be driven directly by other nodes.
- Existing workflows that relied on node properties remain supported via fallback logic using extra_pnginfo.

### 2. Live preview correctly updates when inputs are linked (frontend)

- The canvas preview now updates immediately when values come from linked INT nodes.
- This is achieved by synchronizing linked input values into node.properties during canvas rendering, avoiding reliance on widget callbacks or execution timing.
- This directly resolves the behavior reported in issue #1126.

### 3. Node height and layout fix (frontend)

- The node height calculation was corrected to use the actual widget layout (last_y) instead of input/output counts.
- Nodes can now both grow and shrink correctly when resized or when widget content changes.
- This removes excessive empty space below the widgets and canvas.

### 4. Widget duplication prevention

- Frontend logic now detects when widgets are already created by Python and avoids recreating them in JavaScript.
- This prevents duplicated widgets and keeps the node UI consistent.

### 5. Comment cleanup

- Remaining comments in Spanish were translated to English for consistency and maintainability.

## Backward compatibility

- Existing workflows continue to work without modification.
- Default behavior and mask output remain unchanged unless inputs are explicitly linked.

## Motivation

These changes make the nodes composable with the rest of the graph (especially math and control nodes), improve the reliability of the preview, and fix UI inconsistencies without introducing breaking changes.
2025-12-30 18:26:50 +09:00
Dr.Lt.DataandClaude fd1b40bee5 feat: Progressive on-demand wildcard loading system
Implement memory-efficient progressive loading for large wildcard collections (10GB+).

Closes #1137

## Key Changes

- **LazyWildcardLoader**: On-demand loading proxy with thread-safe caching
- **Auto mode detection**: Full cache (<50MB) or on-demand (≥50MB), configurable via `wildcard_cache_limit_mb`
- **Performance**: Startup 20-60min → <1min, Memory 5-10GB → <100MB, Size calc <1sec
- **API**: `/impact/wildcards/list/loaded` - Progressive tracking endpoint
- **UI**: Real-time status (🔵 On-Demand / 🟢 Full Cache) with loaded count
- **Compatibility**: Backward compatible, all existing features work unchanged

## Implementation

- YAML pre-loaded (keys in content), TXT on-demand (path = key)
- Early termination size calculation, transitive wildcard support maintained
- 15 test files with comprehensive documentation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-18 01:57:24 +09:00
Dr.Lt.Data cb0655f9a1 fixed: Control Bridge - robust patch
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/1076#issuecomment-3218327527
2025-09-25 18:32:53 +09:00
Dr.Lt.Data f86c5afc68 fixed: switch nodes – compatibility fix from subgraph feature
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/1071
2025-08-20 05:08:23 +09:00
Dr.Lt.Data 329d05b3e4 fixed: switch nodes – compatibility fix from subgraph feature
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/1071
2025-08-19 07:13:59 +09:00
Dr.Lt.Data a1d8446670 fixed: switch nodes – compatibility fix from subgraph feature
refactor: ruff check

https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/1071
2025-08-19 07:01:53 +09:00
Laurent ErignouxandErignoux Laurent 2569e25772 Fixing js files app.js import in case Comfy is served behind a url-prfixing proxy (#1078)
Co-authored-by: Erignoux Laurent <laurent.erignoux@ubisoft.com>
2025-08-13 18:21:54 +09:00
Dr.Lt.Data e1e95c14d3 improved: Muted inputs are now allowed for Make...List and Make...Batch.
fixed: A bug where the number of input slots did not decrease below 3 when disconnected in `Make...List` and `Make...Batch`.

https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/1052
2025-07-19 20:04:46 +09:00
Dr.Lt.Data 2346b67766 fixed: Switch (Any) - copy&paste error
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/1012
2025-06-01 04:52:24 +09:00
Dr.Lt.Data 93fc248503 fixed: cannot connect wildcard input/output to the Switch / InversedSwitch nodes
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/992
2025-05-16 04:42:26 +09:00
Dr.Lt.Data 16ffa7d462 hotfix: potential front error
```
TypeError: Cannot read properties of undefined (reading 'type')
```

https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/989
2025-05-16 03:59:10 +09:00
filtered cd34cfdd63 Fix empty widgets array throws in console (#988) 2025-05-03 14:37:31 +09:00
Dr.Lt.Data 38bb9ffdf6 fixed: Switch - buggy behavior on firefox browser
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/983#issuecomment-2833471721
2025-04-28 00:54:31 +09:00
Dr.Lt.Data f939e66e1c fixed: this.widgets is undefined
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/977
2025-04-27 22:16:11 +09:00
Dr.Lt.Data 0b94005b1b hotfix: impactswitch - frontend crash
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/970#issuecomment-2827153556
2025-04-25 08:03:20 +09:00
Dr.Lt.Data bfcb8674b3 feat: Select Nth Item (Any list)
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/971
2025-04-24 18:00:37 +09:00
Dr.Lt.Data 839e5a9f90 fixed: ImpactSwitch - slot was not shrinked when disconnecting
fixed: ImpactSwitch - invalid upper bounding of the select value

https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/972
2025-04-24 12:38:35 +09:00
Dr.Lt.Data 5a2adda580 fixed: impact switch - compatibility patch with new front
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/964
2025-04-22 02:06:08 +09:00
Jaquan cd2696f6fd fix #946 InversedSwitch(Any) was not append outputs after first connect (#956)
InversedSwitch(Any) not increasing number of outputs after connecting first output  (in )
# 953  #946
In the latest ComfyUI_frontend version, output is not appended as expected
2025-04-12 19:01:00 +09:00
Dr.Lt.Data 66493d8cb4 formatting.. 2025-03-02 16:56:59 +09:00
Dr.Lt.Data b4fd0834e0 fixed: crash when loading api json
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/919
2025-03-02 16:54:16 +09:00
Dr.Lt.Data 5c530eb32e fixed: wildcards - cannot edit populated_text on 'fixed' mode
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/898
2025-01-30 16:55:01 +09:00
Dr.Lt.Data af1ef7e441 feat: wildcards nodes - reproduce mode is added.
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/882

fixed: js crash
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/886#issuecomment-2613922083

removed: combo bool migration script
2025-01-27 10:55:47 +09:00
Dr.Lt.Data d8738eee2f hotfix: front - robustness fix
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/886#issuecomment-2600716281
2025-01-19 18:08:59 +09:00
Dr.Lt.Data 12e838a320 improved: refresh wildcard
Now refresh feature is moved to menu item.
`Edit > Impact: Refresh Wildcard`
2025-01-06 22:59:33 +09:00
Dr.Lt.Data a311f9278d fixed: sam detector - invalid position
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/853
2024-12-19 23:06:49 +09:00
Andrés Zsögön 40a3df3acd Added Mask Rect Area and Mask Rect Area (Advanced) nodes (#861)
Added nodes for simple rectangular masks of arbitrary size and position with built-in preview canvas. Closes issue #856.
2024-12-19 22:02:40 +09:00
Dr.Lt.Data 1ec3037613 FIXED: wildcard, lora selector bug
from https://github.com/ltdrdata/ComfyUI-Impact-Pack/pull/838/files)

FIXED: SAM Detector
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/836
2024-11-30 22:48:00 +09:00
filtered d4136bc955 Prefer widget.callback over stack trace check (#838)
* Prefer widget.callback over stack trace check

Update to LiteGraph included a rename of a local function.  This value was being checked to prevent unwanted value sets.

This has been replaced with widget callback(), which for combo boxes is always called when a value is clicked, regardless of any change.

* nit

* Fix error caused by bug in litegraph

Known issue w/widget.callback and setter/getter.
2024-11-30 21:47:22 +09:00
Dr.Lt.Data 9c4fa5fb27 FIXED: switch any <-> inverse switch disconnection issue
https://github.com/ltdrdata/ComfyUI-extension-tutorials/issues/58#issuecomment-2415330114
2024-10-16 20:27:33 +09:00
Dr.Lt.Data 28267da071 fix: new front compatibilty issue
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/755
2024-09-25 09:36:06 +09:00
mijuku233 f428182ddf feat: MakeAnyList and AnyPipeToBasic (#753) 2024-09-24 21:53:23 +09:00
Dr.Lt.Data 44adbbe282 feat: ImpactMakeMaskList, ImpactMakeMaskBatch, MasksToMaskList, MaskListToMaskBatch, ImpactFlattenMask 2024-09-07 00:48:25 +09:00
Dr.Lt.Data 940ad41b15 fix: invalid patch on last commit 2024-09-05 02:12:11 +09:00
Dr.Lt.Data e848a9dfb7 fix: potential null-deref on impact-wildcard.js
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/731
2024-09-05 00:08:29 +09:00
Dr.Lt.Data 9ed160123d fix: controlbridge - invalid auto typing of output 2024-09-04 08:21:34 +09:00
Dr.Lt.Data 06b428ec8c feature: dynamic switch based on Execution Model Inversion. 2024-08-16 11:53:02 +09:00
Dr.Lt.Data caa1abbe7b support wildcard refresh in refresh button in new style menu 2024-07-04 00:20:23 +09:00
Dr.Lt.Data a26fe487ef fix: potential ui bug fix
- prevent freezing ui
2024-07-03 00:10:25 +09:00
Dr.Lt.Data 2e9b51640f fix: browser frozen when ultralytics dir isn't exists.
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/648#issuecomment-2188453263
2024-06-25 21:15:29 +09:00
Jin Liu c31b22537b fix: typo (#619) 2024-05-31 23:55:31 +09:00
Dr.Lt.Data e4e40ecc2d feat: wildcard refresh
refactor: move wildcard load function to wildcards.py

https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/492
2024-05-30 23:21:34 +09:00
Dr.Lt.Data a7076b3968 improve: ImageReceiver - supports ImpactInt for converted link_id
https://github.com/ltdrdata/ComfyUI-Impact-Pack/issues/578
2024-05-11 18:02:08 +09:00
Daniel LewisandDaniel Lewis 93a451de5b Fixed base path for img.src to allow ComfyUI in subfolders (#537)
* Fixed base path for img.src to allow ImpactPack to work when ComfyUI isn't at /

* Update impact-image-util.js

---------

Co-authored-by: Daniel Lewis <daniel.lewis@plailabs.com>
2024-04-23 00:59:47 +09:00