eslint-plugin-path-checker-new 0.0.0
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.
- package/README.md +71 -0
- package/lib/index.js +27 -0
- package/lib/rules/path-checker.js +34 -0
- package/package.json +42 -0
package/README.md
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# eslint-plugin-path-checker
|
|
2
|
+
|
|
3
|
+
feature sliced relative path checker
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
You'll first need to install [ESLint](https://eslint.org/):
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
npm i eslint --save-dev
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Next, install `eslint-plugin-path-checker`:
|
|
14
|
+
|
|
15
|
+
```sh
|
|
16
|
+
npm install eslint-plugin-path-checker --save-dev
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
In your [configuration file](https://eslint.org/docs/latest/use/configure/configuration-files#configuration-file), import the plugin `eslint-plugin-path-checker` and add `path-checker` to the `plugins` key:
|
|
22
|
+
|
|
23
|
+
```js
|
|
24
|
+
import { defineConfig } from "eslint/config";
|
|
25
|
+
import path-checker from "eslint-plugin-path-checker";
|
|
26
|
+
|
|
27
|
+
export default defineConfig([
|
|
28
|
+
{
|
|
29
|
+
plugins: {
|
|
30
|
+
path-checker
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
]);
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
Then configure the rules you want to use under the `rules` key.
|
|
38
|
+
|
|
39
|
+
```js
|
|
40
|
+
import { defineConfig } from "eslint/config";
|
|
41
|
+
import path-checker from "eslint-plugin-path-checker";
|
|
42
|
+
|
|
43
|
+
export default defineConfig([
|
|
44
|
+
{
|
|
45
|
+
plugins: {
|
|
46
|
+
path-checker
|
|
47
|
+
},
|
|
48
|
+
rules: {
|
|
49
|
+
"path-checker/rule-name": "warn"
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
]);
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
## Configurations
|
|
58
|
+
|
|
59
|
+
<!-- begin auto-generated configs list -->
|
|
60
|
+
TODO: Run eslint-doc-generator to generate the configs list (or delete this section if no configs are offered).
|
|
61
|
+
<!-- end auto-generated configs list -->
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
## Rules
|
|
66
|
+
|
|
67
|
+
<!-- begin auto-generated rules list -->
|
|
68
|
+
TODO: Run eslint-doc-generator to generate the rules list.
|
|
69
|
+
<!-- end auto-generated rules list -->
|
|
70
|
+
|
|
71
|
+
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview feature sliced relative path checker
|
|
3
|
+
* @author kate
|
|
4
|
+
*/
|
|
5
|
+
"use strict";
|
|
6
|
+
|
|
7
|
+
//------------------------------------------------------------------------------
|
|
8
|
+
// Requirements
|
|
9
|
+
//------------------------------------------------------------------------------
|
|
10
|
+
|
|
11
|
+
const requireIndex = require("requireindex");
|
|
12
|
+
|
|
13
|
+
//------------------------------------------------------------------------------
|
|
14
|
+
// Plugin Definition
|
|
15
|
+
//------------------------------------------------------------------------------
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
// import all rules in lib/rules
|
|
19
|
+
module.exports.rules = requireIndex(__dirname + "/rules");
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
// import processors
|
|
24
|
+
module.exports.processors = {
|
|
25
|
+
// add your processors here
|
|
26
|
+
};
|
|
27
|
+
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview feature sluced relative path checker
|
|
3
|
+
* @author kate
|
|
4
|
+
*/
|
|
5
|
+
"use strict";
|
|
6
|
+
|
|
7
|
+
/** @type {import('eslint').Rule.RuleModule} */
|
|
8
|
+
module.exports = {
|
|
9
|
+
meta: {
|
|
10
|
+
type: null, // `problem`, `suggestion`, or `layout`
|
|
11
|
+
docs: {
|
|
12
|
+
description: "feature sluced relative path checker",
|
|
13
|
+
recommended: false,
|
|
14
|
+
url: null, // URL to the documentation page for this rule
|
|
15
|
+
},
|
|
16
|
+
fixable: null, // Or `code` or `whitespace`
|
|
17
|
+
schema: [], // Add a schema if the rule has options
|
|
18
|
+
messages: {}, // Add messageId and message
|
|
19
|
+
},
|
|
20
|
+
|
|
21
|
+
create(context) {
|
|
22
|
+
return {
|
|
23
|
+
ImportDeclaration(node) {
|
|
24
|
+
//example app/entities/Article
|
|
25
|
+
const importTo = node.source.value;
|
|
26
|
+
|
|
27
|
+
// example C:\Users\tim\Desktop\js\...
|
|
28
|
+
const fromFilename = context.filename;
|
|
29
|
+
|
|
30
|
+
context.report({ node: node, message: "Линтер ругается!!" });
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
},
|
|
34
|
+
};
|
package/package.json
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "eslint-plugin-path-checker-new",
|
|
3
|
+
"version": "0.0.0",
|
|
4
|
+
"description": "feature sliced relative path checker",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"eslint",
|
|
7
|
+
"eslintplugin",
|
|
8
|
+
"eslint-plugin"
|
|
9
|
+
],
|
|
10
|
+
"author": "kate",
|
|
11
|
+
"main": "./lib/index.js",
|
|
12
|
+
"exports": "./lib/index.js",
|
|
13
|
+
"files": [
|
|
14
|
+
"lib"
|
|
15
|
+
],
|
|
16
|
+
"scripts": {
|
|
17
|
+
"lint": "npm-run-all \"lint:*\"",
|
|
18
|
+
"lint:eslint-docs": "npm-run-all \"update:eslint-docs -- --check\"",
|
|
19
|
+
"lint:js": "eslint .",
|
|
20
|
+
"test": "mocha tests --recursive",
|
|
21
|
+
"update:eslint-docs": "eslint-doc-generator"
|
|
22
|
+
},
|
|
23
|
+
"dependencies": {
|
|
24
|
+
"requireindex": "^1.2.0"
|
|
25
|
+
},
|
|
26
|
+
"devDependencies": {
|
|
27
|
+
"eslint": "^9.0.0",
|
|
28
|
+
"@eslint/js": "^9.0.0",
|
|
29
|
+
"eslint-doc-generator": "^2.0.0",
|
|
30
|
+
"eslint-plugin-eslint-plugin": "^6.0.0",
|
|
31
|
+
"eslint-plugin-n": "^17.0.0",
|
|
32
|
+
"mocha": "^11.0.0",
|
|
33
|
+
"npm-run-all2": "^6.1.2"
|
|
34
|
+
},
|
|
35
|
+
"engines": {
|
|
36
|
+
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
|
37
|
+
},
|
|
38
|
+
"peerDependencies": {
|
|
39
|
+
"eslint": ">=8.57.0"
|
|
40
|
+
},
|
|
41
|
+
"license": "MIT"
|
|
42
|
+
}
|