← All proposals

Identity Block

Start from the PDS v2 Identity Block and use the Agent Avatar in place of the human Avatar, as Avatar Label does.

Extends a PDS componentOpen in Storybook

proposals/IdentityBlock/decisions.md9 lines · View on GitHub

Decisions

  • Base is the v2 Identity Block (IdentityBlock.tsx, identity-block.css), with the local Agent Avatar in place of Avatar. avatarProps is Omit<AgentAvatarProps, 'ariaLabel' | 'linkContent' | 'size'> (label required); size is still m, or s when isSingleLine. The image, per-user color and user fallback of the human Avatar are gone, as in Agent Avatar. For people, use the PDS Identity Block.
  • Local stand-ins for what the package doesn't export: mergeClasses (from ../Button/utils). Tooltip comes from the package; the avatar is the local AgentAvatar.
  • Class names are unchanged (pds-identity-block), so the package CSS also loads and the local file overrides by class name, as with Panel.
  • Storybook: Proposals/Identity/Identity Block. Not tagged as a new pattern. Added a Collapsed story, which v2 doesn't have. Sample content is Zappy with "Pantheon AI" as the secondary line.
  • Open: should the secondary line be an attribution-style prop, as in Avatar Label, or stay free text?
  • Stories expose the Agent Avatar as flat controls (avatarIconName, avatarHasHalo, avatarShape, avatarLabel) that the story maps into avatarProps, so a designer can switch to another agent (sparklesSolid) in the controls. They're story-only args, not component props.