fix: use untrack() in \$state initialisers to silence state_referenced_locally warnings

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-08 11:31:51 +01:00
parent b9b98f178f
commit edee98b552
13 changed files with 57 additions and 45 deletions

View File

@@ -1,4 +1,5 @@
<script lang="ts">
import { untrack } from "svelte";
import { goto, invalidateAll } from "$app/navigation";
import { page } from "$app/state";
import { SvelteURLSearchParams } from "svelte/reactivity";
@@ -20,7 +21,7 @@
let deleteTarget: Article | null = $state(null);
let deleteOpen = $state(false);
let deleting = $state(false);
let searchValue = $state(data.search ?? "");
let searchValue = $state(untrack(() => data.search ?? ""));
$effect(() => { searchValue = data.search ?? ""; });
let searchTimeout: ReturnType<typeof setTimeout>;

View File

@@ -1,4 +1,5 @@
<script lang="ts">
import { untrack } from "svelte";
import { goto } from "$app/navigation";
import { toast } from "svelte-sonner";
import { _ } from "svelte-i18n";
@@ -16,18 +17,18 @@
const { data } = $props();
let title = $state(data.article.title);
let slug = $state(data.article.slug);
let excerpt = $state(data.article.excerpt ?? "");
let content = $state(data.article.content ?? "");
let category = $state(data.article.category ?? "");
let tags = $state<string[]>(data.article.tags ?? []);
let featured = $state(data.article.featured ?? false);
let title = $state(untrack(() => data.article.title));
let slug = $state(untrack(() => data.article.slug));
let excerpt = $state(untrack(() => data.article.excerpt ?? ""));
let content = $state(untrack(() => data.article.content ?? ""));
let category = $state(untrack(() => data.article.category ?? ""));
let tags = $state<string[]>(untrack(() => data.article.tags ?? []));
let featured = $state(untrack(() => data.article.featured ?? false));
let publishDate = $state(
data.article.publish_date ? new Date(data.article.publish_date).toISOString().slice(0, 16) : "",
untrack(() => data.article.publish_date ? new Date(data.article.publish_date).toISOString().slice(0, 16) : ""),
);
let imageId = $state<string | null>(data.article.image ?? null);
let authorId = $state(data.article.author?.id ?? "");
let imageId = $state<string | null>(untrack(() => data.article.image ?? null));
let authorId = $state(untrack(() => data.article.author?.id ?? ""));
$effect(() => {
title = data.article.title;
slug = data.article.slug;