This commit is contained in:
Luiz Silva 2026-01-29 16:10:58 -03:00
parent 1e3c4026e8
commit 8c5a31ef30
5 changed files with 185 additions and 59 deletions

39
.agent
View file

@ -40,6 +40,27 @@ Construir um Design System de componentes em **Vue 3** para reutilização em m
---
## Convenção atual de entradas (IMPORTANTE)
O componente **`EliInput` foi removido**. O padrão atual é a família **`EliEntrada*`**:
- `EliEntradaTexto`
- `EliEntradaNumero`
- `EliEntradaDataHora`
E o contrato padrão para entradas é:
- prop `value`
- evento `update:value`
- prop obrigatória `opcoes` (contém `rotulo` e outras opções)
Exemplo:
```vue
<EliEntradaTexto v-model:value="nome" :opcoes="{ rotulo: 'Nome' }" />
```
---
## Estrutura obrigatória do repositório
- Cada componente deve possuir **sua própria pasta** em `src/componentes/`
- Dentro de cada pasta do componente:
@ -162,6 +183,24 @@ Evitar comentários óbvios (“isso é um botão”).
---
## Convenção atual de EliTabela (IMPORTANTE)
### Filtro avançado
O filtro avançado da `EliTabela` é configurado via `tabela.filtroAvancado`.
Regras:
- O **operador é travado na definição** (o usuário não escolhe operador)
- Cada filtro pode ser usado **no máximo 1 vez**
- UI: modal mostra **apenas os componentes de entrada** definidos no filtro
- Persistência: salva em `localStorage` apenas `{ coluna, valor }[]` por `tabela.nome`
Se você for evoluir isso para backend:
- usar `parametrosConsulta.filtros` (`tipoFiltro[]`) no `tabela.consulta`
- manter compatibilidade com simulação local (quando necessário)
---
## Publicação do pacote (npm)
### Regra de publicação (sem usar `package.json.files`)