hunk.code_window:         let preview = null;
           if (this.props.canDownloadFiles) {
               preview = (
                   <ExternalLink
                       className='file-details__preview'
                       href={fileUrl}
  
hunk.labels: keep keep keep keep replace keep keep
hunk.after_edit:                 <a
  
hunk.file_path: webapp/channels/src/components/file_info_preview/file_info_preview.tsx
hunk.type: replace
file: // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
  // See LICENSE.txt for license information.
  
  import {combineReducers} from 'redux';
  
  import type {TeamsRequestsStatuses, RequestStatusType} from '@mattermost/types/requests';
  
  import {TeamTypes} from 'mattermost-redux/action_types';
  import type {GenericAction} from 'mattermost-redux/types/actions';
  
  import {handleRequest, initialRequestState} from './helpers';
  
  function getMyTeams(state: RequestStatusType = initialRequestState(), action: GenericAction): RequestStatusType {
      return handleRequest(
          TeamTypes.MY_TEAMS_REQUEST,
          TeamTypes.MY_TEAMS_SUCCESS,
          TeamTypes.MY_TEAMS_FAILURE,
          state,
          action,
      );
  }
  
  function getTeams(state: RequestStatusType = initialRequestState(), action: GenericAction): RequestStatusType {
      return handleRequest(
          TeamTypes.GET_TEAMS_REQUEST,
          TeamTypes.GET_TEAMS_SUCCESS,
          TeamTypes.GET_TEAMS_FAILURE,
          state,
          action,
      );
  }
  
  function joinTeam(state: RequestStatusType = initialRequestState(), action: GenericAction): RequestStatusType {
      return handleRequest(
          TeamTypes.JOIN_TEAM_REQUEST,
          TeamTypes.JOIN_TEAM_SUCCESS,
          TeamTypes.JOIN_TEAM_FAILURE,
          state,
          action,
      );
  }
  
  export default (combineReducers({
      getTeams,
      getMyTeams,
      joinTeam,
  }) as (b: TeamsRequestsStatuses, a: GenericAction) => TeamsRequestsStatuses);
  