const s3Storage = require("./s3Storage"); const PDF_PREFIX = "uploads/pdf"; const BOOK_SLIDE_PREFIX = "uploads/books"; const uploadPdf = async (fileData, fileName) => { const key = `${PDF_PREFIX}/${fileName}`; await s3Storage.uploadBuffer(key, fileData, "application/pdf"); return { fileName, url: s3Storage.getPublicUrl(key), }; }; const uploadBookSlide = async (buffer, imageName) => { const key = `${BOOK_SLIDE_PREFIX}/${imageName}.jpeg`; await s3Storage.uploadBuffer(key, buffer, "image/jpeg"); return s3Storage.getPublicUrl(key); }; const deletePdf = async (fileName) => { if (!fileName) return; try { await s3Storage.deleteObject(`${PDF_PREFIX}/${fileName}`); } catch (error) { console.log("Failed to delete PDF from S3:", error?.message); } }; const deleteBookSlide = async (imageName) => { if (!imageName) return; try { await s3Storage.deleteObject(`${BOOK_SLIDE_PREFIX}/${imageName}.jpeg`); } catch (error) { console.log("Failed to delete book slide from S3:", error?.message); } }; module.exports = { PDF_PREFIX, BOOK_SLIDE_PREFIX, uploadPdf, uploadBookSlide, deletePdf, deleteBookSlide, };