@bicou/directus-extension-pdf-image
Version:
Directus extension to create a screenshot image for each uploaded PDF document
2 lines (1 loc) • 588 B
JavaScript
import{defineHook as e}from"@directus/extensions-sdk";import{pdf as a}from"pdf-to-img";import{Readable as i}from"node:stream";var t=e((({action:e},{services:t})=>{e("files.upload",(async({payload:e,key:o},s)=>{if("application/pdf"===e.type){const n=new t.AssetsService(s),{stream:p}=await n.getAsset(o),d=await a(p),r=await d.getPage(1);if(r){e.type="image/png",e.filename_download=e.filename_download.replace(/\.pdf$/i,"")+".png",e.filename_disk=e.filename_disk.replace(/\.pdf$/i,"")+".png";const a=new t.FilesService(s);await a.uploadOne(i.from(r),{...e})}}}))}));export{t as default};