@master/eslint-plugin-css 2.0.0-beta.187 → 2.0.0-beta.188

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.
@@ -0,0 +1,8 @@
1
+ declare const config: {
2
+ readonly rules: {
3
+ readonly '@master/css/class-order': "warn";
4
+ readonly '@master/css/class-validation': "error";
5
+ readonly '@master/css/class-collision': "warn";
6
+ };
7
+ };
8
+ export default config;
package/dist/config.js ADDED
@@ -0,0 +1 @@
1
+ var o=Object.defineProperty;var l=Object.getOwnPropertyDescriptor;var t=Object.getOwnPropertyNames;var n=Object.prototype.hasOwnProperty;var i=(a,s)=>{for(var c in s)o(a,c,{get:s[c],enumerable:!0})},d=(a,s,c,e)=>{if(s&&typeof s=="object"||typeof s=="function")for(let r of t(s))!n.call(a,r)&&r!==c&&o(a,r,{get:()=>s[r],enumerable:!(e=l(s,r))||e.enumerable});return a};var m=a=>d(o({},"__esModule",{value:!0}),a);var w={};i(w,{default:()=>u});module.exports=m(w);const f={rules:{"@master/css/class-order":"warn","@master/css/class-validation":"error","@master/css/class-collision":"warn"}};var u=f;
@@ -0,0 +1 @@
1
+ const s={rules:{"@master/css/class-order":"warn","@master/css/class-validation":"error","@master/css/class-collision":"warn"}};var a=s;export{a as default};
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- var f=Object.create;var t=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var n=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty;var u=(o,p,r,m)=>{if(p&&typeof p=="object"||typeof p=="function")for(let i of l(p))!s.call(o,i)&&i!==r&&t(o,i,{get:()=>p[i],enumerable:!(m=g(p,i))||m.enumerable});return o};var x=(o,p,r)=>(r=o!=null?f(n(o)):{},u(p||!o||!o.__esModule?t(r,"default",{value:o,enumerable:!0}):r,o));var e=x(require("./plugin"));module.exports=e.default;
1
+ var g=Object.create;var p=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var l=Object.getOwnPropertyNames;var a=Object.getPrototypeOf,u=Object.prototype.hasOwnProperty;var d=(s,m,o,n)=>{if(m&&typeof m=="object"||typeof m=="function")for(let r of l(m))!u.call(s,r)&&r!==o&&p(s,r,{get:()=>m[r],enumerable:!(n=c(m,r))||n.enumerable});return s};var i=(s,m,o)=>(o=s!=null?g(a(s)):{},d(m||!s||!s.__esModule?p(o,"default",{value:s,enumerable:!0}):o,s));var t=i(require("./plugin")),e=i(require("./config")),f=i(require("./settings"));module.exports={...t.default,configs:{recommended:{plugins:["@master/css"],...e.default},flat:{plugins:{"@master/css":t.default},...e.default}},settings:f.default};
package/dist/index.mjs ADDED
@@ -0,0 +1 @@
1
+ var t=(i,s)=>()=>(s||i((s={exports:{}}).exports,s),s.exports);import m from"./plugin";import o from"./config";import e from"./settings";var n=t((l,r)=>{r.exports={...m,configs:{recommended:{plugins:["@master/css"],...o},flat:{plugins:{"@master/css":m},...o}},settings:e}});export default n();
package/dist/plugin.d.ts CHANGED
@@ -1,8 +1,3 @@
1
- declare const plugin: {
2
- rules: {
3
- 'class-collision': import("eslint").Rule.RuleModule;
4
- 'class-order': import("eslint").Rule.RuleModule;
5
- 'class-validation': import("eslint").Rule.RuleModule;
6
- };
7
- };
1
+ import type { ESLint } from 'eslint';
2
+ declare const plugin: ESLint.Plugin;
8
3
  export default plugin;
