From abe9e86b0fc0fc2d7597cff0e59e632a82ee768b Mon Sep 17 00:00:00 2001 From: Nicolas Lopes Date: Thu, 6 Aug 2026 17:06:26 -0300 Subject: [PATCH 01/10] feat(ui): upgrade affiliation domains for SSO --- .changeset/bright-geese-upgrade.md | 5 +++ .../react/hooks/useOrganizationDomains.tsx | 22 ++++++++++--- .../__tests__/ConfigureSSO.test.tsx | 33 +++++++++++++++++++ .../organizationEnterpriseConnection.test.ts | 4 +++ .../organizationEnterpriseConnection.ts | 10 ++++-- ...eOrganizationEnterpriseConnection.test.tsx | 14 ++++---- .../useOrganizationEnterpriseConnection.ts | 13 +++++--- .../steps/OrganizationDomainsStep.tsx | 30 ++++++++++------- 8 files changed, 103 insertions(+), 28 deletions(-) create mode 100644 .changeset/bright-geese-upgrade.md diff --git a/.changeset/bright-geese-upgrade.md b/.changeset/bright-geese-upgrade.md new file mode 100644 index 00000000000..019890e5d22 --- /dev/null +++ b/.changeset/bright-geese-upgrade.md @@ -0,0 +1,5 @@ +--- +'@clerk/ui': patch +--- + +Allow existing affiliation-verified organization domains to be upgraded with ownership verification during self-serve SSO setup. diff --git a/packages/shared/src/react/hooks/useOrganizationDomains.tsx b/packages/shared/src/react/hooks/useOrganizationDomains.tsx index 427f90a9e8b..a990ef44c23 100644 --- a/packages/shared/src/react/hooks/useOrganizationDomains.tsx +++ b/packages/shared/src/react/hooks/useOrganizationDomains.tsx @@ -24,6 +24,11 @@ export type UseOrganizationDomainsParams = { * Filter the returned domains by enrollment mode. */ enrollmentMode?: OrganizationEnrollmentMode; + /** + * Enrollment mode assigned to domains created through this hook. Defaults to + * `enrollmentMode`, so filtering and creation retain their existing behavior. + */ + createEnrollmentMode?: OrganizationEnrollmentMode; /** * Invoked from the ownership-verification poll whenever an `attempt` resolves * one or more domains as `verified`. @@ -64,7 +69,13 @@ export type UseOrganizationDomainsReturn = { * @internal */ function useOrganizationDomains(params: UseOrganizationDomainsParams = {}): UseOrganizationDomainsReturn { - const { keepPreviousData = true, enabled = true, enrollmentMode, onOwnershipVerified } = params; + const { + keepPreviousData = true, + enabled = true, + enrollmentMode, + createEnrollmentMode = enrollmentMode, + onOwnershipVerified, + } = params; const clerk = useClerkInstanceContext(); const organization = useOrganizationBase(); const [queryClient] = useClerkQueryClient(); @@ -101,9 +112,12 @@ function useOrganizationDomains(params: UseOrganizationDomainsParams = {}): UseO const createDomain = useCallback( async (name: string) => { - let created = await organization?.createDomain(name, enrollmentMode ? { enrollmentMode } : undefined); + let created = await organization?.createDomain( + name, + createEnrollmentMode ? { enrollmentMode: createEnrollmentMode } : undefined, + ); - if (created && enrollmentMode === 'enterprise_sso') { + if (created && createEnrollmentMode === 'enterprise_sso') { const prepared = await organization?.prepareOwnershipVerification([created.id]); created = prepared?.data[0] ?? created; } @@ -111,7 +125,7 @@ function useOrganizationDomains(params: UseOrganizationDomainsParams = {}): UseO await revalidate(); return created; }, - [organization, revalidate, enrollmentMode], + [organization, revalidate, createEnrollmentMode], ); const prepareOwnershipVerification = useCallback( diff --git a/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx b/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx index b5309a864c5..d54b9d5a1f0 100644 --- a/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx +++ b/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx @@ -23,6 +23,15 @@ const unverifiedDomain = { ownershipVerification: { status: 'unverified', strategy: 'txt' }, } as any; +const affiliationVerifiedDomain = { + id: 'dmn_affiliation_verified', + name: 'legacy.example', + organizationId: 'Org1', + enrollmentMode: 'manual_invitation', + affiliationVerification: { status: 'verified', strategy: 'email_code' }, + ownershipVerification: null, +} as any; + const mockOrganizationDomains = (fixtures: any, domains: any[]) => fixtures.clerk.organization?.getDomains.mockResolvedValue({ data: domains, total_count: domains.length } as any); @@ -117,6 +126,30 @@ describe('ConfigureSSO', () => { }); describe('state machine mounts on the right step', () => { + it('starts ownership verification for an existing affiliation-verified domain', async () => { + const { wrapper, fixtures } = await createFixtures(f => { + f.withEnterpriseSso({ selfServeSSO: true }); + f.withEmailAddress(); + f.withOrganizations(); + f.withUser({ + email_addresses: ['test@clerk.com'], + organization_memberships: [{ name: 'Org1', permissions: ['org:sys_entconns:manage'] }], + }); + }); + + fixtures.clerk.organization?.getEnterpriseConnections.mockResolvedValue([]); + mockOrganizationDomains(fixtures, [affiliationVerifiedDomain]); + + const { findByRole, userEvent } = render(, { wrapper }); + + await userEvent.click(await findByRole('button', { name: /verify again/i })); + + expect(fixtures.clerk.organization?.getDomains).toHaveBeenCalledWith(undefined); + expect(fixtures.clerk.organization?.prepareOwnershipVerification).toHaveBeenCalledWith([ + affiliationVerifiedDomain.id, + ]); + }); + it('mounts on select-provider when all organization domains are verified and there is no connection', async () => { const { wrapper, fixtures } = await createFixtures(f => { f.withEnterpriseSso({ selfServeSSO: true }); diff --git a/packages/ui/src/components/ConfigureSSO/domain/__tests__/organizationEnterpriseConnection.test.ts b/packages/ui/src/components/ConfigureSSO/domain/__tests__/organizationEnterpriseConnection.test.ts index a0189c74311..d1af3e0f21c 100644 --- a/packages/ui/src/components/ConfigureSSO/domain/__tests__/organizationEnterpriseConnection.test.ts +++ b/packages/ui/src/components/ConfigureSSO/domain/__tests__/organizationEnterpriseConnection.test.ts @@ -282,6 +282,10 @@ describe('areAllOrganizationDomainsVerified', () => { it('domain without ownership verification → false', () => { expect(areAllOrganizationDomainsVerified([makeDomain(null)])).toBe(false); }); + + it('ignores affiliation-only domains that were not selected for ownership verification', () => { + expect(areAllOrganizationDomainsVerified([makeDomain('verified'), makeDomain(null)])).toBe(true); + }); }); describe('connectionBackingEmail', () => { diff --git a/packages/ui/src/components/ConfigureSSO/domain/organizationEnterpriseConnection.ts b/packages/ui/src/components/ConfigureSSO/domain/organizationEnterpriseConnection.ts index fd9f7c7bd56..ae4c4b1a5e1 100644 --- a/packages/ui/src/components/ConfigureSSO/domain/organizationEnterpriseConnection.ts +++ b/packages/ui/src/components/ConfigureSSO/domain/organizationEnterpriseConnection.ts @@ -53,8 +53,14 @@ export const isEnterpriseConnectionConfigured = ( connection: EnterpriseConnectionResource | null | undefined, ): boolean => Boolean(connection?.samlConnection?.idpSsoUrl && connection?.samlConnection?.idpEntityId); -export const areAllOrganizationDomainsVerified = (domains: OrganizationDomainResource[] | null | undefined): boolean => - !!domains?.length && domains.every(domain => domain.ownershipVerification?.status === 'verified'); +export const areAllOrganizationDomainsVerified = ( + domains: OrganizationDomainResource[] | null | undefined, +): boolean => { + const ownershipDomains = domains?.filter(domain => domain.ownershipVerification) ?? []; + return ( + !!ownershipDomains.length && ownershipDomains.every(domain => domain.ownershipVerification?.status === 'verified') + ); +}; const connectionStatus = ({ hasConnection, diff --git a/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx b/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx index bb9579ad215..0ec09c2ebe6 100644 --- a/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx +++ b/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx @@ -185,20 +185,22 @@ describe('useOrganizationEnterpriseConnection — test-runs gating', () => { }); describe('useOrganizationEnterpriseConnection — mutations', () => { - it('createConnection forwards the provider and the organization domains', async () => { - domainsState.data = [{ name: 'acme.com' }, { name: 'example.com' }]; + it('createConnection forwards the provider and ownership-verified organization domains', async () => { + domainsState.data = [ + { name: 'acme.com', ownershipVerification: { status: 'verified' } }, + { name: 'example.com', ownershipVerification: null }, + ]; const { result } = renderHook(() => useOrganizationEnterpriseConnection()); await result.current.enterpriseConnectionMutations.createConnection('saml_okta'); expect(mutationSpies.create).toHaveBeenCalledTimes(1); - // `name` is derived by FAPI, so it is not sent from the client; `domains` - // are the verified organization domains passed straight through by the - // caller. + // `name` is derived by FAPI, so it is not sent from the client; only + // ownership-verified domains are valid SSO connection domains. expect(mutationSpies.create).toHaveBeenCalledWith({ provider: 'saml_okta', - domains: ['acme.com', 'example.com'], + domains: ['acme.com'], }); }); diff --git a/packages/ui/src/components/ConfigureSSO/hooks/useOrganizationEnterpriseConnection.ts b/packages/ui/src/components/ConfigureSSO/hooks/useOrganizationEnterpriseConnection.ts index 0337366b0cb..1d583542636 100644 --- a/packages/ui/src/components/ConfigureSSO/hooks/useOrganizationEnterpriseConnection.ts +++ b/packages/ui/src/components/ConfigureSSO/hooks/useOrganizationEnterpriseConnection.ts @@ -211,10 +211,15 @@ export const useOrganizationEnterpriseConnection = (): UseOrganizationEnterprise attemptOwnershipVerification, revalidate: revalidateDomains, } = __internal_useOrganizationDomains({ - enrollmentMode: 'enterprise_sso', + createEnrollmentMode: 'enterprise_sso', onOwnershipVerified: handleDomainOwnershipVerified, }); + const verifiedOwnershipDomains = useMemo( + () => organizationDomains?.filter(domain => domain.ownershipVerification?.status === 'verified'), + [organizationDomains], + ); + const organizationDomainMutations = useMemo( () => ({ createDomain, @@ -229,7 +234,7 @@ export const useOrganizationEnterpriseConnection = (): UseOrganizationEnterprise const createConnection: EnterpriseConnectionMutations['createConnection'] = provider => { return createEnterpriseConnection({ provider, - domains: organizationDomains?.map(domain => domain.name), + domains: verifiedOwnershipDomains?.map(domain => domain.name), }); }; @@ -243,7 +248,7 @@ export const useOrganizationEnterpriseConnection = (): UseOrganizationEnterprise await deleteEnterpriseConnection(enterpriseConnection.id); } - const domains = enterpriseConnection?.domains ?? organizationDomains?.map(domain => domain.name); + const domains = enterpriseConnection?.domains ?? verifiedOwnershipDomains?.map(domain => domain.name); return createEnterpriseConnection({ provider, @@ -281,7 +286,7 @@ export const useOrganizationEnterpriseConnection = (): UseOrganizationEnterprise }; }, [ organization, - organizationDomains, + verifiedOwnershipDomains, enterpriseConnection, createEnterpriseConnection, updateEnterpriseConnection, diff --git a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx index 8c449089080..35449e7c538 100644 --- a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx +++ b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx @@ -382,6 +382,7 @@ const DomainCard = ({ const ownershipVerification = domain.ownershipVerification; const isVerified = ownershipVerification?.status === 'verified'; const isExpired = ownershipVerification?.status === 'expired'; + const hasOwnershipVerification = Boolean(ownershipVerification); const cardId = ownershipVerification?.status ?? 'unverified'; const removeButton = ( @@ -447,7 +448,7 @@ const DomainCard = ({ } /> - {!isVerified && !isExpired && ( + {!isVerified && !isExpired && hasOwnershipVerification && ( - {isExpired ? ( + {!hasOwnershipVerification || isExpired ? ( @@ -497,9 +499,11 @@ const DomainCard = ({ }; const ExpiredNotice = ({ + isExpired, expiresAt, onPrepareOwnershipVerification, }: { + isExpired: boolean; expiresAt: Date | null; onPrepareOwnershipVerification: () => Promise; }): JSX.Element => { @@ -515,15 +519,17 @@ const ExpiredNotice = ({ elementDescriptor={descriptors.configureSSOVerifyDomainCardExpired} sx={t => ({ gap: t.space.$3, paddingInline: t.space.$4, paddingBottom: t.space.$4 })} > - + {isExpired && ( + + )} From 315c5d5ac94b5170b00c7a769714d12f80841544 Mon Sep 17 00:00:00 2001 From: Nicolas Lopes Date: Thu, 6 Aug 2026 18:33:57 -0300 Subject: [PATCH 03/10] feat(ui): suggest ownership verification --- .changeset/bright-geese-upgrade.md | 1 + packages/localizations/src/en-US.ts | 5 +- .../__tests__/ConfigureSSO.test.tsx | 6 +- .../steps/OrganizationDomainsStep.tsx | 122 ++++++++++++++---- 4 files changed, 105 insertions(+), 29 deletions(-) diff --git a/.changeset/bright-geese-upgrade.md b/.changeset/bright-geese-upgrade.md index 019890e5d22..feb90ea5e78 100644 --- a/.changeset/bright-geese-upgrade.md +++ b/.changeset/bright-geese-upgrade.md @@ -1,4 +1,5 @@ --- +'@clerk/localizations': patch '@clerk/ui': patch --- diff --git a/packages/localizations/src/en-US.ts b/packages/localizations/src/en-US.ts index 012e9d232da..07d79270a66 100644 --- a/packages/localizations/src/en-US.ts +++ b/packages/localizations/src/en-US.ts @@ -649,6 +649,10 @@ export const enUS: LocalizationResource = { title: 'Configure Single Sign-On (SSO)', }, organizationDomainsStep: { + affiliationDomainSuggestion: { + formButtonPrimary__verify: 'Verify ownership', + messageLabel: 'We noticed you have verified domains {{domains}}. Do you want to verify their ownership?', + }, domainCard: { affiliationLabel: 'Affiliation', badge__expired: 'Expired', @@ -668,7 +672,6 @@ export const enUS: LocalizationResource = { }, verifiedAtLabel: "Verified on {{ date | shortDate('en-US') }}", verifyAgainButton: 'Verify again', - verifyOwnershipButton: 'Verify ownership', }, domainSuggestion: { formButtonPrimary__add: 'Add {{domain}}', diff --git a/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx b/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx index 36ebc89c9e8..783f799dd4e 100644 --- a/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx +++ b/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx @@ -140,10 +140,10 @@ describe('ConfigureSSO', () => { fixtures.clerk.organization?.getEnterpriseConnections.mockResolvedValue([]); mockOrganizationDomains(fixtures, [affiliationVerifiedDomain]); - const { findByRole, findByText, userEvent } = render(, { wrapper }); + const { findByRole, findByText, queryByText, userEvent } = render(, { wrapper }); - await findByText('Affiliation'); - await findByText('Ownership'); + await findByText(/we noticed you have verified domains legacy\.example/i); + expect(queryByText('Affiliation')).not.toBeInTheDocument(); await userEvent.click(await findByRole('button', { name: /verify ownership/i })); expect(fixtures.clerk.organization?.getDomains).toHaveBeenCalledWith(undefined); diff --git a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx index 3e963fcdd34..c79fcc48d3b 100644 --- a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx +++ b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx @@ -92,6 +92,17 @@ export const OrganizationDomainsStep = (): JSX.Element => { } }; + const handlePrepareAffiliationDomainsOwnershipVerification = async (domains: OrganizationDomainResource[]) => { + card.setError(undefined); + + try { + await prepareOwnershipVerification(domains); + } catch (err: any) { + const apiError = getFieldError(err) ?? getGlobalError(err); + card.setError(apiError); + } + }; + const handleRemoveDomain = async (domain: OrganizationDomainResource) => { if (enterpriseConnection) { const domains = enterpriseConnection.domains.filter(name => name !== domain.name); @@ -103,6 +114,12 @@ export const OrganizationDomainsStep = (): JSX.Element => { }; const hasAllDomainsVerified = areAllOrganizationDomainsVerified(organizationDomains); + const ownershipDomains = organizationDomains?.filter(domain => domain.ownershipVerification) ?? []; + const affiliationVerifiedDomains = + organizationDomains?.filter( + domain => + !domain.ownershipVerification && (domain.affiliationVerification ?? domain.verification)?.status === 'verified', + ) ?? []; // A connection needs at least one verified domain to point at, so the last // remaining verified domain cannot be removed while a connection exists @@ -137,6 +154,13 @@ export const OrganizationDomainsStep = (): JSX.Element => { {!organizationDomains?.length && } + {!!affiliationVerifiedDomains.length && ( + + )} + {card.error && ( { )} - {!!organizationDomains?.length && ( + {!!ownershipDomains.length && ( ({ @@ -160,7 +184,7 @@ export const OrganizationDomainsStep = (): JSX.Element => { ...common.unstyledScrollbar(t), })} > - {organizationDomains.map(domain => { + {ownershipDomains.map(domain => { const isVerified = domain.ownershipVerification?.status === 'verified'; const isLastVerifiedDomain = isVerified && verifiedDomainCount === 1; const isRemoveDisabled = lockLastVerifiedDomain && isLastVerifiedDomain; @@ -362,6 +386,64 @@ const DomainSuggestion = ({ onSubmit }: { onSubmit: (domain: string) => Promise< ); }; +const AffiliationDomainSuggestion = ({ + domains, + onSubmit, +}: { + domains: OrganizationDomainResource[]; + onSubmit: (domains: OrganizationDomainResource[]) => Promise; +}): JSX.Element => { + const [isSubmitting, setIsSubmitting] = useState(false); + const domainNames = domains.map(domain => domain.name).join(', '); + + const handleVerifyOwnership = () => { + setIsSubmitting(true); + void onSubmit(domains).finally(() => setIsSubmitting(false)); + }; + + return ( + ({ + gap: t.space.$2, + paddingInline: t.space.$3, + paddingBlock: t.space.$1x5, + borderWidth: t.borderWidths.$normal, + borderStyle: t.borderStyles.$solid, + borderColor: t.colors.$borderAlpha150, + borderRadius: t.radii.$lg, + background: t.colors.$neutralAlpha50, + })} + > + ({ fontSize: t.fontSizes.$sm })} + /> + + From bfd2453100df83b1f0902bbea1cbf2cfc762c106 Mon Sep 17 00:00:00 2001 From: Nicolas Lopes Date: Thu, 6 Aug 2026 19:16:51 -0300 Subject: [PATCH 04/10] fix(ui): preserve affiliation domains in SSO --- packages/localizations/src/en-US.ts | 7 +++- .../ConfigureSSO/RemoveDomainDialog.tsx | 36 ++++++++++--------- .../__tests__/ConfigureSSO.test.tsx | 3 +- .../__tests__/RemoveDomainDialog.test.tsx | 12 +++++++ .../steps/OrganizationDomainsStep.tsx | 27 ++++++++------ 5 files changed, 57 insertions(+), 28 deletions(-) diff --git a/packages/localizations/src/en-US.ts b/packages/localizations/src/en-US.ts index 07d79270a66..48ed74e112e 100644 --- a/packages/localizations/src/en-US.ts +++ b/packages/localizations/src/en-US.ts @@ -651,7 +651,8 @@ export const enUS: LocalizationResource = { organizationDomainsStep: { affiliationDomainSuggestion: { formButtonPrimary__verify: 'Verify ownership', - messageLabel: 'We noticed you have verified domains {{domains}}. Do you want to verify their ownership?', + messageLabel: + 'We noticed you have verified domains {{domains}}. Do you want to verify their ownership?', }, domainCard: { affiliationLabel: 'Affiliation', @@ -682,11 +683,15 @@ export const enUS: LocalizationResource = { formFieldLabel__domain: 'Domain', removeDomainDialog: { cancelButton: 'Cancel', + removeFromSSOButton: 'Remove from SSO', removeButton: 'Remove domain', subtitle__active: "You're about to remove {{domain}} from this enterprise connection. Users won't be able to sign-in with {{domain}} anymore.", subtitle__inactive: "You're about to remove {{domain}} from this enterprise connection.", + subtitle__preserveAffiliation: + "You're about to remove {{domain}} from this enterprise connection. Its existing affiliation verification will remain active.", title: 'Removing domain', + title__preserveAffiliation: 'Remove from SSO', }, subtitle: 'Add and verify ownership of the domains your organization uses to sign in.', title: 'Add SSO domains', diff --git a/packages/ui/src/components/ConfigureSSO/RemoveDomainDialog.tsx b/packages/ui/src/components/ConfigureSSO/RemoveDomainDialog.tsx index 90644d60e87..2cd837fb1f9 100644 --- a/packages/ui/src/components/ConfigureSSO/RemoveDomainDialog.tsx +++ b/packages/ui/src/components/ConfigureSSO/RemoveDomainDialog.tsx @@ -1,5 +1,3 @@ -import { useMemo } from 'react'; - import { Col, descriptors, localizationKeys } from '@/customizables'; import { Card } from '@/elements/Card'; import { useCardState, withCardStateProvider } from '@/elements/contexts'; @@ -14,6 +12,7 @@ type RemoveDomainDialogProps = { onClose: () => void; domain: string; isConnectionActive: boolean; + preserveAffiliationVerification: boolean; onRemove: () => Promise; contentRef: React.RefObject; }; @@ -47,18 +46,17 @@ const RemoveDomainDialogContent = withCardStateProvider((props: RemoveDomainDial const { onClose, onRemove } = props; const card = useCardState(); - const subtitle = useMemo( - () => - props.isConnectionActive - ? localizationKeys('configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__active', { - domain: props.domain, - }) - : localizationKeys('configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__inactive', { - domain: props.domain, - }), - // eslint-disable-next-line react-hooks/exhaustive-deps - [], - ); + const subtitle = props.preserveAffiliationVerification + ? localizationKeys('configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__preserveAffiliation', { + domain: props.domain, + }) + : props.isConnectionActive + ? localizationKeys('configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__active', { + domain: props.domain, + }) + : localizationKeys('configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__inactive', { + domain: props.domain, + }); const onSubmit = async () => { try { @@ -76,7 +74,11 @@ const RemoveDomainDialogContent = withCardStateProvider((props: RemoveDomainDial > ({ textAlign: 'start', padding: t.sizes.$5 })}> ({ gap: t.space.$4 })} > @@ -88,7 +90,9 @@ const RemoveDomainDialogContent = withCardStateProvider((props: RemoveDomainDial block={false} colorScheme='danger' localizationKey={localizationKeys( - 'configureSSO.organizationDomainsStep.removeDomainDialog.removeButton', + props.preserveAffiliationVerification + ? 'configureSSO.organizationDomainsStep.removeDomainDialog.removeFromSSOButton' + : 'configureSSO.organizationDomainsStep.removeDomainDialog.removeButton', )} /> { const { findByRole, findByText, queryByText, userEvent } = render(, { wrapper }); - await findByText(/we noticed you have verified domains legacy\.example/i); + await findByText(/we noticed you have verified domains/i); + await findByText('legacy.example'); expect(queryByText('Affiliation')).not.toBeInTheDocument(); await userEvent.click(await findByRole('button', { name: /verify ownership/i })); diff --git a/packages/ui/src/components/ConfigureSSO/__tests__/RemoveDomainDialog.test.tsx b/packages/ui/src/components/ConfigureSSO/__tests__/RemoveDomainDialog.test.tsx index 3a02bef01ed..cb9465a5c13 100644 --- a/packages/ui/src/components/ConfigureSSO/__tests__/RemoveDomainDialog.test.tsx +++ b/packages/ui/src/components/ConfigureSSO/__tests__/RemoveDomainDialog.test.tsx @@ -18,6 +18,7 @@ const renderDialog = ( onClose?: () => void; domain?: string; isConnectionActive?: boolean; + preserveAffiliationVerification?: boolean; } = {}, ) => { const onClose = props.onClose ?? vi.fn(); @@ -28,6 +29,7 @@ const renderDialog = ( onClose={onClose} domain={props.domain ?? 'acme.com'} isConnectionActive={props.isConnectionActive ?? false} + preserveAffiliationVerification={props.preserveAffiliationVerification ?? false} onRemove={() => onRemove()} contentRef={{ current: null }} /> @@ -80,6 +82,16 @@ describe('RemoveDomainDialog', () => { expect(screen.queryByText(/Users won't be able to sign-in/i)).not.toBeInTheDocument(); }); + it('keeps affiliation verification when removing a domain from SSO', async () => { + resetMocks(); + const { wrapper } = await createFixtures(); + renderDialog(wrapper, { domain: 'acme.com', preserveAffiliationVerification: true }); + + expect(screen.getByRole('heading', { name: 'Remove from SSO' })).toBeInTheDocument(); + expect(screen.getByRole('button', { name: 'Remove from SSO' })).toBeInTheDocument(); + expect(screen.getByText(/existing affiliation verification will remain active/i)).toBeInTheDocument(); + }); + it('invokes onClose when Cancel is clicked', async () => { resetMocks(); const onClose = vi.fn(); diff --git a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx index c79fcc48d3b..1c35170a114 100644 --- a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx +++ b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx @@ -36,6 +36,9 @@ import { Step } from '../elements/Step'; import { useWizard } from '../elements/Wizard/WizardContext'; import { RemoveDomainDialog } from '../RemoveDomainDialog'; +const hasVerifiedAffiliation = (domain: OrganizationDomainResource): boolean => + (domain.affiliationVerification ?? domain.verification)?.status === 'verified'; + export const OrganizationDomainsStep = (): JSX.Element => { const { t } = useLocalizations(); const { @@ -109,6 +112,11 @@ export const OrganizationDomainsStep = (): JSX.Element => { await updateConnection(enterpriseConnection.id, { domains }); } + if (hasVerifiedAffiliation(domain)) { + await revalidate(); + return; + } + await domain.delete(); await revalidate(); }; @@ -116,10 +124,7 @@ export const OrganizationDomainsStep = (): JSX.Element => { const hasAllDomainsVerified = areAllOrganizationDomainsVerified(organizationDomains); const ownershipDomains = organizationDomains?.filter(domain => domain.ownershipVerification) ?? []; const affiliationVerifiedDomains = - organizationDomains?.filter( - domain => - !domain.ownershipVerification && (domain.affiliationVerification ?? domain.verification)?.status === 'verified', - ) ?? []; + organizationDomains?.filter(domain => !domain.ownershipVerification && hasVerifiedAffiliation(domain)) ?? []; // A connection needs at least one verified domain to point at, so the last // remaining verified domain cannot be removed while a connection exists @@ -188,11 +193,12 @@ export const OrganizationDomainsStep = (): JSX.Element => { const isVerified = domain.ownershipVerification?.status === 'verified'; const isLastVerifiedDomain = isVerified && verifiedDomainCount === 1; const isRemoveDisabled = lockLastVerifiedDomain && isLastVerifiedDomain; + const canRemove = domain.enrollmentMode === 'enterprise_sso' || Boolean(enterpriseConnection); return ( setDomainToRemove(domain)} + onRemove={canRemove ? () => setDomainToRemove(domain) : undefined} onPrepareOwnershipVerification={() => handlePrepareOwnershipVerification(domain)} isRemoveDisabled={isRemoveDisabled} removeDisabledTooltip={lastVerifiedDomainTooltip} @@ -222,6 +228,7 @@ export const OrganizationDomainsStep = (): JSX.Element => { onClose={() => setDomainToRemove(null)} domain={domainToRemove.name} isConnectionActive={Boolean(enterpriseConnection?.active)} + preserveAffiliationVerification={hasVerifiedAffiliation(domainToRemove)} onRemove={() => handleRemoveDomain(domainToRemove)} contentRef={contentRef} /> @@ -452,7 +459,7 @@ const DomainCard = ({ removeDisabledTooltip, }: { domain: OrganizationDomainResource; - onRemove: () => void; + onRemove?: () => void; onPrepareOwnershipVerification: () => Promise; isRemoveDisabled?: boolean; removeDisabledTooltip?: ReturnType; @@ -464,10 +471,10 @@ const DomainCard = ({ const ownershipVerification = domain.ownershipVerification; const isVerified = ownershipVerification?.status === 'verified'; const isExpired = ownershipVerification?.status === 'expired'; - const isAffiliationVerified = (domain.affiliationVerification ?? domain.verification)?.status === 'verified'; + const isAffiliationVerified = hasVerifiedAffiliation(domain); const cardId = ownershipVerification?.status ?? 'unverified'; - const removeButton = ( + const removeButton = onRemove ? ( - ); + ) : null; return ( - {isRemoveDisabled && removeDisabledTooltip ? ( + {removeButton && isRemoveDisabled && removeDisabledTooltip ? ( {removeButton} From 2d5b8ac3dbfbbb1481a5ff855c79f09f1805b2e3 Mon Sep 17 00:00:00 2001 From: Nicolas Lopes Date: Thu, 6 Aug 2026 20:14:31 -0300 Subject: [PATCH 05/10] fix(ui): include enterprise SSO domains --- ...eOrganizationEnterpriseConnection.test.tsx | 48 +++++++++++----- .../useOrganizationEnterpriseConnection.ts | 57 ++++++++++++++++--- 2 files changed, 84 insertions(+), 21 deletions(-) diff --git a/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx b/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx index 0ec09c2ebe6..b42d5e0562d 100644 --- a/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx +++ b/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx @@ -47,7 +47,9 @@ const mutationSpies = vi.hoisted(() => ({ })); const domainsState = vi.hoisted(() => ({ - data: undefined as Array<{ name: string }> | undefined, + affiliation: undefined as Array<{ id: string; name: string; ownershipVerification: unknown }> | undefined, + enterpriseSSO: undefined as Array<{ id: string; name: string; ownershipVerification: unknown }> | undefined, + calls: [] as Array<{ enrollmentMode?: string }>, isLoading: false, })); @@ -59,14 +61,17 @@ vi.mock('@clerk/shared/react', () => ({ updateEnterpriseConnection: mutationSpies.update, deleteEnterpriseConnection: mutationSpies.delete, }), - __internal_useOrganizationDomains: () => ({ - data: domainsState.data, - isLoading: domainsState.isLoading, - createDomain: vi.fn(), - prepareOwnershipVerification: vi.fn(), - attemptOwnershipVerification: vi.fn(), - revalidate: vi.fn(() => Promise.resolve()), - }), + __internal_useOrganizationDomains: (params: { enrollmentMode?: string }) => { + domainsState.calls.push({ enrollmentMode: params.enrollmentMode }); + return { + data: params.enrollmentMode === 'enterprise_sso' ? domainsState.enterpriseSSO : domainsState.affiliation, + isLoading: domainsState.isLoading, + createDomain: vi.fn(), + prepareOwnershipVerification: vi.fn(), + attemptOwnershipVerification: vi.fn(), + revalidate: vi.fn(() => Promise.resolve()), + }; + }, __internal_useOrganizationEnterpriseConnectionTestRuns: (params: { enabled?: boolean }) => { testRunsState.calls.push({ enabled: params.enabled }); return { @@ -91,7 +96,9 @@ import { useOrganizationEnterpriseConnection } from '../useOrganizationEnterpris beforeEach(() => { connectionsState.data = []; connectionsState.isLoading = false; - domainsState.data = undefined; + domainsState.affiliation = undefined; + domainsState.enterpriseSSO = undefined; + domainsState.calls = []; domainsState.isLoading = false; testRunsState.calls = []; testRunsState.isLoading = false; @@ -186,9 +193,9 @@ describe('useOrganizationEnterpriseConnection — test-runs gating', () => { describe('useOrganizationEnterpriseConnection — mutations', () => { it('createConnection forwards the provider and ownership-verified organization domains', async () => { - domainsState.data = [ - { name: 'acme.com', ownershipVerification: { status: 'verified' } }, - { name: 'example.com', ownershipVerification: null }, + domainsState.affiliation = [{ id: 'dmn_affiliation', name: 'example.com', ownershipVerification: null }]; + domainsState.enterpriseSSO = [ + { id: 'dmn_ownership', name: 'acme.com', ownershipVerification: { status: 'verified' } }, ]; const { result } = renderHook(() => useOrganizationEnterpriseConnection()); @@ -205,7 +212,8 @@ describe('useOrganizationEnterpriseConnection — mutations', () => { }); it('createConnection forwards undefined domains when the organization has none', async () => { - domainsState.data = undefined; + domainsState.affiliation = undefined; + domainsState.enterpriseSSO = undefined; const { result } = renderHook(() => useOrganizationEnterpriseConnection()); @@ -225,4 +233,16 @@ describe('useOrganizationEnterpriseConnection — mutations', () => { expect(mutationSpies.update).toHaveBeenCalledWith('ent_1', { active: true }); }); + + it('merges affiliation and enterprise SSO domain responses', () => { + domainsState.affiliation = [{ id: 'dmn_affiliation', name: 'example.com', ownershipVerification: null }]; + domainsState.enterpriseSSO = [ + { id: 'dmn_enterprise_sso', name: 'acme.com', ownershipVerification: { status: 'unverified' } }, + ]; + + const { result } = renderHook(() => useOrganizationEnterpriseConnection()); + + expect(result.current.organizationDomains?.map(domain => domain.name)).toEqual(['example.com', 'acme.com']); + expect(domainsState.calls).toEqual([{ enrollmentMode: undefined }, { enrollmentMode: 'enterprise_sso' }]); + }); }); diff --git a/packages/ui/src/components/ConfigureSSO/hooks/useOrganizationEnterpriseConnection.ts b/packages/ui/src/components/ConfigureSSO/hooks/useOrganizationEnterpriseConnection.ts index 1d583542636..bdf60d6a5bb 100644 --- a/packages/ui/src/components/ConfigureSSO/hooks/useOrganizationEnterpriseConnection.ts +++ b/packages/ui/src/components/ConfigureSSO/hooks/useOrganizationEnterpriseConnection.ts @@ -204,17 +204,57 @@ export const useOrganizationEnterpriseConnection = (): UseOrganizationEnterprise ); const { - isLoading: isLoadingOrganizationDomains, - data: organizationDomains, + isLoading: isLoadingAffiliationDomains, + data: affiliationDomains, + prepareOwnershipVerification: prepareAffiliationOwnershipVerification, + attemptOwnershipVerification: attemptAffiliationOwnershipVerification, + revalidate: revalidateAffiliationDomains, + } = __internal_useOrganizationDomains({ + onOwnershipVerified: handleDomainOwnershipVerified, + }); + + const { + isLoading: isLoadingEnterpriseSSODomains, + data: enterpriseSSODomains, createDomain, - prepareOwnershipVerification, - attemptOwnershipVerification, - revalidate: revalidateDomains, + revalidate: revalidateEnterpriseSSODomains, } = __internal_useOrganizationDomains({ - createEnrollmentMode: 'enterprise_sso', + enrollmentMode: 'enterprise_sso', onOwnershipVerified: handleDomainOwnershipVerified, }); + const organizationDomains = useMemo(() => { + const domains = [...(affiliationDomains ?? []), ...(enterpriseSSODomains ?? [])]; + if (!domains.length) { + return undefined; + } + + return Array.from(new Map(domains.map(domain => [domain.id, domain])).values()); + }, [affiliationDomains, enterpriseSSODomains]); + + const revalidateDomains = useCallback( + () => Promise.all([revalidateAffiliationDomains(), revalidateEnterpriseSSODomains()]).then(() => undefined), + [revalidateAffiliationDomains, revalidateEnterpriseSSODomains], + ); + + const prepareOwnershipVerification = useCallback( + async (domains: OrganizationDomainResource[]) => { + const prepared = await prepareAffiliationOwnershipVerification(domains); + await revalidateEnterpriseSSODomains(); + return prepared; + }, + [prepareAffiliationOwnershipVerification, revalidateEnterpriseSSODomains], + ); + + const attemptOwnershipVerification = useCallback( + async (domains: OrganizationDomainResource[]) => { + const attempted = await attemptAffiliationOwnershipVerification(domains); + await revalidateEnterpriseSSODomains(); + return attempted; + }, + [attemptAffiliationOwnershipVerification, revalidateEnterpriseSSODomains], + ); + const verifiedOwnershipDomains = useMemo( () => organizationDomains?.filter(domain => domain.ownershipVerification?.status === 'verified'), [organizationDomains], @@ -338,7 +378,10 @@ export const useOrganizationEnterpriseConnection = (): UseOrganizationEnterprise // fresh-start path they stay dormant until the connection is configured, and // landing on the test step then shows table-level loading, never the global isLoading: - isLoadingEnterpriseConnections || isLoadingOrganizationDomains || (hadInitialConnection && isLoadingTestRuns), + isLoadingEnterpriseConnections || + isLoadingAffiliationDomains || + isLoadingEnterpriseSSODomains || + (hadInitialConnection && isLoadingTestRuns), enterpriseConnection, organizationEnterpriseConnection, enterpriseConnectionMutations, From 03f92f77b8b1efb1d2b5eee5d320abef1f2605c2 Mon Sep 17 00:00:00 2001 From: Nicolas Lopes Date: Thu, 6 Aug 2026 21:02:13 -0300 Subject: [PATCH 06/10] fix(ui): consolidate domain verification states --- packages/localizations/src/en-US.ts | 6 +- .../__tests__/ConfigureSSO.test.tsx | 8 +- .../steps/OrganizationDomainsStep.tsx | 131 +++++++----------- 3 files changed, 53 insertions(+), 92 deletions(-) diff --git a/packages/localizations/src/en-US.ts b/packages/localizations/src/en-US.ts index 48ed74e112e..6142c911ad9 100644 --- a/packages/localizations/src/en-US.ts +++ b/packages/localizations/src/en-US.ts @@ -649,11 +649,6 @@ export const enUS: LocalizationResource = { title: 'Configure Single Sign-On (SSO)', }, organizationDomainsStep: { - affiliationDomainSuggestion: { - formButtonPrimary__verify: 'Verify ownership', - messageLabel: - 'We noticed you have verified domains {{domains}}. Do you want to verify their ownership?', - }, domainCard: { affiliationLabel: 'Affiliation', badge__expired: 'Expired', @@ -665,6 +660,7 @@ export const enUS: LocalizationResource = { removeButtonTooltip__lastVerifiedDomain: 'At least one verified domain is required to set up SSO.', removeButtonTooltip__lastVerifiedDomainActive: 'At least one verified domain is required to keep SSO enabled.', ownershipLabel: 'Ownership', + proveOwnershipButton: 'Prove ownership', txtRecord: { hostLabel: 'Host / Name', instructions: "Add this TXT record to your DNS provider. We'll verify automatically once the record is live.", diff --git a/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx b/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx index a198953b2b0..fd391fb98c5 100644 --- a/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx +++ b/packages/ui/src/components/ConfigureSSO/__tests__/ConfigureSSO.test.tsx @@ -140,12 +140,12 @@ describe('ConfigureSSO', () => { fixtures.clerk.organization?.getEnterpriseConnections.mockResolvedValue([]); mockOrganizationDomains(fixtures, [affiliationVerifiedDomain]); - const { findByRole, findByText, queryByText, userEvent } = render(, { wrapper }); + const { findByRole, findByText, userEvent } = render(, { wrapper }); - await findByText(/we noticed you have verified domains/i); + await findByText('Affiliation'); await findByText('legacy.example'); - expect(queryByText('Affiliation')).not.toBeInTheDocument(); - await userEvent.click(await findByRole('button', { name: /verify ownership/i })); + await findByText('Ownership'); + await userEvent.click(await findByRole('button', { name: /prove ownership/i })); expect(fixtures.clerk.organization?.getDomains).toHaveBeenCalledWith(undefined); expect(fixtures.clerk.organization?.prepareOwnershipVerification).toHaveBeenCalledWith([ diff --git a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx index 1c35170a114..32be187d1de 100644 --- a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx +++ b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx @@ -95,17 +95,6 @@ export const OrganizationDomainsStep = (): JSX.Element => { } }; - const handlePrepareAffiliationDomainsOwnershipVerification = async (domains: OrganizationDomainResource[]) => { - card.setError(undefined); - - try { - await prepareOwnershipVerification(domains); - } catch (err: any) { - const apiError = getFieldError(err) ?? getGlobalError(err); - card.setError(apiError); - } - }; - const handleRemoveDomain = async (domain: OrganizationDomainResource) => { if (enterpriseConnection) { const domains = enterpriseConnection.domains.filter(name => name !== domain.name); @@ -122,9 +111,6 @@ export const OrganizationDomainsStep = (): JSX.Element => { }; const hasAllDomainsVerified = areAllOrganizationDomainsVerified(organizationDomains); - const ownershipDomains = organizationDomains?.filter(domain => domain.ownershipVerification) ?? []; - const affiliationVerifiedDomains = - organizationDomains?.filter(domain => !domain.ownershipVerification && hasVerifiedAffiliation(domain)) ?? []; // A connection needs at least one verified domain to point at, so the last // remaining verified domain cannot be removed while a connection exists @@ -159,13 +145,6 @@ export const OrganizationDomainsStep = (): JSX.Element => { {!organizationDomains?.length && } - {!!affiliationVerifiedDomains.length && ( - - )} - {card.error && ( { )} - {!!ownershipDomains.length && ( + {!!organizationDomains?.length && ( ({ @@ -189,7 +168,7 @@ export const OrganizationDomainsStep = (): JSX.Element => { ...common.unstyledScrollbar(t), })} > - {ownershipDomains.map(domain => { + {organizationDomains.map(domain => { const isVerified = domain.ownershipVerification?.status === 'verified'; const isLastVerifiedDomain = isVerified && verifiedDomainCount === 1; const isRemoveDisabled = lockLastVerifiedDomain && isLastVerifiedDomain; @@ -393,64 +372,6 @@ const DomainSuggestion = ({ onSubmit }: { onSubmit: (domain: string) => Promise< ); }; -const AffiliationDomainSuggestion = ({ - domains, - onSubmit, -}: { - domains: OrganizationDomainResource[]; - onSubmit: (domains: OrganizationDomainResource[]) => Promise; -}): JSX.Element => { - const [isSubmitting, setIsSubmitting] = useState(false); - const domainNames = domains.map(domain => domain.name).join(', '); - - const handleVerifyOwnership = () => { - setIsSubmitting(true); - void onSubmit(domains).finally(() => setIsSubmitting(false)); - }; - - return ( - ({ - gap: t.space.$2, - paddingInline: t.space.$3, - paddingBlock: t.space.$1x5, - borderWidth: t.borderWidths.$normal, - borderStyle: t.borderStyles.$solid, - borderColor: t.colors.$borderAlpha150, - borderRadius: t.radii.$lg, - background: t.colors.$neutralAlpha50, - })} - > - ({ fontSize: t.fontSizes.$sm })} - /> - - + + ); +}; + const ExpiredNotice = ({ expiresAt, onPrepareOwnershipVerification, From e8039a0a4c8e010ed2404d57ef46e4b282092359 Mon Sep 17 00:00:00 2001 From: Nicolas Lopes Date: Thu, 6 Aug 2026 21:19:33 -0300 Subject: [PATCH 07/10] fix(ui): compact ownership proof action --- .../ConfigureSSO/steps/OrganizationDomainsStep.tsx | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx index 32be187d1de..8f6ca2a228e 100644 --- a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx +++ b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx @@ -552,9 +552,9 @@ const OwnershipUpgradeNotice = ({ }; return ( - ({ - alignItems: 'center', paddingInline: t.space.$4, paddingBottom: t.space.$4, paddingTop: t.space.$2, @@ -563,17 +563,16 @@ const OwnershipUpgradeNotice = ({ - + ); }; From 702c83d4624a9f8a41a9c9e1a3d42638b0ae0c77 Mon Sep 17 00:00:00 2001 From: Nicolas Lopes Date: Thu, 6 Aug 2026 21:21:45 -0300 Subject: [PATCH 08/10] fix(ui): left align ownership proof action --- .../components/ConfigureSSO/steps/OrganizationDomainsStep.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx index 8f6ca2a228e..edb4d95ee65 100644 --- a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx +++ b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx @@ -553,7 +553,7 @@ const OwnershipUpgradeNotice = ({ return ( ({ paddingInline: t.space.$4, paddingBottom: t.space.$4, From 93cf74a7f0a843d54e78d34228518784e149899b Mon Sep 17 00:00:00 2001 From: Nicolas Lopes Date: Fri, 7 Aug 2026 09:47:29 -0300 Subject: [PATCH 09/10] fix(shared): declare missing configureSSO localization keys Adds the affiliation/ownership domain card and remove-dialog keys to __internal_LocalizationResource and regenerates the locale files. --- .changeset/bright-geese-upgrade.md | 1 + packages/localizations/src/ar-SA.ts | 6 ++++++ packages/localizations/src/be-BY.ts | 6 ++++++ packages/localizations/src/bg-BG.ts | 6 ++++++ packages/localizations/src/bn-IN.ts | 6 ++++++ packages/localizations/src/ca-ES.ts | 6 ++++++ packages/localizations/src/cs-CZ.ts | 6 ++++++ packages/localizations/src/da-DK.ts | 6 ++++++ packages/localizations/src/de-DE.ts | 6 ++++++ packages/localizations/src/el-GR.ts | 6 ++++++ packages/localizations/src/en-GB.ts | 6 ++++++ packages/localizations/src/en-US.ts | 6 +++--- packages/localizations/src/es-CR.ts | 6 ++++++ packages/localizations/src/es-ES.ts | 6 ++++++ packages/localizations/src/es-MX.ts | 6 ++++++ packages/localizations/src/es-UY.ts | 6 ++++++ packages/localizations/src/fa-IR.ts | 6 ++++++ packages/localizations/src/fi-FI.ts | 6 ++++++ packages/localizations/src/fr-FR.ts | 6 ++++++ packages/localizations/src/he-IL.ts | 6 ++++++ packages/localizations/src/hi-IN.ts | 6 ++++++ packages/localizations/src/hr-HR.ts | 6 ++++++ packages/localizations/src/hu-HU.ts | 6 ++++++ packages/localizations/src/id-ID.ts | 6 ++++++ packages/localizations/src/is-IS.ts | 6 ++++++ packages/localizations/src/it-IT.ts | 6 ++++++ packages/localizations/src/ja-JP.ts | 6 ++++++ packages/localizations/src/kk-KZ.ts | 6 ++++++ packages/localizations/src/ko-KR.ts | 6 ++++++ packages/localizations/src/mn-MN.ts | 6 ++++++ packages/localizations/src/ms-MY.ts | 6 ++++++ packages/localizations/src/nb-NO.ts | 6 ++++++ packages/localizations/src/nl-BE.ts | 6 ++++++ packages/localizations/src/nl-NL.ts | 6 ++++++ packages/localizations/src/pl-PL.ts | 6 ++++++ packages/localizations/src/pt-BR.ts | 6 ++++++ packages/localizations/src/pt-PT.ts | 6 ++++++ packages/localizations/src/ro-RO.ts | 6 ++++++ packages/localizations/src/ru-RU.ts | 6 ++++++ packages/localizations/src/sk-SK.ts | 6 ++++++ packages/localizations/src/sr-RS.ts | 6 ++++++ packages/localizations/src/sv-SE.ts | 6 ++++++ packages/localizations/src/ta-IN.ts | 6 ++++++ packages/localizations/src/te-IN.ts | 6 ++++++ packages/localizations/src/th-TH.ts | 6 ++++++ packages/localizations/src/tr-TR.ts | 6 ++++++ packages/localizations/src/uk-UA.ts | 6 ++++++ packages/localizations/src/vi-VN.ts | 6 ++++++ packages/localizations/src/zh-CN.ts | 6 ++++++ packages/localizations/src/zh-TW.ts | 6 ++++++ packages/shared/src/types/localization.ts | 6 ++++++ 51 files changed, 298 insertions(+), 3 deletions(-) diff --git a/.changeset/bright-geese-upgrade.md b/.changeset/bright-geese-upgrade.md index feb90ea5e78..f8ee0c25b8d 100644 --- a/.changeset/bright-geese-upgrade.md +++ b/.changeset/bright-geese-upgrade.md @@ -1,5 +1,6 @@ --- '@clerk/localizations': patch +'@clerk/shared': patch '@clerk/ui': patch --- diff --git a/packages/localizations/src/ar-SA.ts b/packages/localizations/src/ar-SA.ts index 1ba1b904de0..d9fe3751033 100644 --- a/packages/localizations/src/ar-SA.ts +++ b/packages/localizations/src/ar-SA.ts @@ -637,11 +637,14 @@ export const arSA: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'لم يتم التحقق', badge__verified: 'تم التحقق', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -663,9 +666,12 @@ export const arSA: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'أضِف نطاقات مؤسستك المستخدمة لتسجيل الدخول وتحقّق من ملكيتها.', title: 'إضافة نطاقات SSO', diff --git a/packages/localizations/src/be-BY.ts b/packages/localizations/src/be-BY.ts index 507be784eb5..59647270796 100644 --- a/packages/localizations/src/be-BY.ts +++ b/packages/localizations/src/be-BY.ts @@ -637,11 +637,14 @@ export const beBY: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Не пацверджана', badge__verified: 'Пацверджана', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const beBY: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Дадайце і пацвердзіце права ўласнасці на дамены, якія ваша арганізацыя выкарыстоўвае для ўваходу.', title: 'Дадаць дамены SSO', diff --git a/packages/localizations/src/bg-BG.ts b/packages/localizations/src/bg-BG.ts index 72af2e579f8..b88fc073c43 100644 --- a/packages/localizations/src/bg-BG.ts +++ b/packages/localizations/src/bg-BG.ts @@ -638,11 +638,14 @@ export const bgBG: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Непотвърден', badge__verified: 'Потвърден', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -665,9 +668,12 @@ export const bgBG: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Добавете и потвърдете собствеността върху домейните, които вашата организация използва за вход.', title: 'Добавяне на SSO домейни', diff --git a/packages/localizations/src/bn-IN.ts b/packages/localizations/src/bn-IN.ts index 50d7f11f77c..ef150727d56 100644 --- a/packages/localizations/src/bn-IN.ts +++ b/packages/localizations/src/bn-IN.ts @@ -643,11 +643,14 @@ export const bnIN: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'যাচাই করা হয়নি', badge__verified: 'যাচাই করা হয়েছে', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -670,9 +673,12 @@ export const bnIN: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'আপনার প্রতিষ্ঠান সাইন ইন করতে যে ডোমেইনগুলি ব্যবহার করে তার মালিকানা যোগ করুন এবং যাচাই করুন।', title: 'SSO ডোমেইন যোগ করুন', diff --git a/packages/localizations/src/ca-ES.ts b/packages/localizations/src/ca-ES.ts index 74fe181dda4..2385875f8e2 100644 --- a/packages/localizations/src/ca-ES.ts +++ b/packages/localizations/src/ca-ES.ts @@ -644,11 +644,14 @@ export const caES: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Sense verificar', badge__verified: 'Verificat', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -671,9 +674,12 @@ export const caES: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Afegeix i verifica la propietat dels dominis que la teva organització utilitza per iniciar sessió.', title: 'Afegeix dominis SSO', diff --git a/packages/localizations/src/cs-CZ.ts b/packages/localizations/src/cs-CZ.ts index 2b0ada91bd6..8c768bd59d8 100644 --- a/packages/localizations/src/cs-CZ.ts +++ b/packages/localizations/src/cs-CZ.ts @@ -641,11 +641,14 @@ export const csCZ: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Neověřeno', badge__verified: 'Ověřeno', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -668,9 +671,12 @@ export const csCZ: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Přidejte a ověřte vlastnictví domén, které vaše organizace používá k přihlášení.', title: 'Přidat domény SSO', diff --git a/packages/localizations/src/da-DK.ts b/packages/localizations/src/da-DK.ts index cd1c1d6056b..29dcc1eafbd 100644 --- a/packages/localizations/src/da-DK.ts +++ b/packages/localizations/src/da-DK.ts @@ -637,11 +637,14 @@ export const daDK: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Ikke bekræftet', badge__verified: 'Bekræftet', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -663,9 +666,12 @@ export const daDK: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Tilføj og bekræft ejerskabet af de domæner, din organisation bruger til at logge ind.', title: 'Tilføj SSO-domæner', diff --git a/packages/localizations/src/de-DE.ts b/packages/localizations/src/de-DE.ts index f0c1b41dd1c..25a64d655d9 100644 --- a/packages/localizations/src/de-DE.ts +++ b/packages/localizations/src/de-DE.ts @@ -643,11 +643,14 @@ export const deDE: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Nicht verifiziert', badge__verified: 'Verifiziert', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -670,9 +673,12 @@ export const deDE: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Fügen Sie die Domains hinzu, die Ihre Organisation zur Anmeldung verwendet, und verifizieren Sie deren Eigentümerschaft.', diff --git a/packages/localizations/src/el-GR.ts b/packages/localizations/src/el-GR.ts index f97b52aae28..15497faa1ef 100644 --- a/packages/localizations/src/el-GR.ts +++ b/packages/localizations/src/el-GR.ts @@ -637,11 +637,14 @@ export const elGR: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Μη επαληθευμένο', badge__verified: 'Επαληθευμένο', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const elGR: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Προσθέστε και επαληθεύστε την κυριότητα των τομέων που χρησιμοποιεί ο οργανισμός σας για σύνδεση.', title: 'Προσθήκη τομέων SSO', diff --git a/packages/localizations/src/en-GB.ts b/packages/localizations/src/en-GB.ts index c6c0a1c6818..78f09ffa771 100644 --- a/packages/localizations/src/en-GB.ts +++ b/packages/localizations/src/en-GB.ts @@ -637,11 +637,14 @@ export const enGB: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Unverified', badge__verified: 'Verified', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -663,9 +666,12 @@ export const enGB: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Add and verify ownership of the domains your organisation uses to sign in.', title: 'Add SSO domains', diff --git a/packages/localizations/src/en-US.ts b/packages/localizations/src/en-US.ts index 6142c911ad9..79004229bbb 100644 --- a/packages/localizations/src/en-US.ts +++ b/packages/localizations/src/en-US.ts @@ -657,10 +657,10 @@ export const enUS: LocalizationResource = { expiredAtLabel: "Domain verification expired on {{ date | shortDate('en-US') }}. Verify again to generate a new DNS record.", expiredLabel: 'Domain verification expired. Verify again to generate a new DNS record.', - removeButtonTooltip__lastVerifiedDomain: 'At least one verified domain is required to set up SSO.', - removeButtonTooltip__lastVerifiedDomainActive: 'At least one verified domain is required to keep SSO enabled.', ownershipLabel: 'Ownership', proveOwnershipButton: 'Prove ownership', + removeButtonTooltip__lastVerifiedDomain: 'At least one verified domain is required to set up SSO.', + removeButtonTooltip__lastVerifiedDomainActive: 'At least one verified domain is required to keep SSO enabled.', txtRecord: { hostLabel: 'Host / Name', instructions: "Add this TXT record to your DNS provider. We'll verify automatically once the record is live.", @@ -679,8 +679,8 @@ export const enUS: LocalizationResource = { formFieldLabel__domain: 'Domain', removeDomainDialog: { cancelButton: 'Cancel', - removeFromSSOButton: 'Remove from SSO', removeButton: 'Remove domain', + removeFromSSOButton: 'Remove from SSO', subtitle__active: "You're about to remove {{domain}} from this enterprise connection. Users won't be able to sign-in with {{domain}} anymore.", subtitle__inactive: "You're about to remove {{domain}} from this enterprise connection.", diff --git a/packages/localizations/src/es-CR.ts b/packages/localizations/src/es-CR.ts index e91b5452bbf..65b8232aac0 100644 --- a/packages/localizations/src/es-CR.ts +++ b/packages/localizations/src/es-CR.ts @@ -637,11 +637,14 @@ export const esCR: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Sin verificar', badge__verified: 'Verificado', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const esCR: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Agrega y verifica la propiedad de los dominios que tu organización usa para iniciar sesión.', title: 'Agregar dominios SSO', diff --git a/packages/localizations/src/es-ES.ts b/packages/localizations/src/es-ES.ts index 5a7885986b1..7697abcc7b1 100644 --- a/packages/localizations/src/es-ES.ts +++ b/packages/localizations/src/es-ES.ts @@ -643,11 +643,14 @@ export const esES: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Sin verificar', badge__verified: 'Verificado', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -670,9 +673,12 @@ export const esES: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Añade y verifica la propiedad de los dominios que tu organización usa para iniciar sesión.', title: 'Añadir dominios SSO', diff --git a/packages/localizations/src/es-MX.ts b/packages/localizations/src/es-MX.ts index 9607e87a56a..7a98e984d01 100644 --- a/packages/localizations/src/es-MX.ts +++ b/packages/localizations/src/es-MX.ts @@ -638,11 +638,14 @@ export const esMX: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Sin verificar', badge__verified: 'Verificado', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -665,9 +668,12 @@ export const esMX: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Agrega y verifica la propiedad de los dominios que tu organización usa para iniciar sesión.', title: 'Agregar dominios SSO', diff --git a/packages/localizations/src/es-UY.ts b/packages/localizations/src/es-UY.ts index 51084f69606..775a940472d 100644 --- a/packages/localizations/src/es-UY.ts +++ b/packages/localizations/src/es-UY.ts @@ -637,11 +637,14 @@ export const esUY: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Sin verificar', badge__verified: 'Verificado', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const esUY: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Agregá y verificá la propiedad de los dominios que tu organización usa para iniciar sesión.', title: 'Agregar dominios SSO', diff --git a/packages/localizations/src/fa-IR.ts b/packages/localizations/src/fa-IR.ts index 0e472f1745f..ca821c95b8d 100644 --- a/packages/localizations/src/fa-IR.ts +++ b/packages/localizations/src/fa-IR.ts @@ -642,11 +642,14 @@ export const faIR: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'تأییدنشده', badge__verified: 'تأییدشده', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -669,9 +672,12 @@ export const faIR: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'مالکیت دامنه‌هایی را که سازمان شما برای ورود استفاده می‌کند، اضافه و تأیید کنید.', title: 'افزودن دامنه‌های SSO', diff --git a/packages/localizations/src/fi-FI.ts b/packages/localizations/src/fi-FI.ts index 7d68f3789f3..f8bef50b592 100644 --- a/packages/localizations/src/fi-FI.ts +++ b/packages/localizations/src/fi-FI.ts @@ -643,11 +643,14 @@ export const fiFI: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Vahvistamaton', badge__verified: 'Vahvistettu', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -670,9 +673,12 @@ export const fiFI: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Lisää ja vahvista niiden verkkotunnusten omistajuus, joita organisaatiosi käyttää kirjautumiseen.', title: 'Lisää SSO-verkkotunnuksia', diff --git a/packages/localizations/src/fr-FR.ts b/packages/localizations/src/fr-FR.ts index d1aeb515082..d02a8329088 100644 --- a/packages/localizations/src/fr-FR.ts +++ b/packages/localizations/src/fr-FR.ts @@ -645,11 +645,14 @@ export const frFR: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Non vérifié', badge__verified: 'Vérifié', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -672,9 +675,12 @@ export const frFR: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Ajoutez et vérifiez la propriété des domaines que votre organisation utilise pour se connecter.', title: 'Ajouter des domaines SSO', diff --git a/packages/localizations/src/he-IL.ts b/packages/localizations/src/he-IL.ts index 030d4df1157..3f509f4e2ea 100644 --- a/packages/localizations/src/he-IL.ts +++ b/packages/localizations/src/he-IL.ts @@ -637,11 +637,14 @@ export const heIL: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'לא מאומת', badge__verified: 'מאומת', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -663,9 +666,12 @@ export const heIL: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'הוסף ואמת בעלות על הדומיינים שהארגון שלך משתמש בהם כדי להתחבר.', title: 'הוספת דומיינים של SSO', diff --git a/packages/localizations/src/hi-IN.ts b/packages/localizations/src/hi-IN.ts index cb9ddad1db6..97c9b373bd8 100644 --- a/packages/localizations/src/hi-IN.ts +++ b/packages/localizations/src/hi-IN.ts @@ -643,11 +643,14 @@ export const hiIN: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'असत्यापित', badge__verified: 'सत्यापित', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -670,9 +673,12 @@ export const hiIN: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'अपने संगठन द्वारा साइन इन के लिए उपयोग किए जाने वाले डोमेन का स्वामित्व जोड़ें और सत्यापित करें।', title: 'SSO डोमेन जोड़ें', diff --git a/packages/localizations/src/hr-HR.ts b/packages/localizations/src/hr-HR.ts index 46061f89292..24af4ad914d 100644 --- a/packages/localizations/src/hr-HR.ts +++ b/packages/localizations/src/hr-HR.ts @@ -644,11 +644,14 @@ export const hrHR: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Nepotvrđeno', badge__verified: 'Potvrđeno', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -671,9 +674,12 @@ export const hrHR: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Dodajte i potvrdite vlasništvo nad domenama koje vaša organizacija koristi za prijavu.', title: 'Dodaj SSO domene', diff --git a/packages/localizations/src/hu-HU.ts b/packages/localizations/src/hu-HU.ts index 075c0cc71f9..e48729eb485 100644 --- a/packages/localizations/src/hu-HU.ts +++ b/packages/localizations/src/hu-HU.ts @@ -644,11 +644,14 @@ export const huHU: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Nincs igazolva', badge__verified: 'Igazolva', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -671,9 +674,12 @@ export const huHU: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Adja hozzá és igazolja azon tartományok tulajdonjogát, amelyeket szervezete a bejelentkezéshez használ.', diff --git a/packages/localizations/src/id-ID.ts b/packages/localizations/src/id-ID.ts index 740bdc0dbd1..c0a0b222c25 100644 --- a/packages/localizations/src/id-ID.ts +++ b/packages/localizations/src/id-ID.ts @@ -637,11 +637,14 @@ export const idID: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Belum terverifikasi', badge__verified: 'Terverifikasi', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const idID: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Tambahkan dan verifikasi kepemilikan domain yang digunakan organisasi Anda untuk masuk.', title: 'Tambahkan domain SSO', diff --git a/packages/localizations/src/is-IS.ts b/packages/localizations/src/is-IS.ts index 3f9fd7f8f20..d4da89d2a44 100644 --- a/packages/localizations/src/is-IS.ts +++ b/packages/localizations/src/is-IS.ts @@ -643,11 +643,14 @@ export const isIS: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Óstaðfest', badge__verified: 'Staðfest', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -670,9 +673,12 @@ export const isIS: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Bættu við og staðfestu eignarhald á lénunum sem fyrirtækið þitt notar til að skrá sig inn.', title: 'Bæta við SSO-lénum', diff --git a/packages/localizations/src/it-IT.ts b/packages/localizations/src/it-IT.ts index 725555948eb..6d5869b7249 100644 --- a/packages/localizations/src/it-IT.ts +++ b/packages/localizations/src/it-IT.ts @@ -643,11 +643,14 @@ export const itIT: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Non verificato', badge__verified: 'Verificato', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -670,9 +673,12 @@ export const itIT: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Aggiungi e verifica la proprietà dei domini che la tua organizzazione utilizza per accedere.', title: 'Aggiungi domini SSO', diff --git a/packages/localizations/src/ja-JP.ts b/packages/localizations/src/ja-JP.ts index 7650af51fd1..03997887850 100644 --- a/packages/localizations/src/ja-JP.ts +++ b/packages/localizations/src/ja-JP.ts @@ -644,11 +644,14 @@ export const jaJP: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: '未確認', badge__verified: '確認済み', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -671,9 +674,12 @@ export const jaJP: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: '組織がサインインに使用するドメインを追加し、所有権を確認します。', title: 'SSO ドメインを追加', diff --git a/packages/localizations/src/kk-KZ.ts b/packages/localizations/src/kk-KZ.ts index 61c51ac5a68..4f3c7237a70 100644 --- a/packages/localizations/src/kk-KZ.ts +++ b/packages/localizations/src/kk-KZ.ts @@ -637,11 +637,14 @@ export const kkKZ: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Расталмаған', badge__verified: 'Расталған', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const kkKZ: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Ұйымыңыз кіру үшін пайдаланатын домендердің меншігін қосып, растаңыз.', title: 'SSO домендерін қосу', diff --git a/packages/localizations/src/ko-KR.ts b/packages/localizations/src/ko-KR.ts index e58be892784..865d5ebfcca 100644 --- a/packages/localizations/src/ko-KR.ts +++ b/packages/localizations/src/ko-KR.ts @@ -641,11 +641,14 @@ export const koKR: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: '미확인', badge__verified: '확인됨', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -667,9 +670,12 @@ export const koKR: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: '조직에서 로그인에 사용하는 도메인의 소유권을 추가하고 확인하세요.', title: 'SSO 도메인 추가', diff --git a/packages/localizations/src/mn-MN.ts b/packages/localizations/src/mn-MN.ts index f7cb628da22..86a80dd01bf 100644 --- a/packages/localizations/src/mn-MN.ts +++ b/packages/localizations/src/mn-MN.ts @@ -637,11 +637,14 @@ export const mnMN: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Баталгаажаагүй', badge__verified: 'Баталгаажсан', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const mnMN: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Танай байгууллагын нэвтрэхэд ашигладаг домэйнуудын эзэмшлийг нэмж баталгаажуулна уу.', title: 'SSO домэйн нэмэх', diff --git a/packages/localizations/src/ms-MY.ts b/packages/localizations/src/ms-MY.ts index 666b3e8ef9b..e40629beabc 100644 --- a/packages/localizations/src/ms-MY.ts +++ b/packages/localizations/src/ms-MY.ts @@ -645,11 +645,14 @@ export const msMY: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Belum disahkan', badge__verified: 'Disahkan', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -672,9 +675,12 @@ export const msMY: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Tambah dan sahkan pemilikan domain yang digunakan organisasi anda untuk log masuk.', title: 'Tambah domain SSO', diff --git a/packages/localizations/src/nb-NO.ts b/packages/localizations/src/nb-NO.ts index b8aa65cde7f..0e5a38c6b2b 100644 --- a/packages/localizations/src/nb-NO.ts +++ b/packages/localizations/src/nb-NO.ts @@ -644,11 +644,14 @@ export const nbNO: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Ikke verifisert', badge__verified: 'Verifisert', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -671,9 +674,12 @@ export const nbNO: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Legg til og bekreft eierskapet til domenene organisasjonen din bruker for å logge på.', title: 'Legg til SSO-domener', diff --git a/packages/localizations/src/nl-BE.ts b/packages/localizations/src/nl-BE.ts index b68a542214a..b33e67453df 100644 --- a/packages/localizations/src/nl-BE.ts +++ b/packages/localizations/src/nl-BE.ts @@ -637,11 +637,14 @@ export const nlBE: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Niet geverifieerd', badge__verified: 'Geverifieerd', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const nlBE: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Voeg de domeinen toe die je organisatie gebruikt om aan te melden en verifieer het eigendom ervan.', title: 'SSO-domeinen toevoegen', diff --git a/packages/localizations/src/nl-NL.ts b/packages/localizations/src/nl-NL.ts index 4d4ee65b96d..a67ae2dd1e7 100644 --- a/packages/localizations/src/nl-NL.ts +++ b/packages/localizations/src/nl-NL.ts @@ -637,11 +637,14 @@ export const nlNL: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Niet geverifieerd', badge__verified: 'Geverifieerd', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const nlNL: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Voeg de domeinen toe die je organisatie gebruikt om in te loggen en verifieer het eigendom ervan.', title: 'SSO-domeinen toevoegen', diff --git a/packages/localizations/src/pl-PL.ts b/packages/localizations/src/pl-PL.ts index 882d79fb7bc..c1e05f506e8 100644 --- a/packages/localizations/src/pl-PL.ts +++ b/packages/localizations/src/pl-PL.ts @@ -637,11 +637,14 @@ export const plPL: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Niezweryfikowano', badge__verified: 'Zweryfikowano', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const plPL: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Dodaj i zweryfikuj własność domen, których Twoja organizacja używa do logowania.', title: 'Dodaj domeny SSO', diff --git a/packages/localizations/src/pt-BR.ts b/packages/localizations/src/pt-BR.ts index db52fe300a0..5d41bc5d69a 100644 --- a/packages/localizations/src/pt-BR.ts +++ b/packages/localizations/src/pt-BR.ts @@ -643,11 +643,14 @@ export const ptBR: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Não verificado', badge__verified: 'Verificado', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -670,9 +673,12 @@ export const ptBR: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Adicione e verifique a propriedade dos domínios que sua organização usa para fazer login.', title: 'Adicionar domínios de SSO', diff --git a/packages/localizations/src/pt-PT.ts b/packages/localizations/src/pt-PT.ts index cd17667f106..1a8dcd87f08 100644 --- a/packages/localizations/src/pt-PT.ts +++ b/packages/localizations/src/pt-PT.ts @@ -645,11 +645,14 @@ export const ptPT: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Não verificado', badge__verified: 'Verificado', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -672,9 +675,12 @@ export const ptPT: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Adicione e verifique a propriedade dos domínios que a sua organização utiliza para iniciar sessão.', title: 'Adicionar domínios de SSO', diff --git a/packages/localizations/src/ro-RO.ts b/packages/localizations/src/ro-RO.ts index 770217ef56f..47da7f6a4a0 100644 --- a/packages/localizations/src/ro-RO.ts +++ b/packages/localizations/src/ro-RO.ts @@ -643,11 +643,14 @@ export const roRO: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Neverificat', badge__verified: 'Verificat', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -670,9 +673,12 @@ export const roRO: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Adaugă și verifică dreptul de proprietate asupra domeniilor pe care organizația ta le folosește pentru autentificare.', diff --git a/packages/localizations/src/ru-RU.ts b/packages/localizations/src/ru-RU.ts index 80a74813621..0da7a28135d 100644 --- a/packages/localizations/src/ru-RU.ts +++ b/packages/localizations/src/ru-RU.ts @@ -637,11 +637,14 @@ export const ruRU: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Не подтверждён', badge__verified: 'Подтверждён', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const ruRU: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Добавьте и подтвердите право собственности на домены, которые ваша организация использует для входа.', title: 'Добавить домены SSO', diff --git a/packages/localizations/src/sk-SK.ts b/packages/localizations/src/sk-SK.ts index 00d5dbb4db0..f19159a3478 100644 --- a/packages/localizations/src/sk-SK.ts +++ b/packages/localizations/src/sk-SK.ts @@ -637,11 +637,14 @@ export const skSK: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Neoverené', badge__verified: 'Overené', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const skSK: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Pridajte a overte vlastníctvo domén, ktoré vaša organizácia používa na prihlásenie.', title: 'Pridať SSO domény', diff --git a/packages/localizations/src/sr-RS.ts b/packages/localizations/src/sr-RS.ts index d3bde5446ab..25189673feb 100644 --- a/packages/localizations/src/sr-RS.ts +++ b/packages/localizations/src/sr-RS.ts @@ -637,11 +637,14 @@ export const srRS: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Nepotvrđeno', badge__verified: 'Potvrđeno', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const srRS: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Dodajte i potvrdite vlasništvo nad domenima koje vaša organizacija koristi za prijavu.', title: 'Dodaj SSO domene', diff --git a/packages/localizations/src/sv-SE.ts b/packages/localizations/src/sv-SE.ts index 9347df7a469..1e4e514e475 100644 --- a/packages/localizations/src/sv-SE.ts +++ b/packages/localizations/src/sv-SE.ts @@ -637,11 +637,14 @@ export const svSE: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Overifierad', badge__verified: 'Verifierad', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const svSE: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Lägg till och verifiera ägarskapet för de domäner som din organisation använder för att logga in.', title: 'Lägg till SSO-domäner', diff --git a/packages/localizations/src/ta-IN.ts b/packages/localizations/src/ta-IN.ts index deb81aea490..7ab489ba7b0 100644 --- a/packages/localizations/src/ta-IN.ts +++ b/packages/localizations/src/ta-IN.ts @@ -645,11 +645,14 @@ export const taIN: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'சரிபார்க்கப்படவில்லை', badge__verified: 'சரிபார்க்கப்பட்டது', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -672,9 +675,12 @@ export const taIN: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'உங்கள் நிறுவனம் உள்நுழைய பயன்படுத்தும் டொமைன்களின் உரிமையைச் சேர்த்து சரிபார்க்கவும்.', title: 'SSO டொமைன்களைச் சேர்க்கவும்', diff --git a/packages/localizations/src/te-IN.ts b/packages/localizations/src/te-IN.ts index 3370d5b1d4c..1760c160364 100644 --- a/packages/localizations/src/te-IN.ts +++ b/packages/localizations/src/te-IN.ts @@ -644,11 +644,14 @@ export const teIN: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'ధృవీకరించబడలేదు', badge__verified: 'ధృవీకరించబడింది', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -671,9 +674,12 @@ export const teIN: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'మీ సంస్థ సైన్ ఇన్ చేయడానికి ఉపయోగించే డొమైన్‌ల యాజమాన్యాన్ని జోడించి ధృవీకరించండి.', title: 'SSO డొమైన్‌లను జోడించండి', diff --git a/packages/localizations/src/th-TH.ts b/packages/localizations/src/th-TH.ts index f3604cbf52f..ed148128e38 100644 --- a/packages/localizations/src/th-TH.ts +++ b/packages/localizations/src/th-TH.ts @@ -641,11 +641,14 @@ export const thTH: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'ยังไม่ได้ยืนยัน', badge__verified: 'ยืนยันแล้ว', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -667,9 +670,12 @@ export const thTH: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'เพิ่มและยืนยันความเป็นเจ้าของโดเมนที่องค์กรของคุณใช้ในการลงชื่อเข้าใช้', title: 'เพิ่มโดเมน SSO', diff --git a/packages/localizations/src/tr-TR.ts b/packages/localizations/src/tr-TR.ts index 2e097ea1d5c..d256edd043f 100644 --- a/packages/localizations/src/tr-TR.ts +++ b/packages/localizations/src/tr-TR.ts @@ -637,11 +637,14 @@ export const trTR: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Doğrulanmadı', badge__verified: 'Doğrulandı', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const trTR: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Kuruluşunuzun oturum açmak için kullandığı alan adlarının sahipliğini ekleyin ve doğrulayın.', title: 'SSO alan adları ekle', diff --git a/packages/localizations/src/uk-UA.ts b/packages/localizations/src/uk-UA.ts index 9401aeaa48c..a2dbaeececc 100644 --- a/packages/localizations/src/uk-UA.ts +++ b/packages/localizations/src/uk-UA.ts @@ -637,11 +637,14 @@ export const ukUA: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Не підтверджено', badge__verified: 'Підтверджено', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -664,9 +667,12 @@ export const ukUA: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Додайте та підтвердьте право власності на домени, які ваша організація використовує для входу.', title: 'Додати домени SSO', diff --git a/packages/localizations/src/vi-VN.ts b/packages/localizations/src/vi-VN.ts index 7a1f375f3ad..e889641d0c7 100644 --- a/packages/localizations/src/vi-VN.ts +++ b/packages/localizations/src/vi-VN.ts @@ -643,11 +643,14 @@ export const viVN: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: 'Chưa xác minh', badge__verified: 'Đã xác minh', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -670,9 +673,12 @@ export const viVN: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: 'Thêm và xác minh quyền sở hữu các tên miền mà tổ chức của bạn dùng để đăng nhập.', title: 'Thêm tên miền SSO', diff --git a/packages/localizations/src/zh-CN.ts b/packages/localizations/src/zh-CN.ts index f4d6a3bd447..49431e2ed1a 100644 --- a/packages/localizations/src/zh-CN.ts +++ b/packages/localizations/src/zh-CN.ts @@ -637,11 +637,14 @@ export const zhCN: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: '未验证', badge__verified: '已验证', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -663,9 +666,12 @@ export const zhCN: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: '添加并验证贵组织用于登录的域名的所有权。', title: '添加 SSO 域名', diff --git a/packages/localizations/src/zh-TW.ts b/packages/localizations/src/zh-TW.ts index 2ca1facbad5..31c99c22eec 100644 --- a/packages/localizations/src/zh-TW.ts +++ b/packages/localizations/src/zh-TW.ts @@ -640,11 +640,14 @@ export const zhTW: LocalizationResource = { }, organizationDomainsStep: { domainCard: { + affiliationLabel: undefined, badge__expired: undefined, badge__unverified: '未驗證', badge__verified: '已驗證', expiredAtLabel: undefined, expiredLabel: undefined, + ownershipLabel: undefined, + proveOwnershipButton: undefined, removeButtonTooltip__lastVerifiedDomain: undefined, removeButtonTooltip__lastVerifiedDomainActive: undefined, txtRecord: { @@ -666,9 +669,12 @@ export const zhTW: LocalizationResource = { removeDomainDialog: { cancelButton: undefined, removeButton: undefined, + removeFromSSOButton: undefined, subtitle__active: undefined, subtitle__inactive: undefined, + subtitle__preserveAffiliation: undefined, title: undefined, + title__preserveAffiliation: undefined, }, subtitle: '新增並驗證貴組織用於登入的網域的所有權。', title: '新增 SSO 網域', diff --git a/packages/shared/src/types/localization.ts b/packages/shared/src/types/localization.ts index b4ac66d3d2c..f1d20cb187e 100644 --- a/packages/shared/src/types/localization.ts +++ b/packages/shared/src/types/localization.ts @@ -1432,6 +1432,9 @@ export type __internal_LocalizationResource = { verifyAgainButton: LocalizationValue; removeButtonTooltip__lastVerifiedDomain: LocalizationValue; removeButtonTooltip__lastVerifiedDomainActive: LocalizationValue; + affiliationLabel: LocalizationValue; + ownershipLabel: LocalizationValue; + proveOwnershipButton: LocalizationValue; txtRecord: { instructions: LocalizationValue; typeLabel: LocalizationValue; @@ -1441,10 +1444,13 @@ export type __internal_LocalizationResource = { }; removeDomainDialog: { title: LocalizationValue; + title__preserveAffiliation: LocalizationValue; subtitle__active: LocalizationValue<'domain'>; subtitle__inactive: LocalizationValue<'domain'>; + subtitle__preserveAffiliation: LocalizationValue<'domain'>; cancelButton: LocalizationValue; removeButton: LocalizationValue; + removeFromSSOButton: LocalizationValue; }; }; testConfigurationStep: { From ff305cbda9290c840eb886e61c84a29450e541cf Mon Sep 17 00:00:00 2001 From: Nicolas Lopes Date: Fri, 7 Aug 2026 10:39:18 -0300 Subject: [PATCH 10/10] fix(ui): address review feedback on domain affiliation ownership Adds a combined subtitle for removing an affiliation-verified domain from an active connection, element descriptors for the new domain card status elements, and drops the comments added in this branch. --- packages/localizations/src/ar-SA.ts | 1 + packages/localizations/src/be-BY.ts | 1 + packages/localizations/src/bg-BG.ts | 1 + packages/localizations/src/bn-IN.ts | 1 + packages/localizations/src/ca-ES.ts | 1 + packages/localizations/src/cs-CZ.ts | 1 + packages/localizations/src/da-DK.ts | 1 + packages/localizations/src/de-DE.ts | 1 + packages/localizations/src/el-GR.ts | 1 + packages/localizations/src/en-GB.ts | 1 + packages/localizations/src/en-US.ts | 2 ++ packages/localizations/src/es-CR.ts | 1 + packages/localizations/src/es-ES.ts | 1 + packages/localizations/src/es-MX.ts | 1 + packages/localizations/src/es-UY.ts | 1 + packages/localizations/src/fa-IR.ts | 1 + packages/localizations/src/fi-FI.ts | 1 + packages/localizations/src/fr-FR.ts | 1 + packages/localizations/src/he-IL.ts | 1 + packages/localizations/src/hi-IN.ts | 1 + packages/localizations/src/hr-HR.ts | 1 + packages/localizations/src/hu-HU.ts | 1 + packages/localizations/src/id-ID.ts | 1 + packages/localizations/src/is-IS.ts | 1 + packages/localizations/src/it-IT.ts | 1 + packages/localizations/src/ja-JP.ts | 1 + packages/localizations/src/kk-KZ.ts | 1 + packages/localizations/src/ko-KR.ts | 1 + packages/localizations/src/mn-MN.ts | 1 + packages/localizations/src/ms-MY.ts | 1 + packages/localizations/src/nb-NO.ts | 1 + packages/localizations/src/nl-BE.ts | 1 + packages/localizations/src/nl-NL.ts | 1 + packages/localizations/src/pl-PL.ts | 1 + packages/localizations/src/pt-BR.ts | 1 + packages/localizations/src/pt-PT.ts | 1 + packages/localizations/src/ro-RO.ts | 1 + packages/localizations/src/ru-RU.ts | 1 + packages/localizations/src/sk-SK.ts | 1 + packages/localizations/src/sr-RS.ts | 1 + packages/localizations/src/sv-SE.ts | 1 + packages/localizations/src/ta-IN.ts | 1 + packages/localizations/src/te-IN.ts | 1 + packages/localizations/src/th-TH.ts | 1 + packages/localizations/src/tr-TR.ts | 1 + packages/localizations/src/uk-UA.ts | 1 + packages/localizations/src/vi-VN.ts | 1 + packages/localizations/src/zh-CN.ts | 1 + packages/localizations/src/zh-TW.ts | 1 + .../src/react/hooks/useOrganizationDomains.tsx | 4 ---- packages/shared/src/types/localization.ts | 1 + .../ConfigureSSO/RemoveDomainDialog.tsx | 18 ++++++++---------- .../__tests__/RemoveDomainDialog.test.tsx | 14 ++++++++++++++ ...seOrganizationEnterpriseConnection.test.tsx | 2 -- .../steps/OrganizationDomainsStep.tsx | 8 ++++++++ .../ui/src/customizables/elementDescriptors.ts | 4 ++++ packages/ui/src/internal/appearance.ts | 4 ++++ 57 files changed, 89 insertions(+), 16 deletions(-) diff --git a/packages/localizations/src/ar-SA.ts b/packages/localizations/src/ar-SA.ts index d9fe3751033..3ef88f4644d 100644 --- a/packages/localizations/src/ar-SA.ts +++ b/packages/localizations/src/ar-SA.ts @@ -668,6 +668,7 @@ export const arSA: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/be-BY.ts b/packages/localizations/src/be-BY.ts index 59647270796..ee9fb8df350 100644 --- a/packages/localizations/src/be-BY.ts +++ b/packages/localizations/src/be-BY.ts @@ -669,6 +669,7 @@ export const beBY: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/bg-BG.ts b/packages/localizations/src/bg-BG.ts index b88fc073c43..ddaf1385be6 100644 --- a/packages/localizations/src/bg-BG.ts +++ b/packages/localizations/src/bg-BG.ts @@ -670,6 +670,7 @@ export const bgBG: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/bn-IN.ts b/packages/localizations/src/bn-IN.ts index ef150727d56..e5bb5ca3606 100644 --- a/packages/localizations/src/bn-IN.ts +++ b/packages/localizations/src/bn-IN.ts @@ -675,6 +675,7 @@ export const bnIN: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/ca-ES.ts b/packages/localizations/src/ca-ES.ts index 2385875f8e2..3044ec8aafd 100644 --- a/packages/localizations/src/ca-ES.ts +++ b/packages/localizations/src/ca-ES.ts @@ -676,6 +676,7 @@ export const caES: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/cs-CZ.ts b/packages/localizations/src/cs-CZ.ts index 8c768bd59d8..1fddc22efb8 100644 --- a/packages/localizations/src/cs-CZ.ts +++ b/packages/localizations/src/cs-CZ.ts @@ -673,6 +673,7 @@ export const csCZ: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/da-DK.ts b/packages/localizations/src/da-DK.ts index 29dcc1eafbd..d17d0740eed 100644 --- a/packages/localizations/src/da-DK.ts +++ b/packages/localizations/src/da-DK.ts @@ -668,6 +668,7 @@ export const daDK: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/de-DE.ts b/packages/localizations/src/de-DE.ts index 25a64d655d9..1a84c0a7626 100644 --- a/packages/localizations/src/de-DE.ts +++ b/packages/localizations/src/de-DE.ts @@ -675,6 +675,7 @@ export const deDE: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/el-GR.ts b/packages/localizations/src/el-GR.ts index 15497faa1ef..75b7bc21a85 100644 --- a/packages/localizations/src/el-GR.ts +++ b/packages/localizations/src/el-GR.ts @@ -669,6 +669,7 @@ export const elGR: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/en-GB.ts b/packages/localizations/src/en-GB.ts index 78f09ffa771..4b847021780 100644 --- a/packages/localizations/src/en-GB.ts +++ b/packages/localizations/src/en-GB.ts @@ -668,6 +668,7 @@ export const enGB: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/en-US.ts b/packages/localizations/src/en-US.ts index 79004229bbb..fda8395f272 100644 --- a/packages/localizations/src/en-US.ts +++ b/packages/localizations/src/en-US.ts @@ -683,6 +683,8 @@ export const enUS: LocalizationResource = { removeFromSSOButton: 'Remove from SSO', subtitle__active: "You're about to remove {{domain}} from this enterprise connection. Users won't be able to sign-in with {{domain}} anymore.", + subtitle__activePreserveAffiliation: + "You're about to remove {{domain}} from this enterprise connection. Users won't be able to sign-in with {{domain}} anymore, but its existing affiliation verification will remain active.", subtitle__inactive: "You're about to remove {{domain}} from this enterprise connection.", subtitle__preserveAffiliation: "You're about to remove {{domain}} from this enterprise connection. Its existing affiliation verification will remain active.", diff --git a/packages/localizations/src/es-CR.ts b/packages/localizations/src/es-CR.ts index 65b8232aac0..b601b5f38d5 100644 --- a/packages/localizations/src/es-CR.ts +++ b/packages/localizations/src/es-CR.ts @@ -669,6 +669,7 @@ export const esCR: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/es-ES.ts b/packages/localizations/src/es-ES.ts index 7697abcc7b1..14bad2a9cdb 100644 --- a/packages/localizations/src/es-ES.ts +++ b/packages/localizations/src/es-ES.ts @@ -675,6 +675,7 @@ export const esES: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/es-MX.ts b/packages/localizations/src/es-MX.ts index 7a98e984d01..0d2100b476b 100644 --- a/packages/localizations/src/es-MX.ts +++ b/packages/localizations/src/es-MX.ts @@ -670,6 +670,7 @@ export const esMX: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/es-UY.ts b/packages/localizations/src/es-UY.ts index 775a940472d..95d7c6218dd 100644 --- a/packages/localizations/src/es-UY.ts +++ b/packages/localizations/src/es-UY.ts @@ -669,6 +669,7 @@ export const esUY: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/fa-IR.ts b/packages/localizations/src/fa-IR.ts index ca821c95b8d..594b4f59a72 100644 --- a/packages/localizations/src/fa-IR.ts +++ b/packages/localizations/src/fa-IR.ts @@ -674,6 +674,7 @@ export const faIR: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/fi-FI.ts b/packages/localizations/src/fi-FI.ts index f8bef50b592..250c866faf8 100644 --- a/packages/localizations/src/fi-FI.ts +++ b/packages/localizations/src/fi-FI.ts @@ -675,6 +675,7 @@ export const fiFI: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/fr-FR.ts b/packages/localizations/src/fr-FR.ts index d02a8329088..b43faffff13 100644 --- a/packages/localizations/src/fr-FR.ts +++ b/packages/localizations/src/fr-FR.ts @@ -677,6 +677,7 @@ export const frFR: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/he-IL.ts b/packages/localizations/src/he-IL.ts index 3f509f4e2ea..8ead9a5051b 100644 --- a/packages/localizations/src/he-IL.ts +++ b/packages/localizations/src/he-IL.ts @@ -668,6 +668,7 @@ export const heIL: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/hi-IN.ts b/packages/localizations/src/hi-IN.ts index 97c9b373bd8..52c64c0e826 100644 --- a/packages/localizations/src/hi-IN.ts +++ b/packages/localizations/src/hi-IN.ts @@ -675,6 +675,7 @@ export const hiIN: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/hr-HR.ts b/packages/localizations/src/hr-HR.ts index 24af4ad914d..46879bb13e1 100644 --- a/packages/localizations/src/hr-HR.ts +++ b/packages/localizations/src/hr-HR.ts @@ -676,6 +676,7 @@ export const hrHR: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/hu-HU.ts b/packages/localizations/src/hu-HU.ts index e48729eb485..9180de2cbb9 100644 --- a/packages/localizations/src/hu-HU.ts +++ b/packages/localizations/src/hu-HU.ts @@ -676,6 +676,7 @@ export const huHU: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/id-ID.ts b/packages/localizations/src/id-ID.ts index c0a0b222c25..f1e1202ca3c 100644 --- a/packages/localizations/src/id-ID.ts +++ b/packages/localizations/src/id-ID.ts @@ -669,6 +669,7 @@ export const idID: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/is-IS.ts b/packages/localizations/src/is-IS.ts index d4da89d2a44..bebf5a52692 100644 --- a/packages/localizations/src/is-IS.ts +++ b/packages/localizations/src/is-IS.ts @@ -675,6 +675,7 @@ export const isIS: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/it-IT.ts b/packages/localizations/src/it-IT.ts index 6d5869b7249..8f91840eaee 100644 --- a/packages/localizations/src/it-IT.ts +++ b/packages/localizations/src/it-IT.ts @@ -675,6 +675,7 @@ export const itIT: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/ja-JP.ts b/packages/localizations/src/ja-JP.ts index 03997887850..a19b4594950 100644 --- a/packages/localizations/src/ja-JP.ts +++ b/packages/localizations/src/ja-JP.ts @@ -676,6 +676,7 @@ export const jaJP: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/kk-KZ.ts b/packages/localizations/src/kk-KZ.ts index 4f3c7237a70..189e7a3fe40 100644 --- a/packages/localizations/src/kk-KZ.ts +++ b/packages/localizations/src/kk-KZ.ts @@ -669,6 +669,7 @@ export const kkKZ: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/ko-KR.ts b/packages/localizations/src/ko-KR.ts index 865d5ebfcca..e4197d13cb4 100644 --- a/packages/localizations/src/ko-KR.ts +++ b/packages/localizations/src/ko-KR.ts @@ -672,6 +672,7 @@ export const koKR: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/mn-MN.ts b/packages/localizations/src/mn-MN.ts index 86a80dd01bf..43dde211c82 100644 --- a/packages/localizations/src/mn-MN.ts +++ b/packages/localizations/src/mn-MN.ts @@ -669,6 +669,7 @@ export const mnMN: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/ms-MY.ts b/packages/localizations/src/ms-MY.ts index e40629beabc..864ce97d1a6 100644 --- a/packages/localizations/src/ms-MY.ts +++ b/packages/localizations/src/ms-MY.ts @@ -677,6 +677,7 @@ export const msMY: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/nb-NO.ts b/packages/localizations/src/nb-NO.ts index 0e5a38c6b2b..64c30864123 100644 --- a/packages/localizations/src/nb-NO.ts +++ b/packages/localizations/src/nb-NO.ts @@ -676,6 +676,7 @@ export const nbNO: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/nl-BE.ts b/packages/localizations/src/nl-BE.ts index b33e67453df..f000de42265 100644 --- a/packages/localizations/src/nl-BE.ts +++ b/packages/localizations/src/nl-BE.ts @@ -669,6 +669,7 @@ export const nlBE: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/nl-NL.ts b/packages/localizations/src/nl-NL.ts index a67ae2dd1e7..73754809249 100644 --- a/packages/localizations/src/nl-NL.ts +++ b/packages/localizations/src/nl-NL.ts @@ -669,6 +669,7 @@ export const nlNL: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/pl-PL.ts b/packages/localizations/src/pl-PL.ts index c1e05f506e8..c434e07bbad 100644 --- a/packages/localizations/src/pl-PL.ts +++ b/packages/localizations/src/pl-PL.ts @@ -669,6 +669,7 @@ export const plPL: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/pt-BR.ts b/packages/localizations/src/pt-BR.ts index 5d41bc5d69a..1a125b79f38 100644 --- a/packages/localizations/src/pt-BR.ts +++ b/packages/localizations/src/pt-BR.ts @@ -675,6 +675,7 @@ export const ptBR: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/pt-PT.ts b/packages/localizations/src/pt-PT.ts index 1a8dcd87f08..a4a9c4ef1a0 100644 --- a/packages/localizations/src/pt-PT.ts +++ b/packages/localizations/src/pt-PT.ts @@ -677,6 +677,7 @@ export const ptPT: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/ro-RO.ts b/packages/localizations/src/ro-RO.ts index 47da7f6a4a0..08d617dfad3 100644 --- a/packages/localizations/src/ro-RO.ts +++ b/packages/localizations/src/ro-RO.ts @@ -675,6 +675,7 @@ export const roRO: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/ru-RU.ts b/packages/localizations/src/ru-RU.ts index 0da7a28135d..b9be661f6aa 100644 --- a/packages/localizations/src/ru-RU.ts +++ b/packages/localizations/src/ru-RU.ts @@ -669,6 +669,7 @@ export const ruRU: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/sk-SK.ts b/packages/localizations/src/sk-SK.ts index f19159a3478..10134c0f459 100644 --- a/packages/localizations/src/sk-SK.ts +++ b/packages/localizations/src/sk-SK.ts @@ -669,6 +669,7 @@ export const skSK: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/sr-RS.ts b/packages/localizations/src/sr-RS.ts index 25189673feb..994eef9ad1c 100644 --- a/packages/localizations/src/sr-RS.ts +++ b/packages/localizations/src/sr-RS.ts @@ -669,6 +669,7 @@ export const srRS: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/sv-SE.ts b/packages/localizations/src/sv-SE.ts index 1e4e514e475..a29324d72c4 100644 --- a/packages/localizations/src/sv-SE.ts +++ b/packages/localizations/src/sv-SE.ts @@ -669,6 +669,7 @@ export const svSE: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/ta-IN.ts b/packages/localizations/src/ta-IN.ts index 7ab489ba7b0..bc5e2d5fc05 100644 --- a/packages/localizations/src/ta-IN.ts +++ b/packages/localizations/src/ta-IN.ts @@ -677,6 +677,7 @@ export const taIN: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/te-IN.ts b/packages/localizations/src/te-IN.ts index 1760c160364..9cdff759899 100644 --- a/packages/localizations/src/te-IN.ts +++ b/packages/localizations/src/te-IN.ts @@ -676,6 +676,7 @@ export const teIN: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/th-TH.ts b/packages/localizations/src/th-TH.ts index ed148128e38..ad7dc87a0ed 100644 --- a/packages/localizations/src/th-TH.ts +++ b/packages/localizations/src/th-TH.ts @@ -672,6 +672,7 @@ export const thTH: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/tr-TR.ts b/packages/localizations/src/tr-TR.ts index d256edd043f..dfcc9ebc390 100644 --- a/packages/localizations/src/tr-TR.ts +++ b/packages/localizations/src/tr-TR.ts @@ -669,6 +669,7 @@ export const trTR: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/uk-UA.ts b/packages/localizations/src/uk-UA.ts index a2dbaeececc..d8c04d7fff9 100644 --- a/packages/localizations/src/uk-UA.ts +++ b/packages/localizations/src/uk-UA.ts @@ -669,6 +669,7 @@ export const ukUA: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/vi-VN.ts b/packages/localizations/src/vi-VN.ts index e889641d0c7..dad452a73fe 100644 --- a/packages/localizations/src/vi-VN.ts +++ b/packages/localizations/src/vi-VN.ts @@ -675,6 +675,7 @@ export const viVN: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/zh-CN.ts b/packages/localizations/src/zh-CN.ts index 49431e2ed1a..d9edd32d42c 100644 --- a/packages/localizations/src/zh-CN.ts +++ b/packages/localizations/src/zh-CN.ts @@ -668,6 +668,7 @@ export const zhCN: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/localizations/src/zh-TW.ts b/packages/localizations/src/zh-TW.ts index 31c99c22eec..9fe15aa26b6 100644 --- a/packages/localizations/src/zh-TW.ts +++ b/packages/localizations/src/zh-TW.ts @@ -671,6 +671,7 @@ export const zhTW: LocalizationResource = { removeButton: undefined, removeFromSSOButton: undefined, subtitle__active: undefined, + subtitle__activePreserveAffiliation: undefined, subtitle__inactive: undefined, subtitle__preserveAffiliation: undefined, title: undefined, diff --git a/packages/shared/src/react/hooks/useOrganizationDomains.tsx b/packages/shared/src/react/hooks/useOrganizationDomains.tsx index a990ef44c23..7381636a7b1 100644 --- a/packages/shared/src/react/hooks/useOrganizationDomains.tsx +++ b/packages/shared/src/react/hooks/useOrganizationDomains.tsx @@ -24,10 +24,6 @@ export type UseOrganizationDomainsParams = { * Filter the returned domains by enrollment mode. */ enrollmentMode?: OrganizationEnrollmentMode; - /** - * Enrollment mode assigned to domains created through this hook. Defaults to - * `enrollmentMode`, so filtering and creation retain their existing behavior. - */ createEnrollmentMode?: OrganizationEnrollmentMode; /** * Invoked from the ownership-verification poll whenever an `attempt` resolves diff --git a/packages/shared/src/types/localization.ts b/packages/shared/src/types/localization.ts index f1d20cb187e..bdbe6817ab4 100644 --- a/packages/shared/src/types/localization.ts +++ b/packages/shared/src/types/localization.ts @@ -1446,6 +1446,7 @@ export type __internal_LocalizationResource = { title: LocalizationValue; title__preserveAffiliation: LocalizationValue; subtitle__active: LocalizationValue<'domain'>; + subtitle__activePreserveAffiliation: LocalizationValue<'domain'>; subtitle__inactive: LocalizationValue<'domain'>; subtitle__preserveAffiliation: LocalizationValue<'domain'>; cancelButton: LocalizationValue; diff --git a/packages/ui/src/components/ConfigureSSO/RemoveDomainDialog.tsx b/packages/ui/src/components/ConfigureSSO/RemoveDomainDialog.tsx index 2cd837fb1f9..151a39b5858 100644 --- a/packages/ui/src/components/ConfigureSSO/RemoveDomainDialog.tsx +++ b/packages/ui/src/components/ConfigureSSO/RemoveDomainDialog.tsx @@ -46,17 +46,15 @@ const RemoveDomainDialogContent = withCardStateProvider((props: RemoveDomainDial const { onClose, onRemove } = props; const card = useCardState(); - const subtitle = props.preserveAffiliationVerification - ? localizationKeys('configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__preserveAffiliation', { - domain: props.domain, - }) + const subtitleKey = props.preserveAffiliationVerification + ? props.isConnectionActive + ? 'configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__activePreserveAffiliation' + : 'configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__preserveAffiliation' : props.isConnectionActive - ? localizationKeys('configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__active', { - domain: props.domain, - }) - : localizationKeys('configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__inactive', { - domain: props.domain, - }); + ? 'configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__active' + : 'configureSSO.organizationDomainsStep.removeDomainDialog.subtitle__inactive'; + + const subtitle = localizationKeys(subtitleKey, { domain: props.domain }); const onSubmit = async () => { try { diff --git a/packages/ui/src/components/ConfigureSSO/__tests__/RemoveDomainDialog.test.tsx b/packages/ui/src/components/ConfigureSSO/__tests__/RemoveDomainDialog.test.tsx index cb9465a5c13..2fe0bdc9333 100644 --- a/packages/ui/src/components/ConfigureSSO/__tests__/RemoveDomainDialog.test.tsx +++ b/packages/ui/src/components/ConfigureSSO/__tests__/RemoveDomainDialog.test.tsx @@ -90,6 +90,20 @@ describe('RemoveDomainDialog', () => { expect(screen.getByRole('heading', { name: 'Remove from SSO' })).toBeInTheDocument(); expect(screen.getByRole('button', { name: 'Remove from SSO' })).toBeInTheDocument(); expect(screen.getByText(/existing affiliation verification will remain active/i)).toBeInTheDocument(); + expect(screen.queryByText(/Users won't be able to sign-in/i)).not.toBeInTheDocument(); + }); + + it('warns about sign-in impact while preserving affiliation when the connection is active', async () => { + resetMocks(); + const { wrapper } = await createFixtures(); + renderDialog(wrapper, { domain: 'acme.com', isConnectionActive: true, preserveAffiliationVerification: true }); + + expect(screen.getByRole('heading', { name: 'Remove from SSO' })).toBeInTheDocument(); + expect( + screen.getByText( + /Users won't be able to sign-in with acme\.com anymore, but its existing affiliation verification will remain active/i, + ), + ).toBeInTheDocument(); }); it('invokes onClose when Cancel is clicked', async () => { diff --git a/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx b/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx index b42d5e0562d..5552fe4b1d7 100644 --- a/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx +++ b/packages/ui/src/components/ConfigureSSO/hooks/__tests__/useOrganizationEnterpriseConnection.test.tsx @@ -203,8 +203,6 @@ describe('useOrganizationEnterpriseConnection — mutations', () => { await result.current.enterpriseConnectionMutations.createConnection('saml_okta'); expect(mutationSpies.create).toHaveBeenCalledTimes(1); - // `name` is derived by FAPI, so it is not sent from the client; only - // ownership-verified domains are valid SSO connection domains. expect(mutationSpies.create).toHaveBeenCalledWith({ provider: 'saml_okta', domains: ['acme.com'], diff --git a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx index edb4d95ee65..116b3466ff0 100644 --- a/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx +++ b/packages/ui/src/components/ConfigureSSO/steps/OrganizationDomainsStep.tsx @@ -449,21 +449,29 @@ const DomainCard = ({ {isAffiliationVerified && ( <> ({ fontSize: t.fontSizes.$xs })} /> ; configureSSOVerifyDomainCardBadge: WithOptions<'verified' | 'unverified' | 'expired'>; + configureSSOVerifyDomainCardAffiliationLabel: WithOptions<'verified' | 'unverified' | 'expired'>; + configureSSOVerifyDomainCardAffiliationBadge: WithOptions<'verified' | 'unverified' | 'expired'>; + configureSSOVerifyDomainCardOwnershipArrow: WithOptions<'verified' | 'unverified' | 'expired'>; + configureSSOVerifyDomainCardOwnershipLabel: WithOptions<'verified' | 'unverified' | 'expired'>; configureSSOVerifyDomainCardRemoveButton: WithOptions; configureSSOVerifyDomainCardTxtRecord: WithOptions; configureSSOVerifyDomainCardTxtRecordValue: WithOptions;