diff --git a/src/renderer/extensions/vueNodes/widgets/composables/useFileUploadWidget.ts b/src/renderer/extensions/vueNodes/widgets/composables/useFileUploadWidget.ts deleted file mode 100644 index b6c61753f..000000000 --- a/src/renderer/extensions/vueNodes/widgets/composables/useFileUploadWidget.ts +++ /dev/null @@ -1,20 +0,0 @@ -import type { LGraphNode } from '@/lib/litegraph/src/litegraph' -import type { IFileUploadWidget } from '@/lib/litegraph/src/types/widgets' -import type { - FileUploadInputSpec, - InputSpec as InputSpecV2 -} from '@/schemas/nodeDef/nodeDefSchemaV2' -import type { ComfyWidgetConstructorV2 } from '@/scripts/widgets' - -export const useFileUploadWidget = (): ComfyWidgetConstructorV2 => { - return (node: LGraphNode, inputSpec: InputSpecV2): IFileUploadWidget => { - const { name, options = {} } = inputSpec as FileUploadInputSpec - - const widget = node.addWidget('fileupload', name, '', () => {}, { - serialize: true, - ...(options as Record) - }) as IFileUploadWidget - - return widget - } -} diff --git a/src/renderer/extensions/vueNodes/widgets/composables/useMultiSelectWidget.ts b/src/renderer/extensions/vueNodes/widgets/composables/useMultiSelectWidget.ts deleted file mode 100644 index 2730115b7..000000000 --- a/src/renderer/extensions/vueNodes/widgets/composables/useMultiSelectWidget.ts +++ /dev/null @@ -1,21 +0,0 @@ -import type { LGraphNode } from '@/lib/litegraph/src/litegraph' -import type { IMultiSelectWidget } from '@/lib/litegraph/src/types/widgets' -import type { - InputSpec as InputSpecV2, - MultiSelectInputSpec -} from '@/schemas/nodeDef/nodeDefSchemaV2' -import type { ComfyWidgetConstructorV2 } from '@/scripts/widgets' - -export const useMultiSelectWidget = (): ComfyWidgetConstructorV2 => { - return (node: LGraphNode, inputSpec: InputSpecV2): IMultiSelectWidget => { - const { name, options = {} } = inputSpec as MultiSelectInputSpec - - const widget = node.addWidget('multiselect', name, [], () => {}, { - serialize: true, - values: options.values || [], - ...options - }) as IMultiSelectWidget - - return widget - } -} diff --git a/src/renderer/extensions/vueNodes/widgets/composables/useSelectButtonWidget.ts b/src/renderer/extensions/vueNodes/widgets/composables/useSelectButtonWidget.ts deleted file mode 100644 index f9c3af9aa..000000000 --- a/src/renderer/extensions/vueNodes/widgets/composables/useSelectButtonWidget.ts +++ /dev/null @@ -1,28 +0,0 @@ -import type { LGraphNode } from '@/lib/litegraph/src/litegraph' -import type { ISelectButtonWidget } from '@/lib/litegraph/src/types/widgets' -import type { - InputSpec as InputSpecV2, - SelectButtonInputSpec -} from '@/schemas/nodeDef/nodeDefSchemaV2' -import type { ComfyWidgetConstructorV2 } from '@/scripts/widgets' - -export const useSelectButtonWidget = (): ComfyWidgetConstructorV2 => { - return (node: LGraphNode, inputSpec: InputSpecV2): ISelectButtonWidget => { - const { name, options = {} } = inputSpec as SelectButtonInputSpec - const values = options.values || [] - - const widget = node.addWidget( - 'selectbutton', - name, - values[0] || '', - (_value: string) => {}, - { - serialize: true, - values, - ...options - } - ) as ISelectButtonWidget - - return widget - } -} diff --git a/src/renderer/extensions/vueNodes/widgets/composables/useTreeSelectWidget.ts b/src/renderer/extensions/vueNodes/widgets/composables/useTreeSelectWidget.ts deleted file mode 100644 index b497e9ae0..000000000 --- a/src/renderer/extensions/vueNodes/widgets/composables/useTreeSelectWidget.ts +++ /dev/null @@ -1,24 +0,0 @@ -import type { LGraphNode } from '@/lib/litegraph/src/litegraph' -import type { ITreeSelectWidget } from '@/lib/litegraph/src/types/widgets' -import type { - InputSpec as InputSpecV2, - TreeSelectInputSpec -} from '@/schemas/nodeDef/nodeDefSchemaV2' -import type { ComfyWidgetConstructorV2 } from '@/scripts/widgets' - -export const useTreeSelectWidget = (): ComfyWidgetConstructorV2 => { - return (node: LGraphNode, inputSpec: InputSpecV2): ITreeSelectWidget => { - const { name, options = {} } = inputSpec as TreeSelectInputSpec - const isMultiple = options.multiple || false - const defaultValue = isMultiple ? [] : '' - - const widget = node.addWidget('treeselect', name, defaultValue, () => {}, { - serialize: true, - values: options.values || [], - multiple: isMultiple, - ...options - }) as ITreeSelectWidget - - return widget - } -} diff --git a/src/schemas/nodeDef/nodeDefSchemaV2.ts b/src/schemas/nodeDef/nodeDefSchemaV2.ts index 09983d115..9e319c163 100644 --- a/src/schemas/nodeDef/nodeDefSchemaV2.ts +++ b/src/schemas/nodeDef/nodeDefSchemaV2.ts @@ -50,13 +50,6 @@ const zColorInputSpec = zBaseInputOptions.extend({ .optional() }) -const zFileUploadInputSpec = zBaseInputOptions.extend({ - type: z.literal('FILEUPLOAD'), - name: z.string(), - isOptional: z.boolean().optional(), - options: z.record(z.unknown()).optional() -}) - const zImageInputSpec = zBaseInputOptions.extend({ type: z.literal('IMAGE'), name: z.string(), @@ -82,29 +75,6 @@ const zMarkdownInputSpec = zBaseInputOptions.extend({ .optional() }) -const zTreeSelectInputSpec = zBaseInputOptions.extend({ - type: z.literal('TREESELECT'), - name: z.string(), - isOptional: z.boolean().optional(), - options: z - .object({ - multiple: z.boolean().optional(), - values: z.array(z.unknown()).optional() - }) - .optional() -}) - -const zMultiSelectInputSpec = zBaseInputOptions.extend({ - type: z.literal('MULTISELECT'), - name: z.string(), - isOptional: z.boolean().optional(), - options: z - .object({ - values: z.array(z.string()).optional() - }) - .optional() -}) - const zChartInputSpec = zBaseInputOptions.extend({ type: z.literal('CHART'), name: z.string(), @@ -128,17 +98,6 @@ const zGalleriaInputSpec = zBaseInputOptions.extend({ .optional() }) -const zSelectButtonInputSpec = zBaseInputOptions.extend({ - type: z.literal('SELECTBUTTON'), - name: z.string(), - isOptional: z.boolean().optional(), - options: z - .object({ - values: z.array(z.string()).optional() - }) - .optional() -}) - const zTextareaInputSpec = zBaseInputOptions.extend({ type: z.literal('TEXTAREA'), name: z.string(), @@ -165,15 +124,11 @@ const zInputSpec = z.union([ zStringInputSpec, zComboInputSpec, zColorInputSpec, - zFileUploadInputSpec, zImageInputSpec, zImageCompareInputSpec, zMarkdownInputSpec, - zTreeSelectInputSpec, - zMultiSelectInputSpec, zChartInputSpec, zGalleriaInputSpec, - zSelectButtonInputSpec, zTextareaInputSpec, zCustomInputSpec ]) @@ -213,13 +168,9 @@ type BooleanInputSpec = z.infer type StringInputSpec = z.infer export type ComboInputSpec = z.infer export type ColorInputSpec = z.infer -export type FileUploadInputSpec = z.infer export type ImageCompareInputSpec = z.infer -export type TreeSelectInputSpec = z.infer -export type MultiSelectInputSpec = z.infer export type ChartInputSpec = z.infer export type GalleriaInputSpec = z.infer -export type SelectButtonInputSpec = z.infer export type TextareaInputSpec = z.infer export type CustomInputSpec = z.infer diff --git a/src/scripts/utils.ts b/src/scripts/utils.ts index a1bcc3d89..26327f6cb 100644 --- a/src/scripts/utils.ts +++ b/src/scripts/utils.ts @@ -51,7 +51,6 @@ export async function addStylesheet( }) } -/** @knipIgnoreUnusedButUsedByCustomNodes */ export { downloadBlob } from '@/base/common/downloadUtil' export function uploadFile(accept: string) { diff --git a/src/scripts/widgets.ts b/src/scripts/widgets.ts index dd75081af..f2bd9e12d 100644 --- a/src/scripts/widgets.ts +++ b/src/scripts/widgets.ts @@ -10,18 +10,14 @@ import { useBooleanWidget } from '@/renderer/extensions/vueNodes/widgets/composa import { useChartWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useChartWidget' import { useColorWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useColorWidget' import { useComboWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useComboWidget' -import { useFileUploadWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useFileUploadWidget' import { useFloatWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useFloatWidget' import { useGalleriaWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useGalleriaWidget' import { useImageCompareWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useImageCompareWidget' import { useImageUploadWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useImageUploadWidget' import { useIntWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useIntWidget' import { useMarkdownWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useMarkdownWidget' -import { useMultiSelectWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useMultiSelectWidget' -import { useSelectButtonWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useSelectButtonWidget' import { useStringWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useStringWidget' import { useTextareaWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useTextareaWidget' -import { useTreeSelectWidget } from '@/renderer/extensions/vueNodes/widgets/composables/useTreeSelectWidget' import { transformInputSpecV1ToV2 } from '@/schemas/nodeDef/migration' import type { InputSpec as InputSpecV2 } from '@/schemas/nodeDef/nodeDefSchemaV2' import type { InputSpec } from '@/schemas/nodeDefSchema' @@ -296,13 +292,9 @@ export const ComfyWidgets: Record = { MARKDOWN: transformWidgetConstructorV2ToV1(useMarkdownWidget()), COMBO: transformWidgetConstructorV2ToV1(useComboWidget()), IMAGEUPLOAD: useImageUploadWidget(), - FILEUPLOAD: transformWidgetConstructorV2ToV1(useFileUploadWidget()), COLOR: transformWidgetConstructorV2ToV1(useColorWidget()), IMAGECOMPARE: transformWidgetConstructorV2ToV1(useImageCompareWidget()), - TREESELECT: transformWidgetConstructorV2ToV1(useTreeSelectWidget()), - MULTISELECT: transformWidgetConstructorV2ToV1(useMultiSelectWidget()), CHART: transformWidgetConstructorV2ToV1(useChartWidget()), GALLERIA: transformWidgetConstructorV2ToV1(useGalleriaWidget()), - SELECTBUTTON: transformWidgetConstructorV2ToV1(useSelectButtonWidget()), TEXTAREA: transformWidgetConstructorV2ToV1(useTextareaWidget()) }