vite-plugin-optimize-image
Version:
Optimize image plugin in vite
2 lines (1 loc) • 673 B
JavaScript
import e from"node:path";import{readdirSync as o,statSync as r,renameSync as t}from"fs";import{cwd as n}from"node:process";const s=/\.(png|jpe?g)/g,i=n=>{try{o(n).forEach((o=>{const c=e.join(n,o);if(r(c).isDirectory())c.includes("/assets")||i(c);else if(s.test(o)){const e=c.replace(s,".webp");t(c,e)}}))}catch(e){console.error(e)}},c=(...o)=>{console.log("[34m","Execution optimize image file.");const r=o[0]||void 0,t=r?.distDir??"dist",c=e.join(n(),t);return{name:"custom",apply:e=>"production"===e.mode,transform:(e,o)=>{if(!o.includes("node_modules")){return{code:e.replace(s,".webp"),map:null}}return{code:e,map:null}},closeBundle:()=>{i(c)}}};export{c as default};