Skip to content

chore(Token): Remove the CSS modules feature flag from the Token component #6014

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
May 9, 2025

Conversation

jonrohan
Copy link
Member

@jonrohan jonrohan commented May 7, 2025

Closes https://github.com/github/primer/issues/4367

Changelog

New

Changed

Removed

Remove the CSS modules feature flag from the Token component

Rollout strategy

  • Patch release
  • Minor release
  • Major release; if selected, include a written rollout or migration plan
  • None; if selected, include a brief description as to why

Testing & Reviewing

Merge checklist

Copy link

changeset-bot bot commented May 7, 2025

🦋 Changeset detected

Latest commit: 32a0353

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@primer/react Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions github-actions bot added staff Author is a staff member integration-tests: recommended This change needs to be tested for breaking changes. See https://arc.net/l/quote/tdmpakpm labels May 7, 2025
Copy link
Contributor

github-actions bot commented May 7, 2025

👋 Hi, this pull request contains changes to the source code that github/github depends on. If you are GitHub staff, we recommend testing these changes with github/github using the integration workflow. Thanks!

Copy link
Contributor

github-actions bot commented May 7, 2025

size-limit report 📦

Path Size
packages/react/dist/browser.esm.js 97.13 KB (-0.79% 🔽)
packages/react/dist/browser.umd.js 97.54 KB (-0.67% 🔽)

@primer-integration
Copy link

👋 Hi from github/github! Your integration PR is ready: https://github.com/github/github/pull/376647

@github-actions github-actions bot requested a deployment to storybook-preview-6014 May 7, 2025 00:55 Abandoned
@github-actions github-actions bot temporarily deployed to storybook-preview-6014 May 7, 2025 01:09 Inactive
@primer-integration
Copy link

🟢 golden-jobs completed with status success.

@github-actions github-actions bot added integration-tests: passing Changes in this PR do NOT cause breaking changes in gh/gh and removed integration-tests: recommended This change needs to be tested for breaking changes. See https://arc.net/l/quote/tdmpakpm labels May 7, 2025
@github-actions github-actions bot added the integration-tests: recommended This change needs to be tested for breaking changes. See https://arc.net/l/quote/tdmpakpm label May 7, 2025
Copy link
Contributor

github-actions bot commented May 7, 2025

👋 Hi, there are new commits since the last successful integration test. We recommend running the integration workflow once more, unless you are sure the new changes do not affect github/github. Thanks!

@jonrohan jonrohan removed the integration-tests: recommended This change needs to be tested for breaking changes. See https://arc.net/l/quote/tdmpakpm label May 7, 2025
@jonrohan jonrohan marked this pull request as ready for review May 7, 2025 03:12
@Copilot Copilot AI review requested due to automatic review settings May 7, 2025 03:12
@jonrohan jonrohan requested a review from a team as a code owner May 7, 2025 03:12
@jonrohan jonrohan requested a review from joshblack May 7, 2025 03:12
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR removes the CSS modules feature flag from the Token component, drops the old styled-components toggles, and wires all Token subcomponents to use CSS modules via BoxWithFallback.

  • Remove all useFeatureFlag and toggleStyledComponent logic for primer_react_css_modules_ga.
  • Swap out styled-component wrappers for BoxWithFallback + CSS modules classes.
  • Clean up TokenBase and its children (_TokenTextContainer, _RemoveTokenButton, AvatarToken, IssueLabelToken, etc.) to use native elements and CSS modules directly.

Reviewed Changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/Token/_TokenTextContainer.tsx Replaced styled-component toggle with BoxWithFallback + CSS module class.
src/Token/_RemoveTokenButton.tsx Dropped styled-system variants & feature-flag logic; wrapped in BoxWithFallback.
src/Token/TokenBase.tsx Collapsed dual-branch into a single BoxWithFallback; removed styled-component.
src/Token/Token.tsx Removed feature-flag guard and style merges; simplified markup.
src/Token/Token.module.css Added leading visual container styles.
src/Token/IssueLabelToken.tsx Removed feature-flag guard and styled-system code.
src/Token/AvatarToken.tsx Dropped styled-component wrapper; replaced with native <span>.
.changeset/tame-trains-hide.md Bump to minor and note CSS modules flag removal.
Comments suppressed due to low confidence (2)

