Skip to content

Commit cac9734

Browse files
committed
feat: refactor token auth to support multi-instance
1 parent dff2882 commit cac9734

31 files changed

+158
-163
lines changed

src/Main.tsx

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,14 @@ import NiceModal from "@ebay/nice-modal-react";
22
import React, { lazy, Suspense, useEffect } from "react";
33
import { I18nextProvider } from "react-i18next";
44
import { HashRouter, Route, Routes } from "react-router";
5+
import { useShallow } from "zustand/react/shallow";
56
import NavBarWithNotifications from "./components/navbar/NavBar.js";
67
import ScrollToTop from "./components/ScrollToTop.js";
78
import Toasts from "./components/Toasts.js";
89
import { ErrorBoundary } from "./ErrorBoundary.js";
910
import i18n from "./i18n/index.js";
11+
import { LoginPage } from "./pages/LoginPage.js";
12+
import { useAppStore } from "./store.js";
1013
import { startWebSocketManager } from "./websocket/WebSocketManager.js";
1114

1215
const HomePage = lazy(async () => await import("./pages/HomePage.js"));
@@ -23,10 +26,17 @@ const SettingsPage = lazy(async () => await import("./pages/SettingsPage.js"));
2326
const FrontendSettingsPage = lazy(async () => await import("./pages/FrontendSettingsPage.js"));
2427

2528
function App() {
29+
const authRequired = useAppStore(useShallow((s) => s.authRequired.some((v) => v === true)));
30+
2631
useEffect(() => {
32+
// do the initial startup, will determine if LoginPage needs to be shown or not
2733
startWebSocketManager();
2834
}, []);
2935

36+
if (authRequired) {
37+
return <LoginPage />;
38+
}
39+
3040
return (
3141
<HashRouter>
3242
<ScrollToTop />

src/components/modal/components/AuthModal.tsx

Lines changed: 0 additions & 50 deletions
This file was deleted.

src/i18n/locales/bg.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@
4141
"min": "Мин",
4242
"max": "Макс",
4343
"done": "Готово",
44-
"enter_auth_token": "Въведете токен",
45-
"token": "Токен",
4644
"documentation": "Документация",
4745
"optional": "Незадължително",
4846
"init": "Инициализиране",

src/i18n/locales/ca.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@
4141
"min": "Mín",
4242
"max": "Màx",
4343
"done": "Fet",
44-
"enter_auth_token": "Introdueix token",
45-
"token": "Token",
4644
"documentation": "Documentació",
4745
"optional": "Opcional",
4846
"init": "Inicia",

src/i18n/locales/chs.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@
4141
"min": "最小",
4242
"max": "最大",
4343
"done": "完成",
44-
"enter_auth_token": "输入认证 Token",
45-
"token": "Token",
4644
"documentation": "文档",
4745
"optional": "可选",
4846
"init": "初始化",

src/i18n/locales/cs.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@
4141
"min": "Min",
4242
"max": "Max",
4343
"done": "Hotovo",
44-
"enter_auth_token": "Vložte token",
45-
"token": "Token",
4644
"documentation": "Dokumentace",
4745
"optional": "Volitelné",
4846
"init": "Inicializovat",

src/i18n/locales/da.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@
4141
"min": "Min",
4242
"max": "Maks",
4343
"done": "Færdig",
44-
"enter_auth_token": "Indtast token",
45-
"token": "Token",
4644
"documentation": "Dokumentation",
4745
"optional": "Valgfrit",
4846
"init": "Init",

src/i18n/locales/de.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@
4141
"min": "Min",
4242
"max": "Max",
4343
"done": "Fertig",
44-
"enter_auth_token": "Authentifizierungs-Token eingeben",
45-
"token": "Token",
4644
"documentation": "Dokumentation",
4745
"optional": "Optional",
4846
"init": "Initialisieren",

src/i18n/locales/en.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@
4141
"min": "Min",
4242
"max": "Max",
4343
"done": "Done",
44-
"enter_auth_token": "Enter auth token",
45-
"token": "Token",
4644
"documentation": "Documentation",
4745
"optional": "Optional",
4846
"init": "Init",

src/i18n/locales/es.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@
4141
"min": "Mín",
4242
"max": "Máx",
4343
"done": "Listo",
44-
"enter_auth_token": "Introduzca el token",
45-
"token": "Token",
4644
"documentation": "Documentación",
4745
"optional": "Opcional",
4846
"init": "Iniciar",

0 commit comments

Comments
 (0)