postcss-focus-within 3.0.0 → 5.0.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 CHANGED
@@ -1,5 +1,28 @@
1
1
  # Changes to PostCSS Focus Within
2
2
 
3
+ ### 5.0.2 (December 13, 2021)
4
+
5
+ - Changed: now uses `postcss-selector-parser` for parsing.
6
+ - Updated: documentation
7
+
8
+ ### 5.0.1 (September 22, 2021)
9
+
10
+ - Added missing `dist` to bundle.
11
+ - Added missing `exports` to `package.json`
12
+ - Added missing `types` to `package.json`
13
+ - Added bundling & testing as prepublish step.
14
+
15
+ ### 5.0.0 (September 17, 2021)
16
+
17
+ - Updated: Support for PostCS 8+ (major).
18
+ - Updated: Support for Node 12+ (major).
19
+
20
+ ### 4.0.0 (April 20, 2020)
21
+
22
+ - Fixed: Allow `:focus-within` to appear escaped in a selector
23
+ - Updated: Support for Node 10+
24
+ - Updated: Ownership moved to CSS Tools
25
+
3
26
  ### 3.0.0 (September 17, 2018)
4
27
 
5
28
  - Updated: Support for PostCSS v7+
package/INSTALL.md ADDED
@@ -0,0 +1,170 @@
1
+ # Installing PostCSS
2
+
3
+ [PostCSS] 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) |
6
+ | --- | --- | --- | --- | --- | --- |
7
+
8
+ ## Node
9
+
10
+ Add [PostCSS] to your project:
11
+
12
+ ```bash
13
+ npm install postcss-focus-within --save-dev
14
+ ```
15
+
16
+ Use [PostCSS] to process your CSS:
17
+
18
+ ```js
19
+ const postcssFocusWithin = require('postcss-focus-within');
20
+
21
+ postcssFocusWithin.process(YOUR_CSS /*, processOptions, pluginOptions */);
22
+ ```
23
+
24
+ Or use it as a [PostCSS] plugin:
25
+
26
+ ```js
27
+ const postcss = require('postcss');
28
+ const postcssFocusWithin = require('postcss-focus-within');
29
+
30
+ postcss([
31
+ postcssFocusWithin(/* pluginOptions */)
32
+ ]).process(YOUR_CSS /*, processOptions */);
33
+ ```
34
+
35
+ ## PostCSS CLI
36
+
37
+ Add [PostCSS CLI] to your project:
38
+
39
+ ```bash
40
+ npm install postcss-cli --save-dev
41
+ ```
42
+
43
+ Use [PostCSS] in your `postcss.config.js` configuration file:
44
+
45
+ ```js
46
+ const postcssFocusWithin = require('postcss-focus-within');
47
+
48
+ module.exports = {
49
+ plugins: [
50
+ postcssFocusWithin(/* pluginOptions */)
51
+ ]
52
+ }
53
+ ```
54
+
55
+ ## Webpack
56
+
57
+ Add [PostCSS Loader] to your project:
58
+
59
+ ```bash
60
+ npm install postcss-loader --save-dev
61
+ ```
62
+
63
+ Use [PostCSS] in your Webpack configuration:
64
+
65
+ ```js
66
+ const postcssFocusWithin = require('postcss-focus-within');
67
+
68
+ module.exports = {
69
+ module: {
70
+ rules: [
71
+ {
72
+ test: /\.css$/,
73
+ use: [
74
+ 'style-loader',
75
+ { loader: 'css-loader', options: { importLoaders: 1 } },
76
+ { loader: 'postcss-loader', options: {
77
+ ident: 'postcss',
78
+ plugins: () => [
79
+ postcssFocusWithin(/* pluginOptions */)
80
+ ]
81
+ } }
82
+ ]
83
+ }
84
+ ]
85
+ }
86
+ }
87
+ ```
88
+
89
+ ## Create React App
90
+
91
+ Add [React App Rewired] and [React App Rewire PostCSS] to your project:
92
+
93
+ ```bash
94
+ npm install react-app-rewired react-app-rewire-postcss --save-dev
95
+ ```
96
+
97
+ Use [React App Rewire PostCSS] and [PostCSS] in your
98
+ `config-overrides.js` file:
99
+
100
+ ```js
101
+ const reactAppRewirePostcss = require('react-app-rewire-postcss');
102
+ const postcssFocusWithin = require('postcss-focus-within');
103
+
104
+ module.exports = config => reactAppRewirePostcss(config, {
105
+ plugins: () => [
106
+ postcssFocusWithin(/* pluginOptions */)
107
+ ]
108
+ });
109
+ ```
110
+
111
+ ## Gulp
112
+
113
+ Add [Gulp PostCSS] to your project:
114
+
115
+ ```bash
116
+ npm install gulp-postcss --save-dev
117
+ ```
118
+
119
+ Use [PostCSS] in your Gulpfile:
120
+
121
+ ```js
122
+ const postcss = require('gulp-postcss');
123
+ const postcssFocusWithin = require('postcss-focus-within');
124
+
125
+ gulp.task('css', () => gulp.src('./src/*.css').pipe(
126
+ postcss([
127
+ postcssFocusWithin(/* pluginOptions */)
128
+ ])
129
+ ).pipe(
130
+ gulp.dest('.')
131
+ ));
132
+ ```
133
+
134
+ ## Grunt
135
+
136
+ Add [Grunt PostCSS] to your project:
137
+
138
+ ```bash
139
+ npm install grunt-postcss --save-dev
140
+ ```
141
+
142
+ Use [PostCSS] in your Gruntfile:
143
+
144
+ ```js
145
+ const postcssFocusWithin = require('postcss-focus-within');
146
+
147
+ grunt.loadNpmTasks('grunt-postcss');
148
+
149
+ grunt.initConfig({
150
+ postcss: {
151
+ options: {
152
+ use: [
153
+ postcssFocusWithin(/* pluginOptions */)
154
+ ]
155
+ },
156
+ dist: {
157
+ src: '*.css'
158
+ }
159
+ }
160
+ });
161
+ ```
162
+
163
+ [Gulp PostCSS]: https://github.com/postcss/gulp-postcss
164
+ [Grunt PostCSS]: https://github.com/nDmitry/grunt-postcss
165
+ [PostCSS]: https://github.com/postcss/postcss
166
+ [PostCSS CLI]: https://github.com/postcss/postcss-cli
167
+ [PostCSS Loader]: https://github.com/postcss/postcss-loader
168
+ [PostCSS]: https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-focus-within
169
+ [React App Rewire PostCSS]: https://github.com/csstools/react-app-rewire-postcss
170
+ [React App Rewired]: https://github.com/timarney/react-app-rewired
package/README.md CHANGED
@@ -1,15 +1,17 @@
1
1
  # PostCSS Focus Within [<img src="https://postcss.github.io/postcss/logo.svg" alt="PostCSS Logo" width="90" height="90" align="right">][postcss]
2
2
 
3
- [![NPM Version][npm-img]][npm-url]
4
- [![CSS Standard Status][css-img]][css-url]
5
- [![Build Status][cli-img]][cli-url]
6
- [![Gitter Chat][git-img]][git-url]
3
+ [<img alt="npm version" src="https://img.shields.io/npm/v/postcss-focus-within.svg" height="20">][npm-url]
4
+ [<img alt="CSS Standard Status" src="https://cssdb.org/badge/focus-within-pseudo-class.svg" height="20">][css-url]
5
+ [<img alt="Build Status" src="https://github.com/csstools/postcss-plugins/tree/main/postcss-focus-within/workflows/test/badge.svg" height="20">][cli-url]
6
+ [<img alt="support chat" src="https://img.shields.io/badge/support-chat-blue.svg" height="20">][git-url]
7
7
 
8
8
  [PostCSS Focus Within] lets you use the `:focus-within` pseudo-class in CSS,
9
9
  following the [Selectors Level 4 specification].
10
10
 
11
11
  It is the companion to the [focus-within polyfill].
12
12
 
