diff --git a/src/lib/components/ShareButtons.svelte b/src/lib/components/ShareButtons.svelte
index b022a93..75b0be0 100644
--- a/src/lib/components/ShareButtons.svelte
+++ b/src/lib/components/ShareButtons.svelte
@@ -4,14 +4,17 @@
* Bluesky intent link, clipboard copy, structured email template.
* Bluesky is the primary channel; email covers the rest.
*/
- import { Link2, Mail } from '@lucide/svelte';
+ import { Check, Link2, Mail } from '@lucide/svelte';
import Bluesky from '$lib/components/icons/Bluesky.svelte';
let { url, title } = $props<{ url: string, title: string }>();
- function copyToClipboard() {
- navigator.clipboard.writeText(url);
- alert('Link copied to clipboard!');
+ let copied = $state(false);
+
+ async function copyToClipboard() {
+ await navigator.clipboard.writeText(url);
+ copied = true;
+ setTimeout(() => (copied = false), 2000);
}
// Construct structured email template
@@ -33,8 +36,18 @@ Sent from my website.`);
Bluesky
-