chore(timetable): added vertical directional arrow

This commit is contained in:
2026-04-04 23:40:53 +02:00
parent c15939d5d0
commit 4c8afe5018
2 changed files with 42 additions and 3 deletions
+19 -3
View File
@@ -146,6 +146,17 @@
}"
colspan="2"
>
<!-- Bold direction line -->
<div
class="absolute h-full top-0 -left-0.5 border-l-black dark:border-l-white print:border-l-black border-l-4"
></div>
<!-- Direction line arrow -->
<div
class="absolute h-0 w-0 border-x-[5px] border-x-transparent border-t-[5px] -bottom-1 -left-[5px] z-30 border-t-black dark:border-t-white print:border-t-black"
v-if="i == computedTimetableRows.length - 1"
></div>
<div class="absolute -top-[0.5px] left-0 w-full h-full">
<table class="h-full w-full border-collapse">
<tbody>
@@ -358,7 +369,12 @@
<div>
- {{ parseTimetableRunDate(computedTimetableRows[0].scheduledDepartureDate!) }}
<span
v-if="computedTimetableRows[computedTimetableRows.length - 1].scheduledArrivalDate!.getDate() != computedTimetableRows[0].scheduledDepartureDate!.getDate()"
v-if="
computedTimetableRows[
computedTimetableRows.length - 1
].scheduledArrivalDate!.getDate() !=
computedTimetableRows[0].scheduledDepartureDate!.getDate()
"
>
-
{{
@@ -658,10 +674,10 @@ function parseTimetablePath(path: string): TimetablePathData[] {
const sceneryData = apiStore.sceneryData?.find((sc) => sc.name == sceneryName) ?? null;
const arrivalLineData = arrivalLine
? sceneryData?.routesInfo.find((rt) => rt.routeName == arrivalLine) ?? null
? (sceneryData?.routesInfo.find((rt) => rt.routeName == arrivalLine) ?? null)
: null;
const departureLineData = departureLine
? sceneryData?.routesInfo.find((rt) => rt.routeName == departureLine) ?? null
? (sceneryData?.routesInfo.find((rt) => rt.routeName == departureLine) ?? null)
: null;
return {
+23
View File
@@ -0,0 +1,23 @@
export class HttpClient {
constructor(private readonly baseURL: string) {}
async get<T>(url: string, params?: Record<string, any>): Promise<T> {
const absoluteURL = new URL(this.baseURL + '/' + url);
if (params) {
Object.keys(params).forEach((key) => {
if (params[key] === undefined) return;
absoluteURL.searchParams.append(key, params[key]);
});
}
const data = await fetch(absoluteURL);
if (!data.ok) {
throw new Error(`Cannot fetch: ${absoluteURL}`);
}
return data.json();
}
}