mirror of
https://github.com/comfyanonymous/ComfyUI.git
synced 2025-12-16 09:42:29 +08:00
* Added output_matchtypes to generated json for v3, initial backend support for MatchType, created nodes_logic.py and added SwitchNode * Fixed providing list of allowed_types * Add workaround in validation.py for V3 Combo outputs not working as Combo inputs * Make match type receive_type pass validation * Also add MatchType check to input_type in validation - will likely trigger when connecting to non-lazy stuff * Make sure this PR only has MatchType stuff * Initial work on DynamicCombo * Add get_dynamic function, not yet filled out correctly * Mark Switch node as Beta * Make sure other unfinished dynamic types are not accidentally used * Send DynamicCombo.Option inputs in the same format as normal v1 inputs * add dynamic combo test node * Support validation of inputs and outputs * Add missing input params to DynamicCombo.Input * Add get_all function to inputs for id validation purposes * Fix imports for v3 returning everything when doing io/ui/IO/UI instead of what is in __all__ of _io.py and _ui.py * Modifying behavior of get_dynamic in V3 + serialization so can be used in execution code * Fix v3 schema validation code after changes * Refactor hidden_values for v3 in execution.py to be more general v3_data, add helper functions for dynamic behavior, preparing for restructuring dynamic type into object (not finished yet) * Add nesting of inputs on DynamicCombo during execution * Work with latest frontend commits * Fix cringe arrows * frontend will no longer namespace dynamic inputs widgets so reflect that in code, refactor build_nested_inputs * Prepare Autogrow support for the love of the game * satisfy ruff * Create test nodes for Autogrow to collab with frontend development * Add nested combo to DCTestNode * Remove array support from build_nested_inputs, properly handle missing expected values * Make execution.validate_inputs properly validate required dynamic inputs, renamed dynamic_data to dynamic_paths for clarity * MatchType does not need any DynamicInput/Output features on backend; will increase compatibility with dynamic types * Probably need this for ruff check * Change MatchType to have template be the first and only required param; output id's do nothing right now, so no need * Fix merge regression with LatentUpscaleModel type not being put in __all__ for _io.py, fix invalid type hint for validate_inputs * Make Switch node inputs optional, disallow both inputs from being missing, and still work properly with lazy; when one input is missing, use the other no matter what the switch is set to * Satisfy ruff * Move MatchType code above the types that inherit from DynamicInput * Add DynamicSlot type, awaiting frontend support * Make curr_prefix creation happen in Autogrow, move curr_prefix in DynamicCombo to only be created if input exists in live_inputs * I was confused, fixing accidentally redundant curr_prefix addition in Autogrow * Make sure Autogrow inputs are force_input = True when WidgetInput, fix runtime validation by removing original input from expected inputs, fix min/max bounds, change test nodes slightly * Remove unnecessary id usage in Autogrow test node outputs * Commented out Switch node + test nodes * Remove commented out code from Autogrow * Make TemplatePrefix max more clear, allow max == 1 * Replace all dict[str] with dict[str, Any] * Renamed add_to_dict_live_inputs to expand_schema_for_dynamic * Fixed typo in DynamicSlot input code * note about live_inputs not being present soon in get_v1_info (internal function anyway) * For now, hide DynamicCombo and Autogrow from public interface * Removed comment |
||
|---|---|---|
| .. | ||
| chainner_models | ||
| nodes_ace.py | ||
| nodes_advanced_samplers.py | ||
| nodes_align_your_steps.py | ||
| nodes_apg.py | ||
| nodes_attention_multiply.py | ||
| nodes_audio_encoder.py | ||
| nodes_audio.py | ||
| nodes_camera_trajectory.py | ||
| nodes_canny.py | ||
| nodes_cfg.py | ||
| nodes_chroma_radiance.py | ||
| nodes_clip_sdxl.py | ||
| nodes_compositing.py | ||
| nodes_cond.py | ||
| nodes_context_windows.py | ||
| nodes_controlnet.py | ||
| nodes_cosmos.py | ||
| nodes_custom_sampler.py | ||
| nodes_dataset.py | ||
| nodes_differential_diffusion.py | ||
| nodes_easycache.py | ||
| nodes_edit_model.py | ||
| nodes_eps.py | ||
| nodes_flux.py | ||
| nodes_freelunch.py | ||
| nodes_fresca.py | ||
| nodes_gits.py | ||
| nodes_hidream.py | ||
| nodes_hooks.py | ||
| nodes_hunyuan3d.py | ||
| nodes_hunyuan.py | ||
| nodes_hypernetwork.py | ||
| nodes_hypertile.py | ||
| nodes_images.py | ||
| nodes_ip2p.py | ||
| nodes_latent.py | ||
| nodes_load_3d.py | ||
| nodes_logic.py | ||
| nodes_lora_extract.py | ||
| nodes_lotus.py | ||
| nodes_lt.py | ||
| nodes_lumina2.py | ||
| nodes_mahiro.py | ||
| nodes_mask.py | ||
| nodes_mochi.py | ||
| nodes_model_advanced.py | ||
| nodes_model_downscale.py | ||
| nodes_model_merging_model_specific.py | ||
| nodes_model_merging.py | ||
| nodes_model_patch.py | ||
| nodes_morphology.py | ||
| nodes_nop.py | ||
| nodes_optimalsteps.py | ||
| nodes_pag.py | ||
| nodes_perpneg.py | ||
| nodes_photomaker.py | ||
| nodes_pixart.py | ||
| nodes_post_processing.py | ||
| nodes_preview_any.py | ||
| nodes_primitive.py | ||
| nodes_qwen.py | ||
| nodes_rebatch.py | ||
| nodes_rope.py | ||
| nodes_sag.py | ||
| nodes_sd3.py | ||
| nodes_sdupscale.py | ||
| nodes_slg.py | ||
| nodes_stable3d.py | ||
| nodes_stable_cascade.py | ||
| nodes_string.py | ||
| nodes_tcfg.py | ||
| nodes_tomesd.py | ||
| nodes_torch_compile.py | ||
| nodes_train.py | ||
| nodes_upscale_model.py | ||
| nodes_video_model.py | ||
| nodes_video.py | ||
| nodes_wan.py | ||
| nodes_webcam.py | ||