Refactor Button to use data-has-visuals instead of data-no-visuals #7401
+6
−13
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Follow-up to #7327. Replaces the negative attribute pattern with a positive one for clearer semantics and direct 1:1 mapping to the original
:has(.Visual)selector.Changelog
Changed
data-has-visualswhen leadingVisual, trailingVisual, or trailingAction props are provided (previously setdata-no-visuals="true"when none were provided)[data-no-visuals='true']to:not([data-has-visuals])and from:not([data-no-visuals='true'])to[data-has-visuals]Before:
After:
CSS selectors:
Rollout strategy
Internal refactor. Maintains identical behavioral characteristics and performance profile.
Testing & Reviewing
Verify link buttons with and without visuals render correctly with
data-a11y-link-underlinespreference. Check theLinkVariantWithUnderlinePreferencestory in Storybook.Merge checklist
Original prompt
This pull request was created from Copilot chat.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.