Skip to content

Commit 76f1ca3

Browse files
chore: cleanup remaining sx props (#6959)
Co-authored-by: Mike Perrotti <[email protected]>
1 parent 446956d commit 76f1ca3

File tree

13 files changed

+30
-35
lines changed

13 files changed

+30
-35
lines changed

.changeset/lemon-onions-teach.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@primer/react": patch
3+
---
4+
5+
chore(AvatarStack, CheckboxOrRadioGroup, UnstyledTextInput): cleanup remaining sx props

package-lock.json

Lines changed: 7 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/react/src/AvatarStack/AvatarStack.tsx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import {isResponsiveValue} from '../hooks/useResponsiveValue'
77
import type {WidthOnlyViewportRangeKeys} from '../utils/types/ViewportRangeKeys'
88
import classes from './AvatarStack.module.css'
99
import {hasInteractiveNodes} from '../internal/utils/hasInteractiveNodes'
10-
import {BoxWithFallback} from '../internal/components/BoxWithFallback'
1110

1211
const transformChildren = (children: React.ReactNode, shape: AvatarStackProps['shape']) => {
1312
return React.Children.map(children, child => {
@@ -158,8 +157,7 @@ const AvatarStack = ({
158157
}
159158

160159
return (
161-
<BoxWithFallback
162-
as="span"
160+
<span
163161
data-variant={variant}
164162
data-shape={shape}
165163
data-avatar-count={count > 3 ? '3+' : count}
@@ -187,7 +185,7 @@ const AvatarStack = ({
187185
{' '}
188186
{transformChildren(children, shape)}
189187
</AvatarStackBody>
190-
</BoxWithFallback>
188+
</span>
191189
)
192190
}
193191

packages/react/src/CheckboxGroup/CheckboxGroup.stories.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import type {CheckboxOrRadioGroupArgs} from '../utils/form-story-helpers'
55
export default {
66
title: 'Components/CheckboxGroup',
77
component: CheckboxGroup,
8-
parameters: {controls: {exclude: ['aria-labelledby', 'id', 'onChange', 'sx']}},
8+
parameters: {controls: {exclude: ['aria-labelledby', 'id', 'onChange']}},
99
} as Meta
1010

1111
export const Playground = ({

packages/react/src/Radio/Radio.stories.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import {
88
getFormControlArgsByChildComponent,
99
} from '../utils/form-story-helpers'
1010

11-
const excludedControlKeys = ['required', 'value', 'name', 'validationStatus', 'sx']
11+
const excludedControlKeys = ['required', 'value', 'name', 'validationStatus']
1212

1313
export default {
1414
title: 'Components/Radio',

packages/react/src/RadioGroup/RadioGroup.stories.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import type {CheckboxOrRadioGroupArgs} from '../utils/form-story-helpers'
55
export default {
66
title: 'Components/RadioGroup',
77
component: RadioGroup,
8-
parameters: {controls: {exclude: ['aria-labelledby', 'id', 'onChange', 'sx']}},
8+
parameters: {controls: {exclude: ['aria-labelledby', 'id', 'onChange']}},
99
} as Meta
1010

1111
export const Playground = ({

packages/react/src/UnderlineNav/UnderlineNav.stories.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import type {Meta, StoryFn} from '@storybook/react-vite'
22
import {UnderlineNav} from './index'
33
import {UnderlineNavItem} from './UnderlineNavItem'
44

5-
const excludedControlKeys = ['sx', 'as', 'align', 'afterSelect']
5+
const excludedControlKeys = ['as', 'align', 'afterSelect']
66

77
const meta: Meta<typeof UnderlineNav> = {
88
title: 'Components/UnderlineNav',

packages/react/src/internal/components/CheckboxOrRadioGroup/CheckboxOrRadioGroup.tsx

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,8 @@ import CheckboxOrRadioGroupValidation from './CheckboxOrRadioGroupValidation'
77
import CheckboxOrRadioGroupContext from './CheckboxOrRadioGroupContext'
88
import VisuallyHidden from '../../../_VisuallyHidden'
99
import {useSlots} from '../../../hooks/useSlots'
10-
import type {SxProp} from '../../../sx'
1110
import classes from './CheckboxOrRadioGroup.module.css'
1211
import {clsx} from 'clsx'
13-
import {BoxWithFallback} from '../BoxWithFallback'
1412

1513
export type CheckboxOrRadioGroupProps = {
1614
/** Class name for custom styling */
@@ -32,7 +30,7 @@ export type CheckboxOrRadioGroupProps = {
3230
* If true, the user must make a selection before the owning form can be submitted
3331
*/
3432
required?: boolean
35-
} & SxProp
33+
}
3634

3735
const CheckboxOrRadioGroup: React.FC<React.PropsWithChildren<CheckboxOrRadioGroupProps>> = ({
3836
'aria-labelledby': ariaLabelledby,
@@ -41,7 +39,6 @@ const CheckboxOrRadioGroup: React.FC<React.PropsWithChildren<CheckboxOrRadioGrou
4139
id: idProp,
4240
required = false,
4341
className,
44-
sx,
4542
}) => {
4643
const [slots, rest] = useSlots(children, {
4744
caption: CheckboxOrRadioGroupCaption,
@@ -70,6 +67,8 @@ const CheckboxOrRadioGroup: React.FC<React.PropsWithChildren<CheckboxOrRadioGrou
7067

7168
const isLegendVisible = React.isValidElement(labelChild) && !labelChild.props.visuallyHidden
7269

70+
const Component = labelChild ? 'fieldset' : 'div'
71+
7372
return (
7473
<CheckboxOrRadioGroupContext.Provider
7574
value={{
@@ -80,16 +79,14 @@ const CheckboxOrRadioGroup: React.FC<React.PropsWithChildren<CheckboxOrRadioGrou
8079
}}
8180
>
8281
<div>
83-
<BoxWithFallback
82+
<Component
8483
className={clsx(className, classes.GroupFieldset)}
8584
data-validation={validationChild ? '' : undefined}
8685
{...(labelChild
8786
? {
88-
as: 'fieldset',
8987
disabled,
9088
}
9189
: {})}
92-
sx={sx}
9390
>
9491
{labelChild ? (
9592
/*
@@ -126,7 +123,7 @@ const CheckboxOrRadioGroup: React.FC<React.PropsWithChildren<CheckboxOrRadioGrou
126123
>
127124
{React.Children.toArray(rest).filter(child => React.isValidElement(child))}
128125
</div>
129-
</BoxWithFallback>
126+
</Component>
130127
{validationChild && (
131128
<ValidationAnimationContainer
132129
// If we have CheckboxOrRadioGroup.Label as a child, we render a screenreader-accessible validation message in the <legend>

packages/react/src/internal/components/CheckboxOrRadioGroup/CheckboxOrRadioGroupCaption.tsx

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import React from 'react'
22
import Text from '../../../Text'
3-
import type {SxProp} from '../../../sx'
43
import CheckboxOrRadioGroupContext from './CheckboxOrRadioGroupContext'
54
import classes from './CheckboxOrRadioGroup.module.css'
65
import {clsx} from 'clsx'
76

8-
type CheckboxOrRadioGroupCaptionProps = React.PropsWithChildren<SxProp> & {className?: string}
7+
type CheckboxOrRadioGroupCaptionProps = React.PropsWithChildren<{className?: string}>
98

109
const CheckboxOrRadioGroupCaption: React.FC<CheckboxOrRadioGroupCaptionProps> = ({className, children}) => {
1110
const {captionId} = React.useContext(CheckboxOrRadioGroupContext)

packages/react/src/internal/components/CheckboxOrRadioGroup/CheckboxOrRadioGroupValidation.tsx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,20 @@
11
import React from 'react'
22
import InputValidation from '../InputValidation'
3-
import type {SxProp} from '../../../sx'
43
import type {FormValidationStatus} from '../../../utils/types/FormValidationStatus'
54
import CheckboxOrRadioGroupContext from './CheckboxOrRadioGroupContext'
65

76
export type CheckboxOrRadioGroupValidationProps = {
87
/** Changes the visual style to match the validation status */
98
variant: FormValidationStatus
10-
} & SxProp
9+
}
1110

1211
const CheckboxOrRadioGroupValidation: React.FC<React.PropsWithChildren<CheckboxOrRadioGroupValidationProps>> = ({
1312
children,
1413
variant,
15-
sx,
1614
}) => {
1715
const {validationMessageId = ''} = React.useContext(CheckboxOrRadioGroupContext)
1816
return (
19-
<InputValidation validationStatus={variant} id={validationMessageId} sx={sx}>
17+
<InputValidation validationStatus={variant} id={validationMessageId}>
2018
{children}
2119
</InputValidation>
2220
)

0 commit comments

Comments
 (0)