@santi020k/eslint-config-lite 2.1.1 → 3.0.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # @santi020k/eslint-config-lite
2
2
 
3
+ ## 3.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - Enter compatibility mode. The main `@santi020k/eslint-config-basic` package
8
+ now uses the modular dependency model introduced by `lite`.
9
+ - New projects should migrate to `basic`; existing composer options remain
10
+ available during the transition.
11
+
3
12
  ## 2.1.1
4
13
 
5
14
  ### Patch Changes
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { EslintConfigOptions, FlatConfigArray } from '@santi020k/eslint-config-core';
2
- export { DetectedFrameworkName, DetectionOptions, EslintConfigOptions, Extension, ExtensionName, ExtensionOption, FlatConfigArray, Format, FormatName, FormatOption, ImportedFramework, Library, LibraryName, LibraryOption, NextMode, NextModeName, NextModeOption, OptionalConfigMap, OptionalConfigName, Preset, PresetName, PresetOption, ReactConfigKeys, Runtime, RuntimeName, RuntimeOption, Setting, SettingName, SettingOption, StrictMode, Testing, TestingName, TestingOption, Tool, ToolName, ToolOption, TypeScriptMode, TypeScriptOptions, coreConfig, createCoreConfig, createImportGroups, detectProjectOptions, getGlobalsForRuntime, gitignore, hasReactConfig, jsConfig } from '@santi020k/eslint-config-core';
2
+ export { DetectedFrameworkName, DetectionOptions, EslintConfigOptions, Extension, ExtensionName, ExtensionOption, FlatConfigArray, Format, FormatName, FormatOption, ImportedFramework, Library, LibraryName, LibraryOption, NextMode, NextModeName, NextModeOption, OptionalConfigMap, OptionalConfigName, Preset, PresetName, PresetOption, ProjectConfigOptions, ReactConfigKeys, Runtime, RuntimeName, RuntimeOption, Setting, SettingName, SettingOption, StrictMode, Testing, TestingName, TestingOption, Tool, ToolName, ToolOption, TypeScriptMode, TypeScriptOptions, coreConfig, createCoreConfig, createImportGroups, detectProjectOptions, getGlobalsForRuntime, gitignore, hasReactConfig, jsConfig } from '@santi020k/eslint-config-core';
3
3
  export { angular, angularConfig, astro, expo, expoConfig, hono, lit, nest, nestConfig, next, nextConfig, nuxt, preact, preactConfig, qwik, react, reactConfig, reactRouter, remix, slidev, solid, solidConfig, svelte, svelteConfig, tanstackStart, vite, vue, vueConfig } from './frameworks.js';
4
4
  export { tsConfig, typescriptConfig } from '@santi020k/eslint-config-typescript';
5
5
 
