vue-files-preview
Version:
A tool for previewing files such as doc, excel, pdf, image, markdown, txt, audio, and video and so on.
3 lines (2 loc) • 1.22 kB
JavaScript
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("../preview.const.js");function d(e){const t=e.name,i=t.lastIndexOf(".");return t.substring(i+1)}function u(e){const t=e.name,i=t.lastIndexOf(".");return t.substring(0,i)}function f(e){const t=c.getPreviewTypeByFileType(d(e)),i=l(t);return new Promise(n=>{const r=e,a=new FileReader;switch(i){case"text":a.readAsText(r),a.onload=()=>{n(a.result)};break;case"arrayBuffer":a.readAsArrayBuffer(r),a.onload=()=>{n(a.result)};break;case"image":n(window.URL.createObjectURL(r));break;case"pdf":{const s=new Blob([r],{type:"application/pdf"}),o=URL.createObjectURL(s);n(o);break}case"video":{const s=URL.createObjectURL(new Blob([r],{type:"video/mp4"}));n(s);break}default:n(window.URL.createObjectURL(r));break}})}function l(e){const t={text:c.textFilePreviewTypeList.includes(e),arrayBuffer:c.arrayBufferPreviewTypeList.includes(e),image:c.imagePreviewTypeList.includes(e),pdf:c.pdfPreviewTypeList.includes(e),video:c.videoPreviewTypeList.includes(e)};return Object.keys(t).find(i=>t[i])}exports.getFileName=u;exports.getFileRenderByFile=f;exports.getFileRenderType=l;exports.getFileType=d;
//# sourceMappingURL=utils.js.map