Skip to content

feat(ui): Self-serve SSO within OrganizationProfile - #8600

Merged
LauraBeatris merged 5 commits into
mainfrom
laura/add-self-serve-sso-org-profile
May 25, 2026
Merged

feat(ui): Self-serve SSO within OrganizationProfile#8600
LauraBeatris merged 5 commits into
mainfrom
laura/add-self-serve-sso-org-profile

Conversation

@LauraBeatris

@LauraBeatrisLauraBeatris commented May 20, 2026

Copy link
Copy Markdown
Contributor

Description

Introduces "Single Sign-On" section in OrganizationProfile, if self-serve SSO is enabled for the organization

CleanShot 2026-05-21 at 11 03 53@2x

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:

@changeset-bot

changeset-botBot commented May 20, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 6e345b0

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

This PR includes changesets to release 20 packages
NameType
@clerk/localizationsMinor
@clerk/clerk-jsMinor
@clerk/sharedMinor
@clerk/uiMinor
@clerk/reactPatch
@clerk/chrome-extensionPatch
@clerk/expoPatch
@clerk/astroPatch
@clerk/backendPatch
@clerk/expo-passkeysPatch
@clerk/expressPatch
@clerk/fastifyPatch
@clerk/honoPatch
@clerk/mswPatch
@clerk/nextjsPatch
@clerk/nuxtPatch
@clerk/react-routerPatch
@clerk/tanstack-react-startPatch
@clerk/testingPatch
@clerk/vuePatch

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

vercelBot commented May 20, 2026

Copy link
Copy Markdown

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

ProjectDeploymentActionsUpdated (UTC)
clerk-js-sandboxReadyReadyPreview, CommentMay 25, 2026 9:14pm

Request Review

@LauraBeatris
LauraBeatrisforce-pushed the laura/add-self-serve-sso-org-profile branch from ceca5e5 to d586173CompareMay 20, 2026 12:55
@LauraBeatrisLauraBeatris self-assigned this May 20, 2026
@LauraBeatris
LauraBeatrisforce-pushed the laura/add-self-serve-sso-org-profile branch from d586173 to 5cf9dcdCompareMay 20, 2026 23:10
@LauraBeatris
LauraBeatrisforce-pushed the laura/add-self-serve-sso-org-profile branch from 81ae14b to e755033CompareMay 21, 2026 13:27
@LauraBeatris
LauraBeatrisforce-pushed the laura/add-self-serve-sso-org-profile branch from e755033 to 4023c00CompareMay 21, 2026 13:30
@LauraBeatris
LauraBeatrisforce-pushed the laura/add-self-serve-sso-org-profile branch from 4023c00 to d00e41cCompareMay 21, 2026 13:32
@LauraBeatris
LauraBeatris requested a review from a teamMay 21, 2026 13:32
@LauraBeatris
LauraBeatrisforce-pushed the laura/add-self-serve-sso-org-profile branch from d00e41c to b166045CompareMay 21, 2026 13:36
@LauraBeatris
LauraBeatrisforce-pushed the laura/add-self-serve-sso-org-profile branch from b166045 to 2d3eb25CompareMay 21, 2026 13:46
@LauraBeatris
LauraBeatrisforce-pushed the laura/add-self-serve-sso-org-profile branch from 2d3eb25 to 384aab2CompareMay 21, 2026 14:03
@LauraBeatris
LauraBeatris marked this pull request as ready for review May 21, 2026 14:05
@LauraBeatris
LauraBeatrisforce-pushed the laura/add-self-serve-sso-org-profile branch from 384aab2 to d6040c3CompareMay 21, 2026 14:09
@pkg-pr-new

pkg-pr-newBot commented May 21, 2026

Copy link
Copy Markdown

Open in StackBlitz

@clerk/astro

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

@clerk/backend

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

@clerk/chrome-extension

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

@clerk/clerk-js

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

@clerk/dev-cli

npm i https://pkg.pr.new/@clerk/dev-cli@8600

@clerk/expo

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

@clerk/expo-passkeys

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

@clerk/express

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

@clerk/fastify

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

