mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-04-30 11:11:53 +00:00
[fix] Fix link input slots not being updated in subgraphs (#4575)
This commit is contained in:
@@ -153,7 +153,10 @@ export function migrateWidgetsValues<TWidgetValue>(
|
|||||||
* @param graph - The graph to fix links for.
|
* @param graph - The graph to fix links for.
|
||||||
*/
|
*/
|
||||||
export function fixLinkInputSlots(graph: LGraph) {
|
export function fixLinkInputSlots(graph: LGraph) {
|
||||||
|
// Note: We can't use forEachNode here because we need access to the graph's
|
||||||
|
// links map at each level. Links are stored in their respective graph/subgraph.
|
||||||
for (const node of graph.nodes) {
|
for (const node of graph.nodes) {
|
||||||
|
// Fix links for the current node
|
||||||
for (const [inputIndex, input] of node.inputs.entries()) {
|
for (const [inputIndex, input] of node.inputs.entries()) {
|
||||||
const linkId = input.link
|
const linkId = input.link
|
||||||
if (!linkId) continue
|
if (!linkId) continue
|
||||||
@@ -163,6 +166,11 @@ export function fixLinkInputSlots(graph: LGraph) {
|
|||||||
|
|
||||||
link.target_slot = inputIndex
|
link.target_slot = inputIndex
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Recursively fix links in subgraphs
|
||||||
|
if (node.isSubgraphNode?.() && node.subgraph) {
|
||||||
|
fixLinkInputSlots(node.subgraph)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user