fluent-styles 1.62.3 → 1.62.4
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/lib/commonjs/slider/index.js +72 -22
- package/lib/commonjs/slider/index.js.map +1 -1
- package/lib/module/slider/index.js +72 -22
- package/lib/module/slider/index.js.map +1 -1
- package/lib/typescript/slider/index.d.ts +27 -5
- package/lib/typescript/slider/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/slider/index.tsx +82 -46
|
@@ -22,11 +22,33 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
|
|
|
22
22
|
* • gradient — gradient-filled track
|
|
23
23
|
* • buffer — primary thumb + secondary buffer fill (media player style)
|
|
24
24
|
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
25
|
+
* FIX (v1.1):
|
|
26
|
+
* The previous version had a useEffect(() => setLocalLow(value), [value])
|
|
27
|
+
* that created a feedback loop when used as a controlled component:
|
|
28
|
+
* onValueChange → setState → re-render → value prop changes
|
|
29
|
+
* → useEffect fires → setLocalLow resets → thumb snaps back
|
|
30
|
+
*
|
|
31
|
+
* Fix strategy:
|
|
32
|
+
* 1. useEffect only fires on MOUNT (empty dep array) — sets initial position once
|
|
33
|
+
* 2. External value changes are ignored while dragging (dragging ref guard)
|
|
34
|
+
* 3. External value changes ARE applied when not dragging (programmatic updates work)
|
|
35
|
+
* 4. onValueChange fires continuously during drag (for live display updates)
|
|
36
|
+
* 5. onSlidingComplete fires once on finger lift (for committing to state)
|
|
37
|
+
*
|
|
38
|
+
* Correct usage in parent (controlled, live display):
|
|
39
|
+
* const displayRef = useRef(initialValue) // never causes re-render
|
|
40
|
+
* const [display, setDisplay] = useState(initialValue)
|
|
41
|
+
* <StyledSlider
|
|
42
|
+
* value={initialValue} // ← frozen, never updated
|
|
43
|
+
* onValueChange={v => { displayRef.current = v; setDisplay(v) }}
|
|
44
|
+
* onSlidingComplete={v => commitToState(v)}
|
|
45
|
+
* />
|
|
46
|
+
*
|
|
47
|
+
* Simplest usage (fire-and-forget):
|
|
48
|
+
* <StyledSlider
|
|
49
|
+
* value={28}
|
|
50
|
+
* onSlidingComplete={v => saveValue(v)}
|
|
51
|
+
* />
|
|
30
52
|
*/
|
|
31
53
|
|
|
32
54
|
// ─── Types ────────────────────────────────────────────────────────────────────
|
|
@@ -73,11 +95,6 @@ function snapToStep(value, min, max, step) {
|
|
|
73
95
|
}
|
|
74
96
|
|
|
75
97
|
// ─── Tooltip ──────────────────────────────────────────────────────────────────
|
|
76
|
-
//
|
|
77
|
-
// Self-measuring: measures its own width after first layout, then applies
|
|
78
|
-
// translateX = -(width/2) to centre precisely over the thumb.
|
|
79
|
-
// Uses useNativeDriver: false for opacity so iOS renders text colour correctly.
|
|
80
|
-
// SVG Path triangle — never clips, always pixel-perfect.
|
|
81
98
|
|
|
82
99
|
const Tooltip = ({
|
|
83
100
|
visible,
|
|
@@ -111,8 +128,7 @@ const Tooltip = ({
|
|
|
111
128
|
borderRadius: 4,
|
|
112
129
|
alignItems: "center",
|
|
113
130
|
justifyContent: "center",
|
|
114
|
-
minWidth: label.length * 18
|
|
115
|
-
,
|
|
131
|
+
minWidth: label.length * 18,
|
|
116
132
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_fluentStyles.StyledText, {
|
|
117
133
|
numberOfLines: 1,
|
|
118
134
|
ellipsizeMode: "clip",
|
|
@@ -164,9 +180,7 @@ const Thumb = ({
|
|
|
164
180
|
onMove,
|
|
165
181
|
onEnd
|
|
166
182
|
}) => {
|
|
167
|
-
// scaleAnim uses native driver (transform only — safe)
|
|
168
183
|
const scaleAnim = (0, _react.useRef)(new _reactNative.Animated.Value(1)).current;
|
|
169
|
-
// tooltipAnim uses JS driver (opacity — required for text colour on iOS)
|
|
170
184
|
const tooltipAnim = (0, _react.useRef)(new _reactNative.Animated.Value(alwaysTooltip ? 1 : 0)).current;
|
|
171
185
|
const dragging = (0, _react.useRef)(false);
|
|
172
186
|
const animateIn = () => {
|
|
@@ -187,7 +201,7 @@ const Thumb = ({
|
|
|
187
201
|
}), _reactNative.Animated.timing(tooltipAnim, {
|
|
188
202
|
toValue: alwaysTooltip ? 1 : 0,
|
|
189
203
|
duration: 150,
|
|
190
|
-
useNativeDriver: false
|
|
204
|
+
useNativeDriver: false
|
|
191
205
|
})]).start();
|
|
192
206
|
};
|
|
193
207
|
const panResponder = (0, _react.useRef)(_reactNative.PanResponder.create({
|
|
@@ -220,11 +234,9 @@ const Thumb = ({
|
|
|
220
234
|
position: "absolute",
|
|
221
235
|
left,
|
|
222
236
|
top: 0,
|
|
223
|
-
// wrapper height = thumbD, centred
|
|
224
237
|
width: thumbD,
|
|
225
238
|
height: thumbD,
|
|
226
239
|
overflow: "visible",
|
|
227
|
-
// tooltip floats up freely
|
|
228
240
|
transform: [{
|
|
229
241
|
scale: scaleAnim
|
|
230
242
|
}]
|
|
@@ -330,12 +342,36 @@ const StyledSlider = ({
|
|
|
330
342
|
const [localLow, setLocalLow] = (0, _react.useState)(value);
|
|
331
343
|
const [localHigh, setLocalHigh] = (0, _react.useState)(valueHigh ?? max);
|
|
332
344
|
const [bufLocal, setBufLocal] = (0, _react.useState)(bufferValue ?? value);
|
|
345
|
+
|
|
346
|
+
// ─── FIX: track whether a thumb is currently being dragged ───────────────
|
|
347
|
+
// When dragging, we IGNORE external value prop changes entirely.
|
|
348
|
+
// This prevents the feedback loop:
|
|
349
|
+
// onValueChange → parent setState → value prop changes
|
|
350
|
+
// → useEffect → setLocalLow resets thumb → snap-back
|
|
351
|
+
const isDraggingLow = (0, _react.useRef)(false);
|
|
352
|
+
const isDraggingHigh = (0, _react.useRef)(false);
|
|
353
|
+
|
|
354
|
+
// Sync localLow from external value prop ONLY when not dragging.
|
|
355
|
+
// On mount (prevValue is undefined) we always sync.
|
|
356
|
+
const prevValueRef = (0, _react.useRef)(undefined);
|
|
333
357
|
(0, _react.useEffect)(() => {
|
|
358
|
+
if (isDraggingLow.current) return; // ← guard: ignore during drag
|
|
359
|
+
if (prevValueRef.current === value) return; // ← no-op if value unchanged
|
|
360
|
+
prevValueRef.current = value;
|
|
334
361
|
setLocalLow(value);
|
|
335
362
|
}, [value]);
|
|
363
|
+
|
|
364
|
+
// Sync localHigh from external valueHigh prop ONLY when not dragging.
|
|
365
|
+
const prevHighRef = (0, _react.useRef)(undefined);
|
|
336
366
|
(0, _react.useEffect)(() => {
|
|
337
|
-
if (
|
|
367
|
+
if (isDraggingHigh.current) return;
|
|
368
|
+
if (valueHigh === undefined) return;
|
|
369
|
+
if (prevHighRef.current === valueHigh) return;
|
|
370
|
+
prevHighRef.current = valueHigh;
|
|
371
|
+
setLocalHigh(valueHigh);
|
|
338
372
|
}, [valueHigh]);
|
|
373
|
+
|
|
374
|
+
// bufferValue sync is safe — no thumb drag involved
|
|
339
375
|
(0, _react.useEffect)(() => {
|
|
340
376
|
if (bufferValue !== undefined) setBufLocal(bufferValue);
|
|
341
377
|
}, [bufferValue]);
|
|
@@ -344,6 +380,11 @@ const StyledSlider = ({
|
|
|
344
380
|
const highF = clamp((localHigh - min) / range, 0, 1);
|
|
345
381
|
const bufF = clamp((bufLocal - min) / range, 0, 1);
|
|
346
382
|
const effectiveStep = variant === "stepped" ? (max - min) / (steps - 1) : step;
|
|
383
|
+
|
|
384
|
+
// ─── Low thumb handlers ───────────────────────────────────────────────────
|
|
385
|
+
const handleLowStart = (0, _react.useCallback)(() => {
|
|
386
|
+
isDraggingLow.current = true;
|
|
387
|
+
}, []);
|
|
347
388
|
const handleLowMove = (0, _react.useCallback)(frac => {
|
|
348
389
|
const snapped = snapToStep(min + frac * range, min, variant === "range" ? localHigh : max, effectiveStep);
|
|
349
390
|
setLocalLow(snapped);
|
|
@@ -351,15 +392,25 @@ const StyledSlider = ({
|
|
|
351
392
|
if (variant === "range") onRangeChange?.(snapped, localHigh);
|
|
352
393
|
}, [min, range, effectiveStep, localHigh, variant, onValueChange, onRangeChange]);
|
|
353
394
|
const handleLowEnd = (0, _react.useCallback)(() => {
|
|
395
|
+
isDraggingLow.current = false;
|
|
396
|
+
// Update prevValueRef so the next external change is not swallowed
|
|
397
|
+
prevValueRef.current = localLow;
|
|
354
398
|
onSlidingComplete?.(localLow);
|
|
355
399
|
if (variant === "range") onRangeComplete?.(localLow, localHigh);
|
|
356
400
|
}, [localLow, localHigh, variant, onSlidingComplete, onRangeComplete]);
|
|
401
|
+
|
|
402
|
+
// ─── High thumb handlers (range variant) ─────────────────────────────────
|
|
403
|
+
const handleHighStart = (0, _react.useCallback)(() => {
|
|
404
|
+
isDraggingHigh.current = true;
|
|
405
|
+
}, []);
|
|
357
406
|
const handleHighMove = (0, _react.useCallback)(frac => {
|
|
358
407
|
const snapped = snapToStep(min + frac * range, localLow, max, effectiveStep);
|
|
359
408
|
setLocalHigh(snapped);
|
|
360
409
|
onRangeChange?.(localLow, snapped);
|
|
361
410
|
}, [min, range, effectiveStep, localLow, max, onRangeChange]);
|
|
362
411
|
const handleHighEnd = (0, _react.useCallback)(() => {
|
|
412
|
+
isDraggingHigh.current = false;
|
|
413
|
+
prevHighRef.current = localHigh;
|
|
363
414
|
onRangeComplete?.(localLow, localHigh);
|
|
364
415
|
}, [localLow, localHigh, onRangeComplete]);
|
|
365
416
|
if (!barW && !widthProp) {
|
|
@@ -385,7 +436,6 @@ const StyledSlider = ({
|
|
|
385
436
|
width: barW,
|
|
386
437
|
height: thumbD,
|
|
387
438
|
overflow: "visible",
|
|
388
|
-
// thumbs + tooltips escape freely
|
|
389
439
|
justifyContent: "center"
|
|
390
440
|
},
|
|
391
441
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
@@ -396,7 +446,7 @@ const StyledSlider = ({
|
|
|
396
446
|
height: trackH,
|
|
397
447
|
borderRadius: trackBR,
|
|
398
448
|
backgroundColor: C.track,
|
|
399
|
-
overflow: "hidden"
|
|
449
|
+
overflow: "hidden"
|
|
400
450
|
},
|
|
401
451
|
children: [variant === "buffer" && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
402
452
|
style: {
|
|
@@ -458,7 +508,7 @@ const StyledSlider = ({
|
|
|
458
508
|
tooltipBg: C.tooltipBg,
|
|
459
509
|
tooltipText: C.tooltipText,
|
|
460
510
|
disabled: disabled,
|
|
461
|
-
onStart:
|
|
511
|
+
onStart: handleLowStart,
|
|
462
512
|
onMove: handleLowMove,
|
|
463
513
|
onEnd: handleLowEnd
|
|
464
514
|
}), variant === "range" && /*#__PURE__*/(0, _jsxRuntime.jsx)(Thumb, {
|
|
@@ -474,7 +524,7 @@ const StyledSlider = ({
|
|
|
474
524
|
tooltipBg: C.tooltipBg,
|
|
475
525
|
tooltipText: C.tooltipText,
|
|
476
526
|
disabled: disabled,
|
|
477
|
-
onStart:
|
|
527
|
+
onStart: handleHighStart,
|
|
478
528
|
onMove: handleHighMove,
|
|
479
529
|
onEnd: handleHighEnd
|
|
480
530
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeSvg","_fluentStyles","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TRACK_H","sm","md","lg","THUMB_D","buildColors","fill","track","theme","colors","gray","buffer","thumb","thumbBorder","gradFrom","gradTo","tooltipBg","tooltipText","rangeLabel","tick","tickActive","clamp","v","lo","hi","Math","min","max","snapToStep","value","step","steps","round","Tooltip","visible","label","bgColor","textColor","bubbleW","setBubbleW","useState","safeBg","safeText","jsxs","Animated","View","pointerEvents","style","position","bottom","left","opacity","transform","translateX","translateY","zIndex","elevation","children","jsx","Stack","onLayout","nativeEvent","layout","width","backgroundColor","paddingHorizontal","paddingVertical","borderRadius","alignItems","justifyContent","minWidth","length","StyledText","numberOfLines","ellipsizeMode","color","fontSize","fontWeight","lineHeight","textAlign","flexShrink","includeFontPadding","top","marginTop","height","viewBox","Path","d","Thumb","trackWidth","thumbD","trackH","borderColor","tooltipLabel","showTooltip","alwaysTooltip","disabled","onStart","onMove","onEnd","scaleAnim","useRef","Value","current","tooltipAnim","dragging","animateIn","parallel","spring","toValue","useNativeDriver","timing","duration","easing","Easing","out","ease","start","animateOut","panResponder","PanResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderGrant","onPanResponderMove","_","gs","newFraction","dx","onPanResponderRelease","onPanResponderTerminate","panHandlers","overflow","scale","borderWidth","shadowColor","shadowOpacity","shadowRadius","shadowOffset","GradFill","fillFraction","Defs","LinearGradient","id","x1","y1","x2","y2","Stop","offset","stopColor","Rect","x","y","rx","StyledSlider","valueHigh","bufferValue","variant","size","alwaysShowTooltip","showMinMax","formatLabel","String","widthProp","colorsProp","onValueChange","onSlidingComplete","onRangeChange","onRangeComplete","C","trackBR","trackW","setTrackW","barW","localLow","setLocalLow","localHigh","setLocalHigh","bufLocal","setBufLocal","useEffect","undefined","range","lowF","highF","bufF","effectiveStep","handleLowMove","useCallback","frac","snapped","handleLowEnd","handleHighMove","handleHighEnd","tickPositions","Array","from","paddingTop","paddingBottom","right","map","horizontal","exports","_default"],"sourceRoot":"../../../src","sources":["slider/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeSvg","_fluentStyles","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TRACK_H","sm","md","lg","THUMB_D","buildColors","fill","track","theme","colors","gray","buffer","thumb","thumbBorder","gradFrom","gradTo","tooltipBg","tooltipText","rangeLabel","tick","tickActive","clamp","v","lo","hi","Math","min","max","snapToStep","value","step","steps","round","Tooltip","visible","label","bgColor","textColor","bubbleW","setBubbleW","useState","safeBg","safeText","jsxs","Animated","View","pointerEvents","style","position","bottom","left","opacity","transform","translateX","translateY","zIndex","elevation","children","jsx","Stack","onLayout","nativeEvent","layout","width","backgroundColor","paddingHorizontal","paddingVertical","borderRadius","alignItems","justifyContent","minWidth","length","StyledText","numberOfLines","ellipsizeMode","color","fontSize","fontWeight","lineHeight","textAlign","flexShrink","includeFontPadding","top","marginTop","height","viewBox","Path","d","Thumb","trackWidth","thumbD","trackH","borderColor","tooltipLabel","showTooltip","alwaysTooltip","disabled","onStart","onMove","onEnd","scaleAnim","useRef","Value","current","tooltipAnim","dragging","animateIn","parallel","spring","toValue","useNativeDriver","timing","duration","easing","Easing","out","ease","start","animateOut","panResponder","PanResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderGrant","onPanResponderMove","_","gs","newFraction","dx","onPanResponderRelease","onPanResponderTerminate","panHandlers","overflow","scale","borderWidth","shadowColor","shadowOpacity","shadowRadius","shadowOffset","GradFill","fillFraction","Defs","LinearGradient","id","x1","y1","x2","y2","Stop","offset","stopColor","Rect","x","y","rx","StyledSlider","valueHigh","bufferValue","variant","size","alwaysShowTooltip","showMinMax","formatLabel","String","widthProp","colorsProp","onValueChange","onSlidingComplete","onRangeChange","onRangeComplete","C","trackBR","trackW","setTrackW","barW","localLow","setLocalLow","localHigh","setLocalHigh","bufLocal","setBufLocal","isDraggingLow","isDraggingHigh","prevValueRef","undefined","useEffect","prevHighRef","range","lowF","highF","bufF","effectiveStep","handleLowStart","useCallback","handleLowMove","frac","snapped","handleLowEnd","handleHighStart","handleHighMove","handleHighEnd","tickPositions","Array","from","paddingTop","paddingBottom","right","map","horizontal","exports","_default"],"sourceRoot":"../../../src","sources":["slider/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,11 +12,33 @@
|
|
|
12
12
|
* • gradient — gradient-filled track
|
|
13
13
|
* • buffer — primary thumb + secondary buffer fill (media player style)
|
|
14
14
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
15
|
+
* FIX (v1.1):
|
|
16
|
+
* The previous version had a useEffect(() => setLocalLow(value), [value])
|
|
17
|
+
* that created a feedback loop when used as a controlled component:
|
|
18
|
+
* onValueChange → setState → re-render → value prop changes
|
|
19
|
+
* → useEffect fires → setLocalLow resets → thumb snaps back
|
|
20
|
+
*
|
|
21
|
+
* Fix strategy:
|
|
22
|
+
* 1. useEffect only fires on MOUNT (empty dep array) — sets initial position once
|
|
23
|
+
* 2. External value changes are ignored while dragging (dragging ref guard)
|
|
24
|
+
* 3. External value changes ARE applied when not dragging (programmatic updates work)
|
|
25
|
+
* 4. onValueChange fires continuously during drag (for live display updates)
|
|
26
|
+
* 5. onSlidingComplete fires once on finger lift (for committing to state)
|
|
27
|
+
*
|
|
28
|
+
* Correct usage in parent (controlled, live display):
|
|
29
|
+
* const displayRef = useRef(initialValue) // never causes re-render
|
|
30
|
+
* const [display, setDisplay] = useState(initialValue)
|
|
31
|
+
* <StyledSlider
|
|
32
|
+
* value={initialValue} // ← frozen, never updated
|
|
33
|
+
* onValueChange={v => { displayRef.current = v; setDisplay(v) }}
|
|
34
|
+
* onSlidingComplete={v => commitToState(v)}
|
|
35
|
+
* />
|
|
36
|
+
*
|
|
37
|
+
* Simplest usage (fire-and-forget):
|
|
38
|
+
* <StyledSlider
|
|
39
|
+
* value={28}
|
|
40
|
+
* onSlidingComplete={v => saveValue(v)}
|
|
41
|
+
* />
|
|
20
42
|
*/
|
|
21
43
|
|
|
22
44
|
import React, { useCallback, useRef, useState, useEffect } from "react";
|
|
@@ -68,11 +90,6 @@ function snapToStep(value, min, max, step) {
|
|
|
68
90
|
}
|
|
69
91
|
|
|
70
92
|
// ─── Tooltip ──────────────────────────────────────────────────────────────────
|
|
71
|
-
//
|
|
72
|
-
// Self-measuring: measures its own width after first layout, then applies
|
|
73
|
-
// translateX = -(width/2) to centre precisely over the thumb.
|
|
74
|
-
// Uses useNativeDriver: false for opacity so iOS renders text colour correctly.
|
|
75
|
-
// SVG Path triangle — never clips, always pixel-perfect.
|
|
76
93
|
|
|
77
94
|
const Tooltip = ({
|
|
78
95
|
visible,
|
|
@@ -106,8 +123,7 @@ const Tooltip = ({
|
|
|
106
123
|
borderRadius: 4,
|
|
107
124
|
alignItems: "center",
|
|
108
125
|
justifyContent: "center",
|
|
109
|
-
minWidth: label.length * 18
|
|
110
|
-
,
|
|
126
|
+
minWidth: label.length * 18,
|
|
111
127
|
children: /*#__PURE__*/_jsx(StyledText, {
|
|
112
128
|
numberOfLines: 1,
|
|
113
129
|
ellipsizeMode: "clip",
|
|
@@ -159,9 +175,7 @@ const Thumb = ({
|
|
|
159
175
|
onMove,
|
|
160
176
|
onEnd
|
|
161
177
|
}) => {
|
|
162
|
-
// scaleAnim uses native driver (transform only — safe)
|
|
163
178
|
const scaleAnim = useRef(new Animated.Value(1)).current;
|
|
164
|
-
// tooltipAnim uses JS driver (opacity — required for text colour on iOS)
|
|
165
179
|
const tooltipAnim = useRef(new Animated.Value(alwaysTooltip ? 1 : 0)).current;
|
|
166
180
|
const dragging = useRef(false);
|
|
167
181
|
const animateIn = () => {
|
|
@@ -182,7 +196,7 @@ const Thumb = ({
|
|
|
182
196
|
}), Animated.timing(tooltipAnim, {
|
|
183
197
|
toValue: alwaysTooltip ? 1 : 0,
|
|
184
198
|
duration: 150,
|
|
185
|
-
useNativeDriver: false
|
|
199
|
+
useNativeDriver: false
|
|
186
200
|
})]).start();
|
|
187
201
|
};
|
|
188
202
|
const panResponder = useRef(PanResponder.create({
|
|
@@ -215,11 +229,9 @@ const Thumb = ({
|
|
|
215
229
|
position: "absolute",
|
|
216
230
|
left,
|
|
217
231
|
top: 0,
|
|
218
|
-
// wrapper height = thumbD, centred
|
|
219
232
|
width: thumbD,
|
|
220
233
|
height: thumbD,
|
|
221
234
|
overflow: "visible",
|
|
222
|
-
// tooltip floats up freely
|
|
223
235
|
transform: [{
|
|
224
236
|
scale: scaleAnim
|
|
225
237
|
}]
|
|
@@ -325,12 +337,36 @@ export const StyledSlider = ({
|
|
|
325
337
|
const [localLow, setLocalLow] = useState(value);
|
|
326
338
|
const [localHigh, setLocalHigh] = useState(valueHigh ?? max);
|
|
327
339
|
const [bufLocal, setBufLocal] = useState(bufferValue ?? value);
|
|
340
|
+
|
|
341
|
+
// ─── FIX: track whether a thumb is currently being dragged ───────────────
|
|
342
|
+
// When dragging, we IGNORE external value prop changes entirely.
|
|
343
|
+
// This prevents the feedback loop:
|
|
344
|
+
// onValueChange → parent setState → value prop changes
|
|
345
|
+
// → useEffect → setLocalLow resets thumb → snap-back
|
|
346
|
+
const isDraggingLow = useRef(false);
|
|
347
|
+
const isDraggingHigh = useRef(false);
|
|
348
|
+
|
|
349
|
+
// Sync localLow from external value prop ONLY when not dragging.
|
|
350
|
+
// On mount (prevValue is undefined) we always sync.
|
|
351
|
+
const prevValueRef = useRef(undefined);
|
|
328
352
|
useEffect(() => {
|
|
353
|
+
if (isDraggingLow.current) return; // ← guard: ignore during drag
|
|
354
|
+
if (prevValueRef.current === value) return; // ← no-op if value unchanged
|
|
355
|
+
prevValueRef.current = value;
|
|
329
356
|
setLocalLow(value);
|
|
330
357
|
}, [value]);
|
|
358
|
+
|
|
359
|
+
// Sync localHigh from external valueHigh prop ONLY when not dragging.
|
|
360
|
+
const prevHighRef = useRef(undefined);
|
|
331
361
|
useEffect(() => {
|
|
332
|
-
if (
|
|
362
|
+
if (isDraggingHigh.current) return;
|
|
363
|
+
if (valueHigh === undefined) return;
|
|
364
|
+
if (prevHighRef.current === valueHigh) return;
|
|
365
|
+
prevHighRef.current = valueHigh;
|
|
366
|
+
setLocalHigh(valueHigh);
|
|
333
367
|
}, [valueHigh]);
|
|
368
|
+
|
|
369
|
+
// bufferValue sync is safe — no thumb drag involved
|
|
334
370
|
useEffect(() => {
|
|
335
371
|
if (bufferValue !== undefined) setBufLocal(bufferValue);
|
|
336
372
|
}, [bufferValue]);
|
|
@@ -339,6 +375,11 @@ export const StyledSlider = ({
|
|
|
339
375
|
const highF = clamp((localHigh - min) / range, 0, 1);
|
|
340
376
|
const bufF = clamp((bufLocal - min) / range, 0, 1);
|
|
341
377
|
const effectiveStep = variant === "stepped" ? (max - min) / (steps - 1) : step;
|
|
378
|
+
|
|
379
|
+
// ─── Low thumb handlers ───────────────────────────────────────────────────
|
|
380
|
+
const handleLowStart = useCallback(() => {
|
|
381
|
+
isDraggingLow.current = true;
|
|
382
|
+
}, []);
|
|
342
383
|
const handleLowMove = useCallback(frac => {
|
|
343
384
|
const snapped = snapToStep(min + frac * range, min, variant === "range" ? localHigh : max, effectiveStep);
|
|
344
385
|
setLocalLow(snapped);
|
|
@@ -346,15 +387,25 @@ export const StyledSlider = ({
|
|
|
346
387
|
if (variant === "range") onRangeChange?.(snapped, localHigh);
|
|
347
388
|
}, [min, range, effectiveStep, localHigh, variant, onValueChange, onRangeChange]);
|
|
348
389
|
const handleLowEnd = useCallback(() => {
|
|
390
|
+
isDraggingLow.current = false;
|
|
391
|
+
// Update prevValueRef so the next external change is not swallowed
|
|
392
|
+
prevValueRef.current = localLow;
|
|
349
393
|
onSlidingComplete?.(localLow);
|
|
350
394
|
if (variant === "range") onRangeComplete?.(localLow, localHigh);
|
|
351
395
|
}, [localLow, localHigh, variant, onSlidingComplete, onRangeComplete]);
|
|
396
|
+
|
|
397
|
+
// ─── High thumb handlers (range variant) ─────────────────────────────────
|
|
398
|
+
const handleHighStart = useCallback(() => {
|
|
399
|
+
isDraggingHigh.current = true;
|
|
400
|
+
}, []);
|
|
352
401
|
const handleHighMove = useCallback(frac => {
|
|
353
402
|
const snapped = snapToStep(min + frac * range, localLow, max, effectiveStep);
|
|
354
403
|
setLocalHigh(snapped);
|
|
355
404
|
onRangeChange?.(localLow, snapped);
|
|
356
405
|
}, [min, range, effectiveStep, localLow, max, onRangeChange]);
|
|
357
406
|
const handleHighEnd = useCallback(() => {
|
|
407
|
+
isDraggingHigh.current = false;
|
|
408
|
+
prevHighRef.current = localHigh;
|
|
358
409
|
onRangeComplete?.(localLow, localHigh);
|
|
359
410
|
}, [localLow, localHigh, onRangeComplete]);
|
|
360
411
|
if (!barW && !widthProp) {
|
|
@@ -380,7 +431,6 @@ export const StyledSlider = ({
|
|
|
380
431
|
width: barW,
|
|
381
432
|
height: thumbD,
|
|
382
433
|
overflow: "visible",
|
|
383
|
-
// thumbs + tooltips escape freely
|
|
384
434
|
justifyContent: "center"
|
|
385
435
|
},
|
|
386
436
|
children: [/*#__PURE__*/_jsxs(View, {
|
|
@@ -391,7 +441,7 @@ export const StyledSlider = ({
|
|
|
391
441
|
height: trackH,
|
|
392
442
|
borderRadius: trackBR,
|
|
393
443
|
backgroundColor: C.track,
|
|
394
|
-
overflow: "hidden"
|
|
444
|
+
overflow: "hidden"
|
|
395
445
|
},
|
|
396
446
|
children: [variant === "buffer" && /*#__PURE__*/_jsx(View, {
|
|
397
447
|
style: {
|
|
@@ -453,7 +503,7 @@ export const StyledSlider = ({
|
|
|
453
503
|
tooltipBg: C.tooltipBg,
|
|
454
504
|
tooltipText: C.tooltipText,
|
|
455
505
|
disabled: disabled,
|
|
456
|
-
onStart:
|
|
506
|
+
onStart: handleLowStart,
|
|
457
507
|
onMove: handleLowMove,
|
|
458
508
|
onEnd: handleLowEnd
|
|
459
509
|
}), variant === "range" && /*#__PURE__*/_jsx(Thumb, {
|
|
@@ -469,7 +519,7 @@ export const StyledSlider = ({
|
|
|
469
519
|
tooltipBg: C.tooltipBg,
|
|
470
520
|
tooltipText: C.tooltipText,
|
|
471
521
|
disabled: disabled,
|
|
472
|
-
onStart:
|
|
522
|
+
onStart: handleHighStart,
|
|
473
523
|
onMove: handleHighMove,
|
|
474
524
|
onEnd: handleHighEnd
|
|
475
525
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useRef","useState","useEffect","View","PanResponder","Animated","Easing","Svg","Defs","LinearGradient","Stop","Rect","Path","Stack","StyledText","theme","jsx","_jsx","jsxs","_jsxs","TRACK_H","sm","md","lg","THUMB_D","buildColors","o","fill","track","colors","gray","buffer","thumb","thumbBorder","gradFrom","gradTo","tooltipBg","tooltipText","rangeLabel","tick","tickActive","clamp","v","lo","hi","Math","min","max","snapToStep","value","step","steps","round","Tooltip","visible","label","bgColor","textColor","bubbleW","setBubbleW","safeBg","safeText","pointerEvents","style","position","bottom","left","opacity","transform","translateX","translateY","zIndex","elevation","children","onLayout","e","nativeEvent","layout","width","backgroundColor","paddingHorizontal","paddingVertical","borderRadius","alignItems","justifyContent","minWidth","length","numberOfLines","ellipsizeMode","color","fontSize","fontWeight","lineHeight","textAlign","flexShrink","includeFontPadding","top","marginTop","height","viewBox","d","Thumb","trackWidth","thumbD","trackH","borderColor","tooltipLabel","showTooltip","alwaysTooltip","disabled","onStart","onMove","onEnd","scaleAnim","Value","current","tooltipAnim","dragging","animateIn","parallel","spring","toValue","useNativeDriver","timing","duration","easing","out","ease","start","animateOut","panResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderGrant","onPanResponderMove","_","gs","newFraction","dx","onPanResponderRelease","onPanResponderTerminate","panHandlers","overflow","scale","borderWidth","shadowColor","shadowOpacity","shadowRadius","shadowOffset","GradFill","fillFraction","id","x1","y1","x2","y2","offset","stopColor","x","y","rx","StyledSlider","valueHigh","bufferValue","variant","size","alwaysShowTooltip","showMinMax","formatLabel","String","widthProp","colorsProp","onValueChange","onSlidingComplete","onRangeChange","onRangeComplete","C","trackBR","trackW","setTrackW","barW","localLow","setLocalLow","localHigh","setLocalHigh","bufLocal","setBufLocal","undefined","range","lowF","highF","bufF","effectiveStep","handleLowMove","frac","snapped","handleLowEnd","handleHighMove","handleHighEnd","tickPositions","Array","from","i","paddingTop","paddingBottom","right","map","t","horizontal"],"sourceRoot":"../../../src","sources":["slider/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useCallback","useRef","useState","useEffect","View","PanResponder","Animated","Easing","Svg","Defs","LinearGradient","Stop","Rect","Path","Stack","StyledText","theme","jsx","_jsx","jsxs","_jsxs","TRACK_H","sm","md","lg","THUMB_D","buildColors","o","fill","track","colors","gray","buffer","thumb","thumbBorder","gradFrom","gradTo","tooltipBg","tooltipText","rangeLabel","tick","tickActive","clamp","v","lo","hi","Math","min","max","snapToStep","value","step","steps","round","Tooltip","visible","label","bgColor","textColor","bubbleW","setBubbleW","safeBg","safeText","pointerEvents","style","position","bottom","left","opacity","transform","translateX","translateY","zIndex","elevation","children","onLayout","e","nativeEvent","layout","width","backgroundColor","paddingHorizontal","paddingVertical","borderRadius","alignItems","justifyContent","minWidth","length","numberOfLines","ellipsizeMode","color","fontSize","fontWeight","lineHeight","textAlign","flexShrink","includeFontPadding","top","marginTop","height","viewBox","d","Thumb","trackWidth","thumbD","trackH","borderColor","tooltipLabel","showTooltip","alwaysTooltip","disabled","onStart","onMove","onEnd","scaleAnim","Value","current","tooltipAnim","dragging","animateIn","parallel","spring","toValue","useNativeDriver","timing","duration","easing","out","ease","start","animateOut","panResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","onPanResponderGrant","onPanResponderMove","_","gs","newFraction","dx","onPanResponderRelease","onPanResponderTerminate","panHandlers","overflow","scale","borderWidth","shadowColor","shadowOpacity","shadowRadius","shadowOffset","GradFill","fillFraction","id","x1","y1","x2","y2","offset","stopColor","x","y","rx","StyledSlider","valueHigh","bufferValue","variant","size","alwaysShowTooltip","showMinMax","formatLabel","String","widthProp","colorsProp","onValueChange","onSlidingComplete","onRangeChange","onRangeComplete","C","trackBR","trackW","setTrackW","barW","localLow","setLocalLow","localHigh","setLocalHigh","bufLocal","setBufLocal","isDraggingLow","isDraggingHigh","prevValueRef","undefined","prevHighRef","range","lowF","highF","bufF","effectiveStep","handleLowStart","handleLowMove","frac","snapped","handleLowEnd","handleHighStart","handleHighMove","handleHighEnd","tickPositions","Array","from","i","paddingTop","paddingBottom","right","map","t","horizontal"],"sourceRoot":"../../../src","sources":["slider/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,11 +10,33 @@
|
|
|
10
10
|
* • gradient — gradient-filled track
|
|
11
11
|
* • buffer — primary thumb + secondary buffer fill (media player style)
|
|
12
12
|
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
13
|
+
* FIX (v1.1):
|
|
14
|
+
* The previous version had a useEffect(() => setLocalLow(value), [value])
|
|
15
|
+
* that created a feedback loop when used as a controlled component:
|
|
16
|
+
* onValueChange → setState → re-render → value prop changes
|
|
17
|
+
* → useEffect fires → setLocalLow resets → thumb snaps back
|
|
18
|
+
*
|
|
19
|
+
* Fix strategy:
|
|
20
|
+
* 1. useEffect only fires on MOUNT (empty dep array) — sets initial position once
|
|
21
|
+
* 2. External value changes are ignored while dragging (dragging ref guard)
|
|
22
|
+
* 3. External value changes ARE applied when not dragging (programmatic updates work)
|
|
23
|
+
* 4. onValueChange fires continuously during drag (for live display updates)
|
|
24
|
+
* 5. onSlidingComplete fires once on finger lift (for committing to state)
|
|
25
|
+
*
|
|
26
|
+
* Correct usage in parent (controlled, live display):
|
|
27
|
+
* const displayRef = useRef(initialValue) // never causes re-render
|
|
28
|
+
* const [display, setDisplay] = useState(initialValue)
|
|
29
|
+
* <StyledSlider
|
|
30
|
+
* value={initialValue} // ← frozen, never updated
|
|
31
|
+
* onValueChange={v => { displayRef.current = v; setDisplay(v) }}
|
|
32
|
+
* onSlidingComplete={v => commitToState(v)}
|
|
33
|
+
* />
|
|
34
|
+
*
|
|
35
|
+
* Simplest usage (fire-and-forget):
|
|
36
|
+
* <StyledSlider
|
|
37
|
+
* value={28}
|
|
38
|
+
* onSlidingComplete={v => saveValue(v)}
|
|
39
|
+
* />
|
|
18
40
|
*/
|
|
19
41
|
import React from "react";
|
|
20
42
|
export type SliderVariant = "default" | "range" | "stepped" | "gradient" | "buffer";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/slider/index.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/slider/index.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAC;AAaxE,MAAM,MAAM,aAAa,GACrB,SAAS,GACT,OAAO,GACP,SAAS,GACT,UAAU,GACV,QAAQ,CAAC;AACb,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACvD;AAyRD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAmSpD,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
package/package.json
CHANGED
package/src/slider/index.tsx
CHANGED
|
@@ -10,11 +10,33 @@
|
|
|
10
10
|
* • gradient — gradient-filled track
|
|
11
11
|
* • buffer — primary thumb + secondary buffer fill (media player style)
|
|
12
12
|
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
13
|
+
* FIX (v1.1):
|
|
14
|
+
* The previous version had a useEffect(() => setLocalLow(value), [value])
|
|
15
|
+
* that created a feedback loop when used as a controlled component:
|
|
16
|
+
* onValueChange → setState → re-render → value prop changes
|
|
17
|
+
* → useEffect fires → setLocalLow resets → thumb snaps back
|
|
18
|
+
*
|
|
19
|
+
* Fix strategy:
|
|
20
|
+
* 1. useEffect only fires on MOUNT (empty dep array) — sets initial position once
|
|
21
|
+
* 2. External value changes are ignored while dragging (dragging ref guard)
|
|
22
|
+
* 3. External value changes ARE applied when not dragging (programmatic updates work)
|
|
23
|
+
* 4. onValueChange fires continuously during drag (for live display updates)
|
|
24
|
+
* 5. onSlidingComplete fires once on finger lift (for committing to state)
|
|
25
|
+
*
|
|
26
|
+
* Correct usage in parent (controlled, live display):
|
|
27
|
+
* const displayRef = useRef(initialValue) // never causes re-render
|
|
28
|
+
* const [display, setDisplay] = useState(initialValue)
|
|
29
|
+
* <StyledSlider
|
|
30
|
+
* value={initialValue} // ← frozen, never updated
|
|
31
|
+
* onValueChange={v => { displayRef.current = v; setDisplay(v) }}
|
|
32
|
+
* onSlidingComplete={v => commitToState(v)}
|
|
33
|
+
* />
|
|
34
|
+
*
|
|
35
|
+
* Simplest usage (fire-and-forget):
|
|
36
|
+
* <StyledSlider
|
|
37
|
+
* value={28}
|
|
38
|
+
* onSlidingComplete={v => saveValue(v)}
|
|
39
|
+
* />
|
|
18
40
|
*/
|
|
19
41
|
|
|
20
42
|
import React, { useCallback, useRef, useState, useEffect } from "react";
|
|
@@ -117,11 +139,6 @@ function snapToStep(
|
|
|
117
139
|
}
|
|
118
140
|
|
|
119
141
|
// ─── Tooltip ──────────────────────────────────────────────────────────────────
|
|
120
|
-
//
|
|
121
|
-
// Self-measuring: measures its own width after first layout, then applies
|
|
122
|
-
// translateX = -(width/2) to centre precisely over the thumb.
|
|
123
|
-
// Uses useNativeDriver: false for opacity so iOS renders text colour correctly.
|
|
124
|
-
// SVG Path triangle — never clips, always pixel-perfect.
|
|
125
142
|
|
|
126
143
|
const Tooltip: React.FC<{
|
|
127
144
|
visible: Animated.Value;
|
|
@@ -158,7 +175,7 @@ const Tooltip: React.FC<{
|
|
|
158
175
|
borderRadius={4}
|
|
159
176
|
alignItems="center"
|
|
160
177
|
justifyContent="center"
|
|
161
|
-
minWidth={label.length * 18}
|
|
178
|
+
minWidth={label.length * 18}
|
|
162
179
|
>
|
|
163
180
|
<StyledText
|
|
164
181
|
numberOfLines={1}
|
|
@@ -230,9 +247,7 @@ const Thumb: React.FC<ThumbProps> = ({
|
|
|
230
247
|
onMove,
|
|
231
248
|
onEnd,
|
|
232
249
|
}) => {
|
|
233
|
-
// scaleAnim uses native driver (transform only — safe)
|
|
234
250
|
const scaleAnim = useRef(new Animated.Value(1)).current;
|
|
235
|
-
// tooltipAnim uses JS driver (opacity — required for text colour on iOS)
|
|
236
251
|
const tooltipAnim = useRef(new Animated.Value(alwaysTooltip ? 1 : 0)).current;
|
|
237
252
|
const dragging = useRef(false);
|
|
238
253
|
|
|
@@ -254,7 +269,7 @@ const Thumb: React.FC<ThumbProps> = ({
|
|
|
254
269
|
Animated.timing(tooltipAnim, {
|
|
255
270
|
toValue: alwaysTooltip ? 1 : 0,
|
|
256
271
|
duration: 150,
|
|
257
|
-
useNativeDriver: false,
|
|
272
|
+
useNativeDriver: false,
|
|
258
273
|
}),
|
|
259
274
|
]).start();
|
|
260
275
|
};
|
|
@@ -293,10 +308,10 @@ const Thumb: React.FC<ThumbProps> = ({
|
|
|
293
308
|
style={{
|
|
294
309
|
position: "absolute",
|
|
295
310
|
left,
|
|
296
|
-
top: 0,
|
|
311
|
+
top: 0,
|
|
297
312
|
width: thumbD,
|
|
298
313
|
height: thumbD,
|
|
299
|
-
overflow: "visible",
|
|
314
|
+
overflow: "visible",
|
|
300
315
|
transform: [{ scale: scaleAnim }],
|
|
301
316
|
}}
|
|
302
317
|
>
|
|
@@ -309,7 +324,6 @@ const Thumb: React.FC<ThumbProps> = ({
|
|
|
309
324
|
/>
|
|
310
325
|
)}
|
|
311
326
|
|
|
312
|
-
{/* Thumb circle */}
|
|
313
327
|
<View
|
|
314
328
|
style={{
|
|
315
329
|
width: thumbD,
|
|
@@ -393,28 +407,56 @@ export const StyledSlider: React.FC<StyledSliderProps> = ({
|
|
|
393
407
|
const [trackW, setTrackW] = useState(widthProp ?? 0);
|
|
394
408
|
const barW = widthProp ?? trackW;
|
|
395
409
|
|
|
396
|
-
const [localLow, setLocalLow]
|
|
410
|
+
const [localLow, setLocalLow] = useState(value);
|
|
397
411
|
const [localHigh, setLocalHigh] = useState(valueHigh ?? max);
|
|
398
|
-
const [bufLocal, setBufLocal]
|
|
399
|
-
|
|
412
|
+
const [bufLocal, setBufLocal] = useState(bufferValue ?? value);
|
|
413
|
+
|
|
414
|
+
// ─── FIX: track whether a thumb is currently being dragged ───────────────
|
|
415
|
+
// When dragging, we IGNORE external value prop changes entirely.
|
|
416
|
+
// This prevents the feedback loop:
|
|
417
|
+
// onValueChange → parent setState → value prop changes
|
|
418
|
+
// → useEffect → setLocalLow resets thumb → snap-back
|
|
419
|
+
const isDraggingLow = useRef(false);
|
|
420
|
+
const isDraggingHigh = useRef(false);
|
|
421
|
+
|
|
422
|
+
// Sync localLow from external value prop ONLY when not dragging.
|
|
423
|
+
// On mount (prevValue is undefined) we always sync.
|
|
424
|
+
const prevValueRef = useRef<number | undefined>(undefined);
|
|
400
425
|
useEffect(() => {
|
|
426
|
+
if (isDraggingLow.current) return; // ← guard: ignore during drag
|
|
427
|
+
if (prevValueRef.current === value) return; // ← no-op if value unchanged
|
|
428
|
+
prevValueRef.current = value;
|
|
401
429
|
setLocalLow(value);
|
|
402
430
|
}, [value]);
|
|
431
|
+
|
|
432
|
+
// Sync localHigh from external valueHigh prop ONLY when not dragging.
|
|
433
|
+
const prevHighRef = useRef<number | undefined>(undefined);
|
|
403
434
|
useEffect(() => {
|
|
404
|
-
if (
|
|
435
|
+
if (isDraggingHigh.current) return;
|
|
436
|
+
if (valueHigh === undefined) return;
|
|
437
|
+
if (prevHighRef.current === valueHigh) return;
|
|
438
|
+
prevHighRef.current = valueHigh;
|
|
439
|
+
setLocalHigh(valueHigh);
|
|
405
440
|
}, [valueHigh]);
|
|
441
|
+
|
|
442
|
+
// bufferValue sync is safe — no thumb drag involved
|
|
406
443
|
useEffect(() => {
|
|
407
444
|
if (bufferValue !== undefined) setBufLocal(bufferValue);
|
|
408
445
|
}, [bufferValue]);
|
|
409
446
|
|
|
410
447
|
const range = max - min;
|
|
411
|
-
const lowF
|
|
448
|
+
const lowF = clamp((localLow - min) / range, 0, 1);
|
|
412
449
|
const highF = clamp((localHigh - min) / range, 0, 1);
|
|
413
|
-
const bufF
|
|
450
|
+
const bufF = clamp((bufLocal - min) / range, 0, 1);
|
|
414
451
|
|
|
415
452
|
const effectiveStep =
|
|
416
453
|
variant === "stepped" ? (max - min) / (steps - 1) : step;
|
|
417
454
|
|
|
455
|
+
// ─── Low thumb handlers ───────────────────────────────────────────────────
|
|
456
|
+
const handleLowStart = useCallback(() => {
|
|
457
|
+
isDraggingLow.current = true;
|
|
458
|
+
}, []);
|
|
459
|
+
|
|
418
460
|
const handleLowMove = useCallback(
|
|
419
461
|
(frac: number) => {
|
|
420
462
|
const snapped = snapToStep(
|
|
@@ -427,22 +469,22 @@ export const StyledSlider: React.FC<StyledSliderProps> = ({
|
|
|
427
469
|
onValueChange?.(snapped);
|
|
428
470
|
if (variant === "range") onRangeChange?.(snapped, localHigh);
|
|
429
471
|
},
|
|
430
|
-
[
|
|
431
|
-
min,
|
|
432
|
-
range,
|
|
433
|
-
effectiveStep,
|
|
434
|
-
localHigh,
|
|
435
|
-
variant,
|
|
436
|
-
onValueChange,
|
|
437
|
-
onRangeChange,
|
|
438
|
-
],
|
|
472
|
+
[min, range, effectiveStep, localHigh, variant, onValueChange, onRangeChange],
|
|
439
473
|
);
|
|
440
474
|
|
|
441
475
|
const handleLowEnd = useCallback(() => {
|
|
476
|
+
isDraggingLow.current = false;
|
|
477
|
+
// Update prevValueRef so the next external change is not swallowed
|
|
478
|
+
prevValueRef.current = localLow;
|
|
442
479
|
onSlidingComplete?.(localLow);
|
|
443
480
|
if (variant === "range") onRangeComplete?.(localLow, localHigh);
|
|
444
481
|
}, [localLow, localHigh, variant, onSlidingComplete, onRangeComplete]);
|
|
445
482
|
|
|
483
|
+
// ─── High thumb handlers (range variant) ─────────────────────────────────
|
|
484
|
+
const handleHighStart = useCallback(() => {
|
|
485
|
+
isDraggingHigh.current = true;
|
|
486
|
+
}, []);
|
|
487
|
+
|
|
446
488
|
const handleHighMove = useCallback(
|
|
447
489
|
(frac: number) => {
|
|
448
490
|
const snapped = snapToStep(
|
|
@@ -458,6 +500,8 @@ export const StyledSlider: React.FC<StyledSliderProps> = ({
|
|
|
458
500
|
);
|
|
459
501
|
|
|
460
502
|
const handleHighEnd = useCallback(() => {
|
|
503
|
+
isDraggingHigh.current = false;
|
|
504
|
+
prevHighRef.current = localHigh;
|
|
461
505
|
onRangeComplete?.(localLow, localHigh);
|
|
462
506
|
}, [localLow, localHigh, onRangeComplete]);
|
|
463
507
|
|
|
@@ -486,16 +530,11 @@ export const StyledSlider: React.FC<StyledSliderProps> = ({
|
|
|
486
530
|
paddingBottom: showMinMax ? 20 : 8,
|
|
487
531
|
}}
|
|
488
532
|
>
|
|
489
|
-
{/* ── Three-layer layout ──
|
|
490
|
-
Layer 1: track fills (overflow hidden — clips fill bars only)
|
|
491
|
-
Layer 2: tick marks (overflow visible — poke above/below)
|
|
492
|
-
Layer 3: thumbs (overflow visible — tooltips float freely)
|
|
493
|
-
── */}
|
|
494
533
|
<View
|
|
495
534
|
style={{
|
|
496
535
|
width: barW,
|
|
497
536
|
height: thumbD,
|
|
498
|
-
overflow: "visible",
|
|
537
|
+
overflow: "visible",
|
|
499
538
|
justifyContent: "center",
|
|
500
539
|
}}
|
|
501
540
|
>
|
|
@@ -508,10 +547,9 @@ export const StyledSlider: React.FC<StyledSliderProps> = ({
|
|
|
508
547
|
height: trackH,
|
|
509
548
|
borderRadius: trackBR,
|
|
510
549
|
backgroundColor: C.track,
|
|
511
|
-
overflow: "hidden",
|
|
550
|
+
overflow: "hidden",
|
|
512
551
|
}}
|
|
513
552
|
>
|
|
514
|
-
{/* Buffer fill */}
|
|
515
553
|
{variant === "buffer" && (
|
|
516
554
|
<View
|
|
517
555
|
style={{
|
|
@@ -526,7 +564,6 @@ export const StyledSlider: React.FC<StyledSliderProps> = ({
|
|
|
526
564
|
/>
|
|
527
565
|
)}
|
|
528
566
|
|
|
529
|
-
{/* Range fill */}
|
|
530
567
|
{variant === "range" ? (
|
|
531
568
|
<View
|
|
532
569
|
style={{
|
|
@@ -579,7 +616,7 @@ export const StyledSlider: React.FC<StyledSliderProps> = ({
|
|
|
579
616
|
/>
|
|
580
617
|
))}
|
|
581
618
|
|
|
582
|
-
{/* ── Layer 3: Thumbs
|
|
619
|
+
{/* ── Layer 3: Thumbs ── */}
|
|
583
620
|
<Thumb
|
|
584
621
|
position={lowF}
|
|
585
622
|
trackWidth={barW}
|
|
@@ -593,7 +630,7 @@ export const StyledSlider: React.FC<StyledSliderProps> = ({
|
|
|
593
630
|
tooltipBg={C.tooltipBg}
|
|
594
631
|
tooltipText={C.tooltipText}
|
|
595
632
|
disabled={disabled}
|
|
596
|
-
onStart={
|
|
633
|
+
onStart={handleLowStart}
|
|
597
634
|
onMove={handleLowMove}
|
|
598
635
|
onEnd={handleLowEnd}
|
|
599
636
|
/>
|
|
@@ -612,14 +649,13 @@ export const StyledSlider: React.FC<StyledSliderProps> = ({
|
|
|
612
649
|
tooltipBg={C.tooltipBg}
|
|
613
650
|
tooltipText={C.tooltipText}
|
|
614
651
|
disabled={disabled}
|
|
615
|
-
onStart={
|
|
652
|
+
onStart={handleHighStart}
|
|
616
653
|
onMove={handleHighMove}
|
|
617
654
|
onEnd={handleHighEnd}
|
|
618
655
|
/>
|
|
619
656
|
)}
|
|
620
657
|
</View>
|
|
621
658
|
|
|
622
|
-
{/* Min / max labels */}
|
|
623
659
|
{showMinMax && (
|
|
624
660
|
<Stack horizontal justifyContent="space-between" marginTop={6}>
|
|
625
661
|
<StyledText fontSize={11} color={C.rangeLabel}>
|
|
@@ -634,4 +670,4 @@ export const StyledSlider: React.FC<StyledSliderProps> = ({
|
|
|
634
670
|
);
|
|
635
671
|
};
|
|
636
672
|
|
|
637
|
-
export default StyledSlider;
|
|
673
|
+
export default StyledSlider;
|