import Box from "@mui/material/Box"; import Typography from "@mui/material/Typography"; import { Modal, MonthField, TimeField, Field, CheckboxField } from "../ui"; interface BulkAttendanceForm { month: string; user_ids: string[]; arrival_time: string; departure_time: string; break_start_time: string; break_end_time: string; } interface BulkAttendanceUser { id: number | string; name: string; } interface BulkAttendanceModalProps { isOpen: boolean; onClose: () => void; form: BulkAttendanceForm; setForm: (form: BulkAttendanceForm) => void; users: BulkAttendanceUser[]; onSubmit: () => void; submitting: boolean; toggleUser: (userId: number | string) => void; toggleAllUsers: () => void; } export default function BulkAttendanceModal({ isOpen, onClose, form, setForm, users, onSubmit, submitting, toggleUser, toggleAllUsers, }: BulkAttendanceModalProps) { return ( Vytvoří záznamy pro všechny pracovní dny. Svátky se automaticky označí. Existující záznamy se přeskočí. setForm({ ...form, month: val })} /> Zaměstnanci {users.length > 0 && form.user_ids.length === users.length ? "Odznačit vše" : "Vybrat vše"} {users.map((user) => ( toggleUser(user.id)} /> ))} Vybráno: {form.user_ids.length} z {users.length} setForm({ ...form, arrival_time: val })} /> setForm({ ...form, departure_time: val })} /> setForm({ ...form, break_start_time: val })} /> setForm({ ...form, break_end_time: val })} /> ); }