Skip to content

Commit c8f92c0

Browse files
authored
Merge branch 'feature/email-otp' into otp-manual-input-e2e-tests
Signed-off-by: Jinsu Ha <91205717+hajinsuha1@users.noreply.github.com>
2 parents c3c66bf + d9ed864 commit c8f92c0

File tree

13 files changed

+23
-23
lines changed

13 files changed

+23
-23
lines changed

e2e/tests/desktop/extra-features.spec.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ test('Verify passwordless login request', async ({page}) => {
3232
await page.locator('#email').scrollIntoViewIfNeeded()
3333
await page.fill('#email', config.PWA_E2E_USER_EMAIL)
3434

35-
await page.getByRole('button', {name: 'Continue Securely'}).click()
35+
await page.getByRole('button', {name: 'Continue'}).click()
3636

3737
await page.waitForResponse(
3838
'**/mobify/slas/private/shopper/auth/v1/organizations/*/oauth2/passwordless/login'

e2e/tests/mobile/extra-features.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@ test('Verify passwordless login request on mobile', async ({page}) => {
3333
await page.locator('#email').scrollIntoViewIfNeeded()
3434
await page.fill('#email', config.PWA_E2E_USER_EMAIL)
3535

36-
await page.getByRole('button', {name: 'Continue Securely'}).scrollIntoViewIfNeeded()
37-
await page.getByRole('button', {name: 'Continue Securely'}).click()
36+
await page.getByRole('button', {name: 'Continue'}).scrollIntoViewIfNeeded()
37+
await page.getByRole('button', {name: 'Continue'}).click()
3838

3939
await page.waitForResponse(
4040
'**/mobify/slas/private/shopper/auth/v1/organizations/*/oauth2/passwordless/login'

packages/template-retail-react-app/CHANGELOG.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
## v8.4.0-dev (Dec 17, 2025)
22
- [Feature] Add `fuzzyPathMatching` to reduce computational overhead of route generation at time of application load [#3530](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3530)
3+
- Update passwordless login and password reset to use email mode by default. The mode can now be configured across the login page, auth modal, and checkout page [#3492](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3492) [#3547](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3547)
4+
- Update "Continue Securely" button text to "Continue" for passwordless login [#3556](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3556)
35

46
## v8.3.0 (Dec 17, 2025)
57
- [Bugfix] Fix Forgot Password link not working from Account Profile password update form [#3493](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3493)
68
- Introduce Address Autocompletion feature in the checkout flow, powered by Google Maps Platform [#3071](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3071)
79

8-
- Update passwordless login and password reset to use email mode by default. The mode can now be configured across the login page, auth modal, and checkout page [#3492](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3492) [#3547](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3547)
9-
1010
## v8.2.0 (Nov 04, 2025)
1111
- Add support for Rule Based Promotions for Choice of Bonus Products. We are currently supporting only one product level rule based promotion per product [#3418](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3418)
1212
- Add support for Rule Based Promotions for Choice of Bonus Products. We are currently supporting only one product level rule based promotion per product [#3418](https://github.com/SalesforceCommerceCloud/pwa-kit/pull/3418)

packages/template-retail-react-app/app/components/login/index.test.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,14 @@ describe('LoginForm', () => {
2323
expect(screen.getByText(/Welcome Back/)).toBeInTheDocument()
2424
expect(screen.getByLabelText('Email')).toBeInTheDocument()
2525
expect(screen.queryByLabelText('Password')).not.toBeInTheDocument()
26-
expect(screen.getByRole('button', {name: 'Continue Securely'})).toBeInTheDocument()
26+
expect(screen.getByRole('button', {name: 'Continue'})).toBeInTheDocument()
2727
expect(screen.getByText(/Or Login With/)).toBeInTheDocument()
2828
expect(screen.getByRole('button', {name: 'Password'})).toBeInTheDocument()
2929
expect(screen.getByText(/Don't have an account/)).toBeInTheDocument()
3030
expect(screen.getByRole('button', {name: 'Create account'})).toBeInTheDocument()
3131
})
3232

33-
test('renders form errors when "Continue Securely" button is clicked', async () => {
33+
test('renders form errors when "Continue" button is clicked', async () => {
3434
const mockPasswordlessLoginClick = jest.fn()
3535
const {user} = renderWithProviders(
3636
<WrapperComponent
@@ -39,7 +39,7 @@ describe('LoginForm', () => {
3939
/>
4040
)
4141

42-
await user.click(screen.getByRole('button', {name: 'Continue Securely'}))
42+
await user.click(screen.getByRole('button', {name: 'Continue'}))
4343
expect(screen.getByText(/Please enter your email address./)).toBeInTheDocument()
4444
})
4545

packages/template-retail-react-app/app/components/passwordless-login/index.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ const PasswordlessLogin = ({
5454
isLoading={form.formState.isSubmitting}
5555
>
5656
<FormattedMessage
57-
defaultMessage="Continue Securely"
57+
defaultMessage="Continue"
5858
id="login_form.button.continue_securely"
5959
/>
6060
</Button>

packages/template-retail-react-app/app/components/passwordless-login/index.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ describe('PasswordlessLogin component', () => {
2525

2626
expect(screen.getByLabelText('Email')).toBeInTheDocument()
2727
expect(screen.queryByLabelText('Password')).not.toBeInTheDocument()
28-
expect(screen.getByRole('button', {name: 'Continue Securely'})).toBeInTheDocument()
28+
expect(screen.getByRole('button', {name: 'Continue'})).toBeInTheDocument()
2929
expect(screen.getByText(/Or Login With/)).toBeInTheDocument()
3030
expect(screen.getByRole('button', {name: 'Password'})).toBeInTheDocument()
3131
})

packages/template-retail-react-app/app/hooks/use-auth-modal.test.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ test('allows regular login via Enter key in password mode', async () => {
192192
await user.click(trigger)
193193

194194
await waitFor(() => {
195-
expect(screen.getByText(/continue securely/i)).toBeInTheDocument()
195+
expect(screen.getByText(/Continue/i)).toBeInTheDocument()
196196
})
197197

198198
// enter email and switch to password mode
@@ -223,7 +223,7 @@ describe('Passwordless enabled', () => {
223223
await user.click(trigger)
224224

225225
await waitFor(() => {
226-
expect(screen.getByText(/continue securely/i)).toBeInTheDocument()
226+
expect(screen.getByText(/Continue/i)).toBeInTheDocument()
227227
})
228228
})
229229

@@ -240,14 +240,14 @@ describe('Passwordless enabled', () => {
240240
await user.click(trigger)
241241

242242
await waitFor(() => {
243-
expect(screen.getByText(/continue securely/i)).toBeInTheDocument()
243+
expect(screen.getByText(/Continue/i)).toBeInTheDocument()
244244
})
245245

246246
// enter a valid email address
247247
await user.type(screen.getByLabelText('Email'), validEmail)
248248

249249
// initiate passwordless login
250-
const passwordlessLoginButton = screen.getByText(/continue securely/i)
250+
const passwordlessLoginButton = screen.getByText(/Continue/i)
251251
await user.click(passwordlessLoginButton)
252252
expect(
253253
mockAuthHelperFunctions[AuthHelpers.AuthorizePasswordless].mutateAsync
@@ -289,7 +289,7 @@ describe('Passwordless enabled', () => {
289289
await user.click(trigger)
290290

291291
await waitFor(() => {
292-
expect(screen.getByText(/continue securely/i)).toBeInTheDocument()
292+
expect(screen.getByText(/Continue/i)).toBeInTheDocument()
293293
})
294294

295295
// enter a valid email address
@@ -343,11 +343,11 @@ describe('Passwordless enabled', () => {
343343
await user.click(trigger)
344344

345345
await waitFor(() => {
346-
expect(screen.getByText(/continue securely/i)).toBeInTheDocument()
346+
expect(screen.getByText(/Continue/i)).toBeInTheDocument()
347347
})
348348

349349
await user.type(screen.getByLabelText('Email'), validEmail)
350-
await user.click(screen.getByText(/continue securely/i))
350+
await user.click(screen.getByText(/Continue/i))
351351

352352
expect(
353353
mockAuthHelperFunctions[AuthHelpers.AuthorizePasswordless].mutateAsync

packages/template-retail-react-app/app/pages/login/index.test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -362,7 +362,7 @@ describe('Passwordless login tests', () => {
362362
await user.type(screen.getByLabelText('Email'), testEmail)
363363

364364
// Click the submit button
365-
await user.click(screen.getByRole('button', {name: /Continue Securely/i}))
365+
await user.click(screen.getByRole('button', {name: /Continue/i}))
366366

367367
// Verify that authorizePasswordless is called with correct parameters
368368
await waitFor(() => {

packages/template-retail-react-app/app/static/translations/compiled/en-GB.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2624,7 +2624,7 @@
26242624
"login_form.button.continue_securely": [
26252625
{
26262626
"type": 0,
2627-
"value": "Continue Securely"
2627+
"value": "Continue"
26282628
}
26292629
],
26302630
"login_form.button.google": [

packages/template-retail-react-app/app/static/translations/compiled/en-US.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2624,7 +2624,7 @@
26242624
"login_form.button.continue_securely": [
26252625
{
26262626
"type": 0,
2627-
"value": "Continue Securely"
2627+
"value": "Continue"
26282628
}
26292629
],
26302630
"login_form.button.google": [

0 commit comments

Comments
 (0)