// components/DirectorStep.tsx "use client"; import type { DirectorInput, Section69 } from "@/lib/wizard-types"; const SA_PROVINCES = [ "Eastern Cape", "Free State", "Gauteng", "KwaZulu-Natal", "Limpopo", "Mpumalanga", "Northern Cape", "North West", "Western Cape", ]; function ProvinceSelect({ value, onChange }: { value: string; onChange: (v: string) => void }) { return ( ); } function Section69Questions({ section69, onUpdate }: { section69: Section69; onUpdate: (s: Section69) => void }) { const qs: { key: keyof Section69; label: string }[] = [ { key: "q1_probation", label: "Are you a person who has been placed under probation by a court in terms of section 162, or in terms of section 47 of the Close Corporations Act, 1984?" }, { key: "q2_court_prohibited", label: "Has a court prohibited you to be a director, or declared you to be delinquent in terms of section 162?" }, { key: "q3_unrehabilitated_insolvent", label: "Are you an unrehabilitated insolvent?" }, { key: "q4_public_regulation", label: "Are you prohibited in terms of any public regulation to be a director of the company?" }, { key: "q5_removed_from_office", label: "Were you removed from an office of trust, on grounds of misconduct involving dishonesty?" }, { key: "q6_convicted_offence", label: "Were you convicted and imprisoned without the option of a fine, or fined more than the prescribed amount, for theft, fraud, forgery, perjury or an offence?" }, ]; return (
Director {index + 1}
Residential address
Postal address
Section 69 — Companies Act 71 of 2008
File will be saved as ID - {d.first_names || "FirstName"} {d.surname || "Surname"}.<ext>.
onUpdate({ id_file: e.target.files?.[0] || null } as Partial✓ Selected: {(d as DirectorInput & { id_file?: File | null }).id_file?.name}
)}