118 lines
3.7 KiB
Markdown
Executable File
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.
|