@oxyhq/bloom 0.51.0 → 0.52.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.
- package/lib/commonjs/frosted-icon-button/shared.js +11 -1
- package/lib/commonjs/frosted-icon-button/shared.js.map +1 -1
- package/lib/commonjs/tab-bar/TabBarBase.js +30 -5
- package/lib/commonjs/tab-bar/TabBarBase.js.map +1 -1
- package/lib/commonjs/tab-bar/glyph.js +9 -4
- package/lib/commonjs/tab-bar/glyph.js.map +1 -1
- package/lib/commonjs/tab-bar/glyph.native.js +7 -2
- package/lib/commonjs/tab-bar/glyph.native.js.map +1 -1
- package/lib/commonjs/tab-bar/index.js +7 -0
- package/lib/commonjs/tab-bar/index.js.map +1 -1
- package/lib/commonjs/tab-bar/index.web.js +7 -0
- package/lib/commonjs/tab-bar/index.web.js.map +1 -1
- package/lib/commonjs/tab-bar/shared.js +32 -1
- package/lib/commonjs/tab-bar/shared.js.map +1 -1
- package/lib/commonjs/tab-bar/surface-solid.js +43 -0
- package/lib/commonjs/tab-bar/surface-solid.js.map +1 -0
- package/lib/commonjs/tab-bar/surface.js +5 -42
- package/lib/commonjs/tab-bar/surface.js.map +1 -1
- package/lib/commonjs/tab-bar/surface.native.js +65 -8
- package/lib/commonjs/tab-bar/surface.native.js.map +1 -1
- package/lib/commonjs/tab-bar/use-reserved-space.js +50 -0
- package/lib/commonjs/tab-bar/use-reserved-space.js.map +1 -0
- package/lib/module/frosted-icon-button/shared.js +11 -1
- package/lib/module/frosted-icon-button/shared.js.map +1 -1
- package/lib/module/tab-bar/TabBarBase.js +31 -6
- package/lib/module/tab-bar/TabBarBase.js.map +1 -1
- package/lib/module/tab-bar/glyph.js +9 -4
- package/lib/module/tab-bar/glyph.js.map +1 -1
- package/lib/module/tab-bar/glyph.native.js +7 -2
- package/lib/module/tab-bar/glyph.native.js.map +1 -1
- package/lib/module/tab-bar/index.js +1 -0
- package/lib/module/tab-bar/index.js.map +1 -1
- package/lib/module/tab-bar/index.web.js +1 -0
- package/lib/module/tab-bar/index.web.js.map +1 -1
- package/lib/module/tab-bar/shared.js +30 -0
- package/lib/module/tab-bar/shared.js.map +1 -1
- package/lib/module/tab-bar/surface-solid.js +37 -0
- package/lib/module/tab-bar/surface-solid.js.map +1 -0
- package/lib/module/tab-bar/surface.js +10 -23
- package/lib/module/tab-bar/surface.js.map +1 -1
- package/lib/module/tab-bar/surface.native.js +68 -9
- package/lib/module/tab-bar/surface.native.js.map +1 -1
- package/lib/module/tab-bar/use-reserved-space.js +46 -0
- package/lib/module/tab-bar/use-reserved-space.js.map +1 -0
- package/lib/typescript/commonjs/benefit-list/types.d.ts +2 -1
- package/lib/typescript/commonjs/benefit-list/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/fab/types.d.ts +4 -2
- package/lib/typescript/commonjs/fab/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/frosted-icon-button/shared.d.ts +11 -1
- package/lib/typescript/commonjs/frosted-icon-button/shared.d.ts.map +1 -1
- package/lib/typescript/commonjs/frosted-icon-button/types.d.ts +2 -1
- package/lib/typescript/commonjs/frosted-icon-button/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/tab-bar/TabBarBase.d.ts.map +1 -1
- package/lib/typescript/commonjs/tab-bar/glyph.d.ts +1 -1
- package/lib/typescript/commonjs/tab-bar/glyph.d.ts.map +1 -1
- package/lib/typescript/commonjs/tab-bar/glyph.native.d.ts +1 -1
- package/lib/typescript/commonjs/tab-bar/glyph.native.d.ts.map +1 -1
- package/lib/typescript/commonjs/tab-bar/index.d.ts +1 -0
- package/lib/typescript/commonjs/tab-bar/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/tab-bar/index.web.d.ts +1 -0
- package/lib/typescript/commonjs/tab-bar/index.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/tab-bar/shared.d.ts +25 -0
- package/lib/typescript/commonjs/tab-bar/shared.d.ts.map +1 -1
- package/lib/typescript/commonjs/tab-bar/surface-solid.d.ts +6 -0
- package/lib/typescript/commonjs/tab-bar/surface-solid.d.ts.map +1 -0
- package/lib/typescript/commonjs/tab-bar/surface.d.ts +28 -5
- package/lib/typescript/commonjs/tab-bar/surface.d.ts.map +1 -1
- package/lib/typescript/commonjs/tab-bar/surface.native.d.ts.map +1 -1
- package/lib/typescript/commonjs/tab-bar/types.d.ts +43 -4
- package/lib/typescript/commonjs/tab-bar/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/tab-bar/use-reserved-space.d.ts +25 -0
- package/lib/typescript/commonjs/tab-bar/use-reserved-space.d.ts.map +1 -0
- package/lib/typescript/module/benefit-list/types.d.ts +2 -1
- package/lib/typescript/module/benefit-list/types.d.ts.map +1 -1
- package/lib/typescript/module/fab/types.d.ts +4 -2
- package/lib/typescript/module/fab/types.d.ts.map +1 -1
- package/lib/typescript/module/frosted-icon-button/shared.d.ts +11 -1
- package/lib/typescript/module/frosted-icon-button/shared.d.ts.map +1 -1
- package/lib/typescript/module/frosted-icon-button/types.d.ts +2 -1
- package/lib/typescript/module/frosted-icon-button/types.d.ts.map +1 -1
- package/lib/typescript/module/tab-bar/TabBarBase.d.ts.map +1 -1
- package/lib/typescript/module/tab-bar/glyph.d.ts +1 -1
- package/lib/typescript/module/tab-bar/glyph.d.ts.map +1 -1
- package/lib/typescript/module/tab-bar/glyph.native.d.ts +1 -1
- package/lib/typescript/module/tab-bar/glyph.native.d.ts.map +1 -1
- package/lib/typescript/module/tab-bar/index.d.ts +1 -0
- package/lib/typescript/module/tab-bar/index.d.ts.map +1 -1
- package/lib/typescript/module/tab-bar/index.web.d.ts +1 -0
- package/lib/typescript/module/tab-bar/index.web.d.ts.map +1 -1
- package/lib/typescript/module/tab-bar/shared.d.ts +25 -0
- package/lib/typescript/module/tab-bar/shared.d.ts.map +1 -1
- package/lib/typescript/module/tab-bar/surface-solid.d.ts +6 -0
- package/lib/typescript/module/tab-bar/surface-solid.d.ts.map +1 -0
- package/lib/typescript/module/tab-bar/surface.d.ts +28 -5
- package/lib/typescript/module/tab-bar/surface.d.ts.map +1 -1
- package/lib/typescript/module/tab-bar/surface.native.d.ts.map +1 -1
- package/lib/typescript/module/tab-bar/types.d.ts +43 -4
- package/lib/typescript/module/tab-bar/types.d.ts.map +1 -1
- package/lib/typescript/module/tab-bar/use-reserved-space.d.ts +25 -0
- package/lib/typescript/module/tab-bar/use-reserved-space.d.ts.map +1 -0
- package/package.json +2 -8
- package/src/__tests__/TabBar.test.tsx +82 -2
- package/src/__tests__/TabBarGlassFallback.test.tsx +234 -0
- package/src/__tests__/TabBarLongPress.test.tsx +258 -0
- package/src/__tests__/TabBarReservedSpace.test.tsx +150 -0
- package/src/__tests__/TabBarWebFork.test.ts +47 -0
- package/src/__tests__/icon-references.test.ts +243 -0
- package/src/benefit-list/types.ts +2 -1
- package/src/fab/types.ts +4 -2
- package/src/frosted-icon-button/shared.ts +11 -1
- package/src/frosted-icon-button/types.ts +2 -1
- package/src/tab-bar/TabBarBase.tsx +39 -5
- package/src/tab-bar/glyph.native.tsx +5 -2
- package/src/tab-bar/glyph.tsx +8 -4
- package/src/tab-bar/index.ts +1 -0
- package/src/tab-bar/index.web.tsx +1 -0
- package/src/tab-bar/shared.ts +38 -0
- package/src/tab-bar/surface-solid.tsx +40 -0
- package/src/tab-bar/surface.native.tsx +77 -15
- package/src/tab-bar/surface.tsx +10 -29
- package/src/tab-bar/types.ts +43 -4
- package/src/tab-bar/use-reserved-space.ts +44 -0
|
@@ -97,9 +97,19 @@ function resolveFrostedPalette(colors, isDark) {
|
|
|
97
97
|
* Inject `color` as the icon's `fill` — but only as a FALLBACK: if the caller
|
|
98
98
|
* already set an explicit `fill` on the icon element, it wins and the node is
|
|
99
99
|
* returned untouched. Bloom icons resolve their paint as `fill ?? style.color`,
|
|
100
|
-
* so
|
|
100
|
+
* so any bare Bloom icon element gets the theme-aware color for free while an
|
|
101
101
|
* explicitly-colored icon is never overridden. Non-element children (plain
|
|
102
102
|
* text/strings) pass through unchanged.
|
|
103
|
+
*
|
|
104
|
+
* KNOWN LIMIT, deliberately not papered over: an icon component that paints from
|
|
105
|
+
* a `color` PROP rather than from `fill`/`style.color` ignores this entirely, and
|
|
106
|
+
* does so SILENTLY — nothing throws, the glyph renders, it simply never takes the
|
|
107
|
+
* tint. `color` is not injected alongside `fill` because the prop is not ours to
|
|
108
|
+
* claim: components use it for semantic variants (`color="danger"`), so writing an
|
|
109
|
+
* `rgb(…)` string into it can produce a worse failure than the one it fixes, and
|
|
110
|
+
* an icon already carrying its own `color` would be clobbered. Consumers with such
|
|
111
|
+
* a set pre-color the element themselves; the tab bar additionally offers
|
|
112
|
+
* `TabBarItem.activeIcon`, which carries selection by shape instead of by tint.
|
|
103
113
|
*/
|
|
104
114
|
function applyIconColor(node, color) {
|
|
105
115
|
if (! /*#__PURE__*/(0, _react.isValidElement)(node)) return node;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_colorUtils","SIZE_CONFIG","sm","diameter","iconBox","blur","md","resolveFrostedSize","size","Math","max","round","SURFACE_ALPHA","light","dark","SURFACE_ALPHA_HOVER","RING_ALPHA","RING_ALPHA_HOVER","resolveFrostedPalette","colors","isDark","k","surface","withAlpha","text","surfaceHover","ring","ringHover","icon","activeSurface","primary","activeIcon","primaryForeground","focusRing","shadow","applyIconColor","node","color","isValidElement","el","props","fill","cloneElement"],"sourceRoot":"../../../src","sources":["frosted-icon-button/shared.ts"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAEA,IAAAC,WAAA,GAAAD,OAAA;AAIA;;AAUA,MAAME,WAA2D,GAAG;EAClE;EACAC,EAAE,EAAE;IAAEC,QAAQ,EAAE,EAAE;IAAEC,OAAO,EAAE,EAAE;IAAEC,IAAI,EAAE;EAAG,CAAC;EAC3C;EACAC,EAAE,EAAE;IAAEH,QAAQ,EAAE,EAAE;IAAEC,OAAO,EAAE,EAAE;IAAEC,IAAI,EAAE;EAAG;AAC5C,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,kBAAkBA,CAACC,IAAoC,EAAmB;EACxF,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;IAC5B,OAAO;MACLL,QAAQ,EAAEK,IAAI;MACdJ,OAAO,EAAEK,IAAI,CAACC,GAAG,CAAC,EAAE,EAAED,IAAI,CAACE,KAAK,CAACH,IAAI,GAAG,IAAI,CAAC,CAAC;MAC9CH,IAAI,EAAEI,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,KAAK,CAACH,IAAI,GAAG,IAAI,CAAC;IAC3C,CAAC;EACH;EACA,OAAOP,WAAW,CAACO,IAAI,CAAC;AAC1B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMI,aAAa,GAAG;EAAEC,KAAK,EAAE,IAAI;EAAEC,IAAI,EAAE;AAAK,CAAU;AAC1D,MAAMC,mBAAmB,GAAG;EAAEF,KAAK,EAAE,GAAG;EAAEC,IAAI,EAAE;AAAK,CAAU;AAC/D,MAAME,UAAU,GAAG;EAAEH,KAAK,EAAE,IAAI;EAAEC,IAAI,EAAE;AAAK,CAAU;AACvD,MAAMG,gBAAgB,GAAG;EAAEJ,KAAK,EAAE,IAAI;EAAEC,IAAI,EAAE;AAAI,CAAU;;AAE5D;;AA0BA;AACA;AACA;AACA;AACA;AACO,SAASI,qBAAqBA,CAACC,MAAmB,EAAEC,MAAe,EAAkB;EAC1F,MAAMC,CAAC,GAAGD,MAAM,GAAG,MAAM,GAAG,OAAO;EACnC,OAAO;IACLE,OAAO,EAAE,IAAAC,qBAAS,EAACJ,MAAM,CAACK,IAAI,EAAEZ,aAAa,CAACS,CAAC,CAAC,CAAC;IACjDI,YAAY,EAAE,IAAAF,qBAAS,EAACJ,MAAM,CAACK,IAAI,EAAET,mBAAmB,CAACM,CAAC,CAAC,CAAC;IAC5DK,IAAI,EAAE,IAAAH,qBAAS,EAACJ,MAAM,CAACK,IAAI,EAAER,UAAU,CAACK,CAAC,CAAC,CAAC;IAC3CM,SAAS,EAAE,IAAAJ,qBAAS,EAACJ,MAAM,CAACK,IAAI,EAAEP,gBAAgB,CAACI,CAAC,CAAC,CAAC;IACtDO,IAAI,EAAET,MAAM,CAACK,IAAI;IACjBK,aAAa,EAAEV,MAAM,CAACW,OAAO;IAC7BC,UAAU,EAAEZ,MAAM,CAACa,iBAAiB;IACpCC,SAAS,EAAEd,MAAM,CAACW,OAAO;IACzBI,MAAM,EAAEf,MAAM,CAACe;EACjB,CAAC;AACH;;AAEA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,cAAcA,CAACC,IAAe,EAAEC,KAAa,EAAa;EACxE,IAAI,eAAC,IAAAC,qBAAc,EAACF,IAAI,CAAC,EAAE,OAAOA,IAAI;EACtC,MAAMG,EAAE,GAAGH,IAAuB;EAClC,IAAIG,EAAE,CAACC,KAAK,CAACC,IAAI,IAAI,IAAI,EAAE,OAAOL,IAAI;EACtC,oBAAO,IAAAM,mBAAY,EAACH,EAAE,EAAE;IAAEE,IAAI,EAAEJ;EAAM,CAAC,CAAC;AAC1C","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","require","_colorUtils","SIZE_CONFIG","sm","diameter","iconBox","blur","md","resolveFrostedSize","size","Math","max","round","SURFACE_ALPHA","light","dark","SURFACE_ALPHA_HOVER","RING_ALPHA","RING_ALPHA_HOVER","resolveFrostedPalette","colors","isDark","k","surface","withAlpha","text","surfaceHover","ring","ringHover","icon","activeSurface","primary","activeIcon","primaryForeground","focusRing","shadow","applyIconColor","node","color","isValidElement","el","props","fill","cloneElement"],"sourceRoot":"../../../src","sources":["frosted-icon-button/shared.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -48,6 +48,7 @@ function TabBarBody({
|
|
|
48
48
|
children,
|
|
49
49
|
activeIndex,
|
|
50
50
|
onIndexChange,
|
|
51
|
+
onIndexLongPress,
|
|
51
52
|
theme: themeOverrides,
|
|
52
53
|
haptics = true,
|
|
53
54
|
style,
|
|
@@ -78,6 +79,11 @@ function TabBarBody({
|
|
|
78
79
|
// scrubbing makes the content jump under the finger.
|
|
79
80
|
const selectIndex = (0, _react.useCallback)(index => onIndexChange?.(index), [onIndexChange]);
|
|
80
81
|
|
|
82
|
+
// Long press is reported through the same shape, and deliberately does NOT
|
|
83
|
+
// select: it is a secondary action on the tab under the finger.
|
|
84
|
+
const longPressIndex = (0, _react.useCallback)(index => onIndexLongPress?.(index), [onIndexLongPress]);
|
|
85
|
+
const hasLongPress = onIndexLongPress !== undefined;
|
|
86
|
+
|
|
81
87
|
// CONTROLLED path: the bar owns the highlight when `activeIndex` is provided,
|
|
82
88
|
// so it tracks the prop even when a consumer renders custom children instead
|
|
83
89
|
// of `TabBarButton`s. Syncing an imperative animation to a controlled prop is
|
|
@@ -142,8 +148,22 @@ function TabBarBody({
|
|
|
142
148
|
(0, _minimizeContext.setMinimized)(minimized, 0);
|
|
143
149
|
(0, _reactNativeReanimated.runOnJS)(selectIndex)(index);
|
|
144
150
|
});
|
|
145
|
-
return _reactNativeGestureHandler.Gesture.Race(pan, tap);
|
|
146
|
-
|
|
151
|
+
if (!hasLongPress) return _reactNativeGestureHandler.Gesture.Race(pan, tap);
|
|
152
|
+
|
|
153
|
+
// Long press: the ONLY path to one, because the detector consumes the
|
|
154
|
+
// bar's touches and a button's inner `Pressable` therefore never sees a
|
|
155
|
+
// real finger (see `TabBarButtonBody`). Added to the race only when a
|
|
156
|
+
// handler was supplied — an always-armed long press would cancel the pan
|
|
157
|
+
// for anyone who rests a finger before scrubbing, and no existing consumer
|
|
158
|
+
// asked for that. It cannot cost a tap either: the tap gesture gives up at
|
|
159
|
+
// 400ms, before this one can activate at 500ms, so the two are never
|
|
160
|
+
// candidates at the same instant. Resolves its index through the same
|
|
161
|
+
// `indexAtX` worklet as tap and pan, so all three agree on the geometry.
|
|
162
|
+
const longPress = _reactNativeGestureHandler.Gesture.LongPress().minDuration(_shared.LONG_PRESS_MIN_DURATION).onStart(event => {
|
|
163
|
+
(0, _reactNativeReanimated.runOnJS)(longPressIndex)(Math.round(indexAtX(event.x, progress.value)));
|
|
164
|
+
});
|
|
165
|
+
return _reactNativeGestureHandler.Gesture.Race(pan, tap, longPress);
|
|
166
|
+
}, [windowWidth, tabCount, selectIndex, hasLongPress, longPressIndex, tick, isDragging, lastTicked, slideIndex, minimized, progress]);
|
|
147
167
|
|
|
148
168
|
// CRITICAL — every shared value and every scalar a mapper READS must appear
|
|
149
169
|
// in its dependency array. On web WITHOUT the react-native-worklets babel
|
|
@@ -192,7 +212,10 @@ function TabBarBody({
|
|
|
192
212
|
}]
|
|
193
213
|
};
|
|
194
214
|
}, [progress, slideIndex, windowWidth, tabCount]);
|
|
195
|
-
|
|
215
|
+
|
|
216
|
+
// Shared with `useTabBarReservedSpace`, so a consumer reserving layout space
|
|
217
|
+
// for the bar can never drift from where the bar actually sits.
|
|
218
|
+
const bottomOffset = (0, _shared.tabBarBottomGap)(insets.bottom);
|
|
196
219
|
const barContext = (0, _react.useMemo)(() => ({
|
|
197
220
|
slideIndex,
|
|
198
221
|
isDragging,
|
|
@@ -322,13 +345,15 @@ function TabBarButtonBody({
|
|
|
322
345
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Glyph, {
|
|
323
346
|
item: item,
|
|
324
347
|
tint: theme.inactiveTint,
|
|
325
|
-
size: _shared.ICON_SIZE
|
|
348
|
+
size: _shared.ICON_SIZE,
|
|
349
|
+
active: false
|
|
326
350
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
|
|
327
351
|
style: [_reactNative.StyleSheet.absoluteFill, styles.glyphLayer, activeGlyphStyle],
|
|
328
352
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(Glyph, {
|
|
329
353
|
item: item,
|
|
330
354
|
tint: theme.activeTint,
|
|
331
|
-
size: _shared.ICON_SIZE
|
|
355
|
+
size: _shared.ICON_SIZE,
|
|
356
|
+
active: true
|
|
332
357
|
})
|
|
333
358
|
})]
|
|
334
359
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.Text, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_interopRequireWildcard","_reactNativeSafeAreaContext","_useHaptics","_minimizeContext","_shared","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","BarContext","createContext","TabBarBody","Surface","Blur","children","activeIndex","onIndexChange","theme","themeOverrides","haptics","style","viewProps","insets","useSafeAreaInsets","width","windowWidth","useWindowDimensions","minimized","useMinimizeState","progress","slideIndex","useSharedValue","isDragging","lastTicked","tabCount","Math","max","Children","count","useTabBarTheme","impact","useHaptics","tick","useCallback","selectIndex","index","useEffect","undefined","value","withSpring","SLIDE_SPRING","gesture","useMemo","indexAtX","x","minimizedValue","sideInset","interpolate","MINIMIZED_INSET","Extrapolation","CLAMP","barWidth","BAR_MARGIN","itemWidth","ROW_PAD_H","raw","min","pan","Gesture","Pan","activeOffsetX","failOffsetY","onStart","round","setMinimized","onUpdate","event","rounded","runOnJS","onFinalize","tap","Tap","maxDistance","maxDuration","onEnd","success","Race","barStyle","useAnimatedStyle","height","EXPANDED_HEIGHT","MINIMIZED_HEIGHT","marginHorizontal","shapeStyle","borderRadius","highlightStyle","barHeight","HIGHLIGHT_EXPANDED","HIGHLIGHT_MINIMIZED","top","transform","translateX","bottomOffset","bottom","barContext","jsxs","View","styles","root","jsx","direction","position","left","right","BLUR_BLEED","barWrap","marginBottom","GestureDetector","highlight","backgroundColor","accessibilityRole","itemRow","Provider","TabBarButtonBody","Glyph","item","isFocused","onPress","pressableProps","bar","useContext","standaloneTheme","focused","activeGlyphStyle","opacity","abs","labelStyle","color","interpolateColor","activeTint","inactiveTint","boxStyle","Pressable","accessibilityState","selected","accessibilityLabel","label","state","button","itemBox","tint","size","ICON_SIZE","StyleSheet","absoluteFill","glyphLayer","Text","numberOfLines","createTabBar","TabBar","props","displayName","createTabBarButton","TabBarButton","create","pointerEvents","borderCurve","flex","flexDirection","alignItems","paddingHorizontal","justifyContent","alignSelf","paddingTop","ITEM_PAD_V","overflow","fontSize","LABEL_FONT_SIZE","fontWeight","marginTop","ITEM_GAP"],"sourceRoot":"../../../src","sources":["tab-bar/TabBarBase.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_reactNativeGestureHandler","_reactNativeReanimated","_interopRequireWildcard","_reactNativeSafeAreaContext","_useHaptics","_minimizeContext","_shared","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","BarContext","createContext","TabBarBody","Surface","Blur","children","activeIndex","onIndexChange","onIndexLongPress","theme","themeOverrides","haptics","style","viewProps","insets","useSafeAreaInsets","width","windowWidth","useWindowDimensions","minimized","useMinimizeState","progress","slideIndex","useSharedValue","isDragging","lastTicked","tabCount","Math","max","Children","count","useTabBarTheme","impact","useHaptics","tick","useCallback","selectIndex","index","longPressIndex","hasLongPress","undefined","useEffect","value","withSpring","SLIDE_SPRING","gesture","useMemo","indexAtX","x","minimizedValue","sideInset","interpolate","MINIMIZED_INSET","Extrapolation","CLAMP","barWidth","BAR_MARGIN","itemWidth","ROW_PAD_H","raw","min","pan","Gesture","Pan","activeOffsetX","failOffsetY","onStart","round","setMinimized","onUpdate","event","rounded","runOnJS","onFinalize","tap","Tap","maxDistance","maxDuration","onEnd","success","Race","longPress","LongPress","minDuration","LONG_PRESS_MIN_DURATION","barStyle","useAnimatedStyle","height","EXPANDED_HEIGHT","MINIMIZED_HEIGHT","marginHorizontal","shapeStyle","borderRadius","highlightStyle","barHeight","HIGHLIGHT_EXPANDED","HIGHLIGHT_MINIMIZED","top","transform","translateX","bottomOffset","tabBarBottomGap","bottom","barContext","jsxs","View","styles","root","jsx","direction","position","left","right","BLUR_BLEED","barWrap","marginBottom","GestureDetector","highlight","backgroundColor","accessibilityRole","itemRow","Provider","TabBarButtonBody","Glyph","item","isFocused","onPress","pressableProps","bar","useContext","standaloneTheme","focused","activeGlyphStyle","opacity","abs","labelStyle","color","interpolateColor","activeTint","inactiveTint","boxStyle","Pressable","accessibilityState","selected","accessibilityLabel","label","state","button","itemBox","tint","size","ICON_SIZE","active","StyleSheet","absoluteFill","glyphLayer","Text","numberOfLines","createTabBar","TabBar","props","displayName","createTabBarButton","TabBarButton","create","pointerEvents","borderCurve","flex","flexDirection","alignItems","paddingHorizontal","justifyContent","alignSelf","paddingTop","ITEM_PAD_V","overflow","fontSize","LABEL_FONT_SIZE","fontWeight","marginTop","ITEM_GAP"],"sourceRoot":"../../../src","sources":["tab-bar/TabBarBase.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,8 +11,8 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
11
11
|
* Ported from expo-glass-tabs v0.1.1 — src/glass-tab-bar.tsx
|
|
12
12
|
* (MIT © 2026 David Mokos). See the top-level NOTICE.
|
|
13
13
|
*
|
|
14
|
-
* NEUTRAL default variant of a tab glyph: renders the item's own `icon` node
|
|
15
|
-
* tinted for this crossfade layer.
|
|
14
|
+
* NEUTRAL default variant of a tab glyph: renders the item's own `icon` node —
|
|
15
|
+
* or its `activeIcon` on the active layer — tinted for this crossfade layer.
|
|
16
16
|
*
|
|
17
17
|
* `item.icon` is the primary icon API for the whole family — a Bloom icon
|
|
18
18
|
* element, exactly like `TabsTrigger` and `FrostedIconButton` take. `sfSymbol`
|
|
@@ -25,18 +25,23 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
25
25
|
function TabBarGlyph({
|
|
26
26
|
item,
|
|
27
27
|
tint,
|
|
28
|
-
size
|
|
28
|
+
size,
|
|
29
|
+
active
|
|
29
30
|
}) {
|
|
30
31
|
// The tint is injected as the icon's `fill` FALLBACK — an icon that sets its
|
|
31
32
|
// own `fill` (a brand mark, say) keeps it, so the crossfade layers simply
|
|
32
33
|
// render it twice at full opacity and it never flickers.
|
|
34
|
+
//
|
|
35
|
+
// `activeIcon` is what makes the crossfade able to swap NODES: an icon set
|
|
36
|
+
// whose selected state is a different SHAPE (outline → filled) cannot be
|
|
37
|
+
// expressed by tinting one node two ways. Absent, the layer renders `icon`.
|
|
33
38
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
34
39
|
style: {
|
|
35
40
|
height: size,
|
|
36
41
|
alignItems: 'center',
|
|
37
42
|
justifyContent: 'center'
|
|
38
43
|
},
|
|
39
|
-
children: (0, _shared.applyIconColor)(item.icon, tint)
|
|
44
|
+
children: (0, _shared.applyIconColor)(active ? item.activeIcon ?? item.icon : item.icon, tint)
|
|
40
45
|
});
|
|
41
46
|
}
|
|
42
47
|
TabBarGlyph.displayName = 'TabBarGlyph';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_shared","_jsxRuntime","TabBarGlyph","item","tint","size","jsx","View","style","height","alignItems","justifyContent","children","applyIconColor","icon","displayName"],"sourceRoot":"../../../src","sources":["tab-bar/glyph.tsx"],"mappings":";;;;;;AAcA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAA+D,IAAAE,WAAA,GAAAF,OAAA;AAhB/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAMO,SAASG,WAAWA,CAAC;EAAEC,IAAI;EAAEC,IAAI;EAAEC;
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_shared","_jsxRuntime","TabBarGlyph","item","tint","size","active","jsx","View","style","height","alignItems","justifyContent","children","applyIconColor","activeIcon","icon","displayName"],"sourceRoot":"../../../src","sources":["tab-bar/glyph.tsx"],"mappings":";;;;;;AAcA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAA+D,IAAAE,WAAA,GAAAF,OAAA;AAhB/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAMO,SAASG,WAAWA,CAAC;EAAEC,IAAI;EAAEC,IAAI;EAAEC,IAAI;EAAEC;AAAyB,CAAC,EAAE;EAC1E;EACA;EACA;EACA;EACA;EACA;EACA;EACA,oBACE,IAAAL,WAAA,CAAAM,GAAA,EAACT,YAAA,CAAAU,IAAI;IAACC,KAAK,EAAE;MAAEC,MAAM,EAAEL,IAAI;MAAEM,UAAU,EAAE,QAAQ;MAAEC,cAAc,EAAE;IAAS,CAAE;IAAAC,QAAA,EAC3E,IAAAC,sBAAc,EAACR,MAAM,GAAIH,IAAI,CAACY,UAAU,IAAIZ,IAAI,CAACa,IAAI,GAAIb,IAAI,CAACa,IAAI,EAAEZ,IAAI;EAAC,CACtE,CAAC;AAEX;AAEAF,WAAW,CAACe,WAAW,GAAG,aAAa","ignoreList":[]}
|
|
@@ -25,7 +25,8 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
25
25
|
function TabBarGlyph({
|
|
26
26
|
item,
|
|
27
27
|
tint,
|
|
28
|
-
size
|
|
28
|
+
size,
|
|
29
|
+
active
|
|
29
30
|
}) {
|
|
30
31
|
if (item.sfSymbol && _reactNative.Platform.OS === 'ios') {
|
|
31
32
|
// `TabBarItem.sfSymbol` is a plain `string` because `types.ts` may import
|
|
@@ -42,13 +43,17 @@ function TabBarGlyph({
|
|
|
42
43
|
weight: "semibold"
|
|
43
44
|
});
|
|
44
45
|
}
|
|
46
|
+
|
|
47
|
+
// Same node-swapping crossfade as the neutral variant: the active layer takes
|
|
48
|
+
// `activeIcon` when the item has one. An SF Symbol never reaches here, and is
|
|
49
|
+
// tinted natively above, so the tint crossfade remains its correct expression.
|
|
45
50
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
46
51
|
style: {
|
|
47
52
|
height: size,
|
|
48
53
|
alignItems: 'center',
|
|
49
54
|
justifyContent: 'center'
|
|
50
55
|
},
|
|
51
|
-
children: (0, _shared.applyIconColor)(item.icon, tint)
|
|
56
|
+
children: (0, _shared.applyIconColor)(active ? item.activeIcon ?? item.icon : item.icon, tint)
|
|
52
57
|
});
|
|
53
58
|
}
|
|
54
59
|
TabBarGlyph.displayName = 'TabBarGlyph';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_expoSymbols","require","_reactNative","_shared","_jsxRuntime","TabBarGlyph","item","tint","size","sfSymbol","Platform","OS","jsx","SymbolView","name","tintColor","weight","View","style","height","alignItems","justifyContent","children","applyIconColor","icon","displayName"],"sourceRoot":"../../../src","sources":["tab-bar/glyph.native.tsx"],"mappings":";;;;;;AAaA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAA+D,IAAAG,WAAA,GAAAH,OAAA;AAhB/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAOO,SAASI,WAAWA,CAAC;EAAEC,IAAI;EAAEC,IAAI;EAAEC;
|
|
1
|
+
{"version":3,"names":["_expoSymbols","require","_reactNative","_shared","_jsxRuntime","TabBarGlyph","item","tint","size","active","sfSymbol","Platform","OS","jsx","SymbolView","name","tintColor","weight","View","style","height","alignItems","justifyContent","children","applyIconColor","activeIcon","icon","displayName"],"sourceRoot":"../../../src","sources":["tab-bar/glyph.native.tsx"],"mappings":";;;;;;AAaA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAA+D,IAAAG,WAAA,GAAAH,OAAA;AAhB/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAOO,SAASI,WAAWA,CAAC;EAAEC,IAAI;EAAEC,IAAI;EAAEC,IAAI;EAAEC;AAAyB,CAAC,EAAE;EAC1E,IAAIH,IAAI,CAACI,QAAQ,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;IAC1C;IACA;IACA;IACA;IACA;IACA;IACA;IACA,oBACE,IAAAR,WAAA,CAAAS,GAAA,EAACb,YAAA,CAAAc,UAAU;MACTC,IAAI,EAAET,IAAI,CAACI,QAAqB;MAChCM,SAAS,EAAET,IAAK;MAChBC,IAAI,EAAEA,IAAK;MACXS,MAAM,EAAC;IAAU,CAClB,CAAC;EAEN;;EAEA;EACA;EACA;EACA,oBACE,IAAAb,WAAA,CAAAS,GAAA,EAACX,YAAA,CAAAgB,IAAI;IAACC,KAAK,EAAE;MAAEC,MAAM,EAAEZ,IAAI;MAAEa,UAAU,EAAE,QAAQ;MAAEC,cAAc,EAAE;IAAS,CAAE;IAAAC,QAAA,EAC3E,IAAAC,sBAAc,EAACf,MAAM,GAAIH,IAAI,CAACmB,UAAU,IAAInB,IAAI,CAACoB,IAAI,GAAIpB,IAAI,CAACoB,IAAI,EAAEnB,IAAI;EAAC,CACtE,CAAC;AAEX;AAEAF,WAAW,CAACsB,WAAW,GAAG,aAAa","ignoreList":[]}
|
|
@@ -40,11 +40,18 @@ Object.defineProperty(exports, "useTabBarMinimized", {
|
|
|
40
40
|
return _minimizeContext.useTabBarMinimized;
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
|
+
Object.defineProperty(exports, "useTabBarReservedSpace", {
|
|
44
|
+
enumerable: true,
|
|
45
|
+
get: function () {
|
|
46
|
+
return _useReservedSpace.useTabBarReservedSpace;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
43
49
|
var _progressiveBlur = require("../progressive-blur");
|
|
44
50
|
var _TabBarBase = require("./TabBarBase.js");
|
|
45
51
|
var _glyph = require("./glyph");
|
|
46
52
|
var _surface = require("./surface");
|
|
47
53
|
var _minimizeContext = require("./minimize-context.js");
|
|
54
|
+
var _useReservedSpace = require("./use-reserved-space.js");
|
|
48
55
|
/**
|
|
49
56
|
* Ported from expo-glass-tabs v0.1.1 — src/index.ts
|
|
50
57
|
* (MIT © 2026 David Mokos). See the top-level NOTICE.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_progressiveBlur","require","_TabBarBase","_glyph","_surface","_minimizeContext","TabBar","exports","createTabBar","TabBarSurface","ProgressiveBlur","TabBarButton","createTabBarButton","TabBarGlyph"],"sourceRoot":"../../../src","sources":["tab-bar/index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_progressiveBlur","require","_TabBarBase","_glyph","_surface","_minimizeContext","_useReservedSpace","TabBar","exports","createTabBar","TabBarSurface","ProgressiveBlur","TabBarButton","createTabBarButton","TabBarGlyph"],"sourceRoot":"../../../src","sources":["tab-bar/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAKA,IAAAI,gBAAA,GAAAJ,OAAA;AASA,IAAAK,iBAAA,GAAAL,OAAA;AA/BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAMO,MAAMM,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,IAAAE,wBAAY,EAACC,sBAAa,EAAEC,gCAAe,CAAC;AAC3D,MAAMC,YAAY,GAAAJ,OAAA,CAAAI,YAAA,GAAG,IAAAC,8BAAkB,EAACC,kBAAW,CAAC","ignoreList":[]}
|
|
@@ -40,11 +40,18 @@ Object.defineProperty(exports, "useTabBarMinimized", {
|
|
|
40
40
|
return _minimizeContext.useTabBarMinimized;
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
|
+
Object.defineProperty(exports, "useTabBarReservedSpace", {
|
|
44
|
+
enumerable: true,
|
|
45
|
+
get: function () {
|
|
46
|
+
return _useReservedSpace.useTabBarReservedSpace;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
43
49
|
var _indexWeb = require("../progressive-blur/index.web.js");
|
|
44
50
|
var _TabBarBase = require("./TabBarBase.js");
|
|
45
51
|
var _glyph = require("./glyph");
|
|
46
52
|
var _surfaceWeb = require("./surface.web.js");
|
|
47
53
|
var _minimizeContext = require("./minimize-context.js");
|
|
54
|
+
var _useReservedSpace = require("./use-reserved-space.js");
|
|
48
55
|
/**
|
|
49
56
|
* Ported from expo-glass-tabs v0.1.1 — src/index.ts
|
|
50
57
|
* (MIT © 2026 David Mokos). See the top-level NOTICE.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_indexWeb","require","_TabBarBase","_glyph","_surfaceWeb","_minimizeContext","TabBar","exports","createTabBar","TabBarSurface","ProgressiveBlur","TabBarButton","createTabBarButton","TabBarGlyph"],"sourceRoot":"../../../src","sources":["tab-bar/index.web.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_indexWeb","require","_TabBarBase","_glyph","_surfaceWeb","_minimizeContext","_useReservedSpace","TabBar","exports","createTabBar","TabBarSurface","ProgressiveBlur","TabBarButton","createTabBarButton","TabBarGlyph"],"sourceRoot":"../../../src","sources":["tab-bar/index.web.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AAKA,IAAAI,gBAAA,GAAAJ,OAAA;AASA,IAAAK,iBAAA,GAAAL,OAAA;AAjCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAMO,MAAMM,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG,IAAAE,wBAAY,EAACC,yBAAa,EAAEC,yBAAe,CAAC;AAC3D,MAAMC,YAAY,GAAAJ,OAAA,CAAAI,YAAA,GAAG,IAAAC,8BAAkB,EAACC,kBAAW,CAAC","ignoreList":[]}
|
|
@@ -3,8 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.SLIDE_SPRING = exports.ROW_PAD_H = exports.MINIMIZED_INSET = exports.MINIMIZED_HEIGHT = exports.LABEL_HEIGHT = exports.LABEL_FONT_SIZE = exports.LABEL_BLOCK = exports.ITEM_PAD_V = exports.ITEM_GAP = exports.ICON_SIZE = exports.HIGHLIGHT_MINIMIZED = exports.HIGHLIGHT_EXPANDED = exports.EXPANDED_HEIGHT = exports.BLUR_BLEED = exports.BAR_MARGIN = void 0;
|
|
6
|
+
exports.SLIDE_SPRING = exports.ROW_PAD_H = exports.MINIMIZED_INSET = exports.MINIMIZED_HEIGHT = exports.LONG_PRESS_MIN_DURATION = exports.LABEL_HEIGHT = exports.LABEL_FONT_SIZE = exports.LABEL_BLOCK = exports.ITEM_PAD_V = exports.ITEM_GAP = exports.ICON_SIZE = exports.HIGHLIGHT_MINIMIZED = exports.HIGHLIGHT_EXPANDED = exports.EXPANDED_HEIGHT = exports.BLUR_BLEED = exports.BAR_MARGIN = void 0;
|
|
7
7
|
exports.resolveTabBarTheme = resolveTabBarTheme;
|
|
8
|
+
exports.tabBarBottomGap = tabBarBottomGap;
|
|
8
9
|
exports.useTabBarTheme = useTabBarTheme;
|
|
9
10
|
var _react = require("react");
|
|
10
11
|
var _colorUtils = require("../theme/color-utils.js");
|
|
@@ -54,6 +55,27 @@ const BLUR_BLEED = exports.BLUR_BLEED = 44;
|
|
|
54
55
|
/** Label type size. Small by design — the icon carries the meaning. */
|
|
55
56
|
const LABEL_FONT_SIZE = exports.LABEL_FONT_SIZE = 9.5;
|
|
56
57
|
|
|
58
|
+
/**
|
|
59
|
+
* How much of the bottom safe-area inset the bar's own gap absorbs. The pill
|
|
60
|
+
* already floats clear of the content, so sitting the FULL inset below it
|
|
61
|
+
* strands it in the middle of the screen on a home-indicator device.
|
|
62
|
+
*/
|
|
63
|
+
const SAFE_AREA_ABSORBED = 16;
|
|
64
|
+
/** Gap floor, for a device (or a browser) reporting no bottom inset at all. */
|
|
65
|
+
const MIN_BOTTOM_GAP = 12;
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Vertical gap between the bottom of the pill and the bottom of the window.
|
|
69
|
+
*
|
|
70
|
+
* The safe-area inset is folded in HERE, which is why anything reserving layout
|
|
71
|
+
* space for the bar must go through `useTabBarReservedSpace` (which derives its
|
|
72
|
+
* number from this same function) rather than adding `insets.bottom` to a
|
|
73
|
+
* hardcoded height — that double-counts the inset.
|
|
74
|
+
*/
|
|
75
|
+
function tabBarBottomGap(bottomInset) {
|
|
76
|
+
return Math.max(bottomInset - SAFE_AREA_ABSORBED, MIN_BOTTOM_GAP);
|
|
77
|
+
}
|
|
78
|
+
|
|
57
79
|
/**
|
|
58
80
|
* Slide spring: interruptible by design — rapid tab-hopping retargets with
|
|
59
81
|
* preserved velocity. Slight under-damping gives the pill a tiny settle, safe
|
|
@@ -64,6 +86,15 @@ const SLIDE_SPRING = exports.SLIDE_SPRING = {
|
|
|
64
86
|
dampingRatio: 0.82
|
|
65
87
|
};
|
|
66
88
|
|
|
89
|
+
/**
|
|
90
|
+
* How long a press must be held before `onIndexLongPress` fires.
|
|
91
|
+
*
|
|
92
|
+
* Comfortably above the tap gesture's own 400ms ceiling: the two can never both
|
|
93
|
+
* be candidates at the same instant, so arming the long press cannot cost the
|
|
94
|
+
* bar a tap. Matches the platform long-press feel (iOS ~0.5s).
|
|
95
|
+
*/
|
|
96
|
+
const LONG_PRESS_MIN_DURATION = exports.LONG_PRESS_MIN_DURATION = 500;
|
|
97
|
+
|
|
67
98
|
// ---------------------------------------------------------------------------
|
|
68
99
|
// Theme
|
|
69
100
|
// ---------------------------------------------------------------------------
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_colorUtils","_useTheme","EXPANDED_HEIGHT","exports","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","SLIDE_SPRING","duration","dampingRatio","resolveTabBarTheme","colors","overrides","activeTint","text","inactiveTint","textSecondary","highlight","contrast50","glassTint","withAlpha","background","solidFallback","backgroundSecondary","useTabBarTheme","useTheme","useMemo"],"sourceRoot":"../../../src","sources":["tab-bar/shared.ts"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_react","require","_colorUtils","_useTheme","EXPANDED_HEIGHT","exports","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","withAlpha","background","solidFallback","backgroundSecondary","useTabBarTheme","useTheme","useMemo"],"sourceRoot":"../../../src","sources":["tab-bar/shared.ts"],"mappings":";;;;;;;;;AAUA,IAAAA,MAAA,GAAAC,OAAA;AAIA,IAAAC,WAAA,GAAAD,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AAhBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAUA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,MAAMG,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG,EAAE;AAC1B,MAAME,gBAAgB,GAAAD,OAAA,CAAAC,gBAAA,GAAG,EAAE;AAClC;AACO,MAAMC,eAAe,GAAAF,OAAA,CAAAE,eAAA,GAAG,EAAE;AACjC;AACO,MAAMC,UAAU,GAAAH,OAAA,CAAAG,UAAA,GAAG,EAAE;AAC5B;AACO,MAAMC,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAG,CAAC;AACnB,MAAMC,YAAY,GAAAL,OAAA,CAAAK,YAAA,GAAG,EAAE;AACvB,MAAMC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,EAAE;AAC3B;AACA;AACA;AACA;AACO,MAAMC,QAAQ,GAAAP,OAAA,CAAAO,QAAA,GAAG,CAAC;AAClB,MAAMC,WAAW,GAAAR,OAAA,CAAAQ,WAAA,GAAGH,YAAY,GAAGE,QAAQ;AAC3C,MAAME,UAAU,GAAAT,OAAA,CAAAS,UAAA,GAAG,CAAC;AAC3B;AACO,MAAMC,kBAAkB,GAAAV,OAAA,CAAAU,kBAAA,GAAGJ,SAAS,GAAGE,WAAW,GAAGC,UAAU,GAAG,CAAC;AACnE,MAAME,mBAAmB,GAAAX,OAAA,CAAAW,mBAAA,GAAGL,SAAS,GAAGG,UAAU,GAAG,CAAC;AAC7D;AACO,MAAMG,UAAU,GAAAZ,OAAA,CAAAY,UAAA,GAAG,EAAE;AAC5B;AACO,MAAMC,eAAe,GAAAb,OAAA,CAAAa,eAAA,GAAG,GAAG;;AAElC;AACA;AACA;AACA;AACA;AACA,MAAMC,kBAAkB,GAAG,EAAE;AAC7B;AACA,MAAMC,cAAc,GAAG,EAAE;;AAEzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,eAAeA,CAACC,WAAmB,EAAU;EAC3D,OAAOC,IAAI,CAACC,GAAG,CAACF,WAAW,GAAGH,kBAAkB,EAAEC,cAAc,CAAC;AACnE;;AAEA;AACA;AACA;AACA;AACA;AACO,MAAMK,YAAY,GAAApB,OAAA,CAAAoB,YAAA,GAAG;EAAEC,QAAQ,EAAE,GAAG;EAAEC,YAAY,EAAE;AAAK,CAAC;;AAEjE;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,uBAAuB,GAAAvB,OAAA,CAAAuB,uBAAA,GAAG,GAAG;;AAE1C;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,kBAAkBA,CAChCC,MAAmB,EACnBC,SAAgC,EACnB;EACb,OAAO;IACLC,UAAU,EAAED,SAAS,EAAEC,UAAU,IAAIF,MAAM,CAACG,IAAI;IAChDC,YAAY,EAAEH,SAAS,EAAEG,YAAY,IAAIJ,MAAM,CAACK,aAAa;IAC7DC,SAAS,EAAEL,SAAS,EAAEK,SAAS,IAAIN,MAAM,CAACO,UAAU;IACpDC,SAAS,EAAEP,SAAS,EAAEO,SAAS,IAAI,IAAAC,qBAAS,EAACT,MAAM,CAACU,UAAU,EAAE,IAAI,CAAC;IACrEC,aAAa,EAAEV,SAAS,EAAEU,aAAa,IAAI,IAAAF,qBAAS,EAACT,MAAM,CAACY,mBAAmB,EAAE,IAAI;EACvF,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,cAAcA,CAACZ,SAAgC,EAAe;EAC5E,MAAM;IAAED;EAAO,CAAC,GAAG,IAAAc,kBAAQ,EAAC,CAAC;EAC7B,MAAM;IAAEZ,UAAU;IAAEE,YAAY;IAAEE,SAAS;IAAEE,SAAS;IAAEG;EAAc,CAAC,GAAGV,SAAS,IAAI,CAAC,CAAC;EAEzF,OAAO,IAAAc,cAAO,EACZ,MACEhB,kBAAkB,CAACC,MAAM,EAAE;IACzBE,UAAU;IACVE,YAAY;IACZE,SAAS;IACTE,SAAS;IACTG;EACF,CAAC,CAAC,EACJ,CAACX,MAAM,EAAEE,UAAU,EAAEE,YAAY,EAAEE,SAAS,EAAEE,SAAS,EAAEG,aAAa,CACxE,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.SolidTabBarSurface = SolidTabBarSurface;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _reactNativeReanimated = _interopRequireDefault(require("react-native-reanimated"));
|
|
9
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
/**
|
|
12
|
+
* Ported from expo-glass-tabs v0.1.1 — src/glass-tab-bar.tsx
|
|
13
|
+
* (MIT © 2026 David Mokos). See the top-level NOTICE.
|
|
14
|
+
*
|
|
15
|
+
* The tab bar's NON-GLASS capsule surface: a plain animated view filled with the
|
|
16
|
+
* theme's near-opaque fallback. Android, pre-iOS-26 devices and any build without
|
|
17
|
+
* a usable `expo-glass-effect` all paint this.
|
|
18
|
+
*
|
|
19
|
+
* It lives in its own module because TWO variants render it and one of them
|
|
20
|
+
* cannot reach the other: Metro resolves a bare `./surface` to
|
|
21
|
+
* `surface.native.tsx` no matter which file asks, so `surface.native.tsx`
|
|
22
|
+
* importing its neutral sibling for the fallback would import ITSELF. A name with
|
|
23
|
+
* no platform variants resolves to this one file everywhere — which is the whole
|
|
24
|
+
* point, so please do not fold it back into `surface.tsx`.
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
function SolidTabBarSurface({
|
|
28
|
+
theme,
|
|
29
|
+
style
|
|
30
|
+
}) {
|
|
31
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
|
|
32
|
+
style: [_reactNative.StyleSheet.absoluteFill, styles.surface, {
|
|
33
|
+
backgroundColor: theme.solidFallback
|
|
34
|
+
}, style]
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
SolidTabBarSurface.displayName = 'SolidTabBarSurface';
|
|
38
|
+
const styles = _reactNative.StyleSheet.create({
|
|
39
|
+
surface: {
|
|
40
|
+
borderCurve: 'continuous'
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
//# sourceMappingURL=surface-solid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_reactNativeReanimated","_interopRequireDefault","_jsxRuntime","e","__esModule","default","SolidTabBarSurface","theme","style","jsx","View","StyleSheet","absoluteFill","styles","surface","backgroundColor","solidFallback","displayName","create","borderCurve"],"sourceRoot":"../../../src","sources":["tab-bar/surface-solid.tsx"],"mappings":";;;;;;AAeA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,sBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA+C,IAAAG,WAAA,GAAAH,OAAA;AAAA,SAAAE,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAhB/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAMO,SAASG,kBAAkBA,CAAC;EAAEC,KAAK;EAAEC;AAA0B,CAAC,EAAE;EACvE,oBACE,IAAAN,WAAA,CAAAO,GAAA,EAACT,sBAAA,CAAAK,OAAQ,CAACK,IAAI;IACZF,KAAK,EAAE,CACLG,uBAAU,CAACC,YAAY,EACvBC,MAAM,CAACC,OAAO,EACd;MAAEC,eAAe,EAAER,KAAK,CAACS;IAAc,CAAC,EACxCR,KAAK;EACL,CACH,CAAC;AAEN;AAEAF,kBAAkB,CAACW,WAAW,GAAG,oBAAoB;AAErD,MAAMJ,MAAM,GAAGF,uBAAU,CAACO,MAAM,CAAC;EAC/BJ,OAAO,EAAE;IACPK,WAAW,EAAE;EACf;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -3,48 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
-
/**
|
|
12
|
-
* Ported from expo-glass-tabs v0.1.1 — src/glass-tab-bar.tsx
|
|
13
|
-
* (MIT © 2026 David Mokos). See the top-level NOTICE.
|
|
14
|
-
*
|
|
15
|
-
* NEUTRAL default variant of the tab bar's capsule surface: a plain animated
|
|
16
|
-
* view filled with the theme's solid fallback.
|
|
17
|
-
*
|
|
18
|
-
* This is the file resolved by everything that does NOT do React Native's
|
|
19
|
-
* platform-extension resolution — a consumer's `tsc` (which follows Bloom's
|
|
20
|
-
* `"react-native"` source export condition) and any non-Metro bundler reading
|
|
21
|
-
* the published `lib/`. It therefore imports NOTHING platform-specific:
|
|
22
|
-
* `expo-glass-effect` is native-only, and a static import of it from a file a
|
|
23
|
-
* web bundler or a consumer's type-checker resolves would break module
|
|
24
|
-
* resolution outright. Same three-way split, for the same reason, as
|
|
25
|
-
* `theme/native-root-vars{,.native,.web}.ts`.
|
|
26
|
-
*
|
|
27
|
-
* The variants — all three implement `TabBarSurfaceProps` exactly, so the entry
|
|
28
|
-
* modules can swap them freely:
|
|
29
|
-
* - `surface.native.tsx` — iOS/Android (Metro), real `UIGlassEffect` glass;
|
|
30
|
-
* - `surface.web.tsx` — web, a CSS `backdrop-filter`;
|
|
31
|
-
* - this file — everywhere else, the opaque fallback.
|
|
32
|
-
*/
|
|
33
|
-
|
|
34
|
-
function TabBarSurface({
|
|
35
|
-
theme,
|
|
36
|
-
style
|
|
37
|
-
}) {
|
|
38
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
|
|
39
|
-
style: [_reactNative.StyleSheet.absoluteFill, styles.surface, {
|
|
40
|
-
backgroundColor: theme.solidFallback
|
|
41
|
-
}, style]
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
TabBarSurface.displayName = 'TabBarSurface';
|
|
45
|
-
const styles = _reactNative.StyleSheet.create({
|
|
46
|
-
surface: {
|
|
47
|
-
borderCurve: 'continuous'
|
|
6
|
+
Object.defineProperty(exports, "TabBarSurface", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _surfaceSolid.SolidTabBarSurface;
|
|
48
10
|
}
|
|
49
11
|
});
|
|
12
|
+
var _surfaceSolid = require("./surface-solid.js");
|
|
50
13
|
//# sourceMappingURL=surface.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_surfaceSolid","require"],"sourceRoot":"../../../src","sources":["tab-bar/surface.tsx"],"mappings":";;;;;;;;;;;AA2BA,IAAAA,aAAA,GAAAC,OAAA","ignoreList":[]}
|