@greenberry/linting-config 0.2.1 → 0.2.4
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/README.md +19 -0
- package/dist/eslint.config.d.ts +1 -1
- package/dist/eslint.config.js +44 -2
- package/dist/eslint.config.js.map +1 -1
- package/dist/legacy/eslint.config.d.ts +102 -18
- package/dist/legacy/eslint.config.d.ts.map +1 -1
- package/package.json +22 -18
package/README.md
CHANGED
|
@@ -2,6 +2,25 @@
|
|
|
2
2
|
|
|
3
3
|
ESLint and Prettier bundle for all things Greenberry.
|
|
4
4
|
|
|
5
|
+
## Table of Contents
|
|
6
|
+
|
|
7
|
+
- [Greenberry linting-config](#greenberry-linting-config)
|
|
8
|
+
- [Table of Contents](#table-of-contents)
|
|
9
|
+
- [Publish a new version](#publish-a-new-version)
|
|
10
|
+
- [Install](#install)
|
|
11
|
+
- [NextJS](#nextjs)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## Publish a new version
|
|
15
|
+
|
|
16
|
+
1. Make your changes
|
|
17
|
+
2. Review and merge your changes into `main`
|
|
18
|
+
3. Run `npm run build`
|
|
19
|
+
4. If it is a patch update: run `npm run publish:patch`
|
|
20
|
+
5. If it is a minor update: run `npm run publish:minor`
|
|
21
|
+
6. If it is a major update: run `npm run publish:major`
|
|
22
|
+
7. Push the changed version number to `main`
|
|
23
|
+
|
|
5
24
|
## Install
|
|
6
25
|
|
|
7
26
|
```bash
|
package/dist/eslint.config.d.ts
CHANGED
package/dist/eslint.config.js
CHANGED
|
@@ -7,11 +7,23 @@ import reactPlugin from "eslint-plugin-react";
|
|
|
7
7
|
import reactCompilerPlugin from "eslint-plugin-react-compiler";
|
|
8
8
|
import reactHooksPlugin from "eslint-plugin-react-hooks";
|
|
9
9
|
import reactHooksExtraPlugin from "eslint-plugin-react-hooks-extra";
|
|
10
|
+
import storybookPlugin from "eslint-plugin-storybook";
|
|
10
11
|
import unicornPlugin from "eslint-plugin-unicorn";
|
|
11
12
|
import { defineConfig } from "eslint/config";
|
|
12
13
|
import globals from "globals";
|
|
13
14
|
import tseslint from "typescript-eslint";
|
|
14
15
|
import eslint from "@eslint/js";
|
|
16
|
+
// Extract only meta and rules for TypeScript compatibility with ESLint flat config
|
|
17
|
+
// The plugins include a 'configs' property that's incompatible with the Plugin type
|
|
18
|
+
// but we only need meta and rules for flat config, so we extract just those
|
|
19
|
+
const reactHooksPluginTyped = {
|
|
20
|
+
meta: reactHooksPlugin.meta,
|
|
21
|
+
rules: reactHooksPlugin.rules,
|
|
22
|
+
};
|
|
23
|
+
const reactHooksExtraPluginTyped = {
|
|
24
|
+
meta: reactHooksExtraPlugin.meta,
|
|
25
|
+
rules: reactHooksExtraPlugin.rules,
|
|
26
|
+
};
|
|
15
27
|
export default defineConfig(eslint.configs.recommended, tseslint.configs.strict, tseslint.configs.stylistic, {
|
|
16
28
|
files: ["**/*.{js,mjs,cjs,jsx,ts,tsx}"],
|
|
17
29
|
languageOptions: {
|
|
@@ -32,8 +44,8 @@ export default defineConfig(eslint.configs.recommended, tseslint.configs.strict,
|
|
|
32
44
|
},
|
|
33
45
|
plugins: {
|
|
34
46
|
react: reactPlugin,
|
|
35
|
-
"react-hooks":
|
|
36
|
-
"react-hooks-extra":
|
|
47
|
+
"react-hooks": reactHooksPluginTyped,
|
|
48
|
+
"react-hooks-extra": reactHooksExtraPluginTyped,
|
|
37
49
|
import: importPlugin,
|
|
38
50
|
unicorn: unicornPlugin,
|
|
39
51
|
perfectionist: perfectionistPlugin,
|
|
@@ -113,6 +125,7 @@ export default defineConfig(eslint.configs.recommended, tseslint.configs.strict,
|
|
|
113
125
|
ts: "always",
|
|
114
126
|
tsx: "always",
|
|
115
127
|
scss: "always",
|
|
128
|
+
stories: "always",
|
|
116
129
|
},
|
|
117
130
|
],
|
|
118
131
|
"import/prefer-default-export": "off",
|
|
@@ -195,6 +208,34 @@ export default defineConfig(eslint.configs.recommended, tseslint.configs.strict,
|
|
|
195
208
|
// Prettier integration
|
|
196
209
|
"prettier/prettier": "error",
|
|
197
210
|
},
|
|
211
|
+
},
|
|
212
|
+
// Storybook stories configuration
|
|
213
|
+
...storybookPlugin.configs["flat/recommended"], {
|
|
214
|
+
files: [
|
|
215
|
+
"**/*.stories.@(js|jsx|ts|tsx|mjs|cjs|mdx)",
|
|
216
|
+
"**/*.story.@(js|jsx|ts|tsx|mjs|cjs|mdx)",
|
|
217
|
+
],
|
|
218
|
+
rules: {
|
|
219
|
+
"storybook/hierarchy-separator": "warn",
|
|
220
|
+
"storybook/no-redundant-story-name": "warn",
|
|
221
|
+
"storybook/no-stories-of": "error", // Enforce CSF format (not storiesOf API)
|
|
222
|
+
"storybook/no-title-property-in-meta": "error", // Use title in default export
|
|
223
|
+
"storybook/prefer-pascal-case": "warn",
|
|
224
|
+
// Relax some rules for Storybook story files
|
|
225
|
+
"react-hooks/rules-of-hooks": "off", // Stories can use hooks outside components
|
|
226
|
+
"import/no-anonymous-default-export": "off", // Stories use default exports
|
|
227
|
+
"react-hooks/exhaustive-deps": "warn", // Stories often have intentional dependencies
|
|
228
|
+
},
|
|
229
|
+
},
|
|
230
|
+
// Storybook main config file
|
|
231
|
+
{
|
|
232
|
+
files: [".storybook/main.@(js|cjs|mjs|ts)"],
|
|
233
|
+
plugins: {
|
|
234
|
+
storybook: storybookPlugin,
|
|
235
|
+
},
|
|
236
|
+
rules: {
|
|
237
|
+
"storybook/no-uninstalled-addons": "error",
|
|
238
|
+
},
|
|
198
239
|
}, {
|
|
199
240
|
ignores: [
|
|
200
241
|
".next/*",
|
|
@@ -202,6 +243,7 @@ export default defineConfig(eslint.configs.recommended, tseslint.configs.strict,
|
|
|
202
243
|
"src/env.ts",
|
|
203
244
|
"**/*.gql",
|
|
204
245
|
"next-env.d.ts",
|
|
246
|
+
"!.storybook", // Allow linting of .storybook config files
|
|
205
247
|
],
|
|
206
248
|
});
|
|
207
249
|
//# sourceMappingURL=eslint.config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eslint.config.js","sourceRoot":"","sources":["../src/eslint.config.js"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,YAAY,MAAM,sBAAsB,CAAC;AAChD,OAAO,aAAa,MAAM,wBAAwB,CAAC;AACnD,OAAO,mBAAmB,MAAM,6BAA6B,CAAC;AAC9D,OAAO,cAAc,MAAM,wBAAwB,CAAC;AACpD,OAAO,WAAW,MAAM,qBAAqB,CAAC;AAC9C,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAC/D,OAAO,gBAAgB,MAAM,2BAA2B,CAAC;AACzD,OAAO,qBAAqB,MAAM,iCAAiC,CAAC;AACpE,OAAO,aAAa,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AAEzC,OAAO,MAAM,MAAM,YAAY,CAAC;AAEhC,eAAe,YAAY,CACzB,MAAM,CAAC,OAAO,CAAC,WAAW,EAC1B,QAAQ,CAAC,OAAO,CAAC,MAAM,EACvB,QAAQ,CAAC,OAAO,CAAC,SAAS,EAC1B;IACE,KAAK,EAAE,CAAC,8BAA8B,CAAC;IACvC,eAAe,EAAE;QACf,aAAa,EAAE;YACb,WAAW,EAAE,QAAQ;YACrB,UAAU,EAAE,QAAQ;YACpB,YAAY,EAAE;gBACZ,GAAG,EAAE,IAAI;aACV;YACD,OAAO,EAAE,iBAAiB;YAC1B,eAAe,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;SAC7C;QACD,OAAO,EAAE;YACP,GAAG,OAAO,CAAC,OAAO;YAClB,GAAG,OAAO,CAAC,IAAI;YACf,GAAG,OAAO,CAAC,IAAI;SAChB;KACF;IACD,OAAO,EAAE;QACP,KAAK,EAAE,WAAW;QAClB,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"eslint.config.js","sourceRoot":"","sources":["../src/eslint.config.js"],"names":[],"mappings":"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"}
|
|
@@ -279,8 +279,104 @@ declare const config: ({
|
|
|
279
279
|
flat: Record<string, reactPlugin.ReactFlatConfig>;
|
|
280
280
|
};
|
|
281
281
|
};
|
|
282
|
-
"react-hooks":
|
|
283
|
-
|
|
282
|
+
"react-hooks": {
|
|
283
|
+
meta: {
|
|
284
|
+
name: string;
|
|
285
|
+
version: string;
|
|
286
|
+
};
|
|
287
|
+
rules: {
|
|
288
|
+
"exhaustive-deps": {
|
|
289
|
+
meta: {
|
|
290
|
+
type: "suggestion";
|
|
291
|
+
docs: {
|
|
292
|
+
description: string;
|
|
293
|
+
recommended: true;
|
|
294
|
+
url: string;
|
|
295
|
+
};
|
|
296
|
+
fixable: "code";
|
|
297
|
+
hasSuggestions: true;
|
|
298
|
+
schema: {
|
|
299
|
+
type: "object";
|
|
300
|
+
additionalProperties: false;
|
|
301
|
+
enableDangerousAutofixThisMayCauseInfiniteLoops: boolean;
|
|
302
|
+
properties: {
|
|
303
|
+
additionalHooks: {
|
|
304
|
+
type: "string";
|
|
305
|
+
};
|
|
306
|
+
enableDangerousAutofixThisMayCauseInfiniteLoops: {
|
|
307
|
+
type: "boolean";
|
|
308
|
+
};
|
|
309
|
+
experimental_autoDependenciesHooks: {
|
|
310
|
+
type: "array";
|
|
311
|
+
items: {
|
|
312
|
+
type: "string";
|
|
313
|
+
};
|
|
314
|
+
};
|
|
315
|
+
requireExplicitEffectDeps: {
|
|
316
|
+
type: "boolean";
|
|
317
|
+
};
|
|
318
|
+
};
|
|
319
|
+
}[];
|
|
320
|
+
};
|
|
321
|
+
create(context: import("eslint").Rule.RuleContext): {
|
|
322
|
+
CallExpression: (node: import("estree").CallExpression) => void;
|
|
323
|
+
};
|
|
324
|
+
};
|
|
325
|
+
"rules-of-hooks": {
|
|
326
|
+
meta: {
|
|
327
|
+
type: "problem";
|
|
328
|
+
docs: {
|
|
329
|
+
description: string;
|
|
330
|
+
recommended: true;
|
|
331
|
+
url: string;
|
|
332
|
+
};
|
|
333
|
+
schema: {
|
|
334
|
+
type: "object";
|
|
335
|
+
additionalProperties: false;
|
|
336
|
+
properties: {
|
|
337
|
+
additionalHooks: {
|
|
338
|
+
type: "string";
|
|
339
|
+
};
|
|
340
|
+
};
|
|
341
|
+
}[];
|
|
342
|
+
};
|
|
343
|
+
create(context: import("eslint").Rule.RuleContext): {
|
|
344
|
+
"*"(node: any): void;
|
|
345
|
+
"*:exit"(node: any): void;
|
|
346
|
+
CallExpression(node: import("estree").CallExpression & import("eslint").Rule.NodeParentExtension): void;
|
|
347
|
+
Identifier(node: import("estree").Identifier & import("eslint").Rule.NodeParentExtension): void;
|
|
348
|
+
"CallExpression:exit"(node: import("estree").CallExpression & import("eslint").Rule.NodeParentExtension): void;
|
|
349
|
+
FunctionDeclaration(node: import("estree").FunctionDeclaration & import("eslint").Rule.NodeParentExtension): void;
|
|
350
|
+
ArrowFunctionExpression(node: import("estree").ArrowFunctionExpression & import("eslint").Rule.NodeParentExtension): void;
|
|
351
|
+
};
|
|
352
|
+
};
|
|
353
|
+
};
|
|
354
|
+
configs: {
|
|
355
|
+
recommended: {
|
|
356
|
+
plugins: string[];
|
|
357
|
+
rules: import("eslint").Linter.RulesRecord;
|
|
358
|
+
};
|
|
359
|
+
"recommended-latest": {
|
|
360
|
+
plugins: string[];
|
|
361
|
+
rules: import("eslint").Linter.RulesRecord;
|
|
362
|
+
};
|
|
363
|
+
flat: {
|
|
364
|
+
recommended: {
|
|
365
|
+
plugins: {
|
|
366
|
+
react: any;
|
|
367
|
+
};
|
|
368
|
+
rules: import("eslint").Linter.RulesRecord;
|
|
369
|
+
};
|
|
370
|
+
"recommended-latest": {
|
|
371
|
+
plugins: {
|
|
372
|
+
react: any;
|
|
373
|
+
};
|
|
374
|
+
rules: import("eslint").Linter.RulesRecord;
|
|
375
|
+
};
|
|
376
|
+
};
|
|
377
|
+
};
|
|
378
|
+
};
|
|
379
|
+
import: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
|
|
284
380
|
meta: {
|
|
285
381
|
name: string;
|
|
286
382
|
version: string;
|
|
@@ -309,16 +405,17 @@ declare const config: ({
|
|
|
309
405
|
[key: string]: import("eslint").Rule.RuleModule;
|
|
310
406
|
};
|
|
311
407
|
};
|
|
312
|
-
unicorn: import("eslint").
|
|
408
|
+
unicorn: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
|
|
313
409
|
configs: {
|
|
314
410
|
recommended: import("eslint").Linter.FlatConfig;
|
|
411
|
+
unopinionated: import("eslint").Linter.FlatConfig;
|
|
315
412
|
all: import("eslint").Linter.FlatConfig;
|
|
316
413
|
"flat/all": import("eslint").Linter.FlatConfig;
|
|
317
414
|
"flat/recommended": import("eslint").Linter.FlatConfig;
|
|
318
415
|
};
|
|
319
416
|
};
|
|
320
417
|
"@next/next": typeof nextPlugin;
|
|
321
|
-
"jsx-a11y": import("eslint").
|
|
418
|
+
"jsx-a11y": import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
|
|
322
419
|
configs: {
|
|
323
420
|
recommended: import("eslint").Linter.LegacyConfig;
|
|
324
421
|
strict: import("eslint").Linter.LegacyConfig;
|
|
@@ -328,7 +425,7 @@ declare const config: ({
|
|
|
328
425
|
strict: import("eslint").Linter.Config;
|
|
329
426
|
};
|
|
330
427
|
};
|
|
331
|
-
prettier: import("eslint").
|
|
428
|
+
prettier: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin;
|
|
332
429
|
"react-compiler": typeof reactCompilerPlugin;
|
|
333
430
|
};
|
|
334
431
|
settings: {
|
|
@@ -403,18 +500,6 @@ declare const config: ({
|
|
|
403
500
|
})[];
|
|
404
501
|
curly: string[];
|
|
405
502
|
"prettier/prettier": string;
|
|
406
|
-
'@next/next/no-async-client-component': string;
|
|
407
|
-
'@next/next/no-before-interactive-script-outside-document': string;
|
|
408
|
-
'@next/next/no-css-tags': string;
|
|
409
|
-
'@next/next/no-head-element': string;
|
|
410
|
-
'@next/next/no-page-custom-font': string;
|
|
411
|
-
'@next/next/no-styled-jsx-in-document': string;
|
|
412
|
-
'@next/next/no-title-in-document-head': string;
|
|
413
|
-
'@next/next/inline-script-id': string;
|
|
414
|
-
'@next/next/no-assign-module-variable': string;
|
|
415
|
-
'@next/next/no-document-import-in-page': string;
|
|
416
|
-
'@next/next/no-head-import-in-document': string;
|
|
417
|
-
'react-hooks/rules-of-hooks': "error";
|
|
418
503
|
'react/react-in-jsx-scope': 0;
|
|
419
504
|
'react/jsx-uses-react': 0;
|
|
420
505
|
};
|
|
@@ -428,7 +513,6 @@ declare const config: ({
|
|
|
428
513
|
rules?: undefined;
|
|
429
514
|
})[];
|
|
430
515
|
import reactPlugin from "eslint-plugin-react";
|
|
431
|
-
import reactHooksPlugin from "eslint-plugin-react-hooks";
|
|
432
516
|
import nextPlugin from "@next/eslint-plugin-next";
|
|
433
517
|
import reactCompilerPlugin from "eslint-plugin-react-compiler";
|
|
434
518
|
//# sourceMappingURL=eslint.config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eslint.config.d.ts","sourceRoot":"","sources":["../../src/legacy/eslint.config.js"],"names":[],"mappings":";AAUA
|
|
1
|
+
{"version":3,"file":"eslint.config.d.ts","sourceRoot":"","sources":["../../src/legacy/eslint.config.js"],"names":[],"mappings":";AAUA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAuIE;wBA9IsB,qBAAqB;uBAKtB,0BAA0B;gCAJjB,8BAA8B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@greenberry/linting-config",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.4",
|
|
4
4
|
"private": false,
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -16,37 +16,41 @@
|
|
|
16
16
|
"scripts": {
|
|
17
17
|
"clean": "rm -rf dist",
|
|
18
18
|
"build": "npm run clean && tsc",
|
|
19
|
-
"release": "npm run build && npm version patch && npm publish --access public"
|
|
19
|
+
"release:patch": "npm run build && npm version patch && npm publish --access public",
|
|
20
|
+
"release:minor": "npm run build && npm version minor && npm publish --access public",
|
|
21
|
+
"release:major": "npm run build && npm version major && npm publish --access public"
|
|
20
22
|
},
|
|
21
23
|
"files": [
|
|
22
24
|
"dist"
|
|
23
25
|
],
|
|
24
26
|
"dependencies": {
|
|
25
|
-
"@ianvs/prettier-plugin-sort-imports": "^4.
|
|
26
|
-
"@next/eslint-plugin-next": "^
|
|
27
|
-
"@typescript-eslint/parser": "^8.
|
|
28
|
-
"eslint": "^9.
|
|
27
|
+
"@ianvs/prettier-plugin-sort-imports": "^4.7.0",
|
|
28
|
+
"@next/eslint-plugin-next": "^16.1.1",
|
|
29
|
+
"@typescript-eslint/parser": "^8.52.0",
|
|
30
|
+
"eslint": "^9.39.2",
|
|
29
31
|
"eslint-config-prettier": "^10.1.8",
|
|
30
32
|
"eslint-import-resolver-typescript": "3.8.3",
|
|
31
33
|
"eslint-plugin-import": "2.32.0",
|
|
32
34
|
"eslint-plugin-jsx-a11y": "^6.10.2",
|
|
33
|
-
"eslint-plugin-perfectionist": "^
|
|
35
|
+
"eslint-plugin-perfectionist": "^5.3.0",
|
|
34
36
|
"eslint-plugin-prettier": "^5.5.4",
|
|
35
37
|
"eslint-plugin-react": "^7.37.5",
|
|
36
38
|
"eslint-plugin-react-compiler": "^19.1.0-rc.2",
|
|
37
|
-
"eslint-plugin-react-hooks": "^
|
|
38
|
-
"eslint-plugin-react-hooks-extra": "^
|
|
39
|
-
"eslint-plugin-
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"
|
|
43
|
-
"
|
|
39
|
+
"eslint-plugin-react-hooks": "^7.0.1",
|
|
40
|
+
"eslint-plugin-react-hooks-extra": "^2.5.1",
|
|
41
|
+
"eslint-plugin-storybook": "^10.1.11",
|
|
42
|
+
"eslint-plugin-unicorn": "^62.0.0",
|
|
43
|
+
"globals": "^17.0.0",
|
|
44
|
+
"prettier": "^3.7.4",
|
|
45
|
+
"prettier-plugin-tailwindcss": "^0.7.2",
|
|
46
|
+
"stylelint": "^16.26.1",
|
|
47
|
+
"stylelint-config-standard-scss": "^16.0.0",
|
|
44
48
|
"stylelint-prettier": "^5.0.3",
|
|
45
|
-
"typescript-eslint": "^8.
|
|
49
|
+
"typescript-eslint": "^8.52.0"
|
|
46
50
|
},
|
|
47
51
|
"devDependencies": {
|
|
48
|
-
"@types/eslint-plugin-jsx-a11y": "^6.10.
|
|
49
|
-
"@types/node": "^
|
|
50
|
-
"typescript": "^5.9.
|
|
52
|
+
"@types/eslint-plugin-jsx-a11y": "^6.10.1",
|
|
53
|
+
"@types/node": "^25.0.3",
|
|
54
|
+
"typescript": "^5.9.3"
|
|
51
55
|
}
|
|
52
56
|
}
|