13
+ [!['Can I use' table](https://caniuse.bitsofco.de/image/css-focus-within.png)](https://caniuse.com/#feat=css-focus-within)
14
+
13
15
  ```css
14
16
  .my-form-field:focus-within label {
15
17
  background-color: yellow;
@@ -37,7 +39,7 @@ rule can be disabled using the `preserve` option.
37
39
  Add [PostCSS Focus Within] to your project:
38
40
 
39
41
  ```bash
40
- npm install postcss-focus-within --save-dev
42
+ npm install postcss postcss-focus-within --save-dev
41
43
  ```
42
44
 
43
45
  Use [PostCSS Focus Within] to process your CSS:
@@ -113,19 +115,15 @@ focusWithin({ replaceWith: '.focus-within' });
113
115
  }
114
116
  ```
115
117
 
116
- [css-img]: https://cssdb.org/badge/focus-within-pseudo-class.svg
117
118
  [css-url]: https://cssdb.org/#focus-within-pseudo-class
118
- [cli-img]: https://img.shields.io/travis/jonathantneal/postcss-focus-within.svg
119
- [cli-url]: https://travis-ci.org/jonathantneal/postcss-focus-within
120
- [git-img]: https://img.shields.io/badge/support-chat-blue.svg
119
+ [cli-url]: https://github.com/csstools/postcss-plugins/tree/main/postcss-focus-within/actions/workflows/test.yml?query=workflow/test
121
120
  [git-url]: https://gitter.im/postcss/postcss
122
- [npm-img]: https://img.shields.io/npm/v/postcss-focus-within.svg
123
121
  [npm-url]: https://www.npmjs.com/package/postcss-focus-within
124
122
 
125
- [focus-within polyfill]: https://github.com/jonathantneal/focus-within
123
+ [focus-within polyfill]: https://github.com/jsxtools/focus-within
126
124
  [Gulp PostCSS]: https://github.com/postcss/gulp-postcss
127
125
  [Grunt PostCSS]: https://github.com/nDmitry/grunt-postcss
128
126
  [PostCSS]: https://github.com/postcss/postcss
129
- [PostCSS Focus Within]: https://github.com/jonathantneal/postcss-focus-within
127
+ [PostCSS Focus Within]: https://github.com/csstools/postcss-plugins/tree/main/postcss-focus-within
130
128
  [PostCSS Loader]: https://github.com/postcss/postcss-loader
131
129
  [Selectors Level 4 specification]: https://www.w3.org/TR/selectors-4/#the-focus-within-pseudo
package/dist/cli.d.ts ADDED
@@ -0,0 +1 @@
1
+ export {};
package/dist/cli.mjs ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+
3
+ import e from"postcss-selector-parser";import t from"tty";import r from"path";import n from"url";import s,{promises as i}from"fs";const o=t=>{const r=String(Object(t).replaceWith||"[focus-within]"),n=Boolean(!("preserve"in Object(t))||t.preserve),s=e().astSync(r);return{postcssPlugin:"postcss-focus-within",Rule:(t,{result:r})=>{if(!t.selector.includes(":focus-within"))return;let i;try{const r=e((e=>{e.walkPseudos((e=>{":focus-within"===e.value&&(e.nodes&&e.nodes.length||e.replaceWith(s.clone({})))}))})).processSync(t.selector);i=String(r)}catch(e){return void t.warn(r,`Failed to parse selector : ${t.selector}`)}if(void 0===i)return;if(i===t.selector)return;const o=t.clone({selector:i});n?t.before(o):t.replaceWith(o)}}};var a;o.postcss=!0,function(e){e.InvalidArguments="INVALID_ARGUMENTS"}(a||(a={}));var l={exports:{}};let u=t,c=!("NO_COLOR"in process.env||process.argv.includes("--no-color"))&&("FORCE_COLOR"in process.env||process.argv.includes("--color")||"win32"===process.platform||u.isatty(1)&&"dumb"!==process.env.TERM||"CI"in process.env),h=(e,t,r=e)=>n=>{let s=""+n,i=s.indexOf(t,e.length);return~i?e+p(s,t,r,i)+t:e+s+t},p=(e,t,r,n)=>{let s=e.substring(0,n)+r,i=e.substring(n+t.length),o=i.indexOf(t);return~o?s+p(i,t,r,o):s+i},f=(e=c)=>({isColorSupported:e,reset:e?e=>`${e}`:String,bold:e?h("","",""):String,dim:e?h("","",""):String,italic:e?h("",""):String,underline:e?h("",""):String,inverse:e?h("",""):String,hidden:e?h("",""):String,strikethrough:e?h("",""):String,black:e?h("",""):String,red:e?h("",""):String,green:e?h("",""):String,yellow:e?h("",""):String,blue:e?h("",""):String,magenta:e?h("",""):String,cyan:e?h("",""):String,white:e?h("",""):String,gray:e?h("",""):String,bgBlack:e?h("",""):String,bgRed:e?h("",""):String,bgGreen:e?h("",""):String,bgYellow:e?h("",""):String,bgBlue:e?h("",""):String,bgMagenta:e?h("",""):String,bgCyan:e?h("",""):String,bgWhite:e?h("",""):String});l.exports=f(),l.exports.createColors=f;const d="'".charCodeAt(0),g='"'.charCodeAt(0),m="\\".charCodeAt(0),w="/".charCodeAt(0),y="\n".charCodeAt(0),v=" ".charCodeAt(0),C="\f".charCodeAt(0),S="\t".charCodeAt(0),b="\r".charCodeAt(0),_="[".charCodeAt(0),x="]".charCodeAt(0),O="(".charCodeAt(0),A=")".charCodeAt(0),M="{".charCodeAt(0),k="}".charCodeAt(0),E=";".charCodeAt(0),L="*".charCodeAt(0),R=":".charCodeAt(0),P="@".charCodeAt(0),I=/[\t\n\f\r "#'()/;[\\\]{}]/g,j=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,N=/.[\n"'(/\\]/,U=/[\da-f]/i;var F=function(e,t={}){let r,n,s,i,o,a,l,u,c,h,p=e.css.valueOf(),f=t.ignoreErrors,F=p.length,D=0,B=[],T=[];function $(t){throw e.error("Unclosed "+t,D)}return{back:function(e){T.push(e)},nextToken:function(e){if(T.length)return T.pop();if(D>=F)return;let t=!!e&&e.ignoreUnclosed;switch(r=p.charCodeAt(D),r){case y:case v:case S:case b:case C:n=D;do{n+=1,r=p.charCodeAt(n)}while(r===v||r===y||r===S||r===b||r===C);h=["space",p.slice(D,n)],D=n-1;break;case _:case x:case M:case k:case R:case E:case A:{let e=String.fromCharCode(r);h=[e,e,D];break}case O:if(u=B.length?B.pop()[1]:"",c=p.charCodeAt(D+1),"url"===u&&c!==d&&c!==g&&c!==v&&c!==y&&c!==S&&c!==C&&c!==b){n=D;do{if(a=!1,n=p.indexOf(")",n+1),-1===n){if(f||t){n=D;break}$("bracket")}for(l=n;p.charCodeAt(l-1)===m;)l-=1,a=!a}while(a);h=["brackets",p.slice(D,n+1),D,n],D=n}else n=p.indexOf(")",D+1),i=p.slice(D,n+1),-1===n||N.test(i)?h=["(","(",D]:(h=["brackets",i,D,n],D=n);break;case d:case g:s=r===d?"'":'"',n=D;do{if(a=!1,n=p.indexOf(s,n+1),-1===n){if(f||t){n=D+1;break}$("string")}for(l=n;p.charCodeAt(l-1)===m;)l-=1,a=!a}while(a);h=["string",p.slice(D,n+1),D,n],D=n;break;case P:I.lastIndex=D+1,I.test(p),n=0===I.lastIndex?p.length-1:I.lastIndex-2,h=["at-word",p.slice(D,n+1),D,n],D=n;break;case m:for(n=D,o=!0;p.charCodeAt(n+1)===m;)n+=1,o=!o;if(r=p.charCodeAt(n+1),o&&r!==w&&r!==v&&r!==y&&r!==S&&r!==b&&r!==C&&(n+=1,U.test(p.charAt(n)))){for(;U.test(p.charAt(n+1));)n+=1;p.charCodeAt(n+1)===v&&(n+=1)}h=["word",p.slice(D,n+1),D,n],D=n;break;default:r===w&&p.charCodeAt(D+1)===L?(n=p.indexOf("*/",D+2)+1,0===n&&(f||t?n=p.length:$("comment")),h=["comment",p.slice(D,n+1),D,n],D=n):(j.lastIndex=D+1,j.test(p),n=0===j.lastIndex?p.length-1:j.lastIndex-2,h=["word",p.slice(D,n+1),D,n],B.push(h),D=n)}return D++,h},endOfFile:function(){return 0===T.length&&D>=F},position:function(){return D}}};let D,B=l.exports,T=F;const $={brackets:B.cyan,"at-word":B.cyan,comment:B.gray,string:B.green,class:B.yellow,hash:B.magenta,call:B.cyan,"(":B.cyan,")":B.cyan,"{":B.yellow,"}":B.yellow,"[":B.yellow,"]":B.yellow,":":B.yellow,";":B.yellow};function G([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 z(e){let t=T(new D(e),{ignoreErrors:!0}),r="";for(;!t.endOfFile();){let e=t.nextToken(),n=$[G(e,t)];r+=n?e[1].split(/\r?\n/).map((e=>n(e))).join("\n"):e[1]}return r}z.registerInput=function(e){D=e};var W=z;let V=l.exports,J=W;class q extends Error{constructor(e,t,r,n,s,i){super(e),this.name="CssSyntaxError",this.reason=e,s&&(this.file=s),n&&(this.source=n),i&&(this.plugin=i),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,q)}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=V.isColorSupported),J&&e&&(t=J(t));let r,n,s=t.split(/\r?\n/),i=Math.max(this.line-3,0),o=Math.min(this.line+2,s.length),a=String(o).length;if(e){let{bold:e,red:t,gray:s}=V.createColors(!0);r=r=>e(t(r)),n=e=>s(e)}else r=n=e=>e;return s.slice(i,o).map(((e,t)=>{let s=i+1+t,o=" "+(" "+s).slice(-a)+" | ";if(s===this.line){let t=n(o.replace(/\d/g," "))+e.slice(0,this.column-1).replace(/[^\t]/g," ");return r(">")+n(o)+e+"\n "+t+r("^")}return" "+n(o)+e})).join("\n")}toString(){let e=this.showSourceCode();return e&&(e="\n\n"+e+"\n"),this.name+": "+this.message+e}}var Y=q;q.default=q;var Q={};Q.isClean=Symbol("isClean"),Q.my=Symbol("my");const Z={colon:": ",indent:" ",beforeDecl:"\n",beforeRule:"\n",beforeOpen:" ",beforeClose:"\n",beforeComment:"\n",after:"\n",emptyBody:"",commentLeft:" ",commentRight:" ",semicolon:!1};class H{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],i=this.raw(s,"before");i&&this.builder(i),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 Z[r];let i=e.root();if(i.rawCache||(i.rawCache={}),void 0!==i.rawCache[r])return i.rawCache[r];if("before"===r||"after"===r)return this.beforeAfter(e,r);{let s="raw"+((o=r)[0].toUpperCase()+o.slice(1));this[s]?n=this[s](i,e):i.walk((e=>{if(n=e.raws[t],void 0!==n)return!1}))}var o;return void 0===n&&(n=Z[r]),i.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 K=H;H.default=H;let X=K;function ee(e,t){new X(t).stringify(e)}var te=ee;ee.default=ee;let{isClean:re,my:ne}=Q,se=Y,ie=K,oe=te;function ae(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],i=typeof s;"parent"===n&&"object"===i?t&&(r[n]=t):"source"===n?r[n]=s:Array.isArray(s)?r[n]=s.map((e=>ae(e,r))):("object"===i&&null!==s&&(s=ae(s)),r[n]=s)}return r}class le{constructor(e={}){this.raws={},this[re]=!1,this[ne]=!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 se(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=oe){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=ae(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 ie).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 i=t.get(n.input);null==i&&(i=s,t.set(n.input,s),s++),r[e]={inputId:i,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[re]){this[re]=!1;let e=this;for(;e=e.parent;)e[re]=!1}}get proxyOf(){return this}}var ue=le;le.default=le;let ce=ue;class he extends ce{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 pe=he;he.default=he;var fe={},de={},ge={},me={},we="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");me.encode=function(e){if(0<=e&&e<we.length)return we[e];throw new TypeError("Must be between 0 and 63: "+e)},me.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 ye=me;ge.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+=ye.encode(t)}while(n>0);return r},ge.decode=function(e,t,r){var n,s,i,o,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=ye.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=(o=(i=l)>>1,1==(1&i)?-o:o),r.rest=t};var ve={};!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 i,o,a=(i=function(t){var r=t,i=n(t);if(i){if(!i.path)return t;r=i.path}for(var o=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,h=0;for(u=a.length-1;u>=0;u--)"."===(c=a[u])?a.splice(u,1):".."===c?h++:h>0&&(""===c?(a.splice(u+1,h),h=0):(a.splice(u,2),h--));return""===(r=a.join("/"))&&(r=o?"/":"."),i?(i.path=r,s(i)):r},o=[],function(e){for(var t=0;t<o.length;t++)if(o[t].input===e){var r=o[0];return o[0]=o[t],o[t]=r,o[0].result}var n=i(e);return o.unshift({input:e,result:n}),o.length>32&&o.pop(),n});function l(e,t){""===e&&(e="."),""===t&&(t=".");var i=n(t),o=n(e);if(o&&(e=o.path||"/"),i&&!i.scheme)return o&&(i.scheme=o.scheme),s(i);if(i||t.match(r))return t;if(o&&!o.host&&!o.path)return o.host=t,s(o);var l="/"===t.charAt(0)?t:a(e.replace(/\/+$/,"")+"/"+t);return o?(o.path=l,s(o)):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 h(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 p(e,t){return e===t?0:null===e?1:null===t?-1:e>t?1:-1}e.toSetString=u?c:function(e){return h(e)?"$"+e:e},e.fromSetString=u?c:function(e){return h(e)?e.slice(1):e},e.compareByOriginalPositions=function(e,t,r){var n=p(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:p(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:p(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=p(e.source,t.source))||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)?n:p(e.name,t.name)},e.compareByGeneratedPositionsDeflatedNoLine=function(e,t,r){var n=e.generatedColumn-t.generatedColumn;return 0!==n||r||0!==(n=p(e.source,t.source))||0!==(n=e.originalLine-t.originalLine)||0!==(n=e.originalColumn-t.originalColumn)?n:p(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=p(e.source,t.source))||0!==(r=e.originalLine-t.originalLine)||0!==(r=e.originalColumn-t.originalColumn)?r:p(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 i=n(r);if(!i)throw new Error("sourceMapURL could not be parsed");if(i.path){var o=i.path.lastIndexOf("/");o>=0&&(i.path=i.path.substring(0,o+1))}t=l(s(i),t)}return a(t)}}(ve);var Ce={},Se=ve,be=Object.prototype.hasOwnProperty,_e="undefined"!=typeof Map;function xe(){this._array=[],this._set=_e?new Map:Object.create(null)}xe.fromArray=function(e,t){for(var r=new xe,n=0,s=e.length;n<s;n++)r.add(e[n],t);return r},xe.prototype.size=function(){return _e?this._set.size:Object.getOwnPropertyNames(this._set).length},xe.prototype.add=function(e,t){var r=_e?e:Se.toSetString(e),n=_e?this.has(e):be.call(this._set,r),s=this._array.length;n&&!t||this._array.push(e),n||(_e?this._set.set(e,s):this._set[r]=s)},xe.prototype.has=function(e){if(_e)return this._set.has(e);var t=Se.toSetString(e);return be.call(this._set,t)},xe.prototype.indexOf=function(e){if(_e){var t=this._set.get(e);if(t>=0)return t}else{var r=Se.toSetString(e);if(be.call(this._set,r))return this._set[r]}throw new Error('"'+e+'" is not in the set.')},xe.prototype.at=function(e){if(e>=0&&e<this._array.length)return this._array[e];throw new Error("No element indexed by "+e)},xe.prototype.toArray=function(){return this._array.slice()},Ce.ArraySet=xe;var Oe={},Ae=ve;function Me(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}Me.prototype.unsortedForEach=function(e,t){this._array.forEach(e,t)},Me.prototype.add=function(e){var t,r,n,s,i,o;t=this._last,r=e,n=t.generatedLine,s=r.generatedLine,i=t.generatedColumn,o=r.generatedColumn,s>n||s==n&&o>=i||Ae.compareByGeneratedPositionsInflated(t,r)<=0?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},Me.prototype.toArray=function(){return this._sorted||(this._array.sort(Ae.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},Oe.MappingList=Me;var ke=ge,Ee=ve,Le=Ce.ArraySet,Re=Oe.MappingList;function Pe(e){e||(e={}),this._file=Ee.getArg(e,"file",null),this._sourceRoot=Ee.getArg(e,"sourceRoot",null),this._skipValidation=Ee.getArg(e,"skipValidation",!1),this._sources=new Le,this._names=new Le,this._mappings=new Re,this._sourcesContents=null}Pe.prototype._version=3,Pe.fromSourceMap=function(e){var t=e.sourceRoot,r=new Pe({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=Ee.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=Ee.relative(t,n)),r._sources.has(s)||r._sources.add(s);var i=e.sourceContentFor(n);null!=i&&r.setSourceContent(n,i)})),r},Pe.prototype.addMapping=function(e){var t=Ee.getArg(e,"generated"),r=Ee.getArg(e,"original",null),n=Ee.getArg(e,"source",null),s=Ee.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})},Pe.prototype.setSourceContent=function(e,t){var r=e;null!=this._sourceRoot&&(r=Ee.relative(this._sourceRoot,r)),null!=t?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Ee.toSetString(r)]=t):this._sourcesContents&&(delete this._sourcesContents[Ee.toSetString(r)],0===Object.keys(this._sourcesContents).length&&(this._sourcesContents=null))},Pe.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=Ee.relative(s,n));var i=new Le,o=new Le;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=Ee.join(r,t.source)),null!=s&&(t.source=Ee.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||i.has(l)||i.add(l);var u=t.name;null==u||o.has(u)||o.add(u)}),this),this._sources=i,this._names=o,e.sources.forEach((function(t){var n=e.sourceContentFor(t);null!=n&&(null!=r&&(t=Ee.join(r,t)),null!=s&&(t=Ee.relative(s,t)),this.setSourceContent(t,n))}),this)},Pe.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}))},Pe.prototype._serializeMappings=function(){for(var e,t,r,n,s=0,i=1,o=0,a=0,l=0,u=0,c="",h=this._mappings.toArray(),p=0,f=h.length;p<f;p++){if(e="",(t=h[p]).generatedLine!==i)for(s=0;t.generatedLine!==i;)e+=";",i++;else if(p>0){if(!Ee.compareByGeneratedPositionsInflated(t,h[p-1]))continue;e+=","}e+=ke.encode(t.generatedColumn-s),s=t.generatedColumn,null!=t.source&&(n=this._sources.indexOf(t.source),e+=ke.encode(n-u),u=n,e+=ke.encode(t.originalLine-1-a),a=t.originalLine-1,e+=ke.encode(t.originalColumn-o),o=t.originalColumn,null!=t.name&&(r=this._names.indexOf(t.name),e+=ke.encode(r-l),l=r)),c+=e}return c},Pe.prototype._generateSourcesContent=function(e,t){return e.map((function(e){if(!this._sourcesContents)return null;null!=t&&(e=Ee.relative(t,e));var r=Ee.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null}),this)},Pe.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},Pe.prototype.toString=function(){return JSON.stringify(this.toJSON())},de.SourceMapGenerator=Pe;var Ie={},je={};!function(e){function t(r,n,s,i,o,a){var l=Math.floor((n-r)/2)+r,u=o(s,i[l],!0);return 0===u?l:u>0?n-l>1?t(l,n,s,i,o,a):a==e.LEAST_UPPER_BOUND?n<i.length?n:-1:l:l-r>1?t(r,l,s,i,o,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,i){if(0===n.length)return-1;var o=t(-1,n.length,r,n,s,i||e.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&0===s(n[o],n[o-1],!0);)--o;return o}}(je);var Ne={};function Ue(e){function t(e,t,r){var n=e[t];e[t]=e[r],e[r]=n}return function e(r,n,s,i){if(s<i){var o=s-1;t(r,(c=s,h=i,Math.round(c+Math.random()*(h-c))),i);for(var a=r[i],l=s;l<i;l++)n(r[l],a,!1)<=0&&t(r,o+=1,l);t(r,o+1,l);var u=o+1;e(r,n,s,u-1),e(r,n,u+1,i)}var c,h}}let Fe=new WeakMap;Ne.quickSort=function(e,t,r=0){let n=Fe.get(t);void 0===n&&(n=function(e){let t=Ue.toString();return new Function(`return ${t}`)()(e)}(t),Fe.set(t,n)),n(e,t,r,e.length-1)};var De=ve,Be=je,Te=Ce.ArraySet,$e=ge,Ge=Ne.quickSort;function ze(e,t){var r=e;return"string"==typeof e&&(r=De.parseSourceMapInput(e)),null!=r.sections?new Ye(r,t):new We(r,t)}function We(e,t){var r=e;"string"==typeof e&&(r=De.parseSourceMapInput(e));var n=De.getArg(r,"version"),s=De.getArg(r,"sources"),i=De.getArg(r,"names",[]),o=De.getArg(r,"sourceRoot",null),a=De.getArg(r,"sourcesContent",null),l=De.getArg(r,"mappings"),u=De.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);o&&(o=De.normalize(o)),s=s.map(String).map(De.normalize).map((function(e){return o&&De.isAbsolute(o)&&De.isAbsolute(e)?De.relative(o,e):e})),this._names=Te.fromArray(i.map(String),!0),this._sources=Te.fromArray(s,!0),this._absoluteSources=this._sources.toArray().map((function(e){return De.computeSourceURL(o,e,t)})),this.sourceRoot=o,this.sourcesContent=a,this._mappings=l,this._sourceMapURL=t,this.file=u}function Ve(){this.generatedLine=0,this.generatedColumn=0,this.source=null,this.originalLine=null,this.originalColumn=null,this.name=null}ze.fromSourceMap=function(e,t){return We.fromSourceMap(e,t)},ze.prototype._version=3,ze.prototype.__generatedMappings=null,Object.defineProperty(ze.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}}),ze.prototype.__originalMappings=null,Object.defineProperty(ze.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}}),ze.prototype._charIsMappingSeparator=function(e,t){var r=e.charAt(t);return";"===r||","===r},ze.prototype._parseMappings=function(e,t){throw new Error("Subclasses must implement _parseMappings")},ze.GENERATED_ORDER=1,ze.ORIGINAL_ORDER=2,ze.GREATEST_LOWER_BOUND=1,ze.LEAST_UPPER_BOUND=2,ze.prototype.eachMapping=function(e,t,r){var n,s=t||null;switch(r||ze.GENERATED_ORDER){case ze.GENERATED_ORDER:n=this._generatedMappings;break;case ze.ORIGINAL_ORDER:n=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}for(var i=this.sourceRoot,o=e.bind(s),a=this._names,l=this._sources,u=this._sourceMapURL,c=0,h=n.length;c<h;c++){var p=n[c],f=null===p.source?null:l.at(p.source);o({source:f=De.computeSourceURL(i,f,u),generatedLine:p.generatedLine,generatedColumn:p.generatedColumn,originalLine:p.originalLine,originalColumn:p.originalColumn,name:null===p.name?null:a.at(p.name)})}},ze.prototype.allGeneratedPositionsFor=function(e){var t=De.getArg(e,"line"),r={source:De.getArg(e,"source"),originalLine:t,originalColumn:De.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",De.compareByOriginalPositions,Be.LEAST_UPPER_BOUND);if(s>=0){var i=this._originalMappings[s];if(void 0===e.column)for(var o=i.originalLine;i&&i.originalLine===o;)n.push({line:De.getArg(i,"generatedLine",null),column:De.getArg(i,"generatedColumn",null),lastColumn:De.getArg(i,"lastGeneratedColumn",null)}),i=this._originalMappings[++s];else for(var a=i.originalColumn;i&&i.originalLine===t&&i.originalColumn==a;)n.push({line:De.getArg(i,"generatedLine",null),column:De.getArg(i,"generatedColumn",null),lastColumn:De.getArg(i,"lastGeneratedColumn",null)}),i=this._originalMappings[++s]}return n},Ie.SourceMapConsumer=ze,We.prototype=Object.create(ze.prototype),We.prototype.consumer=ze,We.prototype._findSourceIndex=function(e){var t,r=e;if(null!=this.sourceRoot&&(r=De.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},We.fromSourceMap=function(e,t){var r=Object.create(We.prototype),n=r._names=Te.fromArray(e._names.toArray(),!0),s=r._sources=Te.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 De.computeSourceURL(r.sourceRoot,e,t)}));for(var i=e._mappings.toArray().slice(),o=r.__generatedMappings=[],a=r.__originalMappings=[],l=0,u=i.length;l<u;l++){var c=i[l],h=new Ve;h.generatedLine=c.generatedLine,h.generatedColumn=c.generatedColumn,c.source&&(h.source=s.indexOf(c.source),h.originalLine=c.originalLine,h.originalColumn=c.originalColumn,c.name&&(h.name=n.indexOf(c.name)),a.push(h)),o.push(h)}return Ge(r.__originalMappings,De.compareByOriginalPositions),r},We.prototype._version=3,Object.defineProperty(We.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});const Je=De.compareByGeneratedPositionsDeflatedNoLine;function qe(e,t){let r=e.length,n=e.length-t;if(!(n<=1))if(2==n){let r=e[t],n=e[t+1];Je(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(Je(t,n)<=0)break;e[r-1]=n,e[r]=t}else Ge(e,Je,t)}function Ye(e,t){var r=e;"string"==typeof e&&(r=De.parseSourceMapInput(e));var n=De.getArg(r,"version"),s=De.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new Te,this._names=new Te;var i={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=De.getArg(e,"offset"),n=De.getArg(r,"line"),s=De.getArg(r,"column");if(n<i.line||n===i.line&&s<i.column)throw new Error("Section offsets must be ordered and non-overlapping.");return i=r,{generatedOffset:{generatedLine:n+1,generatedColumn:s+1},consumer:new ze(De.getArg(e,"map"),t)}}))}We.prototype._parseMappings=function(e,t){var r,n,s,i,o=1,a=0,l=0,u=0,c=0,h=0,p=e.length,f=0,d={},g=[],m=[];let w=0;for(;f<p;)if(";"===e.charAt(f))o++,f++,a=0,qe(m,w),w=m.length;else if(","===e.charAt(f))f++;else{for((r=new Ve).generatedLine=o,s=f;s<p&&!this._charIsMappingSeparator(e,s);s++);for(e.slice(f,s),n=[];f<s;)$e.decode(e,f,d),i=d.value,f=d.rest,n.push(i);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=h+n[4],h+=n[4])),m.push(r),"number"==typeof r.originalLine){let e=r.source;for(;g.length<=e;)g.push(null);null===g[e]&&(g[e]=[]),g[e].push(r)}}qe(m,w),this.__generatedMappings=m;for(var y=0;y<g.length;y++)null!=g[y]&&Ge(g[y],De.compareByOriginalPositionsNoSource);this.__originalMappings=[].concat(...g)},We.prototype._findMapping=function(e,t,r,n,s,i){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 Be.search(e,t,s,i)},We.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}},We.prototype.originalPositionFor=function(e){var t={generatedLine:De.getArg(e,"line"),generatedColumn:De.getArg(e,"column")},r=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",De.compareByGeneratedPositionsDeflated,De.getArg(e,"bias",ze.GREATEST_LOWER_BOUND));if(r>=0){var n=this._generatedMappings[r];if(n.generatedLine===t.generatedLine){var s=De.getArg(n,"source",null);null!==s&&(s=this._sources.at(s),s=De.computeSourceURL(this.sourceRoot,s,this._sourceMapURL));var i=De.getArg(n,"name",null);return null!==i&&(i=this._names.at(i)),{source:s,line:De.getArg(n,"originalLine",null),column:De.getArg(n,"originalColumn",null),name:i}}}return{source:null,line:null,column:null,name:null}},We.prototype.hasContentsOfAllSources=function(){return!!this.sourcesContent&&(this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some((function(e){return null==e})))},We.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=De.relative(this.sourceRoot,s)),null!=this.sourceRoot&&(n=De.urlParse(this.sourceRoot))){var i=s.replace(/^file:\/\//,"");if("file"==n.scheme&&this._sources.has(i))return this.sourcesContent[this._sources.indexOf(i)];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.')},We.prototype.generatedPositionFor=function(e){var t=De.getArg(e,"source");if((t=this._findSourceIndex(t))<0)return{line:null,column:null,lastColumn:null};var r={source:t,originalLine:De.getArg(e,"line"),originalColumn:De.getArg(e,"column")},n=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",De.compareByOriginalPositions,De.getArg(e,"bias",ze.GREATEST_LOWER_BOUND));if(n>=0){var s=this._originalMappings[n];if(s.source===r.source)return{line:De.getArg(s,"generatedLine",null),column:De.getArg(s,"generatedColumn",null),lastColumn:De.getArg(s,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},Ie.BasicSourceMapConsumer=We,Ye.prototype=Object.create(ze.prototype),Ye.prototype.constructor=ze,Ye.prototype._version=3,Object.defineProperty(Ye.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}}),Ye.prototype.originalPositionFor=function(e){var t={generatedLine:De.getArg(e,"line"),generatedColumn:De.getArg(e,"column")},r=Be.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}},Ye.prototype.hasContentsOfAllSources=function(){return this._sections.every((function(e){return e.consumer.hasContentsOfAllSources()}))},Ye.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.')},Ye.prototype.generatedPositionFor=function(e){for(var t=0;t<this._sections.length;t++){var r=this._sections[t];if(-1!==r.consumer._findSourceIndex(De.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}},Ye.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,i=0;i<s.length;i++){var o=s[i],a=n.consumer._sources.at(o.source);a=De.computeSourceURL(n.consumer.sourceRoot,a,this._sourceMapURL),this._sources.add(a),a=this._sources.indexOf(a);var l=null;o.name&&(l=n.consumer._names.at(o.name),this._names.add(l),l=this._names.indexOf(l));var u={source:a,generatedLine:o.generatedLine+(n.generatedOffset.generatedLine-1),generatedColumn:o.generatedColumn+(n.generatedOffset.generatedLine===o.generatedLine?n.generatedOffset.generatedColumn-1:0),originalLine:o.originalLine,originalColumn:o.originalColumn,name:l};this.__generatedMappings.push(u),"number"==typeof u.originalLine&&this.__originalMappings.push(u)}Ge(this.__generatedMappings,De.compareByGeneratedPositionsDeflated),Ge(this.__originalMappings,De.compareByOriginalPositions)},Ie.IndexedSourceMapConsumer=Ye;var Qe={},Ze=de.SourceMapGenerator,He=ve,Ke=/(\r?\n)/,Xe="$$$isSourceNode$$$";function et(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[Xe]=!0,null!=n&&this.add(n)}et.fromStringWithSourceMap=function(e,t,r){var n=new et,s=e.split(Ke),i=0,o=function(){return e()+(e()||"");function e(){return i<s.length?s[i++]:void 0}},a=1,l=0,u=null;return t.eachMapping((function(e){if(null!==u){if(!(a<e.generatedLine)){var t=(r=s[i]||"").substr(0,e.generatedColumn-l);return s[i]=r.substr(e.generatedColumn-l),l=e.generatedColumn,c(u,t),void(u=e)}c(u,o()),a++,l=0}for(;a<e.generatedLine;)n.add(o()),a++;if(l<e.generatedColumn){var r=s[i]||"";n.add(r.substr(0,e.generatedColumn)),s[i]=r.substr(e.generatedColumn),l=e.generatedColumn}u=e}),this),i<s.length&&(u&&c(u,o()),n.add(s.splice(i).join(""))),t.sources.forEach((function(e){var s=t.sourceContentFor(e);null!=s&&(null!=r&&(e=He.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?He.join(r,e.source):e.source;n.add(new et(e.originalLine,e.originalColumn,s,t,e.name))}}},et.prototype.add=function(e){if(Array.isArray(e))e.forEach((function(e){this.add(e)}),this);else{if(!e[Xe]&&"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},et.prototype.prepend=function(e){if(Array.isArray(e))for(var t=e.length-1;t>=0;t--)this.prepend(e[t]);else{if(!e[Xe]&&"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},et.prototype.walk=function(e){for(var t,r=0,n=this.children.length;r<n;r++)(t=this.children[r])[Xe]?t.walk(e):""!==t&&e(t,{source:this.source,line:this.line,column:this.column,name:this.name})},et.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},et.prototype.replaceRight=function(e,t){var r=this.children[this.children.length-1];return r[Xe]?r.replaceRight(e,t):"string"==typeof r?this.children[this.children.length-1]=r.replace(e,t):this.children.push("".replace(e,t)),this},et.prototype.setSourceContent=function(e,t){this.sourceContents[He.toSetString(e)]=t},et.prototype.walkSourceContents=function(e){for(var t=0,r=this.children.length;t<r;t++)this.children[t][Xe]&&this.children[t].walkSourceContents(e);var n=Object.keys(this.sourceContents);for(t=0,r=n.length;t<r;t++)e(He.fromSetString(n[t]),this.sourceContents[n[t]])},et.prototype.toString=function(){var e="";return this.walk((function(t){e+=t})),e},et.prototype.toStringWithSourceMap=function(e){var t={code:"",line:1,column:0},r=new Ze(e),n=!1,s=null,i=null,o=null,a=null;return this.walk((function(e,l){t.code+=e,null!==l.source&&null!==l.line&&null!==l.column?(s===l.source&&i===l.line&&o===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,i=l.line,o=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}},Qe.SourceNode=et,fe.SourceMapGenerator=de.SourceMapGenerator,fe.SourceMapConsumer=Ie.SourceMapConsumer,fe.SourceNode=Qe.SourceNode;var tt={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:rt,SourceMapGenerator:nt}=fe,{existsSync:st,readFileSync:it}=s,{dirname:ot,join:at}=r;class lt{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=ot(this.mapFile)),n&&(this.text=n)}consumer(){return this.consumerCache||(this.consumerCache=new rt(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=ot(e),st(e))return this.mapFile=e,it(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 rt)return nt.fromSourceMap(t).toString();if(t instanceof nt)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=at(ot(e),t)),this.loadFile(t)}}}isMap(e){return"object"==typeof e&&("string"==typeof e.mappings||"string"==typeof e._mappings||Array.isArray(e.sections))}}var ut=lt;lt.default=lt;let{SourceMapConsumer:ct,SourceMapGenerator:ht}=fe,{fileURLToPath:pt,pathToFileURL:ft}=n,{resolve:dt,isAbsolute:gt}=r,{nanoid:mt}=tt,wt=W,yt=Y,vt=ut,Ct=Symbol("fromOffsetCache"),St=Boolean(ct&&ht),bt=Boolean(dt&&gt);class _t{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&&(!bt||/^\w+:\/\//.test(t.from)||gt(t.from)?this.file=t.from:this.file=dt(t.from)),bt&&St){let e=new vt(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 "+mt(6)+">"),this.map&&(this.map.file=this.from)}fromOffset(e){let t,r;if(this[Ct])r=this[Ct];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[Ct]=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,i,o;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);i=e.line,o=e.col}else i=n.line,o=n.column}else if(!r){let e=this.fromOffset(t);t=e.line,r=e.col}let a=this.origin(t,r,i,o);return s=a?new yt(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 yt(e,void 0===i?t:{line:t,column:r},void 0===i?r:{line:i,column:o},this.css,this.file,n.plugin),s.input={line:t,column:r,endLine:i,endColumn:o,source:this.css},this.file&&(ft&&(s.input.url=ft(this.file).toString()),s.input.file=this.file),s}origin(e,t,r,n){if(!this.map)return!1;let s,i,o=this.map.consumer(),a=o.originalPositionFor({line:e,column:t});if(!a.source)return!1;"number"==typeof r&&(s=o.originalPositionFor({line:r,column:n})),i=gt(a.source)?ft(a.source):new URL(a.source,this.map.consumer().sourceRoot||ft(this.map.mapFile));let l={url:i.toString(),line:a.line,column:a.column,endLine:s&&s.line,endColumn:s&&s.column};if("file:"===i.protocol){if(!pt)throw new Error("file: protocol is not available in this PostCSS build");l.file=pt(i)}let u=o.sourceContentFor(a.source);return u&&(l.source=u),l}mapResolve(e){return/^\w+:\/\//.test(e)?e:dt(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 xt=_t;_t.default=_t,wt&&wt.registerInput&&wt.registerInput(_t);let{SourceMapConsumer:Ot,SourceMapGenerator:At}=fe,{dirname:Mt,resolve:kt,relative:Et,sep:Lt}=r,{pathToFileURL:Rt}=n,Pt=xt,It=Boolean(Ot&&At),jt=Boolean(Mt&&kt&&Et&&Lt);var Nt=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 Pt(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||Mt(e.file);!1===this.mapOpts.sourcesContent?(t=new Ot(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=At.fromSourceMap(e)}else this.map=new At({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?Mt(this.opts.to):".";return"string"==typeof this.mapOpts.annotation&&(t=Mt(kt(t,this.mapOpts.annotation))),e=Et(t,e)}toUrl(e){return"\\"===Lt&&(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(Rt)return Rt(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 At({file:this.outputFile()});let e,t,r=1,n=1,s="<no source>",i={source:"",generated:{line:0,column:0},original:{line:0,column:0}};this.stringify(this.root,((o,a,l)=>{if(this.css+=o,a&&"end"!==l&&(i.generated.line=r,i.generated.column=n-1,a.source&&a.source.start?(i.source=this.sourcePath(a),i.original.line=a.source.start.line,i.original.column=a.source.start.column-1,this.map.addMapping(i)):(i.source=s,i.original.line=1,i.original.column=0,this.map.addMapping(i))),e=o.match(/\n/g),e?(r+=e.length,t=o.lastIndexOf("\n"),n=o.length-t):n+=o.length,a&&"start"!==l){let e=a.parent||{raws:{}};("decl"!==a.type||a!==e.last||e.raws.semicolon)&&(a.source&&a.source.end?(i.source=this.sourcePath(a),i.original.line=a.source.end.line,i.original.column=a.source.end.column-1,i.generated.line=r,i.generated.column=n-2,this.map.addMapping(i)):(i.source=s,i.original.line=1,i.original.column=0,i.generated.line=r,i.generated.column=n-1,this.map.addMapping(i)))}}))}generate(){if(this.clearAnnotation(),jt&&It&&this.isMap())return this.generateMap();{let e="";return this.stringify(this.root,(t=>{e+=t})),[e]}}};let Ut=ue;class Ft extends Ut{constructor(e){super(e),this.type="comment"}}var Dt=Ft;Ft.default=Ft;let Bt,Tt,$t,{isClean:Gt,my:zt}=Q,Wt=pe,Vt=Dt,Jt=ue;function qt(e){return e.map((e=>(e.nodes&&(e.nodes=qt(e.nodes)),delete e.source,e)))}function Yt(e){if(e[Gt]=!1,e.proxyOf.nodes)for(let t of e.proxyOf.nodes)Yt(t)}class Qt extends Jt{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=qt(Bt(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 Wt(e)]}else if(e.selector)e=[new Tt(e)];else if(e.name)e=[new $t(e)];else{if(!e.text)throw new Error("Unknown node type in node creation");e=[new Vt(e)]}return e.map((e=>(e[zt]||Qt.rebuild(e),(e=e.proxyOf).parent&&e.parent.removeChild(e),e[Gt]&&Yt(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}}Qt.registerParse=e=>{Bt=e},Qt.registerRule=e=>{Tt=e},Qt.registerAtRule=e=>{$t=e};var Zt=Qt;Qt.default=Qt,Qt.rebuild=e=>{"atrule"===e.type?Object.setPrototypeOf(e,$t.prototype):"rule"===e.type?Object.setPrototypeOf(e,Tt.prototype):"decl"===e.type?Object.setPrototypeOf(e,Wt.prototype):"comment"===e.type&&Object.setPrototypeOf(e,Vt.prototype),e[zt]=!0,e.nodes&&e.nodes.forEach((e=>{Qt.rebuild(e)}))};let Ht,Kt,Xt=Zt;class er extends Xt{constructor(e){super({type:"document",...e}),this.nodes||(this.nodes=[])}toResult(e={}){return new Ht(new Kt,this,e).stringify()}}er.registerLazyResult=e=>{Ht=e},er.registerProcessor=e=>{Kt=e};var tr=er;er.default=er;let rr={};var nr=function(e){rr[e]||(rr[e]=!0,"undefined"!=typeof console&&console.warn&&console.warn(e))};class sr{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 ir=sr;sr.default=sr;let or=ir;class ar{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 or(e,t);return this.messages.push(r),r}warnings(){return this.messages.filter((e=>"warning"===e.type))}get content(){return this.css}}var lr=ar;ar.default=ar;let ur=Zt;class cr extends ur{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 hr=cr;cr.default=cr,ur.registerAtRule(cr);let pr,fr,dr=Zt;class gr extends dr{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 pr(new fr,this,e).stringify()}}gr.registerLazyResult=e=>{pr=e},gr.registerProcessor=e=>{fr=e};var mr=gr;gr.default=gr;let wr={split(e,t,r){let n=[],s="",i=!1,o=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?o+=1:")"===r?o>0&&(o-=1):0===o&&t.includes(r)&&(i=!0),i?(""!==s&&n.push(s.trim()),s="",i=!1):s+=r;return(r||""!==s)&&n.push(s.trim()),n},space:e=>wr.split(e,[" ","\n","\t"]),comma:e=>wr.split(e,[","],!0)};var yr=wr;wr.default=wr;let vr=Zt,Cr=yr;class Sr extends vr{constructor(e){super(e),this.type="rule",this.nodes||(this.nodes=[])}get selectors(){return Cr.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 br=Sr;Sr.default=Sr,vr.registerRule(Sr);let _r=pe,xr=F,Or=Dt,Ar=hr,Mr=mr,kr=br;var Er=class{constructor(e){this.input=e,this.root=new Mr,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=xr(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 Or;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 kr;this.init(t,e[2]),t.selector="",t.raws.between="",this.current=t}other(e){let t=!1,r=null,n=!1,s=null,i=[],o=e[1].startsWith("--"),a=[],l=e;for(;l;){if(r=l[0],a.push(l),"("===r||"["===r)s||(s=l),i.push("("===r?")":"]");else if(o&&n&&"{"===r)s||(s=l),i.push("}");else if(0===i.length){if(";"===r){if(n)return void this.decl(a,o);break}if("{"===r)return void this.rule(a);if("}"===r){this.tokenizer.back(a.pop()),t=!0;break}":"===r&&(n=!0)}else r===i[i.length-1]&&(i.pop(),0===i.length&&(s=null));l=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(t=!0),i.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,o)}else this.unknownWord(a)}rule(e){e.pop();let t=new kr;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 _r;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 i=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 o=e.some((e=>"space"!==e[0]&&"comment"!==e[0]));this.raw(r,"value",e),o?r.raws.between+=i:r.value=i+r.value,r.value.includes(":")&&!t&&this.checkMissedSemicolon(e)}atrule(e){let t,r,n,s=new Ar;s.name=e[1].slice(1),""===s.name&&this.unnamedAtrule(s,e),this.init(s,e[2]);let i=!1,o=!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){o=!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()){i=!0;break}}s.raws.between=this.spacesAndCommentsFromEnd(a),a.length?(s.raws.afterName=this.spacesAndCommentsFromStart(a),this.raw(s,"params",a),i&&(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=""),o&&(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,i,o,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]:(o=r[t-1],i=r[t+1],"space"!==o[0]&&"space"!==i[0]&&c.test(o[1])&&c.test(i[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[i,o]of e.entries()){if(t=o,r=t[0],"("===r&&(s+=1),")"===r&&(s-=1),0===s&&":"===r){if(n){if("word"===n[0]&&"progid"===n[1])continue;return i}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 Lr=Zt,Rr=Er,Pr=xt;function Ir(e,t){let r=new Pr(e,t),n=new Rr(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 jr=Ir;Ir.default=Ir,Lr.registerParse(Ir);let{isClean:Nr,my:Ur}=Q,Fr=Nt,Dr=te,Br=Zt,Tr=tr,$r=nr,Gr=lr,zr=jr,Wr=mr;const Vr={document:"Document",root:"Root",atrule:"AtRule",rule:"Rule",decl:"Declaration",comment:"Comment"},Jr={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},qr={postcssPlugin:!0,prepare:!0,Once:!0};function Yr(e){return"object"==typeof e&&"function"==typeof e.then}function Qr(e){let t=!1,r=Vr[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 Zr(e){let t;return t="document"===e.type?["Document",0,"DocumentExit"]:"root"===e.type?["Root",0,"RootExit"]:Qr(e),{node:e,events:t,eventIndex:0,visitors:[],visitorIndex:0,iterator:0}}function Hr(e){return e[Nr]=!1,e.nodes&&e.nodes.forEach((e=>Hr(e))),e}let Kr={};class Xr{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 Xr||t instanceof Gr)n=Hr(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=zr;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[Ur]&&Br.rebuild(n)}else n=Hr(t);this.result=new Gr(e,n,r),this.helpers={...Kr,result:this.result,postcss:Kr},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||$r("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(Yr(this.runOnRoot(e)))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){let e=this.result.root;for(;!e[Nr];)e[Nr]=!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=Dr;e.syntax&&(t=e.syntax.stringify),e.stringifier&&(t=e.stringifier),t.stringify&&(t=t.stringify);let r=new Fr(t,this.result.root,this.result.opts).generate();return this.result.css=r[0],this.result.map=r[1],this.result}walkSync(e){e[Nr]=!0;let t=Qr(e);for(let r of t)if(0===r)e.nodes&&e.each((e=>{e[Nr]||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(Yr(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 Yr(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("."),i=n.split(".");(s[0]!==i[0]||parseInt(s[1])>parseInt(i[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(Yr(r))try{await r}catch(e){throw this.handleError(e)}}if(this.prepareVisitors(),this.hasListener){let e=this.result.root;for(;!e[Nr];){e[Nr]=!0;let t=[Zr(e)];for(;t.length>0;){let e=this.visitTick(t);if(Yr(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(!Jr[r]&&/^[A-Z]/.test(r))throw new Error(`Unknown event ${r} in ${t.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!qr[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[Nr])return n[Nr]=!0,void e.push(Zr(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[Nr]=!0,t.iterator=r.getIterator()));if(this.listeners[e])return void(t.visitors=this.listeners[e])}e.pop()}}Xr.registerPostcss=e=>{Kr=e};var en=Xr;Xr.default=Xr,Wr.registerLazyResult(Xr),Tr.registerLazyResult(Xr);let tn=Nt,rn=te,nn=nr,sn=jr;const on=lr;class an{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=rn;this.result=new on(this._processor,n,this._opts),this.result.css=t;let i=this;Object.defineProperty(this.result,"root",{get:()=>i.root});let o=new tn(s,n,this._opts,t);if(o.isMap()){let[e,t]=o.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=sn;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||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):Promise.resolve(this.result)}sync(){if(this.error)throw this.error;return this.result}}var ln=an;an.default=an;let un=ln,cn=en,hn=tr,pn=mr;class fn{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 un(this,e,t):new cn(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 dn=fn;fn.default=fn,pn.registerProcessor(fn),hn.registerProcessor(fn);let gn=pe,mn=ut,wn=Dt,yn=hr,vn=xt,Cn=mr,Sn=br;function bn(e,t){if(Array.isArray(e))return e.map((e=>bn(e)));let{inputs:r,...n}=e;if(r){t=[];for(let e of r){let r={...e,__proto__:vn.prototype};r.map&&(r.map={...r.map,__proto__:mn.prototype}),t.push(r)}}if(n.nodes&&(n.nodes=e.nodes.map((e=>bn(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 Cn(n);if("decl"===n.type)return new gn(n);if("rule"===n.type)return new Sn(n);if("comment"===n.type)return new wn(n);if("atrule"===n.type)return new yn(n);throw new Error("Unknown node type: "+e.type)}var _n=bn;bn.default=bn;let xn=Y,On=pe,An=en,Mn=Zt,kn=dn,En=te,Ln=_n,Rn=tr,Pn=ir,In=Dt,jn=hr,Nn=lr,Un=xt,Fn=jr,Dn=yr,Bn=br,Tn=mr,$n=ue;function Gn(...e){return 1===e.length&&Array.isArray(e[0])&&(e=e[0]),new kn(e)}Gn.plugin=function(e,t){function r(...r){let n=t(...r);return n.postcssPlugin=e,n.postcssVersion=(new kn).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 Gn([r(n)]).process(e,t)},r},Gn.stringify=En,Gn.parse=Fn,Gn.fromJSON=Ln,Gn.list=Dn,Gn.comment=e=>new In(e),Gn.atRule=e=>new jn(e),Gn.decl=e=>new On(e),Gn.rule=e=>new Bn(e),Gn.root=e=>new Tn(e),Gn.document=e=>new Rn(e),Gn.CssSyntaxError=xn,Gn.Declaration=On,Gn.Container=Mn,Gn.Processor=kn,Gn.Document=Rn,Gn.Comment=In,Gn.Warning=Pn,Gn.AtRule=jn,Gn.Result=Nn,Gn.Input=Un,Gn.Rule=Bn,Gn.Root=Tn,Gn.Node=$n,An.registerPostcss(Gn);var zn=Gn;async function Wn(){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)}))}))}Gn.default=Gn,async function(e,t,n){const s=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 i=null,o=!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++,o=!0;break;case"-m":case"--map":s.externalMap=!0,s.inlineMap=!1,o=!0;break;case"--no-map":s.externalMap=!1,s.inlineMap=!1,o=!0;break;case"-r":case"--replace":s.replace=!0,o=!0;break;case"--debug":s.debug=!0,o=!0;break;case"-d":case"--dir":s.outputDir=n[e+1],e++,o=!0;break;case"-p":case"--plugin-options":i=n[e+1],e++,o=!0;break;default:if(0===t.indexOf("-"))return console.warn(`[error] unknown argument : ${t}\n`),r(),a.InvalidArguments;if(!o){s.inputs.push(t);break}return r(),a.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(),a.InvalidArguments;0===s.inputs.length&&(s.stdin=!0),s.output||s.outputDir||s.replace||(s.stdout=!0),s.stdout&&(s.externalMap=!1);let l={};if(i)try{l=JSON.parse(i)}catch(e){return console.warn("[error] plugin options must be valid JSON\n"),r(),a.InvalidArguments}for(const e in l){const n=l[e];if(!t.includes(e))return console.warn(`[error] unknown plugin option: ${e}\n`),r(),a.InvalidArguments;s.pluginOptions[e]=n}return s}(process.argv.slice(2),t,n);s===a.InvalidArguments&&process.exit(1);const o=e(s.pluginOptions);s.stdin&&s.stdout?await async function(e,t,r){let n="";try{const s=await Wn();s||(r(),process.exit(1)),n=(await zn([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)}(o,s,n):s.stdin?await async function(e,t,n){let s=t.output;!s&&t.outputDir&&(s=r.join(t.outputDir,"output.css"));try{const r=await Wn();r||(n(),process.exit(1));const o=await zn([e]).process(r,{from:"stdin",to:s,map:!(!t.inlineMap&&!t.externalMap)&&{inline:t.inlineMap}});t.externalMap&&o.map?await Promise.all([await i.writeFile(s,o.css+(t.inlineMap?"\n":"")),await i.writeFile(`${s}.map`,o.map.toString())]):await i.writeFile(s,o.css+(t.inlineMap?"\n":""))}catch(e){console.error(t.debug?e:e.message),process.exit(1)}console.log(`CSS was written to "${r.normalize(s)}"`),process.exit(0)}(o,s,n):s.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 zn([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)}(o,s):await async function(e,t){try{await Promise.all(t.inputs.map((async n=>{let s=t.output;t.outputDir&&(s=r.join(t.outputDir,r.basename(n))),t.replace&&(s=n);const o=await i.readFile(n),a=await zn([e]).process(o,{from:n,to:s,map:!(!t.inlineMap&&!t.externalMap)&&{inline:t.inlineMap}});t.externalMap&&a.map?await Promise.all([await i.writeFile(s,a.css+(t.inlineMap?"\n":"")),await i.writeFile(`${s}.map`,a.map.toString())]):await i.writeFile(s,a.css+(t.inlineMap?"\n":"")),console.log(`CSS was written to "${r.normalize(s)}"`)})))}catch(e){console.error(t.debug?e:e.message),process.exit(1)}process.exit(0)}(o,s)}(o,["preserve","replaceWith"],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 i=[`${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&&i.push(...s),()=>{console.warn(i.join("\n"))}}("postcss-focus-within","PostCSS Focus Within","Lets you use the `:focus-within` pseudo-class in CSS, following the Selectors Level 4 specification.",{preserve:!0,replaceWith:".focus-within"}));
package/dist/index.cjs ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var t=e(require("postcss-selector-parser"));const s=e=>{const s=String(Object(e).replaceWith||"[focus-within]"),r=Boolean(!("preserve"in Object(e))||e.preserve),o=t.default().astSync(s);return{postcssPlugin:"postcss-focus-within",Rule:(e,{result:s})=>{if(!e.selector.includes(":focus-within"))return;let c;try{const s=t.default((e=>{e.walkPseudos((e=>{":focus-within"===e.value&&(e.nodes&&e.nodes.length||e.replaceWith(o.clone({})))}))})).processSync(e.selector);c=String(s)}catch(t){return void e.warn(s,`Failed to parse selector : ${e.selector}`)}if(void 0===c)return;if(c===e.selector)return;const n=e.clone({selector:c});r?e.before(n):e.replaceWith(n)}}};s.postcss=!0,module.exports=s;
2
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":["../src/index.ts"],"sourcesContent":["import parser from 'postcss-selector-parser';\nimport type { PluginCreator } from 'postcss';\n\nconst creator: PluginCreator<{ preserve?: boolean, replaceWith?: string }> = (opts?: { preserve?: boolean, replaceWith?: string }) => {\n\tconst replaceWith = String(Object(opts).replaceWith || '[focus-within]');\n\tconst preserve = Boolean('preserve' in Object(opts) ? opts.preserve : true);\n\tconst replacementAST = parser().astSync(replaceWith);\n\n\treturn {\n\t\tpostcssPlugin: 'postcss-focus-within',\n\t\tRule: (rule, { result })=> {\n\t\t\tif (!rule.selector.includes(':focus-within')) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet modifiedSelector;\n\n\t\t\ttry {\n\t\t\t\tconst modifiedSelectorAST = parser((selectors) => {\n\t\t\t\t\tselectors.walkPseudos((pseudo) => {\n\t\t\t\t\t\tif (pseudo.value !== ':focus-within') {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (pseudo.nodes && pseudo.nodes.length) {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tpseudo.replaceWith(replacementAST.clone({}));\n\t\t\t\t\t});\n\t\t\t\t}).processSync(rule.selector);\n\n\t\t\t\tmodifiedSelector = String(modifiedSelectorAST);\n\t\t\t} catch (_) {\n\t\t\t\trule.warn(result, `Failed to parse selector : ${rule.selector}`);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof modifiedSelector === 'undefined') {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (modifiedSelector === rule.selector) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst clone = rule.clone({ selector: modifiedSelector });\n\n\t\t\tif (preserve) {\n\t\t\t\trule.before(clone);\n\t\t\t} else {\n\t\t\t\trule.replaceWith(clone);\n\t\t\t}\n\t\t},\n\t};\n};\n\ncreator.postcss = true;\n\nexport default creator;\n\n"],"names":["creator","opts","replaceWith","String","Object","preserve","Boolean","replacementAST","parser","astSync","postcssPlugin","Rule","rule","result","selector","includes","modifiedSelector","modifiedSelectorAST","selectors","walkPseudos","pseudo","value","nodes","length","clone","processSync","_","warn","before","postcss"],"mappings":"uIAGMA,EAAwEC,IAC7E,MAAMC,EAAcC,OAAOC,OAAOH,GAAMC,aAAe,kBACjDG,EAAWC,UAAQ,aAAcF,OAAOH,KAAQA,EAAKI,UACrDE,EAAiBC,YAASC,QAAQP,GAExC,MAAO,CACNQ,cAAe,uBACfC,KAAM,CAACC,GAAQC,OAAAA,MACd,IAAKD,EAAKE,SAASC,SAAS,iBAC3B,OAGD,IAAIC,EAEJ,IACC,MAAMC,EAAsBT,WAAQU,IACnCA,EAAUC,aAAaC,IACD,kBAAjBA,EAAOC,QAIPD,EAAOE,OAASF,EAAOE,MAAMC,QAIjCH,EAAOlB,YAAYK,EAAeiB,MAAM,YAEvCC,YAAYb,EAAKE,UAEpBE,EAAmBb,OAAOc,GACzB,MAAOS,GAER,YADAd,EAAKe,KAAKd,EAAQ,8BAA8BD,EAAKE,YAItD,QAAgC,IAArBE,EACV,OAGD,GAAIA,IAAqBJ,EAAKE,SAC7B,OAGD,MAAMU,EAAQZ,EAAKY,MAAM,CAAEV,SAAUE,IAEjCX,EACHO,EAAKgB,OAAOJ,GAEZZ,EAAKV,YAAYsB,MAMrBxB,EAAQ6B,SAAU"}
@@ -0,0 +1,6 @@
1
+ import type { PluginCreator } from 'postcss';
2
+ declare const creator: PluginCreator<{
3
+ preserve?: boolean;
4
+ replaceWith?: string;
5
+ }>;
6
+ export default creator;
package/dist/index.mjs ADDED
@@ -0,0 +1,2 @@
1
+ import e from"postcss-selector-parser";const s=s=>{const t=String(Object(s).replaceWith||"[focus-within]"),r=Boolean(!("preserve"in Object(s))||s.preserve),o=e().astSync(t);return{postcssPlugin:"postcss-focus-within",Rule:(s,{result:t})=>{if(!s.selector.includes(":focus-within"))return;let c;try{const t=e((e=>{e.walkPseudos((e=>{":focus-within"===e.value&&(e.nodes&&e.nodes.length||e.replaceWith(o.clone({})))}))})).processSync(s.selector);c=String(t)}catch(e){return void s.warn(t,`Failed to parse selector : ${s.selector}`)}if(void 0===c)return;if(c===s.selector)return;const n=s.clone({selector:c});r?s.before(n):s.replaceWith(n)}}};s.postcss=!0;export{s as default};
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../src/index.ts"],"sourcesContent":["import parser from 'postcss-selector-parser';\nimport type { PluginCreator } from 'postcss';\n\nconst creator: PluginCreator<{ preserve?: boolean, replaceWith?: string }> = (opts?: { preserve?: boolean, replaceWith?: string }) => {\n\tconst replaceWith = String(Object(opts).replaceWith || '[focus-within]');\n\tconst preserve = Boolean('preserve' in Object(opts) ? opts.preserve : true);\n\tconst replacementAST = parser().astSync(replaceWith);\n\n\treturn {\n\t\tpostcssPlugin: 'postcss-focus-within',\n\t\tRule: (rule, { result })=> {\n\t\t\tif (!rule.selector.includes(':focus-within')) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet modifiedSelector;\n\n\t\t\ttry {\n\t\t\t\tconst modifiedSelectorAST = parser((selectors) => {\n\t\t\t\t\tselectors.walkPseudos((pseudo) => {\n\t\t\t\t\t\tif (pseudo.value !== ':focus-within') {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (pseudo.nodes && pseudo.nodes.length) {\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tpseudo.replaceWith(replacementAST.clone({}));\n\t\t\t\t\t});\n\t\t\t\t}).processSync(rule.selector);\n\n\t\t\t\tmodifiedSelector = String(modifiedSelectorAST);\n\t\t\t} catch (_) {\n\t\t\t\trule.warn(result, `Failed to parse selector : ${rule.selector}`);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof modifiedSelector === 'undefined') {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (modifiedSelector === rule.selector) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst clone = rule.clone({ selector: modifiedSelector });\n\n\t\t\tif (preserve) {\n\t\t\t\trule.before(clone);\n\t\t\t} else {\n\t\t\t\trule.replaceWith(clone);\n\t\t\t}\n\t\t},\n\t};\n};\n\ncreator.postcss = true;\n\nexport default creator;\n\n"],"names":["creator","opts","replaceWith","String","Object","preserve","Boolean","replacementAST","parser","astSync","postcssPlugin","Rule","rule","result","selector","includes","modifiedSelector","modifiedSelectorAST","selectors","walkPseudos","pseudo","value","nodes","length","clone","processSync","_","warn","before","postcss"],"mappings":"6CAGMA,EAAwEC,IAC7E,MAAMC,EAAcC,OAAOC,OAAOH,GAAMC,aAAe,kBACjDG,EAAWC,UAAQ,aAAcF,OAAOH,KAAQA,EAAKI,UACrDE,EAAiBC,IAASC,QAAQP,GAExC,MAAO,CACNQ,cAAe,uBACfC,KAAM,CAACC,GAAQC,OAAAA,MACd,IAAKD,EAAKE,SAASC,SAAS,iBAC3B,OAGD,IAAIC,EAEJ,IACC,MAAMC,EAAsBT,GAAQU,IACnCA,EAAUC,aAAaC,IACD,kBAAjBA,EAAOC,QAIPD,EAAOE,OAASF,EAAOE,MAAMC,QAIjCH,EAAOlB,YAAYK,EAAeiB,MAAM,YAEvCC,YAAYb,EAAKE,UAEpBE,EAAmBb,OAAOc,GACzB,MAAOS,GAER,YADAd,EAAKe,KAAKd,EAAQ,8BAA8BD,EAAKE,YAItD,QAAgC,IAArBE,EACV,OAGD,GAAIA,IAAqBJ,EAAKE,SAC7B,OAGD,MAAMU,EAAQZ,EAAKY,MAAM,CAAEV,SAAUE,IAEjCX,EACHO,EAAKgB,OAAOJ,GAEZZ,EAAKV,YAAYsB,MAMrBxB,EAAQ6B,SAAU"}
package/package.json CHANGED
@@ -1,47 +1,44 @@
1
1
  {
2
2
  "name": "postcss-focus-within",
3
- "version": "3.0.0",
3
+ "version": "5.0.2",
4
4
  "description": "Use the :focus-within pseudo-selector in CSS",
5
5
  "author": "Jonathan Neal <jonathantneal@hotmail.com>",
6
6
  "license": "CC0-1.0",
7
- "repository": "jonathantneal/postcss-focus-within",
8
- "homepage": "https://github.com/jonathantneal/postcss-focus-within#readme",
9
- "bugs": "https://github.com/jonathantneal/postcss-focus-within/issues",
10
- "main": "index.cjs.js",
11
- "module": "index.es.mjs",
7
+ "homepage": "https://github.com/csstools/postcss-plugins/tree/main/plugins/postcss-focus-within#readme",
8
+ "bugs": "https://github.com/csstools/postcss-plugins/issues",
9
+ "main": "dist/index.cjs",
10
+ "module": "dist/index.mjs",
11
+ "types": "dist/index.d.ts",
12
12
  "files": [
13
- "index.cjs.js",
14
- "index.cjs.js.map",
15
- "index.es.mjs",
16
- "index.es.mjs.map"
13
+ "CHANGELOG.md",
14
+ "INSTALL.md",
15
+ "LICENSE.md",
16
+ "README.md",
17
+ "dist"
17
18
  ],
19
+ "bin": {
20
+ "postcss-focus-within": "dist/cli.mjs"
21
+ },
18
22
  "scripts": {
19
- "prepublishOnly": "npm test",
20
- "pretest": "rollup -c .rollup.js --silent",
21
- "test": "echo 'Running tests...'; npm run test:js && npm run test:tape",
22
- "test:js": "eslint *.js --cache --ignore-path .gitignore --quiet",
23
- "test:tape": "postcss-tape"
23
+ "build": "rollup -c ../../rollup/default.js",
24
+ "clean": "node -e \"fs.rmSync('./dist', { recursive: true, force: true });\"",
25
+ "lint": "eslint ./src --ext .js --ext .ts --ext .mjs --no-error-on-unmatched-pattern",
26
+ "prepublishOnly": "npm run clean && npm run build && npm run test",
27
+ "stryker": "stryker run --logLevel error",
28
+ "test": "postcss-tape --ci"
24
29
  },
25
30
  "engines": {
26
- "node": ">=6.0.0"
31
+ "node": "^12 || ^14 || >=16"
27
32
  },
28
33
  "dependencies": {
29
- "postcss": "^7.0.2"
34
+ "postcss-selector-parser": "^6.0.7"
30
35
  },
31
36
  "devDependencies": {
32
- "@babel/core": "^7.0.0",
33
- "@babel/preset-env": "^7.0.0",
34
- "babel-eslint": "^9.0.0",
35
- "eslint": "^5.6.0",
36
- "eslint-config-dev": "2.0.0",
37
- "postcss-tape": "2.2.0",
38
- "pre-commit": "^1.2.2",
39
- "rollup": "^0.66.0",
40
- "rollup-plugin-babel": "^4.0.1"
37
+ "postcss": "^8.3.6",
38
+ "postcss-tape": "^6.0.1"
41
39
  },
42
- "eslintConfig": {
43
- "extends": "dev",
44
- "parser": "babel-eslint"
40
+ "peerDependencies": {
41
+ "postcss": "^8.3"
45
42
  },
46
43
  "keywords": [
47
44
  "postcss",
@@ -56,5 +53,10 @@
56
53
  "a11y",
57
54
  "descendants",
58
55
  "ancestors"
59
- ]
56
+ ],
57
+ "repository": {
58
+ "type": "git",
59
+ "url": "https://github.com/csstools/postcss-plugins.git",
60
+ "directory": "plugins/postcss-focus-within"
61
+ }
60
62
  }
package/index.cjs.js DELETED
@@ -1,30 +0,0 @@
1
- 'use strict';
2
-
3
- function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
4
-
5
- var postcss = _interopDefault(require('postcss'));
6
-
7
- const selectorRegExp = /:focus-within([^\w-]|$)/gi;
8
- var index = postcss.plugin('postcss-focus-within', opts => {
9
- const replaceWith = String(Object(opts).replaceWith || '[focus-within]');
10
- const preserve = Boolean('preserve' in Object(opts) ? opts.preserve : true);
11
- return root => {
12
- root.walkRules(selectorRegExp, rule => {
13
- const selector = rule.selector.replace(selectorRegExp, ($0, $1) => {
14
- return `${replaceWith}${$1}`;
15
- });
16
- const clone = rule.clone({
17
- selector
18
- });
19
-
20
- if (preserve) {
21
- rule.before(clone);
22
- } else {
23
- rule.replaceWith(clone);
24
- }
25
- });
26
- };
27
- });
28
-
29
- module.exports = index;
30
- //# sourceMappingURL=index.cjs.js.map
package/index.cjs.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs.js","sources":["index.js"],"sourcesContent":["import postcss from 'postcss';\n\nconst selectorRegExp = /:focus-within([^\\w-]|$)/gi;\n\nexport default postcss.plugin('postcss-focus-within', opts => {\n\tconst replaceWith = String(Object(opts).replaceWith || '[focus-within]');\n\tconst preserve = Boolean('preserve' in Object(opts) ? opts.preserve : true);\n\n\treturn root => {\n\t\troot.walkRules(selectorRegExp, rule => {\n\t\t\tconst selector = rule.selector.replace(selectorRegExp, ($0, $1) => {\n\t\t\t\treturn `${replaceWith}${$1}`;\n\t\t\t});\n\n\t\t\tconst clone = rule.clone({ selector });\n\n\t\t\tif (preserve) {\n\t\t\t\trule.before(clone);\n\t\t\t} else {\n\t\t\t\trule.replaceWith(clone);\n\t\t\t}\n\t\t});\n\t};\n});\n"],"names":["selectorRegExp","postcss","plugin","opts","replaceWith","String","Object","preserve","Boolean","root","walkRules","rule","selector","replace","$0","$1","clone","before"],"mappings":";;;;;;AAEA,MAAMA,cAAc,GAAG,2BAAvB;AAEA,YAAeC,OAAO,CAACC,MAAR,CAAe,sBAAf,EAAuCC,IAAI,IAAI;QACvDC,WAAW,GAAGC,MAAM,CAACC,MAAM,CAACH,IAAD,CAAN,CAAaC,WAAb,IAA4B,gBAA7B,CAA1B;QACMG,QAAQ,GAAGC,OAAO,CAAC,cAAcF,MAAM,CAACH,IAAD,CAApB,GAA6BA,IAAI,CAACI,QAAlC,GAA6C,IAA9C,CAAxB;SAEOE,IAAI,IAAI;IACdA,IAAI,CAACC,SAAL,CAAeV,cAAf,EAA+BW,IAAI,IAAI;YAChCC,QAAQ,GAAGD,IAAI,CAACC,QAAL,CAAcC,OAAd,CAAsBb,cAAtB,EAAsC,CAACc,EAAD,EAAKC,EAAL,KAAY;eAC1D,GAAEX,WAAY,GAAEW,EAAG,EAA3B;OADgB,CAAjB;YAIMC,KAAK,GAAGL,IAAI,CAACK,KAAL,CAAW;QAAEJ;OAAb,CAAd;;UAEIL,QAAJ,EAAc;QACbI,IAAI,CAACM,MAAL,CAAYD,KAAZ;OADD,MAEO;QACNL,IAAI,CAACP,WAAL,CAAiBY,KAAjB;;KAVF;GADD;CAJc,CAAf;;;;"}
package/index.es.mjs DELETED
@@ -1,26 +0,0 @@
1
- import postcss from 'postcss';
2
-
3
- const selectorRegExp = /:focus-within([^\w-]|$)/gi;
4
- var index = postcss.plugin('postcss-focus-within', opts => {
5
- const replaceWith = String(Object(opts).replaceWith || '[focus-within]');
6
- const preserve = Boolean('preserve' in Object(opts) ? opts.preserve : true);
7
- return root => {
8
- root.walkRules(selectorRegExp, rule => {
9
- const selector = rule.selector.replace(selectorRegExp, ($0, $1) => {
10
- return `${replaceWith}${$1}`;
11
- });
12
- const clone = rule.clone({
13
- selector
14
- });
15
-
16
- if (preserve) {
17
- rule.before(clone);
18
- } else {
19
- rule.replaceWith(clone);
20
- }
21
- });
22
- };
23
- });
24
-
25
- export default index;
26
- //# sourceMappingURL=index.es.mjs.map
package/index.es.mjs.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.es.mjs","sources":["index.js"],"sourcesContent":["import postcss from 'postcss';\n\nconst selectorRegExp = /:focus-within([^\\w-]|$)/gi;\n\nexport default postcss.plugin('postcss-focus-within', opts => {\n\tconst replaceWith = String(Object(opts).replaceWith || '[focus-within]');\n\tconst preserve = Boolean('preserve' in Object(opts) ? opts.preserve : true);\n\n\treturn root => {\n\t\troot.walkRules(selectorRegExp, rule => {\n\t\t\tconst selector = rule.selector.replace(selectorRegExp, ($0, $1) => {\n\t\t\t\treturn `${replaceWith}${$1}`;\n\t\t\t});\n\n\t\t\tconst clone = rule.clone({ selector });\n\n\t\t\tif (preserve) {\n\t\t\t\trule.before(clone);\n\t\t\t} else {\n\t\t\t\trule.replaceWith(clone);\n\t\t\t}\n\t\t});\n\t};\n});\n"],"names":["selectorRegExp","postcss","plugin","opts","replaceWith","String","Object","preserve","Boolean","root","walkRules","rule","selector","replace","$0","$1","clone","before"],"mappings":";;AAEA,MAAMA,cAAc,GAAG,2BAAvB;AAEA,YAAeC,OAAO,CAACC,MAAR,CAAe,sBAAf,EAAuCC,IAAI,IAAI;QACvDC,WAAW,GAAGC,MAAM,CAACC,MAAM,CAACH,IAAD,CAAN,CAAaC,WAAb,IAA4B,gBAA7B,CAA1B;QACMG,QAAQ,GAAGC,OAAO,CAAC,cAAcF,MAAM,CAACH,IAAD,CAApB,GAA6BA,IAAI,CAACI,QAAlC,GAA6C,IAA9C,CAAxB;SAEOE,IAAI,IAAI;IACdA,IAAI,CAACC,SAAL,CAAeV,cAAf,EAA+BW,IAAI,IAAI;YAChCC,QAAQ,GAAGD,IAAI,CAACC,QAAL,CAAcC,OAAd,CAAsBb,cAAtB,EAAsC,CAACc,EAAD,EAAKC,EAAL,KAAY;eAC1D,GAAEX,WAAY,GAAEW,EAAG,EAA3B;OADgB,CAAjB;YAIMC,KAAK,GAAGL,IAAI,CAACK,KAAL,CAAW;QAAEJ;OAAb,CAAd;;UAEIL,QAAJ,EAAc;QACbI,IAAI,CAACM,MAAL,CAAYD,KAAZ;OADD,MAEO;QACNL,IAAI,CAACP,WAAL,CAAiBY,KAAjB;;KAVF;GADD;CAJc,CAAf;;;;"}