Skip to content

feat(mosaic): add the sign-in account chooser and remaining choice screens - #10802

Draft
austincalvelage wants to merge 4 commits into
mainfrom
austin/mosaic-sign-in-choice
Draft

austincalvelage wants to merge 4 commits into
mainfrom
austin/mosaic-sign-in-choice

Conversation

@austincalvelage

@austincalvelage austincalvelage commented Nov 13, 2026 •

Copy link
Copy Markdown
Member

Description

Adds the sign-in choice step's remaining screens, following the legacy screens below. The table compares each legacy screen in this group with its Mosaic view.

  • New accounts choice: { kind: 'choice'; purpose: 'accounts'; options: SignInAccount[] } draws "Choose an account", legacy's account switcher. Each signed-in account is an Item row (avatar, name, identifier, chevron or spinner), as in the method picker, followed by an "Add account" row and a "Sign out of all accounts" button. The view takes onSelectAccount, pendingAccountId, onAddAccount and onSignOutAll; leaving out the last two hides them. SignInAccount is exported.
  • New wallets choice: { kind: 'choice'; purpose: 'wallets'; options: SignInProvider[] } draws "Sign in with Solana", legacy's wallet picker: each wallet is a ProviderButton (inline, as legacy), with "Back" below. It reuses onSelectProvider, pendingProviderId and onBack, as the enterprise connection picker does.
  • "Use another method" is now its own screen, SignInAlternativeMethods: the social providers, then each method as a full-width ProviderButton, then "Back" and "Get help", as legacy draws it. Where to send a reset code still uses VerificationMethodPicker, which is unchanged. The provider button group moves to SignInProviderButtons, shared by the identifier and choice steps.
  • Differences from legacy in the account chooser: the rows are Mosaic's bordered Item rows rather than legacy's divided list, an account without a photo shows the blank avatar placeholder (Mosaic's Avatar.Fallback hides initials), and "Sign out of all accounts" sits in the card body.

Follows #10792.

Legacy and Mosaic

View Legacy Mosaic
Choose an account
Sign in with Solana (wallets)
Use another method, with providers

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:

🤖 Generated with Claude Code

@changeset-bot

changeset-bot Bot commented Nov 13, 2026 •

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 959e707

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

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

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

@vercel

vercel Bot commented Nov 13, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
clerk-js-sandbox Ready Ready Preview Nov 13, 2026 1:23am UTC
swingset Ready Ready Preview Nov 13, 2026 1:23am UTC

Request Review

@coderabbitai

coderabbitai Bot commented Nov 13, 2026

Copy link
Copy Markdown
Contributor

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

@pkg-pr-new

pkg-pr-new Bot commented Nov 13, 2026 •

Copy link
Copy Markdown

Open in StackBlitz

@clerk/astro

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

@clerk/backend

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

@clerk/chrome-extension

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

@clerk/clerk-js

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

@clerk/electron

npm i https://pkg.pr.new/@clerk/electron@10802

@clerk/electron-passkeys

npm i https://pkg.pr.new/@clerk/electron-passkeys@10802

@clerk/eslint-plugin

npm i https://pkg.pr.new/@clerk/eslint-plugin@10802

@clerk/expo

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

@clerk/expo-biometrics

npm i https://pkg.pr.new/@clerk/expo-biometrics@10802

@clerk/expo-google-signin

npm i https://pkg.pr.new/@clerk/expo-google-signin@10802

@clerk/expo-native-components

npm i https://pkg.pr.new/@clerk/expo-native-components@10802

@clerk/expo-passkeys

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

@clerk/express

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

@clerk/fastify

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

@clerk/hono

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

@clerk/localizations

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

@clerk/mosaic

npm i https://pkg.pr.new/@clerk/mosaic@10802

@clerk/nextjs

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

@clerk/nuxt

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

@clerk/react

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

@clerk/react-router

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

@clerk/shared

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

@clerk/tanstack-react-start

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

@clerk/testing

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

@clerk/ui

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

@clerk/upgrade

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

@clerk/vue

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

commit: 959e707

This branch was successfully deployed

2 active deployments
Preview – swingset — 959e707d Deployed Nov 13, 2026 by vercel[bot]
Preview – clerk-js-sandbox — 959e707d Deployed Nov 13, 2026 by vercel[bot]
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.

1 participant