# `FrappeUIPhx.IconResolver`
[🔗](https://github.com/moacirbishopcamata/frappe_ui_phx/blob/v0.3.1/lib/frappe_ui_phx/icon_resolver.ex#L1)

Contrato de como o nome de ícone usado no projeto vira um nome do catálogo Lucide
(`FrappeUIPhx.Icons`). Serve para apelidos do projeto (`"salvar"` -> `"save"`):

    config :frappe_ui_phx, icon_resolver: MyApp.Icons

Os componentes chamam `resolve/1`; a implementação configurada fornece `name/1`.
A implementação padrão (`FrappeUIPhx.IconResolver.Lucide`) devolve o nome como veio;
nomes antigos (aliases) e `-filled` já são entendidos pelo catálogo.

# `name`

```elixir
@callback name(name :: String.t()) :: String.t()
```

# `resolve`

```elixir
@spec resolve(String.t()) :: String.t()
```

Nome do catálogo para `name`, pela implementação configurada (validada).

---

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