mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-02-03 06:47:33 +00:00
- Add proper type guards for all widget input specs (Color, TreeSelect, MultiSelect, FileUpload, Galleria) - Enhance schemas with missing properties (format, placeholder, accept, extensions, tooltip) - Fix widgets to honor runtime props like disabled while accessing spec metadata - Eliminate all 'as any' usage in widget components with proper TypeScript types - Clean separation: widget.spec.options for metadata, widget.options for runtime state - Refactor devtools into modular structure with vue_widgets showcase nodes
124 lines
3.4 KiB
Python
124 lines
3.4 KiB
Python
from __future__ import annotations
|
|
|
|
from .errors import (
|
|
DeprecatedNode,
|
|
ErrorRaiseNode,
|
|
ErrorRaiseNodeWithMessage,
|
|
ExperimentalNode,
|
|
NODE_CLASS_MAPPINGS as errors_class_mappings,
|
|
NODE_DISPLAY_NAME_MAPPINGS as errors_display_name_mappings,
|
|
)
|
|
from .inputs import (
|
|
LongComboDropdown,
|
|
NodeWithBooleanInput,
|
|
NodeWithDefaultInput,
|
|
NodeWithForceInput,
|
|
NodeWithOptionalComboInput,
|
|
NodeWithOptionalInput,
|
|
NodeWithOnlyOptionalInput,
|
|
NodeWithOutputList,
|
|
NodeWithSeedInput,
|
|
NodeWithStringInput,
|
|
NodeWithUnionInput,
|
|
NodeWithValidation,
|
|
NodeWithV2ComboInput,
|
|
SimpleSlider,
|
|
NODE_CLASS_MAPPINGS as inputs_class_mappings,
|
|
NODE_DISPLAY_NAME_MAPPINGS as inputs_display_name_mappings,
|
|
)
|
|
from .models import (
|
|
DummyPatch,
|
|
LoadAnimatedImageTest,
|
|
ObjectPatchNode,
|
|
NODE_CLASS_MAPPINGS as models_class_mappings,
|
|
NODE_DISPLAY_NAME_MAPPINGS as models_display_name_mappings,
|
|
)
|
|
from .remote import (
|
|
MultiSelectNode,
|
|
NodeWithOutputCombo,
|
|
RemoteWidgetNode,
|
|
RemoteWidgetNodeWithControlAfterRefresh,
|
|
RemoteWidgetNodeWithParams,
|
|
RemoteWidgetNodeWithRefresh,
|
|
RemoteWidgetNodeWithRefreshButton,
|
|
NODE_CLASS_MAPPINGS as remote_class_mappings,
|
|
NODE_DISPLAY_NAME_MAPPINGS as remote_display_name_mappings,
|
|
)
|
|
from .vue_widgets import (
|
|
VueAudioPreviewComboNode,
|
|
VueAudioRecordWidgetNode,
|
|
VueChartWidgetNode,
|
|
VueColorWidgetNode,
|
|
VueFileUploadWidgetNode,
|
|
VueGalleriaWidgetNode,
|
|
VueImageCompareWidgetNode,
|
|
VueMarkdownWidgetNode,
|
|
VueSelectButtonWidgetNode,
|
|
VueTextareaWidgetNode,
|
|
VueTreeSelectMultiWidgetNode,
|
|
VueTreeSelectWidgetNode,
|
|
NODE_CLASS_MAPPINGS as vue_widgets_class_mappings,
|
|
NODE_DISPLAY_NAME_MAPPINGS as vue_widgets_display_name_mappings,
|
|
)
|
|
|
|
NODE_CLASS_MAPPINGS = {
|
|
**errors_class_mappings,
|
|
**inputs_class_mappings,
|
|
**remote_class_mappings,
|
|
**models_class_mappings,
|
|
**vue_widgets_class_mappings,
|
|
}
|
|
|
|
NODE_DISPLAY_NAME_MAPPINGS = {
|
|
**errors_display_name_mappings,
|
|
**inputs_display_name_mappings,
|
|
**remote_display_name_mappings,
|
|
**models_display_name_mappings,
|
|
**vue_widgets_display_name_mappings,
|
|
}
|
|
|
|
__all__ = [
|
|
"DeprecatedNode",
|
|
"DummyPatch",
|
|
"ErrorRaiseNode",
|
|
"ErrorRaiseNodeWithMessage",
|
|
"ExperimentalNode",
|
|
"LoadAnimatedImageTest",
|
|
"LongComboDropdown",
|
|
"MultiSelectNode",
|
|
"NodeWithBooleanInput",
|
|
"NodeWithDefaultInput",
|
|
"NodeWithForceInput",
|
|
"NodeWithOptionalComboInput",
|
|
"NodeWithOptionalInput",
|
|
"NodeWithOnlyOptionalInput",
|
|
"NodeWithOutputCombo",
|
|
"NodeWithOutputList",
|
|
"NodeWithSeedInput",
|
|
"NodeWithStringInput",
|
|
"NodeWithUnionInput",
|
|
"NodeWithValidation",
|
|
"NodeWithV2ComboInput",
|
|
"ObjectPatchNode",
|
|
"RemoteWidgetNode",
|
|
"RemoteWidgetNodeWithControlAfterRefresh",
|
|
"RemoteWidgetNodeWithParams",
|
|
"RemoteWidgetNodeWithRefresh",
|
|
"RemoteWidgetNodeWithRefreshButton",
|
|
"SimpleSlider",
|
|
"VueAudioPreviewComboNode",
|
|
"VueAudioRecordWidgetNode",
|
|
"VueChartWidgetNode",
|
|
"VueColorWidgetNode",
|
|
"VueFileUploadWidgetNode",
|
|
"VueGalleriaWidgetNode",
|
|
"VueImageCompareWidgetNode",
|
|
"VueMarkdownWidgetNode",
|
|
"VueSelectButtonWidgetNode",
|
|
"VueTextareaWidgetNode",
|
|
"VueTreeSelectMultiWidgetNode",
|
|
"VueTreeSelectWidgetNode",
|
|
"NODE_CLASS_MAPPINGS",
|
|
"NODE_DISPLAY_NAME_MAPPINGS",
|
|
]
|