tamagui 1.0.1-rc.9 → 1.0.2

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.
@@ -45,7 +45,7 @@ const textAreaSizeVariant = (val = "$4", extras) => {
45
45
  const { props } = extras;
46
46
  const buttonStyles = (0, import_get_button_sized.getButtonSized)(val, extras);
47
47
  const fontStyle = (0, import_get_font_sized.getFontSized)(val, extras);
48
- const minHeight = (props.numberOfLines || 1) * (0, import_core.getVariableValue)(fontStyle.lineHeight);
48
+ const height = props.numberOfLines ? (props.numberOfLines || 1) * (0, import_core.getVariableValue)(fontStyle.lineHeight) : "auto";
49
49
  const paddingVertical = (0, import_core.stepTokenUpOrDown)(extras.tokens.space, val, -2, [2]);
50
50
  const paddingHorizontal = (0, import_core.stepTokenUpOrDown)(extras.tokens.space, val, -1, [2]);
51
51
  return {
@@ -53,7 +53,7 @@ const textAreaSizeVariant = (val = "$4", extras) => {
53
53
  ...fontStyle,
54
54
  paddingVertical,
55
55
  paddingHorizontal,
56
- minHeight
56
+ height
57
57
  };
58
58
  };
59
59
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/inputHelpers.tsx"],
4
- "sourcesContent": ["import {\n SizeVariantSpreadFunction,\n getVariableValue,\n isWeb,\n stepTokenUpOrDown,\n} from '@tamagui/core'\nimport { getButtonSized } from '@tamagui/get-button-sized'\nimport { getFontSized } from '@tamagui/get-font-sized'\n\nexport const inputSizeVariant: SizeVariantSpreadFunction<any> = (val = '$4', extras) => {\n if (extras.props.multiline || extras.props.numberOfLines > 1) {\n return textAreaSizeVariant(val, extras)\n }\n const buttonStyles = getButtonSized(val, extras)\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n const fontStyle = getFontSized(val, extras)\n // lineHeight messes up input on native\n if (!isWeb && fontStyle) {\n delete fontStyle['lineHeight']\n }\n return {\n ...fontStyle,\n ...buttonStyles,\n paddingHorizontal,\n }\n}\n\nexport const textAreaSizeVariant: SizeVariantSpreadFunction<any> = (\n val = '$4',\n extras\n) => {\n const { props } = extras\n const buttonStyles = getButtonSized(val, extras)\n const fontStyle = getFontSized(val, extras)!\n const minHeight = (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight)\n const paddingVertical = stepTokenUpOrDown(extras.tokens.space, val, -2, [2])\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n return {\n ...buttonStyles,\n ...fontStyle,\n paddingVertical,\n paddingHorizontal,\n minHeight,\n }\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAKO;AACP,8BAA+B;AAC/B,4BAA6B;AAEtB,MAAM,mBAAmD,CAAC,MAAM,MAAM,WAAW;AACtF,MAAI,OAAO,MAAM,aAAa,OAAO,MAAM,gBAAgB,GAAG;AAC5D,WAAO,oBAAoB,KAAK,MAAM;AAAA,EACxC;AACA,QAAM,mBAAe,wCAAe,KAAK,MAAM;AAC/C,QAAM,wBAAoB,+BAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,QAAM,gBAAY,oCAAa,KAAK,MAAM;AAE1C,MAAI,CAAC,qBAAS,WAAW;AACvB,WAAO,UAAU;AAAA,EACnB;AACA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,EACF;AACF;AAEO,MAAM,sBAAsD,CACjE,MAAM,MACN,WACG;AACH,QAAM,EAAE,MAAM,IAAI;AAClB,QAAM,mBAAe,wCAAe,KAAK,MAAM;AAC/C,QAAM,gBAAY,oCAAa,KAAK,MAAM;AAC1C,QAAM,aAAa,MAAM,iBAAiB,SAAK,8BAAiB,UAAU,UAAU;AACpF,QAAM,sBAAkB,+BAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC3E,QAAM,wBAAoB,+BAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
4
+ "sourcesContent": ["import {\n SizeVariantSpreadFunction,\n getVariableValue,\n isWeb,\n stepTokenUpOrDown,\n} from '@tamagui/core'\nimport { getButtonSized } from '@tamagui/get-button-sized'\nimport { getFontSized } from '@tamagui/get-font-sized'\n\nexport const inputSizeVariant: SizeVariantSpreadFunction<any> = (val = '$4', extras) => {\n if (extras.props.multiline || extras.props.numberOfLines > 1) {\n return textAreaSizeVariant(val, extras)\n }\n const buttonStyles = getButtonSized(val, extras)\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n const fontStyle = getFontSized(val, extras)\n // lineHeight messes up input on native\n if (!isWeb && fontStyle) {\n delete fontStyle['lineHeight']\n }\n return {\n ...fontStyle,\n ...buttonStyles,\n paddingHorizontal,\n }\n}\n\nexport const textAreaSizeVariant: SizeVariantSpreadFunction<any> = (\n val = '$4',\n extras\n) => {\n const { props } = extras\n const buttonStyles = getButtonSized(val, extras)\n const fontStyle = getFontSized(val, extras)!\n const height = props.numberOfLines\n ? (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight)\n : 'auto'\n const paddingVertical = stepTokenUpOrDown(extras.tokens.space, val, -2, [2])\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n return {\n ...buttonStyles,\n ...fontStyle,\n paddingVertical,\n paddingHorizontal,\n height,\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAKO;AACP,8BAA+B;AAC/B,4BAA6B;AAEtB,MAAM,mBAAmD,CAAC,MAAM,MAAM,WAAW;AACtF,MAAI,OAAO,MAAM,aAAa,OAAO,MAAM,gBAAgB,GAAG;AAC5D,WAAO,oBAAoB,KAAK,MAAM;AAAA,EACxC;AACA,QAAM,mBAAe,wCAAe,KAAK,MAAM;AAC/C,QAAM,wBAAoB,+BAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,QAAM,gBAAY,oCAAa,KAAK,MAAM;AAE1C,MAAI,CAAC,qBAAS,WAAW;AACvB,WAAO,UAAU;AAAA,EACnB;AACA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,EACF;AACF;AAEO,MAAM,sBAAsD,CACjE,MAAM,MACN,WACG;AACH,QAAM,EAAE,MAAM,IAAI;AAClB,QAAM,mBAAe,wCAAe,KAAK,MAAM;AAC/C,QAAM,gBAAY,oCAAa,KAAK,MAAM;AAC1C,QAAM,SAAS,MAAM,iBAChB,MAAM,iBAAiB,SAAK,8BAAiB,UAAU,UAAU,IAClE;AACJ,QAAM,sBAAkB,+BAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC3E,QAAM,wBAAoB,+BAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
@@ -38,7 +38,6 @@ const GroupFrame = (0, import_core.styled)(import_stacks.ThemeableStack, {
38
38
  name: "GroupFrame",
39
39
  backgroundColor: "$background",
40
40
  y: 0,
41
- overflow: "hidden",
42
41
  variants: {
43
42
  size: (val, { tokens }) => {
44
43
  const borderRadius = tokens.radius[val] ?? val ?? tokens.radius["$4"];
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/views/Group.tsx"],
4
- "sourcesContent": ["import {\n GetProps,\n TamaguiElement,\n getConfig,\n getExpandedShorthands,\n getTokens,\n getVariableValue,\n isTamaguiElement,\n mergeProps,\n spacedChildren,\n styled,\n useMediaPropsActive,\n} from '@tamagui/core'\nimport { ThemeableStack } from '@tamagui/stacks'\nimport React, { Children, forwardRef, isValidElement } from 'react'\nimport { ScrollView } from 'react-native'\n\nexport const GroupFrame = styled(ThemeableStack, {\n name: 'GroupFrame',\n backgroundColor: '$background',\n y: 0,\n overflow: 'hidden',\n\n variants: {\n size: (val, { tokens }) => {\n const borderRadius = tokens.radius[val] ?? val ?? tokens.radius['$4']\n return {\n borderRadius,\n }\n },\n } as const,\n\n defaultVariants: {\n size: '$4',\n },\n})\n\nexport type GroupProps = GetProps<typeof GroupFrame> & {\n scrollable?: boolean\n /**\n * @default false\n */\n showScrollIndicator?: boolean\n disabled?: boolean\n vertical?: boolean\n disablePassBorderRadius?: boolean\n}\n\nfunction createGroup(verticalDefault: boolean) {\n return forwardRef<TamaguiElement, GroupProps>((props, ref) => {\n const activeProps = useMediaPropsActive(props)\n\n const {\n children: childrenProp,\n space,\n size = '$4',\n spaceDirection,\n separator,\n scrollable,\n vertical = verticalDefault,\n disabled: disabledProp,\n disablePassBorderRadius: disablePassBorderRadiusProp,\n borderRadius,\n ...restProps\n } = getExpandedShorthands(activeProps)\n\n const radius =\n borderRadius ??\n (size ? getVariableValue(getTokens(true).radius[size]) - 1 : undefined)\n const hasRadius = radius !== undefined\n const disablePassBorderRadius = disablePassBorderRadiusProp ?? !hasRadius\n const childrens = Children.toArray(childrenProp)\n const children = childrens.map((child, i) => {\n if (!isValidElement(child)) return child\n const disabled = child.props.disabled ?? disabledProp\n\n const isFirst = i === 0\n const isLast = i === childrens.length - 1\n\n const radiusStyles = disablePassBorderRadius\n ? null\n : {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n ...(hasRadius && {\n ...(isFirst &&\n !vertical && {\n borderTopLeftRadius: radius,\n borderBottomLeftRadius: radius,\n }),\n ...(isFirst &&\n vertical && {\n borderTopLeftRadius: radius,\n borderTopRightRadius: radius,\n }),\n ...(isLast &&\n !vertical && {\n borderTopRightRadius: radius,\n borderBottomRightRadius: radius,\n }),\n ...(isLast &&\n vertical && {\n borderBottomLeftRadius: radius,\n borderBottomRightRadius: radius,\n }),\n }),\n }\n\n const props = {\n disabled,\n ...(isTamaguiElement(child) ? radiusStyles : { style: radiusStyles }),\n }\n\n return cloneElementWithPropOrder(child, props)\n })\n\n return (\n <GroupFrame\n ref={ref}\n size={size}\n flexDirection={!vertical ? 'row' : 'column'}\n borderRadius={borderRadius}\n {...restProps}\n >\n {wrapScroll(\n activeProps,\n spacedChildren({\n direction: spaceDirection,\n separator,\n space,\n children,\n }),\n )}\n </GroupFrame>\n )\n })\n}\n\nexport const YGroup = createGroup(true)\nexport const XGroup = createGroup(false)\n\nconst wrapScroll = (\n { scrollable, vertical, showScrollIndicator = false }: GroupProps,\n children: any,\n) => {\n if (scrollable)\n return (\n <ScrollView\n {...(vertical && {\n showsVerticalScrollIndicator: showScrollIndicator,\n })}\n {...(!vertical && {\n horizontal: true,\n showsHorizontalScrollIndicator: showScrollIndicator,\n })}\n >\n {children}\n </ScrollView>\n )\n return children\n}\n\nconst cloneElementWithPropOrder = (child: any, props: Object) => {\n const next = mergeProps(child.props, props, false, getConfig().shorthands)[0]\n return React.cloneElement({ ...child, props: null }, next)\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import {\n GetProps,\n TamaguiElement,\n getConfig,\n getExpandedShorthands,\n getTokens,\n getVariableValue,\n isTamaguiElement,\n mergeProps,\n spacedChildren,\n styled,\n useMediaPropsActive,\n} from '@tamagui/core'\nimport { ThemeableStack } from '@tamagui/stacks'\nimport React, { Children, forwardRef, isValidElement } from 'react'\nimport { ScrollView } from 'react-native'\n\nexport const GroupFrame = styled(ThemeableStack, {\n name: 'GroupFrame',\n backgroundColor: '$background',\n y: 0,\n\n variants: {\n size: (val, { tokens }) => {\n const borderRadius = tokens.radius[val] ?? val ?? tokens.radius['$4']\n return {\n borderRadius,\n }\n },\n } as const,\n\n defaultVariants: {\n size: '$4',\n },\n})\n\nexport type GroupProps = GetProps<typeof GroupFrame> & {\n scrollable?: boolean\n /**\n * @default false\n */\n showScrollIndicator?: boolean\n disabled?: boolean\n vertical?: boolean\n disablePassBorderRadius?: boolean\n}\n\nfunction createGroup(verticalDefault: boolean) {\n return forwardRef<TamaguiElement, GroupProps>((props, ref) => {\n const activeProps = useMediaPropsActive(props)\n\n const {\n children: childrenProp,\n space,\n size = '$4',\n spaceDirection,\n separator,\n scrollable,\n vertical = verticalDefault,\n disabled: disabledProp,\n disablePassBorderRadius: disablePassBorderRadiusProp,\n borderRadius,\n ...restProps\n } = getExpandedShorthands(activeProps)\n\n const radius =\n borderRadius ??\n (size ? getVariableValue(getTokens(true).radius[size]) - 1 : undefined)\n const hasRadius = radius !== undefined\n const disablePassBorderRadius = disablePassBorderRadiusProp ?? !hasRadius\n const childrens = Children.toArray(childrenProp)\n const children = childrens.map((child, i) => {\n if (!isValidElement(child)) return child\n const disabled = child.props.disabled ?? disabledProp\n\n const isFirst = i === 0\n const isLast = i === childrens.length - 1\n\n const radiusStyles = disablePassBorderRadius\n ? null\n : {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n ...(hasRadius && {\n ...(isFirst &&\n !vertical && {\n borderTopLeftRadius: radius,\n borderBottomLeftRadius: radius,\n }),\n ...(isFirst &&\n vertical && {\n borderTopLeftRadius: radius,\n borderTopRightRadius: radius,\n }),\n ...(isLast &&\n !vertical && {\n borderTopRightRadius: radius,\n borderBottomRightRadius: radius,\n }),\n ...(isLast &&\n vertical && {\n borderBottomLeftRadius: radius,\n borderBottomRightRadius: radius,\n }),\n }),\n }\n\n const props = {\n disabled,\n ...(isTamaguiElement(child) ? radiusStyles : { style: radiusStyles }),\n }\n\n return cloneElementWithPropOrder(child, props)\n })\n\n return (\n <GroupFrame\n ref={ref}\n size={size}\n flexDirection={!vertical ? 'row' : 'column'}\n borderRadius={borderRadius}\n {...restProps}\n >\n {wrapScroll(\n activeProps,\n spacedChildren({\n direction: spaceDirection,\n separator,\n space,\n children,\n })\n )}\n </GroupFrame>\n )\n })\n}\n\nexport const YGroup = createGroup(true)\nexport const XGroup = createGroup(false)\n\nconst wrapScroll = (\n { scrollable, vertical, showScrollIndicator = false }: GroupProps,\n children: any\n) => {\n if (scrollable)\n return (\n <ScrollView\n {...(vertical && {\n showsVerticalScrollIndicator: showScrollIndicator,\n })}\n {...(!vertical && {\n horizontal: true,\n showsHorizontalScrollIndicator: showScrollIndicator,\n })}\n >\n {children}\n </ScrollView>\n )\n return children\n}\n\nconst cloneElementWithPropOrder = (child: any, props: Object) => {\n const next = mergeProps(child.props, props, false, getConfig().shorthands)[0]\n return React.cloneElement({ ...child, props: null }, next)\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["props", "React"]
7
7
  }
@@ -25,7 +25,7 @@ const textAreaSizeVariant = (val = "$4", extras) => {
25
25
  const { props } = extras;
26
26
  const buttonStyles = getButtonSized(val, extras);
27
27
  const fontStyle = getFontSized(val, extras);
28
- const minHeight = (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight);
28
+ const height = props.numberOfLines ? (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight) : "auto";
29
29
  const paddingVertical = stepTokenUpOrDown(extras.tokens.space, val, -2, [2]);
30
30
  const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2]);
31
31
  return {
@@ -33,7 +33,7 @@ const textAreaSizeVariant = (val = "$4", extras) => {
33
33
  ...fontStyle,
34
34
  paddingVertical,
35
35
  paddingHorizontal,
36
- minHeight
36
+ height
37
37
  };
38
38
  };
39
39
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/inputHelpers.tsx"],
4
- "sourcesContent": ["import {\n SizeVariantSpreadFunction,\n getVariableValue,\n isWeb,\n stepTokenUpOrDown,\n} from '@tamagui/core'\nimport { getButtonSized } from '@tamagui/get-button-sized'\nimport { getFontSized } from '@tamagui/get-font-sized'\n\nexport const inputSizeVariant: SizeVariantSpreadFunction<any> = (val = '$4', extras) => {\n if (extras.props.multiline || extras.props.numberOfLines > 1) {\n return textAreaSizeVariant(val, extras)\n }\n const buttonStyles = getButtonSized(val, extras)\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n const fontStyle = getFontSized(val, extras)\n // lineHeight messes up input on native\n if (!isWeb && fontStyle) {\n delete fontStyle['lineHeight']\n }\n return {\n ...fontStyle,\n ...buttonStyles,\n paddingHorizontal,\n }\n}\n\nexport const textAreaSizeVariant: SizeVariantSpreadFunction<any> = (\n val = '$4',\n extras\n) => {\n const { props } = extras\n const buttonStyles = getButtonSized(val, extras)\n const fontStyle = getFontSized(val, extras)!\n const minHeight = (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight)\n const paddingVertical = stepTokenUpOrDown(extras.tokens.space, val, -2, [2])\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n return {\n ...buttonStyles,\n ...fontStyle,\n paddingVertical,\n paddingHorizontal,\n minHeight,\n }\n}\n"],
5
- "mappings": "AAAA;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,sBAAsB;AAC/B,SAAS,oBAAoB;AAEtB,MAAM,mBAAmD,CAAC,MAAM,MAAM,WAAW;AACtF,MAAI,OAAO,MAAM,aAAa,OAAO,MAAM,gBAAgB,GAAG;AAC5D,WAAO,oBAAoB,KAAK,MAAM;AAAA,EACxC;AACA,QAAM,eAAe,eAAe,KAAK,MAAM;AAC/C,QAAM,oBAAoB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,QAAM,YAAY,aAAa,KAAK,MAAM;AAE1C,MAAI,CAAC,SAAS,WAAW;AACvB,WAAO,UAAU;AAAA,EACnB;AACA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,EACF;AACF;AAEO,MAAM,sBAAsD,CACjE,MAAM,MACN,WACG;AACH,QAAM,EAAE,MAAM,IAAI;AAClB,QAAM,eAAe,eAAe,KAAK,MAAM;AAC/C,QAAM,YAAY,aAAa,KAAK,MAAM;AAC1C,QAAM,aAAa,MAAM,iBAAiB,KAAK,iBAAiB,UAAU,UAAU;AACpF,QAAM,kBAAkB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC3E,QAAM,oBAAoB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
4
+ "sourcesContent": ["import {\n SizeVariantSpreadFunction,\n getVariableValue,\n isWeb,\n stepTokenUpOrDown,\n} from '@tamagui/core'\nimport { getButtonSized } from '@tamagui/get-button-sized'\nimport { getFontSized } from '@tamagui/get-font-sized'\n\nexport const inputSizeVariant: SizeVariantSpreadFunction<any> = (val = '$4', extras) => {\n if (extras.props.multiline || extras.props.numberOfLines > 1) {\n return textAreaSizeVariant(val, extras)\n }\n const buttonStyles = getButtonSized(val, extras)\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n const fontStyle = getFontSized(val, extras)\n // lineHeight messes up input on native\n if (!isWeb && fontStyle) {\n delete fontStyle['lineHeight']\n }\n return {\n ...fontStyle,\n ...buttonStyles,\n paddingHorizontal,\n }\n}\n\nexport const textAreaSizeVariant: SizeVariantSpreadFunction<any> = (\n val = '$4',\n extras\n) => {\n const { props } = extras\n const buttonStyles = getButtonSized(val, extras)\n const fontStyle = getFontSized(val, extras)!\n const height = props.numberOfLines\n ? (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight)\n : 'auto'\n const paddingVertical = stepTokenUpOrDown(extras.tokens.space, val, -2, [2])\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n return {\n ...buttonStyles,\n ...fontStyle,\n paddingVertical,\n paddingHorizontal,\n height,\n }\n}\n"],
5
+ "mappings": "AAAA;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,sBAAsB;AAC/B,SAAS,oBAAoB;AAEtB,MAAM,mBAAmD,CAAC,MAAM,MAAM,WAAW;AACtF,MAAI,OAAO,MAAM,aAAa,OAAO,MAAM,gBAAgB,GAAG;AAC5D,WAAO,oBAAoB,KAAK,MAAM;AAAA,EACxC;AACA,QAAM,eAAe,eAAe,KAAK,MAAM;AAC/C,QAAM,oBAAoB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,QAAM,YAAY,aAAa,KAAK,MAAM;AAE1C,MAAI,CAAC,SAAS,WAAW;AACvB,WAAO,UAAU;AAAA,EACnB;AACA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,EACF;AACF;AAEO,MAAM,sBAAsD,CACjE,MAAM,MACN,WACG;AACH,QAAM,EAAE,MAAM,IAAI;AAClB,QAAM,eAAe,eAAe,KAAK,MAAM;AAC/C,QAAM,YAAY,aAAa,KAAK,MAAM;AAC1C,QAAM,SAAS,MAAM,iBAChB,MAAM,iBAAiB,KAAK,iBAAiB,UAAU,UAAU,IAClE;AACJ,QAAM,kBAAkB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC3E,QAAM,oBAAoB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
@@ -17,7 +17,6 @@ const GroupFrame = styled(ThemeableStack, {
17
17
  name: "GroupFrame",
18
18
  backgroundColor: "$background",
19
19
  y: 0,
20
- overflow: "hidden",
21
20
  variants: {
22
21
  size: (val, { tokens }) => {
23
22
  const borderRadius = tokens.radius[val] ?? val ?? tokens.radius["$4"];
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/views/Group.tsx"],
4
- "sourcesContent": ["import {\n GetProps,\n TamaguiElement,\n getConfig,\n getExpandedShorthands,\n getTokens,\n getVariableValue,\n isTamaguiElement,\n mergeProps,\n spacedChildren,\n styled,\n useMediaPropsActive,\n} from '@tamagui/core'\nimport { ThemeableStack } from '@tamagui/stacks'\nimport React, { Children, forwardRef, isValidElement } from 'react'\nimport { ScrollView } from 'react-native'\n\nexport const GroupFrame = styled(ThemeableStack, {\n name: 'GroupFrame',\n backgroundColor: '$background',\n y: 0,\n overflow: 'hidden',\n\n variants: {\n size: (val, { tokens }) => {\n const borderRadius = tokens.radius[val] ?? val ?? tokens.radius['$4']\n return {\n borderRadius,\n }\n },\n } as const,\n\n defaultVariants: {\n size: '$4',\n },\n})\n\nexport type GroupProps = GetProps<typeof GroupFrame> & {\n scrollable?: boolean\n /**\n * @default false\n */\n showScrollIndicator?: boolean\n disabled?: boolean\n vertical?: boolean\n disablePassBorderRadius?: boolean\n}\n\nfunction createGroup(verticalDefault: boolean) {\n return forwardRef<TamaguiElement, GroupProps>((props, ref) => {\n const activeProps = useMediaPropsActive(props)\n\n const {\n children: childrenProp,\n space,\n size = '$4',\n spaceDirection,\n separator,\n scrollable,\n vertical = verticalDefault,\n disabled: disabledProp,\n disablePassBorderRadius: disablePassBorderRadiusProp,\n borderRadius,\n ...restProps\n } = getExpandedShorthands(activeProps)\n\n const radius =\n borderRadius ??\n (size ? getVariableValue(getTokens(true).radius[size]) - 1 : undefined)\n const hasRadius = radius !== undefined\n const disablePassBorderRadius = disablePassBorderRadiusProp ?? !hasRadius\n const childrens = Children.toArray(childrenProp)\n const children = childrens.map((child, i) => {\n if (!isValidElement(child)) return child\n const disabled = child.props.disabled ?? disabledProp\n\n const isFirst = i === 0\n const isLast = i === childrens.length - 1\n\n const radiusStyles = disablePassBorderRadius\n ? null\n : {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n ...(hasRadius && {\n ...(isFirst &&\n !vertical && {\n borderTopLeftRadius: radius,\n borderBottomLeftRadius: radius,\n }),\n ...(isFirst &&\n vertical && {\n borderTopLeftRadius: radius,\n borderTopRightRadius: radius,\n }),\n ...(isLast &&\n !vertical && {\n borderTopRightRadius: radius,\n borderBottomRightRadius: radius,\n }),\n ...(isLast &&\n vertical && {\n borderBottomLeftRadius: radius,\n borderBottomRightRadius: radius,\n }),\n }),\n }\n\n const props = {\n disabled,\n ...(isTamaguiElement(child) ? radiusStyles : { style: radiusStyles }),\n }\n\n return cloneElementWithPropOrder(child, props)\n })\n\n return (\n <GroupFrame\n ref={ref}\n size={size}\n flexDirection={!vertical ? 'row' : 'column'}\n borderRadius={borderRadius}\n {...restProps}\n >\n {wrapScroll(\n activeProps,\n spacedChildren({\n direction: spaceDirection,\n separator,\n space,\n children,\n }),\n )}\n </GroupFrame>\n )\n })\n}\n\nexport const YGroup = createGroup(true)\nexport const XGroup = createGroup(false)\n\nconst wrapScroll = (\n { scrollable, vertical, showScrollIndicator = false }: GroupProps,\n children: any,\n) => {\n if (scrollable)\n return (\n <ScrollView\n {...(vertical && {\n showsVerticalScrollIndicator: showScrollIndicator,\n })}\n {...(!vertical && {\n horizontal: true,\n showsHorizontalScrollIndicator: showScrollIndicator,\n })}\n >\n {children}\n </ScrollView>\n )\n return children\n}\n\nconst cloneElementWithPropOrder = (child: any, props: Object) => {\n const next = mergeProps(child.props, props, false, getConfig().shorthands)[0]\n return React.cloneElement({ ...child, props: null }, next)\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import {\n GetProps,\n TamaguiElement,\n getConfig,\n getExpandedShorthands,\n getTokens,\n getVariableValue,\n isTamaguiElement,\n mergeProps,\n spacedChildren,\n styled,\n useMediaPropsActive,\n} from '@tamagui/core'\nimport { ThemeableStack } from '@tamagui/stacks'\nimport React, { Children, forwardRef, isValidElement } from 'react'\nimport { ScrollView } from 'react-native'\n\nexport const GroupFrame = styled(ThemeableStack, {\n name: 'GroupFrame',\n backgroundColor: '$background',\n y: 0,\n\n variants: {\n size: (val, { tokens }) => {\n const borderRadius = tokens.radius[val] ?? val ?? tokens.radius['$4']\n return {\n borderRadius,\n }\n },\n } as const,\n\n defaultVariants: {\n size: '$4',\n },\n})\n\nexport type GroupProps = GetProps<typeof GroupFrame> & {\n scrollable?: boolean\n /**\n * @default false\n */\n showScrollIndicator?: boolean\n disabled?: boolean\n vertical?: boolean\n disablePassBorderRadius?: boolean\n}\n\nfunction createGroup(verticalDefault: boolean) {\n return forwardRef<TamaguiElement, GroupProps>((props, ref) => {\n const activeProps = useMediaPropsActive(props)\n\n const {\n children: childrenProp,\n space,\n size = '$4',\n spaceDirection,\n separator,\n scrollable,\n vertical = verticalDefault,\n disabled: disabledProp,\n disablePassBorderRadius: disablePassBorderRadiusProp,\n borderRadius,\n ...restProps\n } = getExpandedShorthands(activeProps)\n\n const radius =\n borderRadius ??\n (size ? getVariableValue(getTokens(true).radius[size]) - 1 : undefined)\n const hasRadius = radius !== undefined\n const disablePassBorderRadius = disablePassBorderRadiusProp ?? !hasRadius\n const childrens = Children.toArray(childrenProp)\n const children = childrens.map((child, i) => {\n if (!isValidElement(child)) return child\n const disabled = child.props.disabled ?? disabledProp\n\n const isFirst = i === 0\n const isLast = i === childrens.length - 1\n\n const radiusStyles = disablePassBorderRadius\n ? null\n : {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n ...(hasRadius && {\n ...(isFirst &&\n !vertical && {\n borderTopLeftRadius: radius,\n borderBottomLeftRadius: radius,\n }),\n ...(isFirst &&\n vertical && {\n borderTopLeftRadius: radius,\n borderTopRightRadius: radius,\n }),\n ...(isLast &&\n !vertical && {\n borderTopRightRadius: radius,\n borderBottomRightRadius: radius,\n }),\n ...(isLast &&\n vertical && {\n borderBottomLeftRadius: radius,\n borderBottomRightRadius: radius,\n }),\n }),\n }\n\n const props = {\n disabled,\n ...(isTamaguiElement(child) ? radiusStyles : { style: radiusStyles }),\n }\n\n return cloneElementWithPropOrder(child, props)\n })\n\n return (\n <GroupFrame\n ref={ref}\n size={size}\n flexDirection={!vertical ? 'row' : 'column'}\n borderRadius={borderRadius}\n {...restProps}\n >\n {wrapScroll(\n activeProps,\n spacedChildren({\n direction: spaceDirection,\n separator,\n space,\n children,\n })\n )}\n </GroupFrame>\n )\n })\n}\n\nexport const YGroup = createGroup(true)\nexport const XGroup = createGroup(false)\n\nconst wrapScroll = (\n { scrollable, vertical, showScrollIndicator = false }: GroupProps,\n children: any\n) => {\n if (scrollable)\n return (\n <ScrollView\n {...(vertical && {\n showsVerticalScrollIndicator: showScrollIndicator,\n })}\n {...(!vertical && {\n horizontal: true,\n showsHorizontalScrollIndicator: showScrollIndicator,\n })}\n >\n {children}\n </ScrollView>\n )\n return children\n}\n\nconst cloneElementWithPropOrder = (child: any, props: Object) => {\n const next = mergeProps(child.props, props, false, getConfig().shorthands)[0]\n return React.cloneElement({ ...child, props: null }, next)\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["props"]
7
7
  }
@@ -25,7 +25,7 @@ const textAreaSizeVariant = (val = "$4", extras) => {
25
25
  const { props } = extras;
26
26
  const buttonStyles = getButtonSized(val, extras);
27
27
  const fontStyle = getFontSized(val, extras);
28
- const minHeight = (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight);
28
+ const height = props.numberOfLines ? (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight) : "auto";
29
29
  const paddingVertical = stepTokenUpOrDown(extras.tokens.space, val, -2, [2]);
30
30
  const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2]);
31
31
  return {
@@ -33,7 +33,7 @@ const textAreaSizeVariant = (val = "$4", extras) => {
33
33
  ...fontStyle,
34
34
  paddingVertical,
35
35
  paddingHorizontal,
36
- minHeight
36
+ height
37
37
  };
38
38
  };
39
39
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/inputHelpers.tsx"],
4
- "sourcesContent": ["import {\n SizeVariantSpreadFunction,\n getVariableValue,\n isWeb,\n stepTokenUpOrDown,\n} from '@tamagui/core'\nimport { getButtonSized } from '@tamagui/get-button-sized'\nimport { getFontSized } from '@tamagui/get-font-sized'\n\nexport const inputSizeVariant: SizeVariantSpreadFunction<any> = (val = '$4', extras) => {\n if (extras.props.multiline || extras.props.numberOfLines > 1) {\n return textAreaSizeVariant(val, extras)\n }\n const buttonStyles = getButtonSized(val, extras)\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n const fontStyle = getFontSized(val, extras)\n // lineHeight messes up input on native\n if (!isWeb && fontStyle) {\n delete fontStyle['lineHeight']\n }\n return {\n ...fontStyle,\n ...buttonStyles,\n paddingHorizontal,\n }\n}\n\nexport const textAreaSizeVariant: SizeVariantSpreadFunction<any> = (\n val = '$4',\n extras\n) => {\n const { props } = extras\n const buttonStyles = getButtonSized(val, extras)\n const fontStyle = getFontSized(val, extras)!\n const minHeight = (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight)\n const paddingVertical = stepTokenUpOrDown(extras.tokens.space, val, -2, [2])\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n return {\n ...buttonStyles,\n ...fontStyle,\n paddingVertical,\n paddingHorizontal,\n minHeight,\n }\n}\n"],
5
- "mappings": "AAAA;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,sBAAsB;AAC/B,SAAS,oBAAoB;AAEtB,MAAM,mBAAmD,CAAC,MAAM,MAAM,WAAW;AACtF,MAAI,OAAO,MAAM,aAAa,OAAO,MAAM,gBAAgB,GAAG;AAC5D,WAAO,oBAAoB,KAAK,MAAM;AAAA,EACxC;AACA,QAAM,eAAe,eAAe,KAAK,MAAM;AAC/C,QAAM,oBAAoB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,QAAM,YAAY,aAAa,KAAK,MAAM;AAE1C,MAAI,CAAC,SAAS,WAAW;AACvB,WAAO,UAAU;AAAA,EACnB;AACA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,EACF;AACF;AAEO,MAAM,sBAAsD,CACjE,MAAM,MACN,WACG;AACH,QAAM,EAAE,MAAM,IAAI;AAClB,QAAM,eAAe,eAAe,KAAK,MAAM;AAC/C,QAAM,YAAY,aAAa,KAAK,MAAM;AAC1C,QAAM,aAAa,MAAM,iBAAiB,KAAK,iBAAiB,UAAU,UAAU;AACpF,QAAM,kBAAkB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC3E,QAAM,oBAAoB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
4
+ "sourcesContent": ["import {\n SizeVariantSpreadFunction,\n getVariableValue,\n isWeb,\n stepTokenUpOrDown,\n} from '@tamagui/core'\nimport { getButtonSized } from '@tamagui/get-button-sized'\nimport { getFontSized } from '@tamagui/get-font-sized'\n\nexport const inputSizeVariant: SizeVariantSpreadFunction<any> = (val = '$4', extras) => {\n if (extras.props.multiline || extras.props.numberOfLines > 1) {\n return textAreaSizeVariant(val, extras)\n }\n const buttonStyles = getButtonSized(val, extras)\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n const fontStyle = getFontSized(val, extras)\n // lineHeight messes up input on native\n if (!isWeb && fontStyle) {\n delete fontStyle['lineHeight']\n }\n return {\n ...fontStyle,\n ...buttonStyles,\n paddingHorizontal,\n }\n}\n\nexport const textAreaSizeVariant: SizeVariantSpreadFunction<any> = (\n val = '$4',\n extras\n) => {\n const { props } = extras\n const buttonStyles = getButtonSized(val, extras)\n const fontStyle = getFontSized(val, extras)!\n const height = props.numberOfLines\n ? (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight)\n : 'auto'\n const paddingVertical = stepTokenUpOrDown(extras.tokens.space, val, -2, [2])\n const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])\n return {\n ...buttonStyles,\n ...fontStyle,\n paddingVertical,\n paddingHorizontal,\n height,\n }\n}\n"],
5
+ "mappings": "AAAA;AAAA,EAEE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,sBAAsB;AAC/B,SAAS,oBAAoB;AAEtB,MAAM,mBAAmD,CAAC,MAAM,MAAM,WAAW;AACtF,MAAI,OAAO,MAAM,aAAa,OAAO,MAAM,gBAAgB,GAAG;AAC5D,WAAO,oBAAoB,KAAK,MAAM;AAAA,EACxC;AACA,QAAM,eAAe,eAAe,KAAK,MAAM;AAC/C,QAAM,oBAAoB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,QAAM,YAAY,aAAa,KAAK,MAAM;AAE1C,MAAI,CAAC,SAAS,WAAW;AACvB,WAAO,UAAU;AAAA,EACnB;AACA,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,EACF;AACF;AAEO,MAAM,sBAAsD,CACjE,MAAM,MACN,WACG;AACH,QAAM,EAAE,MAAM,IAAI;AAClB,QAAM,eAAe,eAAe,KAAK,MAAM;AAC/C,QAAM,YAAY,aAAa,KAAK,MAAM;AAC1C,QAAM,SAAS,MAAM,iBAChB,MAAM,iBAAiB,KAAK,iBAAiB,UAAU,UAAU,IAClE;AACJ,QAAM,kBAAkB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC3E,QAAM,oBAAoB,kBAAkB,OAAO,OAAO,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC;AAC7E,SAAO;AAAA,IACL,GAAG;AAAA,IACH,GAAG;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
6
6
  "names": []
7
7
  }
@@ -16,7 +16,6 @@ const GroupFrame = styled(ThemeableStack, {
16
16
  name: "GroupFrame",
17
17
  backgroundColor: "$background",
18
18
  y: 0,
19
- overflow: "hidden",
20
19
  variants: {
21
20
  size: (val, { tokens }) => {
22
21
  const borderRadius = tokens.radius[val] ?? val ?? tokens.radius["$4"];
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/views/Group.tsx"],
4
- "sourcesContent": ["import {\n GetProps,\n TamaguiElement,\n getConfig,\n getExpandedShorthands,\n getTokens,\n getVariableValue,\n isTamaguiElement,\n mergeProps,\n spacedChildren,\n styled,\n useMediaPropsActive,\n} from '@tamagui/core'\nimport { ThemeableStack } from '@tamagui/stacks'\nimport React, { Children, forwardRef, isValidElement } from 'react'\nimport { ScrollView } from 'react-native'\n\nexport const GroupFrame = styled(ThemeableStack, {\n name: 'GroupFrame',\n backgroundColor: '$background',\n y: 0,\n overflow: 'hidden',\n\n variants: {\n size: (val, { tokens }) => {\n const borderRadius = tokens.radius[val] ?? val ?? tokens.radius['$4']\n return {\n borderRadius,\n }\n },\n } as const,\n\n defaultVariants: {\n size: '$4',\n },\n})\n\nexport type GroupProps = GetProps<typeof GroupFrame> & {\n scrollable?: boolean\n /**\n * @default false\n */\n showScrollIndicator?: boolean\n disabled?: boolean\n vertical?: boolean\n disablePassBorderRadius?: boolean\n}\n\nfunction createGroup(verticalDefault: boolean) {\n return forwardRef<TamaguiElement, GroupProps>((props, ref) => {\n const activeProps = useMediaPropsActive(props)\n\n const {\n children: childrenProp,\n space,\n size = '$4',\n spaceDirection,\n separator,\n scrollable,\n vertical = verticalDefault,\n disabled: disabledProp,\n disablePassBorderRadius: disablePassBorderRadiusProp,\n borderRadius,\n ...restProps\n } = getExpandedShorthands(activeProps)\n\n const radius =\n borderRadius ??\n (size ? getVariableValue(getTokens(true).radius[size]) - 1 : undefined)\n const hasRadius = radius !== undefined\n const disablePassBorderRadius = disablePassBorderRadiusProp ?? !hasRadius\n const childrens = Children.toArray(childrenProp)\n const children = childrens.map((child, i) => {\n if (!isValidElement(child)) return child\n const disabled = child.props.disabled ?? disabledProp\n\n const isFirst = i === 0\n const isLast = i === childrens.length - 1\n\n const radiusStyles = disablePassBorderRadius\n ? null\n : {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n ...(hasRadius && {\n ...(isFirst &&\n !vertical && {\n borderTopLeftRadius: radius,\n borderBottomLeftRadius: radius,\n }),\n ...(isFirst &&\n vertical && {\n borderTopLeftRadius: radius,\n borderTopRightRadius: radius,\n }),\n ...(isLast &&\n !vertical && {\n borderTopRightRadius: radius,\n borderBottomRightRadius: radius,\n }),\n ...(isLast &&\n vertical && {\n borderBottomLeftRadius: radius,\n borderBottomRightRadius: radius,\n }),\n }),\n }\n\n const props = {\n disabled,\n ...(isTamaguiElement(child) ? radiusStyles : { style: radiusStyles }),\n }\n\n return cloneElementWithPropOrder(child, props)\n })\n\n return (\n <GroupFrame\n ref={ref}\n size={size}\n flexDirection={!vertical ? 'row' : 'column'}\n borderRadius={borderRadius}\n {...restProps}\n >\n {wrapScroll(\n activeProps,\n spacedChildren({\n direction: spaceDirection,\n separator,\n space,\n children,\n }),\n )}\n </GroupFrame>\n )\n })\n}\n\nexport const YGroup = createGroup(true)\nexport const XGroup = createGroup(false)\n\nconst wrapScroll = (\n { scrollable, vertical, showScrollIndicator = false }: GroupProps,\n children: any,\n) => {\n if (scrollable)\n return (\n <ScrollView\n {...(vertical && {\n showsVerticalScrollIndicator: showScrollIndicator,\n })}\n {...(!vertical && {\n horizontal: true,\n showsHorizontalScrollIndicator: showScrollIndicator,\n })}\n >\n {children}\n </ScrollView>\n )\n return children\n}\n\nconst cloneElementWithPropOrder = (child: any, props: Object) => {\n const next = mergeProps(child.props, props, false, getConfig().shorthands)[0]\n return React.cloneElement({ ...child, props: null }, next)\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import {\n GetProps,\n TamaguiElement,\n getConfig,\n getExpandedShorthands,\n getTokens,\n getVariableValue,\n isTamaguiElement,\n mergeProps,\n spacedChildren,\n styled,\n useMediaPropsActive,\n} from '@tamagui/core'\nimport { ThemeableStack } from '@tamagui/stacks'\nimport React, { Children, forwardRef, isValidElement } from 'react'\nimport { ScrollView } from 'react-native'\n\nexport const GroupFrame = styled(ThemeableStack, {\n name: 'GroupFrame',\n backgroundColor: '$background',\n y: 0,\n\n variants: {\n size: (val, { tokens }) => {\n const borderRadius = tokens.radius[val] ?? val ?? tokens.radius['$4']\n return {\n borderRadius,\n }\n },\n } as const,\n\n defaultVariants: {\n size: '$4',\n },\n})\n\nexport type GroupProps = GetProps<typeof GroupFrame> & {\n scrollable?: boolean\n /**\n * @default false\n */\n showScrollIndicator?: boolean\n disabled?: boolean\n vertical?: boolean\n disablePassBorderRadius?: boolean\n}\n\nfunction createGroup(verticalDefault: boolean) {\n return forwardRef<TamaguiElement, GroupProps>((props, ref) => {\n const activeProps = useMediaPropsActive(props)\n\n const {\n children: childrenProp,\n space,\n size = '$4',\n spaceDirection,\n separator,\n scrollable,\n vertical = verticalDefault,\n disabled: disabledProp,\n disablePassBorderRadius: disablePassBorderRadiusProp,\n borderRadius,\n ...restProps\n } = getExpandedShorthands(activeProps)\n\n const radius =\n borderRadius ??\n (size ? getVariableValue(getTokens(true).radius[size]) - 1 : undefined)\n const hasRadius = radius !== undefined\n const disablePassBorderRadius = disablePassBorderRadiusProp ?? !hasRadius\n const childrens = Children.toArray(childrenProp)\n const children = childrens.map((child, i) => {\n if (!isValidElement(child)) return child\n const disabled = child.props.disabled ?? disabledProp\n\n const isFirst = i === 0\n const isLast = i === childrens.length - 1\n\n const radiusStyles = disablePassBorderRadius\n ? null\n : {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n borderBottomLeftRadius: 0,\n borderBottomRightRadius: 0,\n ...(hasRadius && {\n ...(isFirst &&\n !vertical && {\n borderTopLeftRadius: radius,\n borderBottomLeftRadius: radius,\n }),\n ...(isFirst &&\n vertical && {\n borderTopLeftRadius: radius,\n borderTopRightRadius: radius,\n }),\n ...(isLast &&\n !vertical && {\n borderTopRightRadius: radius,\n borderBottomRightRadius: radius,\n }),\n ...(isLast &&\n vertical && {\n borderBottomLeftRadius: radius,\n borderBottomRightRadius: radius,\n }),\n }),\n }\n\n const props = {\n disabled,\n ...(isTamaguiElement(child) ? radiusStyles : { style: radiusStyles }),\n }\n\n return cloneElementWithPropOrder(child, props)\n })\n\n return (\n <GroupFrame\n ref={ref}\n size={size}\n flexDirection={!vertical ? 'row' : 'column'}\n borderRadius={borderRadius}\n {...restProps}\n >\n {wrapScroll(\n activeProps,\n spacedChildren({\n direction: spaceDirection,\n separator,\n space,\n children,\n })\n )}\n </GroupFrame>\n )\n })\n}\n\nexport const YGroup = createGroup(true)\nexport const XGroup = createGroup(false)\n\nconst wrapScroll = (\n { scrollable, vertical, showScrollIndicator = false }: GroupProps,\n children: any\n) => {\n if (scrollable)\n return (\n <ScrollView\n {...(vertical && {\n showsVerticalScrollIndicator: showScrollIndicator,\n })}\n {...(!vertical && {\n horizontal: true,\n showsHorizontalScrollIndicator: showScrollIndicator,\n })}\n >\n {children}\n </ScrollView>\n )\n return children\n}\n\nconst cloneElementWithPropOrder = (child: any, props: Object) => {\n const next = mergeProps(child.props, props, false, getConfig().shorthands)[0]\n return React.cloneElement({ ...child, props: null }, next)\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["props"]
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tamagui",
3
- "version": "1.0.1-rc.9",
3
+ "version": "1.0.2",
4
4
  "sideEffects": [
5
5
  "*.css",
6
6
  "*setup.js"
@@ -26,46 +26,46 @@
26
26
  "check-circular-deps": "npx madge --circular ./src/index.ts"
27
27
  },
28
28
  "dependencies": {
29
- "@tamagui/adapt": "^1.0.1-rc.9",
30
- "@tamagui/alert-dialog": "^1.0.1-rc.9",
31
- "@tamagui/animate-presence": "^1.0.1-rc.9",
32
- "@tamagui/avatar": "^1.0.1-rc.9",
33
- "@tamagui/button": "^1.0.1-rc.9",
34
- "@tamagui/card": "^1.0.1-rc.9",
35
- "@tamagui/compose-refs": "^1.0.1-rc.9",
36
- "@tamagui/core": "^1.0.1-rc.9",
37
- "@tamagui/create-context": "^1.0.1-rc.9",
38
- "@tamagui/dialog": "^1.0.1-rc.9",
39
- "@tamagui/fake-react-native": "^1.0.1-rc.9",
40
- "@tamagui/font-size": "^1.0.1-rc.9",
41
- "@tamagui/get-button-sized": "^1.0.1-rc.9",
42
- "@tamagui/get-font-sized": "^1.0.1-rc.9",
43
- "@tamagui/helpers": "^1.0.1-rc.9",
44
- "@tamagui/helpers-tamagui": "^1.0.1-rc.9",
45
- "@tamagui/image": "^1.0.1-rc.9",
46
- "@tamagui/label": "^1.0.1-rc.9",
47
- "@tamagui/list-item": "^1.0.1-rc.9",
48
- "@tamagui/popover": "^1.0.1-rc.9",
49
- "@tamagui/popper": "^1.0.1-rc.9",
50
- "@tamagui/portal": "^1.0.1-rc.9",
51
- "@tamagui/progress": "^1.0.1-rc.9",
52
- "@tamagui/react-native-media-driver": "^1.0.1-rc.9",
53
- "@tamagui/scroll-view": "^1.0.1-rc.9",
54
- "@tamagui/select": "^1.0.1-rc.9",
55
- "@tamagui/separator": "^1.0.1-rc.9",
56
- "@tamagui/shapes": "^1.0.1-rc.9",
57
- "@tamagui/sheet": "^1.0.1-rc.9",
58
- "@tamagui/slider": "^1.0.1-rc.9",
59
- "@tamagui/stacks": "^1.0.1-rc.9",
60
- "@tamagui/switch": "^1.0.1-rc.9",
61
- "@tamagui/text": "^1.0.1-rc.9",
62
- "@tamagui/tooltip": "^1.0.1-rc.9",
63
- "@tamagui/use-controllable-state": "^1.0.1-rc.9",
64
- "@tamagui/use-debounce": "^1.0.1-rc.9",
65
- "@tamagui/use-event": "^1.0.1-rc.9",
66
- "@tamagui/use-force-update": "^1.0.1-rc.9",
67
- "@tamagui/use-window-dimensions": "^1.0.1-rc.9",
68
- "@tamagui/visually-hidden": "^1.0.1-rc.9",
29
+ "@tamagui/adapt": "^1.0.2",
30
+ "@tamagui/alert-dialog": "^1.0.2",
31
+ "@tamagui/animate-presence": "^1.0.2",
32
+ "@tamagui/avatar": "^1.0.2",
33
+ "@tamagui/button": "^1.0.2",
34
+ "@tamagui/card": "^1.0.2",
35
+ "@tamagui/compose-refs": "^1.0.2",
36
+ "@tamagui/core": "^1.0.2",
37
+ "@tamagui/create-context": "^1.0.2",
38
+ "@tamagui/dialog": "^1.0.2",
39
+ "@tamagui/fake-react-native": "^1.0.2",
40
+ "@tamagui/font-size": "^1.0.2",
41
+ "@tamagui/get-button-sized": "^1.0.2",
42
+ "@tamagui/get-font-sized": "^1.0.2",
43
+ "@tamagui/helpers": "^1.0.2",
44
+ "@tamagui/helpers-tamagui": "^1.0.2",
45
+ "@tamagui/image": "^1.0.2",
46
+ "@tamagui/label": "^1.0.2",
47
+ "@tamagui/list-item": "^1.0.2",
48
+ "@tamagui/popover": "^1.0.2",
49
+ "@tamagui/popper": "^1.0.2",
50
+ "@tamagui/portal": "^1.0.2",
51
+ "@tamagui/progress": "^1.0.2",
52
+ "@tamagui/react-native-media-driver": "^1.0.2",
53
+ "@tamagui/scroll-view": "^1.0.2",
54
+ "@tamagui/select": "^1.0.2",
55
+ "@tamagui/separator": "^1.0.2",
56
+ "@tamagui/shapes": "^1.0.2",
57
+ "@tamagui/sheet": "^1.0.2",
58
+ "@tamagui/slider": "^1.0.2",
59
+ "@tamagui/stacks": "^1.0.2",
60
+ "@tamagui/switch": "^1.0.2",
61
+ "@tamagui/text": "^1.0.2",
62
+ "@tamagui/tooltip": "^1.0.2",
63
+ "@tamagui/use-controllable-state": "^1.0.2",
64
+ "@tamagui/use-debounce": "^1.0.2",
65
+ "@tamagui/use-event": "^1.0.2",
66
+ "@tamagui/use-force-update": "^1.0.2",
67
+ "@tamagui/use-window-dimensions": "^1.0.2",
68
+ "@tamagui/visually-hidden": "^1.0.2",
69
69
  "expo-linear-gradient": "^12.0.1",
70
70
  "expo-screen-orientation": "^5.0.1",
71
71
  "react": "^18.2.0",
@@ -75,7 +75,7 @@
75
75
  "react-native-web": "*"
76
76
  },
77
77
  "devDependencies": {
78
- "@tamagui/build": "^1.0.1-rc.9",
78
+ "@tamagui/build": "^1.0.2",
79
79
  "@types/node": "^16.11.9",
80
80
  "@types/react": "^18.0.15",
81
81
  "react-native-web": "^0.18.3"
@@ -32,7 +32,9 @@ export const textAreaSizeVariant: SizeVariantSpreadFunction<any> = (
32
32
  const { props } = extras
33
33
  const buttonStyles = getButtonSized(val, extras)
34
34
  const fontStyle = getFontSized(val, extras)!
35
- const minHeight = (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight)
35
+ const height = props.numberOfLines
36
+ ? (props.numberOfLines || 1) * getVariableValue(fontStyle.lineHeight)
37
+ : 'auto'
36
38
  const paddingVertical = stepTokenUpOrDown(extras.tokens.space, val, -2, [2])
37
39
  const paddingHorizontal = stepTokenUpOrDown(extras.tokens.space, val, -1, [2])
38
40
  return {
@@ -40,6 +42,6 @@ export const textAreaSizeVariant: SizeVariantSpreadFunction<any> = (
40
42
  ...fontStyle,
41
43
  paddingVertical,
42
44
  paddingHorizontal,
43
- minHeight,
45
+ height,
44
46
  }
45
47
  }
@@ -19,7 +19,6 @@ export const GroupFrame = styled(ThemeableStack, {
19
19
  name: 'GroupFrame',
20
20
  backgroundColor: '$background',
21
21
  y: 0,
22
- overflow: 'hidden',
23
22
 
24
23
  variants: {
25
24
  size: (val, { tokens }) => {
@@ -131,7 +130,7 @@ function createGroup(verticalDefault: boolean) {
131
130
  separator,
132
131
  space,
133
132
  children,
134
- }),
133
+ })
135
134
  )}
136
135
  </GroupFrame>
137
136
  )
@@ -143,7 +142,7 @@ export const XGroup = createGroup(false)
143
142
 
144
143
  const wrapScroll = (
145
144
  { scrollable, vertical, showScrollIndicator = false }: GroupProps,
146
- children: any,
145
+ children: any
147
146
  ) => {
148
147
  if (scrollable)
149
148
  return (