Skip to content

fix(ui): Stepper UI wrapping improvements#8693

Merged
brkalow merged 3 commits into
mainfrom
carp/stepper-ui-improvements
May 29, 2026
Merged

fix(ui): Stepper UI wrapping improvements#8693
brkalow merged 3 commits into
mainfrom
carp/stepper-ui-improvements

Conversation

@alexcarpenter
Copy link
Copy Markdown
Member

Description

Checklist

  • pnpm test runs as expected.
  • pnpm build runs as expected.
  • (If applicable) JSDoc comments have been added or updated for any package exports
  • (If applicable) Documentation has been updated

Type of change

  • 🐛 Bug fix
  • 🌟 New feature
  • 🔨 Breaking change
  • 📖 Refactoring / dependency upgrade / documentation
  • other:

@vercel
Copy link
Copy Markdown

vercel Bot commented May 28, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
clerk-js-sandbox Ready Ready Preview, Comment May 29, 2026 4:16pm

Request Review

@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented May 28, 2026

🦋 Changeset detected

Latest commit: e4d2851

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 2 packages
Name Type
@clerk/ui Patch
@clerk/chrome-extension Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions
Copy link
Copy Markdown
Contributor

Snapi: no API changes detected in @clerk/backend, @clerk/clerk-js, @clerk/nextjs, @clerk/react, @clerk/shared, @clerk/ui.

@pkg-pr-new
Copy link
Copy Markdown

pkg-pr-new Bot commented May 28, 2026

Open in StackBlitz

@clerk/astro

npm i https://pkg.pr.new/@clerk/astro@8693

@clerk/backend

npm i https://pkg.pr.new/@clerk/backend@8693

@clerk/chrome-extension

npm i https://pkg.pr.new/@clerk/chrome-extension@8693

@clerk/clerk-js

npm i https://pkg.pr.new/@clerk/clerk-js@8693

@clerk/expo

npm i https://pkg.pr.new/@clerk/expo@8693

@clerk/expo-passkeys

npm i https://pkg.pr.new/@clerk/expo-passkeys@8693

@clerk/express

npm i https://pkg.pr.new/@clerk/express@8693

@clerk/fastify

npm i https://pkg.pr.new/@clerk/fastify@8693

@clerk/hono

npm i https://pkg.pr.new/@clerk/hono@8693

@clerk/localizations

npm i https://pkg.pr.new/@clerk/localizations@8693

@clerk/nextjs

npm i https://pkg.pr.new/@clerk/nextjs@8693

@clerk/nuxt

npm i https://pkg.pr.new/@clerk/nuxt@8693

@clerk/react

npm i https://pkg.pr.new/@clerk/react@8693

@clerk/react-router

npm i https://pkg.pr.new/@clerk/react-router@8693

@clerk/shared

npm i https://pkg.pr.new/@clerk/shared@8693

@clerk/tanstack-react-start

npm i https://pkg.pr.new/@clerk/tanstack-react-start@8693

@clerk/testing

npm i https://pkg.pr.new/@clerk/testing@8693

@clerk/ui

npm i https://pkg.pr.new/@clerk/ui@8693

@clerk/upgrade

npm i https://pkg.pr.new/@clerk/upgrade@8693

@clerk/vue

npm i https://pkg.pr.new/@clerk/vue@8693

commit: e4d2851

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 28, 2026

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro

Run ID: 2805e8a1-f05e-4e57-870f-dc8f0a8c4d48

📥 Commits

Reviewing files that changed from the base of the PR and between 34b2dc3 and e4d2851.

📒 Files selected for processing (1)
  • .changeset/neat-mild-pale.md
✅ Files skipped from review due to trivial changes (1)
  • .changeset/neat-mild-pale.md

📝 Walkthrough

Walkthrough

This PR updates the ConfigureSSO Stepper to wrap each step item with a styled Span (imported from @/customizables) instead of a React.Fragment, applying flex layout, center alignment, and themed gap spacing to fix chevron wrapping. A new .changeset entry documents a patch release for @clerk/ui noting the stepper chevron fix.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 inconclusive)

