From 4a0cf786bece1209a918ef5c19c99b69349e88e2 Mon Sep 17 00:00:00 2001 From: M-ZubairAhmed Date: Tue, 24 Oct 2023 20:30:19 +0530 Subject: [PATCH] [MM-54877] Replace usage of LocalizedIcon in "select_team_item.tsx" & "file_upload_overlay.tsx" with i/span tags (#25071) --- .../file_upload_overlay.test.tsx.snap | 27 ++--- .../src/components/file_upload_overlay.tsx | 13 ++- .../select_team_item.test.tsx.snap | 99 +++++++++---------- .../components/select_team_item.test.tsx | 7 +- .../components/select_team_item.tsx | 25 +++-- 5 files changed, 75 insertions(+), 96 deletions(-) diff --git a/webapp/channels/src/components/__snapshots__/file_upload_overlay.test.tsx.snap b/webapp/channels/src/components/__snapshots__/file_upload_overlay.test.tsx.snap index 3e0743cf90..fd682990b6 100644 --- a/webapp/channels/src/components/__snapshots__/file_upload_overlay.test.tsx.snap +++ b/webapp/channels/src/components/__snapshots__/file_upload_overlay.test.tsx.snap @@ -16,14 +16,9 @@ exports[`components/FileUploadOverlay should match snapshot when file upload is src={null} /> - - - = (props: Props) => { +const FileUploadOverlay = (props: Props) => { + const {formatMessage} = useIntl(); + let overlayClass = 'file-overlay hidden'; if (props.overlayType === 'right') { overlayClass += ' right-file-overlay'; @@ -32,9 +31,9 @@ const FileUploadOverlay: React.FC = (props: Props) => { alt='Files' /> - team_display_name - @@ -44,24 +37,11 @@ exports[`components/select_team/components/SelectTeamItem should match snapshot, > team_display_name - - @@ -81,14 +61,8 @@ exports[`components/select_team/components/SelectTeamItem should match snapshot, > team_display_name - @@ -109,15 +83,8 @@ exports[`components/select_team/components/SelectTeamItem should match snapshot, > team_display_name - @@ -153,6 +120,24 @@ exports[`components/select_team/components/SelectTeamItem should match snapshot, "props": Object { "canJoinPrivateTeams": false, "canJoinPublicTeams": true, + "intl": Object { + "formatMessage": [MockFunction] { + "calls": Array [ + Array [ + Object { + "defaultMessage": "Join Team Icon", + "id": "select_team.join.icon", + }, + ], + ], + "results": Array [ + Object { + "type": "return", + "value": undefined, + }, + ], + }, + }, "loading": false, "onTeamClick": [MockFunction], "team": Object { @@ -192,6 +177,26 @@ exports[`components/select_team/components/SelectTeamItem should match snapshot, "_element": team_display_name - , @@ -300,15 +298,8 @@ exports[`components/select_team/components/SelectTeamItem should match snapshot, > team_display_name - diff --git a/webapp/channels/src/components/select_team/components/select_team_item.test.tsx b/webapp/channels/src/components/select_team/components/select_team_item.test.tsx index 064f4e121d..87eb5adba4 100644 --- a/webapp/channels/src/components/select_team/components/select_team_item.test.tsx +++ b/webapp/channels/src/components/select_team/components/select_team_item.test.tsx @@ -6,7 +6,9 @@ import React from 'react'; import type {Team} from '@mattermost/types/teams'; -import SelectTeamItem from './select_team_item'; +import type {MockIntl} from 'tests/helpers/intl-test-helper'; + +import {SelectTeamItem} from './select_team_item'; describe('components/select_team/components/SelectTeamItem', () => { const baseProps = { @@ -15,6 +17,9 @@ describe('components/select_team/components/SelectTeamItem', () => { loading: false, canJoinPublicTeams: true, canJoinPrivateTeams: false, + intl: { + formatMessage: jest.fn(), + } as MockIntl, }; test('should match snapshot, on public joinable', () => { diff --git a/webapp/channels/src/components/select_team/components/select_team_item.tsx b/webapp/channels/src/components/select_team/components/select_team_item.tsx index c4e19c2c89..8d3d006faa 100644 --- a/webapp/channels/src/components/select_team/components/select_team_item.tsx +++ b/webapp/channels/src/components/select_team/components/select_team_item.tsx @@ -3,26 +3,25 @@ import React from 'react'; import type {ReactNode, MouseEvent} from 'react'; +import {injectIntl, type WrappedComponentProps} from 'react-intl'; import type {Team} from '@mattermost/types/teams'; -import LocalizedIcon from 'components/localized_icon'; import OverlayTrigger from 'components/overlay_trigger'; import Tooltip from 'components/tooltip'; import TeamInfoIcon from 'components/widgets/icons/team_info_icon'; -import {t} from 'utils/i18n'; import * as Utils from 'utils/utils'; -type Props = { +interface Props extends WrappedComponentProps { team: Team; onTeamClick: (team: Team) => void; loading: boolean; canJoinPublicTeams: boolean; canJoinPrivateTeams: boolean; -}; +} -export default class SelectTeamItem extends React.PureComponent { +export class SelectTeamItem extends React.PureComponent { handleTeamClick = (e: MouseEvent): void => { e.preventDefault(); this.props.onTeamClick(this.props.team); @@ -58,18 +57,16 @@ export default class SelectTeamItem extends React.PureComponent { let icon; if (loading) { icon = ( - ); } else { icon = ( - ); } @@ -87,9 +84,9 @@ export default class SelectTeamItem extends React.PureComponent { > {team.display_name} {!team.allow_open_invite && - } {canJoin && icon} @@ -97,3 +94,5 @@ export default class SelectTeamItem extends React.PureComponent { ); } } + +export default injectIntl(SelectTeamItem);