@oxyhq/bloom 0.53.0 → 0.54.1

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.
@@ -18,11 +18,11 @@
18
18
  import { Children, createContext, useCallback, useContext, useEffect, useMemo } from 'react';
19
19
  import { Pressable, StyleSheet, useWindowDimensions, View } from 'react-native';
20
20
  import { Gesture, GestureDetector } from 'react-native-gesture-handler';
21
- import Animated, { Extrapolation, interpolate, interpolateColor, runOnJS, useAnimatedStyle, useSharedValue, withSpring } from 'react-native-reanimated';
21
+ import Animated, { Extrapolation, interpolate, interpolateColor, runOnJS, useAnimatedStyle, useSharedValue, withSpring, withTiming } from 'react-native-reanimated';
22
22
  import { useSafeAreaInsets } from 'react-native-safe-area-context';
23
23
  import { useHaptics } from "../hooks/useHaptics.js";
24
24
  import { setMinimized, useMinimizeState } from "./minimize-context.js";
25
- import { BAR_MARGIN, BLUR_BLEED, EXPANDED_HEIGHT, HIGHLIGHT_EXPANDED, HIGHLIGHT_MINIMIZED, ICON_SIZE, ITEM_GAP, ITEM_PAD_V, LABEL_FONT_SIZE, LONG_PRESS_MIN_DURATION, MINIMIZED_HEIGHT, MINIMIZED_INSET, ROW_PAD_H, SLIDE_SPRING, tabBarBottomGap, useTabBarTheme } from "./shared.js";
25
+ import { BAR_MARGIN, BLUR_BLEED, EXPANDED_HEIGHT, HIGHLIGHT_EXPANDED, HIGHLIGHT_FADE, HIGHLIGHT_MINIMIZED, ICON_SIZE, ITEM_GAP, ITEM_PAD_V, LABEL_FONT_SIZE, LONG_PRESS_MIN_DURATION, MINIMIZED_HEIGHT, MINIMIZED_INSET, ROW_PAD_H, SLIDE_SPRING, tabBarBottomGap, useTabBarTheme } from "./shared.js";
26
26
 
