From 336cfedd0b358ab2b635ef17e27a9f4ef8fc11b6 Mon Sep 17 00:00:00 2001 From: Till JS Date: Wed, 25 Mar 2026 08:30:31 +0100 Subject: [PATCH] refactor(auth): centralize appReady pattern into AuthGate component Replace copy-pasted appReady/loading/redirect logic in all 13 layouts with a shared AuthGate component. Supports guest mode, onReady callback for app-specific data loading, and configurable login redirect. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../apps/web/src/routes/(app)/+layout.svelte | 40 +---- .../web/src/routes/(protected)/+layout.svelte | 32 +--- .../apps/web/src/routes/(app)/+layout.svelte | 28 +--- .../apps/web/src/routes/(app)/+layout.svelte | 28 +--- .../apps/web/src/routes/(app)/+layout.svelte | 22 +-- .../apps/web/src/routes/+layout.svelte | 67 ++++---- .../apps/web/src/routes/(app)/+layout.svelte | 28 +--- .../apps/web/src/routes/app/+layout.svelte | 56 ++----- .../apps/web/src/routes/(app)/+layout.svelte | 28 +--- .../apps/web/src/routes/+layout.svelte | 43 +++-- .../apps/web/src/routes/+layout.svelte | 157 ++++++++---------- .../apps/web/src/routes/(app)/+layout.svelte | 28 +--- .../apps/web/src/routes/(app)/+layout.svelte | 33 +--- .../src/components/AuthGate.svelte | 86 ++++++++++ packages/shared-auth-ui/src/index.ts | 1 + 15 files changed, 270 insertions(+), 407 deletions(-) create mode 100644 packages/shared-auth-ui/src/components/AuthGate.svelte diff --git a/apps/calendar/apps/web/src/routes/(app)/+layout.svelte b/apps/calendar/apps/web/src/routes/(app)/+layout.svelte index 5013ffb8b..6320acdc9 100644 --- a/apps/calendar/apps/web/src/routes/(app)/+layout.svelte +++ b/apps/calendar/apps/web/src/routes/(app)/+layout.svelte @@ -1,7 +1,6 @@ -{#if !appReady} -
-
-
-{:else} +
{/if} -{/if} +