feat(pds-avatar): expose an initials shadow part - #795
Merged
Conversation
✅ Deploy Preview for pine-design-system ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
QuintonJason
marked this pull request as ready for review
August 14, 2026 00:58
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.
Description
Exposes an
initialsshadow part onpds-avatarso consumers can restyle the initials (e.g. color) via::part(initials)instead of hijacking the internal--pine-color-brandcustom property — which is the only lever available today.Surfaced (again) building the Kajabi Clubs members roster, where per-entity/readonly initials needed a color the component doesn't expose. Implements DSS-228; sibling of the initials/background color gap (DSS-216).
No behavior change and no default restyle — the initials still default to
--pine-color-brand; this only adds theparthook.components.d.tsis unaffected (shadow parts aren't part of the type surface); the readme's Shadow Parts table regenerates in CI.Fixes DSS-228
Type of change
How Has This Been Tested?
Added a spec asserting
pds-avatar[initials]renders an element withpart="initials"(mirrors the existingpart="status"test). Not built/run locally to avoid regeneratingcomponents.d.tswith a non-canonical toolchain — CI runs the canonical build + suite.Test Configuration:
main)Checklist:
@part; readme regenerates in CI)Note
Low Risk
Additive styling hook only; no changes to rendering logic, defaults, or security-sensitive paths.
Overview
Adds an
initialsshadow part onpds-avatarso apps can restyle initials text (e.g.fill) via::part(initials)instead of overriding--pine-color-brand.The initials SVG gets
part="initials"and JSDoc documents the part; unit snapshots and a new spec assert the part is present. No default visual or behavioral change.Reviewed by Cursor Bugbot for commit 85083cb. Bugbot is set up for automated code reviews on this repo. Configure here.