Antes, resolvendo bugs
Antes de adentrarmos no dashboard, logout e proteção de rotas, precisamos ajustar algumas coisas no login com Github. Se você tentar fazer o login da forma como fizemos, provavelmente você terá alguns erros.
- O primeiro erro é porque não criamos, no prisma, o schema
Account
- e estamos agora usando o Prisma Adapter. - O segundo é que, se você cadastrou algum email antes, por padrão (e por razão de segurança) o NextAuth não deixa autenticar em outros provedores diferentes (como Github).
Criando o schema Account
.
Para isso, basta adicionarmos, no schema.prisma
o seguinte código:
Depois, é só rodar o npx prisma db push
e verificar que a tabela já está na DB.
Permitindo logins concomitantes entre credenciais e OAuth providers
O Prisma, por padrão, não permite que façamos o login com Github com o mesmo email que usamos nas credenciais. Vamos desabilitar esse comportamento.
Para isso, basta passar para o GithubProvider
em nosso auth.ts
essa propriedade:
Maravilha, agora está tudo funcionando como antes!