Check name Status Explanation Resolution
Description check ❓ Inconclusive The description is a template with checklists but contains no specific details about the actual changes or how to test them. Provide a meaningful description explaining what the Stepper UI wrapping improvements address and how to verify the fix works correctly.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main change: improving Stepper UI wrapping by replacing Fragment wrappers with a styled Span component.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (2)
packages/ui/src/components/ConfigureSSO/elements/Stepper/Stepper.tsx (2)

122-145: ⚡ Quick win

Keep Skeleton wrapper behavior aligned with Root to avoid wrap regressions in loading state.

Root now wraps each step+separator in a flex Span, but Skeleton still uses React.Fragment. Consider mirroring the same wrapper pattern in Skeleton so chevrons don’t wrap inconsistently while loading.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@packages/ui/src/components/ConfigureSSO/elements/Stepper/Stepper.tsx` around
lines 122 - 145, The Skeleton component is still using React.Fragment for each
step which causes wrapping differences vs Root; update Skeleton so each
step+separator is wrapped in the same flex Span wrapper used by Root (instead of
React.Fragment), move the key onto that Span, and preserve rendering of
<ItemSkeleton /> and the conditional Icon
(descriptors.configureSSOStepperSeparator) inside that Span so loading-state
chevrons wrap identically to Root.

8-43: ⚡ Quick win

Please add/adjust tests for Stepper wrapping and separator alignment.

This UI behavior changed materially (item wrapper + flex layout), but no tests were added/updated in this PR. Add coverage for wrapping behavior and separator placement to prevent regressions.

As per coding guidelines, "**/*: If there are no tests added or modified as part of the PR, please suggest that tests be added to cover the changes."

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@packages/ui/src/components/ConfigureSSO/elements/Stepper/Stepper.tsx` around
lines 8 - 43, Add tests for the Root Stepper component to cover the new item
wrapper + flex wrapping and separator placement: render the Root (Stepper) with
multiple child steps and assert that descriptors.configureSSOStepper is applied,
that each child is wrapped by the Span wrapper, and that Icon with ChevronRight
appears only between items (not after last); include a test that forces wrapping
(e.g., constrain container width or set CSS to small width) and assert
separators remain positioned between items on wrapped lines. Focus on querying
for Span wrappers and Icon/ChevronRight elements and checking counts/positions
to prevent regressions in Root, Span, and separator rendering.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@packages/ui/src/components/ConfigureSSO/elements/Stepper/Stepper.tsx`:
- Around line 122-145: The Skeleton component is still using React.Fragment for
each step which causes wrapping differences vs Root; update Skeleton so each
step+separator is wrapped in the same flex Span wrapper used by Root (instead of
React.Fragment), move the key onto that Span, and preserve rendering of
<ItemSkeleton /> and the conditional Icon
(descriptors.configureSSOStepperSeparator) inside that Span so loading-state
chevrons wrap identically to Root.
- Around line 8-43: Add tests for the Root Stepper component to cover the new
item wrapper + flex wrapping and separator placement: render the Root (Stepper)
with multiple child steps and assert that descriptors.configureSSOStepper is
applied, that each child is wrapped by the Span wrapper, and that Icon with
ChevronRight appears only between items (not after last); include a test that
forces wrapping (e.g., constrain container width or set CSS to small width) and
assert separators remain positioned between items on wrapped lines. Focus on
querying for Span wrappers and Icon/ChevronRight elements and checking
counts/positions to prevent regressions in Root, Span, and separator rendering.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Pro

Run ID: 900692fa-8deb-4585-8220-a3c083e42783

📥 Commits

Reviewing files that changed from the base of the PR and between 37535f9 and 34b2dc3.

📒 Files selected for processing (2)
  • .changeset/neat-mild-pale.md
  • packages/ui/src/components/ConfigureSSO/elements/Stepper/Stepper.tsx

@alexcarpenter alexcarpenter changed the title fix(ui): Stepper UI wrapping improvements and spinner sizing fix(ui): Stepper UI wrapping improvements May 29, 2026
Comment thread .changeset/neat-mild-pale.md Outdated
Co-authored-by: Laura Beatris <48022589+LauraBeatris@users.noreply.github.com>
@brkalow brkalow merged commit b09788e into main May 29, 2026
45 checks passed
@brkalow brkalow deleted the carp/stepper-ui-improvements branch May 29, 2026 17:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants