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";
@@ -17,7 +18,7 @@
let deleteTarget: Video | 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";
@@ -15,19 +16,19 @@
const { data } = $props();
let title = $state(data.video.title);
let slug = $state(data.video.slug);
let description = $state(data.video.description ?? "");
let tags = $state<string[]>(data.video.tags ?? []);
let premium = $state(data.video.premium ?? false);
let featured = $state(data.video.featured ?? false);
let title = $state(untrack(() => data.video.title));
let slug = $state(untrack(() => data.video.slug));
let description = $state(untrack(() => data.video.description ?? ""));
let tags = $state<string[]>(untrack(() => data.video.tags ?? []));
let premium = $state(untrack(() => data.video.premium ?? false));
let featured = $state(untrack(() => data.video.featured ?? false));
let uploadDate = $state(
data.video.upload_date ? new Date(data.video.upload_date).toISOString().slice(0, 16) : "",
untrack(() => data.video.upload_date ? new Date(data.video.upload_date).toISOString().slice(0, 16) : ""),
);
let imageId = $state<string | null>(data.video.image ?? null);
let movieId = $state<string | null>(data.video.movie ?? null);
let imageId = $state<string | null>(untrack(() => data.video.image ?? null));
let movieId = $state<string | null>(untrack(() => data.video.movie ?? null));
let selectedModelIds = $state<string[]>(
data.video.models?.map((m: { id: string }) => m.id) ?? [],
untrack(() => data.video.models?.map((m: { id: string }) => m.id) ?? []),
);
$effect(() => {
title = data.video.title;