@master/css-compiler 2.0.0-beta.13 → 2.0.0-beta.131

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/README.md CHANGED
@@ -1,80 +1,158 @@
1
- <br><br>
1
+ <br>
2
2
  <div align="center">
3
3
 
4
4
  <p align="center">
5
- <img src="https://raw.githubusercontent.com/master-co/package/document/images/logo-and-text.svg" alt="logo" width="142">
5
+ <a href="https://css.master.co">
6
+ <picture>
7
+ <source media="(prefers-color-scheme: dark)" srcset="https://user-images.githubusercontent.com/33840671/201701649-3bb7d698-abec-4d5f-ac30-ccc4d7bafcd4.svg">
8
+ <source media="(prefers-color-scheme: light)" srcset="https://user-images.githubusercontent.com/33840671/201703010-77bf2373-9899-40cc-98f5-30cf9b546941.svg">
9
+ <img alt="Master CSS" src="https://user-images.githubusercontent.com/33840671/201703010-77bf2373-9899-40cc-98f5-30cf9b546941.svg" width="100%">
10
+ </picture>
11
+ </a>
6
12
  </p>
13
+ <p align="center">The ahead-of-time compiler of Master CSS</p>
14
+
7
15
  <p align="center">
8
- <b><!-- name -->CSS Compiler<!----></b>
16
+ <a aria-label="overview" href="https://github.com/master-co/css/tree/beta">
17
+ <picture>
18
+ <source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/badge/%E2%AC%85%20back-%20?color=212022&style=for-the-badge">
19
+ <source media="(prefers-color-scheme: light)" srcset="https://img.shields.io/badge/%E2%AC%85%20back-%20?color=f6f7f8&style=for-the-badge">
20
+ <img alt="NPM Version" src="https://img.shields.io/badge/%E2%AC%85%20back-%20?color=f6f7f8&style=for-the-badge">
21
+ </picture>
22
+ </a>
23
+ <a aria-label="GitHub release (latest by date including pre-releases)" href="https://github.com/master-co/css/releases">
24
+ <picture>
25
+ <source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/github/v/release/master-co/css?include_prereleases&color=212022&label=&style=for-the-badge&logo=github&logoColor=fff">
26
+ <source media="(prefers-color-scheme: light)" srcset="https://img.shields.io/github/v/release/master-co/css?include_prereleases&color=f6f7f8&label=&style=for-the-badge&logo=github&logoColor=%23000">
27
+ <img alt="NPM Version" src="https://img.shields.io/github/v/release/master-co/css?include_prereleases&color=f6f7f8&label=&style=for-the-badge&logo=github">
28
+ </picture>
29
+ </a>
30
+ <a aria-label="NPM Package" href="https://www.npmjs.com/package/@master/css-compiler">
31
+ <picture>
32
+ <source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/npm/dm/@master/css-compiler?color=212022&label=%20&logo=npm&style=for-the-badge">
33
+ <source media="(prefers-color-scheme: light)" srcset="https://img.shields.io/npm/dm/@master/css-compiler?color=f6f7f8&label=%20&logo=npm&style=for-the-badge">
34
+ <img alt="NPM package ( download / month )" src="https://img.shields.io/npm/dm/@master/css-compiler?color=f6f7f8&label=%20&logo=npm&style=for-the-badge">
35
+ </picture>
36
+ </a>
37
+ <a aria-label="Discord Community" href="https://discord.gg/sZNKpAAAw6">
38
+ <picture>
39
+ <source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/discord/917780624314613760?color=212022&label=%20&logo=discord&style=for-the-badge">
40
+ <source media="(prefers-color-scheme: light)" srcset="https://img.shields.io/discord/917780624314613760?color=f6f7f8&label=%20&logo=discord&style=for-the-badge">
41
+ <img alt="Discord online" src="https://img.shields.io/discord/917780624314613760?color=f6f7f8&label=%20&logo=discord&style=for-the-badge">
42
+ </picture>
43
+ </a>
44
+ <a aria-label="Follow @mastercorg" href="https://twitter.com/mastercorg">
45
+ <picture>
46
+ <source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/static/v1?label=%20&message=twitter&color=212022&logo=twitter&style=for-the-badge">
47
+ <source media="(prefers-color-scheme: light)" srcset="https://img.shields.io/static/v1?label=%20&message=twitter&color=f6f7f8&logo=twitter&style=for-the-badge">
48
+ <img alt="Follow @mastercorg" src="https://img.shields.io/static/v1?label=%20&message=twitter&color=f6f7f8&logo=twitter&style=for-the-badge">
49
+ </picture>
50
+ </a>
51
+ <a aria-label="Github Actions" href="https://github.com/1aron/repo/actions/workflows/release.yml">
52
+ <picture>
53
+ <source media="(prefers-color-scheme: dark)" srcset="https://img.shields.io/github/actions/workflow/status/master-co/css/release.yml?branch=beta&label=%20&message=twitter&color=212022&logo=githubactions&style=for-the-badge">
54
+ <source media="(prefers-color-scheme: light)" srcset="https://img.shields.io/github/actions/workflow/status/master-co/css/release.yml?branch=beta&label=%20&message=twitter&color=f6f7f8&logo=githubactions&style=for-the-badge&logoColor=%23000">
55
+ <img alt="Github release actions" src="https://img.shields.io/github/actions/workflow/status/master-co/css/release.yml?branch=beta&label=%20&message=twitter&color=f6f7f8&logo=githubactions&style=for-the-badge&logoColor=%23000">
56
+ </picture>
57
+ </a>
9
58
  </p>
