@master/eslint-plugin-css 2.0.0-beta.196 → 2.0.0-beta.197

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 $=Object.create;var y=Object.defineProperty;var F=Object.getOwnPropertyDescriptor;var I=Object.getOwnPropertyNames;var O=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty;var q=(e,a)=>{for(var n in a)y(e,n,{get:a[n],enumerable:!0})},T=(e,a,n,C)=>{if(a&&typeof a=="object"||typeof a=="function")for(let r of I(a))!P.call(e,r)&&r!==n&&y(e,r,{get:()=>a[r],enumerable:!(C=F(a,r))||C.enumerable});return e};var N=(e,a,n)=>(n=e!=null?$(O(e)):{},T(a||!e||!e.__esModule?y(n,"default",{value:e,enumerable:!0}):n,e)),A=e=>T(y({},"__esModule",{value:!0}),e);var U={};q(U,{default:()=>B});module.exports=A(U);var m=N(require("../utils/ast")),V=N(require("../utils/define-visitors")),R=N(require("../utils/resolve-context")),S=require("@master/css"),B={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(e){const{options:a,settings:n,config:C}=(0,R.default)(e),r=(l,s=null)=>{let i=null,p=null,d=null,E="",v="";if(s===null){i=m.extractValueFromNode(l);const t=m.extractRangeFromNode(l);l.type==="TextAttribute"?(p=t[0],d=t[1]):(p=t[0]+1,d=t[1]-1)}else switch(s.type){case"Identifier":return;case"TemplateLiteral":s.expressions.forEach(o=>{r(l,o)}),s.quasis.forEach(o=>{r(l,o)});return;case"ConditionalExpression":r(l,s.consequent),r(l,s.alternate);return;case"LogicalExpression":r(l,s.right);return;case"ArrayExpression":s.elements.forEach(o=>{r(l,o)});return;case"ObjectExpression":const t=l.callee&&l.callee.name==="classnames",x=l.key&&l.key.type==="VDirectiveKey";s.properties.forEach(o=>{const b=t||x?o.key:o.value;r(l,b)});return;case"Property":r(l,s.key);break;case"Literal":i=s.value,p=s.range[0]+1,d=s.range[1]-1;break;case"SvelteLiteral":if(i=s.value,i==="")return;p=s.range[0],d=s.range[1];break;case"TemplateElement":if(i=s.value.raw,i==="")return;p=s.range[0],d=s.range[1];const c=e.sourceCode.getText(s);E=m.getTemplateElementPrefix(c,i),v=m.getTemplateElementSuffix(c,i),i=m.getTemplateElementBody(c,E,v);break}const{classNames:h,whitespaces:g,headSpace:k,tailSpace:L}=m.extractClassnamesFromValue(i);if(h.length<=1)return;let f=(0,S.reorderForReadableClasses)(h,C).filter(t=>h.includes(t));f=h.filter(t=>!f.includes(t)).concat(f).filter(t=>t.trim()!=="");let u="";for(let t=0;t<f.length;t++){const x=g[t]??"",c=f[t];u+=k?`${x}${c}`:`${c}${x}`,c&&(!L&&t===f.length-1&&(u=u.replace(/\s+$/,"")),k&&L&&t===f.length-1&&(u+=g[g.length-1]??""))}if(i!==u){u=E+u+v;const x=e.sourceCode.lines,c=l.loc.start.line,o=l.loc.end.line,b={loc:m.findLoc(i,x,c,o),messageId:"invalidClassOrder",fix:function(w){return w.replaceTextRange([p,d],u)}};e.report(b)}};return(0,V.default)({context:e,settings:n},r)}};
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 +1 @@
1
- import*as c from"../utils/ast";import k from"../utils/define-visitors";import L from"../utils/resolve-context";import{reorderForReadableClasses as T}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:V,settings:g,config:b}=L(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:E,tailSpace:v}=c.extractClassnamesFromValue(l);if(d.length<=1)return;let o=T(d,b).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+=E?`${m}${i}`:`${i}${m}`,i&&(!v&&s===o.length-1&&(n=n.replace(/\s+$/,"")),E&&v&&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(N){return N.replaceTextRange([u,f],n)}};p.report(y)}};return k({context:p,settings:g},a)}};export{I as default};
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};
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.196","@master/css-validator":"^2.0.0-beta.196","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.196"}
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.197","@master/css-validator":"^2.0.0-beta.197","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.197"}