@tamagui/slider 1.111.8 → 1.111.9

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.
@@ -1,521 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { composeRefs, useComposedRefs } from "@tamagui/compose-refs";
3
- import { isClient, isWeb } from "@tamagui/constants";
4
- import { createShallowSetState, getTokens, getVariableValue, styled } from "@tamagui/core";
5
- import { getSize } from "@tamagui/get-token";
6
- import { withStaticProperties } from "@tamagui/helpers";
7
- import { clamp, composeEventHandlers } from "@tamagui/helpers";
8
- import { ThemeableStack } from "@tamagui/stacks";
9
- import { useControllableState } from "@tamagui/use-controllable-state";
10
- import { useDirection } from "@tamagui/use-direction";
11
- import * as React from "react";
12
- import { ARROW_KEYS, BACK_KEYS, PAGE_KEYS, SLIDER_NAME, SliderOrientationProvider, SliderProvider, useSliderContext, useSliderOrientationContext } from "./constants.native.mjs";
13
- import { convertValueToPercentage, getClosestValueIndex, getDecimalCount, getLabel, getNextSortedValues, getThumbInBoundsOffset, hasMinStepsBetweenValues, linearScale, roundValue } from "./helpers.native.mjs";
14
- import { SliderFrame, SliderImpl } from "./SliderImpl.native.mjs";
15
- var activeSliderMeasureListeners = /* @__PURE__ */new Set();
16
- if (isWeb && isClient && !process.env.TAMAGUI_DISABLE_SLIDER_INTERVAL) {
17
- var _setInterval;
18
- (_setInterval = setInterval) === null || _setInterval === void 0 || _setInterval(function () {
19
- activeSliderMeasureListeners.forEach(function (cb) {
20
- return cb();
21
- });
22
- },
23
- // really doesn't need to be super often
24
- 1e3);
25
- }
26
- var SliderHorizontal = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
27
- var {
28
- min,
29
- max,
30
- dir,
31
- onSlideStart,
32
- onSlideMove,
33
- onStepKeyDown,
34
- onSlideEnd,
35
- ...sliderProps
36
- } = props,
37
- direction = useDirection(dir),
38
- isDirectionLTR = direction === "ltr",
39
- sliderRef = React.useRef(null),
40
- [state, setState_] = React.useState(function () {
41
- return {
42
- size: 0,
43
- offset: 0
44
- };
45
- }),
46
- setState = createShallowSetState(setState_);
47
- function getValueFromPointer(pointerPosition) {
48
- var input = [0, state.size],
49
- output = isDirectionLTR ? [min, max] : [max, min],
50
- value = linearScale(input, output);
51
- return value(pointerPosition);
52
- }
53
- var measure = function () {
54
- var _sliderRef_current;
55
- (_sliderRef_current = sliderRef.current) === null || _sliderRef_current === void 0 || _sliderRef_current.measure(function (_x, _y, width, _height, pageX, _pageY) {
56
- setState({
57
- size: width,
58
- offset: pageX
59
- });
60
- });
61
- };
62
- return isClient && (useOnDebouncedWindowResize(measure), React.useEffect(function () {
63
- var node = sliderRef.current;
64
- if (node) {
65
- var measureTm,
66
- debouncedMeasure = function () {
67
- clearTimeout(measureTm), measureTm = setTimeout(function () {
68
- measure();
69
- }, 200);
70
- },
71
- io = new IntersectionObserver(function (entries) {
72
- debouncedMeasure(), entries?.[0].isIntersecting ? activeSliderMeasureListeners.add(debouncedMeasure) : activeSliderMeasureListeners.delete(debouncedMeasure);
73
- }, {
74
- root: null,
75
- // Use the viewport as the container.
76
- rootMargin: "0px",
77
- threshold: [0, 0.5, 1]
78
- });
79
- return io.observe(node), function () {
80
- activeSliderMeasureListeners.delete(debouncedMeasure), io.disconnect();
81
- };
82
- }
83
- }, [])), /* @__PURE__ */_jsx(SliderOrientationProvider, {
84
- scope: props.__scopeSlider,
85
- startEdge: isDirectionLTR ? "left" : "right",
86
- endEdge: isDirectionLTR ? "right" : "left",
87
- direction: isDirectionLTR ? 1 : -1,
88
- sizeProp: "width",
89
- size: state.size,
90
- children: /* @__PURE__ */_jsx(SliderImpl, {
91
- ref: composeRefs(forwardedRef, sliderRef),
92
- dir: direction,
93
- ...sliderProps,
94
- orientation: "horizontal",
95
- onLayout: measure,
96
- onSlideStart: function (event, target) {
97
- var value = getValueFromPointer(event.nativeEvent.locationX);
98
- value && onSlideStart?.(value, target, event);
99
- },
100
- onSlideMove: function (event) {
101
- var value = getValueFromPointer(event.nativeEvent.pageX - state.offset);
102
- value && onSlideMove?.(value, event);
103
- },
104
- onSlideEnd: function (event) {
105
- var value = getValueFromPointer(event.nativeEvent.pageX - state.offset);
106
- value && onSlideEnd?.(event, value);
107
- },
108
- onStepKeyDown: function (event) {
109
- var isBackKey = BACK_KEYS[direction].includes(event.key);
110
- onStepKeyDown?.({
111
- event,
112
- direction: isBackKey ? -1 : 1
113
- });
114
- }
115
- })
116
- });
117
- });
118
- function useOnDebouncedWindowResize(callback) {
119
- var amt = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 200;
120
- React.useEffect(function () {
121
- var last,
122
- onResize = function () {
123
- clearTimeout(last), last = setTimeout(callback, amt);
124
- };
125
- return window.addEventListener("resize", onResize), function () {
126
- clearTimeout(last), window.removeEventListener("resize", onResize);
127
- };
128
- }, []);
129
- }
130
- var SliderVertical = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
131
- var {
132
- min,
133
- max,
134
- onSlideStart,
135
- onSlideMove,
136
- onStepKeyDown,
137
- onSlideEnd,
138
- ...sliderProps
139
- } = props,
140
- [state, setState_] = React.useState(function () {
141
- return {
142
- size: 0,
143
- offset: 0
144
- };
145
- }),
146
- setState = createShallowSetState(setState_),
147
- sliderRef = React.useRef(null);
148
- function getValueFromPointer(pointerPosition) {
149
- var input = [0, state.size],
150
- output = [max, min],
151
- value = linearScale(input, output);
152
- return value(pointerPosition);
153
- }
154
- var measure = function () {
155
- var _sliderRef_current;
156
- (_sliderRef_current = sliderRef.current) === null || _sliderRef_current === void 0 || _sliderRef_current.measure(function (_x, _y, _width, height, _pageX, pageY) {
157
- setState({
158
- size: height,
159
- offset: pageY
160
- });
161
- });
162
- };
163
- return isClient && useOnDebouncedWindowResize(measure), /* @__PURE__ */_jsx(SliderOrientationProvider, {
164
- scope: props.__scopeSlider,
165
- startEdge: "bottom",
166
- endEdge: "top",
167
- sizeProp: "height",
168
- size: state.size,
169
- direction: 1,
170
- children: /* @__PURE__ */_jsx(SliderImpl, {
171
- ref: composeRefs(forwardedRef, sliderRef),
172
- ...sliderProps,
173
- orientation: "vertical",
174
- onLayout: measure,
175
- onSlideStart: function (event, target) {
176
- var value = getValueFromPointer(event.nativeEvent.locationY);
177
- value && onSlideStart?.(value, target, event);
178
- },
179
- onSlideMove: function (event) {
180
- var value = getValueFromPointer(event.nativeEvent.pageY - state.offset);
181
- value && onSlideMove?.(value, event);
182
- },
183
- onSlideEnd: function (event) {
184
- var value = getValueFromPointer(event.nativeEvent.pageY - state.offset);
185
- onSlideEnd?.(event, value);
186
- },
187
- onStepKeyDown: function (event) {
188
- var isBackKey = BACK_KEYS.ltr.includes(event.key);
189
- onStepKeyDown?.({
190
- event,
191
- direction: isBackKey ? -1 : 1
192
- });
193
- }
194
- })
195
- });
196
- }),
197
- TRACK_NAME = "SliderTrack",
198
- SliderTrackFrame = styled(SliderFrame, {
199
- name: "SliderTrack",
200
- variants: {
201
- unstyled: {
202
- false: {
203
- height: "100%",
204
- width: "100%",
205
- backgroundColor: "$background",
206
- position: "relative",
207
- borderRadius: 1e5,
208
- overflow: "hidden"
209
- }
210
- }
211
- },
212
- defaultVariants: {
213
- unstyled: process.env.TAMAGUI_HEADLESS === "1"
214
- }
215
- }),
216
- SliderTrack = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
217
- var {
218
- __scopeSlider,
219
- ...trackProps
220
- } = props,
221
- context = useSliderContext(TRACK_NAME, __scopeSlider);
222
- return /* @__PURE__ */_jsx(SliderTrackFrame, {
223
- "data-disabled": context.disabled ? "" : void 0,
224
- "data-orientation": context.orientation,
225
- orientation: context.orientation,
226
- size: context.size,
227
- ...trackProps,
228
- ref: forwardedRef
229
- });
230
- });
231
- SliderTrack.displayName = TRACK_NAME;
232
- var RANGE_NAME = "SliderTrackActive",
233
- SliderTrackActiveFrame = styled(SliderFrame, {
234
- name: "SliderTrackActive",
235
- backgroundColor: "$background",
236
- position: "absolute"
237
- }),
238
- SliderTrackActive = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
239
- var {
240
- __scopeSlider,
241
- ...rangeProps
242
- } = props,
243
- context = useSliderContext(RANGE_NAME, __scopeSlider),
244
- orientation = useSliderOrientationContext(RANGE_NAME, __scopeSlider),
245
- ref = React.useRef(null),
246
- composedRefs = useComposedRefs(forwardedRef, ref),
247
- valuesCount = context.values.length,
248
- percentages = context.values.map(function (value) {
249
- return convertValueToPercentage(value, context.min, context.max);
250
- }),
251
- offsetStart = valuesCount > 1 ? Math.min(...percentages) : 0,
252
- offsetEnd = 100 - Math.max(...percentages);
253
- return /* @__PURE__ */_jsx(SliderTrackActiveFrame, {
254
- orientation: context.orientation,
255
- "data-orientation": context.orientation,
256
- "data-disabled": context.disabled ? "" : void 0,
257
- size: context.size,
258
- animateOnly: ["left", "top", "right", "bottom"],
259
- ...rangeProps,
260
- ref: composedRefs,
261
- [orientation.startEdge]: `${offsetStart}%`,
262
- [orientation.endEdge]: `${offsetEnd}%`,
263
- ...(orientation.sizeProp === "width" ? {
264
- height: "100%"
265
- } : {
266
- left: 0,
267
- right: 0
268
- })
269
- });
270
- });
271
- SliderTrackActive.displayName = RANGE_NAME;
272
- var THUMB_NAME = "SliderThumb",
273
- getThumbSize = function (val) {
274
- var tokens = getTokens(),
275
- size = typeof val == "number" ? val : getSize(tokens.size[val], {
276
- shift: -1
277
- });
278
- return {
279
- width: size,
280
- height: size,
281
- minWidth: size,
282
- minHeight: size
283
- };
284
- },
285
- SliderThumbFrame = styled(ThemeableStack, {
286
- name: "SliderThumb",
287
- variants: {
288
- size: {
289
- "...size": getThumbSize
290
- },
291
- unstyled: {
292
- false: {
293
- position: "absolute",
294
- bordered: 2,
295
- borderWidth: 2,
296
- backgrounded: !0,
297
- pressTheme: isWeb,
298
- focusTheme: isWeb,
299
- hoverTheme: isWeb
300
- }
301
- }
302
- },
303
- defaultVariants: {
304
- unstyled: process.env.TAMAGUI_HEADLESS === "1"
305
- }
306
- }),
307
- SliderThumb = /* @__PURE__ */React.memo(SliderThumbFrame.styleable(function (props, forwardedRef) {
308
- var {
309
- __scopeSlider,
310
- index,
311
- size: sizeProp,
312
- ...thumbProps
313
- } = props,
314
- context = useSliderContext(THUMB_NAME, __scopeSlider),
315
- orientation = useSliderOrientationContext(THUMB_NAME, __scopeSlider),
316
- [thumb, setThumb] = React.useState(null),
317
- composedRefs = useComposedRefs(forwardedRef, setThumb),
318
- value = context.values[index],
319
- percent = value === void 0 ? 0 : convertValueToPercentage(value, context.min, context.max),
320
- label = getLabel(index, context.values.length),
321
- _ref,
322
- sizeIn = (_ref = sizeProp ?? context.size) !== null && _ref !== void 0 ? _ref : "$true",
323
- [size, setSize] = React.useState(function () {
324
- var estimatedSize = getVariableValue(getThumbSize(sizeIn).width);
325
- return estimatedSize;
326
- }),
327
- thumbInBoundsOffset = size ? getThumbInBoundsOffset(size, percent, orientation.direction) : 0;
328
- React.useEffect(function () {
329
- if (thumb) return context.thumbs.set(thumb, index), function () {
330
- context.thumbs.delete(thumb);
331
- };
332
- }, [thumb, context.thumbs, index]);
333
- var positionalStyles = context.orientation === "horizontal" ? {
334
- x: thumbInBoundsOffset - size / 2,
335
- y: -size / 2,
336
- top: "50%",
337
- ...(size === 0 && {
338
- top: "auto",
339
- bottom: "auto"
340
- })
341
- } : {
342
- x: -size / 2,
343
- y: size / 2,
344
- left: "50%",
345
- ...(size === 0 && {
346
- left: "auto",
347
- right: "auto"
348
- })
349
- };
350
- return /* @__PURE__ */_jsx(SliderThumbFrame, {
351
- ref: composedRefs,
352
- role: "slider",
353
- "aria-label": props["aria-label"] || label,
354
- "aria-valuemin": context.min,
355
- "aria-valuenow": value,
356
- "aria-valuemax": context.max,
357
- "aria-orientation": context.orientation,
358
- "data-orientation": context.orientation,
359
- "data-disabled": context.disabled ? "" : void 0,
360
- tabIndex: context.disabled ? void 0 : 0,
361
- animateOnly: ["transform", "left", "top", "right", "bottom"],
362
- ...positionalStyles,
363
- [orientation.startEdge]: `${percent}%`,
364
- size: sizeIn,
365
- ...thumbProps,
366
- onLayout: function (e) {
367
- setSize(e.nativeEvent.layout[orientation.sizeProp]);
368
- },
369
- /**
370
- * There will be no value on initial render while we work out the index so we hide thumbs
371
- * without a value, otherwise SSR will render them in the wrong position before they
372
- * snap into the correct position during hydration which would be visually jarring for
373
- * slower connections.
374
- */
375
- // style={value === undefined ? { display: 'none' } : props.style}
376
- onFocus: composeEventHandlers(props.onFocus, function () {
377
- context.valueIndexToChangeRef.current = index;
378
- })
379
- });
380
- })),
381
- SliderComponent = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
382
- var {
383
- name,
384
- min = 0,
385
- max = 100,
386
- step = 1,
387
- orientation = "horizontal",
388
- disabled = !1,
389
- minStepsBetweenThumbs = 0,
390
- defaultValue = [min],
391
- value,
392
- onValueChange = function () {},
393
- size: sizeProp,
394
- onSlideEnd,
395
- onSlideMove,
396
- onSlideStart,
397
- ...sliderProps
398
- } = props,
399
- sliderRef = React.useRef(null),
400
- composedRefs = useComposedRefs(sliderRef, forwardedRef),
401
- thumbRefs = React.useRef(/* @__PURE__ */new Map()),
402
- valueIndexToChangeRef = React.useRef(0),
403
- isHorizontal = orientation === "horizontal",
404
- [values = [], setValues] = useControllableState({
405
- prop: value,
406
- defaultProp: defaultValue,
407
- transition: !0,
408
- onChange: function (value2) {
409
- updateThumbFocus(valueIndexToChangeRef.current), onValueChange(value2);
410
- }
411
- });
412
- isWeb && React.useEffect(function () {
413
- var node = sliderRef.current;
414
- if (node) {
415
- var preventDefault = function (e) {
416
- e.preventDefault();
417
- };
418
- return node.addEventListener("touchstart", preventDefault), function () {
419
- node.removeEventListener("touchstart", preventDefault);
420
- };
421
- }
422
- }, []);
423
- function updateThumbFocus(focusIndex) {
424
- if (isWeb) {
425
- var _iteratorNormalCompletion = !0,
426
- _didIteratorError = !1,
427
- _iteratorError = void 0;
428
- try {
429
- for (var _iterator = thumbRefs.current.entries()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
430
- var [node, index] = _step.value;
431
- if (index === focusIndex) {
432
- node.focus();
433
- return;
434
- }
435
- }
436
- } catch (err) {
437
- _didIteratorError = !0, _iteratorError = err;
438
- } finally {
439
- try {
440
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
441
- } finally {
442
- if (_didIteratorError) throw _iteratorError;
443
- }
444
- }
445
- }
446
- }
447
- function handleSlideMove(value2, event) {
448
- updateValues(value2, valueIndexToChangeRef.current), onSlideMove?.(event, value2);
449
- }
450
- function updateValues(value2, atIndex) {
451
- var decimalCount = getDecimalCount(step),
452
- snapToStep = roundValue(Math.round((value2 - min) / step) * step + min, decimalCount),
453
- nextValue = clamp(snapToStep, [min, max]);
454
- setValues(function () {
455
- var prevValues = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : [],
456
- nextValues = getNextSortedValues(prevValues, nextValue, atIndex);
457
- return hasMinStepsBetweenValues(nextValues, minStepsBetweenThumbs * step) ? (valueIndexToChangeRef.current = nextValues.indexOf(nextValue), String(nextValues) === String(prevValues) ? prevValues : nextValues) : prevValues;
458
- });
459
- }
460
- var SliderOriented = isHorizontal ? SliderHorizontal : SliderVertical;
461
- return /* @__PURE__ */_jsx(SliderProvider, {
462
- scope: props.__scopeSlider,
463
- disabled,
464
- min,
465
- max,
466
- valueIndexToChangeRef,
467
- thumbs: thumbRefs.current,
468
- values,
469
- orientation,
470
- size: sizeProp,
471
- children: /* @__PURE__ */_jsx(SliderOriented, {
472
- "aria-disabled": disabled,
473
- "data-disabled": disabled ? "" : void 0,
474
- ...sliderProps,
475
- ref: composedRefs,
476
- min,
477
- max,
478
- onSlideEnd,
479
- onSlideStart: disabled ? void 0 : function (value2, target, event) {
480
- if (target !== "thumb") {
481
- var closestIndex = getClosestValueIndex(values, value2);
482
- updateValues(value2, closestIndex);
483
- }
484
- onSlideStart?.(event, value2, target);
485
- },
486
- onSlideMove: disabled ? void 0 : handleSlideMove,
487
- onHomeKeyDown: function () {
488
- return !disabled && updateValues(min, 0);
489
- },
490
- onEndKeyDown: function () {
491
- return !disabled && updateValues(max, values.length - 1);
492
- },
493
- onStepKeyDown: function (param) {
494
- var {
495
- event,
496
- direction: stepDirection
497
- } = param;
498
- if (!disabled) {
499
- var isPageKey = PAGE_KEYS.includes(event.key),
500
- isSkipKey = isPageKey || event.shiftKey && ARROW_KEYS.includes(event.key),
501
- multiplier = isSkipKey ? 10 : 1,
502
- atIndex = valueIndexToChangeRef.current,
503
- value2 = values[atIndex],
504
- stepInDirection = step * multiplier * stepDirection;
505
- updateValues(value2 + stepInDirection, atIndex);
506
- }
507
- }
508
- })
509
- });
510
- }),
511
- Slider = withStaticProperties(SliderComponent, {
512
- Track: SliderTrack,
513
- TrackActive: SliderTrackActive,
514
- Thumb: SliderThumb
515
- });
516
- Slider.displayName = SLIDER_NAME;
517
- var Track = SliderTrack,
518
- Range = SliderTrackActive,
519
- Thumb = SliderThumb;
520
- export { Range, Slider, SliderThumb, SliderThumbFrame, SliderTrack, SliderTrackActive, SliderTrackActiveFrame, SliderTrackFrame, Thumb, Track };
521
- //# sourceMappingURL=Slider.native.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["jsx","_jsx","composeRefs","useComposedRefs","isClient","isWeb","createShallowSetState","getTokens","getVariableValue","styled","getSize","withStaticProperties","clamp","composeEventHandlers","ThemeableStack","useControllableState","useDirection","React","ARROW_KEYS","BACK_KEYS","PAGE_KEYS","SLIDER_NAME","SliderOrientationProvider","SliderProvider","useSliderContext","useSliderOrientationContext","convertValueToPercentage","getClosestValueIndex","getDecimalCount","getLabel","getNextSortedValues","getThumbInBoundsOffset","hasMinStepsBetweenValues","linearScale","roundValue","SliderFrame","SliderImpl","activeSliderMeasureListeners","Set","process","env","TAMAGUI_DISABLE_SLIDER_INTERVAL","_setInterval","setInterval","forEach","cb","SliderHorizontal","forwardRef","props","forwardedRef","min","max","dir","onSlideStart","onSlideMove","onStepKeyDown","onSlideEnd","sliderProps","direction","isDirectionLTR","sliderRef","useRef","state","setState_","useState","size","offset","setState","getValueFromPointer","pointerPosition","input","output","value","measure","_sliderRef_current","current","_x","_y","width","_height","pageX","_pageY","useOnDebouncedWindowResize","useEffect","node","measureTm","debouncedMeasure","clearTimeout","setTimeout","io","IntersectionObserver","entries","isIntersecting","add","delete","root","rootMargin","threshold","observe","disconnect","scope","__scopeSlider","startEdge","endEdge","sizeProp","children","ref","orientation","onLayout","event","target","nativeEvent","locationX","isBackKey","includes","key","callback","amt","arguments","length","last","onResize","window","addEventListener","removeEventListener","SliderVertical","_width","height","_pageX","pageY","locationY","ltr","TRACK_NAME","SliderTrackFrame","name","variants","unstyled","false","backgroundColor","position","borderRadius","overflow","defaultVariants","TAMAGUI_HEADLESS","SliderTrack","trackProps","context","disabled","displayName","RANGE_NAME","SliderTrackActiveFrame","SliderTrackActive","rangeProps","composedRefs","valuesCount","values","percentages","map","offsetStart","Math","offsetEnd","animateOnly","left","right","THUMB_NAME","getThumbSize","val","tokens","shift","minWidth","minHeight","SliderThumbFrame","bordered","borderWidth","backgrounded","pressTheme","focusTheme","hoverTheme","SliderThumb","memo","styleable","index","thumbProps","thumb","setThumb","percent","label","_ref","sizeIn","setSize","estimatedSize","thumbInBoundsOffset","thumbs","set","positionalStyles","x","y","top","bottom","role","tabIndex","e","layout","onFocus","valueIndexToChangeRef","SliderComponent","step","minStepsBetweenThumbs","defaultValue","onValueChange","thumbRefs","Map","isHorizontal","setValues","prop","defaultProp","transition","onChange","value2","updateThumbFocus","preventDefault","focusIndex","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","focus","err","return","handleSlideMove","updateValues","atIndex","decimalCount","snapToStep","round","nextValue","prevValues","nextValues","indexOf","String","SliderOriented","closestIndex","onHomeKeyDown","onEndKeyDown","param","stepDirection","isPageKey","isSkipKey","shiftKey","multiplier","stepInDirection","Slider","Track","TrackActive","Thumb","Range"],"sources":["../../src/Slider.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,89 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { isWeb } from "@tamagui/constants";
3
- import { getVariableValue, styled } from "@tamagui/core";
4
- import { getSize } from "@tamagui/get-token";
5
- import { composeEventHandlers } from "@tamagui/helpers";
6
- import { YStack } from "@tamagui/stacks";
7
- import * as React from "react";
8
- import { ARROW_KEYS, PAGE_KEYS, SLIDER_NAME, useSliderContext } from "./constants.native.mjs";
9
- var SliderFrame = styled(YStack, {
10
- position: "relative",
11
- variants: {
12
- orientation: {
13
- horizontal: {},
14
- vertical: {}
15
- },
16
- size: function (val, extras) {
17
- if (val) {
18
- var orientation = extras.props.orientation,
19
- size = Math.round(getVariableValue(getSize(val)) / 6);
20
- return orientation === "horizontal" ? {
21
- height: size,
22
- borderRadius: size,
23
- justifyContent: "center"
24
- } : {
25
- width: size,
26
- borderRadius: size,
27
- alignItems: "center"
28
- };
29
- }
30
- }
31
- }
32
- }),
33
- SliderImpl = /* @__PURE__ */React.forwardRef(function (props, forwardedRef) {
34
- var {
35
- __scopeSlider,
36
- onSlideStart,
37
- onSlideMove,
38
- onSlideEnd,
39
- onHomeKeyDown,
40
- onEndKeyDown,
41
- onStepKeyDown,
42
- ...sliderProps
43
- } = props,
44
- context = useSliderContext(SLIDER_NAME, __scopeSlider);
45
- return /* @__PURE__ */_jsx(SliderFrame, {
46
- size: "$4",
47
- ...sliderProps,
48
- "data-orientation": sliderProps.orientation,
49
- ref: forwardedRef,
50
- ...(isWeb && {
51
- onKeyDown: function (event) {
52
- event.key === "Home" ? (onHomeKeyDown(event), event.preventDefault()) : event.key === "End" ? (onEndKeyDown(event), event.preventDefault()) : PAGE_KEYS.concat(ARROW_KEYS).includes(event.key) && (onStepKeyDown(event), event.preventDefault());
53
- }
54
- }),
55
- onMoveShouldSetResponderCapture: function () {
56
- return !0;
57
- },
58
- onScrollShouldSetResponder: function () {
59
- return !0;
60
- },
61
- onScrollShouldSetResponderCapture: function () {
62
- return !0;
63
- },
64
- onMoveShouldSetResponder: function () {
65
- return !0;
66
- },
67
- onStartShouldSetResponder: function () {
68
- return !0;
69
- },
70
- // onStartShouldSetResponderCapture={() => true}
71
- onResponderTerminationRequest: function () {
72
- return !1;
73
- },
74
- onResponderGrant: composeEventHandlers(props.onResponderGrant, function (event) {
75
- var target = event.target,
76
- thumbIndex = context.thumbs.get(target),
77
- isStartingOnThumb = thumbIndex !== void 0;
78
- isWeb && target instanceof HTMLElement && context.thumbs.has(target) && target.focus(), !isWeb && isStartingOnThumb && (context.valueIndexToChangeRef.current = thumbIndex), onSlideStart(event, isStartingOnThumb ? "thumb" : "track");
79
- }),
80
- onResponderMove: composeEventHandlers(props.onResponderMove, function (event) {
81
- event.stopPropagation(), onSlideMove(event);
82
- }),
83
- onResponderRelease: composeEventHandlers(props.onResponderRelease, function (event) {
84
- onSlideEnd(event);
85
- })
86
- });
87
- });
88
- export { SliderFrame, SliderImpl };
89
- //# sourceMappingURL=SliderImpl.native.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["jsx","_jsx","isWeb","getVariableValue","styled","getSize","composeEventHandlers","YStack","React","ARROW_KEYS","PAGE_KEYS","SLIDER_NAME","useSliderContext","SliderFrame","position","variants","orientation","horizontal","vertical","size","val","extras","props","Math","round","height","borderRadius","justifyContent","width","alignItems","SliderImpl","forwardRef","forwardedRef","__scopeSlider","onSlideStart","onSlideMove","onSlideEnd","onHomeKeyDown","onEndKeyDown","onStepKeyDown","sliderProps","context","ref","onKeyDown","event","key","preventDefault","concat","includes","onMoveShouldSetResponderCapture","onScrollShouldSetResponder","onScrollShouldSetResponderCapture","onMoveShouldSetResponder","onStartShouldSetResponder","onResponderTerminationRequest","onResponderGrant","target","thumbIndex","thumbs","get","isStartingOnThumb","HTMLElement","has","focus","valueIndexToChangeRef","current","onResponderMove","stopPropagation","onResponderRelease"],"sources":["../../src/SliderImpl.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,19 +0,0 @@
1
- import { createContextScope } from "@tamagui/create-context";
2
- var SLIDER_NAME = "Slider",
3
- [createSliderContext, createSliderScope] = createContextScope(SLIDER_NAME),
4
- [SliderProvider, useSliderContext] = createSliderContext(SLIDER_NAME),
5
- [SliderOrientationProvider, useSliderOrientationContext] = createSliderContext(SLIDER_NAME, {
6
- startEdge: "left",
7
- endEdge: "right",
8
- sizeProp: "width",
9
- size: 0,
10
- direction: 1
11
- }),
12
- PAGE_KEYS = ["PageUp", "PageDown"],
13
- ARROW_KEYS = ["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"],
14
- BACK_KEYS = {
15
- ltr: ["ArrowDown", "Home", "ArrowLeft", "PageDown"],
16
- rtl: ["ArrowDown", "Home", "ArrowRight", "PageDown"]
17
- };
18
- export { ARROW_KEYS, BACK_KEYS, PAGE_KEYS, SLIDER_NAME, SliderOrientationProvider, SliderProvider, createSliderContext, createSliderScope, useSliderContext, useSliderOrientationContext };
19
- //# sourceMappingURL=constants.native.mjs.map