Compare commits
2 Commits
8abfae803b
...
64a33fcd31
| Author | SHA1 | Date | |
|---|---|---|---|
| 64a33fcd31 | |||
| 17cc07a684 |
57
.devcontainer/devcontainer.json
Normal file
57
.devcontainer/devcontainer.json
Normal file
@@ -0,0 +1,57 @@
|
||||
{
|
||||
"name": "bun",
|
||||
"image": "oven/bun:debian",
|
||||
"privileged": true,
|
||||
"features": {
|
||||
"ghcr.io/devcontainers/features/common-utils:1": {
|
||||
"version": "latest",
|
||||
"configureZshAsDefaultShell": true,
|
||||
"username": "bun",
|
||||
"userUid": "1000",
|
||||
"userGid": "1000"
|
||||
},
|
||||
"ghcr.io/rocker-org/devcontainer-features/apt-packages:1": {
|
||||
"packages": "stow,tmux,ripgrep,python3-venv,python3-virtualenv"
|
||||
},
|
||||
},
|
||||
"remoteUser": "bun",
|
||||
"workspaceFolder": "/home/bun/ws",
|
||||
"workspaceMount": "source=${localWorkspaceFolder},target=/home/bun/ws,type=bind",
|
||||
"containerEnv": {
|
||||
},
|
||||
"runArgs": [
|
||||
"--net=host",
|
||||
"-e",
|
||||
"DISPLAY=${env:DISPLAY}",
|
||||
"-e",
|
||||
"TERM=${env:TERM}",
|
||||
"-e",
|
||||
"SHELL=${env:SHELL}",
|
||||
"-v",
|
||||
"${env:SSH_AUTH_SOCK}:/tmp/ssh-agent.socket",
|
||||
"-e",
|
||||
"SSH_AUTH_SOCK=/tmp/ssh-agent.socket"
|
||||
],
|
||||
"mounts": [
|
||||
{
|
||||
"source": "/tmp/.X11-unix",
|
||||
"target": "/tmp/.X11-unix",
|
||||
"type": "bind",
|
||||
"consistency": "cached"
|
||||
},
|
||||
{
|
||||
"source": "/dev/dri",
|
||||
"target": "/dev/dri",
|
||||
"type": "bind",
|
||||
"consistency": "cached"
|
||||
},
|
||||
{
|
||||
"source": "/dev/shm",
|
||||
"target": "/dev/shm",
|
||||
"type": "bind",
|
||||
"consistency": "cached"
|
||||
}
|
||||
],
|
||||
"postCreateCommand": {
|
||||
}
|
||||
}
|
||||
@@ -2,6 +2,8 @@ import { useEffect } from "react";
|
||||
import DepartureList from "@/components/DepartureList/DepartureList";
|
||||
import { useKVVStore } from "@/store/kvv";
|
||||
|
||||
import style from "./style.module.css";
|
||||
|
||||
export default function Timetable() {
|
||||
const fetchTimetable = useKVVStore((state) => state.fetch);
|
||||
const pStreet = useKVVStore((state) => state.pStreet);
|
||||
@@ -16,7 +18,7 @@ export default function Timetable() {
|
||||
}, [fetchTimetable]);
|
||||
|
||||
return (
|
||||
<div>
|
||||
<div className={style.wrapper}>
|
||||
<h1>Timetable</h1>
|
||||
<DepartureList departures={pStreet.departureList} name="P-Street" />
|
||||
<DepartureList departures={hStreet.departureList} name="H-Street" />
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
.wrapper {
|
||||
border-radius: 10px;
|
||||
padding: 1px 100px 30px 100px;
|
||||
box-shadow: 5px 5px 10px #aeaeae;
|
||||
}
|
||||
|
||||
@@ -10,12 +10,35 @@ export default function TimetableRow({
|
||||
const hour = String(departure.dateTime.hour).padStart(2, "0");
|
||||
const minute = String(departure.dateTime.minute).padStart(2, "0");
|
||||
const dateTimeString = `${hour}:${minute}`;
|
||||
const lineNumber = departure.servingLine.number;
|
||||
|
||||
return (
|
||||
<tr className={styles.timetableRow}>
|
||||
<td>{dateTimeString}</td>
|
||||
<td>{departure.servingLine.number}</td>
|
||||
<td>({departure.servingLine.direction})</td>
|
||||
<td className={styles.departureTime}>{dateTimeString}</td>
|
||||
<td
|
||||
className={`${lineNumberToStyle(lineNumber)} ${styles.lineNumber}`}
|
||||
>
|
||||
{lineNumber}
|
||||
</td>
|
||||
<td>{departure.servingLine.direction}</td>
|
||||
</tr>
|
||||
);
|
||||
}
|
||||
|
||||
const lineNumberToStyle = (number) => {
|
||||
switch (number) {
|
||||
case "S2":
|
||||
return styles.S2;
|
||||
break;
|
||||
case "S5":
|
||||
case "S51":
|
||||
return styles.S5;
|
||||
break;
|
||||
case "S1":
|
||||
case "S11":
|
||||
return styles.S1;
|
||||
break;
|
||||
default:
|
||||
return styles.lineNumberDefault;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -1,3 +1,32 @@
|
||||
td {
|
||||
padding: 4px 7px;
|
||||
}
|
||||
|
||||
.timetableRow {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.departureTime {
|
||||
font-weight: 600;
|
||||
/* background-color: rgba(180, 180, 180, 0.1); */
|
||||
}
|
||||
|
||||
.lineNumber {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.S2 {
|
||||
background-color: rgba(200, 100, 200, 0.2);
|
||||
}
|
||||
|
||||
.S5 {
|
||||
background-color: rgba(230, 20, 20, 0.2);
|
||||
}
|
||||
|
||||
.S1 {
|
||||
background-color: rgba(20, 180, 90, 0.2);
|
||||
}
|
||||
|
||||
.lineNumberDefault {
|
||||
background-color: rgba(100, 100, 100, 0.2);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user