@matrixai/lint 0.4.3 → 0.4.5

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 (58) hide show
  1. package/README.md +34 -4
  2. package/dist/LintDomainPluginBase.d.ts +9 -0
  3. package/dist/LintDomainPluginBase.js +12 -0
  4. package/dist/LintDomainPluginBase.js.map +1 -0
  5. package/dist/bin/matrixai-lint.js +16 -11
  6. package/dist/bin/matrixai-lint.js.map +1 -1
  7. package/dist/configs/eslint.d.ts +0 -5
  8. package/dist/configs/eslint.js +6 -2
  9. package/dist/configs/eslint.js.map +1 -1
  10. package/dist/domainEngine.d.ts +32 -0
  11. package/dist/{domains/engine.js → domainEngine.js} +12 -7
  12. package/dist/domainEngine.js.map +1 -0
  13. package/dist/{domains/index.d.ts → domains.d.ts} +4 -3
  14. package/dist/{domains/index.js → domains.js} +28 -15
  15. package/dist/domains.js.map +1 -0
  16. package/dist/eslint/ESLintDomainPlugin.d.ts +9 -0
  17. package/dist/eslint/ESLintDomainPlugin.js +86 -0
  18. package/dist/eslint/ESLintDomainPlugin.js.map +1 -0
  19. package/dist/eslint/rules/no-aliased-imports.js.map +1 -0
  20. package/dist/eslint/utils.d.ts +15 -0
  21. package/dist/eslint/utils.js +271 -0
  22. package/dist/eslint/utils.js.map +1 -0
  23. package/dist/markdown/MarkdownDomainPlugin.d.ts +11 -0
  24. package/dist/markdown/MarkdownDomainPlugin.js +116 -0
  25. package/dist/markdown/MarkdownDomainPlugin.js.map +1 -0
  26. package/dist/nix/NixDomainPlugin.d.ts +11 -0
  27. package/dist/nix/NixDomainPlugin.js +73 -0
  28. package/dist/nix/NixDomainPlugin.js.map +1 -0
  29. package/dist/shell/ShellDomainPlugin.d.ts +11 -0
  30. package/dist/shell/ShellDomainPlugin.js +65 -0
  31. package/dist/shell/ShellDomainPlugin.js.map +1 -0
  32. package/dist/tsbuildinfo +1 -1
  33. package/dist/types.d.ts +46 -2
  34. package/dist/utils.d.ts +5 -49
  35. package/dist/utils.js +150 -261
  36. package/dist/utils.js.map +1 -1
  37. package/package.json +3 -3
  38. package/dist/domains/engine.d.ts +0 -72
  39. package/dist/domains/engine.js.map +0 -1
  40. package/dist/domains/eslint.d.ts +0 -3
  41. package/dist/domains/eslint.js +0 -84
  42. package/dist/domains/eslint.js.map +0 -1
  43. package/dist/domains/files.d.ts +0 -5
  44. package/dist/domains/files.js +0 -185
  45. package/dist/domains/files.js.map +0 -1
  46. package/dist/domains/index.js.map +0 -1
  47. package/dist/domains/markdown.d.ts +0 -5
  48. package/dist/domains/markdown.js +0 -107
  49. package/dist/domains/markdown.js.map +0 -1
  50. package/dist/domains/shell.d.ts +0 -5
  51. package/dist/domains/shell.js +0 -59
  52. package/dist/domains/shell.js.map +0 -1
  53. package/dist/plugins/eslint-plugin-matrixai.d.ts +0 -18
  54. package/dist/plugins/eslint-plugin-matrixai.js +0 -13
  55. package/dist/plugins/eslint-plugin-matrixai.js.map +0 -1
  56. package/dist/rules/no-aliased-imports.js.map +0 -1
  57. /package/dist/{rules → eslint/rules}/no-aliased-imports.d.ts +0 -0
  58. /package/dist/{rules → eslint/rules}/no-aliased-imports.js +0 -0
