import {createRoot} from 'react-dom/client';
import App from './App.tsx';
import './index.css';

if (typeof window !== 'undefined') {
  window.addEventListener(
    'error',
    (event) => {
      const target = event.target as HTMLElement | null;
      if (target && target.tagName === 'IMG') {
        const img = target as HTMLImageElement;
        const src = img.getAttribute('src') || '';
        if (
          src.startsWith('/assets/aistudio/') &&
          !img.dataset.triedPublicFallback
        ) {
          img.dataset.triedPublicFallback = '1';
          img.src = '/public' + src;
        } else if (
          src.startsWith('/public/assets/aistudio/') &&
          !img.dataset.triedRootFallback
        ) {
          img.dataset.triedRootFallback = '1';
          img.src = src.replace('/public/assets/aistudio/', '/assets/aistudio/');
        }
      }
    },
    true
  );
}

createRoot(document.getElementById('root')!).render(<App />);
