import { eventHandler } from 'h3' import { getDatabase } from '../utils/database' export default eventHandler(() => { const db = getDatabase() // Récupérer les boxes const boxes = db .prepare( ` SELECT id, type, name, description, state, duration, active_side, color1, color2 FROM boxes ORDER BY id ` ) .all() // Récupérer les sides pour chaque box const sides = db .prepare( ` SELECT box_id, side, name, description, duration, color1, color2 FROM sides ` ) .all() // Grouper les sides par box_id const sidesByBoxId: Record = {} for (const side of sides) { if (!sidesByBoxId[side.box_id]) { sidesByBoxId[side.box_id] = {} } sidesByBoxId[side.box_id][side.side] = { name: side.name, description: side.description, duration: side.duration, color1: side.color1, color2: side.color2 } } // Formater les résultats return boxes.map((box: any) => ({ id: box.id, type: box.type, name: box.name, description: box.description, state: box.state, duration: box.duration, activeSide: box.active_side, ...(box.type === 'compilation' ? { sides: sidesByBoxId[box.id] || {} } : { color1: box.color1, color2: box.color2 }) })) })