@multiplatform.one/components 7.7.3 → 7.7.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/cjs/Accordion/index.cjs +4 -0
  2. package/dist/cjs/Accordion/index.native.js +4 -0
  3. package/dist/cjs/Accordion/index.native.js.map +1 -1
  4. package/dist/cjs/AnimateHeight/index.cjs +29 -2
  5. package/dist/cjs/AnimateHeight/index.native.js +30 -2
  6. package/dist/cjs/AnimateHeight/index.native.js.map +1 -1
  7. package/dist/cjs/Collapsible.cjs +48 -0
  8. package/dist/cjs/Collapsible.native.js +56 -0
  9. package/dist/cjs/Collapsible.native.js.map +1 -0
  10. package/dist/cjs/Pagination.cjs +28 -9
  11. package/dist/cjs/Pagination.native.js +28 -9
  12. package/dist/cjs/Pagination.native.js.map +1 -1
  13. package/dist/cjs/SheetModal/index.native.js +49 -25
  14. package/dist/cjs/SheetModal/index.native.js.map +1 -1
  15. package/dist/cjs/Tabs/index.cjs +144 -91
  16. package/dist/cjs/Tabs/index.native.js +186 -123
  17. package/dist/cjs/Tabs/index.native.js.map +1 -1
  18. package/dist/cjs/knobImmuneExports.cjs +0 -1
  19. package/dist/cjs/knobImmuneExports.native.js +0 -1
  20. package/dist/cjs/knobImmuneExports.native.js.map +1 -1
  21. package/dist/cjs/tamagui.cjs +3 -2
  22. package/dist/cjs/tamagui.native.js +2 -1
  23. package/dist/cjs/tamagui.native.js.map +1 -1
  24. package/dist/esm/Accordion/index.mjs +4 -0
  25. package/dist/esm/Accordion/index.mjs.map +1 -1
  26. package/dist/esm/Accordion/index.native.js +4 -0
  27. package/dist/esm/Accordion/index.native.js.map +1 -1
  28. package/dist/esm/AnimateHeight/index.mjs +29 -2
  29. package/dist/esm/AnimateHeight/index.mjs.map +1 -1
  30. package/dist/esm/AnimateHeight/index.native.js +30 -2
  31. package/dist/esm/AnimateHeight/index.native.js.map +1 -1
  32. package/dist/esm/Collapsible.mjs +23 -0
  33. package/dist/esm/Collapsible.mjs.map +1 -0
  34. package/dist/esm/Collapsible.native.js +28 -0
  35. package/dist/esm/Collapsible.native.js.map +1 -0
  36. package/dist/esm/Pagination.mjs +28 -9
  37. package/dist/esm/Pagination.mjs.map +1 -1
  38. package/dist/esm/Pagination.native.js +28 -9
  39. package/dist/esm/Pagination.native.js.map +1 -1
  40. package/dist/esm/SheetModal/index.native.js +49 -25
  41. package/dist/esm/SheetModal/index.native.js.map +1 -1
  42. package/dist/esm/Tabs/index.mjs +144 -91
  43. package/dist/esm/Tabs/index.mjs.map +1 -1
  44. package/dist/esm/Tabs/index.native.js +186 -123
  45. package/dist/esm/Tabs/index.native.js.map +1 -1
  46. package/dist/esm/knobImmuneExports.mjs +0 -1
  47. package/dist/esm/knobImmuneExports.mjs.map +1 -1
  48. package/dist/esm/knobImmuneExports.native.js +0 -1
  49. package/dist/esm/knobImmuneExports.native.js.map +1 -1
  50. package/dist/esm/tamagui.mjs +2 -1
  51. package/dist/esm/tamagui.mjs.map +1 -1
  52. package/dist/esm/tamagui.native.js +2 -1
  53. package/dist/esm/tamagui.native.js.map +1 -1
  54. package/dist/jsx/Accordion/index.mjs +4 -0
  55. package/dist/jsx/Accordion/index.mjs.map +1 -1
  56. package/dist/jsx/Accordion/index.native.js +4 -0
  57. package/dist/jsx/Accordion/index.native.js.map +1 -1
  58. package/dist/jsx/AnimateHeight/index.mjs +29 -2
  59. package/dist/jsx/AnimateHeight/index.mjs.map +1 -1
  60. package/dist/jsx/AnimateHeight/index.native.js +30 -2
  61. package/dist/jsx/AnimateHeight/index.native.js.map +1 -1
  62. package/dist/jsx/Collapsible.mjs +23 -0
  63. package/dist/jsx/Collapsible.mjs.map +1 -0
  64. package/dist/jsx/Collapsible.native.js +56 -0
  65. package/dist/jsx/Collapsible.native.js.map +1 -0
  66. package/dist/jsx/Pagination.mjs +28 -9
  67. package/dist/jsx/Pagination.mjs.map +1 -1
  68. package/dist/jsx/Pagination.native.js +28 -9
  69. package/dist/jsx/Pagination.native.js.map +1 -1
  70. package/dist/jsx/SheetModal/index.native.js +49 -25
  71. package/dist/jsx/SheetModal/index.native.js.map +1 -1
  72. package/dist/jsx/Tabs/index.mjs +144 -91
  73. package/dist/jsx/Tabs/index.mjs.map +1 -1
  74. package/dist/jsx/Tabs/index.native.js +186 -123
  75. package/dist/jsx/Tabs/index.native.js.map +1 -1
  76. package/dist/jsx/knobImmuneExports.mjs +0 -1
  77. package/dist/jsx/knobImmuneExports.mjs.map +1 -1
  78. package/dist/jsx/knobImmuneExports.native.js +0 -1
  79. package/dist/jsx/knobImmuneExports.native.js.map +1 -1
  80. package/dist/jsx/tamagui.mjs +2 -1
  81. package/dist/jsx/tamagui.mjs.map +1 -1
  82. package/dist/jsx/tamagui.native.js +2 -1
  83. package/dist/jsx/tamagui.native.js.map +1 -1
  84. package/package.json +9 -9
  85. package/src/Accordion/index.tsx +7 -1
  86. package/src/AnimateHeight/AnimateHeight.native.spec.tsx +51 -0
  87. package/src/AnimateHeight/index.tsx +30 -5
  88. package/src/Collapsible.tsx +23 -0
  89. package/src/Pagination.simple.spec.tsx +23 -0
  90. package/src/Pagination.stories.tsx +8 -0
  91. package/src/Pagination.tsx +27 -10
  92. package/src/SheetModal/SheetModal.native.spec.tsx +138 -0
  93. package/src/SheetModal/index.native.tsx +59 -26
  94. package/src/Tabs/Tabs.bandColor.spec.tsx +23 -0
  95. package/src/Tabs/Tabs.native.spec.tsx +35 -0
  96. package/src/Tabs/Tabs.spec.tsx +51 -1
  97. package/src/Tabs/Tabs.stories.tsx +27 -1
  98. package/src/Tabs/index.tsx +266 -187
  99. package/src/disclosureForm.spec.tsx +57 -0
  100. package/src/disclosureNativeProps.spec.tsx +35 -0
  101. package/src/knobImmuneExports.ts +0 -2
  102. package/src/primitives.spec.tsx +19 -4
  103. package/src/tamagui.ts +3 -1
  104. package/types/Accordion/index.d.ts +2 -0
  105. package/types/Accordion/index.d.ts.map +1 -1
  106. package/types/AnimateHeight/index.d.ts +3 -4
  107. package/types/AnimateHeight/index.d.ts.map +1 -1
  108. package/types/Collapsible.d.ts +19 -0
  109. package/types/Collapsible.d.ts.map +1 -0
  110. package/types/Pagination.d.ts +1 -1
  111. package/types/Pagination.d.ts.map +1 -1
  112. package/types/SheetModal/index.native.d.ts.map +1 -1
  113. package/types/Tabs/index.d.ts +7 -3
  114. package/types/Tabs/index.d.ts.map +1 -1
  115. package/types/knobImmuneExports.d.ts.map +1 -1
  116. package/types/tamagui.d.ts +2 -1
  117. package/types/tamagui.d.ts.map +1 -1
