2.1 KiB
2.1 KiB
Workflows Principais
Login Flow
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
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
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