@dpuse/eslint-config-dpuse 1.0.84 → 1.0.91

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.
package/.gitattributes CHANGED
@@ -1,2 +1,4 @@
1
1
  bundle-analysis-reports/** linguist-vendored
2
2
  docs/** linguist-vendored
3
+ eslint.config.js linguist-detectable=false
4
+ eslint.config.default.js linguist-detectable=false
package/config.json CHANGED
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "id": "eslint-config-dpuse",
3
- "version": "1.0.84"
3
+ "version": "1.0.91"
4
4
  }
@@ -1,6 +1,9 @@
1
1
  // ── Local (DPUse ESLint) Framework
2
- import { dpuseESLintConfig } from '@/index.ts';
2
+ import { dpuseESLintConfig } from './src/index.ts';
3
3
 
4
4
  // ── DPUse ESLint Configuration ───────────────────────────────────────────────────────────────────────────────────────
5
5
 
6
- export default dpuseESLintConfig({ tsconfigPath: './tsconfig.json', tsconfigRootDir: import.meta.dirname });
6
+ /** @type {import('eslint').Linter.Config[]} */
7
+ const config = dpuseESLintConfig({ tsconfigPath: './tsconfig.json', tsconfigRootDir: import.meta.dirname });
8
+
9
+ export default config;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dpuse/eslint-config-dpuse",
3
- "version": "1.0.84",
3
+ "version": "1.0.91",
4
4
  "private": false,
5
5
  "description": "Common ESLint configuration used in most DPUse projects.",
6
6
  "license": "MIT",
@@ -45,11 +45,10 @@
45
45
  "typescript-eslint": "^8.62.1"
46
46
  },
47
47
  "devDependencies": {
48
- "@dpuse/dpuse-development": "^0.3.637",
48
+ "@dpuse/dpuse-development": "^0.3.639",
49
49
  "@types/eslint-plugin-security": "^3.0.1",
50
50
  "@types/node": "^26.1.0",
51
51
  "eslint": "^10.6.0",
52
- "jiti": "^2.7.0",
53
52
  "prettier": "^3.9.4",
54
53
  "typescript": "^6.0.3",
55
54
  "typescript-eslint": "^8.62.1"
package/tsconfig.json CHANGED
@@ -27,6 +27,7 @@
27
27
  "useDefineForClassFields": true,
28
28
  "verbatimModuleSyntax": true,
29
29
  "noEmit": true,
30
+ "allowJs": true,
30
31
  "allowImportingTsExtensions": true,
31
32
  "types": ["node"],
32
33
  "paths": {
@@ -1,75 +0,0 @@
1
- // ── External Dependencies & Registrations
2
- import type { Linter } from 'eslint';
3
- import pluginComments from '@eslint-community/eslint-plugin-eslint-comments';
4
- import { flatConfigs as pluginImportFlatConfigs } from 'eslint-plugin-import-x';
5
- import { configs as pluginRegexpConfigs } from 'eslint-plugin-regexp';
6
- import pluginSecurity from 'eslint-plugin-security';
7
- import pluginSonarJS from 'eslint-plugin-sonarjs';
8
- import pluginUnicorn from 'eslint-plugin-unicorn';
9
- import skipFormatting from 'eslint-config-prettier';
10
- import tseslint from 'typescript-eslint';
11
- import { defineConfig, globalIgnores } from 'eslint/config';
12
-
13
- // ── ESLint Configuration ─────────────────────────────────────────────────────────────────────────────────────────────
14
-
15
- export default defineConfig(
16
- // Linting scope, strict TypeScript type-checking, and module resolver.
17
- {
18
- files: ['eslint.config.*', 'src/**/*.ts', 'vite.config.ts', 'vitest.config.ts'],
19
- extends: [...tseslint.configs.strictTypeChecked, ...tseslint.configs.stylisticTypeChecked],
20
- languageOptions: {
21
- parserOptions: { project: './tsconfig.json' }
22
- },
23
- settings: {
24
- 'import-x/core-modules': ['cloudflare:workers'],
25
- 'import-x/resolver': {
26
- typescript: { project: ['./tsconfig.json'] }
27
- }
28
- }
29
- },
30
-
31
- // Ignores.
32
- globalIgnores(['bundle-analysis-reports/**', 'dependency-check-bin/**', 'dependency-check-reports/**', 'dist/**', 'licenses/**']),
33
-
34
- // Plugin configurations.
35
- {
36
- // '@eslint-community/eslint-comments' only ships a legacy config; manually convert to flat format.
37
- plugins: { '@eslint-community/eslint-comments': pluginComments },
38
- rules: {
39
- '@eslint-community/eslint-comments/disable-enable-pair': 'error',
40
- '@eslint-community/eslint-comments/no-aggregating-enable': 'error',
41
- '@eslint-community/eslint-comments/no-duplicate-disable': 'error',
42
- '@eslint-community/eslint-comments/no-unlimited-disable': 'error',
43
- '@eslint-community/eslint-comments/no-unused-enable': 'error'
44
- }
45
- },
46
- pluginImportFlatConfigs.recommended,
47
- pluginRegexpConfigs['flat/recommended'],
48
- pluginSecurity.configs.recommended,
49
- (pluginSonarJS.configs?.['recommended'] ?? {}) as Linter.Config,
50
- pluginUnicorn.configs.recommended,
51
- skipFormatting,
52
-
53
- // Rule overrides.
54
- {
55
- rules: {
56
- 'sort-imports': ['warn', { allowSeparatedGroups: true, ignoreCase: true, memberSyntaxSortOrder: ['none', 'all', 'single', 'multiple'] }],
57
-
58
- '@typescript-eslint/no-unused-vars': 'warn',
59
-
60
- '@eslint-community/eslint-comments/require-description': 'warn',
61
-
62
- 'security/detect-object-injection': 'off',
63
-
64
- 'sonarjs/no-commented-code': 'warn',
65
- 'sonarjs/no-dead-store': 'warn',
66
- 'sonarjs/no-unused-vars': 'warn',
67
- 'sonarjs/todo-tag': 'warn',
68
-
69
- 'unicorn/filename-case': ['error', { cases: { camelCase: true, pascalCase: true }, ignore: ['updateDPUseDependencies'] }],
70
- 'unicorn/no-null': 'off',
71
- 'unicorn/no-process-exit': 'off', // This package only contains scripts that are run as package.json scripts.
72
- 'unicorn/switch-case-braces': ['warn', 'avoid']
73
- }
74
- }
75
- );