@dword-design/eslint-plugin-import-alias 4.0.8 → 5.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/LICENSE.md CHANGED
@@ -6,7 +6,7 @@ Copyright &copy; Sebastian Landwehr <info@sebastianlandwehr.com>
6
6
 
7
7
  and licensed under:
8
8
 
9
- [MIT License](https://opensource.org/licenses/MIT)
9
+ [MIT License](https://opensource.org/license/mit/)
10
10
 
11
11
  ## MIT License
12
12
 
package/README.md CHANGED
@@ -111,7 +111,19 @@ In this case lucky you, you don't have to do anything else. The plugin should wo
111
111
 
112
112
  If you have a special project setup that does not have a babel config in the project path, you can still use the plugin by passing the aliases directly to the rule. In this case you define the rule additionally in the `rules` section:
113
113
 
114
-
114
+ ```json
115
+ "rules": {
116
+ "@dword-design/import-alias/prefer-alias": [
117
+ "error",
118
+ {
119
+ "alias": {
120
+ "@": "./src",
121
+ "@components: "./src/components"
122
+ }
123
+ }
124
+ ]
125
+ }
126
+ ```
115
127
 
116
128
  <!-- LICENSE/ -->
117
129
  ## Contribute
@@ -150,5 +162,5 @@ Thanks a lot for your support! ❤️
150
162
 
151
163
  ## License
152
164
 
153
- [MIT License](https://opensource.org/licenses/MIT) © [Sebastian Landwehr](https://sebastianlandwehr.com)
165
+ [MIT License](https://opensource.org/license/mit/) © [Sebastian Landwehr](https://sebastianlandwehr.com)
154
166
  <!-- /LICENSE -->
@@ -1,9 +1,5 @@
1
1
  import { OptionManager } from '@babel/core';
2
- import find from "@dword-design/functions/dist/find.js";
3
- import keys from "@dword-design/functions/dist/keys.js";
4
- import replace from "@dword-design/functions/dist/replace.js";
5
- import some from "@dword-design/functions/dist/some.js";
6
- import startsWith from "@dword-design/functions/dist/starts-with.js";
2
+ import { find, keys, replace, some, startsWith } from '@dword-design/functions';
7
3
  import { resolvePath as defaultResolvePath } from 'babel-plugin-module-resolver';
8
4
  import deepmerge from 'deepmerge';
9
5
  import P from 'path';
@@ -32,16 +28,15 @@ export default {
32
28
  if (currentFile === '<text>') return {};
33
29
  const manager = new OptionManager();
34
30
  const babelConfig = manager.init({
35
- babelrc: true,
36
31
  filename: currentFile,
37
- root: folder
32
+ rootMode: 'upward-optional'
38
33
  });
39
34
  const plugin = (_babelConfig$plugins = babelConfig.plugins, find({
40
35
  key: 'module-resolver'
41
36
  })(_babelConfig$plugins));
42
37
  const options = deepmerge.all([{
43
38
  alias: []
44
- }, (plugin === null || plugin === void 0 ? void 0 : plugin.options) || {}, context.options[0] || {}]);
39
+ }, plugin?.options || {}, context.options[0] || {}]);
45
40
  if (options.alias.length === 0) {
46
41
  throw new Error('No alias configured. You have to define aliases by either passing them to the babel-plugin-module-resolver plugin in your Babel config, or directly to the prefer-alias rule.');
47
42
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dword-design/eslint-plugin-import-alias",
3
- "version": "4.0.8",
3
+ "version": "5.0.0",
4
4
  "description": "An ESLint plugin that enforces the use of import aliases. Also supports autofixing.",
5
5
  "keywords": [
6
6
  "alias",
@@ -44,23 +44,24 @@
44
44
  },
45
45
  "dependencies": {
46
46
  "@babel/core": "^7.10.2",
47
- "@dword-design/functions": "^5.0.22",
47
+ "@dword-design/functions": "^6.0.0",
48
48
  "babel-plugin-module-resolver": "^5.0.0",
49
49
  "deepmerge": "^4.3.1",
50
50
  "jiti": "^1.18.2"
51
51
  },
52
52
  "devDependencies": {
53
- "@dword-design/base": "^10.1.0",
53
+ "@dword-design/base": "^11.0.7",
54
54
  "@dword-design/tester": "^2.0.19",
55
55
  "@dword-design/tester-plugin-tmp-dir": "^2.1.26",
56
56
  "depcheck-package-name": "^3.0.1",
57
57
  "eslint": "^8.0.0",
58
- "execa": "^7.1.1",
58
+ "execa": "^8.0.0",
59
59
  "fs-extra": "^11.1.1",
60
+ "in-folder": "^1.0.3",
60
61
  "output-files": "^2.0.0"
61
62
  },
62
63
  "engines": {
63
- "node": ">=16"
64
+ "node": ">=18"
64
65
  },
65
66
  "publishConfig": {
66
67
  "access": "public"