Skip to content

Commit ad3610b

Browse files
committed
Revert "feat(Token): Migrate to CSS modules behind feature flag Pt 2 (#5271)"
This reverts commit 05db651.
1 parent 45157e0 commit ad3610b

File tree

9 files changed

+32
-310
lines changed

9 files changed

+32
-310
lines changed

.changeset/slow-spoons-peel.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

packages/react/src/Token/AvatarToken.module.css

Lines changed: 0 additions & 36 deletions
This file was deleted.

packages/react/src/Token/AvatarToken.tsx

Lines changed: 9 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -6,51 +6,23 @@ import {defaultTokenSize, tokenSizes} from './TokenBase'
66
import Token from './Token'
77
import Avatar from '../Avatar'
88
import type {ForwardRefComponent as PolymorphicForwardRefComponent} from '../utils/polymorphic'
9-
import {toggleStyledComponent} from '../internal/utils/toggleStyledComponent'
10-
import {useFeatureFlag} from '../FeatureFlags'
11-
import classes from './AvatarToken.module.css'
12-
import {clsx} from 'clsx'
139

1410
// TODO: update props to only accept 'large' and 'xlarge' on the next breaking change
1511
export interface AvatarTokenProps extends TokenBaseProps {
1612
avatarSrc: string
1713
}
1814

19-
const CSS_MODULES_FEATURE_FLAG = 'primer_react_css_modules_team'
15+
const AvatarContainer = styled.span<{avatarSize: TokenSizeKeys}>`
16+
// 'space.1' is used because to match space from the left of the token to the left of the avatar
17+
// '* 2' is done to account for the top and bottom
18+
--spacing: calc(${get('space.1')} * 2);
2019
21-
const AvatarContainer = toggleStyledComponent(
22-
CSS_MODULES_FEATURE_FLAG,
23-
'span',
24-
styled.span<{avatarSize: TokenSizeKeys}>`
25-
// 'space.1' is used because to match space from the left of the token to the left of the avatar
26-
// '* 2' is done to account for the top and bottom
27-
--spacing: calc(${get('space.1')} * 2);
28-
29-
display: block;
30-
height: ${props => `calc(${tokenSizes[props.avatarSize]} - var(--spacing))`};
31-
width: ${props => `calc(${tokenSizes[props.avatarSize]} - var(--spacing))`};
32-
`,
33-
)
34-
35-
const AvatarToken = forwardRef(({avatarSrc, id, size = defaultTokenSize, className, ...rest}, forwardedRef) => {
36-
const enabled = useFeatureFlag(CSS_MODULES_FEATURE_FLAG)
37-
if (enabled) {
38-
return (
39-
<Token
40-
leadingVisual={() => (
41-
<AvatarContainer avatarSize={size} className={classes.AvatarContainer} data-size={size}>
42-
<Avatar src={avatarSrc} size={parseInt(tokenSizes[size], 10)} className={classes.Avatar} />
43-
</AvatarContainer>
44-
)}
45-
size={size}
46-
id={id?.toString()}
47-
className={clsx(classes.Token, className)}
48-
{...rest}
49-
ref={forwardedRef}
50-
/>
51-
)
52-
}
20+
display: block;
21+
height: ${props => `calc(${tokenSizes[props.avatarSize]} - var(--spacing))`};
22+
width: ${props => `calc(${tokenSizes[props.avatarSize]} - var(--spacing))`};
23+
`
5324

