@master/eslint-plugin-css 2.0.0-beta.198 → 2.0.0-beta.199

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.
@@ -1 +1 @@
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,c)=>{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:!(c=M(s,l))||c.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:c}=(0,x.default)(e);return(0,v.default)({context:e,settings:o},(E,L=null)=>{S.parseNodeRecursive(E,L,(r,C,N,T,b)=>{const j=e.sourceCode.lines,k=C.loc.start.line,w=C.loc.end.line,p={};r.forEach(i=>{p[i]=(0,y.createValidRules)(i,{config:c})[0]});for(let i=0;i<r.length;i++){const u=r[i],g=p[u],d=[];if(g)for(let n=0;n<r.length;n++){const a=r[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)})}};
1
+ var k=Object.create;var p=Object.defineProperty;var q=Object.getOwnPropertyDescriptor;var w=Object.getOwnPropertyNames;var K=Object.getPrototypeOf,V=Object.prototype.hasOwnProperty;var A=(e,s)=>{for(var o in s)p(e,o,{get:s[o],enumerable:!0})},y=(e,s,o,l)=>{if(s&&typeof s=="object"||typeof s=="function")for(let n of w(s))!V.call(e,n)&&n!==o&&p(e,n,{get:()=>s[n],enumerable:!(l=q(s,n))||l.enumerable});return e};var f=(e,s,o)=>(o=e!=null?k(K(e)):{},y(s||!e||!e.__esModule?p(o,"default",{value:e,enumerable:!0}):o,e)),D=e=>y(p({},"__esModule",{value:!0}),e);var U={};A(U,{default:()=>O});module.exports=D(U);var R=f(require("../utils/ast")),S=f(require("../utils/are-declarations-equal")),$=f(require("../utils/define-visitors")),v=f(require("../utils/resolve-context")),L=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",schema:[{type:"object",properties:{calleeMatching:{type:"string"},classMatching:{type:"string"},ignoredKeys:{type:"array",items:{type:"string",minLength:0},uniqueItems:!0},config:{type:["string","object"]}}}]},create(e){const{options:s,settings:o,config:l}=(0,v.default)(e);return(0,$.default)({context:e,settings:o},(b,j=null)=>{R.parseNodeRecursive(b,j,(c,C,x,E,M)=>{const I=e.sourceCode.lines,N=C.loc.start.line,T=C.loc.end.line,m={};c.forEach(i=>{m[i]=(0,L.createValidRules)(i,{config:l})[0]});for(let i=0;i<c.length;i++){const g=c[i],u=m[g],d=[];if(u)for(let r=0;r<c.length;r++){const a=c[r],t=m[a];i!==r&&t&&(0,S.default)(u.declarations,t.declarations)&&u.stateToken===t.stateToken&&d.push(a)}if(d.length>0){const r=d.map(t=>`"${t}"`).join(" and ");let a=x;for(const t of d){const h=t.replace(/(\\|\.|\(|\)|\[|\]|\{|\}|\+|\*|\?|\^|\$|\||\/)/g,"\\$1");a=a.replace(new RegExp(`\\s+${h}|${h}\\s+`),"")}e.report({loc:R.findLoc(g,I,N,T),messageId:"collisionClass",data:{message:`"${g}" applies the same CSS declarations as ${r}.`},fix:function(t){return t.replaceTextRange([E,M],a)}})}}},!1,!1,o.ignoredKeys,e)})}};
@@ -1 +1 @@
1
- import*as p from"../utils/ast";import y from"../utils/are-declarations-equal";import E from"../utils/define-visitors";import L from"../utils/resolve-context";import{createValidRules as N}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:T,settings:d,config:u}=L(i);return E({context:i,settings:d},(g,C=null)=>{p.parseNodeRecursive(g,C,(l,f,h,R,S)=>{const $=i.sourceCode.lines,v=f.loc.start.line,x=f.loc.end.line,a={};l.forEach(s=>{a[s]=N(s,{config:u})[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&&y(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=h;for(const e of n){const m=e.replace(/(\\|\.|\(|\)|\[|\]|\{|\}|\+|\*|\?|\^|\$|\||\/)/g,"\\$1");t=t.replace(new RegExp(`\\s+${m}|${m}\\s+`),"")}i.report({loc:p.findLoc(r,$,v,x),messageId:"collisionClass",data:{message:`"${r}" applies the same CSS declarations as ${o}.`},fix:function(e){return e.replaceTextRange([R,S],t)}})}}},!1,!1,d.ignoredKeys,i)})}};export{A as default};
1
+ import*as m from"../utils/ast";import L from"../utils/are-declarations-equal";import b from"../utils/define-visitors";import j from"../utils/resolve-context";import{createValidRules as x}from"@master/css-validator";var V={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",schema:[{type:"object",properties:{calleeMatching:{type:"string"},classMatching:{type:"string"},ignoredKeys:{type:"array",items:{type:"string",minLength:0},uniqueItems:!0},config:{type:["string","object"]}}}]},create(i){const{options:E,settings:d,config:g}=j(i);return b({context:i,settings:d},(u,C=null)=>{m.parseNodeRecursive(u,C,(n,p,h,y,R)=>{const S=i.sourceCode.lines,$=p.loc.start.line,v=p.loc.end.line,a={};n.forEach(s=>{a[s]=x(s,{config:g})[0]});for(let s=0;s<n.length;s++){const c=n[s],l=a[c],r=[];if(l)for(let o=0;o<n.length;o++){const t=n[o],e=a[t];s!==o&&e&&L(l.declarations,e.declarations)&&l.stateToken===e.stateToken&&r.push(t)}if(r.length>0){const o=r.map(e=>`"${e}"`).join(" and ");let t=h;for(const e of r){const f=e.replace(/(\\|\.|\(|\)|\[|\]|\{|\}|\+|\*|\?|\^|\$|\||\/)/g,"\\$1");t=t.replace(new RegExp(`\\s+${f}|${f}\\s+`),"")}i.report({loc:m.findLoc(c,S,$,v),messageId:"collisionClass",data:{message:`"${c}" applies the same CSS declarations as ${o}.`},fix:function(e){return e.replaceTextRange([y,R],t)}})}}},!1,!1,d.ignoredKeys,i)})}};export{V as default};
@@ -1 +1 @@
1
- var V=Object.create;var S=Object.defineProperty;var O=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var w=Object.getPrototypeOf,U=Object.prototype.hasOwnProperty;var F=(l,i)=>{for(var n in i)S(l,n,{get:i[n],enumerable:!0})},I=(l,i,n,g)=>{if(i&&typeof i=="object"||typeof i=="function")for(let u of P(i))!U.call(l,u)&&u!==n&&S(l,u,{get:()=>i[u],enumerable:!(g=O(i,u))||g.enumerable});return l};var b=(l,i,n)=>(n=l!=null?V(w(l)):{},I(i||!l||!l.__esModule?S(n,"default",{value:l,enumerable:!0}):n,l)),M=l=>I(S({},"__esModule",{value:!0}),l);var X={};F(X,{default:()=>G});module.exports=M(X);var E=b(require("../utils/ast")),_=b(require("../utils/define-visitors")),$=b(require("../utils/resolve-context")),L=require("@master/css"),G={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(l){const{options:i,settings:n,config:g}=(0,$.default)(l),u=l.sourceCode,f=(r,t=null)=>{let s=null,m=null,p=null,y="",C="",x=[];if(t===null){s=E.extractValueFromNode(r);const e=E.extractRangeFromNode(r);r.type==="TextAttribute"?(m=e[0],p=e[1]):(m=e[0]+1,p=e[1]-1)}else switch(t.type){case"Identifier":return;case"TemplateLiteral":t.expressions.forEach(a=>{f(r,a)}),s=u.getText(t),s=s.substring(1,s.length-1),x=s.match(/\$\{(?:(?<!\\\\)(['"`]).*?(?<!\\\\)\1|[^}])*?\}/g)??[];for(let a=0;a<x.length;a++)s=s.replace(x[a],`EXPRESSION_STRING_NUM_${a}`);m=t.range[0]+1,p=t.range[1]-1;break;case"ConditionalExpression":f(r,t.consequent),f(r,t.alternate);return;case"LogicalExpression":f(r,t.right);return;case"ArrayExpression":t.elements.forEach(a=>{f(r,a)});return;case"ObjectExpression":const e=r.callee&&r.callee.name==="classnames",N=r.key&&r.key.type==="VDirectiveKey";t.properties.forEach(a=>{const T=e||N?a.key:a.value;f(r,T)});return;case"Property":f(r,t.key);break;case"Literal":s=t.value,m=t.range[0]+1,p=t.range[1]-1;break;case"SvelteLiteral":if(s=t.value,s==="")return;m=t.range[0],p=t.range[1];break;case"TemplateElement":if(s=t.value.raw,s==="")return;m=t.range[0],p=t.range[1];const o=l.sourceCode.getText(t);y=E.getTemplateElementPrefix(o,s),C=E.getTemplateElementSuffix(o,s),s=E.getTemplateElementBody(o,y,C);break}const{classNames:h,whitespaces:R,headSpace:v,tailSpace:k}=E.extractClassnamesFromValue(s);if(h.length<=1)return;let d=(0,L.reorderForReadableClasses)(h,g).filter(e=>h.includes(e));d=h.filter(e=>!d.includes(e)).concat(d).filter(e=>e.trim()!=="");let c="";for(let e=0;e<d.length;e++){const N=R[e]??"",o=d[e];c+=v?`${N}${o}`:`${o}${N}`,o&&(!k&&e===d.length-1&&(c=c.replace(/\s+$/,"")),v&&k&&e===d.length-1&&(c+=R[R.length-1]??""))}for(let e=0;e<x.length;e++)s=s.replace(`EXPRESSION_STRING_NUM_${e}`,x[e]),c=c.replace(`EXPRESSION_STRING_NUM_${e}`,x[e]);if(s!==c){c=y+c+C;const e=u.lines,N=r.loc.start.line,o=r.loc.end.line,a={loc:E.findLoc(s,e,N,o),messageId:"invalidClassOrder",fix:function(T){return T.replaceTextRange([m,p],c)}};l.report(a)}};return(0,_.default)({context:l,settings:n},f)}};
1
+ var V=Object.create;var N=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var O=Object.getOwnPropertyNames;var P=Object.getPrototypeOf,w=Object.prototype.hasOwnProperty;var U=(l,a)=>{for(var n in a)N(l,n,{get:a[n],enumerable:!0})},k=(l,a,n,E)=>{if(a&&typeof a=="object"||typeof a=="function")for(let u of O(a))!w.call(l,u)&&u!==n&&N(l,u,{get:()=>a[u],enumerable:!(E=M(a,u))||E.enumerable});return l};var T=(l,a,n)=>(n=l!=null?V(P(l)):{},k(a||!l||!l.__esModule?N(n,"default",{value:l,enumerable:!0}):n,l)),F=l=>k(N({},"__esModule",{value:!0}),l);var G={};U(G,{default:()=>j});module.exports=F(G);var g=T(require("../utils/ast")),L=T(require("../utils/define-visitors")),_=T(require("../utils/resolve-context")),$=require("@master/css"),j={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",schema:[{type:"object",properties:{calleeMatching:{type:"string"},classMatching:{type:"string"},ignoredKeys:{type:"array",items:{type:"string",minLength:0},uniqueItems:!0},config:{type:["string","object"]}}}]},create:function(l){const{options:a,settings:n,config:E}=(0,_.default)(l),u=l.sourceCode,p=(r,t=null)=>{let s=null,f=null,m=null,S="",C="",y=[];if(t===null){s=g.extractValueFromNode(r);const e=g.extractRangeFromNode(r);r.type==="TextAttribute"?(f=e[0],m=e[1]):(f=e[0]+1,m=e[1]-1)}else switch(t.type){case"Identifier":return;case"TemplateLiteral":t.expressions.forEach(i=>{p(r,i)}),s=u.getText(t),s=s.substring(1,s.length-1),y=s.match(/\$\{(?:(?<!\\\\)(['"`]).*?(?<!\\\\)\1|[^}])*?\}/g)??[];for(let i=0;i<y.length;i++)s=s.replace(y[i],`EXPRESSION_STRING_NUM_${i}`);f=t.range[0]+1,m=t.range[1]-1;break;case"ConditionalExpression":p(r,t.consequent),p(r,t.alternate);return;case"LogicalExpression":p(r,t.right);return;case"ArrayExpression":t.elements.forEach(i=>{p(r,i)});return;case"ObjectExpression":const e=r.callee&&r.callee.name==="classnames",h=r.key&&r.key.type==="VDirectiveKey";t.properties.forEach(i=>{const R=e||h?i.key:i.value;p(r,R)});return;case"Property":p(r,t.key);break;case"Literal":s=t.value,f=t.range[0]+1,m=t.range[1]-1;break;case"SvelteLiteral":if(s=t.value,s==="")return;f=t.range[0],m=t.range[1];break;case"TemplateElement":if(s=t.value.raw,s==="")return;f=t.range[0],m=t.range[1];const o=l.sourceCode.getText(t);S=g.getTemplateElementPrefix(o,s),C=g.getTemplateElementSuffix(o,s),s=g.getTemplateElementBody(o,S,C);break}const{classNames:x,whitespaces:b,headSpace:v,tailSpace:I}=g.extractClassnamesFromValue(s);if(x.length<=1)return;let d=(0,$.reorderForReadableClasses)(x,E).filter(e=>x.includes(e));d=x.filter(e=>!d.includes(e)).concat(d).filter(e=>e.trim()!=="");let c="";for(let e=0;e<d.length;e++){const h=b[e]??"",o=d[e];c+=v?`${h}${o}`:`${o}${h}`,o&&(!I&&e===d.length-1&&(c=c.replace(/\s+$/,"")),v&&I&&e===d.length-1&&(c+=b[b.length-1]??""))}for(let e=0;e<y.length;e++)s=s.replace(`EXPRESSION_STRING_NUM_${e}`,y[e]),c=c.replace(`EXPRESSION_STRING_NUM_${e}`,y[e]);if(s!==c){c=S+c+C;const e=u.lines,h=r.loc.start.line,o=r.loc.end.line,i={loc:g.findLoc(s,e,h,o),messageId:"invalidClassOrder",fix:function(R){return R.replaceTextRange([f,m],c)}};l.report(i)}};return(0,L.default)({context:l,settings:n},p)}};
@@ -1 +1 @@
1
- import*as f from"../utils/ast";import b from"../utils/define-visitors";import v from"../utils/resolve-context";import{reorderForReadableClasses as k}from"@master/css";var P={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(d){const{options:I,settings:R,config:T}=v(d),S=d.sourceCode,n=(l,t=null)=>{let s=null,c=null,o=null,x="",N="",m=[];if(t===null){s=f.extractValueFromNode(l);const e=f.extractRangeFromNode(l);l.type==="TextAttribute"?(c=e[0],o=e[1]):(c=e[0]+1,o=e[1]-1)}else switch(t.type){case"Identifier":return;case"TemplateLiteral":t.expressions.forEach(r=>{n(l,r)}),s=S.getText(t),s=s.substring(1,s.length-1),m=s.match(/\$\{(?:(?<!\\\\)(['"`]).*?(?<!\\\\)\1|[^}])*?\}/g)??[];for(let r=0;r<m.length;r++)s=s.replace(m[r],`EXPRESSION_STRING_NUM_${r}`);c=t.range[0]+1,o=t.range[1]-1;break;case"ConditionalExpression":n(l,t.consequent),n(l,t.alternate);return;case"LogicalExpression":n(l,t.right);return;case"ArrayExpression":t.elements.forEach(r=>{n(l,r)});return;case"ObjectExpression":const e=l.callee&&l.callee.name==="classnames",p=l.key&&l.key.type==="VDirectiveKey";t.properties.forEach(r=>{const h=e||p?r.key:r.value;n(l,h)});return;case"Property":n(l,t.key);break;case"Literal":s=t.value,c=t.range[0]+1,o=t.range[1]-1;break;case"SvelteLiteral":if(s=t.value,s==="")return;c=t.range[0],o=t.range[1];break;case"TemplateElement":if(s=t.value.raw,s==="")return;c=t.range[0],o=t.range[1];const i=d.sourceCode.getText(t);x=f.getTemplateElementPrefix(i,s),N=f.getTemplateElementSuffix(i,s),s=f.getTemplateElementBody(i,x,N);break}const{classNames:E,whitespaces:g,headSpace:y,tailSpace:C}=f.extractClassnamesFromValue(s);if(E.length<=1)return;let u=k(E,T).filter(e=>E.includes(e));u=E.filter(e=>!u.includes(e)).concat(u).filter(e=>e.trim()!=="");let a="";for(let e=0;e<u.length;e++){const p=g[e]??"",i=u[e];a+=y?`${p}${i}`:`${i}${p}`,i&&(!C&&e===u.length-1&&(a=a.replace(/\s+$/,"")),y&&C&&e===u.length-1&&(a+=g[g.length-1]??""))}for(let e=0;e<m.length;e++)s=s.replace(`EXPRESSION_STRING_NUM_${e}`,m[e]),a=a.replace(`EXPRESSION_STRING_NUM_${e}`,m[e]);if(s!==a){a=x+a+N;const e=S.lines,p=l.loc.start.line,i=l.loc.end.line,r={loc:f.findLoc(s,e,p,i),messageId:"invalidClassOrder",fix:function(h){return h.replaceTextRange([c,o],a)}};d.report(r)}};return b({context:d,settings:R},n)}};export{P as default};
1
+ import*as p from"../utils/ast";import T from"../utils/define-visitors";import v from"../utils/resolve-context";import{reorderForReadableClasses as I}from"@master/css";var O={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",schema:[{type:"object",properties:{calleeMatching:{type:"string"},classMatching:{type:"string"},ignoredKeys:{type:"array",items:{type:"string",minLength:0},uniqueItems:!0},config:{type:["string","object"]}}}]},create:function(d){const{options:k,settings:b,config:R}=v(d),N=d.sourceCode,n=(l,t=null)=>{let s=null,c=null,o=null,y="",h="",f=[];if(t===null){s=p.extractValueFromNode(l);const e=p.extractRangeFromNode(l);l.type==="TextAttribute"?(c=e[0],o=e[1]):(c=e[0]+1,o=e[1]-1)}else switch(t.type){case"Identifier":return;case"TemplateLiteral":t.expressions.forEach(r=>{n(l,r)}),s=N.getText(t),s=s.substring(1,s.length-1),f=s.match(/\$\{(?:(?<!\\\\)(['"`]).*?(?<!\\\\)\1|[^}])*?\}/g)??[];for(let r=0;r<f.length;r++)s=s.replace(f[r],`EXPRESSION_STRING_NUM_${r}`);c=t.range[0]+1,o=t.range[1]-1;break;case"ConditionalExpression":n(l,t.consequent),n(l,t.alternate);return;case"LogicalExpression":n(l,t.right);return;case"ArrayExpression":t.elements.forEach(r=>{n(l,r)});return;case"ObjectExpression":const e=l.callee&&l.callee.name==="classnames",m=l.key&&l.key.type==="VDirectiveKey";t.properties.forEach(r=>{const x=e||m?r.key:r.value;n(l,x)});return;case"Property":n(l,t.key);break;case"Literal":s=t.value,c=t.range[0]+1,o=t.range[1]-1;break;case"SvelteLiteral":if(s=t.value,s==="")return;c=t.range[0],o=t.range[1];break;case"TemplateElement":if(s=t.value.raw,s==="")return;c=t.range[0],o=t.range[1];const a=d.sourceCode.getText(t);y=p.getTemplateElementPrefix(a,s),h=p.getTemplateElementSuffix(a,s),s=p.getTemplateElementBody(a,y,h);break}const{classNames:g,whitespaces:E,headSpace:S,tailSpace:C}=p.extractClassnamesFromValue(s);if(g.length<=1)return;let u=I(g,R).filter(e=>g.includes(e));u=g.filter(e=>!u.includes(e)).concat(u).filter(e=>e.trim()!=="");let i="";for(let e=0;e<u.length;e++){const m=E[e]??"",a=u[e];i+=S?`${m}${a}`:`${a}${m}`,a&&(!C&&e===u.length-1&&(i=i.replace(/\s+$/,"")),S&&C&&e===u.length-1&&(i+=E[E.length-1]??""))}for(let e=0;e<f.length;e++)s=s.replace(`EXPRESSION_STRING_NUM_${e}`,f[e]),i=i.replace(`EXPRESSION_STRING_NUM_${e}`,f[e]);if(s!==i){i=y+i+h;const e=N.lines,m=l.loc.start.line,a=l.loc.end.line,r={loc:p.findLoc(s,e,m,a),messageId:"invalidClassOrder",fix:function(x){return x.replaceTextRange([c,o],i)}};d.report(r)}};return T({context:d,settings:b},n)}};export{O as default};
@@ -1 +1 @@
1
- var N=Object.create;var n=Object.defineProperty;var R=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var U=Object.getPrototypeOf,I=Object.prototype.hasOwnProperty;var b=(s,e)=>{for(var o in e)n(s,o,{get:e[o],enumerable:!0})},g=(s,e,o,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of S(e))!I.call(s,r)&&r!==o&&n(s,r,{get:()=>e[r],enumerable:!(a=R(e,r))||a.enumerable});return s};var l=(s,e,o)=>(o=s!=null?N(U(s)):{},g(e||!s||!s.__esModule?n(o,"default",{value:s,enumerable:!0}):o,s)),M=s=>g(n({},"__esModule",{value:!0}),s);var E={};b(E,{default:()=>D});module.exports=M(E);var t=l(require("../utils/ast")),p=l(require("../utils/define-visitors")),C=l(require("../utils/resolve-context")),w=require("@master/css-validator"),D={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:e,settings:o,config:a}=(0,C.default)(s);return(0,p.default)({context:s,settings:o},(v,y=null)=>{t.parseNodeRecursive(v,y,(k,c)=>{const d=s.sourceCode.lines,m=c.loc.start.line,f=c.loc.end.line;for(const i of k){const{isMasterCSS:L,errors:u}=(0,w.validate)(i,{config:a});if(u.length>0)for(const h of u)L?s.report({loc:t.findLoc(i,d,m,f),messageId:"invalidClass",data:{message:h.message+"."}}):e.disallowUnknownClass&&s.report({loc:t.findLoc(i,d,m,f),messageId:"disallowUnknownClass",data:{message:`"${i}" is not a valid or known class.`}})}},!1,!1,o.ignoredKeys,s)})}};
1
+ var b=Object.create;var n=Object.defineProperty;var I=Object.getOwnPropertyDescriptor;var M=Object.getOwnPropertyNames;var N=Object.getPrototypeOf,R=Object.prototype.hasOwnProperty;var S=(e,s)=>{for(var o in s)n(e,o,{get:s[o],enumerable:!0})},p=(e,s,o,i)=>{if(s&&typeof s=="object"||typeof s=="function")for(let t of M(s))!R.call(e,t)&&t!==o&&n(e,t,{get:()=>s[t],enumerable:!(i=I(s,t))||i.enumerable});return e};var a=(e,s,o)=>(o=e!=null?b(N(e)):{},p(s||!e||!e.__esModule?n(o,"default",{value:e,enumerable:!0}):o,e)),U=e=>p(n({},"__esModule",{value:!0}),e);var K={};S(K,{default:()=>j});module.exports=U(K);var l=a(require("../utils/ast")),u=a(require("../utils/define-visitors")),y=a(require("../utils/resolve-context")),C=require("@master/css-validator"),j={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,schema:[{type:"object",properties:{calleeMatching:{type:"string"},classMatching:{type:"string"},ignoredKeys:{type:"array",items:{type:"string",minLength:0},uniqueItems:!0},config:{type:["string","object"]}}}]},create:function(e){const{options:s,settings:o,config:i}=(0,y.default)(e);return(0,u.default)({context:e,settings:o},(w,h=null)=>{l.parseNodeRecursive(w,h,(v,c)=>{const d=e.sourceCode.lines,m=c.loc.start.line,g=c.loc.end.line;for(const r of v){const{isMasterCSS:L,errors:f}=(0,C.validate)(r,{config:i});if(f.length>0)for(const k of f)L?e.report({loc:l.findLoc(r,d,m,g),messageId:"invalidClass",data:{message:k.message+"."}}):s.disallowUnknownClass&&e.report({loc:l.findLoc(r,d,m,g),messageId:"disallowUnknownClass",data:{message:`"${r}" is not a valid or known class.`}})}},!1,!1,o.ignoredKeys,e)})}};
@@ -1 +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:c,settings:r,config:d}=w(s);return C({context:s,settings:r},(m,f=null)=>{o.parseNodeRecursive(m,f,(u,a)=>{const i=s.sourceCode.lines,n=a.loc.start.line,l=a.loc.end.line;for(const e of u){const{isMasterCSS:g,errors:t}=v(e,{config:d});if(t.length>0)for(const p of t)g?s.report({loc:o.findLoc(e,i,n,l),messageId:"invalidClass",data:{message:p.message+"."}}):c.disallowUnknownClass&&s.report({loc:o.findLoc(e,i,n,l),messageId:"disallowUnknownClass",data:{message:`"${e}" is not a valid or known class.`}})}},!1,!1,r.ignoredKeys,s)})}};export{U as default};
1
+ import*as o from"../utils/ast";import y from"../utils/define-visitors";import C from"../utils/resolve-context";import{validate as w}from"@master/css-validator";var N={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,schema:[{type:"object",properties:{calleeMatching:{type:"string"},classMatching:{type:"string"},ignoredKeys:{type:"array",items:{type:"string",minLength:0},uniqueItems:!0},config:{type:["string","object"]}}}]},create:function(e){const{options:c,settings:t,config:d}=C(e);return y({context:e,settings:t},(m,g=null)=>{o.parseNodeRecursive(m,g,(f,i)=>{const r=e.sourceCode.lines,n=i.loc.start.line,a=i.loc.end.line;for(const s of f){const{isMasterCSS:p,errors:l}=w(s,{config:d});if(l.length>0)for(const u of l)p?e.report({loc:o.findLoc(s,r,n,a),messageId:"invalidClass",data:{message:u.message+"."}}):c.disallowUnknownClass&&e.report({loc:o.findLoc(s,r,n,a),messageId:"disallowUnknownClass",data:{message:`"${s}" is not a valid or known class.`}})}},!1,!1,t.ignoredKeys,e)})}};export{N as default};
package/package.json CHANGED
@@ -1 +1 @@
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.198","@master/css-validator":"^2.0.0-beta.198","explore-config":"^2.5.19"},"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.52.0","eslint-plugin-markdown":"^3.0.1","eslint-plugin-mdx":"^2.2.0","svelte-eslint-parser":"^0.33.1","vue-eslint-parser":"^9.3.1"},"version":"2.0.0-beta.198"}
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.199","@master/css-validator":"^2.0.0-beta.199","explore-config":"^2.5.19"},"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.52.0","eslint-plugin-markdown":"^3.0.1","eslint-plugin-mdx":"^2.2.0","svelte-eslint-parser":"^0.33.1","vue-eslint-parser":"^9.3.1"},"version":"2.0.0-beta.199"}