diff --git a/_onboarding/onboarding-entrepreneur.tsx b/_onboarding/onboarding-entrepreneur.tsx index 6282a853..4c0c39ac 100644 --- a/_onboarding/onboarding-entrepreneur.tsx +++ b/_onboarding/onboarding-entrepreneur.tsx @@ -211,9 +211,14 @@ function EntrepResearch({ files = [], brief = "", onChange }) { const [progress, setProgress] = useState(0); const handleFileChange = (e: React.ChangeEvent) => { - const selected = e.target.files?.[0]; - if (!selected) return; - setUploading(selected.name); + const selectedFiles = Array.from(e.target.files ?? []); + if (selectedFiles.length === 0) return; + + const label = + selectedFiles.length === 1 + ? selectedFiles[0].name + : `${selectedFiles.length} files`; + setUploading(label); setProgress(0); // Simulate a smooth upload progress bar @@ -222,14 +227,12 @@ function EntrepResearch({ files = [], brief = "", onChange }) { if (p >= 100) { clearInterval(interval); setTimeout(() => { + const newFiles = selectedFiles.map((f) => ({ + name: f.name, + size: `${(f.size / 1024).toFixed(1)} KB`, + })); onChange({ - files: [ - ...files, - { - name: selected.name, - size: `${(selected.size / 1024).toFixed(1)} KB`, - }, - ], + files: [...files, ...newFiles], }); setUploading(null); }, 300); @@ -287,6 +290,7 @@ function EntrepResearch({ files = [], brief = "", onChange }) { {uploading ? ( @@ -473,8 +477,9 @@ function EntrepExisting({ checklist = {}, onChange }) { key: "designs" | "code", e: React.ChangeEvent, ) => { - const selected = e.target.files?.[0]; - if (!selected) return; + const selectedFiles = Array.from(e.target.files ?? []); + if (selectedFiles.length === 0) return; + setUploading(key); setProgress(0); @@ -484,16 +489,14 @@ function EntrepExisting({ checklist = {}, onChange }) { clearInterval(interval); setTimeout(() => { const currentFiles = checklist[`${key}Files`] || []; + const newFiles = selectedFiles.map((f) => ({ + name: f.name, + size: `${(f.size / 1024).toFixed(1)} KB`, + })); onChange({ checklist: { ...checklist, - [`${key}Files`]: [ - ...currentFiles, - { - name: selected.name, - size: `${(selected.size / 1024).toFixed(1)} KB`, - }, - ], + [`${key}Files`]: [...currentFiles, ...newFiles], }, }); setUploading(null); @@ -546,6 +549,7 @@ function EntrepExisting({ checklist = {}, onChange }) { handleFileChange(key, e)} + multiple style={{ display: "none" }} /> {uploading === key ? (