Skip to content

Nimble Stepper HLD#2830

Open
rajsite wants to merge 14 commits intomainfrom
stepper-hld
Open

Nimble Stepper HLD#2830
rajsite wants to merge 14 commits intomainfrom
stepper-hld

Conversation

@rajsite
Copy link
Member

@rajsite rajsite commented Jan 26, 2026

Pull Request

🤨 Rationale

  • HLD for stepper and associated child components
  • Also minor tweaks to templates to remove <hr> sectioning (can lean into headers / TOCs if want more sections) and added an "Interactions" section as an analog to the "Visual Appearance" section

✅ Checklist

  • I have updated the project documentation to reflect my changes or determined no changes are needed.

@rajsite rajsite marked this pull request as ready for review January 28, 2026 17:50
@rajsite rajsite requested a review from jattasNI as a code owner January 28, 2026 17:50

<!-- *Highlight any open questions for discussion during the spec PR. Before the spec is approved these should typically be resolved with the answers being incorporated in the spec document.* -->

Visual design does not currently represent full matrix of states: `severity` x `selected` x `interaction` (hover, mouse down, tab focus).
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fredvisser know if we expect to have those visual design updates for selected versions of the severity states / any risk there is pushback on having those states that might impact the implementation (i.e. resistance to all the severity states being selectable)?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have some additional states clarified, but some still missing. Shared the following states grid with @fredvisser to try and fill out with brandon to make sure all cases covered:

image

- Events
- CSS custom properties -->
- CSS native properties
- Will respond to width / height sizing (on the axis corresponding to orientation) and show overflow scroll buttons following the pattern of breadcrumb
Copy link
Member Author

@rajsite rajsite Jan 31, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fyi, @fredvisser this concept of overflow scrollers like breadcrumb / tabs is not captured in the visual design. curious if brandon would have any concerns. In particular the vertical orientation having the scroll buttons would be new to this component

Copy link
Member Author

@rajsite rajsite Feb 9, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Chatted with @fredvisser and if cheap for both horizontal and vertical scroll buttons then do both. Otherwise the horizontal case and something else for vertical, i.e. make a requirement apps size correctly and overflow hide or scroll (if doesn't add complexity to sizing).


The `nimble-step` and `nimble-anchor-step` are elements representing individual steps with `nimble-step` behaving as a card button (i.e. a button with a concept of a `selected` visual appearance that does not change behavior) and a `nimble-anchor-step` looking visually identical but with link behaviors.

The `step` elements will primarily render a provided nimble icon (and new nimble icons for the visuals of digits 0 - 9 will be added). When a non-default severity is provided the provided icon will be replaced with an icon representing the severity.
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fyi @fredvisser we would need these digit icons as requests to brandon

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@fredvisser will send icon requests to Brandon

- CSS native properties
- Will respond to width / height sizing (on the axis corresponding to orientation) and show overflow scroll buttons following the pattern of breadcrumb
- Slots
- default: supports `nimble-step` and `nimble-anchor-step` children
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually we'll leave default unused and make a step slot. Has the benefit of making it easier to ignore unexpected child elements.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants