# `LivePanels.Item.View`
[🔗](https://github.com/livepanels/livepanels/blob/v0.1.0/lib/livepanels/item/view.ex#L1)

Application-facing read model for a rendered canvas item.

`LivePanels.Item` is the canonical state record. `Item.View` is the
derived render helper available from `LivePanels.Item.RenderContext.view`; it
collects the capability decisions an application commonly needs to draw a frame or
branch on content behavior without duplicating the canonical item record.

This module does not introduce a second item model. `LivePanels.Item` exposes the
app-facing identity, geometry, props, and capabilities directly; `t()` is the
companion for render-only decisions.

# `t`

```elixir
@type t() :: %LivePanels.Item.View{
  autosize?: boolean(),
  autosize_debounce_ms: non_neg_integer(),
  autosize_max_frame_height: pos_integer(),
  autosize_max_frame_width: pos_integer(),
  autosize_min_frame_height: pos_integer(),
  autosize_min_frame_width: pos_integer(),
  clusterable?: boolean(),
  connectable?: boolean(),
  content: map() | nil,
  content?: boolean(),
  drag_drop: LivePanels.Canvas.DragDrop.capability(),
  frame_overflow: :hidden | :visible,
  frame_size: :fixed | :content,
  id: String.t(),
  max_frame_height: pos_integer(),
  max_frame_width: pos_integer(),
  min_frame_height: pos_integer(),
  min_frame_width: pos_integer(),
  placement_locked?: boolean(),
  presentable?: boolean(),
  presentation: map(),
  removable?: boolean(),
  resizable?: boolean(),
  tileable?: boolean()
}
```

Render decisions derived from `LivePanels.Item.t()`.

Commonly used fields include:

- identity: `:id`
- content projection: `:content?`, `:content`
- frame decisions: `:frame_overflow`, `:frame_size`, frame bounds, and
  placement lock
- application presentation hints: `:presentation`
- drag/drop affordance: `:drag_drop`
- capability decisions: `:tileable?`, `:resizable?`, `:connectable?`,
  `:presentable?`, `:clusterable?`, and `:removable?`

# `view`

```elixir
@spec view(LivePanels.Item.t()) :: t()
```

Builds the render-time item view projection.

---

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