@@ -70,18 +70,6 @@ function SheetModal(param) {
70
70
  var handleBackdropPress = (0, import_react.useCallback)(function () {
71
71
  if (backdropArmed) close();
72
72
  }, [backdropArmed, close]);
73
- (0, import_react.useEffect)(function () {
74
- if (!open) {
75
- setBackdropArmed(false);
76
- if (armTimerRef.current) {
77
- clearTimeout(armTimerRef.current);
78
- armTimerRef.current = null;
79
- }
80
- }
81
- return function () {
82
- if (armTimerRef.current) clearTimeout(armTimerRef.current);
83
- };
84
- }, [open]);
85
73
  var available = Math.max(0, windowHeight - keyboardInset);
86
74
  var maxHeight = Math.max(import_detents.minSheetHeight, Math.round(Math.min(windowHeight * sheetMaxHeightRatio, available - backdropStrip)));
87
75
  var [measuredHeight, setMeasuredHeight] = (0, import_react.useState)(0);
@@ -99,11 +87,8 @@ function SheetModal(param) {
99
87
  var detentsRef = (0, import_react.useRef)(detents);
100
88
  travelRef.current = travel;
101
89
  detentsRef.current = detents;
102
- (0, import_react.useEffect)(function () {
103
- if (open) return;
104
- translateY.setValue(travelRef.current);
105
- restRef.current = travelRef.current;
106
- }, [open, translateY]);
90
+ var presentationRef = (0, import_react.useRef)(0);
91
+ var activeRef = (0, import_react.useRef)(false);
107
92
  var settleTo = (0, import_react.useCallback)(function (toValue) {
108
93
  var velocity = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
109
94
  restRef.current = toValue;
@@ -114,11 +99,16 @@ function SheetModal(param) {
114
99
  stiffness: 320,
115
100
  mass: 0.9,
116
101
  overshootClamping: true,
117
- useNativeDriver: true
102
+ // MPO-256: JS driver. A native-driven Animated node inside a core RN
103
+ // Modal does not advance on the New Architecture, and the drag path
104
+ // already writes this value from JS.
105
+ useNativeDriver: false
118
106
  }).start();
119
107
  }, [translateY]);
120
108
  var dismiss = (0, import_react.useCallback)(function () {
121
109
  var velocity = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0;
110
+ if (!activeRef.current) return;
111
+ var presentation = presentationRef.current;
122
112
  restRef.current = travelRef.current;
123
113
  import_react_native.Animated.spring(translateY, {
124
114
  toValue: travelRef.current,
@@ -127,12 +117,12 @@ function SheetModal(param) {
127
117
  stiffness: 400,
128
118
  mass: 0.9,
129
119
  overshootClamping: true,
130
- useNativeDriver: true
120
+ useNativeDriver: false
131
121
  }).start(function (param2) {
132
122
  var {
133
123
  finished
134
124
  } = param2;
135
- if (finished) close();
125
+ if (finished && activeRef.current && presentation === presentationRef.current) close();
136
126
  });
137
127
  }, [close, translateY]);
138
128
  var panResponder = (0, import_react.useMemo)(function () {
@@ -197,10 +187,17 @@ function SheetModal(param) {
197
187
  }
198
188
  });
199
189
  }, [dismiss, settleTo, translateY]);
