75 lines
1.8 KiB
Markdown
75 lines
1.8 KiB
Markdown
# ClientFlow v4.7.3 — HTMX Partials & View Models
|
|
|
|
## Objetivo
|
|
|
|
A v4.7.3 consolida a primeira camada HTMX depois da separação de rotas da v4.7.2.
|
|
|
|
Não altera regras de negócio, base de dados, Chatwoot, auto-complete, associação de oportunidades ou outbox worker.
|
|
|
|
## O que muda
|
|
|
|
### Centro de trabalho
|
|
|
|
`/operations` passa a ter refresh parcial da lista de trabalho:
|
|
|
|
- endpoint: `/operations/partials/work-items`
|
|
- target: `#operations-work-items`
|
|
- filtros com `hx-get`
|
|
- `hx-push-url` para manter URL partilhável
|
|
- indicador `#operations-loading`
|
|
|
|
### Tasks
|
|
|
|
`/tasks` passa a ter refresh parcial da lista:
|
|
|
|
- endpoint: `/tasks/partials/list`
|
|
- target: `#tasks-list`
|
|
- tabs e formulário com `hx-get`
|
|
- `hx-push-url` para manter URL partilhável
|
|
- indicador `#tasks-loading`
|
|
|
|
### Oportunidades
|
|
|
|
A v4.7.3 mantém e documenta os partials já usados no detalhe da oportunidade:
|
|
|
|
- `/opportunities/{id}/partials/products`
|
|
- `/opportunities/{id}/partials/jasmin-documents`
|
|
|
|
Estes partials continuam a ser usados pelos forms HTMX de produtos e documentos.
|
|
|
|
## View models e labels
|
|
|
|
Foram criados:
|
|
|
|
- `app/admin_ui/labels.py`
|
|
- `app/admin_ui/htmx.py`
|
|
- `app/admin_ui/view_models/operations.py`
|
|
|
|
A intenção é retirar labels e preparação de dados das rotas antes de avançar para mais partials.
|
|
|
|
## Critério de segurança
|
|
|
|
A v4.7.3 é uma versão de UI/estrutura. Não muda:
|
|
|
|
- schema da base de dados
|
|
- workflow Chatwoot
|
|
- auto-complete
|
|
- regras de oportunidade/cliente
|
|
- worker de outbox
|
|
- integrações Jasmin/Packlink/Odoo
|
|
|
|
## Validação
|
|
|
|
```bash
|
|
PYTHONPATH=. python -m compileall app scripts tests
|
|
PYTHONPATH=. pytest -q
|
|
```
|
|
|
|
## Próximo passo
|
|
|
|
A próxima versão pode consolidar:
|
|
|
|
- partial do quadro de oportunidades
|
|
- partial da outbox operacional
|
|
- componentes HTML para `work_item_card`, `task_table` e `opportunity_card`
|