panelui-native 0.9.0 → 0.12.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.
Files changed (105) hide show
  1. package/README.md +5 -3
  2. package/lib/module/components/bottom-sheet/index.js +38 -2
  3. package/lib/module/components/bottom-sheet/index.js.map +1 -1
  4. package/lib/module/components/button/index.js +19 -1
  5. package/lib/module/components/button/index.js.map +1 -1
  6. package/lib/module/components/frame/index.js +128 -15
  7. package/lib/module/components/frame/index.js.map +1 -1
  8. package/lib/module/components/input/index.js +107 -15
  9. package/lib/module/components/input/index.js.map +1 -1
  10. package/lib/module/components/popover/index.js +22 -11
  11. package/lib/module/components/popover/index.js.map +1 -1
  12. package/lib/module/components/progress/index.js +52 -2
  13. package/lib/module/components/progress/index.js.map +1 -1
  14. package/lib/module/components/radio-group/index.js +34 -7
  15. package/lib/module/components/radio-group/index.js.map +1 -1
  16. package/lib/module/components/section-rail/index.js +355 -0
  17. package/lib/module/components/section-rail/index.js.map +1 -0
  18. package/lib/module/components/select/index.js +245 -56
  19. package/lib/module/components/select/index.js.map +1 -1
  20. package/lib/module/components/slider/index.js +355 -0
  21. package/lib/module/components/slider/index.js.map +1 -0
  22. package/lib/module/components/switch/index.js +10 -1
  23. package/lib/module/components/switch/index.js.map +1 -1
  24. package/lib/module/components/tabs/index.js +186 -16
  25. package/lib/module/components/tabs/index.js.map +1 -1
  26. package/lib/module/components/toggle-button/index.js +297 -0
  27. package/lib/module/components/toggle-button/index.js.map +1 -0
  28. package/lib/module/hooks/index.js +1 -0
  29. package/lib/module/hooks/index.js.map +1 -1
  30. package/lib/module/hooks/use-keyboard-avoidance.js +57 -8
  31. package/lib/module/hooks/use-keyboard-avoidance.js.map +1 -1
  32. package/lib/module/hooks/use-scroll-sections.js +89 -0
  33. package/lib/module/hooks/use-scroll-sections.js.map +1 -0
  34. package/lib/module/index.js +4 -1
  35. package/lib/module/index.js.map +1 -1
  36. package/lib/module/native/index.js.map +1 -1
  37. package/lib/module/primitives/keyboard-avoider.js +2 -0
  38. package/lib/module/primitives/keyboard-avoider.js.map +1 -1
  39. package/lib/module/utils/haptics.js +57 -0
  40. package/lib/module/utils/haptics.js.map +1 -0
  41. package/lib/typescript/src/components/bottom-sheet/index.d.ts.map +1 -1
  42. package/lib/typescript/src/components/button/index.d.ts +9 -4
  43. package/lib/typescript/src/components/button/index.d.ts.map +1 -1
  44. package/lib/typescript/src/components/frame/index.d.ts +47 -7
  45. package/lib/typescript/src/components/frame/index.d.ts.map +1 -1
  46. package/lib/typescript/src/components/input/index.d.ts +113 -2
  47. package/lib/typescript/src/components/input/index.d.ts.map +1 -1
  48. package/lib/typescript/src/components/popover/index.d.ts +7 -1
  49. package/lib/typescript/src/components/popover/index.d.ts.map +1 -1
  50. package/lib/typescript/src/components/progress/index.d.ts +33 -0
  51. package/lib/typescript/src/components/progress/index.d.ts.map +1 -1
  52. package/lib/typescript/src/components/radio-group/index.d.ts +7 -0
  53. package/lib/typescript/src/components/radio-group/index.d.ts.map +1 -1
  54. package/lib/typescript/src/components/section-rail/index.d.ts +115 -0
  55. package/lib/typescript/src/components/section-rail/index.d.ts.map +1 -0
  56. package/lib/typescript/src/components/select/index.d.ts +46 -7
  57. package/lib/typescript/src/components/select/index.d.ts.map +1 -1
  58. package/lib/typescript/src/components/slider/index.d.ts +203 -0
  59. package/lib/typescript/src/components/slider/index.d.ts.map +1 -0
  60. package/lib/typescript/src/components/switch/index.d.ts.map +1 -1
  61. package/lib/typescript/src/components/tabs/index.d.ts +46 -4
  62. package/lib/typescript/src/components/tabs/index.d.ts.map +1 -1
  63. package/lib/typescript/src/components/toggle-button/index.d.ts +244 -0
  64. package/lib/typescript/src/components/toggle-button/index.d.ts.map +1 -0
  65. package/lib/typescript/src/hooks/index.d.ts +1 -0
  66. package/lib/typescript/src/hooks/index.d.ts.map +1 -1
  67. package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts +10 -1
  68. package/lib/typescript/src/hooks/use-keyboard-avoidance.d.ts.map +1 -1
  69. package/lib/typescript/src/hooks/use-scroll-sections.d.ts +31 -0
  70. package/lib/typescript/src/hooks/use-scroll-sections.d.ts.map +1 -0
  71. package/lib/typescript/src/index.d.ts +6 -3
  72. package/lib/typescript/src/index.d.ts.map +1 -1
  73. package/lib/typescript/src/native/index.d.ts +16 -1
  74. package/lib/typescript/src/native/index.d.ts.map +1 -1
  75. package/lib/typescript/src/primitives/keyboard-avoider.d.ts +8 -1
  76. package/lib/typescript/src/primitives/keyboard-avoider.d.ts.map +1 -1
  77. package/lib/typescript/src/utils/haptics.d.ts +12 -0
  78. package/lib/typescript/src/utils/haptics.d.ts.map +1 -0
  79. package/package.json +5 -1
  80. package/src/components/bottom-sheet/index.tsx +38 -2
  81. package/src/components/button/index.tsx +26 -5
  82. package/src/components/frame/index.tsx +175 -29
  83. package/src/components/input/index.tsx +122 -16
  84. package/src/components/popover/index.tsx +49 -24
  85. package/src/components/progress/index.tsx +81 -1
  86. package/src/components/radio-group/index.tsx +55 -8
  87. package/src/components/section-rail/index.tsx +459 -0
  88. package/src/components/select/index.tsx +265 -52
  89. package/src/components/slider/index.tsx +371 -0
  90. package/src/components/switch/index.tsx +8 -1
  91. package/src/components/tabs/index.tsx +208 -28
  92. package/src/components/toggle-button/index.tsx +374 -0
  93. package/src/hooks/index.ts +5 -0
  94. package/src/hooks/use-keyboard-avoidance.ts +73 -7
  95. package/src/hooks/use-scroll-sections.ts +127 -0
  96. package/src/index.ts +37 -6
  97. package/src/native/index.ts +13 -1
  98. package/src/primitives/keyboard-avoider.tsx +9 -1
  99. package/src/utils/haptics.ts +63 -0
  100. package/theme.css +6 -2
  101. package/lib/module/components/inline-select/index.js +0 -284
  102. package/lib/module/components/inline-select/index.js.map +0 -1
  103. package/lib/typescript/src/components/inline-select/index.d.ts +0 -48
  104. package/lib/typescript/src/components/inline-select/index.d.ts.map +0 -1
  105. package/src/components/inline-select/index.tsx +0 -332