200
- var handleModalShow = (0, import_react.useCallback)(function () {
190
+ var enteredRef = (0, import_react.useRef)(false);
191
+ var enter = (0, import_react.useCallback)(function () {
192
+ if (!activeRef.current || enteredRef.current) return;
193
+ var presentation = presentationRef.current;
194
+ enteredRef.current = true;
201
195
  if (armTimerRef.current) clearTimeout(armTimerRef.current);
202
196
  armTimerRef.current = setTimeout(function () {
203
- return setBackdropArmed(true);
197
+ if (activeRef.current && presentation === presentationRef.current) {
198
+ armTimerRef.current = null;
199
+ setBackdropArmed(true);
200
+ }
204
201
  }, 280);
205
202
  translateY.setValue(travelRef.current);
206
203
  restRef.current = 0;
@@ -208,16 +205,43 @@ function SheetModal(param) {
208
205
  toValue: 0,
209
206
  duration: 280,
210
207
  easing: import_react_native.Easing.out(import_react_native.Easing.cubic),
211
- useNativeDriver: true
212
- }).start();
208
+ useNativeDriver: false
209
+ }).start(function (param2) {
210
+ var {
211
+ finished
212
+ } = param2;
213
+ if (finished && activeRef.current && presentation === presentationRef.current) translateY.setValue(0);
214
+ });
213
215
  }, [translateY]);
