Proyectos de Subversion LeadersLinked - SPA

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
2521 stevensc 1
import React from 'react'
2855 stevensc 2
import { Controller } from 'react-hook-form'
3
import { FormLabel } from '@mui/material'
2521 stevensc 4
import { CKEditor } from '@ckeditor/ckeditor5-react'
2548 stevensc 5
import 'ckeditor5.css'
2521 stevensc 6
 
2569 stevensc 7
import ClassicEditor from '../ckeditor/ClassicEditor'
2855 stevensc 8
import FormErrorFeedback from './form/FormErrorFeedback'
2569 stevensc 9
 
2521 stevensc 10
export default function Ckeditor({
2569 stevensc 11
  id = '',
12
  label = '',
2855 stevensc 13
  name = '',
2521 stevensc 14
  defaultValue = '',
15
  onChange = () => '',
2764 stevensc 16
  onReady = () => {},
2855 stevensc 17
  rules,
18
  error,
19
  control,
2764 stevensc 20
  disabled
2521 stevensc 21
}) {
2855 stevensc 22
  if (control) {
23
    return (
24
      <Controller
25
        name={name}
26
        control={control}
27
        defaultValue={defaultValue}
28
        rules={rules}
29
        render={({ field: { name, value, onChange, disabled } }) => (
30
          <>
31
            {label ? <FormLabel htmlFor={id}>{label}</FormLabel> : null}
32
            <CKEditor
33
              editor={ClassicEditor}
34
              onReady={onReady}
35
              data={value}
36
              onChange={(event, editor) => onChange(editor.getData())}
37
              id={id}
38
              disabled={disabled}
39
            />
40
            {error ? <FormErrorFeedback>{error}</FormErrorFeedback> : null}
41
          </>
42
        )}
43
      />
44
    )
45
  }
2521 stevensc 46
  return (
2569 stevensc 47
    <>
48
      {label ? <FormLabel htmlFor={id}>{label}</FormLabel> : null}
49
      <CKEditor
50
        editor={ClassicEditor}
51
        onReady={onReady}
52
        data={defaultValue}
53
        onChange={(event, editor) => onChange(editor.getData())}
54
        id={id}
2764 stevensc 55
        disabled={disabled}
2569 stevensc 56
      />
2855 stevensc 57
      {error ? <FormErrorFeedback>{error}</FormErrorFeedback> : null}
2569 stevensc 58
    </>
2521 stevensc 59
  )
60
}