# `LivePanels.Canvas.Command.Meta`
[🔗](https://github.com/livepanels/livepanels/blob/v0.1.0/lib/livepanels/canvas/command/meta.ex#L1)

Metadata returned by canvas command helpers.

Command helpers return a result tuple containing a `Command.Meta` value with
the accepted or rejected command type, actor, status, and command-specific
details. Use `detail/3` to read detail keys without depending on struct
layout.

# `t`

```elixir
@type t() :: %LivePanels.Canvas.Command.Meta{
  actor_client_id: String.t() | nil,
  applied?: boolean(),
  command_type: atom() | nil,
  details: map(),
  error: term(),
  status: :accepted | :rejected | :no_op | :throttled | nil,
  throttled: boolean()
}
```

# `detail`

```elixir
@spec detail(t() | map(), atom(), term()) :: term()
```

Reads a command-specific detail from metadata.

# `to_map`

```elixir
@spec to_map(t() | map()) :: map()
```

Returns metadata as a plain map with command-specific details merged in.

---

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