# `AshUi.Phoenix.LiveRender`
[🔗](https://github.com/hyperbob-labs/ash_ui/blob/main/lib/ash_ui/phoenix/live_render.ex#L1)

Transport shim: `AshUi.Render` emits the one render algebra
(`AshUi.Rendered`/`AshUi.Comprehension`, LiveView-shape by
contract); this module converts it — lazily, closure by closure — into
the `Phoenix.LiveView.Rendered` structs LiveView's own diff engine
consumes. No emission logic lives here.

# `build`

```elixir
@spec build(struct(), :all | MapSet.t(), keyword()) :: Phoenix.LiveView.Rendered.t()
```

Build the root `Phoenix.LiveView.Rendered` for `record` from its
resource's patch table. Same contract as `AshUi.Render.build/3`,
pinned to the Phoenix render target.

# `to_live`

Lazy conversion of the core render algebra into LiveView structs:
dynamics stay closures, so the cost is O(invoked region) per render.
Public so oracle tests can feed core-emitted structures through the
native LiveView diff engine.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
