# plugin-menu

`@fayz-ai/plugin-menu` · beta · Capability parcial

A menu is the product catalog of a food business — and it changes by the hour. plugin-menu is the management surface for that: items, categories, allergens, and modifiers, with sold-out toggles that take effect instantly. It's the foundation the orders flow reads from, so the two compose into a working restaurant.

## Visão geral

Gestão de cardápio: itens, categorias e modificadores, com controle de disponibilidade (disponível / esgotado). Monta a página `/menu`. É um plugin **vertical** (`scope: 'vertical'`), normalmente combinado com o `plugin-orders`.

Não empacota migrations. Por padrão roda com um provider mock e, para a plataforma Fayz, usa `createFayzMenuProvider` com tabelas configuráveis (`categoriesTable`, `productsTable`). O módulo `modifiers` vem ligado; `deliveryPricing` é opt-in. O canal `stable` já pina `^0.3.0`.

Para IA, expõe `listMenuItems` e `toggleMenuItemAvailability`. Status **beta / capability parcial**.

## Quando usar

- Manter um cardápio com categorias e modificadores.
- Marcar um item como esgotado em tempo real, inclusive via IA.
- Alimentar o plugin-orders com o catálogo de itens.

## Ficha técnica

- **Pacote:** `@fayz-ai/plugin-menu`
- **Versão:** 0.3.0
- **Status:** beta
- **Capability:** Capability parcial
- **Tipo de produto:** Restaurante / food
- **Canal stable:** `^0.3.0`
- **Migrations:** nenhuma
- **Factory:** `createMenuPlugin()`

## Modelo de dados

Sem tabelas próprias — usa a biblioteca core / archetype (mesma regra: `tenant_id` + RLS).

## Tools de IA

| id | modo | descrição |
| --- | --- | --- |
| `menu.list-items` | read | Lists menu items, optionally filtered by category or status. |
| `menu.toggle-availability` | persist | Marks a menu item as available or sold out. |

## Integrações

Sem conector hospedado — provedores externos via spine de conectores (`@fayz-ai/core`).

## Integrar

Adicione o plugin em `surfaces.admin.plugins` do `app.manifest.json` e rode o doctor:

```json
{ "surfaces": { "admin": { "plugins": [ { "id": "menu", "enabled": true } ] } } }
```

```bash
npx fayz doctor
```
