refactor: use emit events pattern instead of mutating props in widget components (#8549)

This commit is contained in:
Johnpaul Chiwetelu
2026-02-03 11:21:14 +01:00
committed by GitHub
parent f9af2cc4bd
commit b2c8ea3e50
4 changed files with 28 additions and 6 deletions

View File

@@ -8,6 +8,7 @@ import Tab from '@/components/tab/Tab.vue'
import TabList from '@/components/tab/TabList.vue'
import Button from '@/components/ui/button/Button.vue'
import { useGraphHierarchy } from '@/composables/graph/useGraphHierarchy'
import type { ProxyWidgetsProperty } from '@/core/schemas/proxyWidget'
import { st } from '@/i18n'
import { SubgraphNode } from '@/lib/litegraph/src/litegraph'
import type { LGraphNode } from '@/lib/litegraph/src/litegraph'
@@ -190,6 +191,12 @@ function handleTitleEdit(newTitle: string) {
function handleTitleCancel() {
isEditing.value = false
}
function handleProxyWidgetsUpdate(value: ProxyWidgetsProperty) {
if (!selectedSingleNode.value) return
;(selectedSingleNode.value as SubgraphNode).properties.proxyWidgets = value
canvasStore.canvas?.setDirty(true, true)
}
</script>
<template>
@@ -283,6 +290,7 @@ function handleTitleCancel() {
<TabSubgraphInputs
v-if="activeTab === 'parameters' && isSingleSubgraphNode"
:node="selectedSingleNode as SubgraphNode"
@update:proxy-widgets="handleProxyWidgetsUpdate"
/>
<TabNormalInputs
v-else-if="activeTab === 'parameters'"