@@ -887,26 +887,33 @@ export class ComfyApp {
887887 private updateVueAppNodeDefs ( defs : Record < string , ComfyNodeDefV1 > ) {
888888 // Frontend only nodes registered by custom nodes.
889889 // Example: https://github.com/rgthree/rgthree-comfy/blob/dd534e5384be8cf0c0fa35865afe2126ba75ac55/src_web/comfyui/fast_groups_bypasser.ts#L10
890- const rawDefs : Record < string , ComfyNodeDefV1 > = Object . fromEntries (
891- Object . entries ( LiteGraph . registered_node_types ) . map ( ( [ name , node ] ) => [
890+
891+ // Only create frontend_only definitions for nodes that don't have backend definitions
892+ const frontendOnlyDefs : Record < string , ComfyNodeDefV1 > = { }
893+ for ( const [ name , node ] of Object . entries (
894+ LiteGraph . registered_node_types
895+ ) ) {
896+ // Skip if we already have a backend definition or system definition
897+ if ( name in defs || name in SYSTEM_NODE_DEFS ) {
898+ continue
899+ }
900+
901+ frontendOnlyDefs [ name ] = {
892902 name,
893- {
894- name,
895- display_name : name ,
896- category : node . category || '__frontend_only__' ,
897- input : { required : { } , optional : { } } ,
898- output : [ ] ,
899- output_name : [ ] ,
900- output_is_list : [ ] ,
901- output_node : false ,
902- python_module : 'custom_nodes.frontend_only' ,
903- description : `Frontend only node for ${ name } `
904- } as ComfyNodeDefV1
905- ] )
906- )
903+ display_name : name ,
904+ category : node . category || '__frontend_only__' ,
905+ input : { required : { } , optional : { } } ,
906+ output : [ ] ,
907+ output_name : [ ] ,
908+ output_is_list : [ ] ,
909+ output_node : false ,
910+ python_module : 'custom_nodes.frontend_only' ,
911+ description : `Frontend only node for ${ name } `
912+ } as ComfyNodeDefV1
913+ }
907914
908915 const allNodeDefs = {
909- ...rawDefs ,
916+ ...frontendOnlyDefs ,
910917 ...defs ,
911918 ...SYSTEM_NODE_DEFS
912919 }
0 commit comments