rollup-plugin-critical
Version:
Rollup plugin to generate critical CSS.
2 lines • 760 B
JavaScript
import*as e from"path";import{generate as t}from"critical";const n={inline:!1,extract:!1,width:1200,height:1200,penthouse:{blockJSRequests:!1}};function r(r,i){return{name:`critical`,async writeBundle(a,o){let s=[];for(let t of Object.values(o))if(t.type===`asset`&&t.fileName.endsWith(`.css`)){let n=e.join(a.dir||``,t.fileName);s.push(n)}if(s.length)for(let e of r.criticalPages){let a=r.criticalBase,o=r.criticalUrl+e.uri,c=r.criticalConfig&&r.criticalConfig.inline==1?e.template+`.html`:e.template+`_critical.min.css`,l=Object.assign({css:s},n,{base:a,src:o,target:c},r.criticalConfig);console.log(`Generating critical CSS from ${l.src} to ${l.target}`),await t(l,e=>{e&&console.error(e),i&&i(e)})}}}}export{r as default};
//# sourceMappingURL=index.js.map