@jakubmazanec/eslint-config 3.2.0 → 3.3.0-next.ed6d1f6

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.
@@ -148,8 +148,9 @@ const config = {
148
148
  `**/*.tests.${import_constants.JS_AND_TS_EXTENSIONS_GLOB_PART}`,
149
149
  `**/*.stories.${import_constants.JS_AND_TS_EXTENSIONS_GLOB_PART}`,
150
150
  `./.storybook/**/*.${import_constants.JS_AND_TS_EXTENSIONS_GLOB_PART}`,
151
- `tests/**/*.${import_constants.JS_AND_TS_EXTENSIONS_GLOB_PART}`,
151
+ `dbschema/**/*.${import_constants.JS_AND_TS_EXTENSIONS_GLOB_PART}`,
152
152
  `stories/**/*.${import_constants.JS_AND_TS_EXTENSIONS_GLOB_PART}`,
153
+ `tests/**/*.${import_constants.JS_AND_TS_EXTENSIONS_GLOB_PART}`,
153
154
  `tools/**/*.${import_constants.JS_AND_TS_EXTENSIONS_GLOB_PART}`,
154
155
  `./*.${import_constants.JS_AND_TS_EXTENSIONS_GLOB_PART}`
155
156
  ],
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../source/presets/base.ts"],
4
- "sourcesContent": ["import type eslint from 'eslint';\n\nimport {\n ASSET_EXTENSIONS_REGEXP,\n CSS_EXTENSIONS_REGEXP,\n GRAPHQL_EXTENSIONS_REGEXP,\n JS_AND_TS_EXTENSIONS,\n JS_AND_TS_EXTENSIONS_GLOB_PART,\n TS_EXTENSIONS_GLOB_PART,\n} from '../constants';\nimport a11yRules from '../rules/a11y';\nimport eslintRules from '../rules/eslint';\nimport commentsRules from '../rules/eslint-comments';\nimport importRules from '../rules/import';\nimport promiseRules from '../rules/promise';\nimport reactRules from '../rules/react';\nimport reactHooksRules from '../rules/react-hooks';\nimport simpleImportSortRules from '../rules/simple-import-sort';\nimport stylisticRules from '../rules/stylistic';\nimport testingLibraryRules from '../rules/testing-library';\nimport typescriptRules from '../rules/typescript';\nimport unicornRules from '../rules/unicorn';\nimport vitestRules from '../rules/vitest';\n\nconst config: eslint.Linter.Config = {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n ecmaFeatures: {\n jsx: true,\n },\n },\n plugins: [\n '@stylistic',\n 'eslint-comments',\n 'import',\n 'jsx-a11y',\n 'promise',\n 'react',\n 'react-hooks',\n 'simple-import-sort',\n 'unicorn',\n ],\n env: {\n browser: true,\n es2023: true,\n serviceworker: true,\n 'shared-node-browser': true,\n worker: true,\n },\n settings: {\n 'import/ignore': [\n 'node_modules',\n '\\\\.json$',\n ASSET_EXTENSIONS_REGEXP.source,\n CSS_EXTENSIONS_REGEXP.source,\n GRAPHQL_EXTENSIONS_REGEXP.source,\n ],\n react: {\n version: 'detect',\n },\n propWrapperFunctions: ['forbidExtraProps', 'exact', 'Object.freeze'],\n 'jsx-a11y': {\n polymorphicPropName: 'as',\n components: {\n Button: 'button',\n },\n },\n },\n\n rules: {\n ...eslintRules,\n ...stylisticRules,\n ...commentsRules,\n ...promiseRules,\n ...importRules,\n ...simpleImportSortRules,\n ...reactRules,\n ...reactHooksRules,\n ...a11yRules,\n ...unicornRules,\n },\n overrides: [\n {\n files: [`*.test.${JS_AND_TS_EXTENSIONS_GLOB_PART}`],\n plugins: ['vitest', 'testing-library'],\n settings: {\n 'testing-library/custom-queries': 'off',\n 'testing-library/custom-renders': 'off',\n 'testing-library/utils-module': 'off',\n },\n globals: {\n jsdom: 'readonly',\n },\n env: {\n node: true,\n },\n rules: {\n ...vitestRules,\n ...testingLibraryRules,\n\n // override ESLint rules\n 'max-classes-per-file': 'off', // enforce a maximum number of classes per file\n\n // override eslint-plugin-node rules\n 'node/no-sync': 'off', // disallow synchronous methods\n },\n },\n {\n files: [`*.${TS_EXTENSIONS_GLOB_PART}`],\n plugins: ['@typescript-eslint'],\n parser: '@typescript-eslint/parser',\n parserOptions: {\n project: 'tsconfig.typecheck.json',\n // EXPERIMENTAL_useProjectService: true, // TODO: when this is set to `true`, ESLint doesn't use correct `tsconfig.typecheck.json` for files that are directly in the projects folder (e.g. `vite.config.ts` complains that `strictNullcheck` is needed for some rules)\n },\n settings: {\n node: {\n tryExtensions: JS_AND_TS_EXTENSIONS,\n },\n 'import/resolver': {\n typescript: {},\n },\n 'import/parsers': {\n '@typescript-eslint/parser': ['.ts', '.tsx', '.mts', '.cts'],\n },\n },\n rules: {\n ...typescriptRules,\n\n // override eslint-plugin-import rules\n 'import/no-extraneous-dependencies': [\n 'error',\n {\n devDependencies: [\n `**/*.test.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `**/*.tests.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `**/*.stories.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `./.storybook/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `tests/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `stories/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `tools/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `./*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n ],\n optionalDependencies: false,\n },\n ],\n },\n },\n {\n files: [`*.test.${TS_EXTENSIONS_GLOB_PART}`],\n rules: {\n // override @typescript-eslint/eslint-plugin rules\n '@typescript-eslint/ban-ts-comment': 'off', // bans // @ts-<directive> comments from being used\n '@typescript-eslint/no-floating-promises': 'off', // requires Promise-like values to be handled appropriately\n },\n },\n ],\n};\n\nexport = config;\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import type eslint from 'eslint';\n\nimport {\n ASSET_EXTENSIONS_REGEXP,\n CSS_EXTENSIONS_REGEXP,\n GRAPHQL_EXTENSIONS_REGEXP,\n JS_AND_TS_EXTENSIONS,\n JS_AND_TS_EXTENSIONS_GLOB_PART,\n TS_EXTENSIONS_GLOB_PART,\n} from '../constants';\nimport a11yRules from '../rules/a11y';\nimport eslintRules from '../rules/eslint';\nimport commentsRules from '../rules/eslint-comments';\nimport importRules from '../rules/import';\nimport promiseRules from '../rules/promise';\nimport reactRules from '../rules/react';\nimport reactHooksRules from '../rules/react-hooks';\nimport simpleImportSortRules from '../rules/simple-import-sort';\nimport stylisticRules from '../rules/stylistic';\nimport testingLibraryRules from '../rules/testing-library';\nimport typescriptRules from '../rules/typescript';\nimport unicornRules from '../rules/unicorn';\nimport vitestRules from '../rules/vitest';\n\nconst config: eslint.Linter.Config = {\n parserOptions: {\n ecmaVersion: 'latest',\n sourceType: 'module',\n ecmaFeatures: {\n jsx: true,\n },\n },\n plugins: [\n '@stylistic',\n 'eslint-comments',\n 'import',\n 'jsx-a11y',\n 'promise',\n 'react',\n 'react-hooks',\n 'simple-import-sort',\n 'unicorn',\n ],\n env: {\n browser: true,\n es2023: true,\n serviceworker: true,\n 'shared-node-browser': true,\n worker: true,\n },\n settings: {\n 'import/ignore': [\n 'node_modules',\n '\\\\.json$',\n ASSET_EXTENSIONS_REGEXP.source,\n CSS_EXTENSIONS_REGEXP.source,\n GRAPHQL_EXTENSIONS_REGEXP.source,\n ],\n react: {\n version: 'detect',\n },\n propWrapperFunctions: ['forbidExtraProps', 'exact', 'Object.freeze'],\n 'jsx-a11y': {\n polymorphicPropName: 'as',\n components: {\n Button: 'button',\n },\n },\n },\n\n rules: {\n ...eslintRules,\n ...stylisticRules,\n ...commentsRules,\n ...promiseRules,\n ...importRules,\n ...simpleImportSortRules,\n ...reactRules,\n ...reactHooksRules,\n ...a11yRules,\n ...unicornRules,\n },\n overrides: [\n {\n files: [`*.test.${JS_AND_TS_EXTENSIONS_GLOB_PART}`],\n plugins: ['vitest', 'testing-library'],\n settings: {\n 'testing-library/custom-queries': 'off',\n 'testing-library/custom-renders': 'off',\n 'testing-library/utils-module': 'off',\n },\n globals: {\n jsdom: 'readonly',\n },\n env: {\n node: true,\n },\n rules: {\n ...vitestRules,\n ...testingLibraryRules,\n\n // override ESLint rules\n 'max-classes-per-file': 'off', // enforce a maximum number of classes per file\n\n // override eslint-plugin-node rules\n 'node/no-sync': 'off', // disallow synchronous methods\n },\n },\n {\n files: [`*.${TS_EXTENSIONS_GLOB_PART}`],\n plugins: ['@typescript-eslint'],\n parser: '@typescript-eslint/parser',\n parserOptions: {\n project: 'tsconfig.typecheck.json',\n // EXPERIMENTAL_useProjectService: true, // TODO: when this is set to `true`, ESLint doesn't use correct `tsconfig.typecheck.json` for files that are directly in the projects folder (e.g. `vite.config.ts` complains that `strictNullcheck` is needed for some rules)\n },\n settings: {\n node: {\n tryExtensions: JS_AND_TS_EXTENSIONS,\n },\n 'import/resolver': {\n typescript: {},\n },\n 'import/parsers': {\n '@typescript-eslint/parser': ['.ts', '.tsx', '.mts', '.cts'],\n },\n },\n rules: {\n ...typescriptRules,\n\n // override eslint-plugin-import rules\n 'import/no-extraneous-dependencies': [\n 'error',\n {\n devDependencies: [\n `**/*.test.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `**/*.tests.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `**/*.stories.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `./.storybook/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `dbschema/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `stories/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `tests/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `tools/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n `./*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,\n ],\n optionalDependencies: false,\n },\n ],\n },\n },\n {\n files: [`*.test.${TS_EXTENSIONS_GLOB_PART}`],\n rules: {\n // override @typescript-eslint/eslint-plugin rules\n '@typescript-eslint/ban-ts-comment': 'off', // bans // @ts-<directive> comments from being used\n '@typescript-eslint/no-floating-promises': 'off', // requires Promise-like values to be handled appropriately\n },\n },\n ],\n};\n\nexport = config;\n"],
5
+ "mappings": "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",
6
6
  "names": ["eslintRules", "stylisticRules", "commentsRules", "promiseRules", "importRules", "simpleImportSortRules", "reactRules", "reactHooksRules", "a11yRules", "unicornRules", "vitestRules", "testingLibraryRules", "typescriptRules"]