@@ -1,84 +0,0 @@
1
- import { resolveFilesFromPatterns, resolveSearchRootsFromPatterns, } from './files.js';
2
- import * as utils from '../utils.js';
3
- import { resolveLintConfig } from '../config.js';
4
- const ESLINT_FILE_EXTENSIONS = [
5
- '.js',
6
- '.mjs',
7
- '.cjs',
8
- '.jsx',
9
- '.ts',
10
- '.tsx',
11
- '.mts',
12
- '.cts',
13
- '.json',
14
- ];
15
- const DEFAULT_ESLINT_SEARCH_ROOTS = ['./src', './scripts', './tests'];
16
- function resolveESLintDetectionPatterns(eslintPatterns) {
17
- if (eslintPatterns != null && eslintPatterns.length > 0) {
18
- return [...eslintPatterns];
19
- }
20
- const resolvedConfig = resolveLintConfig();
21
- const { tsconfigPaths, forceInclude } = resolvedConfig.domains.eslint;
22
- if (tsconfigPaths.length === 0) {
23
- return DEFAULT_ESLINT_SEARCH_ROOTS;
24
- }
25
- const { files } = utils.buildPatterns(tsconfigPaths, forceInclude, process.cwd(), resolvedConfig.root);
26
- if (files.length === 0) {
27
- return DEFAULT_ESLINT_SEARCH_ROOTS;
28
- }
29
- return files;
30
- }
31
- function createESLintDomainPlugin() {
32
- return {
33
- domain: 'eslint',
34
- description: 'Lint JavaScript/TypeScript/JSON files with ESLint.',
35
- detect: ({ eslintPatterns }) => {
36
- if (eslintPatterns != null && eslintPatterns.length > 0) {
37
- const searchRoots = resolveSearchRootsFromPatterns(eslintPatterns);
38
- return {
39
- relevant: searchRoots.length > 0,
40
- relevanceReason: searchRoots.length > 0
41
- ? undefined
42
- : 'No ESLint-supported files matched in effective scope.',
43
- available: true,
44
- availabilityKind: 'required',
45
- };
46
- }
47
- const detectionPatterns = resolveESLintDetectionPatterns(eslintPatterns);
48
- const matchedFiles = resolveFilesFromPatterns(detectionPatterns, ESLINT_FILE_EXTENSIONS);
49
- return {
50
- relevant: matchedFiles.length > 0,
51
- relevanceReason: matchedFiles.length > 0
52
- ? undefined
53
- : 'No ESLint-supported files matched in effective scope.',
54
- available: true,
55
- availabilityKind: 'required',
56
- matchedFiles,
57
- };
58
- },
59
- run: async ({ fix, logger, chosenConfig, isConfigValid, eslintPatterns, }) => {
60
- if (!isConfigValid) {
61
- logger.error('Skipping ESLint due to invalid --eslint-config path.');
62
- return { hadFailure: true };
63
- }
64
- try {
65
- const explicitPatterns = eslintPatterns != null && eslintPatterns.length > 0
66
- ? resolveFilesFromPatterns(eslintPatterns, ESLINT_FILE_EXTENSIONS)
67
- : undefined;
68
- const hadLintingErrors = await utils.runESLint({
69
- fix,
70
- logger,
71
- configPath: chosenConfig,
72
- explicitGlobs: explicitPatterns,
73
- });
74
- return { hadFailure: hadLintingErrors };
75
- }
76
- catch (err) {
77
- logger.error(`ESLint failed: \n${err}`);
78
- return { hadFailure: true };
79
- }
80
- },
81
- };
82
- }
83
- export { createESLintDomainPlugin };
84
- //# sourceMappingURL=eslint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eslint.js","sourceRoot":"","sources":["../../src/domains/eslint.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- declare function resolveSearchRootsFromPatterns(patterns: readonly string[], cwd?: string): string[];
2
- declare function collectFilesByExtensions(searchRoots: readonly string[], extensions: readonly string[]): string[];
3
- declare function resolveFilesFromPatterns(patterns: readonly string[], extensions: readonly string[], cwd?: string): string[];
4
- declare function relativizeFiles(files: readonly string[], cwd?: string): string[];
5
- export { resolveSearchRootsFromPatterns, collectFilesByExtensions, resolveFilesFromPatterns, relativizeFiles, };
@@ -1,185 +0,0 @@
1
- import path from 'node:path';
2
- import process from 'node:process';
3
- import fs from 'node:fs';
4
- import { minimatch } from 'minimatch';
5
- const GLOB_META_PATTERN = /[*?[\]{}()!+@]/;
6
- const EXCLUDED_DIR_NAMES = new Set(['.git', 'node_modules', 'dist']);
7
- function normalizePathForGlob(value) {
8
- return value.replace(/\\/g, '/').replace(/^\.\//, '');
9
- }
10
- function normalizePatternForSearchRoot(pattern) {
11
- return pattern.trim().replace(/\\/g, '/');
12
- }
13
- function toPosixRelativePath(filePath, cwd = process.cwd()) {
14
- const relativePath = path.relative(cwd, filePath).split(path.sep).join('/');
15
- if (relativePath === '') {
16
- return '.';
17
- }
18
- return relativePath;
19
- }
20
- function normalizePatternForMatching(pattern, cwd = process.cwd()) {
21
- const normalizedPattern = normalizePathForGlob(pattern.trim());
22
- if (normalizedPattern.length === 0) {
23
- return '';
24
- }
25
- const platformPattern = normalizedPattern.split('/').join(path.sep);
26
- const absolutePattern = path.isAbsolute(platformPattern)
27
- ? platformPattern
28
- : path.resolve(cwd, platformPattern);
29
- return toPosixRelativePath(absolutePattern, cwd);
30
- }
31
- function isGlobPattern(value) {
32
- return GLOB_META_PATTERN.test(value);
33
- }
34
- function patternToSearchRoot(pattern, cwd = process.cwd()) {
35
- const normalizedPattern = normalizePatternForSearchRoot(pattern);
36
- if (!isGlobPattern(normalizedPattern)) {
37
- return path.resolve(cwd, normalizedPattern);
38
- }
39
- const platformPattern = normalizedPattern.split('/').join(path.sep);
40
- const segments = platformPattern
41
- .split(path.sep)
42
- .filter((segment) => segment.length > 0);
43
- const rootSegments = [];
44
- for (const segment of segments) {
45
- if (isGlobPattern(segment)) {
46
- break;
47
- }
48
- rootSegments.push(segment);
49
- }
50
- if (rootSegments.length === 0) {
51
- return cwd;
52
- }
53
- return path.resolve(cwd, ...rootSegments);
54
- }
55
- function resolveSearchRootsFromPatterns(patterns, cwd = process.cwd()) {
56
- const existingRoots = new Set();
57
- for (const pattern of patterns) {
58
- const root = patternToSearchRoot(pattern, cwd);
59
- if (fs.existsSync(root)) {
60
- existingRoots.add(root);
61
- }
62
- }
63
- return [...existingRoots].sort();
64
- }
65
- function collectFilesByExtensions(searchRoots, extensions) {
66
- const extensionSet = new Set(extensions.map((ext) => ext.toLowerCase()));
67
- const matchedFiles = new Set();
68
- const visitPath = (entryPath) => {
69
- let entryStats;
70
- try {
71
- entryStats = fs.statSync(entryPath);
72
- }
73
- catch {
74
- return;
75
- }
76
- if (entryStats.isFile()) {
77
- const extension = path.extname(entryPath).toLowerCase();
78
- if (extensionSet.has(extension)) {
79
- matchedFiles.add(entryPath);
80
- }
81
- return;
82
- }
83
- if (!entryStats.isDirectory()) {
84
- return;
85
- }
86
- let dirEntries;
87
- try {
88
- dirEntries = fs.readdirSync(entryPath, { withFileTypes: true });
89
- }
90
- catch {
91
- return;
92
- }
93
- for (const dirEntry of dirEntries) {
94
- const childPath = path.join(entryPath, dirEntry.name);
95
- if (dirEntry.isDirectory()) {
96
- if (EXCLUDED_DIR_NAMES.has(dirEntry.name)) {
97
- continue;
98
- }
99
- visitPath(childPath);
100
- }
101
- else if (dirEntry.isFile()) {
102
- visitPath(childPath);
103
- }
104
- }
105
- };
106
- for (const searchRoot of searchRoots) {
107
- visitPath(searchRoot);
108
- }
109
- return [...matchedFiles].sort();
110
- }
111
- function resolveFilesFromPatterns(patterns, extensions, cwd = process.cwd()) {
112
- const normalizedPatterns = [...new Set(patterns)]
113
- .map((pattern) => pattern.trim())
114
- .filter((pattern) => pattern.length > 0);
115
- if (normalizedPatterns.length === 0) {
116
- return [];
117
- }
118
- const extensionSet = new Set(extensions.map((extension) => extension.toLowerCase()));
119
- const matchedFiles = new Set();
120
- const literalFiles = new Set();
121
- const literalDirectories = new Set();
122
- const globPatterns = [];
123
- for (const pattern of normalizedPatterns) {
124
- const platformPattern = pattern.replace(/\//g, path.sep);
125
- const absolutePath = path.isAbsolute(platformPattern)
126
- ? platformPattern
127
- : path.resolve(cwd, platformPattern);
128
- let stats;
129
- try {
130
- stats = fs.statSync(absolutePath);
131
- }
132
- catch {
133
- stats = undefined;
134
- }
135
- if (stats?.isFile()) {
136
- literalFiles.add(absolutePath);
137
- continue;
138
- }
139
- if (stats?.isDirectory()) {
140
- literalDirectories.add(absolutePath);
141
- continue;
142
- }
143
- if (isGlobPattern(pattern)) {
144
- globPatterns.push(pattern);
145
- continue;
146
- }
147
- }
148
- for (const literalFile of literalFiles) {
149
- const extension = path.extname(literalFile).toLowerCase();
150
- if (extensionSet.has(extension)) {
151
- matchedFiles.add(literalFile);
152
- }
153
- }
154
- for (const literalDirectory of literalDirectories) {
155
- const files = collectFilesByExtensions([literalDirectory], extensions);
156
- files.forEach((file) => matchedFiles.add(file));
157
- }
158
- if (globPatterns.length > 0) {
159
- const globRoots = resolveSearchRootsFromPatterns(globPatterns, cwd);
160
- const globCandidates = collectFilesByExtensions(globRoots, extensions);
161
- const normalizedGlobPatterns = globPatterns
162
- .map((pattern) => normalizePatternForMatching(pattern, cwd))
163
- .filter((pattern) => pattern.length > 0);
164
- for (const candidate of globCandidates) {
165
- const relativeCandidatePath = toPosixRelativePath(candidate, cwd);
166
- if (normalizedGlobPatterns.some((pattern) => minimatch(relativeCandidatePath, pattern, {
167
- dot: true,
168
- }))) {
169
- matchedFiles.add(candidate);
170
- }
171
- }
172
- }
173
- return relativizeFiles([...matchedFiles].sort(), cwd);
174
- }
175
- function relativizeFiles(files, cwd = process.cwd()) {
176
- return files.map((file) => {
177
- const relativePath = path.relative(cwd, file);
178
- if (relativePath === '') {
179
- return '.';
180
- }
181
- return relativePath;
182
- });
183
- }
184
- export { resolveSearchRootsFromPatterns, collectFilesByExtensions, resolveFilesFromPatterns, relativizeFiles, };
185
- //# sourceMappingURL=files.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/domains/files.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/domains/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import type { LintDomainPlugin } from './engine.js';
2
- declare function createMarkdownDomainPlugin({ prettierConfigPath, }: {
3
- prettierConfigPath: string;
4
- }): LintDomainPlugin;
5
- export { createMarkdownDomainPlugin };
@@ -1,107 +0,0 @@
1
- import os from 'node:os';
2
- import process from 'node:process';
3
- import childProcess from 'node:child_process';
4
- import fs from 'node:fs';
5
- import { createRequire } from 'node:module';
6
- import { resolveFilesFromPatterns } from './files.js';
7
- const platform = os.platform();
8
- const MARKDOWN_FILE_EXTENSIONS = ['.md', '.mdx'];
9
- const DEFAULT_MARKDOWN_ROOT_FILES = ['README.md', 'AGENTS.md'];
10
- const DEFAULT_MARKDOWN_SEARCH_ROOTS = [
11
- './README.md',
12
- './AGENTS.md',
13
- './pages',
14
- './blog',
15
- './docs',
16
- ];
17
- function collectMarkdownFilesFromScope(patterns) {
18
- const matchedRelativeFiles = resolveFilesFromPatterns(patterns, MARKDOWN_FILE_EXTENSIONS);
19
- for (const rootFile of [...DEFAULT_MARKDOWN_ROOT_FILES].reverse()) {
20
- if (!matchedRelativeFiles.includes(rootFile) && fs.existsSync(rootFile)) {
21
- matchedRelativeFiles.unshift(rootFile);
22
- }
23
- }
24
- return matchedRelativeFiles;
25
- }
26
- function resolveMarkdownPatterns(markdownPatterns) {
27
- return markdownPatterns != null && markdownPatterns.length > 0
28
- ? [...markdownPatterns]
29
- : [...DEFAULT_MARKDOWN_SEARCH_ROOTS];
30
- }
31
- function createMarkdownDomainPlugin({ prettierConfigPath, }) {
32
- return {
33
- domain: 'markdown',
34
- description: 'Format and check Markdown/MDX files with Prettier.',
35
- detect: ({ markdownPatterns }) => {
36
- const patterns = resolveMarkdownPatterns(markdownPatterns);
37
- const matchedFiles = collectMarkdownFilesFromScope(patterns);
38
- return {
39
- relevant: matchedFiles.length > 0,
40
- relevanceReason: matchedFiles.length > 0
41
- ? undefined
42
- : 'No Markdown/MDX files matched in effective scope.',
43
- available: true,
44
- availabilityKind: 'required',
45
- matchedFiles,
46
- };
47
- },
48
- run: ({ fix, logger }, detection) => {
49
- const markdownFiles = detection.matchedFiles ?? [];
50
- if (markdownFiles.length === 0) {
51
- return { hadFailure: false };
52
- }
53
- const prettierArgs = [
54
- '--config',
55
- prettierConfigPath,
56
- '--config-precedence',
57
- 'cli-override',
58
- '--no-editorconfig',
59
- fix ? '--write' : '--check',
60
- ...markdownFiles,
61
- ];
62
- logger.info('Running prettier:');
63
- const require = createRequire(import.meta.url);
64
- let prettierBin = null;
65
- try {
66
- // Resolves to @matrixai/lint/node_modules/prettier/bin/prettier.cjs
67
- prettierBin = require.resolve('prettier/bin/prettier.cjs');
68
- }
69
- catch {
70
- // Bundled copy not found
71
- }
72
- try {
73
- if (prettierBin) {
74
- logger.info(` ${prettierBin} \n ${prettierArgs.join('\n' + ' ')}`);
75
- childProcess.execFileSync(process.execPath, [prettierBin, ...prettierArgs], {
76
- stdio: 'inherit',
77
- windowsHide: true,
78
- encoding: 'utf-8',
79
- cwd: process.cwd(),
80
- });
81
- }
82
- else {
83
- logger.info('prettier ' + prettierArgs.join('\n' + ' '));
84
- childProcess.execFileSync('prettier', prettierArgs, {
85
- stdio: 'inherit',
86
- windowsHide: true,
87
- encoding: 'utf-8',
88
- shell: platform === 'win32',
89
- cwd: process.cwd(),
90
- });
91
- }
92
- }
93
- catch (err) {
94
- if (!fix) {
95
- logger.error('Prettier check failed.');
96
- }
97
- else {
98
- logger.error('Prettier write failed. ' + err);
99
- }
100
- return { hadFailure: true };
101
- }
102
- return { hadFailure: false };
103
- },
104
- };
105
- }
106
- export { createMarkdownDomainPlugin };
107
- //# sourceMappingURL=markdown.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../src/domains/markdown.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import type { LintDomainPlugin } from './engine.js';
2
- declare function createShellDomainPlugin({ defaultSearchRoots, }: {
3
- defaultSearchRoots: readonly string[];
4
- }): LintDomainPlugin;
5
- export { createShellDomainPlugin };
@@ -1,59 +0,0 @@
1
- import os from 'node:os';
2
- import process from 'node:process';
3
- import childProcess from 'node:child_process';
4
- import { resolveFilesFromPatterns } from './files.js';
5
- import * as utils from '../utils.js';
6
- const platform = os.platform();
7
- const SHELL_FILE_EXTENSIONS = ['.sh'];
8
- function resolveShellPatterns(shellPatterns, defaultSearchRoots) {
9
- return shellPatterns != null && shellPatterns.length > 0
10
- ? [...shellPatterns]
11
- : [...defaultSearchRoots];
12
- }
13
- function createShellDomainPlugin({ defaultSearchRoots, }) {
14
- return {
15
- domain: 'shell',
16
- description: 'Lint shell scripts with shellcheck when available.',
17
- detect: ({ shellPatterns }) => {
18
- const patterns = resolveShellPatterns(shellPatterns, defaultSearchRoots);
19
- const matchedFiles = resolveFilesFromPatterns(patterns, SHELL_FILE_EXTENSIONS);
20
- const hasShellcheck = utils.commandExists('shellcheck');
21
- return {
22
- relevant: matchedFiles.length > 0,
23
- relevanceReason: matchedFiles.length > 0
24
- ? undefined
25
- : 'No shell script files matched in effective scope.',
26
- available: hasShellcheck,
27
- availabilityKind: 'optional',
28
- unavailableReason: hasShellcheck
29
- ? undefined
30
- : 'shellcheck not found in environment.',
31
- matchedFiles,
32
- };
33
- },
34
- run: ({ logger }, detection) => {
35
- const matchedFiles = detection.matchedFiles ?? [];
36
- if (matchedFiles.length === 0) {
37
- return { hadFailure: false };
38
- }
39
- logger.info('Running shellcheck:');
40
- logger.info(' ' + ['shellcheck', ...matchedFiles].join(' '));
41
- try {
42
- childProcess.execFileSync('shellcheck', matchedFiles, {
43
- stdio: ['inherit', 'inherit', 'inherit'],
44
- windowsHide: true,
45
- encoding: 'utf-8',
46
- shell: platform === 'win32',
47
- cwd: process.cwd(),
48
- });
49
- return { hadFailure: false };
50
- }
51
- catch (err) {
52
- logger.error('Shellcheck failed. ' + err);
53
- return { hadFailure: true };
54
- }
55
- },
56
- };
57
- }
58
- export { createShellDomainPlugin };
59
- //# sourceMappingURL=shell.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/domains/shell.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,aAAa,CAAC;AAErC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;AAE/B,MAAM,qBAAqB,GAAG,CAAC,KAAK,CAAU,CAAC;AAE/C,SAAS,oBAAoB,CAC3B,aAA4C,EAC5C,kBAAqC;IAErC,OAAO,aAAa,IAAI,IAAI,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;QACtD,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC;QACpB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,uBAAuB,CAAC,EAC/B,kBAAkB,GAGnB;IACC,OAAO;QACL,MAAM,EAAE,OAAO;QACf,WAAW,EAAE,oDAAoD;QACjE,MAAM,EAAE,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE;YAC5B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;YACzE,MAAM,YAAY,GAAG,wBAAwB,CAC3C,QAAQ,EACR,qBAAqB,CACtB,CAAC;YACF,MAAM,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YAExD,OAAO;gBACL,QAAQ,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC;gBACjC,eAAe,EACb,YAAY,CAAC,MAAM,GAAG,CAAC;oBACrB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,mDAAmD;gBACzD,SAAS,EAAE,aAAa;gBACxB,gBAAgB,EAAE,UAAmB;gBACrC,iBAAiB,EAAE,aAAa;oBAC9B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,sCAAsC;gBAC1C,YAAY;aACb,CAAC;QACJ,CAAC;QACD,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE;YAC7B,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,IAAI,EAAE,CAAC;YAClD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC7B,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;aAC9B;YAED,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,YAAY,EAAE,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAE7D,IAAI;gBACF,YAAY,CAAC,YAAY,CAAC,YAAY,EAAE,YAAY,EAAE;oBACpD,KAAK,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC;oBACxC,WAAW,EAAE,IAAI;oBACjB,QAAQ,EAAE,OAAO;oBACjB,KAAK,EAAE,QAAQ,KAAK,OAAO;oBAC3B,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;iBACnB,CAAC,CAAC;gBAEH,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;aAC9B;YAAC,OAAO,GAAG,EAAE;gBACZ,MAAM,CAAC,KAAK,CAAC,qBAAqB,GAAG,GAAG,CAAC,CAAC;gBAC1C,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;aAC7B;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,uBAAuB,EAAE,CAAC"}
@@ -1,18 +0,0 @@
1
- declare const matrixaiPlugin: {
2
- meta: {
3
- name: string;
4
- version: string;
5
- };
6
- rules: {
7
- 'no-aliased-imports': import("@typescript-eslint/utils/ts-eslint").RuleModule<"noAlias" | "noAliasNoAutofix", [{
8
- aliases: {
9
- prefix: string;
10
- target: string;
11
- }[];
12
- includeFolders: string[];
13
- autoFix: boolean;
14
- }], unknown, import("@typescript-eslint/utils/ts-eslint").RuleListener>;
15
- };
16
- configs: {};
17
- };
18
- export default matrixaiPlugin;
@@ -1,13 +0,0 @@
1
- import noAliasedImportsRule from '../rules/no-aliased-imports.js';
2
- const matrixaiPlugin = {
3
- meta: {
4
- name: 'eslint-plugin-matrixai',
5
- version: '0.0.1',
6
- },
7
- rules: {
8
- 'no-aliased-imports': noAliasedImportsRule,
9
- },
10
- configs: {},
11
- };
12
- export default matrixaiPlugin;
13
- //# sourceMappingURL=eslint-plugin-matrixai.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"eslint-plugin-matrixai.js","sourceRoot":"","sources":["../../src/plugins/eslint-plugin-matrixai.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,MAAM,gCAAgC,CAAC;AAElE,MAAM,cAAc,GAAG;IACrB,IAAI,EAAE;QACJ,IAAI,EAAE,wBAAwB;QAC9B,OAAO,EAAE,OAAO;KACjB;IACD,KAAK,EAAE;QACL,oBAAoB,EAAE,oBAAoB;KAC3C;IACD,OAAO,EAAE,EAAE;CACZ,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"no-aliased-imports.js","sourceRoot":"","sources":["../../src/rules/no-aliased-imports.ts"],"names":[],"mappings":"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"}