@master/eslint-plugin-css 2.0.0-rc.32 → 2.0.0-rc.33

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.
Files changed (31) hide show
  1. package/dist/functions/filter-collision-classes.cjs +24 -4
  2. package/dist/functions/filter-collision-classes.d.ts +2 -3
  3. package/dist/functions/filter-collision-classes.mjs +27 -11
  4. package/dist/rules/class-collision.cjs +3 -2
  5. package/dist/rules/class-collision.mjs +3 -2
  6. package/dist/rules/class-order.cjs +3 -3
  7. package/dist/rules/class-order.mjs +3 -3
  8. package/dist/rules/class-validation.cjs +4 -4
  9. package/dist/rules/class-validation.mjs +4 -4
  10. package/dist/utils/resolve-context.cjs +24 -2
  11. package/dist/utils/resolve-context.d.ts +2 -0
  12. package/dist/utils/resolve-context.mjs +24 -2
  13. package/package.json +1 -1
  14. package/dist/functions/filter-collision-classes.worker.cjs +0 -35
  15. package/dist/functions/filter-collision-classes.worker.d.ts +0 -1
  16. package/dist/functions/filter-collision-classes.worker.mjs +0 -33
  17. package/dist/functions/get-css.cjs +0 -19
  18. package/dist/functions/get-css.d.ts +0 -1
  19. package/dist/functions/get-css.mjs +0 -17
  20. package/dist/functions/reorder-valid-classes.cjs +0 -9
  21. package/dist/functions/reorder-valid-classes.d.ts +0 -3
  22. package/dist/functions/reorder-valid-classes.mjs +0 -11
  23. package/dist/functions/reorder-valid-classes.worker.cjs +0 -13
  24. package/dist/functions/reorder-valid-classes.worker.d.ts +0 -1
  25. package/dist/functions/reorder-valid-classes.worker.mjs +0 -11
  26. package/dist/functions/validate.cjs +0 -9
  27. package/dist/functions/validate.d.ts +0 -3
  28. package/dist/functions/validate.mjs +0 -11
  29. package/dist/functions/validate.worker.cjs +0 -15
  30. package/dist/functions/validate.worker.d.ts +0 -5
  31. package/dist/functions/validate.worker.mjs +0 -13
@@ -1,9 +1,29 @@
1
1
  'use strict';
2
2
 
3
- var synckit = require('synckit');
4
- var filterCollisionClasses_worker = require('./filter-collision-classes.worker.cjs');
5
- var path = require('path');
3
+ var cssValidator = require('@master/css-validator');
4
+ var css = require('@master/css');
6
5
 
7
- var filterCollisionClasses = process.env.NODE_ENV === 'test' ? filterCollisionClasses_worker : synckit.createSyncFn(path.join(__dirname, 'filter-collision-classes.worker.cjs'));
6
+ function filterCollisionClasses(classNames, css$1) {
7
+ const validRules = classNames.map((eachClassName)=>cssValidator.generateValidRules(eachClassName, css$1)[0]).filter(Boolean);
8
+ const collisionClassesRecord = {};
9
+ for(let i = 0; i < classNames.length; i++){
10
+ const className = classNames[i];
11
+ const rule = validRules.find((eachValidRule)=>eachValidRule.className === className);
12
+ const collisionClasses = [];
13
+ if (rule) {
14
+ for(let j = 0; j < classNames.length; j++){
15
+ const compareClassName = classNames[j];
16
+ const compareRule = validRules.find((eachValidRule)=>eachValidRule.className === compareClassName);
17
+ if (i !== j && compareRule && css.areRulesDuplicated(rule, compareRule) && css.areRuleStatesEqual(rule, compareRule)) {
18
+ collisionClasses.push(compareClassName);
19
+ }
20
+ }
21
+ if (collisionClasses.length > 0) {
22
+ collisionClassesRecord[className] = collisionClasses;
23
+ }
24
+ }
25
+ }
26
+ return collisionClassesRecord;
27
+ }
8
28
 