7
7
  }
@@ -84,8 +84,9 @@ const config = {
84
84
  `**/*.story.${import_constants.JS_EXTENSIONS_GLOB_PART}`,
85
85
  `**/*.stories.${import_constants.JS_EXTENSIONS_GLOB_PART}`,
86
86
  `./.storybook/**/*.${import_constants.JS_EXTENSIONS_GLOB_PART}`,
87
- `tests/**/*.${import_constants.JS_EXTENSIONS_GLOB_PART}`,
87
+ `dbschema/**/*.${import_constants.JS_EXTENSIONS_GLOB_PART}`,
88
88
  `stories/**/*.${import_constants.JS_EXTENSIONS_GLOB_PART}`,
89
+ `tests/**/*.${import_constants.JS_EXTENSIONS_GLOB_PART}`,
89
90
  `tools/**/*.${import_constants.JS_EXTENSIONS_GLOB_PART}`,
90
91
  `./*.${import_constants.JS_EXTENSIONS_GLOB_PART}`
91
92
  ],
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../source/rules/import.ts"],
4
- "sourcesContent": ["import type eslint from 'eslint';\n\nimport {JS_EXTENSIONS_GLOB_PART} from '../constants';\n\nconst config: eslint.Linter.Config['rules'] = {\n // override ESLint rules\n 'no-duplicate-imports': 'off', // disallow duplicate module imports\n 'sort-imports': 'off', // enforce sorted import declarations within modules\n\n // eslint-plugin-import rules\n 'import/consistent-type-specifier-style': ['error', 'prefer-inline'], // enforce or ban the use of inline type-only markers for named imports\n 'import/default': 'off', // ensure a default export is present, given a default import\n 'import/dynamic-import-chunkname': 'off', // enforce a leading comment with the webpackChunkName for dynamic imports\n 'import/no-empty-named-blocks': 'error', // forbid empty named import blocks\n 'import/export': 'error', // report any invalid exports, i.e. re-export of the same name\n 'import/exports-last': 'off', // ensure all exports appear after other statements\n 'import/extensions': 'off', // ensure consistent use of file extension within the import path\n 'import/first': 'error', // ensure all imports appear before other statements\n 'import/group-exports': 'off', // prefer named exports to be grouped together in a single export declaration\n 'import/max-dependencies': 'off', // limit the maximum number of dependencies a module can have\n 'import/no-internal-modules': 'off', // prevent importing the submodules of other modules\n 'import/named': 'error', // ensure named imports correspond to a named export in the remote file\n 'import/namespace': 'off', // ensure imported namespaces contain dereferenced properties as they are dereferenced\n 'import/newline-after-import': 'error', // enforce a newline after import statements\n 'import/no-absolute-path': 'error', // forbid import of modules using absolute paths\n 'import/no-amd': 'error', // report AMD require and define calls\n 'import/no-anonymous-default-export': 'off', // forbid anonymous values as default exports\n 'import/no-commonjs': 'off', // report CommonJS require calls and module.exports or exports.*\n 'import/no-cycle': 'error', // forbid a module from importing a module with a dependency path back to itself\n 'import/no-default-export': 'off', // forbid default exports\n 'import/no-deprecated': 'warn', // report imported names marked with @deprecated documentation tag\n 'import/no-duplicates': 'error', // report repeated import of the same module in multiple places\n 'import/no-dynamic-require': 'error', // forbid require() calls with expressions\n 'import/no-extraneous-dependencies': [\n 'error',\n {\n devDependencies: [\n `**/*.test.${JS_EXTENSIONS_GLOB_PART}`,\n `**/*.tests.${JS_EXTENSIONS_GLOB_PART}`,\n `**/*.story.${JS_EXTENSIONS_GLOB_PART}`,\n `**/*.stories.${JS_EXTENSIONS_GLOB_PART}`,\n `./.storybook/**/*.${JS_EXTENSIONS_GLOB_PART}`,\n `tests/**/*.${JS_EXTENSIONS_GLOB_PART}`,\n `stories/**/*.${JS_EXTENSIONS_GLOB_PART}`,\n `tools/**/*.${JS_EXTENSIONS_GLOB_PART}`,\n `./*.${JS_EXTENSIONS_GLOB_PART}`,\n ],\n optionalDependencies: false,\n },\n ], // forbid the use of extraneous packages\n 'import/no-import-module-exports': 'off', // forbid imports with CommonJS exports\n 'import/no-mutable-exports': 'error', // forbid the use of mutable exports with var or let\n 'import/no-named-as-default': 'off', // report use of exported name as identifier of default export\n 'import/no-named-as-default-member': 'error', // report use of exported name as property of default export\n 'import/no-named-default': 'error', // forbid named default exports\n 'import/no-named-export': 'off', // forbid named exports\n 'import/no-namespace': 'off', // forbid namespace (a.k.a. \"wildcard\" *) imports\n 'import/no-nodejs-modules': 'off', // no Node.js builtin modules\n 'import/no-relative-packages': 'off', // prevent importing packages through relative paths\n 'import/no-relative-parent-imports': 'off', // forbid importing modules from parent directories\n 'import/no-restricted-paths': 'off', // restrict which files can be imported in a given folder\n 'import/no-self-import': 'error', // forbid a module from importing itself\n 'import/no-unassigned-import': 'off', // forbid unassigned imports\n 'import/no-unresolved': ['error', {commonjs: true, caseSensitive: true}], // ensure imports point to a file/module that can be resolved\n 'import/no-unused-modules': 'off', // report modules without exports, or exports without matching import in another module\n 'import/no-useless-path-segments': ['error', {noUselessIndex: true}], // prevent unnecessary path segments in import and require statements\n 'import/no-webpack-loader-syntax': 'error', // forbid webpack loader syntax in imports\n 'import/unambiguous': 'off', // report potentially ambiguous parse goal (script vs. module)\n 'import/order': [\n 'error',\n {\n groups: [['builtin', 'external']],\n 'newlines-between': 'always',\n alphabetize: {order: 'asc', caseInsensitive: true},\n },\n ], // enforce a convention in module import order\n 'import/prefer-default-export': 'off', // prefer a default export if module exports a single name\n};\n\nexport default config;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,uBAAsC;AAEtC,MAAM,SAAwC;AAAA;AAAA,EAE5C,wBAAwB;AAAA;AAAA,EACxB,gBAAgB;AAAA;AAAA;AAAA,EAGhB,0CAA0C,CAAC,SAAS,eAAe;AAAA;AAAA,EACnE,kBAAkB;AAAA;AAAA,EAClB,mCAAmC;AAAA;AAAA,EACnC,gCAAgC;AAAA;AAAA,EAChC,iBAAiB;AAAA;AAAA,EACjB,uBAAuB;AAAA;AAAA,EACvB,qBAAqB;AAAA;AAAA,EACrB,gBAAgB;AAAA;AAAA,EAChB,wBAAwB;AAAA;AAAA,EACxB,2BAA2B;AAAA;AAAA,EAC3B,8BAA8B;AAAA;AAAA,EAC9B,gBAAgB;AAAA;AAAA,EAChB,oBAAoB;AAAA;AAAA,EACpB,+BAA+B;AAAA;AAAA,EAC/B,2BAA2B;AAAA;AAAA,EAC3B,iBAAiB;AAAA;AAAA,EACjB,sCAAsC;AAAA;AAAA,EACtC,sBAAsB;AAAA;AAAA,EACtB,mBAAmB;AAAA;AAAA,EACnB,4BAA4B;AAAA;AAAA,EAC5B,wBAAwB;AAAA;AAAA,EACxB,wBAAwB;AAAA;AAAA,EACxB,6BAA6B;AAAA;AAAA,EAC7B,qCAAqC;AAAA,IACnC;AAAA,IACA;AAAA,MACE,iBAAiB;AAAA,QACf,aAAa,wCAAuB;AAAA,QACpC,cAAc,wCAAuB;AAAA,QACrC,cAAc,wCAAuB;AAAA,QACrC,gBAAgB,wCAAuB;AAAA,QACvC,qBAAqB,wCAAuB;AAAA,QAC5C,cAAc,wCAAuB;AAAA,QACrC,gBAAgB,wCAAuB;AAAA,QACvC,cAAc,wCAAuB;AAAA,QACrC,OAAO,wCAAuB;AAAA,MAChC;AAAA,MACA,sBAAsB;AAAA,IACxB;AAAA,EACF;AAAA;AAAA,EACA,mCAAmC;AAAA;AAAA,EACnC,6BAA6B;AAAA;AAAA,EAC7B,8BAA8B;AAAA;AAAA,EAC9B,qCAAqC;AAAA;AAAA,EACrC,2BAA2B;AAAA;AAAA,EAC3B,0BAA0B;AAAA;AAAA,EAC1B,uBAAuB;AAAA;AAAA,EACvB,4BAA4B;AAAA;AAAA,EAC5B,+BAA+B;AAAA;AAAA,EAC/B,qCAAqC;AAAA;AAAA,EACrC,8BAA8B;AAAA;AAAA,EAC9B,yBAAyB;AAAA;AAAA,EACzB,+BAA+B;AAAA;AAAA,EAC/B,wBAAwB,CAAC,SAAS,EAAC,UAAU,MAAM,eAAe,KAAI,CAAC;AAAA;AAAA,EACvE,4BAA4B;AAAA;AAAA,EAC5B,mCAAmC,CAAC,SAAS,EAAC,gBAAgB,KAAI,CAAC;AAAA;AAAA,EACnE,mCAAmC;AAAA;AAAA,EACnC,sBAAsB;AAAA;AAAA,EACtB,gBAAgB;AAAA,IACd;AAAA,IACA;AAAA,MACE,QAAQ,CAAC,CAAC,WAAW,UAAU,CAAC;AAAA,MAChC,oBAAoB;AAAA,MACpB,aAAa,EAAC,OAAO,OAAO,iBAAiB,KAAI;AAAA,IACnD;AAAA,EACF;AAAA;AAAA,EACA,gCAAgC;AAAA;AAClC;AAEA,IAAO,iBAAQ;",
4
+ "sourcesContent": ["import type eslint from 'eslint';\n\nimport {JS_EXTENSIONS_GLOB_PART} from '../constants';\n\nconst config: eslint.Linter.Config['rules'] = {\n // override ESLint rules\n 'no-duplicate-imports': 'off', // disallow duplicate module imports\n 'sort-imports': 'off', // enforce sorted import declarations within modules\n\n // eslint-plugin-import rules\n 'import/consistent-type-specifier-style': ['error', 'prefer-inline'], // enforce or ban the use of inline type-only markers for named imports\n 'import/default': 'off', // ensure a default export is present, given a default import\n 'import/dynamic-import-chunkname': 'off', // enforce a leading comment with the webpackChunkName for dynamic imports\n 'import/no-empty-named-blocks': 'error', // forbid empty named import blocks\n 'import/export': 'error', // report any invalid exports, i.e. re-export of the same name\n 'import/exports-last': 'off', // ensure all exports appear after other statements\n 'import/extensions': 'off', // ensure consistent use of file extension within the import path\n 'import/first': 'error', // ensure all imports appear before other statements\n 'import/group-exports': 'off', // prefer named exports to be grouped together in a single export declaration\n 'import/max-dependencies': 'off', // limit the maximum number of dependencies a module can have\n 'import/no-internal-modules': 'off', // prevent importing the submodules of other modules\n 'import/named': 'error', // ensure named imports correspond to a named export in the remote file\n 'import/namespace': 'off', // ensure imported namespaces contain dereferenced properties as they are dereferenced\n 'import/newline-after-import': 'error', // enforce a newline after import statements\n 'import/no-absolute-path': 'error', // forbid import of modules using absolute paths\n 'import/no-amd': 'error', // report AMD require and define calls\n 'import/no-anonymous-default-export': 'off', // forbid anonymous values as default exports\n 'import/no-commonjs': 'off', // report CommonJS require calls and module.exports or exports.*\n 'import/no-cycle': 'error', // forbid a module from importing a module with a dependency path back to itself\n 'import/no-default-export': 'off', // forbid default exports\n 'import/no-deprecated': 'warn', // report imported names marked with @deprecated documentation tag\n 'import/no-duplicates': 'error', // report repeated import of the same module in multiple places\n 'import/no-dynamic-require': 'error', // forbid require() calls with expressions\n 'import/no-extraneous-dependencies': [\n 'error',\n {\n devDependencies: [\n `**/*.test.${JS_EXTENSIONS_GLOB_PART}`,\n `**/*.tests.${JS_EXTENSIONS_GLOB_PART}`,\n `**/*.story.${JS_EXTENSIONS_GLOB_PART}`,\n `**/*.stories.${JS_EXTENSIONS_GLOB_PART}`,\n `./.storybook/**/*.${JS_EXTENSIONS_GLOB_PART}`,\n `dbschema/**/*.${JS_EXTENSIONS_GLOB_PART}`,\n `stories/**/*.${JS_EXTENSIONS_GLOB_PART}`,\n `tests/**/*.${JS_EXTENSIONS_GLOB_PART}`,\n `tools/**/*.${JS_EXTENSIONS_GLOB_PART}`,\n `./*.${JS_EXTENSIONS_GLOB_PART}`,\n ],\n optionalDependencies: false,\n },\n ], // forbid the use of extraneous packages\n 'import/no-import-module-exports': 'off', // forbid imports with CommonJS exports\n 'import/no-mutable-exports': 'error', // forbid the use of mutable exports with var or let\n 'import/no-named-as-default': 'off', // report use of exported name as identifier of default export\n 'import/no-named-as-default-member': 'error', // report use of exported name as property of default export\n 'import/no-named-default': 'error', // forbid named default exports\n 'import/no-named-export': 'off', // forbid named exports\n 'import/no-namespace': 'off', // forbid namespace (a.k.a. \"wildcard\" *) imports\n 'import/no-nodejs-modules': 'off', // no Node.js builtin modules\n 'import/no-relative-packages': 'off', // prevent importing packages through relative paths\n 'import/no-relative-parent-imports': 'off', // forbid importing modules from parent directories\n 'import/no-restricted-paths': 'off', // restrict which files can be imported in a given folder\n 'import/no-self-import': 'error', // forbid a module from importing itself\n 'import/no-unassigned-import': 'off', // forbid unassigned imports\n 'import/no-unresolved': ['error', {commonjs: true, caseSensitive: true}], // ensure imports point to a file/module that can be resolved\n 'import/no-unused-modules': 'off', // report modules without exports, or exports without matching import in another module\n 'import/no-useless-path-segments': ['error', {noUselessIndex: true}], // prevent unnecessary path segments in import and require statements\n 'import/no-webpack-loader-syntax': 'error', // forbid webpack loader syntax in imports\n 'import/unambiguous': 'off', // report potentially ambiguous parse goal (script vs. module)\n 'import/order': [\n 'error',\n {\n groups: [['builtin', 'external']],\n 'newlines-between': 'always',\n alphabetize: {order: 'asc', caseInsensitive: true},\n },\n ], // enforce a convention in module import order\n 'import/prefer-default-export': 'off', // prefer a default export if module exports a single name\n};\n\nexport default config;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,uBAAsC;AAEtC,MAAM,SAAwC;AAAA;AAAA,EAE5C,wBAAwB;AAAA;AAAA,EACxB,gBAAgB;AAAA;AAAA;AAAA,EAGhB,0CAA0C,CAAC,SAAS,eAAe;AAAA;AAAA,EACnE,kBAAkB;AAAA;AAAA,EAClB,mCAAmC;AAAA;AAAA,EACnC,gCAAgC;AAAA;AAAA,EAChC,iBAAiB;AAAA;AAAA,EACjB,uBAAuB;AAAA;AAAA,EACvB,qBAAqB;AAAA;AAAA,EACrB,gBAAgB;AAAA;AAAA,EAChB,wBAAwB;AAAA;AAAA,EACxB,2BAA2B;AAAA;AAAA,EAC3B,8BAA8B;AAAA;AAAA,EAC9B,gBAAgB;AAAA;AAAA,EAChB,oBAAoB;AAAA;AAAA,EACpB,+BAA+B;AAAA;AAAA,EAC/B,2BAA2B;AAAA;AAAA,EAC3B,iBAAiB;AAAA;AAAA,EACjB,sCAAsC;AAAA;AAAA,EACtC,sBAAsB;AAAA;AAAA,EACtB,mBAAmB;AAAA;AAAA,EACnB,4BAA4B;AAAA;AAAA,EAC5B,wBAAwB;AAAA;AAAA,EACxB,wBAAwB;AAAA;AAAA,EACxB,6BAA6B;AAAA;AAAA,EAC7B,qCAAqC;AAAA,IACnC;AAAA,IACA;AAAA,MACE,iBAAiB;AAAA,QACf,aAAa,wCAAuB;AAAA,QACpC,cAAc,wCAAuB;AAAA,QACrC,cAAc,wCAAuB;AAAA,QACrC,gBAAgB,wCAAuB;AAAA,QACvC,qBAAqB,wCAAuB;AAAA,QAC5C,iBAAiB,wCAAuB;AAAA,QACxC,gBAAgB,wCAAuB;AAAA,QACvC,cAAc,wCAAuB;AAAA,QACrC,cAAc,wCAAuB;AAAA,QACrC,OAAO,wCAAuB;AAAA,MAChC;AAAA,MACA,sBAAsB;AAAA,IACxB;AAAA,EACF;AAAA;AAAA,EACA,mCAAmC;AAAA;AAAA,EACnC,6BAA6B;AAAA;AAAA,EAC7B,8BAA8B;AAAA;AAAA,EAC9B,qCAAqC;AAAA;AAAA,EACrC,2BAA2B;AAAA;AAAA,EAC3B,0BAA0B;AAAA;AAAA,EAC1B,uBAAuB;AAAA;AAAA,EACvB,4BAA4B;AAAA;AAAA,EAC5B,+BAA+B;AAAA;AAAA,EAC/B,qCAAqC;AAAA;AAAA,EACrC,8BAA8B;AAAA;AAAA,EAC9B,yBAAyB;AAAA;AAAA,EACzB,+BAA+B;AAAA;AAAA,EAC/B,wBAAwB,CAAC,SAAS,EAAC,UAAU,MAAM,eAAe,KAAI,CAAC;AAAA;AAAA,EACvE,4BAA4B;AAAA;AAAA,EAC5B,mCAAmC,CAAC,SAAS,EAAC,gBAAgB,KAAI,CAAC;AAAA;AAAA,EACnE,mCAAmC;AAAA;AAAA,EACnC,sBAAsB;AAAA;AAAA,EACtB,gBAAgB;AAAA,IACd;AAAA,IACA;AAAA,MACE,QAAQ,CAAC,CAAC,WAAW,UAAU,CAAC;AAAA,MAChC,oBAAoB;AAAA,MACpB,aAAa,EAAC,OAAO,OAAO,iBAAiB,KAAI;AAAA,IACnD;AAAA,EACF;AAAA;AAAA,EACA,gCAAgC;AAAA;AAClC;AAEA,IAAO,iBAAQ;",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jakubmazanec/eslint-config",
3
- "version": "3.2.0",
3
+ "version": "3.3.0-next.ed6d1f6",
4
4
  "description": "ESLint config for TypeScript projects.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -137,8 +137,9 @@ const config: eslint.Linter.Config = {
137
137
  `**/*.tests.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,
138
138
  `**/*.stories.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,
139
139
  `./.storybook/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,
140
- `tests/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,
140
+ `dbschema/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,
141
141
  `stories/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,
142
+ `tests/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,
142
143
  `tools/**/*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,
143
144
  `./*.${JS_AND_TS_EXTENSIONS_GLOB_PART}`,
144
145
  ],
@@ -40,8 +40,9 @@ const config: eslint.Linter.Config['rules'] = {
40
40
  `**/*.story.${JS_EXTENSIONS_GLOB_PART}`,
41
41
  `**/*.stories.${JS_EXTENSIONS_GLOB_PART}`,
42
42
  `./.storybook/**/*.${JS_EXTENSIONS_GLOB_PART}`,
43
- `tests/**/*.${JS_EXTENSIONS_GLOB_PART}`,
43
+ `dbschema/**/*.${JS_EXTENSIONS_GLOB_PART}`,
44
44
  `stories/**/*.${JS_EXTENSIONS_GLOB_PART}`,
45
+ `tests/**/*.${JS_EXTENSIONS_GLOB_PART}`,
45
46
  `tools/**/*.${JS_EXTENSIONS_GLOB_PART}`,
46
47
  `./*.${JS_EXTENSIONS_GLOB_PART}`,
47
48
  ],