@@ -375,30 +375,35 @@ def _reconcile_node(self, existing, vnode, instance_id: str):
375375 if existing_component_id is not None and existing_component_id != component_id :
376376 self ._invoke_component_will_unmount (existing )
377377 existing = None
378- result = self ._reconcile_node (existing , rendered , instance_id )
379- if result is not None and getattr (rendered , "_suspended_by" , None ):
380- result ._suspended_by = rendered ._suspended_by
381- if result is not None and callable (vnode .type ):
382- result ._component_type = vnode .type
383- component_props_id = component_id if component_id is not None else ""
384- result ._component_props = _safe_copy (self ._devtools_prop_overrides .get (component_props_id , vnode .props ))
385- if getattr (result , "_component_instance_id" , None ) is None :
386- result ._component_instance_id = component_id
387- if getattr (result , "_class_instance" , None ) is None and getattr (rendered , "_class_instance" , None ) is not None :
388- result ._class_instance = rendered ._class_instance
389- owner_infos = list (getattr (result , "_owner_infos" , []))
390- owner_infos .insert (
391- 0 ,
392- self ._make_owner_info (
393- vnode .type ,
394- component_id ,
395- result ._component_props ,
396- class_instance = getattr (rendered , "_class_instance" , None ),
397- ),
398- )
399- result ._owner_infos = owner_infos
400- if getattr (rendered , "_suspended_by" , None ):
401- result ._suspended_by = rendered ._suspended_by
378+ result = self ._reconcile_node (existing , rendered , instance_id )
379+ if result is None :
380+ return None
381+ if getattr (rendered , "_suspended_by" , None ):
382+ result ._suspended_by = rendered ._suspended_by
383+ if callable (vnode .type ):
384+ result ._component_type = vnode .type
385+ component_props_id = component_id if component_id is not None else ""
386+ component_props = self ._devtools_prop_overrides .get (component_props_id , vnode .props )
387+ result ._component_props = _safe_copy (component_props )
388+ if getattr (result , "_component_props" , None ) is None :
389+ result ._component_props = _safe_copy (vnode .props )
390+ if getattr (result , "_component_instance_id" , None ) is None :
391+ result ._component_instance_id = component_id
392+ if getattr (result , "_class_instance" , None ) is None and getattr (rendered , "_class_instance" , None ) is not None :
393+ result ._class_instance = rendered ._class_instance
394+ owner_infos = list (getattr (result , "_owner_infos" , []))
395+ owner_infos .insert (
396+ 0 ,
397+ self ._make_owner_info (
398+ vnode .type ,
399+ component_id ,
400+ result ._component_props ,
401+ class_instance = getattr (rendered , "_class_instance" , None ),
402+ ),
403+ )
404+ result ._owner_infos = owner_infos
405+ if getattr (rendered , "_suspended_by" , None ):
406+ result ._suspended_by = rendered ._suspended_by
402407 return result
403408 if isinstance (vnode .type , str ):
404409 parent = getattr (existing , "parentNode" , None )
0 commit comments