import type { NextAuthConfig } from 'next-auth'

/**
 * Fragment konfiguracji bezpieczny dla Edge (middleware).
 * Dostawcy logowania i mysql2 są w auth.ts (tylko Node).
 */
export const authConfig = {
  trustHost: true,
  pages: {
    signIn: '/logowanie',
  },
  session: {
    strategy: 'jwt',
    maxAge: 30 * 24 * 60 * 60,
  },
  providers: [],
  callbacks: {
    async jwt({ token, user }) {
      if (user) {
        token.sub = user.id
        token.email = user.email
      }
      return token
    },
    async session({ session, token }) {
      if (session.user && token.sub) {
        session.user.id = token.sub
        if (token.email && typeof token.email === 'string') session.user.email = token.email
      }
      return session
    },
  },
} satisfies NextAuthConfig