9
29
  module.exports = filterCollisionClasses;
@@ -1,3 +1,2 @@
1
- import runFilterCollisionClasses from './filter-collision-classes.worker';
2
- declare const _default: typeof runFilterCollisionClasses;
3
- export default _default;
1
+ import { MasterCSS } from '@master/css';
2
+ export default function filterCollisionClasses(classNames: string[], css: MasterCSS): Record<string, string[]>;
@@ -1,11 +1,27 @@
1
- import __url_for_shim from 'url';
2
- import __path_for_shim from 'path';
3
- const __filename = __url_for_shim.fileURLToPath(import.meta.url);
4
- const __dirname = __path_for_shim.dirname(__filename);
5
- import { createSyncFn } from 'synckit';
6
- import runFilterCollisionClasses from './filter-collision-classes.worker.mjs';
7
- import { join } from 'path';
8
- var filterCollisionClasses = process.env.NODE_ENV === 'test' ? runFilterCollisionClasses : createSyncFn(join(__dirname, 'filter-collision-classes.worker.cjs'));
9
- export {
10
- filterCollisionClasses as default
11
- };
1
+ import { generateValidRules } from '@master/css-validator';
2
+ import { areRulesDuplicated, areRuleStatesEqual } from '@master/css';
3
+
4
+ function filterCollisionClasses(classNames, css) {
5
+ const validRules = classNames.map((eachClassName)=>generateValidRules(eachClassName, css)[0]).filter(Boolean);
6
+ const collisionClassesRecord = {};
7
+ for(let i = 0; i < classNames.length; i++){
8
+ const className = classNames[i];
9
+ const rule = validRules.find((eachValidRule)=>eachValidRule.className === className);
10
+ const collisionClasses = [];
11
+ if (rule) {
12
+ for(let j = 0; j < classNames.length; j++){
13
+ const compareClassName = classNames[j];
14
+ const compareRule = validRules.find((eachValidRule)=>eachValidRule.className === compareClassName);
15
+ if (i !== j && compareRule && areRulesDuplicated(rule, compareRule) && areRuleStatesEqual(rule, compareRule)) {
16
+ collisionClasses.push(compareClassName);
17
+ }
18
+ }
19
+ if (collisionClasses.length > 0) {
20
+ collisionClassesRecord[className] = collisionClasses;
21
+ }
22
+ }
23
+ }
24
+ return collisionClassesRecord;
25
+ }
26
+
27
+ export { filterCollisionClasses as default };
@@ -26,14 +26,15 @@ var classCollision = createRule({
26
26
  },
27
27
  defaultOptions: [],
28
28
  create (context) {
29
- const { options, settings } = resolveContext(context);
29
+ const { settings, css } = resolveContext(context);
30
30
  const visitNode = (node, arg = null)=>{
31
31
  parseNodeRecursive.parseNodeRecursive(node, arg, (classNames, node, originalClassNamesValue, start, end)=>{
32
32
  const sourceCode = context.sourceCode;
33
33
  const sourceCodeLines = sourceCode.lines;
34
34
  const nodeStartLine = node.loc.start.line;
35
35
  const nodeEndLine = node.loc.end.line;
36
- const collisionClassesRecord = filterCollisionClasses(classNames, settings.config);
36
+ // todo css
37
+ const collisionClassesRecord = filterCollisionClasses(classNames, css);
37
38
  for(const className in collisionClassesRecord){
38
39
  const collisionClasses = collisionClassesRecord[className];
39
40
  const collisionClassNamesMsg = collisionClasses.map((x)=>`"${x}"`).join(' and ');
@@ -24,14 +24,15 @@ var classCollision = createRule({
24
24
  },
25
25
  defaultOptions: [],
26
26
  create (context) {
27
- const { options, settings } = resolveContext(context);
27
+ const { settings, css } = resolveContext(context);
28
28
  const visitNode = (node, arg = null)=>{
29
29
  parseNodeRecursive(node, arg, (classNames, node, originalClassNamesValue, start, end)=>{
30
30
  const sourceCode = context.sourceCode;
31
31
  const sourceCodeLines = sourceCode.lines;
32
32
  const nodeStartLine = node.loc.start.line;
33
33
  const nodeEndLine = node.loc.end.line;
34
- const collisionClassesRecord = filterCollisionClasses(classNames, settings.config);
34
+ // todo css
35
+ const collisionClassesRecord = filterCollisionClasses(classNames, css);
35
36
  for(const className in collisionClassesRecord){
36
37
  const collisionClasses = collisionClassesRecord[className];
37
38
  const collisionClassNamesMsg = collisionClasses.map((x)=>`"${x}"`).join(' and ');
@@ -9,9 +9,9 @@ var extractValueFromNode = require('../utils/extract-value-from-node.cjs');
9
9
  var extractRangeFromNode = require('../utils/extract-range-from-node.cjs');
10
10
  var extractClassnamesFromValue = require('../utils/extract-classnames-from-value.cjs');
11
11
  var findLoc = require('../utils/find-loc.cjs');
12
- var reorderValidClasses = require('../functions/reorder-valid-classes.cjs');
13
12
  var createRule = require('../create-rule.cjs');
14
13
  var settingsSchema = require('../settings-schema.cjs');
14
+ var css = require('@master/css');
15
15
 
16
16
  var classOrder = createRule({
17
17
  name: 'consistent-class-order',
@@ -31,7 +31,7 @@ var classOrder = createRule({
31
31
  },
32
32
  defaultOptions: [],
33
33
  create: function(context) {
34
- const { options, settings } = resolveContext(context);
34
+ const { settings, css: css$1 } = resolveContext(context);
35
35
  const sourceCode = context.sourceCode;
36
36
  const visitNode = (node, arg = null)=>{
37
37
  let originalClassNamesValue = null;
@@ -126,7 +126,7 @@ var classOrder = createRule({
126
126
  // Don't run sorting for a single or empty className
127
127
  return;
128
128
  }
129
- let orderedClassNames = reorderValidClasses(classNames, settings.config);
129
+ let orderedClassNames = css.reorderForReadableClasses(classNames, css$1).filter((eachOrderedClassName)=>classNames.includes(eachOrderedClassName));
130
130
  orderedClassNames = classNames.filter((x)=>!orderedClassNames.includes(x)).concat(orderedClassNames).filter((x)=>x.trim() !== '');
131
131
  // Generates the validated/sorted attribute value
132
132
  let validatedClassNamesValue = '';
@@ -7,9 +7,9 @@ import extractValueFromNode from '../utils/extract-value-from-node.mjs';
7
7
  import extractRangeFromNode from '../utils/extract-range-from-node.mjs';
8
8
  import extractClassnamesFromValue from '../utils/extract-classnames-from-value.mjs';
9
9
  import findLoc from '../utils/find-loc.mjs';
10
- import reorderValidClasses from '../functions/reorder-valid-classes.mjs';
11
10
  import createRule from '../create-rule.mjs';
12
11
  import settingsSchema from '../settings-schema.mjs';
12
+ import { reorderForReadableClasses } from '@master/css';
13
13
 
14
14
  var classOrder = createRule({
15
15
  name: 'consistent-class-order',
@@ -29,7 +29,7 @@ var classOrder = createRule({
29
29
  },
30
30
  defaultOptions: [],
31
31
  create: function(context) {
32
- const { options, settings } = resolveContext(context);
32
+ const { settings, css } = resolveContext(context);
33
33
  const sourceCode = context.sourceCode;
34
34
  const visitNode = (node, arg = null)=>{
35
35
  let originalClassNamesValue = null;
@@ -124,7 +124,7 @@ var classOrder = createRule({
124
124
  // Don't run sorting for a single or empty className
125
125
  return;
126
126
  }
127
- let orderedClassNames = reorderValidClasses(classNames, settings.config);
127
+ let orderedClassNames = reorderForReadableClasses(classNames, css).filter((eachOrderedClassName)=>classNames.includes(eachOrderedClassName));
128
128
  orderedClassNames = classNames.filter((x)=>!orderedClassNames.includes(x)).concat(orderedClassNames).filter((x)=>x.trim() !== '');
129
129
  // Generates the validated/sorted attribute value
130
130
  let validatedClassNamesValue = '';
@@ -4,9 +4,9 @@ var defineVisitors = require('../utils/define-visitors.cjs');
4
4
  var resolveContext = require('../utils/resolve-context.cjs');
5
5
  var findLoc = require('../utils/find-loc.cjs');
6
6
  var parseNodeRecursive = require('../utils/parse-node-recursive.cjs');
7
- var validate = require('../functions/validate.cjs');
8
7
  var createRule = require('../create-rule.cjs');
9
8
  var settingsSchema = require('../settings-schema.cjs');
9
+ var cssValidator = require('@master/css-validator');
10
10
 
11
11
  var classValidation = createRule({
12
12
  name: 'syntax-error-checks',
@@ -27,7 +27,7 @@ var classValidation = createRule({
27
27
  },
28
28
  defaultOptions: [],
29
29
  create: function(context) {
30
- const { options, settings } = resolveContext(context);
30
+ const { options, settings, css } = resolveContext(context);
31
31
  const visitNode = (node, arg = null)=>{
32
32
  parseNodeRecursive.parseNodeRecursive(node, arg, (classNames, node)=>{
33
33
  const sourceCode = context.sourceCode;
@@ -35,10 +35,10 @@ var classValidation = createRule({
35
35
  const nodeStartLine = node.loc.start.line;
36
36
  const nodeEndLine = node.loc.end.line;
37
37
  for (const className of classNames){
38
- const { isMasterCSS, errors } = validate(className, settings.config);
38
+ const { matched, errors } = cssValidator.validate(className, css);
39
39
  if (errors.length > 0) {
40
40
  for (const error of errors){
41
- if (isMasterCSS) {
41
+ if (matched) {
42
42
  context.report({
43
43
  loc: findLoc(className, sourceCodeLines, nodeStartLine, nodeEndLine),
44
44
  messageId: 'invalidClass',
@@ -2,9 +2,9 @@ import defineVisitors from '../utils/define-visitors.mjs';
2
2
  import resolveContext from '../utils/resolve-context.mjs';
3
3
  import findLoc from '../utils/find-loc.mjs';
4
4
  import { parseNodeRecursive } from '../utils/parse-node-recursive.mjs';
5
- import validate from '../functions/validate.mjs';
6
5
  import createRule from '../create-rule.mjs';
7
6
  import settingsSchema from '../settings-schema.mjs';
7
+ import { validate } from '@master/css-validator';
8
8
 
9
9
  var classValidation = createRule({
10
10
  name: 'syntax-error-checks',
@@ -25,7 +25,7 @@ var classValidation = createRule({
25
25
  },
26
26
  defaultOptions: [],
27
27
  create: function(context) {
28
- const { options, settings } = resolveContext(context);
28
+ const { options, settings, css } = resolveContext(context);
29
29
  const visitNode = (node, arg = null)=>{
30
30
  parseNodeRecursive(node, arg, (classNames, node)=>{
31
31
  const sourceCode = context.sourceCode;
@@ -33,10 +33,10 @@ var classValidation = createRule({
33
33
  const nodeStartLine = node.loc.start.line;
34
34
  const nodeEndLine = node.loc.end.line;
35
35
  for (const className of classNames){
36
- const { isMasterCSS, errors } = validate(className, settings.config);
36
+ const { matched, errors } = validate(className, css);
37
37
  if (errors.length > 0) {
38
38
  for (const error of errors){
39
- if (isMasterCSS) {
39
+ if (matched) {
40
40
  context.report({
41
41
  loc: findLoc(className, sourceCodeLines, nodeStartLine, nodeEndLine),
42
42
  messageId: 'invalidClass',
@@ -1,12 +1,34 @@
1
1
  'use strict';
2
2
 
3
3
  var settings = require('../settings.cjs');
4
+ var exploreConfig = require('@master/css-explore-config');
5
+ var css = require('@master/css');
4
6
 
7
+ const cssCaches = [];
5
8
  function resolveContext(context) {
6
- const resolvedSettings = Object.assign(settings, context.settings?.['@master/css']);
9
+ const resolvedSettings = Object.assign({}, settings, context.settings?.['@master/css']);
10
+ let css$1 = cssCaches.find((cache)=>cache.settings.config === resolvedSettings.config && cache.cwd === context.cwd)?.css;
11
+ if (!css$1) {
12
+ let config;
13
+ if (typeof resolvedSettings.config === 'object') {
14
+ config = resolvedSettings.config;
15
+ } else {
16
+ config = exploreConfig({
17
+ name: resolvedSettings.config,
18
+ found: undefined
19
+ });
20
+ }
21
+ css$1 = new css.MasterCSS(config);
22
+ cssCaches.push({
23
+ cwd: context.cwd,
24
+ settings: resolvedSettings,
25
+ css: css$1
26
+ });
27
+ }
7
28
  return {
8
29
  settings: resolvedSettings,
9
- options: context.options[0] || {}
30
+ options: context.options[0] || {},
31
+ css: css$1
10
32
  };
11
33
  }
12
34
 
@@ -1,4 +1,5 @@
1
1
  import type { RuleContext } from '@typescript-eslint/utils/ts-eslint';
2
+ import { MasterCSS } from '@master/css';
2
3
  export default function resolveContext(context: RuleContext<any, any[]>): {
3
4
  settings: {
4
5
  classAttributes: string[];
@@ -8,4 +9,5 @@ export default function resolveContext(context: RuleContext<any, any[]>): {
8
9
  config: string;
9
10
  };
10
11
  options: any;
12
+ css: MasterCSS;
11
13
  };
@@ -1,10 +1,32 @@
1
1
  import settings from '../settings.mjs';
2
+ import exploreConfig from '@master/css-explore-config';
3
+ import { MasterCSS } from '@master/css';
2
4
 
5
+ const cssCaches = [];
3
6
  function resolveContext(context) {
4
- const resolvedSettings = Object.assign(settings, context.settings?.['@master/css']);
7
+ const resolvedSettings = Object.assign({}, settings, context.settings?.['@master/css']);
8
+ let css = cssCaches.find((cache)=>cache.settings.config === resolvedSettings.config && cache.cwd === context.cwd)?.css;
9
+ if (!css) {
10
+ let config;
11
+ if (typeof resolvedSettings.config === 'object') {
12
+ config = resolvedSettings.config;
13
+ } else {
14
+ config = exploreConfig({
15
+ name: resolvedSettings.config,
16
+ found: undefined
17
+ });
18
+ }
19
+ css = new MasterCSS(config);
20
+ cssCaches.push({
21
+ cwd: context.cwd,
22
+ settings: resolvedSettings,
23
+ css
24
+ });
25
+ }
5
26
  return {
6
27
  settings: resolvedSettings,
7
- options: context.options[0] || {}
28
+ options: context.options[0] || {},
29
+ css
8
30
  };
9
31
  }
10
32
 
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@master/eslint-plugin-css","type":"module","scripts":{"build":"techor build \"src/**/*.{js,ts}\"","dev":"pnpm build --watch","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.cjs","module":"./dist/index.mjs","jsnext:main":"./dist/index.mjs","esnext":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.cjs","types":"./dist/index.d.ts"}},"files":["dist"],"publishConfig":{"access":"public","provenance":true},"dependencies":{"@master/css":"^2.0.0-rc.32","@master/css-explore-config":"^2.0.0-rc.32","@master/css-validator":"^2.0.0-rc.32","@typescript-eslint/utils":"^7.7.0","synckit":"^0.9.0","typescript-eslint":"^7.7.0"},"devDependencies":{"@angular-eslint/template-parser":"^17.3.0","@master/css-explore-config":"^2.0.0-rc.32","@master/css-shared":"^2.0.0-rc.32","@types/node":"^20.12.7","@typescript-eslint/rule-tester":"^7.7.0","eslint":"^8.57.0","eslint-plugin-markdown":"^4.0.1","eslint-plugin-mdx":"^3.1.5","svelte-eslint-parser":"^0.34.1","ts-node":"^10.9.2","vue-eslint-parser":"^9.4.2"},"version":"2.0.0-rc.32"}
1
+ {"name":"@master/eslint-plugin-css","type":"module","scripts":{"build":"techor build \"src/**/*.{js,ts}\"","dev":"pnpm build --watch","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.cjs","module":"./dist/index.mjs","jsnext:main":"./dist/index.mjs","esnext":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.cjs","types":"./dist/index.d.ts"}},"files":["dist"],"publishConfig":{"access":"public","provenance":true},"dependencies":{"@master/css":"^2.0.0-rc.33","@master/css-explore-config":"^2.0.0-rc.33","@master/css-validator":"^2.0.0-rc.33","@typescript-eslint/utils":"^7.7.0","synckit":"^0.9.0","typescript-eslint":"^7.7.0"},"devDependencies":{"@angular-eslint/template-parser":"^17.3.0","@master/css-explore-config":"^2.0.0-rc.33","@master/css-shared":"^2.0.0-rc.33","@types/node":"^20.12.7","@typescript-eslint/rule-tester":"^7.7.0","eslint":"^8.57.0","eslint-plugin-markdown":"^4.0.1","eslint-plugin-mdx":"^3.1.5","svelte-eslint-parser":"^0.34.1","ts-node":"^10.9.2","vue-eslint-parser":"^9.4.2"},"version":"2.0.0-rc.33"}
@@ -1,35 +0,0 @@
1
- 'use strict';
2
-
3
- var synckit = require('synckit');
4
- var getCss = require('./get-css.cjs');
5
- var cssValidator = require('@master/css-validator');
6
- var css = require('@master/css');
7
-
8
- function runFilterCollisionClasses(classNames, config) {
9
- const currentCSS = getCss(config);
10
- const validRules = classNames.map((eachClassName)=>cssValidator.generateValidRules(eachClassName, {
11
- css: currentCSS
12
- })[0]).filter(Boolean);
13
- const collisionClassesRecord = {};
14
- for(let i = 0; i < classNames.length; i++){
15
- const className = classNames[i];
16
- const rule = validRules.find((eachValidRule)=>eachValidRule.className === className);
17
- const collisionClasses = [];
18
- if (rule) {
19
- for(let j = 0; j < classNames.length; j++){
20
- const compareClassName = classNames[j];
21
- const compareRule = validRules.find((eachValidRule)=>eachValidRule.className === compareClassName);
22
- if (i !== j && compareRule && css.areRulesDuplicated(rule, compareRule) && css.areRuleStatesEqual(rule, compareRule)) {
23
- collisionClasses.push(compareClassName);
24
- }
25
- }
26
- if (collisionClasses.length > 0) {
27
- collisionClassesRecord[className] = collisionClasses;
28
- }
29
- }
30
- }
31
- return collisionClassesRecord;
32
- }
33
- synckit.runAsWorker(runFilterCollisionClasses);
34
-
35
- module.exports = runFilterCollisionClasses;
@@ -1 +0,0 @@
1
- export default function runFilterCollisionClasses(classNames: string[], config: string | object): Record<string, string[]>;
@@ -1,33 +0,0 @@
1
- import { runAsWorker } from 'synckit';
2
- import getCSS from './get-css.mjs';
3
- import { generateValidRules } from '@master/css-validator';
4
- import { areRulesDuplicated, areRuleStatesEqual } from '@master/css';
5
-
6
- function runFilterCollisionClasses(classNames, config) {
7
- const currentCSS = getCSS(config);
8
- const validRules = classNames.map((eachClassName)=>generateValidRules(eachClassName, {
9
- css: currentCSS
10
- })[0]).filter(Boolean);
11
- const collisionClassesRecord = {};
12
- for(let i = 0; i < classNames.length; i++){
13
- const className = classNames[i];
14
- const rule = validRules.find((eachValidRule)=>eachValidRule.className === className);
15
- const collisionClasses = [];
16
- if (rule) {
17
- for(let j = 0; j < classNames.length; j++){
18
- const compareClassName = classNames[j];
19
- const compareRule = validRules.find((eachValidRule)=>eachValidRule.className === compareClassName);
20
- if (i !== j && compareRule && areRulesDuplicated(rule, compareRule) && areRuleStatesEqual(rule, compareRule)) {
21
- collisionClasses.push(compareClassName);
22
- }
23
- }
24
- if (collisionClasses.length > 0) {
25
- collisionClassesRecord[className] = collisionClasses;
26
- }
27
- }
28
- }
29
- return collisionClassesRecord;
30
- }
31
- runAsWorker(runFilterCollisionClasses);
32
-
33
- export { runFilterCollisionClasses as default };
@@ -1,19 +0,0 @@
1
- 'use strict';
2
-
3
- var css = require('@master/css');
4
- var exploreConfig = require('@master/css-explore-config');
5
-
6
- let currentCSS;
7
- let currentConfig;
8
- function getCSS(config) {
9
- if (!currentCSS || currentConfig !== config) {
10
- currentCSS = new css.MasterCSS(typeof config === 'object' ? config : exploreConfig({
11
- name: config,
12
- found: undefined
13
- }));
14
- currentConfig = config;
15
- }
16
- return currentCSS;
17
- }
18
-
19
- module.exports = getCSS;
@@ -1 +0,0 @@
1
- export default function getCSS(config: any): any;
@@ -1,17 +0,0 @@
1
- import { MasterCSS } from '@master/css';
2
- import exploreConfig from '@master/css-explore-config';
3
-
4
- let currentCSS;
5
- let currentConfig;
6
- function getCSS(config) {
7
- if (!currentCSS || currentConfig !== config) {
8
- currentCSS = new MasterCSS(typeof config === 'object' ? config : exploreConfig({
9
- name: config,
10
- found: undefined
11
- }));
12
- currentConfig = config;
13
- }
14
- return currentCSS;
15
- }
16
-
17
- export { getCSS as default };
@@ -1,9 +0,0 @@
1
- 'use strict';
2
-
3
- var synckit = require('synckit');
4
- var reorderValidClasses_worker = require('./reorder-valid-classes.worker.cjs');
5
- var path = require('path');
6
-
7
- var reorderValidClasses = process.env.NODE_ENV === 'test' ? reorderValidClasses_worker : synckit.createSyncFn(path.join(__dirname, 'reorder-valid-classes.worker.cjs'));
8
-
9
- module.exports = reorderValidClasses;
@@ -1,3 +0,0 @@
1
- import runReorderValidClasses from './reorder-valid-classes.worker';
2
- declare const _default: typeof runReorderValidClasses;
3
- export default _default;
@@ -1,11 +0,0 @@
1
- import __url_for_shim from 'url';
2
- import __path_for_shim from 'path';
3
- const __filename = __url_for_shim.fileURLToPath(import.meta.url);
4
- const __dirname = __path_for_shim.dirname(__filename);
5
- import { createSyncFn } from 'synckit';
6
- import runReorderValidClasses from './reorder-valid-classes.worker.mjs';
7
- import { join } from 'path';
8
- var reorderValidClasses = process.env.NODE_ENV === 'test' ? runReorderValidClasses : createSyncFn(join(__dirname, 'reorder-valid-classes.worker.cjs'));
9
- export {
10
- reorderValidClasses as default
11
- };
@@ -1,13 +0,0 @@
1
- 'use strict';
2
-
3
- var css = require('@master/css');
4
- var synckit = require('synckit');
5
- var getCss = require('./get-css.cjs');
6
-
7
- function runReorderValidClasses(classNames, config) {
8
- const currentCSS = getCss(config);
9
- return css.reorderForReadableClasses(classNames, currentCSS).filter((eachOrderedClassName)=>classNames.includes(eachOrderedClassName));
10
- }
11
- synckit.runAsWorker(runReorderValidClasses);
12
-
13
- module.exports = runReorderValidClasses;
@@ -1 +0,0 @@
1
- export default function runReorderValidClasses(classNames: string[], config: string | object): string[];
@@ -1,11 +0,0 @@
1
- import { reorderForReadableClasses } from '@master/css';
2
- import { runAsWorker } from 'synckit';
3
- import getCSS from './get-css.mjs';
4
-
5
- function runReorderValidClasses(classNames, config) {
6
- const currentCSS = getCSS(config);
7
- return reorderForReadableClasses(classNames, currentCSS).filter((eachOrderedClassName)=>classNames.includes(eachOrderedClassName));
8
- }
9
- runAsWorker(runReorderValidClasses);
10
-
11
- export { runReorderValidClasses as default };
@@ -1,9 +0,0 @@
1
- 'use strict';
2
-
3
- var synckit = require('synckit');
4
- var validate_worker = require('./validate.worker.cjs');
5
- var path = require('path');
6
-
7
- var validate = process.env.NODE_ENV === 'test' ? validate_worker : synckit.createSyncFn(path.join(__dirname, 'validate.worker.cjs'));
8
-
9
- module.exports = validate;
@@ -1,3 +0,0 @@
1
- import runValidate from './validate.worker';
2
- declare const _default: typeof runValidate;
3
- export default _default;
@@ -1,11 +0,0 @@
1
- import __url_for_shim from 'url';
2
- import __path_for_shim from 'path';
3
- const __filename = __url_for_shim.fileURLToPath(import.meta.url);
4
- const __dirname = __path_for_shim.dirname(__filename);
5
- import { createSyncFn } from 'synckit';
6
- import runValidate from './validate.worker.mjs';
7
- import { join } from 'path';
8
- var validate = process.env.NODE_ENV === 'test' ? runValidate : createSyncFn(join(__dirname, 'validate.worker.cjs'));
9
- export {
10
- validate as default
11
- };
@@ -1,15 +0,0 @@
1
- 'use strict';
2
-
3
- var synckit = require('synckit');
4
- var getCss = require('./get-css.cjs');
5
- var cssValidator = require('@master/css-validator');
6
-
7
- function runValidate(className, config) {
8
- const currentCSS = getCss(config);
9
- return cssValidator.validate(className, {
10
- css: currentCSS
11
- });
12
- }
13
- synckit.runAsWorker(runValidate);
14
-
15
- module.exports = runValidate;
@@ -1,5 +0,0 @@
1
- import { SyntaxError } from '@master/css-validator';
2
- export default function runValidate(className: string, config: string | object): {
3
- isMasterCSS: boolean;
4
- errors: SyntaxError[];
5
- };
@@ -1,13 +0,0 @@
1
- import { runAsWorker } from 'synckit';
2
- import getCSS from './get-css.mjs';
3
- import { validate } from '@master/css-validator';
4
-
5
- function runValidate(className, config) {
6
- const currentCSS = getCSS(config);
7
- return validate(className, {
8
- css: currentCSS
9
- });
10
- }
11
- runAsWorker(runValidate);
12
-
13
- export { runValidate as default };