Skip to content

Commit

Permalink
chore: eslint 관련 설정을 root로 이동
Browse files Browse the repository at this point in the history
  • Loading branch information
Jaymyong66 committed Feb 1, 2025
1 parent 39b6827 commit cf272eb
Show file tree
Hide file tree
Showing 5 changed files with 315 additions and 245 deletions.
143 changes: 143 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
{
"root": true,
"env": {
"browser": true,
"es2020": true,
"node": true
},
"extends": [
"eslint:recommended",
"plugin:prettier/recommended",
"plugin:@typescript-eslint/recommended",
"plugin:react/recommended",
"plugin:react-hooks/recommended",
"plugin:react/jsx-runtime",
"plugin:storybook/recommended",
"plugin:import/recommended",
"plugin:import/errors",
"plugin:import/warnings",
"plugin:import/typescript"
],
"ignorePatterns": [
"dist",
"*.config.ts",
"*.common.js",
"*.prod.js",
"*.dev.js",
"*.polyfills.js"
],
"parser": "@typescript-eslint/parser",
"plugins": ["react-refresh", "react", "import", "@typescript-eslint"],
"settings": {
"import/core-modules": ["@jest/globals"],
"import/resolver": {
"typescript": {
"project": "../tsconfig.base.json",
"alwaysTryTypes": true
},
"node": {
"extensions": [".js", ".jsx", ".ts", ".tsx"]
}
}
},
"rules": {
"prettier/prettier": "error",
"padding-line-between-statements": [
"error",
{ "blankLine": "always", "prev": "*", "next": "return" },
{
"blankLine": "always",
"prev": ["const", "let", "var", "function", "block-like"],
"next": "*"
},
{
"blankLine": "any",
"prev": ["const", "let", "var"],
"next": ["const", "let", "var"]
},
{ "blankLine": "always", "prev": "case", "next": "*" }
],
"prefer-template": "error",
"object-shorthand": ["error", "always"],
"prefer-arrow-callback": "error",
"func-style": ["error", "expression", { "allowArrowFunctions": true }],
"arrow-body-style": ["error", "as-needed"],
"consistent-return": "error",
"curly": ["error", "all"],
"default-case": "error",
"default-case-last": "error",
"no-fallthrough": "error",
"import/newline-after-import": ["error", { "count": 1 }],
"import/order": [
"error",
{
"groups": [
["builtin", "external"],
["internal"],
["parent", "sibling", "index", "type"]
],
"warnOnUnassignedImports": true,
"alphabetize": { "order": "asc" },
"newlines-between": "always",
"distinctGroup": false,
"pathGroups": [
{
"pattern": "@storybook/**",
"group": "external",
"position": "before"
},
{
"pattern": "@/**",
"group": "internal",
"position": "before"
},
{
"pattern": "../",
"group": "parent",
"position": "before"
},
{
"pattern": "./components",
"group": "sibling",
"position": "before"
},
{
"pattern": "./hooks",
"group": "sibling",
"position": "before"
},
{
"pattern": "./*.style",
"group": "sibling",
"position": "after"
}
]
}
],
"import/extensions": [
"error",
"ignorePackages",
{
"js": "never",
"jsx": "never",
"ts": "never",
"tsx": "never"
}
],
"react-refresh/only-export-components": [
"error",
{ "allowConstantExport": false }
],
"react/no-unknown-property": ["error", { "ignore": ["css"] }],
"import/no-default-export": "error"
},
"overrides": [
{
"files": ["*.tsx", "*.d.ts"],
"rules": {
"import/no-default-export": "off",
"import/prefer-default-export": "error"
}
}
]
}
117 changes: 1 addition & 116 deletions frontend/.eslintrc.json
Original file line number Diff line number Diff line change
@@ -1,118 +1,3 @@
{
"root": true,
"env": {
"browser": true,
"es2020": true,
"node": true
},
"extends": [
"eslint:recommended",
"plugin:prettier/recommended",
"plugin:@typescript-eslint/recommended",
"plugin:import/recommended",
"plugin:react/recommended",
"plugin:react-hooks/recommended",
"plugin:react/jsx-runtime",
"plugin:storybook/recommended"
],
"ignorePatterns": ["dist", "*.config.ts", "*.common.js", "*.prod.js", "*.dev.js", "*.polyfills.js"],
"parser": "@typescript-eslint/parser",
"plugins": ["react-refresh", "react", "import"],
"settings": {
"import/core-modules": ["@jest/globals"],
"import/resolver": {
"typescript": {
"project": "../tsconfig.base.json",
"alwaysTryTypes": true
},
"node": {
"extensions": [".js", ".jsx", ".ts", ".tsx"]
}
}
},
"rules": {
"prettier/prettier": "error",
"padding-line-between-statements": [
"error",
{ "blankLine": "always", "prev": "*", "next": "return" },
{ "blankLine": "always", "prev": ["const", "let", "var", "function", "block-like"], "next": "*" },
{ "blankLine": "any", "prev": ["const", "let", "var"], "next": ["const", "let", "var"] },
{ "blankLine": "always", "prev": "case", "next": "*" }
],
"prefer-template": "error",
"object-shorthand": ["error", "always"],
"prefer-arrow-callback": "error",
"func-style": ["error", "expression", { "allowArrowFunctions": true }],
"arrow-body-style": ["error", "as-needed"],
"consistent-return": "error",
"curly": ["error", "all"],
"default-case": "error",
"default-case-last": "error",
"no-fallthrough": "error",
"import/newline-after-import": ["error", { "count": 1 }],
"import/order": [
"error",
{
"groups": [["builtin", "external"], ["internal"], ["parent", "sibling", "index", "type"]],
"warnOnUnassignedImports": true,
"alphabetize": { "order": "asc" },
"newlines-between": "always",
"distinctGroup": false,
"pathGroups": [
{
"pattern": "@storybook/**",
"group": "external",
"position": "before"
},
{
"pattern": "@/**",
"group": "internal",
"position": "before"
},
{
"pattern": "../",
"group": "parent",
"position": "before"
},
{
"pattern": "./components",
"group": "sibling",
"position": "before"
},
{
"pattern": "./hooks",
"group": "sibling",
"position": "before"
},
{
"pattern": "./*.style",
"group": "sibling",
"position": "after"
}
]
}
],
"import/extensions": [
"error",
"ignorePackages",
{
"js": "never",
"jsx": "never",
"ts": "never",
"tsx": "never"
}
],
"react-refresh/only-export-components": ["error", { "allowConstantExport": false }],
"react/no-unknown-property": ["error", { "ignore": ["css"] }],
"import/no-default-export": "error"
},
"overrides": [
{
"files": ["*.tsx", "*.d.ts"],
"rules": {
"import/no-default-export": "off",
"import/prefer-default-export": "error"
}
}
]
"extends": "../.eslintrc.json"
}
12 changes: 0 additions & 12 deletions frontend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,26 +52,14 @@
"@types/dotenv-webpack": "^7.0.7",
"@types/jest": "^29.5.14",
"@types/react-syntax-highlighter": "^15.5.13",
"@typescript-eslint/eslint-plugin": "^7.2.0",
"@typescript-eslint/parser": "^7.2.0",
"dotenv": "^16.4.5",
"dotenv-webpack": "^8.1.0",
"eslint": "^8.57.0",
"eslint-config-prettier": "^9.1.0",
"eslint-import-resolver-typescript": "^3.7.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-react": "^7.34.3",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-refresh": "^0.4.6",
"eslint-plugin-storybook": "^0.8.0",
"html-webpack-plugin": "^5.6.0",
"jest": "^29.7.0",
"jest-environment-jsdom": "^29.7.0",
"jest-fixed-jsdom": "^0.0.9",
"msw": "^2.3.2",
"postcss-styled-syntax": "^0.6.4",
"prettier": "^3.3.3",
"storybook": "^8.2.1",
"stylelint": "^16.7.0",
"stylelint-config-clean-order": "^6.1.0",
Expand Down
12 changes: 12 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,18 @@
"@types/node": "^22.10.2",
"@types/react": "^18.3.3",
"@types/react-dom": "^18.3.0",
"@typescript-eslint/eslint-plugin": "^7.2.0",
"@typescript-eslint/parser": "^7.2.0",
"eslint": "^8.57.0",
"eslint-config-prettier": "^9.1.0",
"eslint-import-resolver-typescript": "^3.7.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-react": "^7.34.3",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-refresh": "^0.4.6",
"eslint-plugin-storybook": "^0.8.0",
"prettier": "^3.3.3",
"ts-loader": "^9.5.1",
"typescript": "^5.5.3",
"webpack": "^5.92.1",
Expand Down
Loading

0 comments on commit cf272eb

Please sign in to comment.