chore(agent): remover permissoes de commit da IA no projeto e wiki (apenas sugerir texto) e manter push automatico exclusivo no .agent
This commit is contained in:
parent
212d2578f4
commit
26a4f98dab
116 changed files with 1162 additions and 1315 deletions
|
|
@ -1,25 +1,25 @@
|
|||
---
|
||||
type: rule
|
||||
name: theme-provider-mui-betha
|
||||
description: Define a arquitetura centralizada do ThemeProvider MUI Betha nos frontends React do ecossistema GOV (AUTENTICACAO-FRONT, QUIPO-FRONT, QUIPO-PORTAL3)
|
||||
description: Define a arquitetura centralizada do ThemeProvider MUI Betha nos frontends React de gestão pública (<modulo>-front)
|
||||
scope: global
|
||||
trigger: model_decision
|
||||
priority: alta
|
||||
updatedAt: "2026-09-28"
|
||||
updatedAt: "2026-10-14"
|
||||
---
|
||||
|
||||
# Regra: ThemeProvider MUI Centralizado — Arquitetura Betha
|
||||
|
||||
Os frontends React do ecossistema GOV usam MUI com tema centralizado. **Nunca criar temas locais em componentes.**
|
||||
Nos módulos cujo `memorias-ia/modulo.yml` (`modulo-tipo`) utiliza frontend React com Material UI (MUI) voltado à gestão pública, o pacote `<modulo>-front` deve usar tema centralizado. **Nunca criar temas locais em componentes.**
|
||||
|
||||
## Arquitetura de Camadas
|
||||
|
||||
```
|
||||
themeOptions.ts
|
||||
├── tema-betha.ts → createTheme(themeOptions) — marca Betha
|
||||
├── tema-e-licencie.ts → createTheme({...themeOptions, — marca e-licencie
|
||||
├── tema-betha.ts → createTheme(themeOptions) — marca Betha
|
||||
├── tema-padrao.ts → createTheme({...themeOptions, — marca white-label alternativa
|
||||
│ palette: { primary: { main: "#688c00" } }})
|
||||
└── tema.ts → exporta { tema } baseado em eBetha()
|
||||
└── tema.ts → exporta { tema } baseado em eBetha()
|
||||
↓
|
||||
index.tsx / App.tsx
|
||||
<ThemeProvider theme={tema.tema}>
|
||||
|
|
@ -56,7 +56,7 @@ const themeOptions = {
|
|||
|
||||
## Regras
|
||||
|
||||
✅ **Correto:** importar `tema` de `styles/tema-betha.ts` quando um componente isolado precisa de ThemeProvider próprio
|
||||
✅ **Correto:** importar `tema` de `styles/tema-betha.ts` (ou `Plugins/tema.ts`) quando um componente isolado precisa de ThemeProvider próprio
|
||||
✅ **Correto:** `themeOptions.ts` é a única fonte de tokens — modificar só lá
|
||||
❌ **Incorreto:** `createTheme()` vazio ou com tokens hardcoded dentro de componentes
|
||||
❌ **Incorreto:** múltiplos `ThemeProvider` aninhados com temas distintos
|
||||
|
|
@ -72,19 +72,12 @@ import { tema } from "@/styles/tema-betha";
|
|||
</ThemeProvider>
|
||||
```
|
||||
|
||||
## AUTENTICACAO-FRONT — Estrutura específica
|
||||
|
||||
```
|
||||
src/_FRONT/Components/Plugins/tema.ts
|
||||
→ exporta themeBetha e themeELicencie
|
||||
→ App.tsx decide qual usar via eBetha()
|
||||
```
|
||||
|
||||
## Impacto
|
||||
|
||||
Evita divergências visuais entre telas e garante que a troca de marca (Betha ↔ e-licencie) seja controlada por um único ponto.
|
||||
Evita divergências visuais entre telas e garante que a troca dinâmica de marca white-label seja controlada por um único ponto.
|
||||
|
||||
## Referências
|
||||
|
||||
- Identidade do Módulo: `memorias-ia/modulo.yml`
|
||||
- Rule: `estilos-design-system`
|
||||
- Rule: `css-global-betha`
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue