feat: intègre éditeur riche pour articles uniquement

This commit is contained in:
2025-07-23 12:21:43 +04:00
parent 2d824175e2
commit f0e5e07386
+16 -3
View File
@@ -8,6 +8,7 @@ import DialogActions from '@mui/material/DialogActions'
import DialogContent from '@mui/material/DialogContent' import DialogContent from '@mui/material/DialogContent'
import DialogContentText from '@mui/material/DialogContentText' import DialogContentText from '@mui/material/DialogContentText'
import DialogTitle from '@mui/material/DialogTitle' import DialogTitle from '@mui/material/DialogTitle'
import RichTextEditor from '../rich-text-editor/index.js'
import SessionExpired from '../session/session-expired.js' import SessionExpired from '../session/session-expired.js'
import ListItems from './create/list-items.js' import ListItems from './create/list-items.js'
@@ -24,7 +25,8 @@ export default function FormHandler({
handleFormSubmit, handleFormSubmit,
countdownRef, countdownRef,
setSelectValue, setSelectValue,
contenu contenu,
collection
}) { }) {
const handleClose = () => { const handleClose = () => {
setIsOpen(false) setIsOpen(false)
@@ -52,18 +54,28 @@ export default function FormHandler({
setSelectValue={setSelectValue} setSelectValue={setSelectValue}
/> />
)} )}
{hasMultiline && collection === 'articles' ? (
<RichTextEditor
isRequired
label={label}
name='content'
placeholder={`Rédigez ${label.toLowerCase()}...`}
value={contenu || ''}
/>
) : (
<TextField <TextField
autoFocus autoFocus
required required
fullWidth fullWidth
defaultValue={contenu} defaultValue={contenu}
multiline={Boolean(hasMultiline)} multiline={Boolean(hasMultiline)}
rows={hasMultiline ? 4 : 1}
mt={2} mt={2}
rows={4}
id='content' id='content'
name='content' name='content'
label={label} label={label}
/> />
)}
</DialogContent> </DialogContent>
<DialogActions> <DialogActions>
<Button variant='contained' color='error' onClick={handleClose}>Annuler</Button> <Button variant='contained' color='error' onClick={handleClose}>Annuler</Button>
@@ -88,5 +100,6 @@ FormHandler.propTypes = {
label: PropTypes.string.isRequired, label: PropTypes.string.isRequired,
hasMultiline: PropTypes.bool, hasMultiline: PropTypes.bool,
listItems: PropTypes.array.isRequired, listItems: PropTypes.array.isRequired,
contenu: PropTypes.string contenu: PropTypes.string,
collection: PropTypes.string
} }