Skip to content
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

Popover release readiness #10680

Closed
dakahn opened this issue Feb 9, 2022 · 3 comments
Closed

Popover release readiness #10680

dakahn opened this issue Feb 9, 2022 · 3 comments
Assignees
Milestone

Comments

@dakahn
Copy link
Contributor

dakahn commented Feb 9, 2022

A popover is a piece of UI that pops over or renders on top of other UI on the
page. It's a component "primitive" meaning it can be used to help make more
complex components that utilize this behavior.

Popover Behaviors

  • popovers are invoked/shown by interacting with some other UI element either
    through click, hover, key press, or focus
  • popovers can be dismissed either through blur, esc keypress, or by
    having a different popover be triggered and shown
  • popovers are displayed on top of other UI and out of the normal page flow
    typically anchored to a triggering element

Usage

  • <Popover/>...
    • can be placed in several directions directions, including: top, bottom, left, right (etc) via the align prop
    • accepts a custom className
    • can be rendered in three stylistic variants: highContrast, light, and default
    • accepts a string or elementType to render as a custom top level node
    • can be rendered with or without a caret via the caret prop
    • can be rendered with or without drop shadow via the dropShadow prop
    • accepts a <PopoverContent> sub component
  • <PopoverContent>...
    • accepts elements for rendering via the children prop
    • takes a custom class name with the className prop

Migration

Popover was previously only available as unstable in previous versions of Carbon. So no migration guidance is necessary

Testing

image

Further Reading

Release readiness
What is this?
It means that this thing is ready to release, be publicly available. It's stable.

  • Feature coverage
    • Does the component do everything we say it does?
    • Does the component look correct across states?
  • For components that have changed between v10 and v11...
    • Is there a migration guide?
  • Documentation
    • Is it clear that a user could learn how to use the component to accomplish the features laid out above?
  • Testing
    • RTL, is the behavior tested in Jest?
    • Is the API tested in Jest?
  • Audits
    • Visual
      • Responsive
      • Themes
      • Layers (??)
  • Strategy
    • What are we shipping in v11?
      • Are there any issues remaining with the implementation that need to be addressed?
    • What are we shipping post-v11?
@dakahn
Copy link
Contributor Author

dakahn commented Feb 9, 2022

@joshblack lemme know if this is what we're looking for here 🏄🏾

@tay1orjones tay1orjones changed the title Popover RC0 release readiness Popover release readiness Feb 25, 2022
@tay1orjones
Copy link
Member

@dakahn @joshblack Are there any actionable items from here to populate into separate issues for this sprint?

@tay1orjones tay1orjones added this to the v11 GA milestone Feb 25, 2022
@joshblack
Copy link
Contributor

@tay1orjones I think we're good to go with this, only thing missing is auto alignment but I don't think that's a stop-ship issue 👍

kennylam added a commit to kennylam/carbon that referenced this issue Jul 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

No branches or pull requests

3 participants