()
| 52 | ]; |
| 53 | |
| 54 | export function UsersStack() { |
| 55 | const rows = data.map((item) => ( |
| 56 | <Table.Tr key={item.name}> |
| 57 | <Table.Td> |
| 58 | <Group gap="sm"> |
| 59 | <Avatar size={40} src={item.avatar} radius={40} alt="" /> |
| 60 | <div> |
| 61 | <Text fz="sm" fw={500}> |
| 62 | {item.name} |
| 63 | </Text> |
| 64 | <Text c="dimmed" fz="xs"> |
| 65 | {item.job} |
| 66 | </Text> |
| 67 | </div> |
| 68 | </Group> |
| 69 | </Table.Td> |
| 70 | <Table.Td> |
| 71 | <Text fz="sm">{item.email}</Text> |
| 72 | <Text fz="xs" c="dimmed"> |
| 73 | |
| 74 | </Text> |
| 75 | </Table.Td> |
| 76 | <Table.Td> |
| 77 | <Text fz="sm">${item.rate.toFixed(1)} / hr</Text> |
| 78 | <Text fz="xs" c="dimmed"> |
| 79 | Rate |
| 80 | </Text> |
| 81 | </Table.Td> |
| 82 | <Table.Td> |
| 83 | <Group gap={0} justify="flex-end"> |
| 84 | <ActionIcon variant="subtle" color="gray" aria-label="Edit"> |
| 85 | <IconPencil size={16} stroke={1.5} /> |
| 86 | </ActionIcon> |
| 87 | <Menu |
| 88 | transitionProps={{ transition: 'pop' }} |
| 89 | withArrow |
| 90 | position="bottom-end" |
| 91 | withinPortal |
| 92 | > |
| 93 | <Menu.Target> |
| 94 | <ActionIcon variant="subtle" color="gray" aria-label="Menu"> |
| 95 | <IconDots size={16} stroke={1.5} /> |
| 96 | </ActionIcon> |
| 97 | </Menu.Target> |
| 98 | <Menu.Dropdown> |
| 99 | <Menu.Item leftSection={<IconMessages size={16} stroke={1.5} />}> |
| 100 | Send message |
| 101 | </Menu.Item> |
| 102 | <Menu.Item leftSection={<IconNote size={16} stroke={1.5} />}>Add note</Menu.Item> |
| 103 | <Menu.Item leftSection={<IconReportAnalytics size={16} stroke={1.5} />}> |
| 104 | Analytics |
| 105 | </Menu.Item> |
| 106 | <Menu.Item leftSection={<IconTrash size={16} stroke={1.5} />} color="red"> |
| 107 | Terminate contract |
| 108 | </Menu.Item> |
| 109 | </Menu.Dropdown> |
| 110 | </Menu> |
| 111 | </Group> |
nothing calls this directly
no outgoing calls
no test coverage detected