@santi020k/eslint-config-full 3.2.0 → 3.2.1

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,44 @@
1
1
  # @santi020k/eslint-config-full
2
2
 
3
+ ## 3.2.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [#116](https://github.com/santi020k/eslint-config-basic/pull/116) [`498bb41`](https://github.com/santi020k/eslint-config-basic/commit/498bb418d077e57d3dc71c8441813d9b8a2545ca) Thanks [@santi020k](https://github.com/santi020k)! - Keep Astro lint runs warning-free by leaving `projectService` ownership with
8
+ Astro's supported `project` parser option. TypeScript parser setup no longer
9
+ forwards `projectService` into Astro source files, while Vue, Svelte, and
10
+ virtual TypeScript files retain their existing parser behavior.
11
+
12
+ Add `snapshot --rules-only` for compact committed rule contracts. Rules-only
13
+ snapshots record their scope so subsequent checks and diffs omit globals,
14
+ language options, and plugin metadata automatically.
15
+
16
+ Forward `--rules-only` through the public CLI dispatcher and add an end-to-end
17
+ regression for the saved scope. The option was previously accepted but only
18
+ direct handler calls received it.
19
+
20
+ Add `config-types` to emit ESLint config declarations in memory with the
21
+ consumer's TypeScript context and reject pnpm-internal or transitive
22
+ `typescript-eslint` types. The composite action exposes an opt-in portability
23
+ gate for consumer maintenance workflows.
24
+
25
+ Discover exact selectors from Astro component-local styles and narrow utility
26
+ patterns from explicitly configured Tailwind plugins. Doctor reports the
27
+ smallest project-scoped exception shape when dynamic classes still need an
28
+ allowance.
29
+
30
+ Add semantic-only preset adoption fixes and report scripts that combine source
31
+ file reads with regular-expression parsing. Writing is allowed only in the
32
+ semantic-only mode, keeping formatting churn in a separate review.
33
+
34
+ Run the CLI when pnpm invokes its direct `.bin/basic-eslint` symlink. Older
35
+ entrypoint guards could silently exit successfully because the executable path
36
+ did not end in `cli.js`.
37
+
38
+ - Updated dependencies [[`498bb41`](https://github.com/santi020k/eslint-config-basic/commit/498bb418d077e57d3dc71c8441813d9b8a2545ca)]:
39
+ - @santi020k/eslint-config-astro@3.1.2
40
+ - @santi020k/eslint-config-basic@3.5.0
41
+
3
42
  ## 3.2.0
4
43
 
5
44
  ### Minor Changes
package/README.md CHANGED
@@ -14,6 +14,18 @@ Use explicit `features` or `frameworks` options when detection should not decide
14
14
  A disable directive for an inactive plugin rule is invalid ESLint configuration;
15
15
  remove stale directives or explicitly enable the feature that owns the rule.
16
16
 
17
+ Compose local overrides through Full's package-owned factory so TypeScript can
18
+ name the exported config type portably under isolated package managers:
19
+
20
+ ```js
21
+ import { defineConfig } from '@santi020k/eslint-config-full'
22
+
23
+ export default defineConfig({}, {
24
+ files: ['scripts/**/*.js'],
25
+ rules: { 'no-console': 'off' }
26
+ })
27
+ ```
28
+
17
29
  Package minor and patch versions are independent within the v3 family. The
18
30
  resolved `@santi020k/eslint-config-basic` version determines composer behavior,
19
31
  even when the Full package has a different minor version.
@@ -23,14 +35,15 @@ even when the Full package has a different minor version.
23
35
  | Dependency | Supported range | Release verification |
24
36
  | --- | --- | --- |
25
37
  | ESLint | `^10.0.0` | Exact `10.0.0` and the latest matching release |
26
- | TypeScript | `>=5.0.0 <7.0.0` (optional) | Earliest published 5.x release (`5.0.2`) and the latest matching release |
38
+ | TypeScript | `>=5.0.0 <7.0.0` (optional) | Earliest published 5.x release (`5.0.2`) and pinned TypeScript 6 (`6.0.3`) |
27
39
  | Node.js | `>=22.19.0` | Enforced by package engines and compatibility checks |
28
40
 
29
41
  The packed-consumer release gate installs both ESLint/TypeScript matrix edges,
30
- loads the one-line recommended config, lints a detected React file, verifies
31
- Full's resolved Basic composer, and applies the repository's narrowly owned
32
- upstream peer-warning policy. An accepted warning is not treated as active
33
- feature support: Full installs every companion package, while detection decides
34
- which configurations execute.
42
+ emits declarations for recommended and composed configs, loads the one-line
43
+ recommended config, lints a detected React file, verifies Full's resolved Basic
44
+ composer, and applies the repository's narrowly owned upstream peer-warning
45
+ policy. An accepted warning is not treated as active feature support: Full
46
+ installs every companion package, while detection decides which configurations
47
+ execute.
35
48
 
36
49
  Use `@santi020k/eslint-config-basic` for the lean, modular default.
package/dist/index.d.ts CHANGED
@@ -1,7 +1,16 @@
1
+ import { EslintConfigArray as EslintConfigArray$1, defineConfig as defineConfig$1 } from '@santi020k/eslint-config-basic';
1
2
  export * from '@santi020k/eslint-config-basic';
2
3
  export * from '@santi020k/eslint-config-extensions';
3
4
  export * from '@santi020k/eslint-config-formats';
4
5
  export * from '@santi020k/eslint-config-libraries';
5
6
  export * from '@santi020k/eslint-config-testing';
6
7
  export * from '@santi020k/eslint-config-tools';
7
- import '@santi020k/eslint-config-basic/recommended';
8
+
9
+ /** Portable public result type returned by Full's re-exported composer. */
10
+ interface EslintConfigArray extends EslintConfigArray$1 {
11
+ length: number;
12
+ }
13
+ type ConfigComposer = (...args: Parameters<typeof defineConfig$1>) => Promise<EslintConfigArray>;
14
+ declare const defineConfig: ConfigComposer;
15
+
16
+ export { type EslintConfigArray, defineConfig };
package/dist/index.js CHANGED
@@ -1,6 +1,13 @@
1
+ import {
2
+ defineConfig as basicDefineConfig
3
+ } from "@santi020k/eslint-config-basic";
1
4
  export * from "@santi020k/eslint-config-basic";
2
5
  export * from "@santi020k/eslint-config-extensions";
3
6
  export * from "@santi020k/eslint-config-formats";
4
7
  export * from "@santi020k/eslint-config-libraries";
5
8
  export * from "@santi020k/eslint-config-testing";
6
9
  export * from "@santi020k/eslint-config-tools";
10
+ const defineConfig = basicDefineConfig;
11
+ export {
12
+ defineConfig
13
+ };
@@ -1 +1,11 @@
1
- export { default } from '@santi020k/eslint-config-basic/recommended';
1
+ import { EslintConfigArray } from './index.js';
2
+ import '@santi020k/eslint-config-basic';
3
+ import '@santi020k/eslint-config-extensions';
4
+ import '@santi020k/eslint-config-formats';
5
+ import '@santi020k/eslint-config-libraries';
6
+ import '@santi020k/eslint-config-testing';
7
+ import '@santi020k/eslint-config-tools';
8
+
9
+ declare const config: EslintConfigArray;
10
+
11
+ export { config as default };
@@ -1,4 +1,6 @@
1
- import { default as default2 } from "@santi020k/eslint-config-basic/recommended";
1
+ import recommended from "@santi020k/eslint-config-basic/recommended";
2
+ const config = recommended;
3
+ var recommended_default = config;
2
4
  export {
3
- default2 as default
5
+ recommended_default as default
4
6
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@santi020k/eslint-config-full",
3
- "version": "3.2.0",
3
+ "version": "3.2.1",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "provenance": true
@@ -30,8 +30,8 @@
30
30
  ],
31
31
  "dependencies": {
32
32
  "@santi020k/eslint-config-angular": "^3.1.0",
33
- "@santi020k/eslint-config-astro": "^3.1.1",
34
- "@santi020k/eslint-config-basic": "^3.4.0",
33
+ "@santi020k/eslint-config-astro": "^3.1.2",
34
+ "@santi020k/eslint-config-basic": "^3.5.0",
35
35
  "@santi020k/eslint-config-expo": "^3.1.0",
36
36
  "@santi020k/eslint-config-extensions": "^3.1.1",
37
37
  "@santi020k/eslint-config-formats": "^3.1.1",
@@ -43,21 +43,21 @@
43
43
  "@santi020k/eslint-config-nuxt": "^3.1.0",
44
44
  "@santi020k/eslint-config-preact": "^3.1.0",
45
45
  "@santi020k/eslint-config-qwik": "^3.1.0",
46
+ "@santi020k/eslint-config-react": "^3.1.0",
46
47
  "@santi020k/eslint-config-react-router": "^3.1.0",
47
48
  "@santi020k/eslint-config-slidev": "^3.1.0",
48
- "@santi020k/eslint-config-react": "^3.1.0",
49
49
  "@santi020k/eslint-config-solid": "^3.1.0",
50
50
  "@santi020k/eslint-config-svelte": "^3.1.0",
51
51
  "@santi020k/eslint-config-tanstack-start": "^3.1.0",
52
- "@santi020k/eslint-config-tools": "^3.1.1",
53
- "@santi020k/eslint-config-vue": "^3.1.0",
54
52
  "@santi020k/eslint-config-testing": "^3.1.1",
55
- "@santi020k/eslint-config-vite": "^3.1.0"
53
+ "@santi020k/eslint-config-tools": "^3.1.1",
54
+ "@santi020k/eslint-config-vite": "^3.1.0",
55
+ "@santi020k/eslint-config-vue": "^3.1.0"
56
56
  },
57
57
  "devDependencies": {
58
58
  "publint": "^0.3.22",
59
59
  "tsup": "^8.5.1",
60
- "typescript": "^6.0.3"
60
+ "typescript": "npm:@typescript/typescript6@^6.0.2"
61
61
  },
62
62
  "peerDependencies": {
63
63
  "eslint": "^10.0.0",