v1.1.3: Radix-composable buttons, meter ballistics/dBFS/loudness, PanKnob
- PushButton/Button forward native button props (...rest) and compose their own event handlers with consumer/Radix-injected ones, so a Button works as a Radix `asChild` trigger (dropdowns/tooltips/popovers). Prop types now extend React.ButtonHTMLAttributes. - Meter gains opt-in metering: `ballistics` (PPM attack/decay), `peakDecay` (peak-hold fall tail), `scale="db"` (feed amplitude → dBFS with reference lines; min/max default -60/0), and `integrated` (windowed LUFS-ish loudness readout + marker). New rAF engine in meterEngine.ts with ampToDb/dbToAmp helpers; default behavior unchanged. - New `PanKnob` — bipolar stereo pan: fills from center, center detent, L<n>/C/R<n> readout, -50..50 default. - Docs: ApiDocs rows + recipes (dBFS meter, pan strip, Button-as-trigger), gallery cards (dBFS meter, Pan) + a Regenerate Button in the panel. CHANGELOG 1.1.3; version 1.1.3; install URLs bumped. Library + docs typecheck and build; 46 tests pass. - Meter dBFS readout: muted-grey unit labels (LUFS matched to dB), value-first layout in an aligned 2-column grid so peak/loudness decimals line up, and ghost pad digits removed — the loudness row no longer looks like a stray tag. - Action buttons (Button / PushButton mode="action") no longer show an LED by default — an action has no state to indicate. led defaults to 'strip' for toggle/momentary and false for action; led="dot"/"strip" opts back in. - Meter dBFS readout: units (dB / LUFS) sit centered directly under each value; grid alignment tidied and ghost pad digits removed. Docs: dBFS-meter card moved next to the Meters card (same component) + a horizontal example.
This commit is contained in:
parent
605c38af51
commit
d183d7d16b
15 changed files with 644 additions and 80 deletions
|
|
@ -1,5 +1,45 @@
|
|||
# Changelog
|
||||
|
||||
## 1.1.3 — 2026-07-14
|
||||
|
||||
Fourth integration-feedback release — a composability fix for buttons, a much
|
||||
smarter meter, and the pan control the mixer was missing.
|
||||
|
||||
### Buttons
|
||||
- **Action buttons no longer show an LED by default.** `Button` (and
|
||||
`PushButton mode="action"`) are plain by default — an action has no state to
|
||||
indicate. `led` defaults to `'strip'` for `toggle`/`momentary` (which do have
|
||||
a state) and to `false` for `action`; pass `led="dot"` / `led="strip"` to opt
|
||||
a command button back in.
|
||||
|
||||
### Buttons compose as Radix triggers
|
||||
- `PushButton` / `Button` now forward unknown props (`...rest`) to the
|
||||
underlying `<button>` and **compose** their own event handlers with any the
|
||||
consumer (or a Radix `asChild` slot) injects. A `Button` can now be a
|
||||
dropdown / tooltip / popover trigger: `onPointerDown`, `onKeyDown`,
|
||||
`data-state`, `aria-expanded` etc. all reach the DOM and fire alongside the
|
||||
button's own press behavior. The prop types now extend the native button
|
||||
attributes.
|
||||
|
||||
### Meter — ballistics, dBFS, loudness
|
||||
- **`ballistics`** — PPM-style attack/decay smoothing of the displayed level
|
||||
(`true` ≈ 5 ms attack / 350 ms decay, or `{ attack, decay }` in ms).
|
||||
- **`peakDecay`** — the peak-hold marker falls with a decay tail (normalized
|
||||
units/second) after `peakHold` instead of snapping back.
|
||||
- **`scale="db"`** — feed linear amplitude (0..1) and the meter displays dBFS;
|
||||
`min`/`max` default to -60 / 0 dB and faint reference gridlines are drawn
|
||||
(`showScale` / `referenceTicks` to tune). New `ampToDb` / `dbToAmp` helpers.
|
||||
- **`integrated`** — a time-windowed loudness estimate (LUFS-ish on the dB
|
||||
scale — a windowed mean of channel power, not a full BS.1770 measurement),
|
||||
shown as a secondary readout and a marker line (`integrationWindow`,
|
||||
`loudnessColor`).
|
||||
- All of the above are opt-in; the default meter behaves exactly as before.
|
||||
|
||||
### New component
|
||||
- **`PanKnob`** — a bipolar stereo-pan knob: fills from center, snaps to a
|
||||
center detent, reads out `L<n>` / `C` / `R<n>`. Defaults to a −50…50 range
|
||||
centered at 0.
|
||||
|
||||
## 1.1.2 — 2026-07-14
|
||||
|
||||
Third integration-feedback release — a general action button, responsive
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue