Moved component logic for MdPreview into controller

This commit is contained in:
Ceferino Patino 2022-08-10 18:04:10 -05:00
commit 63d41ef04a
6 changed files with 20 additions and 16 deletions

View file

@ -1,21 +1,12 @@
import { useForm } from 'contexts';
import { useState } from 'react';
import ReactMarkdown from 'react-markdown';
import { Paper, Typography, Button } from '@mui/material';
export default function MdPreview() {
const [preview, setPreview] = useState(false);
const { content } = useForm();
function handleClick() {
setPreview(!preview);
}
export default function MdPreview({ show, toggleShow, content }) {
return (
<div>
<Button
fullWidth
onClick={handleClick}
onClick={toggleShow}
type='submit'
variant='contained'
color='primary'
@ -23,7 +14,7 @@ export default function MdPreview() {
>
Show Markdown Preview
</Button>
{preview && (
{show && (
<Paper variant='outlined'>
<Typography variant='h5'> Text Preview: </Typography>
<ReactMarkdown children={content} />

View file

@ -1,7 +1,7 @@
import { Button, Card, CardContent, Tooltip } from '@mui/material';
import { AnswerForm } from 'controllers/FormControllers';
import MdPreview from 'components/MdPreview';
import { MdPreview } from 'controllers';
export default function CreateAnswer({ canAnswer, show, toggleShow }) {
return (

View file

@ -3,7 +3,7 @@ import { useEffect } from 'react';
import { useNavigate } from 'react-router-dom';
import { AskForm } from 'controllers/FormControllers';
import { MdPreview } from 'components';
import { MdPreview } from 'controllers';
import Cookies from 'js-cookie';
export default function Ask() {

View file

@ -3,7 +3,7 @@ import React, { useEffect } from 'react';
import { useNavigate } from 'react-router-dom';
import { Inbox } from 'controllers';
import { SendMail } from 'controllers/FormControllers';
import { MdPreview } from 'components';
import { MdPreview } from 'controllers';
import Cookies from 'js-cookie';
export default function Mail() {

View file

@ -0,0 +1,12 @@
import { useForm } from 'contexts';
import { useState } from 'react';
import { MdPreview } from 'components';
export default function MdPreviewController() {
const [show, setShow] = useState(false);
const { content } = useForm();
const toggleShow = () => setShow((initial) => !initial);
return <MdPreview {...{ show, toggleShow, content }} />;
}

View file

@ -3,5 +3,6 @@ import Inbox from './InboxController';
import Navbar from './NavbarController';
import PaginatedList from './PaginatedListController';
import SearchBar from './SearchBarController';
import MdPreview from './MdPreviewController';
export { CreationInfoTag, PaginatedList, Inbox, Navbar, SearchBar };
export { CreationInfoTag, PaginatedList, Inbox, Navbar, SearchBar, MdPreview };