Website auf React

This commit is contained in:
2026-08-07 23:08:49 +02:00
parent ee89442c04
commit 73c21c6475
9 changed files with 955 additions and 94 deletions
+2 -2
View File
@@ -2,9 +2,9 @@
<html lang="en"> <html lang="en">
<head> <head>
<meta charset="UTF-8" /> <meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" /> <link rel="icon" type="image/svg+xml" href="/SimplyCPQ_Logo.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>simply-cpq</title> <title>Simply CPQ</title>
</head> </head>
<body> <body>
<div id="root"></div> <div id="root"></div>
+936 -23
View File
File diff suppressed because it is too large Load Diff
+8 -1
View File
@@ -10,8 +10,15 @@
"preview": "vite preview" "preview": "vite preview"
}, },
"dependencies": { "dependencies": {
"@emotion/react": "^11.14.0",
"@emotion/styled": "^11.14.1",
"@fontsource-variable/inter": "^5.3.0",
"@mui/icons-material": "^9.3.1",
"@mui/material": "^9.3.1",
"@mui/x-data-grid": "^9.11.0",
"react": "^19.2.8", "react": "^19.2.8",
"react-dom": "^19.2.8" "react-dom": "^19.2.8",
"react-router": "^8.3.0"
}, },
"devDependencies": { "devDependencies": {
"@eslint/js": "^10.0.1", "@eslint/js": "^10.0.1",
-4
View File
@@ -1,8 +1,6 @@
import { createBrowserRouter, RouterProvider } from 'react-router' import { createBrowserRouter, RouterProvider } from 'react-router'
import Layout from './Layout.tsx' import Layout from './Layout.tsx'
import HomePage from './pages/HomePage.tsx' import HomePage from './pages/HomePage.tsx'
import LanguagesPage from './pages/LanguagesPage.tsx'
import PropertyPage from './pages/PropertyPage.tsx'
import NotFoundPage from './pages/NotFoundPage.tsx' import NotFoundPage from './pages/NotFoundPage.tsx'
import './App.css' import './App.css'
@@ -14,8 +12,6 @@ const router = createBrowserRouter([
element: <Layout />, element: <Layout />,
children: [ children: [
{ index: true, element: <HomePage /> }, { index: true, element: <HomePage /> },
{ path: 'language', element: <LanguagesPage /> },
{ path: 'propertypool', element: <PropertyPage /> },
{ path: '*', element: <NotFoundPage /> }, { path: '*', element: <NotFoundPage /> },
], ],
}, },
+1 -1
View File
@@ -8,7 +8,7 @@ function Footer() {
<AppBar position="static"> <AppBar position="static">
<Toolbar> <Toolbar>
<Typography variant="body2" component="div" sx={{ flexGrow: 1 }}> <Typography variant="body2" component="div" sx={{ flexGrow: 1 }}>
SimplyCPQ Material Editor (c) 2026 Dr. Thomas Sindt Simply CPQ (c) 2026 Dr. Thomas Sindt
</Typography> </Typography>
</Toolbar> </Toolbar>
</AppBar> </AppBar>
+8 -5
View File
@@ -14,14 +14,17 @@ function NavBar() {
<img src={SimplyCPQLogo} alt="SimplyCPQ Logo" style={{ width: '40px', height: '40px' }} /> <img src={SimplyCPQLogo} alt="SimplyCPQ Logo" style={{ width: '40px', height: '40px' }} />
</IconButton> </IconButton>
<Typography variant="h6" component="div" sx={{ flexGrow: 1 }}> <Typography variant="h6" component="div" sx={{ flexGrow: 1 }}>
SimplyCPQ Material Editor Simply CPQ
</Typography>
<Typography variant="body2" component="div" sx={{ flexGrow: 1 }}>
einfach anbieten einfach gemacht
</Typography> </Typography>
<Stack direction="row" spacing={2}> <Stack direction="row" spacing={2}>
<Button color="inherit" onClick={() => navigate('/propertypool')}>Property Pool</Button>
<Button color="inherit">Products</Button>
<Button color="inherit">Conditions</Button>
<Button color="inherit" onClick={() => navigate('/language')}>Languages</Button>
<Button color="inherit" onClick={() => navigate('/')}>Home</Button> <Button color="inherit" onClick={() => navigate('/')}>Home</Button>
<Button color="inherit">Simply CPQ</Button>
<Button color="inherit">Dienstleistungen</Button>
<Button color="inherit">Über uns</Button>
<Button color="inherit">Kontakt</Button>
</Stack> </Stack>
</Toolbar> </Toolbar>
</AppBar> </AppBar>
-8
View File
@@ -1,8 +0,0 @@
import Keycloak from 'keycloak-js';
const keycloak = new Keycloak({
url: 'http://localhost:8080',
realm: 'simplycpq',
clientId: 'scpq',
});
export default keycloak;
@@ -1,25 +0,0 @@
import React from 'react';
import Box from '@mui/material/Box';
import Typography from '@mui/material/Typography';
const LanguagesPage: React.FC = () => {
return (
<Box component="section" sx={{ p: 2, border: '1px dashed grey' }}>
<Typography variant="h3">
Language Management
</Typography>
<Box
sx={{
display: "flex", // Arrange children in a row
flexDirection: "row",
width: "100vw", // Full width of the parent
p: 2, // Padding around the flex container
bgcolor: "#f5f5f5"
}}
>
</Box>
</Box>
);
};
export default LanguagesPage;
@@ -1,25 +0,0 @@
import React from 'react';
import Box from '@mui/material/Box';
import Typography from '@mui/material/Typography';
const PropertyPage: React.FC = () => {
return (
<Box component="section" sx={{ p: 2, border: '1px dashed grey' }}>
<Typography variant="h3">
Property Type Management
</Typography>
<Box
sx={{
display: "flex", // Arrange children in a row
flexDirection: "row",
width: "100vw", // Full width of the parent
p: 2, // Padding around the flex container
bgcolor: "#f5f5f5"
}}
>
</Box>
</Box>
);
};
export default PropertyPage;