mirror of
https://gitlab.aliens-lyon.fr/encartes/web-interface.git
synced 2026-03-17 22:51:04 +01:00
Possibility to switch to dark theme
This commit is contained in:
parent
507f9e2951
commit
d547e858ce
27
src/App.js
27
src/App.js
@ -147,7 +147,7 @@ function RoomInformation({ roomId, setIsEditDialogOpen }) {
|
||||
</div>
|
||||
}
|
||||
|
||||
function TopBar() {
|
||||
function TopBar({toggleTheme}) {
|
||||
const [openAboutModal, setOpenAboutModal] = React.useState(false);
|
||||
|
||||
const handleOpenAboutModal = () => {
|
||||
@ -164,6 +164,7 @@ function TopBar() {
|
||||
<Typography variant="h6" component="div" sx={{ flexGrow: 1 }}>
|
||||
ENcarteS
|
||||
</Typography>
|
||||
<Button color="inherit" onClick={toggleTheme}>Changer de thème</Button>
|
||||
<Button color="inherit" onClick={handleOpenAboutModal}>À propos</Button>
|
||||
</Toolbar>
|
||||
</AppBar>
|
||||
@ -255,7 +256,7 @@ function EditDialog({ isOpen, setIsOpen, room }) {
|
||||
</Dialog>
|
||||
}
|
||||
|
||||
export default function App() {
|
||||
function App({toggleTheme}) {
|
||||
const [currentFloor, setCurrentFloor] = React.useState(undefined);
|
||||
const [selectedRoom, setSelectedRoom] = React.useState(undefined);
|
||||
const [isEditDialogOpen, setIsEditDialogOpen] = React.useState(false);
|
||||
@ -266,7 +267,7 @@ export default function App() {
|
||||
setIsOpen={setIsEditDialogOpen}
|
||||
room={selectedRoom}
|
||||
/>
|
||||
<TopBar />
|
||||
<TopBar toggleTheme={toggleTheme}/>
|
||||
<div style={{ flexGrow: '1', display: 'flex', flexDirection: 'line', flexWrap: 'nowrap' }}>
|
||||
{currentFloor !== undefined ? <Map
|
||||
selectedRoom={selectedRoom}
|
||||
@ -291,17 +292,27 @@ export default function App() {
|
||||
</>
|
||||
}
|
||||
|
||||
const darkTheme = createTheme({
|
||||
export default function ThemedApp() {
|
||||
const [themeMode, setThemeMode] = React.useState('light');
|
||||
|
||||
const theme = createTheme({
|
||||
palette: {
|
||||
mode: 'dark',
|
||||
mode: themeMode,
|
||||
},
|
||||
});
|
||||
|
||||
function ThemedApp() {
|
||||
const toggleTheme = () => {
|
||||
if (themeMode === 'light') {
|
||||
setThemeMode('dark')
|
||||
} else {
|
||||
setThemeMode('light')
|
||||
}
|
||||
}
|
||||
|
||||
return (
|
||||
<ThemeProvider theme={darkTheme}>
|
||||
<ThemeProvider theme={theme}>
|
||||
<CssBaseline />
|
||||
<App />
|
||||
<App toggleTheme={toggleTheme} />
|
||||
</ThemeProvider>
|
||||
);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user