@pumpn/eslint-config 17.1.4 → 17.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/config.js CHANGED
@@ -6,8 +6,6 @@ import globals from "globals";
6
6
  import plugins from "./plugins.js";
7
7
  import rules from "./rules.js";
8
8
 
9
- const cssFilesRefreshRate = 5_000;
10
-
11
9
  const convertedGlobals = Object.fromEntries(
12
10
  Object.entries({
13
11
  ...globals.browser,
@@ -76,6 +74,9 @@ const config = defineConfig([
76
74
  plugins,
77
75
  rules,
78
76
  settings: {
77
+ "better-tailwindcss": {
78
+ entryPoint: "./assets/style.css"
79
+ },
79
80
  formComponents: ["Form"],
80
81
  "import-x/extensions": allExtensions,
81
82
  "import-x/external-module-folders": ["node_modules", "node_modules/@types"],
@@ -118,23 +119,6 @@ const config = defineConfig([
118
119
  },
119
120
  regexp: {
120
121
  allowedCharacterRanges: ["alphanumeric"]
121
- },
122
- tailwindcss: {
123
- callees: ["classnames", "clsx", "ctl"],
124
- classRegex: "^class(Name)?$",
125
- config: "tailwind.config.js",
126
- cssFiles: [
127
- "**/*.css",
128
- "!**/node_modules",
129
- "!**/.*",
130
- "!**/dist",
131
- "!**/build"
132
- ],
133
- cssFilesRefreshRate,
134
- removeDuplicates: true,
135
- skipClassAttribute: false,
136
- tags: [],
137
- whitelist: []
138
122
  }
139
123
  }
140
124
  },
package/deno.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pumpn/eslint-config",
3
- "version": "17.1.4",
3
+ "version": "17.2.1",
4
4
  "exports": "./config.js",
5
5
  "license": "MIT",
6
6
  "tasks": {
@@ -44,6 +44,7 @@
44
44
  "@typescript-eslint/parser": "npm:@typescript-eslint/parser@^8.61.0",
45
45
  "eslint": "npm:eslint@^10.5.0",
46
46
  "eslint-import-resolver-typescript": "npm:eslint-import-resolver-typescript@^4.4.5",
47
+ "eslint-plugin-better-tailwindcss": "npm:eslint-plugin-better-tailwindcss@^4.6.0",
47
48
  "eslint-plugin-command": "npm:eslint-plugin-command@^3.5.2",
48
49
  "eslint-plugin-depend": "npm:eslint-plugin-depend@^1.5.0",
49
50
  "eslint-plugin-import-x": "npm:eslint-plugin-import-x@^4.16.2",
@@ -61,7 +62,6 @@
61
62
  "eslint-plugin-regexp": "npm:eslint-plugin-regexp@^3.1.0",
62
63
  "eslint-plugin-security": "npm:eslint-plugin-security@^4.0.1",
63
64
  "eslint-plugin-sonarjs": "npm:eslint-plugin-sonarjs@^4.0.3",
64
- "eslint-plugin-tailwindcss": "npm:eslint-plugin-tailwindcss@^4.0.0-beta.0",
65
65
  "eslint-plugin-unicorn": "npm:eslint-plugin-unicorn@^65.0.1",
66
66
  "globals": "npm:globals@^17.6.0",
67
67
  "preact": "https://esm.sh/*preact@10.19.3?dev",
package/deno.lock CHANGED
@@ -3,30 +3,30 @@
3
3
  "specifiers": {
4
4
  "jsr:@std/internal@^1.0.14": "1.0.14",
5
5
  "jsr:@std/path@^1.1.5": "1.1.5",
6
- "npm:@eslint-community/eslint-plugin-eslint-comments@^4.7.2": "4.7.2_eslint@10.5.0",
7
- "npm:@stylistic/eslint-plugin@^5.10.0": "5.10.0_eslint@10.5.0",
8
- "npm:@typescript-eslint/parser@^8.61.0": "8.61.0_eslint@10.5.0_typescript@5.9.3",
9
- "npm:eslint-import-resolver-typescript@^4.4.5": "4.4.5_eslint@10.5.0_eslint-plugin-import-x@4.16.2__eslint@10.5.0",
10
- "npm:eslint-plugin-command@^3.5.2": "3.5.2_eslint@10.5.0",
11
- "npm:eslint-plugin-depend@^1.5.0": "1.5.0_eslint@10.5.0",
12
- "npm:eslint-plugin-import-x@^4.16.2": "4.16.2_eslint@10.5.0",
13
- "npm:eslint-plugin-jsdoc@^63.0.2": "63.0.2_eslint@10.5.0",
14
- "npm:eslint-plugin-no-secrets@^2.3.3": "2.3.3_eslint@10.5.0",
15
- "npm:eslint-plugin-perfectionist@^5.9.0": "5.9.0_eslint@10.5.0_typescript@5.9.3",
16
- "npm:eslint-plugin-promise@^7.3.0": "7.3.0_eslint@10.5.0",
17
- "npm:eslint-plugin-react-dom@^5.9.0": "5.9.0_eslint@10.5.0_typescript@5.9.3",
18
- "npm:eslint-plugin-react-jsx@^5.9.0": "5.9.0_eslint@10.5.0_typescript@5.9.3",
19
- "npm:eslint-plugin-react-naming-convention@^5.9.0": "5.9.0_eslint@10.5.0_typescript@5.9.3",
20
- "npm:eslint-plugin-react-rsc@^5.9.0": "5.9.0_eslint@10.5.0_typescript@5.9.3",
21
- "npm:eslint-plugin-react-web-api@^5.9.0": "5.9.0_eslint@10.5.0_typescript@5.9.3",
22
- "npm:eslint-plugin-react-x@^5.9.0": "5.9.0_eslint@10.5.0_typescript@5.9.3",
23
- "npm:eslint-plugin-redos@^4.5.0": "4.5.0_eslint@10.5.0",
24
- "npm:eslint-plugin-regexp@^3.1.0": "3.1.0_eslint@10.5.0",
6
+ "npm:@eslint-community/eslint-plugin-eslint-comments@^4.7.2": "4.7.2_eslint@10.5.0__jiti@2.6.1",
7
+ "npm:@stylistic/eslint-plugin@^5.10.0": "5.10.0_eslint@10.5.0__jiti@2.6.1",
8
+ "npm:@typescript-eslint/parser@^8.61.0": "8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
9
+ "npm:eslint-import-resolver-typescript@^4.4.5": "4.4.5_eslint@10.5.0__jiti@2.6.1_eslint-plugin-import-x@4.16.2__eslint@10.5.0___jiti@2.6.1",
10
+ "npm:eslint-plugin-better-tailwindcss@^4.6.0": "4.6.0_eslint@10.5.0__jiti@2.6.1_tailwindcss@4.3.1",
11
+ "npm:eslint-plugin-command@^3.5.2": "3.5.2_eslint@10.5.0__jiti@2.6.1",
12
+ "npm:eslint-plugin-depend@^1.5.0": "1.5.0_eslint@10.5.0__jiti@2.6.1",
13
+ "npm:eslint-plugin-import-x@^4.16.2": "4.16.2_eslint@10.5.0__jiti@2.6.1",
14
+ "npm:eslint-plugin-jsdoc@^63.0.2": "63.0.2_eslint@10.5.0__jiti@2.6.1",
15
+ "npm:eslint-plugin-no-secrets@^2.3.3": "2.3.3_eslint@10.5.0__jiti@2.6.1",
16
+ "npm:eslint-plugin-perfectionist@^5.9.0": "5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
17
+ "npm:eslint-plugin-promise@^7.3.0": "7.3.0_eslint@10.5.0__jiti@2.6.1",
18
+ "npm:eslint-plugin-react-dom@^5.9.0": "5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
19
+ "npm:eslint-plugin-react-jsx@^5.9.0": "5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
20
+ "npm:eslint-plugin-react-naming-convention@^5.9.0": "5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
21
+ "npm:eslint-plugin-react-rsc@^5.9.0": "5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
22
+ "npm:eslint-plugin-react-web-api@^5.9.0": "5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
23
+ "npm:eslint-plugin-react-x@^5.9.0": "5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
24
+ "npm:eslint-plugin-redos@^4.5.0": "4.5.0_eslint@10.5.0__jiti@2.6.1",
25
+ "npm:eslint-plugin-regexp@^3.1.0": "3.1.0_eslint@10.5.0__jiti@2.6.1",
25
26
  "npm:eslint-plugin-security@^4.0.1": "4.0.1",
26
- "npm:eslint-plugin-sonarjs@^4.0.3": "4.0.3_eslint@10.5.0",
27
- "npm:eslint-plugin-tailwindcss@^4.0.0-beta.0": "4.0.0-beta.0_tailwindcss@4.2.1",
28
- "npm:eslint-plugin-unicorn@^65.0.1": "65.0.1_eslint@10.5.0",
29
- "npm:eslint@^10.5.0": "10.5.0",
27
+ "npm:eslint-plugin-sonarjs@^4.0.3": "4.0.3_eslint@10.5.0__jiti@2.6.1",
28
+ "npm:eslint-plugin-unicorn@^65.0.1": "65.0.1_eslint@10.5.0__jiti@2.6.1",
29
+ "npm:eslint@^10.5.0": "10.5.0_jiti@2.6.1",
30
30
  "npm:globals@^17.6.0": "17.6.0"
31
31
  },
32
32
  "jsr": {
@@ -86,7 +86,7 @@
86
86
  "@es-joy/resolve.exports@1.2.0": {
87
87
  "integrity": "sha512-Q9hjxWI5xBM+qW2enxfe8wDKdFWMfd0Z29k5ZJnuBqD/CasY5Zryj09aCA6owbGATWz+39p5uIdaHXpopOcG8g=="
88
88
  },
89
- "@eslint-community/eslint-plugin-eslint-comments@4.7.2_eslint@10.5.0": {
89
+ "@eslint-community/eslint-plugin-eslint-comments@4.7.2_eslint@10.5.0__jiti@2.6.1": {
90
90
  "integrity": "sha512-LF03qURSwEWm2dz5wtdDCzNk+7Opl0X7q6I3undsaIuNsEiNvRV3BCtqu14Q/6Pzg1tBj44LcxpW2EpSLZStZw==",
91
91
  "dependencies": [
92
92
  "escape-string-regexp",
@@ -94,7 +94,7 @@
94
94
  "ignore@7.0.5"
95
95
  ]
96
96
  },
97
- "@eslint-community/eslint-utils@4.9.1_eslint@10.5.0": {
97
+ "@eslint-community/eslint-utils@4.9.1_eslint@10.5.0__jiti@2.6.1_jiti@2.6.1": {
98
98
  "integrity": "sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==",
99
99
  "dependencies": [
100
100
  "eslint",
@@ -104,18 +104,18 @@
104
104
  "@eslint-community/regexpp@4.12.2": {
105
105
  "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew=="
106
106
  },
107
- "@eslint-react/ast@5.9.0_eslint@10.5.0_typescript@5.9.3": {
107
+ "@eslint-react/ast@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
108
108
  "integrity": "sha512-D5DmbsEGYYmHOC2J68BRC2iJhYsD4K0x8mllgB08SeSQ0T/nP2BRogg/ohn5ZeRMb87ZDqN6NtGR7G7qTwgOSw==",
109
109
  "dependencies": [
110
110
  "@typescript-eslint/types@8.61.0",
111
111
  "@typescript-eslint/typescript-estree@8.61.0_typescript@5.9.3",
112
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
112
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
113
113
  "eslint",
114
114
  "string-ts",
115
115
  "typescript"
116
116
  ]
117
117
  },
118
- "@eslint-react/core@5.9.0_eslint@10.5.0_typescript@5.9.3": {
118
+ "@eslint-react/core@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
119
119
  "integrity": "sha512-GzARSlLTJT3FY9sUO9bYLoFtgiuUoNKzVv68oJkjAIembiu/6s1vyjs/I/1PEt+pEU6eu5hPjKHJXzd4boSDmQ==",
120
120
  "dependencies": [
121
121
  "@eslint-react/ast",
@@ -125,21 +125,21 @@
125
125
  "@eslint-react/var",
126
126
  "@typescript-eslint/scope-manager@8.61.0",
127
127
  "@typescript-eslint/types@8.61.0",
128
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
128
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
129
129
  "eslint",
130
130
  "ts-pattern",
131
131
  "typescript"
132
132
  ]
133
133
  },
134
- "@eslint-react/eslint@5.9.0_eslint@10.5.0_typescript@5.9.3": {
134
+ "@eslint-react/eslint@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
135
135
  "integrity": "sha512-PEJPNXLjzlpdq2A4+9XlVdYziZPGq7wM+PB8jtmUzurQuZ8dqfCoBiQNuu+8TYMPGet1lUjHhijCO8MM9mEfrg==",
136
136
  "dependencies": [
137
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
137
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
138
138
  "eslint",
139
139
  "typescript"
140
140
  ]
141
141
  },
142
- "@eslint-react/jsx@5.9.0_eslint@10.5.0_typescript@5.9.3": {
142
+ "@eslint-react/jsx@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
143
143
  "integrity": "sha512-dc6hBagLgCt+CSkWSJjbyPDGGcs/J9qHTdymMQrw51bO+DIztQpuy42E42EjOdxWcaw3U0eUtu330nZEcKqGMw==",
144
144
  "dependencies": [
145
145
  "@eslint-react/ast",
@@ -147,31 +147,31 @@
147
147
  "@eslint-react/shared",
148
148
  "@eslint-react/var",
149
149
  "@typescript-eslint/types@8.61.0",
150
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
150
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
151
151
  "eslint",
152
152
  "ts-pattern",
153
153
  "typescript"
154
154
  ]
155
155
  },
156
- "@eslint-react/shared@5.9.0_eslint@10.5.0_typescript@5.9.3": {
156
+ "@eslint-react/shared@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
157
157
  "integrity": "sha512-Ln255YTTUSlONr+e0Lu1wi2X9fTuOlNNJNXTz6PYaNZFAwCNWdlhkzFL8HdIBgPiWPUKrt+OMuah8o0xVoHswA==",
158
158
  "dependencies": [
159
159
  "@eslint-react/eslint",
160
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
160
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
161
161
  "eslint",
162
162
  "ts-pattern",
163
163
  "typescript",
164
164
  "zod"
165
165
  ]
166
166
  },
167
- "@eslint-react/var@5.9.0_eslint@10.5.0_typescript@5.9.3": {
167
+ "@eslint-react/var@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
168
168
  "integrity": "sha512-vNz4y4eFKRYetihXiiZueGgClsyTFhR3kltMDPwoZyJaERdkyeoUylY09OnWakJFitao1+s2eBkSVuFqA8dqrA==",
169
169
  "dependencies": [
170
170
  "@eslint-react/ast",
171
171
  "@eslint-react/eslint",
172
172
  "@typescript-eslint/scope-manager@8.61.0",
173
173
  "@typescript-eslint/types@8.61.0",
174
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
174
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
175
175
  "eslint",
176
176
  "ts-pattern",
177
177
  "typescript"
@@ -197,6 +197,13 @@
197
197
  "@types/json-schema"
198
198
  ]
199
199
  },
200
+ "@eslint/css-tree@4.0.4": {
201
+ "integrity": "sha512-nxMparyhqVWQvadx9x8dIfubfIPOE+X2b2waua8fzdnM9vdp9rgVtwEZlG0TmCwEUz/d/f40fzvO/eqBwdxz0A==",
202
+ "dependencies": [
203
+ "mdn-data",
204
+ "source-map-js"
205
+ ]
206
+ },
200
207
  "@eslint/object-schema@3.0.5": {
201
208
  "integrity": "sha512-vqTaUEgxzm+YDSdElad6PiRoX4t8VGDjCtt05zn4nU810UIx/uNEV7/lZJ6KwFThKZOzOxzXy48da+No7HZaMw=="
202
209
  },
@@ -231,23 +238,6 @@
231
238
  "@tybys/wasm-util"
232
239
  ]
233
240
  },
234
- "@nodelib/fs.scandir@2.1.5": {
235
- "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
236
- "dependencies": [
237
- "@nodelib/fs.stat",
238
- "run-parallel"
239
- ]
240
- },
241
- "@nodelib/fs.stat@2.0.5": {
242
- "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A=="
243
- },
244
- "@nodelib/fs.walk@1.2.8": {
245
- "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
246
- "dependencies": [
247
- "@nodelib/fs.scandir",
248
- "fastq"
249
- ]
250
- },
251
241
  "@package-json/types@0.0.12": {
252
242
  "integrity": "sha512-uu43FGU34B5VM9mCNjXCwLaGHYjXdNincqKLaraaCW+7S2+SmiBg1Nv8bPnmschrIfZmfKNY9f3fC376MRrObw=="
253
243
  },
@@ -260,7 +250,7 @@
260
250
  "@sindresorhus/base62@1.0.0": {
261
251
  "integrity": "sha512-TeheYy0ILzBEI/CO55CP6zJCSdSWeRtGnHy8U8dWSUH4I68iqTsy7HkMktR4xakThc9jotkPQUXT4ITdbV7cHA=="
262
252
  },
263
- "@stylistic/eslint-plugin@5.10.0_eslint@10.5.0": {
253
+ "@stylistic/eslint-plugin@5.10.0_eslint@10.5.0__jiti@2.6.1": {
264
254
  "integrity": "sha512-nPK52ZHvot8Ju/0A4ucSX1dcPV2/1clx0kLcH5wDmrE4naKso7TUC/voUyU1O9OTKTrR6MYip6LP0ogEMQ9jPQ==",
265
255
  "dependencies": [
266
256
  "@eslint-community/eslint-utils",
@@ -269,7 +259,7 @@
269
259
  "eslint-visitor-keys@4.2.1",
270
260
  "espree@10.4.0",
271
261
  "estraverse",
272
- "picomatch@4.0.3"
262
+ "picomatch"
273
263
  ]
274
264
  },
275
265
  "@tybys/wasm-util@0.10.1": {
@@ -287,7 +277,7 @@
287
277
  "@types/json-schema@7.0.15": {
288
278
  "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="
289
279
  },
290
- "@typescript-eslint/parser@8.57.1_eslint@10.5.0_typescript@5.9.3": {
280
+ "@typescript-eslint/parser@8.57.1_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
291
281
  "integrity": "sha512-k4eNDan0EIMTT/dUKc/g+rsJ6wcHYhNPdY19VoX/EOtaAG8DLtKCykhrUnuHPYvinn5jhAPgD2Qw9hXBwrahsw==",
292
282
  "dependencies": [
293
283
  "@typescript-eslint/scope-manager@8.57.1",
@@ -299,7 +289,7 @@
299
289
  "typescript"
300
290
  ]
301
291
  },
302
- "@typescript-eslint/parser@8.61.0_eslint@10.5.0_typescript@5.9.3": {
292
+ "@typescript-eslint/parser@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
303
293
  "integrity": "sha512-5B7PfA2e1NQGCnDHd/0lW7W3gvp3d59Ryw54FYO8Uswxo9f6ikw3AZV+Xj/TvpImmpsiYyUqAfhC6kJID1jF6w==",
304
294
  "dependencies": [
305
295
  "@typescript-eslint/scope-manager@8.61.0",
@@ -327,12 +317,12 @@
327
317
  "typescript"
328
318
  ]
329
319
  },
330
- "@typescript-eslint/rule-tester@8.57.1_eslint@10.5.0": {
320
+ "@typescript-eslint/rule-tester@8.57.1_eslint@10.5.0__jiti@2.6.1": {
331
321
  "integrity": "sha512-gk0q0rLa7a1uEB0iD2t1GZELK1z6HfudiKYeSVhjQ5gW5FdL0OcZ+8f09Lg7NbmHSBF3V+S9BDuw0qoCFkHR+w==",
332
322
  "dependencies": [
333
- "@typescript-eslint/parser@8.57.1_eslint@10.5.0_typescript@5.9.3",
323
+ "@typescript-eslint/parser@8.57.1_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
334
324
  "@typescript-eslint/typescript-estree@8.57.1_typescript@5.9.3",
335
- "@typescript-eslint/utils@8.57.1_eslint@10.5.0_typescript@5.9.3",
325
+ "@typescript-eslint/utils@8.57.1_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
336
326
  "ajv",
337
327
  "eslint",
338
328
  "json-stable-stringify-without-jsonify",
@@ -365,12 +355,12 @@
365
355
  "typescript"
366
356
  ]
367
357
  },
368
- "@typescript-eslint/type-utils@8.61.0_eslint@10.5.0_typescript@5.9.3": {
358
+ "@typescript-eslint/type-utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
369
359
  "integrity": "sha512-TuBiQYIkd97yBfInHCTKVYMbX4kvEmpOEuixIuzCU9p8BGT1SfyyO0d0IfDMbPIHcjn/hWnusUX5e8v5Xg+X8A==",
370
360
  "dependencies": [
371
361
  "@typescript-eslint/types@8.61.0",
372
362
  "@typescript-eslint/typescript-estree@8.61.0_typescript@5.9.3",
373
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
363
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
374
364
  "debug",
375
365
  "eslint",
376
366
  "ts-api-utils",
@@ -410,7 +400,7 @@
410
400
  "typescript"
411
401
  ]
412
402
  },
413
- "@typescript-eslint/utils@8.57.1_eslint@10.5.0_typescript@5.9.3": {
403
+ "@typescript-eslint/utils@8.57.1_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
414
404
  "integrity": "sha512-XUNSJ/lEVFttPMMoDVA2r2bwrl8/oPx8cURtczkSEswY5T3AeLmCy+EKWQNdL4u0MmAHOjcWrqJp2cdvgjn8dQ==",
415
405
  "dependencies": [
416
406
  "@eslint-community/eslint-utils",
@@ -421,7 +411,7 @@
421
411
  "typescript"
422
412
  ]
423
413
  },
424
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3": {
414
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
425
415
  "integrity": "sha512-3bzFt7ImFMW/jVYwJamDoe/dMOdFLSC6pom6rRjdh4SZJEYupyMzem8e7vKZLclLfpHjlwSAXOUxtKxGXUiLqA==",
426
416
  "dependencies": [
427
417
  "@eslint-community/eslint-utils",
@@ -543,6 +533,12 @@
543
533
  "os": ["win32"],
544
534
  "cpu": ["x64"]
545
535
  },
536
+ "@valibot/to-json-schema@1.7.1_valibot@1.4.0": {
537
+ "integrity": "sha512-3qkmU6KXWh8GIThEAW3kuRHPQBMjWkKy+Ppz3WkUucx53DTpOa6siMn4xDGSOhlVyMrDaJTCTMLYPZVAIk1P0A==",
538
+ "dependencies": [
539
+ "valibot"
540
+ ]
541
+ },
546
542
  "acorn-jsx@5.3.2_acorn@8.17.0": {
547
543
  "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
548
544
  "dependencies": [
@@ -562,6 +558,12 @@
562
558
  "uri-js"
563
559
  ]
564
560
  },
561
+ "ansi-styles@4.3.0": {
562
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
563
+ "dependencies": [
564
+ "color-convert"
565
+ ]
566
+ },
565
567
  "are-docs-informative@0.0.2": {
566
568
  "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig=="
567
569
  },
@@ -581,12 +583,6 @@
581
583
  "balanced-match"
582
584
  ]
583
585
  },
584
- "braces@3.0.3": {
585
- "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
586
- "dependencies": [
587
- "fill-range"
588
- ]
589
- },
590
586
  "browserslist@4.28.2": {
591
587
  "integrity": "sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==",
592
588
  "dependencies": [
@@ -610,12 +606,28 @@
610
606
  "caniuse-lite@1.0.30001799": {
611
607
  "integrity": "sha512-hG1bReV+OUU+MOqK4t/ZWI0tZOyz3rqS9XuhOUz1cIcbwBKjOyJEJuw9ER5JuNyqxNk8u/JUVbGibBOL1yrjFw=="
612
608
  },
609
+ "chalk@4.1.2": {
610
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
611
+ "dependencies": [
612
+ "ansi-styles",
613
+ "supports-color"
614
+ ]
615
+ },
613
616
  "change-case@5.4.4": {
614
617
  "integrity": "sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w=="
615
618
  },
616
619
  "ci-info@4.4.0": {
617
620
  "integrity": "sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg=="
618
621
  },
622
+ "color-convert@2.0.1": {
623
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
624
+ "dependencies": [
625
+ "color-name"
626
+ ]
627
+ },
628
+ "color-name@1.1.4": {
629
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
630
+ },
619
631
  "comment-parser@1.4.5": {
620
632
  "integrity": "sha512-aRDkn3uyIlCFfk5NUA+VdwMmMsh8JGhc4hapfV4yxymHGQ3BVskMQfoXGpCo5IoBuQ9tS5iiVKhCpTcB4pW4qw=="
621
633
  },
@@ -625,12 +637,6 @@
625
637
  "compare-versions@6.1.1": {
626
638
  "integrity": "sha512-4hm4VPpIecmlg59CHXnRDnqGplJFrbLG4aFEl5vl6cK1u76ws3LLvX7ikFnTDl5vo39sjWD6AaDPYodJp/NNHg=="
627
639
  },
628
- "confbox@0.1.8": {
629
- "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w=="
630
- },
631
- "confbox@0.2.4": {
632
- "integrity": "sha512-ysOGlgTFbN2/Y6Cg3Iye8YKulHw+R2fNXHrgSmXISQdMnomY6eNDprVdW9R5xBguEqI954+S6709UyiO7B+6OQ=="
633
- },
634
640
  "core-js-compat@3.49.0": {
635
641
  "integrity": "sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA==",
636
642
  "dependencies": [
@@ -687,7 +693,7 @@
687
693
  "unrs-resolver"
688
694
  ]
689
695
  },
690
- "eslint-import-resolver-typescript@4.4.5_eslint@10.5.0_eslint-plugin-import-x@4.16.2__eslint@10.5.0": {
696
+ "eslint-import-resolver-typescript@4.4.5_eslint@10.5.0__jiti@2.6.1_eslint-plugin-import-x@4.16.2__eslint@10.5.0___jiti@2.6.1": {
691
697
  "integrity": "sha512-nbE5XLph6TLtGYcu/U6e6ZVXyKBhbDWK5cLGk76eJ7NdZpwf1P9EFkpt1Z01mNZNrrilsAYWKH6zUkL4reoXbw==",
692
698
  "dependencies": [
693
699
  "debug",
@@ -704,7 +710,25 @@
704
710
  "eslint-plugin-import-x"
705
711
  ]
706
712
  },
707
- "eslint-plugin-command@3.5.2_eslint@10.5.0": {
713
+ "eslint-plugin-better-tailwindcss@4.6.0_eslint@10.5.0__jiti@2.6.1_tailwindcss@4.3.1": {
714
+ "integrity": "sha512-Xeh/6KzLeays6jXSqTKx6iCdJL1qo5ant/mAabbz7dJqADYebKUUPR2zXp1xuiqqJ3HIm+MN+Ql2m4Jp0BxkMQ==",
715
+ "dependencies": [
716
+ "@eslint/css-tree",
717
+ "@valibot/to-json-schema",
718
+ "enhanced-resolve",
719
+ "eslint",
720
+ "jiti",
721
+ "synckit@0.11.12",
722
+ "tailwind-csstree",
723
+ "tailwindcss",
724
+ "tsconfig-paths-webpack-plugin",
725
+ "valibot"
726
+ ],
727
+ "optionalPeers": [
728
+ "eslint"
729
+ ]
730
+ },
731
+ "eslint-plugin-command@3.5.2_eslint@10.5.0__jiti@2.6.1": {
708
732
  "integrity": "sha512-PA59QAkQDwvcCMEt5lYLJLI3zDGVKJeC4id/pcRY2XdRYhSGW7iyYT1VC1N3bmpuvu6Qb/9QptiS3GJMjeGTJg==",
709
733
  "dependencies": [
710
734
  "@es-joy/jsdoccomment@0.84.0",
@@ -712,7 +736,7 @@
712
736
  "eslint"
713
737
  ]
714
738
  },
715
- "eslint-plugin-depend@1.5.0_eslint@10.5.0": {
739
+ "eslint-plugin-depend@1.5.0_eslint@10.5.0__jiti@2.6.1": {
716
740
  "integrity": "sha512-i3UeLYmclf1Icp35+6W7CR4Bp2PIpDgBuf/mpmXK5UeLkZlvYJ21VuQKKHHAIBKRTPivPGX/gZl5JGno1o9Y0A==",
717
741
  "dependencies": [
718
742
  "empathic",
@@ -721,7 +745,7 @@
721
745
  "semver"
722
746
  ]
723
747
  },
724
- "eslint-plugin-import-x@4.16.2_eslint@10.5.0": {
748
+ "eslint-plugin-import-x@4.16.2_eslint@10.5.0__jiti@2.6.1": {
725
749
  "integrity": "sha512-rM9K8UBHcWKpzQzStn1YRN2T5NvdeIfSVoKu/lKF41znQXHAUcBbYXe5wd6GNjZjTrP7viQ49n1D83x/2gYgIw==",
726
750
  "dependencies": [
727
751
  "@package-json/types",
@@ -737,7 +761,7 @@
737
761
  "unrs-resolver"
738
762
  ]
739
763
  },
740
- "eslint-plugin-jsdoc@63.0.2_eslint@10.5.0": {
764
+ "eslint-plugin-jsdoc@63.0.2_eslint@10.5.0__jiti@2.6.1": {
741
765
  "integrity": "sha512-0TchoK1uS4VxHSo3P4CyWQ31Lm+6zsT+xkHMC5KbFKwgOf8YrXPf1Bl8EP7kpgw1wfe/Ui5jz5mSX7ou8WAVuw==",
742
766
  "dependencies": [
743
767
  "@es-joy/jsdoccomment@0.87.0",
@@ -757,28 +781,28 @@
757
781
  "to-valid-identifier"
758
782
  ]
759
783
  },
760
- "eslint-plugin-no-secrets@2.3.3_eslint@10.5.0": {
784
+ "eslint-plugin-no-secrets@2.3.3_eslint@10.5.0__jiti@2.6.1": {
761
785
  "integrity": "sha512-sroCsCscpwQxZ/O9Ml69w5qt/2nvHhXDeyUnSqSC5dMANGxt4rQgUn7xbPvDmhbMPmUCAc2Y3SRU0cXet7kNWQ==",
762
786
  "dependencies": [
763
787
  "eslint"
764
788
  ]
765
789
  },
766
- "eslint-plugin-perfectionist@5.9.0_eslint@10.5.0_typescript@5.9.3": {
790
+ "eslint-plugin-perfectionist@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
767
791
  "integrity": "sha512-8TWzg02zmnBdZwCkWLi8jhzqXI+fE7Z/RwV8SL6xD45tJ8Bp3wGuYL2XtQgfe/Wd0eBqOUX+s6ey73IyszvKTA==",
768
792
  "dependencies": [
769
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
793
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
770
794
  "eslint",
771
795
  "natural-orderby"
772
796
  ]
773
797
  },
774
- "eslint-plugin-promise@7.3.0_eslint@10.5.0": {
798
+ "eslint-plugin-promise@7.3.0_eslint@10.5.0__jiti@2.6.1": {
775
799
  "integrity": "sha512-6uGiOR0INuujr6PEQmeSSP7GbIMJ/ebEXXiEzb/nOj68LknH5Pxzb/AbZivmr6VE6TkTE8rTjRK9zhKpK6HsRA==",
776
800
  "dependencies": [
777
801
  "@eslint-community/eslint-utils",
778
802
  "eslint"
779
803
  ]
780
804
  },
781
- "eslint-plugin-react-dom@5.9.0_eslint@10.5.0_typescript@5.9.3": {
805
+ "eslint-plugin-react-dom@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
782
806
  "integrity": "sha512-gBlV304swaW2S0MqVFkQhii0C+KAy2WmxFtVtho39h5GzWdjKjNIxdUdOPQvLAFd7B1/lkbJflqGQKf6sjWGTg==",
783
807
  "dependencies": [
784
808
  "@eslint-react/ast",
@@ -786,13 +810,13 @@
786
810
  "@eslint-react/jsx",
787
811
  "@eslint-react/shared",
788
812
  "@typescript-eslint/types@8.61.0",
789
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
813
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
790
814
  "compare-versions",
791
815
  "eslint",
792
816
  "typescript"
793
817
  ]
794
818
  },
795
- "eslint-plugin-react-jsx@5.9.0_eslint@10.5.0_typescript@5.9.3": {
819
+ "eslint-plugin-react-jsx@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
796
820
  "integrity": "sha512-K/8RtAb8GDuhoIsR+Feo5Cr57Ts1N2juekocxk9TuF3azx2bCOuHiuU/rqMStMWi5oLTPrg2XqquD2LeS7x6iQ==",
797
821
  "dependencies": [
798
822
  "@eslint-react/ast",
@@ -801,12 +825,12 @@
801
825
  "@eslint-react/jsx",
802
826
  "@eslint-react/shared",
803
827
  "@typescript-eslint/types@8.61.0",
804
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
828
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
805
829
  "eslint",
806
830
  "typescript"
807
831
  ]
808
832
  },
809
- "eslint-plugin-react-naming-convention@5.9.0_eslint@10.5.0_typescript@5.9.3": {
833
+ "eslint-plugin-react-naming-convention@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
810
834
  "integrity": "sha512-0VYdfPXZZLDiNzvp8DmgYFwZ+vO8pljU0Pcr83/Hj8PSilF4kL2rZWh4fkh+IVQv8iIpIv7HLRbBD/nU/QSh+w==",
811
835
  "dependencies": [
812
836
  "@eslint-react/ast",
@@ -814,13 +838,13 @@
814
838
  "@eslint-react/eslint",
815
839
  "@eslint-react/var",
816
840
  "@typescript-eslint/types@8.61.0",
817
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
841
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
818
842
  "eslint",
819
843
  "ts-pattern",
820
844
  "typescript"
821
845
  ]
822
846
  },
823
- "eslint-plugin-react-rsc@5.9.0_eslint@10.5.0_typescript@5.9.3": {
847
+ "eslint-plugin-react-rsc@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
824
848
  "integrity": "sha512-hcP7lTqV5JNx8QpmMKric50IBEuFwj5mlM7cyaYB/2UWJaaQvScywHeg/CRZrDauFxkIVx9JXcORBqW+h7VGdQ==",
825
849
  "dependencies": [
826
850
  "@eslint-react/ast",
@@ -829,12 +853,12 @@
829
853
  "@eslint-react/shared",
830
854
  "@eslint-react/var",
831
855
  "@typescript-eslint/types@8.61.0",
832
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
856
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
833
857
  "eslint",
834
858
  "typescript"
835
859
  ]
836
860
  },
837
- "eslint-plugin-react-web-api@5.9.0_eslint@10.5.0_typescript@5.9.3": {
861
+ "eslint-plugin-react-web-api@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
838
862
  "integrity": "sha512-AlKMpAFHbgJ10hcTIw80NXzEPKxB1zugA98joPnMKDSuf/wScoWGwl5X6SmigVn4KChPBudYchdN0OrBUqO02g==",
839
863
  "dependencies": [
840
864
  "@eslint-react/ast",
@@ -843,14 +867,14 @@
843
867
  "@eslint-react/shared",
844
868
  "@eslint-react/var",
845
869
  "@typescript-eslint/types@8.61.0",
846
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
870
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
847
871
  "birecord",
848
872
  "eslint",
849
873
  "ts-pattern",
850
874
  "typescript"
851
875
  ]
852
876
  },
853
- "eslint-plugin-react-x@5.9.0_eslint@10.5.0_typescript@5.9.3": {
877
+ "eslint-plugin-react-x@5.9.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3": {
854
878
  "integrity": "sha512-urgjMTtZpUzhkFBbQqp4+vdFhQmSkgeLnpq1h/2gemnzKjiMpDa9cCbo1vhjHnYQLzU6YRbxJ1hhqVv+9nXbjw==",
855
879
  "dependencies": [
856
880
  "@eslint-react/ast",
@@ -863,7 +887,7 @@
863
887
  "@typescript-eslint/type-utils",
864
888
  "@typescript-eslint/types@8.61.0",
865
889
  "@typescript-eslint/typescript-estree@8.61.0_typescript@5.9.3",
866
- "@typescript-eslint/utils@8.61.0_eslint@10.5.0_typescript@5.9.3",
890
+ "@typescript-eslint/utils@8.61.0_eslint@10.5.0__jiti@2.6.1_typescript@5.9.3",
867
891
  "compare-versions",
868
892
  "eslint",
869
893
  "string-ts",
@@ -872,14 +896,14 @@
872
896
  "typescript"
873
897
  ]
874
898
  },
875
- "eslint-plugin-redos@4.5.0_eslint@10.5.0": {
899
+ "eslint-plugin-redos@4.5.0_eslint@10.5.0__jiti@2.6.1": {
876
900
  "integrity": "sha512-MwEEpFRmt7MWoqLCdAgN2DyOKnIVzRm3bqCUIQc/+iMJhkRxDCZ+wYQpkaYAZzemDlqUGGQ+twL3AahTNQtqFA==",
877
901
  "dependencies": [
878
902
  "eslint",
879
903
  "recheck"
880
904
  ]
881
905
  },
882
- "eslint-plugin-regexp@3.1.0_eslint@10.5.0": {
906
+ "eslint-plugin-regexp@3.1.0_eslint@10.5.0__jiti@2.6.1": {
883
907
  "integrity": "sha512-qGXIC3DIKZHcK1H9A9+Byz9gmndY6TTSRkSMTZpNXdyCw2ObSehRgccJv35n9AdUakEjQp5VFNLas6BMXizCZg==",
884
908
  "dependencies": [
885
909
  "@eslint-community/eslint-utils",
@@ -898,7 +922,7 @@
898
922
  "safe-regex"
899
923
  ]
900
924
  },
901
- "eslint-plugin-sonarjs@4.0.3_eslint@10.5.0": {
925
+ "eslint-plugin-sonarjs@4.0.3_eslint@10.5.0__jiti@2.6.1": {
902
926
  "integrity": "sha512-5drkJKLC9qQddIiaATV0e8+ygbUc7b0Ti6VB7M2d3jmKNh3X0RaiIJYTs3dr9xnlhlrxo+/s1FoO3Jgv6O/c7g==",
903
927
  "dependencies": [
904
928
  "@eslint-community/regexpp",
@@ -916,17 +940,7 @@
916
940
  "typescript"
917
941
  ]
918
942
  },
919
- "eslint-plugin-tailwindcss@4.0.0-beta.0_tailwindcss@4.2.1": {
920
- "integrity": "sha512-WWCajZgQu38Sd67ZCl2W6i3MRzqB0d+H8s4qV9iB6lBJbsDOIpIlj6R1Fj2FXkoWErbo05pZnZYbCGIU9o/DsA==",
921
- "dependencies": [
922
- "fast-glob",
923
- "postcss",
924
- "synckit@0.11.12",
925
- "tailwind-api-utils",
926
- "tailwindcss"
927
- ]
928
- },
929
- "eslint-plugin-unicorn@65.0.1_eslint@10.5.0": {
943
+ "eslint-plugin-unicorn@65.0.1_eslint@10.5.0__jiti@2.6.1": {
930
944
  "integrity": "sha512-daCrQrgxOoOz2uMPWB3Y3vvv/5q+ncwICI8IjoebiwtW87CaY4tAN5EEiRXTYVnf7qi1v1BGBdHOSnZLV0rx6A==",
931
945
  "dependencies": [
932
946
  "@babel/helper-validator-identifier",
@@ -965,7 +979,7 @@
965
979
  "eslint-visitor-keys@5.0.1": {
966
980
  "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA=="
967
981
  },
968
- "eslint@10.5.0": {
982
+ "eslint@10.5.0_jiti@2.6.1": {
969
983
  "integrity": "sha512-1y+7C+vi12bUK1IpZeaV3gsH9fHLBmPvYmPx42pvT/E9yG0IC8g3PUZZgp0+JLJl7ZDK0flc2gc+Aw9dpCvIsQ==",
970
984
  "dependencies": [
971
985
  "@eslint-community/eslint-utils",
@@ -990,15 +1004,19 @@
990
1004
  "fast-deep-equal",
991
1005
  "file-entry-cache",
992
1006
  "find-up",
993
- "glob-parent@6.0.2",
1007
+ "glob-parent",
994
1008
  "ignore@5.3.2",
995
1009
  "imurmurhash",
996
1010
  "is-glob",
1011
+ "jiti",
997
1012
  "json-stable-stringify-without-jsonify",
998
1013
  "minimatch",
999
1014
  "natural-compare",
1000
1015
  "optionator"
1001
1016
  ],
1017
+ "optionalPeers": [
1018
+ "jiti"
1019
+ ],
1002
1020
  "bin": true
1003
1021
  },
1004
1022
  "espree@10.4.0": {
@@ -1035,41 +1053,22 @@
1035
1053
  "esutils@2.0.3": {
1036
1054
  "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g=="
1037
1055
  },
1038
- "exsolve@1.0.8": {
1039
- "integrity": "sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA=="
1040
- },
1041
1056
  "fast-deep-equal@3.1.3": {
1042
1057
  "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
1043
1058
  },
1044
- "fast-glob@3.3.3": {
1045
- "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==",
1046
- "dependencies": [
1047
- "@nodelib/fs.stat",
1048
- "@nodelib/fs.walk",
1049
- "glob-parent@5.1.2",
1050
- "merge2",
1051
- "micromatch"
1052
- ]
1053
- },
1054
1059
  "fast-json-stable-stringify@2.1.0": {
1055
1060
  "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw=="
1056
1061
  },
1057
1062
  "fast-levenshtein@2.0.6": {
1058
1063
  "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw=="
1059
1064
  },
1060
- "fastq@1.20.1": {
1061
- "integrity": "sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==",
1062
- "dependencies": [
1063
- "reusify"
1064
- ]
1065
- },
1066
1065
  "fdir@6.5.0_picomatch@4.0.3": {
1067
1066
  "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==",
1068
1067
  "dependencies": [
1069
- "picomatch@4.0.3"
1068
+ "picomatch"
1070
1069
  ],
1071
1070
  "optionalPeers": [
1072
- "picomatch@4.0.3"
1071
+ "picomatch"
1073
1072
  ]
1074
1073
  },
1075
1074
  "file-entry-cache@8.0.0": {
@@ -1078,12 +1077,6 @@
1078
1077
  "flat-cache"
1079
1078
  ]
1080
1079
  },
1081
- "fill-range@7.1.1": {
1082
- "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
1083
- "dependencies": [
1084
- "to-regex-range"
1085
- ]
1086
- },
1087
1080
  "find-up-simple@1.0.1": {
1088
1081
  "integrity": "sha512-afd4O7zpqHeRyg4PfDQsXmlDe2PfdHtJt6Akt8jOWaApLOZk5JXs6VMR29lz03pRe9mpykrRCYIYxaJYcfpncQ=="
1089
1082
  },
@@ -1113,12 +1106,6 @@
1113
1106
  "resolve-pkg-maps"
1114
1107
  ]
1115
1108
  },
1116
- "glob-parent@5.1.2": {
1117
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
1118
- "dependencies": [
1119
- "is-glob"
1120
- ]
1121
- },
1122
1109
  "glob-parent@6.0.2": {
1123
1110
  "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
1124
1111
  "dependencies": [
@@ -1131,6 +1118,9 @@
1131
1118
  "graceful-fs@4.2.11": {
1132
1119
  "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
1133
1120
  },
1121
+ "has-flag@4.0.0": {
1122
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
1123
+ },
1134
1124
  "html-entities@2.6.0": {
1135
1125
  "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ=="
1136
1126
  },
@@ -1167,9 +1157,6 @@
1167
1157
  "is-extglob"
1168
1158
  ]
1169
1159
  },
1170
- "is-number@7.0.0": {
1171
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
1172
- },
1173
1160
  "isexe@2.0.0": {
1174
1161
  "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="
1175
1162
  },
@@ -1196,6 +1183,10 @@
1196
1183
  "json-stable-stringify-without-jsonify@1.0.1": {
1197
1184
  "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw=="
1198
1185
  },
1186
+ "json5@2.2.3": {
1187
+ "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
1188
+ "bin": true
1189
+ },
1199
1190
  "jsx-ast-utils-x@0.1.0": {
1200
1191
  "integrity": "sha512-eQQBjBnsVtGacsG9uJNB8qOr3yA8rga4wAaGG1qRcBzSIvfhERLrWxMAM1hp5fcS6Abo8M4+bUBTekYR0qTPQw=="
1201
1192
  },
@@ -1212,14 +1203,6 @@
1212
1203
  "type-check"
1213
1204
  ]
1214
1205
  },
1215
- "local-pkg@1.1.2": {
1216
- "integrity": "sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A==",
1217
- "dependencies": [
1218
- "mlly",
1219
- "pkg-types@2.3.0",
1220
- "quansync"
1221
- ]
1222
- },
1223
1206
  "locate-path@6.0.0": {
1224
1207
  "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
1225
1208
  "dependencies": [
@@ -1229,15 +1212,8 @@
1229
1212
  "lodash.merge@4.6.2": {
1230
1213
  "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
1231
1214
  },
1232
- "merge2@1.4.1": {
1233
- "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg=="
1234
- },
1235
- "micromatch@4.0.8": {
1236
- "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
1237
- "dependencies": [
1238
- "braces",
1239
- "picomatch@2.3.1"
1240
- ]
1215
+ "mdn-data@2.28.1": {
1216
+ "integrity": "sha512-U9w+PzSZ00Z5m9rZ5ARVFL5xOfuCHdKYi/1RRwDCJsboFgJDNT3zT6PIPD7mZQYaQLhsZM3GfDRgSMRHhSmVng=="
1241
1217
  },
1242
1218
  "minimatch@10.2.5": {
1243
1219
  "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==",
@@ -1245,14 +1221,8 @@
1245
1221
  "brace-expansion"
1246
1222
  ]
1247
1223
  },
1248
- "mlly@1.8.1": {
1249
- "integrity": "sha512-SnL6sNutTwRWWR/vcmCYHSADjiEesp5TGQQ0pXyLhW5IoeibRlF/CbSLailbB3CNqJUk9cVJ9dUDnbD7GrcHBQ==",
1250
- "dependencies": [
1251
- "acorn",
1252
- "pathe",
1253
- "pkg-types@1.3.1",
1254
- "ufo"
1255
- ]
1224
+ "minimist@1.2.8": {
1225
+ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA=="
1256
1226
  },
1257
1227
  "module-replacements@2.11.0": {
1258
1228
  "integrity": "sha512-j5sNQm3VCpQQ7nTqGeOZtoJtV3uKERgCBm9QRhmGRiXiqkf7iRFOkfxdJRZWLkqYY8PNf4cDQF/WfXUYLENrRA=="
@@ -1260,10 +1230,6 @@
1260
1230
  "ms@2.1.3": {
1261
1231
  "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
1262
1232
  },
1263
- "nanoid@3.3.11": {
1264
- "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
1265
- "bin": true
1266
- },
1267
1233
  "napi-postinstall@0.3.4": {
1268
1234
  "integrity": "sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==",
1269
1235
  "bin": true
@@ -1318,57 +1284,21 @@
1318
1284
  "path-key@3.1.1": {
1319
1285
  "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q=="
1320
1286
  },
1321
- "pathe@2.0.3": {
1322
- "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w=="
1323
- },
1324
1287
  "picocolors@1.1.1": {
1325
1288
  "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="
1326
1289
  },
1327
- "picomatch@2.3.1": {
1328
- "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="
1329
- },
1330
1290
  "picomatch@4.0.3": {
1331
1291
  "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q=="
1332
1292
  },
1333
- "pkg-types@1.3.1": {
1334
- "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==",
1335
- "dependencies": [
1336
- "confbox@0.1.8",
1337
- "mlly",
1338
- "pathe"
1339
- ]
1340
- },
1341
- "pkg-types@2.3.0": {
1342
- "integrity": "sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==",
1343
- "dependencies": [
1344
- "confbox@0.2.4",
1345
- "exsolve",
1346
- "pathe"
1347
- ]
1348
- },
1349
1293
  "pluralize@8.0.0": {
1350
1294
  "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA=="
1351
1295
  },
1352
- "postcss@8.5.8": {
1353
- "integrity": "sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==",
1354
- "dependencies": [
1355
- "nanoid",
1356
- "picocolors",
1357
- "source-map-js"
1358
- ]
1359
- },
1360
1296
  "prelude-ls@1.2.1": {
1361
1297
  "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g=="
1362
1298
  },
1363
1299
  "punycode@2.3.1": {
1364
1300
  "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg=="
1365
1301
  },
1366
- "quansync@0.2.11": {
1367
- "integrity": "sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA=="
1368
- },
1369
- "queue-microtask@1.2.3": {
1370
- "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A=="
1371
- },
1372
1302
  "recheck-jar@4.5.0": {
1373
1303
  "integrity": "sha512-Ad7oCQmY8cQLzd3QVNXjzZ+S6MbImGhR4AaW2yiGzteOfMV45522rt6nSzFyt8p3mCEaMcm/4MoZrMSxUcCbrA=="
1374
1304
  },
@@ -1435,15 +1365,6 @@
1435
1365
  "resolve-pkg-maps@1.0.0": {
1436
1366
  "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw=="
1437
1367
  },
1438
- "reusify@1.1.0": {
1439
- "integrity": "sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw=="
1440
- },
1441
- "run-parallel@1.2.0": {
1442
- "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
1443
- "dependencies": [
1444
- "queue-microtask"
1445
- ]
1446
- },
1447
1368
  "safe-regex@2.1.1": {
1448
1369
  "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==",
1449
1370
  "dependencies": [
@@ -1493,9 +1414,18 @@
1493
1414
  "string-ts@2.3.1": {
1494
1415
  "integrity": "sha512-xSJq+BS52SaFFAVxuStmx6n5aYZU571uYUnUrPXkPFCfdHyZMMlbP2v2Wx5sNBnAVzq/2+0+mcBLBa3Xa5ubYw=="
1495
1416
  },
1417
+ "strip-bom@3.0.0": {
1418
+ "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA=="
1419
+ },
1496
1420
  "strip-indent@4.1.1": {
1497
1421
  "integrity": "sha512-SlyRoSkdh1dYP0PzclLE7r0M9sgbFKKMFXpFRUMNuKhQSbC6VQIGzq3E0qsfvGJaUFJPGv6Ws1NZ/haTAjfbMA=="
1498
1422
  },
1423
+ "supports-color@7.2.0": {
1424
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
1425
+ "dependencies": [
1426
+ "has-flag"
1427
+ ]
1428
+ },
1499
1429
  "synckit@0.11.12": {
1500
1430
  "integrity": "sha512-Bh7QjT8/SuKUIfObSXNHNSK6WHo6J1tHCqJsuaFDP7gP0fkzSfTxI8y85JrppZ0h8l0maIgc2tfuZQ6/t3GtnQ==",
1501
1431
  "dependencies": [
@@ -1509,17 +1439,11 @@
1509
1439
  "tslib"
1510
1440
  ]
1511
1441
  },
1512
- "tailwind-api-utils@1.0.3_tailwindcss@4.2.1": {
1513
- "integrity": "sha512-KpzUHkH1ug1sq4394SLJX38ZtpeTiqQ1RVyFTTSY2XuHsNSTWUkRo108KmyyrMWdDbQrLYkSHaNKj/a3bmA4sQ==",
1514
- "dependencies": [
1515
- "enhanced-resolve",
1516
- "jiti",
1517
- "local-pkg",
1518
- "tailwindcss"
1519
- ]
1442
+ "tailwind-csstree@0.3.3": {
1443
+ "integrity": "sha512-je9J5UYRsTJqAjYrIBMMlge8T/rreRd44pJxgG5Zx/zeo4kAC/liUKqzztRZrGlYRJLvIf2Cb1DVJMTXSzEShA=="
1520
1444
  },
1521
- "tailwindcss@4.2.1": {
1522
- "integrity": "sha512-/tBrSQ36vCleJkAOsy9kbNTgaxvGbyOamC30PRePTQe/o1MFwEKHQk4Cn7BNGaPtjp+PuUrByJehM1hgxfq4sw=="
1445
+ "tailwindcss@4.3.1": {
1446
+ "integrity": "sha512-hk+TB1m+K8CYNrP6rjQaq/Y+4Zylwpa87mLYBKCunwnnQ9p+fHb7kmSfGqyEJoxF/O6CDyABWVFEafNSYKll+Q=="
1523
1447
  },
1524
1448
  "tapable@2.3.0": {
1525
1449
  "integrity": "sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg=="
@@ -1528,13 +1452,7 @@
1528
1452
  "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==",
1529
1453
  "dependencies": [
1530
1454
  "fdir",
1531
- "picomatch@4.0.3"
1532
- ]
1533
- },
1534
- "to-regex-range@5.0.1": {
1535
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
1536
- "dependencies": [
1537
- "is-number"
1455
+ "picomatch"
1538
1456
  ]
1539
1457
  },
1540
1458
  "to-valid-identifier@1.0.0": {
@@ -1553,6 +1471,23 @@
1553
1471
  "ts-pattern@5.9.0": {
1554
1472
  "integrity": "sha512-6s5V71mX8qBUmlgbrfL33xDUwO0fq48rxAu2LBE11WBeGdpCPOsXksQbZJHvHwhrd3QjUusd3mAOM5Gg0mFBLg=="
1555
1473
  },
1474
+ "tsconfig-paths-webpack-plugin@4.2.0": {
1475
+ "integrity": "sha512-zbem3rfRS8BgeNK50Zz5SIQgXzLafiHjOwUAvk/38/o1jHn/V5QAgVUcz884or7WYcPaH3N2CIfUc2u0ul7UcA==",
1476
+ "dependencies": [
1477
+ "chalk",
1478
+ "enhanced-resolve",
1479
+ "tapable",
1480
+ "tsconfig-paths"
1481
+ ]
1482
+ },
1483
+ "tsconfig-paths@4.2.0": {
1484
+ "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==",
1485
+ "dependencies": [
1486
+ "json5",
1487
+ "minimist",
1488
+ "strip-bom"
1489
+ ]
1490
+ },
1556
1491
  "tslib@2.8.1": {
1557
1492
  "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
1558
1493
  },
@@ -1566,9 +1501,6 @@
1566
1501
  "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
1567
1502
  "bin": true
1568
1503
  },
1569
- "ufo@1.6.3": {
1570
- "integrity": "sha512-yDJTmhydvl5lJzBmy/hyOAA0d+aqCBuwl818haVdYCRrWV84o7YyeVm4QlVHStqNrrJSTb6jKuFAVqAFsr+K3Q=="
1571
- },
1572
1504
  "unrs-resolver@1.11.1": {
1573
1505
  "integrity": "sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==",
1574
1506
  "dependencies": [
@@ -1612,6 +1544,9 @@
1612
1544
  "punycode"
1613
1545
  ]
1614
1546
  },
1547
+ "valibot@1.4.0": {
1548
+ "integrity": "sha512-iC/x7fVcSyOwlm/VSt7RlHnzNGLGvR9GnxdifUeWoCJo0q4ZZvrVkIHC6faTlkxG47I2Y4UrFquPuVHCrOnrLg=="
1549
+ },
1615
1550
  "which@2.0.2": {
1616
1551
  "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
1617
1552
  "dependencies": [
@@ -1642,6 +1577,7 @@
1642
1577
  "npm:@stylistic/eslint-plugin@^5.10.0",
1643
1578
  "npm:@typescript-eslint/parser@^8.61.0",
1644
1579
  "npm:eslint-import-resolver-typescript@^4.4.5",
1580
+ "npm:eslint-plugin-better-tailwindcss@^4.6.0",
1645
1581
  "npm:eslint-plugin-command@^3.5.2",
1646
1582
  "npm:eslint-plugin-depend@^1.5.0",
1647
1583
  "npm:eslint-plugin-import-x@^4.16.2",
@@ -1659,7 +1595,6 @@
1659
1595
  "npm:eslint-plugin-regexp@^3.1.0",
1660
1596
  "npm:eslint-plugin-security@^4.0.1",
1661
1597
  "npm:eslint-plugin-sonarjs@^4.0.3",
1662
- "npm:eslint-plugin-tailwindcss@^4.0.0-beta.0",
1663
1598
  "npm:eslint-plugin-unicorn@^65.0.1",
1664
1599
  "npm:eslint@^10.5.0",
1665
1600
  "npm:globals@^17.6.0"
@@ -1670,6 +1605,7 @@
1670
1605
  "npm:@stylistic/eslint-plugin@^5.10.0",
1671
1606
  "npm:@typescript-eslint/parser@^8.61.0",
1672
1607
  "npm:eslint-import-resolver-typescript@^4.4.5",
1608
+ "npm:eslint-plugin-better-tailwindcss@^4.6.0",
1673
1609
  "npm:eslint-plugin-command@^3.5.2",
1674
1610
  "npm:eslint-plugin-depend@^1.5.0",
1675
1611
  "npm:eslint-plugin-import-x@^4.16.2",
@@ -1687,7 +1623,6 @@
1687
1623
  "npm:eslint-plugin-regexp@^3.1.0",
1688
1624
  "npm:eslint-plugin-security@^4.0.1",
1689
1625
  "npm:eslint-plugin-sonarjs@^4.0.3",
1690
- "npm:eslint-plugin-tailwindcss@^4.0.0-beta.0",
1691
1626
  "npm:eslint-plugin-unicorn@^65.0.1",
1692
1627
  "npm:eslint@^10.5.0",
1693
1628
  "npm:globals@^17.6.0"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pumpn/eslint-config",
3
- "version": "17.1.4",
3
+ "version": "17.2.1",
4
4
  "description": "standard eslint config for pumpn code projects",
5
5
  "main": "config.js",
6
6
  "author": "Nano Miratus <nanomiratus@gmail.com>",
@@ -24,6 +24,7 @@
24
24
  "@stylistic/eslint-plugin": "^5.10.0",
25
25
  "@typescript-eslint/parser": "^8.61.0",
26
26
  "eslint-import-resolver-typescript": "^4.4.5",
27
+ "eslint-plugin-better-tailwindcss": "^4.6.0",
27
28
  "eslint-plugin-command": "^3.5.2",
28
29
  "eslint-plugin-depend": "^1.5.0",
29
30
  "eslint-plugin-import-x": "^4.16.2",
@@ -41,7 +42,6 @@
41
42
  "eslint-plugin-regexp": "^3.1.0",
42
43
  "eslint-plugin-security": "^4.0.1",
43
44
  "eslint-plugin-sonarjs": "^4.0.3",
44
- "eslint-plugin-tailwindcss": "^4.0.0-beta.0",
45
45
  "eslint-plugin-unicorn": "^65.0.1",
46
46
  "globals": "^17.6.0"
47
47
  },
package/plugins.js CHANGED
@@ -4,6 +4,7 @@
4
4
 
5
5
  import eslintComments from "@eslint-community/eslint-plugin-eslint-comments";
6
6
  import stylistic from "@stylistic/eslint-plugin";
7
+ import betterTailwindcss from "eslint-plugin-better-tailwindcss";
7
8
  import command from "eslint-plugin-command";
8
9
  import depend from "eslint-plugin-depend";
9
10
  import importX from "eslint-plugin-import-x";
@@ -20,7 +21,6 @@ import react from "eslint-plugin-react-x";
20
21
  import regexp from "eslint-plugin-regexp";
21
22
  import security from "eslint-plugin-security";
22
23
  import sonarjs from "eslint-plugin-sonarjs";
23
- import tailwindcss from "eslint-plugin-tailwindcss";
24
24
  import unicorn from "eslint-plugin-unicorn";
25
25
 
26
26
  /**
@@ -31,9 +31,6 @@ import unicorn from "eslint-plugin-unicorn";
31
31
  * @satisfies { Linter.Config["plugins"] }
32
32
  */
33
33
  const plugins = /** @type {const} */ ({
34
- // github,
35
- // "jsx-a11y": jsxA11y,
36
- // "no-unsanitized": noUnsanitized,
37
34
  "@eslint-community/eslint-comments": eslintComments,
38
35
  "@stylistic": stylistic,
39
36
  command,
@@ -45,6 +42,7 @@ const plugins = /** @type {const} */ ({
45
42
  "@eslint-react/naming-convention": reactNamingConvention,
46
43
  "@eslint-react/rsc": reactRsc,
47
44
  "@eslint-react/web-api": reactWebApi,
45
+ "better-tailwindcss": betterTailwindcss,
48
46
  "import-x": importX,
49
47
  jsdoc,
50
48
  "no-secrets": noSecrets,
@@ -53,7 +51,6 @@ const plugins = /** @type {const} */ ({
53
51
  regexp,
54
52
  security,
55
53
  sonarjs,
56
- tailwindcss,
57
54
  unicorn
58
55
  });
59
56
 
@@ -0,0 +1,2 @@
1
+ export { default as maximumLineLength } from "./maximum-line-length.js";
2
+ export { default as tabWidth } from "./tab-width.js";
@@ -0,0 +1,3 @@
1
+ const maximumLineLength = 100;
2
+
3
+ export default maximumLineLength;
@@ -0,0 +1,3 @@
1
+ const tabWidth = 4;
2
+
3
+ export default tabWidth;
package/rules/_exports.js CHANGED
@@ -1,3 +1,4 @@
1
+ export { default as betterTailwindcssRules } from "./better-tailwindcss.js";
1
2
  export { default as commandRules } from "./command.js";
2
3
  export { default as dependRules } from "./depend.js";
3
4
  export { default as eslintCommentsRules } from "./eslint-comments.js";
@@ -15,5 +16,4 @@ export { default as securityRules } from "./security.js";
15
16
  export { default as sonarjsRules } from "./sonarjs.js";
16
17
  export { default as stylisticRules } from "./stylistic.js";
17
18
  export { default as suggestionsRules } from "./suggestions.js";
18
- export { default as tailwindcssRules } from "./tailwindcss.js";
19
19
  export { default as unicornRules } from "./unicorn.js";
@@ -0,0 +1,2 @@
1
+ export { default as correctnessRules } from "./correctness.js";
2
+ export { default as stylisticRules } from "./stylistic.js";
@@ -0,0 +1,7 @@
1
+ const correctnessRules = {
2
+ "better-tailwindcss/no-conflicting-classes": "error",
3
+ "better-tailwindcss/no-restricted-classes": ["error", { restrict: [] }],
4
+ "better-tailwindcss/no-unknown-classes": "error"
5
+ };
6
+
7
+ export default correctnessRules;
@@ -0,0 +1,38 @@
1
+ import maximumLineLength from "../_common/maximum-line-length.js";
2
+ import tabWidth from "../_common/tab-width.js";
3
+
4
+ const stylisticRules = {
5
+ "better-tailwindcss/enforce-canonical-classes": [
6
+ "error",
7
+ {
8
+ collapse: true,
9
+ logical: true
10
+ }
11
+ ],
12
+ "better-tailwindcss/enforce-consistent-class-order": [
13
+ "error",
14
+ {
15
+ order: "strict"
16
+ }
17
+ ],
18
+ "better-tailwindcss/enforce-consistent-line-wrapping": [
19
+ "error",
20
+ {
21
+ classesPerLine: 0,
22
+ group: "newLine",
23
+ indent: "tab",
24
+ lineBreakStyle: "unix",
25
+ preferSingleLine: false,
26
+ printWidth: maximumLineLength,
27
+ strictness: "strict",
28
+ tabWidth
29
+ }
30
+ ],
31
+ "better-tailwindcss/enforce-consistent-variant-order": "error",
32
+ "better-tailwindcss/enforce-logical-properties": ["error", { ignore: ["size"] }],
33
+ "better-tailwindcss/no-deprecated-classes": "error",
34
+ "better-tailwindcss/no-duplicate-classes": "error",
35
+ "better-tailwindcss/no-unnecessary-whitespace": ["error", { allowMultiline: true }]
36
+ };
37
+
38
+ export default stylisticRules;
@@ -0,0 +1,19 @@
1
+ import * as betterTailwindcssRuleSets from "./better-tailwindcss/_exports.js";
2
+
3
+ /**
4
+ * @import { Linter } from "eslint";
5
+ */
6
+
7
+ /**
8
+ * @satisfies {Linter.RulesRecord}
9
+ */
10
+ const betterTailwindcssRules = Object.values(betterTailwindcssRuleSets)
11
+ .reduce(
12
+ (allRules, ruleSet) => ({
13
+ ...allRules,
14
+ ...ruleSet
15
+ }),
16
+ {}
17
+ );
18
+
19
+ export default betterTailwindcssRules;
@@ -1,11 +1,11 @@
1
- const maxLineLength = 100;
2
- const tabWidth = 4;
1
+ import maximumLineLength from "../_common/maximum-line-length.js";
2
+ import tabWidth from "../_common/tab-width.js";
3
3
 
4
4
  const miscRules = {
5
5
  "@stylistic/max-len": [
6
6
  "error",
7
7
  {
8
- code: maxLineLength,
8
+ code: maximumLineLength,
9
9
  ignoreComments: true,
10
10
  ignoreRegExpLiterals: true,
11
11
  ignoreStrings: true,
@@ -1,19 +0,0 @@
1
- /**
2
- * @import { Linter } from "eslint";
3
- */
4
-
5
- /**
6
- * @satisfies {Linter.RulesRecord}
7
- */
8
- const tailwindcssRules = {
9
- "tailwindcss/classnames-order": "error",
10
- "tailwindcss/enforces-negative-arbitrary-values": "error",
11
- "tailwindcss/enforces-shorthand": "error",
12
- "tailwindcss/migration-from-tailwind-2": "error",
13
- "tailwindcss/no-arbitrary-value": "off",
14
- "tailwindcss/no-contradicting-classname": "error",
15
- "tailwindcss/no-custom-classname": "off",
16
- "tailwindcss/no-unnecessary-arbitrary-value": "error"
17
- };
18
-
19
- export default tailwindcssRules;