Skip to content

Commit

Permalink
fix(frontend): use proper routing
Browse files Browse the repository at this point in the history
  • Loading branch information
aldy505 committed May 26, 2024
1 parent 0e68e03 commit 08189b0
Show file tree
Hide file tree
Showing 7 changed files with 51 additions and 48 deletions.
3 changes: 2 additions & 1 deletion frontend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
"license": "GPL-3.0",
"devDependencies": {
"@teknologi-umum/eslint-config-base": "^0.0.11",
"@types/node": "^20.12.12",
"@typescript-eslint/eslint-plugin": "^5.62.0",
"@typescript-eslint/parser": "^5.62.0",
"eslint": "^8.57.0",
Expand All @@ -27,8 +28,8 @@
"dependencies": {
"@fontsource/ibm-plex-sans": "^5.0.20",
"@fontsource/libre-franklin": "^5.0.18",
"@solidjs/router": "^0.13.3",
"rxjs": "^7.8.1",
"solid-app-router": "^0.4.2",
"solid-js": "^1.8.17"
}
}
56 changes: 36 additions & 20 deletions frontend/pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 0 additions & 12 deletions frontend/src/App.tsx

This file was deleted.

6 changes: 3 additions & 3 deletions frontend/src/components/EndpointStatusCard/index.tsx
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { map, Observable, take } from "rxjs";
import { Link } from "solid-app-router";
import { createSignal, onMount } from "solid-js";
import Status from "@/components/Status";
import type { Response } from "@/types";
import styles from "./styles.module.css";
import {A} from "@solidjs/router";

interface EndpointStatusCardProps {
name: string;
Expand Down Expand Up @@ -33,12 +33,12 @@ export default function EndpointStatusCard(props: EndpointStatusCardProps) {
return (
<div class={styles["endpoint-card"]}>
<div class={styles["endpoint-card__header"]}>
<Link
<A
class={styles["endpoint-card__title"]}
href={"/by?name=" + encodeURIComponent(props.name)}
>
{props.name}
</Link>
</A>
<a class={styles["endpoint-card__url"]} href={props.url}>
{props.url}
</a>
Expand Down
8 changes: 5 additions & 3 deletions frontend/src/index.tsx
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
import { render } from "solid-js/web";
import { Router } from "solid-app-router";
import App from "@/App";
import "@/index.css";

import "@fontsource/ibm-plex-sans/500.css";
import "@fontsource/ibm-plex-sans/700.css";
import "@fontsource/libre-franklin/400.css";
import OverviewPage from "@/pages/Overview";
import DetailPage from "@/pages/Detail";
import {Route, Router} from "@solidjs/router";

render(
() => (
<Router>
<App />
<Route path="/" component={OverviewPage} />
<Route path="/by" component={DetailPage} />
</Router>
),
document.getElementById("root") as HTMLElement
Expand Down
6 changes: 3 additions & 3 deletions frontend/src/pages/Detail/index.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { fromEvent, map } from "rxjs";
import { Link, Navigate, useSearchParams } from "solid-app-router";
import { A, Navigate, useSearchParams } from "@solidjs/router";
import { createResource, Match, onMount, Switch } from "solid-js";
import DarkModeToggle from "@/components/DarkModeToggle";
import EndpointOverviewCard from "@/components/EndpointOverviewCard";
Expand Down Expand Up @@ -44,9 +44,9 @@ export default function DetailPage() {
<div class={styles.detail__header}>
<div class={styles["detail__header-left"]}>
<h1 class={styles.detail__title}>Status for {searchParams.name}</h1>
<Link href="/" class={styles.detail__back}>
<A href="/" class={styles.detail__back}>
<LeftArrowIcon /> Back to Home
</Link>
</A>
</div>
<DarkModeToggle />
</div>
Expand Down
8 changes: 2 additions & 6 deletions frontend/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,21 +1,17 @@
import { defineConfig, loadEnv } from "vite";
import solidPlugin from "vite-plugin-solid";
import { resolve } from "path";
import { resolve } from "node:path";

export default ({ mode }: { mode: string }) => {
const env = loadEnv(mode, import.meta.url, "");

return defineConfig({
plugins: [solidPlugin()],
build: {
target: "esnext",
polyfillDynamicImport: false
},
resolve: {
alias: {
"@": resolve("src"),
"@config": env.VITE_CONFIG_PATH || resolve("..", "config.json")
}
}
});
};
};

0 comments on commit 08189b0

Please sign in to comment.