diff --git a/packages/experience/src/components/IdentifierRegisterForm/index.test.tsx b/packages/experience/src/components/IdentifierRegisterForm/index.test.tsx
index e7543f5b273..57ae0b43a35 100644
--- a/packages/experience/src/components/IdentifierRegisterForm/index.test.tsx
+++ b/packages/experience/src/components/IdentifierRegisterForm/index.test.tsx
@@ -394,11 +394,13 @@ describe('', () => {
mockSsoConnectors
);
const emailInput = container.querySelector('input[name="id"]');
+ const termsButton = getByText('description.agree_with_terms');
assert(emailInput, new Error('username input not found'));
act(() => {
fireEvent.change(emailInput, { target: { value: email } });
+ fireEvent.click(termsButton);
});
await waitFor(() => {
diff --git a/packages/experience/src/components/IdentifierRegisterForm/index.tsx b/packages/experience/src/components/IdentifierRegisterForm/index.tsx
index e0df93ff1bf..383a037e418 100644
--- a/packages/experience/src/components/IdentifierRegisterForm/index.tsx
+++ b/packages/experience/src/components/IdentifierRegisterForm/index.tsx
@@ -71,12 +71,16 @@ const IdentifierRegisterForm = ({ className, autoFocus, signUpMethods }: Props)
setIdentifierInputValue({ type, value });
- if (showSingleSignOnForm) {
- await navigateToSingleSignOn();
+ if (
+ agreeToTermsPolicy &&
+ agreeToTermsPolicy !== AgreeToTermsPolicy.Automatic &&
+ !(await termsValidation())
+ ) {
return;
}
- if (!(await termsValidation())) {
+ if (showSingleSignOnForm) {
+ await navigateToSingleSignOn();
return;
}
@@ -84,6 +88,7 @@ const IdentifierRegisterForm = ({ className, autoFocus, signUpMethods }: Props)
})(event);
},
[
+ agreeToTermsPolicy,
clearErrorMessage,
handleSubmit,
navigateToSingleSignOn,
diff --git a/packages/experience/src/pages/IdentifierRegister/index.tsx b/packages/experience/src/pages/IdentifierRegister/index.tsx
index 41c2be9d043..09477f1cbce 100644
--- a/packages/experience/src/pages/IdentifierRegister/index.tsx
+++ b/packages/experience/src/pages/IdentifierRegister/index.tsx
@@ -3,6 +3,7 @@ import { useTranslation } from 'react-i18next';
import { Navigate } from 'react-router-dom';
import FocusedAuthPageLayout from '@/Layout/FocusedAuthPageLayout';
+import SingleSignOnFormModeContextProvider from '@/Providers/SingleSignOnFormModeContextProvider';
import IdentifierRegisterForm from '@/components/IdentifierRegisterForm';
import { useSieMethods } from '@/hooks/use-sie';
import { identifierInputDescriptionMap } from '@/utils/form';
@@ -36,7 +37,9 @@ const IdentifierRegister = () => {
text: 'description.all_account_creation_options',
}}
>
-
+
+
+
);
};
diff --git a/packages/experience/src/pages/IdentifierSignIn/index.tsx b/packages/experience/src/pages/IdentifierSignIn/index.tsx
index d9e8bc352d8..f81a8ed918a 100644
--- a/packages/experience/src/pages/IdentifierSignIn/index.tsx
+++ b/packages/experience/src/pages/IdentifierSignIn/index.tsx
@@ -4,6 +4,7 @@ import { useTranslation } from 'react-i18next';
import { Navigate } from 'react-router-dom';
import FocusedAuthPageLayout from '@/Layout/FocusedAuthPageLayout';
+import SingleSignOnFormModeContextProvider from '@/Providers/SingleSignOnFormModeContextProvider';
import IdentifierSignInForm from '@/components/IdentifierSignInForm';
import PasswordSignInForm from '@/components/PasswordSignInForm';
import { identifierInputDescriptionMap } from '@/utils/form';
@@ -43,11 +44,13 @@ const IdentifierSignIn = () => {
text: 'description.all_sign_in_options',
}}
>
- {isPasswordOnly ? (
- identifier)} />
- ) : (
-
- )}
+
+ {isPasswordOnly ? (
+ identifier)} />
+ ) : (
+
+ )}
+
);
};