10
- <p align="center"><!-- package.description -->Compile Master CSS ahead of time with zero-configuration integration with build tools<!----></p>
11
-
12
- [![MIT License](https://flat.badgen.net/github/license/master-co/css?color=yellow)](https://github.com/master-co/css-compiler/blob/main/LICENSE)
13
- [![Latest Release](https://flat.badgen.net/npm/v/@master/css-compiler?icon=npm&label&color=yellow)](https://www.npmjs.com/package/@master/css-compiler)
14
- [![Documentation](https://flat.badgen.net/badge/icon/Documentation?icon=awesome&label&color=yellow)](https://css.master.co)
15
- [![Github](https://flat.badgen.net/badge/icon/master-co%2Fcss-compiler?icon=github&label&color=yellow)](https://github.com/master-co/css)
16
- [![Discord](https://flat.badgen.net/badge/icon/discord?icon=discord&label&color=yellow)](https://discord.gg/sZNKpAAAw6)
17
- [![CI](https://flat.badgen.net/github/status/master-co/css-compiler/main/ci/circleci?icon=circleci)](https://circleci.com/gh/master-co/workflows/css-compiler/tree/main)
18
59
 
19
60
  </div>
20
61
 
21
- ##### On this page
62
+ ## Usage
63
+ ```bash
64
+ npm install @master/css-compiler
65
+ ```
22
66
 
23
- - [Usage](#usage)
24
- - [`webpack.config.js`](#webpackconfigjs)
25
- - [`vite.config.js`](#viteconfigjs)
26
- - [`next.config.js`](#nextconfigjs)
27
- - [Related](#related)
67
+ ```ts
68
+ const compiler = await new MasterCSSCompiler()
69
+ ```
28
70
 
29
- ---
71
+ ## Options
72
+ ```ts
73
+ {
74
+ // specify virtual CSS module id (e.g. virtual:master.css)
75
+ module: 'master.css',
76
+ // specify config file path or set `Config`
77
+ config: 'master.css.*',
78
+ // forcibly specify sources for scanning, not excluded by `options.exclude`
79
+ sources: [],
80
+ // specify sources for scanning
81
+ include: ['**/*.{html,js,jsx,ts,tsx,svelte,astro,vue,md,mdx,pug,php}'],
82
+ // specify sources to exclude
83
+ exclude: [
84
+ '**/node_modules/**',
85
+ '**/*.d.ts',
86
+ '**/*.test.*',
87
+ 'node_modules',
88
+ 'master.css.{js,ts,mjs,cjs}',
89
+ 'dist',
90
+ 'out',
91
+ 'README.md'
92
+ ],
93
+ classes: {
94
+ // whitelist of class names for unpredictable dynamics
95
+ fixed: [],
96
+ // blacklist of class names to exclude accidentally captured
97
+ ignored: [] // or RegExp[]
98
+ },
99
+ cwd: process.cwd()
100
+ }
101
+ ```
30
102
 
31
- # Usage
103
+ ## Methods
32
104
 
33
- ## `webpack.config.js`
34
- ```js
35
- const { MasterCSSWebpackPlugin } = require('@master/css-compiler')
105
+ ```ts
106
+ // Reload the compiler and MasterCSS
107
+ refresh(): this
108
+ ```
36
109
 
37
- module.exports = {
38
- plugins: [
39
- new MasterCSSWebpackPlugin()
40
- ]
41
- };
110
+ ```ts
111
+ // Scan sources, extract class names, and generate CSS rules
112
+ compile()
42
113
  ```
43
114
 
44
- ## `vite.config.js`
45
- ```js
46
- import { MasterCSSVitePlugin } from '@master/css-compiler'
115
+ ```ts
116
+ // Extract potential class names from the given file content
117
+ extract(name: string, content: string): string[]
118
+ ```
47
119
 
48
- export default defineConfig({
49
- plugins: [
50
- MasterCSSVitePlugin()
51
- ]
52
- })
120
+ ```ts
121
+ // `extract(name, content)`, insert extractions, and generate CSS rules
122
+ insert(name: string, content: string): boolean
53
123
  ```
54
124
 
55
- ## `next.config.js`
56
- ```js
57
- const { MasterCSSWebpackPlugin } = require('@master/css-compiler')
58
-
59
- const nextConfig = {
60
- ...,
61
- webpack: (config) => {
62
- config.plugins.push(
63
- new MasterCSSWebpackPlugin({
64
- output: {
65
- path: 'static/css'
66
- }
67
- })
68
- )
69
- return config
70
- }
71
- }
125
+ ```ts
126
+ // Read file source paths by `options.include` and `options.exclude`
127
+ get sources(): string[]
128
+ ```
72
129
 
73
- module.exports = nextConfig
130
+ ```ts
131
+ // Check source file path by `options.include` and `options.exclude`
132
+ checkSourcePath(name: string): boolean
74
133
  ```
75
134
 
76
- ---
135
+ ```ts
136
+ // Read user config file by `options.config`
137
+ readConfig(): Config
138
+ ```
77
139
 
78
- # Related
79
- - [@master/css](https://github.com/master-co/css) - A Virtual CSS language with enhanced syntax. ( ~13KB )
80
- - [@master/css.react](https://github.com/master-co/css.react) - React hooks for Master CSS
140
+ ```ts
141
+ // Get user config path
142
+ get configPath(): string
143
+ ```
144
+
145
+ ```ts
146
+ // Get resolved user config path
147
+ get resolvedConfigPath(): string
148
+ ```
149
+
150
+ ## Properties
151
+
152
+ ```ts
153
+ export default class MasterCSSCompiler {
154
+ css: MasterCSS
155
+ extractions = new Set<string>()
156
+ ...
157
+ }
158
+ ```
@@ -0,0 +1,11 @@
1
+ var be=Object.create;var T=Object.defineProperty;var me=Object.getOwnPropertyDescriptor;var ve=Object.getOwnPropertyNames;var ye=Object.getPrototypeOf,we=Object.prototype.hasOwnProperty;var ke=(h,u)=>{for(var a in u)T(h,a,{get:u[a],enumerable:!0})},Z=(h,u,a,f)=>{if(u&&typeof u=="object"||typeof u=="function")for(let s of ve(u))!we.call(h,s)&&s!==a&&T(h,s,{get:()=>u[s],enumerable:!(f=me(u,s))||f.enumerable});return h};var R=(h,u,a)=>(a=h!=null?be(ye(h)):{},Z(u||!h||!h.__esModule?T(a,"default",{value:h,enumerable:!0}):a,h)),Oe=h=>Z(T({},"__esModule",{value:!0}),h);var at={};ke(at,{MasterCSSCompiler:()=>K});module.exports=Oe(at);var D=R(require("upath")),Y=R(require("./options")),V=R(require("@master/css")),U=require("perf_hooks"),ge=R(require("./extract")),fe=R(require("fs")),H=R(require("fast-glob")),_=R(require("minimatch")),de=R(require("techor"));var xe=Object.create,ae=Object.defineProperty,$e=Object.getOwnPropertyDescriptor,Me=Object.getOwnPropertyNames,Ce=Object.getPrototypeOf,je=Object.prototype.hasOwnProperty,Q=(h=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(h,{get:(u,a)=>(typeof require<"u"?require:u)[a]}):h)(function(h){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+h+'" is not supported')}),E=(h,u)=>()=>(u||h((u={exports:{}}).exports,u),u.exports),Ee=(h,u,a,f)=>{if(u&&typeof u=="object"||typeof u=="function")for(let s of Me(u))!je.call(h,s)&&s!==a&&ae(h,s,{get:()=>u[s],enumerable:!(f=$e(u,s))||f.enumerable});return h},x=(h,u,a)=>(a=h!=null?xe(Ce(h)):{},Ee(u||!h||!h.s?ae(a,"default",{value:h,enumerable:!0}):a,h)),Be=E((h,u)=>{"use strict";u.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}}),ie=E((h,u)=>{var a=Be(),f={};for(let t of Object.keys(a))f[a[t]]=t;var s={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};u.exports=s;for(let t of Object.keys(s)){if(!("channels"in s[t]))throw new Error("missing channels property: "+t);if(!("labels"in s[t]))throw new Error("missing channel labels property: "+t);if(s[t].labels.length!==s[t].channels)throw new Error("channel and label counts mismatch: "+t);let{channels:l,labels:e}=s[t];delete s[t].channels,delete s[t].labels,Object.defineProperty(s[t],"channels",{value:l}),Object.defineProperty(s[t],"labels",{value:e})}s.rgb.hsl=function(t){let l=t[0]/255,e=t[1]/255,r=t[2]/255,n=Math.min(l,e,r),o=Math.max(l,e,r),i=o-n,c,g;o===n?c=0:l===o?c=(e-r)/i:e===o?c=2+(r-l)/i:r===o&&(c=4+(l-e)/i),c=Math.min(c*60,360),c<0&&(c+=360);let p=(n+o)/2;return o===n?g=0:p<=.5?g=i/(o+n):g=i/(2-o-n),[c,g*100,p*100]},s.rgb.hsv=function(t){let l,e,r,n,o,i=t[0]/255,c=t[1]/255,g=t[2]/255,p=Math.max(i,c,g),m=p-Math.min(i,c,g),k=function(j){return(p-j)/6/m+1/2};return m===0?(n=0,o=0):(o=m/p,l=k(i),e=k(c),r=k(g),i===p?n=r-e:c===p?n=1/3+l-r:g===p&&(n=2/3+e-l),n<0?n+=1:n>1&&(n-=1)),[n*360,o*100,p*100]},s.rgb.hwb=function(t){let l=t[0],e=t[1],r=t[2],n=s.rgb.hsl(t)[0],o=1/255*Math.min(l,Math.min(e,r));return r=1-1/255*Math.max(l,Math.max(e,r)),[n,o*100,r*100]},s.rgb.cmyk=function(t){let l=t[0]/255,e=t[1]/255,r=t[2]/255,n=Math.min(1-l,1-e,1-r),o=(1-l-n)/(1-n)||0,i=(1-e-n)/(1-n)||0,c=(1-r-n)/(1-n)||0;return[o*100,i*100,c*100,n*100]};function d(t,l){return(t[0]-l[0])**2+(t[1]-l[1])**2+(t[2]-l[2])**2}s.rgb.keyword=function(t){let l=f[t];if(l)return l;let e=1/0,r;for(let n of Object.keys(a)){let o=a[n],i=d(t,o);i<e&&(e=i,r=n)}return r},s.keyword.rgb=function(t){return a[t]},s.rgb.xyz=function(t){let l=t[0]/255,e=t[1]/255,r=t[2]/255;l=l>.04045?((l+.055)/1.055)**2.4:l/12.92,e=e>.04045?((e+.055)/1.055)**2.4:e/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92;let n=l*.4124+e*.3576+r*.1805,o=l*.2126+e*.7152+r*.0722,i=l*.0193+e*.1192+r*.9505;return[n*100,o*100,i*100]},s.rgb.lab=function(t){let l=s.rgb.xyz(t),e=l[0],r=l[1],n=l[2];e/=95.047,r/=100,n/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116;let o=116*r-16,i=500*(e-r),c=200*(r-n);return[o,i,c]},s.hsl.rgb=function(t){let l=t[0]/360,e=t[1]/100,r=t[2]/100,n,o,i;if(e===0)return i=r*255,[i,i,i];r<.5?n=r*(1+e):n=r+e-r*e;let c=2*r-n,g=[0,0,0];for(let p=0;p<3;p++)o=l+1/3*-(p-1),o<0&&o++,o>1&&o--,6*o<1?i=c+(n-c)*6*o:2*o<1?i=n:3*o<2?i=c+(n-c)*(2/3-o)*6:i=c,g[p]=i*255;return g},s.hsl.hsv=function(t){let l=t[0],e=t[1]/100,r=t[2]/100,n=e,o=Math.max(r,.01);r*=2,e*=r<=1?r:2-r,n*=o<=1?o:2-o;let i=(r+e)/2,c=r===0?2*n/(o+n):2*e/(r+e);return[l,c*100,i*100]},s.hsv.rgb=function(t){let l=t[0]/60,e=t[1]/100,r=t[2]/100,n=Math.floor(l)%6,o=l-Math.floor(l),i=255*r*(1-e),c=255*r*(1-e*o),g=255*r*(1-e*(1-o));switch(r*=255,n){case 0:return[r,g,i];case 1:return[c,r,i];case 2:return[i,r,g];case 3:return[i,c,r];case 4:return[g,i,r];case 5:return[r,i,c]}},s.hsv.hsl=function(t){let l=t[0],e=t[1]/100,r=t[2]/100,n=Math.max(r,.01),o,i;i=(2-e)*r;let c=(2-e)*n;return o=e*n,o/=c<=1?c:2-c,o=o||0,i/=2,[l,o*100,i*100]},s.hwb.rgb=function(t){let l=t[0]/360,e=t[1]/100,r=t[2]/100,n=e+r,o;n>1&&(e/=n,r/=n);let i=Math.floor(6*l),c=1-r;o=6*l-i,i&1&&(o=1-o);let g=e+o*(c-e),p,m,k;switch(i){default:case 6:case 0:p=c,m=g,k=e;break;case 1:p=g,m=c,k=e;break;case 2:p=e,m=c,k=g;break;case 3:p=e,m=g,k=c;break;case 4:p=g,m=e,k=c;break;case 5:p=c,m=e,k=g;break}return[p*255,m*255,k*255]},s.cmyk.rgb=function(t){let l=t[0]/100,e=t[1]/100,r=t[2]/100,n=t[3]/100,o=1-Math.min(1,l*(1-n)+n),i=1-Math.min(1,e*(1-n)+n),c=1-Math.min(1,r*(1-n)+n);return[o*255,i*255,c*255]},s.xyz.rgb=function(t){let l=t[0]/100,e=t[1]/100,r=t[2]/100,n,o,i;return n=l*3.2406+e*-1.5372+r*-.4986,o=l*-.9689+e*1.8758+r*.0415,i=l*.0557+e*-.204+r*1.057,n=n>.0031308?1.055*n**(1/2.4)-.055:n*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,i=i>.0031308?1.055*i**(1/2.4)-.055:i*12.92,n=Math.min(Math.max(0,n),1),o=Math.min(Math.max(0,o),1),i=Math.min(Math.max(0,i),1),[n*255,o*255,i*255]},s.xyz.lab=function(t){let l=t[0],e=t[1],r=t[2];l/=95.047,e/=100,r/=108.883,l=l>.008856?l**(1/3):7.787*l+16/116,e=e>.008856?e**(1/3):7.787*e+16/116,r=r>.008856?r**(1/3):7.787*r+16/116;let n=116*e-16,o=500*(l-e),i=200*(e-r);return[n,o,i]},s.lab.xyz=function(t){let l=t[0],e=t[1],r=t[2],n,o,i;o=(l+16)/116,n=e/500+o,i=o-r/200;let c=o**3,g=n**3,p=i**3;return o=c>.008856?c:(o-16/116)/7.787,n=g>.008856?g:(n-16/116)/7.787,i=p>.008856?p:(i-16/116)/7.787,n*=95.047,o*=100,i*=108.883,[n,o,i]},s.lab.lch=function(t){let l=t[0],e=t[1],r=t[2],n;n=Math.atan2(r,e)*360/2/Math.PI,n<0&&(n+=360);let o=Math.sqrt(e*e+r*r);return[l,o,n]},s.lch.lab=function(t){let l=t[0],e=t[1],r=t[2]/360*2*Math.PI,n=e*Math.cos(r),o=e*Math.sin(r);return[l,n,o]},s.rgb.ansi16=function(t,l=null){let[e,r,n]=t,o=l===null?s.rgb.hsv(t)[2]:l;if(o=Math.round(o/50),o===0)return 30;let i=30+(Math.round(n/255)<<2|Math.round(r/255)<<1|Math.round(e/255));return o===2&&(i+=60),i},s.hsv.ansi16=function(t){return s.rgb.ansi16(s.hsv.rgb(t),t[2])},s.rgb.ansi256=function(t){let l=t[0],e=t[1],r=t[2];return l===e&&e===r?l<8?16:l>248?231:Math.round((l-8)/247*24)+232:16+36*Math.round(l/255*5)+6*Math.round(e/255*5)+Math.round(r/255*5)},s.ansi16.rgb=function(t){let l=t%10;if(l===0||l===7)return t>50&&(l+=3.5),l=l/10.5*255,[l,l,l];let e=(~~(t>50)+1)*.5,r=(l&1)*e*255,n=(l>>1&1)*e*255,o=(l>>2&1)*e*255;return[r,n,o]},s.ansi256.rgb=function(t){if(t>=232){let o=(t-232)*10+8;return[o,o,o]}t-=16;let l,e=Math.floor(t/36)/5*255,r=Math.floor((l=t%36)/6)/5*255,n=l%6/5*255;return[e,r,n]},s.rgb.hex=function(t){let l=(((Math.round(t[0])&255)<<16)+((Math.round(t[1])&255)<<8)+(Math.round(t[2])&255)).toString(16).toUpperCase();return"000000".substring(l.length)+l},s.hex.rgb=function(t){let l=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!l)return[0,0,0];let e=l[0];l[0].length===3&&(e=e.split("").map(c=>c+c).join(""));let r=parseInt(e,16),n=r>>16&255,o=r>>8&255,i=r&255;return[n,o,i]},s.rgb.hcg=function(t){let l=t[0]/255,e=t[1]/255,r=t[2]/255,n=Math.max(Math.max(l,e),r),o=Math.min(Math.min(l,e),r),i=n-o,c,g;return i<1?c=o/(1-i):c=0,i<=0?g=0:n===l?g=(e-r)/i%6:n===e?g=2+(r-l)/i:g=4+(l-e)/i,g/=6,g%=1,[g*360,i*100,c*100]},s.hsl.hcg=function(t){let l=t[1]/100,e=t[2]/100,r=e<.5?2*l*e:2*l*(1-e),n=0;return r<1&&(n=(e-.5*r)/(1-r)),[t[0],r*100,n*100]},s.hsv.hcg=function(t){let l=t[1]/100,e=t[2]/100,r=l*e,n=0;return r<1&&(n=(e-r)/(1-r)),[t[0],r*100,n*100]},s.hcg.rgb=function(t){let l=t[0]/360,e=t[1]/100,r=t[2]/100;if(e===0)return[r*255,r*255,r*255];let n=[0,0,0],o=l%1*6,i=o%1,c=1-i,g=0;switch(Math.floor(o)){case 0:n[0]=1,n[1]=i,n[2]=0;break;case 1:n[0]=c,n[1]=1,n[2]=0;break;case 2:n[0]=0,n[1]=1,n[2]=i;break;case 3:n[0]=0,n[1]=c,n[2]=1;break;case 4:n[0]=i,n[1]=0,n[2]=1;break;default:n[0]=1,n[1]=0,n[2]=c}return g=(1-e)*r,[(e*n[0]+g)*255,(e*n[1]+g)*255,(e*n[2]+g)*255]},s.hcg.hsv=function(t){let l=t[1]/100,e=t[2]/100,r=l+e*(1-l),n=0;return r>0&&(n=l/r),[t[0],n*100,r*100]},s.hcg.hsl=function(t){let l=t[1]/100,e=t[2]/100*(1-l)+.5*l,r=0;return e>0&&e<.5?r=l/(2*e):e>=.5&&e<1&&(r=l/(2*(1-e))),[t[0],r*100,e*100]},s.hcg.hwb=function(t){let l=t[1]/100,e=t[2]/100,r=l+e*(1-l);return[t[0],(r-l)*100,(1-r)*100]},s.hwb.hcg=function(t){let l=t[1]/100,e=1-t[2]/100,r=e-l,n=0;return r<1&&(n=(e-r)/(1-r)),[t[0],r*100,n*100]},s.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]},s.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]},s.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]},s.gray.hsl=function(t){return[0,0,t[0]]},s.gray.hsv=s.gray.hsl,s.gray.hwb=function(t){return[0,100,t[0]]},s.gray.cmyk=function(t){return[0,0,0,t[0]]},s.gray.lab=function(t){return[t[0],0,0]},s.gray.hex=function(t){let l=Math.round(t[0]/100*255)&255,e=((l<<16)+(l<<8)+l).toString(16).toUpperCase();return"000000".substring(e.length)+e},s.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}}),Re=E((h,u)=>{var a=ie();function f(){let l={},e=Object.keys(a);for(let r=e.length,n=0;n<r;n++)l[e[n]]={distance:-1,parent:null};return l}function s(l){let e=f(),r=[l];for(e[l].distance=0;r.length;){let n=r.pop(),o=Object.keys(a[n]);for(let i=o.length,c=0;c<i;c++){let g=o[c],p=e[g];p.distance===-1&&(p.distance=e[n].distance+1,p.parent=n,r.unshift(g))}}return e}function d(l,e){return function(r){return e(l(r))}}function t(l,e){let r=[e[l].parent,l],n=a[e[l].parent][l],o=e[l].parent;for(;e[o].parent;)r.unshift(e[o].parent),n=d(a[e[o].parent][o],n),o=e[o].parent;return n.conversion=r,n}u.exports=function(l){let e=s(l),r={},n=Object.keys(e);for(let o=n.length,i=0;i<o;i++){let c=n[i];e[c].parent!==null&&(r[c]=t(c,e))}return r}}),Ne=E((h,u)=>{var a=ie(),f=Re(),s={},d=Object.keys(a);function t(e){let r=function(...n){let o=n[0];return o==null?o:(o.length>1&&(n=o),e(n))};return"conversion"in e&&(r.conversion=e.conversion),r}function l(e){let r=function(...n){let o=n[0];if(o==null)return o;o.length>1&&(n=o);let i=e(n);if(typeof i=="object")for(let c=i.length,g=0;g<c;g++)i[g]=Math.round(i[g]);return i};return"conversion"in e&&(r.conversion=e.conversion),r}d.forEach(e=>{s[e]={},Object.defineProperty(s[e],"channels",{value:a[e].channels}),Object.defineProperty(s[e],"labels",{value:a[e].labels});let r=f(e);Object.keys(r).forEach(n=>{let o=r[n];s[e][n]=l(o),s[e][n].raw=t(o)})}),u.exports=s}),Pe=E((h,u)=>{"use strict";var a=(o,i)=>(...c)=>`\x1B[${o(...c)+i}m`,f=(o,i)=>(...c)=>{let g=o(...c);return`\x1B[${38+i};5;${g}m`},s=(o,i)=>(...c)=>{let g=o(...c);return`\x1B[${38+i};2;${g[0]};${g[1]};${g[2]}m`},d=o=>o,t=(o,i,c)=>[o,i,c],l=(o,i,c)=>{Object.defineProperty(o,i,{get:()=>{let g=c();return Object.defineProperty(o,i,{value:g,enumerable:!0,configurable:!0}),g},enumerable:!0,configurable:!0})},e,r=(o,i,c,g)=>{e===void 0&&(e=Ne());let p=g?10:0,m={};for(let[k,j]of Object.entries(e)){let B=k==="ansi16"?"ansi":k;k===i?m[B]=o(c,p):typeof j=="object"&&(m[B]=o(j[i],p))}return m};function n(){let o=new Map,i={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};i.color.gray=i.color.blackBright,i.bgColor.bgGray=i.bgColor.bgBlackBright,i.color.grey=i.color.blackBright,i.bgColor.bgGrey=i.bgColor.bgBlackBright;for(let[c,g]of Object.entries(i)){for(let[p,m]of Object.entries(g))i[p]={open:`\x1B[${m[0]}m`,close:`\x1B[${m[1]}m`},g[p]=i[p],o.set(m[0],m[1]);Object.defineProperty(i,c,{value:g,enumerable:!1})}return Object.defineProperty(i,"codes",{value:o,enumerable:!1}),i.color.close="\x1B[39m",i.bgColor.close="\x1B[49m",l(i.color,"ansi",()=>r(a,"ansi16",d,!1)),l(i.color,"ansi256",()=>r(f,"ansi256",d,!1)),l(i.color,"ansi16m",()=>r(s,"rgb",t,!1)),l(i.bgColor,"ansi",()=>r(a,"ansi16",d,!0)),l(i.bgColor,"ansi256",()=>r(f,"ansi256",d,!0)),l(i.bgColor,"ansi16m",()=>r(s,"rgb",t,!0)),i}Object.defineProperty(u,"exports",{enumerable:!0,get:n})}),Ae=E((h,u)=>{"use strict";u.exports=(a,f=process.argv)=>{let s=a.startsWith("-")?"":a.length===1?"-":"--",d=f.indexOf(s+a),t=f.indexOf("--");return d!==-1&&(t===-1||d<t)}}),Fe=E((h,u)=>{"use strict";var a=Q("os"),f=Q("tty"),s=Ae(),{env:d}=process,t;s("no-color")||s("no-colors")||s("color=false")||s("color=never")?t=0:(s("color")||s("colors")||s("color=true")||s("color=always"))&&(t=1),"FORCE_COLOR"in d&&(d.FORCE_COLOR==="true"?t=1:d.FORCE_COLOR==="false"?t=0:t=d.FORCE_COLOR.length===0?1:Math.min(parseInt(d.FORCE_COLOR,10),3));function l(n){return n===0?!1:{level:n,hasBasic:!0,has256:n>=2,has16m:n>=3}}function e(n,o){if(t===0)return 0;if(s("color=16m")||s("color=full")||s("color=truecolor"))return 3;if(s("color=256"))return 2;if(n&&!o&&t===void 0)return 0;let i=t||0;if(d.TERM==="dumb")return i;if(process.platform==="win32"){let c=a.release().split(".");return Number(c[0])>=10&&Number(c[2])>=10586?Number(c[2])>=14931?3:2:1}if("CI"in d)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(c=>c in d)||d.CI_NAME==="codeship"?1:i;if("TEAMCITY_VERSION"in d)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(d.TEAMCITY_VERSION)?1:0;if(d.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in d){let c=parseInt((d.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(d.TERM_PROGRAM){case"iTerm.app":return c>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(d.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(d.TERM)||"COLORTERM"in d?1:i}function r(n){let o=e(n,n&&n.isTTY);return l(o)}u.exports={supportsColor:r,stdout:l(e(!0,f.isatty(1))),stderr:l(e(!0,f.isatty(2)))}}),Ie=E((h,u)=>{"use strict";var a=(s,d,t)=>{let l=s.indexOf(d);if(l===-1)return s;let e=d.length,r=0,n="";do n+=s.substr(r,l-r)+d+t,r=l+e,l=s.indexOf(d,r);while(l!==-1);return n+=s.substr(r),n},f=(s,d,t,l)=>{let e=0,r="";do{let n=s[l-1]==="\r";r+=s.substr(e,(n?l-1:l)-e)+d+(n?`\r
2
+ `:`
3
+ `)+t,e=l+1,l=s.indexOf(`
4
+ `,e)}while(l!==-1);return r+=s.substr(e),r};u.exports={stringReplaceAll:a,stringEncaseCRLFWithFirstIndex:f}}),Se=E((h,u)=>{"use strict";var a=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,f=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,s=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,d=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,t=new Map([["n",`
5
+ `],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function l(o){let i=o[0]==="u",c=o[1]==="{";return i&&!c&&o.length===5||o[0]==="x"&&o.length===3?String.fromCharCode(parseInt(o.slice(1),16)):i&&c?String.fromCodePoint(parseInt(o.slice(2,-1),16)):t.get(o)||o}function e(o,i){let c=[],g=i.trim().split(/\s*,\s*/g),p;for(let m of g){let k=Number(m);if(!Number.isNaN(k))c.push(k);else if(p=m.match(s))c.push(p[2].replace(d,(j,B,A)=>B?l(B):A));else throw new Error(`Invalid Chalk template style argument: ${m} (in style '${o}')`)}return c}function r(o){f.lastIndex=0;let i=[],c;for(;(c=f.exec(o))!==null;){let g=c[1];if(c[2]){let p=e(g,c[2]);i.push([g].concat(p))}else i.push([g])}return i}function n(o,i){let c={};for(let p of i)for(let m of p.styles)c[m[0]]=p.inverse?null:m.slice(1);let g=o;for(let[p,m]of Object.entries(c))if(Array.isArray(m)){if(!(p in g))throw new Error(`Unknown Chalk style: ${p}`);g=m.length>0?g[p](...m):g[p]}return g}u.exports=(o,i)=>{let c=[],g=[],p=[];if(i.replace(a,(m,k,j,B,A,v)=>{if(k)p.push(l(k));else if(B){let b=p.join("");p=[],g.push(c.length===0?b:n(o,c)(b)),c.push({inverse:j,styles:r(B)})}else if(A){if(c.length===0)throw new Error("Found extraneous } in Chalk template literal");g.push(n(o,c)(p.join(""))),p=[],c.pop()}else p.push(v)}),g.push(p.join("")),c.length>0){let m=`Chalk template literal is missing ${c.length} closing bracket${c.length===1?"":"s"} (\`}\`)`;throw new Error(m)}return g.join("")}}),$=E((h,u)=>{"use strict";var a=Pe(),{stdout:f,stderr:s}=Fe(),{stringReplaceAll:d,stringEncaseCRLFWithFirstIndex:t}=Ie(),l=["ansi","ansi","ansi256","ansi16m"],e=Object.create(null),r=(v,b={})=>{if(b.level&&!(Number.isInteger(b.level)&&b.level>=0&&b.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let y=f?f.level:0;v.level=b.level===void 0?y:b.level},n=class{constructor(v){return o(v)}},o=v=>{let b={};return r(b,v),b.template=(...y)=>B(b.template,...y),Object.setPrototypeOf(b,i.prototype),Object.setPrototypeOf(b.template,b),b.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},b.template.Instance=n,b.template};function i(v){return o(v)}for(let[v,b]of Object.entries(a))e[v]={get(){let y=m(this,p(b.open,b.close,this.r),this.n);return Object.defineProperty(this,v,{value:y}),y}};e.visible={get(){let v=m(this,this.r,!0);return Object.defineProperty(this,"visible",{value:v}),v}};var c=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let v of c)e[v]={get(){let{level:b}=this;return function(...y){let O=p(a.color[l[b]][v](...y),a.color.close,this.r);return m(this,O,this.n)}}};for(let v of c){let b="bg"+v[0].toUpperCase()+v.slice(1);e[b]={get(){let{level:y}=this;return function(...O){let M=p(a.bgColor[l[y]][v](...O),a.bgColor.close,this.r);return m(this,M,this.n)}}}}var g=Object.defineProperties(()=>{},{...e,level:{enumerable:!0,get(){return this.l.level},set(v){this.l.level=v}}}),p=(v,b,y)=>{let O,M;return y===void 0?(O=v,M=b):(O=y.openAll+v,M=b+y.closeAll),{open:v,close:b,openAll:O,closeAll:M,parent:y}},m=(v,b,y)=>{let O=(...M)=>k(O,M.length===1?""+M[0]:M.join(" "));return Object.setPrototypeOf(O,g),O.l=v,O.r=b,O.n=y,O},k=(v,b)=>{if(v.level<=0||!b)return v.n?"":b;let y=v.r;if(y===void 0)return b;let{openAll:O,closeAll:M}=y;if(b.indexOf("\x1B")!==-1)for(;y!==void 0;)b=d(b,y.close,y.open),y=y.parent;let I=b.indexOf(`
6
+ `);return I!==-1&&(b=t(b,M,O,I)),O+b+M},j,B=(v,...b)=>{let[y]=b;if(!Array.isArray(y))return b.join(" ");let O=b.slice(1),M=[y.raw[0]];for(let I=1;I<y.length;I++)M.push(String(O[I-1]).replace(/[{}\\]/g,"\\$&"),String(y.raw[I]));return j===void 0&&(j=Se()),j(v,M.join(""))};Object.defineProperties(i.prototype,e);var A=i();A.supportsColor=f,A.stderr=i({level:s?s.level:0}),A.stderr.supportsColor=s,u.exports=A}),Te=E((h,u)=>{"use strict";function a(f){var s=void 0;typeof f=="string"?s=[f]:s=f.raw;for(var d="",t=0;t<s.length;t++)d+=s[t].replace(/\\\n[ \t]*/g,"").replace(/\\`/g,"`"),t<(arguments.length<=1?0:arguments.length-1)&&(d+=arguments.length<=t+1?void 0:arguments[t+1]);var l=d.split(`
7
+ `),e=null;return l.forEach(function(r){var n=r.match(/^(\s+)\S+/);if(n){var o=n[1].length;e?e=Math.min(e,o):e=o}}),e!==null&&(d=l.map(function(r){return r[0]===" "?r.slice(e):r}).join(`
8
+ `)),d=d.trim(),d.replace(/\\n/g,`
9
+ `)}typeof u<"u"&&(u.exports=a)}),N=(h,u)=>{if(!h)throw new Error(u)},_e=h=>{let u={joined:!0,spacerNoNeighbour:" ",spacerNeighbour:"\u2502 ",keyNoNeighbour:"\u2514\u2500 ",keyNeighbour:"\u251C\u2500 ",separator:": ",renderFn:a=>["boolean","string","number"].includes(typeof a)?a:void 0,sortFn:null,breakCircularWith:" (circular ref.)",...h};return N(Object.keys(u).length===9,"Unexpected Option(s) provided"),N(typeof u.joined=="boolean",'Option "joined" has invalid format'),N(typeof u.spacerNoNeighbour=="string",'Option "spacerNoNeighbour" has invalid format'),N(typeof u.spacerNeighbour=="string",'Option "spacerNeighbour" has invalid format'),N(typeof u.keyNoNeighbour=="string",'Option "keyNoNeighbour" has invalid format'),N(typeof u.keyNeighbour=="string",'Option "keyNeighbour" has invalid format'),N(typeof u.separator=="string",'Option "separator" has invalid format'),N(typeof u.renderFn=="function",'Option "renderFn" has invalid format'),N(typeof u.sortFn=="function"||u.sortFn===null,'Option "sortFn" has invalid format'),N(typeof u.breakCircularWith=="string"||u.breakCircularWith===null,'Option "breakCircularWith" has invalid format'),u},se=(h,u={})=>{let a=_e(u),f=[],s=a.renderFn(h);s!==void 0&&f.push(String(s));let d=r=>a.sortFn===null?r.reverse():r.sort((n,o)=>a.sortFn(o,n)),t=[],l=d(Object.keys(h)).map(r=>[r]),e=[h];for(;l.length!==0;){let r=l.pop(),n=e[r.length-1][r[r.length-1]],o=a.breakCircularWith!==null&&e.includes(n);t[r.length-1]=l.length!==0&&l[l.length-1].length===r.length;let i=a.renderFn(n);f.push([t.slice(0,r.length-1).map(c=>c?a.spacerNeighbour:a.spacerNoNeighbour).join(""),t[r.length-1]?a.keyNeighbour:a.keyNoNeighbour,r[r.length-1],i===void 0?"":`${a.separator}${n}`,o?a.breakCircularWith:""].join("")),n instanceof Object&&!Array.isArray(n)&&!o&&(l.push(...d(Object.keys(n)).map(c=>r.concat(c))),e[r.length]=n)}return a.joined===!0?f.join(`
10
+ `):f},qe=x($()),q=x($()),w=x($());function P(h){return h.split(" ").map(u=>u.replace(/^(\d*\.?\d*)$/g,`${w.default.blue("$1")}`).replace(/^(\d*\.?\d*)(YB|ZB|EB|PB|TB|GB|MB|KB|B|mb|kb|kB|bit|zs|as|fs|ps|ns|µs|ms|s|m|h|d|m|y)$/g,`${w.default.cyan("$1")}${w.default.magenta("$2")}`).replace(/^((?:[0-1]?[0-9]|[2][0-3]):[0-5][0-9]:[0-5][0-9] (?:AM|PM)?)$/g,`${w.default.dim("$1")}`).replace(/^\[(.*?)\]$/g,`${w.default.dim("[")}${w.default.magenta("$1")}${w.default.dim("]")}`).replace(/^`(.*?)`$/g,`${w.default.dim("`")}$1${w.default.dim("`")}`).replace(/^\((.*?)\)$/g,`${w.default.dim("(")}$1${w.default.dim(")")}`).replace(/^<(.*?)>$/g,`${w.default.dim("<")}${w.default.gray("$1")}${w.default.dim(">")}`).replace(/->/g,w.default.dim("\u2192")).replace(/<-/g,w.default.dim("\u2190")).replace(/^\$t$/g,`${w.default.dim(new Date().toLocaleTimeString())}`).replace(/^\*\*(.*?)\*\*$/g,`${w.default.bold.white("$1")}`).replace(/^~~(.*?)~~$/g,`${w.default.strikethrough("$1")}`).replace(/^__(.*?)__$/g,`${w.default.underline("$1")}`).replace(/^\.\.(.*?)\.\.$/g,`${w.default.dim("$1")}`).replace(/^!!(.*?)!!$/g,`${w.default.yellow("$1")}`).replace(/^\*(.*?)\*$/g,`${w.default.italic("$1")}`).replace(/^_(.*?)_$/g,`${w.default.italic("$1")}`).replace(/^\+(.*?)\+$/g,`${w.default.green("$1")}`).replace(/^-(.*?)-$/g,`${w.default.red("$1")}`)).join(" ")}function C(h,u){let a="";if(Array.isArray(h))for(let f=0;f<h.length;f++)a+=L(h[f])+L(u[f]);else a=[h,...u].map(f=>L(f)).join(" ");return P(a)}var L=h=>h?Array.isArray(h)?h.map(u=>{switch(typeof u){case"string":return`'${q.default.yellow(u)}'`;case"number":case"boolean":return q.default.blue(u);default:return u}}).join(q.default.gray(", ")):h:"",X=(h,...u)=>{let a=qe.default.green("+")+" "+C(h,u);return console.log(a),a},Le=x($()),ee=(h,...u)=>{let a=Le.default.bgRed.bold.white(" \u{1D5EB} ERROR ")+" "+C(h,u);return console.log(a),a},te=x($()),ze=(h,...u)=>{let a=te.default.bgYellow.bold.white(" \u26A0\uFE0F CONFLICT ")+" "+te.default.yellow(C(h,u));return console.log(a),a},Ge=x($()),We=(h,...u)=>{let a=Ge.default.green("\u2713 ")+C(h,u);return console.log(a),a},De=x($()),z=(h,...u)=>{let a=De.default.red("-")+" "+C(h,u);return console.log(a),a},Ye=x($()),re=(h,...u)=>{let a=Ye.default.green("\u25CB ")+C(h,u);return console.log(a),a},Ve=x($()),ne=(h,...u)=>{let a=Ve.default.red("\u2717 ")+C(h,u);return console.log(a),a},Ue=x($()),le=(h,...u)=>{let a=Ue.default.cyan("\u{1D4F2}")+" "+C(h,u);return console.log(a),a},He=x($()),Je=(h,...u)=>{let a=He.default.green("\u23FA Success ")+C(h,u);return console.log(a),a},Ke=x($()),Ze=(h,...u)=>{let a=Ke.default.yellow("\u23FA Warn ")+C(h,u);return console.log(a),a},Qe=x($()),Xe=(h,...u)=>{let a=Qe.default.bgGreen.bold.white(" \u2713 PASS ")+" "+C(h,u);return console.log(a),a},et=h=>{let u=se(ce(ue(JSON.parse(JSON.stringify(h)))),{spacerNeighbour:P("..\u2502..")+" ",keyNoNeighbour:P("..\u2514\u2500..")+" ",keyNeighbour:P("..\u251C\u2500..")+" ",separator:P("..:..")+" "});return console.log(u),u};function ue(h){for(let u in h){let a=h[u];typeof a=="object"?a!==null&&!Object.keys(a).length?delete h[u]:h[u]=ue(a):a===void 0&&delete h[u]}return h}function ce(h){for(let u in h){let a=h[u];Array.isArray(a)?h[u]=a.map(f=>P(`**${f}**`)).join(P("..,..")):typeof a=="object"?ce(a):h[u]=P(`**${a}**`)}return h}var tt=x($()),rt=(h,...u)=>{let a=tt.default.red("\u23FA Fail ")+C(h,u);return console.log(a),a},oe=(h,...u)=>{let a=P("$t ")+C(h,u);return console.log(a),a},nt=x(Te()),G=x($());function lt(h){let{message:u,stack:a}=typeof h=="string"?new Error(h):h,f={};return(0,nt.default)(a.replace(u,"").replace(/^Error: /,"")).split(`
11
+ `).forEach(s=>{f[s.split(" ").map(d=>d.replace(/^\((.+)\)$/,`${G.default.cyan("$1")}`).replace(/\./g,`${G.default.dim(".")}`).replace(/^at$/,t=>G.default.dim(t))).join(" ")]=null}),{message:u.trim().replace(/Error: /g,""),stackTree:f}}var S=x($()),he=(h,...u)=>{if(h instanceof Error){let{message:a,stackTree:f}=lt(h);return console.log(""),console.log(S.default.bgRed.bold.white(" \u{1D5EB} ERROR ")+" "+S.default.bold.red(a)),console.log(se(f,{spacerNeighbour:S.default.redBright.dim("\u2502\u2000\u2000"),keyNoNeighbour:S.default.redBright.dim("\u2514\u2500\u2000"),keyNeighbour:S.default.redBright.dim("\u251C\u2500 "),separator:S.default.redBright.dim(":\u2000")})),console.log(""),a}else{let a=C(h,u);return console.log(a),a}};Object.assign(he,{a:X,add:X,d:z,del:z,delete:z,o:re,valid:re,x:ne,invalid:ne,i:le,info:le,e:ee,error:ee,t:oe,timestamp:oe,success:Je,fail:rt,warn:Ze,pass:Xe,conflict:ze,ok:We,tree:et,paint:P});var ot=x($()),F=he,W=ot.default;var pe=R(require("stylelint")),J=R(require("to-extend")),K=class extends de.default{constructor(a){super(Y.default,a);this.customOptions=a;let f=this.readConfig(null);this.options=(0,J.default)(this.options,f?.compilerOptions,a),this.css=f?.css??new V.default(f?.config)}css;extractions=new Set;validExtractions=new Set;invalidExtractions=new Set;logConfigFound=a=>F.ok`**${a}** definition file found`;logConfigNotFound=a=>F.i`No **${a}** definition file found`;get resolvedModuleId(){return"\0"+this.options.module}get moduleHMREvent(){return`HMR:${this.options.module}`}async refresh(){this.extractions.clear(),this.validExtractions.clear(),this.invalidExtractions.clear(),console.log("");let a=this.readConfig(null);return this.css=new V.default(a?.config),this.options=(0,J.default)({cwd:this.options.cwd},Y.default,a?.compilerOptions,this.customOptions),await this.compile(),this}async compile(){if(this.options.classes?.fixed?.length)for(let a of this.options.classes.fixed)this.css.insert(a);return await Promise.all(this.sources.map(async a=>{let f=fe.default.readFileSync(D.default.resolve(this.options.cwd,a),{encoding:"utf-8"}).toString();await this.insert(a,f)})),this}extract(a,f){if(!a||!f||!this.checkSourcePath(a))return[];let s=[];for(let d of(0,ge.default)({content:f,name:a},this.css))this.extractions.has(d)||(this.extractions.add(d),s.push(d));return s}async insert(a,f){let s=this.extract(a,f);if(!s.length)return!1;this.invalidExtractions.size&&(s=s.filter(e=>!this.invalidExtractions.has(e))),this.validExtractions.size&&(s=s.filter(e=>!this.validExtractions.has(e))),this.options.classes?.ignored?.length&&(s=s.filter(e=>{for(let r of this.options.classes.ignored)if(typeof r=="string"){if(r===e)return!1}else if(r.test(e))return!1;return!0}));let d=U.performance.now(),t=[];await Promise.all(s.map(async e=>{let r=await this.createRules(e);r.length?(this.css.insertRules(r),t.push(e),this.validExtractions.add(e)):this.invalidExtractions.add(e)}));let l=Math.round((U.performance.now()-d)*100)/100;if(s.length&&(console.log(""),F`**${D.default.relative(this.options.cwd,a)}**`,F`[extract] ${s.length} potential`),this.css.rules.length){let e=t.filter(r=>!s.includes(r));e.length&&F`[exclude] ${e.length} unknown ${e}`,F`[compile] +${t.length}+ valid inserted ${W.gray("in")} ${l}ms ${t}`,F`[virtual] ${this.css.rules.length} total ${W.gray("in")} ${this.options.module}`}return!0}async createRules(a){return(await Promise.all(this.css.create(a).map(async s=>(await pe.default.lint({code:s.text,cache:!1,config:{rules:{"color-no-invalid-hex":!0,"named-grid-areas-no-invalid":!0,"at-rule-no-unknown":!0,"function-no-unknown":!0,"media-feature-name-no-unknown":!0,"property-no-unknown":!0,"selector-pseudo-class-no-unknown":!0,"selector-pseudo-element-no-unknown":!0,"selector-type-no-unknown":!0,"unit-no-unknown":!0}}})).errored?null:s))).filter(s=>s)}get sources(){let{include:a,exclude:f,sources:s}=this.options,d=H.default.sync(a,{cwd:this.options.cwd,ignore:f});return s?.length&&d.push(...H.default.sync(s,{cwd:this.options.cwd})),d}checkSourcePath(a){let{include:f,exclude:s,sources:d}=this.options;for(let t of d)if((0,_.default)(a,t))return!0;for(let t of f)if(!(0,_.default)(a,t))return!1;for(let t of s)if((0,_.default)(a,t))return!1;return!0}get config(){return this.css.config}};0&&(module.exports={MasterCSSCompiler});
@@ -0,0 +1 @@
1
+ var l=Object.defineProperty;var x=Object.getOwnPropertyDescriptor;var w=Object.getOwnPropertyNames;var E=Object.prototype.hasOwnProperty;var v=(r,e)=>{for(var t in e)l(r,t,{get:e[t],enumerable:!0})},C=(r,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of w(e))!E.call(r,a)&&a!==t&&l(r,a,{get:()=>e[a],enumerable:!(s=x(e,a))||s.enumerable});return r};var k=r=>C(l({},"__esModule",{value:!0}),r);var R={};v(R,{default:()=>d});module.exports=k(R);var u=require("@master/css");function d({content:r},{config:e,classes:t}){r=y(r);let s=[...new Set(Object.keys(e.semantics??u.semantics).concat(Object.keys(t)))],a=r.match(/\S+/g)??[],c=new Set;for(let i of a){c.add(g(i,s));let m=f(i);if(m.size)for(let S of m)c.add(g(S,s))}return[...c].filter(i=>i&&!$(i,s))}var g=(r,e)=>{let t=r,s=r.match(/(?:calc\(.*\)|\d+(?:%|ch|cm|em|ex|in|mm|pc|pt|px|rem|vh|vmax|vmin|vw|deg|grad|rad|turn|s)?)x(?:calc\(.*\)|\d+(?:%|ch|cm|em|ex|in|mm|pc|pt|px|rem|vh|vmax|vmin|vw|deg|grad|rad|turn|s)?)/g);return(s?.length?e.concat(s):e).find(a=>t.startsWith(a))?r=p(r,a=>a.replace(/^[^:@~(]*(?<!@>?)=/,"").replace(/(?:[([{\\:#=.]+|["'`].*)$/,"")):r=p(r,a=>a.replace(/^[^:@~(]*(?:["'`]|(?<!@>?)=)/,"").replace(/(?:[([{\\:#=.]+|["'`].*)$/,"")),t===r||!r?r:g(r,e)},h=r=>r.match(/((?<!\\)["'`])(?:\\\1|(?:(?!\1))[\S\s])*(?<!\\)\1/g),o=(r,e)=>(e?.forEach((t,s)=>{r=r.replace(t,`COMPLETE-STRING--${s}--`)}),r),p=(r,e)=>{let t=h(r);return r=o(r,t),r=e(r),t?.forEach((s,a)=>{r=r.replace(`COMPLETE-STRING--${a}--`,s)}),r},f=r=>{let e=new Set,t=/((?<!\\)["'`])((?:\\\1|(?:(?!\1))[\S\s])*)((?<!\\)\1)/g,s;for(;(s=t.exec(r))!==null;){s.index===t.lastIndex&&t.lastIndex++,e.add(s[2]);let a=f(s[2]);if(a.size)for(let c of a)e.add(c)}return e},y=r=>p(r,e=>e.replace(/\/\*(?:(?!\*\/)[\S\s])*\*\//g,"").replace(/<!--(?:(?!-->)[\S\s])*-->/g,"").replace(/<style[^>]*>(?:(?!<\/style>)[\S\s])*<\/style>/g,"").replace(/import.*from\s*COMPLETE-STRING--\d+--/g,"").replace(/import\s*(?:COMPLETE-STRING--\d+--|\([^;\s]*\))/g,"").replace(/(?:require|import)\([^;\s]*\)/g,"").replace(/(?:@.*\n)+(?:export|function|class)/g,"")),$=(r,e)=>{let t=h(r),s=o(r,t),a=/{(.*)}/,c;for(;(c=a.exec(s))!==null;)return c[1].split(";").find(m=>n(m,e))!==void 0;return n(s,e)||T(r)},n=(r,e)=>!r||!r.match(/(?:\S*\{\S*\})|(?:^[\w\-()]+:\S+)|(?:^[\w-]+\(\S+\))|(?:^[@~]\S+$)/)&&!r.match(/^(?:calc\(.*\)|\d+(?:%|ch|cm|em|ex|in|mm|pc|pt|px|rem|vh|vmax|vmin|vw|deg|grad|rad|turn|s)?)x(?:calc\(.*\)|\d+(?:%|ch|cm|em|ex|in|mm|pc|pt|px|rem|vh|vmax|vmin|vw|deg|grad|rad|turn|s)?)$/)&&!e.find(t=>r.startsWith(t))||r.match(/\*\*/)||r.match(/:\[/)||r.match(/\$\{/)||r.match(/\{\{/)||r.match(/\(\{[^}]*\}/)||r.match(/<\w+>|<\/\w+>/)||r.match(/;$/)||r.match(/^\w+:\/\//)||r.match(/^@(?:ts-[^\s]+|charset|import|namespace|media|supports|document|page|font-face|keyframes|counter-style|font-feature-values|property|layer|[^/]+\/.*)$/)||r.match(/^~\/.+.\w+$/)||r.match(/function\(|\(.*\)=>/)||r.match(/^\$\(.*/),T=r=>{let e=[],t;for(let s=0;s<r.length;s++)switch(r[s]){case"(":case"[":case"{":e.push(r[s]);break;case")":case"]":case"}":if(t=e.pop(),r[s]===")"&&t!=="("||r[s]==="]"&&t!=="["||r[s]==="}"&&t!=="{")return!0;break}return e.length>0};0&&(module.exports={});
@@ -0,0 +1 @@
1
+ var n=Object.create;var r=Object.defineProperty;var x=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var m=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty;var S=(o,t)=>{for(var e in t)r(o,e,{get:t[e],enumerable:!0})},a=(o,t,e,s)=>{if(t&&typeof t=="object"||typeof t=="function")for(let p of l(t))!u.call(o,p)&&p!==e&&r(o,p,{get:()=>t[p],enumerable:!(s=x(t,p))||s.enumerable});return o};var c=(o,t,e)=>(e=o!=null?n(m(o)):{},a(t||!o||!o.__esModule?r(e,"default",{value:o,enumerable:!0}):e,o)),d=o=>a(r({},"__esModule",{value:!0}),o);var y={};S(y,{MasterCSSCompiler:()=>f,default:()=>C,options:()=>i.default});module.exports=d(y);var i=c(require("./options")),f={},C=f;0&&(module.exports={MasterCSSCompiler,options});
@@ -0,0 +1 @@
1
+ var m=Object.create;var p=Object.defineProperty;var S=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var C=Object.getPrototypeOf,n=Object.prototype.hasOwnProperty;var u=(o,e)=>{for(var r in e)p(o,r,{get:e[r],enumerable:!0})},f=(o,e,r,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of l(e))!n.call(o,t)&&t!==r&&p(o,t,{get:()=>e[t],enumerable:!(a=S(e,t))||a.enumerable});return o};var x=(o,e,r)=>(r=o!=null?m(C(o)):{},f(e||!o||!o.__esModule?p(r,"default",{value:o,enumerable:!0}):r,o)),d=o=>f(p({},"__esModule",{value:!0}),o);var M={};u(M,{MasterCSSCompiler:()=>s.MasterCSSCompiler,default:()=>s.MasterCSSCompiler,options:()=>i.default});module.exports=d(M);var i=x(require("./options")),s=require("./compiler");0&&(module.exports={MasterCSSCompiler,options});
@@ -0,0 +1 @@
1
+ var r=Object.defineProperty;var i=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var d=(e,t)=>{for(var o in t)r(e,o,{get:t[o],enumerable:!0})},l=(e,t,o,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of a(t))!c.call(e,s)&&s!==o&&r(e,s,{get:()=>t[s],enumerable:!(n=i(t,s))||n.enumerable});return e};var p=e=>l(r({},"__esModule",{value:!0}),e);var g={};d(g,{default:()=>u});module.exports=p(g);var m={module:"master.css",config:"master.css.*",sources:[],include:["**/*.{html,js,jsx,ts,tsx,svelte,astro,vue,md,mdx,pug,php}"],exclude:["**/node_modules/**","**/*.d.ts","**/*.test.*","**/*.config.*","node_modules","master.css.*","dist","out","styles","public","README.md"],classes:{fixed:[],ignored:[]}},u=m;0&&(module.exports={});
@@ -1,11 +1,24 @@
1
- import { MasterCSSCompilerOptions, MasterCSSCompilerSource } from './options';
2
- import MasterCSS from '@master/css';
3
- export default class MasterCSSCompiler {
4
- options?: MasterCSSCompilerOptions;
5
- constructor(options?: MasterCSSCompilerOptions);
1
+ import { Options } from './options';
2
+ import MasterCSS, { Rule } from '@master/css';
3
+ import type { Config } from '@master/css';
4
+ import Techor from 'techor';
5
+ export declare class MasterCSSCompiler extends Techor<Options, Config> {
6
+ protected customOptions?: Options;
6
7
  css: MasterCSS;
7
8
  extractions: Set<string>;
8
- extract({ name, content }: MasterCSSCompilerSource): string[];
9
- insert(extractions: any): void;
10
- log(name: any, content: any): void;
9
+ validExtractions: Set<string>;
10
+ invalidExtractions: Set<string>;
11
+ logConfigFound: (configPath: string) => void;
12
+ logConfigNotFound: (configPath: string) => void;
13
+ get resolvedModuleId(): string;
14
+ get moduleHMREvent(): string;
15
+ constructor(customOptions?: Options);
16
+ refresh(): Promise<this>;
17
+ compile(): Promise<this>;
18
+ extract(name: string, content: string): string[];
19
+ insert(name: string, content: string): Promise<boolean>;
20
+ createRules(extraction: string): Promise<Rule[]>;
21
+ get sources(): string[];
22
+ checkSourcePath(name: string): boolean;
23
+ get config(): Config;
11
24
  }
@@ -0,0 +1,11 @@
1
+ var I=(h=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(h,{get:(c,i)=>(typeof require<"u"?require:c)[i]}):h)(function(h){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+h+'" is not supported')});import ne from"upath";import{default as le}from"./options/index.mjs";import oe from"@master/css";import{performance as ae}from"perf_hooks";import Ue from"./extract.mjs";import He from"fs";import ie from"fast-glob";import G from"minimatch";import Je from"techor";var ce=Object.create,Z=Object.defineProperty,he=Object.getOwnPropertyDescriptor,ge=Object.getOwnPropertyNames,fe=Object.getPrototypeOf,de=Object.prototype.hasOwnProperty,W=(h=>typeof I<"u"?I:typeof Proxy<"u"?new Proxy(h,{get:(c,i)=>(typeof I<"u"?I:c)[i]}):h)(function(h){if(typeof I<"u")return I.apply(this,arguments);throw new Error('Dynamic require of "'+h+'" is not supported')}),E=(h,c)=>()=>(c||h((c={exports:{}}).exports,c),c.exports),pe=(h,c,i,d)=>{if(c&&typeof c=="object"||typeof c=="function")for(let s of ge(c))!de.call(h,s)&&s!==i&&Z(h,s,{get:()=>c[s],enumerable:!(d=he(c,s))||d.enumerable});return h},x=(h,c,i)=>(i=h!=null?ce(fe(h)):{},pe(c||!h||!h.s?Z(i,"default",{value:h,enumerable:!0}):i,h)),be=E((h,c)=>{"use strict";c.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}}),Q=E((h,c)=>{var i=be(),d={};for(let t of Object.keys(i))d[i[t]]=t;var s={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};c.exports=s;for(let t of Object.keys(s)){if(!("channels"in s[t]))throw new Error("missing channels property: "+t);if(!("labels"in s[t]))throw new Error("missing channel labels property: "+t);if(s[t].labels.length!==s[t].channels)throw new Error("channel and label counts mismatch: "+t);let{channels:l,labels:e}=s[t];delete s[t].channels,delete s[t].labels,Object.defineProperty(s[t],"channels",{value:l}),Object.defineProperty(s[t],"labels",{value:e})}s.rgb.hsl=function(t){let l=t[0]/255,e=t[1]/255,r=t[2]/255,n=Math.min(l,e,r),o=Math.max(l,e,r),a=o-n,u,g;o===n?u=0:l===o?u=(e-r)/a:e===o?u=2+(r-l)/a:r===o&&(u=4+(l-e)/a),u=Math.min(u*60,360),u<0&&(u+=360);let p=(n+o)/2;return o===n?g=0:p<=.5?g=a/(o+n):g=a/(2-o-n),[u,g*100,p*100]},s.rgb.hsv=function(t){let l,e,r,n,o,a=t[0]/255,u=t[1]/255,g=t[2]/255,p=Math.max(a,u,g),m=p-Math.min(a,u,g),k=function(j){return(p-j)/6/m+1/2};return m===0?(n=0,o=0):(o=m/p,l=k(a),e=k(u),r=k(g),a===p?n=r-e:u===p?n=1/3+l-r:g===p&&(n=2/3+e-l),n<0?n+=1:n>1&&(n-=1)),[n*360,o*100,p*100]},s.rgb.hwb=function(t){let l=t[0],e=t[1],r=t[2],n=s.rgb.hsl(t)[0],o=1/255*Math.min(l,Math.min(e,r));return r=1-1/255*Math.max(l,Math.max(e,r)),[n,o*100,r*100]},s.rgb.cmyk=function(t){let l=t[0]/255,e=t[1]/255,r=t[2]/255,n=Math.min(1-l,1-e,1-r),o=(1-l-n)/(1-n)||0,a=(1-e-n)/(1-n)||0,u=(1-r-n)/(1-n)||0;return[o*100,a*100,u*100,n*100]};function f(t,l){return(t[0]-l[0])**2+(t[1]-l[1])**2+(t[2]-l[2])**2}s.rgb.keyword=function(t){let l=d[t];if(l)return l;let e=1/0,r;for(let n of Object.keys(i)){let o=i[n],a=f(t,o);a<e&&(e=a,r=n)}return r},s.keyword.rgb=function(t){return i[t]},s.rgb.xyz=function(t){let l=t[0]/255,e=t[1]/255,r=t[2]/255;l=l>.04045?((l+.055)/1.055)**2.4:l/12.92,e=e>.04045?((e+.055)/1.055)**2.4:e/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92;let n=l*.4124+e*.3576+r*.1805,o=l*.2126+e*.7152+r*.0722,a=l*.0193+e*.1192+r*.9505;return[n*100,o*100,a*100]},s.rgb.lab=function(t){let l=s.rgb.xyz(t),e=l[0],r=l[1],n=l[2];e/=95.047,r/=100,n/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,n=n>.008856?n**(1/3):7.787*n+16/116;let o=116*r-16,a=500*(e-r),u=200*(r-n);return[o,a,u]},s.hsl.rgb=function(t){let l=t[0]/360,e=t[1]/100,r=t[2]/100,n,o,a;if(e===0)return a=r*255,[a,a,a];r<.5?n=r*(1+e):n=r+e-r*e;let u=2*r-n,g=[0,0,0];for(let p=0;p<3;p++)o=l+1/3*-(p-1),o<0&&o++,o>1&&o--,6*o<1?a=u+(n-u)*6*o:2*o<1?a=n:3*o<2?a=u+(n-u)*(2/3-o)*6:a=u,g[p]=a*255;return g},s.hsl.hsv=function(t){let l=t[0],e=t[1]/100,r=t[2]/100,n=e,o=Math.max(r,.01);r*=2,e*=r<=1?r:2-r,n*=o<=1?o:2-o;let a=(r+e)/2,u=r===0?2*n/(o+n):2*e/(r+e);return[l,u*100,a*100]},s.hsv.rgb=function(t){let l=t[0]/60,e=t[1]/100,r=t[2]/100,n=Math.floor(l)%6,o=l-Math.floor(l),a=255*r*(1-e),u=255*r*(1-e*o),g=255*r*(1-e*(1-o));switch(r*=255,n){case 0:return[r,g,a];case 1:return[u,r,a];case 2:return[a,r,g];case 3:return[a,u,r];case 4:return[g,a,r];case 5:return[r,a,u]}},s.hsv.hsl=function(t){let l=t[0],e=t[1]/100,r=t[2]/100,n=Math.max(r,.01),o,a;a=(2-e)*r;let u=(2-e)*n;return o=e*n,o/=u<=1?u:2-u,o=o||0,a/=2,[l,o*100,a*100]},s.hwb.rgb=function(t){let l=t[0]/360,e=t[1]/100,r=t[2]/100,n=e+r,o;n>1&&(e/=n,r/=n);let a=Math.floor(6*l),u=1-r;o=6*l-a,a&1&&(o=1-o);let g=e+o*(u-e),p,m,k;switch(a){default:case 6:case 0:p=u,m=g,k=e;break;case 1:p=g,m=u,k=e;break;case 2:p=e,m=u,k=g;break;case 3:p=e,m=g,k=u;break;case 4:p=g,m=e,k=u;break;case 5:p=u,m=e,k=g;break}return[p*255,m*255,k*255]},s.cmyk.rgb=function(t){let l=t[0]/100,e=t[1]/100,r=t[2]/100,n=t[3]/100,o=1-Math.min(1,l*(1-n)+n),a=1-Math.min(1,e*(1-n)+n),u=1-Math.min(1,r*(1-n)+n);return[o*255,a*255,u*255]},s.xyz.rgb=function(t){let l=t[0]/100,e=t[1]/100,r=t[2]/100,n,o,a;return n=l*3.2406+e*-1.5372+r*-.4986,o=l*-.9689+e*1.8758+r*.0415,a=l*.0557+e*-.204+r*1.057,n=n>.0031308?1.055*n**(1/2.4)-.055:n*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,n=Math.min(Math.max(0,n),1),o=Math.min(Math.max(0,o),1),a=Math.min(Math.max(0,a),1),[n*255,o*255,a*255]},s.xyz.lab=function(t){let l=t[0],e=t[1],r=t[2];l/=95.047,e/=100,r/=108.883,l=l>.008856?l**(1/3):7.787*l+16/116,e=e>.008856?e**(1/3):7.787*e+16/116,r=r>.008856?r**(1/3):7.787*r+16/116;let n=116*e-16,o=500*(l-e),a=200*(e-r);return[n,o,a]},s.lab.xyz=function(t){let l=t[0],e=t[1],r=t[2],n,o,a;o=(l+16)/116,n=e/500+o,a=o-r/200;let u=o**3,g=n**3,p=a**3;return o=u>.008856?u:(o-16/116)/7.787,n=g>.008856?g:(n-16/116)/7.787,a=p>.008856?p:(a-16/116)/7.787,n*=95.047,o*=100,a*=108.883,[n,o,a]},s.lab.lch=function(t){let l=t[0],e=t[1],r=t[2],n;n=Math.atan2(r,e)*360/2/Math.PI,n<0&&(n+=360);let o=Math.sqrt(e*e+r*r);return[l,o,n]},s.lch.lab=function(t){let l=t[0],e=t[1],r=t[2]/360*2*Math.PI,n=e*Math.cos(r),o=e*Math.sin(r);return[l,n,o]},s.rgb.ansi16=function(t,l=null){let[e,r,n]=t,o=l===null?s.rgb.hsv(t)[2]:l;if(o=Math.round(o/50),o===0)return 30;let a=30+(Math.round(n/255)<<2|Math.round(r/255)<<1|Math.round(e/255));return o===2&&(a+=60),a},s.hsv.ansi16=function(t){return s.rgb.ansi16(s.hsv.rgb(t),t[2])},s.rgb.ansi256=function(t){let l=t[0],e=t[1],r=t[2];return l===e&&e===r?l<8?16:l>248?231:Math.round((l-8)/247*24)+232:16+36*Math.round(l/255*5)+6*Math.round(e/255*5)+Math.round(r/255*5)},s.ansi16.rgb=function(t){let l=t%10;if(l===0||l===7)return t>50&&(l+=3.5),l=l/10.5*255,[l,l,l];let e=(~~(t>50)+1)*.5,r=(l&1)*e*255,n=(l>>1&1)*e*255,o=(l>>2&1)*e*255;return[r,n,o]},s.ansi256.rgb=function(t){if(t>=232){let o=(t-232)*10+8;return[o,o,o]}t-=16;let l,e=Math.floor(t/36)/5*255,r=Math.floor((l=t%36)/6)/5*255,n=l%6/5*255;return[e,r,n]},s.rgb.hex=function(t){let l=(((Math.round(t[0])&255)<<16)+((Math.round(t[1])&255)<<8)+(Math.round(t[2])&255)).toString(16).toUpperCase();return"000000".substring(l.length)+l},s.hex.rgb=function(t){let l=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!l)return[0,0,0];let e=l[0];l[0].length===3&&(e=e.split("").map(u=>u+u).join(""));let r=parseInt(e,16),n=r>>16&255,o=r>>8&255,a=r&255;return[n,o,a]},s.rgb.hcg=function(t){let l=t[0]/255,e=t[1]/255,r=t[2]/255,n=Math.max(Math.max(l,e),r),o=Math.min(Math.min(l,e),r),a=n-o,u,g;return a<1?u=o/(1-a):u=0,a<=0?g=0:n===l?g=(e-r)/a%6:n===e?g=2+(r-l)/a:g=4+(l-e)/a,g/=6,g%=1,[g*360,a*100,u*100]},s.hsl.hcg=function(t){let l=t[1]/100,e=t[2]/100,r=e<.5?2*l*e:2*l*(1-e),n=0;return r<1&&(n=(e-.5*r)/(1-r)),[t[0],r*100,n*100]},s.hsv.hcg=function(t){let l=t[1]/100,e=t[2]/100,r=l*e,n=0;return r<1&&(n=(e-r)/(1-r)),[t[0],r*100,n*100]},s.hcg.rgb=function(t){let l=t[0]/360,e=t[1]/100,r=t[2]/100;if(e===0)return[r*255,r*255,r*255];let n=[0,0,0],o=l%1*6,a=o%1,u=1-a,g=0;switch(Math.floor(o)){case 0:n[0]=1,n[1]=a,n[2]=0;break;case 1:n[0]=u,n[1]=1,n[2]=0;break;case 2:n[0]=0,n[1]=1,n[2]=a;break;case 3:n[0]=0,n[1]=u,n[2]=1;break;case 4:n[0]=a,n[1]=0,n[2]=1;break;default:n[0]=1,n[1]=0,n[2]=u}return g=(1-e)*r,[(e*n[0]+g)*255,(e*n[1]+g)*255,(e*n[2]+g)*255]},s.hcg.hsv=function(t){let l=t[1]/100,e=t[2]/100,r=l+e*(1-l),n=0;return r>0&&(n=l/r),[t[0],n*100,r*100]},s.hcg.hsl=function(t){let l=t[1]/100,e=t[2]/100*(1-l)+.5*l,r=0;return e>0&&e<.5?r=l/(2*e):e>=.5&&e<1&&(r=l/(2*(1-e))),[t[0],r*100,e*100]},s.hcg.hwb=function(t){let l=t[1]/100,e=t[2]/100,r=l+e*(1-l);return[t[0],(r-l)*100,(1-r)*100]},s.hwb.hcg=function(t){let l=t[1]/100,e=1-t[2]/100,r=e-l,n=0;return r<1&&(n=(e-r)/(1-r)),[t[0],r*100,n*100]},s.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]},s.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]},s.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]},s.gray.hsl=function(t){return[0,0,t[0]]},s.gray.hsv=s.gray.hsl,s.gray.hwb=function(t){return[0,100,t[0]]},s.gray.cmyk=function(t){return[0,0,0,t[0]]},s.gray.lab=function(t){return[t[0],0,0]},s.gray.hex=function(t){let l=Math.round(t[0]/100*255)&255,e=((l<<16)+(l<<8)+l).toString(16).toUpperCase();return"000000".substring(e.length)+e},s.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}}),me=E((h,c)=>{var i=Q();function d(){let l={},e=Object.keys(i);for(let r=e.length,n=0;n<r;n++)l[e[n]]={distance:-1,parent:null};return l}function s(l){let e=d(),r=[l];for(e[l].distance=0;r.length;){let n=r.pop(),o=Object.keys(i[n]);for(let a=o.length,u=0;u<a;u++){let g=o[u],p=e[g];p.distance===-1&&(p.distance=e[n].distance+1,p.parent=n,r.unshift(g))}}return e}function f(l,e){return function(r){return e(l(r))}}function t(l,e){let r=[e[l].parent,l],n=i[e[l].parent][l],o=e[l].parent;for(;e[o].parent;)r.unshift(e[o].parent),n=f(i[e[o].parent][o],n),o=e[o].parent;return n.conversion=r,n}c.exports=function(l){let e=s(l),r={},n=Object.keys(e);for(let o=n.length,a=0;a<o;a++){let u=n[a];e[u].parent!==null&&(r[u]=t(u,e))}return r}}),ve=E((h,c)=>{var i=Q(),d=me(),s={},f=Object.keys(i);function t(e){let r=function(...n){let o=n[0];return o==null?o:(o.length>1&&(n=o),e(n))};return"conversion"in e&&(r.conversion=e.conversion),r}function l(e){let r=function(...n){let o=n[0];if(o==null)return o;o.length>1&&(n=o);let a=e(n);if(typeof a=="object")for(let u=a.length,g=0;g<u;g++)a[g]=Math.round(a[g]);return a};return"conversion"in e&&(r.conversion=e.conversion),r}f.forEach(e=>{s[e]={},Object.defineProperty(s[e],"channels",{value:i[e].channels}),Object.defineProperty(s[e],"labels",{value:i[e].labels});let r=d(e);Object.keys(r).forEach(n=>{let o=r[n];s[e][n]=l(o),s[e][n].raw=t(o)})}),c.exports=s}),ye=E((h,c)=>{"use strict";var i=(o,a)=>(...u)=>`\x1B[${o(...u)+a}m`,d=(o,a)=>(...u)=>{let g=o(...u);return`\x1B[${38+a};5;${g}m`},s=(o,a)=>(...u)=>{let g=o(...u);return`\x1B[${38+a};2;${g[0]};${g[1]};${g[2]}m`},f=o=>o,t=(o,a,u)=>[o,a,u],l=(o,a,u)=>{Object.defineProperty(o,a,{get:()=>{let g=u();return Object.defineProperty(o,a,{value:g,enumerable:!0,configurable:!0}),g},enumerable:!0,configurable:!0})},e,r=(o,a,u,g)=>{e===void 0&&(e=ve());let p=g?10:0,m={};for(let[k,j]of Object.entries(e)){let B=k==="ansi16"?"ansi":k;k===a?m[B]=o(u,p):typeof j=="object"&&(m[B]=o(j[a],p))}return m};function n(){let o=new Map,a={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};a.color.gray=a.color.blackBright,a.bgColor.bgGray=a.bgColor.bgBlackBright,a.color.grey=a.color.blackBright,a.bgColor.bgGrey=a.bgColor.bgBlackBright;for(let[u,g]of Object.entries(a)){for(let[p,m]of Object.entries(g))a[p]={open:`\x1B[${m[0]}m`,close:`\x1B[${m[1]}m`},g[p]=a[p],o.set(m[0],m[1]);Object.defineProperty(a,u,{value:g,enumerable:!1})}return Object.defineProperty(a,"codes",{value:o,enumerable:!1}),a.color.close="\x1B[39m",a.bgColor.close="\x1B[49m",l(a.color,"ansi",()=>r(i,"ansi16",f,!1)),l(a.color,"ansi256",()=>r(d,"ansi256",f,!1)),l(a.color,"ansi16m",()=>r(s,"rgb",t,!1)),l(a.bgColor,"ansi",()=>r(i,"ansi16",f,!0)),l(a.bgColor,"ansi256",()=>r(d,"ansi256",f,!0)),l(a.bgColor,"ansi16m",()=>r(s,"rgb",t,!0)),a}Object.defineProperty(c,"exports",{enumerable:!0,get:n})}),we=E((h,c)=>{"use strict";c.exports=(i,d=process.argv)=>{let s=i.startsWith("-")?"":i.length===1?"-":"--",f=d.indexOf(s+i),t=d.indexOf("--");return f!==-1&&(t===-1||f<t)}}),ke=E((h,c)=>{"use strict";var i=W("os"),d=W("tty"),s=we(),{env:f}=process,t;s("no-color")||s("no-colors")||s("color=false")||s("color=never")?t=0:(s("color")||s("colors")||s("color=true")||s("color=always"))&&(t=1),"FORCE_COLOR"in f&&(f.FORCE_COLOR==="true"?t=1:f.FORCE_COLOR==="false"?t=0:t=f.FORCE_COLOR.length===0?1:Math.min(parseInt(f.FORCE_COLOR,10),3));function l(n){return n===0?!1:{level:n,hasBasic:!0,has256:n>=2,has16m:n>=3}}function e(n,o){if(t===0)return 0;if(s("color=16m")||s("color=full")||s("color=truecolor"))return 3;if(s("color=256"))return 2;if(n&&!o&&t===void 0)return 0;let a=t||0;if(f.TERM==="dumb")return a;if(process.platform==="win32"){let u=i.release().split(".");return Number(u[0])>=10&&Number(u[2])>=10586?Number(u[2])>=14931?3:2:1}if("CI"in f)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(u=>u in f)||f.CI_NAME==="codeship"?1:a;if("TEAMCITY_VERSION"in f)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(f.TEAMCITY_VERSION)?1:0;if(f.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in f){let u=parseInt((f.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(f.TERM_PROGRAM){case"iTerm.app":return u>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(f.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(f.TERM)||"COLORTERM"in f?1:a}function r(n){let o=e(n,n&&n.isTTY);return l(o)}c.exports={supportsColor:r,stdout:l(e(!0,d.isatty(1))),stderr:l(e(!0,d.isatty(2)))}}),Oe=E((h,c)=>{"use strict";var i=(s,f,t)=>{let l=s.indexOf(f);if(l===-1)return s;let e=f.length,r=0,n="";do n+=s.substr(r,l-r)+f+t,r=l+e,l=s.indexOf(f,r);while(l!==-1);return n+=s.substr(r),n},d=(s,f,t,l)=>{let e=0,r="";do{let n=s[l-1]==="\r";r+=s.substr(e,(n?l-1:l)-e)+f+(n?`\r
2
+ `:`
3
+ `)+t,e=l+1,l=s.indexOf(`
4
+ `,e)}while(l!==-1);return r+=s.substr(e),r};c.exports={stringReplaceAll:i,stringEncaseCRLFWithFirstIndex:d}}),xe=E((h,c)=>{"use strict";var i=/(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi,d=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g,s=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/,f=/\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi,t=new Map([["n",`
5
+ `],["r","\r"],["t"," "],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e","\x1B"],["a","\x07"]]);function l(o){let a=o[0]==="u",u=o[1]==="{";return a&&!u&&o.length===5||o[0]==="x"&&o.length===3?String.fromCharCode(parseInt(o.slice(1),16)):a&&u?String.fromCodePoint(parseInt(o.slice(2,-1),16)):t.get(o)||o}function e(o,a){let u=[],g=a.trim().split(/\s*,\s*/g),p;for(let m of g){let k=Number(m);if(!Number.isNaN(k))u.push(k);else if(p=m.match(s))u.push(p[2].replace(f,(j,B,P)=>B?l(B):P));else throw new Error(`Invalid Chalk template style argument: ${m} (in style '${o}')`)}return u}function r(o){d.lastIndex=0;let a=[],u;for(;(u=d.exec(o))!==null;){let g=u[1];if(u[2]){let p=e(g,u[2]);a.push([g].concat(p))}else a.push([g])}return a}function n(o,a){let u={};for(let p of a)for(let m of p.styles)u[m[0]]=p.inverse?null:m.slice(1);let g=o;for(let[p,m]of Object.entries(u))if(Array.isArray(m)){if(!(p in g))throw new Error(`Unknown Chalk style: ${p}`);g=m.length>0?g[p](...m):g[p]}return g}c.exports=(o,a)=>{let u=[],g=[],p=[];if(a.replace(i,(m,k,j,B,P,v)=>{if(k)p.push(l(k));else if(B){let b=p.join("");p=[],g.push(u.length===0?b:n(o,u)(b)),u.push({inverse:j,styles:r(B)})}else if(P){if(u.length===0)throw new Error("Found extraneous } in Chalk template literal");g.push(n(o,u)(p.join(""))),p=[],u.pop()}else p.push(v)}),g.push(p.join("")),u.length>0){let m=`Chalk template literal is missing ${u.length} closing bracket${u.length===1?"":"s"} (\`}\`)`;throw new Error(m)}return g.join("")}}),$=E((h,c)=>{"use strict";var i=ye(),{stdout:d,stderr:s}=ke(),{stringReplaceAll:f,stringEncaseCRLFWithFirstIndex:t}=Oe(),l=["ansi","ansi","ansi256","ansi16m"],e=Object.create(null),r=(v,b={})=>{if(b.level&&!(Number.isInteger(b.level)&&b.level>=0&&b.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let y=d?d.level:0;v.level=b.level===void 0?y:b.level},n=class{constructor(v){return o(v)}},o=v=>{let b={};return r(b,v),b.template=(...y)=>B(b.template,...y),Object.setPrototypeOf(b,a.prototype),Object.setPrototypeOf(b.template,b),b.template.constructor=()=>{throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.")},b.template.Instance=n,b.template};function a(v){return o(v)}for(let[v,b]of Object.entries(i))e[v]={get(){let y=m(this,p(b.open,b.close,this.r),this.n);return Object.defineProperty(this,v,{value:y}),y}};e.visible={get(){let v=m(this,this.r,!0);return Object.defineProperty(this,"visible",{value:v}),v}};var u=["rgb","hex","keyword","hsl","hsv","hwb","ansi","ansi256"];for(let v of u)e[v]={get(){let{level:b}=this;return function(...y){let O=p(i.color[l[b]][v](...y),i.color.close,this.r);return m(this,O,this.n)}}};for(let v of u){let b="bg"+v[0].toUpperCase()+v.slice(1);e[b]={get(){let{level:y}=this;return function(...O){let M=p(i.bgColor[l[y]][v](...O),i.bgColor.close,this.r);return m(this,M,this.n)}}}}var g=Object.defineProperties(()=>{},{...e,level:{enumerable:!0,get(){return this.l.level},set(v){this.l.level=v}}}),p=(v,b,y)=>{let O,M;return y===void 0?(O=v,M=b):(O=y.openAll+v,M=b+y.closeAll),{open:v,close:b,openAll:O,closeAll:M,parent:y}},m=(v,b,y)=>{let O=(...M)=>k(O,M.length===1?""+M[0]:M.join(" "));return Object.setPrototypeOf(O,g),O.l=v,O.r=b,O.n=y,O},k=(v,b)=>{if(v.level<=0||!b)return v.n?"":b;let y=v.r;if(y===void 0)return b;let{openAll:O,closeAll:M}=y;if(b.indexOf("\x1B")!==-1)for(;y!==void 0;)b=f(b,y.close,y.open),y=y.parent;let F=b.indexOf(`
6
+ `);return F!==-1&&(b=t(b,M,O,F)),O+b+M},j,B=(v,...b)=>{let[y]=b;if(!Array.isArray(y))return b.join(" ");let O=b.slice(1),M=[y.raw[0]];for(let F=1;F<y.length;F++)M.push(String(O[F-1]).replace(/[{}\\]/g,"\\$&"),String(y.raw[F]));return j===void 0&&(j=xe()),j(v,M.join(""))};Object.defineProperties(a.prototype,e);var P=a();P.supportsColor=d,P.stderr=a({level:s?s.level:0}),P.stderr.supportsColor=s,c.exports=P}),$e=E((h,c)=>{"use strict";function i(d){var s=void 0;typeof d=="string"?s=[d]:s=d.raw;for(var f="",t=0;t<s.length;t++)f+=s[t].replace(/\\\n[ \t]*/g,"").replace(/\\`/g,"`"),t<(arguments.length<=1?0:arguments.length-1)&&(f+=arguments.length<=t+1?void 0:arguments[t+1]);var l=f.split(`
7
+ `),e=null;return l.forEach(function(r){var n=r.match(/^(\s+)\S+/);if(n){var o=n[1].length;e?e=Math.min(e,o):e=o}}),e!==null&&(f=l.map(function(r){return r[0]===" "?r.slice(e):r}).join(`
8
+ `)),f=f.trim(),f.replace(/\\n/g,`
9
+ `)}typeof c<"u"&&(c.exports=i)}),R=(h,c)=>{if(!h)throw new Error(c)},Me=h=>{let c={joined:!0,spacerNoNeighbour:" ",spacerNeighbour:"\u2502 ",keyNoNeighbour:"\u2514\u2500 ",keyNeighbour:"\u251C\u2500 ",separator:": ",renderFn:i=>["boolean","string","number"].includes(typeof i)?i:void 0,sortFn:null,breakCircularWith:" (circular ref.)",...h};return R(Object.keys(c).length===9,"Unexpected Option(s) provided"),R(typeof c.joined=="boolean",'Option "joined" has invalid format'),R(typeof c.spacerNoNeighbour=="string",'Option "spacerNoNeighbour" has invalid format'),R(typeof c.spacerNeighbour=="string",'Option "spacerNeighbour" has invalid format'),R(typeof c.keyNoNeighbour=="string",'Option "keyNoNeighbour" has invalid format'),R(typeof c.keyNeighbour=="string",'Option "keyNeighbour" has invalid format'),R(typeof c.separator=="string",'Option "separator" has invalid format'),R(typeof c.renderFn=="function",'Option "renderFn" has invalid format'),R(typeof c.sortFn=="function"||c.sortFn===null,'Option "sortFn" has invalid format'),R(typeof c.breakCircularWith=="string"||c.breakCircularWith===null,'Option "breakCircularWith" has invalid format'),c},X=(h,c={})=>{let i=Me(c),d=[],s=i.renderFn(h);s!==void 0&&d.push(String(s));let f=r=>i.sortFn===null?r.reverse():r.sort((n,o)=>i.sortFn(o,n)),t=[],l=f(Object.keys(h)).map(r=>[r]),e=[h];for(;l.length!==0;){let r=l.pop(),n=e[r.length-1][r[r.length-1]],o=i.breakCircularWith!==null&&e.includes(n);t[r.length-1]=l.length!==0&&l[l.length-1].length===r.length;let a=i.renderFn(n);d.push([t.slice(0,r.length-1).map(u=>u?i.spacerNeighbour:i.spacerNoNeighbour).join(""),t[r.length-1]?i.keyNeighbour:i.keyNoNeighbour,r[r.length-1],a===void 0?"":`${i.separator}${n}`,o?i.breakCircularWith:""].join("")),n instanceof Object&&!Array.isArray(n)&&!o&&(l.push(...f(Object.keys(n)).map(u=>r.concat(u))),e[r.length]=n)}return i.joined===!0?d.join(`
10
+ `):d},Ce=x($()),T=x($()),w=x($());function N(h){return h.split(" ").map(c=>c.replace(/^(\d*\.?\d*)$/g,`${w.default.blue("$1")}`).replace(/^(\d*\.?\d*)(YB|ZB|EB|PB|TB|GB|MB|KB|B|mb|kb|kB|bit|zs|as|fs|ps|ns|µs|ms|s|m|h|d|m|y)$/g,`${w.default.cyan("$1")}${w.default.magenta("$2")}`).replace(/^((?:[0-1]?[0-9]|[2][0-3]):[0-5][0-9]:[0-5][0-9] (?:AM|PM)?)$/g,`${w.default.dim("$1")}`).replace(/^\[(.*?)\]$/g,`${w.default.dim("[")}${w.default.magenta("$1")}${w.default.dim("]")}`).replace(/^`(.*?)`$/g,`${w.default.dim("`")}$1${w.default.dim("`")}`).replace(/^\((.*?)\)$/g,`${w.default.dim("(")}$1${w.default.dim(")")}`).replace(/^<(.*?)>$/g,`${w.default.dim("<")}${w.default.gray("$1")}${w.default.dim(">")}`).replace(/->/g,w.default.dim("\u2192")).replace(/<-/g,w.default.dim("\u2190")).replace(/^\$t$/g,`${w.default.dim(new Date().toLocaleTimeString())}`).replace(/^\*\*(.*?)\*\*$/g,`${w.default.bold.white("$1")}`).replace(/^~~(.*?)~~$/g,`${w.default.strikethrough("$1")}`).replace(/^__(.*?)__$/g,`${w.default.underline("$1")}`).replace(/^\.\.(.*?)\.\.$/g,`${w.default.dim("$1")}`).replace(/^!!(.*?)!!$/g,`${w.default.yellow("$1")}`).replace(/^\*(.*?)\*$/g,`${w.default.italic("$1")}`).replace(/^_(.*?)_$/g,`${w.default.italic("$1")}`).replace(/^\+(.*?)\+$/g,`${w.default.green("$1")}`).replace(/^-(.*?)-$/g,`${w.default.red("$1")}`)).join(" ")}function C(h,c){let i="";if(Array.isArray(h))for(let d=0;d<h.length;d++)i+=_(h[d])+_(c[d]);else i=[h,...c].map(d=>_(d)).join(" ");return N(i)}var _=h=>h?Array.isArray(h)?h.map(c=>{switch(typeof c){case"string":return`'${T.default.yellow(c)}'`;case"number":case"boolean":return T.default.blue(c);default:return c}}).join(T.default.gray(", ")):h:"",D=(h,...c)=>{let i=Ce.default.green("+")+" "+C(h,c);return console.log(i),i},je=x($()),Y=(h,...c)=>{let i=je.default.bgRed.bold.white(" \u{1D5EB} ERROR ")+" "+C(h,c);return console.log(i),i},V=x($()),Ee=(h,...c)=>{let i=V.default.bgYellow.bold.white(" \u26A0\uFE0F CONFLICT ")+" "+V.default.yellow(C(h,c));return console.log(i),i},Be=x($()),Re=(h,...c)=>{let i=Be.default.green("\u2713 ")+C(h,c);return console.log(i),i},Ne=x($()),q=(h,...c)=>{let i=Ne.default.red("-")+" "+C(h,c);return console.log(i),i},Pe=x($()),U=(h,...c)=>{let i=Pe.default.green("\u25CB ")+C(h,c);return console.log(i),i},Ae=x($()),H=(h,...c)=>{let i=Ae.default.red("\u2717 ")+C(h,c);return console.log(i),i},Fe=x($()),J=(h,...c)=>{let i=Fe.default.cyan("\u{1D4F2}")+" "+C(h,c);return console.log(i),i},Ie=x($()),Se=(h,...c)=>{let i=Ie.default.green("\u23FA Success ")+C(h,c);return console.log(i),i},Te=x($()),_e=(h,...c)=>{let i=Te.default.yellow("\u23FA Warn ")+C(h,c);return console.log(i),i},qe=x($()),Le=(h,...c)=>{let i=qe.default.bgGreen.bold.white(" \u2713 PASS ")+" "+C(h,c);return console.log(i),i},ze=h=>{let c=X(te(ee(JSON.parse(JSON.stringify(h)))),{spacerNeighbour:N("..\u2502..")+" ",keyNoNeighbour:N("..\u2514\u2500..")+" ",keyNeighbour:N("..\u251C\u2500..")+" ",separator:N("..:..")+" "});return console.log(c),c};function ee(h){for(let c in h){let i=h[c];typeof i=="object"?i!==null&&!Object.keys(i).length?delete h[c]:h[c]=ee(i):i===void 0&&delete h[c]}return h}function te(h){for(let c in h){let i=h[c];Array.isArray(i)?h[c]=i.map(d=>N(`**${d}**`)).join(N("..,..")):typeof i=="object"?te(i):h[c]=N(`**${i}**`)}return h}var Ge=x($()),We=(h,...c)=>{let i=Ge.default.red("\u23FA Fail ")+C(h,c);return console.log(i),i},K=(h,...c)=>{let i=N("$t ")+C(h,c);return console.log(i),i},De=x($e()),L=x($());function Ye(h){let{message:c,stack:i}=typeof h=="string"?new Error(h):h,d={};return(0,De.default)(i.replace(c,"").replace(/^Error: /,"")).split(`
11
+ `).forEach(s=>{d[s.split(" ").map(f=>f.replace(/^\((.+)\)$/,`${L.default.cyan("$1")}`).replace(/\./g,`${L.default.dim(".")}`).replace(/^at$/,t=>L.default.dim(t))).join(" ")]=null}),{message:c.trim().replace(/Error: /g,""),stackTree:d}}var S=x($()),re=(h,...c)=>{if(h instanceof Error){let{message:i,stackTree:d}=Ye(h);return console.log(""),console.log(S.default.bgRed.bold.white(" \u{1D5EB} ERROR ")+" "+S.default.bold.red(i)),console.log(X(d,{spacerNeighbour:S.default.redBright.dim("\u2502\u2000\u2000"),keyNoNeighbour:S.default.redBright.dim("\u2514\u2500\u2000"),keyNeighbour:S.default.redBright.dim("\u251C\u2500 "),separator:S.default.redBright.dim(":\u2000")})),console.log(""),i}else{let i=C(h,c);return console.log(i),i}};Object.assign(re,{a:D,add:D,d:q,del:q,delete:q,o:U,valid:U,x:H,invalid:H,i:J,info:J,e:Y,error:Y,t:K,timestamp:K,success:Se,fail:We,warn:_e,pass:Le,conflict:Ee,ok:Re,tree:ze,paint:N});var Ve=x($()),A=re,z=Ve.default;import Ke from"stylelint";import se from"to-extend";var ue=class extends Je{constructor(i){super(le,i);this.customOptions=i;let d=this.readConfig(null);this.options=se(this.options,d?.compilerOptions,i),this.css=d?.css??new oe(d?.config)}css;extractions=new Set;validExtractions=new Set;invalidExtractions=new Set;logConfigFound=i=>A.ok`**${i}** definition file found`;logConfigNotFound=i=>A.i`No **${i}** definition file found`;get resolvedModuleId(){return"\0"+this.options.module}get moduleHMREvent(){return`HMR:${this.options.module}`}async refresh(){this.extractions.clear(),this.validExtractions.clear(),this.invalidExtractions.clear(),console.log("");let i=this.readConfig(null);return this.css=new oe(i?.config),this.options=se({cwd:this.options.cwd},le,i?.compilerOptions,this.customOptions),await this.compile(),this}async compile(){if(this.options.classes?.fixed?.length)for(let i of this.options.classes.fixed)this.css.insert(i);return await Promise.all(this.sources.map(async i=>{let d=He.readFileSync(ne.resolve(this.options.cwd,i),{encoding:"utf-8"}).toString();await this.insert(i,d)})),this}extract(i,d){if(!i||!d||!this.checkSourcePath(i))return[];let s=[];for(let f of Ue({content:d,name:i},this.css))this.extractions.has(f)||(this.extractions.add(f),s.push(f));return s}async insert(i,d){let s=this.extract(i,d);if(!s.length)return!1;this.invalidExtractions.size&&(s=s.filter(e=>!this.invalidExtractions.has(e))),this.validExtractions.size&&(s=s.filter(e=>!this.validExtractions.has(e))),this.options.classes?.ignored?.length&&(s=s.filter(e=>{for(let r of this.options.classes.ignored)if(typeof r=="string"){if(r===e)return!1}else if(r.test(e))return!1;return!0}));let f=ae.now(),t=[];await Promise.all(s.map(async e=>{let r=await this.createRules(e);r.length?(this.css.insertRules(r),t.push(e),this.validExtractions.add(e)):this.invalidExtractions.add(e)}));let l=Math.round((ae.now()-f)*100)/100;if(s.length&&(console.log(""),A`**${ne.relative(this.options.cwd,i)}**`,A`[extract] ${s.length} potential`),this.css.rules.length){let e=t.filter(r=>!s.includes(r));e.length&&A`[exclude] ${e.length} unknown ${e}`,A`[compile] +${t.length}+ valid inserted ${z.gray("in")} ${l}ms ${t}`,A`[virtual] ${this.css.rules.length} total ${z.gray("in")} ${this.options.module}`}return!0}async createRules(i){return(await Promise.all(this.css.create(i).map(async s=>(await Ke.lint({code:s.text,cache:!1,config:{rules:{"color-no-invalid-hex":!0,"named-grid-areas-no-invalid":!0,"at-rule-no-unknown":!0,"function-no-unknown":!0,"media-feature-name-no-unknown":!0,"property-no-unknown":!0,"selector-pseudo-class-no-unknown":!0,"selector-pseudo-element-no-unknown":!0,"selector-type-no-unknown":!0,"unit-no-unknown":!0}}})).errored?null:s))).filter(s=>s)}get sources(){let{include:i,exclude:d,sources:s}=this.options,f=ie.sync(i,{cwd:this.options.cwd,ignore:d});return s?.length&&f.push(...ie.sync(s,{cwd:this.options.cwd})),f}checkSourcePath(i){let{include:d,exclude:s,sources:f}=this.options;for(let t of f)if(G(i,t))return!0;for(let t of d)if(!G(i,t))return!1;for(let t of s)if(G(i,t))return!1;return!0}get config(){return this.css.config}};export{ue as MasterCSSCompiler};
@@ -0,0 +1 @@
1
+ import{semantics as o}from"@master/css";function f({content:r},{config:s,classes:t}){r=S(r);let e=[...new Set(Object.keys(s.semantics??o).concat(Object.keys(t)))],a=r.match(/\S+/g)??[],c=new Set;for(let i of a){c.add(l(i,e));let m=d(i);if(m.size)for(let h of m)c.add(l(h,e))}return[...c].filter(i=>i&&!x(i,e))}var l=(r,s)=>{let t=r,e=r.match(/(?:calc\(.*\)|\d+(?:%|ch|cm|em|ex|in|mm|pc|pt|px|rem|vh|vmax|vmin|vw|deg|grad|rad|turn|s)?)x(?:calc\(.*\)|\d+(?:%|ch|cm|em|ex|in|mm|pc|pt|px|rem|vh|vmax|vmin|vw|deg|grad|rad|turn|s)?)/g);return(e?.length?s.concat(e):s).find(a=>t.startsWith(a))?r=g(r,a=>a.replace(/^[^:@~(]*(?<!@>?)=/,"").replace(/(?:[([{\\:#=.]+|["'`].*)$/,"")):r=g(r,a=>a.replace(/^[^:@~(]*(?:["'`]|(?<!@>?)=)/,"").replace(/(?:[([{\\:#=.]+|["'`].*)$/,"")),t===r||!r?r:l(r,s)},n=r=>r.match(/((?<!\\)["'`])(?:\\\1|(?:(?!\1))[\S\s])*(?<!\\)\1/g),u=(r,s)=>(s?.forEach((t,e)=>{r=r.replace(t,`COMPLETE-STRING--${e}--`)}),r),g=(r,s)=>{let t=n(r);return r=u(r,t),r=s(r),t?.forEach((e,a)=>{r=r.replace(`COMPLETE-STRING--${a}--`,e)}),r},d=r=>{let s=new Set,t=/((?<!\\)["'`])((?:\\\1|(?:(?!\1))[\S\s])*)((?<!\\)\1)/g,e;for(;(e=t.exec(r))!==null;){e.index===t.lastIndex&&t.lastIndex++,s.add(e[2]);let a=d(e[2]);if(a.size)for(let c of a)s.add(c)}return s},S=r=>g(r,s=>s.replace(/\/\*(?:(?!\*\/)[\S\s])*\*\//g,"").replace(/<!--(?:(?!-->)[\S\s])*-->/g,"").replace(/<style[^>]*>(?:(?!<\/style>)[\S\s])*<\/style>/g,"").replace(/import.*from\s*COMPLETE-STRING--\d+--/g,"").replace(/import\s*(?:COMPLETE-STRING--\d+--|\([^;\s]*\))/g,"").replace(/(?:require|import)\([^;\s]*\)/g,"").replace(/(?:@.*\n)+(?:export|function|class)/g,"")),x=(r,s)=>{let t=n(r),e=u(r,t),a=/{(.*)}/,c;for(;(c=a.exec(e))!==null;)return c[1].split(";").find(m=>p(m,s))!==void 0;return p(e,s)||w(r)},p=(r,s)=>!r||!r.match(/(?:\S*\{\S*\})|(?:^[\w\-()]+:\S+)|(?:^[\w-]+\(\S+\))|(?:^[@~]\S+$)/)&&!r.match(/^(?:calc\(.*\)|\d+(?:%|ch|cm|em|ex|in|mm|pc|pt|px|rem|vh|vmax|vmin|vw|deg|grad|rad|turn|s)?)x(?:calc\(.*\)|\d+(?:%|ch|cm|em|ex|in|mm|pc|pt|px|rem|vh|vmax|vmin|vw|deg|grad|rad|turn|s)?)$/)&&!s.find(t=>r.startsWith(t))||r.match(/\*\*/)||r.match(/:\[/)||r.match(/\$\{/)||r.match(/\{\{/)||r.match(/\(\{[^}]*\}/)||r.match(/<\w+>|<\/\w+>/)||r.match(/;$/)||r.match(/^\w+:\/\//)||r.match(/^@(?:ts-[^\s]+|charset|import|namespace|media|supports|document|page|font-face|keyframes|counter-style|font-feature-values|property|layer|[^/]+\/.*)$/)||r.match(/^~\/.+.\w+$/)||r.match(/function\(|\(.*\)=>/)||r.match(/^\$\(.*/),w=r=>{let s=[],t;for(let e=0;e<r.length;e++)switch(r[e]){case"(":case"[":case"{":s.push(r[e]);break;case")":case"]":case"}":if(t=s.pop(),r[e]===")"&&t!=="("||r[e]==="]"&&t!=="["||r[e]==="}"&&t!=="{")return!0;break}return s.length>0};export{f as default};
@@ -0,0 +1 @@
1
+ import{default as r}from"./options/index.mjs";var o={},t=o;export{o as MasterCSSCompiler,t as default,r as options};
@@ -0,0 +1 @@
1
+ import{default as r}from"./options/index.mjs";import{MasterCSSCompiler as p,MasterCSSCompiler as s}from"./compiler.mjs";export{s as MasterCSSCompiler,p as default,r as options};
@@ -0,0 +1 @@
1
+ var t={module:"master.css",config:"master.css.*",sources:[],include:["**/*.{html,js,jsx,ts,tsx,svelte,astro,vue,md,mdx,pug,php}"],exclude:["**/node_modules/**","**/*.d.ts","**/*.test.*","**/*.config.*","node_modules","master.css.*","dist","out","styles","public","README.md"],classes:{fixed:[],ignored:[]}},e=t;export{e as default};
@@ -0,0 +1,3 @@
1
+ import MasterCSS from '@master/css';
2
+ import type { Source } from './options';
3
+ export default function extract({ content }: Source, { config, classes }: MasterCSS): string[];
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { default as MasterCSSCompiler } from './compiler';
2
- export { default as MasterCSSWebpackPlugin } from './webpack';
3
- export { default as MasterCSSVitePlugin } from './vite';
1
+ export { default as options } from './options';
2
+ export type { Options, Source } from './options';
3
+ export { MasterCSSCompiler as default, MasterCSSCompiler } from './compiler';
@@ -0,0 +1,4 @@
1
+ export { default as options } from './options';
2
+ export type { Options, Source } from './options';
3
+ export declare const MasterCSSCompiler: {};
4
+ export default MasterCSSCompiler;
@@ -1,16 +1,20 @@
1
- declare const defaultOptions: MasterCSSCompilerOptions;
2
- export declare type MasterCSSCompilerSource = {
1
+ import { Config } from '@master/css';
2
+ import type { Pattern as FastGlobPattern } from 'fast-glob';
3
+ import type { Options as TechorOptions } from 'techor';
4
+ declare const options: Options;
5
+ export declare type Source = {
3
6
  name: string;
4
7
  content: string;
5
8
  };
6
- export interface MasterCSSCompilerOptions {
7
- output?: {
8
- name: string;
9
- dir: string;
9
+ export interface Options extends TechorOptions<Config> {
10
+ output?: string;
11
+ module?: string;
12
+ sources?: FastGlobPattern[];
13
+ include?: FastGlobPattern[];
14
+ exclude?: FastGlobPattern[];
15
+ classes?: {
16
+ fixed?: string[];
17
+ ignored?: string[] | RegExp[];
10
18
  };
11
- accept?: (source: MasterCSSCompilerSource) => boolean;
12
- extract?: (source: MasterCSSCompilerSource) => string[];
13
- config?: string;
14
- debug?: string[] | boolean;
15
19
  }
16
- export default defaultOptions;
20
+ export default options;
package/package.json CHANGED
@@ -1,145 +1 @@
1
- {
2
- "name": "@master/css-compiler",
3
- "license": "MIT",
4
- "description": "Compile Master CSS ahead of time with zero-configuration integration with build tools",
5
- "author": "Aoyue Design LLC.",
6
- "funding": "https://docs.master.co/css/donate",
7
- "homepage": "https://css.master.co",
8
- "repository": {
9
- "type": "git",
10
- "url": "https://github.com/master-co/css-compiler.git"
11
- },
12
- "keywords": [
13
- "webpack",
14
- "plugin",
15
- "integration",
16
- "vite",
17
- "parcel",
18
- "build tools",
19
- "css",
20
- "mastercss",
21
- "vite-plugin"
22
- ],
23
- "sideEffects": false,
24
- "scripts": {
25
- "build:cjs": "esbuild src/index.ts --bundle --outfile=dist/index.cjs --format=cjs --platform=node --external:@master/css --external:chalk",
26
- "build:esm": "esbuild src/index.ts --bundle --outfile=dist/index.mjs --format=esm --platform=node --external:@master/css --external:chalk",
27
- "dev:cjs": "npm run build:cjs -- --watch",
28
- "dev:esm": "npm run build:esm -- --watch",
29
- "prod": "rm -rf dist && npm run build:cjs -- --minify --sourcemap && npm run build:esm -- --minify --sourcemap && tsc --emitDeclarationOnly",
30
- "test": "jest",
31
- "lint": "eslint ./src"
32
- },
33
- "main": "./dist/index.cjs",
34
- "jsnext:main": "./dist/index.mjs",
35
- "browser": "./dist/index.browser.js",
36
- "esnext": "./dist/index.mjs",
37
- "module": "./dist/index.mjs",
38
- "types": "./dist/index.d.ts",
39
- "exports": {
40
- ".": {
41
- "require": "./dist/index.cjs",
42
- "import": "./dist/index.mjs",
43
- "types": "./dist/index.d.ts"
44
- }
45
- },
46
- "jest": {
47
- "testEnvironment": "node",
48
- "transform": {
49
- "^.+\\.(t|j)sx?$": "@swc/jest"
50
- },
51
- "testMatch": [
52
- "<rootDir>/tests/*.ts",
53
- "<rootDir>/src/**/*.test.ts"
54
- ]
55
- },
56
- "private": false,
57
- "publishConfig": {
58
- "access": "public"
59
- },
60
- "engines": {
61
- "node": ">=14"
62
- },
63
- "release": {
64
- "plugins": [
65
- [
66
- "@semantic-release/commit-analyzer",
67
- {
68
- "preset": "angular",
69
- "releaseRules": [
70
- {
71
- "type": "docs",
72
- "scope": "README",
73
- "release": "patch"
74
- },
75
- {
76
- "type": "refactor",
77
- "release": "patch"
78
- },
79
- {
80
- "type": "style",
81
- "release": "patch"
82
- }
83
- ],
84
- "parserOpts": {
85
- "noteKeywords": [
86
- "BREAKING CHANGE",
87
- "BREAKING CHANGES"
88
- ]
89
- }
90
- }
91
- ],
92
- "@semantic-release/release-notes-generator",
93
- [
94
- "@semantic-release/exec",
95
- {
96
- "prepareCmd": "npm run prod"
97
- }
98
- ],
99
- [
100
- "@semantic-release/github"
101
- ],
102
- [
103
- "@semantic-release/npm"
104
- ]
105
- ],
106
- "branches": [
107
- "+([0-9])?(.{+([0-9]),x}).x",
108
- "main",
109
- "next",
110
- "next-major",
111
- {
112
- "name": "beta",
113
- "prerelease": true
114
- },
115
- {
116
- "name": "alpha",
117
- "prerelease": true
118
- }
119
- ]
120
- },
121
- "files": [
122
- "dist"
123
- ],
124
- "devDependencies": {
125
- "@semantic-release/exec": "^6.0.3",
126
- "@swc/core": "^1.3.9",
127
- "@swc/jest": "^0.2.23",
128
- "@types/jest": "^29.2.0",
129
- "@types/node": "^18.11.0",
130
- "@types/webpack": "^5.28.0",
131
- "@typescript-eslint/eslint-plugin": "^5.40.1",
132
- "@typescript-eslint/parser": "^5.40.1",
133
- "esbuild": "^0.15.10",
134
- "eslint": "^8.25.0",
135
- "jest": "^29.2.2",
136
- "semantic-release": "^19.0.5",
137
- "typescript": "^4.8.4",
138
- "vite": "^3.1.8"
139
- },
140
- "peerDependencies": {
141
- "@master/css": "^2.0.0-beta.14",
142
- "chalk": "^4.0.0"
143
- },
144
- "version": "2.0.0-beta.13"
145
- }
1
+ {"name":"@master/css-compiler","scripts":{"build":"techor pack --platform node --shakable","dev":"npm run build -- --watch","lint":"eslint ./src","test":"jest"},"license":"MIT","description":"The ahead-of-time compiler of Master CSS","author":"Aoyue Design LLC.","funding":"https://docs.master.co/css/donate","homepage":"https://css.master.co","bugs":{"url":"https://github.com/master-co/css/issues"},"repository":{"type":"git","url":"https://github.com/master-co/css.git","directory":"packages/compiler"},"keywords":["webpack","plugin","integration","vite","parcel","build tools","css","mastercss","vite-plugin"],"sideEffects":false,"main":"./dist/cjs/index.js","jsnext:main":"./dist/esm/index.mjs","esnext":"./dist/esm/index.mjs","module":"./dist/esm/index.mjs","types":"./dist/index.d.ts","exports":{".":{"node":{"require":"./dist/cjs/index.js","import":"./dist/esm/index.mjs","types":"./dist/index.d.ts"},"require":"./dist/cjs/index.default.js","import":"./dist/esm/index.default.mjs","types":"./dist/index.default.d.ts"}},"files":["dist"],"publishConfig":{"access":"public"},"dependencies":{"@master/css":"^2.0.0-beta.131","fast-glob":"^3.2.12","minimatch":"^5.1.1","stylelint":"^15.2.0","techor":"^1.1.4","to-extend":"^1.5.2","upath":"^2.0.1"},"devDependencies":{"@swc-node/jest":"^1.6.2","ts-jest":"^29.0.5"},"version":"2.0.0-beta.131"}
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- The MIT License
2
-
3
- Copyright (c) Aoyue Design LLC.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
package/dist/index.cjs DELETED
@@ -1,2 +0,0 @@
1
- var _=Object.create;var y=Object.defineProperty;var W=Object.getOwnPropertyDescriptor;var z=Object.getOwnPropertyNames;var U=Object.getPrototypeOf,B=Object.prototype.hasOwnProperty;var G=(t,e)=>{for(var s in e)y(t,s,{get:e[s],enumerable:!0})},j=(t,e,s,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of z(e))!B.call(t,o)&&o!==s&&y(t,o,{get:()=>e[o],enumerable:!(r=W(e,o))||r.enumerable});return t};var h=(t,e,s)=>(s=t!=null?_(U(t)):{},j(e||!t||!t.__esModule?y(s,"default",{value:t,enumerable:!0}):s,t)),V=t=>j(y({},"__esModule",{value:!0}),t);var K={};G(K,{MasterCSSCompiler:()=>m,MasterCSSVitePlugin:()=>N,MasterCSSWebpackPlugin:()=>C});module.exports=V(K);var b=h(require("path")),p=h(require("chalk"));var D=require("@master/css");function R({content:t}){let e=t.match(/[^\s]+/g)??[],s=new Set;for(let r of e){let o=H(r);if(o.size)for(let n of o)s.add(n);else s.add(T(r))}return[...s].filter(r=>r&&!J(r))}var T=t=>{let e=t;return t=t.replace(/^([\w={[(\\]*["'`])/,""),t.match(/^content:((?<!\\)["'`])((?:\\\1|(?:(?!\1))[\S\s])*)((?<!\\)\1)$/)||(t=t.replace(/(\.*|[([{\\:#]*|["'`].*)$/,"")),e===t?t:T(t)},H=t=>{let e=new Set,s=/((?<!\\)["'`])((?:\\\1|(?:(?!\1))[\S\s])*)((?<!\\)\1)/g,r;for(;(r=s.exec(t))!==null;){r.index===s.lastIndex&&s.lastIndex++;let o=H(r[2]);if(o.size)for(let n of o)e.add(n);else e.add(T(r[2]))}return e},J=t=>!t||!t.match(/(?:^[\w-]+:[\w$#]+)|(?:^[@~][\w-]+$)/)&&!Object.keys(D.defaultSemantics).includes(t)||t.match(/\*\*/)||t.match(/:\[/)||t.match(/\$\{/)||t.match(/\{\{/)||t.match(/\(\{[^}]*\}/)||t.match(/<\w+>|<\/\w+>/);var L={output:{name:"master.css",dir:""},accept({name:t}){if(t.match(/[\\/]node_modules[\\/]/))return!1;if(t.match(/\.(html|js|jsx|ts|tsx|svelte|astro|vue)$/i))return!0},extract:R},P=L;var $=h(require("@master/css")),E=require("perf_hooks"),m=class{constructor(e){this.options=e;this.options=(0,$.extend)(P,e);let s;try{s=require(b.default.resolve(process.cwd(),e.config||"./master.css.js"))}catch{}this.css=new $.default({config:s})}css;extractions=new Set;extract({name:e,content:s}){if(!e||!s||!this.options.accept?.({content:s,name:e}))return[];let r=[];this.log("accepts",` \u2192 ${b.default.relative(process.cwd(),e)}`);for(let o of this.options.extract({content:s,name:e}))this.extractions.has(o)||(this.extractions.add(o),r.push(o));return r}insert(e){let s=E.performance.now();for(let n of e)this.css.findAndInsert(n);let r=Math.round((E.performance.now()-s)*1e3),o=this.css.rules.map(n=>n.className);console.log(`[Master CSS] process ${p.default.green(e.length)} extractions in ${p.default.green(r)} \xB5s [${p.default.green(this.css.rules.length)} rules in ${p.default.green(b.default.join(this.options.output.dir,this.options.output.name))}]`),this.log("extractions",` \u2192 ${p.default.green(e.length)} extractions: ${p.default.blue(e.join(" "))}`),this.log("validClasses",` \u2192 ${p.default.green(o.length)} total valid classes: ${p.default.blue(o.join(" "))}`)}log(e,s){(this.options.debug===!0||Array.isArray(this.options.debug)&&this.options.debug.includes(e))&&console.log(s)}};var F=h(require("path"));var S="MasterCSSWebpackPlugin",C=class extends m{apply(e){let{webpack:s}=e,{Template:r,RuntimeGlobals:o,RuntimeModule:n}=s,{RawSource:x}=s.sources,{Compilation:w}=s,{options:i}=this,l=F.default.join(i.output.dir||"",i.output.name),M=l.replace(/\\/g,"/");e.hooks.thisCompilation.tap(S,a=>{let u=new WeakSet,f=(d,c)=>{u.has(d)||(u.add(d),c.add(o.publicPath),a.addRuntimeModule(d,new A(c)))};a.hooks.runtimeRequirementInTree.for(o.ensureChunkHandlers).tap(S,f),a.hooks.runtimeRequirementInTree.for(o.hmrDownloadUpdateHandlers).tap(S,f);class A extends n{runtimeRequirements;constructor(c){super("master-css-loading",10),this.runtimeRequirements=c}generate(){let{runtimeRequirements:c}=this;return c.has(o.hmrDownloadUpdateHandlers)?r.asString([Date.now().toString(),`const link = document.querySelector('[href*=\\'${M}\\'][rel=stylesheet]')`,"if (link) {",r.indent(["link.href = link.href.replace(/ts=[0-9]+/, 'ts=' + Date.now())"]),"}"]):""}}}),e.hooks.compilation.tap(S,a=>{a.hooks.finishModules.tap(S,u=>{let{modifiedFiles:f,watching:A}=e,d=[];for(let c of u){let g=c.resource,k=c._source?.source();A&&f?.size&&!f.has(g)||d.push(...this.extract({name:g,content:k}))}if(d.length){let c=this.css.text;this.insert(d);let g=this.css.text;if(g!==c){let k=new x(g);a.getAsset(l)?a.updateAsset(l,k):a.emitAsset(l,k)}}}),a.hooks.processAssets.tap({name:S,stage:w.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{a.chunks.forEach(u=>{u.files.add(l)})})})}};var I=h(require("path"));var O=h(require("fs")),q=h(require("path"));function v(t,e,s){let r=q.default.dirname(t);O.default.existsSync(r)||O.default.mkdirSync(r,{recursive:!0}),O.default.writeFileSync(t,e,s)}function N(t){let e=new m(t),s=I.default.join(e.options.output.dir||"",e.options.output.name),r,o,n,x=!1,w=(i,l)=>{let M=e.extract({name:i,content:l});if(M.length){let a=e.css.text;e.insert(M);let u=e.css.text;if(u!==a&&r){v(o,u);let f=()=>{r.ws.send({type:"update",updates:[{path:n,timestamp:Date.now()}]})};x?f():(setTimeout(f,500),x=!0)}}};return{name:"vite-plugin-master-css",enforce:"pre",configureServer(i){r=i},buildStart(){o=I.default.resolve(r?.config.cacheDir??process.cwd(),s),r&&(v(o,""),n=(r.config.cacheDir.slice(process.cwd().length)+"/"+s).replace(/\\/g,"/"))},resolveId(i){if(i.endsWith("master.css?direct"))return"\0"+i},transform(i,l){w(l,i)},transformIndexHtml(i){return i.replace(/(<head>)/,`$1<link rel="stylesheet" href="${n}">`)},async handleHotUpdate(i){w(i.file,await i.read())},generateBundle(){let i=this.emitFile({type:"asset",name:s,source:e.css.text});n="/"+this.getFileName(i)}}}0&&(module.exports={MasterCSSCompiler,MasterCSSVitePlugin,MasterCSSWebpackPlugin});
2
- //# sourceMappingURL=index.cjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/index.ts", "../src/compiler.ts", "../src/options/extract.ts", "../src/options/index.ts", "../src/webpack.ts", "../src/vite.ts", "../src/utils/write-file.ts"],
4
- "sourcesContent": ["\nexport { default as MasterCSSCompiler } from './compiler'\nexport { default as MasterCSSWebpackPlugin } from './webpack'\nexport { default as MasterCSSVitePlugin } from './vite'\n", "import path from 'path'\nimport chalk from 'chalk'\nimport defaultOptions, { MasterCSSCompilerOptions, MasterCSSCompilerSource } from './options'\nimport MasterCSS, { extend } from '@master/css'\nimport { performance } from 'perf_hooks'\nimport type { MasterCSSConfig } from '@master/css'\n\nexport default class MasterCSSCompiler {\n\n constructor(\n public options?: MasterCSSCompilerOptions\n ) {\n this.options = extend(defaultOptions, options)\n let userConfig: MasterCSSConfig\n try {\n userConfig = require(path.resolve(process.cwd(), options.config || './master.css.js'))\n // eslint-disable-next-line no-empty\n } catch (err) { }\n this.css = new MasterCSS({ config: userConfig })\n }\n\n css: MasterCSS\n extractions = new Set<string>()\n\n extract({ name, content }: MasterCSSCompilerSource) {\n if (\n !name || !content\n || !this.options.accept?.({ content, name })\n ) {\n return []\n }\n const eachExtractions: string[] = []\n\n this.log('accepts', ` \u2192 ${path.relative(process.cwd(), name)}`)\n\n for (const eachNewExtraction of this.options.extract({ content, name })) {\n if (this.extractions.has(eachNewExtraction)) {\n continue\n } else {\n this.extractions.add(eachNewExtraction)\n eachExtractions.push(eachNewExtraction)\n }\n }\n return eachExtractions\n }\n\n insert(extractions) {\n const p1 = performance.now()\n\n /* \u6839\u64DA\u985E\u540D\u5C0B\u627E\u4E26\u63D2\u5165\u898F\u5247 ( MasterCSS \u672C\u8EAB\u5E36\u6709\u5FEB\u53D6\u6A5F\u5236\uFF0C\u91CD\u8907\u7684\u985E\u540D\u4E0D\u6703\u518D\u7DE8\u8B6F\u53CA\u7522\u751F ) */\n for (const eachExtraction of extractions) {\n this.css.findAndInsert(eachExtraction)\n }\n\n const spent = Math.round((performance.now() - p1) * 1000)\n const validClasses = this.css.rules.map((rule) => rule.className)\n\n /* \u5370\u51FA Master CSS \u7DE8\u8B6F\u6642\u9593 */\n console.log(`[Master CSS] process ${chalk.green(extractions.length)} extractions in ${chalk.green(spent)} \u00B5s [${chalk.green(this.css.rules.length)} rules in ${chalk.green(path.join(this.options.output.dir, this.options.output.name))}]`)\n\n this.log('extractions', ` \u2192 ${chalk.green(extractions.length)} extractions: ${chalk.blue(extractions.join(' '))}`)\n this.log('validClasses', ` \u2192 ${chalk.green(validClasses.length)} total valid classes: ${chalk.blue(validClasses.join(' '))}`)\n }\n\n log(name, content) {\n if (this.options.debug === true || Array.isArray(this.options.debug) && this.options.debug.includes(name)) {\n console.log(content)\n }\n }\n}", "import { defaultSemantics } from '@master/css'\nimport type { MasterCSSCompilerSource } from './index'\n\nexport default function extract({ content }: MasterCSSCompilerSource) {\n const blocks = content.match(/[^\\s]+/g) ?? []\n const strings = new Set<string>()\n for (const block of blocks) {\n const result = peelString(block)\n if (result.size) {\n for (const string of result) {\n strings.add(string)\n }\n } else {\n strings.add(trimString(block))\n }\n }\n return [...strings].filter(x => x && !checkToExclude(x))\n}\n\nconst trimString = (content) => {\n const originContent = content\n content = content.replace(/^([\\w={[(\\\\]*[\"'`])/, '')\n if (!content.match(/^content:((?<!\\\\)[\"'`])((?:\\\\\\1|(?:(?!\\1))[\\S\\s])*)((?<!\\\\)\\1)$/)) {\n content = content.replace(/(\\.*|[([{\\\\:#]*|[\"'`].*)$/, '')\n }\n if (originContent === content) {\n return content\n } else {\n return trimString(content)\n }\n}\n\nconst peelString = (content) => {\n const strings = new Set<string>()\n const stringRegx = /((?<!\\\\)[\"'`])((?:\\\\\\1|(?:(?!\\1))[\\S\\s])*)((?<!\\\\)\\1)/g\n let m\n while ((m = stringRegx.exec(content)) !== null) {\n if (m.index === stringRegx.lastIndex) {\n stringRegx.lastIndex++\n }\n const result = peelString(m[2])\n if (result.size) {\n for (const string of result) {\n strings.add(string)\n }\n } else {\n strings.add(trimString(m[2]))\n }\n }\n return strings\n}\n\nconst checkToExclude = (content) => {\n return !content\n || (!content.match(/(?:^[\\w-]+:[\\w$#]+)|(?:^[@~][\\w-]+$)/) && !Object.keys(defaultSemantics).includes(content))\n || content.match(/\\*\\*/)\n || content.match(/:\\[/)\n || content.match(/\\$\\{/)\n || content.match(/\\{\\{/)\n || content.match(/\\(\\{[^}]*\\}/)\n || content.match(/<\\w+>|<\\/\\w+>/)\n}", "import extract from './extract'\n\nconst defaultOptions: MasterCSSCompilerOptions = {\n output: {\n name: 'master.css',\n dir: ''\n },\n accept({ name }) {\n if (name.match(/[\\\\/]node_modules[\\\\/]/)) {\n return false\n }\n if (name.match(/\\.(html|js|jsx|ts|tsx|svelte|astro|vue)$/i)) {\n return true\n }\n },\n extract\n}\n\nexport declare type MasterCSSCompilerSource = {\n name: string\n content: string\n}\n\nexport interface MasterCSSCompilerOptions {\n output?: {\n name: string\n dir: string\n },\n accept?: (source: MasterCSSCompilerSource) => boolean\n extract?: (source: MasterCSSCompilerSource) => string[]\n config?: string\n debug?: string[] | boolean\n}\n\nexport default defaultOptions", "import path from 'path'\nimport MasterCSSCompiler from './compiler'\nimport type { Compiler } from 'webpack'\n\nconst NAME = 'MasterCSSWebpackPlugin'\n\nexport default class MasterCSSWebpackPlugin extends MasterCSSCompiler {\n\n apply(compiler: Compiler) {\n const { webpack } = compiler\n const { Template, RuntimeGlobals, RuntimeModule } = webpack\n const { RawSource } = webpack.sources\n const { Compilation } = webpack\n const { options } = this\n const outputPath = path.join(options.output.dir || '', options.output.name)\n const linkHref = outputPath.replace(/\\\\/g, '/')\n\n compiler.hooks.thisCompilation.tap(NAME, (compilation) => {\n\n const enabledChunks = new WeakSet()\n\n const handler = (chunk, set) => {\n if (enabledChunks.has(chunk))\n return\n\n enabledChunks.add(chunk)\n\n set.add(RuntimeGlobals.publicPath)\n\n compilation.addRuntimeModule(chunk, new CssLoadingRuntimeModule(set))\n }\n\n compilation.hooks.runtimeRequirementInTree\n .for(RuntimeGlobals.ensureChunkHandlers)\n .tap(NAME, handler)\n compilation.hooks.runtimeRequirementInTree\n .for(RuntimeGlobals.hmrDownloadUpdateHandlers)\n .tap(NAME, handler)\n\n class CssLoadingRuntimeModule extends RuntimeModule {\n\n runtimeRequirements: Set<string>\n\n constructor(runtimeRequirements: Set<string>) {\n super('master-css-loading', 10)\n\n this.runtimeRequirements = runtimeRequirements\n }\n\n generate() {\n const { runtimeRequirements } = this\n const withHmr = runtimeRequirements.has(RuntimeGlobals.hmrDownloadUpdateHandlers)\n if (!withHmr)\n return ''\n\n return Template.asString([\n Date.now().toString(),\n `const link = document.querySelector('[href*=\\\\'${linkHref}\\\\'][rel=stylesheet]')`,\n 'if (link) {',\n Template.indent([\n 'link.href = link.href.replace(/ts=[0-9]+/, \\'ts=\\' + Date.now())'\n ]),\n '}'\n ])\n }\n }\n })\n\n compiler.hooks.compilation.tap(NAME, (compilation) => {\n // \u589E\u52A0\u984D\u5916\u7684 `master.css` assets\n compilation.hooks.finishModules.tap(NAME, (modules) => {\n const { modifiedFiles, watching } = compiler\n const eachExtractions: string[] = []\n\n for (const eachModule of modules) {\n const name = eachModule['resource']\n // \u5F9E\u8A18\u61B6\u9AD4\u6216\u5FEB\u53D6\u53D6\u5F97\u7576\u524D module \u7684\u539F\u59CB\u78BC\n const content = eachModule['_source']?.source()\n // \u5728 watch \u6A21\u5F0F\u4E0B\u50C5\u8655\u7406\u7576\u4E0B\u8B8A\u66F4\u7684\u6A94\u6848\n if (watching && modifiedFiles?.size && !modifiedFiles.has(name)) { continue }\n eachExtractions.push(...this.extract({ name, content }))\n }\n\n if (eachExtractions.length) {\n const originalCssText = this.css.text\n /* \u6BD4\u5C0D\u63D0\u53D6\u7269\u4E26\u63D2\u5165 CSS \u898F\u5247 */\n this.insert(eachExtractions)\n /* \u6839\u64DA cssText \u751F\u6210 `master.css` \u4E26\u52A0\u5165\u5230 Webpack \u7684 assets \u4E2D */\n const cssText = this.css.text\n if (cssText !== originalCssText) {\n const newSource = new RawSource(cssText)\n if (compilation.getAsset(outputPath)) {\n compilation.updateAsset(outputPath, newSource)\n } else {\n compilation.emitAsset(outputPath, newSource)\n }\n }\n }\n })\n\n compilation.hooks.processAssets.tap({\n name: NAME,\n stage: Compilation.PROCESS_ASSETS_STAGE_ADDITIONS,\n }, () => {\n compilation.chunks.forEach((chunk) => {\n chunk.files.add(outputPath)\n })\n })\n })\n }\n}\n", "import MasterCSSCompiler from './compiler'\nimport path from 'path'\nimport writeFile from './utils/write-file'\nimport type { MasterCSSCompilerOptions } from './options'\nimport type { PluginOption } from 'vite'\n\nexport default function (options?: MasterCSSCompilerOptions): PluginOption {\n const compiler = new MasterCSSCompiler(options)\n const outputPath = path.join(compiler.options.output.dir || '', compiler.options.output.name)\n\n let server\n let outputFilePath: string\n let linkHref: string\n let rendered = false\n\n const extract = (name, content) => {\n const eachExtractions = compiler.extract({ name, content })\n if (eachExtractions.length) {\n const originalCssText = compiler.css.text\n /* \u6BD4\u5C0D\u63D0\u53D6\u7269\u4E26\u63D2\u5165 CSS \u898F\u5247 */\n compiler.insert(eachExtractions)\n /* \u6839\u64DA cssText \u751F\u6210 `master.css` \u4E26\u52A0\u5165\u5230 Webpack \u7684 assets \u4E2D */\n const cssText = compiler.css.text\n if (cssText !== originalCssText) {\n if (server) {\n writeFile(outputFilePath, cssText)\n\n const notify = () => {\n server.ws.send({\n type: 'update',\n updates: [{\n path: linkHref,\n timestamp: Date.now()\n }]\n })\n }\n\n if (rendered) {\n notify()\n } else {\n setTimeout(notify, 500)\n\n rendered = true\n }\n }\n }\n }\n }\n\n return {\n name: 'vite-plugin-master-css',\n enforce: 'pre',\n configureServer(_server) {\n server = _server\n },\n buildStart() {\n outputFilePath = path.resolve(server?.config.cacheDir ?? process.cwd(), outputPath)\n if (server) {\n writeFile(outputFilePath, '')\n\n linkHref = (server.config.cacheDir.slice(process.cwd().length) + '/' + outputPath).replace(/\\\\/g, '/')\n }\n },\n resolveId(source) {\n if (source.endsWith('master.css?direct'))\n return '\\0' + source\n },\n transform(code, id) {\n extract(id, code)\n },\n transformIndexHtml(html) {\n return html.replace(\n /(<head>)/,\n `$1<link rel=\"stylesheet\" href=\"${linkHref}\">`\n )\n },\n async handleHotUpdate(hmrContext) {\n extract(hmrContext.file, await hmrContext.read())\n },\n generateBundle() {\n const referenceId = this.emitFile({\n type: 'asset',\n name: outputPath,\n source: compiler.css.text\n })\n linkHref = '/' + this.getFileName(referenceId)\n }\n } as PluginOption\n}", "import fs from 'fs'\nimport path from 'path'\n\nexport default function writeFile(filePath: string, data: string | NodeJS.ArrayBufferView, options?: fs.WriteFileOptions) {\n const dirname = path.dirname(filePath)\n if (!fs.existsSync(dirname)) {\n fs.mkdirSync(dirname, { recursive: true })\n }\n fs.writeFileSync(filePath, data, options)\n\n}\n"],
5
- "mappings": "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",
6
- "names": ["src_exports", "__export", "MasterCSSCompiler", "vite_default", "MasterCSSWebpackPlugin", "__toCommonJS", "import_path", "import_chalk", "import_css", "extract", "content", "blocks", "strings", "block", "result", "peelString", "string", "trimString", "x", "checkToExclude", "originContent", "stringRegx", "m", "defaultOptions", "name", "extract", "options_default", "import_css", "import_perf_hooks", "MasterCSSCompiler", "options", "options_default", "userConfig", "path", "MasterCSS", "name", "content", "eachExtractions", "eachNewExtraction", "extractions", "p1", "eachExtraction", "spent", "validClasses", "rule", "chalk", "import_path", "NAME", "MasterCSSWebpackPlugin", "MasterCSSCompiler", "compiler", "webpack", "Template", "RuntimeGlobals", "RuntimeModule", "RawSource", "Compilation", "options", "outputPath", "path", "linkHref", "compilation", "enabledChunks", "handler", "chunk", "set", "CssLoadingRuntimeModule", "runtimeRequirements", "modules", "modifiedFiles", "watching", "eachExtractions", "eachModule", "name", "content", "originalCssText", "cssText", "newSource", "import_path", "import_fs", "import_path", "writeFile", "filePath", "data", "options", "dirname", "path", "fs", "vite_default", "options", "compiler", "MasterCSSCompiler", "outputPath", "path", "server", "outputFilePath", "linkHref", "rendered", "extract", "name", "content", "eachExtractions", "originalCssText", "cssText", "writeFile", "notify", "_server", "source", "code", "id", "html", "hmrContext", "referenceId"]
7
- }
package/dist/index.mjs DELETED
@@ -1,2 +0,0 @@
1
- var A=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,s)=>(typeof require<"u"?require:e)[s]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+t+'" is not supported')});import O from"path";import f from"chalk";import{defaultSemantics as j}from"@master/css";function b({content:t}){let e=t.match(/[^\s]+/g)??[],s=new Set;for(let r of e){let o=R(r);if(o.size)for(let n of o)s.add(n);else s.add($(r))}return[...s].filter(r=>r&&!D(r))}var $=t=>{let e=t;return t=t.replace(/^([\w={[(\\]*["'`])/,""),t.match(/^content:((?<!\\)["'`])((?:\\\1|(?:(?!\1))[\S\s])*)((?<!\\)\1)$/)||(t=t.replace(/(\.*|[([{\\:#]*|["'`].*)$/,"")),e===t?t:$(t)},R=t=>{let e=new Set,s=/((?<!\\)["'`])((?:\\\1|(?:(?!\1))[\S\s])*)((?<!\\)\1)/g,r;for(;(r=s.exec(t))!==null;){r.index===s.lastIndex&&s.lastIndex++;let o=R(r[2]);if(o.size)for(let n of o)e.add(n);else e.add($(r[2]))}return e},D=t=>!t||!t.match(/(?:^[\w-]+:[\w$#]+)|(?:^[@~][\w-]+$)/)&&!Object.keys(j).includes(t)||t.match(/\*\*/)||t.match(/:\[/)||t.match(/\$\{/)||t.match(/\{\{/)||t.match(/\(\{[^}]*\}/)||t.match(/<\w+>|<\/\w+>/);var H={output:{name:"master.css",dir:""},accept({name:t}){if(t.match(/[\\/]node_modules[\\/]/))return!1;if(t.match(/\.(html|js|jsx|ts|tsx|svelte|astro|vue)$/i))return!0},extract:b},T=H;import P,{extend as F}from"@master/css";import{performance as E}from"perf_hooks";var d=class{constructor(e){this.options=e;this.options=F(T,e);let s;try{s=A(O.resolve(process.cwd(),e.config||"./master.css.js"))}catch{}this.css=new P({config:s})}css;extractions=new Set;extract({name:e,content:s}){if(!e||!s||!this.options.accept?.({content:s,name:e}))return[];let r=[];this.log("accepts",` \u2192 ${O.relative(process.cwd(),e)}`);for(let o of this.options.extract({content:s,name:e}))this.extractions.has(o)||(this.extractions.add(o),r.push(o));return r}insert(e){let s=E.now();for(let n of e)this.css.findAndInsert(n);let r=Math.round((E.now()-s)*1e3),o=this.css.rules.map(n=>n.className);console.log(`[Master CSS] process ${f.green(e.length)} extractions in ${f.green(r)} \xB5s [${f.green(this.css.rules.length)} rules in ${f.green(O.join(this.options.output.dir,this.options.output.name))}]`),this.log("extractions",` \u2192 ${f.green(e.length)} extractions: ${f.blue(e.join(" "))}`),this.log("validClasses",` \u2192 ${f.green(o.length)} total valid classes: ${f.blue(o.join(" "))}`)}log(e,s){(this.options.debug===!0||Array.isArray(this.options.debug)&&this.options.debug.includes(e))&&console.log(s)}};import q from"path";var g="MasterCSSWebpackPlugin",M=class extends d{apply(e){let{webpack:s}=e,{Template:r,RuntimeGlobals:o,RuntimeModule:n}=s,{RawSource:S}=s.sources,{Compilation:C}=s,{options:i}=this,l=q.join(i.output.dir||"",i.output.name),x=l.replace(/\\/g,"/");e.hooks.thisCompilation.tap(g,a=>{let u=new WeakSet,p=(m,c)=>{u.has(m)||(u.add(m),c.add(o.publicPath),a.addRuntimeModule(m,new y(c)))};a.hooks.runtimeRequirementInTree.for(o.ensureChunkHandlers).tap(g,p),a.hooks.runtimeRequirementInTree.for(o.hmrDownloadUpdateHandlers).tap(g,p);class y extends n{runtimeRequirements;constructor(c){super("master-css-loading",10),this.runtimeRequirements=c}generate(){let{runtimeRequirements:c}=this;return c.has(o.hmrDownloadUpdateHandlers)?r.asString([Date.now().toString(),`const link = document.querySelector('[href*=\\'${x}\\'][rel=stylesheet]')`,"if (link) {",r.indent(["link.href = link.href.replace(/ts=[0-9]+/, 'ts=' + Date.now())"]),"}"]):""}}}),e.hooks.compilation.tap(g,a=>{a.hooks.finishModules.tap(g,u=>{let{modifiedFiles:p,watching:y}=e,m=[];for(let c of u){let h=c.resource,w=c._source?.source();y&&p?.size&&!p.has(h)||m.push(...this.extract({name:h,content:w}))}if(m.length){let c=this.css.text;this.insert(m);let h=this.css.text;if(h!==c){let w=new S(h);a.getAsset(l)?a.updateAsset(l,w):a.emitAsset(l,w)}}}),a.hooks.processAssets.tap({name:g,stage:C.PROCESS_ASSETS_STAGE_ADDITIONS},()=>{a.chunks.forEach(u=>{u.files.add(l)})})})}};import I from"path";import v from"fs";import N from"path";function k(t,e,s){let r=N.dirname(t);v.existsSync(r)||v.mkdirSync(r,{recursive:!0}),v.writeFileSync(t,e,s)}function _(t){let e=new d(t),s=I.join(e.options.output.dir||"",e.options.output.name),r,o,n,S=!1,C=(i,l)=>{let x=e.extract({name:i,content:l});if(x.length){let a=e.css.text;e.insert(x);let u=e.css.text;if(u!==a&&r){k(o,u);let p=()=>{r.ws.send({type:"update",updates:[{path:n,timestamp:Date.now()}]})};S?p():(setTimeout(p,500),S=!0)}}};return{name:"vite-plugin-master-css",enforce:"pre",configureServer(i){r=i},buildStart(){o=I.resolve(r?.config.cacheDir??process.cwd(),s),r&&(k(o,""),n=(r.config.cacheDir.slice(process.cwd().length)+"/"+s).replace(/\\/g,"/"))},resolveId(i){if(i.endsWith("master.css?direct"))return"\0"+i},transform(i,l){C(l,i)},transformIndexHtml(i){return i.replace(/(<head>)/,`$1<link rel="stylesheet" href="${n}">`)},async handleHotUpdate(i){C(i.file,await i.read())},generateBundle(){let i=this.emitFile({type:"asset",name:s,source:e.css.text});n="/"+this.getFileName(i)}}}export{d as MasterCSSCompiler,_ as MasterCSSVitePlugin,M as MasterCSSWebpackPlugin};
2
- //# sourceMappingURL=index.mjs.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/compiler.ts", "../src/options/extract.ts", "../src/options/index.ts", "../src/webpack.ts", "../src/vite.ts", "../src/utils/write-file.ts"],
4
- "sourcesContent": ["import path from 'path'\nimport chalk from 'chalk'\nimport defaultOptions, { MasterCSSCompilerOptions, MasterCSSCompilerSource } from './options'\nimport MasterCSS, { extend } from '@master/css'\nimport { performance } from 'perf_hooks'\nimport type { MasterCSSConfig } from '@master/css'\n\nexport default class MasterCSSCompiler {\n\n constructor(\n public options?: MasterCSSCompilerOptions\n ) {\n this.options = extend(defaultOptions, options)\n let userConfig: MasterCSSConfig\n try {\n userConfig = require(path.resolve(process.cwd(), options.config || './master.css.js'))\n // eslint-disable-next-line no-empty\n } catch (err) { }\n this.css = new MasterCSS({ config: userConfig })\n }\n\n css: MasterCSS\n extractions = new Set<string>()\n\n extract({ name, content }: MasterCSSCompilerSource) {\n if (\n !name || !content\n || !this.options.accept?.({ content, name })\n ) {\n return []\n }\n const eachExtractions: string[] = []\n\n this.log('accepts', ` \u2192 ${path.relative(process.cwd(), name)}`)\n\n for (const eachNewExtraction of this.options.extract({ content, name })) {\n if (this.extractions.has(eachNewExtraction)) {\n continue\n } else {\n this.extractions.add(eachNewExtraction)\n eachExtractions.push(eachNewExtraction)\n }\n }\n return eachExtractions\n }\n\n insert(extractions) {\n const p1 = performance.now()\n\n /* \u6839\u64DA\u985E\u540D\u5C0B\u627E\u4E26\u63D2\u5165\u898F\u5247 ( MasterCSS \u672C\u8EAB\u5E36\u6709\u5FEB\u53D6\u6A5F\u5236\uFF0C\u91CD\u8907\u7684\u985E\u540D\u4E0D\u6703\u518D\u7DE8\u8B6F\u53CA\u7522\u751F ) */\n for (const eachExtraction of extractions) {\n this.css.findAndInsert(eachExtraction)\n }\n\n const spent = Math.round((performance.now() - p1) * 1000)\n const validClasses = this.css.rules.map((rule) => rule.className)\n\n /* \u5370\u51FA Master CSS \u7DE8\u8B6F\u6642\u9593 */\n console.log(`[Master CSS] process ${chalk.green(extractions.length)} extractions in ${chalk.green(spent)} \u00B5s [${chalk.green(this.css.rules.length)} rules in ${chalk.green(path.join(this.options.output.dir, this.options.output.name))}]`)\n\n this.log('extractions', ` \u2192 ${chalk.green(extractions.length)} extractions: ${chalk.blue(extractions.join(' '))}`)\n this.log('validClasses', ` \u2192 ${chalk.green(validClasses.length)} total valid classes: ${chalk.blue(validClasses.join(' '))}`)\n }\n\n log(name, content) {\n if (this.options.debug === true || Array.isArray(this.options.debug) && this.options.debug.includes(name)) {\n console.log(content)\n }\n }\n}", "import { defaultSemantics } from '@master/css'\nimport type { MasterCSSCompilerSource } from './index'\n\nexport default function extract({ content }: MasterCSSCompilerSource) {\n const blocks = content.match(/[^\\s]+/g) ?? []\n const strings = new Set<string>()\n for (const block of blocks) {\n const result = peelString(block)\n if (result.size) {\n for (const string of result) {\n strings.add(string)\n }\n } else {\n strings.add(trimString(block))\n }\n }\n return [...strings].filter(x => x && !checkToExclude(x))\n}\n\nconst trimString = (content) => {\n const originContent = content\n content = content.replace(/^([\\w={[(\\\\]*[\"'`])/, '')\n if (!content.match(/^content:((?<!\\\\)[\"'`])((?:\\\\\\1|(?:(?!\\1))[\\S\\s])*)((?<!\\\\)\\1)$/)) {\n content = content.replace(/(\\.*|[([{\\\\:#]*|[\"'`].*)$/, '')\n }\n if (originContent === content) {\n return content\n } else {\n return trimString(content)\n }\n}\n\nconst peelString = (content) => {\n const strings = new Set<string>()\n const stringRegx = /((?<!\\\\)[\"'`])((?:\\\\\\1|(?:(?!\\1))[\\S\\s])*)((?<!\\\\)\\1)/g\n let m\n while ((m = stringRegx.exec(content)) !== null) {\n if (m.index === stringRegx.lastIndex) {\n stringRegx.lastIndex++\n }\n const result = peelString(m[2])\n if (result.size) {\n for (const string of result) {\n strings.add(string)\n }\n } else {\n strings.add(trimString(m[2]))\n }\n }\n return strings\n}\n\nconst checkToExclude = (content) => {\n return !content\n || (!content.match(/(?:^[\\w-]+:[\\w$#]+)|(?:^[@~][\\w-]+$)/) && !Object.keys(defaultSemantics).includes(content))\n || content.match(/\\*\\*/)\n || content.match(/:\\[/)\n || content.match(/\\$\\{/)\n || content.match(/\\{\\{/)\n || content.match(/\\(\\{[^}]*\\}/)\n || content.match(/<\\w+>|<\\/\\w+>/)\n}", "import extract from './extract'\n\nconst defaultOptions: MasterCSSCompilerOptions = {\n output: {\n name: 'master.css',\n dir: ''\n },\n accept({ name }) {\n if (name.match(/[\\\\/]node_modules[\\\\/]/)) {\n return false\n }\n if (name.match(/\\.(html|js|jsx|ts|tsx|svelte|astro|vue)$/i)) {\n return true\n }\n },\n extract\n}\n\nexport declare type MasterCSSCompilerSource = {\n name: string\n content: string\n}\n\nexport interface MasterCSSCompilerOptions {\n output?: {\n name: string\n dir: string\n },\n accept?: (source: MasterCSSCompilerSource) => boolean\n extract?: (source: MasterCSSCompilerSource) => string[]\n config?: string\n debug?: string[] | boolean\n}\n\nexport default defaultOptions", "import path from 'path'\nimport MasterCSSCompiler from './compiler'\nimport type { Compiler } from 'webpack'\n\nconst NAME = 'MasterCSSWebpackPlugin'\n\nexport default class MasterCSSWebpackPlugin extends MasterCSSCompiler {\n\n apply(compiler: Compiler) {\n const { webpack } = compiler\n const { Template, RuntimeGlobals, RuntimeModule } = webpack\n const { RawSource } = webpack.sources\n const { Compilation } = webpack\n const { options } = this\n const outputPath = path.join(options.output.dir || '', options.output.name)\n const linkHref = outputPath.replace(/\\\\/g, '/')\n\n compiler.hooks.thisCompilation.tap(NAME, (compilation) => {\n\n const enabledChunks = new WeakSet()\n\n const handler = (chunk, set) => {\n if (enabledChunks.has(chunk))\n return\n\n enabledChunks.add(chunk)\n\n set.add(RuntimeGlobals.publicPath)\n\n compilation.addRuntimeModule(chunk, new CssLoadingRuntimeModule(set))\n }\n\n compilation.hooks.runtimeRequirementInTree\n .for(RuntimeGlobals.ensureChunkHandlers)\n .tap(NAME, handler)\n compilation.hooks.runtimeRequirementInTree\n .for(RuntimeGlobals.hmrDownloadUpdateHandlers)\n .tap(NAME, handler)\n\n class CssLoadingRuntimeModule extends RuntimeModule {\n\n runtimeRequirements: Set<string>\n\n constructor(runtimeRequirements: Set<string>) {\n super('master-css-loading', 10)\n\n this.runtimeRequirements = runtimeRequirements\n }\n\n generate() {\n const { runtimeRequirements } = this\n const withHmr = runtimeRequirements.has(RuntimeGlobals.hmrDownloadUpdateHandlers)\n if (!withHmr)\n return ''\n\n return Template.asString([\n Date.now().toString(),\n `const link = document.querySelector('[href*=\\\\'${linkHref}\\\\'][rel=stylesheet]')`,\n 'if (link) {',\n Template.indent([\n 'link.href = link.href.replace(/ts=[0-9]+/, \\'ts=\\' + Date.now())'\n ]),\n '}'\n ])\n }\n }\n })\n\n compiler.hooks.compilation.tap(NAME, (compilation) => {\n // \u589E\u52A0\u984D\u5916\u7684 `master.css` assets\n compilation.hooks.finishModules.tap(NAME, (modules) => {\n const { modifiedFiles, watching } = compiler\n const eachExtractions: string[] = []\n\n for (const eachModule of modules) {\n const name = eachModule['resource']\n // \u5F9E\u8A18\u61B6\u9AD4\u6216\u5FEB\u53D6\u53D6\u5F97\u7576\u524D module \u7684\u539F\u59CB\u78BC\n const content = eachModule['_source']?.source()\n // \u5728 watch \u6A21\u5F0F\u4E0B\u50C5\u8655\u7406\u7576\u4E0B\u8B8A\u66F4\u7684\u6A94\u6848\n if (watching && modifiedFiles?.size && !modifiedFiles.has(name)) { continue }\n eachExtractions.push(...this.extract({ name, content }))\n }\n\n if (eachExtractions.length) {\n const originalCssText = this.css.text\n /* \u6BD4\u5C0D\u63D0\u53D6\u7269\u4E26\u63D2\u5165 CSS \u898F\u5247 */\n this.insert(eachExtractions)\n /* \u6839\u64DA cssText \u751F\u6210 `master.css` \u4E26\u52A0\u5165\u5230 Webpack \u7684 assets \u4E2D */\n const cssText = this.css.text\n if (cssText !== originalCssText) {\n const newSource = new RawSource(cssText)\n if (compilation.getAsset(outputPath)) {\n compilation.updateAsset(outputPath, newSource)\n } else {\n compilation.emitAsset(outputPath, newSource)\n }\n }\n }\n })\n\n compilation.hooks.processAssets.tap({\n name: NAME,\n stage: Compilation.PROCESS_ASSETS_STAGE_ADDITIONS,\n }, () => {\n compilation.chunks.forEach((chunk) => {\n chunk.files.add(outputPath)\n })\n })\n })\n }\n}\n", "import MasterCSSCompiler from './compiler'\nimport path from 'path'\nimport writeFile from './utils/write-file'\nimport type { MasterCSSCompilerOptions } from './options'\nimport type { PluginOption } from 'vite'\n\nexport default function (options?: MasterCSSCompilerOptions): PluginOption {\n const compiler = new MasterCSSCompiler(options)\n const outputPath = path.join(compiler.options.output.dir || '', compiler.options.output.name)\n\n let server\n let outputFilePath: string\n let linkHref: string\n let rendered = false\n\n const extract = (name, content) => {\n const eachExtractions = compiler.extract({ name, content })\n if (eachExtractions.length) {\n const originalCssText = compiler.css.text\n /* \u6BD4\u5C0D\u63D0\u53D6\u7269\u4E26\u63D2\u5165 CSS \u898F\u5247 */\n compiler.insert(eachExtractions)\n /* \u6839\u64DA cssText \u751F\u6210 `master.css` \u4E26\u52A0\u5165\u5230 Webpack \u7684 assets \u4E2D */\n const cssText = compiler.css.text\n if (cssText !== originalCssText) {\n if (server) {\n writeFile(outputFilePath, cssText)\n\n const notify = () => {\n server.ws.send({\n type: 'update',\n updates: [{\n path: linkHref,\n timestamp: Date.now()\n }]\n })\n }\n\n if (rendered) {\n notify()\n } else {\n setTimeout(notify, 500)\n\n rendered = true\n }\n }\n }\n }\n }\n\n return {\n name: 'vite-plugin-master-css',\n enforce: 'pre',\n configureServer(_server) {\n server = _server\n },\n buildStart() {\n outputFilePath = path.resolve(server?.config.cacheDir ?? process.cwd(), outputPath)\n if (server) {\n writeFile(outputFilePath, '')\n\n linkHref = (server.config.cacheDir.slice(process.cwd().length) + '/' + outputPath).replace(/\\\\/g, '/')\n }\n },\n resolveId(source) {\n if (source.endsWith('master.css?direct'))\n return '\\0' + source\n },\n transform(code, id) {\n extract(id, code)\n },\n transformIndexHtml(html) {\n return html.replace(\n /(<head>)/,\n `$1<link rel=\"stylesheet\" href=\"${linkHref}\">`\n )\n },\n async handleHotUpdate(hmrContext) {\n extract(hmrContext.file, await hmrContext.read())\n },\n generateBundle() {\n const referenceId = this.emitFile({\n type: 'asset',\n name: outputPath,\n source: compiler.css.text\n })\n linkHref = '/' + this.getFileName(referenceId)\n }\n } as PluginOption\n}", "import fs from 'fs'\nimport path from 'path'\n\nexport default function writeFile(filePath: string, data: string | NodeJS.ArrayBufferView, options?: fs.WriteFileOptions) {\n const dirname = path.dirname(filePath)\n if (!fs.existsSync(dirname)) {\n fs.mkdirSync(dirname, { recursive: true })\n }\n fs.writeFileSync(filePath, data, options)\n\n}\n"],
5
- "mappings": "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",
6
- "names": ["path", "chalk", "defaultSemantics", "extract", "content", "blocks", "strings", "block", "result", "peelString", "string", "trimString", "x", "checkToExclude", "originContent", "stringRegx", "m", "defaultOptions", "name", "extract", "options_default", "MasterCSS", "extend", "performance", "MasterCSSCompiler", "options", "extend", "options_default", "userConfig", "__require", "path", "MasterCSS", "name", "content", "eachExtractions", "eachNewExtraction", "extractions", "p1", "performance", "eachExtraction", "spent", "validClasses", "rule", "chalk", "path", "NAME", "MasterCSSWebpackPlugin", "MasterCSSCompiler", "compiler", "webpack", "Template", "RuntimeGlobals", "RuntimeModule", "RawSource", "Compilation", "options", "outputPath", "path", "linkHref", "compilation", "enabledChunks", "handler", "chunk", "set", "CssLoadingRuntimeModule", "runtimeRequirements", "modules", "modifiedFiles", "watching", "eachExtractions", "eachModule", "name", "content", "originalCssText", "cssText", "newSource", "path", "fs", "path", "writeFile", "filePath", "data", "options", "dirname", "vite_default", "options", "compiler", "MasterCSSCompiler", "outputPath", "path", "server", "outputFilePath", "linkHref", "rendered", "extract", "name", "content", "eachExtractions", "originalCssText", "cssText", "writeFile", "notify", "_server", "source", "code", "id", "html", "hmrContext", "referenceId"]
7
- }
@@ -1,2 +0,0 @@
1
- import type { MasterCSSCompilerSource } from './index';
2
- export default function extract({ content }: MasterCSSCompilerSource): string[];
@@ -1,4 +0,0 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
- import fs from 'fs';
4
- export default function writeFile(filePath: string, data: string | NodeJS.ArrayBufferView, options?: fs.WriteFileOptions): void;
package/dist/vite.d.ts DELETED
@@ -1,3 +0,0 @@
1
- import type { MasterCSSCompilerOptions } from './options';
2
- import type { PluginOption } from 'vite';
3
- export default function (options?: MasterCSSCompilerOptions): PluginOption;
package/dist/webpack.d.ts DELETED
@@ -1,5 +0,0 @@
1
- import MasterCSSCompiler from './compiler';
2
- import type { Compiler } from 'webpack';
3
- export default class MasterCSSWebpackPlugin extends MasterCSSCompiler {
4
- apply(compiler: Compiler): void;
5
- }
package/readme.md DELETED
@@ -1,80 +0,0 @@
1
- <br><br>
2
- <div align="center">
3
-
4
- <p align="center">
5
- <img src="https://raw.githubusercontent.com/master-co/package/document/images/logo-and-text.svg" alt="logo" width="142">
6
- </p>
7
- <p align="center">
8
- <b><!-- name -->CSS Compiler<!----></b>
9
- </p>
10
- <p align="center"><!-- package.description -->Compile Master CSS ahead of time with zero-configuration integration with build tools<!----></p>
11
-
12
- [![MIT License](https://flat.badgen.net/github/license/master-co/css?color=yellow)](https://github.com/master-co/css-compiler/blob/main/LICENSE)
13
- [![Latest Release](https://flat.badgen.net/npm/v/@master/css-compiler?icon=npm&label&color=yellow)](https://www.npmjs.com/package/@master/css-compiler)
14
- [![Documentation](https://flat.badgen.net/badge/icon/Documentation?icon=awesome&label&color=yellow)](https://css.master.co)
15
- [![Github](https://flat.badgen.net/badge/icon/master-co%2Fcss-compiler?icon=github&label&color=yellow)](https://github.com/master-co/css)
16
- [![Discord](https://flat.badgen.net/badge/icon/discord?icon=discord&label&color=yellow)](https://discord.gg/sZNKpAAAw6)
17
- [![CI](https://flat.badgen.net/github/status/master-co/css-compiler/main/ci/circleci?icon=circleci)](https://circleci.com/gh/master-co/workflows/css-compiler/tree/main)
18
-
19
- </div>
20
-
21
- ##### On this page
22
-
23
- - [Usage](#usage)
24
- - [`webpack.config.js`](#webpackconfigjs)
25
- - [`vite.config.js`](#viteconfigjs)
26
- - [`next.config.js`](#nextconfigjs)
27
- - [Related](#related)
28
-
29
- ---
30
-
31
- # Usage
32
-
33
- ## `webpack.config.js`
34
- ```js
35
- const { MasterCSSWebpackPlugin } = require('@master/css-compiler')
36
-
37
- module.exports = {
38
- plugins: [
39
- new MasterCSSWebpackPlugin()
40
- ]
41
- };
42
- ```
43
-
44
- ## `vite.config.js`
45
- ```js
46
- import { MasterCSSVitePlugin } from '@master/css-compiler'
47
-
48
- export default defineConfig({
49
- plugins: [
50
- MasterCSSVitePlugin()
51
- ]
52
- })
53
- ```
54
-
55
- ## `next.config.js`
56
- ```js
57
- const { MasterCSSWebpackPlugin } = require('@master/css-compiler')
58
-
59
- const nextConfig = {
60
- ...,
61
- webpack: (config) => {
62
- config.plugins.push(
63
- new MasterCSSWebpackPlugin({
64
- output: {
65
- path: 'static/css'
66
- }
67
- })
68
- )
69
- return config
70
- }
71
- }
72
-
73
- module.exports = nextConfig
74
- ```
75
-
76
- ---
77
-
78
- # Related
79
- - [@master/css](https://github.com/master-co/css) - A Virtual CSS language with enhanced syntax. ( ~13KB )
80
- - [@master/css.react](https://github.com/master-co/css.react) - React hooks for Master CSS