\n\n
\n
\n
\n
React App
\n
\n \n\n
\n \n \n \n \n \\n \\n \\n \\n\\n","src/main.tsx":"import React from \"react\";\nimport { createRoot } from \"react-dom/client\";\nimport App from \"./App\";\n\nconst container = document.getElementById(\"root\");\nif (container) {\n const root = createRoot(container);\n root.render(\n
\n
\n
\n );\n}","main.tsx":"import React from \"react\";\nimport { createRoot } from \"react-dom/client\";\nimport App from \"./App\";\n\nconst container = document.getElementById(\"root\");\nif (container) {\n const root = createRoot(container);\n root.render(\n
\n
\n
\n );\n}","src/App.tsx":"import React from \"react\";\n\nconst App: React.FC = () => {\n return (\n
\n
سلام
\n
\n );\n};\n\nexport default App;","App.tsx":"import React from \"react\";\n\nconst App: React.FC = () => {\n return (\n
\n
سلام
\n
\n );\n};\n\nexport default App;","src/index.css":"@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700;800&display=swap');\n\n:root {\n --color-primary: #22c55e;\n --color-secondary: #a855f7;\n --color-accent: #ef4444;\n --color-neutral-50: #f8fafc;\n --color-neutral-900: #0f172a;\n --color-success: #22c55e;\n --color-warning: #eab308;\n --color-error: #ef4444;\n\n --font-heading: 'Inter', sans-serif;\n --font-body: 'Inter', sans-serif;\n\n --text-h1: 4rem / 1.1;\n --text-body: 1rem / 1.5;\n}\n\nbody {\n font-family: var(--font-body);\n background-color: var(--color-neutral-50);\n color: var(--color-neutral-900);\n}\n\nh1 {\n font-family: var(--font-heading);\n font-size: var(--text-h1);\n font-weight: 800;\n}\n\n.bg-primary {\n background-color: var(--color-primary);\n}\n\n.text-white {\n color: #ffffff;\n}\n\n.flex {\n display: flex;\n}\n\n.items-center {\n align-items: center;\n}\n\n.justify-center {\n justify-content: center;\n}\n\n.min-h-screen {\n min-height: 100vh;\n}","index.css":"@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;700;800&display=swap');\n\n:root {\n --color-primary: #22c55e;\n --color-secondary: #a855f7;\n --color-accent: #ef4444;\n --color-neutral-50: #f8fafc;\n --color-neutral-900: #0f172a;\n --color-success: #22c55e;\n --color-warning: #eab308;\n --color-error: #ef4444;\n\n --font-heading: 'Inter', sans-serif;\n --font-body: 'Inter', sans-serif;\n\n --text-h1: 4rem / 1.1;\n --text-body: 1rem / 1.5;\n}\n\nbody {\n font-family: var(--font-body);\n background-color: var(--color-neutral-50);\n color: var(--color-neutral-900);\n}\n\nh1 {\n font-family: var(--font-heading);\n font-size: var(--text-h1);\n font-weight: 800;\n}\n\n.bg-primary {\n background-color: var(--color-primary);\n}\n\n.text-white {\n color: #ffffff;\n}\n\n.flex {\n display: flex;\n}\n\n.items-center {\n align-items: center;\n}\n\n.justify-center {\n justify-content: center;\n}\n\n.min-h-screen {\n min-height: 100vh;\n}","tailwind.config.js":"module.exports = {\n content: [\"./src/**/*.{js,jsx,ts,tsx}\", \"./public/index.html\"],\n theme: {\n extend: {\n colors: {\n primary: '#22c55e',\n secondary: '#a855f7',\n accent: '#ef4444',\n neutral: {\n 50: '#f8fafc',\n 900: '#0f172a',\n },\n success: '#22c55e',\n warning: '#eab308',\n error: '#ef4444',\n },\n fontFamily: {\n heading: ['Inter', 'sans-serif'],\n body: ['Inter', 'sans-serif'],\n },\n fontSize: {\n h1: ['4rem', { lineHeight: '1.1' }],\n body: ['1rem', { lineHeight: '1.5' }],\n },\n },\n },\n plugins: [],\n};"}; window.__MODULES__ = {}; function resolvePath(base, relative) { if (!relative.startsWith('.')) return relative; const stack = base.split('/'); stack.pop(); const parts = relative.split('/'); for (let i = 0; i < parts.length; i++) { if (parts[i] === '.') continue; if (parts[i] === '..') stack.pop(); else stack.push(parts[i]); } return stack.join('/'); } function require(path, base = 'src/main.tsx') { // Built-ins if (path === 'react') return window.React; if (path === 'react-dom') return window.ReactDOM; if (path === 'react-dom/client') return window.ReactDOM; if (path === 'react-router-dom') return window.ReactRouterDOM; if (path === 'lucide-react') return window.lucideReact; if (path === '@supabase/supabase-js') return window.supabase; // Resolve let resolved = resolvePath(base, path); const extensions = ['', '.tsx', '.ts', '.jsx', '.js', '.css', '.json']; let finalPath = null; if (window.__SOURCES__[resolved]) finalPath = resolved; else { for (const ext of extensions) { if (window.__SOURCES__[resolved + ext]) { finalPath = resolved + ext; break; } } if (!finalPath) { // Fallback: try searching in src/ if bare import if (window.__SOURCES__['src/' + path]) return require('src/' + path, base); // Index resolution for (const ext of extensions) { if (window.__SOURCES__[resolved + '/index' + ext]) { finalPath = resolved + '/index' + ext; break; } } } } if (!finalPath) { console.warn('Module not found:', path, 'resolved to:', resolved); return {}; } if (window.__MODULES__[finalPath]) return window.__MODULES__[finalPath].exports; const source = window.__SOURCES__[finalPath]; const module = { exports: {} }; window.__MODULES__[finalPath] = module; if (finalPath.endsWith('.css')) return {}; if (finalPath.endsWith('.json')) { module.exports = JSON.parse(source); return module.exports; } try { const presets = [['env', { modules: 'commonjs' }], 'react']; if (finalPath.endsWith('.ts') || finalPath.endsWith('.tsx')) presets.push('typescript'); const code = Babel.transform(source, { presets, filename: finalPath, retainLines: true }).code; const func = new Function('require', 'module', 'exports', 'React', code); func( (p) => require(p, finalPath), module, module.exports, window.React ); } catch (e) { console.error('Error executing ' + finalPath, e); throw e; } return module.exports; } window.addEventListener('DOMContentLoaded', () => { try { require('src/main.tsx'); } catch (e) { console.error('Bootstrap Error:', e); document.body.innerHTML = '
Runtime Error
Failed to execute application.
' + e.message + '
'; } });