mirror of
https://github.com/nuxt/nuxt.git
synced 2024-11-27 16:12:12 +00:00
146 lines
3.5 KiB
Plaintext
146 lines
3.5 KiB
Plaintext
{
|
|
"ignorePatterns": [
|
|
"dist",
|
|
"node_modules",
|
|
"packages/schema/schema",
|
|
"**/*.tmpl.*",
|
|
"sw.js"
|
|
],
|
|
"$schema": "https://json.schemastore.org/eslintrc",
|
|
"globals": {
|
|
"NodeJS": true,
|
|
"$fetch": true
|
|
},
|
|
"plugins": ["jsdoc", "no-only-tests"],
|
|
"extends": [
|
|
"plugin:jsdoc/recommended",
|
|
"@nuxtjs/eslint-config-typescript",
|
|
"plugin:import/typescript"
|
|
],
|
|
"rules": {
|
|
"sort-imports": [
|
|
"error",
|
|
{
|
|
"ignoreDeclarationSort": true
|
|
}
|
|
],
|
|
"no-only-tests/no-only-tests": "error",
|
|
"unicorn/prefer-node-protocol": "error",
|
|
"no-console": "warn",
|
|
"vue/multi-word-component-names": "off",
|
|
"vue/one-component-per-file": "off",
|
|
"vue/require-default-prop": "off",
|
|
"vue/no-multiple-template-root": "off",
|
|
"vue/no-v-model-argument": "off",
|
|
"jsdoc/require-jsdoc": "off",
|
|
"jsdoc/require-param": "off",
|
|
"jsdoc/require-returns": "off",
|
|
"jsdoc/require-param-type": "off",
|
|
"no-redeclare": "off",
|
|
"import/order": [
|
|
"error",
|
|
{
|
|
"pathGroups": [
|
|
{
|
|
"pattern": "@nuxt/test-utils/experimental",
|
|
"group": "external"
|
|
},
|
|
{
|
|
"pattern": "@nuxt/test-utils",
|
|
"group": "external"
|
|
},
|
|
{
|
|
"pattern": "#vue-router",
|
|
"group": "external"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"import/no-restricted-paths": [
|
|
"error",
|
|
{
|
|
"zones": [
|
|
{
|
|
"from": "packages/nuxt/src/!(core)/**/*",
|
|
"target": "packages/nuxt/src/core",
|
|
"message": "core should not directly import from modules."
|
|
},
|
|
{
|
|
"from": "packages/nuxt/src/!(app)/**/*",
|
|
"target": "packages/nuxt/src/app",
|
|
"message": "app should not directly import from modules."
|
|
},
|
|
{
|
|
"from": "packages/nuxt/src/app/**/index.ts",
|
|
"target": "packages/nuxt/src",
|
|
"message": "should not import from barrel/index files"
|
|
},
|
|
{
|
|
"from": "packages/nitro",
|
|
"target": "packages/!(nitro)/**/*",
|
|
"message": "nitro should not directly import other packages."
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"@typescript-eslint/consistent-type-imports": [
|
|
"error",
|
|
{
|
|
"disallowTypeAnnotations": false
|
|
}
|
|
],
|
|
"@typescript-eslint/ban-ts-comment": [
|
|
"error",
|
|
{
|
|
"ts-expect-error": "allow-with-description",
|
|
"ts-ignore": true
|
|
}
|
|
],
|
|
"@typescript-eslint/prefer-ts-expect-error": "error",
|
|
"@typescript-eslint/no-unused-vars": [
|
|
"error",
|
|
{
|
|
"argsIgnorePattern": "^_",
|
|
"varsIgnorePattern": "^_",
|
|
"ignoreRestSiblings": true
|
|
}
|
|
],
|
|
"jsdoc/check-tag-names": [
|
|
"error",
|
|
{
|
|
"definedTags": ["__NO_SIDE_EFFECTS__"]
|
|
}
|
|
]
|
|
},
|
|
"overrides": [
|
|
{
|
|
"files": ["packages/schema/**"],
|
|
"rules": {
|
|
"jsdoc/no-undefined-types": "off",
|
|
"jsdoc/valid-types": "off",
|
|
"jsdoc/check-tag-names": [
|
|
"error",
|
|
{
|
|
"definedTags": ["experimental"]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"files": ["packages/nuxt/src/app/**", "test/**", "**/runtime/**"],
|
|
"rules": {
|
|
"no-console": "off"
|
|
}
|
|
}
|
|
],
|
|
"settings": {
|
|
"jsdoc": {
|
|
"ignoreInternal": true,
|
|
"tagNamePreference": {
|
|
"warning": "warning",
|
|
"note": "note"
|
|
}
|
|
}
|
|
}
|
|
}
|