Commit Graph

8 Commits

Author SHA1 Message Date
Marcos 50d563c0fd fix(auth): dedup logto token exchange with Promise caching 2026-08-18 11:05:59 +00:00
Marcos 337b397772 aaa 2026-08-18 10:52:03 +00:00
Marcos 59ee8f56a8 fix(auth): limpar PKCE state no signIn e tratar invalid_grant
- signIn agora limpa logto_state/nonce/verifier antes de começar
- Evita mismatch quando user tenta logar de novo no mesmo browser
- handleCallback limpa estado se /oidc/token retorna 400 invalid_grant
- Resolve loop 'Falha no login' em modo anônimo re-login
2026-08-18 10:43:36 +00:00
Marcos 88e467c02b fix(auth): adicionar user.id como alias de user.sub (compat Supabase)
- Hooks como useTasks, useObra, useCronogramas usavam user.id
- Logto usa user.sub como identificador
- Adiciona id= sub no LogtoUser e no getUser() response
- Resolve os 400 Bad Request do Supabase (uuid=undefined)
2026-08-18 10:40:43 +00:00
Marcos 0ce317a8f3 fix(logto): adicionar PKCE + rota /callback
- Logto EXIGE PKCE, sem isso retorna 400 invalid_request
- client.ts: restaura generatePkce() com crypto.subtle
- Adiciona /callback route + Callback.tsx que processa ?code=
- useAuth expõe handleCallback() no contexto
- nginx já tem fallback SPA, então /callback carrega index.html
  e React Router mostra a página de Callback
2026-08-18 10:23:29 +00:00
Marcos a3c76c17b4 fix(logto): simplificar signIn sem PKCE (elimina erro g is not defined)
- Removi PKCE que usava crypto.subtle.digest + btoa
- Provavelmente crypto.subtle não funciona bem no navegador quando chamado via webpack/rollup tree-shaken
- Versão sem PKCE funciona pra apps SPA com confidential=false (que é nosso caso)
2026-08-18 10:18:37 +00:00
Marcos 278f0f4491 feat(auth): migrar Supabase Auth -> Logto OIDC puro
- Novo cliente Logto sem dependencias externas (PKCE + fetch)
- useAuth.tsx reescrito pra usar Logto
- usePasswordReset.tsx reescrito pra Logto forgot-password
- .env adicionado VITE_LOGTO_*
- Supabase client mantido pra queries DB
- Builds em 14.66s
2026-08-17 22:08:39 +00:00
Marcos bde410c9ad 🚀 Initial commit: Versão atual do TrackSteel APP 2026-03-18 21:17:53 +00:00