Refactoring
|
@ -24,6 +24,7 @@
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@fortawesome/fontawesome-svg-core": "^6.4.2",
|
"@fortawesome/fontawesome-svg-core": "^6.4.2",
|
||||||
|
"@fortawesome/free-brands-svg-icons": "^6.4.2",
|
||||||
"@fortawesome/pro-regular-svg-icons": "^6.4.2",
|
"@fortawesome/pro-regular-svg-icons": "^6.4.2",
|
||||||
"@solidjs/meta": "^0.28.6",
|
"@solidjs/meta": "^0.28.6",
|
||||||
"@solidjs/router": "^0.8.3",
|
"@solidjs/router": "^0.8.3",
|
||||||
|
|
11
pnpm-lock.yaml
generated
|
@ -8,6 +8,9 @@ dependencies:
|
||||||
'@fortawesome/fontawesome-svg-core':
|
'@fortawesome/fontawesome-svg-core':
|
||||||
specifier: ^6.4.2
|
specifier: ^6.4.2
|
||||||
version: 6.4.2
|
version: 6.4.2
|
||||||
|
'@fortawesome/free-brands-svg-icons':
|
||||||
|
specifier: ^6.4.2
|
||||||
|
version: 6.4.2
|
||||||
'@fortawesome/pro-regular-svg-icons':
|
'@fortawesome/pro-regular-svg-icons':
|
||||||
specifier: ^6.4.2
|
specifier: ^6.4.2
|
||||||
version: 6.4.2
|
version: 6.4.2
|
||||||
|
@ -1781,6 +1784,14 @@ packages:
|
||||||
'@fortawesome/fontawesome-common-types': 6.4.2
|
'@fortawesome/fontawesome-common-types': 6.4.2
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
|
/@fortawesome/free-brands-svg-icons@6.4.2:
|
||||||
|
resolution: {integrity: sha512-LKOwJX0I7+mR/cvvf6qIiqcERbdnY+24zgpUSouySml+5w8B4BJOx8EhDR/FTKAu06W12fmUIcv6lzPSwYKGGg==, tarball: https://npm.fontawesome.com/@fortawesome/free-brands-svg-icons/-/6.4.2/free-brands-svg-icons-6.4.2.tgz}
|
||||||
|
engines: {node: '>=6'}
|
||||||
|
requiresBuild: true
|
||||||
|
dependencies:
|
||||||
|
'@fortawesome/fontawesome-common-types': 6.4.2
|
||||||
|
dev: false
|
||||||
|
|
||||||
/@fortawesome/pro-regular-svg-icons@6.4.2:
|
/@fortawesome/pro-regular-svg-icons@6.4.2:
|
||||||
resolution: {integrity: sha512-e6LJbjPuthsDfskXvsy3kSpz/NFD2FQ0utZHelMwOyjkalPSbM3kyedZ4Vgq3XVTKo6NQd9FtIoHxxmEQHQKRA==, tarball: https://npm.fontawesome.com/@fortawesome/pro-regular-svg-icons/-/6.4.2/pro-regular-svg-icons-6.4.2.tgz}
|
resolution: {integrity: sha512-e6LJbjPuthsDfskXvsy3kSpz/NFD2FQ0utZHelMwOyjkalPSbM3kyedZ4Vgq3XVTKo6NQd9FtIoHxxmEQHQKRA==, tarball: https://npm.fontawesome.com/@fortawesome/pro-regular-svg-icons/-/6.4.2/pro-regular-svg-icons-6.4.2.tgz}
|
||||||
engines: {node: '>=6'}
|
engines: {node: '>=6'}
|
||||||
|
|
Before Width: | Height: | Size: 3.5 MiB After Width: | Height: | Size: 3.5 MiB |
Before Width: | Height: | Size: 3.8 MiB After Width: | Height: | Size: 3.8 MiB |
Before Width: | Height: | Size: 112 KiB After Width: | Height: | Size: 112 KiB |
Before Width: | Height: | Size: 3 MiB After Width: | Height: | Size: 3 MiB |
Before Width: | Height: | Size: 110 KiB After Width: | Height: | Size: 110 KiB |
Before Width: | Height: | Size: 639 KiB After Width: | Height: | Size: 639 KiB |
Before Width: | Height: | Size: 193 KiB After Width: | Height: | Size: 193 KiB |
Before Width: | Height: | Size: 248 KiB After Width: | Height: | Size: 248 KiB |
Before Width: | Height: | Size: 261 KiB After Width: | Height: | Size: 261 KiB |
Before Width: | Height: | Size: 330 KiB After Width: | Height: | Size: 330 KiB |
Before Width: | Height: | Size: 180 KiB After Width: | Height: | Size: 180 KiB |
Before Width: | Height: | Size: 165 KiB After Width: | Height: | Size: 165 KiB |
Before Width: | Height: | Size: 131 KiB After Width: | Height: | Size: 131 KiB |
Before Width: | Height: | Size: 158 KiB After Width: | Height: | Size: 158 KiB |
Before Width: | Height: | Size: 344 KiB After Width: | Height: | Size: 344 KiB |
Before Width: | Height: | Size: 163 KiB After Width: | Height: | Size: 163 KiB |
|
@ -35,7 +35,6 @@
|
||||||
background-color: #121629;
|
background-color: #121629;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
top: 0;
|
top: 0;
|
||||||
width: 155px;
|
|
||||||
height: 100%;
|
height: 100%;
|
||||||
margin-left: -8px;
|
margin-left: -8px;
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,21 +36,24 @@ function R(props: {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return (
|
return (
|
||||||
<A
|
<>
|
||||||
href={props.href}
|
{" "}
|
||||||
target={type() === "external" ? "_blank" : ""}
|
<A
|
||||||
rel={type() === "external" ? "noreferrer noopener" : ""}
|
href={props.href}
|
||||||
id={props.id}
|
target={type() === "external" ? "_blank" : ""}
|
||||||
class={props.class}
|
rel={type() === "external" ? "noreferrer noopener" : ""}
|
||||||
>
|
id={props.id}
|
||||||
<Show when={type() === "id"}>
|
class={props.class}
|
||||||
<FontAwesomeIcon class="left" icon={types["id"]} />
|
>
|
||||||
</Show>
|
<Show when={type() === "id"}>
|
||||||
{props.children}
|
<FontAwesomeIcon class="left" icon={types["id"]} />
|
||||||
<Show when={type() !== "id"}>
|
</Show>
|
||||||
<FontAwesomeIcon class="right" icon={types[type()]} title={type()} />
|
{props.children}
|
||||||
</Show>
|
<Show when={type() !== "id"}>
|
||||||
</A>
|
<FontAwesomeIcon class="right" icon={types[type()]} title={type()} />
|
||||||
|
</Show>
|
||||||
|
</A>{" "}
|
||||||
|
</>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
102
src/components/de/Navbar.tsx
Normal file
|
@ -0,0 +1,102 @@
|
||||||
|
import {
|
||||||
|
faBookOpen,
|
||||||
|
faCircleHalfStroke,
|
||||||
|
faGlobe,
|
||||||
|
faXmark,
|
||||||
|
} from "@fortawesome/pro-regular-svg-icons";
|
||||||
|
import { createSignal } from "solid-js";
|
||||||
|
import { A, useNavigate } from "solid-start";
|
||||||
|
import { FontAwesomeIcon } from "../FontAwesomeIcon";
|
||||||
|
|
||||||
|
export const [lightMode, setLightMode] = createSignal(false);
|
||||||
|
const [menu, setMenu] = createSignal(false);
|
||||||
|
|
||||||
|
function Navbar() {
|
||||||
|
const navigate = useNavigate();
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<div id="navbar" style={{ visibility: menu() ? "visible" : "hidden" }}>
|
||||||
|
<A href="/de/">
|
||||||
|
<FontAwesomeIcon icon={faBookOpen} /> Einführung
|
||||||
|
</A>
|
||||||
|
|
||||||
|
<A href="/de/overview">
|
||||||
|
<FontAwesomeIcon icon={faBookOpen} /> Start
|
||||||
|
</A>
|
||||||
|
<ol>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#start">Was sind EUCs?</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#why">Warum EUCs?</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#funktion">Funktionsweise</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#begriffe">Begriffe</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#sicherheit">Sicherheit</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#ausrüstung">Ausrüstung</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#cutout">Cut-out's</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#akkuss">Akkusicherheit</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#fahrweise">Fahrweise</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#wobbles">Wobbles</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#leistung">Leistung</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#federung">Federung</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#reifen">Reifen</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#historie">Historie</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/de/overview#geräte">Geräte Liste</A>
|
||||||
|
</li>
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
<A href="/de/manufacturers">
|
||||||
|
<FontAwesomeIcon icon={faBookOpen} /> Hersteller
|
||||||
|
</A>
|
||||||
|
|
||||||
|
<button onClick={() => setLightMode((e) => !e)}>
|
||||||
|
{lightMode() ? "Dark Mode " : "Light Mode "}
|
||||||
|
<FontAwesomeIcon icon={faCircleHalfStroke} />
|
||||||
|
</button>
|
||||||
|
<button onClick={() => navigate("/en/overview")}>
|
||||||
|
Englisch <FontAwesomeIcon icon={faGlobe} />
|
||||||
|
</button>
|
||||||
|
<button onClick={() => setMenu(false)}>
|
||||||
|
Close <FontAwesomeIcon icon={faXmark} />
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div
|
||||||
|
id="sidenavbar"
|
||||||
|
style={{ visibility: menu() ? "hidden" : "visible" }}
|
||||||
|
>
|
||||||
|
<button onClick={() => navigate(-1)}>Zurück</button>
|
||||||
|
<A href="#start">Start</A>
|
||||||
|
<button onClick={() => setMenu(true)}>Menu</button>
|
||||||
|
</div>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Navbar;
|
102
src/components/en/Navbar.tsx
Normal file
|
@ -0,0 +1,102 @@
|
||||||
|
import {
|
||||||
|
faBookOpen,
|
||||||
|
faCircleHalfStroke,
|
||||||
|
faGlobe,
|
||||||
|
faXmark,
|
||||||
|
} from "@fortawesome/pro-regular-svg-icons";
|
||||||
|
import { createSignal } from "solid-js";
|
||||||
|
import { A, useNavigate } from "solid-start";
|
||||||
|
import { FontAwesomeIcon } from "../FontAwesomeIcon";
|
||||||
|
|
||||||
|
export const [lightMode, setLightMode] = createSignal(false);
|
||||||
|
const [menu, setMenu] = createSignal(false);
|
||||||
|
|
||||||
|
function Navbar() {
|
||||||
|
const navigate = useNavigate();
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<div id="navbar" style={{ visibility: menu() ? "visible" : "hidden" }}>
|
||||||
|
<A href="/en/">
|
||||||
|
<FontAwesomeIcon icon={faBookOpen} /> Introduction
|
||||||
|
</A>
|
||||||
|
|
||||||
|
<A href="/en/overview">
|
||||||
|
<FontAwesomeIcon icon={faBookOpen} /> Start
|
||||||
|
</A>
|
||||||
|
<ol>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#start">What are EUCs?</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#why">Why EUCs?</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#funktion">Functionality</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#begriffe">Glossarry</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#sicherheit">Safety</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#ausrüstung">Gear</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#cutout">Cut-out's</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#akkuss">Battery safety</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#fahrweise">Ride style</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#wobbles">Wobbles</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#leistung">Performance</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#federung">Suspension</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#reifen">Tires</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#historie">History</A>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<A href="/en/overview#geräte">Device list</A>
|
||||||
|
</li>
|
||||||
|
</ol>
|
||||||
|
|
||||||
|
<A href="/en/manufacturers">
|
||||||
|
<FontAwesomeIcon icon={faBookOpen} /> Manufacturers
|
||||||
|
</A>
|
||||||
|
|
||||||
|
<button onClick={() => setLightMode((e) => !e)}>
|
||||||
|
{lightMode() ? "Dark Mode " : "Light Mode "}
|
||||||
|
<FontAwesomeIcon icon={faCircleHalfStroke} />
|
||||||
|
</button>
|
||||||
|
<button onClick={() => navigate("/de/overview")}>
|
||||||
|
Deutsch <FontAwesomeIcon icon={faGlobe} />
|
||||||
|
</button>
|
||||||
|
<button onClick={() => setMenu(false)}>
|
||||||
|
Close <FontAwesomeIcon icon={faXmark} />
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div
|
||||||
|
id="sidenavbar"
|
||||||
|
style={{ visibility: menu() ? "hidden" : "visible" }}
|
||||||
|
>
|
||||||
|
<button onClick={() => navigate(-1)}>Back</button>
|
||||||
|
<A href="#start">Start</A>
|
||||||
|
<button onClick={() => setMenu(true)}>Menu</button>
|
||||||
|
</div>
|
||||||
|
</>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Navbar;
|
19
src/root.tsx
|
@ -2,7 +2,6 @@
|
||||||
import "@fortawesome/fontawesome-svg-core/styles.css";
|
import "@fortawesome/fontawesome-svg-core/styles.css";
|
||||||
import { Suspense } from "solid-js";
|
import { Suspense } from "solid-js";
|
||||||
import {
|
import {
|
||||||
Body,
|
|
||||||
FileRoutes,
|
FileRoutes,
|
||||||
Head,
|
Head,
|
||||||
Html,
|
Html,
|
||||||
|
@ -11,11 +10,13 @@ import {
|
||||||
Routes,
|
Routes,
|
||||||
Scripts,
|
Scripts,
|
||||||
Title,
|
Title,
|
||||||
|
useLocation,
|
||||||
} from "solid-start";
|
} from "solid-start";
|
||||||
|
|
||||||
export default function Root() {
|
export default function Root() {
|
||||||
|
const location = useLocation();
|
||||||
return (
|
return (
|
||||||
<Html lang="en">
|
<Html lang={location.pathname.startsWith("/de") ? "de" : "en"}>
|
||||||
<Head>
|
<Head>
|
||||||
<Link
|
<Link
|
||||||
rel="apple-touch-icon"
|
rel="apple-touch-icon"
|
||||||
|
@ -103,14 +104,12 @@ export default function Root() {
|
||||||
/>
|
/>
|
||||||
<Title>SolidStart - Bare</Title>
|
<Title>SolidStart - Bare</Title>
|
||||||
</Head>
|
</Head>
|
||||||
<Body>
|
<Suspense>
|
||||||
<Suspense>
|
<Routes>
|
||||||
<Routes>
|
<FileRoutes />
|
||||||
<FileRoutes />
|
</Routes>
|
||||||
</Routes>
|
</Suspense>
|
||||||
</Suspense>
|
<Scripts />
|
||||||
<Scripts />
|
|
||||||
</Body>
|
|
||||||
</Html>
|
</Html>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
import { Link, Title, useNavigate } from "solid-start";
|
import { Body, Link, Title, useNavigate } from "solid-start";
|
||||||
|
import { lightMode } from "~/components/en/Navbar";
|
||||||
|
|
||||||
function KSS22() {
|
function KSS22() {
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
return (
|
return (
|
||||||
<>
|
<Body classList={{ "light-mode": lightMode() }}>
|
||||||
<Title>KS S22</Title>
|
<Title>KS S22</Title>
|
||||||
<Link rel="stylesheet" href="/styles/devices.css" />
|
<Link rel="stylesheet" href="/styles/devices.css" />
|
||||||
|
|
||||||
|
@ -14,7 +15,7 @@ function KSS22() {
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<img src="KS S22/S22shutterkode2.jpg" />
|
<img src="/images/KSS22/S22shutterkode2.jpg" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-8">
|
<div class="col-8">
|
||||||
|
@ -63,13 +64,13 @@ function KSS22() {
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<img src="KS S22/S22shutterkode5.jpg" />
|
<img src="/images/KSS22/S22shutterkode5.jpg" />
|
||||||
</div>
|
</div>
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<img src="KS S22/BusJump.jpg" />
|
<img src="/images/KSS22/BusJump.jpg" />
|
||||||
</div>
|
</div>
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<img src="KS S22/S22shutterkode4.jpg" />
|
<img src="/images/KSS22/S22shutterkode4.jpg" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -219,7 +220,7 @@ function KSS22() {
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</>
|
</Body>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,15 +1,13 @@
|
||||||
import {
|
import { faYoutube } from "@fortawesome/free-brands-svg-icons";
|
||||||
faArrowUpRightFromSquare,
|
import { faBookOpen, faGlobe } from "@fortawesome/pro-regular-svg-icons";
|
||||||
faBookOpen,
|
import { A, Body, Link, Title } from "solid-start";
|
||||||
faGlobe,
|
|
||||||
} from "@fortawesome/pro-regular-svg-icons";
|
|
||||||
import { A, Link, Title } from "solid-start";
|
|
||||||
import { FontAwesomeIcon } from "~/components/FontAwesomeIcon";
|
import { FontAwesomeIcon } from "~/components/FontAwesomeIcon";
|
||||||
|
import { lightMode } from "~/components/de/Navbar";
|
||||||
|
|
||||||
function StartDE() {
|
function Introduction() {
|
||||||
return (
|
return (
|
||||||
<>
|
<Body classList={{ "light-mode": lightMode() }}>
|
||||||
<Title>Start</Title>
|
<Title>Einführung</Title>
|
||||||
<Link rel="stylesheet" href="/styles/start.css" />
|
<Link rel="stylesheet" href="/styles/start.css" />
|
||||||
|
|
||||||
<div class="container">
|
<div class="container">
|
||||||
|
@ -64,8 +62,7 @@ function StartDE() {
|
||||||
<A href="/de/overview">
|
<A href="/de/overview">
|
||||||
<div id="MoreButton">
|
<div id="MoreButton">
|
||||||
<p>
|
<p>
|
||||||
Ich will alles darüber lesen!
|
Ich will alles darüber lesen! <FontAwesomeIcon icon={faBookOpen} />
|
||||||
<FontAwesomeIcon icon={faBookOpen} />
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</A>
|
</A>
|
||||||
|
@ -73,8 +70,7 @@ function StartDE() {
|
||||||
<A href="https:/youtube.com/playlist?list=PLfoxTRt1qLuAg-Al9JNHrl_7KVl-uSxwV">
|
<A href="https:/youtube.com/playlist?list=PLfoxTRt1qLuAg-Al9JNHrl_7KVl-uSxwV">
|
||||||
<div id="MoreButton">
|
<div id="MoreButton">
|
||||||
<p>
|
<p>
|
||||||
Mir reichen Videos
|
Mir reichen Videos <FontAwesomeIcon icon={faYoutube} />
|
||||||
<FontAwesomeIcon icon={faArrowUpRightFromSquare} />
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</A>
|
</A>
|
||||||
|
@ -82,13 +78,12 @@ function StartDE() {
|
||||||
<A href="/en/">
|
<A href="/en/">
|
||||||
<div id="MoreButton">
|
<div id="MoreButton">
|
||||||
<p>
|
<p>
|
||||||
Language
|
Switch to English <FontAwesomeIcon icon={faGlobe} />
|
||||||
<FontAwesomeIcon icon={faGlobe} />
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</A>
|
</A>
|
||||||
</>
|
</Body>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
export default StartDE;
|
export default Introduction;
|
||||||
|
|
|
@ -1,76 +1,13 @@
|
||||||
import { A } from "@solidjs/router";
|
import { Body, Link, Title } from "solid-start";
|
||||||
import { Link, Title, useNavigate } from "solid-start";
|
|
||||||
import R from "~/components/Reference";
|
import R from "~/components/Reference";
|
||||||
|
import Navbar, { lightMode } from "~/components/de/Navbar";
|
||||||
|
|
||||||
function Manufacturers() {
|
function Manufacturers() {
|
||||||
const navigate = useNavigate();
|
|
||||||
return (
|
return (
|
||||||
<>
|
<Body classList={{ "light-mode": lightMode() }}>
|
||||||
<Title>Hersteller</Title>
|
<Title>Hersteller</Title>
|
||||||
<Link rel="stylesheet" href="/styles/overview.css" />
|
<Link rel="stylesheet" href="/styles/overview.css" />
|
||||||
<div id="navbar">
|
<Navbar />
|
||||||
<A href="/de/">Start</A>
|
|
||||||
<A href="/de/overview#start">Was sind EUCs?</A>
|
|
||||||
<A href="/de/overview#why">Warum EUCs?</A>
|
|
||||||
<A href="/de/overview#funktion">Funktionsweise</A>
|
|
||||||
<A href="/de/overview#begriffe">Begriffe</A>
|
|
||||||
<A href="/de/overview#sicherheit">Sicherheit</A>
|
|
||||||
<A href="/de/overview#ausrüstung">Ausrüstung</A>
|
|
||||||
<A href="/de/overview#cutout">Cut-out's</A>
|
|
||||||
<A href="/de/overview#akkuss">Akkusicherheit</A>
|
|
||||||
<A href="/de/overview#fahrweise">Fahrweise</A>
|
|
||||||
<A href="/de/overview#wobbles">Wobbles</A>
|
|
||||||
<A href="/de/overview#leistung">Leistung</A>
|
|
||||||
<A href="/de/overview#federung">Federung</A>
|
|
||||||
<A href="/de/overview#reifen">Reifen</A>
|
|
||||||
<A href="/de/overview#historie">Historie</A>
|
|
||||||
<A href="/de/manufacturers">Hersteller</A>
|
|
||||||
<A href="/de/overview#geräte">Geräte Liste</A>
|
|
||||||
{/* <button onclick="myFunction()">Light Mode</button> */}
|
|
||||||
{/* <button onclick="window.location.href='en/overview';">Language</button> */}
|
|
||||||
<div>{/* <button onclick="closeit()"><-Schließen</button> */}</div>
|
|
||||||
</div>
|
|
||||||
<div id="sidenavbar">
|
|
||||||
<button onClick={() => navigate(-1)}>Back</button>
|
|
||||||
{/* <button onclick="menü()">Menu</button> */}
|
|
||||||
</div>
|
|
||||||
{/*
|
|
||||||
<!--light-mode-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function myFunction() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("light-mode");
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<!--menü-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function menü() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("menü");
|
|
||||||
document.getElementById("sidenavbar").style.visibility = "hidden";
|
|
||||||
document.getElementById("navbar").style.visibility = "visible";
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<!--closeit-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function closeit() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("menü");
|
|
||||||
document.getElementById("sidenavbar").style.visibility = "visible";
|
|
||||||
document.getElementById("navbar").style.visibility = "hidden";
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}
|
|
||||||
<article>
|
<article>
|
||||||
{/*
|
{/*
|
||||||
<!--hersteller-->
|
<!--hersteller-->
|
||||||
|
@ -243,7 +180,7 @@ function Manufacturers() {
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</article>
|
</article>
|
||||||
</>
|
</Body>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,130 +1,19 @@
|
||||||
import { A } from "@solidjs/router";
|
import { Body, Link, Title } from "solid-start";
|
||||||
import { Link, Title, useNavigate } from "solid-start";
|
|
||||||
import DeviceTile from "~/components/DeviceTile";
|
import DeviceTile from "~/components/DeviceTile";
|
||||||
import R from "~/components/Reference";
|
import R from "~/components/Reference";
|
||||||
|
import Navbar, { lightMode } from "~/components/de/Navbar";
|
||||||
|
|
||||||
function overview() {
|
function overview() {
|
||||||
const navigate = useNavigate();
|
|
||||||
return (
|
return (
|
||||||
<>
|
<Body classList={{ "light-mode": lightMode() }}>
|
||||||
<Title>Einführung EUCs</Title>
|
<Title>Einführung EUCs</Title>
|
||||||
<Link rel="stylesheet" href="/styles/overview.css" />
|
<Link rel="stylesheet" href="/styles/overview.css" />
|
||||||
|
<Navbar />
|
||||||
<div id="navbar">
|
|
||||||
<A href="/de/">Start</A>
|
|
||||||
<A href="#start">Was sind EUCs?</A>
|
|
||||||
<A href="#why">Warum EUCs?</A>
|
|
||||||
<A href="#funktion">Funktionsweise</A>
|
|
||||||
<A href="#begriffe">Begriffe</A>
|
|
||||||
<A href="#sicherheit">Sicherheit</A>
|
|
||||||
<A href="#ausrüstung">Ausrüstung</A>
|
|
||||||
<A href="#cutout">Cut-out's</A>
|
|
||||||
<A href="#akkuss">Akkusicherheit</A>
|
|
||||||
<A href="#fahrweise">Fahrweise</A>
|
|
||||||
<A href="#wobbles">Wobbles</A>
|
|
||||||
<A href="#leistung">Leistung</A>
|
|
||||||
<A href="#federung">Federung</A>
|
|
||||||
<A href="#reifen">Reifen</A>
|
|
||||||
<A href="#historie">Historie</A>
|
|
||||||
<A href="/de/manufacturers">Hersteller</A>
|
|
||||||
<A href="#geräte">Geräte Liste</A>
|
|
||||||
{/* <button onclick="myFunction()">Light Mode</button> */}
|
|
||||||
{/* <button onclick="window.location.href='en/overview';">Language</button> */}
|
|
||||||
<div>{/* <button onclick="closeit()"><-Schließen</button> */}</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div id="sidenavbar">
|
|
||||||
<button onClick={() => navigate(-1)}>Zurück</button>
|
|
||||||
<A href="#start">Start</A>
|
|
||||||
{/* <button onclick="menü()">Menü</button> */}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<header id="start">
|
<header id="start">
|
||||||
<img src="/images/cover.jpg" />
|
<img src="/images/cover.jpg" />
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
{/* <!--light-mode--> */}
|
|
||||||
{/* <script>
|
|
||||||
function myFunction() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("light-mode");
|
|
||||||
}
|
|
||||||
</script> */}
|
|
||||||
|
|
||||||
{/* <!--menü--> */}
|
|
||||||
{/* <script>
|
|
||||||
function menü() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("menü");
|
|
||||||
document.getElementById("sidenavbar").style.visibility = "hidden";
|
|
||||||
document.getElementById("navbar").style.visibility = "visible";
|
|
||||||
}
|
|
||||||
</script> */}
|
|
||||||
|
|
||||||
{/* <script>
|
|
||||||
document.getElementById("imghover1").addEventListener("mouseover", function_imghover1);
|
|
||||||
document.getElementById("imghover1").addEventListener("mouseout", funtion_hide);
|
|
||||||
|
|
||||||
document.getElementById('imghover2').addEventListener("mouseover", function_imghover2);
|
|
||||||
document.getElementById('imghover2').addEventListener("mouseout", funtion_hide);
|
|
||||||
|
|
||||||
getElementById('imghover3').addEventListener("mouseover", function_imghover3);
|
|
||||||
getElementById('imghover3').addEventListener("mouseout", funtion_hide);
|
|
||||||
|
|
||||||
function function_imghover1(){
|
|
||||||
document.getElementById("hidden1").style.display = "block";
|
|
||||||
let position = document.getElementById("hidden1");
|
|
||||||
|
|
||||||
const onMouseMove = (e) =>{
|
|
||||||
position.style.left = e.pageX + 'px';
|
|
||||||
position.style.top = e.pageY + 'px';
|
|
||||||
}
|
|
||||||
|
|
||||||
document.addEventListener('mousemove', onMouseMove);
|
|
||||||
}
|
|
||||||
|
|
||||||
function function_imghover2(){
|
|
||||||
document.getElementById('hidden2').style.display = "block";
|
|
||||||
let position = document.getElementById('hidden2');
|
|
||||||
|
|
||||||
const onMouseMove = (e) =>{
|
|
||||||
position.style.left = e.pageX + 'px';
|
|
||||||
position.style.top = e.pageY + 'px';
|
|
||||||
}
|
|
||||||
|
|
||||||
document.addEventListener('mousemove', onMouseMove);
|
|
||||||
}
|
|
||||||
|
|
||||||
function function_imghover3(){
|
|
||||||
document.getElementById('hidden3').style.display = "block";
|
|
||||||
let position = document.getElementById('hidden3');
|
|
||||||
|
|
||||||
const onMouseMove = (e) =>{
|
|
||||||
position.style.left = e.pageX + 'px';
|
|
||||||
position.style.top = e.pageY + 'px';
|
|
||||||
}
|
|
||||||
|
|
||||||
document.addEventListener('mousemove', onMouseMove);
|
|
||||||
}
|
|
||||||
|
|
||||||
function funtion_hide(){
|
|
||||||
document.getElementById('hidden1').style.display = "none";
|
|
||||||
document.getElementById('hidden2').style.display = "none";
|
|
||||||
document.getElementById('hidden3').style.display = "none";
|
|
||||||
}
|
|
||||||
|
|
||||||
</script> */}
|
|
||||||
|
|
||||||
{/* <!--closeit--> */}
|
|
||||||
{/* <script>
|
|
||||||
function closeit() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("menü");
|
|
||||||
document.getElementById("sidenavbar").style.visibility = "visible";
|
|
||||||
document.getElementById("navbar").style.visibility = "hidden";
|
|
||||||
}
|
|
||||||
</script> */}
|
|
||||||
|
|
||||||
{/* <!--Intro--> */}
|
{/* <!--Intro--> */}
|
||||||
<article>
|
<article>
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
@ -444,18 +333,12 @@ function overview() {
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<h3 id="begriffe">Begriffs- und Spezifikations Erklärungen</h3>
|
<h3 id="begriffe">Begriffs- und Spezifikations Erklärungen</h3>
|
||||||
<div class="col-6">
|
<div class="col-6">
|
||||||
{/* <style>
|
|
||||||
p {
|
|
||||||
text-align: left;
|
|
||||||
}
|
|
||||||
</style> */}
|
|
||||||
<p>
|
<p>
|
||||||
<b id="tiltback">Tilt-back</b>: Die Pedale des Geräts neigen sich
|
<b id="tiltback">Tilt-back</b>: Die Pedale des Geräts neigen sich
|
||||||
nach hinten, um den Fahrer abzubremsen. Wird bei niedrigem Akku
|
nach hinten, um den Fahrer abzubremsen. Wird bei niedrigem Akku
|
||||||
stand oder zu hoher Beanspruchung benutzt, um die Elektronik zu
|
stand oder zu hoher Beanspruchung benutzt, um die Elektronik zu
|
||||||
schützen.
|
schützen.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<b>Pedal Dip</b>: Die pedale geben nach, das Gerät kann die
|
<b>Pedal Dip</b>: Die pedale geben nach, das Gerät kann die
|
||||||
gefragte Leistung nicht aufrechterhalten und die Pedale neigen
|
gefragte Leistung nicht aufrechterhalten und die Pedale neigen
|
||||||
|
@ -463,13 +346,11 @@ function overview() {
|
||||||
Bremsen). In den meisten Fällen kommen die Pedale aber sofort
|
Bremsen). In den meisten Fällen kommen die Pedale aber sofort
|
||||||
wieder hoch, sodass die Fahrt ungestört weiter gehen kann.
|
wieder hoch, sodass die Fahrt ungestört weiter gehen kann.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<b>Pedal-angle</b>: Winkel in dem die Pedale zum Gerät stehen, von
|
<b>Pedal-angle</b>: Winkel in dem die Pedale zum Gerät stehen, von
|
||||||
vorne gesehen. Ein steilerer Winkel sorgt für mehr Halt in Kurven,
|
vorne gesehen. Ein steilerer Winkel sorgt für mehr Halt in Kurven,
|
||||||
kann aber auch unangenehm werden für längere Fahrten.
|
kann aber auch unangenehm werden für längere Fahrten.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p class="imghover">
|
<p class="imghover">
|
||||||
<b id="spiked-pedals">Spiked-pedals</b>: Spitzen auf den Pedalen,
|
<b id="spiked-pedals">Spiked-pedals</b>: Spitzen auf den Pedalen,
|
||||||
die Schuhen mehr Halt geben. Ähnlich zu Mountainbike Pedalen, sind
|
die Schuhen mehr Halt geben. Ähnlich zu Mountainbike Pedalen, sind
|
||||||
|
@ -482,7 +363,6 @@ function overview() {
|
||||||
<div class="hidden">
|
<div class="hidden">
|
||||||
<img src="/images/SpikedPedals.jpeg" />
|
<img src="/images/SpikedPedals.jpeg" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p class="imghover">
|
<p class="imghover">
|
||||||
<b id="pads">Pads</b>: aus Plastik oder Schaumstoff bestehende
|
<b id="pads">Pads</b>: aus Plastik oder Schaumstoff bestehende
|
||||||
Teile die seitlich am Gerät montiert werden, meist gedruckt aus
|
Teile die seitlich am Gerät montiert werden, meist gedruckt aus
|
||||||
|
@ -495,13 +375,11 @@ function overview() {
|
||||||
<div class="hidden">
|
<div class="hidden">
|
||||||
<img src="/images/Pads.jpg" />
|
<img src="/images/Pads.jpg" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<b>Power Pads</b>: haben Kontakt an den Waden und dem
|
<b>Power Pads</b>: haben Kontakt an den Waden und dem
|
||||||
Schienenbein, dienen zum besseren beschleunigen und bremsen.
|
Schienenbein, dienen zum besseren beschleunigen und bremsen.
|
||||||
Essenziell für schwere Geräte mit hohen pedalen.
|
Essenziell für schwere Geräte mit hohen pedalen.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<b>Jump Pads</b>: haben Kontakt mit dem Fuß und der Verse, dienen
|
<b>Jump Pads</b>: haben Kontakt mit dem Fuß und der Verse, dienen
|
||||||
zum Springen und zur Sicherheit. Im Falle eines unerwarteten
|
zum Springen und zur Sicherheit. Im Falle eines unerwarteten
|
||||||
|
@ -509,14 +387,13 @@ function overview() {
|
||||||
Gerät fällt. Allerdings können sie im Falle eines crashes
|
Gerät fällt. Allerdings können sie im Falle eines crashes
|
||||||
behinderlich sein, da sie ein schnelles absteigen erschweren.
|
behinderlich sein, da sie ein schnelles absteigen erschweren.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
<b>Wobbles</b>: beschreibt das unbeabsichtigte Wackeln des Geräts
|
<b>Wobbles</b>: beschreibt das unbeabsichtigte Wackeln des Geräts
|
||||||
bei höherer Geschwindigkeit. Mehr dazu <R href="#wobbles">hier</R>
|
bei höherer Geschwindigkeit. Mehr dazu <R href="#wobbles">hier</R>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style={{ "padding-left": "3%" }} class="col-6">
|
<div class="col-6">
|
||||||
<p class="imghover">
|
<p class="imghover">
|
||||||
<b id="trolley">Trolley Handle</b>: ein ausfahrbarer Griff zum
|
<b id="trolley">Trolley Handle</b>: ein ausfahrbarer Griff zum
|
||||||
Schieben des Gerätes, ähnlich wie bei einem Koffer.
|
Schieben des Gerätes, ähnlich wie bei einem Koffer.
|
||||||
|
@ -991,7 +868,7 @@ function overview() {
|
||||||
auch unter kontrolle bekommen. Generell sagen viele, dass es eine{" "}
|
auch unter kontrolle bekommen. Generell sagen viele, dass es eine{" "}
|
||||||
<b>Sache des Trainings</b> und der Erfahrung ist. Auch sind Geräte
|
<b>Sache des Trainings</b> und der Erfahrung ist. Auch sind Geräte
|
||||||
wie die MSuper-Reihe, RS's und EXN's von Gotway anfälliger als zum
|
wie die MSuper-Reihe, RS's und EXN's von Gotway anfälliger als zum
|
||||||
Beispiel das Veteran Sherman oder das <R href="/KS22DE">KS S22</R>.
|
Beispiel das Veteran Sherman oder das <R href="/de/KS22">KS S22</R>.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -1086,11 +963,7 @@ function overview() {
|
||||||
<div class="righties">
|
<div class="righties">
|
||||||
<img src="/images/solowheel-1.jpg" />
|
<img src="/images/solowheel-1.jpg" />
|
||||||
</div>
|
</div>
|
||||||
<img
|
<img class="lefties" src="/images/historieEUC.webp" />
|
||||||
class="lefties"
|
|
||||||
style={{ clear: "none" }}
|
|
||||||
src="/images/historieEUC.webp"
|
|
||||||
/>
|
|
||||||
<p>
|
<p>
|
||||||
Die Grundlegende Technik kam mit dem
|
Die Grundlegende Technik kam mit dem
|
||||||
<R href="https://de.wikipedia.org/wiki/Segway_Personal_Transporter">
|
<R href="https://de.wikipedia.org/wiki/Segway_Personal_Transporter">
|
||||||
|
@ -1217,7 +1090,7 @@ function overview() {
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<DeviceTile
|
<DeviceTile
|
||||||
href="KSS22"
|
href="/de/KSS22"
|
||||||
name="Kingsong S22"
|
name="Kingsong S22"
|
||||||
src="/videos/S20Werbevideo.mp4"
|
src="/videos/S20Werbevideo.mp4"
|
||||||
/>
|
/>
|
||||||
|
@ -1254,7 +1127,7 @@ function overview() {
|
||||||
</div>
|
</div>
|
||||||
</article>
|
</article>
|
||||||
<footer />
|
<footer />
|
||||||
</>
|
</Body>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,20 +1,16 @@
|
||||||
import { Link, Title, useNavigate } from "solid-start";
|
import { Body, Link, Title } from "solid-start";
|
||||||
|
import { lightMode } from "~/components/en/Navbar";
|
||||||
|
|
||||||
function KSS22() {
|
function KSS22() {
|
||||||
const navigate = useNavigate();
|
|
||||||
return (
|
return (
|
||||||
<>
|
<Body classList={{ "light-mode": lightMode() }}>
|
||||||
<Title>KS S22</Title>
|
<Title>KS S22</Title>
|
||||||
<Link rel="stylesheet" href="/styles/devices.css" />
|
<Link rel="stylesheet" href="/styles/devices.css" />
|
||||||
|
{/* <Navbar /> */}
|
||||||
<div id="sidenavbar">
|
|
||||||
<button onClick={() => navigate(-1)}>Back</button>
|
|
||||||
<button onClick={() => navigate("/en/overview")}>Start</button>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<img src="KS S22/S22shutterkode2.jpg" />
|
<img src="/images/KSS22/S22shutterkode2.jpg" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-8">
|
<div class="col-8">
|
||||||
|
@ -62,13 +58,13 @@ function KSS22() {
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<img src="KS S22/S22shutterkode5.jpg" />
|
<img src="/images/KSS22/S22shutterkode5.jpg" />
|
||||||
</div>
|
</div>
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<img src="KS S22/BusJump.jpg" />
|
<img src="/images/KSS22/BusJump.jpg" />
|
||||||
</div>
|
</div>
|
||||||
<div class="col-4">
|
<div class="col-4">
|
||||||
<img src="KS S22/S22shutterkode4.jpg" />
|
<img src="/images/KSS22/S22shutterkode4.jpg" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -216,7 +212,7 @@ function KSS22() {
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</>
|
</Body>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,15 +1,13 @@
|
||||||
import {
|
import { faYoutube } from "@fortawesome/free-brands-svg-icons";
|
||||||
faArrowUpRightFromSquare,
|
import { faBookOpen, faGlobe } from "@fortawesome/pro-regular-svg-icons";
|
||||||
faBookOpen,
|
import { A, Body, Link, Title } from "solid-start";
|
||||||
faGlobe,
|
|
||||||
} from "@fortawesome/pro-regular-svg-icons";
|
|
||||||
import { A, Link, Title } from "solid-start";
|
|
||||||
import { FontAwesomeIcon } from "~/components/FontAwesomeIcon";
|
import { FontAwesomeIcon } from "~/components/FontAwesomeIcon";
|
||||||
|
import { lightMode } from "~/components/en/Navbar";
|
||||||
|
|
||||||
function StartENG() {
|
function Introduction() {
|
||||||
return (
|
return (
|
||||||
<>
|
<Body classList={{ "light-mode": lightMode() }}>
|
||||||
<Title>Start</Title>
|
<Title>Introduction</Title>
|
||||||
<Link rel="stylesheet" href="/styles/start.css" />
|
<Link rel="stylesheet" href="/styles/start.css" />
|
||||||
|
|
||||||
<div class="container">
|
<div class="container">
|
||||||
|
@ -66,7 +64,7 @@ function StartENG() {
|
||||||
<A href="/en/overview">
|
<A href="/en/overview">
|
||||||
<div id="MoreButton">
|
<div id="MoreButton">
|
||||||
<p>
|
<p>
|
||||||
I want to read everything about it!
|
I want to read everything about it!{" "}
|
||||||
<FontAwesomeIcon icon={faBookOpen} />
|
<FontAwesomeIcon icon={faBookOpen} />
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
@ -75,8 +73,7 @@ function StartENG() {
|
||||||
<A href="https:/youtube.com/playlist?list=PLfoxTRt1qLuAg-Al9JNHrl_7KVl-uSxwV">
|
<A href="https:/youtube.com/playlist?list=PLfoxTRt1qLuAg-Al9JNHrl_7KVl-uSxwV">
|
||||||
<div id="MoreButton">
|
<div id="MoreButton">
|
||||||
<p>
|
<p>
|
||||||
Na, videos are just fine
|
Na, videos are just fine <FontAwesomeIcon icon={faYoutube} />
|
||||||
<FontAwesomeIcon icon={faArrowUpRightFromSquare} />
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</A>
|
</A>
|
||||||
|
@ -84,13 +81,12 @@ function StartENG() {
|
||||||
<A href="/de/">
|
<A href="/de/">
|
||||||
<div id="MoreButton">
|
<div id="MoreButton">
|
||||||
<p>
|
<p>
|
||||||
Sprache
|
Wechsel zu Deutsch <FontAwesomeIcon icon={faGlobe} />
|
||||||
<FontAwesomeIcon icon={faGlobe} />
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</A>
|
</A>
|
||||||
</>
|
</Body>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
export default StartENG;
|
export default Introduction;
|
||||||
|
|
|
@ -1,75 +1,12 @@
|
||||||
import { A, Link, Title, useNavigate } from "solid-start";
|
import { Body, Link, Title } from "solid-start";
|
||||||
import R from "~/components/Reference";
|
import R from "~/components/Reference";
|
||||||
|
import Navbar, { lightMode } from "~/components/en/Navbar";
|
||||||
|
|
||||||
function Manufacturers() {
|
function Manufacturers() {
|
||||||
const navigate = useNavigate();
|
|
||||||
return (
|
return (
|
||||||
<>
|
<Body classList={{ "light-mode": lightMode() }}>
|
||||||
<Title>Manufacturers</Title>
|
<Title>Manufacturers</Title>
|
||||||
<Link rel="stylesheet" href="/styles/overview.css" />
|
<Link rel="stylesheet" href="/styles/overview.css" /> <Navbar />
|
||||||
<div id="navbar">
|
|
||||||
<A href="/en/">Start</A>
|
|
||||||
<A href="/en/overview#start">What are EUCs?</A>
|
|
||||||
<A href="/en/overview#why">Why EUCs?</A>
|
|
||||||
<A href="/en/overview#funktion">Functionality</A>
|
|
||||||
<A href="/en/overview#begriffe">Glossarry</A>
|
|
||||||
<A href="/en/overview#sicherheit">Safety</A>
|
|
||||||
<A href="/en/overview#ausrüstung">Gear</A>
|
|
||||||
<A href="/en/overview#cutout">Cut-out's</A>
|
|
||||||
<A href="/en/overview#akkuss">Battery safety</A>
|
|
||||||
<A href="/en/overview#fahrweise">Ride style</A>
|
|
||||||
<A href="/en/overview#wobbles">Wobbles</A>
|
|
||||||
<A href="/en/overview#leistung">Performance</A>
|
|
||||||
<A href="/en/overview#federung">Suspension</A>
|
|
||||||
<A href="/en/overview#reifen">Tires</A>
|
|
||||||
<A href="/en/overview#historie">History</A>
|
|
||||||
<A href="/en/manufacturers">Manufacturers</A>
|
|
||||||
<A href="/en/overview#geräte">Device list</A>
|
|
||||||
{/* <button onclick="myFunction()">Light Mode</button> */}
|
|
||||||
{/* <button onclick="window.location.href='/de/manufacturers';">Sprache</button> */}
|
|
||||||
<div>{/* <button onclick="closeit()"><A> <-Close</A></button> */}</div>
|
|
||||||
</div>
|
|
||||||
<div id="sidenavbar">
|
|
||||||
<button onClick={() => navigate(-1)}>Back</button>
|
|
||||||
{/* <button onclick="menü()">Menu</button> */}
|
|
||||||
</div>
|
|
||||||
{/*
|
|
||||||
<!--light-mode-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function myFunction() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("light-mode");
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<!--menü-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function menü() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("menü");
|
|
||||||
document.getElementById("sidenavbar").style.visibility = "hidden";
|
|
||||||
document.getElementById("navbar").style.visibility = "visible";
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<!--closeit-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function closeit() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("menü");
|
|
||||||
document.getElementById("sidenavbar").style.visibility = "visible";
|
|
||||||
document.getElementById("navbar").style.visibility = "hidden";
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}
|
|
||||||
<article>
|
<article>
|
||||||
{/*
|
{/*
|
||||||
<!--hersteller-->
|
<!--hersteller-->
|
||||||
|
@ -234,7 +171,7 @@ function Manufacturers() {
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</article>
|
</article>
|
||||||
</>
|
</Body>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,134 +1,18 @@
|
||||||
import { A, Link, Title, useNavigate } from "solid-start";
|
import { Body, Link, Title } from "solid-start";
|
||||||
import DeviceTile from "~/components/DeviceTile";
|
import DeviceTile from "~/components/DeviceTile";
|
||||||
import R from "~/components/Reference";
|
import R from "~/components/Reference";
|
||||||
|
import Navbar, { lightMode } from "~/components/en/Navbar";
|
||||||
|
|
||||||
function Overview() {
|
function Overview() {
|
||||||
const navigate = useNavigate();
|
|
||||||
return (
|
return (
|
||||||
<>
|
<Body classList={{ "light-mode": lightMode() }}>
|
||||||
<Title>Introduction EUCs</Title>
|
<Title>Introduction EUCs</Title>
|
||||||
<Link rel="stylesheet" href="/styles/overview.css" />
|
<Link rel="stylesheet" href="/styles/overview.css" />
|
||||||
<div id="navbar">
|
<Navbar />
|
||||||
<A href="/en/">Start</A>
|
|
||||||
<A href="#start">What are EUCs?</A>
|
|
||||||
<A href="#why">Why EUCs?</A>
|
|
||||||
<A href="#funktion">Functionality</A>
|
|
||||||
<A href="#begriffe">Glossarry</A>
|
|
||||||
<A href="#sicherheit">Safety</A>
|
|
||||||
<A href="#ausrüstung">Gear</A>
|
|
||||||
<A href="#cutout">Cut-out's</A>
|
|
||||||
<A href="#akkuss">Battery safety</A>
|
|
||||||
<A href="#fahrweise">Ride style</A>
|
|
||||||
<A href="#wobbles">Wobbles</A>
|
|
||||||
<A href="#leistung">Performance</A>
|
|
||||||
<A href="#federung">Suspension</A>
|
|
||||||
<A href="#reifen">Tires</A>
|
|
||||||
<A href="#historie">History</A>
|
|
||||||
<A href="/en/manufacturers">Manufacturers</A>
|
|
||||||
<A href="#geräte">Device list</A>
|
|
||||||
{/* <button onclick="myFunction()">Light Mode</button> */}
|
|
||||||
{/* <button onclick="window.location.href='/de/overview';">Sprache</button> */}
|
|
||||||
<div>{/* <button onclick="closeit()"><A> <-Close</A></button> */}</div>
|
|
||||||
</div>
|
|
||||||
<div id="sidenavbar">
|
|
||||||
<button onClick={() => navigate(-1)}>Back</button>
|
|
||||||
<A href="#start">Start</A>
|
|
||||||
{/* <button onclick="menü()">Menu</button> */}
|
|
||||||
</div>
|
|
||||||
<header id="start">
|
<header id="start">
|
||||||
<img src="/images/cover.jpg" />
|
<img src="/images/cover.jpg" />
|
||||||
</header>
|
</header>
|
||||||
{/*
|
{/*
|
||||||
<!--light-mode-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function myFunction() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("light-mode");
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<!--menü-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function menü() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("menü");
|
|
||||||
document.getElementById("sidenavbar").style.visibility = "hidden";
|
|
||||||
document.getElementById("navbar").style.visibility = "visible";
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}
|
|
||||||
{/* <script>
|
|
||||||
document.getElementById("imghover1").addEventListener("mouseover", function_imghover1);
|
|
||||||
document.getElementById("imghover1").addEventListener("mouseout", funtion_hide);
|
|
||||||
|
|
||||||
document.getElementById('imghover2').addEventListener("mouseover", function_imghover2);
|
|
||||||
document.getElementById('imghover2').addEventListener("mouseout", funtion_hide);
|
|
||||||
|
|
||||||
getElementById('imghover3').addEventListener("mouseover", function_imghover3);
|
|
||||||
getElementById('imghover3').addEventListener("mouseout", funtion_hide);
|
|
||||||
|
|
||||||
function function_imghover1(){
|
|
||||||
document.getElementById("hidden1").style.display = "block";
|
|
||||||
let position = document.getElementById("hidden1");
|
|
||||||
|
|
||||||
const onMouseMove = (e) =>{
|
|
||||||
position.style.left = e.pageX + 'px';
|
|
||||||
position.style.top = e.pageY + 'px';
|
|
||||||
}
|
|
||||||
|
|
||||||
document.addEventListener('mousemove', onMouseMove);
|
|
||||||
}
|
|
||||||
|
|
||||||
function function_imghover2(){
|
|
||||||
document.getElementById('hidden2').style.display = "block";
|
|
||||||
let position = document.getElementById('hidden2');
|
|
||||||
|
|
||||||
const onMouseMove = (e) =>{
|
|
||||||
position.style.left = e.pageX + 'px';
|
|
||||||
position.style.top = e.pageY + 'px';
|
|
||||||
}
|
|
||||||
|
|
||||||
document.addEventListener('mousemove', onMouseMove);
|
|
||||||
}
|
|
||||||
|
|
||||||
function function_imghover3(){
|
|
||||||
document.getElementById('hidden3').style.display = "block";
|
|
||||||
let position = document.getElementById('hidden3');
|
|
||||||
|
|
||||||
const onMouseMove = (e) =>{
|
|
||||||
position.style.left = e.pageX + 'px';
|
|
||||||
position.style.top = e.pageY + 'px';
|
|
||||||
}
|
|
||||||
|
|
||||||
document.addEventListener('mousemove', onMouseMove);
|
|
||||||
}
|
|
||||||
|
|
||||||
function funtion_hide(){
|
|
||||||
document.getElementById('hidden1').style.display = "none";
|
|
||||||
document.getElementById('hidden2').style.display = "none";
|
|
||||||
document.getElementById('hidden3').style.display = "none";
|
|
||||||
}
|
|
||||||
|
|
||||||
</script> */}
|
|
||||||
{/*
|
|
||||||
<!--closeit-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function closeit() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("menü");
|
|
||||||
document.getElementById("sidenavbar").style.visibility = "visible";
|
|
||||||
document.getElementById("navbar").style.visibility = "hidden";
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<!--Intro-->
|
<!--Intro-->
|
||||||
*/}
|
*/}
|
||||||
<article>
|
<article>
|
||||||
|
@ -447,13 +331,6 @@ function Overview() {
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<h3 id="begriffe">Glossary and specification explonation</h3>
|
<h3 id="begriffe">Glossary and specification explonation</h3>
|
||||||
<div class="col-6">
|
<div class="col-6">
|
||||||
{/*
|
|
||||||
<style>
|
|
||||||
p {
|
|
||||||
text-align: left;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
*/}
|
|
||||||
<p>
|
<p>
|
||||||
<b id="tiltback">Tilt-back</b>: The device's pedals tilt backwards
|
<b id="tiltback">Tilt-back</b>: The device's pedals tilt backwards
|
||||||
to slow the rider down. Used when the battery is low or when the
|
to slow the rider down. Used when the battery is low or when the
|
||||||
|
@ -519,7 +396,7 @@ function Overview() {
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style={{ "padding-left": "3%" }} class="col-6">
|
<div class="col-6">
|
||||||
<p class="imghover">
|
<p class="imghover">
|
||||||
<b id="trolley">Trolley Handle</b>: an extendable handle for
|
<b id="trolley">Trolley Handle</b>: an extendable handle for
|
||||||
pushing the device, similar to a suitcase.
|
pushing the device, similar to a suitcase.
|
||||||
|
@ -991,7 +868,7 @@ function Overview() {
|
||||||
control. Generally, many say it's a <b>matter of training</b> and
|
control. Generally, many say it's a <b>matter of training</b> and
|
||||||
experience. Also, devices like Gotway's MSuper series, RS's and
|
experience. Also, devices like Gotway's MSuper series, RS's and
|
||||||
EXN's are more vulnerable than, for example, the Veteran Sherman or
|
EXN's are more vulnerable than, for example, the Veteran Sherman or
|
||||||
the <R href="/KS22ENG">KS S22</R>.
|
the <R href="/en/KS22">KS S22</R>.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@ -1095,11 +972,7 @@ function Overview() {
|
||||||
<div class="righties">
|
<div class="righties">
|
||||||
<img src="/images/solowheel-1.jpg" />
|
<img src="/images/solowheel-1.jpg" />
|
||||||
</div>
|
</div>
|
||||||
<img
|
<img class="lefties" src="/images/historieEUC.webp" />
|
||||||
class="lefties"
|
|
||||||
style={{ clear: "none" }}
|
|
||||||
src="/images/historieEUC.webp"
|
|
||||||
/>
|
|
||||||
<p>
|
<p>
|
||||||
The underlying technique came with the
|
The underlying technique came with the
|
||||||
<R href="https://de.wikipedia.org/wiki/Segway_Personal_Transporter">
|
<R href="https://de.wikipedia.org/wiki/Segway_Personal_Transporter">
|
||||||
|
@ -1226,7 +1099,7 @@ function Overview() {
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<DeviceTile
|
<DeviceTile
|
||||||
href="KSS22"
|
href="/en/KSS22"
|
||||||
name="Kingsong S22"
|
name="Kingsong S22"
|
||||||
src="/videos/S20Werbevideo.mp4"
|
src="/videos/S20Werbevideo.mp4"
|
||||||
/>
|
/>
|
||||||
|
@ -1263,7 +1136,7 @@ function Overview() {
|
||||||
</div>
|
</div>
|
||||||
</article>
|
</article>
|
||||||
<footer />
|
<footer />
|
||||||
</>
|
</Body>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,77 +1,16 @@
|
||||||
import { A, Link, Title, useNavigate } from "solid-start";
|
import { Body, Link, Title, useNavigate } from "solid-start";
|
||||||
|
import Navbar, { lightMode } from "~/components/en/Navbar";
|
||||||
|
|
||||||
function soon() {
|
function soon() {
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
return (
|
return (
|
||||||
<>
|
<Body classList={{ "light-mode": lightMode() }}>
|
||||||
<Title>soon</Title>
|
<Title>soon</Title>
|
||||||
<Link rel="stylesheet" href="/styles/overview.css" />
|
<Link rel="stylesheet" href="/styles/overview.css" />
|
||||||
<div id="navbar">
|
<Navbar />
|
||||||
<A href="/">Start</A>
|
|
||||||
<A href="/en/overview#start">What are EUCs?</A>
|
|
||||||
<A href="/en/overview#why">Why EUCs?</A>
|
|
||||||
<A href="/en/overview#funktion">Functionality</A>
|
|
||||||
<A href="/en/overview#begriffe">Glossarry</A>
|
|
||||||
<A href="/en/overview#sicherheit">Safety</A>
|
|
||||||
<A href="/en/overview#ausrüstung">Gear</A>
|
|
||||||
<A href="/en/overview#cutout">Cut-out's</A>
|
|
||||||
<A href="/en/overview#akkuss">Battery safety</A>
|
|
||||||
<A href="/en/overview#fahrweise">Ride style</A>
|
|
||||||
<A href="/en/overview#wobbles">Wobbles</A>
|
|
||||||
<A href="/en/overview#leistung">Performance</A>
|
|
||||||
<A href="/en/overview#federung">Suspension</A>
|
|
||||||
<A href="/en/overview#reifen">Tires</A>
|
|
||||||
<A href="/en/overview#historie">History</A>
|
|
||||||
<A href="/en/manufacturers">Manufacturers</A>
|
|
||||||
<A href="/en/overview#geräte">Device list</A>
|
|
||||||
{/* <button onclick="myFunction()">Light Mode</button> */}
|
|
||||||
{/* <button onclick="window.location.href='/en/manufacturers';">Sprache</button> */}
|
|
||||||
<div>{/* <button onclick="closeit()"><A> <-Close</A></button> */}</div>
|
|
||||||
</div>
|
|
||||||
<div id="sidenavbar">
|
|
||||||
<button onClick={() => navigate(-1)}>Back</button>
|
|
||||||
{/* <button onclick="menü()">Menu</button> */}
|
|
||||||
</div>
|
|
||||||
{/*
|
|
||||||
<!--light-mode-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function myFunction() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("light-mode");
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<!--menü-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function menü() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("menü");
|
|
||||||
document.getElementById("sidenavbar").style.visibility = "hidden";
|
|
||||||
document.getElementById("navbar").style.visibility = "visible";
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<!--closeit-->
|
|
||||||
*/}{" "}
|
|
||||||
{/*
|
|
||||||
<script>
|
|
||||||
function closeit() {
|
|
||||||
var element = document.body;
|
|
||||||
element.classList.toggle("menü");
|
|
||||||
document.getElementById("sidenavbar").style.visibility = "visible";
|
|
||||||
document.getElementById("navbar").style.visibility = "hidden";
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
*/}
|
|
||||||
<p style={{ "text-align": "center" }}>This side is not available yet.</p>
|
<p style={{ "text-align": "center" }}>This side is not available yet.</p>
|
||||||
<button onClick={() => navigate(-1)}>Back</button>
|
<button onClick={() => navigate(-1)}>Back</button>
|
||||||
</>
|
</Body>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -3,4 +3,8 @@ import { defineConfig } from "vite";
|
||||||
|
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
plugins: [solid()],
|
plugins: [solid()],
|
||||||
|
server: {
|
||||||
|
host: "0.0.0.0",
|
||||||
|
strictPort: true,
|
||||||
|
},
|
||||||
});
|
});
|
||||||
|
|