Files
tpf/src/routes/prozess/index.tsx
Felix Förtsch 16de72c017 add settings page, contact editing, process flow, PWA updates
- settings tab with theme picker, data management, developer mode (mock data), PWA version/update
- contact detail page with inline editing of therapist info and contact attempts
- quick-action buttons on contact cards (update latest kontakt instead of creating duplicates)
- process stepper with inline step actions, Erstgespräch form embedded in step 1
- sticky bottom tab bar, Switch component, .htaccess in build output
- pre-warm PGlite on onboarding mount, spinner feedback on submit
- move DB init out of beforeLoad for faster initial page render
- bump to 2026.03.11.1

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-11 13:08:48 +01:00

38 lines
921 B
TypeScript

import { createFileRoute } from "@tanstack/react-router";
import { ProcessStepper } from "@/features/prozess/components/process-stepper";
import { useKontaktStats, useNutzer } from "@/features/prozess/hooks";
export const Route = createFileRoute("/prozess/")({
component: ProzessPage,
});
function ProzessPage() {
const {
data: nutzer,
loading: nutzerLoading,
refetch: refetchNutzer,
} = useNutzer();
const {
data: stats,
loading: statsLoading,
refetch: refetchStats,
} = useKontaktStats();
if (nutzerLoading || statsLoading) return <p>Laden</p>;
if (!nutzer[0]) return <p>Bitte zuerst das Onboarding abschließen.</p>;
const s = stats[0] ?? { gesamt: 0, absagen: 0 };
return (
<ProcessStepper
aktuellerSchritt={nutzer[0].aktueller_schritt}
kontaktGesamt={Number(s.gesamt)}
absagen={Number(s.absagen)}
onUpdate={() => {
refetchNutzer();
refetchStats();
}}
/>
);
}