Gradio Blocks Python <-> JS / Svelte

When using the gradio.Blocks() interface to create an app, when are the app components injected into either the template (i.e., share.html or index.html)?

Trying to understand how Python communicates with JS / Svelte to create interactive frontend. From what I can tell, calling the launch method of a blocks interface creates a FastAPI app that serves a gradio template as the homepage which has a placeholder tag gradio-app for hydrating with the actual components.

However, having trouble identifying where the serialization of Python components to JS/Svelte components is happening within the codebase.