fix(plugin-kit): soften @unom/ui's card ring for the brand palette (0.1.3)
apple / swift (push) Successful in 1m20s
rpm / build-publish (43, bazzite, punktfunk-fedora-rpm) (push) Has been cancelled
rpm / build-publish (44, fedora-44, punktfunk-fedora44-rpm) (push) Has been cancelled
docker / build-push (--build-arg FEDORA_VERSION=44, ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora44-rpm) (push) Has been cancelled
docker / build-push (., web/Dockerfile, punktfunk-web) (push) Has been cancelled
docker / build-push (ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora-rpm) (push) Has been cancelled
docker / build-push (ci, ci/rust-ci-noble.Dockerfile, punktfunk-rust-ci-noble) (push) Has been cancelled
docker / build-push (ci, ci/rust-ci.Dockerfile, punktfunk-rust-ci) (push) Has been cancelled
docker / build-push (docs-site, docs-site/Dockerfile, punktfunk-docs) (push) Has been cancelled
docker / deploy-docs (push) Has been cancelled
decky / build-publish (push) Has been cancelled
deb / build-publish (push) Has been cancelled
deb / build-publish-host (push) Has been cancelled
ci / rust (push) Has been cancelled
ci / web (push) Has been cancelled
ci / docs-site (push) Has been cancelled
ci / bench (push) Has been cancelled
arch / build-publish (push) Has been cancelled
apple / screenshots (push) Has been cancelled
android / android (push) Successful in 14m52s

@unom/ui rings cards ring-2 ring-accent, sized for its own subtle accent; in
this palette --accent is the brand violet, so every card shouted. The console
already softens the same ring in its Card wrapper — plugin UIs now inherit that
instead of each wrapping AnimatedCard themselves.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-20 19:47:37 +02:00
parent 5a27c02738
commit 424bab1c3a
2 changed files with 20 additions and 8 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "@punktfunk/plugin-kit", "name": "@punktfunk/plugin-kit",
"version": "0.1.2", "version": "0.1.3",
"description": "Effect-based framework for punktfunk plugins: lifecycle runtime, config/state, sync engine, UI serving, CLI scaffold, and browser helpers.", "description": "Effect-based framework for punktfunk plugins: lifecycle runtime, config/state, sync engine, UI serving, CLI scaffold, and browser helpers.",
"type": "module", "type": "module",
"license": "MIT OR Apache-2.0", "license": "MIT OR Apache-2.0",
+19 -7
View File
@@ -240,13 +240,25 @@
} }
} }
/* ── One vocabulary collision, resolved ───────────────────────────────────── /* ── Two vocabulary collisions, resolved ─────────────────────────────────────
@unom/ui reads `--secondary` as muted TEXT (its own theme sets a mid-grey, used Both come from @unom/ui's own palette meaning something different by the same
for EmptyState captions, badge text, table headers); this palette — like the token name than this (console) palette does. Unlayered on purpose: unlayered
console's — uses `--secondary` as a dark SURFACE (`bg-secondary`). Tailwind rules beat Tailwind's layered utilities of equal specificity.
derives both utilities from the same `--color-secondary`, so the text lane has
to be re-pointed here or every caption renders dark-on-dark. Unlayered on 1. `--secondary` is muted TEXT to @unom/ui (its theme sets a mid-grey, used for
purpose: unlayered rules beat Tailwind's layered utility of equal specificity. */ EmptyState captions, badge text, table headers) but a dark SURFACE here
(`bg-secondary`). Tailwind derives both utilities from one token, so the
text lane is re-pointed or every caption renders dark-on-dark. */
.text-secondary { .text-secondary {
color: var(--muted-foreground); color: var(--muted-foreground);
} }
/* 2. @unom/ui's Card rings `ring-2 ring-accent`, sized for its subtle accent;
here `--accent` IS the brand violet, so an unsoftened ring shouts. The
console solves this in its own Card wrapper ("2px ring → subtle 1px brand
tint"); plugin UIs get the same result without wrapping anything. Scoped to
`rounded-card.ring-2` so only @unom/ui card surfaces are affected, and
explicit `ring-accent/NN` utilities keep their own value. */
.rounded-card.ring-2 {
--tw-ring-color: color-mix(in oklch, var(--accent) 35%, transparent);
}