# `MingaEditor.Renderer.ReceiptProjection`
[🔗](https://github.com/jsmestad/minga/blob/main/lib/minga_editor/renderer/receipt_projection.ex#L1)

Pure projection of an accepted renderer receipt onto Editor-owned values.

Correlation and shell-identity acceptance stay at the root transition. This
module projects only the already-accepted layout, focus, click-region, and
window observations through their focused value owners.

# `result`

```elixir
@type result() ::
  {MingaEditor.Session.State.t(), MingaEditor.Shell.Runtime.t(),
   MingaEditor.State.Render.t()}
```

Projected root values produced by one accepted receipt.

# `project`

```elixir
@spec project(
  MingaEditor.Session.State.t(),
  MingaEditor.Shell.Runtime.t(),
  MingaEditor.State.Render.t(),
  MingaEditor.Renderer.RenderReceipt.t(),
  MingaEditor.State.RenderCorrelation.t()
) :: result()
```

Projects one accepted receipt through workspace, shell, and render owners.

---

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