diff --git a/.eslintrc.js b/.eslintrc.js index b88e880766..abdccd81c1 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -44,7 +44,7 @@ module.exports = { "plugin:@voicevox/all", "plugin:storybook/recommended", ], - plugins: ["import"], + plugins: ["import", "no-relative-import-paths"], parser: vueEslintParser, parserOptions: vueEslintParserOptions, ignorePatterns: ["dist/**/*", "dist_*/**/*", "node_modules/**/*"], @@ -92,6 +92,14 @@ module.exports = { }, ], "import/order": "error", + "no-relative-import-paths/no-relative-import-paths": [ + "error", + { + allowSameFolder: true, + rootDir: "src", + prefix: "@", + }, + ], }, overrides: [ { diff --git a/package-lock.json b/package-lock.json index 6e17b62596..1f8947e4bf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -81,6 +81,7 @@ "eslint": "8.57.0", "eslint-config-prettier": "9.1.0", "eslint-plugin-import": "2.29.1", + "eslint-plugin-no-relative-import-paths": "1.5.5", "eslint-plugin-prettier": "5.1.3", "eslint-plugin-storybook": "0.8.0", "eslint-plugin-vue": "9.26.0", @@ -7562,6 +7563,13 @@ "semver": "bin/semver.js" } }, + "node_modules/eslint-plugin-no-relative-import-paths": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/eslint-plugin-no-relative-import-paths/-/eslint-plugin-no-relative-import-paths-1.5.5.tgz", + "integrity": "sha512-UjudFFdBbv93v0CsVdEKcMLbBzRIjeK2PubTctX57tgnHxZcMj1Jm8lDBWoETnPxk0S5g5QLSltEM+511yL4+w==", + "dev": true, + "license": "ISC" + }, "node_modules/eslint-plugin-prettier": { "version": "5.1.3", "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.3.tgz", diff --git a/package.json b/package.json index 114b642d4b..72258faaef 100644 --- a/package.json +++ b/package.json @@ -118,6 +118,7 @@ "eslint": "8.57.0", "eslint-config-prettier": "9.1.0", "eslint-plugin-import": "2.29.1", + "eslint-plugin-no-relative-import-paths": "1.5.5", "eslint-plugin-prettier": "5.1.3", "eslint-plugin-storybook": "0.8.0", "eslint-plugin-vue": "9.26.0", diff --git a/src/backend/electron/manager/engineInfoManager.ts b/src/backend/electron/manager/engineInfoManager.ts index e44ce248ef..7564f4e75a 100644 --- a/src/backend/electron/manager/engineInfoManager.ts +++ b/src/backend/electron/manager/engineInfoManager.ts @@ -6,7 +6,7 @@ import { dialog } from "electron"; // FIXME: ここでelectronをimportするの import log from "electron-log/main"; -import { getConfigManager } from "../electronConfig"; +import { getConfigManager } from "@/backend/electron/electronConfig"; import { EngineInfo, EngineDirValidationResult, diff --git a/src/backend/electron/manager/engineProcessManager.ts b/src/backend/electron/manager/engineProcessManager.ts index 2387b68da5..300fb76263 100644 --- a/src/backend/electron/manager/engineProcessManager.ts +++ b/src/backend/electron/manager/engineProcessManager.ts @@ -5,16 +5,16 @@ import treeKill from "tree-kill"; import { app, dialog } from "electron"; // FIXME: ここでelectronをimportするのは良くない import log from "electron-log/main"; +import { getEngineInfoManager } from "./engineInfoManager"; import { findAltPort, getPidFromPort, getProcessNameFromPid, type HostInfo, isAssignablePort, -} from "../portHelper"; +} from "@/backend/electron/portHelper"; -import { getConfigManager } from "../electronConfig"; -import { getEngineInfoManager } from "./engineInfoManager"; +import { getConfigManager } from "@/backend/electron/electronConfig"; import { EngineId, EngineInfo } from "@/type/preload"; type EngineProcessContainer = { diff --git a/src/components/Dialog/EngineManageDialog.vue b/src/components/Dialog/EngineManageDialog.vue index 4805899a1f..ef06a73b2d 100644 --- a/src/components/Dialog/EngineManageDialog.vue +++ b/src/components/Dialog/EngineManageDialog.vue @@ -267,8 +267,8 @@