refactor: replace inject with useHideLayoutField

This commit is contained in:
Rizumu Ayaka
2026-01-24 10:40:08 +08:00
parent c38e0c2ffe
commit f03a89d3b3
5 changed files with 18 additions and 9 deletions

View File

@@ -14,6 +14,8 @@ import type { IBaseWidget } from '@/lib/litegraph/src/types/widgets'
import { useCanvasStore } from '@/renderer/core/canvas/canvasStore'
import PropertiesAccordionItem from '../layout/PropertiesAccordionItem.vue'
import { HideLayoutFieldKey } from '@/types/widgetTypes'
import { GetNodeParentGroupKey } from '../shared'
import WidgetItem from './WidgetItem.vue'
@@ -52,7 +54,7 @@ const rootElement = ref<HTMLElement>()
const widgets = shallowRef(widgetsProp)
watchEffect(() => (widgets.value = widgetsProp))
provide('hideLayoutField', true)
provide(HideLayoutFieldKey, true)
const canvasStore = useCanvasStore()
const { t } = useI18n()

View File

@@ -31,9 +31,10 @@
<script setup lang="ts">
import FloatLabel from 'primevue/floatlabel'
import Textarea from 'primevue/textarea'
import { computed, inject, useId } from 'vue'
import { computed, useId } from 'vue'
import type { SimplifiedWidget } from '@/types/simplifiedWidget'
import { useHideLayoutField } from '@/types/widgetTypes'
import { cn } from '@/utils/tailwindUtil'
import {
INPUT_EXCLUDED_PROPS,
@@ -49,7 +50,7 @@ const { widget, placeholder = '' } = defineProps<{
const modelValue = defineModel<string>({ default: '' })
const hideLayoutField = inject<boolean>('hideLayoutField', false)
const hideLayoutField = useHideLayoutField()
const filteredProps = computed(() =>
filterWidgetProps(widget.options, INPUT_EXCLUDED_PROPS)

View File

@@ -29,10 +29,11 @@
<script setup lang="ts">
import ToggleSwitch from 'primevue/toggleswitch'
import { computed, inject } from 'vue'
import { computed } from 'vue'
import type { IWidgetOptions } from '@/lib/litegraph/src/types/widgets'
import type { SimplifiedWidget } from '@/types/simplifiedWidget'
import { useHideLayoutField } from '@/types/widgetTypes'
import { cn } from '@/utils/tailwindUtil'
import {
STANDARD_EXCLUDED_PROPS,
@@ -47,7 +48,7 @@ const { widget } = defineProps<{
const modelValue = defineModel<boolean>()
const hideLayoutField = inject<boolean>('hideLayoutField', false)
const hideLayoutField = useHideLayoutField()
const filteredProps = computed(() =>
filterWidgetProps(widget.options, STANDARD_EXCLUDED_PROPS)

View File

@@ -1,7 +1,6 @@
<script setup lang="ts">
import { inject } from 'vue'
import type { SimplifiedWidget } from '@/types/simplifiedWidget'
import { useHideLayoutField } from '@/types/widgetTypes'
import { cn } from '@/utils/tailwindUtil'
defineProps<{
@@ -11,7 +10,7 @@ defineProps<{
>
}>()
const hideLayoutField = inject<boolean>('hideLayoutField', false)
const hideLayoutField = useHideLayoutField()
</script>
<template>

View File

@@ -1,5 +1,11 @@
import type { InjectionKey } from 'vue'
import { inject } from 'vue';
import type { InjectionKey } from 'vue';
export type AssetKind = 'image' | 'video' | 'audio' | 'model' | 'unknown'
export const OnCloseKey: InjectionKey<() => void> = Symbol()
export const HideLayoutFieldKey: InjectionKey<boolean> = Symbol()
export function useHideLayoutField(): boolean {
return inject(HideLayoutFieldKey, false)
}