import { json } from '@sveltejs/kit';
import { getSurrealDB } from '$lib/server/db';
import type { RequestHandler } from './$types';

export const GET: RequestHandler = async ({ locals }) => {
  const userId = locals.user?.id;
  
  if (!userId) {
    return json({ error: 'Non autorisé' }, { status: 401 });
  }
  
  const cleanUserId = userId.replace('user:', '');
  
  try {
    const db = await getSurrealDB();
    
    // Récupérer tous les médias de l'utilisateur (exclure les .gitkeep)
    const media = await db.query<Array<Array<{
      id: string;
      name: string;
      type: string;
      url: string;
      size_bytes: number;
      created_at: string;
    }>>>(`
      SELECT * FROM media 
      WHERE user = type::thing("user", $userId)
        AND name != ".gitkeep"
        AND (original_name IS NONE OR original_name != ".gitkeep")
      ORDER BY created_at DESC
    `, { userId: cleanUserId });
    
    return json({
      media: media[0] || []
    });
  } catch (error) {
    console.error('Erreur lors de la récupération des médias:', error);
    return json({ error: 'Erreur serveur' }, { status: 500 });
  }
};
