cqfill
Version:
Polyfill for CSS Container Queries
2 lines • 936 B
JavaScript
var a=/([\d.]+)([^]*)/,memo=(a,s)=>a in e?e[a]:e[a]=s(a),e=Object.create(null);function postcssCQFill(){return{postcssPlugin:"PostCSS CQFill",Declaration:{contain(a){a.cloneBefore({prop:"--css-contain"})}},AtRule:{container(e){var s;e.params=(s=e.params,memo(s,(e=>e.replace(/\(\s*([\w-]+)\s*(=|<|<=|>|>=)\s*([\w-]+)\s*(?:(<|<=|>|>=)\s*([\w-]+)\s*)?\)/g,((e,s,r,t,n,c)=>{const l=a.test(s),o=.0625*(l?-1:1),[i,p]=l?[t,s]:[s,t];return"("+("="===r[0]?"":">"===r[0]===l?"max-":"min-")+i+":"+("="!==r[0]&&1===r.length?p.replace(a,((a,e,s)=>Number(e)+o*(">"===r?1:-1)+s)):p)+(n?") and ("+(">"===n[0]?"min-":"max-")+i+":"+(1===n.length?c.replace(a,((a,e,s)=>Number(e)+o*(">"===n?-1:1)+s)):c):"")+")"})))));const r=e.cloneBefore({name:"media",params:`\\@container ${e.params}`});r.raws.afterName||(r.raws.afterName=" ")}}}}postcssCQFill.postcss=!0;var s=postcssCQFill;module.exports=Object.assign(s,{default:s})
//# sourceMappingUrl=postcss.map