Spaces:
Sleeping
Sleeping
| import React from 'react' | |
| import { Box, Paper, Stack } from '@mantine/core' | |
| import { XRDProvider } from './context/XRDContext' | |
| import Header from './components/Header' | |
| import ResultsHero from './components/ResultsHero' | |
| import XRDGraph from './components/XRDGraph' | |
| import Controls from './components/Controls' | |
| import LogitDrawer from './components/LogitDrawer' | |
| function App() { | |
| return ( | |
| <XRDProvider> | |
| <Box style={{ display: 'flex', flexDirection: 'column', minHeight: '100vh' }}> | |
| {/* Header - Full Width */} | |
| <Header /> | |
| {/* Main Content Area - T-Shape Layout */} | |
| <Box style={{ display: 'flex', flex: 1, overflow: 'hidden' }}> | |
| {/* Sidebar - Controls Only */} | |
| <Box | |
| style={{ | |
| width: '350px', | |
| flexShrink: 0, | |
| borderRight: '1px solid #e9ecef', | |
| overflowY: 'auto', | |
| backgroundColor: 'white', | |
| }} | |
| > | |
| <Box p="lg" style={{ display: 'flex', flexDirection: 'column', minHeight: '100%' }}> | |
| <Controls /> | |
| </Box> | |
| </Box> | |
| {/* Main Panel - Results + Visualization */} | |
| <Box | |
| style={{ | |
| flex: 1, | |
| overflowY: 'auto', | |
| background: 'linear-gradient(180deg, #f8f9fa 0%, #f1f3f5 100%)', | |
| padding: '2rem', | |
| }} | |
| > | |
| <Stack gap="xl"> | |
| {/* Results Hero Section */} | |
| <ResultsHero /> | |
| {/* Visualization Section */} | |
| <Paper shadow="lg" p="lg" withBorder radius="md" style={{ backgroundColor: 'white' }}> | |
| <XRDGraph /> | |
| </Paper> | |
| </Stack> | |
| </Box> | |
| </Box> | |
| {/* Logit Inspector Drawer */} | |
| <LogitDrawer /> | |
| </Box> | |
| </XRDProvider> | |
| ) | |
| } | |
| export default App | |