panelui-native 0.102.1 → 0.102.3

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,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  import { cloneElement, createContext, forwardRef, isValidElement, useCallback, useContext, useEffect, useMemo, useRef, useState } from 'react';
4
- import { Pressable, StyleSheet, useWindowDimensions, View } from 'react-native';
4
+ import { Platform, Pressable, StyleSheet, useWindowDimensions, View } from 'react-native';
5
5
  import { useCSSVariable } from 'uniwind';
6
6
  import { Gesture, GestureDetector } from 'react-native-gesture-handler';
7
7
  import Animated, { Extrapolation, FadeIn, cancelAnimation, interpolate, runOnJS, useAnimatedScrollHandler, useAnimatedStyle, useComposedEventHandler, useReducedMotion, useSharedValue, withSpring, withTiming } from 'react-native-reanimated';
@@ -74,8 +74,9 @@ const sheetVariants = tv({
74
74
  // rule through the middle of nothing.
75
75
  false: 'rounded-t-3xl border-b-0',
76
76
  // Floating: all four edges are real, so all four are drawn and all four
77
- // corners are rounded.
78
- true: 'mx-4 mb-6 rounded-3xl'
77
+ // corners are rounded. The bottom gap depends on the safe area, so it is
78
+ // set in the style rather than here — see `detachedGap`.
79
+ true: 'mx-4 rounded-3xl'
79
80
  }
80
81
  },
81
82
  defaultVariants: {
@@ -516,12 +517,21 @@ function BottomSheetContent({
516
517
  opacity: interpolate(translateY.value, [0, screenHeight], [1, 0], Extrapolation.CLAMP)
517
518
  }));
518
519
 
520
+ /*
521
+ * How far a detached sheet floats above the bottom of the screen.
522
+ *
523
+ * On iOS it floats over the home indicator, which only takes a swipe. On
524
+ * Android the bottom inset can be the three-button navigation bar, whose
525
+ * buttons have to stay reachable, so the sheet sits above the inset.
526
+ */
527
+ const detachedGap = Platform.OS === 'android' ? Math.max(insets.bottom + 12, 24) : 24;
528
+
519
529
  /*
520
530
  * A sized sheet is clamped rather than handed its fraction outright.
521
531
  * `insets.top` is the status bar and the notch, and content that runs under
522
532
  * those is unreadable at exactly the moment the sheet is at its tallest.
523
533
  */
