From b821ecddb2be32890e292de916fe2cd6da3e3eb8 Mon Sep 17 00:00:00 2001 From: eti Date: Mon, 31 Aug 2026 16:41:03 +0200 Subject: [PATCH] web/ui: add CopyButton Signed-off-by: eti --- .../components/ui/CopyButton.stories.svelte | 150 +++++++++++++++ web/src/lib/components/ui/CopyButton.svelte | 180 ++++++++++++++++++ 2 files changed, 330 insertions(+) create mode 100644 web/src/lib/components/ui/CopyButton.stories.svelte create mode 100644 web/src/lib/components/ui/CopyButton.svelte diff --git a/web/src/lib/components/ui/CopyButton.stories.svelte b/web/src/lib/components/ui/CopyButton.stories.svelte new file mode 100644 index 000000000..f07eac653 --- /dev/null +++ b/web/src/lib/components/ui/CopyButton.stories.svelte @@ -0,0 +1,150 @@ + + + + + + + + + + + + + + + +
+ + + + +
+
+ + +
+ + + + +
+
+ + +
+ + {SHA} + + +
+
+ + + +
+
+ Crossfade + + + +
+
+ Morph + + + +
+
+
+ + + + {@const presets = [ + ["smooth", "\u03b6 1.00 \u2014 no overshoot"], + ["snappy", "\u03b6 0.73 \u2014 fast, slight overshoot"], + ["bouncy", "\u03b6 0.40 \u2014 playful"] + ] as const} +
+ {#each presets as [preset, note] (preset)} +
+ + + {preset} — {note} + +
+ {/each} +
+
diff --git a/web/src/lib/components/ui/CopyButton.svelte b/web/src/lib/components/ui/CopyButton.svelte new file mode 100644 index 000000000..52d0e3850 --- /dev/null +++ b/web/src/lib/components/ui/CopyButton.svelte @@ -0,0 +1,180 @@ + + + + + + + -- 2.51.2