Proyectos de Subversion LeadersLinked - SPA

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3736 stevensc 1
import React from 'react';
2
import { IconButton } from '@mui/material';
3
import Clear from '@mui/icons-material/Clear';
4
import Delete from '@mui/icons-material/Delete';
5
import Done from '@mui/icons-material/Done';
6
 
7
import { List, ListItem } from '@shared/components';
8
 
9
export function MembersModal({
10
  members = [],
11
  onApprove = function () {},
12
  onReject = function () {},
13
  onCancel = function () {}
14
}) {
15
  return (
16
    <List
17
      items={members}
18
      keyExtractor={(member) => member.id}
19
      renderItem={(member) => (
20
        <Member
21
          key={member.id}
22
          member={member}
23
          onApprove={onApprove}
24
          onReject={onReject}
25
          onCancel={onCancel}
26
        />
27
      )}
28
      emptyMessage='No hay miembros'
29
    />
30
  );
31
}
32
 
33
const Member = ({
34
  member: { name = '', image = '', actions = {} },
35
  onApprove = function () {},
36
  onReject = function () {},
37
  onCancel = function () {}
38
}) => {
39
  return (
40
    <ListItem
41
      image={image}
42
      title={name}
43
      renderAction={() => (
44
        <>
45
          {actions.link_approve && (
46
            <IconButton onClick={() => onApprove(actions.link_approve)} title='Aprobar'>
47
              <Done />
48
            </IconButton>
49
          )}
50
          {actions.link_reject && (
51
            <IconButton onClick={() => onReject(actions.link_reject)} title='Rechazar'>
52
              <Clear />
53
            </IconButton>
54
          )}
55
          {actions.link_cancel && (
56
            <IconButton onClick={() => onCancel(actions.link_cancel)} title='Cancelar'>
57
              <Delete />
58
            </IconButton>
59
          )}
60
        </>
61
      )}
62
    />
63
  );
64
};