# `Dala.ComponentServer`
[🔗](https://github.com/manhvu/dala/blob/main/lib/dala/component_server.ex#L1)

Public API for component server operations.

This module delegates to `Dala.Ui.NativeView.Server` for managing
component processes.

# `dispatch`

```elixir
@spec dispatch(pid(), String.t(), map()) :: :ok
```

Deliver a native event to the component.

# `get_handle`

```elixir
@spec get_handle(pid()) :: integer()
```

Get the persistent NIF handle allocated at mount time.

# `render_props`

```elixir
@spec render_props(pid()) :: map()
```

Get the current rendered props from the component.

# `start`

```elixir
@spec start(keyword()) :: {:ok, pid()} | {:error, term()}
```

Start a component process.

# `update`

```elixir
@spec update(pid(), map()) :: :ok
```

Update the component with new props from the parent screen re-render.

---

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