diff --git a/src/components/atoms/Button.svelte b/src/components/atoms/Button.svelte index 15355ba..7e325b5 100644 --- a/src/components/atoms/Button.svelte +++ b/src/components/atoms/Button.svelte @@ -16,6 +16,12 @@ ...[color, size].map(variant => variant && `${className}--${variant}`), $$props.class ].join(' ').trim() + + // Define external links + let rel: string, target: string + $: isExternal = /(http(s?)):\/\//i.test(url) + $: rel = isExternal ? 'external noopener noreferrer' : null + $: target = isExternal ? '_blank' : null {#if tag === 'button'} @@ -24,7 +30,13 @@ {:else if tag === 'a'} - +