This repository is currently being migrated. It's locked while the migration is in progress.
va-accordion: move border prop from accordion-item to accordion#2079
Open
powellkerry wants to merge 6 commits into
Open
va-accordion: move border prop from accordion-item to accordion#2079powellkerry wants to merge 6 commits into
powellkerry wants to merge 6 commits into
Conversation
RyanMunsch
approved these changes
Apr 22, 2026
Contributor
RyanMunsch
left a comment
There was a problem hiding this comment.
LGTM. This improvement makes a lot more sense than requiring bordered on each individual item.
jamigibbs
reviewed
Apr 22, 2026
|
|
||
| // Enforce all-or-none bordered rendering within the same accordion while keeping | ||
| // backward compatibility for legacy item-level bordered usage. | ||
| private updateResolvedBordered() { |
Contributor
There was a problem hiding this comment.
question: Have we considered doing the border management in the parent component va-accordion instead of in the child component here? I'm wondering if that would have a performance improvement with a single MutationObserver and also make it easier for us to cleanup any backwards compatibility work (ie. maybe just removing a single prop in the child).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Chromatic
https://2513-move-border-prop-to-accordion--65a6e2ed2314f7b8f98609d8.chromatic.com
Summary
Update to move the
borderedprop to va-accordion and deprecate it from va-accordion-item. This change enforces borders being synchronized in a component instance. Backwards compatibility was built into these changes.Description
The bordered prop was only available on the va-accordion-item component, this allowed for implementations to have borders on some items and not others. This change makes it so that borders are applied uniformly across an implementation. Backwards compatibility has been maintained by adding logic to check for the bordered attribute on items and applying the border if the attribute is found. The current prop has also been maintained for backwards compatibility.
Related tickets and links
Link to any related issues, PRs, Slack conversations, or anything else relevant to documenting the changes.
Closes 2513
Screenshots
No visual changes, storybook shows the prop was moved to va-accordion.
Testing and review
Provide any testing instructions or review steps as needed.
Approvals
See the QA Checklists section below for suggested approvals. Use your best judgment if additional reviews are needed. When in doubt, request a review.
Approval groups
Add approval groups to the PR as needed:
QA checklists
Use the QA checklists below as guides, not rules. Not all checklists will apply to every PR but there could be some overlap.
In all scenarios, changes should be fully tested by the author and verified by the reviewer(s); functionality, responsiveness, etc.
✨ New Component Added
minorlabel🌱 New Component Variation Added
minorlabel🐞 Component Fix
patchlabel♿️ Component Fix - Accessibility
patchlabel🚨 Component Fix - Breaking API Change
majorlabel🔧 Component Update - Non-Breaking API Change
minorlabel📖 Storybook Update
ignore-for-releaselabel🎨 CSS-Library Update
css-librarylabel