From d9475aca0a04067ba69d3507cb926110ec46069b Mon Sep 17 00:00:00 2001 From: Martin Dimitrov Date: Wed, 13 Mar 2024 19:12:56 -0700 Subject: [PATCH] root redirect to home buzzer --- packages/client/src/index.tsx | 7 +++---- packages/client/src/pages/DoorPage.tsx | 12 +++++++++--- packages/server/src/routers/DoorRouter.ts | 6 +++++- packages/server/src/types/Environment.ts | 1 + 4 files changed, 18 insertions(+), 8 deletions(-) diff --git a/packages/client/src/index.tsx b/packages/client/src/index.tsx index 9d91740..f644adf 100644 --- a/packages/client/src/index.tsx +++ b/packages/client/src/index.tsx @@ -2,7 +2,6 @@ import React from 'react'; import ReactDOM from 'react-dom/client'; import App from './App'; import { RouterProvider, createBrowserRouter } from 'react-router-dom'; -import { AuthPage, loader as authpageloader } from './pages/AuthPage'; import { DoorPage, loader as doorpageloader } from './pages/DoorPage'; @@ -17,9 +16,9 @@ const router = createBrowserRouter([ errorElement:

error

, children: [ { - path: "action/:action", - loader: authpageloader, - element: , + path: "", + loader: doorpageloader, + element: }, { path: "door/:door", diff --git a/packages/client/src/pages/DoorPage.tsx b/packages/client/src/pages/DoorPage.tsx index fa8419d..ec439ee 100644 --- a/packages/client/src/pages/DoorPage.tsx +++ b/packages/client/src/pages/DoorPage.tsx @@ -7,7 +7,9 @@ import type { IDoorResponse } from "../../../server/src/types/IDoorResponse"; import { CountdownBar } from "../components/CountdownBar"; export async function loader({ params }: any) { - const response = await fetch(`/api/door/${params.door}`).then(res => res.json()); + const response = await fetch(params.door ? `/api/door/${params.door}`: `/api/door`).then(res => res.json()); + + console.log(response); if (response.msg) { throw new Error("Not a valid door"); @@ -229,10 +231,14 @@ export function DoorPage() {

Enter the buzzer code at the front entrance

{ + res.redirect(`/api/door/${Bun.env.DEFAULT_DOOR || getAllDoorNames()[0]}`); +}); + router.get('/:id', async(req, res) => { const doorId = req.params.id; const authModes = getAuthModes(doorId); diff --git a/packages/server/src/types/Environment.ts b/packages/server/src/types/Environment.ts index 63a8fc4..4037de3 100644 --- a/packages/server/src/types/Environment.ts +++ b/packages/server/src/types/Environment.ts @@ -6,5 +6,6 @@ declare module "bun" { DOOR_OPEN_TIMEOUT: number; DOOR_FIXED_PIN: string; ROTATING_KEY_NTFY: string; + DEFAULT_DOOR: string; } } \ No newline at end of file