import { useT } from '../i18n' import { Dispatch, SetStateAction } from 'react' import { ProcessStatus, User, Page } from '../types' import { inp, lbl, chk, FormCard, DeletedBanner } from '../components/common' import DateInput from '../components/DateInput' import FormPageLayout from '../components/FormPageLayout' interface Props { form: ProcessStatus setForm: Dispatch> formStatus: string viewMode?: boolean onEdit?: () => void onRestore?: (name: string) => void onPermanentDelete?: (name: string) => void darkMode: boolean notifCount: number onToggleDark: () => void onCountChange: (n: number) => void onViewProfile: () => void onSubmit: () => void onBack: () => void onNavigate: (page: Page) => void onLogout: () => void user: User } export default function ProcessStatusFormPage({ form, setForm, formStatus, viewMode, onEdit, onRestore, onPermanentDelete, darkMode, notifCount, onToggleDark, onCountChange, onViewProfile, onSubmit, onBack, onNavigate, onLogout, user }: Props) { const t = useT() const set = (patch: Partial) => setForm(f => ({ ...f, ...patch })) const di: React.CSSProperties = viewMode ? { background: '#f8fafc' } : {} const title = form.name ? (viewMode ? `Process Status: ${form.name1 || form.name}` : 'Edit Process Status') : 'New Process Status' return ( {(form as any).custom_is_deleted === 1 && ( onRestore(form.name) : undefined} onPermanentDelete={onPermanentDelete && form.name ? () => onPermanentDelete(form.name) : undefined} /> )}
set({ name1: e.target.value })} placeholder="Process status name" required />
set({ creation_date: v })} disabled={viewMode} style={{ ...inp, ...di }} />
set({ notify_manager: e.target.checked ? 1 : 0 })} style={chk} />
) }