postcss-preset-env 7.3.1 → 7.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +1 -1
- package/package.json +19 -18
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,29 @@
|
|
|
1
1
|
# Changes to PostCSS Preset Env
|
|
2
2
|
|
|
3
|
+
### 7.3.2 (February 12, 2022)
|
|
4
|
+
|
|
5
|
+
- Updated `postcss-lab-function` to `4.1.0` (minor)
|
|
6
|
+
|
|
7
|
+
`postcss-lab-function` now supports [wide gamut colors](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-lab-function#displayp3) and [out of gamut color mapping](https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-lab-function#displayp3).
|
|
8
|
+
|
|
9
|
+
- Updated `css-blank-pseudo` to `3.0.3` (patch)
|
|
10
|
+
- Updated `css-has-pseudo` to `3.0.4` (patch)
|
|
11
|
+
- Updated `cssdb` to `6.2.1` (patch)
|
|
12
|
+
- Updated `postcss-color-functional-notation` to `4.2.2` (patch)
|
|
13
|
+
- Updated `postcss-color-hex-alpha` to `8.0.3` (patch)
|
|
14
|
+
- Updated `postcss-dir-pseudo-class` to `6.0.4` (patch)
|
|
15
|
+
- Updated `postcss-double-position-gradients` to `3.0.5` (patch)
|
|
16
|
+
- Updated `postcss-env-function` to `4.0.5` (patch)
|
|
17
|
+
- Updated `postcss-focus-visible` to `6.0.4` (patch)
|
|
18
|
+
- Updated `postcss-focus-within` to `5.0.4` (patch)
|
|
19
|
+
- Updated `postcss-gap-properties` to `3.0.3` (patch)
|
|
20
|
+
- Updated `postcss-image-set-function` to `4.0.6` (patch)
|
|
21
|
+
- Updated `postcss-logical` to `5.0.4` (patch)
|
|
22
|
+
- Updated `postcss-overflow-shorthand` to `3.0.3` (patch)
|
|
23
|
+
- Updated `postcss-place` to `7.0.4` (patch)
|
|
24
|
+
- Updated `postcss-pseudo-class-any-link` to `7.1.1` (patch)
|
|
25
|
+
- Updated `@csstools/postcss-progressive-custom-properties` to `1.1.0`.
|
|
26
|
+
|
|
3
27
|
### 7.3.1 (February 3, 2022)
|
|
4
28
|
|
|
5
29
|
- Ensured that `debug` option uses a single instance per run, this allows for `debug` to work on parallel runs within CI environments.
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("autoprefixer"),s=require("cssdb"),t=require("fs"),o=require("path"),r=require("postcss-attribute-case-insensitive"),i=require("css-blank-pseudo"),n=require("postcss-color-functional-notation"),c=require("postcss-color-hex-alpha"),a=require("postcss-color-rebeccapurple"),u=require("postcss-custom-media"),l=require("postcss-custom-properties"),p=require("postcss-custom-selectors"),f=require("postcss-dir-pseudo-class"),d=require("postcss-double-position-gradients"),m=require("postcss-env-function"),g=require("postcss-focus-visible"),b=require("postcss-focus-within"),h=require("postcss-font-variant"),y=require("postcss-gap-properties"),w=require("css-has-pseudo"),v=require("postcss-image-set-function"),$=require("postcss-initial"),q=require("postcss-lab-function"),k=require("postcss-logical"),O=require("postcss-media-minmax"),S=require("postcss-nesting"),j=require("postcss-overflow-shorthand"),x=require("postcss-page-break"),E=require("postcss-place"),P=require("css-prefers-color-scheme"),M=require("postcss-pseudo-class-any-link"),_=require("postcss-replace-overflow-wrap"),R=require("postcss-selector-not"),A=require("@csstools/postcss-is-pseudo-class"),F=require("@csstools/postcss-hwb-function"),N=require("postcss-opacity-percentage"),T=require("postcss-clamp"),B=require("@csstools/postcss-font-format-keywords"),U=require("@csstools/postcss-normalize-display-values"),W=require("browserslist");function C(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var I=C(e),V=C(s),D=C(t),L=C(o),J=C(r),z=C(i),G=C(n),H=C(c),K=C(a),Q=C(u),X=C(l),Y=C(p),Z=C(f),ee=C(d),se=C(m),te=C(g),oe=C(b),re=C(h),ie=C(y),ne=C(w),ce=C(v),ae=C($),ue=C(q),le=C(k),pe=C(O),fe=C(S),de=C(j),me=C(x),ge=C(E),be=C(P),he=C(M),ye=C(_),we=C(R),ve=C(A),$e=C(F),qe=C(N),ke=C(T),Oe=C(B),Se=C(U),je=C(W);async function xe(e,s,t,o){const r=function(e){return`:root {\n${Object.keys(e).reduce(((s,t)=>(s.push(`\t${t}: ${e[t]};`),s)),[]).join("\n")}\n}\n`}(t),i=function(e){return`${Object.keys(e).reduce(((s,t)=>(s.push(`@custom-media ${t} ${e[t]};`),s)),[]).join("\n")}\n`}(s),n=function(e){return`${Object.keys(e).reduce(((s,t)=>(s.push(`@custom-selector ${t} ${e[t]};`),s)),[]).join("\n")}\n`}(o),c=`${i}\n${n}\n${r}`;await Re(e,c)}function Ee(e,s){return`\n\t${e}: {\n${Object.keys(s).reduce(((e,t)=>(e.push(`\t\t'${Ae(t)}': '${Ae(s[t])}'`),e)),[]).join(",\n")}\n\t}`}function Pe(e,s){return`export const ${e} = {\n${Object.keys(s).reduce(((e,t)=>(e.push(`\t'${Ae(t)}': '${Ae(s[t])}'`),e)),[]).join(",\n")}\n};\n`}function Me(e,s){return Promise.all([].concat(s).map((async s=>{if(s instanceof Function)await s({customMedia:_e(e.customMedia),customProperties:_e(e.customProperties),customSelectors:_e(e.customSelectors)});else{const t=s===Object(s)?s:{to:String(s)},o=t.toJSON||_e;if("customMedia"in t||"customProperties"in t||"customSelectors"in t)t.customMedia=o(e.customMedia),t.customProperties=o(e.customProperties),t.customSelectors=o(e.customSelectors);else if("custom-media"in t||"custom-properties"in t||"custom-selectors"in t)t["custom-media"]=o(e.customMedia),t["custom-properties"]=o(e.customProperties),t["custom-selectors"]=o(e.customSelectors);else{const s=String(t.to||""),r=(t.type||L.default.extname(t.to).slice(1)).toLowerCase(),i=o(e.customMedia),n=o(e.customProperties),c=o(e.customSelectors);"css"===r&&await xe(s,i,n,c),"js"===r&&await async function(e,s,t,o){const r=`module.exports = {${Ee("customMedia",s)},${Ee("customProperties",t)},${Ee("customSelectors",o)}\n};\n`;await Re(e,r)}(s,i,n,c),"json"===r&&await async function(e,s,t,o){const r=`${JSON.stringify({"custom-media":s,"custom-properties":t,"custom-selectors":o},null," ")}\n`;await Re(e,r)}(s,i,n,c),"mjs"===r&&await async function(e,s,t,o){const r=`${Pe("customMedia",s)}\n${Pe("customProperties",t)}\n${Pe("customSelectors",o)}`;await Re(e,r)}(s,i,n,c)}}})))}function _e(e){return Object.keys(e).reduce(((s,t)=>(s[t]=String(e[t]),s)),{})}function Re(e,s){return new Promise(((t,o)=>{D.default.writeFile(e,s,(e=>{e?o(e):t()}))}))}function Ae(e){return e.replace(/\\([\s\S])|(')/g,"\\$1$2").replace(/\n/g,"\\n").replace(/\r/g,"\\r")}function Fe(){return{postcssPlugin:"postcss-system-ui-font",Declaration(e){Ne.test(e.prop)&&(e.value.includes(Be.join(", "))||(e.value=e.value.replace(Ue,We)))}}}Fe.postcss=!0;const Ne=/(?:^(?:-|\\002d){2})|(?:^font(?:-family)?$)/i,Te="[\\f\\n\\r\\x09\\x20]",Be=["system-ui","-apple-system","Segoe UI","Roboto","Ubuntu","Cantarell","Noto Sans","sans-serif"],Ue=new RegExp(`(^|,|${Te}+)(?:system-ui${Te}*)(?:,${Te}*(?:${Be.join("|")})${Te}*)?(,|$)`,"i"),We=`$1${Be.join(", ")}$2`,Ce={"css-blank-pseudo":"blank-pseudo-class","css-has-pseudo":"has-pseudo-class","css-prefers-color-scheme":"prefers-color-scheme-query","postcss-attribute-case-insensitive":"case-insensitive-attributes","postcss-clamp":"clamp","postcss-color-functional-notation":"color-functional-notation","postcss-color-hex-alpha":"hexadecimal-alpha-notation","postcss-color-rebeccapurple":"rebeccapurple-color","postcss-custom-media":"custom-media-queries","postcss-custom-properties":"custom-properties","postcss-custom-selectors":"custom-selectors","postcss-dir-pseudo-class":"dir-pseudo-class","postcss-double-position-gradients":"double-position-gradients","postcss-env-function":"environment-variables","postcss-focus-visible":"focus-visible-pseudo-class","postcss-focus-within":"focus-within-pseudo-class","postcss-font-format-keywords":"font-format-keywords","postcss-font-variant":"font-variant-property","postcss-gap-properties":"gap-properties","postcss-hwb-function":"hwb-function","postcss-image-set-function":"image-set-function","postcss-initial":"all-property","postcss-is-pseudo-class":"is-pseudo-class","postcss-lab-function":"lab-function","postcss-logical":"logical-properties-and-values","postcss-media-minmax":"media-query-ranges","postcss-nesting":"nesting-rules","postcss-normalize-display-values":"display-two-values","postcss-opacity-percentage":"opacity-percentage","postcss-overflow-shorthand":"overflow-property","postcss-page-break":"break-properties","postcss-place":"place-properties","postcss-pseudo-class-any-link":"any-link-pseudo-class","postcss-replace-overflow-wrap":"overflow-wrap-property","postcss-selector-not":"not-pseudo-class","postcss-system-ui-font-family":"system-ui-font-family"},Ie=(()=>{const e={};for(const[s,t]of Object.entries(Ce))e[t]=s;return e})(),Ve=new Map([["all-property",ae.default],["any-link-pseudo-class",he.default],["blank-pseudo-class",z.default],["break-properties",me.default],["case-insensitive-attributes",J.default],["clamp",ke.default],["color-functional-notation",G.default],["custom-media-queries",Q.default],["custom-properties",X.default],["custom-selectors",Y.default],["dir-pseudo-class",Z.default],["display-two-values",Se.default],["double-position-gradients",ee.default],["environment-variables",se.default],["focus-visible-pseudo-class",te.default],["focus-within-pseudo-class",oe.default],["font-format-keywords",Oe.default],["font-variant-property",re.default],["gap-properties",ie.default],["hwb-function",$e.default],["has-pseudo-class",ne.default],["hexadecimal-alpha-notation",H.default],["image-set-function",ce.default],["is-pseudo-class",ve.default],["lab-function",ue.default],["logical-properties-and-values",le.default],["media-query-ranges",pe.default],["nesting-rules",fe.default],["not-pseudo-class",we.default],["opacity-percentage",qe.default],["overflow-property",de.default],["overflow-wrap-property",ye.default],["place-properties",ge.default],["prefers-color-scheme-query",be.default],["rebeccapurple-color",K.default],["system-ui-font-family",Fe]]);function De(e,s){let t="unknown",o=1/0;for(let r=0;r<s.length;r++){const i=Le(e,s[r]);i<o&&(o=i,t=s[r])}return{mostSimilar:t,distance:o}}function Le(e,s){if(!e.length)return s.length;if(!s.length)return e.length;const t=[];for(let o=0;o<=s.length;o++){t[o]=[o];for(let r=1;r<=e.length;r++)t[o][r]=0===o?r:Math.min(t[o-1][r]+1,t[o][r-1]+1,t[o-1][r-1]+(e[r-1]===s[o-1]?0:1))}return t[s.length][e.length]}class Je{constructor(){this.logs=[]}log(e){this.logs.push(e)}resetLogger(){this.logs.length=0}dumpLogs(e){e&&this.logs.forEach((s=>e.warn(s))),this.resetLogger()}}const ze={"blank-pseudo-class":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-blank-pseudo/README-BROWSER.md","focus-visible-pseudo-class":"https://github.com/WICG/focus-visible","focus-within-pseudo-class":"https://github.com/jsxtools/focus-within/blob/master/README-BROWSER.md","has-pseudo-class":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-has-pseudo/README-BROWSER.md","prefers-color-scheme-query":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-prefers-color-scheme/README-BROWSER.md"},Ge=["blank-pseudo-class","focus-visible-pseudo-class","focus-within-pseudo-class","has-pseudo-class","prefers-color-scheme-query"];function He(e,s){if(!e)return!1;if("string"==typeof e)return!0;if(Array.isArray(e)){for(let t=0;t<e.length;t++){if("string"==typeof e[t])return!0;if(e[t]&&s in Object(e[t]))return!0}return!1}return s in Object(e)}function Ke(e,s,t){return Math.max(e,Math.min(s,t))}const Qe=Symbol("insertBefore"),Xe=Symbol("insertAfter"),Ye=Symbol("insertOrder"),Ze=Symbol("plugin");function es(e,s,t){if("insertBefore"!==t&&"insertAfter"!==t)return[];const o="insertBefore"===t?Qe:Xe,r=[];for(const t in s){if(!Object.hasOwnProperty.call(s,t))continue;if(!e.find((e=>e.id===t)))continue;let i=s[t];Array.isArray(i)||(i=[i]);for(let e=0;e<i.length;e++)r.push({id:t,[Ze]:i[e],[Ye]:e,[o]:!0})}return r}var ss=["custom-media-queries","custom-properties","environment-variables","image-set-function","media-query-ranges","prefers-color-scheme-query","nesting-rules","custom-selectors","any-link-pseudo-class","case-insensitive-attributes","focus-visible-pseudo-class","focus-within-pseudo-class","not-pseudo-class","logical-properties-and-values","dir-pseudo-class","all-property","color-functional-notation","double-position-gradients","hexadecimal-alpha-notation","hwb-function","lab-function","rebeccapurple-color","blank-pseudo-class","break-properties","font-variant-property","is-pseudo-class","has-pseudo-class","gap-properties","overflow-property","overflow-wrap-property","place-properties","system-ui-font-family"];function ts(e,s,t){return e.concat(es(e,s,"insertBefore"),es(e,t,"insertAfter")).filter((e=>function(e){return!!e[Qe]||!!e[Xe]||!!Ve.has(e.id)}(e))).sort(((e,s)=>function(e,s){return e.id===s.id?e[Qe]&&s[Qe]||e[Xe]&&s[Xe]?Ke(-1,e[Ye]-s[Ye],1):e[Qe]||s[Xe]?-1:e[Xe]||s[Qe]?1:0:Ke(-1,ss.indexOf(e.id)-ss.indexOf(s.id),1)}(e,s)))}const os=["ie","edge","firefox","chrome","safari","opera","ios_saf","android","op_mob","and_chr","and_ff","and_uc","samsung","and_qq","baidu","kaios"];function rs(e){if(!e)return[];if(!("browser_support"in e))return["> 0%"];const s=[];return os.forEach((t=>{const o=e.browser_support[t];"string"==typeof o&&/^[0-9|.]+$/.test(o)?s.push(`${t} < ${e.browser_support[t]}`):s.push(`${t} >= 1`)})),s}function is(e,s,t,o){const r=je.default(e,{ignoreUnknownVersions:!0});switch(s.id){case"is-pseudo-class":return{onComplexSelector:"warning"};case"nesting-rules":if(function(e,s){const t=rs(e);if(s.some((e=>je.default(t,{ignoreUnknownVersions:!0}).some((s=>s===e)))))return!0;return!1}(t.find((e=>"is-pseudo-class"===e.id)),r))return o.log('Disabling :is on "nesting-rules" due to lack of browser support.'),{noIsPseudoSelector:!0};return{};case"any-link-pseudo-class":if(r.find((e=>e.startsWith("ie ")||e.startsWith("edge "))))return o.log('Adding area[href] fallbacks for ":any-link" support in Edge and IE.'),{subFeatures:{areaHrefNeedsFixing:!0}};return{};default:return{}}}function ns(e,s,t,o){const r=Object(s.features),i=!("enableClientSidePolyfills"in s)||s.enableClientSidePolyfills,n=Object(s.insertBefore),c=Object(s.insertAfter),a=s.browsers,u=Ke(0,function(e){const s=parseInt(e,10);return Number.isNaN(s)?0:s}(s.minimumVendorImplementations),3);u>0&&o.log(`Using features with ${u} or more vendor implementations`);const l=function(e,s){let t=2;if(void 0===e.stage)return s.log(`Using features from Stage ${t} (default)`),t;if(!1===e.stage)t=5;else{let s=parseInt(e.stage,10);Number.isNaN(s)&&(s=0),t=Ke(0,s,5)}return 5===t?s.log('Stage has been disabled, features will be handled via the "features" option.'):s.log(`Using features from Stage ${t}`),t}(s,o);2===l&&t&&!1===t.preserve&&(e=JSON.parse(JSON.stringify(e))).forEach((e=>{("blank-pseudo-class"===e.id||"prefers-color-scheme-query"===e.id)&&(e.stage=1)}));const p=ts(e,n,c).map((e=>function(e){const s=rs(e);if(e[Qe]||e[Xe]){let t=e.id;return t=e.insertBefore?`before-${t}`:`after-${t}`,{browsers:s,vendors_implementations:e.vendors_implementations,plugin:e[Ze],id:t,stage:6}}return{browsers:s,vendors_implementations:e.vendors_implementations,plugin:Ve.get(e.id),id:e.id,stage:e.stage}}(e))).filter((e=>0===u||(!(!e[Qe]&&!e[Xe])||(u<=e.vendors_implementations||(o.log(` ${e.id} with ${e.vendors_implementations} vendor implementations has been disabled`),!1))))).filter((e=>{const s=e.stage>=l,t=i||!Ge.includes(e.id),n=!1===r[e.id],c=r[e.id]?r[e.id]:s&&t;return n?o.log(` ${e.id} has been disabled by options`):s?t||o.log(` ${e.id} has been disabled by "enableClientSidePolyfills: false".`):c?o.log(` ${e.id} has been enabled by options`):o.log(` ${e.id} with stage ${e.stage} has been disabled`),c})).map((s=>function(e,s,t,o,r,i){let n,c;return n=is(s,o,e,i),!0===t[o.id]?r&&(n=Object.assign({},n,r)):n=r?Object.assign({},n,r,t[o.id]):Object.assign({},n,t[o.id]),c=o.plugin.postcss&&"function"==typeof o.plugin?o.plugin(n):o.plugin&&o.plugin.default&&"function"==typeof o.plugin.default&&o.plugin.default.postcss?o.plugin.default(n):o.plugin,{browsers:o.browsers,vendors_implementations:o.vendors_implementations,plugin:c,pluginOptions:n,id:o.id}}(e,a,r,s,t,o))),f=je.default(a,{ignoreUnknownVersions:!0});return p.filter((e=>{if(e.id in r)return r[e.id];if(function(e){if("importFrom"in Object(e.pluginOptions))switch(e.id){case"custom-media-queries":if(He(e.pluginOptions.importFrom,"customMedia"))return!0;break;case"custom-properties":if(He(e.pluginOptions.importFrom,"customProperties"))return!0;break;case"environment-variables":if(He(e.pluginOptions.importFrom,"environmentVariables"))return!0;break;case"custom-selectors":if(He(e.pluginOptions.importFrom,"customSelectors"))return!0}if("exportTo"in Object(e.pluginOptions))switch(e.id){case"custom-media-queries":if(He(e.pluginOptions.exportTo,"customMedia"))return!0;break;case"custom-properties":if(He(e.pluginOptions.exportTo,"customProperties"))return!0;break;case"environment-variables":if(He(e.pluginOptions.exportTo,"environmentVariables"))return!0;break;case"custom-selectors":if(He(e.pluginOptions.exportTo,"customSelectors"))return!0}return!1}(e))return!0;const s=je.default(e.browsers,{ignoreUnknownVersions:!0}),t=f.some((e=>s.some((s=>s===e))));return t||o.log(`${e.id} disabled due to browser support`),t}))}const cs=e=>{const s=new Je,t=Object(e),o=Object.keys(Object(t.features)),r=t.browsers,i=function(e){if("importFrom"in e||"exportTo"in e||"preserve"in e){const s={};return"importFrom"in e&&(s.importFrom=e.importFrom),"exportTo"in e&&(s.exportTo={customMedia:{},customProperties:{},customSelectors:{}}),"preserve"in e&&(s.preserve=e.preserve),s}return!1}(t),n=ns(V.default,t,i,s),c=n.map((e=>e.plugin));!1!==t.autoprefixer&&c.push(I.default(Object.assign({overrideBrowserslist:r},t.autoprefixer))),function(e,s,t){if(s.debug){t.log("Enabling the following feature(s):");const s=[];e.forEach((e=>{e.id.startsWith("before")||e.id.startsWith("after")?t.log(` ${e.id} (injected via options)`):t.log(` ${e.id}`),void 0!==ze[e.id]&&s.push(e.id)})),s.length&&(t.log("These feature(s) need a browser library to work:"),s.forEach((e=>t.log(` ${e}: ${ze[e]}`))))}}(n,t,s);const a=()=>({postcssPlugin:"postcss-preset-env",OnceExit:function(r,{result:n}){!function(e,s,t){const o=Object.keys(Ie),r=Object.keys(Ce);e.forEach((e=>{if(o.includes(e))return;const i=De(e,o),n=De(e,r);i.distance<n.distance?s.warn(t,`Unknown feature: "${e}" did you mean: "${i.mostSimilar}"`):s.warn(t,`Unknown feature: "${e}" did you mean: "${Ce[n.mostSimilar]}"`)}))}(o,r,n),t.debug&&s.dumpLogs(n),s.resetLogger(),t.exportTo&&Me(i.exportTo,e.exportTo)}});return a.postcss=!0,{postcssPlugin:"postcss-preset-env",plugins:[...c,a()]}};cs.postcss=!0,module.exports=cs;
|
|
1
|
+
"use strict";var e=require("autoprefixer"),s=require("cssdb"),t=require("@csstools/postcss-progressive-custom-properties"),o=require("fs"),r=require("path"),i=require("browserslist"),n=require("postcss-attribute-case-insensitive"),c=require("css-blank-pseudo"),u=require("postcss-color-functional-notation"),a=require("postcss-color-hex-alpha"),l=require("postcss-color-rebeccapurple"),p=require("postcss-custom-media"),f=require("postcss-custom-properties"),d=require("postcss-custom-selectors"),m=require("postcss-dir-pseudo-class"),g=require("postcss-double-position-gradients"),b=require("postcss-env-function"),h=require("postcss-focus-visible"),y=require("postcss-focus-within"),w=require("postcss-font-variant"),v=require("postcss-gap-properties"),$=require("css-has-pseudo"),q=require("postcss-image-set-function"),k=require("postcss-initial"),O=require("postcss-lab-function"),S=require("postcss-logical"),j=require("postcss-media-minmax"),x=require("postcss-nesting"),P=require("postcss-overflow-shorthand"),E=require("postcss-page-break"),M=require("postcss-place"),_=require("css-prefers-color-scheme"),R=require("postcss-pseudo-class-any-link"),A=require("postcss-replace-overflow-wrap"),F=require("postcss-selector-not"),N=require("@csstools/postcss-is-pseudo-class"),T=require("@csstools/postcss-hwb-function"),B=require("postcss-opacity-percentage"),U=require("postcss-clamp"),W=require("@csstools/postcss-font-format-keywords"),C=require("@csstools/postcss-normalize-display-values");function I(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var V=I(e),D=I(s),L=I(t),J=I(o),z=I(r),G=I(i),H=I(n),K=I(c),Q=I(u),X=I(a),Y=I(l),Z=I(p),ee=I(f),se=I(d),te=I(m),oe=I(g),re=I(b),ie=I(h),ne=I(y),ce=I(w),ue=I(v),ae=I($),le=I(q),pe=I(k),fe=I(O),de=I(S),me=I(j),ge=I(x),be=I(P),he=I(E),ye=I(M),we=I(_),ve=I(R),$e=I(A),qe=I(F),ke=I(N),Oe=I(T),Se=I(B),je=I(U),xe=I(W),Pe=I(C);const Ee={"blank-pseudo-class":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-blank-pseudo/README-BROWSER.md","focus-visible-pseudo-class":"https://github.com/WICG/focus-visible","focus-within-pseudo-class":"https://github.com/jsxtools/focus-within/blob/master/README-BROWSER.md","has-pseudo-class":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-has-pseudo/README-BROWSER.md","prefers-color-scheme-query":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-prefers-color-scheme/README-BROWSER.md"},Me=["blank-pseudo-class","focus-visible-pseudo-class","focus-within-pseudo-class","has-pseudo-class","prefers-color-scheme-query"];async function _e(e,s,t,o){const r=function(e){return`:root {\n${Object.keys(e).reduce(((s,t)=>(s.push(`\t${t}: ${e[t]};`),s)),[]).join("\n")}\n}\n`}(t),i=function(e){return`${Object.keys(e).reduce(((s,t)=>(s.push(`@custom-media ${t} ${e[t]};`),s)),[]).join("\n")}\n`}(s),n=function(e){return`${Object.keys(e).reduce(((s,t)=>(s.push(`@custom-selector ${t} ${e[t]};`),s)),[]).join("\n")}\n`}(o),c=`${i}\n${n}\n${r}`;await Te(e,c)}function Re(e,s){return`\n\t${e}: {\n${Object.keys(s).reduce(((e,t)=>(e.push(`\t\t'${Be(t)}': '${Be(s[t])}'`),e)),[]).join(",\n")}\n\t}`}function Ae(e,s){return`export const ${e} = {\n${Object.keys(s).reduce(((e,t)=>(e.push(`\t'${Be(t)}': '${Be(s[t])}'`),e)),[]).join(",\n")}\n};\n`}function Fe(e,s){return Promise.all([].concat(s).map((async s=>{if(s instanceof Function)await s({customMedia:Ne(e.customMedia),customProperties:Ne(e.customProperties),customSelectors:Ne(e.customSelectors)});else{const t=s===Object(s)?s:{to:String(s)},o=t.toJSON||Ne;if("customMedia"in t||"customProperties"in t||"customSelectors"in t)t.customMedia=o(e.customMedia),t.customProperties=o(e.customProperties),t.customSelectors=o(e.customSelectors);else if("custom-media"in t||"custom-properties"in t||"custom-selectors"in t)t["custom-media"]=o(e.customMedia),t["custom-properties"]=o(e.customProperties),t["custom-selectors"]=o(e.customSelectors);else{const s=String(t.to||""),r=(t.type||z.default.extname(t.to).slice(1)).toLowerCase(),i=o(e.customMedia),n=o(e.customProperties),c=o(e.customSelectors);"css"===r&&await _e(s,i,n,c),"js"===r&&await async function(e,s,t,o){const r=`module.exports = {${Re("customMedia",s)},${Re("customProperties",t)},${Re("customSelectors",o)}\n};\n`;await Te(e,r)}(s,i,n,c),"json"===r&&await async function(e,s,t,o){const r=`${JSON.stringify({"custom-media":s,"custom-properties":t,"custom-selectors":o},null," ")}\n`;await Te(e,r)}(s,i,n,c),"mjs"===r&&await async function(e,s,t,o){const r=`${Ae("customMedia",s)}\n${Ae("customProperties",t)}\n${Ae("customSelectors",o)}`;await Te(e,r)}(s,i,n,c)}}})))}function Ne(e){return Object.keys(e).reduce(((s,t)=>(s[t]=String(e[t]),s)),{})}function Te(e,s){return new Promise(((t,o)=>{J.default.writeFile(e,s,(e=>{e?o(e):t()}))}))}function Be(e){return e.replace(/\\([\s\S])|(')/g,"\\$1$2").replace(/\n/g,"\\n").replace(/\r/g,"\\r")}function Ue(e,s){if(!e)return!1;if("string"==typeof e)return!0;if(Array.isArray(e)){for(let t=0;t<e.length;t++){if("string"==typeof e[t])return!0;if(e[t]&&s in Object(e[t]))return!0}return!1}return s in Object(e)}function We(e,s,t){return Math.max(e,Math.min(s,t))}const Ce=Symbol("insertBefore"),Ie=Symbol("insertAfter"),Ve=Symbol("insertOrder"),De=Symbol("plugin");function Le(e,s,t){if("insertBefore"!==t&&"insertAfter"!==t)return[];const o="insertBefore"===t?Ce:Ie,r=[];for(const t in s){if(!Object.hasOwnProperty.call(s,t))continue;if(!e.find((e=>e.id===t)))continue;let i=s[t];Array.isArray(i)||(i=[i]);for(let e=0;e<i.length;e++)r.push({id:t,[De]:i[e],[Ve]:e,[o]:!0})}return r}var Je=["custom-media-queries","custom-properties","environment-variables","image-set-function","media-query-ranges","prefers-color-scheme-query","nesting-rules","custom-selectors","any-link-pseudo-class","case-insensitive-attributes","focus-visible-pseudo-class","focus-within-pseudo-class","not-pseudo-class","logical-properties-and-values","dir-pseudo-class","all-property","color-functional-notation","double-position-gradients","hexadecimal-alpha-notation","hwb-function","lab-function","rebeccapurple-color","blank-pseudo-class","break-properties","font-variant-property","is-pseudo-class","has-pseudo-class","gap-properties","overflow-property","overflow-wrap-property","place-properties","system-ui-font-family"];function ze(){return{postcssPlugin:"postcss-system-ui-font",Declaration(e){Ge.test(e.prop)&&(e.value.includes(Ke.join(", "))||(e.value=e.value.replace(Qe,Xe)))}}}ze.postcss=!0;const Ge=/(?:^(?:-|\\002d){2})|(?:^font(?:-family)?$)/i,He="[\\f\\n\\r\\x09\\x20]",Ke=["system-ui","-apple-system","Segoe UI","Roboto","Ubuntu","Cantarell","Noto Sans","sans-serif"],Qe=new RegExp(`(^|,|${He}+)(?:system-ui${He}*)(?:,${He}*(?:${Ke.join("|")})${He}*)?(,|$)`,"i"),Xe=`$1${Ke.join(", ")}$2`,Ye={"css-blank-pseudo":"blank-pseudo-class","css-has-pseudo":"has-pseudo-class","css-prefers-color-scheme":"prefers-color-scheme-query","postcss-attribute-case-insensitive":"case-insensitive-attributes","postcss-clamp":"clamp","postcss-color-functional-notation":"color-functional-notation","postcss-color-hex-alpha":"hexadecimal-alpha-notation","postcss-color-rebeccapurple":"rebeccapurple-color","postcss-custom-media":"custom-media-queries","postcss-custom-properties":"custom-properties","postcss-custom-selectors":"custom-selectors","postcss-dir-pseudo-class":"dir-pseudo-class","postcss-double-position-gradients":"double-position-gradients","postcss-env-function":"environment-variables","postcss-focus-visible":"focus-visible-pseudo-class","postcss-focus-within":"focus-within-pseudo-class","postcss-font-format-keywords":"font-format-keywords","postcss-font-variant":"font-variant-property","postcss-gap-properties":"gap-properties","postcss-hwb-function":"hwb-function","postcss-image-set-function":"image-set-function","postcss-initial":"all-property","postcss-is-pseudo-class":"is-pseudo-class","postcss-lab-function":"lab-function","postcss-logical":"logical-properties-and-values","postcss-media-minmax":"media-query-ranges","postcss-nesting":"nesting-rules","postcss-normalize-display-values":"display-two-values","postcss-opacity-percentage":"opacity-percentage","postcss-overflow-shorthand":"overflow-property","postcss-page-break":"break-properties","postcss-place":"place-properties","postcss-pseudo-class-any-link":"any-link-pseudo-class","postcss-replace-overflow-wrap":"overflow-wrap-property","postcss-selector-not":"not-pseudo-class","postcss-system-ui-font-family":"system-ui-font-family"},Ze=(()=>{const e={};for(const[s,t]of Object.entries(Ye))e[t]=s;return e})(),es=new Map([["all-property",pe.default],["any-link-pseudo-class",ve.default],["blank-pseudo-class",K.default],["break-properties",he.default],["case-insensitive-attributes",H.default],["clamp",je.default],["color-functional-notation",Q.default],["custom-media-queries",Z.default],["custom-properties",ee.default],["custom-selectors",se.default],["dir-pseudo-class",te.default],["display-two-values",Pe.default],["double-position-gradients",oe.default],["environment-variables",re.default],["focus-visible-pseudo-class",ie.default],["focus-within-pseudo-class",ne.default],["font-format-keywords",xe.default],["font-variant-property",ce.default],["gap-properties",ue.default],["hwb-function",Oe.default],["has-pseudo-class",ae.default],["hexadecimal-alpha-notation",X.default],["image-set-function",le.default],["is-pseudo-class",ke.default],["lab-function",fe.default],["logical-properties-and-values",de.default],["media-query-ranges",me.default],["nesting-rules",ge.default],["not-pseudo-class",qe.default],["opacity-percentage",Se.default],["overflow-property",be.default],["overflow-wrap-property",$e.default],["place-properties",ye.default],["prefers-color-scheme-query",we.default],["rebeccapurple-color",Y.default],["system-ui-font-family",ze]]);function ss(e,s,t){return e.concat(Le(e,s,"insertBefore"),Le(e,t,"insertAfter")).filter((e=>function(e){return!!e[Ce]||!!e[Ie]||!!es.has(e.id)}(e))).sort(((e,s)=>function(e,s){return e.id===s.id?e[Ce]&&s[Ce]||e[Ie]&&s[Ie]?We(-1,e[Ve]-s[Ve],1):e[Ce]||s[Ie]?-1:e[Ie]||s[Ce]?1:0:We(-1,Je.indexOf(e.id)-Je.indexOf(s.id),1)}(e,s)))}const ts=["ie","edge","firefox","chrome","safari","opera","ios_saf","android","op_mob","and_chr","and_ff","and_uc","samsung","and_qq","baidu","kaios"];function os(e){if(!e)return[];if(!("browser_support"in e))return["> 0%"];const s=[];return ts.forEach((t=>{const o=e.browser_support[t];"string"==typeof o&&/^[0-9|.]+$/.test(o)?s.push(`${t} < ${e.browser_support[t]}`):s.push(`${t} >= 1`)})),s}function rs(e,s,t,o){const r=G.default(e,{ignoreUnknownVersions:!0});switch(s.id){case"is-pseudo-class":return{onComplexSelector:"warning"};case"nesting-rules":if(function(e,s){const t=os(e);if(s.some((e=>G.default(t,{ignoreUnknownVersions:!0}).some((s=>s===e)))))return!0;return!1}(t.find((e=>"is-pseudo-class"===e.id)),r))return o.log('Disabling :is on "nesting-rules" due to lack of browser support.'),{noIsPseudoSelector:!0};return{};case"any-link-pseudo-class":if(r.find((e=>e.startsWith("ie ")||e.startsWith("edge "))))return o.log('Adding area[href] fallbacks for ":any-link" support in Edge and IE.'),{subFeatures:{areaHrefNeedsFixing:!0}};return{};default:return{}}}function is(e,s,t,o){const r=Object(s.features),i=!("enableClientSidePolyfills"in s)||s.enableClientSidePolyfills,n=Object(s.insertBefore),c=Object(s.insertAfter),u=s.browsers,a=We(0,function(e){const s=parseInt(e,10);return Number.isNaN(s)?0:s}(s.minimumVendorImplementations),3);a>0&&o.log(`Using features with ${a} or more vendor implementations`);const l=function(e,s){let t=2;if(void 0===e.stage)return s.log(`Using features from Stage ${t} (default)`),t;if(!1===e.stage)t=5;else{let s=parseInt(e.stage,10);Number.isNaN(s)&&(s=0),t=We(0,s,5)}return 5===t?s.log('Stage has been disabled, features will be handled via the "features" option.'):s.log(`Using features from Stage ${t}`),t}(s,o);2===l&&t&&!1===t.preserve&&(e=JSON.parse(JSON.stringify(e))).forEach((e=>{("blank-pseudo-class"===e.id||"prefers-color-scheme-query"===e.id)&&(e.stage=1)}));const p=ss(e,n,c).map((e=>function(e){const s=os(e);if(e[Ce]||e[Ie]){let t=e.id;return t=e.insertBefore?`before-${t}`:`after-${t}`,{browsers:s,vendors_implementations:e.vendors_implementations,plugin:e[De],id:t,stage:6}}return{browsers:s,vendors_implementations:e.vendors_implementations,plugin:es.get(e.id),id:e.id,stage:e.stage}}(e))).filter((e=>0===a||(!(!e[Ce]&&!e[Ie])||(a<=e.vendors_implementations||(o.log(` ${e.id} with ${e.vendors_implementations} vendor implementations has been disabled`),!1))))).filter((e=>{const s=e.stage>=l,t=i||!Me.includes(e.id),n=!1===r[e.id],c=r[e.id]?r[e.id]:s&&t;return n?o.log(` ${e.id} has been disabled by options`):s?t||o.log(` ${e.id} has been disabled by "enableClientSidePolyfills: false".`):c?o.log(` ${e.id} has been enabled by options`):o.log(` ${e.id} with stage ${e.stage} has been disabled`),c})).map((s=>function(e,s,t,o,r,i){let n,c;return n=rs(s,o,e,i),!0===t[o.id]?r&&(n=Object.assign({},n,r)):n=r?Object.assign({},n,r,t[o.id]):Object.assign({},n,t[o.id]),n.enableProgressiveCustomProperties=!1,c=o.plugin.postcss&&"function"==typeof o.plugin?o.plugin(n):o.plugin&&o.plugin.default&&"function"==typeof o.plugin.default&&o.plugin.default.postcss?o.plugin.default(n):o.plugin,{browsers:o.browsers,vendors_implementations:o.vendors_implementations,plugin:c,pluginOptions:n,id:o.id}}(e,u,r,s,t,o))),f=G.default(u,{ignoreUnknownVersions:!0});return p.filter((e=>{if(e.id in r)return r[e.id];if(function(e){if("importFrom"in Object(e.pluginOptions))switch(e.id){case"custom-media-queries":if(Ue(e.pluginOptions.importFrom,"customMedia"))return!0;break;case"custom-properties":if(Ue(e.pluginOptions.importFrom,"customProperties"))return!0;break;case"environment-variables":if(Ue(e.pluginOptions.importFrom,"environmentVariables"))return!0;break;case"custom-selectors":if(Ue(e.pluginOptions.importFrom,"customSelectors"))return!0}if("exportTo"in Object(e.pluginOptions))switch(e.id){case"custom-media-queries":if(Ue(e.pluginOptions.exportTo,"customMedia"))return!0;break;case"custom-properties":if(Ue(e.pluginOptions.exportTo,"customProperties"))return!0;break;case"environment-variables":if(Ue(e.pluginOptions.exportTo,"environmentVariables"))return!0;break;case"custom-selectors":if(Ue(e.pluginOptions.exportTo,"customSelectors"))return!0}return!1}(e))return!0;const s=G.default(e.browsers,{ignoreUnknownVersions:!0}),t=f.some((e=>s.some((s=>s===e))));return t||o.log(`${e.id} disabled due to browser support`),t}))}class ns{constructor(){this.logs=[]}log(e){this.logs.push(e)}resetLogger(){this.logs.length=0}dumpLogs(e){e&&this.logs.forEach((s=>e.warn(s))),this.resetLogger()}}function cs(e,s){let t="unknown",o=1/0;for(let r=0;r<s.length;r++){const i=us(e,s[r]);i<o&&(o=i,t=s[r])}return{mostSimilar:t,distance:o}}function us(e,s){if(!e.length)return s.length;if(!s.length)return e.length;const t=[];for(let o=0;o<=s.length;o++){t[o]=[o];for(let r=1;r<=e.length;r++)t[o][r]=0===o?r:Math.min(t[o-1][r]+1,t[o][r-1]+1,t[o-1][r-1]+(e[r-1]===s[o-1]?0:1))}return t[s.length][e.length]}const as=e=>{const s=new ns,t=Object(e),o=Object.keys(Object(t.features)),r=t.browsers,i=function(e){if("importFrom"in e||"exportTo"in e||"preserve"in e){const s={};return"importFrom"in e&&(s.importFrom=e.importFrom),"exportTo"in e&&(s.exportTo={customMedia:{},customProperties:{},customSelectors:{}}),"preserve"in e&&(s.preserve=e.preserve),s}return!1}(t),n=is(D.default,t,i,s),c=n.map((e=>e.plugin));!1!==t.autoprefixer&&c.push(V.default(Object.assign({overrideBrowserslist:r},t.autoprefixer))),c.push(L.default()),function(e,s,t){if(s.debug){t.log("Enabling the following feature(s):");const s=[];e.forEach((e=>{e.id.startsWith("before")||e.id.startsWith("after")?t.log(` ${e.id} (injected via options)`):t.log(` ${e.id}`),void 0!==Ee[e.id]&&s.push(e.id)})),s.length&&(t.log("These feature(s) need a browser library to work:"),s.forEach((e=>t.log(` ${e}: ${Ee[e]}`))))}}(n,t,s);const u=()=>({postcssPlugin:"postcss-preset-env",OnceExit:function(r,{result:n}){!function(e,s,t){const o=Object.keys(Ze),r=Object.keys(Ye);e.forEach((e=>{if(o.includes(e))return;const i=cs(e,o),n=cs(e,r);i.distance<n.distance?s.warn(t,`Unknown feature: "${e}" did you mean: "${i.mostSimilar}"`):s.warn(t,`Unknown feature: "${e}" did you mean: "${Ye[n.mostSimilar]}"`)}))}(o,r,n),t.debug&&s.dumpLogs(n),s.resetLogger(),t.exportTo&&Fe(i.exportTo,e.exportTo)}});return u.postcss=!0,{postcssPlugin:"postcss-preset-env",plugins:[...c,u()]}};as.postcss=!0,module.exports=as;
|
package/dist/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import s from"autoprefixer";import e from"cssdb";import o from"fs";import t from"path";import r from"postcss-attribute-case-insensitive";import i from"css-blank-pseudo";import n from"postcss-color-functional-notation";import c from"postcss-color-hex-alpha";import p from"postcss-color-rebeccapurple";import a from"postcss-custom-media";import u from"postcss-custom-properties";import l from"postcss-custom-selectors";import m from"postcss-dir-pseudo-class";import f from"postcss-double-position-gradients";import d from"postcss-env-function";import g from"postcss-focus-visible";import b from"postcss-focus-within";import h from"postcss-font-variant";import y from"postcss-gap-properties";import w from"css-has-pseudo";import v from"postcss-image-set-function";import $ from"postcss-initial";import k from"postcss-lab-function";import O from"postcss-logical";import S from"postcss-media-minmax";import j from"postcss-nesting";import x from"postcss-overflow-shorthand";import E from"postcss-page-break";import P from"postcss-place";import M from"css-prefers-color-scheme";import _ from"postcss-pseudo-class-any-link";import q from"postcss-replace-overflow-wrap";import R from"postcss-selector-not";import A from"@csstools/postcss-is-pseudo-class";import F from"@csstools/postcss-hwb-function";import N from"postcss-opacity-percentage";import T from"postcss-clamp";import B from"@csstools/postcss-font-format-keywords";import U from"@csstools/postcss-normalize-display-values";import W from"browserslist";async function C(s,e,o,t){const r=function(s){return`:root {\n${Object.keys(s).reduce(((e,o)=>(e.push(`\t${o}: ${s[o]};`),e)),[]).join("\n")}\n}\n`}(o),i=function(s){return`${Object.keys(s).reduce(((e,o)=>(e.push(`@custom-media ${o} ${s[o]};`),e)),[]).join("\n")}\n`}(e),n=function(s){return`${Object.keys(s).reduce(((e,o)=>(e.push(`@custom-selector ${o} ${s[o]};`),e)),[]).join("\n")}\n`}(t),c=`${i}\n${n}\n${r}`;await J(s,c)}function I(s,e){return`\n\t${s}: {\n${Object.keys(e).reduce(((s,o)=>(s.push(`\t\t'${z(o)}': '${z(e[o])}'`),s)),[]).join(",\n")}\n\t}`}function V(s,e){return`export const ${s} = {\n${Object.keys(e).reduce(((s,o)=>(s.push(`\t'${z(o)}': '${z(e[o])}'`),s)),[]).join(",\n")}\n};\n`}function D(s,e){return Promise.all([].concat(e).map((async e=>{if(e instanceof Function)await e({customMedia:L(s.customMedia),customProperties:L(s.customProperties),customSelectors:L(s.customSelectors)});else{const o=e===Object(e)?e:{to:String(e)},r=o.toJSON||L;if("customMedia"in o||"customProperties"in o||"customSelectors"in o)o.customMedia=r(s.customMedia),o.customProperties=r(s.customProperties),o.customSelectors=r(s.customSelectors);else if("custom-media"in o||"custom-properties"in o||"custom-selectors"in o)o["custom-media"]=r(s.customMedia),o["custom-properties"]=r(s.customProperties),o["custom-selectors"]=r(s.customSelectors);else{const e=String(o.to||""),i=(o.type||t.extname(o.to).slice(1)).toLowerCase(),n=r(s.customMedia),c=r(s.customProperties),p=r(s.customSelectors);"css"===i&&await C(e,n,c,p),"js"===i&&await async function(s,e,o,t){const r=`module.exports = {${I("customMedia",e)},${I("customProperties",o)},${I("customSelectors",t)}\n};\n`;await J(s,r)}(e,n,c,p),"json"===i&&await async function(s,e,o,t){const r=`${JSON.stringify({"custom-media":e,"custom-properties":o,"custom-selectors":t},null," ")}\n`;await J(s,r)}(e,n,c,p),"mjs"===i&&await async function(s,e,o,t){const r=`${V("customMedia",e)}\n${V("customProperties",o)}\n${V("customSelectors",t)}`;await J(s,r)}(e,n,c,p)}}})))}function L(s){return Object.keys(s).reduce(((e,o)=>(e[o]=String(s[o]),e)),{})}function J(s,e){return new Promise(((t,r)=>{o.writeFile(s,e,(s=>{s?r(s):t()}))}))}function z(s){return s.replace(/\\([\s\S])|(')/g,"\\$1$2").replace(/\n/g,"\\n").replace(/\r/g,"\\r")}function G(){return{postcssPlugin:"postcss-system-ui-font",Declaration(s){H.test(s.prop)&&(s.value.includes(Q.join(", "))||(s.value=s.value.replace(X,Y)))}}}G.postcss=!0;const H=/(?:^(?:-|\\002d){2})|(?:^font(?:-family)?$)/i,K="[\\f\\n\\r\\x09\\x20]",Q=["system-ui","-apple-system","Segoe UI","Roboto","Ubuntu","Cantarell","Noto Sans","sans-serif"],X=new RegExp(`(^|,|${K}+)(?:system-ui${K}*)(?:,${K}*(?:${Q.join("|")})${K}*)?(,|$)`,"i"),Y=`$1${Q.join(", ")}$2`,Z={"css-blank-pseudo":"blank-pseudo-class","css-has-pseudo":"has-pseudo-class","css-prefers-color-scheme":"prefers-color-scheme-query","postcss-attribute-case-insensitive":"case-insensitive-attributes","postcss-clamp":"clamp","postcss-color-functional-notation":"color-functional-notation","postcss-color-hex-alpha":"hexadecimal-alpha-notation","postcss-color-rebeccapurple":"rebeccapurple-color","postcss-custom-media":"custom-media-queries","postcss-custom-properties":"custom-properties","postcss-custom-selectors":"custom-selectors","postcss-dir-pseudo-class":"dir-pseudo-class","postcss-double-position-gradients":"double-position-gradients","postcss-env-function":"environment-variables","postcss-focus-visible":"focus-visible-pseudo-class","postcss-focus-within":"focus-within-pseudo-class","postcss-font-format-keywords":"font-format-keywords","postcss-font-variant":"font-variant-property","postcss-gap-properties":"gap-properties","postcss-hwb-function":"hwb-function","postcss-image-set-function":"image-set-function","postcss-initial":"all-property","postcss-is-pseudo-class":"is-pseudo-class","postcss-lab-function":"lab-function","postcss-logical":"logical-properties-and-values","postcss-media-minmax":"media-query-ranges","postcss-nesting":"nesting-rules","postcss-normalize-display-values":"display-two-values","postcss-opacity-percentage":"opacity-percentage","postcss-overflow-shorthand":"overflow-property","postcss-page-break":"break-properties","postcss-place":"place-properties","postcss-pseudo-class-any-link":"any-link-pseudo-class","postcss-replace-overflow-wrap":"overflow-wrap-property","postcss-selector-not":"not-pseudo-class","postcss-system-ui-font-family":"system-ui-font-family"},ss=(()=>{const s={};for(const[e,o]of Object.entries(Z))s[o]=e;return s})(),es=new Map([["all-property",$],["any-link-pseudo-class",_],["blank-pseudo-class",i],["break-properties",E],["case-insensitive-attributes",r],["clamp",T],["color-functional-notation",n],["custom-media-queries",a],["custom-properties",u],["custom-selectors",l],["dir-pseudo-class",m],["display-two-values",U],["double-position-gradients",f],["environment-variables",d],["focus-visible-pseudo-class",g],["focus-within-pseudo-class",b],["font-format-keywords",B],["font-variant-property",h],["gap-properties",y],["hwb-function",F],["has-pseudo-class",w],["hexadecimal-alpha-notation",c],["image-set-function",v],["is-pseudo-class",A],["lab-function",k],["logical-properties-and-values",O],["media-query-ranges",S],["nesting-rules",j],["not-pseudo-class",R],["opacity-percentage",N],["overflow-property",x],["overflow-wrap-property",q],["place-properties",P],["prefers-color-scheme-query",M],["rebeccapurple-color",p],["system-ui-font-family",G]]);function os(s,e){let o="unknown",t=1/0;for(let r=0;r<e.length;r++){const i=ts(s,e[r]);i<t&&(t=i,o=e[r])}return{mostSimilar:o,distance:t}}function ts(s,e){if(!s.length)return e.length;if(!e.length)return s.length;const o=[];for(let t=0;t<=e.length;t++){o[t]=[t];for(let r=1;r<=s.length;r++)o[t][r]=0===t?r:Math.min(o[t-1][r]+1,o[t][r-1]+1,o[t-1][r-1]+(s[r-1]===e[t-1]?0:1))}return o[e.length][s.length]}class rs{constructor(){this.logs=[]}log(s){this.logs.push(s)}resetLogger(){this.logs.length=0}dumpLogs(s){s&&this.logs.forEach((e=>s.warn(e))),this.resetLogger()}}const is={"blank-pseudo-class":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-blank-pseudo/README-BROWSER.md","focus-visible-pseudo-class":"https://github.com/WICG/focus-visible","focus-within-pseudo-class":"https://github.com/jsxtools/focus-within/blob/master/README-BROWSER.md","has-pseudo-class":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-has-pseudo/README-BROWSER.md","prefers-color-scheme-query":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-prefers-color-scheme/README-BROWSER.md"},ns=["blank-pseudo-class","focus-visible-pseudo-class","focus-within-pseudo-class","has-pseudo-class","prefers-color-scheme-query"];function cs(s,e){if(!s)return!1;if("string"==typeof s)return!0;if(Array.isArray(s)){for(let o=0;o<s.length;o++){if("string"==typeof s[o])return!0;if(s[o]&&e in Object(s[o]))return!0}return!1}return e in Object(s)}function ps(s,e,o){return Math.max(s,Math.min(e,o))}const as=Symbol("insertBefore"),us=Symbol("insertAfter"),ls=Symbol("insertOrder"),ms=Symbol("plugin");function fs(s,e,o){if("insertBefore"!==o&&"insertAfter"!==o)return[];const t="insertBefore"===o?as:us,r=[];for(const o in e){if(!Object.hasOwnProperty.call(e,o))continue;if(!s.find((s=>s.id===o)))continue;let i=e[o];Array.isArray(i)||(i=[i]);for(let s=0;s<i.length;s++)r.push({id:o,[ms]:i[s],[ls]:s,[t]:!0})}return r}var ds=["custom-media-queries","custom-properties","environment-variables","image-set-function","media-query-ranges","prefers-color-scheme-query","nesting-rules","custom-selectors","any-link-pseudo-class","case-insensitive-attributes","focus-visible-pseudo-class","focus-within-pseudo-class","not-pseudo-class","logical-properties-and-values","dir-pseudo-class","all-property","color-functional-notation","double-position-gradients","hexadecimal-alpha-notation","hwb-function","lab-function","rebeccapurple-color","blank-pseudo-class","break-properties","font-variant-property","is-pseudo-class","has-pseudo-class","gap-properties","overflow-property","overflow-wrap-property","place-properties","system-ui-font-family"];function gs(s,e,o){return s.concat(fs(s,e,"insertBefore"),fs(s,o,"insertAfter")).filter((s=>function(s){return!!s[as]||!!s[us]||!!es.has(s.id)}(s))).sort(((s,e)=>function(s,e){return s.id===e.id?s[as]&&e[as]||s[us]&&e[us]?ps(-1,s[ls]-e[ls],1):s[as]||e[us]?-1:s[us]||e[as]?1:0:ps(-1,ds.indexOf(s.id)-ds.indexOf(e.id),1)}(s,e)))}const bs=["ie","edge","firefox","chrome","safari","opera","ios_saf","android","op_mob","and_chr","and_ff","and_uc","samsung","and_qq","baidu","kaios"];function hs(s){if(!s)return[];if(!("browser_support"in s))return["> 0%"];const e=[];return bs.forEach((o=>{const t=s.browser_support[o];"string"==typeof t&&/^[0-9|.]+$/.test(t)?e.push(`${o} < ${s.browser_support[o]}`):e.push(`${o} >= 1`)})),e}function ys(s,e,o,t){const r=W(s,{ignoreUnknownVersions:!0});switch(e.id){case"is-pseudo-class":return{onComplexSelector:"warning"};case"nesting-rules":if(function(s,e){const o=hs(s);if(e.some((s=>W(o,{ignoreUnknownVersions:!0}).some((e=>e===s)))))return!0;return!1}(o.find((s=>"is-pseudo-class"===s.id)),r))return t.log('Disabling :is on "nesting-rules" due to lack of browser support.'),{noIsPseudoSelector:!0};return{};case"any-link-pseudo-class":if(r.find((s=>s.startsWith("ie ")||s.startsWith("edge "))))return t.log('Adding area[href] fallbacks for ":any-link" support in Edge and IE.'),{subFeatures:{areaHrefNeedsFixing:!0}};return{};default:return{}}}function ws(s,e,o,t){const r=Object(e.features),i=!("enableClientSidePolyfills"in e)||e.enableClientSidePolyfills,n=Object(e.insertBefore),c=Object(e.insertAfter),p=e.browsers,a=ps(0,function(s){const e=parseInt(s,10);return Number.isNaN(e)?0:e}(e.minimumVendorImplementations),3);a>0&&t.log(`Using features with ${a} or more vendor implementations`);const u=function(s,e){let o=2;if(void 0===s.stage)return e.log(`Using features from Stage ${o} (default)`),o;if(!1===s.stage)o=5;else{let e=parseInt(s.stage,10);Number.isNaN(e)&&(e=0),o=ps(0,e,5)}return 5===o?e.log('Stage has been disabled, features will be handled via the "features" option.'):e.log(`Using features from Stage ${o}`),o}(e,t);2===u&&o&&!1===o.preserve&&(s=JSON.parse(JSON.stringify(s))).forEach((s=>{("blank-pseudo-class"===s.id||"prefers-color-scheme-query"===s.id)&&(s.stage=1)}));const l=gs(s,n,c).map((s=>function(s){const e=hs(s);if(s[as]||s[us]){let o=s.id;return o=s.insertBefore?`before-${o}`:`after-${o}`,{browsers:e,vendors_implementations:s.vendors_implementations,plugin:s[ms],id:o,stage:6}}return{browsers:e,vendors_implementations:s.vendors_implementations,plugin:es.get(s.id),id:s.id,stage:s.stage}}(s))).filter((s=>0===a||(!(!s[as]&&!s[us])||(a<=s.vendors_implementations||(t.log(` ${s.id} with ${s.vendors_implementations} vendor implementations has been disabled`),!1))))).filter((s=>{const e=s.stage>=u,o=i||!ns.includes(s.id),n=!1===r[s.id],c=r[s.id]?r[s.id]:e&&o;return n?t.log(` ${s.id} has been disabled by options`):e?o||t.log(` ${s.id} has been disabled by "enableClientSidePolyfills: false".`):c?t.log(` ${s.id} has been enabled by options`):t.log(` ${s.id} with stage ${s.stage} has been disabled`),c})).map((e=>function(s,e,o,t,r,i){let n,c;return n=ys(e,t,s,i),!0===o[t.id]?r&&(n=Object.assign({},n,r)):n=r?Object.assign({},n,r,o[t.id]):Object.assign({},n,o[t.id]),c=t.plugin.postcss&&"function"==typeof t.plugin?t.plugin(n):t.plugin&&t.plugin.default&&"function"==typeof t.plugin.default&&t.plugin.default.postcss?t.plugin.default(n):t.plugin,{browsers:t.browsers,vendors_implementations:t.vendors_implementations,plugin:c,pluginOptions:n,id:t.id}}(s,p,r,e,o,t))),m=W(p,{ignoreUnknownVersions:!0});return l.filter((s=>{if(s.id in r)return r[s.id];if(function(s){if("importFrom"in Object(s.pluginOptions))switch(s.id){case"custom-media-queries":if(cs(s.pluginOptions.importFrom,"customMedia"))return!0;break;case"custom-properties":if(cs(s.pluginOptions.importFrom,"customProperties"))return!0;break;case"environment-variables":if(cs(s.pluginOptions.importFrom,"environmentVariables"))return!0;break;case"custom-selectors":if(cs(s.pluginOptions.importFrom,"customSelectors"))return!0}if("exportTo"in Object(s.pluginOptions))switch(s.id){case"custom-media-queries":if(cs(s.pluginOptions.exportTo,"customMedia"))return!0;break;case"custom-properties":if(cs(s.pluginOptions.exportTo,"customProperties"))return!0;break;case"environment-variables":if(cs(s.pluginOptions.exportTo,"environmentVariables"))return!0;break;case"custom-selectors":if(cs(s.pluginOptions.exportTo,"customSelectors"))return!0}return!1}(s))return!0;const e=W(s.browsers,{ignoreUnknownVersions:!0}),o=m.some((s=>e.some((e=>e===s))));return o||t.log(`${s.id} disabled due to browser support`),o}))}const vs=o=>{const t=new rs,r=Object(o),i=Object.keys(Object(r.features)),n=r.browsers,c=function(s){if("importFrom"in s||"exportTo"in s||"preserve"in s){const e={};return"importFrom"in s&&(e.importFrom=s.importFrom),"exportTo"in s&&(e.exportTo={customMedia:{},customProperties:{},customSelectors:{}}),"preserve"in s&&(e.preserve=s.preserve),e}return!1}(r),p=ws(e,r,c,t),a=p.map((s=>s.plugin));!1!==r.autoprefixer&&a.push(s(Object.assign({overrideBrowserslist:n},r.autoprefixer))),function(s,e,o){if(e.debug){o.log("Enabling the following feature(s):");const e=[];s.forEach((s=>{s.id.startsWith("before")||s.id.startsWith("after")?o.log(` ${s.id} (injected via options)`):o.log(` ${s.id}`),void 0!==is[s.id]&&e.push(s.id)})),e.length&&(o.log("These feature(s) need a browser library to work:"),e.forEach((s=>o.log(` ${s}: ${is[s]}`))))}}(p,r,t);const u=()=>({postcssPlugin:"postcss-preset-env",OnceExit:function(s,{result:e}){!function(s,e,o){const t=Object.keys(ss),r=Object.keys(Z);s.forEach((s=>{if(t.includes(s))return;const i=os(s,t),n=os(s,r);i.distance<n.distance?e.warn(o,`Unknown feature: "${s}" did you mean: "${i.mostSimilar}"`):e.warn(o,`Unknown feature: "${s}" did you mean: "${Z[n.mostSimilar]}"`)}))}(i,s,e),r.debug&&t.dumpLogs(e),t.resetLogger(),r.exportTo&&D(c.exportTo,o.exportTo)}});return u.postcss=!0,{postcssPlugin:"postcss-preset-env",plugins:[...a,u()]}};vs.postcss=!0;export{vs as default};
|
|
1
|
+
import s from"autoprefixer";import e from"cssdb";import o from"@csstools/postcss-progressive-custom-properties";import t from"fs";import r from"path";import i from"browserslist";import n from"postcss-attribute-case-insensitive";import c from"css-blank-pseudo";import p from"postcss-color-functional-notation";import a from"postcss-color-hex-alpha";import u from"postcss-color-rebeccapurple";import l from"postcss-custom-media";import m from"postcss-custom-properties";import f from"postcss-custom-selectors";import d from"postcss-dir-pseudo-class";import g from"postcss-double-position-gradients";import b from"postcss-env-function";import h from"postcss-focus-visible";import y from"postcss-focus-within";import w from"postcss-font-variant";import v from"postcss-gap-properties";import $ from"css-has-pseudo";import k from"postcss-image-set-function";import O from"postcss-initial";import S from"postcss-lab-function";import j from"postcss-logical";import x from"postcss-media-minmax";import P from"postcss-nesting";import E from"postcss-overflow-shorthand";import M from"postcss-page-break";import _ from"postcss-place";import q from"css-prefers-color-scheme";import R from"postcss-pseudo-class-any-link";import A from"postcss-replace-overflow-wrap";import F from"postcss-selector-not";import N from"@csstools/postcss-is-pseudo-class";import T from"@csstools/postcss-hwb-function";import B from"postcss-opacity-percentage";import U from"postcss-clamp";import W from"@csstools/postcss-font-format-keywords";import C from"@csstools/postcss-normalize-display-values";const I={"blank-pseudo-class":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-blank-pseudo/README-BROWSER.md","focus-visible-pseudo-class":"https://github.com/WICG/focus-visible","focus-within-pseudo-class":"https://github.com/jsxtools/focus-within/blob/master/README-BROWSER.md","has-pseudo-class":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-has-pseudo/README-BROWSER.md","prefers-color-scheme-query":"https://github.com/csstools/postcss-plugins/blob/main/plugins/css-prefers-color-scheme/README-BROWSER.md"},V=["blank-pseudo-class","focus-visible-pseudo-class","focus-within-pseudo-class","has-pseudo-class","prefers-color-scheme-query"];async function D(s,e,o,t){const r=function(s){return`:root {\n${Object.keys(s).reduce(((e,o)=>(e.push(`\t${o}: ${s[o]};`),e)),[]).join("\n")}\n}\n`}(o),i=function(s){return`${Object.keys(s).reduce(((e,o)=>(e.push(`@custom-media ${o} ${s[o]};`),e)),[]).join("\n")}\n`}(e),n=function(s){return`${Object.keys(s).reduce(((e,o)=>(e.push(`@custom-selector ${o} ${s[o]};`),e)),[]).join("\n")}\n`}(t),c=`${i}\n${n}\n${r}`;await H(s,c)}function L(s,e){return`\n\t${s}: {\n${Object.keys(e).reduce(((s,o)=>(s.push(`\t\t'${K(o)}': '${K(e[o])}'`),s)),[]).join(",\n")}\n\t}`}function J(s,e){return`export const ${s} = {\n${Object.keys(e).reduce(((s,o)=>(s.push(`\t'${K(o)}': '${K(e[o])}'`),s)),[]).join(",\n")}\n};\n`}function z(s,e){return Promise.all([].concat(e).map((async e=>{if(e instanceof Function)await e({customMedia:G(s.customMedia),customProperties:G(s.customProperties),customSelectors:G(s.customSelectors)});else{const o=e===Object(e)?e:{to:String(e)},t=o.toJSON||G;if("customMedia"in o||"customProperties"in o||"customSelectors"in o)o.customMedia=t(s.customMedia),o.customProperties=t(s.customProperties),o.customSelectors=t(s.customSelectors);else if("custom-media"in o||"custom-properties"in o||"custom-selectors"in o)o["custom-media"]=t(s.customMedia),o["custom-properties"]=t(s.customProperties),o["custom-selectors"]=t(s.customSelectors);else{const e=String(o.to||""),i=(o.type||r.extname(o.to).slice(1)).toLowerCase(),n=t(s.customMedia),c=t(s.customProperties),p=t(s.customSelectors);"css"===i&&await D(e,n,c,p),"js"===i&&await async function(s,e,o,t){const r=`module.exports = {${L("customMedia",e)},${L("customProperties",o)},${L("customSelectors",t)}\n};\n`;await H(s,r)}(e,n,c,p),"json"===i&&await async function(s,e,o,t){const r=`${JSON.stringify({"custom-media":e,"custom-properties":o,"custom-selectors":t},null," ")}\n`;await H(s,r)}(e,n,c,p),"mjs"===i&&await async function(s,e,o,t){const r=`${J("customMedia",e)}\n${J("customProperties",o)}\n${J("customSelectors",t)}`;await H(s,r)}(e,n,c,p)}}})))}function G(s){return Object.keys(s).reduce(((e,o)=>(e[o]=String(s[o]),e)),{})}function H(s,e){return new Promise(((o,r)=>{t.writeFile(s,e,(s=>{s?r(s):o()}))}))}function K(s){return s.replace(/\\([\s\S])|(')/g,"\\$1$2").replace(/\n/g,"\\n").replace(/\r/g,"\\r")}function Q(s,e){if(!s)return!1;if("string"==typeof s)return!0;if(Array.isArray(s)){for(let o=0;o<s.length;o++){if("string"==typeof s[o])return!0;if(s[o]&&e in Object(s[o]))return!0}return!1}return e in Object(s)}function X(s,e,o){return Math.max(s,Math.min(e,o))}const Y=Symbol("insertBefore"),Z=Symbol("insertAfter"),ss=Symbol("insertOrder"),es=Symbol("plugin");function os(s,e,o){if("insertBefore"!==o&&"insertAfter"!==o)return[];const t="insertBefore"===o?Y:Z,r=[];for(const o in e){if(!Object.hasOwnProperty.call(e,o))continue;if(!s.find((s=>s.id===o)))continue;let i=e[o];Array.isArray(i)||(i=[i]);for(let s=0;s<i.length;s++)r.push({id:o,[es]:i[s],[ss]:s,[t]:!0})}return r}var ts=["custom-media-queries","custom-properties","environment-variables","image-set-function","media-query-ranges","prefers-color-scheme-query","nesting-rules","custom-selectors","any-link-pseudo-class","case-insensitive-attributes","focus-visible-pseudo-class","focus-within-pseudo-class","not-pseudo-class","logical-properties-and-values","dir-pseudo-class","all-property","color-functional-notation","double-position-gradients","hexadecimal-alpha-notation","hwb-function","lab-function","rebeccapurple-color","blank-pseudo-class","break-properties","font-variant-property","is-pseudo-class","has-pseudo-class","gap-properties","overflow-property","overflow-wrap-property","place-properties","system-ui-font-family"];function rs(){return{postcssPlugin:"postcss-system-ui-font",Declaration(s){is.test(s.prop)&&(s.value.includes(cs.join(", "))||(s.value=s.value.replace(ps,as)))}}}rs.postcss=!0;const is=/(?:^(?:-|\\002d){2})|(?:^font(?:-family)?$)/i,ns="[\\f\\n\\r\\x09\\x20]",cs=["system-ui","-apple-system","Segoe UI","Roboto","Ubuntu","Cantarell","Noto Sans","sans-serif"],ps=new RegExp(`(^|,|${ns}+)(?:system-ui${ns}*)(?:,${ns}*(?:${cs.join("|")})${ns}*)?(,|$)`,"i"),as=`$1${cs.join(", ")}$2`,us={"css-blank-pseudo":"blank-pseudo-class","css-has-pseudo":"has-pseudo-class","css-prefers-color-scheme":"prefers-color-scheme-query","postcss-attribute-case-insensitive":"case-insensitive-attributes","postcss-clamp":"clamp","postcss-color-functional-notation":"color-functional-notation","postcss-color-hex-alpha":"hexadecimal-alpha-notation","postcss-color-rebeccapurple":"rebeccapurple-color","postcss-custom-media":"custom-media-queries","postcss-custom-properties":"custom-properties","postcss-custom-selectors":"custom-selectors","postcss-dir-pseudo-class":"dir-pseudo-class","postcss-double-position-gradients":"double-position-gradients","postcss-env-function":"environment-variables","postcss-focus-visible":"focus-visible-pseudo-class","postcss-focus-within":"focus-within-pseudo-class","postcss-font-format-keywords":"font-format-keywords","postcss-font-variant":"font-variant-property","postcss-gap-properties":"gap-properties","postcss-hwb-function":"hwb-function","postcss-image-set-function":"image-set-function","postcss-initial":"all-property","postcss-is-pseudo-class":"is-pseudo-class","postcss-lab-function":"lab-function","postcss-logical":"logical-properties-and-values","postcss-media-minmax":"media-query-ranges","postcss-nesting":"nesting-rules","postcss-normalize-display-values":"display-two-values","postcss-opacity-percentage":"opacity-percentage","postcss-overflow-shorthand":"overflow-property","postcss-page-break":"break-properties","postcss-place":"place-properties","postcss-pseudo-class-any-link":"any-link-pseudo-class","postcss-replace-overflow-wrap":"overflow-wrap-property","postcss-selector-not":"not-pseudo-class","postcss-system-ui-font-family":"system-ui-font-family"},ls=(()=>{const s={};for(const[e,o]of Object.entries(us))s[o]=e;return s})(),ms=new Map([["all-property",O],["any-link-pseudo-class",R],["blank-pseudo-class",c],["break-properties",M],["case-insensitive-attributes",n],["clamp",U],["color-functional-notation",p],["custom-media-queries",l],["custom-properties",m],["custom-selectors",f],["dir-pseudo-class",d],["display-two-values",C],["double-position-gradients",g],["environment-variables",b],["focus-visible-pseudo-class",h],["focus-within-pseudo-class",y],["font-format-keywords",W],["font-variant-property",w],["gap-properties",v],["hwb-function",T],["has-pseudo-class",$],["hexadecimal-alpha-notation",a],["image-set-function",k],["is-pseudo-class",N],["lab-function",S],["logical-properties-and-values",j],["media-query-ranges",x],["nesting-rules",P],["not-pseudo-class",F],["opacity-percentage",B],["overflow-property",E],["overflow-wrap-property",A],["place-properties",_],["prefers-color-scheme-query",q],["rebeccapurple-color",u],["system-ui-font-family",rs]]);function fs(s,e,o){return s.concat(os(s,e,"insertBefore"),os(s,o,"insertAfter")).filter((s=>function(s){return!!s[Y]||!!s[Z]||!!ms.has(s.id)}(s))).sort(((s,e)=>function(s,e){return s.id===e.id?s[Y]&&e[Y]||s[Z]&&e[Z]?X(-1,s[ss]-e[ss],1):s[Y]||e[Z]?-1:s[Z]||e[Y]?1:0:X(-1,ts.indexOf(s.id)-ts.indexOf(e.id),1)}(s,e)))}const ds=["ie","edge","firefox","chrome","safari","opera","ios_saf","android","op_mob","and_chr","and_ff","and_uc","samsung","and_qq","baidu","kaios"];function gs(s){if(!s)return[];if(!("browser_support"in s))return["> 0%"];const e=[];return ds.forEach((o=>{const t=s.browser_support[o];"string"==typeof t&&/^[0-9|.]+$/.test(t)?e.push(`${o} < ${s.browser_support[o]}`):e.push(`${o} >= 1`)})),e}function bs(s,e,o,t){const r=i(s,{ignoreUnknownVersions:!0});switch(e.id){case"is-pseudo-class":return{onComplexSelector:"warning"};case"nesting-rules":if(function(s,e){const o=gs(s);if(e.some((s=>i(o,{ignoreUnknownVersions:!0}).some((e=>e===s)))))return!0;return!1}(o.find((s=>"is-pseudo-class"===s.id)),r))return t.log('Disabling :is on "nesting-rules" due to lack of browser support.'),{noIsPseudoSelector:!0};return{};case"any-link-pseudo-class":if(r.find((s=>s.startsWith("ie ")||s.startsWith("edge "))))return t.log('Adding area[href] fallbacks for ":any-link" support in Edge and IE.'),{subFeatures:{areaHrefNeedsFixing:!0}};return{};default:return{}}}function hs(s,e,o,t){const r=Object(e.features),n=!("enableClientSidePolyfills"in e)||e.enableClientSidePolyfills,c=Object(e.insertBefore),p=Object(e.insertAfter),a=e.browsers,u=X(0,function(s){const e=parseInt(s,10);return Number.isNaN(e)?0:e}(e.minimumVendorImplementations),3);u>0&&t.log(`Using features with ${u} or more vendor implementations`);const l=function(s,e){let o=2;if(void 0===s.stage)return e.log(`Using features from Stage ${o} (default)`),o;if(!1===s.stage)o=5;else{let e=parseInt(s.stage,10);Number.isNaN(e)&&(e=0),o=X(0,e,5)}return 5===o?e.log('Stage has been disabled, features will be handled via the "features" option.'):e.log(`Using features from Stage ${o}`),o}(e,t);2===l&&o&&!1===o.preserve&&(s=JSON.parse(JSON.stringify(s))).forEach((s=>{("blank-pseudo-class"===s.id||"prefers-color-scheme-query"===s.id)&&(s.stage=1)}));const m=fs(s,c,p).map((s=>function(s){const e=gs(s);if(s[Y]||s[Z]){let o=s.id;return o=s.insertBefore?`before-${o}`:`after-${o}`,{browsers:e,vendors_implementations:s.vendors_implementations,plugin:s[es],id:o,stage:6}}return{browsers:e,vendors_implementations:s.vendors_implementations,plugin:ms.get(s.id),id:s.id,stage:s.stage}}(s))).filter((s=>0===u||(!(!s[Y]&&!s[Z])||(u<=s.vendors_implementations||(t.log(` ${s.id} with ${s.vendors_implementations} vendor implementations has been disabled`),!1))))).filter((s=>{const e=s.stage>=l,o=n||!V.includes(s.id),i=!1===r[s.id],c=r[s.id]?r[s.id]:e&&o;return i?t.log(` ${s.id} has been disabled by options`):e?o||t.log(` ${s.id} has been disabled by "enableClientSidePolyfills: false".`):c?t.log(` ${s.id} has been enabled by options`):t.log(` ${s.id} with stage ${s.stage} has been disabled`),c})).map((e=>function(s,e,o,t,r,i){let n,c;return n=bs(e,t,s,i),!0===o[t.id]?r&&(n=Object.assign({},n,r)):n=r?Object.assign({},n,r,o[t.id]):Object.assign({},n,o[t.id]),n.enableProgressiveCustomProperties=!1,c=t.plugin.postcss&&"function"==typeof t.plugin?t.plugin(n):t.plugin&&t.plugin.default&&"function"==typeof t.plugin.default&&t.plugin.default.postcss?t.plugin.default(n):t.plugin,{browsers:t.browsers,vendors_implementations:t.vendors_implementations,plugin:c,pluginOptions:n,id:t.id}}(s,a,r,e,o,t))),f=i(a,{ignoreUnknownVersions:!0});return m.filter((s=>{if(s.id in r)return r[s.id];if(function(s){if("importFrom"in Object(s.pluginOptions))switch(s.id){case"custom-media-queries":if(Q(s.pluginOptions.importFrom,"customMedia"))return!0;break;case"custom-properties":if(Q(s.pluginOptions.importFrom,"customProperties"))return!0;break;case"environment-variables":if(Q(s.pluginOptions.importFrom,"environmentVariables"))return!0;break;case"custom-selectors":if(Q(s.pluginOptions.importFrom,"customSelectors"))return!0}if("exportTo"in Object(s.pluginOptions))switch(s.id){case"custom-media-queries":if(Q(s.pluginOptions.exportTo,"customMedia"))return!0;break;case"custom-properties":if(Q(s.pluginOptions.exportTo,"customProperties"))return!0;break;case"environment-variables":if(Q(s.pluginOptions.exportTo,"environmentVariables"))return!0;break;case"custom-selectors":if(Q(s.pluginOptions.exportTo,"customSelectors"))return!0}return!1}(s))return!0;const e=i(s.browsers,{ignoreUnknownVersions:!0}),o=f.some((s=>e.some((e=>e===s))));return o||t.log(`${s.id} disabled due to browser support`),o}))}class ys{constructor(){this.logs=[]}log(s){this.logs.push(s)}resetLogger(){this.logs.length=0}dumpLogs(s){s&&this.logs.forEach((e=>s.warn(e))),this.resetLogger()}}function ws(s,e){let o="unknown",t=1/0;for(let r=0;r<e.length;r++){const i=vs(s,e[r]);i<t&&(t=i,o=e[r])}return{mostSimilar:o,distance:t}}function vs(s,e){if(!s.length)return e.length;if(!e.length)return s.length;const o=[];for(let t=0;t<=e.length;t++){o[t]=[t];for(let r=1;r<=s.length;r++)o[t][r]=0===t?r:Math.min(o[t-1][r]+1,o[t][r-1]+1,o[t-1][r-1]+(s[r-1]===e[t-1]?0:1))}return o[e.length][s.length]}const $s=t=>{const r=new ys,i=Object(t),n=Object.keys(Object(i.features)),c=i.browsers,p=function(s){if("importFrom"in s||"exportTo"in s||"preserve"in s){const e={};return"importFrom"in s&&(e.importFrom=s.importFrom),"exportTo"in s&&(e.exportTo={customMedia:{},customProperties:{},customSelectors:{}}),"preserve"in s&&(e.preserve=s.preserve),e}return!1}(i),a=hs(e,i,p,r),u=a.map((s=>s.plugin));!1!==i.autoprefixer&&u.push(s(Object.assign({overrideBrowserslist:c},i.autoprefixer))),u.push(o()),function(s,e,o){if(e.debug){o.log("Enabling the following feature(s):");const e=[];s.forEach((s=>{s.id.startsWith("before")||s.id.startsWith("after")?o.log(` ${s.id} (injected via options)`):o.log(` ${s.id}`),void 0!==I[s.id]&&e.push(s.id)})),e.length&&(o.log("These feature(s) need a browser library to work:"),e.forEach((s=>o.log(` ${s}: ${I[s]}`))))}}(a,i,r);const l=()=>({postcssPlugin:"postcss-preset-env",OnceExit:function(s,{result:e}){!function(s,e,o){const t=Object.keys(ls),r=Object.keys(us);s.forEach((s=>{if(t.includes(s))return;const i=ws(s,t),n=ws(s,r);i.distance<n.distance?e.warn(o,`Unknown feature: "${s}" did you mean: "${i.mostSimilar}"`):e.warn(o,`Unknown feature: "${s}" did you mean: "${us[n.mostSimilar]}"`)}))}(n,s,e),i.debug&&r.dumpLogs(e),r.resetLogger(),i.exportTo&&z(p.exportTo,t.exportTo)}});return l.postcss=!0,{postcssPlugin:"postcss-preset-env",plugins:[...u,l()]}};$s.postcss=!0;export{$s as default};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "postcss-preset-env",
|
|
3
|
-
"version": "7.3.
|
|
3
|
+
"version": "7.3.2",
|
|
4
4
|
"description": "Convert modern CSS into something browsers understand",
|
|
5
5
|
"author": "Jonathan Neal <jonathantneal@hotmail.com>",
|
|
6
6
|
"license": "CC0-1.0",
|
|
@@ -39,38 +39,39 @@
|
|
|
39
39
|
"@csstools/postcss-hwb-function": "^1.0.0",
|
|
40
40
|
"@csstools/postcss-is-pseudo-class": "^2.0.0",
|
|
41
41
|
"@csstools/postcss-normalize-display-values": "^1.0.0",
|
|
42
|
+
"@csstools/postcss-progressive-custom-properties": "^1.1.0",
|
|
42
43
|
"autoprefixer": "^10.4.2",
|
|
43
44
|
"browserslist": "^4.19.1",
|
|
44
|
-
"css-blank-pseudo": "^3.0.
|
|
45
|
-
"css-has-pseudo": "^3.0.
|
|
45
|
+
"css-blank-pseudo": "^3.0.3",
|
|
46
|
+
"css-has-pseudo": "^3.0.4",
|
|
46
47
|
"css-prefers-color-scheme": "^6.0.3",
|
|
47
|
-
"cssdb": "^6.1
|
|
48
|
+
"cssdb": "^6.2.1",
|
|
48
49
|
"postcss-attribute-case-insensitive": "^5.0.0",
|
|
49
50
|
"postcss-clamp": "^3.0.0",
|
|
50
|
-
"postcss-color-functional-notation": "^4.2.
|
|
51
|
-
"postcss-color-hex-alpha": "^8.0.
|
|
51
|
+
"postcss-color-functional-notation": "^4.2.2",
|
|
52
|
+
"postcss-color-hex-alpha": "^8.0.3",
|
|
52
53
|
"postcss-color-rebeccapurple": "^7.0.2",
|
|
53
54
|
"postcss-custom-media": "^8.0.0",
|
|
54
55
|
"postcss-custom-properties": "^12.1.4",
|
|
55
56
|
"postcss-custom-selectors": "^6.0.0",
|
|
56
|
-
"postcss-dir-pseudo-class": "^6.0.
|
|
57
|
-
"postcss-double-position-gradients": "^3.0.
|
|
58
|
-
"postcss-env-function": "^4.0.
|
|
59
|
-
"postcss-focus-visible": "^6.0.
|
|
60
|
-
"postcss-focus-within": "^5.0.
|
|
57
|
+
"postcss-dir-pseudo-class": "^6.0.4",
|
|
58
|
+
"postcss-double-position-gradients": "^3.0.5",
|
|
59
|
+
"postcss-env-function": "^4.0.5",
|
|
60
|
+
"postcss-focus-visible": "^6.0.4",
|
|
61
|
+
"postcss-focus-within": "^5.0.4",
|
|
61
62
|
"postcss-font-variant": "^5.0.0",
|
|
62
|
-
"postcss-gap-properties": "^3.0.
|
|
63
|
-
"postcss-image-set-function": "^4.0.
|
|
63
|
+
"postcss-gap-properties": "^3.0.3",
|
|
64
|
+
"postcss-image-set-function": "^4.0.6",
|
|
64
65
|
"postcss-initial": "^4.0.1",
|
|
65
|
-
"postcss-lab-function": "^4.0
|
|
66
|
-
"postcss-logical": "^5.0.
|
|
66
|
+
"postcss-lab-function": "^4.1.0",
|
|
67
|
+
"postcss-logical": "^5.0.4",
|
|
67
68
|
"postcss-media-minmax": "^5.0.0",
|
|
68
69
|
"postcss-nesting": "^10.1.2",
|
|
69
70
|
"postcss-opacity-percentage": "^1.1.2",
|
|
70
|
-
"postcss-overflow-shorthand": "^3.0.
|
|
71
|
+
"postcss-overflow-shorthand": "^3.0.3",
|
|
71
72
|
"postcss-page-break": "^3.0.4",
|
|
72
|
-
"postcss-place": "^7.0.
|
|
73
|
-
"postcss-pseudo-class-any-link": "^7.1.
|
|
73
|
+
"postcss-place": "^7.0.4",
|
|
74
|
+
"postcss-pseudo-class-any-link": "^7.1.1",
|
|
74
75
|
"postcss-replace-overflow-wrap": "^4.0.0",
|
|
75
76
|
"postcss-selector-not": "^5.0.0"
|
|
76
77
|
},
|