diff --git a/.changeset/poor-frogs-build.md b/.changeset/poor-frogs-build.md
new file mode 100644
index 000000000..eeeeebb92
--- /dev/null
+++ b/.changeset/poor-frogs-build.md
@@ -0,0 +1,5 @@
+---
+'eslint-plugin-svelte': patch
+---
+
+fix(no-navigation-without-resolve): Detecting asset() function as well
diff --git a/packages/eslint-plugin-svelte/src/rules/no-navigation-without-resolve.ts b/packages/eslint-plugin-svelte/src/rules/no-navigation-without-resolve.ts
index 0beb2aa71..4db197974 100644
--- a/packages/eslint-plugin-svelte/src/rules/no-navigation-without-resolve.ts
+++ b/packages/eslint-plugin-svelte/src/rules/no-navigation-without-resolve.ts
@@ -125,6 +125,9 @@ function extractResolveReferences(
for (const { node } of referenceTracker.iterateEsmReferences({
'$app/paths': {
[ReferenceTracker.ESM]: true,
+ asset: {
+ [ReferenceTracker.READ]: true
+ },
resolve: {
[ReferenceTracker.READ]: true
}
diff --git a/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/invalid/link-partial-asset01-errors.yaml b/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/invalid/link-partial-asset01-errors.yaml
new file mode 100644
index 000000000..7b8b81c68
--- /dev/null
+++ b/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/invalid/link-partial-asset01-errors.yaml
@@ -0,0 +1,8 @@
+- message: Found a link with a url that isn't resolved.
+ line: 5
+ column: 9
+ suggestions: null
+- message: Found a link with a url that isn't resolved.
+ line: 6
+ column: 9
+ suggestions: null
diff --git a/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/invalid/link-partial-asset01-input.svelte b/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/invalid/link-partial-asset01-input.svelte
new file mode 100644
index 000000000..38a09ebb4
--- /dev/null
+++ b/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/invalid/link-partial-asset01-input.svelte
@@ -0,0 +1,6 @@
+
+
+Click me!
+Click me!
diff --git a/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/valid/link-asset-aliased01-input.svelte b/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/valid/link-asset-aliased01-input.svelte
new file mode 100644
index 000000000..4fe7c85bc
--- /dev/null
+++ b/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/valid/link-asset-aliased01-input.svelte
@@ -0,0 +1,5 @@
+
+
+Click me!;
diff --git a/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/valid/link-asset01-input.svelte b/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/valid/link-asset01-input.svelte
new file mode 100644
index 000000000..fd274e8cb
--- /dev/null
+++ b/packages/eslint-plugin-svelte/tests/fixtures/rules/no-navigation-without-resolve/valid/link-asset01-input.svelte
@@ -0,0 +1,8 @@
+
+
+Click me!
+Click me!