skyltmax_config 3.0.0.beta.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/Gemfile.lock +1 -1
- data/eslint.js +26 -49
- data/fixture/pnpm-lock.yaml +288 -214
- data/fixture/src/ui/card.tsx +31 -0
- data/lib/skyltmax_config/version.rb +1 -1
- data/package.json +1 -2
- data/pnpm-lock.yaml +290 -218
- data/prettier-ignored-plugin.js +33 -0
- data/prettier.js +4 -3
- data/reset.d.ts +2 -1
- data/tests/configs.test.js +18 -1
- metadata +3 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 587c1b85ec7f31eec1cb250413ef54bfa9aa2b87e94bff81cc6e0dbb0be8de65
|
|
4
|
+
data.tar.gz: 92548bea2059e3ec42bcab9d60476dc7ed1c332502e666cd9f69ccda523cc494
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9ce02b487b8a33f0ab5882b768d4867491bef38b5e1f83656253c8962e7d462e66fb0835056956f15e11eb3b4132e8a61a06538ca318be6ab63c5b37fd9eb4c8
|
|
7
|
+
data.tar.gz: 164d363fd871a48746f79e8a925222cb4dde49632a4964503f10436f85144ca67ff10e3d1c61f83eb9766b45f52a6f8f50cb4c0e60e90eaa5b675e0327822654
|
data/CHANGELOG.md
CHANGED
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
### Unreleased
|
|
4
4
|
|
|
5
|
+
### [3.0.0] - 2026-08-17
|
|
5
6
|
- feat!: React 19
|
|
7
|
+
- feat!: Replace `eslint-plugin-react`with `@eslint-react/eslint-plugin`.
|
|
8
|
+
- chore: Vendor the `ignored` prettier parser as `prettier-ignored-plugin.js` and drop the `prettier-plugin-ignored`
|
|
9
|
+
dependency.
|
|
6
10
|
|
|
7
11
|
### [2.0.0] - 2026-08-12
|
|
8
12
|
|
data/Gemfile.lock
CHANGED
data/eslint.js
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import { createRequire } from "node:module"
|
|
2
|
-
import path from "node:path"
|
|
3
|
-
|
|
4
1
|
import globals from "globals"
|
|
5
2
|
|
|
6
3
|
const ERROR = "error"
|
|
@@ -11,19 +8,6 @@ const vitestFiles = ["**/__tests__/**/*", "**/*.test.*", "**/*.spec.*"]
|
|
|
11
8
|
const testFiles = ["**/tests/**", "**/#tests/**", ...vitestFiles]
|
|
12
9
|
const playwrightFiles = ["**/e2e/**"]
|
|
13
10
|
|
|
14
|
-
// eslint-plugin-react's own `version: "detect"` crashes on eslint 10: detection calls the context.getFilename() that
|
|
15
|
-
// eslint 10 removed (jsx-eslint/eslint-plugin-react#4018, fix unreleased as of 7.37.5). Resolve the version here and
|
|
16
|
-
// pass it explicitly instead. Anchored on the linted project's cwd, not this package, so a consumer's own React is
|
|
17
|
-
// what gets detected; falls back to the newest line when React isn't installed at all.
|
|
18
|
-
const reactVersion = (() => {
|
|
19
|
-
try {
|
|
20
|
-
const requireFromProject = createRequire(path.join(process.cwd(), "package.json"))
|
|
21
|
-
return requireFromProject("react/package.json").version
|
|
22
|
-
} catch {
|
|
23
|
-
return "19.0"
|
|
24
|
-
}
|
|
25
|
-
})()
|
|
26
|
-
|
|
27
11
|
/** @type {import("eslint").Linter.Config[]} */
|
|
28
12
|
export const config = [
|
|
29
13
|
{
|
|
@@ -71,46 +55,39 @@ export const config = [
|
|
|
71
55
|
// JSX/TSX files
|
|
72
56
|
{
|
|
73
57
|
files: ["**/*.tsx", "**/*.jsx"],
|
|
74
|
-
plugins: {
|
|
75
|
-
react: (await import("eslint-plugin-react")).default,
|
|
76
|
-
},
|
|
77
58
|
languageOptions: {
|
|
78
59
|
parser: (await import("typescript-eslint")).parser,
|
|
79
60
|
parserOptions: {
|
|
80
61
|
jsx: true,
|
|
81
62
|
},
|
|
82
63
|
},
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
linkAttribute: "to",
|
|
96
|
-
},
|
|
97
|
-
],
|
|
98
|
-
},
|
|
64
|
+
},
|
|
65
|
+
|
|
66
|
+
{
|
|
67
|
+
files: ["**/*.ts?(x)"],
|
|
68
|
+
...(await import("@eslint-react/eslint-plugin")).default.configs["recommended-type-checked"],
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
files: ["**/*.jsx"],
|
|
72
|
+
...(await import("@eslint-react/eslint-plugin")).default.configs.recommended,
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
files: ["**/*.ts?(x)", "**/*.jsx"],
|
|
99
76
|
rules: {
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
"react/
|
|
103
|
-
"react/
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
"react
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
77
|
+
// eslint-plugin-react-hooks — React's own plugin, still actively released — stays the authority on these two.
|
|
78
|
+
// @eslint-react ships its own copies in `recommended`, and both enabled means the same line reported twice.
|
|
79
|
+
"@eslint-react/rules-of-hooks": OFF,
|
|
80
|
+
"@eslint-react/exhaustive-deps": OFF,
|
|
81
|
+
|
|
82
|
+
// Severities carried over from the eslint-plugin-react config these replace, where both were warnings.
|
|
83
|
+
"@eslint-react/no-missing-key": WARN, // was react/jsx-key
|
|
84
|
+
"@eslint-react/no-leaked-conditional-rendering": WARN, // was react/jsx-no-leaked-render
|
|
85
|
+
|
|
86
|
+
// Rules we relied on that @eslint-react keeps out of `recommended`. The old names are recorded because
|
|
87
|
+
// consumers have to rename them in their own `eslint-disable` comments.
|
|
88
|
+
"@eslint-react/dom-no-missing-button-type": ERROR, // was react/button-has-type
|
|
89
|
+
"@eslint-react/dom-no-unknown-property": ERROR, // was react/no-unknown-property
|
|
90
|
+
"@eslint-react/dom-no-unsafe-target-blank": ERROR, // was react/jsx-no-target-blank
|
|
114
91
|
},
|
|
115
92
|
},
|
|
116
93
|
|