diff --git a/src/composables/graph/useGraphNodeManager.ts b/src/composables/graph/useGraphNodeManager.ts index 522c06ef1..4de069410 100644 --- a/src/composables/graph/useGraphNodeManager.ts +++ b/src/composables/graph/useGraphNodeManager.ts @@ -126,14 +126,6 @@ export function useGraphNodeManager(graph: LGraph): GraphNodeManager { // Extract safe widget data const slotMetadata = new Map() - node.inputs?.forEach((input, index) => { - if (!input?.widget?.name) return - slotMetadata.set(input.widget.name, { - index, - linked: input.link != null - }) - }) - const reactiveWidgets = shallowReactive(node.widgets ?? []) Object.defineProperty(node, 'widgets', { get() { @@ -144,8 +136,15 @@ export function useGraphNodeManager(graph: LGraph): GraphNodeManager { } }) - const safeWidgets = reactiveComputed( - () => + const safeWidgets = reactiveComputed(() => { + node.inputs?.forEach((input, index) => { + if (!input?.widget?.name) return + slotMetadata.set(input.widget.name, { + index, + linked: input.link != null + }) + }) + return ( node.widgets?.map((widget) => { try { // TODO: Use widget.getReactiveData() once TypeScript types are updated @@ -183,7 +182,8 @@ export function useGraphNodeManager(graph: LGraph): GraphNodeManager { } } }) ?? [] - ) + ) + }) const nodeType = node.type || diff --git a/src/renderer/extensions/vueNodes/components/NodeWidgets.vue b/src/renderer/extensions/vueNodes/components/NodeWidgets.vue index c36a232c7..8e4ed85e9 100644 --- a/src/renderer/extensions/vueNodes/components/NodeWidgets.vue +++ b/src/renderer/extensions/vueNodes/components/NodeWidgets.vue @@ -24,16 +24,17 @@