packages/react/src/Token/TokenBase.tsx:74

  • The handler no longer invokes onRemove when Backspace or Delete is pressed. Reintroduce logic to call onRemove() inside this callback when those keys are detected to preserve keyboard-removal behavior.
onKeyDown={(event: KeyboardEvent<HTMLSpanElement & HTMLAnchorElement & HTMLButtonElement>) => {

packages/react/src/Token/TokenBase.tsx:74

  • New keyboard-removal logic should be covered by unit tests to ensure onRemove fires on Backspace/Delete. Add tests targeting this keydown behavior.
onKeyDown={(event: KeyboardEvent<HTMLSpanElement & HTMLAnchorElement & HTMLButtonElement>) => {

return (
<StyledTokenBase
<BoxWithFallback
Copy link
Preview

Copilot AI May 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The className and id props are destructured but not forwarded into BoxWithFallback, so any custom classes or identifiers on TokenBase are dropped. Add className={className} and id={id} to the component.

Copilot uses AI. Check for mistakes.

@jonrohan jonrohan enabled auto-merge May 7, 2025 15:54
Copy link
Contributor

github-actions bot commented May 9, 2025

👋 Hi, there are new commits since the last successful integration test. We recommend running the integration workflow once more, unless you are sure the new changes do not affect github/github. Thanks!

@github-actions github-actions bot added the integration-tests: recommended This change needs to be tested for breaking changes. See https://arc.net/l/quote/tdmpakpm label May 9, 2025
joshblack and others added 4 commits May 9, 2025 15:59
…nList.Divider component (#6022)

Co-authored-by: primer[bot] <119360173+primer[bot]@users.noreply.github.com>
…nList.TrailingAction component (#6021)

Co-authored-by: primer[bot] <119360173+primer[bot]@users.noreply.github.com>
@github-actions github-actions bot removed the integration-tests: recommended This change needs to be tested for breaking changes. See https://arc.net/l/quote/tdmpakpm label May 9, 2025
@github-actions github-actions bot added the integration-tests: recommended This change needs to be tested for breaking changes. See https://arc.net/l/quote/tdmpakpm label May 9, 2025
Copy link
Contributor

github-actions bot commented May 9, 2025

👋 Hi, there are new commits since the last successful integration test. We recommend running the integration workflow once more, unless you are sure the new changes do not affect github/github. Thanks!

@jonrohan jonrohan added this pull request to the merge queue May 9, 2025
Merged via the queue into main with commit 2fc9327 May 9, 2025
35 checks passed
@jonrohan jonrohan deleted the css_modules_remove_flag/token branch May 9, 2025 16:24
@primer primer bot mentioned this pull request May 9, 2025
jonrohan added a commit that referenced this pull request May 9, 2025
…onent (#6014)

Co-authored-by: primer[bot] <119360173+primer[bot]@users.noreply.github.com>
Co-authored-by: Josh Black <[email protected]>
Co-authored-by: Jamie Shark <[email protected]>
Co-authored-by: Marie Lucca <[email protected]>
hectahertz pushed a commit that referenced this pull request May 20, 2025
…onent (#6014)

Co-authored-by: primer[bot] <119360173+primer[bot]@users.noreply.github.com>
Co-authored-by: Josh Black <[email protected]>
Co-authored-by: Jamie Shark <[email protected]>
Co-authored-by: Marie Lucca <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
integration-tests: passing Changes in this PR do NOT cause breaking changes in gh/gh integration-tests: recommended This change needs to be tested for breaking changes. See https://arc.net/l/quote/tdmpakpm staff Author is a staff member
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants