Hide/show format-specific widgets (CRF, bitrate, ProRes profile, GIF dither,
pixel format, webp settings) based on selected save_format. Pixel format combo
updates dynamically per codec. Remove hardcoded ffv1 pix_fmt to use widget value.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Named channels allow PreviewToLoad to send images to a shared channel
(stored in channels.json) that ImageReceiver nodes can read from,
enabling cross-workflow image passing without brittle node IDs.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
JS extension auto-creates LiteGraph links between consecutive
passthrough nodes based on their order widget (1→2→3→4), hiding
the wait_for input and drawing visual chain lines between nodes.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The actual fix was setting slot.label alongside slot.name. The
info.outputs approach was wrong (it always contains Python defaults).
Widget values were being restored correctly all along.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Read output names from info.outputs (serialized node data) instead of
hidden widget values, which ComfyUI may not persist across reloads.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Defer removal of the 32 default Python outputs from onNodeCreated using
queueMicrotask so they remain available during graph loading. ComfyUI
creates all nodes before configuring them, and nodes like Kijai's SetNode
resolve links during their configure step — if outputs were already
removed, the resolution failed with "node input undefined". The deferred
cleanup only runs for new nodes; loaded workflows set _configured=true
in onConfigure first. Also adds a fallback to sync widget values from
serialized outputs when widget restoration fails.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
When the file at json_path didn't exist, clicking Refresh Outputs
returned empty keys causing all outputs and links to be removed.
Now the API returns an error flag and the frontend bails out early,
preserving existing outputs.
Bump version to 1.2.1.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Previews an image (like PreviewImage) and saves a copy to input/ so a
LoadImage node can reference it. JS extension adds a target-node-ID
widget and "Send to Load Image" button that updates the target's combo.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Auto-discovers JSON keys and exposes them as typed output slots.
Includes JS frontend for refresh, connection-safe updates, and
workflow persistence of keys and types.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>