@kolkrabbi/kol-hardware 0.3.1 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/package.json +4 -4
- package/src/indicators/JackSocket.jsx +3 -3
- package/src/indicators/LED.jsx +3 -3
- package/src/switches/Toggle.jsx +1 -1
package/README.md
CHANGED
|
@@ -47,7 +47,7 @@ Hardware is theme-INVARIANT — a knob cap is black on a white panel too — so
|
|
|
47
47
|
--kol-ctl-signal-input · --kol-ctl-cv-attenuate
|
|
48
48
|
```
|
|
49
49
|
|
|
50
|
-
`JackSocket` reads its
|
|
50
|
+
`JackSocket` reads its color role as a HEX off `:root` (it appends a hex alpha for the glow), so a consumer overriding a role binds a hex, never a `var()`.
|
|
51
51
|
|
|
52
52
|
## Seams
|
|
53
53
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kolkrabbi/kol-hardware",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.2",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "KOL hardware — panel controls for instruments (mixers, synths, racks, decks), in five groups: value (knob, fader, the touch ParamSheet), switches (toggle, flip, rocker, icon button), indicators (LED, jacks), panel (label, module header), frames (module frame, channel strip, flip card). Plus the signal engine (./signal): one expression compiler and ADSR for every scope and envelope in the estate. Renamed from @kolkrabbi/kol-controls. Sits above @kolkrabbi/kol-{theme,icons,component}.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
"react-dom": "^18.3.0 || ^19.0.0"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
|
-
"@kolkrabbi/kol-component": "^0.
|
|
24
|
-
"@kolkrabbi/kol-
|
|
25
|
-
"@kolkrabbi/kol-
|
|
23
|
+
"@kolkrabbi/kol-component": "^0.230.0",
|
|
24
|
+
"@kolkrabbi/kol-icons": "^0.29.1",
|
|
25
|
+
"@kolkrabbi/kol-theme": "^0.157.0"
|
|
26
26
|
},
|
|
27
27
|
"files": [
|
|
28
28
|
"src",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { useRef, useEffect } from 'react'
|
|
2
2
|
|
|
3
|
-
/* Read a
|
|
3
|
+
/* Read a color binding once, lazily — the roles live in kol-theme's
|
|
4
4
|
* kol-components-controls.css. HEX is required here: the ring appends a hex
|
|
5
5
|
* alpha (`${color}${aa}`), so these must resolve to hex on :root, never var(). */
|
|
6
6
|
const _hex = {}
|
|
@@ -33,7 +33,7 @@ function stopJackLoop() {
|
|
|
33
33
|
* signal — `signalRef.current` is `{ type: 'scalar'|'color'|'points', value, … }`,
|
|
34
34
|
* read on a shared rAF at ~15fps, dirty-checked. Drag-to-patch, the registry and
|
|
35
35
|
* the pending cable are the CONSUMER'S: they arrive as the props below and
|
|
36
|
-
* `onPointerDown`.
|
|
36
|
+
* `onPointerDown`. Color role: `color` is a HEX (the glow appends a hex alpha);
|
|
37
37
|
* default is the LED red; the consumer passes `--kol-ctl-signal-input` /
|
|
38
38
|
* `--kol-ctl-cv-attenuate` for its primary / attenuate inputs.
|
|
39
39
|
*
|
|
@@ -45,7 +45,7 @@ function stopJackLoop() {
|
|
|
45
45
|
* @param {boolean} pending this output is the pending cable's source
|
|
46
46
|
* @param {boolean} dimPending a cable is pending elsewhere (an input shows a dim ring)
|
|
47
47
|
* @param {boolean} cablesHidden the consumer hides cables — a connected hole fills solid
|
|
48
|
-
* @param {string} color HEX role
|
|
48
|
+
* @param {string} color HEX role color (default `--kol-ctl-led-red`)
|
|
49
49
|
* @param {object} signalRef `{ current }` — the live signal for the glow
|
|
50
50
|
* @param {boolean} bg the fg-04 plate behind the ring (default: outputs only)
|
|
51
51
|
* @param {Function} onPointerDown the consumer's routing gesture
|
package/src/indicators/LED.jsx
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* The set's own LED
|
|
1
|
+
/* The set's own LED colors (`--kol-ctl-led-*`) — a module that needs a
|
|
2
2
|
* red/green/yellow uses <LED color="…"> or the same token, never a hex. */
|
|
3
3
|
const COLORS = {
|
|
4
4
|
red: 'var(--kol-ctl-led-red)',
|
|
@@ -13,11 +13,11 @@ const HIT_PAD = 5
|
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* LED — the indicator lamp (kol-monitor's rack, lifted 2026-09-01). Sizes sm 6 ·
|
|
16
|
-
* md 8;
|
|
16
|
+
* md 8; colors red · yellow · green · white · blue, or any CSS color. With
|
|
17
17
|
* `onClick` an invisible hit pad (+5px each side) overlays the lamp.
|
|
18
18
|
*
|
|
19
19
|
* @param {boolean} active
|
|
20
|
-
* @param {string} color a name above or a CSS
|
|
20
|
+
* @param {string} color a name above or a CSS color (default red)
|
|
21
21
|
* @param {'sm'|'md'|number} size
|
|
22
22
|
* @param {Function} onClick
|
|
23
23
|
*/
|
package/src/switches/Toggle.jsx
CHANGED
|
@@ -16,7 +16,7 @@ const BLINK_MS_DEFAULT = 500
|
|
|
16
16
|
* @param {'sm'|'md'} size 8 · 12 (default md)
|
|
17
17
|
* @param {number} padding hit padding (default 4)
|
|
18
18
|
* @param {boolean} momentary
|
|
19
|
-
* @param {string} color CSS
|
|
19
|
+
* @param {string} color CSS color (default `var(--kol-ctl-led-red)`)
|
|
20
20
|
* @param {Function} onLongPress
|
|
21
21
|
* @param {boolean} blink · {number} blinkPeriodMs (500)
|
|
22
22
|
* @param {boolean} forceLit
|