Skip to content

Commit e7af2af

Browse files
sort based on last modified date
1 parent ede00dd commit e7af2af

File tree

2 files changed

+11
-9
lines changed

2 files changed

+11
-9
lines changed

src/app/api/ai-upload/route.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,12 @@ export async function POST(req: Request) {
4040
const files: File[] = formData.getAll("files") as File[];
4141
const isPdf = formData.get("isPdf") === "true"; // Convert string to boolean
4242

43-
const orderedFiles = Array.from(files).sort((a, b) => {
44-
return a.name.localeCompare(b.name);
45-
});
43+
4644
let imageURL = "";
4745
if (isPdf) {
4846
imageURL = formData.get("image") as string;
4947
} else {
50-
const bytes = await orderedFiles[0]?.arrayBuffer();
48+
const bytes = await files[0]?.arrayBuffer();
5149
if (bytes) {
5250
const buffer = Buffer.from(bytes);
5351
imageURL = `data:${"image/png"};base64,${buffer.toString("base64")}`;
@@ -126,7 +124,7 @@ export async function POST(req: Request) {
126124
return;
127125
}
128126

129-
const mergedPdfBytes = await CreatePDF(orderedFiles);
127+
const mergedPdfBytes = await CreatePDF(files);
130128
[public_id_cloudinary, finalUrl] = await uploadPDFFile(
131129
mergedPdfBytes,
132130
uploadPreset,

src/app/upload/page.tsx

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,10 @@ const Page = () => {
4444
const [campus, setCampus] = useState("Vellore");
4545

4646
const [files, setFiles] = useState<File[]>([]);
47+
4748
const [isUploading, setIsUploading] = useState(false);
4849
const [, setResetSearch] = useState(false);
49-
function pdfCheckAndSelect<T extends File>(acceptedFiles: T[]) {
50+
function fileCheckAndSelect<T extends File>(acceptedFiles: T[]) {
5051
const maxFileSize = 5 * 1024 * 1024;
5152
const allowedFileTypes = [
5253
"application/pdf",
@@ -96,8 +97,11 @@ const Page = () => {
9697
return;
9798
}
9899

99-
setFiles(acceptedFiles);
100-
toast.success(`${acceptedFiles.length} files selected!`, {
100+
const orderedFiles = files.sort((a, b) => {
101+
return a.lastModified - b.lastModified;
102+
});
103+
setFiles(orderedFiles);
104+
toast.success(`${orderedFiles.length} files selected!`, {
101105
id: toastId,
102106
});
103107
}
@@ -160,7 +164,7 @@ const Page = () => {
160164
<div className="flex w-full flex-col 2xl:gap-y-4">
161165
{/* File Dropzone */}
162166
<div>
163-
<Dropzone onDrop={pdfCheckAndSelect}>
167+
<Dropzone onDrop={fileCheckAndSelect}>
164168
{({ getRootProps, getInputProps }) => (
165169
<section className="my-2 -mr-2 cursor-pointer rounded-2xl border-2 border-dashed p-8 text-center">
166170
<div {...getRootProps()}>

0 commit comments

Comments
 (0)