Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
b839c47
feat(ui): add provider selection grid to ConfigureSSO step
iagodahlem May 7, 2026
c08b5ec
feat(ui): wire provider selection state and real icons in ConfigureSS…
iagodahlem May 11, 2026
aa8bb6f
test(ui): add unit tests for ConfigureSSO provider selection step
iagodahlem May 11, 2026
6b175e3
chore(ui): add changeset for ConfigureSSO provider selection step
iagodahlem May 11, 2026
68fa67c
refactor(ui): use Span instead of Box as='span' in ConfigureSSO provi…
iagodahlem May 11, 2026
879c54a
feat(ui,shared,localizations): localize Select Provider step in Confi…
iagodahlem May 11, 2026
900cbf1
feat(ui): extend ConfigureSSO flow provider with createConnection
iagodahlem May 11, 2026
6f1d81e
feat(ui): add deriveInitialStep helper for ConfigureSSO
iagodahlem May 11, 2026
1f38f18
feat(ui): create enterprise connection on Select Provider Continue
iagodahlem May 11, 2026
a256748
test(ui): refresh Select Provider tests for createConnection flow
iagodahlem May 11, 2026
287033f
chore(changeset): expand ConfigureSSO Select Provider entry for Phase 2
iagodahlem May 11, 2026
0c08efd
refactor(ui): consolidate ConfigureSSO flow state and provider groups
iagodahlem May 12, 2026
70b5e4b
fix(ui): pass selected provider to createConnection and restore rever…
iagodahlem May 12, 2026
e830214
refactor(ui): single-source the enterprise connection query in Config…
iagodahlem May 12, 2026
2529d2b
feat(ui): surface SAML ACS URL in ConfigureSSO Configure step
iagodahlem May 12, 2026
62a608d
fix(ui): import WizardStepId from types module in deriveInitialStep test
iagodahlem May 12, 2026
5ed546f
feat(ui): stack Select Provider tiles single-column on mobile
iagodahlem May 13, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .changeset/configure-sso-select-provider-step.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
'@clerk/localizations': patch
'@clerk/clerk-js': patch
'@clerk/shared': patch
'@clerk/ui': patch
---

Implement the provider selection step of `<__experimental_ConfigureSSO />`. Renders the two SAML provider tiles (Okta Workforce and Custom SAML Provider) with real icons sourced from `img.clerk.com`, tracks the picked provider in local state, and gates `Step.Footer.Continue` on a selection. Includes a warning callout about provider lock-in and a minor `Step.Header` alignment tweak. All user-visible strings are wired through `@clerk/localizations`, with translations for every supported locale.

