import { useState } from 'react' import { FaTimes } from 'react-icons/fa' import { useEmployees } from '../hooks/useEmployees' import { supportMinutes } from '../lib/support' import { stepLabel } from '../lib/timeSteps' /* Haken "Unterstuetzung" mit Zeilen Mitarbeiter + "Wobei?". Nur fuer die Person, die das Arbeitsblatt angelegt hat (sie selbst steht nicht in der Auswahl). Die Mitarbeiterliste laedt erst hier, damit nicht jede Ticket-Karte sie abruft. */ export default function SupportersEditor({ value, onChange, excludeUserId, minutes }) { const { employees, loading, error } = useEmployees() const [enabled, setEnabled] = useState(value.length > 0) const perPerson = stepLabel(supportMinutes(minutes)) const choices = employees.filter((e) => e.userId && e.userId !== excludeUserId) const toggle = (checked) => { setEnabled(checked) onChange(checked ? [{ employeeId: '', name: '', task: '' }] : []) } const update = (index, patch) => onChange(value.map((row, i) => (i === index ? { ...row, ...patch } : row))) const pick = (index, userId) => { const employee = choices.find((e) => e.userId === userId) update(index, { employeeId: userId, name: employee?.displayName || '' }) } const remove = (index) => { const next = value.filter((_, i) => i !== index) onChange(next) if (!next.length) setEnabled(false) } return (
{enabled && (
{!loading && (error || !choices.length) && (

Mitarbeiterliste konnte nicht geladen werden.

)} {value.map((row, index) => (
update(index, { task: e.target.value })} /> = {perPerson}
))}
)}
) }