524
- const sizedHeight = size === 'auto' ? undefined : Math.min(screenHeight * SIZE_FRACTION[size], screenHeight - insets.top - (detached ? 24 : 8));
534
+ const sizedHeight = size === 'auto' ? undefined : Math.min(screenHeight * SIZE_FRACTION[size], screenHeight - insets.top - (detached ? detachedGap : 8));
525
535
  const surface = useMemo(() => ({
526
536
  scrollGesture,
527
537
  scrollOffset,
@@ -636,11 +646,14 @@ function BottomSheetContent({
636
646
  // `style` for a height would silently drop the drag transform and
637
647
  // the safe-area padding with it.
638
648
  style: [sheetStyle,
639
- // A detached sheet's own bottom margin already clears the home
640
- // indicator, so it takes plain padding rather than stacking the
641
- // inset on top of the gap.
642
- {
643
- paddingBottom: detached ? 16 : Math.max(insets.bottom, 16)
649
+ // A detached sheet's own bottom margin already clears the system
650
+ // bar, so it takes plain padding rather than stacking the inset
651
+ // on top of the gap.
652
+ detached ? {
653
+ marginBottom: detachedGap,
654
+ paddingBottom: 16
655
+ } : {
656
+ paddingBottom: Math.max(insets.bottom, 16)
644
657
  }, sizedHeight === undefined ? null : {
645
658
  height: sizedHeight
646
659
  }, props.style],
@@ -1 +1 @@
1
- {"version":3,"names":["cloneElement","createContext","forwardRef","isValidElement","useCallback","useContext","useEffect","useMemo","useRef","useState","Pressable","StyleSheet","useWindowDimensions","View","useCSSVariable","Gesture","GestureDetector","Animated","Extrapolation","FadeIn","cancelAnimation","interpolate","runOnJS","useAnimatedScrollHandler","useAnimatedStyle","useComposedEventHandler","useReducedMotion","useSharedValue","withSpring","withTiming","useSafeAreaInsets","tv","NativeHost","getComposeModifiers","getNativeUI","getSwiftUIModifiers","XIcon","ModalPortal","Scrim","Text","textChildren","useBackHandler","cn","impactKnock","jsx","_jsx","jsxs","_jsxs","SPRING","duration","dampingRatio","EXIT_SPRING","overshootClamping","DISMISS_DISTANCE","DISMISS_VELOCITY","project","velocity","decelerationRate","sheetVariants","base","variants","detached","false","true","defaultVariants","BottomSheetContext","useBottomSheet","component","context","Error","DETENT_FRACTION","half","full","NATIVE_DISMISS_MS","bottomSheetDetentHeight","snapPoints","screenHeight","length","undefined","first","fraction","height","nativeSheetSurface","color","swiftUI","presentationBackground","compose","background","NativeSheetContext","SheetSurfaceContext","BottomSheetRoot","children","open","onOpenChange","defaultOpen","native","nativeBackground","internalOpen","setInternalOpen","isControlled","resolvedOpen","setOpen","next","nativeUI","nativeSheet","Provider","value","BottomSheetTrigger","onPress","args","props","SIZE_FRACTION","BottomSheetContent","className","dismissible","showClose","showGrabber","blur","size","width","screenWidth","reducedMotion","insets","translateY","closeTint","popoverSurface","scrollGesture","Native","scrollOffset","hasScrollable","close","presented","setPresented","land","finished","nativePresented","setNativePresented","nativeOnScreen","nativeDismissing","nativeDismissTimer","openRef","current","endNativeDismissal","clearTimeout","setTimeout","onNativeDismiss","pan","Pan","enabled","activeOffsetY","simultaneousWithExternalGesture","onChange","event","changeY","onEnd","projected","velocityY","sheetStyle","transform","backdropStyle","opacity","CLAMP","sizedHeight","Math","min","top","surface","Host","BottomSheet","NativeBottomSheet","RNHostView","requested","modifiers","host","matchContents","ignoreSafeArea","style","position","isPresented","onDismiss","minHeight","paddingBottom","max","bottom","absoluteFill","accessibilityLabel","gesture","entering","accessibilityViewIsModal","accessibilityRole","hitSlop","BottomSheetHeader","title","description","text","weight","muted","displayName","BottomSheetBody","onScroll","ref","handler","contentOffset","y","composed","body","ScrollView","scrollEventThrottle","showsVerticalScrollIndicator","BottomSheetFooter","Object","assign","Trigger","Content","Header","Body","Footer"],"sourceRoot":"../../../../src","sources":["components/bottom-sheet/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["cloneElement","createContext","forwardRef","isValidElement","useCallback","useContext","useEffect","useMemo","useRef","useState","Platform","Pressable","StyleSheet","useWindowDimensions","View","useCSSVariable","Gesture","GestureDetector","Animated","Extrapolation","FadeIn","cancelAnimation","interpolate","runOnJS","useAnimatedScrollHandler","useAnimatedStyle","useComposedEventHandler","useReducedMotion","useSharedValue","withSpring","withTiming","useSafeAreaInsets","tv","NativeHost","getComposeModifiers","getNativeUI","getSwiftUIModifiers","XIcon","ModalPortal","Scrim","Text","textChildren","useBackHandler","cn","impactKnock","jsx","_jsx","jsxs","_jsxs","SPRING","duration","dampingRatio","EXIT_SPRING","overshootClamping","DISMISS_DISTANCE","DISMISS_VELOCITY","project","velocity","decelerationRate","sheetVariants","base","variants","detached","false","true","defaultVariants","BottomSheetContext","useBottomSheet","component","context","Error","DETENT_FRACTION","half","full","NATIVE_DISMISS_MS","bottomSheetDetentHeight","snapPoints","screenHeight","length","undefined","first","fraction","height","nativeSheetSurface","color","swiftUI","presentationBackground","compose","background","NativeSheetContext","SheetSurfaceContext","BottomSheetRoot","children","open","onOpenChange","defaultOpen","native","nativeBackground","internalOpen","setInternalOpen","isControlled","resolvedOpen","setOpen","next","nativeUI","nativeSheet","Provider","value","BottomSheetTrigger","onPress","args","props","SIZE_FRACTION","BottomSheetContent","className","dismissible","showClose","showGrabber","blur","size","width","screenWidth","reducedMotion","insets","translateY","closeTint","popoverSurface","scrollGesture","Native","scrollOffset","hasScrollable","close","presented","setPresented","land","finished","nativePresented","setNativePresented","nativeOnScreen","nativeDismissing","nativeDismissTimer","openRef","current","endNativeDismissal","clearTimeout","setTimeout","onNativeDismiss","pan","Pan","enabled","activeOffsetY","simultaneousWithExternalGesture","onChange","event","changeY","onEnd","projected","velocityY","sheetStyle","transform","backdropStyle","opacity","CLAMP","detachedGap","OS","Math","max","bottom","sizedHeight","min","top","surface","Host","BottomSheet","NativeBottomSheet","RNHostView","requested","modifiers","host","matchContents","ignoreSafeArea","style","position","isPresented","onDismiss","minHeight","paddingBottom","absoluteFill","accessibilityLabel","gesture","entering","accessibilityViewIsModal","marginBottom","accessibilityRole","hitSlop","BottomSheetHeader","title","description","text","weight","muted","displayName","BottomSheetBody","onScroll","ref","handler","contentOffset","y","composed","body","ScrollView","scrollEventThrottle","showsVerticalScrollIndicator","BottomSheetFooter","Object","assign","Trigger","Content","Header","Body","Footer"],"sourceRoot":"../../../../src","sources":["components/bottom-sheet/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -13,7 +13,8 @@
13
13
  * short delay and then faster, the way a native stepper does — so walking from
14
14
  * 0 to 200 is a press, not two hundred of them. The repeat reads the live
15
15
  * value from a ref rather than a closure, so it never strides off a stale
16
- * number.
16
+ * number, and it stops at a bound on its own rather than waiting for a
17
+ * release a disabled button may never send.
17
18
  *
18
19
  * Typing is allowed to be briefly invalid — an empty field, a lone `-`, a
19
20
  * trailing `.` — because clamping every keystroke fights the person mid-number.
@@ -37,6 +38,7 @@ import { Text } from "../../primitives/text.js";
37
38
  import { selectionTick } from "../../utils/haptics.js";
38
39
  import { Label } from "../label/index.js";
39
40
  import { normalize, precisionOf } from "./number-input-math.js";
41
+ import { createRepeater } from "./number-input-repeat.js";
40
42
 
41
43
  /** Wait before a held button starts repeating — a tap must not trip it. */
42
44
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
@@ -204,26 +206,35 @@ export const NumberInput = /*#__PURE__*/forwardRef(({
204
206
  const clamped = normalize(next, min, max, step);
205
207
  if (tick && haptics) selectionTick();
206
208
  if (!isControlled) setUncontrolled(clamped);
207
- if (clamped !== value) onValueChange?.(clamped);
208
- }, [min, max, step, haptics, isControlled, value, onValueChange]);
209
+ if (clamped !== valueRef.current) onValueChange?.(clamped);
210
+ // Advance the ref now, so the next repeat steps from here even if the
211
+ // render carrying this value has not landed yet.
212
+ valueRef.current = clamped;
213
+ }, [min, max, step, haptics, isControlled, onValueChange]);
209
214
 
210
215
  // --- hold-to-repeat -----------------------------------------------------
211
- const delayRef = useRef(null);
212
- const intervalRef = useRef(null);
213
- const stopRepeat = useCallback(() => {
214
- if (delayRef.current) clearTimeout(delayRef.current);
215
- if (intervalRef.current) clearInterval(intervalRef.current);
216
- delayRef.current = null;
217
- intervalRef.current = null;
218
- }, []);
216
+ // The timer outlives the render that started it, so it calls the latest
217
+ // `commit` through a ref instead of the one it was created with.
218
+ const commitRef = useRef(commit);
219
+ commitRef.current = commit;
220
+ const repeaterRef = useRef(null);
221
+ if (!repeaterRef.current) repeaterRef.current = createRepeater(REPEAT_DELAY, REPEAT_INTERVAL);
222
+ const repeater = repeaterRef.current;
223
+ const stopRepeat = repeater.stop;
219
224
  useEffect(() => stopRepeat, [stopRepeat]);
225
+ useEffect(() => {
226
+ if (disabled) stopRepeat();
227
+ }, [disabled, stopRepeat]);
220
228
  const startRepeat = useCallback(direction => {
221
- const nudge = () => commit(valueRef.current + direction * step, true);
222
- nudge();
223
- delayRef.current = setTimeout(() => {
224
- intervalRef.current = setInterval(nudge, REPEAT_INTERVAL);
225
- }, REPEAT_DELAY);
226
- }, [commit, step]);
229
+ repeater.start(() => {
230
+ const current = valueRef.current;
231
+ const next = normalize(current + direction * step, min, max, step);
232
+ if (next === current) return false;
233
+ commitRef.current(next, true);
234
+ // Keep going only while there is room for another step.
235
+ return direction > 0 ? next < max : next > min;
236
+ });
237
+ }, [repeater, step, min, max]);
227
238
  const atMin = value <= min;
228
239
  const atMax = value >= max;
229
240
  const handleEndEditing = useCallback(() => {
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","useCallback","useEffect","useRef","useState","TextInput","View","tv","useCSSVariable","MinusIcon","PlusIcon","AnimatedPressable","Text","selectionTick","Label","normalize","precisionOf","jsx","_jsx","jsxs","_jsxs","REPEAT_DELAY","REPEAT_INTERVAL","numberInputVariants","slots","container","control","button","field","description","error","variants","variant","outline","filled","size","sm","md","lg","invalid","true","disabled","defaultVariants","ICON_SIZE","FIELD_BASE","paddingVertical","paddingHorizontal","includeFontPadding","textAlignVertical","fontVariant","FIELD_STYLE","fontSize","NumberInput","className","containerClassName","value","controlledValue","defaultValue","min","Infinity","max","step","onValueChange","formatValue","editable","label","errorMessage","isRequired","haptics","placeholder","onFocus","onBlur","returnKeyType","ref","isControlled","undefined","initial","isFinite","uncontrolled","setUncontrolled","valueRef","current","foreground","iconColor","format","v","String","text","setText","focused","setFocused","commit","next","tick","clamped","delayRef","intervalRef","stopRepeat","clearTimeout","clearInterval","startRepeat","direction","nudge","setTimeout","setInterval","atMin","atMax","handleEndEditing","parsed","parseFloat","Number","isNaN","children","isInvalid","isDisabled","pressOpacity","onPressIn","onPressOut","accessibilityRole","accessibilityLabel","accessibilityState","style","opacity","color","strokeWidth","keyboardType","selectTextOnFocus","onChangeText","e","onSubmitEditing","displayName"],"sourceRoot":"../../../../src","sources":["components/number-input/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","useCallback","useEffect","useRef","useState","TextInput","View","tv","useCSSVariable","MinusIcon","PlusIcon","AnimatedPressable","Text","selectionTick","Label","normalize","precisionOf","createRepeater","jsx","_jsx","jsxs","_jsxs","REPEAT_DELAY","REPEAT_INTERVAL","numberInputVariants","slots","container","control","button","field","description","error","variants","variant","outline","filled","size","sm","md","lg","invalid","true","disabled","defaultVariants","ICON_SIZE","FIELD_BASE","paddingVertical","paddingHorizontal","includeFontPadding","textAlignVertical","fontVariant","FIELD_STYLE","fontSize","NumberInput","className","containerClassName","value","controlledValue","defaultValue","min","Infinity","max","step","onValueChange","formatValue","editable","label","errorMessage","isRequired","haptics","placeholder","onFocus","onBlur","returnKeyType","ref","isControlled","undefined","initial","isFinite","uncontrolled","setUncontrolled","valueRef","current","foreground","iconColor","format","v","String","text","setText","focused","setFocused","commit","next","tick","clamped","commitRef","repeaterRef","repeater","stopRepeat","stop","startRepeat","direction","start","atMin","atMax","handleEndEditing","parsed","parseFloat","Number","isNaN","children","isInvalid","isDisabled","pressOpacity","onPressIn","onPressOut","accessibilityRole","accessibilityLabel","accessibilityState","style","opacity","color","strokeWidth","keyboardType","selectTextOnFocus","onChangeText","e","onSubmitEditing","displayName"],"sourceRoot":"../../../../src","sources":["components/number-input/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * The hold-to-repeat timer behind NumberInput's − and + buttons.
5
+ *
6
+ * A press steps once, then after `delay` keeps stepping every `interval` until
7
+ * it is stopped. Two things keep it from running away:
8
+ *
9
+ * - There is only ever one timer. `start` clears whatever is already running,
10
+ * because a press-in does not always arrive after the previous press-out —
11
+ * quick taps on Android can deliver two press-ins in a row, and a second
12
+ * timer started over the first leaves the first with no handle to clear it.
13
+ * - The step reports whether another one is possible. At a bound the button
14
+ * disables, and a disabled button is not guaranteed to deliver the release
15
+ * that would stop the timer, so the timer stops itself there instead.
16
+ *
17
+ * Kept free of React so it can be tested on its own.
18
+ */
19
+
20
+ export function createRepeater(delay, interval) {
21
+ let delayTimer = null;
22
+ let intervalTimer = null;
23
+ // Bumped by every start and stop. A callback from an earlier generation does
24
+ // nothing, so a timer that fires once more after being cleared cannot step.
25
+ let generation = 0;
26
+ const stop = () => {
27
+ generation += 1;
28
+ if (delayTimer !== null) clearTimeout(delayTimer);
29
+ if (intervalTimer !== null) clearInterval(intervalTimer);
30
+ delayTimer = null;
31
+ intervalTimer = null;
32
+ };
33
+ const start = step => {
34
+ stop();
35
+ const current = generation;
36
+ if (!step()) return;
37
+ delayTimer = setTimeout(() => {
38
+ if (current !== generation) return;
39
+ delayTimer = null;
40
+ intervalTimer = setInterval(() => {
41
+ if (current !== generation) return;
42
+ if (!step()) stop();
43
+ }, interval);
44
+ }, delay);
45
+ };
46
+ return {
47
+ start,
48
+ stop
49
+ };
50
+ }
51
+ //# sourceMappingURL=number-input-repeat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createRepeater","delay","interval","delayTimer","intervalTimer","generation","stop","clearTimeout","clearInterval","start","step","current","setTimeout","setInterval"],"sourceRoot":"../../../../src","sources":["components/number-input/number-input-repeat.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AASA,OAAO,SAASA,cAAcA,CAACC,KAAa,EAAEC,QAAgB,EAAY;EACxE,IAAIC,UAAgD,GAAG,IAAI;EAC3D,IAAIC,aAAoD,GAAG,IAAI;EAC/D;EACA;EACA,IAAIC,UAAU,GAAG,CAAC;EAElB,MAAMC,IAAI,GAAGA,CAAA,KAAM;IACjBD,UAAU,IAAI,CAAC;IACf,IAAIF,UAAU,KAAK,IAAI,EAAEI,YAAY,CAACJ,UAAU,CAAC;IACjD,IAAIC,aAAa,KAAK,IAAI,EAAEI,aAAa,CAACJ,aAAa,CAAC;IACxDD,UAAU,GAAG,IAAI;IACjBC,aAAa,GAAG,IAAI;EACtB,CAAC;EAED,MAAMK,KAAK,GAAIC,IAAmB,IAAK;IACrCJ,IAAI,CAAC,CAAC;IACN,MAAMK,OAAO,GAAGN,UAAU;IAC1B,IAAI,CAACK,IAAI,CAAC,CAAC,EAAE;IACbP,UAAU,GAAGS,UAAU,CAAC,MAAM;MAC5B,IAAID,OAAO,KAAKN,UAAU,EAAE;MAC5BF,UAAU,GAAG,IAAI;MACjBC,aAAa,GAAGS,WAAW,CAAC,MAAM;QAChC,IAAIF,OAAO,KAAKN,UAAU,EAAE;QAC5B,IAAI,CAACK,IAAI,CAAC,CAAC,EAAEJ,IAAI,CAAC,CAAC;MACrB,CAAC,EAAEJ,QAAQ,CAAC;IACd,CAAC,EAAED,KAAK,CAAC;EACX,CAAC;EAED,OAAO;IAAEQ,KAAK;IAAEH;EAAK,CAAC;AACxB","ignoreList":[]}
@@ -93,7 +93,8 @@ export interface BottomSheetContentProps extends ViewProps {
93
93
  * bottom, so it reads as a card laid over the app rather than a drawer
94
94
  * pulled out of it. All four corners round and the bottom border comes back,
95
95
  * since a floating sheet has four real edges where a docked one has three.
96
- * Ignored by the native sheet, which the platform positions itself.
96
+ * On Android it floats above the navigation bar, so the system buttons stay
97
+ * uncovered. Ignored by the native sheet, which the platform positions itself.
97
98
  */
98
99
  detached?: boolean;
99
100
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/bottom-sheet/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAWL,KAAK,cAAc,EAEnB,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAGtB,OAAO,QAcN,MAAM,yBAAyB,CAAC;AAuFjC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,SAAS,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,CAAC;IAC7E;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CACrC;AAyBD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,gBAAgB,CAAC,YAAY,CAAC,EAC1C,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,SAAS,CAapB;AAqDD,iBAAS,eAAe,CAAC,EACvB,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,WAAmB,EACnB,MAAM,EACN,UAAU,EACV,gBAAgB,GACjB,EAAE,gBAAgB,+BA+BlB;AAED,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,YAAY,CAAC;QAAE,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;KAAE,CAAC,CAAC;CACpE;AAED,iBAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE,EAAE,uBAAuB;cAH5B,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI;wDAahE;AAED,MAAM,WAAW,uBAAwB,SAAQ,SAAS;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;;;;;;;OAUG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAChC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AASD,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,WAAkB,EAClB,SAAgB,EAChB,WAAkB,EAClB,QAAgB,EAChB,IAAY,EACZ,IAAa,EACb,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,uBAAuB,sCAgezB;AAED,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mFAAmF;IACnF,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,4DAA4D;IAC5D,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;;;;;;;;GASG;AACH,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,KAAK,EACL,WAAW,EACX,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,sBAAsB,+BAgBxB;kBAtBQ,iBAAiB;;;AAyB1B,MAAM,WAAW,oBACf,SAAQ,IAAI,CAAC,cAAc,CAAC,OAAO,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AA2ED,MAAM,WAAW,sBAAuB,SAAQ,SAAS;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;;;GAIG;AACH,iBAAS,iBAAiB,CAAC,EACzB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,sBAAsB,+BASxB;kBAbQ,iBAAiB;;;AAgB1B,eAAO,MAAM,WAAW;;;;;;CAMtB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/bottom-sheet/index.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/number-input/index.tsx"],"names":[],"mappings":"AA4BA,OAAO,EAAE,SAAS,EAAQ,KAAK,cAAc,EAAkB,MAAM,cAAc,CAAC;AACpF,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAc1D,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAkCvB,CAAC;AAuCH,KAAK,uBAAuB,GAAG,YAAY,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAExE,MAAM,WAAW,gBACf,SAAQ,IAAI,CAAC,uBAAuB,EAAE,SAAS,GAAG,UAAU,CAAC,EAC3D,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,QAAQ,GAAG,aAAa,GAAG,eAAe,CAAC;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iFAAiF;IACjF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,yEAAyE;IACzE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,wGAsLvB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/number-input/index.tsx"],"names":[],"mappings":"AA6BA,OAAO,EAAE,SAAS,EAAQ,KAAK,cAAc,EAAkB,MAAM,cAAc,CAAC;AACpF,OAAO,EAAM,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAe1D,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2CAkCvB,CAAC;AAuCH,KAAK,uBAAuB,GAAG,YAAY,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAExE,MAAM,WAAW,gBACf,SAAQ,IAAI,CAAC,uBAAuB,EAAE,SAAS,GAAG,UAAU,CAAC,EAC3D,IAAI,CAAC,cAAc,EAAE,SAAS,GAAG,QAAQ,GAAG,aAAa,GAAG,eAAe,CAAC;IAC9E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iFAAiF;IACjF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kDAAkD;IAClD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;;OAIG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,yEAAyE;IACzE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,wGA+LvB,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * The hold-to-repeat timer behind NumberInput's − and + buttons.
3
+ *
4
+ * A press steps once, then after `delay` keeps stepping every `interval` until
5
+ * it is stopped. Two things keep it from running away:
6
+ *
7
+ * - There is only ever one timer. `start` clears whatever is already running,
8
+ * because a press-in does not always arrive after the previous press-out —
9
+ * quick taps on Android can deliver two press-ins in a row, and a second
10
+ * timer started over the first leaves the first with no handle to clear it.
11
+ * - The step reports whether another one is possible. At a bound the button
12
+ * disables, and a disabled button is not guaranteed to deliver the release
13
+ * that would stop the timer, so the timer stops itself there instead.
14
+ *
15
+ * Kept free of React so it can be tested on its own.
16
+ */
17
+ export interface Repeater {
18
+ /** Step once now, then repeat until `stop`. Replaces any running repeat. */
19
+ start: (step: () => boolean) => void;
20
+ /** Stop repeating. Safe to call when nothing is running. */
21
+ stop: () => void;
22
+ }
23
+ export declare function createRepeater(delay: number, interval: number): Repeater;
24
+ //# sourceMappingURL=number-input-repeat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number-input-repeat.d.ts","sourceRoot":"","sources":["../../../../../src/components/number-input/number-input-repeat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,MAAM,WAAW,QAAQ;IACvB,4EAA4E;IAC5E,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,OAAO,KAAK,IAAI,CAAC;IACrC,4DAA4D;IAC5D,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ,CA8BxE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "panelui-native",
3
- "version": "0.102.1",
3
+ "version": "0.102.3",
4
4
  "description": "High-performance React Native UI components for Expo. Semantic design tokens, powered by Uniwind (Tailwind v4) and Reanimated.",
5
5
  "main": "./lib/module/index.js",
6
6
  "module": "./lib/module/index.js",
@@ -15,6 +15,7 @@ import {
15
15
  type ReactNode,
16
16
  } from 'react';
17
17
  import {
18
+ Platform,
18
19
  Pressable,
19
20
  StyleSheet,
20
21
  useWindowDimensions,
@@ -100,8 +101,9 @@ const sheetVariants = tv({
100
101
  // rule through the middle of nothing.
101
102
  false: 'rounded-t-3xl border-b-0',
102
103
  // Floating: all four edges are real, so all four are drawn and all four
103
- // corners are rounded.
104
- true: 'mx-4 mb-6 rounded-3xl',
104
+ // corners are rounded. The bottom gap depends on the safe area, so it is
105
+ // set in the style rather than here — see `detachedGap`.
106
+ true: 'mx-4 rounded-3xl',
105
107
  },
106
108
  },
107
109
  defaultVariants: {
@@ -352,7 +354,8 @@ export interface BottomSheetContentProps extends ViewProps {
352
354
  * bottom, so it reads as a card laid over the app rather than a drawer
353
355
  * pulled out of it. All four corners round and the bottom border comes back,
354
356
  * since a floating sheet has four real edges where a docked one has three.
355
- * Ignored by the native sheet, which the platform positions itself.
357
+ * On Android it floats above the navigation bar, so the system buttons stay
358
+ * uncovered. Ignored by the native sheet, which the platform positions itself.
356
359
  */
357
360
  detached?: boolean;
358
361
  /**
@@ -689,6 +692,16 @@ function BottomSheetContent({
689
692
  ),
690
693
  }));
691
694
 
695
+ /*
696
+ * How far a detached sheet floats above the bottom of the screen.
697
+ *
698
+ * On iOS it floats over the home indicator, which only takes a swipe. On
699
+ * Android the bottom inset can be the three-button navigation bar, whose
700
+ * buttons have to stay reachable, so the sheet sits above the inset.
701
+ */
702
+ const detachedGap =
703
+ Platform.OS === 'android' ? Math.max(insets.bottom + 12, 24) : 24;
704
+
692
705
  /*
693
706
  * A sized sheet is clamped rather than handed its fraction outright.
694
707
  * `insets.top` is the status bar and the notch, and content that runs under
@@ -699,7 +712,7 @@ function BottomSheetContent({
699
712
  ? undefined
700
713
  : Math.min(
701
714
  screenHeight * SIZE_FRACTION[size],
702
- screenHeight - insets.top - (detached ? 24 : 8)
715
+ screenHeight - insets.top - (detached ? detachedGap : 8)
703
716
  );
704
717
 
705
718
  const surface = useMemo(
@@ -828,10 +841,12 @@ function BottomSheetContent({
828
841
  // the safe-area padding with it.
829
842
  style={[
830
843
  sheetStyle,
831
- // A detached sheet's own bottom margin already clears the home
832
- // indicator, so it takes plain padding rather than stacking the
833
- // inset on top of the gap.
834
- { paddingBottom: detached ? 16 : Math.max(insets.bottom, 16) },
844
+ // A detached sheet's own bottom margin already clears the system
845
+ // bar, so it takes plain padding rather than stacking the inset
846
+ // on top of the gap.
847
+ detached
848
+ ? { marginBottom: detachedGap, paddingBottom: 16 }
849
+ : { paddingBottom: Math.max(insets.bottom, 16) },
835
850
  sizedHeight === undefined ? null : { height: sizedHeight },
836
851
  props.style,
837
852
  ]}
@@ -11,7 +11,8 @@
11
11
  * short delay and then faster, the way a native stepper does — so walking from
12
12
  * 0 to 200 is a press, not two hundred of them. The repeat reads the live
13
13
  * value from a ref rather than a closure, so it never strides off a stale
14
- * number.
14
+ * number, and it stops at a bound on its own rather than waiting for a
15
+ * release a disabled button may never send.
15
16
  *
16
17
  * Typing is allowed to be briefly invalid — an empty field, a lone `-`, a
17
18
  * trailing `.` — because clamping every keystroke fights the person mid-number.
@@ -35,6 +36,7 @@ import { Text } from '../../primitives/text';
35
36
  import { selectionTick } from '../../utils/haptics';
36
37
  import { Label } from '../label';
37
38
  import { normalize, precisionOf } from './number-input-math';
39
+ import { createRepeater } from './number-input-repeat';
38
40
 
39
41
  /** Wait before a held button starts repeating — a tap must not trip it. */
40
42
  const REPEAT_DELAY = 400;
@@ -227,33 +229,42 @@ export const NumberInput = forwardRef<TextInput, NumberInputProps>(
227
229
  const clamped = normalize(next, min, max, step);
228
230
  if (tick && haptics) selectionTick();
229
231
  if (!isControlled) setUncontrolled(clamped);
230
- if (clamped !== value) onValueChange?.(clamped);
232
+ if (clamped !== valueRef.current) onValueChange?.(clamped);
233
+ // Advance the ref now, so the next repeat steps from here even if the
234
+ // render carrying this value has not landed yet.
235
+ valueRef.current = clamped;
231
236
  },
232
- [min, max, step, haptics, isControlled, value, onValueChange]
237
+ [min, max, step, haptics, isControlled, onValueChange]
233
238
  );
234
239
 
235
240
  // --- hold-to-repeat -----------------------------------------------------
236
- const delayRef = useRef<ReturnType<typeof setTimeout> | null>(null);
237
- const intervalRef = useRef<ReturnType<typeof setInterval> | null>(null);
241
+ // The timer outlives the render that started it, so it calls the latest
242
+ // `commit` through a ref instead of the one it was created with.
243
+ const commitRef = useRef(commit);
244
+ commitRef.current = commit;
238
245
 
239
- const stopRepeat = useCallback(() => {
240
- if (delayRef.current) clearTimeout(delayRef.current);
241
- if (intervalRef.current) clearInterval(intervalRef.current);
242
- delayRef.current = null;
243
- intervalRef.current = null;
244
- }, []);
246
+ const repeaterRef = useRef<ReturnType<typeof createRepeater> | null>(null);
247
+ if (!repeaterRef.current) repeaterRef.current = createRepeater(REPEAT_DELAY, REPEAT_INTERVAL);
248
+ const repeater = repeaterRef.current;
245
249
 
250
+ const stopRepeat = repeater.stop;
246
251
  useEffect(() => stopRepeat, [stopRepeat]);
252
+ useEffect(() => {
253
+ if (disabled) stopRepeat();
254
+ }, [disabled, stopRepeat]);
247
255
 
248
256
  const startRepeat = useCallback(
249
257
  (direction: 1 | -1) => {
250
- const nudge = () => commit(valueRef.current + direction * step, true);
251
- nudge();
252
- delayRef.current = setTimeout(() => {
253
- intervalRef.current = setInterval(nudge, REPEAT_INTERVAL);
254
- }, REPEAT_DELAY);
258
+ repeater.start(() => {
259
+ const current = valueRef.current;
260
+ const next = normalize(current + direction * step, min, max, step);
261
+ if (next === current) return false;
262
+ commitRef.current(next, true);
263
+ // Keep going only while there is room for another step.
264
+ return direction > 0 ? next < max : next > min;
265
+ });
255
266
  },
256
- [commit, step]
267
+ [repeater, step, min, max]
257
268
  );
258
269
 
259
270
  const atMin = value <= min;
@@ -0,0 +1,55 @@
1
+ /**
2
+ * The hold-to-repeat timer behind NumberInput's − and + buttons.
3
+ *
4
+ * A press steps once, then after `delay` keeps stepping every `interval` until
5
+ * it is stopped. Two things keep it from running away:
6
+ *
7
+ * - There is only ever one timer. `start` clears whatever is already running,
8
+ * because a press-in does not always arrive after the previous press-out —
9
+ * quick taps on Android can deliver two press-ins in a row, and a second
10
+ * timer started over the first leaves the first with no handle to clear it.
11
+ * - The step reports whether another one is possible. At a bound the button
12
+ * disables, and a disabled button is not guaranteed to deliver the release
13
+ * that would stop the timer, so the timer stops itself there instead.
14
+ *
15
+ * Kept free of React so it can be tested on its own.
16
+ */
17
+
18
+ export interface Repeater {
19
+ /** Step once now, then repeat until `stop`. Replaces any running repeat. */
20
+ start: (step: () => boolean) => void;
21
+ /** Stop repeating. Safe to call when nothing is running. */
22
+ stop: () => void;
23
+ }
24
+
25
+ export function createRepeater(delay: number, interval: number): Repeater {
26
+ let delayTimer: ReturnType<typeof setTimeout> | null = null;
27
+ let intervalTimer: ReturnType<typeof setInterval> | null = null;
28
+ // Bumped by every start and stop. A callback from an earlier generation does
29
+ // nothing, so a timer that fires once more after being cleared cannot step.
30
+ let generation = 0;
31
+
32
+ const stop = () => {
33
+ generation += 1;
34
+ if (delayTimer !== null) clearTimeout(delayTimer);
35
+ if (intervalTimer !== null) clearInterval(intervalTimer);
36
+ delayTimer = null;
37
+ intervalTimer = null;
38
+ };
39
+
40
+ const start = (step: () => boolean) => {
41
+ stop();
42
+ const current = generation;
43
+ if (!step()) return;
44
+ delayTimer = setTimeout(() => {
45
+ if (current !== generation) return;
46
+ delayTimer = null;
47
+ intervalTimer = setInterval(() => {
48
+ if (current !== generation) return;
49
+ if (!step()) stop();
50
+ }, interval);
51
+ }, delay);
52
+ };
53
+
54
+ return { start, stop };
55
+ }