Also extends the flow context with `provider`, `setProvider`, `clearProvider`, and an idempotent `createConnection`, adds the `deriveInitialStep` helper, and wires the wizard's `initialStepId` so the configure flow remounts on the right step after a reload. Continue on Select Provider now creates the enterprise connection and advances to the next step.
14 changes: 14 additions & 0 deletions packages/localizations/src/ar-SA.ts
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,20 @@ export const arSA: LocalizationResource = {
navbar: {
title: 'تكوين تسجيل الدخول الموحد (SSO)',
},
selectProviderStep: {
title: 'اختر المزود',
subtitle: 'اختر المزود الذي ستقوم بإعداد تسجيل الدخول الموحد (SSO) له.',
body: {
title: 'اختر مزود الهوية الخاص بك',
description: 'سنرشدك خلال عملية الإعداد التفصيلية بعد ذلك.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'مزود SAML مخصص',
},
warning: 'بمجرد اختيار المزود لا يمكنك التغيير مرة أخرى حتى انتهاء التكوين',
},
},
createOrganization: {
formButtonSubmit: 'أنشاء منظمة',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/be-BY.ts
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,20 @@ export const beBY: LocalizationResource = {
navbar: {
title: 'Налада адзінага ўваходу (SSO)',
},
selectProviderStep: {
title: 'Выберыце правайдэра',
subtitle: 'Выберыце правайдэра, для якога вы будзеце наладжваць SSO.',
body: {
title: 'Выберыце вашага правайдэра ідэнтыфікацыі',
description: 'Мы правядзём вас праз падрабязны працэс налады далей.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Карыстальніцкі правайдэр SAML',
},
warning: 'Пасля выбару правайдэра вы не зможаце змяніць яго, пакуль не скончыце канфігурацыю',
},
},
createOrganization: {
formButtonSubmit: 'Стварыць арганізацыю',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/bg-BG.ts
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,20 @@ export const bgBG: LocalizationResource = {
navbar: {
title: 'Конфигуриране на единен вход (SSO)',
},
selectProviderStep: {
title: 'Изберете доставчик',
subtitle: 'Изберете доставчика, за който ще конфигурирате SSO.',
body: {
title: 'Изберете вашия доставчик на идентичност',
description: 'Ще ви преведем през подробния процес на настройка след това.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Персонализиран SAML доставчик',
},
warning: 'След като изберете доставчик, не можете да го промените, докато конфигурацията не приключи',
},
},
createOrganization: {
formButtonSubmit: 'Създаване на организация',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/bn-IN.ts
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,20 @@ export const bnIN: LocalizationResource = {
navbar: {
title: 'একক সাইন-অন (SSO) কনফিগার করুন',
},
selectProviderStep: {
title: 'Select provider',
subtitle: 'Select the provider you are going to setup SSO for.',
body: {
title: 'Select your identity provider',
description: "We'll guide you through the detailed setup process next.",
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Custom SAML Provider',
},
warning: 'Once a provider is selected you cannot change again until the configuration is over',
},
},
createOrganization: {
formButtonSubmit: 'সংগঠন তৈরি করুন',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/ca-ES.ts
Original file line number Diff line number Diff line change
Expand Up @@ -194,6 +194,20 @@ export const caES: LocalizationResource = {
navbar: {
title: "Configura l'inici de sessió únic (SSO)",
},
selectProviderStep: {
title: 'Seleccioneu un proveïdor',
subtitle: 'Seleccioneu el proveïdor per al qual configurareu SSO.',
body: {
title: "Seleccioneu el vostre proveïdor d'identitat",
description: 'Us guiarem pel procés de configuració detallat a continuació.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Proveïdor SAML personalitzat',
},
warning: 'Un cop seleccionat un proveïdor no podreu canviar-lo fins que la configuració hagi finalitzat',
},
},
createOrganization: {
formButtonSubmit: 'Crea organització',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/cs-CZ.ts
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,20 @@ export const csCZ: LocalizationResource = {
navbar: {
title: 'Nastavit jednotné přihlášení (SSO)',
},
selectProviderStep: {
title: 'Vyberte poskytovatele',
subtitle: 'Vyberte poskytovatele, pro kterého budete nastavovat SSO.',
body: {
title: 'Vyberte svého poskytovatele identity',
description: 'Provedeme vás dále podrobným procesem nastavení.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Vlastní poskytovatel SAML',
},
warning: 'Jakmile vyberete poskytovatele, nelze ho změnit, dokud nebude konfigurace dokončena',
},
},
createOrganization: {
formButtonSubmit: 'Vytvořit organizaci',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/da-DK.ts
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,20 @@ export const daDK: LocalizationResource = {
navbar: {
title: 'Konfigurer single sign-on (SSO)',
},
selectProviderStep: {
title: 'Vælg udbyder',
subtitle: 'Vælg den udbyder, du vil opsætte SSO for.',
body: {
title: 'Vælg din identitetsudbyder',
description: 'Vi guider dig gennem den detaljerede opsætningsproces næste gang.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Brugerdefineret SAML-udbyder',
},
warning: 'Når en udbyder er valgt, kan du ikke ændre den, før konfigurationen er færdig',
},
},
createOrganization: {
formButtonSubmit: 'Opret organisation',
Expand Down
15 changes: 15 additions & 0 deletions packages/localizations/src/de-DE.ts
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,21 @@ export const deDE: LocalizationResource = {
navbar: {
title: 'Single Sign-On (SSO) konfigurieren',
},
selectProviderStep: {
title: 'Anbieter auswählen',
subtitle: 'Wählen Sie den Anbieter, für den Sie SSO einrichten möchten.',
body: {
title: 'Wählen Sie Ihren Identitätsanbieter',
description: 'Wir führen Sie als nächstes durch den detaillierten Einrichtungsprozess.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Benutzerdefinierter SAML-Anbieter',
},
warning:
'Sobald ein Anbieter ausgewählt ist, können Sie ihn nicht mehr ändern, bis die Konfiguration abgeschlossen ist',
},
},
createOrganization: {
formButtonSubmit: 'Organisation erstellen',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/el-GR.ts
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,20 @@ export const elGR: LocalizationResource = {
navbar: {
title: 'Διαμόρφωση Ενιαίας Σύνδεσης (SSO)',
},
selectProviderStep: {
title: 'Επιλέξτε πάροχο',
subtitle: 'Επιλέξτε τον πάροχο για τον οποίο θα ρυθμίσετε SSO.',
body: {
title: 'Επιλέξτε τον πάροχο ταυτότητάς σας',
description: 'Θα σας καθοδηγήσουμε στη λεπτομερή διαδικασία ρύθμισης στη συνέχεια.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Προσαρμοσμένος πάροχος SAML',
},
warning: 'Μόλις επιλεγεί ένας πάροχος δεν μπορείτε να τον αλλάξετε μέχρι να ολοκληρωθεί η ρύθμιση',
},
},
createOrganization: {
formButtonSubmit: 'Δημιουργία οργανισμού',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/en-GB.ts
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,20 @@ export const enGB: LocalizationResource = {
navbar: {
title: 'Configure Single Sign-On (SSO)',
},
selectProviderStep: {
title: 'Select provider',
subtitle: 'Select the provider you are going to set up SSO for.',
body: {
title: 'Select your identity provider',
description: "We'll guide you through the detailed setup process next.",
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Custom SAML Provider',
},
warning: 'Once a provider is selected you cannot change again until the configuration is over',
},
},
createOrganization: {
formButtonSubmit: 'Create organisation',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/en-US.ts
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,20 @@ export const enUS: LocalizationResource = {
navbar: {
title: 'Configure Single Sign-On (SSO)',
},
selectProviderStep: {
title: 'Select provider',
subtitle: 'Select the provider you are going to setup SSO for.',
body: {
title: 'Select your identity provider',
description: "We'll guide you through the detailed setup process next.",
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Custom SAML Provider',
},
warning: 'Once a provider is selected you cannot change again until the configuration is over',
},
},
createOrganization: {
formButtonSubmit: 'Create organization',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/es-CR.ts
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,20 @@ export const esCR: LocalizationResource = {
navbar: {
title: 'Configurar inicio de sesión único (SSO)',
},
selectProviderStep: {
title: 'Seleccionar proveedor',
subtitle: 'Selecciona el proveedor para el que vas a configurar SSO.',
body: {
title: 'Selecciona tu proveedor de identidad',
description: 'Te guiaremos a través del proceso de configuración detallado a continuación.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Proveedor SAML personalizado',
},
warning: 'Una vez que se selecciona un proveedor no puedes cambiarlo hasta que termine la configuración',
},
},
createOrganization: {
formButtonSubmit: 'Crear organización',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/es-ES.ts
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,20 @@ export const esES: LocalizationResource = {
navbar: {
title: 'Configurar inicio de sesión único (SSO)',
},
selectProviderStep: {
title: 'Seleccionar proveedor',
subtitle: 'Selecciona el proveedor para el que vas a configurar SSO.',
body: {
title: 'Selecciona tu proveedor de identidad',
description: 'Te guiaremos a través del proceso de configuración detallado a continuación.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Proveedor SAML personalizado',
},
warning: 'Una vez seleccionado un proveedor no podrás cambiarlo hasta que finalice la configuración',
},
},
createOrganization: {
formButtonSubmit: 'Crear organización',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/es-MX.ts
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,20 @@ export const esMX: LocalizationResource = {
navbar: {
title: 'Configurar inicio de sesión único (SSO)',
},
selectProviderStep: {
title: 'Seleccionar proveedor',
subtitle: 'Selecciona el proveedor para el que vas a configurar SSO.',
body: {
title: 'Selecciona tu proveedor de identidad',
description: 'Te guiaremos a través del proceso de configuración detallado a continuación.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Proveedor SAML personalizado',
},
warning: 'Una vez que se selecciona un proveedor no puedes cambiarlo hasta que termine la configuración',
},
},
createOrganization: {
formButtonSubmit: 'Crear organización',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/es-UY.ts
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,20 @@ export const esUY: LocalizationResource = {
navbar: {
title: 'Configurar inicio de sesión único (SSO)',
},
selectProviderStep: {
title: 'Seleccionar proveedor',
subtitle: 'Seleccioná el proveedor para el que vas a configurar SSO.',
body: {
title: 'Seleccioná tu proveedor de identidad',
description: 'Te guiaremos a través del proceso de configuración detallado a continuación.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Proveedor SAML personalizado',
},
warning: 'Una vez que se selecciona un proveedor no podés cambiarlo hasta que termine la configuración',
},
},
createOrganization: {
formButtonSubmit: 'Crear organización',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/fa-IR.ts
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,20 @@ export const faIR: LocalizationResource = {
navbar: {
title: 'پیکربندی ورود یکپارچه (SSO)',
},
selectProviderStep: {
title: 'ارائه‌دهنده را انتخاب کنید',
subtitle: 'ارائه‌دهنده‌ای را که می‌خواهید SSO را برای آن راه‌اندازی کنید، انتخاب کنید.',
body: {
title: 'ارائه‌دهنده هویت خود را انتخاب کنید',
description: 'در ادامه شما را در فرآیند راه‌اندازی دقیق راهنمایی خواهیم کرد.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'ارائه‌دهنده SAML سفارشی',
},
warning: 'پس از انتخاب یک ارائه‌دهنده، نمی‌توانید آن را تا پایان پیکربندی تغییر دهید',
},
},
createOrganization: {
formButtonSubmit: 'ایجاد سازمان',
Expand Down
14 changes: 14 additions & 0 deletions packages/localizations/src/fi-FI.ts
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,20 @@ export const fiFI: LocalizationResource = {
navbar: {
title: 'Määritä kertakirjautuminen (SSO)',
},
selectProviderStep: {
title: 'Valitse palveluntarjoaja',
subtitle: 'Valitse palveluntarjoaja, jolle määrität SSO:n.',
body: {
title: 'Valitse henkilöllisyyden tarjoaja',
description: 'Opastamme sinut yksityiskohtaisen määritysprosessin läpi seuraavaksi.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Mukautettu SAML-palveluntarjoaja',
},
warning: 'Kun palveluntarjoaja on valittu, et voi vaihtaa sitä ennen kuin määritys on valmis',
},
},
createOrganization: {
formButtonSubmit: 'Luo organisaatio',
Expand Down
15 changes: 15 additions & 0 deletions packages/localizations/src/fr-FR.ts
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,21 @@ export const frFR: LocalizationResource = {
navbar: {
title: "Configurer l'authentification unique (SSO)",
},
selectProviderStep: {
title: 'Sélectionner un fournisseur',
subtitle: 'Sélectionnez le fournisseur pour lequel vous allez configurer le SSO.',
body: {
title: "Sélectionnez votre fournisseur d'identité",
description: 'Nous vous guiderons ensuite à travers le processus de configuration détaillé.',
},
saml: {
groupLabel: 'SAML',
okta: 'Okta Workforce',
customSaml: 'Fournisseur SAML personnalisé',
},
warning:
"Une fois un fournisseur sélectionné, vous ne pourrez plus en changer jusqu'à la fin de la configuration",
},
},
createOrganization: {
formButtonSubmit: 'Créer l’organisation',
Expand Down
Loading
Loading