27
27
  /**
28
28
  * What a `TabBarButton` needs from the bar it sits in. `null` when a button is
@@ -44,6 +44,8 @@ function TabBarBody({
44
44
  onIndexLongPress,
45
45
  theme: themeOverrides,
46
46
  haptics = true,
47
+ blur = true,
48
+ maxWidth,
47
49
  style,
48
50
  ...viewProps
49
51
  }) {
@@ -53,13 +55,47 @@ function TabBarBody({
53
55
  } = useWindowDimensions();
54
56
  const minimized = useMinimizeState();
55
57
  const progress = minimized.progress;
58
+ const tabCount = Math.max(Children.count(children), 1);
59
+
60
+ // Is a tab selected at all?
61
+ //
62
+ // The two states this distinguishes are NOT the same thing, and collapsing
63
+ // them would silently kill the highlight for every router consumer:
64
+ //
65
+ // - `activeIndex === undefined` is the FOCUS-DRIVEN path. The bar is not
66
+ // the writer at all — each `TabBarButton` supplies `isFocused` and drives
67
+ // the highlight itself (that is how the adapter keeps it correct through
68
+ // deep links and back gestures), so from the bar's side there is always a
69
+ // selection and the highlight is always visible.
70
+ // - NO SELECTION is `activeIndex` being a number that names no tab:
71
+ // negative, past the last tab, or fractional. Every consumer whose route
72
+ // set is larger than its tab set produces one — a `usePathname()`-derived
73
+ // index is -1 on every screen that is not a tab — and the highlight must
74
+ // then be gone rather than parked outside the pill.
75
+ const hasSelection = activeIndex === undefined || Number.isInteger(activeIndex) && activeIndex >= 0 && activeIndex < tabCount;
56
76
  const slideIndex = useSharedValue(0);
77
+ // Seeded from the CURRENT state, not from 0: a bar that mounts with a
78
+ // selection must show its highlight on the first frame exactly as it always
79
+ // has, and one that mounts without a selection must never flash it.
80
+ const highlightOpacity = useSharedValue(hasSelection ? 1 : 0);
57
81
  const isDragging = useSharedValue(false);
58
82
  const lastTicked = useSharedValue(-1);
59
- const tabCount = Math.max(Children.count(children), 1);
60
83
  const theme = useTabBarTheme(themeOverrides);
61
84
  const impact = useHaptics();
62
85
 
86
+ // The pill's OUTER width (the box the animated minimize inset is applied
87
+ // inside), and the single source of truth for it: the wrap's own layout, the
88
+ // highlight geometry and the `indexAtX` scrub worklet all derive from this one
89
+ // number. They have to, or a tap lands on a tab the highlight is not under —
90
+ // the exact failure `maxWidth` exists to prevent, since narrowing the bar from
91
+ // the outside with a `style` override moves only the pixels.
92
+ //
93
+ // Unconstrained it is what the stretched wrap already measures
94
+ // (`windowWidth - BAR_MARGIN * 2`), so an existing consumer's geometry is
95
+ // unchanged to the pixel. `maxWidth` is a ceiling, never a floor: on a window
96
+ // narrower than it, the bar stays full-bleed.
97
+ const barOuterWidth = maxWidth === undefined ? windowWidth - BAR_MARGIN * 2 : Math.min(windowWidth - BAR_MARGIN * 2, maxWidth);
98
+
63
99
  // Picker-style tick while the highlight crosses tab boundaries mid-drag.
64
100
  // `useHaptics` already no-ops on web, when the optional `expo-haptics` peer
65
101
  // is absent, and when a `BloomHapticsProvider` has haptics turned off — so
@@ -87,8 +123,25 @@ function TabBarBody({
87
123
  if (activeIndex === undefined) return;
88
124
  // While scrubbing the finger owns the highlight; never fight it.
89
125
  if (isDragging.value) return;
90
- slideIndex.value = withSpring(activeIndex, SLIDE_SPRING);
91
- }, [activeIndex, slideIndex, isDragging]);
126
+ if (!hasSelection) {
127
+ // Fade out where it stands. `slideIndex` is deliberately left alone: it
128
+ // is the highlight's POSITION, and there is no position that means
129
+ // "nowhere" — springing it to a sentinel would drag the capsule across
130
+ // the bar on its way out, dragging the active tint over every tab it
131
+ // passed. Visibility is the thing that changed, so visibility is the only
132
+ // thing that animates.
133
+ highlightOpacity.value = withTiming(0, HIGHLIGHT_FADE);
134
+ return;
135
+ }
136
+ // Coming back from fully hidden the capsule APPEARS at the new tab instead
137
+ // of travelling to it: a slide says "the selection moved from here to
138
+ // there", and while it was invisible there was no "here" — sliding from the
139
+ // stale index would animate out of a position the user never saw, and would
140
+ // light up every tab in between on the way. Interrupted mid-fade it is
141
+ // still on screen, so from there it slides as it always does.
142
+ slideIndex.value = highlightOpacity.value === 0 ? activeIndex : withSpring(activeIndex, SLIDE_SPRING);
143
+ highlightOpacity.value = withTiming(1, HIGHLIGHT_FADE);
144
+ }, [activeIndex, hasSelection, slideIndex, highlightOpacity, isDragging]);
92
145
 
93
146
  // Scrubbing: the highlight tracks the finger 1:1 while dragging (no spring —
94
147
  // it must feel attached), haptic ticks fire on boundary crossings, and
@@ -100,13 +153,28 @@ function TabBarBody({
100
153
  'worklet';
101
154
 
102
155
  const sideInset = interpolate(minimizedValue, [0, 1], [0, MINIMIZED_INSET], Extrapolation.CLAMP);
103
- const barWidth = windowWidth - BAR_MARGIN * 2 - sideInset * 2;
156
+ // `event.x` is measured from the left edge of the view the detector is
157
+ // attached to — the animated pill itself, NOT the window and not the wrap
158
+ // around it. Its width is therefore the outer width minus the two
159
+ // animated margins, which is exactly what this computes, constrained or
160
+ // not. (Margins sit outside a view's own box, so x = 0 is the pill's left
161
+ // border edge either way.)
162
+ const barWidth = barOuterWidth - sideInset * 2;
104
163
  const itemWidth = (barWidth - ROW_PAD_H * 2) / tabCount;
105
164
  const raw = (x - ROW_PAD_H) / itemWidth - 0.5;
106
165
  return Math.min(Math.max(raw, 0), tabCount - 1);
107
166
  };
108
- const pan = Gesture.Pan().activeOffsetX([-6, 6]).failOffsetY([-14, 14]).onStart(() => {
167
+ const pan = Gesture.Pan().activeOffsetX([-6, 6]).failOffsetY([-14, 14]).onStart(event => {
109
168
  isDragging.value = true;
169
+ // Arming from the no-selection state: a hidden capsule has no position
170
+ // the finger can pick up, so it starts under the finger rather than at
171
+ // the index it faded out on — which would also make the first boundary
172
+ // tick fire against a phantom position. Mid-fade it is still visible,
173
+ // so it keeps the position it is at, exactly as it always has.
174
+ if (highlightOpacity.value === 0) {
175
+ slideIndex.value = indexAtX(event.x, progress.value);
176
+ }
177
+ highlightOpacity.value = withTiming(1, HIGHLIGHT_FADE);
110
178
  lastTicked.value = Math.round(slideIndex.value);
111
179
  // Scrubbing is a deliberate bar interaction — surface the labels.
112
180
  setMinimized(minimized, 0);
@@ -137,7 +205,10 @@ function TabBarBody({
137
205
  return;
138
206
  }
139
207
  const index = Math.round(indexAtX(event.x, progress.value));
140
- slideIndex.value = withSpring(index, SLIDE_SPRING);
208
+ // Same rule as the controlled path above: appear at the tapped tab when
209
+ // hidden, slide to it when already on screen.
210
+ slideIndex.value = highlightOpacity.value === 0 ? index : withSpring(index, SLIDE_SPRING);
211
+ highlightOpacity.value = withTiming(1, HIGHLIGHT_FADE);
141
212
  setMinimized(minimized, 0);
142
213
  runOnJS(selectIndex)(index);
143
214
  });
@@ -156,7 +227,7 @@ function TabBarBody({
156
227
  runOnJS(longPressIndex)(Math.round(indexAtX(event.x, progress.value)));
157
228
  });
158
229
  return Gesture.Race(pan, tap, longPress);
159
- }, [windowWidth, tabCount, selectIndex, hasLongPress, longPressIndex, tick, isDragging, lastTicked, slideIndex, minimized, progress]);
230
+ }, [barOuterWidth, tabCount, selectIndex, hasLongPress, longPressIndex, tick, isDragging, lastTicked, slideIndex, highlightOpacity, minimized, progress]);
160
231
 
161
232
  // CRITICAL — every shared value and every scalar a mapper READS must appear
162
233
  // in its dependency array. On web WITHOUT the react-native-worklets babel
@@ -207,34 +278,59 @@ function TabBarBody({
207
278
  const barHeight = interpolate(progress.value, [0, 1], [EXPANDED_HEIGHT, MINIMIZED_HEIGHT], Extrapolation.CLAMP);
208
279
  const height = interpolate(progress.value, [0, 1], [HIGHLIGHT_EXPANDED, HIGHLIGHT_MINIMIZED], Extrapolation.CLAMP);
209
280
  const sideInset = interpolate(progress.value, [0, 1], [0, MINIMIZED_INSET], Extrapolation.CLAMP);
210
- const barWidth = windowWidth - BAR_MARGIN * 2 - sideInset * 2;
281
+ // Same `barOuterWidth` the scrub worklet resolves an index from see the
282
+ // note where it is computed.
283
+ const barWidth = barOuterWidth - sideInset * 2;
211
284
  const itemWidth = (barWidth - ROW_PAD_H * 2) / tabCount;
212
285
  return {
213
286
  height,
214
287
  width: itemWidth,
215
288
  borderRadius: height / 2,
216
289
  top: (barHeight - height) / 2,
290
+ // With no selection there is nothing to highlight, and the capsule has to
291
+ // stop being drawn: `slideIndex` is a position in tab units, so an
292
+ // out-of-range one is a real place — one item-width to the LEFT of the
293
+ // first tab, i.e. half outside the pill — not an absence.
294
+ opacity: highlightOpacity.value,
217
295
  transform: [{
218
296
  translateX: ROW_PAD_H + itemWidth * slideIndex.value
219
297
  }]
220
298
  };
221
- }, [progress, slideIndex, windowWidth, tabCount]);
299
+ }, [progress, slideIndex, highlightOpacity, barOuterWidth, tabCount]);
222
300
 
223
301
  // Shared with `useTabBarFootprint`, so a consumer accounting for the bar in
224
302
  // its own layout can never drift from where the bar actually sits.
225
303
  const bottomOffset = tabBarBottomGap(insets.bottom);
304
+
305
+ // How centring and the animated inset compose: centring is STATIC and belongs
306
+ // to the wrap, the inset stays ANIMATED on the pill inside it. The wrap is
307
+ // centred once by layout at a definite width, and the pill's two equal
308
+ // margins keep it centred within that wrap at every point of the minimize
309
+ // animation — neither has to know about the other. Centring the animated view
310
+ // itself would instead mean `alignSelf: 'center'` on a node with no width of
311
+ // its own (its width comes from those margins), which Yoga then sizes from its
312
+ // CONTENT rather than from the constraint.
313
+ //
314
+ // Applied only when `maxWidth` is set: with no width and no `alignSelf` the
315
+ // wrap stretches, which is the original full-bleed behaviour.
316
+ const constrainedWrapStyle = maxWidth === undefined ? null : {
317
+ width: barOuterWidth,
318
+ alignSelf: 'center'
319
+ };
226
320
  const barContext = useMemo(() => ({
227
321
  slideIndex,
322
+ highlightOpacity,
228
323
  isDragging,
229
324
  theme,
230
325
  activeIndex,
231
326
  selectIndex
232
- }), [slideIndex, isDragging, theme, activeIndex, selectIndex]);
327
+ }), [slideIndex, highlightOpacity, isDragging, theme, activeIndex, selectIndex]);
233
328
  return /*#__PURE__*/_jsxs(View, {
234
329
  ...viewProps,
235
330
  style: [styles.root, style],
236
- children: [/*#__PURE__*/_jsx(Blur, {
331
+ children: [blur !== false && /*#__PURE__*/_jsx(Blur, {
237
332
  direction: "bottom",
333
+ intensity: typeof blur === 'object' ? blur.intensity : undefined,
238
334
  style: {
239
335
  position: 'absolute',
240
336
  left: 0,
@@ -245,7 +341,7 @@ function TabBarBody({
245
341
  }), /*#__PURE__*/_jsx(View, {
246
342
  style: [styles.barWrap, {
247
343
  marginBottom: bottomOffset
248
- }],
344
+ }, constrainedWrapStyle],
249
345
  children: /*#__PURE__*/_jsx(GestureDetector, {
250
346
  gesture: gesture,
251
347
  children: /*#__PURE__*/_jsxs(Animated.View, {
@@ -287,6 +383,7 @@ function TabBarButtonBody({
287
383
  const standaloneTheme = useTabBarTheme();
288
384
  const theme = bar?.theme ?? standaloneTheme;
289
385
  const slideIndex = bar?.slideIndex;
386
+ const highlightOpacity = bar?.highlightOpacity;
290
387
  // The two paths meet here: an explicit `isFocused` (router adapter) wins;
291
388
  // otherwise focus comes from the bar's controlled `activeIndex`.
292
389
  const focused = isFocused ?? bar?.activeIndex === index;
@@ -305,14 +402,37 @@ function TabBarButtonBody({
305
402
  // Tint follows the sliding highlight, not navigation focus: whatever the pill
306
403
  // is over lights up — live while scrubbing, traveling on taps. Without a bar
307
404
  // there is nothing to follow, so it falls back to plain focus.
405
+ //
406
+ // Scaled by the highlight's own visibility, so a bar with NO selection leaves
407
+ // nothing lit: distance alone would keep the tab the capsule faded out on
408
+ // fully tinted, which is the same bug as a stray capsule wearing a different
409
+ // hat — a tab that looks selected while nothing is.
308
410
  // (Deps: see the CRITICAL note in `TabBarBody`.)
309
- const activeGlyphStyle = useAnimatedStyle(() => ({
310
- opacity: slideIndex ? 1 - Math.min(Math.abs(slideIndex.value - index), 1) : focused ? 1 : 0
311
- }), [slideIndex, index, focused]);
312
- const labelStyle = useAnimatedStyle(() => ({
313
- opacity: interpolate(progress.value, [0, 0.4], [1, 0], Extrapolation.CLAMP),
314
- color: slideIndex ? interpolateColor(Math.min(Math.abs(slideIndex.value - index), 1), [0, 1], [theme.activeTint, theme.inactiveTint]) : focused ? theme.activeTint : theme.inactiveTint
315
- }), [progress, slideIndex, index, focused, theme]);
411
+ const activeGlyphStyle = useAnimatedStyle(() => {
412
+ if (!slideIndex || !highlightOpacity) return {
413
+ opacity: focused ? 1 : 0
414
+ };
415
+ const proximity = 1 - Math.min(Math.abs(slideIndex.value - index), 1);
416
+ return {
417
+ opacity: highlightOpacity.value * proximity
418
+ };
419
+ }, [slideIndex, highlightOpacity, index, focused]);
420
+ const labelStyle = useAnimatedStyle(() => {
421
+ const opacity = interpolate(progress.value, [0, 0.4], [1, 0], Extrapolation.CLAMP);
422
+ if (!slideIndex || !highlightOpacity) {
423
+ return {
424
+ opacity,
425
+ color: focused ? theme.activeTint : theme.inactiveTint
426
+ };
427
+ }
428
+ // Same quantity as the glyph crossfade above, so a label can never disagree
429
+ // with the icon it sits under.
430
+ const proximity = 1 - Math.min(Math.abs(slideIndex.value - index), 1);
431
+ return {
432
+ opacity,
433
+ color: interpolateColor(highlightOpacity.value * proximity, [0, 1], [theme.inactiveTint, theme.activeTint])
434
+ };
435
+ }, [progress, slideIndex, highlightOpacity, index, focused, theme]);
316
436
 
317
437
  // Height is animated EXPLICITLY (not derived from children) so the icon stays
318
438
  // perfectly centered every frame — layout-driven sizing lags a frame behind
@@ -333,7 +453,12 @@ function TabBarButtonBody({
333
453
  onPress: event => {
334
454
  // The bar's GestureDetector normally consumes touches; this still fires
335
455
  // for assistive-technology activation (VoiceOver) and keyboard focus.
336
- if (bar) bar.slideIndex.value = withSpring(index, SLIDE_SPRING);
456
+ if (bar) {
457
+ // Appear at the tab when hidden, slide to it when visible — the same
458
+ // rule the tap gesture and the controlled path follow.
459
+ bar.slideIndex.value = bar.highlightOpacity.value === 0 ? index : withSpring(index, SLIDE_SPRING);
460
+ bar.highlightOpacity.value = withTiming(1, HIGHLIGHT_FADE);
461
+ }
337
462
  setMinimized(minimized, 0);
338
463
  // Controlled path only. On the focus-driven path the trigger's own
339
464
  // `onPress` below performs the navigation, so reporting the selection
@@ -1 +1 @@
1
- {"version":3,"names":["Children","createContext","useCallback","useContext","useEffect","useMemo","Pressable","StyleSheet","useWindowDimensions","View","Gesture","GestureDetector","Animated","Extrapolation","interpolate","interpolateColor","runOnJS","useAnimatedStyle","useSharedValue","withSpring","useSafeAreaInsets","useHaptics","setMinimized","useMinimizeState","BAR_MARGIN","BLUR_BLEED","EXPANDED_HEIGHT","HIGHLIGHT_EXPANDED","HIGHLIGHT_MINIMIZED","ICON_SIZE","ITEM_GAP","ITEM_PAD_V","LABEL_FONT_SIZE","LONG_PRESS_MIN_DURATION","MINIMIZED_HEIGHT","MINIMIZED_INSET","ROW_PAD_H","SLIDE_SPRING","tabBarBottomGap","useTabBarTheme","jsx","_jsx","jsxs","_jsxs","BarContext","TabBarBody","Surface","Blur","children","activeIndex","onIndexChange","onIndexLongPress","theme","themeOverrides","haptics","style","viewProps","insets","width","windowWidth","minimized","progress","slideIndex","isDragging","lastTicked","tabCount","Math","max","count","impact","tick","selectIndex","index","longPressIndex","hasLongPress","undefined","value","gesture","indexAtX","x","minimizedValue","sideInset","CLAMP","barWidth","itemWidth","raw","min","pan","Pan","activeOffsetX","failOffsetY","onStart","round","onUpdate","event","rounded","onFinalize","tap","Tap","maxDistance","maxDuration","onEnd","success","Race","longPress","LongPress","minDuration","barStyle","height","inset","marginLeft","marginRight","shapeStyle","borderRadius","highlightStyle","barHeight","top","transform","translateX","bottomOffset","bottom","barContext","styles","root","direction","position","left","right","barWrap","marginBottom","highlight","backgroundColor","accessibilityRole","itemRow","Provider","TabBarButtonBody","Glyph","item","isFocused","onPress","pressableProps","bar","standaloneTheme","focused","activeGlyphStyle","opacity","abs","labelStyle","color","activeTint","inactiveTint","boxStyle","accessibilityState","selected","accessibilityLabel","label","state","button","itemBox","tint","size","active","absoluteFill","glyphLayer","Text","numberOfLines","createTabBar","TabBar","props","displayName","createTabBarButton","TabBarButton","create","pointerEvents","marginHorizontal","borderCurve","flex","flexDirection","alignItems","paddingHorizontal","justifyContent","alignSelf","paddingTop","overflow","fontSize","fontWeight","marginTop"],"sourceRoot":"../../../src","sources":["tab-bar/TabBarBase.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Children","createContext","useCallback","useContext","useEffect","useMemo","Pressable","StyleSheet","useWindowDimensions","View","Gesture","GestureDetector","Animated","Extrapolation","interpolate","interpolateColor","runOnJS","useAnimatedStyle","useSharedValue","withSpring","withTiming","useSafeAreaInsets","useHaptics","setMinimized","useMinimizeState","BAR_MARGIN","BLUR_BLEED","EXPANDED_HEIGHT","HIGHLIGHT_EXPANDED","HIGHLIGHT_FADE","HIGHLIGHT_MINIMIZED","ICON_SIZE","ITEM_GAP","ITEM_PAD_V","LABEL_FONT_SIZE","LONG_PRESS_MIN_DURATION","MINIMIZED_HEIGHT","MINIMIZED_INSET","ROW_PAD_H","SLIDE_SPRING","tabBarBottomGap","useTabBarTheme","jsx","_jsx","jsxs","_jsxs","BarContext","TabBarBody","Surface","Blur","children","activeIndex","onIndexChange","onIndexLongPress","theme","themeOverrides","haptics","blur","maxWidth","style","viewProps","insets","width","windowWidth","minimized","progress","tabCount","Math","max","count","hasSelection","undefined","Number","isInteger","slideIndex","highlightOpacity","isDragging","lastTicked","impact","barOuterWidth","min","tick","selectIndex","index","longPressIndex","hasLongPress","value","gesture","indexAtX","x","minimizedValue","sideInset","CLAMP","barWidth","itemWidth","raw","pan","Pan","activeOffsetX","failOffsetY","onStart","event","round","onUpdate","rounded","onFinalize","tap","Tap","maxDistance","maxDuration","onEnd","success","Race","longPress","LongPress","minDuration","barStyle","height","inset","marginLeft","marginRight","shapeStyle","borderRadius","highlightStyle","barHeight","top","opacity","transform","translateX","bottomOffset","bottom","constrainedWrapStyle","alignSelf","barContext","styles","root","direction","intensity","position","left","right","barWrap","marginBottom","highlight","backgroundColor","accessibilityRole","itemRow","Provider","TabBarButtonBody","Glyph","item","isFocused","onPress","pressableProps","bar","standaloneTheme","focused","activeGlyphStyle","proximity","abs","labelStyle","color","activeTint","inactiveTint","boxStyle","accessibilityState","selected","accessibilityLabel","label","state","button","itemBox","tint","size","active","absoluteFill","glyphLayer","Text","numberOfLines","createTabBar","TabBar","props","displayName","createTabBarButton","TabBarButton","create","pointerEvents","marginHorizontal","borderCurve","flex","flexDirection","alignItems","paddingHorizontal","justifyContent","paddingTop","overflow","fontSize","fontWeight","marginTop"],"sourceRoot":"../../../src","sources":["tab-bar/TabBarBase.tsx"],"mappings":"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","ignoreList":[]}
@@ -78,6 +78,20 @@ export const SLIDE_SPRING = {
78
78
  dampingRatio: 0.82
79
79
  };
80
80
 
81
+ /**
82
+ * Fade for the highlight coming and going when the selection does — an
83
+ * `activeIndex` that names no tab (see `TabBarProps.activeIndex`).
84
+ *
85
+ * A timing, not a spring, and deliberately shorter than {@link SLIDE_SPRING}:
86
+ * appearing and disappearing is a change of STATE, not a movement, so it must
87
+ * not read as a second animation racing the slide. The capsule fades where it
88
+ * stands — moving it out of view instead would drag it the length of the bar on
89
+ * its way out and sweep the active tint across every tab it passed.
90
+ */
91
+ export const HIGHLIGHT_FADE = {
92
+ duration: 160
93
+ };
94
+
81
95
  /**
82
96
  * How long a press must be held before `onIndexLongPress` fires.
83
97
  *
@@ -1 +1 @@
1
- {"version":3,"names":["useMemo","withAlpha","useTheme","EXPANDED_HEIGHT","MINIMIZED_HEIGHT","MINIMIZED_INSET","BAR_MARGIN","ROW_PAD_H","LABEL_HEIGHT","ICON_SIZE","ITEM_GAP","LABEL_BLOCK","ITEM_PAD_V","HIGHLIGHT_EXPANDED","HIGHLIGHT_MINIMIZED","BLUR_BLEED","LABEL_FONT_SIZE","SAFE_AREA_ABSORBED","MIN_BOTTOM_GAP","tabBarBottomGap","bottomInset","Math","max","SLIDE_SPRING","duration","dampingRatio","LONG_PRESS_MIN_DURATION","resolveTabBarTheme","colors","overrides","activeTint","text","inactiveTint","textSecondary","highlight","contrast50","glassTint","background","solidFallback","backgroundSecondary","useTabBarTheme"],"sourceRoot":"../../../src","sources":["tab-bar/shared.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useMemo","withAlpha","useTheme","EXPANDED_HEIGHT","MINIMIZED_HEIGHT","MINIMIZED_INSET","BAR_MARGIN","ROW_PAD_H","LABEL_HEIGHT","ICON_SIZE","ITEM_GAP","LABEL_BLOCK","ITEM_PAD_V","HIGHLIGHT_EXPANDED","HIGHLIGHT_MINIMIZED","BLUR_BLEED","LABEL_FONT_SIZE","SAFE_AREA_ABSORBED","MIN_BOTTOM_GAP","tabBarBottomGap","bottomInset","Math","max","SLIDE_SPRING","duration","dampingRatio","HIGHLIGHT_FADE","LONG_PRESS_MIN_DURATION","resolveTabBarTheme","colors","overrides","activeTint","text","inactiveTint","textSecondary","highlight","contrast50","glassTint","background","solidFallback","backgroundSecondary","useTabBarTheme"],"sourceRoot":"../../../src","sources":["tab-bar/shared.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"TabBarBase.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/TabBarBase.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAOL,KAAK,aAAa,EACnB,MAAM,OAAO,CAAC;AAgBf,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,OAAO,EAiBL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAe,MAAM,SAAS,CAAC;AA0a3E;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAC1C,IAAI,EAAE,aAAa,CAAC,oBAAoB,CAAC;YAElB,WAAW;;EAGnC;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC;YAC1C,iBAAiB;;EAG/C"}
1
+ {"version":3,"file":"TabBarBase.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/TabBarBase.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAOL,KAAK,aAAa,EACnB,MAAM,OAAO,CAAC;AAiBf,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,OAAO,EAkBL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAe,MAAM,SAAS,CAAC;AA4iB3E;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAC1C,IAAI,EAAE,aAAa,CAAC,oBAAoB,CAAC;YAElB,WAAW;;EAGnC;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC;YAC1C,iBAAiB;;EAG/C"}
@@ -44,6 +44,19 @@ export declare const SLIDE_SPRING: {
44
44
  duration: number;
45
45
  dampingRatio: number;
46
46
  };
47
+ /**
48
+ * Fade for the highlight coming and going when the selection does — an
49
+ * `activeIndex` that names no tab (see `TabBarProps.activeIndex`).
50
+ *
51
+ * A timing, not a spring, and deliberately shorter than {@link SLIDE_SPRING}:
52
+ * appearing and disappearing is a change of STATE, not a movement, so it must
53
+ * not read as a second animation racing the slide. The capsule fades where it
54
+ * stands — moving it out of view instead would drag it the length of the bar on
55
+ * its way out and sweep the active tint across every tab it passed.
56
+ */
57
+ export declare const HIGHLIGHT_FADE: {
58
+ duration: number;
59
+ };
47
60
  /**
48
61
  * How long a press must be held before `onIndexLongPress` fires.
49
62
  *
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/shared.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAWvD,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,4EAA4E;AAC5E,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,qEAAqE;AACrE,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,8DAA8D;AAC9D,eAAO,MAAM,SAAS,IAAI,CAAC;AAC3B,eAAO,MAAM,YAAY,KAAK,CAAC;AAC/B,eAAO,MAAM,SAAS,KAAK,CAAC;AAC5B;;;GAGG;AACH,eAAO,MAAM,QAAQ,IAAI,CAAC;AAC1B,eAAO,MAAM,WAAW,QAA0B,CAAC;AACnD,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB,QAA2C,CAAC;AAC3E,eAAO,MAAM,mBAAmB,QAA6B,CAAC;AAC9D,iEAAiE;AACjE,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,uEAAuE;AACvE,eAAO,MAAM,eAAe,MAAM,CAAC;AAWnC;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY;;;CAAwC,CAAC;AAElE;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAM3C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAC/B,WAAW,CAQb;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAe5E;AAaD,MAAM,WAAW,kBAAkB;IACjC,yEAAyE;IACzE,KAAK,EAAE,WAAW,CAAC;IACnB;;;;;;;;;;;;OAYG;IACH,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,UAAU,CAAC;IACjB,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/shared.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAWvD,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,4EAA4E;AAC5E,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,qEAAqE;AACrE,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,8DAA8D;AAC9D,eAAO,MAAM,SAAS,IAAI,CAAC;AAC3B,eAAO,MAAM,YAAY,KAAK,CAAC;AAC/B,eAAO,MAAM,SAAS,KAAK,CAAC;AAC5B;;;GAGG;AACH,eAAO,MAAM,QAAQ,IAAI,CAAC;AAC1B,eAAO,MAAM,WAAW,QAA0B,CAAC;AACnD,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB,QAA2C,CAAC;AAC3E,eAAO,MAAM,mBAAmB,QAA6B,CAAC;AAC9D,iEAAiE;AACjE,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,uEAAuE;AACvE,eAAO,MAAM,eAAe,MAAM,CAAC;AAWnC;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY;;;CAAwC,CAAC;AAElE;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc;;CAAoB,CAAC;AAEhD;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAM3C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAC/B,WAAW,CAQb;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAe5E;AAaD,MAAM,WAAW,kBAAkB;IACjC,yEAAyE;IACzE,KAAK,EAAE,WAAW,CAAC;IACnB;;;;;;;;;;;;OAYG;IACH,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,UAAU,CAAC;IACjB,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB"}
@@ -75,6 +75,18 @@ export type TabBarProps = ViewProps & {
75
75
  * highlight and springs it here whenever this changes. Use this when there is
76
76
  * no router in play; the router adapter uses the per-button `isFocused` path
77
77
  * instead (see {@link TabBarButtonProps.isFocused}) and must NOT pass this.
78
+ *
79
+ * An index that names NO tab — negative, past the last tab, or fractional —
80
+ * means no selection: the highlight fades out where it stands and no tab is
81
+ * left tinted. Pass one whenever the current screen is not a tab; an index
82
+ * derived from the route (`TABS.findIndex(…)`) is `-1` on every such screen
83
+ * and is correct as-is. Returning to a real index fades the highlight back in
84
+ * AT that tab rather than sliding to it — while it was invisible there was no
85
+ * position to travel from — and scrubbing still arms it under the finger.
86
+ *
87
+ * OMITTING this prop is a different thing entirely and does not hide
88
+ * anything: that is the focus-driven path, where each button drives the
89
+ * highlight from its own `isFocused`.
78
90
  */
79
91
  activeIndex?: number;
80
92
  /**
@@ -104,6 +116,46 @@ export type TabBarProps = ViewProps & {
104
116
  * optional `expo-haptics` peer is absent.
105
117
  */
106
118
  haptics?: boolean;
119
+ /**
120
+ * The progressive blur rising from the bottom edge of the screen behind the
121
+ * pill. Defaults to `true`; `{ intensity }` tunes its strength.
122
+ *
123
+ * Pass `false` to remove it entirely — no blur, and no node left behind. The
124
+ * band is tall (the bar's own bottom gap plus its expanded height plus the
125
+ * bleed above it, 114pt at a zero bottom inset) and full-bleed, so anything a
126
+ * screen floats near the bottom edge — a video scrubber, a FAB — sits INSIDE
127
+ * it and is blurred. That cannot be undone from the outside: `zIndex` only
128
+ * orders siblings within one stacking context, and a screen's FAB is inside
129
+ * an earlier sibling of the bar's host, so no z-order a consumer can write
130
+ * lifts it above this band. Turning the blur off is the only fix that does
131
+ * not also change where the FAB paints relative to everything else.
132
+ *
133
+ * On native the band is ten stacked `expo-blur` layers plus a tail gradient;
134
+ * on web it is one masked `backdrop-filter`. `false` skips both.
135
+ */
136
+ blur?: boolean | {
137
+ intensity?: number;
138
+ };
139
+ /**
140
+ * Maximum width of the pill, in points. No default — omit it and the bar
141
+ * spans the window exactly as it always has.
142
+ *
143
+ * A CEILING, never a floor: on a window narrower than this the bar keeps its
144
+ * full-bleed width, so a phone layout is untouched by any value big enough to
145
+ * matter on a tablet. When it binds, the pill is constrained to this width and
146
+ * CENTRED, and the ITEM geometry follows it — the item width, the sliding
147
+ * highlight's position and the tap/scrub hit-testing all derive from the same
148
+ * constrained width, so a tap still lands on the tab it is visibly over.
149
+ *
150
+ * That last part is why this cannot be done from the outside. Narrowing the
151
+ * bar with a `style` override moves the pixels only: the highlight and the
152
+ * scrub worklet would still divide the WINDOW width by the tab count, leaving
153
+ * the highlight sized and positioned for a bar that is no longer there. On an
154
+ * iPad the unconstrained bar is the reason to reach for this at all — 810pt at
155
+ * 11" portrait, 1342pt in landscape, leaving 21pt glyphs adrift in cells
156
+ * hundreds of points wide.
157
+ */
158
+ maxWidth?: number;
107
159
  };
108
160
  export type TabBarButtonProps = PressableProps & {
109
161
  item: TabBarItem;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9D,MAAM,MAAM,UAAU,GAAG;IACvB,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,4EAA4E;IAC5E,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;;;;;OAUG;IACH,IAAI,EAAE,SAAS,CAAC;IAChB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,SAAS,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG;IACpC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;;;;;;;;;;OAYG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,wEAAwE;IACxE,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG;IAC/C,IAAI,EAAE,UAAU,CAAC;IACjB,gFAAgF;IAChF,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9D,MAAM,MAAM,UAAU,GAAG;IACvB,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,4EAA4E;IAC5E,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;;;;;OAUG;IACH,IAAI,EAAE,SAAS,CAAC;IAChB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,4CAA4C;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,SAAS,EAAE,MAAM,CAAC;IAClB,oEAAoE;IACpE,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG;IACpC;;;;;;;;;;;;;;;;;OAiBG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC;;;;;;;;;;;;OAYG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,wEAAwE;IACxE,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;;;;;;;;;;;OAgBG;IACH,IAAI,CAAC,EAAE,OAAO,GAAG;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACxC;;;;;;;;;;;;;;;;;;OAkBG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG;IAC/C,IAAI,EAAE,UAAU,CAAC;IACjB,gFAAgF;IAChF,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;;;;OASG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"TabBarBase.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/TabBarBase.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAOL,KAAK,aAAa,EACnB,MAAM,OAAO,CAAC;AAgBf,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,OAAO,EAiBL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAe,MAAM,SAAS,CAAC;AA0a3E;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAC1C,IAAI,EAAE,aAAa,CAAC,oBAAoB,CAAC;YAElB,WAAW;;EAGnC;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC;YAC1C,iBAAiB;;EAG/C"}
1
+ {"version":3,"file":"TabBarBase.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/TabBarBase.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAOL,KAAK,aAAa,EACnB,MAAM,OAAO,CAAC;AAiBf,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,OAAO,EAkBL,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACxB,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAe,MAAM,SAAS,CAAC;AA4iB3E;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,aAAa,CAAC,kBAAkB,CAAC,EAC1C,IAAI,EAAE,aAAa,CAAC,oBAAoB,CAAC;YAElB,WAAW;;EAGnC;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC;YAC1C,iBAAiB;;EAG/C"}
@@ -44,6 +44,19 @@ export declare const SLIDE_SPRING: {
44
44
  duration: number;
45
45
  dampingRatio: number;
46
46
  };
47
+ /**
48
+ * Fade for the highlight coming and going when the selection does — an
49
+ * `activeIndex` that names no tab (see `TabBarProps.activeIndex`).
50
+ *
51
+ * A timing, not a spring, and deliberately shorter than {@link SLIDE_SPRING}:
52
+ * appearing and disappearing is a change of STATE, not a movement, so it must
53
+ * not read as a second animation racing the slide. The capsule fades where it
54
+ * stands — moving it out of view instead would drag it the length of the bar on
55
+ * its way out and sweep the active tint across every tab it passed.
56
+ */
57
+ export declare const HIGHLIGHT_FADE: {
58
+ duration: number;
59
+ };
47
60
  /**
48
61
  * How long a press must be held before `onIndexLongPress` fires.
49
62
  *
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/shared.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAWvD,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,4EAA4E;AAC5E,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,qEAAqE;AACrE,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,8DAA8D;AAC9D,eAAO,MAAM,SAAS,IAAI,CAAC;AAC3B,eAAO,MAAM,YAAY,KAAK,CAAC;AAC/B,eAAO,MAAM,SAAS,KAAK,CAAC;AAC5B;;;GAGG;AACH,eAAO,MAAM,QAAQ,IAAI,CAAC;AAC1B,eAAO,MAAM,WAAW,QAA0B,CAAC;AACnD,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB,QAA2C,CAAC;AAC3E,eAAO,MAAM,mBAAmB,QAA6B,CAAC;AAC9D,iEAAiE;AACjE,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,uEAAuE;AACvE,eAAO,MAAM,eAAe,MAAM,CAAC;AAWnC;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY;;;CAAwC,CAAC;AAElE;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAM3C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAC/B,WAAW,CAQb;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAe5E;AAaD,MAAM,WAAW,kBAAkB;IACjC,yEAAyE;IACzE,KAAK,EAAE,WAAW,CAAC;IACnB;;;;;;;;;;;;OAYG;IACH,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,UAAU,CAAC;IACjB,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/tab-bar/shared.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAG7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAWvD,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,4EAA4E;AAC5E,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,qEAAqE;AACrE,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,8DAA8D;AAC9D,eAAO,MAAM,SAAS,IAAI,CAAC;AAC3B,eAAO,MAAM,YAAY,KAAK,CAAC;AAC/B,eAAO,MAAM,SAAS,KAAK,CAAC;AAC5B;;;GAGG;AACH,eAAO,MAAM,QAAQ,IAAI,CAAC;AAC1B,eAAO,MAAM,WAAW,QAA0B,CAAC;AACnD,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB,QAA2C,CAAC;AAC3E,eAAO,MAAM,mBAAmB,QAA6B,CAAC;AAC9D,iEAAiE;AACjE,eAAO,MAAM,UAAU,KAAK,CAAC;AAC7B,uEAAuE;AACvE,eAAO,MAAM,eAAe,MAAM,CAAC;AAWnC;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY;;;CAAwC,CAAC;AAElE;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc;;CAAoB,CAAC;AAEhD;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAM3C;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAC/B,WAAW,CAQb;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAe5E;AAaD,MAAM,WAAW,kBAAkB;IACjC,yEAAyE;IACzE,KAAK,EAAE,WAAW,CAAC;IACnB;;;;;;;;;;;;OAYG;IACH,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,UAAU,CAAC;IACjB,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb;;;;;;OAMG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB"}