From 910977ccfaa520486b0cbdf863a764c0c388f4a2 Mon Sep 17 00:00:00 2001 From: Martin Kagamino Lehoux Date: Wed, 29 Jul 2026 15:09:20 +0200 Subject: fix: eliminate Svelte state_referenced_locally build warnings --- README.md | 1 + src/routes/+page.svelte | 2 +- src/routes/categories/+page.svelte | 2 +- src/routes/grocery/[id]/+page.svelte | 9 +++++++-- 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index d8062fe..2ec894c 100644 --- a/README.md +++ b/README.md @@ -74,4 +74,5 @@ worker precaches assets; works offline after first visit. ```bash docker build -t home-sveltekit . docker save home-sveltekit | gzip | pv | ssh ubuntu@feed.kagamino.dev "gunzip | sudo docker load" +ssh ubuntu@feed.kagamino.dev "sudo docker compose up -d home" ``` diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 12a088a..6611bbc 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -7,7 +7,7 @@ let name = $state(''); let inputRef: HTMLInputElement; // eslint-disable-next-line svelte/prefer-writable-derived - let localItems = $state(data?.items ?? []); + let localItems = $state([]); let addError = $state(''); // Sync local list with server data when it changes externally (toggle, navigation) $effect(() => { diff --git a/src/routes/categories/+page.svelte b/src/routes/categories/+page.svelte index b5ef3f7..a5e9528 100644 --- a/src/routes/categories/+page.svelte +++ b/src/routes/categories/+page.svelte @@ -5,7 +5,7 @@ let name = $state(''); let draggedIndex = $state(null); // eslint-disable-next-line svelte/prefer-writable-derived - let localCategories = $state(data?.categories ?? []); + let localCategories = $state([]); // Sync with server data on navigation $effect(() => { diff --git a/src/routes/grocery/[id]/+page.svelte b/src/routes/grocery/[id]/+page.svelte index c4e964c..531fbf7 100644 --- a/src/routes/grocery/[id]/+page.svelte +++ b/src/routes/grocery/[id]/+page.svelte @@ -2,12 +2,17 @@ import { enhance } from '$app/forms'; let { data, form } = $props(); - let name = $state(data.item.name); - let categoryId = $state(data.item.categoryId ?? -1); + let name = $state(''); + let categoryId = $state(-1); let saved = $state(false); let isSubmitting = $state(false); let formRef: HTMLFormElement; + $effect(() => { + name = data.item.name; + categoryId = data.item.categoryId ?? -1; + }); + $effect(() => { if (form?.success && form?.type === 'update') { saved = true; -- cgit v1.3