[MM-56006] Convert ./components/discard_changes_modal.tsx from Class Component to Function Component (#25620)

* MM-56006: Converted to React FC

* Update webapp/channels/src/components/discard_changes_modal.tsx

Co-authored-by: Daniel Espino García <larkox@gmail.com>

* lint changes

---------

Co-authored-by: Daniel Espino García <larkox@gmail.com>
This commit is contained in:
Arun_dadhwal 2023-12-05 14:59:36 +05:30 committed by GitHub
parent c008c95c93
commit 1dae805ee1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -12,45 +12,47 @@ type Props = {
onCancel: (checked: boolean) => void;
}
export default class DiscardChangesModal extends React.PureComponent<Props> {
public render(): JSX.Element {
const title: JSX.Element = (
<FormattedMessage
id='discard_changes_modal.title'
defaultMessage='Discard Changes?'
/>
);
const DiscardChangesModal = ({
show,
onConfirm,
onCancel,
}: Props) => {
const title = (
<FormattedMessage
id='discard_changes_modal.title'
defaultMessage='Discard Changes?'
/>
);
const message: JSX.Element = (
<FormattedMessage
id='discard_changes_modal.message'
defaultMessage='You have unsaved changes, are you sure you want to discard them?'
/>
);
const message = (
<FormattedMessage
id='discard_changes_modal.message'
defaultMessage='You have unsaved changes, are you sure you want to discard them?'
/>
);
const buttonClass = 'btn btn-primary';
const button: JSX.Element = (
<FormattedMessage
id='discard_changes_modal.leave'
defaultMessage='Yes, Discard'
/>
);
const buttonClass = 'btn btn-primary';
const button = (
<FormattedMessage
id='discard_changes_modal.leave'
defaultMessage='Yes, Discard'
/>
);
const modalClass = 'discard-changes-modal';
const modalClass = 'discard-changes-modal';
const {show, onConfirm, onCancel} = this.props;
return (
<ConfirmModal
show={show}
title={title}
message={message}
modalClass={modalClass}
confirmButtonClass={buttonClass}
confirmButtonText={button}
onConfirm={onConfirm}
onCancel={onCancel}
/>
);
};
return (
<ConfirmModal
show={show}
title={title}
message={message}
modalClass={modalClass}
confirmButtonClass={buttonClass}
confirmButtonText={button}
onConfirm={onConfirm}
onCancel={onCancel}
/>
);
}
}
export default React.memo(DiscardChangesModal);