@dvukovic/style-guide 0.11.0 → 0.13.0

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.
Files changed (119) hide show
  1. package/README.md +8 -5
  2. package/dist/scripts/changelog-report.types.d.ts +28 -0
  3. package/dist/{eslint → src/eslint}/configs/aws.d.ts +2 -2
  4. package/dist/{eslint → src/eslint}/configs/core.d.ts +2 -2
  5. package/dist/{eslint → src/eslint}/configs/jest.d.ts +2 -2
  6. package/dist/{eslint → src/eslint}/configs/mobx.d.ts +2 -2
  7. package/dist/{eslint → src/eslint}/configs/next.d.ts +2 -2
  8. package/dist/{eslint → src/eslint}/configs/node.d.ts +2 -2
  9. package/dist/{eslint → src/eslint}/configs/package-json.d.ts +7 -3
  10. package/dist/{eslint → src/eslint}/configs/playwright.d.ts +2 -2
  11. package/dist/{eslint → src/eslint}/configs/react.d.ts +2 -2
  12. package/dist/{eslint → src/eslint}/configs/storybook.d.ts +2 -2
  13. package/dist/{eslint → src/eslint}/configs/typescript-strict.d.ts +2 -2
  14. package/dist/src/eslint/configs/typescript.d.ts +13 -0
  15. package/dist/{eslint → src/eslint}/configs/vitest.d.ts +2 -2
  16. package/dist/src/eslint/index.d.ts +24 -0
  17. package/dist/src/stylelint/configs/core.test.d.ts +1 -0
  18. package/package.json +24 -22
  19. package/src/cli/generators/eslint.js +10 -10
  20. package/src/cspell/base.txt +1 -0
  21. package/src/eslint/configs/aws.js +4 -4
  22. package/src/eslint/configs/core.js +4 -4
  23. package/src/eslint/configs/jest.js +4 -4
  24. package/src/eslint/configs/mobx.js +3 -3
  25. package/src/eslint/configs/next.js +3 -3
  26. package/src/eslint/configs/node.js +4 -4
  27. package/src/eslint/configs/package-json.js +9 -6
  28. package/src/eslint/configs/playwright.js +4 -4
  29. package/src/eslint/configs/react.js +3 -3
  30. package/src/eslint/configs/storybook.js +4 -4
  31. package/src/eslint/configs/typescript-strict.js +3 -3
  32. package/src/eslint/configs/typescript.js +5 -4
  33. package/src/eslint/configs/vitest.js +4 -4
  34. package/src/eslint/index.js +33 -34
  35. package/src/eslint/plugins/jest.js +5 -0
  36. package/src/eslint/plugins/playwright.js +1 -0
  37. package/src/eslint/plugins/vitest.js +1 -0
  38. package/dist/eslint/configs/typescript.d.ts +0 -24
  39. package/dist/eslint/index.d.ts +0 -21
  40. /package/dist/{eslint/configs/aws.test.d.ts → scripts/changelog-report.d.ts} +0 -0
  41. /package/dist/{cli → src/cli}/generators/cspell.d.ts +0 -0
  42. /package/dist/{cli → src/cli}/generators/eslint.d.ts +0 -0
  43. /package/dist/{cli → src/cli}/generators/knip.d.ts +0 -0
  44. /package/dist/{cli → src/cli}/generators/prettier.d.ts +0 -0
  45. /package/dist/{cli → src/cli}/generators/scripts.d.ts +0 -0
  46. /package/dist/{cli → src/cli}/generators/stylelint.d.ts +0 -0
  47. /package/dist/{cli → src/cli}/index.d.ts +0 -0
  48. /package/dist/{cli → src/cli}/init.d.ts +0 -0
  49. /package/dist/{cli → src/cli}/prompts.d.ts +0 -0
  50. /package/dist/{cspell → src/cspell}/configs/core.d.ts +0 -0
  51. /package/dist/{cspell → src/cspell}/index.d.ts +0 -0
  52. /package/dist/{eslint/configs/core.test.d.ts → src/eslint/configs/aws.test.d.ts} +0 -0
  53. /package/dist/{prettier → src/eslint}/configs/core.test.d.ts +0 -0
  54. /package/dist/{eslint → src/eslint}/configs/jest.test.d.ts +0 -0
  55. /package/dist/{eslint → src/eslint}/configs/mobx.test.d.ts +0 -0
  56. /package/dist/{eslint → src/eslint}/configs/next.test.d.ts +0 -0
  57. /package/dist/{eslint → src/eslint}/configs/node.test.d.ts +0 -0
  58. /package/dist/{eslint → src/eslint}/configs/package-json.test.d.ts +0 -0
  59. /package/dist/{eslint → src/eslint}/configs/playwright.test.d.ts +0 -0
  60. /package/dist/{eslint → src/eslint}/configs/react.test.d.ts +0 -0
  61. /package/dist/{eslint → src/eslint}/configs/storybook.test.d.ts +0 -0
  62. /package/dist/{eslint → src/eslint}/configs/typescript-strict.test.d.ts +0 -0
  63. /package/dist/{eslint → src/eslint}/configs/typescript.test.d.ts +0 -0
  64. /package/dist/{eslint → src/eslint}/configs/vitest.test.d.ts +0 -0
  65. /package/dist/{eslint → src/eslint}/plugins/baseline.d.ts +0 -0
  66. /package/dist/{eslint → src/eslint}/plugins/dvukovic.d.ts +0 -0
  67. /package/dist/{eslint → src/eslint}/plugins/eslint-comments.d.ts +0 -0
  68. /package/dist/{eslint → src/eslint}/plugins/eslint.d.ts +0 -0
  69. /package/dist/{eslint → src/eslint}/plugins/eslint.test.d.ts +0 -0
  70. /package/dist/{eslint → src/eslint}/plugins/import-x.d.ts +0 -0
  71. /package/dist/{eslint → src/eslint}/plugins/jest.d.ts +0 -0
  72. /package/dist/{eslint → src/eslint}/plugins/mobx.d.ts +0 -0
  73. /package/dist/{eslint → src/eslint}/plugins/n.d.ts +0 -0
  74. /package/dist/{eslint → src/eslint}/plugins/next.d.ts +0 -0
  75. /package/dist/{eslint → src/eslint}/plugins/package-json.d.ts +0 -0
  76. /package/dist/{eslint → src/eslint}/plugins/playwright.d.ts +0 -0
  77. /package/dist/{eslint → src/eslint}/plugins/promise.d.ts +0 -0
  78. /package/dist/{eslint → src/eslint}/plugins/react-hooks.d.ts +0 -0
  79. /package/dist/{eslint → src/eslint}/plugins/react.d.ts +0 -0
  80. /package/dist/{eslint → src/eslint}/plugins/rimac.d.ts +0 -0
  81. /package/dist/{eslint → src/eslint}/plugins/security-node.d.ts +0 -0
  82. /package/dist/{eslint → src/eslint}/plugins/simple-import-sort.d.ts +0 -0
  83. /package/dist/{eslint → src/eslint}/plugins/sonarjs-aws.d.ts +0 -0
  84. /package/dist/{eslint → src/eslint}/plugins/sonarjs.d.ts +0 -0
  85. /package/dist/{eslint → src/eslint}/plugins/sort-destructure-keys.d.ts +0 -0
  86. /package/dist/{eslint → src/eslint}/plugins/sort-keys-fix.d.ts +0 -0
  87. /package/dist/{eslint → src/eslint}/plugins/storybook.d.ts +0 -0
  88. /package/dist/{eslint → src/eslint}/plugins/stylistic.d.ts +0 -0
  89. /package/dist/{eslint → src/eslint}/plugins/typescript-eslint.d.ts +0 -0
  90. /package/dist/{eslint → src/eslint}/plugins/typescript-sort-keys.d.ts +0 -0
  91. /package/dist/{eslint → src/eslint}/plugins/unicorn.d.ts +0 -0
  92. /package/dist/{eslint → src/eslint}/plugins/unused-imports.d.ts +0 -0
  93. /package/dist/{eslint → src/eslint}/plugins/vitest.d.ts +0 -0
  94. /package/dist/{eslint → src/eslint}/rules/document-todos/document-todos.d.ts +0 -0
  95. /package/dist/{eslint → src/eslint}/rules/document-todos/document-todos.test.d.ts +0 -0
  96. /package/dist/{eslint → src/eslint}/rules/no-commented-out-code/no-commented-out-code.d.ts +0 -0
  97. /package/dist/{eslint → src/eslint}/rules/no-commented-out-code/no-commented-out-code.test.d.ts +0 -0
  98. /package/dist/{eslint → src/eslint}/rules/no-commented-out-code/no-commented-out-code.utils.d.ts +0 -0
  99. /package/dist/{eslint → src/eslint}/rules/no-restricted-dependencies/no-restricted-dependencies.d.ts +0 -0
  100. /package/dist/{eslint → src/eslint}/rules/no-restricted-dependencies/no-restricted-dependencies.test.d.ts +0 -0
  101. /package/dist/{eslint → src/eslint}/rules/no-t/no-t.d.ts +0 -0
  102. /package/dist/{eslint → src/eslint}/rules/no-t/no-t.test.d.ts +0 -0
  103. /package/dist/{eslint → src/eslint}/rules/require-properties/require-properties.d.ts +0 -0
  104. /package/dist/{eslint → src/eslint}/rules/require-properties/require-properties.test.d.ts +0 -0
  105. /package/dist/{eslint → src/eslint}/rules/valid-engines-node/valid-engines-node.d.ts +0 -0
  106. /package/dist/{eslint → src/eslint}/rules/valid-engines-node/valid-engines-node.test.d.ts +0 -0
  107. /package/dist/{knip → src/knip}/configs/core.d.ts +0 -0
  108. /package/dist/{knip → src/knip}/index.d.ts +0 -0
  109. /package/dist/{prettier → src/prettier}/configs/core.d.ts +0 -0
  110. /package/dist/{stylelint → src/prettier}/configs/core.test.d.ts +0 -0
  111. /package/dist/{prettier → src/prettier}/index.d.ts +0 -0
  112. /package/dist/{prettier → src/prettier}/plugins/embed.d.ts +0 -0
  113. /package/dist/{prettier → src/prettier}/plugins/prettier.d.ts +0 -0
  114. /package/dist/{prettier → src/prettier}/plugins/sql.d.ts +0 -0
  115. /package/dist/{stylelint → src/stylelint}/configs/core.d.ts +0 -0
  116. /package/dist/{stylelint → src/stylelint}/index.d.ts +0 -0
  117. /package/dist/{stylelint → src/stylelint}/plugins/no-unused-selectors.d.ts +0 -0
  118. /package/dist/{stylelint → src/stylelint}/plugins/order.d.ts +0 -0
  119. /package/dist/{stylelint → src/stylelint}/plugins/stylelint.d.ts +0 -0
