4
4
List ,
5
5
Dict ,
6
6
Tuple ,
7
+ Mapping ,
7
8
NamedTuple ,
8
9
Any ,
9
10
Set ,
@@ -145,16 +146,17 @@ async def _render_element(self, element_state: ElementState) -> Dict[str, Any]:
145
146
return element_state .model
146
147
147
148
async def _render_model (
148
- self , element_state : ElementState , model : Dict [str , Any ]
149
+ self , element_state : ElementState , model : Mapping [str , Any ]
149
150
) -> Dict [str , Any ]:
151
+ serialized_model : Dict [str , Any ] = {}
150
152
event_handlers = self ._render_model_event_targets (element_state , model )
151
153
if event_handlers :
152
- model ["eventHandlers" ] = event_handlers
154
+ serialized_model ["eventHandlers" ] = event_handlers
153
155
if "children" in model :
154
- model ["children" ] = await self ._render_model_children (
156
+ serialized_model ["children" ] = await self ._render_model_children (
155
157
element_state , model ["children" ]
156
158
)
157
- return model
159
+ return { ** model , ** serialized_model }
158
160
159
161
async def _render_model_children (
160
162
self , element_state : ElementState , children : Union [List [Any ], Tuple [Any , ...]]
@@ -176,7 +178,7 @@ async def _render_model_children(
176
178
return resolved_children
177
179
178
180
def _render_model_event_targets (
179
- self , element_state : ElementState , model : Dict [str , Any ]
181
+ self , element_state : ElementState , model : Mapping [str , Any ]
180
182
) -> Dict [str , EventTarget ]:
181
183
handlers : Dict [str , EventHandler ] = {}
182
184
if "eventHandlers" in model :
0 commit comments