216
+ (0, import_react.useEffect)(function () {
217
+ presentationRef.current += 1;
218
+ activeRef.current = open;
219
+ if (open) {
220
+ enter();
221
+ } else {
222
+ setBackdropArmed(false);
223
+ var parked = travelRef.current || 1e4;
224
+ translateY.setValue(parked);
225
+ restRef.current = parked;
226
+ }
227
+ return function () {
228
+ activeRef.current = false;
229
+ presentationRef.current += 1;
230
+ enteredRef.current = false;
231
+ if (armTimerRef.current) {
232
+ clearTimeout(armTimerRef.current);
233
+ armTimerRef.current = null;
234
+ }
235
+ translateY.stopAnimation();
236
+ };
237
+ }, [open, enter, translateY]);
214
238
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react_native.Modal, {
215
239
  visible: open,
216
240
  transparent: true,
217
241
  animationType: "fade",
218
242
  statusBarTranslucent: true,
219
243
  onRequestClose: close,
220
- onShow: handleModalShow,
244
+ onShow: enter,
221
245
  children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_react_native.View, {
222
246
  style: {
223
247
  flex: 1,
@@ -1 +1 @@
1
- {"version":3,"names":["index_native_exports","__export","SheetModal","module","exports","__toCommonJS","import_jsx_runtime","require","import_react","import_react_native","import_theme","import_detents","import_i18n","import_useKeyboardInset","import_tamagui","import_surfaces","sheetMaxHeightRatio","bottomInset","Platform","OS","backdropStrip","dismissThreshold","IN_DIALOG_REGION","inDialogRegion","param","open","onOpenChange","children","header","snapPoint","scrollable","t","useTranslation","knobProps","useResolvedKnobs","height","windowHeight","useWindowDimensions","keyboardInset","useKeyboardInset","backdropArmed","setBackdropArmed","useState","armTimerRef","useRef","close","useCallback","handleBackdropPress","useEffect","current","clearTimeout","available","Math","max","maxHeight","minSheetHeight","round","min","measuredHeight","setMeasuredHeight","travel","detents","useMemo","resolveSheetDetents","translateY","Animated","Value","restRef","travelRef","detentsRef","setValue","settleTo","toValue","velocity","arguments","length","spring","damping","stiffness","mass","overshootClamping","useNativeDriver","start","dismiss","param2","finished","panResponder","PanResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","_evt","g","abs","dy","onPanResponderGrant","stopAnimation","value","Number","isFinite","onPanResponderMove","next","onPanResponderRelease","points","tvl","projected","vy","smallestRest","best","bestDelta","POSITIVE_INFINITY","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","delta","err","return","onPanResponderTerminate","handleModalShow","setTimeout","timing","duration","easing","Easing","out","cubic","jsx","Modal","visible","transparent","animationType","statusBarTranslucent","onRequestClose","onShow","jsxs","View","style","flex","justifyContent","paddingBottom","Pressable","StyleSheet","absoluteFill","onPress","accessibilityRole","accessibilityLabel","backgroundColor","onLayout","e","h","nativeEvent","layout","flexShrink","minHeight","transform","YStack","surface","borderRadius","borderBottomLeftRadius","borderBottomRightRadius","elevation","paddingTop","overflow","outlineWidth","focusStyle","focusVisibleStyle","accessibilityViewIsModal","onAccessibilityEscape","panHandlers","alignSelf","alignItems","width","opacity","accessible","DialogRegionContext","Provider","padding","panelPadding","gap","ScrollView","flexGrow","keyboardShouldPersistTaps"],"sources":["../../../src/SheetModal/index.native.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["index_native_exports","__export","SheetModal","module","exports","__toCommonJS","import_jsx_runtime","require","import_react","import_react_native","import_theme","import_detents","import_i18n","import_useKeyboardInset","import_tamagui","import_surfaces","sheetMaxHeightRatio","bottomInset","Platform","OS","backdropStrip","dismissThreshold","IN_DIALOG_REGION","inDialogRegion","param","open","onOpenChange","children","header","snapPoint","scrollable","t","useTranslation","knobProps","useResolvedKnobs","height","windowHeight","useWindowDimensions","keyboardInset","useKeyboardInset","backdropArmed","setBackdropArmed","useState","armTimerRef","useRef","close","useCallback","handleBackdropPress","available","Math","max","maxHeight","minSheetHeight","round","min","measuredHeight","setMeasuredHeight","travel","detents","useMemo","resolveSheetDetents","translateY","Animated","Value","current","restRef","travelRef","detentsRef","presentationRef","activeRef","settleTo","toValue","velocity","arguments","length","spring","damping","stiffness","mass","overshootClamping","useNativeDriver","start","dismiss","presentation","param2","finished","panResponder","PanResponder","create","onStartShouldSetPanResponder","onMoveShouldSetPanResponder","_evt","g","abs","dy","onPanResponderGrant","stopAnimation","value","Number","isFinite","onPanResponderMove","next","setValue","onPanResponderRelease","points","tvl","projected","vy","smallestRest","best","bestDelta","POSITIVE_INFINITY","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","delta","err","return","onPanResponderTerminate","enteredRef","enter","clearTimeout","setTimeout","timing","duration","easing","Easing","out","cubic","useEffect","parked","jsx","Modal","visible","transparent","animationType","statusBarTranslucent","onRequestClose","onShow","jsxs","View","style","flex","justifyContent","paddingBottom","Pressable","StyleSheet","absoluteFill","onPress","accessibilityRole","accessibilityLabel","backgroundColor","onLayout","e","h","nativeEvent","layout","flexShrink","minHeight","transform","YStack","surface","borderRadius","borderBottomLeftRadius","borderBottomRightRadius","elevation","paddingTop","overflow","outlineWidth","focusStyle","focusVisibleStyle","accessibilityViewIsModal","onAccessibilityEscape","panHandlers","alignSelf","alignItems","width","opacity","accessible","DialogRegionContext","Provider","padding","panelPadding","gap","ScrollView","flexGrow","keyboardShouldPersistTaps"],"sources":["../../../src/SheetModal/index.native.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -88,7 +88,8 @@ const fillProps = {
88
88
  };
89
89
  const StripWrapper = (0, import_tamagui.styled)(import_tamagui.View, {
90
90
  name: "MpTabsStrip",
91
- width: "100%",
91
+ alignSelf: "stretch",
92
+ minWidth: 0,
92
93
  position: "relative"
93
94
  });
94
95
  const TabsList = (0, import_tamagui.styled)(import_tamagui.Tabs.List, {
@@ -162,6 +163,7 @@ function TabsRoot({
162
163
  defaultValue,
163
164
  onChange,
164
165
  variant = "underline",
166
+ distribution = "content",
165
167
  accent,
166
168
  error,
167
169
  warning,
@@ -252,6 +254,20 @@ function TabsRoot({
252
254
  }
253
255
  }, [activeLayout, direction]);
254
256
  const isUnderline = variant === "underline";
257
+ const isBand = variant === "band";
258
+ const equalDistribution = isBand || distribution === "equal";
259
+ const tabRefs = import_react.default.useRef(/* @__PURE__ */new Map());
260
+ const onTabKeyDown = (event, value2) => {
261
+ if (!["Home", "End", "ArrowLeft", "ArrowRight"].includes(event.key)) return;
262
+ const enabled = items.filter(item => !disabled && !item.disabled);
263
+ if (!enabled.length) return;
264
+ const current = enabled.findIndex(item => item.value === value2);
265
+ const step = (event.key === "ArrowRight" ? 1 : -1) * (direction === "rtl" ? -1 : 1);
266
+ const next = event.key === "Home" ? 0 : event.key === "End" ? enabled.length - 1 : loop ? (current + step + enabled.length) % enabled.length : Math.max(0, Math.min(enabled.length - 1, current + step));
267
+ event.preventDefault();
268
+ event.stopPropagation();
269
+ tabRefs.current.get(enabled[next].value)?.focus();
270
+ };
255
271
  const indicatorTheme = intent ?? "accent";
256
272
  const visualSizeToken = size ?? knobProps.sizeToken;
257
273
  const sizePx = knobProps.control.height;
@@ -273,7 +289,7 @@ function TabsRoot({
273
289
  WebkitMaskImage: mask
274
290
  };
275
291
  })() : void 0;
276
- const indicator = activeLayout ? isUnderline ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Theme, {
292
+ const indicator = activeLayout && !isBand ? isUnderline ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Theme, {
277
293
  name: indicatorTheme,
278
294
  children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(UnderlineIndicator, {
279
295
  x: activeLayout.x,
@@ -303,29 +319,152 @@ function TabsRoot({
303
319
  }) : null;
304
320
  if (items.length === 0) return null;
305
321
  const tabListLabel = ariaLabel ?? t("Tabs");
322
+ const tabList = /* @__PURE__ */(0, import_jsx_runtime.jsxs)(TabsList, {
323
+ loop,
324
+ "aria-label": tabListLabel,
325
+ "data-tabs-list": variant,
326
+ "data-size-token": visualSizeToken,
327
+ "data-density": knobProps.density,
328
+ "data-visual-px": sizePx,
329
+ ...(!import_tamagui.isWeb ? {
330
+ role: "tablist"
331
+ } : void 0),
332
+ alignSelf: equalDistribution ? "stretch" : "flex-start",
333
+ minWidth: 0,
334
+ contained: !isUnderline && !isBand,
335
+ ...(isUnderline || isBand ? {
336
+ gap: 0
337
+ } : {
338
+ backgroundColor: import_componentColors.componentColors.interactive.background,
339
+ gap: 0,
340
+ // Full fragment spread (AGENTS.md knob rule) so the
341
+ // cornerSmoothing class rides along with the radius.
342
+ ...knobProps.borderRadiusNested
343
+ }),
344
+ children: [indicator, items.map((item, itemIndex) => {
345
+ const isActive = item.value === currentValue;
346
+ const isDisabled = disabled || item.disabled;
347
+ const position = (0, import_theme.getGroupPosition)(itemIndex, enabledCount);
348
+ const cornerProps = isUnderline ? underlineStackRadius(position, radiusToken) : (0, import_theme.stackRadiusProps)(position, outerRadiusToken, "horizontal");
349
+ const anchorValue = (focusValue !== null && items.some(i => i.value === focusValue && !(disabled || i.disabled)) ? focusValue : void 0) ?? (items.some(i => i.value === currentValue && !(disabled || i.disabled)) ? currentValue : items.find(i => !(disabled || i.disabled))?.value);
350
+ const isTabStop = item.value === anchorValue && itemIndex === items.findIndex(i => i.value === anchorValue);
351
+ const kbRing = kbFocusValue === item.value;
352
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Trigger, {
353
+ value: item.value,
354
+ ref: node => {
355
+ if (!import_tamagui.isWeb) return;
356
+ if (node) tabRefs.current.set(item.value, node);else tabRefs.current.delete(item.value);
357
+ },
358
+ flex: equalDistribution ? 1 : void 0,
359
+ minWidth: 0,
360
+ minHeight: isBand ? import_theme.MIN_PRESS_TARGET : void 0,
361
+ borderEndWidth: isBand && itemIndex < items.length - 1 ? 1 : 0,
362
+ borderColor: isBand ? import_componentColors.componentColors.surface.border : void 0,
363
+ disabled: isDisabled,
364
+ ...(item.content === void 0 ? {
365
+ "aria-controls": void 0
366
+ } : void 0),
367
+ "data-tab-position": position,
368
+ "data-kb-ring": kbRing ? "true" : void 0,
369
+ ...(import_tamagui.isWeb ? {
370
+ tabIndex: isDisabled ? -1 : isTabStop ? 0 : -1,
371
+ "aria-label": item.accessibilityLabel,
372
+ onKeyDownCapture: event => onTabKeyDown(event, item.value)
373
+ } : {
374
+ accessible: true,
375
+ role: "button",
376
+ accessibilityRole: "button",
377
+ accessibilityLabel: item.accessibilityLabel ?? (typeof item.label === "string" || typeof item.label === "number" ? String(item.label) : void 0),
378
+ accessibilityState: {
379
+ selected: isActive,
380
+ disabled: Boolean(isDisabled)
381
+ }
382
+ }),
383
+ hitSlop: tabHitSlop,
384
+ onInteraction: handleInteraction,
385
+ cursor: isDisabled ? "not-allowed" : "pointer",
386
+ backgroundColor: isBand && isActive ? import_componentColors.componentColors.surface.background : "transparent",
387
+ borderRadius: 0,
388
+ ...(isDisabled ? isActive ? disabledState.chromeKnobProps : {
389
+ ...disabledState.chromeKnobProps,
390
+ ...disabledState.textKnobProps
391
+ } : void 0),
392
+ ...(import_tamagui.isWeb ? {
393
+ onFocusCapture: () => {
394
+ setFocusValue(item.value);
395
+ if ((0, import_theme.wasKeyboardFocus)()) setKbFocusValue(item.value);
396
+ },
397
+ onBlurCapture: () => {
398
+ setFocusValue(prev => prev === item.value ? null : prev);
399
+ setKbFocusValue(prev => prev === item.value ? null : prev);
400
+ },
401
+ onPointerEnter: () => setHoverValue(item.value),
402
+ onPointerLeave: () => setHoverValue(prev => prev === item.value ? null : prev),
403
+ onPointerDown: () => setPressValue(item.value),
404
+ onPointerUp: () => setPressValue(prev => prev === item.value ? null : prev)
405
+ } : void 0),
406
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
407
+ ...(isBand ? void 0 : cornerProps),
408
+ ...knobProps.control,
409
+ paddingHorizontal: isBand ? 0 : knobProps.control.paddingHorizontal,
410
+ alignSelf: "stretch",
411
+ flexGrow: equalDistribution ? 1 : void 0,
412
+ flexShrink: equalDistribution ? 1 : void 0,
413
+ flexBasis: equalDistribution ? 0 : void 0,
414
+ minWidth: 0,
415
+ flexDirection: "row",
416
+ alignItems: "center",
417
+ justifyContent: "center",
418
+ backgroundColor: isActive || isDisabled ? "transparent" : pressValue === item.value ? import_componentColors.componentColors.interactive.hover : hoverValue === item.value ? import_componentColors.componentColors.interactive.background : "transparent",
419
+ ...(kbRing ? import_theme.keyboardFocusRingProps : void 0),
420
+ children: [item.icon, /* @__PURE__ */(0, import_jsx_runtime.jsx)(TabLabel, {
421
+ minWidth: equalDistribution ? 0 : void 0,
422
+ flexShrink: equalDistribution ? 1 : void 0,
423
+ active: isActive,
424
+ ...knobProps.controlType,
425
+ fontFamily: knobProps.label.fontFamily,
426
+ fontWeight: !isBand && isActive ? "700" : knobProps.label.fontWeight,
427
+ color: isDisabled ? import_componentColors.componentColors.text.muted : isActive ? variant === "contained" && onSelectedTint ? onSelectedTint : import_componentColors.componentColors.text.primary : import_componentColors.componentColors.text.secondary,
428
+ children: (0, import_textRidesText.wrapBareTextChildren)(item.label, label => label)
429
+ }), item.badge]
430
+ })
431
+ }, item.value);
432
+ })]
433
+ });
306
434
  return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.Tabs, {
307
435
  value: currentValue,
308
436
  onValueChange: handleChange,
309
437
  orientation: "horizontal",
310
438
  activationMode,
311
- width: "100%",
439
+ width: equalDistribution ? "100%" : void 0,
440
+ alignSelf: "stretch",
441
+ minWidth: 0,
312
442
  flexDirection: "column",
313
443
  ...(fill ? fillProps : void 0),
314
444
  "data-tabs-variant": variant,
445
+ "data-tabs-distribution": equalDistribution ? "equal" : "content",
315
446
  "data-tabs-fill": fill ? "true" : void 0,
316
447
  "data-tabs-dir": direction,
317
448
  "data-size-token": visualSizeToken,
318
449
  "data-density": knobProps.density,
319
450
  "data-visual-px": sizePx,
320
451
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(StripWrapper, {
452
+ backgroundColor: isBand ? "$color2" : void 0,
453
+ borderBottomWidth: isBand ? 1 : void 0,
454
+ borderBottomColor: isBand ? import_componentColors.componentColors.surface.border : void 0,
321
455
  ...(isUnderline ? {
322
456
  ...import_theme.hairline.bottom,
323
457
  borderColor: import_componentColors.componentColors.surface.border
324
458
  } : void 0),
325
459
  "data-fade-left": fades.left ? "true" : void 0,
326
460
  "data-fade-right": fades.right ? "true" : void 0,
327
- children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.ScrollView, {
461
+ children: equalDistribution ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
462
+ alignSelf: "stretch",
463
+ minWidth: 0,
464
+ children: tabList
465
+ }) : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.ScrollView, {
328
466
  ref: scrollRef,
467
+ "data-tabs-scroll": "true",
329
468
  horizontal: true,
330
469
  showsHorizontalScrollIndicator: false,
331
470
  scrollEventThrottle: 16,
@@ -346,93 +485,7 @@ function TabsRoot({
346
485
  scrollMetrics.current.content = w;
347
486
  updateFades();
348
487
  },
349
- children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(TabsList, {
350
- loop,
351
- "aria-label": tabListLabel,
352
- "data-tabs-list": variant,
353
- "data-size-token": visualSizeToken,
354
- "data-density": knobProps.density,
355
- "data-visual-px": sizePx,
356
- ...(!import_tamagui.isWeb ? {
357
- role: "tablist"
358
- } : void 0),
359
- contained: !isUnderline,
360
- ...(isUnderline ? {
361
- gap: 0
362
- } : {
363
- backgroundColor: import_componentColors.componentColors.interactive.background,
364
- gap: 0,
365
- // Full fragment spread (AGENTS.md knob rule) so the
366
- // cornerSmoothing class rides along with the radius.
367
- ...knobProps.borderRadiusNested
368
- }),
369
- children: [indicator, items.map((item, itemIndex) => {
370
- const isActive = item.value === currentValue;
371
- const isDisabled = disabled || item.disabled;
372
- const position = (0, import_theme.getGroupPosition)(itemIndex, enabledCount);
373
- const cornerProps = isUnderline ? underlineStackRadius(position, radiusToken) : (0, import_theme.stackRadiusProps)(position, outerRadiusToken, "horizontal");
374
- const anchorValue = (focusValue !== null && items.some(i => i.value === focusValue && !(disabled || i.disabled)) ? focusValue : void 0) ?? (items.some(i => i.value === currentValue) ? currentValue : items[0]?.value);
375
- const isTabStop = item.value === anchorValue && itemIndex === items.findIndex(i => i.value === anchorValue);
376
- const kbRing = kbFocusValue === item.value;
377
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(Trigger, {
378
- value: item.value,
379
- disabled: isDisabled,
380
- "data-tab-position": position,
381
- "data-kb-ring": kbRing ? "true" : void 0,
382
- ...(import_tamagui.isWeb ? {
383
- tabIndex: isDisabled ? -1 : isTabStop ? 0 : -1
384
- } : {
385
- accessible: true,
386
- role: "tab",
387
- "aria-selected": isActive,
388
- ...(isDisabled ? {
389
- "aria-disabled": true
390
- } : void 0)
391
- }),
392
- hitSlop: tabHitSlop,
393
- onInteraction: handleInteraction,
394
- cursor: isDisabled ? "not-allowed" : "pointer",
395
- backgroundColor: "transparent",
396
- borderRadius: 0,
397
- ...(isDisabled ? isActive ? disabledState.chromeKnobProps : {
398
- ...disabledState.chromeKnobProps,
399
- ...disabledState.textKnobProps
400
- } : void 0),
401
- ...(import_tamagui.isWeb ? {
402
- onFocusCapture: () => {
403
- setFocusValue(item.value);
404
- if ((0, import_theme.wasKeyboardFocus)()) setKbFocusValue(item.value);
405
- },
406
- onBlurCapture: () => {
407
- setFocusValue(prev => prev === item.value ? null : prev);
408
- setKbFocusValue(prev => prev === item.value ? null : prev);
409
- },
410
- onPointerEnter: () => setHoverValue(item.value),
411
- onPointerLeave: () => setHoverValue(prev => prev === item.value ? null : prev),
412
- onPointerDown: () => setPressValue(item.value),
413
- onPointerUp: () => setPressValue(prev => prev === item.value ? null : prev)
414
- } : void 0),
415
- children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.View, {
416
- ...cornerProps,
417
- ...knobProps.control,
418
- width: "100%",
419
- flexDirection: "row",
420
- alignItems: "center",
421
- justifyContent: "center",
422
- backgroundColor: isActive || isDisabled ? "transparent" : pressValue === item.value ? import_componentColors.componentColors.interactive.hover : hoverValue === item.value ? import_componentColors.componentColors.interactive.background : "transparent",
423
- ...(kbRing ? import_theme.keyboardFocusRingProps : void 0),
424
- children: [item.icon, /* @__PURE__ */(0, import_jsx_runtime.jsx)(TabLabel, {
425
- active: isActive,
426
- ...knobProps.controlType,
427
- fontFamily: knobProps.label.fontFamily,
428
- fontWeight: isActive ? "700" : knobProps.label.fontWeight,
429
- color: isDisabled ? import_componentColors.componentColors.text.muted : isActive ? !isUnderline && onSelectedTint ? onSelectedTint : import_componentColors.componentColors.text.primary : import_componentColors.componentColors.text.secondary,
430
- children: (0, import_textRidesText.wrapBareTextChildren)(item.label, label => label)
431
- }), item.badge]
432
- })
433
- }, item.value);
434
- })]
435
- })
488
+ children: tabList
436
489
  })
437
490
  }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
438
491
  "data-tabs-panels": "",