Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 5473 | Rev 5481 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 5473 Rev 5474
Línea 1... Línea 1...
1
/* eslint-disable react/prop-types */
1
/* eslint-disable react/prop-types */
2
import React, { useEffect, useState } from 'react'
2
import React, { useEffect, useState } from 'react'
-
 
3
import parse from 'html-react-parser'
-
 
4
import { useSelector } from 'react-redux'
-
 
5
 
3
import OverviewModal from './OverviewModal'
6
import OverviewModal from './OverviewModal'
4
import EmptySection from '../../../shared/empty-section/EmptySection'
7
import EmptySection from '../../../shared/empty-section/EmptySection'
5
import { useSelector } from 'react-redux'
8
import EditIcon from '@mui/icons-material/Edit'
Línea 6... Línea 9...
6
 
9
 
7
const Overview = ({ overview, userId, isEdit }) => {
10
const Overview = ({ overview, userId, isEdit }) => {
8
  const [isModalOpen, setIsModalOpen] = useState(false)
11
  const [isModalOpen, setIsModalOpen] = useState(false)
Línea 9... Línea 12...
9
  const [settedOverview, setSettedOverview] = useState(overview)
12
  const [settedOverview, setSettedOverview] = useState(overview)
Línea 10... Línea 13...
10
 
13
 
Línea 11... Línea -...
11
  const labels = useSelector((state) => state.labels)
-
 
12
 
-
 
13
  const toggleModal = () => setIsModalOpen(true)
-
 
14
 
-
 
15
  function sanitize(str) {
-
 
16
    const map = {
-
 
17
      '&': '&',
-
 
18
      '<': '&lt;',
-
 
19
      '>': '&gt;',
-
 
20
      '"': '&quot;',
-
 
21
      "'": '&#039;',
-
 
22
    }
14
  const labels = useSelector((state) => state.labels)
23
    return str.replace(/[&<>"']/g, (m) => map[m])
15
 
24
  }
16
  const toggleModal = () => setIsModalOpen(true)
Línea 25... Línea 17...
25
 
17
 
26
  useEffect(() => {
18
  useEffect(() => {
27
    setSettedOverview(overview)
19
    setSettedOverview(overview)
28
  }, [overview])
20
  }, [overview])
29
 
21
 
30
  return (
22
  return (
31
    <>
23
    <>
32
      <div className="user-profile-extended-ov">
-
 
33
        <h3 style={{ display: 'flex' }}>
-
 
34
          Visión general
24
      <div className="profile-attr">
35
          {isEdit && (
25
        <div className="profile-attr-header">
36
            <button className="btn-extended-edit" onClick={toggleModal}>
26
          <h3>Visión general</h3>
37
              <i className="fa fa-pencil" />
27
          {isEdit && (
38
            </button>
28
            <EditIcon className="cursor-pointer" onClick={toggleModal} />
39
          )}
29
          )}
40
        </h3>
30
        </div>
41
        {overview ? (
31
        {overview ? (
42
          <span id="overview-description">{sanitize(overview)}</span>
32
          <span id="overview-description">{parse(overview)}</span>