84 lines
2.1 KiB
Markdown
84 lines
2.1 KiB
Markdown
# Workflows Principais
|
|
|
|
## Login Flow
|
|
|
|
```mermaid
|
|
sequenceDiagram
|
|
actor User
|
|
participant LoginPage
|
|
participant SupabaseAuth
|
|
participant Dashboard
|
|
|
|
User->>LoginPage: Acessa /login
|
|
LoginPage->>User: Exibe formulário
|
|
User->>LoginPage: Preenche email/senha
|
|
LoginPage->>SupabaseAuth: signInWithPassword()
|
|
alt Sucesso
|
|
SupabaseAuth->>LoginPage: JWT token
|
|
LoginPage->>Dashboard: Redirect /dashboard
|
|
Dashboard->>User: Exibe dashboard
|
|
else Erro
|
|
SupabaseAuth->>LoginPage: Error 401
|
|
LoginPage->>User: "Email ou senha inválidos"
|
|
end
|
|
```
|
|
|
|
---
|
|
|
|
## WhatsApp QR Code Flow
|
|
|
|
```mermaid
|
|
sequenceDiagram
|
|
actor User
|
|
participant Dashboard
|
|
participant API
|
|
participant EvolutionAPI
|
|
participant Modal
|
|
|
|
User->>Dashboard: Clica "Gerar QR Code"
|
|
Dashboard->>API: POST /api/.../qrcode
|
|
API->>EvolutionAPI: GET /instance/connect/{name}
|
|
alt Sucesso
|
|
EvolutionAPI->>API: QR code (base64)
|
|
API->>Dashboard: { qrCode: "..." }
|
|
Dashboard->>Modal: Exibe QR code
|
|
Modal->>User: Modal com QR
|
|
Note over User,EvolutionAPI: Polling a cada 5s
|
|
EvolutionAPI->>API: Status "connected"
|
|
API->>Dashboard: Status atualizado
|
|
Dashboard->>User: Badge verde
|
|
else Erro
|
|
EvolutionAPI->>API: Error
|
|
API->>Dashboard: Error response
|
|
Dashboard->>User: Toast erro
|
|
end
|
|
```
|
|
|
|
---
|
|
|
|
## Google Calendar OAuth Flow
|
|
|
|
```mermaid
|
|
sequenceDiagram
|
|
actor User
|
|
participant Dashboard
|
|
participant n8n
|
|
participant Google
|
|
participant Callback
|
|
participant Supabase
|
|
|
|
User->>Dashboard: Clica "Conectar Calendar"
|
|
Dashboard->>n8n: Redirect {N8N_OAUTH_URL}
|
|
n8n->>Google: Redirect OAuth
|
|
User->>Google: Autoriza
|
|
Google->>n8n: Callback com code
|
|
n8n->>n8n: Troca code por token
|
|
n8n->>Callback: Redirect /callback?success=true&email={email}
|
|
Callback->>Supabase: UPDATE google_calendar_integration
|
|
Supabase->>Callback: Success
|
|
Callback->>Dashboard: Redirect /dashboard
|
|
Dashboard->>User: Toast "Conectado!" + Badge verde
|
|
```
|
|
|
|
---
|