style: fix no-navigation-without-resolve — add resolve() for SPA links, rel=external for target=_blank, suppress in event handlers and effects

This commit is contained in:
2026-06-25 14:59:38 +01:00
parent df66041b7c
commit f3436ac37a
19 changed files with 39 additions and 12 deletions
@@ -788,7 +788,7 @@
<p class="font-medium text-amber-900">Cannot Reschedule Online</p>
<p class="mt-1">{noticeBlockedMessage}</p>
<p class="mt-1">
<a href="/contact" target="_blank" class="underline">Contact us</a> to discuss
<a href="/contact" target="_blank" rel="external" class="underline">Contact us</a> to discuss
options, or
<button
type="button"
@@ -330,7 +330,7 @@
<a
href={settings.website_url}
target="_blank"
rel="noopener noreferrer"
rel="noopener noreferrer external"
class="text-primary hover:underline"
>
{settings.website_url}
@@ -837,7 +837,7 @@
<a
href={result.url}
target="_blank"
rel="noopener noreferrer"
rel="noopener noreferrer external"
class="mt-1 inline-block text-xs text-green-700 underline hover:text-green-900"
>
View uploaded image →
@@ -1646,7 +1646,7 @@
<p>
We are currently asking for deposits on upcoming bookings. While this is active,
only one online booking can be made at a time. If you need another appointment
please <a href="/contact" target="_blank" class="font-medium underline"
please <a href="/contact" target="_blank" rel="external" class="font-medium underline"
>contact us</a
>.
</p>
@@ -1670,7 +1670,7 @@
a bespoke treatment.
</p>
<a
href="/contact"
href={resolve("/contact")}
class="mt-1 inline-block text-sm font-medium text-blue-600 hover:underline"
>
Arrange a custom booking →
@@ -1911,13 +1911,13 @@
{#if emailSuggestion === 'login'}
<p class="text-xs font-medium text-red-500">
This email belongs to a registered user. Please
<a href="/login" class="underline hover:text-red-800">log in</a>
<a href={resolve("/login")} class="underline hover:text-red-800">log in</a>
instead to access your bookings and rewards.
</p>
{:else if emailSuggestion === 'check'}
<p class="text-xs font-medium text-amber-600">
This email might belong to an existing account. Please double-check or
<a href="/login" class="underline hover:text-amber-800">log in</a>.
<a href={resolve("/login")} class="underline hover:text-amber-800">log in</a>.
</p>
{/if}
{/if}
@@ -131,7 +131,7 @@
{#if isLoading}
<Skeleton class={`h-4 ${link.width} rounded`} />
{:else}
<a href={link.href} class="font-medium text-gray-800 hover:text-primary"
<a href={resolve(link.href)} class="font-medium text-gray-800 hover:text-primary"
>{link.label}</a
>
{/if}
@@ -230,7 +230,7 @@
<Skeleton class="h-4 w-full rounded" />
{:else}
<a
href={link.href}
href={resolve(link.href)}
class="block rounded px-3 py-2 text-center text-primary hover:text-gray-800"
>
{link.label}
@@ -47,6 +47,7 @@
<a
href="/cancellation-policy"
target="_blank"
rel="external"
class="block w-full rounded px-3 py-2 text-left text-sm hover:bg-gray-100"
onclick={() => (open = false)}
>
+1
View File
@@ -166,6 +166,7 @@ class AuthStore {
}
}
this.clearAuth();
<!-- svelte-ignore no-navigation-without-resolve -->
goto('/', { invalidateAll: true });
};