Files
dockerfluxodecaixapro/rules/16_REGRAS_QUILL_IA.md
T
2026-09-01 10:46:29 -03:00

118 lines
3.7 KiB
Markdown
Executable File

# 🧠 Regras para IA Coder: Uso do Editor Quill em Campos *Textarea*
Este documento define regras claras para que a IA coder utilize o editor
**Quill** em formulários do sistema, substituindo `textarea` comuns
**somente nos campos destinados a descrição ou conteúdo textual rico**.
------------------------------------------------------------------------
## 📌 1. Quando usar o Quill
A IA **deve** substituir um campo `<textarea>` por um editor **Quill**
sempre que o campo for destinado a:
- descrições longas\
- conteúdos formatáveis\
- corpos de artigos\
- textos ricos\
- informações detalhadas\
- campos como: `description`, `descricao`, `content`, `conteudo`,
`body`, `texto`, `observacoes` etc.
👉 **Se o campo servir para escrever conteúdo extenso ou formatado, use
Quill.**
------------------------------------------------------------------------
## 📌 2. Quando *não* usar o Quill
A IA **não deve** usar Quill quando o campo for:
- curto ou simples (ex.: título, subtítulo)
- técnico ou estruturado (ex.: JSON, código)
- com exigência de texto plano (ex.: slug, token, ID)
- para validação rígida (ex.: email, username, senha)
👉 **Se o texto deve ser simples, curto ou técnico --- use textarea
comum.**
------------------------------------------------------------------------
## 📌 3. Padrão de Estrutura HTML para IA
Para garantir que a IA gere formulários compatíveis com a auto-inicialização do SysCMS, use sempre esta estrutura:
1. **ID Obrigatório**: `quill-editor`
2. **Atributo de Alvo**: `data-target="ID_DO_TEXTAREA"`
3. **Campo de Dados**: Um `textarea` com o mesmo ID do `data-target` e `style="display:none"`.
### Exemplo de Código Gerado pela IA:
```html
<div id="quill-editor" style="height: 400px; background: white;" data-target="conteudo">
{{ documento.conteudo|raw }}
</div>
<textarea id="conteudo" name="conteudo" style="display:none">
{{ documento.conteudo }}
</textarea>
```
**ATENÇÃO**:
- NUNCA inicialize o Quill via JavaScript manual dentro dos módulos se estiver usando o layout `dashboard.twig`.
- O script global `public/assets/js/quill-init.js` já faz o trabalho de montagem e sincronização.
- Se houver mais de um editor na mesma página, o sistema deve ser adaptado para IDs incrementais ou seletores de classe, mas o padrão mestre é o ID único `quill-editor`.
------------------------------------------------------------------------
## 📌 5. Regras para backend + IA
- Para análise por IA, preferir texto simples:
``` javascript
quill.getText();
```
- Para preservar formatação, usar HTML\
- Sanitizar HTML conforme necessário
------------------------------------------------------------------------
## 📌 6. Regras de detecção de campos que devem usar Quill
A IA deve ativar o Quill automaticamente para campos cujo `name` ou `id`
contenha:
- descricao / description\
- conteudo / content\
- body\
- texto / text\
- observacoes / obs\
- about
Incluindo variações como:\
`snake_case`, `camelCase`, `kebab-case`.
Exemplos:\
- `product_description`\
- `postContent`\
- `body_text`\
- `obs_adicionais`\
- `article-body`
------------------------------------------------------------------------
## 📌 7. Regra principal da IA
> Todo campo de texto que permita formatação, parágrafos ou conteúdo
> rico deve usar o editor Quill.
## 📌 8. Regra secundária
> Campos curtos, técnicos ou que exigem texto simples **não** devem usar
> Quill.
------------------------------------------------------------------------
Fim do documento.