diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml
index 7fd07c6cb..e1d744266 100644
--- a/.github/workflows/unit-test.yml
+++ b/.github/workflows/unit-test.yml
@@ -8,7 +8,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- os: [ ubuntu-latest , windows-latest, macos-latest ]
+ os: [ ubuntu-latest , windows-latest ]
runs-on: ${{ matrix.os }}
steps:
diff --git a/public/apps/account/password-reset-panel.tsx b/public/apps/account/password-reset-panel.tsx
index 703d617e9..3a79bdf68 100644
--- a/public/apps/account/password-reset-panel.tsx
+++ b/public/apps/account/password-reset-panel.tsx
@@ -123,6 +123,7 @@ export function PasswordResetPanel(props: PasswordResetPanelProps) {
setIsCurrentPasswordInvalid(false);
}}
isInvalid={isCurrentPasswordInvalid}
+ type="dual"
/>
@@ -141,6 +142,7 @@ export function PasswordResetPanel(props: PasswordResetPanelProps) {
setIsNewPasswordInvalid(false);
setIsRepeatNewPasswordInvalid(repeatNewPassword !== newPassword);
}}
+ type="dual"
isInvalid={isNewPasswordInvalid}
/>
@@ -162,6 +164,7 @@ export function PasswordResetPanel(props: PasswordResetPanelProps) {
setRepeatNewPassword(value);
setIsRepeatNewPasswordInvalid(value !== newPassword);
}}
+ type="dual"
/>
diff --git a/public/apps/configuration/utils/password-edit-panel.tsx b/public/apps/configuration/utils/password-edit-panel.tsx
index 918d0e000..1fdd7322d 100644
--- a/public/apps/configuration/utils/password-edit-panel.tsx
+++ b/public/apps/configuration/utils/password-edit-panel.tsx
@@ -15,7 +15,7 @@
import React from 'react';
import { CoreStart } from 'opensearch-dashboards/public';
-import { EuiFieldText, EuiFlexGroup, EuiFlexItem, EuiFormRow, EuiIcon } from '@elastic/eui';
+import { EuiFieldPassword, EuiFlexGroup, EuiFlexItem, EuiFormRow } from '@elastic/eui';
import { FormRow } from './form-row';
import { PASSWORD_INSTRUCTION } from '../../apps-constants';
import { getDashboardsInfo } from '../../../utils/dashboards-info-utils';
@@ -65,10 +65,9 @@ export function PasswordEditPanel(props: {
- }
- type="password"
+ type="dual"
onChange={passwordChangeHandler}
/>
@@ -82,10 +81,9 @@ export function PasswordEditPanel(props: {
headerText="Re-enter password"
helpText="The password must be identical to what you entered above."
>
- }
- type="password"
+ type="dual"
isInvalid={isRepeatPasswordInvalid}
onChange={repeatPasswordChangeHandler}
/>
diff --git a/public/apps/configuration/utils/test/__snapshots__/password-edit-panel.test.tsx.snap b/public/apps/configuration/utils/test/__snapshots__/password-edit-panel.test.tsx.snap
new file mode 100644
index 000000000..d6e879b84
--- /dev/null
+++ b/public/apps/configuration/utils/test/__snapshots__/password-edit-panel.test.tsx.snap
@@ -0,0 +1,53 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[`Password edit panel repeat password field update 1`] = `
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+`;
diff --git a/public/apps/configuration/utils/test/password-edit-panel.test.tsx b/public/apps/configuration/utils/test/password-edit-panel.test.tsx
index 247a88d0b..9b8b0e007 100644
--- a/public/apps/configuration/utils/test/password-edit-panel.test.tsx
+++ b/public/apps/configuration/utils/test/password-edit-panel.test.tsx
@@ -90,6 +90,7 @@ describe('Password edit panel', () => {
updateIsInvalid={updateIsInvalid}
/>
);
+ expect(component).toMatchSnapshot();
const event = {
target: { value: 'dummy' },
} as React.ChangeEvent;
diff --git a/public/apps/login/login-page.tsx b/public/apps/login/login-page.tsx
index abebf304b..f8bf6e5f4 100644
--- a/public/apps/login/login-page.tsx
+++ b/public/apps/login/login-page.tsx
@@ -25,6 +25,7 @@ import {
EuiForm,
EuiFormRow,
EuiHorizontalRule,
+ EuiFieldPassword,
} from '@elastic/eui';
import { CoreStart } from '../../../../../src/core/public';
import { ClientConfigType } from '../../types';
@@ -202,12 +203,11 @@ export function LoginPage(props: LoginPageDeps) {
);
formBody.push(
- }
- type="password"
+ type="dual"
onChange={(e) => setPassword(e.target.value)}
value={password}
isInvalid={usernameValidationFailed}
diff --git a/public/apps/login/test/__snapshots__/login-page.test.tsx.snap b/public/apps/login/test/__snapshots__/login-page.test.tsx.snap
index f04a02a1d..0fb0cb0a8 100644
--- a/public/apps/login/test/__snapshots__/login-page.test.tsx.snap
+++ b/public/apps/login/test/__snapshots__/login-page.test.tsx.snap
@@ -64,18 +64,16 @@ exports[`Login page renders renders with config value for multiauth 1`] = `
isInvalid={false}
labelType="label"
>
-
- }
- type="password"
+ type="dual"
value=""
/>
@@ -217,18 +215,16 @@ exports[`Login page renders renders with config value for multiauth with anonymo
isInvalid={false}
labelType="label"
>
-
- }
- type="password"
+ type="dual"
value=""
/>
@@ -388,18 +384,16 @@ exports[`Login page renders renders with config value with anonymous auth enable
isInvalid={false}
labelType="label"
>
-
- }
- type="password"
+ type="dual"
value=""
/>
@@ -509,18 +503,16 @@ exports[`Login page renders renders with config value with anonymous auth enable
isInvalid={false}
labelType="label"
>
-
- }
- type="password"
+ type="dual"
value=""
/>
@@ -630,18 +622,16 @@ exports[`Login page renders renders with config value: string 1`] = `
isInvalid={false}
labelType="label"
>
-
- }
- type="password"
+ type="dual"
value=""
/>
@@ -733,18 +723,16 @@ exports[`Login page renders renders with config value: string array 1`] = `
isInvalid={false}
labelType="label"
>
-
- }
- type="password"
+ type="dual"
value=""
/>
@@ -836,18 +824,16 @@ exports[`Login page renders renders with default value: string 1`] = `
isInvalid={false}
labelType="label"
>
-
- }
- type="password"
+ type="dual"
value=""
/>
@@ -939,18 +925,16 @@ exports[`Login page renders renders with default value: string array 1`] = `
isInvalid={false}
labelType="label"
>
-
- }
- type="password"
+ type="dual"
value=""
/>