From ef441c24486b4fef17a315316110ea241a08c631 Mon Sep 17 00:00:00 2001 From: Scarce Koi Date: Mon, 6 Apr 2026 22:34:09 -0400 Subject: [PATCH 01/10] feat(palette): update --- .../_components/ColorContextMenu.svelte | 98 ++++++++++++++++ src/pages/palette/index.astro | 108 ++++++++---------- 2 files changed, 148 insertions(+), 58 deletions(-) create mode 100644 src/pages/palette/_components/ColorContextMenu.svelte diff --git a/src/pages/palette/_components/ColorContextMenu.svelte b/src/pages/palette/_components/ColorContextMenu.svelte new file mode 100644 index 00000000..776f6530 --- /dev/null +++ b/src/pages/palette/_components/ColorContextMenu.svelte @@ -0,0 +1,98 @@ + + + + + e.key === "Escape" && openMenuId.set(null)} /> + +
+ {@render children()} +
+ +{#if visible} +
+ + +
+{/if} + + diff --git a/src/pages/palette/index.astro b/src/pages/palette/index.astro index 5f139616..26949415 100644 --- a/src/pages/palette/index.astro +++ b/src/pages/palette/index.astro @@ -7,7 +7,8 @@ import Default from "@layouts/Default.astro"; import PageIntro from "@components/PageIntro.astro"; -import CopyToClipboardIcon from "./_components/CopyToClipboardButton.svelte"; +// import CopyToClipboardIcon from "./_components/CopyToClipboardButton.svelte"; +import ColorContextMenu from "./_components/ColorContextMenu.svelte"; import FlavorName from "./_components/FlavorName.astro"; const toRgb = (rgb: ColorFormat["rgb"]) => { @@ -62,46 +63,16 @@ const toOklch = (oklch: ColorFormat["oklch"]) => { - - - - - - - - - - - - {Object.values(flavor.colors).map(({ hex, rgb, hsl, oklch, name }) => ( - - - - - - - - ))} - -
ColorHexRGBHSLOKLCH
-
{name}
-
- - {hex} - - - - {toRgb(rgb)} - - - - {toHsl(hsl)} - - - - {toOklch(oklch)} - -
+
+ {Object.values(flavor.colors).map(({ hex, rgb, hsl, oklch, name }) => ( + +
+
+ {name} +
+ + ))} +
)) @@ -140,33 +111,54 @@ const toOklch = (oklch: ColorFormat["oklch"]) => { } .color-list { + display: flex; + flex-wrap: wrap; + gap: var(--space-sm); margin-block-start: var(--space-md); - margin-inline: auto; } .color-list-entry { - --__current-color: var(--current-color, var(--text)); - } + display: flex; + flex-direction: column; + align-items: center; + border-radius: var(--border-radius-normal); + gap: 1rem; + width: 8rem; + cursor: pointer; + padding: 2px; - .color-name { - position: relative; + &:hover { + background: var(--surface0); + } + } - margin: 0; - padding: 0; - padding-inline-start: 3rem; + .color-swatch { + width: 100%; + aspect-ratio: 1 / 1; + border-radius: var(--border-radius-normal); + background-color: var(--current-color); + border: 2px solid color-mix(in srgb, var(--mantle), var(--surface0) 50%); + } - &::before { - content: ""; + .color-name { + font-size: 1.7rem; + text-align: center; + word-break: normal; + overflow-wrap: normal; + } - position: absolute; - left: 0; + @media (max-width: 600px) { + .color-list { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(6rem, 1fr)); + } - height: 2rem; - aspect-ratio: 1 / 1; + .color-list-entry { + width: 100%; + } - border-radius: 9999px; - border: 1px solid color-mix(in srgb, var(--mantle), var(--surface0) 50%); - background-color: var(--__current-color); + .color-name { + font-size: 1.5rem; } } From a061e3a759f277f693f88ee1808d13cc37de5206 Mon Sep 17 00:00:00 2001 From: Scarce Koi Date: Mon, 6 Apr 2026 23:01:26 -0400 Subject: [PATCH 02/10] feat(palette): update --- src/layouts/components/Head.astro | 1 + .../palette/_components/ColorContextMenu.svelte | 15 ++++++++++++++- src/pages/palette/index.astro | 2 +- 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/layouts/components/Head.astro b/src/layouts/components/Head.astro index aa17d59d..21c43fe9 100644 --- a/src/layouts/components/Head.astro +++ b/src/layouts/components/Head.astro @@ -39,4 +39,5 @@ const isProduction = import.meta.env.CATPPUCCIN_PROD; {enableViewTransition && } + {title} diff --git a/src/pages/palette/_components/ColorContextMenu.svelte b/src/pages/palette/_components/ColorContextMenu.svelte index 776f6530..ccaddacf 100644 --- a/src/pages/palette/_components/ColorContextMenu.svelte +++ b/src/pages/palette/_components/ColorContextMenu.svelte @@ -40,7 +40,7 @@ {#if visible} -
+
e.stopPropagation()}>