v1.1.4: light-theme support (LED wells, panel buttons, readouts)

The controls whose chrome was hardcoded dark now adapt to a light base —
previously they rendered as dark chips/holes on light themes. (Flat knobs and
faders already adapted: their face is the `face` token.)

- `ledWell` theme token — the recessed screen behind LED segments (LEDKnob,
  LEDFader, Meter) and the default well of SegmentDisplay / AlphaDisplay now
  comes from the theme. Dark base keeps #0b0d0e; light base is `transparent`,
  so LED controls and readouts render as clean flat rings / bars / digits on
  the light panel. faceColor / background props still override.
- `scheme` theme token ('dark' | 'light', set by base) + a shared
  panelButtonChrome() helper drive the raised gradient/border/shadow of
  PushButton (and Button), TransportButton and SegmentSwitch — light raised
  buttons on light themes instead of dark chips; unlit LED pips flip to a
  faint dark so they still read.
- Docs: a "Light theme" gallery card showing the panel family under
  base="light"; ledWell/scheme documented; install URLs bumped to v1.1.4.

Library + docs typecheck and build; 46 tests pass.
This commit is contained in:
Dreamodus 2026-07-14 13:06:16 -07:00
parent d183d7d16b
commit 8b462dfb83
17 changed files with 180 additions and 44 deletions

View file

@ -1,5 +1,29 @@
# Changelog
## 1.1.4 — 2026-07-14
Light-theme support — the controls whose chrome was hardcoded dark now adapt.
### Themeable LED well
- **`ledWell` theme token** — the recessed "screen" fill behind the LED
segments of `LEDKnob`, `LEDFader`, `Meter`, and the default well of
`SegmentDisplay` / `AlphaDisplay`, now comes from the theme instead of a
hardcoded near-black. Dark base keeps the classic dark well (`#0b0d0e`); the
**light base is `transparent`**, so LED controls and readouts render as clean
flat segment rings / bar meters / digits on the light panel (still clearly
"LED" from the lit segments) instead of dark blobs. The `faceColor` /
`background` props still override per-instance.
### Light-theme panel chrome
- **`scheme` theme token** (`'dark' | 'light'`, set by the `base`) drives the
raised gradient/border/shadow of `PushButton` (and `Button`),
`TransportButton` and `SegmentSwitch`. On a light base they render as light
raised buttons instead of dark chips; unlit LED pips flip to a faint dark so
they still read. New `panelButtonChrome(scheme, pressed)` helper.
- Fixes the whole panel-button/switch family looking like dark chips on light
themes; the flat knobs and faders already adapted (their face is the `face`
token).
## 1.1.3 — 2026-07-14
Fourth integration-feedback release — a composability fix for buttons, a much