package/dist/index.js CHANGED
@@ -15,6 +15,7 @@ import {
15
15
  Library,
16
16
  mergeFrameworkOption,
17
17
  mergeOptionalBucket,
18
+ mergeProjectOptions,
18
19
  NextMode,
19
20
  patchImportGroups,
20
21
  Preset,
@@ -196,12 +197,10 @@ const FRAMEWORK_EXTRA_OPTS = {
196
197
  };
197
198
  const resolveEnabledFrameworks = async (frameworks, ctx) => {
198
199
  const entries = await Promise.all(
199
- Object.entries(frameworks).filter((entry) => Boolean(entry[1])).map(
200
- ([name, value]) => (
201
- // eslint-disable-next-line security/detect-object-injection
202
- resolveFramework(name, value, FRAMEWORK_EXTRA_OPTS[name]?.(ctx)).then((config) => [name, config])
203
- )
204
- )
200
+ Object.entries(frameworks).filter((entry) => Boolean(entry[1])).map(([name, value]) => (
201
+ // eslint-disable-next-line security/detect-object-injection
202
+ resolveFramework(name, value, FRAMEWORK_EXTRA_OPTS[name]?.(ctx)).then((config) => [name, config])
203
+ ))
205
204
  );
206
205
  return Object.fromEntries(entries);
207
206
  };
@@ -312,6 +311,7 @@ const eslintConfig = async (options) => {
312
311
  ignores: optIgnores,
313
312
  libraries: optLibraries,
314
313
  nextMode: optNextMode,
314
+ projectDefaults,
315
315
  projects: optProjects,
316
316
  runtime: optRuntime,
317
317
  settings: optSettings,
@@ -420,11 +420,13 @@ const eslintConfig = async (options) => {
420
420
  const projectConfigs = await Promise.all(
421
421
  Object.entries(configuredProjects).map(async ([projectPath, projectOptions]) => {
422
422
  const projectRoot = join(detectRootDir ?? process.cwd(), projectPath);
423
+ const inheritedOptions = mergeProjectOptions(projectDefaults ?? {}, projectOptions);
423
424
  const scopedConfigs = await eslintConfig({
424
- ...projectOptions,
425
- detectRootDir: projectOptions.detectRootDir ?? projectRoot,
425
+ ...inheritedOptions,
426
+ detectRootDir: inheritedOptions.detectRootDir ?? projectRoot,
427
+ projectDefaults: void 0,
426
428
  projects: void 0,
427
- tsconfigRootDir: projectOptions.tsconfigRootDir ?? projectRoot
429
+ tsconfigRootDir: inheritedOptions.tsconfigRootDir ?? projectRoot
428
430
  });
429
431
  return scopedConfigs.map((config) => scopeConfigToProject(config, projectPath));
430
432
  })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@santi020k/eslint-config-lite",
3
- "version": "2.1.1",
3
+ "version": "3.0.0",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "provenance": true
@@ -23,59 +23,59 @@
23
23
  "CHANGELOG.md"
24
24
  ],
25
25
  "dependencies": {
26
- "@typescript-eslint/utils": "^8.61.1",
27
- "@santi020k/eslint-config-core": "^2.1.1",
28
- "@santi020k/eslint-config-typescript": "^2.1.1"
26
+ "@typescript-eslint/utils": "^8.65.0",
27
+ "@santi020k/eslint-config-core": "^3.0.0",
28
+ "@santi020k/eslint-config-typescript": "^3.0.0"
29
29
  },
30
30
  "devDependencies": {
31
- "@types/node": "^26.0.0",
32
- "publint": "^0.3.21",
31
+ "@types/node": "^26.1.1",
32
+ "publint": "^0.3.22",
33
33
  "tsup": "^8.5.1",
34
- "typescript": "^6.0.3",
35
- "@santi020k/eslint-config-angular": "^2.1.1",
36
- "@santi020k/eslint-config-astro": "^2.1.1",
37
- "@santi020k/eslint-config-expo": "^2.1.1",
38
- "@santi020k/eslint-config-hono": "^2.1.1",
39
- "@santi020k/eslint-config-integrations": "^2.1.1",
40
- "@santi020k/eslint-config-lit": "^2.1.1",
41
- "@santi020k/eslint-config-nest": "^2.1.1",
42
- "@santi020k/eslint-config-next": "^2.1.1",
43
- "@santi020k/eslint-config-nuxt": "^2.1.1",
44
- "@santi020k/eslint-config-preact": "^2.1.1",
45
- "@santi020k/eslint-config-react": "^2.1.1",
46
- "@santi020k/eslint-config-qwik": "^2.1.1",
47
- "@santi020k/eslint-config-react-router": "^2.1.1",
48
- "@santi020k/eslint-config-remix": "^2.1.1",
49
- "@santi020k/eslint-config-slidev": "^2.1.1",
50
- "@santi020k/eslint-config-solid": "^2.1.1",
51
- "@santi020k/eslint-config-svelte": "^2.1.1",
52
- "@santi020k/eslint-config-tanstack-start": "^2.1.1",
53
- "@santi020k/eslint-config-vite": "^2.1.1",
54
- "@santi020k/eslint-config-vue": "^2.1.1"
34
+ "typescript": "^6.0.2",
35
+ "@santi020k/eslint-config-angular": "^3.0.0",
36
+ "@santi020k/eslint-config-astro": "^3.0.0",
37
+ "@santi020k/eslint-config-expo": "^3.0.0",
38
+ "@santi020k/eslint-config-hono": "^3.0.0",
39
+ "@santi020k/eslint-config-integrations": "^3.0.0",
40
+ "@santi020k/eslint-config-lit": "^3.0.0",
41
+ "@santi020k/eslint-config-nest": "^3.0.0",
42
+ "@santi020k/eslint-config-next": "^3.0.0",
43
+ "@santi020k/eslint-config-nuxt": "^3.0.0",
44
+ "@santi020k/eslint-config-preact": "^3.0.0",
45
+ "@santi020k/eslint-config-qwik": "^3.0.0",
46
+ "@santi020k/eslint-config-react": "^3.0.0",
47
+ "@santi020k/eslint-config-react-router": "^3.0.0",
48
+ "@santi020k/eslint-config-remix": "^3.0.0",
49
+ "@santi020k/eslint-config-slidev": "^3.0.0",
50
+ "@santi020k/eslint-config-solid": "^3.0.0",
51
+ "@santi020k/eslint-config-svelte": "^3.0.0",
52
+ "@santi020k/eslint-config-tanstack-start": "^3.0.0",
53
+ "@santi020k/eslint-config-vite": "^3.0.0",
54
+ "@santi020k/eslint-config-vue": "^3.0.0"
55
55
  },
56
56
  "peerDependencies": {
57
57
  "eslint": "^10.0.0",
58
58
  "typescript": ">=5.0.0",
59
- "@santi020k/eslint-config-angular": "^2.1.1",
60
- "@santi020k/eslint-config-astro": "^2.1.1",
61
- "@santi020k/eslint-config-expo": "^2.1.1",
62
- "@santi020k/eslint-config-hono": "^2.1.1",
63
- "@santi020k/eslint-config-integrations": "^2.1.1",
64
- "@santi020k/eslint-config-lit": "^2.1.1",
65
- "@santi020k/eslint-config-next": "^2.1.1",
66
- "@santi020k/eslint-config-nest": "^2.1.1",
67
- "@santi020k/eslint-config-nuxt": "^2.1.1",
68
- "@santi020k/eslint-config-preact": "^2.1.1",
69
- "@santi020k/eslint-config-qwik": "^2.1.1",
70
- "@santi020k/eslint-config-react": "^2.1.1",
71
- "@santi020k/eslint-config-react-router": "^2.1.1",
72
- "@santi020k/eslint-config-remix": "^2.1.1",
73
- "@santi020k/eslint-config-slidev": "^2.1.1",
74
- "@santi020k/eslint-config-solid": "^2.1.1",
75
- "@santi020k/eslint-config-svelte": "^2.1.1",
76
- "@santi020k/eslint-config-tanstack-start": "^2.1.1",
77
- "@santi020k/eslint-config-vite": "^2.1.1",
78
- "@santi020k/eslint-config-vue": "^2.1.1"
59
+ "@santi020k/eslint-config-angular": "^3.0.0",
60
+ "@santi020k/eslint-config-astro": "^3.0.0",
61
+ "@santi020k/eslint-config-expo": "^3.0.0",
62
+ "@santi020k/eslint-config-hono": "^3.0.0",
63
+ "@santi020k/eslint-config-integrations": "^3.0.0",
64
+ "@santi020k/eslint-config-lit": "^3.0.0",
65
+ "@santi020k/eslint-config-nest": "^3.0.0",
66
+ "@santi020k/eslint-config-next": "^3.0.0",
67
+ "@santi020k/eslint-config-nuxt": "^3.0.0",
68
+ "@santi020k/eslint-config-preact": "^3.0.0",
69
+ "@santi020k/eslint-config-qwik": "^3.0.0",
70
+ "@santi020k/eslint-config-react": "^3.0.0",
71
+ "@santi020k/eslint-config-react-router": "^3.0.0",
72
+ "@santi020k/eslint-config-remix": "^3.0.0",
73
+ "@santi020k/eslint-config-slidev": "^3.0.0",
74
+ "@santi020k/eslint-config-solid": "^3.0.0",
75
+ "@santi020k/eslint-config-svelte": "^3.0.0",
76
+ "@santi020k/eslint-config-tanstack-start": "^3.0.0",
77
+ "@santi020k/eslint-config-vite": "^3.0.0",
78
+ "@santi020k/eslint-config-vue": "^3.0.0"
79
79
  },
80
80
  "peerDependenciesMeta": {
81
81
  "@santi020k/eslint-config-angular": {