From 0788a57adc54170c3fe3b1d495e7539629dcd8fc Mon Sep 17 00:00:00 2001 From: Anton Gunnarsson Date: Fri, 13 Jun 2025 10:36:11 +0000 Subject: [PATCH] Merged in feat/add-no-relative-packages-rule (pull request #2356) Add eslint rule no-relative-packages * Add eslint rule no-relative-packages Approved-by: Christian Andolf --- apps/scandic-web/eslint.config.mjs | 2 +- packages/common/eslint.config.mjs | 4 +++- packages/design-system/eslint.config.mjs | 3 +++ packages/design-system/package.json | 1 + yarn.lock | 1 + 5 files changed, 9 insertions(+), 2 deletions(-) diff --git a/apps/scandic-web/eslint.config.mjs b/apps/scandic-web/eslint.config.mjs index 6b888587d..9f17d5665 100644 --- a/apps/scandic-web/eslint.config.mjs +++ b/apps/scandic-web/eslint.config.mjs @@ -27,7 +27,7 @@ export default defineConfig([ rules: { "no-unused-vars": "off", "react/function-component-definition": "error", - + "import/no-relative-packages": "error", "simple-import-sort/imports": [ "error", { diff --git a/packages/common/eslint.config.mjs b/packages/common/eslint.config.mjs index a50c8ee30..6aa5464e2 100644 --- a/packages/common/eslint.config.mjs +++ b/packages/common/eslint.config.mjs @@ -4,6 +4,7 @@ import typescriptEslint from "@typescript-eslint/eslint-plugin" import tsParser from "@typescript-eslint/parser" import { defineConfig } from "eslint/config" import simpleImportSort from "eslint-plugin-simple-import-sort" +import importPlugin from "eslint-plugin-import" const compat = new FlatCompat({ recommendedConfig: js.configs.recommended, @@ -17,6 +18,7 @@ export default defineConfig([ plugins: { "simple-import-sort": simpleImportSort, "@typescript-eslint": typescriptEslint, + import: importPlugin, }, linterOptions: { @@ -29,7 +31,7 @@ export default defineConfig([ rules: { "no-unused-vars": "off", - + "import/no-relative-packages": "error", "simple-import-sort/imports": [ "error", { diff --git a/packages/design-system/eslint.config.mjs b/packages/design-system/eslint.config.mjs index 1a48ca537..4a620cf30 100644 --- a/packages/design-system/eslint.config.mjs +++ b/packages/design-system/eslint.config.mjs @@ -4,6 +4,7 @@ import tsParser from '@typescript-eslint/parser' import reactRefresh from 'eslint-plugin-react-refresh' import { FlatCompat } from '@eslint/eslintrc' import js from '@eslint/js' +import importPlugin from 'eslint-plugin-import' const compat = new FlatCompat({ recommendedConfig: js.configs.recommended, @@ -26,8 +27,10 @@ export default defineConfig([ ), plugins: { 'react-refresh': reactRefresh, + import: importPlugin, }, rules: { + 'import/no-relative-packages': 'error', 'react-refresh/only-export-components': [ 'warn', { diff --git a/packages/design-system/package.json b/packages/design-system/package.json index 1faf65385..c163dc0ce 100644 --- a/packages/design-system/package.json +++ b/packages/design-system/package.json @@ -158,6 +158,7 @@ "copy-to-clipboard": "^3.3.3", "deepmerge-ts": "^7.1.5", "eslint": "^9", + "eslint-plugin-import": "^2.31.0", "eslint-plugin-react-hooks": "^5.2.0", "eslint-plugin-react-refresh": "^0.4.20", "eslint-plugin-storybook": "^0.12.0", diff --git a/yarn.lock b/yarn.lock index bb8c1dc84..88ffa5b38 100644 --- a/yarn.lock +++ b/yarn.lock @@ -6995,6 +6995,7 @@ __metadata: copy-to-clipboard: "npm:^3.3.3" deepmerge-ts: "npm:^7.1.5" eslint: "npm:^9" + eslint-plugin-import: "npm:^2.31.0" eslint-plugin-react-hooks: "npm:^5.2.0" eslint-plugin-react-refresh: "npm:^0.4.20" eslint-plugin-storybook: "npm:^0.12.0"