[MM-54794] Convert ./components/widgets/icons/fa_next_icon.tsx to function component (#24785)

* chore(channels): convert next icon to functional component

* test(channel): update next snapshot

* chore(channels): change to arrow function, remove `t`, and use `classNames`

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
This commit is contained in:
Firmansyah Yanuar 2023-10-17 17:49:35 +07:00 committed by GitHub
parent 1f384cad4e
commit 98c8f9ae44
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 36 additions and 74 deletions

View File

@ -220,9 +220,7 @@ exports[`components/admin_console/group_settings/group_details/GroupUsers should
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -448,9 +446,7 @@ exports[`components/admin_console/group_settings/group_details/GroupUsers should
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -676,9 +672,7 @@ exports[`components/admin_console/group_settings/group_details/GroupUsers should
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -864,9 +858,7 @@ exports[`components/admin_console/group_settings/group_details/GroupUsers should
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -1092,9 +1084,7 @@ exports[`components/admin_console/group_settings/group_details/GroupUsers should
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -1362,9 +1352,7 @@ exports[`components/admin_console/group_settings/group_details/GroupUsers should
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>

View File

@ -318,9 +318,7 @@ exports[`components/admin_console/group_settings/GroupsList.tsx should match sna
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -445,9 +443,7 @@ exports[`components/admin_console/group_settings/GroupsList.tsx should match sna
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -572,9 +568,7 @@ exports[`components/admin_console/group_settings/GroupsList.tsx should match sna
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -734,9 +728,7 @@ exports[`components/admin_console/group_settings/GroupsList.tsx should match sna
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -987,9 +979,7 @@ exports[`components/admin_console/group_settings/GroupsList.tsx should match sna
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -1240,9 +1230,7 @@ exports[`components/admin_console/group_settings/GroupsList.tsx should match sna
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -1402,9 +1390,7 @@ exports[`components/admin_console/group_settings/GroupsList.tsx should match sna
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -1591,9 +1577,7 @@ exports[`components/admin_console/group_settings/GroupsList.tsx should match sna
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>

View File

@ -256,9 +256,7 @@ exports[`admin_console/system_user_detail/team_list/AbstractList should match sn
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -483,9 +481,7 @@ exports[`admin_console/system_user_detail/team_list/AbstractList should match sn
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>
@ -598,9 +594,7 @@ exports[`admin_console/system_user_detail/team_list/AbstractList should match sn
onClick={[Function]}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>

View File

@ -120,9 +120,7 @@ exports[`admin_console/team_channel_settings/AbstractList should match snapshot,
disabled={true}
type="button"
>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</button>
</div>
</div>

View File

@ -131,9 +131,7 @@ exports[`ProductNoticesModal Should match snapshot for system admin notice 1`] =
defaultMessage="Next"
id="generic.next"
/>
<NextIcon
additionalClassName={null}
/>
<Memo(NextIcon) />
</React.Fragment>
}
enforceFocus={true}

View File

@ -1,28 +1,28 @@
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
import classNames from 'classnames';
import React from 'react';
import {defineMessage} from 'react-intl';
import LocalizedIcon from 'components/localized_icon';
import {t} from 'utils/i18n';
type Props = {
additionalClassName: string | null;
additionalClassName?: string;
}
export default class NextIcon extends React.PureComponent<Props> {
public static defaultProps: Props = {
additionalClassName: null,
};
const iconTitle = defineMessage({
id: 'generic_icons.next',
defaultMessage: 'Next Icon',
});
public render(): JSX.Element {
const className = 'icon icon-chevron-right' + (this.props.additionalClassName ? ' ' + this.props.additionalClassName : '');
return (
<LocalizedIcon
className={className}
title={{id: t('generic_icons.next'), defaultMessage: 'Next Icon'}}
/>
);
}
}
const NextIcon = ({additionalClassName}: Props) => {
return (
<LocalizedIcon
className={classNames('icon icon-chevron-right', additionalClassName)}
title={iconTitle}
/>
);
};
export default React.memo(NextIcon);