@@ -0,0 +1,355 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Slider — a value picker driven by a single thumb.
5
+ *
6
+ * The thumb is a pill exactly as tall as the track rather than a disc floating
7
+ * over it. That is a deliberate shape choice and it is also the robust one: a
8
+ * knob taller than its track has to escape the track's own bounds to be drawn
9
+ * whole, which puts the visual design at the mercy of a clipping rule. Here the
10
+ * two are the same height, so there is nothing to clip and nothing to escape.
11
+ *
12
+ * Inside the pill sits a smaller knob that shrinks while dragging — the press
13
+ * feedback lives on the part you are looking at, not on the whole control.
14
+ *
15
+ * Position and fill width are animated on the UI thread; dragging never
16
+ * round-trips through React, and the picked value bridges back to JS on change
17
+ * and on release.
18
+ *
19
+ * ```tsx
20
+ * <Slider label="Volume" showValue defaultValue={30} />
21
+ * ```
22
+ *
23
+ * Works controlled (`value` + `onValueChange`) or uncontrolled (`defaultValue`).
24
+ */
25
+ import { forwardRef, useCallback, useEffect, useRef, useState } from 'react';
26
+ import { View } from 'react-native';
27
+ import { Gesture, GestureDetector } from 'react-native-gesture-handler';
28
+ import Animated, { runOnJS, useAnimatedStyle, useSharedValue, withSpring } from 'react-native-reanimated';
29
+ import { tv } from 'tailwind-variants';
30
+ import { getNativeUI } from "../../native/index.js";
31
+ import { Text } from "../../primitives/text.js";
32
+
33
+ /**
34
+ * Springs the thumb onto its resting step after a drag or a track tap. Drags
35
+ * themselves are followed 1:1 with no spring, so the knob stays under the
36
+ * finger; the spring only settles the final snap.
37
+ */
38
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
39
+ const SPRING = {
40
+ damping: 18,
41
+ stiffness: 220,
42
+ mass: 0.6
43
+ };
44
+ /** Settles the knob between its idle and dragging sizes. */
45
+ const KNOB_SPRING = {
46
+ damping: 15,
47
+ stiffness: 200,
48
+ mass: 0.5
49
+ };
50
+ /** How far the knob shrinks while the thumb is held. */
51
+ const KNOB_PRESSED_SCALE = 0.86;
52
+ /** Grab radius around the thumb — the pill is small, the target should not be. */
53
+ const HIT_SLOP = 16;
54
+ const sliderVariants = tv({
55
+ slots: {
56
+ root: 'w-full gap-2',
57
+ header: 'w-full flex-row items-center justify-between gap-3',
58
+ label: 'text-sm font-medium text-foreground',
59
+ value: 'text-sm text-muted-foreground',
60
+ // The track is the full height of the control, so the thumb has somewhere
61
+ // to sit rather than somewhere to stick out of.
62
+ track: 'w-full justify-center rounded-full bg-muted',
63
+ fill: 'absolute bottom-0 left-0 top-0 rounded-full',
64
+ thumb: 'absolute left-0 rounded-full p-0.5',
65
+ // `background`, not a per-colour on-token: the status foregrounds are the
66
+ // darker text hues meant for soft fills, so a green-700 knob on a green-500
67
+ // pill would barely show. The page background reads against every fill in
68
+ // both themes.
69
+ knob: 'flex-1 rounded-full bg-background shadow-sm'
70
+ },
71
+ variants: {
72
+ color: {
73
+ primary: {
74
+ fill: 'bg-primary',
75
+ thumb: 'bg-primary'
76
+ },
77
+ success: {
78
+ fill: 'bg-success',
79
+ thumb: 'bg-success'
80
+ },
81
+ warning: {
82
+ fill: 'bg-warning',
83
+ thumb: 'bg-warning'
84
+ },
85
+ destructive: {
86
+ fill: 'bg-destructive',
87
+ thumb: 'bg-destructive'
88
+ },
89
+ info: {
90
+ fill: 'bg-info',
91
+ thumb: 'bg-info'
92
+ }
93
+ },
94
+ size: {
95
+ sm: {
96
+ track: 'h-4',
97
+ thumb: 'h-4'
98
+ },
99
+ md: {
100
+ track: 'h-5',
101
+ thumb: 'h-5'
102
+ },
103
+ lg: {
104
+ track: 'h-6',
105
+ thumb: 'h-6'
106
+ }
107
+ },
108
+ disabled: {
109
+ true: {
110
+ root: 'opacity-50'
111
+ }
112
+ }
113
+ },
114
+ defaultVariants: {
115
+ color: 'primary',
116
+ size: 'md'
117
+ }
118
+ });
119
+
120
+ /** Thumb width per size. Wider than it is tall, so the pill reads as a grip. */
121
+ const THUMB_WIDTH = {
122
+ sm: 24,
123
+ md: 28,
124
+ lg: 32
125
+ };
126
+
127
+ /** Row height reserved for the platform's own slider. */
128
+ const NATIVE_HEIGHT = 32;
129
+ function clampJS(value, min, max) {
130
+ return Math.min(Math.max(value, min), max);
131
+ }
132
+ function snap(value, min, max, step) {
133
+ if (step <= 0) return clampJS(value, min, max);
134
+ const stepped = Math.round((value - min) / step) * step + min;
135
+ return clampJS(stepped, min, max);
136
+ }
137
+ export const Slider = /*#__PURE__*/forwardRef(({
138
+ className,
139
+ headerClassName,
140
+ trackClassName,
141
+ fillClassName,
142
+ thumbClassName,
143
+ knobClassName,
144
+ value: valueProp,
145
+ defaultValue = 0,
146
+ min = 0,
147
+ max = 100,
148
+ step = 1,
149
+ onValueChange,
150
+ onValueCommit,
151
+ disabled = false,
152
+ native,
153
+ label,
154
+ showValue = false,
155
+ formatValue,
156
+ color = 'primary',
157
+ size = 'md'
158
+ }, ref) => {
159
+ const isControlled = valueProp !== undefined;
160
+ const [internal, setInternal] = useState(defaultValue);
161
+ const value = clampJS(isControlled ? valueProp : internal, min, max);
162
+ const slots = sliderVariants({
163
+ color,
164
+ size,
165
+ disabled
166
+ });
167
+ const thumbWidth = THUMB_WIDTH[size ?? 'md'];
168
+ const nativeUI = native ? getNativeUI() : null;
169
+
170
+ // Measured on layout; the thumb travels across (trackWidth - thumbWidth) so
171
+ // it stays inside the track at both ends.
172
+ const trackWidth = useSharedValue(0);
173
+ // Fraction 0..1 that drives the fill and the thumb, animated on the UI thread.
174
+ const progress = useSharedValue(max > min ? (value - min) / (max - min) : 0);
175
+ const startProgress = useSharedValue(0);
176
+ const pressed = useSharedValue(0);
177
+
178
+ // The change handler runs on JS; keep the latest props reachable from the
179
+ // worklet callback without re-creating the gesture on every render.
180
+ const changeRef = useRef(onValueChange);
181
+ changeRef.current = onValueChange;
182
+ const commitRef = useRef(onValueCommit);
183
+ commitRef.current = onValueCommit;
184
+ const emitChange = useCallback(next => {
185
+ if (!isControlled) setInternal(next);
186
+ changeRef.current?.(next);
187
+ }, [isControlled]);
188
+ const emitCommit = useCallback(next => {
189
+ commitRef.current?.(next);
190
+ }, []);
191
+
192
+ // Keep the animation in step with a controlled value that changes elsewhere.
193
+ useEffect(() => {
194
+ const next = max > min ? (value - min) / (max - min) : 0;
195
+ progress.value = withSpring(next, SPRING);
196
+ }, [value, min, max, progress]);
197
+ const onLayout = event => {
198
+ trackWidth.value = event.nativeEvent.layout.width;
199
+ };
200
+ const commitFromProgress = useCallback((p, commit) => {
201
+ const raw = min + p * (max - min);
202
+ const snapped = snap(raw, min, max, step);
203
+ emitChange(snapped);
204
+ if (commit) emitCommit(snapped);
205
+ }, [min, max, step, emitChange, emitCommit]);
206
+ const pan = Gesture.Pan().enabled(!disabled).hitSlop(HIT_SLOP).onBegin(() => {
207
+ startProgress.value = progress.value;
208
+ pressed.value = withSpring(1, KNOB_SPRING);
209
+ }).onUpdate(event => {
210
+ const travel = Math.max(trackWidth.value - thumbWidth, 1);
211
+ const delta = event.translationX / travel;
212
+ const next = Math.min(Math.max(startProgress.value + delta, 0), 1);
213
+ progress.value = next;
214
+ runOnJS(commitFromProgress)(next, false);
215
+ }).onFinalize(() => {
216
+ pressed.value = withSpring(0, KNOB_SPRING);
217
+ runOnJS(commitFromProgress)(progress.value, true);
218
+ });
219
+ const tap = Gesture.Tap().enabled(!disabled).maxDuration(250).onEnd(event => {
220
+ const travel = Math.max(trackWidth.value - thumbWidth, 1);
221
+ const next = Math.min(Math.max((event.x - thumbWidth / 2) / travel, 0), 1);
222
+ progress.value = withSpring(next, SPRING);
223
+ runOnJS(commitFromProgress)(next, true);
224
+ });
225
+ const gesture = Gesture.Race(pan, tap);
226
+
227
+ // The fill runs under the thumb rather than up to it, so the two never show
228
+ // a seam between them as the thumb moves.
229
+ const fillStyle = useAnimatedStyle(() => {
230
+ const travel = Math.max(trackWidth.value - thumbWidth, 0);
231
+ return {
232
+ width: progress.value * travel + thumbWidth
233
+ };
234
+ });
235
+ const thumbStyle = useAnimatedStyle(() => {
236
+ const travel = Math.max(trackWidth.value - thumbWidth, 0);
237
+ return {
238
+ transform: [{
239
+ translateX: progress.value * travel
240
+ }]
241
+ };
242
+ });
243
+ const knobStyle = useAnimatedStyle(() => ({
244
+ transform: [{
245
+ scale: 1 - pressed.value * (1 - KNOB_PRESSED_SCALE)
246
+ }]
247
+ }));
248
+
249
+ // VoiceOver / TalkBack increment and decrement move by a single step.
250
+ const nudge = dir => {
251
+ const next = snap(value + dir * (step || 1), min, max, step);
252
+ if (next === value) return;
253
+ progress.value = withSpring(max > min ? (next - min) / (max - min) : 0, SPRING);
254
+ emitChange(next);
255
+ emitCommit(next);
256
+ };
257
+ const onAccessibilityAction = event => {
258
+ if (event.nativeEvent.actionName === 'increment') nudge(1);else if (event.nativeEvent.actionName === 'decrement') nudge(-1);
259
+ };
260
+ const shownValue = formatValue ? formatValue(value) : String(Math.round(value));
261
+ const header = label || showValue ? /*#__PURE__*/_jsxs(View, {
262
+ className: slots.header({
263
+ className: headerClassName
264
+ }),
265
+ children: [label ? /*#__PURE__*/_jsx(Text, {
266
+ className: slots.label(),
267
+ children: label
268
+ }) : /*#__PURE__*/_jsx(View, {}), showValue ? /*#__PURE__*/_jsx(Text, {
269
+ className: slots.value(),
270
+ children: shownValue
271
+ }) : null]
272
+ }) : null;
273
+ if (nativeUI) {
274
+ const {
275
+ Host,
276
+ Slider: NativeSlider
277
+ } = nativeUI;
278
+ return /*#__PURE__*/_jsxs(View, {
279
+ ref: ref,
280
+ className: slots.root({
281
+ className
282
+ }),
283
+ children: [header, /*#__PURE__*/_jsx(Host, {
284
+ style: {
285
+ height: NATIVE_HEIGHT
286
+ },
287
+ children: /*#__PURE__*/_jsx(NativeSlider, {
288
+ value: value,
289
+ onValueChange: next => {
290
+ emitChange(snap(next, min, max, step));
291
+ },
292
+ min: min,
293
+ max: max,
294
+ step: step,
295
+ disabled: disabled
296
+ })
297
+ })]
298
+ });
299
+ }
300
+ return /*#__PURE__*/_jsxs(View, {
301
+ ref: ref,
302
+ className: slots.root({
303
+ className
304
+ }),
305
+ collapsable: false,
306
+ children: [header, /*#__PURE__*/_jsx(GestureDetector, {
307
+ gesture: gesture,
308
+ children: /*#__PURE__*/_jsxs(View, {
309
+ className: slots.track({
310
+ className: trackClassName
311
+ }),
312
+ onLayout: onLayout,
313
+ children: [/*#__PURE__*/_jsx(Animated.View, {
314
+ style: fillStyle,
315
+ className: slots.fill({
316
+ className: fillClassName
317
+ })
318
+ }), /*#__PURE__*/_jsx(Animated.View, {
319
+ style: [thumbStyle, {
320
+ width: thumbWidth
321
+ }],
322
+ className: slots.thumb({
323
+ className: thumbClassName
324
+ }),
325
+ accessible: true,
326
+ accessibilityRole: "adjustable",
327
+ accessibilityLabel: label,
328
+ accessibilityState: {
329
+ disabled
330
+ },
331
+ accessibilityValue: {
332
+ min,
333
+ max,
334
+ now: Math.round(value),
335
+ text: shownValue
336
+ },
337
+ accessibilityActions: [{
338
+ name: 'increment'
339
+ }, {
340
+ name: 'decrement'
341
+ }],
342
+ onAccessibilityAction: onAccessibilityAction,
343
+ children: /*#__PURE__*/_jsx(Animated.View, {
344
+ style: knobStyle,
345
+ className: slots.knob({
346
+ className: knobClassName
347
+ })
348
+ })
349
+ })]
350
+ })
351
+ })]
352
+ });
353
+ });
354
+ Slider.displayName = 'Slider';
355
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["forwardRef","useCallback","useEffect","useRef","useState","View","Gesture","GestureDetector","Animated","runOnJS","useAnimatedStyle","useSharedValue","withSpring","tv","getNativeUI","Text","jsx","_jsx","jsxs","_jsxs","SPRING","damping","stiffness","mass","KNOB_SPRING","KNOB_PRESSED_SCALE","HIT_SLOP","sliderVariants","slots","root","header","label","value","track","fill","thumb","knob","variants","color","primary","success","warning","destructive","info","size","sm","md","lg","disabled","true","defaultVariants","THUMB_WIDTH","NATIVE_HEIGHT","clampJS","min","max","Math","snap","step","stepped","round","Slider","className","headerClassName","trackClassName","fillClassName","thumbClassName","knobClassName","valueProp","defaultValue","onValueChange","onValueCommit","native","showValue","formatValue","ref","isControlled","undefined","internal","setInternal","thumbWidth","nativeUI","trackWidth","progress","startProgress","pressed","changeRef","current","commitRef","emitChange","next","emitCommit","onLayout","event","nativeEvent","layout","width","commitFromProgress","p","commit","raw","snapped","pan","Pan","enabled","hitSlop","onBegin","onUpdate","travel","delta","translationX","onFinalize","tap","Tap","maxDuration","onEnd","x","gesture","Race","fillStyle","thumbStyle","transform","translateX","knobStyle","scale","nudge","dir","onAccessibilityAction","actionName","shownValue","String","children","Host","NativeSlider","style","height","collapsable","accessible","accessibilityRole","accessibilityLabel","accessibilityState","accessibilityValue","now","text","accessibilityActions","name","displayName"],"sourceRoot":"../../../../src","sources":["components/slider/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -42,6 +42,13 @@ const TRAVEL = {
42
42
  sm: 16,
43
43
  md: 20
44
44
  };
