@@ -336,11 +336,25 @@ class Combo(ComfyTypeIO):
336
336
class Input (WidgetInput ):
337
337
"""Combo input (dropdown)."""
338
338
Type = str
339
- def __init__ (self , id : str , options : list [str ]= None , display_name : str = None , optional = False , tooltip : str = None , lazy : bool = None ,
340
- default : str = None , control_after_generate : bool = None ,
341
- upload : UploadType = None , image_folder : FolderType = None ,
342
- remote : RemoteOptions = None ,
343
- socketless : bool = None ):
339
+ def __init__ (
340
+ self ,
341
+ id : str ,
342
+ options : list [str ] | list [int ] | type [Enum ] = None ,
343
+ display_name : str = None ,
344
+ optional = False ,
345
+ tooltip : str = None ,
346
+ lazy : bool = None ,
347
+ default : str | int | Enum = None ,
348
+ control_after_generate : bool = None ,
349
+ upload : UploadType = None ,
350
+ image_folder : FolderType = None ,
351
+ remote : RemoteOptions = None ,
352
+ socketless : bool = None ,
353
+ ):
354
+ if isinstance (options , type ) and issubclass (options , Enum ):
355
+ options = [v .value for v in options ]
356
+ if isinstance (default , Enum ):
357
+ default = default .value
344
358
super ().__init__ (id , display_name , optional , tooltip , lazy , default , socketless )
345
359
self .multiselect = False
346
360
self .options = options
0 commit comments