'use client' import React from 'react' import { AlertCircle, RefreshCcw } from 'lucide-react' import { Button } from '@/components/ui/button' interface Props { children: React.ReactNode } interface State { hasError: boolean error?: Error } export class CanvasErrorBoundary extends React.Component { constructor(props: Props) { super(props) this.state = { hasError: false } } static getDerivedStateFromError(error: Error) { return { hasError: true, error } } componentDidCatch(error: Error, errorInfo: React.ErrorInfo) { console.error('[CanvasErrorBoundary] caught error:', error, errorInfo) } render() { if (this.state.hasError) { return (

Oups ! Le Lab a rencontré un problème.

Une erreur inattendue est survenue lors du chargement de l'espace de dessin. Cela peut arriver à cause d'un conflit de données ou d'une extension de navigateur.

{process.env.NODE_ENV === 'development' && (
              {this.state.error?.message}
            
)}
) } return this.props.children } }