@@ -7,15 +7,15 @@ export const packageJsonConfigs = [packageJsonRules]
7
7
  /**
8
8
  * Package.json ESLint configuration
9
9
  *
10
- * @param {import("@eslint/config-helpers").ConfigWithExtends & { onlyFiles?: string[] }} [config]
10
+ * @param {import("@eslint/config-helpers").ConfigWithExtends & { additionalFiles?: string[] }} [config]
11
11
  * @returns {import("@eslint/config-helpers").ConfigWithExtends}
12
12
  */
13
13
  export function packageJson(config) {
14
- const { extends: extendsConfig, files, onlyFiles, ...rest } = config ?? {}
14
+ const { additionalFiles, extends: extendsConfig, files, ...rest } = config ?? {}
15
15
 
16
16
  return {
17
17
  extends: [...packageJsonConfigs, ...(extendsConfig ?? [])],
18
- files: onlyFiles ?? ["**/package.json", ...(files ?? [])],
18
+ files: files ?? ["**/package.json", ...(additionalFiles ?? [])],
19
19
  ...rest,
20
20
  }
21
21
  }
@@ -28,13 +28,16 @@ export function packageJson(config) {
28
28
  * - Root package.json: all rules including volta.node requirement
29
29
  * - Nested packages: same rules but no volta.node requirement
30
30
  *
31
- * @param {{ workspacePatterns?: string[] } & import("@eslint/config-helpers").ConfigWithExtends} [config]
31
+ * @param {{
32
+ * workspacePatterns?: string[]
33
+ * additionalFiles?: string[]
34
+ * } & import("@eslint/config-helpers").ConfigWithExtends} [config]
32
35
  * @returns {import("@eslint/config-helpers").ConfigWithExtends[]}
33
36
  */
34
37
  export function packageJsonWorkspace(config) {
35
38
  const {
39
+ additionalFiles,
36
40
  extends: extendsConfig,
37
- files,
38
41
  workspacePatterns = DEFAULT_WORKSPACE_PATTERNS,
39
42
  ...rest
40
43
  } = config ?? {}
@@ -42,7 +45,7 @@ export function packageJsonWorkspace(config) {
42
45
  return [
43
46
  {
44
47
  extends: [...packageJsonConfigs, ...(extendsConfig ?? [])],
45
- files: ["package.json", ...(files ?? [])],
48
+ files: ["package.json", ...(additionalFiles ?? [])],
46
49
  ...rest,
47
50
  },
48
51
  {
@@ -5,17 +5,17 @@ export const playwrightConfig = [playwrightPlugin]
5
5
  /**
6
6
  * Playwright testing configuration
7
7
  *
8
- * @param {import("@eslint/config-helpers").ConfigWithExtends & { onlyFiles?: string[] }} [config]
8
+ * @param {import("@eslint/config-helpers").ConfigWithExtends & { additionalFiles?: string[] }} [config]
9
9
  * - Additional config
10
10
  *
11
11
  * @returns {import("@eslint/config-helpers").ConfigWithExtends} ESLint config
12
12
  */
13
13
  export function playwright(config) {
14
- const { extends: extendsConfig, files, onlyFiles, ...rest } = config ?? {}
14
+ const { additionalFiles, extends: extendsConfig, files, ...rest } = config ?? {}
15
15
 
16
16
  return {
17
17
  extends: [...playwrightConfig, ...(extendsConfig ?? [])],
18
- files: onlyFiles ?? [
18
+ files: files ?? [
19
19
  "**/*.test.js",
20
20
  "**/*.test.ts",
21
21
  "**/*.spec.js",
@@ -26,7 +26,7 @@ export function playwright(config) {
26
26
  "**/*.int.test.ts",
27
27
  "**/*.integration.test.js",
28
28
  "**/*.integration.test.ts",
29
- ...(files ?? []),
29
+ ...(additionalFiles ?? []),
30
30
  ],
31
31
  ...rest,
32
32
  }
@@ -6,17 +6,17 @@ export const reactConfig = [reactPlugin, reactHooksPlugin]
6
6
  /**
7
7
  * React framework configuration
8
8
  *
9
- * @param {import("@eslint/config-helpers").ConfigWithExtends & { onlyFiles?: string[] }} [config]
9
+ * @param {import("@eslint/config-helpers").ConfigWithExtends & { additionalFiles?: string[] }} [config]
10
10
  * - Additional config
11
11
  *
12
12
  * @returns {import("@eslint/config-helpers").ConfigWithExtends} ESLint config
13
13
  */
14
14
  export function react(config) {
15
- const { extends: extendsConfig, files, onlyFiles, ...rest } = config ?? {}
15
+ const { additionalFiles, extends: extendsConfig, files, ...rest } = config ?? {}
16
16
 
17
17
  return {
18
18
  extends: [...reactConfig, ...(extendsConfig ?? [])],
19
- files: onlyFiles ?? ["**/*.jsx", "**/*.tsx", ...(files ?? [])],
19
+ files: files ?? ["**/*.jsx", "**/*.tsx", ...(additionalFiles ?? [])],
20
20
  ...rest,
21
21
  }
22
22
  }
@@ -3,7 +3,7 @@ import { storybook as storybookPlugin } from "../plugins/storybook.js"
3
3
  /**
4
4
  * Storybook ESLint configuration with relaxed rules for story files
5
5
  *
6
- * @param {import("@eslint/config-helpers").ConfigWithExtends & { onlyFiles?: string[] }} [config]
6
+ * @param {import("@eslint/config-helpers").ConfigWithExtends & { additionalFiles?: string[] }} [config]
7
7
  * - Additional config
8
8
  *
9
9
  * @returns {import("@eslint/config-helpers").ConfigWithExtends} ESLint config
@@ -21,16 +21,16 @@ export function storybook(config) {
21
21
  },
22
22
  },
23
23
  ]
24
- const { extends: extendsConfig, files, onlyFiles, ...rest } = config ?? {}
24
+ const { additionalFiles, extends: extendsConfig, files, ...rest } = config ?? {}
25
25
 
26
26
  return {
27
27
  extends: [...storybookConfig, ...(extendsConfig ?? [])],
28
- files: onlyFiles ?? [
28
+ files: files ?? [
29
29
  "**/*.stories.js",
30
30
  "**/*.stories.ts",
31
31
  "**/*.stories.jsx",
32
32
  "**/*.stories.tsx",
33
- ...(files ?? []),
33
+ ...(additionalFiles ?? []),
34
34
  ],
35
35
  ...rest,
36
36
  }
@@ -33,17 +33,17 @@ export const typescriptStrictConfig = [
33
33
  /**
34
34
  * Strict TypeScript ESLint configuration with additional safety rules
35
35
  *
36
- * @param {import("@eslint/config-helpers").ConfigWithExtends & { onlyFiles?: string[] }} [config]
36
+ * @param {import("@eslint/config-helpers").ConfigWithExtends & { additionalFiles?: string[] }} [config]
37
37
  * - Additional config
38
38
  *
39
39
  * @returns {import("@eslint/config-helpers").ConfigWithExtends} ESLint config
40
40
  */
41
41
  export function typescriptStrict(config) {
42
- const { extends: extendsConfig, files, onlyFiles, ...rest } = config ?? {}
42
+ const { additionalFiles, extends: extendsConfig, files, ...rest } = config ?? {}
43
43
 
44
44
  return {
45
45
  extends: [...typescriptStrictConfig, ...(extendsConfig ?? [])],
46
- files: onlyFiles ?? ["**/*.ts", "**/*.tsx", "**/*.cts", "**/*.mts", ...(files ?? [])],
46
+ files: files ?? ["**/*.ts", "**/*.tsx", "**/*.cts", "**/*.mts", ...(additionalFiles ?? [])],
47
47
  ...rest,
48
48
  }
49
49
  }
@@ -3,6 +3,7 @@ import tseslint from "typescript-eslint"
3
3
  import { typescriptEslint } from "../plugins/typescript-eslint.js"
4
4
  import { typescriptSortKeys } from "../plugins/typescript-sort-keys.js"
5
5
 
6
+ /** @type {import("eslint").Linter.Config[]} */
6
7
  export const typescriptConfig = [
7
8
  {
8
9
  files: ["**/*.js", "**/*.ts", "**/*.tsx", "**/*.cjs"],
@@ -27,24 +28,24 @@ export const typescriptConfig = [
27
28
  /**
28
29
  * TypeScript ESLint configuration with parser setup and rules
29
30
  *
30
- * @param {import("@eslint/config-helpers").ConfigWithExtends & { onlyFiles?: string[] }} [config]
31
+ * @param {import("@eslint/config-helpers").ConfigWithExtends & { additionalFiles?: string[] }} [config]
31
32
  * - Additional config
32
33
  *
33
34
  * @returns {import("@eslint/config-helpers").ConfigWithExtends} ESLint config
34
35
  */
35
36
  export function typescript(config) {
36
- const { extends: extendsConfig, files, onlyFiles, ...rest } = config ?? {}
37
+ const { additionalFiles, extends: extendsConfig, files, ...rest } = config ?? {}
37
38
 
38
39
  return {
39
40
  extends: [...typescriptConfig, ...(extendsConfig ?? [])],
40
- files: onlyFiles ?? [
41
+ files: files ?? [
41
42
  "**/*.js",
42
43
  "**/*.ts",
43
44
  "**/*.tsx",
44
45
  "**/*.cjs",
45
46
  "**/*.cts",
46
47
  "**/*.mts",
47
- ...(files ?? []),
48
+ ...(additionalFiles ?? []),
48
49
  ],
49
50
  ...rest,
50
51
  }
@@ -5,17 +5,17 @@ export const vitestConfig = [vitestPlugin]
5
5
  /**
6
6
  * Vitest testing framework configuration
7
7
  *
8
- * @param {import("@eslint/config-helpers").ConfigWithExtends & { onlyFiles?: string[] }} [config]
8
+ * @param {import("@eslint/config-helpers").ConfigWithExtends & { additionalFiles?: string[] }} [config]
9
9
  * - Additional config
10
10
  *
11
11
  * @returns {import("@eslint/config-helpers").ConfigWithExtends} ESLint config
12
12
  */
13
13
  export function vitest(config) {
14
- const { extends: extendsConfig, files, onlyFiles, ...rest } = config ?? {}
14
+ const { additionalFiles, extends: extendsConfig, files, ...rest } = config ?? {}
15
15
 
16
16
  return {
17
17
  extends: [...vitestConfig, ...(extendsConfig ?? [])],
18
- files: onlyFiles ?? [
18
+ files: files ?? [
19
19
  "**/*.test.js",
20
20
  "**/*.test.ts",
21
21
  "**/*.spec.js",
@@ -26,7 +26,7 @@ export function vitest(config) {
26
26
  "**/*.int.test.ts",
27
27
  "**/*.integration.test.js",
28
28
  "**/*.integration.test.ts",
29
- ...(files ?? []),
29
+ ...(additionalFiles ?? []),
30
30
  ],
31
31
  ...rest,
32
32
  }
@@ -4,41 +4,40 @@ import { defineConfig, globalIgnores } from "eslint/config"
4
4
  /**
5
5
  * Custom wrapper for ESLint defineConfig with simplified API
6
6
  *
7
- * @param {string[]} ignores - Paths to ignore
8
- * @param {Array} configs - Array of ESLint config objects
7
+ * @param {{ configs: Array; ignores?: string[]; defaultIgnores?: boolean }} options
9
8
  * @returns {Array} ESLint configuration
10
9
  */
11
- export function customDefineConfig(ignores, configs = []) {
12
- return defineConfig(
13
- globalIgnores([
14
- "node_modules",
15
- "./*.js",
16
- "./*.ts",
17
- "./*.cjs",
18
- "./*.mjs",
19
- "./*.config.js",
20
- "./*.config.cjs",
21
- "./*.config.mjs",
22
- "next-env.d.ts",
23
- ".next",
24
- "**/__generated__/**",
25
- "**/*.d.json.ts",
26
- ...ignores,
27
- ]),
28
- ...configs,
29
- )
10
+ export function customDefineConfig({ configs, defaultIgnores = true, ignores = [] }) {
11
+ const defaultIgnorePatterns = defaultIgnores
12
+ ? [
13
+ "node_modules",
14
+ "./*.js",
15
+ "./*.ts",
16
+ "./*.cjs",
17
+ "./*.mjs",
18
+ "./*.config.js",
19
+ "./*.config.cjs",
20
+ "./*.config.mjs",
21
+ "next-env.d.ts",
22
+ ".next",
23
+ "**/__generated__/**",
24
+ "**/*.d.json.ts",
25
+ ]
26
+ : []
27
+
28
+ return defineConfig(globalIgnores([...defaultIgnorePatterns, ...ignores]), ...configs.flat())
30
29
  }
31
30
 
32
- export * from "./configs/aws.js"
33
- export * from "./configs/core.js"
34
- export * from "./configs/jest.js"
35
- export * from "./configs/mobx.js"
36
- export * from "./configs/next.js"
37
- export * from "./configs/node.js"
38
- export * from "./configs/package-json.js"
39
- export * from "./configs/playwright.js"
40
- export * from "./configs/react.js"
41
- export * from "./configs/storybook.js"
42
- export * from "./configs/typescript.js"
43
- export * from "./configs/typescript-strict.js"
44
- export * from "./configs/vitest.js"
31
+ export { aws } from "./configs/aws.js"
32
+ export { core } from "./configs/core.js"
33
+ export { jest } from "./configs/jest.js"
34
+ export { mobx } from "./configs/mobx.js"
35
+ export { next } from "./configs/next.js"
36
+ export { node } from "./configs/node.js"
37
+ export { packageJson, packageJsonWorkspace } from "./configs/package-json.js"
38
+ export { playwright } from "./configs/playwright.js"
39
+ export { react } from "./configs/react.js"
40
+ export { storybook } from "./configs/storybook.js"
41
+ export { typescript } from "./configs/typescript.js"
42
+ export { typescriptStrict } from "./configs/typescript-strict.js"
43
+ export { vitest } from "./configs/vitest.js"
@@ -37,6 +37,7 @@ export const jest = {
37
37
  "jest/no-disabled-tests": "error",
38
38
  "jest/no-done-callback": "error",
39
39
  "jest/no-duplicate-hooks": "error",
40
+ "jest/no-error-equal": "error",
40
41
  "jest/no-export": "error",
41
42
  "jest/no-focused-tests": "error",
42
43
  "jest/no-identical-title": "error",
@@ -46,6 +47,8 @@ export const jest = {
46
47
  "jest/no-standalone-expect": "error",
47
48
  "jest/no-test-prefixes": "error",
48
49
  "jest/no-test-return-statement": "error",
50
+ "jest/no-unnecessary-assertion": "error",
51
+ "jest/no-unneeded-async-expect-function": "error",
49
52
  "jest/no-untyped-mock-factory": "error",
50
53
  "jest/padding-around-after-all-blocks": "error",
51
54
  "jest/padding-around-after-each-blocks": "error",
@@ -64,6 +67,7 @@ export const jest = {
64
67
  "jest/prefer-jest-mocked": "error",
65
68
  "jest/prefer-lowercase-title": ["error", { ignoreTopLevelDescribe: true }],
66
69
  "jest/prefer-mock-promise-shorthand": "error",
70
+ "jest/prefer-mock-return-shorthand": "error",
67
71
  "jest/prefer-spy-on": "error",
68
72
  "jest/prefer-strict-equal": "error",
69
73
  "jest/prefer-to-be": "error",
@@ -78,6 +82,7 @@ export const jest = {
78
82
  "jest/valid-describe-callback": "error",
79
83
  "jest/valid-expect": "error",
80
84
  "jest/valid-expect-in-promise": "error",
85
+ "jest/valid-expect-with-promise": "error",
81
86
  "jest/valid-mock-module-path": "error",
82
87
  "jest/valid-title": "error",
83
88
  },
@@ -6,6 +6,7 @@ export const playwright = {
6
6
  playwright: plugin,
7
7
  },
8
8
  rules: {
9
+ "playwright/enforce-consistent-spacing-between-blocks": "error",
9
10
  "playwright/expect-expect": "error",
10
11
  "playwright/max-expects": ["error", { max: 15 }],
11
12
  "playwright/max-nested-describe": ["error", { max: 4 }],
@@ -93,6 +93,7 @@ export const vitest = {
93
93
  "@vitest/valid-expect": "error",
94
94
  "@vitest/valid-expect-in-promise": "error",
95
95
  "@vitest/valid-title": "error",
96
+ "@vitest/vitest/prefer-mock-return-shorthand": "error",
96
97
  "@vitest/warn-todo": "warn",
97
98
  },
98
99
  }
@@ -1,24 +0,0 @@
1
- /**
2
- * TypeScript ESLint configuration with parser setup and rules
3
- *
4
- * @param {import("@eslint/config-helpers").ConfigWithExtends & { onlyFiles?: string[] }} [config]
5
- * - Additional config
6
- *
7
- * @returns {import("@eslint/config-helpers").ConfigWithExtends} ESLint config
8
- */
9
- export function typescript(config?: import("@eslint/config-helpers").ConfigWithExtends & {
10
- onlyFiles?: string[];
11
- }): import("@eslint/config-helpers").ConfigWithExtends;
12
- export const typescriptConfig: {
13
- name?: string;
14
- basePath?: string;
15
- files: (string | string[])[];
16
- ignores?: string[];
17
- language?: string;
18
- languageOptions?: import("@eslint/core").LanguageOptions;
19
- linterOptions?: import("@eslint/core").LinterOptionsConfig;
20
- processor?: string | import("@eslint/core").Processor;
21
- plugins?: Record<string, import("@eslint/core").Plugin>;
22
- rules?: Partial<import("@eslint/core").RulesConfig> | undefined;
23
- settings?: Record<string, unknown>;
24
- }[];
@@ -1,21 +0,0 @@
1
- /**
2
- * Custom wrapper for ESLint defineConfig with simplified API
3
- *
4
- * @param {string[]} ignores - Paths to ignore
5
- * @param {Array} configs - Array of ESLint config objects
6
- * @returns {Array} ESLint configuration
7
- */
8
- export function customDefineConfig(ignores: string[], configs?: any[]): any[];
9
- export * from "./configs/aws.js";
10
- export * from "./configs/core.js";
11
- export * from "./configs/jest.js";
12
- export * from "./configs/mobx.js";
13
- export * from "./configs/next.js";
14
- export * from "./configs/node.js";
15
- export * from "./configs/package-json.js";
16
- export * from "./configs/playwright.js";
17
- export * from "./configs/react.js";
18
- export * from "./configs/storybook.js";
19
- export * from "./configs/typescript.js";
20
- export * from "./configs/typescript-strict.js";
21
- export * from "./configs/vitest.js";
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes