import { NextResponse } from 'next/server';
import connectMongoDB from '@/lib/mongodb';
import { Image } from '@/lib/models/Image';

export async function GET() {
  try {
    await connectMongoDB();

    // Получаем конкретное проблемное изображение
    const filename = 'aef03704-4188-46d0-891f-771b84a03e90.svg';
    const image = await Image.findOne({ filename }).lean() as { filename: string; originalName: string; mimetype: string; size: number; data: Buffer | Uint8Array } | null;
    
    if (!image) {
      return NextResponse.json({ message: 'Image not found', filename });
    }

    // Проверяем начало данных изображения
    const buffer = Buffer.isBuffer(image.data) ? image.data : Buffer.from(image.data);
    const first100Chars = buffer.slice(0, 100).toString('utf8');
    const first100Bytes = Array.from(buffer.slice(0, 20)).map(b => b.toString(16).padStart(2, '0')).join(' ');

    // Возвращаем детальную информацию об изображении
    return NextResponse.json({
      filename: image.filename,
      originalName: image.originalName,
      mimetype: image.mimetype,
      size: image.size,
      dataType: typeof image.data,
      dataLength: image.data ? image.data.length : 'null',
      isBuffer: Buffer.isBuffer(image.data),
      actualBufferLength: buffer.length,
      first100Chars,
      first100Bytes,
      isValidSvg: first100Chars.includes('<svg'),
      url: `/api/images/${image.filename}`
    });

  } catch (error) {
    console.error('Test error:', error);
    return NextResponse.json({ error: error instanceof Error ? error.message : 'Unknown error' }, { status: 500 });
  }
}
