perf(app): remove unused Google Fonts requests, add pre-JS loading spinner
- app.html: comment out 3 Google Fonts <link> tags (Noto Sans, Noto Serif, Roboto Mono) — no theme or component applies these families; all themes use system-ui. Saves 3 blocking network requests on every page load. - app.html: add subtle CSS-only #ae_loader spinner (1.75rem ring, pointer-events:none) that shows during JS download + root load function, before Svelte mounts. - +layout.svelte: add onMount to remove #ae_loader as soon as Svelte bootstraps; the existing is_hydrating frosted-glass overlay takes over from there. - app.css: comment out orphaned Quicksand @font-face — font-family was never applied to any element so browser never fetched it anyway. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
let log_lvl: number = 0;
|
||||
|
||||
// *** Import Svelte specific
|
||||
import { untrack } from 'svelte';
|
||||
import { onMount, untrack } from 'svelte';
|
||||
import { goto, invalidateAll } from '$app/navigation';
|
||||
|
||||
import '../app.css';
|
||||
@@ -53,6 +53,12 @@ interface Props {
|
||||
|
||||
let { data, children }: Props = $props();
|
||||
|
||||
// Remove the pre-JS loader from app.html as soon as Svelte mounts.
|
||||
// The existing is_hydrating overlay takes over from here.
|
||||
onMount(() => {
|
||||
document.getElementById('ae_loader')?.remove();
|
||||
});
|
||||
|
||||
// STABLE DERIVATION: Using prop data directly to avoid store loops
|
||||
let ae_acct = $derived(data[data.account_id]);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user