package/dist/plugin.js CHANGED
@@ -1 +1 @@
1
- var e=Object.create;var r=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var u=Object.getPrototypeOf,g=Object.prototype.hasOwnProperty;var v=(s,l)=>{for(var o in l)r(s,o,{get:l[o],enumerable:!0})},t=(s,l,o,c)=>{if(l&&typeof l=="object"||typeof l=="function")for(let i of f(l))!g.call(s,i)&&i!==o&&r(s,i,{get:()=>l[i],enumerable:!(c=p(l,i))||c.enumerable});return s};var a=(s,l,o)=>(o=s!=null?e(u(s)):{},t(l||!s||!s.__esModule?r(o,"default",{value:s,enumerable:!0}):o,s)),x=s=>t(r({},"__esModule",{value:!0}),s);var V={};v(V,{default:()=>O});module.exports=x(V);var m=a(require("./rules/class-collision")),n=a(require("./rules/class-order")),d=a(require("./rules/class-validation"));const C={rules:{"class-collision":m.default,"class-order":n.default,"class-validation":d.default}};var O=C;
1
+ var p=Object.create;var t=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var f=Object.getOwnPropertyNames;var u=Object.getPrototypeOf,g=Object.prototype.hasOwnProperty;var E=(s,i)=>{for(var l in i)t(s,l,{get:i[l],enumerable:!0})},n=(s,i,l,a)=>{if(i&&typeof i=="object"||typeof i=="function")for(let o of f(i))!g.call(s,o)&&o!==l&&t(s,o,{get:()=>i[o],enumerable:!(a=d(i,o))||a.enumerable});return s};var r=(s,i,l)=>(l=s!=null?p(u(s)):{},n(i||!s||!s.__esModule?t(l,"default",{value:s,enumerable:!0}):l,s)),L=s=>n(t({},"__esModule",{value:!0}),s);var x={};E(x,{default:()=>v});module.exports=L(x);var e=r(require("./rules/class-collision")),m=r(require("./rules/class-order")),c=r(require("./rules/class-validation"));const S={meta:{name:"@master/eslint-plugin-css"},rules:{"class-collision":e.default,"class-order":m.default,"class-validation":c.default}};var v=S;
@@ -0,0 +1 @@
1
+ import s from"./rules/class-collision";import i from"./rules/class-order";import l from"./rules/class-validation";const o={meta:{name:"@master/eslint-plugin-css"},rules:{"class-collision":s,"class-order":i,"class-validation":l}};var n=o;export{n as default};
@@ -1 +1 @@
1
- var M=Object.create;var f=Object.defineProperty;var N=Object.getOwnPropertyDescriptor;var V=Object.getOwnPropertyNames;var q=Object.getPrototypeOf,A=Object.prototype.hasOwnProperty;var D=(e,o)=>{for(var s in o)f(e,s,{get:o[s],enumerable:!0})},R=(e,o,s,c)=>{if(o&&typeof o=="object"||typeof o=="function")for(let l of V(o))!A.call(e,l)&&l!==s&&f(e,l,{get:()=>o[l],enumerable:!(c=N(o,l))||c.enumerable});return e};var m=(e,o,s)=>(s=e!=null?M(q(e)):{},R(o||!e||!e.__esModule?f(s,"default",{value:e,enumerable:!0}):s,e)),K=e=>R(f({},"__esModule",{value:!0}),e);var U={};D(U,{default:()=>O});module.exports=K(U);var S=m(require("../utils/ast")),$=m(require("../utils/are-declarations-equal")),v=m(require("../utils/define-visitors")),x=m(require("../utils/resolve-context")),y=require("@master/css-validator"),O={meta:{docs:{description:"Avoid applying classes with the same CSS declaration",category:"Stylistic Issues",recommended:!1,url:"https://beta.css.master.co/docs/code-linting#class-collision-detection"},messages:{collisionClass:"{{message}}"},fixable:"code"},create(e){const{options:o,settings:s,config:c}=(0,x.default)(e);return(0,v.default)({context:e,options:o,settings:s,config:c},(E,L=null)=>{S.parseNodeRecursive(E,L,(n,C,T,b,j)=>{const k=e.sourceCode.lines,w=C.loc.start.line,I=C.loc.end.line,p={};console.log(n),n.forEach(i=>{p[i]=(0,y.createValidRules)(i,{config:c})[0]});for(let i=0;i<n.length;i++){const u=n[i],g=p[u],d=[];if(g)for(let a=0;a<n.length;a++){const r=n[a],t=p[r];i!==a&&t&&(0,$.default)(g.declarations,t.declarations)&&g.stateToken===t.stateToken&&d.push(r)}if(d.length>0){const a=d.map(t=>`"${t}"`).join(" and ");let r=T;for(const t of d){const h=t.replace(/(\\|\.|\(|\)|\[|\]|\{|\}|\+|\*|\?|\^|\$|\||\/)/g,"\\$1");r=r.replace(new RegExp(`\\s+${h}|${h}\\s+`),"")}e.report({loc:S.findLoc(u,k,w,I),messageId:"collisionClass",data:{message:`"${u}" applies the same CSS declarations as ${a}.`},fix:function(t){return t.replaceTextRange([b,j],r)}})}}},!1,!1,s.ignoredKeys,e)})}};
1
+ var I=Object.create;var f=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var V=Object.getOwnPropertyNames;var q=Object.getPrototypeOf,A=Object.prototype.hasOwnProperty;var D=(e,s)=>{for(var o in s)f(e,o,{get:s[o],enumerable:!0})},R=(e,s,o,r)=>{if(s&&typeof s=="object"||typeof s=="function")for(let l of V(s))!A.call(e,l)&&l!==o&&f(e,l,{get:()=>s[l],enumerable:!(r=M(s,l))||r.enumerable});return e};var m=(e,s,o)=>(o=e!=null?I(q(e)):{},R(s||!e||!e.__esModule?f(o,"default",{value:e,enumerable:!0}):o,e)),K=e=>R(f({},"__esModule",{value:!0}),e);var U={};D(U,{default:()=>O});module.exports=K(U);var S=m(require("../utils/ast")),$=m(require("../utils/are-declarations-equal")),v=m(require("../utils/define-visitors")),x=m(require("../utils/resolve-context")),y=require("@master/css-validator"),O={meta:{docs:{description:"Avoid applying classes with the same CSS declaration",category:"Stylistic Issues",recommended:!1,url:"https://beta.css.master.co/docs/code-linting#class-collision-detection"},messages:{collisionClass:"{{message}}"},fixable:"code"},create(e){const{options:s,settings:o,config:r}=(0,x.default)(e);return(0,v.default)({context:e,options:s,settings:o,config:r},(E,L=null)=>{S.parseNodeRecursive(E,L,(c,C,N,T,b)=>{const j=e.sourceCode.lines,k=C.loc.start.line,w=C.loc.end.line,p={};c.forEach(i=>{p[i]=(0,y.createValidRules)(i,{config:r})[0]});for(let i=0;i<c.length;i++){const u=c[i],g=p[u],d=[];if(g)for(let n=0;n<c.length;n++){const a=c[n],t=p[a];i!==n&&t&&(0,$.default)(g.declarations,t.declarations)&&g.stateToken===t.stateToken&&d.push(a)}if(d.length>0){const n=d.map(t=>`"${t}"`).join(" and ");let a=N;for(const t of d){const h=t.replace(/(\\|\.|\(|\)|\[|\]|\{|\}|\+|\*|\?|\^|\$|\||\/)/g,"\\$1");a=a.replace(new RegExp(`\\s+${h}|${h}\\s+`),"")}e.report({loc:S.findLoc(u,j,k,w),messageId:"collisionClass",data:{message:`"${u}" applies the same CSS declarations as ${n}.`},fix:function(t){return t.replaceTextRange([T,b],a)}})}}},!1,!1,o.ignoredKeys,e)})}};
@@ -0,0 +1 @@
1
+ import*as u from"../utils/ast";import E from"../utils/are-declarations-equal";import L from"../utils/define-visitors";import N from"../utils/resolve-context";import{createValidRules as T}from"@master/css-validator";var A={meta:{docs:{description:"Avoid applying classes with the same CSS declaration",category:"Stylistic Issues",recommended:!1,url:"https://beta.css.master.co/docs/code-linting#class-collision-detection"},messages:{collisionClass:"{{message}}"},fixable:"code"},create(i){const{options:g,settings:d,config:f}=N(i);return L({context:i,options:g,settings:d,config:f},(C,h=null)=>{u.parseNodeRecursive(C,h,(l,m,R,S,$)=>{const v=i.sourceCode.lines,x=m.loc.start.line,y=m.loc.end.line,a={};l.forEach(s=>{a[s]=T(s,{config:f})[0]});for(let s=0;s<l.length;s++){const r=l[s],c=a[r],n=[];if(c)for(let o=0;o<l.length;o++){const t=l[o],e=a[t];s!==o&&e&&E(c.declarations,e.declarations)&&c.stateToken===e.stateToken&&n.push(t)}if(n.length>0){const o=n.map(e=>`"${e}"`).join(" and ");let t=R;for(const e of n){const p=e.replace(/(\\|\.|\(|\)|\[|\]|\{|\}|\+|\*|\?|\^|\$|\||\/)/g,"\\$1");t=t.replace(new RegExp(`\\s+${p}|${p}\\s+`),"")}i.report({loc:u.findLoc(r,v,x,y),messageId:"collisionClass",data:{message:`"${r}" applies the same CSS declarations as ${o}.`},fix:function(e){return e.replaceTextRange([S,$],t)}})}}},!1,!1,d.ignoredKeys,i)})}};export{A as default};
@@ -0,0 +1 @@
1
+ import*as c from"../utils/ast";import L from"../utils/define-visitors";import T from"../utils/resolve-context";import{reorderForReadableClasses as V}from"@master/css";var I={meta:{docs:{description:"Enforce a consistent and logical order of classes",category:"Stylistic Issues",recommended:!1,url:"https://beta.css.master.co/docs/code-linting#consistent-class-order"},messages:{invalidClassOrder:"No consistent class order followed."},fixable:"code"},create:function(p){const{options:b,settings:N,config:E}=T(p),a=(t,e=null)=>{let l=null,u=null,f=null,x="",C="";if(e===null){l=c.extractValueFromNode(t);const s=c.extractRangeFromNode(t);t.type==="TextAttribute"?(u=s[0],f=s[1]):(u=s[0]+1,f=s[1]-1)}else switch(e.type){case"Identifier":return;case"TemplateLiteral":e.expressions.forEach(r=>{a(t,r)}),e.quasis.forEach(r=>{a(t,r)});return;case"ConditionalExpression":a(t,e.consequent),a(t,e.alternate);return;case"LogicalExpression":a(t,e.right);return;case"ArrayExpression":e.elements.forEach(r=>{a(t,r)});return;case"ObjectExpression":const s=t.callee&&t.callee.name==="classnames",m=t.key&&t.key.type==="VDirectiveKey";e.properties.forEach(r=>{const y=s||m?r.key:r.value;a(t,y)});return;case"Property":a(t,e.key);break;case"Literal":l=e.value,u=e.range[0]+1,f=e.range[1]-1;break;case"SvelteLiteral":if(l=e.value,l==="")return;u=e.range[0],f=e.range[1];break;case"TemplateElement":if(l=e.value.raw,l==="")return;u=e.range[0],f=e.range[1];const i=p.sourceCode.getText(e);x=c.getTemplateElementPrefix(i,l),C=c.getTemplateElementSuffix(i,l),l=c.getTemplateElementBody(i,x,C);break}const{classNames:d,whitespaces:h,headSpace:v,tailSpace:g}=c.extractClassnamesFromValue(l);if(d.length<=1)return;let o=V(d,E).filter(s=>d.includes(s));o=d.filter(s=>!o.includes(s)).concat(o).filter(s=>s.trim()!=="");let n="";for(let s=0;s<o.length;s++){const m=h[s]??"",i=o[s];n+=v?`${m}${i}`:`${i}${m}`,i&&(!g&&s===o.length-1&&(n=n.replace(/\s+$/,"")),v&&g&&s===o.length-1&&(n+=h[h.length-1]??""))}if(l!==n){n=x+n+C;const m=p.sourceCode.lines,i=t.loc.start.line,r=t.loc.end.line,y={loc:c.findLoc(l,m,i,r),messageId:"invalidClassOrder",fix:function(k){return k.replaceTextRange([u,f],n)}};p.report(y)}};return L({context:p,options:b,settings:N,config:E},a)}};export{I as default};
@@ -0,0 +1 @@
1
+ import*as o from"../utils/ast";import C from"../utils/define-visitors";import w from"../utils/resolve-context";import{validate as v}from"@master/css-validator";var U={meta:{docs:{description:"Detect syntax errors early when writing classes",category:"Stylistic Issues",recommended:!1,url:"https://beta.css.master.co/docs/code-linting#syntax-error-checks"},messages:{invalidClass:"{{message}}",disallowUnknownClass:"{{message}}"},fixable:null},create:function(s){const{options:r,settings:a,config:i}=w(s);return C({context:s,options:r,settings:a,config:i},(m,f=null)=>{o.parseNodeRecursive(m,f,(u,n)=>{const l=s.sourceCode.lines,t=n.loc.start.line,c=n.loc.end.line;for(const e of u){const{isMasterCSS:g,errors:d}=v(e,{config:i});if(d.length>0)for(const p of d)g?s.report({loc:o.findLoc(e,l,t,c),messageId:"invalidClass",data:{message:p.message+"."}}):r.disallowUnknownClass&&s.report({loc:o.findLoc(e,l,t,c),messageId:"disallowUnknownClass",data:{message:`"${e}" is not a valid or known class.`}})}},!1,!1,a.ignoredKeys,s)})}};export{U as default};
@@ -0,0 +1 @@
1
+ const s={calleeMatching:"^(classnames|clsx|ctl|cva|cv|classVariant|styled(?:\\.\\w+)?)",classMatching:"^class(Name)?$",ignoredKeys:["compoundVariants","defaultVariants"],config:"master.css.*"};var a=s;export{a as default};
@@ -0,0 +1 @@
1
+ function s(r,e){const t=Object.keys(r),n=Object.keys(e);if(t.length!==n.length)return!1;for(const o of t)if(!Object.prototype.hasOwnProperty.call(e,o))return!1;return!0}export{s as default};
@@ -0,0 +1 @@
1
+ const E=/([\t\n\f\r ]+)/;function w(e){if(e.type==="TextAttribute"&&e.name==="class")return[e.valueSpan.fullStart.offset,e.valueSpan.end.offset];switch(e.value.type){case"JSXExpressionContainer":return e.value.expression.range;default:return e.value.range}}function h(e){if(e.type==="TextAttribute"&&e.name==="class")return e.value;switch(e.value.type){case"JSXExpressionContainer":return e.value.expression.value;case"VExpressionContainer":switch(e.value.expression.type){case"ArrayExpression":return e.value.expression.elements;case"ObjectExpression":return e.value.expression.properties}return e.value.expression.value;default:return e.value.value}}function y(e){if(typeof e!="string")return{classNames:[],whitespaces:[],headSpace:!1,tailSpace:!1};const t=e.split(E);t[0]===""&&t.shift(),t[t.length-1]===""&&t.pop();const r=E.test(t[0]),s=E.test(t[t.length-1]),p=(a,u)=>r?u%2!==0:u%2===0,n=(a,u)=>r?u%2===0:u%2!==0,m=t.filter(p),l=t.filter(n);return{classNames:m,whitespaces:l,headSpace:r,tailSpace:s}}function x(e,t,r,s=!1,p=!1,n=[],m=null){let l,a,u=null,c=null,g="",v="";if(t===null){if(l=h(e),{classNames:a}=y(l),a=[...new Set(a)],a.length===0)return;const f=w(e);e.type==="TextAttribute"?(u=f[0],c=f[1]):(u=f[0]+1,c=f[1]-1),r(a,e,l,u,c,g,v)}else{if(t===void 0)return;{const f=s?!0:p;let T=!1;switch(t.type){case"TemplateLiteral":t.expressions.forEach(i=>{x(e,i,r,s,f,n)}),t.quasis.forEach(i=>{x(e,i,r,s,p,n)});return;case"ConditionalExpression":x(e,t.consequent,r,s,f,n),x(e,t.alternate,r,s,f,n);return;case"LogicalExpression":x(e,t.right,r,s,f,n);return;case"ArrayExpression":t.elements.forEach(i=>{x(e,i,r,s,f,n)});return;case"ObjectExpression":t.properties.forEach(i=>{const L=e.callee&&e.callee.name==="classnames";i.type!=="SpreadElement"&&(i.key.type==="Identifier"&&n.includes(i.key.name)||x(e,L?i.key:i.value,r,s,f,n))});return;case"Property":x(e,t.key,r,s,f,n);return;case"Literal":T=!0,l=t.value,u=t.range[0]+1,c=t.range[1]-1;break;case"SvelteLiteral":l=t.value,u=t.range[0],c=t.range[1];break;case"TemplateElement":l=t.value.raw,u=t.range[0],c=t.range[1];const S=m?.sourceCode.getText(t)??"";g=R(S,l),v=A(S,l);break}if({classNames:a}=y(l),a=[...new Set(a)],a.length===0)return;r(a,p?null:e,l,u,c,g,v)}}}function R(e,t){return e.indexOf(t)===0?"":e.split(t).shift()}function A(e,t){return e.indexOf(t)===-1?"":e.split(t).pop()}function V(e,t,r){let s=e.split(t);return s.shift(),s=s.join(t).split(r),s.pop(),s.join(r)}function F(e,t,r,s){const p=e.match(/.+(?:\r\n|\n)?/g);let n=0,m=null,l=!1;for(let a=r;a<=s;a++){const c=t[a-1].indexOf(p[n].replace(/\r\n|\n/,""));if(c!==-1){if(n===0&&(m={line:a,column:c}),n===p.length-1)return{start:m,end:{line:a,column:c+e.length}};l=!0,n++}else l&&(l=!1,n=0,m=null)}return null}export{y as extractClassnamesFromValue,w as extractRangeFromNode,h as extractValueFromNode,F as findLoc,V as getTemplateElementBody,R as getTemplateElementPrefix,A as getTemplateElementSuffix,x as parseNodeRecursive};
@@ -0,0 +1 @@
1
+ function f({context:a,settings:l},r){const n=e=>{let t="";const s=e.callee||e.tag;return s.type==="Identifier"&&(t=s.name),s.type==="MemberExpression"&&(t=`${s.object.name}.${s.property.name}`),new RegExp(l.calleeMatching).test(t)},u=function(e){n(e)&&e.arguments.forEach(t=>{r(e,t)})},i=new RegExp(l.classMatching),p={CallExpression:u,JSXAttribute:function(e){!e.name||!i.test(e.name.name)||(e.value&&e.value.type==="Literal"?r(e):e.value&&e.value.type==="JSXExpressionContainer"&&r(e,e.value.expression))},SvelteAttribute:function(e){if(!(!e.key?.name||!i.test(e.key.name)))for(const t of e.value)r(e,t)},TextAttribute:function(e){!e.name||!i.test(e.name)||r(e)},TaggedTemplateExpression:function(e){if(n(e)){r(e,e.quasi);return}}},c={CallExpression:u,VAttribute:function(e){e.value&&e.value.type==="VLiteral"?r(e):e.value&&e.value.type==="VExpressionContainer"&&e.value.expression.type==="ArrayExpression"?e.value.expression.elements.forEach(t=>{r(e,t)}):e.value&&e.value.type==="VExpressionContainer"&&e.value.expression.type==="ObjectExpression"&&e.value.expression.properties.forEach(t=>{r(e,t)})}};return a.sourceCode.parserServices==null||a.sourceCode.parserServices.defineTemplateBodyVisitor==null?p:a.sourceCode.parserServices.defineTemplateBodyVisitor(c,p)}export{f as default};
@@ -0,0 +1 @@
1
+ import e from"../settings";import n from"explore-config";function i(t){const o=Object.assign(e,t.settings?.["@master/css"]),s=o?.config;return{settings:o,options:t.options[0]||{},config:typeof s=="object"?s:n(o?.config||"")}}export{i as default};
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@master/eslint-plugin-css","scripts":{"build":"techor pack 'src/**/*.ts' --format cjs","dev":"pnpm run build --watch --no-declare","test":"jest","type-check":"tsc --noEmit","lint":"eslint src"},"keywords":["mastercss","eslint","eslintplugin"],"license":"MIT","description":"Master CSS ESLint Plugin","author":"Aoyue Design LLC.","funding":"https://css.master.co/docs/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/eslint-plugin"},"sideEffects":false,"main":"./dist/index.js","types":"./dist/index.d.ts","exports":"./dist/index.js","files":["dist"],"publishConfig":{"access":"public"},"dependencies":{"@master/css":"^2.0.0-beta.187","@master/css-validator":"^2.0.0-beta.187","explore-config":"^2.2.10"},"devDependencies":{"@angular-eslint/template-parser":"^16.2.0","@types/node":"^20.6.0","@typescript-eslint/parser":"^5.50.0","@typescript-eslint/utils":"^6.9.0","eslint":"^8.0.0","svelte-eslint-parser":"^0.33.1","vue-eslint-parser":"^9.3.1"},"version":"2.0.0-beta.187"}
1
+ {"name":"@master/eslint-plugin-css","scripts":{"build":"techor pack 'src/**/*.ts'","dev":"pnpm run build --watch --no-declare","test":"jest","type-check":"tsc --noEmit","lint":"eslint src"},"keywords":["mastercss","eslint","eslintplugin"],"license":"MIT","description":"Master CSS ESLint Plugin","author":"Aoyue Design LLC.","funding":"https://css.master.co/docs/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/eslint-plugin"},"sideEffects":false,"main":"./dist/index.js","types":"./dist/index.d.ts","exports":"./dist/index.js","module":"./dist/index.mjs","jsnext:main":"./dist/index.mjs","esnext":"./dist/index.mjs","files":["dist"],"publishConfig":{"access":"public"},"dependencies":{"@master/css":"^2.0.0-beta.188","@master/css-validator":"^2.0.0-beta.188","explore-config":"^2.2.10"},"devDependencies":{"@angular-eslint/template-parser":"^16.2.0","@types/node":"^20.6.0","@typescript-eslint/parser":"^5.50.0","@typescript-eslint/utils":"^6.9.0","eslint":"^8.0.0","svelte-eslint-parser":"^0.33.1","vue-eslint-parser":"^9.3.1"},"version":"2.0.0-beta.188"}