diff --git a/src/composables/widgets/useFloatWidget.ts b/src/composables/widgets/useFloatWidget.ts index 2000a8117..e4c1f06d4 100644 --- a/src/composables/widgets/useFloatWidget.ts +++ b/src/composables/widgets/useFloatWidget.ts @@ -38,11 +38,13 @@ export const useFloatWidget = () => { const sliderEnabled = !settingStore.get('Comfy.DisableSliders') const inputOptions = inputData[1] ?? {} - const widgetType = sliderEnabled - ? inputOptions.display === 'slider' + const display_type = inputOptions?.display + const widgetType = + sliderEnabled && display_type == 'slider' ? 'slider' - : 'number' - : 'number' + : display_type == 'knob' + ? 'knob' + : 'number' const step = inputOptions.step ?? 0.5 const precision = diff --git a/src/composables/widgets/useIntWidget.ts b/src/composables/widgets/useIntWidget.ts index 52f9691bc..255ab4925 100644 --- a/src/composables/widgets/useIntWidget.ts +++ b/src/composables/widgets/useIntWidget.ts @@ -47,11 +47,13 @@ export const useIntWidget = () => { const settingStore = useSettingStore() const sliderEnabled = !settingStore.get('Comfy.DisableSliders') const inputOptions = inputData[1] ?? {} - const widgetType = sliderEnabled - ? inputOptions?.display === 'slider' + const display_type = inputOptions?.display + const widgetType = + sliderEnabled && display_type == 'slider' ? 'slider' - : 'number' - : 'number' + : display_type == 'knob' + ? 'knob' + : 'number' const step = inputOptions.step ?? 1 const defaultValue = inputOptions.default ?? 0 diff --git a/src/schemas/nodeDefSchema.ts b/src/schemas/nodeDefSchema.ts index a3e8cb03b..c00f983da 100644 --- a/src/schemas/nodeDefSchema.ts +++ b/src/schemas/nodeDefSchema.ts @@ -32,7 +32,7 @@ const zNumericInputOptions = zBaseInputOptions.extend({ step: z.number().optional(), // Note: Many node authors are using INT/FLOAT to pass list of INT/FLOAT. default: z.union([z.number(), z.array(z.number())]).optional(), - display: z.enum(['slider', 'number']).optional() + display: z.enum(['slider', 'number', 'knob']).optional() }) const zIntInputOptions = zNumericInputOptions.extend({