25+
const AvatarToken = forwardRef(({avatarSrc, id, size = defaultTokenSize, ...rest}, forwardedRef) => {
5426
return (
5527
<Token
5628
leadingVisual={() => (

packages/react/src/Token/IssueLabelToken.module.css

Lines changed: 0 additions & 8 deletions
This file was deleted.

packages/react/src/Token/IssueLabelToken.tsx

Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,6 @@ import {parseToHsla, parseToRgba} from 'color2k'
88
import {useTheme} from '../ThemeProvider'
99
import TokenTextContainer from './_TokenTextContainer'
1010
import type {ForwardRefComponent as PolymorphicForwardRefComponent} from '../utils/polymorphic'
11-
import classes from './IssueLabelToken.module.css'
12-
import {useFeatureFlag} from '../FeatureFlags'
13-
import {clsx} from 'clsx'
1411

1512
export interface IssueLabelTokenProps extends TokenBaseProps {
1613
/**
@@ -19,7 +16,6 @@ export interface IssueLabelTokenProps extends TokenBaseProps {
1916
fillColor?: string
2017
}
2118

22-
const CSS_MODULES_FEATURE_FLAG = 'primer_react_css_modules_team'
2319
const tokenBorderWidthPx = 1
2420

2521
const lightModeStyles = {
@@ -47,8 +43,6 @@ const darkModeStyles = {
4743
}
4844

4945
const IssueLabelToken = forwardRef((props, forwardedRef) => {
50-
const enabled = useFeatureFlag(CSS_MODULES_FEATURE_FLAG)
51-
5246
const {
5347
as,
5448
fillColor = '#999',
@@ -60,15 +54,13 @@ const IssueLabelToken = forwardRef((props, forwardedRef) => {
6054
hideRemoveButton,
6155
href,
6256
onClick,
63-
className,
6457
...rest
6558
} = props
6659
const interactiveTokenProps = {
6760
as,
6861
href,
6962
onClick,
7063
}
71-
7264
const {resolvedColorScheme} = useTheme()
7365
const hasMultipleActionTargets = isTokenInteractive(props) && Boolean(onRemove) && !hideRemoveButton
7466
const onRemoveClick: MouseEventHandler = e => {
@@ -141,37 +133,6 @@ const IssueLabelToken = forwardRef((props, forwardedRef) => {
141133
}
142134
}, [fillColor, resolvedColorScheme, hideRemoveButton, onRemove, isSelected, props])
143135

144-
if (enabled) {
145-
return (
146-
<TokenBase
147-
onRemove={onRemove}
148-
id={id?.toString()}
149-
isSelected={isSelected}
150-
className={clsx(classes.IssueLabel, className)}
151-
text={text}
152-
size={size}
153-
style={labelStyles}
154-
data-has-remove-button={!hideRemoveButton && !!onRemove}
155-
{...(!hasMultipleActionTargets ? interactiveTokenProps : {})}
156-
{...rest}
157-
ref={forwardedRef}
158-
>
159-
<TokenTextContainer {...(hasMultipleActionTargets ? interactiveTokenProps : {})}>{text}</TokenTextContainer>
160-
{!hideRemoveButton && onRemove ? (
161-
<RemoveTokenButton
162-
borderOffset={tokenBorderWidthPx}
163-
onClick={onRemoveClick}
164-
size={size}
165-
aria-hidden={hasMultipleActionTargets ? 'true' : 'false'}
166-
isParentInteractive={isTokenInteractive(props)}
167-
data-has-multiple-action-targets={hasMultipleActionTargets}
168-
className={classes.RemoveButton}
169-
/>
170-
) : null}
171-
</TokenBase>
172-
)
173-
}
174-
175136
return (
176137
<TokenBase
177138
onRemove={onRemove}

packages/react/src/Token/Token.module.css

Lines changed: 0 additions & 21 deletions
This file was deleted.

packages/react/src/Token/Token.tsx

Lines changed: 4 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,15 @@
11
import type {MouseEventHandler} from 'react'
22
import React, {forwardRef} from 'react'
33
import Box from '../Box'
4-
import {merge, type BetterSystemStyleObject, type SxProp} from '../sx'
4+
import type {BetterSystemStyleObject, SxProp} from '../sx'
5+
import {merge} from '../sx'
56
import {defaultSxProp} from '../utils/defaultSxProp'
67
import type {TokenBaseProps} from './TokenBase'
78
import TokenBase, {defaultTokenSize, isTokenInteractive} from './TokenBase'
89
import RemoveTokenButton from './_RemoveTokenButton'
910
import TokenTextContainer from './_TokenTextContainer'
1011
import type {ForwardRefComponent as PolymorphicForwardRefComponent} from '../utils/polymorphic'
1112
import VisuallyHidden from '../_VisuallyHidden'
12-
import {useFeatureFlag} from '../FeatureFlags'
13-
14-
import classes from './Token.module.css'
15-
import {clsx} from 'clsx'
1613

1714
// Omitting onResize and onResizeCapture because seems like React 18 types includes these menthod in the expansion but React 17 doesn't.
1815
// TODO: This is a temporary solution until we figure out why these methods are causing type errors.
@@ -23,8 +20,6 @@ export interface TokenProps extends TokenBaseProps, SxProp {
2320
leadingVisual?: React.ElementType
2421
}
2522

26-
const CSS_MODULES_FEATURE_FLAG = 'primer_react_css_modules_team'
27-
2823
const tokenBorderWidthPx = 1
2924

3025
const LeadingVisualContainer: React.FC<React.PropsWithChildren<Pick<TokenBaseProps, 'size'>>> = ({children, size}) => (
@@ -40,8 +35,6 @@ const LeadingVisualContainer: React.FC<React.PropsWithChildren<Pick<TokenBasePro
4035
)
4136

4237
const Token = forwardRef((props, forwardedRef) => {
43-
const enabled = useFeatureFlag(CSS_MODULES_FEATURE_FLAG)
44-
4538
const {
4639
as,
4740
onRemove,
@@ -53,8 +46,6 @@ const Token = forwardRef((props, forwardedRef) => {
5346
href,
5447
onClick,
5548
sx: sxProp = defaultSxProp,
56-
className,
57-
style,
5849
...rest
5950
} = props
6051
const hasMultipleActionTargets = isTokenInteractive(props) && Boolean(onRemove) && !hideRemoveButton
@@ -67,8 +58,7 @@ const Token = forwardRef((props, forwardedRef) => {
6758
href,
6859
onClick,
6960
}
70-
71-
const mergedSx = merge<BetterSystemStyleObject>(
61+
const sx = merge<BetterSystemStyleObject>(
7262
{
7363
backgroundColor: 'neutral.subtle',
7464
borderColor: props.isSelected ? 'fg.default' : 'border.subtle',
@@ -90,56 +80,16 @@ const Token = forwardRef((props, forwardedRef) => {
9080
sxProp,
9181
)
9282

93-
if (enabled) {
94-
return (
95-
<TokenBase
96-
onRemove={onRemove}
97-
id={id?.toString()}
98-
className={clsx(className, classes.Token)}
99-
text={text}
100-
size={size}
101-
sx={sxProp}
102-
data-is-selected={props.isSelected}
103-
data-is-remove-btn={!(hideRemoveButton || !onRemove)}
104-
{...(!hasMultipleActionTargets ? interactiveTokenProps : {})}
105-
{...rest}
106-
ref={forwardedRef}
107-
style={{borderWidth: `${tokenBorderWidthPx}px`, ...style}}
108-
>
109-
{LeadingVisual ? (
110-
<LeadingVisualContainer size={size}>
111-
<LeadingVisual />
112-
</LeadingVisualContainer>
113-
) : null}
114-
<TokenTextContainer {...(hasMultipleActionTargets ? interactiveTokenProps : {})}>
115-
{text}
116-
{onRemove && <VisuallyHidden> (press backspace or delete to remove)</VisuallyHidden>}
117-
</TokenTextContainer>
118-
119-
{!hideRemoveButton && onRemove ? (
120-
<RemoveTokenButton
121-
borderOffset={tokenBorderWidthPx}
122-
onClick={onRemoveClick}
123-
size={size}
124-
isParentInteractive={isTokenInteractive(props)}
125-
aria-hidden={hasMultipleActionTargets ? 'true' : 'false'}
126-
/>
127-
) : null}
128-
</TokenBase>
129-
)
130-
}
131-
13283
return (
13384
<TokenBase
13485
onRemove={onRemove}
13586
id={id?.toString()}
13687
text={text}
13788
size={size}
138-
sx={mergedSx}
89+
sx={sx}
13990
{...(!hasMultipleActionTargets ? interactiveTokenProps : {})}
14091
{...rest}
14192
ref={forwardedRef}
142-
style={style}
14393
>
14494
{LeadingVisual ? (
14595
<LeadingVisualContainer size={size}>

packages/react/src/Token/TokenBase.module.css

Lines changed: 0 additions & 60 deletions
This file was deleted.

0 commit comments

Comments
 (0)