@clerk/hono

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

@clerk/localizations

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

@clerk/nextjs

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

@clerk/nuxt

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

@clerk/react

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

@clerk/react-router

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

@clerk/shared

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

@clerk/tanstack-react-start

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

@clerk/testing

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

@clerk/ui

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

@clerk/upgrade

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

@clerk/vue

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

commit: 6e345b0

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx (1)

32-51: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Test fixture uses outdated permission key.

The test fixture at line 39 uses org:sys_enterprise_connections:manage but the implementation in ConfigureSSOProtect now checks for org:sys_entconns:manage. This test passes coincidentally because it grants permissions the component no longer checks for, meaning it doesn't validate the actual authorization logic.

🐛 Proposed fix to use the correct permission key
 organization_memberships: [{ name: 'Org1', permissions: ['org:sys_enterprise_connections:manage'] }],
+ organization_memberships: [{ name: 'Org1', permissions: ['org:sys_entconns:manage'] }],
🤖 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/__tests__/ConfigureSSO.test.tsx`
around lines 32 - 51, The test grants the old permission key so it doesn't
validate the component's current check; update the permission string in the
fixture used by ConfigureSSO.test.tsx from
"org:sys_enterprise_connections:manage" to the current key
"org:sys_entconns:manage" (the user object created in the createFixtures call /
organization_memberships array) so ConfigureSSO/ConfigureSSOProtect's permission
check is exercised correctly.
🤖 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.
Inline comments:
In
`@packages/ui/src/components/OrganizationProfile/OrganizationProfileRoutes.tsx`:
- Around line 153-161: The lazy-loaded OrganizationSelfServeSSOPage is rendered
without a Suspense boundary; wrap its usage inside a React.Suspense with an
appropriate fallback (matching other routes like
OrganizationBillingPage/OrganizationAPIKeysPage) so the lazy import can load
without throwing; update the JSX in OrganizationProfileRoutes where
OrganizationSelfServeSSOPage is rendered (the Route/Route index block) to
include a Suspense wrapper around <OrganizationSelfServeSSOPage />.
---
Outside diff comments:
In `@packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx`:
- Around line 32-51: The test grants the old permission key so it doesn't
validate the component's current check; update the permission string in the
fixture used by ConfigureSSO.test.tsx from
"org:sys_enterprise_connections:manage" to the current key
"org:sys_entconns:manage" (the user object created in the createFixtures call /
organization_memberships array) so ConfigureSSO/ConfigureSSOProtect's permission
check is exercised correctly.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

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

Review profile: CHILL

Plan: Pro

Run ID: 530d621d-2e90-4427-ae47-e3508d7ee3f1

📥 Commits

Reviewing files that changed from the base of the PR and between 384aab2 and 07abb56.

⛔ Files ignored due to path filters (1)
  • packages/ui/src/icons/connections.svg is excluded by !**/*.svg
📒 Files selected for processing (16)
  • packages/clerk-js/src/core/resources/Organization.ts
  • packages/clerk-js/src/core/resources/__tests__/Organization.test.ts
  • packages/localizations/src/en-US.ts
  • packages/shared/src/types/json.ts
  • packages/shared/src/types/localization.ts
  • packages/shared/src/types/organization.ts
  • packages/ui/src/components/ConfigureSSO/ConfigureSSO.tsx
  • packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx
  • packages/ui/src/components/OrganizationProfile/OrganizationProfileRoutes.tsx
  • packages/ui/src/components/OrganizationProfile/OrganizationSelfServeSSOPage.tsx
  • packages/ui/src/components/OrganizationProfile/__tests__/OrganizationProfile.test.tsx
  • packages/ui/src/constants.ts
  • packages/ui/src/contexts/components/OrganizationProfile.ts
  • packages/ui/src/icons/index.ts
  • packages/ui/src/test/fixture-helpers.ts
  • packages/ui/src/utils/createCustomPages.tsx
✅ Files skipped from review due to trivial changes (1)
  • packages/ui/src/test/fixture-helpers.ts

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@LauraBeatris@iagodahlem@NicolasLopes7