diff --git a/packages/manager/.changeset/pr-13214-fixed-1766145130482.md b/packages/manager/.changeset/pr-13214-fixed-1766145130482.md new file mode 100644 index 00000000000..62c9ef0ebf8 --- /dev/null +++ b/packages/manager/.changeset/pr-13214-fixed-1766145130482.md @@ -0,0 +1,5 @@ +--- +"@linode/manager": Fixed +--- + +IAM: User can’t edit their own email on the user details page ([#13214](https://github.com/linode/manager/pull/13214)) diff --git a/packages/manager/src/features/IAM/Users/UserDetails/UserEmailPanel.test.tsx b/packages/manager/src/features/IAM/Users/UserDetails/UserEmailPanel.test.tsx index aa9377a1490..0de888dd239 100644 --- a/packages/manager/src/features/IAM/Users/UserDetails/UserEmailPanel.test.tsx +++ b/packages/manager/src/features/IAM/Users/UserDetails/UserEmailPanel.test.tsx @@ -26,7 +26,7 @@ describe('UserEmailPanel', () => { const user = accountUserFactory.build(); const { getByLabelText } = renderWithTheme( - + ); const emailTextField = getByLabelText('Email'); @@ -45,7 +45,7 @@ describe('UserEmailPanel', () => { ); const { findByLabelText, getByLabelText, getByText } = renderWithTheme( - + ); const warning = await findByLabelText( @@ -70,7 +70,7 @@ describe('UserEmailPanel', () => { }); const { getByLabelText, getByText } = renderWithTheme( - + ); const warning = getByLabelText('This field can’t be modified.'); @@ -94,7 +94,7 @@ describe('UserEmailPanel', () => { username: 'user-1', }); - renderWithTheme(); + renderWithTheme(); const emailInput = screen.getByLabelText('Email'); @@ -114,7 +114,7 @@ describe('UserEmailPanel', () => { }); const { getByRole, findByDisplayValue } = renderWithTheme( - + ); await findByDisplayValue(user.email); diff --git a/packages/manager/src/features/IAM/Users/UserDetails/UserEmailPanel.tsx b/packages/manager/src/features/IAM/Users/UserDetails/UserEmailPanel.tsx index 799651e29e3..613476c11a2 100644 --- a/packages/manager/src/features/IAM/Users/UserDetails/UserEmailPanel.tsx +++ b/packages/manager/src/features/IAM/Users/UserDetails/UserEmailPanel.tsx @@ -14,10 +14,9 @@ import type { User } from '@linode/api-v4'; interface Props { activeUser: User; - canUpdateUser: boolean; } -export const UserEmailPanel = ({ canUpdateUser, activeUser }: Props) => { +export const UserEmailPanel = ({ activeUser }: Props) => { const { enqueueSnackbar } = useSnackbar(); const { profileUserName } = useDelegationRole(); @@ -54,7 +53,7 @@ export const UserEmailPanel = ({ canUpdateUser, activeUser }: Props) => { // This should be disabled if this is NOT the current user or if the proxy user is viewing their own profile. const disableEmailField = - profileUserName !== activeUser.username || isProxyUser || !canUpdateUser; + profileUserName !== activeUser.username || isProxyUser; return ( @@ -79,11 +78,11 @@ export const UserEmailPanel = ({ canUpdateUser, activeUser }: Props) => { />