From 8f1aba15712fa0c23599a014d3b43029f1f5bc6e Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 3 Aug 2026 13:09:29 +0000 Subject: [PATCH] =?UTF-8?q?F=C3=B6rhandsvisningen=20fungerar=20oavsett=20s?= =?UTF-8?q?=C3=B6kv=C3=A4g?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Historik-routing kräver att sidan serveras från roten. Ligger den under en sökväg — som en publicerad enfilsförhandsvisning gör — matchar ingen route och besökaren får 404-sidan i stället för appen. Förhandsvisningsläget (VITE_HASH_ROUTER) går därför via hash, och dess startsida är Guidad Felsökning i stället för värdapplikationens startsida. Verifierat genom att ladda bygget från en djupt nästlad sökväg: startskärmen, navigering vidare och djuplänk till inställningar. Byggkommandot är nu dokumenterat i MVP.md tillsammans med npm run typkontroll, så förhandsvisningen inte byggs fel igen. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_012EQg3rJsrQ1ZNTvkzmQAtt --- docs/MVP.md | 11 +++++++++++ src/App.tsx | 11 +++++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/docs/MVP.md b/docs/MVP.md index 671d863..c230444 100644 --- a/docs/MVP.md +++ b/docs/MVP.md @@ -8,8 +8,19 @@ Första körbara versionen av kärnan i [Master Prompt v1.0](MASTER-PROMPT.md). npm install npm run dev # öppna http://localhost:8080/felsokning npm test # projektions-, synk- och demotester +npm run typkontroll # tsc --noEmit (vite build typkontrollerar inte) ``` +**Förhandsvisning som en enda fil** (t.ex. för delning) byggs med +hash-routing, annars fungerar den bara när den serveras från roten: + +```sh +VITE_HASH_ROUTER=1 npm run build +``` + +I det läget är `/` Guidad Felsökning i stället för värdapplikationens +startsida, och sidan fungerar oavsett vilken sökväg den ligger på. + Demomanus för visning: [DEMO.md](DEMO.md). Knappen **Skapa demoärende** på startsidan lägger in ett komplett vibrationsärende med 1 tim 35 min historik. ## Vad som ingår diff --git a/src/App.tsx b/src/App.tsx index be11b02..cc32107 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -27,14 +27,21 @@ const queryClient = new QueryClient(); // Hash-baserad routing för miljöer utan SPA-rewrites (t.ex. förhandsvisning // på en statisk sida). Standard är vanlig historik-routing. -const Router = import.meta.env.VITE_HASH_ROUTER ? HashRouter : BrowserRouter; +// +// Historik-routing kräver att sidan serveras från roten: ligger den under +// en sökväg matchar ingen route och besökaren får 404-sidan. I +// förhandsvisningsläge går routingen därför via hash — då spelar +// sökvägen ingen roll — och startsidan är Guidad Felsökning i stället för +// värdapplikationens startsida. +const forhandsvisning = !!import.meta.env.VITE_HASH_ROUTER; +const Router = forhandsvisning ? HashRouter : BrowserRouter; function AppContent() { return ( - } /> + : } /> } /> } /> } />