postcss-preset-env 7.0.2 → 7.2.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 +76 -0
- package/README.md +1 -1
- package/dist/index.cjs +1 -2
- package/dist/index.mjs +1 -2
- package/package.json +27 -30
- package/INSTALL.md +0 -192
- package/dist/cli.mjs +0 -3
- package/dist/index.cjs.map +0 -1
- package/dist/index.mjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,81 @@
|
|
|
1
1
|
# Changes to PostCSS Preset Env
|
|
2
2
|
|
|
3
|
+
### 7.2.2 (January 12, 2022)
|
|
4
|
+
|
|
5
|
+
- Updated `postcss-logical` to `5.0.3` (patch)
|
|
6
|
+
- Updated `postcss-custom-properties` to `12.1.2` (patch)
|
|
7
|
+
|
|
8
|
+
### 7.2.1 (January 12, 2022)
|
|
9
|
+
|
|
10
|
+
- Always run plugins with side effects if certain options are set. [#140](https://github.com/csstools/postcss-plugins/issues/140)
|
|
11
|
+
- `custom-media-queries`
|
|
12
|
+
- `custom-properties`
|
|
13
|
+
- `environment-variables`
|
|
14
|
+
- `custom-selectors`
|
|
15
|
+
- Updated `caniuse-lite` to `1.0.30001299` (minor)
|
|
16
|
+
- Updated `css-blank-pseudo` to `3.0.2` (minor)
|
|
17
|
+
- Updated `css-has-pseudo` to `3.0.3` (minor)
|
|
18
|
+
- Updated `postcss-color-rebeccapurple` to `7.0.2` (minor)
|
|
19
|
+
- Updated `postcss-custom-properties` to `12.1.0` (minor)
|
|
20
|
+
- Updated `postcss-dir-pseudo-class` to `6.0.3` (minor)
|
|
21
|
+
- Updated `postcss-nesting` to `10.1.2` (minor)
|
|
22
|
+
|
|
23
|
+
This will ensure that CSS transforms that are not a browser polyfill are still applied.
|
|
24
|
+
⚠️ A future major version `postcss-preset-env` will remove this behavior completely.
|
|
25
|
+
|
|
26
|
+
### 7.2.0 (January 2, 2022)
|
|
27
|
+
|
|
28
|
+
- Added warnings and useful messages when a feature that doesn't exist is configured. [156](https://github.com/csstools/postcss-preset-env/issues/156).
|
|
29
|
+
|
|
30
|
+
When configured with these options for example:
|
|
31
|
+
|
|
32
|
+
```js
|
|
33
|
+
options: {
|
|
34
|
+
features: {
|
|
35
|
+
"custom-media": true,
|
|
36
|
+
"postcss-logical": true,
|
|
37
|
+
"postcss-logica": true,
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
It will yield the following warnings:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
Unknown feature: "custom-media" did you mean: "custom-media-queries"
|
|
46
|
+
Unknown feature: "postcss-logical" did you mean: "logical-properties-and-values"
|
|
47
|
+
Unknown feature: "postcss-logica" did you mean: "logical-properties-and-values"
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
- Removed Sourcemaps from package tarball.
|
|
51
|
+
- Moved CLI to CLI Package. See [announcement](https://github.com/csstools/postcss-plugins/discussions/121).
|
|
52
|
+
- Updated `postcss` to 8.4 (minor)
|
|
53
|
+
- Updated `autoprefixer` to 10.4.1 (patch)
|
|
54
|
+
- Updated `caniuse-lite` to 1.0.30001295 (patch)
|
|
55
|
+
- Updated `css-blank-pseudo` to 3.0.1 (patch)
|
|
56
|
+
- Updated `css-has-pseudo` to 3.0.2 (patch)
|
|
57
|
+
- Updated `css-prefers-color-scheme` to 6.0.2 (patch)
|
|
58
|
+
- Updated `postcss-color-functional-notation` to 4.2.1 (minor)
|
|
59
|
+
- Updated `postcss-color-hex-alpha` to 8.0.2 (patch)
|
|
60
|
+
- Updated `postcss-custom-properties` to 12.0.2 (patch)
|
|
61
|
+
- Updated `postcss-dir-pseudo-class` to 6.0.2 (patch)
|
|
62
|
+
- Updated `postcss-double-position-gradients` to 3.0.4 (patch)
|
|
63
|
+
- Updated `postcss-env-function` to 4.0.4 (patch)
|
|
64
|
+
- Updated `postcss-focus-visible` to 6.0.3 (patch)
|
|
65
|
+
- Updated `postcss-focus-within` to 5.0.3 (patch)
|
|
66
|
+
- Updated `postcss-gap-properties` to 3.0.2 (patch)
|
|
67
|
+
- Updated `postcss-image-set-function` to 4.0.4 (patch)
|
|
68
|
+
- Updated `postcss-lab-function` to 4.0.3 (patch)
|
|
69
|
+
- Updated `postcss-logical` to 5.0.2 (patch)
|
|
70
|
+
- Updated `postcss-nesting` to 10.1.1 (minor)
|
|
71
|
+
- Updated `postcss-overflow-shorthand` to 3.0.2 (patch)
|
|
72
|
+
- Updated `postcss-place` to 7.0.3 (patch)
|
|
73
|
+
- Updated `postcss-pseudo-class-any-link` to 7.0.2 (patch)
|
|
74
|
+
|
|
75
|
+
### 7.1.0 (December 22, 2021)
|
|
76
|
+
|
|
77
|
+
- Updated [`postcss-nesting` to `10.1.0` (minor)](https://github.com/csstools/postcss-plugins/blob/main/plugins/postcss-nesting/CHANGELOG.md#changes-to-postcss-nesting)
|
|
78
|
+
|
|
3
79
|
### 7.0.2 (December 16, 2021)
|
|
4
80
|
|
|
5
81
|
- Fixed unexpected behaviours when using different versions of `postcss-values-parser` across the plugins [228](https://github.com/csstools/postcss-preset-env/issues/228)
|
package/README.md
CHANGED
|
@@ -133,7 +133,7 @@ features.
|
|
|
133
133
|
|
|
134
134
|
The `features` option enables or disables specific polyfills by ID. Passing
|
|
135
135
|
`true` to a specific feature ID will enable its polyfill, while passing `false`
|
|
136
|
-
will disable it. [List of IDs](https://github.com/csstools/postcss-plugins/blob/main/plugin-packs/postcss-preset-env/src/lib/plugins-by-id.js#
|
|
136
|
+
will disable it. [List of IDs](https://github.com/csstools/postcss-plugins/blob/main/plugin-packs/postcss-preset-env/src/lib/plugins-by-id.js#L74)
|
|
137
137
|
|
|
138
138
|
```js
|
|
139
139
|
postcssPresetEnv({
|
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
"use strict";var e=require("autoprefixer"),s=require("browserslist"),t=require("cssdb"),r=require("postcss-attribute-case-insensitive"),o=require("css-blank-pseudo"),i=require("postcss-color-functional-notation"),n=require("postcss-color-hex-alpha"),c=require("postcss-color-rebeccapurple"),u=require("postcss-custom-media"),a=require("postcss-custom-properties"),p=require("postcss-custom-selectors"),l=require("postcss-dir-pseudo-class"),f=require("postcss-double-position-gradients"),d=require("postcss-env-function"),m=require("postcss-focus-visible"),b=require("postcss-focus-within"),g=require("postcss-font-variant"),y=require("postcss-gap-properties"),$=require("css-has-pseudo"),j=require("postcss-image-set-function"),q=require("postcss-initial"),v=require("postcss-lab-function"),O=require("postcss-logical"),w=require("postcss-media-minmax"),h=require("postcss-nesting"),x=require("postcss-overflow-shorthand"),k=require("postcss-page-break"),S=require("postcss-place"),P=require("css-prefers-color-scheme"),M=require("postcss-pseudo-class-any-link"),B=require("postcss-replace-overflow-wrap"),F=require("postcss-selector-not"),T=require("caniuse-lite"),A=require("fs"),U=require("path");function E(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function N(e){if(e&&e.__esModule)return e;var s=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(s,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}})),s.default=e,Object.freeze(s)}var C=E(e),D=E(s),I=E(t),J=E(r),R=E(o),V=E(i),_=E(n),z=E(c),L=E(u),G=E(a),H=E(p),K=E(l),Q=E(f),W=E(d),X=E(m),Y=E(b),Z=E(g),ee=E(y),se=E($),te=E(j),re=E(q),oe=E(v),ie=E(O),ne=E(w),ce=E(h),ue=E(x),ae=E(k),pe=E(S),le=E(P),fe=E(M),de=E(B),me=E(F),be=N(T),ge=E(A),ye=E(U);function $e(){return{postcssPlugin:"postcss-system-ui-font",Declaration(e){je.test(e.prop)&&(e.value.includes(ve.join(", "))||(e.value=e.value.replace(Oe,we)))}}}$e.postcss=!0;const je=/(?:^(?:-|\\002d){2})|(?:^font(?:-family)?$)/i,qe="[\\f\\n\\r\\x09\\x20]",ve=["system-ui","-apple-system","Segoe UI","Roboto","Ubuntu","Cantarell","Noto Sans","sans-serif"],Oe=new RegExp(`(^|,|${qe}+)(?:system-ui${qe}*)(?:,${qe}*(?:${ve.join("|")})${qe}*)?(,|$)`,"i"),we=`$1${ve.join(", ")}$2`;var he={"all-property":re.default,"any-link-pseudo-class":fe.default,"blank-pseudo-class":R.default,"break-properties":ae.default,"case-insensitive-attributes":J.default,"color-functional-notation":V.default,"custom-media-queries":L.default,"custom-properties":G.default,"custom-selectors":H.default,"dir-pseudo-class":K.default,"double-position-gradients":Q.default,"environment-variables":W.default,"focus-visible-pseudo-class":X.default,"focus-within-pseudo-class":Y.default,"font-variant-property":Z.default,"gap-properties":ee.default,"has-pseudo-class":se.default,"hexadecimal-alpha-notation":_.default,"image-set-function":te.default,"lab-function":oe.default,"logical-properties-and-values":ie.default,"media-query-ranges":ne.default,"nesting-rules":ce.default,"not-pseudo-class":me.default,"overflow-property":ue.default,"overflow-wrap-property":de.default,"place-properties":pe.default,"prefers-color-scheme-query":le.default,"rebeccapurple-color":z.default,"system-ui-font-family":$e};function xe(e,s){return Object.keys(e).map((t=>[].concat(e[t]).map((e=>({[s]:!0,plugin:e,id:t}))))).reduce(((e,s)=>e.concat(s)),[])}var ke=["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","matches-pseudo-class","not-pseudo-class","logical-properties-and-values","dir-pseudo-class","all-property","color-functional-notation","double-position-gradients","hexadecimal-alpha-notation","lab-function","rebeccapurple-color","color-mod-function","blank-pseudo-class","break-properties","font-variant-property","has-pseudo-class","gap-properties","overflow-property","overflow-wrap-property","place-properties","system-ui-font-family"];async function Se(e,s,t,r){const o=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`}(r),c=`${i}\n${n}\n${o}`;await Te(e,c)}function Pe(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 Me(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 Be(e,s){return Promise.all([].concat(s).map((async s=>{if(s instanceof Function)await s({customMedia:Fe(e.customMedia),customProperties:Fe(e.customProperties),customSelectors:Fe(e.customSelectors)});else{const t=s===Object(s)?s:{to:String(s)},r=t.toJSON||Fe;if("customMedia"in t||"customProperties"in t||"customSelectors"in t)t.customMedia=r(e.customMedia),t.customProperties=r(e.customProperties),t.customSelectors=r(e.customSelectors);else if("custom-media"in t||"custom-properties"in t||"custom-selectors"in t)t["custom-media"]=r(e.customMedia),t["custom-properties"]=r(e.customProperties),t["custom-selectors"]=r(e.customSelectors);else{const s=String(t.to||""),o=(t.type||ye.default.extname(t.to).slice(1)).toLowerCase(),i=r(e.customMedia),n=r(e.customProperties),c=r(e.customSelectors);"css"===o&&await Se(s,i,n,c),"js"===o&&await async function(e,s,t,r){const o=`module.exports = {${Pe("customMedia",s)},${Pe("customProperties",t)},${Pe("customSelectors",r)}\n};\n`;await Te(e,o)}(s,i,n,c),"json"===o&&await async function(e,s,t,r){const o=`${JSON.stringify({"custom-media":s,"custom-properties":t,"custom-selectors":r},null," ")}\n`;await Te(e,o)}(s,i,n,c),"mjs"===o&&await async function(e,s,t,r){const o=`${Me("customMedia",s)}\n${Me("customProperties",t)}\n${Me("customSelectors",r)}`;await Te(e,o)}(s,i,n,c)}}})))}function Fe(e){return Object.keys(e).reduce(((s,t)=>(s[t]=String(e[t]),s)),{})}function Te(e,s){return new Promise(((t,r)=>{ge.default.writeFile(e,s,(e=>{e?r(e):t()}))}))}function Ae(e){return e.replace(/\\([\s\S])|(')/g,"\\$1$2").replace(/\n/g,"\\n").replace(/\r/g,"\\r")}const Ue=e=>{const s=Object(Object(e).features),t=Object(Object(e).insertBefore),r=Object(Object(e).insertAfter),o=Object(e).browsers,i="stage"in Object(e)?!1===e.stage?5:parseInt(e.stage)||0:2,n=Object(e).autoprefixer,c=Ee(Object(e)),u=!1===n?()=>{}:C.default(Object.assign({overrideBrowserslist:o},n)),a=I.default.concat(xe(t,"insertBefore"),xe(r,"insertAfter")).filter((e=>e.insertBefore||e.id in he)).sort(((e,s)=>ke.indexOf(e.id)-ke.indexOf(s.id)||(e.insertBefore?-1:s.insertBefore?1:0)||(e.insertAfter?1:s.insertAfter?-1:0))).map((e=>{const s=function(e){const s=be.features[e];if(s){const e=be.feature(s).stats;return Object.keys(e).reduce(((s,t)=>s.concat(Object.keys(e[t]).filter((s=>0!==e[t][s].indexOf("y"))).map((e=>`${t} ${e}`)))),[])}return["> 0%"]}(e.caniuse);return e.insertBefore||e.insertAfter?{browsers:s,plugin:e.plugin,id:`${e.insertBefore?"before":"after"}-${e.id}`,stage:6}:{browsers:s,plugin:he[e.id],id:e.id,stage:e.stage}})),p=a.filter((e=>e.id in s?s[e.id]:e.stage>=i)).map((e=>{let t,r;return t=!0===s[e.id]?c?Object.assign({},c):void 0:c?Object.assign({},c,s[e.id]):Object.assign({},s[e.id]),r=e.plugin.postcss?e.plugin(t):e.plugin,{browsers:e.browsers,plugin:r,id:e.id}})),l=D.default(o,{ignoreUnknownVersions:!0}),f=p.filter((e=>e.id in s?s[e.id]:l.some((s=>D.default(e.browsers,{ignoreUnknownVersions:!0}).some((e=>e===s)))))).map((e=>e.plugin));return f.push(u),{postcssPlugin:"postcss-preset-env",plugins:f,OnceExit:function(){Object(e).exportTo&&Be(c.exportTo,e.exportTo)}}},Ee=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};Ue.postcss=!0,module.exports=Ue;
|
|
2
|
-
//# sourceMappingURL=index.cjs.map
|
|
1
|
+
"use strict";var e=require("autoprefixer"),s=require("browserslist"),t=require("cssdb"),o=require("postcss-attribute-case-insensitive"),r=require("css-blank-pseudo"),n=require("postcss-color-functional-notation"),i=require("postcss-color-hex-alpha"),c=require("postcss-color-rebeccapurple"),u=require("postcss-custom-media"),a=require("postcss-custom-properties"),p=require("postcss-custom-selectors"),l=require("postcss-dir-pseudo-class"),f=require("postcss-double-position-gradients"),d=require("postcss-env-function"),m=require("postcss-focus-visible"),b=require("postcss-focus-within"),g=require("postcss-font-variant"),y=require("postcss-gap-properties"),O=require("css-has-pseudo"),j=require("postcss-image-set-function"),h=require("postcss-initial"),v=require("postcss-lab-function"),w=require("postcss-logical"),k=require("postcss-media-minmax"),$=require("postcss-nesting"),q=require("postcss-overflow-shorthand"),x=require("postcss-page-break"),S=require("postcss-place"),P=require("css-prefers-color-scheme"),M=require("postcss-pseudo-class-any-link"),F=require("postcss-replace-overflow-wrap"),T=require("postcss-selector-not"),B=require("caniuse-lite"),U=require("fs"),V=require("path");function A(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function E(e){if(e&&e.__esModule)return e;var s=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var o=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(s,t,o.get?o:{enumerable:!0,get:function(){return e[t]}})}})),s.default=e,Object.freeze(s)}var I=A(e),N=A(s),C=A(t),D=A(o),J=A(r),R=A(n),_=A(i),z=A(c),L=A(u),G=A(a),H=A(p),K=A(l),Q=A(f),W=A(d),X=A(m),Y=A(b),Z=A(g),ee=A(y),se=A(O),te=A(j),oe=A(h),re=A(v),ne=A(w),ie=A(k),ce=A($),ue=A(q),ae=A(x),pe=A(S),le=A(P),fe=A(M),de=A(F),me=A(T),be=E(B),ge=A(U),ye=A(V);function Oe(){return{postcssPlugin:"postcss-system-ui-font",Declaration(e){je.test(e.prop)&&(e.value.includes(ve.join(", "))||(e.value=e.value.replace(we,ke)))}}}Oe.postcss=!0;const je=/(?:^(?:-|\\002d){2})|(?:^font(?:-family)?$)/i,he="[\\f\\n\\r\\x09\\x20]",ve=["system-ui","-apple-system","Segoe UI","Roboto","Ubuntu","Cantarell","Noto Sans","sans-serif"],we=new RegExp(`(^|,|${he}+)(?:system-ui${he}*)(?:,${he}*(?:${ve.join("|")})${he}*)?(,|$)`,"i"),ke=`$1${ve.join(", ")}$2`,$e={"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-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-variant":"font-variant-property","postcss-gap-properties":"gap-properties","postcss-image-set-function":"image-set-function","postcss-initial":"all-property","postcss-lab-function":"lab-function","postcss-logical":"logical-properties-and-values","postcss-media-minmax":"media-query-ranges","postcss-nesting":"nesting-rules","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"},qe=(()=>{const e={};for(const[s,t]of Object.entries($e))e[t]=s;return e})(),xe={"all-property":oe.default,"any-link-pseudo-class":fe.default,"blank-pseudo-class":J.default,"break-properties":ae.default,"case-insensitive-attributes":D.default,"color-functional-notation":R.default,"custom-media-queries":L.default,"custom-properties":G.default,"custom-selectors":H.default,"dir-pseudo-class":K.default,"double-position-gradients":Q.default,"environment-variables":W.default,"focus-visible-pseudo-class":X.default,"focus-within-pseudo-class":Y.default,"font-variant-property":Z.default,"gap-properties":ee.default,"has-pseudo-class":se.default,"hexadecimal-alpha-notation":_.default,"image-set-function":te.default,"lab-function":re.default,"logical-properties-and-values":ne.default,"media-query-ranges":ie.default,"nesting-rules":ce.default,"not-pseudo-class":me.default,"overflow-property":ue.default,"overflow-wrap-property":de.default,"place-properties":pe.default,"prefers-color-scheme-query":le.default,"rebeccapurple-color":z.default,"system-ui-font-family":Oe};function Se(e,s){return Object.keys(e).map((t=>[].concat(e[t]).map((e=>({[s]:!0,plugin:e,id:t}))))).reduce(((e,s)=>e.concat(s)),[])}function Pe(e){const s=be.features[e];if(s){const e=be.feature(s).stats;return Object.keys(e).reduce(((s,t)=>s.concat(Object.keys(e[t]).filter((s=>0!==e[t][s].indexOf("y"))).map((e=>`${t} ${e}`)))),[])}return["> 0%"]}var Me=["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","matches-pseudo-class","not-pseudo-class","logical-properties-and-values","dir-pseudo-class","all-property","color-functional-notation","double-position-gradients","hexadecimal-alpha-notation","lab-function","rebeccapurple-color","color-mod-function","blank-pseudo-class","break-properties","font-variant-property","has-pseudo-class","gap-properties","overflow-property","overflow-wrap-property","place-properties","system-ui-font-family"];async function Fe(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),n=function(e){return`${Object.keys(e).reduce(((s,t)=>(s.push(`@custom-media ${t} ${e[t]};`),s)),[]).join("\n")}\n`}(s),i=function(e){return`${Object.keys(e).reduce(((s,t)=>(s.push(`@custom-selector ${t} ${e[t]};`),s)),[]).join("\n")}\n`}(o),c=`${n}\n${i}\n${r}`;await Ae(e,c)}function Te(e,s){return`\n\t${e}: {\n${Object.keys(s).reduce(((e,t)=>(e.push(`\t\t'${Ee(t)}': '${Ee(s[t])}'`),e)),[]).join(",\n")}\n\t}`}function Be(e,s){return`export const ${e} = {\n${Object.keys(s).reduce(((e,t)=>(e.push(`\t'${Ee(t)}': '${Ee(s[t])}'`),e)),[]).join(",\n")}\n};\n`}function Ue(e,s){return Promise.all([].concat(s).map((async s=>{if(s instanceof Function)await s({customMedia:Ve(e.customMedia),customProperties:Ve(e.customProperties),customSelectors:Ve(e.customSelectors)});else{const t=s===Object(s)?s:{to:String(s)},o=t.toJSON||Ve;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||ye.default.extname(t.to).slice(1)).toLowerCase(),n=o(e.customMedia),i=o(e.customProperties),c=o(e.customSelectors);"css"===r&&await Fe(s,n,i,c),"js"===r&&await async function(e,s,t,o){const r=`module.exports = {${Te("customMedia",s)},${Te("customProperties",t)},${Te("customSelectors",o)}\n};\n`;await Ae(e,r)}(s,n,i,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 Ae(e,r)}(s,n,i,c),"mjs"===r&&await async function(e,s,t,o){const r=`${Be("customMedia",s)}\n${Be("customProperties",t)}\n${Be("customSelectors",o)}`;await Ae(e,r)}(s,n,i,c)}}})))}function Ve(e){return Object.keys(e).reduce(((s,t)=>(s[t]=String(e[t]),s)),{})}function Ae(e,s){return new Promise(((t,o)=>{ge.default.writeFile(e,s,(e=>{e?o(e):t()}))}))}function Ee(e){return e.replace(/\\([\s\S])|(')/g,"\\$1$2").replace(/\n/g,"\\n").replace(/\r/g,"\\r")}function Ie(e,s){const t=N.default(e,{ignoreUnknownVersions:!0});return"nesting-rules"===s.id&&function(e,s){const t=Pe(e);if(s.some((e=>N.default(t,{ignoreUnknownVersions:!0}).some((s=>s===e)))))return!0;return!1}("css-matches-pseudo",t)?{noIsPseudoSelector:!0}:{}}function Ne(e,s){let t="unknown",o=1/0;for(let r=0;r<s.length;r++){const n=Ce(e,s[r]);n<o&&(o=n,t=s[r])}return{mostSimilar:t,distance:o}}function Ce(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 De=e=>{const s=Object(Object(e).features),t=Object.keys(s),o=Object(Object(e).insertBefore),r=Object(Object(e).insertAfter),n=Object(e).browsers,i="stage"in Object(e)?!1===e.stage?5:parseInt(e.stage)||0:2,c=Object(e).autoprefixer,u=Je(Object(e)),a=!1===c?()=>{}:I.default(Object.assign({overrideBrowserslist:n},c)),p=C.default.concat(Se(o,"insertBefore"),Se(r,"insertAfter")).filter((e=>e.insertBefore||e.id in xe)).sort(((e,s)=>Me.indexOf(e.id)-Me.indexOf(s.id)||(e.insertBefore?-1:s.insertBefore?1:0)||(e.insertAfter?1:s.insertAfter?-1:0))).map((e=>{const s=Pe(e.caniuse);return e.insertBefore||e.insertAfter?{browsers:s,plugin:e.plugin,id:`${e.insertBefore?"before":"after"}-${e.id}`,stage:6}:{browsers:s,plugin:xe[e.id],id:e.id,stage:e.stage}})).filter((e=>e.id in s?s[e.id]:e.stage>=i)).map((e=>{let t,o;return t=Ie(n,e),t=!0===s[e.id]?u?Object.assign({},t,u):void 0:u?Object.assign({},t,u,s[e.id]):Object.assign({},t,s[e.id]),o=e.plugin.postcss?e.plugin(t):e.plugin,{browsers:e.browsers,plugin:o,pluginOptions:t,id:e.id}})),l=N.default(n,{ignoreUnknownVersions:!0}),f=p.filter((e=>e.id in s?s[e.id]:!!function(e){if("importFrom"in e.pluginOptions)switch(e.id){case"custom-media-queries":if(Object.keys(Object(e.pluginOptions.importFrom.customMedia)).length)return!0;break;case"custom-properties":if(Object.keys(Object(e.pluginOptions.importFrom.customProperties)).length)return!0;break;case"environment-variables":if(Object.keys(Object(e.pluginOptions.importFrom.environmentVariables)).length)return!0;break;case"custom-selectors":if(Object.keys(Object(e.pluginOptions.importFrom.customSelectors)).length)return!0}if("exportTo"in e.pluginOptions)switch(e.id){case"custom-media-queries":if(Object.keys(Object(e.pluginOptions.exportTo.customMedia)).length)return!0;break;case"custom-properties":if(Object.keys(Object(e.pluginOptions.exportTo.customProperties)).length)return!0;break;case"environment-variables":if(Object.keys(Object(e.pluginOptions.exportTo.environmentVariables)).length)return!0;break;case"custom-selectors":if(Object.keys(Object(e.pluginOptions.exportTo.customSelectors)).length)return!0}return!1}(e)||l.some((s=>N.default(e.browsers,{ignoreUnknownVersions:!0}).some((e=>e===s)))))).map((e=>e.plugin));f.push(a);const d=()=>({postcssPlugin:"postcss-preset-env",OnceExit:function(s,{result:o}){!function(e,s,t){const o=Object.keys(qe),r=Object.keys($e);e.forEach((e=>{if(o.includes(e))return;const n=Ne(e,o),i=Ne(e,r);n.distance<i.distance?s.warn(t,`Unknown feature: "${e}" did you mean: "${n.mostSimilar}"`):s.warn(t,`Unknown feature: "${e}" did you mean: "${$e[i.mostSimilar]}"`)}))}(t,s,o),Object(e).exportTo&&Ue(u.exportTo,e.exportTo)}});return d.postcss=!0,{postcssPlugin:"postcss-preset-env",plugins:[...f,d()]}},Je=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};De.postcss=!0,module.exports=De;
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import s from"autoprefixer";import e from"browserslist";import o from"cssdb";import t from"postcss-attribute-case-insensitive";import r from"css-blank-pseudo";import i from"postcss-color-functional-notation";import n from"postcss-color-hex-alpha";import c from"postcss-color-rebeccapurple";import p from"postcss-custom-media";import a from"postcss-custom-properties";import u from"postcss-custom-selectors";import m from"postcss-dir-pseudo-class";import l from"postcss-double-position-gradients";import f from"postcss-env-function";import d from"postcss-focus-visible";import b from"postcss-focus-within";import g from"postcss-font-variant";import $ from"postcss-gap-properties";import y from"css-has-pseudo";import j from"postcss-image-set-function";import w from"postcss-initial";import v from"postcss-lab-function";import O from"postcss-logical";import h from"postcss-media-minmax";import x from"postcss-nesting";import k from"postcss-overflow-shorthand";import S from"postcss-page-break";import P from"postcss-place";import M from"css-prefers-color-scheme";import B from"postcss-pseudo-class-any-link";import q from"postcss-replace-overflow-wrap";import F from"postcss-selector-not";import*as T from"caniuse-lite";import A from"fs";import U from"path";function N(){return{postcssPlugin:"postcss-system-ui-font",Declaration(s){C.test(s.prop)&&(s.value.includes(I.join(", "))||(s.value=s.value.replace(J,R)))}}}N.postcss=!0;const C=/(?:^(?:-|\\002d){2})|(?:^font(?:-family)?$)/i,E="[\\f\\n\\r\\x09\\x20]",I=["system-ui","-apple-system","Segoe UI","Roboto","Ubuntu","Cantarell","Noto Sans","sans-serif"],J=new RegExp(`(^|,|${E}+)(?:system-ui${E}*)(?:,${E}*(?:${I.join("|")})${E}*)?(,|$)`,"i"),R=`$1${I.join(", ")}$2`;var V={"all-property":w,"any-link-pseudo-class":B,"blank-pseudo-class":r,"break-properties":S,"case-insensitive-attributes":t,"color-functional-notation":i,"custom-media-queries":p,"custom-properties":a,"custom-selectors":u,"dir-pseudo-class":m,"double-position-gradients":l,"environment-variables":f,"focus-visible-pseudo-class":d,"focus-within-pseudo-class":b,"font-variant-property":g,"gap-properties":$,"has-pseudo-class":y,"hexadecimal-alpha-notation":n,"image-set-function":j,"lab-function":v,"logical-properties-and-values":O,"media-query-ranges":h,"nesting-rules":x,"not-pseudo-class":F,"overflow-property":k,"overflow-wrap-property":q,"place-properties":P,"prefers-color-scheme-query":M,"rebeccapurple-color":c,"system-ui-font-family":N};function D(s,e){return Object.keys(s).map((o=>[].concat(s[o]).map((s=>({[e]:!0,plugin:s,id:o}))))).reduce(((s,e)=>s.concat(e)),[])}var L=["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","matches-pseudo-class","not-pseudo-class","logical-properties-and-values","dir-pseudo-class","all-property","color-functional-notation","double-position-gradients","hexadecimal-alpha-notation","lab-function","rebeccapurple-color","color-mod-function","blank-pseudo-class","break-properties","font-variant-property","has-pseudo-class","gap-properties","overflow-property","overflow-wrap-property","place-properties","system-ui-font-family"];async function z(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 W(s,c)}function G(s,e){return`\n\t${s}: {\n${Object.keys(e).reduce(((s,o)=>(s.push(`\t\t'${X(o)}': '${X(e[o])}'`),s)),[]).join(",\n")}\n\t}`}function H(s,e){return`export const ${s} = {\n${Object.keys(e).reduce(((s,o)=>(s.push(`\t'${X(o)}': '${X(e[o])}'`),s)),[]).join(",\n")}\n};\n`}function K(s,e){return Promise.all([].concat(e).map((async e=>{if(e instanceof Function)await e({customMedia:Q(s.customMedia),customProperties:Q(s.customProperties),customSelectors:Q(s.customSelectors)});else{const o=e===Object(e)?e:{to:String(e)},t=o.toJSON||Q;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||""),r=(o.type||U.extname(o.to).slice(1)).toLowerCase(),i=t(s.customMedia),n=t(s.customProperties),c=t(s.customSelectors);"css"===r&&await z(e,i,n,c),"js"===r&&await async function(s,e,o,t){const r=`module.exports = {${G("customMedia",e)},${G("customProperties",o)},${G("customSelectors",t)}\n};\n`;await W(s,r)}(e,i,n,c),"json"===r&&await async function(s,e,o,t){const r=`${JSON.stringify({"custom-media":e,"custom-properties":o,"custom-selectors":t},null," ")}\n`;await W(s,r)}(e,i,n,c),"mjs"===r&&await async function(s,e,o,t){const r=`${H("customMedia",e)}\n${H("customProperties",o)}\n${H("customSelectors",t)}`;await W(s,r)}(e,i,n,c)}}})))}function Q(s){return Object.keys(s).reduce(((e,o)=>(e[o]=String(s[o]),e)),{})}function W(s,e){return new Promise(((o,t)=>{A.writeFile(s,e,(s=>{s?t(s):o()}))}))}function X(s){return s.replace(/\\([\s\S])|(')/g,"\\$1$2").replace(/\n/g,"\\n").replace(/\r/g,"\\r")}const Y=t=>{const r=Object(Object(t).features),i=Object(Object(t).insertBefore),n=Object(Object(t).insertAfter),c=Object(t).browsers,p="stage"in Object(t)?!1===t.stage?5:parseInt(t.stage)||0:2,a=Object(t).autoprefixer,u=Z(Object(t)),m=!1===a?()=>{}:s(Object.assign({overrideBrowserslist:c},a)),l=o.concat(D(i,"insertBefore"),D(n,"insertAfter")).filter((s=>s.insertBefore||s.id in V)).sort(((s,e)=>L.indexOf(s.id)-L.indexOf(e.id)||(s.insertBefore?-1:e.insertBefore?1:0)||(s.insertAfter?1:e.insertAfter?-1:0))).map((s=>{const e=function(s){const e=T.features[s];if(e){const s=T.feature(e).stats;return Object.keys(s).reduce(((e,o)=>e.concat(Object.keys(s[o]).filter((e=>0!==s[o][e].indexOf("y"))).map((s=>`${o} ${s}`)))),[])}return["> 0%"]}(s.caniuse);return s.insertBefore||s.insertAfter?{browsers:e,plugin:s.plugin,id:`${s.insertBefore?"before":"after"}-${s.id}`,stage:6}:{browsers:e,plugin:V[s.id],id:s.id,stage:s.stage}})),f=l.filter((s=>s.id in r?r[s.id]:s.stage>=p)).map((s=>{let e,o;return e=!0===r[s.id]?u?Object.assign({},u):void 0:u?Object.assign({},u,r[s.id]):Object.assign({},r[s.id]),o=s.plugin.postcss?s.plugin(e):s.plugin,{browsers:s.browsers,plugin:o,id:s.id}})),d=e(c,{ignoreUnknownVersions:!0}),b=f.filter((s=>s.id in r?r[s.id]:d.some((o=>e(s.browsers,{ignoreUnknownVersions:!0}).some((s=>s===o)))))).map((s=>s.plugin));return b.push(m),{postcssPlugin:"postcss-preset-env",plugins:b,OnceExit:function(){Object(t).exportTo&&K(u.exportTo,t.exportTo)}}},Z=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};Y.postcss=!0;export{Y as default};
|
|
2
|
-
//# sourceMappingURL=index.mjs.map
|
|
1
|
+
import s from"autoprefixer";import e from"browserslist";import t from"cssdb";import o from"postcss-attribute-case-insensitive";import r from"css-blank-pseudo";import i from"postcss-color-functional-notation";import n from"postcss-color-hex-alpha";import c from"postcss-color-rebeccapurple";import p from"postcss-custom-media";import a from"postcss-custom-properties";import u from"postcss-custom-selectors";import l from"postcss-dir-pseudo-class";import m from"postcss-double-position-gradients";import f from"postcss-env-function";import d from"postcss-focus-visible";import b from"postcss-focus-within";import g from"postcss-font-variant";import y from"postcss-gap-properties";import O from"css-has-pseudo";import h from"postcss-image-set-function";import j from"postcss-initial";import v from"postcss-lab-function";import w from"postcss-logical";import k from"postcss-media-minmax";import $ from"postcss-nesting";import x from"postcss-overflow-shorthand";import S from"postcss-page-break";import P from"postcss-place";import M from"css-prefers-color-scheme";import q from"postcss-pseudo-class-any-link";import F from"postcss-replace-overflow-wrap";import T from"postcss-selector-not";import*as B from"caniuse-lite";import U from"fs";import V from"path";function A(){return{postcssPlugin:"postcss-system-ui-font",Declaration(s){E.test(s.prop)&&(s.value.includes(N.join(", "))||(s.value=s.value.replace(C,J)))}}}A.postcss=!0;const E=/(?:^(?:-|\\002d){2})|(?:^font(?:-family)?$)/i,I="[\\f\\n\\r\\x09\\x20]",N=["system-ui","-apple-system","Segoe UI","Roboto","Ubuntu","Cantarell","Noto Sans","sans-serif"],C=new RegExp(`(^|,|${I}+)(?:system-ui${I}*)(?:,${I}*(?:${N.join("|")})${I}*)?(,|$)`,"i"),J=`$1${N.join(", ")}$2`,R={"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-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-variant":"font-variant-property","postcss-gap-properties":"gap-properties","postcss-image-set-function":"image-set-function","postcss-initial":"all-property","postcss-lab-function":"lab-function","postcss-logical":"logical-properties-and-values","postcss-media-minmax":"media-query-ranges","postcss-nesting":"nesting-rules","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"},D=(()=>{const s={};for(const[e,t]of Object.entries(R))s[t]=e;return s})(),L={"all-property":j,"any-link-pseudo-class":q,"blank-pseudo-class":r,"break-properties":S,"case-insensitive-attributes":o,"color-functional-notation":i,"custom-media-queries":p,"custom-properties":a,"custom-selectors":u,"dir-pseudo-class":l,"double-position-gradients":m,"environment-variables":f,"focus-visible-pseudo-class":d,"focus-within-pseudo-class":b,"font-variant-property":g,"gap-properties":y,"has-pseudo-class":O,"hexadecimal-alpha-notation":n,"image-set-function":h,"lab-function":v,"logical-properties-and-values":w,"media-query-ranges":k,"nesting-rules":$,"not-pseudo-class":T,"overflow-property":x,"overflow-wrap-property":F,"place-properties":P,"prefers-color-scheme-query":M,"rebeccapurple-color":c,"system-ui-font-family":A};function z(s,e){return Object.keys(s).map((t=>[].concat(s[t]).map((s=>({[e]:!0,plugin:s,id:t}))))).reduce(((s,e)=>s.concat(e)),[])}function G(s){const e=B.features[s];if(e){const s=B.feature(e).stats;return Object.keys(s).reduce(((e,t)=>e.concat(Object.keys(s[t]).filter((e=>0!==s[t][e].indexOf("y"))).map((s=>`${t} ${s}`)))),[])}return["> 0%"]}var H=["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","matches-pseudo-class","not-pseudo-class","logical-properties-and-values","dir-pseudo-class","all-property","color-functional-notation","double-position-gradients","hexadecimal-alpha-notation","lab-function","rebeccapurple-color","color-mod-function","blank-pseudo-class","break-properties","font-variant-property","has-pseudo-class","gap-properties","overflow-property","overflow-wrap-property","place-properties","system-ui-font-family"];async function K(s,e,t,o){const r=function(s){return`:root {\n${Object.keys(s).reduce(((e,t)=>(e.push(`\t${t}: ${s[t]};`),e)),[]).join("\n")}\n}\n`}(t),i=function(s){return`${Object.keys(s).reduce(((e,t)=>(e.push(`@custom-media ${t} ${s[t]};`),e)),[]).join("\n")}\n`}(e),n=function(s){return`${Object.keys(s).reduce(((e,t)=>(e.push(`@custom-selector ${t} ${s[t]};`),e)),[]).join("\n")}\n`}(o),c=`${i}\n${n}\n${r}`;await Z(s,c)}function Q(s,e){return`\n\t${s}: {\n${Object.keys(e).reduce(((s,t)=>(s.push(`\t\t'${_(t)}': '${_(e[t])}'`),s)),[]).join(",\n")}\n\t}`}function W(s,e){return`export const ${s} = {\n${Object.keys(e).reduce(((s,t)=>(s.push(`\t'${_(t)}': '${_(e[t])}'`),s)),[]).join(",\n")}\n};\n`}function X(s,e){return Promise.all([].concat(e).map((async e=>{if(e instanceof Function)await e({customMedia:Y(s.customMedia),customProperties:Y(s.customProperties),customSelectors:Y(s.customSelectors)});else{const t=e===Object(e)?e:{to:String(e)},o=t.toJSON||Y;if("customMedia"in t||"customProperties"in t||"customSelectors"in t)t.customMedia=o(s.customMedia),t.customProperties=o(s.customProperties),t.customSelectors=o(s.customSelectors);else if("custom-media"in t||"custom-properties"in t||"custom-selectors"in t)t["custom-media"]=o(s.customMedia),t["custom-properties"]=o(s.customProperties),t["custom-selectors"]=o(s.customSelectors);else{const e=String(t.to||""),r=(t.type||V.extname(t.to).slice(1)).toLowerCase(),i=o(s.customMedia),n=o(s.customProperties),c=o(s.customSelectors);"css"===r&&await K(e,i,n,c),"js"===r&&await async function(s,e,t,o){const r=`module.exports = {${Q("customMedia",e)},${Q("customProperties",t)},${Q("customSelectors",o)}\n};\n`;await Z(s,r)}(e,i,n,c),"json"===r&&await async function(s,e,t,o){const r=`${JSON.stringify({"custom-media":e,"custom-properties":t,"custom-selectors":o},null," ")}\n`;await Z(s,r)}(e,i,n,c),"mjs"===r&&await async function(s,e,t,o){const r=`${W("customMedia",e)}\n${W("customProperties",t)}\n${W("customSelectors",o)}`;await Z(s,r)}(e,i,n,c)}}})))}function Y(s){return Object.keys(s).reduce(((e,t)=>(e[t]=String(s[t]),e)),{})}function Z(s,e){return new Promise(((t,o)=>{U.writeFile(s,e,(s=>{s?o(s):t()}))}))}function _(s){return s.replace(/\\([\s\S])|(')/g,"\\$1$2").replace(/\n/g,"\\n").replace(/\r/g,"\\r")}function ss(s,t){const o=e(s,{ignoreUnknownVersions:!0});return"nesting-rules"===t.id&&function(s,t){const o=G(s);if(t.some((s=>e(o,{ignoreUnknownVersions:!0}).some((e=>e===s)))))return!0;return!1}("css-matches-pseudo",o)?{noIsPseudoSelector:!0}:{}}function es(s,e){let t="unknown",o=1/0;for(let r=0;r<e.length;r++){const i=ts(s,e[r]);i<o&&(o=i,t=e[r])}return{mostSimilar:t,distance:o}}function ts(s,e){if(!s.length)return e.length;if(!e.length)return s.length;const t=[];for(let o=0;o<=e.length;o++){t[o]=[o];for(let r=1;r<=s.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]+(s[r-1]===e[o-1]?0:1))}return t[e.length][s.length]}const os=o=>{const r=Object(Object(o).features),i=Object.keys(r),n=Object(Object(o).insertBefore),c=Object(Object(o).insertAfter),p=Object(o).browsers,a="stage"in Object(o)?!1===o.stage?5:parseInt(o.stage)||0:2,u=Object(o).autoprefixer,l=rs(Object(o)),m=!1===u?()=>{}:s(Object.assign({overrideBrowserslist:p},u)),f=t.concat(z(n,"insertBefore"),z(c,"insertAfter")).filter((s=>s.insertBefore||s.id in L)).sort(((s,e)=>H.indexOf(s.id)-H.indexOf(e.id)||(s.insertBefore?-1:e.insertBefore?1:0)||(s.insertAfter?1:e.insertAfter?-1:0))).map((s=>{const e=G(s.caniuse);return s.insertBefore||s.insertAfter?{browsers:e,plugin:s.plugin,id:`${s.insertBefore?"before":"after"}-${s.id}`,stage:6}:{browsers:e,plugin:L[s.id],id:s.id,stage:s.stage}})).filter((s=>s.id in r?r[s.id]:s.stage>=a)).map((s=>{let e,t;return e=ss(p,s),e=!0===r[s.id]?l?Object.assign({},e,l):void 0:l?Object.assign({},e,l,r[s.id]):Object.assign({},e,r[s.id]),t=s.plugin.postcss?s.plugin(e):s.plugin,{browsers:s.browsers,plugin:t,pluginOptions:e,id:s.id}})),d=e(p,{ignoreUnknownVersions:!0}),b=f.filter((s=>s.id in r?r[s.id]:!!function(s){if("importFrom"in s.pluginOptions)switch(s.id){case"custom-media-queries":if(Object.keys(Object(s.pluginOptions.importFrom.customMedia)).length)return!0;break;case"custom-properties":if(Object.keys(Object(s.pluginOptions.importFrom.customProperties)).length)return!0;break;case"environment-variables":if(Object.keys(Object(s.pluginOptions.importFrom.environmentVariables)).length)return!0;break;case"custom-selectors":if(Object.keys(Object(s.pluginOptions.importFrom.customSelectors)).length)return!0}if("exportTo"in s.pluginOptions)switch(s.id){case"custom-media-queries":if(Object.keys(Object(s.pluginOptions.exportTo.customMedia)).length)return!0;break;case"custom-properties":if(Object.keys(Object(s.pluginOptions.exportTo.customProperties)).length)return!0;break;case"environment-variables":if(Object.keys(Object(s.pluginOptions.exportTo.environmentVariables)).length)return!0;break;case"custom-selectors":if(Object.keys(Object(s.pluginOptions.exportTo.customSelectors)).length)return!0}return!1}(s)||d.some((t=>e(s.browsers,{ignoreUnknownVersions:!0}).some((s=>s===t)))))).map((s=>s.plugin));b.push(m);const g=()=>({postcssPlugin:"postcss-preset-env",OnceExit:function(s,{result:e}){!function(s,e,t){const o=Object.keys(D),r=Object.keys(R);s.forEach((s=>{if(o.includes(s))return;const i=es(s,o),n=es(s,r);i.distance<n.distance?e.warn(t,`Unknown feature: "${s}" did you mean: "${i.mostSimilar}"`):e.warn(t,`Unknown feature: "${s}" did you mean: "${R[n.mostSimilar]}"`)}))}(i,s,e),Object(o).exportTo&&X(l.exportTo,o.exportTo)}});return g.postcss=!0,{postcssPlugin:"postcss-preset-env",plugins:[...b,g()]}},rs=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};os.postcss=!0;export{os as default};
|
package/package.json
CHANGED
|
@@ -1,66 +1,63 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "postcss-preset-env",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.2.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",
|
|
7
|
-
"homepage": "https://github.com/csstools/postcss-plugins/tree/main/
|
|
7
|
+
"homepage": "https://github.com/csstools/postcss-plugins/tree/main/plugin-packs/postcss-preset-env#readme",
|
|
8
8
|
"bugs": "https://github.com/csstools/postcss-plugins/issues",
|
|
9
9
|
"main": "dist/index.cjs",
|
|
10
10
|
"module": "dist/index.mjs",
|
|
11
11
|
"files": [
|
|
12
12
|
"CHANGELOG.md",
|
|
13
|
-
"INSTALL.md",
|
|
14
13
|
"LICENSE.md",
|
|
15
14
|
"README.md",
|
|
16
15
|
"dist"
|
|
17
16
|
],
|
|
18
|
-
"bin": {
|
|
19
|
-
"postcss-preset-env": "dist/cli.mjs"
|
|
20
|
-
},
|
|
21
17
|
"scripts": {
|
|
22
18
|
"build": "rollup -c ../../rollup/default.js",
|
|
23
19
|
"clean": "node -e \"fs.rmSync('./dist', { recursive: true, force: true });\"",
|
|
24
20
|
"lint": "eslint ./src --ext .js --ext .ts --ext .mjs --no-error-on-unmatched-pattern",
|
|
25
21
|
"prepublishOnly": "npm run clean && npm run build && npm run test",
|
|
26
22
|
"stryker": "stryker run --logLevel error",
|
|
27
|
-
"test": "postcss-tape --ci"
|
|
23
|
+
"test": "postcss-tape --ci && npm run test:exports",
|
|
24
|
+
"test:exports": "node ./test/_import.mjs && node ./test/_require.cjs"
|
|
28
25
|
},
|
|
29
26
|
"engines": {
|
|
30
27
|
"node": "^12 || ^14 || >=16"
|
|
31
28
|
},
|
|
32
29
|
"dependencies": {
|
|
33
|
-
"autoprefixer": "^10.4.
|
|
30
|
+
"autoprefixer": "^10.4.2",
|
|
34
31
|
"browserslist": "^4.19.1",
|
|
35
|
-
"caniuse-lite": "^1.0.
|
|
36
|
-
"css-blank-pseudo": "^3.0.
|
|
37
|
-
"css-has-pseudo": "^3.0.
|
|
38
|
-
"css-prefers-color-scheme": "^6.0.
|
|
32
|
+
"caniuse-lite": "^1.0.30001299",
|
|
33
|
+
"css-blank-pseudo": "^3.0.2",
|
|
34
|
+
"css-has-pseudo": "^3.0.3",
|
|
35
|
+
"css-prefers-color-scheme": "^6.0.2",
|
|
39
36
|
"cssdb": "^5.0.0",
|
|
40
37
|
"postcss-attribute-case-insensitive": "^5.0.0",
|
|
41
|
-
"postcss-color-functional-notation": "^4.1
|
|
42
|
-
"postcss-color-hex-alpha": "^8.0.
|
|
43
|
-
"postcss-color-rebeccapurple": "^7.0.
|
|
38
|
+
"postcss-color-functional-notation": "^4.2.1",
|
|
39
|
+
"postcss-color-hex-alpha": "^8.0.2",
|
|
40
|
+
"postcss-color-rebeccapurple": "^7.0.2",
|
|
44
41
|
"postcss-custom-media": "^8.0.0",
|
|
45
|
-
"postcss-custom-properties": "^12.
|
|
42
|
+
"postcss-custom-properties": "^12.1.2",
|
|
46
43
|
"postcss-custom-selectors": "^6.0.0",
|
|
47
|
-
"postcss-dir-pseudo-class": "^6.0.
|
|
48
|
-
"postcss-double-position-gradients": "^3.0.
|
|
49
|
-
"postcss-env-function": "^4.0.
|
|
50
|
-
"postcss-focus-visible": "^6.0.
|
|
51
|
-
"postcss-focus-within": "^5.0.
|
|
44
|
+
"postcss-dir-pseudo-class": "^6.0.3",
|
|
45
|
+
"postcss-double-position-gradients": "^3.0.4",
|
|
46
|
+
"postcss-env-function": "^4.0.4",
|
|
47
|
+
"postcss-focus-visible": "^6.0.3",
|
|
48
|
+
"postcss-focus-within": "^5.0.3",
|
|
52
49
|
"postcss-font-variant": "^5.0.0",
|
|
53
|
-
"postcss-gap-properties": "^3.0.
|
|
54
|
-
"postcss-image-set-function": "^4.0.
|
|
50
|
+
"postcss-gap-properties": "^3.0.2",
|
|
51
|
+
"postcss-image-set-function": "^4.0.4",
|
|
55
52
|
"postcss-initial": "^4.0.1",
|
|
56
|
-
"postcss-lab-function": "^4.0.
|
|
57
|
-
"postcss-logical": "^5.0.
|
|
53
|
+
"postcss-lab-function": "^4.0.3",
|
|
54
|
+
"postcss-logical": "^5.0.3",
|
|
58
55
|
"postcss-media-minmax": "^5.0.0",
|
|
59
|
-
"postcss-nesting": "^10.
|
|
60
|
-
"postcss-overflow-shorthand": "^3.0.
|
|
56
|
+
"postcss-nesting": "^10.1.2",
|
|
57
|
+
"postcss-overflow-shorthand": "^3.0.2",
|
|
61
58
|
"postcss-page-break": "^3.0.4",
|
|
62
|
-
"postcss-place": "^7.0.
|
|
63
|
-
"postcss-pseudo-class-any-link": "^7.0.
|
|
59
|
+
"postcss-place": "^7.0.3",
|
|
60
|
+
"postcss-pseudo-class-any-link": "^7.0.2",
|
|
64
61
|
"postcss-replace-overflow-wrap": "^4.0.0",
|
|
65
62
|
"postcss-selector-not": "^5.0.0"
|
|
66
63
|
},
|
|
@@ -70,7 +67,7 @@
|
|
|
70
67
|
"postcss-tape": "^6.0.1"
|
|
71
68
|
},
|
|
72
69
|
"peerDependencies": {
|
|
73
|
-
"postcss": "^8.
|
|
70
|
+
"postcss": "^8.4"
|
|
74
71
|
},
|
|
75
72
|
"keywords": [
|
|
76
73
|
"postcss",
|
package/INSTALL.md
DELETED
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
# Installing PostCSS Preset Env
|
|
2
|
-
|
|
3
|
-
[PostCSS Preset Env] runs in all Node environments, with special instructions for:
|
|
4
|
-
|
|
5
|
-
| [Node](#node) | [PostCSS CLI](#postcss-cli) | [Webpack](#webpack) | [Create React App](#create-react-app) | [Gulp](#gulp) | [Grunt](#grunt) | [Rollup](#rollup) |
|
|
6
|
-
| --- | --- | --- | --- | --- | --- | --- |
|
|
7
|
-
|
|
8
|
-
## Node
|
|
9
|
-
|
|
10
|
-
Add [PostCSS Preset Env] to your project:
|
|
11
|
-
|
|
12
|
-
```bash
|
|
13
|
-
npm install postcss-preset-env --save-dev
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
Use [PostCSS Preset Env] as a [PostCSS] plugin:
|
|
17
|
-
|
|
18
|
-
```js
|
|
19
|
-
const postcss = require('postcss');
|
|
20
|
-
const postcssPresetEnv = require('postcss-preset-env');
|
|
21
|
-
|
|
22
|
-
postcss([
|
|
23
|
-
postcssPresetEnv(/* pluginOptions */)
|
|
24
|
-
]).process(YOUR_CSS /*, processOptions */);
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
## PostCSS CLI
|
|
28
|
-
|
|
29
|
-
Add [PostCSS CLI] to your project:
|
|
30
|
-
|
|
31
|
-
```bash
|
|
32
|
-
npm install postcss-cli --save-dev
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
Use [PostCSS Preset Env] in your `postcss.config.js` configuration file:
|
|
36
|
-
|
|
37
|
-
```js
|
|
38
|
-
const postcssPresetEnv = require('postcss-preset-env');
|
|
39
|
-
|
|
40
|
-
module.exports = {
|
|
41
|
-
plugins: [
|
|
42
|
-
postcssPresetEnv(/* pluginOptions */)
|
|
43
|
-
]
|
|
44
|
-
}
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
## Webpack
|
|
48
|
-
|
|
49
|
-
Add [PostCSS Loader] to your project:
|
|
50
|
-
|
|
51
|
-
```bash
|
|
52
|
-
npm install postcss-loader --save-dev
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
Use [PostCSS Preset Env] in your Webpack configuration:
|
|
56
|
-
|
|
57
|
-
```js
|
|
58
|
-
const postcssPresetEnv = require('postcss-preset-env');
|
|
59
|
-
|
|
60
|
-
module.exports = {
|
|
61
|
-
module: {
|
|
62
|
-
rules: [
|
|
63
|
-
{
|
|
64
|
-
test: /\.css$/,
|
|
65
|
-
use: [
|
|
66
|
-
'style-loader',
|
|
67
|
-
{ loader: 'css-loader', options: { importLoaders: 1 } },
|
|
68
|
-
{
|
|
69
|
-
loader: 'postcss-loader',
|
|
70
|
-
options: {
|
|
71
|
-
postcssOptions: {
|
|
72
|
-
plugins: [postcssPresetEnv(/* pluginOptions */)],
|
|
73
|
-
},
|
|
74
|
-
},
|
|
75
|
-
},
|
|
76
|
-
],
|
|
77
|
-
},
|
|
78
|
-
],
|
|
79
|
-
},
|
|
80
|
-
};
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
## Create React App
|
|
84
|
-
|
|
85
|
-
**PostCSS Preset Env is already bundled with Create React App 2.**
|
|
86
|
-
|
|
87
|
-
For Create React App 1, add [React App Rewired] and [React App Rewire PostCSS]
|
|
88
|
-
to your project:
|
|
89
|
-
|
|
90
|
-
```bash
|
|
91
|
-
npm install react-app-rewired react-app-rewire-postcss --save-dev
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
Use [React App Rewire PostCSS] and [PostCSS Preset Env] in your
|
|
95
|
-
`config-overrides.js` file:
|
|
96
|
-
|
|
97
|
-
```js
|
|
98
|
-
const reactAppRewirePostcss = require('react-app-rewire-postcss');
|
|
99
|
-
const postcssPresetEnv = require('postcss-preset-env');
|
|
100
|
-
|
|
101
|
-
module.exports = config => reactAppRewirePostcss(config, {
|
|
102
|
-
plugins: () => [
|
|
103
|
-
postcssPresetEnv(/* pluginOptions */)
|
|
104
|
-
]
|
|
105
|
-
});
|
|
106
|
-
```
|
|
107
|
-
|
|
108
|
-
## Gulp
|
|
109
|
-
|
|
110
|
-
Add [Gulp PostCSS] to your project:
|
|
111
|
-
|
|
112
|
-
```bash
|
|
113
|
-
npm install gulp-postcss --save-dev
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
Use [PostCSS Preset Env] in your Gulpfile:
|
|
117
|
-
|
|
118
|
-
```js
|
|
119
|
-
const postcss = require('gulp-postcss');
|
|
120
|
-
const postcssPresetEnv = require('postcss-preset-env');
|
|
121
|
-
|
|
122
|
-
gulp.task('css', () => gulp.src('./src/*.css').pipe(
|
|
123
|
-
postcss([
|
|
124
|
-
postcssPresetEnv(/* pluginOptions */)
|
|
125
|
-
])
|
|
126
|
-
).pipe(
|
|
127
|
-
gulp.dest('.')
|
|
128
|
-
));
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
## Grunt
|
|
132
|
-
|
|
133
|
-
Add [Grunt PostCSS] to your project:
|
|
134
|
-
|
|
135
|
-
```bash
|
|
136
|
-
npm install grunt-postcss --save-dev
|
|
137
|
-
```
|
|
138
|
-
|
|
139
|
-
Use [PostCSS Preset Env] in your Gruntfile:
|
|
140
|
-
|
|
141
|
-
```js
|
|
142
|
-
const postcssPresetEnv = require('postcss-preset-env');
|
|
143
|
-
|
|
144
|
-
grunt.loadNpmTasks('grunt-postcss');
|
|
145
|
-
|
|
146
|
-
grunt.initConfig({
|
|
147
|
-
postcss: {
|
|
148
|
-
options: {
|
|
149
|
-
processors: [
|
|
150
|
-
postcssPresetEnv(/* pluginOptions */)
|
|
151
|
-
]
|
|
152
|
-
},
|
|
153
|
-
dist: {
|
|
154
|
-
src: '*.css'
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
});
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
## Rollup
|
|
161
|
-
|
|
162
|
-
Complete [PostCSS CLI](#postcss-cli) setup.
|
|
163
|
-
|
|
164
|
-
Add [Rollup Plugin PostCSS] to your project:
|
|
165
|
-
|
|
166
|
-
```bash
|
|
167
|
-
npm install rollup-plugin-postcss --save-dev
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
Use [Rollup Plugin PostCSS] in your rollup.config.js:
|
|
171
|
-
|
|
172
|
-
```js
|
|
173
|
-
import postcss from 'rollup-plugin-postcss';
|
|
174
|
-
|
|
175
|
-
module.exports = {
|
|
176
|
-
input: '...',
|
|
177
|
-
output: {...},
|
|
178
|
-
plugins: [
|
|
179
|
-
postcss({/* options */ })
|
|
180
|
-
]
|
|
181
|
-
};
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
[Gulp PostCSS]: https://github.com/postcss/gulp-postcss
|
|
185
|
-
[Grunt PostCSS]: https://github.com/nDmitry/grunt-postcss
|
|
186
|
-
[PostCSS]: https://github.com/postcss/postcss
|
|
187
|
-
[PostCSS CLI]: https://github.com/postcss/postcss-cli
|
|
188
|
-
[PostCSS Loader]: https://github.com/postcss/postcss-loader
|
|
189
|
-
[PostCSS Preset Env]: https://github.com/csstools/postcss-plugins/tree/main/plugin-packs/postcss-preset-env
|
|
190
|
-
[React App Rewire PostCSS]: https://github.com/csstools/react-app-rewire-postcss
|
|
191
|
-
[React App Rewired]: https://github.com/timarney/react-app-rewired
|
|
192
|
-
[Rollup Plugin PostCSS]: https://github.com/egoist/rollup-plugin-postcss
|
package/dist/cli.mjs
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
import e from"autoprefixer";import t from"browserslist";import r from"cssdb";import n from"postcss-attribute-case-insensitive";import s from"css-blank-pseudo";import o from"postcss-color-functional-notation";import i from"postcss-color-hex-alpha";import a from"postcss-color-rebeccapurple";import l from"postcss-custom-media";import u from"postcss-custom-properties";import c from"postcss-custom-selectors";import p from"postcss-dir-pseudo-class";import h from"postcss-double-position-gradients";import f from"postcss-env-function";import d from"postcss-focus-visible";import m from"postcss-focus-within";import g from"postcss-font-variant";import w from"postcss-gap-properties";import y from"css-has-pseudo";import v from"postcss-image-set-function";import b from"postcss-initial";import S from"postcss-lab-function";import C from"postcss-logical";import _ from"postcss-media-minmax";import O from"postcss-nesting";import x from"postcss-overflow-shorthand";import A from"postcss-page-break";import k from"postcss-place";import M from"css-prefers-color-scheme";import E from"postcss-pseudo-class-any-link";import L from"postcss-replace-overflow-wrap";import P from"postcss-selector-not";import*as R from"caniuse-lite";import j,{promises as I}from"fs";import $ from"path";import F from"tty";import N from"url";function B(){return{postcssPlugin:"postcss-system-ui-font",Declaration(e){U.test(e.prop)&&(e.value.includes(T.join(", "))||(e.value=e.value.replace(G,z)))}}}B.postcss=!0;const U=/(?:^(?:-|\\002d){2})|(?:^font(?:-family)?$)/i,D="[\\f\\n\\r\\x09\\x20]",T=["system-ui","-apple-system","Segoe UI","Roboto","Ubuntu","Cantarell","Noto Sans","sans-serif"],G=new RegExp(`(^|,|${D}+)(?:system-ui${D}*)(?:,${D}*(?:${T.join("|")})${D}*)?(,|$)`,"i"),z=`$1${T.join(", ")}$2`;var V={"all-property":b,"any-link-pseudo-class":E,"blank-pseudo-class":s,"break-properties":A,"case-insensitive-attributes":n,"color-functional-notation":o,"custom-media-queries":l,"custom-properties":u,"custom-selectors":c,"dir-pseudo-class":p,"double-position-gradients":h,"environment-variables":f,"focus-visible-pseudo-class":d,"focus-within-pseudo-class":m,"font-variant-property":g,"gap-properties":w,"has-pseudo-class":y,"hexadecimal-alpha-notation":i,"image-set-function":v,"lab-function":S,"logical-properties-and-values":C,"media-query-ranges":_,"nesting-rules":O,"not-pseudo-class":P,"overflow-property":x,"overflow-wrap-property":L,"place-properties":k,"prefers-color-scheme-query":M,"rebeccapurple-color":a,"system-ui-font-family":B};function W(e,t){return Object.keys(e).map((r=>[].concat(e[r]).map((e=>({[t]:!0,plugin:e,id:r}))))).reduce(((e,t)=>e.concat(t)),[])}var J=["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","matches-pseudo-class","not-pseudo-class","logical-properties-and-values","dir-pseudo-class","all-property","color-functional-notation","double-position-gradients","hexadecimal-alpha-notation","lab-function","rebeccapurple-color","color-mod-function","blank-pseudo-class","break-properties","font-variant-property","has-pseudo-class","gap-properties","overflow-property","overflow-wrap-property","place-properties","system-ui-font-family"];async function q(e,t,r,n){const s=function(e){return`:root {\n${Object.keys(e).reduce(((t,r)=>(t.push(`\t${r}: ${e[r]};`),t)),[]).join("\n")}\n}\n`}(r),o=function(e){return`${Object.keys(e).reduce(((t,r)=>(t.push(`@custom-media ${r} ${e[r]};`),t)),[]).join("\n")}\n`}(t),i=function(e){return`${Object.keys(e).reduce(((t,r)=>(t.push(`@custom-selector ${r} ${e[r]};`),t)),[]).join("\n")}\n`}(n),a=`${o}\n${i}\n${s}`;await K(e,a)}function Y(e,t){return`\n\t${e}: {\n${Object.keys(t).reduce(((e,r)=>(e.push(`\t\t'${X(r)}': '${X(t[r])}'`),e)),[]).join(",\n")}\n\t}`}function Q(e,t){return`export const ${e} = {\n${Object.keys(t).reduce(((e,r)=>(e.push(`\t'${X(r)}': '${X(t[r])}'`),e)),[]).join(",\n")}\n};\n`}function Z(e,t){return Promise.all([].concat(t).map((async t=>{if(t instanceof Function)await t({customMedia:H(e.customMedia),customProperties:H(e.customProperties),customSelectors:H(e.customSelectors)});else{const r=t===Object(t)?t:{to:String(t)},n=r.toJSON||H;if("customMedia"in r||"customProperties"in r||"customSelectors"in r)r.customMedia=n(e.customMedia),r.customProperties=n(e.customProperties),r.customSelectors=n(e.customSelectors);else if("custom-media"in r||"custom-properties"in r||"custom-selectors"in r)r["custom-media"]=n(e.customMedia),r["custom-properties"]=n(e.customProperties),r["custom-selectors"]=n(e.customSelectors);else{const t=String(r.to||""),s=(r.type||$.extname(r.to).slice(1)).toLowerCase(),o=n(e.customMedia),i=n(e.customProperties),a=n(e.customSelectors);"css"===s&&await q(t,o,i,a),"js"===s&&await async function(e,t,r,n){const s=`module.exports = {${Y("customMedia",t)},${Y("customProperties",r)},${Y("customSelectors",n)}\n};\n`;await K(e,s)}(t,o,i,a),"json"===s&&await async function(e,t,r,n){const s=`${JSON.stringify({"custom-media":t,"custom-properties":r,"custom-selectors":n},null," ")}\n`;await K(e,s)}(t,o,i,a),"mjs"===s&&await async function(e,t,r,n){const s=`${Q("customMedia",t)}\n${Q("customProperties",r)}\n${Q("customSelectors",n)}`;await K(e,s)}(t,o,i,a)}}})))}function H(e){return Object.keys(e).reduce(((t,r)=>(t[r]=String(e[r]),t)),{})}function K(e,t){return new Promise(((r,n)=>{j.writeFile(e,t,(e=>{e?n(e):r()}))}))}function X(e){return e.replace(/\\([\s\S])|(')/g,"\\$1$2").replace(/\n/g,"\\n").replace(/\r/g,"\\r")}const ee=n=>{const s=Object(Object(n).features),o=Object(Object(n).insertBefore),i=Object(Object(n).insertAfter),a=Object(n).browsers,l="stage"in Object(n)?!1===n.stage?5:parseInt(n.stage)||0:2,u=Object(n).autoprefixer,c=te(Object(n)),p=!1===u?()=>{}:e(Object.assign({overrideBrowserslist:a},u)),h=r.concat(W(o,"insertBefore"),W(i,"insertAfter")).filter((e=>e.insertBefore||e.id in V)).sort(((e,t)=>J.indexOf(e.id)-J.indexOf(t.id)||(e.insertBefore?-1:t.insertBefore?1:0)||(e.insertAfter?1:t.insertAfter?-1:0))).map((e=>{const t=function(e){const t=R.features[e];if(t){const e=R.feature(t).stats;return Object.keys(e).reduce(((t,r)=>t.concat(Object.keys(e[r]).filter((t=>0!==e[r][t].indexOf("y"))).map((e=>`${r} ${e}`)))),[])}return["> 0%"]}(e.caniuse);return e.insertBefore||e.insertAfter?{browsers:t,plugin:e.plugin,id:`${e.insertBefore?"before":"after"}-${e.id}`,stage:6}:{browsers:t,plugin:V[e.id],id:e.id,stage:e.stage}})),f=h.filter((e=>e.id in s?s[e.id]:e.stage>=l)).map((e=>{let t,r;return t=!0===s[e.id]?c?Object.assign({},c):void 0:c?Object.assign({},c,s[e.id]):Object.assign({},s[e.id]),r=e.plugin.postcss?e.plugin(t):e.plugin,{browsers:e.browsers,plugin:r,id:e.id}})),d=t(a,{ignoreUnknownVersions:!0}),m=f.filter((e=>e.id in s?s[e.id]:d.some((r=>t(e.browsers,{ignoreUnknownVersions:!0}).some((e=>e===r)))))).map((e=>e.plugin));return m.push(p),{postcssPlugin:"postcss-preset-env",plugins:m,OnceExit:function(){Object(n).exportTo&&Z(c.exportTo,n.exportTo)}}},te=e=>{if("importFrom"in e||"exportTo"in e||"preserve"in e){const t={};return"importFrom"in e&&(t.importFrom=e.importFrom),"exportTo"in e&&(t.exportTo={customMedia:{},customProperties:{},customSelectors:{}}),"preserve"in e&&(t.preserve=e.preserve),t}return!1};var re;ee.postcss=!0,function(e){e.InvalidArguments="INVALID_ARGUMENTS"}(re||(re={}));var ne={exports:{}};let se=F,oe=!("NO_COLOR"in process.env||process.argv.includes("--no-color"))&&("FORCE_COLOR"in process.env||process.argv.includes("--color")||"win32"===process.platform||se.isatty(1)&&"dumb"!==process.env.TERM||"CI"in process.env),ie=(e,t,r=e)=>n=>{let s=""+n,o=s.indexOf(t,e.length);return~o?e+ae(s,t,r,o)+t:e+s+t},ae=(e,t,r,n)=>{let s=e.substring(0,n)+r,o=e.substring(n+t.length),i=o.indexOf(t);return~i?s+ae(o,t,r,i):s+o},le=(e=oe)=>({isColorSupported:e,reset:e?e=>`[0m${e}[0m`:String,bold:e?ie("[1m","[22m","[22m[1m"):String,dim:e?ie("[2m","[22m","[22m[2m"):String,italic:e?ie("[3m","[23m"):String,underline:e?ie("[4m","[24m"):String,inverse:e?ie("[7m","[27m"):String,hidden:e?ie("[8m","[28m"):String,strikethrough:e?ie("[9m","[29m"):String,black:e?ie("[30m","[39m"):String,red:e?ie("[31m","[39m"):String,green:e?ie("[32m","[39m"):String,yellow:e?ie("[33m","[39m"):String,blue:e?ie("[34m","[39m"):String,magenta:e?ie("[35m","[39m"):String,cyan:e?ie("[36m","[39m"):String,white:e?ie("[37m","[39m"):String,gray:e?ie("[90m","[39m"):String,bgBlack:e?ie("[40m","[49m"):String,bgRed:e?ie("[41m","[49m"):String,bgGreen:e?ie("[42m","[49m"):String,bgYellow:e?ie("[43m","[49m"):String,bgBlue:e?ie("[44m","[49m"):String,bgMagenta:e?ie("[45m","[49m"):String,bgCyan:e?ie("[46m","[49m"):String,bgWhite:e?ie("[47m","[49m"):String});ne.exports=le(),ne.exports.createColors=le;const ue="'".charCodeAt(0),ce='"'.charCodeAt(0),pe="\\".charCodeAt(0),he="/".charCodeAt(0),fe="\n".charCodeAt(0),de=" ".charCodeAt(0),me="\f".charCodeAt(0),ge="\t".charCodeAt(0),we="\r".charCodeAt(0),ye="[".charCodeAt(0),ve="]".charCodeAt(0),be="(".charCodeAt(0),Se=")".charCodeAt(0),Ce="{".charCodeAt(0),_e="}".charCodeAt(0),Oe=";".charCodeAt(0),xe="*".charCodeAt(0),Ae=":".charCodeAt(0),ke="@".charCodeAt(0),Me=/[\t\n\f\r "#'()/;[\\\]{}]/g,Ee=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,Le=/.[\n"'(/\\]/,Pe=/[\da-f]/i;var Re=function(e,t={}){let r,n,s,o,i,a,l,u,c,p,h=e.css.valueOf(),f=t.ignoreErrors,d=h.length,m=0,g=[],w=[];function y(t){throw e.error("Unclosed "+t,m)}return{back:function(e){w.push(e)},nextToken:function(e){if(w.length)return w.pop();if(m>=d)return;let t=!!e&&e.ignoreUnclosed;switch(r=h.charCodeAt(m),r){case fe:case de:case ge:case we:case me:n=m;do{n+=1,r=h.charCodeAt(n)}while(r===de||r===fe||r===ge||r===we||r===me);p=["space",h.slice(m,n)],m=n-1;break;case ye:case ve:case Ce:case _e:case Ae:case Oe:case Se:{let e=String.fromCharCode(r);p=[e,e,m];break}case be:if(u=g.length?g.pop()[1]:"",c=h.charCodeAt(m+1),"url"===u&&c!==ue&&c!==ce&&c!==de&&c!==fe&&c!==ge&&c!==me&&c!==we){n=m;do{if(a=!1,n=h.indexOf(")",n+1),-1===n){if(f||t){n=m;break}y("bracket")}for(l=n;h.charCodeAt(l-1)===pe;)l-=1,a=!a}while(a);p=["brackets",h.slice(m,n+1),m,n],m=n}else n=h.indexOf(")",m+1),o=h.slice(m,n+1),-1===n||Le.test(o)?p=["(","(",m]:(p=["brackets",o,m,n],m=n);break;case ue:case ce:s=r===ue?"'":'"',n=m;do{if(a=!1,n=h.indexOf(s,n+1),-1===n){if(f||t){n=m+1;break}y("string")}for(l=n;h.charCodeAt(l-1)===pe;)l-=1,a=!a}while(a);p=["string",h.slice(m,n+1),m,n],m=n;break;case ke:Me.lastIndex=m+1,Me.test(h),n=0===Me.lastIndex?h.length-1:Me.lastIndex-2,p=["at-word",h.slice(m,n+1),m,n],m=n;break;case pe:for(n=m,i=!0;h.charCodeAt(n+1)===pe;)n+=1,i=!i;if(r=h.charCodeAt(n+1),i&&r!==he&&r!==de&&r!==fe&&r!==ge&&r!==we&&r!==me&&(n+=1,Pe.test(h.charAt(n)))){for(;Pe.test(h.charAt(n+1));)n+=1;h.charCodeAt(n+1)===de&&(n+=1)}p=["word",h.slice(m,n+1),m,n],m=n;break;default:r===he&&h.charCodeAt(m+1)===xe?(n=h.indexOf("*/",m+2)+1,0===n&&(f||t?n=h.length:y("comment")),p=["comment",h.slice(m,n+1),m,n],m=n):(Ee.lastIndex=m+1,Ee.test(h),n=0===Ee.lastIndex?h.length-1:Ee.lastIndex-2,p=["word",h.slice(m,n+1),m,n],g.push(p),m=n)}return m++,p},endOfFile:function(){return 0===w.length&&m>=d},position:function(){return m}}};let je,Ie=ne.exports,$e=Re;const Fe={brackets:Ie.cyan,"at-word":Ie.cyan,comment:Ie.gray,string:Ie.green,class:Ie.yellow,hash:Ie.magenta,call:Ie.cyan,"(":Ie.cyan,")":Ie.cyan,"{":Ie.yellow,"}":Ie.yellow,"[":Ie.yellow,"]":Ie.yellow,":":Ie.yellow,";":Ie.yellow};function Ne([e,t],r){if("word"===e){if("."===t[0])return"class";if("#"===t[0])return"hash"}if(!r.endOfFile()){let e=r.nextToken();if(r.back(e),"brackets"===e[0]||"("===e[0])return"call"}return e}function Be(e){let t=$e(new je(e),{ignoreErrors:!0}),r="";for(;!t.endOfFile();){let e=t.nextToken(),n=Fe[Ne(e,t)];r+=n?e[1].split(/\r?\n/).map((e=>n(e))).join("\n"):e[1]}return r}Be.registerInput=function(e){je=e};var Ue=Be;let De=ne.exports,Te=Ue;class Ge extends Error{constructor(e,t,r,n,s,o){super(e),this.name="CssSyntaxError",this.reason=e,s&&(this.file=s),n&&(this.source=n),o&&(this.plugin=o),void 0!==t&&void 0!==r&&("number"==typeof t?(this.line=t,this.column=r):(this.line=t.line,this.column=t.column,this.endLine=r.line,this.endColumn=r.column)),this.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(this,Ge)}setMessage(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"<css input>",void 0!==this.line&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason}showSourceCode(e){if(!this.source)return"";let t=this.source;null==e&&(e=De.isColorSupported),Te&&e&&(t=Te(t));let r,n,s=t.split(/\r?\n/),o=Math.max(this.line-3,0),i=Math.min(this.line+2,s.length),a=String(i).length;if(e){let{bold:e,red:t,gray:s}=De.createColors(!0);r=r=>e(t(r)),n=e=>s(e)}else r=n=e=>e;return s.slice(o,i).map(((e,t)=>{let s=o+1+t,i=" "+(" "+s).slice(-a)+" | ";if(s===this.line){let t=n(i.replace(/\d/g," "))+e.slice(0,this.column-1).replace(/[^\t]/g," ");return r(">")+n(i)+e+"\n "+t+r("^")}return" "+n(i)+e})).join("\n")}toString(){let e=this.showSourceCode();return e&&(e="\n\n"+e+"\n"),this.name+": "+this.message+e}}var ze=Ge;Ge.default=Ge;var Ve={};Ve.isClean=Symbol("isClean"),Ve.my=Symbol("my");const We={colon:": ",indent:" ",beforeDecl:"\n",beforeRule:"\n",beforeOpen:" ",beforeClose:"\n",beforeComment:"\n",after:"\n",emptyBody:"",commentLeft:" ",commentRight:" ",semicolon:!1};class Je{constructor(e){this.builder=e}stringify(e,t){if(!this[e.type])throw new Error("Unknown AST node type "+e.type+". Maybe you need to change PostCSS stringifier.");this[e.type](e,t)}document(e){this.body(e)}root(e){this.body(e),e.raws.after&&this.builder(e.raws.after)}comment(e){let t=this.raw(e,"left","commentLeft"),r=this.raw(e,"right","commentRight");this.builder("/*"+t+e.text+r+"*/",e)}decl(e,t){let r=this.raw(e,"between","colon"),n=e.prop+r+this.rawValue(e,"value");e.important&&(n+=e.raws.important||" !important"),t&&(n+=";"),this.builder(n,e)}rule(e){this.block(e,this.rawValue(e,"selector")),e.raws.ownSemicolon&&this.builder(e.raws.ownSemicolon,e,"end")}atrule(e,t){let r="@"+e.name,n=e.params?this.rawValue(e,"params"):"";if(void 0!==e.raws.afterName?r+=e.raws.afterName:n&&(r+=" "),e.nodes)this.block(e,r+n);else{let s=(e.raws.between||"")+(t?";":"");this.builder(r+n+s,e)}}body(e){let t=e.nodes.length-1;for(;t>0&&"comment"===e.nodes[t].type;)t-=1;let r=this.raw(e,"semicolon");for(let n=0;n<e.nodes.length;n++){let s=e.nodes[n],o=this.raw(s,"before");o&&this.builder(o),this.stringify(s,t!==n||r)}}block(e,t){let r,n=this.raw(e,"between","beforeOpen");this.builder(t+n+"{",e,"start"),e.nodes&&e.nodes.length?(this.body(e),r=this.raw(e,"after")):r=this.raw(e,"after","emptyBody"),r&&this.builder(r),this.builder("}",e,"end")}raw(e,t,r){let n;if(r||(r=t),t&&(n=e.raws[t],void 0!==n))return n;let s=e.parent;if("before"===r){if(!s||"root"===s.type&&s.first===e)return"";if(s&&"document"===s.type)return""}if(!s)return We[r];let o=e.root();if(o.rawCache||(o.rawCache={}),void 0!==o.rawCache[r])return o.rawCache[r];if("before"===r||"after"===r)return this.beforeAfter(e,r);{let s="raw"+((i=r)[0].toUpperCase()+i.slice(1));this[s]?n=this[s](o,e):o.walk((e=>{if(n=e.raws[t],void 0!==n)return!1}))}var i;return void 0===n&&(n=We[r]),o.rawCache[r]=n,n}rawSemicolon(e){let t;return e.walk((e=>{if(e.nodes&&e.nodes.length&&"decl"===e.last.type&&(t=e.raws.semicolon,void 0!==t))return!1})),t}rawEmptyBody(e){let t;return e.walk((e=>{if(e.nodes&&0===e.nodes.length&&(t=e.raws.after,void 0!==t))return!1})),t}rawIndent(e){if(e.raws.indent)return e.raws.indent;let t;return e.walk((r=>{let n=r.parent;if(n&&n!==e&&n.parent&&n.parent===e&&void 0!==r.raws.before){let e=r.raws.before.split("\n");return t=e[e.length-1],t=t.replace(/\S/g,""),!1}})),t}rawBeforeComment(e,t){let r;return e.walkComments((e=>{if(void 0!==e.raws.before)return r=e.raws.before,r.includes("\n")&&(r=r.replace(/[^\n]+$/,"")),!1})),void 0===r?r=this.raw(t,null,"beforeDecl"):r&&(r=r.replace(/\S/g,"")),r}rawBeforeDecl(e,t){let r;return e.walkDecls((e=>{if(void 0!==e.raws.before)return r=e.raws.before,r.includes("\n")&&(r=r.replace(/[^\n]+$/,"")),!1})),void 0===r?r=this.raw(t,null,"beforeRule"):r&&(r=r.replace(/\S/g,"")),r}rawBeforeRule(e){let t;return e.walk((r=>{if(r.nodes&&(r.parent!==e||e.first!==r)&&void 0!==r.raws.before)return t=r.raws.before,t.includes("\n")&&(t=t.replace(/[^\n]+$/,"")),!1})),t&&(t=t.replace(/\S/g,"")),t}rawBeforeClose(e){let t;return e.walk((e=>{if(e.nodes&&e.nodes.length>0&&void 0!==e.raws.after)return t=e.raws.after,t.includes("\n")&&(t=t.replace(/[^\n]+$/,"")),!1})),t&&(t=t.replace(/\S/g,"")),t}rawBeforeOpen(e){let t;return e.walk((e=>{if("decl"!==e.type&&(t=e.raws.between,void 0!==t))return!1})),t}rawColon(e){let t;return e.walkDecls((e=>{if(void 0!==e.raws.between)return t=e.raws.between.replace(/[^\s:]/g,""),!1})),t}beforeAfter(e,t){let r;r="decl"===e.type?this.raw(e,null,"beforeDecl"):"comment"===e.type?this.raw(e,null,"beforeComment"):"before"===t?this.raw(e,null,"beforeRule"):this.raw(e,null,"beforeClose");let n=e.parent,s=0;for(;n&&"root"!==n.type;)s+=1,n=n.parent;if(r.includes("\n")){let t=this.raw(e,null,"indent");if(t.length)for(let e=0;e<s;e++)r+=t}return r}rawValue(e,t){let r=e[t],n=e.raws[t];return n&&n.value===r?n.raw:r}}var qe=Je;Je.default=Je;let Ye=qe;function Qe(e,t){new Ye(t).stringify(e)}var Ze=Qe;Qe.default=Qe;let{isClean:He,my:Ke}=Ve,Xe=ze,et=qe,tt=Ze;function rt(e,t){let r=new e.constructor;for(let n in e){if(!Object.prototype.hasOwnProperty.call(e,n))continue;if("proxyCache"===n)continue;let s=e[n],o=typeof s;"parent"===n&&"object"===o?t&&(r[n]=t):"source"===n?r[n]=s:Array.isArray(s)?r[n]=s.map((e=>rt(e,r))):("object"===o&&null!==s&&(s=rt(s)),r[n]=s)}return r}class nt{constructor(e={}){this.raws={},this[He]=!1,this[Ke]=!0;for(let t in e)if("nodes"===t){this.nodes=[];for(let r of e[t])"function"==typeof r.clone?this.append(r.clone()):this.append(r)}else this[t]=e[t]}error(e,t={}){if(this.source){let{start:r,end:n}=this.rangeBy(t);return this.source.input.error(e,{line:r.line,column:r.column},{line:n.line,column:n.column},t)}return new Xe(e)}warn(e,t,r){let n={node:this};for(let e in r)n[e]=r[e];return e.warn(t,n)}remove(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this}toString(e=tt){e.stringify&&(e=e.stringify);let t="";return e(this,(e=>{t+=e})),t}assign(e={}){for(let t in e)this[t]=e[t];return this}clone(e={}){let t=rt(this);for(let r in e)t[r]=e[r];return t}cloneBefore(e={}){let t=this.clone(e);return this.parent.insertBefore(this,t),t}cloneAfter(e={}){let t=this.clone(e);return this.parent.insertAfter(this,t),t}replaceWith(...e){if(this.parent){let t=this,r=!1;for(let n of e)n===this?r=!0:r?(this.parent.insertAfter(t,n),t=n):this.parent.insertBefore(t,n);r||this.remove()}return this}next(){if(!this.parent)return;let e=this.parent.index(this);return this.parent.nodes[e+1]}prev(){if(!this.parent)return;let e=this.parent.index(this);return this.parent.nodes[e-1]}before(e){return this.parent.insertBefore(this,e),this}after(e){return this.parent.insertAfter(this,e),this}root(){let e=this;for(;e.parent&&"document"!==e.parent.type;)e=e.parent;return e}raw(e,t){return(new et).raw(this,e,t)}cleanRaws(e){delete this.raws.before,delete this.raws.after,e||delete this.raws.between}toJSON(e,t){let r={},n=null==t;t=t||new Map;let s=0;for(let e in this){if(!Object.prototype.hasOwnProperty.call(this,e))continue;if("parent"===e||"proxyCache"===e)continue;let n=this[e];if(Array.isArray(n))r[e]=n.map((e=>"object"==typeof e&&e.toJSON?e.toJSON(null,t):e));else if("object"==typeof n&&n.toJSON)r[e]=n.toJSON(null,t);else if("source"===e){let o=t.get(n.input);null==o&&(o=s,t.set(n.input,s),s++),r[e]={inputId:o,start:n.start,end:n.end}}else r[e]=n}return n&&(r.inputs=[...t.keys()].map((e=>e.toJSON()))),r}positionInside(e){let t=this.toString(),r=this.source.start.column,n=this.source.start.line;for(let s=0;s<e;s++)"\n"===t[s]?(r=1,n+=1):r+=1;return{line:n,column:r}}positionBy(e){let t=this.source.start;if(e.index)t=this.positionInside(e.index);else if(e.word){let r=this.toString().indexOf(e.word);-1!==r&&(t=this.positionInside(r))}return t}rangeBy(e){let t={line:this.source.start.line,column:this.source.start.column},r=this.source.end?{line:this.source.end.line,column:this.source.end.column+1}:{line:t.line,column:t.column+1};if(e.word){let n=this.toString().indexOf(e.word);-1!==n&&(t=this.positionInside(n),r=this.positionInside(n+e.word.length))}else e.start?t={line:e.start.line,column:e.start.column}:e.index&&(t=this.positionInside(e.index)),e.end?r={line:e.end.line,column:e.end.column}:e.endIndex?r=this.positionInside(e.endIndex):e.index&&(r=this.positionInside(e.index+1));return(r.line<t.line||r.line===t.line&&r.column<=t.column)&&(r={line:t.line,column:t.column+1}),{start:t,end:r}}getProxyProcessor(){return{set:(e,t,r)=>(e[t]===r||(e[t]=r,"prop"!==t&&"value"!==t&&"name"!==t&&"params"!==t&&"important"!==t&&"text"!==t||e.markDirty()),!0),get:(e,t)=>"proxyOf"===t?e:"root"===t?()=>e.root().toProxy():e[t]}}toProxy(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache}addToError(e){if(e.postcssNode=this,e.stack&&this.source&&/\n\s{4}at /.test(e.stack)){let t=this.source;e.stack=e.stack.replace(/\n\s{4}at /,`$&${t.input.from}:${t.start.line}:${t.start.column}$&`)}return e}markDirty(){if(this[He]){this[He]=!1;let e=this;for(;e=e.parent;)e[He]=!1}}get proxyOf(){return this}}var st=nt;nt.default=nt;let ot=st;class it extends ot{constructor(e){e&&void 0!==e.value&&"string"!=typeof e.value&&(e={...e,value:String(e.value)}),super(e),this.type="decl"}get variable(){return this.prop.startsWith("--")||"$"===this.prop[0]}}var at=it;it.default=it;var lt={},ut={},ct={},pt={},ht="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");pt.encode=function(e){if(0<=e&&e<ht.length)return ht[e];throw new TypeError("Must be between 0 and 63: "+e)},pt.decode=function(e){return 65<=e&&e<=90?e-65:97<=e&&e<=122?e-97+26:48<=e&&e<=57?e-48+52:43==e?62:47==e?63:-1};var ft=pt;ct.encode=function(e){var t,r="",n=function(e){return e<0?1+(-e<<1):0+(e<<1)}(e);do{t=31&n,(n>>>=5)>0&&(t|=32),r+=ft.encode(t)}while(n>0);return r},ct.decode=function(e,t,r){var n,s,o,i,a=e.length,l=0,u=0;do{if(t>=a)throw new Error("Expected more digits in base 64 VLQ value.");if(-1===(s=ft.decode(e.charCodeAt(t++))))throw new Error("Invalid base64 digit: "+e.charAt(t-1));n=!!(32&s),l+=(s&=31)<<u,u+=5}while(n);r.value=(i=(o=l)>>1,1==(1&o)?-i:i),r.rest=t};var dt={};!function(e){e.getArg=function(e,t,r){if(t in e)return e[t];if(3===arguments.length)return r;throw new Error('"'+t+'" is a required argument.')};var t=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,r=/^data:.+\,.+$/;function n(e){var r=e.match(t);return r?{scheme:r[1],auth:r[2],host:r[3],port:r[4],path:r[5]}:null}function s(e){var t="";return e.scheme&&(t+=e.scheme+":"),t+="//",e.auth&&(t+=e.auth+"@"),e.host&&(t+=e.host),e.port&&(t+=":"+e.port),e.path&&(t+=e.path),t}e.urlParse=n,e.urlGenerate=s;var o,i,a=(o=function(t){var r=t,o=n(t);if(o){if(!o.path)return t;r=o.path}for(var i=e.isAbsolute(r),a=[],l=0,u=0;;){if(l=u,-1===(u=r.indexOf("/",l))){a.push(r.slice(l));break}for(a.push(r.slice(l,u));u<r.length&&"/"===r[u];)u++}var c,p=0;for(u=a.length-1;u>=0;u--)"."===(c=a[u])?a.splice(u,1):".."===c?p++:p>0&&(""===c?(a.splice(u+1,p),p=0):(a.splice(u,2),p--));return""===(r=a.join("/"))&&(r=i?"/":"."),o?(o.path=r,s(o)):r},i=[],function(e){for(var t=0;t<i.length;t++)if(i[t].input===e){var r=i[0];return i[0]=i[t],i[t]=r,i[0].result}var n=o(e);return i.unshift({input:e,result:n}),i.length>32&&i.pop(),n});function l(e,t){""===e&&(e="."),""===t&&(t=".");var o=n(t),i=n(e);if(i&&(e=i.path||"/"),o&&!o.scheme)return i&&(o.scheme=i.scheme),s(o);if(o||t.match(r))return t;if(i&&!i.host&&!i.path)return i.host=t,s(i);var l="/"===t.charAt(0)?t:a(e.replace(/\/+$/,"")+"/"+t);return i?(i.path=l,s(i)):l}e.normalize=a,e.join=l,e.isAbsolute=function(e){return"/"===e.charAt(0)||t.test(e)},e.relative=function(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");for(var r=0;0!==t.indexOf(e+"/");){var n=e.lastIndexOf("/");if(n<0)return t;if((e=e.slice(0,n)).match(/^([^\/]+:\/)?\/*$/))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)};var u=!("__proto__"in Object.create(null));function c(e){return e}function p(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var r=t-10;r>=0;r--)if(36!==e.charCodeAt(r))return!1;return!0}function h(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}e.toSetString=u?c:function(e){return p(e)?"$"+e:e},e.fromSetString=u?c:function(e){return p(e)?e.slice(1):e},e.compareByOriginalPositions=function(e,t,r){var n=h(e.source,t.source);return 0!==n||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)||r||0!==(n=e.generatedColumn-t.generatedColumn)||0!==(n=e.generatedLine-t.generatedLine)?n:h(e.name,t.name)},e.compareByOriginalPositionsNoSource=function(e,t,r){var n;return 0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)||r||0!==(n=e.generatedColumn-t.generatedColumn)||0!==(n=e.generatedLine-t.generatedLine)?n:h(e.name,t.name)},e.compareByGeneratedPositionsDeflated=function(e,t,r){var n=e.generatedLine-t.generatedLine;return 0!==n||0!==(n=e.generatedColumn-t.generatedColumn)||r||0!==(n=h(e.source,t.source))||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)?n:h(e.name,t.name)},e.compareByGeneratedPositionsDeflatedNoLine=function(e,t,r){var n=e.generatedColumn-t.generatedColumn;return 0!==n||r||0!==(n=h(e.source,t.source))||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)?n:h(e.name,t.name)},e.compareByGeneratedPositionsInflated=function(e,t){var r=e.generatedLine-t.generatedLine;return 0!==r||0!==(r=e.generatedColumn-t.generatedColumn)||0!==(r=h(e.source,t.source))||0!==(r=e.originalLine-t.originalLine)||0!==(r=e.originalColumn-t.originalColumn)?r:h(e.name,t.name)},e.parseSourceMapInput=function(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))},e.computeSourceURL=function(e,t,r){if(t=t||"",e&&("/"!==e[e.length-1]&&"/"!==t[0]&&(e+="/"),t=e+t),r){var o=n(r);if(!o)throw new Error("sourceMapURL could not be parsed");if(o.path){var i=o.path.lastIndexOf("/");i>=0&&(o.path=o.path.substring(0,i+1))}t=l(s(o),t)}return a(t)}}(dt);var mt={},gt=dt,wt=Object.prototype.hasOwnProperty,yt="undefined"!=typeof Map;function vt(){this._array=[],this._set=yt?new Map:Object.create(null)}vt.fromArray=function(e,t){for(var r=new vt,n=0,s=e.length;n<s;n++)r.add(e[n],t);return r},vt.prototype.size=function(){return yt?this._set.size:Object.getOwnPropertyNames(this._set).length},vt.prototype.add=function(e,t){var r=yt?e:gt.toSetString(e),n=yt?this.has(e):wt.call(this._set,r),s=this._array.length;n&&!t||this._array.push(e),n||(yt?this._set.set(e,s):this._set[r]=s)},vt.prototype.has=function(e){if(yt)return this._set.has(e);var t=gt.toSetString(e);return wt.call(this._set,t)},vt.prototype.indexOf=function(e){if(yt){var t=this._set.get(e);if(t>=0)return t}else{var r=gt.toSetString(e);if(wt.call(this._set,r))return this._set[r]}throw new Error('"'+e+'" is not in the set.')},vt.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)},vt.prototype.toArray=function(){return this._array.slice()},mt.ArraySet=vt;var bt={},St=dt;function Ct(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}Ct.prototype.unsortedForEach=function(e,t){this._array.forEach(e,t)},Ct.prototype.add=function(e){var t,r,n,s,o,i;t=this._last,r=e,n=t.generatedLine,s=r.generatedLine,o=t.generatedColumn,i=r.generatedColumn,s>n||s==n&&i>=o||St.compareByGeneratedPositionsInflated(t,r)<=0?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},Ct.prototype.toArray=function(){return this._sorted||(this._array.sort(St.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},bt.MappingList=Ct;var _t=ct,Ot=dt,xt=mt.ArraySet,At=bt.MappingList;function kt(e){e||(e={}),this._file=Ot.getArg(e,"file",null),this._sourceRoot=Ot.getArg(e,"sourceRoot",null),this._skipValidation=Ot.getArg(e,"skipValidation",!1),this._sources=new xt,this._names=new xt,this._mappings=new At,this._sourcesContents=null}kt.prototype._version=3,kt.fromSourceMap=function(e){var t=e.sourceRoot,r=new kt({file:e.file,sourceRoot:t});return e.eachMapping((function(e){var n={generated:{line:e.generatedLine,column:e.generatedColumn}};null!=e.source&&(n.source=e.source,null!=t&&(n.source=Ot.relative(t,n.source)),n.original={line:e.originalLine,column:e.originalColumn},null!=e.name&&(n.name=e.name)),r.addMapping(n)})),e.sources.forEach((function(n){var s=n;null!==t&&(s=Ot.relative(t,n)),r._sources.has(s)||r._sources.add(s);var o=e.sourceContentFor(n);null!=o&&r.setSourceContent(n,o)})),r},kt.prototype.addMapping=function(e){var t=Ot.getArg(e,"generated"),r=Ot.getArg(e,"original",null),n=Ot.getArg(e,"source",null),s=Ot.getArg(e,"name",null);this._skipValidation||this._validateMapping(t,r,n,s),null!=n&&(n=String(n),this._sources.has(n)||this._sources.add(n)),null!=s&&(s=String(s),this._names.has(s)||this._names.add(s)),this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:null!=r&&r.line,originalColumn:null!=r&&r.column,source:n,name:s})},kt.prototype.setSourceContent=function(e,t){var r=e;null!=this._sourceRoot&&(r=Ot.relative(this._sourceRoot,r)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Ot.toSetString(r)]=t):this._sourcesContents&&(delete this._sourcesContents[Ot.toSetString(r)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},kt.prototype.applySourceMap=function(e,t,r){var n=t;if(null==t){if(null==e.file)throw new Error('SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map\'s "file" property. Both were omitted.');n=e.file}var s=this._sourceRoot;null!=s&&(n=Ot.relative(s,n));var o=new xt,i=new xt;this._mappings.unsortedForEach((function(t){if(t.source===n&&null!=t.originalLine){var a=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});null!=a.source&&(t.source=a.source,null!=r&&(t.source=Ot.join(r,t.source)),null!=s&&(t.source=Ot.relative(s,t.source)),t.originalLine=a.line,t.originalColumn=a.column,null!=a.name&&(t.name=a.name))}var l=t.source;null==l||o.has(l)||o.add(l);var u=t.name;null==u||i.has(u)||i.add(u)}),this),this._sources=o,this._names=i,e.sources.forEach((function(t){var n=e.sourceContentFor(t);null!=n&&(null!=r&&(t=Ot.join(r,t)),null!=s&&(t=Ot.relative(s,t)),this.setSourceContent(t,n))}),this)},kt.prototype._validateMapping=function(e,t,r,n){if(t&&"number"!=typeof t.line&&"number"!=typeof t.column)throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if((!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0)||t||r||n)&&!(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&r))throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:r,original:t,name:n}))},kt.prototype._serializeMappings=function(){for(var e,t,r,n,s=0,o=1,i=0,a=0,l=0,u=0,c="",p=this._mappings.toArray(),h=0,f=p.length;h<f;h++){if(e="",(t=p[h]).generatedLine!==o)for(s=0;t.generatedLine!==o;)e+=";",o++;else if(h>0){if(!Ot.compareByGeneratedPositionsInflated(t,p[h-1]))continue;e+=","}e+=_t.encode(t.generatedColumn-s),s=t.generatedColumn,null!=t.source&&(n=this._sources.indexOf(t.source),e+=_t.encode(n-u),u=n,e+=_t.encode(t.originalLine-1-a),a=t.originalLine-1,e+=_t.encode(t.originalColumn-i),i=t.originalColumn,null!=t.name&&(r=this._names.indexOf(t.name),e+=_t.encode(r-l),l=r)),c+=e}return c},kt.prototype._generateSourcesContent=function(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=Ot.relative(t,e));var r=Ot.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null}),this)},kt.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return null!=this._file&&(e.file=this._file),null!=this._sourceRoot&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},kt.prototype.toString=function(){return JSON.stringify(this.toJSON())},ut.SourceMapGenerator=kt;var Mt={},Et={};!function(e){function t(r,n,s,o,i,a){var l=Math.floor((n-r)/2)+r,u=i(s,o[l],!0);return 0===u?l:u>0?n-l>1?t(l,n,s,o,i,a):a==e.LEAST_UPPER_BOUND?n<o.length?n:-1:l:l-r>1?t(r,l,s,o,i,a):a==e.LEAST_UPPER_BOUND?l:r<0?-1:r}e.GREATEST_LOWER_BOUND=1,e.LEAST_UPPER_BOUND=2,e.search=function(r,n,s,o){if(0===n.length)return-1;var i=t(-1,n.length,r,n,s,o||e.GREATEST_LOWER_BOUND);if(i<0)return-1;for(;i-1>=0&&0===s(n[i],n[i-1],!0);)--i;return i}}(Et);var Lt={};function Pt(e){function t(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}return function e(r,n,s,o){if(s<o){var i=s-1;t(r,(c=s,p=o,Math.round(c+Math.random()*(p-c))),o);for(var a=r[o],l=s;l<o;l++)n(r[l],a,!1)<=0&&t(r,i+=1,l);t(r,i+1,l);var u=i+1;e(r,n,s,u-1),e(r,n,u+1,o)}var c,p}}let Rt=new WeakMap;Lt.quickSort=function(e,t,r=0){let n=Rt.get(t);void 0===n&&(n=function(e){let t=Pt.toString();return new Function(`return ${t}`)()(e)}(t),Rt.set(t,n)),n(e,t,r,e.length-1)};var jt=dt,It=Et,$t=mt.ArraySet,Ft=ct,Nt=Lt.quickSort;function Bt(e,t){var r=e;return"string"==typeof e&&(r=jt.parseSourceMapInput(e)),null!=r.sections?new zt(r,t):new Ut(r,t)}function Ut(e,t){var r=e;"string"==typeof e&&(r=jt.parseSourceMapInput(e));var n=jt.getArg(r,"version"),s=jt.getArg(r,"sources"),o=jt.getArg(r,"names",[]),i=jt.getArg(r,"sourceRoot",null),a=jt.getArg(r,"sourcesContent",null),l=jt.getArg(r,"mappings"),u=jt.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);i&&(i=jt.normalize(i)),s=s.map(String).map(jt.normalize).map((function(e){return i&&jt.isAbsolute(i)&&jt.isAbsolute(e)?jt.relative(i,e):e})),this._names=$t.fromArray(o.map(String),!0),this._sources=$t.fromArray(s,!0),this._absoluteSources=this._sources.toArray().map((function(e){return jt.computeSourceURL(i,e,t)})),this.sourceRoot=i,this.sourcesContent=a,this._mappings=l,this._sourceMapURL=t,this.file=u}function Dt(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}Bt.fromSourceMap=function(e,t){return Ut.fromSourceMap(e,t)},Bt.prototype._version=3,Bt.prototype.__generatedMappings=null,Object.defineProperty(Bt.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}}),Bt.prototype.__originalMappings=null,Object.defineProperty(Bt.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}}),Bt.prototype._charIsMappingSeparator=function(e,t){var r=e.charAt(t);return";"===r||","===r},Bt.prototype._parseMappings=function(e,t){throw new Error("Subclasses must implement _parseMappings")},Bt.GENERATED_ORDER=1,Bt.ORIGINAL_ORDER=2,Bt.GREATEST_LOWER_BOUND=1,Bt.LEAST_UPPER_BOUND=2,Bt.prototype.eachMapping=function(e,t,r){var n,s=t||null;switch(r||Bt.GENERATED_ORDER){case Bt.GENERATED_ORDER:n=this._generatedMappings;break;case Bt.ORIGINAL_ORDER:n=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}for(var o=this.sourceRoot,i=e.bind(s),a=this._names,l=this._sources,u=this._sourceMapURL,c=0,p=n.length;c<p;c++){var h=n[c],f=null===h.source?null:l.at(h.source);i({source:f=jt.computeSourceURL(o,f,u),generatedLine:h.generatedLine,generatedColumn:h.generatedColumn,originalLine:h.originalLine,originalColumn:h.originalColumn,name:null===h.name?null:a.at(h.name)})}},Bt.prototype.allGeneratedPositionsFor=function(e){var t=jt.getArg(e,"line"),r={source:jt.getArg(e,"source"),originalLine:t,originalColumn:jt.getArg(e,"column",0)};if(r.source=this._findSourceIndex(r.source),r.source<0)return[];var n=[],s=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",jt.compareByOriginalPositions,It.LEAST_UPPER_BOUND);if(s>=0){var o=this._originalMappings[s];if(void 0===e.column)for(var i=o.originalLine;o&&o.originalLine===i;)n.push({line:jt.getArg(o,"generatedLine",null),column:jt.getArg(o,"generatedColumn",null),lastColumn:jt.getArg(o,"lastGeneratedColumn",null)}),o=this._originalMappings[++s];else for(var a=o.originalColumn;o&&o.originalLine===t&&o.originalColumn==a;)n.push({line:jt.getArg(o,"generatedLine",null),column:jt.getArg(o,"generatedColumn",null),lastColumn:jt.getArg(o,"lastGeneratedColumn",null)}),o=this._originalMappings[++s]}return n},Mt.SourceMapConsumer=Bt,Ut.prototype=Object.create(Bt.prototype),Ut.prototype.consumer=Bt,Ut.prototype._findSourceIndex=function(e){var t,r=e;if(null!=this.sourceRoot&&(r=jt.relative(this.sourceRoot,r)),this._sources.has(r))return this._sources.indexOf(r);for(t=0;t<this._absoluteSources.length;++t)if(this._absoluteSources[t]==e)return t;return-1},Ut.fromSourceMap=function(e,t){var r=Object.create(Ut.prototype),n=r._names=$t.fromArray(e._names.toArray(),!0),s=r._sources=$t.fromArray(e._sources.toArray(),!0);r.sourceRoot=e._sourceRoot,r.sourcesContent=e._generateSourcesContent(r._sources.toArray(),r.sourceRoot),r.file=e._file,r._sourceMapURL=t,r._absoluteSources=r._sources.toArray().map((function(e){return jt.computeSourceURL(r.sourceRoot,e,t)}));for(var o=e._mappings.toArray().slice(),i=r.__generatedMappings=[],a=r.__originalMappings=[],l=0,u=o.length;l<u;l++){var c=o[l],p=new Dt;p.generatedLine=c.generatedLine,p.generatedColumn=c.generatedColumn,c.source&&(p.source=s.indexOf(c.source),p.originalLine=c.originalLine,p.originalColumn=c.originalColumn,c.name&&(p.name=n.indexOf(c.name)),a.push(p)),i.push(p)}return Nt(r.__originalMappings,jt.compareByOriginalPositions),r},Ut.prototype._version=3,Object.defineProperty(Ut.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});const Tt=jt.compareByGeneratedPositionsDeflatedNoLine;function Gt(e,t){let r=e.length,n=e.length-t;if(!(n<=1))if(2==n){let r=e[t],n=e[t+1];Tt(r,n)>0&&(e[t]=n,e[t+1]=r)}else if(n<20)for(let n=t;n<r;n++)for(let r=n;r>t;r--){let t=e[r-1],n=e[r];if(Tt(t,n)<=0)break;e[r-1]=n,e[r]=t}else Nt(e,Tt,t)}function zt(e,t){var r=e;"string"==typeof e&&(r=jt.parseSourceMapInput(e));var n=jt.getArg(r,"version"),s=jt.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new $t,this._names=new $t;var o={line:-1,column:0};this._sections=s.map((function(e){if(e.url)throw new Error("Support for url field in sections not implemented.");var r=jt.getArg(e,"offset"),n=jt.getArg(r,"line"),s=jt.getArg(r,"column");if(n<o.line||n===o.line&&s<o.column)throw new Error("Section offsets must be ordered and non-overlapping.");return o=r,{generatedOffset:{generatedLine:n+1,generatedColumn:s+1},consumer:new Bt(jt.getArg(e,"map"),t)}}))}Ut.prototype._parseMappings=function(e,t){var r,n,s,o,i=1,a=0,l=0,u=0,c=0,p=0,h=e.length,f=0,d={},m=[],g=[];let w=0;for(;f<h;)if(";"===e.charAt(f))i++,f++,a=0,Gt(g,w),w=g.length;else if(","===e.charAt(f))f++;else{for((r=new Dt).generatedLine=i,s=f;s<h&&!this._charIsMappingSeparator(e,s);s++);for(e.slice(f,s),n=[];f<s;)Ft.decode(e,f,d),o=d.value,f=d.rest,n.push(o);if(2===n.length)throw new Error("Found a source, but no line and column");if(3===n.length)throw new Error("Found a source and line, but no column");if(r.generatedColumn=a+n[0],a=r.generatedColumn,n.length>1&&(r.source=c+n[1],c+=n[1],r.originalLine=l+n[2],l=r.originalLine,r.originalLine+=1,r.originalColumn=u+n[3],u=r.originalColumn,n.length>4&&(r.name=p+n[4],p+=n[4])),g.push(r),"number"==typeof r.originalLine){let e=r.source;for(;m.length<=e;)m.push(null);null===m[e]&&(m[e]=[]),m[e].push(r)}}Gt(g,w),this.__generatedMappings=g;for(var y=0;y<m.length;y++)null!=m[y]&&Nt(m[y],jt.compareByOriginalPositionsNoSource);this.__originalMappings=[].concat(...m)},Ut.prototype._findMapping=function(e,t,r,n,s,o){if(e[r]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[r]);if(e[n]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[n]);return It.search(e,t,s,o)},Ut.prototype.computeColumnSpans=function(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var r=this._generatedMappings[e+1];if(t.generatedLine===r.generatedLine){t.lastGeneratedColumn=r.generatedColumn-1;continue}}t.lastGeneratedColumn=1/0}},Ut.prototype.originalPositionFor=function(e){var t={generatedLine:jt.getArg(e,"line"),generatedColumn:jt.getArg(e,"column")},r=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",jt.compareByGeneratedPositionsDeflated,jt.getArg(e,"bias",Bt.GREATEST_LOWER_BOUND));if(r>=0){var n=this._generatedMappings[r];if(n.generatedLine===t.generatedLine){var s=jt.getArg(n,"source",null);null!==s&&(s=this._sources.at(s),s=jt.computeSourceURL(this.sourceRoot,s,this._sourceMapURL));var o=jt.getArg(n,"name",null);return null!==o&&(o=this._names.at(o)),{source:s,line:jt.getArg(n,"originalLine",null),column:jt.getArg(n,"originalColumn",null),name:o}}}return{source:null,line:null,column:null,name:null}},Ut.prototype.hasContentsOfAllSources=function(){return!!this.sourcesContent&&(this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some((function(e){return null==e})))},Ut.prototype.sourceContentFor=function(e,t){if(!this.sourcesContent)return null;var r=this._findSourceIndex(e);if(r>=0)return this.sourcesContent[r];var n,s=e;if(null!=this.sourceRoot&&(s=jt.relative(this.sourceRoot,s)),null!=this.sourceRoot&&(n=jt.urlParse(this.sourceRoot))){var o=s.replace(/^file:\/\//,"");if("file"==n.scheme&&this._sources.has(o))return this.sourcesContent[this._sources.indexOf(o)];if((!n.path||"/"==n.path)&&this._sources.has("/"+s))return this.sourcesContent[this._sources.indexOf("/"+s)]}if(t)return null;throw new Error('"'+s+'" is not in the SourceMap.')},Ut.prototype.generatedPositionFor=function(e){var t=jt.getArg(e,"source");if((t=this._findSourceIndex(t))<0)return{line:null,column:null,lastColumn:null};var r={source:t,originalLine:jt.getArg(e,"line"),originalColumn:jt.getArg(e,"column")},n=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",jt.compareByOriginalPositions,jt.getArg(e,"bias",Bt.GREATEST_LOWER_BOUND));if(n>=0){var s=this._originalMappings[n];if(s.source===r.source)return{line:jt.getArg(s,"generatedLine",null),column:jt.getArg(s,"generatedColumn",null),lastColumn:jt.getArg(s,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},Mt.BasicSourceMapConsumer=Ut,zt.prototype=Object.create(Bt.prototype),zt.prototype.constructor=Bt,zt.prototype._version=3,Object.defineProperty(zt.prototype,"sources",{get:function(){for(var e=[],t=0;t<this._sections.length;t++)for(var r=0;r<this._sections[t].consumer.sources.length;r++)e.push(this._sections[t].consumer.sources[r]);return e}}),zt.prototype.originalPositionFor=function(e){var t={generatedLine:jt.getArg(e,"line"),generatedColumn:jt.getArg(e,"column")},r=It.search(t,this._sections,(function(e,t){var r=e.generatedLine-t.generatedOffset.generatedLine;return r||e.generatedColumn-t.generatedOffset.generatedColumn})),n=this._sections[r];return n?n.consumer.originalPositionFor({line:t.generatedLine-(n.generatedOffset.generatedLine-1),column:t.generatedColumn-(n.generatedOffset.generatedLine===t.generatedLine?n.generatedOffset.generatedColumn-1:0),bias:e.bias}):{source:null,line:null,column:null,name:null}},zt.prototype.hasContentsOfAllSources=function(){return this._sections.every((function(e){return e.consumer.hasContentsOfAllSources()}))},zt.prototype.sourceContentFor=function(e,t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r].consumer.sourceContentFor(e,!0);if(n)return n}if(t)return null;throw new Error('"'+e+'" is not in the SourceMap.')},zt.prototype.generatedPositionFor=function(e){for(var t=0;t<this._sections.length;t++){var r=this._sections[t];if(-1!==r.consumer._findSourceIndex(jt.getArg(e,"source"))){var n=r.consumer.generatedPositionFor(e);if(n)return{line:n.line+(r.generatedOffset.generatedLine-1),column:n.column+(r.generatedOffset.generatedLine===n.line?r.generatedOffset.generatedColumn-1:0)}}}return{line:null,column:null}},zt.prototype._parseMappings=function(e,t){this.__generatedMappings=[],this.__originalMappings=[];for(var r=0;r<this._sections.length;r++)for(var n=this._sections[r],s=n.consumer._generatedMappings,o=0;o<s.length;o++){var i=s[o],a=n.consumer._sources.at(i.source);a=jt.computeSourceURL(n.consumer.sourceRoot,a,this._sourceMapURL),this._sources.add(a),a=this._sources.indexOf(a);var l=null;i.name&&(l=n.consumer._names.at(i.name),this._names.add(l),l=this._names.indexOf(l));var u={source:a,generatedLine:i.generatedLine+(n.generatedOffset.generatedLine-1),generatedColumn:i.generatedColumn+(n.generatedOffset.generatedLine===i.generatedLine?n.generatedOffset.generatedColumn-1:0),originalLine:i.originalLine,originalColumn:i.originalColumn,name:l};this.__generatedMappings.push(u),"number"==typeof u.originalLine&&this.__originalMappings.push(u)}Nt(this.__generatedMappings,jt.compareByGeneratedPositionsDeflated),Nt(this.__originalMappings,jt.compareByOriginalPositions)},Mt.IndexedSourceMapConsumer=zt;var Vt={},Wt=ut.SourceMapGenerator,Jt=dt,qt=/(\r?\n)/,Yt="$$$isSourceNode$$$";function Qt(e,t,r,n,s){this.children=[],this.sourceContents={},this.line=null==e?null:e,this.column=null==t?null:t,this.source=null==r?null:r,this.name=null==s?null:s,this[Yt]=!0,null!=n&&this.add(n)}Qt.fromStringWithSourceMap=function(e,t,r){var n=new Qt,s=e.split(qt),o=0,i=function(){return e()+(e()||"");function e(){return o<s.length?s[o++]:void 0}},a=1,l=0,u=null;return t.eachMapping((function(e){if(null!==u){if(!(a<e.generatedLine)){var t=(r=s[o]||"").substr(0,e.generatedColumn-l);return s[o]=r.substr(e.generatedColumn-l),l=e.generatedColumn,c(u,t),void(u=e)}c(u,i()),a++,l=0}for(;a<e.generatedLine;)n.add(i()),a++;if(l<e.generatedColumn){var r=s[o]||"";n.add(r.substr(0,e.generatedColumn)),s[o]=r.substr(e.generatedColumn),l=e.generatedColumn}u=e}),this),o<s.length&&(u&&c(u,i()),n.add(s.splice(o).join(""))),t.sources.forEach((function(e){var s=t.sourceContentFor(e);null!=s&&(null!=r&&(e=Jt.join(r,e)),n.setSourceContent(e,s))})),n;function c(e,t){if(null===e||void 0===e.source)n.add(t);else{var s=r?Jt.join(r,e.source):e.source;n.add(new Qt(e.originalLine,e.originalColumn,s,t,e.name))}}},Qt.prototype.add=function(e){if(Array.isArray(e))e.forEach((function(e){this.add(e)}),this);else{if(!e[Yt]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);e&&this.children.push(e)}return this},Qt.prototype.prepend=function(e){if(Array.isArray(e))for(var t=e.length-1;t>=0;t--)this.prepend(e[t]);else{if(!e[Yt]&&"string"!=typeof e)throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);this.children.unshift(e)}return this},Qt.prototype.walk=function(e){for(var t,r=0,n=this.children.length;r<n;r++)(t=this.children[r])[Yt]?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},Qt.prototype.join=function(e){var t,r,n=this.children.length;if(n>0){for(t=[],r=0;r<n-1;r++)t.push(this.children[r]),t.push(e);t.push(this.children[r]),this.children=t}return this},Qt.prototype.replaceRight=function(e,t){var r=this.children[this.children.length-1];return r[Yt]?r.replaceRight(e,t):"string"==typeof r?this.children[this.children.length-1]=r.replace(e,t):this.children.push("".replace(e,t)),this},Qt.prototype.setSourceContent=function(e,t){this.sourceContents[Jt.toSetString(e)]=t},Qt.prototype.walkSourceContents=function(e){for(var t=0,r=this.children.length;t<r;t++)this.children[t][Yt]&&this.children[t].walkSourceContents(e);var n=Object.keys(this.sourceContents);for(t=0,r=n.length;t<r;t++)e(Jt.fromSetString(n[t]),this.sourceContents[n[t]])},Qt.prototype.toString=function(){var e="";return this.walk((function(t){e+=t})),e},Qt.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},r=new Wt(e),n=!1,s=null,o=null,i=null,a=null;return this.walk((function(e,l){t.code+=e,null!==l.source&&null!==l.line&&null!==l.column?(s===l.source&&o===l.line&&i===l.column&&a===l.name||r.addMapping({source:l.source,original:{line:l.line,column:l.column},generated:{line:t.line,column:t.column},name:l.name}),s=l.source,o=l.line,i=l.column,a=l.name,n=!0):n&&(r.addMapping({generated:{line:t.line,column:t.column}}),s=null,n=!1);for(var u=0,c=e.length;u<c;u++)10===e.charCodeAt(u)?(t.line++,t.column=0,u+1===c?(s=null,n=!1):n&&r.addMapping({source:l.source,original:{line:l.line,column:l.column},generated:{line:t.line,column:t.column},name:l.name})):t.column++})),this.walkSourceContents((function(e,t){r.setSourceContent(e,t)})),{code:t.code,map:r}},Vt.SourceNode=Qt,lt.SourceMapGenerator=ut.SourceMapGenerator,lt.SourceMapConsumer=Mt.SourceMapConsumer,lt.SourceNode=Vt.SourceNode;var Zt={nanoid:(e=21)=>{let t="",r=e;for(;r--;)t+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[64*Math.random()|0];return t},customAlphabet:(e,t)=>()=>{let r="",n=t;for(;n--;)r+=e[Math.random()*e.length|0];return r}};let{SourceMapConsumer:Ht,SourceMapGenerator:Kt}=lt,{existsSync:Xt,readFileSync:er}=j,{dirname:tr,join:rr}=$;class nr{constructor(e,t){if(!1===t.map)return;this.loadAnnotation(e),this.inline=this.startWith(this.annotation,"data:");let r=t.map?t.map.prev:void 0,n=this.loadMap(t.from,r);!this.mapFile&&t.from&&(this.mapFile=t.from),this.mapFile&&(this.root=tr(this.mapFile)),n&&(this.text=n)}consumer(){return this.consumerCache||(this.consumerCache=new Ht(this.text)),this.consumerCache}withContent(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)}startWith(e,t){return!!e&&e.substr(0,t.length)===t}getAnnotationURL(e){return e.replace(/^\/\*\s*# sourceMappingURL=/,"").trim()}loadAnnotation(e){let t=e.match(/\/\*\s*# sourceMappingURL=/gm);if(!t)return;let r=e.lastIndexOf(t.pop()),n=e.indexOf("*/",r);r>-1&&n>-1&&(this.annotation=this.getAnnotationURL(e.substring(r,n)))}decodeInline(e){if(/^data:application\/json;charset=utf-?8,/.test(e)||/^data:application\/json,/.test(e))return decodeURIComponent(e.substr(RegExp.lastMatch.length));if(/^data:application\/json;charset=utf-?8;base64,/.test(e)||/^data:application\/json;base64,/.test(e))return t=e.substr(RegExp.lastMatch.length),Buffer?Buffer.from(t,"base64").toString():window.atob(t);var t;let r=e.match(/data:application\/json;([^,]+),/)[1];throw new Error("Unsupported source map encoding "+r)}loadFile(e){if(this.root=tr(e),Xt(e))return this.mapFile=e,er(e,"utf-8").toString().trim()}loadMap(e,t){if(!1===t)return!1;if(t){if("string"==typeof t)return t;if("function"!=typeof t){if(t instanceof Ht)return Kt.fromSourceMap(t).toString();if(t instanceof Kt)return t.toString();if(this.isMap(t))return JSON.stringify(t);throw new Error("Unsupported previous source map format: "+t.toString())}{let r=t(e);if(r){let e=this.loadFile(r);if(!e)throw new Error("Unable to load previous source map: "+r.toString());return e}}}else{if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){let t=this.annotation;return e&&(t=rr(tr(e),t)),this.loadFile(t)}}}isMap(e){return"object"==typeof e&&("string"==typeof e.mappings||"string"==typeof e._mappings||Array.isArray(e.sections))}}var sr=nr;nr.default=nr;let{SourceMapConsumer:or,SourceMapGenerator:ir}=lt,{fileURLToPath:ar,pathToFileURL:lr}=N,{resolve:ur,isAbsolute:cr}=$,{nanoid:pr}=Zt,hr=Ue,fr=ze,dr=sr,mr=Symbol("fromOffsetCache"),gr=Boolean(or&&ir),wr=Boolean(ur&&cr);class yr{constructor(e,t={}){if(null==e||"object"==typeof e&&!e.toString)throw new Error(`PostCSS received ${e} instead of CSS string`);if(this.css=e.toString(),"\ufeff"===this.css[0]||""===this.css[0]?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,t.from&&(!wr||/^\w+:\/\//.test(t.from)||cr(t.from)?this.file=t.from:this.file=ur(t.from)),wr&&gr){let e=new dr(this.css,t);if(e.text){this.map=e;let t=e.consumer().file;!this.file&&t&&(this.file=this.mapResolve(t))}}this.file||(this.id="<input css "+pr(6)+">"),this.map&&(this.map.file=this.from)}fromOffset(e){let t,r;if(this[mr])r=this[mr];else{let e=this.css.split("\n");r=new Array(e.length);let t=0;for(let n=0,s=e.length;n<s;n++)r[n]=t,t+=e[n].length+1;this[mr]=r}t=r[r.length-1];let n=0;if(e>=t)n=r.length-1;else{let t,s=r.length-2;for(;n<s;)if(t=n+(s-n>>1),e<r[t])s=t-1;else{if(!(e>=r[t+1])){n=t;break}n=t+1}}return{line:n+1,col:e-r[n]+1}}error(e,t,r,n={}){let s,o,i;if(t&&"object"==typeof t){let e=t,n=r;if("number"==typeof t.offset){let n=this.fromOffset(e.offset);t=n.line,r=n.col}else t=e.line,r=e.column;if("number"==typeof n.offset){let e=this.fromOffset(n.offset);o=e.line,i=e.col}else o=n.line,i=n.column}else if(!r){let e=this.fromOffset(t);t=e.line,r=e.col}let a=this.origin(t,r,o,i);return s=a?new fr(e,void 0===a.endLine?a.line:{line:a.line,column:a.column},void 0===a.endLine?a.column:{line:a.endLine,column:a.endColumn},a.source,a.file,n.plugin):new fr(e,void 0===o?t:{line:t,column:r},void 0===o?r:{line:o,column:i},this.css,this.file,n.plugin),s.input={line:t,column:r,endLine:o,endColumn:i,source:this.css},this.file&&(lr&&(s.input.url=lr(this.file).toString()),s.input.file=this.file),s}origin(e,t,r,n){if(!this.map)return!1;let s,o,i=this.map.consumer(),a=i.originalPositionFor({line:e,column:t});if(!a.source)return!1;"number"==typeof r&&(s=i.originalPositionFor({line:r,column:n})),o=cr(a.source)?lr(a.source):new URL(a.source,this.map.consumer().sourceRoot||lr(this.map.mapFile));let l={url:o.toString(),line:a.line,column:a.column,endLine:s&&s.line,endColumn:s&&s.column};if("file:"===o.protocol){if(!ar)throw new Error("file: protocol is not available in this PostCSS build");l.file=ar(o)}let u=i.sourceContentFor(a.source);return u&&(l.source=u),l}mapResolve(e){return/^\w+:\/\//.test(e)?e:ur(this.map.consumer().sourceRoot||this.map.root||".",e)}get from(){return this.file||this.id}toJSON(){let e={};for(let t of["hasBOM","css","file","id"])null!=this[t]&&(e[t]=this[t]);return this.map&&(e.map={...this.map},e.map.consumerCache&&(e.map.consumerCache=void 0)),e}}var vr=yr;yr.default=yr,hr&&hr.registerInput&&hr.registerInput(yr);let{SourceMapConsumer:br,SourceMapGenerator:Sr}=lt,{dirname:Cr,resolve:_r,relative:Or,sep:xr}=$,{pathToFileURL:Ar}=N,kr=vr,Mr=Boolean(br&&Sr),Er=Boolean(Cr&&_r&&Or&&xr);var Lr=class{constructor(e,t,r,n){this.stringify=e,this.mapOpts=r.map||{},this.root=t,this.opts=r,this.css=n}isMap(){return void 0!==this.opts.map?!!this.opts.map:this.previous().length>0}previous(){if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk((e=>{if(e.source&&e.source.input.map){let t=e.source.input.map;this.previousMaps.includes(t)||this.previousMaps.push(t)}}));else{let e=new kr(this.css,this.opts);e.map&&this.previousMaps.push(e.map)}return this.previousMaps}isInline(){if(void 0!==this.mapOpts.inline)return this.mapOpts.inline;let e=this.mapOpts.annotation;return(void 0===e||!0===e)&&(!this.previous().length||this.previous().some((e=>e.inline)))}isSourcesContent(){return void 0!==this.mapOpts.sourcesContent?this.mapOpts.sourcesContent:!this.previous().length||this.previous().some((e=>e.withContent()))}clearAnnotation(){if(!1!==this.mapOpts.annotation)if(this.root){let e;for(let t=this.root.nodes.length-1;t>=0;t--)e=this.root.nodes[t],"comment"===e.type&&0===e.text.indexOf("# sourceMappingURL=")&&this.root.removeChild(t)}else this.css&&(this.css=this.css.replace(/(\n)?\/\*#[\S\s]*?\*\/$/gm,""))}setSourcesContent(){let e={};if(this.root)this.root.walk((t=>{if(t.source){let r=t.source.input.from;r&&!e[r]&&(e[r]=!0,this.map.setSourceContent(this.toUrl(this.path(r)),t.source.input.css))}}));else if(this.css){let e=this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>";this.map.setSourceContent(e,this.css)}}applyPrevMaps(){for(let e of this.previous()){let t,r=this.toUrl(this.path(e.file)),n=e.root||Cr(e.file);!1===this.mapOpts.sourcesContent?(t=new br(e.text),t.sourcesContent&&(t.sourcesContent=t.sourcesContent.map((()=>null)))):t=e.consumer(),this.map.applySourceMap(t,r,this.toUrl(this.path(n)))}}isAnnotation(){return!!this.isInline()||(void 0!==this.mapOpts.annotation?this.mapOpts.annotation:!this.previous().length||this.previous().some((e=>e.annotation)))}toBase64(e){return Buffer?Buffer.from(e).toString("base64"):window.btoa(unescape(encodeURIComponent(e)))}addAnnotation(){let e;e=this.isInline()?"data:application/json;base64,"+this.toBase64(this.map.toString()):"string"==typeof this.mapOpts.annotation?this.mapOpts.annotation:"function"==typeof this.mapOpts.annotation?this.mapOpts.annotation(this.opts.to,this.root):this.outputFile()+".map";let t="\n";this.css.includes("\r\n")&&(t="\r\n"),this.css+=t+"/*# sourceMappingURL="+e+" */"}outputFile(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"}generateMap(){if(this.root)this.generateString();else if(1===this.previous().length){let e=this.previous()[0].consumer();e.file=this.outputFile(),this.map=Sr.fromSourceMap(e)}else this.map=new Sr({file:this.outputFile()}),this.map.addMapping({source:this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>",generated:{line:1,column:0},original:{line:1,column:0}});return this.isSourcesContent()&&this.setSourcesContent(),this.root&&this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline()?[this.css]:[this.css,this.map]}path(e){if(0===e.indexOf("<"))return e;if(/^\w+:\/\//.test(e))return e;if(this.mapOpts.absolute)return e;let t=this.opts.to?Cr(this.opts.to):".";return"string"==typeof this.mapOpts.annotation&&(t=Cr(_r(t,this.mapOpts.annotation))),e=Or(t,e)}toUrl(e){return"\\"===xr&&(e=e.replace(/\\/g,"/")),encodeURI(e).replace(/[#?]/g,encodeURIComponent)}sourcePath(e){if(this.mapOpts.from)return this.toUrl(this.mapOpts.from);if(this.mapOpts.absolute){if(Ar)return Ar(e.source.input.from).toString();throw new Error("`map.absolute` option is not available in this PostCSS build")}return this.toUrl(this.path(e.source.input.from))}generateString(){this.css="",this.map=new Sr({file:this.outputFile()});let e,t,r=1,n=1,s="<no source>",o={source:"",generated:{line:0,column:0},original:{line:0,column:0}};this.stringify(this.root,((i,a,l)=>{if(this.css+=i,a&&"end"!==l&&(o.generated.line=r,o.generated.column=n-1,a.source&&a.source.start?(o.source=this.sourcePath(a),o.original.line=a.source.start.line,o.original.column=a.source.start.column-1,this.map.addMapping(o)):(o.source=s,o.original.line=1,o.original.column=0,this.map.addMapping(o))),e=i.match(/\n/g),e?(r+=e.length,t=i.lastIndexOf("\n"),n=i.length-t):n+=i.length,a&&"start"!==l){let e=a.parent||{raws:{}};("decl"!==a.type||a!==e.last||e.raws.semicolon)&&(a.source&&a.source.end?(o.source=this.sourcePath(a),o.original.line=a.source.end.line,o.original.column=a.source.end.column-1,o.generated.line=r,o.generated.column=n-2,this.map.addMapping(o)):(o.source=s,o.original.line=1,o.original.column=0,o.generated.line=r,o.generated.column=n-1,this.map.addMapping(o)))}}))}generate(){if(this.clearAnnotation(),Er&&Mr&&this.isMap())return this.generateMap();{let e="";return this.stringify(this.root,(t=>{e+=t})),[e]}}};let Pr=st;class Rr extends Pr{constructor(e){super(e),this.type="comment"}}var jr=Rr;Rr.default=Rr;let Ir,$r,Fr,{isClean:Nr,my:Br}=Ve,Ur=at,Dr=jr,Tr=st;function Gr(e){return e.map((e=>(e.nodes&&(e.nodes=Gr(e.nodes)),delete e.source,e)))}function zr(e){if(e[Nr]=!1,e.proxyOf.nodes)for(let t of e.proxyOf.nodes)zr(t)}class Vr extends Tr{push(e){return e.parent=this,this.proxyOf.nodes.push(e),this}each(e){if(!this.proxyOf.nodes)return;let t,r,n=this.getIterator();for(;this.indexes[n]<this.proxyOf.nodes.length&&(t=this.indexes[n],r=e(this.proxyOf.nodes[t],t),!1!==r);)this.indexes[n]+=1;return delete this.indexes[n],r}walk(e){return this.each(((t,r)=>{let n;try{n=e(t,r)}catch(e){throw t.addToError(e)}return!1!==n&&t.walk&&(n=t.walk(e)),n}))}walkDecls(e,t){return t?e instanceof RegExp?this.walk(((r,n)=>{if("decl"===r.type&&e.test(r.prop))return t(r,n)})):this.walk(((r,n)=>{if("decl"===r.type&&r.prop===e)return t(r,n)})):(t=e,this.walk(((e,r)=>{if("decl"===e.type)return t(e,r)})))}walkRules(e,t){return t?e instanceof RegExp?this.walk(((r,n)=>{if("rule"===r.type&&e.test(r.selector))return t(r,n)})):this.walk(((r,n)=>{if("rule"===r.type&&r.selector===e)return t(r,n)})):(t=e,this.walk(((e,r)=>{if("rule"===e.type)return t(e,r)})))}walkAtRules(e,t){return t?e instanceof RegExp?this.walk(((r,n)=>{if("atrule"===r.type&&e.test(r.name))return t(r,n)})):this.walk(((r,n)=>{if("atrule"===r.type&&r.name===e)return t(r,n)})):(t=e,this.walk(((e,r)=>{if("atrule"===e.type)return t(e,r)})))}walkComments(e){return this.walk(((t,r)=>{if("comment"===t.type)return e(t,r)}))}append(...e){for(let t of e){let e=this.normalize(t,this.last);for(let t of e)this.proxyOf.nodes.push(t)}return this.markDirty(),this}prepend(...e){e=e.reverse();for(let t of e){let e=this.normalize(t,this.first,"prepend").reverse();for(let t of e)this.proxyOf.nodes.unshift(t);for(let t in this.indexes)this.indexes[t]=this.indexes[t]+e.length}return this.markDirty(),this}cleanRaws(e){if(super.cleanRaws(e),this.nodes)for(let t of this.nodes)t.cleanRaws(e)}insertBefore(e,t){let r,n=0===(e=this.index(e))&&"prepend",s=this.normalize(t,this.proxyOf.nodes[e],n).reverse();for(let t of s)this.proxyOf.nodes.splice(e,0,t);for(let t in this.indexes)r=this.indexes[t],e<=r&&(this.indexes[t]=r+s.length);return this.markDirty(),this}insertAfter(e,t){e=this.index(e);let r,n=this.normalize(t,this.proxyOf.nodes[e]).reverse();for(let t of n)this.proxyOf.nodes.splice(e+1,0,t);for(let t in this.indexes)r=this.indexes[t],e<r&&(this.indexes[t]=r+n.length);return this.markDirty(),this}removeChild(e){let t;e=this.index(e),this.proxyOf.nodes[e].parent=void 0,this.proxyOf.nodes.splice(e,1);for(let r in this.indexes)t=this.indexes[r],t>=e&&(this.indexes[r]=t-1);return this.markDirty(),this}removeAll(){for(let e of this.proxyOf.nodes)e.parent=void 0;return this.proxyOf.nodes=[],this.markDirty(),this}replaceValues(e,t,r){return r||(r=t,t={}),this.walkDecls((n=>{t.props&&!t.props.includes(n.prop)||t.fast&&!n.value.includes(t.fast)||(n.value=n.value.replace(e,r))})),this.markDirty(),this}every(e){return this.nodes.every(e)}some(e){return this.nodes.some(e)}index(e){return"number"==typeof e?e:(e.proxyOf&&(e=e.proxyOf),this.proxyOf.nodes.indexOf(e))}get first(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}get last(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}normalize(e,t){if("string"==typeof e)e=Gr(Ir(e).nodes);else if(Array.isArray(e)){e=e.slice(0);for(let t of e)t.parent&&t.parent.removeChild(t,"ignore")}else if("root"===e.type&&"document"!==this.type){e=e.nodes.slice(0);for(let t of e)t.parent&&t.parent.removeChild(t,"ignore")}else if(e.type)e=[e];else if(e.prop){if(void 0===e.value)throw new Error("Value field is missed in node creation");"string"!=typeof e.value&&(e.value=String(e.value)),e=[new Ur(e)]}else if(e.selector)e=[new $r(e)];else if(e.name)e=[new Fr(e)];else{if(!e.text)throw new Error("Unknown node type in node creation");e=[new Dr(e)]}return e.map((e=>(e[Br]||Vr.rebuild(e),(e=e.proxyOf).parent&&e.parent.removeChild(e),e[Nr]&&zr(e),void 0===e.raws.before&&t&&void 0!==t.raws.before&&(e.raws.before=t.raws.before.replace(/\S/g,"")),e.parent=this,e)))}getProxyProcessor(){return{set:(e,t,r)=>(e[t]===r||(e[t]=r,"name"!==t&&"params"!==t&&"selector"!==t||e.markDirty()),!0),get:(e,t)=>"proxyOf"===t?e:e[t]?"each"===t||"string"==typeof t&&t.startsWith("walk")?(...r)=>e[t](...r.map((e=>"function"==typeof e?(t,r)=>e(t.toProxy(),r):e))):"every"===t||"some"===t?r=>e[t](((e,...t)=>r(e.toProxy(),...t))):"root"===t?()=>e.root().toProxy():"nodes"===t?e.nodes.map((e=>e.toProxy())):"first"===t||"last"===t?e[t].toProxy():e[t]:e[t]}}getIterator(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;let e=this.lastEach;return this.indexes[e]=0,e}}Vr.registerParse=e=>{Ir=e},Vr.registerRule=e=>{$r=e},Vr.registerAtRule=e=>{Fr=e};var Wr=Vr;Vr.default=Vr,Vr.rebuild=e=>{"atrule"===e.type?Object.setPrototypeOf(e,Fr.prototype):"rule"===e.type?Object.setPrototypeOf(e,$r.prototype):"decl"===e.type?Object.setPrototypeOf(e,Ur.prototype):"comment"===e.type&&Object.setPrototypeOf(e,Dr.prototype),e[Br]=!0,e.nodes&&e.nodes.forEach((e=>{Vr.rebuild(e)}))};let Jr,qr,Yr=Wr;class Qr extends Yr{constructor(e){super({type:"document",...e}),this.nodes||(this.nodes=[])}toResult(e={}){return new Jr(new qr,this,e).stringify()}}Qr.registerLazyResult=e=>{Jr=e},Qr.registerProcessor=e=>{qr=e};var Zr=Qr;Qr.default=Qr;let Hr={};var Kr=function(e){Hr[e]||(Hr[e]=!0,"undefined"!=typeof console&&console.warn&&console.warn(e))};class Xr{constructor(e,t={}){if(this.type="warning",this.text=e,t.node&&t.node.source){let e=t.node.rangeBy(t);this.line=e.start.line,this.column=e.start.column,this.endLine=e.end.line,this.endColumn=e.end.column}for(let e in t)this[e]=t[e]}toString(){return this.node?this.node.error(this.text,{plugin:this.plugin,index:this.index,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text}}var en=Xr;Xr.default=Xr;let tn=en;class rn{constructor(e,t,r){this.processor=e,this.messages=[],this.root=t,this.opts=r,this.css=void 0,this.map=void 0}toString(){return this.css}warn(e,t={}){t.plugin||this.lastPlugin&&this.lastPlugin.postcssPlugin&&(t.plugin=this.lastPlugin.postcssPlugin);let r=new tn(e,t);return this.messages.push(r),r}warnings(){return this.messages.filter((e=>"warning"===e.type))}get content(){return this.css}}var nn=rn;rn.default=rn;let sn=Wr;class on extends sn{constructor(e){super(e),this.type="atrule"}append(...e){return this.proxyOf.nodes||(this.nodes=[]),super.append(...e)}prepend(...e){return this.proxyOf.nodes||(this.nodes=[]),super.prepend(...e)}}var an=on;on.default=on,sn.registerAtRule(on);let ln,un,cn=Wr;class pn extends cn{constructor(e){super(e),this.type="root",this.nodes||(this.nodes=[])}removeChild(e,t){let r=this.index(e);return!t&&0===r&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[r].raws.before),super.removeChild(e)}normalize(e,t,r){let n=super.normalize(e);if(t)if("prepend"===r)this.nodes.length>1?t.raws.before=this.nodes[1].raws.before:delete t.raws.before;else if(this.first!==t)for(let e of n)e.raws.before=t.raws.before;return n}toResult(e={}){return new ln(new un,this,e).stringify()}}pn.registerLazyResult=e=>{ln=e},pn.registerProcessor=e=>{un=e};var hn=pn;pn.default=pn;let fn={split(e,t,r){let n=[],s="",o=!1,i=0,a=!1,l=!1;for(let r of e)l?l=!1:"\\"===r?l=!0:a?r===a&&(a=!1):'"'===r||"'"===r?a=r:"("===r?i+=1:")"===r?i>0&&(i-=1):0===i&&t.includes(r)&&(o=!0),o?(""!==s&&n.push(s.trim()),s="",o=!1):s+=r;return(r||""!==s)&&n.push(s.trim()),n},space:e=>fn.split(e,[" ","\n","\t"]),comma:e=>fn.split(e,[","],!0)};var dn=fn;fn.default=fn;let mn=Wr,gn=dn;class wn extends mn{constructor(e){super(e),this.type="rule",this.nodes||(this.nodes=[])}get selectors(){return gn.comma(this.selector)}set selectors(e){let t=this.selector?this.selector.match(/,\s*/):null,r=t?t[0]:","+this.raw("between","beforeOpen");this.selector=e.join(r)}}var yn=wn;wn.default=wn,mn.registerRule(wn);let vn=at,bn=Re,Sn=jr,Cn=an,_n=hn,On=yn;var xn=class{constructor(e){this.input=e,this.root=new _n,this.current=this.root,this.spaces="",this.semicolon=!1,this.customProperty=!1,this.createTokenizer(),this.root.source={input:e,start:{offset:0,line:1,column:1}}}createTokenizer(){this.tokenizer=bn(this.input)}parse(){let e;for(;!this.tokenizer.endOfFile();)switch(e=this.tokenizer.nextToken(),e[0]){case"space":this.spaces+=e[1];break;case";":this.freeSemicolon(e);break;case"}":this.end(e);break;case"comment":this.comment(e);break;case"at-word":this.atrule(e);break;case"{":this.emptyRule(e);break;default:this.other(e)}this.endFile()}comment(e){let t=new Sn;this.init(t,e[2]),t.source.end=this.getPosition(e[3]||e[2]);let r=e[1].slice(2,-2);if(/^\s*$/.test(r))t.text="",t.raws.left=r,t.raws.right="";else{let e=r.match(/^(\s*)([^]*\S)(\s*)$/);t.text=e[2],t.raws.left=e[1],t.raws.right=e[3]}}emptyRule(e){let t=new On;this.init(t,e[2]),t.selector="",t.raws.between="",this.current=t}other(e){let t=!1,r=null,n=!1,s=null,o=[],i=e[1].startsWith("--"),a=[],l=e;for(;l;){if(r=l[0],a.push(l),"("===r||"["===r)s||(s=l),o.push("("===r?")":"]");else if(i&&n&&"{"===r)s||(s=l),o.push("}");else if(0===o.length){if(";"===r){if(n)return void this.decl(a,i);break}if("{"===r)return void this.rule(a);if("}"===r){this.tokenizer.back(a.pop()),t=!0;break}":"===r&&(n=!0)}else r===o[o.length-1]&&(o.pop(),0===o.length&&(s=null));l=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(t=!0),o.length>0&&this.unclosedBracket(s),t&&n){for(;a.length&&(l=a[a.length-1][0],"space"===l||"comment"===l);)this.tokenizer.back(a.pop());this.decl(a,i)}else this.unknownWord(a)}rule(e){e.pop();let t=new On;this.init(t,e[0][2]),t.raws.between=this.spacesAndCommentsFromEnd(e),this.raw(t,"selector",e),this.current=t}decl(e,t){let r=new vn;this.init(r,e[0][2]);let n,s=e[e.length-1];for(";"===s[0]&&(this.semicolon=!0,e.pop()),r.source.end=this.getPosition(s[3]||s[2]);"word"!==e[0][0];)1===e.length&&this.unknownWord(e),r.raws.before+=e.shift()[1];for(r.source.start=this.getPosition(e[0][2]),r.prop="";e.length;){let t=e[0][0];if(":"===t||"space"===t||"comment"===t)break;r.prop+=e.shift()[1]}for(r.raws.between="";e.length;){if(n=e.shift(),":"===n[0]){r.raws.between+=n[1];break}"word"===n[0]&&/\w/.test(n[1])&&this.unknownWord([n]),r.raws.between+=n[1]}"_"!==r.prop[0]&&"*"!==r.prop[0]||(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));let o=this.spacesAndCommentsFromStart(e);this.precheckMissedSemicolon(e);for(let t=e.length-1;t>=0;t--){if(n=e[t],"!important"===n[1].toLowerCase()){r.important=!0;let n=this.stringFrom(e,t);n=this.spacesFromEnd(e)+n," !important"!==n&&(r.raws.important=n);break}if("important"===n[1].toLowerCase()){let n=e.slice(0),s="";for(let e=t;e>0;e--){let t=n[e][0];if(0===s.trim().indexOf("!")&&"space"!==t)break;s=n.pop()[1]+s}0===s.trim().indexOf("!")&&(r.important=!0,r.raws.important=s,e=n)}if("space"!==n[0]&&"comment"!==n[0])break}let i=e.some((e=>"space"!==e[0]&&"comment"!==e[0]));this.raw(r,"value",e),i?r.raws.between+=o:r.value=o+r.value,r.value.includes(":")&&!t&&this.checkMissedSemicolon(e)}atrule(e){let t,r,n,s=new Cn;s.name=e[1].slice(1),""===s.name&&this.unnamedAtrule(s,e),this.init(s,e[2]);let o=!1,i=!1,a=[],l=[];for(;!this.tokenizer.endOfFile();){if(t=(e=this.tokenizer.nextToken())[0],"("===t||"["===t?l.push("("===t?")":"]"):"{"===t&&l.length>0?l.push("}"):t===l[l.length-1]&&l.pop(),0===l.length){if(";"===t){s.source.end=this.getPosition(e[2]),this.semicolon=!0;break}if("{"===t){i=!0;break}if("}"===t){if(a.length>0){for(n=a.length-1,r=a[n];r&&"space"===r[0];)r=a[--n];r&&(s.source.end=this.getPosition(r[3]||r[2]))}this.end(e);break}a.push(e)}else a.push(e);if(this.tokenizer.endOfFile()){o=!0;break}}s.raws.between=this.spacesAndCommentsFromEnd(a),a.length?(s.raws.afterName=this.spacesAndCommentsFromStart(a),this.raw(s,"params",a),o&&(e=a[a.length-1],s.source.end=this.getPosition(e[3]||e[2]),this.spaces=s.raws.between,s.raws.between="")):(s.raws.afterName="",s.params=""),i&&(s.nodes=[],this.current=s)}end(e){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(e[2]),this.current=this.current.parent):this.unexpectedClose(e)}endFile(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces}freeSemicolon(e){if(this.spaces+=e[1],this.current.nodes){let e=this.current.nodes[this.current.nodes.length-1];e&&"rule"===e.type&&!e.raws.ownSemicolon&&(e.raws.ownSemicolon=this.spaces,this.spaces="")}}getPosition(e){let t=this.input.fromOffset(e);return{offset:e,line:t.line,column:t.col}}init(e,t){this.current.push(e),e.source={start:this.getPosition(t),input:this.input},e.raws.before=this.spaces,this.spaces="","comment"!==e.type&&(this.semicolon=!1)}raw(e,t,r){let n,s,o,i,a=r.length,l="",u=!0,c=/^([#.|])?(\w)+/i;for(let t=0;t<a;t+=1)n=r[t],s=n[0],"comment"!==s||"rule"!==e.type?"comment"===s||"space"===s&&t===a-1?u=!1:l+=n[1]:(i=r[t-1],o=r[t+1],"space"!==i[0]&&"space"!==o[0]&&c.test(i[1])&&c.test(o[1])?l+=n[1]:u=!1);if(!u){let n=r.reduce(((e,t)=>e+t[1]),"");e.raws[t]={value:l,raw:n}}e[t]=l}spacesAndCommentsFromEnd(e){let t,r="";for(;e.length&&(t=e[e.length-1][0],"space"===t||"comment"===t);)r=e.pop()[1]+r;return r}spacesAndCommentsFromStart(e){let t,r="";for(;e.length&&(t=e[0][0],"space"===t||"comment"===t);)r+=e.shift()[1];return r}spacesFromEnd(e){let t,r="";for(;e.length&&(t=e[e.length-1][0],"space"===t);)r=e.pop()[1]+r;return r}stringFrom(e,t){let r="";for(let n=t;n<e.length;n++)r+=e[n][1];return e.splice(t,e.length-t),r}colon(e){let t,r,n,s=0;for(let[o,i]of e.entries()){if(t=i,r=t[0],"("===r&&(s+=1),")"===r&&(s-=1),0===s&&":"===r){if(n){if("word"===n[0]&&"progid"===n[1])continue;return o}this.doubleColon(t)}n=t}return!1}unclosedBracket(e){throw this.input.error("Unclosed bracket",{offset:e[2]},{offset:e[2]+1})}unknownWord(e){throw this.input.error("Unknown word",{offset:e[0][2]},{offset:e[0][2]+e[0][1].length})}unexpectedClose(e){throw this.input.error("Unexpected }",{offset:e[2]},{offset:e[2]+1})}unclosedBlock(){let e=this.current.source.start;throw this.input.error("Unclosed block",e.line,e.column)}doubleColon(e){throw this.input.error("Double colon",{offset:e[2]},{offset:e[2]+e[1].length})}unnamedAtrule(e,t){throw this.input.error("At-rule without name",{offset:t[2]},{offset:t[2]+t[1].length})}precheckMissedSemicolon(){}checkMissedSemicolon(e){let t=this.colon(e);if(!1===t)return;let r,n=0;for(let s=t-1;s>=0&&(r=e[s],"space"===r[0]||(n+=1,2!==n));s--);throw this.input.error("Missed semicolon","word"===r[0]?r[3]+1:r[2])}};let An=Wr,kn=xn,Mn=vr;function En(e,t){let r=new Mn(e,t),n=new kn(r);try{n.parse()}catch(e){throw"production"!==process.env.NODE_ENV&&"CssSyntaxError"===e.name&&t&&t.from&&(/\.scss$/i.test(t.from)?e.message+="\nYou tried to parse SCSS with the standard CSS parser; try again with the postcss-scss parser":/\.sass/i.test(t.from)?e.message+="\nYou tried to parse Sass with the standard CSS parser; try again with the postcss-sass parser":/\.less$/i.test(t.from)&&(e.message+="\nYou tried to parse Less with the standard CSS parser; try again with the postcss-less parser")),e}return n.root}var Ln=En;En.default=En,An.registerParse(En);let{isClean:Pn,my:Rn}=Ve,jn=Lr,In=Ze,$n=Wr,Fn=Zr,Nn=Kr,Bn=nn,Un=Ln,Dn=hn;const Tn={document:"Document",root:"Root",atrule:"AtRule",rule:"Rule",decl:"Declaration",comment:"Comment"},Gn={postcssPlugin:!0,prepare:!0,Once:!0,Document:!0,Root:!0,Declaration:!0,Rule:!0,AtRule:!0,Comment:!0,DeclarationExit:!0,RuleExit:!0,AtRuleExit:!0,CommentExit:!0,RootExit:!0,DocumentExit:!0,OnceExit:!0},zn={postcssPlugin:!0,prepare:!0,Once:!0};function Vn(e){return"object"==typeof e&&"function"==typeof e.then}function Wn(e){let t=!1,r=Tn[e.type];return"decl"===e.type?t=e.prop.toLowerCase():"atrule"===e.type&&(t=e.name.toLowerCase()),t&&e.append?[r,r+"-"+t,0,r+"Exit",r+"Exit-"+t]:t?[r,r+"-"+t,r+"Exit",r+"Exit-"+t]:e.append?[r,0,r+"Exit"]:[r,r+"Exit"]}function Jn(e){let t;return t="document"===e.type?["Document",0,"DocumentExit"]:"root"===e.type?["Root",0,"RootExit"]:Wn(e),{node:e,events:t,eventIndex:0,visitors:[],visitorIndex:0,iterator:0}}function qn(e){return e[Pn]=!1,e.nodes&&e.nodes.forEach((e=>qn(e))),e}let Yn={};class Qn{constructor(e,t,r){let n;if(this.stringified=!1,this.processed=!1,"object"!=typeof t||null===t||"root"!==t.type&&"document"!==t.type)if(t instanceof Qn||t instanceof Bn)n=qn(t.root),t.map&&(void 0===r.map&&(r.map={}),r.map.inline||(r.map.inline=!1),r.map.prev=t.map);else{let e=Un;r.syntax&&(e=r.syntax.parse),r.parser&&(e=r.parser),e.parse&&(e=e.parse);try{n=e(t,r)}catch(e){this.processed=!0,this.error=e}n&&!n[Rn]&&$n.rebuild(n)}else n=qn(t);this.result=new Bn(e,n,r),this.helpers={...Yn,result:this.result,postcss:Yn},this.plugins=this.processor.plugins.map((e=>"object"==typeof e&&e.prepare?{...e,...e.prepare(this.result)}:e))}get[Symbol.toStringTag](){return"LazyResult"}get processor(){return this.result.processor}get opts(){return this.result.opts}get css(){return this.stringify().css}get content(){return this.stringify().content}get map(){return this.stringify().map}get root(){return this.sync().root}get messages(){return this.sync().messages}warnings(){return this.sync().warnings()}toString(){return this.css}then(e,t){return"production"!==process.env.NODE_ENV&&("from"in this.opts||Nn("Without `from` option PostCSS could generate wrong source map and will not find Browserslist config. Set it to CSS file path or to `undefined` to prevent this warning.")),this.async().then(e,t)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}async(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)}sync(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(let e of this.plugins){if(Vn(this.runOnRoot(e)))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){let e=this.result.root;for(;!e[Pn];)e[Pn]=!0,this.walkSync(e);if(this.listeners.OnceExit)if("document"===e.type)for(let t of e.nodes)this.visitSync(this.listeners.OnceExit,t);else this.visitSync(this.listeners.OnceExit,e)}return this.result}stringify(){if(this.error)throw this.error;if(this.stringified)return this.result;this.stringified=!0,this.sync();let e=this.result.opts,t=In;e.syntax&&(t=e.syntax.stringify),e.stringifier&&(t=e.stringifier),t.stringify&&(t=t.stringify);let r=new jn(t,this.result.root,this.result.opts).generate();return this.result.css=r[0],this.result.map=r[1],this.result}walkSync(e){e[Pn]=!0;let t=Wn(e);for(let r of t)if(0===r)e.nodes&&e.each((e=>{e[Pn]||this.walkSync(e)}));else{let t=this.listeners[r];if(t&&this.visitSync(t,e.toProxy()))return}}visitSync(e,t){for(let[r,n]of e){let e;this.result.lastPlugin=r;try{e=n(t,this.helpers)}catch(e){throw this.handleError(e,t.proxyOf)}if("root"!==t.type&&"document"!==t.type&&!t.parent)return!0;if(Vn(e))throw this.getAsyncError()}}runOnRoot(e){this.result.lastPlugin=e;try{if("object"==typeof e&&e.Once){if("document"===this.result.root.type){let t=this.result.root.nodes.map((t=>e.Once(t,this.helpers)));return Vn(t[0])?Promise.all(t):t}return e.Once(this.result.root,this.helpers)}if("function"==typeof e)return e(this.result.root,this.result)}catch(e){throw this.handleError(e)}}getAsyncError(){throw new Error("Use process(css).then(cb) to work with async plugins")}handleError(e,t){let r=this.result.lastPlugin;try{if(t&&t.addToError(e),this.error=e,"CssSyntaxError"!==e.name||e.plugin){if(r.postcssVersion&&"production"!==process.env.NODE_ENV){let e=r.postcssPlugin,t=r.postcssVersion,n=this.result.processor.version,s=t.split("."),o=n.split(".");(s[0]!==o[0]||parseInt(s[1])>parseInt(o[1]))&&console.error("Unknown error from PostCSS plugin. Your current PostCSS version is "+n+", but "+e+" uses "+t+". Perhaps this is the source of the error below.")}}else e.plugin=r.postcssPlugin,e.setMessage()}catch(e){console&&console.error&&console.error(e)}return e}async runAsync(){this.plugin=0;for(let e=0;e<this.plugins.length;e++){let t=this.plugins[e],r=this.runOnRoot(t);if(Vn(r))try{await r}catch(e){throw this.handleError(e)}}if(this.prepareVisitors(),this.hasListener){let e=this.result.root;for(;!e[Pn];){e[Pn]=!0;let t=[Jn(e)];for(;t.length>0;){let e=this.visitTick(t);if(Vn(e))try{await e}catch(e){let r=t[t.length-1].node;throw this.handleError(e,r)}}}if(this.listeners.OnceExit)for(let[t,r]of this.listeners.OnceExit){this.result.lastPlugin=t;try{if("document"===e.type){let t=e.nodes.map((e=>r(e,this.helpers)));await Promise.all(t)}else await r(e,this.helpers)}catch(e){throw this.handleError(e)}}}return this.processed=!0,this.stringify()}prepareVisitors(){this.listeners={};let e=(e,t,r)=>{this.listeners[t]||(this.listeners[t]=[]),this.listeners[t].push([e,r])};for(let t of this.plugins)if("object"==typeof t)for(let r in t){if(!Gn[r]&&/^[A-Z]/.test(r))throw new Error(`Unknown event ${r} in ${t.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!zn[r])if("object"==typeof t[r])for(let n in t[r])e(t,"*"===n?r:r+"-"+n.toLowerCase(),t[r][n]);else"function"==typeof t[r]&&e(t,r,t[r])}this.hasListener=Object.keys(this.listeners).length>0}visitTick(e){let t=e[e.length-1],{node:r,visitors:n}=t;if("root"!==r.type&&"document"!==r.type&&!r.parent)return void e.pop();if(n.length>0&&t.visitorIndex<n.length){let[e,s]=n[t.visitorIndex];t.visitorIndex+=1,t.visitorIndex===n.length&&(t.visitors=[],t.visitorIndex=0),this.result.lastPlugin=e;try{return s(r.toProxy(),this.helpers)}catch(e){throw this.handleError(e,r)}}if(0!==t.iterator){let n,s=t.iterator;for(;n=r.nodes[r.indexes[s]];)if(r.indexes[s]+=1,!n[Pn])return n[Pn]=!0,void e.push(Jn(n));t.iterator=0,delete r.indexes[s]}let s=t.events;for(;t.eventIndex<s.length;){let e=s[t.eventIndex];if(t.eventIndex+=1,0===e)return void(r.nodes&&r.nodes.length&&(r[Pn]=!0,t.iterator=r.getIterator()));if(this.listeners[e])return void(t.visitors=this.listeners[e])}e.pop()}}Qn.registerPostcss=e=>{Yn=e};var Zn=Qn;Qn.default=Qn,Dn.registerLazyResult(Qn),Fn.registerLazyResult(Qn);let Hn=Lr,Kn=Ze,Xn=Kr,es=Ln;const ts=nn;class rs{constructor(e,t,r){let n;t=t.toString(),this.stringified=!1,this._processor=e,this._css=t,this._opts=r,this._map=void 0;let s=Kn;this.result=new ts(this._processor,n,this._opts),this.result.css=t;let o=this;Object.defineProperty(this.result,"root",{get:()=>o.root});let i=new Hn(s,n,this._opts,t);if(i.isMap()){let[e,t]=i.generate();e&&(this.result.css=e),t&&(this.result.map=t)}}get[Symbol.toStringTag](){return"NoWorkResult"}get processor(){return this.result.processor}get opts(){return this.result.opts}get css(){return this.result.css}get content(){return this.result.css}get map(){return this.result.map}get root(){if(this._root)return this._root;let e,t=es;try{e=t(this._css,this._opts)}catch(e){this.error=e}return this._root=e,e}get messages(){return[]}warnings(){return[]}toString(){return this._css}then(e,t){return"production"!==process.env.NODE_ENV&&("from"in this._opts||Xn("Without `from` option PostCSS could generate wrong source map and will not find Browserslist config. Set it to CSS file path or to `undefined` to prevent this warning.")),this.async().then(e,t)}catch(e){return this.async().catch(e)}finally(e){return this.async().then(e,e)}async(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)}sync(){if(this.error)throw this.error;return this.result}}var ns=rs;rs.default=rs;let ss=ns,os=Zn,is=Zr,as=hn;class ls{constructor(e=[]){this.version="8.4.5",this.plugins=this.normalize(e)}use(e){return this.plugins=this.plugins.concat(this.normalize([e])),this}process(e,t={}){return 0===this.plugins.length&&void 0===t.parser&&void 0===t.stringifier&&void 0===t.syntax?new ss(this,e,t):new os(this,e,t)}normalize(e){let t=[];for(let r of e)if(!0===r.postcss?r=r():r.postcss&&(r=r.postcss),"object"==typeof r&&Array.isArray(r.plugins))t=t.concat(r.plugins);else if("object"==typeof r&&r.postcssPlugin)t.push(r);else if("function"==typeof r)t.push(r);else{if("object"!=typeof r||!r.parse&&!r.stringify)throw new Error(r+" is not a PostCSS plugin");if("production"!==process.env.NODE_ENV)throw new Error("PostCSS syntaxes cannot be used as plugins. Instead, please use one of the syntax/parser/stringifier options as outlined in your PostCSS runner documentation.")}return t}}var us=ls;ls.default=ls,as.registerProcessor(ls),is.registerProcessor(ls);let cs=at,ps=sr,hs=jr,fs=an,ds=vr,ms=hn,gs=yn;function ws(e,t){if(Array.isArray(e))return e.map((e=>ws(e)));let{inputs:r,...n}=e;if(r){t=[];for(let e of r){let r={...e,__proto__:ds.prototype};r.map&&(r.map={...r.map,__proto__:ps.prototype}),t.push(r)}}if(n.nodes&&(n.nodes=e.nodes.map((e=>ws(e,t)))),n.source){let{inputId:e,...r}=n.source;n.source=r,null!=e&&(n.source.input=t[e])}if("root"===n.type)return new ms(n);if("decl"===n.type)return new cs(n);if("rule"===n.type)return new gs(n);if("comment"===n.type)return new hs(n);if("atrule"===n.type)return new fs(n);throw new Error("Unknown node type: "+e.type)}var ys=ws;ws.default=ws;let vs=ze,bs=at,Ss=Zn,Cs=Wr,_s=us,Os=Ze,xs=ys,As=Zr,ks=en,Ms=jr,Es=an,Ls=nn,Ps=vr,Rs=Ln,js=dn,Is=yn,$s=hn,Fs=st;function Ns(...e){return 1===e.length&&Array.isArray(e[0])&&(e=e[0]),new _s(e)}Ns.plugin=function(e,t){function r(...r){let n=t(...r);return n.postcssPlugin=e,n.postcssVersion=(new _s).version,n}let n;return console&&console.warn&&(console.warn(e+": postcss.plugin was deprecated. Migration guide:\nhttps://evilmartians.com/chronicles/postcss-8-plugin-migration"),process.env.LANG&&process.env.LANG.startsWith("cn")&&console.warn(e+": 里面 postcss.plugin 被弃用. 迁移指南:\nhttps://www.w3ctech.com/topic/2226")),Object.defineProperty(r,"postcss",{get:()=>(n||(n=r()),n)}),r.process=function(e,t,n){return Ns([r(n)]).process(e,t)},r},Ns.stringify=Os,Ns.parse=Rs,Ns.fromJSON=xs,Ns.list=js,Ns.comment=e=>new Ms(e),Ns.atRule=e=>new Es(e),Ns.decl=e=>new bs(e),Ns.rule=e=>new Is(e),Ns.root=e=>new $s(e),Ns.document=e=>new As(e),Ns.CssSyntaxError=vs,Ns.Declaration=bs,Ns.Container=Cs,Ns.Processor=_s,Ns.Document=As,Ns.Comment=Ms,Ns.Warning=ks,Ns.AtRule=Es,Ns.Result=Ls,Ns.Input=Ps,Ns.Rule=Is,Ns.Root=$s,Ns.Node=Fs,Ss.registerPostcss(Ns);var Bs=Ns;async function Us(){return new Promise((e=>{let t="",r=!1;if(setTimeout((()=>{r=!0,e("")}),1e4),process.stdin.isTTY){if(r)return;e(t)}else process.stdin.setEncoding("utf8"),process.stdin.on("readable",(()=>{let e;for(;e=process.stdin.read();)t+=e})),process.stdin.on("end",(()=>{r||e(t)}))}))}Ns.default=Ns,async function(e,t,r){const n=function(e,t,r){const n=e.map((e=>e.trim())).filter((e=>!!e)),s={stdin:!1,stdout:!1,output:null,outputDir:null,inputs:[],inlineMap:!0,externalMap:!1,replace:!1,pluginOptions:{},debug:!1};let o=null,i=!1;for(let e=0;e<n.length;e++){const t=n[e];switch(t){case"-o":case"--output":s.output=n[e+1],e++,i=!0;break;case"-m":case"--map":s.externalMap=!0,s.inlineMap=!1,i=!0;break;case"--no-map":s.externalMap=!1,s.inlineMap=!1,i=!0;break;case"-r":case"--replace":s.replace=!0,i=!0;break;case"--debug":s.debug=!0,i=!0;break;case"-d":case"--dir":s.outputDir=n[e+1],e++,i=!0;break;case"-p":case"--plugin-options":o=n[e+1],e++,i=!0;break;default:if(0===t.indexOf("-"))return console.warn(`[error] unknown argument : ${t}\n`),r(),re.InvalidArguments;if(!i){s.inputs.push(t);break}return r(),re.InvalidArguments}}if(s.replace&&(s.output=null,s.outputDir=null),s.outputDir&&(s.output=null),s.inputs.length>1&&s.output)return console.warn('[error] omit "--output" when processing multiple inputs\n'),r(),re.InvalidArguments;0===s.inputs.length&&(s.stdin=!0),s.output||s.outputDir||s.replace||(s.stdout=!0),s.stdout&&(s.externalMap=!1);let a={};if(o)try{a=JSON.parse(o)}catch(e){return console.warn("[error] plugin options must be valid JSON\n"),r(),re.InvalidArguments}for(const e in a){const n=a[e];if(!t.includes(e))return console.warn(`[error] unknown plugin option: ${e}\n`),r(),re.InvalidArguments;s.pluginOptions[e]=n}return s}(process.argv.slice(2),t,r);n===re.InvalidArguments&&process.exit(1);const s=e(n.pluginOptions);n.stdin&&n.stdout?await async function(e,t,r){let n="";try{const s=await Us();s||(r(),process.exit(1)),n=(await Bs([e]).process(s,{from:"stdin",to:"stdout",map:!!t.inlineMap&&{inline:!0}})).css}catch(e){console.error(t.debug?e:e.message),process.exit(1)}process.stdout.write(n+(t.inlineMap?"\n":"")),process.exit(0)}(s,n,r):n.stdin?await async function(e,t,r){let n=t.output;!n&&t.outputDir&&(n=$.join(t.outputDir,"output.css"));try{const s=await Us();s||(r(),process.exit(1));const o=await Bs([e]).process(s,{from:"stdin",to:n,map:!(!t.inlineMap&&!t.externalMap)&&{inline:t.inlineMap}});t.externalMap&&o.map?await Promise.all([await I.writeFile(n,o.css+(t.inlineMap?"\n":"")),await I.writeFile(`${n}.map`,o.map.toString())]):await I.writeFile(n,o.css+(t.inlineMap?"\n":""))}catch(e){console.error(t.debug?e:e.message),process.exit(1)}console.log(`CSS was written to "${$.normalize(n)}"`),process.exit(0)}(s,n,r):n.stdout?await async function(e,t){let r=[];try{r=await Promise.all(t.inputs.map((async t=>{const r=await I.readFile(t);return(await Bs([e]).process(r,{from:t,to:"stdout",map:!1})).css})))}catch(e){console.error(t.debug?e:e.message),process.exit(1)}for(const e of r)process.stdout.write(e);process.exit(0)}(s,n):await async function(e,t){try{await Promise.all(t.inputs.map((async r=>{let n=t.output;t.outputDir&&(n=$.join(t.outputDir,$.basename(r))),t.replace&&(n=r);const s=await I.readFile(r),o=await Bs([e]).process(s,{from:r,to:n,map:!(!t.inlineMap&&!t.externalMap)&&{inline:t.inlineMap}});t.externalMap&&o.map?await Promise.all([await I.writeFile(n,o.css+(t.inlineMap?"\n":"")),await I.writeFile(`${n}.map`,o.map.toString())]):await I.writeFile(n,o.css+(t.inlineMap?"\n":"")),console.log(`CSS was written to "${$.normalize(n)}"`)})))}catch(e){console.error(t.debug?e:e.message),process.exit(1)}process.exit(0)}(s,n)}(ee,["stage","features","browsers","autoprefixer","importFrom","exportTo"],function(e,t,r,n=null){let s=[];if(n){const e=Math.max(...Object.keys(n).map((e=>e.length))),t=new Array(e).fill(" ").join("");t.length&&(s=["\nPlugin Options:",...Object.keys(n).map((e=>` ${(e+t).slice(0,t.length)} ${typeof n[e]}`))],s.push(`\n ${JSON.stringify(n,null,2).split("\n").join("\n ")}`))}const o=[`${t}\n`,` ${r}\n`,"Usage:",` ${e} [input.css] [OPTIONS] [-o|--output output.css]`,` ${e} <input.css>... [OPTIONS] --dir <output-directory>`,` ${e} <input.css>... [OPTIONS] --replace`,"\nOptions:"," -o, --output Output file"," -d, --dir Output directory"," -r, --replace Replace (overwrite) the input file"," -m, --map Create an external sourcemap"," --no-map Disable the default inline sourcemaps"," -p, --plugin-options Stringified JSON object with plugin options"];return s.length>0&&o.push(...s),()=>{console.warn(o.join("\n"))}}("postcss-preset-env","PostCSS Preset Env","Lets you convert modern CSS into something most browsers can understand, determining the polyfills you need based on your targeted browsers or runtime environments.",{stage:0,features:{"blank-pseudo-class":{preserve:!1},"color-functional-notation":{preserve:!0}},browsers:"last 2 versions",autoprefixer:{grid:!0},preserve:!1,importFrom:"path/to/file.css",exportTo:"path/to/file.css"}));
|
package/dist/index.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/patch/postcss-system-ui-font-family.js","../src/lib/plugins-by-id.js","../src/lib/get-transformed-insertions.js","../src/lib/ids-by-execution-order.js","../src/lib/write-to-exports.js","../src/index.js","../src/lib/get-unsupported-browsers-by-feature.js"],"sourcesContent":["export default function postcssSystemUiFont() {\n\treturn {\n\t\tpostcssPlugin: 'postcss-system-ui-font',\n\t\tDeclaration(/** @type {import('postcss').Declaration} */ node) {\n\t\t\tif (propertyRegExp.test(node.prop)) {\n\t\t\t\tif (!node.value.includes(systemUiFamily.join(', '))) {\n\t\t\t\t\tnode.value = node.value.replace(systemUiMatch, systemUiReplace);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t};\n}\n\npostcssSystemUiFont.postcss = true;\n\nconst propertyRegExp = /(?:^(?:-|\\\\002d){2})|(?:^font(?:-family)?$)/i;\nconst whitespace = '[\\\\f\\\\n\\\\r\\\\x09\\\\x20]';\nconst systemUiFamily = [\n\t'system-ui',\n\t/* macOS 10.11-10.12 */ '-apple-system',\n\t/* Windows 6+ */ 'Segoe UI',\n\t/* Android 4+ */ 'Roboto',\n\t/* Ubuntu 10.10+ */ 'Ubuntu',\n\t/* Gnome 3+ */ 'Cantarell',\n\t/* KDE Plasma 5+ */ 'Noto Sans',\n\t/* fallback */ 'sans-serif',\n];\nconst systemUiMatch = new RegExp(`(^|,|${whitespace}+)(?:system-ui${whitespace}*)(?:,${whitespace}*(?:${systemUiFamily.join('|')})${whitespace}*)?(,|$)`, 'i');\nconst systemUiReplace = `$1${systemUiFamily.join(', ')}$2`;\n","import postcssAttributeCaseInsensitive from 'postcss-attribute-case-insensitive';\nimport postcssBlankPseudo from 'css-blank-pseudo';\nimport postcssColorFunctionalNotation from 'postcss-color-functional-notation';\nimport postcssColorHexAlpha from 'postcss-color-hex-alpha';\nimport postcssColorRebeccapurple from 'postcss-color-rebeccapurple';\nimport postcssCustomMedia from 'postcss-custom-media';\nimport postcssCustomProperties from 'postcss-custom-properties';\nimport postcssCustomSelectors from 'postcss-custom-selectors';\nimport postcssDirPseudoClass from 'postcss-dir-pseudo-class';\nimport postcssDoublePositionGradients from 'postcss-double-position-gradients';\nimport postcssEnvFunction from 'postcss-env-function';\nimport postcssFocusVisible from 'postcss-focus-visible';\nimport postcssFocusWithin from 'postcss-focus-within';\nimport postcssFontVariant from 'postcss-font-variant';\nimport postcssFontFamilySystemUi from '../patch/postcss-system-ui-font-family';\nimport postcssGapProperties from 'postcss-gap-properties';\nimport postcssHasPseudo from 'css-has-pseudo';\nimport postcssImageSetPolyfill from 'postcss-image-set-function';\nimport postcssInitial from 'postcss-initial';\nimport postcssLabFunction from 'postcss-lab-function';\nimport postcssLogical from 'postcss-logical';\nimport postcssMediaMinmax from 'postcss-media-minmax';\nimport postcssNesting from 'postcss-nesting';\nimport postcssOverflowShorthand from 'postcss-overflow-shorthand';\nimport postcssPageBreak from 'postcss-page-break';\nimport postcssPlace from 'postcss-place';\nimport postcssPrefersColorScheme from 'css-prefers-color-scheme';\nimport postcssPseudoClassAnyLink from 'postcss-pseudo-class-any-link';\nimport postcssReplaceOverflowWrap from 'postcss-replace-overflow-wrap';\nimport postcssSelectorNot from 'postcss-selector-not';\n\n// postcss plugins ordered by id\nexport default {\n\t'all-property': postcssInitial,\n\t'any-link-pseudo-class': postcssPseudoClassAnyLink,\n\t'blank-pseudo-class': postcssBlankPseudo,\n\t'break-properties': postcssPageBreak,\n\t'case-insensitive-attributes': postcssAttributeCaseInsensitive,\n\t'color-functional-notation': postcssColorFunctionalNotation,\n\t'custom-media-queries': postcssCustomMedia,\n\t'custom-properties': postcssCustomProperties,\n\t'custom-selectors': postcssCustomSelectors,\n\t'dir-pseudo-class': postcssDirPseudoClass,\n\t'double-position-gradients': postcssDoublePositionGradients,\n\t'environment-variables': postcssEnvFunction,\n\t'focus-visible-pseudo-class': postcssFocusVisible,\n\t'focus-within-pseudo-class': postcssFocusWithin,\n\t'font-variant-property': postcssFontVariant,\n\t'gap-properties': postcssGapProperties,\n\t'has-pseudo-class': postcssHasPseudo,\n\t'hexadecimal-alpha-notation': postcssColorHexAlpha,\n\t'image-set-function': postcssImageSetPolyfill,\n\t'lab-function': postcssLabFunction,\n\t'logical-properties-and-values': postcssLogical,\n\t'media-query-ranges': postcssMediaMinmax,\n\t'nesting-rules': postcssNesting,\n\t'not-pseudo-class': postcssSelectorNot,\n\t'overflow-property': postcssOverflowShorthand,\n\t'overflow-wrap-property': postcssReplaceOverflowWrap,\n\t'place-properties': postcssPlace,\n\t'prefers-color-scheme-query': postcssPrefersColorScheme,\n\t'rebeccapurple-color': postcssColorRebeccapurple,\n\t'system-ui-font-family': postcssFontFamilySystemUi,\n};\n","// return a list of features to be inserted before or after cssdb features\nexport default function getTransformedInsertions(insertions, placement) {\n\treturn Object.keys(insertions).map(\n\t\tid => [].concat(insertions[id]).map(\n\t\t\tplugin => ({\n\t\t\t\t[placement]: true,\n\t\t\t\tplugin,\n\t\t\t\tid,\n\t\t\t}),\n\t\t),\n\t).reduce(\n\t\t(array, feature) => array.concat(feature), [],\n\t);\n}\n","// ids ordered by required execution, then alphabetically\nexport default [\n\t'custom-media-queries',\n\t'custom-properties',\n\t'environment-variables', // run environment-variables here to access transpiled custom media params and properties\n\t'image-set-function', // run images-set-function before nesting-rules so that it may fix nested media\n\t'media-query-ranges', // run media-query-range and\n\t'prefers-color-scheme-query', // run prefers-color-scheme-query here to prevent duplicate transpilation after nesting-rules\n\t'nesting-rules',\n\t'custom-selectors', // run custom-selectors after nesting-rules to correctly transpile &:--custom-selector\n\t'any-link-pseudo-class',\n\t'case-insensitive-attributes',\n\t'focus-visible-pseudo-class',\n\t'focus-within-pseudo-class',\n\t'matches-pseudo-class', // run matches-pseudo-class and\n\t'not-pseudo-class', // run not-pseudo-class after other selectors have been transpiled\n\t'logical-properties-and-values', // run logical-properties-and-values before dir-pseudo-class\n\t'dir-pseudo-class',\n\t'all-property', // run all-property before other property polyfills\n\t'color-functional-notation',\n\t'double-position-gradients',\n\t'hexadecimal-alpha-notation',\n\t'lab-function',\n\t'rebeccapurple-color',\n\t'color-mod-function', // run color-mod after other color modifications have finished\n\t'blank-pseudo-class',\n\t'break-properties',\n\t'font-variant-property',\n\t'has-pseudo-class',\n\t'gap-properties',\n\t'overflow-property',\n\t'overflow-wrap-property',\n\t'place-properties',\n\t'system-ui-font-family',\n];\n","/* eslint max-params: [\"error\", 4] */\n\nimport fs from 'fs';\nimport path from 'path';\n\n/* Write Exports to CSS File\n/* ========================================================================== */\n\nfunction getCustomMediaAsCss(customMedia) {\n\tconst cssContent = Object.keys(customMedia).reduce((cssLines, name) => {\n\t\tcssLines.push(`@custom-media ${name} ${customMedia[name]};`);\n\n\t\treturn cssLines;\n\t}, []).join('\\n');\n\tconst css = `${cssContent}\\n`;\n\n\treturn css;\n}\n\nfunction getCustomPropertiesAsCss(customProperties) {\n\tconst cssContent = Object.keys(customProperties).reduce((cssLines, name) => {\n\t\tcssLines.push(`\\t${name}: ${customProperties[name]};`);\n\n\t\treturn cssLines;\n\t}, []).join('\\n');\n\tconst css = `:root {\\n${cssContent}\\n}\\n`;\n\n\treturn css;\n}\n\nfunction getCustomSelectorsAsCss(customSelectors) {\n\tconst cssContent = Object.keys(customSelectors).reduce((cssLines, name) => {\n\t\tcssLines.push(`@custom-selector ${name} ${customSelectors[name]};`);\n\n\t\treturn cssLines;\n\t}, []).join('\\n');\n\tconst css = `${cssContent}\\n`;\n\n\treturn css;\n}\n\nasync function writeExportsToCssFile(to, customMedia, customProperties, customSelectors) {\n\tconst customPropertiesAsCss = getCustomPropertiesAsCss(customProperties);\n\tconst customMediaAsCss = getCustomMediaAsCss(customMedia);\n\tconst customSelectorsAsCss = getCustomSelectorsAsCss(customSelectors);\n\tconst css = `${customMediaAsCss}\\n${customSelectorsAsCss}\\n${customPropertiesAsCss}`;\n\n\tawait writeFile(to, css);\n}\n\n/* Write Exports to JSON file\n/* ========================================================================== */\n\nasync function writeExportsToJsonFile(to, customMedia, customProperties, customSelectors) {\n\tconst jsonContent = JSON.stringify({\n\t\t'custom-media': customMedia,\n\t\t'custom-properties': customProperties,\n\t\t'custom-selectors': customSelectors,\n\t}, null, ' ');\n\tconst json = `${jsonContent}\\n`;\n\n\tawait writeFile(to, json);\n}\n\n/* Write Exports to Common JS file\n/* ========================================================================== */\n\nfunction getObjectWithKeyAsCjs(key, object) {\n\tconst jsContents = Object.keys(object).reduce((jsLines, name) => {\n\t\tjsLines.push(`\\t\\t'${escapeForJS(name)}': '${escapeForJS(object[name])}'`);\n\n\t\treturn jsLines;\n\t}, []).join(',\\n');\n\tconst cjs = `\\n\\t${key}: {\\n${jsContents}\\n\\t}`;\n\n\treturn cjs;\n}\n\nasync function writeExportsToCjsFile(to, customMedia, customProperties, customSelectors) {\n\tconst customMediaAsCjs = getObjectWithKeyAsCjs('customMedia', customMedia);\n\tconst customPropertiesAsCjs = getObjectWithKeyAsCjs('customProperties', customProperties);\n\tconst customSelectorsAsCjs = getObjectWithKeyAsCjs('customSelectors', customSelectors);\n\tconst cjs = `module.exports = {${customMediaAsCjs},${customPropertiesAsCjs},${customSelectorsAsCjs}\\n};\\n`;\n\n\tawait writeFile(to, cjs);\n}\n\n/* Write Exports to Module JS file\n/* ========================================================================== */\n\nfunction getObjectWithKeyAsMjs(key, object) {\n\tconst mjsContents = Object.keys(object).reduce((mjsLines, name) => {\n\t\tmjsLines.push(`\\t'${escapeForJS(name)}': '${escapeForJS(object[name])}'`);\n\n\t\treturn mjsLines;\n\t}, []).join(',\\n');\n\tconst mjs = `export const ${key} = {\\n${mjsContents}\\n};\\n`;\n\n\treturn mjs;\n}\n\nasync function writeExportsToMjsFile(to, customMedia, customProperties, customSelectors) {\n\tconst customMediaAsMjs = getObjectWithKeyAsMjs('customMedia', customMedia);\n\tconst customPropertiesAsMjs = getObjectWithKeyAsMjs('customProperties', customProperties);\n\tconst customSelectorsAsMjs = getObjectWithKeyAsMjs('customSelectors', customSelectors);\n\tconst mjs = `${customMediaAsMjs}\\n${customPropertiesAsMjs}\\n${customSelectorsAsMjs}`;\n\n\tawait writeFile(to, mjs);\n}\n\n/* Write Exports to Exports\n/* ========================================================================== */\n\nexport default function writeToExports(customExports, destinations) {\n\treturn Promise.all([].concat(destinations).map(async destination => {\n\t\tif (destination instanceof Function) {\n\t\t\tawait destination({\n\t\t\t\tcustomMedia: getObjectWithStringifiedKeys(customExports.customMedia),\n\t\t\t\tcustomProperties: getObjectWithStringifiedKeys(customExports.customProperties),\n\t\t\t\tcustomSelectors: getObjectWithStringifiedKeys(customExports.customSelectors),\n\t\t\t});\n\t\t} else {\n\t\t\t// read the destination as an object\n\t\t\tconst opts = destination === Object(destination) ? destination : { to: String(destination) };\n\n\t\t\t// transformer for Exports into a JSON-compatible object\n\t\t\tconst toJSON = opts.toJSON || getObjectWithStringifiedKeys;\n\n\t\t\tif ('customMedia' in opts || 'customProperties' in opts || 'customSelectors' in opts) {\n\t\t\t\t// write directly to an object as customProperties\n\t\t\t\topts.customMedia = toJSON(customExports.customMedia);\n\t\t\t\topts.customProperties = toJSON(customExports.customProperties);\n\t\t\t\topts.customSelectors = toJSON(customExports.customSelectors);\n\t\t\t} else if ('custom-media' in opts || 'custom-properties' in opts || 'custom-selectors' in opts) {\n\t\t\t\t// write directly to an object as custom-properties\n\t\t\t\topts['custom-media'] = toJSON(customExports.customMedia);\n\t\t\t\topts['custom-properties'] = toJSON(customExports.customProperties);\n\t\t\t\topts['custom-selectors'] = toJSON(customExports.customSelectors);\n\t\t\t} else {\n\t\t\t\t// destination pathname\n\t\t\t\tconst to = String(opts.to || '');\n\n\t\t\t\t// type of file being written to\n\t\t\t\tconst type = (opts.type || path.extname(opts.to).slice(1)).toLowerCase();\n\n\t\t\t\t// transformed Exports\n\t\t\t\tconst customMediaJSON = toJSON(customExports.customMedia);\n\t\t\t\tconst customPropertiesJSON = toJSON(customExports.customProperties);\n\t\t\t\tconst customSelectorsJSON = toJSON(customExports.customSelectors);\n\n\t\t\t\tif (type === 'css') {\n\t\t\t\t\tawait writeExportsToCssFile(to, customMediaJSON, customPropertiesJSON, customSelectorsJSON);\n\t\t\t\t}\n\n\t\t\t\tif (type === 'js') {\n\t\t\t\t\tawait writeExportsToCjsFile(to, customMediaJSON, customPropertiesJSON, customSelectorsJSON);\n\t\t\t\t}\n\n\t\t\t\tif (type === 'json') {\n\t\t\t\t\tawait writeExportsToJsonFile(to, customMediaJSON, customPropertiesJSON, customSelectorsJSON);\n\t\t\t\t}\n\n\t\t\t\tif (type === 'mjs') {\n\t\t\t\t\tawait writeExportsToMjsFile(to, customMediaJSON, customPropertiesJSON, customSelectorsJSON);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}));\n}\n\n/* Helper utilities\n/* ========================================================================== */\n\nfunction getObjectWithStringifiedKeys(object) {\n\treturn Object.keys(object).reduce((objectJSON, key) => {\n\t\tobjectJSON[key] = String(object[key]);\n\n\t\treturn objectJSON;\n\t}, {});\n}\n\nfunction writeFile(to, text) {\n\treturn new Promise((resolve, reject) => {\n\t\tfs.writeFile(to, text, error => {\n\t\t\tif (error) {\n\t\t\t\treject(error);\n\t\t\t} else {\n\t\t\t\tresolve();\n\t\t\t}\n\t\t});\n\t});\n}\n\nfunction escapeForJS(string) {\n\treturn string.replace(/\\\\([\\s\\S])|(')/g, '\\\\$1$2').replace(/\\n/g, '\\\\n').replace(/\\r/g, '\\\\r');\n}\n","import autoprefixer from 'autoprefixer';\nimport browserslist from 'browserslist';\nimport cssdb from 'cssdb';\nimport plugins from './lib/plugins-by-id';\nimport getTransformedInsertions from './lib/get-transformed-insertions';\nimport getUnsupportedBrowsersByFeature from './lib/get-unsupported-browsers-by-feature';\nimport idsByExecutionOrder from './lib/ids-by-execution-order';\nimport writeToExports from './lib/write-to-exports';\n\nconst plugin = opts => {\n\t// initialize options\n\tconst features = Object(Object(opts).features);\n\tconst insertBefore = Object(Object(opts).insertBefore);\n\tconst insertAfter = Object(Object(opts).insertAfter);\n\tconst browsers = Object(opts).browsers;\n\tconst stage = 'stage' in Object(opts)\n\t\t? opts.stage === false\n\t\t\t? 5\n\t\t\t: parseInt(opts.stage) || 0\n\t\t: 2;\n\tconst autoprefixerOptions = Object(opts).autoprefixer;\n\tconst sharedOpts = initializeSharedOpts(Object(opts));\n\tconst stagedAutoprefixer = autoprefixerOptions === false\n\t\t? () => {}\n\t\t: autoprefixer(Object.assign({ overrideBrowserslist: browsers }, autoprefixerOptions));\n\n\t// polyfillable features (those with an available postcss plugin)\n\tconst polyfillableFeatures = cssdb.concat(\n\t\t// additional features to be inserted before cssdb features\n\t\tgetTransformedInsertions(insertBefore, 'insertBefore'),\n\t\t// additional features to be inserted after cssdb features\n\t\tgetTransformedInsertions(insertAfter, 'insertAfter'),\n\t).filter(\n\t\t// inserted features or features with an available postcss plugin\n\t\tfeature => feature.insertBefore || feature.id in plugins,\n\t).sort(\n\t\t// features sorted by execution order and then insertion order\n\t\t(a, b) => idsByExecutionOrder.indexOf(a.id) - idsByExecutionOrder.indexOf(b.id) || (a.insertBefore ? -1 : b.insertBefore ? 1 : 0) || (a.insertAfter ? 1 : b.insertAfter ? -1 : 0),\n\t).map(\n\t\t// polyfillable features as an object\n\t\tfeature => {\n\t\t\t// target browsers for the polyfill\n\t\t\tconst unsupportedBrowsers = getUnsupportedBrowsersByFeature(feature.caniuse);\n\n\t\t\treturn feature.insertBefore || feature.insertAfter ? {\n\t\t\t\tbrowsers: unsupportedBrowsers,\n\t\t\t\tplugin: feature.plugin,\n\t\t\t\tid: `${feature.insertBefore ? 'before' : 'after'}-${feature.id}`,\n\t\t\t\tstage: 6,\n\t\t\t} : {\n\t\t\t\tbrowsers: unsupportedBrowsers,\n\t\t\t\tplugin: plugins[feature.id],\n\t\t\t\tid: feature.id,\n\t\t\t\tstage: feature.stage,\n\t\t\t};\n\t\t},\n\t);\n\n\t// staged features (those at or above the selected stage)\n\tconst stagedFeatures = polyfillableFeatures.filter(\n\t\tfeature => feature.id in features\n\t\t\t? features[feature.id]\n\t\t\t: feature.stage >= stage,\n\t).map(\n\t\tfeature => {\n\t\t\tlet options;\n\t\t\tlet plugin;\n\n\t\t\tif (features[feature.id] === true) {\n\t\t\t\t// if the plugin is enabled\n\t\t\t\toptions = sharedOpts ? Object.assign({}, sharedOpts) : undefined;\n\t\t\t} else {\n\t\t\t\toptions = sharedOpts\n\t\t\t\t\t// if the plugin has shared options and individual options\n\t\t\t\t\t? Object.assign({}, sharedOpts, features[feature.id])\n\t\t\t\t\t// if the plugin has individual options\n\t\t\t\t\t: Object.assign({}, features[feature.id]);\n\t\t\t}\n\n\t\t\tif (feature.plugin.postcss) {\n\t\t\t\tplugin = feature.plugin(options);\n\t\t\t} else {\n\t\t\t\tplugin = feature.plugin;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tbrowsers: feature.browsers,\n\t\t\t\tplugin,\n\t\t\t\tid: feature.id,\n\t\t\t};\n\t\t},\n\t);\n\n\t// browsers supported by the configuration\n\tconst supportedBrowsers = browserslist(browsers, { ignoreUnknownVersions: true });\n\n\t// features supported by the stage and browsers\n\tconst supportedFeatures = stagedFeatures.filter(\n\t\tfeature => feature.id in features\n\t\t\t? features[feature.id]\n\t\t\t: supportedBrowsers.some(\n\t\t\t\tsupportedBrowser => browserslist(feature.browsers, {\n\t\t\t\t\tignoreUnknownVersions: true,\n\t\t\t\t}).some(\n\t\t\t\t\tpolyfillBrowser => polyfillBrowser === supportedBrowser,\n\t\t\t\t),\n\t\t\t),\n\t);\n\n\tconst usedPlugins = supportedFeatures.map(feature => feature.plugin);\n\tusedPlugins.push(stagedAutoprefixer);\n\n\treturn {\n\t\tpostcssPlugin: 'postcss-preset-env',\n\t\tplugins: usedPlugins,\n\t\tOnceExit: function() {\n\t\t\tif ( Object( opts ).exportTo ) {\n\t\t\t\twriteToExports( sharedOpts.exportTo, opts.exportTo );\n\t\t\t}\n\t\t},\n\t};\n};\n\nconst initializeSharedOpts = opts => {\n\tif ('importFrom' in opts || 'exportTo' in opts || 'preserve' in opts) {\n\t\tconst sharedOpts = {};\n\n\t\tif ('importFrom' in opts) {\n\t\t\tsharedOpts.importFrom = opts.importFrom;\n\t\t}\n\n\t\tif ('exportTo' in opts) {\n\t\t\tsharedOpts.exportTo = {\n\t\t\t\tcustomMedia: {},\n\t\t\t\tcustomProperties: {},\n\t\t\t\tcustomSelectors: {},\n\t\t\t};\n\t\t}\n\n\t\tif ('preserve' in opts) {\n\t\t\tsharedOpts.preserve = opts.preserve;\n\t\t}\n\n\t\treturn sharedOpts;\n\t}\n\n\treturn false;\n};\n\nplugin.postcss = true;\n\nexport default plugin;\n","import * as caniuse from 'caniuse-lite';\n\n// return a list of browsers that do not support the feature\nexport default function getUnsupportedBrowsersByFeature(feature) {\n\tconst caniuseFeature = caniuse.features[feature];\n\n\t// if feature support can be determined\n\tif (caniuseFeature) {\n\t\tconst stats = caniuse.feature(caniuseFeature).stats;\n\n\t\t// return an array of browsers and versions that do not support the feature\n\t\tconst results = Object.keys(stats).reduce(\n\t\t\t(browsers, browser) => browsers.concat(\n\t\t\t\tObject.keys(stats[browser]).filter(\n\t\t\t\t\tversion => stats[browser][version].indexOf('y') !== 0,\n\t\t\t\t).map(\n\t\t\t\t\tversion => `${browser} ${version}`,\n\t\t\t\t),\n\t\t\t),\n\t\t\t[],\n\t\t);\n\n\t\treturn results;\n\t} else {\n\t\t// otherwise, return that the feature does not work in any browser\n\t\treturn [ '> 0%' ];\n\t}\n}\n"],"names":["postcssSystemUiFont","postcssPlugin","Declaration","node","propertyRegExp","test","prop","value","includes","systemUiFamily","join","replace","systemUiMatch","systemUiReplace","postcss","whitespace","RegExp","postcssInitial","postcssPseudoClassAnyLink","postcssBlankPseudo","postcssPageBreak","postcssAttributeCaseInsensitive","postcssColorFunctionalNotation","postcssCustomMedia","postcssCustomProperties","postcssCustomSelectors","postcssDirPseudoClass","postcssDoublePositionGradients","postcssEnvFunction","postcssFocusVisible","postcssFocusWithin","postcssFontVariant","postcssGapProperties","postcssHasPseudo","postcssColorHexAlpha","postcssImageSetPolyfill","postcssLabFunction","postcssLogical","postcssMediaMinmax","postcssNesting","postcssSelectorNot","postcssOverflowShorthand","postcssReplaceOverflowWrap","postcssPlace","postcssPrefersColorScheme","postcssColorRebeccapurple","postcssFontFamilySystemUi","getTransformedInsertions","insertions","placement","Object","keys","map","id","concat","plugin","reduce","array","feature","async","writeExportsToCssFile","to","customMedia","customProperties","customSelectors","customPropertiesAsCss","cssLines","name","push","getCustomPropertiesAsCss","customMediaAsCss","getCustomMediaAsCss","customSelectorsAsCss","getCustomSelectorsAsCss","css","writeFile","getObjectWithKeyAsCjs","key","object","jsLines","escapeForJS","getObjectWithKeyAsMjs","mjsLines","writeToExports","customExports","destinations","Promise","all","destination","Function","getObjectWithStringifiedKeys","opts","String","toJSON","type","path","extname","slice","toLowerCase","customMediaJSON","customPropertiesJSON","customSelectorsJSON","cjs","writeExportsToCjsFile","json","JSON","stringify","writeExportsToJsonFile","mjs","writeExportsToMjsFile","objectJSON","text","resolve","reject","fs","error","string","features","insertBefore","insertAfter","browsers","stage","parseInt","autoprefixerOptions","autoprefixer","sharedOpts","initializeSharedOpts","stagedAutoprefixer","assign","overrideBrowserslist","polyfillableFeatures","cssdb","filter","plugins","sort","a","b","idsByExecutionOrder","indexOf","unsupportedBrowsers","caniuseFeature","caniuse","stats","browser","version","getUnsupportedBrowsersByFeature","stagedFeatures","options","undefined","supportedBrowsers","browserslist","ignoreUnknownVersions","usedPlugins","some","supportedBrowser","polyfillBrowser","OnceExit","exportTo","importFrom","preserve"],"mappings":"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"}
|
package/dist/index.mjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../src/patch/postcss-system-ui-font-family.js","../src/lib/plugins-by-id.js","../src/lib/get-transformed-insertions.js","../src/lib/ids-by-execution-order.js","../src/lib/write-to-exports.js","../src/index.js","../src/lib/get-unsupported-browsers-by-feature.js"],"sourcesContent":["export default function postcssSystemUiFont() {\n\treturn {\n\t\tpostcssPlugin: 'postcss-system-ui-font',\n\t\tDeclaration(/** @type {import('postcss').Declaration} */ node) {\n\t\t\tif (propertyRegExp.test(node.prop)) {\n\t\t\t\tif (!node.value.includes(systemUiFamily.join(', '))) {\n\t\t\t\t\tnode.value = node.value.replace(systemUiMatch, systemUiReplace);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t};\n}\n\npostcssSystemUiFont.postcss = true;\n\nconst propertyRegExp = /(?:^(?:-|\\\\002d){2})|(?:^font(?:-family)?$)/i;\nconst whitespace = '[\\\\f\\\\n\\\\r\\\\x09\\\\x20]';\nconst systemUiFamily = [\n\t'system-ui',\n\t/* macOS 10.11-10.12 */ '-apple-system',\n\t/* Windows 6+ */ 'Segoe UI',\n\t/* Android 4+ */ 'Roboto',\n\t/* Ubuntu 10.10+ */ 'Ubuntu',\n\t/* Gnome 3+ */ 'Cantarell',\n\t/* KDE Plasma 5+ */ 'Noto Sans',\n\t/* fallback */ 'sans-serif',\n];\nconst systemUiMatch = new RegExp(`(^|,|${whitespace}+)(?:system-ui${whitespace}*)(?:,${whitespace}*(?:${systemUiFamily.join('|')})${whitespace}*)?(,|$)`, 'i');\nconst systemUiReplace = `$1${systemUiFamily.join(', ')}$2`;\n","import postcssAttributeCaseInsensitive from 'postcss-attribute-case-insensitive';\nimport postcssBlankPseudo from 'css-blank-pseudo';\nimport postcssColorFunctionalNotation from 'postcss-color-functional-notation';\nimport postcssColorHexAlpha from 'postcss-color-hex-alpha';\nimport postcssColorRebeccapurple from 'postcss-color-rebeccapurple';\nimport postcssCustomMedia from 'postcss-custom-media';\nimport postcssCustomProperties from 'postcss-custom-properties';\nimport postcssCustomSelectors from 'postcss-custom-selectors';\nimport postcssDirPseudoClass from 'postcss-dir-pseudo-class';\nimport postcssDoublePositionGradients from 'postcss-double-position-gradients';\nimport postcssEnvFunction from 'postcss-env-function';\nimport postcssFocusVisible from 'postcss-focus-visible';\nimport postcssFocusWithin from 'postcss-focus-within';\nimport postcssFontVariant from 'postcss-font-variant';\nimport postcssFontFamilySystemUi from '../patch/postcss-system-ui-font-family';\nimport postcssGapProperties from 'postcss-gap-properties';\nimport postcssHasPseudo from 'css-has-pseudo';\nimport postcssImageSetPolyfill from 'postcss-image-set-function';\nimport postcssInitial from 'postcss-initial';\nimport postcssLabFunction from 'postcss-lab-function';\nimport postcssLogical from 'postcss-logical';\nimport postcssMediaMinmax from 'postcss-media-minmax';\nimport postcssNesting from 'postcss-nesting';\nimport postcssOverflowShorthand from 'postcss-overflow-shorthand';\nimport postcssPageBreak from 'postcss-page-break';\nimport postcssPlace from 'postcss-place';\nimport postcssPrefersColorScheme from 'css-prefers-color-scheme';\nimport postcssPseudoClassAnyLink from 'postcss-pseudo-class-any-link';\nimport postcssReplaceOverflowWrap from 'postcss-replace-overflow-wrap';\nimport postcssSelectorNot from 'postcss-selector-not';\n\n// postcss plugins ordered by id\nexport default {\n\t'all-property': postcssInitial,\n\t'any-link-pseudo-class': postcssPseudoClassAnyLink,\n\t'blank-pseudo-class': postcssBlankPseudo,\n\t'break-properties': postcssPageBreak,\n\t'case-insensitive-attributes': postcssAttributeCaseInsensitive,\n\t'color-functional-notation': postcssColorFunctionalNotation,\n\t'custom-media-queries': postcssCustomMedia,\n\t'custom-properties': postcssCustomProperties,\n\t'custom-selectors': postcssCustomSelectors,\n\t'dir-pseudo-class': postcssDirPseudoClass,\n\t'double-position-gradients': postcssDoublePositionGradients,\n\t'environment-variables': postcssEnvFunction,\n\t'focus-visible-pseudo-class': postcssFocusVisible,\n\t'focus-within-pseudo-class': postcssFocusWithin,\n\t'font-variant-property': postcssFontVariant,\n\t'gap-properties': postcssGapProperties,\n\t'has-pseudo-class': postcssHasPseudo,\n\t'hexadecimal-alpha-notation': postcssColorHexAlpha,\n\t'image-set-function': postcssImageSetPolyfill,\n\t'lab-function': postcssLabFunction,\n\t'logical-properties-and-values': postcssLogical,\n\t'media-query-ranges': postcssMediaMinmax,\n\t'nesting-rules': postcssNesting,\n\t'not-pseudo-class': postcssSelectorNot,\n\t'overflow-property': postcssOverflowShorthand,\n\t'overflow-wrap-property': postcssReplaceOverflowWrap,\n\t'place-properties': postcssPlace,\n\t'prefers-color-scheme-query': postcssPrefersColorScheme,\n\t'rebeccapurple-color': postcssColorRebeccapurple,\n\t'system-ui-font-family': postcssFontFamilySystemUi,\n};\n","// return a list of features to be inserted before or after cssdb features\nexport default function getTransformedInsertions(insertions, placement) {\n\treturn Object.keys(insertions).map(\n\t\tid => [].concat(insertions[id]).map(\n\t\t\tplugin => ({\n\t\t\t\t[placement]: true,\n\t\t\t\tplugin,\n\t\t\t\tid,\n\t\t\t}),\n\t\t),\n\t).reduce(\n\t\t(array, feature) => array.concat(feature), [],\n\t);\n}\n","// ids ordered by required execution, then alphabetically\nexport default [\n\t'custom-media-queries',\n\t'custom-properties',\n\t'environment-variables', // run environment-variables here to access transpiled custom media params and properties\n\t'image-set-function', // run images-set-function before nesting-rules so that it may fix nested media\n\t'media-query-ranges', // run media-query-range and\n\t'prefers-color-scheme-query', // run prefers-color-scheme-query here to prevent duplicate transpilation after nesting-rules\n\t'nesting-rules',\n\t'custom-selectors', // run custom-selectors after nesting-rules to correctly transpile &:--custom-selector\n\t'any-link-pseudo-class',\n\t'case-insensitive-attributes',\n\t'focus-visible-pseudo-class',\n\t'focus-within-pseudo-class',\n\t'matches-pseudo-class', // run matches-pseudo-class and\n\t'not-pseudo-class', // run not-pseudo-class after other selectors have been transpiled\n\t'logical-properties-and-values', // run logical-properties-and-values before dir-pseudo-class\n\t'dir-pseudo-class',\n\t'all-property', // run all-property before other property polyfills\n\t'color-functional-notation',\n\t'double-position-gradients',\n\t'hexadecimal-alpha-notation',\n\t'lab-function',\n\t'rebeccapurple-color',\n\t'color-mod-function', // run color-mod after other color modifications have finished\n\t'blank-pseudo-class',\n\t'break-properties',\n\t'font-variant-property',\n\t'has-pseudo-class',\n\t'gap-properties',\n\t'overflow-property',\n\t'overflow-wrap-property',\n\t'place-properties',\n\t'system-ui-font-family',\n];\n","/* eslint max-params: [\"error\", 4] */\n\nimport fs from 'fs';\nimport path from 'path';\n\n/* Write Exports to CSS File\n/* ========================================================================== */\n\nfunction getCustomMediaAsCss(customMedia) {\n\tconst cssContent = Object.keys(customMedia).reduce((cssLines, name) => {\n\t\tcssLines.push(`@custom-media ${name} ${customMedia[name]};`);\n\n\t\treturn cssLines;\n\t}, []).join('\\n');\n\tconst css = `${cssContent}\\n`;\n\n\treturn css;\n}\n\nfunction getCustomPropertiesAsCss(customProperties) {\n\tconst cssContent = Object.keys(customProperties).reduce((cssLines, name) => {\n\t\tcssLines.push(`\\t${name}: ${customProperties[name]};`);\n\n\t\treturn cssLines;\n\t}, []).join('\\n');\n\tconst css = `:root {\\n${cssContent}\\n}\\n`;\n\n\treturn css;\n}\n\nfunction getCustomSelectorsAsCss(customSelectors) {\n\tconst cssContent = Object.keys(customSelectors).reduce((cssLines, name) => {\n\t\tcssLines.push(`@custom-selector ${name} ${customSelectors[name]};`);\n\n\t\treturn cssLines;\n\t}, []).join('\\n');\n\tconst css = `${cssContent}\\n`;\n\n\treturn css;\n}\n\nasync function writeExportsToCssFile(to, customMedia, customProperties, customSelectors) {\n\tconst customPropertiesAsCss = getCustomPropertiesAsCss(customProperties);\n\tconst customMediaAsCss = getCustomMediaAsCss(customMedia);\n\tconst customSelectorsAsCss = getCustomSelectorsAsCss(customSelectors);\n\tconst css = `${customMediaAsCss}\\n${customSelectorsAsCss}\\n${customPropertiesAsCss}`;\n\n\tawait writeFile(to, css);\n}\n\n/* Write Exports to JSON file\n/* ========================================================================== */\n\nasync function writeExportsToJsonFile(to, customMedia, customProperties, customSelectors) {\n\tconst jsonContent = JSON.stringify({\n\t\t'custom-media': customMedia,\n\t\t'custom-properties': customProperties,\n\t\t'custom-selectors': customSelectors,\n\t}, null, ' ');\n\tconst json = `${jsonContent}\\n`;\n\n\tawait writeFile(to, json);\n}\n\n/* Write Exports to Common JS file\n/* ========================================================================== */\n\nfunction getObjectWithKeyAsCjs(key, object) {\n\tconst jsContents = Object.keys(object).reduce((jsLines, name) => {\n\t\tjsLines.push(`\\t\\t'${escapeForJS(name)}': '${escapeForJS(object[name])}'`);\n\n\t\treturn jsLines;\n\t}, []).join(',\\n');\n\tconst cjs = `\\n\\t${key}: {\\n${jsContents}\\n\\t}`;\n\n\treturn cjs;\n}\n\nasync function writeExportsToCjsFile(to, customMedia, customProperties, customSelectors) {\n\tconst customMediaAsCjs = getObjectWithKeyAsCjs('customMedia', customMedia);\n\tconst customPropertiesAsCjs = getObjectWithKeyAsCjs('customProperties', customProperties);\n\tconst customSelectorsAsCjs = getObjectWithKeyAsCjs('customSelectors', customSelectors);\n\tconst cjs = `module.exports = {${customMediaAsCjs},${customPropertiesAsCjs},${customSelectorsAsCjs}\\n};\\n`;\n\n\tawait writeFile(to, cjs);\n}\n\n/* Write Exports to Module JS file\n/* ========================================================================== */\n\nfunction getObjectWithKeyAsMjs(key, object) {\n\tconst mjsContents = Object.keys(object).reduce((mjsLines, name) => {\n\t\tmjsLines.push(`\\t'${escapeForJS(name)}': '${escapeForJS(object[name])}'`);\n\n\t\treturn mjsLines;\n\t}, []).join(',\\n');\n\tconst mjs = `export const ${key} = {\\n${mjsContents}\\n};\\n`;\n\n\treturn mjs;\n}\n\nasync function writeExportsToMjsFile(to, customMedia, customProperties, customSelectors) {\n\tconst customMediaAsMjs = getObjectWithKeyAsMjs('customMedia', customMedia);\n\tconst customPropertiesAsMjs = getObjectWithKeyAsMjs('customProperties', customProperties);\n\tconst customSelectorsAsMjs = getObjectWithKeyAsMjs('customSelectors', customSelectors);\n\tconst mjs = `${customMediaAsMjs}\\n${customPropertiesAsMjs}\\n${customSelectorsAsMjs}`;\n\n\tawait writeFile(to, mjs);\n}\n\n/* Write Exports to Exports\n/* ========================================================================== */\n\nexport default function writeToExports(customExports, destinations) {\n\treturn Promise.all([].concat(destinations).map(async destination => {\n\t\tif (destination instanceof Function) {\n\t\t\tawait destination({\n\t\t\t\tcustomMedia: getObjectWithStringifiedKeys(customExports.customMedia),\n\t\t\t\tcustomProperties: getObjectWithStringifiedKeys(customExports.customProperties),\n\t\t\t\tcustomSelectors: getObjectWithStringifiedKeys(customExports.customSelectors),\n\t\t\t});\n\t\t} else {\n\t\t\t// read the destination as an object\n\t\t\tconst opts = destination === Object(destination) ? destination : { to: String(destination) };\n\n\t\t\t// transformer for Exports into a JSON-compatible object\n\t\t\tconst toJSON = opts.toJSON || getObjectWithStringifiedKeys;\n\n\t\t\tif ('customMedia' in opts || 'customProperties' in opts || 'customSelectors' in opts) {\n\t\t\t\t// write directly to an object as customProperties\n\t\t\t\topts.customMedia = toJSON(customExports.customMedia);\n\t\t\t\topts.customProperties = toJSON(customExports.customProperties);\n\t\t\t\topts.customSelectors = toJSON(customExports.customSelectors);\n\t\t\t} else if ('custom-media' in opts || 'custom-properties' in opts || 'custom-selectors' in opts) {\n\t\t\t\t// write directly to an object as custom-properties\n\t\t\t\topts['custom-media'] = toJSON(customExports.customMedia);\n\t\t\t\topts['custom-properties'] = toJSON(customExports.customProperties);\n\t\t\t\topts['custom-selectors'] = toJSON(customExports.customSelectors);\n\t\t\t} else {\n\t\t\t\t// destination pathname\n\t\t\t\tconst to = String(opts.to || '');\n\n\t\t\t\t// type of file being written to\n\t\t\t\tconst type = (opts.type || path.extname(opts.to).slice(1)).toLowerCase();\n\n\t\t\t\t// transformed Exports\n\t\t\t\tconst customMediaJSON = toJSON(customExports.customMedia);\n\t\t\t\tconst customPropertiesJSON = toJSON(customExports.customProperties);\n\t\t\t\tconst customSelectorsJSON = toJSON(customExports.customSelectors);\n\n\t\t\t\tif (type === 'css') {\n\t\t\t\t\tawait writeExportsToCssFile(to, customMediaJSON, customPropertiesJSON, customSelectorsJSON);\n\t\t\t\t}\n\n\t\t\t\tif (type === 'js') {\n\t\t\t\t\tawait writeExportsToCjsFile(to, customMediaJSON, customPropertiesJSON, customSelectorsJSON);\n\t\t\t\t}\n\n\t\t\t\tif (type === 'json') {\n\t\t\t\t\tawait writeExportsToJsonFile(to, customMediaJSON, customPropertiesJSON, customSelectorsJSON);\n\t\t\t\t}\n\n\t\t\t\tif (type === 'mjs') {\n\t\t\t\t\tawait writeExportsToMjsFile(to, customMediaJSON, customPropertiesJSON, customSelectorsJSON);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}));\n}\n\n/* Helper utilities\n/* ========================================================================== */\n\nfunction getObjectWithStringifiedKeys(object) {\n\treturn Object.keys(object).reduce((objectJSON, key) => {\n\t\tobjectJSON[key] = String(object[key]);\n\n\t\treturn objectJSON;\n\t}, {});\n}\n\nfunction writeFile(to, text) {\n\treturn new Promise((resolve, reject) => {\n\t\tfs.writeFile(to, text, error => {\n\t\t\tif (error) {\n\t\t\t\treject(error);\n\t\t\t} else {\n\t\t\t\tresolve();\n\t\t\t}\n\t\t});\n\t});\n}\n\nfunction escapeForJS(string) {\n\treturn string.replace(/\\\\([\\s\\S])|(')/g, '\\\\$1$2').replace(/\\n/g, '\\\\n').replace(/\\r/g, '\\\\r');\n}\n","import autoprefixer from 'autoprefixer';\nimport browserslist from 'browserslist';\nimport cssdb from 'cssdb';\nimport plugins from './lib/plugins-by-id';\nimport getTransformedInsertions from './lib/get-transformed-insertions';\nimport getUnsupportedBrowsersByFeature from './lib/get-unsupported-browsers-by-feature';\nimport idsByExecutionOrder from './lib/ids-by-execution-order';\nimport writeToExports from './lib/write-to-exports';\n\nconst plugin = opts => {\n\t// initialize options\n\tconst features = Object(Object(opts).features);\n\tconst insertBefore = Object(Object(opts).insertBefore);\n\tconst insertAfter = Object(Object(opts).insertAfter);\n\tconst browsers = Object(opts).browsers;\n\tconst stage = 'stage' in Object(opts)\n\t\t? opts.stage === false\n\t\t\t? 5\n\t\t\t: parseInt(opts.stage) || 0\n\t\t: 2;\n\tconst autoprefixerOptions = Object(opts).autoprefixer;\n\tconst sharedOpts = initializeSharedOpts(Object(opts));\n\tconst stagedAutoprefixer = autoprefixerOptions === false\n\t\t? () => {}\n\t\t: autoprefixer(Object.assign({ overrideBrowserslist: browsers }, autoprefixerOptions));\n\n\t// polyfillable features (those with an available postcss plugin)\n\tconst polyfillableFeatures = cssdb.concat(\n\t\t// additional features to be inserted before cssdb features\n\t\tgetTransformedInsertions(insertBefore, 'insertBefore'),\n\t\t// additional features to be inserted after cssdb features\n\t\tgetTransformedInsertions(insertAfter, 'insertAfter'),\n\t).filter(\n\t\t// inserted features or features with an available postcss plugin\n\t\tfeature => feature.insertBefore || feature.id in plugins,\n\t).sort(\n\t\t// features sorted by execution order and then insertion order\n\t\t(a, b) => idsByExecutionOrder.indexOf(a.id) - idsByExecutionOrder.indexOf(b.id) || (a.insertBefore ? -1 : b.insertBefore ? 1 : 0) || (a.insertAfter ? 1 : b.insertAfter ? -1 : 0),\n\t).map(\n\t\t// polyfillable features as an object\n\t\tfeature => {\n\t\t\t// target browsers for the polyfill\n\t\t\tconst unsupportedBrowsers = getUnsupportedBrowsersByFeature(feature.caniuse);\n\n\t\t\treturn feature.insertBefore || feature.insertAfter ? {\n\t\t\t\tbrowsers: unsupportedBrowsers,\n\t\t\t\tplugin: feature.plugin,\n\t\t\t\tid: `${feature.insertBefore ? 'before' : 'after'}-${feature.id}`,\n\t\t\t\tstage: 6,\n\t\t\t} : {\n\t\t\t\tbrowsers: unsupportedBrowsers,\n\t\t\t\tplugin: plugins[feature.id],\n\t\t\t\tid: feature.id,\n\t\t\t\tstage: feature.stage,\n\t\t\t};\n\t\t},\n\t);\n\n\t// staged features (those at or above the selected stage)\n\tconst stagedFeatures = polyfillableFeatures.filter(\n\t\tfeature => feature.id in features\n\t\t\t? features[feature.id]\n\t\t\t: feature.stage >= stage,\n\t).map(\n\t\tfeature => {\n\t\t\tlet options;\n\t\t\tlet plugin;\n\n\t\t\tif (features[feature.id] === true) {\n\t\t\t\t// if the plugin is enabled\n\t\t\t\toptions = sharedOpts ? Object.assign({}, sharedOpts) : undefined;\n\t\t\t} else {\n\t\t\t\toptions = sharedOpts\n\t\t\t\t\t// if the plugin has shared options and individual options\n\t\t\t\t\t? Object.assign({}, sharedOpts, features[feature.id])\n\t\t\t\t\t// if the plugin has individual options\n\t\t\t\t\t: Object.assign({}, features[feature.id]);\n\t\t\t}\n\n\t\t\tif (feature.plugin.postcss) {\n\t\t\t\tplugin = feature.plugin(options);\n\t\t\t} else {\n\t\t\t\tplugin = feature.plugin;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\tbrowsers: feature.browsers,\n\t\t\t\tplugin,\n\t\t\t\tid: feature.id,\n\t\t\t};\n\t\t},\n\t);\n\n\t// browsers supported by the configuration\n\tconst supportedBrowsers = browserslist(browsers, { ignoreUnknownVersions: true });\n\n\t// features supported by the stage and browsers\n\tconst supportedFeatures = stagedFeatures.filter(\n\t\tfeature => feature.id in features\n\t\t\t? features[feature.id]\n\t\t\t: supportedBrowsers.some(\n\t\t\t\tsupportedBrowser => browserslist(feature.browsers, {\n\t\t\t\t\tignoreUnknownVersions: true,\n\t\t\t\t}).some(\n\t\t\t\t\tpolyfillBrowser => polyfillBrowser === supportedBrowser,\n\t\t\t\t),\n\t\t\t),\n\t);\n\n\tconst usedPlugins = supportedFeatures.map(feature => feature.plugin);\n\tusedPlugins.push(stagedAutoprefixer);\n\n\treturn {\n\t\tpostcssPlugin: 'postcss-preset-env',\n\t\tplugins: usedPlugins,\n\t\tOnceExit: function() {\n\t\t\tif ( Object( opts ).exportTo ) {\n\t\t\t\twriteToExports( sharedOpts.exportTo, opts.exportTo );\n\t\t\t}\n\t\t},\n\t};\n};\n\nconst initializeSharedOpts = opts => {\n\tif ('importFrom' in opts || 'exportTo' in opts || 'preserve' in opts) {\n\t\tconst sharedOpts = {};\n\n\t\tif ('importFrom' in opts) {\n\t\t\tsharedOpts.importFrom = opts.importFrom;\n\t\t}\n\n\t\tif ('exportTo' in opts) {\n\t\t\tsharedOpts.exportTo = {\n\t\t\t\tcustomMedia: {},\n\t\t\t\tcustomProperties: {},\n\t\t\t\tcustomSelectors: {},\n\t\t\t};\n\t\t}\n\n\t\tif ('preserve' in opts) {\n\t\t\tsharedOpts.preserve = opts.preserve;\n\t\t}\n\n\t\treturn sharedOpts;\n\t}\n\n\treturn false;\n};\n\nplugin.postcss = true;\n\nexport default plugin;\n","import * as caniuse from 'caniuse-lite';\n\n// return a list of browsers that do not support the feature\nexport default function getUnsupportedBrowsersByFeature(feature) {\n\tconst caniuseFeature = caniuse.features[feature];\n\n\t// if feature support can be determined\n\tif (caniuseFeature) {\n\t\tconst stats = caniuse.feature(caniuseFeature).stats;\n\n\t\t// return an array of browsers and versions that do not support the feature\n\t\tconst results = Object.keys(stats).reduce(\n\t\t\t(browsers, browser) => browsers.concat(\n\t\t\t\tObject.keys(stats[browser]).filter(\n\t\t\t\t\tversion => stats[browser][version].indexOf('y') !== 0,\n\t\t\t\t).map(\n\t\t\t\t\tversion => `${browser} ${version}`,\n\t\t\t\t),\n\t\t\t),\n\t\t\t[],\n\t\t);\n\n\t\treturn results;\n\t} else {\n\t\t// otherwise, return that the feature does not work in any browser\n\t\treturn [ '> 0%' ];\n\t}\n}\n"],"names":["postcssSystemUiFont","postcssPlugin","Declaration","node","propertyRegExp","test","prop","value","includes","systemUiFamily","join","replace","systemUiMatch","systemUiReplace","postcss","whitespace","RegExp","postcssInitial","postcssPseudoClassAnyLink","postcssBlankPseudo","postcssPageBreak","postcssAttributeCaseInsensitive","postcssColorFunctionalNotation","postcssCustomMedia","postcssCustomProperties","postcssCustomSelectors","postcssDirPseudoClass","postcssDoublePositionGradients","postcssEnvFunction","postcssFocusVisible","postcssFocusWithin","postcssFontVariant","postcssGapProperties","postcssHasPseudo","postcssColorHexAlpha","postcssImageSetPolyfill","postcssLabFunction","postcssLogical","postcssMediaMinmax","postcssNesting","postcssSelectorNot","postcssOverflowShorthand","postcssReplaceOverflowWrap","postcssPlace","postcssPrefersColorScheme","postcssColorRebeccapurple","postcssFontFamilySystemUi","getTransformedInsertions","insertions","placement","Object","keys","map","id","concat","plugin","reduce","array","feature","async","writeExportsToCssFile","to","customMedia","customProperties","customSelectors","customPropertiesAsCss","cssLines","name","push","getCustomPropertiesAsCss","customMediaAsCss","getCustomMediaAsCss","customSelectorsAsCss","getCustomSelectorsAsCss","css","writeFile","getObjectWithKeyAsCjs","key","object","jsLines","escapeForJS","getObjectWithKeyAsMjs","mjsLines","writeToExports","customExports","destinations","Promise","all","destination","Function","getObjectWithStringifiedKeys","opts","String","toJSON","type","path","extname","slice","toLowerCase","customMediaJSON","customPropertiesJSON","customSelectorsJSON","cjs","writeExportsToCjsFile","json","JSON","stringify","writeExportsToJsonFile","mjs","writeExportsToMjsFile","objectJSON","text","resolve","reject","fs","error","string","features","insertBefore","insertAfter","browsers","stage","parseInt","autoprefixerOptions","autoprefixer","sharedOpts","initializeSharedOpts","stagedAutoprefixer","assign","overrideBrowserslist","polyfillableFeatures","cssdb","filter","plugins","sort","a","b","idsByExecutionOrder","indexOf","unsupportedBrowsers","caniuseFeature","caniuse","stats","browser","version","getUnsupportedBrowsersByFeature","stagedFeatures","options","undefined","supportedBrowsers","browserslist","ignoreUnknownVersions","usedPlugins","some","supportedBrowser","polyfillBrowser","OnceExit","exportTo","importFrom","preserve"],"mappings":"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"}
|