45
+
46
+ /**
47
+ * Row height given to the native host. It is told its size rather than asked
48
+ * to measure the platform's own content, which arrives a frame late and leaves
49
+ * the control collapsed until something forces a second pass.
50
+ */
51
+ const NATIVE_HEIGHT = 32;
45
52
  /**
46
53
  * Animated switch. Thumb position and active-track opacity are driven on the
47
54
  * UI thread; toggling never re-renders beyond the value change itself.
@@ -78,7 +85,9 @@ export const Switch = /*#__PURE__*/forwardRef(({
78
85
  Switch: NativeSwitch
79
86
  } = nativeUI;
80
87
  return /*#__PURE__*/_jsx(Host, {
81
- matchContents: true,
88
+ style: {
89
+ height: NATIVE_HEIGHT
90
+ },
82
91
  children: /*#__PURE__*/_jsx(NativeSwitch, {
83
92
  value: value,
84
93
  onValueChange: next => onValueChange?.(next),
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","useEffect","Pressable","View","Animated","interpolate","useAnimatedStyle","useSharedValue","withSpring","tv","getNativeUI","jsx","_jsx","jsxs","_jsxs","SPRING","damping","stiffness","mass","switchVariants","slots","track","activeTrack","thumb","variants","size","sm","md","disabled","true","defaultVariants","TRAVEL","Switch","className","value","onValueChange","native","label","ref","progress","nativeUI","thumbStyle","transform","translateX","activeTrackStyle","opacity","Host","NativeSwitch","matchContents","children","next","accessibilityRole","accessibilityState","checked","onPress","hitSlop","style","displayName"],"sourceRoot":"../../../../src","sources":["components/switch/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","useEffect","Pressable","View","Animated","interpolate","useAnimatedStyle","useSharedValue","withSpring","tv","getNativeUI","jsx","_jsx","jsxs","_jsxs","SPRING","damping","stiffness","mass","switchVariants","slots","track","activeTrack","thumb","variants","size","sm","md","disabled","true","defaultVariants","TRAVEL","NATIVE_HEIGHT","Switch","className","value","onValueChange","native","label","ref","progress","nativeUI","thumbStyle","transform","translateX","activeTrackStyle","opacity","Host","NativeSwitch","style","height","children","next","accessibilityRole","accessibilityState","checked","onPress","hitSlop","displayName"],"sourceRoot":"../../../../src","sources":["components/switch/index.tsx"],"mappings":"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","ignoreList":[]}