@charcuterie/ui 3.8.0 → 3.9.0
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/dist/Slider/Slider.d.ts +85 -0
- package/dist/Slider/Slider.d.ts.map +1 -0
- package/dist/Slider/Slider.js +193 -0
- package/dist/Slider/Slider.js.map +1 -0
- package/dist/Slider/sliderValue.d.ts +48 -0
- package/dist/Slider/sliderValue.d.ts.map +1 -0
- package/dist/Slider/sliderValue.js +98 -0
- package/dist/Slider/sliderValue.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/src/Slider/Slider.mdx +78 -0
- package/src/Slider/Slider.stories.tsx +256 -0
- package/src/Slider/Slider.test.tsx +241 -0
- package/src/Slider/Slider.tsx +412 -0
- package/src/Slider/sliderValue.test.ts +156 -0
- package/src/Slider/sliderValue.ts +149 -0
- package/src/index.ts +5 -0
- package/src/sourceRules.test.ts +7 -1
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import type { IntentName } from "@charcuterie/tokens";
|
|
2
|
+
import type { ComponentPropsWithRef, ReactNode } from "react";
|
|
3
|
+
export type SliderSize = "lg" | "md" | "sm";
|
|
4
|
+
export type SliderProps = Omit<ComponentPropsWithRef<"div">, "children" | "defaultValue" | "onChange"> & {
|
|
5
|
+
intent?: IntentName;
|
|
6
|
+
isDisabled?: boolean;
|
|
7
|
+
isLabelVisible?: boolean;
|
|
8
|
+
/**
|
|
9
|
+
* Read-only in the `aria-readonly` sense: focusable, full contrast,
|
|
10
|
+
* announced as unchangeable. A media scrubber for a stream with no
|
|
11
|
+
* seekable range is this, not `isDisabled` — the position is still
|
|
12
|
+
* worth reading.
|
|
13
|
+
*/
|
|
14
|
+
isReadOnly?: boolean;
|
|
15
|
+
isValueShown?: boolean;
|
|
16
|
+
/** Required. A slider with no name is an unlabelled number. */
|
|
17
|
+
label: string;
|
|
18
|
+
/**
|
|
19
|
+
* PageUp / PageDown. Defaults to ten steps, which is the APG's
|
|
20
|
+
* suggestion and the only sensible answer that does not need the
|
|
21
|
+
* caller to know the range.
|
|
22
|
+
*/
|
|
23
|
+
largeStep?: number;
|
|
24
|
+
max?: number;
|
|
25
|
+
min?: number;
|
|
26
|
+
/**
|
|
27
|
+
* Fires on every movement — each arrow key, and each pointer sample
|
|
28
|
+
* while dragging. Use it to paint. See `onChangeEnd` for committing.
|
|
29
|
+
*/
|
|
30
|
+
onChange?: (value: number) => void;
|
|
31
|
+
/**
|
|
32
|
+
* Fires once, when the interaction ends: pointer release, or key up.
|
|
33
|
+
*
|
|
34
|
+
* This exists because the expensive consumer of a slider is almost
|
|
35
|
+
* never the paint. A seek scrubber that issued its network call from
|
|
36
|
+
* `onChange` would send one request per pointer sample and arrive at
|
|
37
|
+
* the right offset last, after a queue of stale ones.
|
|
38
|
+
*/
|
|
39
|
+
onChangeEnd?: (value: number) => void;
|
|
40
|
+
size?: SliderSize;
|
|
41
|
+
step?: number;
|
|
42
|
+
value?: number;
|
|
43
|
+
/**
|
|
44
|
+
* How the value reads aloud and, when `isValueShown`, on screen.
|
|
45
|
+
* Without it a scrubber announces "1274", which is a number of
|
|
46
|
+
* seconds nobody has.
|
|
47
|
+
*/
|
|
48
|
+
valueFormat?: (value: number) => string;
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* A single-value range control: the thing `<input type="range">` is,
|
|
52
|
+
* without the OS painting it.
|
|
53
|
+
*
|
|
54
|
+
* The fleet had no way to ask for a value along a range, so QueuePilot's
|
|
55
|
+
* Now-playing bar could not have a scrubber
|
|
56
|
+
* ([decision](../../../../docs/decisions/2026-08-22-the-slider-is-a-div-with-role-slider-not-an-input-range.md)).
|
|
57
|
+
* `ProgressBar` looks like the answer and is not: it is output, it takes
|
|
58
|
+
* no input, and `role="progressbar"` tells assistive technology exactly
|
|
59
|
+
* that.
|
|
60
|
+
*
|
|
61
|
+
* ## Why a `div` and not `<input type="range">`
|
|
62
|
+
*
|
|
63
|
+
* The same reason `Select` is deprecated. A range input's thumb and
|
|
64
|
+
* track are UA pseudo-elements — `::-webkit-slider-thumb`,
|
|
65
|
+
* `::-moz-range-track` — and they are not one surface: the two engines
|
|
66
|
+
* disagree about which of them the track's fill even belongs to, so a
|
|
67
|
+
* token-styled range is two stylesheets that drift. Windows paints its
|
|
68
|
+
* own. `role="slider"` on a focusable `div` is the APG's own pattern,
|
|
69
|
+
* gets the same AT support, and every pixel of it is ours.
|
|
70
|
+
*
|
|
71
|
+
* ## Drag does not commit
|
|
72
|
+
*
|
|
73
|
+
* `onChange` fires per movement, `onChangeEnd` once on release. Both are
|
|
74
|
+
* optional and the component is fully controlled through `value`, so a
|
|
75
|
+
* caller that wants the simple thing passes `onChange` alone and a
|
|
76
|
+
* caller with a network call behind it splits them.
|
|
77
|
+
*
|
|
78
|
+
* While dragging, the component holds the value locally and paints from
|
|
79
|
+
* that rather than from the `value` prop. Without it a controlled
|
|
80
|
+
* scrubber whose owner only commits `onChangeEnd` would render the thumb
|
|
81
|
+
* pinned under the finger at the old position — the drag would look
|
|
82
|
+
* broken while behaving correctly.
|
|
83
|
+
*/
|
|
84
|
+
export declare const Slider: ({ className, intent, isDisabled, isLabelVisible, isReadOnly, isValueShown, label, largeStep, max, min, onChange, onChangeEnd, size, step, value, valueFormat, ...divProps }: SliderProps) => ReactNode;
|
|
85
|
+
//# sourceMappingURL=Slider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Slider.d.ts","sourceRoot":"","sources":["../../src/Slider/Slider.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,EACV,qBAAqB,EAGrB,SAAS,EACV,MAAM,OAAO,CAAA;AAgBd,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AAE3C,MAAM,MAAM,WAAW,GAAG,IAAI,CAC5B,qBAAqB,CAAC,KAAK,CAAC,EAC5B,UAAU,GAAG,cAAc,GAAG,UAAU,CACzC,GAAG;IACF,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,+DAA+D;IAC/D,KAAK,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAClC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACrC,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;CACxC,CAAA;AAqBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,MAAM,GAAI,6KAkBpB,WAAW,KAAG,SAyQhB,CAAA"}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useUniqueId } from "@charcuterie/logic";
|
|
3
|
+
import { useRef, useState } from "react";
|
|
4
|
+
import { FOCUS_RING_CLASS, INTENT_SOLID_FILL_CLASS, } from "../intentStyles.js";
|
|
5
|
+
import { toClassName } from "../toClassName.js";
|
|
6
|
+
import { VisuallyHidden } from "../VisuallyHidden/VisuallyHidden.js";
|
|
7
|
+
import { clampToRange, fromFraction, snapToStep, toPercent, } from "./sliderValue.js";
|
|
8
|
+
const TRACK_SIZE_CLASS = {
|
|
9
|
+
sm: "h-1",
|
|
10
|
+
md: "h-2",
|
|
11
|
+
lg: "h-3",
|
|
12
|
+
};
|
|
13
|
+
const THUMB_SIZE_CLASS = {
|
|
14
|
+
sm: "size-3",
|
|
15
|
+
md: "size-4",
|
|
16
|
+
lg: "size-5",
|
|
17
|
+
};
|
|
18
|
+
/** Half of each `THUMB_SIZE_CLASS`, as the inline-start pull-back. */
|
|
19
|
+
const THUMB_OFFSET = {
|
|
20
|
+
sm: "-0.375rem",
|
|
21
|
+
md: "-0.5rem",
|
|
22
|
+
lg: "-0.625rem",
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* A single-value range control: the thing `<input type="range">` is,
|
|
26
|
+
* without the OS painting it.
|
|
27
|
+
*
|
|
28
|
+
* The fleet had no way to ask for a value along a range, so QueuePilot's
|
|
29
|
+
* Now-playing bar could not have a scrubber
|
|
30
|
+
* ([decision](../../../../docs/decisions/2026-08-22-the-slider-is-a-div-with-role-slider-not-an-input-range.md)).
|
|
31
|
+
* `ProgressBar` looks like the answer and is not: it is output, it takes
|
|
32
|
+
* no input, and `role="progressbar"` tells assistive technology exactly
|
|
33
|
+
* that.
|
|
34
|
+
*
|
|
35
|
+
* ## Why a `div` and not `<input type="range">`
|
|
36
|
+
*
|
|
37
|
+
* The same reason `Select` is deprecated. A range input's thumb and
|
|
38
|
+
* track are UA pseudo-elements — `::-webkit-slider-thumb`,
|
|
39
|
+
* `::-moz-range-track` — and they are not one surface: the two engines
|
|
40
|
+
* disagree about which of them the track's fill even belongs to, so a
|
|
41
|
+
* token-styled range is two stylesheets that drift. Windows paints its
|
|
42
|
+
* own. `role="slider"` on a focusable `div` is the APG's own pattern,
|
|
43
|
+
* gets the same AT support, and every pixel of it is ours.
|
|
44
|
+
*
|
|
45
|
+
* ## Drag does not commit
|
|
46
|
+
*
|
|
47
|
+
* `onChange` fires per movement, `onChangeEnd` once on release. Both are
|
|
48
|
+
* optional and the component is fully controlled through `value`, so a
|
|
49
|
+
* caller that wants the simple thing passes `onChange` alone and a
|
|
50
|
+
* caller with a network call behind it splits them.
|
|
51
|
+
*
|
|
52
|
+
* While dragging, the component holds the value locally and paints from
|
|
53
|
+
* that rather than from the `value` prop. Without it a controlled
|
|
54
|
+
* scrubber whose owner only commits `onChangeEnd` would render the thumb
|
|
55
|
+
* pinned under the finger at the old position — the drag would look
|
|
56
|
+
* broken while behaving correctly.
|
|
57
|
+
*/
|
|
58
|
+
export const Slider = ({ className, intent = "accent", isDisabled = false, isLabelVisible = false, isReadOnly = false, isValueShown = false, label, largeStep, max = 100, min = 0, onChange, onChangeEnd, size = "md", step = 1, value = 0, valueFormat, ...divProps }) => {
|
|
59
|
+
const labelId = useUniqueId();
|
|
60
|
+
const trackRef = useRef(null);
|
|
61
|
+
// Null means "not dragging" — distinct from a drag that happens to
|
|
62
|
+
// sit at 0, which a bare number could not express.
|
|
63
|
+
const [draggedValue, setDraggedValue] = useState(null);
|
|
64
|
+
const isInert = isDisabled || isReadOnly;
|
|
65
|
+
const committed = snapToStep(value, min, max, step);
|
|
66
|
+
const shown = draggedValue ?? committed;
|
|
67
|
+
const percent = toPercent(shown, min, max);
|
|
68
|
+
const bigStep = largeStep == null
|
|
69
|
+
? (Math.max(min, max) - Math.min(min, max)) / 10
|
|
70
|
+
: largeStep;
|
|
71
|
+
const emit = (next, isEnd) => {
|
|
72
|
+
if (next !== shown)
|
|
73
|
+
onChange?.(next);
|
|
74
|
+
if (isEnd) {
|
|
75
|
+
setDraggedValue(null);
|
|
76
|
+
onChangeEnd?.(next);
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
setDraggedValue(next);
|
|
80
|
+
};
|
|
81
|
+
/** The value the pointer at `clientX` is pointing at. */
|
|
82
|
+
const valueAt = (clientX) => {
|
|
83
|
+
const track = trackRef.current;
|
|
84
|
+
if (!track)
|
|
85
|
+
return shown;
|
|
86
|
+
const box = track.getBoundingClientRect();
|
|
87
|
+
if (box.width <= 0)
|
|
88
|
+
return shown;
|
|
89
|
+
// `left`/`right` here are physical, from the layout box, and stay
|
|
90
|
+
// physical on purpose — `isRtl` is what turns them into a value.
|
|
91
|
+
// The logical-properties rule is about `className`, not geometry.
|
|
92
|
+
const fraction = (clientX - box.left) / box.width;
|
|
93
|
+
const isRtl = getComputedStyle(track).direction === "rtl";
|
|
94
|
+
return fromFraction(fraction, min, max, step, isRtl);
|
|
95
|
+
};
|
|
96
|
+
const onPointerDown = (event) => {
|
|
97
|
+
if (isInert || event.button !== 0)
|
|
98
|
+
return;
|
|
99
|
+
// Capture on the TRACK, so a drag that leaves the element vertically
|
|
100
|
+
// (a thumb dragged off the bar, which is most of them) keeps
|
|
101
|
+
// reporting instead of stopping dead at the boundary.
|
|
102
|
+
event.currentTarget.setPointerCapture(event.pointerId);
|
|
103
|
+
event.currentTarget.focus();
|
|
104
|
+
emit(valueAt(event.clientX), false);
|
|
105
|
+
};
|
|
106
|
+
const onPointerMove = (event) => {
|
|
107
|
+
if (isInert || draggedValue == null)
|
|
108
|
+
return;
|
|
109
|
+
emit(valueAt(event.clientX), false);
|
|
110
|
+
};
|
|
111
|
+
const onPointerUp = (event) => {
|
|
112
|
+
if (isInert || draggedValue == null)
|
|
113
|
+
return;
|
|
114
|
+
event.currentTarget.releasePointerCapture(event.pointerId);
|
|
115
|
+
emit(valueAt(event.clientX), true);
|
|
116
|
+
};
|
|
117
|
+
const onKeyDown = (event) => {
|
|
118
|
+
if (isInert)
|
|
119
|
+
return;
|
|
120
|
+
// Home/End are absolute; the rest are relative. `null` means the key
|
|
121
|
+
// is not ours and the event goes on its way — scrolling with the
|
|
122
|
+
// arrows off a focused slider is not something to swallow silently,
|
|
123
|
+
// but a slider that ignores its own arrow keys is worse.
|
|
124
|
+
const next = (() => {
|
|
125
|
+
switch (event.key) {
|
|
126
|
+
case "ArrowDown":
|
|
127
|
+
case "ArrowLeft":
|
|
128
|
+
return shown - step;
|
|
129
|
+
case "ArrowRight":
|
|
130
|
+
case "ArrowUp":
|
|
131
|
+
return shown + step;
|
|
132
|
+
case "End":
|
|
133
|
+
return Math.max(min, max);
|
|
134
|
+
case "Home":
|
|
135
|
+
return Math.min(min, max);
|
|
136
|
+
case "PageDown":
|
|
137
|
+
return shown - bigStep;
|
|
138
|
+
case "PageUp":
|
|
139
|
+
return shown + bigStep;
|
|
140
|
+
default:
|
|
141
|
+
return null;
|
|
142
|
+
}
|
|
143
|
+
})();
|
|
144
|
+
if (next == null)
|
|
145
|
+
return;
|
|
146
|
+
event.preventDefault();
|
|
147
|
+
// Keys commit immediately. A key press is a discrete interaction —
|
|
148
|
+
// there is no release to wait for the way a drag has one, and an
|
|
149
|
+
// arrow key that only committed on `keyup` would feel lagged.
|
|
150
|
+
emit(snapToStep(next, min, max, step), true);
|
|
151
|
+
};
|
|
152
|
+
const valueText = valueFormat?.(clampToRange(shown, min, max));
|
|
153
|
+
return (_jsxs("div", { ...divProps, className: toClassName("flex flex-col gap-1",
|
|
154
|
+
// A definite floor, because the root has no intrinsic width of
|
|
155
|
+
// its own: the track is `w-full` and the label is the only
|
|
156
|
+
// content, so a slider with no visible label in a shrink-to-fit
|
|
157
|
+
// parent (`items-start`, an inline-flex row) collapses to the
|
|
158
|
+
// width of the thumb. Every gate passed on exactly that —
|
|
159
|
+
// `role`, ARIA, keyboard and axe are all correct on a control
|
|
160
|
+
// 16px wide. `<input type="range">` has an intrinsic default
|
|
161
|
+
// width for the same reason; this is ours.
|
|
162
|
+
"min-w-40", className), children: [isLabelVisible || isValueShown ? (_jsxs("div", { className: "flex items-baseline justify-between gap-2 text-sm", children: [isLabelVisible ? (_jsx("span", { className: "text-content-secondary", id: labelId, children: label })) : (_jsx(VisuallyHidden, { id: labelId, children: label })), isValueShown ? (_jsx("span", { className: "text-content-muted tabular-nums", children: valueText ?? shown })) : null] })) : (_jsx(VisuallyHidden, { id: labelId, children: label })), _jsxs("div", { "aria-disabled": isDisabled || undefined, "aria-labelledby": labelId, "aria-orientation": "horizontal", "aria-readonly": isReadOnly || undefined, "aria-valuemax": Math.max(min, max), "aria-valuemin": Math.min(min, max), "aria-valuenow": shown, "aria-valuetext": valueText, className: toClassName("relative flex w-full touch-none items-center rounded-full",
|
|
163
|
+
// The hit area is the row, which is taller than the bar: a
|
|
164
|
+
// 2px track is not a pointer target, and a finger is 44px.
|
|
165
|
+
"min-h-(--control-height-sm) cursor-pointer", FOCUS_RING_CLASS,
|
|
166
|
+
// NOT `ARIA_DISABLED_CLASS`. That constant paints a
|
|
167
|
+
// box-shaped control — `bg-surface-sunken` plus a border —
|
|
168
|
+
// which is right for `ButtonLink` and wrong here: a slider's
|
|
169
|
+
// visible body is a 2px track inside a 40px hit row, so the
|
|
170
|
+
// sunken fill lands on the whole row and draws a grey
|
|
171
|
+
// rectangle nothing else in the component has. Every gate
|
|
172
|
+
// passed on it; the screenshot is what showed it.
|
|
173
|
+
//
|
|
174
|
+
// `pointer-events-none` is the half that carries over, and it
|
|
175
|
+
// is load-bearing rather than cosmetic: without a real
|
|
176
|
+
// `:disabled` the hover rules still match.
|
|
177
|
+
isDisabled
|
|
178
|
+
? "pointer-events-none opacity-55"
|
|
179
|
+
: "", isReadOnly ? "cursor-default" : ""), onKeyDown: onKeyDown, onPointerCancel: onPointerUp, onPointerDown: onPointerDown, onPointerMove: onPointerMove, onPointerUp: onPointerUp, ref: trackRef, role: "slider", tabIndex: isDisabled ? -1 : 0, children: [_jsx("span", { className: toClassName("w-full overflow-hidden rounded-full bg-surface-sunken", TRACK_SIZE_CLASS[size]), children: _jsx("span", { className: toClassName("block h-full rounded-full", INTENT_SOLID_FILL_CLASS[intent]), style: { inlineSize: `${percent}%` } }) }), _jsx("span", { "aria-hidden": "true", className: toClassName("absolute rounded-full border-2 border-surface-raised shadow-sm", THUMB_SIZE_CLASS[size], INTENT_SOLID_FILL_CLASS[intent]),
|
|
180
|
+
// Pulled back by half its own width so it sits ON the
|
|
181
|
+
// position rather than starting at it, which is what keeps
|
|
182
|
+
// 100% from hanging off the end of the track.
|
|
183
|
+
//
|
|
184
|
+
// `margin-inline-start`, not `translate: -50%`. `translate`
|
|
185
|
+
// is physical, so in RTL it would shift the thumb the wrong
|
|
186
|
+
// way and 0% would hang off the start edge — the one bug a
|
|
187
|
+
// logical `inset-inline-start` looks like it already solved.
|
|
188
|
+
style: {
|
|
189
|
+
insetInlineStart: `${percent}%`,
|
|
190
|
+
marginInlineStart: THUMB_OFFSET[size],
|
|
191
|
+
} })] })] }));
|
|
192
|
+
};
|
|
193
|
+
//# sourceMappingURL=Slider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Slider.js","sourceRoot":"","sources":["../../src/Slider/Slider.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The arithmetic behind `Slider`, kept out of the component so it can be
|
|
3
|
+
* tested in the node project rather than driven through a pointer.
|
|
4
|
+
*
|
|
5
|
+
* Every function here is total: a caller may pass a `NaN`, a reversed
|
|
6
|
+
* range or a zero step, and the answer is still a number inside the
|
|
7
|
+
* range. A slider that renders a thumb at `NaN%` is invisible, and the
|
|
8
|
+
* DOM says nothing about it.
|
|
9
|
+
*/
|
|
10
|
+
/** `value` forced into `[min, max]`, whichever way round they arrive. */
|
|
11
|
+
export declare const clampToRange: (value: number, min: number, max: number) => number;
|
|
12
|
+
/**
|
|
13
|
+
* `value` snapped to the nearest `min + n * step`, then clamped.
|
|
14
|
+
*
|
|
15
|
+
* Anchored on `min` rather than on zero, which is the difference
|
|
16
|
+
* between a 0–100 slider (where both agree) and a 7–19 one stepping by
|
|
17
|
+
* 4: anchored on zero its reachable values are 8, 12, 16 and neither
|
|
18
|
+
* end of its own range is one of them.
|
|
19
|
+
*
|
|
20
|
+
* A non-positive or non-finite `step` means "continuous" and snaps
|
|
21
|
+
* nothing — it must not divide by zero and hand back `NaN`.
|
|
22
|
+
*/
|
|
23
|
+
export declare const snapToStep: (value: number, min: number, max: number, step: number) => number;
|
|
24
|
+
/**
|
|
25
|
+
* `value` rounded to as many decimals as `step` has.
|
|
26
|
+
*
|
|
27
|
+
* `Number.EPSILON` scaling is deliberately not used — the input here is
|
|
28
|
+
* always already a multiple of `step` give or take float drift, so the
|
|
29
|
+
* decimal count of `step` is exactly the precision that can be real.
|
|
30
|
+
*/
|
|
31
|
+
export declare const roundToStepPrecision: (value: number, step: number) => number;
|
|
32
|
+
/**
|
|
33
|
+
* Where the thumb sits, 0–100, for `inline-size` / `inset-inline-start`.
|
|
34
|
+
*
|
|
35
|
+
* A zero-width range is 0% rather than `NaN`: `min === max` is a
|
|
36
|
+
* degenerate but legal slider (a single-valued one), and it should
|
|
37
|
+
* paint at the start instead of disappearing.
|
|
38
|
+
*/
|
|
39
|
+
export declare const toPercent: (value: number, min: number, max: number) => number;
|
|
40
|
+
/**
|
|
41
|
+
* The value a pointer at `fraction` (0–1 along the track) is asking for.
|
|
42
|
+
*
|
|
43
|
+
* `isRtl` inverts it. The caller measures with `getBoundingClientRect()`,
|
|
44
|
+
* which is physical and knows nothing about writing direction, so a
|
|
45
|
+
* right-to-left slider would otherwise run backwards.
|
|
46
|
+
*/
|
|
47
|
+
export declare const fromFraction: (fraction: number, min: number, max: number, step: number, isRtl?: boolean) => number;
|
|
48
|
+
//# sourceMappingURL=sliderValue.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sliderValue.d.ts","sourceRoot":"","sources":["../../src/Slider/sliderValue.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,yEAAyE;AACzE,eAAO,MAAM,YAAY,GACvB,OAAO,MAAM,EACb,KAAK,MAAM,EACX,KAAK,MAAM,KACV,MAWF,CAAA;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,UAAU,GACrB,OAAO,MAAM,EACb,KAAK,MAAM,EACX,KAAK,MAAM,EACX,MAAM,MAAM,KACX,MAmBF,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,GAC/B,OAAO,MAAM,EACb,MAAM,MAAM,KACX,MAgBF,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,GACpB,OAAO,MAAM,EACb,KAAK,MAAM,EACX,KAAK,MAAM,KACV,MAYF,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,GACvB,UAAU,MAAM,EAChB,KAAK,MAAM,EACX,KAAK,MAAM,EACX,MAAM,MAAM,EACZ,eAAa,KACZ,MAiBF,CAAA"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The arithmetic behind `Slider`, kept out of the component so it can be
|
|
3
|
+
* tested in the node project rather than driven through a pointer.
|
|
4
|
+
*
|
|
5
|
+
* Every function here is total: a caller may pass a `NaN`, a reversed
|
|
6
|
+
* range or a zero step, and the answer is still a number inside the
|
|
7
|
+
* range. A slider that renders a thumb at `NaN%` is invisible, and the
|
|
8
|
+
* DOM says nothing about it.
|
|
9
|
+
*/
|
|
10
|
+
/** `value` forced into `[min, max]`, whichever way round they arrive. */
|
|
11
|
+
export const clampToRange = (value, min, max) => {
|
|
12
|
+
const low = Math.min(min, max);
|
|
13
|
+
const high = Math.max(min, max);
|
|
14
|
+
// NaN only. An infinity is an ORDERED value and clamps like any
|
|
15
|
+
// other — `Math.min`/`Math.max` already put it at the right end, and
|
|
16
|
+
// sending +Infinity to the floor would be the wrong end of the range.
|
|
17
|
+
if (Number.isNaN(value))
|
|
18
|
+
return low;
|
|
19
|
+
return Math.min(high, Math.max(low, value));
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* `value` snapped to the nearest `min + n * step`, then clamped.
|
|
23
|
+
*
|
|
24
|
+
* Anchored on `min` rather than on zero, which is the difference
|
|
25
|
+
* between a 0–100 slider (where both agree) and a 7–19 one stepping by
|
|
26
|
+
* 4: anchored on zero its reachable values are 8, 12, 16 and neither
|
|
27
|
+
* end of its own range is one of them.
|
|
28
|
+
*
|
|
29
|
+
* A non-positive or non-finite `step` means "continuous" and snaps
|
|
30
|
+
* nothing — it must not divide by zero and hand back `NaN`.
|
|
31
|
+
*/
|
|
32
|
+
export const snapToStep = (value, min, max, step) => {
|
|
33
|
+
const clamped = clampToRange(value, min, max);
|
|
34
|
+
if (!Number.isFinite(step) || step <= 0)
|
|
35
|
+
return clamped;
|
|
36
|
+
const low = Math.min(min, max);
|
|
37
|
+
const snapped = low + Math.round((clamped - low) / step) * step;
|
|
38
|
+
// Re-clamp: the last step can land past `max` when the range is not
|
|
39
|
+
// a whole number of steps (0–10 by 3 snaps 10 to 9, but 0–10 by 4
|
|
40
|
+
// would snap 10 to 12 without this).
|
|
41
|
+
const bounded = clampToRange(snapped, min, max);
|
|
42
|
+
// Float steps accumulate: 0.1 * 3 is 0.30000000000000004, and that
|
|
43
|
+
// reaches `aria-valuenow` and the visible value both. Round to the
|
|
44
|
+
// decimals the step itself declares.
|
|
45
|
+
return roundToStepPrecision(bounded, step);
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* `value` rounded to as many decimals as `step` has.
|
|
49
|
+
*
|
|
50
|
+
* `Number.EPSILON` scaling is deliberately not used — the input here is
|
|
51
|
+
* always already a multiple of `step` give or take float drift, so the
|
|
52
|
+
* decimal count of `step` is exactly the precision that can be real.
|
|
53
|
+
*/
|
|
54
|
+
export const roundToStepPrecision = (value, step) => {
|
|
55
|
+
if (!Number.isFinite(step) || step <= 0)
|
|
56
|
+
return value;
|
|
57
|
+
const text = String(step);
|
|
58
|
+
// An exponential step ("1e-7") has no visible decimal point, so
|
|
59
|
+
// `split(".")` would report zero decimals and round it to an integer.
|
|
60
|
+
if (text.includes("e") || text.includes("E"))
|
|
61
|
+
return value;
|
|
62
|
+
const decimals = text.split(".")[1]?.length ?? 0;
|
|
63
|
+
if (decimals === 0)
|
|
64
|
+
return Math.round(value);
|
|
65
|
+
const scale = 10 ** decimals;
|
|
66
|
+
return Math.round(value * scale) / scale;
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* Where the thumb sits, 0–100, for `inline-size` / `inset-inline-start`.
|
|
70
|
+
*
|
|
71
|
+
* A zero-width range is 0% rather than `NaN`: `min === max` is a
|
|
72
|
+
* degenerate but legal slider (a single-valued one), and it should
|
|
73
|
+
* paint at the start instead of disappearing.
|
|
74
|
+
*/
|
|
75
|
+
export const toPercent = (value, min, max) => {
|
|
76
|
+
const low = Math.min(min, max);
|
|
77
|
+
const high = Math.max(min, max);
|
|
78
|
+
const span = high - low;
|
|
79
|
+
if (span <= 0)
|
|
80
|
+
return 0;
|
|
81
|
+
return (((clampToRange(value, low, high) - low) / span) * 100);
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* The value a pointer at `fraction` (0–1 along the track) is asking for.
|
|
85
|
+
*
|
|
86
|
+
* `isRtl` inverts it. The caller measures with `getBoundingClientRect()`,
|
|
87
|
+
* which is physical and knows nothing about writing direction, so a
|
|
88
|
+
* right-to-left slider would otherwise run backwards.
|
|
89
|
+
*/
|
|
90
|
+
export const fromFraction = (fraction, min, max, step, isRtl = false) => {
|
|
91
|
+
const safe = Number.isFinite(fraction) ? fraction : 0;
|
|
92
|
+
const bounded = Math.min(1, Math.max(0, safe));
|
|
93
|
+
const along = isRtl ? 1 - bounded : bounded;
|
|
94
|
+
const low = Math.min(min, max);
|
|
95
|
+
const high = Math.max(min, max);
|
|
96
|
+
return snapToStep(low + along * (high - low), min, max, step);
|
|
97
|
+
};
|
|
98
|
+
//# sourceMappingURL=sliderValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sliderValue.js","sourceRoot":"","sources":["../../src/Slider/sliderValue.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -141,6 +141,8 @@ export type { ShellProps } from "./Shell/Shell.tsx";
|
|
|
141
141
|
export { Shell } from "./Shell/Shell.tsx";
|
|
142
142
|
export type { SkeletonProps, SkeletonShape, } from "./Skeleton/Skeleton.tsx";
|
|
143
143
|
export { Skeleton } from "./Skeleton/Skeleton.tsx";
|
|
144
|
+
export type { SliderProps, SliderSize, } from "./Slider/Slider.tsx";
|
|
145
|
+
export { Slider } from "./Slider/Slider.tsx";
|
|
144
146
|
export type { SortableTableHeaderProps, SortDirection, } from "./SortableTableHeader/SortableTableHeader.tsx";
|
|
145
147
|
export { SortableTableHeader } from "./SortableTableHeader/SortableTableHeader.tsx";
|
|
146
148
|
export type { SpinnerProps } from "./Spinner/Spinner.tsx";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -86,6 +86,7 @@ export { SegmentedControl } from "./SegmentedControl/SegmentedControl.js";
|
|
|
86
86
|
export { Select } from "./Select/Select.js";
|
|
87
87
|
export { Shell } from "./Shell/Shell.js";
|
|
88
88
|
export { Skeleton } from "./Skeleton/Skeleton.js";
|
|
89
|
+
export { Slider } from "./Slider/Slider.js";
|
|
89
90
|
export { SortableTableHeader } from "./SortableTableHeader/SortableTableHeader.js";
|
|
90
91
|
export { Spinner } from "./Spinner/Spinner.js";
|
|
91
92
|
export { Stepper } from "./Stepper/Stepper.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@charcuterie/ui",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.9.0",
|
|
4
4
|
"description": "The Charcuterie components. Tokens for look, @charcuterie/logic for state, ARIA that agents can actually drive.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"typecheck": "tsc --noEmit"
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@charcuterie/logic": "2.
|
|
56
|
+
"@charcuterie/logic": "2.1.0",
|
|
57
57
|
"@charcuterie/tokens": "1.6.0",
|
|
58
58
|
"@floating-ui/react": "^0.27.20",
|
|
59
59
|
"@tanstack/react-virtual": "^3.13.12",
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Canvas, Controls, Meta } from "@storybook/addon-docs/blocks";
|
|
2
|
+
|
|
3
|
+
import * as SliderStories from "./Slider.stories";
|
|
4
|
+
|
|
5
|
+
<Meta of={SliderStories} />
|
|
6
|
+
|
|
7
|
+
# Slider
|
|
8
|
+
|
|
9
|
+
A single-value range control: what `<input type="range">` is, without the OS painting it.
|
|
10
|
+
|
|
11
|
+
The fleet had no way to ask for a value along a range, so QueuePilot's Now-playing bar
|
|
12
|
+
could not have a scrubber and the choice was a native range input or a hand-rolled one in
|
|
13
|
+
a single app. `ProgressBar` looks like the answer and is not — it is **output**, it takes
|
|
14
|
+
no input, and `role="progressbar"` tells assistive technology exactly that.
|
|
15
|
+
|
|
16
|
+
<Canvas of={SliderStories.Default} />
|
|
17
|
+
|
|
18
|
+
## Props
|
|
19
|
+
|
|
20
|
+
<Controls />
|
|
21
|
+
|
|
22
|
+
## Why a `div` and not `<input type="range">`
|
|
23
|
+
|
|
24
|
+
The same reason [`Select` is deprecated](?path=/docs/components-controls-select--docs).
|
|
25
|
+
|
|
26
|
+
A range input's thumb and track are UA pseudo-elements — `::-webkit-slider-thumb`,
|
|
27
|
+
`::-moz-range-track` — and they are not one surface: the two engines disagree about which
|
|
28
|
+
of them the filled portion even belongs to, so a token-styled range is two stylesheets that
|
|
29
|
+
drift apart. Windows paints its own regardless.
|
|
30
|
+
|
|
31
|
+
`role="slider"` on a focusable `div` is the APG's own pattern, gets the same AT support, and
|
|
32
|
+
every pixel of it is ours.
|
|
33
|
+
|
|
34
|
+
## The role, the tab stop and the pointer target are all the track
|
|
35
|
+
|
|
36
|
+
Putting them on the thumb is what a hand-rolled slider usually does, because the thumb is
|
|
37
|
+
the part that looks draggable. It gives the widget a 16px box: a press on the bar does
|
|
38
|
+
nothing, and a Playwright bounding box is the handle rather than the control.
|
|
39
|
+
|
|
40
|
+
The hit area is a row taller than the bar, because a 2px track is not a pointer target.
|
|
41
|
+
|
|
42
|
+
## Drag does not commit
|
|
43
|
+
|
|
44
|
+
`onChange` fires on every movement — each arrow key, each pointer sample. `onChangeEnd`
|
|
45
|
+
fires once, on release or key up.
|
|
46
|
+
|
|
47
|
+
This split exists because the expensive consumer of a slider is almost never the paint. A
|
|
48
|
+
seek scrubber issuing its network call from `onChange` would send one request per pointer
|
|
49
|
+
sample and arrive at the right offset **last**, behind a queue of stale ones.
|
|
50
|
+
|
|
51
|
+
While a drag is in flight the component paints from its own local value rather than from
|
|
52
|
+
the `value` prop. Without that, a controlled slider whose owner only commits on
|
|
53
|
+
`onChangeEnd` would render the thumb pinned at the old position under the finger — the drag
|
|
54
|
+
would look broken while behaving correctly.
|
|
55
|
+
|
|
56
|
+
<Canvas of={SliderStories.Interactive} />
|
|
57
|
+
|
|
58
|
+
## Read-only is not disabled
|
|
59
|
+
|
|
60
|
+
A read-only slider keeps full contrast and stays focusable, so its value is still readable
|
|
61
|
+
and still reachable by a screen reader. A live stream's position is this: the number
|
|
62
|
+
matters and seeking is not offered.
|
|
63
|
+
|
|
64
|
+
<Canvas of={SliderStories.AllStates} />
|
|
65
|
+
|
|
66
|
+
## The arithmetic is a tested pure function
|
|
67
|
+
|
|
68
|
+
`sliderValue.ts`, in the node project. Steps anchor on `min` rather than on zero — a 7–19
|
|
69
|
+
range stepping by 4 anchored on zero can reach 8, 12 and 16, and neither end of its own
|
|
70
|
+
range is one of them. A snap never escapes the range, a float step does not accumulate
|
|
71
|
+
drift into `aria-valuenow`, and a `NaN` cannot reach the style attribute, where it would
|
|
72
|
+
render `inline-size: NaN%` and paint nothing with no error.
|
|
73
|
+
|
|
74
|
+
`fromFraction` takes an `isRtl` flag because `getBoundingClientRect()` is physical and knows
|
|
75
|
+
nothing about writing direction — without it a right-to-left slider runs backwards under the
|
|
76
|
+
pointer while its keyboard path stays correct.
|
|
77
|
+
|
|
78
|
+
<Canvas of={SliderStories.AllVariants} />
|