import { NextRequest, NextResponse } from 'next/server'
import { verifyPassword, generateToken, setAuthCookie } from '@/lib/auth'

export async function POST(request: NextRequest) {
  try {
    const { password } = await request.json()

    if (!password) {
      return NextResponse.json(
        { message: 'Необхідно ввести пароль' },
        { status: 400 }
      )
    }

    if (!verifyPassword(password)) {
      return NextResponse.json(
        { message: 'Пароль невірний' },
        { status: 401 }
      )
    }

    const user = {
      id: 'admin',
      username: 'admin',
      role: 'admin' as const,
    }

    const token = generateToken(user)
    const response = NextResponse.json({
      message: 'Login successful',
      user,
    })

    setAuthCookie(response, token)

    return response
  } catch (error) {
    console.error('Login error:', error)
    return NextResponse.json(
      { message: 'Internal server error' },
      { status: 500 }
    )
  }
}
