@master/css-compiler 2.0.0-beta.98 → 2.0.0-rc.70
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 +34 -133
- package/dist/browser.d.ts +22 -0
- package/dist/browser.mjs +47 -0
- package/dist/core.d.ts +48 -0
- package/dist/core.mjs +2019 -0
- package/dist/css-transform.d.ts +6 -0
- package/dist/css-transform.mjs +18 -0
- package/dist/index.d.ts +46 -3
- package/dist/index.mjs +394 -10
- package/dist/lexer/imports.d.ts +13 -0
- package/dist/lexer/imports.mjs +44 -0
- package/dist/lexer/source.d.ts +3 -0
- package/dist/lexer/source.mjs +9 -0
- package/dist/lexer/standalone-master.d.ts +21 -0
- package/dist/lexer/standalone-master.mjs +233 -0
- package/dist/lower-css-directives.d.ts +16 -0
- package/dist/lower-css-directives.mjs +969 -0
- package/dist/master-css-manifest.d.ts +14 -0
- package/dist/master-css-manifest.mjs +760 -0
- package/dist/native-declaration.d.ts +2 -0
- package/dist/native-declaration.mjs +25 -0
- package/dist/utils/selectors.d.ts +3 -0
- package/dist/utils/selectors.mjs +55 -0
- package/dist/utils/unquote.d.ts +1 -0
- package/dist/utils/unquote.mjs +10 -0
- package/dist/utils/wrap-at-rules.d.ts +1 -0
- package/dist/utils/wrap-at-rules.mjs +10 -0
- package/package.json +1 -1
- package/dist/compiler.d.ts +0 -18
- package/dist/extract.d.ts +0 -3
- package/dist/index.cjs +0 -10
- package/dist/options/index.d.ts +0 -17
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { property, parse, lexer } from 'css-tree';
|
|
2
|
+
|
|
3
|
+
const matches = new Map();
|
|
4
|
+
function isTargetError(error) {
|
|
5
|
+
return error && typeof error === 'object' && 'name' in error && (error.name === 'SyntaxError' || error.name === 'SyntaxMatchError' || error.name === 'SyntaxReferenceError');
|
|
6
|
+
}
|
|
7
|
+
const cssTreeNativeDeclarationMatcher = ({ property: property$1, value })=>{
|
|
8
|
+
if (property(property$1).custom) return true;
|
|
9
|
+
const cacheKey = property$1 + '\0' + value;
|
|
10
|
+
const cached = matches.get(cacheKey);
|
|
11
|
+
if (cached !== undefined) return cached;
|
|
12
|
+
let matched = false;
|
|
13
|
+
try {
|
|
14
|
+
const ast = parse(value, {
|
|
15
|
+
context: 'value'
|
|
16
|
+
});
|
|
17
|
+
matched = !isTargetError(lexer.checkPropertyName(property$1)) && !isTargetError(lexer.matchProperty(property$1, ast).error);
|
|
18
|
+
} catch {
|
|
19
|
+
matched = false;
|
|
20
|
+
}
|
|
21
|
+
matches.set(cacheKey, matched);
|
|
22
|
+
return matched;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export { cssTreeNativeDeclarationMatcher };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare function splitSelectorList(selectorText: string): string[];
|
|
2
|
+
export declare function combineSelectorLists(parentSelectors: string[], childSelectors: string[]): string[];
|
|
3
|
+
export declare function combineStyleSelectors(parentSelector: string, childSelector: string): string;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
function splitSelectorList(selectorText) {
|
|
2
|
+
const selectors = [];
|
|
3
|
+
let current = '';
|
|
4
|
+
let depth = 0;
|
|
5
|
+
let quote = '';
|
|
6
|
+
for(let index = 0; index < selectorText.length; index++){
|
|
7
|
+
const char = selectorText[index];
|
|
8
|
+
if (quote) {
|
|
9
|
+
current += char;
|
|
10
|
+
if (char === '\\') {
|
|
11
|
+
current += selectorText[++index] || '';
|
|
12
|
+
} else if (char === quote) {
|
|
13
|
+
quote = '';
|
|
14
|
+
}
|
|
15
|
+
continue;
|
|
16
|
+
}
|
|
17
|
+
if (char === '"' || char === '\'') {
|
|
18
|
+
quote = char;
|
|
19
|
+
current += char;
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
if (char === '(' || char === '[') {
|
|
23
|
+
depth++;
|
|
24
|
+
current += char;
|
|
25
|
+
continue;
|
|
26
|
+
}
|
|
27
|
+
if (char === ')' || char === ']') {
|
|
28
|
+
depth--;
|
|
29
|
+
current += char;
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
if (char === ',' && depth === 0) {
|
|
33
|
+
selectors.push(current.trim());
|
|
34
|
+
current = '';
|
|
35
|
+
continue;
|
|
36
|
+
}
|
|
37
|
+
current += char;
|
|
38
|
+
}
|
|
39
|
+
if (current.trim()) selectors.push(current.trim());
|
|
40
|
+
return selectors;
|
|
41
|
+
}
|
|
42
|
+
function combineSelectorLists(parentSelectors, childSelectors) {
|
|
43
|
+
const selectors = [];
|
|
44
|
+
for (const child of childSelectors){
|
|
45
|
+
for (const parent of parentSelectors){
|
|
46
|
+
selectors.push(child.includes('&') ? child.replace(/&/g, parent) : `${parent} ${child}`);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return selectors;
|
|
50
|
+
}
|
|
51
|
+
function combineStyleSelectors(parentSelector, childSelector) {
|
|
52
|
+
return combineSelectorLists(splitSelectorList(parentSelector), splitSelectorList(childSelector)).join(',');
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export { combineSelectorLists, combineStyleSelectors, splitSelectorList };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function unquote(value: string): string;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
function unquote(value) {
|
|
2
|
+
const trimmed = value.trim();
|
|
3
|
+
const quote = trimmed[0];
|
|
4
|
+
if ((quote === '"' || quote === '\'') && trimmed.endsWith(quote)) {
|
|
5
|
+
return trimmed.slice(1, -1).replace(/\\(["'\\])/g, '$1');
|
|
6
|
+
}
|
|
7
|
+
return trimmed;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export { unquote as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function wrapAtRules(text: string, atRules?: string[]): string;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
function wrapAtRules(text, atRules) {
|
|
2
|
+
if (!atRules?.length) return text;
|
|
3
|
+
for(let index = atRules.length - 1; index >= 0; index--){
|
|
4
|
+
const atRule = atRules[index]?.trim();
|
|
5
|
+
if (atRule) text = `${atRule}{${text}}`;
|
|
6
|
+
}
|
|
7
|
+
return text;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export { wrapAtRules as default };
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@master/css-compiler","scripts":{"build":"
|
|
1
|
+
{"name":"@master/css-compiler","type":"module","scripts":{"build":"techor build \"src/**/*.ts\" --formats esm","dev":"pnpm build --watch","lint":"eslint","type-check":"tsc --noEmit","test":"vitest"},"license":"MIT","description":"Compile Master CSS stylesheet directives","author":"Aoyue Design LLC.","funding":"https://rc.css.master.co/sponsor","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":["compiler","directives","css","mastercss"],"sideEffects":false,"main":"./dist/index.mjs","module":"./dist/index.mjs","jsnext:main":"./dist/index.mjs","esnext":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","default":"./dist/index.mjs"},"./browser":{"types":"./dist/browser.d.ts","import":"./dist/browser.mjs","default":"./dist/browser.mjs"}},"files":["dist"],"publishConfig":{"access":"public","provenance":true},"dependencies":{"@master/css-engine":"^2.0.0-rc.70","@master/css-lexer":"^2.0.0-rc.70","css-tree":"^3.2.1","csstype":"^3.2.3","lightningcss":"^1.32.0","lightningcss-wasm":"^1.32.0","@master/css-schema":"^2.0.0-rc.70"},"devDependencies":{"@master/css-preset":"^2.0.0-rc.70","@types/css-tree":"^2.3.11"},"version":"2.0.0-rc.70"}
|
package/dist/compiler.d.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Options } from './options';
|
|
2
|
-
import MasterCSS from '@master/css';
|
|
3
|
-
import type { Config } from '@master/css';
|
|
4
|
-
import Techor from 'techor';
|
|
5
|
-
export default class MasterCSSCompiler extends Techor<Options, Config> {
|
|
6
|
-
constructor(options?: Options);
|
|
7
|
-
css: MasterCSS;
|
|
8
|
-
extractions: Set<string>;
|
|
9
|
-
get resolvedModuleId(): string;
|
|
10
|
-
get moduleHMREvent(): string;
|
|
11
|
-
init(): this;
|
|
12
|
-
compile(): this;
|
|
13
|
-
extract(name: string, content: string): string[];
|
|
14
|
-
insert(name: string, content: string): boolean;
|
|
15
|
-
get sources(): string[];
|
|
16
|
-
checkSourcePath(name: string): boolean;
|
|
17
|
-
get config(): Config;
|
|
18
|
-
}
|
package/dist/extract.d.ts
DELETED
package/dist/index.cjs
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
var ye=Object.create;var R=Object.defineProperty;var $e=Object.getOwnPropertyDescriptor;var xe=Object.getOwnPropertyNames;var Oe=Object.getPrototypeOf,Ce=Object.prototype.hasOwnProperty;var Ee=(e,r)=>{for(var t in r)R(e,t,{get:r[t],enumerable:!0})},H=(e,r,t,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of xe(r))!Ce.call(e,i)&&i!==t&&R(e,i,{get:()=>r[i],enumerable:!(s=$e(r,i))||s.enumerable});return e};var y=(e,r,t)=>(t=e!=null?ye(Oe(e)):{},H(r||!e||!e.__esModule?R(t,"default",{value:e,enumerable:!0}):t,e)),Te=e=>H(R({},"__esModule",{value:!0}),e);var pr={};Ee(pr,{default:()=>w,options:()=>S});module.exports=Te(pr);var A=y(require("upath"));var we={module:"master.css",config:"master.css.{ts,js,mjs,cjs}",sources:[],include:["**/*.{html,js,jsx,ts,tsx,svelte,astro,vue,md,mdx,pug,php}"],exclude:["**/node_modules/**","**/*.d.ts","**/*.test.*","node_modules","master.css.{js,ts,mjs,cjs}","dist","out","README.md"],fixedClasses:[],ignoredClasses:[]},S=we;var de=y(require("@master/css")),U=require("perf_hooks");var J=require("@master/css");function F({content:e},{config:r,classes:t}){e=Re(e);let s=[...new Set(Object.keys(r.semantics??J.semantics).concat(Object.keys(t)))],i=e.match(/\S+/g)??[],o=new Set;for(let l of i){o.add(P(l,s));let a=Z(l);if(a.size)for(let p of a)o.add(P(p,s))}return[...o].filter(l=>l&&!Se(l,s))}var P=(e,r)=>{let t=e,s=e.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?r.concat(s):r).find(i=>t.startsWith(i))?e=I(e,i=>i.replace(/^[^:@~(]*(?<!@>?)=/,"").replace(/(?:[([{\\:#=.]+|["'`].*)$/,"")):e=I(e,i=>i.replace(/^[^:@~(]*(?:["'`]|(?<!@>?)=)/,"").replace(/(?:[([{\\:#=.]+|["'`].*)$/,"")),t===e||!e?e:P(e,r)},K=e=>e.match(/((?<!\\)["'`])(?:\\\1|(?:(?!\1))[\S\s])*(?<!\\)\1/g),z=(e,r)=>(r?.forEach((t,s)=>{e=e.replace(t,`COMPLETE-STRING--${s}--`)}),e),I=(e,r)=>{let t=K(e);return e=z(e,t),e=r(e),t?.forEach((s,i)=>{e=e.replace(`COMPLETE-STRING--${i}--`,s)}),e},Z=e=>{let r=new Set,t=/((?<!\\)["'`])((?:\\\1|(?:(?!\1))[\S\s])*)((?<!\\)\1)/g,s;for(;(s=t.exec(e))!==null;){s.index===t.lastIndex&&t.lastIndex++,r.add(s[2]);let i=Z(s[2]);if(i.size)for(let o of i)r.add(o)}return r},Re=e=>I(e,r=>r.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\([^;\s]*\)/g,"")),Se=(e,r)=>{let t=K(e),s=z(e,t),i=/{(.*)}/,o;for(;(o=i.exec(s))!==null;)return o[1].split(";").find(a=>q(a,r))!==void 0;return q(s,r)||Ne(e)},q=(e,r)=>!e||!e.match(/(?:\S*\{\S*\})|(?:^[\w\-()]+:\S+)|(?:^[\w-]+\(\S+\)$)|(?:^[@~]\S+$)/)&&!e.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)?)$/)&&!r.includes(e)||e.match(/\*\*/)||e.match(/:\[/)||e.match(/\$\{/)||e.match(/\{\{/)||e.match(/\(\{[^}]*\}/)||e.match(/<\w+>|<\/\w+>/)||e.match(/;$/)||e.match(/^\w+:\/\//)||e.match(/^@(?:ts-[^\s]+|charset|import|namespace|media|supports|document|page|font-face|keyframes|counter-style|font-feature-values|property|layer)$/)||e.match(/^~\/.+.\w+$/)||e.match(/function\(|\(.*\)=>/),Ne=e=>{let r=[],t;for(let s=0;s<e.length;s++)switch(e[s]){case"(":case"[":case"{":r.push(e[s]);break;case")":case"]":case"}":if(t=r.pop(),e[s]===")"&&t!=="("||e[s]==="]"&&t!=="["||e[s]==="}"&&t!=="{")return!0;break}return r.length>0};var me=y(require("fs")),V=y(require("fast-glob")),B=y(require("minimatch")),be=y(require("techor"));var k=y(require("node:process"),1),pe=y(require("node:os"),1),L=y(require("node:tty"),1),je=Object.create,ue=Object.defineProperty,ke=Object.getOwnPropertyDescriptor,Ae=Object.getOwnPropertyNames,Be=Object.getPrototypeOf,Me=Object.prototype.hasOwnProperty,Pe=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),Ie=(e,r,t,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of Ae(r))!Me.call(e,i)&&i!==t&&ue(e,i,{get:()=>r[i],enumerable:!(s=ke(r,i))||s.enumerable});return e},Fe=(e,r,t)=>(t=e!=null?je(Be(e)):{},Ie(r||!e||!e.__esModule?ue(t,"default",{value:e,enumerable:!0}):t,e)),_e=Pe((e,r)=>{"use strict";function t(s){var i=void 0;typeof s=="string"?i=[s]:i=s.raw;for(var o="",l=0;l<i.length;l++)o+=i[l].replace(/\\\n[ \t]*/g,"").replace(/\\`/g,"`"),l<(arguments.length<=1?0:arguments.length-1)&&(o+=arguments.length<=l+1?void 0:arguments[l+1]);var a=o.split(`
|
|
2
|
-
`),p=null;return a.forEach(function(u){var f=u.match(/^(\s+)\S+/);if(f){var $=f[1].length;p?p=Math.min(p,$):p=$}}),p!==null&&(o=a.map(function(u){return u[0]===" "?u.slice(p):u}).join(`
|
|
3
|
-
`)),o=o.trim(),o.replace(/\\n/g,`
|
|
4
|
-
`)}typeof r<"u"&&(r.exports=t)}),m=(e,r)=>{if(!e)throw new Error(r)},Ge=e=>{let r={joined:!0,spacerNoNeighbour:" ",spacerNeighbour:"\u2502 ",keyNoNeighbour:"\u2514\u2500 ",keyNeighbour:"\u251C\u2500 ",separator:": ",renderFn:t=>["boolean","string","number"].includes(typeof t)?t:void 0,sortFn:null,breakCircularWith:" (circular ref.)",...e};return m(Object.keys(r).length===9,"Unexpected Option(s) provided"),m(typeof r.joined=="boolean",'Option "joined" has invalid format'),m(typeof r.spacerNoNeighbour=="string",'Option "spacerNoNeighbour" has invalid format'),m(typeof r.spacerNeighbour=="string",'Option "spacerNeighbour" has invalid format'),m(typeof r.keyNoNeighbour=="string",'Option "keyNoNeighbour" has invalid format'),m(typeof r.keyNeighbour=="string",'Option "keyNeighbour" has invalid format'),m(typeof r.separator=="string",'Option "separator" has invalid format'),m(typeof r.renderFn=="function",'Option "renderFn" has invalid format'),m(typeof r.sortFn=="function"||r.sortFn===null,'Option "sortFn" has invalid format'),m(typeof r.breakCircularWith=="string"||r.breakCircularWith===null,'Option "breakCircularWith" has invalid format'),r},ge=(e,r={})=>{let t=Ge(r),s=[],i=t.renderFn(e);i!==void 0&&s.push(String(i));let o=u=>t.sortFn===null?u.reverse():u.sort((f,$)=>t.sortFn($,f)),l=[],a=o(Object.keys(e)).map(u=>[u]),p=[e];for(;a.length!==0;){let u=a.pop(),f=p[u.length-1][u[u.length-1]],$=t.breakCircularWith!==null&&p.includes(f);l[u.length-1]=a.length!==0&&a[a.length-1].length===u.length;let ve=t.renderFn(f);s.push([l.slice(0,u.length-1).map(M=>M?t.spacerNeighbour:t.spacerNoNeighbour).join(""),l[u.length-1]?t.keyNeighbour:t.keyNoNeighbour,u[u.length-1],ve===void 0?"":`${t.separator}${f}`,$?t.breakCircularWith:""].join("")),f instanceof Object&&!Array.isArray(f)&&!$&&(a.push(...o(Object.keys(f)).map(M=>u.concat(M))),p[u.length]=f)}return t.joined===!0?s.join(`
|
|
5
|
-
`):s},Q=(e=0)=>r=>`\x1B[${r+e}m`,X=(e=0)=>r=>`\x1B[${38+e};5;${r}m`,ee=(e=0)=>(r,t,s)=>`\x1B[${38+e};2;${r};${t};${s}m`,c={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],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],gray:[90,39],grey:[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],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},br=Object.keys(c.modifier),Le=Object.keys(c.color),Ye=Object.keys(c.bgColor),vr=[...Le,...Ye];function De(){let e=new Map;for(let[r,t]of Object.entries(c)){for(let[s,i]of Object.entries(t))c[s]={open:`\x1B[${i[0]}m`,close:`\x1B[${i[1]}m`},t[s]=c[s],e.set(i[0],i[1]);Object.defineProperty(c,r,{value:t,enumerable:!1})}return Object.defineProperty(c,"codes",{value:e,enumerable:!1}),c.color.close="\x1B[39m",c.bgColor.close="\x1B[49m",c.color.ansi=Q(),c.color.ansi256=X(),c.color.ansi16m=ee(),c.bgColor.ansi=Q(10),c.bgColor.ansi256=X(10),c.bgColor.ansi16m=ee(10),Object.defineProperties(c,{rgbToAnsi256:{value(r,t,s){return r===t&&t===s?r<8?16:r>248?231:Math.round((r-8)/247*24)+232:16+36*Math.round(r/255*5)+6*Math.round(t/255*5)+Math.round(s/255*5)},enumerable:!1},hexToRgb:{value(r){let t=/[a-f\d]{6}|[a-f\d]{3}/i.exec(r.toString(16));if(!t)return[0,0,0];let[s]=t;s.length===3&&(s=[...s].map(o=>o+o).join(""));let i=Number.parseInt(s,16);return[i>>16&255,i>>8&255,i&255]},enumerable:!1},hexToAnsi256:{value:r=>c.rgbToAnsi256(...c.hexToRgb(r)),enumerable:!1},ansi256ToAnsi:{value(r){if(r<8)return 30+r;if(r<16)return 90+(r-8);let t,s,i;if(r>=232)t=((r-232)*10+8)/255,s=t,i=t;else{r-=16;let a=r%36;t=Math.floor(r/36)/5,s=Math.floor(a/6)/5,i=a%6/5}let o=Math.max(t,s,i)*2;if(o===0)return 30;let l=30+(Math.round(i)<<2|Math.round(s)<<1|Math.round(t));return o===2&&(l+=60),l},enumerable:!1},rgbToAnsi:{value:(r,t,s)=>c.ansi256ToAnsi(c.rgbToAnsi256(r,t,s)),enumerable:!1},hexToAnsi:{value:r=>c.ansi256ToAnsi(c.hexToAnsi256(r)),enumerable:!1}}),c}var We=De(),b=We;function d(e,r=globalThis.Deno?globalThis.Deno.args:k.default.argv){let t=e.startsWith("-")?"":e.length===1?"-":"--",s=r.indexOf(t+e),i=r.indexOf("--");return s!==-1&&(i===-1||s<i)}var{env:g}=k.default,N;d("no-color")||d("no-colors")||d("color=false")||d("color=never")?N=0:(d("color")||d("colors")||d("color=true")||d("color=always"))&&(N=1);function Ue(){if("FORCE_COLOR"in g)return g.FORCE_COLOR==="true"?1:g.FORCE_COLOR==="false"?0:g.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(g.FORCE_COLOR,10),3)}function Ve(e){return e===0?!1:{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function He(e,{streamIsTTY:r,sniffFlags:t=!0}={}){let s=Ue();s!==void 0&&(N=s);let i=t?N:s;if(i===0)return 0;if(t){if(d("color=16m")||d("color=full")||d("color=truecolor"))return 3;if(d("color=256"))return 2}if("TF_BUILD"in g&&"AGENT_NAME"in g)return 1;if(e&&!r&&i===void 0)return 0;let o=i||0;if(g.TERM==="dumb")return o;if(k.default.platform==="win32"){let l=pe.default.release().split(".");return Number(l[0])>=10&&Number(l[2])>=10586?Number(l[2])>=14931?3:2:1}if("CI"in g)return"GITHUB_ACTIONS"in g?3:["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(l=>l in g)||g.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in g)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(g.TEAMCITY_VERSION)?1:0;if(g.COLORTERM==="truecolor"||g.TERM==="xterm-kitty")return 3;if("TERM_PROGRAM"in g){let l=Number.parseInt((g.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(g.TERM_PROGRAM){case"iTerm.app":return l>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(g.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(g.TERM)||"COLORTERM"in g?1:o}function re(e,r={}){let t=He(e,{streamIsTTY:e&&e.isTTY,...r});return Ve(t)}var qe={stdout:re({isTTY:L.default.isatty(1)}),stderr:re({isTTY:L.default.isatty(2)})},Je=qe;function Ke(e,r,t){let s=e.indexOf(r);if(s===-1)return e;let i=r.length,o=0,l="";do l+=e.slice(o,s)+r+t,o=s+i,s=e.indexOf(r,o);while(s!==-1);return l+=e.slice(o),l}function ze(e,r,t,s){let i=0,o="";do{let l=e[s-1]==="\r";o+=e.slice(i,l?s-1:s)+r+(l?`\r
|
|
6
|
-
`:`
|
|
7
|
-
`)+t,i=s+1,s=e.indexOf(`
|
|
8
|
-
`,i)}while(s!==-1);return o+=e.slice(i),o}var{stdout:te,stderr:se}=Je,Y=Symbol("GENERATOR"),x=Symbol("STYLER"),E=Symbol("IS_EMPTY"),ie=["ansi","ansi","ansi256","ansi16m"],O=Object.create(null),Ze=(e,r={})=>{if(r.level&&!(Number.isInteger(r.level)&&r.level>=0&&r.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let t=te?te.level:0;e.level=r.level===void 0?t:r.level},Qe=e=>{let r=(...t)=>t.join(" ");return Ze(r,e),Object.setPrototypeOf(r,T.prototype),r};function T(e){return Qe(e)}Object.setPrototypeOf(T.prototype,Function.prototype);for(let[e,r]of Object.entries(b))O[e]={get(){let t=j(this,W(r.open,r.close,this[x]),this[E]);return Object.defineProperty(this,e,{value:t}),t}};O.visible={get(){let e=j(this,this[x],!0);return Object.defineProperty(this,"visible",{value:e}),e}};var D=(e,r,t,...s)=>e==="rgb"?r==="ansi16m"?b[t].ansi16m(...s):r==="ansi256"?b[t].ansi256(b.rgbToAnsi256(...s)):b[t].ansi(b.rgbToAnsi(...s)):e==="hex"?D("rgb",r,t,...b.hexToRgb(...s)):b[t][e](...s),Xe=["rgb","hex","ansi256"];for(let e of Xe){O[e]={get(){let{level:t}=this;return function(...s){let i=W(D(e,ie[t],"color",...s),b.color.close,this[x]);return j(this,i,this[E])}}};let r="bg"+e[0].toUpperCase()+e.slice(1);O[r]={get(){let{level:t}=this;return function(...s){let i=W(D(e,ie[t],"bgColor",...s),b.bgColor.close,this[x]);return j(this,i,this[E])}}}}var er=Object.defineProperties(()=>{},{...O,level:{enumerable:!0,get(){return this[Y].level},set(e){this[Y].level=e}}}),W=(e,r,t)=>{let s,i;return t===void 0?(s=e,i=r):(s=t.openAll+e,i=r+t.closeAll),{open:e,close:r,openAll:s,closeAll:i,parent:t}},j=(e,r,t)=>{let s=(...i)=>rr(s,i.length===1?""+i[0]:i.join(" "));return Object.setPrototypeOf(s,er),s[Y]=e,s[x]=r,s[E]=t,s},rr=(e,r)=>{if(e.level<=0||!r)return e[E]?"":r;let t=e[x];if(t===void 0)return r;let{openAll:s,closeAll:i}=t;if(r.includes("\x1B"))for(;t!==void 0;)r=Ke(r,t.close,t.open),t=t.parent;let o=r.indexOf(`
|
|
9
|
-
`);return o!==-1&&(r=ze(r,i,s,o)),s+r+i};Object.defineProperties(T.prototype,O);var tr=T(),yr=T({level:se?se.level:0}),n=tr;function v(e){return e.split(" ").map(r=>r.replace(/^(\d*\.?\d*)$/g,`${n.blue("$1")}`).replace(/^(\d*\.?\d*)(YB|ZB|EB|PB|TB|GB|MB|KB|B|mb|kb|bit|zs|as|fs|ps|ns|µs|ms|s|m|h|d|m|y)$/g,`${n.cyan("$1")}${n.magenta("$2")}`).replace(/^((?:[0-1]?[0-9]|[2][0-3]):[0-5][0-9]:[0-5][0-9] (?:AM|PM)?)$/g,`${n.dim("$1")}`).replace(/^\[(.*?)\]$/g,`${n.dim("[")}${n.magenta("$1")}${n.dim("]")}`).replace(/^`(.*?)`$/g,`${n.dim("`")}$1${n.dim("`")}`).replace(/^\((.*?)\)$/g,`${n.dim("(")}$1${n.dim(")")}`).replace(/^<(.*?)>$/g,`${n.dim("<")}${n.gray("$1")}${n.dim(">")}`).replace(/->/g,n.dim("\u2192")).replace(/<-/g,n.dim("\u2190")).replace(/^\$t$/g,`${n.dim(new Date().toLocaleTimeString())}`).replace(/^\*\*(.*?)\*\*$/g,`${n.bold.white("$1")}`).replace(/^~~(.*?)~~$/g,`${n.strikethrough("$1")}`).replace(/^__(.*?)__$/g,`${n.underline("$1")}`).replace(/^\.\.(.*?)\.\.$/g,`${n.dim("$1")}`).replace(/^!!(.*?)!!$/g,`${n.yellow("$1")}`).replace(/^\*(.*?)\*$/g,`${n.italic("$1")}`).replace(/^_(.*?)_$/g,`${n.italic("$1")}`).replace(/^\+(.*?)\+$/g,`${n.green("$1")}`).replace(/^-(.*?)-$/g,`${n.red("$1")}`)).join(" ")}function h(e,r){let t="";if(Array.isArray(e))for(let s=0;s<e.length;s++)t+=_(e[s])+_(r[s]);else t=[e,...r].map(s=>_(s)).join(" ");return v(t)}var _=e=>e?Array.isArray(e)?e.map(r=>{switch(typeof r){case"string":return`'${n.yellow(r)}'`;case"number":case"boolean":return n.blue(r);default:return r}}).join(n.gray(", ")):e:"",oe=(e,...r)=>{let t=n.green("+")+" "+h(e,r);return console.log(t),t},ne=(e,...r)=>{let t=n.bgRed.bold.white(" \u{1D5EB} ERROR ")+" "+h(e,r);return console.log(t),t},sr=(e,...r)=>{let t=n.bgYellow.bold.white(" \u26A0\uFE0F CONFLICT ")+" "+n.yellow(h(e,r));return console.log(t),t},ir=(e,...r)=>{let t=n.green("\u2713 ")+h(e,r);return console.log(t),t},G=(e,...r)=>{let t=n.red("-")+" "+h(e,r);return console.log(t),t},le=(e,...r)=>{let t=n.green("\u25CB ")+h(e,r);return console.log(t),t},ae=(e,...r)=>{let t=n.red("\u2717 ")+h(e,r);return console.log(t),t},ce=(e,...r)=>{let t=v("$t ")+h(e,r);return console.log(t),t},or=(e,...r)=>{let t=n.green("\u23FA Success ")+h(e,r);return console.log(t),t},nr=(e,...r)=>{let t=n.yellow("\u23FA Warn ")+h(e,r);return console.log(t),t},lr=(e,...r)=>{let t=n.bgGreen.bold.white(" \u2713 PASS ")+" "+h(e,r);return console.log(t),t},ar=e=>{console.log(ge(he(JSON.parse(JSON.stringify(e))),{spacerNeighbour:v("..\u2502..")+" ",keyNoNeighbour:v("..\u2514\u2500..")+" ",keyNeighbour:v("..\u251C\u2500..")+" ",separator:v("..:..")+" "}))};function he(e){for(let r in e){let t=e[r];Array.isArray(t)?e[r]=t.map(s=>v(`**${s}**`)).join(v("..,..")):typeof t=="object"?he(t):e[r]=v(`**${t}**`)}return e}var cr=(e,...r)=>{let t=n.red("\u23FA Fail ")+h(e,r);return console.log(t),t},ur=Fe(_e());function gr(e){let{message:r,stack:t}=typeof e=="string"?new Error(e):e,s={};return(0,ur.default)(t.replace(r,"").replace(/^Error: /,"")).split(`
|
|
10
|
-
`).forEach(i=>{s[i.split(" ").map(o=>o.replace(/^\((.+)\)$/,`${n.cyan("$1")}`).replace(/\./g,`${n.dim(".")}`).replace(/^at$/,l=>n.dim(l))).join(" ")]=null}),{message:r.trim().replace(/Error: /g,""),stackTree:s}}var fe=(e,...r)=>{if(e instanceof Error){let{message:t,stackTree:s}=gr(e);return console.log(""),console.log(n.bgRed.bold.white(" \u{1D5EB} ERROR ")+" "+n.bold.red(t)),console.log(ge(s,{spacerNeighbour:n.redBright.dim("\u2502\u2000\u2000"),keyNoNeighbour:n.redBright.dim("\u2514\u2500\u2000"),keyNeighbour:n.redBright.dim("\u251C\u2500 "),separator:n.redBright.dim(":\u2000")})),console.log(""),t}else{let t=h(e,r);return console.log(t),t}};Object.assign(fe,{a:oe,add:oe,d:G,del:G,delete:G,o:le,valid:le,x:ae,invalid:ae,i:ce,info:ce,e:ne,error:ne,success:or,fail:cr,warn:nr,pass:lr,conflict:sr,ok:ir,tree:ar,paint:v});var C=fe;var w=class extends be.default{constructor(r){super(S,r),this.init()}css;extractions=new Set;get resolvedModuleId(){return"\0"+this.options.module}get moduleHMREvent(){return`HMR:${this.options.module}`}init(){return this.extractions.clear(),console.log(""),this.css=new de.default({config:this.readConfig()}),this.compile(),this}compile(){if(this.options.fixedClasses?.length)for(let r of this.options.fixedClasses)this.css.insert(r);return this.sources.forEach(r=>{let t=me.default.readFileSync(A.default.resolve(this.options.cwd,r),{encoding:"utf-8"}).toString();this.insert(r,t)}),this}extract(r,t){if(!r||!t||!this.checkSourcePath(r))return[];let s=[];for(let i of F({content:t,name:r},this.css))this.extractions.has(i)||(this.extractions.add(i),s.push(i));return s.length&&(console.log(""),C`**${A.default.relative(this.options.cwd,r)}** ..${A.default.resolve(this.options.cwd,r)}..`,C`[extract] ${s.length} potential`),s}insert(r,t){let s=this.extract(r,t);if(!s.length)return!1;let i=U.performance.now(),o=[];this.options.ignoredClasses?.length&&(s=s.filter(l=>{for(let a of this.options.ignoredClasses)if(typeof a=="string"){if(a===l)return!1}else if(a.test(l))return!1;return!0}));for(let l of s)this.css.insert(l)&&o.push(l);if(this.css.rules.length){let l=Math.round((U.performance.now()-i)*100)/100,a=o.filter(p=>!s.includes(p));a.length&&C`[exclude] ${a.length} unknow ${a}`,C`[compile] +${o.length}+ valid inserted ${n.gray("in")} ${l}ms ${o}`,C`[virtual] ${this.css.rules.length} total ${n.gray("in")} ${this.options.module}`}return!0}get sources(){let{include:r,exclude:t,sources:s}=this.options,i=V.default.sync(r,{cwd:this.options.cwd,ignore:t});return s?.length&&i.push(...V.default.sync(s,{cwd:this.options.cwd})),i}checkSourcePath(r){let{include:t,exclude:s,sources:i}=this.options;for(let o of i)if((0,B.default)(r,o))return!0;for(let o of t)if(!(0,B.default)(r,o))return!1;for(let o of s)if((0,B.default)(r,o))return!1;return!0}get config(){return this.css.config}};0&&(module.exports={options});
|
package/dist/options/index.d.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
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 = {
|
|
6
|
-
name: string;
|
|
7
|
-
content: string;
|
|
8
|
-
};
|
|
9
|
-
export interface Options extends TechorOptions<Config> {
|
|
10
|
-
module?: string;
|
|
11
|
-
sources?: FastGlobPattern[];
|
|
12
|
-
include?: FastGlobPattern[];
|
|
13
|
-
exclude?: FastGlobPattern[];
|
|
14
|
-
fixedClasses?: string[];
|
|
15
|
-
ignoredClasses?: string[] | RegExp[];
|
|
16
|
-
}
|
|
17
|
-
export default options;
|