# `FrappeUIPhx.Components.CommandPalette`
[🔗](https://github.com/moacirbishopcamata/frappe_ui_phx/blob/v0.3.1/lib/frappe_ui_phx/components/command_palette.ex#L1)

Paleta de comandos (Ctrl/⌘ + K): busca, grupos e navegação por teclado. Abre
como o `Dialog` (mesmo hook nativo: foco preso, Esc, backdrop) e o hook próprio só
filtra a lista, move a seleção com ↑/↓ e aciona o item com Enter. O que cada
item *faz* é decidido pelo servidor (`click`) ou por navegação.

Experimental.

# `command_palette`

## Attributes

* `id` (`:string`) (required)
* `placeholder` (`:string`) - Defaults to `nil`.
* `empty_text` (`:string`) - Defaults to `nil`.
* `shortcut` (`:boolean`) - liga Ctrl/⌘ + K para abrir. Defaults to `true`.
* `class` (`:any`) - Defaults to `nil`.
* Global attributes are accepted.
## Slots

* `item` (required) - Accepts attributes:

  * `label` (`:string`) (required)
  * `group` (`:string`)
  * `icon` (`:string`)
  * `keywords` (`:string`)
  * `shortcut` (`:list`)
  * `click` (`:any`)
  * `navigate` (`:string`)
  * `patch` (`:string`)
  * `href` (`:string`)

# `group_items`

```elixir
@spec group_items([map()]) :: [{String.t() | nil, [map()]}]
```

Agrupa os itens preservando a ordem do primeiro aparecimento: `[{grupo | nil, [item]}]`.

# `search_text`

```elixir
@spec search_text(map()) :: String.t()
```

Texto minúsculo pesquisável do item (rótulo, grupo e palavras-chave).

---

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