@linefusion/directus-extension-text-extractor
Version:
Directus Text Extractor
2 lines (1 loc) • 920 B
JavaScript
;const t=[{name:"extract-text",config:{id:"text-extractor",async handler({file:t},{services:e,getSchema:a}){const r=await a();new(0,e.FilesService)({schema:r});const n=new(0,e.AssetsService)({schema:r}),o=await n.getAsset(t,{transformationParams:{}}),s=[];try{for(var c,i,l,x=((t,e,a)=>(a=(a,r)=>(r=t[a])&&(e[a]=e=>new Promise(((a,n,o)=>(e=r.call(t,e),o=e.done,Promise.resolve(e.value).then((t=>a({value:t,done:o})),n))))),(e=t[Symbol.asyncIterator])?e.call(t):(t=t[Symbol.iterator](),e={},a("next"),a("return"),e)))(o.stream);c=!(i=await x.next()).done;c=!1){const t=i.value;s.push(t)}}catch(i){l=[i]}finally{try{c&&(i=x.return)&&await i.call(x)}finally{if(l)throw l[0]}}const f=Buffer.concat(s),{extractText:u}=await async function(){return(await import("office-text-extractor")).getTextExtractor()}();return await u({input:f,type:"buffer"})}}}];exports.endpoints=[],exports.hooks=[],exports.operations=t;